From 683f77fcf4bea6b88da19a5538152533aa8c3301 Mon Sep 17 00:00:00 2001 From: Ross Date: Wed, 24 Feb 2021 10:05:10 +0000 Subject: [PATCH] initiate --- dicomViewer.css | 101 + dicomViewer.js | 644 + index.html | 32 + .../cornerstone-base64-image-loader.es5.js | 242 + .../cornerstone-base64-image-loader.umd.js | 250 + lib/cornerstone/cornerstone.js | 8599 ++++ lib/cornerstone/cornerstone.min.css | 1 + lib/cornerstone/cornerstone.min.js | 3 + lib/cornerstone/cornerstoneMath.min.js | 3 + lib/cornerstone/cornerstoneTools.js | 37500 ++++++++++++++++ lib/cornerstone/cornerstoneTools.min.js | 3 + lib/cornerstone/cornerstoneWADOImageLoader.js | 8077 ++++ .../cornerstoneWebImageLoader.min.js | 3 + lib/cornerstone/dicomParser.min.js | 17 + lib/cornerstone/hammer.js | 2643 ++ lib/dexie.js | 4474 ++ loader.js | 40 + test_images/IMG1.dcm | Bin 0 -> 526126 bytes test_images/IMG10.dcm | Bin 0 -> 526122 bytes test_images/IMG11.dcm | Bin 0 -> 526122 bytes test_images/IMG12.dcm | Bin 0 -> 526122 bytes test_images/IMG13.dcm | Bin 0 -> 526122 bytes test_images/IMG14.dcm | Bin 0 -> 526122 bytes test_images/IMG15.dcm | Bin 0 -> 526122 bytes test_images/IMG16.dcm | Bin 0 -> 526122 bytes test_images/IMG17.dcm | Bin 0 -> 526122 bytes test_images/IMG18.dcm | Bin 0 -> 526122 bytes test_images/IMG19.dcm | Bin 0 -> 526122 bytes test_images/IMG2.dcm | Bin 0 -> 526126 bytes test_images/IMG20.dcm | Bin 0 -> 526122 bytes test_images/IMG21.dcm | Bin 0 -> 526122 bytes test_images/IMG22.dcm | Bin 0 -> 526122 bytes test_images/IMG23.dcm | Bin 0 -> 526122 bytes test_images/IMG24.dcm | Bin 0 -> 526122 bytes test_images/IMG25.dcm | Bin 0 -> 526126 bytes test_images/IMG26.dcm | Bin 0 -> 526126 bytes test_images/IMG27.dcm | Bin 0 -> 526126 bytes test_images/IMG28.dcm | Bin 0 -> 526126 bytes test_images/IMG29.dcm | Bin 0 -> 526126 bytes test_images/IMG3.dcm | Bin 0 -> 526122 bytes test_images/IMG30.dcm | Bin 0 -> 526126 bytes test_images/IMG31.dcm | Bin 0 -> 526126 bytes test_images/IMG32.dcm | Bin 0 -> 526126 bytes test_images/IMG4.dcm | Bin 0 -> 526122 bytes test_images/IMG5.dcm | Bin 0 -> 526122 bytes test_images/IMG6.dcm | Bin 0 -> 526122 bytes test_images/IMG7.dcm | Bin 0 -> 526122 bytes test_images/IMG8.dcm | Bin 0 -> 526122 bytes test_images/IMG9.dcm | Bin 0 -> 526122 bytes 49 files changed, 62632 insertions(+) create mode 100644 dicomViewer.css create mode 100644 dicomViewer.js create mode 100644 index.html create mode 100644 lib/cornerstone/cornerstone-base64-image-loader.es5.js create mode 100644 lib/cornerstone/cornerstone-base64-image-loader.umd.js create mode 100644 lib/cornerstone/cornerstone.js create mode 100644 lib/cornerstone/cornerstone.min.css create mode 100644 lib/cornerstone/cornerstone.min.js create mode 100644 lib/cornerstone/cornerstoneMath.min.js create mode 100644 lib/cornerstone/cornerstoneTools.js create mode 100644 lib/cornerstone/cornerstoneTools.min.js create mode 100644 lib/cornerstone/cornerstoneWADOImageLoader.js create mode 100644 lib/cornerstone/cornerstoneWebImageLoader.min.js create mode 100644 lib/cornerstone/dicomParser.min.js create mode 100644 lib/cornerstone/hammer.js create mode 100644 lib/dexie.js create mode 100644 loader.js create mode 100644 test_images/IMG1.dcm create mode 100644 test_images/IMG10.dcm create mode 100644 test_images/IMG11.dcm create mode 100644 test_images/IMG12.dcm create mode 100644 test_images/IMG13.dcm create mode 100644 test_images/IMG14.dcm create mode 100644 test_images/IMG15.dcm create mode 100644 test_images/IMG16.dcm create mode 100644 test_images/IMG17.dcm create mode 100644 test_images/IMG18.dcm create mode 100644 test_images/IMG19.dcm create mode 100644 test_images/IMG2.dcm create mode 100644 test_images/IMG20.dcm create mode 100644 test_images/IMG21.dcm create mode 100644 test_images/IMG22.dcm create mode 100644 test_images/IMG23.dcm create mode 100644 test_images/IMG24.dcm create mode 100644 test_images/IMG25.dcm create mode 100644 test_images/IMG26.dcm create mode 100644 test_images/IMG27.dcm create mode 100644 test_images/IMG28.dcm create mode 100644 test_images/IMG29.dcm create mode 100644 test_images/IMG3.dcm create mode 100644 test_images/IMG30.dcm create mode 100644 test_images/IMG31.dcm create mode 100644 test_images/IMG32.dcm create mode 100644 test_images/IMG4.dcm create mode 100644 test_images/IMG5.dcm create mode 100644 test_images/IMG6.dcm create mode 100644 test_images/IMG7.dcm create mode 100644 test_images/IMG8.dcm create mode 100644 test_images/IMG9.dcm diff --git a/dicomViewer.css b/dicomViewer.css new file mode 100644 index 0000000..6bddd59 --- /dev/null +++ b/dicomViewer.css @@ -0,0 +1,101 @@ +.canvas-panel { + height: 100%; + position: relative; + color: white; +} + + +#dicom-overlay { + position: absolute; + bottom: 0; +} + +#image-thumbs { + position: absolute; + right: 0; + top: 50%; + transform: translateY(-50%); + overflow-y: auto; + max-height: 100%; + max-width: 30%; + user-select: none; +} + +.thumbnail { + pointer-events: none; + display: block; + margin: auto; +} + +.thumb { + position: relative; + border: 1px dotted blue; +} + +.thumb-active { + border: 5px dotted blue; +} + +.thumb span { + position: absolute; + right: 0; + color: lightblue; +} + +.single-dicom-viewer { + position: relative; + height: 100%; +} + +.dicom-button { + font-size: 40px; + z-index: 99; + opacity: 20%; + color: gray; + top: 0; +} + +.dicom-button:hover { + opacity: 100%; +} + +#dicom-toggle-mode-button { + position: absolute; + left: 0; +} + +#dicom-settings-button { + position: absolute; + right: 0; +} + +#dicom-fullscreen-button { + position: absolute; + transform: translate(0, -20%); + right: 50%; +} + +#dicom-settings-panel { + display: none; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + padding-left: 30px; + padding-right: 30px; + padding-bottom: 20px; + background-color: rgba(0, 0, 0, 0.8); /* Black w/ opacity */ + max-width: 100%; + max-height: 100%; + z-index: 999; +} + +#dicom-window-panel { + position: absolute; + top: 100%; + transform: translate(0, -100%); + opacity: 0.0; +} +#dicom-window-panel:hover { + opacity: 1; +} \ No newline at end of file diff --git a/dicomViewer.js b/dicomViewer.js new file mode 100644 index 0000000..6cc3e19 --- /dev/null +++ b/dicomViewer.js @@ -0,0 +1,644 @@ +// Dicom saved settings +var dicom_settings_db = new Dexie("dicom_settings"); +dicom_settings_db.version(1).stores({ + mouse_bindings: "button,mode,tool", +}); + + +cornerstoneBase64ImageLoader.external.cornerstone = cornerstone; +cornerstoneWebImageLoader.external.cornerstone = cornerstone; +cornerstoneWADOImageLoader.external.cornerstone = cornerstone; + +cornerstoneTools.init(); + + + +export function loadCornerstone(main_element, db, images, annotations_to_load, load_as_stack = false) { + // canvas-panel holds the enabled elements and all tools / menus + main_element.append("
"); + $(".canvas-panel").append($("
")); + + let single_dicom_viewer = main_element.find(".single-dicom-viewer").get(0); + console.log(single_dicom_viewer); + // Add generic settings menus to canvas-panel + $(".canvas-panel").append( + $(`
+ close +

Image viewer settings:

+ + Primary +
+ + + + + + +
+
+ Secondary (Ctrl) +
+ + + + + + +
+ +
`) + ) + .append($("")) + .append($("")) + .append($("")); + + $(single_dicom_viewer).append( + $( + "
Image of
wc: ww:
" + ) + ) + // Add buttons + .append( + $(`
+ + + + + + + +
`) + ); + + let window_presets = { + "window-btn-abdomen": [400, 50], + "window-btn-liver": [150, 30], + "window-btn-mediastinum": [350, 50], + "window-btn-lung": [1500, -600], + "window-btn-brain": [80, 40], + "window-btn-stroke": [40, 40], + "window-btn-bone": [1800, 400] + } + + $("#dicom-window-panel button").each((n, el) => { + $(el).click((e) => { + console.log(e); + console.log(e.target); + let button_id = e.target.id; + let [ww, wc] = window_presets[button_id]; + + let viewport = cornerstone.getViewport(single_dicom_viewer); + viewport.voi.windowWidth = parseFloat(ww); + viewport.voi.windowCenter = parseFloat(wc); + cornerstone.setViewport(single_dicom_viewer, viewport); + + e.preventDefault(); + }) + }) + + $("#dicom-settings-close").click(e => { + $("#dicom-settings-panel").hide(); + e.preventDefault(); + }); + $("#dicom-settings-button").click(e => { + $("#dicom-settings-panel").toggle(); + }); + $("#dicom-fullscreen-button").click(e => { + if (!document.fullscreenElement) { + $(".canvas-panel").get(0).requestFullscreen().catch(err => { + alert(`Error attempting to enable full-screen mode: ${err.message} (${err.name})`); + }); + } else { + document.exitFullscreen(); + } + }); + $("#dicom-toggle-mode-button").click(e => { + //$("#dicom-settings-panel").toggle(); + let stack = !load_as_stack; + $(main_element).empty(); + loadCornerstone(main_element, db, images, annotations_to_load, stack) + }); + + //let images = data["images"]; + + // Make sure we have an array + if (!Array.isArray(images)) { + images = [images]; + } + + //let annotations = []; + //if (annotations_to_load) { + //annotations = annotations_to_load[figure_to_load.split("-")[1]]; + //if (!Array.isArray(annotations)) { + //annotations = [annotations]; + //} + //} + let annotations = annotations_to_load; + if (!Array.isArray(annotations)) { + annotations = [annotations]; + } + console.log("annon", annotations); + + + function loadAnnotation(imageId, annotation) { + console.log("loadAnnotations", imageId, annotations); + const toolStateManager = cornerstoneTools.globalImageIdSpecificToolStateManager; + + if (annotation == undefined || annotation.length < 1) { return } + + console.log(annotation); + let tool_state_no_id = JSON.parse(annotation); + + let tool_state = {}; + tool_state[imageId] = tool_state_no_id; + + toolStateManager.restoreToolState(tool_state); + } + + async function load(images, annotations) { + console.log("LOAD"); + let imageIds = []; + for (let i = 0; i < images.length; i++) { + let data_url = images[i]; + const annotation = annotations[i]; + // check stack type + if (data_url.startsWith("data:image")) { + let imageId = "base64://" + data_url.split(",")[1]; + + loadAnnotation(imageId, annotation); + + imageIds.push(imageId); + + // Treat application/octet-stream as if they are dicoms + } else if (data_url.startsWith("data:application/dicom") || data_url.startsWith("data:application/octet-stream")) { + //stack = stack.split(";")[1]; + + let dfile = await urltoFile(data_url, "dicom", "application/dicom"); + + const imageId = cornerstoneWADOImageLoader.wadouri.fileManager.add( + dfile + ); + + loadAnnotation(imageId, annotation); + + imageIds.push(imageId); + //cornerstone.loadImage(imageId).then(function(image) { + // tempFunction(image); + //}); + } else { + let url; + if (data_url.startsWith("http")) { + url = data_url; + } else { + url = window.location.href.replace(/\/\#\/?$/, '') + "/" + data_url + } + + if (url.endsWith("dcm")) { + url = "wadouri:" + url; + } + + // if there is no extension treat it as a dicom + if (/(?:\/|^)[^.\/]+$/.test(url)) { + url = "wadouri:" + url; + } + + loadAnnotation(url, annotation); + + imageIds.push(url); + + + } + } + const stack = { + currentImageIdIndex: 0, + imageIds + }; + //cornerstone.loadAndCacheImage(imageIds[0]).then(function(image) { + console.log("load and cache", imageIds[0]) + cornerstone.loadAndCacheImage(imageIds[0]).then(function (image) { + + console.log("LOAD and cache, then"); + loadCornerstoneMainImage(single_dicom_viewer, image, stack, db, load_as_stack); + }) + .catch((err, err2) => { + console.log(err); + + }); + } + + if (images.length > 1 && load_as_stack == false) { + $(".canvas-panel").append("
"); + for (let id = 0; id < images.length; id++) { + let n = id + 1; + let thumb = $( + "
" + + n + + "
" + ); + $("#image-thumbs").append(thumb); + $("#thumb-" + id).click(selectThumbClick).mousedown(stopEvent); + + let image_url = images[id]; + + let img; + + if (image_url.startsWith("data")) { + // based (image) data url, just load the image directly + if (image_url.startsWith("data:image/")) { + img = $("", { + src: image_url, + id: "thumb-image-" + id, + class: "thumbnail", + title: "Click on the thumbnail to view and manipulate the image.", + draggable: "false", + style: "height: 100px;" + }); + + $("#thumb-" + id).append(img); + + // otherwise try to load it as a dicom + } else { + // convert the data url to a file + urltoFile(image_url, "dicom", "application/dicom").then(function ( + dfile + ) { + // load the file using cornerstoneWADO file loader + const imageId = cornerstoneWADOImageLoader.wadouri.fileManager.add( + dfile + ); + cornerstone.loadAndCacheImage(imageId).then(function (image) { + img = $("
").get(0); + img.id = "thumb-image-" + id; + img.class = "thumbnail"; + img.title = + "Click on the thumbnail to view and manipulate the image."; + img.draggable = "false"; + img.style = "height: 100px; width: 100px"; + $("#thumb-" + id).append(img); + + const element = document.getElementById("thumb-image-" + id); + cornerstone.enable(element); + cornerstone.displayImage(element, image); + cornerstone.resize(element); + }); //.catch( function(error) { + }); + } + } else { + if (!image_url.endsWith("dicom") && !image_url.endsWith("dcm")) { + img = $("", { + src: image_url, + id: "thumb-image-" + id, + class: "thumbnail", + title: "Click on the thumbnail to view and manipulate the image.", + draggable: "false", + style: "height: 100px;" + }); + + $("#thumb-" + id).append(img); + + // otherwise try to load it as a dicom + } else { + + let url = "wadouri:" + image_url; + cornerstone.loadAndCacheImage(url).then(function (image) { + img = $("
").get(0); + img.id = "thumb-image-" + id; + img.class = "thumbnail"; + img.title = + "Click on the thumbnail to view and manipulate the image."; + img.draggable = "false"; + img.style = "height: 100px; width: 100px"; + $("#thumb-" + id).append(img); + + const element = document.getElementById("thumb-image-" + id); + cornerstone.enable(element); + cornerstone.displayImage(element, image); + cornerstone.resize(element); + }); + } + } + } + } + + load(images, annotations); +} + +function loadCornerstoneMainImage(element, image, stack, db, load_as_stack) { + console.log("loadCornerstoneMainImage") + console.log("load as stack:", load_as_stack) + // It is probably silly to do this each time we load a question + const PanTool = cornerstoneTools.PanTool; + const ZoomTool = cornerstoneTools.ZoomTool; + const ZoomMouseWheelTool = cornerstoneTools.ZoomMouseWheelTool; + const StackScrollMouseWheelTool = cornerstoneTools.StackScrollMouseWheelTool; + const WwwcTool = cornerstoneTools.WwwcTool; + const WwwcRegionTool = cornerstoneTools.WwwcRegionTool; + const RotateTool = cornerstoneTools.RotateTool; + const StackScrollTool = cornerstoneTools.StackScrollTool; + const MagnifyTool = cornerstoneTools.MagnifyTool; + const ArrowAnnotateTool = cornerstoneTools.ArrowAnnotateTool; + const LengthTool = cornerstoneTools.LengthTool; + + console.log("enable element", element); + cornerstone.enable(element); + + cornerstone.displayImage(element, image); + + cornerstoneTools.addStackStateManager(element, ["stack"]); + cornerstoneTools.addToolState(element, "stack", stack); + + cornerstoneTools.addTool(PanTool); + cornerstoneTools.addTool(ZoomTool); + cornerstoneTools.addTool(ZoomMouseWheelTool); + cornerstoneTools.addTool(StackScrollMouseWheelTool); + cornerstoneTools.addTool(WwwcTool); + cornerstoneTools.addTool(WwwcRegionTool); + cornerstoneTools.addTool(RotateTool); + cornerstoneTools.addTool(StackScrollTool); + cornerstoneTools.addTool(MagnifyTool); + cornerstoneTools.addTool(LengthTool); + + cornerstoneTools.addTool(ArrowAnnotateTool, { + configuration: { + getTextCallback: () => { }, + changeTextCallback: () => { }, + allowEmptyLabel: true, + renderDashed: false, + drawHandles: false, + drawHandlesOnHover: true, + }, + }); + + cornerstoneTools.setToolEnabled("ArrowAnnotate"); + + + let available_tools = [ + "Pan", + "Zoom", + "Wwwc", + "WwwcRegion", + "Rotate", + "StackScroll", + "Magnify", + "Length", + ]; + $(".mouse-binding-select option").remove(); + + available_tools.forEach(function (tool) { + let option = ""; + $(".mouse-binding-select").append(option); + //$("#left-mouse-dicom").append(option); + //$("#middle-mouse-dicom").append(option); + //$("#right-mouse-dicom").append(option); + }); + $(".mouse-binding-select").on("change", function (e) { + changeMouseBinding(e, db); + }); + + // Set default tools + $("#primary-mouse-binding .mouse-binding-select[data-button=1]").val("Pan"); + $("#primary-mouse-binding .mouse-binding-select[data-button=2]").val("Wwwc"); + $("#primary-mouse-binding .mouse-binding-select[data-button=4]").val("Zoom"); + //cornerstoneTools.setToolActive("Pan", { mouseButtonMask: 1 }); + + console.log(load_as_stack); + if (load_as_stack) { + cornerstoneTools.setToolActive("StackScrollMouseWheel", { mouseButtonMask: 3 }); + } else { + cornerstoneTools.setToolActive("ZoomMouseWheel", { mouseButtonMask: 3 }); + } + //cornerstoneTools.setToolActive("Zoom", { mouseButtonMask: 4 }); + //cornerstoneTools.setToolActive("Wwwc", { mouseButtonMask: 2 }); + $("#secondary-mouse-binding .mouse-binding-select[data-button=1]").val( + "Magnify" + ); + $("#secondary-mouse-binding .mouse-binding-select[data-button=2]").val( + "Rotate" + ); + $("#secondary-mouse-binding .mouse-binding-select[data-button=4]").val( + "WwwcRegion" + ); + + loadPrimaryDicomInterface(db); + loadAltDicomInterface(db); + + element.addEventListener("cornerstoneimagerendered", onImageRendered); + + //setDicomCanvasNonFullscreen(element); + cornerstone.reset(element); + //element.scrollIntoView(false); + //element.scrollTo(0); + + $(element).dblclick(function () { + cornerstone.reset(this); + }); + + element.removeEventListener("wheel", element.wheelEventHandler); + + // Add tool selector + //$(".canvas-panel").append( + // '' + //); + + //$(".control-overlay") + // .get(0) + // .addEventListener("change", changeControlSelection); + + resizeHandler(); + + window.addEventListener("resize", resizeHandler); + element.addEventListener( + "contextmenu", + function (e) { + // do something here... + e.preventDefault(); + }, + false + ); + + + $(element).on("mouseup", function (event) { + $(".magnifyTool").hide(); + }); +} + +function resizeHandler() { + let element = document.getElementsByClassName("single-dicom-viewer")[0]; + let h = window.innerHeight - $("#header").height() - 16; + $(element).height(h); + cornerstone.resize(element, true); +} + +async function loadPrimaryDicomInterface(db) { + const bindings = await dicom_settings_db.mouse_bindings.where({ mode: "0" }).toArray().catch((err) => { console.log(err); }); + bindings.forEach(function (b) { + let sel = $("#primary-mouse-binding select[data-button=" + b.button + "]").get( + 0 + ); + sel.value = b.tool; + //sel.dispatchEvent(new Event("change")); + }); + registerPrimaryDicomInterface(); +} + +async function loadAltDicomInterface(db) { + const bindings = await dicom_settings_db.mouse_bindings.where({ mode: "1" }).toArray().catch((err) => { console.log(err); }); + bindings.forEach(function (b) { + let sel = $( + "#secondary-mouse-binding select[data-button=" + b.button + "]" + ).get(0); + sel.value = b.tool; + }); +} + +// Called when the dicom image is loaded / rendered +function onImageRendered(e) { + const eventData = e.detail; + //console.log(e); + + // Update ww/wl + $("#wc").text(Math.round(eventData.viewport.voi.windowCenter)); + $("#ww").text(Math.round(eventData.viewport.voi.windowWidth)); + + // update stack data + let stack = eventData.enabledElement.toolStateManager.toolState.stack.data[0]; + + $("#total_image_number").text(stack.imageIds.length); + $("#current_image_number").text(parseInt(stack.currentImageIdIndex) + 1); + + if (stack.imageIds.length > 1) { + $(".thumb").removeClass("thumb-active"); + $("#thumb-" + stack.currentImageIdIndex).addClass("thumb-active"); + } + //if (stack.imageIds.length > 1) { + // $("option[value=scroll").prop("disabled", false); + // $("option[value=scroll").prop("hidden", false); + // $("option[value=scroll").text( + // "scroll (" + + // (stack.currentImageIdIndex + 1) + + // "/" + + // stack.imageIds.length + + // ")" + // ); +} + +function stopEvent(evt) { + console.log("stop", evt) + evt.preventDefault(); + evt.stopPropagation(); +} + +function selectThumbClick(evt) { + let new_index = evt.currentTarget.dataset.id; + selectThumb(new_index); + evt.preventDefault(); +} + + +export function registerPrimaryDicomInterface() { + // Set mousetools based upon the selected options + let selections = $("#primary-mouse-binding select"); + selections.each((i, option) => { + cornerstoneTools.setToolActive(option.value, { + mouseButtonMask: parseInt(option.dataset.button) + }); + }); +} + +export function registerAltDicomInterface(e) { + // Called when control is pressed + + // Set mousetools based upon the selected options + let selections = $("#secondary-mouse-binding select"); + selections.each((i, option) => { + cornerstoneTools.setToolActive(option.value, { + mouseButtonMask: parseInt(option.dataset.button) + }); + }); +} + +function changeMouseBinding(e, db) { + let select = e.currentTarget; + let button = select.dataset.button; + let mode = select.dataset.mode; + let tool = select.value; + + // Directly activate primary tools (secondary will be activated when modifier + // key is pressed + if (mode == "0") { + cornerstoneTools.setToolActive(tool, { mouseButtonMask: parseInt(button) }); + } + + dicom_settings_db.mouse_bindings.put({ button: button, mode: mode, tool: tool }); + //db.mouse_bindings.put({button: button, mode: mode, tool: tool}).then(loadPrimaryDicomInterface()); +} + +export function selectThumb(new_index) { + console.log("select thumb new index", new_index); + // There must be a better way to do this... + let dicom_element = document.getElementsByClassName("single-dicom-viewer")[0]; + if (dicom_element == null) { + return; + } + let c = cornerstone.getEnabledElement(dicom_element); + // let current_index = + // c.toolStateManager.toolState.stack.data[0].currentImageIdIndex; + c.toolStateManager.toolState.stack.data[0].currentImageIdIndex = new_index; + let id = c.toolStateManager.toolState.stack.data[0].imageIds[new_index]; + console.log("select thumb id", id); + console.log("select thumb el", dicom_element); + cornerstone.loadImage(id).then(b => { + console.log("b", b); + cornerstone.displayImage(dicom_element, b); + }); + //c = cornerstone.getEnabledElement(dicom_element) +} +function urltoFile(url, filename, mimeType) { + return fetch(url) + .then(function (res) { + return res.arrayBuffer(); + }) + .then(function (buf) { + return new File([buf], filename, { type: mimeType }); + }); +} \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..4bebd1c --- /dev/null +++ b/index.html @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + +
+
+

A dicom viewer

+ +
+ +
+ + + diff --git a/lib/cornerstone/cornerstone-base64-image-loader.es5.js b/lib/cornerstone/cornerstone-base64-image-loader.es5.js new file mode 100644 index 0000000..9ae4b2b --- /dev/null +++ b/lib/cornerstone/cornerstone-base64-image-loader.es5.js @@ -0,0 +1,242 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; + +var _defaultOptions = { + channel: 4, + width: null, + height: null, + schema: 'base64://' +}; + +var CornerstoneBase64ImageLoader = /** @class */ (function () { + function CornerstoneBase64ImageLoader(cornerstone, options) { + if (options === void 0) { options = _defaultOptions; } + this._cornerstone = cornerstone; + this._options = options; + this._lastImageIdDrawn = null; + this._UPNG = null; + this._canvas = document.createElement('canvas'); + this.arrayBufferToImage = this.arrayBufferToImage.bind(this); + this.getArrayBuffer = this.getArrayBuffer.bind(this); + this.decodeBase64 = this.decodeBase64.bind(this); + this.createImage = this.createImage.bind(this); + this.imageLoader = this.imageLoader.bind(this); + this.replaceImage = this.replaceImage.bind(this); + } + CornerstoneBase64ImageLoader.prototype.arrayBufferToImage = function (arrayBuffer) { + return new Promise(function (resolve, reject) { + var image = new Image(); + var arrayBufferView = new Uint8Array(arrayBuffer); + var blob = new Blob([arrayBufferView]); + var urlCreator = window.URL || window.webkitURL; + var imageUrl = urlCreator.createObjectURL(blob); + image.src = imageUrl; + image.onload = function () { + urlCreator.revokeObjectURL(imageUrl); + resolve(image); + }; + image.onerror = function (error) { + urlCreator.revokeObjectURL(imageUrl); + reject(error); + }; + }); + }; + CornerstoneBase64ImageLoader.prototype.getArrayBuffer = function (str) { + var buf = new ArrayBuffer(str.length); + var bufView = new Uint8Array(buf); + Array.from(str).map(function (ch, idx) { + bufView[idx] = ch.charCodeAt(0); + return ch; + }); + return bufView; + }; + CornerstoneBase64ImageLoader.prototype.decodeBase64 = function (base64PixelData) { + var pixelDataAsString = window.atob(base64PixelData); + var arrayBuffer = this.getArrayBuffer(pixelDataAsString); + return arrayBuffer; + }; + CornerstoneBase64ImageLoader.prototype.createImage = function (image, imageId) { + var _this = this; + var rows = image.naturalHeight; + var columns = image.naturalWidth; + var getImageData = function () { + var context; + if (_this._lastImageIdDrawn === imageId) { + context = _this._canvas.getContext('2d'); + } + else { + _this._canvas.height = image.naturalHeight; + _this._canvas.width = image.naturalWidth; + context = _this._canvas.getContext('2d'); + context.drawImage(image, 0, 0); + _this._lastImageIdDrawn = imageId; + } + return context.getImageData(0, 0, image.naturalWidth, image.naturalHeight); + }; + var getPixelData = function () { + var imageData = getImageData(); + return imageData.data; + }; + var getCanvas = function () { + if (_this._lastImageIdDrawn === imageId) { + return _this._canvas; + } + _this._canvas.height = image.naturalHeight; + _this._canvas.width = image.naturalWidth; + var context = _this._canvas.getContext('2d'); + context.drawImage(image, 0, 0); + _this._lastImageIdDrawn = imageId; + return _this._canvas; + }; + var setLastImageIdDrawn = function (nextLastImageIdDrawn) { + if (nextLastImageIdDrawn === void 0) { nextLastImageIdDrawn = null; } + _this._lastImageIdDrawn = nextLastImageIdDrawn; + }; + return { + imageId: imageId, + minPixelValue: 0, + maxPixelValue: 255, + slope: 1, + intercept: 0, + windowCenter: 128, + windowWidth: 255, + render: this.cornerstone.renderWebImage, + getPixelData: getPixelData, + getCanvas: getCanvas, + getImage: function () { return image; }, + setLastImageIdDrawn: setLastImageIdDrawn, + rows: rows, + columns: columns, + height: rows, + width: columns, + color: true, + rgba: false, + columnPixelSpacing: null, + rowPixelSpacing: null, + invert: false, + sizeInBytes: rows * columns * this._options.channel + }; + }; + CornerstoneBase64ImageLoader.prototype.imageLoader = function (imageId) { + var _this = this; + // const schema = imageId.split('://')[0] + var base64PixelData = imageId.replace(this._options.schema, ''); + var arrayBuffer; + if (this._options.width && this._options.height && this._UPNG) { + var columns = this._options.width; + var rows = this._options.height; + arrayBuffer = new Uint8Array(columns * rows * this._options.channel); + arrayBuffer = this._UPNG.encode([arrayBuffer.buffer], columns, rows, 0); + } + else { + arrayBuffer = this.decodeBase64(base64PixelData); + } + var imagePromise = this.arrayBufferToImage(arrayBuffer); + var promise = new Promise(function (resolve, reject) { + imagePromise.then(function (image) { + var imageObject = _this.createImage(image, imageId); + resolve(imageObject); + }, reject); + }); + return { + promise: promise + }; + }; + CornerstoneBase64ImageLoader.prototype.replaceImage = function (layer, arrayBuffer) { + var _this = this; + if (!this._UPNG) { + return null; + } + var png = this._UPNG.encode([arrayBuffer.buffer], layer.image.columns, layer.image.rows, 0); + var imagePromise = this.arrayBufferToImage(png); + return imagePromise.then(function (image) { + layer.image = _this.createImage(image, layer.image.imageId); + }); + }; + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "options", { + get: function () { + return __assign({}, this._options); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "cornerstone", { + get: function () { + return this._cornerstone; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "UPNG", { + get: function () { + return this._UPNG; + }, + enumerable: true, + configurable: true + }); + CornerstoneBase64ImageLoader.prototype.setUPNG = function (UPNG) { + this._UPNG = UPNG; + }; + CornerstoneBase64ImageLoader.prototype.registerLoaders = function () { + this.cornerstone.registerImageLoader('base64', this.imageLoader); + }; + return CornerstoneBase64ImageLoader; +}()); + +var _imageLoader; +var _options = __assign({}, _defaultOptions); +var cornerstoneBase64ImageLoader = { + external: { + set cornerstone(cs) { + _imageLoader = new CornerstoneBase64ImageLoader(cs, _options); + _imageLoader.registerLoaders(); + }, + get cornerstone() { + return _imageLoader.cornerstone; + }, + get UPNG() { + return _imageLoader.UPNG; + }, + set UPNG(_UPNG) { + _imageLoader.setUPNG(_UPNG); + } + }, + initOptions: function () { + _options = __assign({}, _defaultOptions); + }, + set options(newOptions) { + _options = __assign({}, _options, newOptions); + }, + get options() { + return __assign({}, _options); + }, + get imageLoader() { + return _imageLoader; + } +}; + +export default cornerstoneBase64ImageLoader; +//# sourceMappingURL=cornerstone-base64-image-loader.es5.js.map diff --git a/lib/cornerstone/cornerstone-base64-image-loader.umd.js b/lib/cornerstone/cornerstone-base64-image-loader.umd.js new file mode 100644 index 0000000..d5147aa --- /dev/null +++ b/lib/cornerstone/cornerstone-base64-image-loader.umd.js @@ -0,0 +1,250 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global.cornerstoneBase64ImageLoader = factory()); +}(this, (function () { 'use strict'; + + /*! ***************************************************************************** + Copyright (c) Microsoft Corporation. All rights reserved. + Licensed under the Apache License, Version 2.0 (the "License"); you may not use + this file except in compliance with the License. You may obtain a copy of the + License at http://www.apache.org/licenses/LICENSE-2.0 + + THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED + WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, + MERCHANTABLITY OR NON-INFRINGEMENT. + + See the Apache Version 2.0 License for specific language governing permissions + and limitations under the License. + ***************************************************************************** */ + + var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); + }; + + var _defaultOptions = { + channel: 4, + width: null, + height: null, + schema: 'base64://' + }; + + var CornerstoneBase64ImageLoader = /** @class */ (function () { + function CornerstoneBase64ImageLoader(cornerstone, options) { + if (options === void 0) { options = _defaultOptions; } + this._cornerstone = cornerstone; + this._options = options; + this._lastImageIdDrawn = null; + this._UPNG = null; + this._canvas = document.createElement('canvas'); + this.arrayBufferToImage = this.arrayBufferToImage.bind(this); + this.getArrayBuffer = this.getArrayBuffer.bind(this); + this.decodeBase64 = this.decodeBase64.bind(this); + this.createImage = this.createImage.bind(this); + this.imageLoader = this.imageLoader.bind(this); + this.replaceImage = this.replaceImage.bind(this); + } + CornerstoneBase64ImageLoader.prototype.arrayBufferToImage = function (arrayBuffer) { + return new Promise(function (resolve, reject) { + var image = new Image(); + var arrayBufferView = new Uint8Array(arrayBuffer); + var blob = new Blob([arrayBufferView]); + var urlCreator = window.URL || window.webkitURL; + var imageUrl = urlCreator.createObjectURL(blob); + image.src = imageUrl; + image.onload = function () { + urlCreator.revokeObjectURL(imageUrl); + resolve(image); + }; + image.onerror = function (error) { + urlCreator.revokeObjectURL(imageUrl); + reject(error); + }; + }); + }; + CornerstoneBase64ImageLoader.prototype.getArrayBuffer = function (str) { + var buf = new ArrayBuffer(str.length); + var bufView = new Uint8Array(buf); + Array.from(str).map(function (ch, idx) { + bufView[idx] = ch.charCodeAt(0); + return ch; + }); + return bufView; + }; + CornerstoneBase64ImageLoader.prototype.decodeBase64 = function (base64PixelData) { + var pixelDataAsString = window.atob(base64PixelData); + var arrayBuffer = this.getArrayBuffer(pixelDataAsString); + return arrayBuffer; + }; + CornerstoneBase64ImageLoader.prototype.createImage = function (image, imageId) { + var _this = this; + var rows = image.naturalHeight; + var columns = image.naturalWidth; + var getImageData = function () { + var context; + if (_this._lastImageIdDrawn === imageId) { + context = _this._canvas.getContext('2d'); + } + else { + _this._canvas.height = image.naturalHeight; + _this._canvas.width = image.naturalWidth; + context = _this._canvas.getContext('2d'); + context.drawImage(image, 0, 0); + _this._lastImageIdDrawn = imageId; + } + return context.getImageData(0, 0, image.naturalWidth, image.naturalHeight); + }; + var getPixelData = function () { + var imageData = getImageData(); + return imageData.data; + }; + var getCanvas = function () { + if (_this._lastImageIdDrawn === imageId) { + return _this._canvas; + } + _this._canvas.height = image.naturalHeight; + _this._canvas.width = image.naturalWidth; + var context = _this._canvas.getContext('2d'); + context.drawImage(image, 0, 0); + _this._lastImageIdDrawn = imageId; + return _this._canvas; + }; + var setLastImageIdDrawn = function (nextLastImageIdDrawn) { + if (nextLastImageIdDrawn === void 0) { nextLastImageIdDrawn = null; } + _this._lastImageIdDrawn = nextLastImageIdDrawn; + }; + return { + imageId: imageId, + minPixelValue: 0, + maxPixelValue: 255, + slope: 1, + intercept: 0, + windowCenter: 128, + windowWidth: 255, + render: this.cornerstone.renderWebImage, + getPixelData: getPixelData, + getCanvas: getCanvas, + getImage: function () { return image; }, + setLastImageIdDrawn: setLastImageIdDrawn, + rows: rows, + columns: columns, + height: rows, + width: columns, + color: true, + rgba: false, + columnPixelSpacing: null, + rowPixelSpacing: null, + invert: false, + sizeInBytes: rows * columns * this._options.channel + }; + }; + CornerstoneBase64ImageLoader.prototype.imageLoader = function (imageId) { + var _this = this; + // const schema = imageId.split('://')[0] + var base64PixelData = imageId.replace(this._options.schema, ''); + var arrayBuffer; + if (this._options.width && this._options.height && this._UPNG) { + var columns = this._options.width; + var rows = this._options.height; + arrayBuffer = new Uint8Array(columns * rows * this._options.channel); + arrayBuffer = this._UPNG.encode([arrayBuffer.buffer], columns, rows, 0); + } + else { + arrayBuffer = this.decodeBase64(base64PixelData); + } + var imagePromise = this.arrayBufferToImage(arrayBuffer); + var promise = new Promise(function (resolve, reject) { + imagePromise.then(function (image) { + var imageObject = _this.createImage(image, imageId); + resolve(imageObject); + }, reject); + }); + return { + promise: promise + }; + }; + CornerstoneBase64ImageLoader.prototype.replaceImage = function (layer, arrayBuffer) { + var _this = this; + if (!this._UPNG) { + return null; + } + var png = this._UPNG.encode([arrayBuffer.buffer], layer.image.columns, layer.image.rows, 0); + var imagePromise = this.arrayBufferToImage(png); + return imagePromise.then(function (image) { + layer.image = _this.createImage(image, layer.image.imageId); + }); + }; + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "options", { + get: function () { + return __assign({}, this._options); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "cornerstone", { + get: function () { + return this._cornerstone; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CornerstoneBase64ImageLoader.prototype, "UPNG", { + get: function () { + return this._UPNG; + }, + enumerable: true, + configurable: true + }); + CornerstoneBase64ImageLoader.prototype.setUPNG = function (UPNG) { + this._UPNG = UPNG; + }; + CornerstoneBase64ImageLoader.prototype.registerLoaders = function () { + this.cornerstone.registerImageLoader('base64', this.imageLoader); + }; + return CornerstoneBase64ImageLoader; + }()); + + var _imageLoader; + var _options = __assign({}, _defaultOptions); + var cornerstoneBase64ImageLoader = { + external: { + set cornerstone(cs) { + _imageLoader = new CornerstoneBase64ImageLoader(cs, _options); + _imageLoader.registerLoaders(); + }, + get cornerstone() { + return _imageLoader.cornerstone; + }, + get UPNG() { + return _imageLoader.UPNG; + }, + set UPNG(_UPNG) { + _imageLoader.setUPNG(_UPNG); + } + }, + initOptions: function () { + _options = __assign({}, _defaultOptions); + }, + set options(newOptions) { + _options = __assign({}, _options, newOptions); + }, + get options() { + return __assign({}, _options); + }, + get imageLoader() { + return _imageLoader; + } + }; + + return cornerstoneBase64ImageLoader; + +}))); +//# sourceMappingURL=cornerstone-base64-image-loader.umd.js.map diff --git a/lib/cornerstone/cornerstone.js b/lib/cornerstone/cornerstone.js new file mode 100644 index 0000000..cd18814 --- /dev/null +++ b/lib/cornerstone/cornerstone.js @@ -0,0 +1,8599 @@ +/*! cornerstone-core - 2.3.0 - 2019-07-03 | (c) 2016 Chris Hafey | https://github.com/cornerstonejs/cornerstone */ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define("cornerstone-core", [], factory); + else if(typeof exports === 'object') + exports["cornerstone-core"] = factory(); + else + root["cornerstone"] = factory(); +})(window, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ function hotDisposeChunk(chunkId) { +/******/ delete installedChunks[chunkId]; +/******/ } +/******/ var parentHotUpdateCallback = window["webpackHotUpdate"]; +/******/ window["webpackHotUpdate"] = // eslint-disable-next-line no-unused-vars +/******/ function webpackHotUpdateCallback(chunkId, moreModules) { +/******/ hotAddUpdateChunk(chunkId, moreModules); +/******/ if (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules); +/******/ } ; +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotDownloadUpdateChunk(chunkId) { +/******/ var head = document.getElementsByTagName("head")[0]; +/******/ var script = document.createElement("script"); +/******/ script.charset = "utf-8"; +/******/ script.src = __webpack_require__.p + "" + chunkId + "." + hotCurrentHash + ".hot-update.js"; +/******/ ; +/******/ head.appendChild(script); +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotDownloadManifest(requestTimeout) { +/******/ requestTimeout = requestTimeout || 10000; +/******/ return new Promise(function(resolve, reject) { +/******/ if (typeof XMLHttpRequest === "undefined") { +/******/ return reject(new Error("No browser support")); +/******/ } +/******/ try { +/******/ var request = new XMLHttpRequest(); +/******/ var requestPath = __webpack_require__.p + "" + hotCurrentHash + ".hot-update.json"; +/******/ request.open("GET", requestPath, true); +/******/ request.timeout = requestTimeout; +/******/ request.send(null); +/******/ } catch (err) { +/******/ return reject(err); +/******/ } +/******/ request.onreadystatechange = function() { +/******/ if (request.readyState !== 4) return; +/******/ if (request.status === 0) { +/******/ // timeout +/******/ reject( +/******/ new Error("Manifest request to " + requestPath + " timed out.") +/******/ ); +/******/ } else if (request.status === 404) { +/******/ // no update available +/******/ resolve(); +/******/ } else if (request.status !== 200 && request.status !== 304) { +/******/ // other failure +/******/ reject(new Error("Manifest request to " + requestPath + " failed.")); +/******/ } else { +/******/ // success +/******/ try { +/******/ var update = JSON.parse(request.responseText); +/******/ } catch (e) { +/******/ reject(e); +/******/ return; +/******/ } +/******/ resolve(update); +/******/ } +/******/ }; +/******/ }); +/******/ } +/******/ +/******/ var hotApplyOnUpdate = true; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentHash = "f1fc9ee2018efa87b506"; +/******/ var hotRequestTimeout = 10000; +/******/ var hotCurrentModuleData = {}; +/******/ var hotCurrentChildModule; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentParents = []; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentParentsTemp = []; +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotCreateRequire(moduleId) { +/******/ var me = installedModules[moduleId]; +/******/ if (!me) return __webpack_require__; +/******/ var fn = function(request) { +/******/ if (me.hot.active) { +/******/ if (installedModules[request]) { +/******/ if (installedModules[request].parents.indexOf(moduleId) === -1) { +/******/ installedModules[request].parents.push(moduleId); +/******/ } +/******/ } else { +/******/ hotCurrentParents = [moduleId]; +/******/ hotCurrentChildModule = request; +/******/ } +/******/ if (me.children.indexOf(request) === -1) { +/******/ me.children.push(request); +/******/ } +/******/ } else { +/******/ console.warn( +/******/ "[HMR] unexpected require(" + +/******/ request + +/******/ ") from disposed module " + +/******/ moduleId +/******/ ); +/******/ hotCurrentParents = []; +/******/ } +/******/ return __webpack_require__(request); +/******/ }; +/******/ var ObjectFactory = function ObjectFactory(name) { +/******/ return { +/******/ configurable: true, +/******/ enumerable: true, +/******/ get: function() { +/******/ return __webpack_require__[name]; +/******/ }, +/******/ set: function(value) { +/******/ __webpack_require__[name] = value; +/******/ } +/******/ }; +/******/ }; +/******/ for (var name in __webpack_require__) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(__webpack_require__, name) && +/******/ name !== "e" && +/******/ name !== "t" +/******/ ) { +/******/ Object.defineProperty(fn, name, ObjectFactory(name)); +/******/ } +/******/ } +/******/ fn.e = function(chunkId) { +/******/ if (hotStatus === "ready") hotSetStatus("prepare"); +/******/ hotChunksLoading++; +/******/ return __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) { +/******/ finishChunkLoading(); +/******/ throw err; +/******/ }); +/******/ +/******/ function finishChunkLoading() { +/******/ hotChunksLoading--; +/******/ if (hotStatus === "prepare") { +/******/ if (!hotWaitingFilesMap[chunkId]) { +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if (hotChunksLoading === 0 && hotWaitingFiles === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ } +/******/ }; +/******/ fn.t = function(value, mode) { +/******/ if (mode & 1) value = fn(value); +/******/ return __webpack_require__.t(value, mode & ~1); +/******/ }; +/******/ return fn; +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotCreateModule(moduleId) { +/******/ var hot = { +/******/ // private stuff +/******/ _acceptedDependencies: {}, +/******/ _declinedDependencies: {}, +/******/ _selfAccepted: false, +/******/ _selfDeclined: false, +/******/ _disposeHandlers: [], +/******/ _main: hotCurrentChildModule !== moduleId, +/******/ +/******/ // Module API +/******/ active: true, +/******/ accept: function(dep, callback) { +/******/ if (dep === undefined) hot._selfAccepted = true; +/******/ else if (typeof dep === "function") hot._selfAccepted = dep; +/******/ else if (typeof dep === "object") +/******/ for (var i = 0; i < dep.length; i++) +/******/ hot._acceptedDependencies[dep[i]] = callback || function() {}; +/******/ else hot._acceptedDependencies[dep] = callback || function() {}; +/******/ }, +/******/ decline: function(dep) { +/******/ if (dep === undefined) hot._selfDeclined = true; +/******/ else if (typeof dep === "object") +/******/ for (var i = 0; i < dep.length; i++) +/******/ hot._declinedDependencies[dep[i]] = true; +/******/ else hot._declinedDependencies[dep] = true; +/******/ }, +/******/ dispose: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ addDisposeHandler: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ removeDisposeHandler: function(callback) { +/******/ var idx = hot._disposeHandlers.indexOf(callback); +/******/ if (idx >= 0) hot._disposeHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ // Management API +/******/ check: hotCheck, +/******/ apply: hotApply, +/******/ status: function(l) { +/******/ if (!l) return hotStatus; +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ addStatusHandler: function(l) { +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ removeStatusHandler: function(l) { +/******/ var idx = hotStatusHandlers.indexOf(l); +/******/ if (idx >= 0) hotStatusHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ //inherit from previous dispose call +/******/ data: hotCurrentModuleData[moduleId] +/******/ }; +/******/ hotCurrentChildModule = undefined; +/******/ return hot; +/******/ } +/******/ +/******/ var hotStatusHandlers = []; +/******/ var hotStatus = "idle"; +/******/ +/******/ function hotSetStatus(newStatus) { +/******/ hotStatus = newStatus; +/******/ for (var i = 0; i < hotStatusHandlers.length; i++) +/******/ hotStatusHandlers[i].call(null, newStatus); +/******/ } +/******/ +/******/ // while downloading +/******/ var hotWaitingFiles = 0; +/******/ var hotChunksLoading = 0; +/******/ var hotWaitingFilesMap = {}; +/******/ var hotRequestedFilesMap = {}; +/******/ var hotAvailableFilesMap = {}; +/******/ var hotDeferred; +/******/ +/******/ // The update info +/******/ var hotUpdate, hotUpdateNewHash; +/******/ +/******/ function toModuleId(id) { +/******/ var isNumber = +id + "" === id; +/******/ return isNumber ? +id : id; +/******/ } +/******/ +/******/ function hotCheck(apply) { +/******/ if (hotStatus !== "idle") { +/******/ throw new Error("check() is only allowed in idle status"); +/******/ } +/******/ hotApplyOnUpdate = apply; +/******/ hotSetStatus("check"); +/******/ return hotDownloadManifest(hotRequestTimeout).then(function(update) { +/******/ if (!update) { +/******/ hotSetStatus("idle"); +/******/ return null; +/******/ } +/******/ hotRequestedFilesMap = {}; +/******/ hotWaitingFilesMap = {}; +/******/ hotAvailableFilesMap = update.c; +/******/ hotUpdateNewHash = update.h; +/******/ +/******/ hotSetStatus("prepare"); +/******/ var promise = new Promise(function(resolve, reject) { +/******/ hotDeferred = { +/******/ resolve: resolve, +/******/ reject: reject +/******/ }; +/******/ }); +/******/ hotUpdate = {}; +/******/ var chunkId = "cornerstone"; +/******/ // eslint-disable-next-line no-lone-blocks +/******/ { +/******/ /*globals chunkId */ +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if ( +/******/ hotStatus === "prepare" && +/******/ hotChunksLoading === 0 && +/******/ hotWaitingFiles === 0 +/******/ ) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ return promise; +/******/ }); +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotAddUpdateChunk(chunkId, moreModules) { +/******/ if (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId]) +/******/ return; +/******/ hotRequestedFilesMap[chunkId] = false; +/******/ for (var moduleId in moreModules) { +/******/ if (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ hotUpdate[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if (--hotWaitingFiles === 0 && hotChunksLoading === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ +/******/ function hotEnsureUpdateChunk(chunkId) { +/******/ if (!hotAvailableFilesMap[chunkId]) { +/******/ hotWaitingFilesMap[chunkId] = true; +/******/ } else { +/******/ hotRequestedFilesMap[chunkId] = true; +/******/ hotWaitingFiles++; +/******/ hotDownloadUpdateChunk(chunkId); +/******/ } +/******/ } +/******/ +/******/ function hotUpdateDownloaded() { +/******/ hotSetStatus("ready"); +/******/ var deferred = hotDeferred; +/******/ hotDeferred = null; +/******/ if (!deferred) return; +/******/ if (hotApplyOnUpdate) { +/******/ // Wrap deferred object in Promise to mark it as a well-handled Promise to +/******/ // avoid triggering uncaught exception warning in Chrome. +/******/ // See https://bugs.chromium.org/p/chromium/issues/detail?id=465666 +/******/ Promise.resolve() +/******/ .then(function() { +/******/ return hotApply(hotApplyOnUpdate); +/******/ }) +/******/ .then( +/******/ function(result) { +/******/ deferred.resolve(result); +/******/ }, +/******/ function(err) { +/******/ deferred.reject(err); +/******/ } +/******/ ); +/******/ } else { +/******/ var outdatedModules = []; +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ outdatedModules.push(toModuleId(id)); +/******/ } +/******/ } +/******/ deferred.resolve(outdatedModules); +/******/ } +/******/ } +/******/ +/******/ function hotApply(options) { +/******/ if (hotStatus !== "ready") +/******/ throw new Error("apply() is only allowed in ready status"); +/******/ options = options || {}; +/******/ +/******/ var cb; +/******/ var i; +/******/ var j; +/******/ var module; +/******/ var moduleId; +/******/ +/******/ function getAffectedStuff(updateModuleId) { +/******/ var outdatedModules = [updateModuleId]; +/******/ var outdatedDependencies = {}; +/******/ +/******/ var queue = outdatedModules.slice().map(function(id) { +/******/ return { +/******/ chain: [id], +/******/ id: id +/******/ }; +/******/ }); +/******/ while (queue.length > 0) { +/******/ var queueItem = queue.pop(); +/******/ var moduleId = queueItem.id; +/******/ var chain = queueItem.chain; +/******/ module = installedModules[moduleId]; +/******/ if (!module || module.hot._selfAccepted) continue; +/******/ if (module.hot._selfDeclined) { +/******/ return { +/******/ type: "self-declined", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ if (module.hot._main) { +/******/ return { +/******/ type: "unaccepted", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ for (var i = 0; i < module.parents.length; i++) { +/******/ var parentId = module.parents[i]; +/******/ var parent = installedModules[parentId]; +/******/ if (!parent) continue; +/******/ if (parent.hot._declinedDependencies[moduleId]) { +/******/ return { +/******/ type: "declined", +/******/ chain: chain.concat([parentId]), +/******/ moduleId: moduleId, +/******/ parentId: parentId +/******/ }; +/******/ } +/******/ if (outdatedModules.indexOf(parentId) !== -1) continue; +/******/ if (parent.hot._acceptedDependencies[moduleId]) { +/******/ if (!outdatedDependencies[parentId]) +/******/ outdatedDependencies[parentId] = []; +/******/ addAllToSet(outdatedDependencies[parentId], [moduleId]); +/******/ continue; +/******/ } +/******/ delete outdatedDependencies[parentId]; +/******/ outdatedModules.push(parentId); +/******/ queue.push({ +/******/ chain: chain.concat([parentId]), +/******/ id: parentId +/******/ }); +/******/ } +/******/ } +/******/ +/******/ return { +/******/ type: "accepted", +/******/ moduleId: updateModuleId, +/******/ outdatedModules: outdatedModules, +/******/ outdatedDependencies: outdatedDependencies +/******/ }; +/******/ } +/******/ +/******/ function addAllToSet(a, b) { +/******/ for (var i = 0; i < b.length; i++) { +/******/ var item = b[i]; +/******/ if (a.indexOf(item) === -1) a.push(item); +/******/ } +/******/ } +/******/ +/******/ // at begin all updates modules are outdated +/******/ // the "outdated" status can propagate to parents if they don't accept the children +/******/ var outdatedDependencies = {}; +/******/ var outdatedModules = []; +/******/ var appliedUpdate = {}; +/******/ +/******/ var warnUnexpectedRequire = function warnUnexpectedRequire() { +/******/ console.warn( +/******/ "[HMR] unexpected require(" + result.moduleId + ") to disposed module" +/******/ ); +/******/ }; +/******/ +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ moduleId = toModuleId(id); +/******/ /** @type {TODO} */ +/******/ var result; +/******/ if (hotUpdate[id]) { +/******/ result = getAffectedStuff(moduleId); +/******/ } else { +/******/ result = { +/******/ type: "disposed", +/******/ moduleId: id +/******/ }; +/******/ } +/******/ /** @type {Error|false} */ +/******/ var abortError = false; +/******/ var doApply = false; +/******/ var doDispose = false; +/******/ var chainInfo = ""; +/******/ if (result.chain) { +/******/ chainInfo = "\nUpdate propagation: " + result.chain.join(" -> "); +/******/ } +/******/ switch (result.type) { +/******/ case "self-declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of self decline: " + +/******/ result.moduleId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of declined dependency: " + +/******/ result.moduleId + +/******/ " in " + +/******/ result.parentId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "unaccepted": +/******/ if (options.onUnaccepted) options.onUnaccepted(result); +/******/ if (!options.ignoreUnaccepted) +/******/ abortError = new Error( +/******/ "Aborted because " + moduleId + " is not accepted" + chainInfo +/******/ ); +/******/ break; +/******/ case "accepted": +/******/ if (options.onAccepted) options.onAccepted(result); +/******/ doApply = true; +/******/ break; +/******/ case "disposed": +/******/ if (options.onDisposed) options.onDisposed(result); +/******/ doDispose = true; +/******/ break; +/******/ default: +/******/ throw new Error("Unexception type " + result.type); +/******/ } +/******/ if (abortError) { +/******/ hotSetStatus("abort"); +/******/ return Promise.reject(abortError); +/******/ } +/******/ if (doApply) { +/******/ appliedUpdate[moduleId] = hotUpdate[moduleId]; +/******/ addAllToSet(outdatedModules, result.outdatedModules); +/******/ for (moduleId in result.outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call( +/******/ result.outdatedDependencies, +/******/ moduleId +/******/ ) +/******/ ) { +/******/ if (!outdatedDependencies[moduleId]) +/******/ outdatedDependencies[moduleId] = []; +/******/ addAllToSet( +/******/ outdatedDependencies[moduleId], +/******/ result.outdatedDependencies[moduleId] +/******/ ); +/******/ } +/******/ } +/******/ } +/******/ if (doDispose) { +/******/ addAllToSet(outdatedModules, [result.moduleId]); +/******/ appliedUpdate[moduleId] = warnUnexpectedRequire; +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Store self accepted outdated modules to require them later by the module system +/******/ var outdatedSelfAcceptedModules = []; +/******/ for (i = 0; i < outdatedModules.length; i++) { +/******/ moduleId = outdatedModules[i]; +/******/ if ( +/******/ installedModules[moduleId] && +/******/ installedModules[moduleId].hot._selfAccepted +/******/ ) +/******/ outdatedSelfAcceptedModules.push({ +/******/ module: moduleId, +/******/ errorHandler: installedModules[moduleId].hot._selfAccepted +/******/ }); +/******/ } +/******/ +/******/ // Now in "dispose" phase +/******/ hotSetStatus("dispose"); +/******/ Object.keys(hotAvailableFilesMap).forEach(function(chunkId) { +/******/ if (hotAvailableFilesMap[chunkId] === false) { +/******/ hotDisposeChunk(chunkId); +/******/ } +/******/ }); +/******/ +/******/ var idx; +/******/ var queue = outdatedModules.slice(); +/******/ while (queue.length > 0) { +/******/ moduleId = queue.pop(); +/******/ module = installedModules[moduleId]; +/******/ if (!module) continue; +/******/ +/******/ var data = {}; +/******/ +/******/ // Call dispose handlers +/******/ var disposeHandlers = module.hot._disposeHandlers; +/******/ for (j = 0; j < disposeHandlers.length; j++) { +/******/ cb = disposeHandlers[j]; +/******/ cb(data); +/******/ } +/******/ hotCurrentModuleData[moduleId] = data; +/******/ +/******/ // disable module (this disables requires from this module) +/******/ module.hot.active = false; +/******/ +/******/ // remove module from cache +/******/ delete installedModules[moduleId]; +/******/ +/******/ // when disposing there is no need to call dispose handler +/******/ delete outdatedDependencies[moduleId]; +/******/ +/******/ // remove "parents" references from all children +/******/ for (j = 0; j < module.children.length; j++) { +/******/ var child = installedModules[module.children[j]]; +/******/ if (!child) continue; +/******/ idx = child.parents.indexOf(moduleId); +/******/ if (idx >= 0) { +/******/ child.parents.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ +/******/ // remove outdated dependency from module children +/******/ var dependency; +/******/ var moduleOutdatedDependencies; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ for (j = 0; j < moduleOutdatedDependencies.length; j++) { +/******/ dependency = moduleOutdatedDependencies[j]; +/******/ idx = module.children.indexOf(dependency); +/******/ if (idx >= 0) module.children.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Not in "apply" phase +/******/ hotSetStatus("apply"); +/******/ +/******/ hotCurrentHash = hotUpdateNewHash; +/******/ +/******/ // insert new code +/******/ for (moduleId in appliedUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) { +/******/ modules[moduleId] = appliedUpdate[moduleId]; +/******/ } +/******/ } +/******/ +/******/ // call accept handlers +/******/ var error = null; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ var callbacks = []; +/******/ for (i = 0; i < moduleOutdatedDependencies.length; i++) { +/******/ dependency = moduleOutdatedDependencies[i]; +/******/ cb = module.hot._acceptedDependencies[dependency]; +/******/ if (cb) { +/******/ if (callbacks.indexOf(cb) !== -1) continue; +/******/ callbacks.push(cb); +/******/ } +/******/ } +/******/ for (i = 0; i < callbacks.length; i++) { +/******/ cb = callbacks[i]; +/******/ try { +/******/ cb(moduleOutdatedDependencies); +/******/ } catch (err) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "accept-errored", +/******/ moduleId: moduleId, +/******/ dependencyId: moduleOutdatedDependencies[i], +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Load self accepted modules +/******/ for (i = 0; i < outdatedSelfAcceptedModules.length; i++) { +/******/ var item = outdatedSelfAcceptedModules[i]; +/******/ moduleId = item.module; +/******/ hotCurrentParents = [moduleId]; +/******/ try { +/******/ __webpack_require__(moduleId); +/******/ } catch (err) { +/******/ if (typeof item.errorHandler === "function") { +/******/ try { +/******/ item.errorHandler(err); +/******/ } catch (err2) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-error-handler-errored", +/******/ moduleId: moduleId, +/******/ error: err2, +/******/ originalError: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err2; +/******/ } +/******/ if (!error) error = err; +/******/ } +/******/ } else { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-errored", +/******/ moduleId: moduleId, +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // handle errors in accept handlers and self accepted module load +/******/ if (error) { +/******/ hotSetStatus("fail"); +/******/ return Promise.reject(error); +/******/ } +/******/ +/******/ hotSetStatus("idle"); +/******/ return new Promise(function(resolve) { +/******/ resolve(outdatedModules); +/******/ }); +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {}, +/******/ hot: hotCreateModule(moduleId), +/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp), +/******/ children: [] +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId)); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // __webpack_hash__ +/******/ __webpack_require__.h = function() { return hotCurrentHash; }; +/******/ +/******/ +/******/ // Load entry module and return exports +/******/ return hotCreateRequire("./index.js")(__webpack_require__.s = "./index.js"); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "./canvasToPixel.js": +/*!**************************!*\ + !*** ./canvasToPixel.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/getTransform.js */ "./internal/getTransform.js"); + + +/** + * Converts a point in the canvas coordinate system to the pixel coordinate system + * system. This can be used to reset tools' image coordinates after modifications + * have been made in canvas space (e.g. moving a tool by a few cm, independent of + * image resolution). + * + * @param {HTMLElement} element The Cornerstone element within which the input point lies + * @param {{x: Number, y: Number}} pt The input point in the canvas coordinate system + * + * @returns {{x: Number, y: Number}} The transformed point in the pixel coordinate system + * @memberof PixelCoordinateSystem + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, pt) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var transform = Object(_internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement); + transform.invert(); + return transform.transformPoint(pt.x, pt.y); +}); + +/***/ }), + +/***/ "./colors/colormap.js": +/*!****************************!*\ + !*** ./colors/colormap.js ***! + \****************************/ +/*! exports provided: getColormapsList, getColormap */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getColormapsList", function() { return getColormapsList; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getColormap", function() { return getColormap; }); +/* harmony import */ var _lookupTable_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lookupTable.js */ "./colors/lookupTable.js"); + +var COLOR_TRANSPARENT = [0, 0, 0, 0]; // Colormaps +// +// Hot Iron, PET, Hot Metal Blue and PET 20 Step are color palettes +// Defined by the DICOM standard +// http://dicom.nema.org/dicom/2013/output/chtml/part06/chapter_B.html +// +// All Linear Segmented Colormaps were copied from matplotlib +// https://github.com/stefanv/matplotlib/blob/master/lib/matplotlib/_cm.py + +var colormapsData = { + hotIron: { + name: 'Hot Iron', + numOfColors: 256, + colors: [[0, 0, 0, 255], [2, 0, 0, 255], [4, 0, 0, 255], [6, 0, 0, 255], [8, 0, 0, 255], [10, 0, 0, 255], [12, 0, 0, 255], [14, 0, 0, 255], [16, 0, 0, 255], [18, 0, 0, 255], [20, 0, 0, 255], [22, 0, 0, 255], [24, 0, 0, 255], [26, 0, 0, 255], [28, 0, 0, 255], [30, 0, 0, 255], [32, 0, 0, 255], [34, 0, 0, 255], [36, 0, 0, 255], [38, 0, 0, 255], [40, 0, 0, 255], [42, 0, 0, 255], [44, 0, 0, 255], [46, 0, 0, 255], [48, 0, 0, 255], [50, 0, 0, 255], [52, 0, 0, 255], [54, 0, 0, 255], [56, 0, 0, 255], [58, 0, 0, 255], [60, 0, 0, 255], [62, 0, 0, 255], [64, 0, 0, 255], [66, 0, 0, 255], [68, 0, 0, 255], [70, 0, 0, 255], [72, 0, 0, 255], [74, 0, 0, 255], [76, 0, 0, 255], [78, 0, 0, 255], [80, 0, 0, 255], [82, 0, 0, 255], [84, 0, 0, 255], [86, 0, 0, 255], [88, 0, 0, 255], [90, 0, 0, 255], [92, 0, 0, 255], [94, 0, 0, 255], [96, 0, 0, 255], [98, 0, 0, 255], [100, 0, 0, 255], [102, 0, 0, 255], [104, 0, 0, 255], [106, 0, 0, 255], [108, 0, 0, 255], [110, 0, 0, 255], [112, 0, 0, 255], [114, 0, 0, 255], [116, 0, 0, 255], [118, 0, 0, 255], [120, 0, 0, 255], [122, 0, 0, 255], [124, 0, 0, 255], [126, 0, 0, 255], [128, 0, 0, 255], [130, 0, 0, 255], [132, 0, 0, 255], [134, 0, 0, 255], [136, 0, 0, 255], [138, 0, 0, 255], [140, 0, 0, 255], [142, 0, 0, 255], [144, 0, 0, 255], [146, 0, 0, 255], [148, 0, 0, 255], [150, 0, 0, 255], [152, 0, 0, 255], [154, 0, 0, 255], [156, 0, 0, 255], [158, 0, 0, 255], [160, 0, 0, 255], [162, 0, 0, 255], [164, 0, 0, 255], [166, 0, 0, 255], [168, 0, 0, 255], [170, 0, 0, 255], [172, 0, 0, 255], [174, 0, 0, 255], [176, 0, 0, 255], [178, 0, 0, 255], [180, 0, 0, 255], [182, 0, 0, 255], [184, 0, 0, 255], [186, 0, 0, 255], [188, 0, 0, 255], [190, 0, 0, 255], [192, 0, 0, 255], [194, 0, 0, 255], [196, 0, 0, 255], [198, 0, 0, 255], [200, 0, 0, 255], [202, 0, 0, 255], [204, 0, 0, 255], [206, 0, 0, 255], [208, 0, 0, 255], [210, 0, 0, 255], [212, 0, 0, 255], [214, 0, 0, 255], [216, 0, 0, 255], [218, 0, 0, 255], [220, 0, 0, 255], [222, 0, 0, 255], [224, 0, 0, 255], [226, 0, 0, 255], [228, 0, 0, 255], [230, 0, 0, 255], [232, 0, 0, 255], [234, 0, 0, 255], [236, 0, 0, 255], [238, 0, 0, 255], [240, 0, 0, 255], [242, 0, 0, 255], [244, 0, 0, 255], [246, 0, 0, 255], [248, 0, 0, 255], [250, 0, 0, 255], [252, 0, 0, 255], [254, 0, 0, 255], [255, 0, 0, 255], [255, 2, 0, 255], [255, 4, 0, 255], [255, 6, 0, 255], [255, 8, 0, 255], [255, 10, 0, 255], [255, 12, 0, 255], [255, 14, 0, 255], [255, 16, 0, 255], [255, 18, 0, 255], [255, 20, 0, 255], [255, 22, 0, 255], [255, 24, 0, 255], [255, 26, 0, 255], [255, 28, 0, 255], [255, 30, 0, 255], [255, 32, 0, 255], [255, 34, 0, 255], [255, 36, 0, 255], [255, 38, 0, 255], [255, 40, 0, 255], [255, 42, 0, 255], [255, 44, 0, 255], [255, 46, 0, 255], [255, 48, 0, 255], [255, 50, 0, 255], [255, 52, 0, 255], [255, 54, 0, 255], [255, 56, 0, 255], [255, 58, 0, 255], [255, 60, 0, 255], [255, 62, 0, 255], [255, 64, 0, 255], [255, 66, 0, 255], [255, 68, 0, 255], [255, 70, 0, 255], [255, 72, 0, 255], [255, 74, 0, 255], [255, 76, 0, 255], [255, 78, 0, 255], [255, 80, 0, 255], [255, 82, 0, 255], [255, 84, 0, 255], [255, 86, 0, 255], [255, 88, 0, 255], [255, 90, 0, 255], [255, 92, 0, 255], [255, 94, 0, 255], [255, 96, 0, 255], [255, 98, 0, 255], [255, 100, 0, 255], [255, 102, 0, 255], [255, 104, 0, 255], [255, 106, 0, 255], [255, 108, 0, 255], [255, 110, 0, 255], [255, 112, 0, 255], [255, 114, 0, 255], [255, 116, 0, 255], [255, 118, 0, 255], [255, 120, 0, 255], [255, 122, 0, 255], [255, 124, 0, 255], [255, 126, 0, 255], [255, 128, 4, 255], [255, 130, 8, 255], [255, 132, 12, 255], [255, 134, 16, 255], [255, 136, 20, 255], [255, 138, 24, 255], [255, 140, 28, 255], [255, 142, 32, 255], [255, 144, 36, 255], [255, 146, 40, 255], [255, 148, 44, 255], [255, 150, 48, 255], [255, 152, 52, 255], [255, 154, 56, 255], [255, 156, 60, 255], [255, 158, 64, 255], [255, 160, 68, 255], [255, 162, 72, 255], [255, 164, 76, 255], [255, 166, 80, 255], [255, 168, 84, 255], [255, 170, 88, 255], [255, 172, 92, 255], [255, 174, 96, 255], [255, 176, 100, 255], [255, 178, 104, 255], [255, 180, 108, 255], [255, 182, 112, 255], [255, 184, 116, 255], [255, 186, 120, 255], [255, 188, 124, 255], [255, 190, 128, 255], [255, 192, 132, 255], [255, 194, 136, 255], [255, 196, 140, 255], [255, 198, 144, 255], [255, 200, 148, 255], [255, 202, 152, 255], [255, 204, 156, 255], [255, 206, 160, 255], [255, 208, 164, 255], [255, 210, 168, 255], [255, 212, 172, 255], [255, 214, 176, 255], [255, 216, 180, 255], [255, 218, 184, 255], [255, 220, 188, 255], [255, 222, 192, 255], [255, 224, 196, 255], [255, 226, 200, 255], [255, 228, 204, 255], [255, 230, 208, 255], [255, 232, 212, 255], [255, 234, 216, 255], [255, 236, 220, 255], [255, 238, 224, 255], [255, 240, 228, 255], [255, 242, 232, 255], [255, 244, 236, 255], [255, 246, 240, 255], [255, 248, 244, 255], [255, 250, 248, 255], [255, 252, 252, 255], [255, 255, 255, 255]] + }, + pet: { + name: 'PET', + numColors: 256, + colors: [[0, 0, 0, 255], [0, 2, 1, 255], [0, 4, 3, 255], [0, 6, 5, 255], [0, 8, 7, 255], [0, 10, 9, 255], [0, 12, 11, 255], [0, 14, 13, 255], [0, 16, 15, 255], [0, 18, 17, 255], [0, 20, 19, 255], [0, 22, 21, 255], [0, 24, 23, 255], [0, 26, 25, 255], [0, 28, 27, 255], [0, 30, 29, 255], [0, 32, 31, 255], [0, 34, 33, 255], [0, 36, 35, 255], [0, 38, 37, 255], [0, 40, 39, 255], [0, 42, 41, 255], [0, 44, 43, 255], [0, 46, 45, 255], [0, 48, 47, 255], [0, 50, 49, 255], [0, 52, 51, 255], [0, 54, 53, 255], [0, 56, 55, 255], [0, 58, 57, 255], [0, 60, 59, 255], [0, 62, 61, 255], [0, 65, 63, 255], [0, 67, 65, 255], [0, 69, 67, 255], [0, 71, 69, 255], [0, 73, 71, 255], [0, 75, 73, 255], [0, 77, 75, 255], [0, 79, 77, 255], [0, 81, 79, 255], [0, 83, 81, 255], [0, 85, 83, 255], [0, 87, 85, 255], [0, 89, 87, 255], [0, 91, 89, 255], [0, 93, 91, 255], [0, 95, 93, 255], [0, 97, 95, 255], [0, 99, 97, 255], [0, 101, 99, 255], [0, 103, 101, 255], [0, 105, 103, 255], [0, 107, 105, 255], [0, 109, 107, 255], [0, 111, 109, 255], [0, 113, 111, 255], [0, 115, 113, 255], [0, 117, 115, 255], [0, 119, 117, 255], [0, 121, 119, 255], [0, 123, 121, 255], [0, 125, 123, 255], [0, 128, 125, 255], [1, 126, 127, 255], [3, 124, 129, 255], [5, 122, 131, 255], [7, 120, 133, 255], [9, 118, 135, 255], [11, 116, 137, 255], [13, 114, 139, 255], [15, 112, 141, 255], [17, 110, 143, 255], [19, 108, 145, 255], [21, 106, 147, 255], [23, 104, 149, 255], [25, 102, 151, 255], [27, 100, 153, 255], [29, 98, 155, 255], [31, 96, 157, 255], [33, 94, 159, 255], [35, 92, 161, 255], [37, 90, 163, 255], [39, 88, 165, 255], [41, 86, 167, 255], [43, 84, 169, 255], [45, 82, 171, 255], [47, 80, 173, 255], [49, 78, 175, 255], [51, 76, 177, 255], [53, 74, 179, 255], [55, 72, 181, 255], [57, 70, 183, 255], [59, 68, 185, 255], [61, 66, 187, 255], [63, 64, 189, 255], [65, 63, 191, 255], [67, 61, 193, 255], [69, 59, 195, 255], [71, 57, 197, 255], [73, 55, 199, 255], [75, 53, 201, 255], [77, 51, 203, 255], [79, 49, 205, 255], [81, 47, 207, 255], [83, 45, 209, 255], [85, 43, 211, 255], [86, 41, 213, 255], [88, 39, 215, 255], [90, 37, 217, 255], [92, 35, 219, 255], [94, 33, 221, 255], [96, 31, 223, 255], [98, 29, 225, 255], [100, 27, 227, 255], [102, 25, 229, 255], [104, 23, 231, 255], [106, 21, 233, 255], [108, 19, 235, 255], [110, 17, 237, 255], [112, 15, 239, 255], [114, 13, 241, 255], [116, 11, 243, 255], [118, 9, 245, 255], [120, 7, 247, 255], [122, 5, 249, 255], [124, 3, 251, 255], [126, 1, 253, 255], [128, 0, 255, 255], [130, 2, 252, 255], [132, 4, 248, 255], [134, 6, 244, 255], [136, 8, 240, 255], [138, 10, 236, 255], [140, 12, 232, 255], [142, 14, 228, 255], [144, 16, 224, 255], [146, 18, 220, 255], [148, 20, 216, 255], [150, 22, 212, 255], [152, 24, 208, 255], [154, 26, 204, 255], [156, 28, 200, 255], [158, 30, 196, 255], [160, 32, 192, 255], [162, 34, 188, 255], [164, 36, 184, 255], [166, 38, 180, 255], [168, 40, 176, 255], [170, 42, 172, 255], [171, 44, 168, 255], [173, 46, 164, 255], [175, 48, 160, 255], [177, 50, 156, 255], [179, 52, 152, 255], [181, 54, 148, 255], [183, 56, 144, 255], [185, 58, 140, 255], [187, 60, 136, 255], [189, 62, 132, 255], [191, 64, 128, 255], [193, 66, 124, 255], [195, 68, 120, 255], [197, 70, 116, 255], [199, 72, 112, 255], [201, 74, 108, 255], [203, 76, 104, 255], [205, 78, 100, 255], [207, 80, 96, 255], [209, 82, 92, 255], [211, 84, 88, 255], [213, 86, 84, 255], [215, 88, 80, 255], [217, 90, 76, 255], [219, 92, 72, 255], [221, 94, 68, 255], [223, 96, 64, 255], [225, 98, 60, 255], [227, 100, 56, 255], [229, 102, 52, 255], [231, 104, 48, 255], [233, 106, 44, 255], [235, 108, 40, 255], [237, 110, 36, 255], [239, 112, 32, 255], [241, 114, 28, 255], [243, 116, 24, 255], [245, 118, 20, 255], [247, 120, 16, 255], [249, 122, 12, 255], [251, 124, 8, 255], [253, 126, 4, 255], [255, 128, 0, 255], [255, 130, 4, 255], [255, 132, 8, 255], [255, 134, 12, 255], [255, 136, 16, 255], [255, 138, 20, 255], [255, 140, 24, 255], [255, 142, 28, 255], [255, 144, 32, 255], [255, 146, 36, 255], [255, 148, 40, 255], [255, 150, 44, 255], [255, 152, 48, 255], [255, 154, 52, 255], [255, 156, 56, 255], [255, 158, 60, 255], [255, 160, 64, 255], [255, 162, 68, 255], [255, 164, 72, 255], [255, 166, 76, 255], [255, 168, 80, 255], [255, 170, 85, 255], [255, 172, 89, 255], [255, 174, 93, 255], [255, 176, 97, 255], [255, 178, 101, 255], [255, 180, 105, 255], [255, 182, 109, 255], [255, 184, 113, 255], [255, 186, 117, 255], [255, 188, 121, 255], [255, 190, 125, 255], [255, 192, 129, 255], [255, 194, 133, 255], [255, 196, 137, 255], [255, 198, 141, 255], [255, 200, 145, 255], [255, 202, 149, 255], [255, 204, 153, 255], [255, 206, 157, 255], [255, 208, 161, 255], [255, 210, 165, 255], [255, 212, 170, 255], [255, 214, 174, 255], [255, 216, 178, 255], [255, 218, 182, 255], [255, 220, 186, 255], [255, 222, 190, 255], [255, 224, 194, 255], [255, 226, 198, 255], [255, 228, 202, 255], [255, 230, 206, 255], [255, 232, 210, 255], [255, 234, 214, 255], [255, 236, 218, 255], [255, 238, 222, 255], [255, 240, 226, 255], [255, 242, 230, 255], [255, 244, 234, 255], [255, 246, 238, 255], [255, 248, 242, 255], [255, 250, 246, 255], [255, 252, 250, 255], [255, 255, 255, 255]] + }, + hotMetalBlue: { + name: 'Hot Metal Blue', + numColors: 256, + colors: [[0, 0, 0, 255], [0, 0, 2, 255], [0, 0, 4, 255], [0, 0, 6, 255], [0, 0, 8, 255], [0, 0, 10, 255], [0, 0, 12, 255], [0, 0, 14, 255], [0, 0, 16, 255], [0, 0, 17, 255], [0, 0, 19, 255], [0, 0, 21, 255], [0, 0, 23, 255], [0, 0, 25, 255], [0, 0, 27, 255], [0, 0, 29, 255], [0, 0, 31, 255], [0, 0, 33, 255], [0, 0, 35, 255], [0, 0, 37, 255], [0, 0, 39, 255], [0, 0, 41, 255], [0, 0, 43, 255], [0, 0, 45, 255], [0, 0, 47, 255], [0, 0, 49, 255], [0, 0, 51, 255], [0, 0, 53, 255], [0, 0, 55, 255], [0, 0, 57, 255], [0, 0, 59, 255], [0, 0, 61, 255], [0, 0, 63, 255], [0, 0, 65, 255], [0, 0, 67, 255], [0, 0, 69, 255], [0, 0, 71, 255], [0, 0, 73, 255], [0, 0, 75, 255], [0, 0, 77, 255], [0, 0, 79, 255], [0, 0, 81, 255], [0, 0, 83, 255], [0, 0, 84, 255], [0, 0, 86, 255], [0, 0, 88, 255], [0, 0, 90, 255], [0, 0, 92, 255], [0, 0, 94, 255], [0, 0, 96, 255], [0, 0, 98, 255], [0, 0, 100, 255], [0, 0, 102, 255], [0, 0, 104, 255], [0, 0, 106, 255], [0, 0, 108, 255], [0, 0, 110, 255], [0, 0, 112, 255], [0, 0, 114, 255], [0, 0, 116, 255], [0, 0, 117, 255], [0, 0, 119, 255], [0, 0, 121, 255], [0, 0, 123, 255], [0, 0, 125, 255], [0, 0, 127, 255], [0, 0, 129, 255], [0, 0, 131, 255], [0, 0, 133, 255], [0, 0, 135, 255], [0, 0, 137, 255], [0, 0, 139, 255], [0, 0, 141, 255], [0, 0, 143, 255], [0, 0, 145, 255], [0, 0, 147, 255], [0, 0, 149, 255], [0, 0, 151, 255], [0, 0, 153, 255], [0, 0, 155, 255], [0, 0, 157, 255], [0, 0, 159, 255], [0, 0, 161, 255], [0, 0, 163, 255], [0, 0, 165, 255], [0, 0, 167, 255], [3, 0, 169, 255], [6, 0, 171, 255], [9, 0, 173, 255], [12, 0, 175, 255], [15, 0, 177, 255], [18, 0, 179, 255], [21, 0, 181, 255], [24, 0, 183, 255], [26, 0, 184, 255], [29, 0, 186, 255], [32, 0, 188, 255], [35, 0, 190, 255], [38, 0, 192, 255], [41, 0, 194, 255], [44, 0, 196, 255], [47, 0, 198, 255], [50, 0, 200, 255], [52, 0, 197, 255], [55, 0, 194, 255], [57, 0, 191, 255], [59, 0, 188, 255], [62, 0, 185, 255], [64, 0, 182, 255], [66, 0, 179, 255], [69, 0, 176, 255], [71, 0, 174, 255], [74, 0, 171, 255], [76, 0, 168, 255], [78, 0, 165, 255], [81, 0, 162, 255], [83, 0, 159, 255], [85, 0, 156, 255], [88, 0, 153, 255], [90, 0, 150, 255], [93, 2, 144, 255], [96, 4, 138, 255], [99, 6, 132, 255], [102, 8, 126, 255], [105, 9, 121, 255], [108, 11, 115, 255], [111, 13, 109, 255], [114, 15, 103, 255], [116, 17, 97, 255], [119, 19, 91, 255], [122, 21, 85, 255], [125, 23, 79, 255], [128, 24, 74, 255], [131, 26, 68, 255], [134, 28, 62, 255], [137, 30, 56, 255], [140, 32, 50, 255], [143, 34, 47, 255], [146, 36, 44, 255], [149, 38, 41, 255], [152, 40, 38, 255], [155, 41, 35, 255], [158, 43, 32, 255], [161, 45, 29, 255], [164, 47, 26, 255], [166, 49, 24, 255], [169, 51, 21, 255], [172, 53, 18, 255], [175, 55, 15, 255], [178, 56, 12, 255], [181, 58, 9, 255], [184, 60, 6, 255], [187, 62, 3, 255], [190, 64, 0, 255], [194, 66, 0, 255], [198, 68, 0, 255], [201, 70, 0, 255], [205, 72, 0, 255], [209, 73, 0, 255], [213, 75, 0, 255], [217, 77, 0, 255], [221, 79, 0, 255], [224, 81, 0, 255], [228, 83, 0, 255], [232, 85, 0, 255], [236, 87, 0, 255], [240, 88, 0, 255], [244, 90, 0, 255], [247, 92, 0, 255], [251, 94, 0, 255], [255, 96, 0, 255], [255, 98, 3, 255], [255, 100, 6, 255], [255, 102, 9, 255], [255, 104, 12, 255], [255, 105, 15, 255], [255, 107, 18, 255], [255, 109, 21, 255], [255, 111, 24, 255], [255, 113, 26, 255], [255, 115, 29, 255], [255, 117, 32, 255], [255, 119, 35, 255], [255, 120, 38, 255], [255, 122, 41, 255], [255, 124, 44, 255], [255, 126, 47, 255], [255, 128, 50, 255], [255, 130, 53, 255], [255, 132, 56, 255], [255, 134, 59, 255], [255, 136, 62, 255], [255, 137, 65, 255], [255, 139, 68, 255], [255, 141, 71, 255], [255, 143, 74, 255], [255, 145, 76, 255], [255, 147, 79, 255], [255, 149, 82, 255], [255, 151, 85, 255], [255, 152, 88, 255], [255, 154, 91, 255], [255, 156, 94, 255], [255, 158, 97, 255], [255, 160, 100, 255], [255, 162, 103, 255], [255, 164, 106, 255], [255, 166, 109, 255], [255, 168, 112, 255], [255, 169, 115, 255], [255, 171, 118, 255], [255, 173, 121, 255], [255, 175, 124, 255], [255, 177, 126, 255], [255, 179, 129, 255], [255, 181, 132, 255], [255, 183, 135, 255], [255, 184, 138, 255], [255, 186, 141, 255], [255, 188, 144, 255], [255, 190, 147, 255], [255, 192, 150, 255], [255, 194, 153, 255], [255, 196, 156, 255], [255, 198, 159, 255], [255, 200, 162, 255], [255, 201, 165, 255], [255, 203, 168, 255], [255, 205, 171, 255], [255, 207, 174, 255], [255, 209, 176, 255], [255, 211, 179, 255], [255, 213, 182, 255], [255, 215, 185, 255], [255, 216, 188, 255], [255, 218, 191, 255], [255, 220, 194, 255], [255, 222, 197, 255], [255, 224, 200, 255], [255, 226, 203, 255], [255, 228, 206, 255], [255, 229, 210, 255], [255, 231, 213, 255], [255, 233, 216, 255], [255, 235, 219, 255], [255, 237, 223, 255], [255, 239, 226, 255], [255, 240, 229, 255], [255, 242, 232, 255], [255, 244, 236, 255], [255, 246, 239, 255], [255, 248, 242, 255], [255, 250, 245, 255], [255, 251, 249, 255], [255, 253, 252, 255], [255, 255, 255, 255]] + }, + pet20Step: { + name: 'PET 20 Step', + numColors: 256, + colors: [[0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [0, 0, 0, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [96, 0, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 80, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [48, 48, 112, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [80, 80, 128, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [96, 96, 176, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [112, 112, 192, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [128, 128, 224, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 96, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [48, 144, 48, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [80, 192, 80, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [64, 224, 64, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [224, 224, 80, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 208, 96, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 176, 64, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [208, 144, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [192, 96, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [176, 48, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 0, 0, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255], [255, 255, 255, 255]] + }, + gray: { + name: 'Gray', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [1, 1, 1]], + green: [[0, 0, 0], [1, 1, 1]], + blue: [[0, 0, 0], [1, 1, 1]] + } + }, + jet: { + name: 'Jet', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [0.35, 0, 0], [0.66, 1, 1], [0.89, 1, 1], [1, 0.5, 0.5]], + green: [[0, 0, 0], [0.125, 0, 0], [0.375, 1, 1], [0.64, 1, 1], [0.91, 0, 0], [1, 0, 0]], + blue: [[0, 0.5, 0.5], [0.11, 1, 1], [0.34, 1, 1], [0.65, 0, 0], [1, 0, 0]] + } + }, + hsv: { + name: 'HSV', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 1, 1], [0.158730, 1, 1], [0.174603, 0.968750, 0.968750], [0.333333, 0.031250, 0.031250], [0.349206, 0, 0], [0.666667, 0, 0], [0.682540, 0.031250, 0.031250], [0.841270, 0.968750, 0.968750], [0.857143, 1, 1], [1, 1, 1]], + green: [[0, 0, 0], [0.158730, 0.937500, 0.937500], [0.174603, 1, 1], [0.507937, 1, 1], [0.666667, 0.062500, 0.062500], [0.682540, 0, 0], [1, 0, 0]], + blue: [[0, 0, 0], [0.333333, 0, 0], [0.349206, 0.062500, 0.062500], [0.507937, 1, 1], [0.841270, 1, 1], [0.857143, 0.937500, 0.937500], [1, 0.09375, 0.09375]] + } + }, + hot: { + name: 'Hot', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0.0416, 0.0416], [0.365079, 1, 1], [1, 1, 1]], + green: [[0, 0, 0], [0.365079, 0, 0], [0.746032, 1, 1], [1, 1, 1]], + blue: [[0, 0, 0], [0.746032, 0, 0], [1, 1, 1]] + } + }, + cool: { + name: 'Cool', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [1, 1, 1]], + green: [[0, 1, 1], [1, 0, 0]], + blue: [[0, 1, 1], [1, 1, 1]] + } + }, + spring: { + name: 'Spring', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 1, 1], [1, 1, 1]], + green: [[0, 0, 0], [1, 1, 1]], + blue: [[0, 1, 1], [1, 0, 0]] + } + }, + summer: { + name: 'Summer', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [1, 1, 1]], + green: [[0, 0.5, 0.5], [1, 1, 1]], + blue: [[0, 0.4, 0.4], [1, 0.4, 0.4]] + } + }, + autumn: { + name: 'Autumn', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 1, 1], [1, 1, 1]], + green: [[0, 0, 0], [1, 1, 1]], + blue: [[0, 0, 0], [1, 0, 0]] + } + }, + winter: { + name: 'Winter', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [1, 0, 0]], + green: [[0, 0, 0], [1, 1, 1]], + blue: [[0, 1, 1], [1, 0.5, 0.5]] + } + }, + bone: { + name: 'Bone', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [0.746032, 0.652778, 0.652778], [1, 1, 1]], + green: [[0, 0, 0], [0.365079, 0.319444, 0.319444], [0.746032, 0.777778, 0.777778], [1, 1, 1]], + blue: [[0, 0, 0], [0.365079, 0.444444, 0.444444], [1, 1, 1]] + } + }, + copper: { + name: 'Copper', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [0.809524, 1, 1], [1, 1, 1]], + green: [[0, 0, 0], [1, 0.7812, 0.7812]], + blue: [[0, 0, 0], [1, 0.4975, 0.4975]] + } + }, + spectral: { + name: 'Spectral', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0, 0], [0.05, 0.4667, 0.4667], [0.10, 0.5333, 0.5333], [0.15, 0, 0], [0.20, 0, 0], [0.25, 0, 0], [0.30, 0, 0], [0.35, 0, 0], [0.40, 0, 0], [0.45, 0, 0], [0.50, 0, 0], [0.55, 0, 0], [0.60, 0, 0], [0.65, 0.7333, 0.7333], [0.70, 0.9333, 0.9333], [0.75, 1, 1], [0.80, 1, 1], [0.85, 1, 1], [0.90, 0.8667, 0.8667], [0.95, 0.80, 0.80], [1, 0.80, 0.80]], + green: [[0, 0, 0], [0.05, 0, 0], [0.10, 0, 0], [0.15, 0, 0], [0.20, 0, 0], [0.25, 0.4667, 0.4667], [0.30, 0.6000, 0.6000], [0.35, 0.6667, 0.6667], [0.40, 0.6667, 0.6667], [0.45, 0.6000, 0.6000], [0.50, 0.7333, 0.7333], [0.55, 0.8667, 0.8667], [0.60, 1, 1], [0.65, 1, 1], [0.70, 0.9333, 0.9333], [0.75, 0.8000, 0.8000], [0.80, 0.6000, 0.6000], [0.85, 0, 0], [0.90, 0, 0], [0.95, 0, 0], [1, 0.80, 0.80]], + blue: [[0, 0, 0], [0.05, 0.5333, 0.5333], [0.10, 0.6000, 0.6000], [0.15, 0.6667, 0.6667], [0.20, 0.8667, 0.8667], [0.25, 0.8667, 0.8667], [0.30, 0.8667, 0.8667], [0.35, 0.6667, 0.6667], [0.40, 0.5333, 0.5333], [0.45, 0, 0], [0.5, 0, 0], [0.55, 0, 0], [0.60, 0, 0], [0.65, 0, 0], [0.70, 0, 0], [0.75, 0, 0], [0.80, 0, 0], [0.85, 0, 0], [0.90, 0, 0], [0.95, 0, 0], [1, 0.80, 0.80]] + } + }, + coolwarm: { + name: 'CoolWarm', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0.2298057, 0.2298057], [0.03125, 0.26623388, 0.26623388], [0.0625, 0.30386891, 0.30386891], [0.09375, 0.342804478, 0.342804478], [0.125, 0.38301334, 0.38301334], [0.15625, 0.424369608, 0.424369608], [0.1875, 0.46666708, 0.46666708], [0.21875, 0.509635204, 0.509635204], [0.25, 0.552953156, 0.552953156], [0.28125, 0.596262162, 0.596262162], [0.3125, 0.639176211, 0.639176211], [0.34375, 0.681291281, 0.681291281], [0.375, 0.722193294, 0.722193294], [0.40625, 0.761464949, 0.761464949], [0.4375, 0.798691636, 0.798691636], [0.46875, 0.833466556, 0.833466556], [0.5, 0.865395197, 0.865395197], [0.53125, 0.897787179, 0.897787179], [0.5625, 0.924127593, 0.924127593], [0.59375, 0.944468518, 0.944468518], [0.625, 0.958852946, 0.958852946], [0.65625, 0.96732803, 0.96732803], [0.6875, 0.969954137, 0.969954137], [0.71875, 0.966811177, 0.966811177], [0.75, 0.958003065, 0.958003065], [0.78125, 0.943660866, 0.943660866], [0.8125, 0.923944917, 0.923944917], [0.84375, 0.89904617, 0.89904617], [0.875, 0.869186849, 0.869186849], [0.90625, 0.834620542, 0.834620542], [0.9375, 0.795631745, 0.795631745], [0.96875, 0.752534934, 0.752534934], [1, 0.705673158, 0.705673158]], + green: [[0, 0.298717966, 0.298717966], [0.03125, 0.353094838, 0.353094838], [0.0625, 0.406535296, 0.406535296], [0.09375, 0.458757618, 0.458757618], [0.125, 0.50941904, 0.50941904], [0.15625, 0.558148092, 0.558148092], [0.1875, 0.604562568, 0.604562568], [0.21875, 0.648280772, 0.648280772], [0.25, 0.688929332, 0.688929332], [0.28125, 0.726149107, 0.726149107], [0.3125, 0.759599947, 0.759599947], [0.34375, 0.788964712, 0.788964712], [0.375, 0.813952739, 0.813952739], [0.40625, 0.834302879, 0.834302879], [0.4375, 0.849786142, 0.849786142], [0.46875, 0.860207984, 0.860207984], [0.5, 0.86541021, 0.86541021], [0.53125, 0.848937047, 0.848937047], [0.5625, 0.827384882, 0.827384882], [0.59375, 0.800927443, 0.800927443], [0.625, 0.769767752, 0.769767752], [0.65625, 0.734132809, 0.734132809], [0.6875, 0.694266682, 0.694266682], [0.71875, 0.650421156, 0.650421156], [0.75, 0.602842431, 0.602842431], [0.78125, 0.551750968, 0.551750968], [0.8125, 0.49730856, 0.49730856], [0.84375, 0.439559467, 0.439559467], [0.875, 0.378313092, 0.378313092], [0.90625, 0.312874446, 0.312874446], [0.9375, 0.24128379, 0.24128379], [0.96875, 0.157246067, 0.157246067], [1, 0.01555616, 0.01555616]], + blue: [[0, 0.753683153, 0.753683153], [0.03125, 0.801466763, 0.801466763], [0.0625, 0.84495867, 0.84495867], [0.09375, 0.883725899, 0.883725899], [0.125, 0.917387822, 0.917387822], [0.15625, 0.945619588, 0.945619588], [0.1875, 0.968154911, 0.968154911], [0.21875, 0.98478814, 0.98478814], [0.25, 0.995375608, 0.995375608], [0.28125, 0.999836203, 0.999836203], [0.3125, 0.998151185, 0.998151185], [0.34375, 0.990363227, 0.990363227], [0.375, 0.976574709, 0.976574709], [0.40625, 0.956945269, 0.956945269], [0.4375, 0.931688648, 0.931688648], [0.46875, 0.901068838, 0.901068838], [0.5, 0.865395561, 0.865395561], [0.53125, 0.820880546, 0.820880546], [0.5625, 0.774508472, 0.774508472], [0.59375, 0.726736146, 0.726736146], [0.625, 0.678007945, 0.678007945], [0.65625, 0.628751763, 0.628751763], [0.6875, 0.579375448, 0.579375448], [0.71875, 0.530263762, 0.530263762], [0.75, 0.481775914, 0.481775914], [0.78125, 0.434243684, 0.434243684], [0.8125, 0.387970225, 0.387970225], [0.84375, 0.343229596, 0.343229596], [0.875, 0.300267182, 0.300267182], [0.90625, 0.259301199, 0.259301199], [0.9375, 0.220525627, 0.220525627], [0.96875, 0.184115123, 0.184115123], [1, 0.150232812, 0.150232812]] + } + }, + blues: { + name: 'Blues', + numColors: 256, + gamma: 1, + segmentedData: { + red: [[0, 0.9686274528503418, 0.9686274528503418], [0.125, 0.87058824300765991, 0.87058824300765991], [0.25, 0.7764706015586853, 0.7764706015586853], [0.375, 0.61960786581039429, 0.61960786581039429], [0.5, 0.41960784792900085, 0.41960784792900085], [0.625, 0.25882354378700256, 0.25882354378700256], [0.75, 0.12941177189350128, 0.12941177189350128], [0.875, 0.031372550874948502, 0.031372550874948502], [1, 0.031372550874948502, 0.031372550874948502]], + green: [[0, 0.9843137264251709, 0.9843137264251709], [0.125, 0.92156863212585449, 0.92156863212585449], [0.25, 0.85882353782653809, 0.85882353782653809], [0.375, 0.7921568751335144, 0.7921568751335144], [0.5, 0.68235296010971069, 0.68235296010971069], [0.625, 0.57254904508590698, 0.57254904508590698], [0.75, 0.44313725829124451, 0.44313725829124451], [0.875, 0.31764706969261169, 0.31764706969261169], [1, 0.18823529779911041, 0.18823529779911041]], + blue: [[0, 1, 1], [0.125, 0.9686274528503418, 0.9686274528503418], [0.25, 0.93725490570068359, 0.93725490570068359], [0.375, 0.88235294818878174, 0.88235294818878174], [0.5, 0.83921569585800171, 0.83921569585800171], [0.625, 0.7764706015586853, 0.7764706015586853], [0.75, 0.70980393886566162, 0.70980393886566162], [0.875, 0.61176472902297974, 0.61176472902297974], [1, 0.41960784792900085, 0.41960784792900085]] + } + } +}; +/** + * Generate linearly spaced vectors +* http://cens.ioc.ee/local/man/matlab/techdoc/ref/linspace.html + * @param {Number} a A number representing the first vector + * @param {Number} b A number representing the second vector + * @param {Number} n The number of linear spaced vectors to generate + * @returns {Array} An array of points representing linear spaced vectors. + * @memberof Colors + */ + +function linspace(a, b, n) { + n = n === null ? 100 : n; + var increment = (b - a) / (n - 1); + var vector = []; + + while (n-- > 0) { + vector.push(a); + a += increment; + } // Make sure the last item will always be "b" because most of the + // Time we'll get numbers like 1.0000000000000002 instead of 1. + + + vector[vector.length - 1] = b; + return vector; +} +/** + * Returns the "rank/index" of the element in a sorted array if found or the highest index if not. Uses (binary search) + * @param {Array} array A sorted array to search in + * @param {any} elem the element in the array to search for + * @returns {number} The rank/index of the element in the given array + * @memberof Colors + */ + + +function getRank(array, elem) { + var left = 0; + var right = array.length - 1; + + while (left <= right) { + var mid = left + Math.floor((right - left) / 2); + var midElem = array[mid]; + + if (midElem === elem) { + return mid; + } else if (elem < midElem) { + right = mid - 1; + } else { + left = mid + 1; + } + } + + return left; +} +/** + * Find the indices into a sorted array a such that, if the corresponding elements + * In v were inserted before the indices, the order of a would be preserved. + * http://lagrange.univ-lyon1.fr/docs/numpy/1.11.0/reference/generated/numpy.searchsorted.html + * @param {Array} inputArray The array where the values will be inserted + * @param {Array} values An array of the values to be inserted into the inputArray + * @returns {Array} The indices where elements should be inserted to maintain order. + * @memberof Colors + */ + + +function searchSorted(inputArray, values) { + var i; + var indexes = []; + var len = values.length; + inputArray.sort(function (a, b) { + return a - b; + }); + + for (i = 0; i < len; i++) { + indexes[i] = getRank(inputArray, values[i]); + } + + return indexes; +} +/** + * Creates an *N* -element 1-d lookup table + * @param {Number} N The number of elements in the result lookup table + * @param {Array} data represented by a list of x,y0,y1 mapping correspondences. Each element in this + * List represents how a value between 0 and 1 (inclusive) represented by x is mapped to + * A corresponding value between 0 and 1 (inclusive). The two values of y are to allow for + * Discontinuous mapping functions (say as might be found in a sawtooth) where y0 represents + * The value of y for values of x <= to that given, and y1 is the value to be used for x > + * Than that given). The list must start with x=0, end with x=1, and all values of x must be + * In increasing order. Values between the given mapping points are determined by simple linear + * Interpolation. + * @param {any} gamma value denotes a "gamma curve" value which adjusts the brightness + * at the bottom and top of the map. + * @returns {any[]} an array "result" where result[x*(N-1)] gives the closest value for + * Values of x between 0 and 1. + * @memberof Colors + */ + + +function makeMappingArray(N, data, gamma) { + var i; + var x = []; + var y0 = []; + var y1 = []; + var lut = []; + gamma = gamma === null ? 1 : gamma; + + for (i = 0; i < data.length; i++) { + var element = data[i]; + x.push((N - 1) * element[0]); + y0.push(element[1]); + y1.push(element[1]); + } + + var xLinSpace = linspace(0, 1, N); + + for (i = 0; i < N; i++) { + xLinSpace[i] = (N - 1) * Math.pow(xLinSpace[i], gamma); + } + + var xLinSpaceIndexes = searchSorted(x, xLinSpace); + + for (i = 1; i < N - 1; i++) { + var index = xLinSpaceIndexes[i]; + var colorPercent = (xLinSpace[i] - x[index - 1]) / (x[index] - x[index - 1]); + var colorDelta = y0[index] - y1[index - 1]; + lut[i] = colorPercent * colorDelta + y1[index - 1]; + } + + lut[0] = y1[0]; + lut[N - 1] = y0[data.length - 1]; + return lut; +} +/** + * Creates a Colormap based on lookup tables using linear segments. + * @param {{red:Array, green:Array, blue:Array}} segmentedData An object with a red, green and blue entries. + * Each entry should be a list of x, y0, y1 tuples, forming rows in a table. + * @param {Number} N The number of elements in the result Colormap + * @param {any} gamma value denotes a "gamma curve" value which adjusts the brightness + * at the bottom and top of the Colormap. + * @returns {Array} The created Colormap object + * @description The lookup table is generated using linear interpolation for each + * Primary color, with the 0-1 domain divided into any number of + * Segments. + * https://github.com/stefanv/matplotlib/blob/3f1a23755e86fef97d51e30e106195f34425c9e3/lib/matplotlib/colors.py#L663 + * @memberof Colors + */ + + +function createLinearSegmentedColormap(segmentedData, N, gamma) { + var i; + var lut = []; + N = N === null ? 256 : N; + gamma = gamma === null ? 1 : gamma; + var redLut = makeMappingArray(N, segmentedData.red, gamma); + var greenLut = makeMappingArray(N, segmentedData.green, gamma); + var blueLut = makeMappingArray(N, segmentedData.blue, gamma); + + for (i = 0; i < N; i++) { + var red = Math.round(redLut[i] * 255); + var green = Math.round(greenLut[i] * 255); + var blue = Math.round(blueLut[i] * 255); + var rgba = [red, green, blue, 255]; + lut.push(rgba); + } + + return lut; +} +/** + * Return all available colormaps (id and name) + * @returns {Array<{id,key}>} An array of colormaps with an object containing the "id" and display "name" + * @memberof Colors + */ + + +function getColormapsList() { + var colormaps = []; + var keys = Object.keys(colormapsData); + keys.forEach(function (key) { + if (colormapsData.hasOwnProperty(key)) { + var colormap = colormapsData[key]; + colormaps.push({ + id: key, + name: colormap.name + }); + } + }); + colormaps.sort(function (a, b) { + var aName = a.name.toLowerCase(); + var bName = b.name.toLowerCase(); + + if (aName === bName) { + return 0; + } + + return aName < bName ? -1 : 1; + }); + return colormaps; +} +/** + * Return a colorMap object with the provided id and colormapData + * if the Id matches existent colorMap objects (check colormapsData) the colormapData is ignored. + * if the colormapData is not empty, the colorMap will be added to the colormapsData list. Otherwise, an empty colorMap object is returned. + * @param {string} id The ID of the colormap + * @param {Object} colormapData - An object that can contain a name, numColors, gama, segmentedData and/or colors + * @returns {*} The Colormap Object + * @memberof Colors +*/ + +function getColormap(id, colormapData) { + var colormap = colormapsData[id]; + + if (!colormap) { + colormap = colormapsData[id] = colormapData || { + name: '', + colors: [] + }; + } + + if (!colormap.colors && colormap.segmentedData) { + colormap.colors = createLinearSegmentedColormap(colormap.segmentedData, colormap.numColors, colormap.gamma); + } + + return { + getId: function getId() { + return id; + }, + getColorSchemeName: function getColorSchemeName() { + return colormap.name; + }, + setColorSchemeName: function setColorSchemeName(name) { + colormap.name = name; + }, + getNumberOfColors: function getNumberOfColors() { + return colormap.colors.length; + }, + setNumberOfColors: function setNumberOfColors(numColors) { + while (colormap.colors.length < numColors) { + colormap.colors.push(COLOR_TRANSPARENT); + } + + colormap.colors.length = numColors; + }, + getColor: function getColor(index) { + if (this.isValidIndex(index)) { + return colormap.colors[index]; + } + + return COLOR_TRANSPARENT; + }, + getColorRepeating: function getColorRepeating(index) { + var numColors = colormap.colors.length; + index = numColors ? index % numColors : 0; + return this.getColor(index); + }, + setColor: function setColor(index, rgba) { + if (this.isValidIndex(index)) { + colormap.colors[index] = rgba; + } + }, + addColor: function addColor(rgba) { + colormap.colors.push(rgba); + }, + insertColor: function insertColor(index, rgba) { + if (this.isValidIndex(index)) { + colormap.colors.splice(index, 1, rgba); + } + }, + removeColor: function removeColor(index) { + if (this.isValidIndex(index)) { + colormap.colors.splice(index, 1); + } + }, + clearColors: function clearColors() { + colormap.colors = []; + }, + buildLookupTable: function buildLookupTable(lut) { + if (!lut) { + return; + } + + var numColors = colormap.colors.length; + lut.setNumberOfTableValues(numColors); + + for (var i = 0; i < numColors; i++) { + lut.setTableValue(i, colormap.colors[i]); + } + }, + createLookupTable: function createLookupTable() { + var lut = new _lookupTable_js__WEBPACK_IMPORTED_MODULE_0__["default"](); + this.buildLookupTable(lut); + return lut; + }, + isValidIndex: function isValidIndex(index) { + return index >= 0 && index < colormap.colors.length; + } + }; +} + +/***/ }), + +/***/ "./colors/index.js": +/*!*************************!*\ + !*** ./colors/index.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _colormap_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./colormap.js */ "./colors/colormap.js"); +/* harmony import */ var _lookupTable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lookupTable.js */ "./colors/lookupTable.js"); + + +/* harmony default export */ __webpack_exports__["default"] = ({ + getColormap: _colormap_js__WEBPACK_IMPORTED_MODULE_0__["getColormap"], + getColormapsList: _colormap_js__WEBPACK_IMPORTED_MODULE_0__["getColormapsList"], + LookupTable: _lookupTable_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}); + +/***/ }), + +/***/ "./colors/lookupTable.js": +/*!*******************************!*\ + !*** ./colors/lookupTable.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +// This code was created based on vtkLookupTable +// http://www.vtk.org/doc/release/5.0/html/a01697.html +// https://github.com/Kitware/VTK/blob/master/Common/Core/vtkLookupTable.cxx +var BELOW_RANGE_COLOR_INDEX = 0; +var ABOVE_RANGE_COLOR_INDEX = 1; +var NAN_COLOR_INDEX = 2; +/** + * Converts an HSV (Hue, Saturation, Value) color to RGB (Red, Green, Blue) color value + * @param {Number} hue A number representing the hue color value + * @param {any} sat A number representing the saturation color value + * @param {any} val A number representing the value color value + * @returns {Numberp[]} An RGB color array + */ + +function HSVToRGB(hue, sat, val) { + if (hue > 1) { + throw new Error('HSVToRGB expects hue < 1'); + } + + var rgb = []; + + if (sat === 0) { + rgb[0] = val; + rgb[1] = val; + rgb[2] = val; + return rgb; + } + + var hueCase = Math.floor(hue * 6); + var frac = 6 * hue - hueCase; + var lx = val * (1 - sat); + var ly = val * (1 - sat * frac); + var lz = val * (1 - sat * (1 - frac)); + + switch (hueCase) { + /* 0 p.Range[1]) { + dIndex = p.MaxIndex + ABOVE_RANGE_COLOR_INDEX + 1.5; + } else { + dIndex = (v + p.Shift) * p.Scale; + } + + return Math.floor(dIndex); +} +/** + * Maps scalar values into colors via a lookup table + * LookupTable is an object that is used by mapper objects to map scalar values into rgba (red-green-blue-alpha transparency) color specification, + * or rgba into scalar values. The color table can be created by direct insertion of color values, or by specifying hue, saturation, value, and alpha range and generating a table + */ + + +var LookupTable = +/*#__PURE__*/ +function () { + /** + * Creates a default linear LookupTable object with 256 colors. + */ + function LookupTable() { + _classCallCheck(this, LookupTable); + + this.NumberOfColors = 256; + this.Ramp = 'linear'; + this.TableRange = [0, 255]; + this.HueRange = [0, 0.66667]; + this.SaturationRange = [1, 1]; + this.ValueRange = [1, 1]; + this.AlphaRange = [1, 1]; + this.NaNColor = [128, 0, 0, 255]; + this.BelowRangeColor = [0, 0, 0, 255]; + this.UseBelowRangeColor = true; + this.AboveRangeColor = [255, 255, 255, 255]; + this.UseAboveRangeColor = true; + this.InputRange = [0, 255]; + this.Table = []; + } + /** + * Specify the number of values (i.e., colors) in the lookup table. + * @param {Number} number The number of colors in he LookupTable + * @returns {void} + * @memberof Colors + */ + + + _createClass(LookupTable, [{ + key: "setNumberOfTableValues", + value: function setNumberOfTableValues(number) { + this.NumberOfColors = number; + } + /** + * Set the shape of the table ramp to either 'linear', 'scurve' or 'sqrt' + * @param {String} ramp A string value representing the shape of the table. Allowed values are 'linear', 'scurve' or 'sqrt' + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setRamp", + value: function setRamp(ramp) { + this.Ramp = ramp; + } + /** + * Sets the minimum/maximum scalar values for scalar mapping. + * Scalar values less than minimum range value are clamped to minimum range value. + * Scalar values greater than maximum range value are clamped to maximum range value. + * @param {Number} start A double representing the minimum scaler value of the LookupTable + * @param {any} end A double representing the maximum scaler value of the LookupTable + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setTableRange", + value: function setTableRange(start, end) { + this.TableRange[0] = start; + this.TableRange[1] = end; + } + /** + * Set the range in hue (using automatic generation). Hue ranges between [0,1]. + * @param {Number} start A double representing the minimum hue value in a range. Min. is 0 + * @param {Number} end A double representing the maximum hue value in a range. Max. is 1 + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setHueRange", + value: function setHueRange(start, end) { + this.HueRange[0] = start; + this.HueRange[1] = end; + } + /** + * Set the range in saturation (using automatic generation). Saturation ranges between [0,1]. + * @param {Number} start A double representing the minimum Saturation value in a range. Min. is 0 + * @param {Number} end A double representing the maximum Saturation value in a range. Max. is 1 + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setSaturationRange", + value: function setSaturationRange(start, end) { + this.SaturationRange[0] = start; + this.SaturationRange[1] = end; + } + /** + * Set the range in value (using automatic generation). Value ranges between [0,1]. + * @param {Numeber } start A double representing the minimum value in a range. Min. is 0 + * @param {Numeber} end A double representing the maximum value in a range. Max. is 1 + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setValueRange", + value: function setValueRange(start, end) { + // Set the range in value (using automatic generation). Value ranges between [0,1]. + this.ValueRange[0] = start; + this.ValueRange[1] = end; + } + /** + * (Not Used) Sets the range of scalars which will be mapped. + * @param {Number} start the minimum scalar value in the range + * @param {Number} end the maximum scalar value in the range + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setRange", + value: function setRange(start, end) { + this.InputRange[0] = start; + this.InputRange[1] = end; + } + /** + * Set the range in alpha (using automatic generation). Alpha ranges from [0,1]. + * @param {Number} start A double representing the minimum alpha value + * @param {Number} end A double representing the maximum alpha value + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setAlphaRange", + value: function setAlphaRange(start, end) { + // Set the range in alpha (using automatic generation). Alpha ranges from [0,1]. + this.AlphaRange[0] = start; + this.AlphaRange[1] = end; + } + /** + * Map one value through the lookup table and return the color as an + * RGBA array of doubles between 0 and 1. + * @param {Number} scalar A double scalar value which will be mapped to a color in the LookupTable + * @returns {Number[]} An RGBA array of doubles between 0 and 1 + * @memberof Colors + */ + + }, { + key: "getColor", + value: function getColor(scalar) { + return this.mapValue(scalar); + } + /** + * Generate lookup table from hue, saturation, value, alpha min/max values. Table is built from linear ramp of each value. + * @param {Boolean} force true to force the build of the LookupTable. Otherwie, false. This is useful if a lookup table has been defined manually + * (using SetTableValue) and then an application decides to rebuild the lookup table using the implicit process. + * @returns {void} + * @memberof Colors + */ + + }, { + key: "build", + value: function build(force) { + if (this.Table.length > 1 && !force) { + return; + } // Clear the table + + + this.Table = []; + var maxIndex = this.NumberOfColors - 1; + var hinc, sinc, vinc, ainc; + + if (maxIndex) { + hinc = (this.HueRange[1] - this.HueRange[0]) / maxIndex; + sinc = (this.SaturationRange[1] - this.SaturationRange[0]) / maxIndex; + vinc = (this.ValueRange[1] - this.ValueRange[0]) / maxIndex; + ainc = (this.AlphaRange[1] - this.AlphaRange[0]) / maxIndex; + } else { + hinc = sinc = vinc = ainc = 0.0; + } + + for (var i = 0; i <= maxIndex; i++) { + var hue = this.HueRange[0] + i * hinc; + var sat = this.SaturationRange[0] + i * sinc; + var val = this.ValueRange[0] + i * vinc; + var alpha = this.AlphaRange[0] + i * ainc; + var rgb = HSVToRGB(hue, sat, val); + var c_rgba = []; + + switch (this.Ramp) { + case 'scurve': + c_rgba[0] = Math.floor(127.5 * (1.0 + Math.cos((1.0 - rgb[0]) * Math.PI))); + c_rgba[1] = Math.floor(127.5 * (1.0 + Math.cos((1.0 - rgb[1]) * Math.PI))); + c_rgba[2] = Math.floor(127.5 * (1.0 + Math.cos((1.0 - rgb[2]) * Math.PI))); + c_rgba[3] = Math.floor(alpha * 255); + break; + + case 'linear': + c_rgba[0] = Math.floor(rgb[0] * 255 + 0.5); + c_rgba[1] = Math.floor(rgb[1] * 255 + 0.5); + c_rgba[2] = Math.floor(rgb[2] * 255 + 0.5); + c_rgba[3] = Math.floor(alpha * 255 + 0.5); + break; + + case 'sqrt': + c_rgba[0] = Math.floor(Math.sqrt(rgb[0]) * 255 + 0.5); + c_rgba[1] = Math.floor(Math.sqrt(rgb[1]) * 255 + 0.5); + c_rgba[2] = Math.floor(Math.sqrt(rgb[2]) * 255 + 0.5); + c_rgba[3] = Math.floor(Math.sqrt(alpha) * 255 + 0.5); + break; + + default: + throw new Error("Invalid Ramp value (".concat(this.Ramp, ")")); + } + + this.Table.push(c_rgba); + } + + this.buildSpecialColors(); + } + /** + * Ensures the out-of-range colors (Below range and Above range) are set correctly. + * @returns {void} + * @memberof Colors + */ + + }, { + key: "buildSpecialColors", + value: function buildSpecialColors() { + var numberOfColors = this.NumberOfColors; + var belowRangeColorIndex = numberOfColors + BELOW_RANGE_COLOR_INDEX; + var aboveRangeColorIndex = numberOfColors + ABOVE_RANGE_COLOR_INDEX; + var nanColorIndex = numberOfColors + NAN_COLOR_INDEX; // Below range color + + if (this.UseBelowRangeColor || numberOfColors === 0) { + this.Table[belowRangeColorIndex] = this.BelowRangeColor; + } else { + // Duplicate the first color in the table. + this.Table[belowRangeColorIndex] = this.Table[0]; + } // Above range color + + + if (this.UseAboveRangeColor || numberOfColors === 0) { + this.Table[aboveRangeColorIndex] = this.AboveRangeColor; + } else { + // Duplicate the last color in the table. + this.Table[aboveRangeColorIndex] = this.Table[numberOfColors - 1]; + } // Always use NanColor + + + this.Table[nanColorIndex] = this.NaNColor; + } + /** + * Similar to GetColor - Map one value through the lookup table and return the color as an + * RGBA array of doubles between 0 and 1. + * @param {Numeber} v A double scalar value which will be mapped to a color in the LookupTable + * @returns {Number[]} An RGBA array of doubles between 0 and 1 + * @memberof Colors + */ + + }, { + key: "mapValue", + value: function mapValue(v) { + var index = this.getIndex(v); + + if (index < 0) { + return this.NaNColor; + } else if (index === 0) { + if (this.UseBelowRangeColor && v < this.TableRange[0]) { + return this.BelowRangeColor; + } + } else if (index === this.NumberOfColors - 1) { + if (this.UseAboveRangeColor && v > this.TableRange[1]) { + return this.AboveRangeColor; + } + } + + return this.Table[index]; + } + /** + * Return the table index associated with a particular value. + * @param {Number} v A double value which table index will be returned. + * @returns {Number} The index in the LookupTable + * @memberof Colors + */ + + }, { + key: "getIndex", + value: function getIndex(v) { + var p = {}; + p.Range = []; + p.MaxIndex = this.NumberOfColors - 1; // This was LookupShiftAndScale + + p.Shift = -this.TableRange[0]; + + if (this.TableRange[1] <= this.TableRange[0]) { + p.Scale = Number.MAX_VALUE; + } else { + p.Scale = p.MaxIndex / (this.TableRange[1] - this.TableRange[0]); + } + + p.Range[0] = this.TableRange[0]; + p.Range[1] = this.TableRange[1]; // First, check whether we have a number... + + if (isNaN(v)) { + // For backwards compatibility + return -1; + } // Map to an index: + + + var index = linearIndexLookupMain(v, p); // For backwards compatibility, if the index indicates an + // Out-of-range value, truncate to index range for in-range colors. + + if (index === this.NumberOfColors + BELOW_RANGE_COLOR_INDEX) { + index = 0; + } else if (index === this.NumberOfColors + ABOVE_RANGE_COLOR_INDEX) { + index = this.NumberOfColors - 1; + } + + return index; + } + /** + * Directly load color into lookup table. Use [0,1] double values for color component specification. + * Make sure that you've either used the Build() method or used SetNumberOfTableValues() prior to using this method. + * @param {Number} index The index in the LookupTable of where to insert the color value + * @param {Number[]} rgba An array of [0,1] double values for an RGBA color component + * @returns {void} + * @memberof Colors + */ + + }, { + key: "setTableValue", + value: function setTableValue(index, rgba) { + // Check if it index, red, green, blue and alpha were passed as parameter + if (arguments.length === 5) { + rgba = Array.prototype.slice.call(arguments, 1); + } // Check the index to make sure it is valid + + + if (index < 0) { + throw new Error("Can't set the table value for negative index (".concat(index, ")")); + } + + if (index >= this.NumberOfColors) { + new Error("Index ".concat(index, " is greater than the number of colors ").concat(this.NumberOfColors)); + } + + this.Table[index] = rgba; + + if (index === 0 || index === this.NumberOfColors - 1) { + // This is needed due to the way the special colors are stored in + // The internal table. If Above/BelowRangeColors are not used and + // The min/max colors are changed in the table with this member + // Function, then the colors used for values outside the range may + // Be incorrect. Calling this here ensures the out-of-range colors + // Are set correctly. + this.buildSpecialColors(); + } + } + }]); + + return LookupTable; +}(); + +/* harmony default export */ __webpack_exports__["default"] = (LookupTable); + +/***/ }), + +/***/ "./disable.js": +/*!********************!*\ + !*** ./disable.js ***! + \********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./events.js */ "./events.js"); + + + +/** + * Disable an HTML element for further use in Cornerstone + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @returns {void} + * @memberof Enable + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + if (element === undefined) { + throw new Error('disable: element must not be undefined'); + } // Search for this element in this list of enabled elements + + + var enabledElements = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElements"])(); + + for (var i = 0; i < enabledElements.length; i++) { + if (enabledElements[i].element === element) { + // We found it! + // Fire an event so dependencies can cleanup + var eventData = { + element: element + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].ELEMENT_DISABLED, eventData); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_2__["events"], _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].ELEMENT_DISABLED, eventData); // Remove the child DOM elements that we created (e.g.canvas) + + enabledElements[i].element.removeChild(enabledElements[i].canvas); + enabledElements[i].canvas = undefined; // Remove this element from the list of enabled elements + + enabledElements.splice(i, 1); + break; + } + } +}); + +/***/ }), + +/***/ "./displayImage.js": +/*!*************************!*\ + !*** ./displayImage.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); +/* harmony import */ var _internal_now_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/now.js */ "./internal/now.js"); +/* harmony import */ var _layers_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./layers.js */ "./layers.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./events.js */ "./events.js"); + + + + + + + +/** + * Sets a new image object for a given element. + * + * Will also apply an optional viewport setting. + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {Object} image An Image loaded by a Cornerstone Image Loader + * @param {Object} [viewport] A set of Cornerstone viewport parameters + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, image, viewport) { + if (element === undefined) { + throw new Error('displayImage: parameter element must not be undefined'); + } + + if (image === undefined) { + throw new Error('displayImage: parameter image must not be undefined'); + } + + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var oldImage = enabledElement.image; + enabledElement.image = image; + + if (enabledElement.layers && enabledElement.layers.length) { + Object(_layers_js__WEBPACK_IMPORTED_MODULE_4__["setLayerImage"])(element, image); + } + + if (enabledElement.viewport === undefined) { + enabledElement.viewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement.canvas, image); + } // Merge viewport + + + if (viewport) { + for (var attrname in viewport) { + if (viewport[attrname] !== null) { + enabledElement.viewport[attrname] = viewport[attrname]; + } + } + } + + var frameRate; + + if (enabledElement.lastImageTimeStamp !== undefined) { + var timeSinceLastImage = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])() - enabledElement.lastImageTimeStamp; + frameRate = (1000 / timeSinceLastImage).toFixed(); + } + + enabledElement.lastImageTimeStamp = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); + var newImageEventData = { + viewport: enabledElement.viewport, + element: enabledElement.element, + image: enabledElement.image, + oldImage: oldImage, + enabledElement: enabledElement, + frameRate: frameRate + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(enabledElement.element, _events_js__WEBPACK_IMPORTED_MODULE_6__["default"].NEW_IMAGE, newImageEventData); + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element); +}); + +/***/ }), + +/***/ "./draw.js": +/*!*****************!*\ + !*** ./draw.js ***! + \*****************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/drawImage.js */ "./internal/drawImage.js"); + + +/** + * Immediately draws the enabled element + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + + if (enabledElement.image === undefined) { + throw new Error('draw: image has not been loaded yet'); + } + + Object(_internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement); +}); + +/***/ }), + +/***/ "./drawInvalidated.js": +/*!****************************!*\ + !*** ./drawInvalidated.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/drawImage.js */ "./internal/drawImage.js"); +/** + * This module is responsible for drawing invalidated enabled elements + */ + + +/** + * Draws all invalidated enabled elements and clears the invalid flag after drawing it + * + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function () { + var enabledElements = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElements"])(); + + for (var i = 0; i < enabledElements.length; i++) { + var ee = enabledElements[i]; + + if (ee.invalid === true) { + Object(_internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(ee, true); + } + } +}); + +/***/ }), + +/***/ "./enable.js": +/*!*******************!*\ + !*** ./enable.js ***! + \*******************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _resize_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./resize.js */ "./resize.js"); +/* harmony import */ var _internal_drawImageSync_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internal/drawImageSync.js */ "./internal/drawImageSync.js"); +/* harmony import */ var _internal_requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/requestAnimationFrame.js */ "./internal/requestAnimationFrame.js"); +/* harmony import */ var _internal_tryEnableWebgl_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./internal/tryEnableWebgl.js */ "./internal/tryEnableWebgl.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _generateUUID_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./generateUUID.js */ "./generateUUID.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./events.js */ "./events.js"); +/* harmony import */ var _internal_getCanvas_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./internal/getCanvas.js */ "./internal/getCanvas.js"); + + + + + + + + + +/** + * @module Enable + * This module is responsible for enabling an element to display images with cornerstone + */ + +/** + * Returns whether or not an Enabled Element has either a currently active image or + * a non-empty Array of Enabled Element Layers. + * + * @param {EnabledElement} enabledElement An Enabled Element + * @return {Boolean} Whether or not the Enabled Element has an active image or valid set of layers + * @memberof Enable + */ + +function hasImageOrLayers(enabledElement) { + return enabledElement.image !== undefined || enabledElement.layers.length > 0; +} +/** + * Enable an HTML Element for use in Cornerstone + * + * - If there is a Canvas already present within the HTMLElement, and it has the class + * 'cornerstone-canvas', this function will use this existing Canvas instead of creating + * a new one. This may be helpful when using libraries (e.g. React, Vue) which don't + * want third parties to change the DOM. + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {Object} options Options for the enabledElement + * + * @return {void} + * @memberof Enable + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (element, options) { + if (element === undefined) { + throw new Error('enable: parameter element cannot be undefined'); + } // If this enabled element has the option set for WebGL, we should + // Check if this device actually supports it + + + if (options && options.renderer && options.renderer.toLowerCase() === 'webgl') { + Object(_internal_tryEnableWebgl_js__WEBPACK_IMPORTED_MODULE_4__["default"])(options); + } + + var canvas = Object(_internal_getCanvas_js__WEBPACK_IMPORTED_MODULE_8__["default"])(element); + var enabledElement = { + element: element, + canvas: canvas, + image: undefined, + // Will be set once image is loaded + invalid: false, + // True if image needs to be drawn, false if not + needsRedraw: true, + options: options, + layers: [], + data: {}, + renderingTools: {}, + uuid: Object(_generateUUID_js__WEBPACK_IMPORTED_MODULE_6__["default"])() + }; + Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["addEnabledElement"])(enabledElement); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_7__["events"], _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].ELEMENT_ENABLED, enabledElement); + Object(_resize_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, true); + /** + * Draw the image immediately + * + * @param {DOMHighResTimeStamp} timestamp The current time for when requestAnimationFrame starts to fire callbacks + * @returns {void} + * @memberof Drawing + */ + + function draw(timestamp) { + if (enabledElement.canvas === undefined) { + return; + } + + var eventDetails = { + enabledElement: enabledElement, + timestamp: timestamp + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(enabledElement.element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].PRE_RENDER, eventDetails); + + if (enabledElement.needsRedraw && hasImageOrLayers(enabledElement)) { + Object(_internal_drawImageSync_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement, enabledElement.invalid); + } + + Object(_internal_requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_3__["default"])(draw); + } + + draw(); +}); + +/***/ }), + +/***/ "./enabledElementData.js": +/*!*******************************!*\ + !*** ./enabledElementData.js ***! + \*******************************/ +/*! exports provided: getElementData, removeElementData */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getElementData", function() { return getElementData; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeElementData", function() { return removeElementData; }); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); + +/** + * Retrieves any data for a Cornerstone enabledElement for a specific string + * dataType + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {string} dataType A string name for an arbitrary set of data + * @returns {*} Whatever data is stored for this enabled element + */ + +function getElementData(element, dataType) { + var ee = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + + if (ee.data.hasOwnProperty(dataType) === false) { + ee.data[dataType] = {}; + } + + return ee.data[dataType]; +} +/** + * Clears any data for a Cornerstone enabledElement for a specific string + * dataType + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {string} dataType A string name for an arbitrary set of data + * + * @returns {void} + */ + +function removeElementData(element, dataType) { + var ee = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + delete ee.data[dataType]; +} + +/***/ }), + +/***/ "./enabledElements.js": +/*!****************************!*\ + !*** ./enabledElements.js ***! + \****************************/ +/*! exports provided: getEnabledElement, addEnabledElement, getEnabledElementsByImageId, getEnabledElements */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getEnabledElement", function() { return getEnabledElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addEnabledElement", function() { return addEnabledElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getEnabledElementsByImageId", function() { return getEnabledElementsByImageId; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getEnabledElements", function() { return getEnabledElements; }); +var enabledElements = []; +/** + * @module EnabledElements + */ + +/** + * @module Objects + */ + +/** + * A two-dimensional vector + * + * @typedef {Object} vec2 + * @memberof Objects + * @param {Number} x - The x distance + * @param {Number} y - The y distance + */ + +/** + * VOI + * + * @typedef {Object} VOI + * @memberof Objects + * @param {Number} windowWidth - Window Width for display + * @param {Number} windowCenter - Window Center for display + */ + +/** + * Lookup Table Array + * + * @typedef {Object} LUT + * @memberof Objects + * @property {Number} firstValueMapped + * @property {Number} numBitsPerEntry + * @property {Array} lut + */ + +/** + * Image Statistics Object + * + * @typedef {Object} ImageStats + * @memberof Objects + * @property {Number} [lastGetPixelDataTime] The time in ms taken to retrieve stored pixels required to draw the image + * @property {Number} [lastStoredPixelDataToCanvasImageDataTime] The time in ms taken to map from stored pixel array to canvas pixel array + * @property {Number} [lastPutImageDataTime] The time in ms taken for putImageData to put the canvas pixel data into the canvas context + * @property {Number} [lastRenderTime] The total time in ms taken for the entire rendering function to run + * @property {Number} [lastLutGenerateTime] The time in ms taken to generate the lookup table for the image + */ + +/** + * An Image Object in Cornerstone + * + * @typedef {Object} Image + * @memberof Objects + * @property {string} imageId - The imageId associated with this image object + * @property {Number} minPixelValue - the minimum stored pixel value in the image + * @property {Number} maxPixelValue - the maximum stored pixel value in the image + * @property {Number} slope - the rescale slope to convert stored pixel values to modality pixel values or 1 if not specified + * @property {Number} intercept - the rescale intercept used to convert stored pixel values to modality values or 0 if not specified + * @property {Number} windowCenter - the default windowCenter to apply to the image + * @property {Number} windowWidth - the default windowWidth to apply to the image + * @property {function} getPixelData - a function that returns the underlying pixel data. An array of integers for grayscale and an array of RGBA for color + * @property {function} getImageData - a function that returns a canvas imageData object for the image. This is only needed for color images + * @property {function} getCanvas - a function that returns a canvas element with the image loaded into it. This is only needed for color images. + * @property {function} getImage - a function that returns a JavaScript Image object with the image data. This is optional and typically used for images encoded in standard web JPEG and PNG formats + * @property {Number} rows - number of rows in the image. This is the same as height but duplicated for convenience + * @property {Number} columns - number of columns in the image. This is the same as width but duplicated for convenience + * @property {Number} height - the height of the image. This is the same as rows but duplicated for convenience + * @property {Number} width - the width of the image. This is the same as columns but duplicated for convenience + * @property {Boolean} color - true if pixel data is RGB, false if grayscale + * @property {Object} lut - The Lookup Table + * @property {Boolean} rgba - Is the color pixel data stored in RGBA? + * @property {Number} columnPixelSpacing - horizontal distance between the middle of each pixel (or width of each pixel) in mm or undefined if not known + * @property {Number} rowPixelSpacing - vertical distance between the middle of each pixel (or height of each pixel) in mm or undefined if not known + * @property {Boolean} invert - true if the the image should initially be displayed be inverted, false if not. This is here mainly to support DICOM images with a photometric interpretation of MONOCHROME1 + * @property {Number} sizeInBytes - the number of bytes used to store the pixels for this image. + * @property {Boolean} [falseColor=false] - Whether or not the image has undergone false color mapping + * @property {Array} [origPixelData] - Original pixel data for an image after it has undergone false color mapping + * @property {ImageStats} [stats] - Statistics for the last redraw of the image + * @property {Object} cachedLut - Cached Lookup Table for this image. + * @property {String|Colormap} [colormap] - Depreacted. Use viewport.colormap instead. an optional colormap ID or colormap object (from colors/colormap.js). This will be applied during rendering to convert the image to pseudocolor + * @property {Boolean} [labelmap=false] - whether or not to render this image as a label map (i.e. skip modality and VOI LUT pipelines and use only a color lookup table) + */ + +/** + * A Viewport Settings Object Cornerstone + * + * @typedef {Object} Viewport + * @memberof Objects + * @property {Number} [scale=1.0] - The scale applied to the image. A scale of 1.0 will display no zoom (one image pixel takes up one screen pixel). A scale of 2.0 will be double zoom and a scale of .5 will be zoomed out by 2x + * @property {vec2} [translation] - An object with properties x and y which describe the translation to apply in the pixel coordinate system. Note that the image is initially displayed centered in the enabled element with a x and y translation of 0 and 0 respectively. + * @property {VOI} [voi] - an object with properties windowWidth and windowCenter. + * @property {boolean} [invert=false] - Whether or not the image is inverted. + * @property {boolean} [pixelReplication=false] - true if the image smooth / interpolation should be used when zoomed in on the image or false if pixel replication should be used. + * @property {boolean} [hflip=false] - true if the image is flipped horizontally. Default is false + * @property {boolean} [vflip=false] - true if the image is flipped vertically. Default is false + * @property {Number} [rotation=0] - the rotation of the image (90 degree increments). Default is 0 + * @property {LUT} [modalityLUT] - the modality LUT to apply or undefined if none + * @property {LUT} [voiLUT] - the modality LUT to apply or undefined if none + * @property {String|Colormap} [colormap] - an optional colormap ID or colormap object (from colors/colormap.js). This will be applied during rendering to convert the image to pseudocolor + * @property {Boolean} [labelmap=false] - whether or not to render this image as a label map (i.e. skip modality and VOI LUT pipelines and use only a color lookup table) + */ + +/** + * An Enabled Element in Cornerstone + * + * @typedef {Object} EnabledElement + * @memberof Objects + * @property {HTMLElement} element - The DOM element which has been enabled for use by Cornerstone + * @property {Image} [image] - The image currently displayed in the enabledElement + * @property {Viewport} [viewport] - The current viewport settings of the enabledElement + * @property {HTMLCanvasElement} [canvas] - The current canvas for this enabledElement + * @property {Boolean} invalid - Whether or not the image pixel data underlying the enabledElement has been changed, necessitating a redraw + * @property {Boolean} needsRedraw - A flag for triggering a redraw of the canvas without re-retrieving the pixel data, since it remains valid + * @property {EnabledElementLayer[]} [layers] - The layers that have been added to the enabledElement + * @property {Boolean} [syncViewports] - Whether or not to synchronize the viewport parameters + * for each of the enabled element's layers + * @property {Boolean} [lastSyncViewportsState] - The previous state for the sync viewport boolean + */ + +/** + * An Enabled Element Layer in Cornerstone + * + * @typedef {Object} EnabledElementLayer + * @memberof Objects + * @property {HTMLElement} element - The DOM element which has been enabled for use by Cornerstone + * @property {Image} [image] - The image currently displayed in the enabledElement + * @property {Viewport} [viewport] - The current viewport settings of the enabledElement + * @property {HTMLCanvasElement} [canvas] - The current canvas for this enabledElement + * @property {Object} [options] - Layer drawing options + * @property {Boolean} invalid - Whether or not the image pixel data underlying the enabledElement has been changed, necessitating a redraw + * @property {Boolean} needsRedraw - A flag for triggering a redraw of the canvas without re-retrieving the pixel data, since it remains valid + */ + +/** + * An Image Load Object + * + * @typedef {Object} ImageLoadObject + * @memberof Objects + * @property {Promise} promise - The Promise tracking the loading of this image + * @property {Function|undefined} cancelFn - A function to cancel the image load request + */ + +/** + * Retrieves a Cornerstone Enabled Element object + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * + * @returns {EnabledElement} A Cornerstone Enabled Element + * @memberof EnabledElements + */ + +function getEnabledElement(element) { + if (element === undefined) { + throw new Error('getEnabledElement: parameter element must not be undefined'); + } + + for (var i = 0; i < enabledElements.length; i++) { + if (enabledElements[i].element === element) { + return enabledElements[i]; + } + } + + throw new Error('element not enabled'); +} +/** + * Adds a Cornerstone Enabled Element object to the central store of enabledElements + * + * @param {EnabledElement} enabledElement A Cornerstone enabledElement Object + * @returns {void} + * @memberof EnabledElements + */ + +function addEnabledElement(enabledElement) { + if (enabledElement === undefined) { + throw new Error('getEnabledElement: enabledElement element must not be undefined'); + } + + enabledElements.push(enabledElement); +} +/** + * Adds a Cornerstone Enabled Element object to the central store of enabledElements + * + * @param {string} imageId A Cornerstone Image ID + * @returns {EnabledElement[]} An Array of Cornerstone enabledElement Objects + * @memberof EnabledElements + */ + +function getEnabledElementsByImageId(imageId) { + var ees = []; + enabledElements.forEach(function (enabledElement) { + if (enabledElement.image && enabledElement.image.imageId === imageId) { + ees.push(enabledElement); + } + }); + return ees; +} +/** + * Retrieve all of the currently enabled Cornerstone elements + * + * @return {EnabledElement[]} An Array of Cornerstone enabledElement Objects + * @memberof EnabledElements + */ + +function getEnabledElements() { + return enabledElements; +} + +/***/ }), + +/***/ "./events.js": +/*!*******************!*\ + !*** ./events.js ***! + \*******************/ +/*! exports provided: default, events */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "events", function() { return events; }); +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +var EVENTS = { + NEW_IMAGE: 'cornerstonenewimage', + INVALIDATED: 'cornerstoneinvalidated', + PRE_RENDER: 'cornerstoneprerender', + IMAGE_CACHE_MAXIMUM_SIZE_CHANGED: 'cornerstoneimagecachemaximumsizechanged', + IMAGE_CACHE_PROMISE_REMOVED: 'cornerstoneimagecachepromiseremoved', + IMAGE_CACHE_FULL: 'cornerstoneimagecachefull', + IMAGE_CACHE_CHANGED: 'cornerstoneimagecachechanged', + WEBGL_TEXTURE_REMOVED: 'cornerstonewebgltextureremoved', + WEBGL_TEXTURE_CACHE_FULL: 'cornerstonewebgltexturecachefull', + IMAGE_LOADED: 'cornerstoneimageloaded', + IMAGE_LOAD_FAILED: 'cornerstoneimageloadfailed', + ELEMENT_RESIZED: 'cornerstoneelementresized', + IMAGE_RENDERED: 'cornerstoneimagerendered', + LAYER_ADDED: 'cornerstonelayeradded', + LAYER_REMOVED: 'cornerstonelayerremoved', + ACTIVE_LAYER_CHANGED: 'cornerstoneactivelayerchanged', + ELEMENT_DISABLED: 'cornerstoneelementdisabled', + ELEMENT_ENABLED: 'cornerstoneelementenabled' +}; +/* harmony default export */ __webpack_exports__["default"] = (EVENTS); +/** + * EventTarget - Provides the [EventTarget](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget) interface + * + * @class + * @memberof Polyfills + */ + +var EventTarget = +/*#__PURE__*/ +function () { + function EventTarget() { + _classCallCheck(this, EventTarget); + + this.listeners = {}; + this.namespaces = {}; + } + + _createClass(EventTarget, [{ + key: "addEventNamespaceListener", + value: function addEventNamespaceListener(type, callback) { + if (type.indexOf('.') <= 0) { + return; + } + + this.namespaces[type] = callback; + this.addEventListener(type.split('.')[0], callback); + } + }, { + key: "removeEventNamespaceListener", + value: function removeEventNamespaceListener(type) { + if (type.indexOf('.') <= 0 || !this.namespaces[type]) { + return; + } + + this.removeEventListener(type.split('.')[0], this.namespaces[type]); + delete this.namespaces[type]; + } + }, { + key: "addEventListener", + value: function addEventListener(type, callback) { + // Check if it is an event namespace + if (type.indexOf('.') > 0) { + this.addEventNamespaceListener(type, callback); + return; + } + + if (!(type in this.listeners)) { + this.listeners[type] = []; + } + + this.listeners[type].push(callback); + } + }, { + key: "removeEventListener", + value: function removeEventListener(type, callback) { + // Check if it is an event namespace + if (type.indexOf('.') > 0) { + this.removeEventNamespaceListener(type); + return; + } + + if (!(type in this.listeners)) { + return; + } + + var stack = this.listeners[type]; + + for (var i = 0, l = stack.length; i < l; i++) { + if (stack[i] === callback) { + stack.splice(i, 1); + return; + } + } + } + }, { + key: "dispatchEvent", + value: function dispatchEvent(event) { + if (!(event.type in this.listeners)) { + return true; + } + + var stack = this.listeners[event.type]; + + for (var i = 0, l = stack.length; i < l; i++) { + stack[i].call(this, event); + } + + return !event.defaultPrevented; + } + }]); + + return EventTarget; +}(); + +var events = new EventTarget(); + +/***/ }), + +/***/ "./falseColorMapping.js": +/*!******************************!*\ + !*** ./falseColorMapping.js ***! + \******************************/ +/*! exports provided: convertImageToFalseColorImage, convertToFalseColorImage, restoreImage */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "convertImageToFalseColorImage", function() { return convertImageToFalseColorImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "convertToFalseColorImage", function() { return convertToFalseColorImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "restoreImage", function() { return restoreImage; }); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _pixelDataToFalseColorData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./pixelDataToFalseColorData.js */ "./pixelDataToFalseColorData.js"); +/* harmony import */ var _colors_colormap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./colors/colormap.js */ "./colors/colormap.js"); + + + +/** + * Retrieves the minimum and maximum pixel values from an Array of pixel data + * + * @param {Array} pixelData The input pixel data array + * + * @returns {{minPixelValue: Number, maxPixelValue: Number}} The minimum and maximum pixel values in the input Array + */ + +function getPixelValues(pixelData) { + var minPixelValue = Number.MAX_VALUE; + var maxPixelValue = Number.MIN_VALUE; + var len = pixelData.length; + var pixel; + + for (var i = 0; i < len; i++) { + pixel = pixelData[i]; + minPixelValue = minPixelValue < pixel ? minPixelValue : pixel; + maxPixelValue = maxPixelValue > pixel ? maxPixelValue : pixel; + } + + return { + minPixelValue: minPixelValue, + maxPixelValue: maxPixelValue + }; +} +/** + * Retrieve a function that will allow an image object to be reset to its original form + * after a false color mapping transformation + * + * @param {Image} image A Cornerstone Image Object + * + * @return {Function} A function for resetting an Image Object to its original form + */ + + +function getRestoreImageMethod(image) { + if (image.restore) { + return image.restore; + } + + var color = image.color; + var rgba = image.rgba; + var cachedLut = image.cachedLut; + var slope = image.slope; + var windowWidth = image.windowWidth; + var windowCenter = image.windowCenter; + var minPixelValue = image.minPixelValue; + var maxPixelValue = image.maxPixelValue; + return function () { + image.color = color; + image.rgba = rgba; + image.cachedLut = cachedLut; + image.slope = slope; + image.windowWidth = windowWidth; + image.windowCenter = windowCenter; + image.minPixelValue = minPixelValue; + image.maxPixelValue = maxPixelValue; + + if (image.origPixelData) { + var pixelData = image.origPixelData; + + image.getPixelData = function () { + return pixelData; + }; + } // Remove some attributes added by false color mapping + + + image.origPixelData = undefined; + image.colormapId = undefined; + image.falseColor = undefined; + }; +} // +// Then we need to make sure it will be converted into a colormap object if it's as string. + +/** + * User can pass a colormap or its id as string to some of these public functions. + * Then we need to make sure it will be converted into a colormap object if it's a string. + * + * @param {*} colormap A colormap ID or Object + * @return {*} The colormap + */ + + +function ensuresColormap(colormap) { + if (colormap && typeof colormap === 'string') { + colormap = Object(_colors_colormap_js__WEBPACK_IMPORTED_MODULE_2__["getColormap"])(colormap); + } + + return colormap; +} +/** + * Restores a false color image to its original version + * + * @param {Image} image A Cornerstone Image Object + * @returns {Boolean} True if the image object had a valid restore function, which was run. Otherwise, false. + */ + + +function restoreImage(image) { + if (image.restore && typeof image.restore === 'function') { + image.restore(); + return true; + } + + return false; +} +/** + * Convert an image to a false color image + * + * @param {Image} image A Cornerstone Image Object + * @param {String|Object} colormap - it can be a colormap object or a colormap id (string) + * + * @returns {Boolean} - Whether or not the image has been converted to a false color image + */ + + +function convertImageToFalseColorImage(image, colormap) { + if (image.color && !image.falseColor) { + throw new Error('Color transforms are not implemented yet'); + } // User can pass a colormap id or a colormap object + + + colormap = ensuresColormap(colormap); + var colormapId = colormap.getId(); // Doesn't do anything if colormapId hasn't changed + + if (image.colormapId === colormapId) { + // It has already being converted into a false color image + // Using the colormapId passed as parameter + return false; + } // Restore the image attributes updated when converting to a false color image + + + restoreImage(image); // Convert the image to a false color image + + if (colormapId) { + var minPixelValue = image.minPixelValue || 0; + var maxPixelValue = image.maxPixelValue || 255; + image.restore = getRestoreImageMethod(image); + var lookupTable = colormap.createLookupTable(); + lookupTable.setTableRange(minPixelValue, maxPixelValue); // Update the pixel data and render the new image + + Object(_pixelDataToFalseColorData_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image, lookupTable); // Update min and max pixel values + + var pixelValues = getPixelValues(image.getPixelData()); + image.minPixelValue = pixelValues.minPixelValue; + image.maxPixelValue = pixelValues.maxPixelValue; + image.windowWidth = 255; + image.windowCenter = 128; // Cache the last colormapId used for performance + // Then it doesn't need to be re-rendered on next + // Time if the user hasn't updated it + + image.colormapId = colormapId; + } // Return `true` to tell the caller that the image has got updated + + + return true; +} +/** + * Convert the image of a element to a false color image + * + * @param {HTMLElement} element The Cornerstone element + * @param {*} colormap - it can be a colormap object or a colormap id (string) + * + * @returns {void} + */ + + +function convertToFalseColorImage(element, colormap) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + return convertImageToFalseColorImage(enabledElement.image, colormap); +} + + + +/***/ }), + +/***/ "./fitToWindow.js": +/*!************************!*\ + !*** ./fitToWindow.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); +/* harmony import */ var _internal_getImageFitScale_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internal/getImageFitScale.js */ "./internal/getImageFitScale.js"); + + + +/** + * Adjusts an image's scale and translation so the image is centered and all pixels + * in the image are viewable. + * + * @param {HTMLElement} element The Cornerstone element to update + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var image = enabledElement.image; // The new scale is the minimum of the horizontal and vertical scale values + + enabledElement.viewport.scale = Object(_internal_getImageFitScale_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement.canvas, image, enabledElement.viewport.rotation).scaleFactor; + enabledElement.viewport.translation.x = 0; + enabledElement.viewport.translation.y = 0; + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element); +}); + +/***/ }), + +/***/ "./generateUUID.js": +/*!*************************!*\ + !*** ./generateUUID.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** +* Generates a UUID for the enabledElement. +* +* @return {String} the UUID. +*/ +/* harmony default export */ __webpack_exports__["default"] = (function () { + // https://stackoverflow.com/a/8809472/9208320 Public Domain/MIT + + /* eslint no-bitwise: ["error", { "allow": ["&","|"] }] */ + var d = new Date().getTime(); + + if (typeof performance !== 'undefined' && typeof performance.now === 'function') { + d += performance.now(); // Use high-precision timer if available + } + + return 'x.x.x.x.x.x.xxxx.xxx.x.x.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + var r = (d + Math.random() * 16) % 16 | 0; + d = Math.floor(d / 16); + return (c === 'x' ? r : r & 0x3 | 0x8).toString(16); + }); +}); + +/***/ }), + +/***/ "./getDefaultViewportForImage.js": +/*!***************************************!*\ + !*** ./getDefaultViewportForImage.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); + + +/** + * Returns a default viewport for display the specified image on the specified + * enabled element. The default viewport is fit to window + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Image} image A Cornerstone Image Object + * + * @returns {Viewport} The default viewport for the image + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, image) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + return Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement.canvas, image); +}); + +/***/ }), + +/***/ "./getImage.js": +/*!*********************!*\ + !*** ./getImage.js ***! + \*********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); + +/** + * Returns the currently displayed image for an element or undefined if no image has + * been displayed yet + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @returns {Image} The Cornerstone Image Object displayed in this element + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + return enabledElement.image; +}); + +/***/ }), + +/***/ "./getPixels.js": +/*!**********************!*\ + !*** ./getPixels.js ***! + \**********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _getStoredPixels_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getStoredPixels.js */ "./getStoredPixels.js"); +/* harmony import */ var _internal_getModalityLUT_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internal/getModalityLUT.js */ "./internal/getModalityLUT.js"); + + + +/** + * Retrieves an array of pixels from a rectangular region with modality LUT transformation applied + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Number} x The x coordinate of the top left corner of the sampling rectangle in image coordinates + * @param {Number} y The y coordinate of the top left corner of the sampling rectangle in image coordinates + * @param {Number} width The width of the of the sampling rectangle in image coordinates + * @param {Number} height The height of the of the sampling rectangle in image coordinates + * @returns {Array} The modality pixel value of the pixels in the sampling rectangle + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, x, y, width, height) { + var storedPixels = Object(_getStoredPixels_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, x, y, width, height); + var ee = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var mlutfn = Object(_internal_getModalityLUT_js__WEBPACK_IMPORTED_MODULE_2__["default"])(ee.image.slope, ee.image.intercept, ee.viewport.modalityLUT); + return storedPixels.map(mlutfn); +}); + +/***/ }), + +/***/ "./getStoredPixels.js": +/*!****************************!*\ + !*** ./getStoredPixels.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); + +/** + * Retrieves an array of stored pixel values from a rectangular region of an image + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Number} x The x coordinate of the top left corner of the sampling rectangle in image coordinates + * @param {Number} y The y coordinate of the top left corner of the sampling rectangle in image coordinates + * @param {Number} width The width of the of the sampling rectangle in image coordinates + * @param {Number} height The height of the of the sampling rectangle in image coordinates + * @returns {Array} The stored pixel value of the pixels in the sampling rectangle + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, x, y, width, height) { + if (element === undefined) { + throw new Error('getStoredPixels: parameter element must not be undefined'); + } + + x = Math.round(x); + y = Math.round(y); + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var storedPixels = []; + var index = 0; + var pixelData = enabledElement.image.getPixelData(); + + for (var row = 0; row < height; row++) { + for (var column = 0; column < width; column++) { + var spIndex = (row + y) * enabledElement.image.columns + (column + x); + storedPixels[index++] = pixelData[spIndex]; + } + } + + return storedPixels; +}); + +/***/ }), + +/***/ "./getViewport.js": +/*!************************!*\ + !*** ./getViewport.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); + +/** + * Retrieves the viewport for the specified enabled element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @returns {Viewport|undefined} The Cornerstone Viewport settings for this element, if they exist. Otherwise, undefined + * @memberof ViewportSettings + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var viewport = enabledElement.viewport; + + if (viewport === undefined) { + return; + } // Return a copy of the viewport + + + return Object.assign({}, viewport); +}); + +/***/ }), + +/***/ "./imageCache.js": +/*!***********************!*\ + !*** ./imageCache.js ***! + \***********************/ +/*! exports provided: cachedImages, setMaximumSizeBytes, putImageLoadObject, getImageLoadObject, removeImageLoadObject, getCacheInfo, purgeCache, changeImageIdCacheSize, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "cachedImages", function() { return cachedImages; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setMaximumSizeBytes", function() { return setMaximumSizeBytes; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "putImageLoadObject", function() { return putImageLoadObject; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getImageLoadObject", function() { return getImageLoadObject; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeImageLoadObject", function() { return removeImageLoadObject; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getCacheInfo", function() { return getCacheInfo; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "purgeCache", function() { return purgeCache; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "changeImageIdCacheSize", function() { return changeImageIdCacheSize; }); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./events.js */ "./events.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); + + +/** + * This module deals with caching images + * @module ImageCache + */ + +var maximumSizeInBytes = 1024 * 1024 * 1024; // 1 GB + +var cacheSizeInBytes = 0; // Dictionary of imageId to cachedImage objects + +var imageCacheDict = {}; // Array of cachedImage objects + +var cachedImages = []; +/** Sets the maximum size of cache and purges cache contents if necessary. + * + * @param {number} numBytes The maximun size that the cache should occupy. + * @returns {void} + */ + +function setMaximumSizeBytes(numBytes) { + if (numBytes === undefined) { + throw new Error('setMaximumSizeBytes: parameter numBytes must not be undefined'); + } + + if (numBytes.toFixed === undefined) { + throw new Error('setMaximumSizeBytes: parameter numBytes must be a number'); + } + + maximumSizeInBytes = numBytes; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_MAXIMUM_SIZE_CHANGED); + purgeCacheIfNecessary(); +} +/** + * Purges the cache if size exceeds maximum + * @returns {void} + */ + +function purgeCacheIfNecessary() { + // If max cache size has not been exceeded, do nothing + if (cacheSizeInBytes <= maximumSizeInBytes) { + return; + } // Cache size has been exceeded, create list of images sorted by timeStamp + // So we can purge the least recently used image + + + function compare(a, b) { + if (a.timeStamp > b.timeStamp) { + return -1; + } + + if (a.timeStamp < b.timeStamp) { + return 1; + } + + return 0; + } + + cachedImages.sort(compare); // Remove images as necessary) + + while (cacheSizeInBytes > maximumSizeInBytes) { + var lastCachedImage = cachedImages[cachedImages.length - 1]; + var imageId = lastCachedImage.imageId; + removeImageLoadObject(imageId); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_PROMISE_REMOVED, { + imageId: imageId + }); + } + + var cacheInfo = getCacheInfo(); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_FULL, cacheInfo); +} +/** + * Puts a new image loader into the cache + * + * @param {string} imageId ImageId of the image loader + * @param {Object} imageLoadObject The object that is loading or loaded the image + * @returns {void} + */ + + +function putImageLoadObject(imageId, imageLoadObject) { + if (imageId === undefined) { + throw new Error('putImageLoadObject: imageId must not be undefined'); + } + + if (imageLoadObject.promise === undefined) { + throw new Error('putImageLoadObject: imageLoadObject.promise must not be undefined'); + } + + if (imageCacheDict.hasOwnProperty(imageId) === true) { + throw new Error('putImageLoadObject: imageId already in cache'); + } + + if (imageLoadObject.cancelFn && typeof imageLoadObject.cancelFn !== 'function') { + throw new Error('putImageLoadObject: imageLoadObject.cancelFn must be a function'); + } + + var cachedImage = { + loaded: false, + imageId: imageId, + sharedCacheKey: undefined, + // The sharedCacheKey for this imageId. undefined by default + imageLoadObject: imageLoadObject, + timeStamp: Date.now(), + sizeInBytes: 0 + }; + imageCacheDict[imageId] = cachedImage; + cachedImages.push(cachedImage); + imageLoadObject.promise.then(function (image) { + if (cachedImages.indexOf(cachedImage) === -1) { + // If the image has been purged before being loaded, we stop here. + return; + } + + cachedImage.loaded = true; + cachedImage.image = image; + + if (image.sizeInBytes === undefined) { + throw new Error('putImageLoadObject: image.sizeInBytes must not be undefined'); + } + + if (image.sizeInBytes.toFixed === undefined) { + throw new Error('putImageLoadObject: image.sizeInBytes is not a number'); + } + + cachedImage.sizeInBytes = image.sizeInBytes; + cacheSizeInBytes += cachedImage.sizeInBytes; + var eventDetails = { + action: 'addImage', + image: cachedImage + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_CHANGED, eventDetails); + cachedImage.sharedCacheKey = image.sharedCacheKey; + purgeCacheIfNecessary(); + }, function () { + var cachedImage = imageCacheDict[imageId]; + cachedImages.splice(cachedImages.indexOf(cachedImage), 1); + delete imageCacheDict[imageId]; + }); +} +/** + * Retuns the object that is loading a given imageId + * + * @param {string} imageId Image ID + * @returns {void} + */ + +function getImageLoadObject(imageId) { + if (imageId === undefined) { + throw new Error('getImageLoadObject: imageId must not be undefined'); + } + + var cachedImage = imageCacheDict[imageId]; + + if (cachedImage === undefined) { + return; + } // Bump time stamp for cached image + + + cachedImage.timeStamp = Date.now(); + return cachedImage.imageLoadObject; +} +/** + * Removes the image loader associated with a given Id from the cache + * + * @param {string} imageId Image ID + * @returns {void} + */ + +function removeImageLoadObject(imageId) { + if (imageId === undefined) { + throw new Error('removeImageLoadObject: imageId must not be undefined'); + } + + var cachedImage = imageCacheDict[imageId]; + + if (cachedImage === undefined) { + throw new Error('removeImageLoadObject: imageId was not present in imageCache'); + } + + cachedImages.splice(cachedImages.indexOf(cachedImage), 1); + cacheSizeInBytes -= cachedImage.sizeInBytes; + var eventDetails = { + action: 'deleteImage', + image: cachedImage + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_CHANGED, eventDetails); + decache(cachedImage.imageLoadObject); + delete imageCacheDict[imageId]; +} +/** + * @typedef {Object} CacheInformation + * @property {number} maximumSizeInBytes The maximum size of the cache in bytes + * @property {number} cacheSizeInBytes Currently occupied space in the cache in bytes + * @property {number} numberOfImagesCached Number of ImageLoaders in the cache + * @returns {void} + */ + +/** + * Gets the current state of the cache + * @returns {void} + */ + +function getCacheInfo() { + return { + maximumSizeInBytes: maximumSizeInBytes, + cacheSizeInBytes: cacheSizeInBytes, + numberOfImagesCached: cachedImages.length + }; +} // This method should only be called by `removeImageLoadObject` because it's +// The one that knows how to deal with shared cache keys and cache size. + +/** + * INTERNAL: Removes and ImageLoader from the cache + * + * @param {Object} imageLoadObject Image Loader Object to remove + * @returns {void} + */ + +function decache(imageLoadObject) { + imageLoadObject.promise.then(function () { + if (imageLoadObject.decache) { + imageLoadObject.decache(); + } + }, function () { + if (imageLoadObject.decache) { + imageLoadObject.decache(); + } + }); +} +/** + * Removes all images from cache + * @returns {void} + */ + + +function purgeCache() { + while (cachedImages.length > 0) { + var removedCachedImage = cachedImages[0]; + removeImageLoadObject(removedCachedImage.imageId); + } +} +/** + * Updates the space than an image is using in the cache + * + * @param {string} imageId Image ID + * @param {number} newCacheSize New image size + * @returns {void} + */ + +function changeImageIdCacheSize(imageId, newCacheSize) { + var cacheEntry = imageCacheDict[imageId]; + + if (cacheEntry) { + cacheEntry.imageLoadObject.promise.then(function (image) { + var cacheSizeDifference = newCacheSize - image.sizeInBytes; + image.sizeInBytes = newCacheSize; + cacheEntry.sizeInBytes = newCacheSize; + cacheSizeInBytes += cacheSizeDifference; + var eventDetails = { + action: 'changeImageSize', + image: image + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].IMAGE_CACHE_CHANGED, eventDetails); + }); + } +} +/* harmony default export */ __webpack_exports__["default"] = ({ + imageCache: imageCacheDict, + cachedImages: cachedImages, + setMaximumSizeBytes: setMaximumSizeBytes, + putImageLoadObject: putImageLoadObject, + getImageLoadObject: getImageLoadObject, + removeImageLoadObject: removeImageLoadObject, + getCacheInfo: getCacheInfo, + purgeCache: purgeCache, + changeImageIdCacheSize: changeImageIdCacheSize +}); + +/***/ }), + +/***/ "./imageLoader.js": +/*!************************!*\ + !*** ./imageLoader.js ***! + \************************/ +/*! exports provided: loadImage, loadAndCacheImage, registerImageLoader, registerUnknownImageLoader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadImage", function() { return loadImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadAndCacheImage", function() { return loadAndCacheImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "registerImageLoader", function() { return registerImageLoader; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "registerUnknownImageLoader", function() { return registerUnknownImageLoader; }); +/* harmony import */ var _imageCache_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./imageCache.js */ "./imageCache.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./events.js */ "./events.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); + + + +/** + * This module deals with ImageLoaders, loading images and caching images + * @module ImageLoader + */ + +var imageLoaders = {}; +var unknownImageLoader; +/** + * Load an image using a registered Cornerstone Image Loader. + * + * The image loader that is used will be + * determined by the image loader scheme matching against the imageId. + * + * @param {String} imageId A Cornerstone Image Object's imageId + * @param {Object} [options] Options to be passed to the Image Loader + * + * @returns {ImageLoadObject} An Object which can be used to act after an image is loaded or loading fails + * @memberof ImageLoader + */ + +function loadImageFromImageLoader(imageId, options) { + var colonIndex = imageId.indexOf(':'); + var scheme = imageId.substring(0, colonIndex); + var loader = imageLoaders[scheme]; + + if (loader === undefined || loader === null) { + if (unknownImageLoader !== undefined) { + return unknownImageLoader(imageId); + } + + throw new Error('loadImageFromImageLoader: no image loader for imageId'); + } + + var imageLoadObject = loader(imageId, options); // Broadcast an image loaded event once the image is loaded + + imageLoadObject.promise.then(function (image) { + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_1__["events"], _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].IMAGE_LOADED, { + image: image + }); + }, function (error) { + var errorObject = { + imageId: imageId, + error: error + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_1__["events"], _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].IMAGE_LOAD_FAILED, errorObject); + }); + return imageLoadObject; +} +/** + * Loads an image given an imageId and optional priority and returns a promise which will resolve to + * the loaded image object or fail if an error occurred. The loaded image is not stored in the cache. + * + * @param {String} imageId A Cornerstone Image Object's imageId + * @param {Object} [options] Options to be passed to the Image Loader + * + * @returns {ImageLoadObject} An Object which can be used to act after an image is loaded or loading fails + * @memberof ImageLoader + */ + + +function loadImage(imageId, options) { + if (imageId === undefined) { + throw new Error('loadImage: parameter imageId must not be undefined'); + } + + var imageLoadObject = Object(_imageCache_js__WEBPACK_IMPORTED_MODULE_0__["getImageLoadObject"])(imageId); + + if (imageLoadObject !== undefined) { + return imageLoadObject.promise; + } + + return loadImageFromImageLoader(imageId, options).promise; +} // + +/** + * Loads an image given an imageId and optional priority and returns a promise which will resolve to + * the loaded image object or fail if an error occurred. The image is stored in the cache. + * + * @param {String} imageId A Cornerstone Image Object's imageId + * @param {Object} [options] Options to be passed to the Image Loader + * + * @returns {ImageLoadObject} Image Loader Object + * @memberof ImageLoader + */ + +function loadAndCacheImage(imageId, options) { + if (imageId === undefined) { + throw new Error('loadAndCacheImage: parameter imageId must not be undefined'); + } + + var imageLoadObject = Object(_imageCache_js__WEBPACK_IMPORTED_MODULE_0__["getImageLoadObject"])(imageId); + + if (imageLoadObject !== undefined) { + return imageLoadObject.promise; + } + + imageLoadObject = loadImageFromImageLoader(imageId, options); + Object(_imageCache_js__WEBPACK_IMPORTED_MODULE_0__["putImageLoadObject"])(imageId, imageLoadObject); + return imageLoadObject.promise; +} +/** + * Registers an imageLoader plugin with cornerstone for the specified scheme + * + * @param {String} scheme The scheme to use for this image loader (e.g. 'dicomweb', 'wadouri', 'http') + * @param {Function} imageLoader A Cornerstone Image Loader function + * @returns {void} + * @memberof ImageLoader + */ + +function registerImageLoader(scheme, imageLoader) { + imageLoaders[scheme] = imageLoader; +} +/** + * Registers a new unknownImageLoader and returns the previous one + * + * @param {Function} imageLoader A Cornerstone Image Loader + * + * @returns {Function|Undefined} The previous Unknown Image Loader + * @memberof ImageLoader + */ + +function registerUnknownImageLoader(imageLoader) { + var oldImageLoader = unknownImageLoader; + unknownImageLoader = imageLoader; + return oldImageLoader; +} + +/***/ }), + +/***/ "./index.js": +/*!******************!*\ + !*** ./index.js ***! + \******************/ +/*! exports provided: drawImage, generateLut, getDefaultViewport, setDefaultViewport, requestAnimationFrame, storedPixelDataToCanvasImageData, storedColorPixelDataToCanvasImageData, storedPixelDataToCanvasImageDataColorLUT, storedPixelDataToCanvasImageDataPseudocolorLUT, internal, renderLabelMapImage, renderPseudoColorImage, renderColorImage, renderGrayscaleImage, renderWebImage, renderToCanvas, canvasToPixel, disable, displayImage, draw, drawInvalidated, enable, getElementData, removeElementData, getEnabledElement, addEnabledElement, getEnabledElementsByImageId, getEnabledElements, addLayer, removeLayer, getLayer, getLayers, getVisibleLayers, setActiveLayer, getActiveLayer, purgeLayers, setLayerImage, fitToWindow, getDefaultViewportForImage, getImage, getPixels, getStoredPixels, getViewport, loadImage, loadAndCacheImage, registerImageLoader, registerUnknownImageLoader, invalidate, invalidateImageId, pageToPixel, pixelToCanvas, reset, resize, setToPixelCoordinateSystem, setViewport, updateImage, pixelDataToFalseColorData, rendering, imageCache, metaData, webGL, colors, convertImageToFalseColorImage, convertToFalseColorImage, restoreImage, EVENTS, events, triggerEvent, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./events.js */ "./events.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EVENTS", function() { return _events_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "events", function() { return _events_js__WEBPACK_IMPORTED_MODULE_0__["events"]; }); + +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getEnabledElement", function() { return _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addEnabledElement", function() { return _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["addEnabledElement"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getEnabledElementsByImageId", function() { return _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElementsByImageId"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getEnabledElements", function() { return _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElements"]; }); + +/* harmony import */ var _layers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./layers.js */ "./layers.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addLayer", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["addLayer"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeLayer", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["removeLayer"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getLayer", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["getLayer"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getLayers", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["getLayers"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getVisibleLayers", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["getVisibleLayers"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setActiveLayer", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["setActiveLayer"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getActiveLayer", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["getActiveLayer"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "purgeLayers", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["purgeLayers"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setLayerImage", function() { return _layers_js__WEBPACK_IMPORTED_MODULE_2__["setLayerImage"]; }); + +/* harmony import */ var _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./falseColorMapping.js */ "./falseColorMapping.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertImageToFalseColorImage", function() { return _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["convertImageToFalseColorImage"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertToFalseColorImage", function() { return _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["convertToFalseColorImage"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "restoreImage", function() { return _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["restoreImage"]; }); + +/* harmony import */ var _enabledElementData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./enabledElementData.js */ "./enabledElementData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getElementData", function() { return _enabledElementData_js__WEBPACK_IMPORTED_MODULE_4__["getElementData"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeElementData", function() { return _enabledElementData_js__WEBPACK_IMPORTED_MODULE_4__["removeElementData"]; }); + +/* harmony import */ var _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./imageLoader.js */ "./imageLoader.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "loadImage", function() { return _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["loadImage"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "loadAndCacheImage", function() { return _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["loadAndCacheImage"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "registerImageLoader", function() { return _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["registerImageLoader"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "registerUnknownImageLoader", function() { return _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["registerUnknownImageLoader"]; }); + +/* harmony import */ var _canvasToPixel_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./canvasToPixel.js */ "./canvasToPixel.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "canvasToPixel", function() { return _canvasToPixel_js__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./colors/index.js */ "./colors/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "colors", function() { return _colors_index_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony import */ var _disable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./disable.js */ "./disable.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "disable", function() { return _disable_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _displayImage_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./displayImage.js */ "./displayImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "displayImage", function() { return _displayImage_js__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony import */ var _draw_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./draw.js */ "./draw.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "draw", function() { return _draw_js__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + +/* harmony import */ var _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./internal/drawImage.js */ "./internal/drawImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawImage", function() { return _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_11__["default"]; }); + +/* harmony import */ var _drawInvalidated_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./drawInvalidated.js */ "./drawInvalidated.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawInvalidated", function() { return _drawInvalidated_js__WEBPACK_IMPORTED_MODULE_12__["default"]; }); + +/* harmony import */ var _enable_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./enable.js */ "./enable.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "enable", function() { return _enable_js__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + +/* harmony import */ var _fitToWindow_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./fitToWindow.js */ "./fitToWindow.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fitToWindow", function() { return _fitToWindow_js__WEBPACK_IMPORTED_MODULE_14__["default"]; }); + +/* harmony import */ var _internal_generateLut_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./internal/generateLut.js */ "./internal/generateLut.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "generateLut", function() { return _internal_generateLut_js__WEBPACK_IMPORTED_MODULE_15__["default"]; }); + +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getDefaultViewport", function() { return _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_16__["default"]; }); + +/* harmony import */ var _getDefaultViewportForImage_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./getDefaultViewportForImage.js */ "./getDefaultViewportForImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getDefaultViewportForImage", function() { return _getDefaultViewportForImage_js__WEBPACK_IMPORTED_MODULE_17__["default"]; }); + +/* harmony import */ var _getImage_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./getImage.js */ "./getImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getImage", function() { return _getImage_js__WEBPACK_IMPORTED_MODULE_18__["default"]; }); + +/* harmony import */ var _getPixels_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./getPixels.js */ "./getPixels.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getPixels", function() { return _getPixels_js__WEBPACK_IMPORTED_MODULE_19__["default"]; }); + +/* harmony import */ var _getStoredPixels_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./getStoredPixels.js */ "./getStoredPixels.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getStoredPixels", function() { return _getStoredPixels_js__WEBPACK_IMPORTED_MODULE_20__["default"]; }); + +/* harmony import */ var _getViewport_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./getViewport.js */ "./getViewport.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getViewport", function() { return _getViewport_js__WEBPACK_IMPORTED_MODULE_21__["default"]; }); + +/* harmony import */ var _imageCache_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./imageCache.js */ "./imageCache.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "imageCache", function() { return _imageCache_js__WEBPACK_IMPORTED_MODULE_22__["default"]; }); + +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./internal/index.js */ "./internal/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "internal", function() { return _internal_index_js__WEBPACK_IMPORTED_MODULE_23__["default"]; }); + +/* harmony import */ var _invalidate_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./invalidate.js */ "./invalidate.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "invalidate", function() { return _invalidate_js__WEBPACK_IMPORTED_MODULE_24__["default"]; }); + +/* harmony import */ var _invalidateImageId_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./invalidateImageId.js */ "./invalidateImageId.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "invalidateImageId", function() { return _invalidateImageId_js__WEBPACK_IMPORTED_MODULE_25__["default"]; }); + +/* harmony import */ var _metaData_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./metaData.js */ "./metaData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "metaData", function() { return _metaData_js__WEBPACK_IMPORTED_MODULE_26__["default"]; }); + +/* harmony import */ var _pageToPixel_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./pageToPixel.js */ "./pageToPixel.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pageToPixel", function() { return _pageToPixel_js__WEBPACK_IMPORTED_MODULE_27__["default"]; }); + +/* harmony import */ var _pixelDataToFalseColorData_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./pixelDataToFalseColorData.js */ "./pixelDataToFalseColorData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pixelDataToFalseColorData", function() { return _pixelDataToFalseColorData_js__WEBPACK_IMPORTED_MODULE_28__["default"]; }); + +/* harmony import */ var _pixelToCanvas_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./pixelToCanvas.js */ "./pixelToCanvas.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pixelToCanvas", function() { return _pixelToCanvas_js__WEBPACK_IMPORTED_MODULE_29__["default"]; }); + +/* harmony import */ var _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./rendering/renderColorImage.js */ "./rendering/renderColorImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderColorImage", function() { return _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_30__["renderColorImage"]; }); + +/* harmony import */ var _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./rendering/renderGrayscaleImage.js */ "./rendering/renderGrayscaleImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderGrayscaleImage", function() { return _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_31__["renderGrayscaleImage"]; }); + +/* harmony import */ var _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./rendering/renderLabelMapImage.js */ "./rendering/renderLabelMapImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderLabelMapImage", function() { return _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_32__["renderLabelMapImage"]; }); + +/* harmony import */ var _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./rendering/renderPseudoColorImage.js */ "./rendering/renderPseudoColorImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderPseudoColorImage", function() { return _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_33__["renderPseudoColorImage"]; }); + +/* harmony import */ var _rendering_renderToCanvas_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./rendering/renderToCanvas.js */ "./rendering/renderToCanvas.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderToCanvas", function() { return _rendering_renderToCanvas_js__WEBPACK_IMPORTED_MODULE_34__["default"]; }); + +/* harmony import */ var _rendering_renderWebImage_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./rendering/renderWebImage.js */ "./rendering/renderWebImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "renderWebImage", function() { return _rendering_renderWebImage_js__WEBPACK_IMPORTED_MODULE_35__["renderWebImage"]; }); + +/* harmony import */ var _rendering_index_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./rendering/index.js */ "./rendering/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "rendering", function() { return _rendering_index_js__WEBPACK_IMPORTED_MODULE_36__["default"]; }); + +/* harmony import */ var _internal_requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./internal/requestAnimationFrame.js */ "./internal/requestAnimationFrame.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "requestAnimationFrame", function() { return _internal_requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_37__["default"]; }); + +/* harmony import */ var _reset_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./reset.js */ "./reset.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "reset", function() { return _reset_js__WEBPACK_IMPORTED_MODULE_38__["default"]; }); + +/* harmony import */ var _resize_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./resize.js */ "./resize.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "resize", function() { return _resize_js__WEBPACK_IMPORTED_MODULE_39__["default"]; }); + +/* harmony import */ var _internal_setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./internal/setDefaultViewport.js */ "./internal/setDefaultViewport.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setDefaultViewport", function() { return _internal_setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_40__["default"]; }); + +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToPixelCoordinateSystem", function() { return _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_41__["default"]; }); + +/* harmony import */ var _setViewport_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./setViewport.js */ "./setViewport.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setViewport", function() { return _setViewport_js__WEBPACK_IMPORTED_MODULE_42__["default"]; }); + +/* harmony import */ var _internal_storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./internal/storedColorPixelDataToCanvasImageData.js */ "./internal/storedColorPixelDataToCanvasImageData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "storedColorPixelDataToCanvasImageData", function() { return _internal_storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_43__["default"]; }); + +/* harmony import */ var _internal_storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./internal/storedPixelDataToCanvasImageData.js */ "./internal/storedPixelDataToCanvasImageData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "storedPixelDataToCanvasImageData", function() { return _internal_storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_44__["default"]; }); + +/* harmony import */ var _internal_storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./internal/storedPixelDataToCanvasImageDataColorLUT.js */ "./internal/storedPixelDataToCanvasImageDataColorLUT.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "storedPixelDataToCanvasImageDataColorLUT", function() { return _internal_storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_45__["default"]; }); + +/* harmony import */ var _internal_storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js */ "./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "storedPixelDataToCanvasImageDataPseudocolorLUT", function() { return _internal_storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_46__["default"]; }); + +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "triggerEvent", function() { return _triggerEvent_js__WEBPACK_IMPORTED_MODULE_47__["default"]; }); + +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "updateImage", function() { return _updateImage_js__WEBPACK_IMPORTED_MODULE_48__["default"]; }); + +/* harmony import */ var _webgl_index_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ./webgl/index.js */ "./webgl/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "webGL", function() { return _webgl_index_js__WEBPACK_IMPORTED_MODULE_49__["default"]; }); + +// Internal (some of these are from old internal/legacy expose) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + // Rendering + +/** + * @module PixelCoordinateSystem + */ + +/** + * @module ViewportSettings + */ + +var cornerstone = { + drawImage: _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_11__["default"], + generateLut: _internal_generateLut_js__WEBPACK_IMPORTED_MODULE_15__["default"], + getDefaultViewport: _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_16__["default"], + requestAnimationFrame: _internal_requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_37__["default"], + storedPixelDataToCanvasImageData: _internal_storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_44__["default"], + storedColorPixelDataToCanvasImageData: _internal_storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_43__["default"], + storedPixelDataToCanvasImageDataColorLUT: _internal_storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_45__["default"], + storedPixelDataToCanvasImageDataPseudocolorLUT: _internal_storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_46__["default"], + internal: _internal_index_js__WEBPACK_IMPORTED_MODULE_23__["default"], + renderLabelMapImage: _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_32__["renderLabelMapImage"], + renderPseudoColorImage: _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_33__["renderPseudoColorImage"], + renderColorImage: _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_30__["renderColorImage"], + renderGrayscaleImage: _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_31__["renderGrayscaleImage"], + renderWebImage: _rendering_renderWebImage_js__WEBPACK_IMPORTED_MODULE_35__["renderWebImage"], + renderToCanvas: _rendering_renderToCanvas_js__WEBPACK_IMPORTED_MODULE_34__["default"], + canvasToPixel: _canvasToPixel_js__WEBPACK_IMPORTED_MODULE_6__["default"], + disable: _disable_js__WEBPACK_IMPORTED_MODULE_8__["default"], + displayImage: _displayImage_js__WEBPACK_IMPORTED_MODULE_9__["default"], + draw: _draw_js__WEBPACK_IMPORTED_MODULE_10__["default"], + drawInvalidated: _drawInvalidated_js__WEBPACK_IMPORTED_MODULE_12__["default"], + enable: _enable_js__WEBPACK_IMPORTED_MODULE_13__["default"], + getElementData: _enabledElementData_js__WEBPACK_IMPORTED_MODULE_4__["getElementData"], + removeElementData: _enabledElementData_js__WEBPACK_IMPORTED_MODULE_4__["removeElementData"], + getEnabledElement: _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"], + addEnabledElement: _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["addEnabledElement"], + getEnabledElementsByImageId: _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElementsByImageId"], + getEnabledElements: _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElements"], + addLayer: _layers_js__WEBPACK_IMPORTED_MODULE_2__["addLayer"], + removeLayer: _layers_js__WEBPACK_IMPORTED_MODULE_2__["removeLayer"], + getLayer: _layers_js__WEBPACK_IMPORTED_MODULE_2__["getLayer"], + getLayers: _layers_js__WEBPACK_IMPORTED_MODULE_2__["getLayers"], + getVisibleLayers: _layers_js__WEBPACK_IMPORTED_MODULE_2__["getVisibleLayers"], + setActiveLayer: _layers_js__WEBPACK_IMPORTED_MODULE_2__["setActiveLayer"], + getActiveLayer: _layers_js__WEBPACK_IMPORTED_MODULE_2__["getActiveLayer"], + purgeLayers: _layers_js__WEBPACK_IMPORTED_MODULE_2__["purgeLayers"], + setLayerImage: _layers_js__WEBPACK_IMPORTED_MODULE_2__["setLayerImage"], + fitToWindow: _fitToWindow_js__WEBPACK_IMPORTED_MODULE_14__["default"], + getDefaultViewportForImage: _getDefaultViewportForImage_js__WEBPACK_IMPORTED_MODULE_17__["default"], + setDefaultViewport: _internal_setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_40__["default"], + getImage: _getImage_js__WEBPACK_IMPORTED_MODULE_18__["default"], + getPixels: _getPixels_js__WEBPACK_IMPORTED_MODULE_19__["default"], + getStoredPixels: _getStoredPixels_js__WEBPACK_IMPORTED_MODULE_20__["default"], + getViewport: _getViewport_js__WEBPACK_IMPORTED_MODULE_21__["default"], + loadImage: _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["loadImage"], + loadAndCacheImage: _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["loadAndCacheImage"], + registerImageLoader: _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["registerImageLoader"], + registerUnknownImageLoader: _imageLoader_js__WEBPACK_IMPORTED_MODULE_5__["registerUnknownImageLoader"], + invalidate: _invalidate_js__WEBPACK_IMPORTED_MODULE_24__["default"], + invalidateImageId: _invalidateImageId_js__WEBPACK_IMPORTED_MODULE_25__["default"], + pageToPixel: _pageToPixel_js__WEBPACK_IMPORTED_MODULE_27__["default"], + pixelToCanvas: _pixelToCanvas_js__WEBPACK_IMPORTED_MODULE_29__["default"], + reset: _reset_js__WEBPACK_IMPORTED_MODULE_38__["default"], + resize: _resize_js__WEBPACK_IMPORTED_MODULE_39__["default"], + setToPixelCoordinateSystem: _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_41__["default"], + setViewport: _setViewport_js__WEBPACK_IMPORTED_MODULE_42__["default"], + updateImage: _updateImage_js__WEBPACK_IMPORTED_MODULE_48__["default"], + pixelDataToFalseColorData: _pixelDataToFalseColorData_js__WEBPACK_IMPORTED_MODULE_28__["default"], + rendering: _rendering_index_js__WEBPACK_IMPORTED_MODULE_36__["default"], + imageCache: _imageCache_js__WEBPACK_IMPORTED_MODULE_22__["default"], + metaData: _metaData_js__WEBPACK_IMPORTED_MODULE_26__["default"], + webGL: _webgl_index_js__WEBPACK_IMPORTED_MODULE_49__["default"], + colors: _colors_index_js__WEBPACK_IMPORTED_MODULE_7__["default"], + convertImageToFalseColorImage: _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["convertImageToFalseColorImage"], + convertToFalseColorImage: _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["convertToFalseColorImage"], + restoreImage: _falseColorMapping_js__WEBPACK_IMPORTED_MODULE_3__["restoreImage"], + EVENTS: _events_js__WEBPACK_IMPORTED_MODULE_0__["default"], + events: _events_js__WEBPACK_IMPORTED_MODULE_0__["events"], + triggerEvent: _triggerEvent_js__WEBPACK_IMPORTED_MODULE_47__["default"] +}; + +/* harmony default export */ __webpack_exports__["default"] = (cornerstone); + +/***/ }), + +/***/ "./internal/calculateTransform.js": +/*!****************************************!*\ + !*** ./internal/calculateTransform.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _transform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./transform.js */ "./internal/transform.js"); + +/** + * Calculate the transform for a Cornerstone enabled element + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element + * @param {Number} [scale] The viewport scale + * @return {Transform} The current transform + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, scale) { + var transform = new _transform_js__WEBPACK_IMPORTED_MODULE_0__["Transform"](); // Move to center of canvas + + transform.translate(enabledElement.canvas.width / 2, enabledElement.canvas.height / 2); // Apply the rotation before scaling for non square pixels + + var angle = enabledElement.viewport.rotation; + + if (angle !== 0) { + transform.rotate(angle * Math.PI / 180); + } // Apply the scale + + + var widthScale = enabledElement.viewport.scale; + var heightScale = enabledElement.viewport.scale; + var width = enabledElement.viewport.displayedArea.brhc.x - (enabledElement.viewport.displayedArea.tlhc.x - 1); + var height = enabledElement.viewport.displayedArea.brhc.y - (enabledElement.viewport.displayedArea.tlhc.y - 1); + + if (enabledElement.viewport.displayedArea.presentationSizeMode === 'NONE') { + if (enabledElement.image.rowPixelSpacing < enabledElement.image.columnPixelSpacing) { + widthScale *= enabledElement.image.columnPixelSpacing / enabledElement.image.rowPixelSpacing; + } else if (enabledElement.image.columnPixelSpacing < enabledElement.image.rowPixelSpacing) { + heightScale *= enabledElement.image.rowPixelSpacing / enabledElement.image.columnPixelSpacing; + } + } else { + // These should be good for "TRUE SIZE" and "MAGNIFY" + widthScale = enabledElement.viewport.displayedArea.columnPixelSpacing; + heightScale = enabledElement.viewport.displayedArea.rowPixelSpacing; + + if (enabledElement.viewport.displayedArea.presentationSizeMode === 'SCALE TO FIT') { + // Fit TRUE IMAGE image (width/height) to window + var verticalScale = enabledElement.canvas.height / (height * heightScale); + var horizontalScale = enabledElement.canvas.width / (width * widthScale); // Apply new scale + + widthScale = heightScale = Math.min(horizontalScale, verticalScale); + + if (enabledElement.viewport.displayedArea.rowPixelSpacing < enabledElement.viewport.displayedArea.columnPixelSpacing) { + widthScale *= enabledElement.viewport.displayedArea.columnPixelSpacing / enabledElement.viewport.displayedArea.rowPixelSpacing; + } else if (enabledElement.viewport.displayedArea.columnPixelSpacing < enabledElement.viewport.displayedArea.rowPixelSpacing) { + heightScale *= enabledElement.viewport.displayedArea.rowPixelSpacing / enabledElement.viewport.displayedArea.columnPixelSpacing; + } + } + } + + transform.scale(widthScale, heightScale); // Unrotate to so we can translate unrotated + + if (angle !== 0) { + transform.rotate(-angle * Math.PI / 180); + } // Apply the pan offset + + + transform.translate(enabledElement.viewport.translation.x, enabledElement.viewport.translation.y); // Rotate again so we can apply general scale + + if (angle !== 0) { + transform.rotate(angle * Math.PI / 180); + } + + if (scale !== undefined) { + // Apply the font scale + transform.scale(scale, scale); + } // Apply Flip if required + + + if (enabledElement.viewport.hflip) { + transform.scale(-1, 1); + } + + if (enabledElement.viewport.vflip) { + transform.scale(1, -1); + } // Move back from center of image + + + transform.translate(-width / 2, -height / 2); + return transform; +}); + +/***/ }), + +/***/ "./internal/computeAutoVoi.js": +/*!************************************!*\ + !*** ./internal/computeAutoVoi.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return computeAutoVoi; }); +/** + * Computes the VOI to display all the pixels if no VOI LUT data (Window Width/Window Center or voiLUT) exists on the viewport object. + * + * @param {Viewport} viewport - Object containing the viewport properties + * @param {Object} image An Image loaded by a Cornerstone Image Loader + * @returns {void} + * @memberof Internal + */ +function computeAutoVoi(viewport, image) { + if (hasVoi(viewport)) { + return; + } + + var maxVoi = image.maxPixelValue * image.slope + image.intercept; + var minVoi = image.minPixelValue * image.slope + image.intercept; + var ww = maxVoi - minVoi; + var wc = (maxVoi + minVoi) / 2; + + if (viewport.voi === undefined) { + viewport.voi = { + windowWidth: ww, + windowCenter: wc + }; + } else { + viewport.voi.windowWidth = ww; + viewport.voi.windowCenter = wc; + } +} +/** + * Check if viewport has voi LUT data + * @param {any} viewport The viewport to check for voi LUT data + * @returns {Boolean} true viewport has LUT data (Window Width/Window Center or voiLUT). Otherwise, false. + * @memberof Internal + */ + +function hasVoi(viewport) { + var hasLut = viewport.voiLUT && viewport.voiLUT.lut && viewport.voiLUT.lut.length > 0; + return hasLut || viewport.voi.windowWidth !== undefined && viewport.voi.windowCenter !== undefined; +} + +/***/ }), + +/***/ "./internal/createViewport.js": +/*!************************************!*\ + !*** ./internal/createViewport.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setDefaultViewport.js */ "./internal/setDefaultViewport.js"); + // eslint-disable-next-line valid-jsdoc + +/** + * Creates the default displayed area. + * C.10.4 Displayed Area Module: This Module describes Attributes required to define a Specified Displayed Area space. + * + * @returns {tlhc: {x,y}, brhc: {x, y},rowPixelSpacing: Number, columnPixelSpacing: Number, presentationSizeMode: Number} displayedArea object + * @memberof Internal + */ + +function createDefaultDisplayedArea() { + return { + // Top Left Hand Corner + tlhc: { + x: 1, + y: 1 + }, + // Bottom Right Hand Corner + brhc: { + x: 1, + y: 1 + }, + rowPixelSpacing: 1, + columnPixelSpacing: 1, + presentationSizeMode: 'NONE' + }; +} +/** + * Creates a new viewport object containing default values + * + * @returns {Viewport} viewport object + * @memberof Internal + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function () { + var displayedArea = createDefaultDisplayedArea(); + var initialDefaultViewport = { + scale: 1, + translation: { + x: 0, + y: 0 + }, + voi: { + windowWidth: undefined, + windowCenter: undefined + }, + invert: false, + pixelReplication: false, + rotation: 0, + hflip: false, + vflip: false, + modalityLUT: undefined, + voiLUT: undefined, + colormap: undefined, + labelmap: false, + displayedArea: displayedArea + }; + return Object.assign({}, initialDefaultViewport, _setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__["state"].viewport); +}); + +/***/ }), + +/***/ "./internal/drawCompositeImage.js": +/*!****************************************!*\ + !*** ./internal/drawCompositeImage.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _layers_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../layers.js */ "./layers.js"); +/* harmony import */ var _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../rendering/renderGrayscaleImage.js */ "./rendering/renderGrayscaleImage.js"); +/* harmony import */ var _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../rendering/renderColorImage.js */ "./rendering/renderColorImage.js"); +/* harmony import */ var _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../rendering/renderPseudoColorImage.js */ "./rendering/renderPseudoColorImage.js"); +/* harmony import */ var _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../rendering/renderLabelMapImage.js */ "./rendering/renderLabelMapImage.js"); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); + + + + + + + +function getViewportRatio(baseLayer, targetLayer) { + if (!baseLayer.syncProps) { + updateLayerSyncProps(baseLayer); + } + + if (!targetLayer.syncProps) { + updateLayerSyncProps(targetLayer); + } + + return targetLayer.syncProps.originalScale / baseLayer.syncProps.originalScale; +} + +function updateLayerSyncProps(layer) { + var syncProps = layer.syncProps || {}; // This is used to keep each of the layers' viewports in sync with the active layer + + syncProps.originalScale = layer.viewport.scale; + layer.syncProps = syncProps; +} // Sync all viewports based on active layer's viewport + + +function syncViewports(layers, activeLayer) { + // If we intend to keep the viewport's scale, translation and rotation in sync, + // loop through the layers + layers.forEach(function (layer) { + // Don't do anything to the active layer + // Don't do anything if this layer has no viewport + if (layer === activeLayer || !layer.viewport || !activeLayer.viewport) { + return; + } + + if (!layer.syncProps) { + updateLayerSyncProps(layer); + } + + var viewportRatio = getViewportRatio(activeLayer, layer); // Update the layer's translation and scale to keep them in sync with the first image + // based on the ratios between the images + + layer.viewport.scale = activeLayer.viewport.scale * viewportRatio; + layer.viewport.rotation = activeLayer.viewport.rotation; + layer.viewport.translation = { + x: activeLayer.viewport.translation.x / viewportRatio, + y: activeLayer.viewport.translation.y / viewportRatio + }; + layer.viewport.hflip = activeLayer.viewport.hflip; + layer.viewport.vflip = activeLayer.viewport.vflip; + }); +} +/** + * Internal function to render all layers for a Cornerstone enabled element + * + * @param {CanvasRenderingContext2D} context Canvas context to draw upon + * @param {EnabledElementLayer[]} layers The array of all layers for this enabled element + * @param {Boolean} invalidated A boolean whether or not this image has been invalidated and must be redrawn + * @returns {void} + * @memberof Internal + */ + + +function renderLayers(context, layers, invalidated) { + // Loop through each layer and draw it to the canvas + layers.forEach(function (layer, index) { + if (!layer.image) { + return; + } + + context.save(); // Set the layer's canvas to the pixel coordinate system + + layer.canvas = context.canvas; + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_5__["default"])(layer, context); // Render into the layer's canvas + + var colormap = layer.viewport.colormap || layer.options.colormap; + var labelmap = layer.viewport.labelmap; + var isInvalid = layer.invalid || invalidated; + + if (colormap && colormap !== '' && labelmap === true) { + Object(_rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_4__["addLabelMapLayer"])(layer, isInvalid); + } else if (colormap && colormap !== '') { + Object(_rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_3__["addPseudoColorLayer"])(layer, isInvalid); + } else if (layer.image.color === true) { + Object(_rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_2__["addColorLayer"])(layer, isInvalid); + } else { + // If this is the base layer, use the alpha channel for rendering of the grayscale image + var useAlphaChannel = index === 0; + Object(_rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_1__["addGrayscaleLayer"])(layer, isInvalid, useAlphaChannel); + } // Apply any global opacity settings that have been defined for this layer + + + if (layer.options && layer.options.opacity) { + context.globalAlpha = layer.options.opacity; + } else { + context.globalAlpha = 1; + } + + if (layer.options && layer.options.fillStyle) { + context.fillStyle = layer.options.fillStyle; + } // Set the pixelReplication property before drawing from the layer into the + // composite canvas + + + context.imageSmoothingEnabled = !layer.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Draw from the current layer's canvas onto the enabled element's canvas + + var sx = layer.viewport.displayedArea.tlhc.x - 1; + var sy = layer.viewport.displayedArea.tlhc.y - 1; + var width = layer.viewport.displayedArea.brhc.x - sx; + var height = layer.viewport.displayedArea.brhc.y - sy; + context.drawImage(layer.canvas, sx, sy, width, height, 0, 0, width, height); + context.restore(); + layer.invalid = false; + }); +} +/** + * Internal API function to draw a composite image to a given enabled element + * + * @param {EnabledElement} enabledElement An enabled element to draw into + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, invalidated) { + var element = enabledElement.element; + var allLayers = Object(_layers_js__WEBPACK_IMPORTED_MODULE_0__["getLayers"])(element); + var activeLayer = Object(_layers_js__WEBPACK_IMPORTED_MODULE_0__["getActiveLayer"])(element); + var visibleLayers = Object(_layers_js__WEBPACK_IMPORTED_MODULE_0__["getVisibleLayers"])(element); + var resynced = !enabledElement.lastSyncViewportsState && enabledElement.syncViewports; // This state will help us to determine if the user has re-synced the + // layers allowing us to make a new copy of the viewports + + enabledElement.lastSyncViewportsState = enabledElement.syncViewports; // Stores a copy of all viewports if the user has just synced them then we can use the + // copies to calculate anything later (ratio, translation offset, rotation offset, etc) + + if (resynced) { + allLayers.forEach(function (layer) { + if (layer.viewport) { + updateLayerSyncProps(layer); + } + }); + } // Sync all viewports in case it's activated + + + if (enabledElement.syncViewports === true) { + syncViewports(visibleLayers, activeLayer); + } // Get the enabled element's canvas so we can draw to it + + + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Render all visible layers + + renderLayers(context, visibleLayers, invalidated); +}); + +/***/ }), + +/***/ "./internal/drawImage.js": +/*!*******************************!*\ + !*** ./internal/drawImage.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Internal API function to draw an image to a given enabled element + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} [invalidated = false] - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof Internal + */ +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement) { + var invalidated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + enabledElement.needsRedraw = true; + + if (invalidated) { + enabledElement.invalid = true; + } +}); + +/***/ }), + +/***/ "./internal/drawImageSync.js": +/*!***********************************!*\ + !*** ./internal/drawImageSync.js ***! + \***********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); +/* harmony import */ var _drawCompositeImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./drawCompositeImage.js */ "./internal/drawCompositeImage.js"); +/* harmony import */ var _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../rendering/renderColorImage.js */ "./rendering/renderColorImage.js"); +/* harmony import */ var _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../rendering/renderGrayscaleImage.js */ "./rendering/renderGrayscaleImage.js"); +/* harmony import */ var _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../rendering/renderPseudoColorImage.js */ "./rendering/renderPseudoColorImage.js"); +/* harmony import */ var _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../rendering/renderLabelMapImage.js */ "./rendering/renderLabelMapImage.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../events.js */ "./events.js"); + + + + + + + + +/** + * Draw an image to a given enabled element synchronously + * + * @param {EnabledElement} enabledElement An enabled element to draw into + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, invalidated) { + var image = enabledElement.image; + var element = enabledElement.element; + var layers = enabledElement.layers || []; // Check if enabledElement can be redrawn + + if (!enabledElement.canvas || !(enabledElement.image || layers.length)) { + return; + } // Start measuring the time needed to draw the image/layers + + + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + image.stats = { + lastGetPixelDataTime: -1.0, + lastStoredPixelDataToCanvasImageDataTime: -1.0, + lastPutImageDataTime: -1.0, + lastRenderTime: -1.0, + lastLutGenerateTime: -1.0 + }; + + if (layers && layers.length) { + Object(_drawCompositeImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement, invalidated); + } else if (image) { + var render = image.render; + + if (!render) { + if (enabledElement.viewport.colormap && enabledElement.viewport.colormap !== '' && enabledElement.image.labelmap === true) { + render = _rendering_renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_5__["renderLabelMapImage"]; + } else if (enabledElement.viewport.colormap && enabledElement.viewport.colormap !== '') { + render = _rendering_renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_4__["renderPseudoColorImage"]; + } else if (image.color) { + render = _rendering_renderColorImage_js__WEBPACK_IMPORTED_MODULE_2__["renderColorImage"]; + } else { + render = _rendering_renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_3__["renderGrayscaleImage"]; + } + } + + render(enabledElement, invalidated); + } // Calculate how long it took to draw the image/layers + + + var renderTimeInMs = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var eventData = { + viewport: enabledElement.viewport, + element: element, + image: image, + enabledElement: enabledElement, + canvasContext: enabledElement.canvas.getContext('2d'), + renderTimeInMs: renderTimeInMs + }; + image.stats.lastRenderTime = renderTimeInMs; + enabledElement.invalid = false; + enabledElement.needsRedraw = false; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].IMAGE_RENDERED, eventData); +}); + +/***/ }), + +/***/ "./internal/generateColorLut.js": +/*!**************************************!*\ + !*** ./internal/generateColorLut.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getVOILut_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getVOILut.js */ "./internal/getVOILut.js"); + +/** + * Creates a LUT used while rendering to convert stored pixel values to + * display pixels + * + * @param {Image} image A Cornerstone Image Object + * @param {Number} windowWidth The Window Width + * @param {Number} windowCenter The Window Center + * @param {Boolean} invert A boolean describing whether or not the image has been inverted + * @param {Array} [voiLUT] A Volume of Interest Lookup Table + * + * @returns {Uint8ClampedArray} A lookup table to apply to the image + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, windowWidth, windowCenter, invert, voiLUT) { + var maxPixelValue = image.maxPixelValue; + var minPixelValue = image.minPixelValue; + var offset = Math.min(minPixelValue, 0); + + if (image.cachedLut === undefined) { + var length = maxPixelValue - offset + 1; + image.cachedLut = {}; + image.cachedLut.lutArray = new Uint8ClampedArray(length); + } + + var lut = image.cachedLut.lutArray; + var vlutfn = Object(_getVOILut_js__WEBPACK_IMPORTED_MODULE_0__["default"])(windowWidth, windowCenter, voiLUT); + + if (invert === true) { + for (var storedValue = minPixelValue; storedValue <= maxPixelValue; storedValue++) { + lut[storedValue + -offset] = 255 - vlutfn(storedValue); + } + } else { + for (var _storedValue = minPixelValue; _storedValue <= maxPixelValue; _storedValue++) { + lut[_storedValue + -offset] = vlutfn(_storedValue); + } + } + + return lut; +}); + +/***/ }), + +/***/ "./internal/generateLut.js": +/*!*********************************!*\ + !*** ./internal/generateLut.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getModalityLUT_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getModalityLUT.js */ "./internal/getModalityLUT.js"); +/* harmony import */ var _getVOILut_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getVOILut.js */ "./internal/getVOILut.js"); + + +/** + * Creates a LUT used while rendering to convert stored pixel values to + * display pixels + * + * @param {Image} image A Cornerstone Image Object + * @param {Number} windowWidth The Window Width + * @param {Number} windowCenter The Window Center + * @param {Boolean} invert A boolean describing whether or not the image has been inverted + * @param {Array} [modalityLUT] A modality Lookup Table + * @param {Array} [voiLUT] A Volume of Interest Lookup Table + * + * @returns {Uint8ClampedArray} A lookup table to apply to the image + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, windowWidth, windowCenter, invert, modalityLUT, voiLUT) { + var maxPixelValue = image.maxPixelValue; + var minPixelValue = image.minPixelValue; + var offset = Math.min(minPixelValue, 0); + + if (image.cachedLut === undefined) { + var length = maxPixelValue - offset + 1; + image.cachedLut = {}; + image.cachedLut.lutArray = new Uint8ClampedArray(length); + } + + var lut = image.cachedLut.lutArray; + var mlutfn = Object(_getModalityLUT_js__WEBPACK_IMPORTED_MODULE_0__["default"])(image.slope, image.intercept, modalityLUT); + var vlutfn = Object(_getVOILut_js__WEBPACK_IMPORTED_MODULE_1__["default"])(windowWidth, windowCenter, voiLUT); + + if (invert === true) { + for (var storedValue = minPixelValue; storedValue <= maxPixelValue; storedValue++) { + lut[storedValue + -offset] = 255 - vlutfn(mlutfn(storedValue)); + } + } else { + for (var _storedValue = minPixelValue; _storedValue <= maxPixelValue; _storedValue++) { + lut[_storedValue + -offset] = vlutfn(mlutfn(_storedValue)); + } + } + + return lut; +}); + +/***/ }), + +/***/ "./internal/getCanvas.js": +/*!*******************************!*\ + !*** ./internal/getCanvas.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getCanvas; }); +var CANVAS_CSS_CLASS = 'cornerstone-canvas'; +/** + * Create a canvas and append it to the element + * + * @param {HTMLElement} element An HTML Element + * @return {HTMLElement} canvas A Canvas DOM element + */ + +function createCanvas(element) { + var canvas = document.createElement('canvas'); + canvas.style.display = 'block'; + canvas.classList.add(CANVAS_CSS_CLASS); + element.appendChild(canvas); + return canvas; +} +/** + * Create a canvas or returns the one that already exists for a given element + * + * @param {HTMLElement} element An HTML Element + * @return {HTMLElement} canvas A Canvas DOM element + */ + + +function getCanvas(element) { + var selector = "canvas.".concat(CANVAS_CSS_CLASS); + return element.querySelector(selector) || createCanvas(element); +} + +/***/ }), + +/***/ "./internal/getDefaultViewport.js": +/*!****************************************!*\ + !*** ./internal/getDefaultViewport.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _createViewport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createViewport.js */ "./internal/createViewport.js"); +/* harmony import */ var _getImageFitScale_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getImageFitScale.js */ "./internal/getImageFitScale.js"); + + +/** + * Creates a new viewport object containing default values for the image and canvas + * + * @param {HTMLElement} canvas A Canvas DOM element + * @param {Image} image A Cornerstone Image Object + * @returns {Viewport} viewport object + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (canvas, image) { + if (canvas === undefined) { + throw new Error('getDefaultViewport: parameter canvas must not be undefined'); + } + + if (image === undefined) { + return Object(_createViewport_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + } // Fit image to window + + + var scale = Object(_getImageFitScale_js__WEBPACK_IMPORTED_MODULE_1__["default"])(canvas, image, 0).scaleFactor; + return { + scale: scale, + translation: { + x: 0, + y: 0 + }, + voi: { + windowWidth: image.windowWidth, + windowCenter: image.windowCenter + }, + invert: image.invert, + pixelReplication: false, + rotation: 0, + hflip: false, + vflip: false, + modalityLUT: image.modalityLUT, + voiLUT: image.voiLUT, + colormap: image.colormap, + labelmap: Boolean(image.labelmap), + displayedArea: { + tlhc: { + x: 1, + y: 1 + }, + brhc: { + x: image.columns, + y: image.rows + }, + rowPixelSpacing: image.rowPixelSpacing === undefined ? 1 : image.rowPixelSpacing, + columnPixelSpacing: image.columnPixelSpacing === undefined ? 1 : image.columnPixelSpacing, + presentationSizeMode: 'NONE' + } + }; +}); + +/***/ }), + +/***/ "./internal/getImageFitScale.js": +/*!**************************************!*\ + !*** ./internal/getImageFitScale.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validator.js */ "./internal/validator.js"); +/* harmony import */ var _getImageSize_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getImageSize.js */ "./internal/getImageSize.js"); + + +/** + * Calculates the horizontal, vertical and minimum scale factor for an image + @param {{width, height}} windowSize The window size where the image is displayed. This can be any HTML element or structure with a width, height fields (e.g. canvas). + * @param {any} image The cornerstone image object + * @param {Number} rotation Optional. The rotation angle of the image. + * @return {{horizontalScale, verticalScale, scaleFactor}} The calculated horizontal, vertical and minimum scale factor + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (windowSize, image) { + var rotation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + Object(_validator_js__WEBPACK_IMPORTED_MODULE_0__["validateParameterUndefinedOrNull"])(windowSize, 'getImageScale: parameter windowSize must not be undefined'); + Object(_validator_js__WEBPACK_IMPORTED_MODULE_0__["validateParameterUndefinedOrNull"])(image, 'getImageScale: parameter image must not be undefined'); + var imageSize = Object(_getImageSize_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image, rotation); + var rowPixelSpacing = image.rowPixelSpacing || 1; + var columnPixelSpacing = image.columnPixelSpacing || 1; + var verticalRatio = 1; + var horizontalRatio = 1; + + if (rowPixelSpacing < columnPixelSpacing) { + horizontalRatio = columnPixelSpacing / rowPixelSpacing; + } else { + // even if they are equal we want to calculate this ratio (the ration might be 0.5) + verticalRatio = rowPixelSpacing / columnPixelSpacing; + } + + var verticalScale = windowSize.height / imageSize.height / verticalRatio; + var horizontalScale = windowSize.width / imageSize.width / horizontalRatio; // Fit image to window + + return { + verticalScale: verticalScale, + horizontalScale: horizontalScale, + scaleFactor: Math.min(horizontalScale, verticalScale) + }; +}); + +/***/ }), + +/***/ "./internal/getImageSize.js": +/*!**********************************!*\ + !*** ./internal/getImageSize.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validator.js */ "./internal/validator.js"); + +/** + * Check if the angle is rotated + * @param {Number} rotation the rotation angle + * @returns {Boolean} true if the angle is rotated; Otherwise, false. + * @memberof Internal + */ + +function isRotated(rotation) { + return !(rotation === null || rotation === undefined || rotation === 0 || rotation === 180); +} +/** + * Retrieves the current image dimensions given an enabled element + * + * @param {any} image The Cornerstone image. + * @param {Number} rotation Optional. The rotation angle of the image. + * @return {{width:Number, height:Number}} The Image dimensions + * @memberof Internal + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (image) { + var rotation = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; + Object(_validator_js__WEBPACK_IMPORTED_MODULE_0__["validateParameterUndefinedOrNull"])(image, 'getImageSize: parameter image must not be undefined'); + Object(_validator_js__WEBPACK_IMPORTED_MODULE_0__["validateParameterUndefinedOrNull"])(image.width, 'getImageSize: parameter image must have width'); + Object(_validator_js__WEBPACK_IMPORTED_MODULE_0__["validateParameterUndefinedOrNull"])(image.height, 'getImageSize: parameter image must have height'); + + if (isRotated(rotation)) { + return { + height: image.width, + width: image.height + }; + } + + return { + width: image.width, + height: image.height + }; +}); + +/***/ }), + +/***/ "./internal/getModalityLUT.js": +/*!************************************!*\ + !*** ./internal/getModalityLUT.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Generates a linear modality transformation function + * + * See DICOM PS3.3 C.11.1 Modality LUT Module + * + * http://dicom.nema.org/medical/Dicom/current/output/chtml/part03/sect_C.11.html + * + * @param {Number} slope m in the equation specified by Rescale Intercept (0028,1052). + * @param {Number} intercept The value b in relationship between stored values (SV) and the output units specified in Rescale Type (0028,1054). + + Output units = m*SV + b. + * @return {function(*): *} A linear modality LUT function. Given a stored pixel it returns the modality pixel value + * @memberof Internal + */ +function generateLinearModalityLUT(slope, intercept) { + return function (storedPixelValue) { + return storedPixelValue * slope + intercept; + }; +} + +function generateNonLinearModalityLUT(modalityLUT) { + var minValue = modalityLUT.lut[0]; + var maxValue = modalityLUT.lut[modalityLUT.lut.length - 1]; + var maxValueMapped = modalityLUT.firstValueMapped + modalityLUT.lut.length; + return function (storedPixelValue) { + if (storedPixelValue < modalityLUT.firstValueMapped) { + return minValue; + } else if (storedPixelValue >= maxValueMapped) { + return maxValue; + } + + return modalityLUT.lut[storedPixelValue]; + }; +} +/** + * Get the appropriate Modality LUT for the current situation. + * + * @param {Number} [slope] m in the equation specified by Rescale Intercept (0028,1052). + * @param {Number} [intercept] The value b in relationship between stored values (SV) and the output units specified in Rescale Type (0028,1054). + * @param {Function} [modalityLUT] A modality LUT function. Given a stored pixel it returns the modality pixel value. + * + * @return {function(*): *} A modality LUT function. Given a stored pixel it returns the modality pixel value. + * @memberof Internal + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (slope, intercept, modalityLUT) { + if (modalityLUT) { + return generateNonLinearModalityLUT(modalityLUT); + } + + return generateLinearModalityLUT(slope, intercept); +}); + +/***/ }), + +/***/ "./internal/getTransform.js": +/*!**********************************!*\ + !*** ./internal/getTransform.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _calculateTransform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./calculateTransform.js */ "./internal/calculateTransform.js"); + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement) { + // For now we will calculate it every time it is requested. + // In the future, we may want to cache it in the enabled element to speed things up. + return Object(_calculateTransform_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement); +}); + +/***/ }), + +/***/ "./internal/getVOILut.js": +/*!*******************************!*\ + !*** ./internal/getVOILut.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } + +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } + +function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } + +function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } + +/* eslint no-bitwise: 0 */ + +/** + * Volume of Interest Lookup Table Function + * + * @typedef {Function} VOILUTFunction + * + * @param {Number} modalityLutValue + * @returns {Number} transformed value + * @memberof Objects + */ + +/** + * @module: VOILUT + */ + +/** + * + * @param {Number} windowWidth Window Width + * @param {Number} windowCenter Window Center + * @returns {VOILUTFunction} VOI LUT mapping function + * @memberof VOILUT + */ +function generateLinearVOILUT(windowWidth, windowCenter) { + return function (modalityLutValue) { + return ((modalityLutValue - windowCenter) / windowWidth + 0.5) * 255.0; + }; +} +/** + * Generate a non-linear volume of interest lookup table + * + * @param {LUT} voiLUT Volume of Interest Lookup Table Object + * + * @returns {VOILUTFunction} VOI LUT mapping function + * @memberof VOILUT + */ + + +function generateNonLinearVOILUT(voiLUT) { + // We don't trust the voiLUT.numBitsPerEntry, mainly thanks to Agfa! + var bitsPerEntry = Math.max.apply(Math, _toConsumableArray(voiLUT.lut)).toString(2).length; + var shift = bitsPerEntry - 8; + var minValue = voiLUT.lut[0] >> shift; + var maxValue = voiLUT.lut[voiLUT.lut.length - 1] >> shift; + var maxValueMapped = voiLUT.firstValueMapped + voiLUT.lut.length - 1; + return function (modalityLutValue) { + if (modalityLutValue < voiLUT.firstValueMapped) { + return minValue; + } else if (modalityLutValue >= maxValueMapped) { + return maxValue; + } + + return voiLUT.lut[modalityLutValue - voiLUT.firstValueMapped] >> shift; + }; +} +/** + * Retrieve a VOI LUT mapping function given the current windowing settings + * and the VOI LUT for the image + * + * @param {Number} windowWidth Window Width + * @param {Number} windowCenter Window Center + * @param {LUT} [voiLUT] Volume of Interest Lookup Table Object + * + * @return {VOILUTFunction} VOI LUT mapping function + * @memberof VOILUT + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (windowWidth, windowCenter, voiLUT) { + if (voiLUT) { + return generateNonLinearVOILUT(voiLUT); + } + + return generateLinearVOILUT(windowWidth, windowCenter); +}); + +/***/ }), + +/***/ "./internal/guid.js": +/*!**************************!*\ + !*** ./internal/guid.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function s4() { + return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); +} +/** + * Generate a unique identifier + * + * @return {string} A unique identifier + * @memberof Internal + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function () { + return "".concat(s4() + s4(), "-").concat(s4(), "-").concat(s4(), "-").concat(s4(), "-").concat(s4()).concat(s4()).concat(s4()); +}); + +/***/ }), + +/***/ "./internal/index.js": +/*!***************************!*\ + !*** ./internal/index.js ***! + \***************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _transform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./transform.js */ "./internal/transform.js"); +/* harmony import */ var _calculateTransform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./calculateTransform.js */ "./internal/calculateTransform.js"); +/* harmony import */ var _drawImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./drawImage.js */ "./internal/drawImage.js"); +/* harmony import */ var _generateLut_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./generateLut.js */ "./internal/generateLut.js"); +/* harmony import */ var _getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _getTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getTransform.js */ "./internal/getTransform.js"); +/* harmony import */ var _requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./requestAnimationFrame.js */ "./internal/requestAnimationFrame.js"); +/* harmony import */ var _setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./setDefaultViewport.js */ "./internal/setDefaultViewport.js"); +/* harmony import */ var _storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./storedColorPixelDataToCanvasImageData.js */ "./internal/storedColorPixelDataToCanvasImageData.js"); +/* harmony import */ var _storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./storedPixelDataToCanvasImageData.js */ "./internal/storedPixelDataToCanvasImageData.js"); +/* harmony import */ var _storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./storedPixelDataToCanvasImageDataColorLUT.js */ "./internal/storedPixelDataToCanvasImageDataColorLUT.js"); +/* harmony import */ var _storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./storedPixelDataToCanvasImageDataPseudocolorLUT.js */ "./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js"); +/* harmony import */ var _storedPixelDataToCanvasImageDataRGBA_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./storedPixelDataToCanvasImageDataRGBA.js */ "./internal/storedPixelDataToCanvasImageDataRGBA.js"); + + + + + + + + + + + + + +/** + * @module Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = ({ + drawImage: _drawImage_js__WEBPACK_IMPORTED_MODULE_2__["default"], + generateLut: _generateLut_js__WEBPACK_IMPORTED_MODULE_3__["default"], + getDefaultViewport: _getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_4__["default"], + requestAnimationFrame: _requestAnimationFrame_js__WEBPACK_IMPORTED_MODULE_6__["default"], + setDefaultViewport: _setDefaultViewport_js__WEBPACK_IMPORTED_MODULE_7__["default"], + storedPixelDataToCanvasImageData: _storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_9__["default"], + storedPixelDataToCanvasImageDataRGBA: _storedPixelDataToCanvasImageDataRGBA_js__WEBPACK_IMPORTED_MODULE_12__["default"], + storedPixelDataToCanvasImageDataColorLUT: _storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_10__["default"], + storedPixelDataToCanvasImageDataPseudocolorLUT: _storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_11__["default"], + storedColorPixelDataToCanvasImageData: _storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_8__["default"], + getTransform: _getTransform_js__WEBPACK_IMPORTED_MODULE_5__["default"], + calculateTransform: _calculateTransform_js__WEBPACK_IMPORTED_MODULE_1__["default"], + Transform: _transform_js__WEBPACK_IMPORTED_MODULE_0__["Transform"] +}); + +/***/ }), + +/***/ "./internal/now.js": +/*!*************************!*\ + !*** ./internal/now.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * @module Polyfills + */ + +/** + * Use the performance.now() method if possible, and if not, use Date.now() + * + * @return {number} Time elapsed since the time origin + * @memberof Polyfills + */ +/* harmony default export */ __webpack_exports__["default"] = (function () { + if (window.performance) { + return performance.now(); + } + + return Date.now(); +}); + +/***/ }), + +/***/ "./internal/requestAnimationFrame.js": +/*!*******************************************!*\ + !*** ./internal/requestAnimationFrame.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function requestFrame(callback) { + window.setTimeout(callback, 1000 / 60); +} +/** + * Polyfills requestAnimationFrame for older browsers. + * + * @param {Function} callback A parameter specifying a function to call when it's time to update your animation for the next repaint. The callback has one single argument, a DOMHighResTimeStamp, which indicates the current time (the time returned from performance.now() ) for when requestAnimationFrame starts to fire callbacks. + * + * @return {Number} A long integer value, the request id, that uniquely identifies the entry in the callback list. This is a non-zero value, but you may not make any other assumptions about its value. You can pass this value to window.cancelAnimationFrame() to cancel the refresh callback request. + * @memberof Polyfills + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (callback) { + return window.requestAnimationFrame(callback) || window.webkitRequestAnimationFrame(callback) || window.mozRequestAnimationFrame(callback) || window.oRequestAnimationFrame(callback) || window.msRequestAnimationFrame(callback) || requestFrame(callback); +}); + +/***/ }), + +/***/ "./internal/setDefaultViewport.js": +/*!****************************************!*\ + !*** ./internal/setDefaultViewport.js ***! + \****************************************/ +/*! exports provided: default, state */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "state", function() { return state; }); +var state = { + viewport: {} +}; +/** + * Sets new default values for `getDefaultViewport` + * + * @param {Object} viewport - Object that sets new default values for getDefaultViewport + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (viewport) { + state.viewport = viewport || {}; +}); + + +/***/ }), + +/***/ "./internal/storedColorPixelDataToCanvasImageData.js": +/*!***********************************************************!*\ + !*** ./internal/storedColorPixelDataToCanvasImageData.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + +/** + * Converts stored color pixel values to display pixel values using a LUT. + * + * Note: Skips alpha value for any input image pixel data. + * + * @param {Image} image A Cornerstone Image Object + * @param {Array} lut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, lut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var numPixels = pixelData.length; // NOTE: As of Nov 2014, most javascript engines have lower performance when indexing negative indexes. + // We have a special code path for this case that improves performance. Thanks to @jpambrun for this enhancement + + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Red + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Green + + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex] + -minPixelValue]; // Blue + + storedPixelDataIndex += 2; + canvasImageDataIndex += 2; + } + } else { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++]]; // Red + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++]]; // Green + + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex]]; // Blue + + storedPixelDataIndex += 2; + canvasImageDataIndex += 2; + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; +}); + +/***/ }), + +/***/ "./internal/storedPixelDataToCanvasImageData.js": +/*!******************************************************!*\ + !*** ./internal/storedPixelDataToCanvasImageData.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + +/** + * This function transforms stored pixel values into a canvas image data buffer + * by using a LUT. This is the most performance sensitive code in cornerstone and + * we use a special trick to make this go as fast as possible. Specifically we + * use the alpha channel only to control the luminance rather than the red, green and + * blue channels which makes it over 3x faster. The canvasImageDataData buffer needs + * to be previously filled with white pixels. + * + * NOTE: Attribution would be appreciated if you use this technique! + * + * @param {Image} image A Cornerstone Image Object + * @param {Array} lut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, lut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var numPixels = pixelData.length; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 3; + var storedPixelDataIndex = 0; // NOTE: As of Nov 2014, most javascript engines have lower performance when indexing negative indexes. + // We have a special code path for this case that improves performance. Thanks to @jpambrun for this enhancement + // Added two paths (Int16Array, Uint16Array) to avoid polymorphic deoptimization in chrome. + + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + + if (pixelData instanceof Int16Array) { + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Alpha + + canvasImageDataIndex += 4; + } + } else { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex++]]; // Alpha + + canvasImageDataIndex += 4; + } + } + } else if (pixelData instanceof Uint16Array) { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex++]]; // Alpha + + canvasImageDataIndex += 4; + } + } else if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Alpha + + canvasImageDataIndex += 4; + } + } else { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex] = lut[pixelData[storedPixelDataIndex++]]; // Alpha + + canvasImageDataIndex += 4; + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; +}); + +/***/ }), + +/***/ "./internal/storedPixelDataToCanvasImageDataColorLUT.js": +/*!**************************************************************!*\ + !*** ./internal/storedPixelDataToCanvasImageDataColorLUT.js ***! + \**************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../colors/index.js */ "./colors/index.js"); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + + +/** + * + * @param {Image} image A Cornerstone Image Object + * @param {LookupTable|Array} colorLut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +function storedPixelDataToCanvasImageDataColorLUT(image, colorLut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + var numPixels = pixelData.length; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var rgba; + var clut; + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + + if (colorLut instanceof _colors_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].LookupTable) { + clut = colorLut.Table; + } else { + clut = colorLut; + } + + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + rgba = clut[pixelData[storedPixelDataIndex++] + -minPixelValue]; + canvasImageDataData[canvasImageDataIndex++] = rgba[0]; + canvasImageDataData[canvasImageDataIndex++] = rgba[1]; + canvasImageDataData[canvasImageDataIndex++] = rgba[2]; + canvasImageDataData[canvasImageDataIndex++] = rgba[3]; + } + } else { + while (storedPixelDataIndex < numPixels) { + rgba = clut[pixelData[storedPixelDataIndex++]]; + canvasImageDataData[canvasImageDataIndex++] = rgba[0]; + canvasImageDataData[canvasImageDataIndex++] = rgba[1]; + canvasImageDataData[canvasImageDataIndex++] = rgba[2]; + canvasImageDataData[canvasImageDataIndex++] = rgba[3]; + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; +} + +/* harmony default export */ __webpack_exports__["default"] = (storedPixelDataToCanvasImageDataColorLUT); + +/***/ }), + +/***/ "./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js": +/*!********************************************************************!*\ + !*** ./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js ***! + \********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../colors/index.js */ "./colors/index.js"); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + + +/** + * + * @param {Image} image A Cornerstone Image Object + * @param {Array} grayscaleLut Lookup table array + * @param {LookupTable|Array} colorLut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +function storedPixelDataToCanvasImageDataPseudocolorLUT(image, grayscaleLut, colorLut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + var numPixels = pixelData.length; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var grayscale; + var rgba; + var clut; + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + + if (colorLut instanceof _colors_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].LookupTable) { + clut = colorLut.Table; + } else { + clut = colorLut; + } + + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + grayscale = grayscaleLut[pixelData[storedPixelDataIndex++] + -minPixelValue]; + rgba = clut[grayscale]; + canvasImageDataData[canvasImageDataIndex++] = rgba[0]; + canvasImageDataData[canvasImageDataIndex++] = rgba[1]; + canvasImageDataData[canvasImageDataIndex++] = rgba[2]; + canvasImageDataData[canvasImageDataIndex++] = rgba[3]; + } + } else { + while (storedPixelDataIndex < numPixels) { + grayscale = grayscaleLut[pixelData[storedPixelDataIndex++]]; + rgba = clut[grayscale]; + canvasImageDataData[canvasImageDataIndex++] = rgba[0]; + canvasImageDataData[canvasImageDataIndex++] = rgba[1]; + canvasImageDataData[canvasImageDataIndex++] = rgba[2]; + canvasImageDataData[canvasImageDataIndex++] = rgba[3]; + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; +} + +/* harmony default export */ __webpack_exports__["default"] = (storedPixelDataToCanvasImageDataPseudocolorLUT); + +/***/ }), + +/***/ "./internal/storedPixelDataToCanvasImageDataRGBA.js": +/*!**********************************************************!*\ + !*** ./internal/storedPixelDataToCanvasImageDataRGBA.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + +/** + * This function transforms stored pixel values into a canvas image data buffer + * by using a LUT. + * + * @param {Image} image A Cornerstone Image Object + * @param {Array} lut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, lut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var numPixels = pixelData.length; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var pixelValue; // NOTE: As of Nov 2014, most javascript engines have lower performance when indexing negative indexes. + // We have a special code path for this case that improves performance. Thanks to @jpambrun for this enhancement + // Added two paths (Int16Array, Uint16Array) to avoid polymorphic deoptimization in chrome. + + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + + if (pixelData instanceof Int16Array) { + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + pixelValue = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = 255; // Alpha + } + } else { + while (storedPixelDataIndex < numPixels) { + pixelValue = lut[pixelData[storedPixelDataIndex++]]; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = 255; // Alpha + } + } + } else if (pixelData instanceof Uint16Array) { + while (storedPixelDataIndex < numPixels) { + pixelValue = lut[pixelData[storedPixelDataIndex++]]; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = 255; // Alpha + } + } else if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + pixelValue = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = 255; // Alpha + } + } else { + while (storedPixelDataIndex < numPixels) { + pixelValue = lut[pixelData[storedPixelDataIndex++]]; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = pixelValue; + canvasImageDataData[canvasImageDataIndex++] = 255; // Alpha + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; +}); + +/***/ }), + +/***/ "./internal/storedRGBAPixelDataToCanvasImageData.js": +/*!**********************************************************!*\ + !*** ./internal/storedRGBAPixelDataToCanvasImageData.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./now.js */ "./internal/now.js"); + +/** + * Converts stored RGBA color pixel values to display pixel values using a LUT. + * + * @param {Image} image A Cornerstone Image Object + * @param {Array} lut Lookup table array + * @param {Uint8ClampedArray} canvasImageDataData canvasImageData.data buffer filled with white pixels + * + * @returns {void} + * @memberof Internal + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, lut, canvasImageDataData) { + var start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var pixelData = image.getPixelData(); + image.stats.lastGetPixelDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var numPixels = pixelData.length; // NOTE: As of Nov 2014, most javascript engines have lower performance when indexing negative indexes. + // We have a special code path for this case that improves performance. Thanks to @jpambrun for this enhancement + + start = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + + if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Red + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Green + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++] + -minPixelValue]; // Blue + + canvasImageDataData[canvasImageDataIndex++] = pixelData[storedPixelDataIndex++]; + } + } else { + while (storedPixelDataIndex < numPixels) { + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++]]; // Red + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++]]; // Green + + canvasImageDataData[canvasImageDataIndex++] = lut[pixelData[storedPixelDataIndex++]]; // Blue + + canvasImageDataData[canvasImageDataIndex++] = pixelData[storedPixelDataIndex++]; + } + } + + image.stats.lastStoredPixelDataToCanvasImageDataTime = Object(_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; +}); + +/***/ }), + +/***/ "./internal/transform.js": +/*!*******************************!*\ + !*** ./internal/transform.js ***! + \*******************************/ +/*! exports provided: Transform */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Transform", function() { return Transform; }); +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +// By Simon Sarris +// Www.simonsarris.com +// Sarris@acm.org +// +// Free to use and distribute at will +// So long as you are nice to people, etc +// Simple class for keeping track of the current transformation matrix +// For instance: +// Var t = new Transform(); +// T.rotate(5); +// Var m = t.m; +// Ctx.setTransform(m[0], m[1], m[2], m[3], m[4], m[5]); +// Is equivalent to: +// Ctx.rotate(5); +// But now you can retrieve it :) +// Remember that this does not account for any CSS transforms applied to the canvas +var Transform = +/*#__PURE__*/ +function () { + function Transform() { + _classCallCheck(this, Transform); + + this.reset(); + } + + _createClass(Transform, [{ + key: "reset", + value: function reset() { + this.m = [1, 0, 0, 1, 0, 0]; + } + }, { + key: "clone", + value: function clone() { + var transform = new Transform(); + transform.m[0] = this.m[0]; + transform.m[1] = this.m[1]; + transform.m[2] = this.m[2]; + transform.m[3] = this.m[3]; + transform.m[4] = this.m[4]; + transform.m[5] = this.m[5]; + return transform; + } + }, { + key: "multiply", + value: function multiply(matrix) { + var m11 = this.m[0] * matrix.m[0] + this.m[2] * matrix.m[1]; + var m12 = this.m[1] * matrix.m[0] + this.m[3] * matrix.m[1]; + var m21 = this.m[0] * matrix.m[2] + this.m[2] * matrix.m[3]; + var m22 = this.m[1] * matrix.m[2] + this.m[3] * matrix.m[3]; + var dx = this.m[0] * matrix.m[4] + this.m[2] * matrix.m[5] + this.m[4]; + var dy = this.m[1] * matrix.m[4] + this.m[3] * matrix.m[5] + this.m[5]; + this.m[0] = m11; + this.m[1] = m12; + this.m[2] = m21; + this.m[3] = m22; + this.m[4] = dx; + this.m[5] = dy; + } + }, { + key: "invert", + value: function invert() { + var d = 1 / (this.m[0] * this.m[3] - this.m[1] * this.m[2]); + var m0 = this.m[3] * d; + var m1 = -this.m[1] * d; + var m2 = -this.m[2] * d; + var m3 = this.m[0] * d; + var m4 = d * (this.m[2] * this.m[5] - this.m[3] * this.m[4]); + var m5 = d * (this.m[1] * this.m[4] - this.m[0] * this.m[5]); + this.m[0] = m0; + this.m[1] = m1; + this.m[2] = m2; + this.m[3] = m3; + this.m[4] = m4; + this.m[5] = m5; + } + }, { + key: "rotate", + value: function rotate(rad) { + var c = Math.cos(rad); + var s = Math.sin(rad); + var m11 = this.m[0] * c + this.m[2] * s; + var m12 = this.m[1] * c + this.m[3] * s; + var m21 = this.m[0] * -s + this.m[2] * c; + var m22 = this.m[1] * -s + this.m[3] * c; + this.m[0] = m11; + this.m[1] = m12; + this.m[2] = m21; + this.m[3] = m22; + } + }, { + key: "translate", + value: function translate(x, y) { + this.m[4] += this.m[0] * x + this.m[2] * y; + this.m[5] += this.m[1] * x + this.m[3] * y; + } + }, { + key: "scale", + value: function scale(sx, sy) { + this.m[0] *= sx; + this.m[1] *= sx; + this.m[2] *= sy; + this.m[3] *= sy; + } + }, { + key: "transformPoint", + value: function transformPoint(px, py) { + var x = px; + var y = py; + px = x * this.m[0] + y * this.m[2] + this.m[4]; + py = x * this.m[1] + y * this.m[3] + this.m[5]; + return { + x: px, + y: py + }; + } + }]); + + return Transform; +}(); + +/***/ }), + +/***/ "./internal/tryEnableWebgl.js": +/*!************************************!*\ + !*** ./internal/tryEnableWebgl.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _webgl_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../webgl/index.js */ "./webgl/index.js"); + +/** + * Checks if webGL is supported and initializes the rendering engine. + * @param {any} options Options to check if webgl rendering is requested (e.g. enable webgl by passing {renderer: 'webgl'}) + * @returns {Boolean} true if webgl rendering has been successfully initialized. Otherwise, false. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (options) { + if (_webgl_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].renderer.isWebGLAvailable()) { + // If WebGL is available on the device, initialize the renderer + // And return the renderCanvas from the WebGL rendering path + _webgl_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].renderer.initRenderer(); + options.renderer = 'webgl'; + return true; + } // If WebGL is not available on this device, we will fall back + // To using the Canvas renderer + + + console.error('WebGL not available, falling back to Canvas renderer'); + delete options.renderer; + return false; +}); + +/***/ }), + +/***/ "./internal/validator.js": +/*!*******************************!*\ + !*** ./internal/validator.js ***! + \*******************************/ +/*! exports provided: validateParameterUndefined, validateParameterUndefinedOrNull */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "validateParameterUndefined", function() { return validateParameterUndefined; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "validateParameterUndefinedOrNull", function() { return validateParameterUndefinedOrNull; }); +/** + * Check if the supplied parameter is undefined and throws and error + * @param {any} checkParam the parameter to validate for undefined + * @param {any} errorMsg the error message to be thrown + * @returns {void} + * @memberof internal + */ +function validateParameterUndefined(checkParam, errorMsg) { + if (checkParam === undefined) { + throw new Error(errorMsg); + } +} +/** + * Check if the supplied parameter is undefined or null and throws and error + * @param {any} checkParam the parameter to validate for undefined + * @param {any} errorMsg the error message to be thrown + * @returns {void} + * @memberof internal + */ + +function validateParameterUndefinedOrNull(checkParam, errorMsg) { + if (checkParam === undefined || checkParam === null) { + throw new Error(errorMsg); + } +} + +/***/ }), + +/***/ "./invalidate.js": +/*!***********************!*\ + !*** ./invalidate.js ***! + \***********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./events.js */ "./events.js"); + + + +/** + * Sets the invalid flag on the enabled element and fire an event + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + enabledElement.invalid = true; + enabledElement.needsRedraw = true; + var eventData = { + element: element + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].INVALIDATED, eventData); +}); + +/***/ }), + +/***/ "./invalidateImageId.js": +/*!******************************!*\ + !*** ./invalidateImageId.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/drawImage.js */ "./internal/drawImage.js"); + + +/** + * Forces the image to be updated/redrawn for the all enabled elements + * displaying the specified imageId + * + * @param {string} imageId The imageId of the Cornerstone Image Object to redraw + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (imageId) { + var enabledElements = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElementsByImageId"])(imageId); + enabledElements.forEach(function (enabledElement) { + Object(_internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement, true); + }); +}); + +/***/ }), + +/***/ "./layers.js": +/*!*******************!*\ + !*** ./layers.js ***! + \*******************/ +/*! exports provided: rescaleImage, addLayer, removeLayer, getLayer, getLayers, getVisibleLayers, setActiveLayer, setLayerImage, getActiveLayer, purgeLayers */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rescaleImage", function() { return rescaleImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addLayer", function() { return addLayer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeLayer", function() { return removeLayer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLayer", function() { return getLayer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLayers", function() { return getLayers; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getVisibleLayers", function() { return getVisibleLayers; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setActiveLayer", function() { return setActiveLayer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setLayerImage", function() { return setLayerImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getActiveLayer", function() { return getActiveLayer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "purgeLayers", function() { return purgeLayers; }); +/* harmony import */ var _internal_guid_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/guid.js */ "./internal/guid.js"); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./events.js */ "./events.js"); + + + + + + +/** + * @module EnabledElementLayers + */ + +/** + * Helper function to trigger an event on a Cornerstone element with + * a specific layerId + * + * @param {String} eventName The event name (e.g. CornerstoneLayerAdded) + * @param {EnabledElement} enabledElement The Cornerstone enabled element + * @param {String} layerId The layer's unique identifier + * @returns {void} + * @memberof EnabledElementLayers + */ + +function triggerEventForLayer(eventName, enabledElement, layerId) { + var element = enabledElement.element; + var eventData = { + viewport: enabledElement.viewport, + element: enabledElement.element, + image: enabledElement.image, + enabledElement: enabledElement, + layerId: layerId + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventName, eventData); +} +/** + * Rescale the target layer to the base layer based on the + * relative size of each image and their pixel dimensions. + * + * This function will update the Viewport parameters of the + * target layer to a new scale. + * + * @param {EnabledElementLayer} baseLayer The base layer + * @param {EnabledElementLayer} targetLayer The target layer to rescale + * @returns {void} + * @memberof EnabledElementLayers + */ + + +function rescaleImage(baseLayer, targetLayer) { + if (baseLayer.layerId === targetLayer.layerId) { + throw new Error('rescaleImage: both arguments represent the same layer'); + } + + var baseImage = baseLayer.image; + var targetImage = targetLayer.image; // Return if these images don't have an imageId (e.g. for dynamic images) + + if (!baseImage.imageId || !targetImage.imageId) { + return; + } // Column pixel spacing need to be considered when calculating the + // ratio between the layer added and base layer images + + + var colRelative = targetLayer.viewport.displayedArea.columnPixelSpacing * targetImage.width / (baseLayer.viewport.displayedArea.columnPixelSpacing * baseImage.width); + var viewportRatio = targetLayer.viewport.scale / baseLayer.viewport.scale * colRelative; + targetLayer.viewport.scale = baseLayer.viewport.scale * viewportRatio; +} +/** + * Add a layer to a Cornerstone element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Image} image A Cornerstone Image object to add as a new layer + * @param {Object} options Options for the layer + * + * @returns {String} layerId The new layer's unique identifier + * @memberof EnabledElementLayers + */ + +function addLayer(element, image, options) { + var layerId = Object(_internal_guid_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + var layers = enabledElement.layers; + var viewport; + + if (image) { + viewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement.canvas, image); // Override the defaults if any optional viewport settings + // have been specified + + if (options && options.viewport) { + viewport = Object.assign(viewport, options.viewport); + } + } // Set syncViewports to true by default when a new layer is added + + + if (enabledElement.syncViewports !== false) { + enabledElement.syncViewports = true; + } + + var newLayer = { + image: image, + layerId: layerId, + viewport: viewport, + options: options || {}, + renderingTools: {} + }; // Rescale the new layer based on the base layer to make sure + // they will have a proportional size (pixel spacing) + + if (layers.length && image) { + rescaleImage(layers[0], newLayer); + } + + layers.push(newLayer); + triggerEventForLayer(_events_js__WEBPACK_IMPORTED_MODULE_5__["default"].LAYER_ADDED, enabledElement, layerId); // Set the layer as active if it's the first layer added + + if (layers.length === 1 && image) { + setActiveLayer(element, layerId); + } + + return layerId; +} +/** + * Remove a layer from a Cornerstone element given a layer ID + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {String} layerId The unique identifier for the layer + * @returns {void} + * @memberof EnabledElementLayers + */ + +function removeLayer(element, layerId) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + var layers = enabledElement.layers; + var index = enabledElement.layers.findIndex(function (layer) { + return layer.layerId === layerId; + }); + + if (index !== -1) { + layers.splice(index, 1); // If the current layer is active, and we have other layers, + // switch to the first layer that remains in the array + + if (layerId === enabledElement.activeLayerId && layers.length) { + setActiveLayer(element, layers[0].layerId); + } + + triggerEventForLayer(_events_js__WEBPACK_IMPORTED_MODULE_5__["default"].LAYER_REMOVED, enabledElement, layerId); + } +} +/** + * Retrieve a layer from a Cornerstone element given a layer ID + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {String} layerId The unique identifier for the layer + * @return {EnabledElementLayer} The layer + * @memberof EnabledElementLayers + */ + +function getLayer(element, layerId) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + return enabledElement.layers.find(function (layer) { + return layer.layerId === layerId; + }); +} +/** + * Retrieve all layers for a Cornerstone element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * + * @return {EnabledElementLayer[]} An array of layers + * @memberof EnabledElementLayers + */ + +function getLayers(element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + return enabledElement.layers; +} +/** + * Retrieve all visible layers for a Cornerstone element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * + * @return {EnabledElementLayer[]} An array of layers + * @memberof EnabledElementLayers + */ + +function getVisibleLayers(element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + return enabledElement.layers.filter(function (layer) { + return layer.options && layer.options.visible !== false && layer.options.opacity !== 0; + }); +} +/** + * Set the active layer for a Cornerstone element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {String} layerId The unique identifier for the layer + * @returns {void} + * @memberof EnabledElementLayers + */ + +function setActiveLayer(element, layerId) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); // Stop here if this layer is already active + + if (enabledElement.activeLayerId === layerId) { + return; + } + + var index = enabledElement.layers.findIndex(function (layer) { + return layer.layerId === layerId; + }); + + if (index === -1) { + throw new Error('setActiveLayer: layer not found in layers array'); + } + + var layer = enabledElement.layers[index]; + + if (!layer.image) { + throw new Error('setActiveLayer: layer with undefined image cannot be set as active.'); + } + + enabledElement.activeLayerId = layerId; + enabledElement.image = layer.image; + enabledElement.viewport = layer.viewport; + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element); + triggerEventForLayer(_events_js__WEBPACK_IMPORTED_MODULE_5__["default"].ACTIVE_LAYER_CHANGED, enabledElement, layerId); +} +/** + * Set a new image for a specific layerId + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Image} image The image to be displayed in this layer + * @param {String} [layerId] The unique identifier for the layer + * @returns {void} + * @memberof EnabledElementLayers + */ + +function setLayerImage(element, image, layerId) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + var baseLayer = enabledElement.layers[0]; + var layer; + + if (layerId) { + layer = getLayer(element, layerId); + } else { + layer = getActiveLayer(element); + } + + if (!layer) { + throw new Error('setLayerImage: Layer not found'); + } + + layer.image = image; + + if (!image) { + layer.viewport = undefined; + return; + } + + if (!layer.viewport) { + var defaultViewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement.canvas, image); // Override the defaults if any optional viewport settings + // have been specified + + if (layer.options && layer.options.viewport) { + layer.viewport = Object.assign(defaultViewport, layer.options.viewport); + } + + if (baseLayer.layerId !== layerId) { + rescaleImage(baseLayer, layer); + } + } +} +/** + * Retrieve the currently active layer for a Cornerstone element + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @return {EnabledElementLayer} The currently active layer + * @memberof EnabledElementLayers + */ + +function getActiveLayer(element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + return enabledElement.layers.find(function (layer) { + return layer.layerId === enabledElement.activeLayerId; + }); +} +/** + * Purge the layers + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * + * @returns {void} + */ + +function purgeLayers(element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + enabledElement.layers = []; + delete enabledElement.activeLayerId; + delete enabledElement.lastSyncViewportsState; +} + +/***/ }), + +/***/ "./metaData.js": +/*!*********************!*\ + !*** ./metaData.js ***! + \*********************/ +/*! exports provided: addProvider, removeProvider, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addProvider", function() { return addProvider; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeProvider", function() { return removeProvider; }); +// This module defines a way to access various metadata about an imageId. This layer of abstraction exists +// So metadata can be provided in different ways (e.g. by parsing DICOM P10 or by a WADO-RS document) +var providers = []; +/** + * @module Metadata + */ + +/** + * Adds a metadata provider with the specified priority + * @param {Function} provider Metadata provider function + * @param {Number} [priority=0] - 0 is default/normal, > 0 is high, < 0 is low + * + * @returns {void} + * @memberof Metadata + */ + +function addProvider(provider) { + var priority = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var i; // Find the right spot to insert this provider based on priority + + for (i = 0; i < providers.length; i++) { + if (providers[i].priority <= priority) { + break; + } + } // Insert the decode task at position i + + + providers.splice(i, 0, { + priority: priority, + provider: provider + }); +} +/** + * Removes the specified provider + * + * @param {Function} provider Metadata provider function + * + * @returns {void} + * @memberof Metadata + */ + +function removeProvider(provider) { + for (var i = 0; i < providers.length; i++) { + if (providers[i].provider === provider) { + providers.splice(i, 1); + break; + } + } +} +/** + * Gets metadata from the registered metadata providers. Will call each one from highest priority to lowest + * until one responds + * + * @param {String} type The type of metadata requested from the metadata store + * @param {String} imageId The Cornerstone Image Object's imageId + * + * @returns {*} The metadata retrieved from the metadata store + * @memberof Metadata + */ + +function getMetaData(type, imageId) { + // Invoke each provider in priority order until one returns something + for (var i = 0; i < providers.length; i++) { + var result = providers[i].provider(type, imageId); + + if (result !== undefined) { + return result; + } + } +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + addProvider: addProvider, + removeProvider: removeProvider, + get: getMetaData +}); + +/***/ }), + +/***/ "./pageToPixel.js": +/*!************************!*\ + !*** ./pageToPixel.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/getTransform.js */ "./internal/getTransform.js"); + + +/** + * Converts a point in the page coordinate system to the pixel coordinate + * system + * + * @param {HTMLElement} element The Cornerstone element within which the input point lies + * @param {Number} pageX The x value in the page coordinate system + * @param {Number} pageY The y value in the page coordinate system + * + * @returns {{x: Number, y: Number}} The transformed point in the pixel coordinate system + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, pageX, pageY) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + + if (enabledElement.image === undefined) { + throw new Error('image has not been loaded yet'); + } // Convert the pageX and pageY to the canvas client coordinates + + + var rect = element.getBoundingClientRect(); + var clientX = pageX - rect.left - window.pageXOffset; + var clientY = pageY - rect.top - window.pageYOffset; + var pt = { + x: clientX, + y: clientY + }; + var transform = Object(_internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement); + transform.invert(); + return transform.transformPoint(pt.x, pt.y); +}); + +/***/ }), + +/***/ "./pixelDataToFalseColorData.js": +/*!**************************************!*\ + !*** ./pixelDataToFalseColorData.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return pixelDataToFalseColorData; }); +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./colors/index.js */ "./colors/index.js"); + +/** + * Converts the image pixel data into a false color data + * + * @param {Image} image A Cornerstone Image Object + * @param {Object} lookupTable A lookup table Object + * + * @returns {void} + * @deprecated This function is superseded by the ability to set the Viewport parameters + * to include colormaps. + */ + +function pixelDataToFalseColorData(image, lookupTable) { + if (image.color && !image.falseColor) { + throw new Error('Color transforms are not implemented yet'); + } + + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; + var numPixels = image.width * image.height; + var origPixelData = image.origPixelData || image.getPixelData(); + var storedColorPixelData = new Uint8Array(numPixels * 4); + var sp; + var mapped; + image.color = true; + image.falseColor = true; + image.origPixelData = origPixelData; + + if (lookupTable instanceof _colors_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].LookupTable) { + lookupTable.build(); + + while (storedPixelDataIndex < numPixels) { + sp = origPixelData[storedPixelDataIndex++]; + mapped = lookupTable.mapValue(sp); + storedColorPixelData[canvasImageDataIndex++] = mapped[0]; + storedColorPixelData[canvasImageDataIndex++] = mapped[1]; + storedColorPixelData[canvasImageDataIndex++] = mapped[2]; + storedColorPixelData[canvasImageDataIndex++] = mapped[3]; + } + } else if (minPixelValue < 0) { + while (storedPixelDataIndex < numPixels) { + sp = origPixelData[storedPixelDataIndex++]; + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp + -minPixelValue][0]; // Red + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp + -minPixelValue][1]; // Green + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp + -minPixelValue][2]; // Blue + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp + -minPixelValue][3]; // Alpha + } + } else { + while (storedPixelDataIndex < numPixels) { + sp = origPixelData[storedPixelDataIndex++]; + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp][0]; // Red + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp][1]; // Green + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp][2]; // Blue + + storedColorPixelData[canvasImageDataIndex++] = lookupTable[sp][3]; // Alpha + } + } + + image.rgba = true; + image.cachedLut = undefined; + image.render = undefined; + image.slope = 1; + image.intercept = 0; + image.minPixelValue = 0; + image.maxPixelValue = 255; + image.windowWidth = 255; + image.windowCenter = 128; + + image.getPixelData = function () { + return storedColorPixelData; + }; +} + +/***/ }), + +/***/ "./pixelToCanvas.js": +/*!**************************!*\ + !*** ./pixelToCanvas.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/getTransform.js */ "./internal/getTransform.js"); + + +/** + * Converts a point in the pixel coordinate system to the canvas coordinate system + * system. This can be used to render using canvas context without having the weird + * side effects that come from scaling and non square pixels + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {{x: Number, y: Number}} pt The transformed point in the pixel coordinate system + * + * @returns {{x: Number, y: Number}} The input point in the canvas coordinate system + * @memberof PixelCoordinateSystem + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, pt) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var transform = Object(_internal_getTransform_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement); + return transform.transformPoint(pt.x, pt.y); +}); + +/***/ }), + +/***/ "./rendering/doesImageNeedToBeRendered.js": +/*!************************************************!*\ + !*** ./rendering/doesImageNeedToBeRendered.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Determine whether or not an Enabled Element needs to be re-rendered. + * + * If the imageId has changed, or if any of the last rendered viewport + * parameters have changed, this function will return true. + * + * @param {EnabledElement} enabledElement An Enabled Element + * @param {Image} image An Image + * @return {boolean} Whether or not the Enabled Element needs to re-render its image + * @memberof rendering + */ +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, image) { + var lastRenderedImageId = enabledElement.renderingTools.lastRenderedImageId; + var lastRenderedViewport = enabledElement.renderingTools.lastRenderedViewport; + return image.imageId !== lastRenderedImageId || !lastRenderedViewport || lastRenderedViewport.windowCenter !== enabledElement.viewport.voi.windowCenter || lastRenderedViewport.windowWidth !== enabledElement.viewport.voi.windowWidth || lastRenderedViewport.invert !== enabledElement.viewport.invert || lastRenderedViewport.rotation !== enabledElement.viewport.rotation || lastRenderedViewport.hflip !== enabledElement.viewport.hflip || lastRenderedViewport.vflip !== enabledElement.viewport.vflip || lastRenderedViewport.modalityLUT !== enabledElement.viewport.modalityLUT || lastRenderedViewport.voiLUT !== enabledElement.viewport.voiLUT || lastRenderedViewport.colormap !== enabledElement.viewport.colormap; +}); + +/***/ }), + +/***/ "./rendering/getLut.js": +/*!*****************************!*\ + !*** ./rendering/getLut.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_computeAutoVoi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/computeAutoVoi.js */ "./internal/computeAutoVoi.js"); +/* harmony import */ var _lutMatches_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lutMatches.js */ "./rendering/lutMatches.js"); +/* harmony import */ var _internal_generateLut_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../internal/generateLut.js */ "./internal/generateLut.js"); + + + +/** + * Retrieve or generate a LUT Array for an Image and Viewport + * + * @param {Image} image An Image Object + * @param {Viewport} viewport An Viewport Object + * @param {Boolean} invalidated Whether or not the LUT data has been invalidated + * (e.g. by a change to the windowWidth, windowCenter, or invert viewport parameters). + * @return {Uint8ClampedArray} LUT Array + * @memberof rendering + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, viewport, invalidated) { + // If we have a cached lut and it has the right values, return it immediately + if (image.cachedLut !== undefined && image.cachedLut.windowCenter === viewport.voi.windowCenter && image.cachedLut.windowWidth === viewport.voi.windowWidth && Object(_lutMatches_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image.cachedLut.modalityLUT, viewport.modalityLUT) && Object(_lutMatches_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image.cachedLut.voiLUT, viewport.voiLUT) && image.cachedLut.invert === viewport.invert && invalidated !== true) { + return image.cachedLut.lutArray; + } + + Object(_internal_computeAutoVoi_js__WEBPACK_IMPORTED_MODULE_0__["default"])(viewport, image); // Lut is invalid or not present, regenerate it and cache it + + Object(_internal_generateLut_js__WEBPACK_IMPORTED_MODULE_2__["default"])(image, viewport.voi.windowWidth, viewport.voi.windowCenter, viewport.invert, viewport.modalityLUT, viewport.voiLUT); + image.cachedLut.windowWidth = viewport.voi.windowWidth; + image.cachedLut.windowCenter = viewport.voi.windowCenter; + image.cachedLut.invert = viewport.invert; + image.cachedLut.voiLUT = viewport.voiLUT; + image.cachedLut.modalityLUT = viewport.modalityLUT; + return image.cachedLut.lutArray; +}); + +/***/ }), + +/***/ "./rendering/index.js": +/*!****************************!*\ + !*** ./rendering/index.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _renderColorImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./renderColorImage.js */ "./rendering/renderColorImage.js"); +/* harmony import */ var _renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./renderGrayscaleImage.js */ "./rendering/renderGrayscaleImage.js"); +/* harmony import */ var _renderWebImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./renderWebImage.js */ "./rendering/renderWebImage.js"); +/* harmony import */ var _renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./renderPseudoColorImage.js */ "./rendering/renderPseudoColorImage.js"); +/* harmony import */ var _renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./renderLabelMapImage.js */ "./rendering/renderLabelMapImage.js"); +/* harmony import */ var _renderToCanvas_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./renderToCanvas.js */ "./rendering/renderToCanvas.js"); + + + + + + +/** + * @module rendering + */ + +/* harmony default export */ __webpack_exports__["default"] = ({ + colorImage: _renderColorImage_js__WEBPACK_IMPORTED_MODULE_0__["renderColorImage"], + grayscaleImage: _renderGrayscaleImage_js__WEBPACK_IMPORTED_MODULE_1__["renderGrayscaleImage"], + webImage: _renderWebImage_js__WEBPACK_IMPORTED_MODULE_2__["renderWebImage"], + pseudoColorImage: _renderPseudoColorImage_js__WEBPACK_IMPORTED_MODULE_3__["renderPseudoColorImage"], + labelMapImage: _renderLabelMapImage_js__WEBPACK_IMPORTED_MODULE_4__["renderLabelMapImage"], + toCanvas: _renderToCanvas_js__WEBPACK_IMPORTED_MODULE_5__["default"] +}); + +/***/ }), + +/***/ "./rendering/initializeRenderCanvas.js": +/*!*********************************************!*\ + !*** ./rendering/initializeRenderCanvas.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Sets size and clears canvas + * + * @param {Object} enabledElement Cornerstone Enabled Element + * @param {Object} image Image to be rendered + * @returns {void} + * @memberof rendering + */ +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, image) { + var renderCanvas = enabledElement.renderingTools.renderCanvas; // Resize the canvas + + renderCanvas.width = image.width; + renderCanvas.height = image.height; + var canvasContext = renderCanvas.getContext('2d'); // NOTE - we need to fill the render canvas with white pixels since we + // control the luminance using the alpha channel to improve rendering performance. + + canvasContext.fillStyle = 'white'; + canvasContext.fillRect(0, 0, renderCanvas.width, renderCanvas.height); + var renderCanvasData = canvasContext.getImageData(0, 0, image.width, image.height); + enabledElement.renderingTools.renderCanvasContext = canvasContext; + enabledElement.renderingTools.renderCanvasData = renderCanvasData; +}); + +/***/ }), + +/***/ "./rendering/lutMatches.js": +/*!*********************************!*\ + !*** ./rendering/lutMatches.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Check if two lookup tables match + * + * @param {LUT} a A lookup table function + * @param {LUT} b Another lookup table function + * @return {boolean} Whether or not they match + * @memberof rendering + */ +/* harmony default export */ __webpack_exports__["default"] = (function (a, b) { + // If undefined, they are equal + if (!a && !b) { + return true; + } // If one is undefined, not equal + + + if (!a || !b) { + return false; + } // Check the unique ids + + + return a.id === b.id; +}); + +/***/ }), + +/***/ "./rendering/renderColorImage.js": +/*!***************************************!*\ + !*** ./rendering/renderColorImage.js ***! + \***************************************/ +/*! exports provided: renderColorImage, addColorLayer */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderColorImage", function() { return renderColorImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addColorLayer", function() { return addColorLayer; }); +/* harmony import */ var _internal_now_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/now.js */ "./internal/now.js"); +/* harmony import */ var _internal_generateColorLut_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/generateColorLut.js */ "./internal/generateColorLut.js"); +/* harmony import */ var _internal_storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../internal/storedColorPixelDataToCanvasImageData.js */ "./internal/storedColorPixelDataToCanvasImageData.js"); +/* harmony import */ var _internal_storedRGBAPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../internal/storedRGBAPixelDataToCanvasImageData.js */ "./internal/storedRGBAPixelDataToCanvasImageData.js"); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony import */ var _webgl_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../webgl/index.js */ "./webgl/index.js"); +/* harmony import */ var _doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./doesImageNeedToBeRendered.js */ "./rendering/doesImageNeedToBeRendered.js"); +/* harmony import */ var _initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./initializeRenderCanvas.js */ "./rendering/initializeRenderCanvas.js"); +/* harmony import */ var _saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./saveLastRendered.js */ "./rendering/saveLastRendered.js"); + + + + + + + + + +/** + * Generates an appropriate Look Up Table to render the given image with the given window width and level (specified in the viewport) + * Uses an internal cache for performance + * + * @param {Object} image The image to be rendered + * @param {Object} viewport The viewport values used for rendering + * @returns {Uint8ClampedArray} Look Up Table array. + * @memberof rendering + */ + +function getLut(image, viewport) { + // If we have a cached lut and it has the right values, return it immediately + if (image.cachedLut !== undefined && image.cachedLut.windowCenter === viewport.voi.windowCenter && image.cachedLut.windowWidth === viewport.voi.windowWidth && image.cachedLut.invert === viewport.invert) { + return image.cachedLut.lutArray; + } // Lut is invalid or not present, regenerate it and cache it + + + Object(_internal_generateColorLut_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image, viewport.voi.windowWidth, viewport.voi.windowCenter, viewport.invert); + image.cachedLut.windowWidth = viewport.voi.windowWidth; + image.cachedLut.windowCenter = viewport.voi.windowCenter; + image.cachedLut.invert = viewport.invert; + return image.cachedLut.lutArray; +} +/** + * Returns an appropriate canvas to render the Image. If the canvas available in the cache is appropriate + * it is returned, otherwise adjustments are made. It also sets the color transfer functions. + * + * @param {Object} enabledElement The cornerstone enabled element + * @param {Object} image The image to be rendered + * @param {Boolean} invalidated Is pixel data valid + * @returns {HTMLCanvasElement} An appropriate canvas for rendering the image + * @memberof rendering + */ + + +function getRenderCanvas(enabledElement, image, invalidated) { + var canvasWasColor = enabledElement.renderingTools.lastRenderedIsColor === true; + + if (!enabledElement.renderingTools.renderCanvas || !canvasWasColor) { + enabledElement.renderingTools.renderCanvas = document.createElement('canvas'); + } + + var renderCanvas = enabledElement.renderingTools.renderCanvas; // The ww/wc is identity and not inverted - get a canvas with the image rendered into it for + // Fast drawing + + if (enabledElement.viewport.voi.windowWidth === 255 && enabledElement.viewport.voi.windowCenter === 128 && enabledElement.viewport.invert === false && image.getCanvas && image.getCanvas()) { + return image.getCanvas(); + } // Apply the lut to the stored pixel data onto the render canvas + + + if (Object(_doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_6__["default"])(enabledElement, image) === false && invalidated !== true) { + return renderCanvas; + } // If our render canvas does not match the size of this image reset it + // NOTE: This might be inefficient if we are updating multiple images of different + // Sizes frequently. + + + if (renderCanvas.width !== image.width || renderCanvas.height !== image.height) { + Object(_initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_7__["default"])(enabledElement, image); + } // Get the lut to use + + + var start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + var colorLut = getLut(image, enabledElement.viewport); + image.stats = image.stats || {}; + image.stats.lastLutGenerateTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + var renderCanvasData = enabledElement.renderingTools.renderCanvasData; + var renderCanvasContext = enabledElement.renderingTools.renderCanvasContext; // The color image voi/invert has been modified - apply the lut to the underlying + // Pixel data and put it into the renderCanvas + + if (image.rgba) { + Object(_internal_storedRGBAPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_3__["default"])(image, colorLut, renderCanvasData.data); + } else { + Object(_internal_storedColorPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_2__["default"])(image, colorLut, renderCanvasData.data); + } + + start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])(); + renderCanvasContext.putImageData(renderCanvasData, 0, 0); + image.stats.lastPutImageDataTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_0__["default"])() - start; + return renderCanvas; +} +/** + * API function to render a color image to an enabled element + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof rendering + */ + + +function renderColorImage(enabledElement, invalidated) { + if (enabledElement === undefined) { + throw new Error('renderColorImage: enabledElement parameter must not be undefined'); + } + + var image = enabledElement.image; + + if (image === undefined) { + throw new Error('renderColorImage: image must be loaded before it can be drawn'); + } // Get the canvas context and reset the transform + + + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !enabledElement.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Save the canvas context state and apply the viewport properties + + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_4__["default"])(enabledElement, context); + var renderCanvas; + + if (enabledElement.options && enabledElement.options.renderer && enabledElement.options.renderer.toLowerCase() === 'webgl') { + // If this enabled element has the option set for WebGL, we should + // User it as our renderer. + renderCanvas = _webgl_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].renderer.render(enabledElement); + } else { + // If no options are set we will retrieve the renderCanvas through the + // Normal Canvas rendering path + renderCanvas = getRenderCanvas(enabledElement, image, invalidated); + } + + var sx = enabledElement.viewport.displayedArea.tlhc.x - 1; + var sy = enabledElement.viewport.displayedArea.tlhc.y - 1; + var width = enabledElement.viewport.displayedArea.brhc.x - sx; + var height = enabledElement.viewport.displayedArea.brhc.y - sy; + context.drawImage(renderCanvas, sx, sy, width, height, 0, 0, width, height); + enabledElement.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__["default"])(enabledElement); +} +function addColorLayer(layer, invalidated) { + if (layer === undefined) { + throw new Error('addColorLayer: layer parameter must not be undefined'); + } + + var image = layer.image; + + if (image === undefined) { + throw new Error('addColorLayer: image must be loaded before it can be drawn'); + } // All multi-layer images should include the alpha value + + + image.rgba = true; + layer.canvas = getRenderCanvas(layer, image, invalidated); + var context = layer.canvas.getContext('2d'); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !layer.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; + layer.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__["default"])(layer); +} + +/***/ }), + +/***/ "./rendering/renderGrayscaleImage.js": +/*!*******************************************!*\ + !*** ./rendering/renderGrayscaleImage.js ***! + \*******************************************/ +/*! exports provided: renderGrayscaleImage, addGrayscaleLayer */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderGrayscaleImage", function() { return renderGrayscaleImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addGrayscaleLayer", function() { return addGrayscaleLayer; }); +/* harmony import */ var _internal_storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/storedPixelDataToCanvasImageData.js */ "./internal/storedPixelDataToCanvasImageData.js"); +/* harmony import */ var _internal_storedPixelDataToCanvasImageDataRGBA_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/storedPixelDataToCanvasImageDataRGBA.js */ "./internal/storedPixelDataToCanvasImageDataRGBA.js"); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony import */ var _internal_now_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../internal/now.js */ "./internal/now.js"); +/* harmony import */ var _webgl_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../webgl/index.js */ "./webgl/index.js"); +/* harmony import */ var _getLut_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getLut.js */ "./rendering/getLut.js"); +/* harmony import */ var _doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./doesImageNeedToBeRendered.js */ "./rendering/doesImageNeedToBeRendered.js"); +/* harmony import */ var _initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./initializeRenderCanvas.js */ "./rendering/initializeRenderCanvas.js"); +/* harmony import */ var _saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./saveLastRendered.js */ "./rendering/saveLastRendered.js"); + + + + + + + + + +/** + * Returns an appropriate canvas to render the Image. If the canvas available in the cache is appropriate + * it is returned, otherwise adjustments are made. It also sets the color transfer functions. + * + * @param {Object} enabledElement The cornerstone enabled element + * @param {Object} image The image to be rendered + * @param {Boolean} invalidated Is pixel data valid + * @param {Boolean} [useAlphaChannel = true] Will an alpha channel be used + * @returns {HTMLCanvasElement} An appropriate canvas for rendering the image + * @memberof rendering + */ + +function getRenderCanvas(enabledElement, image, invalidated) { + var useAlphaChannel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true; + var canvasWasColor = enabledElement.renderingTools.lastRenderedIsColor === true; + + if (!enabledElement.renderingTools.renderCanvas || canvasWasColor) { + enabledElement.renderingTools.renderCanvas = document.createElement('canvas'); + Object(_initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_7__["default"])(enabledElement, image); + } + + var renderCanvas = enabledElement.renderingTools.renderCanvas; + + if (Object(_doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_6__["default"])(enabledElement, image) === false && invalidated !== true) { + return renderCanvas; + } // If our render canvas does not match the size of this image reset it + // NOTE: This might be inefficient if we are updating multiple images of different + // Sizes frequently. + + + if (renderCanvas.width !== image.width || renderCanvas.height !== image.height) { + Object(_initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_7__["default"])(enabledElement, image); + } // Get the lut to use + + + var start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); + var lut = Object(_getLut_js__WEBPACK_IMPORTED_MODULE_5__["default"])(image, enabledElement.viewport, invalidated); + image.stats = image.stats || {}; + image.stats.lastLutGenerateTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])() - start; + var renderCanvasData = enabledElement.renderingTools.renderCanvasData; + var renderCanvasContext = enabledElement.renderingTools.renderCanvasContext; // Gray scale image - apply the lut and put the resulting image onto the render canvas + + if (useAlphaChannel) { + Object(_internal_storedPixelDataToCanvasImageData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(image, lut, renderCanvasData.data); + } else { + Object(_internal_storedPixelDataToCanvasImageDataRGBA_js__WEBPACK_IMPORTED_MODULE_1__["default"])(image, lut, renderCanvasData.data); + } + + start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); + renderCanvasContext.putImageData(renderCanvasData, 0, 0); + image.stats.lastPutImageDataTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_3__["default"])() - start; + return renderCanvas; +} +/** + * API function to draw a grayscale image to a given enabledElement + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof rendering + */ + + +function renderGrayscaleImage(enabledElement, invalidated) { + if (enabledElement === undefined) { + throw new Error('drawImage: enabledElement parameter must not be undefined'); + } + + var image = enabledElement.image; + + if (image === undefined) { + throw new Error('drawImage: image must be loaded before it can be drawn'); + } // Get the canvas context and reset the transform + + + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !enabledElement.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Save the canvas context state and apply the viewport properties + + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement, context); + var renderCanvas; + + if (enabledElement.options && enabledElement.options.renderer && enabledElement.options.renderer.toLowerCase() === 'webgl') { + // If this enabled element has the option set for WebGL, we should + // User it as our renderer. + renderCanvas = _webgl_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].renderer.render(enabledElement); + } else { + // If no options are set we will retrieve the renderCanvas through the + // Normal Canvas rendering path + renderCanvas = getRenderCanvas(enabledElement, image, invalidated); + } + + var sx = enabledElement.viewport.displayedArea.tlhc.x - 1; + var sy = enabledElement.viewport.displayedArea.tlhc.y - 1; + var width = enabledElement.viewport.displayedArea.brhc.x - sx; + var height = enabledElement.viewport.displayedArea.brhc.y - sy; + context.drawImage(renderCanvas, sx, sy, width, height, 0, 0, width, height); + enabledElement.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__["default"])(enabledElement); +} +/** + * API function to draw a grayscale image to a given layer + * + * @param {EnabledElementLayer} layer The layer that the image will be added to + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @param {Boolean} [useAlphaChannel] - Whether or not to render the grayscale image using only the alpha channel. + This does not work if this layer is not the first layer in the enabledElement. + * @returns {void} + */ + +function addGrayscaleLayer(layer, invalidated) { + var useAlphaChannel = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + if (layer === undefined) { + throw new Error('addGrayscaleLayer: layer parameter must not be undefined'); + } + + var image = layer.image; + + if (image === undefined) { + throw new Error('addGrayscaleLayer: image must be loaded before it can be drawn'); + } + + layer.canvas = getRenderCanvas(layer, image, invalidated, useAlphaChannel); + var context = layer.canvas.getContext('2d'); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !layer.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; + layer.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_8__["default"])(layer); +} + +/***/ }), + +/***/ "./rendering/renderLabelMapImage.js": +/*!******************************************!*\ + !*** ./rendering/renderLabelMapImage.js ***! + \******************************************/ +/*! exports provided: renderLabelMapImage, addLabelMapLayer */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderLabelMapImage", function() { return renderLabelMapImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addLabelMapLayer", function() { return addLabelMapLayer; }); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony import */ var _internal_now_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/now.js */ "./internal/now.js"); +/* harmony import */ var _initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./initializeRenderCanvas.js */ "./rendering/initializeRenderCanvas.js"); +/* harmony import */ var _saveLastRendered_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./saveLastRendered.js */ "./rendering/saveLastRendered.js"); +/* harmony import */ var _doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./doesImageNeedToBeRendered.js */ "./rendering/doesImageNeedToBeRendered.js"); +/* harmony import */ var _internal_storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../internal/storedPixelDataToCanvasImageDataColorLUT.js */ "./internal/storedPixelDataToCanvasImageDataColorLUT.js"); +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../colors/index.js */ "./colors/index.js"); + + + + + + + +/** + * Returns an appropriate canvas to render the Image. If the canvas available in the cache is appropriate + * it is returned, otherwise adjustments are made. It also sets the color transfer functions. + * + * @param {Object} enabledElement The cornerstone enabled element + * @param {Object} image The image to be rendered + * @param {Boolean} invalidated Is pixel data valid + * @returns {HTMLCanvasElement} An appropriate canvas for rendering the image + * @memberof rendering + */ + +function getRenderCanvas(enabledElement, image, invalidated) { + if (!enabledElement.renderingTools.renderCanvas) { + enabledElement.renderingTools.renderCanvas = document.createElement('canvas'); + } + + var renderCanvas = enabledElement.renderingTools.renderCanvas; + var colormap = enabledElement.viewport.colormap || enabledElement.options.colormap; + + if (enabledElement.options.colormap) { + console.warn('enabledElement.options.colormap is deprecated. Use enabledElement.viewport.colormap instead'); + } + + if (colormap && typeof colormap === 'string') { + colormap = _colors_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].getColormap(colormap); + } + + if (!colormap) { + throw new Error('renderLabelMapImage: colormap not found.'); + } + + var colormapId = colormap.getId(); + + if (Object(_doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_4__["default"])(enabledElement, image) === false && invalidated !== true && enabledElement.renderingTools.colormapId === colormapId) { + return renderCanvas; + } // If our render canvas does not match the size of this image reset it + // NOTE: This might be inefficient if we are updating multiple images of different + // Sizes frequently. + + + if (renderCanvas.width !== image.width || renderCanvas.height !== image.height) { + Object(_initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement, image); + } // Get the lut to use + + + var start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + + if (!enabledElement.renderingTools.colorLut || invalidated || enabledElement.renderingTools.colormapId !== colormapId) { + enabledElement.renderingTools.colorLut = colormap.createLookupTable(); + enabledElement.renderingTools.colormapId = colormapId; + } + + image.stats = image.stats || {}; + image.stats.lastLutGenerateTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + var colorLut = enabledElement.renderingTools.colorLut; + var renderCanvasData = enabledElement.renderingTools.renderCanvasData; + var renderCanvasContext = enabledElement.renderingTools.renderCanvasContext; + Object(_internal_storedPixelDataToCanvasImageDataColorLUT_js__WEBPACK_IMPORTED_MODULE_5__["default"])(image, colorLut, renderCanvasData.data); + start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + renderCanvasContext.putImageData(renderCanvasData, 0, 0); + image.stats.lastPutImageDataTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + return renderCanvas; +} +/** + * API function to draw a label map image to a given enabledElement + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof rendering + */ + + +function renderLabelMapImage(enabledElement, invalidated) { + if (enabledElement === undefined) { + throw new Error('renderLabelMapImage: enabledElement parameter must not be undefined'); + } + + var image = enabledElement.image; + + if (image === undefined) { + throw new Error('renderLabelMapImage: image must be loaded before it can be drawn'); + } // Get the canvas context and reset the transform + + + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !enabledElement.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Save the canvas context state and apply the viewport properties + + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement, context); // If no options are set we will retrieve the renderCanvas through the + // Normal Canvas rendering path + // TODO: Add WebGL support for label map pipeline + + var renderCanvas = getRenderCanvas(enabledElement, image, invalidated); + var sx = enabledElement.viewport.displayedArea.tlhc.x - 1; + var sy = enabledElement.viewport.displayedArea.tlhc.y - 1; + var width = enabledElement.viewport.displayedArea.brhc.x - sx; + var height = enabledElement.viewport.displayedArea.brhc.y - sy; + context.drawImage(renderCanvas, sx, sy, width, height, 0, 0, width, height); + enabledElement.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_3__["default"])(enabledElement); +} +/** + * API function to draw a pseudo-color image to a given layer + * + * @param {EnabledElementLayer} layer The layer that the image will be added to + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + */ + +function addLabelMapLayer(layer, invalidated) { + if (layer === undefined) { + throw new Error('addLabelMapLayer: layer parameter must not be undefined'); + } + + var image = layer.image; + + if (image === undefined) { + throw new Error('addLabelMapLayer: image must be loaded before it can be drawn'); + } + + layer.canvas = getRenderCanvas(layer, image, invalidated); + var context = layer.canvas.getContext('2d'); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !layer.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; + layer.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_3__["default"])(layer); +} + +/***/ }), + +/***/ "./rendering/renderPseudoColorImage.js": +/*!*********************************************!*\ + !*** ./rendering/renderPseudoColorImage.js ***! + \*********************************************/ +/*! exports provided: renderPseudoColorImage, addPseudoColorLayer */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderPseudoColorImage", function() { return renderPseudoColorImage; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addPseudoColorLayer", function() { return addPseudoColorLayer; }); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony import */ var _internal_now_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/now.js */ "./internal/now.js"); +/* harmony import */ var _initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./initializeRenderCanvas.js */ "./rendering/initializeRenderCanvas.js"); +/* harmony import */ var _getLut_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getLut.js */ "./rendering/getLut.js"); +/* harmony import */ var _saveLastRendered_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./saveLastRendered.js */ "./rendering/saveLastRendered.js"); +/* harmony import */ var _doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./doesImageNeedToBeRendered.js */ "./rendering/doesImageNeedToBeRendered.js"); +/* harmony import */ var _internal_storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js */ "./internal/storedPixelDataToCanvasImageDataPseudocolorLUT.js"); +/* harmony import */ var _colors_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../colors/index.js */ "./colors/index.js"); + + + + + + + + +/** + * Returns an appropriate canvas to render the Image. If the canvas available in the cache is appropriate + * it is returned, otherwise adjustments are made. It also sets the color transfer functions. + * + * @param {Object} enabledElement The cornerstone enabled element + * @param {Object} image The image to be rendered + * @param {Boolean} invalidated Is pixel data valid + * @returns {HTMLCanvasElement} An appropriate canvas for rendering the image + * @memberof rendering + */ + +function getRenderCanvas(enabledElement, image, invalidated) { + if (!enabledElement.renderingTools.renderCanvas) { + enabledElement.renderingTools.renderCanvas = document.createElement('canvas'); + } + + var renderCanvas = enabledElement.renderingTools.renderCanvas; + var colormap = enabledElement.viewport.colormap || enabledElement.options.colormap; + + if (enabledElement.options.colormap) { + console.warn('enabledElement.options.colormap is deprecated. Use enabledElement.viewport.colormap instead'); + } + + if (colormap && typeof colormap === 'string') { + colormap = _colors_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].getColormap(colormap); + } + + if (!colormap) { + throw new Error('renderPseudoColorImage: colormap not found.'); + } + + var colormapId = colormap.getId(); + + if (Object(_doesImageNeedToBeRendered_js__WEBPACK_IMPORTED_MODULE_5__["default"])(enabledElement, image) === false && invalidated !== true && enabledElement.renderingTools.colormapId === colormapId) { + return renderCanvas; + } // If our render canvas does not match the size of this image reset it + // NOTE: This might be inefficient if we are updating multiple images of different + // Sizes frequently. + + + if (renderCanvas.width !== image.width || renderCanvas.height !== image.height) { + Object(_initializeRenderCanvas_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElement, image); + } // Get the lut to use + + + var start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + + if (!enabledElement.renderingTools.colorLut || invalidated || enabledElement.renderingTools.colormapId !== colormapId) { + colormap.setNumberOfColors(256); + enabledElement.renderingTools.colorLut = colormap.createLookupTable(); + enabledElement.renderingTools.colormapId = colormapId; + } + + var lut = Object(_getLut_js__WEBPACK_IMPORTED_MODULE_3__["default"])(image, enabledElement.viewport, invalidated); + image.stats = image.stats || {}; + image.stats.lastLutGenerateTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + var colorLut = enabledElement.renderingTools.colorLut; + var renderCanvasData = enabledElement.renderingTools.renderCanvasData; + var renderCanvasContext = enabledElement.renderingTools.renderCanvasContext; + Object(_internal_storedPixelDataToCanvasImageDataPseudocolorLUT_js__WEBPACK_IMPORTED_MODULE_6__["default"])(image, lut, colorLut, renderCanvasData.data); + start = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])(); + renderCanvasContext.putImageData(renderCanvasData, 0, 0); + image.stats.lastPutImageDataTime = Object(_internal_now_js__WEBPACK_IMPORTED_MODULE_1__["default"])() - start; + return renderCanvas; +} +/** + * API function to draw a pseudo-color image to a given enabledElement + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof rendering + */ + + +function renderPseudoColorImage(enabledElement, invalidated) { + if (enabledElement === undefined) { + throw new Error('drawImage: enabledElement parameter must not be undefined'); + } + + var image = enabledElement.image; + + if (image === undefined) { + throw new Error('drawImage: image must be loaded before it can be drawn'); + } // Get the canvas context and reset the transform + + + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !enabledElement.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Save the canvas context state and apply the viewport properties + + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement, context); // If no options are set we will retrieve the renderCanvas through the + // Normal Canvas rendering path + // TODO: Add WebGL support for pseudocolor pipeline + + var renderCanvas = getRenderCanvas(enabledElement, image, invalidated); + var sx = enabledElement.viewport.displayedArea.tlhc.x - 1; + var sy = enabledElement.viewport.displayedArea.tlhc.y - 1; + var width = enabledElement.viewport.displayedArea.brhc.x - sx; + var height = enabledElement.viewport.displayedArea.brhc.y - sy; + context.drawImage(renderCanvas, sx, sy, width, height, 0, 0, width, height); + enabledElement.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_4__["default"])(enabledElement); +} +/** + * API function to draw a pseudo-color image to a given layer + * + * @param {EnabledElementLayer} layer The layer that the image will be added to + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + */ + +function addPseudoColorLayer(layer, invalidated) { + if (layer === undefined) { + throw new Error('addPseudoColorLayer: layer parameter must not be undefined'); + } + + var image = layer.image; + + if (image === undefined) { + throw new Error('addPseudoColorLayer: image must be loaded before it can be drawn'); + } + + layer.canvas = getRenderCanvas(layer, image, invalidated); + var context = layer.canvas.getContext('2d'); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !layer.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; + layer.renderingTools = Object(_saveLastRendered_js__WEBPACK_IMPORTED_MODULE_4__["default"])(layer); +} + +/***/ }), + +/***/ "./rendering/renderToCanvas.js": +/*!*************************************!*\ + !*** ./rendering/renderToCanvas.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _internal_drawImageSync_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../internal/drawImageSync.js */ "./internal/drawImageSync.js"); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _internal_tryEnableWebgl_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../internal/tryEnableWebgl.js */ "./internal/tryEnableWebgl.js"); + + + + + +/** + * @typedef {Object} EnabledElementStub + * @property {HTMLElement} element The enabled element + * @property {HTMLCanvasElement} canvas The current canvas + * @property {Object} image Currently displayed image + * @property {Boolean} invalid Whether or not the image pixel data has been changed + * @property {Boolean} needsRedraw A flag for triggering a redraw of the canvas without re-retrieving the pixel data, since it remains valid + * @property {Object} options Layer drawing options + * @property {Object[]} layers Layers added to the EnabledElement + * @property {Object} data + * @property {Object} renderingTools + * @property {Object} viewport The current viewport + * @memberof rendering + */ + +/** + * creates a dummy enabled element + * + * @param {HTMLCanvasElement} canvas the canvas that will be assigned to the enabled element. + * @param {any} image An Image loaded by a Cornerstone Image Loader + * @param { any } options Options for rendering the image (e.g.enable webgl by {renderer: 'webgl' }) + * @param { any } viewport A set of Cornerstone viewport parameters + * @returns {EnabledElementStub} a dummy enabled element + * @memberof rendering + */ + +function createEnabledElementStub(canvas, image, options, viewport) { + return { + element: canvas, + canvas: canvas, + image: image, + invalid: true, + // True if image needs to be drawn, false if not + needsRedraw: true, + options: options, + layers: [], + data: {}, + renderingTools: {}, + viewport: viewport + }; +} +/** + * Render the image to the provided canvas immediately. + * @param {any} canvas The HTML canvas where the image will be rendered. + * @param {any} image An Image loaded by a Cornerstone Image Loader + * @param {any} [viewport = null] A set of Cornerstone viewport parameters + * @param {any} [options = null] Options for rendering the image (e.g. enable webgl by {renderer: 'webgl'}) + * @returns {void} + * @memberof rendering + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (canvas, image) { + var viewport = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + + if (canvas === undefined) { + throw new Error('renderToCanvas: parameter canvas cannot be undefined'); + } // If this enabled element has the option set for WebGL, we should + // Check if this device actually supports it + + + if (options && options.renderer && options.renderer.toLowerCase() === 'webgl') { + Object(_internal_tryEnableWebgl_js__WEBPACK_IMPORTED_MODULE_4__["default"])(options); + } + + var defaultViewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_3__["default"])(canvas, image); + + if (viewport) { + Object.assign(defaultViewport, viewport); + } + + var enabledElementStub = createEnabledElementStub(canvas, image, options, defaultViewport); + var eventDetails = { + enabledElement: enabledElementStub, + timestamp: Date.now() + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElementStub.element, _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].PRE_RENDER, eventDetails); + Object(_internal_drawImageSync_js__WEBPACK_IMPORTED_MODULE_2__["default"])(enabledElementStub, enabledElementStub.invalid); +}); + +/***/ }), + +/***/ "./rendering/renderWebImage.js": +/*!*************************************!*\ + !*** ./rendering/renderWebImage.js ***! + \*************************************/ +/*! exports provided: renderWebImage */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderWebImage", function() { return renderWebImage; }); +/* harmony import */ var _setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../setToPixelCoordinateSystem.js */ "./setToPixelCoordinateSystem.js"); +/* harmony import */ var _renderColorImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./renderColorImage.js */ "./rendering/renderColorImage.js"); + + +/** + * API function to draw a standard web image (PNG, JPG) to an enabledImage + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element to redraw + * @param {Boolean} invalidated - true if pixel data has been invalidated and cached rendering should not be used + * @returns {void} + * @memberof rendering + */ + +function renderWebImage(enabledElement, invalidated) { + if (enabledElement === undefined) { + throw new Error('renderWebImage: enabledElement parameter must not be undefined'); + } + + var image = enabledElement.image; + + if (image === undefined) { + throw new Error('renderWebImage: image must be loaded before it can be drawn'); + } // If the viewport ww/wc and invert all match the initial state of the image, we can draw the image + // Directly. If any of those are changed, we call renderColorImage() to apply the lut + + + if (enabledElement.viewport.voi.windowWidth === enabledElement.image.windowWidth && enabledElement.viewport.voi.windowCenter === enabledElement.image.windowCenter && enabledElement.viewport.invert === false) { + // Get the canvas context and reset the transform + var context = enabledElement.canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); // Clear the canvas + + context.fillStyle = 'black'; + context.fillRect(0, 0, enabledElement.canvas.width, enabledElement.canvas.height); // Turn off image smooth/interpolation if pixelReplication is set in the viewport + + context.imageSmoothingEnabled = !enabledElement.viewport.pixelReplication; + context.mozImageSmoothingEnabled = context.imageSmoothingEnabled; // Save the canvas context state and apply the viewport properties + + Object(_setToPixelCoordinateSystem_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement, context); + var sx = enabledElement.viewport.displayedArea.tlhc.x - 1; + var sy = enabledElement.viewport.displayedArea.tlhc.y - 1; + var width = enabledElement.viewport.displayedArea.brhc.x - sx; + var height = enabledElement.viewport.displayedArea.brhc.y - sy; + context.drawImage(image.getImage(), sx, sy, width, height, 0, 0, width, height); + } else { + Object(_renderColorImage_js__WEBPACK_IMPORTED_MODULE_1__["renderColorImage"])(enabledElement, invalidated); + } +} + +/***/ }), + +/***/ "./rendering/saveLastRendered.js": +/*!***************************************!*\ + !*** ./rendering/saveLastRendered.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Saves the parameters of the last render into renderingTools, used later to decide if data can be reused. + * + * @param {Object} enabledElement Cornerstone EnabledElement + * @returns {Object} enabledElement.renderingTools + * @memberof rendering + */ +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement) { + var imageId = enabledElement.image.imageId; + var viewport = enabledElement.viewport; + var isColor = enabledElement.image.color; + enabledElement.renderingTools.lastRenderedImageId = imageId; + enabledElement.renderingTools.lastRenderedIsColor = isColor; + enabledElement.renderingTools.lastRenderedViewport = { + windowCenter: viewport.voi.windowCenter, + windowWidth: viewport.voi.windowWidth, + invert: viewport.invert, + rotation: viewport.rotation, + hflip: viewport.hflip, + vflip: viewport.vflip, + modalityLUT: viewport.modalityLUT, + voiLUT: viewport.voiLUT, + colormap: viewport.colormap + }; + return enabledElement.renderingTools; +}); + +/***/ }), + +/***/ "./reset.js": +/*!******************!*\ + !*** ./reset.js ***! + \******************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); + + + +/** + * Resets the viewport to the default settings + * + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); + enabledElement.viewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement.canvas, enabledElement.image); + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element); +}); + +/***/ }), + +/***/ "./resize.js": +/*!*******************!*\ + !*** ./resize.js ***! + \*******************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _fitToWindow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fitToWindow.js */ "./fitToWindow.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./triggerEvent.js */ "./triggerEvent.js"); +/* harmony import */ var _internal_getImageSize_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./internal/getImageSize.js */ "./internal/getImageSize.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./events.js */ "./events.js"); + + + + + + +/** + * This module is responsible for enabling an element to display images with cornerstone + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {HTMLElement} canvas The Canvas DOM element within the DOM element enabled for Cornerstone + * @returns {void} + */ + +function setCanvasSize(element, canvas) { + // The device pixel ratio is 1.0 for normal displays and > 1.0 + // For high DPI displays like Retina + + /* + This functionality is disabled due to buggy behavior on systems with mixed DPI's. If the canvas + is created on a display with high DPI (e.g. 2.0) and then the browser window is dragged to + a different display with a different DPI (e.g. 1.0), the canvas is not recreated so the pageToPixel + produces incorrect results. I couldn't find any way to determine when the DPI changed other than + by polling which is not very clean. If anyone has any ideas here, please let me know, but for now + we will disable this functionality. We may want + to add a mechanism to optionally enable this functionality if we can determine it is safe to do + so (e.g. iPad or iPhone or perhaps enumerate the displays on the system. I am choosing + to be cautious here since I would rather not have bug reports or safety issues related to this + scenario. + var devicePixelRatio = window.devicePixelRatio; + if(devicePixelRatio === undefined) { + devicePixelRatio = 1.0; + } + */ + // Avoid setting the same value because it flashes the canvas with IE and Edge + if (canvas.width !== element.clientWidth) { + canvas.width = element.clientWidth; + canvas.style.width = "".concat(element.clientWidth, "px"); + } // Avoid setting the same value because it flashes the canvas with IE and Edge + + + if (canvas.height !== element.clientHeight) { + canvas.height = element.clientHeight; + canvas.style.height = "".concat(element.clientHeight, "px"); + } +} +/** + * Checks if the image of a given enabled element fitted the window + * before the resize + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element + * @param {number} oldCanvasWidth The width of the canvas before the resize + * @param {number} oldCanvasHeight The height of the canvas before the resize + * @return {Boolean} true if it fitted the windows, false otherwise + */ + + +function wasFitToWindow(enabledElement, oldCanvasWidth, oldCanvasHeight) { + var scale = enabledElement.viewport.scale; + var imageSize = Object(_internal_getImageSize_js__WEBPACK_IMPORTED_MODULE_4__["default"])(enabledElement.image, enabledElement.viewport.rotation); + var imageWidth = Math.round(imageSize.width * scale); + var imageHeight = Math.round(imageSize.height * scale); + var x = enabledElement.viewport.translation.x; + var y = enabledElement.viewport.translation.y; + return imageWidth === oldCanvasWidth && imageHeight <= oldCanvasHeight || imageWidth <= oldCanvasWidth && imageHeight === oldCanvasHeight && x === 0 && y === 0; +} +/** + * Rescale the image relative to the changed size of the canvas + * + * @param {EnabledElement} enabledElement The Cornerstone Enabled Element + * @param {number} oldCanvasWidth The width of the canvas before the resize + * @param {number} oldCanvasHeight The height of the canvas before the resize + * @return {void} + */ + + +function relativeRescale(enabledElement, oldCanvasWidth, oldCanvasHeight) { + var scale = enabledElement.viewport.scale; + var canvasWidth = enabledElement.canvas.width; + var canvasHeight = enabledElement.canvas.height; + var relWidthChange = canvasWidth / oldCanvasWidth; + var relHeightChange = canvasHeight / oldCanvasHeight; + var relChange = Math.sqrt(relWidthChange * relHeightChange); + enabledElement.viewport.scale = relChange * scale; +} +/** + * Resizes an enabled element and optionally fits the image to window + * + * @param {HTMLElement} element The DOM element enabled for Cornerstone + * @param {Boolean} forceFitToWindow true to to force a refit, false to rescale accordingly + * @returns {void} + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (element, forceFitToWindow) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + var oldCanvasWidth = enabledElement.canvas.width; + var oldCanvasHeight = enabledElement.canvas.height; + setCanvasSize(element, enabledElement.canvas); + var eventData = { + element: element + }; + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_5__["default"].ELEMENT_RESIZED, eventData); + + if (enabledElement.image === undefined) { + return; + } + + if (forceFitToWindow || wasFitToWindow(enabledElement, oldCanvasWidth, oldCanvasHeight)) { + // Fit the image to the window again if it fitted before the resize + Object(_fitToWindow_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element); + } else { + // Adapt the scale of a zoomed or panned image relative to the size change + relativeRescale(enabledElement, oldCanvasWidth, oldCanvasHeight); + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element); + } +}); + +/***/ }), + +/***/ "./setToPixelCoordinateSystem.js": +/*!***************************************!*\ + !*** ./setToPixelCoordinateSystem.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_calculateTransform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/calculateTransform.js */ "./internal/calculateTransform.js"); + +/** + * Sets the canvas context transformation matrix to the pixel coordinate system. This allows + * geometry to be driven using the canvas context using coordinates in the pixel coordinate system + * @param {EnabledElement} enabledElement The + * @param {CanvasRenderingContext2D} context The CanvasRenderingContext2D for the enabledElement's Canvas + * @param {Number} [scale] Optional scale to apply + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, context, scale) { + if (enabledElement === undefined) { + throw new Error('setToPixelCoordinateSystem: parameter enabledElement must not be undefined'); + } + + if (context === undefined) { + throw new Error('setToPixelCoordinateSystem: parameter context must not be undefined'); + } + + var transform = Object(_internal_calculateTransform_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement, scale); + context.setTransform(transform.m[0], transform.m[1], transform.m[2], transform.m[3], transform.m[4], transform.m[5]); +}); + +/***/ }), + +/***/ "./setViewport.js": +/*!************************!*\ + !*** ./setViewport.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/getDefaultViewport.js */ "./internal/getDefaultViewport.js"); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _updateImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updateImage.js */ "./updateImage.js"); + + + +var MIN_WINDOW_WIDTH = 0.000001; +var MIN_VIEWPORT_SCALE = 0.0001; +/** + * Sets/updates viewport of a given enabled element + * + * @param {HTMLElement} element - DOM element of the enabled element + * @param {Viewport} [viewport] - Object containing the viewport properties + * @returns {void} + * @memberof ViewportSettings + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, viewport) { + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_1__["getEnabledElement"])(element); // If viewport is not already set, start with default and merge new + // viewport options later + + if (enabledElement.viewport === undefined) { + enabledElement.viewport = Object(_internal_getDefaultViewport_js__WEBPACK_IMPORTED_MODULE_0__["default"])(enabledElement.canvas); + } // Merge viewport + + + if (viewport) { + for (var attrname in viewport) { + if (viewport[attrname] !== null) { + enabledElement.viewport[attrname] = viewport[attrname]; + } + } + } // Prevent window width from being too small (note that values close to zero are valid and can occur with + // PET images in particular) + + + if (enabledElement.viewport.voi.windowWidth) { + enabledElement.viewport.voi.windowWidth = Math.max(viewport.voi.windowWidth, MIN_WINDOW_WIDTH); + } // Prevent scale from getting too small + + + if (enabledElement.viewport.scale) { + enabledElement.viewport.scale = Math.max(viewport.scale, MIN_VIEWPORT_SCALE); + } // Normalize the rotation value to a positive rotation in degrees + + + enabledElement.viewport.rotation %= 360; + + if (enabledElement.viewport.rotation < 0) { + enabledElement.viewport.rotation += 360; + } + + if (enabledElement.image) { + // Force the image to be updated since the viewport has been modified + Object(_updateImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element); + } +}); + +/***/ }), + +/***/ "./triggerEvent.js": +/*!*************************!*\ + !*** ./triggerEvent.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return triggerEvent; }); +/** + * Trigger a CustomEvent + * + * @param {EventTarget} el The element or EventTarget to trigger the event upon + * @param {String} type The event type name + * @param {Object|null} detail=null The event data to be sent + * @returns {Boolean} The return value is false if at least one event listener called preventDefault(). Otherwise it returns true. + */ +function triggerEvent(el, type) { + var detail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + var event; // This check is needed to polyfill CustomEvent on IE11- + + if (typeof window.CustomEvent === 'function') { + event = new CustomEvent(type, { + detail: detail, + cancelable: true + }); + } else { + event = document.createEvent('CustomEvent'); + event.initCustomEvent(type, true, true, detail); + } + + return el.dispatchEvent(event); +} + +/***/ }), + +/***/ "./updateImage.js": +/*!************************!*\ + !*** ./updateImage.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _enabledElements_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enabledElements.js */ "./enabledElements.js"); +/* harmony import */ var _internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/drawImage.js */ "./internal/drawImage.js"); + + +/** + * Forces the image to be updated/redrawn for the specified enabled element + * @param {HTMLElement} element An HTML Element enabled for Cornerstone + * @param {Boolean} [invalidated=false] Whether or not the image pixel data has been changed, necessitating a redraw + * + * @returns {void} + * @memberof Drawing + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element) { + var invalidated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + var enabledElement = Object(_enabledElements_js__WEBPACK_IMPORTED_MODULE_0__["getEnabledElement"])(element); + + if (enabledElement.image === undefined && !enabledElement.layers.length) { + throw new Error('updateImage: image has not been loaded yet'); + } + + Object(_internal_drawImage_js__WEBPACK_IMPORTED_MODULE_1__["default"])(enabledElement, invalidated); +}); + +/***/ }), + +/***/ "./webgl/createProgramFromString.js": +/*!******************************************!*\ + !*** ./webgl/createProgramFromString.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Creates and compiles a shader. + * + * @param {!WebGLRenderingContext} gl The WebGL Context. + * @param {string} shaderSource The GLSL source code for the shader. + * @param {number} shaderType The type of shader, VERTEX_SHADER or FRAGMENT_SHADER. + * + * @return {!WebGLShader} The shader. + * @memberof WebGLRendering + */ +function compileShader(gl, shaderSource, shaderType) { + // Create the shader object + var shader = gl.createShader(shaderType); // Set the shader source code. + + gl.shaderSource(shader, shaderSource); // Compile the shader + + gl.compileShader(shader); // Check if it compiled + + var success = gl.getShaderParameter(shader, gl.COMPILE_STATUS); + + if (!success && !gl.isContextLost()) { + // Something went wrong during compilation; get the error + var infoLog = gl.getShaderInfoLog(shader); + console.error("Could not compile shader:\n".concat(infoLog)); + } + + return shader; +} +/** + * Creates a program from 2 shaders. + * + * @param {!WebGLRenderingContext} gl The WebGL context. + * @param {!WebGLShader} vertexShader A vertex shader. + * @param {!WebGLShader} fragmentShader A fragment shader. + * @return {!WebGLProgram} A program. + * @memberof WebGLRendering + */ + + +function createProgram(gl, vertexShader, fragmentShader) { + // Create a program. + var program = gl.createProgram(); // Attach the shaders. + + gl.attachShader(program, vertexShader); + gl.attachShader(program, fragmentShader); // Link the program. + + gl.linkProgram(program); // Check if it linked. + + var success = gl.getProgramParameter(program, gl.LINK_STATUS); + + if (!success && !gl.isContextLost()) { + // Something went wrong with the link + var infoLog = gl.getProgramInfoLog(program); + console.error("WebGL program filed to link:\n".concat(infoLog)); + } + + return program; +} +/** + * Creates a program from 2 shaders source (Strings) + * @param {!WebGLRenderingContext} gl The WebGL context. + * @param {!WebGLShader} vertexShaderSrc Vertex shader string + * @param {!WebGLShader} fragShaderSrc Fragment shader string + * @return {!WebGLProgram} A program + * @memberof WebGLRendering + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (gl, vertexShaderSrc, fragShaderSrc) { + var vertexShader = compileShader(gl, vertexShaderSrc, gl.VERTEX_SHADER); + var fragShader = compileShader(gl, fragShaderSrc, gl.FRAGMENT_SHADER); + return createProgram(gl, vertexShader, fragShader); +}); + +/***/ }), + +/***/ "./webgl/index.js": +/*!************************!*\ + !*** ./webgl/index.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _renderer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./renderer.js */ "./webgl/renderer.js"); +/* harmony import */ var _createProgramFromString_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createProgramFromString.js */ "./webgl/createProgramFromString.js"); +/* harmony import */ var _textureCache_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./textureCache.js */ "./webgl/textureCache.js"); + + + +/** + * @module WebGLRendering + */ + +var mod = { + createProgramFromString: _createProgramFromString_js__WEBPACK_IMPORTED_MODULE_1__["default"], + renderer: { + render: _renderer_js__WEBPACK_IMPORTED_MODULE_0__["render"], + initRenderer: _renderer_js__WEBPACK_IMPORTED_MODULE_0__["initRenderer"], + getRenderCanvas: _renderer_js__WEBPACK_IMPORTED_MODULE_0__["getRenderCanvas"], + isWebGLAvailable: _renderer_js__WEBPACK_IMPORTED_MODULE_0__["isWebGLAvailable"] + }, + textureCache: _textureCache_js__WEBPACK_IMPORTED_MODULE_2__["default"] +}; +Object.defineProperty(mod, 'isWebGLInitialized', { + enumerable: true, + configurable: false, + get: function get() { + return _renderer_js__WEBPACK_IMPORTED_MODULE_0__["isWebGLInitialized"]; + } +}); +/* harmony default export */ __webpack_exports__["default"] = (mod); + +/***/ }), + +/***/ "./webgl/renderer.js": +/*!***************************!*\ + !*** ./webgl/renderer.js ***! + \***************************/ +/*! exports provided: isWebGLInitialized, getRenderCanvas, initRenderer, render, isWebGLAvailable */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isWebGLInitialized", function() { return isWebGLInitialized; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getRenderCanvas", function() { return getRenderCanvas; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initRenderer", function() { return initRenderer; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isWebGLAvailable", function() { return isWebGLAvailable; }); +/* harmony import */ var _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./shaders/index.js */ "./webgl/shaders/index.js"); +/* harmony import */ var _vertexShader_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./vertexShader.js */ "./webgl/vertexShader.js"); +/* harmony import */ var _textureCache_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./textureCache.js */ "./webgl/textureCache.js"); +/* harmony import */ var _createProgramFromString_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createProgramFromString.js */ "./webgl/createProgramFromString.js"); +/* eslint no-bitwise: 0 */ + + + + +var renderCanvas = document.createElement('canvas'); +var gl; +var texCoordBuffer; +var positionBuffer; +var isWebGLInitialized = false; + +function getRenderCanvas() { + return renderCanvas; +} + +function initShaders() { + for (var id in _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["shaders"]) { + // Console.log("WEBGL: Loading shader", id); + var shader = _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["shaders"][id]; + shader.attributes = {}; + shader.uniforms = {}; + shader.vert = _vertexShader_js__WEBPACK_IMPORTED_MODULE_1__["vertexShader"]; + shader.program = Object(_createProgramFromString_js__WEBPACK_IMPORTED_MODULE_3__["default"])(gl, shader.vert, shader.frag); + shader.attributes.texCoordLocation = gl.getAttribLocation(shader.program, 'a_texCoord'); + gl.enableVertexAttribArray(shader.attributes.texCoordLocation); + shader.attributes.positionLocation = gl.getAttribLocation(shader.program, 'a_position'); + gl.enableVertexAttribArray(shader.attributes.positionLocation); + shader.uniforms.resolutionLocation = gl.getUniformLocation(shader.program, 'u_resolution'); + } +} + +function initRenderer() { + if (isWebGLInitialized === true) { + // Console.log("WEBGL Renderer already initialized"); + return; + } + + if (initWebGL(renderCanvas)) { + initBuffers(); + initShaders(); // Console.log("WEBGL Renderer initialized!"); + + isWebGLInitialized = true; + } +} + +function updateRectangle(gl, width, height) { + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([width, height, 0, height, width, 0, 0, 0]), gl.STATIC_DRAW); +} + +function handleLostContext(event) { + event.preventDefault(); + console.warn('WebGL Context Lost!'); +} + +function handleRestoredContext(event) { + event.preventDefault(); + isWebGLInitialized = false; + _textureCache_js__WEBPACK_IMPORTED_MODULE_2__["default"].purgeCache(); + initRenderer(); // Console.log('WebGL Context Restored.'); +} + +function initWebGL(canvas) { + gl = null; + + try { + // Try to grab the standard context. If it fails, fallback to experimental. + var options = { + preserveDrawingBuffer: true // Preserve buffer so we can copy to display canvas element + + }; // ---------------- Testing purposes ------------- + // If (debug === true && WebGLDebugUtils) { + // RenderCanvas = WebGLDebugUtils.makeLostContextSimulatingCanvas(renderCanvas); + // } + // ---------------- Testing purposes ------------- + + gl = canvas.getContext('webgl', options) || canvas.getContext('experimental-webgl', options); // Set up event listeners for context lost / context restored + + canvas.removeEventListener('webglcontextlost', handleLostContext, false); + canvas.addEventListener('webglcontextlost', handleLostContext, false); + canvas.removeEventListener('webglcontextrestored', handleRestoredContext, false); + canvas.addEventListener('webglcontextrestored', handleRestoredContext, false); + } catch (error) { + throw new Error('Error creating WebGL context'); + } // If we don't have a GL context, give up now + + + if (!gl) { + console.error('Unable to initialize WebGL. Your browser may not support it.'); + gl = null; + } + + return gl; +} +/** + * Returns the image data type as a string representation. + * @param {any} image The cornerstone image object + * @returns {string} image data type (rgb, iint16, uint16, int8 and uint8) + * @memberof WebGLRendering + */ + + +function getImageDataType(image) { + if (image.color) { + return 'rgb'; + } + + var pixelData = image.getPixelData(); + + if (pixelData instanceof Int16Array) { + return 'int16'; + } + + if (pixelData instanceof Uint16Array) { + return 'uint16'; + } + + if (pixelData instanceof Int8Array) { + return 'int8'; + } + + return 'uint8'; +} + +function getShaderProgram(image) { + var datatype = getImageDataType(image); // We need a mechanism for + // Choosing the shader based on the image datatype + // Console.log("Datatype: " + datatype); + + if (_shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["shaders"].hasOwnProperty(datatype)) { + return _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["shaders"][datatype]; + } + + return _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["shaders"].rgb; +} + +function generateTexture(image) { + var TEXTURE_FORMAT = { + uint8: gl.LUMINANCE, + int8: gl.LUMINANCE_ALPHA, + uint16: gl.LUMINANCE_ALPHA, + int16: gl.RGB, + rgb: gl.RGB + }; + var TEXTURE_BYTES = { + int8: 1, + // Luminance + uint16: 2, + // Luminance + Alpha + int16: 3, + // RGB + rgb: 3 // RGB + + }; + var imageDataType = getImageDataType(image); + var format = TEXTURE_FORMAT[imageDataType]; // GL texture configuration + + var texture = gl.createTexture(); + gl.bindTexture(gl.TEXTURE_2D, texture); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); + gl.pixelStorei(gl.UNPACK_ALIGNMENT, 1); + var imageData = _shaders_index_js__WEBPACK_IMPORTED_MODULE_0__["dataUtilities"][imageDataType].storedPixelDataToImageData(image, image.width, image.height); + gl.texImage2D(gl.TEXTURE_2D, 0, format, image.width, image.height, 0, format, gl.UNSIGNED_BYTE, imageData); // Calculate the size in bytes of this image in memory + + var sizeInBytes = image.width * image.height * TEXTURE_BYTES[imageDataType]; + return { + texture: texture, + sizeInBytes: sizeInBytes + }; +} + +function getImageTexture(image) { + var imageTexture = _textureCache_js__WEBPACK_IMPORTED_MODULE_2__["default"].getImageTexture(image.imageId); + + if (!imageTexture) { + // Console.log("Generating texture for imageid: ", image.imageId); + imageTexture = generateTexture(image); + _textureCache_js__WEBPACK_IMPORTED_MODULE_2__["default"].putImageTexture(image, imageTexture); + } + + return imageTexture.texture; +} + +function initBuffers() { + positionBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer); + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([1, 1, 0, 1, 1, 0, 0, 0]), gl.STATIC_DRAW); + texCoordBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, texCoordBuffer); + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([1.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0]), gl.STATIC_DRAW); +} + +function renderQuad(shader, parameters, texture, width, height) { + gl.clearColor(1.0, 0.0, 0.0, 1.0); + gl.viewport(0, 0, width, height); + gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); + gl.useProgram(shader.program); + gl.bindBuffer(gl.ARRAY_BUFFER, texCoordBuffer); + gl.vertexAttribPointer(shader.attributes.texCoordLocation, 2, gl.FLOAT, false, 0, 0); + gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer); + gl.vertexAttribPointer(shader.attributes.positionLocation, 2, gl.FLOAT, false, 0, 0); + + for (var key in parameters) { + var uniformLocation = gl.getUniformLocation(shader.program, key); + + if (!uniformLocation) { + continue; // Disabling this error for now since RGB requires minPixelValue + // but the other shaders do not. + // throw `Could not access location for uniform: ${key}`; + } + + var uniform = parameters[key]; + var type = uniform.type; + var value = uniform.value; + + if (type === 'i') { + gl.uniform1i(uniformLocation, value); + } else if (type === 'f') { + gl.uniform1f(uniformLocation, value); + } else if (type === '2f') { + gl.uniform2f(uniformLocation, value[0], value[1]); + } + } + + updateRectangle(gl, width, height); + gl.activeTexture(gl.TEXTURE0); + gl.bindTexture(gl.TEXTURE_2D, texture); + gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4); +} + +function render(enabledElement) { + // Resize the canvas + var image = enabledElement.image; + renderCanvas.width = image.width; + renderCanvas.height = image.height; + var viewport = enabledElement.viewport; // Render the current image + + var shader = getShaderProgram(image); + var texture = getImageTexture(image); + var parameters = { + u_resolution: { + type: '2f', + value: [image.width, image.height] + }, + wc: { + type: 'f', + value: viewport.voi.windowCenter + }, + ww: { + type: 'f', + value: viewport.voi.windowWidth + }, + slope: { + type: 'f', + value: image.slope + }, + intercept: { + type: 'f', + value: image.intercept + }, + minPixelValue: { + type: 'f', + value: image.minPixelValue + }, + invert: { + type: 'i', + value: viewport.invert ? 1 : 0 + } + }; + renderQuad(shader, parameters, texture, image.width, image.height); + return renderCanvas; +} +function isWebGLAvailable() { + // Adapted from + // http://stackoverflow.com/questions/9899807/three-js-detect-webgl-support-and-fallback-to-regular-canvas + var options = { + failIfMajorPerformanceCaveat: true + }; + + try { + var canvas = document.createElement('canvas'); + return Boolean(window.WebGLRenderingContext) && (canvas.getContext('webgl', options) || canvas.getContext('experimental-webgl', options)); + } catch (e) { + return false; + } +} + +/***/ }), + +/***/ "./webgl/shaders/index.js": +/*!********************************!*\ + !*** ./webgl/shaders/index.js ***! + \********************************/ +/*! exports provided: shaders, dataUtilities */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shaders", function() { return shaders; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dataUtilities", function() { return dataUtilities; }); +/* harmony import */ var _int16_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int16.js */ "./webgl/shaders/int16.js"); +/* harmony import */ var _int8_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./int8.js */ "./webgl/shaders/int8.js"); +/* harmony import */ var _rgb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./rgb.js */ "./webgl/shaders/rgb.js"); +/* harmony import */ var _uint16_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./uint16.js */ "./webgl/shaders/uint16.js"); +/* harmony import */ var _uint8_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./uint8.js */ "./webgl/shaders/uint8.js"); + + + + + +var shaders = { + int16: _int16_js__WEBPACK_IMPORTED_MODULE_0__["int16Shader"], + int8: _int8_js__WEBPACK_IMPORTED_MODULE_1__["int8Shader"], + rgb: _rgb_js__WEBPACK_IMPORTED_MODULE_2__["rgbShader"], + uint16: _uint16_js__WEBPACK_IMPORTED_MODULE_3__["uint16Shader"], + uint8: _uint8_js__WEBPACK_IMPORTED_MODULE_4__["uint8Shader"] +}; +var dataUtilities = { + int16: _int16_js__WEBPACK_IMPORTED_MODULE_0__["int16DataUtilities"], + int8: _int8_js__WEBPACK_IMPORTED_MODULE_1__["int8DataUtilities"], + rgb: _rgb_js__WEBPACK_IMPORTED_MODULE_2__["rgbDataUtilities"], + uint16: _uint16_js__WEBPACK_IMPORTED_MODULE_3__["uint16DataUtilities"], + uint8: _uint8_js__WEBPACK_IMPORTED_MODULE_4__["uint8DataUtilities"] +}; + + +/***/ }), + +/***/ "./webgl/shaders/int16.js": +/*!********************************!*\ + !*** ./webgl/shaders/int16.js ***! + \********************************/ +/*! exports provided: int16DataUtilities, int16Shader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "int16DataUtilities", function() { return int16DataUtilities; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "int16Shader", function() { return int16Shader; }); +/* eslint no-bitwise: 0 */ +var int16Shader = {}; +/** + * Convert stored pixel data to image data. + * + * Pack int16 into three uint8 channels (r, g, b) + * + * @param {Image} image A Cornerstone Image Object + * @returns {Uint8Array} The image data for use by the WebGL shader + * @memberof WebGLRendering + */ + +function storedPixelDataToImageData(image) { + // Transfer image data to alpha and luminance channels of WebGL texture + // Credit to @jpambrun and @fernandojsg + // Pack int16 into three uint8 channels (r, g, b) + var pixelData = image.getPixelData(); + var numberOfChannels = 3; + var data = new Uint8Array(image.width * image.height * numberOfChannels); + var offset = 0; + + for (var i = 0; i < pixelData.length; i++) { + var val = Math.abs(pixelData[i]); + data[offset++] = val & 0xFF; + data[offset++] = val >> 8; + data[offset++] = pixelData[i] < 0 ? 0 : 1; // 0 For negative, 1 for positive + } + + return data; +} + +var int16DataUtilities = { + storedPixelDataToImageData: storedPixelDataToImageData +}; +int16Shader.frag = 'precision mediump float;' + 'uniform sampler2D u_image;' + 'uniform float ww;' + 'uniform float wc;' + 'uniform float slope;' + 'uniform float intercept;' + 'uniform int invert;' + 'varying vec2 v_texCoord;' + 'void main() {' + // Get texture +'vec4 color = texture2D(u_image, v_texCoord);' + // Calculate luminance from packed texture +'float intensity = color.r*256.0 + color.g*65536.0;' + 'if (color.b == 0.0)' + 'intensity = -intensity;' + // Rescale based on slope and window settings +'intensity = intensity * slope + intercept;' + 'float center0 = wc - 0.5;' + 'float width0 = max(ww, 1.0);' + 'intensity = (intensity - center0) / width0 + 0.5;' + // Clamp intensity +'intensity = clamp(intensity, 0.0, 1.0);' + // RGBA output +'gl_FragColor = vec4(intensity, intensity, intensity, 1.0);' + // Apply any inversion necessary +'if (invert == 1)' + 'gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;' + '}'; + + +/***/ }), + +/***/ "./webgl/shaders/int8.js": +/*!*******************************!*\ + !*** ./webgl/shaders/int8.js ***! + \*******************************/ +/*! exports provided: int8DataUtilities, int8Shader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "int8DataUtilities", function() { return int8DataUtilities; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "int8Shader", function() { return int8Shader; }); +var int8Shader = {}; +/** + * Convert stored pixel data to image data. + * + * Store data in Uint8Array + * + * @param {Image} image A Cornerstone Image Object + * @returns {Uint8Array} The image data for use by the WebGL shader + * @memberof WebGLRendering + */ + +function storedPixelDataToImageData(image) { + // Transfer image data to alpha channel of WebGL texture + // Store data in Uint8Array + var pixelData = image.getPixelData(); + var numberOfChannels = 2; + var data = new Uint8Array(image.width * image.height * numberOfChannels); + var offset = 0; + + for (var i = 0; i < pixelData.length; i++) { + data[offset++] = pixelData[i]; + data[offset++] = pixelData[i] < 0 ? 0 : 1; // 0 For negative, 1 for positive + } + + return data; +} + +var int8DataUtilities = { + storedPixelDataToImageData: storedPixelDataToImageData +}; +int8Shader.frag = 'precision mediump float;' + 'uniform sampler2D u_image;' + 'uniform float ww;' + 'uniform float wc;' + 'uniform float slope;' + 'uniform float intercept;' + 'uniform int invert;' + 'varying vec2 v_texCoord;' + 'void main() {' + // Get texture +'vec4 color = texture2D(u_image, v_texCoord);' + // Calculate luminance from packed texture +'float intensity = color.r*256.;' + 'if (color.a == 0.0)' + 'intensity = -intensity;' + // Rescale based on slope and window settings +'intensity = intensity * slope + intercept;' + 'float center0 = wc - 0.5;' + 'float width0 = max(ww, 1.0);' + 'intensity = (intensity - center0) / width0 + 0.5;' + // Clamp intensity +'intensity = clamp(intensity, 0.0, 1.0);' + // RGBA output +'gl_FragColor = vec4(intensity, intensity, intensity, 1.0);' + // Apply any inversion necessary +'if (invert == 1)' + 'gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;' + '}'; + + +/***/ }), + +/***/ "./webgl/shaders/rgb.js": +/*!******************************!*\ + !*** ./webgl/shaders/rgb.js ***! + \******************************/ +/*! exports provided: rgbDataUtilities, rgbShader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rgbDataUtilities", function() { return rgbDataUtilities; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rgbShader", function() { return rgbShader; }); +var rgbShader = {}; +/** + * Convert stored pixel data to image data. + * + * Pack RGB images into a 3-channel RGB texture + * + * @param {Image} image A Cornerstone Image Object + * @returns {Uint8Array} The image data for use by the WebGL shader + * @memberof WebGLRendering + */ + +function storedPixelDataToImageData(image) { + var minPixelValue = image.minPixelValue; + var canvasImageDataIndex = 0; + var storedPixelDataIndex = 0; // Only 3 channels, since we use WebGL's RGB texture format + + var numStoredPixels = image.width * image.height * 4; + var numOutputPixels = image.width * image.height * 3; + var storedPixelData = image.getPixelData(); + var data = new Uint8Array(numOutputPixels); // NOTE: As of Nov 2014, most javascript engines have lower performance when indexing negative indexes. + // We have a special code path for this case that improves performance. Thanks to @jpambrun for this enhancement + + if (minPixelValue < 0) { + while (storedPixelDataIndex < numStoredPixels) { + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++] + -minPixelValue; // Red + + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++] + -minPixelValue; // Green + + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++] + -minPixelValue; // Blue + + storedPixelDataIndex += 1; // The stored pixel data has 4 channels + } + } else { + while (storedPixelDataIndex < numStoredPixels) { + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++]; // Red + + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++]; // Green + + data[canvasImageDataIndex++] = storedPixelData[storedPixelDataIndex++]; // Blue + + storedPixelDataIndex += 1; // The stored pixel data has 4 channels + } + } + + return data; +} + +var rgbDataUtilities = { + storedPixelDataToImageData: storedPixelDataToImageData +}; +rgbShader.frag = 'precision mediump float;' + 'uniform sampler2D u_image;' + 'uniform float ww;' + 'uniform float wc;' + 'uniform float slope;' + 'uniform float intercept;' + 'uniform float minPixelValue;' + 'uniform int invert;' + 'varying vec2 v_texCoord;' + 'void main() {' + // Get texture +'vec3 color = texture2D(u_image, v_texCoord).xyz;' + // Rescale based on slope and intercept +'color = color * 256.0 * slope + intercept;' + // Apply window settings +'float center0 = wc - 0.5 - minPixelValue;' + 'float width0 = max(ww, 1.0);' + 'color = (color - center0) / width0 + 0.5;' + // RGBA output +'gl_FragColor = vec4(color, 1);' + // Apply any inversion necessary +'if (invert == 1)' + 'gl_FragColor.rgb = 1. - gl_FragColor.rgb;' + '}'; + + +/***/ }), + +/***/ "./webgl/shaders/uint16.js": +/*!*********************************!*\ + !*** ./webgl/shaders/uint16.js ***! + \*********************************/ +/*! exports provided: uint16DataUtilities, uint16Shader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "uint16DataUtilities", function() { return uint16DataUtilities; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "uint16Shader", function() { return uint16Shader; }); +/* eslint no-bitwise: 0 */ +var uint16Shader = {}; +/** + * Convert stored pixel data to image data. + * + * For uint16 pack uint16 into two uint8 channels (r and a). + * + * @param {Image} image A Cornerstone Image Object + * @returns {Uint8Array} The image data for use by the WebGL shader + * @memberof WebGLRendering + */ + +function storedPixelDataToImageData(image) { + // Transfer image data to alpha and luminance channels of WebGL texture + // Credit to @jpambrun and @fernandojsg + // Pack uint16 into two uint8 channels (r and a) + var pixelData = image.getPixelData(); + var numberOfChannels = 2; + var data = new Uint8Array(image.width * image.height * numberOfChannels); + var offset = 0; + + for (var i = 0; i < pixelData.length; i++) { + var val = pixelData[i]; + data[offset++] = val & 0xFF; + data[offset++] = val >> 8; + } + + return data; +} + +var uint16DataUtilities = { + storedPixelDataToImageData: storedPixelDataToImageData +}; +uint16Shader.frag = 'precision mediump float;' + 'uniform sampler2D u_image;' + 'uniform float ww;' + 'uniform float wc;' + 'uniform float slope;' + 'uniform float intercept;' + 'uniform int invert;' + 'varying vec2 v_texCoord;' + 'void main() {' + // Get texture +'vec4 color = texture2D(u_image, v_texCoord);' + // Calculate luminance from packed texture +'float intensity = color.r*256.0 + color.a*65536.0;' + // Rescale based on slope and window settings +'intensity = intensity * slope + intercept;' + 'float center0 = wc - 0.5;' + 'float width0 = max(ww, 1.0);' + 'intensity = (intensity - center0) / width0 + 0.5;' + // Clamp intensity +'intensity = clamp(intensity, 0.0, 1.0);' + // RGBA output +'gl_FragColor = vec4(intensity, intensity, intensity, 1.0);' + // Apply any inversion necessary +'if (invert == 1)' + 'gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;' + '}'; + + +/***/ }), + +/***/ "./webgl/shaders/uint8.js": +/*!********************************!*\ + !*** ./webgl/shaders/uint8.js ***! + \********************************/ +/*! exports provided: uint8DataUtilities, uint8Shader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "uint8DataUtilities", function() { return uint8DataUtilities; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "uint8Shader", function() { return uint8Shader; }); +var uint8Shader = {}; +/** + * Convert stored pixel data to image data. Here we will store + * all data in the alpha channel. + * + * @param {Image} image A Cornerstone Image Object + * @returns {Uint8Array} The image data for use by the WebGL shader + * @memberof WebGLRendering + */ + +function storedPixelDataToImageData(image) { + // Transfer image data to alpha channel of WebGL texture + return image.getPixelData(); +} + +var uint8DataUtilities = { + storedPixelDataToImageData: storedPixelDataToImageData +}; +uint8Shader.frag = 'precision mediump float;' + 'uniform sampler2D u_image;' + 'uniform float ww;' + 'uniform float wc;' + 'uniform float slope;' + 'uniform float intercept;' + 'uniform int invert;' + 'varying vec2 v_texCoord;' + 'void main() {' + // Get texture +'vec4 color = texture2D(u_image, v_texCoord);' + // Calculate luminance from packed texture +'float intensity = color.r*256.0;' + // Rescale based on slope and window settings +'intensity = intensity * slope + intercept;' + 'float center0 = wc - 0.5;' + 'float width0 = max(ww, 1.0);' + 'intensity = (intensity - center0) / width0 + 0.5;' + // Clamp intensity +'intensity = clamp(intensity, 0.0, 1.0);' + // RGBA output +'gl_FragColor = vec4(intensity, intensity, intensity, 1.0);' + // Apply any inversion necessary +'if (invert == 1)' + 'gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;' + '}'; + + +/***/ }), + +/***/ "./webgl/textureCache.js": +/*!*******************************!*\ + !*** ./webgl/textureCache.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../triggerEvent.js */ "./triggerEvent.js"); + + +/** + * This module deals with caching image textures in VRAM for WebGL + * @module WebGLTextureCache + */ + +var imageCache = {}; +var cachedImages = []; +var maximumSizeInBytes = 1024 * 1024 * 256; // 256 MB + +var cacheSizeInBytes = 0; + +function getCacheInfo() { + return { + maximumSizeInBytes: maximumSizeInBytes, + cacheSizeInBytes: cacheSizeInBytes, + numberOfImagesCached: cachedImages.length + }; +} + +function purgeCacheIfNecessary() { + // If max cache size has not been exceeded, do nothing + if (cacheSizeInBytes <= maximumSizeInBytes) { + return; + } // Cache size has been exceeded, create list of images sorted by timeStamp + // So we can purge the least recently used image + + + function compare(a, b) { + if (a.timeStamp > b.timeStamp) { + return -1; + } + + if (a.timeStamp < b.timeStamp) { + return 1; + } + + return 0; + } + + cachedImages.sort(compare); // Remove images as necessary + + while (cacheSizeInBytes > maximumSizeInBytes) { + var lastCachedImage = cachedImages[cachedImages.length - 1]; + cacheSizeInBytes -= lastCachedImage.sizeInBytes; + delete imageCache[lastCachedImage.imageId]; + cachedImages.pop(); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].WEBGL_TEXTURE_REMOVED, { + imageId: lastCachedImage.imageId + }); + } + + var cacheInfo = getCacheInfo(); + Object(_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_events_js__WEBPACK_IMPORTED_MODULE_0__["events"], _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].WEBGL_TEXTURE_CACHE_FULL, cacheInfo); +} + +function setMaximumSizeBytes(numBytes) { + if (numBytes === undefined) { + throw new Error('setMaximumSizeBytes: parameter numBytes must not be undefined'); + } + + if (numBytes.toFixed === undefined) { + throw new Error('setMaximumSizeBytes: parameter numBytes must be a number'); + } + + maximumSizeInBytes = numBytes; + purgeCacheIfNecessary(); +} + +function putImageTexture(image, imageTexture) { + var imageId = image.imageId; + + if (image === undefined) { + throw new Error('putImageTexture: image must not be undefined'); + } + + if (imageId === undefined) { + throw new Error('putImageTexture: imageId must not be undefined'); + } + + if (imageTexture === undefined) { + throw new Error('putImageTexture: imageTexture must not be undefined'); + } + + if (Object.prototype.hasOwnProperty.call(imageCache, imageId) === true) { + throw new Error('putImageTexture: imageId already in cache'); + } + + var cachedImage = { + imageId: imageId, + imageTexture: imageTexture, + timeStamp: new Date(), + sizeInBytes: imageTexture.sizeInBytes + }; + imageCache[imageId] = cachedImage; + cachedImages.push(cachedImage); + + if (imageTexture.sizeInBytes === undefined) { + throw new Error('putImageTexture: imageTexture.sizeInBytes must not be undefined'); + } + + if (imageTexture.sizeInBytes.toFixed === undefined) { + throw new Error('putImageTexture: imageTexture.sizeInBytes is not a number'); + } + + cacheSizeInBytes += cachedImage.sizeInBytes; + purgeCacheIfNecessary(); +} + +function getImageTexture(imageId) { + if (imageId === undefined) { + throw new Error('getImageTexture: imageId must not be undefined'); + } + + var cachedImage = imageCache[imageId]; + + if (cachedImage === undefined) { + return; + } // Bump time stamp for cached image + + + cachedImage.timeStamp = new Date(); + return cachedImage.imageTexture; +} + +function removeImageTexture(imageId) { + if (imageId === undefined) { + throw new Error('removeImageTexture: imageId must not be undefined'); + } + + var cachedImage = imageCache[imageId]; + + if (cachedImage === undefined) { + throw new Error('removeImageTexture: imageId must not be undefined'); + } + + cachedImages.splice(cachedImages.indexOf(cachedImage), 1); + cacheSizeInBytes -= cachedImage.sizeInBytes; + delete imageCache[imageId]; + return cachedImage.imageTexture; +} + +function purgeCache() { + while (cachedImages.length > 0) { + var removedCachedImage = cachedImages.pop(); + delete imageCache[removedCachedImage.imageId]; + } + + cacheSizeInBytes = 0; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + purgeCache: purgeCache, + getImageTexture: getImageTexture, + putImageTexture: putImageTexture, + removeImageTexture: removeImageTexture, + setMaximumSizeBytes: setMaximumSizeBytes +}); + +/***/ }), + +/***/ "./webgl/vertexShader.js": +/*!*******************************!*\ + !*** ./webgl/vertexShader.js ***! + \*******************************/ +/*! exports provided: vertexShader */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "vertexShader", function() { return vertexShader; }); +var vertexShader = 'attribute vec2 a_position;' + 'attribute vec2 a_texCoord;' + 'uniform vec2 u_resolution;' + 'varying vec2 v_texCoord;' + 'void main() {' + 'vec2 zeroToOne = a_position / u_resolution;' + 'vec2 zeroToTwo = zeroToOne * 2.0;' + 'vec2 clipSpace = zeroToTwo - 1.0;' + 'gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1);' + 'v_texCoord = a_texCoord;' + '}'; + +/***/ }) + +/******/ }); +}); +//# sourceMappingURL=cornerstone.js.map \ No newline at end of file diff --git a/lib/cornerstone/cornerstone.min.css b/lib/cornerstone/cornerstone.min.css new file mode 100644 index 0000000..ed02f58 --- /dev/null +++ b/lib/cornerstone/cornerstone.min.css @@ -0,0 +1 @@ +/*! cornerstone - v0.9.0 - 2016-02-03 | (c) 2014 Chris Hafey | https://github.com/chafey/cornerstone */.cornerstone-enabled-image{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default} \ No newline at end of file diff --git a/lib/cornerstone/cornerstone.min.js b/lib/cornerstone/cornerstone.min.js new file mode 100644 index 0000000..03e88da --- /dev/null +++ b/lib/cornerstone/cornerstone.min.js @@ -0,0 +1,3 @@ +/*! cornerstone-core - 2.3.0 - 2019-07-03 | (c) 2016 Chris Hafey | https://github.com/cornerstonejs/cornerstone */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstone-core",[],t):"object"==typeof exports?exports["cornerstone-core"]=t():e.cornerstone=t()}(window,function(){return function(r){var a={};function n(e){if(a[e])return a[e].exports;var t=a[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}return n.m=r,n.c=a,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var a in t)n.d(r,a,function(e){return t[e]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,r){"use strict";function n(e,t){for(var r=0;rthis.TableRange[1])return this.AboveRangeColor;return this.Table[t]}},{key:"getIndex",value:function(e){var t={Range:[]};if(t.MaxIndex=this.NumberOfColors-1,t.Shift=-this.TableRange[0],this.TableRange[1]<=this.TableRange[0]?t.Scale=Number.MAX_VALUE:t.Scale=t.MaxIndex/(this.TableRange[1]-this.TableRange[0]),t.Range[0]=this.TableRange[0],t.Range[1]=this.TableRange[1],isNaN(e))return-1;var r,a,n,i=(n=(r=e)<(a=t).Range[0]?a.MaxIndex+0+1.5:r>a.Range[1]?a.MaxIndex+1+1.5:(r+a.Shift)*a.Scale,Math.floor(n));return i===this.NumberOfColors+0?i=0:i===this.NumberOfColors+1&&(i=this.NumberOfColors-1),i}},{key:"setTableValue",value:function(e,t){if(5===arguments.length&&(t=Array.prototype.slice.call(arguments,1)),e<0)throw new Error("Can't set the table value for negative index (".concat(e,")"));e>=this.NumberOfColors&&new Error("Index ".concat(e," is greater than the number of colors ").concat(this.NumberOfColors)),this.Table[e]=t,0!==e&&e!==this.NumberOfColors-1||this.buildSpecialColors()}}])&&_(t.prototype,r),a&&_(t,a),e}(),O=[0,0,0,0],U={hotIron:{name:"Hot Iron",numOfColors:256,colors:[[0,0,0,255],[2,0,0,255],[4,0,0,255],[6,0,0,255],[8,0,0,255],[10,0,0,255],[12,0,0,255],[14,0,0,255],[16,0,0,255],[18,0,0,255],[20,0,0,255],[22,0,0,255],[24,0,0,255],[26,0,0,255],[28,0,0,255],[30,0,0,255],[32,0,0,255],[34,0,0,255],[36,0,0,255],[38,0,0,255],[40,0,0,255],[42,0,0,255],[44,0,0,255],[46,0,0,255],[48,0,0,255],[50,0,0,255],[52,0,0,255],[54,0,0,255],[56,0,0,255],[58,0,0,255],[60,0,0,255],[62,0,0,255],[64,0,0,255],[66,0,0,255],[68,0,0,255],[70,0,0,255],[72,0,0,255],[74,0,0,255],[76,0,0,255],[78,0,0,255],[80,0,0,255],[82,0,0,255],[84,0,0,255],[86,0,0,255],[88,0,0,255],[90,0,0,255],[92,0,0,255],[94,0,0,255],[96,0,0,255],[98,0,0,255],[100,0,0,255],[102,0,0,255],[104,0,0,255],[106,0,0,255],[108,0,0,255],[110,0,0,255],[112,0,0,255],[114,0,0,255],[116,0,0,255],[118,0,0,255],[120,0,0,255],[122,0,0,255],[124,0,0,255],[126,0,0,255],[128,0,0,255],[130,0,0,255],[132,0,0,255],[134,0,0,255],[136,0,0,255],[138,0,0,255],[140,0,0,255],[142,0,0,255],[144,0,0,255],[146,0,0,255],[148,0,0,255],[150,0,0,255],[152,0,0,255],[154,0,0,255],[156,0,0,255],[158,0,0,255],[160,0,0,255],[162,0,0,255],[164,0,0,255],[166,0,0,255],[168,0,0,255],[170,0,0,255],[172,0,0,255],[174,0,0,255],[176,0,0,255],[178,0,0,255],[180,0,0,255],[182,0,0,255],[184,0,0,255],[186,0,0,255],[188,0,0,255],[190,0,0,255],[192,0,0,255],[194,0,0,255],[196,0,0,255],[198,0,0,255],[200,0,0,255],[202,0,0,255],[204,0,0,255],[206,0,0,255],[208,0,0,255],[210,0,0,255],[212,0,0,255],[214,0,0,255],[216,0,0,255],[218,0,0,255],[220,0,0,255],[222,0,0,255],[224,0,0,255],[226,0,0,255],[228,0,0,255],[230,0,0,255],[232,0,0,255],[234,0,0,255],[236,0,0,255],[238,0,0,255],[240,0,0,255],[242,0,0,255],[244,0,0,255],[246,0,0,255],[248,0,0,255],[250,0,0,255],[252,0,0,255],[254,0,0,255],[255,0,0,255],[255,2,0,255],[255,4,0,255],[255,6,0,255],[255,8,0,255],[255,10,0,255],[255,12,0,255],[255,14,0,255],[255,16,0,255],[255,18,0,255],[255,20,0,255],[255,22,0,255],[255,24,0,255],[255,26,0,255],[255,28,0,255],[255,30,0,255],[255,32,0,255],[255,34,0,255],[255,36,0,255],[255,38,0,255],[255,40,0,255],[255,42,0,255],[255,44,0,255],[255,46,0,255],[255,48,0,255],[255,50,0,255],[255,52,0,255],[255,54,0,255],[255,56,0,255],[255,58,0,255],[255,60,0,255],[255,62,0,255],[255,64,0,255],[255,66,0,255],[255,68,0,255],[255,70,0,255],[255,72,0,255],[255,74,0,255],[255,76,0,255],[255,78,0,255],[255,80,0,255],[255,82,0,255],[255,84,0,255],[255,86,0,255],[255,88,0,255],[255,90,0,255],[255,92,0,255],[255,94,0,255],[255,96,0,255],[255,98,0,255],[255,100,0,255],[255,102,0,255],[255,104,0,255],[255,106,0,255],[255,108,0,255],[255,110,0,255],[255,112,0,255],[255,114,0,255],[255,116,0,255],[255,118,0,255],[255,120,0,255],[255,122,0,255],[255,124,0,255],[255,126,0,255],[255,128,4,255],[255,130,8,255],[255,132,12,255],[255,134,16,255],[255,136,20,255],[255,138,24,255],[255,140,28,255],[255,142,32,255],[255,144,36,255],[255,146,40,255],[255,148,44,255],[255,150,48,255],[255,152,52,255],[255,154,56,255],[255,156,60,255],[255,158,64,255],[255,160,68,255],[255,162,72,255],[255,164,76,255],[255,166,80,255],[255,168,84,255],[255,170,88,255],[255,172,92,255],[255,174,96,255],[255,176,100,255],[255,178,104,255],[255,180,108,255],[255,182,112,255],[255,184,116,255],[255,186,120,255],[255,188,124,255],[255,190,128,255],[255,192,132,255],[255,194,136,255],[255,196,140,255],[255,198,144,255],[255,200,148,255],[255,202,152,255],[255,204,156,255],[255,206,160,255],[255,208,164,255],[255,210,168,255],[255,212,172,255],[255,214,176,255],[255,216,180,255],[255,218,184,255],[255,220,188,255],[255,222,192,255],[255,224,196,255],[255,226,200,255],[255,228,204,255],[255,230,208,255],[255,232,212,255],[255,234,216,255],[255,236,220,255],[255,238,224,255],[255,240,228,255],[255,242,232,255],[255,244,236,255],[255,246,240,255],[255,248,244,255],[255,250,248,255],[255,252,252,255],[255,255,255,255]]},pet:{name:"PET",numColors:256,colors:[[0,0,0,255],[0,2,1,255],[0,4,3,255],[0,6,5,255],[0,8,7,255],[0,10,9,255],[0,12,11,255],[0,14,13,255],[0,16,15,255],[0,18,17,255],[0,20,19,255],[0,22,21,255],[0,24,23,255],[0,26,25,255],[0,28,27,255],[0,30,29,255],[0,32,31,255],[0,34,33,255],[0,36,35,255],[0,38,37,255],[0,40,39,255],[0,42,41,255],[0,44,43,255],[0,46,45,255],[0,48,47,255],[0,50,49,255],[0,52,51,255],[0,54,53,255],[0,56,55,255],[0,58,57,255],[0,60,59,255],[0,62,61,255],[0,65,63,255],[0,67,65,255],[0,69,67,255],[0,71,69,255],[0,73,71,255],[0,75,73,255],[0,77,75,255],[0,79,77,255],[0,81,79,255],[0,83,81,255],[0,85,83,255],[0,87,85,255],[0,89,87,255],[0,91,89,255],[0,93,91,255],[0,95,93,255],[0,97,95,255],[0,99,97,255],[0,101,99,255],[0,103,101,255],[0,105,103,255],[0,107,105,255],[0,109,107,255],[0,111,109,255],[0,113,111,255],[0,115,113,255],[0,117,115,255],[0,119,117,255],[0,121,119,255],[0,123,121,255],[0,125,123,255],[0,128,125,255],[1,126,127,255],[3,124,129,255],[5,122,131,255],[7,120,133,255],[9,118,135,255],[11,116,137,255],[13,114,139,255],[15,112,141,255],[17,110,143,255],[19,108,145,255],[21,106,147,255],[23,104,149,255],[25,102,151,255],[27,100,153,255],[29,98,155,255],[31,96,157,255],[33,94,159,255],[35,92,161,255],[37,90,163,255],[39,88,165,255],[41,86,167,255],[43,84,169,255],[45,82,171,255],[47,80,173,255],[49,78,175,255],[51,76,177,255],[53,74,179,255],[55,72,181,255],[57,70,183,255],[59,68,185,255],[61,66,187,255],[63,64,189,255],[65,63,191,255],[67,61,193,255],[69,59,195,255],[71,57,197,255],[73,55,199,255],[75,53,201,255],[77,51,203,255],[79,49,205,255],[81,47,207,255],[83,45,209,255],[85,43,211,255],[86,41,213,255],[88,39,215,255],[90,37,217,255],[92,35,219,255],[94,33,221,255],[96,31,223,255],[98,29,225,255],[100,27,227,255],[102,25,229,255],[104,23,231,255],[106,21,233,255],[108,19,235,255],[110,17,237,255],[112,15,239,255],[114,13,241,255],[116,11,243,255],[118,9,245,255],[120,7,247,255],[122,5,249,255],[124,3,251,255],[126,1,253,255],[128,0,255,255],[130,2,252,255],[132,4,248,255],[134,6,244,255],[136,8,240,255],[138,10,236,255],[140,12,232,255],[142,14,228,255],[144,16,224,255],[146,18,220,255],[148,20,216,255],[150,22,212,255],[152,24,208,255],[154,26,204,255],[156,28,200,255],[158,30,196,255],[160,32,192,255],[162,34,188,255],[164,36,184,255],[166,38,180,255],[168,40,176,255],[170,42,172,255],[171,44,168,255],[173,46,164,255],[175,48,160,255],[177,50,156,255],[179,52,152,255],[181,54,148,255],[183,56,144,255],[185,58,140,255],[187,60,136,255],[189,62,132,255],[191,64,128,255],[193,66,124,255],[195,68,120,255],[197,70,116,255],[199,72,112,255],[201,74,108,255],[203,76,104,255],[205,78,100,255],[207,80,96,255],[209,82,92,255],[211,84,88,255],[213,86,84,255],[215,88,80,255],[217,90,76,255],[219,92,72,255],[221,94,68,255],[223,96,64,255],[225,98,60,255],[227,100,56,255],[229,102,52,255],[231,104,48,255],[233,106,44,255],[235,108,40,255],[237,110,36,255],[239,112,32,255],[241,114,28,255],[243,116,24,255],[245,118,20,255],[247,120,16,255],[249,122,12,255],[251,124,8,255],[253,126,4,255],[255,128,0,255],[255,130,4,255],[255,132,8,255],[255,134,12,255],[255,136,16,255],[255,138,20,255],[255,140,24,255],[255,142,28,255],[255,144,32,255],[255,146,36,255],[255,148,40,255],[255,150,44,255],[255,152,48,255],[255,154,52,255],[255,156,56,255],[255,158,60,255],[255,160,64,255],[255,162,68,255],[255,164,72,255],[255,166,76,255],[255,168,80,255],[255,170,85,255],[255,172,89,255],[255,174,93,255],[255,176,97,255],[255,178,101,255],[255,180,105,255],[255,182,109,255],[255,184,113,255],[255,186,117,255],[255,188,121,255],[255,190,125,255],[255,192,129,255],[255,194,133,255],[255,196,137,255],[255,198,141,255],[255,200,145,255],[255,202,149,255],[255,204,153,255],[255,206,157,255],[255,208,161,255],[255,210,165,255],[255,212,170,255],[255,214,174,255],[255,216,178,255],[255,218,182,255],[255,220,186,255],[255,222,190,255],[255,224,194,255],[255,226,198,255],[255,228,202,255],[255,230,206,255],[255,232,210,255],[255,234,214,255],[255,236,218,255],[255,238,222,255],[255,240,226,255],[255,242,230,255],[255,244,234,255],[255,246,238,255],[255,248,242,255],[255,250,246,255],[255,252,250,255],[255,255,255,255]]},hotMetalBlue:{name:"Hot Metal Blue",numColors:256,colors:[[0,0,0,255],[0,0,2,255],[0,0,4,255],[0,0,6,255],[0,0,8,255],[0,0,10,255],[0,0,12,255],[0,0,14,255],[0,0,16,255],[0,0,17,255],[0,0,19,255],[0,0,21,255],[0,0,23,255],[0,0,25,255],[0,0,27,255],[0,0,29,255],[0,0,31,255],[0,0,33,255],[0,0,35,255],[0,0,37,255],[0,0,39,255],[0,0,41,255],[0,0,43,255],[0,0,45,255],[0,0,47,255],[0,0,49,255],[0,0,51,255],[0,0,53,255],[0,0,55,255],[0,0,57,255],[0,0,59,255],[0,0,61,255],[0,0,63,255],[0,0,65,255],[0,0,67,255],[0,0,69,255],[0,0,71,255],[0,0,73,255],[0,0,75,255],[0,0,77,255],[0,0,79,255],[0,0,81,255],[0,0,83,255],[0,0,84,255],[0,0,86,255],[0,0,88,255],[0,0,90,255],[0,0,92,255],[0,0,94,255],[0,0,96,255],[0,0,98,255],[0,0,100,255],[0,0,102,255],[0,0,104,255],[0,0,106,255],[0,0,108,255],[0,0,110,255],[0,0,112,255],[0,0,114,255],[0,0,116,255],[0,0,117,255],[0,0,119,255],[0,0,121,255],[0,0,123,255],[0,0,125,255],[0,0,127,255],[0,0,129,255],[0,0,131,255],[0,0,133,255],[0,0,135,255],[0,0,137,255],[0,0,139,255],[0,0,141,255],[0,0,143,255],[0,0,145,255],[0,0,147,255],[0,0,149,255],[0,0,151,255],[0,0,153,255],[0,0,155,255],[0,0,157,255],[0,0,159,255],[0,0,161,255],[0,0,163,255],[0,0,165,255],[0,0,167,255],[3,0,169,255],[6,0,171,255],[9,0,173,255],[12,0,175,255],[15,0,177,255],[18,0,179,255],[21,0,181,255],[24,0,183,255],[26,0,184,255],[29,0,186,255],[32,0,188,255],[35,0,190,255],[38,0,192,255],[41,0,194,255],[44,0,196,255],[47,0,198,255],[50,0,200,255],[52,0,197,255],[55,0,194,255],[57,0,191,255],[59,0,188,255],[62,0,185,255],[64,0,182,255],[66,0,179,255],[69,0,176,255],[71,0,174,255],[74,0,171,255],[76,0,168,255],[78,0,165,255],[81,0,162,255],[83,0,159,255],[85,0,156,255],[88,0,153,255],[90,0,150,255],[93,2,144,255],[96,4,138,255],[99,6,132,255],[102,8,126,255],[105,9,121,255],[108,11,115,255],[111,13,109,255],[114,15,103,255],[116,17,97,255],[119,19,91,255],[122,21,85,255],[125,23,79,255],[128,24,74,255],[131,26,68,255],[134,28,62,255],[137,30,56,255],[140,32,50,255],[143,34,47,255],[146,36,44,255],[149,38,41,255],[152,40,38,255],[155,41,35,255],[158,43,32,255],[161,45,29,255],[164,47,26,255],[166,49,24,255],[169,51,21,255],[172,53,18,255],[175,55,15,255],[178,56,12,255],[181,58,9,255],[184,60,6,255],[187,62,3,255],[190,64,0,255],[194,66,0,255],[198,68,0,255],[201,70,0,255],[205,72,0,255],[209,73,0,255],[213,75,0,255],[217,77,0,255],[221,79,0,255],[224,81,0,255],[228,83,0,255],[232,85,0,255],[236,87,0,255],[240,88,0,255],[244,90,0,255],[247,92,0,255],[251,94,0,255],[255,96,0,255],[255,98,3,255],[255,100,6,255],[255,102,9,255],[255,104,12,255],[255,105,15,255],[255,107,18,255],[255,109,21,255],[255,111,24,255],[255,113,26,255],[255,115,29,255],[255,117,32,255],[255,119,35,255],[255,120,38,255],[255,122,41,255],[255,124,44,255],[255,126,47,255],[255,128,50,255],[255,130,53,255],[255,132,56,255],[255,134,59,255],[255,136,62,255],[255,137,65,255],[255,139,68,255],[255,141,71,255],[255,143,74,255],[255,145,76,255],[255,147,79,255],[255,149,82,255],[255,151,85,255],[255,152,88,255],[255,154,91,255],[255,156,94,255],[255,158,97,255],[255,160,100,255],[255,162,103,255],[255,164,106,255],[255,166,109,255],[255,168,112,255],[255,169,115,255],[255,171,118,255],[255,173,121,255],[255,175,124,255],[255,177,126,255],[255,179,129,255],[255,181,132,255],[255,183,135,255],[255,184,138,255],[255,186,141,255],[255,188,144,255],[255,190,147,255],[255,192,150,255],[255,194,153,255],[255,196,156,255],[255,198,159,255],[255,200,162,255],[255,201,165,255],[255,203,168,255],[255,205,171,255],[255,207,174,255],[255,209,176,255],[255,211,179,255],[255,213,182,255],[255,215,185,255],[255,216,188,255],[255,218,191,255],[255,220,194,255],[255,222,197,255],[255,224,200,255],[255,226,203,255],[255,228,206,255],[255,229,210,255],[255,231,213,255],[255,233,216,255],[255,235,219,255],[255,237,223,255],[255,239,226,255],[255,240,229,255],[255,242,232,255],[255,244,236,255],[255,246,239,255],[255,248,242,255],[255,250,245,255],[255,251,249,255],[255,253,252,255],[255,255,255,255]]},pet20Step:{name:"PET 20 Step",numColors:256,colors:[[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[0,0,0,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[96,0,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,80,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[48,48,112,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[80,80,128,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[96,96,176,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[112,112,192,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[128,128,224,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,96,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[48,144,48,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[80,192,80,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[64,224,64,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[224,224,80,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,208,96,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,176,64,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[208,144,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[192,96,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[176,48,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,0,0,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255],[255,255,255,255]]},gray:{name:"Gray",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[1,1,1]],green:[[0,0,0],[1,1,1]],blue:[[0,0,0],[1,1,1]]}},jet:{name:"Jet",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[.35,0,0],[.66,1,1],[.89,1,1],[1,.5,.5]],green:[[0,0,0],[.125,0,0],[.375,1,1],[.64,1,1],[.91,0,0],[1,0,0]],blue:[[0,.5,.5],[.11,1,1],[.34,1,1],[.65,0,0],[1,0,0]]}},hsv:{name:"HSV",numColors:256,gamma:1,segmentedData:{red:[[0,1,1],[.15873,1,1],[.174603,.96875,.96875],[.333333,.03125,.03125],[.349206,0,0],[.666667,0,0],[.68254,.03125,.03125],[.84127,.96875,.96875],[.857143,1,1],[1,1,1]],green:[[0,0,0],[.15873,.9375,.9375],[.174603,1,1],[.507937,1,1],[.666667,.0625,.0625],[.68254,0,0],[1,0,0]],blue:[[0,0,0],[.333333,0,0],[.349206,.0625,.0625],[.507937,1,1],[.84127,1,1],[.857143,.9375,.9375],[1,.09375,.09375]]}},hot:{name:"Hot",numColors:256,gamma:1,segmentedData:{red:[[0,.0416,.0416],[.365079,1,1],[1,1,1]],green:[[0,0,0],[.365079,0,0],[.746032,1,1],[1,1,1]],blue:[[0,0,0],[.746032,0,0],[1,1,1]]}},cool:{name:"Cool",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[1,1,1]],green:[[0,1,1],[1,0,0]],blue:[[0,1,1],[1,1,1]]}},spring:{name:"Spring",numColors:256,gamma:1,segmentedData:{red:[[0,1,1],[1,1,1]],green:[[0,0,0],[1,1,1]],blue:[[0,1,1],[1,0,0]]}},summer:{name:"Summer",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[1,1,1]],green:[[0,.5,.5],[1,1,1]],blue:[[0,.4,.4],[1,.4,.4]]}},autumn:{name:"Autumn",numColors:256,gamma:1,segmentedData:{red:[[0,1,1],[1,1,1]],green:[[0,0,0],[1,1,1]],blue:[[0,0,0],[1,0,0]]}},winter:{name:"Winter",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[1,0,0]],green:[[0,0,0],[1,1,1]],blue:[[0,1,1],[1,.5,.5]]}},bone:{name:"Bone",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[.746032,.652778,.652778],[1,1,1]],green:[[0,0,0],[.365079,.319444,.319444],[.746032,.777778,.777778],[1,1,1]],blue:[[0,0,0],[.365079,.444444,.444444],[1,1,1]]}},copper:{name:"Copper",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[.809524,1,1],[1,1,1]],green:[[0,0,0],[1,.7812,.7812]],blue:[[0,0,0],[1,.4975,.4975]]}},spectral:{name:"Spectral",numColors:256,gamma:1,segmentedData:{red:[[0,0,0],[.05,.4667,.4667],[.1,.5333,.5333],[.15,0,0],[.2,0,0],[.25,0,0],[.3,0,0],[.35,0,0],[.4,0,0],[.45,0,0],[.5,0,0],[.55,0,0],[.6,0,0],[.65,.7333,.7333],[.7,.9333,.9333],[.75,1,1],[.8,1,1],[.85,1,1],[.9,.8667,.8667],[.95,.8,.8],[1,.8,.8]],green:[[0,0,0],[.05,0,0],[.1,0,0],[.15,0,0],[.2,0,0],[.25,.4667,.4667],[.3,.6,.6],[.35,.6667,.6667],[.4,.6667,.6667],[.45,.6,.6],[.5,.7333,.7333],[.55,.8667,.8667],[.6,1,1],[.65,1,1],[.7,.9333,.9333],[.75,.8,.8],[.8,.6,.6],[.85,0,0],[.9,0,0],[.95,0,0],[1,.8,.8]],blue:[[0,0,0],[.05,.5333,.5333],[.1,.6,.6],[.15,.6667,.6667],[.2,.8667,.8667],[.25,.8667,.8667],[.3,.8667,.8667],[.35,.6667,.6667],[.4,.5333,.5333],[.45,0,0],[.5,0,0],[.55,0,0],[.6,0,0],[.65,0,0],[.7,0,0],[.75,0,0],[.8,0,0],[.85,0,0],[.9,0,0],[.95,0,0],[1,.8,.8]]}},coolwarm:{name:"CoolWarm",numColors:256,gamma:1,segmentedData:{red:[[0,.2298057,.2298057],[.03125,.26623388,.26623388],[.0625,.30386891,.30386891],[.09375,.342804478,.342804478],[.125,.38301334,.38301334],[.15625,.424369608,.424369608],[.1875,.46666708,.46666708],[.21875,.509635204,.509635204],[.25,.552953156,.552953156],[.28125,.596262162,.596262162],[.3125,.639176211,.639176211],[.34375,.681291281,.681291281],[.375,.722193294,.722193294],[.40625,.761464949,.761464949],[.4375,.798691636,.798691636],[.46875,.833466556,.833466556],[.5,.865395197,.865395197],[.53125,.897787179,.897787179],[.5625,.924127593,.924127593],[.59375,.944468518,.944468518],[.625,.958852946,.958852946],[.65625,.96732803,.96732803],[.6875,.969954137,.969954137],[.71875,.966811177,.966811177],[.75,.958003065,.958003065],[.78125,.943660866,.943660866],[.8125,.923944917,.923944917],[.84375,.89904617,.89904617],[.875,.869186849,.869186849],[.90625,.834620542,.834620542],[.9375,.795631745,.795631745],[.96875,.752534934,.752534934],[1,.705673158,.705673158]],green:[[0,.298717966,.298717966],[.03125,.353094838,.353094838],[.0625,.406535296,.406535296],[.09375,.458757618,.458757618],[.125,.50941904,.50941904],[.15625,.558148092,.558148092],[.1875,.604562568,.604562568],[.21875,.648280772,.648280772],[.25,.688929332,.688929332],[.28125,.726149107,.726149107],[.3125,.759599947,.759599947],[.34375,.788964712,.788964712],[.375,.813952739,.813952739],[.40625,.834302879,.834302879],[.4375,.849786142,.849786142],[.46875,.860207984,.860207984],[.5,.86541021,.86541021],[.53125,.848937047,.848937047],[.5625,.827384882,.827384882],[.59375,.800927443,.800927443],[.625,.769767752,.769767752],[.65625,.734132809,.734132809],[.6875,.694266682,.694266682],[.71875,.650421156,.650421156],[.75,.602842431,.602842431],[.78125,.551750968,.551750968],[.8125,.49730856,.49730856],[.84375,.439559467,.439559467],[.875,.378313092,.378313092],[.90625,.312874446,.312874446],[.9375,.24128379,.24128379],[.96875,.157246067,.157246067],[1,.01555616,.01555616]],blue:[[0,.753683153,.753683153],[.03125,.801466763,.801466763],[.0625,.84495867,.84495867],[.09375,.883725899,.883725899],[.125,.917387822,.917387822],[.15625,.945619588,.945619588],[.1875,.968154911,.968154911],[.21875,.98478814,.98478814],[.25,.995375608,.995375608],[.28125,.999836203,.999836203],[.3125,.998151185,.998151185],[.34375,.990363227,.990363227],[.375,.976574709,.976574709],[.40625,.956945269,.956945269],[.4375,.931688648,.931688648],[.46875,.901068838,.901068838],[.5,.865395561,.865395561],[.53125,.820880546,.820880546],[.5625,.774508472,.774508472],[.59375,.726736146,.726736146],[.625,.678007945,.678007945],[.65625,.628751763,.628751763],[.6875,.579375448,.579375448],[.71875,.530263762,.530263762],[.75,.481775914,.481775914],[.78125,.434243684,.434243684],[.8125,.387970225,.387970225],[.84375,.343229596,.343229596],[.875,.300267182,.300267182],[.90625,.259301199,.259301199],[.9375,.220525627,.220525627],[.96875,.184115123,.184115123],[1,.150232812,.150232812]]}},blues:{name:"Blues",numColors:256,gamma:1,segmentedData:{red:[[0,.9686274528503418,.9686274528503418],[.125,.8705882430076599,.8705882430076599],[.25,.7764706015586853,.7764706015586853],[.375,.6196078658103943,.6196078658103943],[.5,.41960784792900085,.41960784792900085],[.625,.25882354378700256,.25882354378700256],[.75,.12941177189350128,.12941177189350128],[.875,.0313725508749485,.0313725508749485],[1,.0313725508749485,.0313725508749485]],green:[[0,.9843137264251709,.9843137264251709],[.125,.9215686321258545,.9215686321258545],[.25,.8588235378265381,.8588235378265381],[.375,.7921568751335144,.7921568751335144],[.5,.6823529601097107,.6823529601097107],[.625,.572549045085907,.572549045085907],[.75,.4431372582912445,.4431372582912445],[.875,.3176470696926117,.3176470696926117],[1,.1882352977991104,.1882352977991104]],blue:[[0,1,1],[.125,.9686274528503418,.9686274528503418],[.25,.9372549057006836,.9372549057006836],[.375,.8823529481887817,.8823529481887817],[.5,.8392156958580017,.8392156958580017],[.625,.7764706015586853,.7764706015586853],[.75,.7098039388656616,.7098039388656616],[.875,.6117647290229797,.6117647290229797],[1,.41960784792900085,.41960784792900085]]}}};function N(e,t){for(var r=0,a=e.length-1;r<=a;){var n=r+Math.floor((a-r)/2),i=e[n];if(i===t)return n;tt.timeStamp?-1:e.timeStamp>8,r[a++]=t[n]<0?0:1}return r}};Te.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0 + color.g*65536.0;if (color.b == 0.0)intensity = -intensity;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}";var Ae={};var De={storedPixelDataToImageData:function(e){for(var t=e.getPixelData(),r=new Uint8Array(e.width*e.height*2),a=0,n=0;n>8}return r}};Re.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0 + color.a*65536.0;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}";var Me={};var Ve={storedPixelDataToImageData:function(e){return e.getPixelData()}};Me.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}";var Oe={int16:Te,int8:Ae,rgb:Pe,uint16:Re,uint8:Me},Ue={int16:Le,int8:De,rgb:Se,uint16:_e,uint8:Ve},Ne="attribute vec2 a_position;attribute vec2 a_texCoord;uniform vec2 u_resolution;varying vec2 v_texCoord;void main() {vec2 zeroToOne = a_position / u_resolution;vec2 zeroToTwo = zeroToOne * 2.0;vec2 clipSpace = zeroToTwo - 1.0;gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1);v_texCoord = a_texCoord;}",Be={},Fe=[],Ge=268435456,ze=0;function ke(){if(!(ze<=Ge)){for(Fe.sort(function(e,t){return e.timeStamp>t.timeStamp?-1:e.timeStamp>n,o=a.lut[a.lut.length-1]>>n,l=a.firstValueMapped+a.lut.length-1,function(e){return e>n}):(s=e,d=t,function(e){return 255*((e-d)/s+.5)});var a,n,i,o,l,s,d},ut=function(e,t,r,a,n,i){var o=e.maxPixelValue,l=e.minPixelValue,s=Math.min(l,0);if(void 0===e.cachedLut){var d=o-s+1;e.cachedLut={},e.cachedLut.lutArray=new Uint8ClampedArray(d)}var u=e.cachedLut.lutArray,m=lt(e.slope,e.intercept,n),c=dt(t,r,i);if(!0===a)for(var v=l;v<=o;v++)u[v+-s]=255-c(m(v));else for(var g=l;g<=o;g++)u[g+-s]=c(m(g));return u},mt=function(e,t,r){return void 0!==e.cachedLut&&e.cachedLut.windowCenter===t.voi.windowCenter&&e.cachedLut.windowWidth===t.voi.windowWidth&&ot(e.cachedLut.modalityLUT,t.modalityLUT)&&ot(e.cachedLut.voiLUT,t.voiLUT)&&e.cachedLut.invert===t.invert&&!0!==r||(it(t,e),ut(e,t.voi.windowWidth,t.voi.windowCenter,t.invert,t.modalityLUT,t.voiLUT),e.cachedLut.windowWidth=t.voi.windowWidth,e.cachedLut.windowCenter=t.voi.windowCenter,e.cachedLut.invert=t.invert,e.cachedLut.voiLUT=t.voiLUT,e.cachedLut.modalityLUT=t.modalityLUT),e.cachedLut.lutArray},ct=function(e,t){var r=e.renderingTools.lastRenderedImageId,a=e.renderingTools.lastRenderedViewport;return t.imageId!==r||!a||a.windowCenter!==e.viewport.voi.windowCenter||a.windowWidth!==e.viewport.voi.windowWidth||a.invert!==e.viewport.invert||a.rotation!==e.viewport.rotation||a.hflip!==e.viewport.hflip||a.vflip!==e.viewport.vflip||a.modalityLUT!==e.viewport.modalityLUT||a.voiLUT!==e.viewport.voiLUT||a.colormap!==e.viewport.colormap},vt=function(e,t){var r=e.renderingTools.renderCanvas;r.width=t.width,r.height=t.height;var a=r.getContext("2d");a.fillStyle="white",a.fillRect(0,0,r.width,r.height);var n=a.getImageData(0,0,t.width,t.height);e.renderingTools.renderCanvasContext=a,e.renderingTools.renderCanvasData=n},gt=function(e){var t=e.image.imageId,r=e.viewport,a=e.image.color;return e.renderingTools.lastRenderedImageId=t,e.renderingTools.lastRenderedIsColor=a,e.renderingTools.lastRenderedViewport={windowCenter:r.voi.windowCenter,windowWidth:r.voi.windowWidth,invert:r.invert,rotation:r.rotation,hflip:r.hflip,vflip:r.vflip,modalityLUT:r.modalityLUT,voiLUT:r.voiLUT,colormap:r.colormap},e.renderingTools};function ft(e,t,r){var a=!(3i?i:t},e.degToRad=function(t){return t*(Math.PI/180)},e.radToDeg=function(t){return t*(180/Math.PI)},e.sign=function(t){return"number"==typeof t?t?t<0?-1:1:t==t?0:NaN:NaN}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n,o=i(3),s=(n=o)&&n.__esModule?n:{default:n},r=i(0);var a,h,u,c,l,f=function(t,e,i){this.x=t||0,this.y=e||0,this.z=i||0};f.prototype={constructor:f,set:function(t,e,i){return this.x=t,this.y=e,this.z=i,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},add:function(t,e){return void 0!==e?(console.warn("DEPRECATED: Vector3's .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this},sub:function(t,e){return void 0!==e?(console.warn("DEPRECATED: Vector3's .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},multiply:function(t,e){return void 0!==e?(console.warn("DEPRECATED: Vector3's .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this},multiplyVectors:function(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this},applyAxisAngle:(l=void 0,function(t,e){return void 0===l&&(l=new s.default),this.applyQuaternion(l.setFromAxisAngle(t.normalize(),e)),this}),applyMatrix3:function(t){var e=this.x,i=this.y,n=this.z,o=t.elements;return this.x=o[0]*e+o[3]*i+o[6]*n,this.y=o[1]*e+o[4]*i+o[7]*n,this.z=o[2]*e+o[5]*i+o[8]*n,this},applyMatrix4:function(t){var e=this.x,i=this.y,n=this.z,o=t.elements;return this.x=o[0]*e+o[4]*i+o[8]*n+o[12],this.y=o[1]*e+o[5]*i+o[9]*n+o[13],this.z=o[2]*e+o[6]*i+o[10]*n+o[14],this},applyProjection:function(t){var e=this.x,i=this.y,n=this.z,o=t.elements,s=1/(o[3]*e+o[7]*i+o[11]*n+o[15]);return this.x=(o[0]*e+o[4]*i+o[8]*n+o[12])*s,this.y=(o[1]*e+o[5]*i+o[9]*n+o[13])*s,this.z=(o[2]*e+o[6]*i+o[10]*n+o[14])*s,this},applyQuaternion:function(t){var e=this.x,i=this.y,n=this.z,o=t.x,s=t.y,r=t.z,a=t.w,h=a*e+s*n-r*i,u=a*i+r*e-o*n,c=a*n+o*i-s*e,l=-o*e-s*i-r*n;return this.x=h*a+l*-o+u*-r-c*-s,this.y=u*a+l*-s+c*-o-h*-r,this.z=c*a+l*-r+h*-s-u*-o,this},transformDirection:function(t){var e=this.x,i=this.y,n=this.z,o=t.elements;return this.x=o[0]*e+o[4]*i+o[8]*n,this.y=o[1]*e+o[5]*i+o[9]*n,this.z=o[2]*e+o[6]*i+o[10]*n,this.normalize(),this},divide:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},divideScalar:function(t){if(0!==t){var e=1/t;this.x*=e,this.y*=e,this.z*=e}else this.x=0,this.y=0,this.z=0;return this},min:function(t){return this.x>t.x&&(this.x=t.x),this.y>t.y&&(this.y=t.y),this.z>t.z&&(this.z=t.z),this},max:function(t){return this.xe.x&&(this.x=e.x),this.ye.y&&(this.y=e.y),this.ze.z&&(this.z=e.z),this},clampScalar:(u=void 0,c=void 0,function(t,e){return void 0===u&&(u=new f,c=new f),u.set(t,t,t),c.set(e,e,e),this.clamp(u,c)}),floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.multiplyScalar(-1)},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length())},setLength:function(t){var e=this.length();return 0!==e&&t!==e&&this.multiplyScalar(t/e),this},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this},cross:function(t,e){if(void 0!==e)return console.warn("DEPRECATED: Vector3's .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e);var i=this.x,n=this.y,o=this.z;return this.x=n*t.z-o*t.y,this.y=o*t.x-i*t.z,this.z=i*t.y-n*t.x,this},crossVectors:function(t,e){var i=t.x,n=t.y,o=t.z,s=e.x,r=e.y,a=e.z;return this.x=n*a-o*r,this.y=o*s-i*a,this.z=i*r-n*s,this},projectOnVector:(a=void 0,h=void 0,function(t){return void 0===a&&(a=new f),a.copy(t).normalize(),h=this.dot(a),this.copy(a).multiplyScalar(h)}),projectOnPlane:function(){var t=void 0;return function(e){return void 0===t&&(t=new f),t.copy(this).projectOnVector(e),this.sub(t)}}(),reflect:function(){var t=void 0;return function(e){return void 0===t&&(t=new f),this.sub(t.copy(e).multiplyScalar(2*this.dot(e)))}}(),angleTo:function(t){var e=this.dot(t)/(this.length()*t.length());return Math.acos((0,r.clamp)(e,-1,1))},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,i=this.y-t.y,n=this.z-t.z;return e*e+i*i+n*n},setFromMatrixPosition:function(t){return this.x=t.elements[12],this.y=t.elements[13],this.z=t.elements[14],this},setFromMatrixScale:function(t){var e=this.set(t.elements[0],t.elements[1],t.elements[2]).length(),i=this.set(t.elements[4],t.elements[5],t.elements[6]).length(),n=this.set(t.elements[8],t.elements[9],t.elements[10]).length();return this.x=e,this.y=i,this.z=n,this},setFromMatrixColumn:function(t,e){var i=4*t,n=e.elements;return this.x=n[i],this.y=n[i+1],this.z=n[i+2],this},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z},fromArray:function(t){return this.x=t[0],this.y=t[1],this.z=t[2],this},toArray:function(){return[this.x,this.y,this.z]},clone:function(){return new f(this.x,this.y,this.z)}},e.default=f},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(0);function o(t){return t*t}function s(t,e){return o(t.x-e.x)+o(t.y-e.y)}var r={distanceToPoint:function(t,e){return Math.sqrt(function(t,e){var i=s(t.start,t.end);if(0===i)return s(e,t.start);var n=((e.x-t.start.x)*(t.end.x-t.start.x)+(e.y-t.start.y)*(t.end.y-t.start.y))/i;return s(e,n<0?t.start:n>1?t.end:{x:t.start.x+n*(t.end.x-t.start.x),y:t.start.y+n*(t.end.y-t.start.y)})}(t,e))},intersectLine:function(t,e){var i,o,s,r,a,h,u,c,l,f,y,d={},p=t.start.x,x=t.start.y,m=t.end.x,v=t.end.y,g=e.start.x,z=e.start.y,b=e.end.x,M=e.end.y,w=void 0;if(f=(i=v-x)*b+(s=p-m)*M+(a=m*x-p*v),(0===(l=i*g+s*z+a)||0===f||(0,n.sign)(l)!==(0,n.sign)(f))&&(c=(o=M-z)*m+(r=g-b)*v+(h=b*z-g*M),0===(u=o*p+r*x+h)||0===c||(0,n.sign)(u)!==(0,n.sign)(c))){y=i*r-o*s,w=s*h-r*a;var R=parseFloat(w/y);w=o*a-i*h;var P=parseFloat(w/y);return d.x=R,d.y=P,d}}};e.default=r},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(t,e,i,n){this.x=t||0,this.y=e||0,this.z=i||0,this.w=void 0!==n?n:1};n.prototype.setFromAxisAngle=function(t,e){var i=e/2,n=Math.sin(i);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(i),this},n.prototype.multiplyQuaternions=function(t,e){var i=t.x,n=t.y,o=t.z,s=t.w,r=e.x,a=e.y,h=e.z,u=e.w;return this.x=i*u+s*r+n*h-o*a,this.y=n*u+s*a+o*r-i*h,this.z=o*u+s*h+i*a-n*r,this.w=s*u-i*r-n*a-o*h,this},n.prototype.setFromRotationMatrix=function(t){var e=t.elements,i=e[0],n=e[4],o=e[8],s=e[1],r=e[5],a=e[9],h=e[2],u=e[6],c=e[10],l=i+r+c,f=void 0;return l>0?(f=.5/Math.sqrt(l+1),this.w=.25/f,this.x=(u-a)*f,this.y=(o-h)*f,this.z=(s-n)*f):i>r&&i>c?(f=2*Math.sqrt(1+i-r-c),this.w=(u-a)/f,this.x=.25*f,this.y=(n+s)/f,this.z=(o+h)/f):r>c?(f=2*Math.sqrt(1+r-i-c),this.w=(o-h)/f,this.x=(n+s)/f,this.y=.25*f,this.z=(a+u)/f):(f=2*Math.sqrt(1+c-i-r),this.w=(s-n)/f,this.x=(o+h)/f,this.y=(a+u)/f,this.z=.25*f),this},e.default=n},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n,o=i(2),s=(n=o)&&n.__esModule?n:{default:n};function r(t){return{topLeft:{x:t.left,y:t.top},bottomRight:{x:t.left+t.width,y:t.top+t.height}}}var a={distanceToPoint:function(t,e){var i=655535;return function(t){return[{start:{x:t.left,y:t.top},end:{x:t.left+t.width,y:t.top}},{start:{x:t.left+t.width,y:t.top},end:{x:t.left+t.width,y:t.top+t.height}},{start:{x:t.left+t.width,y:t.top+t.height},end:{x:t.left,y:t.top+t.height}},{start:{x:t.left,y:t.top+t.height},end:{x:t.left,y:t.top}}]}(t).forEach(function(t){var n=s.default.distanceToPoint(t,e);n=0?e.width>=0?!(o.bottomRight.x<=s.topLeft.x||s.bottomRight.x<=o.topLeft.x):!(o.bottomRight.x<=s.bottomRight.x||s.topLeft.x<=o.topLeft.x):e.width>=0?!(o.topLeft.x<=s.topLeft.x||s.bottomRight.x<=o.bottomRight.x):!(o.topLeft.x<=s.bottomRight.x||s.topLeft.x<=o.bottomRight.x),n=t.height>=0?e.height>=0?!(o.bottomRight.y<=s.topLeft.y||s.bottomRight.y<=o.topLeft.y):!(o.bottomRight.y<=s.bottomRight.y||s.topLeft.y<=o.topLeft.y):e.height>=0?!(o.topLeft.y<=s.topLeft.y||s.bottomRight.y<=o.bottomRight.y):!(o.topLeft.y<=s.bottomRight.y||s.top<=o.bottomRight.y),i&&n}(t,e)){var n=r(t),o=r(e);return t.width>=0?e.width>=0?(i.topLeft.x=Math.max(n.topLeft.x,o.topLeft.x),i.bottomRight.x=Math.min(n.bottomRight.x,o.bottomRight.x)):(i.topLeft.x=Math.max(n.topLeft.x,o.bottomRight.x),i.bottomRight.x=Math.min(n.bottomRight.x,o.topLeft.x)):e.width>=0?(i.topLeft.x=Math.min(n.topLeft.x,o.bottomRight.x),i.bottomRight.x=Math.max(n.bottomRight.x,o.topLeft.x)):(i.topLeft.x=Math.min(n.topLeft.x,o.topLeft.x),i.bottomRight.x=Math.max(n.bottomRight.x,o.bottomRight.x)),t.height>=0?e.height>=0?(i.topLeft.y=Math.max(n.topLeft.y,o.topLeft.y),i.bottomRight.y=Math.min(n.bottomRight.y,o.bottomRight.y)):(i.topLeft.y=Math.max(n.topLeft.y,o.bottomRight.y),i.bottomRight.y=Math.min(n.bottomRight.y,o.topLeft.y)):e.height>=0?(i.topLeft.y=Math.min(n.topLeft.y,o.bottomRight.y),i.bottomRight.y=Math.max(n.bottomRight.y,o.topLeft.y)):(i.topLeft.y=Math.min(n.topLeft.y,o.topLeft.y),i.bottomRight.y=Math.max(n.bottomRight.y,o.bottomRight.y)),i}}};e.default=a},function(t,e,i){"use strict";function n(t,e){return{x:t.x-e.x,y:t.y-e.y}}function o(t,e){return Math.sqrt(s(t,e))}function s(t,e){var i=n(t,e);return i.x*i.x+i.y*i.y}Object.defineProperty(e,"__esModule",{value:!0});var r={subtract:n,copy:function(t){return{x:t.x,y:t.y}},pageToPoint:function(t){return{x:t.pageX,y:t.pageY}},distance:o,distanceSquared:s,insideRect:function(t,e){return!(t.xe.left+e.width||t.ye.top+e.height)},findClosestPoint:function(t,e){var i=[],n=void 0;return t.forEach(function(t,s){var r=o(t,e);i.push(r),n=0===s?r:Math.min(r,n)}),t[i.indexOf(n)]}};e.default=r},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n,o=i(1),s=(n=o)&&n.__esModule?n:{default:n};var r,a,h=function(t,e){this.normal=void 0!==t?t:new s.default(1,0,0),this.constant=void 0!==e?e:0};h.prototype={constructor:h,set:function(t,e){return this.normal.copy(t),this.constant=e,this},setComponents:function(t,e,i,n){return this.normal.set(t,e,i),this.constant=n,this},setFromNormalAndCoplanarPoint:function(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this},setFromCoplanarPoints:(r=new s.default,a=new s.default,function(t,e,i){var n=r.subVectors(i,e).cross(a.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(n,t),this}),copy:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this},normalize:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this},negate:function(){return this.constant*=-1,this.normal.negate(),this},distanceToPoint:function(t){return this.normal.dot(t)+this.constant},distanceToSphere:function(t){return this.distanceToPoint(t.center)-t.radius},projectPoint:function(t,e){return this.orthoPoint(t,e).sub(t).negate()},orthoPoint:function(t,e){var i=this.distanceToPoint(t);return(e||new s.default).copy(this.normal).multiplyScalar(i)},isIntersectionLine:function(t){var e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0},intersectLine:function(){var t=new s.default;return function(e,i){var n=i||new s.default,o=e.delta(t),r=this.normal.dot(o);if(0===r)return 0===this.distanceToPoint(e.start)?n.copy(e.start):void 0;var a=-(e.start.dot(this.normal)+this.constant)/r;return a<0||a>1?void 0:n.copy(o).multiplyScalar(a).add(e.start)}}(),intersectPlane:function(t){var e=this.normal.clone().cross(t.normal),i={origin:new s.default,direction:e};if(this.normal.clone().cross(t.normal).length<1e-10)return i.direction=new s.default,i;var n=this.constant,o=t.constant,r=this.normal.clone().dot(t.normal),a=-(n-o*r)/(1-r*r),h=-(o-n*r)/(1-r*r);return i.origin=this.normal.clone().multiplyScalar(a).add(t.normal.clone().multiplyScalar(h)),i},coplanarPoint:function(t){return(t||new s.default).copy(this.normal).multiplyScalar(-this.constant)},translate:function(t){return this.constant=this.constant-t.dot(this.normal),this},equals:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant},clone:function(){return(new h).copy(this)}},e.default=h},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n,o=i(1),s=(n=o)&&n.__esModule?n:{default:n};var r=function(t,e,i,n,o,s,r,a,h,u,c,l,f,y,d,p){this.elements=new Float32Array(16);var x=this.elements;x[0]=void 0!==t?t:1,x[4]=e||0,x[8]=i||0,x[12]=n||0,x[1]=o||0,x[5]=void 0!==s?s:1,x[9]=r||0,x[13]=a||0,x[2]=h||0,x[6]=u||0,x[10]=void 0!==c?c:1,x[14]=l||0,x[3]=f||0,x[7]=y||0,x[11]=d||0,x[15]=void 0!==p?p:1};r.prototype.makeRotationFromQuaternion=function(t){var e=this.elements,i=t.x,n=t.y,o=t.z,s=t.w,r=i+i,a=n+n,h=o+o,u=i*r,c=i*a,l=i*h,f=n*a,y=n*h,d=o*h,p=s*r,x=s*a,m=s*h;return e[0]=1-(f+d),e[4]=c-m,e[8]=l+x,e[1]=c+m,e[5]=1-(u+d),e[9]=y-p,e[2]=l-x,e[6]=y+p,e[10]=1-(u+f),e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},r.prototype.multiplyMatrices=function(t,e){var i=t.elements,n=e.elements,o=this.elements,s=i[0],r=i[4],a=i[8],h=i[12],u=i[1],c=i[5],l=i[9],f=i[13],y=i[2],d=i[6],p=i[10],x=i[14],m=i[3],v=i[7],g=i[11],z=i[15],b=n[0],M=n[4],w=n[8],R=n[12],P=n[1],L=n[5],T=n[9],S=n[13],_=n[2],V=n[6],q=n[10],j=n[14],E=n[3],k=n[7],O=n[11],A=n[15];return o[0]=s*b+r*P+a*_+h*E,o[4]=s*M+r*L+a*V+h*k,o[8]=s*w+r*T+a*q+h*O,o[12]=s*R+r*S+a*j+h*A,o[1]=u*b+c*P+l*_+f*E,o[5]=u*M+c*L+l*V+f*k,o[9]=u*w+c*T+l*q+f*O,o[13]=u*R+c*S+l*j+f*A,o[2]=y*b+d*P+p*_+x*E,o[6]=y*M+d*L+p*V+x*k,o[10]=y*w+d*T+p*q+x*O,o[14]=y*R+d*S+p*j+x*A,o[3]=m*b+v*P+g*_+z*E,o[7]=m*M+v*L+g*V+z*k,o[11]=m*w+v*T+g*q+z*O,o[15]=m*R+v*S+g*j+z*A,this},r.prototype.multiply=function(t,e){return void 0!==e?(console.warn("DEPRECATED: Matrix4's .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)},r.prototype.getInverse=function(t,e){var i=this.elements,n=t.elements,o=n[0],s=n[4],r=n[8],a=n[12],h=n[1],u=n[5],c=n[9],l=n[13],f=n[2],y=n[6],d=n[10],p=n[14],x=n[3],m=n[7],v=n[11],g=n[15];i[0]=c*p*m-l*d*m+l*y*v-u*p*v-c*y*g+u*d*g,i[4]=a*d*m-r*p*m-a*y*v+s*p*v+r*y*g-s*d*g,i[8]=r*l*m-a*c*m+a*u*v-s*l*v-r*u*g+s*c*g,i[12]=a*c*y-r*l*y-a*u*d+s*l*d+r*u*p-s*c*p,i[1]=l*d*x-c*p*x-l*f*v+h*p*v+c*f*g-h*d*g,i[5]=r*p*x-a*d*x+a*f*v-o*p*v-r*f*g+o*d*g,i[9]=a*c*x-r*l*x-a*h*v+o*l*v+r*h*g-o*c*g,i[13]=r*l*f-a*c*f+a*h*d-o*l*d-r*h*p+o*c*p,i[2]=u*p*x-l*y*x+l*f*m-h*p*m-u*f*g+h*y*g,i[6]=a*y*x-s*p*x-a*f*m+o*p*m+s*f*g-o*y*g,i[10]=s*l*x-a*u*x+a*h*m-o*l*m-s*h*g+o*u*g,i[14]=a*u*f-s*l*f-a*h*y+o*l*y+s*h*p-o*u*p,i[3]=c*y*x-u*d*x-c*f*m+h*d*m+u*f*v-h*y*v,i[7]=s*d*x-r*y*x+r*f*m-o*d*m-s*f*v+o*y*v,i[11]=r*u*x-s*c*x-r*h*m+o*c*m+s*h*v-o*u*v,i[15]=s*c*f-r*u*f+r*h*y-o*c*y-s*h*d+o*u*d;var z=o*i[0]+h*i[4]+f*i[8]+x*i[12];if(0===z){var b="Matrix4.getInverse(): can't invert matrix, determinant is 0";if(e)throw new Error(b);return console.warn(b),this.identity(),this}return this.multiplyScalar(1/z),this},r.prototype.applyToVector3Array=function(){var t=new s.default;return function(e,i,n){void 0===i&&(i=0),void 0===n&&(n=e.length);for(var o=0,s=i;o1||isNaN(r))){var a=this.start.clone().add(e.clone().multiplyScalar(r));return a.clone().sub(t.start).lengthSq()+a.clone().sub(t.end).lengthSq()<=t.distanceSq()?a:void 0}}}}]),t}();e.default=h},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Vector3=e.rect=e.quaternion=e.point=e.Plane=e.Matrix4=e.sign=e.radToDeg=e.degToRad=e.clamp=e.lineSegment=e.Line3=void 0;var n=f(i(8)),o=f(i(2)),s=i(0),r=f(i(7)),a=f(i(6)),h=f(i(5)),u=f(i(3)),c=f(i(4)),l=f(i(1));function f(t){return t&&t.__esModule?t:{default:t}}var y={Line3:n.default,lineSegment:o.default,clamp:s.clamp,degToRad:s.degToRad,radToDeg:s.radToDeg,sign:s.sign,Matrix4:r.default,Plane:a.default,point:h.default,quaternion:u.default,rect:c.default,Vector3:l.default};e.Line3=n.default,e.lineSegment=o.default,e.clamp=s.clamp,e.degToRad=s.degToRad,e.radToDeg=s.radToDeg,e.sign=s.sign,e.Matrix4=r.default,e.Plane=a.default,e.point=h.default,e.quaternion=u.default,e.rect=c.default,e.Vector3=l.default,e.default=y}])}); +//# sourceMappingURL=cornerstoneMath.min.js.map \ No newline at end of file diff --git a/lib/cornerstone/cornerstoneTools.js b/lib/cornerstone/cornerstoneTools.js new file mode 100644 index 0000000..797252e --- /dev/null +++ b/lib/cornerstone/cornerstoneTools.js @@ -0,0 +1,37500 @@ +/*! cornerstone-tools - 4.12.1 - 2020-01-30 | (c) 2017 Chris Hafey | https://github.com/cornerstonejs/cornerstoneTools */ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define("cornerstone-tools", [], factory); + else if(typeof exports === 'object') + exports["cornerstone-tools"] = factory(); + else + root["cornerstoneTools"] = factory(); +})(window, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ function hotDisposeChunk(chunkId) { +/******/ delete installedChunks[chunkId]; +/******/ } +/******/ var parentHotUpdateCallback = window["webpackHotUpdate"]; +/******/ window["webpackHotUpdate"] = // eslint-disable-next-line no-unused-vars +/******/ function webpackHotUpdateCallback(chunkId, moreModules) { +/******/ hotAddUpdateChunk(chunkId, moreModules); +/******/ if (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules); +/******/ } ; +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotDownloadUpdateChunk(chunkId) { +/******/ var script = document.createElement("script"); +/******/ script.charset = "utf-8"; +/******/ script.src = __webpack_require__.p + "" + chunkId + "." + hotCurrentHash + ".hot-update.js"; +/******/ if (null) script.crossOrigin = null; +/******/ document.head.appendChild(script); +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotDownloadManifest(requestTimeout) { +/******/ requestTimeout = requestTimeout || 10000; +/******/ return new Promise(function(resolve, reject) { +/******/ if (typeof XMLHttpRequest === "undefined") { +/******/ return reject(new Error("No browser support")); +/******/ } +/******/ try { +/******/ var request = new XMLHttpRequest(); +/******/ var requestPath = __webpack_require__.p + "" + hotCurrentHash + ".hot-update.json"; +/******/ request.open("GET", requestPath, true); +/******/ request.timeout = requestTimeout; +/******/ request.send(null); +/******/ } catch (err) { +/******/ return reject(err); +/******/ } +/******/ request.onreadystatechange = function() { +/******/ if (request.readyState !== 4) return; +/******/ if (request.status === 0) { +/******/ // timeout +/******/ reject( +/******/ new Error("Manifest request to " + requestPath + " timed out.") +/******/ ); +/******/ } else if (request.status === 404) { +/******/ // no update available +/******/ resolve(); +/******/ } else if (request.status !== 200 && request.status !== 304) { +/******/ // other failure +/******/ reject(new Error("Manifest request to " + requestPath + " failed.")); +/******/ } else { +/******/ // success +/******/ try { +/******/ var update = JSON.parse(request.responseText); +/******/ } catch (e) { +/******/ reject(e); +/******/ return; +/******/ } +/******/ resolve(update); +/******/ } +/******/ }; +/******/ }); +/******/ } +/******/ +/******/ var hotApplyOnUpdate = true; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentHash = "b1761a661dc8a6f2df90"; +/******/ var hotRequestTimeout = 10000; +/******/ var hotCurrentModuleData = {}; +/******/ var hotCurrentChildModule; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentParents = []; +/******/ // eslint-disable-next-line no-unused-vars +/******/ var hotCurrentParentsTemp = []; +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotCreateRequire(moduleId) { +/******/ var me = installedModules[moduleId]; +/******/ if (!me) return __webpack_require__; +/******/ var fn = function(request) { +/******/ if (me.hot.active) { +/******/ if (installedModules[request]) { +/******/ if (installedModules[request].parents.indexOf(moduleId) === -1) { +/******/ installedModules[request].parents.push(moduleId); +/******/ } +/******/ } else { +/******/ hotCurrentParents = [moduleId]; +/******/ hotCurrentChildModule = request; +/******/ } +/******/ if (me.children.indexOf(request) === -1) { +/******/ me.children.push(request); +/******/ } +/******/ } else { +/******/ console.warn( +/******/ "[HMR] unexpected require(" + +/******/ request + +/******/ ") from disposed module " + +/******/ moduleId +/******/ ); +/******/ hotCurrentParents = []; +/******/ } +/******/ return __webpack_require__(request); +/******/ }; +/******/ var ObjectFactory = function ObjectFactory(name) { +/******/ return { +/******/ configurable: true, +/******/ enumerable: true, +/******/ get: function() { +/******/ return __webpack_require__[name]; +/******/ }, +/******/ set: function(value) { +/******/ __webpack_require__[name] = value; +/******/ } +/******/ }; +/******/ }; +/******/ for (var name in __webpack_require__) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(__webpack_require__, name) && +/******/ name !== "e" && +/******/ name !== "t" +/******/ ) { +/******/ Object.defineProperty(fn, name, ObjectFactory(name)); +/******/ } +/******/ } +/******/ fn.e = function(chunkId) { +/******/ if (hotStatus === "ready") hotSetStatus("prepare"); +/******/ hotChunksLoading++; +/******/ return __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) { +/******/ finishChunkLoading(); +/******/ throw err; +/******/ }); +/******/ +/******/ function finishChunkLoading() { +/******/ hotChunksLoading--; +/******/ if (hotStatus === "prepare") { +/******/ if (!hotWaitingFilesMap[chunkId]) { +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if (hotChunksLoading === 0 && hotWaitingFiles === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ } +/******/ }; +/******/ fn.t = function(value, mode) { +/******/ if (mode & 1) value = fn(value); +/******/ return __webpack_require__.t(value, mode & ~1); +/******/ }; +/******/ return fn; +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotCreateModule(moduleId) { +/******/ var hot = { +/******/ // private stuff +/******/ _acceptedDependencies: {}, +/******/ _declinedDependencies: {}, +/******/ _selfAccepted: false, +/******/ _selfDeclined: false, +/******/ _disposeHandlers: [], +/******/ _main: hotCurrentChildModule !== moduleId, +/******/ +/******/ // Module API +/******/ active: true, +/******/ accept: function(dep, callback) { +/******/ if (dep === undefined) hot._selfAccepted = true; +/******/ else if (typeof dep === "function") hot._selfAccepted = dep; +/******/ else if (typeof dep === "object") +/******/ for (var i = 0; i < dep.length; i++) +/******/ hot._acceptedDependencies[dep[i]] = callback || function() {}; +/******/ else hot._acceptedDependencies[dep] = callback || function() {}; +/******/ }, +/******/ decline: function(dep) { +/******/ if (dep === undefined) hot._selfDeclined = true; +/******/ else if (typeof dep === "object") +/******/ for (var i = 0; i < dep.length; i++) +/******/ hot._declinedDependencies[dep[i]] = true; +/******/ else hot._declinedDependencies[dep] = true; +/******/ }, +/******/ dispose: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ addDisposeHandler: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ removeDisposeHandler: function(callback) { +/******/ var idx = hot._disposeHandlers.indexOf(callback); +/******/ if (idx >= 0) hot._disposeHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ // Management API +/******/ check: hotCheck, +/******/ apply: hotApply, +/******/ status: function(l) { +/******/ if (!l) return hotStatus; +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ addStatusHandler: function(l) { +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ removeStatusHandler: function(l) { +/******/ var idx = hotStatusHandlers.indexOf(l); +/******/ if (idx >= 0) hotStatusHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ //inherit from previous dispose call +/******/ data: hotCurrentModuleData[moduleId] +/******/ }; +/******/ hotCurrentChildModule = undefined; +/******/ return hot; +/******/ } +/******/ +/******/ var hotStatusHandlers = []; +/******/ var hotStatus = "idle"; +/******/ +/******/ function hotSetStatus(newStatus) { +/******/ hotStatus = newStatus; +/******/ for (var i = 0; i < hotStatusHandlers.length; i++) +/******/ hotStatusHandlers[i].call(null, newStatus); +/******/ } +/******/ +/******/ // while downloading +/******/ var hotWaitingFiles = 0; +/******/ var hotChunksLoading = 0; +/******/ var hotWaitingFilesMap = {}; +/******/ var hotRequestedFilesMap = {}; +/******/ var hotAvailableFilesMap = {}; +/******/ var hotDeferred; +/******/ +/******/ // The update info +/******/ var hotUpdate, hotUpdateNewHash; +/******/ +/******/ function toModuleId(id) { +/******/ var isNumber = +id + "" === id; +/******/ return isNumber ? +id : id; +/******/ } +/******/ +/******/ function hotCheck(apply) { +/******/ if (hotStatus !== "idle") { +/******/ throw new Error("check() is only allowed in idle status"); +/******/ } +/******/ hotApplyOnUpdate = apply; +/******/ hotSetStatus("check"); +/******/ return hotDownloadManifest(hotRequestTimeout).then(function(update) { +/******/ if (!update) { +/******/ hotSetStatus("idle"); +/******/ return null; +/******/ } +/******/ hotRequestedFilesMap = {}; +/******/ hotWaitingFilesMap = {}; +/******/ hotAvailableFilesMap = update.c; +/******/ hotUpdateNewHash = update.h; +/******/ +/******/ hotSetStatus("prepare"); +/******/ var promise = new Promise(function(resolve, reject) { +/******/ hotDeferred = { +/******/ resolve: resolve, +/******/ reject: reject +/******/ }; +/******/ }); +/******/ hotUpdate = {}; +/******/ var chunkId = "cornerstoneTools"; +/******/ // eslint-disable-next-line no-lone-blocks +/******/ { +/******/ /*globals chunkId */ +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if ( +/******/ hotStatus === "prepare" && +/******/ hotChunksLoading === 0 && +/******/ hotWaitingFiles === 0 +/******/ ) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ return promise; +/******/ }); +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotAddUpdateChunk(chunkId, moreModules) { +/******/ if (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId]) +/******/ return; +/******/ hotRequestedFilesMap[chunkId] = false; +/******/ for (var moduleId in moreModules) { +/******/ if (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ hotUpdate[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if (--hotWaitingFiles === 0 && hotChunksLoading === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ +/******/ function hotEnsureUpdateChunk(chunkId) { +/******/ if (!hotAvailableFilesMap[chunkId]) { +/******/ hotWaitingFilesMap[chunkId] = true; +/******/ } else { +/******/ hotRequestedFilesMap[chunkId] = true; +/******/ hotWaitingFiles++; +/******/ hotDownloadUpdateChunk(chunkId); +/******/ } +/******/ } +/******/ +/******/ function hotUpdateDownloaded() { +/******/ hotSetStatus("ready"); +/******/ var deferred = hotDeferred; +/******/ hotDeferred = null; +/******/ if (!deferred) return; +/******/ if (hotApplyOnUpdate) { +/******/ // Wrap deferred object in Promise to mark it as a well-handled Promise to +/******/ // avoid triggering uncaught exception warning in Chrome. +/******/ // See https://bugs.chromium.org/p/chromium/issues/detail?id=465666 +/******/ Promise.resolve() +/******/ .then(function() { +/******/ return hotApply(hotApplyOnUpdate); +/******/ }) +/******/ .then( +/******/ function(result) { +/******/ deferred.resolve(result); +/******/ }, +/******/ function(err) { +/******/ deferred.reject(err); +/******/ } +/******/ ); +/******/ } else { +/******/ var outdatedModules = []; +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ outdatedModules.push(toModuleId(id)); +/******/ } +/******/ } +/******/ deferred.resolve(outdatedModules); +/******/ } +/******/ } +/******/ +/******/ function hotApply(options) { +/******/ if (hotStatus !== "ready") +/******/ throw new Error("apply() is only allowed in ready status"); +/******/ options = options || {}; +/******/ +/******/ var cb; +/******/ var i; +/******/ var j; +/******/ var module; +/******/ var moduleId; +/******/ +/******/ function getAffectedStuff(updateModuleId) { +/******/ var outdatedModules = [updateModuleId]; +/******/ var outdatedDependencies = {}; +/******/ +/******/ var queue = outdatedModules.map(function(id) { +/******/ return { +/******/ chain: [id], +/******/ id: id +/******/ }; +/******/ }); +/******/ while (queue.length > 0) { +/******/ var queueItem = queue.pop(); +/******/ var moduleId = queueItem.id; +/******/ var chain = queueItem.chain; +/******/ module = installedModules[moduleId]; +/******/ if (!module || module.hot._selfAccepted) continue; +/******/ if (module.hot._selfDeclined) { +/******/ return { +/******/ type: "self-declined", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ if (module.hot._main) { +/******/ return { +/******/ type: "unaccepted", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ for (var i = 0; i < module.parents.length; i++) { +/******/ var parentId = module.parents[i]; +/******/ var parent = installedModules[parentId]; +/******/ if (!parent) continue; +/******/ if (parent.hot._declinedDependencies[moduleId]) { +/******/ return { +/******/ type: "declined", +/******/ chain: chain.concat([parentId]), +/******/ moduleId: moduleId, +/******/ parentId: parentId +/******/ }; +/******/ } +/******/ if (outdatedModules.indexOf(parentId) !== -1) continue; +/******/ if (parent.hot._acceptedDependencies[moduleId]) { +/******/ if (!outdatedDependencies[parentId]) +/******/ outdatedDependencies[parentId] = []; +/******/ addAllToSet(outdatedDependencies[parentId], [moduleId]); +/******/ continue; +/******/ } +/******/ delete outdatedDependencies[parentId]; +/******/ outdatedModules.push(parentId); +/******/ queue.push({ +/******/ chain: chain.concat([parentId]), +/******/ id: parentId +/******/ }); +/******/ } +/******/ } +/******/ +/******/ return { +/******/ type: "accepted", +/******/ moduleId: updateModuleId, +/******/ outdatedModules: outdatedModules, +/******/ outdatedDependencies: outdatedDependencies +/******/ }; +/******/ } +/******/ +/******/ function addAllToSet(a, b) { +/******/ for (var i = 0; i < b.length; i++) { +/******/ var item = b[i]; +/******/ if (a.indexOf(item) === -1) a.push(item); +/******/ } +/******/ } +/******/ +/******/ // at begin all updates modules are outdated +/******/ // the "outdated" status can propagate to parents if they don't accept the children +/******/ var outdatedDependencies = {}; +/******/ var outdatedModules = []; +/******/ var appliedUpdate = {}; +/******/ +/******/ var warnUnexpectedRequire = function warnUnexpectedRequire() { +/******/ console.warn( +/******/ "[HMR] unexpected require(" + result.moduleId + ") to disposed module" +/******/ ); +/******/ }; +/******/ +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ moduleId = toModuleId(id); +/******/ /** @type {TODO} */ +/******/ var result; +/******/ if (hotUpdate[id]) { +/******/ result = getAffectedStuff(moduleId); +/******/ } else { +/******/ result = { +/******/ type: "disposed", +/******/ moduleId: id +/******/ }; +/******/ } +/******/ /** @type {Error|false} */ +/******/ var abortError = false; +/******/ var doApply = false; +/******/ var doDispose = false; +/******/ var chainInfo = ""; +/******/ if (result.chain) { +/******/ chainInfo = "\nUpdate propagation: " + result.chain.join(" -> "); +/******/ } +/******/ switch (result.type) { +/******/ case "self-declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of self decline: " + +/******/ result.moduleId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of declined dependency: " + +/******/ result.moduleId + +/******/ " in " + +/******/ result.parentId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "unaccepted": +/******/ if (options.onUnaccepted) options.onUnaccepted(result); +/******/ if (!options.ignoreUnaccepted) +/******/ abortError = new Error( +/******/ "Aborted because " + moduleId + " is not accepted" + chainInfo +/******/ ); +/******/ break; +/******/ case "accepted": +/******/ if (options.onAccepted) options.onAccepted(result); +/******/ doApply = true; +/******/ break; +/******/ case "disposed": +/******/ if (options.onDisposed) options.onDisposed(result); +/******/ doDispose = true; +/******/ break; +/******/ default: +/******/ throw new Error("Unexception type " + result.type); +/******/ } +/******/ if (abortError) { +/******/ hotSetStatus("abort"); +/******/ return Promise.reject(abortError); +/******/ } +/******/ if (doApply) { +/******/ appliedUpdate[moduleId] = hotUpdate[moduleId]; +/******/ addAllToSet(outdatedModules, result.outdatedModules); +/******/ for (moduleId in result.outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call( +/******/ result.outdatedDependencies, +/******/ moduleId +/******/ ) +/******/ ) { +/******/ if (!outdatedDependencies[moduleId]) +/******/ outdatedDependencies[moduleId] = []; +/******/ addAllToSet( +/******/ outdatedDependencies[moduleId], +/******/ result.outdatedDependencies[moduleId] +/******/ ); +/******/ } +/******/ } +/******/ } +/******/ if (doDispose) { +/******/ addAllToSet(outdatedModules, [result.moduleId]); +/******/ appliedUpdate[moduleId] = warnUnexpectedRequire; +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Store self accepted outdated modules to require them later by the module system +/******/ var outdatedSelfAcceptedModules = []; +/******/ for (i = 0; i < outdatedModules.length; i++) { +/******/ moduleId = outdatedModules[i]; +/******/ if ( +/******/ installedModules[moduleId] && +/******/ installedModules[moduleId].hot._selfAccepted && +/******/ // removed self-accepted modules should not be required +/******/ appliedUpdate[moduleId] !== warnUnexpectedRequire +/******/ ) { +/******/ outdatedSelfAcceptedModules.push({ +/******/ module: moduleId, +/******/ errorHandler: installedModules[moduleId].hot._selfAccepted +/******/ }); +/******/ } +/******/ } +/******/ +/******/ // Now in "dispose" phase +/******/ hotSetStatus("dispose"); +/******/ Object.keys(hotAvailableFilesMap).forEach(function(chunkId) { +/******/ if (hotAvailableFilesMap[chunkId] === false) { +/******/ hotDisposeChunk(chunkId); +/******/ } +/******/ }); +/******/ +/******/ var idx; +/******/ var queue = outdatedModules.slice(); +/******/ while (queue.length > 0) { +/******/ moduleId = queue.pop(); +/******/ module = installedModules[moduleId]; +/******/ if (!module) continue; +/******/ +/******/ var data = {}; +/******/ +/******/ // Call dispose handlers +/******/ var disposeHandlers = module.hot._disposeHandlers; +/******/ for (j = 0; j < disposeHandlers.length; j++) { +/******/ cb = disposeHandlers[j]; +/******/ cb(data); +/******/ } +/******/ hotCurrentModuleData[moduleId] = data; +/******/ +/******/ // disable module (this disables requires from this module) +/******/ module.hot.active = false; +/******/ +/******/ // remove module from cache +/******/ delete installedModules[moduleId]; +/******/ +/******/ // when disposing there is no need to call dispose handler +/******/ delete outdatedDependencies[moduleId]; +/******/ +/******/ // remove "parents" references from all children +/******/ for (j = 0; j < module.children.length; j++) { +/******/ var child = installedModules[module.children[j]]; +/******/ if (!child) continue; +/******/ idx = child.parents.indexOf(moduleId); +/******/ if (idx >= 0) { +/******/ child.parents.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ +/******/ // remove outdated dependency from module children +/******/ var dependency; +/******/ var moduleOutdatedDependencies; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ for (j = 0; j < moduleOutdatedDependencies.length; j++) { +/******/ dependency = moduleOutdatedDependencies[j]; +/******/ idx = module.children.indexOf(dependency); +/******/ if (idx >= 0) module.children.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Now in "apply" phase +/******/ hotSetStatus("apply"); +/******/ +/******/ hotCurrentHash = hotUpdateNewHash; +/******/ +/******/ // insert new code +/******/ for (moduleId in appliedUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) { +/******/ modules[moduleId] = appliedUpdate[moduleId]; +/******/ } +/******/ } +/******/ +/******/ // call accept handlers +/******/ var error = null; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ var callbacks = []; +/******/ for (i = 0; i < moduleOutdatedDependencies.length; i++) { +/******/ dependency = moduleOutdatedDependencies[i]; +/******/ cb = module.hot._acceptedDependencies[dependency]; +/******/ if (cb) { +/******/ if (callbacks.indexOf(cb) !== -1) continue; +/******/ callbacks.push(cb); +/******/ } +/******/ } +/******/ for (i = 0; i < callbacks.length; i++) { +/******/ cb = callbacks[i]; +/******/ try { +/******/ cb(moduleOutdatedDependencies); +/******/ } catch (err) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "accept-errored", +/******/ moduleId: moduleId, +/******/ dependencyId: moduleOutdatedDependencies[i], +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Load self accepted modules +/******/ for (i = 0; i < outdatedSelfAcceptedModules.length; i++) { +/******/ var item = outdatedSelfAcceptedModules[i]; +/******/ moduleId = item.module; +/******/ hotCurrentParents = [moduleId]; +/******/ try { +/******/ __webpack_require__(moduleId); +/******/ } catch (err) { +/******/ if (typeof item.errorHandler === "function") { +/******/ try { +/******/ item.errorHandler(err); +/******/ } catch (err2) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-error-handler-errored", +/******/ moduleId: moduleId, +/******/ error: err2, +/******/ originalError: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err2; +/******/ } +/******/ if (!error) error = err; +/******/ } +/******/ } else { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-errored", +/******/ moduleId: moduleId, +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // handle errors in accept handlers and self accepted module load +/******/ if (error) { +/******/ hotSetStatus("fail"); +/******/ return Promise.reject(error); +/******/ } +/******/ +/******/ hotSetStatus("idle"); +/******/ return new Promise(function(resolve) { +/******/ resolve(outdatedModules); +/******/ }); +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {}, +/******/ hot: hotCreateModule(moduleId), +/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp), +/******/ children: [] +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId)); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // __webpack_hash__ +/******/ __webpack_require__.h = function() { return hotCurrentHash; }; +/******/ +/******/ +/******/ // Load entry module and return exports +/******/ return hotCreateRequire("./index.js")(__webpack_require__.s = "./index.js"); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js": +/*!****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***! + \****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _arrayWithHoles(arr) { + if (Array.isArray(arr)) return arr; +} + +module.exports = _arrayWithHoles; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js": +/*!*******************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***! + \*******************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _arrayWithoutHoles(arr) { + if (Array.isArray(arr)) { + for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { + arr2[i] = arr[i]; + } + + return arr2; + } +} + +module.exports = _arrayWithoutHoles; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js": +/*!***********************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***! + \***********************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _assertThisInitialized(self) { + if (self === void 0) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } + + return self; +} + +module.exports = _assertThisInitialized; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js": +/*!******************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***! + \******************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { + try { + var info = gen[key](arg); + var value = info.value; + } catch (error) { + reject(error); + return; + } + + if (info.done) { + resolve(value); + } else { + Promise.resolve(value).then(_next, _throw); + } +} + +function _asyncToGenerator(fn) { + return function () { + var self = this, + args = arguments; + return new Promise(function (resolve, reject) { + var gen = fn.apply(self, args); + + function _next(value) { + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); + } + + function _throw(err) { + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); + } + + _next(undefined); + }); + }; +} + +module.exports = _asyncToGenerator; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js": +/*!****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***! + \****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } +} + +module.exports = _classCallCheck; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/createClass.js": +/*!*************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/createClass.js ***! + \*************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } +} + +function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + return Constructor; +} + +module.exports = _createClass; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/defineProperty.js": +/*!****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***! + \****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +module.exports = _defineProperty; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js": +/*!****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***! + \****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _getPrototypeOf(o) { + module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { + return o.__proto__ || Object.getPrototypeOf(o); + }; + return _getPrototypeOf(o); +} + +module.exports = _getPrototypeOf; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/inherits.js": +/*!**********************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/inherits.js ***! + \**********************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js"); + +function _inherits(subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function"); + } + + subClass.prototype = Object.create(superClass && superClass.prototype, { + constructor: { + value: subClass, + writable: true, + configurable: true + } + }); + if (superClass) setPrototypeOf(subClass, superClass); +} + +module.exports = _inherits; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js": +/*!*****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***! + \*****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _iterableToArray(iter) { + if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); +} + +module.exports = _iterableToArray; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js": +/*!**********************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***! + \**********************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _iterableToArrayLimit(arr, i) { + var _arr = []; + var _n = true; + var _d = false; + var _e = undefined; + + try { + for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + _arr.push(_s.value); + + if (i && _arr.length === i) break; + } + } catch (err) { + _d = true; + _e = err; + } finally { + try { + if (!_n && _i["return"] != null) _i["return"](); + } finally { + if (_d) throw _e; + } + } + + return _arr; +} + +module.exports = _iterableToArrayLimit; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js": +/*!*****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***! + \*****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _nonIterableRest() { + throw new TypeError("Invalid attempt to destructure non-iterable instance"); +} + +module.exports = _nonIterableRest; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js": +/*!*******************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***! + \*******************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance"); +} + +module.exports = _nonIterableSpread; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js": +/*!***************************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***! + \***************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var _typeof = __webpack_require__(/*! ../helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); + +var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); + +function _possibleConstructorReturn(self, call) { + if (call && (_typeof(call) === "object" || typeof call === "function")) { + return call; + } + + return assertThisInitialized(self); +} + +module.exports = _possibleConstructorReturn; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js": +/*!****************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***! + \****************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _setPrototypeOf(o, p) { + module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { + o.__proto__ = p; + return o; + }; + + return _setPrototypeOf(o, p); +} + +module.exports = _setPrototypeOf; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js": +/*!***************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***! + \***************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js"); + +var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js"); + +var nonIterableRest = __webpack_require__(/*! ./nonIterableRest */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js"); + +function _slicedToArray(arr, i) { + return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest(); +} + +module.exports = _slicedToArray; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js": +/*!*******************************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***! + \*******************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js"); + +var iterableToArray = __webpack_require__(/*! ./iterableToArray */ "../node_modules/@babel/runtime/helpers/iterableToArray.js"); + +var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js"); + +function _toConsumableArray(arr) { + return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread(); +} + +module.exports = _toConsumableArray; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/helpers/typeof.js": +/*!********************************************************!*\ + !*** ../node_modules/@babel/runtime/helpers/typeof.js ***! + \********************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); } + +function _typeof(obj) { + if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") { + module.exports = _typeof = function _typeof(obj) { + return _typeof2(obj); + }; + } else { + module.exports = _typeof = function _typeof(obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj); + }; + } + + return _typeof(obj); +} + +module.exports = _typeof; + +/***/ }), + +/***/ "../node_modules/@babel/runtime/regenerator/index.js": +/*!***********************************************************!*\ + !*** ../node_modules/@babel/runtime/regenerator/index.js ***! + \***********************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime-module.js"); + + +/***/ }), + +/***/ "../node_modules/ms/index.js": +/*!***********************************!*\ + !*** ../node_modules/ms/index.js ***! + \***********************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/** + * Helpers. + */ + +var s = 1000; +var m = s * 60; +var h = m * 60; +var d = h * 24; +var w = d * 7; +var y = d * 365.25; + +/** + * Parse or format the given `val`. + * + * Options: + * + * - `long` verbose formatting [false] + * + * @param {String|Number} val + * @param {Object} [options] + * @throws {Error} throw an error if val is not a non-empty string or a number + * @return {String|Number} + * @api public + */ + +module.exports = function(val, options) { + options = options || {}; + var type = typeof val; + if (type === 'string' && val.length > 0) { + return parse(val); + } else if (type === 'number' && isNaN(val) === false) { + return options.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + 'val is not a non-empty string or a valid number. val=' + + JSON.stringify(val) + ); +}; + +/** + * Parse the given `str` and return milliseconds. + * + * @param {String} str + * @return {Number} + * @api private + */ + +function parse(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match = /^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match) { + return; + } + var n = parseFloat(match[1]); + var type = (match[2] || 'ms').toLowerCase(); + switch (type) { + case 'years': + case 'year': + case 'yrs': + case 'yr': + case 'y': + return n * y; + case 'weeks': + case 'week': + case 'w': + return n * w; + case 'days': + case 'day': + case 'd': + return n * d; + case 'hours': + case 'hour': + case 'hrs': + case 'hr': + case 'h': + return n * h; + case 'minutes': + case 'minute': + case 'mins': + case 'min': + case 'm': + return n * m; + case 'seconds': + case 'second': + case 'secs': + case 'sec': + case 's': + return n * s; + case 'milliseconds': + case 'millisecond': + case 'msecs': + case 'msec': + case 'ms': + return n; + default: + return undefined; + } +} + +/** + * Short format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + +function fmtShort(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return Math.round(ms / d) + 'd'; + } + if (msAbs >= h) { + return Math.round(ms / h) + 'h'; + } + if (msAbs >= m) { + return Math.round(ms / m) + 'm'; + } + if (msAbs >= s) { + return Math.round(ms / s) + 's'; + } + return ms + 'ms'; +} + +/** + * Long format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + +function fmtLong(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return plural(ms, msAbs, d, 'day'); + } + if (msAbs >= h) { + return plural(ms, msAbs, h, 'hour'); + } + if (msAbs >= m) { + return plural(ms, msAbs, m, 'minute'); + } + if (msAbs >= s) { + return plural(ms, msAbs, s, 'second'); + } + return ms + ' ms'; +} + +/** + * Pluralization helper. + */ + +function plural(ms, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : ''); +} + + +/***/ }), + +/***/ "../node_modules/process/browser.js": +/*!******************************************!*\ + !*** ../node_modules/process/browser.js ***! + \******************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + + +/***/ }), + +/***/ "../node_modules/regenerator-runtime/runtime-module.js": +/*!*************************************************************!*\ + !*** ../node_modules/regenerator-runtime/runtime-module.js ***! + \*************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +/** + * Copyright (c) 2014-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +// This method of obtaining a reference to the global object needs to be +// kept identical to the way it is obtained in runtime.js +var g = (function() { + return this || (typeof self === "object" && self); +})() || Function("return this")(); + +// Use `getOwnPropertyNames` because not all browsers support calling +// `hasOwnProperty` on the global `self` object in a worker. See #183. +var hadRuntime = g.regeneratorRuntime && + Object.getOwnPropertyNames(g).indexOf("regeneratorRuntime") >= 0; + +// Save the old regeneratorRuntime in case it needs to be restored later. +var oldRuntime = hadRuntime && g.regeneratorRuntime; + +// Force reevalutation of runtime.js. +g.regeneratorRuntime = undefined; + +module.exports = __webpack_require__(/*! ./runtime */ "../node_modules/regenerator-runtime/runtime.js"); + +if (hadRuntime) { + // Restore the original runtime. + g.regeneratorRuntime = oldRuntime; +} else { + // Remove the global property added by runtime.js. + try { + delete g.regeneratorRuntime; + } catch(e) { + g.regeneratorRuntime = undefined; + } +} + + +/***/ }), + +/***/ "../node_modules/regenerator-runtime/runtime.js": +/*!******************************************************!*\ + !*** ../node_modules/regenerator-runtime/runtime.js ***! + \******************************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/** + * Copyright (c) 2014-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +!(function(global) { + "use strict"; + + var Op = Object.prototype; + var hasOwn = Op.hasOwnProperty; + var undefined; // More compressible than void 0. + var $Symbol = typeof Symbol === "function" ? Symbol : {}; + var iteratorSymbol = $Symbol.iterator || "@@iterator"; + var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator"; + var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; + + var inModule = typeof module === "object"; + var runtime = global.regeneratorRuntime; + if (runtime) { + if (inModule) { + // If regeneratorRuntime is defined globally and we're in a module, + // make the exports object identical to regeneratorRuntime. + module.exports = runtime; + } + // Don't bother evaluating the rest of this file if the runtime was + // already defined globally. + return; + } + + // Define the runtime globally (as expected by generated code) as either + // module.exports (if we're in a module) or a new, empty object. + runtime = global.regeneratorRuntime = inModule ? module.exports : {}; + + function wrap(innerFn, outerFn, self, tryLocsList) { + // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator. + var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator; + var generator = Object.create(protoGenerator.prototype); + var context = new Context(tryLocsList || []); + + // The ._invoke method unifies the implementations of the .next, + // .throw, and .return methods. + generator._invoke = makeInvokeMethod(innerFn, self, context); + + return generator; + } + runtime.wrap = wrap; + + // Try/catch helper to minimize deoptimizations. Returns a completion + // record like context.tryEntries[i].completion. This interface could + // have been (and was previously) designed to take a closure to be + // invoked without arguments, but in all the cases we care about we + // already have an existing method we want to call, so there's no need + // to create a new function object. We can even get away with assuming + // the method takes exactly one argument, since that happens to be true + // in every case, so we don't have to touch the arguments object. The + // only additional allocation required is the completion record, which + // has a stable shape and so hopefully should be cheap to allocate. + function tryCatch(fn, obj, arg) { + try { + return { type: "normal", arg: fn.call(obj, arg) }; + } catch (err) { + return { type: "throw", arg: err }; + } + } + + var GenStateSuspendedStart = "suspendedStart"; + var GenStateSuspendedYield = "suspendedYield"; + var GenStateExecuting = "executing"; + var GenStateCompleted = "completed"; + + // Returning this object from the innerFn has the same effect as + // breaking out of the dispatch switch statement. + var ContinueSentinel = {}; + + // Dummy constructor functions that we use as the .constructor and + // .constructor.prototype properties for functions that return Generator + // objects. For full spec compliance, you may wish to configure your + // minifier not to mangle the names of these two functions. + function Generator() {} + function GeneratorFunction() {} + function GeneratorFunctionPrototype() {} + + // This is a polyfill for %IteratorPrototype% for environments that + // don't natively support it. + var IteratorPrototype = {}; + IteratorPrototype[iteratorSymbol] = function () { + return this; + }; + + var getProto = Object.getPrototypeOf; + var NativeIteratorPrototype = getProto && getProto(getProto(values([]))); + if (NativeIteratorPrototype && + NativeIteratorPrototype !== Op && + hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) { + // This environment has a native %IteratorPrototype%; use it instead + // of the polyfill. + IteratorPrototype = NativeIteratorPrototype; + } + + var Gp = GeneratorFunctionPrototype.prototype = + Generator.prototype = Object.create(IteratorPrototype); + GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype; + GeneratorFunctionPrototype.constructor = GeneratorFunction; + GeneratorFunctionPrototype[toStringTagSymbol] = + GeneratorFunction.displayName = "GeneratorFunction"; + + // Helper for defining the .next, .throw, and .return methods of the + // Iterator interface in terms of a single ._invoke method. + function defineIteratorMethods(prototype) { + ["next", "throw", "return"].forEach(function(method) { + prototype[method] = function(arg) { + return this._invoke(method, arg); + }; + }); + } + + runtime.isGeneratorFunction = function(genFun) { + var ctor = typeof genFun === "function" && genFun.constructor; + return ctor + ? ctor === GeneratorFunction || + // For the native GeneratorFunction constructor, the best we can + // do is to check its .name property. + (ctor.displayName || ctor.name) === "GeneratorFunction" + : false; + }; + + runtime.mark = function(genFun) { + if (Object.setPrototypeOf) { + Object.setPrototypeOf(genFun, GeneratorFunctionPrototype); + } else { + genFun.__proto__ = GeneratorFunctionPrototype; + if (!(toStringTagSymbol in genFun)) { + genFun[toStringTagSymbol] = "GeneratorFunction"; + } + } + genFun.prototype = Object.create(Gp); + return genFun; + }; + + // Within the body of any async function, `await x` is transformed to + // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test + // `hasOwn.call(value, "__await")` to determine if the yielded value is + // meant to be awaited. + runtime.awrap = function(arg) { + return { __await: arg }; + }; + + function AsyncIterator(generator) { + function invoke(method, arg, resolve, reject) { + var record = tryCatch(generator[method], generator, arg); + if (record.type === "throw") { + reject(record.arg); + } else { + var result = record.arg; + var value = result.value; + if (value && + typeof value === "object" && + hasOwn.call(value, "__await")) { + return Promise.resolve(value.__await).then(function(value) { + invoke("next", value, resolve, reject); + }, function(err) { + invoke("throw", err, resolve, reject); + }); + } + + return Promise.resolve(value).then(function(unwrapped) { + // When a yielded Promise is resolved, its final value becomes + // the .value of the Promise<{value,done}> result for the + // current iteration. + result.value = unwrapped; + resolve(result); + }, function(error) { + // If a rejected Promise was yielded, throw the rejection back + // into the async generator function so it can be handled there. + return invoke("throw", error, resolve, reject); + }); + } + } + + var previousPromise; + + function enqueue(method, arg) { + function callInvokeWithMethodAndArg() { + return new Promise(function(resolve, reject) { + invoke(method, arg, resolve, reject); + }); + } + + return previousPromise = + // If enqueue has been called before, then we want to wait until + // all previous Promises have been resolved before calling invoke, + // so that results are always delivered in the correct order. If + // enqueue has not been called before, then it is important to + // call invoke immediately, without waiting on a callback to fire, + // so that the async generator function has the opportunity to do + // any necessary setup in a predictable way. This predictability + // is why the Promise constructor synchronously invokes its + // executor callback, and why async functions synchronously + // execute code before the first await. Since we implement simple + // async functions in terms of async generators, it is especially + // important to get this right, even though it requires care. + previousPromise ? previousPromise.then( + callInvokeWithMethodAndArg, + // Avoid propagating failures to Promises returned by later + // invocations of the iterator. + callInvokeWithMethodAndArg + ) : callInvokeWithMethodAndArg(); + } + + // Define the unified helper method that is used to implement .next, + // .throw, and .return (see defineIteratorMethods). + this._invoke = enqueue; + } + + defineIteratorMethods(AsyncIterator.prototype); + AsyncIterator.prototype[asyncIteratorSymbol] = function () { + return this; + }; + runtime.AsyncIterator = AsyncIterator; + + // Note that simple async functions are implemented on top of + // AsyncIterator objects; they just return a Promise for the value of + // the final result produced by the iterator. + runtime.async = function(innerFn, outerFn, self, tryLocsList) { + var iter = new AsyncIterator( + wrap(innerFn, outerFn, self, tryLocsList) + ); + + return runtime.isGeneratorFunction(outerFn) + ? iter // If outerFn is a generator, return the full iterator. + : iter.next().then(function(result) { + return result.done ? result.value : iter.next(); + }); + }; + + function makeInvokeMethod(innerFn, self, context) { + var state = GenStateSuspendedStart; + + return function invoke(method, arg) { + if (state === GenStateExecuting) { + throw new Error("Generator is already running"); + } + + if (state === GenStateCompleted) { + if (method === "throw") { + throw arg; + } + + // Be forgiving, per 25.3.3.3.3 of the spec: + // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume + return doneResult(); + } + + context.method = method; + context.arg = arg; + + while (true) { + var delegate = context.delegate; + if (delegate) { + var delegateResult = maybeInvokeDelegate(delegate, context); + if (delegateResult) { + if (delegateResult === ContinueSentinel) continue; + return delegateResult; + } + } + + if (context.method === "next") { + // Setting context._sent for legacy support of Babel's + // function.sent implementation. + context.sent = context._sent = context.arg; + + } else if (context.method === "throw") { + if (state === GenStateSuspendedStart) { + state = GenStateCompleted; + throw context.arg; + } + + context.dispatchException(context.arg); + + } else if (context.method === "return") { + context.abrupt("return", context.arg); + } + + state = GenStateExecuting; + + var record = tryCatch(innerFn, self, context); + if (record.type === "normal") { + // If an exception is thrown from innerFn, we leave state === + // GenStateExecuting and loop back for another invocation. + state = context.done + ? GenStateCompleted + : GenStateSuspendedYield; + + if (record.arg === ContinueSentinel) { + continue; + } + + return { + value: record.arg, + done: context.done + }; + + } else if (record.type === "throw") { + state = GenStateCompleted; + // Dispatch the exception by looping back around to the + // context.dispatchException(context.arg) call above. + context.method = "throw"; + context.arg = record.arg; + } + } + }; + } + + // Call delegate.iterator[context.method](context.arg) and handle the + // result, either by returning a { value, done } result from the + // delegate iterator, or by modifying context.method and context.arg, + // setting context.delegate to null, and returning the ContinueSentinel. + function maybeInvokeDelegate(delegate, context) { + var method = delegate.iterator[context.method]; + if (method === undefined) { + // A .throw or .return when the delegate iterator has no .throw + // method always terminates the yield* loop. + context.delegate = null; + + if (context.method === "throw") { + if (delegate.iterator.return) { + // If the delegate iterator has a return method, give it a + // chance to clean up. + context.method = "return"; + context.arg = undefined; + maybeInvokeDelegate(delegate, context); + + if (context.method === "throw") { + // If maybeInvokeDelegate(context) changed context.method from + // "return" to "throw", let that override the TypeError below. + return ContinueSentinel; + } + } + + context.method = "throw"; + context.arg = new TypeError( + "The iterator does not provide a 'throw' method"); + } + + return ContinueSentinel; + } + + var record = tryCatch(method, delegate.iterator, context.arg); + + if (record.type === "throw") { + context.method = "throw"; + context.arg = record.arg; + context.delegate = null; + return ContinueSentinel; + } + + var info = record.arg; + + if (! info) { + context.method = "throw"; + context.arg = new TypeError("iterator result is not an object"); + context.delegate = null; + return ContinueSentinel; + } + + if (info.done) { + // Assign the result of the finished delegate to the temporary + // variable specified by delegate.resultName (see delegateYield). + context[delegate.resultName] = info.value; + + // Resume execution at the desired location (see delegateYield). + context.next = delegate.nextLoc; + + // If context.method was "throw" but the delegate handled the + // exception, let the outer generator proceed normally. If + // context.method was "next", forget context.arg since it has been + // "consumed" by the delegate iterator. If context.method was + // "return", allow the original .return call to continue in the + // outer generator. + if (context.method !== "return") { + context.method = "next"; + context.arg = undefined; + } + + } else { + // Re-yield the result returned by the delegate method. + return info; + } + + // The delegate iterator is finished, so forget it and continue with + // the outer generator. + context.delegate = null; + return ContinueSentinel; + } + + // Define Generator.prototype.{next,throw,return} in terms of the + // unified ._invoke helper method. + defineIteratorMethods(Gp); + + Gp[toStringTagSymbol] = "Generator"; + + // A Generator should always return itself as the iterator object when the + // @@iterator function is called on it. Some browsers' implementations of the + // iterator prototype chain incorrectly implement this, causing the Generator + // object to not be returned from this call. This ensures that doesn't happen. + // See https://github.com/facebook/regenerator/issues/274 for more details. + Gp[iteratorSymbol] = function() { + return this; + }; + + Gp.toString = function() { + return "[object Generator]"; + }; + + function pushTryEntry(locs) { + var entry = { tryLoc: locs[0] }; + + if (1 in locs) { + entry.catchLoc = locs[1]; + } + + if (2 in locs) { + entry.finallyLoc = locs[2]; + entry.afterLoc = locs[3]; + } + + this.tryEntries.push(entry); + } + + function resetTryEntry(entry) { + var record = entry.completion || {}; + record.type = "normal"; + delete record.arg; + entry.completion = record; + } + + function Context(tryLocsList) { + // The root entry object (effectively a try statement without a catch + // or a finally block) gives us a place to store values thrown from + // locations where there is no enclosing try statement. + this.tryEntries = [{ tryLoc: "root" }]; + tryLocsList.forEach(pushTryEntry, this); + this.reset(true); + } + + runtime.keys = function(object) { + var keys = []; + for (var key in object) { + keys.push(key); + } + keys.reverse(); + + // Rather than returning an object with a next method, we keep + // things simple and return the next function itself. + return function next() { + while (keys.length) { + var key = keys.pop(); + if (key in object) { + next.value = key; + next.done = false; + return next; + } + } + + // To avoid creating an additional object, we just hang the .value + // and .done properties off the next function object itself. This + // also ensures that the minifier will not anonymize the function. + next.done = true; + return next; + }; + }; + + function values(iterable) { + if (iterable) { + var iteratorMethod = iterable[iteratorSymbol]; + if (iteratorMethod) { + return iteratorMethod.call(iterable); + } + + if (typeof iterable.next === "function") { + return iterable; + } + + if (!isNaN(iterable.length)) { + var i = -1, next = function next() { + while (++i < iterable.length) { + if (hasOwn.call(iterable, i)) { + next.value = iterable[i]; + next.done = false; + return next; + } + } + + next.value = undefined; + next.done = true; + + return next; + }; + + return next.next = next; + } + } + + // Return an iterator with no values. + return { next: doneResult }; + } + runtime.values = values; + + function doneResult() { + return { value: undefined, done: true }; + } + + Context.prototype = { + constructor: Context, + + reset: function(skipTempReset) { + this.prev = 0; + this.next = 0; + // Resetting context._sent for legacy support of Babel's + // function.sent implementation. + this.sent = this._sent = undefined; + this.done = false; + this.delegate = null; + + this.method = "next"; + this.arg = undefined; + + this.tryEntries.forEach(resetTryEntry); + + if (!skipTempReset) { + for (var name in this) { + // Not sure about the optimal order of these conditions: + if (name.charAt(0) === "t" && + hasOwn.call(this, name) && + !isNaN(+name.slice(1))) { + this[name] = undefined; + } + } + } + }, + + stop: function() { + this.done = true; + + var rootEntry = this.tryEntries[0]; + var rootRecord = rootEntry.completion; + if (rootRecord.type === "throw") { + throw rootRecord.arg; + } + + return this.rval; + }, + + dispatchException: function(exception) { + if (this.done) { + throw exception; + } + + var context = this; + function handle(loc, caught) { + record.type = "throw"; + record.arg = exception; + context.next = loc; + + if (caught) { + // If the dispatched exception was caught by a catch block, + // then let that catch block handle the exception normally. + context.method = "next"; + context.arg = undefined; + } + + return !! caught; + } + + for (var i = this.tryEntries.length - 1; i >= 0; --i) { + var entry = this.tryEntries[i]; + var record = entry.completion; + + if (entry.tryLoc === "root") { + // Exception thrown outside of any try block that could handle + // it, so set the completion value of the entire function to + // throw the exception. + return handle("end"); + } + + if (entry.tryLoc <= this.prev) { + var hasCatch = hasOwn.call(entry, "catchLoc"); + var hasFinally = hasOwn.call(entry, "finallyLoc"); + + if (hasCatch && hasFinally) { + if (this.prev < entry.catchLoc) { + return handle(entry.catchLoc, true); + } else if (this.prev < entry.finallyLoc) { + return handle(entry.finallyLoc); + } + + } else if (hasCatch) { + if (this.prev < entry.catchLoc) { + return handle(entry.catchLoc, true); + } + + } else if (hasFinally) { + if (this.prev < entry.finallyLoc) { + return handle(entry.finallyLoc); + } + + } else { + throw new Error("try statement without catch or finally"); + } + } + } + }, + + abrupt: function(type, arg) { + for (var i = this.tryEntries.length - 1; i >= 0; --i) { + var entry = this.tryEntries[i]; + if (entry.tryLoc <= this.prev && + hasOwn.call(entry, "finallyLoc") && + this.prev < entry.finallyLoc) { + var finallyEntry = entry; + break; + } + } + + if (finallyEntry && + (type === "break" || + type === "continue") && + finallyEntry.tryLoc <= arg && + arg <= finallyEntry.finallyLoc) { + // Ignore the finally entry if control is not jumping to a + // location outside the try/catch block. + finallyEntry = null; + } + + var record = finallyEntry ? finallyEntry.completion : {}; + record.type = type; + record.arg = arg; + + if (finallyEntry) { + this.method = "next"; + this.next = finallyEntry.finallyLoc; + return ContinueSentinel; + } + + return this.complete(record); + }, + + complete: function(record, afterLoc) { + if (record.type === "throw") { + throw record.arg; + } + + if (record.type === "break" || + record.type === "continue") { + this.next = record.arg; + } else if (record.type === "return") { + this.rval = this.arg = record.arg; + this.method = "return"; + this.next = "end"; + } else if (record.type === "normal" && afterLoc) { + this.next = afterLoc; + } + + return ContinueSentinel; + }, + + finish: function(finallyLoc) { + for (var i = this.tryEntries.length - 1; i >= 0; --i) { + var entry = this.tryEntries[i]; + if (entry.finallyLoc === finallyLoc) { + this.complete(entry.completion, entry.afterLoc); + resetTryEntry(entry); + return ContinueSentinel; + } + } + }, + + "catch": function(tryLoc) { + for (var i = this.tryEntries.length - 1; i >= 0; --i) { + var entry = this.tryEntries[i]; + if (entry.tryLoc === tryLoc) { + var record = entry.completion; + if (record.type === "throw") { + var thrown = record.arg; + resetTryEntry(entry); + } + return thrown; + } + } + + // The context.catch method must only be called with a location + // argument that corresponds to a known catch block. + throw new Error("illegal catch attempt"); + }, + + delegateYield: function(iterable, resultName, nextLoc) { + this.delegate = { + iterator: values(iterable), + resultName: resultName, + nextLoc: nextLoc + }; + + if (this.method === "next") { + // Deliberately forget the last sent value so that we don't + // accidentally pass it on to the delegate. + this.arg = undefined; + } + + return ContinueSentinel; + } + }; +})( + // In sloppy mode, unbound `this` refers to the global object, fallback to + // Function constructor if we're in global strict mode. That is sadly a form + // of indirect eval which violates Content Security Policy. + (function() { + return this || (typeof self === "object" && self); + })() || Function("return this")() +); + + +/***/ }), + +/***/ "./drawing/draw.js": +/*!*************************!*\ + !*** ./drawing/draw.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * This function manages the {@link https://www.w3.org/TR/2dcontext/#the-canvas-state|save/restore} + * pattern for working in a new context state stack. The parameter `fn` is passed the `context` and can + * execute any API calls in a clean stack. + * @public + * @method draw + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target Canvas + * @param {ContextFn} fn - A function which performs drawing operations within the given context. + * @returns {undefined} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (context, fn) { + context.save(); + fn(context); + context.restore(); +}); + +/***/ }), + +/***/ "./drawing/drawArrow.js": +/*!******************************!*\ + !*** ./drawing/drawArrow.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _drawLine_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./drawLine.js */ "./drawing/drawLine.js"); +/* harmony import */ var _drawJoinedLines_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./drawJoinedLines.js */ "./drawing/drawJoinedLines.js"); + + +/** + * Draw an arrow using the drawing API. + * @public + * @method drawArrow + * @memberof Drawing + * + * @param {Object} context The canvas context. + * @param {Object} start The start position. + * @param {Object} end The end position. + * @param {string} color The color of the arrow. + * @param {number} lineWidth The width of the arrow line. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, start, end, color, lineWidth) { + // Variables to be used when creating the arrow + var headLength = 10; + var angle = Math.atan2(end.y - start.y, end.x - start.x); // Starting path of the arrow from the start square to the end square and drawing the stroke + + var options = { + color: color, + lineWidth: lineWidth + }; + Object(_drawLine_js__WEBPACK_IMPORTED_MODULE_0__["default"])(context, undefined, start, end, options, 'canvas'); + options = { + color: color, + lineWidth: lineWidth, + fillStyle: color + }; + var points = [{ + x: end.x - headLength * Math.cos(angle - Math.PI / 7), + y: end.y - headLength * Math.sin(angle - Math.PI / 7) + }, { + x: end.x - headLength * Math.cos(angle + Math.PI / 7), + y: end.y - headLength * Math.sin(angle + Math.PI / 7) + }, end]; + Object(_drawJoinedLines_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, undefined, end, points, options, 'canvas'); +}); + +/***/ }), + +/***/ "./drawing/drawCircle.js": +/*!*******************************!*\ + !*** ./drawing/drawCircle.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); + + +/** + * Draw a circle with given `center` and `radius`. + * @public + * @method drawCircle + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} center - `{ x, y }` in either pixel or canvas coordinates. + * @param {number} radius - The circle's radius in canvas units. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, center, radius, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + + if (coordSystem === 'pixel') { + center = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, center); + } + + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + context.arc(center.x, center.y, radius, 0, 2 * Math.PI); + }); +}); + +/***/ }), + +/***/ "./drawing/drawEllipse.js": +/*!********************************!*\ + !*** ./drawing/drawEllipse.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); +/* harmony import */ var _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/pointProjector.js */ "./util/pointProjector.js"); + + + +/** + * Draw an ellipse within the bounding box defined by `corner1` and `corner2`. + * @public + * @method drawEllipse + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} corner1 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} corner2 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @param {Number} initialRotation - Ellipse initial rotation + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, corner1, corner2, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + var initialRotation = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0.0; + + if (coordSystem === 'pixel') { + corner1 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, corner1); + corner2 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, corner2); + } + + var viewport = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getViewport(element); // Calculate the center of the image + + var width = element.clientWidth, + height = element.clientHeight; + var scale = viewport.scale, + translation = viewport.translation; + var rotation = viewport.rotation - initialRotation; + var centerPoint = { + x: width / 2 + translation.x * scale, + y: height / 2 + translation.y * scale + }; + + if (Math.abs(rotation) > 0.05) { + corner1 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner1, centerPoint, -rotation); + corner2 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner2, centerPoint, -rotation); + } + + var w = Math.abs(corner1.x - corner2.x); + var h = Math.abs(corner1.y - corner2.y); + var xMin = Math.min(corner1.x, corner2.x); + var yMin = Math.min(corner1.y, corner2.y); + var center = { + x: xMin + w / 2, + y: yMin + h / 2 + }; + + if (Math.abs(rotation) > 0.05) { + center = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(center, centerPoint, rotation); + } + + var angle = rotation * Math.PI / 180; + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + context.ellipse(center.x, center.y, w / 2, h / 2, angle, 0, 2 * Math.PI); + context.closePath(); + }); +}); + +/***/ }), + +/***/ "./drawing/drawHandles.js": +/*!********************************!*\ + !*** ./drawing/drawHandles.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); + + + + + +/** + * Draws proivded handles to the provided context + * @public + * @method drawHandles + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {*} evtDetail - Cornerstone's 'cornerstoneimagerendered' event's `detail` + * @param {Object[]|Object} handles - An array of handle objects, or an object w/ named handle objects + * @param {Object} [options={}] - Options object + * @param {string} [options.color] + * @param {Boolean} [options.drawHandlesIfActive=false] - Whether the handles should only be drawn if Active (hovered/selected) + * @param {string} [options.fill] + * @param {Number} [options.handleRadius=6] + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, evtDetail, handles) { + var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; + var element = evtDetail.element; + var defaultColor = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__["default"].getToolColor(); + context.strokeStyle = options.color || defaultColor; + var handleKeys = Object.keys(handles); + + var _loop = function _loop(i) { + var handleKey = handleKeys[i]; + var handle = handles[handleKey]; + + if (handle.drawnIndependently === true) { + return "continue"; + } + + if (options.drawHandlesIfActive === true && !handle.active) { + return "continue"; + } + + var lineWidth = handle.active ? _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"].getActiveWidth() : _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"].getToolWidth(); + var fillStyle = options.fill; + Object(_path_js__WEBPACK_IMPORTED_MODULE_3__["default"])(context, { + lineWidth: lineWidth, + fillStyle: fillStyle + }, function (context) { + var handleCanvasCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, handle); // Handle's radisu, then tool's radius, then default radius + + var handleRadius = handle.radius || options.handleRadius || _store_index_js__WEBPACK_IMPORTED_MODULE_4__["state"].handleRadius; + context.arc(handleCanvasCoords.x, handleCanvasCoords.y, handleRadius, 0, 2 * Math.PI); + }); + }; + + for (var i = 0; i < handleKeys.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } +}); + +/***/ }), + +/***/ "./drawing/drawJoinedLines.js": +/*!************************************!*\ + !*** ./drawing/drawJoinedLines.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); + + +/** + * Draw a series of joined lines, starting at `start` and then going to each point in `points`. + * @public + * @method drawJoinedLines + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} start - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object[]} points - `[{ x, y }]` An array of points in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, start, points, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + if (coordSystem === 'pixel') { + start = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, start); + points = points.map(function (p) { + return _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, p); + }); + } + + context.moveTo(start.x, start.y); + points.forEach(function (_ref) { + var x = _ref.x, + y = _ref.y; + context.lineTo(x, y); + }); + }); +}); + +/***/ }), + +/***/ "./drawing/drawLine.js": +/*!*****************************!*\ + !*** ./drawing/drawLine.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return drawLine; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); + + +/** + * Draw a line between `start` and `end`. + * + * @public + * @method drawLine + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} start - `{ x, y } in either pixel or canvas coordinates. + * @param {Object} end - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @returns {undefined} + */ + +function drawLine(context, element, start, end, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + if (coordSystem === 'pixel') { + start = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, start); + end = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.pixelToCanvas(element, end); + } + + context.moveTo(start.x, start.y); + context.lineTo(end.x, end.y); + }); +} + +/***/ }), + +/***/ "./drawing/drawLines.js": +/*!******************************!*\ + !*** ./drawing/drawLines.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); + + +/** + * Draw multiple lines. + * @public + * @method drawJoinedLines + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object[]} lines - `[{ start: {x, y}, end: { x, y }]` An array of `start`, `end` pairs. + * Each point is `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, lines, options) { + var coordSystem = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'pixel'; + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + lines.forEach(function (line) { + var start = line.start; + var end = line.end; + + if (coordSystem === 'pixel') { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + start = cornerstone.pixelToCanvas(element, start); + end = cornerstone.pixelToCanvas(element, end); + } + + context.moveTo(start.x, start.y); + context.lineTo(end.x, end.y); + }); + }); +}); + +/***/ }), + +/***/ "./drawing/drawLink.js": +/*!*****************************!*\ + !*** ./drawing/drawLink.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _drawLine_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./drawLine.js */ "./drawing/drawLine.js"); + + +/** + * Draw a link between an annotation to a box. + * @public + * @method drawLink + * @memberof Drawing + * + * @param {Object[]} linkAnchorPoints An array of possible anchor points. + * @param {Object} refPoint A reference point to select the anchor point. + * @param {Object} boundingBox The bounding box to link. + * @param {Object} context The canvas context. + * @param {string} color The link color. + * @param {number} lineWidth The line width of the link. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (linkAnchorPoints, refPoint, boundingBox, context, color, lineWidth) { + // Draw a link from "the closest anchor point to refPoint" to "the nearest midpoint on the bounding box". + // Find the closest anchor point to RefPoint + var start = linkAnchorPoints.length > 0 ? _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.findClosestPoint(linkAnchorPoints, refPoint) : refPoint; // Calculate the midpoints of the bounding box + + var boundingBoxPoints = [{ + x: boundingBox.left + boundingBox.width / 2, + y: boundingBox.top + }, { + x: boundingBox.left, + y: boundingBox.top + boundingBox.height / 2 + }, { + x: boundingBox.left + boundingBox.width / 2, + y: boundingBox.top + boundingBox.height + }, { + x: boundingBox.left + boundingBox.width, + y: boundingBox.top + boundingBox.height / 2 + }]; // Calculate the link endpoint by identifying which midpoint of the bounding box + // Is closest to the start point. + + var end = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.findClosestPoint(boundingBoxPoints, start); // Finally we draw the dashed linking line + + var options = { + color: color, + lineWidth: lineWidth, + lineDash: [2, 3] + }; + Object(_drawLine_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, undefined, start, end, options, 'canvas'); +}); + +/***/ }), + +/***/ "./drawing/drawLinkedTextBox.js": +/*!**************************************!*\ + !*** ./drawing/drawLinkedTextBox.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _drawTextBox_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _drawLink_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./drawLink.js */ "./drawing/drawLink.js"); + + + +/** + * Draw a link between an annotation to a textBox. + * @public + * @method drawLinkedTextBox + * @memberof Drawing + * + * @param {Object} context - The canvas context. + * @param {HTMLElement} element - The element on which to draw the link. + * @param {Object} textBox - The textBox to link. + * @param {Object} text - The text to display in the textbox. + * @param {Object[]} handles - The handles of the annotation. + * @param {Object[]} textBoxAnchorPoints - An array of possible anchor points on the textBox. + * @param {string} color - The link color. + * @param {number} lineWidth - The line width of the link. + * @param {number} xOffset - The x offset of the textbox. + * @param {boolean} yCenter - Vertically centers the text if true. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, textBox, text, handles, textBoxAnchorPoints, color, lineWidth, xOffset, yCenter) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // Convert the textbox Image coordinates into Canvas coordinates + + var textCoords = cornerstone.pixelToCanvas(element, textBox); + + if (xOffset) { + textCoords.x += xOffset; + } + + var options = { + centering: { + x: false, + y: yCenter + } + }; // Draw the text box + + textBox.boundingBox = Object(_drawTextBox_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, text, textCoords.x, textCoords.y, color, options); + + if (textBox.hasMoved) { + // Identify the possible anchor points for the tool -> text line + var linkAnchorPoints = textBoxAnchorPoints(handles).map(function (h) { + return cornerstone.pixelToCanvas(element, h); + }); // Draw dashed link line between tool and text + + Object(_drawLink_js__WEBPACK_IMPORTED_MODULE_2__["default"])(linkAnchorPoints, textCoords, textBox.boundingBox, context, color, lineWidth); + } +}); + +/***/ }), + +/***/ "./drawing/drawRect.js": +/*!*****************************!*\ + !*** ./drawing/drawRect.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); +/* harmony import */ var _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/pointProjector.js */ "./util/pointProjector.js"); + + + +/** + * Draw a rectangle defined by `corner1` and `corner2`. + * @public + * @method drawRect + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} corner1 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} corner2 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @param {Number} initialRotation - Rectangle initial rotation + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, corner1, corner2, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + var initialRotation = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0.0; + + if (coordSystem === 'pixel') { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + corner1 = cornerstone.pixelToCanvas(element, corner1); + corner2 = cornerstone.pixelToCanvas(element, corner2); + } + + var viewport = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getViewport(element); // Calculate the center of the image + + var width = element.clientWidth, + height = element.clientHeight; + var scale = viewport.scale, + translation = viewport.translation; + var rotation = viewport.rotation - initialRotation; + var centerPoint = { + x: width / 2 + translation.x * scale, + y: height / 2 + translation.y * scale + }; + + if (Math.abs(rotation) > 0.05) { + corner1 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner1, centerPoint, -rotation); + corner2 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner2, centerPoint, -rotation); + } + + var w = Math.abs(corner1.x - corner2.x); + var h = Math.abs(corner1.y - corner2.y); + corner1 = { + x: Math.min(corner1.x, corner2.x), + y: Math.min(corner1.y, corner2.y) + }; + corner2 = { + x: corner1.x + w, + y: corner1.y + h + }; + var corner3 = { + x: corner1.x + w, + y: corner1.y + }; + var corner4 = { + x: corner1.x, + y: corner1.y + h + }; + + if (Math.abs(rotation) > 0.05) { + corner1 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner1, centerPoint, rotation); + corner2 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner2, centerPoint, rotation); + corner3 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner3, centerPoint, rotation); + corner4 = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_2__["rotatePoint"])(corner4, centerPoint, rotation); + } + + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + context.moveTo(corner1.x, corner1.y); + context.lineTo(corner3.x, corner3.y); + context.moveTo(corner3.x, corner3.y); + context.lineTo(corner2.x, corner2.y); + context.moveTo(corner2.x, corner2.y); + context.lineTo(corner4.x, corner4.y); + context.moveTo(corner4.x, corner4.y); + context.lineTo(corner1.x, corner1.y); + }); +}); + +/***/ }), + +/***/ "./drawing/drawTextBox.js": +/*!********************************!*\ + !*** ./drawing/drawTextBox.js ***! + \********************************/ +/*! exports provided: textBoxWidth, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "textBoxWidth", function() { return textBoxWidth; }); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony import */ var _draw_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./draw.js */ "./drawing/draw.js"); +/* harmony import */ var _fillTextLines_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./fillTextLines.js */ "./drawing/fillTextLines.js"); +/* harmony import */ var _fillBox_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./fillBox.js */ "./drawing/fillBox.js"); + + + + +/** + * Compute the width of the box required to display the given `text` with a given `padding`. + * @public + * @function textBoxWidth + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {String} text - The text to find the width of. + * @param {Number} padding - The padding to apply on either end of the text. + * @returns {Number} computed text box width + */ + +function textBoxWidth(context, text, padding) { + var font = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getFont(); + var origFont = context.font; + + if (font && font !== origFont) { + context.font = font; + } + + var width = context.measureText(text).width; + + if (font && font !== origFont) { + context.font = origFont; + } + + return width + 2 * padding; +} +/** + * Draws a textBox. + * @public + * @function drawTextBox + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context The canvas context. + * @param {string} textLines The text to display. + * @param {number} x The x position of the textBox. + * @param {number} y The y position of the textBox. + * @param {string} color The color of the textBox. + * @param {Object} options Options for the textBox. + * @returns {Object} {top, left, width, height} - Bounding box; can be used for pointNearTool + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, textLines, x, y, color, options) { + if (Object.prototype.toString.call(textLines) !== '[object Array]') { + textLines = [textLines]; + } + + var padding = 5; + var fontSize = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getFontSize(); + var backgroundColor = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getBackgroundColor(); // Find the longest text width in the array of text data + + var maxWidth = 0; + textLines.forEach(function (text) { + // Get the text width in the current font + var width = textBoxWidth(context, text, padding); // Find the maximum with for all the text rows; + + maxWidth = Math.max(maxWidth, width); + }); // Calculate the bounding box for this text box + + var boundingBox = { + width: maxWidth, + height: padding + textLines.length * (fontSize + padding) + }; + Object(_draw_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, function (context) { + context.strokeStyle = color; // Draw the background box with padding + + if (options && options.centering && options.centering.x === true) { + x -= boundingBox.width / 2; + } + + if (options && options.centering && options.centering.y === true) { + y -= boundingBox.height / 2; + } + + boundingBox.left = x; + boundingBox.top = y; + var fillStyle = options && options.debug === true ? '#FF0000' : backgroundColor; + Object(_fillBox_js__WEBPACK_IMPORTED_MODULE_3__["default"])(context, boundingBox, fillStyle); // Draw each of the text lines on top of the background box + + Object(_fillTextLines_js__WEBPACK_IMPORTED_MODULE_2__["default"])(context, boundingBox, textLines, color, padding); + }); // Return the bounding box so it can be used for pointNearHandle + + return boundingBox; +}); + +/***/ }), + +/***/ "./drawing/fillBox.js": +/*!****************************!*\ + !*** ./drawing/fillBox.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Draw a filled rectangle defined by `boundingBox` using the style defined by `fillStyle`. + * @public + * @method fillBox + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {Object} boundingBox - `{ left, top, width, height }` in canvas coordinates. + * @param {FillStyle} fillStyle - The fillStyle to apply to the region. + * @returns {undefined} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (context, boundingBox, fillStyle) { + context.fillStyle = fillStyle; + context.fillRect(boundingBox.left, boundingBox.top, boundingBox.width, boundingBox.height); +}); + +/***/ }), + +/***/ "./drawing/fillOutsideRect.js": +/*!************************************!*\ + !*** ./drawing/fillOutsideRect.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); + + +/** + * Fill the region outside a rectangle defined by `corner1` and `corner2`. + * @public + * @method fillOutsideRect + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {HTMLElement} element - The DOM Element to draw on + * @param {Object} corner1 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} corner2 - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} options - See {@link path} + * @param {String} [coordSystem='pixel'] - Can be "pixel" (default) or "canvas". The coordinate + * system of the points passed in to the function. If "pixel" then cornerstone.pixelToCanvas + * is used to transform the points from pixel to canvas coordinates. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, element, corner1, corner2, options) { + var coordSystem = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'pixel'; + + if (coordSystem === 'pixel') { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + corner1 = cornerstone.pixelToCanvas(element, corner1); + corner2 = cornerstone.pixelToCanvas(element, corner2); + } + + var left = Math.min(corner1.x, corner2.x); + var top = Math.min(corner1.y, corner2.y); + var width = Math.abs(corner1.x - corner2.x); + var height = Math.abs(corner1.y - corner2.y); + Object(_path_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, options, function (context) { + context.rect(0, 0, context.canvas.clientWidth, context.canvas.clientHeight); + context.rect(left + width, top, -width, height); + }); +}); + +/***/ }), + +/***/ "./drawing/fillTextLines.js": +/*!**********************************!*\ + !*** ./drawing/fillTextLines.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); + +/** + * Draw multiple lines of text within a bounding box. + * @public + * @method fillTextLines + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Target context + * @param {Object} boundingBox - `{ left, top }` in canvas coordinates. Only the top-left corner is specified, as the text will take up as much space as it needs. + * @param {String[]} textLines - The text to be displayed. + * @param {FillStyle} fillStyle - The fillStyle to apply to the text. + * @param {Number} padding - The amount of padding above/below each line in canvas units. Note this gives an inter-line spacing of `2*padding`. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, boundingBox, textLines, fillStyle, padding) { + var fontSize = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getFontSize(); + context.font = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getFont(); + context.textBaseline = 'top'; + context.fillStyle = fillStyle; + textLines.forEach(function (text, index) { + context.fillText(text, boundingBox.left + padding, boundingBox.top + padding + index * (fontSize + padding)); + }); +}); + +/***/ }), + +/***/ "./drawing/getNewContext.js": +/*!**********************************!*\ + !*** ./drawing/getNewContext.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Create a new {@link CanvasRenderingContext2D|context} object for the given {@link HTMLCanvasElement|canvas} + * and set the transform to the {@link https://www.w3.org/TR/2dcontext/#transformations|identity transform}. + * + * @public + * @function getNewContext + * @memberof Drawing + * + * @param {HTMLCanvasElement} canvas - Canvas you would like the context for + * @returns {CanvasRenderingContext2D} - The provided canvas's 2d context + */ +/* harmony default export */ __webpack_exports__["default"] = (function (canvas) { + var context = canvas.getContext('2d'); + context.setTransform(1, 0, 0, 1, 0, 0); + return context; +}); + +/***/ }), + +/***/ "./drawing/index.js": +/*!**************************!*\ + !*** ./drawing/index.js ***! + \**************************/ +/*! exports provided: draw, drawArrow, drawCircle, drawEllipse, drawHandles, drawJoinedLines, drawLine, drawLines, drawLink, drawLinkedTextBox, drawRect, drawTextBox, fillBox, fillOutsideRect, fillTextLines, getNewContext, path, setShadow, transformCanvasContext, resetCanvasContextTransform */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _draw_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./draw.js */ "./drawing/draw.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "draw", function() { return _draw_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _drawArrow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./drawArrow.js */ "./drawing/drawArrow.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawArrow", function() { return _drawArrow_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _drawCircle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./drawCircle.js */ "./drawing/drawCircle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawCircle", function() { return _drawCircle_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _drawEllipse_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./drawEllipse.js */ "./drawing/drawEllipse.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawEllipse", function() { return _drawEllipse_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _drawHandles_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawHandles", function() { return _drawHandles_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _drawJoinedLines_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./drawJoinedLines.js */ "./drawing/drawJoinedLines.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawJoinedLines", function() { return _drawJoinedLines_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + +/* harmony import */ var _drawLine_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./drawLine.js */ "./drawing/drawLine.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawLine", function() { return _drawLine_js__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony import */ var _drawLines_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./drawLines.js */ "./drawing/drawLines.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawLines", function() { return _drawLines_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony import */ var _drawLink_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./drawLink.js */ "./drawing/drawLink.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawLink", function() { return _drawLink_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawLinkedTextBox", function() { return _drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony import */ var _drawRect_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./drawRect.js */ "./drawing/drawRect.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawRect", function() { return _drawRect_js__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + +/* harmony import */ var _drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawTextBox", function() { return _drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__["default"]; }); + +/* harmony import */ var _fillBox_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./fillBox.js */ "./drawing/fillBox.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillBox", function() { return _fillBox_js__WEBPACK_IMPORTED_MODULE_12__["default"]; }); + +/* harmony import */ var _fillOutsideRect_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./fillOutsideRect.js */ "./drawing/fillOutsideRect.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideRect", function() { return _fillOutsideRect_js__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + +/* harmony import */ var _fillTextLines_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./fillTextLines.js */ "./drawing/fillTextLines.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillTextLines", function() { return _fillTextLines_js__WEBPACK_IMPORTED_MODULE_14__["default"]; }); + +/* harmony import */ var _getNewContext_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./getNewContext.js */ "./drawing/getNewContext.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getNewContext", function() { return _getNewContext_js__WEBPACK_IMPORTED_MODULE_15__["default"]; }); + +/* harmony import */ var _path_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./path.js */ "./drawing/path.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "path", function() { return _path_js__WEBPACK_IMPORTED_MODULE_16__["default"]; }); + +/* harmony import */ var _setShadow_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./setShadow.js */ "./drawing/setShadow.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setShadow", function() { return _setShadow_js__WEBPACK_IMPORTED_MODULE_17__["default"]; }); + +/* harmony import */ var _transformCanvasContext_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./transformCanvasContext.js */ "./drawing/transformCanvasContext.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "transformCanvasContext", function() { return _transformCanvasContext_js__WEBPACK_IMPORTED_MODULE_18__["default"]; }); + +/* harmony import */ var _resetCanvasContextTransform_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./resetCanvasContextTransform.js */ "./drawing/resetCanvasContextTransform.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "resetCanvasContextTransform", function() { return _resetCanvasContextTransform_js__WEBPACK_IMPORTED_MODULE_19__["default"]; }); + +/** + * A {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/fillStyle|color, gradient or pattern} to use inside shapes. + * @typedef {(String|CanvasGradient|CanvasPattern)} FillStyle + */ + +/** + * A {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/strokeStyle|color, gradient or pattern} to use for the lines around shapes. + * @typedef {(String|CanvasGradient|CanvasPattern)} StrokeStyle + */ + +/** + * @callback ContextFn + * @param {CanvasRenderingContext2D} context + */ + + + + + + + + + + + + + + + + + + + + // Named exports + + + +/***/ }), + +/***/ "./drawing/path.js": +/*!*************************!*\ + !*** ./drawing/path.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); + +/** + * This function manages the beginPath/stroke pattern for working with + * {@link https://www.w3.org/TR/2dcontext/#drawing-paths-to-the-canvas|path objects}. + * + * @public + * @function path + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Context to add path to + * @param {Object} [options={}] - Drawing Options + * @param {StrokeStyle} [options.color] - The stroke style of the path. + * @param {number} [options.lineWidth] - The width of lines in the path. If null, no line width is set. + * If undefined then toolStyle.getToolWidth() is set. + * @param {FillStyle} [options.fillStyle] - The style to fill the path with. If undefined then no filling is done. + * @param {Number[]} [options.lineDash] - The {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/setLineDash|dash pattern} + * to use on the lines. + * @param {boolean} [options.shouldDrawLines = true] Whether context.stroke should be evoked. + * @param {ContextFn} fn - A drawing function to execute with the provided stroke pattern. + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var fn = arguments.length > 2 ? arguments[2] : undefined; + var color = options.color, + lineWidth = options.lineWidth, + fillStyle = options.fillStyle, + lineDash = options.lineDash, + _options$shouldDrawLi = options.shouldDrawLines, + shouldDrawLines = _options$shouldDrawLi === void 0 ? true : _options$shouldDrawLi; + context.beginPath(); + context.strokeStyle = color || context.strokeStyle; + context.lineWidth = lineWidth || lineWidth === undefined && _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"].getToolWidth() || context.lineWidth; + + if (lineDash) { + context.setLineDash(lineDash); + } + + fn(context); + + if (fillStyle) { + context.fillStyle = fillStyle; + context.fill(); + } + + if (shouldDrawLines) { + context.stroke(); + } + + if (lineDash) { + context.setLineDash([]); + } +}); + +/***/ }), + +/***/ "./drawing/resetCanvasContextTransform.js": +/*!************************************************!*\ + !*** ./drawing/resetCanvasContextTransform.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Resets the canvas {@link CanvasRenderingContext2D|context} transform to the + * {@link https://www.w3.org/TR/2dcontext/#transformations|identity transform}. + * + * @public + * @function resetCanvasContextTransform + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - context you wish to transform + * @returns {void} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (context) { + context.setTransform(1, 0, 0, 1, 0, 0); +}); + +/***/ }), + +/***/ "./drawing/setShadow.js": +/*!******************************!*\ + !*** ./drawing/setShadow.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _util_getDefault_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../util/getDefault.js */ "./util/getDefault.js"); + +/** + * Set the {@link https://www.w3.org/TR/2dcontext/#shadows|shadow} properties of the context. + * Each property is set on the context object if defined, otherwise a default value is set. + * + * @public + * @method setShadow + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Context to apply shadow options on + * @param {Object} [options={}] - Options object + * @param {Boolean} [options.shadow=undefined] - Whether to set any shadow options + * @param {String} [options.shadowColor=#000000] - Default value: #000000 + * @param {Number} [options.shadowBlur=0] - Default Value: 0 + * @param {Number} [options.shadowOffsetX=1] - Default value: 1 + * @param {Number} [options.shadowOffsetY=1] - Default value: 1 + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + if (options.shadow) { + context.shadowColor = Object(_util_getDefault_js__WEBPACK_IMPORTED_MODULE_0__["default"])(options.shadowColor, '#000000'); + context.shadowBlur = Object(_util_getDefault_js__WEBPACK_IMPORTED_MODULE_0__["default"])(options.shadowBlur, 0); + context.shadowOffsetX = Object(_util_getDefault_js__WEBPACK_IMPORTED_MODULE_0__["default"])(options.shadowOffsetX, 1); + context.shadowOffsetY = Object(_util_getDefault_js__WEBPACK_IMPORTED_MODULE_0__["default"])(options.shadowOffsetY, 1); + } +}); + +/***/ }), + +/***/ "./drawing/transformCanvasContext.js": +/*!*******************************************!*\ + !*** ./drawing/transformCanvasContext.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Transform the canvas {@link CanvasRenderingContext2D|context} such that it + * coincides with the orientation of the viewport. + * + * @public + * @function transformCanvasContext + * @memberof Drawing + * + * @param {CanvasRenderingContext2D} context - Context you wish to transform. + * @param {HTMLCanvasElement} canvas - Canvas the context relates to. + * @param {*} viewport - The viewport you wish to map on to. + * @returns {void} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (context, canvas, viewport) { + if (!(viewport.hflip || viewport.vflip || viewport.rotation)) { + return; + } + + var translation = { + x: canvas.width / 2 + viewport.translation.x * viewport.scale, + y: canvas.height / 2 + viewport.translation.y * viewport.scale + }; + context.translate(translation.x, translation.y); + + if (viewport.rotation) { + context.rotate(viewport.rotation * Math.PI / 180); + } + + if (viewport.vflip) { + context.scale(1, -1); + } + + if (viewport.hflip) { + context.scale(-1, 1); + } + + context.translate(-translation.x, -translation.y); +}); + +/***/ }), + +/***/ "./eventDispatchers/imageRenderedEventDispatcher.js": +/*!**********************************************************!*\ + !*** ./eventDispatchers/imageRenderedEventDispatcher.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _stateManagement_toolState__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState */ "./stateManagement/toolState.js"); +/* harmony import */ var _eventListeners_onImageRenderedBrushEventHandler_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../eventListeners/onImageRenderedBrushEventHandler.js */ "./eventListeners/onImageRenderedBrushEventHandler.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); + + + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'); + +var onImageRendered = function onImageRendered(evt) { + var eventData = evt.detail; + var element = eventData.element; // Render Annotation Tools + + var toolsToRender = _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].tools.filter(function (tool) { + return tool.element === element && (tool.mode === 'active' || tool.mode === 'passive' || tool.mode === 'enabled'); + }); // Must be using stacks in order to use segmentation tools. + + var stackToolState = Object(_stateManagement_toolState__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var segmentationConfiguration = segmentationModule.configuration; + + if (stackToolState && (segmentationConfiguration.renderFill || segmentationConfiguration.renderOutline)) { + Object(_eventListeners_onImageRenderedBrushEventHandler_js__WEBPACK_IMPORTED_MODULE_2__["default"])(evt); + } + + toolsToRender.forEach(function (tool) { + if (tool.renderToolData) { + tool.renderToolData(evt); + } + }); +}; + +var enable = function enable(element) { + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.EVENTS.IMAGE_RENDERED, onImageRendered); +}; + +var disable = function disable(element) { + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.EVENTS.IMAGE_RENDERED, onImageRendered); +}; + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventDispatchers/index.js": +/*!***********************************!*\ + !*** ./eventDispatchers/index.js ***! + \***********************************/ +/*! exports provided: imageRenderedEventDispatcher, mouseToolEventDispatcher, newImageEventDispatcher, touchToolEventDispatcher */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _imageRenderedEventDispatcher_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./imageRenderedEventDispatcher.js */ "./eventDispatchers/imageRenderedEventDispatcher.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "imageRenderedEventDispatcher", function() { return _imageRenderedEventDispatcher_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _mouseToolEventDispatcher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mouseToolEventDispatcher.js */ "./eventDispatchers/mouseToolEventDispatcher.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseToolEventDispatcher", function() { return _mouseToolEventDispatcher_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _newImageEventDispatcher_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./newImageEventDispatcher.js */ "./eventDispatchers/newImageEventDispatcher.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "newImageEventDispatcher", function() { return _newImageEventDispatcher_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _touchToolEventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./touchToolEventDispatcher.js */ "./eventDispatchers/touchToolEventDispatcher.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "touchToolEventDispatcher", function() { return _touchToolEventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + + + + + + + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/addNewMeasurement.js": +/*!******************************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/addNewMeasurement.js ***! + \******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../util/triggerEvent.js */ "./util/triggerEvent.js"); + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('eventDispatchers:mouseEventHandlers'); +/* harmony default export */ __webpack_exports__["default"] = (function (evt, tool) { + logger.log('addNewMeasurement'); + evt.preventDefault(); + evt.stopPropagation(); + var eventData = evt.detail; + var element = eventData.element; + var measurementData = tool.createNewMeasurement(eventData); + + if (!measurementData) { + return; + } // Associate this data with this imageId so we can render it and manipulate it + + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["addToolState"])(element, tool.name, measurementData); + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + var handleMover = Object.keys(measurementData.handles).length === 1 ? _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["moveHandle"] : _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["moveNewHandle"]; + handleMover(eventData, tool.name, measurementData, measurementData.handles.end, tool.options, 'mouse', function () { + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_COMPLETED; + var eventData = { + toolName: tool.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, eventType, eventData); + }); +}); + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/index.js": +/*!******************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/index.js ***! + \******************************************************/ +/*! exports provided: mouseClick, mouseDown, mouseDownActivate, mouseDoubleClick, mouseDrag, mouseMove, mouseUp, mouseWheel */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mouseClick", function() { return mouseClick; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mouseDoubleClick", function() { return mouseDoubleClick; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mouseUp", function() { return mouseUp; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mouseWheel", function() { return mouseWheel; }); +/* harmony import */ var _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../shared/customCallbackHandler.js */ "./eventDispatchers/shared/customCallbackHandler.js"); +/* harmony import */ var _mouseDown_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mouseDown.js */ "./eventDispatchers/mouseEventHandlers/mouseDown.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseDown", function() { return _mouseDown_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _mouseDownActivate_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mouseDownActivate.js */ "./eventDispatchers/mouseEventHandlers/mouseDownActivate.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseDownActivate", function() { return _mouseDownActivate_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _mouseDrag_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mouseDrag.js */ "./eventDispatchers/mouseEventHandlers/mouseDrag.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseDrag", function() { return _mouseDrag_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _mouseMove_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./mouseMove.js */ "./eventDispatchers/mouseEventHandlers/mouseMove.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseMove", function() { return _mouseMove_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + + + + + + +var mouseClick = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Mouse', 'mouseClickCallback'); +var mouseDoubleClick = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Mouse', 'doubleClickCallback'); +var mouseUp = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Mouse', 'mouseUpCallback'); +var mouseWheel = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'MouseWheel', 'mouseWheelCallback'); + + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/mouseDown.js": +/*!**********************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/mouseDown.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _store_getToolsWithMoveableHandles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/getToolsWithMoveableHandles.js */ "./store/getToolsWithMoveableHandles.js"); +/* harmony import */ var _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/findAndMoveHelpers.js */ "./util/findAndMoveHelpers.js"); +/* harmony import */ var _store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../store/getInteractiveToolsForElement.js */ "./store/getInteractiveToolsForElement.js"); +/* harmony import */ var _store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../store/getToolsWithDataForElement.js */ "./store/getToolsWithDataForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../store/filterToolsUsableWithMultiPartTools.js */ "./store/filterToolsUsableWithMultiPartTools.js"); +// State + + // Util + + + + + + +/** + * MouseDown is called before MouseDownActivate. If MouseDown + * finds an existing tool to interact with, it can prevent the + * event from bubbling to MouseDownActivate. + * + * @private + * @param {mousedown} evt + * @listens {CornerstoneTools.event:cornerstonetoolsmousedown} + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return; + } + + var eventData = evt.detail; + var element = evt.detail.element; + var coords = evt.detail.currentPoints.canvas; // High level filtering + + var activeAndPassiveTools = Object(_store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_0__["getters"].mouseTools()); // ACTIVE TOOL W/ PRE CALLBACK? + // Note: In theory, this should only ever be a single tool. + + var activeTools = activeAndPassiveTools.filter(function (tool) { + return tool.mode === 'active' && Array.isArray(tool.options.mouseButtonMask) && tool.options.mouseButtonMask.includes(eventData.buttons) && tool.options.isMouseActive; + }); + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + activeTools = Object(_store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_6__["default"])(activeTools); + } // If any tools are active, check if they have a special reason for dealing with the event. + + + if (activeTools.length > 0) { + // TODO: If length > 1, you could assess fitness and select the ideal tool + // TODO: But because we're locking this to 'active' tools, that should rarely be an issue + // Super-Meta-TODO: ^ I think we should just take the approach of one active tool per mouse button? + var firstActiveToolWithCallback = activeTools.find(function (tool) { + return typeof tool.preMouseDownCallback === 'function'; + }); + + if (firstActiveToolWithCallback) { + var consumedEvent = firstActiveToolWithCallback.preMouseDownCallback(evt); + + if (consumedEvent) { + return; + } + } + } + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + // Don't fire events to Annotation Tools during a multi part loop. + return; + } // Annotation tool specific + + + var annotationTools = Object(_store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, activeAndPassiveTools); // NEAR HANDLES? + + var annotationToolsWithMoveableHandles = Object(_store_getToolsWithMoveableHandles_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, annotationTools, coords, 'mouse'); + + if (annotationToolsWithMoveableHandles.length > 0) { + var firstToolWithMoveableHandles = annotationToolsWithMoveableHandles[0]; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, firstToolWithMoveableHandles.name); + + var _findHandleDataNearIm = Object(_util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_3__["findHandleDataNearImagePoint"])(element, toolState, firstToolWithMoveableHandles.name, coords), + handle = _findHandleDataNearIm.handle, + data = _findHandleDataNearIm.data; + + firstToolWithMoveableHandles.handleSelectedCallback(evt, data, handle, 'mouse'); + return; + } // NEAR TOOL? + + + var annotationToolsWithPointNearClick = activeAndPassiveTools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, tool.name); + var isNearPoint = toolState && toolState.data && tool.pointNearTool && toolState.data.some(function (data) { + return tool.pointNearTool(element, data, coords, 'mouse'); + }); + return isNearPoint; + }); + + if (annotationToolsWithPointNearClick.length > 0) { + var firstToolNearPoint = annotationToolsWithPointNearClick[0]; + + var _toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, firstToolNearPoint.name); + + var firstAnnotationNearPoint = _toolState.data.find(function (data) { + return firstToolNearPoint.pointNearTool(element, data, coords); + }); + + firstToolNearPoint.toolSelectedCallback(evt, firstAnnotationNearPoint, 'mouse'); + return; + } // ACTIVE TOOL W/ POST CALLBACK? + // If any tools are active, check if they have a special reason for dealing with the event. + + + if (activeTools.length > 0) { + // TODO: If length > 1, you could assess fitness and select the ideal tool + // TODO: But because we're locking this to 'active' tools, that should rarely be an issue + // Super-Meta-TODO: ^ I think we should just take the approach of one active tool per mouse button? + var _firstActiveToolWithCallback = activeTools.find(function (tool) { + return typeof tool.postMouseDownCallback === 'function'; + }); + + if (_firstActiveToolWithCallback) { + var _consumedEvent = _firstActiveToolWithCallback.postMouseDownCallback(evt); + + if (_consumedEvent) { + return; + } + } + } +}); + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/mouseDownActivate.js": +/*!******************************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/mouseDownActivate.js ***! + \******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./addNewMeasurement.js */ "./eventDispatchers/mouseEventHandlers/addNewMeasurement.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../tools/base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/getActiveTool */ "./util/getActiveTool.js"); + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked) { + return; + } + + var _evt$detail = evt.detail, + element = _evt$detail.element, + buttons = _evt$detail.buttons; + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_3__["default"])(element, buttons, 'mouse'); + + if (!activeTool) { + return; + } + + if (typeof activeTool.preMouseDownActivateCallback === 'function') { + var consumedEvent = activeTool.preMouseDownActivateCallback(evt); + + if (consumedEvent) { + return; + } + } + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isMultiPartToolActive) { + return; + } // Note: custom `addNewMeasurement` will need to prevent event bubbling + + + if (activeTool.addNewMeasurement) { + activeTool.addNewMeasurement(evt, 'mouse'); + } else if (activeTool instanceof _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_2__["default"]) { + Object(_addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(evt, activeTool); + } +}); + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/mouseDrag.js": +/*!**********************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/mouseDrag.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../store/getActiveToolsForElement.js */ "./store/getActiveToolsForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../store/filterToolsUsableWithMultiPartTools.js */ "./store/filterToolsUsableWithMultiPartTools.js"); + + + // Tools like wwwc. Non-annotation tools w/ specific +// Down + mouse behavior +// TODO: I don't like filtering in drag because it's such +// A high frequency event. Anything we can do to reduce +// Repeat math here would be a big help + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return; + } + + var tools; + var eventData = evt.detail; + var element = eventData.element; // Filter out disabled, enabled, and passive + + tools = Object(_store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_0__["getters"].mouseTools()); + tools = tools.filter(function (tool) { + return Array.isArray(tool.options.mouseButtonMask) && tool.options.mouseButtonMask.includes(eventData.buttons) && tool.options.isMouseActive; + }); + tools = tools.filter(function (tool) { + return typeof tool.mouseDragCallback === 'function'; + }); + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + tools = Object(_store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__["default"])(tools); + } + + if (tools.length === 0) { + return; + } + + var activeTool = tools[0]; + activeTool.mouseDragCallback(evt); +}); + +/***/ }), + +/***/ "./eventDispatchers/mouseEventHandlers/mouseMove.js": +/*!**********************************************************!*\ + !*** ./eventDispatchers/mouseEventHandlers/mouseMove.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../store/getInteractiveToolsForElement.js */ "./store/getInteractiveToolsForElement.js"); +/* harmony import */ var _store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../store/getToolsWithDataForElement.js */ "./store/getToolsWithDataForElement.js"); + // State + + + + +/** + * This is mostly used to update the [un]hover state + * of a tool. + * + * @private + * @param {*} evt + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked || _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isMultiPartToolActive) { + return; + } + + var tools; + var _evt$detail = evt.detail, + element = _evt$detail.element, + currentPoints = _evt$detail.currentPoints; // Set the mouse position incase any tool needs it. + + _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].mousePositionImage = currentPoints.image; // TODO: instead of filtering these for every interaction, we can change our + // TODO: State's structure to always know these values. + // Filter out disabled and enabled + + tools = Object(_store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_1__["getters"].mouseTools()); + var activeTools = tools.filter(function (tool) { + return tool.mode === 'active' && tool.options.isMouseActive; + }); + var imageNeedsUpdate = false; // If any tools are active, check if they have a canvas cursor, and if so update image. + + if (activeTools.length > 0) { + imageNeedsUpdate = activeTools.some(function (tool) { + return tool.updateOnMouseMove; + }); + } + + tools = Object(_store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, tools); // Iterate over each tool, and each tool's data + // Activate any handles we're hovering over, or whole tools if we're near the tool + // If we've changed the state of anything, redrawn the image + + for (var t = 0; t < tools.length; t++) { + var tool = tools[t]; + + if (typeof tool.mouseMoveCallback === 'function') { + imageNeedsUpdate = tool.mouseMoveCallback(evt) || imageNeedsUpdate; + } + } // Tool data activation status changed, redraw the image + + + if (imageNeedsUpdate === true) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + } +}); + +/***/ }), + +/***/ "./eventDispatchers/mouseToolEventDispatcher.js": +/*!******************************************************!*\ + !*** ./eventDispatchers/mouseToolEventDispatcher.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../events.js */ "./events.js"); +/* harmony import */ var _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mouseEventHandlers/index.js */ "./eventDispatchers/mouseEventHandlers/index.js"); + + +/** + * These listeners are emitted in order, and can be cancelled/prevented from bubbling + * by any previous event. + * - mouseMove: used to update the [un]hover state of a tool (highlighting) + * - mouseDown: check to see if we are close to an existing annotation, grab it + * - mouseDownActivate: createNewMeasurement (usually) + * - mouseDrag: update measurement or apply strategy (wwwc) + * - mouseDoubleClick: usually a one-time apply specialty action + * - onImageRendered: redraw visible tool data + * @private + * @param {*} element + * @returns {undefined} + */ + +var enable = function enable(element) { + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseClick"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDown"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN_ACTIVATE, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDownActivate"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOUBLE_CLICK, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDoubleClick"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDrag"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_MOVE, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseMove"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseUp"]); + //element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_WHEEL, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseWheel"]); +}; + +var disable = function disable(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseClick"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDown"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN_ACTIVATE, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDownActivate"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOUBLE_CLICK, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDoubleClick"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseDrag"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_MOVE, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseMove"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseUp"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_WHEEL, _mouseEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseWheel"]); +}; + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventDispatchers/newImageEventDispatcher.js": +/*!*****************************************************!*\ + !*** ./eventDispatchers/newImageEventDispatcher.js ***! + \*****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); + + + +var onNewImage = function onNewImage(evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return false; + } + + var element = evt.detail.element; + var tools = _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].tools.filter(function (tool) { + return tool.element === element && (tool.mode === 'active' || tool.mode === 'passive' || tool.mode === 'enabled'); + }); + + if (tools.length === 0) { + return false; + } + + tools.forEach(function (tool) { + if (tool.newImageCallback) { + tool.newImageCallback(evt); + } + }); +}; + +var enable = function enable(element) { + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.EVENTS.NEW_IMAGE, onNewImage); +}; + +var disable = function disable(element) { + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.EVENTS.NEW_IMAGE, onNewImage); +}; + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventDispatchers/shared/customCallbackHandler.js": +/*!**********************************************************!*\ + !*** ./eventDispatchers/shared/customCallbackHandler.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../store/getActiveToolsForElement.js */ "./store/getActiveToolsForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../store/filterToolsUsableWithMultiPartTools.js */ "./store/filterToolsUsableWithMultiPartTools.js"); + + + +/* harmony default export */ __webpack_exports__["default"] = (function (handlerType, customFunction, evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return false; + } // TODO: We sometimes see a null detail for TOUCH_PRESS + + + var element = evt.detail.element; + var tools = _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].tools.filter(function (tool) { + return tool.supportedInteractionTypes.includes(handlerType); + }); // Tool is active, and specific callback is active + + tools = Object(_store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, tools, handlerType); // Tool has expected callback custom function + + tools = tools.filter(function (tool) { + return typeof tool[customFunction] === 'function'; + }); + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + tools = Object(_store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__["default"])(tools); + } + + if (tools.length === 0) { + return false; + } + + tools[0][customFunction](evt); +}); + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/addNewMeasurement.js": +/*!******************************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/addNewMeasurement.js ***! + \******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../manipulators/anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_7__["getLogger"])('eventDispatchers:touchEventHandlers'); +/* harmony default export */ __webpack_exports__["default"] = (function (evt, tool) { + logger.log('addNewMeasurement'); + evt.preventDefault(); + evt.stopPropagation(); + var touchEventData = evt.detail; + var element = touchEventData.element; + var measurementData = tool.createNewMeasurement(touchEventData); + + if (!measurementData) { + return; + } + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["addToolState"])(element, tool.name, measurementData); // Todo: Looks like we're handling the "up" of the tap? + + if (Object.keys(measurementData.handles).length === 1 && touchEventData.type === _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP) { + // Todo: bold assumptions about measurement data for all tools? + measurementData.active = false; + measurementData.handles.end.active = false; + measurementData.handles.end.highlight = false; + measurementData.invalidated = true; + var deleteIfHandleOutsideImage = _store_index_js__WEBPACK_IMPORTED_MODULE_2__["state"].deleteIfHandleOutsideImage || tool.options.deleteIfHandleOutsideImage; + + if (deleteIfHandleOutsideImage && Object(_manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_3__["default"])(touchEventData, measurementData.handles)) { + // Delete the measurement + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["removeToolState"])(element, tool.name, measurementData); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + return; + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_4__["moveNewHandle"])(touchEventData, tool.name, measurementData, measurementData.handles.end, tool.options, 'touch', function () { + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_COMPLETED; + var eventData = { + toolName: tool.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element, eventType, eventData); + }); +}); + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/index.js": +/*!******************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/index.js ***! + \******************************************************/ +/*! exports provided: doubleTap, multiTouchDrag, tap, touchDrag, touchEnd, touchPinch, touchPress, touchRotate, touchStart, touchStartActive */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "doubleTap", function() { return doubleTap; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "touchDrag", function() { return touchDrag; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "touchEnd", function() { return touchEnd; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "touchPinch", function() { return touchPinch; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "touchPress", function() { return touchPress; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "touchRotate", function() { return touchRotate; }); +/* harmony import */ var _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../shared/customCallbackHandler.js */ "./eventDispatchers/shared/customCallbackHandler.js"); +/* harmony import */ var _multiTouchDrag_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./multiTouchDrag.js */ "./eventDispatchers/touchEventHandlers/multiTouchDrag.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "multiTouchDrag", function() { return _multiTouchDrag_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _tap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tap.js */ "./eventDispatchers/touchEventHandlers/tap.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "tap", function() { return _tap_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _touchStart_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./touchStart.js */ "./eventDispatchers/touchEventHandlers/touchStart.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "touchStart", function() { return _touchStart_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _touchStartActive_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./touchStartActive.js */ "./eventDispatchers/touchEventHandlers/touchStartActive.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "touchStartActive", function() { return _touchStartActive_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + + + + + + +var doubleTap = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'DoubleTap', 'doubleTapCallback'); // TODO: some touchDrag tools don't want to fire on touchStart +// TODO: Drag tools have an option `fireOnTouchStart` used to filter +// TODO: Them out of TOUCH_START handler + +var touchDrag = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Touch', 'touchDragCallback'); +var touchEnd = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Touch', 'touchEndCallback'); +var touchPinch = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'TouchPinch', 'touchPinchCallback'); +var touchPress = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'Touch', 'touchPressCallback'); +var touchRotate = _shared_customCallbackHandler_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(null, 'TouchRotate', 'touchRotateCallback'); + + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/multiTouchDrag.js": +/*!***************************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/multiTouchDrag.js ***! + \***************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../store/getActiveToolsForElement.js */ "./store/getActiveToolsForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../store/filterToolsUsableWithMultiPartTools.js */ "./store/filterToolsUsableWithMultiPartTools.js"); + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return false; + } // TODO: We sometimes see a null detail for TOUCH_PRESS + + + var _evt$detail = evt.detail, + element = _evt$detail.element, + numPointers = _evt$detail.numPointers; + var tools = _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].tools.filter(function (tool) { + return tool.supportedInteractionTypes.includes('MultiTouch'); + }); // Tool is active, and specific callback is active + + tools = Object(_store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, tools, 'MultiTouch'); // Tool has expected callback custom function + + tools = tools.filter(function (tool) { + return typeof tool.multiTouchDragCallback === 'function' && numPointers === tool.configuration.touchPointers; + }); + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + tools = Object(_store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_2__["default"])(tools); + } + + if (tools.length === 0) { + return false; + } + + var activeTool = tools[0]; + activeTool.multiTouchDragCallback(evt); +}); + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/shared/deactivateAllToolInstances.js": +/*!**********************************************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/shared/deactivateAllToolInstances.js ***! + \**********************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (toolData) { + if (!toolData) { + return; + } + + for (var i = 0; i < toolData.data.length; i++) { + var data = toolData.data[i]; + data.active = false; + + if (!data.handles) { + continue; + } + + deactivateAllHandles(data.handles); + } +}); + +function deactivateAllHandles(handles) { + Object.keys(handles).forEach(function (name) { + var handle = handles[name]; + handle.active = false; + }); +} + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/tap.js": +/*!****************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/tap.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _touchStartActive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./touchStartActive.js */ "./eventDispatchers/touchEventHandlers/touchStartActive.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store/getActiveToolsForElement.js */ "./store/getActiveToolsForElement.js"); +/* harmony import */ var _store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../store/getToolsWithDataForElement.js */ "./store/getToolsWithDataForElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _shared_deactivateAllToolInstances_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./shared/deactivateAllToolInstances.js */ "./eventDispatchers/touchEventHandlers/shared/deactivateAllToolInstances.js"); + + // State + + + + + // + + + // + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_2__["state"].isToolLocked || _store_index_js__WEBPACK_IMPORTED_MODULE_2__["state"].isMultiPartToolActive) { + return; + } + + var tools; + var distanceFromHandle = 28; + var element = evt.detail.element; + var coords = evt.detail.currentPoints.canvas; + tools = Object(_store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_2__["getters"].touchTools()); + tools = Object(_store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, tools); // Deactivate everything + // DeactivateAllToolInstances(toolData); + // Find all tools w/ handles that we are near + + var toolsWithMoveableHandles = tools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["getToolState"])(element, tool.name); + + for (var i = 0; i < toolState.data.length; i++) { + if (Object(_manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element, toolState.data[i].handles, coords, distanceFromHandle) !== undefined) { + return true; + } + } + + return false; + }); // TODO: More than one? Which one was moved most recently? + // We'll just grab the first one we encounter for now + + if (toolsWithMoveableHandles.length > 0) { + // Todo: ignore: touch_start, tap + var firstToolWithMoveableHandles = toolsWithMoveableHandles[0]; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["getToolState"])(element, firstToolWithMoveableHandles.name); + var moveableHandle = toolState.data.find(function (d) { + return Object(_manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element, d.handles, coords, distanceFromHandle) !== undefined; + }); + toolState.data.active = true; + moveableHandle.active = true; // Why here, but not touchStart? + + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__["moveHandle"])(evt.detail, firstToolWithMoveableHandles.name, toolState.data, moveableHandle, firstToolWithMoveableHandles.options, 'touch', function () { + return Object(_shared_deactivateAllToolInstances_js__WEBPACK_IMPORTED_MODULE_8__["default"])(toolState); + }); + evt.stopImmediatePropagation(); + evt.preventDefault(); // Why no stopPropagation? + + return; + } // Find all tools near our point + + + var toolsNearPoint = tools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["getToolState"])(element, tool.name); + var isNearPoint = toolState && toolState.data && tool.pointNearTool && toolState.data.some(function (data) { + return tool.pointNearTool(element, data, coords); + }); + return isNearPoint; + }); // TODO: More than one? Which one was moved most recently? + // We'll just grab the first one we encounter for now + + if (toolsNearPoint.length > 0) { + // Todo: Ignore: TAP, START, PRESS + var firstToolNearPoint = toolsNearPoint[0]; + + var _toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["getToolState"])(element, firstToolNearPoint.name); + + var firstAnnotationNearPoint = _toolState.data.find(function (data) { + return firstToolNearPoint.pointNearTool(element, data, coords); + }); // Todo: ignore: touch_start, tap + + + firstAnnotationNearPoint.active = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__["moveAllHandles"])(evt.detail, firstToolNearPoint.name, firstAnnotationNearPoint, null, firstToolNearPoint.options, 'touch', function () { + return Object(_shared_deactivateAllToolInstances_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_toolState); + }); + evt.stopImmediatePropagation(); + evt.preventDefault(); // TODO: Why no stop propagation? + + return; + } // If there is nothing to move, add a new instance of the tool + // Need to check here to see if activation is allowed! + // TODO: What would this be? First active tool? + // Or should _always_ pass through to our larger event handler that checks + // All tools anyway? + + + var allActiveTools = Object(_store_getActiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_2__["getters"].touchTools()); + + if (allActiveTools.length > 0 && allActiveTools[0].touchStartActiveCallback) { + allActiveTools[0].touchStartActiveCallback(evt); + } else { + Object(_touchStartActive_js__WEBPACK_IMPORTED_MODULE_1__["default"])(evt); + } + + return false; +}); + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/touchStart.js": +/*!***********************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/touchStart.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../util/findAndMoveHelpers.js */ "./util/findAndMoveHelpers.js"); +/* harmony import */ var _store_getToolsWithMoveableHandles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/getToolsWithMoveableHandles.js */ "./store/getToolsWithMoveableHandles.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../store/getInteractiveToolsForElement.js */ "./store/getInteractiveToolsForElement.js"); +/* harmony import */ var _store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../store/getToolsWithDataForElement.js */ "./store/getToolsWithDataForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../store/filterToolsUsableWithMultiPartTools.js */ "./store/filterToolsUsableWithMultiPartTools.js"); +// State + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked) { + return; + } + + var eventData = evt.detail; + var element = eventData.element; + var coords = eventData.startPoints.canvas; + var activeAndPassiveTools = Object(_store_getInteractiveToolsForElement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, _store_index_js__WEBPACK_IMPORTED_MODULE_0__["getters"].touchTools()); + var activeTools = activeAndPassiveTools.filter(function (tool) { + return tool.mode === 'active' && tool.options.isTouchActive; + }); + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + activeTools = Object(_store_filterToolsUsableWithMultiPartTools_js__WEBPACK_IMPORTED_MODULE_6__["default"])(activeTools); + } // If any tools are active, check if they have a special reason for dealing with the event. + + + if (activeTools.length > 0) { + // TODO: If length > 1, you could assess fitness and select the ideal tool + // TODO: But because we're locking this to 'active' tools, that should rarely be an issue + // Super-Meta-TODO: ^ I think we should just take the approach of one active tool per mouse button? + var firstActiveToolWithCallback = activeTools.find(function (tool) { + return typeof tool.preTouchStartCallback === 'function'; + }); + + if (firstActiveToolWithCallback) { + var consumedEvent = firstActiveToolWithCallback.preTouchStartCallback(evt); + + if (consumedEvent) { + return; + } + } + } + + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + return; + } + + var annotationTools = Object(_store_getToolsWithDataForElement_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, activeAndPassiveTools); // NEAR HANDLES? + + var annotationToolsWithMoveableHandles = Object(_store_getToolsWithMoveableHandles_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, annotationTools, coords, 'touch'); // TODO: More than one? Which one was moved most recently? + // We'll just grab the first one we encounter for now + + if (annotationToolsWithMoveableHandles.length > 0) { + // Todo: Ignore TAP, START, PRESS + var firstToolWithMoveableHandles = annotationToolsWithMoveableHandles[0]; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, firstToolWithMoveableHandles.name); + + var _findHandleDataNearIm = Object(_util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_1__["findHandleDataNearImagePoint"])(element, toolState, firstToolWithMoveableHandles.name, coords, 'touch'), + handle = _findHandleDataNearIm.handle, + data = _findHandleDataNearIm.data; + + firstToolWithMoveableHandles.handleSelectedCallback(evt, data, handle, 'touch'); + return; + } // NEAR POINT? + + + var annotationToolsWithPointNearTouch = annotationTools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, tool.name); + var isNearPoint = toolState && toolState.data && tool.pointNearTool && toolState.data.some(function (data) { + return tool.pointNearTool(element, data, coords, 'touch'); + }); + return isNearPoint; + }); // TODO: More than one? Which one was moved most recently? + // We'll just grab the first one we encounter for now + + if (annotationToolsWithPointNearTouch.length > 0) { + // Todo: Ignore: TAP, START, PRESS + var firstToolNearPoint = annotationToolsWithPointNearTouch[0]; + + var _toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, firstToolNearPoint.name); + + var firstAnnotationNearPoint = _toolState.data.find(function (data) { + return firstToolNearPoint.pointNearTool(element, data, coords); + }); + + firstToolNearPoint.toolSelectedCallback(evt, firstAnnotationNearPoint, 'touch'); + return; + } // If any tools are active, check if they have a special reason for dealing with the event. + + + if (activeTools.length > 0) { + // TODO: If length > 1, you could assess fitness and select the ideal tool + // TODO: But because we're locking this to 'active' tools, that should rarely be an issue + // Super-Meta-TODO: ^ I think we should just take the approach of one active tool per mouse button? + var _firstActiveToolWithCallback = activeTools.find(function (tool) { + return typeof tool.postTouchStartCallback === 'function'; + }); + + if (_firstActiveToolWithCallback) { + var _consumedEvent = _firstActiveToolWithCallback.postTouchStartCallback(evt); + + if (_consumedEvent) { + return; + } + } + } +}); + +/***/ }), + +/***/ "./eventDispatchers/touchEventHandlers/touchStartActive.js": +/*!*****************************************************************!*\ + !*** ./eventDispatchers/touchEventHandlers/touchStartActive.js ***! + \*****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./addNewMeasurement.js */ "./eventDispatchers/touchEventHandlers/addNewMeasurement.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../tools/base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/getActiveTool */ "./util/getActiveTool.js"); +// State + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + if (_store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked || _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + return; + } + + var element = evt.detail.element; + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_3__["default"])(element, null, 'touch'); // Note: custom `addNewMeasurement` will need to prevent event bubbling + + if (activeTool && activeTool.addNewMeasurement) { + activeTool.addNewMeasurement(evt, 'touch'); + } else if (activeTool instanceof _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_2__["default"]) { + Object(_addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, activeTool); + } +}); + +/***/ }), + +/***/ "./eventDispatchers/touchToolEventDispatcher.js": +/*!******************************************************!*\ + !*** ./eventDispatchers/touchToolEventDispatcher.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./touchEventHandlers/index.js */ "./eventDispatchers/touchEventHandlers/index.js"); + + +/** + * These listeners are emitted in order, and can be cancelled/prevented from bubbling + * by any previous event. + * - tap: + * - touchStart: check to see if we are close to an existing annotation, grab it + * - touchDrag: + * - touchStartActive: createNewMeasurement (usually) + * - touchPress: + * - touchRotate: + * - doubleTap: usually a one-time apply specialty action + * - touchPinch: + * - onImageRendered: redraw visible tool data + * @private + * @param {*} element + * @returns {void} + */ + +var enable = function enable(element) { + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["tap"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchStart"], { + passive: false + }); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchDrag"], { + passive: false + }); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchEnd"]); // Mouse equivelant is `mouse_down_activate` + // Should the naming pattern here match? + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START_ACTIVE, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchStartActive"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchPress"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].DOUBLE_TAP, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["doubleTap"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchPinch"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_ROTATE, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchRotate"]); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MULTI_TOUCH_DRAG, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["multiTouchDrag"]); +}; + +var disable = function disable(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["tap"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchStart"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchDrag"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchEnd"]); // Mouse equivelant is `mouse_down_activate` + // Should the naming pattern here match? + + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START_ACTIVE, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchStartActive"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchPress"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].DOUBLE_TAP, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["doubleTap"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchPinch"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_ROTATE, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchRotate"]); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MULTI_TOUCH_DRAG, _touchEventHandlers_index_js__WEBPACK_IMPORTED_MODULE_1__["multiTouchDrag"]); +}; + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventListeners/index.js": +/*!*********************************!*\ + !*** ./eventListeners/index.js ***! + \*********************************/ +/*! exports provided: mouseEventListeners, wheelEventListener, touchEventListeners */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _mouseEventListeners_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mouseEventListeners.js */ "./eventListeners/mouseEventListeners.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mouseEventListeners", function() { return _mouseEventListeners_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _wheelEventListener_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wheelEventListener.js */ "./eventListeners/wheelEventListener.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "wheelEventListener", function() { return _wheelEventListener_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _touchEventListeners_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./touchEventListeners.js */ "./eventListeners/touchEventListeners.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "touchEventListeners", function() { return _touchEventListeners_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + + + + + + +/***/ }), + +/***/ "./eventListeners/internals/normalizeWheel.js": +/*!****************************************************!*\ + !*** ./eventListeners/internals/normalizeWheel.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +// Reasonable defaults +var PIXEL_STEP = 10; +var LINE_HEIGHT = 40; +var PAGE_HEIGHT = 800; +/** + * Normalizes wheel events and provides properties that are more + * consistent and helpful across different browsers + * + * @private + * @function normalizeWheel + * @param {WheelEvent} event + * @returns {Object} { spinX, spinY, pixlX, pixelY } + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (event) { + var spinX = 0, + spinY = 0, + pixelX = 0, + pixelY = 0; // Legacy + + if ('detail' in event) { + spinY = event.detail; + } + + if ('wheelDelta' in event) { + spinY = -event.wheelDelta / 120; + } + + if ('wheelDeltaY' in event) { + spinY = -event.wheelDeltaY / 120; + } + + if ('wheelDeltaX' in event) { + spinX = -event.wheelDeltaX / 120; + } + + pixelX = spinX * PIXEL_STEP; + pixelY = spinY * PIXEL_STEP; + + if ('deltaY' in event) { + pixelY = event.deltaY; + } + + if ('deltaX' in event) { + pixelX = event.deltaX; + } + + if ((pixelX || pixelY) && event.deltaMode) { + if (event.deltaMode === 1) { + // Delta in LINE units + pixelX *= LINE_HEIGHT; + pixelY *= LINE_HEIGHT; + } else { + // Delta in PAGE units + pixelX *= PAGE_HEIGHT; + pixelY *= PAGE_HEIGHT; + } + } // Fall-back if spin cannot be determined + + + if (pixelX && !spinX) { + spinX = pixelX < 1 ? -1 : 1; + } + + if (pixelY && !spinY) { + spinY = pixelY < 1 ? -1 : 1; + } + + return { + spinX: spinX, + spinY: spinY, + pixelX: pixelX, + pixelY: pixelY + }; +}); + +/***/ }), + +/***/ "./eventListeners/internals/renderSegmentation.js": +/*!********************************************************!*\ + !*** ./eventListeners/internals/renderSegmentation.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return renderSegmentation; }); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _renderSegmentationFill__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./renderSegmentationFill */ "./eventListeners/internals/renderSegmentationFill.js"); +/* harmony import */ var _renderSegmentationOutline__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./renderSegmentationOutline */ "./eventListeners/internals/renderSegmentationOutline.js"); + + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'); +/** + * Renders the segmentation based on the brush configuration and + * the active status of the labelmap. + * @param {Object} evt The cornerstone event. + * @param {Labelmap3D} labelmap3D The `Labelmap3D` object. + * @param {number} labelmapIndex The index of the active label map. + * @param {Labelmap2D} labelmap2D The `Labelmap2D` object to render. + * @param {boolean} isActiveLabelMap Whether or not the labelmap is active. + * @returns {null} + */ + +function renderSegmentation(evt, labelmap3D, labelmapIndex, labelmap2D, isActiveLabelMap) { + if (shouldRenderFill(isActiveLabelMap)) { + Object(_renderSegmentationFill__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, labelmap3D, labelmap2D, labelmapIndex, isActiveLabelMap); + } + + if (shouldRenderOutline(isActiveLabelMap)) { + Object(_renderSegmentationOutline__WEBPACK_IMPORTED_MODULE_2__["default"])(evt, labelmap3D, labelmap2D, labelmapIndex, isActiveLabelMap); + } +} +/** + * ShouldRenderFill - Returns true if `configuration.renderFill` + * is true , and if the global alpha is not zero. + * + * @param {boolean} isActiveLabelMap + * @returns {boolean} True if the segmentation should be filled. + */ + +function shouldRenderFill(isActiveLabelMap) { + var configuration = segmentationModule.configuration; + return configuration.renderFill && (isActiveLabelMap && configuration.fillAlpha !== 0 || !isActiveLabelMap && configuration.fillAlphaInactive !== 0); +} +/** + * ShouldRenderOutline - Returns true if `configuration.renderOutline` + * is true , and if the global alpha is not zero. + * + * @param {boolean} isActiveLabelMap + * @returns {boolean} True if the segmentation should be outlined. + */ + + +function shouldRenderOutline(isActiveLabelMap) { + var configuration = segmentationModule.configuration; + return configuration.renderOutline && (isActiveLabelMap && configuration.outlineAlpha !== 0 || !isActiveLabelMap && configuration.outlineAlphaInactive !== 0); +} + +/***/ }), + +/***/ "./eventListeners/internals/renderSegmentationFill.js": +/*!************************************************************!*\ + !*** ./eventListeners/internals/renderSegmentationFill.js ***! + \************************************************************/ +/*! exports provided: default, getLabelmapCanvas, renderFill */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return renderSegmentationFill; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLabelmapCanvas", function() { return getLabelmapCanvas; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderFill", function() { return renderFill; }); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../externalModules */ "./externalModules.js"); + + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'); +function renderSegmentationFill(evt, labelmap3D, labelmap2D, labelmapIndex, isActiveLabelMap) { + var labelmapCanvas = getLabelmapCanvas(evt, labelmap3D, labelmap2D); + renderFill(evt, labelmapCanvas, isActiveLabelMap); +} +/** + * Generates a canvas of the `Labelmap2D` data with transparent background, to draw onto the + * cornerstone canvas. Reduces the number of `putImageData` calls that need to be made by + * scanning across the labelmap and painting to the canvas in chunks. + * + * @param {Object} evt The cornerstone event. + * @param {Labelmap3D} labelmap3D The `Labelmap3D` object. + * @param {Labelmap2D} labelmap2D The `Labelmap2D` object containing the pixelData to render. + * @returns {HTMLCanvasElement} + */ + +function getLabelmapCanvas(evt, labelmap3D, labelmap2D) { + var state = segmentationModule.state; + var eventData = evt.detail; + var image = eventData.image; + var cols = image.width; + var rows = image.height; + var segmentsHidden = labelmap3D.segmentsHidden; + var pixelData = labelmap2D.pixelData; + var colorLutTable = state.colorLutTables[labelmap3D.colorLUTIndex]; + var canvasElement = document.createElement('canvas'); + canvasElement.width = cols; + canvasElement.height = rows; + var ctx = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_1__["getNewContext"])(canvasElement); // Image data initialized with all transparent black. + + var imageData = new ImageData(cols, rows); + var data = imageData.data; + + for (var i = 0; i < pixelData.length; i++) { + var segmentIndex = pixelData[i]; + + if (segmentIndex !== 0 && !segmentsHidden[segmentIndex]) { + var color = colorLutTable[pixelData[i]]; // Modify ImageData. + + data[4 * i] = color[0]; // R value + + data[4 * i + 1] = color[1]; // G value + + data[4 * i + 2] = color[2]; // B value + + data[4 * i + 3] = color[3]; // A value + } + } // Put this image data onto the labelmapCanvas. + + + ctx.putImageData(imageData, 0, 0); + return canvasElement; +} +/** + * Renders the filled region of each segment in the segmentation. + * @param {Object} evt The cornerstone event. + * @param {HTMLCanvasElement} labelmapCanvas The canvas generated for the labelmap. + * @param {boolean} isActiveLabelMap Whether or not the labelmap is active. + * @returns {null} + */ + +function renderFill(evt, labelmapCanvas, isActiveLabelMap) { + var configuration = segmentationModule.configuration; + var eventData = evt.detail; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_1__["getNewContext"])(eventData.canvasContext.canvas); + var canvasTopLeft = _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone.pixelToCanvas(eventData.element, { + x: 0, + y: 0 + }); + var canvasTopRight = _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone.pixelToCanvas(eventData.element, { + x: eventData.image.width, + y: 0 + }); + var canvasBottomRight = _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone.pixelToCanvas(eventData.element, { + x: eventData.image.width, + y: eventData.image.height + }); + var cornerstoneCanvasWidth = _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstoneMath.point.distance(canvasTopLeft, canvasTopRight); + var cornerstoneCanvasHeight = _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstoneMath.point.distance(canvasTopRight, canvasBottomRight); + var canvas = eventData.canvasContext.canvas; + var viewport = eventData.viewport; + var previousImageSmoothingEnabled = context.imageSmoothingEnabled; + var previousGlobalAlpha = context.globalAlpha; + context.imageSmoothingEnabled = false; + context.globalAlpha = isActiveLabelMap ? configuration.fillAlpha : configuration.fillAlphaInactive; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_1__["transformCanvasContext"])(context, canvas, viewport); + var canvasViewportTranslation = { + x: viewport.translation.x * viewport.scale, + y: viewport.translation.y * viewport.scale + }; + context.drawImage(labelmapCanvas, canvas.width / 2 - cornerstoneCanvasWidth / 2 + canvasViewportTranslation.x, canvas.height / 2 - cornerstoneCanvasHeight / 2 + canvasViewportTranslation.y, cornerstoneCanvasWidth, cornerstoneCanvasHeight); + context.globalAlpha = previousGlobalAlpha; + context.imageSmoothingEnabled = previousImageSmoothingEnabled; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_1__["resetCanvasContextTransform"])(context); +} + +/***/ }), + +/***/ "./eventListeners/internals/renderSegmentationOutline.js": +/*!***************************************************************!*\ + !*** ./eventListeners/internals/renderSegmentationOutline.js ***! + \***************************************************************/ +/*! exports provided: default, renderOutline, getOutline, _addTopRightCorner */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return renderSegmentationOutline; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderOutline", function() { return renderOutline; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getOutline", function() { return getOutline; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_addTopRightCorner", function() { return _addTopRightCorner; }); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../index.js */ "./index.js"); + + + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'); +function renderSegmentationOutline(evt, labelmap3D, labelmap2D, labelmapIndex, isActiveLabelMap) { + var configuration = segmentationModule.configuration; + var outline = getOutline(evt, labelmap3D, labelmap2D, configuration.outlineWidth); + renderOutline(evt, outline, labelmap3D.colorLUTIndex, isActiveLabelMap); +} +/** + * RenderOutline - Renders the outlines of segments to the canvas. + * + * @param {Object} evt The cornerstone event. + * @param {Object} outline The outline to render. + * @param {number} colorLUTIndex The index of the colorLUT. + * @param {number} isActiveLabelMap Whether the labelmap is active. + * @returns {null} + */ + +function renderOutline(evt, outline, colorLUTIndex) { + var isActiveLabelMap = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true; + var configuration = segmentationModule.configuration, + state = segmentationModule.state; + var eventData = evt.detail; + var element = eventData.element, + canvasContext = eventData.canvasContext; + var lineWidth = configuration.outlineWidth || 1; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_2__["getNewContext"])(canvasContext.canvas); + var colorLutTable = state.colorLutTables[colorLUTIndex]; + var previousAlpha = context.globalAlpha; + context.globalAlpha = isActiveLabelMap ? configuration.outlineAlpha : configuration.outlineAlphaInactive; // Draw outlines. + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_2__["draw"])(context, function (context) { + for (var i = 1; i < outline.length; i++) { + if (outline[i]) { + var color = colorLutTable[i]; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_2__["drawLines"])(context, element, outline[i], { + color: "rgba(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ", 1.0 )"), + lineWidth: lineWidth + }, 'canvas'); + } + } + }); + context.globalAlpha = previousAlpha; +} +/** + * GetOutline - Returns an object containing all the line segments to be + * drawn the canvas. + * + * @param {Object} evt The cornerstone event. + * @param {Labelmap3D} labelmap3D The 3D labelmap. + * @param {Labelmap2D} labelmap2D The 2D labelmap for this current image. + * @param {number} lineWidth The width of the outline in canvas pixels. + * + * @returns {Object[][]} An array of arrays of lines for each segment. + */ + +function getOutline(evt, labelmap3D, labelmap2D, lineWidth) { + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image, + viewport = eventData.viewport; + var cols = image.width; + var rows = image.height; + lineWidth = lineWidth || 1; + var segmentsHidden = labelmap3D.segmentsHidden; + var pixelData = labelmap2D.pixelData; + var activeSegmentIndex = labelmap3D.activeSegmentIndex; + var lineSegments = []; + labelmap2D.segmentsOnLabelmap.forEach(function (segmentIndex) { + var visible = !segmentsHidden[segmentIndex]; + + if (visible) { + lineSegments[segmentIndex] = []; + } + }); + + if (!lineSegments[activeSegmentIndex]) { + lineSegments[activeSegmentIndex] = []; + } + + var _getPixelCoordinateFromPixelIndex = function _getPixelCoordinateFromPixelIndex(pixelIndex) { + return { + x: pixelIndex % cols, + y: Math.floor(pixelIndex / cols) + }; + }; + + var offset = getOutlineOffset(viewport, lineWidth); + + for (var i = 0; i < pixelData.length; i++) { + var segmentIndex = pixelData[i]; + + if (segmentIndex === 0) { + continue; + } + + var visible = !segmentsHidden[segmentIndex]; + + if (!visible) { + continue; + } + + var coord = _getPixelCoordinateFromPixelIndex(i); + + var pixels = _getPixelIndiciesAroundPixel(coord, rows, cols); // Check pixel above + + + if (pixels.top === undefined || pixelData[pixels.top] !== segmentIndex) { + _addTopOutline(lineSegments[segmentIndex], element, coord, offset); + } // Check pixel below + + + if (pixels.bottom === undefined || pixelData[pixels.bottom] !== segmentIndex) { + _addBottomOutline(lineSegments[segmentIndex], element, coord, offset); + } // Check pixel to the left + + + if (pixels.left === undefined || pixelData[pixels.left] !== segmentIndex) { + _addLeftOutline(lineSegments[segmentIndex], element, coord, offset); + } // Check pixel to the right + + + if (pixels.right === undefined || pixelData[pixels.right] !== segmentIndex) { + _addRightOutline(lineSegments[segmentIndex], element, coord, offset); + } // Top left corner + + + if (pixels.topLeft !== undefined && pixelData[pixels.topLeft] !== segmentIndex && pixelData[pixels.top] === segmentIndex && pixelData[pixels.left] === segmentIndex) { + _addTopLeftCorner(lineSegments[segmentIndex], element, coord, offset); + } // Top right corner + + + if (pixels.topRight !== undefined && pixelData[pixels.topRight] !== segmentIndex && pixelData[pixels.top] === segmentIndex && pixelData[pixels.right] === segmentIndex) { + _addTopRightCorner(lineSegments[segmentIndex], element, coord, offset); + } // Bottom left corner + + + if (pixels.bottomLeft !== undefined && pixelData[pixels.bottomLeft] !== segmentIndex && pixelData[pixels.bottom] === segmentIndex && pixelData[pixels.left] === segmentIndex) { + _addBottomLeftCorner(lineSegments[segmentIndex], element, coord, offset); + } // Bottom right corner + + + if (pixels.bottomRight !== undefined && pixelData[pixels.bottomRight] !== segmentIndex && pixelData[pixels.bottom] === segmentIndex && pixelData[pixels.right] === segmentIndex) { + _addBottomRightCorner(lineSegments[segmentIndex], element, coord, offset); + } + } + + return lineSegments; +} +/** + * GetOutlineOffset - Returns the outline offset (half line width) in the + * i (column) and j (row) pixel directions in the viewport's rotated frame. + * @param {Object} viewport The cornerstone viewport. + * @param {number} lineWidth The width of the outline. + * @returns {Object} Two vectors in the i and j pixel directions, with magnitude + * lineWidth / 2 + */ + +function getOutlineOffset(viewport, lineWidth) { + var halfLineWidth = lineWidth / 2; + var theta = viewport.rotation; + theta *= Math.PI / 180; + var cosTheta = Math.cos(theta); + var sinTheta = Math.sin(theta); + var unitVectorI = [cosTheta, sinTheta]; + var unitVectorJ = [-sinTheta, cosTheta]; + var i = { + x: halfLineWidth * unitVectorI[0], + y: halfLineWidth * unitVectorI[1] + }; + var j = { + x: halfLineWidth * unitVectorJ[0], + y: halfLineWidth * unitVectorJ[1] + }; + + if (viewport.hflip) { + i.x *= -1; + i.y *= -1; + } + + if (viewport.vflip) { + j.x *= -1; + j.y *= -1; + } + + return { + i: i, + j: j + }; +} +/** + * _getPixelIndiciesAroundPixel - Returnns the coordinates for up to 8 surrounding + * pixels, if they within the bounds of the image. + * + * @param {Object} coord The coordinate to check. + * @param {number} rows The number of rows in the image. + * @param {number} cols The number of cols in the image. + * + * @returns {Object} Object containing the position of adjacent pixels. + */ + + +function _getPixelIndiciesAroundPixel(coord, rows, cols) { + var pixelIndex = coord.y * cols + coord.x; + var pixel = {}; + var hasPixelToTop = coord.y - 1 >= 0; + var hasPixelToBotoom = coord.y + 1 < rows; + var hasPixelToLeft = coord.x - 1 >= 0; + var hasPixelToRight = coord.x + 1 < cols; + + if (hasPixelToTop) { + pixel.top = pixelIndex - cols; + + if (hasPixelToRight) { + pixel.topRight = pixel.top + 1; + } + + if (hasPixelToLeft) { + pixel.topLeft = pixel.top - 1; + } + } + + if (hasPixelToBotoom) { + pixel.bottom = pixelIndex + cols; + + if (hasPixelToRight) { + pixel.bottomRight = pixel.bottom + 1; + } + + if (hasPixelToLeft) { + pixel.bottomLeft = pixel.bottom - 1; + } + } + + if (hasPixelToLeft) { + pixel.left = pixelIndex - 1; + } + + if (hasPixelToRight) { + pixel.right = pixelIndex + 1; + } + + return pixel; +} +/** + * _addTopLeftCorner - Adds an outline to the top left corner of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addTopLeftCorner(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, coord); + start.x += offset.j.x; + start.y += offset.j.y; + var end = { + x: start.x, + y: start.y + }; + end.x += offset.i.x * 2; + end.y += offset.i.y * 2; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addTopRightCorner - Adds an outline to the top right corner of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addTopRightCorner(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + }); + start.x += offset.j.x; + start.y += offset.j.y; + var end = { + x: start.x, + y: start.y + }; + end.x -= offset.i.x * 2; + end.y -= offset.i.y * 2; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addBottomLeftCorner - Adds an outline to the bottom left corner of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + +function _addBottomLeftCorner(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, { + x: coord.x, + y: coord.y + 1 + }); + start.x -= offset.j.x; + start.y -= offset.j.y; + var end = { + x: start.x, + y: start.y + }; + end.x += offset.i.x * 2; + end.y += offset.i.y * 2; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addBottomRightCorner - Adds an outline to the bottom right corner of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addBottomRightCorner(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + 1 + }); + start.x -= offset.j.x; + start.y -= offset.j.y; + var end = { + x: start.x, + y: start.y + }; + end.x -= offset.i.x * 2; + end.y -= offset.i.y * 2; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addTopOutline - adds an outline at the top of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {number} halfLineWidth - Half the line width, to place line within the pixel. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addTopOutline(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, coord); + var end = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + }); // Move the line in the y-direction. + + start.x += offset.j.x; + start.y += offset.j.y; + end.x += offset.j.x; + end.y += offset.j.y; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addBottomOutline - adds an outline at the bottom of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addBottomOutline(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, { + x: coord.x, + y: coord.y + 1 + }); + var end = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + 1 + }); // Move the line in the negative y-direction. + + start.x -= offset.j.x; + start.y -= offset.j.y; + end.x -= offset.j.x; + end.y -= offset.j.y; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addLeftOutline - adds an outline at the left side of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addLeftOutline(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, coord); + var end = pixelToCanvas(element, { + x: coord.x, + y: coord.y + 1 + }); // Move the line in the x-direction. + + start.x += offset.i.x; + start.y += offset.i.y; + end.x += offset.i.x; + end.y += offset.i.y; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} +/** + * _addRightOutline - adds an outline at the right side of the pixel. + * + * @param {Object[]} lineSegmentsForSegment - The list to append. + * @param {Object} element - The Cornerstone enabled element. + * @param {Object} coord - The pixel to add a line to. + * @param {Object} offset - The x and y offset in the rotated frame. + * + * @returns {null} + */ + + +function _addRightOutline(lineSegmentsForSegment, element, coord, offset) { + var pixelToCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas; + var start = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + }); + var end = pixelToCanvas(element, { + x: coord.x + 1, + y: coord.y + 1 + }); // Move the line in the negative x-direction. + + start.x -= offset.i.x; + start.y -= offset.i.y; + end.x -= offset.i.x; + end.y -= offset.i.y; + lineSegmentsForSegment.push({ + start: start, + end: end + }); +} + +/***/ }), + +/***/ "./eventListeners/mouseEventListeners.js": +/*!***********************************************!*\ + !*** ./eventListeners/mouseEventListeners.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/copyPoints.js */ "./util/copyPoints.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('eventListeners:mouseEventListeners'); +var isClickEvent = true; +var preventClickTimeout; +var clickDelay = 200; + +function getEventButtons(event) { + if (typeof event.buttons === 'number') { + return event.buttons; + } + + switch (event.which) { + // No button + case 0: + return 0; + // Left + + case 1: + return 1; + // Middle + + case 2: + return 4; + // Right + + case 3: + return 2; + } + + return 0; +} + +function preventClickHandler() { + isClickEvent = false; +} + +function mouseDoubleClick(e) { + var element = e.currentTarget; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } + + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOUBLE_CLICK; + var startPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + var lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(startPoints); + logger.log('double-click: %o', getEventButtons(e)); + var eventData = { + event: e, + buttons: getEventButtons(e), + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: startPoints, + deltaPoints: { + x: 0, + y: 0 + }, + type: eventType + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, eventType, eventData); +} + +function mouseDown(e) { + var element = e.currentTarget; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } + + preventClickTimeout = setTimeout(preventClickHandler, clickDelay); // Prevent CornerstoneToolsMouseMove while mouse is down + + element.removeEventListener('mousemove', mouseMove); + var startPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + var lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(startPoints); + var eventData = { + event: e, + buttons: getEventButtons(e), + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: startPoints, + deltaPoints: { + x: 0, + y: 0 + }, + type: _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN + }; + var eventPropagated = Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData.element, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN, eventData); + + if (eventPropagated) { + // No tools responded to this event, create a new tool + eventData.type = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN_ACTIVATE; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData.element, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DOWN_ACTIVATE, eventData); + } + + function onMouseMove(e) { + // Calculate our current points in page and image coordinates + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG; + var currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); // Calculate delta values in page and image coordinates + + var deltaPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.page, lastPoints.page), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.image, lastPoints.image), + client: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.client, lastPoints.client), + canvas: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.canvas, lastPoints.canvas) + }; + logger.log('mousemove: %o', getEventButtons(e)); + var eventData = { + buttons: getEventButtons(e), + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: currentPoints, + deltaPoints: deltaPoints, + type: eventType, + ctrlKey: e.ctrlKey, + metaKey: e.metaKey, + shiftKey: e.shiftKey + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData.element, eventType, eventData); // Update the last points + + lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(currentPoints); + } // Hook mouseup so we can unbind our event listeners + // When they stop dragging + + + function onMouseUp(e) { + // Cancel the timeout preventing the click event from triggering + clearTimeout(preventClickTimeout); + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP; + + if (isClickEvent) { + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK; + } // Calculate our current points in page and image coordinates + + + var currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); // Calculate delta values in page and image coordinates + + var deltaPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.page, lastPoints.page), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.image, lastPoints.image), + client: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.client, lastPoints.client), + canvas: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.canvas, lastPoints.canvas) + }; + logger.log('mouseup: %o', getEventButtons(e)); + var eventData = { + event: e, + buttons: getEventButtons(e), + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: currentPoints, + deltaPoints: deltaPoints, + type: eventType + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData.element, eventType, eventData); + document.removeEventListener('mousemove', onMouseMove); + document.removeEventListener('mouseup', onMouseUp); + element.addEventListener('mousemove', mouseMove); + isClickEvent = true; + } + + document.addEventListener('mousemove', onMouseMove); + document.addEventListener('mouseup', onMouseUp); +} + +function mouseMove(e) { + var element = e.currentTarget; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } + + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_MOVE; + var startPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + var lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(startPoints); // Calculate our current points in page and image coordinates + + var currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pageX, e.pageY), + client: { + x: e.clientX, + y: e.clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); // Calculate delta values in page and image coordinates + + var deltaPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.page, lastPoints.page), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.image, lastPoints.image), + client: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.client, lastPoints.client), + canvas: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.canvas, lastPoints.canvas) + }; + var eventData = { + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: currentPoints, + deltaPoints: deltaPoints, + type: eventType + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, eventType, eventData); // Update the last points + + lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(currentPoints); +} + +function disable(element) { + element.removeEventListener('mousedown', mouseDown); + element.removeEventListener('mousemove', mouseMove); + element.removeEventListener('dblclick', mouseDoubleClick); +} + +function enable(element) { + // Prevent handlers from being attached multiple times + disable(element); + element.addEventListener('mousedown', mouseDown); + element.addEventListener('mousemove', mouseMove); + element.addEventListener('dblclick', mouseDoubleClick); +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventListeners/onImageRenderedBrushEventHandler.js": +/*!************************************************************!*\ + !*** ./eventListeners/onImageRenderedBrushEventHandler.js ***! + \************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/index.js */ "./store/index.js"); +/* harmony import */ var _internals_renderSegmentation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internals/renderSegmentation.js */ "./eventListeners/internals/renderSegmentation.js"); + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'); +/** + * Finds which segmentations need to be rendered based on the configuration and + * presence of `Labelmap2D` data on these frames. + * + * @param {Object} evt - The cornerstone event. + * @returns {null} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + var eventData = evt.detail; + var element = eventData.element; + var configuration = segmentationModule.configuration, + getters = segmentationModule.getters; + + var _getters$labelmaps3D = getters.labelmaps3D(element), + activeLabelmapIndex = _getters$labelmaps3D.activeLabelmapIndex, + labelmaps3D = _getters$labelmaps3D.labelmaps3D, + currentImageIdIndex = _getters$labelmaps3D.currentImageIdIndex; + + if (!labelmaps3D) { + return; + } + + if (configuration.shouldRenderInactiveLabelmaps) { + renderInactiveLabelMaps(evt, labelmaps3D, activeLabelmapIndex, currentImageIdIndex); + } + + renderActiveLabelMap(evt, labelmaps3D, activeLabelmapIndex, currentImageIdIndex); +}); +/** + * RenderActiveLabelMap - Renders the `Labelmap3D` for this element if a `Labelmap2D` + * view of the `currentImageIdIndex` exists. + * + * @param {Object} evt The cornerstone event. + * @param {Labelmap3D[]} labelmaps3D An array of `Labelmap3D` objects. + * @param {number} activeLabelmapIndex The index of the active label map. + * @param {number} currentImageIdIndex The in-stack image position. + * @returns {null} + */ + +function renderActiveLabelMap(evt, labelmaps3D, activeLabelmapIndex, currentImageIdIndex) { + var labelmap3D = labelmaps3D[activeLabelmapIndex]; + + if (!labelmap3D) { + return; + } + + var labelmap2D = labelmap3D.labelmaps2D[currentImageIdIndex]; + + if (labelmap2D) { + Object(_internals_renderSegmentation_js__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, labelmap3D, activeLabelmapIndex, labelmap2D, true); + } +} +/** + * RenderInactiveLabelMaps - Renders all the inactive `Labelmap3D`s for this element. + * + * @param {Object} evt The cornerstone event. + * @param {Labelmap3D[]} labelmaps3D An array of labelmaps. + * @param {number} activeLabelmapIndex The index of the active label map. + * @param {number} currentImageIdIndex The in-stack image position. + * @returns {null} + */ + + +function renderInactiveLabelMaps(evt, labelmaps3D, activeLabelmapIndex, currentImageIdIndex) { + for (var i = 0; i < labelmaps3D.length; i++) { + var labelmap3D = labelmaps3D[i]; + + if (i === activeLabelmapIndex || !labelmap3D) { + continue; + } + + var labelmap2D = labelmap3D.labelmaps2D[currentImageIdIndex]; + + if (labelmap2D) { + Object(_internals_renderSegmentation_js__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, labelmap3D, i, labelmap2D, false); + } + } +} + +/***/ }), + +/***/ "./eventListeners/preventGhostClick.js": +/*!*********************************************!*\ + !*** ./eventListeners/preventGhostClick.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +// Functions to prevent ghost clicks following a touch +// All credit to @kosich +// https://gist.github.com/kosich/23188dd86633b6c2efb7 +var antiGhostDelay = 2000, + pointerType = { + mouse: 0, + touch: 1 +}; +var lastInteractionType, lastInteractionTime; + +function handleTap(type, e) { + var now = Date.now(); + + if (type !== lastInteractionType) { + if (now - lastInteractionTime <= antiGhostDelay) { + e.preventDefault(); + e.stopPropagation(); + e.stopImmediatePropagation(); + return false; + } + + lastInteractionType = type; + } + + lastInteractionTime = now; +} // Cacheing the function references +// Necessary because a new function reference is created after .bind() is called +// http://stackoverflow.com/questions/11565471/removing-event-listener-which-was-added-with-bind + + +var handleTapMouse = handleTap.bind(null, pointerType.mouse); +var handleTapTouch = handleTap.bind(null, pointerType.touch); + +function attachEvents(element, eventList, interactionType) { + var tapHandler = interactionType ? handleTapMouse : handleTapTouch; + eventList.forEach(function (eventName) { + element.addEventListener(eventName, tapHandler, { + passive: false + }); + }); +} + +function removeEvents(element, eventList, interactionType) { + var tapHandler = interactionType ? handleTapMouse : handleTapTouch; + eventList.forEach(function (eventName) { + element.removeEventListener(eventName, tapHandler); + }); +} + +var mouseEvents = ['mousedown', 'mouseup']; +var touchEvents = ['touchstart', 'touchend']; + +function disable(element) { + removeEvents(element, mouseEvents, pointerType.mouse); + removeEvents(element, touchEvents, pointerType.touch); +} + +function enable(element) { + disable(element); + attachEvents(element, mouseEvents, pointerType.mouse); + attachEvents(element, touchEvents, pointerType.touch); +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventListeners/touchEventListeners.js": +/*!***********************************************!*\ + !*** ./eventListeners/touchEventListeners.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/copyPoints.js */ "./util/copyPoints.js"); +/* harmony import */ var _preventGhostClick_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./preventGhostClick.js */ "./eventListeners/preventGhostClick.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _toolOptions_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../toolOptions.js */ "./toolOptions.js"); + + + + + + +var startPoints, currentPoints, lastPoints, deltaPoints, eventData, touchStartDelay, pressTimeout, pageDistanceMoved; +var lastScale = 1.0, + lastRotation = 0.0, + preventNextPinch = false, + isPress = false, + lastDelta; +var pressDelay = 700, + pressMaxDistance = 5; +var toolType = 'touchInput'; + +function onTouch(e) { + var element = e.currentTarget || e.srcEvent.currentTarget; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } + + var eventType, scaleChange, delta, remainingPointers, rotation; // Prevent mouse events from occurring alongside touch events + + e.preventDefault(); // If more than one finger is placed on the element, stop the press timeout + + if (e.pointers && e.pointers.length > 1 || e.touches && e.touches.length > 1) { + isPress = false; + clearTimeout(pressTimeout); + } + + switch (e.type) { + case 'tap': + isPress = false; + clearTimeout(pressTimeout); // Calculate our current points in page and image coordinates + + currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.pointers[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pointers[0].pageX, e.pointers[0].pageY), + client: { + x: e.pointers[0].clientX, + y: e.pointers[0].clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP; + eventData = { + event: e, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + currentPoints: currentPoints, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + break; + + case 'doubletap': + isPress = false; + clearTimeout(pressTimeout); // Calculate our current points in page and image coordinates + + currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.pointers[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pointers[0].pageX, e.pointers[0].pageY), + client: { + x: e.pointers[0].clientX, + y: e.pointers[0].clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].DOUBLE_TAP; + eventData = { + event: e, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + currentPoints: currentPoints, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + break; + + case 'pinchstart': + isPress = false; + clearTimeout(pressTimeout); + lastScale = 1.0; + break; + + case 'pinchmove': + isPress = false; + clearTimeout(pressTimeout); + + if (preventNextPinch === true) { + lastScale = e.scale; + preventNextPinch = false; + break; + } + + scaleChange = (e.scale - lastScale) / lastScale; + startPoints = { + page: e.center, + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.center.x, e.center.y) + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH; + eventData = { + event: e, + startPoints: startPoints, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + direction: e.scale < 1 ? 1 : -1, + scaleChange: scaleChange, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + lastScale = e.scale; + break; + + case 'touchstart': + lastScale = 1.0; + clearTimeout(pressTimeout); + clearTimeout(touchStartDelay); + touchStartDelay = setTimeout(function () { + startPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.touches[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.touches[0].pageX, e.touches[0].pageY), + client: { + x: e.touches[0].clientX, + y: e.touches[0].clientY + } + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START; + + if (e.touches.length > 1) { + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MULTI_TOUCH_START; + } + + eventData = { + event: e, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + currentPoints: startPoints, + type: eventType, + isTouchEvent: true + }; + var eventPropagated = Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + + if (eventPropagated === true) { + // IsPress = false; + // ClearTimeout(pressTimeout); + // No current tools responded to the drag action. + // Create new tool measurement + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START_ACTIVE; + + if (e.touches.length > 1) { + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MULTI_TOUCH_START_ACTIVE; + } + + eventData.type = eventType; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + } // Console.log(eventType); + + + lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(startPoints); + }, 50); + isPress = true; + pageDistanceMoved = 0; + pressTimeout = setTimeout(function () { + if (!isPress) { + return; + } + + currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.touches[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.touches[0].pageX, e.touches[0].pageY), + client: { + x: e.touches[0].clientX, + y: e.touches[0].clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS; + eventData = { + event: e, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + currentPoints: currentPoints, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); // Console.log(eventType); + }, pressDelay); + break; + + case 'touchend': + lastScale = 1.0; + isPress = false; + clearTimeout(pressTimeout); + setTimeout(function () { + startPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.changedTouches[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.changedTouches[0].pageX, e.changedTouches[0].pageY), + client: { + x: e.changedTouches[0].clientX, + y: e.changedTouches[0].clientY + } + }; + startPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, startPoints.image); + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END; + eventData = { + event: e, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + currentPoints: startPoints, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + }, 50); + break; + + case 'panmove': + // Using the delta-value of HammerJS, because it takes all pointers into account + // This is very important when using panning in combination with pinch-zooming + // But HammerJS' delta is relative to the start of the pan event + // So it needs to be converted to a per-event-delta for CornerstoneTools + delta = { + x: e.deltaX - lastDelta.x, + y: e.deltaY - lastDelta.y + }; + lastDelta = { + x: e.deltaX, + y: e.deltaY + }; // Calculate our current points in page and image coordinates + + currentPoints = { + page: { + x: lastPoints.page.x + delta.x, + y: lastPoints.page.y + delta.y + }, + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, lastPoints.page.x + delta.x, lastPoints.page.y + delta.y), + client: { + x: lastPoints.client.x + delta.x, + y: lastPoints.client.y + delta.y + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); // Calculate delta values in page and image coordinates + + deltaPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.page, lastPoints.page), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.image, lastPoints.image), + client: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.client, lastPoints.client), + canvas: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.canvas, lastPoints.canvas) + }; + pageDistanceMoved += Math.sqrt(deltaPoints.page.x * deltaPoints.page.x + deltaPoints.page.y * deltaPoints.page.y); // Console.log("pageDistanceMoved: " + pageDistanceMoved); + + if (pageDistanceMoved > pressMaxDistance) { + // Console.log('Press event aborted due to movement'); + isPress = false; + clearTimeout(pressTimeout); + } + + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG; + + if (e.pointers.length > 1) { + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MULTI_TOUCH_DRAG; + } + + eventData = { + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: currentPoints, + deltaPoints: deltaPoints, + numPointers: e.pointers.length, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(currentPoints); + break; + + case 'panstart': + lastDelta = { + x: e.deltaX, + y: e.deltaY + }; + currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.pointers[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pointers[0].pageX, e.pointers[0].pageY), + client: { + x: e.pointers[0].clientX, + y: e.pointers[0].clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); + lastPoints = Object(_util_copyPoints_js__WEBPACK_IMPORTED_MODULE_2__["default"])(currentPoints); + break; + + case 'panend': + isPress = false; + clearTimeout(pressTimeout); // If lastPoints is not yet set, it means panend fired without panstart or pan, + // So we can ignore this event + + if (!lastPoints) { + return false; + } + + currentPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.pageToPoint(e.pointers[0]), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, e.pointers[0].pageX, e.pointers[0].pageY), + client: { + x: e.pointers[0].clientX, + y: e.pointers[0].clientY + } + }; + currentPoints.canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, currentPoints.image); // Calculate delta values in page and image coordinates + + deltaPoints = { + page: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.page, lastPoints.page), + image: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.image, lastPoints.image), + client: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.client, lastPoints.client), + canvas: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.subtract(currentPoints.canvas, lastPoints.canvas) + }; + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG_END; + eventData = { + event: e.srcEvent, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + startPoints: startPoints, + lastPoints: lastPoints, + currentPoints: currentPoints, + deltaPoints: deltaPoints, + type: eventType, + isTouchEvent: true + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + remainingPointers = e.pointers.length - e.changedPointers.length; + + if (remainingPointers === 2) { + preventNextPinch = true; + } + + break; + + case 'rotatemove': + isPress = false; + clearTimeout(pressTimeout); + rotation = e.rotation - lastRotation; + lastRotation = e.rotation; + eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_ROTATE; + eventData = { + event: e.srcEvent, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + image: enabledElement.image, + element: element, + rotation: rotation, + type: eventType + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, eventData); + break; + } + + return false; +} + +function enable(element) { + disable(element); + var Hammer = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].Hammer; + var hammerOptions = { + inputClass: Hammer.SUPPORT_POINTER_EVENTS ? Hammer.PointerEventInput : Hammer.TouchInput + }; + var mc = new Hammer.Manager(element, hammerOptions); + var panOptions = { + pointers: 0, + direction: Hammer.DIRECTION_ALL, + threshold: 0 + }; + var pan = new Hammer.Pan(panOptions); + var pinch = new Hammer.Pinch({ + threshold: 0 + }); + var rotate = new Hammer.Rotate({ + threshold: 0 + }); + pinch.recognizeWith(pan); + pinch.recognizeWith(rotate); + rotate.recognizeWith(pan); + var doubleTap = new Hammer.Tap({ + event: 'doubletap', + taps: 2, + interval: 1500, + threshold: 50, + posThreshold: 50 + }); + doubleTap.recognizeWith(pan); // Add to the Manager + + mc.add([doubleTap, pan, rotate, pinch]); + mc.on('tap doubletap panstart panmove panend pinchstart pinchmove rotatemove', onTouch); + _preventGhostClick_js__WEBPACK_IMPORTED_MODULE_3__["default"].enable(element); + var touchEvents = ['touchstart', 'touchend']; + touchEvents.forEach(function (eventType) { + element.addEventListener(eventType, onTouch, { + passive: false + }); + }); + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_5__["getToolOptions"])(toolType, element); + options.hammer = mc; + Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_5__["setToolOptions"])(toolType, element, options); +} + +function disable(element) { + _preventGhostClick_js__WEBPACK_IMPORTED_MODULE_3__["default"].disable(element); + var touchEvents = ['touchstart', 'touchend']; + touchEvents.forEach(function (eventType) { + element.removeEventListener(eventType, onTouch); + }); + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_5__["getToolOptions"])(toolType, element); + var mc = options.hammer; + + if (mc) { + mc.off('tap doubletap panstart panmove panend pinchstart pinchmove rotatemove', onTouch); + } +} // Module exports + + +var touchInput = { + enable: enable, + disable: disable +}; +/* harmony default export */ __webpack_exports__["default"] = (touchInput); + +/***/ }), + +/***/ "./eventListeners/wheelEventListener.js": +/*!**********************************************!*\ + !*** ./eventListeners/wheelEventListener.js ***! + \**********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _internals_normalizeWheel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internals/normalizeWheel.js */ "./eventListeners/internals/normalizeWheel.js"); +/** + * Internal module used to turn on listening, handling, and normalizing of the + * native `wheel` event + */ + + + + +/** + * + * @private + * @function wheelEventHandler + * @param {WheelEvent} evt + * @returns {undefined} + */ + +function wheelEventHandler(evt) { + var element = evt.currentTarget; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } // Prevent triggering MouseWheel events that are not real scroll events: + // E.g. when clicking the MiddleMouseWheelButton, a deltaY of 0 is emitted. + // See https://github.com/cornerstonejs/cornerstoneTools/issues/935 + + + if (evt.deltaY > -1 && evt.deltaY < 1) { + return; + } + + evt.preventDefault(); + var pageX = evt.pageX, + pageY = evt.pageY; + var startingCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, pageX, pageY); + + var _normalizeWheel = Object(_internals_normalizeWheel_js__WEBPACK_IMPORTED_MODULE_3__["default"])(evt), + spinX = _normalizeWheel.spinX, + spinY = _normalizeWheel.spinY, + pixelX = _normalizeWheel.pixelX, + pixelY = _normalizeWheel.pixelY; + + var direction = spinY < 0 ? -1 : 1; + var mouseWheelData = { + element: element, + viewport: _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getViewport(element), + detail: evt, + image: enabledElement.image, + direction: direction, + spinX: spinX, + spinY: spinY, + pixelX: pixelX, + pixelY: pixelY, + pageX: pageX, + pageY: pageY, + imageX: startingCoords.x, + imageY: startingCoords.y + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_WHEEL, mouseWheelData); +} +/** + * Listens for the wheel event, and handles it. Handled event + * will be "normalized" and re-emitted as `EVENTS.MOUSE_WHEEL` + * + * @private + * @param {HTMLElement} element + * @returns {undefined} + */ + + +function enable(element) { + disable(element); + //element.addEventListener('wheel', wheelEventHandler, { + // passive: false + //}); +} +/** + * Removes listener and handler for wheel event. `EVENTS.MOUSE_WHEEL` + * will no longer be emitted. + * + * @private + * @param {HTMLElement} element + * @returns {undefined} + */ + + +function disable(element) { + element.removeEventListener('wheel', wheelEventHandler, { + passive: false + }); +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./eventListeners/windowResizeHandler.js": +/*!***********************************************!*\ + !*** ./eventListeners/windowResizeHandler.js ***! + \***********************************************/ +/*! exports provided: forceEnabledElementResize, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "forceEnabledElementResize", function() { return forceEnabledElementResize; }); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); + + + +var enable = function enable() { + disable(); // Clean up any lingering listeners + + window.addEventListener('resize', resizeThrottler, false); +}; + +var disable = function disable() { + window.removeEventListener('resize', resizeThrottler, false); +}; + +var resizeTimeout; + +function resizeThrottler() { + // Ignore resize events as long as an actualResizeHandler execution is in the queue + if (!resizeTimeout) { + resizeTimeout = setTimeout(function () { + resizeTimeout = null; + forceEnabledElementResize(); // The actualResizeHandler will execute at a rate of 15fps + }, 66); + } +} + +var forceEnabledElementResize = function forceEnabledElementResize() { + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].enabledElements.forEach(function (element) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.resize(element); + }); +}; +/* harmony default export */ __webpack_exports__["default"] = ({ + enable: enable, + disable: disable +}); + +/***/ }), + +/***/ "./events.js": +/*!*******************!*\ + !*** ./events.js ***! + \*******************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Enumerates the events for CornestoneTools. Native events are captured, + * normalized, and re-triggered with a `cornerstonetools` prefix. This allows + * us to handle events consistently across different browsers. + * + * @enum {String} + * @memberof CornerstoneTools + * @readonly + */ +var EVENTS = { + // + // MOUSE + // + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/mousedown + * @type {String} + */ + MOUSE_DOWN: 'cornerstonetoolsmousedown', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/mouseup + * @type {String} + */ + MOUSE_UP: 'cornerstonetoolsmouseup', + + /** + * Is fired if a handled `MOUSE_DOWN` event does not `stopPropagation`. The hook + * we use to create new measurement data for mouse events. + * @type {String} + */ + MOUSE_DOWN_ACTIVATE: 'cornerstonetoolsmousedownactivate', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/drag + * @type {String} + */ + MOUSE_DRAG: 'cornerstonetoolsmousedrag', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/mousemove + * @type {String} + */ + MOUSE_MOVE: 'cornerstonetoolsmousemove', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/click + * @type {String} + */ + MOUSE_CLICK: 'cornerstonetoolsmouseclick', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/dblclick + * @type {String} + */ + MOUSE_DOUBLE_CLICK: 'cornerstonetoolsmousedoubleclick', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/wheel + * @type {String} + */ + MOUSE_WHEEL: 'cornerstonetoolsmousewheel', + // + // TOUCH + // + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/touchstart + * @type {String} + */ + TOUCH_START: 'cornerstonetoolstouchstart', + + /** + * Is fired if a handled `TOUCH_START` event does not `stopPropagation`. The hook + * we use to create new measurement data for touch events. + * @type {String} + */ + TOUCH_START_ACTIVE: 'cornerstonetoolstouchstartactive', + + /** + * @type {String} + */ + TOUCH_END: 'cornerstonetoolstouchend', + + /** + * @type {String} + */ + TOUCH_DRAG: 'cornerstonetoolstouchdrag', + + /** + * @type {String} + */ + TOUCH_DRAG_END: 'cornerstonetoolstouchdragend', + + /** + * http://hammerjs.github.io/recognizer-pinch/ + * @type {String} + */ + TOUCH_PINCH: 'cornerstonetoolstouchpinch', + + /** + * http://hammerjs.github.io/recognizer-rotate/ + * @type {String} + */ + TOUCH_ROTATE: 'cornerstonetoolstouchrotate', + + /** + * http://hammerjs.github.io/recognizer-press/ + * @type {String} + */ + TOUCH_PRESS: 'cornerstonetoolstouchpress', + + /** + * http://hammerjs.github.io/recognizer-tap/ + * @type {String} + */ + TAP: 'cornerstonetoolstap', + + /** + * @type {String} + */ + DOUBLE_TAP: 'cornerstonetoolsdoubletap', + + /** + * @type {String} + */ + MULTI_TOUCH_START: 'cornerstonetoolsmultitouchstart', + + /** + * @type {String} + */ + MULTI_TOUCH_START_ACTIVE: 'cornerstonetoolsmultitouchstartactive', + + /** + * @type {String} + */ + MULTI_TOUCH_DRAG: 'cornerstonetoolsmultitouchdrag', + // + // KEYBOARD + // + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/keydown + * @type {String} + */ + KEY_DOWN: 'cornerstonetoolskeydown', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/keyup + * @type {String} + */ + KEY_UP: 'cornerstonetoolskeyup', + + /** + * https://developer.mozilla.org/en-US/docs/Web/Events/keypress + * @type {String} + */ + KEY_PRESS: 'cornerstonetoolskeypress', + // + // CUSTOM + // + + /** + * @type {String} + */ + MEASUREMENT_ADDED: 'cornerstonetoolsmeasurementadded', + + /** + * @type {String} + */ + MEASUREMENT_MODIFIED: 'cornerstonetoolsmeasurementmodified', + + /** + * @type {String} + */ + MEASUREMENT_COMPLETED: 'cornerstonetoolsmeasurementcompleted', + + /** + * @type {String} + */ + MEASUREMENT_REMOVED: 'cornerstonetoolsmeasurementremoved', + + /** + * @type {String} + */ + TOOL_DEACTIVATED: 'cornerstonetoolstooldeactivated', + + /** + * @type {String} + */ + CLIP_STOPPED: 'cornerstonetoolsclipstopped', + + /** + * @type {String} + */ + STACK_SCROLL: 'cornerstonetoolsstackscroll', + + /** + * @type {String} + */ + STACK_PREFETCH_IMAGE_LOADED: 'cornerstonetoolsstackprefetchimageloaded', + + /** + * @type {String} + */ + STACK_PREFETCH_DONE: 'cornerstonetoolsstackprefetchdone', + + /** + * @type {String} + */ + LABELMAP_MODIFIED: 'cornersontetoolslabelmapmodified' +}; +/* harmony default export */ __webpack_exports__["default"] = (EVENTS); + +/***/ }), + +/***/ "./externalModules.js": +/*!****************************!*\ + !*** ./externalModules.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var cornerstone = window.cornerstone; +var cornerstoneMath = window.cornerstoneMath; +var Hammer = window.Hammer; +/* harmony default export */ __webpack_exports__["default"] = ({ + set cornerstone(cs) { + cornerstone = cs; + }, + + get cornerstone() { + return cornerstone; + }, + + set cornerstoneMath(cm) { + cornerstoneMath = cm; + }, + + get cornerstoneMath() { + return cornerstoneMath; + }, + + set Hammer(module) { + Hammer = module; + }, + + get Hammer() { + return Hammer; + } + +}); + +/***/ }), + +/***/ "./importInternal.js": +/*!***************************!*\ + !*** ./importInternal.js ***! + \***************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _lib_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib.js */ "./lib.js"); + +/** + * Imports functionality from cornerstoneTools for use in external packages/plugins. + * @param {string} uri the import path for the entity to import. + * @returns {Class|Object|Function} The entity requested. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (uri) { + return _lib_js__WEBPACK_IMPORTED_MODULE_0__["lib"][uri]; +}); + +/***/ }), + +/***/ "./index.js": +/*!******************!*\ + !*** ./index.js ***! + \******************/ +/*! exports provided: AngleTool, ArrowAnnotateTool, BidirectionalTool, CircleRoiTool, CobbAngleTool, EllipticalRoiTool, FreehandRoiTool, LengthTool, ProbeTool, RectangleRoiTool, TextMarkerTool, BrushTool, SphericalBrushTool, RectangleScissorsTool, FreehandScissorsTool, CircleScissorsTool, CorrectionScissorsTool, CrosshairsTool, DoubleTapFitToWindowTool, DragProbeTool, EraserTool, FreehandRoiSculptorTool, MagnifyTool, OverlayTool, OrientationMarkersTool, PanMultiTouchTool, PanTool, ReferenceLinesTool, RotateTool, RotateTouchTool, ScaleOverlayTool, StackScrollMouseWheelTool, StackScrollMultiTouchTool, StackScrollTool, WwwcRegionTool, WwwcTool, ZoomMouseWheelTool, ZoomTool, ZoomTouchPinchTool, init, stackPrefetch, stackRenderers, playClip, stopClip, store, getModule, getToolForElement, addTool, addToolForElement, removeTool, removeToolForElement, setToolOptions, setToolOptionsForElement, isToolActiveForElement, setToolActive, setToolActiveForElement, setToolEnabled, setToolEnabledForElement, setToolDisabled, setToolDisabledForElement, setToolPassive, setToolPassiveForElement, addToolState, getToolState, removeToolState, clearToolState, setElementToolStateManager, getElementToolStateManager, textStyle, toolStyle, toolColors, toolCoordinates, stackSpecificStateManager, newStackSpecificToolStateManager, addStackStateManager, loadHandlerManager, newImageIdSpecificToolStateManager, globalImageIdSpecificToolStateManager, newFrameOfReferenceSpecificToolStateManager, globalFrameOfReferenceSpecificToolStateManager, forceEnabledElementResize, orientation, SaveAs, enableLogger, disableLogger, register, registerSome, wwwcSynchronizer, updateImageSynchronizer, Synchronizer, stackScrollSynchronizer, stackImagePositionSynchronizer, stackImagePositionOffsetSynchronizer, stackImageIndexSynchronizer, panZoomSynchronizer, requestPoolManager, importInternal, external, EVENTS, version, import, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./tools/annotation/index.js */ "./tools/annotation/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AngleTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["AngleTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ArrowAnnotateTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["ArrowAnnotateTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BidirectionalTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["BidirectionalTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CircleRoiTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["CircleRoiTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CobbAngleTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["CobbAngleTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EllipticalRoiTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["EllipticalRoiTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandRoiTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["FreehandRoiTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "LengthTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["LengthTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ProbeTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["ProbeTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RectangleRoiTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["RectangleRoiTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "TextMarkerTool", function() { return _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["TextMarkerTool"]; }); + +/* harmony import */ var _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./tools/segmentation/index.js */ "./tools/segmentation/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BrushTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["BrushTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SphericalBrushTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["SphericalBrushTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RectangleScissorsTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["RectangleScissorsTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandScissorsTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["FreehandScissorsTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CircleScissorsTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["CircleScissorsTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CorrectionScissorsTool", function() { return _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["CorrectionScissorsTool"]; }); + +/* harmony import */ var _tools_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tools/index.js */ "./tools/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CrosshairsTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["CrosshairsTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DoubleTapFitToWindowTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["DoubleTapFitToWindowTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragProbeTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["DragProbeTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EraserTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["EraserTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandRoiSculptorTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["FreehandRoiSculptorTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "MagnifyTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["MagnifyTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "OverlayTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["OverlayTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "OrientationMarkersTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["OrientationMarkersTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PanMultiTouchTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["PanMultiTouchTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PanTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["PanTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ReferenceLinesTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ReferenceLinesTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RotateTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["RotateTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RotateTouchTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["RotateTouchTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ScaleOverlayTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ScaleOverlayTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollMouseWheelTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollMouseWheelTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollMultiTouchTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollMultiTouchTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "WwwcRegionTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["WwwcRegionTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "WwwcTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["WwwcTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomMouseWheelTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomMouseWheelTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomTouchPinchTool", function() { return _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomTouchPinchTool"]; }); + +/* harmony import */ var _init_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./init.js */ "./init.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "init", function() { return _init_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _stackTools_stackPrefetch_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./stackTools/stackPrefetch.js */ "./stackTools/stackPrefetch.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackPrefetch", function() { return _stackTools_stackPrefetch_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _stackTools_stackRenderers_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./stackTools/stackRenderers.js */ "./stackTools/stackRenderers.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackRenderers", function() { return _stackTools_stackRenderers_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + +/* harmony import */ var _stackTools_playClip_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./stackTools/playClip.js */ "./stackTools/playClip.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "playClip", function() { return _stackTools_playClip_js__WEBPACK_IMPORTED_MODULE_6__["playClip"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stopClip", function() { return _stackTools_playClip_js__WEBPACK_IMPORTED_MODULE_6__["stopClip"]; }); + +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./store/index.js */ "./store/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "store", function() { return _store_index_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getModule", function() { return _store_index_js__WEBPACK_IMPORTED_MODULE_7__["getModule"]; }); + +/* harmony import */ var _store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./store/getToolForElement.js */ "./store/getToolForElement.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getToolForElement", function() { return _store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _store_addTool_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./store/addTool.js */ "./store/addTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addTool", function() { return _store_addTool_js__WEBPACK_IMPORTED_MODULE_9__["addTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addToolForElement", function() { return _store_addTool_js__WEBPACK_IMPORTED_MODULE_9__["addToolForElement"]; }); + +/* harmony import */ var _store_removeTool_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./store/removeTool.js */ "./store/removeTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeTool", function() { return _store_removeTool_js__WEBPACK_IMPORTED_MODULE_10__["removeTool"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeToolForElement", function() { return _store_removeTool_js__WEBPACK_IMPORTED_MODULE_10__["removeToolForElement"]; }); + +/* harmony import */ var _store_setToolOptions_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./store/setToolOptions.js */ "./store/setToolOptions.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolOptions", function() { return _store_setToolOptions_js__WEBPACK_IMPORTED_MODULE_11__["setToolOptions"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolOptionsForElement", function() { return _store_setToolOptions_js__WEBPACK_IMPORTED_MODULE_11__["setToolOptionsForElement"]; }); + +/* harmony import */ var _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./store/setToolMode.js */ "./store/setToolMode.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolActive", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolActive"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolActiveForElement", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolActiveForElement"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolEnabled", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolEnabled"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolEnabledForElement", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolEnabledForElement"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolDisabled", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolDisabled"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolDisabledForElement", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolDisabledForElement"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolPassive", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolPassive"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setToolPassiveForElement", function() { return _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolPassiveForElement"]; }); + +/* harmony import */ var _store_isToolActiveForElement__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./store/isToolActiveForElement */ "./store/isToolActiveForElement.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isToolActiveForElement", function() { return _store_isToolActiveForElement__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addToolState", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["addToolState"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getToolState", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["getToolState"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeToolState", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["removeToolState"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "clearToolState", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["clearToolState"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setElementToolStateManager", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["setElementToolStateManager"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getElementToolStateManager", function() { return _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["getElementToolStateManager"]; }); + +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "textStyle", function() { return _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_15__["default"]; }); + +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toolStyle", function() { return _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_16__["default"]; }); + +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toolColors", function() { return _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_17__["default"]; }); + +/* harmony import */ var _stateManagement_toolCoordinates_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./stateManagement/toolCoordinates.js */ "./stateManagement/toolCoordinates.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toolCoordinates", function() { return _stateManagement_toolCoordinates_js__WEBPACK_IMPORTED_MODULE_18__["default"]; }); + +/* harmony import */ var _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./stateManagement/stackSpecificStateManager.js */ "./stateManagement/stackSpecificStateManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackSpecificStateManager", function() { return _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["stackSpecificStateManager"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "newStackSpecificToolStateManager", function() { return _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["newStackSpecificToolStateManager"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "addStackStateManager", function() { return _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["addStackStateManager"]; }); + +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "loadHandlerManager", function() { return _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_20__["default"]; }); + +/* harmony import */ var _stateManagement_imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./stateManagement/imageIdSpecificStateManager.js */ "./stateManagement/imageIdSpecificStateManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "newImageIdSpecificToolStateManager", function() { return _stateManagement_imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_21__["newImageIdSpecificToolStateManager"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "globalImageIdSpecificToolStateManager", function() { return _stateManagement_imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_21__["globalImageIdSpecificToolStateManager"]; }); + +/* harmony import */ var _stateManagement_frameOfReferenceStateManager_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./stateManagement/frameOfReferenceStateManager.js */ "./stateManagement/frameOfReferenceStateManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "newFrameOfReferenceSpecificToolStateManager", function() { return _stateManagement_frameOfReferenceStateManager_js__WEBPACK_IMPORTED_MODULE_22__["newFrameOfReferenceSpecificToolStateManager"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "globalFrameOfReferenceSpecificToolStateManager", function() { return _stateManagement_frameOfReferenceStateManager_js__WEBPACK_IMPORTED_MODULE_22__["globalFrameOfReferenceSpecificToolStateManager"]; }); + +/* harmony import */ var _eventListeners_windowResizeHandler_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./eventListeners/windowResizeHandler.js */ "./eventListeners/windowResizeHandler.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "forceEnabledElementResize", function() { return _eventListeners_windowResizeHandler_js__WEBPACK_IMPORTED_MODULE_23__["forceEnabledElementResize"]; }); + +/* harmony import */ var _orientation_index_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./orientation/index.js */ "./orientation/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "orientation", function() { return _orientation_index_js__WEBPACK_IMPORTED_MODULE_24__["default"]; }); + +/* harmony import */ var _util_SaveAs_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./util/SaveAs.js */ "./util/SaveAs.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SaveAs", function() { return _util_SaveAs_js__WEBPACK_IMPORTED_MODULE_25__["default"]; }); + +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./util/logger.js */ "./util/logger.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "enableLogger", function() { return _util_logger_js__WEBPACK_IMPORTED_MODULE_26__["enable"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "disableLogger", function() { return _util_logger_js__WEBPACK_IMPORTED_MODULE_26__["disable"]; }); + +/* harmony import */ var _thirdParty_register_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./thirdParty/register.js */ "./thirdParty/register.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "register", function() { return _thirdParty_register_js__WEBPACK_IMPORTED_MODULE_27__["default"]; }); + +/* harmony import */ var _thirdParty_registerSome_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./thirdParty/registerSome.js */ "./thirdParty/registerSome.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "registerSome", function() { return _thirdParty_registerSome_js__WEBPACK_IMPORTED_MODULE_28__["default"]; }); + +/* harmony import */ var _synchronization_wwwcSynchronizer_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./synchronization/wwwcSynchronizer.js */ "./synchronization/wwwcSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "wwwcSynchronizer", function() { return _synchronization_wwwcSynchronizer_js__WEBPACK_IMPORTED_MODULE_29__["default"]; }); + +/* harmony import */ var _synchronization_updateImageSynchronizer_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./synchronization/updateImageSynchronizer.js */ "./synchronization/updateImageSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "updateImageSynchronizer", function() { return _synchronization_updateImageSynchronizer_js__WEBPACK_IMPORTED_MODULE_30__["default"]; }); + +/* harmony import */ var _synchronization_Synchronizer_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./synchronization/Synchronizer.js */ "./synchronization/Synchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Synchronizer", function() { return _synchronization_Synchronizer_js__WEBPACK_IMPORTED_MODULE_31__["default"]; }); + +/* harmony import */ var _synchronization_stackScrollSynchronizer_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./synchronization/stackScrollSynchronizer.js */ "./synchronization/stackScrollSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackScrollSynchronizer", function() { return _synchronization_stackScrollSynchronizer_js__WEBPACK_IMPORTED_MODULE_32__["default"]; }); + +/* harmony import */ var _synchronization_stackImagePositionSynchronizer_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./synchronization/stackImagePositionSynchronizer.js */ "./synchronization/stackImagePositionSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackImagePositionSynchronizer", function() { return _synchronization_stackImagePositionSynchronizer_js__WEBPACK_IMPORTED_MODULE_33__["default"]; }); + +/* harmony import */ var _synchronization_stackImagePositionOffsetSynchronizer_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./synchronization/stackImagePositionOffsetSynchronizer.js */ "./synchronization/stackImagePositionOffsetSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackImagePositionOffsetSynchronizer", function() { return _synchronization_stackImagePositionOffsetSynchronizer_js__WEBPACK_IMPORTED_MODULE_34__["default"]; }); + +/* harmony import */ var _synchronization_stackImageIndexSynchronizer_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./synchronization/stackImageIndexSynchronizer.js */ "./synchronization/stackImageIndexSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "stackImageIndexSynchronizer", function() { return _synchronization_stackImageIndexSynchronizer_js__WEBPACK_IMPORTED_MODULE_35__["default"]; }); + +/* harmony import */ var _synchronization_panZoomSynchronizer_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./synchronization/panZoomSynchronizer.js */ "./synchronization/panZoomSynchronizer.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "panZoomSynchronizer", function() { return _synchronization_panZoomSynchronizer_js__WEBPACK_IMPORTED_MODULE_36__["default"]; }); + +/* harmony import */ var _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./requestPool/requestPoolManager.js */ "./requestPool/requestPoolManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "requestPoolManager", function() { return _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_37__["default"]; }); + +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./externalModules.js */ "./externalModules.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "external", function() { return _externalModules_js__WEBPACK_IMPORTED_MODULE_38__["default"]; }); + +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./events.js */ "./events.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EVENTS", function() { return _events_js__WEBPACK_IMPORTED_MODULE_39__["default"]; }); + +/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./version.js */ "./version.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "version", function() { return _version_js__WEBPACK_IMPORTED_MODULE_40__["default"]; }); + +/* harmony import */ var _importInternal_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./importInternal.js */ "./importInternal.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "importInternal", function() { return _importInternal_js__WEBPACK_IMPORTED_MODULE_41__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "import", function() { return _importInternal_js__WEBPACK_IMPORTED_MODULE_41__["default"]; }); + +/** + * Root + * @namespace CornerstoneTools + */ + +/** + * Drawing API to assist in consistent annotation creation + * @namespace Drawing + */ + +/** + * Event dispatchers listen for events from `cornerstone` and `enabledElements`. Dispatchers + * choose which tool(s) get to handle the event by looking at callbacks, priority, and other factors. + * @private + * @namespace EventDispatchers + */ + +/** + * Event listeners normalize events emitted by `cornerstone` and `enabledElements`. The listeners + * then re-emit events prefixed with `cornerstonetools`. For example, `mousemove` becomes `cornerstonetoolsmousemove`. + * Most of these events are caught by an `eventDispatcher`, and used to shape tool behavior. + * @private + * @namespace EventListeners + */ + +/** + * Manipulators describe a tool's `handle` behavior. Leveraging a small set of manipulators + * allows us to create a consistent experience when interacting with tools via their handles. + * @namespace Manipulators + */ + +/** + * Mixins are "tool beahviors" that can be added to a tool via its mixin + * array configuration property + * @namespace Mixins + */ + +/** + * StateManagement + * @namespace StateManagement + */ + +/** + * Sync + * @namespace Synchronization + */ + +/** + * Third party + * @namespace ThirdParty + */ + +/** + * Tools + * @namespace Tools + */ + +/** + * Tools that extend the {@link #Tools.Base.BaseAnnotationTool|`BaseAnnotationTool`} + * @namespace Tools.Annotation + */ + +/** + * The parent (abstract) classes that all tools derive from. + * @namespace Tools.Base + */ + +/** + * Tools that extend the {@link #Tools.Base.BaseBrushTool|`BaseBrushTool`} + * @namespace Tools.Brush + */ + +/** + * Util + * @namespace Util + */ + + + + // ~~~~~~ STACK TOOLS ~~~~~ // + + + + // ~~~~~~ STATE MANAGEMENT ~~~~~ // + + + + + + + + + + + + + + + + + + + // ~~~~~~ ORIENTATION ~~~~~ // + + // ~~~~~~ CANVAS EXPORT ~~~~~ // + + + // ~~~~~~ THIRD PARTY SUPPORT ~~~~~ // + + + // ~~~~~~ SYNCHRONIZERS ~~~~~ // + + + + + + + + + // ~~~~~~ REQUEST POOL MANAGER ~~~~~ // + + + + + + +var cornerstoneTools = { + // ~~~ TOOLS + // ~ Annotation Tools + AngleTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["AngleTool"], + ArrowAnnotateTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["ArrowAnnotateTool"], + BidirectionalTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["BidirectionalTool"], + CircleRoiTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["CircleRoiTool"], + CobbAngleTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["CobbAngleTool"], + EllipticalRoiTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["EllipticalRoiTool"], + FreehandRoiTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["FreehandRoiTool"], + LengthTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["LengthTool"], + ProbeTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["ProbeTool"], + RectangleRoiTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["RectangleRoiTool"], + TextMarkerTool: _tools_annotation_index_js__WEBPACK_IMPORTED_MODULE_0__["TextMarkerTool"], + // ~ Segmentation Tools + BrushTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["BrushTool"], + SphericalBrushTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["SphericalBrushTool"], + RectangleScissorsTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["RectangleScissorsTool"], + FreehandScissorsTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["FreehandScissorsTool"], + CircleScissorsTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["CircleScissorsTool"], + CorrectionScissorsTool: _tools_segmentation_index_js__WEBPACK_IMPORTED_MODULE_1__["CorrectionScissorsTool"], + // ~ Tools + CrosshairsTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["CrosshairsTool"], + DoubleTapFitToWindowTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["DoubleTapFitToWindowTool"], + DragProbeTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["DragProbeTool"], + EraserTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["EraserTool"], + FreehandRoiSculptorTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["FreehandRoiSculptorTool"], + MagnifyTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["MagnifyTool"], + OverlayTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["OverlayTool"], + OrientationMarkersTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["OrientationMarkersTool"], + PanMultiTouchTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["PanMultiTouchTool"], + PanTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["PanTool"], + ReferenceLinesTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ReferenceLinesTool"], + RotateTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["RotateTool"], + RotateTouchTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["RotateTouchTool"], + ScaleOverlayTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ScaleOverlayTool"], + StackScrollMouseWheelTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollMouseWheelTool"], + StackScrollMultiTouchTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollMultiTouchTool"], + StackScrollTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["StackScrollTool"], + WwwcRegionTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["WwwcRegionTool"], + WwwcTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["WwwcTool"], + ZoomMouseWheelTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomMouseWheelTool"], + ZoomTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomTool"], + ZoomTouchPinchTool: _tools_index_js__WEBPACK_IMPORTED_MODULE_2__["ZoomTouchPinchTool"], + init: _init_js__WEBPACK_IMPORTED_MODULE_3__["default"], + stackPrefetch: _stackTools_stackPrefetch_js__WEBPACK_IMPORTED_MODULE_4__["default"], + stackRenderers: _stackTools_stackRenderers_js__WEBPACK_IMPORTED_MODULE_5__["default"], + playClip: _stackTools_playClip_js__WEBPACK_IMPORTED_MODULE_6__["playClip"], + stopClip: _stackTools_playClip_js__WEBPACK_IMPORTED_MODULE_6__["stopClip"], + store: _store_index_js__WEBPACK_IMPORTED_MODULE_7__["default"], + getModule: _store_index_js__WEBPACK_IMPORTED_MODULE_7__["getModule"], + getToolForElement: _store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_8__["default"], + addTool: _store_addTool_js__WEBPACK_IMPORTED_MODULE_9__["addTool"], + addToolForElement: _store_addTool_js__WEBPACK_IMPORTED_MODULE_9__["addToolForElement"], + removeTool: _store_removeTool_js__WEBPACK_IMPORTED_MODULE_10__["removeTool"], + removeToolForElement: _store_removeTool_js__WEBPACK_IMPORTED_MODULE_10__["removeToolForElement"], + setToolOptions: _store_setToolOptions_js__WEBPACK_IMPORTED_MODULE_11__["setToolOptions"], + setToolOptionsForElement: _store_setToolOptions_js__WEBPACK_IMPORTED_MODULE_11__["setToolOptionsForElement"], + isToolActiveForElement: _store_isToolActiveForElement__WEBPACK_IMPORTED_MODULE_13__["default"], + setToolActive: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolActive"], + setToolActiveForElement: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolActiveForElement"], + setToolEnabled: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolEnabled"], + setToolEnabledForElement: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolEnabledForElement"], + setToolDisabled: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolDisabled"], + setToolDisabledForElement: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolDisabledForElement"], + setToolPassive: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolPassive"], + setToolPassiveForElement: _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_12__["setToolPassiveForElement"], + addToolState: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["addToolState"], + getToolState: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["getToolState"], + removeToolState: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["removeToolState"], + clearToolState: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["clearToolState"], + setElementToolStateManager: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["setElementToolStateManager"], + getElementToolStateManager: _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_14__["getElementToolStateManager"], + textStyle: _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_15__["default"], + toolStyle: _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_16__["default"], + toolColors: _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_17__["default"], + toolCoordinates: _stateManagement_toolCoordinates_js__WEBPACK_IMPORTED_MODULE_18__["default"], + stackSpecificStateManager: _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["stackSpecificStateManager"], + newStackSpecificToolStateManager: _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["newStackSpecificToolStateManager"], + addStackStateManager: _stateManagement_stackSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_19__["addStackStateManager"], + loadHandlerManager: _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_20__["default"], + newImageIdSpecificToolStateManager: _stateManagement_imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_21__["newImageIdSpecificToolStateManager"], + globalImageIdSpecificToolStateManager: _stateManagement_imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_21__["globalImageIdSpecificToolStateManager"], + newFrameOfReferenceSpecificToolStateManager: _stateManagement_frameOfReferenceStateManager_js__WEBPACK_IMPORTED_MODULE_22__["newFrameOfReferenceSpecificToolStateManager"], + globalFrameOfReferenceSpecificToolStateManager: _stateManagement_frameOfReferenceStateManager_js__WEBPACK_IMPORTED_MODULE_22__["globalFrameOfReferenceSpecificToolStateManager"], + forceEnabledElementResize: _eventListeners_windowResizeHandler_js__WEBPACK_IMPORTED_MODULE_23__["forceEnabledElementResize"], + orientation: _orientation_index_js__WEBPACK_IMPORTED_MODULE_24__["default"], + SaveAs: _util_SaveAs_js__WEBPACK_IMPORTED_MODULE_25__["default"], + enableLogger: _util_logger_js__WEBPACK_IMPORTED_MODULE_26__["enable"], + disableLogger: _util_logger_js__WEBPACK_IMPORTED_MODULE_26__["disable"], + importInternal: _importInternal_js__WEBPACK_IMPORTED_MODULE_41__["default"], + import: _importInternal_js__WEBPACK_IMPORTED_MODULE_41__["default"], + register: _thirdParty_register_js__WEBPACK_IMPORTED_MODULE_27__["default"], + registerSome: _thirdParty_registerSome_js__WEBPACK_IMPORTED_MODULE_28__["default"], + wwwcSynchronizer: _synchronization_wwwcSynchronizer_js__WEBPACK_IMPORTED_MODULE_29__["default"], + updateImageSynchronizer: _synchronization_updateImageSynchronizer_js__WEBPACK_IMPORTED_MODULE_30__["default"], + Synchronizer: _synchronization_Synchronizer_js__WEBPACK_IMPORTED_MODULE_31__["default"], + stackScrollSynchronizer: _synchronization_stackScrollSynchronizer_js__WEBPACK_IMPORTED_MODULE_32__["default"], + stackImagePositionSynchronizer: _synchronization_stackImagePositionSynchronizer_js__WEBPACK_IMPORTED_MODULE_33__["default"], + stackImagePositionOffsetSynchronizer: _synchronization_stackImagePositionOffsetSynchronizer_js__WEBPACK_IMPORTED_MODULE_34__["default"], + stackImageIndexSynchronizer: _synchronization_stackImageIndexSynchronizer_js__WEBPACK_IMPORTED_MODULE_35__["default"], + panZoomSynchronizer: _synchronization_panZoomSynchronizer_js__WEBPACK_IMPORTED_MODULE_36__["default"], + requestPoolManager: _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_37__["default"], + external: _externalModules_js__WEBPACK_IMPORTED_MODULE_38__["default"], + EVENTS: _events_js__WEBPACK_IMPORTED_MODULE_39__["default"], + version: _version_js__WEBPACK_IMPORTED_MODULE_40__["default"] +}; // Named Exports + + + +/* harmony default export */ __webpack_exports__["default"] = (cornerstoneTools); + +/***/ }), + +/***/ "./init.js": +/*!*****************!*\ + !*** ./init.js ***! + \*****************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./store/index.js */ "./store/index.js"); +/* harmony import */ var _store_internals_addEnabledElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./store/internals/addEnabledElement.js */ "./store/internals/addEnabledElement.js"); +/* harmony import */ var _store_internals_removeEnabledElement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./store/internals/removeEnabledElement.js */ "./store/internals/removeEnabledElement.js"); +/* harmony import */ var _eventListeners_windowResizeHandler_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./eventListeners/windowResizeHandler.js */ "./eventListeners/windowResizeHandler.js"); + + + + + +/** + * Merges the provided configuration with default values and returns a + * configured CornerstoneTools instance. + * @export + * @public + * @method + * @name init + * + * @param {Object|Object[]} [defaultConfiguration = {}] The configuration to apply. Assumed globalConfiguration + * only one value, otherwise moduleName, configuration entires in an array. + * @returns {Object} A configured CornerstoneTools instance with top level API members. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function () { + var defaultConfiguration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _addCornerstoneEventListeners(); + + _initModules(); + + var globalConfigurationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_1__["getModule"])('globalConfiguration'); + + if (Array.isArray(defaultConfiguration)) { + defaultConfiguration.forEach(function (configurationEntry) { + var moduleName = configurationEntry.moduleName, + configuration = configurationEntry.configuration; + var module = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_1__["getModule"])(moduleName); + + if (module) { + module.configuration = Object.assign({}, module.configuration, configuration); + } + }); + } else { + // defaultConfiguration is an object, default to assigning it to globalConfiguration. + globalConfigurationModule.configuration = Object.assign({}, globalConfigurationModule.configuration, defaultConfiguration); + } + + if (globalConfigurationModule.configuration.autoResizeViewports) { + _eventListeners_windowResizeHandler_js__WEBPACK_IMPORTED_MODULE_4__["default"].enable(); + } +}); +/** + * Wires up event listeners for the Cornerstone#ElementDisabled and + * Cornerstone#ElementEnabled events. + * @private + * @method + * @returns {void} + */ + +function _addCornerstoneEventListeners() { + // Clear any listeners that may already be set + _removeCornerstoneEventListeners(); + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var elementEnabledEvent = cornerstone.EVENTS.ELEMENT_ENABLED; + var elementDisabledEvent = cornerstone.EVENTS.ELEMENT_DISABLED; + cornerstone.events.addEventListener(elementEnabledEvent, _store_internals_addEnabledElement_js__WEBPACK_IMPORTED_MODULE_2__["default"]); + cornerstone.events.addEventListener(elementDisabledEvent, _store_internals_removeEnabledElement_js__WEBPACK_IMPORTED_MODULE_3__["default"]); +} +/** + * Removes event listeners for the Cornerstone#ElementDisabled and + * Cornerstone#ElementEnabled events. + * @private + * @method + * @returns {void} + */ + + +function _removeCornerstoneEventListeners() { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var elementEnabledEvent = cornerstone.EVENTS.ELEMENT_ENABLED; + var elementDisabledEvent = cornerstone.EVENTS.ELEMENT_DISABLED; + cornerstone.events.removeEventListener(elementEnabledEvent, _store_internals_addEnabledElement_js__WEBPACK_IMPORTED_MODULE_2__["default"]); + cornerstone.events.removeEventListener(elementDisabledEvent, _store_internals_removeEnabledElement_js__WEBPACK_IMPORTED_MODULE_3__["default"]); +} +/* + * TODO: This could cause issues if the module was already initialized for + * the store. As there's nothing stopping implementers from calling `init` + * multiple times. Modules should self-check if they have already been + * registered to prevent issues. + */ + +/** + * Iterate over our store's modules. If the module has an `onRegisterCallback` + * call it. This hook can be used to setup any global store requirements per + * module. + * @private + * @method + * @returns {void} + */ + + +function _initModules() { + var modules = _store_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].modules; + Object.keys(modules).forEach(function (key) { + if (typeof modules[key].onRegisterCallback === 'function') { + modules[key].onRegisterCallback(); + } + }); +} + +/***/ }), + +/***/ "./lib.js": +/*!****************!*\ + !*** ./lib.js ***! + \****************/ +/*! exports provided: lib */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lib", function() { return lib; }); +/* harmony import */ var _tools_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./tools/base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./tools/base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _tools_base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tools/base/BaseBrushTool.js */ "./tools/base/BaseBrushTool.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util/findAndMoveHelpers.js */ "./util/findAndMoveHelpers.js"); +/* harmony import */ var _mixins_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./mixins/index.js */ "./mixins/index.js"); +/* harmony import */ var _tools_cursors_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./tools/cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./util/clip.js */ "./util/clip.js"); +/* harmony import */ var _util_debounce__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./util/debounce */ "./util/debounce.js"); +/* harmony import */ var _util_deepmerge__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./util/deepmerge */ "./util/deepmerge.js"); +/* harmony import */ var _util_getDefault__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./util/getDefault */ "./util/getDefault.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./util/getPixelSpacing */ "./util/getPixelSpacing.js"); +/* harmony import */ var _util_isEmptyObject__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./util/isEmptyObject */ "./util/isEmptyObject.js"); +/* harmony import */ var _util_isObject__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./util/isObject */ "./util/isObject.js"); +/* harmony import */ var _util_isPointInImage__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./util/isPointInImage */ "./util/isPointInImage.js"); +/* harmony import */ var _util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./util/isPointInPolygon */ "./util/isPointInPolygon.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./util/throttle */ "./util/throttle.js"); +/* harmony import */ var _util_wait__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./util/wait */ "./util/wait.js"); +/* harmony import */ var _util_getKeyPressData__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./util/getKeyPressData */ "./util/getKeyPressData.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _drawing_drawArrow_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./drawing/drawArrow.js */ "./drawing/drawArrow.js"); +/* harmony import */ var _drawing_drawLink_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./drawing/drawLink.js */ "./drawing/drawLink.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _util_getLuminance_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./util/getLuminance.js */ "./util/getLuminance.js"); +/* harmony import */ var _util_getROITextBoxCoords__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./util/getROITextBoxCoords */ "./util/getROITextBoxCoords.js"); +/* harmony import */ var _util_copyPoints_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./util/copyPoints.js */ "./util/copyPoints.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _util_setContextToDisplayFontSize_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./util/setContextToDisplayFontSize.js */ "./util/setContextToDisplayFontSize.js"); +/* harmony import */ var _util_scrollToIndex_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./util/scrollToIndex.js */ "./util/scrollToIndex.js"); +/* harmony import */ var _util_scroll_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./util/scroll.js */ "./util/scroll.js"); +/* harmony import */ var _util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./util/roundToDecimal.js */ "./util/roundToDecimal.js"); +/* harmony import */ var _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./util/pointProjector.js */ "./util/pointProjector.js"); +/* harmony import */ var _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./util/lineSegDistance.js */ "./util/lineSegDistance.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./util/logger */ "./util/logger.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); +/* harmony import */ var _util_makeUnselectable_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./util/makeUnselectable.js */ "./util/makeUnselectable.js"); +/* harmony import */ var _util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./util/getRGBPixels.js */ "./util/getRGBPixels.js"); +/* harmony import */ var _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./util/getMaxSimultaneousRequests.js */ "./util/getMaxSimultaneousRequests.js"); +/* harmony import */ var _util_angleBetweenPoints_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./util/angleBetweenPoints.js */ "./util/angleBetweenPoints.js"); +/* harmony import */ var _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./util/numbersWithCommas.js */ "./util/numbersWithCommas.js"); +/* harmony import */ var _tools_cursors_MouseCursor_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./tools/cursors/MouseCursor.js */ "./tools/cursors/MouseCursor.js"); +/* harmony import */ var _util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./util/ellipse/index.js */ "./util/ellipse/index.js"); +/* harmony import */ var _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./util/freehand/index.js */ "./util/freehand/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./util/zoom/index.js */ "./util/zoom/index.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./util/convertToVector3.js */ "./util/convertToVector3.js"); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +var lib = { + 'base/BaseTool': _tools_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_0__["default"], + 'base/BaseAnnotationTool': _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_1__["default"], + 'base/BaseBrushTool': _tools_base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_2__["default"], + 'tools/cursors/MouseCursor': _tools_cursors_MouseCursor_js__WEBPACK_IMPORTED_MODULE_42__["default"], + 'tools/cursors': _tools_cursors_index_js__WEBPACK_IMPORTED_MODULE_6__, + 'manipulators/anyHandlesOutsideImage': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["anyHandlesOutsideImage"], + 'manipulators/getHandleNearImagePoint': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["getHandleNearImagePoint"], + 'manipulators/handleActivator': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["handleActivator"], + 'manipulators/moveAllHandles': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["moveAllHandles"], + 'manipulators/moveHandle': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["moveHandle"], + 'manipulators/moveNewHandle': _manipulators_index_js__WEBPACK_IMPORTED_MODULE_3__["moveNewHandle"], + 'manipulators/moveHandleNearImagePoint': _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_4__["moveHandleNearImagePoint"], + 'manipulators/findHandleDataNearImagePoint': _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_4__["findHandleDataNearImagePoint"], + 'manipulators/moveAnnotation': _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_4__["moveAnnotation"], + 'mixins/activeOrDisabledBinaryTool': _mixins_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].activeOrDisabledBinaryTool, + 'mixins/enabledOrDisabledBinaryTool': _mixins_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].enabledOrDisabledBinaryTool, + 'drawing/getNewContext': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["getNewContext"], + 'drawing/draw': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["draw"], + 'drawing/path': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["path"], + 'drawing/setShadow': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["setShadow"], + 'drawing/drawLine': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLine"], + 'drawing/drawLines': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLines"], + 'drawing/drawJoinedLines': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawJoinedLines"], + 'drawing/drawCircle': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawCircle"], + 'drawing/drawEllipse': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawEllipse"], + 'drawing/drawRect': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawRect"], + 'drawing/fillOutsideRect': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["fillOutsideRect"], + 'drawing/drawTextBox': _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_20__["default"], + 'drawing/drawArrow': _drawing_drawArrow_js__WEBPACK_IMPORTED_MODULE_21__["default"], + 'drawing/fillBox': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["fillBox"], + 'drawing/fillTextLines': _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["fillTextLines"], + 'drawing/drawLink': _drawing_drawLink_js__WEBPACK_IMPORTED_MODULE_22__["default"], + 'drawing/drawLinkedTextBox': _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_23__["default"], + 'drawing/drawHandles': _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_24__["default"], + 'drawing/textBoxWidth': _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_20__["textBoxWidth"], + 'util/getLuminance': _util_getLuminance_js__WEBPACK_IMPORTED_MODULE_25__["default"], + 'util/getROITextBoxCoords': _util_getROITextBoxCoords__WEBPACK_IMPORTED_MODULE_26__["default"], + 'util/copyPoints': _util_copyPoints_js__WEBPACK_IMPORTED_MODULE_27__["default"], + 'util/calculateSUV': _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_28__["default"], + 'util/setContextToDisplayFontSize': _util_setContextToDisplayFontSize_js__WEBPACK_IMPORTED_MODULE_29__["default"], + 'util/scrollToIndex': _util_scrollToIndex_js__WEBPACK_IMPORTED_MODULE_30__["default"], + 'util/scroll': _util_scroll_js__WEBPACK_IMPORTED_MODULE_31__["default"], + 'util/roundToDecimal': _util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_32__["default"], + 'util/projectPatientPointToImagePlane': _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_33__["projectPatientPointToImagePlane"], + 'util/imagePointToPatientPoint': _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_33__["imagePointToPatientPoint"], + 'util/planePlaneIntersection': _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_33__["planePlaneIntersection"], + 'util/pointInsideBoundingBox': _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_36__["default"], + 'util/makeUnselectable': _util_makeUnselectable_js__WEBPACK_IMPORTED_MODULE_37__["default"], + 'util/getRGBPixels': _util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_38__["default"], + 'util/getDefaultSimultaneousRequests': _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_39__["getDefaultSimultaneousRequests"], + 'util/getMaxSimultaneousRequests': _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_39__["getMaxSimultaneousRequests"], + 'util/getBrowserInfo': _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_39__["getBrowserInfo"], + 'util/isMobileDevice': _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_39__["isMobileDevice"], + 'util/angleBetweenPoints': _util_angleBetweenPoints_js__WEBPACK_IMPORTED_MODULE_40__["default"], + 'util/numbersWithCommas': _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_41__["default"], + 'util/lineSegDistance': _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_34__["default"], + 'util/triggerEvent': _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_47__["default"], + 'util/convertToVector3': _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_48__["default"], + 'util/clip': _util_clip_js__WEBPACK_IMPORTED_MODULE_8__["clip"], + 'util/clipToBox': _util_clip_js__WEBPACK_IMPORTED_MODULE_8__["clipToBox"], + 'util/debounce': _util_debounce__WEBPACK_IMPORTED_MODULE_9__["default"], + 'util/deepmerge': _util_deepmerge__WEBPACK_IMPORTED_MODULE_10__["default"], + 'util/getDefault': _util_getDefault__WEBPACK_IMPORTED_MODULE_11__["default"], + 'util/getPixelSpacing': _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_12__["default"], + 'util/isEmptyObject': _util_isEmptyObject__WEBPACK_IMPORTED_MODULE_13__["default"], + 'util/isObject': _util_isObject__WEBPACK_IMPORTED_MODULE_14__["default"], + 'util/isPointInImage': _util_isPointInImage__WEBPACK_IMPORTED_MODULE_15__["default"], + 'util/isPointInPolygon': _util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_16__["default"], + 'util/getLogger': _util_logger__WEBPACK_IMPORTED_MODULE_35__["getLogger"], + 'util/throttle': _util_throttle__WEBPACK_IMPORTED_MODULE_17__["default"], + 'util/wait': _util_wait__WEBPACK_IMPORTED_MODULE_18__["wait"], + 'util/waitForEnabledElementImageToLoad': _util_wait__WEBPACK_IMPORTED_MODULE_18__["waitForEnabledElementImageToLoad"], + 'util/getKeyPressData': _util_getKeyPressData__WEBPACK_IMPORTED_MODULE_19__["default"], + // Whole tool specific util packages + 'util/ellipseUtils': _util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_43__["default"], + 'util/freehandUtils': _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_44__["default"], + 'util/segmentationUtils': _util_segmentation__WEBPACK_IMPORTED_MODULE_45__, + 'util/zoomUtils': _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_46__["default"] +}; + +/***/ }), + +/***/ "./manipulators/anyHandlesOutsideImage.js": +/*!************************************************!*\ + !*** ./manipulators/anyHandlesOutsideImage.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Determine if a handle is outside the bounds of the rendered image. + * @public + * @function anyHandlesOutsideImage + * @memberof Manipulators + * + * @param {*} renderData - Cornerstone Tool's event detail + * @param {Object} handles - An object containing named handles + * @returns {Boolean} - True if the handle was placed outside the image + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (renderData, handles) { + var image = renderData.image; + var imageRect = { + left: 0, + top: 0, + width: image.width, + height: image.height + }; + var handleOutsideImage = false; + Object.keys(handles).forEach(function (name) { + var handle = handles[name]; + + if (handle.allowedOutsideImage === true) { + return; + } + + if (_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.insideRect(handle, imageRect) === false) { + handleOutsideImage = true; + } + }); + return handleOutsideImage; +}); + +/***/ }), + +/***/ "./manipulators/getHandleNearImagePoint.js": +/*!*************************************************!*\ + !*** ./manipulators/getHandleNearImagePoint.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); + + + +/** + * Returns the first handle found to be near the provided point. Handles to search can be an array of handles, an + * object of named handles, or an object of named handles AND named arrays of handles. + * + * @public + * @function getHandleNearImagePoint + * @memberof Manipulators + * + * @param {*} element - Target enabledElement + * @param {(Array|Object)} handles - An arry of handles, object with named handles, or object with named handles AND named arrays of handles + * @param {Object} coords - The coordinates to measure from when determining distance from handles + * @param {number} distanceThreshold - minimum distance handle needs to be from provided coords + * @returns {Object} Handle + */ + +var getHandleNearImagePoint = function getHandleNearImagePoint(element, handles, coords, distanceThreshold) { + var nearbyHandle; + + if (!handles) { + return; + } + + if (Array.isArray(handles)) { + var handleKeys = Object.keys(handles); + + for (var i = 0; i < handleKeys.length; i++) { + var key = handleKeys[i]; + var handle = handles[key]; + + if ( // Not a true handle + !handle.hasOwnProperty('x') || !handle.hasOwnProperty('y')) { + continue; + } + + if (_isHandleNearImagePoint(handle, element, coords, distanceThreshold)) { + nearbyHandle = handle; + break; + } + } + } else if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(handles) === 'object') { + var _handleKeys = Object.keys(handles); + + for (var _i = 0; _i < _handleKeys.length; _i++) { + var handleName = _handleKeys[_i]; + + if (Array.isArray(handles[handleName])) { + nearbyHandle = getHandleNearImagePoint(element, handles[handleName], coords, distanceThreshold); + + if (nearbyHandle) { + break; + } + } else { + var _handle = handles[handleName]; + + if (_isHandleNearImagePoint(_handle, element, coords, distanceThreshold)) { + nearbyHandle = _handle; + break; + } + } + } + } + + return nearbyHandle; +}; +/** + * Determines if the handle is less than the provided distance from the provided coordinates + * @private + * @function _isHandleNearImagePoint + * + * @param {*} handle + * @param {*} element + * @param {*} coords + * @param {*} distanceThreshold + * @returns {boolean} true if handles is near image point + */ + + +var _isHandleNearImagePoint = function _isHandleNearImagePoint(handle, element, coords, distanceThreshold) { + if (handle.hasOwnProperty('pointNearHandle')) { + if (handle.pointNearHandle(element, handle, coords)) { + return true; + } + } else if (handle.hasBoundingBox === true) { + if (Object(_util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_2__["default"])(handle, coords)) { + return true; + } + } else { + var handleCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, handle); + var distance = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.distance(handleCanvas, coords); + + if (distance <= distanceThreshold) { + return true; + } + } + + return false; +}; + +/* harmony default export */ __webpack_exports__["default"] = (getHandleNearImagePoint); + +/***/ }), + +/***/ "./manipulators/handleActivator.js": +/*!*****************************************!*\ + !*** ./manipulators/handleActivator.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); + +/** + * Update the active handle + * @public + * @function handleActivator + * @memberof Manipulators + * + * @param {*} element + * @param {*} handles + * @param {*} canvasPoint + * @param {*} distanceThreshold + * @returns {Boolean} - True if a handle was activated + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, handles, canvasPoint, distanceThreshold) { + if (!distanceThreshold) { + distanceThreshold = 6; + } + + var activeHandle = _getActiveHandle(handles); + + var nearbyHandle = Object(_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, handles, canvasPoint, distanceThreshold); + + if (activeHandle !== nearbyHandle) { + if (nearbyHandle !== undefined) { + nearbyHandle.active = true; + } + + if (activeHandle !== undefined) { + activeHandle.active = false; + } + + return true; + } + + return false; +}); +/** + * + * @private + * + * @param {*} handles + * @returns {Object} - Activated Handle + */ + +function _getActiveHandle(handles) { + var activeHandle; + Object.keys(handles).forEach(function (name) { + var handle = handles[name]; + + if (handle.active === true) { + activeHandle = handle; + return; + } + }); + return activeHandle; +} + +/***/ }), + +/***/ "./manipulators/index.js": +/*!*******************************!*\ + !*** ./manipulators/index.js ***! + \*******************************/ +/*! exports provided: anyHandlesOutsideImage, getHandleNearImagePoint, handleActivator, moveAllHandles, moveHandle, moveNewHandle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "anyHandlesOutsideImage", function() { return _anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getHandleNearImagePoint", function() { return _getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _handleActivator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./handleActivator.js */ "./manipulators/handleActivator.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "handleActivator", function() { return _handleActivator_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _moveAllHandles_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./moveAllHandles.js */ "./manipulators/moveAllHandles.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "moveAllHandles", function() { return _moveAllHandles_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _moveHandle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./moveHandle.js */ "./manipulators/moveHandle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "moveHandle", function() { return _moveHandle_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _moveNewHandle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./moveNewHandle.js */ "./manipulators/moveNewHandle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "moveNewHandle", function() { return _moveNewHandle_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + + + + + + + + + +/***/ }), + +/***/ "./manipulators/moveAllHandles.js": +/*!****************************************!*\ + !*** ./manipulators/moveAllHandles.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../tools/base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_9__["getLogger"])('manipulators:moveAllHandles'); +var _dragEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG] +}; +var _upOrEndEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG_END, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP] +}; +/** + * Manipulator to move all provided handles at the same time + * @public + * @function moveAllHandles + * @memberof Manipulators + * + * @param {*} evtDetail + * @param {*} evtDetail.element + * @param {String} toolName + * @param {*} annotation + * @param {*} [handle=null] - not needed by moveAllHandles, but keeps call signature the same as `moveHandle` + * @param {Object} [options={}] + * @param {Boolean} [options.deleteIfHandleOutsideImage] + * @param {Boolean} [options.preventHandleOutsideImage] + * @param {string} [interactionType=mouse] + * @param {function} [doneMovingCallback] + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (_ref, toolName, annotation, handle) { + var element = _ref.element; + var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {}; + var interactionType = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'mouse'; + var doneMovingCallback = arguments.length > 6 ? arguments[6] : undefined; + // Use global defaults, unless overidden by provided options + options = Object.assign({ + deleteIfHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].deleteIfHandleOutsideImage, + preventHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].preventHandleOutsideImage + }, options); + + var dragHandler = _dragHandler.bind(this, toolName, annotation, options, interactionType); // So we don't need to inline the entire `upOrEndHandler` function + + + var upOrEndHandler = function upOrEndHandler(evt) { + _upOrEndHandler(toolName, annotation, options, interactionType, { + dragHandler: dragHandler, + upOrEndHandler: upOrEndHandler + }, evt, doneMovingCallback); + }; + + annotation.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = true; // Add Event Listeners + + _dragEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, dragHandler); + }); + + _upOrEndEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, upOrEndHandler); + }); +}); + +function _dragHandler(toolName, annotation) { + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + var interactionType = arguments.length > 3 ? arguments[3] : undefined; + var evt = arguments.length > 4 ? arguments[4] : undefined; + var _evt$detail = evt.detail, + element = _evt$detail.element, + image = _evt$detail.image, + buttons = _evt$detail.buttons; + var _evt$detail$deltaPoin = evt.detail.deltaPoints.image, + x = _evt$detail$deltaPoin.x, + y = _evt$detail$deltaPoin.y; + annotation.active = true; + annotation.invalidated = true; + var handleKeys = Object.keys(annotation.handles); + + for (var i = 0; i < handleKeys.length; i++) { + var key = handleKeys[i]; + var handle = annotation.handles[key]; + + if ( // Don't move this part of the annotation + handle.movesIndependently === true || // Not a true handle + !handle.hasOwnProperty('x') || !handle.hasOwnProperty('y')) { + continue; + } + + handle.x += x; + handle.y += y; + + if (options.preventHandleOutsideImage) { + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_5__["clipToBox"])(handle, image); + } + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__["default"])(element, buttons, interactionType); + + if (activeTool instanceof _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__["default"]) { + activeTool.updateCachedStats(image, element, annotation); + } + + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_MODIFIED; + var modifiedEventData = { + toolName: toolName, + element: element, + measurementData: annotation + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, modifiedEventData); + evt.preventDefault(); + evt.stopPropagation(); +} + +function _upOrEndHandler(toolName, annotation) { + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + var interactionType = arguments.length > 3 ? arguments[3] : undefined; + + var _ref2 = arguments.length > 4 ? arguments[4] : undefined, + dragHandler = _ref2.dragHandler, + upOrEndHandler = _ref2.upOrEndHandler; + + var evt = arguments.length > 5 ? arguments[5] : undefined; + var doneMovingCallback = arguments.length > 6 ? arguments[6] : undefined; + var eventData = evt.detail; + var element = evt.detail.element; + annotation.active = false; + annotation.invalidated = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = false; // Remove Event Listeners + + _dragEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, dragHandler); + }); + + _upOrEndEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, upOrEndHandler); + }); // If any handle is outside the image, delete the tool data + + + if (options.deleteIfHandleOutsideImage && Object(_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(eventData, annotation.handles)) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["removeToolState"])(element, toolName, annotation); + } + + if (typeof options.doneMovingCallback === 'function') { + logger.warn('`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details.'); + options.doneMovingCallback(); + } + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} + +/***/ }), + +/***/ "./manipulators/moveHandle.js": +/*!************************************!*\ + !*** ./manipulators/moveHandle.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../tools/base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_9__["getLogger"])('manipulators:moveHandle'); +var runAnimation = { + value: false +}; +var _dragEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG] +}; +var _upOrEndEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG_END, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP] +}; +/** + * Move the provided handle + * + * @public + * @method moveHandle + * @memberof Manipulators + * + * @param {*} evtDetail + * @param {*} toolName + * @param {*} annotation + * @param {*} handle + * @param {*} [options={}] + * @param {Boolean} [options.deleteIfHandleOutsideImage] + * @param {Boolean} [options.preventHandleOutsideImage] + * @param {*} [interactionType=mouse] + * @param {function} doneMovingCallback + * @returns {undefined} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evtDetail, toolName, annotation, handle) { + var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {}; + var interactionType = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'mouse'; + var doneMovingCallback = arguments.length > 6 ? arguments[6] : undefined; + // Use global defaults, unless overidden by provided options + options = Object.assign({ + deleteIfHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].deleteIfHandleOutsideImage, + preventHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].preventHandleOutsideImage + }, options); + var element = evtDetail.element; + + var dragHandler = _dragHandler.bind(this, toolName, annotation, handle, options, interactionType); // So we don't need to inline the entire `upOrEndHandler` function + + + var upOrEndHandler = function upOrEndHandler(evt) { + _upOrEndHandler(toolName, evtDetail, annotation, handle, options, interactionType, { + dragHandler: dragHandler, + upOrEndHandler: upOrEndHandler + }, evt, doneMovingCallback); + }; + + handle.active = true; + annotation.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = true; // Add Event Listeners + + _dragEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, dragHandler); + }); + + _upOrEndEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, upOrEndHandler); + }); // ========================== + // ======== TOUCH ========== + // ========================== + + + if (interactionType === 'touch') { + runAnimation.value = true; + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); // Average pixel width of index finger is 45-57 pixels + // https://www.smashingmagazine.com/2012/02/finger-friendly-design-ideal-mobile-touchscreen-target-sizes/ + + var fingerDistance = -57; + var aboveFinger = { + x: evtDetail.currentPoints.page.x, + y: evtDetail.currentPoints.page.y + fingerDistance + }; + var targetLocation = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, aboveFinger.x, aboveFinger.y); + + _animate(handle, runAnimation, enabledElement, targetLocation); + } +}); + +function _dragHandler(toolName, annotation, handle, options, interactionType, evt) { + var _evt$detail = evt.detail, + image = _evt$detail.image, + currentPoints = _evt$detail.currentPoints, + element = _evt$detail.element, + buttons = _evt$detail.buttons; + var page = currentPoints.page; + var fingerOffset = -57; + var targetLocation = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, page.x, interactionType === 'touch' ? page.y + fingerOffset : page.y); + runAnimation.value = false; + handle.active = true; + handle.hasMoved = true; + handle.x = targetLocation.x; + handle.y = targetLocation.y; // TODO: A way to not flip this for textboxes on annotations + + annotation.invalidated = true; + + if (options.preventHandleOutsideImage) { + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_5__["clipToBox"])(handle, image); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__["default"])(element, buttons, interactionType); + + if (activeTool instanceof _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__["default"]) { + activeTool.updateCachedStats(image, element, annotation); + } + + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_MODIFIED; + var modifiedEventData = { + toolName: toolName, + element: element, + measurementData: annotation + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, modifiedEventData); +} + +function _upOrEndHandler(toolName, evtDetail, annotation, handle) { + var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {}; + var interactionType = arguments.length > 5 ? arguments[5] : undefined; + + var _ref = arguments.length > 6 ? arguments[6] : undefined, + dragHandler = _ref.dragHandler, + upOrEndHandler = _ref.upOrEndHandler; + + var evt = arguments.length > 7 ? arguments[7] : undefined; + var doneMovingCallback = arguments.length > 8 ? arguments[8] : undefined; + var image = evtDetail.currentPoints.image; + var element = evt.detail.element; + handle.active = false; + annotation.active = false; // TODO: A way to not flip this for textboxes on annotations + + annotation.invalidated = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = false; + runAnimation.value = false; // Remove Event Listeners + + _dragEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, dragHandler); + }); + + _upOrEndEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, upOrEndHandler); + }); // If any handle is outside the image, delete the tool data + + + if (options.deleteIfHandleOutsideImage && Object(_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(evtDetail, annotation.handles)) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["removeToolState"])(element, toolName, annotation); + } // TODO: What dark magic makes us want to handle TOUCH_PRESS differently? + + + if (evt.type === _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS) { + evt.detail.handlePressed = annotation; + handle.x = image.x; // Original Event + + handle.y = image.y; + } + + if (typeof options.doneMovingCallback === 'function') { + logger.warn('`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details.'); + options.doneMovingCallback(); + } + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * Animates the provided handle using `requestAnimationFrame` + * @private + * @method _animate + * + * @param {*} handle + * @param {*} runAnimation + * @param {*} enabledElement + * @param {*} targetLocation + * @returns {undefined} + */ + + +function _animate(handle, runAnimation, enabledElement, targetLocation) { + if (!runAnimation.value) { + return; + } // Pixels / second + + + var distanceRemaining = Math.abs(handle.y - targetLocation.y); + var linearDistEachFrame = distanceRemaining / 10; + + if (distanceRemaining < 1) { + handle.y = targetLocation.y; + runAnimation.value = false; + return; + } + + if (handle.y > targetLocation.y) { + handle.y -= linearDistEachFrame; + } else if (handle.y < targetLocation.y) { + handle.y += linearDistEachFrame; + } // Update the image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(enabledElement.element); // Request a new frame + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.requestAnimationFrame(function () { + _animate(handle, runAnimation, enabledElement, targetLocation); + }); +} + +/***/ }), + +/***/ "./manipulators/moveNewHandle.js": +/*!***************************************!*\ + !*** ./manipulators/moveNewHandle.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../tools/base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_9__["getLogger"])('manipulators:moveNewHandle'); +var _moveEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_MOVE, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_DRAG], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_DRAG] +}; +var _moveEndEvents = { + mouse: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_UP, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MOUSE_CLICK], + touch: [_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_END, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TAP] +}; +/** + * Move a new handle + * @public + * @method moveNewHandle + * @memberof Manipulators + * + * @param {*} evtDetail + * @param {*} toolName + * @param {*} annotation + * @param {*} handle + * @param {*} [options={}] + * @param {Boolean} [options.deleteIfHandleOutsideImage] + * @param {Boolean} [options.preventHandleOutsideImage] + * @param {string} [interactionType=mouse] + * @param {function} [doneMovingCallback] + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evtDetail, toolName, annotation, handle, options) { + var interactionType = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'mouse'; + var doneMovingCallback = arguments.length > 6 ? arguments[6] : undefined; + // Use global defaults, unless overidden by provided options + options = Object.assign({ + deleteIfHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].deleteIfHandleOutsideImage, + preventHandleOutsideImage: _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].preventHandleOutsideImage + }, options); + var element = evtDetail.element; + annotation.active = true; + handle.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = true; + + function moveHandler(evt) { + _moveHandler(toolName, annotation, handle, options, interactionType, { + moveHandler: moveHandler, + moveEndHandler: moveEndHandler + }, evt); + } // So we don't need to inline the entire `moveEndEventHandler` function + + + function moveEndHandler(evt) { + _moveEndHandler(toolName, annotation, handle, options, interactionType, { + moveHandler: moveHandler, + moveEndHandler: moveEndHandler + }, evt, doneMovingCallback); + } // Add event listeners + + + _moveEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, moveHandler); + }); + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START, _stopImmediatePropagation); +}); + +function _moveHandler(toolName, annotation, handle, options, interactionType, _ref, evt) { + var moveEndHandler = _ref.moveEndHandler; + var _evt$detail = evt.detail, + currentPoints = _evt$detail.currentPoints, + image = _evt$detail.image, + element = _evt$detail.element, + buttons = _evt$detail.buttons; // Add moveEndEvent Handler when move trigger + + _moveEndEvents[interactionType].forEach(function (eventType) { + element.addEventListener(eventType, moveEndHandler); + }); + + var page = currentPoints.page; + var fingerOffset = -57; + var targetLocation = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, interactionType === 'touch' ? page.x + fingerOffset : page.x, interactionType === 'touch' ? page.y + fingerOffset : page.y); + annotation.invalidated = true; + handle.active = true; + handle.x = targetLocation.x; + handle.y = targetLocation.y; + + if (options && options.preventHandleOutsideImage) { + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_5__["clipToBox"])(handle, image); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_7__["default"])(element, buttons, interactionType); + + if (activeTool instanceof _tools_base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_8__["default"]) { + activeTool.updateCachedStats(image, element, annotation); + } + + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_MODIFIED; + var modifiedEventData = { + toolName: toolName, + element: element, + measurementData: annotation + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, eventType, modifiedEventData); +} + +function _moveEndHandler(toolName, annotation, handle, options, interactionType, _ref2, evt, doneMovingCallback) { + var moveHandler = _ref2.moveHandler, + moveEndHandler = _ref2.moveEndHandler; + var _evt$detail2 = evt.detail, + element = _evt$detail2.element, + currentPoints = _evt$detail2.currentPoints; + var page = currentPoints.page; + var fingerOffset = -57; + var targetLocation = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pageToPixel(element, interactionType === 'touch' ? page.x + fingerOffset : page.x, interactionType === 'touch' ? page.y + fingerOffset : page.y); // "Release" the handle + + annotation.active = false; + annotation.invalidated = true; + handle.active = false; + handle.x = targetLocation.x; + handle.y = targetLocation.y; + _store_index_js__WEBPACK_IMPORTED_MODULE_6__["state"].isToolLocked = false; // Remove event listeners + + _moveEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, moveHandler); + }); + + _moveEndEvents[interactionType].forEach(function (eventType) { + element.removeEventListener(eventType, moveEndHandler); + }); + + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_START, _stopImmediatePropagation); // TODO: WHY? + // Why would a Touch_Pinch or Touch_Press be associated with a new handle? + + if (evt.type === _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PINCH || evt.type === _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOUCH_PRESS) { + handle.active = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + + if (typeof options.doneMovingCallback === 'function') { + logger.warn('`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details.'); + options.doneMovingCallback(); + } + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } + + return; + } + + if (options.preventHandleOutsideImage) { + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_5__["clipToBox"])(handle, evt.detail.image); + } // If any handle is outside the image, delete the tool data + + + if (options.deleteIfHandleOutsideImage && Object(_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(evt.detail, annotation.handles)) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["removeToolState"])(element, toolName, annotation); + } + + if (typeof options.doneMovingCallback === 'function') { + logger.warn('`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details.'); + options.doneMovingCallback(); + } + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } // Update Image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * Stop the CornerstoneToolsTouchStart event from + * Becoming a CornerstoneToolsTouchStartActive event when + * MoveNewHandle ends + * + * @private + * @function _stopImmediatePropagation + * + * @param {*} evt + * @returns {Boolean} false + */ + + +function _stopImmediatePropagation(evt) { + evt.stopImmediatePropagation(); + return false; +} + +/***/ }), + +/***/ "./mixins/activeOrDisabledBinaryTool.js": +/*!**********************************************!*\ + !*** ./mixins/activeOrDisabledBinaryTool.js ***! + \**********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/setToolMode.js */ "./store/setToolMode.js"); + +/** + * If one attempts to change mode to 'passive', redirect the tool to 'disabled'. + * + * @param {HTMLElement} element The element on which the tool resides. + * @returns {undefined} + */ + +function passiveCallback(element) { + Object(_store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__["setToolDisabledForElement"])(element, this.name); +} +/** + * If one attempts to turn the tool 'enabled', redirect the tool to 'active'. + * + * @param {HTMLElement} element The element on which the tool resides. + * @returns {undefined} + */ + + +function enabledCallback(element) { + Object(_store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__["setToolActiveForElement"])(element, this.name); +} +/** + * @mixin activeOrDisabledBinaryTool - Redirect enabled/passive mode changes to active/disabled. + * @memberof Mixins + */ + + +/* harmony default export */ __webpack_exports__["default"] = ({ + passiveCallback: passiveCallback, + enabledCallback: enabledCallback +}); + +/***/ }), + +/***/ "./mixins/enabledOrDisabledBinaryTool.js": +/*!***********************************************!*\ + !*** ./mixins/enabledOrDisabledBinaryTool.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/setToolMode.js */ "./store/setToolMode.js"); + +/** + * If one attempts to change mode to 'passive', redirect the tool to 'disabled'. + * + * @param {HTMLElement} element The element on which the tool resides. + * @returns {undefined} + */ + +function passiveCallback(element) { + Object(_store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__["setToolDisabledForElement"])(element, this.name); +} +/** + * If one attempts to change mode to 'active', redirect the tool to 'enabled'. + * + * @param {HTMLElement} element The element on which the tool resides. + * @returns {undefined} + */ + + +function activeCallback(element) { + Object(_store_setToolMode_js__WEBPACK_IMPORTED_MODULE_0__["setToolEnabledForElement"])(element, this.name); +} +/** + * + * @mixin enabledOrDisabledBinaryTool - Redirect active/passive mode changes to enabled/disabled. + * @memberof Mixins + */ + + +/* harmony default export */ __webpack_exports__["default"] = ({ + passiveCallback: passiveCallback, + activeCallback: activeCallback +}); + +/***/ }), + +/***/ "./mixins/index.js": +/*!*************************!*\ + !*** ./mixins/index.js ***! + \*************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _activeOrDisabledBinaryTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./activeOrDisabledBinaryTool.js */ "./mixins/activeOrDisabledBinaryTool.js"); +/* harmony import */ var _enabledOrDisabledBinaryTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enabledOrDisabledBinaryTool.js */ "./mixins/enabledOrDisabledBinaryTool.js"); +/* harmony import */ var _segmentation_circleSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./segmentation/circleSegmentationMixin.js */ "./mixins/segmentation/circleSegmentationMixin.js"); +/* harmony import */ var _segmentation_polylineSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./segmentation/polylineSegmentationMixin.js */ "./mixins/segmentation/polylineSegmentationMixin.js"); +/* harmony import */ var _segmentation_freehandSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./segmentation/freehandSegmentationMixin.js */ "./mixins/segmentation/freehandSegmentationMixin.js"); +/* harmony import */ var _segmentation_rectangleSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./segmentation/rectangleSegmentationMixin.js */ "./mixins/segmentation/rectangleSegmentationMixin.js"); +/* harmony import */ var _segmentation_renderBrushMixin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./segmentation/renderBrushMixin.js */ "./mixins/segmentation/renderBrushMixin.js"); + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = ({ + activeOrDisabledBinaryTool: _activeOrDisabledBinaryTool_js__WEBPACK_IMPORTED_MODULE_0__["default"], + enabledOrDisabledBinaryTool: _enabledOrDisabledBinaryTool_js__WEBPACK_IMPORTED_MODULE_1__["default"], + circleSegmentationMixin: _segmentation_circleSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"], + polylineSegmentationMixin: _segmentation_polylineSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_3__["default"], + freehandSegmentationMixin: _segmentation_freehandSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_4__["default"], + rectangleSegmentationMixin: _segmentation_rectangleSegmentationMixin_js__WEBPACK_IMPORTED_MODULE_5__["default"], + renderBrushMixin: _segmentation_renderBrushMixin_js__WEBPACK_IMPORTED_MODULE_6__["default"] +}); + +/***/ }), + +/***/ "./mixins/segmentation/circleSegmentationMixin.js": +/*!********************************************************!*\ + !*** ./mixins/segmentation/circleSegmentationMixin.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _drawing__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../drawing */ "./drawing/index.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules */ "./externalModules.js"); +/* harmony import */ var _util_isEmptyObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../util/isEmptyObject */ "./util/isEmptyObject.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store */ "./store/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../util/segmentation */ "./util/segmentation/index.js"); + + + + + + +var _getModule = Object(_store__WEBPACK_IMPORTED_MODULE_3__["getModule"])('segmentation'), + getters = _getModule.getters, + setters = _getModule.setters; +/** + * Sets the start and end handle points to empty objects + * + * @private + * @method _resetHandles + * @returns {undefined} + */ + + +function _resetHandles() { + this.handles = { + start: {}, + end: {} + }; +} +/** + * Render hook: draws the Scissors's outline, box, or circle + * + * @param {Object} evt Cornerstone.event#cornerstoneimagerendered > cornerstoneimagerendered event + * @memberof Tools.ScissorsTool + * @returns {void} + */ + + +function renderToolData(evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element; + var color = getters.brushColor(element, true); + var context = Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["getNewContext"])(eventData.canvasContext.canvas); + var distance = _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath.point.distance; + Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["draw"])(context, function (context) { + if (!_this.handles) { + return null; + } + + var startCanvas = _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, _this.handles.start); + var endCanvas = _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.pixelToCanvas(element, _this.handles.end); // Calculating the radius where startCanvas is the center of the circle to be drawn + + var radius = distance(startCanvas, endCanvas); // Draw Circle + + Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["drawCircle"])(context, element, _this.handles.start, radius, { + color: color + }); + }); +} +/** + * Sets the start handle point and claims the eventDispatcher event + * + * @private + * @param {*} evt // mousedown, touchstart, click + * @returns {Boolean} True + */ + + +function _startOutliningRegion(evt) { + var consumeEvent = true; + var element = evt.detail.element; + var image = evt.detail.currentPoints.image; + + if (Object(_util_isEmptyObject__WEBPACK_IMPORTED_MODULE_2__["default"])(this.handles.start)) { + this.handles.start = image; + } else { + this.handles.end = image; + + this._applyStrategy(evt); + } + + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + return consumeEvent; +} +/** + * This function will update the handles and updateImage to force re-draw + * + * @private + * @method _setHandlesAndUpdate + * @param {(CornerstoneTools.event#TOUCH_DRAG|CornerstoneTools.event#MOUSE_DRAG|CornerstoneTools.event#MOUSE_MOVE)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _setHandlesAndUpdate(evt) { + var _evt$detail = evt.detail, + element = _evt$detail.element, + currentPoints = _evt$detail.currentPoints; + var image = currentPoints.image; + this.handles.end = image; + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * Event handler for MOUSE_UP/TOUCH_END during handle drag event loop. + * + * @private + * @method _applyStrategy + * @param {(CornerstoneTools.event#MOUSE_UP|CornerstoneTools.event#TOUCH_END)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _applyStrategy(evt) { + evt.detail.handles = this.handles; + var element = evt.detail.element; + + var _getters$labelmap2D = getters.labelmap2D(element), + labelmap2D = _getters$labelmap2D.labelmap2D, + labelmap3D = _getters$labelmap2D.labelmap3D, + currentImageIdIndex = _getters$labelmap2D.currentImageIdIndex; + + var pixelData = labelmap2D.pixelData; + var previousPixeldata = pixelData.slice(); + var points = { + start: { + x: this.handles.start.x, + y: this.handles.start.y + }, + end: { + x: this.handles.end.x, + y: this.handles.end.y + } + }; + var operationData = { + points: points, + pixelData: pixelData, + segmentIndex: labelmap3D.activeSegmentIndex, + segmentationMixinType: "circleSegmentationMixin" + }; + this.applyActiveStrategy(evt, operationData); + var operation = { + imageIdIndex: currentImageIdIndex, + diff: Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_4__["getDiffBetweenPixelData"])(previousPixeldata, pixelData) + }; + setters.pushState(this.element, [operation]); // Invalidate the brush tool data so it is redrawn + + setters.updateSegmentsOnLabelmap2D(labelmap2D); + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + + this._resetHandles(); +} +/** + * @mixin circleSegmentationMixin - Segmentation operations for circles. + * @memberof Mixins + */ + + +/* harmony default export */ __webpack_exports__["default"] = ({ + postTouchStartCallback: _startOutliningRegion, + postMouseDownCallback: _startOutliningRegion, + mouseClickCallback: _startOutliningRegion, + touchDragCallback: _setHandlesAndUpdate, + mouseDragCallback: _setHandlesAndUpdate, + mouseMoveCallback: _setHandlesAndUpdate, + touchEndCallback: _applyStrategy, + mouseUpCallback: _applyStrategy, + initializeMixin: _resetHandles, + renderToolData: renderToolData, + _resetHandles: _resetHandles, + _applyStrategy: _applyStrategy +}); + +/***/ }), + +/***/ "./mixins/segmentation/freehandSegmentationMixin.js": +/*!**********************************************************!*\ + !*** ./mixins/segmentation/freehandSegmentationMixin.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store */ "./store/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _drawing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../drawing */ "./drawing/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../util/segmentation */ "./util/segmentation/index.js"); + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('tools:ScissorsTool'); + +var _getModule = Object(_store__WEBPACK_IMPORTED_MODULE_2__["getModule"])('segmentation'), + getters = _getModule.getters, + setters = _getModule.setters; +/** + * Render hook: draws the FreehandScissors's outline + * + * @param {Object} evt Cornerstone.event#cornerstoneimagerendered > cornerstoneimagerendered event + * @memberof Tools.ScissorsTool + * @returns {void} + */ + + +function renderToolData(evt) { + var eventData = evt.detail; + var element = eventData.element; + var color = getters.brushColor(element, true); + var context = Object(_drawing__WEBPACK_IMPORTED_MODULE_4__["getNewContext"])(eventData.canvasContext.canvas); + var points = this.handles.points; + + if (points.length < 2) { + return; + } + + Object(_drawing__WEBPACK_IMPORTED_MODULE_4__["draw"])(context, function (context) { + for (var j = 0; j < points.length; j++) { + var lines = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(points[j].lines); + + if (j === points.length - 1) { + // If it's still being actively drawn, keep the last line to + // The mouse location + lines.push(points[0]); + } + + Object(_drawing__WEBPACK_IMPORTED_MODULE_4__["drawJoinedLines"])(context, element, points[j], lines, { + color: color + }); + } + }); +} +/** + * Sets the start handle point and claims the eventDispatcher event + * + * @private + * @param {*} evt // mousedown, touchstart, click + * @returns {void|null} + */ + + +function _startOutliningRegion(evt) { + var element = evt.detail.element; + var image = evt.detail.currentPoints.image; + var points = this.handles.points; + + if (!points.length) { + logger.warn('Something went wrong, empty handles detected.'); + return null; + } + + points.push({ + x: image.x, + y: image.y, + lines: [] + }); + this.currentHandle += 1; + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * This function will update the handles and updateImage to force re-draw + * + * @private + * @method _setHandlesAndUpdate + * @param {(CornerstoneTools.event#TOUCH_DRAG|CornerstoneTools.event#MOUSE_DRAG|CornerstoneTools.event#MOUSE_MOVE)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _setHandlesAndUpdate(evt) { + var eventData = evt.detail; + var element = evt.detail.element; + + this._addPoint(eventData); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * Event handler for MOUSE_UP/TOUCH_END during handle drag event loop. + * + * @private + * @method _applyStrategy + * @param {(CornerstoneTools.event#MOUSE_UP|CornerstoneTools.event#TOUCH_END)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _applyStrategy(evt) { + var points = this.handles.points; + var element = evt.detail.element; + + var _getters$labelmap2D = getters.labelmap2D(element), + labelmap2D = _getters$labelmap2D.labelmap2D, + labelmap3D = _getters$labelmap2D.labelmap3D, + currentImageIdIndex = _getters$labelmap2D.currentImageIdIndex; + + var pixelData = labelmap2D.pixelData; + var previousPixeldata = pixelData.slice(); + var operationData = { + points: points, + pixelData: pixelData, + segmentIndex: labelmap3D.activeSegmentIndex, + segmentationMixinType: "freehandSegmentationMixin" + }; + this.applyActiveStrategy(evt, operationData); + var operation = { + imageIdIndex: currentImageIdIndex, + diff: Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_5__["getDiffBetweenPixelData"])(previousPixeldata, pixelData) + }; + setters.pushState(this.element, [operation]); // Invalidate the brush tool data so it is redrawn + + setters.updateSegmentsOnLabelmap2D(labelmap2D); + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + + this._resetHandles(); +} +/** + * Sets the start and end handle points to empty objects + * + * @private + * @method _resetHandles + * @returns {undefined} + */ + + +function _resetHandles() { + this.handles = { + points: [] + }; + this.currentHandle = 0; +} +/** + * Adds a point on mouse click in polygon mode. + * + * @private + * @param {Object} evt - data object associated with an event. + * @returns {void} + */ + + +function _addPoint(evt) { + var points = this.handles.points; + + if (points.length) { + // Add the line from the current handle to the new handle + points[this.currentHandle - 1].lines.push({ + x: evt.currentPoints.image.x, + y: evt.currentPoints.image.y, + lines: [] + }); + } // Add the new handle + + + points.push({ + x: evt.currentPoints.image.x, + y: evt.currentPoints.image.y, + lines: [] + }); // Increment the current handle value + + this.currentHandle += 1; // Force onImageRendered to fire + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(evt.element); +} +/** + * @mixin freehandSegmentationMixin - segmentation operations for freehand + * @memberof Mixins + */ + + +/* harmony default export */ __webpack_exports__["default"] = ({ + postTouchStartCallback: _startOutliningRegion, + postMouseDownCallback: _startOutliningRegion, + mouseClickCallback: _startOutliningRegion, + touchDragCallback: _setHandlesAndUpdate, + mouseDragCallback: _setHandlesAndUpdate, + mouseMoveCallback: _setHandlesAndUpdate, + touchEndCallback: _applyStrategy, + mouseUpCallback: _applyStrategy, + initializeMixin: _resetHandles, + renderToolData: renderToolData, + _resetHandles: _resetHandles, + _addPoint: _addPoint, + _applyStrategy: _applyStrategy +}); + +/***/ }), + +/***/ "./mixins/segmentation/polylineSegmentationMixin.js": +/*!**********************************************************!*\ + !*** ./mixins/segmentation/polylineSegmentationMixin.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _drawing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../drawing */ "./drawing/index.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store */ "./store/index.js"); +/* harmony import */ var _freehandSegmentationMixin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./freehandSegmentationMixin */ "./mixins/segmentation/freehandSegmentationMixin.js"); + + + + + +var _getModule = Object(_store__WEBPACK_IMPORTED_MODULE_2__["getModule"])('segmentation'), + getters = _getModule.getters; +/** + * Override for `freehandSegmentationMixin`'s `renderToolData` method to render a polyline instead + * of a freehand region with the first and last point connected. Apply after the `freehandSegmentationMixin`. + * + * @override + * @param {Object} evt The cornerstone render event. + * @returns {null} + */ + + +function renderToolData(evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element; + var color = getters.brushColor(element, true); + var context = Object(_drawing__WEBPACK_IMPORTED_MODULE_1__["getNewContext"])(eventData.canvasContext.canvas); + var handles = this.handles; + Object(_drawing__WEBPACK_IMPORTED_MODULE_1__["draw"])(context, function (context) { + var isNotTheFirstHandle = handles.points.length > 1; + + if (isNotTheFirstHandle) { + for (var j = 0; j < handles.points.length; j++) { + var lines = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(handles.points[j].lines); + + Object(_drawing__WEBPACK_IMPORTED_MODULE_1__["drawJoinedLines"])(context, element, _this.handles.points[j], lines, { + color: color + }); + } + } + }); +} + +var polylineSegmentationMixin = Object.assign({}, _freehandSegmentationMixin__WEBPACK_IMPORTED_MODULE_3__["default"], { + renderToolData: renderToolData +}); +/** + * @mixin freehandPolylineRenderOverride - segmentation operations for corrections Polyline + * @memberof Mixins + */ + +/* harmony default export */ __webpack_exports__["default"] = (polylineSegmentationMixin); + +/***/ }), + +/***/ "./mixins/segmentation/rectangleSegmentationMixin.js": +/*!***********************************************************!*\ + !*** ./mixins/segmentation/rectangleSegmentationMixin.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _drawing__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../drawing */ "./drawing/index.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../externalModules */ "./externalModules.js"); +/* harmony import */ var _util_isEmptyObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../util/isEmptyObject */ "./util/isEmptyObject.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store */ "./store/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../util/segmentation */ "./util/segmentation/index.js"); + + + + + + +var _getModule = Object(_store__WEBPACK_IMPORTED_MODULE_3__["getModule"])('segmentation'), + getters = _getModule.getters, + setters = _getModule.setters; +/** + * Render hook: draws the Scissors's outline, box, or circle + * + * @param {Object} evt Cornerstone.event#cornerstoneimagerendered > cornerstoneimagerendered event + * @memberof Tools.ScissorsTool + * @returns {void} + */ + + +function renderToolData(evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element; + var color = getters.brushColor(element, true); + var context = Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["getNewContext"])(eventData.canvasContext.canvas); + Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["draw"])(context, function (context) { + Object(_drawing__WEBPACK_IMPORTED_MODULE_0__["drawRect"])(context, element, _this.handles.start, _this.handles.end, { + color: color + }); + }); +} +/** + * Sets the start handle point and claims the eventDispatcher event + * + * @private + * @param {*} evt // mousedown, touchstart, click + * @returns {Boolean} True + */ + + +function _startOutliningRegion(evt) { + var consumeEvent = true; + var element = evt.detail.element; + var image = evt.detail.currentPoints.image; + + if (Object(_util_isEmptyObject__WEBPACK_IMPORTED_MODULE_2__["default"])(this.handles.start)) { + this.handles.start = image; + } else { + this.handles.end = image; + + this._applyStrategy(evt); + } + + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + return consumeEvent; +} +/** + * This function will update the handles and updateImage to force re-draw + * + * @private + * @method _setHandlesAndUpdate + * @param {(CornerstoneTools.event#TOUCH_DRAG|CornerstoneTools.event#MOUSE_DRAG|CornerstoneTools.event#MOUSE_MOVE)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _setHandlesAndUpdate(evt) { + var _evt$detail = evt.detail, + element = _evt$detail.element, + image = _evt$detail.currentPoints.image; + this.handles.end = image; + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); +} +/** + * Event handler for MOUSE_UP/TOUCH_END during handle drag event loop. + * + * @private + * @method _applyStrategy + * @param {(CornerstoneTools.event#MOUSE_UP|CornerstoneTools.event#TOUCH_END)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + +function _applyStrategy(evt) { + evt.detail.handles = this.handles; + var element = evt.detail.element; + + var _getters$labelmap2D = getters.labelmap2D(element), + labelmap2D = _getters$labelmap2D.labelmap2D, + labelmap3D = _getters$labelmap2D.labelmap3D, + currentImageIdIndex = _getters$labelmap2D.currentImageIdIndex; + + var pixelData = labelmap2D.pixelData; + var previousPixeldata = pixelData.slice(); + var points = [{ + x: this.handles.start.x, + y: this.handles.start.y + }, { + x: this.handles.end.x, + y: this.handles.end.y + }]; + var operationData = { + points: points, + pixelData: pixelData, + segmentIndex: labelmap3D.activeSegmentIndex, + segmentationMixinType: "rectangleSegmentationMixin" + }; + this.applyActiveStrategy(evt, operationData); + var operation = { + imageIdIndex: currentImageIdIndex, + diff: Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_4__["getDiffBetweenPixelData"])(previousPixeldata, pixelData) + }; + setters.pushState(this.element, [operation]); // Invalidate the brush tool data so it is redrawn + + setters.updateSegmentsOnLabelmap2D(labelmap2D); + _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + + this._resetHandles(); +} +/** + * Sets the start and end handle points to empty objects + * + * @private + * @method _resetHandles + * @returns {void} + */ + + +function _resetHandles() { + this.handles = { + start: {}, + end: {} + }; +} +/** + * @mixin rectangleSegmentationMixin - segmentation operations for rectangles + * @memberof Mixins + */ + + +/* harmony default export */ __webpack_exports__["default"] = ({ + postTouchStartCallback: _startOutliningRegion, + postMouseDownCallback: _startOutliningRegion, + mouseClickCallback: _startOutliningRegion, + touchDragCallback: _setHandlesAndUpdate, + mouseDragCallback: _setHandlesAndUpdate, + mouseMoveCallback: _setHandlesAndUpdate, + touchEndCallback: _applyStrategy, + mouseUpCallback: _applyStrategy, + initializeMixin: _resetHandles, + renderToolData: renderToolData, + _resetHandles: _resetHandles, + _applyStrategy: _applyStrategy +}); + +/***/ }), + +/***/ "./mixins/segmentation/renderBrushMixin.js": +/*!*************************************************!*\ + !*** ./mixins/segmentation/renderBrushMixin.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); + + +/** + * Called by the event dispatcher to render the image. + * + * @param {Object} evt - The event. + * @returns {void} + */ + +function renderBrush(evt) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + + var _getModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_1__["getModule"])('segmentation'), + getters = _getModule.getters, + configuration = _getModule.configuration; + + var eventData = evt.detail; + var viewport = eventData.viewport; + var mousePosition; + + if (this._drawing) { + mousePosition = this._lastImageCoords; + } else if (this._mouseUpRender) { + mousePosition = this._lastImageCoords; + this._mouseUpRender = false; + } else { + mousePosition = _store_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].state.mousePositionImage; + } + + if (!mousePosition) { + return; + } + + var _eventData$image = eventData.image, + rows = _eventData$image.rows, + columns = _eventData$image.columns; + var _mousePosition = mousePosition, + x = _mousePosition.x, + y = _mousePosition.y; + + if (x < 0 || x > columns || y < 0 || y > rows) { + return; + } // Draw the hover overlay on top of the pixel data + + + var radius = configuration.radius; + var context = eventData.canvasContext; + var element = eventData.element; + var color = getters.brushColor(element, this._drawing); + context.setTransform(1, 0, 0, 1, 0, 0); + var circleRadius = radius * viewport.scale; + var mouseCoordsCanvas = cornerstone.pixelToCanvas(element, mousePosition); + context.beginPath(); + context.strokeStyle = color; + context.ellipse(mouseCoordsCanvas.x, mouseCoordsCanvas.y, circleRadius, circleRadius, 0, 0, 2 * Math.PI); + context.stroke(); +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + renderBrush: renderBrush +}); + +/***/ }), + +/***/ "./orientation/getOrientationString.js": +/*!*********************************************!*\ + !*** ./orientation/getOrientationString.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); + + +/** + * Returns the orientation of the vector in the patient coordinate system. + * @public + * @function getOrientationString + * + * @param {Array|cornerstoneMath.Vector3} vector Input array or Vector3 + * @returns {string} The orientation in the patient coordinate system. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (vector) { + var vec3 = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(vector); // Thanks to David Clunie + // https://sites.google.com/site/dicomnotes/ + + var orientation = ''; + var orientationX = vec3.x < 0 ? 'R' : 'L'; + var orientationY = vec3.y < 0 ? 'A' : 'P'; + var orientationZ = vec3.z < 0 ? 'F' : 'H'; // Should probably make this a function vector3.abs + + var abs = new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Vector3(Math.abs(vec3.x), Math.abs(vec3.y), Math.abs(vec3.z)); + var MIN = 0.0001; + + for (var i = 0; i < 3; i++) { + if (abs.x > MIN && abs.x > abs.y && abs.x > abs.z) { + orientation += orientationX; + abs.x = 0; + } else if (abs.y > MIN && abs.y > abs.x && abs.y > abs.z) { + orientation += orientationY; + abs.y = 0; + } else if (abs.z > MIN && abs.z > abs.x && abs.z > abs.y) { + orientation += orientationZ; + abs.z = 0; + } else if (abs.x > MIN && abs.y > MIN && abs.x === abs.y) { + orientation += orientationX + orientationY; + abs.x = 0; + abs.y = 0; + } else if (abs.x > MIN && abs.z > MIN && abs.x === abs.z) { + orientation += orientationX + orientationZ; + abs.x = 0; + abs.z = 0; + } else if (abs.y > MIN && abs.z > MIN && abs.y === abs.z) { + orientation += orientationY + orientationZ; + abs.y = 0; + abs.z = 0; + } else { + break; + } + } + + return orientation; +}); + +/***/ }), + +/***/ "./orientation/index.js": +/*!******************************!*\ + !*** ./orientation/index.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getOrientationString_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getOrientationString.js */ "./orientation/getOrientationString.js"); +/* harmony import */ var _invertOrientationString_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./invertOrientationString.js */ "./orientation/invertOrientationString.js"); + + +var orientation = { + getOrientationString: _getOrientationString_js__WEBPACK_IMPORTED_MODULE_0__["default"], + invertOrientationString: _invertOrientationString_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}; +/* harmony default export */ __webpack_exports__["default"] = (orientation); + +/***/ }), + +/***/ "./orientation/invertOrientationString.js": +/*!************************************************!*\ + !*** ./orientation/invertOrientationString.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Inverts an orientation string. + * @public + * @function invertOrientationString + * + * @param {string} orientationString The orientation. + * @returns {string} The inverted orientationString. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (orientationString) { + var inverted = orientationString.replace('H', 'f'); + inverted = inverted.replace('F', 'h'); + inverted = inverted.replace('R', 'l'); + inverted = inverted.replace('L', 'r'); + inverted = inverted.replace('A', 'p'); + inverted = inverted.replace('P', 'a'); + inverted = inverted.toUpperCase(); + return inverted; +}); + +/***/ }), + +/***/ "./requestPool/requestPoolManager.js": +/*!*******************************************!*\ + !*** ./requestPool/requestPoolManager.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/getMaxSimultaneousRequests.js */ "./util/getMaxSimultaneousRequests.js"); + + +var requestPool = { + interaction: [], + thumbnail: [], + prefetch: [] +}; +var numRequests = { + interaction: 0, + thumbnail: 0, + prefetch: 0 +}; +var maxNumRequests = { + interaction: 6, + thumbnail: 6, + prefetch: 5 +}; +var awake = false; +var grabDelay = 20; + +function addRequest(element, imageId, type, preventCache, doneCallback, failCallback, addToBeginning) { + if (!requestPool.hasOwnProperty(type)) { + throw new Error('Request type must be one of interaction, thumbnail, or prefetch'); + } + + if (!element || !imageId) { + return; + } // Describe the request + + + var requestDetails = { + type: type, + imageId: imageId, + preventCache: preventCache, + doneCallback: doneCallback, + failCallback: failCallback + }; // If this imageId is in the cache, resolve it immediately + + var imageLoadObject = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.imageCache.getImageLoadObject(imageId); + + if (imageLoadObject) { + imageLoadObject.promise.then(function (image) { + doneCallback(image); + }, function (error) { + failCallback(error); + }); + return; + } + + if (addToBeginning) { + // Add it to the beginning of the stack + requestPool[type].unshift(requestDetails); + } else { + // Add it to the end of the stack + requestPool[type].push(requestDetails); + } // Wake up + + + awake = true; +} + +function clearRequestStack(type) { + // Console.log('clearRequestStack'); + if (!requestPool.hasOwnProperty(type)) { + throw new Error('Request type must be one of interaction, thumbnail, or prefetch'); + } + + requestPool[type] = []; +} + +function startAgain() { + if (!awake) { + return; + } + + setTimeout(function () { + startGrabbing(); + }, grabDelay); +} + +function sendRequest(requestDetails) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // Increment the number of current requests of this type + + var type = requestDetails.type; + numRequests[type]++; + awake = true; + var imageId = requestDetails.imageId; + var doneCallback = requestDetails.doneCallback; + var failCallback = requestDetails.failCallback; // Check if we already have this image promise in the cache + + var imageLoadObject = cornerstone.imageCache.getImageLoadObject(imageId); + + if (imageLoadObject) { + // If we do, remove from list (when resolved, as we could have + // Pending prefetch requests) and stop processing this iteration + imageLoadObject.promise.then(function (image) { + numRequests[type]--; // Console.log(numRequests); + + doneCallback(image); + startAgain(); + }, function (error) { + numRequests[type]--; // Console.log(numRequests); + + failCallback(error); + startAgain(); + }); + return; + } + + function requestTypeToLoadPriority(requestDetails) { + if (requestDetails.type === 'prefetch') { + return -5; + } else if (requestDetails.type === 'interactive') { + return 0; + } else if (requestDetails.type === 'thumbnail') { + return 5; + } + } + + var priority = requestTypeToLoadPriority(requestDetails); + var loader; + + if (requestDetails.preventCache === true) { + loader = cornerstone.loadImage(imageId, { + priority: priority, + type: requestDetails.type + }); + } else { + loader = cornerstone.loadAndCacheImage(imageId, { + priority: priority, + type: requestDetails.type + }); + } // Load and cache the image + + + loader.then(function (image) { + numRequests[type]--; // Console.log(numRequests); + + doneCallback(image); + startAgain(); + }, function (error) { + numRequests[type]--; // Console.log(numRequests); + + failCallback(error); + startAgain(); + }); +} + +function startGrabbing() { + // Begin by grabbing X images + var maxSimultaneousRequests = Object(_util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_1__["getMaxSimultaneousRequests"])(); + maxNumRequests = { + interaction: Math.max(maxSimultaneousRequests, 1), + thumbnail: Math.max(maxSimultaneousRequests - 2, 1), + prefetch: Math.max(maxSimultaneousRequests - 1, 1) + }; + var currentRequests = numRequests.interaction + numRequests.thumbnail + numRequests.prefetch; + var requestsToSend = maxSimultaneousRequests - currentRequests; + + for (var i = 0; i < requestsToSend; i++) { + var requestDetails = getNextRequest(); + + if (requestDetails) { + sendRequest(requestDetails); + } + } +} + +function getNextRequest() { + if (requestPool.interaction.length && numRequests.interaction < maxNumRequests.interaction) { + return requestPool.interaction.shift(); + } + + if (requestPool.thumbnail.length && numRequests.thumbnail < maxNumRequests.thumbnail) { + return requestPool.thumbnail.shift(); + } + + if (requestPool.prefetch.length && numRequests.prefetch < maxNumRequests.prefetch) { + return requestPool.prefetch.shift(); + } + + if (!requestPool.interaction.length && !requestPool.thumbnail.length && !requestPool.prefetch.length) { + awake = false; + } + + return false; +} + +function getRequestPool() { + return requestPool; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + addRequest: addRequest, + clearRequestStack: clearRequestStack, + startGrabbing: startGrabbing, + getRequestPool: getRequestPool +}); + +/***/ }), + +/***/ "./stackTools/fusionRenderer.js": +/*!**************************************!*\ + !*** ./stackTools/fusionRenderer.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FusionRenderer; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); + + + + + +var FusionRenderer = +/*#__PURE__*/ +function () { + function FusionRenderer() { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, FusionRenderer); + + this.currentImageIdIndex = 0; + this.layerIds = []; + this.findImageFn = undefined; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(FusionRenderer, [{ + key: "render", + value: function render(element, imageStacks) { + var _this = this; + + // Move this to base Renderer class + if (!Number.isInteger(this.currentImageIdIndex)) { + throw new Error('FusionRenderer: render - Image ID Index is not an integer'); + } + + if (!this.findImageFn) { + throw new Error('No findImage function has been defined'); + } + + if (!imageStacks) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stack'); + imageStacks = toolData.data; + } // TODO: Figure out what to do with LoadHandlers in this scenario... + + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone; // For the base layer, go to the currentImageIdIndex + + var baseImageObject = imageStacks[0]; + var currentImageId = baseImageObject.imageIds[this.currentImageIdIndex]; + var overlayImageStacks = imageStacks.slice(1, imageStacks.length); + cornerstone.loadAndCacheImage(currentImageId).then(function (baseImage) { + var baseLayerId = _this.layerIds[0]; // Get the base layer if one exists + + if (baseLayerId) { + cornerstone.setLayerImage(element, baseImage, baseLayerId); + } else { + // Otherwise, create a new layer with the base layer's image + baseLayerId = cornerstone.addLayer(element, baseImage, baseImageObject.options); + + _this.layerIds.push(baseLayerId); + } // Display the image immediately while the overlay images are identified + + + cornerstone.displayImage(element, baseImage); // Loop through the remaining 'overlay' image stacks + + overlayImageStacks.forEach(function (imgObj, overlayLayerIndex) { + var imageId = _this.findImageFn(imgObj.imageIds, currentImageId); + + var layerIndex = overlayLayerIndex + 1; + var currentLayerId = _this.layerIds[layerIndex]; // If no layer exists yet for this overlaid stack, create + // One and add it to the layerIds property for this instance + // Of the fusion renderer. + + if (!currentLayerId) { + currentLayerId = cornerstone.addLayer(element, undefined, imgObj.options); + + _this.layerIds.push(currentLayerId); + } + + if (imageId) { + // If an imageId was returned from the findImage function, + // Load it, make sure it's visible and update the layer + // With the new image object. + cornerstone.loadAndCacheImage(imageId).then(function (image) { + cornerstone.setLayerImage(element, image, currentLayerId); + cornerstone.updateImage(element); + }); + } else { + // If no imageId was returned from the findImage function. + // This means that there is no relevant image to display. + cornerstone.setLayerImage(element, undefined, currentLayerId); + cornerstone.setActiveLayer(element, baseLayerId); + cornerstone.updateImage(element); + } + }); + }); + } + }]); + + return FusionRenderer; +}(); + + + +/***/ }), + +/***/ "./stackTools/playClip.js": +/*!********************************!*\ + !*** ./stackTools/playClip.js ***! + \********************************/ +/*! exports provided: playClip, stopClip */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "playClip", function() { return playClip; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "stopClip", function() { return stopClip; }); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); + + + + + +var toolType = 'playClip'; +/** + * [private] Turns a Frame Time Vector (0018,1065) array into a normalized array of timeouts. Each element + * ... of the resulting array represents the amount of time each frame will remain on the screen. + * @param {Array} vector A Frame Time Vector (0018,1065) as specified in section C.7.6.5.1.2 of DICOM standard. + * @param {Number} speed A speed factor which will be applied to each element of the resulting array. + * @returns {Array} An array with timeouts for each animation frame. + */ + +function getPlayClipTimeouts(vector, speed) { + var i; + var sample; + var delay; + var sum = 0; + var limit = vector.length; + var timeouts = []; // Initialize time varying to false + + timeouts.isTimeVarying = false; + + if (typeof speed !== 'number' || speed <= 0) { + speed = 1; + } // First element of a frame time vector must be discarded + + + for (i = 1; i < limit; i++) { + // eslint-disable-next-line no-bitwise + delay = Number(vector[i]) / speed | 0; // Integral part only + + timeouts.push(delay); + + if (i === 1) { + // Use first item as a sample for comparison + sample = delay; + } else if (delay !== sample) { + timeouts.isTimeVarying = true; + } + + sum += delay; + } + + if (timeouts.length > 0) { + if (timeouts.isTimeVarying) { + // If it's a time varying vector, make the last item an average... + // eslint-disable-next-line no-bitwise + delay = sum / timeouts.length | 0; + } else { + delay = timeouts[0]; + } + + timeouts.push(delay); + } + + return timeouts; +} +/** + * [private] Performs the heavy lifting of stopping an ongoing animation. + * @param {Object} playClipData The data from playClip that needs to be stopped. + * @returns {void} + */ + + +function stopClipWithData(playClipData) { + var id = playClipData.intervalId; + + if (typeof id !== 'undefined') { + playClipData.intervalId = undefined; + + if (playClipData.usingFrameTimeVector) { + clearTimeout(id); + } else { + clearInterval(id); + } + } +} +/** + * [private] Trigger playClip tool stop event. + * @param {HTMLElement} element + * @returns {void} + */ + + +function triggerStopEvent(element) { + var eventDetail = { + element: element + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_4__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].CLIP_STOPPED, eventDetail); +} +/** + * Starts playing a clip or adjusts the frame rate of an already playing clip. framesPerSecond is + * optional and defaults to 30 if not specified. A negative framesPerSecond will play the clip in reverse. + * The element must be a stack of images + * @param {HTMLElement} element + * @param {number} framesPerSecond + * @returns {void} + */ + + +function playClip(element, framesPerSecond) { + var playClipData; + var playClipTimeouts; + + if (element === undefined) { + throw new Error('playClip: element must not be undefined'); + } + + var stackToolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stack'); + + if (!stackToolData || !stackToolData.data || !stackToolData.data.length) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone; // If we have more than one stack, check if we have a stack renderer defined + + var stackRenderer; + + if (stackToolData.data.length > 1) { + var stackRendererData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stackRenderer'); + + if (stackRendererData && stackRendererData.data && stackRendererData.data.length) { + stackRenderer = stackRendererData.data[0]; + } + } + + var stackData = stackToolData.data[0]; + var playClipToolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); + + if (!playClipToolData || !playClipToolData.data || !playClipToolData.data.length) { + playClipData = { + intervalId: undefined, + framesPerSecond: 30, + lastFrameTimeStamp: undefined, + frameRate: 0, + frameTimeVector: undefined, + ignoreFrameTimeVector: false, + usingFrameTimeVector: false, + speed: 1, + reverse: false, + loop: true + }; + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["addToolState"])(element, toolType, playClipData); + } else { + playClipData = playClipToolData.data[0]; // Make sure the specified clip is not running before any property update + + stopClipWithData(playClipData); + } // If a framesPerSecond is specified and is valid, update the playClipData now + + + if (framesPerSecond < 0 || framesPerSecond > 0) { + playClipData.framesPerSecond = Number(framesPerSecond); + playClipData.reverse = playClipData.framesPerSecond < 0; // If framesPerSecond is given, frameTimeVector will be ignored... + + playClipData.ignoreFrameTimeVector = true; + } // Determine if frame time vector should be used instead of a fixed frame rate... + + + if (playClipData.ignoreFrameTimeVector !== true && playClipData.frameTimeVector && playClipData.frameTimeVector.length === stackData.imageIds.length) { + playClipTimeouts = getPlayClipTimeouts(playClipData.frameTimeVector, playClipData.speed); + } // This function encapsulates the frame rendering logic... + + + var playClipAction = function playClipAction() { + // Hoisting of context variables + var loader, + startLoadingHandler, + endLoadingHandler, + errorLoadingHandler, + newImageIdIndex = stackData.currentImageIdIndex; + var imageCount = stackData.imageIds.length; + + if (playClipData.reverse) { + newImageIdIndex--; + } else { + newImageIdIndex++; + } + + if (!playClipData.loop && (newImageIdIndex < 0 || newImageIdIndex >= imageCount)) { + stopClipWithData(playClipData); + triggerStopEvent(element); + return; + } // Loop around if we go outside the stack + + + if (newImageIdIndex >= imageCount) { + newImageIdIndex = 0; + } + + if (newImageIdIndex < 0) { + newImageIdIndex = imageCount - 1; + } + + if (newImageIdIndex !== stackData.currentImageIdIndex) { + startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getStartLoadHandler(element); + endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getEndLoadHandler(element); + errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(element); + + if (startLoadingHandler) { + startLoadingHandler(element); + } + + if (stackData.preventCache === true) { + loader = cornerstone.loadImage(stackData.imageIds[newImageIdIndex]); + } else { + loader = cornerstone.loadAndCacheImage(stackData.imageIds[newImageIdIndex]); + } + + loader.then(function (image) { + try { + stackData.currentImageIdIndex = newImageIdIndex; + + if (stackRenderer) { + stackRenderer.currentImageIdIndex = newImageIdIndex; + stackRenderer.render(element, stackToolData.data); + } else { + cornerstone.displayImage(element, image); + } + + if (endLoadingHandler) { + endLoadingHandler(element, image); + } + } catch (error) { + return; + } + }, function (error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(element, imageId, error); + } + }); + } + }; // If playClipTimeouts array is available, not empty and its elements are NOT uniform ... + // ... (at least one timeout is different from the others), use alternate setTimeout implementation + + + if (playClipTimeouts && playClipTimeouts.length > 0 && playClipTimeouts.isTimeVarying) { + playClipData.usingFrameTimeVector = true; + playClipData.intervalId = setTimeout(function playClipTimeoutHandler() { + playClipData.intervalId = setTimeout(playClipTimeoutHandler, playClipTimeouts[stackData.currentImageIdIndex]); + playClipAction(); + }, 0); + } else { + // ... otherwise user setInterval implementation which is much more efficient. + playClipData.usingFrameTimeVector = false; + playClipData.intervalId = setInterval(playClipAction, 1000 / Math.abs(playClipData.framesPerSecond)); + } +} +/** + * Stops an already playing clip. + * @param {HTMLElement} element + * @returns {void} + */ + + +function stopClip(element) { + var playClipToolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); + + if (!playClipToolData || !playClipToolData.data || !playClipToolData.data.length) { + return; + } + + stopClipWithData(playClipToolData.data[0]); +} + + + +/***/ }), + +/***/ "./stackTools/stackPrefetch.js": +/*!*************************************!*\ + !*** ./stackTools/stackPrefetch.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../requestPool/requestPoolManager.js */ "./requestPool/requestPoolManager.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/getMaxSimultaneousRequests.js */ "./util/getMaxSimultaneousRequests.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_triggerEvent__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../util/triggerEvent */ "./util/triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../events.js */ "./events.js"); + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_5__["getLogger"])('stackTools:stackPrefetch'); +var toolType = 'stackPrefetch'; +var requestType = 'prefetch'; +var configuration = { + maxImagesToPrefetch: Infinity, + preserveExistingPool: false +}; +var resetPrefetchTimeout; +var resetPrefetchDelay = 10; + +function range(lowEnd, highEnd) { + // Javascript version of Python's range function + // http://stackoverflow.com/questions/3895478/does-javascript-have-a-method-like-range-to-generate-an-array-based-on-suppl + lowEnd = Math.round(lowEnd) || 0; + highEnd = Math.round(highEnd) || 0; + var arr = []; + var c = highEnd - lowEnd + 1; + + if (c <= 0) { + return arr; + } + + while (c--) { + arr[c] = highEnd--; + } + + return arr; +} + +var max = function max(arr) { + return Math.max.apply(null, arr); +}; + +var min = function min(arr) { + return Math.min.apply(null, arr); +}; + +function nearestIndex(arr, x) { + // Return index of nearest values in array + // http://stackoverflow.com/questions/25854212/return-index-of-nearest-values-in-an-array + var l = []; + var h = []; + arr.forEach(function (v) { + if (v < x) { + l.push(v); + } else if (v > x) { + h.push(v); + } + }); + return { + low: arr.indexOf(max(l)), + high: arr.indexOf(min(h)) + }; +} + +function prefetch(element) { + // Check to make sure stack data exists + var stackData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stack'); + + if (!stackData || !stackData.data || !stackData.data.length) { + return; + } + + var stack = stackData.data[0]; // Get the stackPrefetch tool data + + var stackPrefetchData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); + + if (!stackPrefetchData) { + return; + } + + var stackPrefetch = stackPrefetchData.data[0] || {}; // If all the requests are complete, disable the stackPrefetch tool + + if (!stackPrefetch.indicesToRequest || !stackPrefetch.indicesToRequest.length) { + stackPrefetch.enabled = false; + } // Make sure the tool is still enabled + + + if (stackPrefetch.enabled === false) { + return; + } // Remove an imageIdIndex from the list of indices to request + // This fires when the individual image loading deferred is resolved + + + function removeFromList(imageIdIndex) { + var index = stackPrefetch.indicesToRequest.indexOf(imageIdIndex); + + if (index > -1) { + // Don't remove last element if imageIdIndex not found + stackPrefetch.indicesToRequest.splice(index, 1); + } + } // Remove all already cached images from the + // IndicesToRequest array + + + stackPrefetchData.data[0].indicesToRequest.sort(function (a, b) { + return a - b; + }); + var indicesToRequestCopy = stackPrefetch.indicesToRequest.slice(); + indicesToRequestCopy.forEach(function (imageIdIndex) { + var imageId = stack.imageIds[imageIdIndex]; + + if (!imageId) { + return; + } + + var imageLoadObject = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.imageCache.getImageLoadObject(imageId); + + if (imageLoadObject) { + removeFromList(imageIdIndex); + } + }); // Stop here if there are no images left to request + // After those in the cache have been removed + + if (!stackPrefetch.indicesToRequest.length) { + return; + } // Clear the requestPool of prefetch requests, if needed. + + + if (!configuration.preserveExistingPool) { + _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].clearRequestStack(requestType); + } // Identify the nearest imageIdIndex to the currentImageIdIndex + + + var nearest = nearestIndex(stackPrefetch.indicesToRequest, stack.currentImageIdIndex); + var imageId; + var nextImageIdIndex; + var preventCache = false; + + function doneCallback(image) { + logger.log('prefetch done: %s', image.imageId); + var imageIdIndex = stack.imageIds.indexOf(image.imageId); + removeFromList(imageIdIndex); + Object(_util_triggerEvent__WEBPACK_IMPORTED_MODULE_6__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].STACK_PREFETCH_IMAGE_LOADED, { + element: element, + imageId: image.imageId, + imageIndex: imageIdIndex, + stackPrefetch: stackPrefetch, + stack: stack + }); // If there are no more images to fetch + + if (!(stackPrefetch.indicesToRequest && stackPrefetch.indicesToRequest.length > 0)) { + Object(_util_triggerEvent__WEBPACK_IMPORTED_MODULE_6__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].STACK_PREFETCH_DONE, { + element: element, + stackPrefetch: stackPrefetch, + stack: stack + }); + } + } // Retrieve the errorLoadingHandler if one exists + + + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(element); + + function failCallback(error) { + logger.log('prefetch errored: %o', error); + + if (errorLoadingHandler) { + errorLoadingHandler(element, imageId, error, 'stackPrefetch'); + } + } // Prefetch images around the current image (before and after) + + + var lowerIndex = nearest.low; + var higherIndex = nearest.high; + var imageIdsToPrefetch = []; + + while (lowerIndex >= 0 || higherIndex < stackPrefetch.indicesToRequest.length) { + var currentIndex = stack.currentImageIdIndex; + var shouldSkipLower = currentIndex - stackPrefetch.indicesToRequest[lowerIndex] > configuration.maxImagesToPrefetch; + var shouldSkipHigher = stackPrefetch.indicesToRequest[higherIndex] - currentIndex > configuration.maxImagesToPrefetch; + var shouldLoadLower = !shouldSkipLower && lowerIndex >= 0; + var shouldLoadHigher = !shouldSkipHigher && higherIndex < stackPrefetch.indicesToRequest.length; + + if (!shouldLoadHigher && !shouldLoadLower) { + break; + } + + if (shouldLoadLower) { + nextImageIdIndex = stackPrefetch.indicesToRequest[lowerIndex--]; + imageId = stack.imageIds[nextImageIdIndex]; + imageIdsToPrefetch.push(imageId); + } + + if (shouldLoadHigher) { + nextImageIdIndex = stackPrefetch.indicesToRequest[higherIndex++]; + imageId = stack.imageIds[nextImageIdIndex]; + imageIdsToPrefetch.push(imageId); + } + } // Load images in reverse order, by adding them at the beginning of the pool. + + + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; + + try { + for (var _iterator = imageIdsToPrefetch.reverse()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var imageToLoad = _step.value; + _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].addRequest(element, imageToLoad, requestType, preventCache, doneCallback, failCallback, true); + } // Try to start the requestPool's grabbing procedure + // In case it isn't already running + + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator.return != null) { + _iterator.return(); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + + _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].startGrabbing(); +} + +function getPromiseRemovedHandler(element) { + return function (e) { + var eventData = e.detail; // When an imagePromise has been pushed out of the cache, re-add its index + // It to the indicesToRequest list so that it will be retrieved later if the + // CurrentImageIdIndex is changed to an image nearby + + var stackData; + + try { + // It will throw an exception in some cases (eg: thumbnails) + stackData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stack'); + } catch (error) { + return; + } + + if (!stackData || !stackData.data || !stackData.data.length) { + return; + } + + var stack = stackData.data[0]; + var imageIdIndex = stack.imageIds.indexOf(eventData.imageId); // Make sure the image that was removed is actually in this stack + // Before adding it to the indicesToRequest array + + if (imageIdIndex < 0) { + return; + } + + var stackPrefetchData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); + + if (!stackPrefetchData || !stackPrefetchData.data || !stackPrefetchData.data.length) { + return; + } + + stackPrefetchData.data[0].indicesToRequest.push(imageIdIndex); + }; +} + +function onImageUpdated(e) { + // Start prefetching again (after a delay) + // When the user has scrolled to a new image + clearTimeout(resetPrefetchTimeout); + resetPrefetchTimeout = setTimeout(function () { + var element = e.target; // If playClip is enabled and the user loads a different series in the viewport + // An exception will be thrown because the element will not be enabled anymore + + try { + prefetch(element); + } catch (error) { + return; + } + }, resetPrefetchDelay); +} + +function enable(element) { + // Clear old prefetch data. Skipping this can cause problems when changing the series inside an element + var stackPrefetchDataArray = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); + stackPrefetchDataArray.data = []; // First check that there is stack data available + + var stackData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, 'stack'); + + if (!stackData || !stackData.data || !stackData.data.length) { + return; + } + + var stack = stackData.data[0]; // Check if we are allowed to cache images in this stack + + if (stack.preventCache === true) { + logger.warn('A stack that should not be cached was given the stackPrefetch'); + return; + } // Use the currentImageIdIndex from the stack as the initalImageIdIndex + + + var stackPrefetchData = { + indicesToRequest: range(0, stack.imageIds.length - 1), + enabled: true, + direction: 1 + }; // Remove the currentImageIdIndex from the list to request + + var indexOfCurrentImage = stackPrefetchData.indicesToRequest.indexOf(stack.currentImageIdIndex); + stackPrefetchData.indicesToRequest.splice(indexOfCurrentImage, 1); + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["addToolState"])(element, toolType, stackPrefetchData); + prefetch(element); + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.NEW_IMAGE, onImageUpdated); + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.NEW_IMAGE, onImageUpdated); + var promiseRemovedHandler = getPromiseRemovedHandler(element); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.events.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED, promiseRemovedHandler); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.events.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED, promiseRemovedHandler); +} + +function disable(element) { + clearTimeout(resetPrefetchTimeout); + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.NEW_IMAGE, onImageUpdated); + var promiseRemovedHandler = getPromiseRemovedHandler(element); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.events.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED, promiseRemovedHandler); + var stackPrefetchData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, toolType); // If there is actually something to disable, disable it + + if (stackPrefetchData && stackPrefetchData.data.length) { + stackPrefetchData.data[0].enabled = false; // Clear current prefetch requests from the requestPool + + _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].clearRequestStack(requestType); + } +} + +function getConfiguration() { + return configuration; +} + +function setConfiguration(config) { + configuration = config; + + if (config.maxSimultaneousRequests) { + Object(_util_getMaxSimultaneousRequests_js__WEBPACK_IMPORTED_MODULE_4__["setMaxSimultaneousRequests"])(config.maxSimultaneousRequests); + } +} // Module/private exports + + +var stackPrefetch = { + enable: enable, + disable: disable, + getConfiguration: getConfiguration, + setConfiguration: setConfiguration +}; +/* harmony default export */ __webpack_exports__["default"] = (stackPrefetch); + +/***/ }), + +/***/ "./stackTools/stackRenderers.js": +/*!**************************************!*\ + !*** ./stackTools/stackRenderers.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _fusionRenderer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fusionRenderer.js */ "./stackTools/fusionRenderer.js"); + +var stackRenderers = {}; +stackRenderers.FusionRenderer = _fusionRenderer_js__WEBPACK_IMPORTED_MODULE_0__["default"]; +/* harmony default export */ __webpack_exports__["default"] = (stackRenderers); + +/***/ }), + +/***/ "./stateManagement/frameOfReferenceStateManager.js": +/*!*********************************************************!*\ + !*** ./stateManagement/frameOfReferenceStateManager.js ***! + \*********************************************************/ +/*! exports provided: newFrameOfReferenceSpecificToolStateManager, globalFrameOfReferenceSpecificToolStateManager */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "newFrameOfReferenceSpecificToolStateManager", function() { return newFrameOfReferenceSpecificToolStateManager; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "globalFrameOfReferenceSpecificToolStateManager", function() { return globalFrameOfReferenceSpecificToolStateManager; }); +/** + * Implements a frame-of-reference specific tool state management strategy. This means that + * Measurement data are tied to a specific frame of reference UID and only visible to objects using + * That frame-of-reference UID. + * @public + * @constructor newFrameOfReferenceSpecificToolStateManager + * @memberof StateManagement + * + * @returns {Object} A frameOfReferenceSpecificToolStateManager instance. + */ +function newFrameOfReferenceSpecificToolStateManager() { + var toolState = {}; // Here we add tool state, this is done by tools as well + // As modules that restore saved state + + function addFrameOfReferenceSpecificToolState(frameOfReference, toolType, data) { + // If we don't have any tool state for this frameOfReference, add an empty object + if (toolState.hasOwnProperty(frameOfReference) === false) { + toolState[frameOfReference] = {}; + } + + var frameOfReferenceToolState = toolState[frameOfReference]; // If we don't have tool state for this type of tool, add an empty object + + if (frameOfReferenceToolState.hasOwnProperty(toolType) === false) { + frameOfReferenceToolState[toolType] = { + data: [] + }; + } + + var toolData = frameOfReferenceToolState[toolType]; // Finally, add this new tool to the state + + toolData.data.push(data); + } // Here you can get state - used by tools as well as modules + // That save state persistently + + + function getFrameOfReferenceSpecificToolState(frameOfReference, toolType) { + // If we don't have any tool state for this frame of reference, return undefined + if (toolState.hasOwnProperty(frameOfReference) === false) { + return; + } + + var frameOfReferenceToolState = toolState[frameOfReference]; // If we don't have tool state for this type of tool, return undefined + + if (frameOfReferenceToolState.hasOwnProperty(toolType) === false) { + return; + } + + var toolData = frameOfReferenceToolState[toolType]; + return toolData; + } + + function removeFrameOfReferenceSpecificToolState(frameOfReference, toolType, data) { + // If we don't have any tool state for this frame of reference, return undefined + if (toolState.hasOwnProperty(frameOfReference) === false) { + return; + } + + var frameOfReferenceToolState = toolState[frameOfReference]; // If we don't have tool state for this type of tool, return undefined + + if (frameOfReferenceToolState.hasOwnProperty(toolType) === false) { + return; + } + + var toolData = frameOfReferenceToolState[toolType]; // Find this tool data + + var indexOfData = -1; + + for (var i = 0; i < toolData.data.length; i++) { + if (toolData.data[i] === data) { + indexOfData = i; + } + } + + if (indexOfData !== -1) { + toolData.data.splice(indexOfData, 1); + } + } + + return { + get: getFrameOfReferenceSpecificToolState, + add: addFrameOfReferenceSpecificToolState, + remove: removeFrameOfReferenceSpecificToolState + }; +} // A global frameOfReferenceSpecificToolStateManager - the most common case is to share 3d information +// Between stacks of images + + +var globalFrameOfReferenceSpecificToolStateManager = newFrameOfReferenceSpecificToolStateManager(); + + +/***/ }), + +/***/ "./stateManagement/imageIdSpecificStateManager.js": +/*!********************************************************!*\ + !*** ./stateManagement/imageIdSpecificStateManager.js ***! + \********************************************************/ +/*! exports provided: newImageIdSpecificToolStateManager, globalImageIdSpecificToolStateManager */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "newImageIdSpecificToolStateManager", function() { return newImageIdSpecificToolStateManager; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "globalImageIdSpecificToolStateManager", function() { return globalImageIdSpecificToolStateManager; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Implements an imageId specific tool state management strategy. This means that + * Measurements data is tied to a specific imageId and only visible for enabled elements + * That are displaying that imageId. + * @public + * @constructor newImageIdSpecificToolStateManager + * @memberof StateManagement + * + * @returns {Object} An imageIdSpecificToolStateManager instance. + */ + +function newImageIdSpecificToolStateManager() { + var toolState = {}; // Here we add tool state, this is done by tools as well + // As modules that restore saved state + + function saveImageIdToolState(imageId) { + return toolState[imageId]; + } + + function restoreImageIdToolState(imageId, imageIdToolState) { + toolState[imageId] = imageIdToolState; + } + + function saveToolState() { + return toolState; + } + + function restoreToolState(savedToolState) { + toolState = savedToolState; + } // Here we add tool state, this is done by tools as well + // As modules that restore saved state + + + function addElementToolState(element, toolType, data) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); // If we don't have an image for this element exit early + + if (!enabledElement.image) { + return; + } + + addImageIdToolState(enabledElement.image.imageId, toolType, data); + } + + function addImageIdToolState(imageId, toolType, data) { + // If we don't have any tool state for this imageId, add an empty object + if (toolState.hasOwnProperty(imageId) === false) { + toolState[imageId] = {}; + } + + var imageIdToolState = toolState[imageId]; // If we don't have tool state for this type of tool, add an empty object + + if (imageIdToolState.hasOwnProperty(toolType) === false) { + imageIdToolState[toolType] = { + data: [] + }; + } + + var toolData = imageIdToolState[toolType]; // Finally, add this new tool to the state + + toolData.data.push(data); + } + + function getElementToolState(element, toolType) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); // If the element does not have an image return undefined. + + if (!enabledElement.image) { + return; + } + + return getImageIdToolState(enabledElement.image.imageId, toolType); + } // Here you can get state - used by tools as well as modules + // That save state persistently + + + function getImageIdToolState(imageId, toolType) { + // If we don't have any tool state for this imageId, return undefined + if (toolState.hasOwnProperty(imageId) === false) { + return; + } + + var imageIdToolState = toolState[imageId]; // If we don't have tool state for this type of tool, return undefined + + if (imageIdToolState.hasOwnProperty(toolType) === false) { + return; + } + + return imageIdToolState[toolType]; + } // Clears all tool data from this toolStateManager. + + + function clearElementToolState(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return; + } + + clearImageIdToolState(enabledElement.image.imageId); + } + + function clearImageIdToolState(imageId) { + if (toolState.hasOwnProperty(imageId) === false) { + return; + } + + delete toolState[imageId]; + } + + return { + get: getElementToolState, + add: addElementToolState, + clear: clearElementToolState, + getImageIdToolState: getImageIdToolState, + addImageIdToolState: addImageIdToolState, + clearImageIdToolState: clearImageIdToolState, + saveImageIdToolState: saveImageIdToolState, + restoreImageIdToolState: restoreImageIdToolState, + saveToolState: saveToolState, + restoreToolState: restoreToolState, + toolState: toolState + }; +} // A global imageIdSpecificToolStateManager - the most common case is to share state between all +// Visible enabled images + + +var globalImageIdSpecificToolStateManager = newImageIdSpecificToolStateManager(); + + +/***/ }), + +/***/ "./stateManagement/loadHandlerManager.js": +/*!***********************************************!*\ + !*** ./stateManagement/loadHandlerManager.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +var _DEFAULT_LOAD_HANDLER = 'DEFAULT'; +var defaultStartLoadHandler = {}; +var defaultEndLoadHandler = {}; +var defaultErrorLoadingHandler = {}; + +function _getUUIDFromElement(element) { + if (!element) { + return _DEFAULT_LOAD_HANDLER; + } + + var uuid = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element).uuid; + + if (!uuid) { + throw new Error('Something went wrong when getting uuid from element'); + } + + return uuid; +} + +function setStartLoadHandler(handler) { + var element = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; + + if (!handler) { + throw new Error('The Handler function must be defined'); + } + + var uuid = _getUUIDFromElement(element); + + defaultStartLoadHandler[uuid] = handler; +} + +function getStartLoadHandler(element) { + var uuid = _getUUIDFromElement(element); + + return defaultStartLoadHandler[uuid] || defaultStartLoadHandler[_DEFAULT_LOAD_HANDLER]; +} + +function setEndLoadHandler(handler) { + var element = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; + + if (!handler) { + throw new Error('The Handler function must be defined'); + } + + var uuid = _getUUIDFromElement(element); + + defaultEndLoadHandler[uuid] = handler; +} + +function getEndLoadHandler(element) { + var uuid = _getUUIDFromElement(element); + + return defaultEndLoadHandler[uuid] || defaultEndLoadHandler[_DEFAULT_LOAD_HANDLER]; +} + +function setErrorLoadingHandler(handler) { + var element = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; + + if (!handler) { + throw new Error('The Handler function must be defined'); + } + + var uuid = _getUUIDFromElement(element); + + defaultErrorLoadingHandler[uuid] = handler; +} + +function getErrorLoadingHandler(element) { + var uuid = _getUUIDFromElement(element); + + return defaultErrorLoadingHandler[uuid] || defaultErrorLoadingHandler[_DEFAULT_LOAD_HANDLER]; +} + +function removeHandlers(element) { + var uuid = _getUUIDFromElement(element); + + delete defaultStartLoadHandler[uuid]; + delete defaultEndLoadHandler[uuid]; + delete defaultErrorLoadingHandler[uuid]; +} + +var loadHandlerManager = { + setStartLoadHandler: setStartLoadHandler, + getStartLoadHandler: getStartLoadHandler, + setEndLoadHandler: setEndLoadHandler, + getEndLoadHandler: getEndLoadHandler, + setErrorLoadingHandler: setErrorLoadingHandler, + getErrorLoadingHandler: getErrorLoadingHandler, + removeHandlers: removeHandlers +}; +/* harmony default export */ __webpack_exports__["default"] = (loadHandlerManager); + +/***/ }), + +/***/ "./stateManagement/stackSpecificStateManager.js": +/*!******************************************************!*\ + !*** ./stateManagement/stackSpecificStateManager.js ***! + \******************************************************/ +/*! exports provided: stackSpecificStateManager, newStackSpecificToolStateManager, addStackStateManager */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "stackSpecificStateManager", function() { return stackSpecificStateManager; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "newStackSpecificToolStateManager", function() { return newStackSpecificToolStateManager; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addStackStateManager", function() { return addStackStateManager; }); +/* harmony import */ var _imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./imageIdSpecificStateManager.js */ "./stateManagement/imageIdSpecificStateManager.js"); +/* harmony import */ var _toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toolState.js */ "./stateManagement/toolState.js"); + + +/** + * Implements an Stack specific tool state management strategy. This means + * That tool data is shared between all imageIds in a given stack. + * @public + * @constructor newStackSpecificToolStateManager + * @memberof StateManagement + * + * @param {string[]} toolTypes The tool types to apply to the stack. + * @param {Object} oldStateManager The imageIdSpecificStateManager. + * @returns {Object} A stackSpecificToolStateManager instance. + */ + +function newStackSpecificToolStateManager(toolTypes, oldStateManager) { + var toolState = {}; + + function saveToolState() { + return toolState; + } + + function restoreToolState(stackToolState) { + toolState = stackToolState; + } // Here we add tool state, this is done by tools as well + // As modules that restore saved state + + + function addStackSpecificToolState(element, toolType, data) { + // If this is a tool type to apply to the stack, do so + if (toolTypes.indexOf(toolType) >= 0) { + // If we don't have tool state for this type of tool, add an empty object + if (toolState.hasOwnProperty(toolType) === false) { + toolState[toolType] = { + data: [] + }; + } + + var toolData = toolState[toolType]; // Finally, add this new tool to the state + + toolData.data.push(data); + } else { + // Call the imageId specific tool state manager + return oldStateManager.add(element, toolType, data); + } + } // Here you can get state - used by tools as well as modules + // That save state persistently + + + function getStackSpecificToolState(element, toolType) { + // If this is a tool type to apply to the stack, do so + if (toolTypes.indexOf(toolType) >= 0) { + // If we don't have tool state for this type of tool, add an empty object + if (toolState.hasOwnProperty(toolType) === false) { + toolState[toolType] = { + data: [] + }; + } + + return toolState[toolType]; + } // Call the imageId specific tool state manager + + + return oldStateManager.get(element, toolType); + } + + var stackSpecificToolStateManager = { + get: getStackSpecificToolState, + add: addStackSpecificToolState, + saveToolState: saveToolState, + restoreToolState: restoreToolState, + toolState: toolState + }; + return stackSpecificToolStateManager; +} + +var stackStateManagers = []; + +function addStackStateManager(element, otherTools) { + var oldStateManager = Object(_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getElementToolStateManager"])(element); + + if (!oldStateManager) { + oldStateManager = _imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_0__["globalImageIdSpecificToolStateManager"]; + } + + var stackTools = ['stack', 'stackPrefetch', 'playClip', 'volume', 'slab', 'referenceLines', 'crosshairs', 'stackRenderer']; + + if (otherTools) { + stackTools = stackTools.concat(otherTools); + } + + var stackSpecificStateManager = newStackSpecificToolStateManager(stackTools, oldStateManager); + stackStateManagers.push(stackSpecificStateManager); + Object(_toolState_js__WEBPACK_IMPORTED_MODULE_1__["setElementToolStateManager"])(element, stackSpecificStateManager); +} + +var stackSpecificStateManager = { + newStackSpecificToolStateManager: newStackSpecificToolStateManager, + addStackStateManager: addStackStateManager +}; + + +/***/ }), + +/***/ "./stateManagement/textStyle.js": +/*!**************************************!*\ + !*** ./stateManagement/textStyle.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var defaultFontSize = 15, + defaultFont = "".concat(defaultFontSize, "px Arial"), + defaultBackgroundColor = 'transparent'; + +function setFont(font) { + defaultFont = font; +} + +function getFont() { + return defaultFont; +} + +function setFontSize(fontSize) { + defaultFontSize = fontSize; +} + +function getFontSize() { + return defaultFontSize; +} + +function setBackgroundColor(backgroundColor) { + defaultBackgroundColor = backgroundColor; +} + +function getBackgroundColor() { + return defaultBackgroundColor; +} + +var textStyle = { + setFont: setFont, + getFont: getFont, + setFontSize: setFontSize, + getFontSize: getFontSize, + setBackgroundColor: setBackgroundColor, + getBackgroundColor: getBackgroundColor +}; +/* harmony default export */ __webpack_exports__["default"] = (textStyle); + +/***/ }), + +/***/ "./stateManagement/toolColors.js": +/*!***************************************!*\ + !*** ./stateManagement/toolColors.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var defaultColor = 'white', + activeColor = 'greenyellow', + fillColor = 'transparent'; + +function setFillColor(color) { + fillColor = color; +} + +function getFillColor() { + return fillColor; +} + +function setToolColor(color) { + defaultColor = color; +} + +function getToolColor() { + return defaultColor; +} + +function setActiveColor(color) { + activeColor = color; +} + +function getActiveColor() { + return activeColor; +} + +function getColorIfActive(data) { + if (data.color) { + return data.color; + } + + return data.active ? activeColor : defaultColor; +} + +var toolColors = { + setFillColor: setFillColor, + getFillColor: getFillColor, + setToolColor: setToolColor, + getToolColor: getToolColor, + setActiveColor: setActiveColor, + getActiveColor: getActiveColor, + getColorIfActive: getColorIfActive +}; +/* harmony default export */ __webpack_exports__["default"] = (toolColors); + +/***/ }), + +/***/ "./stateManagement/toolCoordinates.js": +/*!********************************************!*\ + !*** ./stateManagement/toolCoordinates.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var coordsData; + +function setCoords(eventData) { + coordsData = eventData.currentPoints.canvas; +} + +function getCoords() { + return coordsData; +} + +var toolCoordinates = { + setCoords: setCoords, + getCoords: getCoords +}; +/* harmony default export */ __webpack_exports__["default"] = (toolCoordinates); + +/***/ }), + +/***/ "./stateManagement/toolState.js": +/*!**************************************!*\ + !*** ./stateManagement/toolState.js ***! + \**************************************/ +/*! exports provided: addToolState, getToolState, removeToolState, clearToolState, setElementToolStateManager, getElementToolStateManager */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addToolState", function() { return addToolState; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getToolState", function() { return getToolState; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeToolState", function() { return removeToolState; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clearToolState", function() { return clearToolState; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setElementToolStateManager", function() { return setElementToolStateManager; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getElementToolStateManager", function() { return getElementToolStateManager; }); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./imageIdSpecificStateManager.js */ "./stateManagement/imageIdSpecificStateManager.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); + + + + +/** + * Returns the toolstate for a specific element. + * @public + * @function getElementToolStateManager + * + * @param {HTMLElement} element The element. + * @returns {Object} The toolState. + */ + +function getElementToolStateManager(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); // If the enabledElement has no toolStateManager, create a default one for it + // NOTE: This makes state management element specific + + if (enabledElement.toolStateManager === undefined) { + enabledElement.toolStateManager = _imageIdSpecificStateManager_js__WEBPACK_IMPORTED_MODULE_2__["globalImageIdSpecificToolStateManager"]; + } + + return enabledElement.toolStateManager; +} +/** + * Adds tool state to the toolStateManager, this is done by tools as well + * as modules that restore saved state. + * @public + * @method addToolState + * + * @param {HTMLElement} element The element. + * @param {string} toolType The toolType of the state. + * @param {Object} measurementData The data to store in the state. + * @returns {undefined} + */ + + +function addToolState(element, toolType, measurementData) { + var toolStateManager = getElementToolStateManager(element); + toolStateManager.add(element, toolType, measurementData); + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_ADDED; + var eventData = { + toolType: toolType, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, eventType, eventData); +} +/** + * Returns tool specific state of an element. Used by tools as well as modules + * that save state persistently + * @export + * @public + * @method + * @name getToolState + * + * @param {HTMLElement} element The element. + * @param {string} toolType The toolType of the state. + * @returns {Object} The element's state for the given toolType. + */ + + +function getToolState(element, toolType) { + var toolStateManager = getElementToolStateManager(element); + return toolStateManager.get(element, toolType); +} +/** + * Removes specific tool state from the toolStateManager. + * @public + * @method removeToolState + * + * @param {HTMLElement} element The element. + * @param {string} toolType The toolType of the state. + * @param {Object} data The data to remove from the toolStateManager. + * @returns {undefined} + */ + + +function removeToolState(element, toolType, data) { + var toolStateManager = getElementToolStateManager(element); + var toolData = toolStateManager.get(element, toolType); // Find this tool data + + var indexOfData = -1; + + for (var i = 0; i < toolData.data.length; i++) { + if (toolData.data[i] === data) { + indexOfData = i; + } + } + + if (indexOfData !== -1) { + toolData.data.splice(indexOfData, 1); + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].MEASUREMENT_REMOVED; + var eventData = { + toolType: toolType, + element: element, + measurementData: data + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, eventType, eventData); + } +} +/** + * Removes all toolState from the toolStateManager corresponding to + * the toolType and element. + * @public + * @method clearToolState + * + * @param {HTMLElement} element The element. + * @param {string} toolType The toolType of the state. + * @returns {undefined} + */ + + +function clearToolState(element, toolType) { + var toolStateManager = getElementToolStateManager(element); + var toolData = toolStateManager.get(element, toolType); // If any toolData actually exists, clear it + + if (toolData !== undefined) { + toolData.data = []; + } +} +/** + * Sets the tool state manager for an element + * @public + * @method setElementToolStateManager + * + * @param {HTMLElement} element The element. + * @param {Object} toolStateManager The toolStateManager. + * @returns {undefined} + */ + + +function setElementToolStateManager(element, toolStateManager) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.getEnabledElement(element); + enabledElement.toolStateManager = toolStateManager; +} + + + +/***/ }), + +/***/ "./stateManagement/toolStyle.js": +/*!**************************************!*\ + !*** ./stateManagement/toolStyle.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var defaultWidth = 1, + activeWidth = 2; + +function setToolWidth(width) { + defaultWidth = width; +} + +function getToolWidth() { + return defaultWidth; +} + +function setActiveWidth(width) { + activeWidth = width; +} + +function getActiveWidth() { + return activeWidth; +} + +var toolStyle = { + setToolWidth: setToolWidth, + getToolWidth: getToolWidth, + setActiveWidth: setActiveWidth, + getActiveWidth: getActiveWidth +}; +/* harmony default export */ __webpack_exports__["default"] = (toolStyle); + +/***/ }), + +/***/ "./store/addTool.js": +/*!**************************!*\ + !*** ./store/addTool.js ***! + \**************************/ +/*! exports provided: addTool, addToolForElement */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addTool", function() { return addTool; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addToolForElement", function() { return addToolForElement; }); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); +/* harmony import */ var _getToolForElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getToolForElement.js */ "./store/getToolForElement.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_2__["getLogger"])('addTool'); +/** + * Adds a tool to an enabled element. + * + * @public + * @function addToolForElement + * @memberof CornerstoneTools + * + * @param {HTMLElement} element The element to add the tool to. + * @param {BaseTool} ApiTool The tool to add to the element. + * @param {Object} [props] Override the default tool props + * @returns {undefined} + */ + +var addToolForElement = function addToolForElement(element, ApiTool, props) { + // Instantiating the tool here makes it harder to accidentally add + // The same tool (by reference) for multiple elements (which would reassign the tool + // To a new element). + var tool = new ApiTool(props); + var toolAlreadyAddedToElement = Object(_getToolForElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, tool.name); + + if (toolAlreadyAddedToElement) { + logger.warn('%s has already been added to the target element', tool.name); + return; + } + + tool.element = element; + _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.tools.push(tool); +}; +/** + * Adds a tool to all enabled element. + * + * @public + * @function addTool + * @memberof CornerstoneTools + * + * @param {BaseTool} ApiTool The tool to add to each element. + * @param {Object} [props] Override the default tool configuration + * @returns {undefined} + */ + + +var addTool = function addTool(ApiTool, props) { + _addToolGlobally(ApiTool, props); + + _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.enabledElements.forEach(function (element) { + addToolForElement(element, ApiTool, props); + }); +}; +/** + * Adds tool with matching name from globally registered tools. + * Requires `globalToolSyncEnabled` to be set to true + * + * @private + * @function addToolGlobally + * + * @param {BaseTool} ApiTool + * @param {Object} [props] Override the default tool configuration + * @returns {undefined} + */ + + +var _addToolGlobally = function _addToolGlobally(ApiTool, props) { + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('globalConfiguration'), + configuration = _getModule.configuration; + + if (!configuration.globalToolSyncEnabled) { + return; + } + + var tool = new ApiTool(props); + var toolAlreadyAddedGlobally = _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.globalTools[tool.name] !== undefined; + + if (toolAlreadyAddedGlobally) { + logger.warn('%s has already been added globally', tool.name); + return; + } + + _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.globalTools[tool.name] = { + tool: ApiTool, + props: props, + activeBindings: [] + }; +}; + + + +/***/ }), + +/***/ "./store/filterToolsUsableWithMultiPartTools.js": +/*!******************************************************!*\ + !*** ./store/filterToolsUsableWithMultiPartTools.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../tools/base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _tools_base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../tools/base/BaseBrushTool.js */ "./tools/base/BaseBrushTool.js"); + + +/** + * Filters an array of tools, returning only tools which are active or passive. + * @export + * @public + * @method + * @name filterToolsUseableWithMultiPartTools + * + * @param {Object[]} tools The input tool array. + * @returns {Object[]} The filtered array. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (tools) { + return tools.filter(function (tool) { + return !tool.isMultiPartTool && !(tool instanceof _tools_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_0__["default"]) && !(tool instanceof _tools_base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_1__["default"]); + }); +}); + +/***/ }), + +/***/ "./store/getActiveToolsForElement.js": +/*!*******************************************!*\ + !*** ./store/getActiveToolsForElement.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Filters an array of tools, returning only tools which are active. + * @export + * @public + * @method + * @name getActiveToolsForElement + * + * @param {HTMLElement} element The element. + * @param {Object[]} tools The input tool array. + * @param {string} handlerType The input type being queried. + * @returns {Object[]} The filtered array. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (element, tools, handlerType) { + return tools.filter(function (tool) { + return tool.element === element && tool.mode === 'active' && (handlerType === undefined || tool.options["is".concat(handlerType, "Active")]); + }); +}); + +/***/ }), + +/***/ "./store/getInteractiveToolsForElement.js": +/*!************************************************!*\ + !*** ./store/getInteractiveToolsForElement.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Filters an array of tools, returning only tools which are active or passive. + * @export + * @public + * @method + * @name getInteractiveToolsForElement + * + * @param {HTMLElement} element The element. + * @param {Object[]} tools The input tool array. + * @returns {Object[]} The filtered array. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (element, tools) { + return tools.filter(function (tool) { + return tool.element === element && (tool.mode === 'active' || tool.mode === 'passive'); + }); +}); + +/***/ }), + +/***/ "./store/getToolForElement.js": +/*!************************************!*\ + !*** ./store/getToolForElement.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); + +/** + * Returns the tool instance attached to the element. + * @export + * @public + * @method + * @name getToolForElement + * + * @param {HTMLElement} element The element. + * @param {string} name The tool's name. + * @returns {Object} The tool instance. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, name) { + return _index_js__WEBPACK_IMPORTED_MODULE_0__["state"].tools.find(function (tool) { + return tool.element === element && tool.name === name; + }); +}); + +/***/ }), + +/***/ "./store/getToolsWithDataForElement.js": +/*!*********************************************!*\ + !*** ./store/getToolsWithDataForElement.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../stateManagement/toolState.js */ "./stateManagement/toolState.js"); + +/** + * Filters an array of tools, returning only tools which have annotation data. + * @export + * @public + * @method + * @name getToolsWithDataForElement + * + * @param {HTMLElement} element The element. + * @param {Object[]} tools The input tool array. + * @returns {Object[]} The filtered array. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, tools) { + return tools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__["getToolState"])(element, tool.name); + return toolState && toolState.data.length > 0; + }); +}); + +/***/ }), + +/***/ "./store/getToolsWithMoveableHandles.js": +/*!**********************************************!*\ + !*** ./store/getToolsWithMoveableHandles.js ***! + \**********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); + + + +/** + * Filters an array of tools, returning only tools with moveable handles at the + * mouse location. + * + * @public + * @function getToolsWithMoveableHandles + * + * @param {HTMLElement} element The element + * @param {Object[]} tools The input tool array. + * @param {Object} coords The coordinates of the mouse position. + * @param {string} [interactionType=mouse] + * @returns {Object[]} The filtered array. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, tools, coords) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + var proximity = interactionType === 'mouse' ? _index_js__WEBPACK_IMPORTED_MODULE_0__["state"].clickProximity : _index_js__WEBPACK_IMPORTED_MODULE_0__["state"].touchProximity; + return tools.filter(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, tool.name); + + for (var i = 0; i < toolState.data.length; i++) { + if (Object(_manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, toolState.data[i].handles, coords, proximity) !== undefined) { + return true; + } + } + + return false; + }); +}); + +/***/ }), + +/***/ "./store/index.js": +/*!************************!*\ + !*** ./store/index.js ***! + \************************/ +/*! exports provided: state, getters, setters, modules, getModule, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "state", function() { return state; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getters", function() { return getters; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setters", function() { return setters; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "modules", function() { return modules; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getModule", function() { return getModule; }); +/* harmony import */ var _modules_segmentationModule__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modules/segmentationModule */ "./store/modules/segmentationModule/index.js"); +/* harmony import */ var _modules_cursorModule_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modules/cursorModule.js */ "./store/modules/cursorModule.js"); +/* harmony import */ var _modules_globalConfigurationModule_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modules/globalConfigurationModule.js */ "./store/modules/globalConfigurationModule.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); +// Modules + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('store:modules:storeLogger'); +var state = { + // Global + globalTools: {}, + globalToolChangeHistory: [], + // Tracking + enabledElements: [], + tools: [], + isToolLocked: false, + activeMultiPartTool: null, + mousePositionImage: {}, + // Settings + clickProximity: 6, + touchProximity: 10, + handleRadius: 6, + deleteIfHandleOutsideImage: true, + preventHandleOutsideImage: false, + // Cursor + svgCursorUrl: null +}; +var getters = { + mouseTools: function mouseTools() { + return state.tools.filter(function (tool) { + return tool.supportedInteractionTypes.includes('Mouse'); + }); + }, + touchTools: function touchTools() { + return state.tools.filter(function (tool) { + return tool.supportedInteractionTypes.includes('Touch'); + }); + }, + enabledElementByUID: function enabledElementByUID(enabledElementUID) { + return state.enabledElements.find(function (element) { + return _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.getEnabledElement(element).uuid === enabledElementUID; + }); + } +}; +var setters = {}; +var modules = { + segmentation: _modules_segmentationModule__WEBPACK_IMPORTED_MODULE_0__["default"], + cursor: _modules_cursorModule_js__WEBPACK_IMPORTED_MODULE_1__["default"], + globalConfiguration: _modules_globalConfigurationModule_js__WEBPACK_IMPORTED_MODULE_2__["default"] +}; +function getModule(moduleName) { + return modules[moduleName]; +} +/* harmony default export */ __webpack_exports__["default"] = ({ + modules: modules, + state: state, + getters: getters +}); + +/***/ }), + +/***/ "./store/internals/addEnabledElement.js": +/*!**********************************************!*\ + !*** ./store/internals/addEnabledElement.js ***! + \**********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../eventListeners/index.js */ "./eventListeners/index.js"); +/* harmony import */ var _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../eventDispatchers/index.js */ "./eventDispatchers/index.js"); +/* harmony import */ var _addTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../addTool.js */ "./store/addTool.js"); +/* harmony import */ var _setToolMode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../setToolMode.js */ "./store/setToolMode.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../index.js */ "./store/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_5__["getLogger"])('internals:addEnabledElement'); +/** + * Element Enabled event. + * + * @event Cornerstone#ElementEnabled + * @type {Object} + * @property {string} type + * @property {Object} detail + * @property {HTMLElement} detail.element - The element being enabled. + */ + +/* TODO: It would be nice if this automatically added "all tools" + * To the enabledElement that already exist on all other tools. + * A half-measure might be a new method to "duplicate" the tool + * Configuration for an existing enabled element + * We may need to also save/store the original class/constructor per tool + * To accomplish this + */ + +/** + * Adds an enabledElement to our store. + * @export + * @private + * @method + * @name addEnabledElement + * @param {Cornerstone#ElementEnabled} elementEnabledEvt + * @listens Cornerstone#ElementEnabled + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (elementEnabledEvt) { + logger.log('EVENT:ELEMENT_ENABLED'); + var enabledElement = elementEnabledEvt.detail.element; // Dispatchers + + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["imageRenderedEventDispatcher"].enable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["newImageEventDispatcher"].enable(enabledElement); + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_4__["getModule"])('globalConfiguration'), + configuration = _getModule.configuration; // Mouse + + + if (configuration.mouseEnabled) { + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["mouseEventListeners"].enable(enabledElement); + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["wheelEventListener"].enable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseToolEventDispatcher"].enable(enabledElement); + } // Touch + + + if (configuration.touchEnabled) { + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["touchEventListeners"].enable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchToolEventDispatcher"].enable(enabledElement); + } // State + + + _addEnabledElement(enabledElement); +}); +/** + * Adds the enabled element to the store. + * @private + * @method + * @param {HTMLElement} enabledElement + * @returns {void} + */ + +var _addEnabledElement = function _addEnabledElement(enabledElement) { + _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].state.enabledElements.push(enabledElement); + + if (_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].modules) { + _initModulesOnElement(enabledElement); + } + + _addGlobalToolsToElement(enabledElement); + + _repeatGlobalToolHistory(enabledElement); +}; +/** + * Iterate over our store's modules. If the module has an `enabledElementCallback` + * call it and pass it a reference to our enabled element. + * @private + * @method + * @param {Object} enabledElement + * @returns {void} + */ + + +function _initModulesOnElement(enabledElement) { + var modules = _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].modules; + Object.keys(modules).forEach(function (key) { + if (typeof modules[key].enabledElementCallback === 'function') { + modules[key].enabledElementCallback(enabledElement); + } + }); +} +/** + * Iterate over our stores globalTools adding each one to `enabledElement` + * @private + * @method + * @param {HTMLElement} enabledElement + * @returns {void} + */ + + +function _addGlobalToolsToElement(enabledElement) { + var _getModule2 = Object(_index_js__WEBPACK_IMPORTED_MODULE_4__["getModule"])('globalConfiguration'), + configuration = _getModule2.configuration; + + if (!configuration.globalToolSyncEnabled) { + return; + } + + Object.keys(_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].state.globalTools).forEach(function (key) { + var _store$state$globalTo = _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].state.globalTools[key], + tool = _store$state$globalTo.tool, + props = _store$state$globalTo.props; + Object(_addTool_js__WEBPACK_IMPORTED_MODULE_2__["addToolForElement"])(enabledElement, tool, props); + }); +} +/** + * Iterate over the globalToolChangeHistory and apply each `historyEvent` + * to the supplied `enabledElement`. + * @private + * @method + * @param {HTMLElement} enabledElement + * @returns {void} + */ + + +function _repeatGlobalToolHistory(enabledElement) { + var _getModule3 = Object(_index_js__WEBPACK_IMPORTED_MODULE_4__["getModule"])('globalConfiguration'), + configuration = _getModule3.configuration; + + if (!configuration.globalToolSyncEnabled) { + return; + } + + var setToolModeFns = { + active: _setToolMode_js__WEBPACK_IMPORTED_MODULE_3__["setToolActiveForElement"], + passive: _setToolMode_js__WEBPACK_IMPORTED_MODULE_3__["setToolPassiveForElement"], + enabled: _setToolMode_js__WEBPACK_IMPORTED_MODULE_3__["setToolEnabledForElement"], + disabled: _setToolMode_js__WEBPACK_IMPORTED_MODULE_3__["setToolDisabledForElement"] + }; + _index_js__WEBPACK_IMPORTED_MODULE_4__["default"].state.globalToolChangeHistory.forEach(function (historyEvent) { + var args = historyEvent.args.slice(0); + args.unshift(enabledElement); + setToolModeFns[historyEvent.mode].apply(null, args); + }); +} + +/***/ }), + +/***/ "./store/internals/removeEnabledElement.js": +/*!*************************************************!*\ + !*** ./store/internals/removeEnabledElement.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../eventListeners/index.js */ "./eventListeners/index.js"); +/* harmony import */ var _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../eventDispatchers/index.js */ "./eventDispatchers/index.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../index.js */ "./store/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('internals:removeEnabledElement'); +/** + * Element Disabled event. + * + * @event Cornerstone#ElementDisabled + * @type {Object} + * @property {string} type + * @property {Object} detail + * @property {HTMLElement} detail.element - The element being disabled. + */ + +/** + * Removes an enabledElement from our store, and all associated tools that were added to it. + * @export + * @private + * @method + * @name removeEnabledElement + * @param {Cornerstone#ElementDisabled} elementDisabledEvt + * @listens Cornerstone#ElementDisabled + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (elementDisabledEvt) { + logger.log('EVENT:ELEMENT_DISABLED'); + var enabledElement = elementDisabledEvt.detail.element; + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_2__["getModule"])('globalConfiguration'), + configuration = _getModule.configuration; // Dispatchers + + + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["imageRenderedEventDispatcher"].disable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["newImageEventDispatcher"].disable(enabledElement); // Mouse + + if (configuration.mouseEnabled) { + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["mouseEventListeners"].disable(enabledElement); + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["wheelEventListener"].disable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["mouseToolEventDispatcher"].disable(enabledElement); + } // Touch + + + if (configuration.touchEnabled) { + _eventListeners_index_js__WEBPACK_IMPORTED_MODULE_0__["touchEventListeners"].disable(enabledElement); + _eventDispatchers_index_js__WEBPACK_IMPORTED_MODULE_1__["touchToolEventDispatcher"].disable(enabledElement); + } // State + + + _removeAllToolsForElement(enabledElement); + + _removeEnabledElement(enabledElement); + + _removeLoadHandlers(enabledElement); +}); +/** + * Remove all tools associated with enabled element. + * @private + * @method + * @param {HTMLElement} enabledElement + * @returns {void} + */ + +var _removeAllToolsForElement = function _removeAllToolsForElement(enabledElement) { + // Note: We may want to `setToolDisabled` before removing from store + // Or take other action to remove any lingering eventListeners/state + _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].state.tools = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].state.tools.filter(function (tool) { + return tool.element !== enabledElement; + }); +}; +/** + * Remove the enabled element from the store if it exists. + * @private + * @method + * @param {HTMLElement} enabledElement + * @returns {void} + */ + + +var _removeEnabledElement = function _removeEnabledElement(enabledElement) { + if (_index_js__WEBPACK_IMPORTED_MODULE_2__["default"].modules) { + _cleanModulesOnElement(enabledElement); + } + + var foundElementIndex = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].state.enabledElements.findIndex(function (element) { + return element === enabledElement; + }); + + if (foundElementIndex > -1) { + _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].state.enabledElements.splice(foundElementIndex, 1); + } else { + logger.warn('unable to remove element'); + } +}; +/** + * Remove load handler for the element + * @private + * @method + * @param {HTMLElement} element + * @returns {void} + */ + + +var _removeLoadHandlers = function _removeLoadHandlers(element) { + _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__["default"].removeHandlers(element); +}; +/** + * Iterate over our store's modules. If the module has a + * `removeEnabledElementCallback` call it and clean up unneeded metadata. + * @private + * @method + * @param {Object} enabledElement + * @returns {void} + */ + + +function _cleanModulesOnElement(enabledElement) { + var modules = _index_js__WEBPACK_IMPORTED_MODULE_2__["default"].modules; + Object.keys(modules).forEach(function (key) { + if (typeof modules[key].removeEnabledElementCallback === 'function') { + modules[key].removeEnabledElementCallback(enabledElement); + } + }); +} + +/***/ }), + +/***/ "./store/isToolActiveForElement.js": +/*!*****************************************!*\ + !*** ./store/isToolActiveForElement.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getToolForElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getToolForElement.js */ "./store/getToolForElement.js"); + +/** + * Queries if a tool is active on the specified element. + * @export + * @public + * @method + * @name isToolActiveForElement + * + * @param {HTMLElement} element The element being queried. + * @param {string} name The name of the tool. + * @returns {boolean} True if the tool is active. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, name) { + var tool = Object(_getToolForElement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, name); + return tool.mode === 'active'; +}); + +/***/ }), + +/***/ "./store/modules/cursorModule.js": +/*!***************************************!*\ + !*** ./store/modules/cursorModule.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules */ "./externalModules.js"); + +var configuration = { + iconSize: 16, + viewBox: { + x: 16, + y: 16 + }, + mousePoint: { + x: 8, + y: 8 + }, + mousePointerGroupString: "\n \n \n " +}; +var setters = { + defaultOptions: function defaultOptions(newOptions) { + Object.assign(configuration, newOptions); + } +}; +var getters = { + defaultOptions: function defaultOptions() { + return configuration; + } +}; +/* harmony default export */ __webpack_exports__["default"] = ({ + configuration: configuration, + getters: getters, + setters: setters +}); + +/***/ }), + +/***/ "./store/modules/globalConfigurationModule.js": +/*!****************************************************!*\ + !*** ./store/modules/globalConfigurationModule.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var configuration = { + mouseEnabled: true, + touchEnabled: true, + globalToolSyncEnabled: false, + showSVGCursors: false, + autoResizeViewports: true +}; +/* harmony default export */ __webpack_exports__["default"] = ({ + configuration: configuration +}); + +/***/ }), + +/***/ "./store/modules/segmentationModule/activeLabelmapIndex.js": +/*!*****************************************************************!*\ + !*** ./store/modules/segmentationModule/activeLabelmapIndex.js ***! + \*****************************************************************/ +/*! exports provided: getActiveLabelmapIndex, setActiveLabelmapIndex */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getActiveLabelmapIndex", function() { return getActiveLabelmapIndex; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setActiveLabelmapIndex", function() { return setActiveLabelmapIndex; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _addLabelmap3D__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./addLabelmap3D */ "./store/modules/segmentationModule/addLabelmap3D.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); + + + + + +/** + * Returns the index of the active `Labelmap3D`. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone + * enabled element or its UUID. + * @returns {number} The index of the active `Labelmap3D`. + */ + +function getActiveLabelmapIndex(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_3__["default"].series[firstImageId]; + + if (!brushStackState) { + return; + } + + return brushStackState.activeLabelmapIndex; +} +/** + * Sets the active `labelmapIndex` for the `BrushStackState` displayed on this + * element. Creates the corresponding `Labelmap3D` if it doesn't exist. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} labelmapIndex = 0 The index of the labelmap. + * @returns {null} + */ + + +function setActiveLabelmapIndex(elementOrEnabledElementUID) { + var labelmapIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_4__["default"].cornerstone; + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var enabledElement = cornerstone.getEnabledElement(element); + var _enabledElement$image = enabledElement.image, + rows = _enabledElement$image.rows, + columns = _enabledElement$image.columns; + var numberOfFrames = stackData.imageIds.length; + var size = rows * columns * numberOfFrames; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_3__["default"].series[firstImageId]; + + if (brushStackState) { + brushStackState.activeLabelmapIndex = labelmapIndex; + + if (!brushStackState.labelmaps3D[labelmapIndex]) { + Object(_addLabelmap3D__WEBPACK_IMPORTED_MODULE_2__["default"])(brushStackState, labelmapIndex, size); + } + } else { + _state__WEBPACK_IMPORTED_MODULE_3__["default"].series[firstImageId] = { + activeLabelmapIndex: labelmapIndex, + labelmaps3D: [] + }; + brushStackState = _state__WEBPACK_IMPORTED_MODULE_3__["default"].series[firstImageId]; + Object(_addLabelmap3D__WEBPACK_IMPORTED_MODULE_2__["default"])(brushStackState, labelmapIndex, size); + } + + cornerstone.updateImage(element); +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/activeSegmentIndex.js": +/*!****************************************************************!*\ + !*** ./store/modules/segmentationModule/activeSegmentIndex.js ***! + \****************************************************************/ +/*! exports provided: getActiveSegmentIndex, setActiveSegmentIndex, incrementActiveSegmentIndex, decrementActiveSegmentIndex */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getActiveSegmentIndex", function() { return getActiveSegmentIndex; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setActiveSegmentIndex", function() { return setActiveSegmentIndex; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "incrementActiveSegmentIndex", function() { return incrementActiveSegmentIndex; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decrementActiveSegmentIndex", function() { return decrementActiveSegmentIndex; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + + + +/** + * Returns the `activeSegmentIndex` for the active `Labelmap3D` for the `BrushStackState` displayed on the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} [labelmapIndex] The labelmap index, defaults to the active labelmap index. + * @returns {number} The active segment index. + */ + +function getActiveSegmentIndex(elementOrEnabledElementUID, labelmapIndex) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (brushStackState) { + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + + if (labelmap3D) { + return labelmap3D.activeSegmentIndex; + } + } + + return 1; +} +/** + * Sets the `activeSegmentIndex` for the active `Labelmap3D` on the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} segmentIndex The segmentIndex to set active. + * @returns {null} + */ + + +function setActiveSegmentIndex(elementOrEnabledElementUID, segmentIndex) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + return; + } + + var activeLabelmapIndex = brushStackState.activeLabelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[activeLabelmapIndex]; + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_3__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + if (segmentIndex <= 0) { + segmentIndex = 1; + } else if (segmentIndex > configuration.segmentsPerLabelmap) { + segmentIndex = configuration.segmentsPerLabelmap; + } + + labelmap3D.activeSegmentIndex = segmentIndex; +} +/** + * Increment the `activeSegmentIndex` for the active `Labelmap3D` on the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @returns {null} + */ + + +function incrementActiveSegmentIndex(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + _changeActiveSegmentIndex(element, 'increase'); +} +/** + * Decrement the `activeSegmentIndex` for the active `Labelmap3D` on the element. + * + * @param {HTMLElement} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @returns {null} + */ + + +function decrementActiveSegmentIndex(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + _changeActiveSegmentIndex(element, 'decrease'); +} +/** + * Changes the `activeSegmentIndex` for the active `Labelmap3D` on the element. + * + * @param {HTMLElement} element The cornerstone enabled element. + * @param {string} increaseOrDecrease = Whether to increase/decrease the activeLabelmapIndex. + * @returns {null} + */ + + +function _changeActiveSegmentIndex(element) { + var increaseOrDecrease = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'increase'; + + var _getModule2 = Object(_index_js__WEBPACK_IMPORTED_MODULE_3__["getModule"])('segmentation'), + configuration = _getModule2.configuration; + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + return; + } + + var activeLabelmapIndex = brushStackState.activeLabelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[activeLabelmapIndex]; + + switch (increaseOrDecrease) { + case 'increase': + labelmap3D.activeSegmentIndex++; + + if (labelmap3D.activeSegmentIndex > configuration.segmentsPerLabelmap) { + labelmap3D.activeSegmentIndex = 1; + } + + break; + + case 'decrease': + labelmap3D.activeSegmentIndex--; + + if (labelmap3D.activeSegmentIndex <= 0) { + labelmap3D.activeSegmentIndex = configuration.segmentsPerLabelmap; + } + + break; + } +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/addLabelmap2D.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/addLabelmap2D.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return addLabelmap2D; }); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_0__["default"].UINT_16_ARRAY, + FLOAT_32_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_0__["default"].FLOAT_32_ARRAY; +/** + * Adds a `Labelmap2D` view of one frame of a `Labelmap3D`. + * + * @param {BrushStackState} brushStackState The `BrushStackState` for a particular `Series`. + * @param {number} labelmapIndex The labelmap index. + * @param {number} imageIdIndex The stack position of the image. + * @param {number} rows The number of rows in the image. + * @param {number} columns The number of columns in the image. + * @returns {null} + */ + +function addLabelmap2D(brushStackState, labelmapIndex, imageIdIndex, rows, columns) { + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_1__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var sliceLength = rows * columns; + var elementOffset = sliceLength * imageIdIndex; + var pixelData; + + switch (configuration.arrayType) { + case UINT_16_ARRAY: + pixelData = new Uint16Array(brushStackState.labelmaps3D[labelmapIndex].buffer, elementOffset * 2, // 2 bytes/voxel + sliceLength); + break; + + case FLOAT_32_ARRAY: + pixelData = new Float32Array(brushStackState.labelmaps3D[labelmapIndex].buffer, elementOffset * 4, // 4 bytes/voxel + sliceLength); + break; + + default: + throw new Error("Unsupported Array Type ".concat(configuration.arrayType)); + } + + brushStackState.labelmaps3D[labelmapIndex].labelmaps2D[imageIdIndex] = { + pixelData: pixelData, + segmentsOnLabelmap: [] + }; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/addLabelmap3D.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/addLabelmap3D.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return addLabelmap3D; }); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_0__["default"].UINT_16_ARRAY, + FLOAT_32_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_0__["default"].FLOAT_32_ARRAY; +/** + * AddLabelmap3D - Adds a `Labelmap3D` object to the `BrushStackState` object. + * + * @param {BrushStackState} brushStackState The labelmap state for a particular stack. + * @param {number} labelmapIndex The labelmapIndex to set. + * @param {number} size The size of the ArrayBuffer in bytes/ 2. + * @returns {null} + */ + +function addLabelmap3D(brushStackState, labelmapIndex, size) { + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_1__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var bytesPerVoxel; + + switch (configuration.arrayType) { + case UINT_16_ARRAY: + bytesPerVoxel = 2; + break; + + case FLOAT_32_ARRAY: + bytesPerVoxel = 4; + break; + + default: + throw new Error("Unsupported Array Type ".concat(configuration.arrayType)); + } // Buffer size is multiplied by bytesPerVoxel to allocate enough space. + + + brushStackState.labelmaps3D[labelmapIndex] = { + buffer: new ArrayBuffer(size * bytesPerVoxel), + labelmaps2D: [], + metadata: [], + activeSegmentIndex: 1, + colorLUTIndex: 0, + segmentsHidden: [], + undo: [], + redo: [] + }; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/arrayTypes.js": +/*!********************************************************!*\ + !*** ./store/modules/segmentationModule/arrayTypes.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var ARRAY_TYPES = { + UINT_16_ARRAY: 0, + FLOAT_32_ARRAY: 1 +}; +/* harmony default export */ __webpack_exports__["default"] = (ARRAY_TYPES); + +/***/ }), + +/***/ "./store/modules/segmentationModule/colorLUT.js": +/*!******************************************************!*\ + !*** ./store/modules/segmentationModule/colorLUT.js ***! + \******************************************************/ +/*! exports provided: default, setColorLUTIndexForLabelmap3D, getColorForSegmentIndexColorLUT, setColorForSegmentIndexOfColorLUT, getColorLUT */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return setColorLUT; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setColorLUTIndexForLabelmap3D", function() { return setColorLUTIndexForLabelmap3D; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getColorForSegmentIndexColorLUT", function() { return getColorForSegmentIndexColorLUT; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setColorForSegmentIndexOfColorLUT", function() { return setColorForSegmentIndexOfColorLUT; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getColorLUT", function() { return getColorLUT; }); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_1__["getLogger"])('store:modules:segmentationModule:setColorLUT'); +/** + * SetColorLUT - Sets the labelmap to a specfic LUT, or generates a new LUT. + * + * @param {number} labelmapIndex The labelmap index to apply the color LUT to. + * @param {number[][]} [colorLUT] An array of The colorLUT to set. + * @returns {null} + */ + +function setColorLUT(colorLUTIndex) { + var colorLUT = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_3__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var segmentsPerLabelmap = configuration.segmentsPerLabelmap; + + if (colorLUT) { + _checkColorLUTLength(colorLUT, segmentsPerLabelmap); + + if (colorLUT.length < segmentsPerLabelmap) { + colorLUT = [].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(colorLUT), _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(_generateNewColorLUT(segmentsPerLabelmap - colorLUT.length))); + } + } else { + // Autogenerate colorLUT. + colorLUT = colorLUT || _generateNewColorLUT(segmentsPerLabelmap); + } // Apppend the "zero" (no label) color to the front of the LUT. + + + colorLUT.unshift([0, 0, 0, 0]); + _state__WEBPACK_IMPORTED_MODULE_2__["default"].colorLutTables[colorLUTIndex] = colorLUT; +} +function setColorLUTIndexForLabelmap3D(labelmap3D, colorLUTIndex) { + labelmap3D.colorLUTIndex = colorLUTIndex; +} +function getColorForSegmentIndexColorLUT(labelmap3DOrColorLUTIndex, segmentIndex) { + var colorLUT = getColorLUT(labelmap3DOrColorLUTIndex); + return colorLUT[segmentIndex]; +} +/** + * Sets a single color of a colorLUT. + * + * @param {Object|number} labelmap3DOrColorLUTIndex Either a `Labelmap3D` object (who's referenced colorLUT will be changed), or a colorLUTIndex. + * @param {number} segmentIndex The segmentIndex color to change. + * @param {[number,number,number,number]} colorArray The color values in RGBA array format. + */ + +function setColorForSegmentIndexOfColorLUT(labelmap3DOrColorLUTIndex, segmentIndex, colorArray) { + var colorLUT = getColorLUT(labelmap3DOrColorLUTIndex); + colorLUT[segmentIndex] = colorArray; +} +function getColorLUT(labelmap3DOrColorLUTIndex) { + if (typeof labelmap3DOrColorLUTIndex === 'number') { + return _state__WEBPACK_IMPORTED_MODULE_2__["default"].colorLutTables[labelmap3DOrColorLUTIndex]; + } + + return _state__WEBPACK_IMPORTED_MODULE_2__["default"].colorLutTables[labelmap3DOrColorLUTIndex.colorLUTIndex]; +} +/** + * Checks the length of `colorLUT` compared to `segmnetsPerLabelmap` and flags up any warnings. + * @param {number[][]} colorLUT + * @param {number} segmentsPerLabelmap + * @returns {boolean} Whether the length is valid. + */ + +function _checkColorLUTLength(colorLUT, segmentsPerLabelmap) { + if (colorLUT.length < segmentsPerLabelmap) { + logger.warn("The provided colorLUT only provides ".concat(colorLUT.length, " labels, whereas segmentsPerLabelmap is set to ").concat(segmentsPerLabelmap, ". Autogenerating the rest.")); + } else if (colorLUT.length > segmentsPerLabelmap) { + logger.warn("segmentsPerLabelmap is set to ".concat(segmentsPerLabelmap, ", and the provided colorLUT provides ").concat(colorLUT.length, ". Using the first ").concat(segmentsPerLabelmap, " colors from the LUT.")); + } +} +/** + * Generates a new color LUT (Look Up Table) of length `numberOfColors`, + * which returns an RGBA color for each segment index. + * + * @param {Number} numberOfColors = 255 The number of colors to generate + * @returns {Number[][]} The array of RGB values. + */ + + +function _generateNewColorLUT() { + var numberOfColors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 255; + var rgbArr = []; + + for (var i = 0; i < numberOfColors; i++) { + rgbArr.push(getRGBAfromHSLA(getNextHue(), getNextL())); + } + + return rgbArr; +} + +var goldenAngle = 137.5; +var hueValue = 222.5; + +function getNextHue() { + hueValue += goldenAngle; + + if (hueValue >= 360) { + hueValue -= 360; + } + + return hueValue; +} + +var l = 0.6; +var maxL = 0.82; +var minL = 0.3; +var incL = 0.07; + +function getNextL() { + l += incL; + + if (l > maxL) { + var diff = l - maxL; + l = minL + diff; + } + + return l; +} +/** + * GetRGBAfromHSL - Returns an RGBA color given H, S, L and A. + * + * @param {Number} hue The hue. + * @param {Number} s = 1 The saturation. + * @param {Number} l = 0.6 The lightness. + * @param {Number} alpha = 255 The alpha. + * @returns {Number[]} The RGBA formatted color. + */ + + +function getRGBAfromHSLA(hue) { + var s = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1; + var l = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.6; + var alpha = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 255; + var c = (1 - Math.abs(2 * l - 1)) * s; + var x = c * (1 - Math.abs(hue / 60 % 2 - 1)); + var m = l - c / 2; + var r, g, b; + + if (hue < 60) { + r = c; + g = x; + b = 0; + } else if (hue < 120) { + r = x; + g = c; + b = 0; + } else if (hue < 180) { + r = 0; + g = c; + b = x; + } else if (hue < 240) { + r = 0; + g = x; + b = c; + } else if (hue < 300) { + r = x; + g = 0; + b = c; + } else if (hue < 360) { + r = c; + g = 0; + b = x; + } + + return [(r + m) * 255, (g + m) * 255, (b + m) * 255, alpha]; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/defaultConfiguration.js": +/*!******************************************************************!*\ + !*** ./store/modules/segmentationModule/defaultConfiguration.js ***! + \******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_0__["default"].UINT_16_ARRAY; // Segmentation module configuration. + +var defaultConfiguration = { + renderOutline: true, + renderFill: true, + shouldRenderInactiveLabelmaps: true, + radius: 10, + minRadius: 1, + maxRadius: 50, + fillAlpha: 0.2, + fillAlphaInactive: 0.1, + outlineAlpha: 0.7, + outlineAlphaInactive: 0.35, + outlineWidth: 3, + storeHistory: true, + segmentsPerLabelmap: 65535, + // Max is 65535 due to using 16-bit Unsigned ints. + arrayType: UINT_16_ARRAY +}; +/* harmony default export */ __webpack_exports__["default"] = (defaultConfiguration); + +/***/ }), + +/***/ "./store/modules/segmentationModule/deleteSegment.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/deleteSegment.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return deleteSegment; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); + + + + +/** + * Deletes the segment and any associated metadata from the `Labelmap3D`. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled element or its UUID. + * @param {number} segmentIndex The segment Index + * @param {number} [labelmapIndex] The labelmap index. Defaults to the active labelmap index. + * + * @returns {null} + */ + +function deleteSegment(elementOrEnabledElementUID, segmentIndex, labelmapIndex) { + if (!segmentIndex) { + return; + } + + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + return; + } + + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + + if (!labelmap3D) { + return; + } // Delete metadata if present. + + + delete labelmap3D.metadata[segmentIndex]; + var labelmaps2D = labelmap3D.labelmaps2D; // Clear segment's voxels. + + for (var i = 0; i < labelmaps2D.length; i++) { + var labelmap2D = labelmaps2D[i]; // If the labelmap2D has data, and it contains the segment, delete it. + + if (labelmap2D && labelmap2D.segmentsOnLabelmap.includes(segmentIndex)) { + var pixelData = labelmap2D.pixelData; // Remove this segment from the list. + + var indexOfSegment = labelmap2D.segmentsOnLabelmap.indexOf(segmentIndex); + labelmap2D.segmentsOnLabelmap.splice(indexOfSegment, 1); // Delete the label for this segment. + + for (var p = 0; p < pixelData.length; p++) { + if (pixelData[p] === segmentIndex) { + pixelData[p] = 0; + } + } + } + } + + _externalModules__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.updateImage(element); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getBrushColor.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/getBrushColor.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getBrushColor; }); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('store:modules:segmentationModule:getBrushColor'); +/** + * Returns the brush color as a rgba CSS color for the active segment of the active + * `Labelmap3D` for the `BrushStackState` displayed on the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {boolean} drawing = false Whether the user is drawing or not. + * @returns {string} An rgba value as a string. + */ + +function getBrushColor(elementOrEnabledElementUID) { + var drawing = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_2__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__["getToolState"])(element, 'stack'); + + if (!stackState) { + logger.error('Consumers must define stacks in their application if using segmentations in cornerstoneTools.'); + return; + } + + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_1__["default"].series[firstImageId]; + var color; + + if (brushStackState) { + var activeLabelmapIndex = brushStackState.activeLabelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[activeLabelmapIndex]; + var activeSegmentIndex = labelmap3D.activeSegmentIndex; + color = _state__WEBPACK_IMPORTED_MODULE_1__["default"].colorLutTables[labelmap3D.colorLUTIndex][activeSegmentIndex]; + } else { + // No data yet, make brush the default color of colormap 0. + color = _state__WEBPACK_IMPORTED_MODULE_1__["default"].colorLutTables[0][1]; + } + + return drawing ? "rgba(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ", 1.0 )") : "rgba(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ", 0.8 )"); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getElement.js": +/*!********************************************************!*\ + !*** ./store/modules/segmentationModule/getElement.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return _getElement; }); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + +/** + * Returns the cornerstone enabled element given either the element or its enabledElement UUID. + * + * @param {string|HTMLElement} elementOrEnabledElementUID The enabledElement + * or its UUID. + * @returns {HTMLElement} + */ + +function _getElement(elementOrEnabledElementUID) { + if (elementOrEnabledElementUID instanceof HTMLElement) { + return elementOrEnabledElementUID; + } + + return _index_js__WEBPACK_IMPORTED_MODULE_0__["getters"].enabledElementByUID(elementOrEnabledElementUID); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getLabelmap2D.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/getLabelmap2D.js ***! + \***********************************************************/ +/*! exports provided: default, getLabelmap2DByImageIdIndex */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getLabelmap2D; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLabelmap2DByImageIdIndex", function() { return getLabelmap2DByImageIdIndex; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getSegmentsOnPixeldata */ "./store/modules/segmentationModule/getSegmentsOnPixeldata.js"); +/* harmony import */ var _addLabelmap3D__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./addLabelmap3D */ "./store/modules/segmentationModule/addLabelmap3D.js"); +/* harmony import */ var _addLabelmap2D__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./addLabelmap2D */ "./store/modules/segmentationModule/addLabelmap2D.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + + + + + + + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_7__["default"].UINT_16_ARRAY, + FLOAT_32_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_7__["default"].FLOAT_32_ARRAY; +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_9__["getLogger"])('store:modules:segmentationModule:getLabelmap2D'); +/** + * Returns the active `labelmap3D` and the `currentImageIdIndex`. If a labelmap does + * not get exist, creates a new one. Generates a `labelmap2D` for the `currentImageIndex` + * if it does not yet exist. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @returns {Object} The `Labelmap2D`, `Labelmap3D`, `activeLabelmapIndex` and `currentImageIdIndex`. + */ + +function getLabelmap2D(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone; + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + + if (!stackState) { + logger.error('Consumers must define stacks in their application if using segmentations in cornerstoneTools.'); + return; + } + + var stackData = stackState.data[0]; + var enabledElement = cornerstone.getEnabledElement(element); + var currentImageIdIndex = stackData.currentImageIdIndex; + var _enabledElement$image = enabledElement.image, + rows = _enabledElement$image.rows, + columns = _enabledElement$image.columns; + var numberOfFrames = stackData.imageIds.length; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_6__["default"].series[firstImageId]; + var activeLabelmapIndex; + + if (brushStackState) { + activeLabelmapIndex = brushStackState.activeLabelmapIndex; + + if (!brushStackState.labelmaps3D[activeLabelmapIndex]) { + var size = rows * columns * numberOfFrames; + Object(_addLabelmap3D__WEBPACK_IMPORTED_MODULE_3__["default"])(brushStackState, activeLabelmapIndex, size); + } + + if (!brushStackState.labelmaps3D[activeLabelmapIndex].labelmaps2D[currentImageIdIndex]) { + Object(_addLabelmap2D__WEBPACK_IMPORTED_MODULE_4__["default"])(brushStackState, activeLabelmapIndex, currentImageIdIndex, rows, columns); + } + } else { + activeLabelmapIndex = 0; + _state__WEBPACK_IMPORTED_MODULE_6__["default"].series[firstImageId] = { + activeLabelmapIndex: activeLabelmapIndex, + labelmaps3D: [] + }; + brushStackState = _state__WEBPACK_IMPORTED_MODULE_6__["default"].series[firstImageId]; + + var _size = rows * columns * numberOfFrames; + + Object(_addLabelmap3D__WEBPACK_IMPORTED_MODULE_3__["default"])(brushStackState, activeLabelmapIndex, _size); + Object(_addLabelmap2D__WEBPACK_IMPORTED_MODULE_4__["default"])(brushStackState, activeLabelmapIndex, currentImageIdIndex, rows, columns); + } + + var labelmap3D = brushStackState.labelmaps3D[activeLabelmapIndex]; + return { + labelmap2D: labelmap3D.labelmaps2D[currentImageIdIndex], + labelmap3D: labelmap3D, + currentImageIdIndex: currentImageIdIndex, + activeLabelmapIndex: activeLabelmapIndex + }; +} +/** + * Returns a `Labelmap2D` view of a `Labelmap3D` for the given `imageIdIndex`. + * Creates and caches it if it doesn't yet exist. + * + * @param {Labelmap3D} labelmap3D The `Labelmap3D` object. + * @param {number} imageIdIndex The imageId Index. + * @param {number} rows The number of rows. + * @param {number} columns The number of columns. + * @returns {null} + */ + +function getLabelmap2DByImageIdIndex(labelmap3D, imageIdIndex, rows, columns) { + if (!labelmap3D.labelmaps2D[imageIdIndex]) { + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_8__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var sliceLength = rows * columns; + var elementOffset = sliceLength * imageIdIndex; + var pixelData; + + switch (configuration.arrayType) { + case UINT_16_ARRAY: + pixelData = new Uint16Array(labelmap3D.buffer, elementOffset * 2, // 2 bytes/voxel + sliceLength); + break; + + case FLOAT_32_ARRAY: + pixelData = new Float32Array(labelmap3D.buffer, elementOffset * 4, // 4 bytes/voxel + sliceLength); + break; + + default: + throw new Error("Unsupported Array Type ".concat(configuration.arrayType)); + } + + labelmap3D.labelmaps2D[imageIdIndex] = { + pixelData: pixelData, + segmentsOnLabelmap: Object(_getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_2__["default"])(pixelData) + }; + } + + return labelmap3D.labelmaps2D[imageIdIndex]; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getLabelmapBuffers.js": +/*!****************************************************************!*\ + !*** ./store/modules/segmentationModule/getLabelmapBuffers.js ***! + \****************************************************************/ +/*! exports provided: getLabelmapBuffers, getActiveLabelmapBuffer */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLabelmapBuffers", function() { return getLabelmapBuffers; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getActiveLabelmapBuffer", function() { return getActiveLabelmapBuffer; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _getLabelmaps3D__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getLabelmaps3D */ "./store/modules/segmentationModule/getLabelmaps3D.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + + + + + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_4__["default"].UINT_16_ARRAY, + FLOAT_32_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_4__["default"].FLOAT_32_ARRAY; +/** + * GetLabelmapBuffers - Returns the `buffer` of each `Labelmap3D` associated + * with the `BrushStackState` displayed on the element, or a specific + * one if `labelmapIndex` is defined. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {type} [labelmapIndex] Optional filtering to only return one labelmap. + * @returns {Object|Object[]} An array of objects containing the `labelmapIndex`, and the corresponding buffer and `colorLUT`. + * Only one object if `labelmapIndex` was specified. + * + */ + +function getLabelmapBuffers(elementOrEnabledElementUID, labelmapIndex) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var _getLabelmaps3D = Object(_getLabelmaps3D__WEBPACK_IMPORTED_MODULE_2__["default"])(element), + labelmaps3D = _getLabelmaps3D.labelmaps3D; + + if (!labelmaps3D) { + return []; + } + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_5__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var type; + var bytesPerVoxel; + + switch (configuration.arrayType) { + case UINT_16_ARRAY: + type = 'Uint16Array'; + bytesPerVoxel = '2'; + break; + + case FLOAT_32_ARRAY: + type = 'Float32Array'; + bytesPerVoxel = '4'; + break; + + default: + throw new Error("Unsupported Array Type ".concat(configuration.arrayType)); + } + + var colorLutTables = _state__WEBPACK_IMPORTED_MODULE_3__["default"].colorLutTables; + + if (labelmapIndex !== undefined) { + var labelmap3D = labelmaps3D[labelmapIndex]; + + if (labelmap3D) { + return { + labelmapIndex: labelmapIndex, + bytesPerVoxel: bytesPerVoxel, + type: type, + buffer: labelmap3D.buffer, + colorLUT: colorLutTables[labelmap3D.colorLUTIndex] + }; + } + + return; + } + + var labelmapBuffers = []; + + for (var i = 0; i < labelmaps3D.length; i++) { + var _labelmap3D = labelmaps3D[i]; + + if (_labelmap3D) { + labelmapBuffers.push({ + labelmapIndex: i, + bytesPerVoxel: 2, + buffer: _labelmap3D.buffer, + colorLUT: colorLutTables[_labelmap3D.colorLUTIndex] + }); + } + } + + return labelmapBuffers; +} +/** + * Returns the `buffer` corresponding to the active `Labelmap3D` associated with the + * `BrushStackState` displayed onv the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @returns {Object} An object containing the `labelmapIndex` and + * corresponding `buffer`. + */ + + +function getActiveLabelmapBuffer(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var imageIds = stackState.data[0].imageIds; + var firstImageId = imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_3__["default"].series[firstImageId]; + + if (!brushStackState) { + return; + } + + var activeLabelmapIndex = brushStackState.activeLabelmapIndex; + return getLabelmapBuffers(element, activeLabelmapIndex); +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/getLabelmapStats.js": +/*!**************************************************************!*\ + !*** ./store/modules/segmentationModule/getLabelmapStats.js ***! + \**************************************************************/ +/*! exports provided: default, _calculateLabelmapStats */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getLabelmapStats; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_calculateLabelmapStats", function() { return _calculateLabelmapStats; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('store:modules:segmentationModule:getLabelmapStats'); +/** + * Returns the maximum pixel value, mean and standard deviation of the segment + * given by the `segmentIndex` and `labelmapIndex`. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} segmentIndex The segment index to query. + * @param {number} labelmapIndex The `labelmapIndex` of the `Labelmap3D` to query. + * Defaults to the activeLabelmapIndex if not given. + * @returns {Promise|null} A promise that resolves to an object containing + * the maximum pixel value, the mean and the standard deviation. + * Returns null if no cornerstone element is found. + */ + +function getLabelmapStats(elementOrEnabledElementUID, segmentIndex, labelmapIndex) { + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone; + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return null; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var imageIds = stackState.data[0].imageIds; + var firstImageId = imageIds[0]; + return new Promise(function (resolve) { + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + resolve(null); + } + + var _getImagePlanes2 = _getImagePlanes(imageIds), + sufficientMetadata = _getImagePlanes2.sufficientMetadata, + imagePlanes = _getImagePlanes2.imagePlanes; + + if (!sufficientMetadata) { + logger.warn('Insufficient imagePlaneModule information to calculate volume statistics.'); + resolve(null); + } + + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + var imagePromises = []; + + for (var i = 0; i < imageIds.length; i++) { + imagePromises.push(cornerstone.loadAndCacheImage(imageIds[i])); + } + + Promise.all(imagePromises).then(function (images) { + var stats = _calculateLabelmapStats(labelmap3D, images, imagePlanes, segmentIndex); + + resolve(stats); + }); + }); +} +/** + * + * @param {string[]} imageIds An array of cornerstone imageIds. + * @returns {Object} An object containing an array of per-frame imagePlane metadata, + * and a flag indicating if the metadata was present. + */ + +function _getImagePlanes(imageIds) { + var imagePlanes = []; + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone; + var metadataProvider = cornerstone.metaData; + var sufficientMetadata = true; + + for (var i = 0; i < imageIds.length; i++) { + var imagePlaneModule = metadataProvider.get('imagePlaneModule', imageIds[i]); + + if (!imagePlaneModule) { + sufficientMetadata = false; + break; + } + + imagePlanes.push(imagePlaneModule); + } + + return { + sufficientMetadata: sufficientMetadata, + imagePlanes: imagePlanes + }; +} +/** + * + * @param {Labelmap3D} labelmap3D The labelmap3D object. + * @param {Object[]} images An array of cornerstone images. + * @param {Object[]} imagePlanes An array of the per-frame imagePlane metadata. + * @param {number} segmentIndex + * + * @returns {Object} Statistics object containing the volume in mm^3; and the + * min, max, mean and stdev of the segmented voxels. + */ + + +function _calculateLabelmapStats(labelmap3D, images, imagePlanes, segmentIndex) { + var voxelsPerFrame = _getVoxelsPerFrameForSegment(labelmap3D, images, imagePlanes, segmentIndex); + + var volumeWeightedMean = 0; + var max = voxelsPerFrame[0].values[0]; + var min = max; + var volume = 0; // Calculate Min, Max, volume and mean. + + for (var i = 0; i < voxelsPerFrame.length; i++) { + var _voxelsPerFrame$i = voxelsPerFrame[i], + values = _voxelsPerFrame$i.values, + voxelInMM3 = _voxelsPerFrame$i.voxelInMM3; + volume += voxelInMM3 * values.length; + var sum = 0; + values.forEach(function (value) { + if (value > max) { + max = value; + } else if (value < min) { + min = value; + } + + sum += value; + }); + volumeWeightedMean += sum * voxelInMM3; + } + + volumeWeightedMean /= volume; + var volumeWeightedStDev = 0; // Calculate the volume weigthed standard deviation. + + for (var _i = 0; _i < voxelsPerFrame.length; _i++) { + var _voxelsPerFrame$_i = voxelsPerFrame[_i], + values = _voxelsPerFrame$_i.values, + voxelInMM3 = _voxelsPerFrame$_i.voxelInMM3; + var stdDevSum = 0; + values.forEach(function (value) { + stdDevSum += Math.pow(value - volumeWeightedMean, 2); + }); + volumeWeightedStDev += stdDevSum * voxelInMM3; + } + + volumeWeightedStDev /= volume; + volumeWeightedStDev = Math.sqrt(volumeWeightedStDev); + return { + volume: volume, + mean: volumeWeightedMean, + stdDev: volumeWeightedStDev, + max: max, + min: min + }; +} +/** + * Returns an array of voxel values masked by the segment for each frame, + * as well as the real world volume of a voxel on that frame. + * + * @param {Labelmap3D} labelmap3D The `Labelmap3D` object. + * @param {Object[]} images An array of cornerstone images. + * @param {Object[]} imagePlanes An array of the per-frame imagePlane metadata. + * @param {number} segmentIndex The index of the segment to check. + * + * @returns {Object[]} An array of voxel values and voxel volumes per frame. + */ + +function _getVoxelsPerFrameForSegment(labelmap3D, images, imagePlanes, segmentIndex) { + var _images$ = images[0], + rowPixelSpacing = _images$.rowPixelSpacing, + columnPixelSpacing = _images$.columnPixelSpacing; + var labelmaps2D = labelmap3D.labelmaps2D; + var voxelsPerFrame = []; + + for (var i = 0; i < labelmaps2D.length; i++) { + var labelmap2D = labelmaps2D[i]; + + if (labelmap2D && labelmap2D.segmentsOnLabelmap.includes(segmentIndex)) { + var sliceThickness = _getSliceThickness(images, imagePlanes, i); + + var voxelInMM3 = sliceThickness * rowPixelSpacing * columnPixelSpacing; + var segmentationPixelData = labelmap2D.pixelData; + var imagePixelData = images[i].getPixelData(); + var values = []; // Iterate over segmentationPixelData and count voxels. + + for (var p = 0; p < segmentationPixelData.length; p++) { + if (segmentationPixelData[p] === segmentIndex) { + values.push(imagePixelData[p]); + } + } + + voxelsPerFrame.push({ + voxelInMM3: voxelInMM3, + values: values + }); + } + } + + return voxelsPerFrame; +} +/** + * Estimates the slice thickness given the image position patient of adjacent frames. + * For the edges the slice thickness is assumed to be the perpendicular distance to the closest frame. + * For all other frames the slice thickness is taken to be the sum of half of the distance to the frame above and below. + * + * Voxels on the first or last frame are assumed to be full occupied. + * + * @param {Object[]} images An array of cornerstone images. + * @param {Object[]} imagePlanes An array of the per-frame imagePlane metadata. + * @param {number} frameIndex The index of the frame to get the slice thickness for. + * + * @returns {number} + */ + + +function _getSliceThickness(images, imagePlanes, frameIndex) { + var numberOfSlices = images.length; + var ipp = imagePlanes[frameIndex].imagePositionPatient; // Special cases: Edge of volume - Assume thickness is the distance + // between the current slice and the closest slice as this is all the information we have. + + if (frameIndex === 0) { + var _ippAbove = imagePlanes[frameIndex + 1].imagePositionPatient; + return distanceBetweenSlices(ipp, _ippAbove); + } else if (frameIndex === numberOfSlices - 1) { + var _ippBelow = imagePlanes[frameIndex - 1].imagePositionPatient; + return distanceBetweenSlices(ipp, _ippBelow); + } // Estimate slice thickness from the two adjacent slices. + + + var ippBelow = imagePlanes[frameIndex - 1].imagePositionPatient; + var ippAbove = imagePlanes[frameIndex + 1].imagePositionPatient; + return (distanceBetweenSlices(ipp, ippBelow) + distanceBetweenSlices(ipp, ippAbove)) / 2; +} +/** + * Returns the ditance between two imagePostionPatient coordinates. + * + * @param {number[]} ipp1 The first image position patient array. + * @param {number[]} ipp2 The second image position patient array. + */ + + +function distanceBetweenSlices(ipp1, ipp2) { + return Math.sqrt(Math.pow(ipp1[0] - ipp2[0], 2) + Math.pow(ipp1[1] - ipp2[1], 2) + Math.pow(ipp1[2] - ipp2[2], 2)); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getLabelmaps3D.js": +/*!************************************************************!*\ + !*** ./store/modules/segmentationModule/getLabelmaps3D.js ***! + \************************************************************/ +/*! exports provided: default, getLabelmap3D */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getLabelmaps3D; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLabelmap3D", function() { return getLabelmap3D; }); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('store:modules:segmentationModule:getLabelmaps3D'); +/** + * Returns the `Labelmap3D` objects associated with the series displayed + * in the element, the `activeLabelmapIndex` and the `currentImageIdIndex`. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @returns {Object} An object containing `Labelmap3D` objects, + * the `activeLabelmapIndex` amd the `currentImageIdIndex`. + */ + +function getLabelmaps3D(elementOrEnabledElementUID) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_1__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__["getToolState"])(element, 'stack'); + + if (!stackState) { + logger.error('Consumers must define stacks in their application if using segmentations in cornerstoneTools.'); + return; + } + + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + var labelmaps3D; + var activeLabelmapIndex; + + if (brushStackState) { + labelmaps3D = brushStackState.labelmaps3D; + activeLabelmapIndex = brushStackState.activeLabelmapIndex; + } + + return { + labelmaps3D: labelmaps3D, + activeLabelmapIndex: activeLabelmapIndex, + currentImageIdIndex: stackData.currentImageIdIndex + }; +} +/** + * Returns a single `Labelmap3D` object associated with the series displayed + * in the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} [labelmapIndex] The index of the `Labelmap3D` to retrieve. Defaults to + * the `activeLabelmapIndex`. + * @returns {Object} A `Labelmap3D` object. + */ + +function getLabelmap3D(elementOrEnabledElementUID, labelmapIndex) { + var _getLabelmaps3D = getLabelmaps3D(elementOrEnabledElementUID), + labelmaps3D = _getLabelmaps3D.labelmaps3D, + activeLabelmapIndex = _getLabelmaps3D.activeLabelmapIndex; + + labelmapIndex = labelmapIndex !== undefined ? labelmapIndex : activeLabelmapIndex; + return labelmaps3D[labelmapIndex]; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getSegmentOfActiveLabelmapAtEvent.js": +/*!*******************************************************************************!*\ + !*** ./store/modules/segmentationModule/getSegmentOfActiveLabelmapAtEvent.js ***! + \*******************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getSegmentOfActiveLabelmapAtEvent; }); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _util_isPointInImage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/isPointInImage */ "./util/isPointInImage.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('store:modules:segmentationModule:getSegmentOfActiveLabelmapAtEvent'); +/** + * Returns the segmentIndex at the event position and its corresponding metadata. + * @param {Object} evt A cornerstone event with a currentPoints property. + * + * @returns {Object} An `Object` with the `segmentIndex` and its `metadata`. + */ + +function getSegmentOfActiveLabelmapAtEvent(evt) { + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image, + currentPoints = eventData.currentPoints; + + if (!currentPoints) { + logger.warn('Not a cornerstone input event.'); + return; + } + + var cols = image.width; + var rows = image.height; + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_0__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var currentImageIdIndex = stackData.currentImageIdIndex; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_1__["default"].series[firstImageId]; + var activeLabelmapIndex = brushStackState.activeLabelmapIndex; + var labelmap3D = brushStackState.labelmaps3D[activeLabelmapIndex]; + + if (!labelmap3D) { + // No labelmap3D === no segment here. + return; + } + + var labelmap2D = labelmap3D.labelmaps2D[currentImageIdIndex]; + + if (!labelmap2D) { + // No labelmap on this imageId === no segment here. + return; + } + + var pixelData = labelmap2D.pixelData; + var _currentPoints$image = currentPoints.image, + x = _currentPoints$image.x, + y = _currentPoints$image.y; + x = Math.floor(x); + y = Math.floor(y); + + if (Object(_util_isPointInImage__WEBPACK_IMPORTED_MODULE_2__["default"])({ + x: x, + y: y + }, rows, cols)) { + var segmentIndex = pixelData[y * cols + x]; + + if (segmentIndex === 0) { + return; + } + + return { + segmentIndex: segmentIndex, + metadata: labelmap3D.metadata[segmentIndex] + }; + } // Outside image === no segment here. + + + return; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/getSegmentsOnPixeldata.js": +/*!********************************************************************!*\ + !*** ./store/modules/segmentationModule/getSegmentsOnPixeldata.js ***! + \********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getSegmentsOnPixelData; }); +/** + * Returns an array of the segment indicies present on the `pixelData`. + * @param {UInt16Array|Float32Array} pixelData The pixel data array. + */ +function getSegmentsOnPixelData(pixelData) { + var segmentSet = new Set(pixelData); + var iterator = segmentSet.values(); + var segmentsOnLabelmap = []; + var done = false; + + while (!done) { + var next = iterator.next(); + done = next.done; + + if (!done) { + segmentsOnLabelmap.push(next.value); + } + } + + return segmentsOnLabelmap; +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/history.js": +/*!*****************************************************!*\ + !*** ./store/modules/segmentationModule/history.js ***! + \*****************************************************/ +/*! exports provided: pushState, undo, redo */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pushState", function() { return pushState; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "undo", function() { return undo; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "redo", function() { return redo; }); +/* harmony import */ var _getLabelmaps3D__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getLabelmaps3D */ "./store/modules/segmentationModule/getLabelmaps3D.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_1__["getLogger"])('util:segmentation:labelmap3DHistory'); + +function pushState(element, operations, labelmapIndex) { + var labelmap3D = Object(_getLabelmaps3D__WEBPACK_IMPORTED_MODULE_0__["getLabelmap3D"])(element, labelmapIndex); + labelmap3D.undo.push(operations); + labelmap3D.redo = []; +} + +function undo(element, labelmapIndex) { + var labelmap3D = Object(_getLabelmaps3D__WEBPACK_IMPORTED_MODULE_0__["getLabelmap3D"])(element, labelmapIndex); + var undo = labelmap3D.undo, + redo = labelmap3D.redo; + + if (!undo.length) { + logger.warn('No undos left.'); + return; + } // Pop last set of operations from undo. + + + var operations = undo.pop(); // Undo operations. + + applyState(labelmap3D, operations, 1); // Push set of operations to redo. + + redo.push(operations); + _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone.updateImage(element); +} + +function redo(element, labelmapIndex) { + var labelmap3D = Object(_getLabelmaps3D__WEBPACK_IMPORTED_MODULE_0__["getLabelmap3D"])(element, labelmapIndex); + var undo = labelmap3D.undo, + redo = labelmap3D.redo; + + if (!redo.length) { + logger.warn('No redos left.'); + return; + } // Pop last set of operations from redo. + + + var operations = redo.pop(); // Redo operations. + + applyState(labelmap3D, operations, 2); // Push set of operations to undo. + + undo.push(operations); + _externalModules__WEBPACK_IMPORTED_MODULE_2__["default"].cornerstone.updateImage(element); +} + + + +function applyState(labelmap3D, operations, replaceIndex) { + var labelmaps2D = labelmap3D.labelmaps2D; + operations.forEach(function (operation) { + var imageIdIndex = operation.imageIdIndex, + diff = operation.diff; + var labelmap2D = labelmaps2D[imageIdIndex]; + var pixelData = labelmap2D.pixelData; + + for (var i = 0; i < diff.length; i++) { + var diffI = diff[i]; + pixelData[diffI[0]] = diffI[replaceIndex]; + } + }); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/index.js": +/*!***************************************************!*\ + !*** ./store/modules/segmentationModule/index.js ***! + \***************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _metadata__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./metadata */ "./store/modules/segmentationModule/metadata.js"); +/* harmony import */ var _activeLabelmapIndex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./activeLabelmapIndex */ "./store/modules/segmentationModule/activeLabelmapIndex.js"); +/* harmony import */ var _activeSegmentIndex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./activeSegmentIndex */ "./store/modules/segmentationModule/activeSegmentIndex.js"); +/* harmony import */ var _segmentVisibility_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./segmentVisibility.js */ "./store/modules/segmentationModule/segmentVisibility.js"); +/* harmony import */ var _getLabelmapBuffers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getLabelmapBuffers */ "./store/modules/segmentationModule/getLabelmapBuffers.js"); +/* harmony import */ var _setLabelmap3D_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./setLabelmap3D.js */ "./store/modules/segmentationModule/setLabelmap3D.js"); +/* harmony import */ var _getLabelmapStats__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getLabelmapStats */ "./store/modules/segmentationModule/getLabelmapStats.js"); +/* harmony import */ var _getLabelmaps3D__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getLabelmaps3D */ "./store/modules/segmentationModule/getLabelmaps3D.js"); +/* harmony import */ var _getLabelmap2D__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getLabelmap2D */ "./store/modules/segmentationModule/getLabelmap2D.js"); +/* harmony import */ var _getSegmentOfActiveLabelmapAtEvent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getSegmentOfActiveLabelmapAtEvent */ "./store/modules/segmentationModule/getSegmentOfActiveLabelmapAtEvent.js"); +/* harmony import */ var _colorLUT__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./colorLUT */ "./store/modules/segmentationModule/colorLUT.js"); +/* harmony import */ var _getBrushColor__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./getBrushColor */ "./store/modules/segmentationModule/getBrushColor.js"); +/* harmony import */ var _getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./getSegmentsOnPixeldata */ "./store/modules/segmentationModule/getSegmentsOnPixeldata.js"); +/* harmony import */ var _deleteSegment__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./deleteSegment */ "./store/modules/segmentationModule/deleteSegment.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _defaultConfiguration__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./defaultConfiguration */ "./store/modules/segmentationModule/defaultConfiguration.js"); +/* harmony import */ var _history__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./history */ "./store/modules/segmentationModule/history.js"); +/* harmony import */ var _setRadius__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./setRadius */ "./store/modules/segmentationModule/setRadius.js"); + + + + + + + + + + + + + + + + + + +/** + * A map of `firstImageId` to associated `BrushStackState`, where + * `firstImageId` is the `imageId` of the first image in a stack. + * + * @typedef {Object} Series + */ + +/** + * @typedef {Object} BrushStackState An object defining a set of 3D labelmaps + * associated with a specific cornerstone stack. + * @property {number} activeLabelmapIndex The index of the active `Labelmap3D`. + * @property {Labelmap3D[]} labelmaps3D An array of `Labelmap3D` objects. + */ + +/** + * A 3D labelmap object which stores the labelmap data for an entire stack of cornerstone images. + * + * @typedef {Object} Labelmap3D An object defining a 3D labelmap. + * @property {ArrayBuffer} buffer An array buffer to store the pixel data of the `Labelmap3D` (2 bytes/voxel for Uint16 and 4 bytes/voxel for Float32). + * @property {Labelmap2D[]} labelmaps2D array of `labelmap2D` views on the `buffer`, indexed by in-stack + * image positions. + * @property {Object[]} metadata An array of metadata per segment. Metadata is optional and its form is + * application specific. + * @property {number} activeSegmentIndex The index of the active segment for this `Labelmap3D`. + * @property {number} colorLUTIndex The index of the color LUT to use when displaying this `Labelmap3D`. + * @property {boolean[]} segmentsHidden The visibility of segments on this labelmap. + * If an element is `true`, the element is hidden. If it `false|undefined`, the segment is visible. + * @property {Object[]} undo A history of operations that can be reversed. + * @property {Object[]} redo A history of reverted operations, so that an undo can be reversed. + * Is cleared when changes are made to the labelmap. + */ + +/** + * A 2D labelmap object which accesses only one frame's worth of data from its parent `Labelmap3D`. + * + * @typedef {Object} Labelmap2D An object defining a 2D view on a section of a `Labelmap3D`'s `buffer`. + * @property {Uint16Array|Float32Array} pixelData A 2D view on a section of the parent `Labelmap3D`'s `buffer`. + * @property {number[]} segmentsOnLabelmap An array of segments present in the `pixelData`. + */ + +/** + * OnRegisterCallback - Initialise a single default colorLUT when cornerstoneTools is initialised. + * + * @returns {null} + */ + +function onRegisterCallback() { + Object(_colorLUT__WEBPACK_IMPORTED_MODULE_10__["default"])(0); +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + state: _state__WEBPACK_IMPORTED_MODULE_14__["default"], + configuration: _defaultConfiguration__WEBPACK_IMPORTED_MODULE_15__["default"], + onRegisterCallback: onRegisterCallback, + getters: { + metadata: _metadata__WEBPACK_IMPORTED_MODULE_0__["getMetadata"], + labelmap3D: _getLabelmaps3D__WEBPACK_IMPORTED_MODULE_7__["getLabelmap3D"], + labelmaps3D: _getLabelmaps3D__WEBPACK_IMPORTED_MODULE_7__["default"], + activeLabelmapIndex: _activeLabelmapIndex__WEBPACK_IMPORTED_MODULE_1__["getActiveLabelmapIndex"], + activeSegmentIndex: _activeSegmentIndex__WEBPACK_IMPORTED_MODULE_2__["getActiveSegmentIndex"], + isSegmentVisible: _segmentVisibility_js__WEBPACK_IMPORTED_MODULE_3__["isSegmentVisible"], + labelmap2D: _getLabelmap2D__WEBPACK_IMPORTED_MODULE_8__["default"], + labelmap2DByImageIdIndex: _getLabelmap2D__WEBPACK_IMPORTED_MODULE_8__["getLabelmap2DByImageIdIndex"], + labelmapStats: _getLabelmapStats__WEBPACK_IMPORTED_MODULE_6__["default"], + segmentOfActiveLabelmapAtEvent: _getSegmentOfActiveLabelmapAtEvent__WEBPACK_IMPORTED_MODULE_9__["default"], + brushColor: _getBrushColor__WEBPACK_IMPORTED_MODULE_11__["default"], + labelmapBuffers: _getLabelmapBuffers__WEBPACK_IMPORTED_MODULE_4__["getLabelmapBuffers"], + activeLabelmapBuffer: _getLabelmapBuffers__WEBPACK_IMPORTED_MODULE_4__["getActiveLabelmapBuffer"], + colorLUT: _colorLUT__WEBPACK_IMPORTED_MODULE_10__["getColorLUT"], + colorForSegmentIndexColorLUT: _colorLUT__WEBPACK_IMPORTED_MODULE_10__["getColorForSegmentIndexColorLUT"] + }, + setters: { + metadata: _metadata__WEBPACK_IMPORTED_MODULE_0__["setMetadata"], + labelmap3DForElement: _setLabelmap3D_js__WEBPACK_IMPORTED_MODULE_5__["setLabelmap3DForElement"], + labelmap3DByFirstImageId: _setLabelmap3D_js__WEBPACK_IMPORTED_MODULE_5__["setLabelmap3DByFirstImageId"], + incrementActiveSegmentIndex: _activeSegmentIndex__WEBPACK_IMPORTED_MODULE_2__["incrementActiveSegmentIndex"], + decrementActiveSegmentIndex: _activeSegmentIndex__WEBPACK_IMPORTED_MODULE_2__["decrementActiveSegmentIndex"], + activeSegmentIndex: _activeSegmentIndex__WEBPACK_IMPORTED_MODULE_2__["setActiveSegmentIndex"], + toggleSegmentVisibility: _segmentVisibility_js__WEBPACK_IMPORTED_MODULE_3__["toggleSegmentVisibility"], + updateSegmentsOnLabelmap2D: function updateSegmentsOnLabelmap2D(labelmap2D) { + labelmap2D.segmentsOnLabelmap = Object(_getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_12__["default"])(labelmap2D.pixelData); + }, + deleteSegment: _deleteSegment__WEBPACK_IMPORTED_MODULE_13__["default"], + colorLUT: _colorLUT__WEBPACK_IMPORTED_MODULE_10__["default"], + colorLUTIndexForLabelmap3D: _colorLUT__WEBPACK_IMPORTED_MODULE_10__["setColorLUTIndexForLabelmap3D"], + colorForSegmentIndexOfColorLUT: _colorLUT__WEBPACK_IMPORTED_MODULE_10__["setColorForSegmentIndexOfColorLUT"], + activeLabelmapIndex: _activeLabelmapIndex__WEBPACK_IMPORTED_MODULE_1__["setActiveLabelmapIndex"], + radius: _setRadius__WEBPACK_IMPORTED_MODULE_17__["default"], + pushState: _history__WEBPACK_IMPORTED_MODULE_16__["pushState"], + undo: _history__WEBPACK_IMPORTED_MODULE_16__["undo"], + redo: _history__WEBPACK_IMPORTED_MODULE_16__["redo"] + } +}); + +/***/ }), + +/***/ "./store/modules/segmentationModule/metadata.js": +/*!******************************************************!*\ + !*** ./store/modules/segmentationModule/metadata.js ***! + \******************************************************/ +/*! exports provided: getMetadata, setMetadata */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMetadata", function() { return getMetadata; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setMetadata", function() { return setMetadata; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _addLabelmap3D__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./addLabelmap3D */ "./store/modules/segmentationModule/addLabelmap3D.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../externalModules */ "./externalModules.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); + + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('store:modules:segmentationModule:metadata'); +/** + * GetMetadata - Returns the metadata object for a particular segment if + * segmentIndex is specified, otherwise returns an array of all segment metadata + * for the labelmap. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} [labelmapIndex] If undefined, defaults to the active + * labelmap index. + * @param {number} [segmentIndex] The segment index. + * @returns {Object|Object[]} A metadata object or an array of + * metadata objects. + */ + +function getMetadata(elementOrEnabledElementUID, labelmapIndex, segmentIndex) { + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_5__["default"].series[firstImageId]; + + if (!brushStackState) { + logger.warn("brushStackState is undefined"); + return; + } + + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + + if (!brushStackState.labelmaps3D[labelmapIndex]) { + logger.warn("No labelmap3D of labelmap index ".concat(labelmapIndex, " on stack.")); + return; + } + + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + + if (segmentIndex === undefined) { + return labelmap3D.metadata; + } + + return labelmap3D.metadata[segmentIndex]; +} +/** + * SetMetadata - Sets the metadata object for a particular segment of a + * `Labelmap3D`. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} labelmapIndex = 0 The labelmap index. + * @param {number} segmentIndex The segment index. + * @param {Object} metadata The metadata object to set. + * @returns {null} + */ + + +function setMetadata(elementOrEnabledElementUID) { + var labelmapIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var segmentIndex = arguments.length > 2 ? arguments[2] : undefined; + var metadata = arguments.length > 3 ? arguments[3] : undefined; + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone; + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_5__["default"].series[firstImageId]; + + if (!brushStackState) { + _state__WEBPACK_IMPORTED_MODULE_5__["default"].series[firstImageId] = { + labelmapIndex: labelmapIndex, + labelmaps3D: [] + }; + brushStackState = _state__WEBPACK_IMPORTED_MODULE_5__["default"].series[firstImageId]; + } + + if (!brushStackState.labelmaps3D[labelmapIndex]) { + var enabledElement = cornerstone.getEnabledElement(element); + var _enabledElement$image = enabledElement.image, + rows = _enabledElement$image.rows, + columns = _enabledElement$image.columns; + var numberOfFrames = stackData.imageIds.length; + var size = rows * columns * numberOfFrames; + Object(_addLabelmap3D__WEBPACK_IMPORTED_MODULE_1__["default"])(brushStackState, labelmapIndex, size); + } + + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + labelmap3D.metadata[segmentIndex] = metadata; +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/segmentVisibility.js": +/*!***************************************************************!*\ + !*** ./store/modules/segmentationModule/segmentVisibility.js ***! + \***************************************************************/ +/*! exports provided: isSegmentVisible, toggleSegmentVisibility */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isSegmentVisible", function() { return isSegmentVisible; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toggleSegmentVisibility", function() { return toggleSegmentVisibility; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('store:modules:segmentationModule:segmentVisibility'); +/** + * Returns if a segment is visible. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} segmentIndex The segment index. + * @param {number} [labelmapIndex] If undefined, defaults to the active + * labelmap index. + * @returns {boolean} True if the segment is visible. + */ + +function isSegmentVisible(elementOrEnabledElementUID, segmentIndex, labelmapIndex) { + if (!segmentIndex) { + return; + } + + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + logger.warn("brushStackState is undefined"); + return; + } + + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + + if (!brushStackState.labelmaps3D[labelmapIndex]) { + logger.warn("No labelmap3D of labelmap index ".concat(labelmapIndex, " on stack.")); + return; + } + + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + var visible = !labelmap3D.segmentsHidden[segmentIndex]; + return visible; +} +/** + * Toggles the visability of a segment. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone enabled + * element or its UUID. + * @param {number} segmentIndex The segment index. + * @param {number} [labelmapIndex] If undefined, defaults to the active + * labelmap index. + * @returns {boolean} True if the segment is now visible. + */ + + +function toggleSegmentVisibility(elementOrEnabledElementUID, segmentIndex, labelmapIndex) { + if (!segmentIndex) { + return; + } + + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var firstImageId = stackData.imageIds[0]; + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + logger.warn("brushStackState is undefined"); + return; + } + + labelmapIndex = labelmapIndex === undefined ? brushStackState.activeLabelmapIndex : labelmapIndex; + + if (!brushStackState.labelmaps3D[labelmapIndex]) { + logger.warn("No labelmap3D of labelmap index ".concat(labelmapIndex, " on stack.")); + return; + } + + var labelmap3D = brushStackState.labelmaps3D[labelmapIndex]; + var segmentsHidden = labelmap3D.segmentsHidden; + segmentsHidden[segmentIndex] = !segmentsHidden[segmentIndex]; + return !segmentsHidden[segmentIndex]; +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/setLabelmap3D.js": +/*!***********************************************************!*\ + !*** ./store/modules/segmentationModule/setLabelmap3D.js ***! + \***********************************************************/ +/*! exports provided: setLabelmap3DByFirstImageId, setLabelmap3DForElement */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setLabelmap3DByFirstImageId", function() { return setLabelmap3DByFirstImageId; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setLabelmap3DForElement", function() { return setLabelmap3DForElement; }); +/* harmony import */ var _getElement__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getElement */ "./store/modules/segmentationModule/getElement.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./state */ "./store/modules/segmentationModule/state.js"); +/* harmony import */ var _getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getSegmentsOnPixeldata */ "./store/modules/segmentationModule/getSegmentsOnPixeldata.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _arrayTypes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./arrayTypes */ "./store/modules/segmentationModule/arrayTypes.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../index.js */ "./store/index.js"); + + + + + + + +var UINT_16_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_5__["default"].UINT_16_ARRAY, + FLOAT_32_ARRAY = _arrayTypes__WEBPACK_IMPORTED_MODULE_5__["default"].FLOAT_32_ARRAY; +/** + * Takes a 16-bit encoded `ArrayBuffer` and stores it as a `Labelmap3D` for the + * `BrushStackState` associated with the element. + * + * @param {HTMLElement|string} elementOrEnabledElementUID The cornerstone + * enabled element or its UUID. + * @param {ArrayBuffer} buffer + * @param {number} labelmapIndex The index to store the labelmap under. + * @param {Object[]} metadata = [] Any metadata about the segments. + * @param {number[][]} [segmentsOnLabelmapArray] An array of array of segments on each imageIdIndex. + * If not present, is calculated. + * @param {colorLUTIndex} [colorLUTIndex = 0] The index of the colorLUT to use to render the segmentation. + * @returns {null} + */ + +function setLabelmap3DForElement(elementOrEnabledElementUID, buffer, labelmapIndex) { + var metadata = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : []; + var segmentsOnLabelmapArray = arguments.length > 4 ? arguments[4] : undefined; + var colorLUTIndex = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + var element = Object(_getElement__WEBPACK_IMPORTED_MODULE_0__["default"])(elementOrEnabledElementUID); + + if (!element) { + return; + } + + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + var numberOfFrames = stackState.data[0].imageIds.length; + var firstImageId = stackState.data[0].imageIds[0]; + setLabelmap3DByFirstImageId(firstImageId, buffer, labelmapIndex, metadata, numberOfFrames, segmentsOnLabelmapArray, colorLUTIndex); + Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_4__["triggerLabelmapModifiedEvent"])(element, labelmapIndex); +} +/** + * Takes an 16-bit encoded `ArrayBuffer` and stores it as a `Labelmap3D` for + * the `BrushStackState` associated with the firstImageId. + * + * @param {HTMLElement|string} firstImageId The firstImageId of the series to + * store the segmentation on. + * @param {ArrayBuffer} buffer + * @param {number} labelmapIndex The index to store the labelmap under. + * @param {Object[]} metadata = [] Any metadata about the segments. + * @param {number} numberOfFrames The number of frames, required to set up the + * relevant labelmap2D views. + * @param {number[][]} [segmentsOnLabelmapArray] An array of array of segments on each imageIdIndex. + * If not present, is calculated. + * @param {colorLUTIndex} [colorLUTIndex = 0] The index of the colorLUT to use to render the segmentation. + * @returns {null} + */ + + +function setLabelmap3DByFirstImageId(firstImageId, buffer, labelmapIndex) { + var metadata = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : []; + var numberOfFrames = arguments.length > 4 ? arguments[4] : undefined; + var segmentsOnLabelmapArray = arguments.length > 5 ? arguments[5] : undefined; + var colorLUTIndex = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0; + + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_6__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + var brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + + if (!brushStackState) { + _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId] = { + activeLabelmapIndex: labelmapIndex, + labelmaps3D: [] + }; + brushStackState = _state__WEBPACK_IMPORTED_MODULE_2__["default"].series[firstImageId]; + } + + brushStackState.labelmaps3D[labelmapIndex] = { + buffer: buffer, + labelmaps2D: [], + metadata: metadata, + activeSegmentIndex: 1, + colorLUTIndex: 0, + segmentsHidden: [], + undo: [], + redo: [] + }; + var labelmaps2D = brushStackState.labelmaps3D[labelmapIndex].labelmaps2D; + var slicelengthInBytes = buffer.byteLength / numberOfFrames; + + for (var i = 0; i < numberOfFrames; i++) { + var pixelData = void 0; + + switch (configuration.arrayType) { + case UINT_16_ARRAY: + pixelData = new Uint16Array(buffer, slicelengthInBytes * i, // 2 bytes/voxel + slicelengthInBytes / 2); + break; + + case FLOAT_32_ARRAY: + pixelData = new Float32Array(buffer, slicelengthInBytes * i, slicelengthInBytes / 4); + break; + + default: + throw new Error("Unsupported Array Type ".concat(configuration.arrayType)); + } + + var segmentsOnLabelmap = segmentsOnLabelmapArray ? segmentsOnLabelmapArray[i] : Object(_getSegmentsOnPixeldata__WEBPACK_IMPORTED_MODULE_3__["default"])(pixelData); + + if (segmentsOnLabelmap && segmentsOnLabelmap.some(function (segment) { + return segment; + })) { + labelmaps2D[i] = { + pixelData: pixelData, + segmentsOnLabelmap: segmentsOnLabelmap + }; + } + } +} + + + +/***/ }), + +/***/ "./store/modules/segmentationModule/setRadius.js": +/*!*******************************************************!*\ + !*** ./store/modules/segmentationModule/setRadius.js ***! + \*******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return setRadius; }); +/* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../index */ "./store/index.js"); + +function setRadius(newRadius) { + var _getModule = Object(_index__WEBPACK_IMPORTED_MODULE_0__["getModule"])('segmentation'), + configuration = _getModule.configuration; + + configuration.radius = Math.min(Math.max(newRadius, configuration.minRadius), configuration.maxRadius); +} + +/***/ }), + +/***/ "./store/modules/segmentationModule/state.js": +/*!***************************************************!*\ + !*** ./store/modules/segmentationModule/state.js ***! + \***************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +// Internal state of the brush module. +var state = { + series: {}, + colorLutTables: [] +}; +/* harmony default export */ __webpack_exports__["default"] = (state); + +/***/ }), + +/***/ "./store/removeTool.js": +/*!*****************************!*\ + !*** ./store/removeTool.js ***! + \*****************************/ +/*! exports provided: removeTool, removeToolForElement */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeTool", function() { return removeTool; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeToolForElement", function() { return removeToolForElement; }); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); + +/** + * Deactivates and removes the tool from the target element with the provided name + * + * @export + * @public + * @method + * @name removeToolForElement + * @param {HTMLElement} element The element. + * @param {string} toolName The name of the tool. + * @returns {void} + */ + +var removeToolForElement = function removeToolForElement(element, toolName) { + var toolIndex = _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.tools.findIndex(function (tool) { + return tool.element === element && tool.name === toolName; + }); + + if (toolIndex >= 0) { + _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.tools.splice(toolIndex, 1); + } +}; +/** + * Removes all tools from all enabled elements with the provided name. + * + * @export + * @public + * @method + * @name removeTool + * @param {string} toolName The name of the tool. + * @returns {void} + */ + + +var removeTool = function removeTool(toolName) { + _removeToolGlobally(toolName); + + _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.enabledElements.forEach(function (element) { + removeToolForElement(element, toolName); + }); +}; +/** + * Removes tool with matching name from globally registered tools. + * Requires `globalToolSyncEnabled` to be set to true + * + * @private + * @method + * @name removeToolGlobally + * @param {string} toolName The name of the tool to remove. + * @returns {void} + */ + + +var _removeToolGlobally = function _removeToolGlobally(toolName) { + var _getModule = Object(_index_js__WEBPACK_IMPORTED_MODULE_0__["getModule"])('globalConfiguration'), + configuration = _getModule.configuration; + + if (!configuration.globalToolSyncEnabled) { + return; + } + + if (_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.globalTools[toolName]) { + delete _index_js__WEBPACK_IMPORTED_MODULE_0__["default"].state.globalTools[toolName]; + } +}; + + + +/***/ }), + +/***/ "./store/setToolCursor.js": +/*!********************************!*\ + !*** ./store/setToolCursor.js ***! + \********************************/ +/*! exports provided: setToolCursor, resetToolCursor, hideToolCursor */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolCursor", function() { return setToolCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "resetToolCursor", function() { return resetToolCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hideToolCursor", function() { return hideToolCursor; }); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); + + +var globalConfiguration = _index_js__WEBPACK_IMPORTED_MODULE_0__["modules"].globalConfiguration; +/** + * Creates an SVG Cursor for the target element + * + * @param {HTMLElement} element - The DOM Element to draw on + * @param {MouseCursor} svgCursor - The cursor. + * @returns {void} + */ + +function setToolCursor(element, svgCursor) { + if (!globalConfiguration.configuration.showSVGCursors) { + return; + } // TODO: (state vs options) Exit if cursor wasn't updated + // TODO: Exit if invalid options to create cursor + // Note: Max size of an SVG cursor is 128x128, default is 32x32. + + + var cursorBlob = svgCursor.getIconWithPointerSVG(); + var mousePoint = svgCursor.mousePoint; + var svgCursorUrl = window.URL.createObjectURL(cursorBlob); + element.style.cursor = "url('".concat(svgCursorUrl, "') ").concat(mousePoint, ", auto"); + _index_js__WEBPACK_IMPORTED_MODULE_0__["state"].svgCursorUrl = svgCursorUrl; +} + +function resetToolCursor(element) { + _clearStateAndSetCursor(element, 'initial'); +} + +function hideToolCursor(element) { + if (!globalConfiguration.configuration.showSVGCursors) { + return; + } + + _clearStateAndSetCursor(element, 'none'); +} + +function _clearStateAndSetCursor(element, cursorSeting) { + if (_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].svgCursorUrl) { + window.URL.revokeObjectURL(_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].svgCursorUrl); + } + + _index_js__WEBPACK_IMPORTED_MODULE_0__["state"].svgCursorUrl = null; + element.style.cursor = cursorSeting; +} + +/***/ }), + +/***/ "./store/setToolMode.js": +/*!******************************!*\ + !*** ./store/setToolMode.js ***! + \******************************/ +/*! exports provided: setToolActive, setToolActiveForElement, setToolDisabled, setToolDisabledForElement, setToolEnabled, setToolEnabledForElement, setToolPassive, setToolPassiveForElement, setToolMode, setToolModeForElement, _getNormalizedOptions, _mergeMouseButtonMask */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolActive", function() { return setToolActive; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolActiveForElement", function() { return setToolActiveForElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolDisabled", function() { return setToolDisabled; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolDisabledForElement", function() { return setToolDisabledForElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolEnabled", function() { return setToolEnabled; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolEnabledForElement", function() { return setToolEnabledForElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolPassive", function() { return setToolPassive; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolPassiveForElement", function() { return setToolPassiveForElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolMode", function() { return setToolMode; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolModeForElement", function() { return setToolModeForElement; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_getNormalizedOptions", function() { return _getNormalizedOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_mergeMouseButtonMask", function() { return _mergeMouseButtonMask; }); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../events.js */ "./events.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _getToolForElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getToolForElement.js */ "./store/getToolForElement.js"); +/* harmony import */ var _setToolCursor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./setToolCursor.js */ "./store/setToolCursor.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); + + + + + + +var globalConfiguration = Object(_index_js__WEBPACK_IMPORTED_MODULE_5__["getModule"])('globalConfiguration'); +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('store:setToolMode'); +/** + * Sets a tool's state, with the provided toolName and element, to 'active'. Active tools are rendered, + * respond to user input, and can create new data. + * + * @public + * @function setToolActiveForElement + * @memberof CornerstoneTools + * + * @example Setting a tool 'active' for a specific interaction type. + * // Sets length tool to Active + * setToolActiveForElement(element, 'Length', { + * mouseButtonMask: 1 + * }, ['Mouse']) + * @example Setting a tool 'active' for all interaction types. + * // Sets length tool to Active + * setToolActiveForElement(element, 'Length', { + * mouseButtonMask: 1 + * }) + * @param {HTMLElement} element + * @param {string} toolName + * @param {(Object|string[]|number)} options + * @param {(string[])} interactionTypes + * @returns {undefined} + */ + +var setToolActiveForElement = function setToolActiveForElement(element, toolName, options, interactionTypes) { + // If interactionTypes was passed in via options + if (interactionTypes === undefined && Array.isArray(options)) { + interactionTypes = options; + options = null; + } + + var tool = Object(_getToolForElement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, toolName); + + if (tool) { + _resolveInputConflicts(element, tool, options, interactionTypes); // Iterate over specific interaction types and set active + // This is used as a secondary check on active tools to find the active "parts" of the tool + + + tool.supportedInteractionTypes.forEach(function (interactionType) { + if (interactionTypes === undefined || interactionTypes.includes(interactionType)) { + options["is".concat(interactionType, "Active")] = true; + } else { + options["is".concat(interactionType, "Active")] = false; + } + }); + + if (globalConfiguration.configuration.showSVGCursors && tool.supportedInteractionTypes.includes('Mouse')) { + _setToolCursorIfPrimary(element, options, tool); + } + } // Resume normal behavior + + + setToolModeForElement('active', null, element, toolName, options); +}; + +function _setToolCursorIfPrimary(element, options, tool) { + var mouseButtonMask; + + if (typeof options === 'number') { + mouseButtonMask = [options]; + } else { + mouseButtonMask = options.mouseButtonMask; + } + + if (mouseButtonMask.includes(1)) { + if (tool.svgCursor) { + Object(_setToolCursor_js__WEBPACK_IMPORTED_MODULE_3__["setToolCursor"])(tool.element, tool.svgCursor); + } else if (tool.hideDefaultCursor) { + Object(_setToolCursor_js__WEBPACK_IMPORTED_MODULE_3__["hideToolCursor"])(element); + } else { + Object(_setToolCursor_js__WEBPACK_IMPORTED_MODULE_3__["resetToolCursor"])(element); + } + } +} +/** + * Sets all tool's state, with the provided toolName, to 'active'. Active tools are rendered, + * respond to user input, and can create new data. + * @public + * @function setToolActive + * @memberof CornerstoneTools + * + * @param {string} toolName + * @param {(Object|string[]|number)} options + * @param {(string[])} interactionTypes + * @returns {undefined} + */ + + +var setToolActive = function setToolActive(toolName, options, interactionTypes) { + _trackGlobalToolModeChange('active', toolName, options, interactionTypes); + + _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.enabledElements.forEach(function (element) { + setToolActiveForElement(element, toolName, options, interactionTypes); + }); +}; +/** + * Sets a tool's state, with the provided toolName and element, to 'disabled'. Disabled tools are not rendered, + * and do not respond to user input + * @public + * @function setToolDisabledForElement + * @memberof CornerstoneTools + * + * @param {HTMLElement} element + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + + +var setToolDisabledForElement = setToolModeForElement.bind(null, 'disabled', null); +/** + * Sets all tool's state, with the provided toolName, to 'disabled'. Disabled tools are not rendered, + * and do not respond to user input + * @public + * @function setToolDisabled + * @memberof CornerstoneTools + * + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + +var setToolDisabled = setToolMode.bind(null, 'disabled', null); +/** + * Sets a tool's state, with the provided toolName and element, to 'enabled'. Enabled tools are rendered, + * but do not respond to user input + * @public + * @function setToolEnabledForElement + * @memberof CornerstoneTools + * + * @param {HTMLElement} element + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + +var setToolEnabledForElement = setToolModeForElement.bind(null, 'enabled', null); +/** + * Sets all tool's state, with the provided toolName, to 'enabled'. Enabled tools are rendered, + * but do not respond to user input + * @public + * @function setToolEnabled + * @memberof CornerstoneTools + * + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + +var setToolEnabled = setToolMode.bind(null, 'enabled', null); +/** + * Sets a tool's state, with the provided toolName and element, to 'passive'. Passive tools are rendered and respond to user input, + * but do not create new measurements or annotations. + * @public + * @function setToolPassiveForElement + * @memberof CornerstoneTools + * + * @param {HTMLElement} element + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + +var setToolPassiveForElement = setToolModeForElement.bind(null, 'passive', _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOOL_DEACTIVATED); +/** + * Sets all tool's state, with the provided toolName, to 'passive'. Passive tools are rendered and respond to user input, + * but do not create new measurements or annotations. + * @public + * @function setToolPassive + * @memberof CornerstoneTools + * + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + +var setToolPassive = setToolMode.bind(null, 'passive', _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].TOOL_DEACTIVATED); +/** + * An internal method that helps make sure we change tool mode in a consistent + * way + * @private + * @function setToolModeForElement + * + * @param {string} mode + * @param {string} changeEvent + * @param {HTMLElement} element + * @param {string} toolName + * @param {(Object|number[]|number)} options + * @returns {undefined} + */ + +function setToolModeForElement(mode, changeEvent, element, toolName, options) { + var tool = Object(_getToolForElement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, toolName); + + if (!tool) { + logger.warn('Unable to find tool "%s" for enabledElement', toolName); + return; + } + + options = _getNormalizedOptions(options); // Keep the same if not an array (undefined) + // Reset if empty array + // Merge if array contains any bindings + + if (Array.isArray(options.mouseButtonMask) && options.mouseButtonMask.length !== 0 && Array.isArray(tool.options.mouseButtonMask)) { + options.mouseButtonMask = _mergeMouseButtonMask(options.mouseButtonMask, tool.options.mouseButtonMask); + } // Set mode & options + + + tool.mode = mode; + tool.mergeOptions(options); // Call tool's hook for this event, if one exists + + if (tool["".concat(mode, "Callback")]) { + tool["".concat(mode, "Callback")](element, options); + } // Emit event indicating tool state change + + + if (changeEvent) { + var statusChangeEventData = { + options: options, + toolName: toolName, + type: changeEvent + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, changeEvent, statusChangeEventData); + } // Trigger Update + // Todo: don't error out if image hasn't been loaded... + // Cornerstone.updateImage(element); + +} +/** + * A helper/quick way to set a tool's mode for all canvases + * + * @private + * @function setToolMode + * + * @param {string} mode + * @param {string} changeEvent + * @param {string} toolName + * @param {(Object|number)} options + * @returns {undefined} + */ + + +function setToolMode(mode, changeEvent, toolName, options) { + _trackGlobalToolModeChange(mode, toolName, options); + + _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.enabledElements.forEach(function (element) { + setToolModeForElement(mode, changeEvent, element, toolName, options); + }); +} +/** + * Find tool's that conflict with the incoming tool's mouse/touch bindings and + * resolve those conflicts. + * + * @private + * @function _resolveInputConflicts + * + * @param {HTMLElement} element + * @param {Object} tool + * @param {(Object|number)} options + * @param {(Array)} interactionTypes + * @returns {undefined} + */ + + +function _resolveInputConflicts(element, tool, options, interactionTypes) { + // Iterate over the interaction types our tool supports. + // For each one we intend to activate, check for potential conflicts + // And resolve them + tool.supportedInteractionTypes.forEach(function (interactionType) { + if (interactionTypes === undefined || interactionTypes.includes(interactionType)) { + var inputResolver = _inputResolvers[interactionType]; + + if (inputResolver) { + inputResolver(tool, element, options); + } else { + logger.warn('Unable to resolve input conflicts for type %s', interactionType); + } + } + }); + var activeToolsForElement = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.filter(function (t) { + return t.element === element && t.mode === 'active' && t.supportedInteractionTypes.length > 0; + }); + activeToolsForElement.forEach(function (t) { + var toolHasAnyActiveInteractionType = false; + t.supportedInteractionTypes.forEach(function (interactionType) { + if (t.options["is".concat(interactionType, "Active")]) { + toolHasAnyActiveInteractionType = true; + } + }); + + if (!toolHasAnyActiveInteractionType) { + logger.log("Setting tool %s's to PASSIVE", t.name); + setToolPassiveForElement(element, t.name); + } + }); +} +/** + * Resolves conflicting active tools when activating a tool for mouse interaction + * @private + * @function _resolveMouseInputConflicts + * + * @param {Object} tool + * @param {HTMLElement} element + * @param {(Object|number)} options + * @returns {undefined} + */ + + +function _resolveMouseInputConflicts(tool, element, options) { + var mouseButtonMask = _getNormalizedOptions(options).mouseButtonMask; + + var hasMouseButtonMask = Array.isArray(mouseButtonMask) && mouseButtonMask.length > 0; + + if (!hasMouseButtonMask) { + return; + } + + var activeToolWithMatchingMouseButtonMask = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options.isMouseActive === true && Array.isArray(t.options.mouseButtonMask) && t.options.mouseButtonMask.some(function (v) { + return mouseButtonMask.includes(v); + }); + }); + + if (activeToolWithMatchingMouseButtonMask) { + // Remove collissions + activeToolWithMatchingMouseButtonMask.options.mouseButtonMask = activeToolWithMatchingMouseButtonMask.options.mouseButtonMask.filter(function (mask) { + return !mouseButtonMask.includes(mask); + }); // If no remaining bindings, set inactive + + if (activeToolWithMatchingMouseButtonMask.options.mouseButtonMask.length === 0) { + activeToolWithMatchingMouseButtonMask.options.isMouseActive = false; + } + } +} +/** + * Resolves conflicting active tools when activating a tool for touch interaction + * @private + * @function _resolveTouchInputConflicts + * + * @param {Object} tool + * @param {HTMLElement} element + * @returns {undefined} + */ + + +function _resolveTouchInputConflicts(tool, element) { + var activeTouchTool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options.isTouchActive === true; + }); + var activeMultiTouchToolWithOneTouchPointer = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options.isMultiTouchActive === true && t.configuration.touchPointers === 1; + }); + + if (activeTouchTool) { + logger.log("Setting tool %s's isTouchActive to false", activeTouchTool.name); + activeTouchTool.options.isTouchActive = false; + } + + if (activeMultiTouchToolWithOneTouchPointer) { + logger.log("Setting tool %s's isTouchActive to false", activeMultiTouchToolWithOneTouchPointer.name); + activeMultiTouchToolWithOneTouchPointer.options.isMultiTouchActive = false; + } +} +/** + * Resolves conflicting active tools when activating a tool for MultiTouch interaction + * @private + * @function _resolveMultiTouchInputConflicts + * + * @param {Object} tool + * @param {HTMLElement} element + * @returns {undefined} + */ + + +function _resolveMultiTouchInputConflicts(tool, element) { + var activeMultiTouchTool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options.isMultiTouchActive === true && t.configuration.touchPointers === tool.configuration.touchPointers; + }); + var activeTouchTool; + + if (tool.configuration.touchPointers === 1) { + activeTouchTool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options.isTouchActive === true; + }); + } + + if (activeMultiTouchTool) { + logger.log("Setting tool %s's isMultiTouchActive to false", activeMultiTouchTool.name); + activeMultiTouchTool.options.isMultiTouchActive = false; + } + + if (activeTouchTool) { + logger.log("Setting tool %s's isTouchActive to false", activeTouchTool.name); + activeTouchTool.options.isTouchActive = false; + } +} +/** + * If the incoming tool isTouchActive, find any conflicting tools + * and set their isTouchActive to false to avoid conflicts. + * + * @private + * @function _resolveGenericInputConflicts + * + * @param {string} interactionType + * @param {Object} tool + * @param {HTMLElement} element + * @param {(Object|number)} options + * @returns {undefined} + */ + + +function _resolveGenericInputConflicts(interactionType, tool, element) { + var interactionTypeFlag = "is".concat(interactionType, "Active"); + var activeToolWithActiveInteractionType = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.tools.find(function (t) { + return t.element === element && t.mode === 'active' && t.options[interactionTypeFlag] === true; + }); + + if (activeToolWithActiveInteractionType) { + logger.log("Setting tool %s's %s to false", activeToolWithActiveInteractionType.name, interactionTypeFlag); + activeToolWithActiveInteractionType.options[interactionTypeFlag] = false; + } +} + +function _trackGlobalToolModeChange(mode, toolName, options, interactionTypes) { + if (!globalConfiguration.configuration.globalToolSyncEnabled) { + return; + } // Update Tool History + + + var historyEvent = { + mode: mode, + args: [toolName, options] + }; + + if (interactionTypes) { + historyEvent.push(interactionTypes); + } + + _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalToolChangeHistory.push(historyEvent); + var arbitraryChangeHistoryLimit = 50; + + if (_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalToolChangeHistory.length > arbitraryChangeHistoryLimit) { + _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalToolChangeHistory.shift(); + } // Update ActiveBindings Array + + + var globalTool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalTools[toolName]; + + if (!globalTool) { + logger.warn("setToolMode call for tool not available globally: ".concat(toolName)); + return; + } + + if (mode === 'active') { + var stringBindings = _determineStringBindings(toolName, options, interactionTypes); // Remove the incoming bindings from all global tools + + + Object.keys(_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalTools).forEach(function (key) { + var tool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalTools[key]; + tool.activeBindings = tool.activeBindings.filter(function (binding) { + return !stringBindings.includes(binding); + }); + }); // @HACK: Clear mouse bindings + + if (stringBindings.some(function (binding) { + return binding.includes('Mouse-DELETE'); + })) { + globalTool.activeBindings = globalTool.activeBindings.filter(function (binding) { + return !binding.includes('Mouse'); + }); + stringBindings = stringBindings.filter(function (binding) { + return !binding.includes('Mouse'); + }); + } + + globalTool.activeBindings = globalTool.activeBindings.concat(stringBindings); + } else { + globalTool.activeBindings = []; + } +} + +function _determineStringBindings(toolName, options, interactionTypes) { + if (interactionTypes === undefined && Array.isArray(options)) { + interactionTypes = options; + options = null; + } + + var stringBindings = []; + var globalTool = _index_js__WEBPACK_IMPORTED_MODULE_5__["default"].state.globalTools[toolName]; + + if (globalTool) { + // eslint-disable-next-line new-cap + var tool = new globalTool.tool(globalTool.props); + tool.supportedInteractionTypes.forEach(function (interactionType) { + if (interactionTypes === undefined || interactionTypes.includes(interactionType)) { + if (interactionType === 'Mouse') { + var mouseButtonMasks = _getNormalizedOptions(options).mouseButtonMask; // Add or delete + + + if (Array.isArray(mouseButtonMasks) && mouseButtonMasks.length > 0) { + mouseButtonMasks.forEach(function (mask) { + return stringBindings.push("".concat(interactionType, "-").concat(mask)); + }); + } else if (Array.isArray(mouseButtonMasks) && mouseButtonMasks.length === 0) { + stringBindings.push("".concat(interactionType, "-DELETE")); + } + } else if (interactionType === 'MultiTouch') { + stringBindings.push("".concat(interactionType, "-").concat(tool.configuration.touchPointers)); + } else { + stringBindings.push(interactionType); + } + } + }); + } + + return stringBindings; +} + +var _inputResolvers = { + Mouse: _resolveMouseInputConflicts, + MouseWheel: _resolveGenericInputConflicts.bind(undefined, 'MouseWheel'), + Touch: _resolveTouchInputConflicts, + TouchPinch: _resolveGenericInputConflicts.bind(undefined, 'TouchPinch'), + TouchRotate: _resolveGenericInputConflicts.bind(undefined, 'TouchRotate'), + DoubleTap: _resolveGenericInputConflicts.bind(undefined, 'DoubleTap'), + MultiTouch: _resolveMultiTouchInputConflicts +}; + +function _getNormalizedOptions(options) { + if (Array.isArray(options)) { + // If options is an array assume the array is the mouseButtonMask array + options = { + mouseButtonMask: options + }; + } else if (options !== Object(options)) { + // And if it's something other than an object, assume options is + // a single mouseButtonMask + options = { + mouseButtonMask: [options] + }; + } // If there is still no 'mouseButtonMask' default it to an empty array + + + if (!options.hasOwnProperty('mouseButtonMask')) { + options.mouseButtonMask = []; + } + + if (!Array.isArray(options.mouseButtonMask)) { + options.mouseButtonMask = [options.mouseButtonMask]; + } // Now filter out anything that is not an number or is the number 0 + + + options.mouseButtonMask = options.mouseButtonMask.filter(function (o) { + return typeof o === 'number' && o !== 0; + }); + return options; +} + +function _mergeMouseButtonMask(newMask, oldMask) { + // Merges and removes duplicates + return newMask.concat(oldMask).reduce(function (acc, m) { + if (acc.indexOf(m) === -1) { + acc.push(m); + } + + return acc; + }, []); +} + + + +/***/ }), + +/***/ "./store/setToolOptions.js": +/*!*********************************!*\ + !*** ./store/setToolOptions.js ***! + \*********************************/ +/*! exports provided: setToolOptions, setToolOptionsForElement */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolOptions", function() { return setToolOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolOptionsForElement", function() { return setToolOptionsForElement; }); +/* harmony import */ var _getToolForElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getToolForElement.js */ "./store/getToolForElement.js"); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.js */ "./store/index.js"); + + +/** + * Sets the options of a tool on a specific element. + * @export + * @public + * @method + * @name setToolOptionsForElement + * + * @param {HTMLElement} element The element. + * @param {string} toolName The name of the tool. + * @param {Object} options The options to set. + * @returns {void} + */ + +var setToolOptionsForElement = function setToolOptionsForElement(element, toolName, options) { + var tool = Object(_getToolForElement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, toolName); + + if (tool) { + tool.mergeOptions(options); + } +}; +/** + * Sets the options of a tool for all elements. + * @export + * @public + * @method + * @name setToolOptions + * + * @param {string} toolName + * @param {Object} options + * @returns {void} + */ + + +var setToolOptions = function setToolOptions(toolName, options) { + _index_js__WEBPACK_IMPORTED_MODULE_1__["state"].enabledElements.forEach(function (element) { + setToolOptionsForElement(element, toolName, options); + }); +}; + + + +/***/ }), + +/***/ "./synchronization/Synchronizer.js": +/*!*****************************************!*\ + !*** ./synchronization/Synchronizer.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); +/* harmony import */ var _toolOptions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../toolOptions.js */ "./toolOptions.js"); + + + +/** + * Return an array filtered to only its unique members + * + * @private + * @param {Array} array - The array to filter + * @returns {Array} + */ + +function unique(array) { + return array.filter(function (value, index, self) { + return self.indexOf(value) === index; + }); +} +/** + * Synchronize target and source elements when an event fires on the source element + * @export @public constructor + * @name Synchronizer + * + * @param {String} event - The event(s) that will trigger synchronization. Separate multiple events by a space + * @param {Function} handler - The function that will make the necessary changes to the target element in order to synchronize it with the source element + * @returns {void} + */ + + +function Synchronizer(event, handler) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var that = this; + var sourceElements = []; // Source elements fire the events we want to synchronize to + + var targetElements = []; // Target elements we want to synchronize to source elements + + var ignoreFiredEvents = false; + var initialData = {}; + var eventHandler = handler; + this.enabled = true; + /** + * Update the event handler to perform synchronization + * @param {Function} handler - The event handler function + * @returns {void} + */ + + this.setHandler = function (handler) { + eventHandler = handler; + }; + /** + * Return a reference to the event handler function + * @returns {Function} + */ + + + this.getHandler = function () { + return eventHandler; + }; + /** + * Calculate the initial distances between the source image and each + * of the target images + * @returns {void} + */ + + + this.getDistances = function () { + if (!sourceElements.length || !targetElements.length) { + return; + } + + initialData.distances = {}; + initialData.imageIds = { + sourceElements: [], + targetElements: [] + }; + sourceElements.forEach(function (sourceElement) { + var sourceEnabledElement = cornerstone.getEnabledElement(sourceElement); + + if (!sourceEnabledElement || !sourceEnabledElement.image) { + return; + } + + var sourceImageId = sourceEnabledElement.image.imageId; + var sourceImagePlane = cornerstone.metaData.get('imagePlaneModule', sourceImageId); + + if (!sourceImagePlane || !sourceImagePlane.imagePositionPatient) { + return; + } + + var sourceImagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(sourceImagePlane.imagePositionPatient); + + if (initialData.hasOwnProperty(sourceEnabledElement)) { + return; + } + + initialData.distances[sourceImageId] = {}; + initialData.imageIds.sourceElements.push(sourceImageId); + targetElements.forEach(function (targetElement) { + var targetEnabledElement = cornerstone.getEnabledElement(targetElement); + + if (!targetEnabledElement || !targetEnabledElement.image) { + return; + } + + var targetImageId = targetEnabledElement.image.imageId; + initialData.imageIds.targetElements.push(targetImageId); + + if (sourceElement === targetElement) { + return; + } + + if (sourceImageId === targetImageId) { + return; + } + + if (initialData.distances[sourceImageId].hasOwnProperty(targetImageId)) { + return; + } + + var targetImagePlane = cornerstone.metaData.get('imagePlaneModule', targetImageId); + + if (!targetImagePlane || !targetImagePlane.imagePositionPatient) { + return; + } + + var targetImagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetImagePlane.imagePositionPatient); + initialData.distances[sourceImageId][targetImageId] = targetImagePosition.clone().sub(sourceImagePosition); + }); + + if (!Object.keys(initialData.distances[sourceImageId]).length) { + delete initialData.distances[sourceImageId]; + } + }); + }; + /** + * Gather necessary event data and call synchronization handler + * + * @private + * @param {HTMLElement} sourceElement - The source element for the event + * @param {Object} eventData - The data object for the source event + * @returns {void} + */ + + + function fireEvent(sourceElement, eventData) { + var isDisabled = !that.enabled; + var noElements = !sourceElements.length || !targetElements.length; + + if (isDisabled || noElements) { + return; + } + + ignoreFiredEvents = true; + targetElements.forEach(function (targetElement) { + var targetIndex = targetElements.indexOf(targetElement); + + if (targetIndex === -1) { + return; + } + + var targetImageId = initialData.imageIds.targetElements[targetIndex]; + var sourceIndex = sourceElements.indexOf(sourceElement); + + if (sourceIndex === -1) { + return; + } + + var sourceImageId = initialData.imageIds.sourceElements[sourceIndex]; + var positionDifference; + + if (sourceImageId === targetImageId) { + positionDifference = 0; + } else if (initialData.distances[sourceImageId] !== undefined) { + positionDifference = initialData.distances[sourceImageId][targetImageId]; + } + + eventHandler(that, sourceElement, targetElement, eventData, positionDifference); + }); + ignoreFiredEvents = false; + } + /** + * Call fireEvent if not ignoring events, and pass along event data + * + * @private + * @param {Event} e - The source event object + * @returns {void} + */ + + + function onEvent(e) { + var eventData = e.detail; + + if (ignoreFiredEvents === true) { + return; + } + + fireEvent(e.currentTarget, eventData); + } + /** + * Add a source element to this synchronizer + * + * @param {HTMLElement} element - The new source element + * @returns {void} + */ + + + this.addSource = function (element) { + // Return if this element was previously added + var index = sourceElements.indexOf(element); + + if (index !== -1) { + return; + } // Add to our list of enabled elements + + + sourceElements.push(element); // Subscribe to the event + + event.split(' ').forEach(function (oneEvent) { + element.addEventListener(oneEvent, onEvent); + }); // Update the initial distances between elements + + that.getDistances(); + that.updateDisableHandlers(); + }; + /** + * Add a target element to this synchronizer + * + * @param {HTMLElement} element - The new target element to be synchronized + * @returns {void} + */ + + + this.addTarget = function (element) { + // Return if this element was previously added + var index = targetElements.indexOf(element); + + if (index !== -1) { + return; + } // Add to our list of enabled elements + + + targetElements.push(element); // Update the initial distances between elements + + that.getDistances(); // Invoke the handler for this new target element + + eventHandler(that, element, element, 0); + that.updateDisableHandlers(); + }; + /** + * Add an element to this synchronizer as both a source and a target + * + * @param {HTMLElement} element - The new element + * @returns {void} + */ + + + this.add = function (element) { + that.addSource(element); + that.addTarget(element); + }; + /** + * Remove a source element from this synchronizer + * + * @param {HTMLElement} element - The element to be removed + * @returns {void} + */ + + + this.removeSource = function (element) { + // Find the index of this element + var index = sourceElements.indexOf(element); + + if (index === -1) { + return; + } // Remove this element from the array + + + sourceElements.splice(index, 1); // Stop listening for the event + + event.split(' ').forEach(function (oneEvent) { + element.removeEventListener(oneEvent, onEvent); + }); // Update the initial distances between elements + + that.getDistances(); // Update everyone listening for events + + fireEvent(element); + that.updateDisableHandlers(); + }; + /** + * Remove a target element from this synchronizer + * + * @param {HTMLElement} element - The element to be removed + * @returns {void} + */ + + + this.removeTarget = function (element) { + // Find the index of this element + var index = targetElements.indexOf(element); + + if (index === -1) { + return; + } // Remove this element from the array + + + targetElements.splice(index, 1); // Update the initial distances between elements + + that.getDistances(); // Invoke the handler for the removed target + + eventHandler(that, element, element, 0); + that.updateDisableHandlers(); + }; + /** + * Remove an element from this synchronizer as both a target and source + * + * @param {HTMLElement} element - The element to be removed + * @returns {void} + */ + + + this.remove = function (element) { + that.removeTarget(element); + that.removeSource(element); + }; + /** + * Get the array of source elements + * + * @returns {HTMLElement[]} + */ + + + this.getSourceElements = function () { + return sourceElements; + }; + /** + * Get the array of target elements + * + * @returns {HTMLElement[]} + */ + + + this.getTargetElements = function () { + return targetElements; + }; + /** + * Display an image while halting synchronization + * + * @param {HTMLElement} element - The element containing the image + * @param {Object} image - The cornerstone image object + * @param {Object} viewport - The cornerstone viewport object + * @returns {void} + */ + + + this.displayImage = function (element, image, viewport) { + ignoreFiredEvents = true; + cornerstone.displayImage(element, image, viewport); + ignoreFiredEvents = false; + }; + /** + * Update a viewport while halting synchronization + * + * @param {HTMLElement} element - The target element + * @param {Object} viewport - The new cornerstone viewport object + * @returns {void} + */ + + + this.setViewport = function (element, viewport) { + ignoreFiredEvents = true; + cornerstone.setViewport(element, viewport); + ignoreFiredEvents = false; + }; + /** + * Remove an element from the synchronizer based on an event from that element + * + * @private + * @param {Event} e - The event whose element will be removed + * @returns {void} + */ + + + function disableHandler(e) { + var element = e.detail.element; + that.remove(element); + Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_2__["clearToolOptionsByElement"])(element); + } + /** + * Add an event listener to each element that can remove it from the synchronizer + * @returns {void} + */ + + + this.updateDisableHandlers = function () { + var elements = unique(sourceElements.concat(targetElements)); + elements.forEach(function (element) { + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.ELEMENT_DISABLED, disableHandler); + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.ELEMENT_DISABLED, disableHandler); + }); + }; + /** + * Remove all elements from this synchronizer + * @returns {void} + */ + + + this.destroy = function () { + var elements = unique(sourceElements.concat(targetElements)); + elements.forEach(function (element) { + that.remove(element); + }); + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (Synchronizer); + +/***/ }), + +/***/ "./synchronization/panZoomSynchronizer.js": +/*!************************************************!*\ + !*** ./synchronization/panZoomSynchronizer.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Synchronize the target zoom and pan to match the source + * @export + * @public + * @method + * @name panZoomSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element for the zoom and pan values + * @param {HTMLElement} targetElement - The target element + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // Get the source and target viewports + + var sourceViewport = cornerstone.getViewport(sourceElement); + var targetViewport = cornerstone.getViewport(targetElement); // Do nothing if the scale and translation are the same + + if (targetViewport.scale === sourceViewport.scale && targetViewport.translation.x === sourceViewport.translation.x && targetViewport.translation.y === sourceViewport.translation.y) { + return; + } // Scale and/or translation are different, sync them + + + targetViewport.scale = sourceViewport.scale; + targetViewport.translation.x = sourceViewport.translation.x; + targetViewport.translation.y = sourceViewport.translation.y; + synchronizer.setViewport(targetElement, targetViewport); +}); + +/***/ }), + +/***/ "./synchronization/stackImageIndexSynchronizer.js": +/*!********************************************************!*\ + !*** ./synchronization/stackImageIndexSynchronizer.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); + + + + +/** + * Synchronize the target stack to the index closest to the source stack's index + * @export + * @public + * @method + * @name stackImageIndexSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element for the index value + * @param {HTMLElement} targetElement - The target element + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var sourceStackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(sourceElement, 'stack'); + var sourceStackData = sourceStackToolDataSource.data[0]; + var targetStackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(targetElement, 'stack'); + var targetStackData = targetStackToolDataSource.data[0]; + var newImageIdIndex = sourceStackData.currentImageIdIndex; // Clamp the index + + newImageIdIndex = Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_3__["default"])(newImageIdIndex, 0, targetStackData.imageIds.length - 1); // Do nothing if the index has not changed + + if (newImageIdIndex === targetStackData.currentImageIdIndex) { + return; + } + + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getStartLoadHandler(targetElement); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getEndLoadHandler(targetElement); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(targetElement); + + if (startLoadingHandler) { + startLoadingHandler(targetElement); + } + + var loader; + + if (targetStackData.preventCache === true) { + loader = cornerstone.loadImage(targetStackData.imageIds[newImageIdIndex]); + } else { + loader = cornerstone.loadAndCacheImage(targetStackData.imageIds[newImageIdIndex]); + } + + loader.then(function (image) { + var viewport = cornerstone.getViewport(targetElement); + targetStackData.currentImageIdIndex = newImageIdIndex; + synchronizer.displayImage(targetElement, image, viewport); + + if (endLoadingHandler) { + endLoadingHandler(targetElement, image); + } + }, function (error) { + var imageId = targetStackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(targetElement, imageId, error); + } + }); +}); + +/***/ }), + +/***/ "./synchronization/stackImagePositionOffsetSynchronizer.js": +/*!*****************************************************************!*\ + !*** ./synchronization/stackImagePositionOffsetSynchronizer.js ***! + \*****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); + + + + // In the future we will want to have a way to manually register links sets of the same orientation (e.g. an axial link set from a prior with an axial link set of a current). The user could do this by scrolling the two stacks to a similar location and then doing a user action (e.g. right click link) at which point the system will capture the delta between the image position (patient) of both stacks and use that to sync them. This offset will need to be adjustable. + +/** + * Calculate a position in space that is offset from the source image's position, + * and synchronize the target stack to the image that is closest to that position. + * @export + * @public + * @method + * @name stackImagePositionOffsetSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element + * @param {HTMLElement} targetElement - The target element + * @param {Object} eventData - The data object from the triggering event + * @param {Object} positionDifference - An object with { x, y, z } values that will be + * added to the source image's coordinates + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement, eventData, positionDifference) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var sourceStackData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(sourceElement, 'stack').data[0]; + var sourceImageId = sourceStackData.imageIds[sourceStackData.currentImageIdIndex]; + var sourceImagePlane = cornerstone.metaData.get('imagePlaneModule', sourceImageId); + + if (sourceImagePlane === undefined || sourceImagePlane.imagePositionPatient === undefined) { + return; + } + + var sourceImagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(sourceImagePlane.imagePositionPatient); + var stackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(targetElement, 'stack'); + var stackData = stackToolDataSource.data[0]; + var minDistance = Number.MAX_VALUE; + var newImageIdIndex = -1; + + if (!positionDifference) { + return; + } + + var finalPosition = sourceImagePosition.clone().add(positionDifference); + stackData.imageIds.forEach(function (imageId, index) { + var imagePlane = cornerstone.metaData.get('imagePlaneModule', imageId); + + if (imagePlane === undefined || imagePlane.imagePositionPatient === undefined) { + return; + } + + var imagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(imagePlane.imagePositionPatient); + var distance = finalPosition.distanceToSquared(imagePosition); + + if (distance < minDistance) { + minDistance = distance; + newImageIdIndex = index; + } + }); + + if (newImageIdIndex === stackData.currentImageIdIndex || newImageIdIndex === -1) { + return; + } + + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getStartLoadHandler(targetElement); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getEndLoadHandler(targetElement); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(targetElement); + stackData.currentImageIdIndex = newImageIdIndex; + var newImageId = stackData.imageIds[newImageIdIndex]; + + if (startLoadingHandler) { + startLoadingHandler(targetElement); + } + + var loader; + + if (stackData.preventCache === true) { + loader = cornerstone.loadImage(newImageId); + } else { + loader = cornerstone.loadAndCacheImage(newImageId); + } + + loader.then(function (image) { + var viewport = cornerstone.getViewport(targetElement); + + if (stackData.currentImageIdIndex !== newImageIdIndex) { + return; + } + + synchronizer.displayImage(targetElement, image, viewport); + + if (endLoadingHandler) { + endLoadingHandler(targetElement, image); + } + }, function (error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(targetElement, imageId, error); + } + }); +}); + +/***/ }), + +/***/ "./synchronization/stackImagePositionSynchronizer.js": +/*!***********************************************************!*\ + !*** ./synchronization/stackImagePositionSynchronizer.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); + + + + +/** + * Synchronize the target stack to the image closest to the source image's position + * @export + * @public + * @method + * @name stackImagePositionSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element for the image position + * @param {HTMLElement} targetElement - The target element + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var sourceStackData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(sourceElement, 'stack').data[0]; + var sourceImageId = sourceStackData.imageIds[sourceStackData.currentImageIdIndex]; + var sourceImagePlane = cornerstone.metaData.get('imagePlaneModule', sourceImageId); + + if (sourceImagePlane === undefined || sourceImagePlane.imagePositionPatient === undefined) { + // Console.log('No position found for image ' + sourceImage.imageId); + return; + } + + var sourceImagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(sourceImagePlane.imagePositionPatient); + var stackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(targetElement, 'stack'); + var stackData = stackToolDataSource.data[0]; + var minDistance = Number.MAX_VALUE; + var newImageIdIndex = -1; + stackData.imageIds.forEach(function (imageId, index) { + var imagePlane = cornerstone.metaData.get('imagePlaneModule', imageId); + + if (imagePlane === undefined || imagePlane.imagePositionPatient === undefined) { + // Console.log('No position found for image ' + imageId); + return; + } + + var imagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(imagePlane.imagePositionPatient); + var distance = imagePosition.distanceToSquared(sourceImagePosition); // Console.log(index + '=' + distance); + + if (distance < minDistance) { + minDistance = distance; + newImageIdIndex = index; + } + }); + + if (newImageIdIndex === stackData.currentImageIdIndex) { + return; + } + + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getStartLoadHandler(targetElement); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getEndLoadHandler(targetElement); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(targetElement); + stackData.currentImageIdIndex = newImageIdIndex; + var newImageId = stackData.imageIds[newImageIdIndex]; + + if (startLoadingHandler) { + startLoadingHandler(targetElement); + } + + if (newImageIdIndex !== -1) { + var loader; + + if (stackData.preventCache === true) { + loader = cornerstone.loadImage(newImageId); + } else { + loader = cornerstone.loadAndCacheImage(newImageId); + } + + loader.then(function (image) { + var viewport = cornerstone.getViewport(targetElement); + + if (stackData.currentImageIdIndex !== newImageIdIndex) { + return; + } + + synchronizer.displayImage(targetElement, image, viewport); + + if (endLoadingHandler) { + endLoadingHandler(targetElement, image); + } + }, function (error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(targetElement, imageId, error); + } + }); + } +}); + +/***/ }), + +/***/ "./synchronization/stackScrollSynchronizer.js": +/*!****************************************************!*\ + !*** ./synchronization/stackScrollSynchronizer.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); + + + + +/** + * Propogate scrolling actions from the source element to the target element. + * @export + * @public + * @method + * @name stackScrollSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element for the scroll event + * @param {HTMLElement} targetElement - The target element + * @param {Object} eventData - The data object from the triggering event + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement, eventData) { + // If the target and source are the same, stop + if (sourceElement === targetElement) { + return; + } // If there is no event, or direction is 0, stop + + + if (!eventData || !eventData.direction) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // Get the stack of the target viewport + + var stackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(targetElement, 'stack'); + var stackData = stackToolDataSource.data[0]; // Get the new index for the stack + + var newImageIdIndex = stackData.currentImageIdIndex + eventData.direction; // Ensure the index does not exceed the bounds of the stack + + newImageIdIndex = Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_3__["default"])(newImageIdIndex, 0, stackData.imageIds.length - 1); // If the index has not changed, stop here + + if (stackData.currentImageIdIndex === newImageIdIndex) { + return; + } + + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getStartLoadHandler(targetElement); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getEndLoadHandler(targetElement); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].getErrorLoadingHandler(targetElement); + stackData.currentImageIdIndex = newImageIdIndex; + var newImageId = stackData.imageIds[newImageIdIndex]; + + if (startLoadingHandler) { + startLoadingHandler(targetElement); + } + + var loader; + + if (stackData.preventCache === true) { + loader = cornerstone.loadImage(newImageId); + } else { + loader = cornerstone.loadAndCacheImage(newImageId); + } + + loader.then(function (image) { + var viewport = cornerstone.getViewport(targetElement); + + if (stackData.currentImageIdIndex !== newImageIdIndex) { + return; + } + + synchronizer.displayImage(targetElement, image, viewport); + + if (endLoadingHandler) { + endLoadingHandler(targetElement, image); + } + }, function (error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(targetElement, imageId, error); + } + }); +}); + +/***/ }), + +/***/ "./synchronization/updateImageSynchronizer.js": +/*!****************************************************!*\ + !*** ./synchronization/updateImageSynchronizer.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Redraw target image immediately any time handler is called from source element. + * @export + * @public + * @method + * @name updateImageSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element + * @param {HTMLElement} targetElement - The target element + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(targetElement); +}); + +/***/ }), + +/***/ "./synchronization/wwwcSynchronizer.js": +/*!*********************************************!*\ + !*** ./synchronization/wwwcSynchronizer.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Synchronize the target viewport ww/wc to match the source element. + * @export + * @public + * @method + * @name wwwcSynchronizer + * + * @param {Object} synchronizer - The Synchronizer instance that attaches this + * handler to an event + * @param {HTMLElement} sourceElement - The source element for the ww/wc values + * @param {HTMLElement} targetElement - The target element + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (synchronizer, sourceElement, targetElement) { + // Ignore the case where the source and target are the same enabled element + if (targetElement === sourceElement) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // Get the source and target viewports + + var sourceViewport = cornerstone.getViewport(sourceElement); + var targetViewport = cornerstone.getViewport(targetElement); // Do nothing if the ww/wc already match + + if (targetViewport.voi.windowWidth === sourceViewport.voi.windowWidth && targetViewport.voi.windowCenter === sourceViewport.voi.windowCenter && targetViewport.invert === sourceViewport.invert) { + return; + } // Www/wc are different, sync them + + + targetViewport.voi.windowWidth = sourceViewport.voi.windowWidth; + targetViewport.voi.windowCenter = sourceViewport.voi.windowCenter; + targetViewport.invert = sourceViewport.invert; + synchronizer.setViewport(targetElement, targetViewport); +}); + +/***/ }), + +/***/ "./thirdParty/register.js": +/*!********************************!*\ + !*** ./thirdParty/register.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _registerModule_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./registerModule.js */ "./thirdParty/registerModule.js"); +/* harmony import */ var _registerMixin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./registerMixin.js */ "./thirdParty/registerMixin.js"); +/* harmony import */ var _registerItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./registerItem.js */ "./thirdParty/registerItem.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('thirdParty:register'); +/** + * Register an item or module to cornerstoneTools. + * @export + * @public + * @method + * @name register + * + * @param {string} type The type of the item/module. + * @param {string} name The name of the item/module. + * @param {Object|function} item The item/module itself. + * @param {boolean} [overwrite=false] Whether an item/module should be + * overwritten, should it have the same name. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (type, name, item) { + var overwrite = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; + + if (!isValidInput(type, name, item)) { + return; + } + + switch (type) { + case 'module': + Object(_registerModule_js__WEBPACK_IMPORTED_MODULE_1__["default"])(name, item, overwrite); + break; + + case 'mixin': + Object(_registerMixin_js__WEBPACK_IMPORTED_MODULE_2__["default"])(name, item, overwrite); + break; + + default: + Object(_registerItem_js__WEBPACK_IMPORTED_MODULE_3__["default"])(type, name, item, overwrite); + } +}); +/** + * Returns true if the item is valid, this avoids + * clogging up the library with invalid data. + * @private + * @method + * @name isValidInput + * + * @param {string} type The type of the item/module. + * @param {string} name The name of the item/module. + * @param {Object|function} item The item/module itself. + * @returns {boolean} Whether the input is valid. + */ + +function isValidInput(type, name, item) { + if (!type) { + logger.warn('The type must be given in order to register.'); + return false; + } + + if (!name) { + logger.warn("The %s must have a name in order to register.", type); + return false; + } + + if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(item) !== 'object' && typeof item !== 'function') { + logger.warn("The %s is a %s, it should be an Object or a function.", item, _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(item)); + return false; + } + + return true; +} + +/***/ }), + +/***/ "./thirdParty/registerItem.js": +/*!************************************!*\ + !*** ./thirdParty/registerItem.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _lib_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../lib.js */ "./lib.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_1__["getLogger"])('thirdParty:registerType'); +/** + * Register an item to cornerstoneTools. + * @export + * @private + * @method + * @name registerItem + * + * @param {string} type The type of the item. + * @param {string} name The name of the item. + * @param {Object|function} item The item itself. + * @param {boolean} [overwrite=false] Whether an item should be overwritten, + * should it have the same name. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (type, name, item) { + var overwrite = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; + var itemKey = "".concat(type, "/").concat(name); + var alreadyRegistered = isItemNameRegistered(itemKey); + + if (alreadyRegistered && !overwrite) { + logger.warn('%s is already registered', itemKey); + return; + } + + if (alreadyRegistered) { + logger.warn('Overwriting %s', itemKey); + } + + _lib_js__WEBPACK_IMPORTED_MODULE_0__["lib"][itemKey] = item; +}); + +function isItemNameRegistered(itemKey) { + return _lib_js__WEBPACK_IMPORTED_MODULE_0__["lib"][itemKey] !== undefined; +} + +/***/ }), + +/***/ "./thirdParty/registerMixin.js": +/*!*************************************!*\ + !*** ./thirdParty/registerMixin.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _lib_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../lib.js */ "./lib.js"); +/* harmony import */ var _mixins_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../mixins/index.js */ "./mixins/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_2__["getLogger"])('thirdParty:registerMixin'); +/** + * Register an mixin to cornerstoneTools. + * @export + * @private + * @method + * @name registerMixin + * + * @param {string} name The name of the mixin. + * @param {Object} mixin The mixin itself. + * @param {boolean} [overwrite=false] Whether an mixin should be overwritten, + * should it have the same name. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (name, mixin) { + var overwrite = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var alreadyRegistered = isMixinRegistered(name); + + if (alreadyRegistered && !overwrite) { + logger.warn('mixins/%s is already registered', name); + return; + } + + if (alreadyRegistered) { + logger.warn('Overwriting mixins/%s', name); + } // Register to the mixins object + + + _mixins_index_js__WEBPACK_IMPORTED_MODULE_1__["default"][name] = mixin; // Reference the mixin from the library so it can be exported externally. + + _lib_js__WEBPACK_IMPORTED_MODULE_0__["lib"]["mixins/".concat(name)] = _mixins_index_js__WEBPACK_IMPORTED_MODULE_1__["default"][name]; +}); + +function isMixinRegistered(name) { + return _mixins_index_js__WEBPACK_IMPORTED_MODULE_1__["default"][name] !== undefined; +} + +/***/ }), + +/***/ "./thirdParty/registerModule.js": +/*!**************************************!*\ + !*** ./thirdParty/registerModule.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_1__["getLogger"])('thirdParty:registerModule'); +/** + * Register a module. + * @export + * @private + * @method + * @name registerModule + * + * @param {string} name The name of the module. + * @param {Object} newModule The module to register. + * @param {boolean} [overwrite] Whether a module should be overwritten, + * should it have the same name. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (name, newModule) { + var overwrite = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var alreadyRegistered = isModuleNameRegistered(name); + + if (alreadyRegistered && !overwrite) { + logger.warn('A module with the name %s is already registered', name); + return; + } + + if (alreadyRegistered) { + logger.warn('Overwriting module %s', name); + } + + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["modules"][name] = newModule; + + if (typeof _store_index_js__WEBPACK_IMPORTED_MODULE_0__["modules"][name].onRegisterCallback === 'function') { + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["modules"][name].onRegisterCallback(); + } +}); + +function isModuleNameRegistered(name) { + return _store_index_js__WEBPACK_IMPORTED_MODULE_0__["modules"][name] !== undefined; +} + +/***/ }), + +/***/ "./thirdParty/registerSome.js": +/*!************************************!*\ + !*** ./thirdParty/registerSome.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _register_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./register.js */ "./thirdParty/register.js"); + +/** + * Register an array of items and/or modules to cornerstoneTools. + * @export + * @public + * @method + * @name registerSome + * + * @param {Object[]} items An array of items/modules to register. + * @param {boolean} [overwrite=false] Whether an item/module should be + * overwritten, should it have the same name. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (items) { + var overwrite = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + items.forEach(function (_ref) { + var type = _ref.type, + name = _ref.name, + item = _ref.item; + Object(_register_js__WEBPACK_IMPORTED_MODULE_0__["default"])(type, name, item, overwrite); + }); +}); + +/***/ }), + +/***/ "./toolOptions.js": +/*!************************!*\ + !*** ./toolOptions.js ***! + \************************/ +/*! exports provided: getToolOptions, setToolOptions, clearToolOptions, clearToolOptionsByToolType, clearToolOptionsByElement */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getToolOptions", function() { return getToolOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setToolOptions", function() { return setToolOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clearToolOptions", function() { return clearToolOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clearToolOptionsByToolType", function() { return clearToolOptionsByToolType; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clearToolOptionsByElement", function() { return clearToolOptionsByElement; }); +var elementToolOptions = {}; +/** + * Retrieve the options object associated with a particular toolType and element + * @export + * @public + * @method + * @name getToolOptions + * + * @param {string} toolType Tool type identifier of the target options object + * @param {HTMLElement} element Element of the target options object + * + * @returns {Object} Target options object (empty if not yet set) + */ + +function getToolOptions(toolType, element) { + if (!elementToolOptions[toolType]) { + return {}; + } + + var toolOptions = elementToolOptions[toolType]; + var optionsObject = toolOptions.find(function (toolOptionObject) { + return toolOptionObject.element === element; + }); + + if (!optionsObject) { + return {}; + } + + return optionsObject.options; +} +/** + * Set the options object associated with a particular toolType and element. + * @export + * @public + * @method + * @name setToolOptions + * + * @param {string} toolType Tool type identifier of the target options object. + * @param {HTMLElement} element Element of the target options object. + * @param {Object} options Options object to store at target. + * @returns {void} + */ + + +function setToolOptions(toolType, element, options) { + if (!elementToolOptions[toolType]) { + elementToolOptions[toolType] = [{ + element: element, + options: options + }]; + return; + } + + var toolOptions = elementToolOptions[toolType]; + var index = toolOptions.findIndex(function (toolOptionObject) { + return toolOptionObject.element === element; + }); + + if (index === -1) { + elementToolOptions[toolType].push({ + element: element, + options: options + }); + } else { + var elementOptions = elementToolOptions[toolType][index].options || {}; + elementToolOptions[toolType][index].options = Object.assign(elementOptions, options); + } +} +/** + * Clear the options object associated with a particular toolType and element. + * @export + * @public + * @method + * @name clearToolOptions + * + * @param {string} toolType Tool type identifier of the target options object. + * @param {HTMLElement} element Element of the target options object. + * @returns {void} + */ + + +function clearToolOptions(toolType, element) { + var toolOptions = elementToolOptions[toolType]; + + if (toolOptions) { + elementToolOptions[toolType] = toolOptions.filter(function (toolOptionObject) { + return toolOptionObject.element !== element; + }); + } +} +/** + * Clear the options objects associated with a particular toolType. + * @export + * @public + * @method + * @name clearToolOptionsByToolType + * + * @param {string} toolType Tool type identifier of the target options objects. + * @returns {void} + */ + + +function clearToolOptionsByToolType(toolType) { + delete elementToolOptions[toolType]; +} +/** + * Clear the options objects associated with a particular element. + * @export + * @public + * @method + * @name clearToolOptionsByElement + * + * @param {HTMLElement} element Element of the target options objects. + * @returns {void} + */ + + +function clearToolOptionsByElement(element) { + for (var toolType in elementToolOptions) { + elementToolOptions[toolType] = elementToolOptions[toolType].filter(function (toolOptionObject) { + return toolOptionObject.element !== element; + }); + } +} + + + +/***/ }), + +/***/ "./tools/CrosshairsTool.js": +/*!*********************************!*\ + !*** ./tools/CrosshairsTool.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return CrosshairsTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../util/pointProjector.js */ "./util/pointProjector.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); +/* harmony import */ var _toolOptions_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../toolOptions.js */ "./toolOptions.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + + + + +/** + * @public + * @class CrosshairsTool + * @memberof Tools + * + * @classdesc Tool for finding the slice in another element corresponding to the + * image position in a synchronized image series. + * @extends Tools.Base.BaseTool + */ + +var CrosshairsTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(CrosshairsTool, _BaseTool); + + function CrosshairsTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, CrosshairsTool); + + var defaultProps = { + name: 'Crosshairs', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__["crosshairsCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(CrosshairsTool).call(this, props, defaultProps)); + _this.mouseDownCallback = _this._chooseLocation.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.mouseDragCallback = _this._chooseLocation.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchDragCallback = _this._chooseLocation.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(CrosshairsTool, [{ + key: "_chooseLocation", + value: function _chooseLocation(evt) { + var eventData = evt.detail; + var element = eventData.element; // Prevent CornerstoneToolsTouchStartActive from killing any press events + + evt.stopImmediatePropagation(); // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_9__["getToolState"])(element, this.name); + + if (!toolData) { + return; + } // Get current element target information + + + var sourceElement = element; + var sourceEnabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.getEnabledElement(sourceElement); + var sourceImageId = sourceEnabledElement.image.imageId; + var sourceImagePlane = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.metaData.get('imagePlaneModule', sourceImageId); + + if (!sourceImagePlane) { + return; + } // Get currentPoints from mouse cursor on selected element + + + var sourceImagePoint = eventData.currentPoints.image; // Transfer this to a patientPoint given imagePlane metadata + + var patientPoint = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_10__["imagePointToPatientPoint"])(sourceImagePoint, sourceImagePlane); // Get the enabled elements associated with this synchronization context + + var syncContext = toolData.data[0].synchronizationContext; + var enabledElements = syncContext.getSourceElements(); // Iterate over each synchronized element + + enabledElements.forEach(function (targetElement) { + // Don't do anything if the target is the same as the source + if (targetElement === sourceElement) { + return; + } + + var minDistance = Number.MAX_VALUE; + var newImageIdIndex = -1; + var stackToolDataSource = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_9__["getToolState"])(targetElement, 'stack'); + + if (stackToolDataSource === undefined) { + return; + } + + var stackData = stackToolDataSource.data[0]; // Find within the element's stack the closest image plane to selected location + + stackData.imageIds.forEach(function (imageId, index) { + var imagePlane = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.metaData.get('imagePlaneModule', imageId); // Skip if the image plane is not ready + + if (!imagePlane || !imagePlane.imagePositionPatient || !imagePlane.rowCosines || !imagePlane.columnCosines) { + return; + } + + var imagePosition = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_11__["default"])(imagePlane.imagePositionPatient); + var row = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_11__["default"])(imagePlane.rowCosines); + var column = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_11__["default"])(imagePlane.columnCosines); + var normal = column.clone().cross(row.clone()); + var distance = Math.abs(normal.clone().dot(imagePosition) - normal.clone().dot(patientPoint)); + + if (distance < minDistance) { + minDistance = distance; + newImageIdIndex = index; + } + }); + + if (newImageIdIndex === stackData.currentImageIdIndex) { + return; + } // Switch the loaded image to the required image + + + if (newImageIdIndex !== -1 && stackData.imageIds[newImageIdIndex] !== undefined) { + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_8__["default"].getStartLoadHandler(targetElement); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_8__["default"].getEndLoadHandler(targetElement); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_8__["default"].getErrorLoadingHandler(targetElement); + + if (startLoadingHandler) { + startLoadingHandler(targetElement); + } + + var loader; + + if (stackData.preventCache === true) { + loader = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.loadImage(stackData.imageIds[newImageIdIndex]); + } else { + loader = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.loadAndCacheImage(stackData.imageIds[newImageIdIndex]); + } + + loader.then(function (image) { + var viewport = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.getViewport(targetElement); + stackData.currentImageIdIndex = newImageIdIndex; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.displayImage(targetElement, image, viewport); + + if (endLoadingHandler) { + endLoadingHandler(targetElement, image); + } + }, function (error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(targetElement, imageId, error); + } + }); + } + }); + } + }, { + key: "activeCallback", + value: function activeCallback(element, _ref) { + var mouseButtonMask = _ref.mouseButtonMask, + synchronizationContext = _ref.synchronizationContext; + Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_12__["setToolOptions"])(this.name, element, { + mouseButtonMask: mouseButtonMask + }); // Clear any currently existing toolData + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_9__["clearToolState"])(element, this.name); + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_9__["addToolState"])(element, this.name, { + synchronizationContext: synchronizationContext + }); + } + }]); + + return CrosshairsTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/DoubleTapFitToWindowTool.js": +/*!*******************************************!*\ + !*** ./tools/DoubleTapFitToWindowTool.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DoubleTapFitToWindowTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); + + + + + + + +/** + * @public + * @class DoubleTapFitToWindowTool + * @memberof Tools + * + * @classdesc Tool which calls the external cornerstone.fitToWindow() function + * on double tap. + * @extends Tools.Base.BaseTool + */ + +var DoubleTapFitToWindowTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(DoubleTapFitToWindowTool, _BaseTool); + + function DoubleTapFitToWindowTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, DoubleTapFitToWindowTool); + + var defaultProps = { + name: 'DoubleTapFitToWindow', + supportedInteractionTypes: ['DoubleTap'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(DoubleTapFitToWindowTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(DoubleTapFitToWindowTool, [{ + key: "doubleTapCallback", + value: function doubleTapCallback(evt) { + var eventData = evt.detail; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.fitToWindow(eventData.element); + } + }]); + + return DoubleTapFitToWindowTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/DragProbeTool.js": +/*!********************************!*\ + !*** ./tools/DragProbeTool.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DragProbeTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../util/getRGBPixels.js */ "./util/getRGBPixels.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + + + + + +/** + * @public + * @class DragProbeTool + * @memberof Tools + * + * @classdesc Tool which provides a probe of the image data at the + * input position on drag. + * @extends Tools.Base.BaseTool + */ + +var DragProbeTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(DragProbeTool, _BaseTool); + + function DragProbeTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, DragProbeTool); + + var defaultProps = { + name: 'DragProbe', + strategies: { + default: defaultStrategy, + minimal: minimalStrategy + }, + defaultStrategy: 'default', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_14__["probeCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(DragProbeTool).call(this, props, defaultProps)); + _this.touchDragCallback = _this._movingEventCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchEndCallback = _this._endMovingEventCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.mouseDragCallback = _this._movingEventCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.mouseUpCallback = _this._endMovingEventCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.dragEventData = {}; + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(DragProbeTool, [{ + key: "_movingEventCallback", + value: function _movingEventCallback(evt) { + var eventData = evt.detail; + var element = eventData.element; + this.dragEventData = eventData; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); + } + }, { + key: "_endMovingEventCallback", + value: function _endMovingEventCallback(evt) { + var eventData = evt.detail; + var element = eventData.element; + this.dragEventData = {}; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + if (!this.dragEventData.currentPoints) { + return; + } + + if (evt && evt.detail && Boolean(Object.keys(this.dragEventData.currentPoints).length)) { + evt.detail.currentPoints = this.dragEventData.currentPoints; + this.applyActiveStrategy(evt); + } + } + }]); + + return DragProbeTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); +/** + * Default strategy will pick the exactly point of mouse/touch interact and display the probe data. + * + * @param {Object} evt Image rendered event + * @returns {void} + */ + + + + +function defaultStrategy(evt) { + var config = this.configuration; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone; + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image, + currentPoints = eventData.currentPoints, + canvasContext = eventData.canvasContext; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["getNewContext"])(canvasContext.canvas); + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getActiveColor(); + var fontHeight = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize(); + var x = Math.round(currentPoints.image.x); + var y = Math.round(currentPoints.image.y); + + if (x < 0 || y < 0 || x >= image.columns || y >= image.rows) { + return; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["setShadow"])(context, config); + var text = "".concat(x, ", ").concat(y); + var storedPixels; + var str; + + if (image.color) { + storedPixels = Object(_util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_10__["default"])(element, x, y, 1, 1); + str = "R: ".concat(storedPixels[0], " G: ").concat(storedPixels[1], " B: ").concat(storedPixels[2], " A: ").concat(storedPixels[3]); + } else { + storedPixels = cornerstone.getStoredPixels(element, x, y, 1, 1); + var sp = storedPixels[0]; + var mo = sp * image.slope + image.intercept; + var suv = Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, sp); // Draw text + + str = "SP: ".concat(sp, " MO: ").concat(parseFloat(mo.toFixed(3))); + + if (suv) { + str += " SUV: ".concat(parseFloat(suv.toFixed(3))); + } + } // Draw text 5px away from cursor + + + var textCoords = { + x: currentPoints.canvas.x + 5, + y: currentPoints.canvas.y - 5 + }; + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__["default"])(context, str, textCoords.x, textCoords.y + fontHeight + 5, color); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__["default"])(context, text, textCoords.x, textCoords.y, color); + }); +} +/** + * Minimal strategy will position a circle and use the center of the circle to calculate and display probe data. + * + * @param {Object} evt Image rendered event + * @returns {void} + */ + + +function minimalStrategy(evt) { + var config = this.configuration; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone; + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image, + currentPoints = eventData.currentPoints, + canvasContext = eventData.canvasContext, + isTouchEvent = eventData.isTouchEvent; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["getNewContext"])(canvasContext.canvas); + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getActiveColor(); + var pageCoordY = currentPoints.page.y - _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize() / 2; + + if (isTouchEvent) { + pageCoordY = currentPoints.page.y - _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize() * 4; + } + + var toolCoords = cornerstone.pageToPixel(element, currentPoints.page.x, pageCoordY); + + if (toolCoords.x < 0 || toolCoords.y < 0 || toolCoords.x >= image.columns || toolCoords.y >= image.rows) { + return; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["setShadow"])(context, config); + var seriesModule = cornerstone.metaData.get('generalSeriesModule', image.imageId); + var modality = seriesModule && seriesModule.modality; + var storedPixels; + var text = ''; + + if (image.color) { + storedPixels = Object(_util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_10__["default"])(element, toolCoords.x, toolCoords.y, 1, 1); + text = "R: ".concat(storedPixels[0], " G: ").concat(storedPixels[1], " B: ").concat(storedPixels[2]); + } else { + storedPixels = cornerstone.getStoredPixels(element, toolCoords.x, toolCoords.y, 1, 1); + var sp = storedPixels[0]; + var mo = sp * image.slope + image.intercept; + var modalityPixelValueText = parseFloat(mo.toFixed(2)); + + if (modality === 'CT') { + text += "HU: ".concat(modalityPixelValueText); + } else if (modality === 'PT') { + text += modalityPixelValueText; + var suv = Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, sp); + + if (suv) { + text += " SUV: ".concat(parseFloat(suv.toFixed(2))); + } + } else { + text += modalityPixelValueText; + } + } // Prepare text + + + var textCoords = cornerstone.pixelToCanvas(element, toolCoords); // Translate the x/y away from the cursor + + var translation = { + x: 12, + y: -(_stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize() + 10) / 2 + }; + var handleRadius = 6; + var padding = 5; + var width = Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__["textBoxWidth"])(context, text, padding); + + if (isTouchEvent) { + translation = { + x: -width / 2, + y: -_stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize() - 10 - 2 * handleRadius + }; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["drawCircle"])(context, element, textCoords, handleRadius, { + color: color + }, 'canvas'); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__["default"])(context, text, textCoords.x + translation.x, textCoords.y + translation.y, color); + }); +} + +/***/ }), + +/***/ "./tools/EraserTool.js": +/*!*****************************!*\ + !*** ./tools/EraserTool.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return EraserTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../store/index.js */ "./store/index.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + +/** + * @public + * @class EraserTool + * @memberof Tools + * + * @classdesc Tool for deleting the data of other Annotation Tools. + * @extends Tools.Base.BaseTool + */ + +var EraserTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(EraserTool, _BaseTool); + + function EraserTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, EraserTool); + + var defaultProps = { + name: 'Eraser', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__["eraserCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(EraserTool).call(this, props, defaultProps)); + _this.preMouseDownCallback = _this._deleteAllNearbyTools.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.preTouchStartCallback = _this._deleteAllNearbyTools.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(EraserTool, [{ + key: "_deleteAllNearbyTools", + value: function _deleteAllNearbyTools(evt) { + var coords = evt.detail.currentPoints.canvas; + var element = evt.detail.element; + _store_index_js__WEBPACK_IMPORTED_MODULE_9__["state"].tools.forEach(function (tool) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["getToolState"])(element, tool.name); + + if (toolState) { + // Modifying in a foreach? Probably not ideal + toolState.data.forEach(function (data) { + if (typeof tool.pointNearTool === 'function' && tool.pointNearTool(element, data, coords)) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["removeToolState"])(element, tool.name, data); + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); + } + }); + } + }); + var consumeEvent = true; + return consumeEvent; + } + }]); + + return EraserTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); + + + +/***/ }), + +/***/ "./tools/FreehandRoiSculptorTool.js": +/*!******************************************!*\ + !*** ./tools/FreehandRoiSculptorTool.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FreehandRoiSculptorTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../store/index.js */ "./store/index.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../store/getToolForElement.js */ "./store/getToolForElement.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../store/setToolCursor.js */ "./store/setToolCursor.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../util/freehand/index.js */ "./util/freehand/index.js"); + + + + + + + + + + + + + + + + + + +var FreehandHandleData = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_17__["default"].FreehandHandleData; +/** + * @public + * @class FreehandRoiSculptorTool + * @memberof Tools + * + * @classdesc Tool for easily sculpting annotations drawn with + * the FreehandRoiTool. + * @extends Tools.Base.BaseTool + */ + +var FreehandRoiSculptorTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(FreehandRoiSculptorTool, _BaseTool); + + function FreehandRoiSculptorTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, FreehandRoiSculptorTool); + + var defaultProps = { + name: 'FreehandRoiSculptor', + referencedToolName: 'FreehandRoi', + supportedInteractionTypes: ['Mouse', 'Touch', 'DoubleTap'], + mixins: ['activeOrDisabledBinaryTool'], + configuration: getDefaultFreehandRoiSculptorToolConfiguration(), + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_16__["freehandRoiSculptorCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(FreehandRoiSculptorTool).call(this, props, defaultProps)); + _this.updateOnMouseMove = true; + _this.isMultiPartTool = true; + _this.referencedToolName = _this.initialConfiguration.referencedToolName; + _this._active = false; // Create bound functions for private event loop. + + _this.activeMouseUpCallback = _this.activeMouseUpCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.activeTouchEndCallback = _this.activeTouchEndCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.activeMouseDragCallback = _this.activeMouseDragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(FreehandRoiSculptorTool, [{ + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + + if (this.configuration.currentTool === null) { + return false; + } + + var element = eventData.element; + var config = this.configuration; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolState.data[config.currentTool]; + + if (!data) { + return false; + } + + if (this._active) { + var context = eventData.canvasContext.canvas.getContext('2d'); + var options = { + color: this.configuration.dragColor, + fill: null, + handleRadius: this._toolSizeCanvas + }; + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_9__["default"])(context, eventData, this.configuration.mouseLocation.handles, options); + } else if (this.configuration.showCursorOnHover && !this._recentTouchEnd) { + this._renderHoverCursor(evt); + } + } + }, { + key: "doubleClickCallback", + value: function doubleClickCallback(evt) { + var eventData = evt.detail; + + this._selectFreehandTool(eventData); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(eventData.element); + } + }, { + key: "doubleTapCallback", + value: function doubleTapCallback(evt) { + var eventData = evt.detail; + + this._selectFreehandTool(eventData); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(eventData.element); + } + }, { + key: "preTouchStartCallback", + value: function preTouchStartCallback(evt) { + this._initialiseSculpting(evt); + + return true; + } + /** + * Event handler for MOUSE_DOWN. + * + * @param {Object} evt - The event. + * @returns {boolean} + */ + + }, { + key: "preMouseDownCallback", + value: function preMouseDownCallback(evt) { + if (!this.options.mouseButtonMask.includes(evt.detail.buttons)) { + return; + } + + this._initialiseSculpting(evt); + + return true; + } + /** + * Event handler for MOUSE_DRAG during the active loop. + * + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "activeMouseDragCallback", + value: function activeMouseDragCallback(evt) { + var config = this.configuration; + + if (!this._active) { + return; + } + + var eventData = evt.detail; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(eventData.element, this.referencedToolName); + + if (!toolState) { + return; + } + + var points = toolState.data[config.currentTool].handles.points; // Set the mouseLocation handle + + this._getMouseLocation(eventData); + + this._sculpt(eventData, points); // Update the image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(eventData.element); + } + /** + * Event handler for MOUSE_UP during the active loop. + * + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "activeMouseUpCallback", + value: function activeMouseUpCallback(evt) { + this._activeEnd(evt); + } + /** + * Event handler for TOUCH_END during the active loop. + * + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "activeTouchEndCallback", + value: function activeTouchEndCallback(evt) { + this._activeEnd(evt); + + this._deselectAllTools(evt); + + this._recentTouchEnd = true; + } + }, { + key: "_activeEnd", + value: function _activeEnd(evt) { + var eventData = evt.detail; + var element = eventData.element; + var config = this.configuration; + this._active = false; + _store_index_js__WEBPACK_IMPORTED_MODULE_10__["state"].isMultiPartToolActive = false; + + this._getMouseLocation(eventData); + + this._invalidateToolData(eventData); + + config.mouseUpRender = true; + + this._deactivateSculpt(element); // Update the image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(eventData.element); + preventPropagation(evt); + } + /** + * Renders the cursor + * + * @private + * @param {type} evt description + * @returns {void} + */ + + }, { + key: "_renderHoverCursor", + value: function _renderHoverCursor(evt) { + var eventData = evt.detail; + var element = eventData.element; + var context = eventData.canvasContext.canvas.getContext('2d'); + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolState.data[this.configuration.currentTool]; + this._recentTouchEnd = false; + var coords; + + if (this.configuration.mouseUpRender) { + coords = this.configuration.mouseLocation.handles.start; + this.configuration.mouseUpRender = false; + } else { + coords = _store_index_js__WEBPACK_IMPORTED_MODULE_10__["state"].mousePositionImage; + } + + var freehandRoiTool = Object(_store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_13__["default"])(element, this.referencedToolName); + var radiusCanvas = freehandRoiTool.distanceFromPointCanvas(element, data, coords); + this.configuration.mouseLocation.handles.start.x = coords.x; + this.configuration.mouseLocation.handles.start.y = coords.y; + + if (this.configuration.limitRadiusOutsideRegion) { + var unlimitedRadius = radiusCanvas; + radiusCanvas = this._limitCursorRadiusCanvas(eventData, radiusCanvas); // Fade if distant + + if (unlimitedRadius > this.configuration.hoverCursorFadeDistance * radiusCanvas) { + context.globalAlpha = this.configuration.hoverCursorFadeAlpha; + } + } + + var options = { + fill: null, + color: this.configuration.hoverColor, + handleRadius: radiusCanvas + }; + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_9__["default"])(context, eventData, this.configuration.mouseLocation.handles, options); + + if (this.configuration.limitRadiusOutsideRegion) { + context.globalAlpha = 1.0; // Reset drawing alpha for other draw calls. + } + } + /** + * Event handler for NEW_IMAGE event. + * + * @public + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "newImageCallback", + value: function newImageCallback(evt) { + this._deselectAllTools(evt); + } + /** + * Event handler for switching mode to enabled. + * + * @public + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "enabledCallback", + value: function enabledCallback(evt) { + this._deselectAllTools(evt); + } + /** + * Event handler for switching mode to passive. + * + * @public + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "passiveCallback", + value: function passiveCallback(evt) { + this._deselectAllTools(evt); + } + /** + * Event handler for switching mode to disabled. + * + * @public + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "disabledCallback", + value: function disabledCallback(evt) { + this._deselectAllTools(evt); + } + /** + * Select the freehand tool to be edited. + * + * @private + * @param {Object} eventData - Data object associated with the event. + * @returns {void} + */ + + }, { + key: "_selectFreehandTool", + value: function _selectFreehandTool(eventData) { + var config = this.configuration; + var element = eventData.element; + + var closestToolIndex = this._getClosestFreehandToolOnElement(element, eventData); + + if (closestToolIndex === undefined) { + return; + } + + config.currentTool = closestToolIndex; + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_15__["hideToolCursor"])(element); + } + /** + * Activate the selected freehand tool and deactivate others. + * + * @private + * @param {Object} element - The parent element of the freehand tool. + * @param {Number} toolIndex - The ID of the freehand tool. + * @returns {void} + */ + + }, { + key: "_activateFreehandTool", + value: function _activateFreehandTool(element, toolIndex) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolState.data; + var config = this.configuration; + config.currentTool = toolIndex; + + for (var i = 0; i < data.length; i++) { + if (i === toolIndex) { + data[i].active = true; + } else { + data[i].active = false; + } + } + } + /** + * Choose the tool radius from the mouse position relative to the active freehand + * tool, and begin sculpting. + * + * @private + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "_initialiseSculpting", + value: function _initialiseSculpting(evt) { + var eventData = evt.detail; + var config = this.configuration; + var element = eventData.element; + + if (config.currentTool === null) { + this._selectFreehandTool(eventData); + + if (config.currentTool === null) { + return; + } + } + + this._active = true; // Interupt event dispatcher + + _store_index_js__WEBPACK_IMPORTED_MODULE_10__["state"].isMultiPartToolActive = true; + + this._configureToolSize(eventData); + + this._getMouseLocation(eventData); + + this._activateFreehandTool(element, config.currentTool); + + this._activateSculpt(element); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(eventData.element); + } + /** + * Sculpts the freehand ROI with the circular freehandSculpter tool, moving, + * adding and removing handles as necessary. + * + * @private + * @param {Object} eventData - Data object associated with the event. + * @param {Object} points - Array of points. + * @returns {void} + */ + + }, { + key: "_sculpt", + value: function _sculpt(eventData, points) { + var config = this.configuration; + this._sculptData = { + element: eventData.element, + image: eventData.image, + mousePoint: eventData.currentPoints.image, + points: points, + toolSize: this._toolSizeImage, + minSpacing: config.minSpacing, + maxSpacing: Math.max(this._toolSizeImage, config.minSpacing * 2) + }; // Push existing handles radially away from tool. + + var pushedHandles = this._pushHandles(); // Insert new handles in sparsely populated areas of the + // Pushed part of the contour. + + + if (pushedHandles.first !== undefined) { + this._insertNewHandles(pushedHandles); // If any handles have been pushed very close together or even overlap, + // Combine these into a single handle. + + + this._consolidateHandles(); + } + } + /** + * _pushHandles -Pushes the points radially away from the mouse if they are + * contained within the circle defined by the freehandSculpter's toolSize and + * the mouse position. + * + * @returns {Object} The first and last pushedHandles. + */ + + }, { + key: "_pushHandles", + value: function _pushHandles() { + var _this$_sculptData = this._sculptData, + points = _this$_sculptData.points, + mousePoint = _this$_sculptData.mousePoint, + toolSize = _this$_sculptData.toolSize; + var pushedHandles = {}; + + for (var i = 0; i < points.length; i++) { + var distanceToHandle = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.point.distance(points[i], mousePoint); + + if (distanceToHandle > toolSize) { + continue; + } // Push point if inside circle, to edge of circle. + + + this._pushOneHandle(i, distanceToHandle); + + if (pushedHandles.first === undefined) { + pushedHandles.first = i; + pushedHandles.last = i; + } else { + pushedHandles.last = i; + } + } + + return pushedHandles; + } + /** + * Pushes one handle. + * + * @private + * @param {number} i - The index of the handle to push. + * @param {number} distanceToHandle - The distance between the mouse cursor and the handle. + * @returns {void} + */ + + }, { + key: "_pushOneHandle", + value: function _pushOneHandle(i, distanceToHandle) { + var _this$_sculptData2 = this._sculptData, + points = _this$_sculptData2.points, + mousePoint = _this$_sculptData2.mousePoint, + toolSize = _this$_sculptData2.toolSize, + image = _this$_sculptData2.image; + var handle = points[i]; + var directionUnitVector = { + x: (handle.x - mousePoint.x) / distanceToHandle, + y: (handle.y - mousePoint.y) / distanceToHandle + }; + var position = { + x: mousePoint.x + toolSize * directionUnitVector.x, + y: mousePoint.y + toolSize * directionUnitVector.y + }; + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_12__["clipToBox"])(position, image); + handle.x = position.x; + handle.y = position.y; // Push lines + + var lastHandleIndex = this.constructor._getPreviousHandleIndex(i, points.length); + + points[lastHandleIndex].lines.pop(); + points[lastHandleIndex].lines.push(handle); + } + /** + * Inserts additional handles in sparsely sampled regions of the contour. The + * new handles are placed on the circle defined by the the freehandSculpter's + * toolSize and the mouse position. + * @private + * @param {Array} pushedHandles + * @returns {void} + */ + + }, { + key: "_insertNewHandles", + value: function _insertNewHandles(pushedHandles) { + var indiciesToInsertAfter = this._findNewHandleIndicies(pushedHandles); + + var newIndexModifier = 0; + + for (var i = 0; i < indiciesToInsertAfter.length; i++) { + var insertIndex = indiciesToInsertAfter[i] + 1 + newIndexModifier; + + this._insertHandleRadially(insertIndex); + + newIndexModifier++; + } + } + /** + * Returns an array of indicies that describe where new handles should be + * inserted (where the distance between subsequent handles is > + * config.maxSpacing). + * + * @private + * @param {Object} pushedHandles - The first and last handles that were pushed. + * @returns {Object} An array of indicies that describe where new handles should be inserted. + */ + + }, { + key: "_findNewHandleIndicies", + value: function _findNewHandleIndicies(pushedHandles) { + var _this$_sculptData3 = this._sculptData, + points = _this$_sculptData3.points, + maxSpacing = _this$_sculptData3.maxSpacing; + var indiciesToInsertAfter = []; + + for (var i = pushedHandles.first; i <= pushedHandles.last; i++) { + this._checkSpacing(i, points, indiciesToInsertAfter, maxSpacing); + } + + var pointAfterLast = this.constructor._getNextHandleIndex(pushedHandles.last, points.length); // Check points before and after those pushed. + + + if (pointAfterLast !== pushedHandles.first) { + this._checkSpacing(pointAfterLast, points, indiciesToInsertAfter, maxSpacing); + + var pointBeforeFirst = this.constructor._getPreviousHandleIndex(pushedHandles.first, points.length); + + if (pointBeforeFirst !== pointAfterLast) { + this._checkSpacing(pointBeforeFirst, points, indiciesToInsertAfter, maxSpacing); + } + } + + return indiciesToInsertAfter; + } + /** + * _checkSpacing - description + *@modifies indiciesToInsertAfter + * + * @param {number} i - The index to check. + * @param {Object} points - The points. + * @param {Array} indiciesToInsertAfter - The working list of indicies to insert new points after. + * @param {number} maxSpacing + * @returns {void} + */ + + }, { + key: "_checkSpacing", + value: function _checkSpacing(i, points, indiciesToInsertAfter, maxSpacing) { + var nextHandleIndex = this.constructor._getNextHandleIndex(i, points.length); + + var distanceToNextHandle = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.point.distance(points[i], points[nextHandleIndex]); + + if (distanceToNextHandle > maxSpacing) { + indiciesToInsertAfter.push(i); + } + } + /** + * Inserts a handle on the surface of the circle defined by toolSize and the + * mousePoint. + * + * @private + * @param {number} insertIndex - The index to insert the new handle. + * @returns {void} + */ + + }, { + key: "_insertHandleRadially", + value: function _insertHandleRadially(insertIndex) { + var points = this._sculptData.points; + var previousIndex = insertIndex - 1; + + var nextIndex = this.constructor._getNextHandleIndexBeforeInsert(insertIndex, points.length); + + var insertPosition = this._getInsertPosition(insertIndex, previousIndex, nextIndex); + + var handleData = new FreehandHandleData(insertPosition); + points.splice(insertIndex, 0, handleData); // Add the line from the previous handle to the inserted handle (note the tool is now one increment longer) + + points[previousIndex].lines.pop(); + points[previousIndex].lines.push(points[insertIndex]); + _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_17__["default"].addLine(points, insertIndex); + } + /** + * Checks for any close points and consolidates these to a + * single point. + * + * @private + * @returns {void} + */ + + }, { + key: "_consolidateHandles", + value: function _consolidateHandles() { + var points = this._sculptData.points; // Don't merge handles if it would destroy the polygon. + + if (points.length <= 3) { + return; + } + + var closePairs = this._findCloseHandlePairs(); + + this._mergeCloseHandles(closePairs); + } + /** + * Finds pairs of close handles with seperations < config.minSpacing. No handle + * is included in more than one pair, to avoid spurious deletion of densely + * populated regions of the contour (see mergeCloseHandles). + * + * @private + * @returns {Array} An array of close pairs in points. + */ + + }, { + key: "_findCloseHandlePairs", + value: function _findCloseHandlePairs() { + var _this$_sculptData4 = this._sculptData, + points = _this$_sculptData4.points, + minSpacing = _this$_sculptData4.minSpacing; + var closePairs = []; + var length = points.length; + + for (var i = 0; i < length; i++) { + var nextHandleIndex = this.constructor._getNextHandleIndex(i, points.length); + + var distanceToNextHandle = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.point.distance(points[i], points[nextHandleIndex]); + + if (distanceToNextHandle < minSpacing) { + var pair = [i, nextHandleIndex]; + closePairs.push(pair); // Don't check last node if first in pair to avoid double counting. + + if (i === 0) { + length -= 1; + } // Don't double count pairs in order to prevent your polygon collapsing to a singularity. + + + i++; + } + } + + return closePairs; + } + /** + * Merges points given a list of close pairs. The points are merged in an + * iterative fashion to prevent generating a singularity in some edge cases. + * + * @private + * @param {Array} closePairs - An array of pairs of handle indicies. + * @returns {void} + */ + + }, { + key: "_mergeCloseHandles", + value: function _mergeCloseHandles(closePairs) { + var removedIndexModifier = 0; + + for (var i = 0; i < closePairs.length; i++) { + var pair = this.constructor._getCorrectedPair(closePairs[i], removedIndexModifier); + + this._combineHandles(pair); + + removedIndexModifier++; + } // Recursively remove problem childs + + + var newClosePairs = this._findCloseHandlePairs(); + + if (newClosePairs.length) { + this._mergeCloseHandles(newClosePairs); + } + } + /** + * Combines two handles defined by the indicies in handlePairs. + * + * @private + * @param {Object} handlePair - A pair of handle indicies. + * @returns {void} + */ + + }, { + key: "_combineHandles", + value: function _combineHandles(handlePair) { + var _this$_sculptData5 = this._sculptData, + points = _this$_sculptData5.points, + image = _this$_sculptData5.image; // Calculate combine position: half way between the handles. + + var midPoint = { + x: (points[handlePair[0]].x + points[handlePair[1]].x) / 2.0, + y: (points[handlePair[0]].y + points[handlePair[1]].y) / 2.0 + }; + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_12__["clipToBox"])(midPoint, image); // Move first point to midpoint + + points[handlePair[0]].x = midPoint.x; + points[handlePair[0]].y = midPoint.y; // Link first point to handle that second point links to. + + var handleAfterPairIndex = this.constructor._getNextHandleIndex(handlePair[1], points.length); + + points[handlePair[0]].lines.pop(); + points[handlePair[0]].lines.push(points[handleAfterPairIndex]); // Remove the latter handle + + points.splice(handlePair[1], 1); + } + /** + * Calculates the distance to the closest handle in the tool, and stores the + * result in this._toolSizeImage and this._toolSizeCanvas. + * + * @private + * @param {Object} eventData - Data object associated with the event. + * @returns {void} + */ + + }, { + key: "_configureToolSize", + value: function _configureToolSize(eventData) { + var element = eventData.element; + var config = this.configuration; + var toolIndex = config.currentTool; + var coords = eventData.currentPoints.image; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolState.data[toolIndex]; + var freehandRoiTool = Object(_store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_13__["default"])(element, this.referencedToolName); + var radiusImage = freehandRoiTool.distanceFromPoint(element, data, coords); + var radiusCanvas = freehandRoiTool.distanceFromPointCanvas(element, data, coords); // Check if should limit maximum size. + + if (config.limitRadiusOutsideRegion) { + radiusImage = this._limitCursorRadiusImage(eventData, radiusImage); + radiusCanvas = this._limitCursorRadiusCanvas(eventData, radiusCanvas); + } + + this._toolSizeImage = radiusImage; + this._toolSizeCanvas = radiusCanvas; + } + /** + * Gets the current mouse location and stores it in the configuration object. + * + * @private + * @param {Object} eventData - The data assoicated with the event. + * @returns {void} + */ + + }, { + key: "_getMouseLocation", + value: function _getMouseLocation(eventData) { + var config = this.configuration; + config.mouseLocation.handles.start.x = eventData.currentPoints.image.x; + config.mouseLocation.handles.start.y = eventData.currentPoints.image.y; + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_12__["clipToBox"])(config.mouseLocation.handles.start, eventData.image); + } + /** + * Attaches event listeners to the element such that is is visible, modifiable, and new data can be created. + * + * @private + * @param {Object} element - The viewport element to attach event listeners to. + * @modifies {element} + * @returns {void} + */ + + }, { + key: "_activateSculpt", + value: function _activateSculpt(element) { + this._deactivateSculpt(element); // Begin activeMouseDragCallback loop - call activeMouseUpCallback at end of drag or straight away if just a click. + + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_UP, this.activeMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_CLICK, this.activeMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_DRAG, this.activeMouseDragCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_END, this.activeTouchEndCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_TAP, this.activeTouchEndCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_DRAG, this.activeMouseDragCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(element); + } + /** + * Removes event listeners from the element. + * + * @private + * @param {Object} element - The viewport element to remove event listeners from. + * @modifies {element} + * @returns {void} + */ + + }, { + key: "_deactivateSculpt", + value: function _deactivateSculpt(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_UP, this.activeMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_CLICK, this.activeMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].MOUSE_DRAG, this.activeMouseDragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_END, this.activeTouchEndCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_TAP, this.activeTouchEndCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_6__["default"].TOUCH_DRAG, this.activeMouseDragCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(element); + } + /** + * Invalidate the freehand tool data, tirggering re-calculation of statistics. + * + * @private + * @param {Object} eventData - Data object associated with the event. + * @returns {void} + */ + + }, { + key: "_invalidateToolData", + value: function _invalidateToolData(eventData) { + var config = this.configuration; + var element = eventData.element; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolData.data[config.currentTool]; + data.invalidated = true; + } + /** + * Deactivates all freehand ROIs and change currentTool to null + * + * @private + * @param {Object} evt - The event. + * @returns {void} + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "_deselectAllTools", + value: function _deselectAllTools(evt) { + var config = this.configuration; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(this.element, this.referencedToolName); + config.currentTool = null; + + if (toolData) { + for (var i = 0; i < toolData.data.length; i++) { + toolData.data[i].active = false; + } + } + + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_15__["setToolCursor"])(this.element, this.svgCursor); + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(this.element); + } + /** + * Given a pair of indicies, and the number of points already removed, + * convert to the correct live indicies. + * + * @private + * @static + * @param {Object} pair A pairs of handle indicies. + * @param {Number} removedIndexModifier The number of handles already removed. + * @returns {Object} The corrected pair of handle indicies. + */ + + }, { + key: "_limitCursorRadiusCanvas", + + /** + * Limits the cursor radius so that it its maximum area is the same as the + * ROI being sculpted (in canvas coordinates). + * + * @private + * @param {Object} eventData Data object associated with the event. + * @param {Number} radiusCanvas The distance from the mouse to the ROI + * in canvas coordinates. + * @returns {Number} The limited radius in canvas coordinates. + */ + value: function _limitCursorRadiusCanvas(eventData, radiusCanvas) { + return this._limitCursorRadius(eventData, radiusCanvas, true); + } + /** + * Limits the cursor radius so that it its maximum area is the same as the + * ROI being sculpted (in image coordinates). + * + * @private + * @param {Object} eventData Data object associated with the event. + * @param {Number} radiusImage The distance from the mouse to the ROI + * in image coordinates. + * @returns {Number} The limited radius in image coordinates. + */ + + }, { + key: "_limitCursorRadiusImage", + value: function _limitCursorRadiusImage(eventData, radiusImage) { + return this._limitCursorRadius(eventData, radiusImage, false); + } + /** + * Limits the cursor radius so that it its maximum area is the same as the + * ROI being sculpted. + * + * @private + * @param {Object} eventData Data object associated with the event. + * @param {Number} radius The distance from the mouse to the ROI. + * @param {Boolean} canvasCoords Whether the calculation should be performed + * In canvas coordinates. + * @returns {Number} The limited radius. + */ + + }, { + key: "_limitCursorRadius", + value: function _limitCursorRadius(eventData, radius) { + var canvasCoords = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var element = eventData.element; + var image = eventData.image; + var config = this.configuration; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + var data = toolState.data[config.currentTool]; + var areaModifier = 1.0; + + if (canvasCoords) { + var topLeft = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.pixelToCanvas(element, { + x: 0, + y: 0 + }); + var bottomRight = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.pixelToCanvas(element, { + x: image.width, + y: image.height + }); + var canvasArea = (bottomRight.x - topLeft.x) * (bottomRight.y - topLeft.y); + areaModifier = canvasArea / (image.width * image.height); + } + + var area = data.area * areaModifier; + var maxRadius = Math.pow(area / Math.PI, 0.5); + return Math.min(radius, maxRadius); + } + /** + * Finds the nearest handle to the mouse cursor for all freehand + * data on the element. + * + * @private + * @param {Object} element - The element. + * @param {Object} eventData - Data object associated with the event. + * @returns {Number} The tool index of the closest freehand tool. + */ + + }, { + key: "_getClosestFreehandToolOnElement", + value: function _getClosestFreehandToolOnElement(element, eventData) { + var freehand = Object(_store_getToolForElement_js__WEBPACK_IMPORTED_MODULE_13__["default"])(element, this.referencedToolName); + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_11__["getToolState"])(element, this.referencedToolName); + + if (!toolState) { + return; + } + + var data = toolState.data; + var pixelCoords = eventData.currentPoints.image; + var closest = { + distance: Infinity, + toolIndex: null + }; + + for (var i = 0; i < data.length; i++) { + var distanceFromToolI = freehand.distanceFromPoint(element, data[i], pixelCoords); + + if (distanceFromToolI === -1) { + continue; + } + + if (distanceFromToolI < closest.distance) { + closest.distance = distanceFromToolI; + closest.toolIndex = i; + } + } + + return closest.toolIndex; + } + /** + * Returns the next handle index. + * + * @private + * @static + * @param {Number} i - The handle index. + * @param {Number} length - The length of the polygon. + * @returns {Number} The next handle index. + */ + + }, { + key: "_getInsertPosition", + + /** + * Calculates the position that a new handle should be inserted. + * + * @private + * @static + * @param {Number} insertIndex - The index to insert the new handle. + * @param {Number} previousIndex - The previous index. + * @param {Number} nextIndex - The next index. + * @returns {Object} The position the handle should be inserted. + */ + value: function _getInsertPosition(insertIndex, previousIndex, nextIndex) { + var _this$_sculptData6 = this._sculptData, + points = _this$_sculptData6.points, + toolSize = _this$_sculptData6.toolSize, + mousePoint = _this$_sculptData6.mousePoint, + image = _this$_sculptData6.image; // Calculate insert position: half way between the handles, then pushed out + // Radially to the edge of the freehandSculpter. + + var midPoint = { + x: (points[previousIndex].x + points[nextIndex].x) / 2.0, + y: (points[previousIndex].y + points[nextIndex].y) / 2.0 + }; + var distanceToMidPoint = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.point.distance(mousePoint, midPoint); + var insertPosition; + + if (distanceToMidPoint < toolSize) { + var directionUnitVector = { + x: (midPoint.x - mousePoint.x) / distanceToMidPoint, + y: (midPoint.y - mousePoint.y) / distanceToMidPoint + }; + insertPosition = { + x: mousePoint.x + toolSize * directionUnitVector.x, + y: mousePoint.y + toolSize * directionUnitVector.y + }; + } else { + insertPosition = midPoint; + } + + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_12__["clipToBox"])(insertPosition, image); + return insertPosition; + } // =================================================================== + // Public Configuration API. . + // =================================================================== + + }, { + key: "minSpacing", + get: function get() { + return this.configuration.minSpacing; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehandSculpter minSpacing to a value other than a number.'); + } + + this.configuration.minSpacing = value; + } + }, { + key: "maxSpacing", + get: function get() { + return this.configuration.maxSpacing; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehandSculpter maxSpacing to a value other than a number.'); + } + + this.configuration.maxSpacing = value; + } + }, { + key: "showCursorOnHover", + get: function get() { + return this.configuration.showCursorOnHover; + }, + set: function set(value) { + if (typeof value !== 'boolean') { + throw new Error('Attempting to set freehandSculpter showCursorOnHover to a value other than a boolean.'); + } + + this.configuration.showCursorOnHover = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "limitRadiusOutsideRegion", + get: function get() { + return this.configuration.limitRadiusOutsideRegion; + }, + set: function set(value) { + if (typeof value !== 'boolean') { + throw new Error('Attempting to set freehandSculpter limitRadiusOutsideRegion to a value other than a boolean.'); + } + + this.configuration.limitRadiusOutsideRegion = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "hoverCursorFadeAlpha", + get: function get() { + return this.configuration.hoverCursorFadeAlpha; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehandSculpter hoverCursorFadeAlpha to a value other than a number.'); + } // Clamp the value from 0 to 1. + + + value = Math.max(Math.min(value, 1.0), 0.0); + this.configuration.hoverCursorFadeAlpha = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "hoverCursorFadeDistance", + get: function get() { + return this.configuration.hoverCursorFadeDistance; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehandSculpter hoverCursorFadeDistance to a value other than a number.'); + } // Don't allow to fade a distances smaller than the tool's radius. + + + value = Math.max(value, 1.0); + this.configuration.hoverCursorFadeDistance = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(this.element); + } + }], [{ + key: "_getCorrectedPair", + value: function _getCorrectedPair(pair, removedIndexModifier) { + var correctedPair = [pair[0] - removedIndexModifier, pair[1] - removedIndexModifier]; // Deal with edge case of last node + first node. + + if (correctedPair[1] < 0) { + correctedPair[1] = 0; + } + + return correctedPair; + } + }, { + key: "_getNextHandleIndex", + value: function _getNextHandleIndex(i, length) { + if (i === length - 1) { + return 0; + } + + return i + 1; + } + /** + * Returns the previous handle index. + * + * @private + * @static + * @param {Number} i - The handle index. + * @param {Number} length - The length of the polygon. + * @returns {Number} The previous handle index. + */ + + }, { + key: "_getPreviousHandleIndex", + value: function _getPreviousHandleIndex(i, length) { + if (i === 0) { + return length - 1; + } + + return i - 1; + } + /** + * Returns the next handle index, with a correction considering a handle is + * about to be inserted. + * + * @private + * @static + * @param {Number} insertIndex - The index in which the handle is being inserted. + * @param {Number} length - The length of the polygon. + * @returns {Number} The next handle index. + */ + + }, { + key: "_getNextHandleIndexBeforeInsert", + value: function _getNextHandleIndexBeforeInsert(insertIndex, length) { + if (insertIndex === length) { + return 0; + } // Index correction here: The line bellow is correct, as we haven't inserted our handle yet! + + + return insertIndex; + } + }]); + + return FreehandRoiSculptorTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_14__["default"]); +/** + * Returns the default freehandRoiSculptorTool configuration. + * + * @returns {Object} The default configuration object. + */ + + + + +function getDefaultFreehandRoiSculptorToolConfiguration() { + return { + mouseLocation: { + handles: { + start: { + highlight: true, + active: true + } + } + }, + minSpacing: 1, + currentTool: null, + dragColor: _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_8__["default"].getActiveColor(), + hoverColor: _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolColor(), + + /* --- Hover options --- + showCursorOnHover: Shows a preview of the sculpting radius on hover. + limitRadiusOutsideRegion: Limit max toolsize outside the subject ROI based + on subject ROI area. + hoverCursorFadeAlpha: Alpha to fade to when tool very distant from + subject ROI. + hoverCursorFadeDistance: Distance from ROI in which to fade the hoverCursor + (in units of radii). + */ + showCursorOnHover: true, + limitRadiusOutsideRegion: true, + hoverCursorFadeAlpha: 0.5, + hoverCursorFadeDistance: 1.2 + }; +} + +function preventPropagation(evt) { + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); +} + +/***/ }), + +/***/ "./tools/MagnifyTool.js": +/*!******************************!*\ + !*** ./tools/MagnifyTool.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return MagnifyTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../store/setToolCursor.js */ "./store/setToolCursor.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + +/** + * @public + * @class MagnifyTool + * @memberof Tools + * + * @classdesc Tool for inspecting a region at increased magnification. + * @extends Tools.Base.BaseTool + */ + +var MagnifyTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(MagnifyTool, _BaseTool); + + function MagnifyTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, MagnifyTool); + + var defaultProps = { + name: 'Magnify', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + magnifySize: 300, + magnificationLevel: 2 + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__["magnifyCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(MagnifyTool).call(this, props, defaultProps)); + _this.zoomCanvas = undefined; + _this.zoomElement = undefined; // Mode Callbacks: (element, options) + + _this.activeCallback = _this._createMagnificationCanvas.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.enabledCallback = _this._createMagnificationCanvas.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.disabledCallback = _this._destroyMagnificationCanvas.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // Touch + + _this.postTouchStartCallback = _this._addMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchDragCallback = _this._updateMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchEndCallback = _this._removeMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchDragEndCallback = _this._removeMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // Mouse + + _this.postMouseDownCallback = _this._addMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.mouseDragCallback = _this._updateMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.mouseUpCallback = _this._removeMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // On quick clicks, mouseUp does not fire, but this does + + _this.mouseClickCallback = _this._removeMagnifyingGlass.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // Misc + + _this.newImageCallback = _this._drawMagnificationTool.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(MagnifyTool, [{ + key: "_addMagnifyingGlass", + value: function _addMagnifyingGlass(evt) { + var _this2 = this; + + // Ignore until next event + this._removeZoomElement(); + + this._drawZoomedElement(evt); // On next frame + + + window.requestAnimationFrame(function () { + return _this2._drawMagnificationTool(evt); + }); + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_9__["hideToolCursor"])(evt.detail.element); + evt.preventDefault(); + evt.stopPropagation(); + } + }, { + key: "_updateMagnifyingGlass", + value: function _updateMagnifyingGlass(evt) { + this._drawMagnificationTool(evt); + + evt.preventDefault(); + evt.stopPropagation(); + } + }, { + key: "_removeMagnifyingGlass", + value: function _removeMagnifyingGlass(evt) { + var element = evt.detail.element; // Re-enable the mouse cursor + + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_9__["setToolCursor"])(this.element, this.svgCursor); + element.querySelector('.magnifyTool').style.display = 'none'; + + this._removeZoomElement(); + } + }, { + key: "_drawMagnificationTool", + value: function _drawMagnificationTool(evt) { + var element = evt.detail.element; + var magnifyCanvas = element.querySelector('.magnifyTool'); + + if (!magnifyCanvas) { + this._createMagnificationCanvas(element); + } + + if (this.zoomCanvas === undefined) { + return; + } // The 'not' magnifyTool class here is necessary because cornerstone places + // No classes of it's own on the canvas we want to select + + + var canvas = element.querySelector('canvas:not(.magnifyTool)'); + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["getNewContext"])(magnifyCanvas); // Calculate the on-canvas location of the mouse pointer / touch + + var canvasLocation = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.pixelToCanvas(evt.detail.element, evt.detail.currentPoints.image); // Shrink magnifier to smallest canvas dimension if smaller than desired magnifier size + + var magnifySize = Math.min(this.configuration.magnifySize, canvas.width, canvas.height); + var magnificationLevel = this.configuration.magnificationLevel; + magnifyCanvas.width = magnifySize; + magnifyCanvas.height = magnifySize; // Constrain drag movement to zoomed image boundaries + + canvasLocation.x = Math.max(canvasLocation.x, 0.5 * magnifySize / magnificationLevel); + canvasLocation.x = Math.min(canvasLocation.x, canvas.width - 0.5 * magnifySize / magnificationLevel); + canvasLocation.y = Math.max(canvasLocation.y, 0.5 * magnifySize / magnificationLevel); + canvasLocation.y = Math.min(canvasLocation.y, canvas.height - 0.5 * magnifySize / magnificationLevel); + var copyFrom = { + x: canvasLocation.x * magnificationLevel - 0.5 * magnifySize, + y: canvasLocation.y * magnificationLevel - 0.5 * magnifySize + }; + copyFrom.x = Math.max(copyFrom.x, 0); + copyFrom.y = Math.max(copyFrom.y, 0); + context.drawImage(this.zoomCanvas, copyFrom.x, copyFrom.y, magnifySize, magnifySize, 0, 0, magnifySize, magnifySize); // Place the magnification tool at the same location as the pointer + + var touchOffset = evt.detail.isTouchEvent ? 120 : 0; + var magnifyPosition = { + top: Math.max(canvasLocation.y - 0.5 * magnifySize - touchOffset, 0), + left: Math.max(canvasLocation.x - 0.5 * magnifySize, 0) + }; // Get full magnifier dimensions with borders + + var magnifierBox = magnifyCanvas.getBoundingClientRect(); // Constrain magnifier to canvas boundaries + + magnifyPosition.top = Math.min(magnifyPosition.top, canvas.height - magnifierBox.height); + magnifyPosition.left = Math.min(magnifyPosition.left, canvas.width - magnifierBox.width); + magnifyCanvas.style.top = "".concat(magnifyPosition.top, "px"); + magnifyCanvas.style.left = "".concat(magnifyPosition.left, "px"); + magnifyCanvas.style.display = 'block'; + } + /** + * Creates a cornerstone enabled element, and renders the target image at the + * desired magnification level using it. + * + * @private + * @param {*} evt + * @returns {void} + */ + + }, { + key: "_drawZoomedElement", + value: function _drawZoomedElement(evt) { + var element = evt.detail.element; + var enabledElement = evt.detail.enabledElement; + + if (enabledElement === undefined) { + enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.getEnabledElement(element); + } + + var magnificationLevel = this.configuration.magnificationLevel; + var origCanvas = enabledElement.canvas; + var image = enabledElement.image; // Create a new cornerstone enabledElement + + if (!this.zoomElement) { + this.zoomElement = document.createElement('div'); + this.zoomElement.width = origCanvas.width * magnificationLevel; + this.zoomElement.height = origCanvas.height * magnificationLevel; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.enable(this.zoomElement, enabledElement.options); + } + + var zoomEnabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.getEnabledElement(this.zoomElement); + var viewport = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.getViewport(enabledElement.element); + this.zoomCanvas = zoomEnabledElement.canvas; + this.zoomCanvas.width = origCanvas.width * magnificationLevel; + this.zoomCanvas.height = origCanvas.height * magnificationLevel; + zoomEnabledElement.viewport = Object.assign({}, viewport); // Update it's viewport to render at desired magnification level + + viewport.scale *= magnificationLevel; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.displayImage(this.zoomElement, image); + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.setViewport(this.zoomElement, viewport); // To do enable annotation tools for zoomElement + } + /** + * Removes the canvas and associated enabled element that's + * used to render the zoomed image. + * @returns {void} + */ + + }, { + key: "_removeZoomElement", + value: function _removeZoomElement() { + if (this.zoomElement !== undefined) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.disable(this.zoomCanvas); + this.zoomElement = undefined; + this.zoomCanvas = undefined; + } + } + /** + * The canvas used to render the zoomed image. + * It will be displayed and clipped inside the magnifying glass frame/element. + * + * @private + * + * @param {*} element + * @returns {void} + */ + + }, { + key: "_createMagnificationCanvas", + value: function _createMagnificationCanvas(element) { + // If the magnifying glass canvas doesn't already exist + if (element.querySelector('.magnifyTool') === null) { + // Create a canvas and append it as a child to the element + var magnifyCanvas = document.createElement('canvas'); // The magnifyTool class is used to find the canvas later on + // Make sure position is absolute so the canvas can follow the mouse / touch + + magnifyCanvas.classList.add('magnifyTool'); + magnifyCanvas.width = this.configuration.magnifySize; + magnifyCanvas.height = this.configuration.magnifySize; + magnifyCanvas.style.position = 'absolute'; + magnifyCanvas.style.display = 'none'; + element.appendChild(magnifyCanvas); + } + } + /** + * + * + * @param {*} element + * @returns {void} + */ + + }, { + key: "_destroyMagnificationCanvas", + value: function _destroyMagnificationCanvas(element) { + var magnifyCanvas = element.querySelector('.magnifyTool'); + + if (magnifyCanvas) { + element.removeChild(magnifyCanvas); + } + } + }]); + + return MagnifyTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_8__["default"]); + + + +/***/ }), + +/***/ "./tools/OrientationMarkersTool.js": +/*!*****************************************!*\ + !*** ./tools/OrientationMarkersTool.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return OrientationMarkersTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _orientation_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../orientation/index.js */ "./orientation/index.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); + + + + + + + + // Drawing + + + + +/** + * @public + * @class OrientationMarkersTool + * @memberof Tools + * + * @classdesc Tool for displaying orientation markers on the image. + * @extends Tools.Base.BaseTool + */ + +var OrientationMarkersTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(OrientationMarkersTool, _BaseTool); + + function OrientationMarkersTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, OrientationMarkersTool); + + var defaultProps = { + name: 'OrientationMarkers', + configuration: { + drawAllMarkers: true + }, + mixins: ['enabledOrDisabledBinaryTool'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(OrientationMarkersTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(OrientationMarkersTool, [{ + key: "enabledCallback", + value: function enabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "forceImageUpdate", + value: function forceImageUpdate(element) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone; + var enabledElement = cornerstone.getEnabledElement(element); + + if (enabledElement.image) { + cornerstone.updateImage(element); + } + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_8__["getNewContext"])(eventData.canvasContext.canvas); + var element = eventData.element; + var markers = getOrientationMarkers(element); + + if (!markers) { + return; + } + + var coords = getOrientationMarkerPositions(element, markers); + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getToolColor(); + var textWidths = { + top: Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["textBoxWidth"])(context, markers.top, 0), + left: Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["textBoxWidth"])(context, markers.left, 0), + right: Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["textBoxWidth"])(context, markers.right, 0), + bottom: Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["textBoxWidth"])(context, markers.bottom, 0), + height: Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["textBoxWidth"])(context, 'M', 0) // Trick to get an approximation of the height of the text + + }; + drawTopLeftText(context, markers, coords, textWidths, color); + + if (this.configuration.drawAllMarkers) { + drawBottomRightText(context, markers, coords, textWidths, color); + } + } + }]); + + return OrientationMarkersTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +var drawTopLeftText = function drawTopLeftText(context, markers, coords, textWidths, color) { + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["default"])(context, markers.top, coords.top.x - textWidths.top / 2, coords.top.y, color); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["default"])(context, markers.left, coords.left.x - textWidths.left / 2, coords.left.y, color); +}; + +var drawBottomRightText = function drawBottomRightText(context, markers, coords, textWidths, color) { + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["default"])(context, markers.right, coords.right.x - textWidths.right, coords.right.y, color); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_10__["default"])(context, markers.bottom, coords.bottom.x - textWidths.bottom / 2, coords.bottom.y - textWidths.height, color); +}; + +var getOrientationMarkers = function getOrientationMarkers(element) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone; + var enabledElement = cornerstone.getEnabledElement(element); + var imagePlane = cornerstone.metaData.get('imagePlaneModule', enabledElement.image.imageId); + + if (!imagePlane || !imagePlane.rowCosines || !imagePlane.columnCosines) { + return; + } + + var row = _orientation_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].getOrientationString(imagePlane.rowCosines); + var column = _orientation_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].getOrientationString(imagePlane.columnCosines); + var oppositeRow = _orientation_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].invertOrientationString(row); + var oppositeColumn = _orientation_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].invertOrientationString(column); + return { + top: oppositeColumn, + bottom: column, + left: oppositeRow, + right: row + }; +}; + +var getOrientationMarkerPositions = function getOrientationMarkerPositions(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getEnabledElement(element); + var top = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, { + x: enabledElement.image.width / 2, + y: 5 + }); + var bottom = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, { + x: enabledElement.image.width / 2, + y: enabledElement.image.height - 15 + }); + var left = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, { + x: 5, + y: enabledElement.image.height / 2 + }); + var right = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, { + x: enabledElement.image.width - 10, + y: enabledElement.image.height / 2 + }); + return { + top: top, + bottom: bottom, + left: left, + right: right + }; +}; + +/***/ }), + +/***/ "./tools/OverlayTool.js": +/*!******************************!*\ + !*** ./tools/OverlayTool.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return OverlayTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); + + + + + + + +/** + * + * http://dicom.nema.org/dicom/2013/output/chtml/part03/sect_C.9.html + * + * @public + * @class Overlay + * @memberof Tools + * + * @classdesc Tool for displaying a scale overlay on the image. + * @extends Tools.Base.BaseTool + */ + +var OverlayTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(OverlayTool, _BaseTool); + + function OverlayTool() { + var _this; + + var configuration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, OverlayTool); + + var defaultConfig = { + name: 'Overlay', + configuration: {}, + mixins: ['enabledOrDisabledBinaryTool'] + }; + var initialConfiguration = Object.assign(defaultConfig, configuration); + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(OverlayTool).call(this, initialConfiguration)); + _this.initialConfiguration = initialConfiguration; + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(OverlayTool, [{ + key: "enabledCallback", + value: function enabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "forceImageUpdate", + value: function forceImageUpdate(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getEnabledElement(element); + + if (enabledElement.image) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + } + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + var enabledElement = eventData.enabledElement, + image = eventData.image, + viewport = eventData.viewport, + canvasContext = eventData.canvasContext; + + if (!eventData || !enabledElement || !image) { + return; + } + + var overlayPlaneMetadata = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('overlayPlaneModule', image.imageId); + + if (!overlayPlaneMetadata || !overlayPlaneMetadata.overlays || !overlayPlaneMetadata.overlays.length) { + return; + } + + var viewportPixelSpacing = { + column: viewport.displayedArea.columnPixelSpacing || 1, + row: viewport.displayedArea.rowPixelSpacing || 1 + }; + var imageWidth = Math.abs(viewport.displayedArea.brhc.x - viewport.displayedArea.tlhc.x) * viewportPixelSpacing.column; + var imageHeight = Math.abs(viewport.displayedArea.brhc.y - viewport.displayedArea.tlhc.y) * viewportPixelSpacing.row; + overlayPlaneMetadata.overlays.forEach(function (overlay) { + if (overlay.visible === false) { + return; + } + + var layerCanvas = document.createElement('canvas'); + layerCanvas.width = imageWidth; + layerCanvas.height = imageHeight; + var layerContext = layerCanvas.getContext('2d'); + layerContext.fillStyle = overlay.fillStyle || 'white'; + + if (overlay.type === 'R') { + layerContext.fillRect(0, 0, layerCanvas.width, layerCanvas.height); + layerContext.globalCompositeOperation = 'xor'; + } + + var i = 0; + + for (var y = 0; y < overlay.rows; y++) { + for (var x = 0; x < overlay.columns; x++) { + if (overlay.pixelData[i++] > 0) { + layerContext.fillRect(x, y, 1, 1); + } + } + } // Draw the overlay layer onto the canvas + + + canvasContext.drawImage(layerCanvas, 0, 0); + }); + } + }]); + + return OverlayTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/PanMultiTouchTool.js": +/*!************************************!*\ + !*** ./tools/PanMultiTouchTool.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return PanMultiTouchTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); + + + + + + + + +/** + * @public + * @class PanMultiTouchTool + * @memberof Tools + * + * @classdesc Tool for panning the image using multi-touch. + * @extends Tools.Base.BaseTool + */ + +var PanMultiTouchTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(PanMultiTouchTool, _BaseTool); + + function PanMultiTouchTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, PanMultiTouchTool); + + var defaultProps = { + name: 'PanMultiTouch', + supportedInteractionTypes: ['MultiTouch'], + configuration: { + touchPointers: 2 + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(PanMultiTouchTool).call(this, props, defaultProps)); // Touch + + _this.multiTouchDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(PanMultiTouchTool, [{ + key: "_dragCallback", + value: function _dragCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + viewport = eventData.viewport; + + if (eventData.numPointers === this.configuration.touchPointers) { + var translation = this._getTranslation(eventData); + + this._applyTranslation(viewport, translation); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.setViewport(element, viewport); + } + } + }, { + key: "_getTranslation", + value: function _getTranslation(eventData) { + var viewport = eventData.viewport, + image = eventData.image, + deltaPoints = eventData.deltaPoints; + var widthScale = viewport.scale; + var heightScale = viewport.scale; + + if (image.rowPixelSpacing < image.columnPixelSpacing) { + widthScale *= image.columnPixelSpacing / image.rowPixelSpacing; + } else if (image.columnPixelSpacing < image.rowPixelSpacing) { + heightScale *= image.rowPixelSpacing / image.columnPixelSpacing; + } + + return { + x: deltaPoints.page.x / widthScale, + y: deltaPoints.page.y / heightScale + }; + } + }, { + key: "_applyTranslation", + value: function _applyTranslation(viewport, translation) { + viewport.translation.x += translation.x; + viewport.translation.y += translation.y; + } + }]); + + return PanMultiTouchTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); + + + +/***/ }), + +/***/ "./tools/PanTool.js": +/*!**************************!*\ + !*** ./tools/PanTool.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return PanTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + +/** + * @public + * @class PanTool + * @memberof Tools + * + * @classdesc Tool for panning the image. + * @extends Tools.Base.BaseTool + */ + +var PanTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(PanTool, _BaseTool); + + function PanTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, PanTool); + + var defaultProps = { + name: 'Pan', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_8__["panCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(PanTool).call(this, props, defaultProps)); // Touch + + _this.touchDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // Mouse + + _this.mouseDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(PanTool, [{ + key: "_dragCallback", + value: function _dragCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + viewport = eventData.viewport; + + var translation = this._getTranslation(eventData); + + this._applyTranslation(viewport, translation); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.setViewport(element, viewport); + } + }, { + key: "_getTranslation", + value: function _getTranslation(eventData) { + var viewport = eventData.viewport, + image = eventData.image, + deltaPoints = eventData.deltaPoints; + var widthScale = viewport.scale; + var heightScale = viewport.scale; + + if (image.rowPixelSpacing < image.columnPixelSpacing) { + widthScale *= image.columnPixelSpacing / image.rowPixelSpacing; + } else if (image.columnPixelSpacing < image.rowPixelSpacing) { + heightScale *= image.rowPixelSpacing / image.columnPixelSpacing; + } + + return { + x: deltaPoints.page.x / widthScale, + y: deltaPoints.page.y / heightScale + }; + } + }, { + key: "_applyTranslation", + value: function _applyTranslation(viewport, translation) { + viewport.translation.x += translation.x; + viewport.translation.y += translation.y; + } + }]); + + return PanTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); + + + +/***/ }), + +/***/ "./tools/ReferenceLinesTool.js": +/*!*************************************!*\ + !*** ./tools/ReferenceLinesTool.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ReferenceLinesTool; }); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _referenceLines_renderActiveReferenceLine_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./referenceLines/renderActiveReferenceLine.js */ "./tools/referenceLines/renderActiveReferenceLine.js"); +/* harmony import */ var _util_wait_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../util/wait.js */ "./util/wait.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_12__["getLogger"])('tools:ReferenceLinesTool'); +/** + * When enabled, this tool will display references lines for each source + * enabledElement in the provided synchronizer. This tool can also be configured + * to use a custom renderer for alternative reference line rendering behavior + * + * TODO: Need to watch for configuration changes to update ToolState + * TODO: + * + * @export @public @class + * @name ReferenceLinesTool + * @classdesc Tool for displaying reference lines of other enabledElements + * @extends Tools.Base.BaseTool + */ + +var ReferenceLinesTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6___default()(ReferenceLinesTool, _BaseTool); + + function ReferenceLinesTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2___default()(this, ReferenceLinesTool); + + var defaultProps = { + name: 'ReferenceLines', + mixins: ['enabledOrDisabledBinaryTool'], + configuration: { + renderer: _referenceLines_renderActiveReferenceLine_js__WEBPACK_IMPORTED_MODULE_10__["default"] + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default()(ReferenceLinesTool).call(this, props, defaultProps)); + _this.renderer = null; + _this.synchronizationContext = null; + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3___default()(ReferenceLinesTool, [{ + key: "enabledCallback", + value: function () { + var _enabledCallback = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()( + /*#__PURE__*/ + _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee(element) { + var _ref, + synchronizationContext, + renderer, + enabledElement, + _args = arguments; + + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, synchronizationContext = _ref.synchronizationContext; + renderer = this.configuration.renderer; + _context.next = 4; + return Object(_util_wait_js__WEBPACK_IMPORTED_MODULE_11__["waitForEnabledElementImageToLoad"])(element); + + case 4: + enabledElement = _context.sent; + + if (!(!enabledElement || !renderer || !synchronizationContext)) { + _context.next = 8; + break; + } + + // TODO: Unable to add tool state, image never loaded. + // Should we `setToolDisabledForElement` here? + logger.warn("Unable to enable ".concat(this.name, ". Exiting enable callback. Tool will be enabled, but will not render.")); + return _context.abrupt("return"); + + case 8: + this.renderer = renderer; + this.synchronizationContext = synchronizationContext; + this.forceImageUpdate(element); + + case 11: + case "end": + return _context.stop(); + } + } + }, _callee, this); + })); + + function enabledCallback(_x) { + return _enabledCallback.apply(this, arguments); + } + + return enabledCallback; + }() + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "forceImageUpdate", + value: function forceImageUpdate(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.getEnabledElement(element); + + if (enabledElement.image) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(element); + } + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; // No renderer or synch context? Adios + + if (!this.renderer || !this.synchronizationContext) { + return; + } // Get the enabled elements associated with this synchronization context and draw them + + + var enabledElements = this.synchronizationContext.getSourceElements(); + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_9__["getNewContext"])(eventData.canvasContext.canvas); + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.setToPixelCoordinateSystem(eventData.enabledElement, context); + enabledElements.forEach(function (referenceEnabledElement) { + // Don't draw ourselves + if (referenceEnabledElement === evt.currentTarget) { + return; + } // Render it + + + _this2.renderer(context, eventData, evt.currentTarget, referenceEnabledElement); + }); + } + }]); + + return ReferenceLinesTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_8__["default"]); + + + +/***/ }), + +/***/ "./tools/RotateTool.js": +/*!*****************************!*\ + !*** ./tools/RotateTool.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return RotateTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_angleBetweenPoints_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/angleBetweenPoints.js */ "./util/angleBetweenPoints.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + +/** + * @public + * @class RotateTool + * @memberof Tools + * + * @classdesc Tool for rotating the image. + * @extends Tools.Base.BaseTool + */ + +var RotateTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(RotateTool, _BaseTool); + + function RotateTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, RotateTool); + + var defaultProps = { + name: 'Rotate', + strategies: { + default: defaultStrategy, + horizontal: horizontalStrategy, + vertical: verticalStrategy + }, + defaultStrategy: 'default', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_8__["rotateCursor"] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(RotateTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(RotateTool, [{ + key: "touchDragCallback", + value: function touchDragCallback(evt) { + this.dragCallback(evt); + } + }, { + key: "mouseDragCallback", + value: function mouseDragCallback(evt) { + this.dragCallback(evt); + } + }, { + key: "postMouseDownCallback", + value: function postMouseDownCallback(evt) { + this.initialRotation = evt.detail.viewport.rotation; + } + }, { + key: "dragCallback", + value: function dragCallback(evt) { + evt.detail.viewport.initialRotation = this.initialRotation; + this.applyActiveStrategy(evt); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(evt.detail.element, evt.detail.viewport); + } + }]); + + return RotateTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +function defaultStrategy(evt) { + var eventData = evt.detail; + var element = eventData.element, + viewport = eventData.viewport; + var initialRotation = viewport.initialRotation; // Calculate the center of the image + + var rect = element.getBoundingClientRect(element); + var width = element.clientWidth, + height = element.clientHeight; + var initialPoints = { + x: eventData.startPoints.client.x, + y: eventData.startPoints.client.y + }; + var scale = viewport.scale, + translation = viewport.translation; + var centerPoints = { + x: rect.left + width / 2 + translation.x * scale, + y: rect.top + height / 2 + translation.y * scale + }; + var currentPoints = { + x: eventData.currentPoints.client.x, + y: eventData.currentPoints.client.y + }; + var angleInfo = Object(_util_angleBetweenPoints_js__WEBPACK_IMPORTED_MODULE_7__["default"])(centerPoints, initialPoints, currentPoints); + + if (angleInfo.direction < 0) { + angleInfo.angle = -angleInfo.angle; + } + + viewport.rotation = initialRotation + angleInfo.angle; +} + +var horizontalStrategy = function horizontalStrategy(evt) { + var eventData = evt.detail; + var viewport = eventData.viewport, + deltaPoints = eventData.deltaPoints; + viewport.rotation += deltaPoints.page.x / viewport.scale; +}; + +var verticalStrategy = function verticalStrategy(evt) { + var eventData = evt.detail; + var viewport = eventData.viewport, + deltaPoints = eventData.deltaPoints; + viewport.rotation += deltaPoints.page.y / viewport.scale; +}; + +/***/ }), + +/***/ "./tools/RotateTouchTool.js": +/*!**********************************!*\ + !*** ./tools/RotateTouchTool.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return RotateTouchTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); + + + + + + + +/** + * @public + * @class RotateTouchTool + * @memberof Tools + * + * @classdesc Tool for rotating the image using touch. + * @extends Tools.Base.BaseTool + */ + +var RotateTouchTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(RotateTouchTool, _BaseTool); + + function RotateTouchTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, RotateTouchTool); + + var defaultProps = { + name: 'RotateTouch', + supportedInteractionTypes: ['TouchRotate'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(RotateTouchTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(RotateTouchTool, [{ + key: "touchRotateCallback", + value: function touchRotateCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + viewport = eventData.viewport, + rotation = eventData.rotation; + viewport.rotation += rotation; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(element, viewport); + } + }]); + + return RotateTouchTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/ScaleOverlayTool.js": +/*!***********************************!*\ + !*** ./tools/ScaleOverlayTool.js ***! + \***********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ScaleOverlayTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../util/logger.js */ "./util/logger.js"); + + + + + + + // Drawing + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_10__["getLogger"])('tools:ScaleOverlayTool'); +/** + * @public + * @class ScaleOverlayTool + * @memberof Tools + * + * @classdesc Tool for displaying a scale overlay on the image. + * @extends Tools.Base.BaseTool + */ + +var ScaleOverlayTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ScaleOverlayTool, _BaseTool); + + function ScaleOverlayTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ScaleOverlayTool); + + var defaultProps = { + name: 'ScaleOverlay', + configuration: { + minorTickLength: 12.5, + majorTickLength: 25 + }, + mixins: ['enabledOrDisabledBinaryTool'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ScaleOverlayTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ScaleOverlayTool, [{ + key: "enabledCallback", + value: function enabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + this.forceImageUpdate(element); + } + }, { + key: "forceImageUpdate", + value: function forceImageUpdate(element) { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getEnabledElement(element); + + if (enabledElement.image) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + } + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["getNewContext"])(eventData.canvasContext.canvas); + var image = eventData.image, + viewport = eventData.viewport, + element = eventData.element; + var rowPixelSpacing = image.rowPixelSpacing; + var colPixelSpacing = image.columnPixelSpacing; + var imagePlane = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('imagePlaneModule', image.imageId); + + if (imagePlane) { + rowPixelSpacing = imagePlane.rowPixelSpacing || imagePlane.rowImagePixelSpacing; + colPixelSpacing = imagePlane.columnPixelSpacing || imagePlane.colImagePixelSpacing; + } // Check whether pixel spacing is defined + + + if (!rowPixelSpacing || !colPixelSpacing) { + logger.warn("unable to define rowPixelSpacing or colPixelSpacing from data on ".concat(this.name, "'s renderToolData")); + return; + } + + var canvasSize = { + width: context.canvas.width, + height: context.canvas.height + }; // Distance between intervals is 10mm + + var verticalIntervalScale = 10.0 / rowPixelSpacing * viewport.scale; + var horizontalIntervalScale = 10.0 / colPixelSpacing * viewport.scale; // 0.1 and 0.05 gives margin to horizontal and vertical lines + + var hscaleBounds = computeScaleBounds(canvasSize, 0.25, 0.05); + var vscaleBounds = computeScaleBounds(canvasSize, 0.05, 0.15); + + if (!canvasSize.width || !canvasSize.height || !hscaleBounds || !vscaleBounds) { + return; + } + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getToolColor(); + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + var imageAttributes = Object.assign({}, { + hscaleBounds: hscaleBounds, + vscaleBounds: vscaleBounds, + verticalMinorTick: verticalIntervalScale, + horizontalMinorTick: horizontalIntervalScale, + verticalLine: { + start: { + x: vscaleBounds.bottomRight.x, + y: vscaleBounds.topLeft.y + }, + end: { + x: vscaleBounds.bottomRight.x, + y: vscaleBounds.bottomRight.y + } + }, + horizontalLine: { + start: { + x: hscaleBounds.topLeft.x, + y: hscaleBounds.bottomRight.y + }, + end: { + x: hscaleBounds.bottomRight.x, + y: hscaleBounds.bottomRight.y + } + }, + color: color, + lineWidth: lineWidth + }, this.configuration); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["setShadow"])(context, imageAttributes); // Draw vertical line + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLine"])(context, element, imageAttributes.verticalLine.start, imageAttributes.verticalLine.end, { + color: imageAttributes.color, + lineWidth: imageAttributes.lineWidth + }, 'canvas'); + drawVerticalScalebarIntervals(context, element, imageAttributes); // Draw horizontal line + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLine"])(context, element, imageAttributes.horizontalLine.start, imageAttributes.horizontalLine.end, { + color: imageAttributes.color, + lineWidth: imageAttributes.lineWidth + }, 'canvas'); + drawHorizontalScalebarIntervals(context, element, imageAttributes); + }); + } + }]); + + return ScaleOverlayTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * Computes the max bound for scales on the image + * @param {{width: number, height: number}} canvasSize + * @param {number} horizontalReduction + * @param {number} verticalReduction + * @returns {Object.} + */ + + + + +var computeScaleBounds = function computeScaleBounds(canvasSize, horizontalReduction, verticalReduction) { + var hReduction = horizontalReduction * Math.min(1000, canvasSize.width); + var vReduction = verticalReduction * Math.min(1000, canvasSize.height); + var canvasBounds = { + left: hReduction, + top: vReduction, + width: canvasSize.width - 2 * hReduction, + height: canvasSize.height - 2 * vReduction + }; + return { + topLeft: { + x: canvasBounds.left, + y: canvasBounds.top + }, + bottomRight: { + x: canvasBounds.left + canvasBounds.width, + y: canvasBounds.top + canvasBounds.height + } + }; +}; +/** + * @param {CanvasRenderingContext2D} context + * @param {HTMLElement} element + * @param {Object} imageAttributes + * @returns {void} + */ + + +var drawVerticalScalebarIntervals = function drawVerticalScalebarIntervals(context, element, imageAttributes) { + var i = 0; + + while (imageAttributes.verticalLine.start.y + i * imageAttributes.verticalMinorTick <= imageAttributes.vscaleBounds.bottomRight.y) { + var color = imageAttributes.color, + lineWidth = imageAttributes.lineWidth; + var startPoint = { + x: imageAttributes.verticalLine.start.x, + y: imageAttributes.verticalLine.start.y + i * imageAttributes.verticalMinorTick + }; + var endPoint = { + x: 0, + y: imageAttributes.verticalLine.start.y + i * imageAttributes.verticalMinorTick + }; + + if (i % 5 === 0) { + endPoint.x = imageAttributes.verticalLine.start.x - imageAttributes.majorTickLength; + } else { + endPoint.x = imageAttributes.verticalLine.start.x - imageAttributes.minorTickLength; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLine"])(context, element, startPoint, endPoint, { + color: color, + lineWidth: lineWidth + }, 'canvas'); + i++; + } +}; +/** + * @param {CanvasRenderingContext2D} context + * @param {HTMLElement} element + * @param {Object} imageAttributes + * @returns {void} + */ + + +var drawHorizontalScalebarIntervals = function drawHorizontalScalebarIntervals(context, element, imageAttributes) { + var i = 0; + + while (imageAttributes.horizontalLine.start.x + i * imageAttributes.horizontalMinorTick <= imageAttributes.hscaleBounds.bottomRight.x) { + var color = imageAttributes.color, + lineWidth = imageAttributes.lineWidth; + var startPoint = { + x: imageAttributes.horizontalLine.start.x + i * imageAttributes.horizontalMinorTick, + y: imageAttributes.horizontalLine.start.y + }; + var endPoint = { + x: imageAttributes.horizontalLine.start.x + i * imageAttributes.horizontalMinorTick, + y: 0 + }; + + if (i % 5 === 0) { + endPoint.y = imageAttributes.horizontalLine.start.y - imageAttributes.majorTickLength; + } else { + endPoint.y = imageAttributes.horizontalLine.start.y - imageAttributes.minorTickLength; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_7__["drawLine"])(context, element, startPoint, endPoint, { + color: color, + lineWidth: lineWidth + }, 'canvas'); + i++; + } +}; + +/***/ }), + +/***/ "./tools/StackScrollMouseWheelTool.js": +/*!********************************************!*\ + !*** ./tools/StackScrollMouseWheelTool.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return StackScrollMouseWheelTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_scroll_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../util/scroll.js */ "./util/scroll.js"); + + + + + + + +/** + * @public + * @class StackScrollMouseWheelTool + * @memberof Tools + * + * @classdesc Tool for scrolling through a series using the mouse wheel. + * @extends Tools.Base.BaseTool + */ + +var StackScrollMouseWheelTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(StackScrollMouseWheelTool, _BaseTool); + + function StackScrollMouseWheelTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, StackScrollMouseWheelTool); + + var defaultProps = { + name: 'StackScrollMouseWheel', + supportedInteractionTypes: ['MouseWheel'], + configuration: { + loop: false, + allowSkipping: true, + invert: false + } + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(StackScrollMouseWheelTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(StackScrollMouseWheelTool, [{ + key: "mouseWheelCallback", + value: function mouseWheelCallback(evt) { + var _evt$detail = evt.detail, + images = _evt$detail.direction, + element = _evt$detail.element; + var _this$configuration = this.configuration, + loop = _this$configuration.loop, + allowSkipping = _this$configuration.allowSkipping, + invert = _this$configuration.invert; + var direction = invert ? -images : images; + Object(_util_scroll_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element, direction, loop, allowSkipping); + } + }]); + + return StackScrollMouseWheelTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_5__["default"]); + + + +/***/ }), + +/***/ "./tools/StackScrollMultiTouchTool.js": +/*!********************************************!*\ + !*** ./tools/StackScrollMultiTouchTool.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return StackScrollMultiTouchTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_scroll_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/scroll.js */ "./util/scroll.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _toolOptions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../toolOptions.js */ "./toolOptions.js"); + + + + + + + + + + +/** + * @public + * @class StackScrollMultiTouchTool + * @memberof Tools + * + * @classdesc Tool for scrolling through a series using multi-touch. + * @extends Tools.Base.BaseTool + */ + +var StackScrollMultiTouchTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(StackScrollMultiTouchTool, _BaseTool); + + function StackScrollMultiTouchTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, StackScrollMultiTouchTool); + + var defaultProps = { + name: 'StackScrollMultiTouch', + supportedInteractionTypes: ['MultiTouch'], + configuration: { + loop: false, + allowSkipping: true, + touchPointers: 3 + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(StackScrollMultiTouchTool).call(this, props, defaultProps)); + _this.multiTouchDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(StackScrollMultiTouchTool, [{ + key: "_dragCallback", + value: function _dragCallback(evt) { + var eventData = evt.detail; + + if (eventData.numPointers === this.configuration.touchPointers) { + var element = eventData.element, + deltaPoints = eventData.deltaPoints; + var _this$configuration = this.configuration, + loop = _this$configuration.loop, + allowSkipping = _this$configuration.allowSkipping; + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["getToolOptions"])(this.name, element); + + var pixelsPerImage = this._getPixelPerImage(element); + + var deltaY = this._getDeltaY(element, deltaPoints.page.y); + + if (!pixelsPerImage) { + return; + } + + if (Math.abs(deltaY) >= pixelsPerImage) { + var imageIdIndexOffset = Math.round(deltaY / pixelsPerImage); + Object(_util_scroll_js__WEBPACK_IMPORTED_MODULE_7__["default"])(element, imageIdIndexOffset, loop, allowSkipping); + options.deltaY = deltaY % pixelsPerImage; + } else { + options.deltaY = deltaY; + } + + Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["setToolOptions"])(this.name, element, options); + } + } + }, { + key: "_getDeltaY", + value: function _getDeltaY(element, deltaPointsY) { + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["getToolOptions"])(this.name, element); + var deltaY = options.deltaY || 0; + return deltaY + deltaPointsY; + } + }, { + key: "_getPixelPerImage", + value: function _getPixelPerImage(element) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["getToolState"])(element, 'stack'); + + if (!toolData || !toolData.data || !toolData.data.length) { + return; + } + + var stackData = toolData.data[0]; + var stackScrollSpeed = this.configuration.stackScrollSpeed; // The Math.max here makes it easier to mouseDrag-scroll small or really large image stacks + + return stackScrollSpeed || Math.max(2, element.offsetHeight / Math.max(stackData.imageIds.length, 8)); + } + }]); + + return StackScrollMultiTouchTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/StackScrollTool.js": +/*!**********************************!*\ + !*** ./tools/StackScrollTool.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return StackScrollTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_scroll_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/scroll.js */ "./util/scroll.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _toolOptions_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../toolOptions.js */ "./toolOptions.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + +/** + * @public + * @class StackScrollTool + * @memberof Tools + * + * @classdesc Tool for scrolling through a series. + * @extends Tools.Base.BaseTool + */ + +var StackScrollTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(StackScrollTool, _BaseTool); + + function StackScrollTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, StackScrollTool); + + var defaultProps = { + name: 'StackScroll', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + loop: false, + allowSkipping: true + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_10__["stackScrollCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(StackScrollTool).call(this, props, defaultProps)); + _this.mouseDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.touchDragCallback = _this._dragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(StackScrollTool, [{ + key: "_dragCallback", + value: function _dragCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + deltaPoints = eventData.deltaPoints; + var _this$configuration = this.configuration, + loop = _this$configuration.loop, + allowSkipping = _this$configuration.allowSkipping; + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["getToolOptions"])(this.name, element); + + var pixelsPerImage = this._getPixelPerImage(element); + + var deltaY = this._getDeltaY(element, deltaPoints.page.y); + + if (!pixelsPerImage) { + return; + } + + if (Math.abs(deltaY) >= pixelsPerImage) { + var imageIdIndexOffset = Math.round(deltaY / pixelsPerImage); + Object(_util_scroll_js__WEBPACK_IMPORTED_MODULE_7__["default"])(element, imageIdIndexOffset, loop, allowSkipping); + options.deltaY = deltaY % pixelsPerImage; + } else { + options.deltaY = deltaY; + } + + Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["setToolOptions"])(this.name, element, options); + } + }, { + key: "_getDeltaY", + value: function _getDeltaY(element, deltaPointsY) { + var options = Object(_toolOptions_js__WEBPACK_IMPORTED_MODULE_9__["getToolOptions"])(this.name, element); + var deltaY = options.deltaY || 0; + return deltaY + deltaPointsY; + } + }, { + key: "_getPixelPerImage", + value: function _getPixelPerImage(element) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["getToolState"])(element, 'stack'); + + if (!toolData || !toolData.data || !toolData.data.length) { + return; + } + + var stackData = toolData.data[0]; + var stackScrollSpeed = this.configuration.stackScrollSpeed; // The Math.max here makes it easier to mouseDrag-scroll small or really large image stacks + + return stackScrollSpeed || Math.max(2, element.offsetHeight / Math.max(stackData.imageIds.length, 8)); + } + }]); + + return StackScrollTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/WwwcRegionTool.js": +/*!*********************************!*\ + !*** ./tools/WwwcRegionTool.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return WwwcRegionTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _util_getLuminance_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../util/getLuminance.js */ "./util/getLuminance.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + // Drawing + + + + + + +/** + * @public + * @class WwwcRegionTool + * @memberof Tools + * + * @classdesc Tool for setting wwwc based on a rectangular region. + * @extends Tools.Base.BaseTool + */ + +var WwwcRegionTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(WwwcRegionTool, _BaseTool); + + /** @inheritdoc */ + function WwwcRegionTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, WwwcRegionTool); + + var defaultProps = { + name: 'WwwcRegion', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + minWindowWidth: 10 + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_12__["wwwcRegionCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(WwwcRegionTool).call(this, props, defaultProps)); + + _this._resetHandles(); // + // Touch + // + + /** @inheritdoc */ + + + _this.postTouchStartCallback = _this._startOutliningRegion.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.touchDragCallback = _this._setHandlesAndUpdate.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.touchEndCallback = _this._applyStrategy.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); // + // MOUSE + // + + /** @inheritdoc */ + + _this.postMouseDownCallback = _this._startOutliningRegion.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.mouseClickCallback = _this._startOutliningRegion.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.mouseDragCallback = _this._setHandlesAndUpdate.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.mouseMoveCallback = _this._setHandlesAndUpdate.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + /** @inheritdoc */ + + _this.mouseUpCallback = _this._applyStrategy.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + /** + * Render hook: draws the WWWCRegion's "box" when selecting + * + * @param {Cornerstone.event#cornerstoneimagerendered} evt cornerstoneimagerendered event + * @memberof Tools.WwwcRegionTool + * @returns {void} + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(WwwcRegionTool, [{ + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; + var element = eventData.element; + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_11__["default"].getColorIfActive({ + active: true + }); + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_8__["getNewContext"])(eventData.canvasContext.canvas); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_8__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_8__["drawRect"])(context, element, _this2.handles.start, _this2.handles.end, { + color: color + }); + }); + } + /** + * Sets the start handle point and claims the eventDispatcher event + * + * @private + * @param {*} evt // mousedown, touchstart, click + * @returns {Boolean} True + */ + + }, { + key: "_startOutliningRegion", + value: function _startOutliningRegion(evt) { + var consumeEvent = true; + var element = evt.detail.element; + var image = evt.detail.currentPoints.image; + + if (_isEmptyObject(this.handles.start)) { + this.handles.start = image; + } else { + this.handles.end = image; + + this._applyStrategy(evt); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); + return consumeEvent; + } + /** + * This function will update the handles and updateImage to force re-draw + * + * @private + * @method _setHandlesAndUpdate + * @param {(CornerstoneTools.event#TOUCH_DRAG|CornerstoneTools.event#MOUSE_DRAG|CornerstoneTools.event#MOUSE_MOVE)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + }, { + key: "_setHandlesAndUpdate", + value: function _setHandlesAndUpdate(evt) { + var element = evt.detail.element; + var image = evt.detail.currentPoints.image; + this.handles.end = image; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); + } + /** + * Event handler for MOUSE_UP/TOUCH_END during handle drag event loop. + * + * @private + * @method _applyStrategy + * @param {(CornerstoneTools.event#MOUSE_UP|CornerstoneTools.event#TOUCH_END)} evt Interaction event emitted by an enabledElement + * @returns {void} + */ + + }, { + key: "_applyStrategy", + value: function _applyStrategy(evt) { + if (_isEmptyObject(this.handles.start) || _isEmptyObject(this.handles.end)) { + return; + } + + evt.detail.handles = this.handles; + + _applyWWWCRegion(evt, this.configuration); + + this._resetHandles(); + } + /** + * Sets the start and end handle points to empty objects + * + * @private + * @method _resetHandles + * @returns {undefined} + */ + + }, { + key: "_resetHandles", + value: function _resetHandles() { + this.handles = { + start: {}, + end: {} + }; + } + }]); + + return WwwcRegionTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); +/** + * Helper to determine if an object has no keys and is the correct type (is empty) + * + * @private + * @function _isEmptyObject + * @param {Object} obj The object to check + * @returns {Boolean} true if the object is empty + */ + + + + +var _isEmptyObject = function _isEmptyObject(obj) { + return Object.keys(obj).length === 0 && obj.constructor === Object; +}; +/** + * Calculates the minimum and maximum value in the given pixel array + * and updates the viewport of the element in the event. + * + * @private + * @method _applyWWWCRegion + * @param {(CornerstoneTools.event#MOUSE_UP|CornerstoneTools.event#TOUCH_END)} evt Interaction event emitted by an enabledElement + * @param {Object} config The tool's configuration object + * @returns {void} + */ + + +var _applyWWWCRegion = function _applyWWWCRegion(evt, config) { + var eventData = evt.detail; + var image = eventData.image, + element = eventData.element; + var _evt$detail$handles = evt.detail.handles, + startPoint = _evt$detail$handles.start, + endPoint = _evt$detail$handles.end; // Get the rectangular region defined by the handles + + var left = Math.min(startPoint.x, endPoint.x); + var top = Math.min(startPoint.y, endPoint.y); + var width = Math.abs(startPoint.x - endPoint.x); + var height = Math.abs(startPoint.y - endPoint.y); // Bound the rectangle so we don't get undefined pixels + + left = Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_9__["default"])(left, 0, image.width); + top = Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_9__["default"])(top, 0, image.height); + width = Math.floor(Math.min(width, Math.abs(image.width - left))); + height = Math.floor(Math.min(height, Math.abs(image.height - top))); // Get the pixel data in the rectangular region + + var pixelLuminanceData = Object(_util_getLuminance_js__WEBPACK_IMPORTED_MODULE_10__["default"])(element, left, top, width, height); // Calculate the minimum and maximum pixel values + + var minMaxMean = _calculateMinMaxMean(pixelLuminanceData, image.minPixelValue, image.maxPixelValue); // Adjust the viewport window width and center based on the calculated values + + + var viewport = eventData.viewport; + + if (config.minWindowWidth === undefined) { + config.minWindowWidth = 10; + } + + viewport.voi.windowWidth = Math.max(Math.abs(minMaxMean.max - minMaxMean.min), config.minWindowWidth); + viewport.voi.windowCenter = minMaxMean.mean; + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.setViewport(element, viewport); + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(element); +}; +/** + * Calculates the minimum, maximum, and mean value in the given pixel array + * + * @private + * @method _calculateMinMaxMean + * @param {number[]} pixelLuminance array of pixel luminance values + * @param {number} globalMin starting "min" valie + * @param {bumber} globalMax starting "max" value + * @returns {Object} {min: number, max: number, mean: number } + */ + + +var _calculateMinMaxMean = function _calculateMinMaxMean(pixelLuminance, globalMin, globalMax) { + var numPixels = pixelLuminance.length; + var min = globalMax; + var max = globalMin; + var sum = 0; + + if (numPixels < 2) { + return { + min: min, + max: max, + mean: (globalMin + globalMax) / 2 + }; + } + + for (var index = 0; index < numPixels; index++) { + var spv = pixelLuminance[index]; + min = Math.min(min, spv); + max = Math.max(max, spv); + sum += spv; + } + + return { + min: min, + max: max, + mean: sum / numPixels + }; +}; + +/***/ }), + +/***/ "./tools/WwwcTool.js": +/*!***************************!*\ + !*** ./tools/WwwcTool.js ***! + \***************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return WwwcTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + +/** + * @public + * @class WwwcTool + * @memberof Tools + * + * @classdesc Tool for setting wwwc by dragging with mouse/touch. + * @extends Tools.Base.BaseTool + */ + +var WwwcTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(WwwcTool, _BaseTool); + + function WwwcTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, WwwcTool); + + var defaultProps = { + name: 'Wwwc', + strategies: { + basicLevelingStrategy: basicLevelingStrategy + }, + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + orientation: 0 + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_7__["wwwcCursor"] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(WwwcTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(WwwcTool, [{ + key: "mouseDragCallback", + value: function mouseDragCallback(evt) { + this.applyActiveStrategy(evt); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(evt.detail.element, evt.detail.viewport); + } + }, { + key: "touchDragCallback", + value: function touchDragCallback(evt) { + // Prevent CornerstoneToolsTouchStartActive from killing any press events + evt.stopImmediatePropagation(); + this.applyActiveStrategy(evt); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(evt.detail.element, evt.detail.viewport); + } + }]); + + return WwwcTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * Here we normalize the ww/wc adjustments so the same number of on screen pixels + * adjusts the same percentage of the dynamic range of the image. This is needed to + * provide consistency for the ww/wc tool regardless of the dynamic range (e.g. an 8 bit + * image will feel the same as a 16 bit image would) + * + * @param {Object} evt + * @param {Object} { orienttion } + * @returns {void} + */ + + + + +function basicLevelingStrategy(evt) { + var orientation = this.configuration.orientation; + var eventData = evt.detail; + var maxVOI = eventData.image.maxPixelValue * eventData.image.slope + eventData.image.intercept; + var minVOI = eventData.image.minPixelValue * eventData.image.slope + eventData.image.intercept; + var imageDynamicRange = maxVOI - minVOI; + var multiplier = imageDynamicRange / 1024; + var deltaX = eventData.deltaPoints.page.x * multiplier; + var deltaY = eventData.deltaPoints.page.y * multiplier; + + if (orientation === 0) { + eventData.viewport.voi.windowWidth += deltaX; + eventData.viewport.voi.windowCenter += deltaY; + } else { + eventData.viewport.voi.windowWidth += deltaY; + eventData.viewport.voi.windowCenter += deltaX; + } +} + +/***/ }), + +/***/ "./tools/ZoomMouseWheelTool.js": +/*!*************************************!*\ + !*** ./tools/ZoomMouseWheelTool.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ZoomMouseWheelTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/zoom/index.js */ "./util/zoom/index.js"); + + + + + + + + +/** + * @public + * @class ZoomMouseWheelTool + * @memberof Tools + * + * @classdesc Tool for changing magnification with the mouse wheel. + * @extends Tools.Base.BaseTool + */ + +var ZoomMouseWheelTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ZoomMouseWheelTool, _BaseTool); + + function ZoomMouseWheelTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ZoomMouseWheelTool); + + var defaultProps = { + name: 'ZoomMouseWheel', + supportedInteractionTypes: ['MouseWheel'], + configuration: { + minScale: 0.25, + maxScale: 20.0, + invert: false + } + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ZoomMouseWheelTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ZoomMouseWheelTool, [{ + key: "mouseWheelCallback", + value: function mouseWheelCallback(evt) { + var _evt$detail = evt.detail, + element = _evt$detail.element, + viewport = _evt$detail.viewport, + spinY = _evt$detail.spinY; + var _this$configuration = this.configuration, + invert = _this$configuration.invert, + maxScale = _this$configuration.maxScale, + minScale = _this$configuration.minScale; + var ticks = invert ? spinY / 4 : -spinY / 4; + var updatedViewport = Object(_util_zoom_index_js__WEBPACK_IMPORTED_MODULE_7__["changeViewportScale"])(viewport, ticks, { + maxScale: maxScale, + minScale: minScale + }); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(element, updatedViewport); + } + }]); + + return ZoomMouseWheelTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/ZoomTool.js": +/*!***************************!*\ + !*** ./tools/ZoomTool.js ***! + \***************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ZoomTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../util/zoom/index.js */ "./util/zoom/index.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + +var correctShift = _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_8__["default"].correctShift, + changeViewportScale = _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_8__["default"].changeViewportScale; +/** + * @public + * @class ZoomTool + * @memberof Tools + * + * @classdesc Tool for changing magnification. + * @extends Tools.Base.BaseTool + */ + +var ZoomTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ZoomTool, _BaseTool); + + function ZoomTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ZoomTool); + + var defaultProps = { + name: 'Zoom', + strategies: { + default: defaultStrategy, + translate: translateStrategy, + zoomToCenter: zoomToCenterStrategy + }, + defaultStrategy: 'default', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + invert: false, + preventZoomOutsideImage: false, + minScale: 0.25, + maxScale: 20.0 + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_9__["zoomCursor"] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ZoomTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ZoomTool, [{ + key: "touchDragCallback", + value: function touchDragCallback(evt) { + dragCallback.call(this, evt); + } + }, { + key: "mouseDragCallback", + value: function mouseDragCallback(evt) { + dragCallback.call(this, evt); + } + }]); + + return ZoomTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +var dragCallback = function dragCallback(evt) { + var deltaY = evt.detail.deltaPoints.page.y; + + if (!deltaY) { + return false; + } + + this.applyActiveStrategy(evt, this.configuration); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(evt.detail.element, evt.detail.viewport); +}; +/** + * The default strategy keeps the target location fixed on the page + * as we zoom in/out. + * + * @param {*} evt + * @param {*} { invert, maxScale, minScale } + * @returns {void} + */ + + +function defaultStrategy(evt) { + var _this$configuration = this.configuration, + invert = _this$configuration.invert, + maxScale = _this$configuration.maxScale, + minScale = _this$configuration.minScale; + var deltaY = evt.detail.deltaPoints.page.y; + var ticks = invert ? -deltaY / 100 : deltaY / 100; + var _evt$detail = evt.detail, + element = _evt$detail.element, + viewport = _evt$detail.viewport; + var _ref = [evt.detail.startPoints.page.x, evt.detail.startPoints.page.y, evt.detail.startPoints.image.x, evt.detail.startPoints.image.y], + startX = _ref[0], + startY = _ref[1], + imageX = _ref[2], + imageY = _ref[3]; // Calculate the new scale factor based on how far the mouse has changed + + var updatedViewport = changeViewportScale(viewport, ticks, { + maxScale: maxScale, + minScale: minScale + }); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(element, updatedViewport); // Now that the scale has been updated, determine the offset we need to apply to the center so we can + // Keep the original start location in the same position + + var newCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pageToPixel(element, startX, startY); // The shift we will use is the difference between the original image coordinates of the point we've selected + // And the image coordinates of the same point on the page after the viewport scaling above has been performed + // This shift is in image coordinates, and is designed to keep the target location fixed on the page. + + var shift = { + x: imageX - newCoords.x, + y: imageY - newCoords.y + }; // Correct the required shift using the viewport rotation and flip parameters + + shift = correctShift(shift, updatedViewport); // Apply the shift to the Viewport's translation setting + + viewport.translation.x -= shift.x; + viewport.translation.y -= shift.y; +} + +function translateStrategy(evt) { + var _this$configuration2 = this.configuration, + invert = _this$configuration2.invert, + preventZoomOutsideImage = _this$configuration2.preventZoomOutsideImage, + maxScale = _this$configuration2.maxScale, + minScale = _this$configuration2.minScale; + var deltaY = evt.detail.deltaPoints.page.y; + var ticks = invert ? -deltaY / 100 : deltaY / 100; + var image = evt.detail.image; + var viewport = evt.detail.viewport; + var _ref2 = [evt.detail.startPoints.image.x, evt.detail.startPoints.image.y], + startX = _ref2[0], + startY = _ref2[1]; // Calculate the new scale factor based on how far the mouse has changed + // Note that in this case we don't need to update the viewport after the initial + // Zoom step since we aren't don't intend to keep the target position static on + // The page + + var updatedViewport = changeViewportScale(viewport, ticks, { + maxScale: maxScale, + minScale: minScale + }); // Define the default shift to take place during this zoom step + + var shift = { + x: 0, + y: 0 + }; // Define the parameters for the translate strategy + + var translateSpeed = 8; + var outwardsMinScaleToTranslate = 3; + var minTranslation = 0.01; + + if (ticks < 0) { + // Zoom outwards from the image center + if (updatedViewport.scale < outwardsMinScaleToTranslate) { + // If the current translation is smaller than the minimum desired translation, + // Set the translation to zero + if (Math.abs(updatedViewport.translation.x) < minTranslation) { + updatedViewport.translation.x = 0; + } else { + shift.x = updatedViewport.translation.x / translateSpeed; + } // If the current translation is smaller than the minimum desired translation, + // Set the translation to zero + + + if (Math.abs(updatedViewport.translation.y) < minTranslation) { + updatedViewport.translation.y = 0; + } else { + shift.y = updatedViewport.translation.y / translateSpeed; + } + } + } else { + // Zoom inwards to the current image point + // Identify the coordinates of the point the user is trying to zoom into + // If we are not allowed to zoom outside the image, bound the user-selected position to + // A point inside the image + if (preventZoomOutsideImage) { + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_7__["clipToBox"])(evt.detail.startPoints.image, image); + } // Calculate the translation value that would place the desired image point in the center + // Of the viewport + + + var desiredTranslation = { + x: image.width / 2 - startX, + y: image.height / 2 - startY + }; // Correct the target location using the viewport rotation and flip parameters + + desiredTranslation = correctShift(desiredTranslation, updatedViewport); // Calculate the difference between the current viewport translation value and the + // Final desired translation values + + var distanceToDesired = { + x: updatedViewport.translation.x - desiredTranslation.x, + y: updatedViewport.translation.y - desiredTranslation.y + }; // If the current translation is smaller than the minimum desired translation, + // Stop translating in the x-direction + + if (Math.abs(distanceToDesired.x) < minTranslation) { + updatedViewport.translation.x = desiredTranslation.x; + } else { + // Otherwise, shift the viewport by one step + shift.x = distanceToDesired.x / translateSpeed; + } // If the current translation is smaller than the minimum desired translation, + // Stop translating in the y-direction + + + if (Math.abs(distanceToDesired.y) < minTranslation) { + updatedViewport.translation.y = desiredTranslation.y; + } else { + // Otherwise, shift the viewport by one step + shift.y = distanceToDesired.y / translateSpeed; + } + } // Apply the shift to the Viewport's translation setting + + + updatedViewport.translation.x -= shift.x; + updatedViewport.translation.y -= shift.y; +} + +function zoomToCenterStrategy(evt) { + var _this$configuration3 = this.configuration, + invert = _this$configuration3.invert, + maxScale = _this$configuration3.maxScale, + minScale = _this$configuration3.minScale; + var deltaY = evt.detail.deltaPoints.page.y; + var ticks = invert ? -deltaY / 100 : deltaY / 100; + var viewport = evt.detail.viewport; // Calculate the new scale factor based on how far the mouse has changed + + changeViewportScale(viewport, ticks, { + maxScale: maxScale, + minScale: minScale + }); +} + +/***/ }), + +/***/ "./tools/ZoomTouchPinchTool.js": +/*!*************************************!*\ + !*** ./tools/ZoomTouchPinchTool.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ZoomTouchPinchTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./base/BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../util/zoom/index.js */ "./util/zoom/index.js"); + + + + + + + + +var correctShift = _util_zoom_index_js__WEBPACK_IMPORTED_MODULE_7__["default"].correctShift; +/** + * + * + * @public + * @class ZoomTouchPinchTool + * @memberof Tools + * + * @extends {BaseTool} + */ + +var ZoomTouchPinchTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ZoomTouchPinchTool, _BaseTool); + + function ZoomTouchPinchTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ZoomTouchPinchTool); + + var defaultProps = { + name: 'ZoomTouchPinch', + // TODO: Do we need a better way to specify touchPinch? + supportedInteractionTypes: ['TouchPinch'], + configuration: { + minScale: 0.25, + maxScale: 20.0 + } + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ZoomTouchPinchTool).call(this, props, defaultProps)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ZoomTouchPinchTool, [{ + key: "touchPinchCallback", + value: function touchPinchCallback(evt) { + var _evt$detail = evt.detail, + element = _evt$detail.element, + viewport = _evt$detail.viewport, + scaleChange = _evt$detail.scaleChange; + var _ref = [evt.detail.startPoints.page.x, evt.detail.startPoints.page.y, evt.detail.startPoints.image.x, evt.detail.startPoints.image.y], + pageStartX = _ref[0], + pageStartY = _ref[1], + imageStartX = _ref[2], + imageStartY = _ref[3]; + var _this$configuration = this.configuration, + maxScale = _this$configuration.maxScale, + minScale = _this$configuration.minScale; // Change the scale based on the pinch gesture's scale change + + viewport.scale += scaleChange * viewport.scale; + + if (maxScale && viewport.scale > maxScale) { + viewport.scale = maxScale; + } else if (minScale && viewport.scale < minScale) { + viewport.scale = minScale; + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(element, viewport); // Now that the scale has been updated, determine the offset we need to apply to the center so we can + // Keep the original start location in the same position + + var newCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pageToPixel(element, pageStartX, pageStartY); + var shift = { + x: imageStartX - newCoords.x, + y: imageStartY - newCoords.y + }; + shift = correctShift(shift, viewport); + viewport.translation.x -= shift.x; + viewport.translation.y -= shift.y; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.setViewport(element, viewport); + } + }]); + + return ZoomTouchPinchTool; +}(_base_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/annotation/AngleTool.js": +/*!***************************************!*\ + !*** ./tools/annotation/AngleTool.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return AngleTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./../../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../../util/lineSegDistance.js */ "./util/lineSegDistance.js"); +/* harmony import */ var _util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./../../util/roundToDecimal.js */ "./util/roundToDecimal.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../events.js */ "./events.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); + + + + + + + // State + + + + // Manipulators + + // Drawing + + + + + + + + + + + + +/** + * @public + * @class AngleTool + * @memberof Tools.Annotation + * @classdesc Create and position an angle by placing three consecutive points. + * @extends Tools.Base.BaseAnnotationTool + * @hideconstructor + * + * @param {ToolConfiguration} [props={}] + */ + +var AngleTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(AngleTool, _BaseAnnotationTool); + + function AngleTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, AngleTool); + + var defaultProps = { + name: 'Angle', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_17__["angleCursor"], + configuration: { + drawHandles: true + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(AngleTool).call(this, props, defaultProps)); + _this.preventNewMeasurement = false; + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_21__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(AngleTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + // Create the measurement data for this tool with the end handle activated + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + start: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + middle: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + }, + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + if (data.visible === false) { + return false; + } + + return Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__["default"])(element, data.handles.start, data.handles.middle, coords) < 25 || Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__["default"])(element, data.handles.middle, data.handles.end, coords) < 25; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_20__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; + + var sideA = { + x: (data.handles.middle.x - data.handles.start.x) * colPixelSpacing, + y: (data.handles.middle.y - data.handles.start.y) * rowPixelSpacing + }; + var sideB = { + x: (data.handles.end.x - data.handles.middle.x) * colPixelSpacing, + y: (data.handles.end.y - data.handles.middle.y) * rowPixelSpacing + }; + var sideC = { + x: (data.handles.end.x - data.handles.start.x) * colPixelSpacing, + y: (data.handles.end.y - data.handles.start.y) * rowPixelSpacing + }; + var sideALength = length(sideA); + var sideBLength = length(sideB); + var sideCLength = length(sideC); // Cosine law + + var angle = Math.acos((Math.pow(sideALength, 2) + Math.pow(sideBLength, 2) - Math.pow(sideCLength, 2)) / (2 * sideALength * sideBLength)); + angle *= 180 / Math.PI; + data.rAngle = Object(_util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_16__["default"])(angle, 2); + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; + var enabledElement = eventData.enabledElement; + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_11__["getNewContext"])(eventData.canvasContext.canvas); + var image = eventData.image, + element = eventData.element; + + var _getPixelSpacing2 = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_20__["default"])(image), + rowPixelSpacing = _getPixelSpacing2.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing2.colPixelSpacing; + + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_11__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_11__["setShadow"])(context, _this2.configuration); // Differentiate the color of activation tool + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + var handleStartCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(eventData.element, data.handles.start); + var handleMiddleCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(eventData.element, data.handles.middle); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_11__["drawJoinedLines"])(context, eventData.element, data.handles.start, [data.handles.middle, data.handles.end], { + color: color + }); // Draw the handles + + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_14__["default"])(context, eventData, data.handles, handleOptions); + } // Update textbox stats + + + if (data.invalidated === true) { + if (data.rAngle) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } + + if (data.rAngle) { + var text = textBoxText(data, rowPixelSpacing, colPixelSpacing); + var distance = 15; + var textCoords; + + if (!data.handles.textBox.hasMoved) { + textCoords = { + x: handleMiddleCanvas.x, + y: handleMiddleCanvas.y + }; + var padding = 5; + var textWidth = Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_13__["textBoxWidth"])(context, text, padding); + + if (handleMiddleCanvas.x < handleStartCanvas.x) { + textCoords.x -= distance + textWidth + 10; + } else { + textCoords.x += distance; + } + + var transform = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.internal.getTransform(enabledElement); + transform.invert(); + var coords = transform.transformPoint(textCoords.x, textCoords.y); + data.handles.textBox.x = coords.x; + data.handles.textBox.y = coords.y; + } + + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_12__["default"])(context, eventData.element, data.handles.textBox, text, data.handles, textBoxAnchorPoints, color, lineWidth, 0, true); + } + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + function textBoxText(data, rowPixelSpacing, colPixelSpacing) { + var suffix = !rowPixelSpacing || !colPixelSpacing ? ' (isotropic)' : ''; + var str = '00B0'; // Degrees symbol + + return data.rAngle.toString() + String.fromCharCode(parseInt(str, 16)) + suffix; + } + + function textBoxAnchorPoints(handles) { + return [handles.start, handles.middle, handles.end]; + } + } + }, { + key: "addNewMeasurement", + value: function addNewMeasurement(evt, interactionType) { + var _this3 = this; + + if (this.preventNewMeasurement) { + return; + } + + this.preventNewMeasurement = true; + evt.preventDefault(); + evt.stopPropagation(); + var eventData = evt.detail; + var measurementData = this.createNewMeasurement(eventData); + var element = evt.detail.element; // Associate this data with this imageId so we can render it and manipulate it + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["addToolState"])(element, this.name, measurementData); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); // Step 1, create start and second middle. + + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_10__["moveNewHandle"])(eventData, this.name, measurementData, measurementData.handles.middle, this.options, interactionType, function () { + measurementData.active = false; + measurementData.handles.end.active = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); // Step 2, create end. + + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_10__["moveNewHandle"])(eventData, _this3.name, measurementData, measurementData.handles.end, _this3.options, interactionType, function () { + measurementData.active = false; + _this3.preventNewMeasurement = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + }); + }); + } + }]); + + return AngleTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +function length(vector) { + return Math.sqrt(Math.pow(vector.x, 2) + Math.pow(vector.y, 2)); +} + +/***/ }), + +/***/ "./tools/annotation/ArrowAnnotateTool.js": +/*!***********************************************!*\ + !*** ./tools/annotation/ArrowAnnotateTool.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ArrowAnnotateTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../events.js */ "./events.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); +/* harmony import */ var _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./../../util/lineSegDistance.js */ "./util/lineSegDistance.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawArrow_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./../../drawing/drawArrow.js */ "./drawing/drawArrow.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./../../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); + + + + + + +/* eslint no-alert: 0 */ + + + + + + + + + + + + + + + + + +/** + * @public + * @class ArrowAnnotateTool + * @memberof Tools.Annotation + * @classdesc Create and position an arrow and label + * @extends Tools.Base.BaseAnnotationTool + */ + +var ArrowAnnotateTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ArrowAnnotateTool, _BaseAnnotationTool); + + function ArrowAnnotateTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ArrowAnnotateTool); + + var defaultProps = { + name: 'ArrowAnnotate', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + getTextCallback: getTextCallback, + changeTextCallback: changeTextCallback, + drawHandles: false, + drawHandlesOnHover: true, + arrowFirst: true + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_21__["arrowAnnotateCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ArrowAnnotateTool).call(this, props, defaultProps)); + _this.preventNewMeasurement = false; + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ArrowAnnotateTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(evt) { + // Create the measurement data for this tool with the end handle activated + return { + visible: true, + active: true, + color: undefined, + handles: { + start: { + x: evt.detail.currentPoints.image.x, + y: evt.detail.currentPoints.image.y, + highlight: true, + active: false + }, + end: { + x: evt.detail.currentPoints.image.x, + y: evt.detail.currentPoints.image.y, + highlight: true, + active: false + }, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + if (data.visible === false) { + return false; + } + + return Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_13__["default"])(element, data.handles.start, data.handles.end, coords) < 25; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats() {// Implementing to satisfy BaseAnnotationTool + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var _evt$detail = evt.detail, + element = _evt$detail.element, + enabledElement = _evt$detail.enabledElement; + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__["getToolState"])(element, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var canvas = evt.detail.canvasContext.canvas; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_17__["getNewContext"])(canvas); + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_17__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_17__["setShadow"])(context, _this2.configuration); + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_10__["default"].getColorIfActive(data); // Draw the arrow + + var handleStartCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.start); + var handleEndCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); // Config.arrowFirst = false; + + if (_this2.configuration.arrowFirst) { + Object(_drawing_drawArrow_js__WEBPACK_IMPORTED_MODULE_18__["default"])(context, handleEndCanvas, handleStartCanvas, color, lineWidth); + } else { + Object(_drawing_drawArrow_js__WEBPACK_IMPORTED_MODULE_18__["default"])(context, handleStartCanvas, handleEndCanvas, color, lineWidth); + } + + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_19__["default"])(context, evt.detail, data.handles, handleOptions); + } + + var text = textBoxText(data); // Draw the text + + if (text && text !== '') { + // Calculate the text coordinates. + var padding = 5; + var textWidth = Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_20__["textBoxWidth"])(context, text, padding); + var textHeight = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_9__["default"].getFontSize() + 10; + var distance = Math.max(textWidth, textHeight) / 2 + 5; + + if (handleEndCanvas.x < handleStartCanvas.x) { + distance = -distance; + } + + if (!data.handles.textBox.hasMoved) { + var textCoords; + + if (_this2.configuration.arrowFirst) { + textCoords = { + x: handleEndCanvas.x - textWidth / 2 + distance, + y: handleEndCanvas.y - textHeight / 2 + }; + } else { + // If the arrow is at the End position, the text should + // Be placed near the Start position + textCoords = { + x: handleStartCanvas.x - textWidth / 2 - distance, + y: handleStartCanvas.y - textHeight / 2 + }; + } + + var transform = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.internal.getTransform(enabledElement); + transform.invert(); + var coords = transform.transformPoint(textCoords.x, textCoords.y); + data.handles.textBox.x = coords.x; + data.handles.textBox.y = coords.y; + } + + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_16__["default"])(context, element, data.handles.textBox, text, data.handles, textBoxAnchorPoints, color, lineWidth, 0, false); + } + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + function textBoxText(data) { + return data.text; + } + + function textBoxAnchorPoints(handles) { + var midpoint = { + x: (handles.start.x + handles.end.x) / 2, + y: (handles.start.y + handles.end.y) / 2 + }; + return [handles.start, midpoint, handles.end]; + } + } + }, { + key: "addNewMeasurement", + value: function addNewMeasurement(evt, interactionType) { + var _this3 = this; + + var element = evt.detail.element; + var measurementData = this.createNewMeasurement(evt); // Associate this data with this imageId so we can render it and manipulate it + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__["addToolState"])(element, this.name, measurementData); + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_11__["moveNewHandle"])(evt.detail, this.name, measurementData, measurementData.handles.end, this.options, interactionType, function () { + if (measurementData.text === undefined) { + _this3.configuration.getTextCallback(function (text) { + if (text) { + measurementData.text = text; + } else { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__["removeToolState"])(element, _this3.name, measurementData); + } + + measurementData.active = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MEASUREMENT_MODIFIED, { + toolType: _this3.name, + element: element, + measurementData: measurementData + }); + }, evt.detail); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + }); + } + }, { + key: "doubleClickCallback", + value: function doubleClickCallback(evt) { + return this._updateTextForNearbyAnnotation(evt); + } + }, { + key: "touchPressCallback", + value: function touchPressCallback(evt) { + return this._updateTextForNearbyAnnotation(evt); + } + }, { + key: "_updateTextForNearbyAnnotation", + value: function _updateTextForNearbyAnnotation(evt) { + var element = evt.detail.element; + var coords = evt.detail.currentPoints.canvas; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__["getToolState"])(element, this.name); + + if (!toolState) { + return false; + } + + for (var i = 0; i < toolState.data.length; i++) { + var data = toolState.data[i]; + + if (this.pointNearTool(element, data, coords) || Object(_util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_12__["default"])(data.handles.textBox, coords)) { + data.active = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); // Allow relabelling via a callback + + this.configuration.changeTextCallback(data, evt.detail, this._doneChangingTextCallback.bind(this, element, data)); + evt.stopImmediatePropagation(); + evt.preventDefault(); + evt.stopPropagation(); + return true; + } + } + } + }, { + key: "_doneChangingTextCallback", + value: function _doneChangingTextCallback(element, measurementData, updatedText, deleteTool) { + if (deleteTool === true) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_15__["removeToolState"])(element, this.name, measurementData); + } else { + measurementData.text = updatedText; + } + + measurementData.active = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MEASUREMENT_MODIFIED, { + toolType: this.name, + element: element, + measurementData: measurementData + }); + } + }]); + + return ArrowAnnotateTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +function getTextCallback(doneChangingTextCallback) { + doneChangingTextCallback(prompt('Enter your annotation:')); +} + +function changeTextCallback(data, eventData, doneChangingTextCallback) { + doneChangingTextCallback(prompt('Change your annotation:')); +} + +/***/ }), + +/***/ "./tools/annotation/BidirectionalTool.js": +/*!***********************************************!*\ + !*** ./tools/annotation/BidirectionalTool.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return BidirectionalTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _bidirectionalTool_createNewMeasurement_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./bidirectionalTool/createNewMeasurement.js */ "./tools/annotation/bidirectionalTool/createNewMeasurement.js"); +/* harmony import */ var _bidirectionalTool_pointNearTool_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./bidirectionalTool/pointNearTool.js */ "./tools/annotation/bidirectionalTool/pointNearTool.js"); +/* harmony import */ var _bidirectionalTool_renderToolData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./bidirectionalTool/renderToolData.js */ "./tools/annotation/bidirectionalTool/renderToolData.js"); +/* harmony import */ var _bidirectionalTool_addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./bidirectionalTool/addNewMeasurement.js */ "./tools/annotation/bidirectionalTool/addNewMeasurement.js"); +/* harmony import */ var _bidirectionalTool_mouseMoveCallback_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./bidirectionalTool/mouseMoveCallback.js */ "./tools/annotation/bidirectionalTool/mouseMoveCallback.js"); +/* harmony import */ var _bidirectionalTool_handleSelectedCallback_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./bidirectionalTool/handleSelectedCallback.js */ "./tools/annotation/bidirectionalTool/handleSelectedCallback.js"); +/* harmony import */ var _bidirectionalTool_handleSelectedMouseCallback_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./bidirectionalTool/handleSelectedMouseCallback.js */ "./tools/annotation/bidirectionalTool/handleSelectedMouseCallback.js"); +/* harmony import */ var _bidirectionalTool_handleSelectedTouchCallback_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./bidirectionalTool/handleSelectedTouchCallback.js */ "./tools/annotation/bidirectionalTool/handleSelectedTouchCallback.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); +/* harmony import */ var _bidirectionalTool_utils_calculateLongestAndShortestDiameters__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./bidirectionalTool/utils/calculateLongestAndShortestDiameters */ "./tools/annotation/bidirectionalTool/utils/calculateLongestAndShortestDiameters.js"); + + + + + + + + + + + + + + + + + + + + +var emptyLocationCallback = function emptyLocationCallback(measurementData, eventData, doneCallback) { + return doneCallback(); +}; +/** + * @public + * @class BidirectionalTool + * @memberof Tools.Annotation + * @classdesc Create and position an annotation that measures the + * length and width of a region. + * @extends Tools.Base.BaseAnnotationTool + */ + + +var BidirectionalTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(BidirectionalTool, _BaseAnnotationTool); + + function BidirectionalTool(props) { + var _this; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, BidirectionalTool); + + var defaultProps = { + name: 'Bidirectional', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + changeMeasurementLocationCallback: emptyLocationCallback, + getMeasurementLocationCallback: emptyLocationCallback, + textBox: '', + shadow: '', + drawHandles: true, + drawHandlesOnHover: true, + additionalData: [] + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__["bidirectionalCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(BidirectionalTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_16__["default"])(_this.updateCachedStats, 110); + _this.createNewMeasurement = _bidirectionalTool_createNewMeasurement_js__WEBPACK_IMPORTED_MODULE_7__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.pointNearTool = _bidirectionalTool_pointNearTool_js__WEBPACK_IMPORTED_MODULE_8__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.renderToolData = _bidirectionalTool_renderToolData_js__WEBPACK_IMPORTED_MODULE_9__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.addNewMeasurement = _bidirectionalTool_addNewMeasurement_js__WEBPACK_IMPORTED_MODULE_10__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this._moveCallback = _bidirectionalTool_mouseMoveCallback_js__WEBPACK_IMPORTED_MODULE_11__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.handleSelectedCallback = _bidirectionalTool_handleSelectedCallback_js__WEBPACK_IMPORTED_MODULE_12__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.handleSelectedMouseCallback = _bidirectionalTool_handleSelectedMouseCallback_js__WEBPACK_IMPORTED_MODULE_13__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.handleSelectedTouchCallback = _bidirectionalTool_handleSelectedTouchCallback_js__WEBPACK_IMPORTED_MODULE_14__["default"].bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(BidirectionalTool, [{ + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var pixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__["default"])(image); + + var _calculateLongestAndS = Object(_bidirectionalTool_utils_calculateLongestAndShortestDiameters__WEBPACK_IMPORTED_MODULE_18__["default"])(data, pixelSpacing), + longestDiameter = _calculateLongestAndS.longestDiameter, + shortestDiameter = _calculateLongestAndS.shortestDiameter; // Set measurement text to show lesion table + + + data.longestDiameter = longestDiameter; + data.shortestDiameter = shortestDiameter; + data.invalidated = false; + } + }]); + + return BidirectionalTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/annotation/CircleRoiTool.js": +/*!*******************************************!*\ + !*** ./tools/annotation/CircleRoiTool.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return CircleRoiTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../util/ellipse/index.js */ "./util/ellipse/index.js"); +/* harmony import */ var _util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../util/getROITextBoxCoords.js */ "./util/getROITextBoxCoords.js"); +/* harmony import */ var _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../util/numbersWithCommas.js */ "./util/numbersWithCommas.js"); +/* harmony import */ var _util_throttle_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../../util/throttle.js */ "./util/throttle.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_getCircleCoords__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../util/getCircleCoords */ "./util/getCircleCoords.js"); + + + + + + + // State + + + + // Drawing + + // Util + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_16__["getLogger"])('tools:annotation:CircleRoiTool'); +/** + * @public + * @class CircleRoiTool + * @memberof Tools.Annotation + * @classdesc Tool for drawing circular regions of interest, and measuring + * the statistics of the enclosed pixels. + * @extends Tools.Base.BaseAnnotationTool + */ + +var CircleRoiTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(CircleRoiTool, _BaseAnnotationTool); + + function CircleRoiTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, CircleRoiTool); + + var defaultProps = { + name: 'CircleRoi', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_18__["circleRoiCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(CircleRoiTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle_js__WEBPACK_IMPORTED_MODULE_15__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(CircleRoiTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + start: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + }, + initialRotation: eventData.viewport.rotation, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords, interactionType) { + var hasStartAndEndHandles = data && data.handles && data.handles.start && data.handles.end; + var getDistance = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstoneMath.point.distance; + + if (!hasStartAndEndHandles) { + logger.warn("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + } + + if (!hasStartAndEndHandles || data.visible === false) { + return false; + } + + var distance = interactionType === 'mouse' ? 15 : 25; + var startCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.start); + var endCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); // StartCanvas is the center of the circle + + var distanceFromCenter = getDistance(startCanvas, coords); // Getting radius of circle annotation in canvas + + var radius = getDistance(startCanvas, endCanvas); // Checking if point is near the tool by comparing its distance from the center of the circle + + return distanceFromCenter > radius - distance / 2 && distanceFromCenter < radius + distance / 2; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; + var modality = seriesModule.modality; + var pixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__["default"])(image); + + var stats = _calculateStats(image, element, data.handles, modality, pixelSpacing); + + data.cachedStats = stats; + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } + + var getDistance = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstoneMath.point.distance; + var eventData = evt.detail; + var image = eventData.image, + element = eventData.element, + canvasContext = eventData.canvasContext; + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; + var newContext = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["getNewContext"])(canvasContext.canvas); + + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; // Meta + + + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; // Pixel Spacing + + var modality = seriesModule.modality; + var hasPixelSpacing = rowPixelSpacing && colPixelSpacing; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["draw"])(newContext, function (context) { + // If we have tool data for this element, iterate over each set and draw it + for (var i = 0; i < toolData.data.length; i++) { + var data = toolData.data[i]; + + if (data.visible === false) { + continue; + } // Configure + + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["setShadow"])(context, _this2.configuration); + var startCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.start); + var endCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); // Calculating the radius where startCanvas is the center of the circle to be drawn + + var radius = getDistance(startCanvas, endCanvas); // Draw Circle + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawCircle"])(context, element, data.handles.start, radius, { + color: color + }, 'pixel'); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawHandles"])(context, eventData, data.handles, handleOptions); // Update textbox stats + + if (data.invalidated === true) { + if (data.cachedStats) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } // Default to textbox on right side of ROI + + + if (!data.handles.textBox.hasMoved) { + var defaultCoords = Object(_util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_13__["default"])(eventData.viewport, data.handles); + Object.assign(data.handles.textBox, defaultCoords); + } + + var textBoxAnchorPoints = function textBoxAnchorPoints(handles) { + return _findTextBoxAnchorPoints(handles.start, handles.end); + }; + + var textBoxContent = _createTextBoxContent(context, image.color, data.cachedStats, modality, hasPixelSpacing, _this2.configuration); + + data.unit = _getUnit(modality, _this2.configuration.showHounsfieldUnits); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawLinkedTextBox"])(context, element, data.handles.textBox, textBoxContent, data.handles, textBoxAnchorPoints, color, lineWidth, 10, true); + } + }); + } + }]); + + return CircleRoiTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {Array.<{x: number, y: number}>} + */ + + + + +function _findTextBoxAnchorPoints(startHandle, endHandle) { + var _getCircleCoords = Object(_util_getCircleCoords__WEBPACK_IMPORTED_MODULE_19__["default"])(startHandle, endHandle), + left = _getCircleCoords.left, + top = _getCircleCoords.top, + width = _getCircleCoords.width, + height = _getCircleCoords.height; + + return [{ + // Top middle point of ellipse + x: left + width / 2, + y: top + }, { + // Left middle point of ellipse + x: left, + y: top + height / 2 + }, { + // Bottom middle point of ellipse + x: left + width / 2, + y: top + height + }, { + // Right middle point of ellipse + x: left + width, + y: top + height / 2 + }]; +} + +function _getUnit(modality, showHounsfieldUnits) { + return modality === 'CT' && showHounsfieldUnits !== false ? 'HU' : ''; +} +/** + * + * + * @param {*} context + * @param {*} isColorImage + * @param {*} { area, mean, stdDev, min, max, meanStdDevSUV } + * @param {*} modality + * @param {*} hasPixelSpacing + * @param {*} [options={}] - { showMinMax, showHounsfieldUnits } + * @returns {string[]} + */ + + +function _createTextBoxContent(context, isColorImage) { + var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, + area = _ref.area, + mean = _ref.mean, + stdDev = _ref.stdDev, + min = _ref.min, + max = _ref.max, + meanStdDevSUV = _ref.meanStdDevSUV; + + var modality = arguments.length > 3 ? arguments[3] : undefined; + var hasPixelSpacing = arguments.length > 4 ? arguments[4] : undefined; + var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {}; + var showMinMax = options.showMinMax || false; + var textLines = []; // Don't display mean/standardDev for color images + + var otherLines = []; + + if (!isColorImage) { + var hasStandardUptakeValues = meanStdDevSUV && meanStdDevSUV.mean !== 0; + + var unit = _getUnit(modality, options.showHounsfieldUnits); + + var meanString = "Mean: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(mean.toFixed(2)), " ").concat(unit); + var stdDevString = "Std Dev: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(stdDev.toFixed(2)), " ").concat(unit); // If this image has SUV values to display, concatenate them to the text line + + if (hasStandardUptakeValues) { + var SUVtext = ' SUV: '; + var meanSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(meanStdDevSUV.mean.toFixed(2))); + var stdDevSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(meanStdDevSUV.stdDev.toFixed(2))); + var targetStringLength = Math.floor(context.measureText("".concat(stdDevString, " ")).width); + + while (context.measureText(meanString).width < targetStringLength) { + meanString += ' '; + } + + otherLines.push("".concat(meanString).concat(meanSuvString)); + otherLines.push("".concat(stdDevString, " ").concat(stdDevSuvString)); + } else { + otherLines.push("".concat(meanString, " ").concat(stdDevString)); + } + + if (showMinMax) { + var minString = "Min: ".concat(min, " ").concat(unit); + var maxString = "Max: ".concat(max, " ").concat(unit); + + var _targetStringLength = hasStandardUptakeValues ? Math.floor(context.measureText("".concat(stdDevString, " ")).width) : Math.floor(context.measureText("".concat(meanString, " ")).width); + + while (context.measureText(minString).width < _targetStringLength) { + minString += ' '; + } + + otherLines.push("".concat(minString).concat(maxString)); + } + } + + textLines.push(_formatArea(area, hasPixelSpacing)); + otherLines.forEach(function (x) { + return textLines.push(x); + }); + return textLines; +} +/** + * + * + * @param {*} area + * @param {*} hasPixelSpacing + * @returns {string} The formatted label for showing area + */ + + +function _formatArea(area, hasPixelSpacing) { + // This uses Char code 178 for a superscript 2 + var suffix = hasPixelSpacing ? " mm".concat(String.fromCharCode(178)) : " px".concat(String.fromCharCode(178)); + return "Area: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(area.toFixed(2))).concat(suffix); +} +/** + * + * + * @param {*} image + * @param {*} element + * @param {*} handles + * @param {*} modality + * @param {*} pixelSpacing + * @returns {Object} The Stats object + */ + + +function _calculateStats(image, element, handles, modality, pixelSpacing) { + // Retrieve the bounds of the ellipse in image coordinates + var circleCoordinates = Object(_util_getCircleCoords__WEBPACK_IMPORTED_MODULE_19__["default"])(handles.start, handles.end); // Retrieve the array of pixels that the ellipse bounds cover + + var pixels = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getPixels(element, circleCoordinates.left, circleCoordinates.top, circleCoordinates.width, circleCoordinates.height); // Calculate the mean & standard deviation from the pixels and the ellipse details. + + var ellipseMeanStdDev = Object(_util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__["calculateEllipseStatistics"])(pixels, circleCoordinates); + var meanStdDevSUV; + + if (modality === 'PT') { + meanStdDevSUV = { + mean: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, ellipseMeanStdDev.mean, true) || 0, + stdDev: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, ellipseMeanStdDev.stdDev, true) || 0 + }; + } + + var area = Math.PI * (circleCoordinates.width * (pixelSpacing.colPixelSpacing || 1) / 2) * (circleCoordinates.height * (pixelSpacing.rowPixelSpacing || 1) / 2); + return { + area: area || 0, + count: ellipseMeanStdDev.count || 0, + mean: ellipseMeanStdDev.mean || 0, + variance: ellipseMeanStdDev.variance || 0, + stdDev: ellipseMeanStdDev.stdDev || 0, + min: ellipseMeanStdDev.min || 0, + max: ellipseMeanStdDev.max || 0, + meanStdDevSUV: meanStdDevSUV + }; +} + +/***/ }), + +/***/ "./tools/annotation/CobbAngleTool.js": +/*!*******************************************!*\ + !*** ./tools/annotation/CobbAngleTool.js ***! + \*******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return CobbAngleTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../../util/lineSegDistance.js */ "./util/lineSegDistance.js"); +/* harmony import */ var _util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./../../util/roundToDecimal.js */ "./util/roundToDecimal.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./../../events.js */ "./events.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); + + + + + + + // State + + + + + // Manipulators + + // Drawing + + + + + + + + + + + +/** + * @public + * @class CobbAngleTool + * @memberof Tools.Annotation + * @classdesc Tool for measuring the angle between two straight lines. + * @extends Tools.Base.BaseAnnotationTool + */ + +var CobbAngleTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(CobbAngleTool, _BaseAnnotationTool); + + function CobbAngleTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, CobbAngleTool); + + var defaultProps = { + name: 'CobbAngle', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_18__["cobbAngleCursor"], + configuration: { + drawHandles: true + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(CobbAngleTool).call(this, props, defaultProps)); + _this.hasIncomplete = false; + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_20__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(CobbAngleTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + // Create the measurement data for this tool with the end handle activated + this.hasIncomplete = true; + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + complete: false, + value: '', + handles: { + start: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + }, + start2: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false, + drawnIndependently: true + }, + end2: { + x: eventData.currentPoints.image.x + 1, + y: eventData.currentPoints.image.y, + highlight: true, + active: false, + drawnIndependently: true + }, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + /** + * + * + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {Boolean} + */ + + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + if (data.visible === false) { + return false; + } + + if (this.hasIncomplete) { + return false; + } + + return Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__["default"])(element, data.handles.start, data.handles.end, coords) < 25 || Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_15__["default"])(element, data.handles.start2, data.handles.end2, coords) < 25; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_21__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; + + var dx1 = (Math.ceil(data.handles.start.x) - Math.ceil(data.handles.end.x)) * colPixelSpacing; + var dy1 = (Math.ceil(data.handles.start.y) - Math.ceil(data.handles.end.y)) * rowPixelSpacing; + var dx2 = (Math.ceil(data.handles.start2.x) - Math.ceil(data.handles.end2.x)) * colPixelSpacing; + var dy2 = (Math.ceil(data.handles.start2.y) - Math.ceil(data.handles.end2.y)) * rowPixelSpacing; + var angle = Math.acos(Math.abs((dx1 * dx2 + dy1 * dy2) / (Math.sqrt(dx1 * dx1 + dy1 * dy1) * Math.sqrt(dx2 * dx2 + dy2 * dy2)))); + angle *= 180 / Math.PI; + data.rAngle = Object(_util_roundToDecimal_js__WEBPACK_IMPORTED_MODULE_16__["default"])(angle, 2); + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["getNewContext"])(eventData.canvasContext.canvas); + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_9__["default"].getToolWidth(); + var font = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_7__["default"].getFont(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["setShadow"])(context, _this2.configuration); // Differentiate the color of activation tool + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_10__["default"].getColorIfActive(data); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["drawLine"])(context, eventData.element, data.handles.start, data.handles.end, { + color: color + }); + + if (data.complete) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_12__["drawLine"])(context, eventData.element, data.handles.start2, data.handles.end2, { + color: color + }); + } // Draw the handles + + + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_13__["default"])(context, eventData, data.handles, handleOptions); + } // Draw the text + + + context.fillStyle = color; + var text = data.value; + + if (!data.handles.textBox.hasMoved) { + var textCoords = { + x: (data.handles.start.x + data.handles.end.x) / 2, + y: (data.handles.start.y + data.handles.end.y) / 2 - 10 + }; + context.font = font; + data.handles.textBox.x = textCoords.x; + data.handles.textBox.y = textCoords.y; + } + + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_14__["default"])(context, eventData.element, data.handles.textBox, text, data.handles, textBoxAnchorPoints, color, lineWidth, 0, true); + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + function textBoxAnchorPoints(handles) { + return [handles.start, handles.start2, handles.end, handles.end2]; + } + } + }, { + key: "getIncomplete", + value: function getIncomplete(element) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["getToolState"])(element, this.name); + + if (toolState && Array.isArray(toolState.data)) { + return toolState.data.find(function (_ref) { + var complete = _ref.complete; + return complete === false; + }); + } + } + }, { + key: "addNewMeasurement", + value: function addNewMeasurement(evt, interactionType) { + var _this3 = this; + + evt.preventDefault(); + evt.stopPropagation(); + var eventData = evt.detail; + var measurementData; + var toMoveHandle; + var doneMovingCallback; // Search for incomplete measurements + + var element = evt.detail.element; + var pendingMeasurement = this.getIncomplete(element); + + if (pendingMeasurement) { + measurementData = pendingMeasurement; + measurementData.complete = true; + measurementData.handles.start2 = { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + drawnIndependently: false, + highlight: true, + active: false + }; + measurementData.handles.end2 = { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + drawnIndependently: false, + highlight: true, + active: true + }; + toMoveHandle = measurementData.handles.end2; + this.hasIncomplete = false; + + doneMovingCallback = function doneMovingCallback() { + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_17__["default"].MEASUREMENT_COMPLETED; + var eventData = { + toolType: _this3.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_19__["default"])(element, eventType, eventData); + }; + } else { + measurementData = this.createNewMeasurement(eventData); + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_8__["addToolState"])(element, this.name, measurementData); + toMoveHandle = measurementData.handles.end; + } // Associate this data with this imageId so we can render it and manipulate it + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.updateImage(element); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_11__["moveNewHandle"])(eventData, this.name, measurementData, toMoveHandle, this.options, interactionType, doneMovingCallback); + } + }, { + key: "onMeasureModified", + value: function onMeasureModified(ev) { + var element = ev.detail.element; + var image = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getEnabledElement(element).image; + + var _getPixelSpacing2 = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_21__["default"])(image), + rowPixelSpacing = _getPixelSpacing2.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing2.colPixelSpacing; + + if (ev.detail.toolName !== this.name) { + return; + } + + var data = ev.detail.measurementData; // Update textbox stats + + if (data.invalidated === true) { + if (data.rAngle) { + this.throttledUpdateCachedStats(image, element, data); + } else { + this.updateCachedStats(image, element, data); + } + } + + var rAngle = data.rAngle; + data.value = ''; + + if (!Number.isNaN(rAngle)) { + data.value = textBoxText(rAngle, rowPixelSpacing, colPixelSpacing); + } + + function textBoxText(rAngle, rowPixelSpacing, colPixelSpacing) { + var suffix = !rowPixelSpacing || !colPixelSpacing ? ' (isotropic)' : ''; + var str = '00B0'; // Degrees symbol + + return rAngle.toString() + String.fromCharCode(parseInt(str, 16)) + suffix; + } + } + }, { + key: "activeCallback", + value: function activeCallback(element) { + this.onMeasureModified = this.onMeasureModified.bind(this); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_17__["default"].MEASUREMENT_MODIFIED, this.onMeasureModified); + } + }, { + key: "passiveCallback", + value: function passiveCallback(element) { + this.onMeasureModified = this.onMeasureModified.bind(this); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_17__["default"].MEASUREMENT_MODIFIED, this.onMeasureModified); + } + }, { + key: "enabledCallback", + value: function enabledCallback(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_17__["default"].MEASUREMENT_MODIFIED, this.onMeasureModified); + } + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_17__["default"].MEASUREMENT_MODIFIED, this.onMeasureModified); + } + }]); + + return CobbAngleTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/annotation/EllipticalRoiTool.js": +/*!***********************************************!*\ + !*** ./tools/annotation/EllipticalRoiTool.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return EllipticalRoiTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../util/ellipse/index.js */ "./util/ellipse/index.js"); +/* harmony import */ var _util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../util/getROITextBoxCoords.js */ "./util/getROITextBoxCoords.js"); +/* harmony import */ var _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../util/numbersWithCommas.js */ "./util/numbersWithCommas.js"); +/* harmony import */ var _util_throttle_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../../util/throttle.js */ "./util/throttle.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); + + + + + + + // State + + + + // Drawing + + // Util + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_17__["getLogger"])('tools:annotation:EllipticalRoiTool'); +/** + * @public + * @class EllipticalRoiTool + * @memberof Tools.Annotation + * @classdesc Tool for drawing elliptical regions of interest, and measuring + * the statistics of the enclosed pixels. + * @extends Tools.Base.BaseAnnotationTool + */ + +var EllipticalRoiTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(EllipticalRoiTool, _BaseAnnotationTool); + + function EllipticalRoiTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, EllipticalRoiTool); + + var defaultProps = { + name: 'EllipticalRoi', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: {// showMinMax: false, + // showHounsfieldUnits: true, + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_16__["ellipticalRoiCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(EllipticalRoiTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle_js__WEBPACK_IMPORTED_MODULE_15__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(EllipticalRoiTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + start: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + }, + initialRotation: eventData.viewport.rotation, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords, interactionType) { + var hasStartAndEndHandles = data && data.handles && data.handles.start && data.handles.end; + var validParameters = hasStartAndEndHandles; + + if (!validParameters) { + logger.warn("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + } + + if (!validParameters || data.visible === false) { + return false; + } + + var distance = interactionType === 'mouse' ? 15 : 25; + var startCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.start); + var endCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); + var minorEllipse = { + left: Math.min(startCanvas.x, endCanvas.x) + distance / 2, + top: Math.min(startCanvas.y, endCanvas.y) + distance / 2, + width: Math.abs(startCanvas.x - endCanvas.x) - distance, + height: Math.abs(startCanvas.y - endCanvas.y) - distance + }; + var majorEllipse = { + left: Math.min(startCanvas.x, endCanvas.x) - distance / 2, + top: Math.min(startCanvas.y, endCanvas.y) - distance / 2, + width: Math.abs(startCanvas.x - endCanvas.x) + distance, + height: Math.abs(startCanvas.y - endCanvas.y) + distance + }; + var pointInMinorEllipse = Object(_util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__["pointInEllipse"])(minorEllipse, coords); + var pointInMajorEllipse = Object(_util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__["pointInEllipse"])(majorEllipse, coords); + + if (pointInMajorEllipse && !pointInMinorEllipse) { + return true; + } + + return false; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; + var modality = seriesModule.modality; + var pixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_18__["default"])(image); + + var stats = _calculateStats(image, element, data.handles, modality, pixelSpacing); + + data.cachedStats = stats; + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } + + var eventData = evt.detail; + var image = eventData.image, + element = eventData.element; + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["getNewContext"])(eventData.canvasContext.canvas); + + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_18__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; // Meta + + + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; // Pixel Spacing + + var modality = seriesModule.modality; + var hasPixelSpacing = rowPixelSpacing && colPixelSpacing; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["draw"])(context, function (context) { + // If we have tool data for this element - iterate over each set and draw it + for (var i = 0; i < toolData.data.length; i++) { + var data = toolData.data[i]; + + if (data.visible === false) { + continue; + } // Configure + + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["setShadow"])(context, _this2.configuration); // Draw + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawEllipse"])(context, element, data.handles.start, data.handles.end, { + color: color + }, 'pixel', data.handles.initialRotation); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawHandles"])(context, eventData, data.handles, handleOptions); // Update textbox stats + + if (data.invalidated === true) { + if (data.cachedStats) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } // Default to textbox on right side of ROI + + + if (!data.handles.textBox.hasMoved) { + var defaultCoords = Object(_util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_13__["default"])(eventData.viewport, data.handles); + Object.assign(data.handles.textBox, defaultCoords); + } + + var textBoxAnchorPoints = function textBoxAnchorPoints(handles) { + return _findTextBoxAnchorPoints(handles.start, handles.end); + }; + + var textBoxContent = _createTextBoxContent(context, image.color, data.cachedStats, modality, hasPixelSpacing, _this2.configuration); + + data.unit = _getUnit(modality, _this2.configuration.showHounsfieldUnits); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawLinkedTextBox"])(context, element, data.handles.textBox, textBoxContent, data.handles, textBoxAnchorPoints, color, lineWidth, 10, true); + } + }); + } + }]); + + return EllipticalRoiTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {Array.<{x: number, y: number}>} + */ + + + + +function _findTextBoxAnchorPoints(startHandle, endHandle) { + var _getEllipseImageCoord = _getEllipseImageCoordinates(startHandle, endHandle), + left = _getEllipseImageCoord.left, + top = _getEllipseImageCoord.top, + width = _getEllipseImageCoord.width, + height = _getEllipseImageCoord.height; + + return [{ + // Top middle point of ellipse + x: left + width / 2, + y: top + }, { + // Left middle point of ellipse + x: left, + y: top + height / 2 + }, { + // Bottom middle point of ellipse + x: left + width / 2, + y: top + height + }, { + // Right middle point of ellipse + x: left + width, + y: top + height / 2 + }]; +} + +function _getUnit(modality, showHounsfieldUnits) { + return modality === 'CT' && showHounsfieldUnits !== false ? 'HU' : ''; +} +/** + * + * + * @param {*} context + * @param {*} isColorImage + * @param {*} { area, mean, stdDev, min, max, meanStdDevSUV } + * @param {*} modality + * @param {*} hasPixelSpacing + * @param {*} [options={}] - { showMinMax, showHounsfieldUnits } + * @returns {string[]} + */ + + +function _createTextBoxContent(context, isColorImage) { + var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, + area = _ref.area, + mean = _ref.mean, + stdDev = _ref.stdDev, + min = _ref.min, + max = _ref.max, + meanStdDevSUV = _ref.meanStdDevSUV; + + var modality = arguments.length > 3 ? arguments[3] : undefined; + var hasPixelSpacing = arguments.length > 4 ? arguments[4] : undefined; + var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {}; + var showMinMax = options.showMinMax || false; + var textLines = []; // Don't display mean/standardDev for color images + + var otherLines = []; + + if (!isColorImage) { + var hasStandardUptakeValues = meanStdDevSUV && meanStdDevSUV.mean !== 0; + + var unit = _getUnit(modality, options.showHounsfieldUnits); + + var meanString = "Mean: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(mean.toFixed(2)), " ").concat(unit); + var stdDevString = "Std Dev: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(stdDev.toFixed(2)), " ").concat(unit); // If this image has SUV values to display, concatenate them to the text line + + if (hasStandardUptakeValues) { + var SUVtext = ' SUV: '; + var meanSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(meanStdDevSUV.mean.toFixed(2))); + var stdDevSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(meanStdDevSUV.stdDev.toFixed(2))); + var targetStringLength = Math.floor(context.measureText("".concat(stdDevString, " ")).width); + + while (context.measureText(meanString).width < targetStringLength) { + meanString += ' '; + } + + otherLines.push("".concat(meanString).concat(meanSuvString)); + otherLines.push("".concat(stdDevString, " ").concat(stdDevSuvString)); + } else { + otherLines.push("".concat(meanString, " ").concat(stdDevString)); + } + + if (showMinMax) { + var minString = "Min: ".concat(min, " ").concat(unit); + var maxString = "Max: ".concat(max, " ").concat(unit); + + var _targetStringLength = hasStandardUptakeValues ? Math.floor(context.measureText("".concat(stdDevString, " ")).width) : Math.floor(context.measureText("".concat(meanString, " ")).width); + + while (context.measureText(minString).width < _targetStringLength) { + minString += ' '; + } + + otherLines.push("".concat(minString).concat(maxString)); + } + } + + textLines.push(_formatArea(area, hasPixelSpacing)); + otherLines.forEach(function (x) { + return textLines.push(x); + }); + return textLines; +} +/** + * + * + * @param {*} area + * @param {*} hasPixelSpacing + * @returns {string} The formatted label for showing area + */ + + +function _formatArea(area, hasPixelSpacing) { + // This uses Char code 178 for a superscript 2 + var suffix = hasPixelSpacing ? " mm".concat(String.fromCharCode(178)) : " px".concat(String.fromCharCode(178)); + return "Area: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_14__["default"])(area.toFixed(2))).concat(suffix); +} +/** + * + * + * @param {*} image + * @param {*} element + * @param {*} handles + * @param {*} modality + * @param {*} pixelSpacing + * @returns {Object} The Stats object + */ + + +function _calculateStats(image, element, handles, modality, pixelSpacing) { + // Retrieve the bounds of the ellipse in image coordinates + var ellipseCoordinates = _getEllipseImageCoordinates(handles.start, handles.end); // Retrieve the array of pixels that the ellipse bounds cover + + + var pixels = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getPixels(element, ellipseCoordinates.left, ellipseCoordinates.top, ellipseCoordinates.width, ellipseCoordinates.height); // Calculate the mean & standard deviation from the pixels and the ellipse details. + + var ellipseMeanStdDev = Object(_util_ellipse_index_js__WEBPACK_IMPORTED_MODULE_12__["calculateEllipseStatistics"])(pixels, ellipseCoordinates); + var meanStdDevSUV; + + if (modality === 'PT') { + meanStdDevSUV = { + mean: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, ellipseMeanStdDev.mean, true) || 0, + stdDev: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, ellipseMeanStdDev.stdDev, true) || 0 + }; + } // Calculate the image area from the ellipse dimensions and pixel spacing + + + var area = Math.PI * (ellipseCoordinates.width * (pixelSpacing.colPixelSpacing || 1) / 2) * (ellipseCoordinates.height * (pixelSpacing.rowPixelSpacing || 1) / 2); + return { + area: area || 0, + count: ellipseMeanStdDev.count || 0, + mean: ellipseMeanStdDev.mean || 0, + variance: ellipseMeanStdDev.variance || 0, + stdDev: ellipseMeanStdDev.stdDev || 0, + min: ellipseMeanStdDev.min || 0, + max: ellipseMeanStdDev.max || 0, + meanStdDevSUV: meanStdDevSUV + }; +} +/** + * Retrieve the bounds of the ellipse in image coordinates + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {{ left: number, top: number, width: number, height: number }} + */ + + +function _getEllipseImageCoordinates(startHandle, endHandle) { + return { + left: Math.round(Math.min(startHandle.x, endHandle.x)), + top: Math.round(Math.min(startHandle.y, endHandle.y)), + width: Math.round(Math.abs(startHandle.x - endHandle.x)), + height: Math.round(Math.abs(startHandle.y - endHandle.y)) + }; +} + +/***/ }), + +/***/ "./tools/annotation/FreehandRoiTool.js": +/*!*********************************************!*\ + !*** ./tools/annotation/FreehandRoiTool.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FreehandRoiTool; }); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../util/findAndMoveHelpers.js */ "./util/findAndMoveHelpers.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../util/numbersWithCommas.js */ "./util/numbersWithCommas.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _util_clip_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../util/clip.js */ "./util/clip.js"); +/* harmony import */ var _store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../store/setToolCursor.js */ "./store/setToolCursor.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../util/freehand/index.js */ "./util/freehand/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); + + + + + + + + + + // State + + + + + + // Manipulators + + // Implementation Logic + + + + // Drawing + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_26__["getLogger"])('tools:annotation:FreehandRoiTool'); +var insertOrDelete = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__["default"].insertOrDelete, + freehandArea = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__["default"].freehandArea, + calculateFreehandStatistics = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__["default"].calculateFreehandStatistics, + freehandIntersect = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__["default"].freehandIntersect, + FreehandHandleData = _util_freehand_index_js__WEBPACK_IMPORTED_MODULE_25__["default"].FreehandHandleData; +/** + * @public + * @class FreehandRoiTool + * @memberof Tools.Annotation + * @classdesc Tool for drawing arbitrary polygonal regions of interest, and + * measuring the statistics of the enclosed pixels. + * @extends Tools.Base.BaseAnnotationTool + */ + +var FreehandRoiTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_6___default()(FreehandRoiTool, _BaseAnnotationTool); + + function FreehandRoiTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default()(this, FreehandRoiTool); + + var defaultProps = { + name: 'FreehandRoi', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: defaultFreehandConfiguration(), + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_24__["freehandRoiCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4___default()(FreehandRoiTool).call(this, props, defaultProps)); + _this.isMultiPartTool = true; + _this._drawing = false; + _this._dragging = false; + _this._modifying = false; // Create bound callback functions for private event loops + + _this._drawingMouseDownCallback = _this._drawingMouseDownCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingMouseMoveCallback = _this._drawingMouseMoveCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingMouseDragCallback = _this._drawingMouseDragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingMouseUpCallback = _this._drawingMouseUpCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingMouseDoubleClickCallback = _this._drawingMouseDoubleClickCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._editMouseUpCallback = _this._editMouseUpCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._editMouseDragCallback = _this._editMouseDragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingTouchStartCallback = _this._drawingTouchStartCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingTouchDragCallback = _this._drawingTouchDragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._drawingDoubleTapClickCallback = _this._drawingDoubleTapClickCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this._editTouchDragCallback = _this._editTouchDragCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5___default()(_this)); + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_27__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default()(FreehandRoiTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + var measurementData = { + visible: true, + active: true, + invalidated: true, + color: undefined, + handles: { + points: [] + } + }; + measurementData.handles.textBox = { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + }; + return measurementData; + } + /** + * + * + * @param {*} element element + * @param {*} data data + * @param {*} coords coords + * @returns {Boolean} + */ + + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + var validParameters = data && data.handles && data.handles.points; + + if (!validParameters) { + throw new Error("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + } + + if (!validParameters || data.visible === false) { + return false; + } + + var isPointNearTool = this._pointNearHandle(element, data, coords); + + if (isPointNearTool !== undefined) { + return true; + } + + return false; + } + /** + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {number} the distance in px from the provided coordinates to the + * closest rendered portion of the annotation. -1 if the distance cannot be + * calculated. + */ + + }, { + key: "distanceFromPoint", + value: function distanceFromPoint(element, data, coords) { + var distance = Infinity; + + for (var i = 0; i < data.handles.points.length; i++) { + var distanceI = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstoneMath.point.distance(data.handles.points[i], coords); + distance = Math.min(distance, distanceI); + } // If an error caused distance not to be calculated, return -1. + + + if (distance === Infinity) { + return -1; + } + + return distance; + } + /** + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {number} the distance in canvas units from the provided coordinates to the + * closest rendered portion of the annotation. -1 if the distance cannot be + * calculated. + */ + + }, { + key: "distanceFromPointCanvas", + value: function distanceFromPointCanvas(element, data, coords) { + var distance = Infinity; + + if (!data) { + return -1; + } + + var canvasCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.pixelToCanvas(element, coords); + var points = data.handles.points; + + for (var i = 0; i < points.length; i++) { + var handleCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.pixelToCanvas(element, points[i]); + var distanceI = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstoneMath.point.distance(handleCanvas, canvasCoords); + distance = Math.min(distance, distanceI); + } // If an error caused distance not to be calculated, return -1. + + + if (distance === Infinity) { + return -1; + } + + return distance; + } + /** + * + * + * + * @param {Object} image image + * @param {Object} element element + * @param {Object} data data + * + * @returns {void} void + */ + + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + // Define variables for the area and mean/standard deviation + var meanStdDev, meanStdDevSUV; + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId); + var modality = seriesModule ? seriesModule.modality : null; + var points = data.handles.points; // If the data has been invalidated, and the tool is not currently active, + // We need to calculate it again. + // Retrieve the bounds of the ROI in image coordinates + + var bounds = { + left: points[0].x, + right: points[0].x, + bottom: points[0].y, + top: points[0].x + }; + + for (var i = 0; i < points.length; i++) { + bounds.left = Math.min(bounds.left, points[i].x); + bounds.right = Math.max(bounds.right, points[i].x); + bounds.bottom = Math.min(bounds.bottom, points[i].y); + bounds.top = Math.max(bounds.top, points[i].y); + } + + var polyBoundingBox = { + left: bounds.left, + top: bounds.bottom, + width: Math.abs(bounds.right - bounds.left), + height: Math.abs(bounds.top - bounds.bottom) + }; // Store the bounding box information for the text box + + data.polyBoundingBox = polyBoundingBox; // First, make sure this is not a color image, since no mean / standard + // Deviation will be calculated for color images. + + if (!image.color) { + // Retrieve the array of pixels that the ROI bounds cover + var pixels = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.getPixels(element, polyBoundingBox.left, polyBoundingBox.top, polyBoundingBox.width, polyBoundingBox.height); // Calculate the mean & standard deviation from the pixels and the object shape + + meanStdDev = calculateFreehandStatistics.call(this, pixels, polyBoundingBox, data.handles.points); + + if (modality === 'PT') { + // If the image is from a PET scan, use the DICOM tags to + // Calculate the SUV from the mean and standard deviation. + // Note that because we are using modality pixel values from getPixels, and + // The calculateSUV routine also rescales to modality pixel values, we are first + // Returning the values to storedPixel values before calcuating SUV with them. + // TODO: Clean this up? Should we add an option to not scale in calculateSUV? + meanStdDevSUV = { + mean: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_17__["default"])(image, (meanStdDev.mean - image.intercept) / image.slope), + stdDev: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_17__["default"])(image, (meanStdDev.stdDev - image.intercept) / image.slope) + }; + } // If the mean and standard deviation values are sane, store them for later retrieval + + + if (meanStdDev && !isNaN(meanStdDev.mean)) { + data.meanStdDev = meanStdDev; + data.meanStdDevSUV = meanStdDevSUV; + } + } // Retrieve the pixel spacing values, and if they are not + // Real non-zero values, set them to 1 + + + var columnPixelSpacing = image.columnPixelSpacing || 1; + var rowPixelSpacing = image.rowPixelSpacing || 1; + var scaling = columnPixelSpacing * rowPixelSpacing; + var area = freehandArea(data.handles.points, scaling); // If the area value is sane, store it for later retrieval + + if (!isNaN(area)) { + data.area = area; + } // Set the invalidated flag to false so that this data won't automatically be recalculated + + + data.invalidated = false; + } + /** + * + * + * @param {*} evt + * @returns {undefined} + */ + + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; // If we have no toolState for this element, return immediately as there is nothing to do + + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(evt.currentTarget, this.name); + + if (!toolState) { + return; + } + + var image = eventData.image, + element = eventData.element; + var config = this.configuration; + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId); + var modality = seriesModule ? seriesModule.modality : null; // We have tool data for this element - iterate over each one and draw it + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_19__["getNewContext"])(eventData.canvasContext.canvas); + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_11__["default"].getToolWidth(); + + var _loop = function _loop(i) { + var data = toolState.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_19__["draw"])(context, function (context) { + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_12__["default"].getColorIfActive(data); + var fillColor; + + if (data.active) { + if (data.handles.invalidHandlePlacement) { + color = config.invalidColor; + fillColor = config.invalidColor; + } else { + color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_12__["default"].getColorIfActive(data); + fillColor = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_12__["default"].getFillColor(); + } + } else { + fillColor = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_12__["default"].getToolColor(); + } + + if (data.handles.points.length) { + for (var j = 0; j < data.handles.points.length; j++) { + var lines = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(data.handles.points[j].lines); + + var points = data.handles.points; + + if (j === points.length - 1 && !data.polyBoundingBox) { + // If it's still being actively drawn, keep the last line to + // The mouse location + lines.push(config.mouseLocation.handles.start); + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_19__["drawJoinedLines"])(context, element, data.handles.points[j], lines, { + color: color + }); + } + } // Draw handles + + + var options = { + color: color, + fill: fillColor + }; + + if (config.alwaysShowHandles || data.active && data.polyBoundingBox) { + // Render all handles + options.handleRadius = config.activeHandleRadius; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_21__["default"])(context, eventData, data.handles.points, options); + } + } + + if (data.canComplete) { + // Draw large handle at the origin if can complete drawing + options.handleRadius = config.completeHandleRadius; + var handle = data.handles.points[0]; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_21__["default"])(context, eventData, [handle], options); + } + } + + if (data.active && !data.polyBoundingBox) { + // Draw handle at origin and at mouse if actively drawing + options.handleRadius = config.activeHandleRadius; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_21__["default"])(context, eventData, config.mouseLocation.handles, options); + } + + var firstHandle = data.handles.points[0]; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_21__["default"])(context, eventData, [firstHandle], options); + } + } // Update textbox stats + + + if (data.invalidated === true && !data.active) { + if (data.meanStdDev && data.meanStdDevSUV && data.area) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } // Only render text if polygon ROI has been completed and freehand 'shiftKey' mode was not used: + + + if (data.polyBoundingBox && !data.handles.textBox.freehand) { + // If the textbox has not been moved by the user, it should be displayed on the right-most + // Side of the tool. + if (!data.handles.textBox.hasMoved) { + // Find the rightmost side of the polyBoundingBox at its vertical center, and place the textbox here + // Note that this calculates it in image coordinates + data.handles.textBox.x = data.polyBoundingBox.left + data.polyBoundingBox.width; + data.handles.textBox.y = data.polyBoundingBox.top + data.polyBoundingBox.height / 2; + } + + var text = textBoxText.call(_this2, data); + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_20__["default"])(context, element, data.handles.textBox, text, data.handles.points, textBoxAnchorPoints, color, lineWidth, 0, true); + } + }); + }; + + for (var i = 0; i < toolState.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + function textBoxText(data) { + var meanStdDev = data.meanStdDev, + meanStdDevSUV = data.meanStdDevSUV, + area = data.area; // Define an array to store the rows of text for the textbox + + var textLines = []; // If the mean and standard deviation values are present, display them + + if (meanStdDev && meanStdDev.mean !== undefined) { + // If the modality is CT, add HU to denote Hounsfield Units + var moSuffix = ''; + + if (modality === 'CT') { + moSuffix = 'HU'; + } + + data.unit = moSuffix; // Create a line of text to display the mean and any units that were specified (i.e. HU) + + var meanText = "Mean: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__["default"])(meanStdDev.mean.toFixed(2)), " ").concat(moSuffix); // Create a line of text to display the standard deviation and any units that were specified (i.e. HU) + + var stdDevText = "StdDev: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__["default"])(meanStdDev.stdDev.toFixed(2)), " ").concat(moSuffix); // If this image has SUV values to display, concatenate them to the text line + + if (meanStdDevSUV && meanStdDevSUV.mean !== undefined) { + var SUVtext = ' SUV: '; + meanText += SUVtext + Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__["default"])(meanStdDevSUV.mean.toFixed(2)); + stdDevText += SUVtext + Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__["default"])(meanStdDevSUV.stdDev.toFixed(2)); + } // Add these text lines to the array to be displayed in the textbox + + + textLines.push(meanText); + textLines.push(stdDevText); + } // If the area is a sane value, display it + + + if (area) { + // Determine the area suffix based on the pixel spacing in the image. + // If pixel spacing is present, use millimeters. Otherwise, use pixels. + // This uses Char code 178 for a superscript 2 + var suffix = " mm".concat(String.fromCharCode(178)); + + if (!image.rowPixelSpacing || !image.columnPixelSpacing) { + suffix = " pixels".concat(String.fromCharCode(178)); + } // Create a line of text to display the area and its units + + + var areaText = "Area: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_18__["default"])(area.toFixed(2))).concat(suffix); // Add this text line to the array to be displayed in the textbox + + textLines.push(areaText); + } + + return textLines; + } + + function textBoxAnchorPoints(handles) { + return handles; + } + } + }, { + key: "addNewMeasurement", + value: function addNewMeasurement(evt) { + var eventData = evt.detail; + + this._startDrawing(evt); + + this._addPoint(eventData); + + preventPropagation(evt); + } + }, { + key: "preMouseDownCallback", + value: function preMouseDownCallback(evt) { + var eventData = evt.detail; + + var nearby = this._pointNearHandleAllTools(eventData); + + if (eventData.event.ctrlKey) { + if (nearby !== undefined && nearby.handleNearby.hasBoundingBox) {// Ctrl + clicked textBox, do nothing but still consume event. + } else { + insertOrDelete.call(this, evt, nearby); + } + + preventPropagation(evt); + return true; + } + + return false; + } + }, { + key: "handleSelectedCallback", + value: function handleSelectedCallback(evt, toolData, handle) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + var element = evt.detail.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + + if (handle.hasBoundingBox) { + // Use default move handler. + Object(_util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_15__["moveHandleNearImagePoint"])(evt, this, toolData, handle, interactionType); + return; + } + + var config = this.configuration; + config.dragOrigin = { + x: handle.x, + y: handle.y + }; // Iterating over handles of all toolData instances to find the indices of the selected handle + + for (var toolIndex = 0; toolIndex < toolState.data.length; toolIndex++) { + var points = toolState.data[toolIndex].handles.points; + + for (var p = 0; p < points.length; p++) { + if (points[p] === handle) { + config.currentHandle = p; + config.currentTool = toolIndex; + } + } + } + + this._modifying = true; + + this._activateModify(element); // Interupt eventDispatchers + + + preventPropagation(evt); + } + /** + * Event handler for MOUSE_MOVE during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingMouseMoveCallback", + value: function _drawingMouseMoveCallback(evt) { + var eventData = evt.detail; + var currentPoints = eventData.currentPoints, + element = eventData.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var currentTool = config.currentTool; + var data = toolState.data[currentTool]; + var coords = currentPoints.canvas; // Set the mouseLocation handle + + this._getMouseLocation(eventData); + + this._checkInvalidHandleLocation(data, eventData); // Mouse move -> Polygon Mode + + + var handleNearby = this._pointNearHandle(element, data, coords); + + var points = data.handles.points; // If there is a handle nearby to snap to + // (and it's not the actual mouse handle) + + if (handleNearby !== undefined && !handleNearby.hasBoundingBox && handleNearby < points.length - 1) { + config.mouseLocation.handles.start.x = points[handleNearby].x; + config.mouseLocation.handles.start.y = points[handleNearby].y; + } // Force onImageRendered + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Event handler for MOUSE_DRAG during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingMouseDragCallback", + value: function _drawingMouseDragCallback(evt) { + if (!this.options.mouseButtonMask.includes(evt.detail.buttons)) { + return; + } + + this._drawingDrag(evt); + } + /** + * Event handler for TOUCH_DRAG during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingTouchDragCallback", + value: function _drawingTouchDragCallback(evt) { + this._drawingDrag(evt); + } + }, { + key: "_drawingDrag", + value: function _drawingDrag(evt) { + var eventData = evt.detail; + var element = eventData.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var currentTool = config.currentTool; + var data = toolState.data[currentTool]; // Set the mouseLocation handle + + this._getMouseLocation(eventData); + + this._checkInvalidHandleLocation(data, eventData); + + this._addPointPencilMode(eventData, data.handles.points); + + this._dragging = true; // Force onImageRendered + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Event handler for MOUSE_UP during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingMouseUpCallback", + value: function _drawingMouseUpCallback(evt) { + var element = evt.detail.element; + + if (!this._dragging) { + return; + } + + this._dragging = false; + var config = this.configuration; + var currentTool = config.currentTool; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var data = toolState.data[currentTool]; + + if (!freehandIntersect.end(data.handles.points) && data.canComplete) { + var lastHandlePlaced = config.currentHandle; + + this._endDrawing(element, lastHandlePlaced); + } + + preventPropagation(evt); + return; + } + /** + * Event handler for MOUSE_DOWN during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingMouseDownCallback", + value: function _drawingMouseDownCallback(evt) { + var eventData = evt.detail; + var buttons = eventData.buttons, + currentPoints = eventData.currentPoints, + element = eventData.element; + + if (!this.options.mouseButtonMask.includes(buttons)) { + return; + } + + var coords = currentPoints.canvas; + var config = this.configuration; + var currentTool = config.currentTool; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var data = toolState.data[currentTool]; + + var handleNearby = this._pointNearHandle(element, data, coords); + + if (!freehandIntersect.end(data.handles.points) && data.canComplete) { + var lastHandlePlaced = config.currentHandle; + + this._endDrawing(element, lastHandlePlaced); + } else if (handleNearby === undefined) { + this._addPoint(eventData); + } + + preventPropagation(evt); + return; + } + /** + * Event handler for TOUCH_START during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingTouchStartCallback", + value: function _drawingTouchStartCallback(evt) { + var eventData = evt.detail; + var currentPoints = eventData.currentPoints, + element = eventData.element; + var coords = currentPoints.canvas; + var config = this.configuration; + var currentTool = config.currentTool; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var data = toolState.data[currentTool]; + + var handleNearby = this._pointNearHandle(element, data, coords); + + if (!freehandIntersect.end(data.handles.points) && data.canComplete) { + var lastHandlePlaced = config.currentHandle; + + this._endDrawing(element, lastHandlePlaced); + } else if (handleNearby === undefined) { + this._addPoint(eventData); + } + + preventPropagation(evt); + return; + } + /** Ends the active drawing loop and completes the polygon. + * + * @public + * @param {Object} element - The element on which the roi is being drawn. + * @returns {null} + */ + + }, { + key: "completeDrawing", + value: function completeDrawing(element) { + if (!this._drawing) { + return; + } + + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var data = toolState.data[config.currentTool]; + + if (!freehandIntersect.end(data.handles.points) && data.handles.points.length >= 2) { + var lastHandlePlaced = config.currentHandle; + data.polyBoundingBox = {}; + + this._endDrawing(element, lastHandlePlaced); + } + } + /** + * Event handler for MOUSE_DOUBLE_CLICK during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingMouseDoubleClickCallback", + value: function _drawingMouseDoubleClickCallback(evt) { + var element = evt.detail.element; + this.completeDrawing(element); + preventPropagation(evt); + } + /** + * Event handler for DOUBLE_TAP during drawing event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_drawingDoubleTapClickCallback", + value: function _drawingDoubleTapClickCallback(evt) { + var element = evt.detail.element; + this.completeDrawing(element); + preventPropagation(evt); + } + /** + * Event handler for MOUSE_DRAG during handle drag event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_editMouseDragCallback", + value: function _editMouseDragCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + buttons = eventData.buttons; + + if (!this.options.mouseButtonMask.includes(buttons)) { + return; + } + + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var data = toolState.data[config.currentTool]; + var currentHandle = config.currentHandle; + var points = data.handles.points; + var handleIndex = -1; // Set the mouseLocation handle + + this._getMouseLocation(eventData); + + data.handles.invalidHandlePlacement = freehandIntersect.modify(points, currentHandle); + data.active = true; + data.highlight = true; + points[currentHandle].x = config.mouseLocation.handles.start.x; + points[currentHandle].y = config.mouseLocation.handles.start.y; + handleIndex = this._getPrevHandleIndex(currentHandle, points); + + if (currentHandle >= 0) { + var lastLineIndex = points[handleIndex].lines.length - 1; + var lastLine = points[handleIndex].lines[lastLineIndex]; + lastLine.x = config.mouseLocation.handles.start.x; + lastLine.y = config.mouseLocation.handles.start.y; + } // Update the image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Event handler for TOUCH_DRAG during handle drag event loop. + * + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "_editTouchDragCallback", + value: function _editTouchDragCallback(evt) { + var eventData = evt.detail; + var element = eventData.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var data = toolState.data[config.currentTool]; + var currentHandle = config.currentHandle; + var points = data.handles.points; + var handleIndex = -1; // Set the mouseLocation handle + + this._getMouseLocation(eventData); + + data.handles.invalidHandlePlacement = freehandIntersect.modify(points, currentHandle); + data.active = true; + data.highlight = true; + points[currentHandle].x = config.mouseLocation.handles.start.x; + points[currentHandle].y = config.mouseLocation.handles.start.y; + handleIndex = this._getPrevHandleIndex(currentHandle, points); + + if (currentHandle >= 0) { + var lastLineIndex = points[handleIndex].lines.length - 1; + var lastLine = points[handleIndex].lines[lastLineIndex]; + lastLine.x = config.mouseLocation.handles.start.x; + lastLine.y = config.mouseLocation.handles.start.y; + } // Update the image + + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Returns the previous handle to the current one. + * @param {Number} currentHandle - the current handle index + * @param {Array} points - the handles Array of the freehand data + * @returns {Number} - The index of the previos handle + */ + + }, { + key: "_getPrevHandleIndex", + value: function _getPrevHandleIndex(currentHandle, points) { + if (currentHandle === 0) { + return points.length - 1; + } + + return currentHandle - 1; + } + /** + * Event handler for MOUSE_UP during handle drag event loop. + * + * @private + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_editMouseUpCallback", + value: function _editMouseUpCallback(evt) { + var eventData = evt.detail; + var element = eventData.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + + this._deactivateModify(element); + + this._dropHandle(eventData, toolState); + + this._endDrawing(element); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Places a handle of the freehand tool if the new location is valid. + * If the new location is invalid the handle snaps back to its previous position. + * + * @private + * @param {Object} eventData - Data object associated with the event. + * @param {Object} toolState - The data associated with the freehand tool. + * @modifies {toolState} + * @returns {undefined} + */ + + }, { + key: "_dropHandle", + value: function _dropHandle(eventData, toolState) { + var config = this.configuration; + var currentTool = config.currentTool; + var handles = toolState.data[currentTool].handles; + var points = handles.points; // Don't allow the line being modified to intersect other lines + + if (handles.invalidHandlePlacement) { + var currentHandle = config.currentHandle; + var currentHandleData = points[currentHandle]; + var previousHandleData; + + if (currentHandle === 0) { + var lastHandleID = points.length - 1; + previousHandleData = points[lastHandleID]; + } else { + previousHandleData = points[currentHandle - 1]; + } // Snap back to previous position + + + currentHandleData.x = config.dragOrigin.x; + currentHandleData.y = config.dragOrigin.y; + previousHandleData.lines[0] = currentHandleData; + handles.invalidHandlePlacement = false; + } + } + /** + * Begining of drawing loop when tool is active and a click event happens far + * from existing handles. + * + * @private + * @param {Object} evt - The event. + * @returns {undefined} + */ + + }, { + key: "_startDrawing", + value: function _startDrawing(evt) { + var eventData = evt.detail; + var measurementData = this.createNewMeasurement(eventData); + var element = eventData.element; + var config = this.configuration; + var interactionType; + + if (evt.type === _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DOWN_ACTIVATE) { + interactionType = 'Mouse'; + } else if (evt.type === _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_START_ACTIVE) { + interactionType = 'Touch'; + } + + this._activateDraw(element, interactionType); + + this._getMouseLocation(eventData); + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["addToolState"])(element, this.name, measurementData); + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + config.currentTool = toolState.data.length - 1; + this._activeDrawingToolReference = toolState.data[config.currentTool]; + } + /** + * Adds a point on mouse click in polygon mode. + * + * @private + * @param {Object} eventData - data object associated with an event. + * @returns {undefined} + */ + + }, { + key: "_addPoint", + value: function _addPoint(eventData) { + var currentPoints = eventData.currentPoints, + element = eventData.element; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); // Get the toolState from the last-drawn polygon + + var config = this.configuration; + var data = toolState.data[config.currentTool]; + + if (data.handles.invalidHandlePlacement) { + return; + } + + var newHandleData = new FreehandHandleData(currentPoints.image); // If this is not the first handle + + if (data.handles.points.length) { + // Add the line from the current handle to the new handle + data.handles.points[config.currentHandle - 1].lines.push(currentPoints.image); + } // Add the new handle + + + data.handles.points.push(newHandleData); // Increment the current handle value + + config.currentHandle += 1; // Force onImageRendered to fire + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + this.fireModifiedEvent(element, data); + } + /** + * If in pencilMode, check the mouse position is farther than the minimum + * distance between points, then add a point. + * + * @private + * @param {Object} eventData - Data object associated with an event. + * @param {Object} points - Data object associated with the tool. + * @returns {undefined} + */ + + }, { + key: "_addPointPencilMode", + value: function _addPointPencilMode(eventData, points) { + var _this3 = this; + + var config = this.configuration; + var element = eventData.element; + var mousePoint = config.mouseLocation.handles.start; + + var handleFurtherThanMinimumSpacing = function handleFurtherThanMinimumSpacing(handle) { + return _this3._isDistanceLargerThanSpacing(element, handle, mousePoint); + }; + + if (points.every(handleFurtherThanMinimumSpacing)) { + this._addPoint(eventData); + } + } + /** + * Ends the active drawing loop and completes the polygon. + * + * @private + * @param {Object} element - The element on which the roi is being drawn. + * @param {Object} handleNearby - the handle nearest to the mouse cursor. + * @returns {undefined} + */ + + }, { + key: "_endDrawing", + value: function _endDrawing(element, handleNearby) { + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var data = toolState.data[config.currentTool]; + data.active = false; + data.highlight = false; + data.handles.invalidHandlePlacement = false; // Connect the end handle to the origin handle + + if (handleNearby !== undefined) { + var points = data.handles.points; + points[config.currentHandle - 1].lines.push(points[0]); + } + + if (this._modifying) { + this._modifying = false; + data.invalidated = true; + } // Reset the current handle + + + config.currentHandle = 0; + config.currentTool = -1; + data.canComplete = false; + + if (this._drawing) { + this._deactivateDraw(element); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + this.fireModifiedEvent(element, data); + this.fireCompletedEvent(element, data); + } + /** + * Returns a handle of a particular tool if it is close to the mouse cursor + * + * @private + * @param {Object} element - The element on which the roi is being drawn. + * @param {Object} data Data object associated with the tool. + * @param {*} coords + * @returns {Number|Object|Boolean} + */ + + }, { + key: "_pointNearHandle", + value: function _pointNearHandle(element, data, coords) { + if (data.handles === undefined || data.handles.points === undefined) { + return; + } + + if (data.visible === false) { + return; + } + + for (var i = 0; i < data.handles.points.length; i++) { + var handleCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.pixelToCanvas(element, data.handles.points[i]); + + if (_externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstoneMath.point.distance(handleCanvas, coords) < 6) { + return i; + } + } // Check to see if mouse in bounding box of textbox + + + if (data.handles.textBox) { + if (Object(_util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_16__["default"])(data.handles.textBox, coords)) { + return data.handles.textBox; + } + } + } + /** + * Returns a handle if it is close to the mouse cursor (all tools) + * + * @private + * @param {Object} eventData - data object associated with an event. + * @returns {Object} + */ + + }, { + key: "_pointNearHandleAllTools", + value: function _pointNearHandleAllTools(eventData) { + var currentPoints = eventData.currentPoints, + element = eventData.element; + var coords = currentPoints.canvas; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + + if (!toolState) { + return; + } + + var handleNearby; + + for (var toolIndex = 0; toolIndex < toolState.data.length; toolIndex++) { + handleNearby = this._pointNearHandle(element, toolState.data[toolIndex], coords); + + if (handleNearby !== undefined) { + return { + handleNearby: handleNearby, + toolIndex: toolIndex + }; + } + } + } + /** + * Gets the current mouse location and stores it in the configuration object. + * + * @private + * @param {Object} eventData The data assoicated with the event. + * @returns {undefined} + */ + + }, { + key: "_getMouseLocation", + value: function _getMouseLocation(eventData) { + var currentPoints = eventData.currentPoints, + image = eventData.image; // Set the mouseLocation handle + + var config = this.configuration; + config.mouseLocation.handles.start.x = currentPoints.image.x; + config.mouseLocation.handles.start.y = currentPoints.image.y; + Object(_util_clip_js__WEBPACK_IMPORTED_MODULE_22__["clipToBox"])(config.mouseLocation.handles.start, image); + } + /** + * Returns true if the proposed location of a new handle is invalid. + * + * @private + * @param {Object} data Data object associated with the tool. + * @param {Object} eventData The data assoicated with the event. + * @returns {Boolean} + */ + + }, { + key: "_checkInvalidHandleLocation", + value: function _checkInvalidHandleLocation(data, eventData) { + if (data.handles.points.length < 2) { + return true; + } + + var invalidHandlePlacement; + + if (this._dragging) { + invalidHandlePlacement = this._checkHandlesPencilMode(data, eventData); + } else { + invalidHandlePlacement = this._checkHandlesPolygonMode(data, eventData); + } + + data.handles.invalidHandlePlacement = invalidHandlePlacement; + } + /** + * Returns true if the proposed location of a new handle is invalid (in polygon mode). + * + * @private + * + * @param {Object} data - data object associated with the tool. + * @param {Object} eventData The data assoicated with the event. + * @returns {Boolean} + */ + + }, { + key: "_checkHandlesPolygonMode", + value: function _checkHandlesPolygonMode(data, eventData) { + var config = this.configuration; + var element = eventData.element; + var mousePoint = config.mouseLocation.handles.start; + var points = data.handles.points; + var invalidHandlePlacement = false; + data.canComplete = false; + + var mouseAtOriginHandle = this._isDistanceSmallerThanCompleteSpacingCanvas(element, points[0], mousePoint); + + if (mouseAtOriginHandle && !freehandIntersect.end(points) && points.length > 2) { + data.canComplete = true; + invalidHandlePlacement = false; + } else { + invalidHandlePlacement = freehandIntersect.newHandle(mousePoint, points); + } + + return invalidHandlePlacement; + } + /** + * Returns true if the proposed location of a new handle is invalid (in pencilMode). + * + * @private + * @param {Object} data - data object associated with the tool. + * @param {Object} eventData The data associated with the event. + * @returns {Boolean} + */ + + }, { + key: "_checkHandlesPencilMode", + value: function _checkHandlesPencilMode(data, eventData) { + var config = this.configuration; + var mousePoint = config.mouseLocation.handles.start; + var points = data.handles.points; + var invalidHandlePlacement = freehandIntersect.newHandle(mousePoint, points); + + if (invalidHandlePlacement === false) { + invalidHandlePlacement = this._invalidHandlePencilMode(data, eventData); + } + + return invalidHandlePlacement; + } + /** + * Returns true if the mouse position is far enough from previous points (in pencilMode). + * + * @private + * @param {Object} data - data object associated with the tool. + * @param {Object} eventData The data associated with the event. + * @returns {Boolean} + */ + + }, { + key: "_invalidHandlePencilMode", + value: function _invalidHandlePencilMode(data, eventData) { + var config = this.configuration; + var element = eventData.element; + var mousePoint = config.mouseLocation.handles.start; + var points = data.handles.points; + + var mouseAtOriginHandle = this._isDistanceSmallerThanCompleteSpacingCanvas(element, points[0], mousePoint); + + if (mouseAtOriginHandle) { + data.canComplete = true; + return false; + } + + data.canComplete = false; // Compare with all other handles appart from the last one + + for (var i = 1; i < points.length - 1; i++) { + if (this._isDistanceSmallerThanSpacing(element, points[i], mousePoint)) { + return true; + } + } + + return false; + } + /** + * Returns true if two points are closer than this.configuration.spacing. + * + * @private + * @param {Object} element The element on which the roi is being drawn. + * @param {Object} p1 The first point, in pixel space. + * @param {Object} p2 The second point, in pixel space. + * @returns {boolean} True if the distance is smaller than the + * allowed canvas spacing. + */ + + }, { + key: "_isDistanceSmallerThanCompleteSpacingCanvas", + value: function _isDistanceSmallerThanCompleteSpacingCanvas(element, p1, p2) { + var p1Canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.pixelToCanvas(element, p1); + var p2Canvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.pixelToCanvas(element, p2); + var completeHandleRadius; + + if (this._drawingInteractionType === 'Mouse') { + completeHandleRadius = this.configuration.completeHandleRadius; + } else if (this._drawingInteractionType === 'Touch') { + completeHandleRadius = this.configuration.completeHandleRadiusTouch; + } + + return this._compareDistanceToSpacing(element, p1Canvas, p2Canvas, '<', completeHandleRadius); + } + /** + * Returns true if two points are closer than this.configuration.spacing. + * + * @private + * @param {Object} element The element on which the roi is being drawn. + * @param {Object} p1 The first point, in pixel space. + * @param {Object} p2 The second point, in pixel space. + * @returns {boolean} True if the distance is smaller than the + * allowed canvas spacing. + */ + + }, { + key: "_isDistanceSmallerThanSpacing", + value: function _isDistanceSmallerThanSpacing(element, p1, p2) { + return this._compareDistanceToSpacing(element, p1, p2, '<'); + } + /** + * Returns true if two points are farther than this.configuration.spacing. + * + * @private + * @param {Object} element The element on which the roi is being drawn. + * @param {Object} p1 The first point, in pixel space. + * @param {Object} p2 The second point, in pixel space. + * @returns {boolean} True if the distance is smaller than the + * allowed canvas spacing. + */ + + }, { + key: "_isDistanceLargerThanSpacing", + value: function _isDistanceLargerThanSpacing(element, p1, p2) { + return this._compareDistanceToSpacing(element, p1, p2, '>'); + } + /** + * Compares the distance between two points to this.configuration.spacing. + * + * @private + * @param {Object} element The element on which the roi is being drawn. + * @param {Object} p1 The first point, in pixel space. + * @param {Object} p2 The second point, in pixel space. + * @param {string} comparison The comparison to make. + * @param {number} spacing The allowed canvas spacing + * @returns {boolean} True if the distance is smaller than the + * allowed canvas spacing. + */ + + }, { + key: "_compareDistanceToSpacing", + value: function _compareDistanceToSpacing(element, p1, p2) { + var comparison = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '>'; + var spacing = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.configuration.spacing; + + if (comparison === '>') { + return _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstoneMath.point.distance(p1, p2) > spacing; + } + + return _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstoneMath.point.distance(p1, p2) < spacing; + } + /** + * Adds drawing loop event listeners. + * + * @private + * @param {Object} element - The viewport element to add event listeners to. + * @param {string} interactionType - The interactionType used for the loop. + * @modifies {element} + * @returns {undefined} + */ + + }, { + key: "_activateDraw", + value: function _activateDraw(element) { + var interactionType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'Mouse'; + this._drawing = true; + this._drawingInteractionType = interactionType; + _store_index_js__WEBPACK_IMPORTED_MODULE_13__["state"].isMultiPartToolActive = true; + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_23__["hideToolCursor"])(this.element); // Polygonal Mode + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DOWN, this._drawingMouseDownCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_MOVE, this._drawingMouseMoveCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DOUBLE_CLICK, this._drawingMouseDoubleClickCallback); // Drag/Pencil Mode + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DRAG, this._drawingMouseDragCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._drawingMouseUpCallback); // Touch + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_START, this._drawingMouseMoveCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_START, this._drawingTouchStartCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_DRAG, this._drawingTouchDragCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_END, this._drawingMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].DOUBLE_TAP, this._drawingDoubleTapClickCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Removes drawing loop event listeners. + * + * @private + * @param {Object} element - The viewport element to add event listeners to. + * @modifies {element} + * @returns {undefined} + */ + + }, { + key: "_deactivateDraw", + value: function _deactivateDraw(element) { + this._drawing = false; + _store_index_js__WEBPACK_IMPORTED_MODULE_13__["state"].isMultiPartToolActive = false; + this._activeDrawingToolReference = null; + this._drawingInteractionType = null; + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_23__["setToolCursor"])(this.element, this.svgCursor); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DOWN, this._drawingMouseDownCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_MOVE, this._drawingMouseMoveCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DOUBLE_CLICK, this._drawingMouseDoubleClickCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DRAG, this._drawingMouseDragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._drawingMouseUpCallback); // Touch + + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_START, this._drawingTouchStartCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_DRAG, this._drawingTouchDragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_START, this._drawingMouseMoveCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_END, this._drawingMouseUpCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Adds modify loop event listeners. + * + * @private + * @param {Object} element - The viewport element to add event listeners to. + * @modifies {element} + * @returns {undefined} + */ + + }, { + key: "_activateModify", + value: function _activateModify(element) { + _store_index_js__WEBPACK_IMPORTED_MODULE_13__["state"].isToolLocked = true; + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._editMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DRAG, this._editMouseDragCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_CLICK, this._editMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_END, this._editMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_DRAG, this._editTouchDragCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Removes modify loop event listeners. + * + * @private + * @param {Object} element - The viewport element to add event listeners to. + * @modifies {element} + * @returns {undefined} + */ + + }, { + key: "_deactivateModify", + value: function _deactivateModify(element) { + _store_index_js__WEBPACK_IMPORTED_MODULE_13__["state"].isToolLocked = false; + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._editMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_DRAG, this._editMouseDragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_CLICK, this._editMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_END, this._editMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].TOUCH_DRAG, this._editTouchDragCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + }, { + key: "passiveCallback", + value: function passiveCallback(element) { + this._closeToolIfDrawing(element); + } + }, { + key: "enabledCallback", + value: function enabledCallback(element) { + this._closeToolIfDrawing(element); + } + }, { + key: "disabledCallback", + value: function disabledCallback(element) { + this._closeToolIfDrawing(element); + } + }, { + key: "_closeToolIfDrawing", + value: function _closeToolIfDrawing(element) { + if (this._drawing) { + // Actively drawing but changed mode. + var config = this.configuration; + var lastHandlePlaced = config.currentHandle; + + this._endDrawing(element, lastHandlePlaced); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + } + /** + * Fire MEASUREMENT_MODIFIED event on provided element + * @param {any} element which freehand data has been modified + * @param {any} measurementData the measurment data + * @returns {void} + */ + + }, { + key: "fireModifiedEvent", + value: function fireModifiedEvent(element, measurementData) { + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MEASUREMENT_MODIFIED; + var eventData = { + toolName: this.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__["default"])(element, eventType, eventData); + } + }, { + key: "fireCompletedEvent", + value: function fireCompletedEvent(element, measurementData) { + var eventType = _events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MEASUREMENT_COMPLETED; + var eventData = { + toolName: this.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_14__["default"])(element, eventType, eventData); + } // =================================================================== + // Public Configuration API. . + // =================================================================== + + }, { + key: "cancelDrawing", + + /** + * Ends the active drawing loop and removes the polygon. + * + * @public + * @param {Object} element - The element on which the roi is being drawn. + * @returns {null} + */ + value: function cancelDrawing(element) { + if (!this._drawing) { + return; + } + + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, this.name); + var config = this.configuration; + var data = toolState.data[config.currentTool]; + data.active = false; + data.highlight = false; + data.handles.invalidHandlePlacement = false; // Reset the current handle + + config.currentHandle = 0; + config.currentTool = -1; + data.canComplete = false; + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["removeToolState"])(element, this.name, data); + + this._deactivateDraw(element); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * New image event handler. + * + * @public + * @param {Object} evt The event. + * @returns {null} + */ + + }, { + key: "newImageCallback", + value: function newImageCallback(evt) { + var config = this.configuration; + + if (!(this._drawing && this._activeDrawingToolReference)) { + return; + } // Actively drawing but scrolled to different image. + + + var element = evt.detail.element; + var data = this._activeDrawingToolReference; + data.active = false; + data.highlight = false; + data.handles.invalidHandlePlacement = false; // Connect the end handle to the origin handle + + var points = data.handles.points; + points[config.currentHandle - 1].lines.push(points[0]); // Reset the current handle + + config.currentHandle = 0; + config.currentTool = -1; + data.canComplete = false; + + this._deactivateDraw(element); + + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + }, { + key: "spacing", + get: function get() { + return this.configuration.spacing; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehand spacing to a value other than a number.'); + } + + this.configuration.spacing = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "activeHandleRadius", + get: function get() { + return this.configuration.activeHandleRadius; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehand activeHandleRadius to a value other than a number.'); + } + + this.configuration.activeHandleRadius = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "completeHandleRadius", + get: function get() { + return this.configuration.completeHandleRadius; + }, + set: function set(value) { + if (typeof value !== 'number') { + throw new Error('Attempting to set freehand completeHandleRadius to a value other than a number.'); + } + + this.configuration.completeHandleRadius = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "alwaysShowHandles", + get: function get() { + return this.configuration.alwaysShowHandles; + }, + set: function set(value) { + if (typeof value !== 'boolean') { + throw new Error('Attempting to set freehand alwaysShowHandles to a value other than a boolean.'); + } + + this.configuration.alwaysShowHandles = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } + }, { + key: "invalidColor", + get: function get() { + return this.configuration.invalidColor; + }, + set: function set(value) { + /* + It'd be easy to check if the color was e.g. a valid rgba color. However + it'd be difficult to check if the color was a named CSS color without + bloating the library, so we don't. If the canvas can't intepret the color + it'll show up grey. + */ + this.configuration.invalidColor = value; + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } + }]); + + return FreehandRoiTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_9__["default"]); + + + +function defaultFreehandConfiguration() { + return { + mouseLocation: { + handles: { + start: { + highlight: true, + active: true + } + } + }, + spacing: 1, + activeHandleRadius: 3, + completeHandleRadius: 6, + completeHandleRadiusTouch: 28, + alwaysShowHandles: false, + invalidColor: 'crimson', + currentHandle: 0, + currentTool: -1, + drawHandles: true + }; +} + +function preventPropagation(evt) { + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); +} + +/***/ }), + +/***/ "./tools/annotation/LengthTool.js": +/*!****************************************!*\ + !*** ./tools/annotation/LengthTool.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return LengthTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../util/lineSegDistance.js */ "./util/lineSegDistance.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); + + + + + + // State + + + + // Drawing + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_14__["getLogger"])('tools:annotation:LengthTool'); +/** + * @public + * @class LengthTool + * @memberof Tools.Annotation + * @classdesc Tool for measuring distances. + * @extends Tools.Base.BaseAnnotationTool + */ + +var LengthTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(LengthTool, _BaseAnnotationTool); + + function LengthTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, LengthTool); + + var defaultProps = { + name: 'Length', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__["lengthCursor"], + configuration: { + drawHandles: true + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(LengthTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_16__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(LengthTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + var _eventData$currentPoi = eventData.currentPoints.image, + x = _eventData$currentPoi.x, + y = _eventData$currentPoi.y; + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + start: { + x: x, + y: y, + highlight: true, + active: false + }, + end: { + x: x, + y: y, + highlight: true, + active: true + }, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + /** + * + * + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {Boolean} + */ + + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + var hasStartAndEndHandles = data && data.handles && data.handles.start && data.handles.end; + var validParameters = hasStartAndEndHandles; + + if (!validParameters) { + logger.warn("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + return false; + } + + if (data.visible === false) { + return false; + } + + return Object(_util_lineSegDistance_js__WEBPACK_IMPORTED_MODULE_12__["default"])(element, data.handles.start, data.handles.end, coords) < 25; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_15__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; // Set rowPixelSpacing and columnPixelSpacing to 1 if they are undefined (or zero) + + + var dx = (data.handles.end.x - data.handles.start.x) * (colPixelSpacing || 1); + var dy = (data.handles.end.y - data.handles.start.y) * (rowPixelSpacing || 1); // Calculate the length, and create the text variable with the millimeters or pixels suffix + + var length = Math.sqrt(dx * dx + dy * dy); // Store the length inside the tool for outside access + + data.length = length; + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_6__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_9__["getNewContext"])(eventData.canvasContext.canvas); + var image = eventData.image, + element = eventData.element; + + var _getPixelSpacing2 = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_15__["default"])(image), + rowPixelSpacing = _getPixelSpacing2.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing2.colPixelSpacing; + + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_7__["default"].getToolWidth(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_9__["draw"])(context, function (context) { + // Configurable shadow + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_9__["setShadow"])(context, _this2.configuration); + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_8__["default"].getColorIfActive(data); // Draw the measurement line + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_9__["drawLine"])(context, element, data.handles.start, data.handles.end, { + color: color + }); // Draw the handles + + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + + if (_this2.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_11__["default"])(context, eventData, data.handles, handleOptions); + } + + if (!data.handles.textBox.hasMoved) { + var coords = { + x: Math.max(data.handles.start.x, data.handles.end.x) + }; // Depending on which handle has the largest x-value, + // Set the y-value for the text box + + if (coords.x === data.handles.start.x) { + coords.y = data.handles.start.y; + } else { + coords.y = data.handles.end.y; + } + + data.handles.textBox.x = coords.x; + data.handles.textBox.y = coords.y; + } // Move the textbox slightly to the right and upwards + // So that it sits beside the length tool handle + + + var xOffset = 10; // Update textbox stats + + if (data.invalidated === true) { + if (data.length) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } + + var text = textBoxText(data, rowPixelSpacing, colPixelSpacing); + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_10__["default"])(context, element, data.handles.textBox, text, data.handles, textBoxAnchorPoints, color, lineWidth, xOffset, true); + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + function textBoxText(data, rowPixelSpacing, colPixelSpacing) { + // Set the length text suffix depending on whether or not pixelSpacing is available + var suffix = 'mm'; + + if (!rowPixelSpacing || !colPixelSpacing) { + suffix = 'pixels'; + } + + data.unit = suffix; + return "".concat(data.length.toFixed(2), " ").concat(suffix); + } + + function textBoxAnchorPoints(handles) { + var midpoint = { + x: (handles.start.x + handles.end.x) / 2, + y: (handles.start.y + handles.end.y) / 2 + }; + return [handles.start, midpoint, handles.end]; + } + } + }]); + + return LengthTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_5__["default"]); + + + +/***/ }), + +/***/ "./tools/annotation/ProbeTool.js": +/*!***************************************!*\ + !*** ./tools/annotation/ProbeTool.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ProbeTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../stateManagement/textStyle.js */ "./stateManagement/textStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../util/getRGBPixels.js */ "./util/getRGBPixels.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_throttle__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/throttle */ "./util/throttle.js"); + + + + + + + // State + + + + // Drawing + + + + // Utilities + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_16__["getLogger"])('tools:annotation:ProbeTool'); +/** + * @public + * @class ProbeTool + * @memberof Tools.Annotation + * @classdesc Tool which provides a probe of the image data at the + * desired position. + * @extends Tools.Base.BaseAnnotationTool + */ + +var ProbeTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(ProbeTool, _BaseAnnotationTool); + + function ProbeTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ProbeTool); + + var defaultProps = { + name: 'Probe', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__["probeCursor"], + configuration: { + drawHandles: true + } + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(ProbeTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle__WEBPACK_IMPORTED_MODULE_17__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(ProbeTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + } + } + }; + } + /** + * + * + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {Boolean} + */ + + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + var hasEndHandle = data && data.handles && data.handles.end; + var validParameters = hasEndHandle; + + if (!validParameters) { + logger.warn("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + } + + if (!validParameters || data.visible === false) { + return false; + } + + var probeCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); + return _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstoneMath.point.distance(probeCoords, coords) < 5; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var x = Math.round(data.handles.end.x); + var y = Math.round(data.handles.end.y); + var stats = {}; + + if (x >= 0 && y >= 0 && x < image.columns && y < image.rows) { + stats.x = x; + stats.y = y; + + if (image.color) { + stats.storedPixels = Object(_util_getRGBPixels_js__WEBPACK_IMPORTED_MODULE_13__["default"])(element, x, y, 1, 1); + } else { + stats.storedPixels = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getStoredPixels(element, x, y, 1, 1); + stats.sp = stats.storedPixels[0]; + stats.mo = stats.sp * image.slope + image.intercept; + stats.suv = Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_14__["default"])(image, stats.sp); + } + } + + data.cachedStats = stats; + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var eventData = evt.detail; + var handleRadius = this.configuration.handleRadius; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["getNewContext"])(eventData.canvasContext.canvas); + var image = eventData.image, + element = eventData.element; + var fontHeight = _stateManagement_textStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getFontSize(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["draw"])(context, function (context) { + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + + if (_this2.configuration.drawHandles) { + // Draw the handles + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_12__["default"])(context, eventData, data.handles, { + handleRadius: handleRadius, + color: color + }); + } // Update textbox stats + + + if (data.invalidated === true) { + if (data.cachedStats) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } + + var text, str; + var _data$cachedStats = data.cachedStats, + x = _data$cachedStats.x, + y = _data$cachedStats.y, + storedPixels = _data$cachedStats.storedPixels, + sp = _data$cachedStats.sp, + mo = _data$cachedStats.mo, + suv = _data$cachedStats.suv; + + if (x >= 0 && y >= 0 && x < image.columns && y < image.rows) { + text = "".concat(x, ", ").concat(y); + + if (image.color) { + str = "R: ".concat(storedPixels[0], " G: ").concat(storedPixels[1], " B: ").concat(storedPixels[2]); + } else { + // Draw text + str = "SP: ".concat(sp, " MO: ").concat(parseFloat(mo.toFixed(3))); + + if (suv) { + str += " SUV: ".concat(parseFloat(suv.toFixed(3))); + } + } // Coords for text + + + var coords = { + // Translate the x/y away from the cursor + x: data.handles.end.x + 3, + y: data.handles.end.y - 3 + }; + var textCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(eventData.element, coords); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__["default"])(context, str, textCoords.x, textCoords.y + fontHeight + 5, color); + Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__["default"])(context, text, textCoords.x, textCoords.y, color); + } + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + } + }]); + + return ProbeTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + + + +/***/ }), + +/***/ "./tools/annotation/RectangleRoiTool.js": +/*!**********************************************!*\ + !*** ./tools/annotation/RectangleRoiTool.js ***! + \**********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return RectangleRoiTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../util/calculateSUV.js */ "./util/calculateSUV.js"); +/* harmony import */ var _util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../util/getROITextBoxCoords.js */ "./util/getROITextBoxCoords.js"); +/* harmony import */ var _util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./../../util/numbersWithCommas.js */ "./util/numbersWithCommas.js"); +/* harmony import */ var _util_throttle_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./../../util/throttle.js */ "./util/throttle.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); + + + + + + + // State + + + + // Drawing + + // Util + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_16__["getLogger"])('tools:annotation:RectangleRoiTool'); +/** + * @public + * @class RectangleRoiTool + * @memberof Tools.Annotation + * @classdesc Tool for drawing rectangular regions of interest, and measuring + * the statistics of the enclosed pixels. + * @extends Tools.Base.BaseAnnotationTool + */ + +var RectangleRoiTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(RectangleRoiTool, _BaseAnnotationTool); + + function RectangleRoiTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, RectangleRoiTool); + + var defaultProps = { + name: 'RectangleRoi', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + drawHandles: true // showMinMax: false, + // showHounsfieldUnits: true + + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_15__["rectangleRoiCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(RectangleRoiTool).call(this, props, defaultProps)); + _this.throttledUpdateCachedStats = Object(_util_throttle_js__WEBPACK_IMPORTED_MODULE_14__["default"])(_this.updateCachedStats, 110); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(RectangleRoiTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var goodEventData = eventData && eventData.currentPoints && eventData.currentPoints.image; + + if (!goodEventData) { + logger.error("required eventData not supplied to tool ".concat(this.name, "'s createNewMeasurement")); + return; + } + + return { + visible: true, + active: true, + color: undefined, + invalidated: true, + handles: { + start: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: false + }, + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true + }, + initialRotation: eventData.viewport.rotation, + textBox: { + active: false, + hasMoved: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + } + } + }; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords, interactionType) { + var hasStartAndEndHandles = data && data.handles && data.handles.start && data.handles.end; + var validParameters = hasStartAndEndHandles; + + if (!validParameters) { + logger.warn("invalid parameters supplied to tool ".concat(this.name, "'s pointNearTool")); + } + + if (!validParameters || data.visible === false) { + return false; + } + + var distance = interactionType === 'mouse' ? 15 : 25; + var startCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.start); + var endCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.pixelToCanvas(element, data.handles.end); + var rect = { + left: Math.min(startCanvas.x, endCanvas.x), + top: Math.min(startCanvas.y, endCanvas.y), + width: Math.abs(startCanvas.x - endCanvas.x), + height: Math.abs(startCanvas.y - endCanvas.y) + }; + var distanceToPoint = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstoneMath.rect.distanceToPoint(rect, coords); + return distanceToPoint < distance; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; + var modality = seriesModule.modality; + var pixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__["default"])(image); + + var stats = _calculateStats(image, element, data.handles, modality, pixelSpacing); + + data.cachedStats = stats; + data.invalidated = false; + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var _this2 = this; + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_7__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } + + var eventData = evt.detail; + var image = eventData.image, + element = eventData.element; + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"].getToolWidth(); + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["getNewContext"])(eventData.canvasContext.canvas); + + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_17__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; // Meta + + + var seriesModule = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.metaData.get('generalSeriesModule', image.imageId) || {}; // Pixel Spacing + + var modality = seriesModule.modality; + var hasPixelSpacing = rowPixelSpacing && colPixelSpacing; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["draw"])(context, function (context) { + // If we have tool data for this element - iterate over each set and draw it + for (var i = 0; i < toolData.data.length; i++) { + var data = toolData.data[i]; + + if (data.visible === false) { + continue; + } // Configure + + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["setShadow"])(context, _this2.configuration); // Draw + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawRect"])(context, element, data.handles.start, data.handles.end, { + color: color + }, 'pixel', data.handles.initialRotation); + + if (_this2.configuration.drawHandles) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawHandles"])(context, eventData, data.handles, handleOptions); + } // Update textbox stats + + + if (data.invalidated === true) { + if (data.cachedStats) { + _this2.throttledUpdateCachedStats(image, element, data); + } else { + _this2.updateCachedStats(image, element, data); + } + } // Default to textbox on right side of ROI + + + if (!data.handles.textBox.hasMoved) { + var defaultCoords = Object(_util_getROITextBoxCoords_js__WEBPACK_IMPORTED_MODULE_12__["default"])(eventData.viewport, data.handles); + Object.assign(data.handles.textBox, defaultCoords); + } + + var textBoxAnchorPoints = function textBoxAnchorPoints(handles) { + return _findTextBoxAnchorPoints(handles.start, handles.end); + }; + + var textBoxContent = _createTextBoxContent(context, image.color, data.cachedStats, modality, hasPixelSpacing, _this2.configuration); + + data.unit = _getUnit(modality, _this2.configuration.showHounsfieldUnits); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["drawLinkedTextBox"])(context, element, data.handles.textBox, textBoxContent, data.handles, textBoxAnchorPoints, color, lineWidth, 10, true); + } + }); + } + }]); + + return RectangleRoiTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * TODO: This is the same method (+ GetPixels) for the other ROIs + * TODO: The pixel filtering is the unique bit + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {{ left: number, top: number, width: number, height: number}} + */ + + + + +function _getRectangleImageCoordinates(startHandle, endHandle) { + return { + left: Math.min(startHandle.x, endHandle.x), + top: Math.min(startHandle.y, endHandle.y), + width: Math.abs(startHandle.x - endHandle.x), + height: Math.abs(startHandle.y - endHandle.y) + }; +} +/** + * + * + * @param {*} image + * @param {*} element + * @param {*} handles + * @param {*} modality + * @param {*} pixelSpacing + * @returns {Object} The Stats object + */ + + +function _calculateStats(image, element, handles, modality, pixelSpacing) { + // Retrieve the bounds of the rectangle in image coordinates + var roiCoordinates = _getRectangleImageCoordinates(handles.start, handles.end); // Retrieve the array of pixels that the rectangle bounds cover + + + var pixels = _externalModules_js__WEBPACK_IMPORTED_MODULE_5__["default"].cornerstone.getPixels(element, roiCoordinates.left, roiCoordinates.top, roiCoordinates.width, roiCoordinates.height); // Calculate the mean & standard deviation from the pixels and the rectangle details + + var roiMeanStdDev = _calculateRectangleStats(pixels, roiCoordinates); + + var meanStdDevSUV; + + if (modality === 'PT') { + meanStdDevSUV = { + mean: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, roiMeanStdDev.mean, true) || 0, + stdDev: Object(_util_calculateSUV_js__WEBPACK_IMPORTED_MODULE_11__["default"])(image, roiMeanStdDev.stdDev, true) || 0 + }; + } // Calculate the image area from the rectangle dimensions and pixel spacing + + + var area = roiCoordinates.width * (pixelSpacing.colPixelSpacing || 1) * (roiCoordinates.height * (pixelSpacing.rowPixelSpacing || 1)); + return { + area: area || 0, + count: roiMeanStdDev.count || 0, + mean: roiMeanStdDev.mean || 0, + variance: roiMeanStdDev.variance || 0, + stdDev: roiMeanStdDev.stdDev || 0, + min: roiMeanStdDev.min || 0, + max: roiMeanStdDev.max || 0, + meanStdDevSUV: meanStdDevSUV + }; +} +/** + * + * + * @param {*} sp + * @param {*} rectangle + * @returns {{ count, number, mean: number, variance: number, stdDev: number, min: number, max: number }} + */ + + +function _calculateRectangleStats(sp, rectangle) { + var sum = 0; + var sumSquared = 0; + var count = 0; + var index = 0; + var min = sp ? sp[0] : null; + var max = sp ? sp[0] : null; + + for (var y = rectangle.top; y < rectangle.top + rectangle.height; y++) { + for (var x = rectangle.left; x < rectangle.left + rectangle.width; x++) { + sum += sp[index]; + sumSquared += sp[index] * sp[index]; + min = Math.min(min, sp[index]); + max = Math.max(max, sp[index]); + count++; // TODO: Wouldn't this just be sp.length? + + index++; + } + } + + if (count === 0) { + return { + count: count, + mean: 0.0, + variance: 0.0, + stdDev: 0.0, + min: 0.0, + max: 0.0 + }; + } + + var mean = sum / count; + var variance = sumSquared / count - mean * mean; + return { + count: count, + mean: mean, + variance: variance, + stdDev: Math.sqrt(variance), + min: min, + max: max + }; +} +/** + * + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {Array.<{x: number, y: number}>} + */ + + +function _findTextBoxAnchorPoints(startHandle, endHandle) { + var _getRectangleImageCoo = _getRectangleImageCoordinates(startHandle, endHandle), + left = _getRectangleImageCoo.left, + top = _getRectangleImageCoo.top, + width = _getRectangleImageCoo.width, + height = _getRectangleImageCoo.height; + + return [{ + // Top middle point of rectangle + x: left + width / 2, + y: top + }, { + // Left middle point of rectangle + x: left, + y: top + height / 2 + }, { + // Bottom middle point of rectangle + x: left + width / 2, + y: top + height + }, { + // Right middle point of rectangle + x: left + width, + y: top + height / 2 + }]; +} +/** + * + * + * @param {*} area + * @param {*} hasPixelSpacing + * @returns {string} The formatted label for showing area + */ + + +function _formatArea(area, hasPixelSpacing) { + // This uses Char code 178 for a superscript 2 + var suffix = hasPixelSpacing ? " mm".concat(String.fromCharCode(178)) : " px".concat(String.fromCharCode(178)); + return "Area: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__["default"])(area.toFixed(2))).concat(suffix); +} + +function _getUnit(modality, showHounsfieldUnits) { + return modality === 'CT' && showHounsfieldUnits !== false ? 'HU' : ''; +} +/** + * TODO: This is identical to EllipticalROI's same fn + * TODO: We may want to make this a utility for ROIs with these values? + * + * @param {*} context + * @param {*} isColorImage + * @param {*} { area, mean, stdDev, min, max, meanStdDevSUV } + * @param {*} modality + * @param {*} hasPixelSpacing + * @param {*} [options={}] + * @returns {string[]} + */ + + +function _createTextBoxContent(context, isColorImage, _ref, modality, hasPixelSpacing) { + var area = _ref.area, + mean = _ref.mean, + stdDev = _ref.stdDev, + min = _ref.min, + max = _ref.max, + meanStdDevSUV = _ref.meanStdDevSUV; + var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {}; + var showMinMax = options.showMinMax || false; + var textLines = []; + var otherLines = []; + + if (!isColorImage) { + var hasStandardUptakeValues = meanStdDevSUV && meanStdDevSUV.mean !== 0; + + var unit = _getUnit(modality, options.showHounsfieldUnits); + + var meanString = "Mean: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__["default"])(mean.toFixed(2)), " ").concat(unit); + var stdDevString = "Std Dev: ".concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__["default"])(stdDev.toFixed(2)), " ").concat(unit); // If this image has SUV values to display, concatenate them to the text line + + if (hasStandardUptakeValues) { + var SUVtext = ' SUV: '; + var meanSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__["default"])(meanStdDevSUV.mean.toFixed(2))); + var stdDevSuvString = "".concat(SUVtext).concat(Object(_util_numbersWithCommas_js__WEBPACK_IMPORTED_MODULE_13__["default"])(meanStdDevSUV.stdDev.toFixed(2))); + var targetStringLength = Math.floor(context.measureText("".concat(stdDevString, " ")).width); + + while (context.measureText(meanString).width < targetStringLength) { + meanString += ' '; + } + + otherLines.push("".concat(meanString).concat(meanSuvString)); + otherLines.push("".concat(stdDevString, " ").concat(stdDevSuvString)); + } else { + otherLines.push("".concat(meanString, " ").concat(stdDevString)); + } + + if (showMinMax) { + var minString = "Min: ".concat(min, " ").concat(unit); + var maxString = "Max: ".concat(max, " ").concat(unit); + + var _targetStringLength = hasStandardUptakeValues ? Math.floor(context.measureText("".concat(stdDevString, " ")).width) : Math.floor(context.measureText("".concat(meanString, " ")).width); + + while (context.measureText(minString).width < _targetStringLength) { + minString += ' '; + } + + otherLines.push("".concat(minString).concat(maxString)); + } + } + + textLines.push(_formatArea(area, hasPixelSpacing)); + otherLines.forEach(function (x) { + return textLines.push(x); + }); + return textLines; +} + +/***/ }), + +/***/ "./tools/annotation/TextMarkerTool.js": +/*!********************************************!*\ + !*** ./tools/annotation/TextMarkerTool.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return TextMarkerTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base/BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./../../drawing/drawTextBox.js */ "./drawing/drawTextBox.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../cursors/index.js */ "./tools/cursors/index.js"); + + + + + + + + + + + + + + +/** + * @public + * @class TextMarkerTool + * @memberof Tools.Annotation + * + * @classdesc Tool for annotating an image with text markers. + * @extends Tools.Base.BaseAnnotationTool + */ + +var TextMarkerTool = +/*#__PURE__*/ +function (_BaseAnnotationTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(TextMarkerTool, _BaseAnnotationTool); + + function TextMarkerTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, TextMarkerTool); + + var defaultProps = { + name: 'TextMarker', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + markers: [], + current: '', + ascending: true, + loop: false, + changeTextCallback: changeTextCallback + }, + svgCursor: _cursors_index_js__WEBPACK_IMPORTED_MODULE_13__["textMarkerCursor"] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(TextMarkerTool).call(this, props, defaultProps)); + _this.touchPressCallback = _this._changeText.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + _this.doubleClickCallback = _this._changeText.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(TextMarkerTool, [{ + key: "createNewMeasurement", + value: function createNewMeasurement(eventData) { + var config = this.configuration; + + if (!config.current) { + return; + } // Create the measurement data for this tool with the end handle activated + + + var measurementData = { + visible: true, + active: true, + text: config.current, + color: undefined, + handles: { + end: { + x: eventData.currentPoints.image.x, + y: eventData.currentPoints.image.y, + highlight: true, + active: true, + hasBoundingBox: true + } + } + }; // Create a rectangle representing the image + + var imageRect = { + left: 0, + top: 0, + width: eventData.image.width, + height: eventData.image.height + }; // Check if the current handle is outside the image, + // If it is, prevent the handle creation + + if (!_externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.point.insideRect(measurementData.handles.end, imageRect)) { + return; + } // Update the current marker for the next marker + + + var currentIndex = config.markers.indexOf(config.current); + var increment = config.ascending ? 1 : -1; + currentIndex += increment; + + if (currentIndex >= config.markers.length) { + currentIndex = config.loop ? 0 : -1; + } else if (currentIndex < 0) { + currentIndex = config.loop ? config.markers.length : -1; + } + + config.current = config.markers[currentIndex]; + return measurementData; + } + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + if (data.visible === false) { + return false; + } + + if (!data.handles.end.boundingBox) { + return; + } + + var distanceToPoint = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstoneMath.rect.distanceToPoint(data.handles.end.boundingBox, coords); + var insideBoundingBox = Object(_util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_8__["default"])(data.handles.end, coords); + return distanceToPoint < 10 || insideBoundingBox; + } + }, { + key: "updateCachedStats", + value: function updateCachedStats() {// Implementing to satisfy BaseAnnotationTool + } + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + var config = this.configuration; // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_12__["getToolState"])(eventData.element, this.name); + + if (!toolData) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["getNewContext"])(eventData.canvasContext.canvas); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_9__["default"].getColorIfActive(data); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_10__["setShadow"])(context, config); + var textCoords = _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.pixelToCanvas(eventData.element, data.handles.end); + var options = { + centering: { + x: true, + y: true + } + }; + data.handles.end.boundingBox = Object(_drawing_drawTextBox_js__WEBPACK_IMPORTED_MODULE_11__["default"])(context, data.text, textCoords.x, textCoords.y - 10, color, options); + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + } + }, { + key: "_changeText", + value: function _changeText(evt) { + var eventData = evt.detail; + var element = eventData.element, + currentPoints = eventData.currentPoints; + var data; + + function doneChangingTextCallback(data, updatedText, deleteTool) { + if (deleteTool === true) { + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_12__["removeToolState"])(element, this.name, data); + } else { + data.text = updatedText; + } + + data.active = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(element); + } + + var config = this.configuration; + var coords = currentPoints.canvas; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_12__["getToolState"])(element, this.name); // Now check to see if there is a handle we can move + + if (!toolData) { + return; + } + + for (var i = 0; i < toolData.data.length; i++) { + data = toolData.data[i]; + + if (this.pointNearTool(element, data, coords)) { + data.active = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_7__["default"].cornerstone.updateImage(element); // Allow relabelling via a callback + + config.changeTextCallback(data, eventData, doneChangingTextCallback); + evt.stopImmediatePropagation(); + evt.preventDefault(); + evt.stopPropagation(); + return; + } + } + } + }]); + + return TextMarkerTool; +}(_base_BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); +/** + * This function is a callback to be overwriten in order to provide the wanted feature + * modal, overlay, popup or any kind of interaction with the user to be able to update + * the text marker label. + * + * @param {Object} data + * @param {Object} eventData + * @param {doneChangingTextCallback} doneChangingTextCallback + * @returns {void} + */ + + + + +var changeTextCallback = function changeTextCallback(data, eventData, doneChangingTextCallback) { + // eslint-disable-next-line no-alert + doneChangingTextCallback(data, prompt('Change your annotation:')); +}; +/** + * @callback doneChangingTextCallback + * @param {Object} data + * @param {string} text - The new text + */ + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/addNewMeasurement.js": +/*!*****************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/addNewMeasurement.js ***! + \*****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../events.js */ "./events.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../../manipulators/anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../util/triggerEvent.js */ "./util/triggerEvent.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _utils_updatePerpendicularLineHandles_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils/updatePerpendicularLineHandles.js */ "./tools/annotation/bidirectionalTool/utils/updatePerpendicularLineHandles.js"); + + + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt, interactionType) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image, + buttons = eventData.buttons; + var config = this.configuration; + + if (checkPixelSpacing(image)) { + return; + } + + var measurementData = this.createNewMeasurement(eventData); + + var doneCallback = function doneCallback() { + measurementData.active = false; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + }; // Associate this data with this imageId so we can render it and manipulate it + + + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["addToolState"])(element, this.name, measurementData); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + var timestamp = new Date().getTime(); + var _measurementData$hand = measurementData.handles, + end = _measurementData$hand.end, + perpendicularStart = _measurementData$hand.perpendicularStart; + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_2__["moveNewHandle"])(eventData, this.name, measurementData, end, {}, interactionType, function () { + var handles = measurementData.handles, + longestDiameter = measurementData.longestDiameter, + shortestDiameter = measurementData.shortestDiameter; + var hasHandlesOutside = Object(_manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData, handles); + var longestDiameterSize = parseFloat(longestDiameter) || 0; + var shortestDiameterSize = parseFloat(shortestDiameter) || 0; + var isTooSmal = longestDiameterSize < 1 || shortestDiameterSize < 1; + var isTooFast = new Date().getTime() - timestamp < 150; + + if (hasHandlesOutside || isTooSmal || isTooFast) { + // Delete the measurement + measurementData.cancelled = true; + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["removeToolState"])(element, _this.name, measurementData); + } else { + // Set lesionMeasurementData Session + config.getMeasurementLocationCallback(measurementData, eventData, doneCallback); + } // Update perpendicular line and disconnect it from the long-line + + + Object(_utils_updatePerpendicularLineHandles_js__WEBPACK_IMPORTED_MODULE_8__["default"])(eventData, measurementData); + perpendicularStart.locked = false; + measurementData.invalidated = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_6__["default"])(element, buttons, interactionType); + + if (activeTool instanceof _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_7__["default"]) { + activeTool.updateCachedStats(image, element, measurementData); + } + + var modifiedEventData = { + toolType: _this.name, + element: element, + measurementData: measurementData + }; + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].MEASUREMENT_MODIFIED, modifiedEventData); + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].MEASUREMENT_COMPLETED, modifiedEventData); + }); +}); + +var checkPixelSpacing = function checkPixelSpacing(image) { + var imagePlane = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.metaData.get('imagePlaneModule', image.imageId); + var rowPixelSpacing = image.rowPixelSpacing; + var colPixelSpacing = image.columnPixelSpacing; + + if (imagePlane) { + rowPixelSpacing = imagePlane.rowPixelSpacing || imagePlane.rowImagePixelSpacing; + colPixelSpacing = imagePlane.columnPixelSpacing || imagePlane.colImagePixelSpacing; + } // LT-29 Disable Target Measurements when pixel spacing is not available + + + return !rowPixelSpacing || !colPixelSpacing; +}; + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/createNewMeasurement.js": +/*!********************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/createNewMeasurement.js ***! + \********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var getHandle = function getHandle(x, y, index) { + var extraAttributes = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; + return Object.assign({ + x: x, + y: y, + index: index, + drawnIndependently: false, + allowedOutsideImage: false, + highlight: true, + active: false + }, extraAttributes); +}; + +/* harmony default export */ __webpack_exports__["default"] = (function (mouseEventData) { + var _mouseEventData$curre = mouseEventData.currentPoints.image, + x = _mouseEventData$curre.x, + y = _mouseEventData$curre.y; // Create the measurement data for this tool with the end handle activated + + var measurementData = { + toolType: this.name, + isCreating: true, + visible: true, + active: true, + invalidated: true, + handles: { + start: getHandle(x, y, 0), + end: getHandle(x, y, 1, { + active: true + }), + perpendicularStart: getHandle(x, y, 2, { + locked: true + }), + perpendicularEnd: getHandle(x, y, 3), + textBox: getHandle(x - 50, y - 70, null, { + highlight: false, + hasMoved: true, + active: false, + movesIndependently: false, + drawnIndependently: true, + allowedOutsideImage: true, + hasBoundingBox: true + }) + }, + longestDiameter: 0, + shortestDiameter: 0 + }; + return measurementData; +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/handleSelectedCallback.js": +/*!**********************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/handleSelectedCallback.js ***! + \**********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (evt, toolData, handle) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + + if (interactionType === 'touch') { + this.handleSelectedTouchCallback(evt); + } else { + this.handleSelectedMouseCallback(evt); + } +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/handleSelectedMouseCallback.js": +/*!***************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/handleSelectedMouseCallback.js ***! + \***************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../store/index.js */ "./store/index.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../../events.js */ "./events.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../../manipulators/anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _moveHandle_moveHandle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./moveHandle/moveHandle.js */ "./tools/annotation/bidirectionalTool/moveHandle/moveHandle.js"); +/* harmony import */ var _invertHandles_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./invertHandles.js */ "./tools/annotation/bidirectionalTool/invertHandles.js"); +/* harmony import */ var _store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../store/setToolCursor.js */ "./store/setToolCursor.js"); + + +/* jshint -W083 */ + + + + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element; + var data; + var distanceThreshold = _store_index_js__WEBPACK_IMPORTED_MODULE_2__["state"].clickProximity; + + var handleDoneMove = function handleDoneMove(handle) { + data.invalidated = true; + + if (Object(_manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_5__["default"])(eventData, data.handles)) { + // Delete the measurement + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["removeToolState"])(element, _this.name, data); + } // Update the handles to keep selected state + + + if (handle) { + handle.moving = false; + handle.selected = true; + } + + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_10__["setToolCursor"])(_this.element, _this.svgCursor); + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].MOUSE_MOVE, _this._moveCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_START, _this._moveCallback); + }; + + var coords = eventData.startPoints.canvas; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // Now check to see if there is a handle we can move + + + var _loop = function _loop(i) { + data = toolData.data[i]; + var handleParams = [element, data.handles, coords, distanceThreshold]; + var handle = _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__["default"].apply(void 0, handleParams); + + if (handle) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].MOUSE_MOVE, _this._moveCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_START, _this._moveCallback); + data.active = true; + unselectAllHandles(data.handles); + handle.moving = true; // Invert handles if needed + + handle = Object(_invertHandles_js__WEBPACK_IMPORTED_MODULE_9__["default"])(eventData, data, handle); + /* Hide the cursor to improve precision while resizing the line or set to move + if dragging text box + */ + + if (!handle.hasBoundingBox) { + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_10__["hideToolCursor"])(_this.element); + } + + Object(_moveHandle_moveHandle_js__WEBPACK_IMPORTED_MODULE_8__["default"])(eventData, _this.name, data, handle, function () { + return handleDoneMove(handle); + }); + preventPropagation(evt); + return { + v: true + }; + } + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(_ret) === "object") return _ret.v; + } + + var getDoneMovingCallback = function getDoneMovingCallback(handles) { + return function () { + setHandlesMovingState(handles, false); + handleDoneMove(); + }; + }; + + for (var i = 0; i < toolData.data.length; i++) { + data = toolData.data[i]; + + if (this.pointNearTool(element, data, coords, 'mouse')) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].MOUSE_MOVE, this._moveCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_START, this._moveCallback); + data.active = true; + unselectAllHandles(data.handles); + setHandlesMovingState(data.handles, true); + var doneMovingCallback = getDoneMovingCallback(data.handles); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__["moveAllHandles"])(eventData, this.name, data, null, { + deleteIfHandleOutsideImage: true, + preventHandleOutsideImage: false + }, 'mouse', doneMovingCallback); + preventPropagation(evt); + return true; + } + } +}); // Clear the selected state for the given handles object + +var unselectAllHandles = function unselectAllHandles(handles) { + var imageNeedsUpdate = false; + Object.keys(handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + handles[handleKey].selected = false; + imageNeedsUpdate = handles[handleKey].active || imageNeedsUpdate; + handles[handleKey].active = false; + }); + return imageNeedsUpdate; +}; + +var setHandlesMovingState = function setHandlesMovingState(handles, state) { + Object.keys(handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + handles[handleKey].moving = state; + }); +}; + +var preventPropagation = function preventPropagation(evt) { + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); +}; + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/handleSelectedTouchCallback.js": +/*!***************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/handleSelectedTouchCallback.js ***! + \***************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../store/index.js */ "./store/index.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../../events.js */ "./events.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../../manipulators/anyHandlesOutsideImage.js */ "./manipulators/anyHandlesOutsideImage.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../../manipulators/index.js */ "./manipulators/index.js"); +/* harmony import */ var _moveHandle_touchMoveHandle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./moveHandle/touchMoveHandle.js */ "./tools/annotation/bidirectionalTool/moveHandle/touchMoveHandle.js"); + + +/* jshint -W083 */ + + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element; + var data; + var distanceThreshold = _store_index_js__WEBPACK_IMPORTED_MODULE_2__["state"].touchProximity; + + var handleDoneMove = function handleDoneMove(handle) { + data.invalidated = true; + + if (Object(_manipulators_anyHandlesOutsideImage_js__WEBPACK_IMPORTED_MODULE_5__["default"])(eventData, data.handles)) { + // Delete the measurement + Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["removeToolState"])(element, _this.name, data); + } // Update the handles to keep selected state + + + if (handle) { + handle.moving = false; + handle.selected = true; + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone.updateImage(element); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_DRAG, _this._moveCallback); + }; + + var coords = eventData.startPoints.canvas; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_4__["getToolState"])(evt.currentTarget, this.name); + + if (!toolData) { + return; + } // Now check to see if there is a handle we can move + + + var _loop = function _loop(i) { + data = toolData.data[i]; + var handleParams = [element, data.handles, coords, distanceThreshold]; + var handle = _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_6__["default"].apply(void 0, handleParams); + + if (handle) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_DRAG, _this._moveCallback); + data.active = true; + unselectAllHandles(data.handles); + handle.moving = true; + Object(_moveHandle_touchMoveHandle_js__WEBPACK_IMPORTED_MODULE_8__["default"])(eventData, _this.name, data, handle, function () { + return handleDoneMove(handle); + }); + preventPropagation(evt); + return { + v: true + }; + } + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(_ret) === "object") return _ret.v; + } + + var getDoneMovingCallback = function getDoneMovingCallback(handles) { + return function () { + setHandlesMovingState(handles, false); + handleDoneMove(); + }; + }; + + for (var i = 0; i < toolData.data.length; i++) { + data = toolData.data[i]; + + if (this.pointNearTool(element, data, coords, 'touch')) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_3__["default"].TOUCH_DRAG, this._moveCallback); + data.active = true; + unselectAllHandles(data.handles); + setHandlesMovingState(data.handles, true); + var doneMovingCallback = getDoneMovingCallback(data.handles); + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_7__["moveAllHandles"])(eventData, this.name, data, null, { + deleteIfHandleOutsideImage: true, + preventHandleOutsideImage: false + }, 'touch', doneMovingCallback); + preventPropagation(evt); + return true; + } + } +}); // Clear the selected state for the given handles object + +var unselectAllHandles = function unselectAllHandles(handles) { + var imageNeedsUpdate = false; + Object.keys(handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + handles[handleKey].selected = false; + imageNeedsUpdate = handles[handleKey].active || imageNeedsUpdate; + handles[handleKey].active = false; + }); + return imageNeedsUpdate; +}; + +var setHandlesMovingState = function setHandlesMovingState(handles, state) { + Object.keys(handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + handles[handleKey].moving = state; + }); +}; + +var preventPropagation = function preventPropagation(evt) { + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); +}; + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/invertHandles.js": +/*!*************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/invertHandles.js ***! + \*************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return invertHandles; }); +var swapAttribute = function swapAttribute(a, b, attribute) { + var originalA = a[attribute]; + var originalB = b[attribute]; + a[attribute] = originalB; + b[attribute] = originalA; +}; + +var swapHandles = function swapHandles(a, b) { + swapAttribute(a, b, 'x'); + swapAttribute(a, b, 'y'); + swapAttribute(a, b, 'moving'); + swapAttribute(a, b, 'hover'); + swapAttribute(a, b, 'active'); + swapAttribute(a, b, 'selected'); +}; + +function invertHandles(eventData, measurementData, handle) { + var _eventData$image = eventData.image, + rowPixelSpacing = _eventData$image.rowPixelSpacing, + columnPixelSpacing = _eventData$image.columnPixelSpacing; + var handles = measurementData.handles; + var start = handles.start, + end = handles.end, + perpendicularStart = handles.perpendicularStart, + perpendicularEnd = handles.perpendicularEnd; // Calculate the long axis length + + var dx = (start.x - end.x) * (columnPixelSpacing || 1); + var dy = (start.y - end.y) * (rowPixelSpacing || 1); + var length = Math.sqrt(dx * dx + dy * dy); // Calculate the short axis length + + var wx = (perpendicularStart.x - perpendicularEnd.x) * (columnPixelSpacing || 1); + var wy = (perpendicularStart.y - perpendicularEnd.y) * (rowPixelSpacing || 1); + var width = Math.sqrt(wx * wx + wy * wy) || 0; + + if (width > length) { + swapHandles(start, end); + swapHandles(start, perpendicularStart); + swapHandles(end, perpendicularEnd); + return Object.values(handles).find(function (h) { + return h.moving === true; + }); + } + + return handle; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/mouseMoveCallback.js": +/*!*****************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/mouseMoveCallback.js ***! + \*****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolCoordinates_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../stateManagement/toolCoordinates.js */ "./stateManagement/toolCoordinates.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); + + + + // Replaces the cornerstoneTools.handleActivator function by skiping the active handle comparison + +var handleActivator = function handleActivator(element, handles, canvasPoint) { + var distanceThreshold = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 6; + var nearbyHandle = Object(_manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element, handles, canvasPoint, distanceThreshold); + var handleActivatorChanged = false; + Object.keys(handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + var handle = handles[handleKey]; + var newActiveState = handle === nearbyHandle; + + if (handle.active !== newActiveState) { + handleActivatorChanged = true; + } + + handle.active = newActiveState; + }); + return handleActivatorChanged; +}; // MouseMoveCallback is used to hide handles when mouse is away + + +/* harmony default export */ __webpack_exports__["default"] = (function (event) { + var _this = this; + + var eventData = event.detail; + var element = eventData.element; + _stateManagement_toolCoordinates_js__WEBPACK_IMPORTED_MODULE_1__["default"].setCoords(eventData); // If we have no tool data for this element, do nothing + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_3__["getToolState"])(element, this.name); + + if (!toolData) { + return; + } // We have tool data, search through all data and see if we can activate a handle + + + var imageNeedsUpdate = false; + + var _loop = function _loop(i) { + // Get the cursor position in canvas coordinates + var coords = eventData.currentPoints.canvas; + var data = toolData.data[i]; + var handleActivatorChanged = handleActivator(element, data.handles, coords); + Object.keys(data.handles).forEach(function (handleKey) { + if (handleKey === 'textBox') { + return; + } + + var handle = data.handles[handleKey]; + handle.hover = handle.active; + }); + + if (handleActivatorChanged) { + imageNeedsUpdate = true; + } + + var nearTool = _this.pointNearTool(element, data, coords, 'mouse'); + + var nearToolAndInactive = nearTool && !data.active; + var notNearToolAndActive = !nearTool && data.active; + + if (nearToolAndInactive || notNearToolAndActive) { + data.active = !data.active; + imageNeedsUpdate = true; + } + }; + + for (var i = 0; i < toolData.data.length; i++) { + _loop(i); + } // Handle activation status changed, redraw the image + + + if (imageNeedsUpdate === true) { + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + } +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/getBaseData.js": +/*!**********************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/getBaseData.js ***! + \**********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getBaseData; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _utils_getDistanceWithPixelSpacing_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/getDistanceWithPixelSpacing.js */ "./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js"); + + + +function createLine(startPoint, endPoint) { + return { + start: startPoint, + end: endPoint + }; +} +/** + * Extract and group the base data to be used on bidirectional tool lines + * moving. + * + * @param {*} measurementData Data from current bidirectional tool measurement + * @param {*} eventData Data object associated with the event + * @param {*} fixedPoint Point that is not being moved in line + * + * @returns {*} Grouped that needed for lines moving + */ + + +function getBaseData(measurementData, eventData, fixedPoint) { + var lineSegment = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment; + var _measurementData$hand = measurementData.handles, + start = _measurementData$hand.start, + end = _measurementData$hand.end, + perpendicularStart = _measurementData$hand.perpendicularStart, + perpendicularEnd = _measurementData$hand.perpendicularEnd; + var _eventData$image = eventData.image, + _eventData$image$colu = _eventData$image.columnPixelSpacing, + columnPixelSpacing = _eventData$image$colu === void 0 ? 1 : _eventData$image$colu, + _eventData$image$rowP = _eventData$image.rowPixelSpacing, + rowPixelSpacing = _eventData$image$rowP === void 0 ? 1 : _eventData$image$rowP; + var longLine = createLine(start, end); + var perpendicularLine = createLine(perpendicularStart, perpendicularEnd); + var intersection = lineSegment.intersectLine(longLine, perpendicularLine); + var distanceToFixed = Object(_utils_getDistanceWithPixelSpacing_js__WEBPACK_IMPORTED_MODULE_1__["default"])(columnPixelSpacing, rowPixelSpacing, fixedPoint, intersection); + return { + columnPixelSpacing: columnPixelSpacing, + // Width that a pixel represents in mm + rowPixelSpacing: rowPixelSpacing, + // Height that a pixel represents in mm + start: start, + // Start point of the long line + end: end, + // End point of the long line + perpendicularStart: perpendicularStart, + // Start point of the perpendicular line + perpendicularEnd: perpendicularEnd, + // End point of the perpendicular line + longLine: longLine, + // Long line object containing the start and end points + intersection: intersection, + // Intersection point between long and perpendicular lines + distanceToFixed: distanceToFixed, + // Distance from intersection to the fixed point + fixedPoint: fixedPoint // Opposite point from the handle that is being moved + + }; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/moveHandle.js": +/*!*********************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/moveHandle.js ***! + \*********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../store/index.js */ "./store/index.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../../../events.js */ "./events.js"); +/* harmony import */ var _setHandlesPosition_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./setHandlesPosition.js */ "./tools/annotation/bidirectionalTool/moveHandle/setHandlesPosition.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (mouseEventData, toolType, data, handle, doneMovingCallback, preventHandleOutsideImage) { + var element = mouseEventData.element, + image = mouseEventData.image, + buttons = mouseEventData.buttons; + var distanceFromTool = { + x: handle.x - mouseEventData.currentPoints.image.x, + y: handle.y - mouseEventData.currentPoints.image.y + }; + + var _dragCallback = function _dragCallback(event) { + var eventData = event.detail; + handle.hasMoved = true; + + if (handle.index === undefined || handle.index === null) { + handle.x = eventData.currentPoints.image.x + distanceFromTool.x; + handle.y = eventData.currentPoints.image.y + distanceFromTool.y; + } else { + Object(_setHandlesPosition_js__WEBPACK_IMPORTED_MODULE_3__["default"])(handle, eventData, data, distanceFromTool); + } + + if (preventHandleOutsideImage) { + handle.x = Math.max(handle.x, 0); + handle.x = Math.min(handle.x, eventData.image.width); + handle.y = Math.max(handle.y, 0); + handle.y = Math.min(handle.y, eventData.image.height); + } + + data.invalidated = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_4__["default"])(element, buttons, 'mouse'); + + if (activeTool instanceof _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_5__["default"]) { + activeTool.updateCachedStats(image, element, data); + } + + var modifiedEventData = { + toolType: toolType, + element: element, + measurementData: data + }; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.triggerEvent(element, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MEASUREMENT_MODIFIED, modifiedEventData); + }; + + handle.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked = true; + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_DRAG, _dragCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG, _dragCallback); + var currentImage = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getImage(element); + + var imageRenderedHandler = function imageRenderedHandler() { + var newImage = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getImage(element); // Check if the rendered image changed during measurement modifying and stop it if so + + if (newImage.imageId !== currentImage.imageId) { + interactionEndCallback(); + } + }; // Bind the event listener for image rendering + + + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.IMAGE_RENDERED, imageRenderedHandler); + + var interactionEndCallback = function interactionEndCallback() { + handle.active = false; + _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked = false; + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.EVENTS.IMAGE_RENDERED, imageRenderedHandler); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_DRAG, _dragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_UP, interactionEndCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_CLICK, interactionEndCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG, _dragCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG_END, interactionEndCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TAP, interactionEndCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } + }; + + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_UP, interactionEndCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MOUSE_CLICK, interactionEndCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG_END, interactionEndCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TAP, interactionEndCallback); +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/moveLongLine.js": +/*!************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/moveLongLine.js ***! + \************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return moveLongLine; }); +/* harmony import */ var _utils_getDistanceWithPixelSpacing_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getDistanceWithPixelSpacing.js */ "./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js"); +/* harmony import */ var _getBaseData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../getBaseData.js */ "./tools/annotation/bidirectionalTool/moveHandle/getBaseData.js"); +/* harmony import */ var _updatePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updatePerpendicularLine.js */ "./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/updatePerpendicularLine.js"); + + + +/** + * Move the long line updating the perpendicular line handles position. + * + * @param {*} proposedPoint Point that was moved in bidirectional tool + * @param {*} measurementData Data from current bidirectional tool measurement + * @param {*} eventData Data object associated with the event + * @param {*} fixedPoint Point that is not being moved in long line + * + * @returns {boolean} True if perpendicular handles were updated, false if not + */ + +function moveLongLine(proposedPoint, measurementData, eventData, fixedPoint) { + var baseData = Object(_getBaseData_js__WEBPACK_IMPORTED_MODULE_1__["default"])(measurementData, eventData, fixedPoint); + var columnPixelSpacing = baseData.columnPixelSpacing, + rowPixelSpacing = baseData.rowPixelSpacing, + distanceToFixed = baseData.distanceToFixed; // Calculate the length of the new line, considering the proposed point + + var newLineLength = Object(_utils_getDistanceWithPixelSpacing_js__WEBPACK_IMPORTED_MODULE_0__["default"])(columnPixelSpacing, rowPixelSpacing, fixedPoint, proposedPoint); // Stop here if the handle tries to move before the intersection point + + if (newLineLength <= distanceToFixed) { + return false; + } // Calculate the new intersection point + + + var distanceRatio = distanceToFixed / newLineLength; + var newIntersection = { + x: fixedPoint.x + (proposedPoint.x - fixedPoint.x) * distanceRatio, + y: fixedPoint.y + (proposedPoint.y - fixedPoint.y) * distanceRatio + }; // Calculate and the new position of the perpendicular handles + + var newLine = Object(_updatePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_2__["default"])(baseData, newIntersection); // Update the perpendicular line handles + + measurementData.handles.perpendicularStart.x = newLine.start.x; + measurementData.handles.perpendicularStart.y = newLine.start.y; + measurementData.handles.perpendicularEnd.x = newLine.end.x; + measurementData.handles.perpendicularEnd.y = newLine.end.y; + return true; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/updatePerpendicularLine.js": +/*!***********************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/updatePerpendicularLine.js ***! + \***********************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return updatePerpendicularLine; }); +/* harmony import */ var _utils_getLineVector__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getLineVector */ "./tools/annotation/bidirectionalTool/utils/getLineVector.js"); +/* harmony import */ var _utils_getDistanceWithPixelSpacing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getDistanceWithPixelSpacing */ "./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js"); + + +/** + * Returns the updated line object that will be used to change the position of + * the perpendicular line handles. + * + * @param {*} baseData Base data for bidirectional line moving + * @param {*} mid Middle point considering the proposed point + * + * @returns {*} Returns a line object with the updated handles position + */ + +function updatePerpendicularLine(baseData, mid) { + var columnPixelSpacing = baseData.columnPixelSpacing, + rowPixelSpacing = baseData.rowPixelSpacing, + start = baseData.start, + perpendicularStart = baseData.perpendicularStart, + perpendicularEnd = baseData.perpendicularEnd, + intersection = baseData.intersection, + fixedPoint = baseData.fixedPoint; // Get the original distance from perpendicular start handle to intersection + + var distancePS = Object(_utils_getDistanceWithPixelSpacing__WEBPACK_IMPORTED_MODULE_1__["default"])(columnPixelSpacing, rowPixelSpacing, perpendicularStart, intersection); // Get the original distance from perpendicular end handle to intersection + + var distancePE = Object(_utils_getDistanceWithPixelSpacing__WEBPACK_IMPORTED_MODULE_1__["default"])(columnPixelSpacing, rowPixelSpacing, perpendicularEnd, intersection); // Inclination of the perpendicular line + + var vector = Object(_utils_getLineVector__WEBPACK_IMPORTED_MODULE_0__["default"])(columnPixelSpacing, rowPixelSpacing, fixedPoint, mid); // Define the multiplier + + var multiplier = fixedPoint === start ? 1 : -1; + var rowMultiplier = multiplier * rowPixelSpacing; + var columnMultiplier = multiplier * columnPixelSpacing; // Calculate and return the new position of the perpendicular handles + + return { + start: { + x: mid.x + vector.y * distancePS * rowMultiplier, + y: mid.y + vector.x * distancePS * columnMultiplier * -1 + }, + end: { + x: mid.x + vector.y * distancePE * rowMultiplier * -1, + y: mid.y + vector.x * distancePE * columnMultiplier + } + }; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getDirectionMultiplier.js": +/*!*******************************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getDirectionMultiplier.js ***! + \*******************************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getDirectionMultiplier; }); +/* harmony import */ var _isPerpendicularEndFixed_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isPerpendicularEndFixed.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/isPerpendicularEndFixed.js"); + +/** + * Return the direction multiplier based on the perpendicular fixed point and + * the end point. + * + * @param {*} fixedPoint Point that is not being moved in perpendicular line + * @param {*} perpendicularEnd The end point of the perpencular line + * + * @returns {number} Returns -1 if end point is not being moved or 1 if it is + */ + +function getDirectionMultiplier(fixedPoint, perpendicularEnd) { + return Object(_isPerpendicularEndFixed_js__WEBPACK_IMPORTED_MODULE_0__["default"])(fixedPoint, perpendicularEnd) ? -1 : 1; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getHelperLine.js": +/*!**********************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getHelperLine.js ***! + \**********************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getHelperLine; }); +/* harmony import */ var _getDirectionMultiplier__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getDirectionMultiplier */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getDirectionMultiplier.js"); + +/** + * Creates a helper line with the same inclination as the perpendicular line + * but having the start point as the proposed point. + * This line will start in the proposed point and will grow in the long line + * direction trying to cross it to enable finding the intersection point + * between the long line and this new perpendicular line. + * + * @param {*} baseData Base data for bidirectional line moving + * @param {*} proposedPoint Point that was moved in bidirectional tool + * @param {*} vector Vector with the perpendicular line inclination + * + * @returns {*} Returns the helper line containing the start and end points + */ + +function getHelperLine(baseData, proposedPoint, vector) { + var columnPixelSpacing = baseData.columnPixelSpacing, + rowPixelSpacing = baseData.rowPixelSpacing, + perpendicularEnd = baseData.perpendicularEnd, + fixedPoint = baseData.fixedPoint; // Create a helper line to find the intesection point in the long line + + var highNumber = Number.MAX_SAFE_INTEGER; // Get the multiplier + + var multiplier = Object(_getDirectionMultiplier__WEBPACK_IMPORTED_MODULE_0__["default"])(fixedPoint, perpendicularEnd) * highNumber; + return { + start: proposedPoint, + end: { + x: proposedPoint.x + vector.y * rowPixelSpacing * multiplier, + y: proposedPoint.y + vector.x * columnPixelSpacing * multiplier * -1 + } + }; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getMovingPoint.js": +/*!***********************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getMovingPoint.js ***! + \***********************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getMovingPoint; }); +/* harmony import */ var _isPerpendicularEndFixed_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isPerpendicularEndFixed.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/isPerpendicularEndFixed.js"); + +/** + * Utility function to return the point that is the opposite of the fixed + * point (the point not being moved in the bidirectional tool's perpendicular + * line). + * + * @param {*} fixedPoint Point that is not being moved in perpendicular line + * @param {*} perpendicularStart The start point of the perpencular line + * @param {*} perpendicularEnd The end point of the perpencular line + * + * @returns {*} Point that is being moved in perpendicular line + */ + +function getMovingPoint(fixedPoint, perpendicularStart, perpendicularEnd) { + if (Object(_isPerpendicularEndFixed_js__WEBPACK_IMPORTED_MODULE_0__["default"])(fixedPoint, perpendicularEnd)) { + return perpendicularStart; + } + + return perpendicularEnd; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/isPerpendicularEndFixed.js": +/*!********************************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/isPerpendicularEndFixed.js ***! + \********************************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return isPerpendicularEndFixed; }); +/** + * Returns true if the end point is the point that is not being moved in the + * perpendicular line. + * + * @param {*} fixedPoint Point that is not being moved in perpendicular line + * @param {*} perpendicularEnd The end point of the perpencular line + * + * @returns {boolean} Returns true if the fixed point is the end point + */ +function isPerpendicularEndFixed(fixedPoint, perpendicularEnd) { + return fixedPoint === perpendicularEnd; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/lineHasLength.js": +/*!**********************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/lineHasLength.js ***! + \**********************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return lineHasLength; }); +/* harmony import */ var _utils_getDistanceWithPixelSpacing__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getDistanceWithPixelSpacing */ "./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js"); + +/** + * Returns true if the given line object has its length different from zero, + * considering the column and row pixel spacings. + * + * @param {number} columnPixelSpacing Width that a pixel represents in mm + * @param {number} rowPixelSpacing Height that a pixel represents in mm + * @param {*} line Line object that will have its length calculated + * + * @returns {boolean} Returns true if line has any length + */ + +function lineHasLength(columnPixelSpacing, rowPixelSpacing, line) { + var lineLength = Object(_utils_getDistanceWithPixelSpacing__WEBPACK_IMPORTED_MODULE_0__["default"])(columnPixelSpacing, rowPixelSpacing, line.start, line.end); + return lineLength !== 0; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/movePerpendicularLine.js": +/*!******************************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/movePerpendicularLine.js ***! + \******************************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return movePerpendicularLine; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _utils_getLineVector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getLineVector.js */ "./tools/annotation/bidirectionalTool/utils/getLineVector.js"); +/* harmony import */ var _getBaseData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../getBaseData.js */ "./tools/annotation/bidirectionalTool/moveHandle/getBaseData.js"); +/* harmony import */ var _lineHasLength_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lineHasLength.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/lineHasLength.js"); +/* harmony import */ var _getHelperLine_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getHelperLine.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getHelperLine.js"); +/* harmony import */ var _updatePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./updatePerpendicularLine.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/updatePerpendicularLine.js"); + + + + + + +/** + * Move the perpendicular line updating the opposite handle position. + * + * @param {*} proposedPoint Point that was moved in bidirectional tool + * @param {*} measurementData Data from current bidirectional tool measurement + * @param {*} eventData Data object associated with the event + * @param {*} fixedPoint Point that is not being moved in long line + * + * @returns {boolean} True if perpendicular handles were updated, false if not + */ + +function movePerpendicularLine(proposedPoint, measurementData, eventData, fixedPoint) { + var lineSegment = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment; + var baseData = Object(_getBaseData_js__WEBPACK_IMPORTED_MODULE_2__["default"])(measurementData, eventData, fixedPoint); + var columnPixelSpacing = baseData.columnPixelSpacing, + rowPixelSpacing = baseData.rowPixelSpacing, + start = baseData.start, + longLine = baseData.longLine, + intersection = baseData.intersection; // Stop here if the long line has no length + + if (!Object(_lineHasLength_js__WEBPACK_IMPORTED_MODULE_3__["default"])(columnPixelSpacing, rowPixelSpacing, longLine)) { + return false; + } // Inclination of the perpendicular line + + + var vector = Object(_utils_getLineVector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(columnPixelSpacing, rowPixelSpacing, start, intersection); // Get a helper line to calculate the intersection + + var helperLine = Object(_getHelperLine_js__WEBPACK_IMPORTED_MODULE_4__["default"])(baseData, proposedPoint, vector); // Find the new intersection in the long line + + var newIntersection = lineSegment.intersectLine(longLine, helperLine); // Stop the flow here if there's no intersection point between lines + + if (!newIntersection) { + return false; + } // Calculate and the new position of the perpendicular handles + + + var newLine = Object(_updatePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_5__["default"])(baseData, newIntersection, helperLine, vector); // Change the position of the perpendicular line handles + + measurementData.handles.perpendicularStart.x = newLine.start.x; + measurementData.handles.perpendicularStart.y = newLine.start.y; + measurementData.handles.perpendicularEnd.x = newLine.end.x; + measurementData.handles.perpendicularEnd.y = newLine.end.y; + return true; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/updatePerpendicularLine.js": +/*!********************************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/updatePerpendicularLine.js ***! + \********************************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return updatePerpendicularLine; }); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _getDirectionMultiplier__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getDirectionMultiplier */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getDirectionMultiplier.js"); +/* harmony import */ var _getMovingPoint__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getMovingPoint */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/getMovingPoint.js"); + + + +/** + * Returns the updated line object that will be used to change the position of + * the perpendicular line handles. + * + * @param {*} baseData Base data for bidirectional line moving + * @param {*} mid Middle point considering the proposed point + * @param {*} helperLine Line based on proposed point that crosses long line + * @param {*} vector Vector with the perpendicular line inclination + * + * @returns {*} Returns a line object with the updated handles position + */ + +function updatePerpendicularLine(baseData, mid, helperLine, vector) { + var _ref; + + var columnPixelSpacing = baseData.columnPixelSpacing, + rowPixelSpacing = baseData.rowPixelSpacing, + fixedPoint = baseData.fixedPoint, + perpendicularStart = baseData.perpendicularStart, + perpendicularEnd = baseData.perpendicularEnd, + distanceToFixed = baseData.distanceToFixed; // Get the multiplier + + var multiplier = Object(_getDirectionMultiplier__WEBPACK_IMPORTED_MODULE_1__["default"])(fixedPoint, perpendicularEnd) * distanceToFixed; // Define the moving point + + var movingPoint = Object(_getMovingPoint__WEBPACK_IMPORTED_MODULE_2__["default"])(fixedPoint, perpendicularStart, perpendicularEnd); // Get the object keys for moving and fixed points + + var isMovingStart = movingPoint === perpendicularStart; + var movingKey = isMovingStart ? 'start' : 'end'; + var fixedKey = isMovingStart ? 'end' : 'start'; // Calculate and return the new position of the perpendicular handles + + return _ref = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_ref, movingKey, { + x: helperLine.start.x, + y: helperLine.start.y + }), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_ref, fixedKey, { + x: mid.x + vector.y * rowPixelSpacing * multiplier, + y: mid.y + vector.x * columnPixelSpacing * multiplier * -1 + }), _ref; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/setHandlesPosition.js": +/*!*****************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/setHandlesPosition.js ***! + \*****************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _moveLongLine_moveLongLine_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./moveLongLine/moveLongLine.js */ "./tools/annotation/bidirectionalTool/moveHandle/moveLongLine/moveLongLine.js"); +/* harmony import */ var _movePerpendicularLine_movePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./movePerpendicularLine/movePerpendicularLine.js */ "./tools/annotation/bidirectionalTool/moveHandle/movePerpendicularLine/movePerpendicularLine.js"); + + + // Sets position of handles(start, end, perpendicularStart, perpendicularEnd) + +/* harmony default export */ __webpack_exports__["default"] = (function (handle, eventData, data, distanceFromTool) { + var movedPoint; + var outOfBounds; + var result; + var intersection; + var d1; + var d2; + var longLine = {}; + var perpendicularLine = {}; + var proposedPoint = { + x: eventData.currentPoints.image.x + distanceFromTool.x, + y: eventData.currentPoints.image.y + distanceFromTool.y + }; + + if (handle.index === 0) { + // If long-axis start point is moved + result = Object(_moveLongLine_moveLongLine_js__WEBPACK_IMPORTED_MODULE_1__["default"])(proposedPoint, data, eventData, data.handles.end); + + if (result) { + handle.x = proposedPoint.x; + handle.y = proposedPoint.y; + } else { + eventData.currentPoints.image.x = handle.x; + eventData.currentPoints.image.y = handle.y; + } + } else if (handle.index === 1) { + // If long-axis end point is moved + result = Object(_moveLongLine_moveLongLine_js__WEBPACK_IMPORTED_MODULE_1__["default"])(proposedPoint, data, eventData, data.handles.start); + + if (result) { + handle.x = proposedPoint.x; + handle.y = proposedPoint.y; + } else { + eventData.currentPoints.image.x = handle.x; + eventData.currentPoints.image.y = handle.y; + } + } else if (handle.index === 2) { + outOfBounds = false; // If perpendicular start point is moved + + longLine.start = { + x: data.handles.start.x, + y: data.handles.start.y + }; + longLine.end = { + x: data.handles.end.x, + y: data.handles.end.y + }; + perpendicularLine.start = { + x: data.handles.perpendicularEnd.x, + y: data.handles.perpendicularEnd.y + }; + perpendicularLine.end = { + x: proposedPoint.x, + y: proposedPoint.y + }; + intersection = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment.intersectLine(longLine, perpendicularLine); + + if (!intersection) { + perpendicularLine.end = { + x: data.handles.perpendicularStart.x, + y: data.handles.perpendicularStart.y + }; + intersection = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment.intersectLine(longLine, perpendicularLine); + d1 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance(intersection, data.handles.start); + d2 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance(intersection, data.handles.end); + + if (!intersection || d1 < 3 || d2 < 3) { + outOfBounds = true; + } + } + + movedPoint = false; + + if (!outOfBounds) { + movedPoint = Object(_movePerpendicularLine_movePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_2__["default"])(proposedPoint, data, eventData, data.handles.perpendicularEnd); + + if (!movedPoint) { + eventData.currentPoints.image.x = data.handles.perpendicularStart.x; + eventData.currentPoints.image.y = data.handles.perpendicularStart.y; + } + } + } else if (handle.index === 3) { + outOfBounds = false; // If perpendicular end point is moved + + longLine.start = { + x: data.handles.start.x, + y: data.handles.start.y + }; + longLine.end = { + x: data.handles.end.x, + y: data.handles.end.y + }; + perpendicularLine.start = { + x: data.handles.perpendicularStart.x, + y: data.handles.perpendicularStart.y + }; + perpendicularLine.end = { + x: proposedPoint.x, + y: proposedPoint.y + }; + intersection = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment.intersectLine(longLine, perpendicularLine); + + if (!intersection) { + perpendicularLine.end = { + x: data.handles.perpendicularEnd.x, + y: data.handles.perpendicularEnd.y + }; + intersection = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment.intersectLine(longLine, perpendicularLine); + d1 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance(intersection, data.handles.start); + d2 = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance(intersection, data.handles.end); + + if (!intersection || d1 < 3 || d2 < 3) { + outOfBounds = true; + } + } + + movedPoint = false; + + if (!outOfBounds) { + movedPoint = Object(_movePerpendicularLine_movePerpendicularLine_js__WEBPACK_IMPORTED_MODULE_2__["default"])(proposedPoint, data, eventData, data.handles.perpendicularStart); + + if (!movedPoint) { + eventData.currentPoints.image.x = data.handles.perpendicularEnd.x; + eventData.currentPoints.image.y = data.handles.perpendicularEnd.y; + } + } + } +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/moveHandle/touchMoveHandle.js": +/*!**************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/moveHandle/touchMoveHandle.js ***! + \**************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../store/index.js */ "./store/index.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../../../events.js */ "./events.js"); +/* harmony import */ var _setHandlesPosition_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./setHandlesPosition.js */ "./tools/annotation/bidirectionalTool/moveHandle/setHandlesPosition.js"); +/* harmony import */ var _util_getActiveTool__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../util/getActiveTool */ "./util/getActiveTool.js"); +/* harmony import */ var _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../base/BaseAnnotationTool */ "./tools/base/BaseAnnotationTool.js"); + + + + + + +var touchEndEvents = [_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_END, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG_END, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_PINCH, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_PRESS, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TAP]; +/* harmony default export */ __webpack_exports__["default"] = (function (mouseEventData, toolType, data, handle, doneMovingCallback, preventHandleOutsideImage) { + var element = mouseEventData.element, + image = mouseEventData.image, + buttons = mouseEventData.buttons; + var distanceFromTool = { + x: handle.x - mouseEventData.currentPoints.image.x, + y: handle.y - mouseEventData.currentPoints.image.y + }; + + var touchDragCallback = function touchDragCallback(event) { + var eventData = event.detail; + handle.hasMoved = true; + + if (handle.index === undefined || handle.index === null) { + handle.x = eventData.currentPoints.image.x + distanceFromTool.x; + handle.y = eventData.currentPoints.image.y + distanceFromTool.y; + } else { + Object(_setHandlesPosition_js__WEBPACK_IMPORTED_MODULE_3__["default"])(handle, eventData, data, distanceFromTool); + } + + if (preventHandleOutsideImage) { + handle.x = Math.max(handle.x, 0); + handle.x = Math.min(handle.x, eventData.image.width); + handle.y = Math.max(handle.y, 0); + handle.y = Math.min(handle.y, eventData.image.height); + } + + data.invalidated = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + var activeTool = Object(_util_getActiveTool__WEBPACK_IMPORTED_MODULE_4__["default"])(element, buttons, 'touch'); + + if (activeTool instanceof _base_BaseAnnotationTool__WEBPACK_IMPORTED_MODULE_5__["default"]) { + activeTool.updateCachedStats(image, element, data); + } + + var modifiedEventData = { + toolType: toolType, + element: element, + measurementData: data + }; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.triggerEvent(element, _events_js__WEBPACK_IMPORTED_MODULE_2__["default"].MEASUREMENT_MODIFIED, modifiedEventData); + }; + + handle.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked = true; + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG, touchDragCallback); + + var touchEndCallback = function touchEndCallback() { + handle.active = false; + _store_index_js__WEBPACK_IMPORTED_MODULE_1__["state"].isToolLocked = false; + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_2__["default"].TOUCH_DRAG, touchDragCallback); + touchEndEvents.forEach(function (eventType) { + element.removeEventListener(eventType, touchEndCallback); + }); + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.updateImage(element); + + if (typeof doneMovingCallback === 'function') { + doneMovingCallback(); + } + }; + + touchEndEvents.forEach(function (eventType) { + element.addEventListener(eventType, touchEndCallback); + }); +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/pointNearTool.js": +/*!*************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/pointNearTool.js ***! + \*************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../store/index.js */ "./store/index.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../../util/pointInsideBoundingBox.js */ "./util/pointInsideBoundingBox.js"); + + + + +var pointNearPerpendicular = function pointNearPerpendicular(element, handles, coords, distanceThreshold) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone; + var cornerstoneMath = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath; + var lineSegment = { + start: cornerstone.pixelToCanvas(element, handles.perpendicularStart), + end: cornerstone.pixelToCanvas(element, handles.perpendicularEnd) + }; + var distanceToPoint = cornerstoneMath.lineSegment.distanceToPoint(lineSegment, coords); + return distanceToPoint < distanceThreshold; +}; + +/* harmony default export */ __webpack_exports__["default"] = (function (element, data, coords) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone; + var cornerstoneMath = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstoneMath; + var handles = data.handles; + var lineSegment = { + start: cornerstone.pixelToCanvas(element, handles.start), + end: cornerstone.pixelToCanvas(element, handles.end) + }; + var distanceToPoint = cornerstoneMath.lineSegment.distanceToPoint(lineSegment, coords); + + if (Object(_util_pointInsideBoundingBox_js__WEBPACK_IMPORTED_MODULE_2__["default"])(handles.textBox, coords)) { + return true; + } + + var distanceThreshold = interactionType === 'mouse' ? _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].clickProximity : _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].touchProximity; + + if (pointNearPerpendicular(element, handles, coords, distanceThreshold)) { + return true; + } + + return distanceToPoint < distanceThreshold; +}); + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/renderToolData.js": +/*!**************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/renderToolData.js ***! + \**************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../../../drawing/drawHandles.js */ "./drawing/drawHandles.js"); +/* harmony import */ var _utils_updatePerpendicularLineHandles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/updatePerpendicularLineHandles.js */ "./tools/annotation/bidirectionalTool/utils/updatePerpendicularLineHandles.js"); +/* harmony import */ var _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../../stateManagement/toolStyle.js */ "./stateManagement/toolStyle.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../../drawing/index.js */ "./drawing/index.js"); +/* harmony import */ var _drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../../drawing/drawLinkedTextBox.js */ "./drawing/drawLinkedTextBox.js"); +/* harmony import */ var _util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../util/getPixelSpacing */ "./util/getPixelSpacing.js"); + + +/* eslint no-loop-func: 0 */ +// --> OFF + + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = (function (evt) { + var _this = this; + + var eventData = evt.detail; + var element = eventData.element, + canvasContext = eventData.canvasContext, + image = eventData.image; + var _this$configuration = this.configuration, + handleRadius = _this$configuration.handleRadius, + drawHandlesOnHover = _this$configuration.drawHandlesOnHover; // If we have no toolData for this element, return immediately as there is nothing to do + + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_5__["getToolState"])(element, this.name); + + if (!toolData) { + return; + } + + var _getPixelSpacing = Object(_util_getPixelSpacing__WEBPACK_IMPORTED_MODULE_8__["default"])(image), + rowPixelSpacing = _getPixelSpacing.rowPixelSpacing, + colPixelSpacing = _getPixelSpacing.colPixelSpacing; // LT-29 Disable Target Measurements when pixel spacing is not available + + + if (!rowPixelSpacing || !colPixelSpacing) { + return; + } // We have tool data for this element - iterate over each one and draw it + + + var context = Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_6__["getNewContext"])(canvasContext.canvas); + var color; + var activeColor = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_4__["default"].getActiveColor(); + var lineWidth = _stateManagement_toolStyle_js__WEBPACK_IMPORTED_MODULE_3__["default"].getToolWidth(); + + var _loop = function _loop(i) { + var data = toolData.data[i]; + + if (data.visible === false) { + return "continue"; + } + + color = data.active ? activeColor : _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_4__["default"].getToolColor(); // Calculate the data measurements + + if (data.invalidated === true) { + if (data.longestDiameter && data.shortestDiameter) { + _this.throttledUpdateCachedStats(image, element, data); + } else { + _this.updateCachedStats(image, element, data); + } + } + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_6__["draw"])(context, function (context) { + // Configurable shadow + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_6__["setShadow"])(context, _this.configuration); + var _data$handles = data.handles, + start = _data$handles.start, + end = _data$handles.end, + perpendicularStart = _data$handles.perpendicularStart, + perpendicularEnd = _data$handles.perpendicularEnd, + textBox = _data$handles.textBox; // Draw the measurement line + + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_6__["drawLine"])(context, element, start, end, { + color: color + }); // Draw perpendicular line + + var strokeWidth = lineWidth; + Object(_utils_updatePerpendicularLineHandles_js__WEBPACK_IMPORTED_MODULE_2__["default"])(eventData, data); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_6__["drawLine"])(context, element, perpendicularStart, perpendicularEnd, { + color: color, + strokeWidth: strokeWidth + }); // Draw the handles + + var handleOptions = { + color: color, + handleRadius: handleRadius, + drawHandlesIfActive: drawHandlesOnHover + }; // Draw the handles + + if (_this.configuration.drawHandles) { + Object(_drawing_drawHandles_js__WEBPACK_IMPORTED_MODULE_1__["default"])(context, eventData, data.handles, handleOptions); + } // Draw the textbox + // Move the textbox slightly to the right and upwards + // So that it sits beside the length tool handle + + + var xOffset = 10; + + var textBoxAnchorPoints = function textBoxAnchorPoints(handles) { + return [handles.start, handles.end, handles.perpendicularStart, handles.perpendicularEnd]; + }; + + var textLines = getTextBoxText(data, rowPixelSpacing, colPixelSpacing); + Object(_drawing_drawLinkedTextBox_js__WEBPACK_IMPORTED_MODULE_7__["default"])(context, element, textBox, textLines, data.handles, textBoxAnchorPoints, color, lineWidth, xOffset, true); + }); + }; + + for (var i = 0; i < toolData.data.length; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } +}); + +var getTextBoxText = function getTextBoxText(data, rowPixelSpacing, colPixelSpacing) { + var suffix = ' mm'; + + if (!rowPixelSpacing || !colPixelSpacing) { + suffix = ' pixels'; + } + + var lengthText = " L ".concat(data.longestDiameter).concat(suffix); + var widthText = " W ".concat(data.shortestDiameter).concat(suffix); + var labels = data.labels; + + if (labels && Array.isArray(labels)) { + return [].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(labels), [lengthText, widthText]); + } + + return [lengthText, widthText]; +}; + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/utils/calculateLongestAndShortestDiameters.js": +/*!******************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/utils/calculateLongestAndShortestDiameters.js ***! + \******************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return calculateLongestAndShortestDiameters; }); +/** + * Calculates longest and shortest diameters using measurement handles and pixelSpacing + * @param {Object} measurementData + * @param {Object} pixelSpacing pixelSpacing + * + *@returns {Object} longestDiameter and shortestDiameter + */ +function calculateLongestAndShortestDiameters(measurementData, pixelSpacing) { + var rowPixelSpacing = pixelSpacing.rowPixelSpacing, + colPixelSpacing = pixelSpacing.colPixelSpacing; + var _measurementData$hand = measurementData.handles, + start = _measurementData$hand.start, + end = _measurementData$hand.end, + perpendicularStart = _measurementData$hand.perpendicularStart, + perpendicularEnd = _measurementData$hand.perpendicularEnd; // Calculate the long axis length + + var dx = (start.x - end.x) * (colPixelSpacing || 1); + var dy = (start.y - end.y) * (rowPixelSpacing || 1); + var length = Math.sqrt(dx * dx + dy * dy); // Calculate the short axis length + + var wx = (perpendicularStart.x - perpendicularEnd.x) * (colPixelSpacing || 1); + var wy = (perpendicularStart.y - perpendicularEnd.y) * (rowPixelSpacing || 1); + var width = Math.sqrt(wx * wx + wy * wy); + + if (!width) { + width = 0; + } // Length is always longer than width + + + if (width > length) { + var tempW = width; + var tempL = length; + length = tempW; + width = tempL; + } + + return { + longestDiameter: length.toFixed(1), + shortestDiameter: width.toFixed(1) + }; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js": +/*!*********************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/utils/getDistanceWithPixelSpacing.js ***! + \*********************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getDistanceWithPixelSpacing; }); +/** + * Return the distance between 2 points considering the pixel spacing + * + * @param {number} columnPixelSpacing Width that a pixel represents in mm + * @param {number} rowPixelSpacing Height that a pixel represents in mm + * @param {*} startPoint Start point of the line + * @param {*} endPoint End point of the line + * + * @returns {number} Distance between the 2 given points considering the pixel spacing + */ +function getDistanceWithPixelSpacing(columnPixelSpacing, rowPixelSpacing, startPoint, endPoint) { + var calcX = (startPoint.x - endPoint.x) / rowPixelSpacing; + var calcY = (startPoint.y - endPoint.y) / columnPixelSpacing; + return Math.sqrt(calcX * calcX + calcY * calcY); +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/utils/getLineVector.js": +/*!*******************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/utils/getLineVector.js ***! + \*******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getLineVector; }); +/** + * Return the Vector of a line which determines its inclination and length + * + * @param {number} columnPixelSpacing Width that a pixel represents in mm + * @param {number} rowPixelSpacing Height that a pixel represents in mm + * @param {*} startPoint Start point of the line + * @param {*} endPoint End point of the line + * + * @returns {*} Resulting line inclination vector + */ +function getLineVector(columnPixelSpacing, rowPixelSpacing, startPoint, endPoint) { + var dx = (startPoint.x - endPoint.x) * columnPixelSpacing; + var dy = (startPoint.y - endPoint.y) * rowPixelSpacing; + var length = Math.sqrt(dx * dx + dy * dy); + var vectorX = dx / length; + var vectorY = dy / length; + return { + x: vectorX, + y: vectorY, + length: length + }; +} + +/***/ }), + +/***/ "./tools/annotation/bidirectionalTool/utils/updatePerpendicularLineHandles.js": +/*!************************************************************************************!*\ + !*** ./tools/annotation/bidirectionalTool/utils/updatePerpendicularLineHandles.js ***! + \************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return updatePerpendicularLineHandles; }); +/* harmony import */ var _getLineVector__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getLineVector */ "./tools/annotation/bidirectionalTool/utils/getLineVector.js"); + +/** + * Update the perpendicular line handles when the measurement is being created. + * This method will make the perpendicular line intersect in the middle of the + * long line and assume half the size of the long line. + * + * @param {*} eventData Data object associated with the event + * @param {*} measurementData Data from current bidirectional tool measurement + * + * @returns {boolean} False in case the handle is not locked or true when moved + */ + +function updatePerpendicularLineHandles(eventData, measurementData) { + if (!measurementData.handles.perpendicularStart.locked) { + return false; + } + + var startX, startY, endX, endY; + var _measurementData$hand = measurementData.handles, + start = _measurementData$hand.start, + end = _measurementData$hand.end; + var _eventData$image = eventData.image, + _eventData$image$colu = _eventData$image.columnPixelSpacing, + columnPixelSpacing = _eventData$image$colu === void 0 ? 1 : _eventData$image$colu, + _eventData$image$rowP = _eventData$image.rowPixelSpacing, + rowPixelSpacing = _eventData$image$rowP === void 0 ? 1 : _eventData$image$rowP; + + if (start.x === end.x && start.y === end.y) { + startX = start.x; + startY = start.y; + endX = end.x; + endY = end.y; + } else { + // Mid point of long-axis line + var mid = { + x: (start.x + end.x) / 2, + y: (start.y + end.y) / 2 + }; // Inclination of the perpendicular line + + var vector = Object(_getLineVector__WEBPACK_IMPORTED_MODULE_0__["default"])(columnPixelSpacing, rowPixelSpacing, start, end); + var perpendicularLineLength = vector.length / 2; + var rowMultiplier = perpendicularLineLength / (2 * rowPixelSpacing); + var columnMultiplier = perpendicularLineLength / (2 * columnPixelSpacing); + startX = mid.x + columnMultiplier * vector.y; + startY = mid.y - rowMultiplier * vector.x; + endX = mid.x - columnMultiplier * vector.y; + endY = mid.y + rowMultiplier * vector.x; + } + + measurementData.handles.perpendicularStart.x = startX; + measurementData.handles.perpendicularStart.y = startY; + measurementData.handles.perpendicularEnd.x = endX; + measurementData.handles.perpendicularEnd.y = endY; + return true; +} + +/***/ }), + +/***/ "./tools/annotation/index.js": +/*!***********************************!*\ + !*** ./tools/annotation/index.js ***! + \***********************************/ +/*! exports provided: AngleTool, ArrowAnnotateTool, BidirectionalTool, CircleRoiTool, CobbAngleTool, EllipticalRoiTool, FreehandRoiTool, LengthTool, ProbeTool, RectangleRoiTool, TextMarkerTool, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _AngleTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AngleTool.js */ "./tools/annotation/AngleTool.js"); +/* harmony import */ var _ArrowAnnotateTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ArrowAnnotateTool.js */ "./tools/annotation/ArrowAnnotateTool.js"); +/* harmony import */ var _BidirectionalTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./BidirectionalTool.js */ "./tools/annotation/BidirectionalTool.js"); +/* harmony import */ var _CircleRoiTool_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./CircleRoiTool.js */ "./tools/annotation/CircleRoiTool.js"); +/* harmony import */ var _CobbAngleTool_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./CobbAngleTool.js */ "./tools/annotation/CobbAngleTool.js"); +/* harmony import */ var _EllipticalRoiTool_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./EllipticalRoiTool.js */ "./tools/annotation/EllipticalRoiTool.js"); +/* harmony import */ var _FreehandRoiTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./FreehandRoiTool.js */ "./tools/annotation/FreehandRoiTool.js"); +/* harmony import */ var _LengthTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./LengthTool.js */ "./tools/annotation/LengthTool.js"); +/* harmony import */ var _ProbeTool_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ProbeTool.js */ "./tools/annotation/ProbeTool.js"); +/* harmony import */ var _RectangleRoiTool_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./RectangleRoiTool.js */ "./tools/annotation/RectangleRoiTool.js"); +/* harmony import */ var _TextMarkerTool_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./TextMarkerTool.js */ "./tools/annotation/TextMarkerTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AngleTool", function() { return _AngleTool_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ArrowAnnotateTool", function() { return _ArrowAnnotateTool_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BidirectionalTool", function() { return _BidirectionalTool_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CircleRoiTool", function() { return _CircleRoiTool_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CobbAngleTool", function() { return _CobbAngleTool_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EllipticalRoiTool", function() { return _EllipticalRoiTool_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandRoiTool", function() { return _FreehandRoiTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "LengthTool", function() { return _LengthTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ProbeTool", function() { return _ProbeTool_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RectangleRoiTool", function() { return _RectangleRoiTool_js__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "TextMarkerTool", function() { return _TextMarkerTool_js__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + + + + + + + + + + + + // Named Exports + + + + + + + + + + + + // Namespace, default export + +/* harmony default export */ __webpack_exports__["default"] = ({ + AngleTool: _AngleTool_js__WEBPACK_IMPORTED_MODULE_0__["default"], + ArrowAnnotateTool: _ArrowAnnotateTool_js__WEBPACK_IMPORTED_MODULE_1__["default"], + BidirectionalTool: _BidirectionalTool_js__WEBPACK_IMPORTED_MODULE_2__["default"], + CircleRoiTool: _CircleRoiTool_js__WEBPACK_IMPORTED_MODULE_3__["default"], + CobbAngleTool: _CobbAngleTool_js__WEBPACK_IMPORTED_MODULE_4__["default"], + EllipticalRoiTool: _EllipticalRoiTool_js__WEBPACK_IMPORTED_MODULE_5__["default"], + FreehandRoiTool: _FreehandRoiTool_js__WEBPACK_IMPORTED_MODULE_6__["default"], + LengthTool: _LengthTool_js__WEBPACK_IMPORTED_MODULE_7__["default"], + ProbeTool: _ProbeTool_js__WEBPACK_IMPORTED_MODULE_8__["default"], + RectangleRoiTool: _RectangleRoiTool_js__WEBPACK_IMPORTED_MODULE_9__["default"], + TextMarkerTool: _TextMarkerTool_js__WEBPACK_IMPORTED_MODULE_10__["default"] +}); + +/***/ }), + +/***/ "./tools/base/BaseAnnotationTool.js": +/*!******************************************!*\ + !*** ./tools/base/BaseAnnotationTool.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _BaseTool_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _manipulators_handleActivator_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../manipulators/handleActivator.js */ "./manipulators/handleActivator.js"); +/* harmony import */ var _util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../util/findAndMoveHelpers.js */ "./util/findAndMoveHelpers.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/logger */ "./util/logger.js"); + + + + + + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_9__["getLogger"])('baseAnnotationTool'); +/** + * @memberof Tools.Base + * @classdesc Abstract class for tools which create and display annotations on the + * cornerstone canvas. + * @extends Tools.Base.BaseTool + */ + +var BaseAnnotationTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(BaseAnnotationTool, _BaseTool); + + function BaseAnnotationTool() { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, BaseAnnotationTool); + + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(BaseAnnotationTool).apply(this, arguments)); + } + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(BaseAnnotationTool, [{ + key: "createNewMeasurement", + // =================================================================== + // Abstract Methods - Must be implemented. + // =================================================================== + + /** + * Creates a new annotation. + * + * @method createNewMeasurement + * @memberof Tools.Base.BaseAnnotationTool + * + * @param {type} evt description + * @returns {type} description + */ + // eslint-disable-next-line no-unused-vars + value: function createNewMeasurement(evt) { + throw new Error("Method createNewMeasurement not implemented for ".concat(this.name, ".")); + } + /** + * + * Returns true if the given coords are need the tool. + * + * @method pointNearTool + * @memberof Tools.Base.BaseAnnotationTool + * + * @param {*} element + * @param {*} data + * @param {*} coords + * @param {string} [interactionType=mouse] + * @returns {boolean} If the point is near the tool + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "pointNearTool", + value: function pointNearTool(element, data, coords) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + throw new Error("Method pointNearTool not implemented for ".concat(this.name, ".")); + } + /** + * Returns the distance in px from the given coords to the closest handle of the annotation. + * + * @method distanceFromPoint + * @memberof Tools.Base.BaseAnnotationTool + * + * @param {*} element + * @param {*} data + * @param {*} coords + * @returns {number} - the distance in px from the provided coordinates to the + * closest rendered portion of the annotation. -1 if the distance cannot be + * calculated. + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "distanceFromPoint", + value: function distanceFromPoint(element, data, coords) { + throw new Error("Method distanceFromPoint not implemented for ".concat(this.name, ".")); + } + /** + * Used to redraw the tool's annotation data per render + * + * @abstract + * @param {*} evt + * @returns {void} + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "renderToolData", + value: function renderToolData(evt) { + throw new Error("renderToolData not implemented for ".concat(this.name, ".")); + } // =================================================================== + // Virtual Methods - Have default behavior but may be overriden. + // =================================================================== + + /** + * Event handler for MOUSE_MOVE event. + * + * @abstract + * @event + * @param {Object} evt - The event. + * @returns {boolean} - True if the image needs to be updated + */ + + }, { + key: "mouseMoveCallback", + value: function mouseMoveCallback(evt) { + var _evt$detail = evt.detail, + element = _evt$detail.element, + currentPoints = _evt$detail.currentPoints; + var coords = currentPoints.canvas; + var toolState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_6__["getToolState"])(element, this.name); + var imageNeedsUpdate = false; + + for (var d = 0; d < toolState.data.length; d++) { + var data = toolState.data[d]; // Hovering a handle? + + if (Object(_manipulators_handleActivator_js__WEBPACK_IMPORTED_MODULE_7__["default"])(element, data.handles, coords) === true) { + imageNeedsUpdate = true; + } // Tool data's 'active' does not match coordinates + // TODO: can't we just do an if/else and save on a pointNearTool check? + + + var nearToolAndNotMarkedActive = this.pointNearTool(element, data, coords, 'mouse') && !data.active; + var notNearToolAndMarkedActive = !this.pointNearTool(element, data, coords, 'mouse') && data.active; + + if (nearToolAndNotMarkedActive || notNearToolAndMarkedActive) { + data.active = !data.active; + imageNeedsUpdate = true; + } + } + + return imageNeedsUpdate; + } + /** + * Custom callback for when a handle is selected. + * @method handleSelectedCallback + * @memberof Tools.Base.BaseAnnotationTool + * + * @param {*} evt - + * @param {*} toolData - + * @param {*} handle - The selected handle. + * @param {String} interactionType - + * @returns {void} + */ + + }, { + key: "handleSelectedCallback", + value: function handleSelectedCallback(evt, toolData, handle) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + Object(_util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_8__["moveHandleNearImagePoint"])(evt, this, toolData, handle, interactionType); + } + /** + * Custom callback for when a tool is selected. + * + * @method toolSelectedCallback + * @memberof Tools.Base.BaseAnnotationTool + * + * @param {*} evt + * @param {*} annotation + * @param {string} [interactionType=mouse] + * @returns {void} + */ + + }, { + key: "toolSelectedCallback", + value: function toolSelectedCallback(evt, annotation) { + var interactionType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'mouse'; + Object(_util_findAndMoveHelpers_js__WEBPACK_IMPORTED_MODULE_8__["moveAnnotation"])(evt, this, annotation, interactionType); + } + /** + * Updates cached statistics for the tool's annotation data on the element + * + * @param {*} image + * @param {*} element + * @param {*} data + * @returns {void} + */ + + }, { + key: "updateCachedStats", + value: function updateCachedStats(image, element, data) { + // eslint-disable-line + logger.warn("updateCachedStats not implemented for ".concat(this.name, ".")); + } + }]); + + return BaseAnnotationTool; +}(_BaseTool_js__WEBPACK_IMPORTED_MODULE_5__["default"]); + +/* harmony default export */ __webpack_exports__["default"] = (BaseAnnotationTool); + +/***/ }), + +/***/ "./tools/base/BaseBrushTool.js": +/*!*************************************!*\ + !*** ./tools/base/BaseBrushTool.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _BaseTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _store_isToolActiveForElement_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../store/isToolActiveForElement.js */ "./store/isToolActiveForElement.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../util/segmentation */ "./util/segmentation/index.js"); + + + + + + + + + + + + +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_10__["getModule"])('segmentation'); +/** + * @abstract + * @memberof Tools.Base + * @classdesc Abstract class for tools which manipulate the mask data to be displayed on + * the cornerstone canvas. + * @extends Tools.Base.BaseTool + */ + +var BaseBrushTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(BaseBrushTool, _BaseTool); + + function BaseBrushTool(props) { + var _this; + + var defaultProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, BaseBrushTool); + + if (!defaultProps.configuration) { + defaultProps.configuration = { + alwaysEraseOnClick: false + }; + } + + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(BaseBrushTool).call(this, props, defaultProps)); + _this.updateOnMouseMove = true; + _this.hideDefaultCursor = true; + _this._drawing = false; + _this._drawingMouseUpCallback = _this._drawingMouseUpCallback.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } // =================================================================== + // Abstract Methods - Must be implemented. + // =================================================================== + + /** + * Helper function for rendering the brush. + * + * @abstract + * @param {Object} evt - The event. + * @returns {void} + */ + // eslint-disable-next-line no-unused-vars + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(BaseBrushTool, [{ + key: "renderBrush", + value: function renderBrush(evt) { + throw new Error("Method renderBrush not implemented for ".concat(this.name, ".")); + } + /** + * Paints the data to the labelmap. + * + * @protected + * @abstract + * @param {Object} evt The event. + * @returns {void} + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "_paint", + value: function _paint(evt) { + throw new Error("Method _paint not implemented for ".concat(this.name, ".")); + } // =================================================================== + // Virtual Methods - Have default behavior but may be overriden. + // =================================================================== + + /** + * Event handler for MOUSE_DRAG event. + * + * @override + * @abstract + * @event + * @param {Object} evt - The event. + */ + + }, { + key: "mouseDragCallback", + value: function mouseDragCallback(evt) { + var currentPoints = evt.detail.currentPoints; + this._lastImageCoords = currentPoints.image; // Safety measure incase _startPainting is overridden and doesn't always + // start a paint. + + if (this._drawing) { + this._paint(evt); + } + } + /** + * Event handler for MOUSE_DOWN event. + * + * @override + * @abstract + * @event + * @param {Object} evt - The event. + */ + + }, { + key: "preMouseDownCallback", + value: function preMouseDownCallback(evt) { + var eventData = evt.detail; + var element = eventData.element, + currentPoints = eventData.currentPoints; + + this._startPainting(evt); + + this._lastImageCoords = currentPoints.image; + this._drawing = true; + + this._startListeningForMouseUp(element); + + this._paint(evt); + + return true; + } + /** + * Initialise painting with BaseBrushTool. + * + * @abstract + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "_startPainting", + value: function _startPainting(evt) { + var eventData = evt.detail; + var element = eventData.element; + var configuration = segmentationModule.configuration, + getters = segmentationModule.getters; + + var _getters$labelmap2D = getters.labelmap2D(element), + labelmap2D = _getters$labelmap2D.labelmap2D, + labelmap3D = _getters$labelmap2D.labelmap3D, + currentImageIdIndex = _getters$labelmap2D.currentImageIdIndex, + activeLabelmapIndex = _getters$labelmap2D.activeLabelmapIndex; + + var shouldErase = this._isCtrlDown(eventData) || this.configuration.alwaysEraseOnClick; + this.paintEventData = { + labelmap2D: labelmap2D, + labelmap3D: labelmap3D, + currentImageIdIndex: currentImageIdIndex, + activeLabelmapIndex: activeLabelmapIndex, + shouldErase: shouldErase + }; + + if (configuration.storeHistory) { + var previousPixelData = labelmap2D.pixelData.slice(); + this.paintEventData.previousPixelData = previousPixelData; + } + } + /** + * End painting with BaseBrushTool. + * + * @abstract + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "_endPainting", + value: function _endPainting(evt) { + var configuration = segmentationModule.configuration, + setters = segmentationModule.setters; + var _this$paintEventData = this.paintEventData, + labelmap2D = _this$paintEventData.labelmap2D, + currentImageIdIndex = _this$paintEventData.currentImageIdIndex; // Grab the labels on the slice. + + var segmentSet = new Set(labelmap2D.pixelData); + var iterator = segmentSet.values(); + var segmentsOnLabelmap = []; + var done = false; + + while (!done) { + var next = iterator.next(); + done = next.done; + + if (!done) { + segmentsOnLabelmap.push(next.value); + } + } + + labelmap2D.segmentsOnLabelmap = segmentsOnLabelmap; + + if (configuration.storeHistory) { + var previousPixelData = this.paintEventData.previousPixelData; + var newPixelData = labelmap2D.pixelData; + var operation = { + imageIdIndex: currentImageIdIndex, + diff: Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_11__["getDiffBetweenPixelData"])(previousPixelData, newPixelData) + }; + setters.pushState(this.element, [operation]); + } + + Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_11__["triggerLabelmapModifiedEvent"])(this.element); + } // =================================================================== + // Implementation interface + // =================================================================== + + /** + * Event handler for MOUSE_MOVE event. + * + * @override + * @abstract + * @event + * @param {Object} evt - The event. + */ + + }, { + key: "mouseMoveCallback", + value: function mouseMoveCallback(evt) { + var currentPoints = evt.detail.currentPoints; + this._lastImageCoords = currentPoints.image; + } + /** + * Used to redraw the tool's cursor per render. + * + * @override + * @param {Object} evt - The event. + */ + + }, { + key: "renderToolData", + value: function renderToolData(evt) { + var eventData = evt.detail; + var element = eventData.element; // Only brush needs to render. + + if (Object(_store_isToolActiveForElement_js__WEBPACK_IMPORTED_MODULE_9__["default"])(element, this.name)) { + // Call the hover event for the brush + this.renderBrush(evt); + } + } + /** + * Event handler for switching mode to passive. + * + * @override + * @event + * @param {Object} evt - The event. + */ + // eslint-disable-next-line no-unused-vars + + }, { + key: "passiveCallback", + value: function passiveCallback(evt) { + try { + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(this.element); + } catch (error) { + // It is possible that the image has not been loaded + // when this is called. + return; + } + } + /** + * Event handler for MOUSE_UP during the drawing event loop. + * + * @protected + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + }, { + key: "_drawingMouseUpCallback", + value: function _drawingMouseUpCallback(evt) { + var eventData = evt.detail; + var element = eventData.element; + + this._endPainting(evt); + + this._drawing = false; + this._mouseUpRender = true; + + this._stopListeningForMouseUp(element); + } + }, { + key: "newImageCallback", + value: function newImageCallback(evt) { + if (this._drawing) { + // End painting on one slice and start on another. + this._endPainting(evt); + + this._startPainting(evt); + } + } + /** + * Adds modify loop event listeners. + * + * @protected + * @param {Object} element - The viewport element to add event listeners to. + * @modifies {element} + * @returns {void} + */ + + }, { + key: "_startListeningForMouseUp", + value: function _startListeningForMouseUp(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._drawingMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_CLICK, this._drawingMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._drawingMouseUpCallback); + element.addEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_CLICK, this._drawingMouseUpCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } + /** + * Adds modify loop event listeners. + * + * @protected + * @param {Object} element - The viewport element to add event listeners to. + * @modifies {element} + * @returns {void} + */ + + }, { + key: "_stopListeningForMouseUp", + value: function _stopListeningForMouseUp(element) { + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_UP, this._drawingMouseUpCallback); + element.removeEventListener(_events_js__WEBPACK_IMPORTED_MODULE_7__["default"].MOUSE_CLICK, this._drawingMouseUpCallback); + _externalModules_js__WEBPACK_IMPORTED_MODULE_8__["default"].cornerstone.updateImage(element); + } // =================================================================== + // Brush API. This is effectively a wrapper around the store. + // =================================================================== + + /** + * Increases the brush size + * + * @public + * @api + * @returns {void} + */ + + }, { + key: "increaseBrushSize", + value: function increaseBrushSize() { + var configuration = segmentationModule.configuration, + setters = segmentationModule.setters; + var oldRadius = configuration.radius; + var newRadius = Math.floor(oldRadius * 1.2); // If e.g. only 2 pixels big. Math.floor(2*1.2) = 2. + // Hence, have minimum increment of 1 pixel. + + if (newRadius === oldRadius) { + newRadius += 1; + } + + setters.radius(newRadius); + } + /** + * Decreases the brush size + * + * @public + * @api + * @returns {void} + */ + + }, { + key: "decreaseBrushSize", + value: function decreaseBrushSize() { + var configuration = segmentationModule.configuration, + setters = segmentationModule.setters; + var oldRadius = configuration.radius; + var newRadius = Math.floor(oldRadius * 0.8); + setters.radius(newRadius); + } + }, { + key: "_isCtrlDown", + value: function _isCtrlDown(eventData) { + return eventData.event && eventData.event.ctrlKey || eventData.ctrlKey; + } + }]); + + return BaseBrushTool; +}(_BaseTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]); + +/* harmony default export */ __webpack_exports__["default"] = (BaseBrushTool); + +/***/ }), + +/***/ "./tools/base/BaseTool.js": +/*!********************************!*\ + !*** ./tools/base/BaseTool.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _mixins_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../mixins/index.js */ "./mixins/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); +/* harmony import */ var _util_deepmerge_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../../util/deepmerge.js */ "./util/deepmerge.js"); +/* harmony import */ var _store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../store/setToolCursor.js */ "./store/setToolCursor.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../store */ "./store/index.js"); + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('tools:base:BaseTool'); +var globalConfigurationModule = Object(_store__WEBPACK_IMPORTED_MODULE_7__["getModule"])('globalConfiguration'); +/** + * @typedef ToolConfiguration + * @param {String} name + * @param {object} strategies - Named strategy functions + * @param {String} defaultStrategy - The name of the strategy to use by default + * @param {Object} configuration + * @param {String[]} mixins - A list of mixin names to apply to the tool + */ + +/** + * @memberof Tools.Base + * @classdesc BaseTool Class description + * @property {String[]} supportedInteractionTypes - A string list of ways the tool can interact with the user + */ + +var BaseTool = +/*#__PURE__*/ +function () { + /** + * Constructor description + * @param {props} [props={}] Tool properties set on instantiation of a tool + * @param {defaultProps} [defaultProps={}] Tools Default properties + */ + function BaseTool(props, defaultProps) { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default()(this, BaseTool); + + /** + * Merge default props with custom props + */ + this.initialConfiguration = Object(_util_deepmerge_js__WEBPACK_IMPORTED_MODULE_5__["default"])(defaultProps, props); + var _this$initialConfigur = this.initialConfiguration, + name = _this$initialConfigur.name, + strategies = _this$initialConfigur.strategies, + defaultStrategy = _this$initialConfigur.defaultStrategy, + configuration = _this$initialConfigur.configuration, + supportedInteractionTypes = _this$initialConfigur.supportedInteractionTypes, + mixins = _this$initialConfigur.mixins, + svgCursor = _this$initialConfigur.svgCursor; + /** + * A unique, identifying tool name + * @type {String} + */ + + this.name = name; + /** @type {String} */ + + this.mode = 'disabled'; + this.element = undefined; + this.supportedInteractionTypes = supportedInteractionTypes || []; + this.strategies = strategies || {}; + this.defaultStrategy = defaultStrategy || Object.keys(this.strategies)[0] || undefined; + this.activeStrategy = this.defaultStrategy; + + if (svgCursor) { + this.svgCursor = svgCursor; + } // Options are set when a tool is added, during a "mode" change, + // or via a tool's option's setter + + + this._options = {}; // Configuration is set at tool initalization + + this._configuration = Object.assign({}, configuration); // `updateOnMouseMove` causes the frame to render on every mouse move when + // the tool is active. This is useful for tools that render large/dynamic + // items to the canvas which can't easily be respresented with an SVG Cursor. + + this.updateOnMouseMove = false; + this.hideDefaultCursor = false; // Apply mixins if mixinsArray is not empty. + + if (mixins && mixins.length) { + this._applyMixins(mixins); + } + + this._cursors = Object.assign({}, this.initialConfiguration.cursors); + var defaultCursor = this.defaultStrategy && this._cursors[this.activeStrategy]; + + if (defaultCursor) { + this.svgCursor = defaultCursor; + } + } // + // CONFIGURATION + // + + /** + * Config... + * @public + * @type {Object} + * @instance + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default()(BaseTool, [{ + key: "mergeOptions", + + /** + * Merges provided options with existing options. + * + * @public + * @instance + * @param {Object} options - options object to merge with existing options. + * @returns {undefined} + */ + value: function mergeOptions(options) { + this._options = Object.assign({}, this._options, options); + } + /** + * Clears the tools options. + * + * @public + * @instance + * @memberof Tools.Base.BaseTool + * @returns {undefined} + */ + + }, { + key: "clearOptions", + value: function clearOptions() { + this._options = {}; + } + /** + * Apply the currently set/active strategy. + * + * @public + * @instance + * @method applyActiveStrategy + * @memberof Tools.Base.BaseTool + * + * @param {Object} evt The event that triggered the strategies application + * @param {Object} operationData - An object containing extra data not present in the `evt`, + * required to apply the strategy. + * @returns {*} strategies vary widely; check each specific strategy to find expected return value + */ + + }, { + key: "applyActiveStrategy", + value: function applyActiveStrategy(evt, operationData) { + return this.strategies[this.activeStrategy].call(this, evt, operationData); + } + /** + * Iterates over registered mixins; any matching names in the provided `mixinsArray` will + * be merged with this instance. + * + * @private + * @method _applyMixins + * @param {string[]} mixinsArray An array of mixin identifiers (strings). + * @returns {undefined} + */ + + }, { + key: "_applyMixins", + value: function _applyMixins(mixinsArray) { + for (var i = 0; i < mixinsArray.length; i++) { + var mixin = _mixins_index_js__WEBPACK_IMPORTED_MODULE_3__["default"]["".concat(mixinsArray[i])]; + + if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(mixin) === 'object') { + Object.assign(this, mixin); + + if (typeof this.initializeMixin === 'function') { + // Run the mixin's initialisation process. + this.initializeMixin(); + } + } else { + logger.warn("".concat(this.name, ": mixin ").concat(_mixins_index_js__WEBPACK_IMPORTED_MODULE_3__["default"][i], " does not exist.")); + } + } // Don't keep initialiseMixin from last mixin. + + + if (this.initializeMixin === 'function') { + delete this.initializeMixin; + } + } + /** + * Change the active strategy. + * + * @public + * @method setActiveStrategy + * @param {string} strategy + * @returns {null} + */ + + }, { + key: "setActiveStrategy", + value: function setActiveStrategy(strategy) { + this.activeStrategy = strategy; + + if (globalConfigurationModule.configuration.showSVGCursors) { + this.changeCursor(this.element, strategy); + } + } + /** + * Function responsible for changing the Cursor, according to the strategy. + * @param {HTMLElement} element + * @param {string} strategy The strategy to be used on Tool + * @public + * @returns {void} + */ + + }, { + key: "changeCursor", + value: function changeCursor(element, strategy) { + // Necessary to avoid setToolCursor call without elements, which throws an error. + if (!element) { + return; + } // If there are cursors set per strategy, change the cursor. + + + var cursor = this._cursors[strategy]; + + if (cursor) { + this.svgCursor = cursor; + + if (this.mode === 'active') { + Object(_store_setToolCursor_js__WEBPACK_IMPORTED_MODULE_6__["setToolCursor"])(element, cursor); // External.cornerstone.updateImage(element); + } + } + } // =================================================================== + // Virtual Methods - Have default behavior but may be overridden. + // =================================================================== + // + // MOUSE + // + + /** + * Callback that takes priority if the tool is active, before `MOUSE_DOWN` + * events are processed. Does nothing by default. + * + * @callback BaseTool~preMouseDownCallback + * @param {CornerstoneTools.event:cornerstonetoolsmousedown} evt + * @returns {boolean} consumedEvent - True if function consumed the event. + */ + + /** + * Callback that takes priority if the tool is active, after `MOUSE_DOWN` + * events are processed. Does nothing by default. + * + * @callback BaseTool~postMouseDownCallback + * @param {CornerstoneTools.event:cornerstonetoolsmousedown} evt + * @returns {boolean} consumedEvent - True if function consumed the event. + */ + + /** + * Callback that is called if the tool is active, after `MOUSE_DOWN` + * events are processed. Does nothing by default. + * + * @virtual + * @param {type} evt + * @returns {boolean} consumedEvent - True if function consumed the event. + */ + + /** + * Example implementation: + * + * postMouseDownCallback(evt) { + * return false; + * } + */ + + /** + * Callback that takes priority if the tool is active, before `TOUCH_START` + * events are processed. Does nothing by default. + * + * @virtual + * @param {type} evt + * @returns {boolean} consumedEvent - True if function consumed the event. + */ + + /** + * Example implementation: + * + * preTouchStartCallback(evt) { + * return false; + * } + */ + + /** + * Callback that is called if the tool is active, after `TOUCH_START` + * events are processed. Does nothing by default. + * + * @virtual + * @param {type} evt + * @returns {boolean} consumedEvent - True if function consumed the event. + */ + + /** + * Example implementation: + * + * postTouchStartCallback(evt) { + * return false; + * } + */ + + }, { + key: "configuration", + get: function get() { + return this._configuration; + }, + set: function set(configuration) { + this._configuration = configuration; + } // + // OPTIONS + // + + /** + * Options... + * @readonly + * @instance + */ + + }, { + key: "options", + get: function get() { + return this._options; + } + }], [{ + key: "configuration", + get: function get() {} + }]); + + return BaseTool; +}(); + +/* harmony default export */ __webpack_exports__["default"] = (BaseTool); + +/***/ }), + +/***/ "./tools/base/index.js": +/*!*****************************!*\ + !*** ./tools/base/index.js ***! + \*****************************/ +/*! exports provided: BaseAnnotationTool, BaseBrushTool, BaseTool, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseAnnotationTool.js */ "./tools/base/BaseAnnotationTool.js"); +/* harmony import */ var _BaseTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./BaseTool.js */ "./tools/base/BaseTool.js"); +/* harmony import */ var _BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./BaseBrushTool.js */ "./tools/base/BaseBrushTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BaseAnnotationTool", function() { return _BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BaseBrushTool", function() { return _BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BaseTool", function() { return _BaseTool_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + + + + // Named Exports + + + + // Namespace, default export + +/* harmony default export */ __webpack_exports__["default"] = ({ + BaseAnnotationTool: _BaseAnnotationTool_js__WEBPACK_IMPORTED_MODULE_0__["default"], + BaseBrushTool: _BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_2__["default"], + BaseTool: _BaseTool_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}); + +/***/ }), + +/***/ "./tools/cursors/MouseCursor.js": +/*!**************************************!*\ + !*** ./tools/cursors/MouseCursor.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return MouseCursor; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store/index.js */ "./store/index.js"); + + + + +var cursorModule = _store_index_js__WEBPACK_IMPORTED_MODULE_3__["modules"].cursor; +/* eslint-disable valid-jsdoc */ + +/* +MACROS - The following keys will have the appropriate value injected when +an SVG is requested: + +- ACTIVE_COLOR => options.activeColor || toolColors.getActiveColor(); +- TOOL_COLOR => options.toolColor || toolColors.getToolColor(); +- FILL_COLOR => options.fillColor || toolColors.getFillColor(); +*/ + +var MouseCursor = +/*#__PURE__*/ +function () { + function MouseCursor(iconGroupString, options) { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, MouseCursor); + + this.iconGroupString = iconGroupString; + this.options = Object.assign({}, cursorModule.getters.defaultOptions(), options); + } + /** + * Returns an SVG of the icon only. + * + * @param {Object} options - An object which overrides default properties of the returned SVG. + * @returns {Blob} The SVG of the icon. + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(MouseCursor, [{ + key: "getIconSVG", + value: function getIconSVG() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + var svgString = this._generateIconSVGString(options); + + return new Blob([svgString], { + type: 'image/svg+xml' + }); + } + /** + * Returns a string representation of the SVG of the icon only. + * + * @param {Object} options - An object which overrides default properties of the returned SVG. + * @returns {string} The stringified SVG of the icon. + */ + + }, { + key: "getIconSVGString", + value: function getIconSVGString() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + return this._generateIconSVGString(options); + } + /** + * Returns an SVG of the icon + pointer. + * + * @param {Object} options - An object which overrides default properties of the returned SVG. + * @returns {Blob} The SVG of the icon + pointer.. + */ + + }, { + key: "getIconWithPointerSVG", + value: function getIconWithPointerSVG() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + var svgString = this._generateIconWithPointerSVGString(options); + + return new Blob([svgString], { + type: 'image/svg+xml' + }); + } + /** + * Returns a string representation of the SVG of the icon + pointer. + * + * @param {Object} options - An object which overrides default properties of the returned SVG. + * @returns {string} The stringified SVG of the icon + pointer. + */ + + }, { + key: "getIconWithPointerString", + value: function getIconWithPointerString() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + return this._generateIconWithPointerSVGString(options); + } + /** + * Returns the mousePoint as a space seperated string. + * + * @returns {string} The mousePoint. + */ + + }, { + key: "_generateIconWithPointerSVGString", + + /** + * Generates a string representation of the icon + pointer. + * + * @param {Object} options - An object which overrides default properties of the returned string. + * @returns {string} The SVG as a string. + */ + value: function _generateIconWithPointerSVGString() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + var svgOptions = Object.assign({}, this.options, options); + var mousePointerGroupString = svgOptions.mousePointerGroupString, + iconSize = svgOptions.iconSize, + viewBox = svgOptions.viewBox; + var scale = iconSize / Math.max(viewBox.x, viewBox.y); + var svgSize = 16 + iconSize; + var svgString = "\n \n \n ").concat(mousePointerGroupString, "\n \n \n ").concat(this.iconGroupString, "\n \n "); + return this._injectColors(svgString, svgOptions); + } + /** + * Generates a string representation of the icon. + * + * @param {Object} options - An object which overrides default properties of the returned string. + * @returns {string} The SVG as a string. + */ + + }, { + key: "_generateIconSVGString", + value: function _generateIconSVGString() { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + var svgOptions = Object.assign({}, this.options, options); + var iconSize = svgOptions.iconSize, + viewBox = svgOptions.viewBox; + var svgString = "\n \n ").concat(this.iconGroupString, "\n "); + return this._injectColors(svgString, svgOptions); + } + /** + * Replaces ACTIVE_COLOR, TOOL_COLOR and FILL_COLOR in svgString with their appropriate values. + * + * @param {string} svgString - The string to modify. + * @param {Object} options - Optional overrides for the colors. + * @returns {string} The string with color values injected. + */ + + }, { + key: "_injectColors", + value: function _injectColors(svgString) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var activeColor = options.activeColor || _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__["default"].getActiveColor(); + var toolColor = options.toolColor || _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__["default"].getToolColor(); + var fillColor = options.fillColor || _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__["default"].getFillColor(); + return svgString.replace(/ACTIVE_COLOR/g, "".concat(activeColor)).replace(/TOOL_COLOR/g, "".concat(toolColor)).replace(/FILL_COLOR/g, "".concat(fillColor)); + } + }, { + key: "mousePoint", + get: function get() { + var mousePoint = this.options.mousePoint; + return "".concat(mousePoint.x, " ").concat(mousePoint.y); + } + }]); + + return MouseCursor; +}(); + + + +/***/ }), + +/***/ "./tools/cursors/index.js": +/*!********************************!*\ + !*** ./tools/cursors/index.js ***! + \********************************/ +/*! exports provided: angleCursor, arrowAnnotateCursor, bidirectionalCursor, cobbAngleCursor, circleRoiCursor, ellipticalRoiCursor, freehandRoiCursor, freehandRoiSculptorCursor, lengthCursor, probeCursor, rectangleRoiCursor, textMarkerCursor, crosshairsCursor, eraserCursor, magnifyCursor, panCursor, rotateCursor, stackScrollCursor, wwwcRegionCursor, wwwcCursor, zoomCursor, freehandEraseInsideCursor, freehandFillInsideCursor, freehandEraseOutsideCursor, freehandFillOutsideCursor, segRectangleEraseInsideCursor, segRectangleFillInsideCursor, segRectangleEraseOutsideCursor, segRectangleFillOutsideCursor, segCircleEraseInsideCursor, segCircleFillInsideCursor, segCircleEraseOutsideCursor, segCircleFillOutsideCursor */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "angleCursor", function() { return angleCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "arrowAnnotateCursor", function() { return arrowAnnotateCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bidirectionalCursor", function() { return bidirectionalCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "cobbAngleCursor", function() { return cobbAngleCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "circleRoiCursor", function() { return circleRoiCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ellipticalRoiCursor", function() { return ellipticalRoiCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandRoiCursor", function() { return freehandRoiCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandRoiSculptorCursor", function() { return freehandRoiSculptorCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lengthCursor", function() { return lengthCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "probeCursor", function() { return probeCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rectangleRoiCursor", function() { return rectangleRoiCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "textMarkerCursor", function() { return textMarkerCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "crosshairsCursor", function() { return crosshairsCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraserCursor", function() { return eraserCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "magnifyCursor", function() { return magnifyCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "panCursor", function() { return panCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rotateCursor", function() { return rotateCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "stackScrollCursor", function() { return stackScrollCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "wwwcRegionCursor", function() { return wwwcRegionCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "wwwcCursor", function() { return wwwcCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "zoomCursor", function() { return zoomCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandEraseInsideCursor", function() { return freehandEraseInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandFillInsideCursor", function() { return freehandFillInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandEraseOutsideCursor", function() { return freehandEraseOutsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "freehandFillOutsideCursor", function() { return freehandFillOutsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segRectangleEraseInsideCursor", function() { return segRectangleEraseInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segRectangleFillInsideCursor", function() { return segRectangleFillInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segRectangleEraseOutsideCursor", function() { return segRectangleEraseOutsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segRectangleFillOutsideCursor", function() { return segRectangleFillOutsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segCircleEraseInsideCursor", function() { return segCircleEraseInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segCircleFillInsideCursor", function() { return segCircleFillInsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segCircleEraseOutsideCursor", function() { return segCircleEraseOutsideCursor; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "segCircleFillOutsideCursor", function() { return segCircleFillOutsideCursor; }); +/* harmony import */ var _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./MouseCursor.js */ "./tools/cursors/MouseCursor.js"); + +/* +MACROS: + +The following keys will have the appropriate value injected by the MouseCursor +class when an SVG is requested: + +- ACTIVE_COLOR => options.activeColor || toolColors.getActiveColor(); +- TOOL_COLOR => options.toolColor || toolColors.getToolColor(); +- FILL_COLOR => options.fillColor || toolColors.getFillColor(); +*/ + +var angleCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var arrowAnnotateCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n ", { + viewBox: { + x: 24, + y: 24 + } +}); +var bidirectionalCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n \n \n \n \n \n ", { + viewBox: { + x: 48, + y: 48 + } +}); +var cobbAngleCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n \n \n \n ", { + viewBox: { + x: 32, + y: 32 + } +}); +var circleRoiCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 32, + y: 32 + } +}); +var ellipticalRoiCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 32, + y: 32 + } +}); +var freehandRoiCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ", { + viewBox: { + x: 18, + y: 18 + } +}); +var freehandRoiSculptorCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ", { + viewBox: { + x: 18, + y: 18 + } +}); +var lengthCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n \n ", { + viewBox: { + x: 24, + y: 24 + } +}); +var probeCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var rectangleRoiCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var textMarkerCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var crosshairsCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var eraserCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 2048, + y: 1792 + } +}); +var magnifyCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 512, + y: 512 + } +}); +var panCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var rotateCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var stackScrollCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 24, + y: 28 + } +}); +var wwwcRegionCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("", { + viewBox: { + x: 1792, + y: 1792 + } +}); +var wwwcCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n ", { + viewBox: { + x: 18, + y: 18 + } +}); +var zoomCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("\n ", { + viewBox: { + x: 640, + y: 512 + } +}); +var segToolCursorBoundaries = { + x: 127, + y: 60 +}; + +var minusRect = function minusRect() { + var color = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ACTIVE_COLOR'; + return ""); +}; + +var plusRect = function plusRect() { + var color = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ACTIVE_COLOR'; + return "\n "); +}; + +var scissorIcon = ""; +var rectangleIcon = ""; +var circleIcon = ""; +var freehandEraseInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(scissorIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var freehandFillInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(scissorIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); +var freehandEraseOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(scissorIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var freehandFillOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(scissorIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); +var segRectangleEraseInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(rectangleIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var segRectangleFillInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(rectangleIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); +var segRectangleEraseOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(rectangleIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var segRectangleFillOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(rectangleIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); +var segCircleEraseInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(circleIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var segCircleFillInsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(circleIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); +var segCircleEraseOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(circleIcon, " ").concat(minusRect()), { + viewBox: segToolCursorBoundaries +}); +var segCircleFillOutsideCursor = new _MouseCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"]("".concat(circleIcon, " ").concat(plusRect()), { + viewBox: segToolCursorBoundaries +}); + +/***/ }), + +/***/ "./tools/index.js": +/*!************************!*\ + !*** ./tools/index.js ***! + \************************/ +/*! exports provided: CrosshairsTool, DoubleTapFitToWindowTool, DragProbeTool, EraserTool, FreehandRoiSculptorTool, MagnifyTool, OverlayTool, OrientationMarkersTool, PanMultiTouchTool, PanTool, ReferenceLinesTool, RotateTool, RotateTouchTool, ScaleOverlayTool, StackScrollMouseWheelTool, StackScrollMultiTouchTool, StackScrollTool, WwwcRegionTool, WwwcTool, ZoomMouseWheelTool, ZoomTool, ZoomTouchPinchTool, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _CrosshairsTool_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CrosshairsTool.js */ "./tools/CrosshairsTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CrosshairsTool", function() { return _CrosshairsTool_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _DoubleTapFitToWindowTool_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DoubleTapFitToWindowTool.js */ "./tools/DoubleTapFitToWindowTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DoubleTapFitToWindowTool", function() { return _DoubleTapFitToWindowTool_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _DragProbeTool_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./DragProbeTool.js */ "./tools/DragProbeTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragProbeTool", function() { return _DragProbeTool_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _EraserTool_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./EraserTool.js */ "./tools/EraserTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EraserTool", function() { return _EraserTool_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _FreehandRoiSculptorTool_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./FreehandRoiSculptorTool.js */ "./tools/FreehandRoiSculptorTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandRoiSculptorTool", function() { return _FreehandRoiSculptorTool_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _MagnifyTool_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./MagnifyTool.js */ "./tools/MagnifyTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "MagnifyTool", function() { return _MagnifyTool_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + +/* harmony import */ var _OverlayTool_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./OverlayTool.js */ "./tools/OverlayTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "OverlayTool", function() { return _OverlayTool_js__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony import */ var _OrientationMarkersTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./OrientationMarkersTool.js */ "./tools/OrientationMarkersTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "OrientationMarkersTool", function() { return _OrientationMarkersTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony import */ var _PanMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./PanMultiTouchTool.js */ "./tools/PanMultiTouchTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PanMultiTouchTool", function() { return _PanMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _PanTool_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./PanTool.js */ "./tools/PanTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PanTool", function() { return _PanTool_js__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony import */ var _ReferenceLinesTool_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./ReferenceLinesTool.js */ "./tools/ReferenceLinesTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ReferenceLinesTool", function() { return _ReferenceLinesTool_js__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + +/* harmony import */ var _RotateTool_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./RotateTool.js */ "./tools/RotateTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RotateTool", function() { return _RotateTool_js__WEBPACK_IMPORTED_MODULE_11__["default"]; }); + +/* harmony import */ var _RotateTouchTool_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./RotateTouchTool.js */ "./tools/RotateTouchTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RotateTouchTool", function() { return _RotateTouchTool_js__WEBPACK_IMPORTED_MODULE_12__["default"]; }); + +/* harmony import */ var _ScaleOverlayTool_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./ScaleOverlayTool.js */ "./tools/ScaleOverlayTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ScaleOverlayTool", function() { return _ScaleOverlayTool_js__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + +/* harmony import */ var _StackScrollMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./StackScrollMouseWheelTool.js */ "./tools/StackScrollMouseWheelTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollMouseWheelTool", function() { return _StackScrollMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_14__["default"]; }); + +/* harmony import */ var _StackScrollMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./StackScrollMultiTouchTool.js */ "./tools/StackScrollMultiTouchTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollMultiTouchTool", function() { return _StackScrollMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_15__["default"]; }); + +/* harmony import */ var _StackScrollTool_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./StackScrollTool.js */ "./tools/StackScrollTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StackScrollTool", function() { return _StackScrollTool_js__WEBPACK_IMPORTED_MODULE_16__["default"]; }); + +/* harmony import */ var _WwwcRegionTool_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./WwwcRegionTool.js */ "./tools/WwwcRegionTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "WwwcRegionTool", function() { return _WwwcRegionTool_js__WEBPACK_IMPORTED_MODULE_17__["default"]; }); + +/* harmony import */ var _WwwcTool_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./WwwcTool.js */ "./tools/WwwcTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "WwwcTool", function() { return _WwwcTool_js__WEBPACK_IMPORTED_MODULE_18__["default"]; }); + +/* harmony import */ var _ZoomMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./ZoomMouseWheelTool.js */ "./tools/ZoomMouseWheelTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomMouseWheelTool", function() { return _ZoomMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_19__["default"]; }); + +/* harmony import */ var _ZoomTool_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./ZoomTool.js */ "./tools/ZoomTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomTool", function() { return _ZoomTool_js__WEBPACK_IMPORTED_MODULE_20__["default"]; }); + +/* harmony import */ var _ZoomTouchPinchTool_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./ZoomTouchPinchTool.js */ "./tools/ZoomTouchPinchTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ZoomTouchPinchTool", function() { return _ZoomTouchPinchTool_js__WEBPACK_IMPORTED_MODULE_21__["default"]; }); + + + + + + + + + + + + + + + + + + + + + + + // Named Exports + + // Namespace, default export + +/* harmony default export */ __webpack_exports__["default"] = ({ + CrosshairsTool: _CrosshairsTool_js__WEBPACK_IMPORTED_MODULE_0__["default"], + DoubleTapFitToWindowTool: _DoubleTapFitToWindowTool_js__WEBPACK_IMPORTED_MODULE_1__["default"], + DragProbeTool: _DragProbeTool_js__WEBPACK_IMPORTED_MODULE_2__["default"], + EraserTool: _EraserTool_js__WEBPACK_IMPORTED_MODULE_3__["default"], + FreehandRoiSculptorTool: _FreehandRoiSculptorTool_js__WEBPACK_IMPORTED_MODULE_4__["default"], + MagnifyTool: _MagnifyTool_js__WEBPACK_IMPORTED_MODULE_5__["default"], + OverlayTool: _OverlayTool_js__WEBPACK_IMPORTED_MODULE_6__["default"], + OrientationMarkersTool: _OrientationMarkersTool_js__WEBPACK_IMPORTED_MODULE_7__["default"], + PanMultiTouchTool: _PanMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_8__["default"], + PanTool: _PanTool_js__WEBPACK_IMPORTED_MODULE_9__["default"], + ReferenceLinesTool: _ReferenceLinesTool_js__WEBPACK_IMPORTED_MODULE_10__["default"], + RotateTool: _RotateTool_js__WEBPACK_IMPORTED_MODULE_11__["default"], + RotateTouchTool: _RotateTouchTool_js__WEBPACK_IMPORTED_MODULE_12__["default"], + ScaleOverlayTool: _ScaleOverlayTool_js__WEBPACK_IMPORTED_MODULE_13__["default"], + StackScrollMouseWheelTool: _StackScrollMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_14__["default"], + StackScrollMultiTouchTool: _StackScrollMultiTouchTool_js__WEBPACK_IMPORTED_MODULE_15__["default"], + StackScrollTool: _StackScrollTool_js__WEBPACK_IMPORTED_MODULE_16__["default"], + WwwcRegionTool: _WwwcRegionTool_js__WEBPACK_IMPORTED_MODULE_17__["default"], + WwwcTool: _WwwcTool_js__WEBPACK_IMPORTED_MODULE_18__["default"], + ZoomMouseWheelTool: _ZoomMouseWheelTool_js__WEBPACK_IMPORTED_MODULE_19__["default"], + ZoomTool: _ZoomTool_js__WEBPACK_IMPORTED_MODULE_20__["default"], + ZoomTouchPinchTool: _ZoomTouchPinchTool_js__WEBPACK_IMPORTED_MODULE_21__["default"] +}); + +/***/ }), + +/***/ "./tools/referenceLines/calculateReferenceLine.js": +/*!********************************************************!*\ + !*** ./tools/referenceLines/calculateReferenceLine.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _util_pointProjector_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../util/pointProjector.js */ "./util/pointProjector.js"); + +/** + * Calculates a reference line between two planes by projecting the top left hand corner and bottom right hand corner + * Of the reference image onto the target image. Ideally we would calculate the intersection between the planes but + * That requires a bit more math and this works fine for most cases. + * + * @export + * @public + * @method + * @name calculateReferenceLine + * @param {Object} targetImagePlane The imagePlane on which the reference line will be drawn. + * @param {Object} referenceImagePlane The imagePlane being referenced. + * @returns {Object} The start and end points of the line to be drawn. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (targetImagePlane, referenceImagePlane) { + var points = Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_0__["planePlaneIntersection"])(targetImagePlane, referenceImagePlane); + + if (!points) { + return; + } + + return { + start: Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_0__["projectPatientPointToImagePlane"])(points.start, targetImagePlane), + end: Object(_util_pointProjector_js__WEBPACK_IMPORTED_MODULE_0__["projectPatientPointToImagePlane"])(points.end, targetImagePlane) + }; +}); + +/***/ }), + +/***/ "./tools/referenceLines/renderActiveReferenceLine.js": +/*!***********************************************************!*\ + !*** ./tools/referenceLines/renderActiveReferenceLine.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _calculateReferenceLine_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./calculateReferenceLine.js */ "./tools/referenceLines/calculateReferenceLine.js"); +/* harmony import */ var _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../../stateManagement/toolColors.js */ "./stateManagement/toolColors.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../../util/convertToVector3.js */ "./util/convertToVector3.js"); +/* harmony import */ var _drawing_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./../../drawing/index.js */ "./drawing/index.js"); + + + + + +/** + * Renders the active reference line. + * + * @export @public @method + * @name renderActiveReferenceLine + * @param {Object} context The canvas context. + * @param {Object} eventData The data associated with the event. + * @param {HTMLElement} targetElement The element on which to render the reference line. + * @param {HTMLElement} referenceElement The element referenced by the line. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (context, eventData, targetElement, referenceElement) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var targetImage = cornerstone.getEnabledElement(targetElement).image; + var referenceImage = cornerstone.getEnabledElement(referenceElement).image; // Make sure the images are actually loaded for the target and reference + + if (!targetImage || !referenceImage) { + return; + } + + var targetImagePlane = cornerstone.metaData.get('imagePlaneModule', targetImage.imageId); + var referenceImagePlane = cornerstone.metaData.get('imagePlaneModule', referenceImage.imageId); // Make sure the target and reference actually have image plane metadata + + if (!targetImagePlane || !referenceImagePlane || !targetImagePlane.rowCosines || !targetImagePlane.columnCosines || !targetImagePlane.imagePositionPatient || !referenceImagePlane.rowCosines || !referenceImagePlane.columnCosines || !referenceImagePlane.imagePositionPatient) { + return; + } // The image planes must be in the same frame of reference + + + if (targetImagePlane.frameOfReferenceUID !== referenceImagePlane.frameOfReferenceUID) { + return; + } + + targetImagePlane.rowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(targetImagePlane.rowCosines); + targetImagePlane.columnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(targetImagePlane.columnCosines); + targetImagePlane.imagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(targetImagePlane.imagePositionPatient); + referenceImagePlane.rowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(referenceImagePlane.rowCosines); + referenceImagePlane.columnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(referenceImagePlane.columnCosines); + referenceImagePlane.imagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_3__["default"])(referenceImagePlane.imagePositionPatient); // The image plane normals must be > 30 degrees apart + + var targetNormal = targetImagePlane.rowCosines.clone().cross(targetImagePlane.columnCosines); + var referenceNormal = referenceImagePlane.rowCosines.clone().cross(referenceImagePlane.columnCosines); + var angleInRadians = targetNormal.angleTo(referenceNormal); + angleInRadians = Math.abs(angleInRadians); + + if (angleInRadians < 0.5) { + // 0.5 radians = ~30 degrees + return; + } + + var referenceLine = Object(_calculateReferenceLine_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetImagePlane, referenceImagePlane); + + if (!referenceLine) { + return; + } + + var color = _stateManagement_toolColors_js__WEBPACK_IMPORTED_MODULE_2__["default"].getActiveColor(); // Draw the referenceLines + + context.setTransform(1, 0, 0, 1, 0, 0); + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_4__["draw"])(context, function (context) { + Object(_drawing_index_js__WEBPACK_IMPORTED_MODULE_4__["drawLine"])(context, eventData.element, referenceLine.start, referenceLine.end, { + color: color + }); + }); +}); + +/***/ }), + +/***/ "./tools/segmentation/BrushTool.js": +/*!*****************************************!*\ + !*** ./tools/segmentation/BrushTool.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return BrushTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../base */ "./tools/base/index.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_segmentation_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/segmentation/index.js */ "./util/segmentation/index.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); + + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_10__["getLogger"])('tools:BrushTool'); +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_8__["getModule"])('segmentation'); +/** + * @public + * @class BrushTool + * @memberof Tools.Brush + * @classdesc Tool for drawing segmentations on an image. + * @extends Tools.Base.BaseBrushTool + */ + +var BrushTool = +/*#__PURE__*/ +function (_BaseBrushTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(BrushTool, _BaseBrushTool); + + function BrushTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, BrushTool); + + var defaultProps = { + name: 'Brush', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: {}, + mixins: ['renderBrushMixin'] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(BrushTool).call(this, props, defaultProps)); + _this.touchDragCallback = _this._paint.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + /** + * Paints the data to the labelmap. + * + * @protected + * @param {Object} evt The data object associated with the event. + * @returns {void} + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(BrushTool, [{ + key: "_paint", + value: function _paint(evt) { + var configuration = segmentationModule.configuration; + var eventData = evt.detail; + var element = eventData.element; + var _eventData$image = eventData.image, + rows = _eventData$image.rows, + columns = _eventData$image.columns; + var _eventData$currentPoi = eventData.currentPoints.image, + x = _eventData$currentPoi.x, + y = _eventData$currentPoi.y; + + if (x < 0 || x > columns || y < 0 || y > rows) { + return; + } + + var radius = configuration.radius; + var pointerArray = Object(_util_segmentation_index_js__WEBPACK_IMPORTED_MODULE_9__["getCircle"])(radius, rows, columns, x, y); + var _this$paintEventData = this.paintEventData, + labelmap2D = _this$paintEventData.labelmap2D, + labelmap3D = _this$paintEventData.labelmap3D, + shouldErase = _this$paintEventData.shouldErase; // Draw / Erase the active color. + + Object(_util_segmentation_index_js__WEBPACK_IMPORTED_MODULE_9__["drawBrushPixels"])(pointerArray, labelmap2D.pixelData, labelmap3D.activeSegmentIndex, columns, shouldErase); + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(evt.detail.element); + } + }]); + + return BrushTool; +}(_base__WEBPACK_IMPORTED_MODULE_7__["BaseBrushTool"]); + + + +/***/ }), + +/***/ "./tools/segmentation/CircleScissorsTool.js": +/*!**************************************************!*\ + !*** ./tools/segmentation/CircleScissorsTool.js ***! + \**************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return CircleScissorsTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../base */ "./tools/base/index.js"); +/* harmony import */ var _strategies__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./strategies */ "./tools/segmentation/strategies/index.js"); +/* harmony import */ var _cursors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../cursors */ "./tools/cursors/index.js"); + + + + + + + +/** + * @public + * @class CircleScissorsTool + * @memberof Tools + * @classdesc Tool for manipulating labelmap data by drawing a circle. + * @extends Tools.Base.BaseTool + */ + +var CircleScissorsTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(CircleScissorsTool, _BaseTool); + + /** @inheritdoc */ + function CircleScissorsTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, CircleScissorsTool); + + var defaultProps = { + name: 'CircleScissors', + strategies: { + FILL_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillInsideCircle"], + FILL_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillOutsideCircle"], + ERASE_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseOutsideCircle"], + ERASE_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseInsideCircle"] + }, + cursors: { + FILL_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segCircleFillInsideCursor"], + FILL_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segCircleFillOutsideCursor"], + ERASE_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segCircleEraseOutsideCursor"], + ERASE_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segCircleEraseInsideCursor"] + }, + defaultStrategy: 'FILL_INSIDE', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors__WEBPACK_IMPORTED_MODULE_6__["segCircleFillInsideCursor"], + mixins: ['circleSegmentationMixin'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default()(CircleScissorsTool).call(this, props, defaultProps)); + } + + return CircleScissorsTool; +}(_base__WEBPACK_IMPORTED_MODULE_4__["BaseTool"]); + + + +/***/ }), + +/***/ "./tools/segmentation/CorrectionScissorsTool.js": +/*!******************************************************!*\ + !*** ./tools/segmentation/CorrectionScissorsTool.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return CorrectionScissorsTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../base */ "./tools/base/index.js"); +/* harmony import */ var _cursors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cursors */ "./tools/cursors/index.js"); +/* harmony import */ var _strategies__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./strategies */ "./tools/segmentation/strategies/index.js"); + + + + + + + +/** + * @public + * @class CorrectionScissorsTool + * @memberof Tools + * @classdesc Tool for correcting segments on a labelmap. + * @extends Tools.Base.BaseTool + */ + +var CorrectionScissorsTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(CorrectionScissorsTool, _BaseTool); + + /** @inheritdoc */ + function CorrectionScissorsTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, CorrectionScissorsTool); + + var defaultProps = { + name: 'CorrectionScissors', + strategies: { + CORRECTION: _strategies__WEBPACK_IMPORTED_MODULE_6__["correction"] + }, + cursors: { + CORRECTION: _cursors__WEBPACK_IMPORTED_MODULE_5__["freehandFillInsideCursor"] + }, + defaultStrategy: 'CORRECTION', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors__WEBPACK_IMPORTED_MODULE_5__["freehandFillInsideCursor"], + mixins: ['polylineSegmentationMixin'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default()(CorrectionScissorsTool).call(this, props, defaultProps)); + } + + return CorrectionScissorsTool; +}(_base__WEBPACK_IMPORTED_MODULE_4__["BaseTool"]); + + + +/***/ }), + +/***/ "./tools/segmentation/FreehandScissorsTool.js": +/*!****************************************************!*\ + !*** ./tools/segmentation/FreehandScissorsTool.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FreehandScissorsTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _cursors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../cursors */ "./tools/cursors/index.js"); +/* harmony import */ var _strategies__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./strategies */ "./tools/segmentation/strategies/index.js"); +/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../base */ "./tools/base/index.js"); + + + + + + + +/** + * @public + * @class FreehandScissorsTool + * @memberof Tools + * @classdesc Tool for manipulating labelmap data by drawing a freehand polygon. + * @extends Tools.Base.BaseTool + */ + +var FreehandScissorsTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(FreehandScissorsTool, _BaseTool); + + /** @inheritdoc */ + function FreehandScissorsTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, FreehandScissorsTool); + + var defaultProps = { + name: 'FreehandScissors', + strategies: { + FILL_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillInsideFreehand"], + FILL_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillOutsideFreehand"], + ERASE_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseOutsideFreehand"], + ERASE_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseInsideFreehand"] + }, + cursors: { + FILL_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_4__["freehandFillInsideCursor"], + FILL_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_4__["freehandFillOutsideCursor"], + ERASE_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_4__["freehandEraseOutsideCursor"], + ERASE_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_4__["freehandEraseInsideCursor"] + }, + defaultStrategy: 'FILL_INSIDE', + supportedInteractionTypes: ['Mouse', 'Touch'], + svgCursor: _cursors__WEBPACK_IMPORTED_MODULE_4__["freehandFillInsideCursor"], + mixins: ['freehandSegmentationMixin'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default()(FreehandScissorsTool).call(this, props, defaultProps)); + } + + return FreehandScissorsTool; +}(_base__WEBPACK_IMPORTED_MODULE_6__["BaseTool"]); + + + +/***/ }), + +/***/ "./tools/segmentation/RectangleScissorsTool.js": +/*!*****************************************************!*\ + !*** ./tools/segmentation/RectangleScissorsTool.js ***! + \*****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return RectangleScissorsTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../base */ "./tools/base/index.js"); +/* harmony import */ var _strategies__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./strategies */ "./tools/segmentation/strategies/index.js"); +/* harmony import */ var _cursors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../cursors */ "./tools/cursors/index.js"); + + + + + + + +/** + * @public + * @class RectangleScissorsTool + * @memberof Tools + * @classdesc Tool for manipulating labelmap data by drawing a rectangle. + * @extends Tools.Base.BaseTool + */ + +var RectangleScissorsTool = +/*#__PURE__*/ +function (_BaseTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(RectangleScissorsTool, _BaseTool); + + /** @inheritdoc */ + function RectangleScissorsTool() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, RectangleScissorsTool); + + var defaultProps = { + name: 'RectangleScissors', + strategies: { + FILL_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillInsideRectangle"], + FILL_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["fillOutsideRectangle"], + ERASE_OUTSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseOutsideRectangle"], + ERASE_INSIDE: _strategies__WEBPACK_IMPORTED_MODULE_5__["eraseInsideRectangle"] + }, + cursors: { + FILL_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segRectangleFillInsideCursor"], + FILL_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segRectangleFillOutsideCursor"], + ERASE_OUTSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segRectangleEraseOutsideCursor"], + ERASE_INSIDE: _cursors__WEBPACK_IMPORTED_MODULE_6__["segRectangleEraseInsideCursor"] + }, + defaultStrategy: 'FILL_INSIDE', + supportedInteractionTypes: ['Mouse', 'Touch'], + mixins: ['rectangleSegmentationMixin'] + }; + return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_1___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_2___default()(RectangleScissorsTool).call(this, props, defaultProps)); + } + + return RectangleScissorsTool; +}(_base__WEBPACK_IMPORTED_MODULE_4__["BaseTool"]); + + + +/***/ }), + +/***/ "./tools/segmentation/SphericalBrushTool.js": +/*!**************************************************!*\ + !*** ./tools/segmentation/SphericalBrushTool.js ***! + \**************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return SphericalBrushTool; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); +/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./../base/BaseBrushTool.js */ "./tools/base/BaseBrushTool.js"); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./../../store/index.js */ "./store/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _util_logger_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../util/logger.js */ "./util/logger.js"); + + + + + + + + + + + + + +var logger = Object(_util_logger_js__WEBPACK_IMPORTED_MODULE_11__["getLogger"])('tools:SphericalBrushTool'); +var segmentationModule = Object(_store_index_js__WEBPACK_IMPORTED_MODULE_8__["getModule"])('segmentation'); +/** + * @public + * @class BrushTool + * @memberof Tools.Brush + * @classdesc Tool for drawing segmentations on an image. + * @extends Tools.Base.BaseBrushTool + */ + +var SphericalBrushTool = +/*#__PURE__*/ +function (_BaseBrushTool) { + _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5___default()(SphericalBrushTool, _BaseBrushTool); + + function SphericalBrushTool() { + var _this; + + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, SphericalBrushTool); + + var defaultProps = { + name: 'SphericalBrush', + supportedInteractionTypes: ['Mouse', 'Touch'], + configuration: { + alwaysEraseOnClick: false + }, + mixins: ['renderBrushMixin'] + }; + _this = _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(SphericalBrushTool).call(this, props, defaultProps)); + _this.touchDragCallback = _this._paint.bind(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4___default()(_this)); + return _this; + } + /** + * Initialise painting with BaseBrushTool. + * + * @abstract + * @event + * @param {Object} evt - The event. + * @returns {void} + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(SphericalBrushTool, [{ + key: "_startPainting", + value: function _startPainting(evt) { + var configuration = segmentationModule.configuration, + getters = segmentationModule.getters; + var eventData = evt.detail; + var element = eventData.element, + image = eventData.image; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone; + var radius = configuration.radius; + var rows = image.rows, + columns = image.columns; + var pixelSpacing = Math.max(image.rowPixelSpacing, image.columnPixelSpacing); + var stackState = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_10__["getToolState"])(element, 'stack'); + var stackData = stackState.data[0]; + var imageIds = stackData.imageIds; + + var _getters$labelmap2D = getters.labelmap2D(element), + labelmap2D = _getters$labelmap2D.labelmap2D, + labelmap3D = _getters$labelmap2D.labelmap3D, + currentImageIdIndex = _getters$labelmap2D.currentImageIdIndex, + activeLabelmapIndex = _getters$labelmap2D.activeLabelmapIndex; + + var shouldErase = this._isCtrlDown(eventData) || this.configuration.alwaysEraseOnClick; + var imagePlaneOfCurrentImage = cornerstone.metaData.get('imagePlaneModule', image.imageId); + var imagesInRange; + + if (imagePlaneOfCurrentImage) { + var ippOfCurrentImage = imagePlaneOfCurrentImage.imagePositionPatient; + imagesInRange = this._getImagesInRange(currentImageIdIndex, ippOfCurrentImage, imageIds, radius, pixelSpacing); + } else { + logger.warn("No imagePlane metadata found for image, defaulting to circle brush application."); + imagesInRange = [// The current image. + { + imageIdIndex: currentImageIdIndex, + radiusOnImage: radius + }]; + } + + this.paintEventData = { + labelmap2D: labelmap2D, + labelmap3D: labelmap3D, + currentImageIdIndex: currentImageIdIndex, + activeLabelmapIndex: activeLabelmapIndex, + shouldErase: shouldErase, + imagesInRange: imagesInRange + }; + + if (configuration.storeHistory) { + var previousPixeldataForImagesInRange = []; + + for (var i = 0; i < imagesInRange.length; i++) { + var imageIdIndex = imagesInRange[i].imageIdIndex; + var labelmap2DForImageIdIndex = getters.labelmap2DByImageIdIndex(labelmap3D, imageIdIndex, rows, columns); + var previousPixeldata = labelmap2DForImageIdIndex.pixelData.slice(); + previousPixeldataForImagesInRange.push(previousPixeldata); + } + + this.paintEventData.previousPixeldataForImagesInRange = previousPixeldataForImagesInRange; + } + } + /** + * Paints the data to the labelmap. + * + * @private + * @param {Object} evt The data object associated with the event. + * @returns {void} + */ + + }, { + key: "_paint", + value: function _paint(evt) { + var getters = segmentationModule.getters; + var eventData = evt.detail; + var element = eventData.element; + var image = eventData.image; + var rows = image.rows, + columns = image.columns; + var _eventData$currentPoi = eventData.currentPoints.image, + x = _eventData$currentPoi.x, + y = _eventData$currentPoi.y; + + if (x < 0 || x > columns || y < 0 || y > rows) { + return; + } + + var _this$paintEventData = this.paintEventData, + labelmap3D = _this$paintEventData.labelmap3D, + imagesInRange = _this$paintEventData.imagesInRange, + shouldErase = _this$paintEventData.shouldErase; + + for (var i = 0; i < imagesInRange.length; i++) { + var _imagesInRange$i = imagesInRange[i], + imageIdIndex = _imagesInRange$i.imageIdIndex, + radiusOnImage = _imagesInRange$i.radiusOnImage; + var pointerArray = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_9__["getCircle"])(radiusOnImage, rows, columns, x, y); // Cache the view on this image if its not present. + + var labelmap2DForImageIdIndex = getters.labelmap2DByImageIdIndex(labelmap3D, imageIdIndex, rows, columns); // Draw / Erase the active color. + + Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_9__["drawBrushPixels"])(pointerArray, labelmap2DForImageIdIndex.pixelData, labelmap3D.activeSegmentIndex, columns, shouldErase); + } + + _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.updateImage(evt.detail.element); + } + /** + * _getImagesInRange - Returns an array of image Ids within range of the + * sphere, and the in-plane brush radii of those images. + * + * @param {string} currentImageIdIndex The imageId of the image displayed on + * the cornerstone enabled element. + * @param {number[]} ippOfCurrentImage The image position patient of the image. + * @param {string[]} imageIds An array of images in the stack. + * @param {number} radius The radius of the sphere. + * @param {number} pixelSpacing The pixelSpacing. + * @returns {Object[]} An array of imageIds in range and their + * in plane brush radii. + */ + + }, { + key: "_getImagesInRange", + value: function _getImagesInRange(currentImageIdIndex, ippOfCurrentImage, imageIds, radius, pixelSpacing) { + var radiusInMM = radius * pixelSpacing; + var imagesInRange = [// The current image. + { + imageIdIndex: currentImageIdIndex, + radiusOnImage: radius + }]; // Check images above + + for (var i = currentImageIdIndex + 1; i < imageIds.length; i++) { + var radiusOnImage = this._getRadiusOnImage(imageIds[i], ippOfCurrentImage, radiusInMM, pixelSpacing); + + if (!radiusOnImage) { + break; + } + + imagesInRange.push({ + imageIdIndex: i, + radiusOnImage: radiusOnImage + }); + } // Check images below + + + for (var _i = currentImageIdIndex - 1; _i >= 0; _i--) { + var _radiusOnImage = this._getRadiusOnImage(imageIds[_i], ippOfCurrentImage, radiusInMM, pixelSpacing); + + if (!_radiusOnImage) { + break; + } + + imagesInRange.push({ + imageIdIndex: _i, + radiusOnImage: _radiusOnImage + }); + } + + return imagesInRange; + } + /** + * _getRadiusOnImage - If the image is in range of the spherical brush, returns + * the in-plane brush radius on that image. + * + * @param {string} imageId The cornerstone imageId of the image. + * @param {number[]} ippOfCurrentImage The image position patient of the current image. + * @param {number} radiusInMM The radius of the sphere in millimeters. + * @param {string} pixelSpacing The pixelspacing. + * @returns {number|undefined} The brush radius on the image, undefined if + * the image is out of range of the sphere. + */ + + }, { + key: "_getRadiusOnImage", + value: function _getRadiusOnImage(imageId, ippOfCurrentImage, radiusInMM, pixelSpacing) { + var imagePlane = _externalModules_js__WEBPACK_IMPORTED_MODULE_6__["default"].cornerstone.metaData.get('imagePlaneModule', imageId); + + if (!imagePlane) { + logger.warn("Can't find imagePlane metadata for image, cancelling spherical brushing on: ".concat(imageId, ",")); + return; + } + + var ipp = imagePlane.imagePositionPatient; + var distance = Math.sqrt(Math.pow(ipp[0] - ippOfCurrentImage[0], 2) + Math.pow(ipp[1] - ippOfCurrentImage[1], 2) + Math.pow(ipp[2] - ippOfCurrentImage[2], 2)); + + if (distance > radiusInMM) { + // Image too far away, break! + return; + } + + return Math.floor(Math.sqrt(Math.pow(radiusInMM, 2) - Math.pow(distance, 2)) / pixelSpacing); + } + }, { + key: "_endPainting", + value: function _endPainting(evt) { + var _this$paintEventData2 = this.paintEventData, + labelmap3D = _this$paintEventData2.labelmap3D, + imagesInRange = _this$paintEventData2.imagesInRange; + var operations = []; + var configuration = segmentationModule.configuration, + setters = segmentationModule.setters; + + for (var i = 0; i < imagesInRange.length; i++) { + var imageIdIndex = imagesInRange[i].imageIdIndex; + var labelmap2D = labelmap3D.labelmaps2D[imageIdIndex]; // Grab the labels on the slice. + + var segmentSet = new Set(labelmap2D.pixelData); + var iterator = segmentSet.values(); + var segmentsOnLabelmap = []; + var done = false; + + while (!done) { + var next = iterator.next(); + done = next.done; + + if (!done) { + segmentsOnLabelmap.push(next.value); + } + } + + labelmap2D.segmentsOnLabelmap = segmentsOnLabelmap; + + if (configuration.storeHistory) { + var previousPixeldataForImagesInRange = this.paintEventData.previousPixeldataForImagesInRange; + var previousPixeldata = previousPixeldataForImagesInRange[i]; + var _labelmap2D = labelmap3D.labelmaps2D[imageIdIndex]; + var newPixelData = _labelmap2D.pixelData; + operations.push({ + imageIdIndex: imageIdIndex, + diff: Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_9__["getDiffBetweenPixelData"])(previousPixeldata, newPixelData) + }); + } + } + + if (configuration.storeHistory) { + setters.pushState(this.element, operations); + } + + Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_9__["triggerLabelmapModifiedEvent"])(this.element); + } + }]); + + return SphericalBrushTool; +}(_base_BaseBrushTool_js__WEBPACK_IMPORTED_MODULE_7__["default"]); + + + +/***/ }), + +/***/ "./tools/segmentation/index.js": +/*!*************************************!*\ + !*** ./tools/segmentation/index.js ***! + \*************************************/ +/*! exports provided: BrushTool, SphericalBrushTool, FreehandScissorsTool, RectangleScissorsTool, CircleScissorsTool, CorrectionScissorsTool, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _BrushTool__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BrushTool */ "./tools/segmentation/BrushTool.js"); +/* harmony import */ var _SphericalBrushTool__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SphericalBrushTool */ "./tools/segmentation/SphericalBrushTool.js"); +/* harmony import */ var _FreehandScissorsTool__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FreehandScissorsTool */ "./tools/segmentation/FreehandScissorsTool.js"); +/* harmony import */ var _RectangleScissorsTool__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./RectangleScissorsTool */ "./tools/segmentation/RectangleScissorsTool.js"); +/* harmony import */ var _CircleScissorsTool__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./CircleScissorsTool */ "./tools/segmentation/CircleScissorsTool.js"); +/* harmony import */ var _CorrectionScissorsTool__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./CorrectionScissorsTool */ "./tools/segmentation/CorrectionScissorsTool.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BrushTool", function() { return _BrushTool__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SphericalBrushTool", function() { return _SphericalBrushTool__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FreehandScissorsTool", function() { return _FreehandScissorsTool__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RectangleScissorsTool", function() { return _RectangleScissorsTool__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CircleScissorsTool", function() { return _CircleScissorsTool__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CorrectionScissorsTool", function() { return _CorrectionScissorsTool__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + + + + + + + // Named Exports + + + + + + + // Namespace, default export + +/* harmony default export */ __webpack_exports__["default"] = ({ + BrushTool: _BrushTool__WEBPACK_IMPORTED_MODULE_0__["default"], + SphericalBrushTool: _SphericalBrushTool__WEBPACK_IMPORTED_MODULE_1__["default"], + CircleScissorsTool: _CircleScissorsTool__WEBPACK_IMPORTED_MODULE_4__["default"], + CorrectionScissorsTool: _CorrectionScissorsTool__WEBPACK_IMPORTED_MODULE_5__["default"], + FreehandScissorsTool: _FreehandScissorsTool__WEBPACK_IMPORTED_MODULE_2__["default"], + RectangleScissorsTool: _RectangleScissorsTool__WEBPACK_IMPORTED_MODULE_3__["default"] +}); + +/***/ }), + +/***/ "./tools/segmentation/strategies/correction.js": +/*!*****************************************************!*\ + !*** ./tools/segmentation/strategies/correction.js ***! + \*****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return correction; }); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.js */ "./tools/segmentation/strategies/index.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_clip__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/clip */ "./util/clip.js"); +/* harmony import */ var _util_isPointInImage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/isPointInImage */ "./util/isPointInImage.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_5__["getLogger"])('util:segmentation:operations:correction'); +/** + * Using the stroke given, determine which action(s) to perfom: + * - Stroke starts and ends inside a segmentation: Behaves as an subtractive freehand scissors. + * - Stroke starts and ends outside a segmentation: Behaves as an additive freehand scissors. + * - Stroke out-in-out: Section is subtracted. + * - Stroke in-out-in: Section is added. + * + * @param {Object} evt The cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * + * @returns {null} + */ + +function correction(evt, operationData) { + var pixelData = operationData.pixelData, + segmentIndex = operationData.segmentIndex, + segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "freehandSegmentationMixin") { + logger.error("correction operation requires freehandSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var nodes = snapPointsToGrid(evt, operationData); + var scissorOperation = checkIfSimpleScissorOperation(nodes, segmentIndex); + + if (scissorOperation.isScissorOperation) { + if (scissorOperation.operation === 'fillInsideFreehand') { + logger.warn('The line never intersects a segment.'); + Object(_index_js__WEBPACK_IMPORTED_MODULE_1__["fillInsideFreehand"])(evt, operationData); + } else if (scissorOperation.operation === 'eraseInsideFreehand') { + logger.warn('The line is only ever inside the segment.'); + Object(_index_js__WEBPACK_IMPORTED_MODULE_1__["eraseInsideFreehand"])(evt, operationData); + } + + return; + } // Create binary labelmap with only this segment for calculations of each operation. + + + var workingLabelMap = new Uint8Array(pixelData.length); + var operations = splitLineIntoSeperateOperations(nodes, segmentIndex); + operations.forEach(function (operation) { + performOperation(operation, pixelData, workingLabelMap, segmentIndex, evt); + }); +} +/** + * Snap the freehand points to the labelmap grid and attach a label for each node. + * + * @param {Object[]} points An array of points drawn by the user. + * @param {UInt16Array|Float32Array} pixelData The 2D labelmap. + * @param {Object} evt The cornerstone event. + * @returns {Object[]} + */ + +function snapPointsToGrid(evt, operationData) { + var pixelData = operationData.pixelData, + points = operationData.points; + var image = evt.detail.image; + var cols = image.width; + var rows = image.height; + var nodes = []; + + for (var i = 0; i < points.length; i++) { + var point = points[i]; + var x = Math.floor(point.x); + var y = Math.floor(point.y); // Clamp within the confines of the image. + + x = Object(_util_clip__WEBPACK_IMPORTED_MODULE_3__["default"])(x, 0, cols - 1); + y = Object(_util_clip__WEBPACK_IMPORTED_MODULE_3__["default"])(y, 0, rows - 1); + var lastNode = nodes[nodes.length - 1]; // Skip double counting of closely drawn freehand points. + + if (lastNode && x === lastNode.x && y === lastNode.y) { + continue; + } + + nodes.push({ + x: x, + y: y, + segment: pixelData[y * cols + x] + }); + } + + return nodes; +} +/** + * Check if the operation is a simple scissors add/remove. + * @param {Object[]} nodes - The nodes snapped to the grid. + * @param {number} segmentIndex + * @returns {Object} Information about the operation. + * `isScissorOperation` is true if the operation is a simple scissor. + * If `isScissorOperation` is true, `operation` says which operation. + */ + + +function checkIfSimpleScissorOperation(nodes, segmentIndex) { + var allInside = true; + var allOutside = true; + + for (var i = 0; i < nodes.length; i++) { + var node = nodes[i]; + + if (node.segment === segmentIndex) { + allOutside = false; + } else { + allInside = false; + } + + if (!allInside && !allOutside) { + break; + } + } + + if (allOutside) { + return { + isScissorOperation: true, + operation: 'fillInsideFreehand' + }; + } else if (allInside) { + return { + isScissorOperation: true, + operation: 'eraseInsideFreehand' + }; + } + + return { + isScissorOperation: false + }; +} +/** + * Performs the given add/subtract operation using a modification of the Tobias Heimann Correction Algorithm: + * The algorithm is described in full length in Tobias Heimann's diploma thesis (MBI Technical Report 145, p. 37 - 40). + * + * @param {Object} operation The operation. + * @param {UInt16Array|Float32Array} pixelData The 2D labelmap. + * @param {UInt16Array|Float32Array} workingLabelMap A copy of the labelmap for processing purposes. + * @param {number} segmentIndex The label of the tool being used. + * @param {Object} evt The cornerstone event. + */ + + +function performOperation(operation, pixelData, workingLabelMap, segmentIndex, evt) { + var _evt$detail$image = evt.detail.image, + cols = _evt$detail$image.width, + rows = _evt$detail$image.height; + var nodes = operation.nodes, + additive = operation.additive; + var shouldFillOver = additive ? 0 : 1; // Local getters to swap from cornerstone vector notation and flattened array indicies. + + var getPixelIndex = function getPixelIndex(pixelCoord) { + return pixelCoord.y * cols + pixelCoord.x; + }; + + var getPixelCoordinateFromPixelIndex = function getPixelCoordinateFromPixelIndex(pixelIndex) { + return { + x: pixelIndex % cols, + y: Math.floor(pixelIndex / cols) + }; + }; + + if (additive) { + logger.warn('additive operation...'); + } else { + logger.warn('subtractive operation...'); + } + + var _getPixelPaths = getPixelPaths(nodes), + pixelPath = _getPixelPaths.pixelPath, + leftPath = _getPixelPaths.leftPath, + rightPath = _getPixelPaths.rightPath; // Find extent of region for floodfill (This segment + the drawn loop). + // This is to reduce the extent of the outwards floodfill, which constitutes 99% of the computation. + + + var firstPixelOnPath = pixelPath[0]; + var boundingBox = { + xMin: firstPixelOnPath.x, + xMax: firstPixelOnPath.x, + yMin: firstPixelOnPath.y, + yMax: firstPixelOnPath.y + }; // ...whilst also initializing the workingLabelmap + + for (var i = 0; i < workingLabelMap.length; i++) { + if (pixelData[i] === segmentIndex) { + var pixel = getPixelCoordinateFromPixelIndex(i); + expandBoundingBox(boundingBox, pixel); + workingLabelMap[i] = 1; + } else { + workingLabelMap[i] = 0; + } + } // Set workingLabelmap pixelPath to 2 to form a + // Boundary in the working labelmap to contain the flood fills. + + + for (var _i = 0; _i < pixelPath.length; _i++) { + var _pixel = pixelPath[_i]; + workingLabelMap[getPixelIndex(_pixel)] = 2; + expandBoundingBox(boundingBox, _pixel); + } + + clipBoundingBox(boundingBox, rows, cols); + var xMin = boundingBox.xMin, + xMax = boundingBox.xMax, + yMin = boundingBox.yMin, + yMax = boundingBox.yMax; // Define a getter for the fill routine to access the working label map. + + function getter(x, y) { + // Check if out of bounds, as the flood filler doesn't know about the dimensions of + // The data structure. E.g. if cols is 10, (0,1) and (10, 0) would point to the same + // position in this getter. + if (x >= xMax || x < xMin || y >= yMax || y < yMin) { + return; + } + + return workingLabelMap[y * cols + x]; + } + + var leftArea = 0; + var rightArea = 0; // Traverse the path whilst pouring paint off the left and right sides. + + for (var _i2 = 0; _i2 < leftPath.length; _i2++) { + // Left fill + var leftPixel = leftPath[_i2]; + var leftValue = workingLabelMap[getPixelIndex(leftPixel)]; + + if (leftValue === shouldFillOver && Object(_util_isPointInImage__WEBPACK_IMPORTED_MODULE_4__["default"])(leftPixel, rows, cols)) { + leftArea += fillFromPixel(leftPixel, 3, workingLabelMap, getter, cols); + } // Right fill + + + var rightPixel = rightPath[_i2]; + var rightValue = workingLabelMap[getPixelIndex(rightPixel)]; + + if (rightValue === shouldFillOver && Object(_util_isPointInImage__WEBPACK_IMPORTED_MODULE_4__["default"])(rightPixel, rows, cols)) { + rightArea += fillFromPixel(rightPixel, 4, workingLabelMap, getter, cols); + } + } + + if (leftArea === 0 || rightArea === 0) { + // The areas are connected, therefore the start and end + // Of the path go through unconnected regions, exit. + return; + } + + var replaceValue = additive ? segmentIndex : 0; // Fill in smallest area. + + var fillValue = leftArea < rightArea ? 3 : 4; + + for (var _i3 = 0; _i3 < workingLabelMap.length; _i3++) { + if (workingLabelMap[_i3] === fillValue) { + pixelData[_i3] = replaceValue; + } + } + + if (replaceValue === segmentIndex) { + // Fill in the path. + for (var _i4 = 0; _i4 < pixelPath.length; _i4++) { + pixelData[getPixelIndex(pixelPath[_i4])] = segmentIndex; + } + } else { + // Only erase this segment. + for (var _i5 = 0; _i5 < pixelPath.length; _i5++) { + var pixelIndex = getPixelIndex(pixelPath[_i5]); + + if (pixelData[pixelIndex] === segmentIndex) { + pixelData[pixelIndex] = 0; + } + } + } +} +/** + * Expands the bounding box if the pixel falls outside it. + * + * @param {Object} boundingBox The bounding box. + * @param {Object} pixel The pixel. + * @returns {null} + */ + + +function expandBoundingBox(boundingBox, pixel) { + var x = pixel.x, + y = pixel.y; + + if (x < boundingBox.xMin) { + boundingBox.xMin = x; + } + + if (x > boundingBox.xMax) { + boundingBox.xMax = x; + } + + if (y < boundingBox.yMin) { + boundingBox.yMin = y; + } + + if (y > boundingBox.yMax) { + boundingBox.yMax = y; + } +} +/** + * Expands the bounding box by 2 px and then clips it to the image size. + * @param {Object} boundingBox The bounding box. + * @param {number} rows The number of rows. + * @param {number} cols The number of columns. + * @returns {null} + */ + + +function clipBoundingBox(boundingBox, rows, cols) { + // Add a 2px border to stop the floodfill starting out of bounds and exploading. + var border = 2; + boundingBox.xMax = Math.min(boundingBox.xMax + border, cols); + boundingBox.xMin = Math.max(boundingBox.xMin - border, 0); + boundingBox.yMax = Math.min(boundingBox.yMax + border, rows); + boundingBox.yMin = Math.max(boundingBox.yMin - border, 0); +} +/** + * Performs a floodfill from the given pixel to the workingLabelMap. + * @param {Object} pixel The pixel. + * @param {number} fillValue The fill value. + * @param {UInt8Array} workingLabelMap The working labelmap. + * @param {function} getter The getter function for pixels in the labelmap. + * @param {number} cols The number of columns. + * @returns {number} The number of pixels flooded. + */ + + +function fillFromPixel(pixel, fillValue, workingLabelMap, getter, cols) { + var result = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_2__["floodFill"])(getter, [pixel.x, pixel.y]); + var flooded = result.flooded; + + for (var p = 0; p < flooded.length; p++) { + var floodedI = flooded[p]; + workingLabelMap[floodedI[1] * cols + floodedI[0]] = fillValue; + } + + return flooded.length; +} +/** + * Interpolates the pixelPath using an obstacleless path finding algorithm. + * @param {Object[]} nodes The nodes to interpolate between. + * @returns {Object} The pixelPath, and the path to the left and right of it. + */ + + +function getPixelPaths(nodes) { + var pixelPath = []; + + for (var i = 0; i < nodes.length - 1; i++) { + // Push the node. + pixelPath.push(nodes[i]); // Path towards next node. + + pixelPath.push.apply(pixelPath, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_2__["getPixelPathBetweenPixels"])(nodes[i], nodes[i + 1]))); + } // Push final node. + + + pixelPath.push[nodes[nodes.length - 1]]; // Get paths on either side. + + var leftPath = []; + var rightPath = []; + + for (var _i6 = 0; _i6 < pixelPath.length - 1; _i6++) { + var _getNodesPerpendicula = getNodesPerpendicularToPathPixel(pixelPath[_i6], pixelPath[_i6 + 1]), + left = _getNodesPerpendicula.left, + right = _getNodesPerpendicula.right; + + leftPath.push(left); + rightPath.push(right); + } + + return { + pixelPath: pixelPath, + leftPath: leftPath, + rightPath: rightPath + }; +} +/** + * Using the current and next pixel on the path, determine the adjacent pixels + * which are perpendicular to the path direction. (i.e. to the left and to the right). + * + * @param {Object} pathPixel The pixel being queried. + * @param {Object} nextPathPixel the pathPixel's successor. + * + * @returns {Object} The coordinates of the left and right perpendicular pixels. + */ + + +function getNodesPerpendicularToPathPixel(pathPixel, nextPathPixel) { + var direction = { + x: nextPathPixel.x - pathPixel.x, + y: nextPathPixel.y - pathPixel.y + }; // P = pathPixel, n = nextPathPixel, L = left, R = right + // + // |n| |R| | |n| | |L| |n| + // | |p| | |L|p|R| | |p| | + // |L| | | | | | | | | |R| + // + // | |R| | | |L| | + // |n|p| | | |p|n| + // | |L| | | |R| | + // + // |R| | | | | | | | | |L| + // | |p| | |R|p|L| | |p| | + // |n| |L| | |n| | |R| |n| + + if (direction.x === -1 && direction.y === 1) { + return { + left: { + x: pathPixel.x - 1, + y: pathPixel.y - 1 + }, + right: { + x: pathPixel.x + 1, + y: pathPixel.y + 1 + } + }; + } else if (direction.x === 0 && direction.y === 1) { + return { + left: { + x: pathPixel.x - 1, + y: pathPixel.y + }, + right: { + x: pathPixel.x + 1, + y: pathPixel.y + } + }; + } else if (direction.x === 1 && direction.y === 1) { + return { + left: { + x: pathPixel.x - 1, + y: pathPixel.y + 1 + }, + right: { + x: pathPixel.x + 1, + y: pathPixel.y - 1 + } + }; + } else if (direction.x === 1 && direction.y === 0) { + return { + left: { + x: pathPixel.x, + y: pathPixel.y + 1 + }, + right: { + x: pathPixel.x, + y: pathPixel.y - 1 + } + }; + } else if (direction.x === 1 && direction.y === -1) { + return { + left: { + x: pathPixel.x + 1, + y: pathPixel.y + 1 + }, + right: { + x: pathPixel.x - 1, + y: pathPixel.y - 1 + } + }; + } else if (direction.x === 0 && direction.y === -1) { + return { + left: { + x: pathPixel.x + 1, + y: pathPixel.y + }, + right: { + x: pathPixel.x - 1, + y: pathPixel.y + } + }; + } else if (direction.x === -1 && direction.y === -1) { + return { + left: { + x: pathPixel.x + 1, + y: pathPixel.y - 1 + }, + right: { + x: pathPixel.x - 1, + y: pathPixel.y + 1 + } + }; + } else if (direction.x === -1 && direction.y === 0) { + return { + left: { + x: pathPixel.x, + y: pathPixel.y - 1 + }, + right: { + x: pathPixel.x, + y: pathPixel.y + 1 + } + }; + } + + logger.error("Unable to find left and right paths for flood fill ", pathPixel, nextPathPixel, direction); +} +/** + * Splits the path of nodes into seperate add/remove operations. + * + * @param {Object[]} nodes The array of nodes. + * @param {number} segmentIndex The label value to replace. + * @returns {{additive: boolean, nodes: []}[]} An array of operations to perform, + * whether they are `additive` and the + * corresponding `nodes` of the operation. + */ + + +function splitLineIntoSeperateOperations(nodes, segmentIndex) { + // Check whether the first node is inside a segment of the appropriate label or not. + var isLabel = nodes[0].segment === segmentIndex; + var operations = []; + operations.push({ + additive: !isLabel, + nodes: [] + }); + var operationIndex = 0; + + for (var i = 0; i < nodes.length; i++) { + var node = nodes[i]; + + if (isLabel) { + operations[operationIndex].nodes.push(node); + + if (node.segment !== segmentIndex) { + // Start a new operation and include the last two nodes. + operationIndex++; + isLabel = !isLabel; + operations.push({ + additive: true, + nodes: [] + }); + operations[operationIndex].nodes.push(nodes[i - 1]); + operations[operationIndex].nodes.push(node); + } + } else { + operations[operationIndex].nodes.push(node); + + if (node.segment === segmentIndex) { + // Start a new operation and add include the last two nodes. + operationIndex++; + isLabel = !isLabel; + operations.push({ + additive: false, + nodes: [] + }); + operations[operationIndex].nodes.push(nodes[i - 1]); + operations[operationIndex].nodes.push(node); + } + } + } // Trim the first and last entries, as they don't form full operations. + + + operations.pop(); + operations.shift(); + return operations; +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/eraseCircle.js": +/*!******************************************************!*\ + !*** ./tools/segmentation/strategies/eraseCircle.js ***! + \******************************************************/ +/*! exports provided: eraseInsideCircle, eraseOutsideCircle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseInsideCircle", function() { return eraseInsideCircle; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideCircle", function() { return eraseOutsideCircle; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_ellipse__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/ellipse */ "./util/ellipse/index.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_getCircleCoords_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/getCircleCoords.js */ "./util/getCircleCoords.js"); + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_2__["getLogger"])('util:segmentation:operations:eraseInsideCircle'); +/** + * EraseInsideCircle - Erase all pixels labeled with the activeSegmentIndex, + * in the region defined by the circle. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseCircle(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "circleSegmentationMixin") { + logger.error("eraseInsideCircle operation requires circleSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var eventData = evt.detail; + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_3__["getBoundingBoxAroundCircle"])(evt), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + var ellipse = Object(_util_getCircleCoords_js__WEBPACK_IMPORTED_MODULE_4__["default"])(eventData.handles.start, eventData.handles.end); + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_3__["eraseInsideShape"])(evt, operationData, function (point) { + return Object(_util_ellipse__WEBPACK_IMPORTED_MODULE_1__["pointInEllipse"])(ellipse, point); + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_3__["eraseOutsideShape"])(evt, operationData, function (point) { + return Object(_util_ellipse__WEBPACK_IMPORTED_MODULE_1__["pointInEllipse"])(ellipse, point); + }, topLeft, bottomRight); +} +/** + * Erase all pixels inside/outside the region defined by the circle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function eraseInsideCircle(evt, operationData) { + eraseCircle(evt, operationData, true); +} +/** + * Erase all pixels outside the region defined by the circle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseOutsideCircle(evt, operationData) { + eraseCircle(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/eraseFreehand.js": +/*!********************************************************!*\ + !*** ./tools/segmentation/strategies/eraseFreehand.js ***! + \********************************************************/ +/*! exports provided: eraseInsideFreehand, eraseOutsideFreehand */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseInsideFreehand", function() { return eraseInsideFreehand; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideFreehand", function() { return eraseOutsideFreehand; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/isPointInPolygon */ "./util/isPointInPolygon.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('util:segmentation:operations:eraseInsideFreehand'); +/** + * Erase all pixels labeled with the activeSegmentIndex, + * in the region defined by evt.operationData.points. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseFreehand(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var points = operationData.points, + segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "freehandSegmentationMixin") { + logger.error("eraseInsideFreehand operation requires freehandSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var image = evt.detail.image; + var vertices = points.map(function (a) { + return [a.x, a.y]; + }); + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["getBoundingBoxAroundPolygon"])(vertices, image), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["eraseInsideShape"])(evt, operationData, function (point) { + return Object(_util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__["default"])([point.x, point.y], vertices); + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["eraseOutsideShape"])(evt, operationData, function (point) { + return Object(_util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__["default"])([point.x, point.y], vertices); + }, topLeft, bottomRight); +} +/** + * Erase all pixels inside/outside the region defined by `operationData.points`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function eraseInsideFreehand(evt, operationData) { + eraseFreehand(evt, operationData, true); +} +/** + * Erase all pixels outside the region defined by `operationData.points`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseOutsideFreehand(evt, operationData) { + eraseFreehand(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/eraseRectangle.js": +/*!*********************************************************!*\ + !*** ./tools/segmentation/strategies/eraseRectangle.js ***! + \*********************************************************/ +/*! exports provided: eraseInsideRectangle, eraseOutsideRectangle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseInsideRectangle", function() { return eraseInsideRectangle; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideRectangle", function() { return eraseOutsideRectangle; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_1__["getLogger"])('util:segmentation:operations:eraseInsideRectangle'); +/** + * Erase all pixels inside the region defined by the rectangle. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseRectangle(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var points = operationData.points, + segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "rectangleSegmentationMixin") { + logger.error("eraseInsideRectangle operation requires rectangleSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var eventData = evt.detail; // Loop through all pixels in the segmentation data mask + // Obtain the bounding box of the entire drawing so that + // we can subset our search. + + var image = eventData.image; + var vertices = points.map(function (a) { + return [a.x, a.y]; + }); + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_2__["getBoundingBoxAroundPolygon"])(vertices, image), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_2__["eraseInsideShape"])(evt, operationData, function () { + return true; + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_2__["eraseOutsideBoundingBox"])(evt, operationData, topLeft, bottomRight); +} +/** + * Erase all pixels inside/outside the region defined by the rectangle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function eraseInsideRectangle(evt, operationData) { + eraseRectangle(evt, operationData, true); +} +/** + * Erase all pixels outside the region defined by the rectangle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function eraseOutsideRectangle(evt, operationData) { + eraseRectangle(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/fillCircle.js": +/*!*****************************************************!*\ + !*** ./tools/segmentation/strategies/fillCircle.js ***! + \*****************************************************/ +/*! exports provided: fillInsideCircle, fillOutsideCircle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillInsideCircle", function() { return fillInsideCircle; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillOutsideCircle", function() { return fillOutsideCircle; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_ellipse__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/ellipse */ "./util/ellipse/index.js"); +/* harmony import */ var _util_getCircleCoords__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/getCircleCoords */ "./util/getCircleCoords.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_4__["getLogger"])('util:segmentation:operations:fillCircle'); +/** + * Fill all pixels inside/outside the region defined by the circle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillCircle(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "circleSegmentationMixin") { + logger.error("fillInsideCircle operation requires circleSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var eventData = evt.detail; + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["getBoundingBoxAroundCircle"])(evt), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + var ellipse = Object(_util_getCircleCoords__WEBPACK_IMPORTED_MODULE_3__["default"])(eventData.handles.start, eventData.handles.end); + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillInsideShape"])(evt, operationData, function (point) { + return Object(_util_ellipse__WEBPACK_IMPORTED_MODULE_2__["pointInEllipse"])(ellipse, point); + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillOutsideShape"])(evt, operationData, function (point) { + return Object(_util_ellipse__WEBPACK_IMPORTED_MODULE_2__["pointInEllipse"])(ellipse, point); + }, topLeft, bottomRight); +} +/** + * Fill all pixels inside/outside the region defined by the circle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function fillInsideCircle(evt, operationData) { + fillCircle(evt, operationData, true); +} +/** + * Fill all pixels outside the region defined by the circle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillOutsideCircle(evt, operationData) { + fillCircle(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/fillFreehand.js": +/*!*******************************************************!*\ + !*** ./tools/segmentation/strategies/fillFreehand.js ***! + \*******************************************************/ +/*! exports provided: fillInsideFreehand, fillOutsideFreehand */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillInsideFreehand", function() { return fillInsideFreehand; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillOutsideFreehand", function() { return fillOutsideFreehand; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/isPointInPolygon */ "./util/isPointInPolygon.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('util:segmentation:operations:fillInsideFreehand'); +/** + * Fill all pixels inside/outside the region defined by + * `operationData.points` with the `activeSegmentIndex` value. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillFreehand(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var points = operationData.points, + segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "freehandSegmentationMixin") { + logger.error("eraseInsideFreehand operation requires freehandSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } // Obtain the bounding box of the entire drawing so that + // we can subset our search. Outside of the bounding box, + // everything is outside of the polygon. + + + var image = evt.detail.image; + var vertices = points.map(function (a) { + return [a.x, a.y]; + }); + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["getBoundingBoxAroundPolygon"])(vertices, image), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillInsideShape"])(evt, operationData, function (point) { + return Object(_util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__["default"])([point.x, point.y], vertices); + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillOutsideShape"])(evt, operationData, function (point) { + return Object(_util_isPointInPolygon__WEBPACK_IMPORTED_MODULE_2__["default"])([point.x, point.y], vertices); + }, topLeft, bottomRight); +} +/** + * Fill all pixels inside/outside the region defined by `operationData.points`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function fillInsideFreehand(evt, operationData) { + fillFreehand(evt, operationData, true); +} +/** + * Fill all pixels outside the region defined by `operationData.points`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillOutsideFreehand(evt, operationData) { + fillFreehand(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/fillRectangle.js": +/*!********************************************************!*\ + !*** ./tools/segmentation/strategies/fillRectangle.js ***! + \********************************************************/ +/*! exports provided: fillInsideRectangle, fillOutsideRectangle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillInsideRectangle", function() { return fillInsideRectangle; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillOutsideRectangle", function() { return fillOutsideRectangle; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _util_segmentation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/segmentation */ "./util/segmentation/index.js"); +/* harmony import */ var _util_logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../util/logger */ "./util/logger.js"); + + + +var logger = Object(_util_logger__WEBPACK_IMPORTED_MODULE_2__["getLogger"])('util:segmentation:operations:fillInsideRectangle'); +/** + * FillInsideRectangle - Fill all pixels inside/outside the region defined + * by the rectangle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillRectangle(evt, operationData) { + var inside = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + var points = operationData.points, + segmentationMixinType = operationData.segmentationMixinType; + + if (segmentationMixinType !== "rectangleSegmentationMixin") { + logger.error("eraseInsideRectangle operation requires rectangleSegmentationMixin operationData, recieved ".concat(segmentationMixinType)); + return; + } + + var image = evt.detail.image; + var vertices = points.map(function (a) { + return [a.x, a.y]; + }); + + var _getBoundingBoxAround = Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["getBoundingBoxAroundPolygon"])(vertices, image), + _getBoundingBoxAround2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_getBoundingBoxAround, 2), + topLeft = _getBoundingBoxAround2[0], + bottomRight = _getBoundingBoxAround2[1]; + + inside ? Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillInsideShape"])(evt, operationData, function () { + return true; + }, topLeft, bottomRight) : Object(_util_segmentation__WEBPACK_IMPORTED_MODULE_1__["fillOutsideBoundingBox"])(evt, operationData, topLeft, bottomRight); +} +/** + * Fill all pixels inside/outside the region defined by the rectangle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + + +function fillInsideRectangle(evt, operationData) { + fillRectangle(evt, operationData, true); +} +/** + * Fill all pixels outside the region defined by the rectangle. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @returns {null} + */ + +function fillOutsideRectangle(evt, operationData) { + fillRectangle(evt, operationData, false); +} + +/***/ }), + +/***/ "./tools/segmentation/strategies/index.js": +/*!************************************************!*\ + !*** ./tools/segmentation/strategies/index.js ***! + \************************************************/ +/*! exports provided: correction, eraseInsideFreehand, eraseOutsideFreehand, eraseInsideRectangle, eraseOutsideRectangle, fillInsideFreehand, fillOutsideFreehand, fillInsideRectangle, fillOutsideRectangle, fillInsideCircle, fillOutsideCircle, eraseInsideCircle, eraseOutsideCircle */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _correction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./correction */ "./tools/segmentation/strategies/correction.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "correction", function() { return _correction__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _eraseFreehand__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./eraseFreehand */ "./tools/segmentation/strategies/eraseFreehand.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseInsideFreehand", function() { return _eraseFreehand__WEBPACK_IMPORTED_MODULE_1__["eraseInsideFreehand"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideFreehand", function() { return _eraseFreehand__WEBPACK_IMPORTED_MODULE_1__["eraseOutsideFreehand"]; }); + +/* harmony import */ var _eraseRectangle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./eraseRectangle.js */ "./tools/segmentation/strategies/eraseRectangle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseInsideRectangle", function() { return _eraseRectangle_js__WEBPACK_IMPORTED_MODULE_2__["eraseInsideRectangle"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideRectangle", function() { return _eraseRectangle_js__WEBPACK_IMPORTED_MODULE_2__["eraseOutsideRectangle"]; }); + +/* harmony import */ var _fillFreehand__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./fillFreehand */ "./tools/segmentation/strategies/fillFreehand.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillInsideFreehand", function() { return _fillFreehand__WEBPACK_IMPORTED_MODULE_3__["fillInsideFreehand"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideFreehand", function() { return _fillFreehand__WEBPACK_IMPORTED_MODULE_3__["fillOutsideFreehand"]; }); + +/* harmony import */ var _fillRectangle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fillRectangle */ "./tools/segmentation/strategies/fillRectangle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillInsideRectangle", function() { return _fillRectangle__WEBPACK_IMPORTED_MODULE_4__["fillInsideRectangle"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideRectangle", function() { return _fillRectangle__WEBPACK_IMPORTED_MODULE_4__["fillOutsideRectangle"]; }); + +/* harmony import */ var _fillCircle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./fillCircle */ "./tools/segmentation/strategies/fillCircle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillInsideCircle", function() { return _fillCircle__WEBPACK_IMPORTED_MODULE_5__["fillInsideCircle"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideCircle", function() { return _fillCircle__WEBPACK_IMPORTED_MODULE_5__["fillOutsideCircle"]; }); + +/* harmony import */ var _eraseCircle__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./eraseCircle */ "./tools/segmentation/strategies/eraseCircle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseInsideCircle", function() { return _eraseCircle__WEBPACK_IMPORTED_MODULE_6__["eraseInsideCircle"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideCircle", function() { return _eraseCircle__WEBPACK_IMPORTED_MODULE_6__["eraseOutsideCircle"]; }); + + + + + + + + + +/***/ }), + +/***/ "./util/SaveAs.js": +/*!************************!*\ + !*** ./util/SaveAs.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Exports an image of the canvas. + * @export @public @method + * @name saveAs + * + * @param {HTMLElement} element The element to export. + * @param {string} filename The name of the exported image. + * @param {string} [mimetype = 'image/png'] The mimetype of the exported image. + * @returns {void} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (element, filename) { + var mimetype = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'image/png'; + var canvas = element.querySelector('canvas'); // If we are using IE, use canvas.msToBlob + + if (canvas.msToBlob) { + var blob = canvas.msToBlob(); + return window.navigator.msSaveBlob(blob, filename); + } // Thanks to Ken Fyrstenber + // http://stackoverflow.com/questions/18480474/how-to-save-an-image-from-canvas + + + var lnk = document.createElement('a'); // The key here is to set the download attribute of the a tag + + lnk.download = filename; // Convert canvas content to data-uri for link. When download + // Attribute is set the content pointed to by link will be + // Pushed as 'download' in HTML5 capable browsers + + lnk.href = canvas.toDataURL(mimetype, 1); // Create a 'fake' click-event to trigger the download + + if (document.createEvent) { + var e = document.createEvent('MouseEvents'); + e.initMouseEvent('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); + lnk.dispatchEvent(e); + } else if (lnk.fireEvent) { + lnk.fireEvent('onclick'); + } +}); + +/***/ }), + +/***/ "./util/angleBetweenPoints.js": +/*!************************************!*\ + !*** ./util/angleBetweenPoints.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Calculates the (interior) angle in degrees from the initial mouse location + * to the current mouse location in relation to the center point. + * @public + * @function angleBetweenPoints + * + * @param {Object} p0 The center point. + * @param {Object} p1 The initial point. + * @param {Object} p2 The final point. + * @returns {Object} { angle, direction } + */ +/* harmony default export */ __webpack_exports__["default"] = (function (p0, p1, p2) { + var p12 = Math.sqrt(Math.pow(p0.x - p1.x, 2) + Math.pow(p0.y - p1.y, 2)); + var p13 = Math.sqrt(Math.pow(p0.x - p2.x, 2) + Math.pow(p0.y - p2.y, 2)); + var p23 = Math.sqrt(Math.pow(p1.x - p2.x, 2) + Math.pow(p1.y - p2.y, 2)); + var angle = Math.acos((Math.pow(p12, 2) + Math.pow(p13, 2) - Math.pow(p23, 2)) / (2 * p12 * p13)) * 180 / Math.PI; // The direction of the angle (> 0 clockwise, < 0 anti-clockwise) + + var direction = (p1.x - p0.x) * (p2.y - p0.y) - (p1.y - p0.y) * (p2.x - p0.x); + return { + angle: angle, + direction: direction + }; +}); + +/***/ }), + +/***/ "./util/calculateSUV.js": +/*!******************************!*\ + !*** ./util/calculateSUV.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Calculates a Standardized Uptake Value. + * @export @public @method + * @name calculateSUV + * + * @param {Object} image The image. + * @param {number} storedPixelValue The raw pixel value. + * @param {bool} [skipRescale=fale] + * @returns {number} The SUV. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (image, storedPixelValue) { + var skipRescale = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var patientStudyModule = cornerstone.metaData.get('patientStudyModule', image.imageId); + var seriesModule = cornerstone.metaData.get('generalSeriesModule', image.imageId); + + if (!patientStudyModule || !seriesModule) { + return; + } + + var modality = seriesModule.modality; // Image must be PET + + if (modality !== 'PT') { + return; + } + + var modalityPixelValue = skipRescale ? storedPixelValue : storedPixelValue * image.slope + image.intercept; + var patientWeight = patientStudyModule.patientWeight; // In kg + + if (!patientWeight) { + return; + } + + var petSequenceModule = cornerstone.metaData.get('petIsotopeModule', image.imageId); + + if (!petSequenceModule) { + return; + } + + var radiopharmaceuticalInfo = petSequenceModule.radiopharmaceuticalInfo; + var startTime = radiopharmaceuticalInfo.radiopharmaceuticalStartTime; + var totalDose = radiopharmaceuticalInfo.radionuclideTotalDose; + var halfLife = radiopharmaceuticalInfo.radionuclideHalfLife; + var seriesAcquisitionTime = seriesModule.seriesTime; + + if (!startTime || !totalDose || !halfLife || !seriesAcquisitionTime) { + return; + } + + var acquisitionTimeInSeconds = fracToDec(seriesAcquisitionTime.fractionalSeconds || 0) + seriesAcquisitionTime.seconds + seriesAcquisitionTime.minutes * 60 + seriesAcquisitionTime.hours * 60 * 60; + var injectionStartTimeInSeconds = fracToDec(startTime.fractionalSeconds) + startTime.seconds + startTime.minutes * 60 + startTime.hours * 60 * 60; + var durationInSeconds = acquisitionTimeInSeconds - injectionStartTimeInSeconds; + var correctedDose = totalDose * Math.exp(-durationInSeconds * Math.log(2) / halfLife); + var suv = modalityPixelValue * patientWeight / correctedDose * 1000; + return suv; +}); +/** + * Returns a decimal value given a fractional value. + * @private + * @method + * @name fracToDec + * + * @param {number} fractionalValue The value to convert. + * @returns {number} The value converted to decimal. + */ + +function fracToDec(fractionalValue) { + return parseFloat(".".concat(fractionalValue)); +} + +/***/ }), + +/***/ "./util/clip.js": +/*!**********************!*\ + !*** ./util/clip.js ***! + \**********************/ +/*! exports provided: clip, clipToBox, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clip", function() { return clip; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "clipToBox", function() { return clipToBox; }); +/** + * Clips a value to an upper and lower bound. + * @export @public @method + * @name clip + * + * @param {number} val The value to clip. + * @param {number} low The lower bound. + * @param {number} high The upper bound. + * @returns {number} The clipped value. + */ +function clip(val, low, high) { + return Math.min(Math.max(low, val), high); +} +/** + * Clips a value within a box. + * @export @public @method + * @name clipToBox + * + * @param {Object} point The point to clip + * @param {Object} box The bounding box to clip to. + * @returns {Object} The clipped point. + */ + +function clipToBox(point, box) { + // Clip an {x, y} point to a box of size {width, height} + point.x = clip(point.x, 0, box.width); + point.y = clip(point.y, 0, box.height); +} +/* harmony default export */ __webpack_exports__["default"] = (clip); + +/***/ }), + +/***/ "./util/convertToVector3.js": +/*!**********************************!*\ + !*** ./util/convertToVector3.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return convertToVector3; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Convert an Array to a cornerstoneMath.Vector3 + * @export @public @method + * @name convertToVector3 + * + * @param {Array|cornerstoneMath.Vector3} arrayOrVector3 Input array or Vector3 + * @returns {cornerstoneMath.Vector3} + */ + +function convertToVector3(arrayOrVector3) { + var cornerstoneMath = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath; + + if (arrayOrVector3 instanceof cornerstoneMath.Vector3) { + return arrayOrVector3; + } + + return new cornerstoneMath.Vector3(arrayOrVector3[0], arrayOrVector3[1], arrayOrVector3[2]); +} + +/***/ }), + +/***/ "./util/copyPoints.js": +/*!****************************!*\ + !*** ./util/copyPoints.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns a copy of the points object. + * @public + * @function copyPoints + * + * @param {Object} points - The object to copy. + * @returns {Object} - The copy. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (points) { + var page = _copy(points.page); + + var image = _copy(points.image); + + var client = _copy(points.client); + + var canvas = _copy(points.canvas); + + return { + page: page, + image: image, + client: client, + canvas: canvas + }; +}); +/** + * + * @private + * @function _copy + * + * @param {Object} point - { x, y } + * @returns {Object} { x, y } + */ + +function _copy() { + var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + x = _ref.x, + y = _ref.y; + + return { + x: x, + y: y + }; +} + +/***/ }), + +/***/ "./util/debounce.js": +/*!**************************!*\ + !*** ./util/debounce.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isObject.js */ "./util/isObject.js"); + +/** + * Creates a debounced function that delays invoking `func` until after `wait` + * milliseconds have elapsed since the last time the debounced function was + * invoked, or until the next browser frame is drawn. The debounced function + * comes with a `cancel` method to cancel delayed `func` invocations and a + * `flush` method to immediately invoke them. Provide `options` to indicate + * whether `func` should be invoked on the leading and/or trailing edge of the + * `wait` timeout. The `func` is invoked with the last arguments provided to the + * debounced function. Subsequent calls to the debounced function return the + * result of the last `func` invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the debounced function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until the next tick, similar to `setTimeout` with a timeout of `0`. + * + * If `wait` is omitted in an environment with `requestAnimationFrame`, `func` + * invocation will be deferred until the next frame is drawn (typically about + * 16ms). + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `debounce` and `throttle`. + * + * @since 0.1.0 + * @category Function + * @param {Function} func The function to debounce. + * @param {number} [wait=0] + * The number of milliseconds to delay; if omitted, `requestAnimationFrame` is + * used (if available). + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=false] + * Specify invoking on the leading edge of the timeout. + * @param {number} [options.maxWait] + * The maximum time `func` is allowed to be delayed before it's invoked. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new debounced function. + * @example + * + * // Avoid costly calculations while the window size is in flux. + * jQuery(window).on('resize', debounce(calculateLayout, 150)) + * + * // Invoke `sendMail` when clicked, debouncing subsequent calls. + * jQuery(element).on('click', debounce(sendMail, 300, { + * 'leading': true, + * 'trailing': false + * })) + * + * // Ensure `batchLog` is invoked once after 1 second of debounced calls. + * const debounced = debounce(batchLog, 250, { 'maxWait': 1000 }) + * const source = new EventSource('/stream') + * jQuery(source).on('message', debounced) + * + * // Cancel the trailing debounced invocation. + * jQuery(window).on('popstate', debounced.cancel) + * + * // Check for pending invocations. + * const status = debounced.pending() ? "Pending..." : "Ready" + */ + +function debounce(func, wait, options) { + var lastArgs, lastThis, maxWait, result, timerId, lastCallTime; + var lastInvokeTime = 0; + var leading = false; + var maxing = false; + var trailing = true; // Bypass `requestAnimationFrame` by explicitly setting `wait=0`. + + var useRAF = !wait && wait !== 0 && typeof window.requestAnimationFrame === 'function'; + + if (typeof func !== 'function') { + throw new TypeError('Expected a function'); + } + + wait = Number(wait) || 0; + + if (Object(_isObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(options)) { + leading = Boolean(options.leading); + maxing = 'maxWait' in options; + maxWait = maxing ? Math.max(Number(options.maxWait) || 0, wait) : maxWait; + trailing = 'trailing' in options ? Boolean(options.trailing) : trailing; + } + + function invokeFunc(time) { + var args = lastArgs; + var thisArg = lastThis; + lastArgs = lastThis = undefined; + lastInvokeTime = time; + result = func.apply(thisArg, args); + return result; + } + + function startTimer(pendingFunc, wait) { + if (useRAF) { + return window.requestAnimationFrame(pendingFunc); + } + + return setTimeout(pendingFunc, wait); + } + + function cancelTimer(id) { + if (useRAF) { + return window.cancelAnimationFrame(id); + } + + clearTimeout(id); + } + + function leadingEdge(time) { + // Reset any `maxWait` timer. + lastInvokeTime = time; // Start the timer for the trailing edge. + + timerId = startTimer(timerExpired, wait); // Invoke the leading edge. + + return leading ? invokeFunc(time) : result; + } + + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime; + var timeSinceLastInvoke = time - lastInvokeTime; + var timeWaiting = wait - timeSinceLastCall; + return maxing ? Math.min(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; + } + + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime; + var timeSinceLastInvoke = time - lastInvokeTime; // Either this is the first call, activity has stopped and we're at the + // trailing edge, the system time has gone backwards and we're treating + // it as the trailing edge, or we've hit the `maxWait` limit. + + return lastCallTime === undefined || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; + } + + function timerExpired() { + var time = Date.now(); + + if (shouldInvoke(time)) { + return trailingEdge(time); + } // Restart the timer. + + + timerId = startTimer(timerExpired, remainingWait(time)); + } + + function trailingEdge(time) { + timerId = undefined; // Only invoke if we have `lastArgs` which means `func` has been + // debounced at least once. + + if (trailing && lastArgs) { + return invokeFunc(time); + } + + lastArgs = lastThis = undefined; + return result; + } + + function cancel() { + if (timerId !== undefined) { + cancelTimer(timerId); + } + + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined; + } + + function flush() { + return timerId === undefined ? result : trailingEdge(Date.now()); + } + + function pending() { + return timerId !== undefined; + } + + function debounced() { + var time = Date.now(); + var isInvoking = shouldInvoke(time); + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + lastArgs = args; + lastThis = this; // eslint-disable-line consistent-this + + lastCallTime = time; + + if (isInvoking) { + if (timerId === undefined) { + return leadingEdge(lastCallTime); + } + + if (maxing) { + // Handle invocations in a tight loop. + timerId = startTimer(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + + if (timerId === undefined) { + timerId = startTimer(timerExpired, wait); + } + + return result; + } + + debounced.cancel = cancel; + debounced.flush = flush; + debounced.pending = pending; + return debounced; +} + +/* harmony default export */ __webpack_exports__["default"] = (debounce); + +/***/ }), + +/***/ "./util/debugLib/common.js": +/*!*********************************!*\ + !*** ./util/debugLib/common.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); + + +/** + * This is the common logic for both the Node.js and web browser + * implementations of `debug()`. + */ +function setup(env) { + createDebug.debug = createDebug; + createDebug.default = createDebug; + createDebug.coerce = coerce; + createDebug.disable = disable; + createDebug.enable = enable; + createDebug.enabled = enabled; + createDebug.humanize = __webpack_require__(/*! ms */ "../node_modules/ms/index.js"); + Object.keys(env).forEach(function (key) { + createDebug[key] = env[key]; + }); + /** + * Active `debug` instances. + */ + + createDebug.instances = []; + /** + * The currently active debug mode names, and names to skip. + */ + + createDebug.names = []; + createDebug.skips = []; + /** + * Map of special "%n" handling functions, for the debug "format" argument. + * + * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". + */ + + createDebug.formatters = {}; + /** + * Selects a color for a debug namespace + * @param {String} namespace The namespace string for the for the debug instance to be colored + * @returns {Number|String} An ANSI color code for the given namespace + * @api private + */ + + function selectColor(namespace) { + var hash = 0; + + for (var i = 0; i < namespace.length; i++) { + hash = (hash << 5) - hash + namespace.charCodeAt(i); + hash |= 0; // Convert to 32bit integer + } + + return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; + } + + createDebug.selectColor = selectColor; + /** + * Create a debugger with the given `namespace`. + * + * @param {String} namespace + * @returns {Function} + * @api public + */ + + function createDebug(namespace) { + var prevTime; + + function debug() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + // Disabled? + if (!debug.enabled) { + return; + } + + var self = debug; // Set `diff` timestamp + + var curr = Number(new Date()); + var ms = curr - (prevTime || curr); + self.diff = ms; + self.prev = prevTime; + self.curr = curr; + prevTime = curr; + args[0] = createDebug.coerce(args[0]); + + if (typeof args[0] !== 'string') { + // Anything else let's inspect with %O + args.unshift('%O'); + } // Apply any `formatters` transformations + + + var index = 0; + args[0] = args[0].replace(/%([a-zA-Z%])/g, function (match, format) { + // If we encounter an escaped % then don't increase the array index + if (match === '%%') { + return match; + } + + index++; + var formatter = createDebug.formatters[format]; + + if (typeof formatter === 'function') { + var val = args[index]; + match = formatter.call(self, val); // Now we need to remove `args[index]` since it's inlined in the `format` + + args.splice(index, 1); + index--; + } + + return match; + }); // Apply env-specific formatting (colors, etc.) + + createDebug.formatArgs.call(self, args); + var logFn = self.log || createDebug.log; + logFn.apply(self, args); + } + + debug.namespace = namespace; + debug.enabled = createDebug.enabled(namespace); + debug.useColors = createDebug.useColors(); + debug.color = selectColor(namespace); + debug.destroy = destroy; + debug.extend = extend; // Debug.formatArgs = formatArgs; + // debug.rawLog = rawLog; + // env-specific initialization logic for debug instances + + if (typeof createDebug.init === 'function') { + createDebug.init(debug); + } + + createDebug.instances.push(debug); + return debug; + } + + function destroy() { + var index = createDebug.instances.indexOf(this); + + if (index !== -1) { + createDebug.instances.splice(index, 1); + return true; + } + + return false; + } + + function extend(namespace, delimiter) { + var newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace); + newDebug.log = this.log; + return newDebug; + } + /** + * Enables a debug mode by namespaces. This can include modes + * separated by a colon and wildcards. + * + * @param {String} namespaces + * @api public + */ + + + function enable(namespaces) { + createDebug.save(namespaces); + createDebug.names = []; + createDebug.skips = []; + var i; + var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); + var len = split.length; + + for (i = 0; i < len; i++) { + if (!split[i]) { + // Ignore empty strings + continue; + } + + namespaces = split[i].replace(/\*/g, '.*?'); + + if (namespaces[0] === '-') { + createDebug.skips.push(new RegExp("^".concat(namespaces.substr(1), "$"))); + } else { + createDebug.names.push(new RegExp("^".concat(namespaces, "$"))); + } + } + + for (i = 0; i < createDebug.instances.length; i++) { + var instance = createDebug.instances[i]; + instance.enabled = createDebug.enabled(instance.namespace); + } + } + /** + * Disable debug output. + * + * @returns {String} namespaces + * @api public + */ + + + function disable() { + var namespaces = [].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(createDebug.names.map(toNamespace)), _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(createDebug.skips.map(toNamespace).map(function (namespace) { + return "-".concat(namespace); + }))).join(','); + createDebug.enable(''); + return namespaces; + } + /** + * Returns true if the given mode name is enabled, false otherwise. + * + * @param {String} name + * @returns {Boolean} + * @api public + */ + + + function enabled(name) { + if (name[name.length - 1] === '*') { + return true; + } + + var i; + var len; + + for (i = 0, len = createDebug.skips.length; i < len; i++) { + if (createDebug.skips[i].test(name)) { + return false; + } + } + + for (i = 0, len = createDebug.names.length; i < len; i++) { + if (createDebug.names[i].test(name)) { + return true; + } + } + + return false; + } + /** + * Convert regexp to namespace + * + * @param {RegExp} regxep + * @returns {String} namespace + * @api private + */ + + + function toNamespace(regexp) { + return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, '*'); + } + /** + * Coerce `val`. + * + * @param {Mixed} val + * @returns {Mixed} + * @api private + */ + + + function coerce(val) { + if (val instanceof Error) { + return val.stack || val.message; + } + + return val; + } + + createDebug.enable(createDebug.load()); + return createDebug; +} + +/* harmony default export */ __webpack_exports__["default"] = (setup); + +/***/ }), + +/***/ "./util/debugLib/index.js": +/*!********************************!*\ + !*** ./util/debugLib/index.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var _common_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./common.js */ "./util/debugLib/common.js"); +/* eslint-env browser */ + +/** + * This is the web browser implementation of `debug()`. + */ + +var storage = localstorage(); +var debugLib = { + formatArgs: formatArgs, + save: save, + load: load, + useColors: useColors, + storage: storage +}; +/** + * Colors. + */ + +debugLib.colors = ['#0000CC', '#0000FF', '#0033CC', '#0033FF', '#0066CC', '#0066FF', '#0099CC', '#0099FF', '#00CC00', '#00CC33', '#00CC66', '#00CC99', '#00CCCC', '#00CCFF', '#3300CC', '#3300FF', '#3333CC', '#3333FF', '#3366CC', '#3366FF', '#3399CC', '#3399FF', '#33CC00', '#33CC33', '#33CC66', '#33CC99', '#33CCCC', '#33CCFF', '#6600CC', '#6600FF', '#6633CC', '#6633FF', '#66CC00', '#66CC33', '#9900CC', '#9900FF', '#9933CC', '#9933FF', '#99CC00', '#99CC33', '#CC0000', '#CC0033', '#CC0066', '#CC0099', '#CC00CC', '#CC00FF', '#CC3300', '#CC3333', '#CC3366', '#CC3399', '#CC33CC', '#CC33FF', '#CC6600', '#CC6633', '#CC9900', '#CC9933', '#CCCC00', '#CCCC33', '#FF0000', '#FF0033', '#FF0066', '#FF0099', '#FF00CC', '#FF00FF', '#FF3300', '#FF3333', '#FF3366', '#FF3399', '#FF33CC', '#FF33FF', '#FF6600', '#FF6633', '#FF9900', '#FF9933', '#FFCC00', '#FFCC33']; +/** + * Currently only WebKit-based Web Inspectors, Firefox >= v31, + * and the Firebug extension (any Firefox version) are known + * to support "%c" CSS customizations. + * + * TODO: add a `localStorage` variable to explicitly enable/disable colors + */ +// eslint-disable-next-line complexity + +function useColors() { + // NB: In an Electron preload script, document will be defined but not fully + // initialized. Since we know we're in Chrome, we'll just detect this case + // explicitly + if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) { + return true; + } // Internet Explorer and Edge do not support colors. + + + if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } // Is webkit? http://stackoverflow.com/a/16459606/376773 + // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 + + + return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker + typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); +} +/** + * Colorize log arguments if enabled. + * + * @api public + */ + + +function formatArgs(args) { + args[0] = "".concat((this.useColors ? '%c' : '') + this.namespace + (this.useColors ? ' %c' : ' ') + args[0] + (this.useColors ? '%c ' : ' '), "+").concat(setupDebug.humanize(this.diff)); + + if (!this.useColors) { + return; + } + + var c = "color: ".concat(this.color); + args.splice(1, 0, c, 'color: inherit'); // The final "%c" is somewhat tricky, because there could be other + // arguments passed either before or after the %c, so we need to + // figure out the correct index to insert the CSS into + + var index = 0; + var lastC = 0; + args[0].replace(/%[a-zA-Z%]/g, function (match) { + if (match === '%%') { + return; + } + + index++; + + if (match === '%c') { + // We only are interested in the *last* %c + // (the user may have provided their own) + lastC = index; + } + }); + args.splice(lastC, 0, c); +} +/** + * Invokes `console.debug()` when available. + * No-op when `console.debug` is not a "function". + * If `console.debug` is not available, falls back + * to `console.log`. + * + * @api public + */ + + +debugLib.log = console.debug || console.log || function () {}; +/** + * Save `namespaces`. + * + * @param {String} namespaces + * @api private + */ + + +function save(namespaces) { + try { + if (namespaces) { + debugLib.storage.setItem('debug', namespaces); + } else { + debugLib.storage.removeItem('debug'); + } + } catch (error) {// Swallow + // XXX (@Qix-) should we be logging these? + } +} +/** + * Load `namespaces`. + * + * @return {String} returns the previously persisted debug modes + * @api private + */ + + +function load() { + var r; + + try { + r = debugLib.storage.getItem('debug'); + } catch (error) { + console.warn(error); + } // Swallow + // XXX (@Qix-) should we be logging these? + // If debug isn't set in LS, and we're in Electron, try to load $DEBUG + + + if (!r && typeof process !== 'undefined' && 'env' in process) { + r = process.env.DEBUG; + } + + return r; +} +/** + * Localstorage attempts to return the localstorage. + * + * This is necessary because safari throws + * when a user disables cookies/localstorage + * and you attempt to access it. + * + * @return {LocalStorage} + * @api private + */ + + +function localstorage() { + try { + // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context + // The Browser also has localStorage in the global context. + return localStorage; + } catch (error) {// Swallow + // XXX (@Qix-) should we be logging these? + } +} + +var setupDebug = Object(_common_js__WEBPACK_IMPORTED_MODULE_0__["default"])(debugLib); +var formatters = setupDebug.formatters; +/** + * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. + */ + +formatters.j = function (v) { + try { + return JSON.stringify(v); + } catch (error) { + return "[UnexpectedJSONParseError]: ".concat(error.message); + } +}; + +/* harmony default export */ __webpack_exports__["default"] = (setupDebug); +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/process/browser.js */ "../node_modules/process/browser.js"))) + +/***/ }), + +/***/ "./util/deepmerge.js": +/*!***************************!*\ + !*** ./util/deepmerge.js ***! + \***************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); + + +var isMergeableObject = function isMergeableObject(val) { + var nonNullObject = val && _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(val) === 'object'; + return nonNullObject && Object.prototype.toString.call(val) !== '[object RegExp]' && Object.prototype.toString.call(val) !== '[object Date]'; +}; + +var emptyTarget = function emptyTarget(val) { + var isEmpty = Array.isArray(val) ? [] : {}; + return isEmpty; +}; + +var cloneIfNecessary = function cloneIfNecessary(value, optionsArgument) { + var clone = optionsArgument && optionsArgument.clone === true; + return clone && isMergeableObject(value) ? deepmerge(emptyTarget(value), value, optionsArgument) : value; +}; + +var defaultArrayMerge = function defaultArrayMerge(target, source, optionsArgument) { + var destination = target.slice(); + source.forEach(function (e, i) { + if (typeof destination[i] === 'undefined') { + destination[i] = cloneIfNecessary(e, optionsArgument); + } else if (isMergeableObject(e)) { + destination[i] = deepmerge(target[i], e, optionsArgument); + } else if (target.indexOf(e) === -1) { + destination.push(cloneIfNecessary(e, optionsArgument)); + } + }); + return destination; +}; + +var mergeObject = function mergeObject(target, source, optionsArgument) { + var destination = {}; + + if (isMergeableObject(target)) { + Object.keys(target).forEach(function (key) { + destination[key] = cloneIfNecessary(target[key], optionsArgument); + }); + } + + Object.keys(source).forEach(function (key) { + if (!isMergeableObject(source[key]) || !target[key]) { + destination[key] = cloneIfNecessary(source[key], optionsArgument); + } else { + destination[key] = deepmerge(target[key], source[key], optionsArgument); + } + }); + return destination; +}; + +var deepmerge = function deepmerge() { + var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + var source = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var optionsArgument = arguments.length > 2 ? arguments[2] : undefined; + var array = Array.isArray(source); + var options = optionsArgument || { + arrayMerge: defaultArrayMerge + }; + var arrayMerge = options.arrayMerge || defaultArrayMerge; + + if (array) { + return Array.isArray(target) ? arrayMerge(target, source, optionsArgument) : cloneIfNecessary(source, optionsArgument); + } + + return mergeObject(target, source, optionsArgument); +}; + +/* harmony default export */ __webpack_exports__["default"] = (deepmerge); + +/***/ }), + +/***/ "./util/ellipse/calculateEllipseStatistics.js": +/*!****************************************************!*\ + !*** ./util/ellipse/calculateEllipseStatistics.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _pointInEllipse_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pointInEllipse.js */ "./util/ellipse/pointInEllipse.js"); + +/** + * Calculates the statistics of an elliptical region of interest. + * + * @private + * @function calculateEllipseStatistics + * + * @param {number[]} sp - Array of the image data's pixel values. + * @param {Object} ellipse - { top, left, height, width } - An object describing the ellipse. + * @returns {Object} { count, mean, variance, stdDev, min, max } + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (sp, ellipse) { + var sum = 0; + var sumSquared = 0; + var count = 0; + var index = 0; + var min = null; + var max = null; + + for (var y = ellipse.top; y < ellipse.top + ellipse.height; y++) { + for (var x = ellipse.left; x < ellipse.left + ellipse.width; x++) { + var point = { + x: x, + y: y + }; + + if (Object(_pointInEllipse_js__WEBPACK_IMPORTED_MODULE_0__["default"])(ellipse, point)) { + if (min === null) { + min = sp[index]; + max = sp[index]; + } + + sum += sp[index]; + sumSquared += sp[index] * sp[index]; + min = Math.min(min, sp[index]); + max = Math.max(max, sp[index]); + count++; + } + + index++; + } + } + + if (count === 0) { + return { + count: count, + mean: 0.0, + variance: 0.0, + stdDev: 0.0, + min: 0.0, + max: 0.0 + }; + } + + var mean = sum / count; + var variance = sumSquared / count - mean * mean; + return { + count: count, + mean: mean, + variance: variance, + stdDev: Math.sqrt(variance), + min: min, + max: max + }; +}); + +/***/ }), + +/***/ "./util/ellipse/index.js": +/*!*******************************!*\ + !*** ./util/ellipse/index.js ***! + \*******************************/ +/*! exports provided: calculateEllipseStatistics, pointInEllipse, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _calculateEllipseStatistics_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./calculateEllipseStatistics.js */ "./util/ellipse/calculateEllipseStatistics.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "calculateEllipseStatistics", function() { return _calculateEllipseStatistics_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _pointInEllipse_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./pointInEllipse.js */ "./util/ellipse/pointInEllipse.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pointInEllipse", function() { return _pointInEllipse_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + + + // Named + + // Default + +/* harmony default export */ __webpack_exports__["default"] = ({ + calculateEllipseStatistics: _calculateEllipseStatistics_js__WEBPACK_IMPORTED_MODULE_0__["default"], + pointInEllipse: _pointInEllipse_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}); + +/***/ }), + +/***/ "./util/ellipse/pointInEllipse.js": +/*!****************************************!*\ + !*** ./util/ellipse/pointInEllipse.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns true if a point is within an ellipse + * @export @public @method + * @name pointInEllipse + * + * @param {Object} ellipse Object defining the ellipse. + * @param {Object} location The location of the point. + * @returns {boolean} True if the point is within the ellipse. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (ellipse, location) { + var xRadius = ellipse.width / 2; + var yRadius = ellipse.height / 2; + + if (xRadius <= 0.0 || yRadius <= 0.0) { + return false; + } + + var center = { + x: ellipse.left + xRadius, + y: ellipse.top + yRadius + }; + /* This is a more general form of the circle equation + * + * X^2/a^2 + Y^2/b^2 <= 1 + */ + + var normalized = { + x: location.x - center.x, + y: location.y - center.y + }; + var inEllipse = normalized.x * normalized.x / (xRadius * xRadius) + normalized.y * normalized.y / (yRadius * yRadius) <= 1.0; + return inEllipse; +}); + +/***/ }), + +/***/ "./util/findAndMoveHelpers.js": +/*!************************************!*\ + !*** ./util/findAndMoveHelpers.js ***! + \************************************/ +/*! exports provided: moveHandleNearImagePoint, findHandleDataNearImagePoint, moveAnnotation */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "moveHandleNearImagePoint", function() { return moveHandleNearImagePoint; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "findHandleDataNearImagePoint", function() { return findHandleDataNearImagePoint; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "moveAnnotation", function() { return moveAnnotation; }); +/* harmony import */ var _store_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/index.js */ "./store/index.js"); +/* harmony import */ var _manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../manipulators/getHandleNearImagePoint.js */ "./manipulators/getHandleNearImagePoint.js"); +/* harmony import */ var _manipulators_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../manipulators/index.js */ "./manipulators/index.js"); + + + // TODO this should just be in manipulators? They are just manipulator wrappers anyway. + +/** + * Moves a handle near the image point. + * @public + * @function moveHandleNearImagePoint + * @memberof Util + * + * @param {Event} evt The event. + * @param {*} tool The tool + * @param {Object} toolData The toolData that corresponds to the handle. + * @param {Object} handle The handle to be moved. + * @param {string} interactionType + * @returns {undefined} + */ + +var moveHandleNearImagePoint = function moveHandleNearImagePoint(evt, tool, toolData, handle, interactionType) { + toolData.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked = true; + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_2__["moveHandle"])(evt.detail, tool.name, toolData, handle, tool.options, interactionType); + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); + return; +}; +/** + * Finds the handle near the image point and its corresponding data. + * + * @public + * @function findHandleDataNearImagePoint + * @memberof Util + * + * @param {HTMLElement} element The elment. + * @param {Object} toolState The state of the tool. + * @param {string} toolName The name of the tool the handle corrosponds to. + * @param {Object} coords The coordinates that need to be checked. + * @param {String} [interactionType=mouse] + * @returns {*} + */ + + +var findHandleDataNearImagePoint = function findHandleDataNearImagePoint(element, toolState, toolName, coords) { + var interactionType = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'mouse'; + + for (var i = 0; i < toolState.data.length; i++) { + var data = toolState.data[i]; + var handle = Object(_manipulators_getHandleNearImagePoint_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element, data.handles, coords, interactionType === 'mouse' ? _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].clickProximity : _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].touchProximity); + + if (handle) { + return { + handle: handle, + data: data + }; + } + } +}; +/** + * Moves an entire annotation near the click. + * + * @public + * @function moveAnnotation + * @memberof Util + * + * @param {Event} evt The event. + * @param {Object} tool The tool that the annotation belongs to. + * @param {string} tool.name + * @param {Object} [tool.options={}] + * @param {Boolean} [tool.options.preventHandleOutsideImage] + * @param {Boolean} [tool.options.deleteIfHandleOutsideImage] + * @param {Object} annotation The toolData that corresponds to the annotation. + * @param {String} [interactionType=mouse] + * @returns {undefined} + */ + + +var moveAnnotation = function moveAnnotation(evt, tool, annotation) { + var interactionType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'mouse'; + annotation.active = true; + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked = true; + Object(_manipulators_index_js__WEBPACK_IMPORTED_MODULE_2__["moveAllHandles"])(evt.detail, tool.name, annotation, null, tool.options, interactionType, function () { + annotation.active = false; + _store_index_js__WEBPACK_IMPORTED_MODULE_0__["state"].isToolLocked = false; + }); + evt.stopImmediatePropagation(); + evt.stopPropagation(); + evt.preventDefault(); + return; +}; + + + +/***/ }), + +/***/ "./util/freehand/ClickedLineData.js": +/*!******************************************!*\ + !*** ./util/freehand/ClickedLineData.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ClickedLineData; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); + + +/** + * @public + * @name ClickedLineData + * @classdesc Creates an object containing information about the clicked line. + * @property {number} toolIndex ID of the tool that the line corresponds to. + * @property {Object} handleIndexArray An array of the handle indicies that correspond to the line segment. + */ +var ClickedLineData = +/** + * Constructs an object containing information about the clicked line. + * @param {number} toolIndex - The ID of the tool the line corresponds to. + * @param {Object} handleIndexArray - An array of the handle indicies that correspond to the line segment. + */ +function ClickedLineData(toolIndex, handleIndexArray) { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, ClickedLineData); + + this.toolIndex = toolIndex; + this.handleIndexArray = handleIndexArray; +}; + + + +/***/ }), + +/***/ "./util/freehand/FreehandHandleData.js": +/*!*********************************************!*\ + !*** ./util/freehand/FreehandHandleData.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FreehandHandleData; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); + + +/** + * @public + * @name FreehandHandleData + * @classdesc Creates a single handle for the freehand tool. + * + * @property {number} x The x position. + * @property {number} y The y position. + * @property {boolean} highlight Whether the handle should be rendered as the highlighted color. + * @property {boolean} active Whether the handle is active. + * @property {Object} lines An array of lines associated with the handle. + */ +var FreehandHandleData = +/** + * Constructs a a single handle for the freehand tool + * + * @param {Object} position - The position of the handle. + * @param {boolean} highlight - whether the handle should be rendered as the highlighted color. + * @param {boolean} active - whether the handle is active. + */ +function FreehandHandleData(position) { + var highlight = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; + var active = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; + + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, FreehandHandleData); + + this.x = position.x; + this.y = position.y; + this.highlight = highlight; + this.active = active; + this.lines = []; +}; + + + +/***/ }), + +/***/ "./util/freehand/FreehandLineFinder.js": +/*!*********************************************!*\ + !*** ./util/freehand/FreehandLineFinder.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return FreehandLineFinder; }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _ClickedLineData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ClickedLineData.js */ "./util/freehand/ClickedLineData.js"); + + + + + +var distanceThreshold = 10; +/** + * @public + * @class FreehandLineFinder + * @classdesc Class that finds lines of freehand ROIs based on click proximity. + */ + +var FreehandLineFinder = +/*#__PURE__*/ +function () { + /** + * Creates an instance of FreehandLineFinder. + * @param {*} eventData - Data object associated with the event. + * @param {string} toolName - The tool name + * @memberof FreehandLineFinder + */ + function FreehandLineFinder(eventData, toolName) { + _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, FreehandLineFinder); + + this._eventData = eventData; + this._toolName = toolName; + } + /** + * Looks for lines near the mouse cursor. + * + * @public + * @method + * @returns {ClickedLineData} Data object corresponding to the clicked line. + */ + + + _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(FreehandLineFinder, [{ + key: "findLine", + value: function findLine() { + var closestToolIndex = this.findTool(); + + if (closestToolIndex === null) { + return null; + } + + var closeLines = this._getCloseLinesInTool(closestToolIndex); + + if (closeLines) { + var clickedLineData = this._findCorrectLine(closestToolIndex, closeLines); // Note: clickedLineData may be null if no valid projections are found. + + + return clickedLineData; + } // Return null if no valid close lines found. + + + return null; + } + /** + * Looks for tools near the mouse cursor. + * + * @public + * @method + * + * @returns {ClickedLineData} Data object corresponding to the clicked line. + */ + + }, { + key: "findTool", + value: function findTool() { + this._toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(this._eventData.element, this._toolName); + this._mousePoint = this._eventData.currentPoints.canvas; + + if (!this._toolData) { + return null; + } + + var closestHandle = this._nearestHandleToPointAllTools(); + + return closestHandle.toolIndex; + } + /** + * Finds the nearest handle to the mouse cursor for all tools. + * @private + * @method + * @returns {Object} The handle closest to the point. + */ + + }, { + key: "_nearestHandleToPointAllTools", + value: function _nearestHandleToPointAllTools() { + var toolData = this._toolData; + var closestHandle = { + toolIndex: null, + handleIndex: null, + distance: Infinity // Some large number + + }; + + for (var toolIndex = 0; toolIndex < toolData.data.length; toolIndex++) { + var closestHandleForToolI = this._nearestHandleToPoint(toolIndex); + + if (closestHandleForToolI === null) { + continue; + } + + if (closestHandleForToolI.distance < closestHandle.distance) { + closestHandle = closestHandleForToolI; + } + } + + return closestHandle; + } + /** + * Finds the nearest handle to the mouse cursor for a specific tool. + * @private + * @method + * + * @param {number} toolIndex The index of the particular freehand tool. + * @returns {Object} An object containing information about the closest handle. + */ + + }, { + key: "_nearestHandleToPoint", + value: function _nearestHandleToPoint(toolIndex) { + var eventData = this._eventData; + var toolData = this._toolData; + var data = toolData.data[toolIndex]; + var points = data.handles.points; + + if (points === undefined) { + return null; + } + + if (data.visible === false) { + return null; + } + + var closest = { + toolIndex: toolIndex, + handleIndex: null, + distance: Infinity // Some large number + + }; + + for (var i = 0; i < points.length; i++) { + var handleCanvas = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(eventData.element, points[i]); + var handleDistanceFromMousePoint = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstoneMath.point.distance(handleCanvas, this._mousePoint); + + if (handleDistanceFromMousePoint < closest.distance) { + closest.handleIndex = i; + closest.distance = handleDistanceFromMousePoint; + } + } + + return closest; + } + /** + * Finds all the lines close to the mouse point for a particular tool. + * @private + * @method + * + * @param {number} toolIndex The index of the particular freehand tool. + * @returns {Object} An array of lines close to the mouse point. + */ + + }, { + key: "_getCloseLinesInTool", + value: function _getCloseLinesInTool(toolIndex) { + var toolData = this._toolData; + var points = toolData.data[toolIndex].handles.points; + var closeLines = []; + + for (var i = 0; i < points.length; i++) { + var nextIndex = FreehandLineFinder.getNextHandleIndex(i, points.length); + + var d = this._distanceOfPointfromLine(points[i], points[nextIndex]); + + if (d < distanceThreshold) { + closeLines.push([i, nextIndex]); + } + } + + return closeLines; + } + /** + * Finds the line the user clicked on from an array of close lines.\ + * @private + * @method + * + * @param {number} toolIndex The index of the particular freehand tool. + * @param {Object} closeLines An array of lines close to the mouse point. + * @returns {ClickedLineData|null} An instance of ClickedLineData containing information about the line, or null if no line is correct. + */ + + }, { + key: "_findCorrectLine", + value: function _findCorrectLine(toolIndex, closeLines) { + // Test if any candidate lines can be projected onto by the mousePoint + for (var i = 0; i < closeLines.length; i++) { + if (this._pointProjectsToLineSegment(toolIndex, closeLines[i])) { + return new _ClickedLineData_js__WEBPACK_IMPORTED_MODULE_4__["default"](toolIndex, closeLines[i]); + } + } // No valid line found + + + return null; + } + /** + * Returns true if the mouse point projects onto the line segment. + * @private + * @method + * + * @param {number} toolIndex The index of the particular freehand tool. + * @param {Object} handleIndexArray An array of indicies corresponding to the line segment. + * @returns {boolean} True if the mouse point projects onto the line segment + */ + + }, { + key: "_pointProjectsToLineSegment", + value: function _pointProjectsToLineSegment(toolIndex, handleIndexArray) { + var eventData = this._eventData; + var toolData = this._toolData; + var data = toolData.data[toolIndex]; + var points = data.handles.points; + + if (data.handles.points === undefined) { + return; + } + + if (data.visible === false) { + return false; + } + + var handle1 = points[handleIndexArray[0]]; + var handle2 = points[handleIndexArray[1]]; + var p = FreehandLineFinder.getCanvasPointsFromHandles(handle1, handle2, eventData.element); + var r = FreehandLineFinder.getLineAsVector(p); + + var m = this._getLineOriginToMouseAsVector(p); // Project vector m onto r to see if the point is within bounds of line segment + + + var mProj = (m[0] * r[0] + m[1] * r[1]) / r.magnitude; + + if (mProj > 0 && mProj < r.magnitude) { + return true; + } + + return false; + } + /** + * Returns the canvas positions from the handle's pixel positions. + * + * @static + * @public + * @method + * @param {FreehandHandleData} handle1 The first handle. + * @param {FreehandHandleData} handle2 The second handle. + * @param {Object} element The element on which the handles reside. + * @returns {Object} An array contsining the handle positions in canvas coordinates. + */ + + }, { + key: "_getLineOriginToMouseAsVector", + + /** + * Constructs a vector from the direction and magnitude of the line from the the line origin to the mouse cursor. + * @private + * @method + * + * @param {Object} p An array of two points respresenting the line segment. + * @returns {Object} An array containing the x and y components of the vector. + */ + value: function _getLineOriginToMouseAsVector(p) { + var m = [this._mousePoint.x - p[0].x, this._mousePoint.y - p[0].y]; + return m; + } + /** + * Calculates the perpendicular distance of the mouse cursor from a line segment. + * @private + * @method + * + * @param {FreehandHandleData} handle1 The first handle. + * @param {FreehandHandleData} handle2 The first handle. + * @returns {number} The perpendicular distance of the mouse cursor from the line segment. + */ + + }, { + key: "_distanceOfPointfromLine", + value: function _distanceOfPointfromLine(handle1, handle2) { + var eventData = this._eventData; + var p1 = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(eventData.element, handle1); + var p2 = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(eventData.element, handle2); + var pMouse = this._mousePoint; // Perpendicular distance of point from line: + // = 2* area of triangle(p1,p2,pm) / length of triangle's base |p2 - p1| + + var twiceAreaOfTriangle = Math.abs((p2.y - p1.y) * pMouse.x - (p2.x - p1.x) * pMouse.y + p2.x * p1.y - p2.y * p1.x); + var rMagnitude = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstoneMath.point.distance(p1, p2); + var d = twiceAreaOfTriangle / rMagnitude; + return d; + } + /** + * Gets the next handl index from a cyclical array of points. + * + * @static + * @public + * @method + * + * @param {number} currentIndex The current index. + * @param {number} length The number of handles in the polygon. + * @returns {number} The index of the next handle. + */ + + }], [{ + key: "getCanvasPointsFromHandles", + value: function getCanvasPointsFromHandles(handle1, handle2, element) { + var p = []; // Point r from left to right so that we only have one orientation to test. + + if (handle1.x < handle2.x) { + p.push(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(element, handle1)); + p.push(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(element, handle2)); + } else { + p.push(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(element, handle2)); + p.push(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.pixelToCanvas(element, handle1)); + } + + return p; + } + /** + * Converts a line segment to a vector. + * + * @static + * @public + * @method + * @param {Object} p An array of two points respresenting the line segment. + * @returns {Object} An array containing the x and y components of the vector, as well as a magnitude property. + */ + + }, { + key: "getLineAsVector", + value: function getLineAsVector(p) { + var r = [p[1].x - p[0].x, p[1].y - p[0].y]; + r.magnitude = _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstoneMath.point.distance(p[0], p[1]); + return r; + } + }, { + key: "getNextHandleIndex", + value: function getNextHandleIndex(currentIndex, length) { + var nextIndex; + + if (currentIndex < length - 1) { + nextIndex = currentIndex + 1; + } else { + nextIndex = 0; + } + + return nextIndex; + } + }]); + + return FreehandLineFinder; +}(); + + + +/***/ }), + +/***/ "./util/freehand/addLine.js": +/*!**********************************!*\ + !*** ./util/freehand/addLine.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * AddLine - Adds a line to a specifc index of a freehand tool points array. + * + * @param {Object[]} points The array of points. + * @param {Number} insertIndex The index to insert the line. + * @returns {Null} description + */ +/* harmony default export */ __webpack_exports__["default"] = (function (points, insertIndex) { + // Add the line from the inserted handle to the handle after + if (insertIndex === points.length - 1) { + points[insertIndex].lines.push(points[0]); + } else { + points[insertIndex].lines.push(points[insertIndex + 1]); + } +}); + +/***/ }), + +/***/ "./util/freehand/calculateFreehandStatistics.js": +/*!******************************************************!*\ + !*** ./util/freehand/calculateFreehandStatistics.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _pointInFreehand_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pointInFreehand.js */ "./util/freehand/pointInFreehand.js"); + +/** + * Calculates the statistics of all the pixels within the freehand object. + * @export @public @method + * @name calculateFreehandStatistics + * + * @param {Object} sp An array of the pixel data. + * @param {Object} boundingBox Rectangular box enclosing the polygon. + * @param {Object} dataHandles Data object associated with the tool. + * @returns {Object} Object containing the derived statistics. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (sp, boundingBox, dataHandles) { + var statisticsObj = { + count: 0, + mean: 0.0, + variance: 0.0, + stdDev: 0.0 + }; + var sum = getSum(sp, boundingBox, dataHandles); + + if (sum.count === 0) { + return statisticsObj; + } + + statisticsObj.count = sum.count; + statisticsObj.mean = sum.value / sum.count; + statisticsObj.variance = sum.squared / sum.count - statisticsObj.mean * statisticsObj.mean; + statisticsObj.stdDev = Math.sqrt(statisticsObj.variance); + return statisticsObj; +}); +/** + * Calculates the sum, squared sum and count of all pixels within the polygon. + * @private + * @method + * @name getSum + * + * @param {Object} sp An array of the pixel data. + * @param {Object} boundingBox Rectangular box enclosing the polygon. + * @param {Object} dataHandles Data object associated with the tool. + * @returns {Object} Object containing the sum, squared sum and pixel count. + */ + +function getSum(sp, boundingBox, dataHandles) { + var sum = { + value: 0, + squared: 0, + count: 0 + }; + var index = 0; + + for (var y = boundingBox.top; y < boundingBox.top + boundingBox.height; y++) { + for (var x = boundingBox.left; x < boundingBox.left + boundingBox.width; x++) { + var point = { + x: x, + y: y + }; + sumPointIfInFreehand(dataHandles, point, sum, sp[index]); + index++; + } + } + + return sum; +} +/** + * Adds the pixel to the workingSum if it is within the polygon. + * @private + * @method sumPointIfInFreehand + * + * @param {Object} dataHandles Data object associated with the tool. + * @param {Object} point The pixel coordinates. + * @param {Object} workingSum The working sum, squared sum and pixel count. + * @param {Object} pixelValue The pixel value. // @modifies {workingSum} + * @returns {undefined} + */ + + +function sumPointIfInFreehand(dataHandles, point, workingSum, pixelValue) { + if (Object(_pointInFreehand_js__WEBPACK_IMPORTED_MODULE_0__["default"])(dataHandles, point)) { + workingSum.value += pixelValue; + workingSum.squared += pixelValue * pixelValue; + workingSum.count++; + } +} + +/***/ }), + +/***/ "./util/freehand/freehandArea.js": +/*!***************************************!*\ + !*** ./util/freehand/freehandArea.js ***! + \***************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Calculates the area of a freehand tool polygon. + * @export @public @method + * @name freehandArea + * + * @param {Object} dataHandles Data object associated with the tool. + * @param {Object} scaling Area scaling of image. + * @returns {number} The area of the polygon. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (dataHandles, scaling) { + var freeHandArea = 0; + var j = dataHandles.length - 1; // The last vertex is the previous one to the first + + scaling = scaling || 1; // If scaling is falsy, set scaling to 1 + + for (var i = 0; i < dataHandles.length; i++) { + freeHandArea += (dataHandles[j].x + dataHandles[i].x) * (dataHandles[j].y - dataHandles[i].y); + j = i; // Here j is previous vertex to i + } + + return Math.abs(freeHandArea * scaling / 2.0); +}); + +/***/ }), + +/***/ "./util/freehand/freehandIntersect.js": +/*!********************************************!*\ + !*** ./util/freehand/freehandIntersect.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Orientation algoritm to determine if two lines cross. + * Credit and details: geeksforgeeks.org/check-if-two-given-line-segments-intersect/ + */ + +/** + * Determines whether a new handle causes an intersection of the lines of the polygon. + * @public + * @function newHandle + * + * @param {Object} candidateHandle The new handle to check. + * @param {Object} dataHandles data object associated with the tool. + * @returns {boolean} - Whether the new line intersects with any other lines of the polygon. + */ +function newHandle(candidateHandle, dataHandles) { + // Check if the proposed line will intersect any existent line + var lastHandleId = dataHandles.length - 1; + var lastHandle = getCoords(dataHandles[lastHandleId]); + var newHandle = getCoords(candidateHandle); + return doesIntersectOtherLines(dataHandles, lastHandle, newHandle, [lastHandleId]); +} +/** + * Checks if the last line of a polygon will intersect the other lines of the polgyon. + * @public + * @function end + * + * @param {Object} dataHandles data object associated with the tool. + * @returns {boolean} Whether the last line intersects with any other lines of the polygon. + */ + + +function end(dataHandles) { + var lastHandleId = dataHandles.length - 1; + var lastHandle = getCoords(dataHandles[lastHandleId]); + var firstHandle = getCoords(dataHandles[0]); + return doesIntersectOtherLines(dataHandles, lastHandle, firstHandle, [lastHandleId, 0]); +} +/** + * Checks whether the modification of a handle's position causes intersection of the lines of the polygon. + * @public + * @method modify + * + * @param {Object} dataHandles Data object associated with the tool. + * @param {number} modifiedHandleId The id of the handle being modified. + * @returns {boolean} Whether the modfication causes any intersections. + */ + + +function modify(dataHandles, modifiedHandleId) { + // Check if the modifiedHandle's previous and next lines will intersect any other line in the polygon + var modifiedHandle = getCoords(dataHandles[modifiedHandleId]); // Previous neightbor handle + + var neighborHandleId = modifiedHandleId - 1; + + if (modifiedHandleId === 0) { + neighborHandleId = dataHandles.length - 1; + } + + var neighborHandle = getCoords(dataHandles[neighborHandleId]); + + if (doesIntersectOtherLines(dataHandles, modifiedHandle, neighborHandle, [modifiedHandleId, neighborHandleId])) { + return true; + } // Next neightbor handle + + + if (modifiedHandleId === dataHandles.length - 1) { + neighborHandleId = 0; + } else { + neighborHandleId = modifiedHandleId + 1; + } + + neighborHandle = getCoords(dataHandles[neighborHandleId]); + return doesIntersectOtherLines(dataHandles, modifiedHandle, neighborHandle, [modifiedHandleId, neighborHandleId]); +} +/** + * Checks whether the line (p1,q1) intersects any of the other lines in the polygon. + * @private + * @function doesIntersectOtherLines + * + * @param {Object} dataHandles Data object associated with the tool. + * @param {Object} p1 Coordinates of the start of the line. + * @param {Object} q1 Coordinates of the end of the line. + * @param {Object} ignoredHandleIds Ids of handles to ignore (i.e. lines that share a vertex with the line being tested). + * @returns {boolean} Whether the line intersects any of the other lines in the polygon. + */ + + +function doesIntersectOtherLines(dataHandles, p1, q1, ignoredHandleIds) { + var j = dataHandles.length - 1; + + for (var i = 0; i < dataHandles.length; i++) { + if (ignoredHandleIds.indexOf(i) !== -1 || ignoredHandleIds.indexOf(j) !== -1) { + j = i; + continue; + } + + var p2 = getCoords(dataHandles[j]); + var q2 = getCoords(dataHandles[i]); + + if (doesIntersect(p1, q1, p2, q2)) { + return true; + } + + j = i; + } + + return false; +} +/** + * Checks whether the line (p1,q1) intersects the line (p2,q2) via an orientation algorithm. + * @private + * @function doesIntersect + * + * @param {Object} p1 Coordinates of the start of the line 1. + * @param {Object} q1 Coordinates of the end of the line 1. + * @param {Object} p2 Coordinates of the start of the line 2. + * @param {Object} q2 Coordinates of the end of the line 2. + * @returns {boolean} Whether lines (p1,q1) and (p2,q2) intersect. + */ + + +function doesIntersect(p1, q1, p2, q2) { + var result = false; + var orient = [orientation(p1, q1, p2), orientation(p1, q1, q2), orientation(p2, q2, p1), orientation(p2, q2, q1)]; // General Case + + if (orient[0] !== orient[1] && orient[2] !== orient[3]) { + return true; + } // Special Cases + + + if (orient[0] === 0 && onSegment(p1, p2, q1)) { + // If p1, q1 and p2 are colinear and p2 lies on segment p1q1 + result = true; + } else if (orient[1] === 0 && onSegment(p1, q2, q1)) { + // If p1, q1 and p2 are colinear and q2 lies on segment p1q1 + result = true; + } else if (orient[2] === 0 && onSegment(p2, p1, q2)) { + // If p2, q2 and p1 are colinear and p1 lies on segment p2q2 + result = true; + } else if (orient[3] === 0 && onSegment(p2, q1, q2)) { + // If p2, q2 and q1 are colinear and q1 lies on segment p2q2 + result = true; + } + + return result; +} +/** + * Returns an object with two properties, x and y, from a heavier FreehandHandleData object. + * @private + * @function getCoords + * + * @param {Object} dataHandle Data object associated with a single handle in the freehand tool. + * @returns {Object} An object containing position propeties x and y. + */ + + +function getCoords(dataHandle) { + return { + x: dataHandle.x, + y: dataHandle.y + }; +} +/** + * Checks the orientation of 3 points. + * @private + * @function orientation + * + * @param {Object} p First point. + * @param {Object} q Second point. + * @param {Object} r Third point. + * @returns {number} - 0: Colinear, 1: Clockwise, 2: Anticlockwise + */ + + +function orientation(p, q, r) { + var orientationValue = (q.y - p.y) * (r.x - q.x) - (q.x - p.x) * (r.y - q.y); + + if (orientationValue === 0) { + return 0; // Colinear + } + + return orientationValue > 0 ? 1 : 2; +} +/** + * Checks if point q lines on the segment (p,r). + * @private + * @function onSegment + * + * @param {Object} p Point p. + * @param {Object} q Point q. + * @param {Object} r Point r. + * @returns {boolean} - If q lies on line segment (p,r). + */ + + +function onSegment(p, q, r) { + if (q.x <= Math.max(p.x, r.x) && q.x >= Math.min(p.x, r.x) && q.y <= Math.max(p.y, r.y) && q.y >= Math.min(p.y, r.y)) { + return true; + } + + return false; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + newHandle: newHandle, + end: end, + modify: modify +}); + +/***/ }), + +/***/ "./util/freehand/index.js": +/*!********************************!*\ + !*** ./util/freehand/index.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _calculateFreehandStatistics_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./calculateFreehandStatistics.js */ "./util/freehand/calculateFreehandStatistics.js"); +/* harmony import */ var _ClickedLineData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ClickedLineData.js */ "./util/freehand/ClickedLineData.js"); +/* harmony import */ var _freehandArea_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./freehandArea.js */ "./util/freehand/freehandArea.js"); +/* harmony import */ var _FreehandHandleData_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FreehandHandleData.js */ "./util/freehand/FreehandHandleData.js"); +/* harmony import */ var _freehandIntersect_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./freehandIntersect.js */ "./util/freehand/freehandIntersect.js"); +/* harmony import */ var _FreehandLineFinder_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./FreehandLineFinder.js */ "./util/freehand/FreehandLineFinder.js"); +/* harmony import */ var _insertOrDelete_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./insertOrDelete.js */ "./util/freehand/insertOrDelete.js"); +/* harmony import */ var _pointInFreehand_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./pointInFreehand.js */ "./util/freehand/pointInFreehand.js"); +/* harmony import */ var _addLine_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./addLine.js */ "./util/freehand/addLine.js"); + + + + + + + + + +/* harmony default export */ __webpack_exports__["default"] = ({ + calculateFreehandStatistics: _calculateFreehandStatistics_js__WEBPACK_IMPORTED_MODULE_0__["default"], + ClickedLineData: _ClickedLineData_js__WEBPACK_IMPORTED_MODULE_1__["default"], + freehandArea: _freehandArea_js__WEBPACK_IMPORTED_MODULE_2__["default"], + FreehandHandleData: _FreehandHandleData_js__WEBPACK_IMPORTED_MODULE_3__["default"], + freehandIntersect: _freehandIntersect_js__WEBPACK_IMPORTED_MODULE_4__["default"], + FreehandLineFinder: _FreehandLineFinder_js__WEBPACK_IMPORTED_MODULE_5__["default"], + insertOrDelete: _insertOrDelete_js__WEBPACK_IMPORTED_MODULE_6__["default"], + pointInFreehand: _pointInFreehand_js__WEBPACK_IMPORTED_MODULE_7__["default"], + addLine: _addLine_js__WEBPACK_IMPORTED_MODULE_8__["default"] +}); + +/***/ }), + +/***/ "./util/freehand/insertOrDelete.js": +/*!*****************************************!*\ + !*** ./util/freehand/insertOrDelete.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _FreehandLineFinder_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FreehandLineFinder.js */ "./util/freehand/FreehandLineFinder.js"); +/* harmony import */ var _FreehandHandleData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FreehandHandleData.js */ "./util/freehand/FreehandHandleData.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _addLine_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./addLine.js */ "./util/freehand/addLine.js"); + + + + + +/** + * Inserts or deletes a point from a freehand tool. + * @export @public @method + * @name insertOrDelete + * + * @param {Object} evt The event. + * @param {Object} nearby Object containing information about a nearby handle. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (evt, nearby) { + var eventData = evt.detail; + + if (nearby && nearby.handleNearby !== null) { + var deleteInfo = { + toolIndex: nearby.toolIndex, + handleIndex: nearby.handleNearby + }; + + _deletePoint.call(this, eventData, deleteInfo); + } else { + var freehandLineFinder = new _FreehandLineFinder_js__WEBPACK_IMPORTED_MODULE_0__["default"](eventData, this.name); + var insertInfo = freehandLineFinder.findLine(); + + if (insertInfo) { + _insertPoint.call(this, eventData, insertInfo); + } + } +}); +/** + * Deletes a point from a freehand tool. + * @private + * @method + * + * @param {Object} eventData The data object associated with the event. + * @param {Object} deleteInfo Object containing information about which point to delete. + * @returns {void} + */ + +function _deletePoint(eventData, deleteInfo) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(eventData.element, this.name); + + if (toolData === undefined) { + return; + } + + var deleteHandle = deleteInfo.handleIndex; + var toolIndex = deleteInfo.toolIndex; // Get the toolData from insertInfo + + var data = toolData.data[toolIndex]; + var points = data.handles.points; // Only allow delete if > 3 points + + if (points.length <= 3) { + return; + } // Link the line of the previous handle to the one after handles[deleteHandle]; + + + if (deleteHandle === points.length - 1) { + points[deleteHandle - 1].lines.pop(); + points[deleteHandle - 1].lines.push(points[0]); + } else if (deleteHandle === 0) { + points[points.length - 1].lines.pop(); + points[points.length - 1].lines.push(points[deleteHandle + 1]); + } else { + points[deleteHandle - 1].lines.pop(); + points[deleteHandle - 1].lines.push(points[deleteHandle + 1]); + } // Remove the handle + + + points.splice(deleteHandle, 1); + data.invalidated = true; + data.active = true; + data.highlight = true; // Force onImageRendered to fire + + _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.updateImage(eventData.element); +} +/** + * Inserts a new point into a freehand tool. + * @private + * @method + * + * @param {Object} eventData - The data object associated with the event. + * @param {Object} insertInfo - Object containing information about where to insert the point. + * @returns {void} + */ + + +function _insertPoint(eventData, insertInfo) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(eventData.element, this.name); + + if (toolData === undefined) { + return; + } // Get the toolData from insertInfo + + + var data = toolData.data[insertInfo.toolIndex]; + + var insertIndex = _getInsertionIndex(insertInfo); + + if (insertIndex === Infinity) { + return; + } + + var handleData = new _FreehandHandleData_js__WEBPACK_IMPORTED_MODULE_1__["default"](eventData.currentPoints.image); + var points = data.handles.points; // Add the new handle + + points.splice(insertIndex, 0, handleData); // Add the line from the previous handle to the inserted handle (note the tool is now one increment longer) + + points[insertIndex - 1].lines.pop(); + points[insertIndex - 1].lines.push(eventData.currentPoints.image); + Object(_addLine_js__WEBPACK_IMPORTED_MODULE_4__["default"])(points, insertIndex); + data.active = true; + data.highlight = true; // Force onImageRendered to fire + + data.invalidated = true; + _externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.updateImage(eventData.element); +} +/** + * Gets the handle index of a tool in which to insert the new point. + * @private + * @method + * + * @param {Object} insertInfo - Object containing information about where to insert the point. + * @returns {void} + */ + + +function _getInsertionIndex(insertInfo) { + // Get lowest index that isn't zero + var handleIndexArray = insertInfo.handleIndexArray; + var insertIndex = Infinity; + var arrayContainsZero = handleIndexArray.includes(0); + + for (var i = 0; i < handleIndexArray.length; i++) { + var index = handleIndexArray[i]; + + if (index !== 0 && index < insertIndex) { + insertIndex = index; + } + } // Treat the special case of handleIndexArray === [0,1] || [1,0] + + + if (arrayContainsZero && insertIndex === 1) { + insertIndex = 0; + } // The insertion index shall be just after the lower index + + + insertIndex++; + return insertIndex; +} + +/***/ }), + +/***/ "./util/freehand/pointInFreehand.js": +/*!******************************************!*\ + !*** ./util/freehand/pointInFreehand.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Calculates whether "location" is inside the polygon defined by dataHandles + * by counting the number of times a ray originating from "point" crosses the + * edges of the polygon. Odd === inside, Even === outside. + * @export @public @method + * @name pointInFreehand + * + * @param {Object} dataHandles Data object associated with the tool. + * @param {Object} location The coordinates being queried. + * @returns {boolean} True if the location is inside the polygon defined by dataHandles. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (dataHandles, location) { + var inROI = false; // Cycle round pairs of points + + var j = dataHandles.length - 1; // The last vertex is the previous one to the first + + for (var i = 0; i < dataHandles.length; i++) { + if (rayFromPointCrosssesLine(location, dataHandles[i], dataHandles[j])) { + inROI = !inROI; + } + + j = i; // Here j is previous vertex to i + } + + return inROI; +}); +/** + * Returns true if the y-position yp is enclosed within y-positions y1 and y2. + * @private + * @method + * @name isEnclosedY + * + * @param {number} yp The y position of point p. + * @param {number} y1 The y position of point 1. + * @param {number} y2 The y position of point 2. + * @returns {boolean} True if the y-position yp is enclosed within y-positions y1 and y2. + */ + +function isEnclosedY(yp, y1, y2) { + if (y1 < yp && yp < y2 || y2 < yp && yp < y1) { + return true; + } + + return false; +} +/** + * Returns true if the line segment is to the right of the point. + * @private + * @method + * @name isLineRightOfPoint + * + * @param {Object} point The point being queried. + * @param {Object} lp1 The first point of the line segment. + * @param {Object} lp2 The second point of the line segment. + * @returns {boolean} True if the line is to the right of the point. + */ + + +function isLineRightOfPoint(point, lp1, lp2) { + // If both right of point return true + if (lp1.x > point.x && lp2.x > point.x) { + return true; + } // Catch when line is vertical. + + + if (lp1.x === lp2.x) { + return point.x < lp1.x; + } // Put leftmost point in lp1 + + + if (lp1.x > lp2.x) { + var lptemp = lp1; + lp1 = lp2; + lp2 = lptemp; + } + + var lPointY = lineSegmentAtPoint(point, lp1, lp2); // If the lp1.x and lp2.x enclose point.x check gradient of line and see if + // Point is above or below the line to calculate if it inside. + + if (Math.sign(lPointY.gradient) * point.y > Math.sign(lPointY.gradient) * lPointY.value) { + return true; + } + + return false; +} +/** + * Returns the y value of the line segment at the x value of the point. + * @private + * @method + * @name lineSegmentAtPoint + * + * @param {Object} point The point being queried. + * @param {Object} lp1 The first point of the line segment. + * @param {Object} lp2 The second point of the line segment. + * @returns {Object} An object containing the y value as well as the gradient of the line segment. + */ + + +function lineSegmentAtPoint(point, lp1, lp2) { + var dydx = (lp2.y - lp1.y) / (lp2.x - lp1.x); + var fx = { + value: lp1.y + dydx * (point.x - lp1.x), + gradient: dydx + }; + return fx; +} +/** + * Returns true if a rightwards ray originating from the point crosses the line defined by handleI and handleJ. + * @private + * @method + * @name rayFromPointCrosssesLine + * + * @param {Object} point The point being queried. + * @param {Object} handleI The first handle of the line segment. + * @param {Object} handleJ The second handle of the line segment. + * @returns {boolean} True if a rightwards ray originating from the point crosses the line defined by handleI and handleJ. + */ + + +function rayFromPointCrosssesLine(point, handleI, handleJ) { + if (isEnclosedY(point.y, handleI.y, handleJ.y) && isLineRightOfPoint(point, handleI, handleJ)) { + return true; + } + + return false; +} + +/***/ }), + +/***/ "./util/getActiveTool.js": +/*!*******************************!*\ + !*** ./util/getActiveTool.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getActiveTool; }); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store */ "./store/index.js"); +/* harmony import */ var _store_getActiveToolsForElement__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../store/getActiveToolsForElement */ "./store/getActiveToolsForElement.js"); +/* harmony import */ var _store_filterToolsUsableWithMultiPartTools__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../store/filterToolsUsableWithMultiPartTools */ "./store/filterToolsUsableWithMultiPartTools.js"); + + + // Todo: We could simplify this if we only allow one active +// Tool per mouse button mask? + +function getActiveTool(element, buttons) { + var interactionType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'mouse'; + var tools; + + if (interactionType === 'touch') { + tools = Object(_store_getActiveToolsForElement__WEBPACK_IMPORTED_MODULE_1__["default"])(element, _store__WEBPACK_IMPORTED_MODULE_0__["getters"].touchTools()); + tools = tools.filter(function (tool) { + return tool.options.isTouchActive; + }); + } else { + // Filter out disabled, enabled, and passive + tools = Object(_store_getActiveToolsForElement__WEBPACK_IMPORTED_MODULE_1__["default"])(element, _store__WEBPACK_IMPORTED_MODULE_0__["getters"].mouseTools()); // Filter out tools that do not match mouseButtonMask + + tools = tools.filter(function (tool) { + return Array.isArray(tool.options.mouseButtonMask) && buttons && tool.options.mouseButtonMask.includes(buttons) && tool.options.isMouseActive; + }); + + if (_store__WEBPACK_IMPORTED_MODULE_0__["state"].isMultiPartToolActive) { + tools = Object(_store_filterToolsUsableWithMultiPartTools__WEBPACK_IMPORTED_MODULE_2__["default"])(tools); + } + } + + if (tools.length === 0) { + return; + } + + return tools[0]; +} + +/***/ }), + +/***/ "./util/getCircleCoords.js": +/*!*********************************!*\ + !*** ./util/getCircleCoords.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getCircleCoords; }); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules */ "./externalModules.js"); + +/** + * Retrieve the bounds of the circle in image coordinates + * + * @param {*} startHandle + * @param {*} endHandle + * @returns {{ left: number, top: number, width: number, height: number }} + */ + +function getCircleCoords(startHandle, endHandle) { + var distance = _externalModules__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance; + var radius = distance(startHandle, endHandle); + return { + left: Math.floor(Math.min(startHandle.x - radius, endHandle.x)), + top: Math.floor(Math.min(startHandle.y - radius, endHandle.y)), + width: radius * 2, + height: radius * 2 + }; +} + +/***/ }), + +/***/ "./util/getDefault.js": +/*!****************************!*\ + !*** ./util/getDefault.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns the first argument if defined, otherwise returns the second + * + * @param {*} value + * @param {*} defaultValue + * @returns {*} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (value, defaultValue) { + return value === undefined ? defaultValue : value; +}); + +/***/ }), + +/***/ "./util/getKeyPressData.js": +/*!*********************************!*\ + !*** ./util/getKeyPressData.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getKeyPressData; }); +/* harmony import */ var _store___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/ */ "./store/index.js"); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules */ "./externalModules.js"); + + +function getKeyPressData(e) { + var cornerstone = _externalModules__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone; + var element = e.currentTarget; + var enabledElement = cornerstone.getEnabledElement(element); + + if (!enabledElement || !enabledElement.image) { + return; + } + + var currentPointsImage = _store___WEBPACK_IMPORTED_MODULE_0__["default"].state.mousePositionImage; + return { + event: window.event || e, + // Old IE support + element: element, + viewport: cornerstone.getViewport(element), + image: enabledElement.image, + currentPoints: { + image: currentPointsImage, + canvas: cornerstone.pixelToCanvas(element, currentPointsImage) + }, + keyCode: e.keyCode, + which: e.which + }; +} + +/***/ }), + +/***/ "./util/getLuminance.js": +/*!******************************!*\ + !*** ./util/getLuminance.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Returns the luminance of a region. + * @public + * @function getLuminance + * + * @param {HTMLElement} element The element. + * @param {number} x The x position of the top-left corner of the region. + * @param {number} y The y position of the top-left corner of the region. + * @param {number} width The width of the region. + * @param {number} height The height of the region + * @returns {number[]} The luminance. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, x, y, width, height) { + if (!element) { + throw new Error('getLuminance: parameter element must not be undefined'); + } + + x = Math.round(x); + y = Math.round(y); + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); + var image = enabledElement.image; + var luminance = []; + var index = 0; + var pixelData = image.getPixelData(); + var spIndex, row, column; + + if (image.color) { + for (row = 0; row < height; row++) { + for (column = 0; column < width; column++) { + spIndex = ((row + y) * image.columns + (column + x)) * 4; + var red = pixelData[spIndex]; + var green = pixelData[spIndex + 1]; + var blue = pixelData[spIndex + 2]; + luminance[index++] = 0.2126 * red + 0.7152 * green + 0.0722 * blue; + } + } + } else { + for (row = 0; row < height; row++) { + for (column = 0; column < width; column++) { + spIndex = (row + y) * image.columns + (column + x); + luminance[index++] = pixelData[spIndex] * image.slope + image.intercept; + } + } + } + + return luminance; +}); + +/***/ }), + +/***/ "./util/getMaxSimultaneousRequests.js": +/*!********************************************!*\ + !*** ./util/getMaxSimultaneousRequests.js ***! + \********************************************/ +/*! exports provided: getDefaultSimultaneousRequests, getMaxSimultaneousRequests, setMaxSimultaneousRequests, getBrowserInfo, isMobileDevice */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDefaultSimultaneousRequests", function() { return getDefaultSimultaneousRequests; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMaxSimultaneousRequests", function() { return getMaxSimultaneousRequests; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setMaxSimultaneousRequests", function() { return setMaxSimultaneousRequests; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getBrowserInfo", function() { return getBrowserInfo; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isMobileDevice", function() { return isMobileDevice; }); +var configMaxSimultaneousRequests; // Maximum concurrent connections to the same server +// Information from http://sgdev-blog.blogspot.fr/2014/01/maximum-concurrent-connection-to-same.html + +var maxSimultaneousRequests = { + default: 6, + IE: { + 9: 6, + 10: 8, + default: 8 + }, + Firefox: { + default: 6 + }, + Opera: { + 10: 8, + 11: 6, + 12: 6, + default: 6 + }, + Chrome: { + default: 6 + }, + Safari: { + default: 6 + } +}; // Browser name / version detection +// +// + +/** + * Browser name / version detection + * http://stackoverflow.com/questions/2400935/browser-detection-in-javascript + * @export @public @method + * @name getBrowserInfo + * + * @returns {string} The name and version of the browser. + */ + +function getBrowserInfo() { + var ua = navigator.userAgent; + var M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || []; + var tem; + + if (/trident/i.test(M[1])) { + tem = /\brv[ :]+(\d+)/g.exec(ua) || []; + return "IE ".concat(tem[1] || ''); + } + + if (M[1] === 'Chrome') { + tem = ua.match(/\b(OPR|Edge)\/(\d+)/); + + if (tem !== null) { + return tem.slice(1).join(' ').replace('OPR', 'Opera'); + } + } + + M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?']; + + if ((tem = ua.match(/version\/(\d+)/i)) !== null) { + M.splice(1, 1, tem[1]); + } + + return M.join(' '); +} +/** + * Sets the maximum number of simultaneous requests. + * @export @public @method + * @name setMaxSimultaneousRequests + * + * @param {number} newMaxSimultaneousRequests The value. + * @returns {void} + */ + + +function setMaxSimultaneousRequests(newMaxSimultaneousRequests) { + configMaxSimultaneousRequests = newMaxSimultaneousRequests; +} +/** + * Returns the maximum number of simultaneous requests. + * @export @public @method + * @name getMaxSimultaneousRequests + * + * @returns {number} The maximum number of simultaneous requests + */ + + +function getMaxSimultaneousRequests() { + if (configMaxSimultaneousRequests) { + return configMaxSimultaneousRequests; + } + + return getDefaultSimultaneousRequests(); +} +/** + * Returns the default number of simultaneous requests. + * @export @public @method + * @name getDefaultSimultaneousRequests + * + * @returns {number} The default number of simultaneous requests. + */ + + +function getDefaultSimultaneousRequests() { + var infoString = getBrowserInfo(); + var info = infoString.split(' '); + var browserName = info[0]; + var browserVersion = info[1]; + var browserData = maxSimultaneousRequests[browserName]; + + if (!browserData) { + return maxSimultaneousRequests.default; + } + + if (!browserData[browserVersion]) { + return browserData.default; + } + + return browserData[browserVersion]; +} +/** + * Checks if cornerstoneTools is operating on a mobile device. + * @export @public @method + * @name isMobileDevice + * + * @returns {boolean} True if running on a mobile device. + */ + + +function isMobileDevice() { + var pattern = new RegExp('Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini'); + return pattern.test(navigator.userAgent); +} + + + +/***/ }), + +/***/ "./util/getPixelSpacing.js": +/*!*********************************!*\ + !*** ./util/getPixelSpacing.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getPixelSpacing; }); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules */ "./externalModules.js"); + +function getPixelSpacing(image) { + var imagePlane = _externalModules__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.metaData.get('imagePlaneModule', image.imageId); + + if (imagePlane) { + return { + rowPixelSpacing: imagePlane.rowPixelSpacing || imagePlane.rowImagePixelSpacing, + colPixelSpacing: imagePlane.columnPixelSpacing || imagePlane.colImagePixelSpacing + }; + } + + return { + rowPixelSpacing: image.rowPixelSpacing, + colPixelSpacing: image.columnPixelSpacing + }; +} + +/***/ }), + +/***/ "./util/getRGBPixels.js": +/*!******************************!*\ + !*** ./util/getRGBPixels.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Gets pixels of an RGB image. + * @export @public @method + * @name getRGBPixels + * + * @param {HTMLElement} element The element. + * @param {number} x The x position of the top-left corner of the region. + * @param {number} y The y position of the top-left corner of the region. + * @param {number} width The width of the region. + * @param {number} height The height of the region + * @returns {number[]} The pixel data. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, x, y, width, height) { + if (!element) { + throw new Error('getRGBPixels: parameter element must not be undefined'); + } + + x = Math.round(x); + y = Math.round(y); + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); + var storedPixelData = []; + var index = 0; + var pixelData = enabledElement.image.getPixelData(); + var spIndex, row, column; + + if (enabledElement.image.color) { + for (row = 0; row < height; row++) { + for (column = 0; column < width; column++) { + spIndex = ((row + y) * enabledElement.image.columns + (column + x)) * 4; + var red = pixelData[spIndex]; + var green = pixelData[spIndex + 1]; + var blue = pixelData[spIndex + 2]; + var alpha = pixelData[spIndex + 3]; + storedPixelData[index++] = red; + storedPixelData[index++] = green; + storedPixelData[index++] = blue; + storedPixelData[index++] = alpha; + } + } + } + + return storedPixelData; +}); + +/***/ }), + +/***/ "./util/getROITextBoxCoords.js": +/*!*************************************!*\ + !*** ./util/getROITextBoxCoords.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getROITextBoxCoords; }); +/** + * Determine the coordinates that will place the textbox to the right of the + * annotation, taking rotation, hflip, and vflip into account. + * + * @param {Object} viewport - The object that stores rotation, hflip, and vflip. + * @param {Object} handles - The handles of the annotation. + * @returns {Object} - The coordinates for default placement of the textbox + */ +function getROITextBoxCoords(viewport, handles) { + var corners = _determineCorners(handles); + + var centerX = (corners.left.x + corners.right.x) / 2; + var centerY = (corners.top.y + corners.bottom.y) / 2; + var textBox = {}; + + if (viewport.rotation >= 0 && viewport.rotation < 90) { + textBox.x = viewport.hflip ? corners.left.x : corners.right.x; + textBox.y = centerY; + } + + if (viewport.rotation >= 90 && viewport.rotation < 180) { + textBox.x = centerX; + textBox.y = viewport.vflip ? corners.bottom.y : corners.top.y; + } + + if (viewport.rotation >= 180 && viewport.rotation < 270) { + textBox.x = viewport.hflip ? corners.right.x : corners.left.x; + textBox.y = centerY; + } + + if (viewport.rotation >= 270 && viewport.rotation < 360) { + textBox.x = centerX; + textBox.y = viewport.vflip ? corners.top.y : corners.bottom.y; + } + + return textBox; +} +/** + * Determine the handles that have the min/max x and y values. + * + * @param {Object} handles - The handles of the annotation. + * @returns {Object} - The top, left, bottom, and right handles + */ + +function _determineCorners(handles) { + var handlesLeftToRight = [handles.start, handles.end].sort(_compareX); + var handlesTopToBottom = [handles.start, handles.end].sort(_compareY); + var left = handlesLeftToRight[0]; + var right = handlesLeftToRight[handlesLeftToRight.length - 1]; + var top = handlesTopToBottom[0]; + var bottom = handlesTopToBottom[handlesTopToBottom.length - 1]; + return { + top: top, + left: left, + bottom: bottom, + right: right + }; + + function _compareX(a, b) { + return a.x < b.x ? -1 : 1; + } + + function _compareY(a, b) { + return a.y < b.y ? -1 : 1; + } +} + +/***/ }), + +/***/ "./util/isEmptyObject.js": +/*!*******************************!*\ + !*** ./util/isEmptyObject.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Helper to determine if an object has no keys and is the correct type (is empty) + * + * @private + * @function isEmptyObject + * @param {Object} obj The object to check + * @returns {Boolean} true if the object is empty + */ +var isEmptyObject = function isEmptyObject(obj) { + return Object.keys(obj).length === 0 && obj.constructor === Object; +}; + +/* harmony default export */ __webpack_exports__["default"] = (isEmptyObject); + +/***/ }), + +/***/ "./util/isObject.js": +/*!**************************!*\ + !*** ./util/isObject.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__); + + +/** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * isObject({}) + * // => true + * + * isObject([1, 2, 3]) + * // => true + * + * isObject(Function) + * // => true + * + * isObject(null) + * // => false + */ +function isObject(value) { + var type = _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(value); + + return value !== null && (type === 'object' || type === 'function'); +} + +/* harmony default export */ __webpack_exports__["default"] = (isObject); + +/***/ }), + +/***/ "./util/isPointInImage.js": +/*!********************************!*\ + !*** ./util/isPointInImage.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return isPointInImage; }); +/** + * Checks if the point is within the image boundaries. + * @param {Object} pixel The pixel. + * @param {number} rows The number of rows. + * @param {number} cols The number of columns. + * @returns {boolean} + */ +function isPointInImage(_ref, rows, cols) { + var x = _ref.x, + y = _ref.y; + return x < cols && x >= 0 && y < rows && y >= 0; +} + +/***/ }), + +/***/ "./util/isPointInPolygon.js": +/*!**********************************!*\ + !*** ./util/isPointInPolygon.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return isPointInPolygon; }); +/** + * Checks whether a point is inside a polygon + * + * {@link https://github.com/substack/point-in-polygon/blob/master/index.js} + * ray-casting algorithm based on + * {@link http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html} + * + * @param {Array} point The point [x1, y1] + * @param {Array} vs The vertices [[x1, y1], [x2, y2], ...] of the Polygon + * @returns {boolean} + */ +function isPointInPolygon(point, vs) { + var x = point[0]; + var y = point[1]; + var inside = false; + + for (var i = 0, j = vs.length - 1; i < vs.length; j = i++) { + var xi = vs[i][0]; + var yi = vs[i][1]; + var xj = vs[j][0]; + var yj = vs[j][1]; + var intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi; + + if (intersect) { + inside = !inside; + } + } + + return inside; +} + +/***/ }), + +/***/ "./util/lineSegDistance.js": +/*!*********************************!*\ + !*** ./util/lineSegDistance.js ***! + \*********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Calculates the distance of a line segment from a point. + * @export @public @method + * @name lineSegDistance + * + * @param {HTMLElement} element The element. + * @param {Object} start The starting position of the line. + * @param {Object} end The end position of the line. + * @param {Object} coords The coordinates of the point. + * @returns {name} The distance between the line and the point. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, start, end, coords) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var lineSegment = { + start: cornerstone.pixelToCanvas(element, start), + end: cornerstone.pixelToCanvas(element, end) + }; + return _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.lineSegment.distanceToPoint(lineSegment, coords); +}); + +/***/ }), + +/***/ "./util/logger.js": +/*!************************!*\ + !*** ./util/logger.js ***! + \************************/ +/*! exports provided: getLogger, enable, disable */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLogger", function() { return getLogger; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "enable", function() { return enable; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "disable", function() { return disable; }); +/* harmony import */ var _debugLib_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./debugLib/index.js */ "./util/debugLib/index.js"); + +var BASE_SCOPE = 'cornerstoneTools'; +var baseLogger = Object(_debugLib_index_js__WEBPACK_IMPORTED_MODULE_0__["default"])(BASE_SCOPE); // eslint-disable-next-line no-process-env + +var devMode = "development" === 'development'; // If we're in dev-mode, tell the user how to get logs + +if (devMode && !baseLogger.enabled) { + // eslint-disable-next-line no-console + console.log('%cCornerstone Tools', 'background: #339955; padding: 4px; font-weight: bold; color: white'); // eslint-disable-next-line no-console + + console.info('run %clocalStorage.setItem("debug", "cornerstoneTools")%c to see console output', 'background: #eaeaea; color: #333; font-family: monospace', ''); +} +/** + * @method debug + * Create's a scoped debuging logger + */ + + +var getLogger = function getLogger(scope) { + var log = baseLogger.extend(scope); + return { + log: log, + // eslint-disable-next-line no-console + warn: devMode ? console.warn.bind(console) : log, + // eslint-disable-next-line no-console + error: console.error.bind(console) + }; +}; +/** + * @method enable + * @param {string} scope The scope to enabled + * @returns {void} + */ + +var enable = function enable() { + var scope = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "".concat(BASE_SCOPE, ":*"); + return _debugLib_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].enable(scope); +}; +/** + * @method disable + * @param {string} scope + * @returns {string} The previously enabled scope + */ + +var disable = function disable() { + return _debugLib_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].disable(); +}; + +/***/ }), + +/***/ "./util/makeUnselectable.js": +/*!**********************************!*\ + !*** ./util/makeUnselectable.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * A helper function to make an element (and its content) being non selectable. + * @export @public @method + * @name makeUnselectable + * + * @param {HTMLElement} element The element to make unselectable + * @param {Boolean} ignorePointerEvents true to make this element also + * ignore events (e.g. mouse click), false otherwise. + * @returns {void} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (element, ignorePointerEvents) { + element.style.webkitUserSelect = 'none'; + element.style.webkitTouchCallout = 'none'; + element.style.mozUserSelect = 'none'; + element.style.msUserSelect = 'none'; + element.style.oUserSelect = 'none'; + element.style.khtmlUserSelect = 'none'; + element.style.userSelect = 'none'; + element.unselectable = 'on'; + + element.oncontextmenu = function () { + return false; + }; + + if (ignorePointerEvents === true) { + element.style.pointerEvents = 'none'; + } +}); + +/***/ }), + +/***/ "./util/numbersWithCommas.js": +/*!***********************************!*\ + !*** ./util/numbersWithCommas.js ***! + \***********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Converts a number to a string with comma separators. + * http://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as-thousands-separators-in-javascript + * @export @public @method + * @name numbersWithCommas + * + * @param {number} x The number to convert. + * @returns {string} The pretty-printed number as a string. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (x) { + var parts = x.toString().split('.'); + parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ','); + return parts.join('.'); +}); + +/***/ }), + +/***/ "./util/pointInsideBoundingBox.js": +/*!****************************************!*\ + !*** ./util/pointInsideBoundingBox.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Returns true if a point is enclosed within a bounding box. + * @export @public @method + * @name pointInsideBoundingBox + * + * @param {Object} handle The handle containing the boundingBox. + * @param {Object} coords The coordinate to check. + * @returns {boolean} True if the point is enclosed within the bounding box. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (handle, coords) { + if (!handle.boundingBox) { + return; + } + + return _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.insideRect(coords, handle.boundingBox); +}); + +/***/ }), + +/***/ "./util/pointProjector.js": +/*!********************************!*\ + !*** ./util/pointProjector.js ***! + \********************************/ +/*! exports provided: projectPatientPointToImagePlane, imagePointToPatientPoint, planePlaneIntersection, rotatePoint */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "projectPatientPointToImagePlane", function() { return projectPatientPointToImagePlane; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "imagePointToPatientPoint", function() { return imagePointToPatientPoint; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "planePlaneIntersection", function() { return planePlaneIntersection; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rotatePoint", function() { return rotatePoint; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/convertToVector3.js */ "./util/convertToVector3.js"); + + +/** + * Projects a patient point to an image point + * @export @public @method + * @name projectPatientPointToImagePlane + * + * @param {Object} patientPoint The patient point. + * @param {Object} imagePlane The image plane used for projection. + * @returns {Object} The projected coordinates. + */ + +function projectPatientPointToImagePlane(patientPoint, imagePlane) { + var rowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.rowCosines); + var columnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.columnCosines); + var imagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.imagePositionPatient); + var point = patientPoint.clone().sub(imagePositionPatient); + var x = rowCosines.dot(point) / imagePlane.columnPixelSpacing; + var y = columnCosines.dot(point) / imagePlane.rowPixelSpacing; + return { + x: x, + y: y + }; +} // + +/** + * Projects an image point to a patient point + * @export @public @method + * @name imagePointToPatientPoint + * + * @param {Object} imagePoint The image point. + * @param {Object} imagePlane The image plane used for projection. + * @returns {Object} The projected coordinates. + */ + +function imagePointToPatientPoint(imagePoint, imagePlane) { + var rowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.rowCosines); + var columnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.columnCosines); + var imagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imagePlane.imagePositionPatient); + var x = rowCosines.clone().multiplyScalar(imagePoint.x); + x.multiplyScalar(imagePlane.columnPixelSpacing); + var y = columnCosines.clone().multiplyScalar(imagePoint.y); + y.multiplyScalar(imagePlane.rowPixelSpacing); + var patientPoint = x.add(y); + patientPoint.add(imagePositionPatient); + return patientPoint; +} +/** + * Returns a rectangle from the imagePlane. + * @export @public @method + * @name getRectangleFromImagePlane + * + * @param {Object} imagePlane The imagePlane. + * @returns {Object} The rect. + */ + +function getRectangleFromImagePlane(imagePlane) { + // Get the points + var topLeft = imagePointToPatientPoint({ + x: 0, + y: 0 + }, imagePlane); + var topRight = imagePointToPatientPoint({ + x: imagePlane.columns, + y: 0 + }, imagePlane); + var bottomLeft = imagePointToPatientPoint({ + x: 0, + y: imagePlane.rows + }, imagePlane); + var bottomRight = imagePointToPatientPoint({ + x: imagePlane.columns, + y: imagePlane.rows + }, imagePlane); // Get each side as a vector + + var rect = { + top: new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Line3(topLeft, topRight), + left: new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Line3(topLeft, bottomLeft), + right: new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Line3(topRight, bottomRight), + bottom: new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Line3(bottomLeft, bottomRight) + }; + return rect; +} +/** + * Gets all the intersections of a line with a rect. + * @private + * @method + * @name lineRectangleIntersection + * + * @param {Object} line The line to check. + * @param {Object} rect The rect being intersected. + * @returns {Object[]} An array of the intersections. + */ + + +function lineRectangleIntersection(line, rect) { + var intersections = []; + Object.keys(rect).forEach(function (side) { + var segment = rect[side]; + var intersection = line.intersectLine(segment); + + if (intersection) { + intersections.push(intersection); + } + }); + return intersections; +} +/** + * Gets the line of intersection between two planes in patient space. + * @export @public @method + * @name planePlaneIntersection + * + * @param {Object} targetImagePlane The target plane. + * @param {Object} referenceImagePlane The reference plane + * @returns {Object} The intersections. + */ + + +function planePlaneIntersection(targetImagePlane, referenceImagePlane) { + var targetRowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetImagePlane.rowCosines); + var targetColumnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetImagePlane.columnCosines); + var targetImagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetImagePlane.imagePositionPatient); + var referenceRowCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(referenceImagePlane.rowCosines); + var referenceColumnCosines = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(referenceImagePlane.columnCosines); + var referenceImagePositionPatient = Object(_util_convertToVector3_js__WEBPACK_IMPORTED_MODULE_1__["default"])(referenceImagePlane.imagePositionPatient); // First, get the normals of each image plane + + var targetNormal = targetRowCosines.clone().cross(targetColumnCosines); + var targetPlane = new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Plane(); + targetPlane.setFromNormalAndCoplanarPoint(targetNormal, targetImagePositionPatient); + var referenceNormal = referenceRowCosines.clone().cross(referenceColumnCosines); + var referencePlane = new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Plane(); + referencePlane.setFromNormalAndCoplanarPoint(referenceNormal, referenceImagePositionPatient); + var originDirection = referencePlane.clone().intersectPlane(targetPlane); + var origin = originDirection.origin; + var direction = originDirection.direction; // Calculate the longest possible length in the reference image plane (the length of the diagonal) + + var bottomRight = imagePointToPatientPoint({ + x: referenceImagePlane.columns, + y: referenceImagePlane.rows + }, referenceImagePlane); + var distance = referenceImagePositionPatient.distanceTo(bottomRight); // Use this distance to bound the ray intersecting the two planes + + var line = new _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.Line3(); + line.start = origin; + line.end = origin.clone().add(direction.multiplyScalar(distance)); // Find the intersections between this line and the reference image plane's four sides + + var rect = getRectangleFromImagePlane(referenceImagePlane); + var intersections = lineRectangleIntersection(line, rect); // Return the intersections between this line and the reference image plane's sides + // In order to draw the reference line from the target image. + + if (intersections.length !== 2) { + return; + } + + return { + start: intersections[0], + end: intersections[1] + }; +} +/** + * Translate a point using a rotation angle. + * @export @public @method + * @name rotatePoint + * + * @param {Object} point - `{ x, y }` in either pixel or canvas coordinates. + * @param {Object} center - `{ x, y }` in either pixel or canvas coordinates. + * @param {Number} angle - angle in degrees + * @returns {Object} - `{ x, y }` new point translated + */ + +function rotatePoint(point, center, angle) { + var angleRadians = angle * (Math.PI / 180); // Convert to radians + + var rotatedX = Math.cos(angleRadians) * (point.x - center.x) - Math.sin(angleRadians) * (point.y - center.y) + center.x; + var rotatedY = Math.sin(angleRadians) * (point.x - center.x) + Math.cos(angleRadians) * (point.y - center.y) + center.y; + return { + x: rotatedX, + y: rotatedY + }; +} + +/***/ }), + +/***/ "./util/roundToDecimal.js": +/*!********************************!*\ + !*** ./util/roundToDecimal.js ***! + \********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Rounds a number to the specified precision. + * @export @public @method + * @name roundToDecimal + * + * @param {number} value The value to round. + * @param {number} precision The required precision. + * @returns {number} The rounded number. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (value, precision) { + var multiplier = Math.pow(10, precision); + return Math.round(value * multiplier) / multiplier; +}); + +/***/ }), + +/***/ "./util/scroll.js": +/*!************************!*\ + !*** ./util/scroll.js ***! + \************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _scrollToIndex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./scrollToIndex.js */ "./util/scrollToIndex.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _clip_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./clip.js */ "./util/clip.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); + + + + +/** + * Scrolls through the stack. + * @export @public @method + * @name scroll + * + * @param {HTMLElement} element The element to scroll. + * @param {number} images The number of images to scroll through. + * @param {type} [loop = false] Whether to loop the scrolling. + * @param {type} [allowSkipping = true] Whether frames can be skipped. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, images) { + var loop = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var allowSkipping = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true; + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_1__["getToolState"])(element, 'stack'); + + if (!toolData || !toolData.data || !toolData.data.length) { + return; + } + + var stackData = toolData.data[0]; + + if (!stackData.pending) { + stackData.pending = []; + } + + var newImageIdIndex = stackData.currentImageIdIndex + images; + + if (loop) { + var nbImages = stackData.imageIds.length; + newImageIdIndex %= nbImages; + } else { + newImageIdIndex = Object(_clip_js__WEBPACK_IMPORTED_MODULE_2__["default"])(newImageIdIndex, 0, stackData.imageIds.length - 1); + } + + if (allowSkipping) { + Object(_scrollToIndex_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, newImageIdIndex); + } else { + var pendingEvent = { + index: newImageIdIndex + }; + stackData.pending.push(pendingEvent); + scrollWithoutSkipping(stackData, pendingEvent, element); + } +}); +/** + * Recursively scrolls the stack until the desired image is reached. + * @private + * @method + * @name scrollWithoutSkipping + * + * @param {type} stackData Data object containing information about the stack. + * @param {Object} pendingEvent The event to process next. + * @param {HTMLElement} element The element being scrolled through. + * @returns {void} + */ + +function scrollWithoutSkipping(stackData, pendingEvent, element) { + if (stackData.pending[0] === pendingEvent) { + if (stackData.currentImageIdIndex === pendingEvent.index) { + stackData.pending.splice(stackData.pending.indexOf(pendingEvent), 1); + + if (stackData.pending.length > 0) { + scrollWithoutSkipping(stackData, stackData.pending[0], element); + } + + return; + } + + var newImageHandler = function newImageHandler(event) { + var index = stackData.imageIds.indexOf(event.detail.image.imageId); + + if (index === pendingEvent.index) { + stackData.pending.splice(stackData.pending.indexOf(pendingEvent), 1); + element.removeEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.EVENTS.NEW_IMAGE, newImageHandler); + + if (stackData.pending.length > 0) { + scrollWithoutSkipping(stackData, stackData.pending[0], element); + } + } + }; + + element.addEventListener(_externalModules_js__WEBPACK_IMPORTED_MODULE_3__["default"].cornerstone.EVENTS.NEW_IMAGE, newImageHandler); + Object(_scrollToIndex_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, pendingEvent.index); + } +} + +/***/ }), + +/***/ "./util/scrollToIndex.js": +/*!*******************************!*\ + !*** ./util/scrollToIndex.js ***! + \*******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events.js */ "./events.js"); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../stateManagement/toolState.js */ "./stateManagement/toolState.js"); +/* harmony import */ var _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../requestPool/requestPoolManager.js */ "./requestPool/requestPoolManager.js"); +/* harmony import */ var _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../stateManagement/loadHandlerManager.js */ "./stateManagement/loadHandlerManager.js"); +/* harmony import */ var _util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util/triggerEvent.js */ "./util/triggerEvent.js"); + + + + + + +/** + * Scrolls through the stack to the image index requested. + * @export @public @method + * @name scrollToIndex + * + * @param {type} element The element to scroll through. + * @param {type} newImageIdIndex The target image index. + * @returns {void} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (element, newImageIdIndex) { + var toolData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(element, 'stack'); + + if (!toolData || !toolData.data || !toolData.data.length) { + return; + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_1__["default"].cornerstone; // If we have more than one stack, check if we have a stack renderer defined + + var stackRenderer; + + if (toolData.data.length > 1) { + var stackRendererData = Object(_stateManagement_toolState_js__WEBPACK_IMPORTED_MODULE_2__["getToolState"])(element, 'stackRenderer'); + + if (stackRendererData && stackRendererData.data && stackRendererData.data.length) { + stackRenderer = stackRendererData.data[0]; + } + } + + var stackData = toolData.data[0]; // Allow for negative indexing + + if (newImageIdIndex < 0) { + newImageIdIndex += stackData.imageIds.length; + } + + var startLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__["default"].getStartLoadHandler(element); + var endLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__["default"].getEndLoadHandler(element); + var errorLoadingHandler = _stateManagement_loadHandlerManager_js__WEBPACK_IMPORTED_MODULE_4__["default"].getErrorLoadingHandler(element); + + function doneCallback(image) { + if (stackData.currentImageIdIndex !== newImageIdIndex) { + return; + } // Check if the element is still enabled in Cornerstone, + // If an error is thrown, stop here. + + + try { + // TODO: Add 'isElementEnabled' to Cornerstone? + cornerstone.getEnabledElement(element); + } catch (error) { + return; + } + + if (stackRenderer) { + stackRenderer.currentImageIdIndex = newImageIdIndex; + stackRenderer.render(element, toolData.data); + } else { + cornerstone.displayImage(element, image); + } + + if (endLoadingHandler) { + endLoadingHandler(element, image); + } + } + + function failCallback(error) { + var imageId = stackData.imageIds[newImageIdIndex]; + + if (errorLoadingHandler) { + errorLoadingHandler(element, imageId, error); + } + } + + if (newImageIdIndex === stackData.currentImageIdIndex) { + return; + } + + if (startLoadingHandler) { + startLoadingHandler(element); + } + + var eventData = { + newImageIdIndex: newImageIdIndex, + direction: newImageIdIndex - stackData.currentImageIdIndex + }; + stackData.currentImageIdIndex = newImageIdIndex; + var newImageId = stackData.imageIds[newImageIdIndex]; // Retry image loading in cases where previous image promise + // Was rejected, if the option is set + + /* + Const config = stackScroll.getConfiguration(); + TODO: Revisit this. It appears that Core's imageCache is not + keeping rejected promises anywhere, so we have no way to know + if something was previously rejected. + if (config && config.retryLoadOnScroll === true) { + } + */ + // Convert the preventCache value in stack data to a boolean + + var preventCache = Boolean(stackData.preventCache); + var imagePromise; + + if (preventCache) { + imagePromise = cornerstone.loadImage(newImageId); + } else { + imagePromise = cornerstone.loadAndCacheImage(newImageId); + } + + imagePromise.then(doneCallback, failCallback); // Make sure we kick off any changed download request pools + + _requestPool_requestPoolManager_js__WEBPACK_IMPORTED_MODULE_3__["default"].startGrabbing(); + Object(_util_triggerEvent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element, _events_js__WEBPACK_IMPORTED_MODULE_0__["default"].STACK_SCROLL, eventData); +}); + +/***/ }), + +/***/ "./util/segmentation/drawBrush.js": +/*!****************************************!*\ + !*** ./util/segmentation/drawBrush.js ***! + \****************************************/ +/*! exports provided: drawBrushPixels */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "drawBrushPixels", function() { return drawBrushPixels; }); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _eraseIfSegmentIndex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./eraseIfSegmentIndex.js */ "./util/segmentation/eraseIfSegmentIndex.js"); + + +/** + * DrawBrushPixels - Adds or removes labels to a labelmap. + * + * @param {number[]} pointerArray The array of pixels to paint. + * @param {Object} labelmap2D The `pixelData` array to paint to. + * @param {number} segmentIndex The segment being drawn. + * @param {number} columns The number of columns in the image. + * @param {boolean} shouldErase = false Whether we should erase rather than color pixels. + * @returns {null} + */ + +function drawBrushPixels(pointerArray, pixelData, segmentIndex, columns) { + var shouldErase = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; + + var getPixelIndex = function getPixelIndex(x, y) { + return y * columns + x; + }; + + pointerArray.forEach(function (point) { + var spIndex = getPixelIndex.apply(void 0, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(point)); + + if (shouldErase) { + Object(_eraseIfSegmentIndex_js__WEBPACK_IMPORTED_MODULE_1__["default"])(spIndex, pixelData, segmentIndex); + } else { + pixelData[spIndex] = segmentIndex; + } + }); +} + + + +/***/ }), + +/***/ "./util/segmentation/eraseIfSegmentIndex.js": +/*!**************************************************!*\ + !*** ./util/segmentation/eraseIfSegmentIndex.js ***! + \**************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return eraseIfSegmentIndex; }); +/** + * If the pixelData for the given pixelIndex is equal to the segmentIndex + * erase it (set it to 0). + * @param {number} pixelIndex The index of the pixel. + * @param {UInt16Array} pixelData The pixelData array. + * @param {number} segmentIndex The segment Index to erase. + */ +function eraseIfSegmentIndex(pixelIndex, pixelData, segmentIndex) { + if (pixelData[pixelIndex] === segmentIndex) { + pixelData[pixelIndex] = 0; + } +} + +/***/ }), + +/***/ "./util/segmentation/eraseOutsideBoundingBox.js": +/*!******************************************************!*\ + !*** ./util/segmentation/eraseOutsideBoundingBox.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return eraseOutsideBoundingBox; }); +/* harmony import */ var _eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./eraseIfSegmentIndex */ "./util/segmentation/eraseIfSegmentIndex.js"); + +/** + * EraseOutsideBoundingBox - Erase all pixels labeled with the activeSegmentIndex, + * outside the bouding box defined by the `topLeft` and `topRight`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + +function eraseOutsideBoundingBox(evt, operationData, topLeft, bottomRight) { + var eventData = evt.detail; + var pixelData = operationData.pixelData, + segmentIndex = operationData.segmentIndex; + var image = eventData.image; + var width = image.width, + height = image.height; // Loop until top of bounding box from top of image, color the entire row + + for (var i = 0; i < width; i++) { + for (var j = 0; j < topLeft[1]; j++) { + Object(_eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_0__["default"])(j * width + i, pixelData, segmentIndex); + } + } // Loop within rows of bounding box, to the left of the box + + + for (var _i = 0; _i < topLeft[0]; _i++) { + for (var _j = topLeft[1]; _j < bottomRight[1]; _j++) { + Object(_eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_0__["default"])(_j * width + _i, pixelData, segmentIndex); + } + } // Loop within rows of bounding box, to the right of the box + + + for (var _i2 = bottomRight[0]; _i2 < width; _i2++) { + for (var _j2 = topLeft[1]; _j2 < bottomRight[1]; _j2++) { + Object(_eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_0__["default"])(_j2 * width + _i2, pixelData, segmentIndex); + } + } // Loop from bottom of bounding box until bottom of image, color entire row + + + for (var _i3 = 0; _i3 < width; _i3++) { + for (var _j3 = bottomRight[1]; _j3 < height; _j3++) { + Object(_eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_0__["default"])(_j3 * width + _i3, pixelData, segmentIndex); + } + } +} + +/***/ }), + +/***/ "./util/segmentation/eraseShape.js": +/*!*****************************************!*\ + !*** ./util/segmentation/eraseShape.js ***! + \*****************************************/ +/*! exports provided: eraseInsideShape, eraseOutsideShape */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseInsideShape", function() { return eraseInsideShape; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideShape", function() { return eraseOutsideShape; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _eraseOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./eraseOutsideBoundingBox */ "./util/segmentation/eraseOutsideBoundingBox.js"); +/* harmony import */ var _isSameSegment_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isSameSegment.js */ "./util/segmentation/isSameSegment.js"); +/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../logger.js */ "./util/logger.js"); + + + + +var logger = Object(_logger_js__WEBPACK_IMPORTED_MODULE_3__["getLogger"])('util:segmentation:operations:eraseOutsideCircle'); +/** + * Erase all pixels labeled with the activeSegmentIndex, + * inside/outside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + +function eraseShape(evt, operationData, pointInShape, topLeft, bottomRight) { + var insideOrOutside = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'inside'; + var width = evt.detail.image.width; + var pixelData = operationData.pixelData, + segmentIndex = operationData.segmentIndex; + + var _topLeft = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(topLeft, 2), + xMin = _topLeft[0], + yMin = _topLeft[1]; + + var _bottomRight = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(bottomRight, 2), + xMax = _bottomRight[0], + yMax = _bottomRight[1]; + + if (insideOrOutside === 'outside') { + Object(_eraseOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, operationData, topLeft, bottomRight); + } + + for (var x = xMin; x < xMax; x++) { + for (var y = yMin; y < yMax; y++) { + var pixelIndex = y * width + x; // If the pixel is the same segmentIndex and is inside the + // Region defined by the array of points, set their value to segmentIndex. + + if (Object(_isSameSegment_js__WEBPACK_IMPORTED_MODULE_2__["default"])(pixelIndex, pixelData, segmentIndex) && pointInShape({ + x: x, + y: y + })) { + pixelData[pixelIndex] = 0; + } + } + } +} +/** + * Erase all pixels labeled with the activeSegmentIndex, + * inside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + + +function eraseInsideShape(evt, operationData, pointInShape, topLeft, bottomRight) { + eraseShape(evt, operationData, pointInShape, topLeft, bottomRight, 'inside'); +} +/** + * Erase all pixels labeled with the activeSegmentIndex, + * outside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + +function eraseOutsideShape(evt, operationData, pointInShape, topLeft, bottomRight) { + eraseShape(evt, operationData, function (point) { + return !pointInShape(point); + }, topLeft, bottomRight, 'outside'); +} + +/***/ }), + +/***/ "./util/segmentation/fillOutsideBoundingBox.js": +/*!*****************************************************!*\ + !*** ./util/segmentation/fillOutsideBoundingBox.js ***! + \*****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return fillOutsideBoundingBox; }); +/** + * EraseInside - fill all pixels labeled with the activeSegmentIndex, + * outside the bouding box defined by the `topLeft` and `topRight`. + * @param {} evt The Cornerstone event. + * @param {} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ +function fillOutsideBoundingBox(evt, operationData, topLeft, bottomRight) { + var pixelData = operationData.pixelData, + segmentIndex = operationData.segmentIndex; + var _evt$detail$image = evt.detail.image, + width = _evt$detail$image.width, + height = _evt$detail$image.height; // Loop until top of bounding box from top of image, color the entire row + + for (var i = 0; i < width; i++) { + for (var j = 0; j < topLeft[1]; j++) { + pixelData[j * width + i] = segmentIndex; + } + } // Loop within rows of bounding box, to the left of the box + + + for (var _i = 0; _i < topLeft[0]; _i++) { + for (var _j = topLeft[1]; _j < bottomRight[1]; _j++) { + pixelData[_j * width + _i] = segmentIndex; + } + } // Loop within rows of bounding box, to the right of the box + + + for (var _i2 = bottomRight[0]; _i2 < width; _i2++) { + for (var _j2 = topLeft[1]; _j2 < bottomRight[1]; _j2++) { + pixelData[_j2 * width + _i2] = segmentIndex; + } + } // Loop from bottom of bounding box until bottom of image, color entire row + + + for (var _i3 = 0; _i3 < width; _i3++) { + for (var _j3 = bottomRight[1]; _j3 < height; _j3++) { + pixelData[_j3 * width + _i3] = segmentIndex; + } + } +} + +/***/ }), + +/***/ "./util/segmentation/fillShape.js": +/*!****************************************!*\ + !*** ./util/segmentation/fillShape.js ***! + \****************************************/ +/*! exports provided: fillInsideShape, fillOutsideShape */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillInsideShape", function() { return fillInsideShape; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fillOutsideShape", function() { return fillOutsideShape; }); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _fillOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fillOutsideBoundingBox */ "./util/segmentation/fillOutsideBoundingBox.js"); +/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../logger.js */ "./util/logger.js"); + + + +var logger = Object(_logger_js__WEBPACK_IMPORTED_MODULE_2__["getLogger"])('util:segmentation:operations:helpers:fillShape'); +/** + * Fill all pixels labeled with the activeSegmentIndex, + * inside/outside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + +function fillShape(evt, operationData, pointInShape, topLeft, bottomRight) { + var insideOrOutside = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'inside'; + var pixelData = operationData.pixelData, + segmentIndex = operationData.segmentIndex; + + if (pixelData === undefined || segmentIndex === undefined) { + logger.error("fillInsideShape requires operationData to contain pixelData and segmentIndex"); + return; + } + + var width = evt.detail.image.width; + + var _topLeft = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(topLeft, 2), + xMin = _topLeft[0], + yMin = _topLeft[1]; + + var _bottomRight = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(bottomRight, 2), + xMax = _bottomRight[0], + yMax = _bottomRight[1]; + + if (insideOrOutside === 'outside') { + Object(_fillOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_1__["default"])(evt, operationData, topLeft, bottomRight); + } + + for (var x = xMin; x < xMax; x++) { + for (var y = yMin; y < yMax; y++) { + var pixelIndex = y * width + x; // If the pixel is the same segmentIndex and is inside the + // Region defined by the array of points, set their value to segmentIndex. + + if (pointInShape({ + x: x, + y: y + })) { + pixelData[pixelIndex] = segmentIndex; + } + } + } +} +/** + * Fill all pixels labeled with the activeSegmentIndex, + * inside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + + +function fillInsideShape(evt, operationData, pointInShape, topLeft, bottomRight) { + fillShape(evt, operationData, pointInShape, topLeft, bottomRight, 'inside'); +} +/** + * Fill all pixels labeled with the activeSegmentIndex, + * outside the region defined by the shape. + * @param {Object} evt The Cornerstone event. + * @param {Object} operationData An object containing the `pixelData` to + * modify, the `segmentIndex` and the `points` array. + * @param {Object} pointInShape - A function that checks if a point, x,y is within a shape. + * @param {number[]} topLeft The top left of the bounding box. + * @param {number[]} bottomRight The bottom right of the bounding box. + * @returns {null} + */ + +function fillOutsideShape(evt, operationData, pointInShape, topLeft, bottomRight) { + fillShape(evt, operationData, function (point) { + return !pointInShape(point); + }, topLeft, bottomRight, 'outside'); +} + +/***/ }), + +/***/ "./util/segmentation/floodFill.js": +/*!****************************************!*\ + !*** ./util/segmentation/floodFill.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__); + + +/** + * floodFill.js - Taken from MIT OSS lib - https://github.com/tuzz/n-dimensional-flood-fill + * Refactored to ES6. + * + * @param {function} getter The getter to the elements of your data structure, + * e.g. getter(x,y) for a 2D interprettation of your structure. + * @param {number[]} seed The seed for your fill. The dimensionality is infered + * by the number of dimensions of the seed. + * @param {function} [options.onFlood] An optional callback to execute when each pixel is flooded. + * e.g. onFlood(x,y). + * @param {function} [options.onBoundary] An optional callback to execute whenever a boundary is reached. + * a boundary could be another segmentIndex, or the edge of your + * data structure (i.e. when your getter returns undefined). + * @param {function} [options.equals] An optional equality method for your datastructure. + * Default is simply value1 = value2. + * @param {boolean} [options.diagonals] Whether you allow flooding through diagonals. Defaults to false. + * + * @returns {Object} + */ +/* harmony default export */ __webpack_exports__["default"] = (function (getter, seed) { + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + + var onFlood = options.onFlood || function () {}; + + var onBoundary = options.onBoundary || function () {}; + + var equals = options.equals || defaultEquals; + var diagonals = options.diagonals || false; + var startNode = get(seed); + var permutations = prunedPermutations(); + var stack = []; + var flooded = []; + var visits = {}; + var bounds = {}; + stack.push({ + currentArgs: seed + }); + + while (stack.length > 0) { + flood(stack.pop()); + } + + return { + flooded: flooded, + boundaries: boundaries() + }; + + function flood(job) { + var getArgs = job.currentArgs; + var prevArgs = job.previousArgs; + + if (visited(getArgs)) { + return; + } + + markAsVisited(getArgs); + + if (member(getArgs)) { + markAsFlooded(getArgs); + pushAdjacent(getArgs); + } else { + markAsBoundary(prevArgs); + } + } + + function visited(key) { + return visits[key] === true; + } + + function markAsVisited(key) { + visits[key] = true; + } + + function member(getArgs) { + var node = safely(get, [getArgs]); + return safely(equals, [node, startNode]); + } + + function markAsFlooded(getArgs) { + flooded.push(getArgs); + onFlood.apply(void 0, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(getArgs)); + } + + function markAsBoundary(prevArgs) { + bounds[prevArgs] = prevArgs; + onBoundary.apply(void 0, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(prevArgs)); + } + + function pushAdjacent(getArgs) { + for (var i = 0; i < permutations.length; i += 1) { + var perm = permutations[i]; + var nextArgs = getArgs.slice(0); + + for (var j = 0; j < getArgs.length; j += 1) { + nextArgs[j] += perm[j]; + } + + stack.push({ + currentArgs: nextArgs, + previousArgs: getArgs + }); + } + } + + function get(getArgs) { + return getter.apply(void 0, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(getArgs)); + } + + function safely(f, args) { + try { + return f.apply(void 0, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(args)); + } catch (error) { + return; + } + } + + function prunedPermutations() { + var permutations = permute(seed.length); + return permutations.filter(function (perm) { + var count = countNonZeroes(perm); + return count !== 0 && (count === 1 || diagonals); + }); + } + + function permute(length) { + var perms = []; + + var permutation = function permutation(string) { + return string.split('').map(function (c) { + return parseInt(c, 10) - 1; + }); + }; + + for (var i = 0; i < Math.pow(3, length); i += 1) { + var string = lpad(i.toString(3), '0', length); + perms.push(permutation(string)); + } + + return perms; + } + + function boundaries() { + var array = []; + + for (var key in bounds) { + if (bounds.hasOwnProperty(key)) { + array.unshift(bounds[key]); + } + } + + return array; + } +}); + +function defaultEquals(a, b) { + return a === b; +} + +function countNonZeroes(array) { + var count = 0; + + for (var i = 0; i < array.length; i += 1) { + if (array[i] !== 0) { + count += 1; + } + } + + return count; +} + +function lpad(string, character, length) { + var array = new Array(length + 1); + var pad = array.join(character); + return (pad + string).slice(-length); +} + +/***/ }), + +/***/ "./util/segmentation/getBoundingBoxAroundCircle.js": +/*!*********************************************************!*\ + !*** ./util/segmentation/getBoundingBoxAroundCircle.js ***! + \*********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getBoundingBoxAroundCircle; }); +/* harmony import */ var _getCircleCoords__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../getCircleCoords */ "./util/getCircleCoords.js"); + +function getBoundingBoxAroundCircle(evt) { + var handles = evt.detail.handles; + var _evt$detail$image = evt.detail.image, + imageWidth = _evt$detail$image.width, + imageHeight = _evt$detail$image.height; + var circleCoordinates = Object(_getCircleCoords__WEBPACK_IMPORTED_MODULE_0__["default"])(handles.start, handles.end); + var xMax = circleCoordinates.width + circleCoordinates.left; + var xMin = circleCoordinates.left; + var yMax = circleCoordinates.top + circleCoordinates.height; + var yMin = circleCoordinates.top; + xMin = Math.floor(xMin); + yMin = Math.floor(yMin); + xMax = Math.floor(xMax); + yMax = Math.floor(yMax); + xMax = Math.min(imageWidth, xMax); + xMin = Math.max(0, xMin); + yMax = Math.min(imageHeight, yMax); + yMin = Math.max(0, yMin); + return [[xMin, yMin], [xMax, yMax]]; +} + +/***/ }), + +/***/ "./util/segmentation/getBoundingBoxAroundPolygon.js": +/*!**********************************************************!*\ + !*** ./util/segmentation/getBoundingBoxAroundPolygon.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getBoundingBoxAroundPolygon; }); +function getBoundingBoxAroundPolygon(vertices, image) { + var xMin = Infinity; + var xMax = 0; + var yMin = Infinity; + var yMax = 0; + var width = image.width, + height = image.height; + vertices.forEach(function (v) { + xMin = Math.min(v[0], xMin); + xMax = Math.max(v[0], xMax); + yMin = Math.min(v[1], yMin); + yMax = Math.max(v[1], yMax); + }); + xMin = Math.floor(xMin); + yMin = Math.floor(yMin); + xMax = Math.floor(xMax); + yMax = Math.floor(yMax); + xMax = Math.min(width, xMax); + xMin = Math.max(0, xMin); + yMax = Math.min(height, yMax); + yMin = Math.max(0, yMin); + return [[xMin, yMin], [xMax, yMax]]; +} + +/***/ }), + +/***/ "./util/segmentation/getCircle.js": +/*!****************************************!*\ + !*** ./util/segmentation/getCircle.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getCircle; }); +/** + * Gets the pixels within the circle. + * @export @public @method + * @name getCircle + * + * @param {number} radius The radius of the circle. + * @param {number} rows The number of rows. + * @param {number} columns The number of columns. + * @param {number} [xCoord = 0] The x-location of the center of the circle. + * @param {number} [yCoord = 0] The y-location of the center of the circle. + * @returns {Array.number[]} Array of pixels contained within the circle. + */ +function getCircle(radius, rows, columns) { + var xCoord = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0; + var yCoord = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0; + var x0 = Math.floor(xCoord); + var y0 = Math.floor(yCoord); + + if (radius === 1) { + return [[x0, y0]]; + } + + var circleArray = []; + var index = 0; + + for (var y = -radius; y <= radius; y++) { + var _yCoord = y0 + y; + + if (_yCoord > rows || _yCoord < 0) { + continue; + } + + for (var x = -radius; x <= radius; x++) { + var _xCoord = x0 + x; + + if (_xCoord >= columns || _xCoord < 0) { + continue; + } + + if (x * x + y * y < radius * radius) { + circleArray[index++] = [x0 + x, y0 + y]; + } + } + } + + return circleArray; +} + +/***/ }), + +/***/ "./util/segmentation/getDiffBetweenPixelData.js": +/*!******************************************************!*\ + !*** ./util/segmentation/getDiffBetweenPixelData.js ***! + \******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getDiffBetweenPixelData; }); +function getDiffBetweenPixelData(previousPixelData, newPixelData) { + var diff = []; + + for (var i = 0; i < previousPixelData.length; i++) { + if (previousPixelData[i] !== newPixelData[i]) { + diff.push([i, previousPixelData[i], newPixelData[i]]); + } + } + + return diff; +} + +/***/ }), + +/***/ "./util/segmentation/getPixelPathBetweenPixels.js": +/*!********************************************************!*\ + !*** ./util/segmentation/getPixelPathBetweenPixels.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); + +var oneOverRoot2 = 1 / Math.sqrt(2); // Cache this to avoid repeated computation. + +var DIRECTIONS = { + up: { + x: 0, + y: 1 + }, + upRight: { + x: oneOverRoot2, + y: oneOverRoot2 + }, + right: { + x: 1, + y: 0 + }, + downRight: { + x: oneOverRoot2, + y: -oneOverRoot2 + }, + down: { + x: 0, + y: 1 + }, + downLeft: { + x: -oneOverRoot2, + y: -oneOverRoot2 + }, + left: { + x: -1, + y: 0 + }, + upLeft: { + x: -oneOverRoot2, + y: oneOverRoot2 + } +}; +/** + * GetPixelPathBetweenPixels - Generates a 1-pixel wide path of pixels between two pixels. + * This is essentially simplified A* pathfinding, as we know there are no "obstacles". + * + * @param {Object} p1 The starting pixel + * @param {Object} p2 The end pixel. + * + * @returns {Object[]} All of the pixels on the shortest path between p1 and p2. + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (p1, p2) { + var p = { + x: p1.x, + y: p1.y + }; + var path = []; + + while (p2.x !== p.x || p2.y !== p.y) { + if (p2.x === p.x) { + // Goal is above or bellow us. + if (p2.y > p.y) { + p.y++; + } else { + p.y--; + } + } else if (p2.y === p.y) { + // Goal is to the left or right of us. + if (p2.x > p.x) { + p.x++; + } else { + p.x--; + } + } else if (p2.y > p.y) { + if (p2.x > p.x) { + // Can go up, right or diagonally up-right towards goal. + moveUpRight(p, p2); + } else { + // Can go up, left, or diagonally up-left towards goal. + moveUpLeft(p, p2); + } + } else if (p2.x > p.x) { + // Can go down, right, or diagonally down-right towards goal. + moveDownRight(p, p2); + } else { + // Can go down, left, or diagonally down-left towards goal. + moveDownLeft(p, p2); + } + + path.push({ + x: p.x, + y: p.y + }); + } + + path.pop(); // Remove last node as is the same as the destination. + + return path; +}); +/** + * MoveUpRight - Moves p up, right or diagonally up right towards p2. + * @param {Object} p + * @param {Object} p2 + * + * @returns {null} + */ + +function moveUpRight(p, p2) { + var unitVector = unitVectorFromPtoP2(p, p2); // Largest dot product is fastest way to travel. + + var dotProducts = [dotProduct2D(unitVector, DIRECTIONS.up), dotProduct2D(unitVector, DIRECTIONS.right), dotProduct2D(unitVector, DIRECTIONS.upRight)]; + var largestIndex = getIndexOfLargestInLengthThreeArray(dotProducts); + + switch (largestIndex) { + case 0: + p.y++; + break; + + case 1: + p.x++; + break; + + case 2: + p.y++; + p.x++; + } +} +/** + * MoveUpLeft - Moves p up, left or diagonally up left towards p2. + * @param {Object} p + * @param {Object} p2 + * + * @returns {null} + */ + + +function moveUpLeft(p, p2) { + var unitVector = unitVectorFromPtoP2(p, p2); // Largest dot product is fastest way to travel. + + var dotProducts = [dotProduct2D(unitVector, DIRECTIONS.up), dotProduct2D(unitVector, DIRECTIONS.left), dotProduct2D(unitVector, DIRECTIONS.upLeft)]; + var largestIndex = getIndexOfLargestInLengthThreeArray(dotProducts); + + switch (largestIndex) { + case 0: + p.y++; + break; + + case 1: + p.x--; + break; + + case 2: + p.y++; + p.x--; + } +} +/** + * MoveDownRight - Moves p down, right or diagonally down right towards p2. + * @param {Object} p + * @param {Object} p2 + * + * @returns {null} + */ + + +function moveDownRight(p, p2) { + var unitVector = unitVectorFromPtoP2(p, p2); // Largest dot product is fastest way to travel. + + var dotProducts = [dotProduct2D(unitVector, DIRECTIONS.down), dotProduct2D(unitVector, DIRECTIONS.right), dotProduct2D(unitVector, DIRECTIONS.downRight)]; + var largestIndex = getIndexOfLargestInLengthThreeArray(dotProducts); + + switch (largestIndex) { + case 0: + p.y--; + break; + + case 1: + p.x++; + break; + + case 2: + p.y--; + p.x++; + } +} +/** + * MoveDownLeft - Moves p down, left or diagonally down left towards p2. + * @param {Object} p + * @param {Object} p2 + * + * @returns {null} + */ + + +function moveDownLeft(p, p2) { + var unitVector = unitVectorFromPtoP2(p, p2); // Largest dot product is fastest way to travel. + + var dotProducts = [dotProduct2D(unitVector, DIRECTIONS.down), dotProduct2D(unitVector, DIRECTIONS.left), dotProduct2D(unitVector, DIRECTIONS.downLeft)]; + var largestIndex = getIndexOfLargestInLengthThreeArray(dotProducts); + + switch (largestIndex) { + case 0: + p.y--; + break; + + case 1: + p.x--; + break; + + case 2: + p.y--; + p.x--; + } +} +/** + * UnitVectorFromPtoP2 - Returns a unit vector pointing from p to p2. + * @param {Object} p + * @param {Object} p2 + * + * @returns {Object} The unit vector. + */ + + +function unitVectorFromPtoP2(p, p2) { + var distance = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstoneMath.point.distance(p, p2); + return { + x: (p2.x - p.x) / distance, + y: (p2.y - p.y) / distance + }; +} + +function dotProduct2D(p, p2) { + return p.x * p2.x + p.y * p2.y; +} +/** + * GetIndexOfLargestInLengthThreeArray - Returns the index of the largest value + * in the 3 element array. + * @param {number[]} array + * @returns {number} + */ + + +function getIndexOfLargestInLengthThreeArray(array) { + var largestIndex = array[0] > array[1] ? 0 : 1; + + if (array[2] > array[largestIndex]) { + largestIndex = 2; + } + + return largestIndex; +} + +/***/ }), + +/***/ "./util/segmentation/index.js": +/*!************************************!*\ + !*** ./util/segmentation/index.js ***! + \************************************/ +/*! exports provided: drawBrushPixels, eraseIfSegmentIndex, eraseOutsideBoundingBox, eraseInsideShape, eraseOutsideShape, fillOutsideBoundingBox, fillInsideShape, fillOutsideShape, floodFill, getBoundingBoxAroundCircle, getBoundingBoxAroundPolygon, getCircle, getPixelPathBetweenPixels, isSameSegment, triggerLabelmapModifiedEvent, getDiffBetweenPixelData */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _drawBrush__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./drawBrush */ "./util/segmentation/drawBrush.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "drawBrushPixels", function() { return _drawBrush__WEBPACK_IMPORTED_MODULE_0__["drawBrushPixels"]; }); + +/* harmony import */ var _eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./eraseIfSegmentIndex */ "./util/segmentation/eraseIfSegmentIndex.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseIfSegmentIndex", function() { return _eraseIfSegmentIndex__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _eraseOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./eraseOutsideBoundingBox */ "./util/segmentation/eraseOutsideBoundingBox.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideBoundingBox", function() { return _eraseOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _eraseShape__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./eraseShape */ "./util/segmentation/eraseShape.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseInsideShape", function() { return _eraseShape__WEBPACK_IMPORTED_MODULE_3__["eraseInsideShape"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "eraseOutsideShape", function() { return _eraseShape__WEBPACK_IMPORTED_MODULE_3__["eraseOutsideShape"]; }); + +/* harmony import */ var _fillOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fillOutsideBoundingBox */ "./util/segmentation/fillOutsideBoundingBox.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideBoundingBox", function() { return _fillOutsideBoundingBox__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _fillShape__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./fillShape */ "./util/segmentation/fillShape.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillInsideShape", function() { return _fillShape__WEBPACK_IMPORTED_MODULE_5__["fillInsideShape"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fillOutsideShape", function() { return _fillShape__WEBPACK_IMPORTED_MODULE_5__["fillOutsideShape"]; }); + +/* harmony import */ var _floodFill__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./floodFill */ "./util/segmentation/floodFill.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "floodFill", function() { return _floodFill__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony import */ var _getBoundingBoxAroundCircle__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getBoundingBoxAroundCircle */ "./util/segmentation/getBoundingBoxAroundCircle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getBoundingBoxAroundCircle", function() { return _getBoundingBoxAroundCircle__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony import */ var _getBoundingBoxAroundPolygon__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getBoundingBoxAroundPolygon */ "./util/segmentation/getBoundingBoxAroundPolygon.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getBoundingBoxAroundPolygon", function() { return _getBoundingBoxAroundPolygon__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _getCircle__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getCircle */ "./util/segmentation/getCircle.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getCircle", function() { return _getCircle__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony import */ var _getPixelPathBetweenPixels__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./getPixelPathBetweenPixels */ "./util/segmentation/getPixelPathBetweenPixels.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getPixelPathBetweenPixels", function() { return _getPixelPathBetweenPixels__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + +/* harmony import */ var _isSameSegment__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./isSameSegment */ "./util/segmentation/isSameSegment.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isSameSegment", function() { return _isSameSegment__WEBPACK_IMPORTED_MODULE_11__["default"]; }); + +/* harmony import */ var _triggerLabelmapModifiedEvent__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./triggerLabelmapModifiedEvent */ "./util/segmentation/triggerLabelmapModifiedEvent.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "triggerLabelmapModifiedEvent", function() { return _triggerLabelmapModifiedEvent__WEBPACK_IMPORTED_MODULE_12__["default"]; }); + +/* harmony import */ var _getDiffBetweenPixelData__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./getDiffBetweenPixelData */ "./util/segmentation/getDiffBetweenPixelData.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getDiffBetweenPixelData", function() { return _getDiffBetweenPixelData__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + + + + + + + + + + + + + + + + + +/***/ }), + +/***/ "./util/segmentation/isSameSegment.js": +/*!********************************************!*\ + !*** ./util/segmentation/isSameSegment.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return isSameSegment; }); +/** + * Returns true if the pixelIndex of pixelData is the same as the segmentIndex. + * + * @param {number} pixelIndex The index of the pixel. + * @param {UInt16Array} pixelData The pixelData array. + * @param {number} segmentIndex The segment Index to erase. + * + * @returns {boolean} + */ +function isSameSegment(pixelIndex, pixelData, segmentIndex) { + return pixelData[pixelIndex] === segmentIndex; +} + +/***/ }), + +/***/ "./util/segmentation/triggerLabelmapModifiedEvent.js": +/*!***********************************************************!*\ + !*** ./util/segmentation/triggerLabelmapModifiedEvent.js ***! + \***********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return triggerLabelmapModifiedEvent; }); +/* harmony import */ var _externalModules__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules */ "./externalModules.js"); +/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../events.js */ "./events.js"); +/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store */ "./store/index.js"); + + + +/** + * Triggers the LABELMAP_MODIFIED event for the active element, providing the labelmapIndex that was modified. + * + * @param {HTMLElement} element + * @param {number} labelmapIndex The labelmapIndex. Defaults to the active for that element if not set. + */ + +function triggerLabelmapModifiedEvent(element, labelmapIndex) { + var _getModule = Object(_store__WEBPACK_IMPORTED_MODULE_2__["getModule"])('segmentation'), + getters = _getModule.getters; + + labelmapIndex = labelmapIndex === undefined ? getters.activeLabelmapIndex(element) : labelmapIndex; + _externalModules__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.triggerEvent(element, _events_js__WEBPACK_IMPORTED_MODULE_1__["default"].LABELMAP_MODIFIED, { + labelmapIndex: labelmapIndex + }); +} + +/***/ }), + +/***/ "./util/setContextToDisplayFontSize.js": +/*!*********************************************!*\ + !*** ./util/setContextToDisplayFontSize.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + +/** + * Sets the canvas context transformation matrix so it is scaled to show text + * more cleanly even if the image is scaled up. See + * https://github.com/cornerstonejs/cornerstoneTools/wiki/DrawingText + * for more information + * @export @public @function + * @name setContextToDisplayFontSize + * + * @param {HTMLElement} enabledElement The cornerstone enabled element. + * @param {CanvasRenderingContext2D} context The canvas context. + * @param {number} fontSize The font size. + * @returns {Object} {fontSize: number, lineHeight: number, fontScale: number} + */ + +/* harmony default export */ __webpack_exports__["default"] = (function (enabledElement, context, fontSize) { + var fontScale = 0.1; + _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.setToPixelCoordinateSystem(enabledElement, context, fontScale); // Return the font size to use + + var scaledFontSize = fontSize / enabledElement.viewport.scale / fontScale; // TODO: actually calculate this? + + var lineHeight = fontSize / enabledElement.viewport.scale / fontScale; + return { + fontSize: scaledFontSize, + lineHeight: lineHeight, + fontScale: fontScale + }; +}); + +/***/ }), + +/***/ "./util/throttle.js": +/*!**************************!*\ + !*** ./util/throttle.js ***! + \**************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _debounce_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./debounce.js */ "./util/debounce.js"); +/* harmony import */ var _isObject_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isObject.js */ "./util/isObject.js"); + + +/** + * Creates a throttled function that only invokes `func` at most once per + * every `wait` milliseconds (or once per browser frame). The throttled function + * comes with a `cancel` method to cancel delayed `func` invocations and a + * `flush` method to immediately invoke them. Provide `options` to indicate + * whether `func` should be invoked on the leading and/or trailing edge of the + * `wait` timeout. The `func` is invoked with the last arguments provided to the + * throttled function. Subsequent calls to the throttled function return the + * result of the last `func` invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the throttled function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until the next tick, similar to `setTimeout` with a timeout of `0`. + * + * If `wait` is omitted in an environment with `requestAnimationFrame`, `func` + * invocation will be deferred until the next frame is drawn (typically about + * 16ms). + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `throttle` and `debounce`. + * + * @since 0.1.0 + * @category Function + * @param {Function} func The function to throttle. + * @param {number} [wait=0] + * The number of milliseconds to throttle invocations to; if omitted, + * `requestAnimationFrame` is used (if available). + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=true] + * Specify invoking on the leading edge of the timeout. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new throttled function. + * @example + * + * // Avoid excessively updating the position while scrolling. + * jQuery(window).on('scroll', throttle(updatePosition, 100)) + * + * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. + * const throttled = throttle(renewToken, 300000, { 'trailing': false }) + * jQuery(element).on('click', throttled) + * + * // Cancel the trailing throttled invocation. + * jQuery(window).on('popstate', throttled.cancel) + */ + +function throttle(func, wait, options) { + var leading = true; + var trailing = true; + + if (typeof func !== 'function') { + throw new TypeError('Expected a function'); + } + + if (Object(_isObject_js__WEBPACK_IMPORTED_MODULE_1__["default"])(options)) { + leading = 'leading' in options ? Boolean(options.leading) : leading; + trailing = 'trailing' in options ? Boolean(options.trailing) : trailing; + } + + return Object(_debounce_js__WEBPACK_IMPORTED_MODULE_0__["default"])(func, wait, { + leading: leading, + trailing: trailing, + maxWait: wait + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (throttle); + +/***/ }), + +/***/ "./util/triggerEvent.js": +/*!******************************!*\ + !*** ./util/triggerEvent.js ***! + \******************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return triggerEvent; }); +/** + * Triggers a CustomEvent. + * @public + * @method triggerEvent + * + * @param {EventTarget} el The element or EventTarget to trigger the event upon. + * @param {String} type The event type name. + * @param {Object|null} [detail=null] The event data to be sent. + * @returns {Boolean} The return value is false if at least one event listener called preventDefault(). Otherwise it returns true. + */ +function triggerEvent(el, type) { + var detail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + var event; // This check is needed to polyfill CustomEvent on IE11- + + if (typeof window.CustomEvent === 'function') { + event = new CustomEvent(type, { + detail: detail, + cancelable: true + }); + } else { + event = document.createEvent('CustomEvent'); + event.initCustomEvent(type, true, true, detail); + } + + return el.dispatchEvent(event); +} + +/***/ }), + +/***/ "./util/wait.js": +/*!**********************!*\ + !*** ./util/wait.js ***! + \**********************/ +/*! exports provided: wait, waitForEnabledElementImageToLoad, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "wait", function() { return wait; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "waitForEnabledElementImageToLoad", function() { return waitForEnabledElementImageToLoad; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../externalModules.js */ "./externalModules.js"); + +/** + * Waits a set amount of time, then resolves. Can be chained off of to delay + * next call in promise chain. + * @public + * @function wait + * @param {number} ms - number in ms to wait + * @returns {Promise} - A promise that resolves when setTimeout elapses + */ + +var wait = function wait(ms) { + return new Promise(function (resolve) { + return setTimeout(resolve, ms); + }); +}; +/** + * A promise that returns an EnabledElement who's image has loaded, or + * null if the provided element ceases being an enabledElement before an + * image has been loaded. + * @public + * @function waitForEnabledElementImageToLoad + * + * @param {HTMLElement} element - An element that is an EnabledElement + * @returns {EnabledElement} - The enabled element that has loaded an image + */ + +function waitForEnabledElementImageToLoad(element) { + try { + var enabledElement = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone.getEnabledElement(element); + + if (!enabledElement.image) { + return wait(250).then(function () { + return waitForEnabledElementImageToLoad(element); + }); + } // EnabledElement's image is loaded. + + + return enabledElement; + } catch (ex) { + // Is no longer, or never was an enabled element, stop polling + return null; + } +} +/* harmony default export */ __webpack_exports__["default"] = (wait); + +/***/ }), + +/***/ "./util/zoom/changeViewportScale.js": +/*!******************************************!*\ + !*** ./util/zoom/changeViewportScale.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Changes the scale of the viewport. + * + * @private + * @function changeViewportScale + * + * @param {Object} viewport The viewport to scale. + * @param {number} ticks The change in magnifcation factor. + * @param {Object} scaleLimits The limits in scale. + * @returns {Object} The scaled viewport. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (viewport, ticks, scaleLimits) { + var maxScale = scaleLimits.maxScale, + minScale = scaleLimits.minScale; + var pow = 1.7; + var oldFactor = Math.log(viewport.scale) / Math.log(pow); + var factor = oldFactor + ticks; + var scale = Math.pow(pow, factor); + + if (maxScale && scale > maxScale) { + viewport.scale = maxScale; + } else if (minScale && scale < minScale) { + viewport.scale = minScale; + } else { + viewport.scale = scale; + } + + return viewport; +}); + +/***/ }), + +/***/ "./util/zoom/correctShift.js": +/*!***********************************!*\ + !*** ./util/zoom/correctShift.js ***! + \***********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Corrects the shift by accountoing for viewport rotation and flips. + * @export @public @method + * @name correctShift + * + * @param {Object} shift The shift to correct. + * @param {Object} viewportOrientation Object containing information on the viewport orientation. + * @returns {Object} The corrected shift. + */ +/* harmony default export */ __webpack_exports__["default"] = (function (shift, viewportOrientation) { + var hflip = viewportOrientation.hflip, + vflip = viewportOrientation.vflip, + rotation = viewportOrientation.rotation; // Apply Flips + + shift.x *= hflip ? -1 : 1; + shift.y *= vflip ? -1 : 1; // Apply rotations + + if (rotation !== 0) { + var angle = rotation * Math.PI / 180; + var cosA = Math.cos(angle); + var sinA = Math.sin(angle); + var newX = shift.x * cosA - shift.y * sinA; + var newY = shift.x * sinA + shift.y * cosA; + shift.x = newX; + shift.y = newY; + } + + return shift; +}); + +/***/ }), + +/***/ "./util/zoom/index.js": +/*!****************************!*\ + !*** ./util/zoom/index.js ***! + \****************************/ +/*! exports provided: changeViewportScale, correctShift, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _changeViewportScale_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./changeViewportScale.js */ "./util/zoom/changeViewportScale.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "changeViewportScale", function() { return _changeViewportScale_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _correctShift_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./correctShift.js */ "./util/zoom/correctShift.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "correctShift", function() { return _correctShift_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + + + // Named + + // Default + +/* harmony default export */ __webpack_exports__["default"] = ({ + changeViewportScale: _changeViewportScale_js__WEBPACK_IMPORTED_MODULE_0__["default"], + correctShift: _correctShift_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}); + +/***/ }), + +/***/ "./version.js": +/*!********************!*\ + !*** ./version.js ***! + \********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = ('4.12.1'); + +/***/ }) + +/******/ }); +}); +//# sourceMappingURL=cornerstoneTools.js.map diff --git a/lib/cornerstone/cornerstoneTools.min.js b/lib/cornerstone/cornerstoneTools.min.js new file mode 100644 index 0000000..bc8aa00 --- /dev/null +++ b/lib/cornerstone/cornerstoneTools.min.js @@ -0,0 +1,3 @@ +/*! cornerstone-tools - 4.22.1 - 2020-10-13 | (c) 2017 Chris Hafey | https://github.com/cornerstonejs/cornerstoneTools */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstone-tools",[],t):"object"==typeof exports?exports["cornerstone-tools"]=t():e.cornerstoneTools=t()}(window,(function(){return function(e){var t={};function n(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(a,o,function(t){return e[t]}.bind(null,o));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=25)}([function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},storage:function(){try{return localStorage}catch(e){}}()};o.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],o.log=console.debug||console.log||function(){};var i=Object(a.a)(o);i.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: ".concat(e.message)}},t.a=i}).call(this,n(15))},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){e.exports=n(23)},function(e,t,n){"use strict";var a=n(6),o=n.n(a);t.a=function(e){function t(e){for(var t=0,n=0;n1)for(var n=1;n=1.5*n;return Math.round(e/n)+" "+a+(o?"s":"")}e.exports=function(e,t){t=t||{};var s=typeof e;if("string"===s&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(!t)return;var r=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*r;case"weeks":case"week":case"w":return 6048e5*r;case"days":case"day":case"d":return r*i;case"hours":case"hour":case"hrs":case"hr":case"h":return r*o;case"minutes":case"minute":case"mins":case"min":case"m":return r*a;case"seconds":case"second":case"secs":case"sec":case"s":return r*n;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}(e);if("number"===s&&!1===isNaN(e))return t.long?function(e){var t=Math.abs(e);if(t>=i)return r(e,t,i,"day");if(t>=o)return r(e,t,o,"hour");if(t>=a)return r(e,t,a,"minute");if(t>=n)return r(e,t,n,"second");return e+" ms"}(e):function(e){var t=Math.abs(e);if(t>=i)return Math.round(e/i)+"d";if(t>=o)return Math.round(e/o)+"h";if(t>=a)return Math.round(e/a)+"m";if(t>=n)return Math.round(e/n)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){var n=[],a=!0,o=!1,i=void 0;try{for(var r,s=e[Symbol.iterator]();!(a=(r=s.next()).done)&&(n.push(r.value),!t||n.length!==t);a=!0);}catch(e){o=!0,i=e}finally{try{a||null==s.return||s.return()}finally{if(o)throw i}}return n}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){var a=function(){return this||"object"==typeof self&&self}()||Function("return this")(),o=a.regeneratorRuntime&&Object.getOwnPropertyNames(a).indexOf("regeneratorRuntime")>=0,i=o&&a.regeneratorRuntime;if(a.regeneratorRuntime=void 0,e.exports=n(24),o)a.regeneratorRuntime=i;else try{delete a.regeneratorRuntime}catch(e){a.regeneratorRuntime=void 0}},function(e,t){!function(t){"use strict";var n=Object.prototype,a=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",r=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag",l="object"==typeof e,c=t.regeneratorRuntime;if(c)l&&(e.exports=c);else{(c=t.regeneratorRuntime=l?e.exports:{}).wrap=f;var u={},d={};d[i]=function(){return this};var h=Object.getPrototypeOf,v=h&&h(h(I([])));v&&v!==n&&a.call(v,i)&&(d=v);var g=x.prototype=p.prototype=Object.create(d);y.prototype=g.constructor=x,x.constructor=y,x[s]=y.displayName="GeneratorFunction",c.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},c.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,x):(e.__proto__=x,s in e||(e[s]="GeneratorFunction")),e.prototype=Object.create(g),e},c.awrap=function(e){return{__await:e}},T(b.prototype),b.prototype[r]=function(){return this},c.AsyncIterator=b,c.async=function(e,t,n,a){var o=new b(f(e,t,n,a));return c.isGeneratorFunction(t)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},T(g),g[s]="Generator",g[i]=function(){return this},g.toString=function(){return"[object Generator]"},c.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var a=t.pop();if(a in e)return n.value=a,n.done=!1,n}return n.done=!0,n}},c.values=I,w.prototype={constructor:w,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&a.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,a){return r.type="throw",r.arg=e,t.next=n,a&&(t.method="next",t.arg=void 0),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],r=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=a.call(i,"catchLoc"),l=a.call(i,"finallyLoc");if(s&&l){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&a.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),E(n),u}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var a=n.completion;if("throw"===a.type){var o=a.arg;E(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:I(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),u}}}function f(e,t,n,a){var o=t&&t.prototype instanceof p?t:p,i=Object.create(o.prototype),r=new w(a||[]);return i._invoke=function(e,t,n){var a="suspendedStart";return function(o,i){if("executing"===a)throw new Error("Generator is already running");if("completed"===a){if("throw"===o)throw i;return S()}for(n.method=o,n.arg=i;;){var r=n.delegate;if(r){var s=C(r,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===a)throw a="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a="executing";var l=m(e,t,n);if("normal"===l.type){if(a=n.done?"completed":"suspendedYield",l.arg===u)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(a="completed",n.method="throw",n.arg=l.arg)}}}(e,n,r),i}function m(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function p(){}function y(){}function x(){}function T(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function b(e){var t;this._invoke=function(n,o){function i(){return new Promise((function(t,i){!function t(n,o,i,r){var s=m(e[n],e,o);if("throw"!==s.type){var l=s.arg,c=l.value;return c&&"object"==typeof c&&a.call(c,"__await")?Promise.resolve(c.__await).then((function(e){t("next",e,i,r)}),(function(e){t("throw",e,i,r)})):Promise.resolve(c).then((function(e){l.value=e,i(l)}),(function(e){return t("throw",e,i,r)}))}r(s.arg)}(n,o,t,i)}))}return t=t?t.then(i,i):i()}}function C(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,C(e,t),"throw"===t.method))return u;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return u}var a=m(n,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,u;var o=a.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,u):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,u)}function M(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(M,this),this.reset(!0)}function I(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n2&&void 0!==arguments[2]?arguments[2]:null;return"function"==typeof window.CustomEvent?n=new CustomEvent(t,{detail:a,cancelable:!0}):(n=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,a),e.dispatchEvent(n)}function M(e){return e instanceof HTMLElement?e:yt.enabledElementByUID(e)}var E={UINT_16_ARRAY:0,FLOAT_32_ARRAY:1},w=E.UINT_16_ARRAY,I=E.FLOAT_32_ARRAY;function S(e,t,n){var a,o=Tt("segmentation").configuration;switch(o.arrayType){case w:a=2;break;case I:a=4;break;default:throw new Error("Unsupported Array Type ".concat(o.arrayType))}e.labelmaps3D[t]={buffer:new ArrayBuffer(n*a),labelmaps2D:[],metadata:[],activeSegmentIndex:1,colorLUTIndex:0,segmentsHidden:[],undo:[],redo:[]}}function k(){var e={};function t(t,n,a){!1===e.hasOwnProperty(t)&&(e[t]={});var o=e[t];!1===o.hasOwnProperty(n)&&(o[n]={data:[]}),o[n].data.push(a)}function n(t,n){if(!1!==e.hasOwnProperty(t)){var a=e[t];if(!1!==a.hasOwnProperty(n))return a[n]}}function a(t){!1!==e.hasOwnProperty(t)&&delete e[t]}return{get:function(e,t){var a=y.cornerstone.getEnabledElement(e);if(a.image)return n(a.image.imageId,t)},add:function(e,n,a){var o=y.cornerstone.getEnabledElement(e);o.image&&t(o.image.imageId,n,a)},clear:function(e){var t=y.cornerstone.getEnabledElement(e);t.image&&a(t.image.imageId)},getImageIdToolState:n,addImageIdToolState:t,clearImageIdToolState:a,saveImageIdToolState:function(t){return e[t]},restoreImageIdToolState:function(t,n){e[t]=n},saveToolState:function(){return e},restoreToolState:function(t){e=t},toolState:e}}var _=k();function P(e){var t=y.cornerstone.getEnabledElement(e);return void 0===t.toolStateManager&&(t.toolStateManager=_),t.toolStateManager}function D(e,t,n){var a=P(e);n.uuid=n.uuid||"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})),a.add(e,t,n),C(e,b.MEASUREMENT_ADDED,{toolName:t,toolType:t,element:e,measurementData:n})}function O(e,t){return P(e).get(e,t)}function L(e,t,n){var a=P(e).get(e,t);if(a&&a.data&&a.data.length){for(var o=-1,i=0;i0&&void 0!==arguments[0]?arguments[0]:"".concat("cornerstoneTools",":*");return R.a.enable(e)},B=function(){return R.a.disable()},V={series:{},colorLutTables:[]},q=N("store:modules:segmentationModule:metadata");function z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"increase",n=Tt("segmentation"),a=n.configuration,o=O(e,"stack"),i=o.data[0],r=i.imageIds[0],s=V.series[r];if(s){var l=s.activeLabelmapIndex,c=s.labelmaps3D[l];switch(t){case"increase":c.activeSegmentIndex++,c.activeSegmentIndex>a.segmentsPerLabelmap&&(c.activeSegmentIndex=1);break;case"decrease":c.activeSegmentIndex--,c.activeSegmentIndex<=0&&(c.activeSegmentIndex=a.segmentsPerLabelmap)}}}var j=N("store:modules:segmentationModule:segmentVisibility");var W=N("store:modules:segmentationModule:getLabelmaps3D");function G(e){var t=M(e);if(t){var n=O(t,"stack");if(n){var a,o,i=n.data[0],r=i.imageIds[0],s=V.series[r];return s&&(a=s.labelmaps3D,o=s.activeLabelmapIndex),{labelmaps3D:a,activeLabelmapIndex:o,currentImageIdIndex:i.currentImageIdIndex}}W.error("Consumers must define stacks in their application if using segmentations in cornerstoneTools.")}}function Y(e,t){var n=G(e),a=n.labelmaps3D,o=n.activeLabelmapIndex;return a[t=void 0!==t?t:o]}var X=E.UINT_16_ARRAY,K=E.FLOAT_32_ARRAY;function Z(e,t){var n=M(e);if(n){var a=G(n).labelmaps3D;if(!a)return[];var o,i,r=Tt("segmentation").configuration;switch(r.arrayType){case X:o="Uint16Array",i="2";break;case K:o="Float32Array",i="4";break;default:throw new Error("Unsupported Array Type ".concat(r.arrayType))}var s=V.colorLutTables;if(void 0!==t){var l=a[t];return l?{labelmapIndex:t,bytesPerVoxel:i,type:o,buffer:l.buffer,colorLUT:s[l.colorLUTIndex]}:void 0}for(var c=[],u=0;u4&&void 0!==arguments[4]&&arguments[4],i=function(e,t){return t*a+e};e.forEach((function(e){var a=i.apply(void 0,Q()(e));o?ee(a,t,n):t[a]=n}))}function ne(e,t,n,a){for(var o=e.detail,i=t.pixelData,r=t.segmentIndex,s=o.image,l=s.width,c=s.height,u=0;u5&&void 0!==arguments[5]?arguments[5]:"inside",r=e.detail.image.width,s=t.pixelData,l=t.segmentIndex,c=oe()(a,2),u=c[0],d=c[1],h=oe()(o,2),v=h[0],g=h[1];"outside"===i&&ne(e,t,a,o);for(var f=u;f5&&void 0!==arguments[5]?arguments[5]:"inside",r=t.pixelData,s=t.segmentIndex;if(void 0!==r&&void 0!==s){var l=e.detail.image.width,c=oe()(a,2),u=c[0],d=c[1],h=oe()(o,2),v=h[0],g=h[1];"outside"===i&&ce(e,t,a,o);for(var f=u;f2&&void 0!==arguments[2]?arguments[2]:{},a=n.onFlood||function(){},o=n.onBoundary||function(){},i=n.equals||fe,r=n.diagonals||!1,s=T(t),l=C(),c=[],u=[],d={},h={};for(c.push({currentArgs:t});c.length>0;)v(c.pop());return{flooded:u,boundaries:E()};function v(e){var t=e.currentArgs,n=e.previousArgs;g(t)||(f(t),m(t)?(p(t),x(t)):y(n))}function g(e){return!0===d[e]}function f(e){d[e]=!0}function m(e){var t=b(T,[e]);return b(i,[t,s])}function p(e){u.push(e),a.apply(void 0,Q()(e))}function y(e){h[e]=e,o.apply(void 0,Q()(e))}function x(e){for(var t=0;t3&&void 0!==arguments[3]?arguments[3]:0,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,i=Math.floor(a),r=Math.floor(o);if(1===e)return[[i,r]];for(var s=[],l=0,c=-e;c<=e;c++){var u=r+c;if(!(u>t||u<0))for(var d=-e;d<=e;d++){var h=i+d;h>=n||h<0||d*d+c*cn.y?n.y++:n.y--:t.y===n.y?t.x>n.x?n.x++:n.x--:t.y>n.y?t.x>n.x?we(n,t):Ie(n,t):t.x>n.x?Se(n,t):ke(n,t),a.push({x:n.x,y:n.y});return a.pop(),a};function we(e,t){var n=_e(e,t);switch(De([Pe(n,Me.up),Pe(n,Me.right),Pe(n,Me.upRight)])){case 0:e.y++;break;case 1:e.x++;break;case 2:e.y++,e.x++}}function Ie(e,t){var n=_e(e,t);switch(De([Pe(n,Me.up),Pe(n,Me.left),Pe(n,Me.upLeft)])){case 0:e.y++;break;case 1:e.x--;break;case 2:e.y++,e.x--}}function Se(e,t){var n=_e(e,t);switch(De([Pe(n,Me.down),Pe(n,Me.right),Pe(n,Me.downRight)])){case 0:e.y--;break;case 1:e.x++;break;case 2:e.y--,e.x++}}function ke(e,t){var n=_e(e,t);switch(De([Pe(n,Me.down),Pe(n,Me.left),Pe(n,Me.downLeft)])){case 0:e.y--;break;case 1:e.x--;break;case 2:e.y--,e.x--}}function _e(e,t){var n=y.cornerstoneMath.point.distance(e,t);return{x:(t.x-e.x)/n,y:(t.y-e.y)/n}}function Pe(e,t){return e.x*t.x+e.y*t.y}function De(e){var t=e[0]>e[1]?0:1;return e[2]>e[t]&&(t=2),t}function Oe(e,t){var n=Tt("segmentation").getters;t=void 0===t?n.activeLabelmapIndex(e):t,y.cornerstone.triggerEvent(e,b.LABELMAP_MODIFIED,{labelmapIndex:t})}function Le(e,t){for(var n=[],a=0;a3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0,i=arguments.length>5?arguments[5]:void 0,r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0,s=Tt("segmentation"),l=s.configuration,c=V.series[e];c||(V.series[e]={activeLabelmapIndex:n,labelmaps3D:[]},c=V.series[e]),c.labelmaps3D[n]={buffer:t,labelmaps2D:[],metadata:a,activeSegmentIndex:1,colorLUTIndex:r,segmentsHidden:[],undo:[],redo:[]};for(var u=c.labelmaps3D[n].labelmaps2D,d=t.byteLength/o,h=0;h=0&&o=0}var Ye=N("store:modules:segmentationModule:getSegmentOfActiveLabelmapAtEvent");var Xe=N("store:modules:segmentationModule:setColorLUT");function Ke(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=Tt("segmentation"),a=n.configuration,o=a.segmentsPerLabelmap;t?($e(t,o),t.lengtht&&Xe.warn("segmentsPerLabelmap is set to ".concat(t,", and the provided colorLUT provides ").concat(e.length,". Using the first ").concat(t," colors from the LUT."))}function Je(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:255,t=[],n=0;n=360&&(Qe-=360),Qe}var tt=.6;function nt(){(tt+=.07)>.82&&(tt=.3+(tt-.82));return tt}function at(e){var t,n,a,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.6,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:255,s=(1-Math.abs(2*i-1))*o,l=s*(1-Math.abs(e/60%2-1)),c=i-s/2;return e<60?(t=s,n=l,a=0):e<120?(t=l,n=s,a=0):e<180?(t=0,n=s,a=l):e<240?(t=0,n=l,a=s):e<300?(t=l,n=0,a=s):e<360&&(t=s,n=0,a=l),[255*(t+c),255*(n+c),255*(a+c),r]}var ot=N("store:modules:segmentationModule:getBrushColor");var it={renderOutline:!0,renderFill:!0,shouldRenderInactiveLabelmaps:!0,radius:10,minRadius:1,maxRadius:50,fillAlpha:.2,fillAlphaInactive:.1,outlineAlpha:.7,outlineAlphaInactive:.35,outlineWidth:3,storeHistory:!0,segmentsPerLabelmap:65535,arrayType:E.UINT_16_ARRAY},rt=N("util:segmentation:labelmap3DHistory");function st(e,t,n){var a=e.labelmaps2D;t.forEach((function(e){for(var t=e.imageIdIndex,o=e.diff,i=a[t].pixelData,r=0;rr?r=e:e1&&void 0!==arguments[1]&&arguments[1],n=M(e);if(n){var a=O(n,"stack");if(a){var o,i=a.data[0],r=i.imageIds[0],s=V.series[r];if(s){var l=s.activeLabelmapIndex,c=s.labelmaps3D[l],u=c.activeSegmentIndex;o=V.colorLutTables[c.colorLUTIndex][u]}else o=V.colorLutTables[0][1];return t?"rgba(".concat(o[0],", ").concat(o[1],", ").concat(o[2],", 1.0 )"):"rgba(".concat(o[0],", ").concat(o[1],", ").concat(o[2],", 0.8 )")}ot.error("Consumers must define stacks in their application if using segmentations in cornerstoneTools.")}},labelmapBuffers:Z,activeLabelmapBuffer:function(e){var t=M(e);if(t){var n=O(t,"stack").data[0].imageIds[0],a=V.series[n];if(a)return Z(t,a.activeLabelmapIndex)}},colorLUT:Ze,colorForSegmentIndexColorLUT:function(e,t){return Ze(e)[t]}},setters:{metadata:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=M(e);if(o){var i=y.cornerstone,r=O(o,"stack"),s=r.data[0],l=s.imageIds[0],c=V.series[l];if(c||(V.series[l]={labelmapIndex:t,labelmaps3D:[]},c=V.series[l]),!c.labelmaps3D[t]){var u=i.getEnabledElement(o),d=u.image,h=d.rows,v=d.columns,g=s.imageIds.length,f=h*v*g;S(c,t,f)}var m=c.labelmaps3D[t];m.metadata[n]=a}},labelmap3DForElement:function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,r=M(e);if(r){var s=O(r,"stack"),l=s.data[0].imageIds.length,c=s.data[0].imageIds[0];Re(c,t,n,a,l,o,i),Oe(r,n)}},labelmap3DByFirstImageId:Re,incrementActiveSegmentIndex:function(e){var t=M(e);t&&z(t,"increase")},decrementActiveSegmentIndex:function(e){var t=M(e);t&&z(t,"decrease")},activeSegmentIndex:function(e,t){var n=M(e);if(n){var a=O(n,"stack").data[0].imageIds[0],o=V.series[a];if(o){var i=o.activeLabelmapIndex,r=o.labelmaps3D[i],s=Tt("segmentation").configuration;t<=0?t=1:t>s.segmentsPerLabelmap&&(t=s.segmentsPerLabelmap),r.activeSegmentIndex=t}}},toggleSegmentVisibility:function(e,t,n){if(t){var a=M(e);if(a){var o=O(a,"stack").data[0].imageIds[0],i=V.series[o];if(i){if(n=void 0===n?i.activeLabelmapIndex:n,i.labelmaps3D[n]){var r=i.labelmaps3D[n].segmentsHidden;return r[t]=!r[t],!r[t]}j.warn("No labelmap3D of labelmap index ".concat(n," on stack."))}else j.warn("brushStackState is undefined")}}},updateSegmentsOnLabelmap2D:function(e){e.segmentsOnLabelmap=$(e.pixelData)},deleteSegment:function(e,t,n){if(t){var a=M(e);if(a){var o=O(a,"stack").data[0].imageIds[0],i=V.series[o];if(i){n=void 0===n?i.activeLabelmapIndex:n;var r=i.labelmaps3D[n];if(r){delete r.metadata[t];for(var s=r.labelmaps2D,l=0;l1&&void 0!==arguments[1]?arguments[1]:0,n=M(e);if(n){var a=y.cornerstone,o=O(n,"stack"),i=o.data[0],r=a.getEnabledElement(n),s=r.image,l=s.rows,c=s.columns,u=i.imageIds.length,d=l*c*u,h=i.imageIds[0],v=V.series[h];v?(v.activeLabelmapIndex=t,v.labelmaps3D[t]||S(v,t,d)):(V.series[h]={activeLabelmapIndex:t,labelmaps3D:[]},S(v=V.series[h],t,d)),a.updateImage(n)}},radius:function(e){var t=Tt("segmentation").configuration;t.radius=Math.min(Math.max(e,t.minRadius),t.maxRadius)},pushState:function(e,t,n){var a=Y(e,n);a.undo.push(t),a.redo=[]},undo:function(e,t){var n=Y(e,t),a=n.undo,o=n.redo;if(a.length){var i=a.pop();st(n,i,1),o.push(i),y.cornerstone.updateImage(e)}else rt.warn("No undos left.")},redo:function(e,t){var n=Y(e,t),a=n.undo,o=n.redo;if(o.length){var i=o.pop();st(n,i,2),a.push(i),y.cornerstone.updateImage(e)}else rt.warn("No redos left.")}}},ct={activeManipulators:{}};function ut(e){var t=y.cornerstone.getEnabledElement(e).uuid;delete ct.activeManipulators[t]}function dt(e){var t=ct.activeManipulators,n=t[e];"function"==typeof n&&n(),delete t[e]}function ht(e){ut(e.detail.element)}var vt={setters:{addActiveManipulatorForElement:function(e,t){var n=y.cornerstone.getEnabledElement(e).uuid;ct.activeManipulators[n]=t},removeActiveManipulatorForElement:ut,cancelActiveManipulatorsForElement:function(e){dt(y.cornerstone.getEnabledElement(e).uuid)},cancelActiveManipulators:function(){var e=ct.activeManipulators;Object.keys(e).forEach((function(e){return dt(e)}))}},state:ct,enabledElementCallback:function(e){var t=y.cornerstone.EVENTS.NEW_IMAGE;e.removeEventListener(t,ht),e.addEventListener(t,ht)},removeEnabledElementCallback:function(e){var t=y.cornerstone.EVENTS.NEW_IMAGE;e.removeEventListener(t,ht),ut(e)}},gt={iconSize:16,viewBox:{x:16,y:16},mousePoint:{x:8,y:8},mousePointerGroupString:'\n \n \n '},ft={configuration:gt,getters:{defaultOptions:function(){return gt}},setters:{defaultOptions:function(e){Object.assign(gt,e)}}},mt={configuration:{mouseEnabled:!0,touchEnabled:!0,globalToolSyncEnabled:!1,showSVGCursors:!1,autoResizeViewports:!0,lineDash:[4,4]}},pt=(N("store:modules:storeLogger"),{globalTools:{},globalToolChangeHistory:[],enabledElements:[],tools:[],isToolLocked:!1,activeMultiPartTool:null,mousePositionImage:{},clickProximity:6,touchProximity:10,handleRadius:6,deleteIfHandleOutsideImage:!0,preventHandleOutsideImage:!1,svgCursorUrl:null}),yt={mouseTools:function(){return pt.tools.filter((function(e){return e.supportedInteractionTypes.includes("Mouse")}))},touchTools:function(){return pt.tools.filter((function(e){return e.supportedInteractionTypes.includes("Touch")}))},enabledElementByUID:function(e){return pt.enabledElements.find((function(t){return y.cornerstone.getEnabledElement(t).uuid===e}))}},xt={segmentation:lt,cursor:ft,globalConfiguration:mt,manipulatorState:vt};function Tt(e){return xt[e]}var bt={modules:xt,state:pt,getters:yt},Ct=function(e,t){return pt.tools.find((function(n){return n.element===e&&n.name===t}))},Mt=xt.globalConfiguration;function Et(e,t){if(Mt.configuration.showSVGCursors){var n=t.getIconWithPointerSVG(),a=t.mousePoint,o=window.URL.createObjectURL(n);e.style.cursor="url('".concat(o,"') ").concat(a,", auto"),pt.svgCursorUrl=o}}function wt(e){Mt.configuration.showSVGCursors&&It(e,"none")}function It(e,t){pt.svgCursorUrl&&window.URL.revokeObjectURL(pt.svgCursorUrl),pt.svgCursorUrl=null,e.style.cursor=t}var St=Tt("globalConfiguration"),kt=N("store:setToolMode"),_t=function(e,t,n,a){void 0===a&&Array.isArray(n)&&(a=n,n=null);var o=Ct(e,t);o&&(function(e,t,n,a){t.supportedInteractionTypes.forEach((function(o){if(void 0===a||a.includes(o)){var i=Vt[o];i?i(t,e,n):kt.warn("Unable to resolve input conflicts for type %s",o)}})),bt.state.tools.filter((function(t){return t.element===e&&"active"===t.mode&&t.supportedInteractionTypes.length>0})).forEach((function(t){var n=!1;t.supportedInteractionTypes.forEach((function(e){t.options["is".concat(e,"Active")]&&(n=!0)})),n||(kt.log("Setting tool %s's to PASSIVE",t.name),Ht(e,t.name))}))}(e,o,n,a),o.supportedInteractionTypes.forEach((function(e){void 0===a||a.includes(e)?n["is".concat(e,"Active")]=!0:n["is".concat(e,"Active")]=!1})),St.configuration.showSVGCursors&&o.supportedInteractionTypes.includes("Mouse")&&function(e,t,n){var a;a="number"==typeof t?[t]:t.mouseButtonMask;a.includes(1)&&(n.svgCursor?Et(n.element,n.svgCursor):n.hideDefaultCursor?wt(e):function(e){It(e,"initial")}(e))}(e,n,o)),Ut("active",null,e,t,n)};var Pt=function(e,t,n){Bt("active",e,t,n),bt.state.enabledElements.forEach((function(a){_t(a,e,t,n)}))},Dt=Ut.bind(null,"disabled",null),Ot=Nt.bind(null,"disabled",null),Lt=Ut.bind(null,"enabled",null),At=Nt.bind(null,"enabled",null),Ht=Ut.bind(null,"passive",b.TOOL_DEACTIVATED),Rt=Nt.bind(null,"passive",b.TOOL_DEACTIVATED);function Ut(e,t,n,a,o){var i,r,s=Ct(n,a);s?(o=qt(o),Array.isArray(o.mouseButtonMask)&&0!==o.mouseButtonMask.length&&Array.isArray(s.options.mouseButtonMask)&&(o.mouseButtonMask=(i=o.mouseButtonMask,r=s.options.mouseButtonMask,i.concat(r).reduce((function(e,t){return-1===e.indexOf(t)&&e.push(t),e}),[]))),s.mode=e,s.mergeOptions(o),s["".concat(e,"Callback")]&&s["".concat(e,"Callback")](n,o),t&&C(n,t,{options:o,toolName:a,toolType:a,type:t})):kt.warn('Unable to find tool "%s" for enabledElement',a)}function Nt(e,t,n,a){Bt(e,n,a),bt.state.enabledElements.forEach((function(o){Ut(e,t,o,n,a)}))}function Ft(e,t,n){var a="is".concat(e,"Active"),o=bt.state.tools.find((function(e){return e.element===n&&"active"===e.mode&&!0===e.options[a]}));o&&(kt.log("Setting tool %s's %s to false",o.name,a),o.options[a]=!1)}function Bt(e,t,n,a){if(St.configuration.globalToolSyncEnabled){var o={mode:e,args:[t,n]};a&&o.push(a),bt.state.globalToolChangeHistory.push(o);bt.state.globalToolChangeHistory.length>50&&bt.state.globalToolChangeHistory.shift();var i=bt.state.globalTools[t];if(i)if("active"===e){var r=function(e,t,n){void 0===n&&Array.isArray(t)&&(n=t,t=null);var a=[],o=bt.state.globalTools[e];if(o){var i=new o.tool(o.props);i.supportedInteractionTypes.forEach((function(e){if(void 0===n||n.includes(e))if("Mouse"===e){var o=qt(t).mouseButtonMask;Array.isArray(o)&&o.length>0?o.forEach((function(t){return a.push("".concat(e,"-").concat(t))})):Array.isArray(o)&&0===o.length&&a.push("".concat(e,"-DELETE"))}else"MultiTouch"===e?a.push("".concat(e,"-").concat(i.configuration.touchPointers)):a.push(e)}))}return a}(t,n,a);Object.keys(bt.state.globalTools).forEach((function(e){var t=bt.state.globalTools[e];t.activeBindings=t.activeBindings.filter((function(e){return!r.includes(e)}))})),r.some((function(e){return e.includes("Mouse-DELETE")}))&&(i.activeBindings=i.activeBindings.filter((function(e){return!e.includes("Mouse")})),r=r.filter((function(e){return!e.includes("Mouse")}))),i.activeBindings=i.activeBindings.concat(r)}else i.activeBindings=[];else kt.warn("setToolMode call for tool not available globally: ".concat(t))}}var Vt={Mouse:function(e,t,n){var a=qt(n).mouseButtonMask;if(Array.isArray(a)&&a.length>0){var o=bt.state.tools.find((function(e){return e.element===t&&"active"===e.mode&&!0===e.options.isMouseActive&&Array.isArray(e.options.mouseButtonMask)&&e.options.mouseButtonMask.some((function(e){return a.includes(e)}))}));o&&(o.options.mouseButtonMask=o.options.mouseButtonMask.filter((function(e){return!a.includes(e)})),0===o.options.mouseButtonMask.length&&(o.options.isMouseActive=!1))}},MouseWheel:Ft.bind(void 0,"MouseWheel"),Touch:function(e,t){var n=bt.state.tools.find((function(e){return e.element===t&&"active"===e.mode&&!0===e.options.isTouchActive})),a=bt.state.tools.find((function(e){return e.element===t&&"active"===e.mode&&!0===e.options.isMultiTouchActive&&1===e.configuration.touchPointers}));n&&(kt.log("Setting tool %s's isTouchActive to false",n.name),n.options.isTouchActive=!1),a&&(kt.log("Setting tool %s's isTouchActive to false",a.name),a.options.isMultiTouchActive=!1)},TouchPinch:Ft.bind(void 0,"TouchPinch"),TouchRotate:Ft.bind(void 0,"TouchRotate"),DoubleTap:Ft.bind(void 0,"DoubleTap"),MultiTouch:function(e,t){var n,a=bt.state.tools.find((function(n){return n.element===t&&"active"===n.mode&&!0===n.options.isMultiTouchActive&&n.configuration.touchPointers===e.configuration.touchPointers}));1===e.configuration.touchPointers&&(n=bt.state.tools.find((function(e){return e.element===t&&"active"===e.mode&&!0===e.options.isTouchActive}))),a&&(kt.log("Setting tool %s's isMultiTouchActive to false",a.name),a.options.isMultiTouchActive=!1),n&&(kt.log("Setting tool %s's isTouchActive to false",n.name),n.options.isTouchActive=!1)}};function qt(e){return Array.isArray(e)?e={mouseButtonMask:e}:e!==Object(e)&&(e={mouseButtonMask:[e]}),e.hasOwnProperty("mouseButtonMask")||(e.mouseButtonMask=[]),Array.isArray(e.mouseButtonMask)||(e.mouseButtonMask=[e.mouseButtonMask]),e.mouseButtonMask=e.mouseButtonMask.filter((function(e){return"number"==typeof e&&0!==e})),e}var zt={passiveCallback:function(e){Dt(e,this.name)},enabledCallback:function(e){_t(e,this.name)}};var jt={passiveCallback:function(e){Dt(e,this.name)},activeCallback:function(e){Lt(e,this.name)}},Wt=function(e,t){e.save(),t(e),e.restore()},Gt=1,Yt=2;var Xt={setToolWidth:function(e){Gt=e},getToolWidth:function(){return Gt},setActiveWidth:function(e){Yt=e},getActiveWidth:function(){return Yt}},Kt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=t.color,o=t.lineWidth,i=t.fillStyle,r=t.lineDash,s=t.shouldDrawLines,l=void 0===s||s;e.beginPath(),e.strokeStyle=a||e.strokeStyle,e.lineWidth=o||void 0===o&&Xt.getToolWidth()||e.lineWidth,r&&e.setLineDash(r),n(e),i&&(e.fillStyle=i,e.fill()),l&&e.stroke(),r&&e.setLineDash([])};function Zt(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel";Kt(e,o,(function(e){"pixel"===i&&(n=y.cornerstone.pixelToCanvas(t,n),a=y.cornerstone.pixelToCanvas(t,a)),e.moveTo(n.x,n.y),e.lineTo(a.x,a.y)}))}var $t=function(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel";Kt(e,o,(function(e){"pixel"===i&&(n=y.cornerstone.pixelToCanvas(t,n),a=a.map((function(e){return y.cornerstone.pixelToCanvas(t,e)}))),e.moveTo(n.x,n.y),a.forEach((function(t){var n=t.x,a=t.y;e.lineTo(n,a)}))}))},Jt=function(e,t,n,a,o,i){var r=Math.atan2(n.y-t.y,n.x-t.x),s={color:a,lineWidth:o};i&&(s.lineDash=i),Zt(e,void 0,t,n,s,"canvas"),s={color:a,lineWidth:o,fillStyle:a};var l=[{x:n.x-10*Math.cos(r-Math.PI/7),y:n.y-10*Math.sin(r-Math.PI/7)},{x:n.x-10*Math.cos(r+Math.PI/7),y:n.y-10*Math.sin(r+Math.PI/7)},n];$t(e,void 0,n,l,s,"canvas")},Qt=function(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel";"pixel"===i&&(n=y.cornerstone.pixelToCanvas(t,n)),Kt(e,o,(function(e){e.arc(n.x,n.y,a,0,2*Math.PI)}))};function en(e){var t=y.cornerstoneMath;if(e instanceof t.Vector3)return e;var n=Object.keys(e);return n.includes("x")&&n.includes("y")&&n.includes("z")?new t.Vector3(e.x,e.y,e.z):new t.Vector3(e[0],e[1],e[2])}function tn(e,t){var n=en(t.rowCosines),a=en(t.columnCosines),o=en(t.imagePositionPatient),i=e.clone().sub(o);return{x:n.dot(i)/t.columnPixelSpacing,y:a.dot(i)/t.rowPixelSpacing}}function nn(e,t){var n=en(t.rowCosines),a=en(t.columnCosines),o=en(t.imagePositionPatient),i=n.clone().multiplyScalar(e.x);i.multiplyScalar(t.columnPixelSpacing);var r=a.clone().multiplyScalar(e.y);r.multiplyScalar(t.rowPixelSpacing);var s=i.add(r);return s.add(o),s}function an(e,t){var n=en(e.rowCosines),a=en(e.columnCosines),o=en(e.imagePositionPatient),i=en(t.rowCosines),r=en(t.columnCosines),s=en(t.imagePositionPatient),l=n.clone().cross(a),c=new y.cornerstoneMath.Plane;c.setFromNormalAndCoplanarPoint(l,o);var u=i.clone().cross(r),d=new y.cornerstoneMath.Plane;d.setFromNormalAndCoplanarPoint(u,s);var h=d.clone().intersectPlane(c),v=h.origin,g=h.direction,f=nn({x:t.columns,y:t.rows},t),m=s.distanceTo(f),p=new y.cornerstoneMath.Line3;p.start=v,p.end=v.clone().add(g.multiplyScalar(m));var x=function(e,t){var n=[];return Object.keys(t).forEach((function(a){var o=t[a],i=e.intersectLine(o);i&&n.push(i)})),n}(p,function(e){var t=nn({x:0,y:0},e),n=nn({x:e.columns,y:0},e),a=nn({x:0,y:e.rows},e),o=nn({x:e.columns,y:e.rows},e);return{top:new y.cornerstoneMath.Line3(t,n),left:new y.cornerstoneMath.Line3(t,a),right:new y.cornerstoneMath.Line3(n,o),bottom:new y.cornerstoneMath.Line3(a,o)}}(t));if(2===x.length)return{start:x[0],end:x[1]}}function on(e,t,n){var a=n*(Math.PI/180);return{x:Math.cos(a)*(e.x-t.x)-Math.sin(a)*(e.y-t.y)+t.x,y:Math.sin(a)*(e.x-t.x)+Math.cos(a)*(e.y-t.y)+t.y}}var rn=function(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel",r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0;"pixel"===i&&(n=y.cornerstone.pixelToCanvas(t,n),a=y.cornerstone.pixelToCanvas(t,a));var s=y.cornerstone.getViewport(t),l=t.clientWidth,c=t.clientHeight,u=s.scale,d=s.translation,h=s.rotation-r,v={x:l/2+d.x*u,y:c/2+d.y*u};Math.abs(h)>.05&&(n=on(n,v,-h),a=on(a,v,-h));var g=Math.abs(n.x-a.x),f=Math.abs(n.y-a.y),m=Math.min(n.x,a.x),p=Math.min(n.y,a.y),x={x:m+g/2,y:p+f/2};Math.abs(h)>.05&&(x=on(x,v,h));var T=h*Math.PI/180;Kt(e,o,(function(e){e.ellipse(x.x,x.y,g/2,f/2,T,0,2*Math.PI),e.closePath()}))},sn="white",ln="greenyellow",cn="transparent";var un={setFillColor:function(e){cn=e},getFillColor:function(){return cn},setToolColor:function(e){sn=e},getToolColor:function(){return sn},setActiveColor:function(e){ln=e},getActiveColor:function(){return ln},getColorIfActive:function(e){return e.color?e.color:e.active?ln:sn}},dn=function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.element,i=un.getToolColor();e.strokeStyle=a.color||i;for(var r=Object.keys(n),s=function(t){var i=r[t],s=n[i];if(!0===s.drawnIndependently)return"continue";if(!0===a.drawHandlesIfActive&&!s.active)return"continue";if(a.hideHandlesIfMoving&&s.moving)return"continue";var l={lineWidth:s.active?Xt.getActiveWidth():Xt.getToolWidth(),fillStyle:a.fill};a.lineDash&&(l.lineDash=a.lineDash),Kt(e,l,(function(e){var t=y.cornerstone.pixelToCanvas(o,s),n=s.radius||a.handleRadius||pt.handleRadius;e.arc(t.x,t.y,n,0,2*Math.PI)}))},l=0;l4&&void 0!==arguments[4]?arguments[4]:"pixel";Kt(e,a,(function(e){n.forEach((function(n){var a=n.start,i=n.end;if("pixel"===o){var r=y.cornerstone;a=r.pixelToCanvas(t,a),i=r.pixelToCanvas(t,i)}e.moveTo(a.x,a.y),e.lineTo(i.x,i.y)}))}))},vn=function(e,t,n,a,o,i){var r=e.length>0?y.cornerstoneMath.point.findClosestPoint(e,t):t,s=[{x:n.left+n.width/2,y:n.top},{x:n.left,y:n.top+n.height/2},{x:n.left+n.width/2,y:n.top+n.height},{x:n.left+n.width,y:n.top+n.height/2}];Zt(a,void 0,r,y.cornerstoneMath.point.findClosestPoint(s,r),{color:o,lineWidth:i,lineDash:[2,3]},"canvas")},gn=15,fn="".concat(gn,"px Arial"),mn="transparent";var pn={setFont:function(e){fn=e},getFont:function(){return fn},setFontSize:function(e){gn=e},getFontSize:function(){return gn},setBackgroundColor:function(e){mn=e},getBackgroundColor:function(){return mn}},yn=function(e,t,n,a,o){var i=pn.getFontSize();e.font=pn.getFont(),e.textBaseline="top",e.fillStyle=a,n.forEach((function(n,a){e.fillText(n,t.left+o,t.top+o+a*(i+o))}))},xn=function(e,t,n){e.fillStyle=n,e.fillRect(t.left,t.top,t.width,t.height)};function Tn(e,t,n){var a=pn.getFont(),o=e.font;a&&a!==o&&(e.font=a);var i=e.measureText(t).width;return a&&a!==o&&(e.font=o),i+2*n}var bn=function(e,t,n,a,o,i){"[object Array]"!==Object.prototype.toString.call(t)&&(t=[t]);var r=pn.getFontSize(),s=pn.getBackgroundColor(),l=0;t.forEach((function(t){var n=Tn(e,t,5);l=Math.max(l,n)}));var c={width:l,height:5+t.length*(r+5)};return Wt(e,(function(e){e.strokeStyle=o,i&&i.centering&&!0===i.centering.x&&(n-=c.width/2),i&&i.centering&&!0===i.centering.y&&(a-=c.height/2),c.left=n,c.top=a;var r=i&&!0===i.debug?"#FF0000":s;xn(e,c,r),yn(e,c,t,o,5)})),c},Cn=function(e,t,n,a,o,i,r,s,l,c){var u=y.cornerstone,d=u.pixelToCanvas(t,n);l&&(d.x+=l);var h={centering:{x:!1,y:c}};if(n.boundingBox=bn(e,a,d.x,d.y,r,h),n.hasMoved){var v=i(o).map((function(e){return u.pixelToCanvas(t,e)}));vn(v,d,n.boundingBox,e,r,s)}},Mn=function(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel",r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0;if("pixel"===i){var s=y.cornerstone;n=s.pixelToCanvas(t,n),a=s.pixelToCanvas(t,a)}var l=y.cornerstone.getViewport(t),c=t.clientWidth,u=t.clientHeight,d=l.scale,h=l.translation,v=l.rotation-r,g={x:c/2+h.x*d,y:u/2+h.y*d};Math.abs(v)>.05&&(n=on(n,g,-v),a=on(a,g,-v));var f=Math.abs(n.x-a.x),m=Math.abs(n.y-a.y);n={x:Math.min(n.x,a.x),y:Math.min(n.y,a.y)},a={x:n.x+f,y:n.y+m};var p={x:n.x+f,y:n.y},x={x:n.x,y:n.y+m};Math.abs(v)>.05&&(n=on(n,g,v),a=on(a,g,v),p=on(p,g,v),x=on(x,g,v)),Kt(e,o,(function(e){e.moveTo(n.x,n.y),e.lineTo(p.x,p.y),e.lineTo(a.x,a.y),e.lineTo(x.x,x.y),e.lineTo(n.x,n.y)}))},En=function(e){var t=e.getContext("2d");return t.setTransform(1,0,0,1,0,0),t},wn=function(e,t){return void 0===e?t:e},In=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.shadow&&(e.shadowColor=wn(t.shadowColor,"#000000"),e.shadowBlur=wn(t.shadowBlur,0),e.shadowOffsetX=wn(t.shadowOffsetX,1),e.shadowOffsetY=wn(t.shadowOffsetY,1))},Sn=function(e){return 0===Object.keys(e).length&&e.constructor===Object},kn=Tt("segmentation"),_n=kn.getters,Pn=kn.setters;function Dn(){this.handles={start:{},end:{}}}function On(e){var t=e.detail.element,n=e.detail.currentPoints.image;return Sn(this.handles.start)?this.handles.start=n:(this.handles.end=n,this._applyStrategy(e)),y.cornerstone.updateImage(t),!0}function Ln(e){var t=e.detail,n=t.element,a=t.currentPoints.image;this.handles.end=a,y.cornerstone.updateImage(n)}function An(e){e.detail.handles=this.handles;var t=e.detail.element,n=_n.labelmap2D(t),a=n.labelmap2D,o=n.labelmap3D,i=n.currentImageIdIndex,r=a.pixelData,s=r.slice(),l={points:{start:{x:this.handles.start.x,y:this.handles.start.y},end:{x:this.handles.end.x,y:this.handles.end.y}},pixelData:r,segmentIndex:o.activeSegmentIndex,segmentationMixinType:"circleSegmentationMixin"};this.applyActiveStrategy(e,l);var c={imageIdIndex:i,diff:Le(s,r)};Pn.pushState(this.element,[c]),Pn.updateSegmentsOnLabelmap2D(a),y.cornerstone.updateImage(t),this._resetHandles()}var Hn={postTouchStartCallback:On,postMouseDownCallback:On,mouseClickCallback:On,touchDragCallback:Ln,mouseDragCallback:Ln,mouseMoveCallback:Ln,touchEndCallback:An,mouseUpCallback:An,initializeMixin:Dn,renderToolData:function(e){var t=this,n=e.detail,a=n.element,o=_n.brushColor(a,!0),i=En(n.canvasContext.canvas),r=y.cornerstoneMath.point.distance;Wt(i,(function(e){if(!t.handles)return null;var n=y.cornerstone.pixelToCanvas(a,t.handles.start),i=y.cornerstone.pixelToCanvas(a,t.handles.end),s=r(n,i);Qt(e,a,t.handles.start,s,{color:o})}))},_resetHandles:Dn,_applyStrategy:An},Rn=N("tools:ScissorsTool"),Un=Tt("segmentation"),Nn=Un.getters,Fn=Un.setters;function Bn(e){var t=e.detail.element,n=e.detail.currentPoints.image,a=this.handles.points;if(!a.length)return Rn.warn("Something went wrong, empty handles detected."),null;a.push({x:n.x,y:n.y,lines:[]}),this.currentHandle+=1,y.cornerstone.updateImage(t)}function Vn(e){var t=e.detail,n=e.detail.element;this._addPoint(t),y.cornerstone.updateImage(n)}function qn(e){var t=this.handles.points,n=e.detail.element,a=Nn.labelmap2D(n),o=a.labelmap2D,i=a.labelmap3D,r=a.currentImageIdIndex,s=o.pixelData,l=s.slice(),c={points:t,pixelData:s,segmentIndex:i.activeSegmentIndex,segmentationMixinType:"freehandSegmentationMixin"};this.applyActiveStrategy(e,c);var u={imageIdIndex:r,diff:Le(l,s)};Fn.pushState(this.element,[u]),Fn.updateSegmentsOnLabelmap2D(o),y.cornerstone.updateImage(n),this._resetHandles()}function zn(){this.handles={points:[]},this.currentHandle=0}var jn={postTouchStartCallback:Bn,postMouseDownCallback:Bn,mouseClickCallback:Bn,touchDragCallback:Vn,mouseDragCallback:Vn,mouseMoveCallback:Vn,touchEndCallback:qn,mouseUpCallback:qn,initializeMixin:zn,renderToolData:function(e){var t=e.detail,n=t.element,a=Nn.brushColor(n,!0),o=En(t.canvasContext.canvas),i=this.handles.points;i.length<2||Wt(o,(function(e){for(var t=0;t1)for(var n=0;nu||v<0||v>c)){var g=i.radius,f=r.canvasContext,m=r.element,p=o.brushColor(m,this._drawing);f.setTransform(1,0,0,1,0,0);var x=g*s.scale,T=n.pixelToCanvas(m,t);f.beginPath(),f.strokeStyle=p,f.ellipse(T.x,T.y,x,x,0,0,2*Math.PI),f.stroke()}}}}},ta=function(e){return e&&"object"===T()(e)&&"[object RegExp]"!==Object.prototype.toString.call(e)&&"[object Date]"!==Object.prototype.toString.call(e)},na=function(e,t){var n;return t&&!0===t.clone&&ta(e)?ia((n=e,Array.isArray(n)?[]:{}),e,t):e},aa=function(e,t,n){var a=e.slice();return t.forEach((function(t,o){void 0===a[o]?a[o]=na(t,n):ta(t)?a[o]=ia(e[o],t,n):-1===e.indexOf(t)&&a.push(na(t,n))})),a},oa=function(e,t,n){var a={};return ta(e)&&Object.keys(e).forEach((function(t){a[t]=na(e[t],n)})),Object.keys(t).forEach((function(o){ta(t[o])&&e[o]?a[o]=ia(e[o],t[o],n):a[o]=na(t[o],n)})),a},ia=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=Array.isArray(t),o=n||{arrayMerge:aa},i=o.arrayMerge||aa;return a?Array.isArray(e)?i(e,t,n):na(t,n):oa(e,t,n)},ra=ia,sa=N("tools:base:BaseTool"),la=Tt("globalConfiguration"),ca=function(){function e(t,n){r()(this,e),this.initialConfiguration=ra(n,t);var a=this.initialConfiguration,o=a.name,i=a.strategies,s=a.defaultStrategy,l=a.configuration,c=a.supportedInteractionTypes,u=a.mixins,d=a.svgCursor;this.name=o,this.mode="disabled",this.element=void 0,this.supportedInteractionTypes=c||[],this.strategies=i||{},this.defaultStrategy=s||Object.keys(this.strategies)[0]||void 0,this.activeStrategy=this.defaultStrategy,d&&(this.svgCursor=d),this._options={},this._configuration=Object.assign({},l),this.updateOnMouseMove=!1,this.hideDefaultCursor=!1,u&&u.length&&this._applyMixins(u),this._cursors=Object.assign({},this.initialConfiguration.cursors);var h=this.defaultStrategy&&this._cursors[this.activeStrategy];h&&(this.svgCursor=h)}return l()(e,[{key:"mergeOptions",value:function(e){this._options=Object.assign({},this._options,e)}},{key:"clearOptions",value:function(){this._options={}}},{key:"applyActiveStrategy",value:function(e,t){return this.strategies[this.activeStrategy].call(this,e,t)}},{key:"_applyMixins",value:function(e){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:{};return r()(this,t),a.configuration||(a.configuration={alwaysEraseOnClick:!1}),(n=u()(this,h()(t).call(this,e,a))).updateOnMouseMove=!0,n.hideDefaultCursor=!0,n._drawing=!1,n._drawingMouseUpCallback=n._drawingMouseUpCallback.bind(Ta()(n)),n}return g()(t,e),l()(t,[{key:"renderBrush",value:function(e){throw new Error("Method renderBrush not implemented for ".concat(this.name,"."))}},{key:"_paint",value:function(e){throw new Error("Method _paint not implemented for ".concat(this.name,"."))}},{key:"mouseDragCallback",value:function(e){var t=e.detail.currentPoints;this._lastImageCoords=t.image,this._drawing&&this._paint(e)}},{key:"preMouseDownCallback",value:function(e){var t=e.detail,n=t.element,a=t.currentPoints;return this._startPainting(e),this._lastImageCoords=a.image,this._drawing=!0,this._startListeningForMouseUp(n),this._paint(e),!0}},{key:"_startPainting",value:function(e){var t=e.detail,n=t.element,a=Ca.configuration,o=Ca.getters.labelmap2D(n),i=o.labelmap2D,r=o.labelmap3D,s=o.currentImageIdIndex,l=o.activeLabelmapIndex,c=this._isCtrlDown(t)||this.configuration.alwaysEraseOnClick;if(this.paintEventData={labelmap2D:i,labelmap3D:r,currentImageIdIndex:s,activeLabelmapIndex:l,shouldErase:c},a.storeHistory){var u=i.pixelData.slice();this.paintEventData.previousPixelData=u}}},{key:"_endPainting",value:function(e){for(var t=Ca.configuration,n=Ca.setters,a=this.paintEventData,o=a.labelmap2D,i=a.currentImageIdIndex,r=new Set(o.pixelData).values(),s=[],l=!1;!l;){var c=r.next();(l=c.done)||s.push(c.value)}if(o.segmentsOnLabelmap=s,t.storeHistory){var u={imageIdIndex:i,diff:Le(this.paintEventData.previousPixelData,o.pixelData)};n.pushState(this.element,[u])}Oe(this.element)}},{key:"mouseMoveCallback",value:function(e){var t=e.detail.currentPoints;this._lastImageCoords=t.image}},{key:"renderToolData",value:function(e){var t=e.detail.element;ba(t,this.name)&&this.renderBrush(e)}},{key:"passiveCallback",value:function(e){try{y.cornerstone.updateImage(this.element)}catch(e){return}}},{key:"_drawingMouseUpCallback",value:function(e){var t=e.detail.element;this._endPainting(e),this._drawing=!1,this._mouseUpRender=!0,this._stopListeningForMouseUp(t)}},{key:"newImageCallback",value:function(e){this._drawing&&(this._endPainting(e),this._startPainting(e))}},{key:"_startListeningForMouseUp",value:function(e){e.removeEventListener(b.MOUSE_UP,this._drawingMouseUpCallback),e.removeEventListener(b.MOUSE_CLICK,this._drawingMouseUpCallback),e.addEventListener(b.MOUSE_UP,this._drawingMouseUpCallback),e.addEventListener(b.MOUSE_CLICK,this._drawingMouseUpCallback),y.cornerstone.updateImage(e)}},{key:"_stopListeningForMouseUp",value:function(e){e.removeEventListener(b.MOUSE_UP,this._drawingMouseUpCallback),e.removeEventListener(b.MOUSE_CLICK,this._drawingMouseUpCallback),y.cornerstone.updateImage(e)}},{key:"increaseBrushSize",value:function(){var e=Ca.configuration,t=Ca.setters,n=e.radius,a=Math.floor(1.2*n);a===n&&(a+=1),t.radius(a)}},{key:"decreaseBrushSize",value:function(){var e=Ca.configuration,t=Ca.setters,n=e.radius,a=Math.floor(.8*n);t.radius(a)}},{key:"_isCtrlDown",value:function(e){return e.event&&e.event.ctrlKey||e.ctrlKey}}]),t}(ca),Ea=function(e){return e.filter((function(e){return!(e.isMultiPartTool||e instanceof ro||e instanceof Ma)}))};function wa(e,t){var n,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mouse";if("touch"===a?n=(n=ya(e,yt.touchTools())).filter((function(e){return e.options.isTouchActive})):(n=(n=ya(e,yt.mouseTools())).filter((function(e){return Array.isArray(e.options.mouseButtonMask)&&t&&e.options.mouseButtonMask.includes(t)&&e.options.isMouseActive})),pt.isMultiPartToolActive&&(n=Ea(n))),0!==n.length)return n[0]}var Ia=N("manipulators:moveAllHandles"),Sa=Tt("manipulatorState"),ka={mouse:[b.MOUSE_DRAG],touch:[b.TOUCH_DRAG]},_a={mouse:[b.MOUSE_UP,b.MOUSE_CLICK],touch:[b.TOUCH_END,b.TOUCH_DRAG_END,b.TOUCH_PINCH,b.TOUCH_PRESS,b.TAP]},Pa=function(e,t,n,a){var o=e.element,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"mouse",s=arguments.length>6?arguments[6]:void 0;i=Object.assign({deleteIfHandleOutsideImage:pt.deleteIfHandleOutsideImage,preventHandleOutsideImage:pt.preventHandleOutsideImage},i);var l=Da.bind(this,t,n,i,r),c=function e(a){La(t,n,i,r,{dragHandler:l,upOrEndHandler:e},a,s)};Sa.setters.addActiveManipulatorForElement(o,Oa.bind(null,n,i,r,{dragHandler:l,upOrEndHandler:c},o,s)),n.active=!0,pt.isToolLocked=!0,ka[r].forEach((function(e){o.addEventListener(e,l)})),_a[r].forEach((function(e){o.addEventListener(e,c)}))};function Da(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0,i=o.detail,r=i.element,s=i.image,l=i.buttons,c=o.detail.deltaPoints.image,u=c.x,d=c.y;t.active=!0,t.invalidated=!0;for(var h=Object.keys(t.handles),v=0;v1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=a.dragHandler,i=a.upOrEndHandler,r=arguments.length>4?arguments[4]:void 0,s=arguments.length>5?arguments[5]:void 0;Aa(e,t,n,{dragHandler:o,upOrEndHandler:i},r,s,!1)}function La(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0,i=o.dragHandler,r=o.upOrEndHandler,s=arguments.length>5?arguments[5]:void 0,l=arguments.length>6?arguments[6]:void 0,c=s.detail,u=c.element;Sa.setters.removeActiveManipulatorForElement(u),n.deleteIfHandleOutsideImage&&ga(c,t.handles)&&L(u,e,t),Aa(t,n,a,{dragHandler:i,upOrEndHandler:r},u,l,!0)}function Aa(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=a.dragHandler,i=a.upOrEndHandler,r=arguments.length>4?arguments[4]:void 0,s=arguments.length>5?arguments[5]:void 0,l=!(arguments.length>6&&void 0!==arguments[6])||arguments[6];e.active=!1,e.invalidated=!0,pt.isToolLocked=!1,ka[n].forEach((function(e){r.removeEventListener(e,o)})),_a[n].forEach((function(e){r.removeEventListener(e,i)})),"function"==typeof t.doneMovingCallback&&(Ia.warn("`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details."),t.doneMovingCallback(l)),"function"==typeof s&&s(l),y.cornerstone.updateImage(r)}var Ha=N("manipulators:moveHandle"),Ra=Tt("manipulatorState"),Ua={value:!1},Na={mouse:[b.MOUSE_DRAG],touch:[b.TOUCH_DRAG]},Fa={mouse:[b.MOUSE_UP,b.MOUSE_CLICK],touch:[b.TOUCH_END,b.TOUCH_DRAG_END,b.TOUCH_PINCH,b.TOUCH_PRESS,b.TAP]},Ba=function(e,t,n,a){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"mouse",r=arguments.length>6?arguments[6]:void 0;o=Object.assign({deleteIfHandleOutsideImage:pt.deleteIfHandleOutsideImage,preventHandleOutsideImage:pt.preventHandleOutsideImage},o);var s=e.element,l=Va.bind(this,t,n,a,o,i),c=function s(){za(t,e,n,a,o,i,{dragHandler:l,upOrEndHandler:s},r)};if(Ra.setters.addActiveManipulatorForElement(s,qa.bind(null,t,e,n,a,o,i,{dragHandler:l,upOrEndHandler:c},r)),a.active=!0,a.moving=!0,n.active=!0,pt.isToolLocked=!0,Na[i].forEach((function(e){s.addEventListener(e,l)})),Fa[i].forEach((function(e){s.addEventListener(e,c)})),"touch"===i){Ua.value=!0;var u=y.cornerstone.getEnabledElement(s),d=-57,h={x:e.currentPoints.page.x,y:e.currentPoints.page.y+d},v=y.cornerstone.pageToPixel(s,h.x,h.y);Wa(a,Ua,u,v)}};function Va(e,t,n,a,o,i){var r=i.detail,s=r.image,l=r.currentPoints,c=r.element,u=r.buttons,d=l.page,h=y.cornerstone.pageToPixel(c,d.x,"touch"===o?d.y+-57:d.y);Ua.value=!1,n.active=!0,n.hasMoved=!0,n.x=h.x,n.y=h.y,t.invalidated=!0,a.preventHandleOutsideImage&&ma(n,s),y.cornerstone.updateImage(c);var v=wa(c,u,o);v instanceof ro&&v.updateCachedStats(s,c,t),C(c,b.MEASUREMENT_MODIFIED,{toolName:e,toolType:e,element:c,measurementData:t})}function qa(e,t,n,a){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5?arguments[5]:void 0,r=arguments.length>6?arguments[6]:void 0,s=r.dragHandler,l=r.upOrEndHandler,c=arguments.length>7?arguments[7]:void 0;ja(e,t,n,a,o,i,{dragHandler:s,upOrEndHandler:l},c,!1)}function za(e,t,n,a){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5?arguments[5]:void 0,r=arguments.length>6?arguments[6]:void 0,s=r.dragHandler,l=r.upOrEndHandler,c=arguments.length>7?arguments[7]:void 0,u=t.element;Ra.setters.removeActiveManipulatorForElement(u),ja(e,t,n,a,o,i,{dragHandler:s,upOrEndHandler:l},c,!0)}function ja(e,t,n,a){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5?arguments[5]:void 0,r=arguments.length>6?arguments[6]:void 0,s=r.dragHandler,l=r.upOrEndHandler,c=arguments.length>7?arguments[7]:void 0,u=!(arguments.length>8&&void 0!==arguments[8])||arguments[8],d=t.element;a.active=!1,a.moving=!1,n.active=!1,n.invalidated=!0,Ua.value=!1,pt.isToolLocked=!1,Na[i].forEach((function(e){d.removeEventListener(e,s)})),Fa[i].forEach((function(e){d.removeEventListener(e,l)})),o.deleteIfHandleOutsideImage&&ga(t,n.handles)&&L(d,e,n),"function"==typeof o.doneMovingCallback&&(Ha.warn("`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details."),o.doneMovingCallback(u)),"function"==typeof c&&c(u),y.cornerstone.updateImage(d)}function Wa(e,t,n,a){if(t.value){var o=Math.abs(e.y-a.y),i=o/10;if(o<1)return e.y=a.y,void(t.value=!1);e.y>a.y?e.y-=i:e.y5&&void 0!==arguments[5]?arguments[5]:"mouse",r=arguments.length>6?arguments[6]:void 0;(o=Object.assign({deleteIfHandleOutsideImage:pt.deleteIfHandleOutsideImage,preventHandleOutsideImage:pt.preventHandleOutsideImage},o)).hasMoved=!1;var s=e.element;function l(e){$a(t,n,a,o,i,e)}function c(e){Qa(t,n,a,o,i,{moveHandler:l,moveEndHandler:c},e,r)}n.active=!0,a.moving=!0,a.active=!0,pt.isToolLocked=!0,Xa[i].forEach((function(e){s.addEventListener(e,l)})),s.addEventListener(b.TOUCH_START,to),Ka[i].forEach((function(e){s.addEventListener(e,c)})),Ya.setters.addActiveManipulatorForElement(s,eo.bind(null,n,a,o,i,{moveHandler:l,moveEndHandler:c},s,r))};function $a(e,t,n,a,o,i){var r=i.detail,s=r.currentPoints,l=r.image,c=r.element,u=r.buttons;a.hasMoved=!0;var d=s.page,h=y.cornerstone.pageToPixel(c,"touch"===o?d.x+-57:d.x,"touch"===o?d.y+-57:d.y);t.invalidated=!0,n.active=!0,n.x=h.x,n.y=h.y,a&&a.preventHandleOutsideImage&&ma(n,l),y.cornerstone.updateImage(c);var v=wa(c,u,o);v instanceof ro&&v.updateCachedStats(l,c,t),C(c,b.MEASUREMENT_MODIFIED,{toolName:e,toolType:e,element:c,measurementData:t})}function Ja(e,t,n,a,o){var i=a.moveHandler,r=a.moveEndHandler,s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];Xa[e].forEach((function(e){n.removeEventListener(e,i)})),Ka[e].forEach((function(e){n.removeEventListener(e,r)})),n.removeEventListener(b.TOUCH_START,to),pt.isToolLocked=!1,"function"==typeof o&&o(s),"function"==typeof t.doneMovingCallback&&(Ga.warn("`options.doneMovingCallback` has been depricated. See https://github.com/cornerstonejs/cornerstoneTools/pull/915 for details."),t.doneMovingCallback(s)),y.cornerstone.updateImage(n)}function Qa(e,t,n,a,o,i,r,s){var l=i.moveHandler,c=i.moveEndHandler,u=r.detail,d=u.element,h=u.currentPoints;if(!1!==a.hasMoved){var v=h.page,g=y.cornerstone.pageToPixel(d,"touch"===o?v.x+-57:v.x,"touch"===o?v.y+-57:v.y);t.active=!1,t.invalidated=!0,n.active=!1,n.moving=!1,n.x=g.x,n.y=g.y,Ya.setters.removeActiveManipulatorForElement(d),a.preventHandleOutsideImage&&ma(n,r.detail.image),a.deleteIfHandleOutsideImage&&ga(r.detail,t.handles)&&(t.cancelled=!0,L(d,e,t)),Ja(o,a,d,{moveHandler:l,moveEndHandler:c},s,!0)}}function eo(e,t,n,a,o,i,r){var s=o.moveHandler,l=o.moveEndHandler;e.active=!1,e.invalidated=!0,t.active=!1,Ja(a,n,i,{moveHandler:s,moveEndHandler:l},r,!1)}function to(e){return e.stopImmediatePropagation(),!1}var no=function(e,t,n,a,o){n.active=!0,pt.isToolLocked=!0,Ba(e.detail,t.name,n,a,t.options,o),e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault()},ao=function(e,t,n,a){for(var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"mouse",i=0;i3&&void 0!==arguments[3]?arguments[3]:"mouse";n.active=!0,pt.isToolLocked=!0,Pa(e.detail,t.name,n,null,t.options,a,(function(){n.active=!1,pt.isToolLocked=!1})),e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault()},io=N("baseAnnotationTool"),ro=function(e){function t(){return r()(this,t),u()(this,h()(t).apply(this,arguments))}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){throw new Error("Method createNewMeasurement not implemented for ".concat(this.name,"."))}},{key:"pointNearTool",value:function(e,t,n){arguments.length>3&&void 0!==arguments[3]&&arguments[3];throw new Error("Method pointNearTool not implemented for ".concat(this.name,"."))}},{key:"distanceFromPoint",value:function(e,t,n){throw new Error("Method distanceFromPoint not implemented for ".concat(this.name,"."))}},{key:"renderToolData",value:function(e){throw new Error("renderToolData not implemented for ".concat(this.name,"."))}},{key:"mouseMoveCallback",value:function(e){for(var t=e.detail,n=t.element,a=t.currentPoints.canvas,o=O(n,this.name),i=!1,r=0;r3&&void 0!==arguments[3]?arguments[3]:"mouse";no(e,this,t,n,a)}},{key:"toolSelectedCallback",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mouse";oo(e,this,t,n)}},{key:"updateCachedStats",value:function(e,t,n){io.warn("updateCachedStats not implemented for ".concat(this.name,"."))}}]),t}(ca),so=function(e,t,n,a){var o=y.cornerstone,i={start:o.pixelToCanvas(e,t),end:o.pixelToCanvas(e,n)};return y.cornerstoneMath.lineSegment.distanceToPoint(i,a)},lo=function(e,t){var n=Math.pow(10,t);return Math.round(e*n)/n},co=xt.cursor,uo=function(){function e(t,n){r()(this,e),this.iconGroupString=t,this.options=Object.assign({},co.getters.defaultOptions(),n)}return l()(e,[{key:"getIconSVG",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._generateIconSVGString(e);return new Blob([t],{type:"image/svg+xml"})}},{key:"getIconSVGString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._generateIconSVGString(e)}},{key:"getIconWithPointerSVG",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._generateIconWithPointerSVGString(e);return new Blob([t],{type:"image/svg+xml"})}},{key:"getIconWithPointerString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._generateIconWithPointerSVGString(e)}},{key:"_generateIconWithPointerSVGString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign({},this.options,e),n=t.mousePointerGroupString,a=t.iconSize,o=t.viewBox,i=a/Math.max(o.x,o.y),r=16+a,s='\n \n \n ').concat(n,'\n \n \n ').concat(this.iconGroupString,"\n \n ");return this._injectColors(s,t)}},{key:"_generateIconSVGString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign({},this.options,e),n=t.iconSize,a=t.viewBox,o='\n \n ').concat(this.iconGroupString,"\n ");return this._injectColors(o,t)}},{key:"_injectColors",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.activeColor||un.getActiveColor(),a=t.toolColor||un.getToolColor(),o=t.fillColor||un.getFillColor();return e.replace(/ACTIVE_COLOR/g,"".concat(n)).replace(/TOOL_COLOR/g,"".concat(a)).replace(/FILL_COLOR/g,"".concat(o))}},{key:"mousePoint",get:function(){var e=this.options.mousePoint;return"".concat(e.x," ").concat(e.y)}}]),e}(),ho=new uo('',{viewBox:{x:1792,y:1792}}),vo=new uo('\n \n ',{viewBox:{x:24,y:24}}),go=new uo('\n \n \n \n \n \n \n ',{viewBox:{x:48,y:48}}),fo=new uo('\n \n \n \n \n ',{viewBox:{x:32,y:32}}),mo=new uo('',{viewBox:{x:32,y:32}}),po=new uo('',{viewBox:{x:32,y:32}}),yo=new uo('\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ',{viewBox:{x:18,y:18}}),xo=new uo('\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ',{viewBox:{x:18,y:18}}),To=new uo('\n \n ',{viewBox:{x:24,y:24}}),bo=new uo('',{viewBox:{x:1792,y:1792}}),Co=new uo('',{viewBox:{x:1792,y:1792}}),Mo=new uo('',{viewBox:{x:1792,y:1792}}),Eo=new uo('',{viewBox:{x:1792,y:1792}}),wo=new uo('',{viewBox:{x:2048,y:1792}}),Io=new uo('',{viewBox:{x:512,y:512}}),So=new uo('',{viewBox:{x:1792,y:1792}}),ko=new uo('',{viewBox:{x:1792,y:1792}}),_o=new uo('',{viewBox:{x:24,y:28}}),Po=new uo('',{viewBox:{x:1792,y:1792}}),Do=new uo('\n ',{viewBox:{x:18,y:18}}),Oo=new uo('\n ',{viewBox:{x:640,y:512}}),Lo={x:127,y:60},Ao=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"ACTIVE_COLOR";return'')},Ho=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"ACTIVE_COLOR";return'\n ')},Ro='',Uo='',No='',Fo=new uo("".concat(Ro," ").concat(Ao()),{viewBox:Lo}),Bo=new uo("".concat(Ro," ").concat(Ho()),{viewBox:Lo}),Vo=new uo("".concat(Ro," ").concat(Ao()),{viewBox:Lo}),qo=new uo("".concat(Ro," ").concat(Ho()),{viewBox:Lo}),zo=new uo("".concat(Uo," ").concat(Ao()),{viewBox:Lo}),jo=new uo("".concat(Uo," ").concat(Ho()),{viewBox:Lo}),Wo=new uo("".concat(Uo," ").concat(Ao()),{viewBox:Lo}),Go=new uo("".concat(Uo," ").concat(Ho()),{viewBox:Lo}),Yo=new uo("".concat(No," ").concat(Ao()),{viewBox:Lo}),Xo=new uo("".concat(No," ").concat(Ho()),{viewBox:Lo}),Ko=new uo("".concat(No," ").concat(Ao()),{viewBox:Lo}),Zo=new uo("".concat(No," ").concat(Ho()),{viewBox:Lo});function $o(e){var t=y.cornerstone.metaData.get("imagePlaneModule",e.imageId);return t?{rowPixelSpacing:t.rowPixelSpacing||t.rowImagePixelSpacing,colPixelSpacing:t.columnPixelSpacing||t.colImagePixelSpacing}:{rowPixelSpacing:e.rowPixelSpacing,colPixelSpacing:e.columnPixelSpacing}}var Jo=function(e){var t=T()(e);return null!==e&&("object"===t||"function"===t)};var Qo=function(e,t,n){var a,o,i,r,s,l,c=0,u=!1,d=!1,h=!0,v=!t&&0!==t&&"function"==typeof window.requestAnimationFrame;if("function"!=typeof e)throw new TypeError("Expected a function");function g(t){var n=a,i=o;return a=o=void 0,c=t,r=e.apply(i,n)}function f(e,t){return v?window.requestAnimationFrame(e):setTimeout(e,t)}function m(e){return c=e,s=f(y,t),u?g(e):r}function p(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=i}function y(){var e=Date.now();if(p(e))return x(e);s=f(y,function(e){var n=e-c,a=t-(e-l);return d?Math.min(a,i-n):a}(e))}function x(e){return s=void 0,h&&a?g(e):(a=o=void 0,r)}function T(){for(var e=Date.now(),n=p(e),i=arguments.length,c=new Array(i),u=0;u0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Angle",supportedInteractionTypes:["Mouse","Touch"],svgCursor:ho,configuration:{drawHandles:!0,drawHandlesOnHover:!1,hideHandlesIfMoving:!1,renderDashed:!1}};return(e=u()(this,h()(t).call(this,n,a))).preventNewMeasurement=!1,e.throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},middle:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}}}},{key:"pointNearTool",value:function(e,t,n){return!1!==t.visible&&(so(e,t.handles.start,t.handles.middle,n)<25||so(e,t.handles.middle,t.handles.end,n)<25)}},{key:"updateCachedStats",value:function(e,t,n){var a=ai(e,n.handles.middle,n.handles.start),o=ai(e,n.handles.end,n.handles.middle),i=ai(e,n.handles.end,n.handles.start),r=ni(a),s=ni(o),l=ni(i),c=Math.acos((Math.pow(r,2)+Math.pow(s,2)-Math.pow(l,2))/(2*r*s));c*=180/Math.PI,n.rAngle=lo(c,2),n.invalidated=!1}},{key:"renderToolData",value:function(e){var t=this,n=e.detail,a=n.enabledElement,o=this.configuration,i=o.handleRadius,r=o.drawHandlesOnHover,s=o.hideHandlesIfMoving,l=o.renderDashed,c=O(e.currentTarget,this.name),u=Tt("globalConfiguration").configuration.lineDash;if(c)for(var d=En(n.canvasContext.canvas),h=n.image,v=n.element,g=$o(h),f=g.rowPixelSpacing,m=g.colPixelSpacing,p=Xt.getToolWidth(),x=function(e){var o=c.data[e];if(!1===o.visible)return"continue";Wt(d,(function(e){In(e,t.configuration);var c=un.getColorIfActive(o),d=y.cornerstone.pixelToCanvas(n.element,o.handles.start),g=y.cornerstone.pixelToCanvas(n.element,o.handles.middle),x={color:c};l&&(x.lineDash=u),$t(e,n.element,o.handles.start,[o.handles.middle,o.handles.end],x);var T={color:c,handleRadius:i,drawHandlesIfActive:r,hideHandlesIfMoving:s};if(t.configuration.drawHandles&&dn(e,n,o.handles,T),!0===o.invalidated&&(o.rAngle?t.throttledUpdateCachedStats(h,v,o):t.updateCachedStats(h,v,o)),o.rAngle){var C,M=function(e,t,n){var a=t&&n?"":" (isotropic)";return e.rAngle.toString()+String.fromCharCode(parseInt("00B0",16))+a}(o,f,m);if(!o.handles.textBox.hasMoved){C={x:g.x,y:g.y};var E=Tn(e,M,5);g.x0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"ArrowAnnotate",supportedInteractionTypes:["Mouse","Touch"],configuration:{getTextCallback:ii,changeTextCallback:ri,drawHandles:!0,drawHandlesOnHover:!1,hideHandlesIfMoving:!1,arrowFirst:!0,renderDashed:!1,allowEmptyLabel:!1},svgCursor:vo};return(e=u()(this,h()(t).call(this,n,a))).preventNewMeasurement=!1,e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){return{visible:!0,active:!0,color:void 0,handles:{start:{x:e.detail.currentPoints.image.x,y:e.detail.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.detail.currentPoints.image.x,y:e.detail.currentPoints.image.y,highlight:!0,active:!1},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}}}},{key:"pointNearTool",value:function(e,t,n){return!1!==t.visible&&so(e,t.handles.start,t.handles.end,n)<25}},{key:"updateCachedStats",value:function(){}},{key:"renderToolData",value:function(e){var t=this,n=e.detail,a=n.element,o=n.enabledElement,i=this.configuration,r=i.handleRadius,s=i.drawHandlesOnHover,l=i.hideHandlesIfMoving,c=i.renderDashed,u=O(a,this.name);if(u){var d,h=e.detail.canvasContext.canvas,v=En(h),g=Xt.getToolWidth();c&&(d=Tt("globalConfiguration").configuration.lineDash);for(var f=function(n){var i=u.data[n];if(!1===i.visible)return"continue";Wt(v,(function(n){In(n,t.configuration);var c=un.getColorIfActive(i),u=y.cornerstone.pixelToCanvas(a,i.handles.start),h=y.cornerstone.pixelToCanvas(a,i.handles.end);t.configuration.arrowFirst?Jt(n,h,u,c,g,d):Jt(n,u,h,c,g,d);var v={color:c,handleRadius:r,drawHandlesIfActive:s,hideHandlesIfMoving:l};t.configuration.drawHandles&&dn(n,e.detail,i.handles,v);var f=function(e){return e.text}(i);if(f&&""!==f){var m=Tn(n,f,5),x=pn.getFontSize()+10,T=Math.max(m,x)/2+5;if(h.x3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({x:e,y:t,index:n,drawnIndependently:!1,allowedOutsideImage:!1,highlight:!0,active:!1},a)},li=function(e){var t=e.currentPoints.image,n=t.x,a=t.y;return{toolName:this.name,toolType:this.name,isCreating:!0,visible:!0,active:!0,invalidated:!0,handles:{start:si(n,a,0),end:si(n,a,1,{active:!0}),perpendicularStart:si(n,a,2,{locked:!0}),perpendicularEnd:si(n,a,3),textBox:si(n-50,a-70,null,{highlight:!1,hasMoved:!0,active:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0})},longestDiameter:0,shortestDiameter:0}},ci=function(e,t,n,a){var o=y.cornerstone,i=y.cornerstoneMath,r={start:o.pixelToCanvas(e,t.perpendicularStart),end:o.pixelToCanvas(e,t.perpendicularEnd)};return i.lineSegment.distanceToPoint(r,n)3&&void 0!==arguments[3]?arguments[3]:"mouse",o=y.cornerstone,i=y.cornerstoneMath,r=t.handles,s={start:o.pixelToCanvas(e,r.start),end:o.pixelToCanvas(e,r.end)},l=i.lineSegment.distanceToPoint(s,n);if(ua(r.textBox,n))return!0;var c="mouse"===a?pt.clickProximity:pt.touchProximity;return!!ci(e,r,n,c)||l3&&void 0!==arguments[3]?arguments[3]:6,o=ha(e,t,n,a),i=!1;return Object.keys(t).forEach((function(e){if("textBox"!==e){var n=t[e],a=n===o;n.active!==a&&(i=!0),n.active=a}})),i}(a,s.handles,r);Object.keys(s.handles).forEach((function(e){if("textBox"!==e){var t=s.handles[e];t.hover=t.active}})),l&&(i=!0);var c=t.pointNearTool(a,s,r,"mouse"),u=c&&!s.active,d=!c&&s.active;(u||d)&&(s.active=!s.active,i=!0)},s=0;s3&&void 0!==arguments[3]?arguments[3]:"mouse";"touch"===a?this.handleSelectedTouchCallback(e):this.handleSelectedMouseCallback(e)};function bi(e,t,n,a){var o=(n.x-a.x)/t,i=(n.y-a.y)/e;return Math.sqrt(o*o+i*i)}function Ci(e,t){return{start:e,end:t}}function Mi(e,t,n){var a=y.cornerstoneMath.lineSegment,o=e.handles,i=o.start,r=o.end,s=o.perpendicularStart,l=o.perpendicularEnd,c=t.image,u=c.columnPixelSpacing,d=void 0===u?1:u,h=c.rowPixelSpacing,v=void 0===h?1:h,g=Ci(i,r),f=Ci(s,l),m=a.intersectLine(g,f);return{columnPixelSpacing:d,rowPixelSpacing:v,start:i,end:r,perpendicularStart:s,perpendicularEnd:l,longLine:g,intersection:m,distanceToFixed:bi(d,v,n,m),fixedPoint:n}}function Ei(e,t,n,a){var o=Mi(t,n,a),i=o.columnPixelSpacing,r=o.rowPixelSpacing,s=o.distanceToFixed,l=bi(i,r,a,e);if(l<=s)return!1;var c=s/l,u=function(e,t){var n=e.columnPixelSpacing,a=e.rowPixelSpacing,o=e.start,i=e.perpendicularStart,r=e.perpendicularEnd,s=e.intersection,l=e.fixedPoint,c=bi(n,a,i,s),u=bi(n,a,r,s),d=di(n,a,l,t),h=l===o?1:-1,v=h*a,g=h*n;return{start:{x:t.x+d.y*c*v,y:t.y+d.x*c*g*-1},end:{x:t.x+d.y*u*v*-1,y:t.y+d.x*u*g}}}(o,{x:a.x+(e.x-a.x)*c,y:a.y+(e.y-a.y)*c});return t.handles.perpendicularStart.x=u.start.x,t.handles.perpendicularStart.y=u.start.y,t.handles.perpendicularEnd.x=u.end.x,t.handles.perpendicularEnd.y=u.end.y,!0}function wi(e,t){return e===t}function Ii(e,t){return wi(e,t)?-1:1}var Si=n(10),ki=n.n(Si);function _i(e,t,n,a){var o,i=e.columnPixelSpacing,r=e.rowPixelSpacing,s=e.fixedPoint,l=e.perpendicularStart,c=e.perpendicularEnd,u=e.distanceToFixed,d=Ii(s,c)*u,h=function(e,t,n){return wi(e,n)?t:n}(s,l,c)===l,v=h?"start":"end",g=h?"end":"start";return o={},ki()(o,v,{x:n.start.x,y:n.start.y}),ki()(o,g,{x:t.x+a.y*r*d,y:t.y+a.x*i*d*-1}),o}function Pi(e,t,n,a){var o=y.cornerstoneMath.lineSegment,i=Mi(t,n,a),r=i.columnPixelSpacing,s=i.rowPixelSpacing,l=i.start,c=i.longLine,u=i.intersection;if(!function(e,t,n){return 0!==bi(e,t,n.start,n.end)}(r,s,c))return!1;var d=di(r,s,l,u),h=function(e,t,n){var a=e.columnPixelSpacing,o=e.rowPixelSpacing,i=e.perpendicularEnd,r=e.fixedPoint,s=Number.MAX_SAFE_INTEGER,l=Ii(r,i)*s;return{start:t,end:{x:t.x+n.y*o*l,y:t.y+n.x*a*l*-1}}}(i,e,d),v=o.intersectLine(c,h);if(!v)return!1;var g=_i(i,v,h,d);return t.handles.perpendicularStart.x=g.start.x,t.handles.perpendicularStart.y=g.start.y,t.handles.perpendicularEnd.x=g.end.x,t.handles.perpendicularEnd.y=g.end.y,!0}var Di=function(e,t,n,a){var o,i,r,s,l={},c={},u={x:t.currentPoints.image.x+a.x,y:t.currentPoints.image.y+a.y};0===e.index?Ei(u,n,t,n.handles.end)?(e.x=u.x,e.y=u.y):(t.currentPoints.image.x=e.x,t.currentPoints.image.y=e.y):1===e.index?Ei(u,n,t,n.handles.start)?(e.x=u.x,e.y=u.y):(t.currentPoints.image.x=e.x,t.currentPoints.image.y=e.y):2===e.index?(o=!1,l.start={x:n.handles.start.x,y:n.handles.start.y},l.end={x:n.handles.end.x,y:n.handles.end.y},c.start={x:n.handles.perpendicularEnd.x,y:n.handles.perpendicularEnd.y},c.end={x:u.x,y:u.y},(i=y.cornerstoneMath.lineSegment.intersectLine(l,c))||(c.end={x:n.handles.perpendicularStart.x,y:n.handles.perpendicularStart.y},i=y.cornerstoneMath.lineSegment.intersectLine(l,c),r=y.cornerstoneMath.point.distance(i,n.handles.start),s=y.cornerstoneMath.point.distance(i,n.handles.end),(!i||r<3||s<3)&&(o=!0)),!1,o||Pi(u,n,t,n.handles.perpendicularEnd)||(t.currentPoints.image.x=n.handles.perpendicularStart.x,t.currentPoints.image.y=n.handles.perpendicularStart.y)):3===e.index&&(o=!1,l.start={x:n.handles.start.x,y:n.handles.start.y},l.end={x:n.handles.end.x,y:n.handles.end.y},c.start={x:n.handles.perpendicularStart.x,y:n.handles.perpendicularStart.y},c.end={x:u.x,y:u.y},(i=y.cornerstoneMath.lineSegment.intersectLine(l,c))||(c.end={x:n.handles.perpendicularEnd.x,y:n.handles.perpendicularEnd.y},i=y.cornerstoneMath.lineSegment.intersectLine(l,c),r=y.cornerstoneMath.point.distance(i,n.handles.start),s=y.cornerstoneMath.point.distance(i,n.handles.end),(!i||r<3||s<3)&&(o=!0)),!1,o||Pi(u,n,t,n.handles.perpendicularStart)||(t.currentPoints.image.x=n.handles.perpendicularEnd.x,t.currentPoints.image.y=n.handles.perpendicularEnd.y))},Oi=function(e,t,n){var a=e[n],o=t[n];e[n]=o,t[n]=a},Li=function(e,t){Oi(e,t,"x"),Oi(e,t,"y"),Oi(e,t,"moving"),Oi(e,t,"hover"),Oi(e,t,"active"),Oi(e,t,"selected")};var Ai=function(e){var t,n=this,a=e.detail,o=a.element,i=pt.clickProximity,r=function(e){t.invalidated=!0,ga(a,t.handles)&&L(o,n.name,t),e&&(e.moving=!1,e.selected=!0),Et(n.element,n.svgCursor),y.cornerstone.updateImage(o),o.addEventListener(b.MOUSE_MOVE,n._moveCallback),o.addEventListener(b.TOUCH_START,n._moveCallback)},s=a.startPoints.canvas,l=O(e.currentTarget,this.name);if(l){for(var c=function(c){t=l.data[c];var u=[o,t.handles,s,i],d=ha.apply(void 0,u);if(d)return o.removeEventListener(b.MOUSE_MOVE,n._moveCallback),o.removeEventListener(b.TOUCH_START,n._moveCallback),t.active=!0,Hi(t.handles),d.moving=!0,(d=function(e,t,n){var a=e.image,o=a.rowPixelSpacing,i=a.columnPixelSpacing,r=t.handles,s=r.start,l=r.end,c=r.perpendicularStart,u=r.perpendicularEnd,d=(s.x-l.x)*(i||1),h=(s.y-l.y)*(o||1),v=Math.sqrt(d*d+h*h),g=(c.x-u.x)*(i||1),f=(c.y-u.y)*(o||1);return(Math.sqrt(g*g+f*f)||0)>v?(Li(s,l),Li(s,c),Li(l,u),Object.values(r).find((function(e){return!0===e.moving}))):n}(a,t,d)).hasBoundingBox||wt(n.element),function(e,t,n,a,o,i){var r=e.element,s=e.image,l=e.buttons,c={x:a.x-e.currentPoints.image.x,y:a.y-e.currentPoints.image.y},u=function(e){var o=e.detail;a.hasMoved=!0,void 0===a.index||null===a.index?(a.x=o.currentPoints.image.x+c.x,a.y=o.currentPoints.image.y+c.y):Di(a,o,n,c),i&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,o.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,o.image.height)),n.invalidated=!0,y.cornerstone.updateImage(r);var u=wa(r,l,"mouse");u instanceof ro&&u.updateCachedStats(s,r,n);var d={toolName:t,toolType:t,element:r,measurementData:n};y.cornerstone.triggerEvent(r,b.MEASUREMENT_MODIFIED,d)};a.active=!0,a.moving=!0,pt.isToolLocked=!0,r.addEventListener(b.MOUSE_DRAG,u),r.addEventListener(b.TOUCH_DRAG,u);var d=y.cornerstone.getImage(r),h=function(){y.cornerstone.getImage(r).imageId!==d.imageId&&v()};r.addEventListener(y.cornerstone.EVENTS.IMAGE_RENDERED,h);var v=function e(){a.active=!1,pt.isToolLocked=!1,r.removeEventListener(y.cornerstone.EVENTS.IMAGE_RENDERED,h),r.removeEventListener(b.MOUSE_DRAG,u),r.removeEventListener(b.MOUSE_UP,e),r.removeEventListener(b.MOUSE_CLICK,e),r.removeEventListener(b.TOUCH_DRAG,u),r.removeEventListener(b.TOUCH_DRAG_END,e),r.removeEventListener(b.TAP,e),y.cornerstone.updateImage(r),"function"==typeof o&&o()};r.addEventListener(b.MOUSE_UP,v),r.addEventListener(b.MOUSE_CLICK,v),r.addEventListener(b.TOUCH_DRAG_END,v),r.addEventListener(b.TAP,v)}(a,n.name,t,d,(function(){return r(d)})),Ui(e),{v:!0}},u=0;ud){var f=d;d=g,g=f}return{longestDiameter:d.toFixed(1),shortestDiameter:g.toFixed(1)}}(n,$o(e)),o=a.longestDiameter,i=a.shortestDiameter;n.longestDiameter=o,n.shortestDiameter=i,n.invalidated=!1}}}]),t}(ro),Wi=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=y.cornerstone,o=a.metaData.get("patientStudyModule",e.imageId),i=a.metaData.get("generalSeriesModule",e.imageId);if(o&&i){var r=i.modality;if("PT"===r){var s=n?t:t*e.slope+e.intercept,l=o.patientWeight;if(l){var c=a.metaData.get("petIsotopeModule",e.imageId);if(c){var u=c.radiopharmaceuticalInfo,d=u.radiopharmaceuticalStartTime,h=u.radionuclideTotalDose,v=u.radionuclideHalfLife,g=i.seriesTime;if(d&&h&&v&&g){var f=Gi(g.fractionalSeconds||0)+g.seconds+60*g.minutes+60*g.hours*60,m=Gi(d.fractionalSeconds||0)+d.seconds+60*d.minutes+60*d.hours*60,p=f-m,x=h*Math.exp(-p*Math.log(2)/v),T=s*l/x*1e3;return T}}}}}};function Gi(e){return parseFloat(".".concat(e))}var Yi=function(e,t){var n=e.width/2,a=e.height/2;if(n<=0||a<=0)return!1;var o=e.left+n,i=e.top+a,r=t.x-o,s=t.y-i;return r*r/(n*n)+s*s/(a*a)<=1},Xi=function(e,t){for(var n=0,a=0,o=0,i=0,r=null,s=null,l=t.top;l=0&&e.rotation<90&&(i.x=e.hflip?n.left.x:n.right.x,i.y=o),e.rotation>=90&&e.rotation<180&&(i.x=a,i.y=e.vflip?n.bottom.y:n.top.y),e.rotation>=180&&e.rotation<270&&(i.x=e.hflip?n.right.x:n.left.x,i.y=o),e.rotation>=270&&e.rotation<360&&(i.x=a,i.y=e.vflip?n.top.y:n.bottom.y),i}var $i=function(e){var t=e.toString().split(".");return t[0]=t[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),t.join(".")},Ji=N("tools:annotation:CircleRoiTool"),Qi=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"CircleRoi",supportedInteractionTypes:["Mouse","Touch"],svgCursor:mo,configuration:{renderDashed:!1,hideHandlesIfMoving:!1}};return(e=u()(this,h()(t).call(this,n,a))).throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image)return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},initialRotation:e.viewport.rotation,textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};Ji.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n,a){var o=t&&t.handles&&t.handles.start&&t.handles.end,i=y.cornerstoneMath.point.distance;if(o||Ji.warn("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool")),!o||!1===t.visible)return!1;var r="mouse"===a?15:25,s=y.cornerstone.pixelToCanvas(e,t.handles.start),l=y.cornerstone.pixelToCanvas(e,t.handles.end),c=i(s,n),u=i(s,l);return c>u-r/2&&c2&&void 0!==arguments[2]?arguments[2]:{},a=n.area,o=n.mean,i=n.stdDev,r=n.min,s=n.max,l=n.meanStdDevSUV,c=arguments.length>3?arguments[3]:void 0,u=arguments.length>4?arguments[4]:void 0,d=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},h=d.showMinMax||!1,v=[],g=[];if(!t){var f=l&&0!==l.mean,m=er(c,d.showHounsfieldUnits),p="Mean: ".concat($i(o.toFixed(2))," ").concat(m),y="Std Dev: ".concat($i(i.toFixed(2))," ").concat(m);if(f){for(var x=" SUV: ",T="".concat(x).concat($i(l.mean.toFixed(2))),b="".concat(x).concat($i(l.stdDev.toFixed(2))),C=Math.floor(e.measureText("".concat(y," ")).width);e.measureText(p).width0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"CobbAngle",supportedInteractionTypes:["Mouse","Touch"],svgCursor:fo,configuration:{drawHandles:!0,drawHandlesOnHover:!1,hideHandlesIfMoving:!1,renderDashed:!1}};return(e=u()(this,h()(t).call(this,n,a))).hasIncomplete=!1,e.throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){return this.hasIncomplete=!0,{visible:!0,active:!0,color:void 0,invalidated:!0,complete:!1,value:"",handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},start2:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1,drawnIndependently:!0},end2:{x:e.currentPoints.image.x+1,y:e.currentPoints.image.y,highlight:!0,active:!1,drawnIndependently:!0},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}}}},{key:"pointNearTool",value:function(e,t,n){return!1!==t.visible&&(!this.hasIncomplete&&(so(e,t.handles.start,t.handles.end,n)<25||so(e,t.handles.start2,t.handles.end2,n)<25))}},{key:"updateCachedStats",value:function(e,t,n){var a=$o(e),o=a.rowPixelSpacing,i=a.colPixelSpacing,r=(Math.ceil(n.handles.start.x)-Math.ceil(n.handles.end.x))*(i||1),s=(Math.ceil(n.handles.start.y)-Math.ceil(n.handles.end.y))*(o||1),l=(Math.ceil(n.handles.start2.x)-Math.ceil(n.handles.end2.x))*(i||1),c=(Math.ceil(n.handles.start2.y)-Math.ceil(n.handles.end2.y))*(o||1),u=Math.acos(Math.abs((r*l+s*c)/(Math.sqrt(r*r+s*s)*Math.sqrt(l*l+c*c))));u*=180/Math.PI,n.rAngle=lo(u,2),n.invalidated=!1}},{key:"renderToolData",value:function(e){var t=this,n=e.detail,a=this.configuration,o=a.handleRadius,i=a.drawHandlesOnHover,r=a.hideHandlesIfMoving,s=a.renderDashed,l=O(e.currentTarget,this.name);if(l)for(var c=En(n.canvasContext.canvas),u=Xt.getToolWidth(),d=Tt("globalConfiguration").configuration.lineDash,h=pn.getFont(),v=function(e){var a=l.data[e];if(!1===a.visible)return"continue";Wt(c,(function(e){In(e,t.configuration);var l=un.getColorIfActive(a),c={color:l};s&&(c.lineDash=d),Zt(e,n.element,a.handles.start,a.handles.end,c),a.complete&&Zt(e,n.element,a.handles.start2,a.handles.end2,c);var v={color:l,handleRadius:o,drawHandlesIfActive:i,hideHandlesIfMoving:r};t.configuration.drawHandles&&dn(e,n,a.handles,v),e.fillStyle=l;var g=a.value;if(!a.handles.textBox.hasMoved){var m={x:(a.handles.start.x+a.handles.end.x)/2,y:(a.handles.start.y+a.handles.end.y)/2-10};e.font=h,a.handles.textBox.x=m.x,a.handles.textBox.y=m.y}Cn(e,n.element,a.handles.textBox,g,a.handles,f,l,u,0,!0)}))},g=0;g0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"EllipticalRoi",supportedInteractionTypes:["Mouse","Touch"],configuration:{drawHandlesOnHover:!1,hideHandlesIfMoving:!1,renderDashed:!1},svgCursor:po};return(e=u()(this,h()(t).call(this,n,a))).throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image)return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},initialRotation:e.viewport.rotation,textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};or.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n,a){var o=t&&t.handles&&t.handles.start&&t.handles.end;if(o||or.warn("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool")),!o||!1===t.visible)return!1;if(ha(e,t.handles,n,6))return!0;var i="mouse"===a?15:25,r=y.cornerstone.pixelToCanvas(e,t.handles.start),s=y.cornerstone.pixelToCanvas(e,t.handles.end),l={left:Math.min(r.x,s.x)+i/2,top:Math.min(r.y,s.y)+i/2,width:Math.abs(r.x-s.x)-i,height:Math.abs(r.y-s.y)-i},c={left:Math.min(r.x,s.x)-i/2,top:Math.min(r.y,s.y)-i/2,width:Math.abs(r.x-s.x)+i,height:Math.abs(r.y-s.y)+i},u=Yi(l,n);return!(!Yi(c,n)||u)}},{key:"updateCachedStats",value:function(e,t,n){var a=(y.cornerstone.metaData.get("generalSeriesModule",e.imageId)||{}).modality,o=$o(e),i=function(e,t,n,a,o){var i,r=cr(n.start,n.end),s=y.cornerstone.getPixels(t,r.left,r.top,r.width,r.height),l=Xi(s,r);"PT"===a&&(i={mean:Wi(e,l.mean,!0)||0,stdDev:Wi(e,l.stdDev,!0)||0});return{area:Math.PI*(r.width*(o.colPixelSpacing||1)/2)*(r.height*(o.rowPixelSpacing||1)/2)||0,count:l.count||0,mean:l.mean||0,variance:l.variance||0,stdDev:l.stdDev||0,min:l.min||0,max:l.max||0,meanStdDevSUV:i}}(e,t,n.handles,a,o);n.cachedStats=i,n.invalidated=!1}},{key:"renderToolData",value:function(e){var t=this,n=O(e.currentTarget,this.name);if(n){var a=e.detail,o=a.image,i=a.element,r=Xt.getToolWidth(),s=Tt("globalConfiguration").configuration.lineDash,l=this.configuration,c=l.handleRadius,u=l.drawHandlesOnHover,d=l.hideHandlesIfMoving,h=l.renderDashed,v=En(a.canvasContext.canvas),g=$o(o),f=g.rowPixelSpacing,m=g.colPixelSpacing,p=(y.cornerstone.metaData.get("generalSeriesModule",o.imageId)||{}).modality,x=f&&m;Wt(v,(function(e){for(var l=0;l2&&void 0!==arguments[2]?arguments[2]:{},a=n.area,o=n.mean,i=n.stdDev,r=n.min,s=n.max,l=n.meanStdDevSUV,c=arguments.length>3?arguments[3]:void 0,u=arguments.length>4?arguments[4]:void 0,d=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},h=d.showMinMax||!1,v=[],g=[];if(!t){var f=l&&0!==l.mean,m=rr(c,d.showHounsfieldUnits),p="Mean: ".concat($i(o.toFixed(2))," ").concat(m),y="Std Dev: ".concat($i(i.toFixed(2))," ").concat(m);if(f){for(var x=" SUV: ",T="".concat(x).concat($i(l.mean.toFixed(2))),b="".concat(x).concat($i(l.stdDev.toFixed(2))),C=Math.floor(e.measureText("".concat(y," ")).width);e.measureText(p).widthe.x&&n.x>e.x)return!0;if(t.x===n.x)return e.xn.x){var a=t;t=n,n=a}var o=function(e,t,n){var a=(n.y-t.y)/(n.x-t.x);return{value:t.y+a*(e.x-t.x),gradient:a}}(e,t,n);return Math.sign(o.gradient)*e.y>Math.sign(o.gradient)*o.value}(e,t,n));var a,o,i}function hr(e,t,n,a){ur(e,t)&&(n.value+=a,n.squared+=a*a,n.count++)}var vr=function e(t,n){r()(this,e),this.toolIndex=t,this.handleIndexArray=n},gr=function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];r()(this,e),this.x=t.x,this.y=t.y,this.highlight=n,this.active=a,this.lines=[]};function fr(e,t,n,a){for(var o=e.length-1,i=0;i0?1:2}function xr(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}var Tr={newHandle:function(e,t){var n=t.length-1;return fr(t,pr(t[n]),pr(e),[n])},end:function(e){var t=e.length-1;return fr(e,pr(e[t]),pr(e[0]),[t,0])},modify:function(e,t){var n=pr(e[t]),a=t-1;0===t&&(a=e.length-1);var o=pr(e[a]);return!!fr(e,n,o,[t,a])||fr(e,n,o=pr(e[a=t===e.length-1?0:t+1]),[t,a])}},br=function(){function e(t,n){r()(this,e),this._eventData=t,this._toolName=n}return l()(e,[{key:"findLine",value:function(){var e=this.findTool();if(null===e)return null;var t=this._getCloseLinesInTool(e);return t?this._findCorrectLine(e,t):null}},{key:"findTool",value:function(){return this._toolData=O(this._eventData.element,this._toolName),this._mousePoint=this._eventData.currentPoints.canvas,this._toolData?this._nearestHandleToPointAllTools().toolIndex:null}},{key:"_nearestHandleToPointAllTools",value:function(){for(var e=this._toolData,t={toolIndex:null,handleIndex:null,distance:1/0},n=0;n0&&d0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"FreehandRoi",supportedInteractionTypes:["Mouse","Touch"],configuration:{mouseLocation:{handles:{start:{highlight:!0,active:!0}}},spacing:1,activeHandleRadius:3,completeHandleRadius:6,completeHandleRadiusTouch:28,alwaysShowHandles:!1,invalidColor:"crimson",currentHandle:0,currentTool:-1,drawHandles:!0,renderDashed:!1},svgCursor:yo};return(e=u()(this,h()(t).call(this,n,a))).isMultiPartTool=!0,e._drawing=!1,e._dragging=!1,e._modifying=!1,e._drawingMouseDownCallback=e._drawingMouseDownCallback.bind(Ta()(e)),e._drawingMouseMoveCallback=e._drawingMouseMoveCallback.bind(Ta()(e)),e._drawingMouseDragCallback=e._drawingMouseDragCallback.bind(Ta()(e)),e._drawingMouseUpCallback=e._drawingMouseUpCallback.bind(Ta()(e)),e._drawingMouseDoubleClickCallback=e._drawingMouseDoubleClickCallback.bind(Ta()(e)),e._editMouseUpCallback=e._editMouseUpCallback.bind(Ta()(e)),e._editMouseDragCallback=e._editMouseDragCallback.bind(Ta()(e)),e._drawingTouchStartCallback=e._drawingTouchStartCallback.bind(Ta()(e)),e._drawingTouchDragCallback=e._drawingTouchDragCallback.bind(Ta()(e)),e._drawingDoubleTapClickCallback=e._drawingDoubleTapClickCallback.bind(Ta()(e)),e._editTouchDragCallback=e._editTouchDragCallback.bind(Ta()(e)),e.throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image){var t={visible:!0,active:!0,invalidated:!0,color:void 0,handles:{points:[]}};return t.handles.textBox={active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0},t}Ir.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n){var a=t&&t.handles&&t.handles.points;if(!a)throw new Error("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool"));return!(!a||!1===t.visible)&&void 0!==this._pointNearHandle(e,t,n)}},{key:"distanceFromPoint",value:function(e,t,n){for(var a=1/0,o=0;o3&&void 0!==arguments[3]?arguments[3]:"mouse",o=e.detail.element,i=O(o,this.name);if(n.hasBoundingBox)no(e,this,t,n,a);else{var r=this.configuration;r.dragOrigin={x:n.x,y:n.y};for(var s=0;s=2){var o=n.currentHandle;a.polyBoundingBox={},this._endDrawing(e,o)}}}},{key:"_drawingMouseDoubleClickCallback",value:function(e){var t=e.detail.element;this.completeDrawing(t),Lr(e)}},{key:"_drawingDoubleTapClickCallback",value:function(e){var t=e.detail.element;this.completeDrawing(t),Lr(e)}},{key:"_editMouseDragCallback",value:function(e){var t=e.detail,n=t.element,a=t.buttons;if(this.options.mouseButtonMask.includes(a)){var o,i=O(n,this.name),r=this.configuration,s=i.data[r.currentTool],l=r.currentHandle,c=s.handles.points;if(this._getMouseLocation(t),s.handles.invalidHandlePlacement=Pr.modify(c,l),s.active=!0,s.highlight=!0,c[l].x=r.mouseLocation.handles.start.x,c[l].y=r.mouseLocation.handles.start.y,o=this._getPrevHandleIndex(l,c),l>=0){var u=c[o].lines.length-1,d=c[o].lines[u];d.x=r.mouseLocation.handles.start.x,d.y=r.mouseLocation.handles.start.y}y.cornerstone.updateImage(n)}}},{key:"_editTouchDragCallback",value:function(e){var t,n=e.detail,a=n.element,o=O(a,this.name),i=this.configuration,r=o.data[i.currentTool],s=i.currentHandle,l=r.handles.points;if(this._getMouseLocation(n),r.handles.invalidHandlePlacement=Pr.modify(l,s),r.active=!0,r.highlight=!0,l[s].x=i.mouseLocation.handles.start.x,l[s].y=i.mouseLocation.handles.start.y,t=this._getPrevHandleIndex(s,l),s>=0){var c=l[t].lines.length-1,u=l[t].lines[c];u.x=i.mouseLocation.handles.start.x,u.y=i.mouseLocation.handles.start.y}y.cornerstone.updateImage(a)}},{key:"_getPrevHandleIndex",value:function(e,t){return 0===e?t.length-1:e-1}},{key:"_editMouseUpCallback",value:function(e){var t=e.detail,n=t.element,a=O(n,this.name);this._deactivateModify(n),this._dropHandle(t,a),this._endDrawing(n),y.cornerstone.updateImage(n)}},{key:"_dropHandle",value:function(e,t){var n=this.configuration,a=n.currentTool,o=t.data[a].handles,i=o.points;if(o.invalidHandlePlacement){var r,s=n.currentHandle,l=i[s];if(0===s)r=i[i.length-1];else r=i[s-1];l.x=n.dragOrigin.x,l.y=n.dragOrigin.y,r.lines[0]=l,o.invalidHandlePlacement=!1}}},{key:"_startDrawing",value:function(e){var t,n=e.detail,a=this.createNewMeasurement(n),o=n.element,i=this.configuration;e.type===b.MOUSE_DOWN_ACTIVATE?t="Mouse":e.type===b.TOUCH_START_ACTIVE&&(t="Touch"),this._activateDraw(o,t),this._getMouseLocation(n),D(o,this.name,a);var r=O(o,this.name);i.currentTool=r.data.length-1,this._activeDrawingToolReference=r.data[i.currentTool]}},{key:"_addPoint",value:function(e){var t=e.currentPoints,n=e.element,a=O(n,this.name),o=this.configuration,i=a.data[o.currentTool];if(!i.handles.invalidHandlePlacement){var r=new Dr(t.image);i.handles.points.length&&i.handles.points[o.currentHandle-1].lines.push(t.image),i.handles.points.push(r),o.currentHandle+=1,y.cornerstone.updateImage(n),this.fireModifiedEvent(n,i)}}},{key:"_addPointPencilMode",value:function(e,t){var n=this,a=this.configuration,o=e.element,i=a.mouseLocation.handles.start;t.every((function(e){return n._isDistanceLargerThanSpacing(o,e,i)}))&&this._addPoint(e)}},{key:"_endDrawing",value:function(e,t){var n=O(e,this.name),a=this.configuration,o=n.data[a.currentTool];if(o.active=!1,o.highlight=!1,o.handles.invalidHandlePlacement=!1,void 0!==t){var i=o.handles.points;i[a.currentHandle-1].lines.push(i[0])}this._modifying&&(this._modifying=!1,o.invalidated=!0),a.currentHandle=0,a.currentTool=-1,o.canComplete=!1,this._drawing&&this._deactivateDraw(e),y.cornerstone.updateImage(e),this.fireModifiedEvent(e,o),this.fireCompletedEvent(e,o)}},{key:"_pointNearHandle",value:function(e,t,n){if(void 0!==t.handles&&void 0!==t.handles.points&&!1!==t.visible){for(var a=0;a2?(e.canComplete=!0,r=!1):r=Pr.newHandle(o,i),r}},{key:"_checkHandlesPencilMode",value:function(e,t){var n=this.configuration.mouseLocation.handles.start,a=e.handles.points,o=Pr.newHandle(n,a);return!1===o&&(o=this._invalidHandlePencilMode(e,t)),o}},{key:"_invalidHandlePencilMode",value:function(e,t){var n=this.configuration,a=t.element,o=n.mouseLocation.handles.start,i=e.handles.points;if(this._isDistanceSmallerThanCompleteSpacingCanvas(a,i[0],o))return e.canComplete=!0,!1;e.canComplete=!1;for(var r=1;r")}},{key:"_compareDistanceToSpacing",value:function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:">",o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.configuration.spacing;return">"===a?y.cornerstoneMath.point.distance(t,n)>o:y.cornerstoneMath.point.distance(t,n)1&&void 0!==arguments[1]?arguments[1]:"Mouse";this._drawing=!0,this._drawingInteractionType=t,pt.isMultiPartToolActive=!0,wt(this.element),e.addEventListener(b.MOUSE_DOWN,this._drawingMouseDownCallback),e.addEventListener(b.MOUSE_MOVE,this._drawingMouseMoveCallback),e.addEventListener(b.MOUSE_DOUBLE_CLICK,this._drawingMouseDoubleClickCallback),e.addEventListener(b.MOUSE_DRAG,this._drawingMouseDragCallback),e.addEventListener(b.MOUSE_UP,this._drawingMouseUpCallback),e.addEventListener(b.TOUCH_START,this._drawingMouseMoveCallback),e.addEventListener(b.TOUCH_START,this._drawingTouchStartCallback),e.addEventListener(b.TOUCH_DRAG,this._drawingTouchDragCallback),e.addEventListener(b.TOUCH_END,this._drawingMouseUpCallback),e.addEventListener(b.DOUBLE_TAP,this._drawingDoubleTapClickCallback),y.cornerstone.updateImage(e)}},{key:"_deactivateDraw",value:function(e){this._drawing=!1,pt.isMultiPartToolActive=!1,this._activeDrawingToolReference=null,this._drawingInteractionType=null,Et(this.element,this.svgCursor),e.removeEventListener(b.MOUSE_DOWN,this._drawingMouseDownCallback),e.removeEventListener(b.MOUSE_MOVE,this._drawingMouseMoveCallback),e.removeEventListener(b.MOUSE_DOUBLE_CLICK,this._drawingMouseDoubleClickCallback),e.removeEventListener(b.MOUSE_DRAG,this._drawingMouseDragCallback),e.removeEventListener(b.MOUSE_UP,this._drawingMouseUpCallback),e.removeEventListener(b.TOUCH_START,this._drawingTouchStartCallback),e.removeEventListener(b.TOUCH_DRAG,this._drawingTouchDragCallback),e.removeEventListener(b.TOUCH_START,this._drawingMouseMoveCallback),e.removeEventListener(b.TOUCH_END,this._drawingMouseUpCallback),y.cornerstone.updateImage(e)}},{key:"_activateModify",value:function(e){pt.isToolLocked=!0,e.addEventListener(b.MOUSE_UP,this._editMouseUpCallback),e.addEventListener(b.MOUSE_DRAG,this._editMouseDragCallback),e.addEventListener(b.MOUSE_CLICK,this._editMouseUpCallback),e.addEventListener(b.TOUCH_END,this._editMouseUpCallback),e.addEventListener(b.TOUCH_DRAG,this._editTouchDragCallback),y.cornerstone.updateImage(e)}},{key:"_deactivateModify",value:function(e){pt.isToolLocked=!1,e.removeEventListener(b.MOUSE_UP,this._editMouseUpCallback),e.removeEventListener(b.MOUSE_DRAG,this._editMouseDragCallback),e.removeEventListener(b.MOUSE_CLICK,this._editMouseUpCallback),e.removeEventListener(b.TOUCH_END,this._editMouseUpCallback),e.removeEventListener(b.TOUCH_DRAG,this._editTouchDragCallback),y.cornerstone.updateImage(e)}},{key:"passiveCallback",value:function(e){this._closeToolIfDrawing(e)}},{key:"enabledCallback",value:function(e){this._closeToolIfDrawing(e)}},{key:"disabledCallback",value:function(e){this._closeToolIfDrawing(e)}},{key:"_closeToolIfDrawing",value:function(e){if(this._drawing){var t=this.configuration.currentHandle;this._endDrawing(e,t),y.cornerstone.updateImage(e)}}},{key:"fireModifiedEvent",value:function(e,t){C(e,b.MEASUREMENT_MODIFIED,{toolName:this.name,toolType:this.name,element:e,measurementData:t})}},{key:"fireCompletedEvent",value:function(e,t){C(e,b.MEASUREMENT_COMPLETED,{toolName:this.name,toolType:this.name,element:e,measurementData:t})}},{key:"cancelDrawing",value:function(e){if(this._drawing){var t=O(e,this.name),n=this.configuration,a=t.data[n.currentTool];a.active=!1,a.highlight=!1,a.handles.invalidHandlePlacement=!1,n.currentHandle=0,n.currentTool=-1,a.canComplete=!1,L(e,this.name,a),this._deactivateDraw(e),y.cornerstone.updateImage(e)}}},{key:"newImageCallback",value:function(e){var t=this.configuration;if(this._drawing&&this._activeDrawingToolReference){var n=e.detail.element,a=this._activeDrawingToolReference;a.active=!1,a.highlight=!1,a.handles.invalidHandlePlacement=!1;var o=a.handles.points;o[t.currentHandle-1].lines.push(o[0]),t.currentHandle=0,t.currentTool=-1,a.canComplete=!1,this._deactivateDraw(n),y.cornerstone.updateImage(n)}}},{key:"spacing",get:function(){return this.configuration.spacing},set:function(e){if("number"!=typeof e)throw new Error("Attempting to set freehand spacing to a value other than a number.");this.configuration.spacing=e,y.cornerstone.updateImage(this.element)}},{key:"activeHandleRadius",get:function(){return this.configuration.activeHandleRadius},set:function(e){if("number"!=typeof e)throw new Error("Attempting to set freehand activeHandleRadius to a value other than a number.");this.configuration.activeHandleRadius=e,y.cornerstone.updateImage(this.element)}},{key:"completeHandleRadius",get:function(){return this.configuration.completeHandleRadius},set:function(e){if("number"!=typeof e)throw new Error("Attempting to set freehand completeHandleRadius to a value other than a number.");this.configuration.completeHandleRadius=e,y.cornerstone.updateImage(this.element)}},{key:"alwaysShowHandles",get:function(){return this.configuration.alwaysShowHandles},set:function(e){if("boolean"!=typeof e)throw new Error("Attempting to set freehand alwaysShowHandles to a value other than a boolean.");this.configuration.alwaysShowHandles=e,y.cornerstone.updateImage(this.element)}},{key:"invalidColor",get:function(){return this.configuration.invalidColor},set:function(e){this.configuration.invalidColor=e,y.cornerstone.updateImage(this.element)}}]),t}(ro);function Lr(e){e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault()}var Ar=N("tools:annotation:LengthTool"),Hr=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Length",supportedInteractionTypes:["Mouse","Touch"],svgCursor:To,configuration:{drawHandles:!0,drawHandlesOnHover:!1,hideHandlesIfMoving:!1,renderDashed:!1}};return(e=u()(this,h()(t).call(this,n,a))).throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image){var t=e.currentPoints.image,n=t.x,a=t.y;return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{start:{x:n,y:a,highlight:!0,active:!1},end:{x:n,y:a,highlight:!0,active:!0},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}}}Ar.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n){return t&&t.handles&&t.handles.start&&t.handles.end?!1!==t.visible&&so(e,t.handles.start,t.handles.end,n)<25:(Ar.warn("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool")),!1)}},{key:"updateCachedStats",value:function(e,t,n){var a=$o(e),o=a.rowPixelSpacing,i=a.colPixelSpacing,r=(n.handles.end.x-n.handles.start.x)*(i||1),s=(n.handles.end.y-n.handles.start.y)*(o||1),l=Math.sqrt(r*r+s*s);n.length=l,n.invalidated=!1}},{key:"renderToolData",value:function(e){var t=this,n=e.detail,a=this.configuration,o=a.handleRadius,i=a.drawHandlesOnHover,r=a.hideHandlesIfMoving,s=a.renderDashed,l=O(e.currentTarget,this.name);if(l)for(var c=En(n.canvasContext.canvas),u=n.image,d=n.element,h=$o(u),v=h.rowPixelSpacing,g=h.colPixelSpacing,f=Xt.getToolWidth(),m=Tt("globalConfiguration").configuration.lineDash,p=function(e){var a=l.data[e];if(!1===a.visible)return"continue";Wt(c,(function(e){In(e,t.configuration);var l=un.getColorIfActive(a),c={color:l};s&&(c.lineDash=m),Zt(e,d,a.handles.start,a.handles.end,c);var h={color:l,handleRadius:o,drawHandlesIfActive:i,hideHandlesIfMoving:r};if(t.configuration.drawHandles&&dn(e,n,a.handles,h),!a.handles.textBox.hasMoved){var p={x:Math.max(a.handles.start.x,a.handles.end.x)};p.x===a.handles.start.x?p.y=a.handles.start.y:p.y=a.handles.end.y,a.handles.textBox.x=p.x,a.handles.textBox.y=p.y}!0===a.invalidated&&(a.length?t.throttledUpdateCachedStats(u,d,a):t.updateCachedStats(u,d,a));var y=function(e,t,n){var a=(o=e.length,i=Number(o),isNaN(i)?void 0:i);var o,i;if(!a)return"";var r="mm";t&&n||(r="pixels");return e.unit=r,"".concat(a.toFixed(2)," ").concat(r)}(a,v,g);Cn(e,d,a.handles.textBox,y,a.handles,x,l,f,10,!0)}))},y=0;y0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Probe",supportedInteractionTypes:["Mouse","Touch"],svgCursor:bo,configuration:{drawHandles:!0,renderDashed:!1}};return(e=u()(this,h()(t).call(this,n,a))).throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image)return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0}}};Ur.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n){var a=t&&t.handles&&t.handles.end;if(a||Ur.warn("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool")),!a||!1===t.visible)return!1;var o=y.cornerstone.pixelToCanvas(e,t.handles.end);return y.cornerstoneMath.point.distance(o,n)<5}},{key:"updateCachedStats",value:function(e,t,n){var a=Math.round(n.handles.end.x),o=Math.round(n.handles.end.y),i={};a>=0&&o>=0&&a=0&&m>=0&&f0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"RectangleRoi",supportedInteractionTypes:["Mouse","Touch"],configuration:{drawHandles:!0,drawHandlesOnHover:!1,hideHandlesIfMoving:!1,renderDashed:!1},svgCursor:Co};return(e=u()(this,h()(t).call(this,n,a))).throttledUpdateCachedStats=ei(e.updateCachedStats,110),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){if(e&&e.currentPoints&&e.currentPoints.image)return{visible:!0,active:!0,color:void 0,invalidated:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},initialRotation:e.viewport.rotation,textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};Fr.error("required eventData not supplied to tool ".concat(this.name,"'s createNewMeasurement"))}},{key:"pointNearTool",value:function(e,t,n,a){var o=t&&t.handles&&t.handles.start&&t.handles.end;if(o||Fr.warn("invalid parameters supplied to tool ".concat(this.name,"'s pointNearTool")),!o||!1===t.visible)return!1;var i="mouse"===a?15:25,r=y.cornerstone.pixelToCanvas(e,t.handles.start),s=y.cornerstone.pixelToCanvas(e,t.handles.end),l={left:Math.min(r.x,s.x),top:Math.min(r.y,s.y),width:Math.abs(r.x-s.x),height:Math.abs(r.y-s.y)};return y.cornerstoneMath.rect.distanceToPoint(l,n)5&&void 0!==arguments[5]?arguments[5]:{},h=d.showMinMax||!1,v=[],g=[];if(!t){var f=u&&0!==u.mean,m=zr(a,d.showHounsfieldUnits),p="Mean: ".concat($i(r.toFixed(2))," ").concat(m),y="Std Dev: ".concat($i(s.toFixed(2))," ").concat(m);if(f){for(var x=" SUV: ",T="".concat(x).concat($i(u.mean.toFixed(2))),b="".concat(x).concat($i(u.stdDev.toFixed(2))),C=Math.floor(e.measureText("".concat(y," ")).width);e.measureText(p).width0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"TextMarker",supportedInteractionTypes:["Mouse","Touch"],configuration:{markers:[],current:"",ascending:!0,loop:!1,changeTextCallback:Gr},svgCursor:Mo};return(e=u()(this,h()(t).call(this,n,a))).touchPressCallback=e._changeText.bind(Ta()(e)),e.doubleClickCallback=e._changeText.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"createNewMeasurement",value:function(e){var t=this.configuration;if(t.current){var n={visible:!0,active:!0,text:t.current,color:void 0,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0,hasBoundingBox:!0}}},a={left:0,top:0,width:e.image.width,height:e.image.height};if(y.cornerstoneMath.point.insideRect(n.handles.end,a)){var o=t.markers.indexOf(t.current);return(o+=t.ascending?1:-1)>=t.markers.length?o=t.loop?0:-1:o<0&&(o=t.loop?t.markers.length:-1),t.current=t.markers[o],n}}}},{key:"pointNearTool",value:function(e,t,n){if(!1===t.visible)return!1;if(t.handles.end.boundingBox){var a=y.cornerstoneMath.rect.distanceToPoint(t.handles.end.boundingBox,n),o=ua(t.handles.end,n);return a<10||o}}},{key:"updateCachedStats",value:function(){}},{key:"renderToolData",value:function(e){var t=e.detail,n=this.configuration,a=O(t.element,this.name);if(a)for(var o=En(t.canvasContext.canvas),i=function(e){var i=a.data[e];if(!1===i.visible)return"continue";var r=un.getColorIfActive(i);Wt(o,(function(e){In(e,n);var a=y.cornerstone.pixelToCanvas(t.element,i.handles.end);i.handles.end.boundingBox=bn(e,i.text,a.x,a.y-10,r,{centering:{x:!0,y:!0}})}))},r=0;r0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Brush",supportedInteractionTypes:["Mouse","Touch"],configuration:{},mixins:["renderBrushMixin"]};return(e=u()(this,h()(t).call(this,n,a))).touchDragCallback=e._paint.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_paint",value:function(e){var t=Yr.configuration,n=e.detail,a=(n.element,n.image),o=a.rows,i=a.columns,r=n.currentPoints.image,s=r.x,l=r.y;if(!(s<0||s>i||l<0||l>o)){var c=be(t.radius,o,i,s,l),u=this.paintEventData,d=u.labelmap2D,h=u.labelmap3D,v=u.shouldErase;te(c,d.pixelData,h.activeSegmentIndex,i,v),y.cornerstone.updateImage(e.detail.element)}}}]),t}(Ma),Kr=N("tools:SphericalBrushTool"),Zr=Tt("segmentation"),$r=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"SphericalBrush",supportedInteractionTypes:["Mouse","Touch"],configuration:{alwaysEraseOnClick:!1},mixins:["renderBrushMixin"]};return(e=u()(this,h()(t).call(this,n,a))).touchDragCallback=e._paint.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_startPainting",value:function(e){var t,n=Zr.configuration,a=Zr.getters,o=e.detail,i=o.element,r=o.image,s=y.cornerstone,l=n.radius,c=r.rows,u=r.columns,d=Math.max(r.rowPixelSpacing,r.columnPixelSpacing),h=O(i,"stack").data[0].imageIds,v=a.labelmap2D(i),g=v.labelmap2D,f=v.labelmap3D,m=v.currentImageIdIndex,p=v.activeLabelmapIndex,x=this._isCtrlDown(o)||this.configuration.alwaysEraseOnClick,T=s.metaData.get("imagePlaneModule",r.imageId);if(T){var b=T.imagePositionPatient;t=this._getImagesInRange(m,b,h,l,d)}else Kr.warn("No imagePlane metadata found for image, defaulting to circle brush application."),t=[{imageIdIndex:m,radiusOnImage:l}];if(this.paintEventData={labelmap2D:g,labelmap3D:f,currentImageIdIndex:m,activeLabelmapIndex:p,shouldErase:x,imagesInRange:t},n.storeHistory){for(var C=[],M=0;Mi||l<0||l>o)){for(var c=this.paintEventData,u=c.labelmap3D,d=c.imagesInRange,h=c.shouldErase,v=0;v=0;c--){var u=this._getRadiusOnImage(n[c],t,i,o);if(!u)break;r.push({imageIdIndex:c,radiusOnImage:u})}return r}},{key:"_getRadiusOnImage",value:function(e,t,n,a){var o=y.cornerstone.metaData.get("imagePlaneModule",e);if(o){var i=o.imagePositionPatient,r=Math.sqrt(Math.pow(i[0]-t[0],2)+Math.pow(i[1]-t[1],2)+Math.pow(i[2]-t[2],2));if(!(r>n))return Math.floor(Math.sqrt(Math.pow(n,2)-Math.pow(r,2))/a)}else Kr.warn("Can't find imagePlane metadata for image, cancelling spherical brushing on: ".concat(e,","))}},{key:"_endPainting",value:function(e){for(var t=this.paintEventData,n=t.labelmap3D,a=t.imagesInRange,o=[],i=Zr.configuration,r=Zr.setters,s=0;s=E||e=I||te.xMax&&(e.xMax=n),ae.yMax&&(e.yMax=a)}function ts(e,t,n,a,o){for(var i=ge(a,[e.x,e.y]).flooded,r=0;ra!=u>a&&n<(c-s)*(a-l)/(u-l)+s&&(o=!o)}return o}var os=N("util:segmentation:operations:eraseInsideFreehand");function is(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.points,o=t.segmentationMixinType;if("freehandSegmentationMixin"===o){var i=e.detail.image,r=a.map((function(e){return[e.x,e.y]})),s=Te(r,i),l=oe()(s,2),c=l[0],u=l[1];n?se(e,t,(function(e){return as([e.x,e.y],r)}),c,u):le(e,t,(function(e){return as([e.x,e.y],r)}),c,u)}else os.error("eraseInsideFreehand operation requires freehandSegmentationMixin operationData, recieved ".concat(o))}function rs(e,t){is(e,t,!0)}function ss(e,t){is(e,t,!1)}var ls=N("util:segmentation:operations:eraseInsideRectangle");function cs(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.points,o=t.segmentationMixinType;if("rectangleSegmentationMixin"===o){var i=e.detail,r=i.image,s=a.map((function(e){return[e.x,e.y]})),l=Te(s,r),c=oe()(l,2),u=c[0],d=c[1];n?se(e,t,(function(){return!0}),u,d):ne(e,t,u,d)}else ls.error("eraseInsideRectangle operation requires rectangleSegmentationMixin operationData, recieved ".concat(o))}function us(e,t){cs(e,t,!0)}function ds(e,t){cs(e,t,!1)}var hs=N("util:segmentation:operations:fillInsideFreehand");function vs(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.points,o=t.segmentationMixinType;if("freehandSegmentationMixin"===o){var i=e.detail.image,r=a.map((function(e){return[e.x,e.y]})),s=Te(r,i),l=oe()(s,2),c=l[0],u=l[1];n?he(e,t,(function(e){return as([e.x,e.y],r)}),c,u):ve(e,t,(function(e){return as([e.x,e.y],r)}),c,u)}else hs.error("eraseInsideFreehand operation requires freehandSegmentationMixin operationData, recieved ".concat(o))}function gs(e,t){vs(e,t,!0)}function fs(e,t){vs(e,t,!1)}var ms=N("util:segmentation:operations:fillInsideRectangle");function ps(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.points,o=t.segmentationMixinType;if("rectangleSegmentationMixin"===o){var i=e.detail.image,r=a.map((function(e){return[e.x,e.y]})),s=Te(r,i),l=oe()(s,2),c=l[0],u=l[1];n?he(e,t,(function(){return!0}),c,u):ce(e,t,c,u)}else ms.error("eraseInsideRectangle operation requires rectangleSegmentationMixin operationData, recieved ".concat(o))}function ys(e,t){ps(e,t,!0)}function xs(e,t){ps(e,t,!1)}var Ts=N("util:segmentation:operations:fillCircle");function bs(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.segmentationMixinType;if("circleSegmentationMixin"===a){var o=e.detail,i=xe(e),r=oe()(i,2),s=r[0],l=r[1],c=ye(o.handles.start,o.handles.end);n?he(e,t,(function(e){return Yi(c,e)}),s,l):ve(e,t,(function(e){return Yi(c,e)}),s,l)}else Ts.error("fillInsideCircle operation requires circleSegmentationMixin operationData, recieved ".concat(a))}function Cs(e,t){bs(e,t,!0)}function Ms(e,t){bs(e,t,!1)}var Es=N("util:segmentation:operations:eraseInsideCircle");function ws(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.segmentationMixinType;if("circleSegmentationMixin"===a){var o=e.detail,i=xe(e),r=oe()(i,2),s=r[0],l=r[1],c=ye(o.handles.start,o.handles.end);n?se(e,t,(function(e){return Yi(c,e)}),s,l):le(e,t,(function(e){return Yi(c,e)}),s,l)}else Es.error("eraseInsideCircle operation requires circleSegmentationMixin operationData, recieved ".concat(a))}function Is(e,t){ws(e,t,!0)}function Ss(e,t){ws(e,t,!1)}var ks=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"FreehandScissors",strategies:{FILL_INSIDE:gs,FILL_OUTSIDE:fs,ERASE_OUTSIDE:ss,ERASE_INSIDE:rs},cursors:{FILL_INSIDE:Bo,FILL_OUTSIDE:qo,ERASE_OUTSIDE:Vo,ERASE_INSIDE:Fo},defaultStrategy:"FILL_INSIDE",supportedInteractionTypes:["Mouse","Touch"],svgCursor:Bo,mixins:["freehandSegmentationMixin"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),t}(ca),_s=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"RectangleScissors",strategies:{FILL_INSIDE:ys,FILL_OUTSIDE:xs,ERASE_OUTSIDE:ds,ERASE_INSIDE:us},cursors:{FILL_INSIDE:jo,FILL_OUTSIDE:Go,ERASE_OUTSIDE:Wo,ERASE_INSIDE:zo},defaultStrategy:"FILL_INSIDE",supportedInteractionTypes:["Mouse","Touch"],mixins:["rectangleSegmentationMixin"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),t}(ca),Ps=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"CircleScissors",strategies:{FILL_INSIDE:Cs,FILL_OUTSIDE:Ms,ERASE_OUTSIDE:Ss,ERASE_INSIDE:Is},cursors:{FILL_INSIDE:Xo,FILL_OUTSIDE:Zo,ERASE_OUTSIDE:Ko,ERASE_INSIDE:Yo},defaultStrategy:"FILL_INSIDE",supportedInteractionTypes:["Mouse","Touch"],svgCursor:Xo,mixins:["circleSegmentationMixin"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),t}(ca),Ds=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"CorrectionScissors",strategies:{CORRECTION:Qr},cursors:{CORRECTION:Bo},defaultStrategy:"CORRECTION",supportedInteractionTypes:["Mouse","Touch"],svgCursor:Bo,mixins:["polylineSegmentationMixin"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),t}(ca),Os={},Ls={},As={};function Hs(e){if(!e)return"DEFAULT";var t=y.cornerstone.getEnabledElement(e).uuid;if(!t)throw new Error("Something went wrong when getting uuid from element");return t}var Rs={setStartLoadHandler:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;if(!e)throw new Error("The Handler function must be defined");var n=Hs(t);Os[n]=e},getStartLoadHandler:function(e){var t=Hs(e);return Os[t]||Os.DEFAULT},setEndLoadHandler:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;if(!e)throw new Error("The Handler function must be defined");var n=Hs(t);Ls[n]=e},getEndLoadHandler:function(e){var t=Hs(e);return Ls[t]||Ls.DEFAULT},setErrorLoadingHandler:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;if(!e)throw new Error("The Handler function must be defined");var n=Hs(t);As[n]=e},getErrorLoadingHandler:function(e){var t=Hs(e);return As[t]||As.DEFAULT},removeHandlers:function(e){var t=Hs(e);delete Os[t],delete Ls[t],delete As[t]}},Us={};function Ns(e,t){if(!Us[e])return{};var n=Us[e].find((function(e){return e.element===t}));return n?n.options:{}}function Fs(e,t,n){if(Us[e]){var a=Us[e].findIndex((function(e){return e.element===t}));if(-1===a)Us[e].push({element:t,options:n});else{var o=Us[e][a].options||{};Us[e][a].options=Object.assign(o,n)}}else Us[e]=[{element:t,options:n}]}var Bs=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Crosshairs",supportedInteractionTypes:["Mouse","Touch"],svgCursor:Eo};return(e=u()(this,h()(t).call(this,n,a))).mouseDownCallback=e._chooseLocation.bind(Ta()(e)),e.mouseDragCallback=e._chooseLocation.bind(Ta()(e)),e.touchDragCallback=e._chooseLocation.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_chooseLocation",value:function(e){var t=e.detail,n=t.element;e.stopImmediatePropagation();var a=O(n,this.name);if(a){var o=n,i=y.cornerstone.getEnabledElement(o).image.imageId,r=y.cornerstone.metaData.get("imagePlaneModule",i);if(r){var s=nn(t.currentPoints.image,r);a.data[0].synchronizationContext.getSourceElements().forEach((function(e){if(e!==o){var t=Number.MAX_VALUE,n=-1,a=O(e,"stack");if(void 0!==a){var i=a.data[0];if(i.imageIds.forEach((function(e,a){var o=y.cornerstone.metaData.get("imagePlaneModule",e);if(o&&o.imagePositionPatient&&o.rowCosines&&o.columnCosines){var i=en(o.imagePositionPatient),r=en(o.rowCosines),l=en(o.columnCosines).clone().cross(r.clone()),c=Math.abs(l.clone().dot(i)-l.clone().dot(s));c0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"DoubleTapFitToWindow",supportedInteractionTypes:["DoubleTap"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"doubleTapCallback",value:function(e){var t=e.detail;y.cornerstone.fitToWindow(t.element)}}]),t}(ca),qs=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"DragProbe",strategies:{default:zs,minimal:js},defaultStrategy:"default",supportedInteractionTypes:["Mouse","Touch"],svgCursor:bo};return(e=u()(this,h()(t).call(this,n,a))).touchDragCallback=e._movingEventCallback.bind(Ta()(e)),e.touchEndCallback=e._endMovingEventCallback.bind(Ta()(e)),e.mouseDragCallback=e._movingEventCallback.bind(Ta()(e)),e.mouseUpCallback=e._endMovingEventCallback.bind(Ta()(e)),e.dragEventData={},e}return g()(t,e),l()(t,[{key:"_movingEventCallback",value:function(e){var t=e.detail,n=t.element;this.dragEventData=t,y.cornerstone.updateImage(n)}},{key:"_endMovingEventCallback",value:function(e){var t=e.detail.element;this.dragEventData={},y.cornerstone.updateImage(t)}},{key:"renderToolData",value:function(e){this.dragEventData.currentPoints&&e&&e.detail&&Boolean(Object.keys(this.dragEventData.currentPoints).length)&&(e.detail.currentPoints=this.dragEventData.currentPoints,this.applyActiveStrategy(e))}}]),t}(ca);function zs(e){var t=this.configuration,n=y.cornerstone,a=e.detail,o=a.element,i=a.image,r=a.currentPoints,s=a.canvasContext,l=En(s.canvas),c=un.getActiveColor(),u=pn.getFontSize(),d=Math.round(r.image.x),h=Math.round(r.image.y);d<0||h<0||d>=i.columns||h>=i.rows||Wt(l,(function(e){In(e,t);var a,s,l="".concat(d,", ").concat(h);if(i.color)a=Rr(o,d,h,1,1),s="R: ".concat(a[0]," G: ").concat(a[1]," B: ").concat(a[2]," A: ").concat(a[3]);else{var v=(a=n.getStoredPixels(o,d,h,1,1))[0],g=v*i.slope+i.intercept,f=Wi(i,v);s="SP: ".concat(v," MO: ").concat(parseFloat(g.toFixed(3))),f&&(s+=" SUV: ".concat(parseFloat(f.toFixed(3))))}var m={x:r.canvas.x+5,y:r.canvas.y-5};bn(e,s,m.x,m.y+u+5,c),bn(e,l,m.x,m.y,c)}))}function js(e){var t=this.configuration,n=y.cornerstone,a=e.detail,o=a.element,i=a.image,r=a.currentPoints,s=a.canvasContext,l=a.isTouchEvent,c=En(s.canvas),u=un.getActiveColor(),d=r.page.y-pn.getFontSize()/2;l&&(d=r.page.y-4*pn.getFontSize());var h=n.pageToPixel(o,r.page.x,d);h.x<0||h.y<0||h.x>=i.columns||h.y>=i.rows||Wt(c,(function(e){In(e,t);var a,r=n.metaData.get("generalSeriesModule",i.imageId),s=r&&r.modality,c="";if(i.color)a=Rr(o,h.x,h.y,1,1),c="R: ".concat(a[0]," G: ").concat(a[1]," B: ").concat(a[2]);else{var d=(a=n.getStoredPixels(o,h.x,h.y,1,1))[0],v=d*i.slope+i.intercept,g=parseFloat(v.toFixed(2));if("CT"===s)c+="HU: ".concat(g);else if("PT"===s){c+=g;var f=Wi(i,d);f&&(c+=" SUV: ".concat(parseFloat(f.toFixed(2))))}else c+=g}var m=n.pixelToCanvas(o,h),p={x:12,y:-(pn.getFontSize()+10)/2},y=Tn(e,c,5);l&&(p={x:-y/2,y:-pn.getFontSize()-10-12}),Qt(e,o,m,6,{color:u},"canvas"),bn(e,c,m.x+p.x,m.y+p.y,u)}))}var Ws=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Eraser",supportedInteractionTypes:["Mouse","Touch"],svgCursor:wo};return(e=u()(this,h()(t).call(this,n,a))).preMouseDownCallback=e._deleteAllNearbyTools.bind(Ta()(e)),e.preTouchStartCallback=e._deleteAllNearbyTools.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_deleteAllNearbyTools",value:function(e){var t=e.detail.currentPoints.canvas,n=e.detail.element;pt.tools.forEach((function(e){var a=O(n,e.name);a&&a.data.forEach((function(a){"function"==typeof e.pointNearTool&&e.pointNearTool(n,a,t)&&(L(n,e.name,a),y.cornerstone.updateImage(n))}))}));return!0}}]),t}(ca),Gs=wr.FreehandHandleData,Ys=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"FreehandRoiSculptor",referencedToolName:"FreehandRoi",supportedInteractionTypes:["Mouse","Touch","DoubleTap"],mixins:["activeOrDisabledBinaryTool"],configuration:Xs(),svgCursor:xo};return(e=u()(this,h()(t).call(this,n,a))).updateOnMouseMove=!0,e.isMultiPartTool=!0,e.referencedToolName=e.initialConfiguration.referencedToolName,e._active=!1,e.activeMouseUpCallback=e.activeMouseUpCallback.bind(Ta()(e)),e.activeTouchEndCallback=e.activeTouchEndCallback.bind(Ta()(e)),e.activeMouseDragCallback=e.activeMouseDragCallback.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"renderToolData",value:function(e){var t=e.detail;if(null===this.configuration.currentTool)return!1;var n=t.element,a=this.configuration;if(!O(n,this.referencedToolName).data[a.currentTool])return!1;if(this._active){var o=t.canvasContext.canvas.getContext("2d"),i={color:this.configuration.dragColor,fill:null,handleRadius:this._toolSizeCanvas};dn(o,t,this.configuration.mouseLocation.handles,i)}else this.configuration.showCursorOnHover&&!this._recentTouchEnd&&this._renderHoverCursor(e)}},{key:"doubleClickCallback",value:function(e){var t=e.detail;this._selectFreehandTool(t),y.cornerstone.updateImage(t.element)}},{key:"doubleTapCallback",value:function(e){var t=e.detail;this._selectFreehandTool(t),y.cornerstone.updateImage(t.element)}},{key:"preTouchStartCallback",value:function(e){return this._initialiseSculpting(e),!0}},{key:"preMouseDownCallback",value:function(e){if(this.options.mouseButtonMask.includes(e.detail.buttons))return this._initialiseSculpting(e),!0}},{key:"activeMouseDragCallback",value:function(e){var t=this.configuration;if(this._active){var n=e.detail,a=O(n.element,this.referencedToolName);if(a){var o=a.data[t.currentTool].handles.points;this._getMouseLocation(n),this._sculpt(n,o),y.cornerstone.updateImage(n.element)}}}},{key:"activeMouseUpCallback",value:function(e){this._activeEnd(e)}},{key:"activeTouchEndCallback",value:function(e){this._activeEnd(e),this._deselectAllTools(e),this._recentTouchEnd=!0}},{key:"_activeEnd",value:function(e){var t=e.detail,n=t.element,a=this.configuration;this._active=!1,pt.isMultiPartToolActive=!1,this._getMouseLocation(t),this._invalidateToolData(t),a.mouseUpRender=!0,this._deactivateSculpt(n),y.cornerstone.updateImage(t.element),function(e){e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault()}(e)}},{key:"_renderHoverCursor",value:function(e){var t,n=e.detail,a=n.element,o=n.canvasContext.canvas.getContext("2d"),i=O(a,this.referencedToolName).data[this.configuration.currentTool];this._recentTouchEnd=!1,this.configuration.mouseUpRender?(t=this.configuration.mouseLocation.handles.start,this.configuration.mouseUpRender=!1):t=pt.mousePositionImage;var r=Ct(a,this.referencedToolName).distanceFromPointCanvas(a,i,t);if(this.configuration.mouseLocation.handles.start.x=t.x,this.configuration.mouseLocation.handles.start.y=t.y,this.configuration.limitRadiusOutsideRegion){var s=r;r=this._limitCursorRadiusCanvas(n,r),s>this.configuration.hoverCursorFadeDistance*r&&(o.globalAlpha=this.configuration.hoverCursorFadeAlpha)}var l={fill:null,color:this.configuration.hoverColor,handleRadius:r};dn(o,n,this.configuration.mouseLocation.handles,l),this.configuration.limitRadiusOutsideRegion&&(o.globalAlpha=1)}},{key:"newImageCallback",value:function(e){this._deselectAllTools(e)}},{key:"enabledCallback",value:function(e){this._deselectAllTools(e)}},{key:"passiveCallback",value:function(e){this._deselectAllTools(e)}},{key:"disabledCallback",value:function(e){this._deselectAllTools(e)}},{key:"_selectFreehandTool",value:function(e){var t=this.configuration,n=e.element,a=this._getClosestFreehandToolOnElement(n,e);void 0!==a&&(t.currentTool=a,wt(n))}},{key:"_activateFreehandTool",value:function(e,t){var n=O(e,this.referencedToolName).data;this.configuration.currentTool=t;for(var a=0;aa||(this._pushOneHandle(i,r),void 0===o.first?(o.first=i,o.last=i):o.last=i)}return o}},{key:"_pushOneHandle",value:function(e,t){var n=this._sculptData,a=n.points,o=n.mousePoint,i=n.toolSize,r=n.image,s=a[e],l=(s.x-o.x)/t,c=(s.y-o.y)/t,u={x:o.x+i*l,y:o.y+i*c};ma(u,r),s.x=u.x,s.y=u.y;var d=this.constructor._getPreviousHandleIndex(e,a.length);a[d].lines.pop(),a[d].lines.push(s)}},{key:"_insertNewHandles",value:function(e){for(var t=this._findNewHandleIndicies(e),n=0,a=0;aa&&n.push(e)}},{key:"_insertHandleRadially",value:function(e){var t=this._sculptData.points,n=e-1,a=this.constructor._getNextHandleIndexBeforeInsert(e,t.length),o=this._getInsertPosition(e,n,a),i=new Gs(o);t.splice(e,0,i),t[n].lines.pop(),t[n].lines.push(t[e]),wr.addLine(t,e)}},{key:"_consolidateHandles",value:function(){if(!(this._sculptData.points.length<=3)){var e=this._findCloseHandlePairs();this._mergeCloseHandles(e)}}},{key:"_findCloseHandlePairs",value:function(){for(var e=this._sculptData,t=e.points,n=e.minSpacing,a=[],o=t.length,i=0;i2&&void 0!==arguments[2]&&arguments[2],a=e.element,o=e.image,i=this.configuration,r=O(a,this.referencedToolName),s=r.data[i.currentTool],l=1;if(n){var c=y.cornerstone.pixelToCanvas(a,{x:0,y:0}),u=y.cornerstone.pixelToCanvas(a,{x:o.width,y:o.height}),d=(u.x-c.x)*(u.y-c.y);l=d/(o.width*o.height)}var h=s.area*l,v=Math.pow(h/Math.PI,.5);return Math.min(t,v)}},{key:"_getClosestFreehandToolOnElement",value:function(e,t){var n=Ct(e,this.referencedToolName),a=O(e,this.referencedToolName);if(a){for(var o=a.data,i=t.currentPoints.image,r={distance:1/0,toolIndex:null},s=0;s0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Magnify",supportedInteractionTypes:["Mouse","Touch"],configuration:{magnifySize:300,magnificationLevel:2},svgCursor:Io};return(e=u()(this,h()(t).call(this,n,a))).zoomCanvas=void 0,e.zoomElement=void 0,e.activeCallback=e._createMagnificationCanvas.bind(Ta()(e)),e.enabledCallback=e._createMagnificationCanvas.bind(Ta()(e)),e.disabledCallback=e._destroyMagnificationCanvas.bind(Ta()(e)),e.postTouchStartCallback=e._addMagnifyingGlass.bind(Ta()(e)),e.touchDragCallback=e._updateMagnifyingGlass.bind(Ta()(e)),e.touchEndCallback=e._removeMagnifyingGlass.bind(Ta()(e)),e.touchDragEndCallback=e._removeMagnifyingGlass.bind(Ta()(e)),e.postMouseDownCallback=e._addMagnifyingGlass.bind(Ta()(e)),e.mouseDragCallback=e._updateMagnifyingGlass.bind(Ta()(e)),e.mouseUpCallback=e._removeMagnifyingGlass.bind(Ta()(e)),e.mouseClickCallback=e._removeMagnifyingGlass.bind(Ta()(e)),e.newImageCallback=e._drawMagnificationTool.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_addMagnifyingGlass",value:function(e){var t=this;this._removeZoomElement(),this._drawZoomedElement(e),window.requestAnimationFrame((function(){return t._drawMagnificationTool(e)})),wt(e.detail.element),e.preventDefault(),e.stopPropagation()}},{key:"_updateMagnifyingGlass",value:function(e){this._drawMagnificationTool(e),e.preventDefault(),e.stopPropagation()}},{key:"_removeMagnifyingGlass",value:function(e){var t=e.detail.element;Et(this.element,this.svgCursor),t.querySelector(".magnifyTool").style.display="none",this._removeZoomElement()}},{key:"_drawMagnificationTool",value:function(e){var t=e.detail.element,n=t.querySelector(".magnifyTool");if(n||this._createMagnificationCanvas(t),void 0!==this.zoomCanvas){var a=t.querySelector("canvas:not(.magnifyTool)"),o=En(n),i=y.cornerstone.pixelToCanvas(e.detail.element,e.detail.currentPoints.image),r=Math.min(this.configuration.magnifySize,a.width,a.height),s=this.configuration.magnificationLevel;n.width=r,n.height=r,i.x=Math.max(i.x,.5*r/s),i.x=Math.min(i.x,a.width-.5*r/s),i.y=Math.max(i.y,.5*r/s),i.y=Math.min(i.y,a.height-.5*r/s);var l={x:i.x*s-.5*r,y:i.y*s-.5*r};l.x=Math.max(l.x,0),l.y=Math.max(l.y,0),o.drawImage(this.zoomCanvas,l.x,l.y,r,r,0,0,r,r);var c=e.detail.isTouchEvent?120:0,u={top:Math.max(i.y-.5*r-c,0),left:Math.max(i.x-.5*r,0)},d=n.getBoundingClientRect();u.top=Math.min(u.top,a.height-d.height),u.left=Math.min(u.left,a.width-d.width),n.style.top="".concat(u.top,"px"),n.style.left="".concat(u.left,"px"),n.style.display="block"}}},{key:"_drawZoomedElement",value:function(e){var t=e.detail.element,n=e.detail.enabledElement;void 0===n&&(n=y.cornerstone.getEnabledElement(t));var a=this.configuration.magnificationLevel,o=n.canvas,i=n.image;this.zoomElement||(this.zoomElement=document.createElement("div"),this.zoomElement.width=o.width*a,this.zoomElement.height=o.height*a,y.cornerstone.enable(this.zoomElement,n.options));var r=y.cornerstone.getEnabledElement(this.zoomElement),s=y.cornerstone.getViewport(n.element);this.zoomCanvas=r.canvas,this.zoomCanvas.width=o.width*a,this.zoomCanvas.height=o.height*a,r.viewport=Object.assign({},s),s.scale*=a,y.cornerstone.displayImage(this.zoomElement,i),y.cornerstone.setViewport(this.zoomElement,s)}},{key:"_removeZoomElement",value:function(){void 0!==this.zoomElement&&(y.cornerstone.disable(this.zoomElement),this.zoomElement=void 0,this.zoomCanvas=void 0)}},{key:"_createMagnificationCanvas",value:function(e){if(null===e.querySelector(".magnifyTool")){var t=document.createElement("canvas");t.classList.add("magnifyTool"),t.width=this.configuration.magnifySize,t.height=this.configuration.magnifySize,t.style.position="absolute",t.style.display="none",e.appendChild(t)}}},{key:"_destroyMagnificationCanvas",value:function(e){var t=e.querySelector(".magnifyTool");t&&e.removeChild(t)}}]),t}(ca),Zs=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Overlay",configuration:{},mixins:["enabledOrDisabledBinaryTool"]},o=Object.assign(a,n);return(e=u()(this,h()(t).call(this,o))).initialConfiguration=o,e}return g()(t,e),l()(t,[{key:"enabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"disabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"forceImageUpdate",value:function(e){y.cornerstone.getEnabledElement(e).image&&y.cornerstone.updateImage(e)}},{key:"renderToolData",value:function(e){var t=e.detail,n=t.enabledElement,a=t.image,o=t.viewport,i=t.canvasContext;if(t&&n&&a){var r=y.cornerstone.metaData.get("overlayPlaneModule",a.imageId);if(r&&r.overlays&&r.overlays.length){var s=o.displayedArea.columnPixelSpacing||1,l=o.displayedArea.rowPixelSpacing||1,c=Math.abs(o.displayedArea.brhc.x-o.displayedArea.tlhc.x)*s,u=Math.abs(o.displayedArea.brhc.y-o.displayedArea.tlhc.y)*l;r.overlays.forEach((function(e){if(!1!==e.visible){var t=document.createElement("canvas");t.width=c,t.height=u;var n=t.getContext("2d");n.fillStyle=e.fillStyle||"white","R"===e.type&&(n.fillRect(0,0,t.width,t.height),n.globalCompositeOperation="xor");for(var a=0,o=0;o0&&n.fillRect(r,o,1,1);var s=!isNaN(parseFloat(e.x))&&isFinite(e.x)?e.x:0,l=!isNaN(parseFloat(e.y))&&isFinite(e.y)?e.y:0;i.drawImage(t,s,l)}}))}}}}]),t}(ca),$s={getOrientationString:function(e){for(var t=en(e),n="",a=t.x<0?"R":"L",o=t.y<0?"A":"P",i=t.z<0?"F":"H",r=new y.cornerstoneMath.Vector3(Math.abs(t.x),Math.abs(t.y),Math.abs(t.z)),s=1e-4,l=0;l<3;l++)if(r.x>s&&r.x>r.y&&r.x>r.z)n+=a,r.x=0;else if(r.y>s&&r.y>r.x&&r.y>r.z)n+=o,r.y=0;else if(r.z>s&&r.z>r.x&&r.z>r.y)n+=i,r.z=0;else if(r.x>s&&r.y>s&&r.x===r.y)n+=a+o,r.x=0,r.y=0;else if(r.x>s&&r.z>s&&r.x===r.z)n+=a+i,r.x=0,r.z=0;else{if(!(r.y>s&&r.z>s&&r.y===r.z))break;n+=o+i,r.y=0,r.z=0}return n},invertOrientationString:function(e){var t=e.replace("H","f");return t=(t=(t=(t=(t=(t=t.replace("F","h")).replace("R","l")).replace("L","r")).replace("A","p")).replace("P","a")).toUpperCase()}},Js=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"OrientationMarkers",configuration:{drawAllMarkers:!0},mixins:["enabledOrDisabledBinaryTool"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"enabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"disabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"forceImageUpdate",value:function(e){var t=y.cornerstone;t.getEnabledElement(e).image&&t.updateImage(e)}},{key:"renderToolData",value:function(e){var t=e.detail,n=En(t.canvasContext.canvas),a=t.element,o=tl(a);if(o){var i=nl(a,o),r=un.getToolColor(),s={top:Tn(n,o.top,0),left:Tn(n,o.left,0),right:Tn(n,o.right,0),bottom:Tn(n,o.bottom,0),height:Tn(n,"M",0)};Qs(n,o,i,s,r),this.configuration.drawAllMarkers&&el(n,o,i,s,r)}}}]),t}(ca),Qs=function(e,t,n,a,o){bn(e,t.top,n.top.x-a.top/2,n.top.y,o),bn(e,t.left,n.left.x-a.left/2,n.left.y,o)},el=function(e,t,n,a,o){bn(e,t.right,n.right.x-a.right,n.right.y,o),bn(e,t.bottom,n.bottom.x-a.bottom/2,n.bottom.y-a.height,o)},tl=function(e){var t=y.cornerstone,n=t.getEnabledElement(e),a=t.metaData.get("imagePlaneModule",n.image.imageId);if(a&&a.rowCosines&&a.columnCosines){var o=$s.getOrientationString(a.rowCosines),i=$s.getOrientationString(a.columnCosines),r=$s.invertOrientationString(o);return{top:$s.invertOrientationString(i),bottom:i,left:r,right:o}}},nl=function(e){var t=y.cornerstone.getEnabledElement(e);return{top:y.cornerstone.pixelToCanvas(e,{x:t.image.width/2,y:5}),bottom:y.cornerstone.pixelToCanvas(e,{x:t.image.width/2,y:t.image.height-15}),left:y.cornerstone.pixelToCanvas(e,{x:5,y:t.image.height/2}),right:y.cornerstone.pixelToCanvas(e,{x:t.image.width-10,y:t.image.height/2})}},al=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"PanMultiTouch",supportedInteractionTypes:["MultiTouch"],configuration:{touchPointers:2}};return(e=u()(this,h()(t).call(this,n,a))).multiTouchDragCallback=e._dragCallback.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_dragCallback",value:function(e){var t=e.detail,n=t.element,a=t.viewport;if(t.numPointers===this.configuration.touchPointers){var o=this._getTranslation(t);this._applyTranslation(a,o),y.cornerstone.setViewport(n,a)}}},{key:"_getTranslation",value:function(e){var t=e.viewport,n=e.image,a=e.deltaPoints,o=t.scale,i=t.scale;return n.rowPixelSpacing0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"Pan",supportedInteractionTypes:["Mouse","Touch"],svgCursor:So};return(e=u()(this,h()(t).call(this,n,a))).touchDragCallback=e._dragCallback.bind(Ta()(e)),e.mouseDragCallback=e._dragCallback.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_dragCallback",value:function(e){var t=e.detail,n=t.element,a=t.viewport,o=this._getTranslation(t);this._applyTranslation(a,o),y.cornerstone.setViewport(n,a)}},{key:"_getTranslation",value:function(e){var t=e.viewport,n=e.image,a=e.deltaPoints,o=t.scale,i=t.scale;return n.rowPixelSpacing0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"ReferenceLines",mixins:["enabledOrDisabledBinaryTool"],configuration:{renderer:cl}};return(e=u()(this,h()(t).call(this,n,a))).renderer=null,e.synchronizationContext=null,e}var n;return g()(t,e),l()(t,[{key:"enabledCallback",value:(n=ll()(rl.a.mark((function e(t){var n,a,o,i=arguments;return rl.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>1&&void 0!==i[1]?i[1]:{},a=n.synchronizationContext,o=this.configuration.renderer,e.next=4,dl(t);case 4:if(e.sent&&o&&a){e.next=8;break}return hl.warn("Unable to enable ".concat(this.name,". Exiting enable callback. Tool will be enabled, but will not render.")),e.abrupt("return");case 8:this.renderer=o,this.synchronizationContext=a,this.forceImageUpdate(t);case 11:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"disabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"forceImageUpdate",value:function(e){y.cornerstone.getEnabledElement(e).image&&y.cornerstone.updateImage(e)}},{key:"renderToolData",value:function(e){var t=this,n=e.detail;if(this.renderer&&this.synchronizationContext){var a=this.synchronizationContext.getSourceElements(),o=En(n.canvasContext.canvas);y.cornerstone.setToPixelCoordinateSystem(n.enabledElement,o),a.forEach((function(a){a!==e.currentTarget&&t.renderer(o,n,e.currentTarget,a)}))}}}]),t}(ca),gl=function(e,t,n){var a=Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)),o=Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2)),i=Math.sqrt(Math.pow(t.x-n.x,2)+Math.pow(t.y-n.y,2));return{angle:180*Math.acos((Math.pow(a,2)+Math.pow(o,2)-Math.pow(i,2))/(2*a*o))/Math.PI,direction:(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x)}},fl=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"Rotate",strategies:{default:ml,horizontal:pl,vertical:yl},defaultStrategy:"default",supportedInteractionTypes:["Mouse","Touch"],configuration:{roundAngles:!1,flipHorizontal:!1,flipVertical:!1},svgCursor:ko};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"touchDragCallback",value:function(e){this.dragCallback(e)}},{key:"mouseDragCallback",value:function(e){this.dragCallback(e)}},{key:"postMouseDownCallback",value:function(e){this.initialRotation=e.detail.viewport.rotation}},{key:"dragCallback",value:function(e){e.detail.viewport.initialRotation=this.initialRotation,this.applyActiveStrategy(e),y.cornerstone.setViewport(e.detail.element,e.detail.viewport)}}]),t}(ca);function ml(e){var t=this.configuration.roundAngles,n=e.detail,a=n.element,o=n.viewport,i=o.initialRotation,r=a.getBoundingClientRect(a),s=a.clientWidth,l=a.clientHeight,c={x:n.startPoints.client.x,y:n.startPoints.client.y},u=o.scale,d=o.translation,h={x:r.left+s/2+d.x*u,y:r.top+l/2+d.y*u},v={x:n.currentPoints.client.x,y:n.currentPoints.client.y},g=gl(h,c,v);t&&(g.angle=Math.ceil(g.angle)),g.direction<0&&(g.angle=-g.angle),o.rotation=i+g.angle}function pl(e){var t=this.configuration,n=t.roundAngles,a=t.flipHorizontal,o=e.detail,i=o.viewport,r=o.deltaPoints.page.x/i.scale;n&&(r=Math[r>0?"ceil":"floor"](r)),a&&(r=-r),i.rotation+=r}function yl(e){var t=this.configuration,n=t.roundAngles,a=t.flipVertical,o=e.detail,i=o.viewport,r=o.deltaPoints.page.y/i.scale;n&&(r=Math[r>0?"ceil":"floor"](r)),a&&(r=-r),i.rotation+=r}var xl,Tl=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"RotateTouch",supportedInteractionTypes:["TouchRotate"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"touchRotateCallback",value:function(e){var t=e.detail,n=t.element,a=t.viewport,o=t.rotation;a.rotation+=o,y.cornerstone.setViewport(n,a)}}]),t}(ca),bl=N("tools:ScaleOverlayTool"),Cl=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"ScaleOverlay",configuration:{minorTickLength:12.5,majorTickLength:25},mixins:["enabledOrDisabledBinaryTool"]};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"enabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"disabledCallback",value:function(e){this.forceImageUpdate(e)}},{key:"forceImageUpdate",value:function(e){y.cornerstone.getEnabledElement(e).image&&y.cornerstone.updateImage(e)}},{key:"renderToolData",value:function(e){var t=e.detail,n=En(t.canvasContext.canvas),a=t.image,o=t.viewport,i=t.element,r=a.rowPixelSpacing,s=a.columnPixelSpacing,l=y.cornerstone.metaData.get("imagePlaneModule",a.imageId);if(l&&(r=l.rowPixelSpacing||l.rowImagePixelSpacing,s=l.columnPixelSpacing||l.colImagePixelSpacing),r&&s){var c={width:n.canvas.width,height:n.canvas.height},u=10/r*o.scale,d=10/s*o.scale,h=Ml(c,.25,.05),v=Ml(c,.05,.15);if(c.width&&c.height&&h&&v){var g=un.getToolColor(),f=Xt.getToolWidth(),m=Object.assign({},{hscaleBounds:h,vscaleBounds:v,verticalMinorTick:u,horizontalMinorTick:d,verticalLine:{start:{x:v.bottomRight.x,y:v.topLeft.y},end:{x:v.bottomRight.x,y:v.bottomRight.y}},horizontalLine:{start:{x:h.topLeft.x,y:h.bottomRight.y},end:{x:h.bottomRight.x,y:h.bottomRight.y}},color:g,lineWidth:f},this.configuration);Wt(n,(function(e){In(e,m),Zt(e,i,m.verticalLine.start,m.verticalLine.end,{color:m.color,lineWidth:m.lineWidth},"canvas"),El(e,i,m),Zt(e,i,m.horizontalLine.start,m.horizontalLine.end,{color:m.color,lineWidth:m.lineWidth},"canvas"),wl(e,i,m)}))}}else bl.warn("unable to define rowPixelSpacing or colPixelSpacing from data on ".concat(this.name,"'s renderToolData"))}}]),t}(ca),Ml=function(e,t,n){var a=t*Math.min(1e3,e.width),o=n*Math.min(1e3,e.height),i={left:a,top:o,width:e.width-2*a,height:e.height-2*o};return{topLeft:{x:i.left,y:i.top},bottomRight:{x:i.left+i.width,y:i.top+i.height}}},El=function(e,t,n){for(var a=0;n.verticalLine.start.y+a*n.verticalMinorTick<=n.vscaleBounds.bottomRight.y;){var o=n.color,i=n.lineWidth,r={x:n.verticalLine.start.x,y:n.verticalLine.start.y+a*n.verticalMinorTick},s={x:0,y:n.verticalLine.start.y+a*n.verticalMinorTick};s.x=a%5==0?n.verticalLine.start.x-n.majorTickLength:n.verticalLine.start.x-n.minorTickLength,Zt(e,t,r,s,{color:o,lineWidth:i},"canvas"),a++}},wl=function(e,t,n){for(var a=0;n.horizontalLine.start.x+a*n.horizontalMinorTick<=n.hscaleBounds.bottomRight.x;){var o=n.color,i=n.lineWidth,r={x:n.horizontalLine.start.x+a*n.horizontalMinorTick,y:n.horizontalLine.start.y},s={x:n.horizontalLine.start.x+a*n.horizontalMinorTick,y:0};s.y=a%5==0?n.horizontalLine.start.y-n.majorTickLength:n.horizontalLine.start.y-n.minorTickLength,Zt(e,t,r,s,{color:o,lineWidth:i},"canvas"),a++}},Il={default:6,IE:{9:6,10:8,default:8},Firefox:{default:6},Opera:{10:8,11:6,12:6,default:6},Chrome:{default:6},Safari:{default:6}};function Sl(){var e,t=navigator.userAgent,n=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];return/trident/i.test(n[1])?(e=/\brv[ :]+(\d+)/g.exec(t)||[],"IE ".concat(e[1]||"")):"Chrome"===n[1]&&null!==(e=t.match(/\b(OPR|Edge)\/(\d+)/))?e.slice(1).join(" ").replace("OPR","Opera"):(n=n[2]?[n[1],n[2]]:[navigator.appName,navigator.appVersion,"-?"],null!==(e=t.match(/version\/(\d+)/i))&&n.splice(1,1,e[1]),n.join(" "))}function kl(){return xl||_l()}function _l(){var e=Sl().split(" "),t=e[0],n=e[1],a=Il[t];return a?a[n]?a[n]:a.default:Il.default}var Pl={interaction:[],thumbnail:[],prefetch:[]},Dl={interaction:0,thumbnail:0,prefetch:0},Ol={interaction:6,thumbnail:6,prefetch:5},Ll=!1;function Al(){Ll&&setTimeout((function(){Rl()}),20)}function Hl(e){var t=y.cornerstone,n=e.type;Dl[n]++,Ll=!0;var a=e.imageId,o=e.doneCallback,i=e.failCallback,r=t.imageCache.getImageLoadObject(a);if(r)r.promise.then((function(e){Dl[n]--,o(e),Al()}),(function(e){Dl[n]--,i(e),Al()}));else{var s=function(e){return"prefetch"===e.type?-5:"interactive"===e.type?0:"thumbnail"===e.type?5:void 0}(e);(!0===e.preventCache?t.loadImage(a,{priority:s,type:e.type}):t.loadAndCacheImage(a,{priority:s,type:e.type})).then((function(e){Dl[n]--,o(e),Al()}),(function(e){Dl[n]--,i(e),Al()}))}}function Rl(){var e=kl();Ol={interaction:Math.max(e,1),thumbnail:Math.max(e-2,1),prefetch:Math.max(e-1,1)};for(var t=e-(Dl.interaction+Dl.thumbnail+Dl.prefetch),n=0;n1){var i=O(e,"stackRenderer");i&&i.data&&i.data.length&&(a=i.data[0])}var r=n.data[0];t<0&&(t+=r.imageIds.length);var s=Rs.getStartLoadHandler(e),l=Rs.getEndLoadHandler(e),c=Rs.getErrorLoadingHandler(e);if(t!==r.currentImageIdIndex){s&&s(e);var u={newImageIdIndex:t,direction:t-r.currentImageIdIndex};r.currentImageIdIndex=t;var d=r.imageIds[t];(Boolean(r.preventCache)?o.loadImage(d):o.loadAndCacheImage(d)).then((function(i){if(r.currentImageIdIndex===t){try{o.getEnabledElement(e)}catch(e){return}a?(a.currentImageIdIndex=t,a.render(e,n.data)):o.displayImage(e,i),l&&l(e,i)}}),(function(n){var a=r.imageIds[t];c&&c(e,a,n)})),Nl.startGrabbing(),C(e,b.STACK_SCROLL,u)}}},Bl=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=O(e,"stack");if(o&&o.data&&o.data.length){var i=o.data[0];i.pending||(i.pending=[]);var r=i.currentImageIdIndex+t;if(n){var s=i.imageIds.length;r%=s}else r=pa(r,0,i.imageIds.length-1);if(a)Fl(e,r);else{var l={index:r};i.pending.push(l),Vl(i,l,e)}}};function Vl(e,t,n){if(e.pending[0]===t){if(e.currentImageIdIndex===t.index)return e.pending.splice(e.pending.indexOf(t),1),void(e.pending.length>0&&Vl(e,e.pending[0],n));n.addEventListener(y.cornerstone.EVENTS.NEW_IMAGE,(function a(o){e.imageIds.indexOf(o.detail.image.imageId)===t.index&&(e.pending.splice(e.pending.indexOf(t),1),n.removeEventListener(y.cornerstone.EVENTS.NEW_IMAGE,a),e.pending.length>0&&Vl(e,e.pending[0],n))})),Fl(n,t.index)}}var ql=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"StackScrollMouseWheel",supportedInteractionTypes:["MouseWheel"],configuration:{loop:!1,allowSkipping:!0,invert:!1}};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"mouseWheelCallback",value:function(e){var t=e.detail,n=t.direction,a=t.element,o=this.configuration,i=o.loop,r=o.allowSkipping,s=o.invert;Bl(a,s?-n:n,i,r)}}]),t}(ca),zl=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"StackScrollMultiTouch",supportedInteractionTypes:["MultiTouch"],configuration:{loop:!1,allowSkipping:!0,touchPointers:3}};return(e=u()(this,h()(t).call(this,n,a))).multiTouchDragCallback=e._dragCallback.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_dragCallback",value:function(e){var t=e.detail;if(t.numPointers===this.configuration.touchPointers){var n=t.element,a=t.deltaPoints,o=this.configuration,i=o.loop,r=o.allowSkipping,s=Ns(this.name,n),l=this._getPixelPerImage(n),c=this._getDeltaY(n,a.page.y);if(!l)return;if(Math.abs(c)>=l){var u=Math.round(c/l);Bl(n,u,i,r),s.deltaY=c%l}else s.deltaY=c;Fs(this.name,n,s)}}},{key:"_getDeltaY",value:function(e,t){return(Ns(this.name,e).deltaY||0)+t}},{key:"_getPixelPerImage",value:function(e){var t=O(e,"stack");if(t&&t.data&&t.data.length){var n=t.data[0];return this.configuration.stackScrollSpeed||Math.max(2,e.offsetHeight/Math.max(n.imageIds.length,8))}}}]),t}(ca),jl=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"StackScroll",supportedInteractionTypes:["Mouse","Touch"],configuration:{loop:!1,allowSkipping:!0},svgCursor:_o};return(e=u()(this,h()(t).call(this,n,a))).mouseDragCallback=e._dragCallback.bind(Ta()(e)),e.touchDragCallback=e._dragCallback.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"_dragCallback",value:function(e){var t=e.detail,n=t.element,a=t.deltaPoints,o=this.configuration,i=o.loop,r=o.allowSkipping,s=Ns(this.name,n),l=this._getPixelPerImage(n),c=this._getDeltaY(n,a.page.y);if(l){if(Math.abs(c)>=l){var u=Math.round(c/l);Bl(n,u,i,r),s.deltaY=c%l}else s.deltaY=c;Fs(this.name,n,s)}}},{key:"_getDeltaY",value:function(e,t){return(Ns(this.name,e).deltaY||0)+t}},{key:"_getPixelPerImage",value:function(e){var t=O(e,"stack");if(t&&t.data&&t.data.length){var n=t.data[0];return this.configuration.stackScrollSpeed||Math.max(2,e.offsetHeight/Math.max(n.imageIds.length,8))}}}]),t}(ca),Wl=function(e,t,n,a,o){if(!e)throw new Error("getLuminance: parameter element must not be undefined");t=Math.round(t),n=Math.round(n);var i,r,s,l=y.cornerstone.getEnabledElement(e).image,c=[],u=0,d=l.getPixelData();if(l.color)for(r=0;r0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var a={name:"WwwcRegion",supportedInteractionTypes:["Mouse","Touch"],configuration:{minWindowWidth:10},svgCursor:Po};return(e=u()(this,h()(t).call(this,n,a)))._resetHandles(),e.postTouchStartCallback=e._startOutliningRegion.bind(Ta()(e)),e.touchDragCallback=e._setHandlesAndUpdate.bind(Ta()(e)),e.touchEndCallback=e._applyStrategy.bind(Ta()(e)),e.postMouseDownCallback=e._startOutliningRegion.bind(Ta()(e)),e.mouseClickCallback=e._startOutliningRegion.bind(Ta()(e)),e.mouseDragCallback=e._setHandlesAndUpdate.bind(Ta()(e)),e.mouseMoveCallback=e._setHandlesAndUpdate.bind(Ta()(e)),e.mouseUpCallback=e._applyStrategy.bind(Ta()(e)),e}return g()(t,e),l()(t,[{key:"renderToolData",value:function(e){var t=this,n=e.detail,a=n.element,o=un.getColorIfActive({active:!0}),i=En(n.canvasContext.canvas);Wt(i,(function(e){Mn(e,a,t.handles.start,t.handles.end,{color:o})}))}},{key:"_startOutliningRegion",value:function(e){var t=e.detail.element,n=e.detail.currentPoints.image;return Yl(this.handles.start)?this.handles.start=n:(this.handles.end=n,this._applyStrategy(e)),y.cornerstone.updateImage(t),!0}},{key:"_setHandlesAndUpdate",value:function(e){var t=e.detail.element,n=e.detail.currentPoints.image;this.handles.end=n,y.cornerstone.updateImage(t)}},{key:"_applyStrategy",value:function(e){Yl(this.handles.start)||Yl(this.handles.end)||(e.detail.handles=this.handles,Xl(e,this.configuration),this._resetHandles())}},{key:"_resetHandles",value:function(){this.handles={start:{},end:{}}}}]),t}(ca),Yl=function(e){return 0===Object.keys(e).length&&e.constructor===Object},Xl=function(e,t){var n=e.detail,a=n.image,o=n.element,i=e.detail.handles,r=i.start,s=i.end,l=Math.min(r.x,s.x),c=Math.min(r.y,s.y),u=Math.abs(r.x-s.x),d=Math.abs(r.y-s.y);l=pa(l,0,a.width),c=pa(c,0,a.height),u=Math.floor(Math.min(u,Math.abs(a.width-l))),d=Math.floor(Math.min(d,Math.abs(a.height-c)));var h=Wl(o,l,c,u,d),v=Kl(h,a.minPixelValue,a.maxPixelValue),g=n.viewport;void 0===t.minWindowWidth&&(t.minWindowWidth=10),g.voi.windowWidth=Math.max(Math.abs(v.max-v.min),t.minWindowWidth),g.voi.windowCenter=v.mean,g.voiLUT=void 0,y.cornerstone.setViewport(o,g),y.cornerstone.updateImage(o)},Kl=function(e,t,n){var a=e.length,o=n,i=t,r=0;if(a<2)return{min:o,max:i,mean:(t+n)/2};for(var s=0;s0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"Wwwc",strategies:{basicLevelingStrategy:$l},supportedInteractionTypes:["Mouse","Touch"],configuration:{orientation:0},svgCursor:Do};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"mouseDragCallback",value:function(e){this.applyActiveStrategy(e),y.cornerstone.setViewport(e.detail.element,e.detail.viewport)}},{key:"touchDragCallback",value:function(e){e.stopImmediatePropagation(),this.applyActiveStrategy(e),y.cornerstone.setViewport(e.detail.element,e.detail.viewport)}}]),t}(ca);function $l(e){var t=this.configuration.orientation,n=e.detail,a=(n.image.maxPixelValue*n.image.slope+n.image.intercept-(n.image.minPixelValue*n.image.slope+n.image.intercept))/1024,o=n.deltaPoints.page.x*a,i=n.deltaPoints.page.y*a;0===t?(n.viewport.voi.windowWidth+=o,n.viewport.voi.windowCenter+=i):(n.viewport.voi.windowWidth+=i,n.viewport.voi.windowCenter+=o),n.viewport.voiLUT=void 0}var Jl=function(e,t,n){var a=n.maxScale,o=n.minScale,i=Math.log(e.scale)/Math.log(1.7)+t,r=Math.pow(1.7,i);return e.scale=a&&r>a?a:o&&r0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"ZoomMouseWheel",supportedInteractionTypes:["MouseWheel"],configuration:{minScale:.25,maxScale:20,invert:!1}};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"mouseWheelCallback",value:function(e){var t=e.detail,n=t.element,a=t.viewport,o=t.spinY,i=this.configuration,r=i.invert,s=i.maxScale,l=i.minScale,c=Jl(a,r?o/4:-o/4,{maxScale:s,minScale:l});y.cornerstone.setViewport(n,c)}}]),t}(ca),tc=Ql.correctShift,nc=Ql.changeViewportScale,ac=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"Zoom",strategies:{default:ic,translate:rc,zoomToCenter:sc},defaultStrategy:"default",supportedInteractionTypes:["Mouse","Touch"],configuration:{invert:!1,preventZoomOutsideImage:!1,minScale:.25,maxScale:20},svgCursor:Oo};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"touchDragCallback",value:function(e){oc.call(this,e)}},{key:"mouseDragCallback",value:function(e){oc.call(this,e)}}]),t}(ca),oc=function(e){if(!e.detail.deltaPoints.page.y)return!1;this.applyActiveStrategy(e,this.configuration),y.cornerstone.setViewport(e.detail.element,e.detail.viewport)};function ic(e){var t=this.configuration,n=t.invert,a=t.maxScale,o=t.minScale,i=e.detail.deltaPoints.page.y,r=n?-i/100:i/100,s=e.detail,l=s.element,c=s.viewport,u=[e.detail.startPoints.page.x,e.detail.startPoints.page.y,e.detail.startPoints.image.x,e.detail.startPoints.image.y],d=u[0],h=u[1],v=u[2],g=u[3],f=nc(c,r,{maxScale:a,minScale:o});y.cornerstone.setViewport(l,f);var m=y.cornerstone.pageToPixel(l,d,h),p={x:v-m.x,y:g-m.y};p=tc(p,f),c.translation.x-=p.x,c.translation.y-=p.y}function rc(e){var t=this.configuration,n=t.invert,a=t.preventZoomOutsideImage,o=t.maxScale,i=t.minScale,r=e.detail.deltaPoints.page.y,s=n?-r/100:r/100,l=e.detail.image,c=e.detail.viewport,u=[e.detail.startPoints.image.x,e.detail.startPoints.image.y],d=u[0],h=u[1],v=nc(c,s,{maxScale:o,minScale:i}),g={x:0,y:0};if(s<0)v.scale<3&&(Math.abs(v.translation.x)<.01?v.translation.x=0:g.x=v.translation.x/8,Math.abs(v.translation.y)<.01?v.translation.y=0:g.y=v.translation.y/8);else{a&&ma(e.detail.startPoints.image,l);var f={x:l.width/2-d,y:l.height/2-h};f=tc(f,v);var m={x:v.translation.x-f.x,y:v.translation.y-f.y};Math.abs(m.x)<.01?v.translation.x=f.x:g.x=m.x/8,Math.abs(m.y)<.01?v.translation.y=f.y:g.y=m.y/8}v.translation.x-=g.x,v.translation.y-=g.y}function sc(e){var t=this.configuration,n=t.invert,a=t.maxScale,o=t.minScale,i=e.detail.deltaPoints.page.y,r=n?-i/100:i/100,s=e.detail.viewport;nc(s,r,{maxScale:a,minScale:o})}var lc=Ql.correctShift,cc=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r()(this,t);var n={name:"ZoomTouchPinch",supportedInteractionTypes:["TouchPinch"],configuration:{minScale:.25,maxScale:20}};return u()(this,h()(t).call(this,e,n))}return g()(t,e),l()(t,[{key:"touchPinchCallback",value:function(e){var t=e.detail,n=t.element,a=t.viewport,o=t.scaleChange,i=[e.detail.startPoints.page.x,e.detail.startPoints.page.y,e.detail.startPoints.image.x,e.detail.startPoints.image.y],r=i[0],s=i[1],l=i[2],c=i[3],u=this.configuration,d=u.maxScale,h=u.minScale;a.scale+=o*a.scale,d&&a.scale>d?a.scale=d:h&&a.scale0&&void 0!==arguments[0]?arguments[0]:{},t=e.x,n=e.y;return{x:t,y:n}}var hc,vc=N("eventListeners:mouseEventListeners"),gc=!0;function fc(e){if("number"==typeof e.buttons)return e.buttons;switch(e.which){case 0:return 0;case 1:return 1;case 2:return 4;case 3:return 2}return 0}function mc(){gc=!1}function pc(e){var t=e.currentTarget,n=y.cornerstone.getEnabledElement(t);if(n.image){var a=b.MOUSE_DOUBLE_CLICK,o={page:y.cornerstoneMath.point.pageToPoint(e),image:y.cornerstone.pageToPixel(t,e.pageX,e.pageY),client:{x:e.clientX,y:e.clientY}};o.canvas=y.cornerstone.pixelToCanvas(t,o.image);var i=uc(o);vc.log("double-click: %o",fc(e)),C(t,a,{event:e,buttons:fc(e),viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:o,lastPoints:i,currentPoints:o,deltaPoints:{x:0,y:0},type:a})}}function yc(e){var t=e.currentTarget,n=y.cornerstone.getEnabledElement(t);if(n.image){hc=setTimeout(mc,200),t.removeEventListener("mousemove",xc);var a={page:y.cornerstoneMath.point.pageToPoint(e),image:y.cornerstone.pageToPixel(t,e.pageX,e.pageY),client:{x:e.clientX,y:e.clientY}};a.canvas=y.cornerstone.pixelToCanvas(t,a.image);var o=uc(a),i={event:e,buttons:fc(e),viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:a,lastPoints:o,currentPoints:a,deltaPoints:{x:0,y:0},type:b.MOUSE_DOWN};C(i.element,b.MOUSE_DOWN,i)&&(i.type=b.MOUSE_DOWN_ACTIVATE,C(i.element,b.MOUSE_DOWN_ACTIVATE,i)),document.addEventListener("mousemove",r),document.addEventListener("mouseup",(function e(i){clearTimeout(hc);var s=b.MOUSE_UP;gc&&(s=b.MOUSE_CLICK);var l={page:y.cornerstoneMath.point.pageToPoint(i),image:y.cornerstone.pageToPixel(t,i.pageX,i.pageY),client:{x:i.clientX,y:i.clientY}};l.canvas=y.cornerstone.pixelToCanvas(t,l.image);var c={page:y.cornerstoneMath.point.subtract(l.page,o.page),image:y.cornerstoneMath.point.subtract(l.image,o.image),client:y.cornerstoneMath.point.subtract(l.client,o.client),canvas:y.cornerstoneMath.point.subtract(l.canvas,o.canvas)};vc.log("mouseup: %o",fc(i));var u={event:i,buttons:fc(i),viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:a,lastPoints:o,currentPoints:l,deltaPoints:c,type:s};C(u.element,s,u),document.removeEventListener("mousemove",r),document.removeEventListener("mouseup",e),t.addEventListener("mousemove",xc),gc=!0}))}function r(e){var i=b.MOUSE_DRAG,r={page:y.cornerstoneMath.point.pageToPoint(e),image:y.cornerstone.pageToPixel(t,e.pageX,e.pageY),client:{x:e.clientX,y:e.clientY}};r.canvas=y.cornerstone.pixelToCanvas(t,r.image);var s={page:y.cornerstoneMath.point.subtract(r.page,o.page),image:y.cornerstoneMath.point.subtract(r.image,o.image),client:y.cornerstoneMath.point.subtract(r.client,o.client),canvas:y.cornerstoneMath.point.subtract(r.canvas,o.canvas)};vc.log("mousemove: %o",fc(e));var l={buttons:fc(e),viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:a,lastPoints:o,currentPoints:r,deltaPoints:s,type:i,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey};C(l.element,i,l),o=uc(r)}}function xc(e){var t=e.currentTarget,n=y.cornerstone.getEnabledElement(t);if(n.image){var a=b.MOUSE_MOVE,o={page:y.cornerstoneMath.point.pageToPoint(e),image:y.cornerstone.pageToPixel(t,e.pageX,e.pageY),client:{x:e.clientX,y:e.clientY}};o.canvas=y.cornerstone.pixelToCanvas(t,o.image);var i=uc(o),r={page:y.cornerstoneMath.point.pageToPoint(e),image:y.cornerstone.pageToPixel(t,e.pageX,e.pageY),client:{x:e.clientX,y:e.clientY}};r.canvas=y.cornerstone.pixelToCanvas(t,r.image);var s={page:y.cornerstoneMath.point.subtract(r.page,i.page),image:y.cornerstoneMath.point.subtract(r.image,i.image),client:y.cornerstoneMath.point.subtract(r.client,i.client),canvas:y.cornerstoneMath.point.subtract(r.canvas,i.canvas)};C(t,a,{viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:o,lastPoints:i,currentPoints:r,deltaPoints:s,type:a}),i=uc(r)}}function Tc(e){e.removeEventListener("mousedown",yc),e.removeEventListener("mousemove",xc),e.removeEventListener("dblclick",pc)}var bc={enable:function(e){Tc(e),e.addEventListener("mousedown",yc),e.addEventListener("mousemove",xc),e.addEventListener("dblclick",pc)},disable:Tc};function Cc(e){var t=e.currentTarget,n=y.cornerstone.getEnabledElement(t);if(n.image&&!(e.deltaY>-1&&e.deltaY<1)){e.preventDefault();var a=e.pageX,o=e.pageY,i=y.cornerstone.pageToPixel(t,a,o),r=function(e){var t=0,n=0,a=0,o=0;return"detail"in e&&(n=e.detail),"wheelDelta"in e&&(n=-e.wheelDelta/120),"wheelDeltaY"in e&&(n=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),a=10*t,o=10*n,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(a=e.deltaX),(a||o)&&e.deltaMode&&(1===e.deltaMode?(a*=40,o*=40):(a*=800,o*=800)),a&&!t&&(t=a<1?-1:1),o&&!n&&(n=o<1?-1:1),{spinX:t,spinY:n,pixelX:a,pixelY:o}}(e),s=r.spinX,l=r.spinY,c=r.pixelX,u=r.pixelY,d=l<0?-1:1,h={element:t,viewport:y.cornerstone.getViewport(t),detail:e,image:n.image,direction:d,spinX:s,spinY:l,pixelX:c,pixelY:u,pageX:a,pageY:o,imageX:i.x,imageY:i.y};C(t,b.MOUSE_WHEEL,h)}}function Mc(e){e.removeEventListener("wheel",Cc,{passive:!1})}var Ec,wc,Ic={enable:function(e){Mc(e),e.addEventListener("wheel",Cc,{passive:!1})},disable:Mc},Sc=0,kc=1;function _c(e,t){var n=Date.now();if(e!==Ec){if(n-wc<=2e3)return t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation(),!1;Ec=e}wc=n}var Pc=_c.bind(null,Sc),Dc=_c.bind(null,kc);function Oc(e,t,n){var a=n?Pc:Dc;t.forEach((function(t){e.addEventListener(t,a,{passive:!1})}))}function Lc(e,t,n){var a=n?Pc:Dc;t.forEach((function(t){e.removeEventListener(t,a)}))}var Ac=["mousedown","mouseup"],Hc=["touchstart","touchend"];function Rc(e){Lc(e,Ac,Sc),Lc(e,Hc,kc)}var Uc,Nc,Fc,Bc,Vc,qc,zc,jc,Wc,Gc={enable:function(e){Rc(e),Oc(e,Ac,Sc),Oc(e,Hc,kc)},disable:Rc},Yc=1,Xc=0,Kc=!1,Zc=!1;function $c(e){var t=e.currentTarget||e.srcEvent.currentTarget,n=y.cornerstone.getEnabledElement(t);if(n.image){var a,o,i,r;switch(e.preventDefault(),(e.pointers&&e.pointers.length>1||e.touches&&e.touches.length>1)&&(Zc=!1,clearTimeout(zc)),e.type){case"tap":Zc=!1,clearTimeout(zc),(Nc={page:y.cornerstoneMath.point.pageToPoint(e.pointers[0]),image:y.cornerstone.pageToPixel(t,e.pointers[0].pageX,e.pointers[0].pageY),client:{x:e.pointers[0].clientX,y:e.pointers[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Nc.image),a=b.TAP,Vc={event:e,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,currentPoints:Nc,type:a,isTouchEvent:!0},C(t,a,Vc);break;case"doubletap":Zc=!1,clearTimeout(zc),(Nc={page:y.cornerstoneMath.point.pageToPoint(e.pointers[0]),image:y.cornerstone.pageToPixel(t,e.pointers[0].pageX,e.pointers[0].pageY),client:{x:e.pointers[0].clientX,y:e.pointers[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Nc.image),a=b.DOUBLE_TAP,Vc={event:e,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,currentPoints:Nc,type:a,isTouchEvent:!0},C(t,a,Vc);break;case"pinchstart":Zc=!1,clearTimeout(zc),Yc=1;break;case"pinchmove":if(Zc=!1,clearTimeout(zc),!0===Kc){Yc=e.scale,Kc=!1;break}o=(e.scale-Yc)/Yc,(Uc={page:e.center,image:y.cornerstone.pageToPixel(t,e.center.x,e.center.y)}).canvas=y.cornerstone.pixelToCanvas(t,Uc.image),a=b.TOUCH_PINCH,Vc={event:e,startPoints:Uc,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,direction:e.scale<1?1:-1,scaleChange:o,type:a,isTouchEvent:!0},C(t,a,Vc),Yc=e.scale;break;case"touchstart":Yc=1,clearTimeout(zc),clearTimeout(qc),qc=setTimeout((function(){(Uc={page:y.cornerstoneMath.point.pageToPoint(e.touches[0]),image:y.cornerstone.pageToPixel(t,e.touches[0].pageX,e.touches[0].pageY),client:{x:e.touches[0].clientX,y:e.touches[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Uc.image),a=b.TOUCH_START,e.touches.length>1&&(a=b.MULTI_TOUCH_START),Vc={event:e,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:Uc,currentPoints:Uc,type:a,isTouchEvent:!0},!0===C(t,a,Vc)&&(a=b.TOUCH_START_ACTIVE,e.touches.length>1&&(a=b.MULTI_TOUCH_START_ACTIVE),Vc.type=a,C(t,a,Vc)),Fc=uc(Uc)}),50),Zc=!0,jc=0,zc=setTimeout((function(){Zc&&((Nc={page:y.cornerstoneMath.point.pageToPoint(e.touches[0]),image:y.cornerstone.pageToPixel(t,e.touches[0].pageX,e.touches[0].pageY),client:{x:e.touches[0].clientX,y:e.touches[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Uc.image),a=b.TOUCH_PRESS,Vc={event:e,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,currentPoints:Nc,type:a,isTouchEvent:!0},C(t,a,Vc))}),700);break;case"touchend":Yc=1,Zc=!1,clearTimeout(zc),setTimeout((function(){(Uc={page:y.cornerstoneMath.point.pageToPoint(e.changedTouches[0]),image:y.cornerstone.pageToPixel(t,e.changedTouches[0].pageX,e.changedTouches[0].pageY),client:{x:e.changedTouches[0].clientX,y:e.changedTouches[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Uc.image),a=b.TOUCH_END,Vc={event:e,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:Uc,currentPoints:Uc,type:a,isTouchEvent:!0},C(t,a,Vc)}),50);break;case"panmove":i={x:e.deltaX-Wc.x,y:e.deltaY-Wc.y},Wc={x:e.deltaX,y:e.deltaY},(Nc={page:{x:Fc.page.x+i.x,y:Fc.page.y+i.y},image:y.cornerstone.pageToPixel(t,Fc.page.x+i.x,Fc.page.y+i.y),client:{x:Fc.client.x+i.x,y:Fc.client.y+i.y}}).canvas=y.cornerstone.pixelToCanvas(t,Nc.image),Bc={page:y.cornerstoneMath.point.subtract(Nc.page,Fc.page),image:y.cornerstoneMath.point.subtract(Nc.image,Fc.image),client:y.cornerstoneMath.point.subtract(Nc.client,Fc.client),canvas:y.cornerstoneMath.point.subtract(Nc.canvas,Fc.canvas)},(jc+=Math.sqrt(Bc.page.x*Bc.page.x+Bc.page.y*Bc.page.y))>5&&(Zc=!1,clearTimeout(zc)),a=b.TOUCH_DRAG,e.pointers.length>1&&(a=b.MULTI_TOUCH_DRAG),Vc={viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:Uc,lastPoints:Fc,currentPoints:Nc,deltaPoints:Bc,numPointers:e.pointers.length,type:a,isTouchEvent:!0},C(t,a,Vc),Fc=uc(Nc);break;case"panstart":Wc={x:e.deltaX,y:e.deltaY},(Nc={page:y.cornerstoneMath.point.pageToPoint(e.pointers[0]),image:y.cornerstone.pageToPixel(t,e.pointers[0].pageX,e.pointers[0].pageY),client:{x:e.pointers[0].clientX,y:e.pointers[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Nc.image),Fc=uc(Nc);break;case"panend":if(Zc=!1,clearTimeout(zc),!Fc)return!1;(Nc={page:y.cornerstoneMath.point.pageToPoint(e.pointers[0]),image:y.cornerstone.pageToPixel(t,e.pointers[0].pageX,e.pointers[0].pageY),client:{x:e.pointers[0].clientX,y:e.pointers[0].clientY}}).canvas=y.cornerstone.pixelToCanvas(t,Nc.image),Bc={page:y.cornerstoneMath.point.subtract(Nc.page,Fc.page),image:y.cornerstoneMath.point.subtract(Nc.image,Fc.image),client:y.cornerstoneMath.point.subtract(Nc.client,Fc.client),canvas:y.cornerstoneMath.point.subtract(Nc.canvas,Fc.canvas)},a=b.TOUCH_DRAG_END,Vc={event:e.srcEvent,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,startPoints:Uc,lastPoints:Fc,currentPoints:Nc,deltaPoints:Bc,type:a,isTouchEvent:!0},C(t,a,Vc),2===e.pointers.length-e.changedPointers.length&&(Kc=!0);break;case"rotatemove":Zc=!1,clearTimeout(zc),r=e.rotation-Xc,Xc=e.rotation,a=b.TOUCH_ROTATE,Vc={event:e.srcEvent,viewport:y.cornerstone.getViewport(t),image:n.image,element:t,rotation:r,type:a},C(t,a,Vc)}return!1}}function Jc(e){Gc.disable(e);["touchstart","touchend"].forEach((function(t){e.removeEventListener(t,$c)}));var t=Ns("touchInput",e).hammer;t&&t.off("tap doubletap panstart panmove panend pinchstart pinchmove rotatemove",$c)}var Qc={enable:function(e){Jc(e);var t=y.Hammer,n={inputClass:t.SUPPORT_POINTER_EVENTS?t.PointerEventInput:t.TouchInput},a=new t.Manager(e,n),o={pointers:0,direction:t.DIRECTION_ALL,threshold:0},i=new t.Pan(o),r=new t.Pinch({threshold:0}),s=new t.Rotate({threshold:0});r.recognizeWith(i),r.recognizeWith(s),s.recognizeWith(i);var l=new t.Tap({event:"doubletap",taps:2,interval:1500,threshold:50,posThreshold:50});l.recognizeWith(i),a.add([l,i,s,r]),a.on("tap doubletap panstart panmove panend pinchstart pinchmove rotatemove",$c),Gc.enable(e),["touchstart","touchend"].forEach((function(t){e.addEventListener(t,$c,{passive:!1})}));var c=Ns("touchInput",e);c.hammer=a,Fs("touchInput",e,c)},disable:Jc},eu=Tt("segmentation");function tu(e,t,n,a,o){!function(e,t,n){var a=eu.configuration,o=e.detail,i=En(o.canvasContext.canvas),r=y.cornerstone.pixelToCanvas(o.element,{x:0,y:0}),s=y.cornerstone.pixelToCanvas(o.element,{x:o.image.width,y:0}),l=y.cornerstone.pixelToCanvas(o.element,{x:o.image.width,y:o.image.height}),c=y.cornerstoneMath.point.distance(r,s),u=y.cornerstoneMath.point.distance(s,l),d=o.canvasContext.canvas,h=o.viewport,v=i.imageSmoothingEnabled,g=i.globalAlpha;i.imageSmoothingEnabled=!1,i.globalAlpha=n?a.fillAlpha:a.fillAlphaInactive,function(e,t,n){if(n.hflip||n.vflip||n.rotation){var a={x:t.width/2+n.translation.x*n.scale,y:t.height/2+n.translation.y*n.scale};e.translate(a.x,a.y),n.rotation&&e.rotate(n.rotation*Math.PI/180),n.vflip&&e.scale(1,-1),n.hflip&&e.scale(-1,1),e.translate(-a.x,-a.y)}}(i,d,h);var f=function(e){var t=e.viewport,n=e.image,a=t.scale,o=t.scale;n.rowPixelSpacing3&&void 0!==arguments[3])||arguments[3],o=nu.configuration,i=nu.state,r=e.detail,s=r.element,l=r.canvasContext,c=o.outlineWidth||1,u=En(l.canvas),d=i.colorLutTables[n],h=u.globalAlpha;u.globalAlpha=a?o.outlineAlpha:o.outlineAlphaInactive,Wt(u,(function(e){for(var n=1;n=0,r=e.y+1=0,l=e.x+13&&void 0!==arguments[3]?arguments[3]:"mouse",o="mouse"===a?pt.clickProximity:pt.touchProximity;return t.filter((function(t){for(var a=O(e,t.name),i=0;i0}))},wu=function(e){if(!pt.isToolLocked){var t=e.detail,n=e.detail.element,a=e.detail.currentPoints.canvas,o=Mu(n,yt.mouseTools()),i=o.filter((function(e){return"active"===e.mode&&Array.isArray(e.options.mouseButtonMask)&&e.options.mouseButtonMask.includes(t.buttons)&&e.options.isMouseActive}));if(pt.isMultiPartToolActive&&(i=Ea(i)),i.length>0){var r=i.find((function(e){return"function"==typeof e.preMouseDownCallback}));if(r)if(r.preMouseDownCallback(e))return}if(!pt.isMultiPartToolActive){var s=Eu(n,o),l=Cu(n,s,a,"mouse");if(l.length>0){var c=l[0],u=O(n,c.name),d=ao(n,u,c.name,a),h=d.handle,v=d.data;c.handleSelectedCallback(e,v,h,"mouse")}else{var g=o.filter((function(e){var t=O(n,e.name);return t&&t.data&&e.pointNearTool&&t.data.some((function(t){return e.pointNearTool(n,t,a,"mouse")}))}));if(g.length>0){var f=g[0],m=O(n,f.name).data.find((function(e){return f.pointNearTool(n,e,a)}));f.toolSelectedCallback(e,m,"mouse")}else if(i.length>0){var p=i.find((function(e){return"function"==typeof e.postMouseDownCallback}));if(p)if(p.postMouseDownCallback(e))return}}}}},Iu=N("eventDispatchers:mouseEventHandlers"),Su=function(e){if(!pt.isToolLocked){var t=e.detail,n=wa(t.element,t.buttons,"mouse");if(n){if("function"==typeof n.preMouseDownActivateCallback)if(n.preMouseDownActivateCallback(e))return;pt.isMultiPartToolActive||(n.addNewMeasurement?n.addNewMeasurement(e,"mouse"):n instanceof ro&&function(e,t){Iu.log("addNewMeasurement"),e.preventDefault(),e.stopPropagation();var n=e.detail,a=n.element,o=t.createNewMeasurement(n);o&&(D(a,t.name,o),y.cornerstone.updateImage(a),(1===Object.keys(o.handles).length?Ba:Za)(n,t.name,o,o.handles.end,t.options,"mouse",(function(e){if(!o.cancelled)if(e){var n=b.MEASUREMENT_COMPLETED,i={toolName:t.name,toolType:t.name,element:a,measurementData:o};C(a,n,i)}else L(a,t.name,o)})))}(e,n))}}},ku=function(e){if(!pt.isToolLocked){var t,n=e.detail,a=n.element;if(t=(t=(t=ya(a,yt.mouseTools())).filter((function(e){return Array.isArray(e.options.mouseButtonMask)&&e.options.mouseButtonMask.includes(n.buttons)&&e.options.isMouseActive}))).filter((function(e){return"function"==typeof e.mouseDragCallback})),pt.isMultiPartToolActive&&(t=Ea(t)),0!==t.length)t[0].mouseDragCallback(e)}},_u=function(e){if(!pt.isToolLocked&&!pt.isMultiPartToolActive){var t,n=e.detail,a=n.element,o=n.currentPoints;pt.mousePositionImage=o.image;var i=(t=Mu(a,yt.mouseTools())).filter((function(e){return"active"===e.mode&&e.options.isMouseActive})),r=!1;i.length>0&&(r=i.some((function(e){return e.updateOnMouseMove}))),t=Eu(a,t);for(var s=0;s0){var i=o[0],r=O(n,i.name),s=r.data.find((function(e){return void 0!==ha(n,e.handles,a,28)}));return r.data.active=!0,s.active=!0,y.cornerstone.updateImage(n),Ba(e.detail,i.name,r.data,s,i.options,"touch",(function(){return qu(r)})),e.stopImmediatePropagation(),void e.preventDefault()}var l=t.filter((function(e){var t=O(n,e.name);return t&&t.data&&e.pointNearTool&&t.data.some((function(t){return e.pointNearTool(n,t,a)}))}));if(l.length>0){var c=l[0],u=O(n,c.name),d=u.data.find((function(e){return c.pointNearTool(n,e,a)}));return d.active=!0,y.cornerstone.updateImage(n),Pa(e.detail,c.name,d,null,c.options,"touch",(function(){return qu(u)})),e.stopImmediatePropagation(),void e.preventDefault()}var h=ya(n,yt.touchTools());return h.length>0&&h[0].touchStartActiveCallback?h[0].touchStartActiveCallback(e):Vu(e),!1}},Wu=function(e){if(!pt.isToolLocked){var t=e.detail,n=t.element,a=t.startPoints.canvas,o=Mu(n,yt.touchTools()),i=o.filter((function(e){return"active"===e.mode&&e.options.isTouchActive}));if(pt.isMultiPartToolActive&&(i=Ea(i)),i.length>0){var r=i.find((function(e){return"function"==typeof e.preTouchStartCallback}));if(r)if(r.preTouchStartCallback(e))return}if(!pt.isMultiPartToolActive){var s=Eu(n,o),l=Cu(n,s,a,"touch");if(l.length>0){var c=l[0],u=O(n,c.name),d=ao(n,u,c.name,a,"touch"),h=d.handle,v=d.data;c.handleSelectedCallback(e,v,h,"touch")}else{var g=s.filter((function(e){var t=O(n,e.name);return t&&t.data&&e.pointNearTool&&t.data.some((function(t){return e.pointNearTool(n,t,a,"touch")}))}));if(g.length>0){var f=g[0],m=O(n,f.name).data.find((function(e){return f.pointNearTool(n,e,a)}));f.toolSelectedCallback(e,m,"touch")}else if(i.length>0){var p=i.find((function(e){return"function"==typeof e.postTouchStartCallback}));if(p)if(p.postTouchStartCallback(e))return}}}}},Gu=bu.bind(null,"DoubleTap","doubleTapCallback"),Yu=bu.bind(null,"Touch","touchDragCallback"),Xu=bu.bind(null,"Touch","touchEndCallback"),Ku=bu.bind(null,"TouchPinch","touchPinchCallback"),Zu=bu.bind(null,"Touch","touchPressCallback"),$u=bu.bind(null,"TouchRotate","touchRotateCallback"),Ju=function(e){e.addEventListener(b.TAP,ju),e.addEventListener(b.TOUCH_START,Wu,{passive:!1}),e.addEventListener(b.TOUCH_DRAG,Yu,{passive:!1}),e.addEventListener(b.TOUCH_END,Xu),e.addEventListener(b.TOUCH_START_ACTIVE,Vu),e.addEventListener(b.TOUCH_PRESS,Zu),e.addEventListener(b.DOUBLE_TAP,Gu),e.addEventListener(b.TOUCH_PINCH,Ku),e.addEventListener(b.TOUCH_ROTATE,$u),e.addEventListener(b.MULTI_TOUCH_DRAG,Fu)},Qu=function(e){e.removeEventListener(b.TAP,ju),e.removeEventListener(b.TOUCH_START,Wu),e.removeEventListener(b.TOUCH_DRAG,Yu),e.removeEventListener(b.TOUCH_END,Xu),e.removeEventListener(b.TOUCH_START_ACTIVE,Vu),e.removeEventListener(b.TOUCH_PRESS,Zu),e.removeEventListener(b.DOUBLE_TAP,Gu),e.removeEventListener(b.TOUCH_PINCH,Ku),e.removeEventListener(b.TOUCH_ROTATE,$u),e.removeEventListener(b.MULTI_TOUCH_DRAG,Fu)},ed=N("addTool"),td=function(e,t,n){var a=new t(n);Ct(e,a.name)?ed.warn("%s has already been added to the target element",a.name):(a.element=e,bt.state.tools.push(a))},nd=function(e,t){ad(e,t),bt.state.enabledElements.forEach((function(n){td(n,e,t)}))},ad=function(e,t){if(Tt("globalConfiguration").configuration.globalToolSyncEnabled){var n=new e(t);void 0!==bt.state.globalTools[n.name]?ed.warn("%s has already been added globally",n.name):bt.state.globalTools[n.name]={tool:e,props:t,activeBindings:[]}}},od=N("internals:addEnabledElement"),id=function(e){od.log("EVENT:ELEMENT_ENABLED");var t=e.detail.element;xu(t),Uu(t);var n=Tt("globalConfiguration").configuration;n.mouseEnabled&&(bc.enable(t),Ic.enable(t),Au(t)),n.touchEnabled&&(Qc.enable(t),Ju(t)),rd(t)},rd=function(e){bt.state.enabledElements.push(e),bt.modules&&function(e){var t=bt.modules;Object.keys(t).forEach((function(n){"function"==typeof t[n].enabledElementCallback&&t[n].enabledElementCallback(e)}))}(e),function(e){if(!Tt("globalConfiguration").configuration.globalToolSyncEnabled)return;Object.keys(bt.state.globalTools).forEach((function(t){var n=bt.state.globalTools[t],a=n.tool,o=n.props;td(e,a,o)}))}(e),function(e){if(!Tt("globalConfiguration").configuration.globalToolSyncEnabled)return;var t={active:_t,passive:Ht,enabled:Lt,disabled:Dt};bt.state.globalToolChangeHistory.forEach((function(n){var a=n.args.slice(0);a.unshift(e),t[n.mode].apply(null,a)}))}(e)};var sd=N("internals:removeEnabledElement"),ld=function(e){sd.log("EVENT:ELEMENT_DISABLED");var t=e.detail.element,n=Tt("globalConfiguration").configuration;Tu(t),Nu(t),n.mouseEnabled&&(bc.disable(t),Ic.disable(t),Hu(t)),n.touchEnabled&&(Qc.disable(t),Qu(t)),cd(t),ud(t),dd(t)},cd=function(e){bt.state.tools.forEach((function(t){t.element===e&&Dt(t.element,t.name)})),bt.state.tools=bt.state.tools.filter((function(t){return t.element!==e}))},ud=function(e){bt.modules&&function(e){var t=bt.modules;Object.keys(t).forEach((function(n){"function"==typeof t[n].removeEnabledElementCallback&&t[n].removeEnabledElementCallback(e)}))}(e);var t=bt.state.enabledElements.findIndex((function(t){return t===e}));t>-1?bt.state.enabledElements.splice(t,1):sd.warn("unable to remove element")},dd=function(e){Rs.removeHandlers(e)};var hd,vd=function(){window.removeEventListener("resize",gd,!1)};function gd(){hd||(hd=setTimeout((function(){hd=null,fd()}),66))}var fd=function(){pt.enabledElements.forEach((function(e){y.cornerstone.resize(e)}))},md=function(){vd(),window.addEventListener("resize",gd,!1)},pd=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};yd(),xd();var t=Tt("globalConfiguration");Array.isArray(e)?e.forEach((function(e){var t=e.moduleName,n=e.configuration,a=Tt(t);a&&(a.configuration=Object.assign({},a.configuration,n))})):t.configuration=Object.assign({},t.configuration,e),t.configuration.autoResizeViewports&&md()};function yd(){!function(){var e=y.cornerstone,t=e.EVENTS.ELEMENT_ENABLED,n=e.EVENTS.ELEMENT_DISABLED;e.events.removeEventListener(t,id),e.events.removeEventListener(n,ld)}();var e=y.cornerstone,t=e.EVENTS.ELEMENT_ENABLED,n=e.EVENTS.ELEMENT_DISABLED;e.events.addEventListener(t,id),e.events.addEventListener(n,ld)}function xd(){var e=bt.modules;Object.keys(e).forEach((function(t){"function"==typeof e[t].onRegisterCallback&&e[t].onRegisterCallback()}))}var Td,bd=N("stackTools:stackPrefetch"),Cd={maxImagesToPrefetch:1/0,preserveExistingPool:!1};function Md(e,t){e=Math.round(e)||0;var n=[],a=(t=Math.round(t)||0)-e+1;if(a<=0)return n;for(;a--;)n[a]=t--;return n}var Ed=function(e){return Math.max.apply(null,e)},wd=function(e){return Math.min.apply(null,e)};function Id(e){var t=O(e,"stack");if(t&&t.data&&t.data.length){var n=t.data[0],a=O(e,"stackPrefetch");if(a){var o=a.data[0]||{};if(o.indicesToRequest&&o.indicesToRequest.length||(o.enabled=!1),!1!==o.enabled)if(a.data[0].indicesToRequest.sort((function(e,t){return e-t})),o.indicesToRequest.slice().forEach((function(e){var t=n.imageIds[e];t&&(y.cornerstone.imageCache.getImageLoadObject(t)&&E(e))})),o.indicesToRequest.length){Cd.preserveExistingPool||Nl.clearRequestStack("prefetch");for(var i,r,s=function(e,t){var n=[],a=[];return e.forEach((function(e){et&&a.push(e)})),{low:e.indexOf(Ed(n)),high:e.indexOf(wd(a))}}(o.indicesToRequest,n.currentImageIdIndex),l=Rs.getErrorLoadingHandler(e),c=s.low,u=s.high,d=[];c>=0||uCd.maxImagesToPrefetch)&&c>=0,g=!(o.indicesToRequest[u]-h>Cd.maxImagesToPrefetch)&&u-1&&o.indicesToRequest.splice(t,1)}function w(t){bd.log("prefetch done: %s",t.imageId);var a=n.imageIds.indexOf(t.imageId);E(a),C(e,b.STACK_PREFETCH_IMAGE_LOADED,{element:e,imageId:t.imageId,imageIndex:a,stackPrefetch:o,stack:n}),o.indicesToRequest&&o.indicesToRequest.length>0||C(e,b.STACK_PREFETCH_DONE,{element:e,stackPrefetch:o,stack:n})}function I(t){bd.log("prefetch errored: %o",t),l&&l(e,i,t,"stackPrefetch")}}function Sd(e){return function(t){var n,a=t.detail;try{n=O(e,"stack")}catch(e){return}if(n&&n.data&&n.data.length){var o=n.data[0].imageIds.indexOf(a.imageId);if(!(o<0)){var i=O(e,"stackPrefetch");i&&i.data&&i.data.length&&i.data[0].indicesToRequest.push(o)}}}}function kd(e){clearTimeout(Td),Td=setTimeout((function(){var t=e.target;try{Id(t)}catch(e){return}}),10)}var _d={enable:function(e){O(e,"stackPrefetch").data=[];var t=O(e,"stack");if(t&&t.data&&t.data.length){var n=t.data[0];if(!0!==n.preventCache){var a={indicesToRequest:Md(0,n.imageIds.length-1),enabled:!0,direction:1},o=a.indicesToRequest.indexOf(n.currentImageIdIndex);a.indicesToRequest.splice(o,1),D(e,"stackPrefetch",a),Id(e),e.removeEventListener(y.cornerstone.EVENTS.NEW_IMAGE,kd),e.addEventListener(y.cornerstone.EVENTS.NEW_IMAGE,kd);var i=Sd(e);y.cornerstone.events.removeEventListener(y.cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED,i),y.cornerstone.events.addEventListener(y.cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED,i)}else bd.warn("A stack that should not be cached was given the stackPrefetch")}},disable:function(e){clearTimeout(Td),e.removeEventListener(y.cornerstone.EVENTS.NEW_IMAGE,kd);var t=Sd(e);y.cornerstone.events.removeEventListener(y.cornerstone.EVENTS.IMAGE_CACHE_PROMISE_REMOVED,t);var n=O(e,"stackPrefetch");n&&n.data.length&&(n.data[0].enabled=!1,Nl.clearRequestStack("prefetch"))},getConfiguration:function(){return Cd},setConfiguration:function(e){var t;Cd=e,e.maxSimultaneousRequests&&(t=e.maxSimultaneousRequests,xl=t)}},Pd=function(){function e(){r()(this,e),this.currentImageIdIndex=0,this.layerIds=[],this.findImageFn=void 0}return l()(e,[{key:"render",value:function(e,t){var n=this;if(!Number.isInteger(this.currentImageIdIndex))throw new Error("FusionRenderer: render - Image ID Index is not an integer");if(!this.findImageFn)throw new Error("No findImage function has been defined");t||(t=O(e,"stack").data);var a=y.cornerstone,o=t[0],i=o.imageIds[this.currentImageIdIndex],r=t.slice(1,t.length);a.loadAndCacheImage(i).then((function(t){var s=n.layerIds[0];s?a.setLayerImage(e,t,s):(s=a.addLayer(e,t,o.options),n.layerIds.push(s)),a.displayImage(e,t),r.forEach((function(t,o){var r=n.findImageFn(t.imageIds,i),l=o+1,c=n.layerIds[l];c||(c=a.addLayer(e,void 0,t.options),n.layerIds.push(c)),r?a.loadAndCacheImage(r).then((function(t){a.setLayerImage(e,t,c),a.updateImage(e)})):(a.setLayerImage(e,void 0,c),a.setActiveLayer(e,s),a.updateImage(e))}))}))}}]),e}(),Dd={};Dd.FusionRenderer=Pd;var Od=Dd;function Ld(e){var t=e.intervalId;void 0!==t&&(e.intervalId=void 0,e.usingFrameTimeVector?clearTimeout(t):clearInterval(t))}function Ad(e,t){var n,a;if(void 0===e)throw new Error("playClip: element must not be undefined");var o=O(e,"stack");if(o&&o.data&&o.data.length){var i,r=y.cornerstone;if(o.data.length>1){var s=O(e,"stackRenderer");s&&s.data&&s.data.length&&(i=s.data[0])}var l=o.data[0],c=O(e,"playClip");c&&c.data&&c.data.length?Ld(n=c.data[0]):D(e,"playClip",n={intervalId:void 0,framesPerSecond:30,lastFrameTimeStamp:void 0,frameRate:0,frameTimeVector:void 0,ignoreFrameTimeVector:!1,usingFrameTimeVector:!1,speed:1,reverse:!1,loop:!0}),(t<0||t>0)&&(n.framesPerSecond=Number(t),n.reverse=n.framesPerSecond<0,n.ignoreFrameTimeVector=!0),!0!==n.ignoreFrameTimeVector&&n.frameTimeVector&&n.frameTimeVector.length===l.imageIds.length&&(a=function(e,t){var n,a,o,i=0,r=e.length,s=[];for(s.isTimeVarying=!1,("number"!=typeof t||t<=0)&&(t=1),n=1;n0&&(o=s.isTimeVarying?i/s.length|0:s[0],s.push(o)),s}(n.frameTimeVector,n.speed));var u=function(){var t,a,s,c=l.currentImageIdIndex,u=l.imageIds.length;if(n.reverse?c--:c++,!n.loop&&(c<0||c>=u))return Ld(n),void function(e){C(e,b.CLIP_STOPPED,{element:e})}(e);c>=u&&(c=0),c<0&&(c=u-1),c!==l.currentImageIdIndex&&(t=Rs.getStartLoadHandler(e),a=Rs.getEndLoadHandler(e),s=Rs.getErrorLoadingHandler(e),t&&t(e),(!0===l.preventCache?r.loadImage(l.imageIds[c]):r.loadAndCacheImage(l.imageIds[c])).then((function(t){try{l.currentImageIdIndex=c,i?(i.currentImageIdIndex=c,i.render(e,o.data)):r.displayImage(e,t),a&&a(e,t)}catch(e){return}}),(function(t){var n=l.imageIds[c];s&&s(e,n,t)})))};a&&a.length>0&&a.isTimeVarying?(n.usingFrameTimeVector=!0,n.intervalId=setTimeout((function e(){n.intervalId=setTimeout(e,a[l.currentImageIdIndex]),u()}),0)):(n.usingFrameTimeVector=!1,n.intervalId=setInterval(u,1e3/Math.abs(n.framesPerSecond)))}}function Hd(e){var t=O(e,"playClip");t&&t.data&&t.data.length&&Ld(t.data[0])}var Rd=function(e,t){var n=bt.state.tools.findIndex((function(n){return n.element===e&&n.name===t}));n>=0&&bt.state.tools.splice(n,1)},Ud=function(e){Nd(e),bt.state.enabledElements.forEach((function(t){Rd(t,e)}))},Nd=function(e){Tt("globalConfiguration").configuration.globalToolSyncEnabled&&bt.state.globalTools[e]&&delete bt.state.globalTools[e]},Fd=function(e,t,n){var a=Ct(e,t);a&&a.mergeOptions(n)},Bd=function(e,t){pt.enabledElements.forEach((function(n){Fd(n,e,t)}))};function Vd(e,t){var n={};return{get:function(a,o){return e.indexOf(o)>=0?(!1===n.hasOwnProperty(o)&&(n[o]={data:[]}),n[o]):t.get(a,o)},add:function(a,o,i){if(!(e.indexOf(o)>=0))return t.add(a,o,i);!1===n.hasOwnProperty(o)&&(n[o]={data:[]}),n[o].data.push(i)},saveToolState:function(){return n},restoreToolState:function(e){n=e},toolState:n}}var qd=[];function zd(e,t){var n=P(e);n||(n=_);var a=["stack","stackPrefetch","playClip","volume","slab","referenceLines","crosshairs","stackRenderer"];t&&(a=a.concat(t));var o=Vd(a,n);qd.push(o),H(e,o)}var jd={newStackSpecificToolStateManager:Vd,addStackStateManager:zd};function Wd(){var e={};return{get:function(t,n){if(!1!==e.hasOwnProperty(t)){var a=e[t];if(!1!==a.hasOwnProperty(n))return a[n]}},add:function(t,n,a){!1===e.hasOwnProperty(t)&&(e[t]={});var o=e[t];!1===o.hasOwnProperty(n)&&(o[n]={data:[]}),o[n].data.push(a)},remove:function(t,n,a){if(!1!==e.hasOwnProperty(t)){var o=e[t];if(!1!==o.hasOwnProperty(n)){for(var i=o[n],r=-1,s=0;s2&&void 0!==arguments[2]?arguments[2]:"image/png",a=e.querySelector("canvas");if(a.msToBlob){var o=a.msToBlob();return window.navigator.msSaveBlob(o,t)}var i=document.createElement("a");if(i.download=t,i.href=a.toDataURL(n,1),document.createEvent){var r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(r)}else i.fireEvent&&i.fireEvent("onclick")},Xd=N("thirdParty:registerModule"),Kd=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=Zd(e);!a||n?(a&&Xd.warn("Overwriting module %s",e),xt[e]=t,"function"==typeof xt[e].onRegisterCallback&&xt[e].onRegisterCallback()):Xd.warn("A module with the name %s is already registered",e)};function Zd(e){return void 0!==xt[e]}var $d={"base/BaseTool":ca,"base/BaseAnnotationTool":ro,"base/BaseBrushTool":Ma,"tools/cursors/MouseCursor":uo,"tools/cursors":o,"manipulators/anyHandlesOutsideImage":ga,"manipulators/getHandleNearImagePoint":ha,"manipulators/handleActivator":va,"manipulators/moveAllHandles":Pa,"manipulators/moveHandle":Ba,"manipulators/moveNewHandle":Za,"manipulators/moveHandleNearImagePoint":no,"manipulators/findHandleDataNearImagePoint":ao,"manipulators/moveAnnotation":oo,"mixins/activeOrDisabledBinaryTool":ea.activeOrDisabledBinaryTool,"mixins/enabledOrDisabledBinaryTool":ea.enabledOrDisabledBinaryTool,"drawing/getNewContext":En,"drawing/draw":Wt,"drawing/path":Kt,"drawing/setShadow":In,"drawing/drawLine":Zt,"drawing/drawLines":hn,"drawing/drawJoinedLines":$t,"drawing/drawCircle":Qt,"drawing/drawEllipse":rn,"drawing/drawRect":Mn,"drawing/fillOutsideRect":function(e,t,n,a,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"pixel";if("pixel"===i){var r=y.cornerstone;n=r.pixelToCanvas(t,n),a=r.pixelToCanvas(t,a)}var s=Math.min(n.x,a.x),l=Math.min(n.y,a.y),c=Math.abs(n.x-a.x),u=Math.abs(n.y-a.y);Kt(e,o,(function(e){e.rect(0,0,e.canvas.clientWidth,e.canvas.clientHeight),e.rect(s+c,l,-c,u)}))},"drawing/drawTextBox":bn,"drawing/drawArrow":Jt,"drawing/fillBox":xn,"drawing/fillTextLines":yn,"drawing/drawLink":vn,"drawing/drawLinkedTextBox":Cn,"drawing/drawHandles":dn,"drawing/textBoxWidth":Tn,"util/getLuminance":Wl,"util/getROITextBoxCoords":Zi,"util/copyPoints":uc,"util/calculateSUV":Wi,"util/setContextToDisplayFontSize":function(e,t,n){return y.cornerstone.setToPixelCoordinateSystem(e,t,.1),{fontSize:n/e.viewport.scale/.1,lineHeight:n/e.viewport.scale/.1,fontScale:.1}},"util/scrollToIndex":Fl,"util/scroll":Bl,"util/roundToDecimal":lo,"util/projectPatientPointToImagePlane":tn,"util/imagePointToPatientPoint":nn,"util/planePlaneIntersection":an,"util/pointInsideBoundingBox":ua,"util/makeUnselectable":function(e,t){e.style.webkitUserSelect="none",e.style.webkitTouchCallout="none",e.style.mozUserSelect="none",e.style.msUserSelect="none",e.style.oUserSelect="none",e.style.khtmlUserSelect="none",e.style.userSelect="none",e.unselectable="on",e.oncontextmenu=function(){return!1},!0===t&&(e.style.pointerEvents="none")},"util/getRGBPixels":Rr,"util/getDefaultSimultaneousRequests":_l,"util/getMaxSimultaneousRequests":kl,"util/getBrowserInfo":Sl,"util/isMobileDevice":function(){return new RegExp("Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini").test(navigator.userAgent)},"util/angleBetweenPoints":gl,"util/numbersWithCommas":$i,"util/lineSegDistance":so,"util/triggerEvent":C,"util/convertToVector3":en,"util/clip":fa,"util/clipToBox":ma,"util/debounce":Qo,"util/deepmerge":ra,"util/getDefault":wn,"util/getPixelSpacing":$o,"util/isEmptyObject":Sn,"util/isObject":Jo,"util/isPointInImage":Ge,"util/isPointInPolygon":as,"util/getLogger":N,"util/throttle":ei,"util/wait":ul,"util/waitForEnabledElementImageToLoad":dl,"util/getKeyPressData":function(e){var t=y.cornerstone,n=e.currentTarget,a=t.getEnabledElement(n);if(a&&a.image){var o=bt.state.mousePositionImage;return{event:window.event||e,element:n,viewport:t.getViewport(n),image:a.image,currentPoints:{image:o,canvas:t.pixelToCanvas(n,o)},keyCode:e.keyCode,which:e.which}}},"util/ellipseUtils":Ki,"util/freehandUtils":wr,"util/segmentationUtils":a,"util/zoomUtils":Ql},Jd=N("thirdParty:registerMixin"),Qd=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=eh(e);!a||n?(a&&Jd.warn("Overwriting mixins/%s",e),ea[e]=t,$d["mixins/".concat(e)]=ea[e]):Jd.warn("mixins/%s is already registered",e)};function eh(e){return void 0!==ea[e]}var th=N("thirdParty:registerType"),nh=function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o="".concat(e,"/").concat(t),i=ah(o);!i||a?(i&&th.warn("Overwriting %s",o),$d[o]=n):th.warn("%s is already registered",o)};function ah(e){return void 0!==$d[e]}var oh=N("thirdParty:register"),ih=function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(rh(e,t,n))switch(e){case"module":Kd(t,n,a);break;case"mixin":Qd(t,n,a);break;default:nh(e,t,n,a)}};function rh(e,t,n){return e?t?"object"===T()(n)||"function"==typeof n||(oh.warn("The %s is a %s, it should be an Object or a function.",n,T()(n)),!1):(oh.warn("The %s must have a name in order to register.",e),!1):(oh.warn("The type must be given in order to register."),!1)}var sh=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e.forEach((function(e){var n=e.type,a=e.name,o=e.item;ih(n,a,o,t)}))},lh=function(e,t,n){if(n!==t){var a=y.cornerstone,o=a.getViewport(t),i=a.getViewport(n);i.voi.windowWidth===o.voi.windowWidth&&i.voi.windowCenter===o.voi.windowCenter&&i.invert===o.invert||(i.voi.windowWidth=o.voi.windowWidth,i.voi.windowCenter=o.voi.windowCenter,i.invert=o.invert,e.setViewport(n,i))}},ch=function(e,t,n){n!==t&&y.cornerstone.updateImage(n)};function uh(e){return e.filter((function(e,t,n){return n.indexOf(e)===t}))}var dh=function(e,t){var n=y.cornerstone,a=this,o=[],i=[],r=!1,s={},l=t;function c(e){var t=e.detail.element;a.remove(t),function(e){for(var t in Us)Us[t]=Us[t].filter((function(t){return t.element!==e}))}(t)}this.enabled=!0,this.setHandler=function(e){l=e},this.getHandler=function(){return l},this.getDistances=function(){o.length&&i.length&&(s.distances={},s.imageIds={sourceElements:[],targetElements:[]},o.forEach((function(e){var t=n.getEnabledElement(e);if(t&&t.image){var a=t.image.imageId,o=n.metaData.get("imagePlaneModule",a);if(o&&o.imagePositionPatient){var r=en(o.imagePositionPatient);s.hasOwnProperty(t)||(s.distances[a]={},s.imageIds.sourceElements.push(a),i.forEach((function(t){var o=n.getEnabledElement(t);if(o&&o.image){var i=o.image.imageId;if(s.imageIds.targetElements.push(i),e!==t&&a!==i&&!s.distances[a].hasOwnProperty(i)){var l=n.metaData.get("imagePlaneModule",i);if(l&&l.imagePositionPatient){var c=en(l.imagePositionPatient);s.distances[a][i]=c.clone().sub(r)}}}})),Object.keys(s.distances[a]).length||delete s.distances[a])}}})))},this.fireEvent=function(e,t){var n=!a.enabled,c=!o.length||!i.length;n||c||(r=!0,i.forEach((function(n){var r=i.indexOf(n);if(-1!==r){var c=s.imageIds.targetElements[r],u=o.indexOf(e);if(-1!==u){var d,h=s.imageIds.sourceElements[u];h===c?d=0:void 0!==s.distances[h]&&(d=s.distances[h][c]),l(a,e,n,t,d)}}})),r=!1)},this.onEvent=function(e){var t=e.detail;!0!==r&&a.fireEvent(e.currentTarget,t)},this.addSource=function(t){-1===o.indexOf(t)&&(o.push(t),e.split(" ").forEach((function(e){t.addEventListener(e,a.onEvent)})),a.getDistances(),a.updateDisableHandlers())},this.addTarget=function(e){-1===i.indexOf(e)&&(i.push(e),a.getDistances(),l(a,e,e,0),a.updateDisableHandlers())},this.add=function(e){a.addSource(e),a.addTarget(e)},this.removeSource=function(t){var n=o.indexOf(t);-1!==n&&(o.splice(n,1),e.split(" ").forEach((function(e){t.removeEventListener(e,a.onEvent)})),a.getDistances(),a.fireEvent(t),a.updateDisableHandlers())},this.removeTarget=function(e){var t=i.indexOf(e);-1!==t&&(i.splice(t,1),a.getDistances(),l(a,e,e,0),a.updateDisableHandlers())},this.remove=function(e){a.removeTarget(e),a.removeSource(e)},this.getSourceElements=function(){return o},this.getTargetElements=function(){return i},this.displayImage=function(e,t,a){r=!0,n.displayImage(e,t,a),r=!1},this.setViewport=function(e,t){r=!0,n.setViewport(e,t),r=!1},this.updateDisableHandlers=function(){uh(o.concat(i)).forEach((function(e){e.removeEventListener(y.cornerstone.EVENTS.ELEMENT_DISABLED,c),e.addEventListener(y.cornerstone.EVENTS.ELEMENT_DISABLED,c)}))},this.destroy=function(){uh(o.concat(i)).forEach((function(e){a.remove(e)}))}},hh=function(e,t,n,a){if(t!==n&&a&&a.direction){var o=y.cornerstone,i=O(n,"stack").data[0],r=i.currentImageIdIndex+a.direction;if(r=pa(r,0,i.imageIds.length-1),i.currentImageIdIndex!==r){var s=Rs.getStartLoadHandler(n),l=Rs.getEndLoadHandler(n),c=Rs.getErrorLoadingHandler(n);i.currentImageIdIndex=r;var u=i.imageIds[r];s&&s(n),(!0===i.preventCache?o.loadImage(u):o.loadAndCacheImage(u)).then((function(t){var a=o.getViewport(n);i.currentImageIdIndex===r&&(e.displayImage(n,t,a),l&&l(n,t))}),(function(e){var t=i.imageIds[r];c&&c(n,t,e)}))}}},vh=function(e,t,n){if(n!==t){var a=y.cornerstone,o=O(t,"stack").data[0],i=o.imageIds[o.currentImageIdIndex],r=a.metaData.get("imagePlaneModule",i);if(void 0!==r&&void 0!==r.imagePositionPatient){var s=en(r.imagePositionPatient),l=O(n,"stack").data[0],c=Number.MAX_VALUE,u=-1;if(l.imageIds.forEach((function(e,t){var n=a.metaData.get("imagePlaneModule",e);if(void 0!==n&&void 0!==n.imagePositionPatient){var o=en(n.imagePositionPatient).distanceToSquared(s);o= 0) hot._disposeHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ // Management API +/******/ check: hotCheck, +/******/ apply: hotApply, +/******/ status: function(l) { +/******/ if (!l) return hotStatus; +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ addStatusHandler: function(l) { +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ removeStatusHandler: function(l) { +/******/ var idx = hotStatusHandlers.indexOf(l); +/******/ if (idx >= 0) hotStatusHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ //inherit from previous dispose call +/******/ data: hotCurrentModuleData[moduleId] +/******/ }; +/******/ hotCurrentChildModule = undefined; +/******/ return hot; +/******/ } +/******/ +/******/ var hotStatusHandlers = []; +/******/ var hotStatus = "idle"; +/******/ +/******/ function hotSetStatus(newStatus) { +/******/ hotStatus = newStatus; +/******/ for (var i = 0; i < hotStatusHandlers.length; i++) +/******/ hotStatusHandlers[i].call(null, newStatus); +/******/ } +/******/ +/******/ // while downloading +/******/ var hotWaitingFiles = 0; +/******/ var hotChunksLoading = 0; +/******/ var hotWaitingFilesMap = {}; +/******/ var hotRequestedFilesMap = {}; +/******/ var hotAvailableFilesMap = {}; +/******/ var hotDeferred; +/******/ +/******/ // The update info +/******/ var hotUpdate, hotUpdateNewHash; +/******/ +/******/ function toModuleId(id) { +/******/ var isNumber = +id + "" === id; +/******/ return isNumber ? +id : id; +/******/ } +/******/ +/******/ function hotCheck(apply) { +/******/ if (hotStatus !== "idle") { +/******/ throw new Error("check() is only allowed in idle status"); +/******/ } +/******/ hotApplyOnUpdate = apply; +/******/ hotSetStatus("check"); +/******/ return hotDownloadManifest(hotRequestTimeout).then(function(update) { +/******/ if (!update) { +/******/ hotSetStatus("idle"); +/******/ return null; +/******/ } +/******/ hotRequestedFilesMap = {}; +/******/ hotWaitingFilesMap = {}; +/******/ hotAvailableFilesMap = update.c; +/******/ hotUpdateNewHash = update.h; +/******/ +/******/ hotSetStatus("prepare"); +/******/ var promise = new Promise(function(resolve, reject) { +/******/ hotDeferred = { +/******/ resolve: resolve, +/******/ reject: reject +/******/ }; +/******/ }); +/******/ hotUpdate = {}; +/******/ var chunkId = "cornerstoneWADOImageLoader"; +/******/ // eslint-disable-next-line no-lone-blocks +/******/ { +/******/ /*globals chunkId */ +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if ( +/******/ hotStatus === "prepare" && +/******/ hotChunksLoading === 0 && +/******/ hotWaitingFiles === 0 +/******/ ) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ return promise; +/******/ }); +/******/ } +/******/ +/******/ // eslint-disable-next-line no-unused-vars +/******/ function hotAddUpdateChunk(chunkId, moreModules) { +/******/ if (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId]) +/******/ return; +/******/ hotRequestedFilesMap[chunkId] = false; +/******/ for (var moduleId in moreModules) { +/******/ if (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ hotUpdate[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if (--hotWaitingFiles === 0 && hotChunksLoading === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ +/******/ function hotEnsureUpdateChunk(chunkId) { +/******/ if (!hotAvailableFilesMap[chunkId]) { +/******/ hotWaitingFilesMap[chunkId] = true; +/******/ } else { +/******/ hotRequestedFilesMap[chunkId] = true; +/******/ hotWaitingFiles++; +/******/ hotDownloadUpdateChunk(chunkId); +/******/ } +/******/ } +/******/ +/******/ function hotUpdateDownloaded() { +/******/ hotSetStatus("ready"); +/******/ var deferred = hotDeferred; +/******/ hotDeferred = null; +/******/ if (!deferred) return; +/******/ if (hotApplyOnUpdate) { +/******/ // Wrap deferred object in Promise to mark it as a well-handled Promise to +/******/ // avoid triggering uncaught exception warning in Chrome. +/******/ // See https://bugs.chromium.org/p/chromium/issues/detail?id=465666 +/******/ Promise.resolve() +/******/ .then(function() { +/******/ return hotApply(hotApplyOnUpdate); +/******/ }) +/******/ .then( +/******/ function(result) { +/******/ deferred.resolve(result); +/******/ }, +/******/ function(err) { +/******/ deferred.reject(err); +/******/ } +/******/ ); +/******/ } else { +/******/ var outdatedModules = []; +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ outdatedModules.push(toModuleId(id)); +/******/ } +/******/ } +/******/ deferred.resolve(outdatedModules); +/******/ } +/******/ } +/******/ +/******/ function hotApply(options) { +/******/ if (hotStatus !== "ready") +/******/ throw new Error("apply() is only allowed in ready status"); +/******/ options = options || {}; +/******/ +/******/ var cb; +/******/ var i; +/******/ var j; +/******/ var module; +/******/ var moduleId; +/******/ +/******/ function getAffectedStuff(updateModuleId) { +/******/ var outdatedModules = [updateModuleId]; +/******/ var outdatedDependencies = {}; +/******/ +/******/ var queue = outdatedModules.map(function(id) { +/******/ return { +/******/ chain: [id], +/******/ id: id +/******/ }; +/******/ }); +/******/ while (queue.length > 0) { +/******/ var queueItem = queue.pop(); +/******/ var moduleId = queueItem.id; +/******/ var chain = queueItem.chain; +/******/ module = installedModules[moduleId]; +/******/ if (!module || module.hot._selfAccepted) continue; +/******/ if (module.hot._selfDeclined) { +/******/ return { +/******/ type: "self-declined", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ if (module.hot._main) { +/******/ return { +/******/ type: "unaccepted", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ for (var i = 0; i < module.parents.length; i++) { +/******/ var parentId = module.parents[i]; +/******/ var parent = installedModules[parentId]; +/******/ if (!parent) continue; +/******/ if (parent.hot._declinedDependencies[moduleId]) { +/******/ return { +/******/ type: "declined", +/******/ chain: chain.concat([parentId]), +/******/ moduleId: moduleId, +/******/ parentId: parentId +/******/ }; +/******/ } +/******/ if (outdatedModules.indexOf(parentId) !== -1) continue; +/******/ if (parent.hot._acceptedDependencies[moduleId]) { +/******/ if (!outdatedDependencies[parentId]) +/******/ outdatedDependencies[parentId] = []; +/******/ addAllToSet(outdatedDependencies[parentId], [moduleId]); +/******/ continue; +/******/ } +/******/ delete outdatedDependencies[parentId]; +/******/ outdatedModules.push(parentId); +/******/ queue.push({ +/******/ chain: chain.concat([parentId]), +/******/ id: parentId +/******/ }); +/******/ } +/******/ } +/******/ +/******/ return { +/******/ type: "accepted", +/******/ moduleId: updateModuleId, +/******/ outdatedModules: outdatedModules, +/******/ outdatedDependencies: outdatedDependencies +/******/ }; +/******/ } +/******/ +/******/ function addAllToSet(a, b) { +/******/ for (var i = 0; i < b.length; i++) { +/******/ var item = b[i]; +/******/ if (a.indexOf(item) === -1) a.push(item); +/******/ } +/******/ } +/******/ +/******/ // at begin all updates modules are outdated +/******/ // the "outdated" status can propagate to parents if they don't accept the children +/******/ var outdatedDependencies = {}; +/******/ var outdatedModules = []; +/******/ var appliedUpdate = {}; +/******/ +/******/ var warnUnexpectedRequire = function warnUnexpectedRequire() { +/******/ console.warn( +/******/ "[HMR] unexpected require(" + result.moduleId + ") to disposed module" +/******/ ); +/******/ }; +/******/ +/******/ for (var id in hotUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ moduleId = toModuleId(id); +/******/ /** @type {TODO} */ +/******/ var result; +/******/ if (hotUpdate[id]) { +/******/ result = getAffectedStuff(moduleId); +/******/ } else { +/******/ result = { +/******/ type: "disposed", +/******/ moduleId: id +/******/ }; +/******/ } +/******/ /** @type {Error|false} */ +/******/ var abortError = false; +/******/ var doApply = false; +/******/ var doDispose = false; +/******/ var chainInfo = ""; +/******/ if (result.chain) { +/******/ chainInfo = "\nUpdate propagation: " + result.chain.join(" -> "); +/******/ } +/******/ switch (result.type) { +/******/ case "self-declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of self decline: " + +/******/ result.moduleId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "declined": +/******/ if (options.onDeclined) options.onDeclined(result); +/******/ if (!options.ignoreDeclined) +/******/ abortError = new Error( +/******/ "Aborted because of declined dependency: " + +/******/ result.moduleId + +/******/ " in " + +/******/ result.parentId + +/******/ chainInfo +/******/ ); +/******/ break; +/******/ case "unaccepted": +/******/ if (options.onUnaccepted) options.onUnaccepted(result); +/******/ if (!options.ignoreUnaccepted) +/******/ abortError = new Error( +/******/ "Aborted because " + moduleId + " is not accepted" + chainInfo +/******/ ); +/******/ break; +/******/ case "accepted": +/******/ if (options.onAccepted) options.onAccepted(result); +/******/ doApply = true; +/******/ break; +/******/ case "disposed": +/******/ if (options.onDisposed) options.onDisposed(result); +/******/ doDispose = true; +/******/ break; +/******/ default: +/******/ throw new Error("Unexception type " + result.type); +/******/ } +/******/ if (abortError) { +/******/ hotSetStatus("abort"); +/******/ return Promise.reject(abortError); +/******/ } +/******/ if (doApply) { +/******/ appliedUpdate[moduleId] = hotUpdate[moduleId]; +/******/ addAllToSet(outdatedModules, result.outdatedModules); +/******/ for (moduleId in result.outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call( +/******/ result.outdatedDependencies, +/******/ moduleId +/******/ ) +/******/ ) { +/******/ if (!outdatedDependencies[moduleId]) +/******/ outdatedDependencies[moduleId] = []; +/******/ addAllToSet( +/******/ outdatedDependencies[moduleId], +/******/ result.outdatedDependencies[moduleId] +/******/ ); +/******/ } +/******/ } +/******/ } +/******/ if (doDispose) { +/******/ addAllToSet(outdatedModules, [result.moduleId]); +/******/ appliedUpdate[moduleId] = warnUnexpectedRequire; +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Store self accepted outdated modules to require them later by the module system +/******/ var outdatedSelfAcceptedModules = []; +/******/ for (i = 0; i < outdatedModules.length; i++) { +/******/ moduleId = outdatedModules[i]; +/******/ if ( +/******/ installedModules[moduleId] && +/******/ installedModules[moduleId].hot._selfAccepted && +/******/ // removed self-accepted modules should not be required +/******/ appliedUpdate[moduleId] !== warnUnexpectedRequire +/******/ ) { +/******/ outdatedSelfAcceptedModules.push({ +/******/ module: moduleId, +/******/ errorHandler: installedModules[moduleId].hot._selfAccepted +/******/ }); +/******/ } +/******/ } +/******/ +/******/ // Now in "dispose" phase +/******/ hotSetStatus("dispose"); +/******/ Object.keys(hotAvailableFilesMap).forEach(function(chunkId) { +/******/ if (hotAvailableFilesMap[chunkId] === false) { +/******/ hotDisposeChunk(chunkId); +/******/ } +/******/ }); +/******/ +/******/ var idx; +/******/ var queue = outdatedModules.slice(); +/******/ while (queue.length > 0) { +/******/ moduleId = queue.pop(); +/******/ module = installedModules[moduleId]; +/******/ if (!module) continue; +/******/ +/******/ var data = {}; +/******/ +/******/ // Call dispose handlers +/******/ var disposeHandlers = module.hot._disposeHandlers; +/******/ for (j = 0; j < disposeHandlers.length; j++) { +/******/ cb = disposeHandlers[j]; +/******/ cb(data); +/******/ } +/******/ hotCurrentModuleData[moduleId] = data; +/******/ +/******/ // disable module (this disables requires from this module) +/******/ module.hot.active = false; +/******/ +/******/ // remove module from cache +/******/ delete installedModules[moduleId]; +/******/ +/******/ // when disposing there is no need to call dispose handler +/******/ delete outdatedDependencies[moduleId]; +/******/ +/******/ // remove "parents" references from all children +/******/ for (j = 0; j < module.children.length; j++) { +/******/ var child = installedModules[module.children[j]]; +/******/ if (!child) continue; +/******/ idx = child.parents.indexOf(moduleId); +/******/ if (idx >= 0) { +/******/ child.parents.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ +/******/ // remove outdated dependency from module children +/******/ var dependency; +/******/ var moduleOutdatedDependencies; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ for (j = 0; j < moduleOutdatedDependencies.length; j++) { +/******/ dependency = moduleOutdatedDependencies[j]; +/******/ idx = module.children.indexOf(dependency); +/******/ if (idx >= 0) module.children.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Now in "apply" phase +/******/ hotSetStatus("apply"); +/******/ +/******/ hotCurrentHash = hotUpdateNewHash; +/******/ +/******/ // insert new code +/******/ for (moduleId in appliedUpdate) { +/******/ if (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) { +/******/ modules[moduleId] = appliedUpdate[moduleId]; +/******/ } +/******/ } +/******/ +/******/ // call accept handlers +/******/ var error = null; +/******/ for (moduleId in outdatedDependencies) { +/******/ if ( +/******/ Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId) +/******/ ) { +/******/ module = installedModules[moduleId]; +/******/ if (module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ var callbacks = []; +/******/ for (i = 0; i < moduleOutdatedDependencies.length; i++) { +/******/ dependency = moduleOutdatedDependencies[i]; +/******/ cb = module.hot._acceptedDependencies[dependency]; +/******/ if (cb) { +/******/ if (callbacks.indexOf(cb) !== -1) continue; +/******/ callbacks.push(cb); +/******/ } +/******/ } +/******/ for (i = 0; i < callbacks.length; i++) { +/******/ cb = callbacks[i]; +/******/ try { +/******/ cb(moduleOutdatedDependencies); +/******/ } catch (err) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "accept-errored", +/******/ moduleId: moduleId, +/******/ dependencyId: moduleOutdatedDependencies[i], +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Load self accepted modules +/******/ for (i = 0; i < outdatedSelfAcceptedModules.length; i++) { +/******/ var item = outdatedSelfAcceptedModules[i]; +/******/ moduleId = item.module; +/******/ hotCurrentParents = [moduleId]; +/******/ try { +/******/ __webpack_require__(moduleId); +/******/ } catch (err) { +/******/ if (typeof item.errorHandler === "function") { +/******/ try { +/******/ item.errorHandler(err); +/******/ } catch (err2) { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-error-handler-errored", +/******/ moduleId: moduleId, +/******/ error: err2, +/******/ originalError: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err2; +/******/ } +/******/ if (!error) error = err; +/******/ } +/******/ } else { +/******/ if (options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-errored", +/******/ moduleId: moduleId, +/******/ error: err +/******/ }); +/******/ } +/******/ if (!options.ignoreErrored) { +/******/ if (!error) error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // handle errors in accept handlers and self accepted module load +/******/ if (error) { +/******/ hotSetStatus("fail"); +/******/ return Promise.reject(error); +/******/ } +/******/ +/******/ hotSetStatus("idle"); +/******/ return new Promise(function(resolve) { +/******/ resolve(outdatedModules); +/******/ }); +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {}, +/******/ hot: hotCreateModule(moduleId), +/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp), +/******/ children: [] +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId)); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // __webpack_hash__ +/******/ __webpack_require__.h = function() { return hotCurrentHash; }; +/******/ +/******/ +/******/ // Load entry module and return exports +/******/ return hotCreateRequire("./imageLoader/index.js")(__webpack_require__.s = "./imageLoader/index.js"); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "../codecs/charLS-FixedMemory-browser.js": +/*!***********************************************!*\ + !*** ../codecs/charLS-FixedMemory-browser.js ***! + \***********************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/*! CharLS.js - v2.0.1 - 2016-06-08 | (c) 2016 Chris Hafey | https://github.com/chafey/charls */ + +// Notes: +// - Had to patch parsejsfunc +var CharLS = function(Module) { + Module = Module || {}; + + var Module;if(!Module)Module=(typeof CharLS!=="undefined"?CharLS:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=require("fs");var nodePath=require("path");Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a"}else{ret=name}paramLoop:while(i0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||4e8;var totalMemory=64*1024;while(totalMemory0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+59744;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_jpegls_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35640);allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39844);allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+42396);allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52636);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0){if(info.destructor){Runtime.dynCall("vi",info.destructor,[ptr])}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(ptr));throw ptr}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm["setTempRet0"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm["setTempRet0"](0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(asm["setTempRet0"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr}Module["_memset"]=_memset;var _BDtoILow=true;var _emscripten_resume=true;function ___gxx_personality_v0(){}var _emscripten_landingpad=true;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%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 rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){return leadingNulls(date.tm_hour<13?date.tm_hour:date.tm_hour-12,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>0&&date.tm_hour<13){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _free(){}Module["_free"]=_free;function ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown){___cxa_end_catch.rethrown=false;return}asm["setThrew"](0);var ptr=EXCEPTIONS.caught.pop();if(ptr){EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));EXCEPTIONS.last=0}}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Runtime.dynCall("v",func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _fabs=Math_abs;var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"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.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.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!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_i64Add"]=_i64Add;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(variable){if(!HEAP8[variable>>0]){HEAP8[variable>>0]=1;return 1}return 0}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _llvm_eh_typeid_for(type){return type}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _pthread_mutex_lock(){}var _emscripten_postinvoke=true;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_bitshift64Shl"]=_bitshift64Shl;function ___cxa_guard_abort(){}Module["_memmove"]=_memmove;var _emscripten_preinvoke=true;var _BItoD=true;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=true;var ptr=EXCEPTIONS.caught.pop();EXCEPTIONS.last=ptr;throw ptr}function _pthread_mutex_unlock(){}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function $b(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function ac(a){a=a|0;D=a}function bc(){return D|0}function cc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+128|0;p=w+44|0;s=w+8|0;l=w+4|0;n=w;q=e+4|0;r=e+8|0;o=0;Aa(35,c[e>>2]|0,c[q>>2]|0,c[r>>2]|0,f|0);m=o;o=0;if(!(m&1)){j=p;h=j+84|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(h|0));f=p+12|0;if((c[f>>2]|0)==0?(k=$(((c[p+8>>2]|0)+7|0)/8|0,c[p>>2]|0)|0,c[f>>2]=k,(c[p+24>>2]|0)!=0):0)c[f>>2]=$(c[p+16>>2]|0,k)|0;o=0;ha(176,s|0);m=o;o=0;if(!(m&1)){f=p+56|0;do if(c[f>>2]|0){o=0;f=ka(66,f|0)|0;m=o;o=0;if(!(m&1)){c[l>>2]=f;h=s+28|0;j=c[h>>2]|0;if(j>>>0<(c[s+32>>2]|0)>>>0){c[j>>2]=f;c[h>>2]=j+4;c[l>>2]=0;t=19;break}o=0;ia(57,s+24|0,l|0);m=o;o=0;if(m&1){h=Na(824,0)|0;f=D;j=c[l>>2]|0;c[l>>2]=0;if(!j)break;Bb[c[(c[j>>2]|0)+4>>2]&255](j);break}else{f=c[l>>2]|0;c[l>>2]=0;if(!f){t=19;break}Bb[c[(c[f>>2]|0)+4>>2]&255](f);t=19;break}}else t=15}else t=19;while(0);a:do if((t|0)==19){j=p+4|0;k=p+8|0;l=p+16|0;o=0;f=va(14,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;m=o;o=0;if(!(m&1)){c[n>>2]=f;m=s+28|0;h=c[m>>2]|0;do if(h>>>0>=(c[s+32>>2]|0)>>>0){o=0;ia(57,s+24|0,n|0);h=o;o=0;if(h&1){h=Na(824,0)|0;f=D;j=c[n>>2]|0;c[n>>2]=0;if(!j)break a;Bb[c[(c[j>>2]|0)+4>>2]&255](j);break a}else{f=c[n>>2]|0;c[n>>2]=0;if(!f)break;Bb[c[(c[f>>2]|0)+4>>2]&255](f);break}}else{c[h>>2]=f;c[m>>2]=h+4;c[n>>2]=0}while(0);f=c[p+28>>2]|0;if((f|0)!=0?(o=0,ia(58,s|0,f|0),t=o,o=0,t&1):0){t=15;break}b:do if(!(c[p+24>>2]|0)){f=$(c[j>>2]|0,c[p>>2]|0)|0;f=$(f,((c[k>>2]|0)+7|0)/8|0)|0;if((c[l>>2]|0)>0){j=0;while(1){o=0;wa(4,s|0,e|0,p|0);t=o;o=0;if(t&1)break;h=c[q>>2]|0;if(h){c[q>>2]=h+f;c[r>>2]=(c[r>>2]|0)-f}j=j+1|0;if((j|0)>=(c[l>>2]|0))break b}h=Na(824,0)|0;f=D;t=16;break a}}else{o=0;wa(4,s|0,e|0,p|0);t=o;o=0;if(t&1){t=15;break a}}while(0);o=0;ra(33,s|0,b|0)|0;t=o;o=0;if(!(t&1)){c[d>>2]=c[s+16>>2];if(g)a[g>>0]=0;j=s+24|0;f=c[j>>2]|0;if(f){h=c[m>>2]|0;if((h|0)!=(f|0)){do{g=h+-4|0;c[m>>2]=g;h=c[g>>2]|0;c[g>>2]=0;if(h)Bb[c[(c[h>>2]|0)+4>>2]&255](h);h=c[m>>2]|0}while((h|0)!=(f|0));f=c[j>>2]|0}cj(f)}g=0;i=w;return g|0}else t=15}else t=15}while(0);if((t|0)==15){h=Na(824,0)|0;f=D;t=16}m=s+24|0;j=c[m>>2]|0;if(j){l=s+28|0;k=c[l>>2]|0;if((k|0)!=(j|0)){do{s=k+-4|0;c[l>>2]=s;k=c[s>>2]|0;c[s>>2]=0;if(k)Bb[c[(c[k>>2]|0)+4>>2]&255](k);k=c[l>>2]|0}while((k|0)!=(j|0));j=c[m>>2]|0}cj(j)}}else t=5}else t=5;if((t|0)==5){h=Na(824,0)|0;f=D}s=(f|0)==(Ta(824)|0);k=Va(h|0)|0;f=(g|0)==0;if(!s){if(!f)a[g>>0]=0;Xa();g=14;i=w;return g|0}j=k+12|0;do if(!f){f=c[j>>2]|0;o=0;h=ua(1)|0;s=o;o=0;if(!(s&1))if((f|0)==(h|0)){ml(g,Eb[c[(c[k>>2]|0)+8>>2]&127](k)|0)|0;t=60;break}else{a[g>>0]=0;t=60;break}}else t=60;while(0);if((t|0)==60?(u=c[j>>2]|0,o=0,v=ua(1)|0,g=o,o=0,!(g&1)):0){g=(u|0)==(v|0)?c[k+8>>2]|0:13;Xa();i=w;return g|0}f=Na()|0;o=0;xa(3);w=o;o=0;if(w&1){w=Na(0)|0;ec(w)}else Ya(f|0);return 0}function dc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+112|0;g=l+96|0;k=l+84|0;m=l+72|0;n=l+60|0;p=l+48|0;q=l+36|0;r=l+24|0;s=l+12|0;t=l;j=(b|0)==0;if((a|0)==0&j){f=Ma(16)|0;o=0;wa(5,g|0,48504,52);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,g|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(g);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}h=c[e>>2]|0;if((h+-1|0)>>>0>65534){f=Ma(16)|0;o=0;wa(5,k|0,48557,41);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,k|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(k);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}g=c[e+4>>2]|0;if((g+-1|0)>>>0>65534){f=Ma(16)|0;o=0;wa(5,m|0,48599,42);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,m|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(m);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}f=c[e+8>>2]|0;if((f+-2|0)>>>0>14){f=Ma(16)|0;o=0;wa(5,n|0,48642,46);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,n|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(n);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}a=c[e+24>>2]|0;if(a>>>0>=3){f=Ma(16)|0;o=0;wa(5,p|0,48689,65);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,p|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(p);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}b=c[e+16>>2]|0;if((b+-1|0)>>>0>254){f=Ma(16)|0;o=0;wa(5,q|0,48755,44);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,q|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(q);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}if(!j?(q=$(g,h)|0,($($(q,(f|0)>8?2:1)|0,b)|0)>>>0>d>>>0):0){f=Ma(16)|0;o=0;wa(5,r|0,48800,58);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,r|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(r);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}switch(b|0){case 4:{if((a|0)!=2){i=l;return}f=Ma(16)|0;o=0;wa(5,s|0,48859,73);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,s|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(s);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}case 3:{i=l;return}default:{if(!a){i=l;return}f=Ma(16)|0;o=0;wa(5,t|0,48933,73);s=o;o=0;if(!(s&1)){o=0;b=ua(1)|0;s=o;o=0;if(!(s&1)?(o=0,Aa(36,f|0,1,b|0,t|0),s=o,o=0,!(s&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(t);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}}}function ec(a){a=a|0;Va(a|0)|0;jj()}function fc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;h=n+116|0;j=n;o=0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];ia(59,j|0,h|0);g=o;o=0;if(!(g&1)){if(e){g=j+16|0;d=g+84|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(d|0))}o=0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];ia(60,j|0,h|0);j=o;o=0;if(!(j&1)){if(f)a[f>>0]=0;m=0;i=n;return m|0}}b=Na(824,0)|0;j=D;j=(j|0)==(Ta(824)|0);b=Va(b|0)|0;d=(f|0)==0;if(!j){if(!d)a[f>>0]=0;Xa();m=14;i=n;return m|0}g=b+12|0;do if(!d){d=c[g>>2]|0;o=0;e=ua(1)|0;j=o;o=0;if(!(j&1))if((d|0)==(e|0)){ml(f,Eb[c[(c[b>>2]|0)+8>>2]&127](b)|0)|0;m=10;break}else{a[f>>0]=0;m=10;break}}else m=10;while(0);if((m|0)==10?(k=c[g>>2]|0,o=0,l=ua(1)|0,m=o,o=0,!(m&1)):0){m=(k|0)==(l|0)?c[b+8>>2]|0:13;Xa();i=n;return m|0}d=Na()|0;o=0;xa(3);n=o;o=0;if(n&1){n=Na(0)|0;ec(n)}else Ya(d|0);return 0}function gc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+128|0;g=l+116|0;f=l;o=0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];ia(59,f|0,g|0);g=o;o=0;if((!(g&1)?(o=0,ha(177,f|0),g=o,o=0,!(g&1)):0)?(o=0,ia(61,f|0,1),g=o,o=0,!(g&1)):0){b=f+16|0;f=d+84|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(f|0));if(e)a[e>>0]=0;e=0;i=l;return e|0}g=Na(824,0)|0;d=D;d=(d|0)==(Ta(824)|0);g=Va(g|0)|0;b=(e|0)==0;if(!d){if(!b)a[e>>0]=0;Xa();e=14;i=l;return e|0}d=g+12|0;do if(!b){b=c[d>>2]|0;o=0;f=ua(1)|0;m=o;o=0;if(!(m&1))if((b|0)==(f|0)){ml(e,Eb[c[(c[g>>2]|0)+8>>2]&127](g)|0)|0;k=13;break}else{a[e>>0]=0;k=13;break}}else k=13;while(0);if((k|0)==13?(h=c[d>>2]|0,o=0,j=ua(1)|0,m=o,o=0,!(m&1)):0){m=(h|0)==(j|0)?c[g+8>>2]|0:13;Xa();i=l;return m|0}b=Na()|0;o=0;xa(3);m=o;o=0;if(m&1){m=Na(0)|0;ec(m)}else Ya(b|0);return 0}function hc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;k=n+36|0;j=n+24|0;l=n+12|0;m=n;if(!((a|0)!=0&(d|0)!=0&(e|0)!=0&(g|0)!=0)){f=1;i=n;return f|0}c[l>>2]=0;c[l+4>>2]=a;c[l+8>>2]=b;c[m>>2]=0;c[m+4>>2]=e;c[m+8>>2]=f;c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];f=cc(j,d,k,g,h)|0;i=n;return f|0}function ic(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+12|0;h=f;j=h;c[j>>2]=0;c[j+4>>2]=0;c[h+4>>2]=a;c[h+8>>2]=b;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];d=gc(g,d,e)|0;i=f;return d|0}function jc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+48|0;j=h+36|0;k=h+24|0;m=h+12|0;l=h;c[m>>2]=0;c[m+4>>2]=a;c[m+8>>2]=b;c[l>>2]=0;c[l+4>>2]=d;c[l+8>>2]=e;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];e=fc(k,j,f,g)|0;i=h;return e|0}function kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;d=c[a>>2]|0;f=((c[k>>2]|0)-d>>2)+1|0;if(f>>>0>1073741823){$i(a);d=c[a>>2]|0}l=a+8|0;e=(c[l>>2]|0)-d|0;if(e>>2>>>0<536870911){e=e>>1;e=e>>>0>>0?f:e;d=(c[k>>2]|0)-d>>2;if(!e){g=0;h=0}else i=6}else{e=1073741823;d=(c[k>>2]|0)-d>>2;i=6}if((i|0)==6){g=e;h=bj(e<<2)|0}f=h+(d<<2)|0;e=f;j=h+(g<<2)|0;i=c[b>>2]|0;c[b>>2]=0;c[f>>2]=i;i=h+(d+1<<2)|0;h=c[a>>2]|0;d=c[k>>2]|0;if((d|0)==(h|0)){f=a;g=k}else{do{d=d+-4|0;b=c[d>>2]|0;c[d>>2]=0;c[f+-4>>2]=b;f=e+-4|0;e=f}while((d|0)!=(h|0));d=e;f=a;g=k;e=d;h=c[a>>2]|0;d=c[k>>2]|0}c[f>>2]=e;c[g>>2]=i;c[l>>2]=j;f=h;if((d|0)!=(f|0))do{d=d+-4|0;e=c[d>>2]|0;c[d>>2]=0;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e)}while((d|0)!=(f|0));if(!h)return;cj(h);return}function lc(){if(a[8]|0)return 35648;if(!(Ha(8)|0))return 35648;kb(72,35648,n|0)|0;Pa(8);return 35648}function mc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n;Ei(l,(1<>2]|0;m=h+1|0;e=m<<1;c[b>>2]=0;j=b+4|0;c[j>>2]=0;c[b+8>>2]=0;a:do if(m){if(!((h|0)<-1?(o=0,ha(178,b|0),k=o,o=0,k&1):0))f=4;if((f|0)==4?(o=0,g=ka(67,e|0)|0,k=o,o=0,!(k&1)):0){c[j>>2]=g;c[b>>2]=g;c[b+8>>2]=g+e;d=g;while(1){a[d>>0]=0;d=(c[j>>2]|0)+1|0;c[j>>2]=d;e=e+-1|0;if(!e)break a}}e=Na()|0;d=c[b>>2]|0;if(!d)Ya(e|0);if((c[j>>2]|0)!=(d|0))c[j>>2]=d;cj(d);Ya(e|0)}while(0);d=~h;if((h|0)<(d|0)){i=n;return}j=l+12|0;k=l+8|0;h=l+4|0;g=d;do{d=c[j>>2]|0;if((g|0)>(0-d|0)){e=c[k>>2]|0;if((g|0)>(0-e|0)){f=c[h>>2]|0;if((g|0)>(0-f|0))if((g|0)>=0)if((g|0)>0)if((f|0)<=(g|0))if((e|0)>(g|0))d=2;else d=(d|0)>(g|0)?3:4;else d=1;else d=0;else d=-1;else d=-2}else d=-3}else d=-4;a[(c[b>>2]|0)+(g+m)>>0]=d;g=g+1|0}while((g|0)<(m|0));i=n;return}function nc(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=c[f+16>>2]|0;switch(q|0){case 64:case 0:{o=0;d=ra(34,d|0,e|0)|0;e=o;o=0;if(e&1)r=16;else g=d;break}default:{h=(1<>2])+-1|0;p=c[e+20>>2]|0;n=p<<1;n=((n+h|0)/(n|1|0)|0)+1|0;d=0;while(1)if((1<>2]|0;o=0;g=ka(67,4624)|0;m=o;o=0;if(m&1)r=16;else{i=((j|0)<8?8:j)+j<<1;k=g+4|0;l=e;m=k+84|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));k=g+88|0;m=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));c[g>>2]=35660;c[g+128>>2]=h;c[g+132>>2]=n;c[g+136>>2]=p;c[g+140>>2]=d;c[g+144>>2]=j;c[g+148>>2]=i;c[g+152>>2]=q;d=g+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+172>>2]=c[e>>2];c[g+176>>2]=0;c[g+180>>2]=0;c[g+184>>2]=0;d=g+4568|0;h=g+188|0;do{c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;b[h+10>>1]=1;h=h+12|0}while((h|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1}}}if((r|0)==16){r=Na()|0;Ya(r|0)}if(!g)return g|0;o=0;ia(c[(c[g>>2]|0)+12>>2]|0,g|0,f|0);r=o;o=0;if(!(r&1))return g|0;d=Na()|0;if(!g){r=d;Ya(r|0)}Bb[c[(c[g>>2]|0)+4>>2]&255](g);r=d;Ya(r|0);return 0}function oc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=(c[e+24>>2]|0)==2;if(f?(c[e+16>>2]|0)!=3:0){e=0;return e|0}n=c[e+20>>2]|0;d=c[e+8>>2]|0;a:do if(!n){if(f){if((d|0)!=8)break;g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35688;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}switch(d|0){case 8:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35716;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}case 12:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35744;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}case 16:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35772;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}default:break a}}while(0);m=(1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35800;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35660;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}}if((d|0)>=17){e=0;return e|0}i=n<<1;i=((i+m|0)/(i|1|0)|0)+1|0;if(f){d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35828;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35856;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}return 0}function pc(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=c[f+16>>2]|0;switch(q|0){case 64:case 0:{o=0;d=ra(35,d|0,e|0)|0;e=o;o=0;if(e&1)r=16;else g=d;break}default:{h=(1<>2])+-1|0;p=c[e+20>>2]|0;n=p<<1;n=((n+h|0)/(n|1|0)|0)+1|0;d=0;while(1)if((1<>2]|0;o=0;g=ka(67,4632)|0;m=o;o=0;if(m&1)r=16;else{i=((j|0)<8?8:j)+j<<1;c[g+4>>2]=0;k=g+8|0;l=e;m=k+84|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;m=g+116|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[g>>2]=35884;c[g+136>>2]=h;c[g+140>>2]=n;c[g+144>>2]=p;c[g+148>>2]=d;c[g+152>>2]=j;c[g+156>>2]=i;c[g+160>>2]=q;d=g+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+180>>2]=c[e>>2];c[g+184>>2]=0;c[g+188>>2]=0;c[g+192>>2]=0;d=g+4576|0;h=g+196|0;do{c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;b[h+10>>1]=1;h=h+12|0}while((h|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1}}}if((r|0)==16){r=Na()|0;Ya(r|0)}if(!g)return g|0;o=0;ia(c[(c[g>>2]|0)+8>>2]|0,g|0,f|0);r=o;o=0;if(!(r&1))return g|0;d=Na()|0;if(!g){r=d;Ya(r|0)}Bb[c[(c[g>>2]|0)+4>>2]&255](g);r=d;Ya(r|0);return 0}function qc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=(c[e+24>>2]|0)==2;if(f?(c[e+16>>2]|0)!=3:0){e=0;return e|0}n=c[e+20>>2]|0;d=c[e+8>>2]|0;a:do if(!n){if(f){if((d|0)!=8)break;g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35912;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}switch(d|0){case 8:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35940;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}case 12:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35968;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}case 16:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35996;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}default:break a}}while(0);m=(1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36024;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=35884;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}}if((d|0)>=17){e=0;return e|0}i=n<<1;i=((i+m|0)/(i|1|0)|0)+1|0;if(f){d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36052;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36080;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}return 0}function rc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;a=2832;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=4880);iw(2832,0,2048)|0;a=0;do{h=2832+(a+128<<3)|0;c[h>>2]=0;c[h+4>>2]=1;a=a+1|0}while((a|0)!=128);a=3088;c[a>>2]=1;c[a+4>>2]=3;a=3096;c[a>>2]=1;c[a+4>>2]=3;a=3104;c[a>>2]=1;c[a+4>>2]=3;a=3112;c[a>>2]=1;c[a+4>>2]=3;a=3120;c[a>>2]=1;c[a+4>>2]=3;a=3128;c[a>>2]=1;c[a+4>>2]=3;a=3136;c[a>>2]=1;c[a+4>>2]=3;a=3144;c[a>>2]=1;c[a+4>>2]=3;a=3152;c[a>>2]=1;c[a+4>>2]=3;a=3160;c[a>>2]=1;c[a+4>>2]=3;a=3168;c[a>>2]=1;c[a+4>>2]=3;a=3176;c[a>>2]=1;c[a+4>>2]=3;a=3184;c[a>>2]=1;c[a+4>>2]=3;a=3192;c[a>>2]=1;c[a+4>>2]=3;a=3200;c[a>>2]=1;c[a+4>>2]=3;a=3208;c[a>>2]=1;c[a+4>>2]=3;a=3216;c[a>>2]=1;c[a+4>>2]=3;a=3224;c[a>>2]=1;c[a+4>>2]=3;a=3232;c[a>>2]=1;c[a+4>>2]=3;a=3240;c[a>>2]=1;c[a+4>>2]=3;a=3248;c[a>>2]=1;c[a+4>>2]=3;a=3256;c[a>>2]=1;c[a+4>>2]=3;a=3264;c[a>>2]=1;c[a+4>>2]=3;a=3272;c[a>>2]=1;c[a+4>>2]=3;a=3280;c[a>>2]=1;c[a+4>>2]=3;a=3288;c[a>>2]=1;c[a+4>>2]=3;a=3296;c[a>>2]=1;c[a+4>>2]=3;a=3304;c[a>>2]=1;c[a+4>>2]=3;a=3312;c[a>>2]=1;c[a+4>>2]=3;a=3320;c[a>>2]=1;c[a+4>>2]=3;a=3328;c[a>>2]=1;c[a+4>>2]=3;a=3336;c[a>>2]=1;c[a+4>>2]=3;a=2896;c[a>>2]=2;c[a+4>>2]=5;a=2904;c[a>>2]=2;c[a+4>>2]=5;a=2912;c[a>>2]=2;c[a+4>>2]=5;a=2920;c[a>>2]=2;c[a+4>>2]=5;a=2928;c[a>>2]=2;c[a+4>>2]=5;a=2936;c[a>>2]=2;c[a+4>>2]=5;a=2944;c[a>>2]=2;c[a+4>>2]=5;a=2952;c[a>>2]=2;c[a+4>>2]=5;a=2848;c[a>>2]=3;c[a+4>>2]=7;a=2856;c[a>>2]=3;c[a+4>>2]=7;a=0;do{h=2832+(a+64<<3)|0;c[h>>2]=-1;c[h+4>>2]=2;a=a+1|0}while((a|0)!=64);a=2960;c[a>>2]=-2;c[a+4>>2]=4;a=2968;c[a>>2]=-2;c[a+4>>2]=4;a=2976;c[a>>2]=-2;c[a+4>>2]=4;a=2984;c[a>>2]=-2;c[a+4>>2]=4;a=2992;c[a>>2]=-2;c[a+4>>2]=4;a=3e3;c[a>>2]=-2;c[a+4>>2]=4;a=3008;c[a>>2]=-2;c[a+4>>2]=4;a=3016;c[a>>2]=-2;c[a+4>>2]=4;a=3024;c[a>>2]=-2;c[a+4>>2]=4;a=3032;c[a>>2]=-2;c[a+4>>2]=4;a=3040;c[a>>2]=-2;c[a+4>>2]=4;a=3048;c[a>>2]=-2;c[a+4>>2]=4;a=3056;c[a>>2]=-2;c[a+4>>2]=4;a=3064;c[a>>2]=-2;c[a+4>>2]=4;a=3072;c[a>>2]=-2;c[a+4>>2]=4;a=3080;c[a>>2]=-2;c[a+4>>2]=4;a=2864;c[a>>2]=-3;c[a+4>>2]=6;a=2872;c[a>>2]=-3;c[a+4>>2]=6;a=2880;c[a>>2]=-3;c[a+4>>2]=6;a=2888;c[a>>2]=-3;c[a+4>>2]=6;a=2840;c[a>>2]=-4;c[a+4>>2]=8;a=4880;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=6928);iw(4880,0,2048)|0;d=2;a=0;f=0;g=0;while(1){d=d<<16>>16;b=8-d|0;e=1<>2]=f;c[h+4>>2]=d;b=b+1|0}while((b|0)<(e|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==7){b=2;f=1;g=-1;h=-1;break}else{d=(a>>1)+2|0;f=b>>16}}while(1){d=b<<16>>16;a=8-d|0;e=1<>2]=g;c[f+4>>2]=d;b=b+1|0}while((b|0)<(e|0))}a=(h<<16)+-65536|0;f=a>>31^a>>15;b=(f>>1)+2|0;if((b|0)>8){a=6928;break}else{g=a>>16;h=h+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=8976);iw(6928,0,2048)|0;f=3;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==12){f=3;b=1;e=-1;g=-1;break}else{f=(a>>2)+3|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>2)+3|0;if((f|0)>8){a=8976;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=11024);iw(8976,0,2048)|0;f=4;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==20){f=4;b=1;e=-1;g=-1;break}else{f=(a>>3)+4|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>3)+4|0;if((f|0)>8){a=11024;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=13072);iw(11024,0,2048)|0;f=5;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==32){f=5;b=1;e=-1;g=-1;break}else{f=(a>>4)+5|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>4)+5|0;if((f|0)>8){a=13072;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=15120);iw(13072,0,2048)|0;f=6;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==48){f=6;b=1;e=-1;g=-1;break}else{f=(a>>5)+6|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>5)+6|0;if((f|0)>8){a=15120;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=17168);iw(15120,0,2048)|0;f=7;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==64){f=7;b=1;e=-1;g=-1;break}else{f=(a>>6)+7|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>6)+7|0;if((f|0)>8){a=17168;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=19216);iw(17168,0,2048)|0;f=8;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==64){g=8;e=1;f=-1;h=-1;break}else{f=(a>>7)+8|0;e=b>>16}}while(1){a=8-g|0;d=1<>2]=f;c[e+4>>2]=g;b=b+1|0}while((b|0)<(d|0))}b=(h<<16)+-65536|0;e=b>>31^b>>15;a=e>>7;if((a|0)>0){a=19216;break}else{g=a+8|0;f=b>>16;h=h+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=21264);iw(19216,0,2048)|0;a=21264;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=23312);iw(21264,0,2048)|0;a=23312;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=25360);iw(23312,0,2048)|0;a=25360;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=27408);iw(25360,0,2048)|0;a=27408;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=29456);iw(27408,0,2048)|0;a=29456;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=31504);iw(29456,0,2048)|0;a=31504;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=33552);iw(31504,0,2048)|0;a=33552;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=35600);iw(33552,0,2048)|0;mc(35600,8);kb(179,35600,n|0)|0;mc(35612,10);kb(179,35612,n|0)|0;mc(35624,12);kb(179,35624,n|0)|0;mc(35636,16);kb(179,35636,n|0)|0;return}function sc(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;a=a+4|0;if((c[a>>2]|0)!=(b|0))c[a>>2]=b;cj(b);return}function tc(a){a=a|0;var b=0,d=0;c[a>>2]=36080;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function uc(a){a=a|0;var b=0,d=0;c[a>>2]=36080;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function vc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;he(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function wc(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35856;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Yd(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Yd(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function xc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function yc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36460;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36436;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Ac(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36412;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Bc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36388;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Cc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=b+32|0;Jm(i,d)|0;h=b+44|0;c[h>>2]=0;j=b+48|0;g=c[j>>2]|0;if(g&8){d=a[i>>0]|0;if(!(d&1)){d=((d&255)>>>1)+(i+1)|0;c[h>>2]=d;e=i+1|0;f=i+1|0}else{d=(c[b+40>>2]|0)+(c[b+36>>2]|0)|0;c[h>>2]=d;f=c[b+40>>2]|0;e=f}c[b+8>>2]=e;c[b+12>>2]=f;c[b+16>>2]=d}if(!(g&16))return;d=a[i>>0]|0;if(!(d&1)){g=(d&255)>>>1;c[h>>2]=i+1+g;d=10;h=g}else{g=c[b+36>>2]|0;c[h>>2]=(c[b+40>>2]|0)+g;d=(c[i>>2]&-2)+-1|0;h=g}Mm(i,d,0);d=a[i>>0]|0;if(!(d&1)){g=i+1|0;f=(d&255)>>>1;e=i+1|0}else{e=c[b+40>>2]|0;g=e;f=c[b+36>>2]|0}d=b+24|0;c[d>>2]=e;c[b+20>>2]=e;c[b+28>>2]=g+f;if(!(c[j>>2]&3))return;c[d>>2]=e+h;return}function Dc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;j=q+16|0;p=q+8|0;k=q;o=0;ia(65,p|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b}else{do if(a[p>>0]|0){f=c[(c[b>>2]|0)+-12>>2]|0;c[k>>2]=c[b+(f+24)>>2];l=b+f|0;m=c[b+(f+4)>>2]|0;g=d+e|0;f=b+(f+76)|0;e=c[f>>2]|0;do if((e|0)==-1){o=0;e=ka(68,l|0)|0;r=o;o=0;if(r&1)n=13;else{c[j>>2]=e;o=0;e=ra(37,j|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(j);e=h<<24>>24;c[f>>2]=e;n=9;break}e=Na(0)|0;Gs(j)}}else n=9;while(0);if((n|0)==9){o=0;c[j>>2]=c[k>>2];e=ja(39,j|0,d|0,((m&176|0)==32?g:d)|0,g|0,l|0,e&255|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break;else n=13}else n=13}if((n|0)==13)e=Na(0)|0;ho(p);f=b;g=b;break a}while(0);ho(p);i=q;return b|0}while(0);Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();i=q;return b|0}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0);return 0}function Ec(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[d+48>>2]|0;if(e&16){e=d+44|0;f=c[e>>2]|0;g=c[d+24>>2]|0;if(f>>>0>>0)c[e>>2]=g;else g=f;f=c[d+20>>2]|0;h=g-f|0;if(h>>>0>4294967279)_i(b);if(h>>>0<11){a[b>>0]=h<<1;e=b+1|0}else{d=h+16&-16;e=bj(d)|0;c[b+8>>2]=e;c[b>>2]=d|1;c[b+4>>2]=h}if((f|0)!=(g|0)){d=e;while(1){a[d>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(g|0))break;else d=d+1|0}e=e+h|0}a[e>>0]=0;return}if(!(e&8)){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}f=c[d+8>>2]|0;d=c[d+16>>2]|0;h=d-f|0;if(h>>>0>4294967279)_i(b);if(h>>>0<11){a[b>>0]=h<<1;e=b+1|0}else{g=h+16&-16;e=bj(g)|0;c[b+8>>2]=e;c[b>>2]=g|1;c[b+4>>2]=h}if((f|0)!=(d|0)){g=e;while(1){a[g>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(d|0))break;else g=g+1|0}e=e+h|0}a[e>>0]=0;return}function Fc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36364;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Gc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36340;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Hc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36316;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Ic(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36316;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Jc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36316;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Kc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;Pc(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Pc(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Lc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;Mc(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Nc(a,f,b,d,e);return}}function Mc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{o=c[j>>2]|0;m=e[n+(f*6|0)+2>>1]<>1]<>1]<>1]=(m+49152+((d+i|0)>>>2)&65535)>>>o;b[g+(f*6|0)+2>>1]=d>>>o;b[g+(f*6|0)+4>>1]=i>>>o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{h=e[n+(f*6|0)+2>>1]<>1]<>1]<>1]=(h+49152+((d+o|0)>>>2)&65535)>>>j;b[g+(f+i<<1)>>1]=d>>>j;b[g+(f+l<<1)>>1]=o>>>j;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;m=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;p=e[n+(f<<3)+2>>1]<>1]<>1]<>1]=(p+49152+((h+d|0)>>>2)&65535)>>>j;b[g+(f+i<<1)>>1]=h>>>j;b[g+(f+l<<1)>>1]=d>>>j;b[g+(f+m<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}default:return}}function Nc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Mc(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Mc(b,t,e,f,g);i=q;return}function Oc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+176|0;e=g+152|0;l=g+16|0;j=g;if(!(d&1)){e=(d|0)/4|0;if((d|0)>3){f=0;do{l=b+(f<<2)|0;k=c[l>>2]|0;c[l>>2]=k>>>8&16711935|k<<8&-16711936;f=f+1|0}while((f|0)<(e|0))}if(!(d&3)){i=g;return}j=b+(d+-2)|0;l=b+(d+-1)|0;k=a[j>>0]|0;a[j>>0]=a[l>>0]|0;a[l>>0]=k;i=g;return}k=l+56|0;h=l+4|0;c[l>>2]=36160;c[k>>2]=36180;o=0;ia(62,l+56|0,h|0);g=o;o=0;if(g&1){l=Na()|0;fn(k);Ya(l|0)}c[l+128>>2]=0;c[l+132>>2]=-1;c[l>>2]=36200;c[l+56>>2]=36220;o=0;ha(180,h|0);g=o;o=0;do if(g&1)e=Na()|0;else{c[h>>2]=36236;g=l+36|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[l+52>>2]=16;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;o=0;ia(63,h|0,e|0);b=o;o=0;if(b&1){l=Na()|0;Im(e);Im(g);nn(h);e=l;break}Im(e);o=0;e=ma(28,l|0,49087,24)|0;b=o;o=0;if((!(b&1)?(o=0,f=ra(36,e|0,d|0)|0,d=o,o=0,!(d&1)):0)?(o=0,ma(28,f|0,49112,20)|0,d=o,o=0,!(d&1)):0){b=Ma(16)|0;o=0;ia(64,j|0,h|0);d=o;o=0;if(!(d&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,b|0,1,35648,j|0);d=o;o=0;if(d&1)f=1;else{o=0;wa(6,b|0,824,96);o=0;f=0}e=Na()|0;Im(j);if(!f){j=e;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}}else e=Na()|0;La(b|0);j=e;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}j=Na()|0;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}while(0);l=e;fn(k);Ya(l|0)}function Pc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{i=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>1]<>2)+16384|0;b[g+(d*6|0)>>1]=(k+32768+m&65535)>>>i;b[g+(d*6|0)+2>>1]=(m&65535)>>>i;b[g+(d*6|0)+4>>1]=(l+32768+m&65535)>>>i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{m=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>1]<>2)+16384|0;b[g+(d*6|0)>>1]=(q+32768+o&65535)>>>m;b[g+(d*6|0)+2>>1]=(o&65535)>>>m;b[g+(d*6|0)+4>>1]=(p+32768+o&65535)>>>m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{q=c[j>>2]|0;p=e[f+(k+i<<1)>>1]<>1]<>1]<>2)+16384|0;r=b[f+(k+d<<1)>>1]|0;t=mw((o&65535)>>>q&65535|0,0,16)|0;p=(p+32768+o&65535)>>>q|D;r=mw(r&65535|0,0,48)|0;r=t|(s+32768+o&65535)>>>q&65535|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){t=j+4|0;s=b[j>>1]|0;b[j>>1]=b[t>>1]|0;b[t>>1]=s;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Qc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Rc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Sc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;Wc(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Wc(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Tc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;Uc(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Vc(a,f,b,d,e);return}}function Uc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;m=e[n+(f*6|0)>>1]<>1]<>1]<>>1)&65535)>>>i&65535;b[g+(f*6|0)>>1]=(m+32768-d&65535)>>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{h=e[n+(f*6|0)>>1]<>1]<>1]<>>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(h+32768-d&65535)>>>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;m=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;p=e[n+(f<<3)>>1]<>1]<>1]<>>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(p+32768-h&65535)>>>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+l<<1)>>1]=d;b[g+(f+m<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}default:return}}function Vc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}function Wc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>1]<>>1)&65535)>>>m&65535;b[g+(d*6|0)>>1]=k>>>m;b[g+(d*6|0)+2>>1]=l>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>1]<>>1)&65535)>>>o&65535;b[g+(d*6|0)>>1]=q>>>o;b[g+(d*6|0)+2>>1]=p>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{o=c[j>>2]|0;q=e[f+(k+i<<1)>>1]<>1]<>1]<>>1)&65535)>>>o;r=b[f+(k+d<<1)>>1]|0;q=mw(q>>>o&65535|0,0,16)|0;p=D|p;r=mw(r&65535|0,0,48)|0;r=s>>>o&65535|q|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Xc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Yc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;bd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;bd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function _c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;$c(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ad(a,f,b,d,e);return}}function $c(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;d=e[n+(f*6|0)+2>>1]<>1]<>>i&65535;b[g+(f*6|0)>>1]=((e[n+(f*6|0)>>1]<>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{d=e[n+(f*6|0)+2>>1]<>1]<>>j&65535;b[g+(f<<1)>>1]=((e[n+(f*6|0)>>1]<>>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;l=(i|0)<(h|0)?i:h;if((l|0)<=0)return;m=i<<1;k=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;h=e[n+(f<<3)+2>>1]<>1]<>>j&65535;b[g+(f<<1)>>1]=((e[n+(f<<3)>>1]<>>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+m<<1)>>1]=d;b[g+(f+k<<1)>>1]=o;f=f+1|0}while((f|0)!=(l|0));return}default:return}}function ad(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}function bd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>>m&65535;b[g+(d*6|0)>>1]=((e[f+(d*6|0)>>1]<>>m;b[g+(d*6|0)+2>>1]=(l&65535)>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>>o&65535;b[g+(d*6|0)>>1]=((e[f+(d<<1)>>1]<>>o;b[g+(d*6|0)+2>>1]=(p&65535)>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{q=c[j>>2]|0;s=e[f+(k+i<<1)>>1]<>1]<>>q;o=(s+32768+(e[f+(k+l<<1)>>1]<>>q;r=b[f+(k+d<<1)>>1]|0;q=mw((s&65535)>>>q&65535|0,0,16)|0;o=o|D;r=mw(r&65535|0,0,48)|0;r=q|p&65535|r;o=o&65535|D;p=g+(k<<3)|0;q=p;b[q>>1]=r;b[q+2>>1]=r>>>16;p=p+4|0;b[p>>1]=o;b[p+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function cd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0;p=i;i=i+16|0;m=p;n=c[b>>2]|0;if(!n){b=0;i=p;return b|0}q=d;k=f-q|0;l=g+12|0;j=c[l>>2]|0;k=(j|0)>(k|0)?j-k|0:0;j=e;g=j-q|0;if((g|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,d,g)|0)!=(g|0):0){c[b>>2]=0;q=0;i=p;return q|0}do if((k|0)>0){Hm(m,k,h);o=0;g=ma(c[(c[n>>2]|0)+48>>2]|0,n|0,((a[m>>0]&1)==0?m+1|0:c[m+8>>2]|0)|0,k|0)|0;q=o;o=0;if(q&1){q=Na()|0;Im(m);Ya(q|0)}if((g|0)==(k|0)){Im(m);break}c[b>>2]=0;Im(m);q=0;i=p;return q|0}while(0);f=f-j|0;if((f|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,e,f)|0)!=(f|0):0){c[b>>2]=0;q=0;i=p;return q|0}c[l>>2]=0;q=n;i=p;return q|0}function dd(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);return}function ed(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);cj(a);return}function fd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=d+44|0;j=c[i>>2]|0;l=d+24|0;m=c[l>>2]|0;if(j>>>0>>0){c[i>>2]=m;j=m}k=j;i=h&24;if(!i){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((g|0)==1&(i|0)==24){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}a:do switch(g|0){case 0:{i=0;g=0;break}case 1:if(!(h&8)){g=m-(c[d+20>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}else{g=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}case 2:{i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;g=j-i|0;i=g;g=((g|0)<0)<<31>>31;break}default:{d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}while(0);g=jw(i|0,g|0,e|0,f|0)|0;e=D;if((e|0)>=0){i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;f=j-i|0;j=((f|0)<0)<<31>>31;if(!((j|0)<(e|0)|(j|0)==(e|0)&f>>>0>>0)){i=h&8;if(!((g|0)==0&(e|0)==0)){if((i|0)!=0?(c[d+12>>2]|0)==0:0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((h&16|0)!=0&(m|0)==0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}if(i){c[d+12>>2]=(c[d+8>>2]|0)+g;c[d+16>>2]=k}if(h&16)c[l>>2]=(c[d+20>>2]|0)+g;d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=g;c[d+4>>2]=e;return}}d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function gd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=d+8|0;Ib[c[(c[b>>2]|0)+16>>2]&15](a,b,c[d>>2]|0,c[d+4>>2]|0,0,e);return}function hd(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+44|0;e=c[b>>2]|0;f=c[a+24>>2]|0;if(e>>>0>>0){c[b>>2]=f;e=f}if(!(c[a+48>>2]&8)){a=-1;return a|0}g=a+16|0;b=c[g>>2]|0;f=a+12|0;if(b>>>0>>0){f=c[f>>2]|0;c[g>>2]=e;b=e}else f=c[f>>2]|0;if(f>>>0>=b>>>0){a=-1;return a|0}a=d[f>>0]|0;return a|0}function id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=b+44|0;e=c[f>>2]|0;g=c[b+24>>2]|0;if(e>>>0>>0){c[f>>2]=g;e=g}j=b+8|0;f=c[j>>2]|0;k=b+12|0;h=c[k>>2]|0;i=f;if(f>>>0>=h>>>0){b=-1;return b|0}if((d|0)==-1){c[j>>2]=f;c[k>>2]=h+-1;c[b+16>>2]=e;b=0;return b|0}if(!(c[b+48>>2]&16)){g=d&255;f=h+-1|0;if(g<<24>>24!=(a[f>>0]|0)){b=-1;return b|0}}else{g=d&255;f=h+-1|0}c[j>>2]=i;c[k>>2]=f;c[b+16>>2]=e;a[f>>0]=g;b=d;return b|0}function jd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+16|0;n=t;if((d|0)==-1){b=0;i=t;return b|0}p=b+12|0;q=b+8|0;r=(c[p>>2]|0)-(c[q>>2]|0)|0;s=b+24|0;e=c[s>>2]|0;m=b+28|0;f=c[m>>2]|0;do if((e|0)==(f|0)){k=b+48|0;if(!(c[k>>2]&16)){b=-1;i=t;return b|0}l=b+20|0;j=c[l>>2]|0;g=e-j|0;h=b+44|0;j=(c[h>>2]|0)-j|0;f=b+32|0;o=0;ia(67,f|0,0);e=o;o=0;if(!(e&1)){if(!(a[f>>0]&1))e=10;else e=(c[f>>2]&-2)+-1|0;o=0;wa(8,f|0,e|0,0);e=o;o=0;if(!(e&1)){e=a[f>>0]|0;if(!(e&1)){f=f+1|0;e=(e&255)>>>1}else{f=c[b+40>>2]|0;e=c[b+36>>2]|0}u=f+e|0;c[l>>2]=f;c[m>>2]=u;l=f+g|0;c[s>>2]=l;e=f+j|0;c[h>>2]=e;f=u;break}}u=Na(0)|0;Va(u|0)|0;Xa();u=-1;i=t;return u|0}else{u=b+44|0;k=b+48|0;h=u;l=e;e=c[u>>2]|0}while(0);j=l+1|0;c[n>>2]=j;g=c[(j>>>0>>0?h:n)>>2]|0;c[h>>2]=g;if(c[k>>2]&8){e=b+32|0;if(!(a[e>>0]&1))e=e+1|0;else e=c[b+40>>2]|0;c[q>>2]=e;c[p>>2]=e+r;c[b+16>>2]=g}if((l|0)==(f|0)){u=Lb[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;i=t;return u|0}else{c[s>>2]=j;a[l>>0]=d;u=d&255;i=t;return u|0}return 0}function kd(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);return}function ld(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);cj(a);return}function md(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[(c[a>>2]|0)+-12>>2]|0;b=a+f|0;c[b>>2]=36200;d=a+(f+56)|0;c[d>>2]=36220;e=a+(f+4)|0;c[e>>2]=36236;Im(a+(f+36)|0);nn(e);fn(d);cj(b);return}function nd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function od(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function pd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;td(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;td(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;rd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{sd(a,f,b,d,e);return}}function rd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{l=e[m+(j*6|0)+2>>1]|0;i=32768-l+(e[m+(j*6|0)+4>>1]|0)|0;n=(e[m+(j*6|0)>>1]|0)-l+32768|0;b[g+(j*6|0)>>1]=l+49152+(((i&65535)+(n&65535)|0)>>>2);b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{l=e[m+(f*6|0)+2>>1]|0;h=32768-l+(e[m+(f*6|0)+4>>1]|0)|0;n=(e[m+(f*6|0)>>1]|0)-l+32768|0;b[g+(f<<1)>>1]=l+49152+(((h&65535)+(n&65535)|0)>>>2);b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{n=b[m+(k<<3)+6>>1]|0;o=e[m+(k<<3)+2>>1]|0;l=32768-o+(e[m+(k<<3)+4>>1]|0)|0;h=(e[m+(k<<3)>>1]|0)-o+32768|0;b[g+(k<<1)>>1]=o+49152+(((l&65535)+(h&65535)|0)>>>2);b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function sd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}function td(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=e[f+(d*6|0)+2>>1]|0;k=e[f+(d*6|0)+4>>1]|0;i=(e[f+(d*6|0)>>1]|0)-((k+l|0)>>>2)+16384|0;b[g+(d*6|0)>>1]=k+32768+i;b[g+(d*6|0)+2>>1]=i;b[g+(d*6|0)+4>>1]=l+32768+i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=e[f+(k+i<<1)>>1]|0;o=e[f+(k+j<<1)>>1]|0;l=(e[f+(k<<1)>>1]|0)-((o+n|0)>>>2)+16384|0;b[g+(k*6|0)>>1]=o+32768+l;b[g+(k*6|0)+2>>1]=l;b[g+(k*6|0)+4>>1]=n+32768+l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=e[f+(k+i<<1)>>1]|0;p=e[f+(k+d<<1)>>1]|0;o=(e[f+(k<<1)>>1]|0)-((p+n|0)>>>2)+16384|0;q=b[f+(k+j<<1)>>1]|0;r=mw(o&65535|0,0,16)|0;n=n+32768+o|D;q=mw(q&65535|0,0,48)|0;q=r|p+32768+o&65535|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){r=d+4|0;q=b[d>>1]|0;b[d>>1]=b[r>>1]|0;b[r>>1]=q;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function ud(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function vd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function wd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Ad(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Ad(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;yd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{zd(a,f,b,d,e);return}}function yd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{k=e[m+(j*6|0)>>1]|0;i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=(e[m+(j*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(j*6|0)>>1]=k+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;k=e[m+(f*6|0)>>1]|0;l=h&65535;n=(e[m+(f*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(f<<1)>>1]=k+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;p=e[m+(k<<3)>>1]|0;o=l&65535;h=(e[m+(k<<3)+4>>1]|0)+32768-((o+p|0)>>>1)&65535;b[g+(k<<1)>>1]=p+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function zd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}function Ad(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=l&65535;k=(e[f+(d*6|0)>>1]|0)+32768+i|0;i=(e[f+(d*6|0)+4>>1]|0)+32768+(((k&65535)+i|0)>>>1)&65535;b[g+(d*6|0)>>1]=k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=n&65535;o=(e[f+(k<<1)>>1]|0)+32768+l|0;l=(e[f+(k+j<<1)>>1]|0)+32768+(((o&65535)+l|0)>>>1)&65535;b[g+(k*6|0)>>1]=o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n&65535;n=(e[f+(k+d<<1)>>1]|0)+32768+((p+n|0)>>>1)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Bd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Cd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Dd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Hd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Hd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ed(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Fd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Gd(a,f,b,d,e);return}}function Fd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=32768-l+(e[m+(j*6|0)+4>>1]|0)&65535;b[g+(j*6|0)>>1]=(e[m+(j*6|0)>>1]|0)+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;l=h&65535;n=32768-l+(e[m+(f*6|0)+4>>1]|0)&65535;b[g+(f<<1)>>1]=(e[m+(f*6|0)>>1]|0)+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;o=l&65535;h=32768-o+(e[m+(k<<3)+4>>1]|0)&65535;b[g+(k<<1)>>1]=(e[m+(k<<3)>>1]|0)+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function Gd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}function Hd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;k=l&65535;i=k+32768+(e[f+(d*6|0)+4>>1]|0)&65535;b[g+(d*6|0)>>1]=(e[f+(d*6|0)>>1]|0)+32768+k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;o=n&65535;l=o+32768+(e[f+(k+j<<1)>>1]|0)&65535;b[g+(k*6|0)>>1]=(e[f+(k<<1)>>1]|0)+32768+o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n|0;n=n+32768+(e[f+(k+d<<1)>>1]|0)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p&65535|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Id(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Jd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Kd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Od(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Od(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Md(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Nd(a,f,b,d,e);return}}function Md(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;k=d+4|0;i=c[k>>2]|0;do if(!(a[i+32>>0]|0))l=e;else{d=d+8|0;lw(c[d>>2]|0,e|0,g*6|0)|0;i=c[k>>2]|0;j=c[i+16>>2]|0;if((g|0)<=0){l=c[d>>2]|0;break}d=c[d>>2]|0;i=d;e=0;while(1){l=i+4|0;m=b[i>>1]|0;b[i>>1]=b[l>>1]|0;b[l>>1]=m;e=e+1|0;if((e|0)==(g|0))break;else i=i+(j<<1)|0}l=d;i=c[k>>2]|0}while(0);switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=b[l+(i*6|0)+2>>1]|0;m=b[l+(i*6|0)+4>>1]|0;b[f+(i*6|0)>>1]=b[l+(i*6|0)>>1]|0;b[f+(i*6|0)+2>>1]=h;b[f+(i*6|0)+4>>1]=m;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=0;do{g=b[l+(e*6|0)+2>>1]|0;m=b[l+(e*6|0)+4>>1]|0;b[f+(e<<1)>>1]=b[l+(e*6|0)>>1]|0;b[f+(e+h<<1)>>1]=g;b[f+(e+d<<1)>>1]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=h*3|0;j=0;do{k=b[l+(j<<3)+2>>1]|0;g=b[l+(j<<3)+4>>1]|0;m=b[l+(j<<3)+6>>1]|0;b[f+(j<<1)>>1]=b[l+(j<<3)>>1]|0;b[f+(j+h<<1)>>1]=k;b[f+(j+d<<1)>>1]=g;b[f+(j+e<<1)>>1]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Nd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}function Od(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=b[f+(d*6|0)+4>>1]|0;b[g+(d*6|0)>>1]=b[f+(d*6|0)>>1]|0;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=b[f+(k+j<<1)>>1]|0;b[g+(k*6|0)>>1]=b[f+(k<<1)>>1]|0;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=b[f+(k<<1)>>1]|0;q=b[f+(k+j<<1)>>1]|0;o=e[f+(k+d<<1)>>1]|0;p=mw(e[f+(k+i<<1)>>1]|0,0,16)|0;o=D|o;q=mw(q&65535|0,0,48)|0;q=p|n&65535|q;o=o&65535|D;n=g+(k<<3)|0;p=n;b[p>>1]=q;b[p+2>>1]=q>>>16;n=n+4|0;b[n>>1]=o;b[n+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Pd(a){a=a|0;return}function Qd(a){a=a|0;cj(a);return}function Rd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;e=$(c[b+8>>2]|0,e)|0;b=c[b+4>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,d,e)|0)==(e|0))return;f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}function Sd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,p=0;p=i;i=i+16|0;m=p;l=b+8|0;g=c[l>>2]|0;f=$(g,e)|0;do if(f){j=b+4|0;h=f;while(1){g=c[j>>2]|0;g=Gb[c[(c[g>>2]|0)+32>>2]&63](g,d,h)|0;if(!g)break;f=h-g|0;if((h|0)==(g|0)){k=11;break}else h=f}if((k|0)==11){g=c[l>>2]|0;h=f;break}f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}else h=0;while(0);if((g|0)==2){Oc(d,e<<1);g=c[l>>2]|0}f=c[b+12>>2]|0;if((f|0)<=($(g,e)|0)){i=p;return}b=c[b+4>>2]|0;Ib[c[(c[b>>2]|0)+16>>2]&15](m,b,f-h|0,0,1,24);i=p;return}function Td(a){a=a|0;cj(a);return}function Ud(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(c[e>>2]|0,b|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(b|0,c[e>>2]|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Wd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c[b+112>>2]=0;c[b+108>>2]=0;l=c[d>>2]|0;g=l;do if(l){i=b+92|0;l=b+96|0;j=c[l>>2]|0;k=c[i>>2]|0;e=k;f=j-e|0;if(f>>>0>=4e4)if(f>>>0>4e4?(h=k+4e4|0,(j|0)!=(h|0)):0){c[l>>2]=h;h=e}else h=e;else{Xd(i,4e4-f|0);h=c[i>>2]|0;g=c[d>>2]|0}e=b+116|0;c[e>>2]=h;j=b+124|0;c[j>>2]=h;k=b+104|0;c[k>>2]=g;f=g;if(g){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){d=(Eb[c[(c[g>>2]|0)+36>>2]&127](f)|0)==-1;f=c[j>>2]|0;if(d)break;g=c[e>>2]|0}else{f=h;g=h}i=f-g|0;if(i>>>0<=64){h=b+92|0;if((f|0)==(g|0))f=g;else{f=g;g=0;do{a[(c[h>>2]|0)+g>>0]=a[f+g>>0]|0;g=g+1|0;f=c[e>>2]|0}while(g>>>0>>0);g=c[j>>2]|0}h=c[h>>2]|0;d=h;m=d-f|0;c[e>>2]=h;f=g+m|0;c[j>>2]=f;h=b+120|0;c[h>>2]=(c[h>>2]|0)+m;k=c[k>>2]|0;f=Gb[c[(c[k>>2]|0)+32>>2]&63](k,f,(c[l>>2]|0)-(d+i)|0)|0;f=(c[j>>2]|0)+f|0;c[j>>2]=f}}else f=h}else{c[b+104>>2]=0;f=c[d+4>>2]|0;e=b+116|0;c[e>>2]=f;f=f+(c[d+8>>2]|0)|0;c[b+124>>2]=f}while(0);e=c[e>>2]|0;if(e>>>0>=f>>>0){l=e;m=b+120|0;c[m>>2]=l;ge(b);return}while(1){if((a[e>>0]|0)==-1){f=20;break}e=e+1|0;if(e>>>0>=f>>>0){f=20;break}}if((f|0)==20){m=b+120|0;c[m>>2]=e;ge(b);return}}function Xd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function Yd(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+180|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4604|0;k=($(t,s)|0)+1|0;l=a+4608|0;m=a+92|0;n=(t|0)>0;p=a+4600|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(68,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Zd(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4604|0;f=c[p>>2]|0;s=d+180|0;if((c[s>>2]|0)<=0)return;q=d+4608|0;r=d+4612|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(ce(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=be(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function _d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=b+104|0;if((c[g>>2]|0)>>>0<4)$d(b);h=b+100|0;i=b+112|0;j=b+96|0;k=b+108|0;l=b+116|0;d=c[h>>2]|0;f=0;do{e=a[i>>0]|0;if((d|0)>31)break;d=c[j>>2]|0;if(!(e<<24>>24)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;e=(a[m>>0]|0)==-1&1;a[i>>0]=e;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;f=f+1|0}while((f|0)<4);if(!(e<<24>>24))ae(b,0,(d|0)%8|0);else ae(b,0,(d+-1|0)%8|0);if((c[g>>2]|0)>>>0<4)$d(b);d=c[h>>2]|0;e=0;do{if((d|0)>31)break;d=c[j>>2]|0;if(!(a[i>>0]|0)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;a[i>>0]=(a[m>>0]|0)==-1&1;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;e=e+1|0}while((e|0)<4);if(!(c[b+132>>2]|0))return;$d(b);return}function $d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+132>>2]|0;if(!d){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}e=b+108|0;f=b+120|0;h=c[f>>2]|0;g=(c[e>>2]|0)-h|0;if((Gb[c[(c[d>>2]|0)+48>>2]&63](d,h,g)|0)==(g|0)){h=c[f>>2]|0;c[e>>2]=h;c[b+104>>2]=(c[b+124>>2]|0)-h;return}d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);h=o;o=0;if(!(h&1))lb(d|0,824,96);h=Na()|0;La(d|0);Ya(h|0)}function ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+100|0;e=(c[l>>2]|0)-e|0;c[l>>2]=e;if((e|0)>-1){m=b+96|0;c[m>>2]=c[m>>2]|d<>2]=c[m>>2]|d>>0-e;k=b+104|0;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0}h=b+112|0;i=b+108|0;j=b+116|0;f=0;while(1){if((e|0)>31)break;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0;if((f|0)>=4){g=11;break}}a:do if((g|0)==11)if((e|0)<0){c[m>>2]=c[m>>2]|d>>0-e;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0;f=0}else f=0;do{if((e|0)>31)break a;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0}while((f|0)<4)}while(0);c[m>>2]=c[m>>2]|d<>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;fe(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ce(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[a+180>>2]|0)-d|0;m=c[a+4608>>2]|0;n=c[a+4604>>2]|0;h=b[m+(d+-1<<1)>>1]|0;k=h&65535;f=c[a+144>>2]|0;i=0;while(1){g=m+(i+d<<1)|0;j=(e[g>>1]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(f|0))break;b[g>>1]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]=de(a,e[d>>1]|0,k,e[n+(l<<1)>>1]|0)|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;a=i+1|0;return a|0}if(!f){a=l;return a|0}ae(a,1,1);a=l;return a|0}function de(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}return 0}function ee(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;fe(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function fe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0;l=b+120|0;if(e>>>0<((c[l>>2]|0)+-3|0)>>>0){l=b+112|0;j=c[l>>2]|0;b=b+108|0;c[b>>2]=(d[e+1>>0]<<16|d[e>>0]<<24|d[e+2>>0]<<8|d[e+3>>0])>>>j|c[b>>2];b=32-j>>3;c[k>>2]=e+b;c[l>>2]=(b<<3)+j;return}j=b+104|0;f=c[j>>2]|0;do if(f){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){if((Eb[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1)break;e=c[k>>2]|0}h=b+124|0;f=c[h>>2]|0;i=f-e|0;if(i>>>0<=64){g=b+92|0;if((f|0)==(e|0))f=e;else{f=0;do{a[(c[g>>2]|0)+f>>0]=a[e+f>>0]|0;f=f+1|0;e=c[k>>2]|0}while(f>>>0>>0);f=e;e=c[h>>2]|0}p=c[g>>2]|0;g=p;m=g-f|0;c[k>>2]=p;f=e+m|0;c[h>>2]=f;c[l>>2]=(c[l>>2]|0)+m;j=c[j>>2]|0;j=Gb[c[(c[j>>2]|0)+32>>2]&63](j,f,(c[b+96>>2]|0)-(g+i)|0)|0;c[h>>2]=(c[h>>2]|0)+j}}while(0);j=b+112|0;i=b+108|0;b=c[b+124>>2]|0;h=b+-1|0;e=c[k>>2]|0;while(1){if(e>>>0>=b>>>0){f=14;break}g=a[e>>0]|0;f=g&255;g=g<<24>>24==-1;if(g){if((e|0)==(h|0)){f=25;break}e=e+1|0;if((a[e>>0]|0)<0){f=25;break}}else e=e+1|0;p=c[j>>2]|0;c[i>>2]=f<<24-p|c[i>>2];c[k>>2]=e;p=p+(g?7:8)|0;c[j>>2]=p;if((p|0)>=24){f=33;break}}if((f|0)==14){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==25){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==33){a:do if(e>>>0>>0)do{if((a[e>>0]|0)==-1)break a;e=e+1|0}while(e>>>0>>0);while(0);c[l>>2]=e;return}}function he(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function je(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ke(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function le(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function me(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ne(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;xe(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function oe(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35828;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0} + function pe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function qe(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=a+180|0;r=(c[q>>2]|0)+4|0;if((c[a+32>>2]|0)==1)s=c[a+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;do if(d){if(!(d>>>0>715827882?(o=0,ha(178,w|0),v=o,o=0,v&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;f=e+(d*6|0)|0;c[w+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[x>>2]=f;break}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)j=20;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))j=18;if((j|0)==18?(g=s<<2,o=0,h=ka(67,g|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=h;j=h+(s<<2)|0;c[t+8>>2]=j;iw(h|0,0,g|0)|0;c[v>>2]=j;j=20;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==20){g=a+12|0;a:do if((c[g>>2]|0)>0){h=a+4604|0;j=($(s,r)|0)+1|0;k=a+4608|0;l=a+92|0;m=(s|0)>0;n=a+4600|0;p=0;b:while(1){e=c[w>>2]|0;d=e+6|0;c[h>>2]=d;e=e+(j*6|0)|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){j=30;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*6|0)|0;e=e+((y+-1|0)*6|0)|0;b[d>>1]=b[e>>1]|0;b[d+2>>1]=b[e+2>>1]|0;b[d+4>>1]=b[e+4>>1]|0;e=(c[k>>2]|0)+-6|0;d=c[h>>2]|0;b[e>>1]=b[d>>1]|0;b[e+2>>1]=b[d+2>>1]|0;b[e+4>>1]=b[d+4>>1]|0;o=0;ia(69,a|0,0);e=o;o=0;if(e&1){j=29;break b}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*6|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*6|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(182,a|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function re(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;B=d+180|0;if((c[B>>2]|0)<=0)return;C=d+4608|0;D=d+4604|0;E=d+4612|0;A=0;while(1){x=A+-1|0;j=c[C>>2]|0;k=c[D>>2]|0;f=A+1|0;i=e[k+(A*6|0)>>1]|0;z=c[E>>2]|0;l=e[k+(x*6|0)>>1]|0;m=i-l|0;n=e[j+(x*6|0)>>1]|0;o=l-n|0;p=((((a[z+((e[k+(f*6|0)>>1]|0)-i)>>0]|0)*9|0)+(a[z+m>>0]|0)|0)*9|0)+(a[z+o>>0]|0)|0;h=e[k+(A*6|0)+2>>1]|0;q=e[k+(x*6|0)+2>>1]|0;r=h-q|0;s=e[j+(x*6|0)+2>>1]|0;t=q-s|0;u=((((a[z+((e[k+(f*6|0)+2>>1]|0)-h)>>0]|0)*9|0)+(a[z+r>>0]|0)|0)*9|0)+(a[z+t>>0]|0)|0;g=e[k+(A*6|0)+4>>1]|0;v=e[k+(x*6|0)+4>>1]|0;w=g-v|0;x=e[j+(x*6|0)+4>>1]|0;y=v-x|0;z=((((a[z+((e[k+(f*6|0)+4>>1]|0)-g)>>0]|0)*9|0)+(a[z+w>>0]|0)|0)*9|0)+(a[z+y>>0]|0)|0;if(!(u|p|z))f=(se(d,A,0)|0)+A|0;else{k=e[j+(A*6|0)>>1]|0;j=i-n>>31;if((j^o|0)>=0)if((j^m|0)<0)i=n;else i=n-l+i|0;k=te(d,p,k,i,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+2>>1]|0;i=h-s>>31;if((i^t|0)>=0)if((i^r|0)<0)h=s;else h=s-q+h|0;i=te(d,u,j,h,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+4>>1]|0;h=g-x>>31;if((h^y|0)>=0)if((h^w|0)<0)g=x;else g=x-v+g|0;y=te(d,z,j,g,0)|0;z=c[C>>2]|0;b[z+(A*6|0)>>1]=k;b[z+(A*6|0)+2>>1]=i;b[z+(A*6|0)+4>>1]=y}if((f|0)<(c[B>>2]|0))A=f;else break}return}function se(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+48|0;r=B+30|0;q=B+24|0;p=B+18|0;s=B+12|0;x=B+6|0;y=B;z=(c[a+180>>2]|0)-d|0;A=c[a+4608>>2]|0;t=c[a+4604>>2]|0;w=d+-1|0;u=b[A+(w*6|0)>>1]|0;v=b[A+(w*6|0)+2>>1]|0;w=b[A+(w*6|0)+4>>1]|0;f=u&65535;g=a+144|0;h=v&65535;j=w&65535;o=0;while(1){m=o+d|0;k=A+(m*6|0)|0;l=A+(m*6|0)+2|0;m=A+(m*6|0)+4|0;C=(e[k>>1]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[l>>1]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[m>>1]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;b[k>>1]=u;b[l>>1]=v;b[m>>1]=w;o=o+1|0;if((o|0)==(z|0)){o=z;break}}h=(o|0)==(z|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(o|0))f=o;else{f=o;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]=b[C>>1]|0;b[x+2>>1]=b[C+2>>1]|0;b[x+4>>1]=b[C+4>>1]|0;b[y>>1]=u;b[y+2>>1]=v;b[y+4>>1]=w;d=t+(d*6|0)|0;b[p>>1]=b[x>>1]|0;b[p+2>>1]=b[x+2>>1]|0;b[p+4>>1]=b[x+4>>1]|0;b[q>>1]=b[y>>1]|0;b[q+2>>1]=b[y+2>>1]|0;b[q+4>>1]=b[y+4>>1]|0;b[r>>1]=b[d>>1]|0;b[r+2>>1]=b[d+2>>1]|0;b[r+4>>1]=b[d+4>>1]|0;ve(s,a,p,q,r);b[C>>1]=b[s>>1]|0;b[C+2>>1]=b[s+2>>1]|0;b[C+4>>1]=b[s+4>>1]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=z;i=B;return C|0}ae(a,1,1);C=z;i=B;return C|0}function te(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;ue(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ue(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>1]|0;p=o-(e[g>>1]|0)>>31|1;i=$(p,(e[f>>1]|0)-o|0)|0;m=d+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=d+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=d+4576|0;we(d,k,l);t=e[h+2>>1]|0;u=t-(e[g+2>>1]|0)>>31|1;i=$(u,(e[f+2>>1]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;we(d,k,q);v=e[h+4>>1]|0;s=v-(e[g+4>>1]|0)>>31|1;i=$(s,(e[f+4>>1]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;we(d,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&65535;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&65535;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}w=g&~(i>>31);w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}function we(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ue(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function xe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ye(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ze(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ae(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;pf(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function Be(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35800;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Ce(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function De(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36712;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36688;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Fe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36664;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ge(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36640;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function He(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Ie(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ne(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ne(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Le(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Me(a,f,b,d,e);return}}function Le(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{j=d[k+(i*3|0)+1>>0]|0;h=128-j+(d[k+(i*3|0)+2>>0]|0)|0;l=(d[k+(i*3|0)>>0]|0)-j+128|0;m=f+(i*3|0)|0;a[m>>0]=j+192+(((h&255)+(l&255)|0)>>>2);a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{g=d[k+(e*3|0)+1>>0]|0;l=128-g+(d[k+(e*3|0)+2>>0]|0)|0;m=(d[k+(e*3|0)>>0]|0)-g+128|0;a[f+e>>0]=g+192+(((l&255)+(m&255)|0)>>>2);a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{m=a[k+(j<<2)+3>>0]|0;n=d[k+(j<<2)+1>>0]|0;g=128-n+(d[k+(j<<2)+2>>0]|0)|0;l=(d[k+(j<<2)>>0]|0)-n+128|0;a[f+j>>0]=n+192+(((g&255)+(l&255)|0)>>>2);a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Me(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Le(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Le(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function Ne(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=d[e+(b*3|0)+1>>0]|0;i=d[e+(b*3|0)+2>>0]|0;k=(d[e+(b*3|0)>>0]|0)-((i+j|0)>>>2)+64|0;h=f+(b*3|0)|0;a[h>>0]=i+128+k;a[h+1>>0]=k;a[h+2>>0]=j+128+k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=d[e+(j+h)>>0]|0;o=d[e+(j+i)>>0]|0;m=(d[e+j>>0]|0)-((o+n|0)>>>2)+64|0;k=f+(j*3|0)|0;a[k>>0]=o+128+m;a[k+1>>0]=m;a[k+2>>0]=n+128+m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{m=d[e+(j+h)>>0]|0;p=d[e+(j+b)>>0]|0;n=(d[e+j>>0]|0)-((p+m|0)>>>2)+64|0;o=f+(j<<2)|0;n=n<<8&65280|d[e+(j+i)>>0]<<24|p+128+n&255|m+128+n<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){p=b+2|0;o=a[b>>0]|0;a[b>>0]=a[p>>0]|0;a[p>>0]=o;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Oe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Pe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Qe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ue(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ue(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Se(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Te(a,f,b,d,e);return}}function Se(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{e=d[k+(i*3|0)>>0]|0;h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=(d[k+(i*3|0)+2>>0]|0)+128-((j+e|0)>>>1)&255;m=f+(i*3|0)|0;a[m>>0]=e+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;j=d[k+(e*3|0)>>0]|0;g=l&255;m=(d[k+(e*3|0)+2>>0]|0)+128-((g+j|0)>>>1)&255;a[f+e>>0]=j+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;o=d[k+(j<<2)>>0]|0;n=g&255;l=(d[k+(j<<2)+2>>0]|0)+128-((n+o|0)>>>1)&255;a[f+j>>0]=o+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Te(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Se(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Se(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function Ue(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=j&255;i=(d[e+(b*3|0)>>0]|0)+128+k|0;k=(d[e+(b*3|0)+2>>0]|0)+128+(((i&255)+k|0)>>>1)&255;h=f+(b*3|0)|0;a[h>>0]=i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=n&255;o=(d[e+j>>0]|0)+128+m|0;m=(d[e+(j+i)>>0]|0)+128+(((o&255)+m|0)>>>1)&255;k=f+(j*3|0)|0;a[k>>0]=o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;m=(d[e+j>>0]|0)+128+n&255;o=f+(j<<2)|0;n=m|n<<8|d[e+(j+i)>>0]<<24|(d[e+(j+b)>>0]|0)+128+((m+n|0)>>>1)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Ve(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function We(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;$e(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;$e(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ye(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Ze(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{_e(a,f,b,d,e);return}}function Ze(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=128-j+(d[k+(i*3|0)+2>>0]|0)&255;m=f+(i*3|0)|0;a[m>>0]=(d[k+(i*3|0)>>0]|0)+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;g=l&255;m=128-g+(d[k+(e*3|0)+2>>0]|0)&255;a[f+e>>0]=(d[k+(e*3|0)>>0]|0)+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;n=g&255;l=128-n+(d[k+(j<<2)+2>>0]|0)&255;a[f+j>>0]=(d[k+(j<<2)>>0]|0)+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function _e(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Ze(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Ze(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function $e(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;i=j&255;k=i+128+(d[e+(b*3|0)+2>>0]|0)&255;h=f+(b*3|0)|0;a[h>>0]=(d[e+(b*3|0)>>0]|0)+128+i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;o=n&255;m=o+128+(d[e+(j+i)>>0]|0)&255;k=f+(j*3|0)|0;a[k>>0]=(d[e+j>>0]|0)+128+o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;o=f+(j<<2)|0;n=(d[e+j>>0]|0)+128+n&255|n<<8|d[e+(j+i)>>0]<<24|n+128+(d[e+(j+b)>>0]|0)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function af(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function bf(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function cf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;gf(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;gf(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;ef(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ff(a,f,b,d,e);return}}function ef(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=b+4|0;h=c[j>>2]|0;if(!(a[h+32>>0]|0))j=d;else{i=b+8|0;lw(c[i>>2]|0,d|0,f*3|0)|0;h=c[j>>2]|0;d=c[h+16>>2]|0;if((f|0)>0){h=c[i>>2]|0;b=0;while(1){k=h+2|0;l=a[h>>0]|0;a[h>>0]=a[k>>0]|0;a[k>>0]=l;b=b+1|0;if((b|0)==(f|0))break;else h=h+d|0}h=c[j>>2]|0}j=c[i>>2]|0}switch(c[h+16>>2]|0){case 3:{if((c[h+24>>2]|0)==2){if((f|0)>0)h=0;else return;do{g=a[j+(h*3|0)+1>>0]|0;k=a[j+(h*3|0)+2>>0]|0;l=e+(h*3|0)|0;a[l>>0]=a[j+(h*3|0)>>0]|0;a[l+1>>0]=g;a[l+2>>0]=k;h=h+1|0}while((h|0)!=(f|0));return}h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=0;do{k=a[j+(d*3|0)+1>>0]|0;l=a[j+(d*3|0)+2>>0]|0;a[e+d>>0]=a[j+(d*3|0)>>0]|0;a[e+(d+g)>>0]=k;a[e+(d+b)>>0]=l;d=d+1|0}while((d|0)!=(h|0));return}case 4:{if((c[h+24>>2]|0)!=1)return;h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=g*3|0;i=0;do{f=a[j+(i<<2)+1>>0]|0;k=a[j+(i<<2)+2>>0]|0;l=a[j+(i<<2)+3>>0]|0;a[e+i>>0]=a[j+(i<<2)>>0]|0;a[e+(i+g)>>0]=f;a[e+(i+b)>>0]=k;a[e+(i+d)>>0]=l;i=i+1|0}while((i|0)!=(h|0));return}default:return}}function ff(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;ef(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){ef(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function gf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=a[e+(b*3|0)+2>>0]|0;h=f+(b*3|0)|0;a[h>>0]=a[e+(b*3|0)>>0]|0;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=a[e+(j+i)>>0]|0;k=f+(j*3|0)|0;a[k>>0]=a[e+j>>0]|0;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=f+(j<<2)|0;m=d[e+(j+h)>>0]<<8|d[e+j>>0]|d[e+(j+b)>>0]<<16|d[e+(j+i)>>0]<<24;a[n>>0]=m;a[n+1>>0]=m>>8;a[n+2>>0]=m>>16;a[n+3>>0]=m>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){n=b+2|0;m=a[b>>0]|0;a[b>>0]=a[n>>0]|0;a[n>>0]=m;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function hf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+180|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4604|0;j=($(s,r)|0)+1|0;k=b+4608|0;l=b+92|0;m=(s|0)>0;n=b+4600|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(70,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function jf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+180|0;if((c[A>>2]|0)<=0)return;B=b+4608|0;C=b+4604|0;D=b+4612|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(kf(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=lf(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=lf(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=lf(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function kf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+32|0;A=B+15|0;q=B+12|0;p=B+9|0;r=B+6|0;w=B+3|0;x=B;y=(c[b+180>>2]|0)-e|0;z=c[b+4608>>2]|0;s=c[b+4604>>2]|0;v=z+((e+-1|0)*3|0)|0;t=a[v>>0]|0;u=a[v+1>>0]|0;v=a[v+2>>0]|0;f=t&255;g=b+144|0;h=u&255;j=v&255;o=0;while(1){k=z+((o+e|0)*3|0)|0;l=k+1|0;m=k+2|0;C=(d[k>>0]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[l>>0]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[m>>0]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;a[k>>0]=t;a[l>>0]=u;a[m>>0]=v;o=o+1|0;if((o|0)==(y|0)){o=y;break}}h=(o|0)==(y|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(o|0))f=o;else{f=o;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]=a[C>>0]|0;a[w+1>>0]=a[C+1>>0]|0;a[w+2>>0]=a[C+2>>0]|0;a[x>>0]=t;a[x+1>>0]=u;a[x+2>>0]=v;e=s+(e*3|0)|0;a[p>>0]=a[w>>0]|0;a[p+1>>0]=a[w+1>>0]|0;a[p+2>>0]=a[w+2>>0]|0;a[q>>0]=a[x>>0]|0;a[q+1>>0]=a[x+1>>0]|0;a[q+2>>0]=a[x+2>>0]|0;a[A>>0]=a[e>>0]|0;a[A+1>>0]=a[e+1>>0]|0;a[A+2>>0]=a[e+2>>0]|0;nf(r,b,p,q,A);a[C>>0]=a[r>>0]|0;a[C+1>>0]=a[r+1>>0]|0;a[C+2>>0]=a[r+2>>0]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=y;i=B;return C|0}ae(b,1,1);C=y;i=B;return C|0}function lf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;mf(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>0]|0;p=o-(d[g>>0]|0)>>31|1;i=$(p,(d[f>>0]|0)-o|0)|0;m=e+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=e+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=e+4576|0;of(e,k,l);t=d[h+1>>0]|0;u=t-(d[g+1>>0]|0)>>31|1;i=$(u,(d[f+1>>0]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;of(e,k,q);v=d[h+2>>0]|0;s=v-(d[g+2>>0]|0)>>31|1;i=$(s,(d[f+2>>0]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;of(e,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&255;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&255;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}w=g&~(i>>31);w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}function of(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;mf(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function pf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function qf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function rf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function sf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Bf(d);g=0;do{c[d+172+(g*12|0)>>2]=1024;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=1024;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=1024;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function tf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35772;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function uf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function vf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(71,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function wf(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(yf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=xf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function xf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&65535|0)==(g|0))m=g;else m=g>>31&65535^65535;j=(e-m^q)-q<<16;l=j>>16;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<47){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-65536?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}function yf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<16>>16;zf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<16,m)|0)>>16;zf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function zf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Af(b,h,g,63-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-16|0;if((e|0)<(d+-17|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-47|0)}else ae(a,1,f);ae(a,c+65535&65535,16);return}function Bf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8909]|0;c[b+4588>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+65536;j=b+168|0;g=b+164|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function Cf(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Df(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ef(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Nf(d);g=0;do{c[d+172+(g*12|0)>>2]=64;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=64;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=64;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Ff(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35744;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Hf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(72,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function If(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Kf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Jf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Jf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&4095|0)==(g|0))m=g;else m=g>>31&4095^4095;j=(e-m^q)-q<<20;l=j>>20;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<35){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-1048576?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}function Kf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<20>>20;Lf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<20,m)|0)>>20;Lf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f&4095;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function Lf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Mf(b,h,g,47-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-12|0;if((e|0)<(d+-13|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-43|0)}else ae(a,1,f);ae(a,c+4095&4095,12);return}function Nf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8906]|0;c[b+4588>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+4096;j=b+168|0;g=b+164|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Of(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pf(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Zf(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Rf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35716;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Tf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){e=c[w>>2]|0;d=e+1|0;c[h>>2]=d;e=e+j|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[h>>2]|0;e=c[t>>2]|0;f=0;do{c[n>>2]=c[e+(f<<2)>>2];e=c[q>>2]|0;a[d+e>>0]=a[d+(e+-1)>>0]|0;a[(c[k>>2]|0)+-1>>0]=a[c[h>>2]>>0]|0;o=0;ia(73,b|0,0);e=o;o=0;if(e&1){h=28;break c}e=c[t>>2]|0;c[e+(f<<2)>>2]=c[n>>2];d=(c[h>>2]|0)+r|0;c[h>>2]=d;c[k>>2]=(c[k>>2]|0)+r;f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){e=Na()|0;break}else if((h|0)==29){e=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function Uf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4580|0;e=c[o>>2]|0;r=b+156|0;if((c[r>>2]|0)<=0)return;p=b+4584|0;q=b+4588|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Wf(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Vf(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Vf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function Wf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[b+156>>2]|0)-e|0;k=c[b+4584>>2]|0;m=c[b+4580>>2]|0;h=a[k+(e+-1)>>0]|0;g=0;while(1){f=k+(g+e)|0;if((a[f>>0]|0)!=h<<24>>24){n=g;break}a[f>>0]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&255;h=(n|0)==(j|0);l=b+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(b,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]|0;f=d[m+f>>0]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<24>>24;Xf(b,b+4564|0,f);f=f+i|0}else{m=f-i>>31|1;e=($(g-f<<24,m)|0)>>24;Xf(b,b+4552|0,e);f=($(e,m)|0)+f|0}a[h>>0]=f;b=c[l>>2]|0;c[l>>2]=(b|0)<1?0:b+-1|0;b=n+1|0;return b|0}function Xf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Yf(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Yf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function Zf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function _f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;jg(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function bg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35688;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function dg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(74,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+156|0;if((c[A>>2]|0)<=0)return;B=b+4584|0;C=b+4580|0;D=b+4588|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(fg(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=gg(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=gg(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=gg(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function fg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=(c[b+156>>2]|0)-e|0;n=c[b+4584>>2]|0;o=c[b+4580>>2]|0;l=n+((e+-1|0)*3|0)|0;p=a[l>>0]|0;k=a[l+1>>0]|0;l=a[l+2>>0]|0;i=0;while(1){f=n+((i+e|0)*3|0)|0;g=f+1|0;h=f+2|0;if(!(((a[f>>0]|0)==p<<24>>24?(a[g>>0]|0)==k<<24>>24:0)&(a[h>>0]|0)==l<<24>>24))break;a[f>>0]=p;a[g>>0]=k;a[h>>0]=l;i=i+1|0;if((i|0)==(m|0)){i=m;break}}h=(i|0)==(m|0);j=b+4576|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]|0;e=m+2|0;f=a[e>>0]|0;o=o+(q*3|0)|0;q=a[o+1>>0]|0;t=a[o+2>>0]|0;o=d[o>>0]|0;h=o-(p&255)>>31|1;g=($((d[m>>0]|0)-o<<24,h)|0)>>24;s=b+4552|0;hg(b,s,g);p=q&255;q=p-(k&255)>>31|1;r=($((r&255)-p<<24,q)|0)>>24;hg(b,s,r);k=t&255;l=k-(l&255)>>31|1;f=($((f&255)-k<<24,l)|0)>>24;hg(b,s,f);p=($(r,q)|0)+p&255;b=($(f,l)|0)+k&255;a[m>>0]=($(g,h)|0)+o;a[n>>0]=p;a[e>>0]=b;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){t=m;return t|0}ae(b,1,1);t=m;return t|0}function gg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function hg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ig(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function jg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function kg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;wg(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function ng(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35660;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0} + function og(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function pg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;r=b+180|0;s=(c[r>>2]|0)+4|0;if((c[b+32>>2]|0)==1)p=c[b+24>>2]|0;else p=1;d=$(p<<1,s)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))q=6;if((q|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!p)q=19;else{if(!(p>>>0>1073741823?(o=0,ha(178,t|0),n=o,o=0,n&1):0))q=17;if((q|0)==17?(f=p<<2,o=0,g=ka(67,f|0)|0,n=o,o=0,!(n&1)):0){c[t>>2]=g;q=g+(p<<2)|0;c[t+8>>2]=q;iw(g|0,0,f|0)|0;c[v>>2]=q;q=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((q|0)==19){j=b+12|0;b:do if((c[j>>2]|0)>0){k=b+4604|0;l=($(p,s)|0)+1|0;m=b+4608|0;n=b+92|0;h=b+4600|0;if((p|0)>0)g=0;else{f=0;while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(f&1))d=e;else{c[k>>2]=e;c[m>>2]=d}p=c[n>>2]|0;o=0;Aa(c[(c[p>>2]|0)+12>>2]|0,p|0,d|0,c[r>>2]|0,s|0);p=o;o=0;if(p&1)break;f=f+1|0;if((f|0)>=(c[j>>2]|0)){q=45;break b}}e=Na()|0;break}c:while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(g&1))d=e;else{c[k>>2]=e;c[m>>2]=d}q=c[n>>2]|0;o=0;Aa(c[(c[q>>2]|0)+12>>2]|0,q|0,d|0,c[r>>2]|0,s|0);q=o;o=0;if(q&1){q=28;break}d=c[t>>2]|0;e=c[k>>2]|0;f=0;do{c[h>>2]=c[d+(f<<2)>>2];q=c[r>>2]|0;a[e+q>>0]=a[e+(q+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[k>>2]>>0]|0;o=0;ia(75,b|0,0);q=o;o=0;if(q&1){q=36;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[h>>2];e=(c[k>>2]|0)+s|0;c[k>>2]=e;c[m>>2]=(c[m>>2]|0)+s;f=f+1|0}while((f|0)<(p|0));g=g+1|0;if((g|0)>=(c[j>>2]|0)){q=45;break b}}if((q|0)==28){e=Na()|0;break}else if((q|0)==36){e=Na()|0;break}}else q=45;while(0);do if((q|0)==45){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function qg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4604|0;e=c[o>>2]|0;r=b+180|0;if((c[r>>2]|0)<=0)return;p=b+4608|0;q=b+4612|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(sg(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=rg(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function rg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;vg(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function sg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[b+180>>2]|0)-e|0;m=c[b+4608>>2]|0;n=c[b+4604>>2]|0;h=a[m+(e+-1)>>0]|0;k=h&255;f=b+144|0;i=0;while(1){g=m+(i+e)|0;j=(d[g>>0]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(c[f>>2]|0))break;a[g>>0]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]=tg(b,d[e>>0]|0,k,d[n+l>>0]|0)|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){b=l;return b|0}ae(b,1,1);b=l;return b|0}function tg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}return 0}function ug(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;vg(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function xg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function yg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function zg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Lg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Bg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Cg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Cg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(76,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Dg(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=d+4596|0;g=c[q>>2]|0;u=d+172|0;f=c[u>>2]|0;if((f|0)<=0)return;r=d+4600|0;s=d+4604|0;t=d+4592|0;l=g;j=e[g+-2>>1]|0;g=e[g>>1]|0;p=0;while(1){n=c[r>>2]|0;k=b[n+(p+-1<<1)>>1]|0;o=k&65535;i=p+1|0;h=e[l+(i<<1)>>1]|0;m=c[s>>2]|0;l=g-j|0;j=j-o|0;m=((((a[m+(h-g)>>0]|0)*9|0)+(a[m+l>>0]|0)|0)*9|0)+(a[m+j>>0]|0)|0;n=n+(p<<1)|0;if(!m){f=Gg(d,k,n,f-p|0)|0;g=f+p|0;if((g|0)!=(c[u>>2]|0)){o=Hg(d,o,e[(c[q>>2]|0)+(g<<1)>>1]|0)|0;b[(c[r>>2]|0)+(g<<1)>>1]=o;o=c[t>>2]|0;c[t>>2]=(o|0)<1?0:o+-1|0;f=f+1|0}i=f+p|0;h=c[q>>2]|0;g=e[h+(i+-1<<1)>>1]|0;h=e[h+(i<<1)>>1]|0}else{f=g-o>>31;if((f^j|0)<0)f=g;else f=o+((f^l|0)<0?0:l)|0;o=Fg(d,m,e[n>>1]|0,f,0)|0;b[(c[r>>2]|0)+(p<<1)>>1]=o}f=c[u>>2]|0;if((f|0)<=(i|0))break;l=c[q>>2]|0;j=g;g=h;p=i}return}function Eg(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+116|0;e=c[f>>2]|0;if((a[e>>0]|0)!=-1){g=b+112|0;d=c[g>>2]|0;if((d|0)<1){ge(b);d=c[g>>2]|0;e=c[f>>2]|0}b=b+108|0;f=c[b>>2]|0;c[g>>2]=d+-1;d=f<<1;c[b>>2]=d;if((a[e>>0]|0)!=-1){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}}else d=c[b+108>>2]|0;if(!d)return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}function Fg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Gg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=b-d|0;h=a+128|0;e=a+136|0;if((((g|0)>-1?g:0-g|0)|0)>(c[e>>2]|0)){b=$(Ig(a,a+4568|0)|0,d-b>>31|1)|0;f=c[e>>2]|0;g=f<<1|1;b=($(b,g)|0)+d|0;if((b|0)>=(0-f|0)){e=c[h>>2]|0;if((e+f|0)<(b|0))b=b-($(c[a+132>>2]|0,g)|0)|0}else{b=($(c[a+132>>2]|0,g)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}else{d=Ig(a,a+4580|0)|0;g=c[e>>2]|0;f=g<<1|1;b=($(f,d)|0)+b|0;if((b|0)>=(0-g|0)){e=c[h>>2]|0;if((e+g|0)<(b|0))b=b-($(c[a+132>>2]|0,f)|0)|0}else{b=($(c[a+132>>2]|0,f)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}return 0}function Ig(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Jg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=a+112|0;if((c[g>>2]|0)<16)ge(a);h=a+108|0;d=c[h>>2]|0;if((d|0)>=0)if(!(d&1073741824))if(!(d&536870912))if(!(d&268435456))if(!(d&134217728))if(!(d&67108864))if(!(d&33554432))if(!(d&16777216))if(!(d&8388608))if(!(d&4194304))if(!(d&2097152))if(!(d&1048576))if(!(d&524288))if(!(d&262144))if(!(d&131072)){f=d>>>12&16;b=f+-1|0;if(!f){b=(c[g>>2]|0)+-15|0;c[g>>2]=b;e=d<<15;c[h>>2]=e;d=b;b=15;while(1){if((d|0)<1){ge(a);f=c[h>>2]|0;d=c[g>>2]|0}else f=e;d=d+-1|0;c[g>>2]=d;e=f<<1;c[h>>2]=e;if((f|0)<0)break;else b=b+1|0}return b|0}}else b=14;else b=13;else b=12;else b=11;else b=10;else b=9;else b=8;else b=7;else b=6;else b=5;else b=4;else b=3;else b=2;else b=1;else b=0;a=b+1|0;c[g>>2]=(c[g>>2]|0)-a;c[h>>2]=d<>2]|0;if((e|0)<(d|0)){ge(b);e=c[f>>2]|0;if((e|0)<(d|0)){e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);b=o;o=0;if(b&1){b=Na()|0;La(e|0);Ya(b|0)}else lb(e|0,824,96)}}g=b+108|0;b=c[g>>2]|0;c[f>>2]=e-d;c[g>>2]=b<>>(32-d|0)|0}function Lg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function Mg(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Ng(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Og(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pg(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Rg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Zg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Tg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Tg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!(d>>>0>715827882?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;f=e+(d*6|0)|0;c[C+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[D>>2]=f;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=20;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=18;if((j|0)==18?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=20;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==20){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+6|0;c[j>>2]=e;f=f+(l*6|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*6|0)|0;e=e+((d+-1|0)*6|0)|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;g=(c[m>>2]|0)+-6|0;e=c[j>>2]|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;o=0;ia(77,a|0,0);g=o;o=0;if(g&1){j=31;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*6|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*6|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*6|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=32;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=44;break a}}if((j|0)==31){f=Na()|0;break}else if((j|0)==32){f=Na()|0;break}}else j=44;while(0);do if((j|0)==44){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function Ug(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=i;i=i+32|0;D=N+24|0;M=N+18|0;L=N+12|0;E=N+6|0;F=N;G=d+172|0;f=c[G>>2]|0;if((f|0)<=0){i=N;return}H=d+4600|0;I=d+4596|0;J=d+4604|0;K=d+4592|0;C=0;while(1){h=C+-1|0;j=c[H>>2]|0;O=c[I>>2]|0;g=C+1|0;k=e[O+(C*6|0)>>1]|0;B=c[J>>2]|0;l=e[O+(h*6|0)>>1]|0;m=k-l|0;n=e[j+(h*6|0)>>1]|0;o=l-n|0;p=((((a[B+((e[O+(g*6|0)>>1]|0)-k)>>0]|0)*9|0)+(a[B+m>>0]|0)|0)*9|0)+(a[B+o>>0]|0)|0;q=e[O+(C*6|0)+2>>1]|0;r=e[O+(h*6|0)+2>>1]|0;s=q-r|0;t=e[j+(h*6|0)+2>>1]|0;u=r-t|0;v=((((a[B+((e[O+(g*6|0)+2>>1]|0)-q)>>0]|0)*9|0)+(a[B+s>>0]|0)|0)*9|0)+(a[B+u>>0]|0)|0;w=e[O+(C*6|0)+4>>1]|0;x=e[O+(h*6|0)+4>>1]|0;y=w-x|0;z=e[j+(h*6|0)+4>>1]|0;A=x-z|0;B=((((a[B+((e[O+(g*6|0)+4>>1]|0)-w)>>0]|0)*9|0)+(a[B+y>>0]|0)|0)*9|0)+(a[B+A>>0]|0)|0;if(!(v|p|B)){g=j+(h*6|0)|0;b[L>>1]=b[g>>1]|0;b[L+2>>1]=b[g+2>>1]|0;b[L+4>>1]=b[g+4>>1]|0;b[D>>1]=b[g>>1]|0;b[D+2>>1]=b[g+2>>1]|0;b[D+4>>1]=b[g+4>>1]|0;f=Vg(d,D,j+(C*6|0)|0,f-C|0)|0;g=f+C|0;if((g|0)!=(c[G>>2]|0)){O=(c[I>>2]|0)+(g*6|0)|0;b[F>>1]=b[O>>1]|0;b[F+2>>1]=b[O+2>>1]|0;b[F+4>>1]=b[O+4>>1]|0;O=(c[H>>2]|0)+(g*6|0)|0;b[M>>1]=b[L>>1]|0;b[M+2>>1]=b[L+2>>1]|0;b[M+4>>1]=b[L+4>>1]|0;b[D>>1]=b[F>>1]|0;b[D+2>>1]=b[F+2>>1]|0;b[D+4>>1]=b[F+4>>1]|0;Wg(E,d,M,D);b[O>>1]=b[E>>1]|0;b[O+2>>1]=b[E+2>>1]|0;b[O+4>>1]=b[E+4>>1]|0;O=c[K>>2]|0;c[K>>2]=(O|0)<1?0:O+-1|0;f=f+1|0}g=f+C|0}else{h=e[j+(C*6|0)>>1]|0;f=k-n>>31;if((f^o|0)>=0)if((f^m|0)<0)f=n;else f=n-l+k|0;else f=k;k=Xg(d,p,h,f,0)|0;h=e[(c[H>>2]|0)+(C*6|0)+2>>1]|0;f=q-t>>31;if((f^u|0)>=0)if((f^s|0)<0)f=t;else f=t-r+q|0;else f=q;h=Xg(d,v,h,f,0)|0;j=e[(c[H>>2]|0)+(C*6|0)+4>>1]|0;f=w-z>>31;if((f^A|0)>=0)if((f^y|0)<0)f=z;else f=z-x+w|0;else f=w;B=Xg(d,B,j,f,0)|0;O=c[H>>2]|0;b[O+(C*6|0)>>1]=k;b[O+(C*6|0)+2>>1]=h;b[O+(C*6|0)+4>>1]=B}f=c[G>>2]|0;if((g|0)>=(f|0))break;else C=g}i=N;return}function Vg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)<=0)return h|0;i=0;do{r=f+(i*6|0)|0;b[r>>1]=b[e>>1]|0;b[r+2>>1]=b[e+2>>1]|0;b[r+4>>1]=b[e+4>>1]|0;i=i+1|0}while((i|0)!=(h|0));return h|0}function Wg(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=d+4568|0;o=Yg(d,l)|0;j=Yg(d,l)|0;l=Yg(d,l)|0;i=d+128|0;h=e[g>>1]|0;m=c[d+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(e[f>>1]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else{h=($(c[d+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&65535;h=e[g+2>>1]|0;h=($($(n,j)|0,h-(e[f+2>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&65535;h=e[g+4>>1]|0;h=($($(n,l)|0,h-(e[f+4>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){d=h;d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}d=i&~(h>>31);d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}function Xg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Yg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Zg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function _g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ah(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function bh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;jh(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function ch(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);dh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function dh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+172|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4596|0;k=$(y,x)|0;l=k+1|0;m=b+4600|0;n=(y|0)>0;p=b+160|0;q=b+168|0;r=b+164|0;s=b+156|0;t=b+88|0;u=b+4592|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(78,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;M=i;i=i+16|0;C=M+12|0;L=M+9|0;K=M+6|0;D=M+3|0;E=M;F=b+172|0;e=c[F>>2]|0;if((e|0)<=0){i=M;return}G=b+4600|0;H=b+4596|0;I=b+4604|0;J=b+4592|0;B=0;while(1){y=B+-1|0;g=c[G>>2]|0;h=g+(y*3|0)|0;N=c[H>>2]|0;f=B+1|0;j=d[N+(B*3|0)>>0]|0;A=c[I>>2]|0;k=d[N+(y*3|0)>>0]|0;l=j-k|0;m=d[h>>0]|0;n=k-m|0;o=((((a[A+((d[N+(f*3|0)>>0]|0)-j)>>0]|0)*9|0)+(a[A+l>>0]|0)|0)*9|0)+(a[A+n>>0]|0)|0;p=d[N+(B*3|0)+1>>0]|0;q=d[N+(y*3|0)+1>>0]|0;r=p-q|0;s=d[g+(y*3|0)+1>>0]|0;t=q-s|0;u=((((a[A+((d[N+(f*3|0)+1>>0]|0)-p)>>0]|0)*9|0)+(a[A+r>>0]|0)|0)*9|0)+(a[A+t>>0]|0)|0;v=d[N+(B*3|0)+2>>0]|0;w=d[N+(y*3|0)+2>>0]|0;x=v-w|0;y=d[g+(y*3|0)+2>>0]|0;z=w-y|0;A=((((a[A+((d[N+(f*3|0)+2>>0]|0)-v)>>0]|0)*9|0)+(a[A+x>>0]|0)|0)*9|0)+(a[A+z>>0]|0)|0;if(!(u|o|A)){a[K>>0]=a[h>>0]|0;a[K+1>>0]=a[h+1>>0]|0;a[K+2>>0]=a[h+2>>0]|0;a[C>>0]=a[h>>0]|0;a[C+1>>0]=a[h+1>>0]|0;a[C+2>>0]=a[h+2>>0]|0;e=fh(b,C,g+(B*3|0)|0,e-B|0)|0;f=e+B|0;if((f|0)!=(c[F>>2]|0)){N=(c[H>>2]|0)+(f*3|0)|0;a[E>>0]=a[N>>0]|0;a[E+1>>0]=a[N+1>>0]|0;a[E+2>>0]=a[N+2>>0]|0;N=c[G>>2]|0;a[L>>0]=a[K>>0]|0;a[L+1>>0]=a[K+1>>0]|0;a[L+2>>0]=a[K+2>>0]|0;a[C>>0]=a[E>>0]|0;a[C+1>>0]=a[E+1>>0]|0;a[C+2>>0]=a[E+2>>0]|0;gh(D,b,L,C);N=N+(f*3|0)|0;a[N>>0]=a[D>>0]|0;a[N+1>>0]=a[D+1>>0]|0;a[N+2>>0]=a[D+2>>0]|0;N=c[J>>2]|0;c[J>>2]=(N|0)<1?0:N+-1|0;e=e+1|0}f=e+B|0}else{g=d[g+(B*3|0)>>0]|0;e=j-m>>31;if((e^n|0)>=0)if((e^l|0)<0)e=m;else e=m-k+j|0;else e=j;j=hh(b,o,g,e,0)|0;g=d[(c[G>>2]|0)+(B*3|0)+1>>0]|0;e=p-s>>31;if((e^t|0)>=0)if((e^r|0)<0)e=s;else e=s-q+p|0;else e=p;g=hh(b,u,g,e,0)|0;h=d[(c[G>>2]|0)+(B*3|0)+2>>0]|0;e=v-y>>31;if((e^z|0)>=0)if((e^x|0)<0)e=y;else e=y-w+v|0;else e=v;A=hh(b,A,h,e,0)|0;N=(c[G>>2]|0)+(B*3|0)|0;a[N>>0]=j;a[N+1>>0]=g;a[N+2>>0]=A}e=c[F>>2]|0;if((f|0)>=(e|0))break;else B=f}i=M;return}function fh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4592|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function gh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=e+4568|0;o=ih(e,l)|0;j=ih(e,l)|0;l=ih(e,l)|0;i=e+128|0;h=d[g>>0]|0;m=c[e+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(d[f>>0]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else{h=($(c[e+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&255;h=d[g+1>>0]|0;h=($($(n,j)|0,h-(d[f+1>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&255;h=d[g+2>>0]|0;h=($($(n,l)|0,h-(d[f+2>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){e=h;e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}e=i&~(h>>31);e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}function hh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&255;return d|0}d=f&~(h>>31);d=d&255;return d|0}function ih(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function jh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function kh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function nh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;vh(d);g=0;do{c[d+164+(g*12|0)>>2]=1024;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=1024;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=1024;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function oh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);ph(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function ph(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(79,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function qh(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(sh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=rh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function rh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&65535|0)!=(f|0))f=f>>31&65535^65535;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<47){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}function sh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=th(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(uh(a,a+4556|0)|0)+f|0;else f=($(uh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function th(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function uh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(46-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,16)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function vh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8909]|0;c[b+4580>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+65536;j=b+160|0;g=b+156|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function wh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function xh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function yh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function zh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Hh(d);g=0;do{c[d+164+(g*12|0)>>2]=64;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=64;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=64;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Ah(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Bh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Bh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(80,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Ch(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Eh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Dh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Dh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&4095|0)!=(f|0))f=f>>31&4095^4095;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<35){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}function Eh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=Fh(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Gh(a,a+4556|0)|0)+f|0;else f=($(Gh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f&4095;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function Fh(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Gh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(34-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,12)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Hh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8906]|0;c[b+4580>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+4096;j=b+160|0;g=b+156|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Ih(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Jh(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Lh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Th(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Mh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Nh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Nh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[D>>2]|0)+1|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}e=Na()|0;d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+1|0;c[j>>2]=e;f=f+l|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;a[e+g>>0]=a[e+(g+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[j>>2]>>0]|0;o=0;ia(81,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+x|0;c[j>>2]=e;d=(c[m>>2]|0)+x|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){e=Na()|0;break}else if((h|0)==31){e=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);i=A;return}while(0);d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}function Oh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4572|0;e=c[o>>2]|0;r=b+148|0;if((c[r>>2]|0)<=0)return;p=b+4576|0;q=b+4580|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Qh(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Ph(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Ph(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function Qh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=b+4576|0;h=c[i>>2]|0;f=a[h+(e+-1)>>0]|0;j=b+148|0;h=Rh(b,f,h+e|0,(c[j>>2]|0)-e|0)|0;g=h+e|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&255;e=d[(c[b+4572>>2]|0)+g>>0]|0;j=f-e|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Sh(b,b+4556|0)|0)+f|0;else f=($(Sh(b,b+4544|0)|0,e-f>>31|1)|0)+e|0;a[(c[i>>2]|0)+g>>0]=f;j=b+4568|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;j=h+1|0;return j|0}function Rh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;iw(e|0,d|0,g|0)|0;return g|0}function Sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8900]|0;c[b+4580>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+256;j=b+160|0;g=b+156|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function Uh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Vh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Xh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;di(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Yh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Zh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Zh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(82,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function _h(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+148|0;if((c[A>>2]|0)<=0)return;B=b+4576|0;C=b+4572|0;D=b+4580|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=($h(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=ai(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=ai(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=ai(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function $h(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+16|0;n=l+3|0;o=l;h=b+4576|0;e=c[h>>2]|0;f=e+((d+-1|0)*3|0)|0;j=a[f>>0]|0;k=a[f+1>>0]|0;f=a[f+2>>0]|0;a[o>>0]=j;a[o+1>>0]=k;a[o+2>>0]=f;m=b+148|0;g=(c[m>>2]|0)-d|0;a[n>>0]=a[o>>0]|0;a[n+1>>0]=a[o+1>>0]|0;a[n+2>>0]=a[o+2>>0]|0;g=bi(b,n,e+(d*3|0)|0,g)|0;e=g+d|0;if((e|0)==(c[m>>2]|0)){o=g;i=l;return o|0}n=(c[b+4572>>2]|0)+(e*3|0)|0;d=a[n>>0]|0;m=a[n+1>>0]|0;n=a[n+2>>0]|0;o=c[h>>2]|0;p=b+4544|0;h=ci(b,p)|0;q=ci(b,p)|0;d=d&255;m=m&255;m=($(m-(k&255)>>31|1,q)|0)+m&255;n=n&255;n=($(n-(f&255)>>31|1,ci(b,p)|0)|0)+n&255;o=o+(e*3|0)|0;a[o>>0]=($(d-(j&255)>>31|1,h)|0)+d;a[o+1>>0]=m;a[o+2>>0]=n;o=b+4568|0;n=c[o>>2]|0;c[o>>2]=(n|0)<1?0:n+-1|0;o=g+1|0;i=l;return o|0}function ai(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function bi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function ci(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0} + function Lp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+128|0;h=n;q=n+116|0;r=n+104|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,0,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(3,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=Uu(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function Mp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+240|0;h=n+8|0;a=n;q=n+204|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,0,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,23,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(3,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=Uu(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function Np(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+312|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+316|0;t=z+80|0;k=z+84|0;y=z+76|0;x=z+72|0;v=z+68|0;w=z+64|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58898,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,c[q>>2]=c[d+8>>2],h[q+8>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Op(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=i;i=i+16|0;z=y;x=Is(j,44212)|0;v=Is(j,44368)|0;Cb[c[(c[v>>2]|0)+20>>2]&127](z,v);c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,j|0)|0;w=o;o=0;if(w&1)u=8;else{m=c[h>>2]|0;c[h>>2]=m+4;c[m>>2]=j;m=b+1|0;u=10}break}default:{m=b;u=10}}a:do if((u|0)==10){w=e;b:do if((w-m|0)>1?(a[m>>0]|0)==48:0){k=m+1|0;switch(a[k>>0]|0){case 88:case 120:break;default:{u=11;break b}}o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,48)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;m=m+2|0;o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[k>>0]|0)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;if(m>>>0>>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(39,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break b}j=j+1|0;if(j>>>0>=e>>>0){t=m;break b}}j=Na()|0;break a}else{t=m;j=m}}else u=11;while(0);c:do if((u|0)==11)if(m>>>0>>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(40,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break c}j=j+1|0;if(j>>>0>=e>>>0){t=m;break c}}j=Na()|0;break a}else{t=m;j=m}while(0);r=a[z>>0]|0;s=z+4|0;if(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0){if((t|0)!=(j|0)?(n=j+-1|0,t>>>0>>0):0){l=t;k=n;do{r=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=r;l=l+1|0;k=k+-1|0}while(l>>>0>>0)}o=0;n=ka(c[(c[v>>2]|0)+16>>2]|0,v|0)|0;r=o;o=0;if(r&1){u=8;break}p=z+8|0;q=z+1|0;d:do if(t>>>0>>0){k=0;l=0;r=t;while(1){m=a[((a[z>>0]&1)==0?q:c[p>>2]|0)+l>>0]|0;if(m<<24>>24>0&(k|0)==(m<<24>>24|0)){k=c[h>>2]|0;c[h>>2]=k+4;c[k>>2]=n;k=a[z>>0]|0;m=0;l=(l>>>0<(((k&1)==0?(k&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+l|0}else m=k;o=0;k=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[r>>0]|0)|0;A=o;o=0;if(A&1)break;A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=k;r=r+1|0;if(r>>>0>=j>>>0)break d;else k=m+1|0}j=Na()|0;break a}while(0);k=f+(t-b<<2)|0;m=c[h>>2]|0;if((k|0)!=(m|0)){l=m+-4|0;if(k>>>0>>0){do{A=c[k>>2]|0;c[k>>2]=c[l>>2];c[l>>2]=A;k=k+4|0;l=l+-4|0}while(k>>>0>>0);n=x;k=m}else{n=x;k=m}}else n=x}else{o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,t|0,j|0,c[h>>2]|0)|0;A=o;o=0;if(A&1){u=8;break}k=(c[h>>2]|0)+(j-t<<2)|0;c[h>>2]=k;n=x}e:do if(j>>>0>>0){while(1){k=a[j>>0]|0;if(k<<24>>24==46){l=j;break}o=0;l=ra(c[(c[n>>2]|0)+44>>2]|0,x|0,k|0)|0;A=o;o=0;if(A&1){u=4;break}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=l;j=j+1|0;if(j>>>0>=e>>>0)break e}if((u|0)==4){j=Na()|0;break a}o=0;j=ka(c[(c[v>>2]|0)+12>>2]|0,v|0)|0;A=o;o=0;if(A&1){u=8;break a}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=j;j=l+1|0}while(0);o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,j|0,e|0,k|0)|0;A=o;o=0;if(A&1)u=8;else{A=(c[h>>2]|0)+(w-j<<2)|0;c[h>>2]=A;c[g>>2]=(d|0)==(e|0)?A:f+(d-b<<2)|0;Im(z);i=y;return}}while(0);if((u|0)==8)j=Na()|0;Im(z);Ya(j|0)}function Pp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+304|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+308|0;t=z+72|0;k=z+76|0;y=z+68|0;x=z+64|0;v=z+60|0;w=z+56|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58899,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,h[q>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Qp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+192|0;l=q;b=q+180|0;n=q+160|0;p=q+12|0;k=q+8|0;m=q+4|0;a[b>>0]=a[58901]|0;a[b+1>>0]=a[58902]|0;a[b+2>>0]=a[58903]|0;a[b+3>>0]=a[58904]|0;a[b+4>>0]=a[58905]|0;a[b+5>>0]=a[58906]|0;h=Xo()|0;c[l>>2]=g;b=Su(n,20,h,b,l)|0;g=n+b|0;h=vp(n,g,e)|0;j=jn(e)|0;c[k>>2]=j;o=0;k=ra(37,k|0,44212)|0;r=o;o=0;if(r&1){r=Na()|0;pm(j)|0;Ya(r|0)}else{pm(j)|0;Pb[c[(c[k>>2]|0)+48>>2]&31](k,n,g,p)|0;r=p+(b<<2)|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];r=Uu(l,p,(h|0)==(g|0)?r:p+(h-n<<2)|0,r,e,f)|0;i=q;return r|0}return 0}function Rp(e,f,g,h,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+32|0;w=C+16|0;v=C+12|0;z=C+8|0;x=C+4|0;y=C;n=jn(h)|0;c[z>>2]=n;o=0;z=ra(37,z|0,44220)|0;u=o;o=0;if(u&1){C=Na()|0;pm(n)|0;Ya(C|0)}pm(n)|0;c[j>>2]=0;u=z+8|0;n=c[f>>2]|0;a:do if((l|0)!=(m|0)){b:while(1){p=n;if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0;p=0}}else n=0;s=(n|0)==0;r=c[g>>2]|0;q=r;do if(r){if((c[r+12>>2]|0)==(c[r+16>>2]|0)?(Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)==-1:0){c[g>>2]=0;q=0;B=12;break}if(!s){B=13;break b}}else B=12;while(0);if((B|0)==12){B=0;if(s){B=13;break}else r=0}c:do if((Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[l>>0]|0,0)|0)<<24>>24==37){r=l+1|0;if((r|0)==(m|0)){B=17;break b}t=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[r>>0]|0,0)|0;switch(t<<24>>24){case 48:case 69:{s=l+2|0;if((s|0)==(m|0)){B=20;break b}l=r;r=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[s>>0]|0,0)|0;n=t;break}default:{r=t;n=0}}t=c[(c[e>>2]|0)+36>>2]|0;c[x>>2]=p;c[y>>2]=q;c[v>>2]=c[x>>2];c[w>>2]=c[y>>2];c[f>>2]=Sb[t&15](e,v,w,h,j,k,r,n)|0;l=l+2|0}else{p=a[l>>0]|0;if(p<<24>>24>-1?(A=c[u>>2]|0,(b[A+(p<<24>>24<<1)>>1]&8192)!=0):0){do{l=l+1|0;if((l|0)==(m|0)){l=m;break}p=a[l>>0]|0;if(p<<24>>24<=-1)break}while((b[A+(p<<24>>24<<1)>>1]&8192)!=0);p=r;while(1){if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;q=(n|0)==0;do if(r){if((c[r+12>>2]|0)!=(c[r+16>>2]|0))if(q){t=p;break}else break c;if((Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)!=-1)if(q^(p|0)==0){t=p;r=p;break}else break c;else{c[g>>2]=0;p=0;B=39;break}}else B=39;while(0);if((B|0)==39){B=0;if(q)break c;else{t=p;r=0}}q=n+12|0;p=c[q>>2]|0;s=n+16|0;if((p|0)==(c[s>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;if((p&255)<<24>>24<=-1)break c;if(!(b[(c[u>>2]|0)+(p<<24>>24<<1)>>1]&8192))break c;p=c[q>>2]|0;if((p|0)==(c[s>>2]|0)){Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;p=t;continue}else{c[q>>2]=p+1;p=t;continue}}}q=n+12|0;p=c[q>>2]|0;r=n+16|0;if((p|0)==(c[r>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;t=Lb[c[(c[z>>2]|0)+12>>2]&63](z,p&255)|0;if(t<<24>>24!=(Lb[c[(c[z>>2]|0)+12>>2]&63](z,a[l>>0]|0)|0)<<24>>24){B=57;break b}p=c[q>>2]|0;if((p|0)==(c[r>>2]|0))Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;else c[q>>2]=p+1;l=l+1|0}while(0);n=c[f>>2]|0;if(!((l|0)!=(m|0)&(c[j>>2]|0)==0))break a}if((B|0)==13){c[j>>2]=4;break}else if((B|0)==17){c[j>>2]=4;break}else if((B|0)==20){c[j>>2]=4;break}else if((B|0)==57){c[j>>2]=4;n=c[f>>2]|0;break}}while(0);if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;l=(n|0)==0;p=c[g>>2]|0;do if(p){if((c[p+12>>2]|0)==(c[p+16>>2]|0)?(Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1:0){c[g>>2]=0;B=67;break}if(!l)B=68}else B=67;while(0);if((B|0)==67?l:0)B=68;if((B|0)==68)c[j>>2]=c[j>>2]|2;i=C;return n|0}function Sp(a){a=a|0;return}function Tp(a){a=a|0;cj(a);return}function Up(a){a=a|0;return 2}function Vp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Rp(a,k,j,e,f,g,58907,58915)|0;i=h;return a|0}function Wp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;o=b+8|0;o=Eb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];e=a[o>>0]|0;p=(e&1)==0;d=p?o+1|0:c[o+8>>2]|0;e=d+(p?(e&255)>>>1:c[o+4>>2]|0)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=Rp(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function Xp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];Yp(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function Yp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function Zp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];_p(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function _p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function $p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];aq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function aq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function bq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44220)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];Yp(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];_p(b,h+16|0,d,l,g,N);V=28;break}case 99:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+12>>2]&127](V)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];cq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=Rp(b,k,l,f,g,h,58915,58923)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=Rp(b,k,l,f,g,h,58923,58931)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];dq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];eq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];fq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];gq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];hq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];iq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];jq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=Rp(b,k,l,f,g,h,58931,58942)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=Rp(b,k,l,f,g,h,58942,58947)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];kq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=Rp(b,k,l,f,g,h,58947,58955)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];lq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+24>>2]&127](V)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];aq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];mq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];nq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function hq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function iq(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=h+8|0;a:while(1){h=c[e>>2]|0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0;while(0);h=(h|0)==0;a=c[f>>2]|0;do if(a){if((c[a+12>>2]|0)!=(c[a+16>>2]|0))if(h)break;else break a;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)!=-1)if(h)break;else break a;else{c[f>>2]=0;k=12;break}}else k=12;while(0);if((k|0)==12){k=0;if(h){a=0;break}else a=0}h=c[e>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=d[i>>0]|0;if((h&255)<<24>>24<=-1)break;if(!(b[(c[j>>2]|0)+(h<<24>>24<<1)>>1]&8192))break;h=c[e>>2]|0;a=h+12|0;i=c[a>>2]|0;if((i|0)==(c[h+16>>2]|0)){Eb[c[(c[h>>2]|0)+40>>2]&127](h)|0;continue}else{c[a>>2]=i+1;continue}}h=c[e>>2]|0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0;while(0);h=(h|0)==0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[f>>2]=0;k=32;break}if(!h)k=33}else k=32;while(0);if((k|0)==32?h:0)k=33;if((k|0)==33)c[g>>2]=c[g>>2]|2;return}function jq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=xu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4;while(0);i=n;return}function kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function mq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function nq(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a=c[b>>2]|0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}}else a=0;while(0);h=(a|0)==0;a=c[e>>2]|0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[e>>2]=0;j=11;break}if(h){i=a;j=13}else j=12}else j=11;while(0);if((j|0)==11)if(h)j=12;else{i=0;j=13}a:do if((j|0)==12)c[f>>2]=c[f>>2]|6;else if((j|0)==13){a=c[b>>2]|0;h=c[a+12>>2]|0;if((h|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=d[h>>0]|0;if((Gb[c[(c[g>>2]|0)+36>>2]&63](g,a&255,0)|0)<<24>>24!=37){c[f>>2]=c[f>>2]|4;break}a=c[b>>2]|0;h=a+12|0;g=c[h>>2]|0;if((g|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)a=0;else j=21}else{c[h>>2]=g+1;j=21}do if((j|0)==21)if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}while(0);a=(a|0)==0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0)?(Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1:0){c[e>>2]=0;j=30;break}if(a)break a}else j=30;while(0);if((j|0)==30?!a:0)break;c[f>>2]=c[f>>2]|2}while(0);return}function oq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=i;i=i+32|0;s=x+16|0;r=x+12|0;v=x+8|0;t=x+4|0;u=x;k=jn(e)|0;c[v>>2]=k;o=0;v=ra(37,v|0,44212)|0;q=o;o=0;if(q&1){x=Na()|0;pm(k)|0;Ya(x|0)}pm(k)|0;c[f>>2]=0;k=c[b>>2]|0;a:do if((h|0)!=(j|0)){b:while(1){m=k;if(k){l=c[k+12>>2]|0;if((l|0)==(c[k+16>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if((l|0)==-1){c[b>>2]=0;k=0;p=1;q=0}else{p=0;q=m}}else{k=0;p=1;q=m}n=c[d>>2]|0;l=n;do if(n){m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0))m=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(p)break;else{w=17;break b}else{c[d>>2]=0;l=0;w=15;break}}else w=15;while(0);if((w|0)==15){w=0;if(p){w=17;break}else n=0}c:do if((Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[h>>2]|0,0)|0)<<24>>24==37){m=h+4|0;if((m|0)==(j|0)){w=21;break b}p=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[m>>2]|0,0)|0;switch(p<<24>>24){case 48:case 69:{n=h+8|0;if((n|0)==(j|0)){w=24;break b}h=m;m=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[n>>2]|0,0)|0;k=p;break}default:{m=p;k=0}}p=c[(c[a>>2]|0)+36>>2]|0;c[t>>2]=q;c[u>>2]=l;c[r>>2]=c[t>>2];c[s>>2]=c[u>>2];c[b>>2]=Sb[p&15](a,r,s,e,f,g,m,k)|0;h=h+8|0}else{if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0)){m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;q=Lb[c[(c[v>>2]|0)+28>>2]&63](v,l)|0;if((q|0)!=(Lb[c[(c[v>>2]|0)+28>>2]&63](v,c[h>>2]|0)|0)){w=61;break b}l=c[m>>2]|0;if((l|0)==(c[n>>2]|0))Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;else c[m>>2]=l+4;h=h+4|0;break}do{h=h+4|0;if((h|0)==(j|0)){h=j;break}}while(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0);l=n;p=n;while(1){if(k){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0))m=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else m=c[m>>2]|0;if((m|0)==-1){c[b>>2]=0;n=1;k=0}else n=0}else{n=1;k=0}do if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0))m=Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(n^(l|0)==0){q=l;p=l;break}else break c;else{c[d>>2]=0;l=0;w=44;break}}else w=44;while(0);if((w|0)==44){w=0;if(n)break c;else{q=l;p=0}}m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,l)|0))break c;l=c[m>>2]|0;if((l|0)==(c[n>>2]|0)){Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;l=q;continue}else{c[m>>2]=l+4;l=q;continue}}}while(0);k=c[b>>2]|0;if(!((h|0)!=(j|0)&(c[f>>2]|0)==0))break a}if((w|0)==17){c[f>>2]=4;break}else if((w|0)==21){c[f>>2]=4;break}else if((w|0)==24){c[f>>2]=4;break}else if((w|0)==61){c[f>>2]=4;k=c[b>>2]|0;break}}while(0);if(k){h=c[k+12>>2]|0;if((h|0)==(c[k+16>>2]|0))h=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else h=c[h>>2]|0;if((h|0)==-1){c[b>>2]=0;k=0;m=1}else m=0}else{k=0;m=1}h=c[d>>2]|0;do if(h){l=c[h+12>>2]|0;if((l|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=c[l>>2]|0;if((h|0)!=-1)if(m)break;else{w=76;break}else{c[d>>2]=0;w=74;break}}else w=74;while(0);if((w|0)==74?m:0)w=76;if((w|0)==76)c[f>>2]=c[f>>2]|2;i=x;return k|0}function pq(a){a=a|0;return}function qq(a){a=a|0;cj(a);return}function rq(a){a=a|0;return 2}function sq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=oq(a,k,j,e,f,g,44788,44820)|0;i=h;return a|0}function tq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;q=b+8|0;q=Eb[c[(c[q>>2]|0)+20>>2]&127](q)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];o=a[q>>0]|0;p=(o&1)==0;e=q+4|0;d=p?e:c[q+8>>2]|0;e=d+((p?(o&255)>>>1:c[e>>2]|0)<<2)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=oq(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function uq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];vq(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function wq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];xq(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function yq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];zq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function zq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function Aq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44212)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];vq(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];xq(b,h+16|0,d,l,g,N);V=28;break}case 99:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+12>>2]&127](W)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];Bq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=oq(b,k,l,f,g,h,44820,44852)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=oq(b,k,l,f,g,h,44852,44884)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];Cq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];Dq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];Eq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];Fq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];Gq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];Hq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];Iq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=oq(b,k,l,f,g,h,44884,44928)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=oq(b,k,l,f,g,h,44928,44948)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];Jq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=oq(b,k,l,f,g,h,44948,44980)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];Kq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+24>>2]&127](W)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];zq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];Lq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];Mq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function Bq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function Gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Hq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:while(1){a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){h=g;break}else{h=g;break a}else{c[d>>2]=0;i=15;break}}else i=15;while(0);if((i|0)==15){i=0;if(h){h=0;break}else h=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if(!(Gb[c[(c[f>>2]|0)+12>>2]&63](f,8192,a)|0))break;a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;continue}else{c[g>>2]=h+4;continue}}a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))a=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break;else{i=39;break}else{c[d>>2]=0;i=37;break}}else i=37;while(0);if((i|0)==37?g:0)i=39;if((i|0)==39)c[e>>2]=c[e>>2]|2;return}function Iq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=Iu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4;while(0);i=n;return}function Jq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function Mq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){i=g;j=17;break}else{j=16;break}else{c[d>>2]=0;j=14;break}}else j=14;while(0);if((j|0)==14)if(h)j=16;else{i=0;j=17}a:do if((j|0)==16)c[e>>2]=c[e>>2]|6;else if((j|0)==17){a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((Gb[c[(c[f>>2]|0)+52>>2]&63](f,a,0)|0)<<24>>24!=37){c[e>>2]=c[e>>2]|4;break}a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)g=1;else j=25}else{c[g>>2]=h+4;j=25}do if((j|0)==25){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}while(0);do if(i){a=c[i+12>>2]|0;if((a|0)==(c[i+16>>2]|0))a=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break a;else break;else{c[d>>2]=0;j=37;break}}else j=37;while(0);if((j|0)==37?!g:0)break;c[e>>2]=c[e>>2]|2}while(0);return}function Nq(a){a=a|0;Oq(a+8|0);return}function Oq(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;o=0;d=ua(3)|0;e=o;o=0;do if(!(e&1)){if((b|0)!=(d|0)?(o=0,ha(188,c[a>>2]|0),e=o,o=0,e&1):0)break;return}while(0);e=Na(0)|0;ec(e)}function Pq(a){a=a|0;Oq(a+8|0);cj(a);return}function Qq(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;l=i;i=i+112|0;k=l+4|0;e=l;c[e>>2]=k+100;Rq(b+8|0,k,e,g,h,j);g=c[e>>2]|0;e=c[d>>2]|0;if((k|0)!=(g|0))do{j=a[k>>0]|0;do if(e){f=e+24|0;h=c[f>>2]|0;if((h|0)==(c[e+28>>2]|0)){d=(Lb[c[(c[e>>2]|0)+52>>2]&63](e,j&255)|0)==-1;e=d?0:e;break}else{c[f>>2]=h+1;a[h>>0]=j;break}}else e=0;while(0);k=k+1|0}while((k|0)!=(g|0));i=l;return e|0}function Rq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;a[l>>0]=37;j=l+1|0;a[j>>0]=g;k=l+2|0;a[k>>0]=h;a[l+3>>0]=0;if(h<<24>>24){a[j>>0]=h;a[k>>0]=g}c[e>>2]=d+(Ra(d|0,(c[e>>2]|0)-d|0,l|0,f|0,c[b>>2]|0)|0);i=m;return}function Sq(a){a=a|0;Oq(a+8|0);return}function Tq(a){a=a|0;Oq(a+8|0);cj(a);return}function Uq(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0;j=i;i=i+416|0;e=j+8|0;d=j;c[d>>2]=e+400;Vq(a+8|0,e,d,f,g,h);a=c[d>>2]|0;d=c[b>>2]|0;if((e|0)!=(a|0)){f=e;do{e=c[f>>2]|0;if(!d)d=0;else{g=d+24|0;h=c[g>>2]|0;if((h|0)==(c[d+28>>2]|0))e=Lb[c[(c[d>>2]|0)+52>>2]&63](d,e)|0;else{c[g>>2]=h+4;c[h>>2]=e}d=(e|0)==-1?0:d}f=f+4|0}while((f|0)!=(a|0))}i=j;return d|0}function Vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+128|0;l=h+16|0;m=h+12|0;j=h;k=h+8|0;c[m>>2]=l+100;Rq(a,l,m,e,f,g);f=j;c[f>>2]=0;c[f+4>>2]=0;c[k>>2]=l;f=(c[d>>2]|0)-b>>2;g=qk(c[a>>2]|0)|0;o=0;f=va(18,b|0,k|0,f|0,j|0)|0;a=o;o=0;if(a&1){f=Na()|0;if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}Ya(f|0)}if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}if((f|0)==-1)Rr(58955);else{c[d>>2]=b+(f<<2);i=h;return}}function Wq(a){a=a|0;return}function Xq(a){a=a|0;cj(a);return}function Yq(a){a=a|0;return 127}function Zq(a){a=a|0;return 127}function _q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function $q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function ar(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function br(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function cr(a){a=a|0;return 0}function dr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function er(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function fr(a){a=a|0;return}function gr(a){a=a|0;cj(a);return}function hr(a){a=a|0;return 127}function ir(a){a=a|0;return 127}function jr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function kr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function lr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function mr(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function nr(a){a=a|0;return 0}function or(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function pr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function qr(a){a=a|0;return}function rr(a){a=a|0;cj(a);return}function sr(a){a=a|0;return 2147483647}function tr(a){a=a|0;return 2147483647}function ur(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function vr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function wr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function xr(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function yr(a){a=a|0;return 0}function zr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ar(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Br(a){a=a|0;return}function Cr(a){a=a|0;cj(a);return}function Dr(a){a=a|0;return 2147483647}function Er(a){a=a|0;return 2147483647}function Fr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Gr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Hr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Ir(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function Jr(a){a=a|0;return 0}function Kr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Lr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Mr(a){a=a|0;return}function Nr(a){a=a|0;cj(a);return}function Or(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=i;i=i+240|0;z=B+24|0;A=B;b=B+136|0;D=B+16|0;y=B+12|0;C=B+8|0;p=B+134|0;l=B+4|0;x=B+124|0;c[D>>2]=b;E=D+4|0;c[E>>2]=189;m=b+100|0;o=0;k=ka(68,g|0)|0;w=o;o=0;if(!(w&1)){c[C>>2]=k;o=0;b=ra(37,C|0,44220)|0;w=o;o=0;a:do if(!(w&1)?(a[p>>0]=0,c[l>>2]=c[e>>2],n=c[g+4>>2]|0,o=0,c[z>>2]=c[l>>2],n=la(1,d|0,z|0,f|0,C|0,n|0,h|0,p|0,b|0,D|0,y|0,m|0)|0,w=o,o=0,!(w&1)):0){b:do if(n){o=0;va(c[(c[b>>2]|0)+32>>2]|0,b|0,58976,58986,x|0)|0;w=o;o=0;if(w&1){G=10;break a}l=c[y>>2]|0;m=c[D>>2]|0;b=l-m|0;if((b|0)>98){b=Fl(b+2|0)|0;k=b;if(!b){o=0;xa(6);w=o;o=0;if(!(w&1)){b=0;G=13}}else G=13}else{k=0;b=z;G=13}do if((G|0)==13){if(a[p>>0]|0){a[b>>0]=45;b=b+1|0}v=x+10|0;w=x;if(m>>>0>>0){n=x+1|0;f=n+1|0;g=f+1|0;p=g+1|0;q=p+1|0;r=q+1|0;s=r+1|0;t=s+1|0;u=t+1|0;do{l=a[m>>0]|0;do if((a[x>>0]|0)!=l<<24>>24)if((a[n>>0]|0)!=l<<24>>24)if((a[f>>0]|0)!=l<<24>>24)if((a[g>>0]|0)!=l<<24>>24)if((a[p>>0]|0)==l<<24>>24)l=p;else{if((a[q>>0]|0)==l<<24>>24){l=q;break}if((a[r>>0]|0)==l<<24>>24){l=r;break}if((a[s>>0]|0)==l<<24>>24){l=s;break}if((a[t>>0]|0)==l<<24>>24){l=t;break}l=(a[u>>0]|0)==l<<24>>24?u:v}else l=g;else l=f;else l=n;else l=x;while(0);a[b>>0]=a[58976+(l-w)>>0]|0;m=m+1|0;b=b+1|0}while(m>>>0<(c[y>>2]|0)>>>0)}a[b>>0]=0;c[A>>2]=j;if(($k(z,58987,A)|0)!=1?(o=0,ha(190,58991),j=o,o=0,j&1):0)break;if(k)Gl(k);break b}while(0);b=Na()|0;if(!k){l=b;k=D;break a}Gl(k);l=b;k=D;break a}while(0);b=c[d>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}if((b|0)==-1){c[d>>2]=0;b=0;break}else{b=c[d>>2]|0;break}}}else b=0;while(0);k=(b|0)==0;b=c[e>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}if((b|0)==-1){c[e>>2]=0;G=37;break}}if(!k)G=38}else G=37;while(0);if((G|0)==37?k:0)G=38;if((G|0)==38)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(c[C>>2]|0)|0;b=c[D>>2]|0;c[D>>2]=0;if((b|0)!=0?(o=0,ha(c[E>>2]|0,b|0),G=o,o=0,G&1):0){G=Na(0)|0;ec(G)}i=B;return k|0}else G=10;while(0);if((G|0)==10){l=Na()|0;k=D}pm(c[C>>2]|0)|0;b=c[k>>2]|0;c[k>>2]=0;if(!b)F=l;else{k=c[E>>2]|0;G=45}}else{l=Na()|0;c[D>>2]=0;k=189;G=45}if((G|0)==45){o=0;ha(k|0,b|0);G=o;o=0;if(G&1){G=Na(0)|0;ec(G)}else F=l}Ya(F|0);return 0}function Pr(a){a=a|0;return}function Qr(e,f,g,h,j,k,l,m,n,p,q){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|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,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;ba=i;i=i+512|0;P=ba+88|0;u=ba+96|0;da=ba+80|0;T=ba+72|0;S=ba+68|0;U=ba+500|0;Q=ba+497|0;V=ba+496|0;Y=ba+56|0;aa=ba+44|0;_=ba+32|0;Z=ba+20|0;$=ba+8|0;R=ba+4|0;X=ba;c[P>>2]=q;c[da>>2]=u;ca=da+4|0;c[ca>>2]=189;c[T>>2]=u;c[S>>2]=u+400;c[Y>>2]=0;c[Y+4>>2]=0;c[Y+8>>2]=0;c[aa>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[_>>2]=0;c[_+4>>2]=0;c[_+8>>2]=0;c[Z>>2]=0;c[Z+4>>2]=0;c[Z+8>>2]=0;c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;o=0;qa(1,g|0,h|0,U|0,Q|0,V|0,Y|0,aa|0,_|0,Z|0,R|0);O=o;o=0;a:do if(O&1)m=Na()|0;else{c[p>>2]=c[n>>2];I=m+8|0;J=_+4|0;K=Z+4|0;L=Z+8|0;M=Z+1|0;N=_+8|0;O=_+1|0;z=(j&512|0)!=0;A=aa+8|0;B=aa+1|0;C=aa+4|0;D=$+4|0;E=$+8|0;F=$+1|0;G=U+3|0;H=Y+4|0;y=0;t=0;b:while(1){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);q=(q|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(q){x=m;break}else{W=235;break b}o=0;g=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=24;break b}if((g|0)!=-1)if(q){x=m;break}else{W=235;break b}else{c[f>>2]=0;W=15;break}}else W=15;while(0);if((W|0)==15){W=0;if(q){W=235;break}else x=0}c:do switch(a[U+y>>0]|0){case 1:{if((y|0)!=3){q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=24;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24<=-1){W=40;break b}if(!(b[(c[I>>2]|0)+(q<<24>>24<<1)>>1]&8192)){W=40;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=24;break b}}else{c[m>>2]=g+1;q=d[g>>0]|0}o=0;ia(67,$|0,q&255|0);W=o;o=0;if(W&1){W=24;break b}else{q=x;h=x;W=42}}break}case 0:{if((y|0)!=3){q=x;h=x;W=42}break}case 3:{m=a[_>>0]|0;q=(m&1)==0?(m&255)>>>1:c[J>>2]|0;g=a[Z>>0]|0;h=(g&1)==0?(g&255)>>>1:c[K>>2]|0;if((q|0)!=(0-h|0)){if(!q){q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}m=a[Z>>0]|0}else{q=d[m>>0]|0;m=g}if((q&255)<<24>>24!=(a[((m&1)==0?M:c[L>>2]|0)>>0]|0))break c;q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;a[l>>0]=1;x=a[Z>>0]|0;t=((x&1)==0?(x&255)>>>1:c[K>>2]|0)>>>0>1?Z:t;break c}j=c[e>>2]|0;r=c[j+12>>2]|0;g=c[j+16>>2]|0;q=(r|0)==(g|0);if(!h){if(q){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}m=a[_>>0]|0}else q=d[r>>0]|0;if((q&255)<<24>>24!=(a[((m&1)==0?O:c[N>>2]|0)>>0]|0)){a[l>>0]=1;break c}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;x=a[_>>0]|0;t=((x&1)==0?(x&255)>>>1:c[J>>2]|0)>>>0>1?_:t;break c}if(q){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}g=c[e>>2]|0;m=a[_>>0]|0;j=g;r=c[g+12>>2]|0;g=c[g+16>>2]|0}else q=d[r>>0]|0;h=j+12|0;g=(r|0)==(g|0);if((q&255)<<24>>24==(a[((m&1)==0?O:c[N>>2]|0)>>0]|0)){if(g){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[h>>2]=r+1;x=a[_>>0]|0;t=((x&1)==0?(x&255)>>>1:c[J>>2]|0)>>>0>1?_:t;break c}if(g){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}}else q=d[r>>0]|0;if((q&255)<<24>>24!=(a[((a[Z>>0]&1)==0?M:c[L>>2]|0)>>0]|0)){W=104;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;a[l>>0]=1;x=a[Z>>0]|0;t=((x&1)==0?(x&255)>>>1:c[K>>2]|0)>>>0>1?Z:t}break}case 2:{if(!(y>>>0<2|(t|0)!=0)?!(z|(y|0)==2&(a[G>>0]|0)!=0):0){t=0;break c}v=a[aa>>0]|0;q=(v&1)==0;w=c[A>>2]|0;g=q?B:w;s=g;d:do if((y|0)!=0?(d[U+(y+-1)>>0]|0)<2:0){r=q?(v&255)>>>1:c[C>>2]|0;h=g+r|0;j=c[I>>2]|0;e:do if(!r)m=s;else{r=g;m=s;do{q=a[r>>0]|0;if(q<<24>>24<=-1)break e;if(!(b[j+(q<<24>>24<<1)>>1]&8192))break e;r=r+1|0;m=r}while((r|0)!=(h|0))}while(0);h=m-s|0;j=a[$>>0]|0;q=(j&1)==0;j=q?(j&255)>>>1:c[D>>2]|0;if(j>>>0>=h>>>0){q=q?F:c[E>>2]|0;r=q+j|0;if((m|0)!=(s|0)){q=q+(j-h)|0;while(1){if((a[q>>0]|0)!=(a[g>>0]|0)){m=s;break d}q=q+1|0;if((q|0)==(r|0))break;else g=g+1|0}}}else m=s}else m=s;while(0);q=(v&1)==0;q=(q?B:w)+(q?(v&255)>>>1:c[C>>2]|0)|0;f:do if((m|0)!=(q|0)){j=x;h=x;q=m;while(1){m=c[e>>2]|0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=21;break b}if((m|0)==-1){c[e>>2]=0;m=0;break}else{m=c[e>>2]|0;break}}}else m=0;while(0);g=(m|0)==0;do if(h){if((c[h+12>>2]|0)!=(c[h+16>>2]|0))if(g){m=j;r=h;break}else break f;o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=21;break b}if((m|0)!=-1)if(g^(j|0)==0){m=j;r=j;break}else break f;else{c[f>>2]=0;m=0;W=131;break}}else{m=j;W=131}while(0);if((W|0)==131){W=0;if(g)break f;else r=0}g=c[e>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=21;break b}}else g=d[h>>0]|0;if((g&255)<<24>>24!=(a[q>>0]|0))break f;g=c[e>>2]|0;h=g+12|0;j=c[h>>2]|0;if((j|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=21;break b}}else c[h>>2]=j+1;q=q+1|0;g=a[aa>>0]|0;x=(g&1)==0;g=(x?B:c[A>>2]|0)+(x?(g&255)>>>1:c[C>>2]|0)|0;if((q|0)==(g|0)){q=g;break}else{j=m;h=r}}}while(0);if(z?(x=a[aa>>0]|0,w=(x&1)==0,(q|0)!=((w?B:c[A>>2]|0)+(w?(x&255)>>>1:c[C>>2]|0)|0)):0){W=143;break b}break}case 4:{s=a[V>>0]|0;m=x;j=x;q=0;g:while(1){g=c[e>>2]|0;do if(g){if((c[g+12>>2]|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=23;break b}if((g|0)==-1){c[e>>2]=0;g=0;break}else{g=c[e>>2]|0;break}}}else g=0;while(0);h=(g|0)==0;do if(j){if((c[j+12>>2]|0)!=(c[j+16>>2]|0))if(h){r=m;break}else{h=m;break g}o=0;g=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=23;break b}if((g|0)!=-1)if(h^(m|0)==0){r=m;j=m;break}else{h=m;break g}else{c[f>>2]=0;m=0;W=156;break}}else W=156;while(0);if((W|0)==156){W=0;if(h){h=m;break}else{r=m;j=0}}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=23;break b}}else m=d[g>>0]|0;g=m&255;if(g<<24>>24>-1?(b[(c[I>>2]|0)+(m<<24>>24<<1)>>1]&2048)!=0:0){m=c[p>>2]|0;if((m|0)==(c[P>>2]|0)){o=0;wa(12,n|0,p|0,P|0);x=o;o=0;if(x&1){W=23;break b}m=c[p>>2]|0}c[p>>2]=m+1;a[m>>0]=g;q=q+1|0}else{x=a[Y>>0]|0;if(!(g<<24>>24==s<<24>>24&((q|0)!=0?(((x&1)==0?(x&255)>>>1:c[H>>2]|0)|0)!=0:0))){h=r;break}if((u|0)==(c[S>>2]|0)){o=0;wa(13,da|0,T|0,S|0);x=o;o=0;if(x&1){W=23;break b}u=c[T>>2]|0}x=u+4|0;c[T>>2]=x;c[u>>2]=q;u=x;q=0}m=c[e>>2]|0;g=m+12|0;h=c[g>>2]|0;if((h|0)==(c[m+16>>2]|0)){o=0;ka(c[(c[m>>2]|0)+40>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=23;break b}else{m=r;continue}}else{c[g>>2]=h+1;m=r;continue}}if((q|0)!=0?(c[da>>2]|0)!=(u|0):0){if((u|0)==(c[S>>2]|0)){o=0;wa(13,da|0,T|0,S|0);x=o;o=0;if(x&1){W=24;break b}u=c[T>>2]|0}x=u+4|0;c[T>>2]=x;c[u>>2]=q;u=x}r=c[R>>2]|0;if((r|0)>0){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);q=(q|0)==0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0)){o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=24;break b}if((m|0)==-1){c[f>>2]=0;W=193;break}}if(!q){W=198;break b}}else W=193;while(0);if((W|0)==193){W=0;if(q){W=198;break b}else h=0}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24!=(a[Q>>0]|0)){W=198;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;if((r|0)>0){j=h;g=h;s=r;while(1){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=22;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);m=(q|0)==0;do if(g){if((c[g+12>>2]|0)!=(c[g+16>>2]|0))if(m){q=j;r=g;break}else{W=222;break b}o=0;q=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=22;break b}if((q|0)!=-1)if(m^(j|0)==0){q=j;r=j;break}else{W=222;break b}else{c[f>>2]=0;q=0;W=215;break}}else{q=j;W=215}while(0);if((W|0)==215){W=0;if(m){W=222;break b}else r=0}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=22;break b}}else m=d[g>>0]|0;if((m&255)<<24>>24<=-1){W=222;break b}if(!(b[(c[I>>2]|0)+(m<<24>>24<<1)>>1]&2048)){W=222;break b}if((c[p>>2]|0)==(c[P>>2]|0)?(o=0,wa(12,n|0,p|0,P|0),x=o,o=0,x&1):0){W=22;break b}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=22;break b}}else m=d[g>>0]|0;g=c[p>>2]|0;c[p>>2]=g+1;a[g>>0]=m;m=s;s=s+-1|0;c[R>>2]=s;g=c[e>>2]|0;h=g+12|0;j=c[h>>2]|0;if((j|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=22;break b}}else c[h>>2]=j+1;if((m|0)<=1)break;else{j=q;g=r}}}}if((c[p>>2]|0)==(c[n>>2]|0)){W=233;break b}break}default:{}}while(0);h:do if((W|0)==42)while(1){W=0;m=c[e>>2]|0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=20;break b}if((m|0)==-1){c[e>>2]=0;m=0;break}else{m=c[e>>2]|0;break}}}else m=0;while(0);g=(m|0)==0;do if(h){if((c[h+12>>2]|0)!=(c[h+16>>2]|0))if(g){j=q;break}else break h;o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=20;break b}if((m|0)!=-1)if(g^(q|0)==0){j=q;h=q;break}else break h;else{c[f>>2]=0;q=0;W=54;break}}else W=54;while(0);if((W|0)==54){W=0;if(g)break h;else{j=q;h=0}}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=20;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24<=-1)break h;if(!(b[(c[I>>2]|0)+(q<<24>>24<<1)>>1]&8192))break h;q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=20;break b}}else{c[m>>2]=g+1;q=d[g>>0]|0}o=0;ia(67,$|0,q&255|0);W=o;o=0;if(W&1){W=20;break b}else{q=j;W=42}}while(0);y=y+1|0;if(y>>>0>=4){W=235;break}}i:switch(W|0){case 20:{m=Na()|0;break a}case 21:{m=Na()|0;break a}case 22:{m=Na()|0;break a}case 23:{m=Na()|0;break a}case 24:{m=Na()|0;break a}case 40:{c[k>>2]=c[k>>2]|4;m=0;break}case 104:{c[k>>2]=c[k>>2]|4;m=0;break}case 143:{c[k>>2]=c[k>>2]|4;m=0;break}case 198:{c[k>>2]=c[k>>2]|4;m=0;break}case 222:{c[k>>2]=c[k>>2]|4;m=0;break}case 233:{c[k>>2]=c[k>>2]|4;m=0;break}case 235:{j:do if(t){j=t+1|0;r=t+8|0;s=t+4|0;g=1;k:while(1){q=a[t>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[s>>2]|0;if(g>>>0>=q>>>0)break j;q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break k}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);m=(q|0)==0;q=c[f>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break k}if((q|0)==-1){c[f>>2]=0;W=253;break}}if(!m){W=260;break k}}else W=253;while(0);if((W|0)==253?(W=0,m):0){W=260;break}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break}}else q=d[m>>0]|0;if(!(a[t>>0]&1))m=j;else m=c[r>>2]|0;if((q&255)<<24>>24!=(a[m+g>>0]|0)){W=260;break}q=g+1|0;m=c[e>>2]|0;g=m+12|0;h=c[g>>2]|0;if((h|0)==(c[m+16>>2]|0)){o=0;ka(c[(c[m>>2]|0)+40>>2]|0,m|0)|0;p=o;o=0;if(p&1){W=19;break}else{g=q;continue}}else{c[g>>2]=h+1;g=q;continue}}if((W|0)==19){m=Na()|0;break a}else if((W|0)==260){c[k>>2]=c[k>>2]|4;m=0;break i}}while(0);q=c[da>>2]|0;if((q|0)!=(u|0)?(c[X>>2]=0,Ur(Y,q,u,X),(c[X>>2]|0)!=0):0){c[k>>2]=c[k>>2]|4;m=0}else m=1;break}}Im($);Im(Z);Im(_);Im(aa);Im(Y);q=c[da>>2]|0;c[da>>2]=0;if((q|0)!=0?(o=0,ha(c[ca>>2]|0,q|0),da=o,o=0,da&1):0){da=Na(0)|0;ec(da)}i=ba;return m|0}while(0);Im($);Im(Z);Im(_);Im(aa);Im(Y);q=c[da>>2]|0;c[da>>2]=0;if((q|0)!=0?(o=0,ha(c[ca>>2]|0,q|0),da=o,o=0,da&1):0){da=Na(0)|0;ec(da)}Ya(m|0);return 0}function Rr(a){a=a|0;var b=0;b=Ma(8)|0;o=0;ia(90,b|0,a|0);a=o;o=0;if(a&1){a=Na()|0;La(b|0);Ya(a|0)}else lb(b|0,616,80)}function Sr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;w=i;i=i+144|0;k=w+24|0;b=w+32|0;x=w+16|0;s=w+8|0;p=w+4|0;q=w+28|0;l=w;c[x>>2]=b;A=x+4|0;c[A>>2]=189;m=b+100|0;o=0;v=ka(68,g|0)|0;n=o;o=0;if(!(n&1)){c[p>>2]=v;o=0;n=ra(37,p|0,44220)|0;b=o;o=0;a:do if(!(b&1)?(a[q>>0]=0,t=c[e>>2]|0,c[l>>2]=t,r=c[g+4>>2]|0,u=t,o=0,c[k>>2]=c[l>>2],r=la(1,d|0,k|0,f|0,p|0,r|0,h|0,q|0,n|0,x|0,s|0,m|0)|0,g=o,o=0,!(g&1)):0){if(r){if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}if(a[q>>0]|0){o=0;b=ra(c[(c[n>>2]|0)+28>>2]|0,n|0,45)|0;g=o;o=0;if(g&1)break;o=0;ia(67,j|0,b|0);g=o;o=0;if(g&1)break}o=0;l=ra(c[(c[n>>2]|0)+28>>2]|0,n|0,48)|0;g=o;o=0;if(g&1)break;b=c[x>>2]|0;m=c[s>>2]|0;k=m+-1|0;b:do if(b>>>0>>0)do{if((a[b>>0]|0)!=l<<24>>24)break b;b=b+1|0}while(b>>>0>>0);while(0);o=0;ma(32,j|0,b|0,m|0)|0;j=o;o=0;if(j&1)break}b=c[d>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1)break a;if((b|0)==-1){c[d>>2]=0;b=0;break}else{b=c[d>>2]|0;break}}}else b=0;while(0);k=(b|0)==0;do if(t){if((c[u+12>>2]|0)==(c[u+16>>2]|0)){o=0;b=ka(c[(c[t>>2]|0)+36>>2]|0,u|0)|0;u=o;o=0;if(u&1)break a;if((b|0)==-1){c[e>>2]=0;z=29;break}}if(!k)z=30}else z=29;while(0);if((z|0)==29?k:0)z=30;if((z|0)==30)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(v)|0;b=c[x>>2]|0;c[x>>2]=0;if((b|0)!=0?(o=0,ha(c[A>>2]|0,b|0),A=o,o=0,A&1):0){A=Na(0)|0;ec(A)}i=w;return k|0}while(0);k=Na()|0;pm(v)|0;b=c[x>>2]|0;c[x>>2]=0;if(!b)y=k;else z=36}else{k=Na()|0;c[x>>2]=0;z=36}if((z|0)==36){o=0;ha(c[A>>2]|0,b|0);A=o;o=0;if(A&1){A=Na(0)|0;ec(A)}else y=k}Ya(y|0);return 0}function Tr(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;n=z+100|0;p=z+88|0;q=z+76|0;r=z+64|0;s=z+52|0;t=z+48|0;u=z+36|0;v=z+24|0;w=z+12|0;x=z;do if(b){b=Is(d,43828)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](n,b);x=c[n>>2]|0;a[e>>0]=x;a[e+1>>0]=x>>8;a[e+2>>0]=x>>16;a[e+3>>0]=x>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Im(p);Cb[c[(c[b>>2]|0)+28>>2]&127](q,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Im(q);a[f>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](r,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);Cb[c[(c[b>>2]|0)+24>>2]&127](s,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Im(s);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(d,43764)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](t,b);t=c[t>>2]|0;a[e>>0]=t;a[e+1>>0]=t>>8;a[e+2>>0]=t>>16;a[e+3>>0]=t>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](u,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Im(u);Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Im(v);a[f>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](w,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];c[h+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[b>>2]|0)+24>>2]&127](x,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Im(x);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=y;i=z;return}function Ur(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=a[b>>0]|0;i=b+4|0;h=c[i>>2]|0;a:do if(((g&1)==0?(g&255)>>>1:h)|0){if((d|0)!=(e|0)){g=e+-4|0;if(g>>>0>d>>>0){h=d;do{j=c[h>>2]|0;c[h>>2]=c[g>>2];c[g>>2]=j;h=h+4|0;g=g+-4|0}while(h>>>0>>0)}g=a[b>>0]|0;h=c[i>>2]|0}j=(g&1)==0;i=j?b+1|0:c[b+8>>2]|0;e=e+-4|0;b=i+(j?(g&255)>>>1:h)|0;h=a[i>>0]|0;g=h<<24>>24<1|h<<24>>24==127;b:do if(e>>>0>d>>>0){while(1){if(!g?(h<<24>>24|0)!=(c[d>>2]|0):0)break;i=(b-i|0)>1?i+1|0:i;d=d+4|0;h=a[i>>0]|0;g=h<<24>>24<1|h<<24>>24==127;if(d>>>0>=e>>>0)break b}c[f>>2]=4;break a}while(0);if(!g?((c[e>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0:0)c[f>>2]=4}while(0);return}function Vr(a){a=a|0;return}function Wr(a){a=a|0;cj(a);return}function Xr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=i;i=i+576|0;x=B+424|0;A=B;b=B+24|0;D=B+16|0;y=B+12|0;C=B+8|0;p=B+464|0;l=B+4|0;z=B+468|0;c[D>>2]=b;F=D+4|0;c[F>>2]=189;m=b+400|0;o=0;k=ka(68,g|0)|0;w=o;o=0;if(!(w&1)){c[C>>2]=k;o=0;b=ra(37,C|0,44212)|0;w=o;o=0;a:do if(!(w&1)?(a[p>>0]=0,c[l>>2]=c[e>>2],n=c[g+4>>2]|0,o=0,c[x>>2]=c[l>>2],n=la(2,d|0,x|0,f|0,C|0,n|0,h|0,p|0,b|0,D|0,y|0,m|0)|0,w=o,o=0,!(w&1)):0){b:do if(n){o=0;va(c[(c[b>>2]|0)+48>>2]|0,b|0,59007,59017,x|0)|0;w=o;o=0;if(w&1){G=10;break a}l=c[y>>2]|0;m=c[D>>2]|0;b=l-m|0;if((b|0)>392){b=Fl((b>>2)+2|0)|0;k=b;if(!b){o=0;xa(6);w=o;o=0;if(!(w&1)){b=0;G=13}}else G=13}else{k=0;b=z;G=13}do if((G|0)==13){if(a[p>>0]|0){a[b>>0]=45;b=b+1|0}v=x+40|0;w=x;if(m>>>0>>0){n=x+4|0;f=n+4|0;g=f+4|0;p=g+4|0;q=p+4|0;r=q+4|0;s=r+4|0;t=s+4|0;u=t+4|0;do{l=c[m>>2]|0;do if((c[x>>2]|0)!=(l|0))if((c[n>>2]|0)!=(l|0))if((c[f>>2]|0)!=(l|0))if((c[g>>2]|0)!=(l|0))if((c[p>>2]|0)==(l|0))l=p;else{if((c[q>>2]|0)==(l|0)){l=q;break}if((c[r>>2]|0)==(l|0)){l=r;break}if((c[s>>2]|0)==(l|0)){l=s;break}if((c[t>>2]|0)==(l|0)){l=t;break}l=(c[u>>2]|0)==(l|0)?u:v}else l=g;else l=f;else l=n;else l=x;while(0);a[b>>0]=a[59007+(l-w>>2)>>0]|0;m=m+4|0;b=b+1|0}while(m>>>0<(c[y>>2]|0)>>>0)}a[b>>0]=0;c[A>>2]=j;if(($k(z,58987,A)|0)!=1?(o=0,ha(190,58991),j=o,o=0,j&1):0)break;if(k)Gl(k);break b}while(0);b=Na()|0;if(!k){l=b;k=D;break a}Gl(k);l=b;k=D;break a}while(0);b=c[d>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}}else b=c[k>>2]|0;if((b|0)==-1){c[d>>2]=0;l=1;break}else{l=(c[d>>2]|0)==0;break}}else l=1;while(0);b=c[e>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}}else b=c[k>>2]|0;if((b|0)!=-1)if(l)break;else{G=40;break}else{c[e>>2]=0;G=38;break}}else G=38;while(0);if((G|0)==38?l:0)G=40;if((G|0)==40)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(c[C>>2]|0)|0;b=c[D>>2]|0;c[D>>2]=0;if((b|0)!=0?(o=0,ha(c[F>>2]|0,b|0),G=o,o=0,G&1):0){G=Na(0)|0;ec(G)}i=B;return k|0}else G=10;while(0);if((G|0)==10){l=Na()|0;k=D}pm(c[C>>2]|0)|0;b=c[k>>2]|0;c[k>>2]=0;if(!b)E=l;else{k=c[F>>2]|0;G=47}}else{l=Na()|0;c[D>>2]=0;k=189;G=47}if((G|0)==47){o=0;ha(k|0,b|0);G=o;o=0;if(G&1){G=Na(0)|0;ec(G)}else E=l}Ya(E|0);return 0}function Yr(b,e,f,g,h,j,k,l,m,n,p){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;p=p|0;var 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;Y=i;i=i+512|0;K=Y+96|0;q=Y+104|0;_=Y+88|0;O=Y+80|0;N=Y+76|0;P=Y+504|0;L=Y+72|0;Q=Y+68|0;T=Y+56|0;X=Y+44|0;V=Y+32|0;U=Y+20|0;W=Y+8|0;M=Y+4|0;S=Y;c[K>>2]=p;c[_>>2]=q;Z=_+4|0;c[Z>>2]=189;c[O>>2]=q;c[N>>2]=q+400;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=0;o=0;qa(2,f|0,g|0,P|0,L|0,Q|0,T|0,X|0,V|0,U|0,M|0);J=o;o=0;a:do if(J&1)f=Na()|0;else{c[n>>2]=c[m>>2];G=V+4|0;H=U+4|0;I=U+8|0;J=V+8|0;z=(h&512|0)!=0;A=X+8|0;B=X+4|0;C=W+4|0;D=W+8|0;E=P+3|0;F=T+4|0;y=0;s=0;b:while(1){p=c[b>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[f>>2]|0;if((p|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);f=c[e>>2]|0;do if(f){p=c[f+12>>2]|0;if((p|0)==(c[f+16>>2]|0)){o=0;p=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[p>>2]|0;if((p|0)!=-1)if(g){x=f;break}else{t=q;R=244;break b}else{c[e>>2]=0;R=16;break}}else R=16;while(0);if((R|0)==16){R=0;if(g){t=q;R=244;break}else x=0}c:do switch(a[P+y>>0]|0){case 1:{if((y|0)!=3){p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=26;break b}}else p=c[f>>2]|0;o=0;p=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,p|0)|0;R=o;o=0;if(R&1){R=26;break b}if(!p){R=42;break b}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=26;break b}}else{c[f>>2]=g+4;p=c[g>>2]|0}o=0;ia(92,W|0,p|0);R=o;o=0;if(R&1){R=26;break b}else{p=x;h=x;R=44}}else p=q;break}case 0:{if((y|0)==3)p=q;else{p=x;h=x;R=44}break}case 3:{f=a[V>>0]|0;p=(f&1)==0?(f&255)>>>1:c[G>>2]|0;g=a[U>>0]|0;h=(g&1)==0?(g&255)>>>1:c[H>>2]|0;if((p|0)==(0-h|0))p=q;else{if(!p){p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}f=a[U>>0]|0}else{p=c[f>>2]|0;f=g}if((p|0)!=(c[((f&1)==0?H:c[I>>2]|0)>>2]|0)){p=q;break c}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;a[k>>0]=1;x=a[U>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[H>>2]|0)>>>0>1?U:s;break c}r=c[b>>2]|0;t=c[r+12>>2]|0;g=c[r+16>>2]|0;p=(t|0)==(g|0);if(!h){if(p){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}f=a[V>>0]|0}else p=c[t>>2]|0;if((p|0)!=(c[((f&1)==0?G:c[J>>2]|0)>>2]|0)){a[k>>0]=1;p=q;break c}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;x=a[V>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[G>>2]|0)>>>0>1?V:s;break c}if(p){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}g=c[b>>2]|0;f=a[V>>0]|0;r=g;t=c[g+12>>2]|0;g=c[g+16>>2]|0}else p=c[t>>2]|0;h=r+12|0;g=(t|0)==(g|0);if((p|0)==(c[((f&1)==0?G:c[J>>2]|0)>>2]|0)){if(g){o=0;ka(c[(c[r>>2]|0)+40>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[h>>2]=t+4;x=a[V>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[G>>2]|0)>>>0>1?V:s;break c}if(g){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[t>>2]|0;if((p|0)!=(c[((a[U>>0]&1)==0?H:c[I>>2]|0)>>2]|0)){R=107;break b}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;a[k>>0]=1;x=a[U>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[H>>2]|0)>>>0>1?U:s}break}case 2:{if(!(y>>>0<2|(s|0)!=0)?!(z|(y|0)==2&(a[E>>0]|0)!=0):0){p=q;s=0;break c}h=a[X>>0]|0;g=c[A>>2]|0;f=(h&1)==0?B:g;p=f;d:do if((y|0)!=0?(d[P+(y+-1)>>0]|0)<2:0){w=(h&1)==0;e:do if((f|0)!=((w?B:g)+((w?(h&255)>>>1:c[B>>2]|0)<<2)|0)){h=f;while(1){o=0;f=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,c[h>>2]|0)|0;w=o;o=0;if(w&1){R=23;break b}if(!f)break;h=h+4|0;p=h;f=a[X>>0]|0;g=c[A>>2]|0;w=(f&1)==0;if((h|0)==((w?B:g)+((w?(f&255)>>>1:c[B>>2]|0)<<2)|0)){h=f;break e}}h=a[X>>0]|0;g=c[A>>2]|0}while(0);t=(h&1)==0?B:g;f=t;u=p-f>>2;v=a[W>>0]|0;r=(v&1)==0;v=r?(v&255)>>>1:c[C>>2]|0;if(v>>>0>=u>>>0){r=r?C:c[D>>2]|0;w=r+(v<<2)|0;if(!u)f=p;else{r=r+(v-u<<2)|0;while(1){if((c[r>>2]|0)!=(c[t>>2]|0))break d;r=r+4|0;if((r|0)==(w|0)){f=p;break}else t=t+4|0}}}}else f=p;while(0);p=(h&1)==0;p=(p?B:g)+((p?(h&255)>>>1:c[B>>2]|0)<<2)|0;f:do if((f|0)!=(p|0)){r=x;h=x;p=f;while(1){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=22;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=22;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(r|0)==0){f=r;t=r;break}else break f;else{c[e>>2]=0;f=0;R=136;break}}else{f=r;R=136}while(0);if((R|0)==136){R=0;if(g)break f;else t=0}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=22;break b}}else g=c[h>>2]|0;if((g|0)!=(c[p>>2]|0))break f;g=c[b>>2]|0;h=g+12|0;r=c[h>>2]|0;if((r|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=22;break b}}else c[h>>2]=r+4;p=p+4|0;g=a[X>>0]|0;x=(g&1)==0;g=(x?B:c[A>>2]|0)+((x?(g&255)>>>1:c[B>>2]|0)<<2)|0;if((p|0)==(g|0)){p=g;break}else{r=f;h=t}}}while(0);if(z?(x=a[X>>0]|0,w=(x&1)==0,(p|0)!=((w?B:c[A>>2]|0)+((w?(x&255)>>>1:c[B>>2]|0)<<2)|0)):0){R=148;break b}else p=q;break}case 4:{v=c[Q>>2]|0;u=x;r=x;p=q;f=0;g:while(1){g=c[b>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=25;break b}}else g=c[h>>2]|0;if((g|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);do if(r){g=c[r+12>>2]|0;if((g|0)==(c[r+16>>2]|0)){o=0;g=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=25;break b}}else g=c[g>>2]|0;if((g|0)!=-1)if(h^(u|0)==0){g=u;t=u;break}else{q=u;break g}else{c[e>>2]=0;g=0;R=162;break}}else{g=u;R=162}while(0);if((R|0)==162){R=0;if(h){q=g;break}else t=0}h=c[b>>2]|0;q=c[h+12>>2]|0;if((q|0)==(c[h+16>>2]|0)){o=0;h=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=25;break b}}else h=c[q>>2]|0;o=0;q=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,2048,h|0)|0;x=o;o=0;if(x&1){R=25;break b}if(q){q=c[n>>2]|0;if((q|0)==(c[K>>2]|0)){o=0;wa(14,m|0,n|0,K|0);x=o;o=0;if(x&1){R=25;break b}q=c[n>>2]|0}c[n>>2]=q+4;c[q>>2]=h;f=f+1|0}else{x=a[T>>0]|0;if(!((h|0)==(v|0)&((f|0)!=0?(((x&1)==0?(x&255)>>>1:c[F>>2]|0)|0)!=0:0))){q=g;break}if((p|0)==(c[N>>2]|0)){o=0;wa(13,_|0,O|0,N|0);x=o;o=0;if(x&1){R=25;break b}p=c[O>>2]|0}x=p+4|0;c[O>>2]=x;c[p>>2]=f;p=x;f=0}h=c[b>>2]|0;q=h+12|0;r=c[q>>2]|0;if((r|0)==(c[h+16>>2]|0)){o=0;ka(c[(c[h>>2]|0)+40>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=25;break b}else{u=g;r=t;continue}}else{c[q>>2]=r+4;u=g;r=t;continue}}if((f|0)!=0?(c[_>>2]|0)!=(p|0):0){if((p|0)==(c[N>>2]|0)){o=0;wa(13,_|0,O|0,N|0);x=o;o=0;if(x&1){R=26;break b}p=c[O>>2]|0}x=p+4|0;c[O>>2]=x;c[p>>2]=f;p=x}t=c[M>>2]|0;if((t|0)>0){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(q){f=c[q+12>>2]|0;if((f|0)==(c[q+16>>2]|0)){o=0;f=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g)break;else{R=206;break b}else{c[e>>2]=0;R=200;break}}else R=200;while(0);if((R|0)==200){R=0;if(g){R=206;break b}else q=0}f=c[b>>2]|0;g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[g>>2]|0;if((f|0)!=(c[L>>2]|0)){R=206;break b}f=c[b>>2]|0;g=f+12|0;h=c[g>>2]|0;if((h|0)==(c[f+16>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[g>>2]=h+4;if((t|0)>0){r=q;h=q;u=t;while(1){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=24;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=24;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(r|0)==0){f=r;t=r;break}else{R=231;break b}else{c[e>>2]=0;f=0;R=224;break}}else{f=r;R=224}while(0);if((R|0)==224){R=0;if(g){R=231;break b}else t=0}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=24;break b}}else g=c[h>>2]|0;o=0;g=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,2048,g|0)|0;x=o;o=0;if(x&1){R=24;break b}if(!g){R=231;break b}if((c[n>>2]|0)==(c[K>>2]|0)?(o=0,wa(14,m|0,n|0,K|0),x=o,o=0,x&1):0){R=24;break b}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=24;break b}}else g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;g=u;u=u+-1|0;c[M>>2]=u;h=c[b>>2]|0;q=h+12|0;r=c[q>>2]|0;if((r|0)==(c[h+16>>2]|0)){o=0;ka(c[(c[h>>2]|0)+40>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=24;break b}}else c[q>>2]=r+4;if((g|0)<=1)break;else{r=f;h=t}}}}if((c[n>>2]|0)==(c[m>>2]|0)){R=242;break b}break}default:p=q}while(0);h:do if((R|0)==44)while(1){R=0;f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=21;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=21;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(p|0)==0){r=p;h=p;break}else{p=q;break h}else{c[e>>2]=0;p=0;R=57;break}}else R=57;while(0);if((R|0)==57){R=0;if(g){p=q;break h}else{r=p;h=0}}p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=21;break b}}else p=c[f>>2]|0;o=0;p=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,p|0)|0;x=o;o=0;if(x&1){R=21;break b}if(!p){p=q;break h}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=21;break b}}else{c[f>>2]=g+4;p=c[g>>2]|0}o=0;ia(92,W|0,p|0);R=o;o=0;if(R&1){R=21;break b}else{p=r;R=44}}while(0);y=y+1|0;if(y>>>0>=4){t=p;R=244;break}else q=p}i:switch(R|0){case 21:{f=Na()|0;break a}case 22:{f=Na()|0;break a}case 23:{f=Na()|0;break a}case 24:{f=Na()|0;break a}case 25:{f=Na()|0;break a}case 26:{f=Na()|0;break a}case 42:{c[j>>2]=c[j>>2]|4;f=0;break}case 107:{c[j>>2]=c[j>>2]|4;f=0;break}case 148:{c[j>>2]=c[j>>2]|4;f=0;break}case 206:{c[j>>2]=c[j>>2]|4;f=0;break}case 231:{c[j>>2]=c[j>>2]|4;f=0;break}case 242:{c[j>>2]=c[j>>2]|4;f=0;break}case 244:{j:do if(s){q=s+4|0;r=s+8|0;h=1;k:while(1){p=a[s>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[q>>2]|0;if(h>>>0>=p>>>0)break j;p=c[b>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break k}}else p=c[f>>2]|0;if((p|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);p=c[e>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break k}}else p=c[f>>2]|0;if((p|0)!=-1)if(g)break;else{R=271;break k}else{c[e>>2]=0;R=263;break}}else R=263;while(0);if((R|0)==263?(R=0,g):0){R=271;break}p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break}}else p=c[f>>2]|0;if(!(a[s>>0]&1))f=q;else f=c[r>>2]|0;if((p|0)!=(c[f+(h<<2)>>2]|0)){R=271;break}p=h+1|0;f=c[b>>2]|0;g=f+12|0;h=c[g>>2]|0;if((h|0)==(c[f+16>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;n=o;o=0;if(n&1){R=20;break}else{h=p;continue}}else{c[g>>2]=h+4;h=p;continue}}if((R|0)==20){f=Na()|0;break a}else if((R|0)==271){c[j>>2]=c[j>>2]|4;f=0;break i}}while(0);p=c[_>>2]|0;if((p|0)!=(t|0)?(c[S>>2]=0,Ur(T,p,t,S),(c[S>>2]|0)!=0):0){c[j>>2]=c[j>>2]|4;f=0}else f=1;break}}Wm(W);Wm(U);Wm(V);Wm(X);Im(T);p=c[_>>2]|0;c[_>>2]=0;if((p|0)!=0?(o=0,ha(c[Z>>2]|0,p|0),_=o,o=0,_&1):0){_=Na(0)|0;ec(_)}i=Y;return f|0}while(0);Wm(W);Wm(U);Wm(V);Wm(X);Im(T);p=c[_>>2]|0;c[_>>2]=0;if((p|0)!=0?(o=0,ha(c[Z>>2]|0,p|0),_=o,o=0,_&1):0){_=Na(0)|0;ec(_)}Ya(f|0);return 0}function Zr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;w=i;i=i+432|0;k=w+424|0;b=w+24|0;y=w+16|0;s=w+8|0;p=w+4|0;q=w+428|0;l=w;c[y>>2]=b;A=y+4|0;c[A>>2]=189;m=b+400|0;o=0;v=ka(68,g|0)|0;n=o;o=0;if(!(n&1)){c[p>>2]=v;o=0;n=ra(37,p|0,44212)|0;b=o;o=0;a:do if(!(b&1)?(a[q>>0]=0,t=c[e>>2]|0,c[l>>2]=t,r=c[g+4>>2]|0,u=t,o=0,c[k>>2]=c[l>>2],r=la(2,d|0,k|0,f|0,p|0,r|0,h|0,q|0,n|0,y|0,s|0,m|0)|0,g=o,o=0,!(g&1)):0){if(r){if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;if(a[q>>0]|0){o=0;b=ra(c[(c[n>>2]|0)+44>>2]|0,n|0,45)|0;g=o;o=0;if(g&1)break;o=0;ia(92,j|0,b|0);g=o;o=0;if(g&1)break}o=0;l=ra(c[(c[n>>2]|0)+44>>2]|0,n|0,48)|0;g=o;o=0;if(g&1)break;b=c[y>>2]|0;m=c[s>>2]|0;k=m+-4|0;b:do if(b>>>0>>0)do{if((c[b>>2]|0)!=(l|0))break b;b=b+4|0}while(b>>>0>>0);while(0);o=0;ma(33,j|0,b|0,m|0)|0;j=o;o=0;if(j&1)break}b=c[d>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1)break a}else b=c[k>>2]|0;if((b|0)==-1){c[d>>2]=0;k=1;break}else{k=(c[d>>2]|0)==0;break}}else k=1;while(0);do if(t){b=c[u+12>>2]|0;if((b|0)==(c[u+16>>2]|0)){o=0;b=ka(c[(c[t>>2]|0)+36>>2]|0,u|0)|0;u=o;o=0;if(u&1)break a}else b=c[b>>2]|0;if((b|0)!=-1)if(k)break;else{z=32;break}else{c[e>>2]=0;z=30;break}}else z=30;while(0);if((z|0)==30?k:0)z=32;if((z|0)==32)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(v)|0;b=c[y>>2]|0;c[y>>2]=0;if((b|0)!=0?(o=0,ha(c[A>>2]|0,b|0),A=o,o=0,A&1):0){A=Na(0)|0;ec(A)}i=w;return k|0}while(0);k=Na()|0;pm(v)|0;b=c[y>>2]|0;c[y>>2]=0;if(!b)x=k;else z=38}else{k=Na()|0;c[y>>2]=0;z=38}if((z|0)==38){o=0;ha(c[A>>2]|0,b|0);A=o;o=0;if(A&1){A=Na(0)|0;ec(A)}else x=k}Ya(x|0);return 0}function _r(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;n=z+100|0;p=z+88|0;q=z+76|0;r=z+64|0;s=z+52|0;t=z+48|0;u=z+36|0;v=z+24|0;w=z+12|0;x=z;do if(b){b=Is(d,43956)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](n,b);x=c[n>>2]|0;a[e>>0]=x;a[e+1>>0]=x>>8;a[e+2>>0]=x>>16;a[e+3>>0]=x>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Wm(p);Cb[c[(c[b>>2]|0)+28>>2]&127](q,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Wm(q);c[f>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](r,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);Cb[c[(c[b>>2]|0)+24>>2]&127](s,b);if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;o=0;ia(93,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Wm(s);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(d,43892)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](t,b);t=c[t>>2]|0;a[e>>0]=t;a[e+1>>0]=t>>8;a[e+2>>0]=t>>16;a[e+3>>0]=t>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](u,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Wm(u);Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Wm(v);c[f>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](w,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];c[h+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[b>>2]|0)+24>>2]&127](x,b);if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;o=0;ia(93,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Wm(x);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=y;i=z;return}function $r(a){a=a|0;return}function as(a){a=a|0;cj(a);return}function bs(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=i;i=i+384|0;v=D+8|0;k=D;m=D+284|0;n=D+72|0;l=D+184|0;F=D+68|0;A=D+80|0;x=D+77|0;B=D+76|0;G=D+56|0;I=D+44|0;H=D+32|0;p=D+28|0;u=D+84|0;z=D+24|0;y=D+20|0;w=D+16|0;c[n>>2]=m;h[v>>3]=j;m=_k(m,100,59018,v)|0;do if(m>>>0>99){o=0;b=ua(3)|0;C=o;o=0;if(!(C&1)?(o=0,h[k>>3]=j,s=va(17,n|0,b|0,59018,k|0)|0,C=o,o=0,!(C&1)):0){b=c[n>>2]|0;if(!b){o=0;xa(6);C=o;o=0;if(C&1){b=0;k=0;C=7;break}b=c[n>>2]|0}l=Fl(s)|0;k=l;if(!l){o=0;xa(6);C=o;o=0;if(C&1)C=7;else{t=0;C=10}}else{t=l;C=10}}else{b=0;k=0;C=7}}else{k=0;b=0;t=l;s=m;C=10}while(0);if((C|0)==10){o=0;l=ka(68,f|0)|0;r=o;o=0;if(r&1)C=7;else{c[F>>2]=l;o=0;r=ra(37,F|0,44220)|0;q=o;o=0;if(!(q&1)?(q=c[n>>2]|0,o=0,va(c[(c[r>>2]|0)+32>>2]|0,r|0,q|0,q+s|0,t|0)|0,q=o,o=0,!(q&1)):0){if(!s)q=0;else q=(a[c[n>>2]>>0]|0)==45;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;o=0;qa(3,e|0,q|0,F|0,A|0,x|0,B|0,G|0,I|0,H|0,p|0);e=o;o=0;if(!(e&1)){p=c[p>>2]|0;if((s|0)>(p|0)){e=a[H>>0]|0;m=a[I>>0]|0;m=(s-p<<1|1)+p+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}else{e=a[H>>0]|0;m=a[I>>0]|0;m=p+2+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}if(m>>>0>100){m=Fl(m)|0;n=m;if(!m){o=0;xa(6);u=o;o=0;if(!(u&1)){m=0;C=26}}else C=26}else{n=0;m=u;C=26}if((C|0)==26){o=0;na(1,m|0,z|0,y|0,c[f+4>>2]|0,t|0,t+s|0,r|0,q|0,A|0,a[x>>0]|0,a[B>>0]|0,G|0,I|0,H|0,p|0);B=o;o=0;if(!(B&1)?(c[w>>2]=c[d>>2],d=c[z>>2]|0,E=c[y>>2]|0,o=0,c[v>>2]=c[w>>2],E=ja(39,v|0,m|0,d|0,E|0,f|0,g|0)|0,d=o,o=0,!(d&1)):0){if(n){Gl(n);l=c[F>>2]|0}Im(H);Im(I);Im(G);pm(l)|0;if(k)Gl(k);if(b)Gl(b);i=D;return E|0}}m=Na()|0;if(n){Gl(n);l=c[F>>2]|0}}else m=Na()|0;Im(H);Im(I);Im(G)}else m=Na()|0;pm(l)|0}}if((C|0)==7)m=Na()|0;if(k)Gl(k);if(b)Gl(b);Ya(m|0);return 0}function cs(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+112|0;q=D+108|0;r=D+96|0;u=D+92|0;v=D+80|0;w=D+68|0;x=D+56|0;y=D+52|0;z=D+40|0;A=D+36|0;B=D+24|0;s=D+12|0;t=D;do if(b){b=Is(e,43828)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](q,b);d=c[q>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](r,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);p=b;break}}else{Cb[c[e+40>>2]&127](u,b);d=c[u>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Im(v);p=b;break}}while(0);a[g>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[p>>2]|0)+20>>2]&127](w,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[p>>2]|0)+24>>2]&127](x,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Im(x);C=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(e,43764)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](y,b);d=c[y>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](z,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];c[l+8>>2]=c[z+8>>2];c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;Im(z);n=b;break}}else{Cb[c[e+40>>2]&127](A,b);d=c[A>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](B,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[B>>2];c[l+4>>2]=c[B+4>>2];c[l+8>>2]=c[B+8>>2];c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;Im(B);n=b;break}}while(0);a[g>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[n>>2]|0)+20>>2]&127](s,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Im(s);Cb[c[(c[n>>2]|0)+24>>2]&127](t,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;Im(t);C=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=C;i=D;return}function ds(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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;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,K=0,L=0,M=0,N=0,O=0,P=0;c[f>>2]=d;N=q+4|0;O=q+8|0;P=q+1|0;H=p+4|0;I=(g&512|0)==0;J=p+8|0;K=p+1|0;L=j+8|0;M=(r|0)>0;A=o+4|0;B=o+8|0;C=o+1|0;D=r+1|0;F=-2-r-((r|0)<0?~r:-1)|0;G=(r|0)>0;z=0;do{switch(a[l+z>>0]|0){case 0:{c[e>>2]=c[f>>2];break}case 1:{c[e>>2]=c[f>>2];x=Lb[c[(c[j>>2]|0)+28>>2]&63](j,32)|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x;break}case 3:{y=a[q>>0]|0;s=(y&1)==0;if((s?(y&255)>>>1:c[N>>2]|0)|0){x=a[(s?P:c[O>>2]|0)>>0]|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x}break}case 2:{u=a[p>>0]|0;s=(u&1)==0;u=s?(u&255)>>>1:c[H>>2]|0;if(!(I|(u|0)==0)){t=s?K:c[J>>2]|0;v=t+u|0;s=c[f>>2]|0;if(u)do{a[s>>0]=a[t>>0]|0;t=t+1|0;s=s+1|0}while((t|0)!=(v|0));c[f>>2]=s}break}case 4:{s=c[f>>2]|0;h=k?h+1|0:h;w=h;v=c[L>>2]|0;a:do if(h>>>0>>0){t=h;do{u=a[t>>0]|0;if(u<<24>>24<=-1)break a;if(!(b[v+(u<<24>>24<<1)>>1]&2048))break a;t=t+1|0}while(t>>>0>>0)}else t=h;while(0);u=t;if(M){x=-2-u-~(u>>>0>w>>>0?w:u)|0;x=F>>>0>x>>>0?F:x;if(t>>>0>h>>>0&G){u=t;w=r;while(1){u=u+-1|0;y=a[u>>0]|0;v=c[f>>2]|0;c[f>>2]=v+1;a[v>>0]=y;v=(w|0)>1;if(!(u>>>0>h>>>0&v))break;else w=w+-1|0}}else v=G;y=D+x|0;u=t+(x+1)|0;if(v)w=Lb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;else w=0;t=c[f>>2]|0;c[f>>2]=t+1;if((y|0)>0){v=y;while(1){a[t>>0]=w;t=c[f>>2]|0;c[f>>2]=t+1;if((v|0)>1)v=v+-1|0;else break}}a[t>>0]=m}else u=t;if((u|0)!=(h|0)){y=a[o>>0]|0;t=(y&1)==0;if(!((t?(y&255)>>>1:c[A>>2]|0)|0))t=-1;else t=a[(t?C:c[B>>2]|0)>>0]|0;if((u|0)!=(h|0)){v=0;w=0;while(1){if((w|0)==(t|0)){y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=n;v=v+1|0;y=a[o>>0]|0;t=(y&1)==0;if(v>>>0<(t?(y&255)>>>1:c[A>>2]|0)>>>0){t=a[(t?C:c[B>>2]|0)+v>>0]|0;t=t<<24>>24==127?-1:t<<24>>24;w=0}else{t=w;w=0}}u=u+-1|0;x=a[u>>0]|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x;if((u|0)==(h|0))break;else w=w+1|0}}}else{x=Lb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x}t=c[f>>2]|0;if((s|0)!=(t|0)?(E=t+-1|0,s>>>0>>0):0){t=E;do{y=a[s>>0]|0;a[s>>0]=a[t>>0]|0;a[t>>0]=y;s=s+1|0;t=t+-1|0}while(s>>>0>>0)}break}default:{}}z=z+1|0}while((z|0)!=4);t=a[q>>0]|0;h=(t&1)==0;t=h?(t&255)>>>1:c[N>>2]|0;if(t>>>0>1){s=h?P:c[O>>2]|0;u=s+t|0;h=c[f>>2]|0;if((t|0)!=1){s=s+1|0;do{a[h>>0]=a[s>>0]|0;h=h+1|0;s=s+1|0}while((s|0)!=(u|0))}c[f>>2]=h}switch(g&176|0){case 32:{c[e>>2]=c[f>>2];break}case 16:break;default:c[e>>2]=d}return}function es(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+176|0;r=z+56|0;B=z+52|0;x=z+64|0;u=z+61|0;y=z+60|0;C=z+40|0;E=z+28|0;D=z+16|0;m=z+12|0;q=z+68|0;w=z+8|0;v=z+4|0;s=z;b=jn(f)|0;c[B>>2]=b;o=0;t=ra(37,B|0,44220)|0;p=o;o=0;do if(p&1)F=13;else{n=a[h>>0]|0;j=(n&1)==0;p=h+4|0;if(!((j?(n&255)>>>1:c[p>>2]|0)|0))n=0;else{j=a[(j?h+1|0:c[h+8>>2]|0)>>0]|0;o=0;k=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,45)|0;n=o;o=0;if(n&1){F=13;break}n=j<<24>>24==k<<24>>24}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;qa(3,e|0,n|0,B|0,x|0,u|0,y|0,C|0,E|0,D|0,m|0);l=o;o=0;if(!(l&1)){l=a[h>>0]|0;e=c[p>>2]|0;j=(l&1)==0?(l&255)>>>1:e;m=c[m>>2]|0;if((j|0)>(m|0)){G=a[D>>0]|0;k=a[E>>0]|0;j=(j-m<<1|1)+m+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((k&1)==0?(k&255)>>>1:c[E+4>>2]|0)|0}else{G=a[D>>0]|0;j=a[E>>0]|0;j=m+2+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((j&1)==0?(j&255)>>>1:c[E+4>>2]|0)|0}if(j>>>0>100){j=Fl(j)|0;k=j;if(!j){o=0;xa(6);G=o;o=0;if(!(G&1)){l=a[h>>0]|0;e=c[p>>2]|0;j=0;F=17}}else F=17}else{k=0;j=q;F=17}if((F|0)==17){G=(l&1)==0;h=G?h+1|0:c[h+8>>2]|0;o=0;na(1,j|0,w|0,v|0,c[f+4>>2]|0,h|0,h+(G?(l&255)>>>1:e)|0,t|0,n|0,x|0,a[u>>0]|0,a[y>>0]|0,C|0,E|0,D|0,m|0);G=o;o=0;if(!(G&1)?(c[s>>2]=c[d>>2],G=c[w>>2]|0,A=c[v>>2]|0,o=0,c[r>>2]=c[s>>2],A=ja(39,r|0,j|0,G|0,A|0,f|0,g|0)|0,G=o,o=0,!(G&1)):0){if(k){Gl(k);b=c[B>>2]|0}Im(D);Im(E);Im(C);pm(b)|0;i=z;return A|0}}j=Na()|0;if(k){Gl(k);b=c[B>>2]|0}}else j=Na()|0;Im(D);Im(E);Im(C)}while(0);if((F|0)==13)j=Na()|0;pm(b)|0;Ya(j|0);return 0}function fs(a){a=a|0;return}function gs(a){a=a|0;cj(a);return}function hs(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=i;i=i+992|0;v=D+8|0;k=D;m=D+888|0;n=D+880|0;l=D+480|0;F=D+76|0;A=D+884|0;x=D+72|0;B=D+68|0;G=D+56|0;I=D+44|0;H=D+32|0;p=D+28|0;u=D+80|0;z=D+24|0;y=D+20|0;w=D+16|0;c[n>>2]=m;h[v>>3]=j;m=_k(m,100,59018,v)|0;do if(m>>>0>99){o=0;b=ua(3)|0;C=o;o=0;if(!(C&1)?(o=0,h[k>>3]=j,s=va(17,n|0,b|0,59018,k|0)|0,C=o,o=0,!(C&1)):0){b=c[n>>2]|0;if(!b){o=0;xa(6);C=o;o=0;if(C&1){b=0;k=0;C=7;break}b=c[n>>2]|0}l=Fl(s<<2)|0;k=l;if(!l){o=0;xa(6);C=o;o=0;if(C&1)C=7;else{t=0;C=10}}else{t=l;C=10}}else{b=0;k=0;C=7}}else{k=0;b=0;t=l;s=m;C=10}while(0);if((C|0)==10){o=0;l=ka(68,f|0)|0;r=o;o=0;if(r&1)C=7;else{c[F>>2]=l;o=0;r=ra(37,F|0,44212)|0;q=o;o=0;if(!(q&1)?(q=c[n>>2]|0,o=0,va(c[(c[r>>2]|0)+48>>2]|0,r|0,q|0,q+s|0,t|0)|0,q=o,o=0,!(q&1)):0){if(!s)q=0;else q=(a[c[n>>2]>>0]|0)==45;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;o=0;qa(4,e|0,q|0,F|0,A|0,x|0,B|0,G|0,I|0,H|0,p|0);e=o;o=0;if(!(e&1)){p=c[p>>2]|0;if((s|0)>(p|0)){e=a[H>>0]|0;m=a[I>>0]|0;m=(s-p<<1|1)+p+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}else{e=a[H>>0]|0;m=a[I>>0]|0;m=p+2+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}if(m>>>0>100){m=Fl(m<<2)|0;n=m;if(!m){o=0;xa(6);u=o;o=0;if(!(u&1)){m=0;C=26}}else C=26}else{n=0;m=u;C=26}if((C|0)==26){o=0;na(2,m|0,z|0,y|0,c[f+4>>2]|0,t|0,t+(s<<2)|0,r|0,q|0,A|0,c[x>>2]|0,c[B>>2]|0,G|0,I|0,H|0,p|0);B=o;o=0;if(!(B&1)?(c[w>>2]=c[d>>2],d=c[z>>2]|0,E=c[y>>2]|0,o=0,c[v>>2]=c[w>>2],E=ja(40,v|0,m|0,d|0,E|0,f|0,g|0)|0,d=o,o=0,!(d&1)):0){if(n){Gl(n);l=c[F>>2]|0}Wm(H);Wm(I);Im(G);pm(l)|0;if(k)Gl(k);if(b)Gl(b);i=D;return E|0}}m=Na()|0;if(n){Gl(n);l=c[F>>2]|0}}else m=Na()|0;Wm(H);Wm(I);Im(G)}else m=Na()|0;pm(l)|0}}if((C|0)==7)m=Na()|0;if(k)Gl(k);if(b)Gl(b);Ya(m|0);return 0}function is(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+112|0;n=B+108|0;p=B+96|0;s=B+92|0;t=B+80|0;u=B+68|0;v=B+56|0;w=B+52|0;x=B+40|0;y=B+36|0;z=B+24|0;q=B+12|0;r=B;do if(b){b=Is(e,43956)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](n,b);d=c[n>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Wm(p);break}}else{Cb[c[e+40>>2]&127](s,b);d=c[s>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](t,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[t>>2];c[l+4>>2]=c[t+4>>2];c[l+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;Wm(t);break}}while(0);c[g>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](u,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Im(u);Cb[c[(c[b>>2]|0)+24>>2]&127](v,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Wm(v);A=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(e,43892)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](w,b);d=c[w>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](x,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Wm(x);break}}else{Cb[c[e+40>>2]&127](y,b);d=c[y>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](z,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];c[l+8>>2]=c[z+8>>2];c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;Wm(z);break}}while(0);c[g>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](q,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Im(q);Cb[c[(c[b>>2]|0)+24>>2]&127](r,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Wm(r);A=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=A;i=B;return}function js(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){b=b|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;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,I=0,J=0,K=0;c[e>>2]=b;J=p+4|0;K=p+8|0;C=o+4|0;D=(f&512|0)==0;E=o+8|0;F=(q|0)>0;G=n+4|0;H=n+8|0;I=n+1|0;A=(q|0)>0;z=0;do{switch(a[k+z>>0]|0){case 0:{c[d>>2]=c[e>>2];break}case 1:{c[d>>2]=c[e>>2];x=Lb[c[(c[i>>2]|0)+44>>2]&63](i,32)|0;y=c[e>>2]|0;c[e>>2]=y+4;c[y>>2]=x;break}case 3:{y=a[p>>0]|0;r=(y&1)==0;if((r?(y&255)>>>1:c[J>>2]|0)|0){x=c[(r?J:c[K>>2]|0)>>2]|0;y=c[e>>2]|0;c[e>>2]=y+4;c[y>>2]=x}break}case 2:{v=a[o>>0]|0;r=(v&1)==0;v=r?(v&255)>>>1:c[C>>2]|0;if(!(D|(v|0)==0)){r=r?C:c[E>>2]|0;t=r+(v<<2)|0;u=c[e>>2]|0;if(v){s=u;while(1){c[s>>2]=c[r>>2];r=r+4|0;if((r|0)==(t|0))break;else s=s+4|0}}c[e>>2]=u+(v<<2)}break}case 4:{r=c[e>>2]|0;g=j?g+4|0:g;a:do if(g>>>0>>0){s=g;do{if(!(Gb[c[(c[i>>2]|0)+12>>2]&63](i,2048,c[s>>2]|0)|0))break a;s=s+4|0}while(s>>>0>>0)}else s=g;while(0);if(F){if(s>>>0>g>>>0&A){v=c[e>>2]|0;u=q;while(1){s=s+-4|0;t=v+4|0;c[v>>2]=c[s>>2];w=u+-1|0;u=(u|0)>1;if(s>>>0>g>>>0&u){v=t;u=w}else{v=w;break}}c[e>>2]=t;t=v}else{u=A;t=q}if(u)w=Lb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;else w=0;x=c[e>>2]|0;u=t+((t|0)<0?~t:-1)|0;if((t|0)>0){v=x;while(1){c[v>>2]=w;if((t|0)>1){v=v+4|0;t=t+-1|0}else break}}c[e>>2]=x+(u+2<<2);c[x+(u+1<<2)>>2]=l}if((s|0)==(g|0)){x=Lb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;y=c[e>>2]|0;s=y+4|0;c[e>>2]=s;c[y>>2]=x}else{x=a[n>>0]|0;t=(x&1)==0;y=c[G>>2]|0;if(!((t?(x&255)>>>1:y)|0))t=-1;else t=a[(t?I:c[H>>2]|0)>>0]|0;if((s|0)!=(g|0)){w=0;x=0;while(1){u=c[e>>2]|0;if((x|0)==(t|0)){v=u+4|0;c[e>>2]=v;c[u>>2]=m;w=w+1|0;u=a[n>>0]|0;t=(u&1)==0;if(w>>>0<(t?(u&255)>>>1:y)>>>0){t=a[(t?I:c[H>>2]|0)+w>>0]|0;u=v;t=t<<24>>24==127?-1:t<<24>>24;v=0}else{u=v;t=x;v=0}}else v=x;s=s+-4|0;x=c[s>>2]|0;c[e>>2]=u+4;c[u>>2]=x;if((s|0)==(g|0))break;else x=v+1|0}}s=c[e>>2]|0}if((r|0)!=(s|0)?(B=s+-4|0,r>>>0>>0):0){s=B;do{y=c[r>>2]|0;c[r>>2]=c[s>>2];c[s>>2]=y;r=r+4|0;s=s+-4|0}while(r>>>0>>0)}break}default:{}}z=z+1|0}while((z|0)!=4);r=a[p>>0]|0;g=(r&1)==0;r=g?(r&255)>>>1:c[J>>2]|0;if(r>>>0>1){s=g?J:c[K>>2]|0;g=s+4|0;s=s+(r<<2)|0;t=c[e>>2]|0;u=s-g|0;if((r|0)!=1){r=t;while(1){c[r>>2]=c[g>>2];g=g+4|0;if((g|0)==(s|0))break;else r=r+4|0}}c[e>>2]=t+(u>>>2<<2)}switch(f&176|0){case 32:{c[d>>2]=c[e>>2];break}case 16:break;default:c[d>>2]=b}return}function ks(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+480|0;q=z+468|0;B=z+464|0;x=z+472|0;u=z+56|0;y=z+52|0;C=z+40|0;E=z+28|0;D=z+16|0;m=z+12|0;p=z+64|0;w=z+8|0;v=z+4|0;r=z;b=jn(f)|0;c[B>>2]=b;o=0;s=ra(37,B|0,44212)|0;t=o;o=0;do if(t&1)F=13;else{n=a[h>>0]|0;j=(n&1)==0;t=h+4|0;if(!((j?(n&255)>>>1:c[t>>2]|0)|0))n=0;else{j=c[(j?t:c[h+8>>2]|0)>>2]|0;o=0;k=ra(c[(c[s>>2]|0)+44>>2]|0,s|0,45)|0;n=o;o=0;if(n&1){F=13;break}n=(j|0)==(k|0)}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;qa(4,e|0,n|0,B|0,x|0,u|0,y|0,C|0,E|0,D|0,m|0);l=o;o=0;if(!(l&1)){l=a[h>>0]|0;e=c[t>>2]|0;j=(l&1)==0?(l&255)>>>1:e;m=c[m>>2]|0;if((j|0)>(m|0)){G=a[D>>0]|0;k=a[E>>0]|0;j=(j-m<<1|1)+m+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((k&1)==0?(k&255)>>>1:c[E+4>>2]|0)|0}else{G=a[D>>0]|0;j=a[E>>0]|0;j=m+2+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((j&1)==0?(j&255)>>>1:c[E+4>>2]|0)|0}if(j>>>0>100){j=Fl(j<<2)|0;k=j;if(!j){o=0;xa(6);G=o;o=0;if(!(G&1)){l=a[h>>0]|0;e=c[t>>2]|0;j=0;F=17}}else F=17}else{k=0;j=p;F=17}if((F|0)==17){G=(l&1)==0;h=G?t:c[h+8>>2]|0;o=0;na(2,j|0,w|0,v|0,c[f+4>>2]|0,h|0,h+((G?(l&255)>>>1:e)<<2)|0,s|0,n|0,x|0,c[u>>2]|0,c[y>>2]|0,C|0,E|0,D|0,m|0);G=o;o=0;if(!(G&1)?(c[r>>2]=c[d>>2],G=c[w>>2]|0,A=c[v>>2]|0,o=0,c[q>>2]=c[r>>2],A=ja(40,q|0,j|0,G|0,A|0,f|0,g|0)|0,G=o,o=0,!(G&1)):0){if(k){Gl(k);b=c[B>>2]|0}Wm(D);Wm(E);Im(C);pm(b)|0;i=z;return A|0}}j=Na()|0;if(k){Gl(k);b=c[B>>2]|0}}else j=Na()|0;Wm(D);Wm(E);Im(C)}while(0);if((F|0)==13)j=Na()|0;pm(b)|0;Ya(j|0);return 0}function ls(a){a=a|0;return}function ms(a){a=a|0;cj(a);return}function ns(b,d,e){b=b|0;d=d|0;e=e|0;b=lk((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0,1)|0;return b>>>((b|0)!=(-1|0)&1)|0}function os(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;k=i;i=i+16|0;l=k;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;j=a[h>>0]|0;m=(j&1)==0;d=m?h+1|0:c[h+8>>2]|0;j=m?(j&255)>>>1:c[h+4>>2]|0;h=d+j|0;a:do if((j|0)>0){while(1){o=0;ia(67,l|0,a[d>>0]|0);m=o;o=0;if(m&1)break;d=d+1|0;if(d>>>0>=h>>>0){j=4;break a}}d=Na()|0;j=7}else j=4;while(0);b:do if((j|0)==4){o=0;d=va(19,((e|0)==-1?-1:e<<1)|0,f|0,g|0,((a[l>>0]&1)==0?l+1|0:c[l+8>>2]|0)|0)|0;m=o;o=0;if(m&1){d=Na()|0;j=7;break}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;m=nl(d)|0;h=d+m|0;c:do if((m|0)>0){while(1){o=0;ia(67,b|0,a[d>>0]|0);m=o;o=0;if(m&1)break;d=d+1|0;if(d>>>0>=h>>>0)break c}d=Na()|0;Im(b);break b}while(0);Im(l);i=k;return}while(0);Im(l);Ya(d|0)}function ps(a,b){a=a|0;b=b|0;return}function qs(a){a=a|0;return}function rs(a){a=a|0;cj(a);return}function ss(b,d,e){b=b|0;d=d|0;e=e|0;b=lk((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0,1)|0;return b>>>((b|0)!=(-1|0)&1)|0}function ts(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+224|0;p=w+184|0;n=w+192|0;m=w+180|0;q=w+176|0;u=w+168|0;t=w+40|0;s=w+32|0;v=w+28|0;x=w+16|0;l=w+8|0;r=w;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[l+4>>2]=0;c[l>>2]=44696;k=a[h>>0]|0;y=(k&1)==0;j=h+4|0;d=y?j:c[h+8>>2]|0;h=y?(k&255)>>>1:c[j>>2]|0;j=d+(h<<2)|0;k=n+32|0;a:do if((h|0)>0){b:while(1){c[q>>2]=d;o=0;h=ya(c[(c[l>>2]|0)+12>>2]|0,l|0,p|0,d|0,j|0,q|0,n|0,k|0,m|0)|0;y=o;o=0;if(y&1){h=12;break}if((h|0)==2?1:(c[q>>2]|0)==(d|0)){h=5;break}if(n>>>0<(c[m>>2]|0)>>>0){d=n;do{o=0;ia(67,x|0,a[d>>0]|0);y=o;o=0;if(y&1){h=11;break b}d=d+1|0}while(d>>>0<(c[m>>2]|0)>>>0)}d=c[q>>2]|0;if(!((h|0)!=2&d>>>0>>0)){h=9;break a}}if((h|0)==5){o=0;ha(190,58955);o=0;d=Na()|0}else if((h|0)==11)d=Na()|0;else if((h|0)==12)d=Na()|0}else h=9;while(0);c:do if((h|0)==9){o=0;d=va(19,((e|0)==-1?-1:e<<1)|0,f|0,g|0,((a[x>>0]&1)==0?x+1|0:c[x+8>>2]|0)|0)|0;y=o;o=0;if(y&1){d=Na()|0;break}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[r+4>>2]=0;c[r>>2]=44744;y=nl(d)|0;j=d+y|0;k=j;l=t+128|0;d:do if((y|0)>0){e:while(1){c[v>>2]=d;o=0;h=ya(c[(c[r>>2]|0)+16>>2]|0,r|0,u|0,d|0,((k-d|0)>32?d+32|0:j)|0,v|0,t|0,l|0,s|0)|0;y=o;o=0;if(y&1){h=24;break}if((h|0)==2?1:(c[v>>2]|0)==(d|0)){h=18;break}if(t>>>0<(c[s>>2]|0)>>>0){d=t;do{o=0;ia(92,b|0,c[d>>2]|0);y=o;o=0;if(y&1){h=23;break e}d=d+4|0}while(d>>>0<(c[s>>2]|0)>>>0)}d=c[v>>2]|0;if(!((h|0)!=2&d>>>0>>0))break d}if((h|0)==18){o=0;ha(190,58955);o=0;d=Na()|0}else if((h|0)==23)d=Na()|0;else if((h|0)==24)d=Na()|0;Wm(b);break c}while(0);Im(x);i=w;return}while(0);Im(x);Ya(d|0)}function us(a,b){a=a|0;b=b|0;return}function vs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b+4>>2]=d+-1;c[b>>2]=44196;h=b+8|0;o=0;ia(94,h|0,28);g=o;o=0;if(g&1)d=Na()|0;else{g=b+144|0;o=0;wa(5,g|0,58885,1);f=o;o=0;if(f&1)d=Na()|0;else{e=c[h>>2]|0;f=b+12|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}c[495]=0;c[494]=43124;o=0;ia(95,b|0,1976);f=o;o=0;do if(((((((((((((!(f&1)?(c[497]=0,c[496]=43164,o=0,ia(96,b|0,1984),f=o,o=0,!(f&1)):0)?(c[499]=0,c[498]=44236,c[500]=0,a[2004]=0,c[500]=Os()|0,o=0,ia(97,b|0,1992),f=o,o=0,!(f&1)):0)?(c[503]=0,c[502]=44484,o=0,ia(98,b|0,2008),f=o,o=0,!(f&1)):0)?(c[505]=0,c[504]=44552,o=0,ia(99,b|0,2016),f=o,o=0,!(f&1)):0)?(o=0,ia(100,2024,1),f=o,o=0,!(f&1)):0)?(o=0,ia(101,b|0,2024),f=o,o=0,!(f&1)):0)?(c[511]=0,c[510]=44600,o=0,ia(102,b|0,2040),f=o,o=0,!(f&1)):0)?(c[513]=0,c[512]=44648,o=0,ia(103,b|0,2048),f=o,o=0,!(f&1)):0)?(Tt(2056,1),o=0,ia(104,b|0,2056),f=o,o=0,!(f&1)):0)?(Ut(2080,1),o=0,ia(105,b|0,2080),f=o,o=0,!(f&1)):0)?(c[529]=0,c[528]=43204,o=0,ia(106,b|0,2112),f=o,o=0,!(f&1)):0)?(c[531]=0,c[530]=43276,o=0,ia(107,b|0,2120),f=o,o=0,!(f&1)):0)?(c[533]=0,c[532]=43348,o=0,ia(108,b|0,2128),f=o,o=0,!(f&1)):0){c[535]=0;c[534]=43408;o=0;ia(109,b|0,2136);f=o;o=0;if(f&1){i=42;break}c[537]=0;c[536]=43716;o=0;ia(110,b|0,2144);f=o;o=0;if(f&1){i=42;break}c[539]=0;c[538]=43780;o=0;ia(111,b|0,2152);f=o;o=0;if(f&1){i=42;break}c[541]=0;c[540]=43844;o=0;ia(112,b|0,2160);f=o;o=0;if(f&1){i=42;break}c[543]=0;c[542]=43908;o=0;ia(113,b|0,2168);f=o;o=0;if(f&1){i=42;break}c[545]=0;c[544]=43972;o=0;ia(114,b|0,2176);f=o;o=0;if(f&1){i=42;break}c[547]=0;c[546]=44008;o=0;ia(115,b|0,2184);f=o;o=0;if(f&1){i=42;break}c[549]=0;c[548]=44044;o=0;ia(116,b|0,2192);f=o;o=0;if(f&1){i=42;break}c[551]=0;c[550]=44080;o=0;ia(117,b|0,2200);f=o;o=0;if(f&1){i=42;break}c[553]=0;c[552]=43468;c[554]=43516;o=0;ia(118,b|0,2208);f=o;o=0;if(f&1){i=42;break}c[557]=0;c[556]=43560;c[558]=43608;o=0;ia(119,b|0,2224);f=o;o=0;if(f&1){i=42;break}c[561]=0;c[560]=44464;o=0;d=ua(3)|0;f=o;o=0;if(f&1){d=Na()|0;break}c[562]=d;c[560]=43652;o=0;ia(120,b|0,2240);f=o;o=0;if(f&1){i=42;break}c[565]=0;c[564]=44464;o=0;d=ua(3)|0;f=o;o=0;if(f&1){d=Na()|0;break}c[566]=d;c[564]=43684;o=0;ia(121,b|0,2256);i=o;o=0;if(i&1){i=42;break}c[569]=0;c[568]=44116;o=0;ia(122,b|0,2272);i=o;o=0;if(i&1){i=42;break}c[571]=0;c[570]=44156;o=0;ia(123,b|0,2280);i=o;o=0;if(i&1){i=42;break}return}else i=42;while(0);if((i|0)==42)d=Na()|0;Im(g)}Dv(h)}Ya(d|0)}function ws(){var b=0;do if((a[2288]|0)==0?(Ha(2288)|0)!=0:0){o=0;ua(4)|0;b=o;o=0;if(b&1){b=Na()|0;sb(2288);Ya(b|0)}else{c[11246]=44980;Pa(2288);break}}while(0);return c[11246]|0}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;om(b);f=a+8|0;e=c[f>>2]|0;do if((c[a+12>>2]|0)-e>>2>>>0<=d>>>0){o=0;ia(124,f|0,d+1|0);a=o;o=0;if(!(a&1)){e=c[f>>2]|0;break}e=Na()|0;if(b)pm(b)|0;Ya(e|0)}while(0);a=c[e+(d<<2)>>2]|0;if(a){pm(a)|0;e=c[f>>2]|0}c[e+(d<<2)>>2]=b;return}function ys(a){a=a|0;var b=0,d=0,e=0,f=0;c[a>>2]=44196;e=a+8|0;f=a+12|0;b=c[e>>2]|0;if((c[f>>2]|0)!=(b|0)){d=0;do{b=c[b+(d<<2)>>2]|0;if(b)pm(b)|0;d=d+1|0;b=c[e>>2]|0}while(d>>>0<(c[f>>2]|0)-b>>2>>>0)}Im(a+144|0);Dv(e);return}function zs(a){a=a|0;ys(a);cj(a);return}function As(a,b){a=a|0;b=b|0;if(Fv(a,b)|0)return c[(c[a+8>>2]|0)+(b<<2)>>2]|0;else{a=Ma(4)|0;qj(a);lb(a|0,640,82)}return 0}function Bs(){vs(2296,1);c[11245]=2296;return 44980}function Cs(){var a=0;a=c[(ws()|0)>>2]|0;c[11247]=a;om(a);return 44988}function Ds(){var b=0;do if((a[2456]|0)==0?(Ha(2456)|0)!=0:0){o=0;ua(5)|0;b=o;o=0;if(b&1){b=Na()|0;sb(2456);Ya(b|0)}else{c[11248]=44988;Pa(2456);break}}while(0);return c[11248]|0}function Es(a){a=a|0;var b=0,d=0;o=0;b=ua(6)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}else{d=c[b>>2]|0;c[a>>2]=d;om(d);return}}function Fs(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;om(b);return}function Gs(a){a=a|0;pm(c[a>>2]|0)|0;return}function Hs(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;if((c[a>>2]|0)!=-1){c[b>>2]=a;c[b+4>>2]=191;c[b+8>>2]=0;Em(a,b,192)}i=d;return (c[a+4>>2]|0)+-1|0}function Is(a,b){a=a|0;b=b|0;a=c[a>>2]|0;return As(a,Hs(b)|0)|0}function Js(a){a=a|0;cj(a);return}function Ks(a){a=a|0;if(a)Bb[c[(c[a>>2]|0)+4>>2]&255](a);return}function Ls(a){a=a|0;var b=0;b=c[11052]|0;c[11052]=b+1;c[a+4>>2]=b+1;return}function Ms(a){a=a|0;cj(a);return}function Ns(a,c,d){a=a|0;c=c|0;d=d|0;if(d>>>0<128)d=(b[(Os()|0)+(d<<1)>>1]&c)<<16>>16!=0;else d=0;return d|0}function Os(){var a=0,b=0;o=0;a=ua(7)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Ps(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;i=(f-d|0)>>>2;if((d|0)!=(f|0)){h=d;while(1){a=c[h>>2]|0;if(a>>>0<128)a=e[(Os()|0)+(a<<1)>>1]|0;else a=0;b[g>>1]=a;h=h+4|0;if((h|0)==(f|0))break;else g=g+2|0}}return d+(i<<2)|0}function Qs(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;a:do if((e|0)==(f|0))e=f;else while(1){a=c[e>>2]|0;if(a>>>0<128?(b[(Os()|0)+(a<<1)>>1]&d)<<16>>16!=0:0)break a;e=e+4|0;if((e|0)==(f|0)){e=f;break}}while(0);return e|0}function Rs(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;a:do if((e|0)==(f|0))e=f;else while(1){a=c[e>>2]|0;if(a>>>0>=128)break a;if(!((b[(Os()|0)+(a<<1)>>1]&d)<<16>>16))break a;e=e+4|0;if((e|0)==(f|0)){e=f;break}}while(0);return e|0}function Ss(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[(Ts()|0)+(b<<2)>>2]|0;return b|0}function Ts(){var a=0,b=0;o=0;a=ua(8)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Us(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(d-b|0)>>>2;if((b|0)!=(d|0)){e=b;do{a=c[e>>2]|0;if(a>>>0<128)a=c[(Ts()|0)+(a<<2)>>2]|0;c[e>>2]=a;e=e+4|0}while((e|0)!=(d|0))}return b+(f<<2)|0}function Vs(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[(Ws()|0)+(b<<2)>>2]|0;return b|0}function Ws(){var a=0,b=0;o=0;a=ua(9)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(d-b|0)>>>2;if((b|0)!=(d|0)){e=b;do{a=c[e>>2]|0;if(a>>>0<128)a=c[(Ws()|0)+(a<<2)>>2]|0;c[e>>2]=a;e=e+4|0}while((e|0)!=(d|0))}return b+(f<<2)|0}function Ys(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Zs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;if((d|0)!=(e|0))while(1){c[f>>2]=a[d>>0];d=d+1|0;if((d|0)==(e|0))break;else f=f+4|0}return e|0}function _s(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function $s(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=(e-d|0)>>>2;if((d|0)!=(e|0)){h=d;b=g;while(1){g=c[h>>2]|0;a[b>>0]=g>>>0<128?g&255:f;h=h+4|0;if((h|0)==(e|0))break;else b=b+1|0}}return d+(i<<2)|0}function at(b){b=b|0;var d=0;c[b>>2]=44236;d=c[b+8>>2]|0;if((d|0)!=0?(a[b+12>>0]|0)!=0:0)dj(d);return}function bt(a){a=a|0;at(a);cj(a);return}function ct(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[(Ts()|0)+((b&255)<<2)>>2]&255;return b|0}function dt(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)!=(e|0)){b=d;do{d=a[b>>0]|0;if(d<<24>>24>-1)d=c[(Ts()|0)+(d<<24>>24<<2)>>2]&255;a[b>>0]=d;b=b+1|0}while((b|0)!=(e|0))}return e|0}function et(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[(Ws()|0)+(b<<24>>24<<2)>>2]&255;return b|0}function ft(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)!=(e|0)){b=d;do{d=a[b>>0]|0;if(d<<24>>24>-1)d=c[(Ws()|0)+(d<<24>>24<<2)>>2]&255;a[b>>0]=d;b=b+1|0}while((b|0)!=(e|0))}return e|0}function gt(a,b){a=a|0;b=b|0;return b|0}function ht(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if((c|0)!=(d|0))while(1){a[e>>0]=a[c>>0]|0;c=c+1|0;if((c|0)==(d|0))break;else e=e+1|0}return d|0}function it(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function jt(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((c|0)!=(d|0))while(1){b=a[c>>0]|0;a[f>>0]=b<<24>>24>-1?b:e;c=c+1|0;if((c|0)==(d|0))break;else f=f+1|0}return d|0}function kt(a){a=a|0;cj(a);return}function lt(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function mt(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function nt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function ot(a){a=a|0;return 1}function pt(a){a=a|0;return 1}function qt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=d-c|0;return (a>>>0>>0?a:e)|0}function rt(a){a=a|0;return 1}function st(a,b){a=a|0;b=b|0;var d=0;c[a+4>>2]=b+-1;c[a>>2]=44304;o=0;b=ua(3)|0;d=o;o=0;if(d&1){d=Na()|0;Ya(d|0)}else{c[a+8>>2]=b;return}}function tt(a){a=a|0;wu(a);cj(a);return} + function xl(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=i;i=i+624|0;ca=ha+24|0;ea=ha+16|0;da=ha+588|0;Y=ha+576|0;ba=ha;V=ha+536|0;ga=ha+8|0;fa=ha+528|0;M=(e|0)!=0;N=V+40|0;U=N;V=V+39|0;W=ga+4|0;X=Y+12|0;Y=Y+11|0;Z=da;_=X;aa=_-Z|0;O=-2-Z|0;P=_+2|0;Q=ca+288|0;R=da+9|0;S=R;T=da+8|0;m=0;w=f;n=0;f=0;a:while(1){do if((m|0)>-1)if((n|0)>(2147483647-m|0)){c[(ck()|0)>>2]=75;m=-1;break}else{m=n+m|0;break}while(0);n=a[w>>0]|0;if(!(n<<24>>24)){L=245;break}else o=w;b:while(1){switch(n<<24>>24){case 37:{n=o;L=9;break b}case 0:{n=o;break b}default:{}}K=o+1|0;n=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[n+1>>0]|0)!=37)break c;o=o+1|0;n=n+2|0;if((a[n>>0]|0)==37)L=9;else break}while(0);y=o-w|0;if(M?(c[e>>2]&32|0)==0:0)Xk(w,y,e)|0;if((o|0)!=(w|0)){w=n;n=y;continue}r=n+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[n+2>>0]|0)==36;r=K?n+3|0:r;o=a[r>>0]|0;u=K?p:-1;f=K?1:f}else u=-1;n=o<<24>>24;d:do if((n&-32|0)==32){p=0;while(1){if(!(1<>24)+-32|p;r=r+1|0;o=a[r>>0]|0;n=o<<24>>24;if((n&-32|0)!=32){s=p;n=r;break}}}else{s=0;n=r}while(0);do if(o<<24>>24==42){p=n+1|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[l+(o<<2)>>2]=10;f=1;n=n+3|0;o=c[j+((a[p>>0]|0)+-48<<3)>>2]|0}else{if(f){m=-1;break a}if(!M){x=s;n=p;f=0;K=0;break}f=(c[g>>2]|0)+(4-1)&~(4-1);o=c[f>>2]|0;c[g>>2]=f+4;f=0;n=p}if((o|0)<0){x=s|8192;K=0-o|0}else{x=s;K=o}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){o=0;do{o=(o*10|0)+p|0;n=n+1|0;p=(a[n>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{x=s;K=o}}else{x=s;K=0}}while(0);e:do if((a[n>>0]|0)==46){p=n+1|0;o=a[p>>0]|0;if(o<<24>>24!=42){r=(o<<24>>24)+-48|0;if(r>>>0<10){n=p;o=0}else{n=p;r=0;break}while(1){o=(o*10|0)+r|0;n=n+1|0;r=(a[n>>0]|0)+-48|0;if(r>>>0>=10){r=o;break e}}}p=n+2|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;n=n+4|0;r=c[j+((a[p>>0]|0)+-48<<3)>>2]|0;break}if(f){m=-1;break a}if(M){n=(c[g>>2]|0)+(4-1)&~(4-1);r=c[n>>2]|0;c[g>>2]=n+4;n=p}else{n=p;r=0}}else r=-1;while(0);t=0;while(1){o=(a[n>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=n+1|0;o=a[56223+(t*58|0)+o>>0]|0;s=o&255;if((s+-1|0)>>>0<8){n=p;t=s}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=s;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ba;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Cl(ba,s,g)}while(0);if((L|0)==52?(L=0,!M):0){w=J;n=y;continue}u=a[n>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=x&-65537;I=(x&8192|0)==0?x:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 1:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 2:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}case 3:{b[c[ba>>2]>>1]=m;w=J;n=y;continue a}case 4:{a[c[ba>>2]>>0]=m;w=J;n=y;continue a}case 6:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 7:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}default:{w=J;n=y;continue a}}case 112:{t=I|8;r=r>>>0>8?r:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)n=N;else{n=N;do{n=n+-1|0;a[n>>0]=o&7|48;o=kw(o|0,p|0,3)|0;p=D}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;s=56703;L=77}else{t=U-n+1|0;o=I;r=(r|0)<(t|0)?t:r;t=0;s=56703;L=77}break}case 105:case 100:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){n=hw(0,0,n|0,o|0)|0;o=D;p=ba;c[p>>2]=n;c[p+4>>2]=o;p=1;s=56703;L=76;break f}if(!(I&2048)){s=I&1;p=s;s=(s|0)==0?56703:56705;L=76}else{p=1;s=56704;L=76}break}case 117:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;p=0;s=56703;L=76;break}case 99:{a[V>>0]=c[ba>>2];w=V;o=1;t=0;u=56703;n=N;break}case 109:{n=dk(c[(ck()|0)>>2]|0)|0;L=82;break}case 115:{n=c[ba>>2]|0;n=(n|0)!=0?n:56713;L=82;break}case 67:{c[ga>>2]=c[ba>>2];c[W>>2]=0;c[ba>>2]=ga;r=-1;L=86;break}case 83:{if(!r){El(e,32,K,0,I);n=0;L=98}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ba>>3];c[ea>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?56721:56726}else{G=1;H=56723}else{q=-q;G=1;H=56720}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){v=+wk(q,ea)*2.0;o=v!=0.0;if(o)c[ea>>2]=(c[ea>>2]|0)+-1;C=u|32;if((C|0)==97){w=u&32;y=(w|0)==0?H:H+9|0;x=G|2;n=12-r|0;do if(!(r>>>0>11|(n|0)==0)){q=8.0;do{n=n+-1|0;q=q*16.0}while((n|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-v-q));break}else{q=v+q-q;break}}else q=v;while(0);o=c[ea>>2]|0;n=(o|0)<0?0-o|0:o;n=Dl(n,((n|0)<0)<<31>>31,X)|0;if((n|0)==(X|0)){a[Y>>0]=48;n=Y}a[n+-1>>0]=(o>>31&2)+43;t=n+-2|0;a[t>>0]=u+15;s=(r|0)<1;p=(I&8|0)==0;o=da;while(1){H=~~q;n=o+1|0;a[o>>0]=d[56687+H>>0]|w;q=(q-+(H|0))*16.0;do if((n-Z|0)==1){if(p&(s&q==0.0))break;a[n>>0]=46;n=o+2|0}while(0);if(!(q!=0.0))break;else o=n}r=(r|0)!=0&(O+n|0)<(r|0)?P+r-t|0:aa-t+n|0;p=r+x|0;El(e,32,K,p,I);if(!(c[e>>2]&32))Xk(y,x,e)|0;El(e,48,K,p,I^65536);n=n-Z|0;if(!(c[e>>2]&32))Xk(da,n,e)|0;o=_-t|0;El(e,48,r-(n+o)|0,0,0);if(!(c[e>>2]&32))Xk(t,o,e)|0;El(e,32,K,p,I^8192);n=(p|0)<(K|0)?K:p;break}n=(r|0)<0?6:r;if(o){o=(c[ea>>2]|0)+-28|0;c[ea>>2]=o;q=v*268435456.0}else{q=v;o=c[ea>>2]|0}F=(o|0)<0?ca:Q;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[ea>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0>>0)r=s;else{o=0;do{B=mw(c[r>>2]|0,0,t|0)|0;B=jw(B|0,D|0,o|0,0)|0;o=D;A=vw(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=uw(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[ea>>2]|0)-t|0;c[ea>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((n+25|0)/9|0)+1|0;z=(C|0)==102;w=r;while(1){x=0-o|0;x=(x|0)>9?9:x;do if(w>>>0

>>0){o=(1<>>x;r=0;t=w;do{B=c[t>>2]|0;c[t>>2]=(B>>>x)+r;r=$(B&o,s)|0;t=t+4|0}while(t>>>0

>>0);o=(c[w>>2]|0)==0?w+4|0:w;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[w>>2]|0)==0?w+4|0:w;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[ea>>2]|0)+x|0;c[ea>>2]=o;if((o|0)>=0){w=r;break}else w=r}}else w=r;do if(w>>>0

>>0){o=(E-w>>2)*9|0;s=c[w>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(C|0)==103;B=(n|0)!=0;r=n-((C|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;z=(t|0)/9|0;r=F+(z+-1023<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;x=c[r>>2]|0;y=(x>>>0)%(s>>>0)|0;if((y|0)==0?(F+(z+-1022<<2)|0)==(p|0):0)s=w;else L=163;do if((L|0)==163){L=0;v=(((x>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;t=(s|0)/2|0;do if(y>>>0>>0)q=.5;else{if((y|0)==(t|0)?(F+(z+-1022<<2)|0)==(p|0):0){q=1.0;break}q=1.5}while(0);do if(G){if((a[H>>0]|0)!=45)break;v=-v;q=-q}while(0);t=x-y|0;c[r>>2]=t;if(!(v+q!=v)){s=w;break}C=t+s|0;c[r>>2]=C;if(C>>>0>999999999){o=w;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0>>0){o=o+-4|0;c[o>>2]=0}C=(c[s>>2]|0)+1|0;c[s>>2]=C;if(C>>>0>999999999)r=s;else{w=o;r=s;break}}}o=(E-w>>2)*9|0;t=c[w>>2]|0;if(t>>>0<10){s=w;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=w}while(0);C=r+4|0;w=s;p=p>>>0>C>>>0?C:p}y=0-o|0;while(1){if(p>>>0<=w>>>0){z=0;C=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{z=1;C=p;break}}do if(A){n=(B&1^1)+n|0;if((n|0)>(o|0)&(o|0)>-5){u=u+-1|0;n=n+-1-o|0}else{u=u+-2|0;n=n+-1|0}p=I&8;if(p)break;do if(z){p=c[C+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(((p>>>0)%(s>>>0)|0|0)==0)}else r=9;while(0);p=((C-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}}else p=I&8;while(0);x=n|p;s=(x|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?y:o;r=Dl(r,((r|0)<0)<<31>>31,X)|0;if((_-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((_-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=_-E|0;u=E}y=G+1+n+s+o|0;El(e,32,K,y,I);if(!(c[e>>2]&32))Xk(H,G,e)|0;El(e,48,K,y,I^65536);do if(t){r=w>>>0>F>>>0?F:w;o=r;do{p=Dl(c[o>>2]|0,0,R)|0;do if((o|0)==(r|0)){if((p|0)!=(R|0))break;a[T>>0]=48;p=T}else{if(p>>>0<=da>>>0)break;do{p=p+-1|0;a[p>>0]=48}while(p>>>0>da>>>0)}while(0);if(!(c[e>>2]&32))Xk(p,S-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(x){if(c[e>>2]&32)break;Xk(56755,1,e)|0}while(0);if((n|0)>0&o>>>0>>0){p=o;while(1){o=Dl(c[p>>2]|0,0,R)|0;if(o>>>0>da>>>0)do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0);if(!(c[e>>2]&32))Xk(o,(n|0)>9?9:n,e)|0;p=p+4|0;o=n+-9|0;if(!((n|0)>9&p>>>0>>0)){n=o;break}else n=o}}El(e,48,n+9|0,9,0)}else{t=z?C:w+4|0;if((n|0)>-1){s=(p|0)==0;r=w;do{o=Dl(c[r>>2]|0,0,R)|0;if((o|0)==(R|0)){a[T>>0]=48;o=T}do if((r|0)==(w|0)){p=o+1|0;if(!(c[e>>2]&32))Xk(o,1,e)|0;if(s&(n|0)<1){o=p;break}if(c[e>>2]&32){o=p;break}Xk(56755,1,e)|0;o=p}else{if(o>>>0<=da>>>0)break;do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0)}while(0);p=S-o|0;if(!(c[e>>2]&32))Xk(o,(n|0)>(p|0)?p:n,e)|0;n=n-p|0;r=r+4|0}while(r>>>0>>0&(n|0)>-1)}El(e,48,n+18|0,18,0);if(c[e>>2]&32)break;Xk(u,_-u|0,e)|0}while(0);El(e,32,K,y,I^8192);n=(y|0)<(K|0)?K:y}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;El(e,32,K,r,p);n=c[e>>2]|0;if(!(n&32)){Xk(H,o,e)|0;n=c[e>>2]|0}if(!(n&32))Xk(s?(t?56747:56751):t?56739:56743,3,e)|0;El(e,32,K,r,I^8192);n=(r|0)<(K|0)?K:r}while(0);w=J;continue a}default:{p=I;o=r;t=0;u=56703;n=N}}while(0);g:do if((L|0)==64){p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;s=u&32;if(!((o|0)==0&(p|0)==0)){n=N;do{n=n+-1|0;a[n>>0]=d[56687+(o&15)>>0]|s;o=kw(o|0,p|0,4)|0;p=D}while(!((o|0)==0&(p|0)==0));L=ba;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;s=56703;L=77}else{o=t;t=2;s=56703+(u>>4)|0;L=77}}else{n=N;o=t;t=0;s=56703;L=77}}else if((L|0)==76){n=Dl(n,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=jl(n,0,r)|0;H=(I|0)==0;w=n;o=H?r:I-n|0;t=0;u=56703;n=H?n+r|0:I}else if((L|0)==86){L=0;o=0;n=0;s=c[ba>>2]|0;while(1){p=c[s>>2]|0;if(!p)break;n=Ik(fa,p)|0;if((n|0)<0|n>>>0>(r-o|0)>>>0)break;o=n+o|0;if(r>>>0>o>>>0)s=s+4|0;else break}if((n|0)<0){m=-1;break a}El(e,32,K,o,I);if(!o){n=0;L=98}else{p=0;r=c[ba>>2]|0;while(1){n=c[r>>2]|0;if(!n){n=o;L=98;break g}n=Ik(fa,n)|0;p=n+p|0;if((p|0)>(o|0)){n=o;L=98;break g}if(!(c[e>>2]&32))Xk(fa,n,e)|0;if(p>>>0>=o>>>0){n=o;L=98;break}else r=r+4|0}}}while(0);if((L|0)==98){L=0;El(e,32,K,n,I^8192);w=J;n=(K|0)>(n|0)?K:n;continue}if((L|0)==77){L=0;p=(r|0)>-1?o&-65537:o;o=ba;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((r|0)!=0|o){o=(o&1^1)+(U-n)|0;w=n;o=(r|0)>(o|0)?r:o;u=s;n=N}else{w=N;o=0;u=s;n=N}}s=n-w|0;o=(o|0)<(s|0)?s:o;r=t+o|0;n=(K|0)<(r|0)?r:K;El(e,32,n,r,p);if(!(c[e>>2]&32))Xk(u,t,e)|0;El(e,48,n,r,p^65536);El(e,48,o,s,0);if(!(c[e>>2]&32))Xk(w,s,e)|0;El(e,32,n,r,p^8192);w=J}h:do if((L|0)==245)if(!e)if(f){m=1;while(1){f=c[l+(m<<2)>>2]|0;if(!f)break;Cl(j+(m<<3)|0,f,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ha;return m|0}function yl(a,b,c){a=a|0;b=b|0;c=c|0;return Rk(a,b,c)|0}function zl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+112|0;h=j;f=h;g=f+112|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;gk(h,0);e=+ek(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b)c[b>>2]=(d|0)!=0?a+d|0:a;i=j;return +e}function Al(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+112|0;j=k;c[j>>2]=0;g=j+4|0;c[g>>2]=a;c[j+44>>2]=a;h=j+8|0;c[h>>2]=(a|0)<0?-1:a+2147483647|0;c[j+76>>2]=-1;gk(j,0);e=fk(j,d,1,e,f)|0;if(b)c[b>>2]=a+((c[g>>2]|0)+(c[j+108>>2]|0)-(c[h>>2]|0));i=k;return e|0}function Bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;lw(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Cl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Dl(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=vw(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=uw(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=D}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function El(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;iw(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){Xk(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Xk(h,f,a)|0}while(0);i=j;return}function Fl(a){a=a|0;var 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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=c[10218]|0;d=i>>>a;if(d&3){a=(d&1^1)+a|0;e=a<<1;d=40912+(e<<2)|0;e=40912+(e+2<<2)|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[10222]|0)>>>0)Ga();b=h+12|0;if((c[b>>2]|0)==(f|0)){c[b>>2]=d;c[e>>2]=h;break}else Ga()}else c[10218]=i&~(1<>2]=M|3;M=f+(M|4)|0;c[M>>2]=c[M>>2]|1;M=g;return M|0}h=c[10220]|0;if(o>>>0>h>>>0){if(d){e=2<>>12&16;e=e>>>j;f=e>>>5&8;e=e>>>f;g=e>>>2&4;e=e>>>g;d=e>>>1&2;e=e>>>d;a=e>>>1&1;a=(f|j|g|d|a)+(e>>>a)|0;e=a<<1;d=40912+(e<<2)|0;e=40912+(e+2<<2)|0;g=c[e>>2]|0;j=g+8|0;f=c[j>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[10222]|0)>>>0)Ga();b=f+12|0;if((c[b>>2]|0)==(g|0)){c[b>>2]=d;c[e>>2]=f;k=c[10220]|0;break}else Ga()}else{c[10218]=i&~(1<>2]=o|3;i=g+o|0;c[g+(o|4)>>2]=h|1;c[g+M>>2]=h;if(k){f=c[10223]|0;d=k>>>3;b=d<<1;e=40912+(b<<2)|0;a=c[10218]|0;d=1<>2]|0;if(b>>>0<(c[10222]|0)>>>0)Ga();else{l=a;m=b}}else{c[10218]=a|d;l=40912+(b+2<<2)|0;m=e}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=e}c[10220]=h;c[10223]=i;M=j;return M|0}a=c[10219]|0;if(a){d=(a&0-a)+-1|0;L=d>>>12&16;d=d>>>L;K=d>>>5&8;d=d>>>K;M=d>>>2&4;d=d>>>M;a=d>>>1&2;d=d>>>a;e=d>>>1&1;e=c[41176+((K|L|M|a|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;a=e;while(1){b=c[a+16>>2]|0;if(!b){b=c[a+20>>2]|0;if(!b){j=d;break}}a=(c[b+4>>2]&-8)-o|0;M=a>>>0>>0;d=M?a:d;a=b;e=M?b:e}g=c[10222]|0;if(e>>>0>>0)Ga();i=e+o|0;if(e>>>0>=i>>>0)Ga();h=c[e+24>>2]|0;d=c[e+12>>2]|0;do if((d|0)==(e|0)){a=e+20|0;b=c[a>>2]|0;if(!b){a=e+16|0;b=c[a>>2]|0;if(!b){n=0;break}}while(1){d=b+20|0;f=c[d>>2]|0;if(f){b=f;a=d;continue}d=b+16|0;f=c[d>>2]|0;if(!f)break;else{b=f;a=d}}if(a>>>0>>0)Ga();else{c[a>>2]=0;n=b;break}}else{f=c[e+8>>2]|0;if(f>>>0>>0)Ga();b=f+12|0;if((c[b>>2]|0)!=(e|0))Ga();a=d+8|0;if((c[a>>2]|0)==(e|0)){c[b>>2]=d;c[a>>2]=f;n=d;break}else Ga()}while(0);do if(h){b=c[e+28>>2]|0;a=41176+(b<<2)|0;if((e|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(e|0))c[b>>2]=n;else c[h+20>>2]=n;if(!n)break}a=c[10222]|0;if(n>>>0>>0)Ga();c[n+24>>2]=h;b=c[e+16>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);b=c[e+20>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[n+20>>2]=b;c[b+24>>2]=n;break}}while(0);if(j>>>0<16){M=j+o|0;c[e+4>>2]=M|3;M=e+(M+4)|0;c[M>>2]=c[M>>2]|1}else{c[e+4>>2]=o|3;c[e+(o|4)>>2]=j|1;c[e+(j+o)>>2]=j;b=c[10220]|0;if(b){g=c[10223]|0;d=b>>>3;b=d<<1;f=40912+(b<<2)|0;a=c[10218]|0;d=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{p=b;q=a}}else{c[10218]=a|d;p=40912+(b+2<<2)|0;q=f}c[p>>2]=g;c[q+12>>2]=g;c[g+8>>2]=q;c[g+12>>2]=f}c[10220]=j;c[10223]=i}M=e+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=c[10219]|0;if(l){d=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)k=31;else{q=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;k=14-(p|q|k)+(v<>>15)|0;k=m>>>(k+7|0)&1|k<<1}else k=0;a=c[41176+(k<<2)>>2]|0;a:do if(!a){f=0;a=0;v=86}else{h=d;f=0;i=m<<((k|0)==31?0:25-(k>>>1)|0);j=a;a=0;while(1){g=c[j+4>>2]&-8;d=g-m|0;if(d>>>0>>0)if((g|0)==(m|0)){g=j;a=j;v=90;break a}else a=j;else d=h;v=c[j+20>>2]|0;j=c[j+16+(i>>>31<<2)>>2]|0;f=(v|0)==0|(v|0)==(j|0)?f:v;if(!j){v=86;break}else{h=d;i=i<<1}}}while(0);if((v|0)==86){if((f|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;f=a>>>1&1;f=c[41176+((l|n|p|q|f)+(a>>>f)<<2)>>2]|0;a=0}if(!f){i=d;j=a}else{g=f;v=90}}if((v|0)==90)while(1){v=0;q=(c[g+4>>2]&-8)-m|0;f=q>>>0>>0;d=f?q:d;a=f?g:a;f=c[g+16>>2]|0;if(f){g=f;v=90;continue}g=c[g+20>>2]|0;if(!g){i=d;j=a;break}else v=90}if((j|0)!=0?i>>>0<((c[10220]|0)-m|0)>>>0:0){f=c[10222]|0;if(j>>>0>>0)Ga();h=j+m|0;if(j>>>0>=h>>>0)Ga();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){o=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0>>0)Ga();else{c[a>>2]=0;o=b;break}}else{e=c[j+8>>2]|0;if(e>>>0>>0)Ga();b=e+12|0;if((c[b>>2]|0)!=(j|0))Ga();a=d+8|0;if((c[a>>2]|0)==(j|0)){c[b>>2]=d;c[a>>2]=e;o=d;break}else Ga()}while(0);do if(g){b=c[j+28>>2]|0;a=41176+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=o;if(!o){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=g+16|0;if((c[b>>2]|0)==(j|0))c[b>>2]=o;else c[g+20>>2]=o;if(!o)break}a=c[10222]|0;if(o>>>0>>0)Ga();c[o+24>>2]=g;b=c[j+16>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[o+16>>2]=b;c[b+24>>2]=o;break}while(0);b=c[j+20>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[o+20>>2]=b;c[b+24>>2]=o;break}}while(0);b:do if(i>>>0>=16){c[j+4>>2]=m|3;c[j+(m|4)>>2]=i|1;c[j+(i+m)>>2]=i;b=i>>>3;if(i>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{s=b;t=a}}else{c[10218]=d|b;s=40912+(a+2<<2)|0;t=e}c[s>>2]=h;c[t+12>>2]=h;c[j+(m+8)>>2]=t;c[j+(m+12)>>2]=e;break}b=i>>>8;if(b)if(i>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;b=41176+(e<<2)|0;c[j+(m+28)>>2]=e;c[j+(m+20)>>2]=0;c[j+(m+16)>>2]=0;a=c[10219]|0;d=1<>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(i|0)){e=i<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(i|0)){y=d;break c}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break b}}else y=b;while(0);b=y+8|0;a=c[b>>2]|0;M=c[10222]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[j+(m+8)>>2]=a;c[j+(m+12)>>2]=y;c[j+(m+24)>>2]=0;break}else Ga()}else{M=i+m|0;c[j+4>>2]=M|3;M=j+(M+4)|0;c[M>>2]=c[M>>2]|1}while(0);M=j+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);d=c[10220]|0;if(d>>>0>=q>>>0){b=d-q|0;a=c[10223]|0;if(b>>>0>15){c[10223]=a+q;c[10220]=b;c[a+(q+4)>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=q|3}else{c[10220]=0;c[10223]=0;c[a+4>>2]=d|3;M=a+(d+4)|0;c[M>>2]=c[M>>2]|1}M=a+8|0;return M|0}a=c[10221]|0;if(a>>>0>q>>>0){L=a-q|0;c[10221]=L;M=c[10224]|0;c[10224]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(c[10336]|0)){a=_a(30)|0;if(!(a+-1&a)){c[10338]=a;c[10337]=a;c[10339]=-1;c[10340]=-1;c[10341]=0;c[10329]=0;c[10336]=(qb(0)|0)&-16^1431655768;break}else Ga()}while(0);j=q+48|0;i=c[10338]|0;k=q+47|0;h=i+k|0;i=0-i|0;l=h&i;if(l>>>0<=q>>>0){M=0;return M|0}a=c[10328]|0;if((a|0)!=0?(t=c[10326]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(c[10329]&4)){a=c[10224]|0;e:do if(a){f=41320;while(1){d=c[f>>2]|0;if(d>>>0<=a>>>0?(r=f+4|0,(d+(c[r>>2]|0)|0)>>>0>a>>>0):0){g=f;a=r;break}f=c[f+8>>2]|0;if(!f){v=174;break e}}d=h-(c[10221]|0)&i;if(d>>>0<2147483647){f=Ua(d|0)|0;y=(f|0)==((c[g>>2]|0)+(c[a>>2]|0)|0);a=y?d:0;if(y){if((f|0)!=(-1|0)){w=f;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){g=Ua(0)|0;if((g|0)!=(-1|0)){a=g;d=c[10337]|0;f=d+-1|0;if(!(f&a))d=l;else d=l-a+(f+a&0-d)|0;a=c[10326]|0;f=a+d|0;if(d>>>0>q>>>0&d>>>0<2147483647){y=c[10328]|0;if((y|0)!=0?f>>>0<=a>>>0|f>>>0>y>>>0:0){a=0;break}f=Ua(d|0)|0;y=(f|0)==(g|0);a=y?d:0;if(y){w=g;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){g=0-d|0;do if(j>>>0>d>>>0&(d>>>0<2147483647&(f|0)!=(-1|0))?(u=c[10338]|0,u=k-d+u&0-u,u>>>0<2147483647):0)if((Ua(u|0)|0)==(-1|0)){Ua(g|0)|0;break f}else{d=u+d|0;break}while(0);if((f|0)!=(-1|0)){w=f;p=d;v=194;break d}}while(0);c[10329]=c[10329]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=Ua(l|0)|0,x=Ua(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(c[10326]|0)+p|0;c[10326]=a;if(a>>>0>(c[10327]|0)>>>0)c[10327]=a;h=c[10224]|0;g:do if(h){g=41320;do{a=c[g>>2]|0;d=g+4|0;f=c[d>>2]|0;if((w|0)==(a+f|0)){B=a;C=d;D=f;E=g;v=204;break}g=c[g+8>>2]|0}while((g|0)!=0);if(((v|0)==204?(c[E+12>>2]&8|0)==0:0)?h>>>0>>0&h>>>0>=B>>>0:0){c[C>>2]=D+p;M=(c[10221]|0)+p|0;L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;c[10224]=h+L;c[10221]=K;c[h+(L+4)>>2]=K|1;c[h+(M+4)>>2]=40;c[10225]=c[10340];break}a=c[10222]|0;if(w>>>0>>0){c[10222]=w;a=w}d=w+p|0;g=41320;while(1){if((c[g>>2]|0)==(d|0)){f=g;d=g;v=212;break}g=c[g+8>>2]|0;if(!g){d=41320;break}}if((v|0)==212)if(!(c[d+12>>2]&8)){c[f>>2]=w;n=d+4|0;c[n>>2]=(c[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;k=w+(p+8)|0;k=(k&7|0)==0?0:0-k&7;b=w+(k+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;c[w+(n+4)>>2]=q|3;h:do if((b|0)!=(h|0)){if((b|0)==(c[10223]|0)){M=(c[10220]|0)+l|0;c[10220]=M;c[10223]=o;c[w+(m+4)>>2]=M|1;c[w+(M+m)>>2]=M;break}i=p+4|0;d=c[w+(i+k)>>2]|0;if((d&3|0)==1){j=d&-8;g=d>>>3;i:do if(d>>>0>=256){h=c[w+((k|24)+p)>>2]|0;e=c[w+(p+12+k)>>2]|0;do if((e|0)==(b|0)){f=k|16;e=w+(i+f)|0;d=c[e>>2]|0;if(!d){e=w+(f+p)|0;d=c[e>>2]|0;if(!d){J=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;J=d;break}}else{f=c[w+((k|8)+p)>>2]|0;if(f>>>0>>0)Ga();a=f+12|0;if((c[a>>2]|0)!=(b|0))Ga();d=e+8|0;if((c[d>>2]|0)==(b|0)){c[a>>2]=e;c[d>>2]=f;J=e;break}else Ga()}while(0);if(!h)break;a=c[w+(p+28+k)>>2]|0;d=41176+(a<<2)|0;do if((b|0)!=(c[d>>2]|0)){if(h>>>0<(c[10222]|0)>>>0)Ga();a=h+16|0;if((c[a>>2]|0)==(b|0))c[a>>2]=J;else c[h+20>>2]=J;if(!J)break i}else{c[d>>2]=J;if(J)break;c[10219]=c[10219]&~(1<>>0>>0)Ga();c[J+24>>2]=h;b=k|16;a=c[w+(b+p)>>2]|0;do if(a)if(a>>>0>>0)Ga();else{c[J+16>>2]=a;c[a+24>>2]=J;break}while(0);b=c[w+(i+b)>>2]|0;if(!b)break;if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{e=c[w+((k|8)+p)>>2]|0;f=c[w+(p+12+k)>>2]|0;d=40912+(g<<1<<2)|0;do if((e|0)!=(d|0)){if(e>>>0>>0)Ga();if((c[e+12>>2]|0)==(b|0))break;Ga()}while(0);if((f|0)==(e|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();a=f+8|0;if((c[a>>2]|0)==(b|0)){F=a;break}Ga()}while(0);c[e+12>>2]=f;c[F>>2]=e}while(0);b=w+((j|k)+p)|0;f=j+l|0}else f=l;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[w+(m+4)>>2]=f|1;c[w+(f+m)>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0>=(c[10222]|0)>>>0){K=b;L=a;break}Ga()}while(0);c[K>>2]=o;c[L+12>>2]=o;c[w+(m+8)>>2]=L;c[w+(m+12)>>2]=e;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}K=(b+1048320|0)>>>16&8;L=b<>>16&4;L=L<>>16&2;e=14-(J|K|e)+(L<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=41176+(e<<2)|0;c[w+(m+28)>>2]=e;c[w+(m+20)>>2]=0;c[w+(m+16)>>2]=0;a=c[10219]|0;d=1<>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break}b=c[b>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(f|0)){M=d;break j}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=c[b>>2]|0;L=c[10222]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){c[a+12>>2]=o;c[b>>2]=o;c[w+(m+8)>>2]=a;c[w+(m+12)>>2]=M;c[w+(m+24)>>2]=0;break}else Ga()}else{M=(c[10221]|0)+l|0;c[10221]=M;c[10224]=o;c[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else d=41320;while(1){a=c[d>>2]|0;if(a>>>0<=h>>>0?(b=c[d+4>>2]|0,e=a+b|0,e>>>0>h>>>0):0)break;d=c[d+8>>2]|0}f=a+(b+-39)|0;a=a+(b+-47+((f&7|0)==0?0:0-f&7))|0;f=h+16|0;a=a>>>0>>0?h:a;b=a+8|0;d=w+8|0;d=(d&7|0)==0?0:0-d&7;M=p+-40-d|0;c[10224]=w+d;c[10221]=M;c[w+(d+4)>>2]=M|1;c[w+(p+-36)>>2]=40;c[10225]=c[10340];d=a+4|0;c[d>>2]=27;c[b>>2]=c[10330];c[b+4>>2]=c[10331];c[b+8>>2]=c[10332];c[b+12>>2]=c[10333];c[10330]=w;c[10331]=p;c[10333]=0;c[10332]=b;b=a+28|0;c[b>>2]=7;if((a+32|0)>>>0>>0)do{M=b;b=b+4|0;c[b>>2]=7}while((M+8|0)>>>0>>0);if((a|0)!=(h|0)){g=a-h|0;c[d>>2]=c[d>>2]&-2;c[h+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{G=b;H=a}}else{c[10218]=d|b;G=40912+(a+2<<2)|0;H=e}c[G>>2]=h;c[H+12>>2]=h;c[h+8>>2]=H;c[h+12>>2]=e;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=41176+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[f>>2]=0;b=c[10219]|0;a=1<>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}b=c[d>>2]|0;k:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(g|0)){I=d;break k}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;break g}}else I=b;while(0);b=I+8|0;a=c[b>>2]|0;M=c[10222]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[h+8>>2]=a;c[h+12>>2]=I;c[h+24>>2]=0;break}else Ga()}}else{M=c[10222]|0;if((M|0)==0|w>>>0>>0)c[10222]=w;c[10330]=w;c[10331]=p;c[10333]=0;c[10227]=c[10336];c[10226]=-1;b=0;do{M=b<<1;L=40912+(M<<2)|0;c[40912+(M+3<<2)>>2]=L;c[40912+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;c[10224]=w+M;c[10221]=L;c[w+(M+4)>>2]=L|1;c[w+(p+-36)>>2]=40;c[10225]=c[10340]}while(0);b=c[10221]|0;if(b>>>0>q>>>0){L=b-q|0;c[10221]=L;M=c[10224]|0;c[10224]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}}c[(ck()|0)>>2]=12;M=0;return M|0}function Gl(a){a=a|0;var 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,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;i=c[10222]|0;if(b>>>0>>0)Ga();d=c[a+-4>>2]|0;e=d&3;if((e|0)==1)Ga();o=d&-8;q=a+(o+-8)|0;do if(!(d&1)){b=c[b>>2]|0;if(!e)return;j=-8-b|0;l=a+j|0;m=b+o|0;if(l>>>0>>0)Ga();if((l|0)==(c[10223]|0)){b=a+(o+-4)|0;d=c[b>>2]|0;if((d&3|0)!=3){u=l;g=m;break}c[10220]=m;c[b>>2]=d&-2;c[a+(j+4)>>2]=m|1;c[q>>2]=m;return}f=b>>>3;if(b>>>0<256){e=c[a+(j+8)>>2]|0;d=c[a+(j+12)>>2]|0;b=40912+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0>>0)Ga();if((c[e+12>>2]|0)!=(l|0))Ga()}if((d|0)==(e|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();b=d+8|0;if((c[b>>2]|0)==(l|0))h=b;else Ga()}else h=d+8|0;c[e+12>>2]=d;c[h>>2]=e;u=l;g=m;break}h=c[a+(j+24)>>2]|0;e=c[a+(j+12)>>2]|0;do if((e|0)==(l|0)){d=a+(j+20)|0;b=c[d>>2]|0;if(!b){d=a+(j+16)|0;b=c[d>>2]|0;if(!b){k=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0>>0)Ga();else{c[d>>2]=0;k=b;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)Ga();b=f+12|0;if((c[b>>2]|0)!=(l|0))Ga();d=e+8|0;if((c[d>>2]|0)==(l|0)){c[b>>2]=e;c[d>>2]=f;k=e;break}else Ga()}while(0);if(h){b=c[a+(j+28)>>2]|0;d=41176+(b<<2)|0;if((l|0)==(c[d>>2]|0)){c[d>>2]=k;if(!k){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(l|0))c[b>>2]=k;else c[h+20>>2]=k;if(!k){u=l;g=m;break}}d=c[10222]|0;if(k>>>0>>0)Ga();c[k+24>>2]=h;b=c[a+(j+16)>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[k+16>>2]=b;c[b+24>>2]=k;break}while(0);b=c[a+(j+20)>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[k+20>>2]=b;c[b+24>>2]=k;u=l;g=m;break}else{u=l;g=m}}else{u=l;g=m}}else{u=b;g=o}while(0);if(u>>>0>=q>>>0)Ga();b=a+(o+-4)|0;d=c[b>>2]|0;if(!(d&1))Ga();if(!(d&2)){if((q|0)==(c[10224]|0)){t=(c[10221]|0)+g|0;c[10221]=t;c[10224]=u;c[u+4>>2]=t|1;if((u|0)!=(c[10223]|0))return;c[10223]=0;c[10220]=0;return}if((q|0)==(c[10223]|0)){t=(c[10220]|0)+g|0;c[10220]=t;c[10223]=u;c[u+4>>2]=t|1;c[u+t>>2]=t;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=c[a+(o+16)>>2]|0;b=c[a+(o|4)>>2]|0;do if((b|0)==(q|0)){d=a+(o+12)|0;b=c[d>>2]|0;if(!b){d=a+(o+8)|0;b=c[d>>2]|0;if(!b){p=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[d>>2]=0;p=b;break}}else{d=c[a+o>>2]|0;if(d>>>0<(c[10222]|0)>>>0)Ga();e=d+12|0;if((c[e>>2]|0)!=(q|0))Ga();f=b+8|0;if((c[f>>2]|0)==(q|0)){c[e>>2]=b;c[f>>2]=d;p=b;break}else Ga()}while(0);if(h){b=c[a+(o+20)>>2]|0;d=41176+(b<<2)|0;if((q|0)==(c[d>>2]|0)){c[d>>2]=p;if(!p){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(q|0))c[b>>2]=p;else c[h+20>>2]=p;if(!p)break}d=c[10222]|0;if(p>>>0>>0)Ga();c[p+24>>2]=h;b=c[a+(o+8)>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[p+16>>2]=b;c[b+24>>2]=p;break}while(0);b=c[a+(o+12)>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[p+20>>2]=b;c[b+24>>2]=p;break}}}else{e=c[a+o>>2]|0;d=c[a+(o|4)>>2]|0;b=40912+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0<(c[10222]|0)>>>0)Ga();if((c[e+12>>2]|0)!=(q|0))Ga()}if((d|0)==(e|0)){c[10218]=c[10218]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=d+8|0;if((c[b>>2]|0)==(q|0))n=b;else Ga()}else n=d+8|0;c[e+12>>2]=d;c[n>>2]=e}while(0);c[u+4>>2]=g|1;c[u+g>>2]=g;if((u|0)==(c[10223]|0)){c[10220]=g;return}}else{c[b>>2]=d&-2;c[u+4>>2]=g|1;c[u+g>>2]=g}b=g>>>3;if(g>>>0<256){d=b<<1;f=40912+(d<<2)|0;e=c[10218]|0;b=1<>2]|0;if(d>>>0<(c[10222]|0)>>>0)Ga();else{r=b;s=d}}else{c[10218]=e|b;r=40912+(d+2<<2)|0;s=f}c[r>>2]=u;c[s+12>>2]=u;c[u+8>>2]=s;c[u+12>>2]=f;return}b=g>>>8;if(b)if(g>>>0>16777215)f=31;else{r=(b+1048320|0)>>>16&8;s=b<>>16&4;s=s<>>16&2;f=14-(q|r|f)+(s<>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;b=41176+(f<<2)|0;c[u+28>>2]=f;c[u+20>>2]=0;c[u+16>>2]=0;d=c[10219]|0;e=1<>2]|0;b:do if((c[b+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=b+16+(f>>>31<<2)|0;e=c[d>>2]|0;if(!e)break;if((c[e+4>>2]&-8|0)==(g|0)){t=e;break b}else{f=f<<1;b=e}}if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[d>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;d=c[b>>2]|0;s=c[10222]|0;if(d>>>0>=s>>>0&t>>>0>=s>>>0){c[d+12>>2]=u;c[b>>2]=u;c[u+8>>2]=d;c[u+12>>2]=t;c[u+24>>2]=0;break}else Ga()}else{c[10219]=d|e;c[b>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u}while(0);u=(c[10226]|0)+-1|0;c[10226]=u;if(!u)b=41328;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[10226]=-1;return}function Hl(a,b){a=a|0;b=b|0;var d=0;if(a){d=$(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Fl(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;iw(b|0,0,d|0)|0;return b|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Fl(b)|0;return a|0}if(b>>>0>4294967231){c[(ck()|0)>>2]=12;a=0;return a|0}d=Jl(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d){a=d+8|0;return a|0}d=Fl(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;lw(d|0,a|0,(e>>>0>>0?e:b)|0)|0;Gl(a);a=d;return a|0}function Jl(a,b){a=a|0;b=b|0;var 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=a+4|0;p=c[o>>2]|0;j=p&-8;l=a+j|0;i=c[10222]|0;d=p&3;if(!((d|0)!=1&a>>>0>=i>>>0&a>>>0>>0))Ga();e=a+(j|4)|0;f=c[e>>2]|0;if(!(f&1))Ga();if(!d){if(b>>>0<256){a=0;return a|0}if(j>>>0>=(b+4|0)>>>0?(j-b|0)>>>0<=c[10338]<<1>>>0:0)return a|0;a=0;return a|0}if(j>>>0>=b>>>0){d=j-b|0;if(d>>>0<=15)return a|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|3;c[e>>2]=c[e>>2]|1;Kl(a+b|0,d);return a|0}if((l|0)==(c[10224]|0)){d=(c[10221]|0)+j|0;if(d>>>0<=b>>>0){a=0;return a|0}n=d-b|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|1;c[10224]=a+b;c[10221]=n;return a|0}if((l|0)==(c[10223]|0)){e=(c[10220]|0)+j|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|1;c[a+e>>2]=d;e=a+(e+4)|0;c[e>>2]=c[e>>2]&-2;e=a+b|0}else{c[o>>2]=p&1|e|2;e=a+(e+4)|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[10220]=d;c[10223]=e;return a|0}if(f&2){a=0;return a|0}m=(f&-8)+j|0;if(m>>>0>>0){a=0;return a|0}n=m-b|0;g=f>>>3;do if(f>>>0>=256){h=c[a+(j+24)>>2]|0;g=c[a+(j+12)>>2]|0;do if((g|0)==(l|0)){e=a+(j+20)|0;d=c[e>>2]|0;if(!d){e=a+(j+16)|0;d=c[e>>2]|0;if(!d){k=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;k=d;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)Ga();d=f+12|0;if((c[d>>2]|0)!=(l|0))Ga();e=g+8|0;if((c[e>>2]|0)==(l|0)){c[d>>2]=g;c[e>>2]=f;k=g;break}else Ga()}while(0);if(h){d=c[a+(j+28)>>2]|0;e=41176+(d<<2)|0;if((l|0)==(c[e>>2]|0)){c[e>>2]=k;if(!k){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=h+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=k;else c[h+20>>2]=k;if(!k)break}e=c[10222]|0;if(k>>>0>>0)Ga();c[k+24>>2]=h;d=c[a+(j+16)>>2]|0;do if(d)if(d>>>0>>0)Ga();else{c[k+16>>2]=d;c[d+24>>2]=k;break}while(0);d=c[a+(j+20)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[k+20>>2]=d;c[d+24>>2]=k;break}}}else{f=c[a+(j+8)>>2]|0;e=c[a+(j+12)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(l|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(l|0))h=d;else Ga()}else h=e+8|0;c[f+12>>2]=e;c[h>>2]=f}while(0);if(n>>>0<16){c[o>>2]=m|p&1|2;b=a+(m|4)|0;c[b>>2]=c[b>>2]|1;return a|0}else{c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|3;p=a+(m|4)|0;c[p>>2]=c[p>>2]|1;Kl(a+b|0,n);return a|0}return 0}function Kl(a,b){a=a|0;b=b|0;var 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;q=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){k=c[a>>2]|0;if(!(d&3))return;n=a+(0-k)|0;m=k+b|0;j=c[10222]|0;if(n>>>0>>0)Ga();if((n|0)==(c[10223]|0)){e=a+(b+4)|0;d=c[e>>2]|0;if((d&3|0)!=3){t=n;h=m;break}c[10220]=m;c[e>>2]=d&-2;c[a+(4-k)>>2]=m|1;c[q>>2]=m;return}g=k>>>3;if(k>>>0<256){f=c[a+(8-k)>>2]|0;e=c[a+(12-k)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(n|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(n|0))i=d;else Ga()}else i=e+8|0;c[f+12>>2]=e;c[i>>2]=f;t=n;h=m;break}i=c[a+(24-k)>>2]|0;f=c[a+(12-k)>>2]|0;do if((f|0)==(n|0)){f=16-k|0;e=a+(f+4)|0;d=c[e>>2]|0;if(!d){e=a+f|0;d=c[e>>2]|0;if(!d){l=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;l=d;break}}else{g=c[a+(8-k)>>2]|0;if(g>>>0>>0)Ga();d=g+12|0;if((c[d>>2]|0)!=(n|0))Ga();e=f+8|0;if((c[e>>2]|0)==(n|0)){c[d>>2]=f;c[e>>2]=g;l=f;break}else Ga()}while(0);if(i){d=c[a+(28-k)>>2]|0;e=41176+(d<<2)|0;if((n|0)==(c[e>>2]|0)){c[e>>2]=l;if(!l){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=i+16|0;if((c[d>>2]|0)==(n|0))c[d>>2]=l;else c[i+20>>2]=l;if(!l){t=n;h=m;break}}f=c[10222]|0;if(l>>>0>>0)Ga();c[l+24>>2]=i;d=16-k|0;e=c[a+d>>2]|0;do if(e)if(e>>>0>>0)Ga();else{c[l+16>>2]=e;c[e+24>>2]=l;break}while(0);d=c[a+(d+4)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[l+20>>2]=d;c[d+24>>2]=l;t=n;h=m;break}else{t=n;h=m}}else{t=n;h=m}}else{t=a;h=b}while(0);j=c[10222]|0;if(q>>>0>>0)Ga();d=a+(b+4)|0;e=c[d>>2]|0;if(!(e&2)){if((q|0)==(c[10224]|0)){s=(c[10221]|0)+h|0;c[10221]=s;c[10224]=t;c[t+4>>2]=s|1;if((t|0)!=(c[10223]|0))return;c[10223]=0;c[10220]=0;return}if((q|0)==(c[10223]|0)){s=(c[10220]|0)+h|0;c[10220]=s;c[10223]=t;c[t+4>>2]=s|1;c[t+s>>2]=s;return}h=(e&-8)+h|0;g=e>>>3;do if(e>>>0>=256){i=c[a+(b+24)>>2]|0;f=c[a+(b+12)>>2]|0;do if((f|0)==(q|0)){e=a+(b+20)|0;d=c[e>>2]|0;if(!d){e=a+(b+16)|0;d=c[e>>2]|0;if(!d){p=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;p=d;break}}else{g=c[a+(b+8)>>2]|0;if(g>>>0>>0)Ga();d=g+12|0;if((c[d>>2]|0)!=(q|0))Ga();e=f+8|0;if((c[e>>2]|0)==(q|0)){c[d>>2]=f;c[e>>2]=g;p=f;break}else Ga()}while(0);if(i){d=c[a+(b+28)>>2]|0;e=41176+(d<<2)|0;if((q|0)==(c[e>>2]|0)){c[e>>2]=p;if(!p){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=i+16|0;if((c[d>>2]|0)==(q|0))c[d>>2]=p;else c[i+20>>2]=p;if(!p)break}e=c[10222]|0;if(p>>>0>>0)Ga();c[p+24>>2]=i;d=c[a+(b+16)>>2]|0;do if(d)if(d>>>0>>0)Ga();else{c[p+16>>2]=d;c[d+24>>2]=p;break}while(0);d=c[a+(b+20)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[p+20>>2]=d;c[d+24>>2]=p;break}}}else{f=c[a+(b+8)>>2]|0;e=c[a+(b+12)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(q|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(q|0))o=d;else Ga()}else o=e+8|0;c[f+12>>2]=e;c[o>>2]=f}while(0);c[t+4>>2]=h|1;c[t+h>>2]=h;if((t|0)==(c[10223]|0)){c[10220]=h;return}}else{c[d>>2]=e&-2;c[t+4>>2]=h|1;c[t+h>>2]=h}d=h>>>3;if(h>>>0<256){e=d<<1;g=40912+(e<<2)|0;f=c[10218]|0;d=1<>2]|0;if(e>>>0<(c[10222]|0)>>>0)Ga();else{r=d;s=e}}else{c[10218]=f|d;r=40912+(e+2<<2)|0;s=g}c[r>>2]=t;c[s+12>>2]=t;c[t+8>>2]=s;c[t+12>>2]=g;return}d=h>>>8;if(d)if(h>>>0>16777215)g=31;else{r=(d+1048320|0)>>>16&8;s=d<>>16&4;s=s<>>16&2;g=14-(q|r|g)+(s<>>15)|0;g=h>>>(g+7|0)&1|g<<1}else g=0;d=41176+(g<<2)|0;c[t+28>>2]=g;c[t+20>>2]=0;c[t+16>>2]=0;e=c[10219]|0;f=1<>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}d=c[d>>2]|0;a:do if((c[d+4>>2]&-8|0)!=(h|0)){g=h<<((g|0)==31?0:25-(g>>>1)|0);while(1){e=d+16+(g>>>31<<2)|0;f=c[e>>2]|0;if(!f)break;if((c[f+4>>2]&-8|0)==(h|0)){d=f;break a}else{g=g<<1;d=f}}if(e>>>0<(c[10222]|0)>>>0)Ga();c[e>>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}while(0);e=d+8|0;f=c[e>>2]|0;s=c[10222]|0;if(!(f>>>0>=s>>>0&d>>>0>=s>>>0))Ga();c[f+12>>2]=t;c[e>>2]=t;c[t+8>>2]=f;c[t+12>>2]=d;c[t+24>>2]=0;return}function Ll(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=c[9321]|0;Pl(42048,e,42104);c[10342]=42892;c[10344]=42912;c[10343]=0;a=c[10720]|0;o=0;ia(62,41368+a|0,42048);g=o;o=0;if(g&1){g=Na()|0;fn(41376);Ya(g|0)}c[41368+(a+72)>>2]=0;c[41368+(a+76)>>2]=-1;f=c[9322]|0;Ql(42152,f,42112);c[10364]=42972;c[10365]=42992;d=c[10740]|0;o=0;ia(62,41456+d|0,42152);g=o;o=0;if(g&1){g=Na()|0;fn(41460);Ya(g|0)}a=d+72|0;c[41456+a>>2]=0;b=d+76|0;c[41456+b>>2]=-1;g=c[9320]|0;Ql(42200,g,42120);c[10385]=42972;c[10386]=42992;o=0;ia(62,41540+d|0,42200);h=o;o=0;if(h&1){h=Na()|0;fn(41544);Ya(h|0)}c[41540+a>>2]=0;c[41540+b>>2]=-1;h=c[41540+((c[(c[10385]|0)+-12>>2]|0)+24)>>2]|0;c[10406]=42972;c[10407]=42992;o=0;ia(62,41624+d|0,h|0);h=o;o=0;if(h&1){h=Na()|0;fn(41628);Ya(h|0)}c[41624+a>>2]=0;c[41624+b>>2]=-1;c[41368+((c[(c[10342]|0)+-12>>2]|0)+72)>>2]=41456;a=41540+((c[(c[10385]|0)+-12>>2]|0)+4)|0;c[a>>2]=c[a>>2]|8192;c[41540+((c[(c[10385]|0)+-12>>2]|0)+72)>>2]=41456;Rl(42248,e,42128);c[10427]=42932;c[10429]=42952;c[10428]=0;a=c[10730]|0;o=0;ia(62,41708+a|0,42248);h=o;o=0;if(h&1){h=Na()|0;ln(41716);Ya(h|0)}c[41708+(a+72)>>2]=0;c[41708+(a+76)>>2]=-1;Sl(42304,f,42136);c[10449]=43012;c[10450]=43032;d=c[10750]|0;o=0;ia(62,41796+d|0,42304);h=o;o=0;if(h&1){h=Na()|0;ln(41800);Ya(h|0)}a=d+72|0;c[41796+a>>2]=0;b=d+76|0;c[41796+b>>2]=-1;Sl(42352,g,42144);c[10470]=43012;c[10471]=43032;o=0;ia(62,41880+d|0,42352);h=o;o=0;if(h&1){h=Na()|0;ln(41884);Ya(h|0)}c[41880+a>>2]=0;c[41880+b>>2]=-1;h=c[41880+((c[(c[10470]|0)+-12>>2]|0)+24)>>2]|0;c[10491]=43012;c[10492]=43032;o=0;ia(62,41964+d|0,h|0);h=o;o=0;if(h&1){h=Na()|0;ln(41968);Ya(h|0)}else{c[41964+a>>2]=0;c[41964+b>>2]=-1;c[41708+((c[(c[10427]|0)+-12>>2]|0)+72)>>2]=41796;h=41880+((c[(c[10470]|0)+-12>>2]|0)+4)|0;c[h>>2]=c[h>>2]|8192;c[41880+((c[(c[10470]|0)+-12>>2]|0)+72)>>2]=41796;return}}function Ml(a){a=a|0;o=0;ka(70,41456)|0;a=o;o=0;if(((!(a&1)?(o=0,ka(70,41624)|0,a=o,o=0,!(a&1)):0)?(o=0,ka(71,41796)|0,a=o,o=0,!(a&1)):0)?(o=0,ka(71,41964)|0,a=o,o=0,!(a&1)):0)return;a=Na(0)|0;ec(a)}function Nl(){Ll(0);kb(187,56757,n|0)|0;return}function Ol(){return}function Pl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;pn(b);c[b>>2]=42600;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;ia(23,b|0,f|0);e=o;o=0;if(e&1){h=Na()|0;Gs(f);nn(b);Ya(h|0)}else{Gs(f);i=g;return}}function Ql(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;pn(b);c[b>>2]=42536;c[b+32>>2]=d;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;d=ra(37,f|0,44280)|0;h=o;o=0;if(h&1){h=Na()|0;Gs(f);nn(b);Ya(h|0)}else{Gs(f);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;i=g;return}}function Rl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;En(b);c[b>>2]=42472;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;ia(21,b|0,f|0);e=o;o=0;if(e&1){h=Na()|0;Gs(f);Cn(b);Ya(h|0)}else{Gs(f);i=g;return}}function Sl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;En(b);c[b>>2]=42408;c[b+32>>2]=d;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;d=ra(37,f|0,44288)|0;h=o;o=0;if(h&1){h=Na()|0;Gs(f);Cn(b);Ya(h|0)}else{Gs(f);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;i=g;return}}function Tl(a){a=a|0;Cn(a);cj(a);return}function Ul(b,d){b=b|0;d=d|0;Eb[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Is(d,44288)|0;c[b+36>>2]=d;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l;d=a+36|0;e=a+40|0;f=j+8|0;g=j;b=a+32|0;a:while(1){a=c[d>>2]|0;a=Mb[c[(c[a>>2]|0)+20>>2]&31](a,c[e>>2]|0,j,f,h)|0;m=(c[h>>2]|0)-g|0;if((Yk(j,1,m,c[b>>2]|0)|0)!=(m|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{k=4;break a}}}if((k|0)==4)a=((Vk(c[b>>2]|0)|0)!=0)<<31>>31;i=l;return a|0}function Wl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;a:do if(!(a[b+44>>0]|0))if((e|0)>0){f=d;d=0;while(1){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,c[f>>2]|0)|0)==-1)break a;d=d+1|0;if((d|0)<(e|0))f=f+4|0;else break}}else d=0;else d=Yk(d,4,e,c[b+32>>2]|0)|0;while(0);return d|0}function Xl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;p=s+16|0;e=s+8|0;o=s+4|0;n=s;q=(d|0)==-1;a:do if(!q){c[e>>2]=d;if(a[b+44>>0]|0)if((Yk(e,4,1,c[b+32>>2]|0)|0)==1){r=11;break}else{e=-1;break}c[o>>2]=p;l=e+4|0;m=b+36|0;g=b+40|0;h=p+8|0;j=p;k=b+32|0;while(1){b=c[m>>2]|0;b=Sb[c[(c[b>>2]|0)+12>>2]&15](b,c[g>>2]|0,e,l,n,p,h,o)|0;if((c[n>>2]|0)==(e|0)){e=-1;break a}if((b|0)==3)break;f=(b|0)==1;if(b>>>0>=2){e=-1;break a}b=(c[o>>2]|0)-j|0;if((Yk(p,1,b,c[k>>2]|0)|0)!=(b|0)){e=-1;break a}if(f)e=f?c[n>>2]|0:e;else{r=11;break a}}if((Yk(e,1,1,c[k>>2]|0)|0)!=1)e=-1;else r=11}else r=11;while(0);if((r|0)==11)e=q?0:d;i=s;return e|0}function Yl(b,d){b=b|0;d=d|0;var e=0,f=0;f=Is(d,44288)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=Eb[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(Eb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)Rr(56783);return}function Zl(a){a=a|0;Cn(a);cj(a);return}function _l(a){a=a|0;return bm(a,0)|0}function $l(a){a=a|0;return bm(a,1)|0}function am(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+16|0;k=m+8|0;f=m+4|0;g=m;h=b+52|0;e=(a[h>>0]|0)!=0;a:do if((d|0)==-1)if(e)d=-1;else{d=c[b+48>>2]|0;a[h>>0]=(d|0)!=-1&1}else{j=b+48|0;b:do if(e){c[f>>2]=c[j>>2];e=c[b+36>>2]|0;switch(Sb[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+4|0,g,l,l+8|0,k)|0){case 1:case 2:{d=-1;break a}case 3:{a[l>>0]=c[j>>2];c[k>>2]=l+1;break}default:{}}e=b+32|0;while(1){f=c[k>>2]|0;if(f>>>0<=l>>>0)break b;b=f+-1|0;c[k>>2]=b;if((al(a[b>>0]|0,c[e>>2]|0)|0)==-1){d=-1;break a}}}while(0);c[j>>2]=d;a[h>>0]=1}while(0);i=m;return d|0}function bm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=i;i=i+32|0;q=r+16|0;p=r+8|0;m=r+4|0;n=r;g=b+52|0;a:do if(a[g>>0]|0){f=b+48|0;e=c[f>>2]|0;if(d){c[f>>2]=-1;a[g>>0]=0}}else{e=c[b+44>>2]|0;e=(e|0)>1?e:1;o=b+32|0;if((e|0)>0){g=0;do{f=Zk(c[o>>2]|0)|0;if((f|0)==-1){e=-1;break a}a[q+g>>0]=f;g=g+1|0}while((g|0)<(e|0))}b:do if(!(a[b+53>>0]|0)){j=b+40|0;k=b+36|0;l=p+4|0;c:while(1){s=c[j>>2]|0;g=s;f=c[g>>2]|0;g=c[g+4>>2]|0;t=c[k>>2]|0;h=q+e|0;switch(Sb[c[(c[t>>2]|0)+16>>2]&15](t,s,q,h,m,p,l,n)|0){case 2:{e=-1;break a}case 3:break c;case 1:break;default:break b}t=c[j>>2]|0;c[t>>2]=f;c[t+4>>2]=g;if((e|0)==8){e=-1;break a}f=Zk(c[o>>2]|0)|0;if((f|0)==-1){e=-1;break a}a[h>>0]=f;e=e+1|0}c[p>>2]=a[q>>0]}else c[p>>2]=a[q>>0];while(0);if(d){e=c[p>>2]|0;c[b+48>>2]=e;break}while(1){if((e|0)<=0)break;e=e+-1|0;if((al(a[q+e>>0]|0,c[o>>2]|0)|0)==-1){e=-1;break a}}e=c[p>>2]|0}while(0);i=r;return e|0}function cm(a){a=a|0;nn(a);cj(a);return}function dm(b,d){b=b|0;d=d|0;Eb[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Is(d,44280)|0;c[b+36>>2]=d;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function em(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l;d=a+36|0;e=a+40|0;f=j+8|0;g=j;b=a+32|0;a:while(1){a=c[d>>2]|0;a=Mb[c[(c[a>>2]|0)+20>>2]&31](a,c[e>>2]|0,j,f,h)|0;m=(c[h>>2]|0)-g|0;if((Yk(j,1,m,c[b>>2]|0)|0)!=(m|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{k=4;break a}}}if((k|0)==4)a=((Vk(c[b>>2]|0)|0)!=0)<<31>>31;i=l;return a|0}function fm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0;a:do if(!(a[b+44>>0]|0))if((f|0)>0){g=e;e=0;while(1){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,d[g>>0]|0)|0)==-1)break a;e=e+1|0;if((e|0)<(f|0))g=g+1|0;else break}}else e=0;else e=Yk(e,1,f,c[b+32>>2]|0)|0;while(0);return e|0}function gm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;p=s+16|0;e=s+8|0;o=s+4|0;n=s;q=(d|0)==-1;a:do if(!q){a[e>>0]=d;if(a[b+44>>0]|0)if((Yk(e,1,1,c[b+32>>2]|0)|0)==1){r=11;break}else{e=-1;break}c[o>>2]=p;m=e+1|0;g=b+36|0;h=b+40|0;j=p+8|0;k=p;l=b+32|0;while(1){b=c[g>>2]|0;b=Sb[c[(c[b>>2]|0)+12>>2]&15](b,c[h>>2]|0,e,m,n,p,j,o)|0;if((c[n>>2]|0)==(e|0)){e=-1;break a}if((b|0)==3)break;f=(b|0)==1;if(b>>>0>=2){e=-1;break a}b=(c[o>>2]|0)-k|0;if((Yk(p,1,b,c[l>>2]|0)|0)!=(b|0)){e=-1;break a}if(f)e=f?c[n>>2]|0:e;else{r=11;break a}}if((Yk(e,1,1,c[l>>2]|0)|0)!=1)e=-1;else r=11}else r=11;while(0);if((r|0)==11)e=q?0:d;i=s;return e|0}function hm(b,d){b=b|0;d=d|0;var e=0,f=0;f=Is(d,44280)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=Eb[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(Eb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)Rr(56783);return}function im(a){a=a|0;nn(a);cj(a);return}function jm(a){a=a|0;return mm(a,0)|0}function km(a){a=a|0;return mm(a,1)|0}function lm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+16|0;k=m+4|0;f=m+8|0;g=m;h=b+52|0;e=(a[h>>0]|0)!=0;a:do if((d|0)==-1)if(e)d=-1;else{d=c[b+48>>2]|0;a[h>>0]=(d|0)!=-1&1}else{j=b+48|0;b:do if(e){a[f>>0]=c[j>>2];e=c[b+36>>2]|0;switch(Sb[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+1|0,g,l,l+8|0,k)|0){case 1:case 2:{d=-1;break a}case 3:{a[l>>0]=c[j>>2];c[k>>2]=l+1;break}default:{}}e=b+32|0;while(1){f=c[k>>2]|0;if(f>>>0<=l>>>0)break b;b=f+-1|0;c[k>>2]=b;if((al(a[b>>0]|0,c[e>>2]|0)|0)==-1){d=-1;break a}}}while(0);c[j>>2]=d;a[h>>0]=1}while(0);i=m;return d|0}function mm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+32|0;r=s+16|0;q=s+8|0;n=s+4|0;o=s;h=b+52|0;a:do if(a[h>>0]|0){g=b+48|0;f=c[g>>2]|0;if(e){c[g>>2]=-1;a[h>>0]=0}}else{f=c[b+44>>2]|0;f=(f|0)>1?f:1;p=b+32|0;if((f|0)>0){h=0;do{g=Zk(c[p>>2]|0)|0;if((g|0)==-1){f=-1;break a}a[r+h>>0]=g;h=h+1|0}while((h|0)<(f|0))}b:do if(!(a[b+53>>0]|0)){k=b+40|0;l=b+36|0;m=q+1|0;c:while(1){t=c[k>>2]|0;h=t;g=c[h>>2]|0;h=c[h+4>>2]|0;u=c[l>>2]|0;j=r+f|0;switch(Sb[c[(c[u>>2]|0)+16>>2]&15](u,t,r,j,n,q,m,o)|0){case 2:{f=-1;break a}case 3:break c;case 1:break;default:break b}u=c[k>>2]|0;c[u>>2]=g;c[u+4>>2]=h;if((f|0)==8){f=-1;break a}g=Zk(c[p>>2]|0)|0;if((g|0)==-1){f=-1;break a}a[j>>0]=g;f=f+1|0}a[q>>0]=a[r>>0]|0}else a[q>>0]=a[r>>0]|0;while(0);if(e){f=a[q>>0]|0;c[b+48>>2]=f&255}else{while(1){if((f|0)<=0)break;f=f+-1|0;if((al(d[r+f>>0]|0,c[p>>2]|0)|0)==-1){f=-1;break a}}f=a[q>>0]|0}f=f&255}while(0);i=s;return f|0}function nm(a){a=a|0;return}function om(a){a=a|0;a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;return}function pm(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(!b){Bb[c[(c[a>>2]|0)+8>>2]&255](a);a=1}else a=0;return a|0}function qm(b,d){b=b|0;d=d|0;c[b>>2]=36868;o=0;ia(86,b+4|0,((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0)|0);b=o;o=0;if(b&1){b=Na()|0;Ya(b|0)}else return}function rm(a,b){a=a|0;b=b|0;c[a>>2]=36868;o=0;ia(86,a+4|0,b|0);a=o;o=0;if(a&1){a=Na()|0;Ya(a|0)}else return}function sm(a,b){a=a|0;b=b|0;var d=0,e=0;e=nl(b)|0;d=bj(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=d+12|0;lw(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function tm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function um(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;Qb[c[(c[a>>2]|0)+12>>2]&15](e,a,b);if((c[e+4>>2]|0)==(c[d+4>>2]|0))e=(c[e>>2]|0)==(c[d>>2]|0);else e=0;i=f;return e|0}function vm(a,b,d){a=a|0;b=b|0;d=d|0;return ((c[b>>2]|0)==(d|0)?(c[b+4>>2]|0)==(a|0):0)|0}function wm(a,b,c){a=a|0;b=b|0;c=c|0;b=dk(c)|0;Gm(a,b,nl(b)|0);return}function xm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;f=c[d>>2]|0;do if(f){g=a[e>>0]|0;if(!(g&1))g=(g&255)>>>1;else g=c[e+4>>2]|0;if(g){Pm(e,56990)|0;f=c[d>>2]|0}d=c[d+4>>2]|0;Qb[c[(c[d>>2]|0)+24>>2]&15](h,d,f);d=a[h>>0]|0;g=(d&1)==0;o=0;ma(30,e|0,(g?h+1|0:c[h+8>>2]|0)|0,(g?(d&255)>>>1:c[h+4>>2]|0)|0)|0;d=o;o=0;if(d&1){j=Na()|0;Im(h);Ya(j|0)}else{Im(h);break}}while(0);c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;i=j;return}function ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;e=f+12|0;g=f;Gm(g,d,nl(d)|0);o=0;wa(10,e|0,b|0,g|0);d=o;o=0;do if(!(d&1)){o=0;ia(87,a|0,e|0);d=o;o=0;if(d&1){f=Na()|0;Im(e);e=f;break}else{Im(e);Im(g);c[a>>2]=42664;d=c[b+4>>2]|0;g=a+8|0;c[g>>2]=c[b>>2];c[g+4>>2]=d;i=f;return}}else e=Na()|0;while(0);Im(g);Ya(e|0)}function zm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+48|0;f=g+24|0;j=g+16|0;h=g;c[j>>2]=b;c[j+4>>2]=d;Fm(h,e);o=0;wa(10,f|0,j|0,h|0);e=o;o=0;do if(!(e&1)){o=0;ia(87,a|0,f|0);j=o;o=0;if(j&1){j=Na()|0;Im(f);f=j;break}else{Im(f);Im(h);c[a>>2]=42664;c[a+8>>2]=b;c[a+12>>2]=d;i=g;return}}else f=Na()|0;while(0);Im(h);Ya(f|0)}function Am(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+48|0;e=f+24|0;h=f+16|0;g=f;c[h>>2]=b;c[h+4>>2]=d;Gm(g,58898,0);o=0;wa(10,e|0,h|0,g|0);h=o;o=0;do if(!(h&1)){o=0;ia(87,a|0,e|0);h=o;o=0;if(h&1){h=Na()|0;Im(e);e=h;break}else{Im(e);Im(g);c[a>>2]=42664;c[a+8>>2]=b;c[a+12>>2]=d;i=f;return}}else e=Na()|0;while(0);Im(g);Ya(e|0)}function Bm(a){a=a|0;mj(a);return}function Cm(a){a=a|0;mj(a);cj(a);return}function Dm(a){a=a|0;return}function Em(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;rb(42676)|0;if((c[a>>2]|0)==1)do Da(42704,42676)|0;while((c[a>>2]|0)==1);do if(!(c[a>>2]|0)){c[a>>2]=1;o=0;ka(72,42676)|0;e=o;o=0;if((((!(e&1)?(o=0,ha(d|0,b|0),e=o,o=0,!(e&1)):0)?(o=0,ka(73,42676)|0,e=o,o=0,!(e&1)):0)?(c[a>>2]=-1,o=0,ka(72,42676)|0,e=o,o=0,!(e&1)):0)?(o=0,ka(74,42704)|0,e=o,o=0,!(e&1)):0)break;e=Na(0)|0;Va(e|0)|0;o=0;ka(73,42676)|0;e=o;o=0;if((!(e&1)?(c[a>>2]=0,o=0,ka(72,42676)|0,e=o,o=0,!(e&1)):0)?(o=0,ka(74,42704)|0,e=o,o=0,!(e&1)):0){o=0;xa(5);o=0}b=Na()|0;o=0;xa(3);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)}else Ya(b|0)}else cb(42676)|0;while(0);return}function Fm(b,d){b=b|0;d=d|0;if(!(a[d>>0]&1)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}else Gm(b,c[d+8>>2]|0,c[d+4>>2]|0);return}function Gm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>4294967279)_i(b);if(e>>>0<11){a[b>>0]=e<<1;b=b+1|0}else{g=e+16&-16;f=bj(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f}lw(b|0,d|0,e|0)|0;a[b+e>>0]=0;return}function Hm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>4294967279)_i(b);if(d>>>0<11){a[b>>0]=d<<1;b=b+1|0}else{g=d+16&-16;f=bj(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}iw(b|0,e|0,d|0)|0;a[b+d>>0]=0;return}function Im(b){b=b|0;if(a[b>>0]&1)cj(c[b+8>>2]|0);return}function Jm(b,d){b=b|0;d=d|0;var e=0,f=0;if((b|0)!=(d|0)){e=a[d>>0]|0;f=(e&1)==0;Lm(b,f?d+1|0:c[d+8>>2]|0,f?(e&255)>>>1:c[d+4>>2]|0)|0}return b|0}function Km(a,b){a=a|0;b=b|0;return Lm(a,b,nl(b)|0)|0}function Lm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))h=10;else{f=c[b>>2]|0;h=(f&-2)+-1|0;f=f&255}g=(f&1)==0;do if(h>>>0>=e>>>0){if(g)f=b+1|0;else f=c[b+8>>2]|0;nw(f|0,d|0,e|0)|0;a[f+e>>0]=0;if(!(a[b>>0]&1)){a[b>>0]=e<<1;break}else{c[b+4>>2]=e;break}}else{if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;Sm(b,h,e-h|0,f,0,f,e,d)}while(0);return b|0}function Mm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b>>0]|0;g=(f&1)==0;if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;do if(f>>>0>=d>>>0)if(g){a[b+1+d>>0]=0;a[b>>0]=d<<1;break}else{a[(c[b+8>>2]|0)+d>>0]=0;c[b+4>>2]=d;break}else Nm(b,d-f|0,e)|0;while(0);return}function Nm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(d){f=a[b>>0]|0;if(!(f&1))g=10;else{f=c[b>>2]|0;g=(f&-2)+-1|0;f=f&255}if(!(f&1))h=(f&255)>>>1;else h=c[b+4>>2]|0;if((g-h|0)>>>0>>0){Tm(b,g,d-g+h|0,h,h,0,0);f=a[b>>0]|0}if(!(f&1))g=b+1|0;else g=c[b+8>>2]|0;iw(g+h|0,e|0,d|0)|0;f=h+d|0;if(!(a[b>>0]&1))a[b>>0]=f<<1;else c[b+4>>2]=f;a[g+f>>0]=0}return b|0}function Om(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d>>>0>4294967279)_i(b);e=a[b>>0]|0;if(!(e&1))f=10;else{e=c[b>>2]|0;f=(e&-2)+-1|0;e=e&255}if(!(e&1))j=(e&255)>>>1;else j=c[b+4>>2]|0;d=j>>>0>d>>>0?j:d;if(d>>>0<11)i=10;else i=(d+16&-16)+-1|0;a:do if((i|0)!=(f|0)){do if((i|0)!=10){d=i+1|0;if(i>>>0<=f>>>0){o=0;d=ka(67,d|0)|0;h=o;o=0;if(h&1){b=Na(0)|0;Va(b|0)|0;Xa();break a}}else d=bj(d)|0;if(!(e&1)){f=1;g=b+1|0;h=0;break}else{f=1;g=c[b+8>>2]|0;h=1;break}}else{d=b+1|0;f=0;g=c[b+8>>2]|0;h=1}while(0);if(!(e&1))e=(e&255)>>>1;else e=c[b+4>>2]|0;lw(d|0,g|0,e+1|0)|0;if(h)cj(g);if(f){c[b>>2]=i+1|1;c[b+4>>2]=j;c[b+8>>2]=d;break}else{a[b>>0]=j<<1;break}}while(0);return}function Pm(a,b){a=a|0;b=b|0;return Rm(a,b,nl(b)|0)|0}function Qm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a[b>>0]|0;f=(e&1)!=0;if(f){g=(c[b>>2]&-2)+-1|0;h=c[b+4>>2]|0}else{g=10;h=(e&255)>>>1}if((h|0)==(g|0)){Tm(b,g,1,g,g,0,0);if(!(a[b>>0]&1))g=7;else g=8}else if(f)g=8;else g=7;if((g|0)==7){a[b>>0]=(h<<1)+2;e=b+1|0;f=h+1|0}else if((g|0)==8){e=c[b+8>>2]|0;f=h+1|0;c[b+4>>2]=f}a[e+h>>0]=d;a[e+f>>0]=0;return}function Rm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))g=10;else{f=c[b>>2]|0;g=(f&-2)+-1|0;f=f&255}if(!(f&1))h=(f&255)>>>1;else h=c[b+4>>2]|0;if((g-h|0)>>>0>=e>>>0){if(e){if(!(f&1))g=b+1|0;else g=c[b+8>>2]|0;lw(g+h|0,d|0,e|0)|0;f=h+e|0;if(!(a[b>>0]&1))a[b>>0]=f<<1;else c[b+4>>2]=f;a[g+f>>0]=0}}else Sm(b,g,e-g+h|0,h,h,0,e,d);return b|0}function Sm(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))m=b+1|0;else m=c[b+8>>2]|0;if(d>>>0<2147483623){k=e+d|0;l=d<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=bj(k)|0;if(g)lw(l|0,m|0,g|0)|0;if(i)lw(l+g|0,j|0,i|0)|0;e=f-h|0;if((e|0)!=(g|0))lw(l+(i+g)|0,m+(h+g)|0,e-g|0)|0;if((d|0)!=10)cj(m);c[b+8>>2]=l;c[b>>2]=k|1;d=e+i|0;c[b+4>>2]=d;a[l+d>>0]=0;return}function Tm(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))l=b+1|0;else l=c[b+8>>2]|0;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=bj(j)|0;if(g)lw(k|0,l|0,g|0)|0;e=f-h|0;if((e|0)!=(g|0))lw(k+(i+g)|0,l+(h+g)|0,e-g|0)|0;if((d|0)!=10)cj(l);c[b+8>>2]=k;c[b>>2]=j|1;return}function Um(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>1073741807)_i(b);if(e>>>0<2){a[b>>0]=e<<1;b=b+4|0}else{g=e+4&-4;f=bj(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f}ql(b,d,e)|0;c[b+(e<<2)>>2]=0;return}function Vm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>1073741807)_i(b);if(d>>>0<2){a[b>>0]=d<<1;b=b+4|0}else{g=d+4&-4;f=bj(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}sl(b,e,d)|0;c[b+(d<<2)>>2]=0;return}function Wm(b){b=b|0;if(a[b>>0]&1)cj(c[b+8>>2]|0);return}function Xm(a,b){a=a|0;b=b|0;return Ym(a,b,pl(b)|0)|0}function Ym(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))h=1;else{f=c[b>>2]|0;h=(f&-2)+-1|0;f=f&255}g=(f&1)==0;do if(h>>>0>=e>>>0){if(g)f=b+4|0;else f=c[b+8>>2]|0;rl(f,d,e)|0;c[f+(e<<2)>>2]=0;if(!(a[b>>0]&1)){a[b>>0]=e<<1;break}else{c[b+4>>2]=e;break}}else{if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;$m(b,h,e-h|0,f,0,f,e,d)}while(0);return b|0}function Zm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d>>>0>1073741807)_i(b);e=a[b>>0]|0;if(!(e&1))f=1;else{e=c[b>>2]|0;f=(e&-2)+-1|0;e=e&255}if(!(e&1))j=(e&255)>>>1;else j=c[b+4>>2]|0;d=j>>>0>d>>>0?j:d;if(d>>>0<2)i=1;else i=(d+4&-4)+-1|0;a:do if((i|0)!=(f|0)){do if((i|0)!=1){d=(i<<2)+4|0;if(i>>>0<=f>>>0){o=0;d=ka(67,d|0)|0;h=o;o=0;if(h&1){b=Na(0)|0;Va(b|0)|0;Xa();break a}}else d=bj(d)|0;if(!(e&1)){f=1;g=b+4|0;h=0;break}else{f=1;g=c[b+8>>2]|0;h=1;break}}else{d=b+4|0;f=0;g=c[b+8>>2]|0;h=1}while(0);if(!(e&1))e=(e&255)>>>1;else e=c[b+4>>2]|0;ql(d,g,e+1|0)|0;if(h)cj(g);if(f){c[b>>2]=i+1|1;c[b+4>>2]=j;c[b+8>>2]=d;break}else{a[b>>0]=j<<1;break}}while(0);return}function _m(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a[b>>0]|0;f=(e&1)!=0;if(f){g=(c[b>>2]&-2)+-1|0;h=c[b+4>>2]|0}else{g=1;h=(e&255)>>>1}if((h|0)==(g|0)){an(b,g,1,g,g,0,0);if(!(a[b>>0]&1))g=7;else g=8}else if(f)g=8;else g=7;if((g|0)==7){a[b>>0]=(h<<1)+2;e=b+4|0;f=h+1|0}else if((g|0)==8){e=c[b+8>>2]|0;f=h+1|0;c[b+4>>2]=f}c[e+(h<<2)>>2]=d;c[e+(f<<2)>>2]=0;return}function $m(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((1073741806-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))m=b+4|0;else m=c[b+8>>2]|0;if(d>>>0<536870887){k=e+d|0;l=d<<1;k=k>>>0>>0?l:k;k=k>>>0<2?2:k+4&-4}else k=1073741807;l=bj(k<<2)|0;if(g)ql(l,m,g)|0;if(i)ql(l+(g<<2)|0,j,i)|0;e=f-h|0;if((e|0)!=(g|0))ql(l+(i+g<<2)|0,m+(h+g<<2)|0,e-g|0)|0;if((d|0)!=1)cj(m);c[b+8>>2]=l;c[b>>2]=k|1;d=e+i|0;c[b+4>>2]=d;c[l+(d<<2)>>2]=0;return}function an(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((1073741807-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))l=b+4|0;else l=c[b+8>>2]|0;if(d>>>0<536870887){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<2?2:j+4&-4}else j=1073741807;k=bj(j<<2)|0;if(g)ql(k,l,g)|0;e=f-h|0;if((e|0)!=(g|0))ql(k+(i+g<<2)|0,l+(h+g<<2)|0,e-g|0)|0;if((d|0)!=1)cj(l);c[b+8>>2]=k;c[b>>2]=j|1;return}function bn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=d;f=e-g|0;if(f>>>0>4294967279)_i(b);if(f>>>0<11){a[b>>0]=f<<1;h=b+1|0}else{i=f+16&-16;h=bj(i)|0;c[b+8>>2]=h;c[b>>2]=i|1;c[b+4>>2]=f}b=e-g|0;if((d|0)!=(e|0)){f=h;while(1){a[f>>0]=a[d>>0]|0;d=d+1|0;if((d|0)==(e|0))break;else f=f+1|0}}a[h+b>>0]=0;return}function cn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d;f=e-h|0;g=f>>2;if(g>>>0>1073741807)_i(b);if(g>>>0<2){a[b>>0]=f>>>1;b=b+4|0}else{i=g+4&-4;f=bj(i<<2)|0;c[b+8>>2]=f;c[b>>2]=i|1;c[b+4>>2]=g;b=f}g=(e-h|0)>>>2;if((d|0)!=(e|0)){f=b;while(1){c[f>>2]=c[d>>2];d=d+4|0;if((d|0)==(e|0))break;else f=f+4|0}}c[b+(g<<2)>>2]=0;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;f=(c[a+24>>2]|0)==0;c[a+16>>2]=f&1|b;if(!((f&1|b)&c[a+20>>2])){i=d;return}b=Ma(16)|0;so()|0;c[e>>2]=1;c[e+4>>2]=43112;o=0;wa(11,b|0,57437,e|0);f=o;o=0;if(f&1){f=Na()|0;La(b|0);Ya(f|0)}else lb(b|0,864,112)}function en(a){a=a|0;var b=0;c[a>>2]=43068;o=0;ia(88,a|0,0);b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else{Gs(a+28|0);Gl(c[a+32>>2]|0);Gl(c[a+36>>2]|0);Gl(c[a+48>>2]|0);Gl(c[a+60>>2]|0);return}}function fn(a){a=a|0;en(a);return}function gn(a){a=a|0;en(a);cj(a);return}function hn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a+40>>2]|0;e=a+32|0;f=a+36|0;if(d)do{d=d+-1|0;Qb[c[(c[e>>2]|0)+(d<<2)>>2]&15](b,a,c[(c[f>>2]|0)+(d<<2)>>2]|0)}while((d|0)!=0);return}function jn(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;Fs(b,a+28|0);i=d;return c[b>>2]|0}function kn(a,b){a=a|0;b=b|0;var d=0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;d=a+28|0;b=a+32|0;a=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));Es(d);return}function ln(a){a=a|0;en(a);return}function mn(a){a=a|0;en(a);cj(a);return}function nn(a){a=a|0;c[a>>2]=42760;Gs(a+4|0);return}function on(a){a=a|0;c[a>>2]=42760;Gs(a+4|0);cj(a);return}function pn(a){a=a|0;c[a>>2]=42760;Es(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function qn(a,b){a=a|0;b=b|0;return}function rn(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function sn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function tn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function un(a){a=a|0;return 0}function vn(a){a=a|0;return 0}function wn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+12|0;i=b+16|0;a:do if((e|0)>0){g=d;d=0;while(1){f=c[h>>2]|0;if(f>>>0<(c[i>>2]|0)>>>0){c[h>>2]=f+1;f=a[f>>0]|0}else{f=Eb[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((f|0)==-1)break a;f=f&255}a[g>>0]=f;d=d+1|0;if((d|0)<(e|0))g=g+1|0;else break}}else d=0;while(0);return d|0}function xn(a){a=a|0;return -1}function yn(a){a=a|0;var b=0;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)a=-1;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+1;a=d[a>>0]|0}return a|0}function zn(a,b){a=a|0;b=b|0;return -1}function An(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;i=b+24|0;j=b+28|0;a:do if((f|0)>0){h=e;e=0;while(1){g=c[i>>2]|0;if(g>>>0>=(c[j>>2]|0)>>>0){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,d[h>>0]|0)|0)==-1)break a}else{k=a[h>>0]|0;c[i>>2]=g+1;a[g>>0]=k}e=e+1|0;if((e|0)<(f|0))h=h+1|0;else break}}else e=0;while(0);return e|0}function Bn(a,b){a=a|0;b=b|0;return -1}function Cn(a){a=a|0;c[a>>2]=42824;Gs(a+4|0);return}function Dn(a){a=a|0;c[a>>2]=42824;Gs(a+4|0);cj(a);return}function En(a){a=a|0;c[a>>2]=42824;Es(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function Fn(a,b){a=a|0;b=b|0;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Hn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function Jn(a){a=a|0;return 0}function Kn(a){a=a|0;return 0}function Ln(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+12|0;h=a+16|0;a:do if((d|0)>0){f=b;b=0;while(1){e=c[g>>2]|0;if(e>>>0>=(c[h>>2]|0)>>>0){e=Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((e|0)==-1)break a}else{c[g>>2]=e+4;e=c[e>>2]|0}c[f>>2]=e;b=b+1|0;if((b|0)<(d|0))f=f+4|0;else break}}else b=0;while(0);return b|0}function Mn(a){a=a|0;return -1}function Nn(a){a=a|0;var b=0;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)a=-1;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+4;a=c[a>>2]|0}return a|0}function On(a,b){a=a|0;b=b|0;return -1}function Pn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=a+24|0;h=a+28|0;a:do if((d|0)>0){f=b;b=0;while(1){e=c[g>>2]|0;if(e>>>0>=(c[h>>2]|0)>>>0){if((Lb[c[(c[a>>2]|0)+52>>2]&63](a,c[f>>2]|0)|0)==-1)break a}else{i=c[f>>2]|0;c[g>>2]=e+4;c[e>>2]=i}b=b+1|0;if((b|0)<(d|0))f=f+4|0;else break}}else b=0;while(0);return b|0}function Qn(a,b){a=a|0;b=b|0;return -1}function Rn(a){a=a|0;en(a+8|0);return}function Sn(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);return}function Tn(a){a=a|0;en(a+8|0);cj(a);return}function Un(a){a=a|0;Tn(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Vn(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f;a:do if(c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0){o=0;ia(65,e|0,b|0);d=o;o=0;b:do if(d&1)d=Na(0)|0;else{do if(a[e>>0]|0){d=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;d=ka(c[(c[d>>2]|0)+24>>2]|0,d|0)|0;g=o;o=0;if(!(g&1)){if((d|0)!=-1)break;g=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+g|0,c[b+(g+16)>>2]|1|0);g=o;o=0;if(!(g&1))break}d=Na(0)|0;ho(e);break b}while(0);ho(e);break a}while(0);Va(d|0)|0;o=0;ha(181,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);g=o;o=0;if(!(g&1)){Xa();break}d=Na()|0;o=0;xa(3);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else Ya(d|0)}while(0);i=f;return b|0}function Wn(a){a=a|0;var b=0;b=a+16|0;c[b>>2]=c[b>>2]|1;if(!(c[a+20>>2]&1))return;else mb()}function Xn(a){a=a|0;en(a+8|0);return}function Yn(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);return}function Zn(a){a=a|0;en(a+8|0);cj(a);return}function _n(a){a=a|0;Zn(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function $n(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f;a:do if(c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0){o=0;ia(89,e|0,b|0);d=o;o=0;b:do if(d&1)d=Na(0)|0;else{do if(a[e>>0]|0){d=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;d=ka(c[(c[d>>2]|0)+24>>2]|0,d|0)|0;g=o;o=0;if(!(g&1)){if((d|0)!=-1)break;g=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+g|0,c[b+(g+16)>>2]|1|0);g=o;o=0;if(!(g&1))break}d=Na(0)|0;po(e);break b}while(0);po(e);break a}while(0);Va(d|0)|0;o=0;ha(181,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);g=o;o=0;if(!(g&1)){Xa();break}d=Na()|0;o=0;xa(3);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else Ya(d|0)}while(0);i=f;return b|0}function ao(a,b){a=a|0;b=b|0;return}function bo(a){a=a|0;en(a+4|0);return}function co(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);return}function eo(a){a=a|0;en(a+4|0);cj(a);return}function fo(a){a=a|0;eo(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function go(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=c[(c[d>>2]|0)+-12>>2]|0;if(!(c[d+(e+16)>>2]|0)){e=c[d+(e+72)>>2]|0;if(e)Vn(e)|0;a[b>>0]=1}return}function ho(a){a=a|0;var b=0,d=0;a=a+4|0;d=c[a>>2]|0;b=c[(c[d>>2]|0)+-12>>2]|0;do if((((c[d+(b+24)>>2]|0)!=0?(c[d+(b+16)>>2]|0)==0:0)?(c[d+(b+4)>>2]&8192|0)!=0:0)?!(Za()|0):0){b=c[a>>2]|0;b=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;b=ka(c[(c[b>>2]|0)+24>>2]|0,b|0)|0;d=o;o=0;if(!(d&1)){if((b|0)!=-1)break;b=c[a>>2]|0;d=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+d|0,c[b+(d+16)>>2]|1|0);d=o;o=0;if(!(d&1))break}d=Na(0)|0;Va(d|0)|0;o=0;xa(3);d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}}while(0);return}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+20|0;l=q+16|0;n=q+8|0;e=q;o=0;ia(65,n|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b;p=19}else{do if(a[n>>0]|0){c[e>>2]=jn(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;o=0;m=ra(37,e|0,43392)|0;j=o;o=0;if(j&1){p=Na(0)|0;Gs(e);e=p}else{Gs(e);g=c[(c[b>>2]|0)+-12>>2]|0;j=c[b+(g+24)>>2]|0;f=b+g|0;g=b+(g+76)|0;e=c[g>>2]|0;do if((e|0)==-1){c[k>>2]=jn(f)|0;o=0;e=ra(37,k|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(k);e=h<<24>>24;c[g>>2]=e;p=10;break}e=Na(0)|0;Gs(k)}else p=10;while(0);if((p|0)==10){r=c[(c[m>>2]|0)+16>>2]|0;c[l>>2]=j;o=0;c[k>>2]=c[l>>2];e=sa(r|0,m|0,k|0,f|0,e&255|0,d|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break}e=Na(0)|0}}ho(n);f=b;g=b;p=19;break a}while(0);ho(n)}while(0);do if((p|0)==19){Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();break}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0)}while(0);i=q;return b|0}function jo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+20|0;l=q+16|0;n=q+8|0;e=q;o=0;ia(65,n|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b;p=19}else{do if(a[n>>0]|0){c[e>>2]=jn(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;o=0;m=ra(37,e|0,43392)|0;j=o;o=0;if(j&1){p=Na(0)|0;Gs(e);e=p}else{Gs(e);g=c[(c[b>>2]|0)+-12>>2]|0;j=c[b+(g+24)>>2]|0;f=b+g|0;g=b+(g+76)|0;e=c[g>>2]|0;do if((e|0)==-1){c[k>>2]=jn(f)|0;o=0;e=ra(37,k|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(k);e=h<<24>>24;c[g>>2]=e;p=10;break}e=Na(0)|0;Gs(k)}else p=10;while(0);if((p|0)==10){r=c[(c[m>>2]|0)+24>>2]|0;c[l>>2]=j;o=0;c[k>>2]=c[l>>2];e=sa(r|0,m|0,k|0,f|0,e&255|0,d|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break}e=Na(0)|0}}ho(n);f=b;g=b;p=19;break a}while(0);ho(n)}while(0);do if((p|0)==19){Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();break}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0)}while(0);i=q;return b|0}function ko(a){a=a|0;en(a+4|0);return}function lo(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);return}function mo(a){a=a|0;en(a+4|0);cj(a);return}function no(a){a=a|0;mo(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function oo(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=c[(c[d>>2]|0)+-12>>2]|0;if(!(c[d+(e+16)>>2]|0)){e=c[d+(e+72)>>2]|0;if(e)$n(e)|0;a[b>>0]=1}return}function po(a){a=a|0;var b=0,d=0;a=a+4|0;d=c[a>>2]|0;b=c[(c[d>>2]|0)+-12>>2]|0;do if((((c[d+(b+24)>>2]|0)!=0?(c[d+(b+16)>>2]|0)==0:0)?(c[d+(b+4)>>2]&8192|0)!=0:0)?!(Za()|0):0){b=c[a>>2]|0;b=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;b=ka(c[(c[b>>2]|0)+24>>2]|0,b|0)|0;d=o;o=0;if(!(d&1)){if((b|0)!=-1)break;b=c[a>>2]|0;d=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+d|0,c[b+(d+16)>>2]|1|0);d=o;o=0;if(!(d&1))break}d=Na(0)|0;Va(d|0)|0;o=0;xa(3);d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}}while(0);return}function qo(a){a=a|0;return 57453}function ro(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=1&(c|0)<257)wm(a,b,c);else Gm(a,57462,35);return}function so(){if((a[1048]|0)==0?(Ha(1048)|0)!=0:0){c[10778]=43084;kb(72,43112,n|0)|0;Pa(1048)}return 43112}function to(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e;j=d;h=c[j+4>>2]|0;d=g;c[d>>2]=c[j>>2];c[d+4>>2]=h;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];ym(a,f,b);c[a>>2]=43048;i=e;return}function uo(a){a=a|0;Bm(a);return}function vo(a){a=a|0;Bm(a);cj(a);return}function wo(a){a=a|0;en(a);cj(a);return}function xo(a){a=a|0;cj(a);return}function yo(a){a=a|0;return}function zo(a){a=a|0;return}function Ao(a){a=a|0;cj(a);return}function Bo(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((e|0)==(f|0))h=6;else while(1){if((c|0)==(d|0)){c=-1;break a}b=a[c>>0]|0;g=a[e>>0]|0;if(b<<24>>24>24){c=-1;break a}if(g<<24>>24>24){c=1;break a}c=c+1|0;e=e+1|0;if((e|0)==(f|0)){h=6;break}}while(0);if((h|0)==6)c=(c|0)!=(d|0)&1;return c|0}function Co(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bn(a,c,d);return}function Do(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)==(d|0))b=0;else{b=0;do{b=(a[c>>0]|0)+(b<<4)|0;e=b&-268435456;b=(e>>>24|e)^b;c=c+1|0}while((c|0)!=(d|0))}return b|0}function Eo(a){a=a|0;return}function Fo(a){a=a|0;cj(a);return}function Go(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((e|0)==(f|0))h=6;else while(1){if((b|0)==(d|0)){b=-1;break a}a=c[b>>2]|0;g=c[e>>2]|0;if((a|0)<(g|0)){b=-1;break a}if((g|0)<(a|0)){b=1;break a}b=b+4|0;e=e+4|0;if((e|0)==(f|0)){h=6;break}}while(0);if((h|0)==6)b=(b|0)!=(d|0)&1;return b|0}function Ho(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cn(a,c,d);return}function Io(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((b|0)==(d|0))a=0;else{a=0;do{a=(c[b>>2]|0)+(a<<4)|0;e=a&-268435456;a=(e>>>24|e)^a;b=b+4|0}while((b|0)!=(d|0))}return a|0}function Jo(a){a=a|0;return}function Ko(a){a=a|0;cj(a);return}function Lo(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+64|0;q=s+56|0;j=s+52|0;n=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;p=s+32|0;t=s+8|0;r=s;a:do if(!(c[f+4>>2]&1)){c[n>>2]=-1;t=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[j>>2]=c[k>>2];c[q>>2]=c[l>>2];j=Db[t&63](b,j,q,f,g,n)|0;c[d>>2]=j;switch(c[n>>2]|0){case 0:{a[h>>0]=0;break a}case 1:{a[h>>0]=1;break a}default:{a[h>>0]=1;c[g>>2]=4;break a}}}else{j=jn(f)|0;c[m>>2]=j;o=0;b=ra(37,m|0,44220)|0;n=o;o=0;do if(!(n&1)){pm(j)|0;j=jn(f)|0;c[p>>2]=j;o=0;l=ra(37,p|0,44360)|0;p=o;o=0;if(p&1){t=Na()|0;pm(j)|0;j=t;break}pm(j)|0;o=0;ia(c[(c[l>>2]|0)+24>>2]|0,t|0,l|0);p=o;o=0;if(!(p&1)){k=t+12|0;o=0;ia(c[(c[l>>2]|0)+28>>2]|0,k|0,l|0);p=o;o=0;if(!(p&1)){c[r>>2]=c[e>>2];o=0;c[q>>2]=c[r>>2];j=ea(7,d|0,q|0,t|0,t+24|0,b|0,g|0,1)|0;g=o;o=0;if(g&1){j=Na()|0;Im(t+12|0);Im(t);break}else{a[h>>0]=(j|0)==(t|0)&1;j=c[d>>2]|0;Im(t+12|0);Im(t);break a}}}else k=t;j=Na()|0;l=D;if((t|0)!=(k|0))do{k=k+-12|0;Im(k)}while((k|0)!=(t|0))}else{t=Na()|0;pm(j)|0;j=t}while(0);Ya(j|0)}while(0);i=s;return j|0}function Mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=yu(a,k,j,e,f,g)|0;i=h;return a|0}function No(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=zu(a,k,j,e,f,g)|0;i=h;return a|0}function Oo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Au(a,k,j,e,f,g)|0;i=h;return a|0}function Po(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Bu(a,k,j,e,f,g)|0;i=h;return a|0}function Qo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Cu(a,k,j,e,f,g)|0;i=h;return a|0}function Ro(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Du(a,k,j,e,f,g)|0;i=h;return a|0}function So(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Eu(a,k,j,e,f,g)|0;i=h;return a|0}function To(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Fu(a,k,j,e,f,g)|0;i=h;return a|0}function Uo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Gu(a,k,j,e,f,g)|0;i=h;return a|0}function Vo(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=i;i=i+240|0;x=C;s=C+208|0;E=C+32|0;b=C+28|0;D=C+16|0;w=C+12|0;u=C+48|0;v=C+8|0;t=C+4|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;o=0;g=ka(68,g|0)|0;r=o;o=0;do if(r&1)b=Na()|0;else{c[b>>2]=g;o=0;b=ra(37,b|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,va(c[(c[b>>2]|0)+32>>2]|0,b|0,57498,57524,s|0)|0,r=o,o=0,!(r&1)):0){pm(g)|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;if(!(a[D>>0]&1))b=10;else b=(c[D>>2]&-2)+-1|0;o=0;wa(8,D|0,b|0,0);r=o;o=0;a:do if(!(r&1)){q=D+8|0;r=D+1|0;g=(a[D>>0]&1)==0?r:c[q>>2]|0;c[w>>2]=g;c[v>>2]=u;c[t>>2]=0;p=D+4|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){F=29;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){F=29;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;F=19;break}}else F=19;while(0);if((F|0)==19){F=0;if(l){k=0;break}else k=0}l=a[D>>0]|0;l=(l&1)==0?(l&255)>>>1:c[p>>2]|0;if((c[w>>2]|0)==(g+l|0)){o=0;wa(8,D|0,l<<1|0,0);n=o;o=0;if(n&1){F=29;break}if(!(a[D>>0]&1))g=10;else g=(c[D>>2]&-2)+-1|0;o=0;wa(8,D|0,g|0,0);n=o;o=0;if(n&1){F=29;break}g=(a[D>>0]&1)==0?r:c[q>>2]|0;c[w>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=29;break}}else l=d[l>>0]|0;if(Wo(l&255,16,g,w,t,0,E,u,v,s)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=29;break}else continue}else{c[m>>2]=k+1;continue}}if((F|0)==29){b=Na()|0;break}o=0;wa(8,D|0,(c[w>>2]|0)-g|0,0);G=o;o=0;if((!(G&1)?(y=a[D>>0]|0,z=c[q>>2]|0,o=0,A=ua(3)|0,G=o,o=0,!(G&1)):0)?(o=0,c[x>>2]=j,B=va(16,((y&1)==0?r:z)|0,A|0,58882,x|0)|0,G=o,o=0,!(G&1)):0){if((B|0)!=1)c[h>>2]=4;if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=30;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;G=o;o=0;if(G&1){F=30;break a}if((b|0)==-1){c[f>>2]=0;F=55;break}}if(!g)F=56}else F=55;while(0);if((F|0)==55?g:0)F=56;if((F|0)==56)c[h>>2]=c[h>>2]|2;G=c[e>>2]|0;Im(D);Im(E);i=C;return G|0}else F=30}else F=30;while(0);if((F|0)==30)b=Na()|0;Im(D);break}b=Na()|0;pm(g)|0}while(0);Im(E);Ya(b|0);return 0}function Wo(b,d,e,f,g,h,i,j,k,l){b=b|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;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(a[l+24>>0]|0)==b<<24>>24;if(!m?(a[l+25>>0]|0)!=b<<24>>24:0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i>>0]|0;if(b<<24>>24==h<<24>>24?(((n&1)==0?(n&255)>>>1:c[i+4>>2]|0)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}d=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=d;c[g>>2]=0;m=0;break}i=l+26|0;m=l;while(1){if((a[m>>0]|0)==b<<24>>24)break;m=m+1|0;if((m|0)==(i|0)){m=i;break}}m=m-l|0;if((m|0)>23)m=-1;else{switch(d|0){case 10:case 8:{if((m|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[57498+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[57498+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function Xo(){var b=0,d=0;do if((a[1968]|0)==0?(Ha(1968)|0)!=0:0){o=0;b=ma(31,2147483647,58885,0)|0;d=o;o=0;if(d&1){d=Na()|0;sb(1968);Ya(d|0)}else{c[11196]=b;Pa(1968);break}}while(0);return c[11196]|0}function Yo(a){a=a|0;return}function Zo(a){a=a|0;cj(a);return}function _o(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+64|0;q=s+56|0;j=s+52|0;n=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;p=s+32|0;t=s+8|0;r=s;a:do if(!(c[f+4>>2]&1)){c[n>>2]=-1;t=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[j>>2]=c[k>>2];c[q>>2]=c[l>>2];j=Db[t&63](b,j,q,f,g,n)|0;c[d>>2]=j;switch(c[n>>2]|0){case 0:{a[h>>0]=0;break a}case 1:{a[h>>0]=1;break a}default:{a[h>>0]=1;c[g>>2]=4;break a}}}else{j=jn(f)|0;c[m>>2]=j;o=0;b=ra(37,m|0,44212)|0;n=o;o=0;do if(!(n&1)){pm(j)|0;j=jn(f)|0;c[p>>2]=j;o=0;l=ra(37,p|0,44368)|0;p=o;o=0;if(p&1){t=Na()|0;pm(j)|0;j=t;break}pm(j)|0;o=0;ia(c[(c[l>>2]|0)+24>>2]|0,t|0,l|0);p=o;o=0;if(!(p&1)){k=t+12|0;o=0;ia(c[(c[l>>2]|0)+28>>2]|0,k|0,l|0);p=o;o=0;if(!(p&1)){c[r>>2]=c[e>>2];o=0;c[q>>2]=c[r>>2];j=ea(8,d|0,q|0,t|0,t+24|0,b|0,g|0,1)|0;g=o;o=0;if(g&1){j=Na()|0;Wm(t+12|0);Wm(t);break}else{a[h>>0]=(j|0)==(t|0)&1;j=c[d>>2]|0;Wm(t+12|0);Wm(t);break a}}}else k=t;j=Na()|0;l=D;if((t|0)!=(k|0))do{k=k+-12|0;Wm(k)}while((k|0)!=(t|0))}else{t=Na()|0;pm(j)|0;j=t}while(0);Ya(j|0)}while(0);i=s;return j|0}function $o(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ju(a,k,j,e,f,g)|0;i=h;return a|0}function ap(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ku(a,k,j,e,f,g)|0;i=h;return a|0}function bp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Lu(a,k,j,e,f,g)|0;i=h;return a|0}function cp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Mu(a,k,j,e,f,g)|0;i=h;return a|0}function dp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Nu(a,k,j,e,f,g)|0;i=h;return a|0}function ep(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ou(a,k,j,e,f,g)|0;i=h;return a|0}function fp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Pu(a,k,j,e,f,g)|0;i=h;return a|0}function gp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Qu(a,k,j,e,f,g)|0;i=h;return a|0}function hp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ru(a,k,j,e,f,g)|0;i=h;return a|0}function ip(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;B=i;i=i+320|0;w=B;r=B+208|0;D=B+32|0;b=B+28|0;C=B+16|0;v=B+12|0;t=B+48|0;u=B+8|0;s=B+4|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;f=ka(68,f|0)|0;q=o;o=0;do if(q&1)b=Na()|0;else{c[b>>2]=f;o=0;b=ra(37,b|0,44212)|0;q=o;o=0;if(!(q&1)?(o=0,va(c[(c[b>>2]|0)+48>>2]|0,b|0,57498,57524,r|0)|0,q=o,o=0,!(q&1)):0){pm(f)|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;if(!(a[C>>0]&1))b=10;else b=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,b|0,0);q=o;o=0;a:do if(!(q&1)){p=C+8|0;q=C+1|0;b=(a[C>>0]&1)==0?q:c[p>>2]|0;c[v>>2]=b;c[u>>2]=t;c[s>>2]=0;n=C+4|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){E=30;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){E=30;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k){j=l;break}else{j=l;break b}else{c[e>>2]=0;E=20;break}}else E=20;while(0);if((E|0)==20){E=0;if(k){j=0;break}else j=0}k=a[C>>0]|0;k=(k&1)==0?(k&255)>>>1:c[n>>2]|0;if((c[v>>2]|0)==(b+k|0)){o=0;wa(8,C|0,k<<1|0,0);m=o;o=0;if(m&1){E=30;break}if(!(a[C>>0]&1))b=10;else b=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,b|0,0);m=o;o=0;if(m&1){E=30;break}b=(a[C>>0]&1)==0?q:c[p>>2]|0;c[v>>2]=b+k}l=f+12|0;k=c[l>>2]|0;m=f+16|0;if((k|0)==(c[m>>2]|0)){o=0;k=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=30;break}}else k=c[k>>2]|0;if(jp(k,16,b,v,s,0,D,t,u,r)|0)break;j=c[l>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=30;break}else{j=f;continue}}else{c[l>>2]=j+4;j=f;continue}}if((E|0)==30){b=Na()|0;break}o=0;wa(8,C|0,(c[v>>2]|0)-b|0,0);F=o;o=0;if((!(F&1)?(x=a[C>>0]|0,y=c[p>>2]|0,o=0,z=ua(3)|0,F=o,o=0,!(F&1)):0)?(o=0,c[w>>2]=h,A=va(16,((x&1)==0?q:y)|0,z|0,58882,w|0)|0,F=o,o=0,!(F&1)):0){if((A|0)!=1)c[g>>2]=4;if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=31;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;F=o;o=0;if(F&1){E=31;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{E=59;break}else{c[e>>2]=0;E=57;break}}else E=57;while(0);if((E|0)==57?f:0)E=59;if((E|0)==59)c[g>>2]=c[g>>2]|2;F=c[d>>2]|0;Im(C);Im(D);i=B;return F|0}else E=31}else E=31;while(0);if((E|0)==31)b=Na()|0;Im(C);break}b=Na()|0;pm(f)|0}while(0);Im(D);Ya(b|0);return 0}function jp(b,d,e,f,g,h,i,j,k,l){b=b|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;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(c[l+96>>2]|0)==(b|0);if(!m?(c[l+100>>2]|0)!=(b|0):0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i>>0]|0;if((b|0)==(h|0)?(((n&1)==0?(n&255)>>>1:c[i+4>>2]|0)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}d=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=d;c[g>>2]=0;m=0;break}i=l+104|0;m=l;while(1){if((c[m>>2]|0)==(b|0))break;m=m+4|0;if((m|0)==(i|0)){m=i;break}}m=m-l|0;i=m>>2;if((m|0)>92)m=-1;else{switch(d|0){case 10:case 8:{if((i|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[57498+i>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[57498+i>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function kp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;k=l;d=jn(d)|0;c[k>>2]=d;o=0;g=ra(37,k|0,44220)|0;m=o;o=0;if((((!(m&1)?(o=0,va(c[(c[g>>2]|0)+32>>2]|0,g|0,57498,57524,e|0)|0,m=o,o=0,!(m&1)):0)?(o=0,j=ra(37,k|0,44360)|0,m=o,o=0,!(m&1)):0)?(o=0,h=ka(c[(c[j>>2]|0)+16>>2]|0,j|0)|0,m=o,o=0,!(m&1)):0)?(a[f>>0]=h,o=0,ia(c[(c[j>>2]|0)+20>>2]|0,b|0,j|0),m=o,o=0,!(m&1)):0){pm(d)|0;i=l;return}m=Na()|0;pm(d)|0;Ya(m|0)}function lp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i;i=i+16|0;m=n;d=jn(d)|0;c[m>>2]=d;o=0;h=ra(37,m|0,44220)|0;p=o;o=0;if(((((!(p&1)?(o=0,va(c[(c[h>>2]|0)+32>>2]|0,h|0,57498,57530,e|0)|0,p=o,o=0,!(p&1)):0)?(o=0,l=ra(37,m|0,44360)|0,p=o,o=0,!(p&1)):0)?(o=0,j=ka(c[(c[l>>2]|0)+12>>2]|0,l|0)|0,p=o,o=0,!(p&1)):0)?(a[f>>0]=j,o=0,k=ka(c[(c[l>>2]|0)+16>>2]|0,l|0)|0,p=o,o=0,!(p&1)):0)?(a[g>>0]=k,o=0,ia(c[(c[l>>2]|0)+20>>2]|0,b|0,l|0),p=o,o=0,!(p&1)):0){pm(d)|0;i=n;return}p=Na()|0;pm(d)|0;Ya(p|0)}function mp(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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;var p=0,q=0;a:do if(b<<24>>24==i<<24>>24)if(a[e>>0]|0){a[e>>0]=0;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=46;f=a[k>>0]|0;if((((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;p=0}else p=0}else p=-1;else{if(b<<24>>24==j<<24>>24?(j=a[k>>0]|0,(((j&1)==0?(j&255)>>>1:c[k+4>>2]|0)|0)!=0):0){if(!(a[e>>0]|0)){p=-1;break}p=c[m>>2]|0;if((p-l|0)>=160){p=0;break}l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;c[n>>2]=0;p=0;break}i=o+32|0;p=o;while(1){if((a[p>>0]|0)==b<<24>>24)break;p=p+1|0;if((p|0)==(i|0)){p=i;break}}i=p-o|0;if((i|0)>31)p=-1;else{j=a[57498+i>>0]|0;switch(i|0){case 24:case 25:{p=c[h>>2]|0;if((p|0)!=(g|0)?(d[p+-1>>0]&95|0)!=(d[f>>0]&127|0):0){p=-1;break a}c[h>>2]=p+1;a[p>>0]=j;p=0;break a}case 23:case 22:{a[f>>0]=80;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=j;p=0;break a}default:{p=j&95;if((((p|0)==(a[f>>0]|0)?(a[f>>0]=p|128,(a[e>>0]|0)!=0):0)?(a[e>>0]=0,f=a[k>>0]|0,(((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0):0)?(q=c[m>>2]|0,(q-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=l}m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=j;if((i|0)>21){p=0;break a}c[n>>2]=(c[n>>2]|0)+1;p=0;break a}}}}while(0);return p|0}function np(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k;b=jn(b)|0;c[j>>2]=b;o=0;f=ra(37,j|0,44212)|0;l=o;o=0;if((((!(l&1)?(o=0,va(c[(c[f>>2]|0)+48>>2]|0,f|0,57498,57524,d|0)|0,l=o,o=0,!(l&1)):0)?(o=0,h=ra(37,j|0,44368)|0,l=o,o=0,!(l&1)):0)?(o=0,g=ka(c[(c[h>>2]|0)+16>>2]|0,h|0)|0,l=o,o=0,!(l&1)):0)?(c[e>>2]=g,o=0,ia(c[(c[h>>2]|0)+20>>2]|0,a|0,h|0),l=o,o=0,!(l&1)):0){pm(b)|0;i=k;return}l=Na()|0;pm(b)|0;Ya(l|0)}function op(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+16|0;l=m;b=jn(b)|0;c[l>>2]=b;o=0;g=ra(37,l|0,44212)|0;n=o;o=0;if(((((!(n&1)?(o=0,va(c[(c[g>>2]|0)+48>>2]|0,g|0,57498,57530,d|0)|0,n=o,o=0,!(n&1)):0)?(o=0,k=ra(37,l|0,44368)|0,n=o,o=0,!(n&1)):0)?(o=0,h=ka(c[(c[k>>2]|0)+12>>2]|0,k|0)|0,n=o,o=0,!(n&1)):0)?(c[e>>2]=h,o=0,j=ka(c[(c[k>>2]|0)+16>>2]|0,k|0)|0,n=o,o=0,!(n&1)):0)?(c[f>>2]=j,o=0,ia(c[(c[k>>2]|0)+20>>2]|0,a|0,k|0),n=o,o=0,!(n&1)):0){pm(b)|0;i=m;return}n=Na()|0;pm(b)|0;Ya(n|0)}function pp(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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;var p=0,q=0;a:do if((b|0)==(i|0))if(a[e>>0]|0){a[e>>0]=0;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=46;f=a[k>>0]|0;if((((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;p=0}else p=0}else p=-1;else{if((b|0)==(j|0)?(j=a[k>>0]|0,(((j&1)==0?(j&255)>>>1:c[k+4>>2]|0)|0)!=0):0){if(!(a[e>>0]|0)){p=-1;break}p=c[m>>2]|0;if((p-l|0)>=160){p=0;break}l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;c[n>>2]=0;p=0;break}i=o+128|0;p=o;while(1){if((c[p>>2]|0)==(b|0))break;p=p+4|0;if((p|0)==(i|0)){p=i;break}}i=p-o|0;p=i>>2;if((i|0)<=124){j=a[57498+p>>0]|0;switch(p|0){case 24:case 25:{p=c[h>>2]|0;if((p|0)!=(g|0)?(d[p+-1>>0]&95|0)!=(d[f>>0]&127|0):0){p=-1;break a}c[h>>2]=p+1;a[p>>0]=j;p=0;break a}case 23:case 22:{a[f>>0]=80;break}default:{p=j&95;if((((p|0)==(a[f>>0]|0)?(a[f>>0]=p|128,(a[e>>0]|0)!=0):0)?(a[e>>0]=0,f=a[k>>0]|0,(((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0):0)?(q=c[m>>2]|0,(q-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=l}}}m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=j;if((i|0)>84)p=0;else{c[n>>2]=(c[n>>2]|0)+1;p=0}}else p=-1}while(0);return p|0}function qp(a){a=a|0;return}function rp(a){a=a|0;cj(a);return}function sp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;h=n+20|0;j=n+16|0;k=n+12|0;m=n;a:do if(!(c[e+4>>2]&1)){m=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[h>>2]=c[j>>2];h=Mb[m&31](b,h,e,f,g&1)|0}else{h=jn(e)|0;c[k>>2]=h;o=0;j=ra(37,k|0,44360)|0;l=o;o=0;b:do if(l&1){n=Na()|0;pm(h)|0;h=n}else{pm(h)|0;h=c[j>>2]|0;if(g)Cb[c[h+24>>2]&127](m,j);else Cb[c[h+28>>2]&127](m,j);b=a[m>>0]|0;l=(b&1)==0;h=m+1|0;g=m+8|0;k=l?h:m+1|0;h=l?h:c[m+8>>2]|0;l=m+4|0;e=(b&1)==0;c:do if((h|0)!=((e?k:c[g>>2]|0)+(e?(b&255)>>>1:c[l>>2]|0)|0)){d:while(1){j=a[h>>0]|0;f=c[d>>2]|0;do if(f){e=f+24|0;b=c[e>>2]|0;if((b|0)!=(c[f+28>>2]|0)){c[e>>2]=b+1;a[b>>0]=j;break}o=0;j=ra(c[(c[f>>2]|0)+52>>2]|0,f|0,j&255|0)|0;b=o;o=0;if(b&1)break d;if((j|0)==-1)c[d>>2]=0}while(0);h=h+1|0;b=a[m>>0]|0;e=(b&1)==0;if((h|0)==((e?k:c[g>>2]|0)+(e?(b&255)>>>1:c[l>>2]|0)|0))break c}h=Na()|0;Im(m);break b}while(0);h=c[d>>2]|0;Im(m);break a}while(0);Ya(h|0)}while(0);i=n;return h|0}function tp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+64|0;h=n;q=n+56|0;r=n+44|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,1,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(1,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=cd(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function up(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;if(e&2048){a[b>>0]=43;b=b+1|0}if(e&512){a[b>>0]=35;b=b+1|0}f=a[c>>0]|0;if(f<<24>>24){g=c;while(1){g=g+1|0;c=b+1|0;a[b>>0]=f;f=a[g>>0]|0;if(!(f<<24>>24)){b=c;break}else b=c}}a:do switch(e&74|0){case 64:{a[b>>0]=111;break}case 8:if(!(e&16384)){a[b>>0]=120;break a}else{a[b>>0]=88;break a}default:if(d){a[b>>0]=100;break a}else{a[b>>0]=117;break a}}while(0);return}function vp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;a:do switch(c[e+4>>2]&176|0){case 16:{e=a[b>>0]|0;switch(e<<24>>24){case 43:case 45:{b=b+1|0;break a}default:{}}if((d-b|0)>1&e<<24>>24==48){switch(a[b+1>>0]|0){case 88:case 120:break;default:{f=7;break a}}b=b+2|0}else f=7;break}case 32:{b=d;break}default:f=7}while(0);return b|0}function wp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;t=Is(j,44220)|0;m=Is(j,44360)|0;Cb[c[(c[m>>2]|0)+20>>2]&127](w,m);r=a[w>>0]|0;s=w+4|0;a:do if(!(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0)){o=0;va(c[(c[t>>2]|0)+32>>2]|0,t|0,b|0,e|0,f|0)|0;u=o;o=0;if(u&1)u=5;else{j=f+(e-b)|0;c[h>>2]=j;u=29}}else{c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,j|0)|0;r=o;o=0;if(r&1){u=5;break a}l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=j;l=b+1|0;break}default:l=b}b:do if((e-l|0)>1?(a[l>>0]|0)==48:0){j=l+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:break b}o=0;k=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,48)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+1;a[r>>0]=k;o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,a[j>>0]|0)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+1;a[r>>0]=j;l=l+2|0}while(0);if((l|0)!=(e|0)?(n=e+-1|0,l>>>0>>0):0){k=l;j=n;do{r=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=r;k=k+1|0;j=j+-1|0}while(k>>>0>>0)}o=0;n=ka(c[(c[m>>2]|0)+16>>2]|0,m|0)|0;r=o;o=0;if(!(r&1)){p=w+8|0;q=w+1|0;c:do if(l>>>0>>0){j=0;k=0;r=l;while(1){m=a[((a[w>>0]&1)==0?q:c[p>>2]|0)+k>>0]|0;if(m<<24>>24!=0&(j|0)==(m<<24>>24|0)){j=c[h>>2]|0;c[h>>2]=j+1;a[j>>0]=n;j=a[w>>0]|0;m=0;k=(k>>>0<(((j&1)==0?(j&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+k|0}else m=j;o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,a[r>>0]|0)|0;x=o;o=0;if(x&1)break;x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=j;r=r+1|0;if(r>>>0>=e>>>0)break c;else j=m+1|0}j=Na()|0;break a}while(0);k=b;j=f+(l-k)|0;b=c[h>>2]|0;if((j|0)==(b|0)){b=k;u=29}else{b=b+-1|0;if(j>>>0>>0)do{x=a[j>>0]|0;a[j>>0]=a[b>>0]|0;a[b>>0]=x;j=j+1|0;b=b+-1|0}while(j>>>0>>0);b=k;j=c[h>>2]|0;u=29}}else u=5}while(0);if((u|0)==5)j=Na()|0;else if((u|0)==29){c[g>>2]=(d|0)==(e|0)?j:f+(d-b)|0;Im(w);i=v;return}Im(w);Ya(j|0)}function xp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+96|0;h=n+8|0;a=n;q=n+74|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,1,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,22,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(1,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=cd(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function yp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+64|0;h=n;q=n+56|0;r=n+44|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,0,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(1,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=cd(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function zp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+112|0;h=n+8|0;a=n;q=n+75|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,0,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,23,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(1,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=cd(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function Ap(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+176|0;u=z+84|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+88|0;t=z+80|0;k=z+118|0;y=z+76|0;x=z+72|0;v=z+68|0;w=z+64|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58898,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,c[q>>2]=c[d+8>>2],h[q+8>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<1)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(2,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(39,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Bp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(d&2048){a[b>>0]=43;b=b+1|0}if(d&1024){a[b>>0]=35;b=b+1|0}h=d&260;f=d>>>14;i=(h|0)==260;if(i)g=0;else{a[b>>0]=46;a[b+1>>0]=42;b=b+2|0;g=1}d=a[c>>0]|0;if(d<<24>>24){e=b;while(1){c=c+1|0;b=e+1|0;a[e>>0]=d;d=a[c>>0]|0;if(!(d<<24>>24))break;else e=b}}a:do switch(h|0){case 4:if(!(f&1)){a[b>>0]=102;break a}else{a[b>>0]=70;break a}case 256:if(!(f&1)){a[b>>0]=101;break a}else{a[b>>0]=69;break a}default:{d=(f&1|0)!=0;if(i)if(d){a[b>>0]=65;break a}else{a[b>>0]=97;break a}else if(d){a[b>>0]=71;break a}else{a[b>>0]=103;break a}}}while(0);return g|0}function Cp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+16|0;A=z;y=Is(j,44220)|0;w=Is(j,44360)|0;Cb[c[(c[w>>2]|0)+20>>2]&127](A,w);c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,j|0)|0;x=o;o=0;if(x&1)v=8;else{n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=j;n=b+1|0;v=10}break}default:{n=b;v=10}}a:do if((v|0)==10){x=e;b:do if((x-n|0)>1?(a[n>>0]|0)==48:0){l=n+1|0;switch(a[l>>0]|0){case 88:case 120:break;default:{v=11;break b}}o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,48)|0;u=o;o=0;if(u&1){v=8;break a}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=j;n=n+2|0;o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,a[l>>0]|0)|0;u=o;o=0;if(u&1){v=8;break a}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=j;if(n>>>0>>0){j=n;while(1){l=a[j>>0]|0;o=0;m=ua(3)|0;u=o;o=0;if(u&1)break;o=0;l=ra(39,l<<24>>24|0,m|0)|0;u=o;o=0;if(u&1)break;if(!l){u=n;break b}j=j+1|0;if(j>>>0>=e>>>0){u=n;break b}}j=Na()|0;break a}else{u=n;j=n}}else v=11;while(0);c:do if((v|0)==11)if(n>>>0>>0){j=n;while(1){l=a[j>>0]|0;o=0;m=ua(3)|0;u=o;o=0;if(u&1)break;o=0;l=ra(40,l<<24>>24|0,m|0)|0;u=o;o=0;if(u&1)break;if(!l){u=n;break c}j=j+1|0;if(j>>>0>=e>>>0){u=n;break c}}j=Na()|0;break a}else{u=n;j=n}while(0);s=a[A>>0]|0;t=A+4|0;if(((s&1)==0?(s&255)>>>1:c[t>>2]|0)|0){if((u|0)!=(j|0)?(p=j+-1|0,u>>>0

>>0):0){m=u;l=p;do{s=a[m>>0]|0;a[m>>0]=a[l>>0]|0;a[l>>0]=s;m=m+1|0;l=l+-1|0}while(m>>>0>>0)}o=0;p=ka(c[(c[w>>2]|0)+16>>2]|0,w|0)|0;s=o;o=0;if(s&1){v=8;break}q=A+8|0;r=A+1|0;d:do if(u>>>0>>0){l=0;m=0;s=u;while(1){n=a[((a[A>>0]&1)==0?r:c[q>>2]|0)+m>>0]|0;if(n<<24>>24>0&(l|0)==(n<<24>>24|0)){l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=p;l=a[A>>0]|0;n=0;m=(m>>>0<(((l&1)==0?(l&255)>>>1:c[t>>2]|0)+-1|0)>>>0&1)+m|0}else n=l;o=0;l=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,a[s>>0]|0)|0;B=o;o=0;if(B&1)break;B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=l;s=s+1|0;if(s>>>0>=j>>>0)break d;else l=n+1|0}j=Na()|0;break a}while(0);l=f+(u-b)|0;m=c[h>>2]|0;if((l|0)!=(m|0)?(k=m+-1|0,l>>>0>>0):0){do{B=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=B;l=l+1|0;k=k+-1|0}while(l>>>0>>0);l=y}else l=y}else{o=0;va(c[(c[y>>2]|0)+32>>2]|0,y|0,u|0,j|0,c[h>>2]|0)|0;B=o;o=0;if(B&1){v=8;break}c[h>>2]=(c[h>>2]|0)+(j-u);l=y}e:do if(j>>>0>>0){while(1){k=a[j>>0]|0;if(k<<24>>24==46)break;o=0;k=ra(c[(c[l>>2]|0)+28>>2]|0,y|0,k|0)|0;B=o;o=0;if(B&1){v=4;break}B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=k;j=j+1|0;if(j>>>0>=e>>>0)break e}if((v|0)==4){j=Na()|0;break a}o=0;k=ka(c[(c[w>>2]|0)+12>>2]|0,w|0)|0;B=o;o=0;if(B&1){v=8;break a}B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=k;j=j+1|0}while(0);o=0;va(c[(c[y>>2]|0)+32>>2]|0,y|0,j|0,e|0,c[h>>2]|0)|0;B=o;o=0;if(B&1)v=8;else{B=(c[h>>2]|0)+(x-j)|0;c[h>>2]=B;c[g>>2]=(d|0)==(e|0)?B:f+(d-b)|0;Im(A);i=z;return}}while(0);if((v|0)==8)j=Na()|0;Im(A);Ya(j|0)}function Dp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+176|0;u=z+76|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+80|0;t=z+72|0;k=z+110|0;y=z+68|0;x=z+64|0;v=z+60|0;w=z+56|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58899,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,h[q>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<1)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(2,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(39,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Ep(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+80|0;l=q;b=q+70|0;n=q+12|0;p=q+32|0;k=q+8|0;m=q+4|0;a[b>>0]=a[58901]|0;a[b+1>>0]=a[58902]|0;a[b+2>>0]=a[58903]|0;a[b+3>>0]=a[58904]|0;a[b+4>>0]=a[58905]|0;a[b+5>>0]=a[58906]|0;h=Xo()|0;c[l>>2]=g;b=Su(n,20,h,b,l)|0;g=n+b|0;h=vp(n,g,e)|0;j=jn(e)|0;c[k>>2]=j;o=0;k=ra(37,k|0,44220)|0;r=o;o=0;if(r&1){r=Na()|0;pm(j)|0;Ya(r|0)}else{pm(j)|0;Pb[c[(c[k>>2]|0)+32>>2]&31](k,n,g,p)|0;r=p+b|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];r=cd(l,p,(h|0)==(g|0)?r:p+(h-n)|0,r,e,f)|0;i=q;return r|0}return 0}function Fp(a){a=a|0;return}function Gp(a){a=a|0;cj(a);return}function Hp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;h=m+20|0;j=m+16|0;k=m+12|0;l=m;a:do if(!(c[e+4>>2]&1)){l=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[h>>2]=c[j>>2];h=Mb[l&31](b,h,e,f,g&1)|0}else{h=jn(e)|0;c[k>>2]=h;o=0;j=ra(37,k|0,44368)|0;k=o;o=0;b:do if(k&1){m=Na()|0;pm(h)|0;h=m}else{pm(h)|0;h=c[j>>2]|0;if(g)Cb[c[h+24>>2]&127](l,j);else Cb[c[h+28>>2]&127](l,j);b=a[l>>0]|0;e=(b&1)==0;h=l+4|0;g=l+8|0;k=e?h:l+4|0;h=e?h:c[l+8>>2]|0;e=(b&1)==0;c:do if((h|0)!=((e?k:c[g>>2]|0)+((e?(b&255)>>>1:c[k>>2]|0)<<2)|0)){while(1){j=c[h>>2]|0;f=c[d>>2]|0;if(f){e=f+24|0;b=c[e>>2]|0;if((b|0)==(c[f+28>>2]|0)){o=0;j=ra(c[(c[f>>2]|0)+52>>2]|0,f|0,j|0)|0;b=o;o=0;if(b&1)break}else{c[e>>2]=b+4;c[b>>2]=j}if((j|0)==-1)c[d>>2]=0}h=h+4|0;b=a[l>>0]|0;e=(b&1)==0;if((h|0)==((e?k:c[g>>2]|0)+((e?(b&255)>>>1:c[k>>2]|0)<<2)|0))break c}h=Na()|0;Wm(l);break b}while(0);h=c[d>>2]|0;Wm(l);break a}while(0);Ya(h|0)}while(0);i=m;return h|0}function Ip(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+128|0;h=n;q=n+116|0;r=n+104|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,1,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(3,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=Uu(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function Jp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;t=Is(j,44212)|0;m=Is(j,44368)|0;Cb[c[(c[m>>2]|0)+20>>2]&127](w,m);r=a[w>>0]|0;s=w+4|0;a:do if(!(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0)){o=0;va(c[(c[t>>2]|0)+48>>2]|0,t|0,b|0,e|0,f|0)|0;u=o;o=0;if(u&1)u=5;else{j=f+(e-b<<2)|0;c[h>>2]=j;u=28}}else{c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,j|0)|0;r=o;o=0;if(r&1){u=5;break a}l=c[h>>2]|0;c[h>>2]=l+4;c[l>>2]=j;l=b+1|0;break}default:l=b}b:do if((e-l|0)>1?(a[l>>0]|0)==48:0){j=l+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:{r=l;break b}}o=0;k=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,48)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=k;o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,a[j>>0]|0)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=j;r=l+2|0}else r=l;while(0);if((r|0)!=(e|0)?(n=e+-1|0,r>>>0>>0):0){k=r;j=n;do{q=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=q;k=k+1|0;j=j+-1|0}while(k>>>0>>0)}o=0;m=ka(c[(c[m>>2]|0)+16>>2]|0,m|0)|0;q=o;o=0;if(!(q&1)){n=w+8|0;p=w+1|0;c:do if(r>>>0>>0){j=0;k=0;q=r;while(1){l=a[((a[w>>0]&1)==0?p:c[n>>2]|0)+k>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=c[h>>2]|0;c[h>>2]=j+4;c[j>>2]=m;j=a[w>>0]|0;l=0;k=(k>>>0<(((j&1)==0?(j&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+k|0}else l=j;o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,a[q>>0]|0)|0;x=o;o=0;if(x&1)break;x=c[h>>2]|0;c[h>>2]=x+4;c[x>>2]=j;q=q+1|0;if(q>>>0>=e>>>0)break c;else j=l+1|0}j=Na()|0;break a}while(0);l=b;j=f+(r-l<<2)|0;k=c[h>>2]|0;if((j|0)!=(k|0)){b=k+-4|0;if(j>>>0>>0){do{x=c[j>>2]|0;c[j>>2]=c[b>>2];c[b>>2]=x;j=j+4|0;b=b+-4|0}while(j>>>0>>0);b=l;j=k;u=28}else{b=l;j=k;u=28}}else{b=l;u=28}}else u=5}while(0);if((u|0)==5)j=Na()|0;else if((u|0)==28){c[g>>2]=(d|0)==(e|0)?j:f+(d-b<<2)|0;Im(w);i=v;return}Im(w);Ya(j|0)}function Kp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+224|0;h=n+8|0;a=n;q=n+196|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,1,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,22,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(3,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=Uu(h,k,r,s,d,e)|0;i=n;return s|0}return 0} + function ut(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+16|0;s=u;q=u+8|0;a:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(c[l>>2]|0))break a;l=l+4|0;if((l|0)==(f|0)){l=f;break}}}while(0);c[k>>2]=h;c[g>>2]=e;n=j;r=b+8|0;b:do if(!((h|0)==(j|0)|(e|0)==(f|0))){b=h;m=l;c:while(1){w=d;h=c[w+4>>2]|0;l=s;c[l>>2]=c[w>>2];c[l+4>>2]=h;l=qk(c[r>>2]|0)|0;o=0;h=sa(21,b|0,g|0,m-e>>2|0,n-b|0,d|0)|0;w=o;o=0;if(w&1){v=9;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=8;break}switch(h|0){case 0:{p=1;break b}case -1:{l=b;v=14;break c}default:{}}l=(c[k>>2]|0)+h|0;c[k>>2]=l;if((l|0)==(j|0)){v=27;break}if((m|0)==(f|0)){e=c[g>>2]|0;b=l;l=f}else{l=qk(c[r>>2]|0)|0;o=0;e=ma(34,q|0,0,d|0)|0;w=o;o=0;if(w&1){v=35;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=34;break}if((e|0)==-1){p=2;break b}if(e>>>0>(n-(c[k>>2]|0)|0)>>>0){p=1;break b}if(e){l=q;while(1){m=a[l>>0]|0;w=c[k>>2]|0;c[k>>2]=w+1;a[w>>0]=m;e=e+-1|0;if(!e)break;else l=l+1|0}}e=(c[g>>2]|0)+4|0;c[g>>2]=e;d:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(c[l>>2]|0))break d;l=l+4|0;if((l|0)==(f|0)){l=f;break}}}while(0);b=c[k>>2]|0}if((b|0)==(j|0)|(e|0)==(f|0)){v=47;break b}else m=l}if((v|0)==8){w=Na(0)|0;ec(w)}else if((v|0)==9){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==14){c[k>>2]=l;e:do if((e|0)!=(c[g>>2]|0)){while(1){w=c[e>>2]|0;b=qk(c[r>>2]|0)|0;o=0;l=ma(34,l|0,w|0,s|0)|0;w=o;o=0;if(w&1){t=b;break}if((b|0)!=0?(o=0,ka(75,b|0)|0,w=o,o=0,w&1):0){v=18;break}if((l|0)==-1)break e;l=(c[k>>2]|0)+l|0;c[k>>2]=l;e=e+4|0;if((e|0)==(c[g>>2]|0))break e}if((v|0)==18){w=Na(0)|0;ec(w)}e=Na()|0;if((t|0)!=0?(o=0,ka(75,t|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}while(0);c[g>>2]=e;p=2;break}else if((v|0)==27){e=c[g>>2]|0;v=47;break}else if((v|0)==34){w=Na(0)|0;ec(w)}else if((v|0)==35){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}}else v=47;while(0);if((v|0)==47)p=(e|0)!=(f|0)&1;i=u;return p|0}function vt(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+16|0;t=u;a:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(a[l>>0]|0))break a;l=l+1|0;if((l|0)==(f|0)){l=f;break}}}while(0);c[k>>2]=h;c[g>>2]=e;p=j;r=b+8|0;b:do if(!((h|0)==(j|0)|(e|0)==(f|0))){b=h;n=l;c:while(1){m=d;l=c[m+4>>2]|0;h=t;c[h>>2]=c[m>>2];c[h+4>>2]=l;h=n;l=qk(c[r>>2]|0)|0;o=0;m=sa(22,b|0,g|0,h-e|0,p-b>>2|0,d|0)|0;w=o;o=0;if(w&1){v=9;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=8;break}switch(m|0){case 0:{q=2;break b}case -1:{l=b;v=14;break c}default:{}}b=(c[k>>2]|0)+(m<<2)|0;c[k>>2]=b;if((b|0)==(j|0)){v=31;break}e=c[g>>2]|0;if((n|0)==(f|0))l=f;else{l=qk(c[r>>2]|0)|0;o=0;e=va(20,b|0,e|0,1,d|0)|0;w=o;o=0;if(w&1){v=38;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=37;break}if(e){q=2;break b}c[k>>2]=(c[k>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;d:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(a[l>>0]|0))break d;l=l+1|0;if((l|0)==(f|0)){l=f;break}}}while(0);b=c[k>>2]|0}if((b|0)==(j|0)|(e|0)==(f|0)){v=47;break b}else n=l}if((v|0)==8){w=Na(0)|0;ec(w)}else if((v|0)==9){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==14){c[k>>2]=l;e:do if((e|0)!=(c[g>>2]|0)){b=l;f:while(1){l=qk(c[r>>2]|0)|0;o=0;b=va(20,b|0,e|0,h-e|0,t|0)|0;w=o;o=0;if(w&1){v=19;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=18;break}switch(b|0){case -1:{v=25;break f}case -2:{v=26;break f}case 0:{e=e+1|0;break}default:e=e+b|0}b=(c[k>>2]|0)+4|0;c[k>>2]=b;if((e|0)==(c[g>>2]|0)){s=e;break e}}if((v|0)==18){w=Na(0)|0;ec(w)}else if((v|0)==19){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==25){c[g>>2]=e;q=2;break b}else if((v|0)==26){c[g>>2]=e;q=1;break b}}else s=e;while(0);c[g>>2]=s;q=(s|0)!=(f|0)&1;break}else if((v|0)==31){e=c[g>>2]|0;v=47;break}else if((v|0)==37){w=Na(0)|0;ec(w)}else if((v|0)==38){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}}else v=47;while(0);if((v|0)==47)q=(e|0)!=(f|0)&1;i=u;return q|0}function wt(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;j=i;i=i+16|0;h=j;c[g>>2]=e;e=qk(c[b+8>>2]|0)|0;o=0;b=ma(34,h|0,0,d|0)|0;d=o;o=0;if(d&1){h=Na()|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,j=o,o=0,j&1):0){j=Na(0)|0;ec(j)}Ya(h|0)}if((e|0)!=0?(o=0,ka(75,e|0)|0,d=o,o=0,d&1):0){d=Na(0)|0;ec(d)}switch(b|0){case 0:case -1:{h=2;break}default:{b=b+-1|0;if(b>>>0<=(f-(c[g>>2]|0)|0)>>>0)if(!b)h=0;else while(1){d=a[h>>0]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=d;b=b+-1|0;if(!b){h=0;break}else h=h+1|0}else h=1}}i=j;return h|0}function xt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+8|0;o=0;d=ka(75,c[b>>2]|0)|0;e=o;o=0;do if(e&1)f=16;else{o=0;e=ma(35,0,0,4)|0;a=o;o=0;if(a&1){a=Na(0)|0;if(!d)break;o=0;ka(75,d|0)|0;h=o;o=0;if(!(h&1))break;h=Na(0)|0;ec(h)}if((d|0)!=0?(o=0,ka(75,d|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}if(!e){a=c[b>>2]|0;if(a){o=0;a=ka(75,a|0)|0;h=o;o=0;if(h&1){f=16;break}if((a|0)!=0?(o=0,ka(75,a|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}else g=0}else g=1}else g=-1;return g|0}while(0);if((f|0)==16)a=Na(0)|0;ec(a);return 0}function yt(a){a=a|0;return 0}function zt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=e;j=a+8|0;a:do if((d|0)==(e|0)|(f|0)==0)a=0;else{a=0;i=0;while(1){h=qk(c[j>>2]|0)|0;o=0;g=ma(36,d|0,k-d|0,b|0)|0;n=o;o=0;if(n&1){m=h;break}if((h|0)!=0?(o=0,ka(75,h|0)|0,n=o,o=0,n&1):0){l=5;break}switch(g|0){case -2:case -1:break a;case 0:{d=d+1|0;g=1;break}default:d=d+g|0}a=g+a|0;i=i+1|0;if((d|0)==(e|0)|i>>>0>=f>>>0)break a}if((l|0)==5){n=Na(0)|0;ec(n)}a=Na()|0;if((m|0)!=0?(o=0,ka(75,m|0)|0,n=o,o=0,n&1):0){n=Na(0)|0;ec(n)}Ya(a|0)}while(0);return a|0}function At(a){a=a|0;var b=0,d=0;a=c[a+8>>2]|0;if(a){o=0;a=ka(75,a|0)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}if((a|0)!=0?(o=0,ka(75,a|0)|0,d=o,o=0,d&1):0){d=Na(0)|0;ec(d)}else b=4}else b=1;return b|0}function Bt(a){a=a|0;cj(a);return}function Ct(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Hv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Dt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Iv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Et(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Ft(a){a=a|0;return 0}function Gt(a){a=a|0;return 0}function Ht(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Jv(c,d,e,1114111,0)|0}function It(a){a=a|0;return 4}function Jt(a){a=a|0;cj(a);return}function Kt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Kv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Lt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Lv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Mt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Nt(a){a=a|0;return 0}function Ot(a){a=a|0;return 0}function Pt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Mv(c,d,e,1114111,0)|0}function Qt(a){a=a|0;return 4}function Rt(a){a=a|0;cj(a);return}function St(a){a=a|0;cj(a);return}function Tt(b,d){b=b|0;d=d|0;c[b+4>>2]=d+-1;c[b>>2]=44384;a[b+8>>0]=46;a[b+9>>0]=44;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}function Ut(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=44424;c[a+8>>2]=46;c[a+12>>2]=44;a=a+16|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Vt(a){a=a|0;c[a>>2]=44384;Im(a+12|0);return}function Wt(a){a=a|0;Vt(a);cj(a);return}function Xt(a){a=a|0;c[a>>2]=44424;Im(a+16|0);return}function Yt(a){a=a|0;Xt(a);cj(a);return}function Zt(b){b=b|0;return a[b+8>>0]|0}function _t(a){a=a|0;return c[a+8>>2]|0}function $t(b){b=b|0;return a[b+9>>0]|0}function au(a){a=a|0;return c[a+12>>2]|0}function bu(a,b){a=a|0;b=b|0;Fm(a,b+12|0);return}function cu(a,b){a=a|0;b=b|0;Fm(a,b+16|0);return}function du(a,b){a=a|0;b=b|0;Gm(a,59024,4);return}function eu(a,b){a=a|0;b=b|0;Um(a,44996,pl(44996)|0);return}function fu(a,b){a=a|0;b=b|0;Gm(a,59029,5);return}function gu(a,b){a=a|0;b=b|0;Um(a,45016,pl(45016)|0);return}function hu(a){a=a|0;switch(c[a+4>>2]&74|0){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function iu(b){b=b|0;do if((a[2464]|0)==0?(Ha(2464)|0)!=0:0){if((a[2472]|0)==0?(Ha(2472)|0)!=0:0){b=45040;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=45208);kb(193,0,n|0)|0;Pa(2472)}o=0;ra(41,45040,59035)|0;b=o;o=0;if(((((((((((((!(b&1)?(o=0,ra(41,45052,59042)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45064,59049)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45076,59057)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45088,59067)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45100,59076)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45112,59083)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45124,59092)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45136,59096)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45148,59100)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45160,59104)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45172,59108)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45184,59112)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45196,59116)|0,b=o,o=0,!(b&1)):0){c[11302]=45040;Pa(2464);break}b=Na()|0;sb(2464);Ya(b|0)}while(0);return c[11302]|0}function ju(b){b=b|0;do if((a[2480]|0)==0?(Ha(2480)|0)!=0:0){if((a[2488]|0)==0?(Ha(2488)|0)!=0:0){b=45212;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=45380);kb(194,0,n|0)|0;Pa(2488)}o=0;ra(42,45212,45380)|0;b=o;o=0;if(((((((((((((!(b&1)?(o=0,ra(42,45224,45408)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45236,45436)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45248,45468)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45260,45508)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45272,45544)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45284,45572)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45296,45608)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45308,45624)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45320,45640)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45332,45656)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45344,45672)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45356,45688)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45368,45704)|0,b=o,o=0,!(b&1)):0){c[11430]=45212;Pa(2480);break}b=Na()|0;sb(2480);Ya(b|0)}while(0);return c[11430]|0}function ku(b){b=b|0;a:do if((a[2496]|0)==0?(Ha(2496)|0)!=0:0){if((a[2504]|0)==0?(Ha(2504)|0)!=0:0){b=45724;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=46012);kb(195,0,n|0)|0;Pa(2504)}o=0;ra(41,45724,59120)|0;b=o;o=0;do if((((((((((((((!(b&1)?(o=0,ra(41,45736,59128)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45748,59137)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45760,59143)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45772,59149)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45784,59153)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45796,59158)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45808,59163)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45820,59170)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45832,59180)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45844,59188)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45856,59197)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45868,59206)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45880,59210)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45892,59214)|0,b=o,o=0,!(b&1)):0){o=0;ra(41,45904,59218)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45916,59149)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45928,59222)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45940,59226)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45952,59230)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45964,59234)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45976,59238)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45988,59242)|0;b=o;o=0;if(b&1)break;o=0;ra(41,46e3,59246)|0;b=o;o=0;if(b&1)break;c[11503]=45724;Pa(2496);break a}while(0);b=Na()|0;sb(2496);Ya(b|0)}while(0);return c[11503]|0}function lu(b){b=b|0;a:do if((a[2512]|0)==0?(Ha(2512)|0)!=0:0){if((a[2520]|0)==0?(Ha(2520)|0)!=0:0){b=46016;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=46304);kb(196,0,n|0)|0;Pa(2520)}o=0;ra(42,46016,46304)|0;b=o;o=0;do if((((((((((((((!(b&1)?(o=0,ra(42,46028,46336)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46040,46372)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46052,46396)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46064,46420)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46076,46436)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46088,46456)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46100,46476)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46112,46504)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46124,46544)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46136,46576)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46148,46612)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46160,46648)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46172,46664)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46184,46680)|0,b=o,o=0,!(b&1)):0){o=0;ra(42,46196,46696)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46208,46420)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46220,46712)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46232,46728)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46244,46744)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46256,46760)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46268,46776)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46280,46792)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46292,46808)|0;b=o;o=0;if(b&1)break;c[11706]=46016;Pa(2512);break a}while(0);b=Na()|0;sb(2512);Ya(b|0)}while(0);return c[11706]|0}function mu(b){b=b|0;do if((a[2528]|0)==0?(Ha(2528)|0)!=0:0){if((a[2536]|0)==0?(Ha(2536)|0)!=0:0){b=46828;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=47116);kb(197,0,n|0)|0;Pa(2536)}o=0;ra(41,46828,59250)|0;b=o;o=0;if(!(b&1)?(o=0,ra(41,46840,59253)|0,b=o,o=0,!(b&1)):0){c[11779]=46828;Pa(2528);break}b=Na()|0;sb(2528);Ya(b|0)}while(0);return c[11779]|0}function nu(b){b=b|0;do if((a[2544]|0)==0?(Ha(2544)|0)!=0:0){if((a[2552]|0)==0?(Ha(2552)|0)!=0:0){b=47120;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=47408);kb(198,0,n|0)|0;Pa(2552)}o=0;ra(42,47120,47408)|0;b=o;o=0;if(!(b&1)?(o=0,ra(42,47132,47420)|0,b=o,o=0,!(b&1)):0){c[11858]=47120;Pa(2544);break}b=Na()|0;sb(2544);Ya(b|0)}while(0);return c[11858]|0}function ou(b){b=b|0;do if((a[2560]|0)==0?(Ha(2560)|0)!=0:0){o=0;wa(5,47436,59256,8);b=o;o=0;if(b&1){b=Na()|0;sb(2560);Ya(b|0)}else{kb(199,47436,n|0)|0;Pa(2560);break}}while(0);return 47436}function pu(b){b=b|0;var c=0;do if((a[2568]|0)==0?(Ha(2568)|0)!=0:0){o=0;b=ka(76,47448)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47484,47448,b|0),c=o,o=0,!(c&1)):0){kb(200,47484,n|0)|0;Pa(2568);break}c=Na()|0;sb(2568);Ya(c|0)}while(0);return 47484}function qu(b){b=b|0;do if((a[2576]|0)==0?(Ha(2576)|0)!=0:0){o=0;wa(5,47496,59265,8);b=o;o=0;if(b&1){b=Na()|0;sb(2576);Ya(b|0)}else{kb(199,47496,n|0)|0;Pa(2576);break}}while(0);return 47496}function ru(b){b=b|0;var c=0;do if((a[2584]|0)==0?(Ha(2584)|0)!=0:0){o=0;b=ka(76,47508)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47544,47508,b|0),c=o,o=0,!(c&1)):0){kb(200,47544,n|0)|0;Pa(2584);break}c=Na()|0;sb(2584);Ya(c|0)}while(0);return 47544}function su(b){b=b|0;do if((a[2592]|0)==0?(Ha(2592)|0)!=0:0){o=0;wa(5,47556,59274,20);b=o;o=0;if(b&1){b=Na()|0;sb(2592);Ya(b|0)}else{kb(199,47556,n|0)|0;Pa(2592);break}}while(0);return 47556}function tu(b){b=b|0;var c=0;do if((a[2600]|0)==0?(Ha(2600)|0)!=0:0){o=0;b=ka(76,47568)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47652,47568,b|0),c=o,o=0,!(c&1)):0){kb(200,47652,n|0)|0;Pa(2600);break}c=Na()|0;sb(2600);Ya(c|0)}while(0);return 47652}function uu(b){b=b|0;do if((a[2608]|0)==0?(Ha(2608)|0)!=0:0){o=0;wa(5,47664,59295,11);b=o;o=0;if(b&1){b=Na()|0;sb(2608);Ya(b|0)}else{kb(199,47664,n|0)|0;Pa(2608);break}}while(0);return 47664}function vu(b){b=b|0;var c=0;do if((a[2616]|0)==0?(Ha(2616)|0)!=0:0){o=0;b=ka(76,47676)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47724,47676,b|0),c=o,o=0,!(c&1)):0){kb(200,47724,n|0)|0;Pa(2616);break}c=Na()|0;sb(2616);Ya(c|0)}while(0);return 47724}function wu(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=44304;a=a+8|0;b=c[a>>2]|0;o=0;d=ua(3)|0;e=o;o=0;do if(!(e&1)){if((b|0)!=(d|0)?(o=0,ha(188,c[a>>2]|0),e=o,o=0,e&1):0)break;return}while(0);e=Na(0)|0;ec(e)}function xu(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+112|0;m=z;p=(g-f|0)/12|0;do if(p>>>0>100){m=Fl(p)|0;if((m|0)==0?(o=0,xa(6),y=o,o=0,y&1):0){l=0;s=6;break}l=m;s=11}else{l=0;s=11}while(0);a:do if((s|0)==11){if((f|0)==(g|0))n=0;else{s=f;q=0;r=m;while(1){n=a[s>>0]|0;if(!(n&1))n=(n&255)>>>1;else n=c[s+4>>2]|0;if(!n){a[r>>0]=2;n=q+1|0;p=p+-1|0}else{a[r>>0]=1;n=q}s=s+12|0;if((s|0)==(g|0))break;else{q=n;r=r+1|0}}}x=(f|0)==(g|0);y=(f|0)==(g|0);w=0;t=n;b:while(1){n=c[b>>2]|0;do if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;v=o;o=0;if(v&1){s=5;break b}if((n|0)==-1){c[b>>2]=0;n=0;break}else{n=c[b>>2]|0;break}}}else n=0;while(0);s=(n|0)==0;q=c[e>>2]|0;if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;n=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;v=o;o=0;if(v&1){s=5;break}if((n|0)==-1){c[e>>2]=0;q=0}}}else q=0;r=(q|0)==0;n=c[b>>2]|0;if(!((p|0)!=0&(s^r))){s=64;break}q=c[n+12>>2]|0;if((q|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;v=o;o=0;if(v&1){s=5;break}}else n=d[q>>0]|0;n=n&255;if(!k){o=0;n=ra(c[(c[h>>2]|0)+12>>2]|0,h|0,n|0)|0;v=o;o=0;if(v&1){s=5;break}}v=w+1|0;if(x){n=0;s=t}else{r=0;u=f;s=t;t=m;while(1){do if((a[t>>0]|0)==1){if(!(a[u>>0]&1))q=u+1|0;else q=c[u+8>>2]|0;q=a[q+w>>0]|0;if(!k){o=0;q=ra(c[(c[h>>2]|0)+12>>2]|0,h|0,q|0)|0;A=o;o=0;if(A&1){s=4;break b}}if(n<<24>>24!=q<<24>>24){a[t>>0]=0;q=r;p=p+-1|0;break}q=a[u>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[u+4>>2]|0;if((q|0)==(v|0)){a[t>>0]=2;q=1;s=s+1|0;p=p+-1|0}else q=1}else q=r;while(0);u=u+12|0;if((u|0)==(g|0)){n=q;break}else{r=q;t=t+1|0}}}if(!n){w=v;t=s;continue}n=c[b>>2]|0;q=n+12|0;r=c[q>>2]|0;if((r|0)==(c[n+16>>2]|0)){o=0;ka(c[(c[n>>2]|0)+40>>2]|0,n|0)|0;A=o;o=0;if(A&1){s=5;break}}else c[q>>2]=r+1;if((s+p|0)>>>0<2|y){w=v;t=s;continue}else{n=f;r=s;s=m}while(1){if((a[s>>0]|0)==2){q=a[n>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[n+4>>2]|0;if((q|0)!=(v|0)){a[s>>0]=0;r=r+-1|0}}n=n+12|0;if((n|0)==(g|0)){w=v;t=r;continue b}else s=s+1|0}}if((s|0)==4){f=Na()|0;break}else if((s|0)==5){f=Na()|0;break}else if((s|0)==64){do if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;A=o;o=0;if(A&1){s=6;break a}if((n|0)==-1){c[b>>2]=0;n=0;break}else{n=c[b>>2]|0;break}}}else n=0;while(0);p=(n|0)==0;do if(!r){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;n=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;A=o;o=0;if(A&1){s=6;break a}if((n|0)==-1){c[e>>2]=0;s=76;break}}if(!p)s=77}else s=76;while(0);if((s|0)==76?p:0)s=77;if((s|0)==77)c[j>>2]=c[j>>2]|2;c:do if((f|0)==(g|0))s=81;else while(1){if((a[m>>0]|0)==2)break c;f=f+12|0;if((f|0)==(g|0)){s=81;break}else m=m+1|0}while(0);if((s|0)==81){c[j>>2]=c[j>>2]|4;f=g}if(l)Gl(l);i=z;return f|0}}while(0);if((s|0)==6)f=Na()|0;if(l)Gl(l);Ya(f|0);return 0}function yu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(21,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function zu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){E=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;k=(b|0)==0;l=c[f>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(k)break;else break b;o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;n=o;o=0;if(n&1){E=24;break b}if((m|0)!=-1)if(k)break;else break b;else{c[f>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(k){l=0;break}else l=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){E=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){E=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+k}m=b+12|0;k=c[m>>2]|0;n=b+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}}else k=d[k>>0]|0;if(Wo(k&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[m>>2]=k+1;continue}}if((E|0)==24){b=Na()|0;break}F=a[C>>0]|0;if((((F&1)==0?(F&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){F=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=F}o=0;g=va(22,g|0,c[v>>2]|0,h|0,u|0)|0;k=D;F=o;o=0;if(!(F&1)){F=j;c[F>>2]=g;c[F+4>>2]=k;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((b|0)==-1){c[f>>2]=0;E=49;break}}if(!g)E=50}else E=49;while(0);if((E|0)==49?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;F=c[e>>2]|0;Im(B);Im(C);i=A;return F|0}else E=25}else E=25;while(0);if((E|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Au(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;B=i;i=i+240|0;u=B+202|0;l=B+200|0;D=B+24|0;C=B+12|0;w=B+8|0;z=B+40|0;A=B+4|0;x=B;v=hu(h)|0;kp(D,h,u,l);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;if(!(a[C>>0]&1))e=10;else e=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,e|0,0);t=o;o=0;a:do if(!(t&1)){r=C+8|0;s=C+1|0;h=(a[C>>0]&1)==0?s:c[r>>2]|0;c[w>>2]=h;c[A>>2]=z;c[x>>2]=0;t=C+4|0;q=a[l>>0]|0;e=c[f>>2]|0;b:while(1){if(e){if((c[e+12>>2]|0)==(c[e+16>>2]|0)){o=0;l=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;p=o;o=0;if(p&1){E=24;break}if((l|0)==-1){c[f>>2]=0;e=0}}}else e=0;m=(e|0)==0;l=c[g>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(m)break;else break b;o=0;n=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){E=24;break b}if((n|0)!=-1)if(m)break;else break b;else{c[g>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(m){l=0;break}else l=0}m=a[C>>0]|0;m=(m&1)==0?(m&255)>>>1:c[t>>2]|0;if((c[w>>2]|0)==(h+m|0)){o=0;wa(8,C|0,m<<1|0,0);p=o;o=0;if(p&1){E=24;break}if(!(a[C>>0]&1))h=10;else h=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,h|0,0);p=o;o=0;if(p&1){E=24;break}h=(a[C>>0]&1)==0?s:c[r>>2]|0;c[w>>2]=h+m}n=e+12|0;m=c[n>>2]|0;p=e+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=24;break}}else m=d[m>>0]|0;if(Wo(m&255,v,h,w,x,q,D,z,A,u)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[e>>2]|0)+40>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[n>>2]=l+1;continue}}if((E|0)==24){e=Na()|0;break}F=a[D>>0]|0;if((((F&1)==0?(F&255)>>>1:c[D+4>>2]|0)|0)!=0?(y=c[A>>2]|0,(y-z|0)<160):0){F=c[x>>2]|0;c[A>>2]=y+4;c[y>>2]=F}o=0;h=va(23,h|0,c[w>>2]|0,j|0,v|0)|0;F=o;o=0;if(!(F&1)){b[k>>1]=h;Ur(D,z,c[A>>2]|0,j);if(e){if((c[e+12>>2]|0)==(c[e+16>>2]|0)){o=0;h=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=25;break}if((h|0)==-1){c[f>>2]=0;e=0}}}else e=0;h=(e|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;e=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((e|0)==-1){c[g>>2]=0;E=49;break}}if(!h)E=50}else E=49;while(0);if((E|0)==49?h:0)E=50;if((E|0)==50)c[j>>2]=c[j>>2]|2;F=c[f>>2]|0;Im(C);Im(D);i=B;return F|0}else E=25}else E=25;while(0);if((E|0)==25)e=Na()|0;Im(C);Im(D);Ya(e|0);return 0}function Bu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(24,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Cu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(25,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Du(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){E=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;k=(b|0)==0;l=c[f>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(k)break;else break b;o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;n=o;o=0;if(n&1){E=24;break b}if((m|0)!=-1)if(k)break;else break b;else{c[f>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(k){l=0;break}else l=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){E=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){E=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+k}m=b+12|0;k=c[m>>2]|0;n=b+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}}else k=d[k>>0]|0;if(Wo(k&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[m>>2]=k+1;continue}}if((E|0)==24){b=Na()|0;break}F=a[C>>0]|0;if((((F&1)==0?(F&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){F=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=F}o=0;g=va(26,g|0,c[v>>2]|0,h|0,u|0)|0;k=D;F=o;o=0;if(!(F&1)){F=j;c[F>>2]=g;c[F+4>>2]=k;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((b|0)==-1){c[f>>2]=0;E=49;break}}if(!g)E=50}else E=49;while(0);if((E|0)==49?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;F=c[e>>2]|0;Im(B);Im(C);i=A;return F|0}else E=25}else E=25;while(0);if((E|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Eu(b,e,f,h,j,k){b=b|0;e=e|0;f=f|0;h=h|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,h,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;h=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=h;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(h+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))h=10;else h=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,h|0,0);q=o;o=0;if(q&1){H=24;break}h=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=h+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,h,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(1,h|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){g[k>>2]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;h=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((h|0)==-1){c[e>>2]=0;b=0}}}else b=0;h=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!h)H=50}else H=49;while(0);if((H|0)==49?h:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Fu(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,g,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(g+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))g=10;else g=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,g|0,0);q=o;o=0;if(q&1){H=24;break}g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,g,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(2,g|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){h[k>>3]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!g)H=50}else H=49;while(0);if((H|0)==49?g:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Gu(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,g,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(g+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))g=10;else g=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,g|0,0);q=o;o=0;if(q&1){H=24;break}g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,g,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(3,g|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){h[k>>3]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!g)H=50}else H=49;while(0);if((H|0)==49?g:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Hu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=qk(b)|0;b=fl(a,d,g)|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}i=f;return b|0}function Iu(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+112|0;l=y;n=(f-e|0)/12|0;do if(n>>>0>100){l=Fl(n)|0;if((l|0)==0?(o=0,xa(6),x=o,o=0,x&1):0){k=0;q=6;break}k=l;q=11}else{k=0;q=11}while(0);a:do if((q|0)==11){if((e|0)==(f|0))m=0;else{r=e;p=0;q=l;while(1){m=a[r>>0]|0;if(!(m&1))m=(m&255)>>>1;else m=c[r+4>>2]|0;if(!m){a[q>>0]=2;m=p+1|0;n=n+-1|0}else{a[q>>0]=1;m=p}r=r+12|0;if((r|0)==(f|0))break;else{p=m;q=q+1|0}}}w=(e|0)==(f|0);x=(e|0)==(f|0);v=0;s=n;b:while(1){n=c[b>>2]|0;do if(n){p=c[n+12>>2]|0;if((p|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;u=o;o=0;if(u&1){q=5;break b}}else n=c[p>>2]|0;if((n|0)==-1){c[b>>2]=0;r=1;break}else{r=(c[b>>2]|0)==0;break}}else r=1;while(0);p=c[d>>2]|0;if(p){n=c[p+12>>2]|0;if((n|0)==(c[p+16>>2]|0)){o=0;n=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;u=o;o=0;if(u&1){q=5;break}}else n=c[n>>2]|0;if((n|0)==-1){c[d>>2]=0;p=0;q=1}else q=0}else{p=0;q=1}n=c[b>>2]|0;if(!((s|0)!=0&(r^q))){q=66;break}p=c[n+12>>2]|0;if((p|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;u=o;o=0;if(u&1){q=5;break}}else n=c[p>>2]|0;if(!j){o=0;n=ra(c[(c[g>>2]|0)+28>>2]|0,g|0,n|0)|0;u=o;o=0;if(u&1){q=5;break}}u=v+1|0;if(w){n=0;r=s}else{r=0;t=e;q=s;s=l;while(1){do if((a[s>>0]|0)==1){if(!(a[t>>0]&1))p=t+4|0;else p=c[t+8>>2]|0;p=c[p+(v<<2)>>2]|0;if(!j){o=0;p=ra(c[(c[g>>2]|0)+28>>2]|0,g|0,p|0)|0;z=o;o=0;if(z&1){q=4;break b}}if((n|0)!=(p|0)){a[s>>0]=0;p=r;q=q+-1|0;break}p=a[t>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[t+4>>2]|0;if((p|0)==(u|0)){a[s>>0]=2;p=1;m=m+1|0;q=q+-1|0}else p=1}else p=r;while(0);t=t+12|0;if((t|0)==(f|0)){n=p;r=q;break}else{r=p;s=s+1|0}}}if(!n){v=u;s=r;continue}n=c[b>>2]|0;p=n+12|0;q=c[p>>2]|0;if((q|0)==(c[n+16>>2]|0)){o=0;ka(c[(c[n>>2]|0)+40>>2]|0,n|0)|0;z=o;o=0;if(z&1){q=5;break}}else c[p>>2]=q+4;if((m+r|0)>>>0<2|x){v=u;s=r;continue}else{n=e;q=l}while(1){if((a[q>>0]|0)==2){p=a[n>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[n+4>>2]|0;if((p|0)!=(u|0)){a[q>>0]=0;m=m+-1|0}}n=n+12|0;if((n|0)==(f|0)){v=u;s=r;continue b}else q=q+1|0}}if((q|0)==4){e=Na()|0;break}else if((q|0)==5){e=Na()|0;break}else if((q|0)==66){do if(n){m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0)){o=0;m=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;z=o;o=0;if(z&1){q=6;break a}}else m=c[m>>2]|0;if((m|0)==-1){c[b>>2]=0;n=1;break}else{n=(c[b>>2]|0)==0;break}}else n=1;while(0);do if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0)){o=0;m=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;z=o;o=0;if(z&1){q=6;break a}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else{q=81;break}else{c[d>>2]=0;q=79;break}}else q=79;while(0);if((q|0)==79?n:0)q=81;if((q|0)==81)c[h>>2]=c[h>>2]|2;c:do if((e|0)==(f|0))q=85;else while(1){if((a[l>>0]|0)==2)break c;e=e+12|0;if((e|0)==(f|0)){q=85;break}else l=l+1|0}while(0);if((q|0)==85){c[h>>2]=c[h>>2]|4;e=f}if(k)Gl(k);i=y;return e|0}}while(0);if((q|0)==6)e=Na()|0;if(k)Gl(k);Ya(e|0);return 0}function Ju(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(21,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Ku(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}k=c[e>>2]|0;do if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0)){o=0;f=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;m=o;o=0;if(m&1){C=25;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(l)break;else break b;else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(l){k=0;break}else k=0}f=a[A>>0]|0;f=(f&1)==0?(f&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+f|0)){o=0;wa(8,A|0,f<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+f}l=j+12|0;f=c[l>>2]|0;m=j+16|0;if((f|0)==(c[m>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}}else f=c[f>>2]|0;if(jp(f,t,b,u,v,n,B,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0)){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}else continue}else{c[l>>2]=f+4;continue}}if((C|0)==25){b=Na()|0;break}E=a[B>>0]|0;if((((E&1)==0?(E&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){E=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=E}o=0;b=va(22,b|0,c[u>>2]|0,g|0,t|0)|0;f=D;E=o;o=0;if(!(E&1)){E=h;c[E>>2]=b;c[E+4>>2]=f;Ur(B,x,c[y>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;E=c[d>>2]|0;Im(A);Im(B);i=z;return E|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Lu(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+320|0;t=A+208|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;np(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))d=10;else d=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,d|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;d=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=d;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=c[k>>2]|0;k=c[e>>2]|0;b:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0)){o=0;g=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=25;break}}else g=c[g>>2]|0;if((g|0)==-1){c[e>>2]=0;g=0;l=1}else{g=k;l=0}}else{g=0;l=1}m=c[f>>2]|0;do if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0)){o=0;k=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;n=o;o=0;if(n&1){D=25;break b}}else k=c[k>>2]|0;if((k|0)!=-1)if(l)break;else{k=m;break b}else{c[f>>2]=0;D=17;break}}else D=17;while(0);if((D|0)==17){D=0;if(l){k=0;break}else m=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(d+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){D=25;break}if(!(a[B>>0]&1))d=10;else d=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,d|0,0);n=o;o=0;if(n&1){D=25;break}d=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=d+k}l=g+12|0;k=c[l>>2]|0;n=g+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=25;break}}else k=c[k>>2]|0;if(jp(k,u,d,v,w,p,C,y,z,t)|0){k=m;break}k=c[l>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=25;break}else{k=g;continue}}else{c[l>>2]=k+4;k=g;continue}}if((D|0)==25){d=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;d=va(23,d|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){b[j>>1]=d;Ur(C,y,c[z>>2]|0,h);if(g){d=c[g+12>>2]|0;if((d|0)==(c[g+16>>2]|0)){o=0;d=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=26;break}}else d=c[d>>2]|0;if((d|0)==-1){c[e>>2]=0;g=1}else g=0}else g=1;do if(k){d=c[k+12>>2]|0;if((d|0)==(c[k+16>>2]|0)){o=0;d=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=26;break a}}else d=c[d>>2]|0;if((d|0)!=-1)if(g)break;else{D=53;break}else{c[f>>2]=0;D=51;break}}else D=51;while(0);if((D|0)==51?g:0)D=53;if((D|0)==53)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=26}else D=26;while(0);if((D|0)==26)d=Na()|0;Im(B);Im(C);Ya(d|0);return 0}function Mu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(24,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Nu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(25,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Ou(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}k=c[e>>2]|0;do if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0)){o=0;f=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;m=o;o=0;if(m&1){C=25;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(l)break;else break b;else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(l){k=0;break}else k=0}f=a[A>>0]|0;f=(f&1)==0?(f&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+f|0)){o=0;wa(8,A|0,f<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+f}l=j+12|0;f=c[l>>2]|0;m=j+16|0;if((f|0)==(c[m>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}}else f=c[f>>2]|0;if(jp(f,t,b,u,v,n,B,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0)){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}else continue}else{c[l>>2]=f+4;continue}}if((C|0)==25){b=Na()|0;break}E=a[B>>0]|0;if((((E&1)==0?(E&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){E=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=E}o=0;b=va(26,b|0,c[u>>2]|0,g|0,t|0)|0;f=D;E=o;o=0;if(!(E&1)){E=h;c[E>>2]=b;c[E+4>>2]=f;Ur(B,x,c[y>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;E=c[d>>2]|0;Im(A);Im(B);i=z;return E|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Pu(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(1,b|0,c[x>>2]|0,h|0);H=o;o=0;if(!(H&1)){g[j>>2]=k;Ur(F,B,c[C>>2]|0,h);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[h>>2]=c[h>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Qu(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(2,b|0,c[x>>2]|0,g|0);H=o;o=0;if(!(H&1)){h[j>>3]=k;Ur(F,B,c[C>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[g>>2]=c[g>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Ru(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(3,b|0,c[x>>2]|0,g|0);H=o;o=0;if(!(H&1)){h[j>>3]=k;Ur(F,B,c[C>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[g>>2]=c[g>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Su(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+16|0;h=g;c[h>>2]=f;f=qk(d)|0;d=el(a,b,e,h)|0;if((f|0)!=0?(o=0,ka(75,f|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}i=g;return d|0}function Tu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=qk(b)|0;o=0;b=ma(37,a|0,d|0,g|0)|0;a=o;o=0;if(a&1){b=Na()|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}Ya(b|0)}else{if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}i=f;return b|0}return 0}function Uu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0;p=i;i=i+16|0;n=p;j=c[b>>2]|0;a:do if(!j)j=0;else{q=d;l=f-q>>2;m=g+12|0;k=c[m>>2]|0;l=(k|0)>(l|0)?k-l|0:0;k=e;q=k-q|0;g=q>>2;if((q|0)>0?(Gb[c[(c[j>>2]|0)+48>>2]&63](j,d,g)|0)!=(g|0):0){c[b>>2]=0;j=0;break}do if((l|0)>0){Vm(n,l,h);o=0;g=ma(c[(c[j>>2]|0)+48>>2]|0,j|0,((a[n>>0]&1)==0?n+4|0:c[n+8>>2]|0)|0,l|0)|0;q=o;o=0;if(q&1){q=Na()|0;Wm(n);Ya(q|0)}if((g|0)==(l|0)){Wm(n);break}else{c[b>>2]=0;Wm(n);j=0;break a}}while(0);q=f-k|0;f=q>>2;if((q|0)>0?(Gb[c[(c[j>>2]|0)+48>>2]&63](j,e,f)|0)!=(f|0):0){c[b>>2]=0;j=0;break}c[m>>2]=0}while(0);i=p;return j|0}function Vu(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=c[a>>2]|0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0))if((Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1){c[a>>2]=0;i=0;break}else{i=c[a>>2]|0;break}}else i=0;while(0);j=(i|0)==0;i=c[e>>2]|0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0)?(Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1:0){c[e>>2]=0;r=11;break}if(j)r=13;else r=12}else r=11;while(0);if((r|0)==11)if(j)r=12;else{i=0;r=13}a:do if((r|0)==12){c[f>>2]=c[f>>2]|6;i=0}else if((r|0)==13){j=c[a>>2]|0;k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0))j=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=d[k>>0]|0;k=j&255;if(k<<24>>24>-1?(q=g+8|0,(b[(c[q>>2]|0)+(j<<24>>24<<1)>>1]&2048)!=0):0){m=(Gb[c[(c[g>>2]|0)+36>>2]&63](g,k,0)|0)<<24>>24;j=c[a>>2]|0;k=j+12|0;l=c[k>>2]|0;if((l|0)==(c[j+16>>2]|0)){Eb[c[(c[j>>2]|0)+40>>2]&127](j)|0;o=h;n=i;h=i;i=m}else{c[k>>2]=l+1;o=h;n=i;h=i;i=m}while(1){i=i+-48|0;p=o+-1|0;j=c[a>>2]|0;do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0))if((Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[a>>2]=0;j=0;break}else{j=c[a>>2]|0;break}}else j=0;while(0);l=(j|0)==0;if(h)if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;k=0;h=0}else{k=n;h=n}else k=n;else{k=n;h=0}j=c[a>>2]|0;if(!((o|0)>1&(l^(h|0)==0)))break;l=c[j+12>>2]|0;if((l|0)==(c[j+16>>2]|0))j=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=d[l>>0]|0;l=j&255;if(l<<24>>24<=-1)break a;if(!(b[(c[q>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=((Gb[c[(c[g>>2]|0)+36>>2]&63](g,l,0)|0)<<24>>24)+(i*10|0)|0;j=c[a>>2]|0;l=j+12|0;m=c[l>>2]|0;if((m|0)==(c[j+16>>2]|0)){Eb[c[(c[j>>2]|0)+40>>2]&127](j)|0;o=p;n=k;continue}else{c[l>>2]=m+1;o=p;n=k;continue}}do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0))if((Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[a>>2]=0;j=0;break}else{j=c[a>>2]|0;break}}else j=0;while(0);j=(j|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)?(Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1:0){c[e>>2]=0;r=50;break}if(j)break a}else r=50;while(0);if((r|0)==50?!j:0)break;c[f>>2]=c[f>>2]|2;break}c[f>>2]=c[f>>2]|4;i=0}while(0);return i|0}function Wu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=c[a>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))g=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=c[h>>2]|0;if((g|0)==-1){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);h=c[b>>2]|0;do if(h){g=c[h+12>>2]|0;if((g|0)==(c[h+16>>2]|0))g=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else g=c[g>>2]|0;if((g|0)!=-1)if(i){o=17;break}else{o=16;break}else{c[b>>2]=0;o=14;break}}else o=14;while(0);if((o|0)==14)if(i)o=16;else{h=0;o=17}a:do if((o|0)==16){c[d>>2]=c[d>>2]|6;g=0}else if((o|0)==17){g=c[a>>2]|0;i=c[g+12>>2]|0;if((i|0)==(c[g+16>>2]|0))g=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=c[i>>2]|0;if(!(Gb[c[(c[e>>2]|0)+12>>2]&63](e,2048,g)|0)){c[d>>2]=c[d>>2]|4;g=0;break}g=(Gb[c[(c[e>>2]|0)+52>>2]&63](e,g,0)|0)<<24>>24;i=c[a>>2]|0;j=i+12|0;k=c[j>>2]|0;if((k|0)==(c[i+16>>2]|0)){Eb[c[(c[i>>2]|0)+40>>2]&127](i)|0;m=f;l=h;j=h}else{c[j>>2]=k+4;m=f;l=h;j=h}while(1){g=g+-48|0;n=m+-1|0;h=c[a>>2]|0;do if(h){i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=c[i>>2]|0;if((h|0)==-1){c[a>>2]=0;k=1;break}else{k=(c[a>>2]|0)==0;break}}else k=1;while(0);do if(j){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0))h=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else h=c[h>>2]|0;if((h|0)==-1){c[b>>2]=0;j=0;f=0;h=1;break}else{j=l;f=l;h=(l|0)==0;break}}else{j=l;f=0;h=1}while(0);i=c[a>>2]|0;if(!((m|0)>1&(k^h)))break;h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=c[h>>2]|0;if(!(Gb[c[(c[e>>2]|0)+12>>2]&63](e,2048,h)|0))break a;g=((Gb[c[(c[e>>2]|0)+52>>2]&63](e,h,0)|0)<<24>>24)+(g*10|0)|0;h=c[a>>2]|0;i=h+12|0;k=c[i>>2]|0;if((k|0)==(c[h+16>>2]|0)){Eb[c[(c[h>>2]|0)+40>>2]&127](h)|0;m=n;l=j;j=f;continue}else{c[i>>2]=k+4;m=n;l=j;j=f;continue}}do if(i){h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=c[h>>2]|0;if((h|0)==-1){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);do if(j){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0))h=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else h=c[h>>2]|0;if((h|0)!=-1)if(i)break a;else break;else{c[b>>2]=0;o=60;break}}else o=60;while(0);if((o|0)==60?!i:0)break;c[d>>2]=c[d>>2]|2}while(0);return g|0}function Xu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h|0;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+h;c[d>>2]=(c[a>>2]|0)+f;return}function Yu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h>>2;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+(h<<2);c[d>>2]=(c[a>>2]|0)+(f>>>2<<2);return}function Zu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=d;f=a[b>>0]|0;if(!(f&1)){g=10;k=(f&255)>>>1}else{f=c[b>>2]|0;g=(f&-2)+-1|0;k=c[b+4>>2]|0;f=f&255}j=e-h|0;do if((e|0)!=(d|0)){if((g-k|0)>>>0>>0){Tm(b,g,k+j-g|0,k,k,0,0);f=a[b>>0]|0}if(!(f&1))i=b+1|0;else i=c[b+8>>2]|0;h=e+(k-h)|0;if((d|0)!=(e|0)){f=d;g=i+k|0;while(1){a[g>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else g=g+1|0}}a[i+h>>0]=0;f=k+j|0;if(!(a[b>>0]&1)){a[b>>0]=f<<1;break}else{c[b+4>>2]=f;break}}while(0);return b|0}function _u(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h>>2;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+(h<<2);c[d>>2]=(c[a>>2]|0)+(f>>>2<<2);return}function $u(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=d;f=a[b>>0]|0;if(!(f&1)){g=1;k=(f&255)>>>1}else{f=c[b>>2]|0;g=(f&-2)+-1|0;k=c[b+4>>2]|0;f=f&255}j=e-h>>2;do if(j){if((g-k|0)>>>0>>0){an(b,g,k+j-g|0,k,k,0,0);f=a[b>>0]|0}if(!(f&1))i=b+4|0;else i=c[b+8>>2]|0;h=k+((e-h|0)>>>2)|0;if((d|0)!=(e|0)){f=d;g=i+(k<<2)|0;while(1){c[g>>2]=c[f>>2];f=f+4|0;if((f|0)==(e|0))break;else g=g+4|0}}c[i+(h<<2)>>2]=0;f=k+j|0;if(!(a[b>>0]&1)){a[b>>0]=f<<1;break}else{c[b+4>>2]=f;break}}while(0);return b|0}function av(b,d){b=b|0;d=d|0;var e=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a[b+128>>0]=0;do if(d){o=0;ia(125,b|0,d|0);e=o;o=0;if(e&1){e=Na()|0;Dv(b);Ya(e|0)}else{Uv(b,d);break}}while(0);return}function bv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43148)|0);return}function cv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43188)|0);return}function dv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44220)|0);return}function ev(a,b){a=a|0;b=b|0;xs(a,b,Hs(44212)|0);return}function fv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44280)|0);return}function gv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44288)|0);return}function hv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44344)|0);return}function iv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44352)|0);return}function jv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44360)|0);return}function kv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44368)|0);return}function lv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43260)|0);return}function mv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43332)|0);return}function nv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43392)|0);return}function ov(a,b){a=a|0;b=b|0;xs(a,b,Hs(43452)|0);return}function pv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43764)|0);return}function qv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43828)|0);return}function rv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43892)|0);return}function sv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43956)|0);return}function tv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43992)|0);return}function uv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44028)|0);return}function vv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44064)|0);return}function wv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44100)|0);return}function xv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43544)|0);return}function yv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43636)|0);return}function zv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43668)|0);return}function Av(a,b){a=a|0;b=b|0;xs(a,b,Hs(43700)|0);return}function Bv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44140)|0);return}function Cv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44180)|0);return}function Dv(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;do if(e){f=b+4|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}if((b+16|0)==(e|0)){a[b+128>>0]=0;break}else{cj(e);break}}while(0);return}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+4|0;d=c[h>>2]|0;e=c[a>>2]|0;f=d-e>>2;if(f>>>0>=b>>>0){if(f>>>0>b>>>0?(g=e+(b<<2)|0,(d|0)!=(g|0)):0){do d=d+-4|0;while((d|0)!=(g|0));c[h>>2]=d}}else Tv(a,b-f|0);return}function Fv(a,b){a=a|0;b=b|0;var d=0;d=c[a+8>>2]|0;if((c[a+12>>2]|0)-d>>2>>>0>b>>>0)d=(c[d+(b<<2)>>2]|0)!=0;else d=0;return d|0}function Gv(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;d=c[d+4>>2]|0;a=(c[a>>2]|0)+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;Bb[b&255](a);return}function Hv(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;c[g>>2]=d;c[j>>2]=h;if(l&2)if((i-h|0)<3)d=1;else{c[j>>2]=h+1;a[h>>0]=-17;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-69;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-65;m=4}else m=4;a:do if((m|0)==4){n=f;d=c[g>>2]|0;if(d>>>0>>0)while(1){l=b[d>>1]|0;m=l&65535;if(m>>>0>k>>>0){d=2;break a}do if((l&65535)<128){d=c[j>>2]|0;if((i-d|0)<1){d=1;break a}c[j>>2]=d+1;a[d>>0]=l}else{if((l&65535)<2048){d=c[j>>2]|0;if((i-d|0)<2){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>6|192;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((l&65535)<55296){d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>6&63|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((l&65535)>=56320){if((l&65535)<57344){d=2;break a}d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>6&63|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((n-d|0)<4){d=1;break a}d=d+2|0;l=e[d>>1]|0;if((l&64512|0)!=56320){d=2;break a}if((i-(c[j>>2]|0)|0)<4){d=1;break a}h=m&960;if(((h<<10)+65536|m<<10&64512|l&1023)>>>0>k>>>0){d=2;break a}c[g>>2]=d;d=(h>>>6)+1|0;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=d>>>2|240;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>2&15|d<<4&48|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m<<4&48|l>>>6&15|128;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=l&63|128}while(0);d=(c[g>>2]|0)+2|0;c[g>>2]=d;if(d>>>0>=f>>>0){d=0;break}}else d=0}while(0);return d|0}function Iv(e,f,g,h,i,j,k,l){e=e|0;f=f|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,q=0,r=0;c[g>>2]=e;c[j>>2]=h;if(l&4){e=c[g>>2]|0;l=f;if((((l-e|0)>2?(a[e>>0]|0)==-17:0)?(a[e+1>>0]|0)==-69:0)?(a[e+2>>0]|0)==-65:0){c[g>>2]=e+3;m=c[j>>2]|0}else m=h}else{m=h;l=f}q=i;h=c[g>>2]|0;e=h>>>0>>0;a:do if(e&m>>>0>>0)while(1){e=a[h>>0]|0;o=e&255;if(o>>>0>k>>>0){e=2;break a}do if(e<<24>>24>-1){b[m>>1]=e&255;c[g>>2]=h+1}else{if((e&255)<194){e=2;break a}if((e&255)<224){if((l-h|0)<2){e=1;break a}e=d[h+1>>0]|0;if((e&192|0)!=128){e=2;break a}e=e&63|o<<6&1984;if(e>>>0>k>>>0){e=2;break a}b[m>>1]=e;c[g>>2]=h+2;break}if((e&255)<240){if((l-h|0)<3){e=1;break a}n=a[h+1>>0]|0;e=a[h+2>>0]|0;switch(o|0){case 224:{if((n&-32)<<24>>24!=-96){e=2;break a}break}case 237:{if((n&-32)<<24>>24!=-128){e=2;break a}break}default:if((n&-64)<<24>>24!=-128){e=2;break a}}e=e&255;if((e&192|0)!=128){e=2;break a}e=(n&255)<<6&4032|o<<12|e&63;if((e&65535)>>>0>k>>>0){e=2;break a}b[m>>1]=e;c[g>>2]=h+3;break}if((e&255)>=245){e=2;break a}if((l-h|0)<4){e=1;break a}n=a[h+1>>0]|0;e=a[h+2>>0]|0;h=a[h+3>>0]|0;switch(o|0){case 240:{if((n+112&255)>=48){e=2;break a}break}case 244:{if((n&-16)<<24>>24!=-128){e=2;break a}break}default:if((n&-64)<<24>>24!=-128){e=2;break a}}p=e&255;if((p&192|0)!=128){e=2;break a}e=h&255;if((e&192|0)!=128){e=2;break a}if((q-m|0)<4){e=1;break a}o=o&7;h=n&255;n=p<<6;e=e&63;if((h<<12&258048|o<<18|n&4032|e)>>>0>k>>>0){e=2;break a}b[m>>1]=h<<2&60|p>>>4&3|((h>>>4&3|o<<2)<<6)+16320|55296;p=m+2|0;c[j>>2]=p;b[p>>1]=e|n&960|56320;c[g>>2]=(c[g>>2]|0)+4}while(0);m=(c[j>>2]|0)+2|0;c[j>>2]=m;h=c[g>>2]|0;e=h>>>0>>0;if(!(e&m>>>0>>0)){r=39;break}}else r=39;while(0);if((r|0)==39)e=e&1;return e|0}function Jv(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c;if((((g&4|0)!=0?(n-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){m=g;h=0;b:while(1){g=a[m>>0]|0;l=g&255;if(l>>>0>f>>>0){g=m;h=42;break a}do if(g<<24>>24>-1)g=m+1|0;else{if((g&255)<194){g=m;h=42;break a}if((g&255)<224){if((n-m|0)<2){g=m;h=42;break a}g=d[m+1>>0]|0;if((g&192|0)!=128){g=m;h=42;break a}if((g&63|l<<6&1984)>>>0>f>>>0){g=m;h=42;break a}g=m+2|0;break}if((g&255)<240){g=m;if((n-g|0)<3){g=m;h=42;break a}j=a[m+1>>0]|0;i=a[m+2>>0]|0;switch(l|0){case 224:{if((j&-32)<<24>>24!=-96){h=20;break b}break}case 237:{if((j&-32)<<24>>24!=-128){h=22;break b}break}default:if((j&-64)<<24>>24!=-128){h=24;break b}}g=i&255;if((g&192|0)!=128){g=m;h=42;break a}if(((j&255)<<6&4032|l<<12&61440|g&63)>>>0>f>>>0){g=m;h=42;break a}g=m+3|0;break}if((g&255)>=245){g=m;h=42;break a}g=m;if((e-h|0)>>>0<2|(n-g|0)<4){g=m;h=42;break a}k=a[m+1>>0]|0;i=a[m+2>>0]|0;j=a[m+3>>0]|0;switch(l|0){case 240:{if((k+112&255)>=48){h=32;break b}break}case 244:{if((k&-16)<<24>>24!=-128){h=34;break b}break}default:if((k&-64)<<24>>24!=-128){h=36;break b}}i=i&255;if((i&192|0)!=128){g=m;h=42;break a}g=j&255;if((g&192|0)!=128){g=m;h=42;break a}if(((k&255)<<12&258048|l<<18&1835008|i<<6&4032|g&63)>>>0>f>>>0){g=m;h=42;break a}g=m+4|0;h=h+1|0}while(0);h=h+1|0;if(!(h>>>0>>0&g>>>0>>0)){h=42;break a}else m=g}if((h|0)==20){g=g-b|0;break}else if((h|0)==22){g=g-b|0;break}else if((h|0)==24){g=g-b|0;break}else if((h|0)==32){g=g-b|0;break}else if((h|0)==34){g=g-b|0;break}else if((h|0)==36){g=g-b|0;break}}else h=42;while(0);if((h|0)==42)g=g-b|0;return g|0}function Kv(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;c[e>>2]=b;c[h>>2]=f;l=g;if(j&2)if((l-f|0)<3)b=1;else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;k=4}else k=4;a:do if((k|0)==4){b=c[e>>2]|0;if(b>>>0>>0)while(1){j=c[b>>2]|0;if(j>>>0>i>>>0|(j&-2048|0)==55296){b=2;break a}do if(j>>>0>=128){if(j>>>0<2048){b=c[h>>2]|0;if((l-b|0)<2){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}b=c[h>>2]|0;g=l-b|0;if(j>>>0<65536){if((g|0)<3){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}else{if((g|0)<4){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}}else{b=c[h>>2]|0;if((l-b|0)<1){b=1;break a}c[h>>2]=b+1;a[b>>0]=j}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b;if(b>>>0>=d>>>0){b=0;break}}else b=0}while(0);return b|0}function Lv(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|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;c[f>>2]=b;c[i>>2]=g;if(k&4){b=c[f>>2]|0;k=e;if((((k-b|0)>2?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)?(a[b+2>>0]|0)==-65:0){c[f>>2]=b+3;g=c[i>>2]|0;p=k}else p=k}else p=e;k=c[f>>2]|0;b=k>>>0>>0;a:do if(b&g>>>0>>0)while(1){b=a[k>>0]|0;o=b&255;do if(b<<24>>24>-1){if(o>>>0>j>>>0){b=2;break a}c[g>>2]=o;c[f>>2]=k+1}else{if((b&255)<194){b=2;break a}if((b&255)<224){if((p-k|0)<2){b=1;break a}b=d[k+1>>0]|0;if((b&192|0)!=128){b=2;break a}b=b&63|o<<6&1984;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+2;break}if((b&255)<240){if((p-k|0)<3){b=1;break a}l=a[k+1>>0]|0;b=a[k+2>>0]|0;switch(o|0){case 224:{if((l&-32)<<24>>24!=-96){b=2;break a}break}case 237:{if((l&-32)<<24>>24!=-128){b=2;break a}break}default:if((l&-64)<<24>>24!=-128){b=2;break a}}b=b&255;if((b&192|0)!=128){b=2;break a}b=(l&255)<<6&4032|o<<12&61440|b&63;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+3;break}if((b&255)>=245){b=2;break a}if((p-k|0)<4){b=1;break a}n=a[k+1>>0]|0;b=a[k+2>>0]|0;l=a[k+3>>0]|0;switch(o|0){case 240:{if((n+112&255)>=48){b=2;break a}break}case 244:{if((n&-16)<<24>>24!=-128){b=2;break a}break}default:if((n&-64)<<24>>24!=-128){b=2;break a}}m=b&255;if((m&192|0)!=128){b=2;break a}b=l&255;if((b&192|0)!=128){b=2;break a}b=(n&255)<<12&258048|o<<18&1835008|m<<6&4032|b&63;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+4}while(0);g=(c[i>>2]|0)+4|0;c[i>>2]=g;k=c[f>>2]|0;b=k>>>0>>0;if(!(b&g>>>0>>0)){q=38;break}}else q=38;while(0);if((q|0)==38)b=b&1;return b|0}function Mv(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c;if((((g&4|0)!=0?(n-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){l=g;m=0;b:while(1){g=a[l>>0]|0;k=g&255;do if(g<<24>>24>-1){if(k>>>0>f>>>0){g=l;h=42;break a}g=l+1|0}else{if((g&255)<194){g=l;h=42;break a}if((g&255)<224){if((n-l|0)<2){g=l;h=42;break a}g=d[l+1>>0]|0;if((g&192|0)!=128){g=l;h=42;break a}if((g&63|k<<6&1984)>>>0>f>>>0){g=l;h=42;break a}g=l+2|0;break}if((g&255)<240){g=l;if((n-g|0)<3){g=l;h=42;break a}i=a[l+1>>0]|0;h=a[l+2>>0]|0;switch(k|0){case 224:{if((i&-32)<<24>>24!=-96){h=20;break b}break}case 237:{if((i&-32)<<24>>24!=-128){h=22;break b}break}default:if((i&-64)<<24>>24!=-128){h=24;break b}}g=h&255;if((g&192|0)!=128){g=l;h=42;break a}if(((i&255)<<6&4032|k<<12&61440|g&63)>>>0>f>>>0){g=l;h=42;break a}g=l+3|0;break}if((g&255)>=245){g=l;h=42;break a}g=l;if((n-g|0)<4){g=l;h=42;break a}j=a[l+1>>0]|0;h=a[l+2>>0]|0;i=a[l+3>>0]|0;switch(k|0){case 240:{if((j+112&255)>=48){h=32;break b}break}case 244:{if((j&-16)<<24>>24!=-128){h=34;break b}break}default:if((j&-64)<<24>>24!=-128){h=36;break b}}h=h&255;if((h&192|0)!=128){g=l;h=42;break a}g=i&255;if((g&192|0)!=128){g=l;h=42;break a}if(((j&255)<<12&258048|k<<18&1835008|h<<6&4032|g&63)>>>0>f>>>0){g=l;h=42;break a}g=l+4|0}while(0);m=m+1|0;if(!(m>>>0>>0&g>>>0>>0)){h=42;break a}else l=g}if((h|0)==20){g=g-b|0;break}else if((h|0)==22){g=g-b|0;break}else if((h|0)==24){g=g-b|0;break}else if((h|0)==32){g=g-b|0;break}else if((h|0)==34){g=g-b|0;break}else if((h|0)==36){g=g-b|0;break}}else h=42;while(0);if((h|0)==42)g=g-b|0;return g|0}function Nv(a){a=a|0;Im(45196);Im(45184);Im(45172);Im(45160);Im(45148);Im(45136);Im(45124);Im(45112);Im(45100);Im(45088);Im(45076);Im(45064);Im(45052);Im(45040);return}function Ov(a){a=a|0;Wm(45368);Wm(45356);Wm(45344);Wm(45332);Wm(45320);Wm(45308);Wm(45296);Wm(45284);Wm(45272);Wm(45260);Wm(45248);Wm(45236);Wm(45224);Wm(45212);return}function Pv(a){a=a|0;Im(46e3);Im(45988);Im(45976);Im(45964);Im(45952);Im(45940);Im(45928);Im(45916);Im(45904);Im(45892);Im(45880);Im(45868);Im(45856);Im(45844);Im(45832);Im(45820);Im(45808);Im(45796);Im(45784);Im(45772);Im(45760);Im(45748);Im(45736);Im(45724);return}function Qv(a){a=a|0;Wm(46292);Wm(46280);Wm(46268);Wm(46256);Wm(46244);Wm(46232);Wm(46220);Wm(46208);Wm(46196);Wm(46184);Wm(46172);Wm(46160);Wm(46148);Wm(46136);Wm(46124);Wm(46112);Wm(46100);Wm(46088);Wm(46076);Wm(46064);Wm(46052);Wm(46040);Wm(46028);Wm(46016);return}function Rv(a){a=a|0;Im(47104);Im(47092);Im(47080);Im(47068);Im(47056);Im(47044);Im(47032);Im(47020);Im(47008);Im(46996);Im(46984);Im(46972);Im(46960);Im(46948);Im(46936);Im(46924);Im(46912);Im(46900);Im(46888);Im(46876);Im(46864);Im(46852);Im(46840);Im(46828);return}function Sv(a){a=a|0;Wm(47396);Wm(47384);Wm(47372);Wm(47360);Wm(47348);Wm(47336);Wm(47324);Wm(47312);Wm(47300);Wm(47288);Wm(47276);Wm(47264);Wm(47252);Wm(47240);Wm(47228);Wm(47216);Wm(47204);Wm(47192);Wm(47180);Wm(47168);Wm(47156);Wm(47144);Wm(47132);Wm(47120);return}function Tv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k;g=c[a+8>>2]|0;d=c[a+4>>2]|0;if(g-d>>2>>>0>>0){e=c[a>>2]|0;h=d-e>>2;f=h+b|0;if(f>>>0>1073741823)$i(a);d=g-e|0;if(d>>2>>>0<536870911){d=d>>1;d=d>>>0>>0?f:d}else d=1073741823;Vv(j,d,h,a+16|0);h=j+8|0;g=c[h>>2]|0;iw(g|0,0,b<<2|0)|0;c[h>>2]=g+(b<<2);Wv(a,j);Xv(j)}else Uv(a,b);i=k;return}function Uv(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Vv(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;c[b+12>>2]=0;c[b+16>>2]=f;do if(d){g=f+112|0;if(d>>>0<29&(a[g>>0]|0)==0){a[g>>0]=1;break}else{f=bj(d<<2)|0;break}}else f=0;while(0);c[b>>2]=f;e=f+(e<<2)|0;c[b+8>>2]=e;c[b+4>>2]=e;c[b+12>>2]=f+(d<<2);return}function Wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=c[a>>2]|0;g=a+4|0;d=b+4|0;f=(c[g>>2]|0)-e|0;h=(c[d>>2]|0)+(0-(f>>2)<<2)|0;c[d>>2]=h;lw(h|0,e|0,f|0)|0;f=c[a>>2]|0;c[a>>2]=c[d>>2];c[d>>2]=f;f=b+8|0;e=c[g>>2]|0;c[g>>2]=c[f>>2];c[f>>2]=e;f=a+8|0;a=b+12|0;e=c[f>>2]|0;c[f>>2]=c[a>>2];c[a>>2]=e;c[b>>2]=c[d>>2];return}function Xv(b){b=b|0;var d=0,e=0,f=0;e=c[b+4>>2]|0;f=b+8|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}e=c[b>>2]|0;do if(e){d=c[b+16>>2]|0;if((d|0)==(e|0)){a[d+112>>0]=0;break}else{cj(e);break}}while(0);return}function Yv(b,d){b=b|0;d=d|0;var e=0;if(d>>>0>1073741823)$i(b);e=b+128|0;if(d>>>0<29&(a[e>>0]|0)==0){a[e>>0]=1;e=b+16|0}else e=bj(d<<2)|0;c[b+4>>2]=e;c[b>>2]=e;c[b+8>>2]=e+(d<<2);return}function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)!=(b|0)){f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}else{c[d>>2]=4;e=0.0}while(0);i=j;return +e}function _v(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)!=(b|0)){f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}else{c[d>>2]=4;e=0.0}while(0);i=j;return +e}function $v(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)==(b|0)){c[d>>2]=4;e=0.0}else{f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}while(0);i=j;return +e}function aw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;f=0;b=0;break}g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;b=Xj(b,j,f,Xo()|0)|0;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(d|0)){c[e>>2]=4;f=0;b=0;break}if((f|0)==34){c[e>>2]=4;f=-1;b=-1}else f=D}else{c[e>>2]=4;f=0;b=0}while(0);D=f;i=k;return b|0}function bw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function cw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function dw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>65535|(g|0)==34){c[e>>2]=4;b=-1;break}else{b=b&65535;break}}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function ew(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;do if((a|0)!=(b|0)){g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;a=Yj(a,j,e,Xo()|0)|0;e=D;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(b|0)){c[d>>2]=4;e=0;a=0;break}if((f|0)==34){c[d>>2]=4;j=(e|0)>0|(e|0)==0&a>>>0>0;D=j?2147483647:-2147483648;i=k;return (j?-1:0)|0}}else{c[d>>2]=4;e=0;a=0}while(0);D=e;i=k;return a|0}function fw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;a:do if((a|0)==(b|0)){c[d>>2]=4;a=0}else{g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;a=Yj(a,j,e,Xo()|0)|0;e=D;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(b|0)){c[d>>2]=4;a=0;break}do if((f|0)==34){c[d>>2]=4;if((e|0)>0|(e|0)==0&a>>>0>0){a=2147483647;break a}}else{if((e|0)<-1|(e|0)==-1&a>>>0<2147483648){c[d>>2]=4;break}if((e|0)>0|(e|0)==0&a>>>0>2147483647){c[d>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}while(0);i=k;return a|0}function gw(){}function hw(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 (D=d,a-c>>>0|0)|0}function iw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function jw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (D=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function kw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<>>c-32|0}function lw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Wa(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function mw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<>>32-c;return a<0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else lw(b,c,d)|0;return b|0}function ow(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<>c-32|0}function pw(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function qw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=$(e,f)|0;d=a>>>16;a=(c>>>16)+($(e,d)|0)|0;e=b>>>16;b=$(e,f)|0;return (D=(a>>>16)+($(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function rw(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=hw(j^a,i^b,j,i)|0;g=D;a=f^j;b=e^i;return hw((ww(h,g,hw(f^c,e^d,f,e)|0,D,0)|0)^a,D^b,a,b)|0}function sw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=hw(h^a,g^b,h,g)|0;b=D;ww(a,b,hw(l^d,k^e,l,k)|0,D,j)|0;e=hw(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;d=D;i=f;return (D=d,e)|0}function tw(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=qw(e,f)|0;a=D;return (D=($(b,f)|0)+($(d,e)|0)+a|a&0,c|0|0)|0}function uw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ww(a,b,c,d,0)|0}function vw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;ww(a,b,d,e,f)|0;i=g;return (D=c[f+4>>2]|0,c[f>>2]|0)|0}function ww(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (D=n,f)|0}else{if(!g){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (D=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(ba(i|0)|0)-(ba(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<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (D=n,f)|0}g=h-1|0;if(g&h){i=(ba(h|0)|0)+33-(ba(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<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (D=o,p)|0}else{p=pw(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (D=o,p)|0}}else{if(g){if(f){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (D=o,p)|0}if(!l){if(f){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (D=o,p)|0}g=i-1|0;if(!(g&i)){if(f){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((pw(i|0)|0)>>>0);return (D=o,p)|0}g=(ba(i|0)|0)-(ba(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (D=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=jw(m|0,l|0,-1,-1)|0;d=D;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;hw(k,d,e,n)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=hw(e,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=D;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (D=o,p)|0}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|0;g=g|0;h=h|0;return yb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function yw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;zb[a&15](b|0,c|0,d|0,e|0,f|0)}function zw(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 Ab[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function Aw(a,b){a=a|0;b=b|0;Bb[a&255](b|0)}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;Cb[a&127](b|0,c|0)}function Cw(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 Db[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Dw(a,b){a=a|0;b=b|0;return Eb[a&127](b|0)|0}function Ew(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;return Fb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function Fw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gb[a&63](b|0,c|0,d|0)|0}function Gw(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;Hb[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,p|0)}function Hw(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;Ib[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function Iw(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;Jb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Jw(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;Kb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;return Lb[a&63](b|0,c|0)|0}function Lw(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 Mb[a&31](b|0,c|0,d|0,e|0,f|0)|0}function Mw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Nb[a&3](b|0,c|0,d|0)}function Nw(a){a=a|0;return Ob[a&15]()|0}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Pb[a&31](b|0,c|0,d|0,e|0)|0}function Pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Qb[a&15](b|0,c|0,d|0)}function Qw(a){a=a|0;Rb[a&7]()}function Rw(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 Sb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Sw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Tb[a&7](b|0,c|0,d|0,e|0,+f)|0}function Tw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ub[a&63](b|0,c|0,d|0,e|0)}function Uw(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;ca(0);return 0}function Vw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(1)}function Ww(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ca(2);return 0}function Xw(a){a=a|0;ca(3)}function Yw(a,b){a=a|0;b=b|0;ca(4)}function Zw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ca(5);return 0}function _w(a){a=a|0;ca(6);return 0}function $w(a){a=a|0;return cb(a|0)|0}function ax(a){a=a|0;return rb(a|0)|0}function bx(a){a=a|0;return hb(a|0)|0}function cx(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;ca(7);return 0}function dx(a,b,c){a=a|0;b=b|0;c=c|0;ca(8);return 0}function ex(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;ca(9)}function fx(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ca(10)}function gx(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;ca(11)}function hx(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;ca(12)}function ix(a,b){a=a|0;b=b|0;ca(13);return 0}function jx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(14);return 0}function kx(a,b,c){a=a|0;b=b|0;c=c|0;ca(15);return 0.0}function lx(){ca(16);return 0}function mx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(17);return 0}function nx(a,b,c){a=a|0;b=b|0;c=c|0;ca(18)}function ox(a,b,c){a=a|0;b=b|0;c=c|0;lb(a|0,b|0,c|0)}function px(){ca(19)}function qx(){pb()}function rx(){Xa()}function sx(){mb()}function tx(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;ca(20);return 0}function ux(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ca(21);return 0}function vx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(22)} + function di(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8900]|0;c[b+4580>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+256;j=b+160|0;g=b+156|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function ei(a){a=a|0;var b=0,d=0;c[a>>2]=35660;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function fi(a){a=a|0;var b=0,d=0;c[a>>2]=35660;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function gi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function hi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;pi(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function ii(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);ji(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function ji(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;k=b+172|0;y=(c[k>>2]|0)+4|0;if((c[b+28>>2]|0)==1)l=c[b+20>>2]|0;else l=1;d=$(l<<1,y)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))x=6;if((x|0)==6?(o=0,e=ka(67,d|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[D>>2]|0)+1|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!l)x=19;else{if(!(l>>>0>1073741823?(o=0,ha(178,z|0),w=o,o=0,w&1):0))x=17;if((x|0)==17?(f=l<<2,o=0,g=ka(67,f|0)|0,w=o,o=0,!(w&1)):0){c[z>>2]=g;x=g+(l<<2)|0;c[z+8>>2]=x;iw(g|0,0,f|0)|0;c[B>>2]=x;x=19;break}e=Na()|0;d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((x|0)==19){m=b+8|0;d=c[m>>2]|0;b:do if((d|0)>0){n=b+4596|0;p=$(l,y)|0;q=p+1|0;r=b+4600|0;s=b+160|0;t=b+168|0;u=b+164|0;v=b+156|0;w=b+88|0;j=b+4592|0;if((l|0)>0)h=0;else{h=0;while(1){g=c[C>>2]|0;e=g+1|0;c[n>>2]=e;f=g+q|0;c[r>>2]=f;if(!(h&1))e=q;else{c[n>>2]=f;c[r>>2]=e;e=1}l=c[s>>2]|0;if((l|0)<=(h|0)?(h|0)<((c[t>>2]|0)+l|0):0){l=c[w>>2]|0;o=0;Aa(c[(c[l>>2]|0)+8>>2]|0,l|0,g+(e+((c[v>>2]|0)-p))|0,c[u>>2]|0,y|0);l=o;o=0;if(l&1)break;d=c[m>>2]|0}h=h+1|0;if((h|0)>=(d|0)){x=50;break b}}e=Na()|0;break}c:while(1){e=c[C>>2]|0;d=e+1|0;c[n>>2]=d;e=e+q|0;c[r>>2]=e;if(h&1){c[n>>2]=e;c[r>>2]=d;d=e}g=c[z>>2]|0;e=d;f=0;do{c[j>>2]=c[g+(f<<2)>>2];x=c[k>>2]|0;a[e+x>>0]=a[e+(x+-1)>>0]|0;a[(c[r>>2]|0)+-1>>0]=a[c[n>>2]>>0]|0;o=0;ia(83,b|0,0);x=o;o=0;if(x&1){x=38;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[j>>2];e=(c[n>>2]|0)+y|0;c[n>>2]=e;d=c[r>>2]|0;c[r>>2]=d+y;f=f+1|0}while((f|0)<(l|0));x=c[s>>2]|0;if(((x|0)<=(h|0)?(h|0)<((c[t>>2]|0)+x|0):0)?(x=c[w>>2]|0,o=0,Aa(c[(c[x>>2]|0)+8>>2]|0,x|0,d+(y+((c[v>>2]|0)-p))|0,c[u>>2]|0,y|0),x=o,o=0,x&1):0){x=30;break}h=h+1|0;if((h|0)>=(c[m>>2]|0)){x=50;break b}}if((x|0)==30){e=Na()|0;break}else if((x|0)==38){e=Na()|0;break}}else x=50;while(0);do if((x|0)==50){o=0;ha(183,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);i=A;return}while(0);d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}function ki(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=b+4596|0;f=c[p>>2]|0;t=b+172|0;e=c[t>>2]|0;if((e|0)<=0)return;q=b+4600|0;r=b+4604|0;s=b+4592|0;k=f;i=d[f+-1>>0]|0;f=d[f>>0]|0;o=0;while(1){m=c[q>>2]|0;j=a[m+(o+-1)>>0]|0;n=j&255;h=o+1|0;g=d[k+h>>0]|0;l=c[r>>2]|0;k=f-i|0;i=i-n|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;m=m+o|0;if(!l){e=mi(b,j,m,e-o|0)|0;f=e+o|0;if((f|0)!=(c[t>>2]|0)){n=ni(b,n,d[(c[p>>2]|0)+f>>0]|0)|0;a[(c[q>>2]|0)+f>>0]=n;n=c[s>>2]|0;c[s>>2]=(n|0)<1?0:n+-1|0;e=e+1|0}h=e+o|0;g=c[p>>2]|0;f=d[g+(h+-1)>>0]|0;g=d[g+h>>0]|0}else{e=f-n>>31;if((e^i|0)<0)e=f;else e=n+((e^k|0)<0?0:k)|0;n=li(b,l,d[m>>0]|0,e,0)|0;a[(c[q>>2]|0)+o>>0]=n}e=c[t>>2]|0;if((e|0)<=(h|0))break;k=c[p>>2]|0;i=f;f=g;o=h}return}function li(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&255;return d|0}d=f&~(h>>31);d=d&255;return d|0}function mi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4592|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;iw(e|0,d|0,g|0)|0;return g|0}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=b-d|0;h=a+128|0;e=a+136|0;if((((g|0)>-1?g:0-g|0)|0)>(c[e>>2]|0)){b=$(oi(a,a+4568|0)|0,d-b>>31|1)|0;f=c[e>>2]|0;g=f<<1|1;b=($(b,g)|0)+d|0;if((b|0)>=(0-f|0)){e=c[h>>2]|0;if((e+f|0)<(b|0))b=b-($(c[a+132>>2]|0,g)|0)|0}else{b=($(c[a+132>>2]|0,g)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&255;return a|0}a=e&~(b>>31);a=a&255;return a|0}else{d=oi(a,a+4580|0)|0;g=c[e>>2]|0;f=g<<1|1;b=($(f,d)|0)+b|0;if((b|0)>=(0-g|0)){e=c[h>>2]|0;if((e+g|0)<(b|0))b=b-($(c[a+132>>2]|0,f)|0)|0}else{b=($(c[a+132>>2]|0,f)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&255;return a|0}a=e&~(b>>31);a=a&255;return a|0}return 0}function oi(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function pi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function qi(a){a=a|0;cj(a);return}function ri(a){a=a|0;return 50767}function si(a,b,c){a=a|0;b=b|0;c=c|0;Gm(a,50754,12);return}function ti(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+16|0;t=s;c[t>>2]=0;u=t+4|0;c[u>>2]=0;c[t+8>>2]=0;q=t+8|0;o=0;g=ka(67,1)|0;p=o;o=0;a:do if((!(p&1)?(p=g+1|0,a[g>>0]=e,c[t>>2]=g,c[u>>2]=p,c[q>>2]=p,o=0,ia(84,t|0,d&65535|0),p=o,o=0,!(p&1)):0)?(o=0,ia(84,t|0,b&65535|0),p=o,o=0,!(p&1)):0){m=f&255;g=c[u>>2]|0;e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);p=o;o=0;if(p&1){r=52;break}b=c[t>>2]|0;e=c[q>>2]|0;d=b}l=d;g=e-l|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;e=c[u>>2]|0;k=e-l|0;if(!g){g=0;j=0}else r=12}else{k=c[u>>2]|0;g=2147483647;e=k;k=k-l|0;r=12}if((r|0)==12){o=0;j=ka(67,g|0)|0;p=o;o=0;if(p&1){r=52;break}}a[j+k>>0]=m;n=e-l|0;p=j+(k-n)|0;lw(p|0,d|0,n|0)|0;c[t>>2]=p;c[u>>2]=j+(k+1);c[q>>2]=j+g;if(b)cj(b)}else{a[g>>0]=m;c[u>>2]=(c[u>>2]|0)+1}b:do if((f|0)>0){p=0;while(1){p=p+1|0;n=p&255;g=c[u>>2]|0;d=c[q>>2]|0;if(g>>>0>=d>>>0){b=c[t>>2]|0;e=b;j=g-e+1|0;if((j|0)<0){o=0;ha(178,t|0);m=o;o=0;if(m&1)break;b=c[t>>2]|0;e=b;d=c[q>>2]|0}m=b;g=d-m|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;d=c[u>>2]|0;k=d-m|0;if(!g){l=0;j=0}else r=25}else{k=c[u>>2]|0;g=2147483647;d=k;k=k-m|0;r=25}if((r|0)==25){r=0;o=0;j=ka(67,g|0)|0;l=o;o=0;if(l&1)break;else l=g}a[j+k>>0]=n;g=j+(k+1)|0;m=d-m|0;n=j+(k-m)|0;lw(n|0,b|0,m|0)|0;c[t>>2]=n;c[u>>2]=g;c[q>>2]=j+l;if(e){cj(e);g=c[u>>2]|0}}else{a[g>>0]=n;g=(c[u>>2]|0)+1|0;c[u>>2]=g}e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);n=o;o=0;if(n&1)break;b=c[t>>2]|0;e=c[q>>2]|0;d=b}m=d;g=e-m|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;j=c[u>>2]|0;k=j-m|0;if(!g){l=0;e=0}else r=36}else{k=c[u>>2]|0;g=2147483647;j=k;k=k-m|0;r=36}if((r|0)==36){r=0;o=0;e=ka(67,g|0)|0;n=o;o=0;if(n&1)break;else l=g}a[e+k>>0]=17;g=e+(k+1)|0;m=j-m|0;n=e+(k-m)|0;lw(n|0,d|0,m|0)|0;c[t>>2]=n;c[u>>2]=g;c[q>>2]=e+l;if(b){cj(b);g=c[u>>2]|0}}else{a[g>>0]=17;g=(c[u>>2]|0)+1|0;c[u>>2]=g}e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);n=o;o=0;if(n&1)break;b=c[t>>2]|0;e=c[q>>2]|0;d=b}l=d;g=e-l|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;e=c[u>>2]|0;k=e-l|0;if(!g){g=0;j=0}else r=48}else{k=c[u>>2]|0;g=2147483647;e=k;k=k-l|0;r=48}if((r|0)==48){r=0;o=0;j=ka(67,g|0)|0;n=o;o=0;if(n&1)break}a[j+k>>0]=0;m=e-l|0;n=j+(k-m)|0;lw(n|0,d|0,m|0)|0;c[t>>2]=n;c[u>>2]=j+(k+1);c[q>>2]=j+g;if(b)cj(b)}else{a[g>>0]=0;c[u>>2]=(c[u>>2]|0)+1}if((p|0)>=(f|0))break b}h=Na()|0;break a}while(0);o=0;k=ka(67,20)|0;f=o;o=0;if(!(f&1)){c[k>>2]=36800;a[k+4>>0]=-9;b=k+8|0;c[b>>2]=0;j=k+12|0;c[j>>2]=0;e=k+16|0;c[e>>2]=0;g=c[u>>2]|0;f=c[t>>2]|0;d=g-f|0;do if((g|0)!=(f|0)){if(!((d|0)<0?(o=0,ha(178,b|0),f=o,o=0,f&1):0))r=62;if((r|0)==62?(o=0,h=ka(67,d|0)|0,f=o,o=0,!(f&1)):0){c[j>>2]=h;c[b>>2]=h;c[e>>2]=h+d;g=c[t>>2]|0;e=c[u>>2]|0;if((g|0)==(e|0))break;do{a[h>>0]=a[g>>0]|0;h=(c[j>>2]|0)+1|0;c[j>>2]=h;g=g+1|0}while((g|0)!=(e|0));g=c[t>>2]|0;break}h=Na()|0;g=c[b>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}cj(k);break a}while(0);if(!g){i=s;return k|0}if((c[u>>2]|0)!=(g|0))c[u>>2]=g;cj(g);i=s;return k|0}else r=52}else r=52;while(0);if((r|0)==52)h=Na()|0;g=c[t>>2]|0;if(!g)Ya(h|0);if((c[u>>2]|0)!=(g|0))c[u>>2]=g;cj(g);Ya(h|0);return 0}function ui(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;r=u+28|0;w=u+16|0;t=u+4|0;s=u;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;p=bj(5)|0;c[w>>2]=p;q=w+8|0;c[q>>2]=p+5;a[p>>0]=74;a[p+1>>0]=70;a[p+2>>0]=73;a[p+3>>0]=70;a[p+4>>0]=0;c[x>>2]=p+5;o=0;ia(84,w|0,c[b>>2]&65535|0);p=o;o=0;a:do if(!(p&1)){m=c[b+4>>2]&255;d=c[x>>2]|0;f=c[q>>2]|0;if(d>>>0>=f>>>0){g=c[w>>2]|0;h=g;j=d-h+1|0;if((j|0)<0){o=0;ha(178,w|0);p=o;o=0;if(p&1){v=43;break}h=c[w>>2]|0;f=c[q>>2]|0;g=h}l=g;d=f-l|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;f=c[x>>2]|0;k=f-l|0;if(!d){d=0;j=0}else v=10}else{k=c[x>>2]|0;d=2147483647;f=k;k=k-l|0;v=10}if((v|0)==10){o=0;j=ka(67,d|0)|0;p=o;o=0;if(p&1){v=43;break}}a[j+k>>0]=m;n=f-l|0;p=j+(k-n)|0;lw(p|0,g|0,n|0)|0;c[w>>2]=p;c[x>>2]=j+(k+1);c[q>>2]=j+d;if(h)cj(h)}else{a[d>>0]=m;c[x>>2]=(c[x>>2]|0)+1}o=0;ia(84,w|0,c[b+8>>2]&65535|0);p=o;o=0;if(!(p&1)?(o=0,ia(84,w|0,c[b+12>>2]&65535|0),p=o,o=0,!(p&1)):0){p=b+16|0;n=c[p>>2]&255;d=c[x>>2]|0;g=c[q>>2]|0;if(d>>>0>=g>>>0){h=c[w>>2]|0;f=h;j=d-f+1|0;if((j|0)<0){o=0;ha(178,w|0);m=o;o=0;if(m&1){v=43;break}h=c[w>>2]|0;f=h;g=c[q>>2]|0}m=h;d=g-m|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;j=c[x>>2]|0;k=j-m|0;if(!d){l=0;g=0}else v=23}else{k=c[x>>2]|0;d=2147483647;j=k;k=k-m|0;v=23}if((v|0)==23){o=0;g=ka(67,d|0)|0;l=o;o=0;if(l&1){v=43;break}else l=d}a[g+k>>0]=n;d=g+(k+1)|0;m=j-m|0;n=g+(k-m)|0;lw(n|0,h|0,m|0)|0;c[w>>2]=n;c[x>>2]=d;c[q>>2]=g+l;if(f){cj(f);d=c[x>>2]|0}}else{a[d>>0]=n;d=(c[x>>2]|0)+1|0;c[x>>2]=d}n=b+20|0;m=c[n>>2]&255;f=c[q>>2]|0;if(d>>>0>=f>>>0){g=c[w>>2]|0;h=g;j=d-h+1|0;if((j|0)<0){o=0;ha(178,w|0);l=o;o=0;if(l&1){v=43;break}h=c[w>>2]|0;f=c[q>>2]|0;g=h}l=g;d=f-l|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;f=c[x>>2]|0;k=f-l|0;if(!d){d=0;j=0}else v=34}else{k=c[x>>2]|0;d=2147483647;f=k;k=k-l|0;v=34}if((v|0)==34){o=0;j=ka(67,d|0)|0;y=o;o=0;if(y&1){v=43;break}}a[j+k>>0]=m;m=f-l|0;y=j+(k-m)|0;lw(y|0,g|0,m|0)|0;c[w>>2]=y;c[x>>2]=j+(k+1);c[q>>2]=j+d;if(h)cj(h)}else{a[d>>0]=m;c[x>>2]=(c[x>>2]|0)+1}d=c[p>>2]|0;do if((d|0)>0){if(!(c[b+24>>2]|0)){c[s>>2]=c[x>>2];y=0+($(d*3|0,c[n>>2]|0)|0)|0;o=0;c[r>>2]=c[s>>2];va(15,w|0,r|0,0,y|0)|0;y=o;o=0;if(y&1){v=43;break a}else break}f=Ma(16)|0;o=0;wa(5,t|0,50792,57);y=o;o=0;if(!(y&1)){o=0;d=ua(1)|0;y=o;o=0;if(!(y&1)?(o=0,Aa(36,f|0,1,d|0,t|0),y=o,o=0,!(y&1)):0){o=0;wa(6,f|0,824,96);o=0;e=0}else e=1;d=Na()|0;Im(t);if(!e){e=d;break a}}else d=Na()|0;La(f|0);e=d;break a}while(0);o=0;k=ka(67,20)|0;y=o;o=0;if(!(y&1)){c[k>>2]=36800;a[k+4>>0]=-32;h=k+8|0;c[h>>2]=0;j=k+12|0;c[j>>2]=0;f=k+16|0;c[f>>2]=0;d=c[x>>2]|0;y=c[w>>2]|0;g=d-y|0;do if((d|0)!=(y|0)){if(!((g|0)<0?(o=0,ha(178,h|0),y=o,o=0,y&1):0))v=53;if((v|0)==53?(o=0,e=ka(67,g|0)|0,y=o,o=0,!(y&1)):0){c[j>>2]=e;c[h>>2]=e;c[f>>2]=e+g;d=c[w>>2]|0;f=c[x>>2]|0;if((d|0)==(f|0))break;do{a[e>>0]=a[d>>0]|0;e=(c[j>>2]|0)+1|0;c[j>>2]=e;d=d+1|0}while((d|0)!=(f|0));d=c[w>>2]|0;break}d=Na()|0;e=c[h>>2]|0;if(e){if((c[j>>2]|0)!=(e|0))c[j>>2]=e;cj(e)}cj(k);v=44;break a}while(0);if(!d){i=u;return k|0}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return k|0}else v=43}else v=43}else v=43;while(0);if((v|0)==43){d=Na()|0;v=44}if((v|0)==44)e=d;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0);return 0}function vi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;k=i;i=i+16|0;m=k;c[m>>2]=0;n=m+4|0;c[n>>2]=0;c[m+8>>2]=0;o=0;d=ka(67,1)|0;j=o;o=0;a:do if((((((!(j&1)?(j=d+1|0,a[d>>0]=1,c[m>>2]=d,c[n>>2]=j,c[m+8>>2]=j,o=0,ia(84,m|0,c[b>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+4>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+8>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+12>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+16>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,l=ka(67,20)|0,j=o,o=0,!(j&1)):0){c[l>>2]=36800;a[l+4>>0]=-8;g=l+8|0;c[g>>2]=0;j=l+12|0;c[j>>2]=0;b=l+16|0;c[b>>2]=0;d=c[n>>2]|0;p=c[m>>2]|0;f=d-p|0;do if((d|0)!=(p|0)){if(!((f|0)<0?(o=0,ha(178,g|0),p=o,o=0,p&1):0))h=11;if((h|0)==11?(o=0,e=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[j>>2]=e;c[g>>2]=e;c[b>>2]=e+f;d=c[m>>2]|0;b=c[n>>2]|0;if((d|0)==(b|0))break;do{a[e>>0]=a[d>>0]|0;e=(c[j>>2]|0)+1|0;c[j>>2]=e;d=d+1|0}while((d|0)!=(b|0));d=c[m>>2]|0;break}e=Na()|0;d=c[g>>2]|0;if(d){if((c[j>>2]|0)!=(d|0))c[j>>2]=d;cj(d)}cj(l);break a}while(0);if(!d){i=k;return l|0}if((c[n>>2]|0)!=(d|0))c[n>>2]=d;cj(d);i=k;return l|0}else h=25;while(0);if((h|0)==25)e=Na()|0;d=c[m>>2]|0;if(!d)Ya(e|0);if((c[n>>2]|0)!=(d|0))c[n>>2]=d;cj(d);Ya(e|0);return 0}function wi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=bj(5)|0;a[h>>0]=109;a[h+1>>0]=114;a[h+2>>0]=102;a[h+3>>0]=120;a[h+4>>0]=b;o=0;g=ka(67,20)|0;f=o;o=0;if(f&1){g=Na()|0;cj(h);Ya(g|0)}c[g>>2]=36800;a[g+4>>0]=-24;b=g+8|0;c[b>>2]=0;d=g+12|0;c[d>>2]=0;e=g+16|0;c[e>>2]=0;o=0;f=ka(67,5)|0;i=o;o=0;if(!(i&1)){c[d>>2]=f;c[b>>2]=f;c[e>>2]=f+5;a[f>>0]=109;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=h+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=f+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=f+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;a[i>>0]=a[f+1>>0]|0;c[d>>2]=(c[d>>2]|0)+1;cj(h);return g|0}i=Na()|0;cj(g);cj(h);Ya(i|0);return 0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;t=w+8|0;o=0;g=ka(67,1)|0;s=o;o=0;a:do if(!(s&1)){k=g+1|0;s=k;a[g>>0]=d;c[w>>2]=g;c[x>>2]=s;c[t>>2]=s;if((d|0)>0){j=k;s=0;do{r=s+b&255;if(j>>>0>=k>>>0){g=c[w>>2]|0;l=g;j=j-l+1|0;if((j|0)<0){o=0;ha(178,w|0);q=o;o=0;if(q&1){u=28;break}l=c[w>>2]|0;k=c[t>>2]|0;q=l}else q=g;p=q;g=k-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;k=c[x>>2]|0;m=k-p|0;if(!g){n=0;j=0}else u=13}else{m=c[x>>2]|0;g=2147483647;k=m;m=m-p|0;u=13}if((u|0)==13){u=0;o=0;j=ka(67,g|0)|0;n=o;o=0;if(n&1){u=28;break}else n=g}a[j+m>>0]=r;g=j+(m+1)|0;p=k-p|0;r=j+(m-p)|0;lw(r|0,q|0,p|0)|0;c[w>>2]=r;c[x>>2]=g;c[t>>2]=j+n;if(l){cj(l);g=c[x>>2]|0}}else{a[j>>0]=r;g=(c[x>>2]|0)+1|0;c[x>>2]=g}k=c[t>>2]|0;if(g>>>0>=k>>>0){l=c[w>>2]|0;j=l;m=g-j+1|0;if((m|0)<0){o=0;ha(178,w|0);r=o;o=0;if(r&1){u=28;break}l=c[w>>2]|0;j=l;k=c[t>>2]|0}p=l;g=k-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?m:g;m=c[x>>2]|0;k=m-p|0;if(!g){g=0;n=0}else u=24}else{k=c[x>>2]|0;g=2147483647;m=k;k=k-p|0;u=24}if((u|0)==24){u=0;o=0;n=ka(67,g|0)|0;r=o;o=0;if(r&1){u=28;break}}a[n+k>>0]=0;q=m-p|0;r=n+(k-q)|0;lw(r|0,l|0,q|0)|0;c[w>>2]=r;c[x>>2]=n+(k+1);c[t>>2]=n+g;if(j)cj(j)}else{a[g>>0]=0;c[x>>2]=(c[x>>2]|0)+1}s=s+1|0;j=c[x>>2]|0;k=c[t>>2]|0}while((s|0)<(d|0));if((u|0)==28){h=Na()|0;break}g=e&255;if(j>>>0>>0){a[j>>0]=g;j=(c[x>>2]|0)+1|0;c[x>>2]=j}else u=37}else{j=k;g=e&255;u=37}if((u|0)==37){l=c[w>>2]|0;m=l;n=j-m+1|0;if((n|0)<0){o=0;ha(178,w|0);e=o;o=0;if(e&1){u=29;break}m=c[w>>2]|0;k=c[t>>2]|0;l=m}r=l;j=k-r|0;if(j>>>0<1073741823){j=j<<1;j=j>>>0>>0?n:j;n=c[x>>2]|0;p=n-r|0;if(!j){q=0;k=0}else u=43}else{p=c[x>>2]|0;j=2147483647;n=p;p=p-r|0;u=43}if((u|0)==43){o=0;k=ka(67,j|0)|0;e=o;o=0;if(e&1){u=29;break}else q=j}a[k+p>>0]=g;j=k+(p+1)|0;b=n-r|0;e=k+(p-b)|0;lw(e|0,l|0,b|0)|0;c[w>>2]=e;c[x>>2]=j;c[t>>2]=k+q;if(m){cj(m);j=c[x>>2]|0}}r=f&255;g=c[t>>2]|0;if(j>>>0>=g>>>0){k=c[w>>2]|0;l=k;j=j-l+1|0;if((j|0)<0){o=0;ha(178,w|0);f=o;o=0;if(f&1){u=29;break}l=c[w>>2]|0;g=c[t>>2]|0;k=l}q=k;g=g-q|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;m=c[x>>2]|0;n=m-q|0;if(!g){p=0;j=0}else u=54}else{n=c[x>>2]|0;g=2147483647;m=n;n=n-q|0;u=54}if((u|0)==54){o=0;j=ka(67,g|0)|0;f=o;o=0;if(f&1){u=29;break}else p=g}a[j+n>>0]=r;g=j+(n+1)|0;e=m-q|0;f=j+(n-e)|0;lw(f|0,k|0,e|0)|0;c[w>>2]=f;c[x>>2]=g;c[t>>2]=j+p;if(l){cj(l);g=c[x>>2]|0}}else{a[j>>0]=r;g=(c[x>>2]|0)+1|0;c[x>>2]=g}j=c[t>>2]|0;if(g>>>0>=j>>>0){k=c[w>>2]|0;l=k;m=g-l+1|0;if((m|0)<0){o=0;ha(178,w|0);f=o;o=0;if(f&1){u=29;break}l=c[w>>2]|0;j=c[t>>2]|0;k=l}p=k;g=j-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?m:g;j=c[x>>2]|0;n=j-p|0;if(!g){g=0;m=0}else u=65}else{n=c[x>>2]|0;g=2147483647;j=n;n=n-p|0;u=65}if((u|0)==65){o=0;m=ka(67,g|0)|0;f=o;o=0;if(f&1){u=29;break}}a[m+n>>0]=0;e=j-p|0;f=m+(n-e)|0;lw(f|0,k|0,e|0)|0;c[w>>2]=f;c[x>>2]=m+(n+1);c[t>>2]=m+g;if(l)cj(l)}else{a[g>>0]=0;c[x>>2]=(c[x>>2]|0)+1}o=0;n=ka(67,20)|0;t=o;o=0;if(!(t&1)){c[n>>2]=36800;a[n+4>>0]=-38;l=n+8|0;c[l>>2]=0;m=n+12|0;c[m>>2]=0;j=n+16|0;c[j>>2]=0;g=c[x>>2]|0;t=c[w>>2]|0;k=g-t|0;do if((g|0)!=(t|0)){if(!((k|0)<0?(o=0,ha(178,l|0),t=o,o=0,t&1):0))u=72;if((u|0)==72?(o=0,h=ka(67,k|0)|0,t=o,o=0,!(t&1)):0){c[m>>2]=h;c[l>>2]=h;c[j>>2]=h+k;g=c[w>>2]|0;j=c[x>>2]|0;if((g|0)==(j|0))break;do{a[h>>0]=a[g>>0]|0;h=(c[m>>2]|0)+1|0;c[m>>2]=h;g=g+1|0}while((g|0)!=(j|0));g=c[w>>2]|0;break}h=Na()|0;g=c[l>>2]|0;if(g){if((c[m>>2]|0)!=(g|0))c[m>>2]=g;cj(g)}cj(n);break a}while(0);if(!g){i=v;return n|0}if((c[x>>2]|0)!=(g|0))c[x>>2]=g;cj(g);i=v;return n|0}else u=29}else u=29;while(0);if((u|0)==29)h=Na()|0;g=c[w>>2]|0;if(!g)Ya(h|0);if((c[x>>2]|0)!=(g|0))c[x>>2]=g;cj(g);Ya(h|0);return 0}function yi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=(d&65535)>>>8&255;o=b+4|0;e=c[o>>2]|0;p=b+8|0;f=c[p>>2]|0;if(e>>>0>=f>>>0){g=c[b>>2]|0;h=g;i=e-h+1|0;if((i|0)<0){$i(b);h=c[b>>2]|0;f=c[p>>2]|0;g=h}m=g;e=f-m|0;if(e>>>0<1073741823){e=e<<1;e=e>>>0>>0?i:e;i=c[o>>2]|0;f=i-m|0;if(!e){l=0;k=0;j=f;e=i}else q=8}else{f=c[o>>2]|0;e=2147483647;i=f;f=f-m|0;q=8}if((q|0)==8){l=e;k=bj(e)|0;j=f;e=i}a[k+j>>0]=n;f=k+(j+1)|0;m=e-m|0;n=k+(j-m)|0;lw(n|0,g|0,m|0)|0;c[b>>2]=n;c[o>>2]=f;c[p>>2]=k+l;if(h){cj(h);f=c[o>>2]|0}}else{a[e>>0]=n;f=(c[o>>2]|0)+1|0;c[o>>2]=f}m=d&255;e=c[p>>2]|0;if(f>>>0>>0){a[f>>0]=m;c[o>>2]=(c[o>>2]|0)+1;return}g=c[b>>2]|0;h=g;f=f-h+1|0;if((f|0)<0){$i(b);h=c[b>>2]|0;e=c[p>>2]|0;g=h}l=g;e=e-l|0;if(e>>>0<1073741823){e=e<<1;e=e>>>0>>0?f:e;i=c[o>>2]|0;f=i-l|0;if(!e){k=0;j=0;e=i}else q=18}else{f=c[o>>2]|0;e=2147483647;i=f;f=f-l|0;q=18}if((q|0)==18){k=e;j=bj(e)|0;e=i}a[j+f>>0]=m;d=e-l|0;q=j+(f-d)|0;lw(q|0,g|0,d|0)|0;c[b>>2]=q;c[o>>2]=j+(f+1);c[p>>2]=j+k;if(!h)return;cj(h);return}function zi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=c[b>>2]|0;q=c[d>>2]|0;p=q;k=g;n=e;l=f-n|0;if((l|0)<=0){r=q;return r|0}o=b+8|0;d=c[o>>2]|0;r=b+4|0;m=c[r>>2]|0;h=m;if((l|0)<=(d-h|0)){j=h-p|0;if((l|0)>(j|0)){i=e+j|0;if((i|0)==(f|0))d=m;else{h=i;d=m;do{a[d>>0]=a[h>>0]|0;d=(c[r>>2]|0)+1|0;c[r>>2]=d;h=h+1|0}while((h|0)!=(f|0))}if((j|0)>0)j=d;else{r=q;return r|0}}else{j=m;i=f}g=j-(g+(l-k+p))|0;d=q+g|0;if(d>>>0>>0){h=j;do{a[h>>0]=a[d>>0]|0;d=d+1|0;h=(c[r>>2]|0)+1|0;c[r>>2]=h}while((d|0)!=(m|0))}nw(j+(0-g)|0,q|0,g|0)|0;nw(q|0,e|0,i-n|0)|0;r=q;return r|0}h=h-k+l|0;if((h|0)<0){$i(b);d=c[o>>2]|0;g=c[b>>2]|0}i=g;d=d-i|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?h:d;h=p-i|0;if(!d){i=0;l=0}else j=15}else{d=2147483647;h=p-i|0;j=15}if((j|0)==15){i=d;l=bj(d)|0}k=l+h|0;d=k;j=l+i|0;if((e|0)!=(f|0)){g=e;i=k;do{a[i>>0]=a[g>>0]|0;i=d+1|0;d=i;g=g+1|0}while((g|0)!=(f|0));g=c[b>>2]|0}e=p-g|0;f=l+(h-e)|0;lw(f|0,g|0,e|0)|0;p=(c[r>>2]|0)-p|0;e=d;lw(e|0,q|0,p|0)|0;d=c[b>>2]|0;c[b>>2]=f;c[r>>2]=e+p;c[o>>2]=j;if(!d){r=k;return r|0}cj(d);r=k;return r|0}function Ai(a){a=a|0;var b=0;c[a>>2]=36800;b=c[a+8>>2]|0;if(!b)return;a=a+12|0;if((c[a>>2]|0)!=(b|0))c[a>>2]=b;cj(b);return}function Bi(a){a=a|0;var b=0,d=0;c[a>>2]=36800;b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Ci(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;Di(d,-1);Di(d,a[b+4>>0]|0);g=b+12|0;f=b+8|0;b=(c[g>>2]|0)-(c[f>>2]|0)+2|0;Di(d,(b&65535)>>>8&255);Di(d,b&255);b=c[f>>2]|0;if((c[g>>2]|0)==(b|0))return;else e=0;do{Di(d,a[b+e>>0]|0);e=e+1|0;b=c[f>>2]|0}while(e>>>0<((c[g>>2]|0)-b|0)>>>0);return}function Di(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=c[b+4>>2]|0;if(g){e=g+24|0;f=c[e>>2]|0;if((f|0)==(c[g+28>>2]|0)){Lb[c[(c[g>>2]|0)+52>>2]&63](g,d&255)|0;return}else{c[e>>2]=f+1;a[f>>0]=d;return}}e=b+16|0;f=c[e>>2]|0;if(f>>>0<(c[b+12>>2]|0)>>>0){c[e>>2]=f+1;a[(c[b+8>>2]|0)+f>>0]=d;return}e=Ma(16)|0;o=0;f=ua(1)|0;d=o;o=0;if(d&1){d=Na()|0;La(e|0);Ya(d|0)}o=0;wa(7,e|0,4,f|0);d=o;o=0;if(d&1){d=Na()|0;La(e|0);Ya(d|0)}else lb(e|0,824,96)}function Ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)<4095?(b+128|0)/256|0:16;g=(d*3|0)+2+f|0;e=d+1|0;g=(g|0)<(e|0)|(g|0)>(b|0)?e:g;c[a+4>>2]=g;e=(f<<2|3)+(d*5|0)|0;e=(e|0)>(b|0)|(e|0)<(g|0)?g:e;c[a+8>>2]=e;d=(d*7|0)+4+(f*17|0)|0;c[a+12>>2]=(d|0)>(b|0)|(d|0)<(e|0)?e:d;c[a>>2]=b;c[a+16>>2]=64;return}function Fi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+128|0;k=m+100|0;f=m+16|0;e=m+112|0;l=m+4|0;n=m;g=f;h=b+20|0;j=g+84|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));c[f+16>>2]=c[b+4>>2];h=pc(e,f,b+56|0)|0;e=c[(c[h>>2]|0)+16>>2]|0;b=b+8|0;o=0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];e=ra(e|0,h|0,k|0)|0;b=o;o=0;do if(b&1)e=Na()|0;else{g=d+4|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];g=d+16|0;b=c[g>>2]|0;k=l+8|0;c[k>>2]=(c[k>>2]|0)-b;k=l+4|0;c[k>>2]=(c[k>>2]|0)+b;k=c[(c[h>>2]|0)+12>>2]|0;c[n>>2]=e;o=0;e=va(k|0,h|0,n|0,l|0,((a[d>>0]|0)==0?0:(c[d+8>>2]|0)+b|0)|0)|0;l=o;o=0;if(l&1){e=Na()|0;f=c[n>>2]|0;c[n>>2]=0;if(!f)break;Bb[c[(c[f>>2]|0)+4>>2]&255](f);break}f=c[n>>2]|0;c[n>>2]=0;if(f)Bb[c[(c[f>>2]|0)+4>>2]&255](f);if(!(c[d+4>>2]|0))c[g>>2]=(c[g>>2]|0)+e;if(!h){i=m;return}Bb[c[(c[h>>2]|0)+4>>2]&255](h);i=m;return}while(0);if(!h)Ya(e|0);Bb[c[(c[h>>2]|0)+4>>2]&255](h);Ya(e|0)}function Gi(b,d){b=b|0;d=d|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];a[b+12>>0]=0;d=b+16|0;b=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));return}function Hi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+32|0;u=v+4|0;q=v+16|0;w=v;Ii(b);r=b+16|0;g=c[b+24>>2]|0;a:do if((g+-2|0)>>>0<=14){s=b+40|0;e=c[s>>2]|0;if(e>>>0>2)e=5;else{t=b+32|0;h=c[t>>2]|0;switch(h|0){case 0:{e=1;break a}case 4:{if((e|0)==2){e=2;break a}break}case 3:break;default:if(e){e=2;break a}}p=b+100|0;e=b+108|0;f=c[e>>2]|0;if((f|0)<1){f=c[r>>2]|0;c[e>>2]=f;e=c[b+20>>2]|0;c[b+112>>2]=e}else e=c[b+112>>2]|0;l=tw(e|0,((e|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;k=(g+7|0)/8|0;k=tw(l|0,D|0,k|0,((k|0)<0)<<31>>31|0)|0;l=d+4|0;e=c[l>>2]|0;j=d+8|0;if((e|0)!=0?(m=c[j>>2]|0,n=tw(h|0,((h|0)<0)<<31>>31|0,k|0,D|0)|0,g=D,0<(g|0)|0==(g|0)&m>>>0>>0):0){e=Ma(16)|0;o=0;f=ua(1)|0;w=o;o=0;if(!(w&1)?(o=0,wa(7,e|0,3,f|0),w=o,o=0,!(w&1)):0)lb(e|0,824,96);w=Na()|0;La(e|0);Ya(w|0)}m=b+52|0;n=b+12|0;if((h|0)>0)h=0;else{i=v;return}while(1){Ji(b,(h|0)==0);f=nc(q,r,m)|0;g=c[(c[f>>2]|0)+8>>2]|0;o=0;c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];g=ra(g|0,f|0,u|0)|0;x=o;o=0;if(x&1){g=32;break}x=c[(c[f>>2]|0)+16>>2]|0;c[w>>2]=g;o=0;fa(x|0,f|0,w|0,p|0,b|0,(a[n>>0]|0)!=0|0);x=o;o=0;if(x&1){g=30;break}g=c[w>>2]|0;c[w>>2]=0;if(g)Bb[c[(c[g>>2]|0)+4>>2]&255](g);if(!e)e=0;else{e=e+k|0;c[l>>2]=e;c[j>>2]=(c[j>>2]|0)-k}g=(c[s>>2]|0)==0;h=(g&1)+h|0;if(f)Bb[c[(c[f>>2]|0)+4>>2]&255](f);if(!g){g=34;break}if((h|0)>=(c[t>>2]|0)){g=34;break}}if((g|0)==30){e=Na()|0;g=c[w>>2]|0;c[w>>2]=0;if(g)Bb[c[(c[g>>2]|0)+4>>2]&255](g)}else if((g|0)==32){e=Na()|0;if(!f){x=e;Ya(x|0)}}else if((g|0)==34){i=v;return}Bb[c[(c[f>>2]|0)+4>>2]&255](f);x=e;Ya(x|0)}}else e=2;while(0);f=Ma(16)|0;o=0;g=ua(1)|0;x=o;o=0;if(!(x&1)?(o=0,wa(7,f|0,e|0,g|0),x=o,o=0,!(x&1)):0)lb(f|0,824,96);x=Na()|0;La(f|0);Ya(x|0)}function Ii(a){a=a|0;var b=0,c=0,d=0,e=0;if((Mi(a)|0)<<24>>24!=-40){b=Ma(16)|0;o=0;c=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,wa(7,b|0,5,c|0),e=o,o=0,!(e&1)):0)lb(b|0,824,96);e=Na()|0;La(b|0);Ya(e|0)}b=Mi(a)|0;if(b<<24>>24==-38)return;while(1){d=((Li(a)|0)&255)<<8;d=d|(Li(a)|0)&255;b=Ni(a,b)|0;c=-2-b+d|0;if((c|0)<0)break;if((c|0)>0){b=d+-2-b|0;c=0;do{Li(a)|0;c=c+1|0}while((c|0)!=(b|0))}b=Mi(a)|0;if(b<<24>>24==-38){e=8;break}}if((e|0)==8)return;b=Ma(16)|0;o=0;c=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,wa(7,b|0,5,c|0),e=o,o=0,!(e&1)):0)lb(b|0,824,96);e=Na()|0;La(b|0);Ya(e|0)}function Ji(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(!b){if((Li(a)|0)<<24>>24!=-1){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,12,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}if((Li(a)|0)<<24>>24!=-38){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}}Li(a)|0;Li(a)|0;d=Li(a)|0;e=d&255;do if(d<<24>>24==1){Li(a)|0;d=0;f=20}else{if((e|0)==(c[a+32>>2]|0)){b=Li(a)|0;if(!(d<<24>>24))break;else{d=0;f=20;break}}b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,2,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}while(0);if((f|0)==20)while(1){Li(a)|0;d=d+1|0;b=Li(a)|0;if((d|0)==(e|0))break;else f=20}c[a+36>>2]=b&255;f=Li(a)|0;d=a+40|0;c[d>>2]=f&255;if((f&255)>=3){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}if((Li(a)|0)<<24>>24){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}e=a+28|0;if(c[e>>2]|0)return;b=c[a+108>>2]|0;if(!b)b=c[a+16>>2]|0;if(!(c[d>>2]|0))d=1;else d=c[a+32>>2]|0;f=$(d,b)|0;c[e>>2]=$(f,((c[a+24>>2]|0)+7|0)/8|0)|0;return}function Ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((e|0)<=0)return;n=d+4|0;o=d+8|0;q=0;do{p=Li(b)|0;f=c[n>>2]|0;g=c[o>>2]|0;if(f>>>0>=g>>>0){h=c[d>>2]|0;i=h;j=f-i+1|0;if((j|0)<0){$i(d);i=c[d>>2]|0;g=c[o>>2]|0;h=i}m=h;f=g-m|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?j:f;j=c[n>>2]|0;g=j-m|0;if(!f){l=0;k=0;f=j}else r=10}else{g=c[n>>2]|0;f=2147483647;j=g;g=g-m|0;r=10}if((r|0)==10){r=0;l=f;k=bj(f)|0;f=j}a[k+g>>0]=p;m=f-m|0;p=k+(g-m)|0;lw(p|0,h|0,m|0)|0;c[d>>2]=p;c[n>>2]=k+(g+1);c[o>>2]=k+l;if(i)cj(i)}else{a[f>>0]=p;c[n>>2]=(c[n>>2]|0)+1}q=q+1|0}while((q|0)!=(e|0));return}function Li(b){b=b|0;var e=0,f=0,g=0,h=0;f=c[b>>2]|0;if(f){b=f+12|0;e=c[b>>2]|0;if((e|0)==(c[f+16>>2]|0))b=Eb[c[(c[f>>2]|0)+40>>2]&127](f)|0;else{c[b>>2]=e+1;b=d[e>>0]|0}h=b&255;return h|0}g=b+8|0;h=c[g>>2]|0;if(h){b=b+4|0;e=c[b>>2]|0;f=a[e>>0]|0;if(!e){h=f;return h|0}c[b>>2]=e+1;c[g>>2]=h+-1;h=f;return h|0}b=Ma(16)|0;o=0;e=ua(1)|0;h=o;o=0;if(h&1){h=Na()|0;La(b|0);Ya(h|0)}o=0;wa(7,b|0,4,e|0);h=o;o=0;if(h&1){h=Na()|0;La(b|0);Ya(h|0)}else lb(b|0,824,96);return 0}function Mi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+176|0;b=d+152|0;k=d+16|0;h=d;j=Li(a)|0;e=j&255;if(j<<24>>24==-1){do b=Li(a)|0;while(b<<24>>24==-1);i=d;return b|0}j=k+56|0;g=k+4|0;c[k>>2]=36160;c[j>>2]=36180;o=0;ia(62,k+56|0,g|0);f=o;o=0;if(f&1){k=Na()|0;fn(j);Ya(k|0)}c[k+128>>2]=0;c[k+132>>2]=-1;c[k>>2]=36200;c[k+56>>2]=36220;o=0;ha(180,g|0);f=o;o=0;do if(f&1)b=Na()|0;else{c[g>>2]=36236;f=k+36|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[k+52>>2]=16;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;o=0;ia(63,g|0,b|0);d=o;o=0;if(d&1){k=Na()|0;Im(b);Im(f);nn(g);b=k;break}Im(b);c[k+((c[(c[k>>2]|0)+-12>>2]|0)+76)>>2]=48;o=0;b=ma(28,k|0,50907,62)|0;d=o;o=0;if(!(d&1)?(d=b+((c[(c[b>>2]|0)+-12>>2]|0)+4)|0,c[d>>2]=c[d>>2]&-75|8,d=b+((c[(c[b>>2]|0)+-12>>2]|0)+4)|0,c[d>>2]=c[d>>2]|16384,c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=2,o=0,ra(38,b|0,e|0)|0,e=o,o=0,!(e&1)):0){d=Ma(16)|0;o=0;ia(64,h|0,g|0);e=o;o=0;if(!(e&1)){o=0;b=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,Aa(36,d|0,12,b|0,h|0),e=o,o=0,!(e&1)):0){o=0;wa(6,d|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(h);if(!a){h=b;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}}else b=Na()|0;La(d|0);h=b;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}h=Na()|0;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}while(0);k=b;fn(j);Ya(k|0);return 0}function Ni(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;d=i;i=i+320|0;j=d+300|0;m=d+152|0;k=d+288|0;n=d+16|0;l=d;switch(b<<24>>24){case -9:{c[a+24>>2]=(Li(a)|0)&255;p=((Li(a)|0)&255)<<8|(Li(a)|0)&255;c[a+16>>2]=((Li(a)|0)&255)<<8|(Li(a)|0)&255;c[a+20>>2]=p;c[a+32>>2]=(Li(a)|0)&255;p=6;i=d;return p|0}case -8:{p=Oi(a)|0;i=d;return p|0}case -24:{p=Pi(a)|0;i=d;return p|0}case -53:case -54:case -55:case -57:case -58:case -59:case -61:case -62:case -63:case -64:{h=m+56|0;f=m+4|0;c[m>>2]=36160;c[h>>2]=36180;o=0;ia(62,m+56|0,f|0);n=o;o=0;if(n&1){p=Na()|0;fn(h);Ya(p|0)}c[m+128>>2]=0;c[m+132>>2]=-1;c[m>>2]=36200;c[m+56>>2]=36220;o=0;ha(180,f|0);n=o;o=0;do if(n&1)a=Na()|0;else{c[f>>2]=36236;g=m+36|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[m+52>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=0;ia(63,f|0,j|0);n=o;o=0;if(n&1){a=Na()|0;Im(j);Im(g);nn(f);break}Im(j);o=0;a=ma(28,m|0,50970,26)|0;n=o;o=0;do if((!(n&1)?(o=0,e=ra(38,a|0,b&255|0)|0,n=o,o=0,!(n&1)):0)?(o=0,ma(28,e|0,50997,18)|0,n=o,o=0,!(n&1)):0){e=Ma(16)|0;o=0;ia(64,k|0,f|0);n=o;o=0;if(!(n&1)){o=0;a=ua(1)|0;n=o;o=0;if(!(n&1)?(o=0,Aa(36,e|0,10,a|0,k|0),n=o,o=0,!(n&1)):0){o=0;wa(6,e|0,824,96);o=0;d=0}else d=1;a=Na()|0;Im(k);if(!d)break}else a=Na()|0;La(e|0)}else p=20;while(0);if((p|0)==20)a=Na()|0;c[m>>2]=36200;c[h>>2]=36220;c[f>>2]=36236;Im(g);nn(f);fn(h);p=a;Ya(p|0)}while(0);p=a;fn(h);Ya(p|0)}case -25:case -32:case -2:{p=0;i=d;return p|0}default:{k=n+56|0;g=n+4|0;c[n>>2]=36160;c[k>>2]=36180;o=0;ia(62,n+56|0,g|0);m=o;o=0;if(m&1){p=Na()|0;fn(k);Ya(p|0)}c[n+128>>2]=0;c[n+132>>2]=-1;c[n>>2]=36200;c[n+56>>2]=36220;o=0;ha(180,g|0);m=o;o=0;do if(m&1)a=Na()|0;else{c[g>>2]=36236;h=n+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[n+52>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=0;ia(63,g|0,j|0);m=o;o=0;if(m&1){a=Na()|0;Im(j);Im(h);nn(g);break}Im(j);o=0;a=ma(28,n|0,51016,20)|0;m=o;o=0;do if((!(m&1)?(o=0,f=ra(38,a|0,b&255|0)|0,m=o,o=0,!(m&1)):0)?(o=0,ma(28,f|0,51037,13)|0,m=o,o=0,!(m&1)):0){e=Ma(16)|0;o=0;ia(64,l|0,g|0);m=o;o=0;if(!(m&1)){o=0;a=ua(1)|0;m=o;o=0;if(!(m&1)?(o=0,Aa(36,e|0,11,a|0,l|0),m=o,o=0,!(m&1)):0){o=0;wa(6,e|0,824,96);o=0;d=0}else d=1;a=Na()|0;Im(l);if(!d)break}else a=Na()|0;La(e|0)}else p=40;while(0);if((p|0)==40)a=Na()|0;c[n>>2]=36200;c[k>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(k);p=a;Ya(p|0)}while(0);p=a;fn(k);Ya(p|0)}}return 0}function Oi(a){a=a|0;var b=0;if((Li(a)|0)<<24>>24!=1){a=1;return a|0}b=((Li(a)|0)&255)<<8;c[a+52>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+56>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+60>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+64>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+68>>2]=b|(Li(a)|0)&255;a=11;return a|0}function Pi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d;c[f>>2]=0;g=f+4|0;c[g>>2]=0;c[f+8>>2]=0;o=0;wa(9,a|0,f|0,4);b=o;o=0;a:do if(b&1)e=3;else{b=c[f>>2]|0;b:do if(!(ol(b,51051,4)|0)){o=0;b=ka(69,a|0)|0;h=o;o=0;if(h&1){e=3;break a}b=b&255;switch(b|0){case 3:case 2:case 1:case 0:{c[a+44>>2]=b;a=5;b=c[f>>2]|0;break b}case 5:case 4:{b=Ma(16)|0;o=0;a=ua(1)|0;h=o;o=0;if(!(h&1)?(o=0,wa(7,b|0,7,a|0),h=o,o=0,!(h&1)):0){o=0;wa(6,b|0,824,96);o=0;e=3;break a}a=Na()|0;La(b|0);break a}default:{b=Ma(16)|0;o=0;a=ua(1)|0;h=o;o=0;if(!(h&1)?(o=0,wa(7,b|0,5,a|0),h=o,o=0,!(h&1)):0){o=0;wa(6,b|0,824,96);o=0;e=3;break a}a=Na()|0;La(b|0);break a}}}else a=4;while(0);if(!b){i=d;return a|0}if((c[g>>2]|0)!=(b|0))c[g>>2]=b;cj(b);i=d;return a|0}while(0);if((e|0)==3)a=Na()|0;b=c[f>>2]|0;if(!b)Ya(a|0);if((c[g>>2]|0)!=(b|0))c[g>>2]=b;cj(b);Ya(a|0);return 0}function Qi(a){a=a|0;var b=0,d=0,e=0;e=c[(c[a>>2]|0)+-12>>2]|0;c[a+e>>2]=36200;b=a+(e+56)|0;c[b>>2]=36220;d=a+(e+4)|0;c[d>>2]=36236;Im(a+(e+36)|0);nn(d);fn(b);return}function Ri(a){a=a|0;return}function Si(a){a=a|0;cj(a);return}function Ti(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;return}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f;b=wi(b)|0;c[g>>2]=b;d=a+28|0;e=c[d>>2]|0;if(e>>>0<(c[a+32>>2]|0)>>>0){c[e>>2]=b;c[d>>2]=e+4;c[g>>2]=0;i=f;return}o=0;ia(57,a+24|0,g|0);a=o;o=0;if(a&1){b=Na()|0;d=c[g>>2]|0;c[g>>2]=0;if(!d)Ya(b|0);Bb[c[(c[d>>2]|0)+4>>2]&255](d);Ya(b|0)}else{b=c[g>>2]|0;c[g>>2]=0;if(!b){i=f;return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);i=f;return}}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Di(a,-1);Di(a,-40);e=a+28|0;f=a+24|0;b=c[f>>2]|0;if((c[e>>2]|0)==(b|0)){Di(a,-1);Di(a,-39);a=a+16|0;a=c[a>>2]|0;return a|0}else d=0;do{g=c[b+(d<<2)>>2]|0;Cb[c[(c[g>>2]|0)+8>>2]&127](g,a);d=d+1|0;b=c[f>>2]|0}while(d>>>0<(c[e>>2]|0)-b>>2>>>0);Di(a,-1);Di(a,-39);g=a+16|0;g=c[g>>2]|0;return g|0}function Wi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i;i=i+48|0;j=n+32|0;f=n+12|0;k=n+8|0;m=n+4|0;p=n;e=d+36|0;do if(((((c[e>>2]|0)==0?(c[d+40>>2]|0)==0:0)?(c[d+44>>2]|0)==0:0)?(c[d+48>>2]|0)==0:0)?(c[d+52>>2]|0)==0:0){e=c[d+8>>2]|0;if((e|0)<=12){g=a+28|0;h=a+32|0;break}Ei(f,(1<>2]|0);e=vi(f)|0;c[k>>2]=e;g=a+28|0;f=c[g>>2]|0;h=a+32|0;if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[k>>2]=0;break}o=0;ia(57,a+24|0,k|0);j=o;o=0;if(!(j&1)){e=c[k>>2]|0;c[k>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[k>>2]|0;c[k>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}else l=6;while(0);do if((l|0)==6){e=vi(e)|0;c[j>>2]=e;g=a+28|0;f=c[g>>2]|0;h=a+32|0;if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[j>>2]=0;break}o=0;ia(57,a+24|0,j|0);l=o;o=0;if(!(l&1)){e=c[j>>2]|0;c[j>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[j>>2]|0;c[j>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}while(0);e=a+20|0;f=(c[e>>2]|0)+1|0;c[e>>2]=f;e=c[d+24>>2]|0;j=(e|0)==0?1:c[d+16>>2]|0;e=xi(f,j,c[d+20>>2]|0,e)|0;c[m>>2]=e;f=c[g>>2]|0;do if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[m>>2]=0}else{o=0;ia(57,a+24|0,m|0);l=o;o=0;if(!(l&1)){e=c[m>>2]|0;c[m>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[m>>2]|0;c[m>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}while(0);k=bj(104)|0;c[k>>2]=36820;c[k+4>>2]=j;f=k+8|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];f=k+20|0;e=f+84|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));c[p>>2]=k;d=c[g>>2]|0;if(d>>>0<(c[h>>2]|0)>>>0){c[d>>2]=k;c[g>>2]=d+4;c[p>>2]=0;i=n;return}o=0;ia(57,a+24|0,p|0);a=o;o=0;if(a&1){d=Na()|0;e=c[p>>2]|0;c[p>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}else{d=c[p>>2]|0;c[p>>2]=0;if(!d){i=n;return}Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=n;return}}function Xi(b,d,e,f,g,h,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,u=0;q=i;i=i+96|0;p=q;o=ic(b,d,p,0)|0;if(o){g=o;i=q;return g|0}a[p+32>>0]=0;s=c[p+8>>2]|0;u=c[p>>2]|0;t=c[p+4>>2]|0;o=$(t,u)|0;r=c[p+16>>2]|0;o=$($(o,(s|0)<9?1:2)|0,r)|0;c[f>>2]=o;o=Fl(o)|0;c[e>>2]=o;c[g>>2]=u;c[h>>2]=t;c[j>>2]=s;c[k>>2]=c[p+12>>2];c[l>>2]=r;c[m>>2]=c[p+20>>2];c[n>>2]=c[p+24>>2];g=jc(o,c[f>>2]|0,b,d,0,0)|0;i=q;return g|0}function Yi(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;n=i;i=i+96|0;l=n+4|0;h=n;m=l;o=m+84|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(o|0));c[l+16>>2]=g;c[l+8>>2]=f;c[l>>2]=d;c[l+4>>2]=e;c[j>>2]=Fl(b)|0;c[h>>2]=0;d=hc(j,b,h,a,b,l,0)|0;c[k>>2]=c[h>>2];i=n;return d|0}function Zi(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d>>2]=b;b=c[9320]|0;cl(b,a,d)|0;Wk(10,b)|0;Ga()}function _i(a){a=a|0;Ka(51337,51366,1164,51442)}function $i(a){a=a|0;Ka(51463,51486,303,51442)}function aj(){var a=0,b=0;a=i;i=i+16|0;if(!(db(37024,4)|0)){b=$a(c[9255]|0)|0;i=a;return b|0}else Zi(51562,a);return 0}function bj(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Fl(b)|0;a:do if(!a){while(1){a=kj()|0;if(!a)break;Rb[a&7]();a=Fl(b)|0;if(a)break a}b=Ma(4)|0;c[b>>2]=36844;lb(b|0,592,78)}while(0);return a|0}function cj(a){a=a|0;Gl(a);return}function dj(a){a=a|0;cj(a);return}function ej(a){a=a|0;c[a>>2]=36844;return}function fj(a){a=a|0;return}function gj(a){a=a|0;cj(a);return}function hj(a){a=a|0;return 51611}function ij(a){a=a|0;var b=0;b=i;i=i+16|0;o=0;xa(a|0);a=o;o=0;if(!(a&1)){o=0;ia(85,51626,b|0);o=0}a=Na(0)|0;Va(a|0)|0;o=0;ia(85,51666,b+8|0);o=0;a=Na(0)|0;o=0;xa(3);b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else ec(a)}function jj(){var a=0,b=0,d=0;o=0;a=ua(2)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}if(((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(d=b+48|0,(c[d>>2]&-256|0)==1126902528?(c[d+4>>2]|0)==1129074247:0):0)ij(c[b+12>>2]|0);d=c[9208]|0;c[9208]=d+0;ij(d)}function kj(){var a=0;a=c[9214]|0;c[9214]=a+0;return a|0}function lj(a){a=a|0;return}function mj(a){a=a|0;c[a>>2]=36868;Vj(a+4|0);return}function nj(a){a=a|0;mj(a);cj(a);return}function oj(a){a=a|0;return c[a+4>>2]|0}function pj(a){a=a|0;return}function qj(a){a=a|0;c[a>>2]=36888;return}function rj(a){a=a|0;return}function sj(a){a=a|0;cj(a);return}function tj(a){a=a|0;return 51716}function uj(a){a=a|0;return}function vj(a){a=a|0;return}function wj(a){a=a|0;return}function xj(a){a=a|0;cj(a);return}function yj(a){a=a|0;cj(a);return}function zj(a){a=a|0;cj(a);return}function Aj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+64|0;g=h;if((a|0)!=(b|0))if((b|0)!=0?(f=Gj(b,656,672,0)|0,(f|0)!=0):0){b=g;e=b+56|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[g>>2]=f;c[g+8>>2]=a;c[g+12>>2]=-1;c[g+48>>2]=1;Ub[c[(c[f>>2]|0)+28>>2]&63](f,g,c[d>>2]|0,1);if((c[g+24>>2]|0)==1){c[d>>2]=c[g+16>>2];b=1}else b=0}else b=0;else b=1;i=h;return b|0}function Bj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Bj(0,b,d,e);return}function Dj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Bj(0,b,d,e);else{a=c[a+8>>2]|0;Ub[c[(c[a>>2]|0)+28>>2]&63](a,b,d,e)}return}function Ej(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ub[c[(c[a>>2]|0)+28>>2]&63](a,b,d+f|0,(g&2|0)!=0?e:2);return}function Fj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((b|0)!=(c[d+8>>2]|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Ej(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Ej(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Bj(0,d,e,f);while(0);return}function Gj(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;q=r;p=c[d>>2]|0;o=d+(c[p+-8>>2]|0)|0;p=c[p+-4>>2]|0;c[q>>2]=f;c[q+4>>2]=d;c[q+8>>2]=e;c[q+12>>2]=g;g=q+16|0;d=q+20|0;e=q+24|0;h=q+28|0;j=q+32|0;k=q+40|0;l=(p|0)==(f|0);m=g;n=m+36|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));b[g+36>>1]=0;a[g+38>>0]=0;a:do if(l){c[q+48>>2]=1;Ib[c[(c[f>>2]|0)+20>>2]&15](f,q,o,o,1,0);g=(c[e>>2]|0)==1?o:0}else{zb[c[(c[p>>2]|0)+24>>2]&15](p,q,o,1,0);switch(c[q+36>>2]|0){case 0:{g=(c[k>>2]|0)==1&(c[h>>2]|0)==1&(c[j>>2]|0)==1?c[d>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((c[e>>2]|0)!=1?!((c[k>>2]|0)==0&(c[h>>2]|0)==1&(c[j>>2]|0)==1):0){g=0;break}g=c[g>>2]|0}while(0);i=r;return g|0}function Hj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;f=d+16|0;b=c[f>>2]|0;if(!b){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((b|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}b=d+24|0;f=c[b>>2]|0;if((f|0)==2){c[b>>2]=g;f=g}if((f|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Ij(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){q=c[b+12>>2]|0;j=b+16+(q<<3)|0;Kj(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;i=c[b+8>>2]|0;if((i&2|0)==0?(k=d+36|0,(c[k>>2]|0)!=1):0){if(!(i&1)){i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[k>>2]|0)==1)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+24|0;b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[k>>2]|0)==1?(c[i>>2]|0)==1:0)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+54|0;while(1){if(a[i>>0]|0)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(p=d+20|0,(c[p>>2]|0)!=(e|0)):0){c[d+32>>2]=f;m=d+44|0;if((c[m>>2]|0)==4)break;i=c[b+12>>2]|0;j=b+16+(i<<3)|0;k=d+52|0;f=d+53|0;n=d+54|0;l=b+8|0;o=d+24|0;b:do if((i|0)>0){i=0;h=0;b=b+16|0;while(1){a[k>>0]=0;a[f>>0]=0;Jj(b,d,e,e,1,g);if(a[n>>0]|0){q=20;break b}do if(a[f>>0]|0){if(!(a[k>>0]|0))if(!(c[l>>2]&1)){h=1;q=20;break b}else{h=1;break}if((c[o>>2]|0)==1)break b;if(!(c[l>>2]&2))break b;else{i=1;h=1}}while(0);b=b+8|0;if(b>>>0>=j>>>0){q=20;break}}}else{i=0;h=0;q=20}while(0);do if((q|0)==20){if((!i?(c[p>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h)break}else q=24;if((q|0)==24?h:0)break;c[m>>2]=4;break a}while(0);c[m>>2]=3;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Jj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ib[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e+h|0,(i&2|0)!=0?f:2,g);return}function Kj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;zb[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,(h&2|0)!=0?e:2,f);return}function Lj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){j=c[b+8>>2]|0;zb[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(i=d+20|0,(c[i>>2]|0)!=(e|0)):0){c[d+32>>2]=f;f=d+44|0;if((c[f>>2]|0)==4)break;h=d+52|0;a[h>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ib[c[(c[b>>2]|0)+20>>2]&15](b,d,e,e,1,g);if(a[k>>0]|0){if(!(a[h>>0]|0)){h=1;j=13}}else{h=0;j=13}do if((j|0)==13){c[i>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(h)break}else j=16;if((j|0)==16?h:0)break;c[f>>2]=4;break a}while(0);c[f>>2]=3;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Mj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(i=d+28|0,(c[i>>2]|0)!=1):0)c[i>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Nj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if((b|0)==(c[d+8>>2]|0))Hj(0,d,e,f,g);else{m=d+52|0;n=a[m>>0]|0;o=d+53|0;p=a[o>>0]|0;l=c[b+12>>2]|0;i=b+16+(l<<3)|0;a[m>>0]=0;a[o>>0]=0;Jj(b+16|0,d,e,f,g,h);a:do if((l|0)>1){j=d+24|0;k=b+8|0;l=d+54|0;b=b+24|0;do{if(a[l>>0]|0)break a;if(!(a[m>>0]|0)){if((a[o>>0]|0)!=0?(c[k>>2]&1|0)==0:0)break a}else{if((c[j>>2]|0)==1)break a;if(!(c[k>>2]&2))break a}a[m>>0]=0;a[o>>0]=0;Jj(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[m>>0]=n;a[o>>0]=p}return}function Oj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))Hj(0,b,d,e,f);else{a=c[a+8>>2]|0;Ib[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e,f,g)}return}function Pj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))Hj(0,b,d,e,f);return}function Qj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=c[d>>2];a=Gb[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];i=f;return a&1|0}function Rj(a){a=a|0;if(!a)a=0;else a=(Gj(a,656,704,0)|0)!=0;return a&1|0}function Sj(){var a=0;a=Ma(4)|0;ej(a);lb(a|0,592,78)}function Tj(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+48|0;h=f+32|0;d=f+24|0;j=f+16|0;g=f;f=f+36|0;a=aj()|0;if((a|0)!=0?(e=c[a>>2]|0,(e|0)!=0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=c[9257];Zi(51919,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Gb[c[(c[608>>2]|0)+16>>2]&63](608,e,f)|0){j=c[f>>2]|0;f=c[9257]|0;j=Eb[c[(c[j>>2]|0)+8>>2]&127](j)|0;c[g>>2]=f;c[g+4>>2]=a;c[g+8>>2]=j;Zi(51833,g)}else{c[j>>2]=c[9257];c[j+4>>2]=a;Zi(51878,j)}}Zi(51957,h)}function Uj(){var a=0;a=i;i=i+16|0;if(!(Fa(37020,184)|0)){i=a;return}else Zi(51730,a)}function Vj(a){a=a|0;var b=0,d=0;d=(c[a>>2]|0)+-4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if((b+-1|0)<0)cj((c[a>>2]|0)+-12|0);return}function Wj(a){a=a|0;var b=0;b=i;i=i+16|0;Gl(a);if(!(jb(c[9255]|0,0)|0)){i=b;return}else Zi(51780,b)}function Xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=hl(a,b,c)|0;return a|0}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=il(a,b,c)|0;return a|0}function Zj(){return 37296}function _j(){return 37300}function $j(){return 37304}function ak(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function bk(a){a=a|0;if((a+-48|0)>>>0<10)a=1;else a=((a|32)+-97|0)>>>0<6;return a&1|0}function ck(){var a=0;if(!(c[9258]|0))a=37308;else a=c[(bb()|0)+60>>2]|0;return a|0}function dk(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[51978+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=52066;e=5;break}}if((e|0)==2)if(!c)b=52066;else{b=52066;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function ek(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,j=0.0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0;L=i;i=i+512|0;H=L;switch(e|0){case 0:{K=24;J=-149;A=4;break}case 1:{K=53;J=-1074;A=4;break}case 2:{K=53;J=-1074;A=4;break}default:g=0.0}a:do if((A|0)==4){E=b+4|0;C=b+100|0;do{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0}while((ak(e)|0)!=0);b:do switch(e|0){case 43:case 45:{h=1-(((e|0)==45&1)<<1)|0;e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;I=h;break b}else{e=hk(b)|0;I=h;break b}}default:I=1}while(0);h=e;e=0;do{if((h|32|0)!=(a[53870+e>>0]|0))break;do if(e>>>0<7){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=hk(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{A=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{A=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[56747+e>>0]|0))break d;do if(e>>>0<2){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=hk(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==40)e=1;else{if(!(c[C>>2]|0)){g=s;break a}c[E>>2]=(c[E>>2]|0)+-1;g=s;break a}while(1){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0}else h=hk(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[C>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!k){c[(ck()|0)>>2]=22;gk(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{do if((h|0)==48){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|32|0)!=120){if(!(c[C>>2]|0)){e=48;break}c[E>>2]=(c[E>>2]|0)+-1;e=48;break}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=0}else{e=hk(b)|0;k=0}e:while(1){switch(e|0){case 46:{A=74;break e}case 48:break;default:{y=0;l=0;x=0;h=0;n=k;o=0;w=0;m=1.0;k=0;g=0.0;break e}}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=hk(b)|0;k=1;continue}}if((A|0)==74){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48){k=0;h=0;do{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;k=jw(k|0,h|0,-1,-1)|0;h=D}while((e|0)==48);y=0;l=0;x=k;n=1;o=1;w=0;m=1.0;k=0;g=0.0}else{y=0;l=0;x=0;h=0;n=k;o=1;w=0;m=1.0;k=0;g=0.0}}while(1){u=e+-48|0;p=e|32;if(u>>>0>=10){v=(e|0)==46;if(!(v|(p+-97|0)>>>0<6)){p=x;u=y;break}if(v)if(!o){v=l;h=y;u=y;o=1;p=w;j=m}else{p=x;u=y;e=46;break}else A=86}else A=86;if((A|0)==86){A=0;e=(e|0)>57?p+-87|0:u;do if(!((y|0)<0|(y|0)==0&l>>>0<8)){if((y|0)<0|(y|0)==0&l>>>0<14){r=m*.0625;p=w;j=r;g=g+r*+(e|0);break}if((w|0)!=0|(e|0)==0){p=w;j=m}else{p=1;j=m;g=g+m*.5}}else{p=w;j=m;k=e+(k<<4)|0}while(0);l=jw(l|0,y|0,1,0)|0;v=x;u=D;n=1}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;y=u;x=v;e=d[e>>0]|0;w=p;m=j;continue}else{y=u;x=v;e=hk(b)|0;w=p;m=j;continue}}if(!n){e=(c[C>>2]|0)==0;if(!e)c[E>>2]=(c[E>>2]|0)+-1;if(f){if(!e?(z=c[E>>2]|0,c[E>>2]=z+-1,(o|0)!=0):0)c[E>>2]=z+-2}else gk(b,0);g=+(I|0)*0.0;break a}n=(o|0)==0;o=n?l:p;n=n?u:h;if((u|0)<0|(u|0)==0&l>>>0<8){h=u;do{k=k<<4;l=jw(l|0,h|0,1,0)|0;h=D}while((h|0)<0|(h|0)==0&l>>>0<8)}if((e|32|0)==112){h=tl(b,f)|0;e=D;if((h|0)==0&(e|0)==-2147483648){if(!f){gk(b,0);g=0.0;break a}if(!(c[C>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}}}else if(!(c[C>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}H=mw(o|0,n|0,2)|0;H=jw(H|0,D|0,-32,-1)|0;e=jw(H|0,D|0,h|0,e|0)|0;h=D;if(!k){g=+(I|0)*0.0;break a}if((h|0)>0|(h|0)==0&e>>>0>(0-J|0)>>>0){c[(ck()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}H=J+-106|0;G=((H|0)<0)<<31>>31;if((h|0)<(G|0)|(h|0)==(G|0)&e>>>0>>0){c[(ck()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((k|0)>-1){do{G=!(g>=.5);H=G&1|k<<1;k=H^1;g=g+(G?g:g+-1.0);e=jw(e|0,h|0,-1,-1)|0;h=D}while((H|0)>-1);l=e;m=g}else{l=e;m=g}e=hw(32,0,J|0,((J|0)<0)<<31>>31|0)|0;e=jw(l|0,h|0,e|0,D|0)|0;J=D;if(0>(J|0)|0==(J|0)&K>>>0>e>>>0)if((e|0)<0){e=0;A=127}else A=125;else{e=K;A=125}if((A|0)==125)if((e|0)<53)A=127;else{h=e;j=+(I|0);g=0.0}if((A|0)==127){g=+(I|0);h=e;j=g;g=+sk(+xk(1.0,84-e|0),g)}K=(k&1|0)==0&(m!=0.0&(h|0)<32);g=j*(K?0.0:m)+(g+j*+(((K&1)+k|0)>>>0))-g;if(!(g!=0.0))c[(ck()|0)>>2]=34;g=+yk(g,l);break a}else e=h;while(0);F=J+K|0;G=0-F|0;k=0;f:while(1){switch(e|0){case 46:{A=138;break f}case 48:break;default:{h=0;p=0;o=0;break f}}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=hk(b)|0;k=1;continue}}if((A|0)==138){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48){h=0;e=0;while(1){h=jw(h|0,e|0,-1,-1)|0;k=D;e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48)e=k;else{p=k;k=1;o=1;break}}}else{h=0;p=0;o=1}}c[H>>2]=0;n=e+-48|0;l=(e|0)==46;g:do if(l|n>>>0<10){B=H+496|0;y=0;v=0;w=l;A=p;u=k;z=o;k=0;l=0;o=0;h:while(1){do if(w)if(!z){h=y;p=v;z=1}else{p=A;e=y;n=v;break h}else{w=jw(y|0,v|0,1,0)|0;v=D;x=(e|0)!=48;if((l|0)>=125){if(!x){p=A;y=w;break}c[B>>2]=c[B>>2]|1;p=A;y=w;break}p=H+(l<<2)|0;if(k)n=e+-48+((c[p>>2]|0)*10|0)|0;c[p>>2]=n;k=k+1|0;n=(k|0)==9;p=A;y=w;u=1;k=n?0:k;l=(n&1)+l|0;o=x?w:o}while(0);e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;n=e+-48|0;w=(e|0)==46;if(!(w|n>>>0<10)){n=z;A=161;break g}else A=p}u=(u|0)!=0;A=169}else{y=0;v=0;u=k;n=o;k=0;l=0;o=0;A=161}while(0);do if((A|0)==161){B=(n|0)==0;h=B?y:h;p=B?v:p;u=(u|0)!=0;if(!((e|32|0)==101&u))if((e|0)>-1){e=y;n=v;A=169;break}else{e=y;n=v;A=171;break}n=tl(b,f)|0;e=D;if((n|0)==0&(e|0)==-2147483648){if(!f){gk(b,0);g=0.0;break}if(!(c[C>>2]|0)){n=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;n=0;e=0}}h=jw(n|0,e|0,h|0,p|0)|0;u=y;p=D;n=v;A=173}while(0);if((A|0)==169)if(c[C>>2]|0){c[E>>2]=(c[E>>2]|0)+-1;if(u){u=e;A=173}else A=172}else A=171;if((A|0)==171)if(u){u=e;A=173}else A=172;do if((A|0)==172){c[(ck()|0)>>2]=22;gk(b,0);g=0.0}else if((A|0)==173){e=c[H>>2]|0;if(!e){g=+(I|0)*0.0;break}if(((n|0)<0|(n|0)==0&u>>>0<10)&((h|0)==(u|0)&(p|0)==(n|0))?K>>>0>30|(e>>>K|0)==0:0){g=+(I|0)*+(e>>>0);break}b=(J|0)/-2|0;E=((b|0)<0)<<31>>31;if((p|0)>(E|0)|(p|0)==(E|0)&h>>>0>b>>>0){c[(ck()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}b=J+-106|0;E=((b|0)<0)<<31>>31;if((p|0)<(E|0)|(p|0)==(E|0)&h>>>0>>0){c[(ck()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(k){if((k|0)<9){n=H+(l<<2)|0;e=c[n>>2]|0;do{e=e*10|0;k=k+1|0}while((k|0)!=9);c[n>>2]=e}l=l+1|0}if((o|0)<9?(o|0)<=(h|0)&(h|0)<18:0){if((h|0)==9){g=+(I|0)*+((c[H>>2]|0)>>>0);break}if((h|0)<9){g=+(I|0)*+((c[H>>2]|0)>>>0)/+(c[37312+(8-h<<2)>>2]|0);break}b=K+27+($(h,-3)|0)|0;e=c[H>>2]|0;if((b|0)>30|(e>>>b|0)==0){g=+(I|0)*+(e>>>0)*+(c[37312+(h+-10<<2)>>2]|0);break}}e=(h|0)%9|0;if(!e){k=0;e=0}else{u=(h|0)>-1?e:e+9|0;n=c[37312+(8-u<<2)>>2]|0;if(l){o=1e9/(n|0)|0;k=0;e=0;p=0;do{C=H+(p<<2)|0;E=c[C>>2]|0;b=((E>>>0)/(n>>>0)|0)+e|0;c[C>>2]=b;e=$((E>>>0)%(n>>>0)|0,o)|0;b=(p|0)==(k|0)&(b|0)==0;p=p+1|0;h=b?h+-9|0:h;k=b?p&127:k}while((p|0)!=(l|0));if(e){c[H+(l<<2)>>2]=e;l=l+1|0}}else{k=0;l=0}e=0;h=9-u+h|0}i:while(1){v=(h|0)<18;w=(h|0)==18;x=H+(k<<2)|0;do{if(!v){if(!w)break i;if((c[x>>2]|0)>>>0>=9007199){h=18;break i}}n=0;o=l+127|0;while(1){u=o&127;p=H+(u<<2)|0;o=mw(c[p>>2]|0,0,29)|0;o=jw(o|0,D|0,n|0,0)|0;n=D;if(n>>>0>0|(n|0)==0&o>>>0>1e9){b=uw(o|0,n|0,1e9,0)|0;o=vw(o|0,n|0,1e9,0)|0;n=b}else n=0;c[p>>2]=o;b=(u|0)==(k|0);l=(u|0)!=(l+127&127|0)|b?l:(o|0)==0?u:l;if(b)break;else o=u+-1|0}e=e+-29|0}while((n|0)==0);k=k+127&127;if((k|0)==(l|0)){b=l+127&127;l=H+((l+126&127)<<2)|0;c[l>>2]=c[l>>2]|c[H+(b<<2)>>2];l=b}c[H+(k<<2)>>2]=n;h=h+9|0}j:while(1){y=l+1&127;x=H+((l+127&127)<<2)|0;while(1){v=(h|0)==18;w=(h|0)>27?9:1;u=v^1;while(1){o=k&127;p=(o|0)==(l|0);do if(!p){n=c[H+(o<<2)>>2]|0;if(n>>>0<9007199){A=219;break}if(n>>>0>9007199)break;n=k+1&127;if((n|0)==(l|0)){A=219;break}n=c[H+(n<<2)>>2]|0;if(n>>>0<254740991){A=219;break}if(!(n>>>0>254740991|u)){h=o;break j}}else A=219;while(0);if((A|0)==219?(A=0,v):0){A=220;break j}e=e+w|0;if((k|0)==(l|0))k=l;else break}u=(1<>>w;o=k;n=0;p=k;while(1){E=H+(p<<2)|0;b=c[E>>2]|0;k=(b>>>w)+n|0;c[E>>2]=k;n=$(b&u,v)|0;k=(p|0)==(o|0)&(k|0)==0;p=p+1&127;h=k?h+-9|0:h;k=k?p:o;if((p|0)==(l|0))break;else o=k}if(!n)continue;if((y|0)!=(k|0))break;c[x>>2]=c[x>>2]|1}c[H+(l<<2)>>2]=n;l=y}if((A|0)==220)if(p){c[H+(y+-1<<2)>>2]=0;h=l;l=y}else h=o;g=+((c[H+(h<<2)>>2]|0)>>>0);h=k+1&127;if((h|0)==(l|0)){l=k+2&127;c[H+(l+-1<<2)>>2]=0}r=+(I|0);j=r*(g*1.0e9+ +((c[H+(h<<2)>>2]|0)>>>0));v=e+53|0;p=v-J|0;u=(p|0)<(K|0);h=u&1;o=u?((p|0)<0?0:p):K;if((o|0)<53){M=+sk(+xk(1.0,105-o|0),j);m=+uk(j,+xk(1.0,53-o|0));q=M;g=m;m=M+(j-m)}else{q=0.0;g=0.0;m=j}n=k+2&127;do if((n|0)==(l|0))j=g;else{n=c[H+(n<<2)>>2]|0;do if(n>>>0>=5e8){if(n>>>0>5e8){g=r*.75+g;break}if((k+3&127|0)==(l|0)){g=r*.5+g;break}else{g=r*.75+g;break}}else{if((n|0)==0?(k+3&127|0)==(l|0):0)break;g=r*.25+g}while(0);if((53-o|0)<=1){j=g;break}if(+uk(g,1.0)!=0.0){j=g;break}j=g+1.0}while(0);g=m+j-q;do if((v&2147483647|0)>(-2-F|0)){if(+O(+g)>=9007199254740992.0){h=u&(o|0)==(p|0)?0:h;e=e+1|0;g=g*.5}if((e+50|0)<=(G|0)?!(j!=0.0&(h|0)!=0):0)break;c[(ck()|0)>>2]=34}while(0);g=+yk(g,e)}while(0);break a}default:{if(c[C>>2]|0)c[E>>2]=(c[E>>2]|0)+-1;c[(ck()|0)>>2]=22;gk(b,0);g=0.0;break a}}}}while(0);if((A|0)==23){h=(c[C>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[E>>2]=(c[E>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(I|0)*t}while(0);i=L;return +g}function fk(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(ck()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0}while((ak(i)|0)!=0);b:do switch(i|0){case 43:case 45:{j=((i|0)==45)<<31>>31;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0;p=j;break b}else{i=hk(b)|0;p=j;break b}}default:p=0}while(0);j=(e|0)==0;do if((e&-17|0)==0&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=hk(b)|0;if((d[53879+(i+1)>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){gk(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[53879+(i+1)>>0]|0)>>>0>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;gk(b,0);c[(ck()|0)>>2]=22;h=0;g=0;break a}}while(0);if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;while(1){j=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=hk(b)|0;e=i+-48|0;if(!(e>>>0<10&j>>>0<429496729)){e=j;break}else i=j}j=0}else{e=0;j=0}f=i+-48|0;if(f>>>0<10){while(1){k=tw(e|0,j|0,10,0)|0;l=D;m=((f|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&k>>>0>~f>>>0){k=e;break}e=jw(k|0,l|0,f|0,m|0)|0;j=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;f=i+-48|0;if(!(f>>>0<10&(j>>>0<429496729|(j|0)==429496729&e>>>0<2576980378))){k=e;break}}if(f>>>0>9){i=k;e=p}else{e=10;n=72}}else{i=e;e=p}}else n=46;c:do if((n|0)==46){if(!(e+-1&e)){n=a[54136+((e*23|0)>>>5&7)>>0]|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(f>>>0>>0){i=0;while(1){k=f|i<>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(!(k>>>0<134217728&f>>>0>>0))break;else i=k}f=0}else{f=0;k=0}l=kw(-1,-1,n|0)|0;m=D;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break}else i=f;while(1){k=mw(k|0,i|0,n|0)|0;f=D;k=j&255|k;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break c}else i=f}}j=a[53879+(i+1)>>0]|0;f=j&255;if(f>>>0>>0){i=0;while(1){k=f+($(i,e)|0)|0;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(!(k>>>0<119304647&f>>>0>>0))break;else i=k}f=0}else{k=0;f=0}if((j&255)>>>0>>0){n=uw(-1,-1,e|0,0)|0;o=D;m=f;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&k>>>0>n>>>0){j=m;n=72;break c}f=tw(k|0,m|0,e|0,0)|0;l=D;j=j&255;if(l>>>0>4294967295|(l|0)==-1&f>>>0>~j>>>0){j=m;n=72;break c}k=jw(j|0,0,f|0,l|0)|0;f=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;if((j&255)>>>0>=e>>>0){j=f;n=72;break}else m=f}}else{j=f;n=72}}while(0);if((n|0)==72)if((d[53879+(i+1)>>0]|0)>>>0>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0}while((d[53879+(i+1)>>0]|0)>>>0>>0);c[(ck()|0)>>2]=34;j=h;i=g;e=(g&1|0)==0&0==0?p:0}else{i=k;e=p}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(j>>>0>>0|(j|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(e|0)!=0)){c[(ck()|0)>>2]=34;g=jw(g|0,h|0,-1,-1)|0;h=D;break}if(j>>>0>h>>>0|(j|0)==(h|0)&i>>>0>g>>>0){c[(ck()|0)>>2]=34;break}}g=((e|0)<0)<<31>>31;g=hw(i^e|0,j^g|0,e|0,g|0)|0;h=D}while(0);D=h;return g|0}function gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+4>>2]|0;e=c[a+8>>2]|0;f=e-d|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=d+b;else c[a+100>>2]=e;return}function hk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=Uk(b)|0;if((e|0)>=0){h=c[f>>2]|0;f=b+8|0;if(h){g=c[f>>2]|0;i=c[b+4>>2]|0;f=g;h=h-(c[b+108>>2]|0)+-1|0;if((f-i|0)>(h|0))c[b+100>>2]=i+h;else j=9}else{g=c[f>>2]|0;f=g;j=9}if((j|0)==9)c[b+100>>2]=f;f=c[b+4>>2]|0;if(g){b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function ik(a){a=a|0;if(a>>>0>4294963200){c[(ck()|0)>>2]=0-a;a=-1}return a|0}function jk(a){a=a|0;return 0}function kk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function lk(a,b){a=a|0;b=b|0;return -1|0}function mk(a){a=a|0;Gl(a);return}function nk(a,b){a=a|0;b=b|0;return (a+-48|0)>>>0<10|0}function ok(a,b){a=a|0;b=b|0;return bk(a)|0}function pk(b,c,d){b=b|0;c=c|0;d=d|0;if(((a[c>>0]|0)!=0?(ll(c,58885)|0)!=0:0)?(ll(c,54145)|0)!=0:0)d=0;else if(!d)d=Hl(1,4)|0;return d|0}function qk(a){a=a|0;var b=0,d=0;b=(bb()|0)+176|0;d=c[b>>2]|0;if(a)c[b>>2]=a;return d|0}function rk(a,b){a=+a;b=+b;var d=0,e=0;h[k>>3]=a;e=c[k>>2]|0;d=c[k+4>>2]|0;h[k>>3]=b;d=c[k+4>>2]&-2147483648|d&2147483647;c[k>>2]=e;c[k+4>>2]=d;return +(+h[k>>3])}function sk(a,b){a=+a;b=+b;return +(+rk(a,b))}function tk(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;h[k>>3]=a;d=c[k>>2]|0;m=c[k+4>>2]|0;h[k>>3]=b;n=c[k>>2]|0;o=c[k+4>>2]|0;e=kw(d|0,m|0,52)|0;e=e&2047;j=kw(n|0,o|0,52)|0;j=j&2047;p=m&-2147483648;i=mw(n|0,o|0,1)|0;l=D;a:do if(!((i|0)==0&(l|0)==0)?(g=o&2147483647,!(g>>>0>2146435072|(g|0)==2146435072&n>>>0>0|(e|0)==2047)):0){f=mw(d|0,m|0,1)|0;g=D;if(!(g>>>0>l>>>0|(g|0)==(l|0)&f>>>0>i>>>0))return +((f|0)==(i|0)&(g|0)==(l|0)?a*0.0:a);if(!e){e=mw(d|0,m|0,12)|0;f=D;if((f|0)>-1|(f|0)==-1&e>>>0>4294967295){g=e;e=0;do{e=e+-1|0;g=mw(g|0,f|0,1)|0;f=D}while((f|0)>-1|(f|0)==-1&g>>>0>4294967295)}else e=0;d=mw(d|0,m|0,1-e|0)|0;f=D}else f=m&1048575|1048576;if(!j){g=mw(n|0,o|0,12)|0;i=D;if((i|0)>-1|(i|0)==-1&g>>>0>4294967295){j=0;do{j=j+-1|0;g=mw(g|0,i|0,1)|0;i=D}while((i|0)>-1|(i|0)==-1&g>>>0>4294967295)}else j=0;n=mw(n|0,o|0,1-j|0)|0;m=D}else m=o&1048575|1048576;l=hw(d|0,f|0,n|0,m|0)|0;i=D;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;b:do if((e|0)>(j|0)){while(1){if(g)if((d|0)==(n|0)&(f|0)==(m|0))break;else{d=l;f=i}d=mw(d|0,f|0,1)|0;f=D;e=e+-1|0;l=hw(d|0,f|0,n|0,m|0)|0;i=D;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;if((e|0)<=(j|0))break b}b=a*0.0;break a}while(0);if(g)if((d|0)==(n|0)&(f|0)==(m|0)){b=a*0.0;break}else{f=i;d=l}if(f>>>0<1048576|(f|0)==1048576&d>>>0<0)do{d=mw(d|0,f|0,1)|0;f=D;e=e+-1|0}while(f>>>0<1048576|(f|0)==1048576&d>>>0<0);if((e|0)>0){o=jw(d|0,f|0,0,-1048576)|0;d=D;e=mw(e|0,0,52)|0;d=d|D;e=o|e}else{e=kw(d|0,f|0,1-e|0)|0;d=D}c[k>>2]=e;c[k+4>>2]=d|p;b=+h[k>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function uk(a,b){a=+a;b=+b;return +(+tk(a,b))}function vk(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=kw(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+vk(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function wk(a,b){a=+a;b=b|0;return +(+vk(a,b))}function xk(a,b){a=+a;b=b|0;var d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){d=b+-2046|0;d=(d|0)>1023?1023:d;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){d=b+2044|0;d=(d|0)<-1022?-1022:d;a=a*2.2250738585072014e-308}}else d=b;d=mw(d+1023|0,0,52)|0;b=D;c[k>>2]=d;c[k+4>>2]=b;return +(a*+h[k>>3])}function yk(a,b){a=+a;b=b|0;return +(+xk(a,b))}function zk(a,b,c){a=a|0;b=b|0;c=c|0;return Ak(0,a,b,(c|0)!=0?c:37344)|0}function Ak(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l;j=(f|0)==0?37348:f;f=c[j>>2]|0;a:do if(!d)if(!f)f=0;else k=15;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;g=f&255;if(f<<24>>24>-1){c[h>>2]=g;f=f<<24>>24!=0&1;break}f=g+-194|0;if(f>>>0>50){k=15;break}f=c[37076+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;k=9}}else{g=e;k=9}b:do if((k|0)==9){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){k=15;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){k=15;break a}}c[j>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[j>>2]=f;f=-2}}while(0);if((k|0)==15){c[j>>2]=0;c[(ck()|0)>>2]=84;f=-1}i=l;return f|0}function Bk(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0;return a&1|0}function Ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+1040|0;l=o+8|0;n=o;k=c[b>>2]|0;c[n>>2]=k;m=(a|0)!=0;e=m?e:256;a=m?a:l;g=k;a:do if((e|0)!=0&(k|0)!=0){j=e;k=g;e=0;while(1){g=d>>>2;h=g>>>0>=j>>>0;if(!(d>>>0>131|h)){g=k;break a}g=h?j:g;d=d-g|0;g=Dk(a,n,g,f)|0;if((g|0)==-1){e=d;break}p=(a|0)==(l|0);k=p?0:g;h=j-k|0;a=p?a:a+(g<<2)|0;e=g+e|0;g=c[n>>2]|0;if((j|0)!=(k|0)&(g|0)!=0){j=h;k=g}else{j=h;break a}}d=e;j=0;g=c[n>>2]|0;e=-1}else{j=e;e=0}while(0);b:do if((g|0)!=0?(j|0)!=0&(d|0)!=0:0){h=g;g=a;while(1){a=Ak(g,h,d,f)|0;if((a+2|0)>>>0<3)break;h=(c[n>>2]|0)+a|0;c[n>>2]=h;j=j+-1|0;e=e+1|0;if(!((j|0)!=0&(d|0)!=(a|0)))break b;else{d=d-a|0;g=g+4|0}}switch(a|0){case -1:{e=-1;break b}case 0:{c[n>>2]=0;break b}default:{c[f>>2]=0;break b}}}while(0);if(m)c[b>>2]=c[n>>2];i=o;return e|0}function Dk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){g=f;j=h;m=16}else{c[g>>2]=0;l=b;g=f;k=i;m=37}else if(!b){g=f;m=7}else{i=b;g=f;m=6}a:while(1)if((m|0)==6){if(!g){m=26;break}else b=i;while(1){i=a[h>>0]|0;do if(((i&255)+-1|0)>>>0<127?g>>>0>4&(h&3|0)==0:0){j=h;while(1){h=c[j>>2]|0;if((h+-16843009|h)&-2139062144){i=h;h=j;m=32;break}c[b>>2]=h&255;c[b+4>>2]=d[j+1>>0];c[b+8>>2]=d[j+2>>0];h=j+4|0;i=b+16|0;c[b+12>>2]=d[j+3>>0];g=g+-4|0;if(g>>>0>4){b=i;j=h}else{m=31;break}}if((m|0)==31){b=i;i=a[h>>0]|0;break}else if((m|0)==32){i=i&255;break}}while(0);i=i&255;if((i+-1|0)>>>0>=127)break;h=h+1|0;c[b>>2]=i;g=g+-1|0;if(!g){m=26;break a}else b=b+4|0}i=i+-194|0;if(i>>>0>50){m=48;break}l=b;k=c[37076+(i<<2)>>2]|0;h=h+1|0;m=37;continue}else if((m|0)==7){i=a[h>>0]|0;if(((i&255)+-1|0)>>>0<127?(h&3|0)==0:0){i=c[h>>2]|0;if(!((i+-16843009|i)&-2139062144))do{h=h+4|0;g=g+-4|0;i=c[h>>2]|0}while(((i+-16843009|i)&-2139062144|0)==0);i=i&255}i=i&255;if((i+-1|0)>>>0<127){g=g+-1|0;h=h+1|0;m=7;continue}i=i+-194|0;if(i>>>0>50){m=48;break}i=c[37076+(i<<2)>>2]|0;j=h+1|0;m=16;continue}else if((m|0)==16){m=(d[j>>0]|0)>>>3;if((m+-16|m+(i>>26))>>>0>7){m=17;break}h=j+1|0;if(i&33554432){if((a[h>>0]&-64)<<24>>24!=-128){m=20;break}h=j+2|0;if(i&524288){if((a[h>>0]&-64)<<24>>24!=-128){m=23;break}h=j+3|0}}g=g+-1|0;m=7;continue}else if((m|0)==37){i=d[h>>0]|0;m=i>>>3;if((m+-16|m+(k>>26))>>>0>7){m=38;break}j=h+1|0;b=i+-128|k<<6;if((b|0)<0){i=d[j>>0]|0;if((i&192|0)!=128){m=41;break}j=h+2|0;b=i+-128|b<<6;if((b|0)<0){i=d[j>>0]|0;if((i&192|0)!=128){m=44;break}b=i+-128|b<<6;h=h+3|0}else h=j}else h=j;c[l>>2]=b;i=l+4|0;g=g+-1|0;m=6;continue}if((m|0)==17){h=j+-1|0;m=47}else if((m|0)==20){h=j+-1|0;m=47}else if((m|0)==23){h=j+-1|0;m=47}else if((m|0)==26)c[e>>2]=h;else if((m|0)==38){b=l;i=k;h=h+-1|0;m=47}else if((m|0)==41){g=l;f=h+-1|0;m=52}else if((m|0)==44){g=l;f=h+-1|0;m=52}if((m|0)==47)if(!i)m=48;else{g=b;f=h;m=52}if((m|0)==48)if(!(a[h>>0]|0)){if(b){c[b>>2]=0;c[e>>2]=0}f=f-g|0}else{g=b;f=h;m=52}if((m|0)==52){c[(ck()|0)>>2]=84;if(!g)f=-1;else{c[e>>2]=f;f=-1}}return f|0}function Ek(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k;a:do if(!e)g=0;else{do if(f){j=(b|0)==0?g:b;g=a[e>>0]|0;b=g&255;if(g<<24>>24>-1){c[j>>2]=b;g=g<<24>>24!=0&1;break a}g=b+-194|0;if(g>>>0<=50){b=e+1|0;h=c[37076+(g<<2)>>2]|0;if(f>>>0<4?(h&-2147483648>>>((f*6|0)+-6|0)|0)!=0:0)break;g=d[b>>0]|0;f=g>>>3;if((f+-16|f+(h>>26))>>>0<=7){g=g+-128|h<<6;if((g|0)>=0){c[j>>2]=g;g=2;break a}b=d[e+2>>0]|0;if((b&192|0)==128){b=b+-128|g<<6;if((b|0)>=0){c[j>>2]=b;g=3;break a}g=d[e+3>>0]|0;if((g&192|0)==128){c[j>>2]=g+-128|b<<6;g=4;break a}}}}}while(0);c[(ck()|0)>>2]=84;g=-1}while(0);i=k;return g|0}function Fk(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(ck()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Gk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+272|0;j=m+8|0;l=m;h=c[b>>2]|0;c[l>>2]=h;k=(a|0)!=0;f=k?e:256;e=k?a:j;a=h;a:do if((f|0)!=0&(h|0)!=0){h=f;g=a;f=0;while(1){a=d>>>0>=h>>>0;if(!(a|d>>>0>32)){a=g;break a}a=a?h:d;d=d-a|0;a=Hk(e,l,a,0)|0;if((a|0)==-1){f=d;break}o=(e|0)==(j|0);n=o?0:a;g=h-n|0;e=o?e:e+a|0;f=a+f|0;a=c[l>>2]|0;if((h|0)!=(n|0)&(a|0)!=0){h=g;g=a}else{h=g;break a}}d=f;h=0;a=c[l>>2]|0;f=-1}else{h=f;f=0}while(0);b:do if((a|0)!=0?(h|0)!=0&(d|0)!=0:0){g=a;a=e;while(1){e=Fk(a,c[g>>2]|0,0)|0;if((e+1|0)>>>0<2)break;g=(c[l>>2]|0)+4|0;c[l>>2]=g;d=d+-1|0;f=f+1|0;if(!((h|0)!=(e|0)&(d|0)!=0))break b;else{h=h-e|0;a=a+e|0}}if(!e)c[l>>2]=0;else f=-1}while(0);if(k)c[b>>2]=c[l>>2];i=m;return f|0}function Hk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;a:do if(!b){b=c[d>>2]|0;f=c[b>>2]|0;if(!f)e=0;else{e=0;do{if(f>>>0>127){f=Fk(j,f,0)|0;if((f|0)==-1){e=-1;break a}}else f=1;e=f+e|0;b=b+4|0;f=c[b>>2]|0}while((f|0)!=0)}}else{b:do if(e>>>0>3){f=e;g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=Fk(b,h,0)|0;if((h|0)==-1){e=-1;break a}b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(f>>>0<=3)break b}a[b>>0]=0;c[d>>2]=0;e=e-f|0;break a}else f=e;while(0);if(f){g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=19;break}h=Fk(j,h,0)|0;if((h|0)==-1){e=-1;break a}if(f>>>0>>0){g=22;break}Fk(b,c[g>>2]|0,0)|0;b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(!f)break a}if((g|0)==19){a[b>>0]=0;c[d>>2]=0;e=e-f|0;break}else if((g|0)==22){e=e-f|0;break}}}while(0);i=k;return e|0}function Ik(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Fk(a,b,0)|0;return a|0}function Jk(a){a=a|0;return 0}function Kk(a){a=a|0;return}function Lk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;k=e&255;a[l>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Tk(b)|0)){h=c[g>>2]|0;j=4}else f=-1;else j=4;do if((j|0)==4){g=b+20|0;j=c[g>>2]|0;if(j>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[g>>2]=j+1;a[j>>0]=k;break}if((Gb[c[b+36>>2]&63](b,l,1)|0)==1)f=d[l>>0]|0;else f=-1}while(0);i=m;return f|0}function Mk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=ik(nb(6,d|0)|0)|0;i=b;return a|0}function Nk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[9258]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=ik(vb(145,h|0)|0)|0}else{ob(185,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=ik(vb(145,g|0)|0)|0;gb(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){h=c[k>>2]|0;g=b+4|0;c[g>>2]=h;c[b+8>>2]=h+(f-j);if(!(c[l>>2]|0))f=e;else{c[g>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Ok(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((ik(ub(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[9258]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=ik(wb(146,n|0)|0)|0}else{ob(186,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=ik(wb(146,m|0)|0)|0;gb(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=8;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,(eb(54,f|0)|0)!=0):0)a[b+75>>0]=-1;f=Pk(b,d,e)|0;i=g;return f|0}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=jl(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;lw(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Sk(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Gb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Tk(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Uk(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;if((c[a+8>>2]|0)==0?(Sk(a)|0)!=0:0)b=-1;else if((Gb[c[a+32>>2]&63](a,b,1)|0)==1)b=d[b>>0]|0;else b=-1;i=e;return b|0}function Vk(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=wl(a)|0;break}d=(Jk(a)|0)==0;b=wl(a)|0;if(!d)Kk(a)}else{if(!(c[9323]|0))b=0;else b=Vk(c[9323]|0)|0;Ea(37060);a=c[9264]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Jk(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=wl(a)|0|b;if(d)Kk(a);a=c[a+56>>2]|0}while((a|0)!=0);fb(37060)}while(0);return b|0}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(Jk(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(f=d+20|0,g=c[f>>2]|0,g>>>0<(c[d+16>>2]|0)>>>0):0){c[f>>2]=g+1;a[g>>0]=b;e=b&255}else e=Lk(d,b)|0;Kk(d)}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(h=d+20|0,e=c[h>>2]|0,e>>>0<(c[d+16>>2]|0)>>>0):0){c[h>>2]=e+1;a[e>>0]=b;e=b&255;break}e=Lk(d,b)|0}while(0);return e|0}function Xk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Tk(e)|0)){g=c[f>>2]|0;h=4}else f=0;else h=4;a:do if((h|0)==4){i=e+20|0;h=c[i>>2]|0;if((g-h|0)>>>0>>0){f=Gb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((Gb[c[e+36>>2]&63](e,b,f)|0)>>>0>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);lw(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function Yk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=$(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Jk(e)|0)==0;a=Xk(a,f,e)|0;if(!g)Kk(e)}else a=Xk(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Zk(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(Jk(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=Uk(a)|0}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=Uk(a)|0;break}}while(0);return b|0}function _k(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=el(a,b,d,g)|0;i=f;return e|0}function $k(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=fl(a,b,f)|0;i=e;return d|0}function al(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;do if((b|0)!=-1){if((c[d+76>>2]|0)>-1)g=Jk(d)|0;else g=0;if(!((c[d+8>>2]|0)==0?(Sk(d)|0)!=0:0))h=6;if((h|0)==6?(e=d+4|0,f=c[e>>2]|0,f>>>0>((c[d+44>>2]|0)+-8|0)>>>0):0){h=f+-1|0;c[e>>2]=h;a[h>>0]=b;c[d>>2]=c[d>>2]&-17;if(!g)break;Kk(d);break}if(g){Kk(d);b=-1}else b=-1}else b=-1;while(0);return b|0}function bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j;f=Fl(240)|0;do if(f){c[e>>2]=c[d>>2];e=el(f,240,b,e)|0;if(e>>>0<240){b=Il(f,e+1|0)|0;c[a>>2]=(b|0)!=0?b:f;break}Gl(f);if((e|0)>=0?(h=e+1|0,g=Fl(h)|0,c[a>>2]=g,(g|0)!=0):0)e=el(g,h,b,d)|0;else e=-1}else e=-1;while(0);i=j;return e|0}function cl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+80|0;r=s+96|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((xl(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=Jk(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=xl(b,d,o,q,r)|0;if(h){Gb[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=xl(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m)Kk(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function dl(e,f,j){e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=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,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;P=i;i=i+304|0;H=P+16|0;J=P+8|0;I=P+33|0;K=P;y=P+32|0;if((c[e+76>>2]|0)>-1)O=Jk(e)|0;else O=0;k=a[f>>0]|0;a:do if(k<<24>>24){L=e+4|0;M=e+100|0;G=e+108|0;z=e+8|0;A=I+10|0;B=I+33|0;C=J+4|0;E=I+46|0;F=I+94|0;m=k;k=0;n=f;s=0;l=0;f=0;b:while(1){c:do if(!(ak(m&255)|0)){m=(a[n>>0]|0)==37;d:do if(m){q=n+1|0;o=a[q>>0]|0;e:do switch(o<<24>>24){case 37:break d;case 42:{x=0;o=n+2|0;break}default:{o=(o&255)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[H>>2]=c[j>>2];while(1){x=(c[H>>2]|0)+(4-1)&~(4-1);m=c[x>>2]|0;c[H>>2]=x+4;if(o>>>0>1)o=o+-1|0;else break}x=m;o=n+3|0;break e}o=(c[j>>2]|0)+(4-1)&~(4-1);x=c[o>>2]|0;c[j>>2]=o+4;o=q}}while(0);m=a[o>>0]|0;n=m&255;if((n+-48|0)>>>0<10){m=0;while(1){q=(m*10|0)+-48+n|0;o=o+1|0;m=a[o>>0]|0;n=m&255;if((n+-48|0)>>>0>=10)break;else m=q}}else q=0;if(m<<24>>24==109){o=o+1|0;r=a[o>>0]|0;m=(x|0)!=0&1;l=0;f=0}else{r=m;m=0}n=o+1|0;switch(r&255|0){case 104:{w=(a[n>>0]|0)==104;n=w?o+2|0:n;o=w?-2:-1;break}case 108:{w=(a[n>>0]|0)==108;n=w?o+2|0:n;o=w?3:1;break}case 106:{o=3;break}case 116:case 122:{o=1;break}case 76:{o=2;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:{n=o;o=0;break}default:{N=152;break b}}r=d[n>>0]|0;t=(r&47|0)==3;r=t?r|32:r;t=t?1:o;switch(r|0){case 99:{w=s;v=(q|0)<1?1:q;break}case 91:{w=s;v=q;break}case 110:{if(!x){o=s;break c}switch(t|0){case -2:{a[x>>0]=s;o=s;break c}case -1:{b[x>>1]=s;o=s;break c}case 0:{c[x>>2]=s;o=s;break c}case 1:{c[x>>2]=s;o=s;break c}case 3:{o=x;c[o>>2]=s;c[o+4>>2]=((s|0)<0)<<31>>31;o=s;break c}default:{o=s;break c}}}default:{gk(e,0);do{o=c[L>>2]|0;if(o>>>0<(c[M>>2]|0)>>>0){c[L>>2]=o+1;o=d[o>>0]|0}else o=hk(e)|0}while((ak(o)|0)!=0);o=c[L>>2]|0;if(c[M>>2]|0){o=o+-1|0;c[L>>2]=o}w=(c[G>>2]|0)+s+o-(c[z>>2]|0)|0;v=q}}gk(e,v);o=c[L>>2]|0;q=c[M>>2]|0;if(o>>>0>>0)c[L>>2]=o+1;else{if((hk(e)|0)<0){N=152;break b}q=c[M>>2]|0}if(q)c[L>>2]=(c[L>>2]|0)+-1;f:do switch(r|0){case 91:case 99:case 115:{u=(r|0)==99;g:do if((r&239|0)==99){iw(I|0,-1,257)|0;a[I>>0]=0;if((r|0)==115){a[B>>0]=0;a[A>>0]=0;a[A+1>>0]=0;a[A+2>>0]=0;a[A+3>>0]=0;a[A+4>>0]=0}}else{Q=n+1|0;s=(a[Q>>0]|0)==94;o=s&1;r=s?Q:n;n=s?n+2|0:Q;iw(I|0,s&1|0,257)|0;a[I>>0]=0;switch(a[n>>0]|0){case 45:{s=(o^1)&255;a[E>>0]=s;n=r+2|0;break}case 93:{s=(o^1)&255;a[F>>0]=s;n=r+2|0;break}default:s=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{N=152;break b}case 93:break g;case 45:{r=n+1|0;o=a[r>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[I+n>>0]=s;o=a[r>>0]|0}while((n|0)<(o&255|0));n=r}else n=r;break}default:{}}while(0);a[I+((o&255)+1)>>0]=s;n=n+1|0}}while(0);r=u?v+1|0:31;s=(t|0)==1;t=(m|0)!=0;i:do if(s){if(t){f=Fl(r<<2)|0;if(!f){l=0;N=152;break b}}else f=x;c[J>>2]=0;c[C>>2]=0;l=0;j:while(1){q=(f|0)==0;do{k:while(1){o=c[L>>2]|0;if(o>>>0<(c[M>>2]|0)>>>0){c[L>>2]=o+1;o=d[o>>0]|0}else o=hk(e)|0;if(!(a[I+(o+1)>>0]|0))break j;a[y>>0]=o;switch(Ak(K,y,1,J)|0){case -1:{l=0;N=152;break b}case -2:break;default:break k}}if(!q){c[f+(l<<2)>>2]=c[K>>2];l=l+1|0}}while(!(t&(l|0)==(r|0)));l=r<<1|1;o=Il(f,l<<2)|0;if(!o){l=0;N=152;break b}Q=r;r=l;f=o;l=Q}if(!(Bk(J)|0)){l=0;N=152;break b}else{q=l;l=0}}else{if(t){l=Fl(r)|0;if(!l){l=0;f=0;N=152;break b}else o=0;while(1){do{f=c[L>>2]|0;if(f>>>0<(c[M>>2]|0)>>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=o;f=0;break i}a[l+o>>0]=f;o=o+1|0}while((o|0)!=(r|0));f=r<<1|1;o=Il(l,f)|0;if(!o){f=0;N=152;break b}else{Q=r;r=f;l=o;o=Q}}}if(!x){l=q;while(1){f=c[L>>2]|0;if(f>>>0>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=0;l=0;f=0;break i}l=c[M>>2]|0}}else{l=0;while(1){f=c[L>>2]|0;if(f>>>0>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=l;l=x;f=0;break i}a[x+l>>0]=f;q=c[M>>2]|0;l=l+1|0}}}while(0);o=c[L>>2]|0;if(c[M>>2]|0){o=o+-1|0;c[L>>2]=o}o=o-(c[z>>2]|0)+(c[G>>2]|0)|0;if(!o)break b;if(!((o|0)==(v|0)|u^1))break b;do if(t)if(s){c[x>>2]=f;break}else{c[x>>2]=l;break}while(0);if(!u){if(f)c[f+(q<<2)>>2]=0;if(!l){l=0;break f}a[l+q>>0]=0}break}case 120:case 88:case 112:{o=16;N=134;break}case 111:{o=8;N=134;break}case 117:case 100:{o=10;N=134;break}case 105:{o=0;N=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{p=+ek(e,t,0);if((c[G>>2]|0)==((c[z>>2]|0)-(c[L>>2]|0)|0))break b;if(x)switch(t|0){case 0:{g[x>>2]=p;break f}case 1:{h[x>>3]=p;break f}case 2:{h[x>>3]=p;break f}default:break f}break}default:{}}while(0);l:do if((N|0)==134){N=0;o=fk(e,o,0,-1,-1)|0;if((c[G>>2]|0)==((c[z>>2]|0)-(c[L>>2]|0)|0))break b;if((x|0)!=0&(r|0)==112){c[x>>2]=o;break}if(x)switch(t|0){case -2:{a[x>>0]=o;break l}case -1:{b[x>>1]=o;break l}case 0:{c[x>>2]=o;break l}case 1:{c[x>>2]=o;break l}case 3:{Q=x;c[Q>>2]=o;c[Q+4>>2]=D;break l}default:break l}}while(0);k=((x|0)!=0&1)+k|0;o=(c[G>>2]|0)+w+(c[L>>2]|0)-(c[z>>2]|0)|0;break c}while(0);n=n+(m&1)|0;gk(e,0);m=c[L>>2]|0;if(m>>>0<(c[M>>2]|0)>>>0){c[L>>2]=m+1;m=d[m>>0]|0}else m=hk(e)|0;if((m|0)!=(d[n>>0]|0)){N=21;break b}o=s+1|0}else{while(1){m=n+1|0;if(!(ak(d[m>>0]|0)|0))break;else n=m}gk(e,0);do{m=c[L>>2]|0;if(m>>>0<(c[M>>2]|0)>>>0){c[L>>2]=m+1;m=d[m>>0]|0}else m=hk(e)|0}while((ak(m)|0)!=0);m=c[L>>2]|0;if(c[M>>2]|0){m=m+-1|0;c[L>>2]=m}o=(c[G>>2]|0)+s+m-(c[z>>2]|0)|0}while(0);n=n+1|0;m=a[n>>0]|0;if(!(m<<24>>24))break a;else s=o}if((N|0)==21){if(c[M>>2]|0)c[L>>2]=(c[L>>2]|0)+-1;if((k|0)!=0|(m|0)>-1)break;else{k=0;N=153}}else if((N|0)==152)if(!k){k=m;N=153}if((N|0)==153){m=k;k=-1}if(m){Gl(l);Gl(f)}}else k=0;while(0);if(O)Kk(e);i=P;return k|0}function el(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=37352;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(ck()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=cl(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function fl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+112|0;e=g;f=e;h=f+112|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=29;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=dl(e,b,d)|0;i=g;return h|0}function gl(a,b,c){a=a|0;b=b|0;c=c|0;return +(+zl(a,b,2))}function hl(a,b,c){a=a|0;b=b|0;c=c|0;a=Al(a,b,c,-1,-1)|0;return a|0}function il(a,b,c){a=a|0;b=b|0;c=c|0;a=Al(a,b,c,0,-2147483648)|0;return a|0}function jl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=$(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return ((e|0)!=0?b:0)|0}function kl(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function ll(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>>0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c&255)-(d&255)|0}function ml(a,b){a=a|0;b=b|0;kl(a,b)|0;return a|0}function nl(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function ol(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function pl(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}return a|0}function rl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(d|0)==0;if(a-b>>2>>>0>>0){if(!e)do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0)}else if(!e){e=b;b=a;while(1){d=d+-1|0;c[b>>2]=c[e>>2];if(!d)break;else{e=e+4|0;b=b+4|0}}}return a|0}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d){e=a;while(1){d=d+-1|0;c[e>>2]=b;if(!d)break;else e=e+4|0}}return a|0}function tl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[j>>2]|0)!=0:0){c[i>>2]=(c[i>>2]|0)+-1;h=f}else h=f;break}default:h=0}if((e+-48|0)>>>0>9)if(!(c[j>>2]|0)){f=-2147483648;e=0}else{c[i>>2]=(c[i>>2]|0)+-1;f=-2147483648;e=0}else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10&(f|0)<214748364);b=((f|0)<0)<<31>>31;if((e+-48|0)>>>0<10){do{b=tw(f|0,b|0,10,0)|0;f=D;e=jw(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=jw(e|0,D|0,b|0,f|0)|0;b=D;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&f>>>0<2061584302));g=f}else g=f;if((e+-48|0)>>>0<10)do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10);if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;a=(h|0)!=0;e=hw(0,0,g|0,b|0)|0;f=a?D:b;e=a?e:g}D=f;return e|0}function ul(a){a=a|0;if(!(c[a+68>>2]|0))Kk(a);return}function vl(a){a=a|0;if(!(c[a+68>>2]|0))Kk(a);return}function wl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(Gb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0>>0)Gb[c[a+40>>2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0} + +// EMSCRIPTEN_END_FUNCS + var yb=[Uw,Qq,Uq,Or,Sr,Xr,Zr,xu,Iu,Uw,Uw,Uw,Uw,Uw,Uw,Uw];var zb=[Vw,ii,Yh,Mh,Ah,oh,ch,Sg,Bg,Mj,Lj,Ij,Vw,Vw,Vw,Vw];var Ab=[Ww,bs,hs,Ww];var Bb=[Xw,ei,fi,Uh,Vh,Ih,Jh,wh,xh,kh,lh,_g,$g,Og,Pg,xg,yg,kg,lg,_f,$f,Of,Pf,Cf,Df,qf,rf,ye,ze,le,me,tc,uc,Pd,Td,Qd,bo,eo,co,fo,kd,ld,Qi,md,dd,ed,Ic,Jc,Qc,Rc,Xc,Yc,nd,od,ud,vd,Bd,Cd,Id,Jd,je,ke,He,Ie,Oe,Pe,Ve,We,af,bf,Mg,Ng,Dm,qi,Ai,Bi,Ri,Si,fj,gj,mj,nj,rj,sj,uj,xj,vj,wj,yj,zj,Cn,Tl,Zl,nn,cm,im,Bm,Cm,on,Dn,Rn,Tn,Sn,Un,Xn,Zn,Yn,_n,ko,mo,lo,no,uo,vo,en,wo,xo,yo,Ao,Ks,Eo,Fo,Jo,Ko,Yo,Zo,qp,rp,Fp,Gp,Sp,Tp,pq,qq,Nq,Pq,Sq,Tq,Wq,Xq,fr,gr,qr,rr,Br,Cr,Mr,Nr,Vr,Wr,$r,as,fs,gs,ls,ms,qs,rs,ys,zs,at,bt,wu,tt,Vt,Wt,Xt,Yt,zo,Js,Ms,kt,Bt,Jt,Rt,St,Ti,Ii,$i,sc,pn,Wn,_d,Eg,Wj,ul,vl,Ml,mk,Pr,Rr,Ls,Gv,Nv,Ov,Pv,Qv,Rv,Sv,Im,Wm,Gl,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw];var Cb=[Yw,hi,Xh,Lh,zh,nh,bh,Rg,Ag,mg,ag,Qf,Ef,sf,Ae,ne,vc,qn,Ci,Fi,Ul,Yl,dm,hm,Fn,_q,$q,ar,br,dr,er,jr,kr,lr,mr,or,pr,ur,vr,wr,xr,zr,Ar,Fr,Gr,Hr,Ir,Kr,Lr,ps,us,bu,du,fu,cu,eu,gu,kc,Ui,Gi,Hi,Ji,kn,Cc,Ec,go,dn,Qm,Zd,re,jf,wf,If,Uf,eg,qg,Dg,Ug,eh,qh,Ch,Oh,_h,ki,yi,Zi,sm,qm,hn,oo,rm,Om,_m,Zm,av,bv,cv,dv,ev,fv,st,gv,hv,iv,jv,kv,lv,mv,nv,ov,pv,qv,rv,sv,tv,uv,vv,wv,xv,yv,zv,Av,Bv,Cv,Ev,Yv,Yw,Yw];var Db=[Zw,Lo,Mo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,_o,$o,ap,bp,cp,dp,ep,fp,gp,hp,ip,xp,zp,Kp,Mp,Vp,Wp,Xp,Zp,$p,sq,tq,uq,wq,yq,es,ks,cd,Uu,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw];var Eb=[_w,un,vn,hd,yn,ri,hj,oj,tj,Mk,Vl,Kn,Mn,Nn,Jn,_l,$l,em,xn,jm,km,qo,Up,iu,ku,mu,su,uu,ou,qu,rq,ju,lu,nu,tu,vu,pu,ru,Yq,Zq,cr,hr,ir,nr,sr,tr,yr,Dr,Er,Jr,xt,yt,At,Zt,$t,_t,au,ot,pt,rt,Ft,Gt,It,Nt,Ot,Qt,ui,bj,jn,Li,Vn,$n,$w,ax,bx,qk,pl,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w];var Fb=[cx,Qr,Yr,cx];var Gb=[dx,rn,wn,An,um,vm,Aj,Bl,Pk,Ok,Nk,Qk,Gn,Ln,Wl,Pn,fm,Do,Io,ns,ss,dt,ft,it,Ns,Us,Xs,_s,Dc,yl,Rm,pk,Zu,$u,Fk,Ek,zk,bl,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx];var Hb=[ex,ds,js,ex];var Ib=[fx,fd,Pj,Oj,Nj,Hn,sn,os,ts,fx,fx,fx,fx,fx,fx,fx];var Jb=[gx,wp,Cp,Jp,Op,gx,gx,gx];var Kb=[hx,Tr,_r,cs,is,hx,hx,hx];var Lb=[ix,gi,Wh,Kh,yh,mh,ah,Qg,zg,og,cg,Sf,Gf,uf,Ce,pe,xc,id,jd,On,Xl,am,Qn,zn,gm,lm,Bn,ct,et,gt,Ss,Vs,Ys,Vi,oc,qc,io,Is,jo,ok,nk,Km,Xm,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix];var Mb=[jx,Bo,Go,sp,tp,yp,Ep,Hp,Ip,Lp,Qp,jt,wt,zt,$s,nt,qt,Et,Ht,Mt,Pt,Gk,Ck,jx,jx,jx,jx,jx,jx,jx,jx,jx];var Nb=[kx,$v,_v,Zv];var Ob=[lx,lc,aj,Xo,Bs,Cs,Ds,Zj,$j,_j,lx,lx,lx,lx,lx,lx];var Pb=[mx,ng,bg,Rf,Ff,tf,Be,oe,wc,ht,Ps,Qs,Rs,Zs,ti,zi,Hu,Tu,Dk,kk,Ak,fw,ew,dw,cw,bw,aw,mx,mx,mx,mx,mx];var Qb=[nx,tm,si,ro,Wi,Gm,ox,Am,Mm,Ki,xm,to,Xu,Yu,_u,Um];var Rb=[px,qx,Tj,rx,Uj,sx,Sj,px];var Sb=[tx,bq,Aq,ut,vt,lt,mt,Ct,Dt,Kt,Lt,tx,tx,tx,tx,tx];var Tb=[ux,Ap,Dp,Np,Pp,ux,ux,ux];var Ub=[vx,Ud,Vd,Rd,Sd,gd,Kc,Lc,Sc,Tc,Zc,_c,pd,qd,wd,xd,Dd,Ed,Kd,Ld,Je,Ke,Qe,Re,Xe,Ye,cf,df,Cj,Dj,Fj,In,tn,Co,Ho,dc,zm,yc,zc,Ac,Bc,Fc,Gc,Hc,De,Ee,Fe,Ge,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx];return{_jpegls_encode:Yi,___cxa_can_catch:Qj,_free:Gl,_jpegls_decode:Xi,___cxa_is_pointer_type:Rj,_i64Add:jw,_memmove:nw,_i64Subtract:hw,_memset:iw,_malloc:Fl,_memcpy:lw,_bitshift64Lshr:kw,_bitshift64Shl:mw,__GLOBAL__I_000101:Nl,__GLOBAL__sub_I_jpegls_cpp:rc,__GLOBAL__sub_I_iostream_cpp:Ol,runPostSets:gw,stackAlloc:Vb,stackSave:Wb,stackRestore:Xb,establishStackSpace:Yb,setThrew:Zb,setTempRet0:ac,getTempRet0:bc,dynCall_iiiiiiii:xw,dynCall_viiiii:yw,dynCall_iiiiiid:zw,dynCall_vi:Aw,dynCall_vii:Bw,dynCall_iiiiiii:Cw,dynCall_ii:Dw,dynCall_iiiiiiiiiiii:Ew,dynCall_iiii:Fw,dynCall_viiiiiiiiiiiiiii:Gw,dynCall_viiiiii:Hw,dynCall_viiiiiii:Iw,dynCall_viiiiiiiiii:Jw,dynCall_iii:Kw,dynCall_iiiiii:Lw,dynCall_diii:Mw,dynCall_i:Nw,dynCall_iiiii:Ow,dynCall_viii:Pw,dynCall_v:Qw,dynCall_iiiiiiiii:Rw,dynCall_iiiiid:Sw,dynCall_viiii:Tw}}) + + + // EMSCRIPTEN_END_ASM + (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _jpegls_encode=Module["_jpegls_encode"]=asm["_jpegls_encode"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _free=Module["_free"]=asm["_free"];var _jpegls_decode=Module["_jpegls_decode"]=asm["_jpegls_decode"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _memmove=Module["_memmove"]=asm["_memmove"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _memset=Module["_memset"]=asm["_memset"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var __GLOBAL__sub_I_iostream_cpp=Module["__GLOBAL__sub_I_iostream_cpp"]=asm["__GLOBAL__sub_I_iostream_cpp"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var __GLOBAL__sub_I_jpegls_cpp=Module["__GLOBAL__sub_I_jpegls_cpp"]=asm["__GLOBAL__sub_I_jpegls_cpp"];var __GLOBAL__I_000101=Module["__GLOBAL__I_000101"]=asm["__GLOBAL__I_000101"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_iiiiiid=Module["dynCall_iiiiiid"]=asm["dynCall_iiiiiid"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiiiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiiid=Module["dynCall_iiiiid"]=asm["dynCall_iiiiid"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run() + + + + + + return Module; +}; + + +/*** EXPORTS FROM exports-loader ***/ +module.exports = CharLS; + +/***/ }), + +/***/ "../codecs/jpeg.js": +/*!*************************!*\ + !*** ../codecs/jpeg.js ***! + \*************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +// jshint ignore: start + +/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- / + /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */ +/* + Copyright 2011 notmasteryet + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +// - The JPEG specification can be found in the ITU CCITT Recommendation T.81 +// (www.w3.org/Graphics/JPEG/itu-t81.pdf) +// - The JFIF specification can be found in the JPEG File Interchange Format +// (www.w3.org/Graphics/JPEG/jfif3.pdf) +// - The Adobe Application-Specific JPEG markers in the Supporting the DCT Filters +// in PostScript Level 2, Technical Note #5116 +// (partners.adobe.com/public/developer/en/ps/sdk/5116.DCT_Filter.pdf) + +var ColorSpace = {Unkown: 0, Grayscale: 1, AdobeRGB: 2, RGB: 3, CYMK: 4}; +var JpegImage = (function jpegImage() { + "use strict"; + var dctZigZag = new Int32Array([ + 0, + 1, 8, + 16, 9, 2, + 3, 10, 17, 24, + 32, 25, 18, 11, 4, + 5, 12, 19, 26, 33, 40, + 48, 41, 34, 27, 20, 13, 6, + 7, 14, 21, 28, 35, 42, 49, 56, + 57, 50, 43, 36, 29, 22, 15, + 23, 30, 37, 44, 51, 58, + 59, 52, 45, 38, 31, + 39, 46, 53, 60, + 61, 54, 47, + 55, 62, + 63 + ]); + + var dctCos1 = 4017; // cos(pi/16) + var dctSin1 = 799; // sin(pi/16) + var dctCos3 = 3406; // cos(3*pi/16) + var dctSin3 = 2276; // sin(3*pi/16) + var dctCos6 = 1567; // cos(6*pi/16) + var dctSin6 = 3784; // sin(6*pi/16) + var dctSqrt2 = 5793; // sqrt(2) + var dctSqrt1d2 = 2896; // sqrt(2) / 2 + + function constructor() { + } + + function buildHuffmanTable(codeLengths, values) { + var k = 0, code = [], i, j, length = 16; + while (length > 0 && !codeLengths[length - 1]) + length--; + code.push({children: [], index: 0}); + var p = code[0], q; + for (i = 0; i < length; i++) { + for (j = 0; j < codeLengths[i]; j++) { + p = code.pop(); + p.children[p.index] = values[k]; + while (p.index > 0) { + p = code.pop(); + } + p.index++; + code.push(p); + while (code.length <= i) { + code.push(q = {children: [], index: 0}); + p.children[p.index] = q.children; + p = q; + } + k++; + } + if (i + 1 < length) { + // p here points to last code + code.push(q = {children: [], index: 0}); + p.children[p.index] = q.children; + p = q; + } + } + return code[0].children; + } + + function getBlockBufferOffset(component, row, col) { + return 64 * ((component.blocksPerLine + 1) * row + col); + } + + function decodeScan(data, offset, + frame, components, resetInterval, + spectralStart, spectralEnd, + successivePrev, successive) { + var precision = frame.precision; + var samplesPerLine = frame.samplesPerLine; + var scanLines = frame.scanLines; + var mcusPerLine = frame.mcusPerLine; + var progressive = frame.progressive; + var maxH = frame.maxH, maxV = frame.maxV; + + var startOffset = offset, bitsData = 0, bitsCount = 0; + + function readBit() { + if (bitsCount > 0) { + bitsCount--; + return (bitsData >> bitsCount) & 1; + } + bitsData = data[offset++]; + if (bitsData == 0xFF) { + var nextByte = data[offset++]; + if (nextByte) { + throw "unexpected marker: " + ((bitsData << 8) | nextByte).toString(16); + } + // unstuff 0 + } + bitsCount = 7; + return bitsData >>> 7; + } + + function decodeHuffman(tree) { + var node = tree; + var bit; + while ((bit = readBit()) !== null) { + node = node[bit]; + if (typeof node === 'number') + return node; + if (typeof node !== 'object') + throw "invalid huffman sequence"; + } + return null; + } + + function receive(length) { + var n = 0; + while (length > 0) { + var bit = readBit(); + if (bit === null) + return; + n = (n << 1) | bit; + length--; + } + return n; + } + + function receiveAndExtend(length) { + var n = receive(length); + if (n >= 1 << (length - 1)) + return n; + return n + (-1 << length) + 1; + } + + function decodeBaseline(component, offset) { + var t = decodeHuffman(component.huffmanTableDC); + var diff = t === 0 ? 0 : receiveAndExtend(t); + component.blockData[offset] = (component.pred += diff); + var k = 1; + while (k < 64) { + var rs = decodeHuffman(component.huffmanTableAC); + var s = rs & 15, r = rs >> 4; + if (s === 0) { + if (r < 15) + break; + k += 16; + continue; + } + k += r; + var z = dctZigZag[k]; + component.blockData[offset + z] = receiveAndExtend(s); + k++; + } + } + + function decodeDCFirst(component, offset) { + var t = decodeHuffman(component.huffmanTableDC); + var diff = t === 0 ? 0 : (receiveAndExtend(t) << successive); + component.blockData[offset] = (component.pred += diff); + } + + function decodeDCSuccessive(component, offset) { + component.blockData[offset] |= readBit() << successive; + } + + var eobrun = 0; + function decodeACFirst(component, offset) { + if (eobrun > 0) { + eobrun--; + return; + } + var k = spectralStart, e = spectralEnd; + while (k <= e) { + var rs = decodeHuffman(component.huffmanTableAC); + var s = rs & 15, r = rs >> 4; + if (s === 0) { + if (r < 15) { + eobrun = receive(r) + (1 << r) - 1; + break; + } + k += 16; + continue; + } + k += r; + var z = dctZigZag[k]; + component.blockData[offset + z] = receiveAndExtend(s) * (1 << successive); + k++; + } + } + + var successiveACState = 0, successiveACNextValue; + function decodeACSuccessive(component, offset) { + var k = spectralStart, e = spectralEnd, r = 0; + while (k <= e) { + var z = dctZigZag[k]; + switch (successiveACState) { + case 0: // initial state + var rs = decodeHuffman(component.huffmanTableAC); + var s = rs & 15; + r = rs >> 4; + if (s === 0) { + if (r < 15) { + eobrun = receive(r) + (1 << r); + successiveACState = 4; + } else { + r = 16; + successiveACState = 1; + } + } else { + if (s !== 1) + throw "invalid ACn encoding"; + successiveACNextValue = receiveAndExtend(s); + successiveACState = r ? 2 : 3; + } + continue; + case 1: // skipping r zero items + case 2: + if (component.blockData[offset + z]) { + component.blockData[offset + z] += (readBit() << successive); + } else { + r--; + if (r === 0) + successiveACState = successiveACState == 2 ? 3 : 0; + } + break; + case 3: // set value for a zero item + if (component.blockData[offset + z]) { + component.blockData[offset + z] += (readBit() << successive); + } else { + component.blockData[offset + z] = successiveACNextValue << successive; + successiveACState = 0; + } + break; + case 4: // eob + if (component.blockData[offset + z]) { + component.blockData[offset + z] += (readBit() << successive); + } + break; + } + k++; + } + if (successiveACState === 4) { + eobrun--; + if (eobrun === 0) + successiveACState = 0; + } + } + + function decodeMcu(component, decode, mcu, row, col) { + var mcuRow = (mcu / mcusPerLine) | 0; + var mcuCol = mcu % mcusPerLine; + var blockRow = mcuRow * component.v + row; + var blockCol = mcuCol * component.h + col; + var offset = getBlockBufferOffset(component, blockRow, blockCol); + decode(component, offset); + } + + function decodeBlock(component, decode, mcu) { + var blockRow = (mcu / component.blocksPerLine) | 0; + var blockCol = mcu % component.blocksPerLine; + var offset = getBlockBufferOffset(component, blockRow, blockCol); + decode(component, offset); + } + + var componentsLength = components.length; + var component, i, j, k, n; + var decodeFn; + if (progressive) { + if (spectralStart === 0) + decodeFn = successivePrev === 0 ? decodeDCFirst : decodeDCSuccessive; + else + decodeFn = successivePrev === 0 ? decodeACFirst : decodeACSuccessive; + } else { + decodeFn = decodeBaseline; + } + + var mcu = 0, marker; + var mcuExpected; + if (componentsLength == 1) { + mcuExpected = components[0].blocksPerLine * components[0].blocksPerColumn; + } else { + mcuExpected = mcusPerLine * frame.mcusPerColumn; + } + if (!resetInterval) { + resetInterval = mcuExpected; + } + + var h, v; + while (mcu < mcuExpected) { + // reset interval stuff + for (i = 0; i < componentsLength; i++) { + components[i].pred = 0; + } + eobrun = 0; + + if (componentsLength == 1) { + component = components[0]; + for (n = 0; n < resetInterval; n++) { + decodeBlock(component, decodeFn, mcu); + mcu++; + } + } else { + for (n = 0; n < resetInterval; n++) { + for (i = 0; i < componentsLength; i++) { + component = components[i]; + h = component.h; + v = component.v; + for (j = 0; j < v; j++) { + for (k = 0; k < h; k++) { + decodeMcu(component, decodeFn, mcu, j, k); + } + } + } + mcu++; + } + } + + // find marker + bitsCount = 0; + marker = (data[offset] << 8) | data[offset + 1]; + if (marker <= 0xFF00) { + throw "marker was not found"; + } + + if (marker >= 0xFFD0 && marker <= 0xFFD7) { // RSTx + offset += 2; + } else { + break; + } + } + + return offset - startOffset; + } + + // A port of poppler's IDCT method which in turn is taken from: + // Christoph Loeffler, Adriaan Ligtenberg, George S. Moschytz, + // "Practical Fast 1-D DCT Algorithms with 11 Multiplications", + // IEEE Intl. Conf. on Acoustics, Speech & Signal Processing, 1989, + // 988-991. + function quantizeAndInverse(component, blockBufferOffset, p) { + var qt = component.quantizationTable; + var v0, v1, v2, v3, v4, v5, v6, v7, t; + var i; + + // dequant + for (i = 0; i < 64; i++) { + p[i] = component.blockData[blockBufferOffset + i] * qt[i]; + } + + // inverse DCT on rows + for (i = 0; i < 8; ++i) { + var row = 8 * i; + + // check for all-zero AC coefficients + if (p[1 + row] === 0 && p[2 + row] === 0 && p[3 + row] === 0 && + p[4 + row] === 0 && p[5 + row] === 0 && p[6 + row] === 0 && + p[7 + row] === 0) { + t = (dctSqrt2 * p[0 + row] + 512) >> 10; + p[0 + row] = t; + p[1 + row] = t; + p[2 + row] = t; + p[3 + row] = t; + p[4 + row] = t; + p[5 + row] = t; + p[6 + row] = t; + p[7 + row] = t; + continue; + } + + // stage 4 + v0 = (dctSqrt2 * p[0 + row] + 128) >> 8; + v1 = (dctSqrt2 * p[4 + row] + 128) >> 8; + v2 = p[2 + row]; + v3 = p[6 + row]; + v4 = (dctSqrt1d2 * (p[1 + row] - p[7 + row]) + 128) >> 8; + v7 = (dctSqrt1d2 * (p[1 + row] + p[7 + row]) + 128) >> 8; + v5 = p[3 + row] << 4; + v6 = p[5 + row] << 4; + + // stage 3 + t = (v0 - v1 + 1) >> 1; + v0 = (v0 + v1 + 1) >> 1; + v1 = t; + t = (v2 * dctSin6 + v3 * dctCos6 + 128) >> 8; + v2 = (v2 * dctCos6 - v3 * dctSin6 + 128) >> 8; + v3 = t; + t = (v4 - v6 + 1) >> 1; + v4 = (v4 + v6 + 1) >> 1; + v6 = t; + t = (v7 + v5 + 1) >> 1; + v5 = (v7 - v5 + 1) >> 1; + v7 = t; + + // stage 2 + t = (v0 - v3 + 1) >> 1; + v0 = (v0 + v3 + 1) >> 1; + v3 = t; + t = (v1 - v2 + 1) >> 1; + v1 = (v1 + v2 + 1) >> 1; + v2 = t; + t = (v4 * dctSin3 + v7 * dctCos3 + 2048) >> 12; + v4 = (v4 * dctCos3 - v7 * dctSin3 + 2048) >> 12; + v7 = t; + t = (v5 * dctSin1 + v6 * dctCos1 + 2048) >> 12; + v5 = (v5 * dctCos1 - v6 * dctSin1 + 2048) >> 12; + v6 = t; + + // stage 1 + p[0 + row] = v0 + v7; + p[7 + row] = v0 - v7; + p[1 + row] = v1 + v6; + p[6 + row] = v1 - v6; + p[2 + row] = v2 + v5; + p[5 + row] = v2 - v5; + p[3 + row] = v3 + v4; + p[4 + row] = v3 - v4; + } + + // inverse DCT on columns + for (i = 0; i < 8; ++i) { + var col = i; + + // check for all-zero AC coefficients + if (p[1 * 8 + col] === 0 && p[2 * 8 + col] === 0 && p[3 * 8 + col] === 0 && + p[4 * 8 + col] === 0 && p[5 * 8 + col] === 0 && p[6 * 8 + col] === 0 && + p[7 * 8 + col] === 0) { + t = (dctSqrt2 * p[i + 0] + 8192) >> 14; + p[0 * 8 + col] = t; + p[1 * 8 + col] = t; + p[2 * 8 + col] = t; + p[3 * 8 + col] = t; + p[4 * 8 + col] = t; + p[5 * 8 + col] = t; + p[6 * 8 + col] = t; + p[7 * 8 + col] = t; + continue; + } + + // stage 4 + v0 = (dctSqrt2 * p[0 * 8 + col] + 2048) >> 12; + v1 = (dctSqrt2 * p[4 * 8 + col] + 2048) >> 12; + v2 = p[2 * 8 + col]; + v3 = p[6 * 8 + col]; + v4 = (dctSqrt1d2 * (p[1 * 8 + col] - p[7 * 8 + col]) + 2048) >> 12; + v7 = (dctSqrt1d2 * (p[1 * 8 + col] + p[7 * 8 + col]) + 2048) >> 12; + v5 = p[3 * 8 + col]; + v6 = p[5 * 8 + col]; + + // stage 3 + t = (v0 - v1 + 1) >> 1; + v0 = (v0 + v1 + 1) >> 1; + v1 = t; + t = (v2 * dctSin6 + v3 * dctCos6 + 2048) >> 12; + v2 = (v2 * dctCos6 - v3 * dctSin6 + 2048) >> 12; + v3 = t; + t = (v4 - v6 + 1) >> 1; + v4 = (v4 + v6 + 1) >> 1; + v6 = t; + t = (v7 + v5 + 1) >> 1; + v5 = (v7 - v5 + 1) >> 1; + v7 = t; + + // stage 2 + t = (v0 - v3 + 1) >> 1; + v0 = (v0 + v3 + 1) >> 1; + v3 = t; + t = (v1 - v2 + 1) >> 1; + v1 = (v1 + v2 + 1) >> 1; + v2 = t; + t = (v4 * dctSin3 + v7 * dctCos3 + 2048) >> 12; + v4 = (v4 * dctCos3 - v7 * dctSin3 + 2048) >> 12; + v7 = t; + t = (v5 * dctSin1 + v6 * dctCos1 + 2048) >> 12; + v5 = (v5 * dctCos1 - v6 * dctSin1 + 2048) >> 12; + v6 = t; + + // stage 1 + p[0 * 8 + col] = v0 + v7; + p[7 * 8 + col] = v0 - v7; + p[1 * 8 + col] = v1 + v6; + p[6 * 8 + col] = v1 - v6; + p[2 * 8 + col] = v2 + v5; + p[5 * 8 + col] = v2 - v5; + p[3 * 8 + col] = v3 + v4; + p[4 * 8 + col] = v3 - v4; + } + + // convert to 8-bit integers + for (i = 0; i < 64; ++i) { + var index = blockBufferOffset + i; + var q = p[i]; + q = (q <= -2056 / component.bitConversion) ? 0 : + (q >= 2024 / component.bitConversion) ? 255 / component.bitConversion : + (q + 2056 / component.bitConversion) >> 4; + component.blockData[index] = q; + } + } + + function buildComponentData(frame, component) { + var lines = []; + var blocksPerLine = component.blocksPerLine; + var blocksPerColumn = component.blocksPerColumn; + var samplesPerLine = blocksPerLine << 3; + var computationBuffer = new Int32Array(64); + + var i, j, ll = 0; + for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) { + for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) { + var offset = getBlockBufferOffset(component, blockRow, blockCol); + quantizeAndInverse(component, offset, computationBuffer); + } + } + return component.blockData; + } + + function clampToUint8(a) { + return a <= 0 ? 0 : a >= 255 ? 255 : a | 0; + } + + constructor.prototype = { + load: function load(path) { + var handleData = (function (data) { + this.parse(data); + if (this.onload) + this.onload(); + }).bind(this); + + if (path.indexOf("data:") > -1) { + var offset = path.indexOf("base64,") + 7; + var data = atob(path.substring(offset)); + var arr = new Uint8Array(data.length); + for (var i = data.length - 1; i >= 0; i--) { + arr[i] = data.charCodeAt(i); + } + handleData(data); + } else { + var xhr = new XMLHttpRequest(); + xhr.open("GET", path, true); + xhr.responseType = "arraybuffer"; + xhr.onload = (function () { + // TODO catch parse error + var data = new Uint8Array(xhr.response); + handleData(data); + }).bind(this); + xhr.send(null); + } + }, + parse: function parse(data) { + + function readUint16() { + var value = (data[offset] << 8) | data[offset + 1]; + offset += 2; + return value; + } + + function readDataBlock() { + var length = readUint16(); + var array = data.subarray(offset, offset + length - 2); + offset += array.length; + return array; + } + + function prepareComponents(frame) { + var mcusPerLine = Math.ceil(frame.samplesPerLine / 8 / frame.maxH); + var mcusPerColumn = Math.ceil(frame.scanLines / 8 / frame.maxV); + for (var i = 0; i < frame.components.length; i++) { + component = frame.components[i]; + var blocksPerLine = Math.ceil(Math.ceil(frame.samplesPerLine / 8) * component.h / frame.maxH); + var blocksPerColumn = Math.ceil(Math.ceil(frame.scanLines / 8) * component.v / frame.maxV); + var blocksPerLineForMcu = mcusPerLine * component.h; + var blocksPerColumnForMcu = mcusPerColumn * component.v; + + var blocksBufferSize = 64 * blocksPerColumnForMcu * (blocksPerLineForMcu + 1); + component.blockData = new Int16Array(blocksBufferSize); + component.blocksPerLine = blocksPerLine; + component.blocksPerColumn = blocksPerColumn; + } + frame.mcusPerLine = mcusPerLine; + frame.mcusPerColumn = mcusPerColumn; + } + + var offset = 0, length = data.length; + var jfif = null; + var adobe = null; + var pixels = null; + var frame, resetInterval; + var quantizationTables = []; + var huffmanTablesAC = [], huffmanTablesDC = []; + var fileMarker = readUint16(); + if (fileMarker != 0xFFD8) { // SOI (Start of Image) + throw "SOI not found"; + } + + fileMarker = readUint16(); + while (fileMarker != 0xFFD9) { // EOI (End of image) + var i, j, l; + switch (fileMarker) { + case 0xFFE0: // APP0 (Application Specific) + case 0xFFE1: // APP1 + case 0xFFE2: // APP2 + case 0xFFE3: // APP3 + case 0xFFE4: // APP4 + case 0xFFE5: // APP5 + case 0xFFE6: // APP6 + case 0xFFE7: // APP7 + case 0xFFE8: // APP8 + case 0xFFE9: // APP9 + case 0xFFEA: // APP10 + case 0xFFEB: // APP11 + case 0xFFEC: // APP12 + case 0xFFED: // APP13 + case 0xFFEE: // APP14 + case 0xFFEF: // APP15 + case 0xFFFE: // COM (Comment) + var appData = readDataBlock(); + + if (fileMarker === 0xFFE0) { + if (appData[0] === 0x4A && appData[1] === 0x46 && appData[2] === 0x49 && + appData[3] === 0x46 && appData[4] === 0) { // 'JFIF\x00' + jfif = { + version: {major: appData[5], minor: appData[6]}, + densityUnits: appData[7], + xDensity: (appData[8] << 8) | appData[9], + yDensity: (appData[10] << 8) | appData[11], + thumbWidth: appData[12], + thumbHeight: appData[13], + thumbData: appData.subarray(14, 14 + 3 * appData[12] * appData[13]) + }; + } + } + // TODO APP1 - Exif + if (fileMarker === 0xFFEE) { + if (appData[0] === 0x41 && appData[1] === 0x64 && appData[2] === 0x6F && + appData[3] === 0x62 && appData[4] === 0x65 && appData[5] === 0) { // 'Adobe\x00' + adobe = { + version: appData[6], + flags0: (appData[7] << 8) | appData[8], + flags1: (appData[9] << 8) | appData[10], + transformCode: appData[11] + }; + } + } + break; + + case 0xFFDB: // DQT (Define Quantization Tables) + var quantizationTablesLength = readUint16(); + var quantizationTablesEnd = quantizationTablesLength + offset - 2; + while (offset < quantizationTablesEnd) { + var quantizationTableSpec = data[offset++]; + var tableData = new Int32Array(64); + if ((quantizationTableSpec >> 4) === 0) { // 8 bit values + for (j = 0; j < 64; j++) { + var z = dctZigZag[j]; + tableData[z] = data[offset++]; + } + } else if ((quantizationTableSpec >> 4) === 1) { //16 bit + for (j = 0; j < 64; j++) { + var zz = dctZigZag[j]; + tableData[zz] = readUint16(); + } + } else + throw "DQT: invalid table spec"; + quantizationTables[quantizationTableSpec & 15] = tableData; + } + break; + + case 0xFFC0: // SOF0 (Start of Frame, Baseline DCT) + case 0xFFC1: // SOF1 (Start of Frame, Extended DCT) + case 0xFFC2: // SOF2 (Start of Frame, Progressive DCT) + if (frame) { + throw "Only single frame JPEGs supported"; + } + readUint16(); // skip data length + frame = {}; + frame.extended = (fileMarker === 0xFFC1); + frame.progressive = (fileMarker === 0xFFC2); + frame.precision = data[offset++]; + frame.scanLines = readUint16(); + frame.samplesPerLine = readUint16(); + frame.components = []; + frame.componentIds = {}; + var componentsCount = data[offset++], componentId; + var maxH = 0, maxV = 0; + for (i = 0; i < componentsCount; i++) { + componentId = data[offset]; + var h = data[offset + 1] >> 4; + var v = data[offset + 1] & 15; + if (maxH < h) + maxH = h; + if (maxV < v) + maxV = v; + var qId = data[offset + 2]; + l = frame.components.push({ + h: h, + v: v, + quantizationTable: quantizationTables[qId], + quantizationTableId: qId, + bitConversion: 255 / ((1 << frame.precision) - 1) + }); + frame.componentIds[componentId] = l - 1; + offset += 3; + } + frame.maxH = maxH; + frame.maxV = maxV; + prepareComponents(frame); + break; + + case 0xFFC4: // DHT (Define Huffman Tables) + var huffmanLength = readUint16(); + for (i = 2; i < huffmanLength; ) { + var huffmanTableSpec = data[offset++]; + var codeLengths = new Uint8Array(16); + var codeLengthSum = 0; + for (j = 0; j < 16; j++, offset++) + codeLengthSum += (codeLengths[j] = data[offset]); + var huffmanValues = new Uint8Array(codeLengthSum); + for (j = 0; j < codeLengthSum; j++, offset++) + huffmanValues[j] = data[offset]; + i += 17 + codeLengthSum; + + ((huffmanTableSpec >> 4) === 0 ? + huffmanTablesDC : huffmanTablesAC)[huffmanTableSpec & 15] = + buildHuffmanTable(codeLengths, huffmanValues); + } + break; + + case 0xFFDD: // DRI (Define Restart Interval) + readUint16(); // skip data length + resetInterval = readUint16(); + break; + + case 0xFFDA: // SOS (Start of Scan) + var scanLength = readUint16(); + var selectorsCount = data[offset++]; + var components = [], component; + for (i = 0; i < selectorsCount; i++) { + var componentIndex = frame.componentIds[data[offset++]]; + component = frame.components[componentIndex]; + var tableSpec = data[offset++]; + component.huffmanTableDC = huffmanTablesDC[tableSpec >> 4]; + component.huffmanTableAC = huffmanTablesAC[tableSpec & 15]; + components.push(component); + } + var spectralStart = data[offset++]; + var spectralEnd = data[offset++]; + var successiveApproximation = data[offset++]; + var processed = decodeScan(data, offset, + frame, components, resetInterval, + spectralStart, spectralEnd, + successiveApproximation >> 4, successiveApproximation & 15); + offset += processed; + break; + case 0xFFFF: // Fill bytes + if (data[offset] !== 0xFF) { // Avoid skipping a valid marker. + offset--; + } + break; + default: + if (data[offset - 3] == 0xFF && + data[offset - 2] >= 0xC0 && data[offset - 2] <= 0xFE) { + // could be incorrect encoding -- last 0xFF byte of the previous + // block was eaten by the encoder + offset -= 3; + break; + } + throw "unknown JPEG marker " + fileMarker.toString(16); + } + fileMarker = readUint16(); + } + + this.width = frame.samplesPerLine; + this.height = frame.scanLines; + this.jfif = jfif; + this.adobe = adobe; + this.components = []; + switch (frame.components.length) + { + case 1: + this.colorspace = ColorSpace.Grayscale; + break; + case 3: + if (this.adobe) + this.colorspace = ColorSpace.AdobeRGB; + else + this.colorspace = ColorSpace.RGB; + break; + case 4: + this.colorspace = ColorSpace.CYMK; + break; + default: + this.colorspace = ColorSpace.Unknown; + } + for (var i = 0; i < frame.components.length; i++) { + var component = frame.components[i]; + if (!component.quantizationTable && component.quantizationTableId !== null) + component.quantizationTable = quantizationTables[component.quantizationTableId]; + this.components.push({ + output: buildComponentData(frame, component), + scaleX: component.h / frame.maxH, + scaleY: component.v / frame.maxV, + blocksPerLine: component.blocksPerLine, + blocksPerColumn: component.blocksPerColumn, + bitConversion: component.bitConversion + }); + } + }, + getData16: function getData16(width, height) { + if (this.components.length !== 1) + throw 'Unsupported color mode'; + var scaleX = this.width / width, scaleY = this.height / height; + + var component, componentScaleX, componentScaleY; + var x, y, i; + var offset = 0; + var numComponents = this.components.length; + var dataLength = width * height * numComponents; + var data = new Uint16Array(dataLength); + var componentLine; + + // lineData is reused for all components. Assume first component is + // the biggest + var lineData = new Uint16Array((this.components[0].blocksPerLine << 3) * + this.components[0].blocksPerColumn * 8); + + // First construct image data ... + for (i = 0; i < numComponents; i++) { + component = this.components[i]; + var blocksPerLine = component.blocksPerLine; + var blocksPerColumn = component.blocksPerColumn; + var samplesPerLine = blocksPerLine << 3; + + var j, k, ll = 0; + var lineOffset = 0; + for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) { + var scanLine = blockRow << 3; + for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) { + var bufferOffset = getBlockBufferOffset(component, blockRow, blockCol); + var offset = 0, sample = blockCol << 3; + for (j = 0; j < 8; j++) { + var lineOffset = (scanLine + j) * samplesPerLine; + for (k = 0; k < 8; k++) { + lineData[lineOffset + sample + k] = + component.output[bufferOffset + offset++]; + } + } + } + } + + componentScaleX = component.scaleX * scaleX; + componentScaleY = component.scaleY * scaleY; + offset = i; + + var cx, cy; + var index; + for (y = 0; y < height; y++) { + for (x = 0; x < width; x++) { + cy = 0 | (y * componentScaleY); + cx = 0 | (x * componentScaleX); + index = cy * samplesPerLine + cx; + data[offset] = lineData[index]; + offset += numComponents; + } + } + } + return data; + }, + getData: function getData(width, height) { + var scaleX = this.width / width, scaleY = this.height / height; + + var component, componentScaleX, componentScaleY; + var x, y, i; + var offset = 0; + var Y, Cb, Cr, K, C, M, Ye, R, G, B; + var colorTransform; + var numComponents = this.components.length; + var dataLength = width * height * numComponents; + var data = new Uint8Array(dataLength); + var componentLine; + + // lineData is reused for all components. Assume first component is + // the biggest + var lineData = new Uint8Array((this.components[0].blocksPerLine << 3) * + this.components[0].blocksPerColumn * 8); + + // First construct image data ... + for (i = 0; i < numComponents; i++) { + component = this.components[i]; + var blocksPerLine = component.blocksPerLine; + var blocksPerColumn = component.blocksPerColumn; + var samplesPerLine = blocksPerLine << 3; + + var j, k, ll = 0; + var lineOffset = 0; + for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) { + var scanLine = blockRow << 3; + for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) { + var bufferOffset = getBlockBufferOffset(component, blockRow, blockCol); + var offset = 0, sample = blockCol << 3; + for (j = 0; j < 8; j++) { + var lineOffset = (scanLine + j) * samplesPerLine; + for (k = 0; k < 8; k++) { + lineData[lineOffset + sample + k] = + component.output[bufferOffset + offset++] * component.bitConversion; + } + } + } + } + + componentScaleX = component.scaleX * scaleX; + componentScaleY = component.scaleY * scaleY; + offset = i; + + var cx, cy; + var index; + for (y = 0; y < height; y++) { + for (x = 0; x < width; x++) { + cy = 0 | (y * componentScaleY); + cx = 0 | (x * componentScaleX); + index = cy * samplesPerLine + cx; + data[offset] = lineData[index]; + offset += numComponents; + } + } + } + + // ... then transform colors, if necessary + switch (numComponents) { + case 1: + case 2: + break; + // no color conversion for one or two compoenents + + case 3: + // The default transform for three components is true + colorTransform = true; + // The adobe transform marker overrides any previous setting + if (this.adobe && this.adobe.transformCode) + colorTransform = true; + else if (typeof this.colorTransform !== 'undefined') + colorTransform = !!this.colorTransform; + + if (colorTransform) { + for (i = 0; i < dataLength; i += numComponents) { + Y = data[i ]; + Cb = data[i + 1]; + Cr = data[i + 2]; + + R = clampToUint8(Y - 179.456 + 1.402 * Cr); + G = clampToUint8(Y + 135.459 - 0.344 * Cb - 0.714 * Cr); + B = clampToUint8(Y - 226.816 + 1.772 * Cb); + + data[i ] = R; + data[i + 1] = G; + data[i + 2] = B; + } + } + break; + case 4: + if (!this.adobe) + throw 'Unsupported color mode (4 components)'; + // The default transform for four components is false + colorTransform = false; + // The adobe transform marker overrides any previous setting + if (this.adobe && this.adobe.transformCode) + colorTransform = true; + else if (typeof this.colorTransform !== 'undefined') + colorTransform = !!this.colorTransform; + + if (colorTransform) { + for (i = 0; i < dataLength; i += numComponents) { + Y = data[i]; + Cb = data[i + 1]; + Cr = data[i + 2]; + + C = clampToUint8(434.456 - Y - 1.402 * Cr); + M = clampToUint8(119.541 - Y + 0.344 * Cb + 0.714 * Cr); + Y = clampToUint8(481.816 - Y - 1.772 * Cb); + + data[i ] = C; + data[i + 1] = M; + data[i + 2] = Y; + // K is unchanged + } + } + break; + default: + throw 'Unsupported color mode'; + } + return data; + } + }; + + return constructor; +})(); + + +/*** EXPORTS FROM exports-loader ***/ +module.exports = JpegImage; + +/***/ }), + +/***/ "../codecs/jpegLossless.js": +/*!*********************************!*\ + !*** ../codecs/jpegLossless.js ***! + \*********************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.jpeg = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o> 4) !== 0x0FFC) || (current === 0xFFC4))) { // SOF 0~15 + switch (current) { + case 0xFFC4: // DHT + this.huffTable.read(this.stream, this.HuffTab); + break; + case 0xFFCC: // DAC + throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)"); + case 0xFFDB: + this.quantTable.read(this.stream, jpeg.lossless.Decoder.TABLE); + break; + case 0xFFDD: + this.restartInterval = this.readNumber(); + break; + case 0xFFE0: + case 0xFFE1: + case 0xFFE2: + case 0xFFE3: + case 0xFFE4: + case 0xFFE5: + case 0xFFE6: + case 0xFFE7: + case 0xFFE8: + case 0xFFE9: + case 0xFFEA: + case 0xFFEB: + case 0xFFEC: + case 0xFFED: + case 0xFFEE: + case 0xFFEF: + this.readApp(); + break; + case 0xFFFE: + this.readComment(); + break; + default: + if ((current >> 8) !== 0xFF) { + throw new Error("ERROR: format throw new IOException! (decode)"); + } + } + + current = this.stream.get16(); + } + + if ((current < 0xFFC0) || (current > 0xFFC7)) { + throw new Error("ERROR: could not handle arithmetic code!"); + } + + this.frame.read(this.stream); + current = this.stream.get16(); + + do { + while (current !== 0x0FFDA) { // SOS + switch (current) { + case 0xFFC4: // DHT + this.huffTable.read(this.stream, this.HuffTab); + break; + case 0xFFCC: // DAC + throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)"); + case 0xFFDB: + this.quantTable.read(this.stream, jpeg.lossless.Decoder.TABLE); + break; + case 0xFFDD: + this.restartInterval = this.readNumber(); + break; + case 0xFFE0: + case 0xFFE1: + case 0xFFE2: + case 0xFFE3: + case 0xFFE4: + case 0xFFE5: + case 0xFFE6: + case 0xFFE7: + case 0xFFE8: + case 0xFFE9: + case 0xFFEA: + case 0xFFEB: + case 0xFFEC: + case 0xFFED: + case 0xFFEE: + case 0xFFEF: + this.readApp(); + break; + case 0xFFFE: + this.readComment(); + break; + default: + if ((current >> 8) !== 0xFF) { + throw new Error("ERROR: format throw new IOException! (Parser.decode)"); + } + } + + current = this.stream.get16(); + } + + this.precision = this.frame.precision; + this.components = this.frame.components; + + if (!this.numBytes) { + this.numBytes = parseInt(Math.ceil(this.precision / 8)); + } + + if (this.numBytes == 1) { + this.mask = 0xFF; + } else { + this.mask = 0xFFFF; + } + + this.scan.read(this.stream); + this.numComp = this.scan.numComp; + this.selection = this.scan.selection; + + if (this.numBytes === 1) { + if (this.numComp === 3) { + this.getter = this.getValueRGB; + this.setter = this.setValueRGB; + this.output = this.outputRGB; + } else { + this.getter = this.getValue8; + this.setter = this.setValue8; + this.output = this.outputSingle; + } + } else { + this.getter = this.getValue16; + this.setter = this.setValue16; + this.output = this.outputSingle; + } + + switch (this.selection) { + case 2: + this.selector = this.select2; + break; + case 3: + this.selector = this.select3; + break; + case 4: + this.selector = this.select4; + break; + case 5: + this.selector = this.select5; + break; + case 6: + this.selector = this.select6; + break; + case 7: + this.selector = this.select7; + break; + default: + this.selector = this.select1; + break; + } + + this.scanComps = this.scan.components; + this.quantTables = this.quantTable.quantTables; + + for (i = 0; i < this.numComp; i+=1) { + compN = this.scanComps[i].scanCompSel; + this.qTab[i] = this.quantTables[this.components[compN].quantTableSel]; + this.nBlock[i] = this.components[compN].vSamp * this.components[compN].hSamp; + this.dcTab[i] = this.HuffTab[this.scanComps[i].dcTabSel][0]; + this.acTab[i] = this.HuffTab[this.scanComps[i].acTabSel][1]; + } + + this.xDim = this.frame.dimX; + this.yDim = this.frame.dimY; + if (this.numBytes == 1) { + this.outputData = new Uint8Array(new ArrayBuffer(this.xDim * this.yDim * this.numBytes * this.numComp)); + } else { + this.outputData = new Uint16Array(new ArrayBuffer(this.xDim * this.yDim * this.numBytes * this.numComp)); + } + + scanNum+=1; + + while (true) { // Decode one scan + temp[0] = 0; + index[0] = 0; + + for (i = 0; i < 10; i+=1) { + pred[i] = (1 << (this.precision - 1)); + } + + if (this.restartInterval === 0) { + current = this.decodeUnit(pred, temp, index); + + while ((current === 0) && ((this.xLoc < this.xDim) && (this.yLoc < this.yDim))) { + this.output(pred); + current = this.decodeUnit(pred, temp, index); + } + + break; //current=MARKER + } + + for (mcuNum = 0; mcuNum < this.restartInterval; mcuNum+=1) { + this.restarting = (mcuNum == 0); + current = this.decodeUnit(pred, temp, index); + this.output(pred); + + if (current !== 0) { + break; + } + } + + if (current === 0) { + if (this.markerIndex !== 0) { + current = (0xFF00 | this.marker); + this.markerIndex = 0; + } else { + current = this.stream.get16(); + } + } + + if (!((current >= jpeg.lossless.Decoder.RESTART_MARKER_BEGIN) && + (current <= jpeg.lossless.Decoder.RESTART_MARKER_END))) { + break; //current=MARKER + } + } + + if ((current === 0xFFDC) && (scanNum === 1)) { //DNL + this.readNumber(); + current = this.stream.get16(); + } + } while ((current !== 0xFFD9) && ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) && (scanNum === 0)); + + return this.outputData; + }; + + + + jpeg.lossless.Decoder.prototype.decodeUnit = function (prev, temp, index) { + if (this.numComp == 1) { + return this.decodeSingle(prev, temp, index); + } else if (this.numComp == 3) { + return this.decodeRGB(prev, temp, index); + } else { + return -1; + } + }; + + + + jpeg.lossless.Decoder.prototype.select1 = function (compOffset) { + return this.getPreviousX(compOffset); + }; + + + + jpeg.lossless.Decoder.prototype.select2 = function (compOffset) { + return this.getPreviousY(compOffset); + }; + + + + jpeg.lossless.Decoder.prototype.select3 = function (compOffset) { + return this.getPreviousXY(compOffset); + }; + + + + jpeg.lossless.Decoder.prototype.select4 = function (compOffset) { + return (this.getPreviousX(compOffset) + this.getPreviousY(compOffset)) - this.getPreviousXY(compOffset); + }; + + + + jpeg.lossless.Decoder.prototype.select5 = function (compOffset) { + return this.getPreviousX(compOffset) + ((this.getPreviousY(compOffset) - this.getPreviousXY(compOffset)) >> 1); + }; + + + + jpeg.lossless.Decoder.prototype.select6 = function (compOffset) { + return this.getPreviousY(compOffset) + ((this.getPreviousX(compOffset) - this.getPreviousXY(compOffset)) >> 1); + }; + + + + jpeg.lossless.Decoder.prototype.select7 = function (compOffset) { + return ((this.getPreviousX(compOffset) + this.getPreviousY(compOffset)) / 2); + }; + + + + jpeg.lossless.Decoder.prototype.decodeRGB = function (prev, temp, index) { + /*jslint bitwise: true */ + + var value, actab, dctab, qtab, ctrC, i, k, j; + + prev[0] = this.selector(0); + prev[1] = this.selector(1); + prev[2] = this.selector(2); + + for (ctrC = 0; ctrC < this.numComp; ctrC+=1) { + qtab = this.qTab[ctrC]; + actab = this.acTab[ctrC]; + dctab = this.dcTab[ctrC]; + for (i = 0; i < this.nBlock[ctrC]; i+=1) { + for (k = 0; k < this.IDCT_Source.length; k+=1) { + this.IDCT_Source[k] = 0; + } + + value = this.getHuffmanValue(dctab, temp, index); + + if (value >= 0xFF00) { + return value; + } + + prev[ctrC] = this.IDCT_Source[0] = prev[ctrC] + this.getn(index, value, temp, index); + this.IDCT_Source[0] *= qtab[0]; + + for (j = 1; j < 64; j+=1) { + value = this.getHuffmanValue(actab, temp, index); + + if (value >= 0xFF00) { + return value; + } + + j += (value >> 4); + + if ((value & 0x0F) === 0) { + if ((value >> 4) === 0) { + break; + } + } else { + this.IDCT_Source[jpeg.lossless.Decoder.IDCT_P[j]] = this.getn(index, value & 0x0F, temp, index) * qtab[j]; + } + } + } + } + + return 0; + }; + + + + jpeg.lossless.Decoder.prototype.decodeSingle = function (prev, temp, index) { + /*jslint bitwise: true */ + + var value, i, n, nRestart; + + if (this.restarting) { + this.restarting = false; + prev[0] = (1 << (this.frame.precision - 1)); + } else { + prev[0] = this.selector(); + } + + for (i = 0; i < this.nBlock[0]; i+=1) { + value = this.getHuffmanValue(this.dcTab[0], temp, index); + if (value >= 0xFF00) { + return value; + } + + n = this.getn(prev, value, temp, index); + nRestart = (n >> 8); + + if ((nRestart >= jpeg.lossless.Decoder.RESTART_MARKER_BEGIN) && (nRestart <= jpeg.lossless.Decoder.RESTART_MARKER_END)) { + return nRestart; + } + + prev[0] += n; + } + + return 0; + }; + + + + // Huffman table for fast search: (HuffTab) 8-bit Look up table 2-layer search architecture, 1st-layer represent 256 node (8 bits) if codeword-length > 8 + // bits, then the entry of 1st-layer = (# of 2nd-layer table) | MSB and it is stored in the 2nd-layer Size of tables in each layer are 256. + // HuffTab[*][*][0-256] is always the only 1st-layer table. + // + // An entry can be: (1) (# of 2nd-layer table) | MSB , for code length > 8 in 1st-layer (2) (Code length) << 8 | HuffVal + // + // HuffmanValue(table HuffTab[x][y] (ex) HuffmanValue(HuffTab[1][0],...) + // ): + // return: Huffman Value of table + // 0xFF?? if it receives a MARKER + // Parameter: table HuffTab[x][y] (ex) HuffmanValue(HuffTab[1][0],...) + // temp temp storage for remainded bits + // index index to bit of temp + // in FILE pointer + // Effect: + // temp store new remainded bits + // index change to new index + // in change to new position + // NOTE: + // Initial by temp=0; index=0; + // NOTE: (explain temp and index) + // temp: is always in the form at calling time or returning time + // | byte 4 | byte 3 | byte 2 | byte 1 | + // | 0 | 0 | 00000000 | 00000??? | if not a MARKER + // ^index=3 (from 0 to 15) + // 321 + // NOTE (marker and marker_index): + // If get a MARKER from 'in', marker=the low-byte of the MARKER + // and marker_index=9 + // If marker_index=9 then index is always > 8, or HuffmanValue() + // will not be called + jpeg.lossless.Decoder.prototype.getHuffmanValue = function (table, temp, index) { + /*jslint bitwise: true */ + + var code, input, mask; + mask = 0xFFFF; + + if (index[0] < 8) { + temp[0] <<= 8; + input = this.stream.get8(); + if (input === 0xFF) { + this.marker = this.stream.get8(); + if (this.marker !== 0) { + this.markerIndex = 9; + } + } + temp[0] |= input; + } else { + index[0] -= 8; + } + + code = table[temp[0] >> index[0]]; + + if ((code & jpeg.lossless.Decoder.MSB) !== 0) { + if (this.markerIndex !== 0) { + this.markerIndex = 0; + return 0xFF00 | this.marker; + } + + temp[0] &= (mask >> (16 - index[0])); + temp[0] <<= 8; + input = this.stream.get8(); + + if (input === 0xFF) { + this.marker = this.stream.get8(); + if (this.marker !== 0) { + this.markerIndex = 9; + } + } + + temp[0] |= input; + code = table[((code & 0xFF) * 256) + (temp[0] >> index[0])]; + index[0] += 8; + } + + index[0] += 8 - (code >> 8); + + if (index[0] < 0) { + throw new Error("index=" + index[0] + " temp=" + temp[0] + " code=" + code + " in HuffmanValue()"); + } + + if (index[0] < this.markerIndex) { + this.markerIndex = 0; + return 0xFF00 | this.marker; + } + + temp[0] &= (mask >> (16 - index[0])); + return code & 0xFF; + }; + + + + jpeg.lossless.Decoder.prototype.getn = function (PRED, n, temp, index) { + /*jslint bitwise: true */ + + var result, one, n_one, mask, input; + one = 1; + n_one = -1; + mask = 0xFFFF; + + if (n === 0) { + return 0; + } + + if (n === 16) { + if (PRED[0] >= 0) { + return -32768; + } else { + return 32768; + } + } + + index[0] -= n; + + if (index[0] >= 0) { + if ((index[0] < this.markerIndex) && !this.isLastPixel()) { // this was corrupting the last pixel in some cases + this.markerIndex = 0; + return (0xFF00 | this.marker) << 8; + } + + result = temp[0] >> index[0]; + temp[0] &= (mask >> (16 - index[0])); + } else { + temp[0] <<= 8; + input = this.stream.get8(); + + if (input === 0xFF) { + this.marker = this.stream.get8(); + if (this.marker !== 0) { + this.markerIndex = 9; + } + } + + temp[0] |= input; + index[0] += 8; + + if (index[0] < 0) { + if (this.markerIndex !== 0) { + this.markerIndex = 0; + return (0xFF00 | this.marker) << 8; + } + + temp[0] <<= 8; + input = this.stream.get8(); + + if (input === 0xFF) { + this.marker = this.stream.get8(); + if (this.marker !== 0) { + this.markerIndex = 9; + } + } + + temp[0] |= input; + index[0] += 8; + } + + if (index[0] < 0) { + throw new Error("index=" + index[0] + " in getn()"); + } + + if (index[0] < this.markerIndex) { + this.markerIndex = 0; + return (0xFF00 | this.marker) << 8; + } + + result = temp[0] >> index[0]; + temp[0] &= (mask >> (16 - index[0])); + } + + if (result < (one << (n - 1))) { + result += (n_one << n) + 1; + } + + return result; + }; + + + + jpeg.lossless.Decoder.prototype.getPreviousX = function (compOffset) { + /*jslint bitwise: true */ + + if (this.xLoc > 0) { + return this.getter((((this.yLoc * this.xDim) + this.xLoc) - 1), compOffset); + } else if (this.yLoc > 0) { + return this.getPreviousY(compOffset); + } else { + return (1 << (this.frame.precision - 1)); + } + }; + + + + jpeg.lossless.Decoder.prototype.getPreviousXY = function (compOffset) { + /*jslint bitwise: true */ + + if ((this.xLoc > 0) && (this.yLoc > 0)) { + return this.getter(((((this.yLoc - 1) * this.xDim) + this.xLoc) - 1), compOffset); + } else { + return this.getPreviousY(compOffset); + } + }; + + + + jpeg.lossless.Decoder.prototype.getPreviousY = function (compOffset) { + /*jslint bitwise: true */ + + if (this.yLoc > 0) { + return this.getter((((this.yLoc - 1) * this.xDim) + this.xLoc), compOffset); + } else { + return this.getPreviousX(compOffset); + } + }; + + + + jpeg.lossless.Decoder.prototype.isLastPixel = function () { + return (this.xLoc === (this.xDim - 1)) && (this.yLoc === (this.yDim - 1)); + }; + + + + jpeg.lossless.Decoder.prototype.outputSingle = function (PRED) { + if ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) { + this.setter((((this.yLoc * this.xDim) + this.xLoc)), this.mask & PRED[0]); + + this.xLoc+=1; + + if (this.xLoc >= this.xDim) { + this.yLoc+=1; + this.xLoc = 0; + } + } + }; + + + + jpeg.lossless.Decoder.prototype.outputRGB = function (PRED) { + var offset = ((this.yLoc * this.xDim) + this.xLoc); + + if ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) { + this.setter(offset, PRED[0], 0); + this.setter(offset, PRED[1], 1); + this.setter(offset, PRED[2], 2); + + this.xLoc+=1; + + if (this.xLoc >= this.xDim) { + this.yLoc+=1; + this.xLoc = 0; + } + } + }; + + jpeg.lossless.Decoder.prototype.setValue8 = function (index, val) { + this.outputData[index] = val; + }; + + jpeg.lossless.Decoder.prototype.getValue8 = function (index) { + return this.outputData[index]; // mask should not be necessary because outputData is either Int8Array or Int16Array + }; + + var littleEndian = (function() { + var buffer = new ArrayBuffer(2); + new DataView(buffer).setInt16(0, 256, true /* littleEndian */); + // Int16Array uses the platform's endianness. + return new Int16Array(buffer)[0] === 256; + })(); + + if (littleEndian) { + // just reading from an array is fine then. Int16Array will use platform endianness. + jpeg.lossless.Decoder.prototype.setValue16 = jpeg.lossless.Decoder.prototype.setValue8; + jpeg.lossless.Decoder.prototype.getValue16 = jpeg.lossless.Decoder.prototype.getValue8; + } + else { + // If platform is big-endian, we will need to convert to little-endian + jpeg.lossless.Decoder.prototype.setValue16 = function (index, val) { + this.outputData[index] = ((val & 0xFF) << 8) | ((val >> 8) & 0xFF); + }; + + jpeg.lossless.Decoder.prototype.getValue16 = function (index) { + var val = this.outputData[index]; + return ((val & 0xFF) << 8) | ((val >> 8) & 0xFF); + }; + } + + jpeg.lossless.Decoder.prototype.setValueRGB = function (index, val, compOffset) { + // this.outputData.setUint8(index * 3 + compOffset, val); + this.outputData[index * 3 + compOffset] = val; + }; + + jpeg.lossless.Decoder.prototype.getValueRGB = function (index, compOffset) { + // return this.outputData.getUint8(index * 3 + compOffset); + return this.outputData[index * 3 + compOffset]; + }; + + + + jpeg.lossless.Decoder.prototype.readApp = function() { + var count = 0, length = this.stream.get16(); + count += 2; + + while (count < length) { + this.stream.get8(); + count+=1; + } + + return length; + }; + + + + jpeg.lossless.Decoder.prototype.readComment = function () { + var sb = "", count = 0, length; + + length = this.stream.get16(); + count += 2; + + while (count < length) { + sb += this.stream.get8(); + count+=1; + } + + return sb; + }; + + + + jpeg.lossless.Decoder.prototype.readNumber = function() { + var Ld = this.stream.get16(); + + if (Ld !== 4) { + throw new Error("ERROR: Define number format throw new IOException [Ld!=4]"); + } + + return this.stream.get16(); + }; + + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.Decoder; + } + + },{"./data-stream.js":2,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-header.js":9,"./utils.js":10}],4:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + jpeg.lossless.ComponentSpec = jpeg.lossless.ComponentSpec || ((typeof require !== 'undefined') ? require('./component-spec.js') : null); + jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null); + + + /*** Constructor ***/ + jpeg.lossless.FrameHeader = jpeg.lossless.FrameHeader || function () { + this.components = []; // Components + this.dimX = 0; // Number of samples per line + this.dimY = 0; // Number of lines + this.numComp = 0; // Number of component in the frame + this.precision = 0; // Sample Precision (from the original image) + }; + + + + /*** Prototype Methods ***/ + + jpeg.lossless.FrameHeader.prototype.read = function (data) { + /*jslint bitwise: true */ + + var count = 0, length, i, c, temp; + + length = data.get16(); + count += 2; + + this.precision = data.get8(); + count+=1; + + this.dimY = data.get16(); + count += 2; + + this.dimX = data.get16(); + count += 2; + + this.numComp = data.get8(); + count+=1; + for (i = 1; i <= this.numComp; i+=1) { + if (count > length) { + throw new Error("ERROR: frame format error"); + } + + c = data.get8(); + count+=1; + + if (count >= length) { + throw new Error("ERROR: frame format error [c>=Lf]"); + } + + temp = data.get8(); + count+=1; + + if (!this.components[c]) { + this.components[c] = new jpeg.lossless.ComponentSpec(); + } + + this.components[c].hSamp = temp >> 4; + this.components[c].vSamp = temp & 0x0F; + this.components[c].quantTableSel = data.get8(); + count+=1; + } + + if (count !== length) { + throw new Error("ERROR: frame format error [Lf!=count]"); + } + + return 1; + }; + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.FrameHeader; + } + + },{"./component-spec.js":1,"./data-stream.js":2}],5:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null); + jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null); + + + /*** Constructor ***/ + jpeg.lossless.HuffmanTable = jpeg.lossless.HuffmanTable || function () { + this.l = jpeg.lossless.Utils.createArray(4, 2, 16); + this.th = []; + this.v = jpeg.lossless.Utils.createArray(4, 2, 16, 200); + this.tc = jpeg.lossless.Utils.createArray(4, 2); + + this.tc[0][0] = 0; + this.tc[1][0] = 0; + this.tc[2][0] = 0; + this.tc[3][0] = 0; + this.tc[0][1] = 0; + this.tc[1][1] = 0; + this.tc[2][1] = 0; + this.tc[3][1] = 0; + this.th[0] = 0; + this.th[1] = 0; + this.th[2] = 0; + this.th[3] = 0; + }; + + + + /*** Static Pseudo-constants ***/ + + jpeg.lossless.HuffmanTable.MSB = 0x80000000; + + + /*** Prototype Methods ***/ + + jpeg.lossless.HuffmanTable.prototype.read = function(data, HuffTab) { + /*jslint bitwise: true */ + + var count = 0, length, temp, t, c, i, j; + + length = data.get16(); + count += 2; + + while (count < length) { + temp = data.get8(); + count+=1; + t = temp & 0x0F; + if (t > 3) { + throw new Error("ERROR: Huffman table ID > 3"); + } + + c = temp >> 4; + if (c > 2) { + throw new Error("ERROR: Huffman table [Table class > 2 ]"); + } + + this.th[t] = 1; + this.tc[t][c] = 1; + + for (i = 0; i < 16; i+=1) { + this.l[t][c][i] = data.get8(); + count+=1; + } + + for (i = 0; i < 16; i+=1) { + for (j = 0; j < this.l[t][c][i]; j+=1) { + if (count > length) { + throw new Error("ERROR: Huffman table format error [count>Lh]"); + } + + this.v[t][c][i][j] = data.get8(); + count+=1; + } + } + } + + if (count !== length) { + throw new Error("ERROR: Huffman table format error [count!=Lf]"); + } + + for (i = 0; i < 4; i+=1) { + for (j = 0; j < 2; j+=1) { + if (this.tc[i][j] !== 0) { + this.buildHuffTable(HuffTab[i][j], this.l[i][j], this.v[i][j]); + } + } + } + + return 1; + }; + + + + // Build_HuffTab() + // Parameter: t table ID + // c table class ( 0 for DC, 1 for AC ) + // L[i] # of codewords which length is i + // V[i][j] Huffman Value (length=i) + // Effect: + // build up HuffTab[t][c] using L and V. + jpeg.lossless.HuffmanTable.prototype.buildHuffTable = function(tab, L, V) { + /*jslint bitwise: true */ + + var currentTable, temp, k, i, j, n; + temp = 256; + k = 0; + + for (i = 0; i < 8; i+=1) { // i+1 is Code length + for (j = 0; j < L[i]; j+=1) { + for (n = 0; n < (temp >> (i + 1)); n+=1) { + tab[k] = V[i][j] | ((i + 1) << 8); + k+=1; + } + } + } + + for (i = 1; k < 256; i+=1, k+=1) { + tab[k] = i | jpeg.lossless.HuffmanTable.MSB; + } + + currentTable = 1; + k = 0; + + for (i = 8; i < 16; i+=1) { // i+1 is Code length + for (j = 0; j < L[i]; j+=1) { + for (n = 0; n < (temp >> (i - 7)); n+=1) { + tab[(currentTable * 256) + k] = V[i][j] | ((i + 1) << 8); + k+=1; + } + + if (k >= 256) { + if (k > 256) { + throw new Error("ERROR: Huffman table error(1)!"); + } + + k = 0; + currentTable+=1; + } + } + } + }; + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.HuffmanTable; + } + + },{"./data-stream.js":2,"./utils.js":10}],6:[function(require,module,exports){ + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ****/ + + /** + * jpeg + * @type {*|{}} + */ + var jpeg = jpeg || {}; + + /** + * jpeg.lossless + * @type {*|{}} + */ + jpeg.lossless = jpeg.lossless || {}; + + + jpeg.lossless.ComponentSpec = jpeg.lossless.ComponentSpec || ((typeof require !== 'undefined') ? require('./component-spec.js') : null); + jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null); + jpeg.lossless.Decoder = jpeg.lossless.Decoder || ((typeof require !== 'undefined') ? require('./decoder.js') : null); + jpeg.lossless.FrameHeader = jpeg.lossless.FrameHeader || ((typeof require !== 'undefined') ? require('./frame-header.js') : null); + jpeg.lossless.HuffmanTable = jpeg.lossless.HuffmanTable || ((typeof require !== 'undefined') ? require('./huffman-table.js') : null); + jpeg.lossless.QuantizationTable = jpeg.lossless.QuantizationTable || ((typeof require !== 'undefined') ? require('./quantization-table.js') : null); + jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || ((typeof require !== 'undefined') ? require('./scan-component.js') : null); + jpeg.lossless.ScanHeader = jpeg.lossless.ScanHeader || ((typeof require !== 'undefined') ? require('./scan-header.js') : null); + jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null); + + + /*** Exports ***/ + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg; + } + + },{"./component-spec.js":1,"./data-stream.js":2,"./decoder.js":3,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-component.js":8,"./scan-header.js":9,"./utils.js":10}],7:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null); + jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null); + + + /*** Constructor ***/ + jpeg.lossless.QuantizationTable = jpeg.lossless.QuantizationTable || function () { + this.precision = []; // Quantization precision 8 or 16 + this.tq = []; // 1: this table is presented + this.quantTables = jpeg.lossless.Utils.createArray(4, 64); // Tables + + this.tq[0] = 0; + this.tq[1] = 0; + this.tq[2] = 0; + this.tq[3] = 0; + }; + + + + /*** Static Methods ***/ + + jpeg.lossless.QuantizationTable.enhanceQuantizationTable = function(qtab, table) { + /*jslint bitwise: true */ + + var i; + + for (i = 0; i < 8; i+=1) { + qtab[table[(0 * 8) + i]] *= 90; + qtab[table[(4 * 8) + i]] *= 90; + qtab[table[(2 * 8) + i]] *= 118; + qtab[table[(6 * 8) + i]] *= 49; + qtab[table[(5 * 8) + i]] *= 71; + qtab[table[(1 * 8) + i]] *= 126; + qtab[table[(7 * 8) + i]] *= 25; + qtab[table[(3 * 8) + i]] *= 106; + } + + for (i = 0; i < 8; i+=1) { + qtab[table[0 + (8 * i)]] *= 90; + qtab[table[4 + (8 * i)]] *= 90; + qtab[table[2 + (8 * i)]] *= 118; + qtab[table[6 + (8 * i)]] *= 49; + qtab[table[5 + (8 * i)]] *= 71; + qtab[table[1 + (8 * i)]] *= 126; + qtab[table[7 + (8 * i)]] *= 25; + qtab[table[3 + (8 * i)]] *= 106; + } + + for (i = 0; i < 64; i+=1) { + qtab[i] >>= 6; + } + }; + + + /*** Prototype Methods ***/ + + jpeg.lossless.QuantizationTable.prototype.read = function (data, table) { + /*jslint bitwise: true */ + + var count = 0, length, temp, t, i; + + length = data.get16(); + count += 2; + + while (count < length) { + temp = data.get8(); + count+=1; + t = temp & 0x0F; + + if (t > 3) { + throw new Error("ERROR: Quantization table ID > 3"); + } + + this.precision[t] = temp >> 4; + + if (this.precision[t] === 0) { + this.precision[t] = 8; + } else if (this.precision[t] === 1) { + this.precision[t] = 16; + } else { + throw new Error("ERROR: Quantization table precision error"); + } + + this.tq[t] = 1; + + if (this.precision[t] === 8) { + for (i = 0; i < 64; i+=1) { + if (count > length) { + throw new Error("ERROR: Quantization table format error"); + } + + this.quantTables[t][i] = data.get8(); + count+=1; + } + + jpeg.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t], table); + } else { + for (i = 0; i < 64; i+=1) { + if (count > length) { + throw new Error("ERROR: Quantization table format error"); + } + + this.quantTables[t][i] = data.get16(); + count += 2; + } + + jpeg.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t], table); + } + } + + if (count !== length) { + throw new Error("ERROR: Quantization table error [count!=Lq]"); + } + + return 1; + }; + + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.QuantizationTable; + } + + },{"./data-stream.js":2,"./utils.js":10}],8:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + + + /*** Constructor ***/ + jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || function () { + this.acTabSel = 0; // AC table selector + this.dcTabSel = 0; // DC table selector + this.scanCompSel = 0; // Scan component selector + }; + + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.ScanComponent; + } + + },{}],9:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null); + jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || ((typeof require !== 'undefined') ? require('./scan-component.js') : null); + + + /*** Constructor ***/ + jpeg.lossless.ScanHeader = jpeg.lossless.ScanHeader || function () { + this.ah = 0; + this.al = 0; + this.numComp = 0; // Number of components in the scan + this.selection = 0; // Start of spectral or predictor selection + this.spectralEnd = 0; // End of spectral selection + this.components = []; + }; + + + /*** Prototype Methods ***/ + + jpeg.lossless.ScanHeader.prototype.read = function(data) { + /*jslint bitwise: true */ + + var count = 0, length, i, temp; + + length = data.get16(); + count += 2; + + this.numComp = data.get8(); + count+=1; + + for (i = 0; i < this.numComp; i+=1) { + this.components[i] = new jpeg.lossless.ScanComponent(); + + if (count > length) { + throw new Error("ERROR: scan header format error"); + } + + this.components[i].scanCompSel = data.get8(); + count+=1; + + temp = data.get8(); + count+=1; + + this.components[i].dcTabSel = (temp >> 4); + this.components[i].acTabSel = (temp & 0x0F); + } + + this.selection = data.get8(); + count+=1; + + this.spectralEnd = data.get8(); + count+=1; + + temp = data.get8(); + this.ah = (temp >> 4); + this.al = (temp & 0x0F); + count+=1; + + if (count !== length) { + throw new Error("ERROR: scan header format error [count!=Ns]"); + } + + return 1; + }; + + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.ScanHeader; + } + + },{"./data-stream.js":2,"./scan-component.js":8}],10:[function(require,module,exports){ + /* + * Copyright (C) 2015 Michael Martinez + * Changes: Added support for selection values 2-7, fixed minor bugs & + * warnings, split into multiple class files, and general clean up. + * + * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT. + */ + + /* + * Copyright (C) Helmut Dersch + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + /*jslint browser: true, node: true */ + /*global require, module */ + + "use strict"; + + /*** Imports ***/ + var jpeg = jpeg || {}; + jpeg.lossless = jpeg.lossless || {}; + + + /*** Constructor ***/ + jpeg.lossless.Utils = jpeg.lossless.Utils || {}; + + + /*** Static methods ***/ + + // http://stackoverflow.com/questions/966225/how-can-i-create-a-two-dimensional-array-in-javascript + jpeg.lossless.Utils.createArray = function (length) { + var arr = new Array(length || 0), + i = length; + + if (arguments.length > 1) { + var args = Array.prototype.slice.call(arguments, 1); + while(i--) arr[length-1 - i] = jpeg.lossless.Utils.createArray.apply(this, args); + } + + return arr; + }; + + + // http://stackoverflow.com/questions/18638900/javascript-crc32 + jpeg.lossless.Utils.makeCRCTable = function(){ + var c; + var crcTable = []; + for(var n =0; n < 256; n++){ + c = n; + for(var k =0; k < 8; k++){ + c = ((c&1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1)); + } + crcTable[n] = c; + } + return crcTable; + }; + + jpeg.lossless.Utils.crc32 = function(dataView) { + var uint8view = new Uint8Array(dataView.buffer); + var crcTable = jpeg.lossless.Utils.crcTable || (jpeg.lossless.Utils.crcTable = jpeg.lossless.Utils.makeCRCTable()); + var crc = 0 ^ (-1); + + for (var i = 0; i < uint8view.length; i++ ) { + crc = (crc >>> 8) ^ crcTable[(crc ^ uint8view[i]) & 0xFF]; + } + + return (crc ^ (-1)) >>> 0; + }; + + + /*** Exports ***/ + + var moduleType = typeof module; + if ((moduleType !== 'undefined') && module.exports) { + module.exports = jpeg.lossless.Utils; + } + +},{}]},{},[6])(6) +}); + + +/***/ }), + +/***/ "../codecs/jpx.min.js": +/*!****************************!*\ + !*** ../codecs/jpx.min.js ***! + \****************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/*! image-JPEG2000 - v0.3.1 - 2015-08-26 | https://github.com/OHIF/image-JPEG2000 */ +"use strict";var PDFJS = {};function info(a){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.infos&&console.log("Info: "+a)}function warn(a){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.warnings&&console.log("Warning: "+a)}function error(a){if(arguments.length>1){var b=["Error:"];b.push.apply(b,arguments),console.log.apply(console,b),a=[].join.call(arguments," ")}else console.log("Error: "+a);throw console.log(backtrace()),UnsupportedManager.notify(UNSUPPORTED_FEATURES.unknown),new Error(a)}function backtrace(){try{throw new Error}catch(a){return a.stack?a.stack.split("\n").slice(2).join("\n"):""}}function assert(a,b){a||error(b)}function combineUrl(a,b){if(!b)return a;if(/^[a-z][a-z0-9+\-.]*:/i.test(b))return b;var c;if("/"===b.charAt(0))return c=a.indexOf("://"),"/"===b.charAt(1)?++c:c=a.indexOf("/",c+3),a.substring(0,c)+b;var d=a.length;c=a.lastIndexOf("#"),d=c>=0?c:d,c=a.lastIndexOf("?",d),d=c>=0?c:d;var e=a.lastIndexOf("/",d);return a.substring(0,e+1)+b}function isValidUrl(a,b){if(!a)return!1;var c=/^[a-z][a-z0-9+\-.]*(?=:)/i.exec(a);if(!c)return b;switch(c=c[0].toLowerCase()){case"http":case"https":case"ftp":case"mailto":case"tel":return!0;default:return!1}}function shadow(a,b,c){return Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!1}),c}function bytesToString(a){assert(null!==a&&"object"==typeof a&&void 0!==a.length,"Invalid argument for bytesToString");var b=a.length,c=8192;if(c>b)return String.fromCharCode.apply(null,a);for(var d=[],e=0;b>e;e+=c){var f=Math.min(e+c,b),g=a.subarray(e,f);d.push(String.fromCharCode.apply(null,g))}return d.join("")}function stringToBytes(a){assert("string"==typeof a,"Invalid argument for stringToBytes");for(var b=a.length,c=new Uint8Array(b),d=0;b>d;++d)c[d]=255&a.charCodeAt(d);return c}function string32(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,255&a)}function log2(a){for(var b=1,c=0;a>b;)b<<=1,c++;return c}function readInt8(a,b){return a[b]<<24>>24}function readUint16(a,b){return a[b]<<8|a[b+1]}function readUint32(a,b){return(a[b]<<24|a[b+1]<<16|a[b+2]<<8|a[b+3])>>>0}function isLittleEndian(){var a=new Uint8Array(2);a[0]=1;var b=new Uint16Array(a.buffer);return 1===b[0]}function hasCanvasTypedArrays(){var a=document.createElement("canvas");a.width=a.height=1;var b=a.getContext("2d"),c=b.createImageData(1,1);return"undefined"!=typeof c.data.buffer}function stringToPDFString(a){var b,c=a.length,d=[];if("þ"===a[0]&&"ÿ"===a[1])for(b=2;c>b;b+=2)d.push(String.fromCharCode(a.charCodeAt(b)<<8|a.charCodeAt(b+1)));else for(b=0;c>b;++b){var e=PDFStringTranslateTable[a.charCodeAt(b)];d.push(e?String.fromCharCode(e):a.charAt(b))}return d.join("")}function stringToUTF8String(a){return decodeURIComponent(escape(a))}function isEmptyObj(a){for(var b in a)return!1;return!0}function isBool(a){return"boolean"==typeof a}function isInt(a){return"number"==typeof a&&(0|a)===a}function isNum(a){return"number"==typeof a}function isString(a){return"string"==typeof a}function isNull(a){return null===a}function isName(a){return a instanceof Name}function isCmd(a,b){return a instanceof Cmd&&(void 0===b||a.cmd===b)}function isDict(a,b){if(!(a instanceof Dict))return!1;if(!b)return!0;var c=a.get("Type");return isName(c)&&c.name===b}function isArray(a){return a instanceof Array}function isStream(a){return"object"==typeof a&&null!==a&&void 0!==a.getBytes}function isArrayBuffer(a){return"object"==typeof a&&null!==a&&void 0!==a.byteLength}function isRef(a){return a instanceof Ref}function createPromiseCapability(){var a={};return a.promise=new Promise(function(b,c){a.resolve=b,a.reject=c}),a}function MessageHandler(a,b){this.name=a,this.comObj=b,this.callbackIndex=1,this.postMessageTransfers=!0;var c=this.callbacksCapabilities={},d=this.actionHandler={};d.console_log=[function(a){console.log.apply(console,a)}],d.console_error=[function(a){console.error.apply(console,a)}],d._unsupported_feature=[function(a){UnsupportedManager.notify(a)}],b.onmessage=function(a){var e=a.data;if(e.isReply){var f=e.callbackId;if(e.callbackId in c){var g=c[f];delete c[f],"error"in e?g.reject(e.error):g.resolve(e.data)}else error("Cannot resolve callback "+f)}else if(e.action in d){var h=d[e.action];e.callbackId?Promise.resolve().then(function(){return h[0].call(h[1],e.data)}).then(function(a){b.postMessage({isReply:!0,callbackId:e.callbackId,data:a})},function(a){b.postMessage({isReply:!0,callbackId:e.callbackId,error:a})}):h[0].call(h[1],e.data)}else error("Unknown action from worker: "+e.action)}}function loadJpegStream(a,b,c){var d=new Image;d.onload=function(){c.resolve(a,d)},d.onerror=function(){c.resolve(a,null),warn("Error during JPEG image loading")},d.src=b}var JpxImage=function(){function a(){this.failOnCorruptedImage=!1}function b(a,b){a.x0=Math.ceil(b.XOsiz/a.XRsiz),a.x1=Math.ceil(b.Xsiz/a.XRsiz),a.y0=Math.ceil(b.YOsiz/a.YRsiz),a.y1=Math.ceil(b.Ysiz/a.YRsiz),a.width=a.x1-a.x0,a.height=a.y1-a.y0}function c(a,b){for(var c,d=a.SIZ,e=[],f=Math.ceil((d.Xsiz-d.XTOsiz)/d.XTsiz),g=Math.ceil((d.Ysiz-d.YTOsiz)/d.YTsiz),h=0;g>h;h++)for(var i=0;f>i;i++)c={},c.tx0=Math.max(d.XTOsiz+i*d.XTsiz,d.XOsiz),c.ty0=Math.max(d.YTOsiz+h*d.YTsiz,d.YOsiz),c.tx1=Math.min(d.XTOsiz+(i+1)*d.XTsiz,d.Xsiz),c.ty1=Math.min(d.YTOsiz+(h+1)*d.YTsiz,d.Ysiz),c.width=c.tx1-c.tx0,c.height=c.ty1-c.ty0,c.components=[],e.push(c);a.tiles=e;for(var j=d.Csiz,k=0,l=j;l>k;k++)for(var m=b[k],n=0,o=e.length;o>n;n++){var p={};c=e[n],p.tcx0=Math.ceil(c.tx0/m.XRsiz),p.tcy0=Math.ceil(c.ty0/m.YRsiz),p.tcx1=Math.ceil(c.tx1/m.XRsiz),p.tcy1=Math.ceil(c.ty1/m.YRsiz),p.width=p.tcx1-p.tcx0,p.height=p.tcy1-p.tcy0,c.components[k]=p}}function d(a,b,c){var d=b.codingStyleParameters,e={};return d.entropyCoderWithCustomPrecincts?(e.PPx=d.precinctsSizes[c].PPx,e.PPy=d.precinctsSizes[c].PPy):(e.PPx=15,e.PPy=15),e.xcb_=c>0?Math.min(d.xcb,e.PPx-1):Math.min(d.xcb,e.PPx),e.ycb_=c>0?Math.min(d.ycb,e.PPy-1):Math.min(d.ycb,e.PPy),e}function e(a,b,c){var d=1<b.trx0?Math.ceil(b.trx1/d)-Math.floor(b.trx0/d):0,j=b.try1>b.try0?Math.ceil(b.try1/e)-Math.floor(b.try0/e):0,k=i*j;b.precinctParameters={precinctWidth:d,precinctHeight:e,numprecinctswide:i,numprecinctshigh:j,numprecincts:k,precinctWidthInSubband:g,precinctHeightInSubband:h}}function f(a,b,c){var d,e,f,g,h=c.xcb_,i=c.ycb_,j=1<>h,m=b.tby0>>i,n=b.tbx1+j-1>>h,o=b.tby1+k-1>>i,p=b.resolution.precinctParameters,q=[],r=[];for(e=m;o>e;e++)for(d=l;n>d;d++){f={cbx:d,cby:e,tbx0:j*d,tby0:k*e,tbx1:j*(d+1),tby1:k*(e+1)},f.tbx0_=Math.max(b.tbx0,f.tbx0),f.tby0_=Math.max(b.tby0,f.tby0),f.tbx1_=Math.min(b.tbx1,f.tbx1),f.tby1_=Math.min(b.tby1,f.tby1);var s=Math.floor((f.tbx0_-b.tbx0)/p.precinctWidthInSubband),t=Math.floor((f.tby0_-b.tby0)/p.precinctHeightInSubband);if(g=s+t*p.numprecinctswide,f.precinctNumber=g,f.subbandType=b.type,f.Lblock=3,!(f.tbx1_<=f.tbx0_||f.tby1_<=f.tby0_)){q.push(f);var u=r[g];void 0!==u?(du.cbxMax&&(u.cbxMax=d),eu.cbyMax&&(u.cbyMax=e)):r[g]=u={cbxMin:d,cbyMin:e,cbxMax:d,cbyMax:e},f.precinct=u}}b.codeblockParameters={codeblockWidth:h,codeblockHeight:i,numcodeblockwide:n-l+1,numcodeblockhigh:o-m+1},b.codeblocks=q,b.precincts=r}function g(a,b,c){for(var d=[],e=a.subbands,f=0,g=e.length;g>f;f++)for(var h=e[f],i=h.codeblocks,j=0,k=i.length;k>j;j++){var l=i[j];l.precinctNumber===b&&d.push(l)}return{layerNumber:c,codeblocks:d}}function h(a){for(var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=0,i=0;f>i;i++)h=Math.max(h,d.components[i].codingStyleParameters.decompositionLevelsCount);var j=0,k=0,l=0,m=0;this.nextPacket=function(){for(;e>j;j++){for(;h>=k;k++){for(;f>l;l++){var a=d.components[l];if(!(k>a.codingStyleParameters.decompositionLevelsCount)){for(var b=a.resolutions[k],c=b.precinctParameters.numprecincts;c>m;){var i=g(b,m,j);return m++,i}m=0}}l=0}k=0}}}function i(a){for(var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=0,i=0;f>i;i++)h=Math.max(h,d.components[i].codingStyleParameters.decompositionLevelsCount);var j=0,k=0,l=0,m=0;this.nextPacket=function(){for(;h>=j;j++){for(;e>k;k++){for(;f>l;l++){var a=d.components[l];if(!(j>a.codingStyleParameters.decompositionLevelsCount)){for(var b=a.resolutions[j],c=b.precinctParameters.numprecincts;c>m;){var i=g(b,m,k);return m++,i}m=0}}l=0}k=0}}}function j(a){var b,c,d,e,f=a.SIZ,h=a.currentTile.index,i=a.tiles[h],j=i.codingStyleDefaultParameters.layersCount,k=f.Csiz,l=0;for(d=0;k>d;d++){var m=i.components[d];l=Math.max(l,m.codingStyleParameters.decompositionLevelsCount)}var n=new Int32Array(l+1);for(c=0;l>=c;++c){var o=0;for(d=0;k>d;++d){var p=i.components[d].resolutions;c=c;c++){for(;ed;d++){var a=i.components[d];if(!(c>a.codingStyleParameters.decompositionLevelsCount)){var f=a.resolutions[c],h=f.precinctParameters.numprecincts;if(!(e>=h)){for(;j>b;){var m=g(f,e,b);return b++,m}b=0}}}d=0}e=0}}}function k(a){var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=n(d),i=h,j=0,k=0,l=0,o=0,p=0;this.nextPacket=function(){for(;pl;l++){for(var a=d.components[l],b=a.codingStyleParameters.decompositionLevelsCount;b>=k;k++){var c=a.resolutions[k],n=h.components[l].resolutions[k],q=m(o,p,n,i,c);if(null!==q){for(;e>j;){var r=g(c,q,j);return j++,r}j=0}}k=0}l=0}o=0}}}function l(a){var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=n(d),i=0,j=0,k=0,l=0,o=0;this.nextPacket=function(){for(;f>k;++k){for(var a=d.components[k],b=h.components[k],c=a.codingStyleParameters.decompositionLevelsCount;o=j;j++){var n=a.resolutions[j],p=b.resolutions[j],q=m(l,o,p,b,n);if(null!==q){for(;e>i;){var r=g(n,q,i);return i++,r}i=0}}j=0}l=0}o=0}}}function m(a,b,c,d,e){var f=a*d.minWidth,g=b*d.minHeight;if(f%c.width!==0||g%c.height!==0)return null;var h=g/c.width*e.precinctParameters.numprecinctswide;return f/c.height+h}function n(a){for(var b=a.components.length,c=Number.MAX_VALUE,d=Number.MAX_VALUE,e=0,f=0,g=new Array(b),h=0;b>h;h++){for(var i=a.components[h],j=i.codingStyleParameters.decompositionLevelsCount,k=new Array(j+1),l=Number.MAX_VALUE,m=Number.MAX_VALUE,n=0,o=0,p=1,q=j;q>=0;--q){var r=i.resolutions[q],s=p*r.precinctParameters.precinctWidth,t=p*r.precinctParameters.precinctHeight;l=Math.min(l,s),m=Math.min(m,t),n=Math.max(n,r.precinctParameters.numprecinctswide),o=Math.max(o,r.precinctParameters.numprecinctshigh),k[q]={width:s,height:t},p<<=1}c=Math.min(c,l),d=Math.min(d,m),e=Math.max(e,n),f=Math.max(f,o),g[h]={resolutions:k,minWidth:l,minHeight:m,maxNumWide:n,maxNumHigh:o}}return{components:g,minWidth:c,minHeight:d,maxNumWide:e,maxNumHigh:f}}function o(a){for(var b=a.SIZ,c=a.currentTile.index,g=a.tiles[c],m=b.Csiz,n=0;m>n;n++){for(var o=g.components[n],p=o.codingStyleParameters.decompositionLevelsCount,q=[],r=[],s=0;p>=s;s++){var t=d(a,o,s),u={},v=1<l;){if(c+k>=b.length)throw new Error("Unexpected EOF");var d=b[c+k];k++,m?(j=j<<7|d,l+=7,m=!1):(j=j<<8|d,l+=8),255===d&&(m=!0)}return l-=a,j>>>l&(1<a?a+3:(a=e(5),31>a?a+6:(a=e(7),a+37))}for(var j,k=0,l=0,m=!1,n=a.currentTile.index,o=a.tiles[n],p=a.COD.sopMarkerUsed,q=a.COD.ephMarkerUsed,r=o.packetsIterator;d>k;)try{h(),p&&f(145)&&g(4);var s=r.nextPacket();if(void 0===s)return;if(!e(1))continue;for(var t,u=s.layerNumber,x=[],y=0,z=s.codeblocks.length;z>y;y++){t=s.codeblocks[y];var A,B=t.precinct,C=t.cbx-B.cbxMin,D=t.cby-B.cbyMin,E=!1,F=!1;if(void 0!==t.included)E=!!e(1);else{B=t.precinct;var G,H;if(void 0!==B.inclusionTree)G=B.inclusionTree;else{var I=B.cbxMax-B.cbxMin+1,J=B.cbyMax-B.cbyMin+1;G=new w(I,J),H=new v(I,J),B.inclusionTree=G,B.zeroBitPlanesTree=H}for(G.reset(C,D,u);;){if(k>=b.length)return;if(G.isAboveThreshold())break;if(G.isKnown())G.nextLevel();else if(e(1)){if(G.setKnown(),G.isLeaf()){t.included=!0,E=F=!0;break}G.nextLevel()}else G.incrementValue()}}if(E){if(F){for(H=B.zeroBitPlanesTree,H.reset(C,D);;){if(k>=b.length)return;if(e(1)){if(A=!H.nextLevel())break}else H.incrementValue()}t.zeroBitPlanes=H.value}for(var K=i();e(1);)t.Lblock++;var L=log2(K),M=(1<K?L-1:L)+t.Lblock,N=e(M);x.push({codeblock:t,codingpasses:K,dataLength:N})}}for(h(),q&&f(146);x.length>0;){var O=x.shift();t=O.codeblock,void 0===t.data&&(t.data=[]),t.data.push({data:b,start:c+k,end:c+k+O.dataLength,codingpasses:O.codingpasses}),k+=O.dataLength}}catch(P){return}return k}function q(a,b,c,d,e,f,g,h){for(var i=d.tbx0,j=d.tby0,k=d.tbx1-d.tbx0,l=d.codeblocks,m="H"===d.type.charAt(0)?1:0,n="H"===d.type.charAt(1)?b:0,o=0,p=l.length;p>o;++o){var q=l[o],r=q.tbx1_-q.tbx0_,s=q.tby1_-q.tby0_;if(0!==r&&0!==s&&void 0!==q.data){var t,u;t=new x(r,s,q.subbandType,q.zeroBitPlanes,f),u=2;var v,w,y,z=q.data,A=0,B=0;for(v=0,w=z.length;w>v;v++)y=z[v],A+=y.end-y.start,B+=y.codingpasses;var C=new Int16Array(A),D=0;for(v=0,w=z.length;w>v;v++){y=z[v];var E=y.data.subarray(y.start,y.end);C.set(E,D),D+=E.length}var F=new ArithmeticDecoder(C,0,A);for(t.setDecoder(F),v=0;B>v;v++){switch(u){case 0:t.runSignificancePropogationPass();break;case 1:t.runMagnitudeRefinementPass();break;case 2:t.runCleanupPass(),h&&t.checkSegmentationSymbol()}u=(u+1)%3}var G,H,I,J=q.tbx0_-i+(q.tby0_-j)*k,K=t.coefficentsSign,L=t.coefficentsMagnitude,M=t.bitsDecoded,N=g?0:.5;D=0;var O="LL"!==d.type;for(v=0;s>v;v++){var P=J/k|0,Q=2*P*(b-k)+m+n;for(G=0;r>G;G++){if(H=L[D],0!==H){H=(H+N)*e,0!==K[D]&&(H=-H),I=M[D];var R=O?Q+(J<<1):J;g&&I>=f?a[R]=H:a[R]=H*(1<=r;r++){for(var s=d.resolutions[r],t=s.trx1-s.trx0,v=s.try1-s.try0,w=new Float32Array(t*v),x=0,y=s.subbands.length;y>x;x++){var B,C;i?(B=h[p].mu,C=h[p].epsilon,p++):(B=h[0].mu,C=h[0].epsilon+(r>0?1-r:0));var D=s.subbands[x],E=u[D.type],F=m?1:Math.pow(2,l+E-C)*(1+B/2048),G=j+C-1;q(w,t,v,D,F,G,m,k)}o.push({width:t,height:v,items:w})}var H=n.calculate(o,d.tcx0,d.tcy0);return{left:d.tcx0,top:d.tcy0,width:H.width,height:H.height,items:H.items}}function s(a){for(var b=a.SIZ,c=a.components,d=b.Csiz,e=[],f=0,g=a.tiles.length;g>f;f++){var h,i=a.tiles[f],j=[];for(h=0;d>h;h++)j[h]=r(a,i,h);var k=j[0],l=c[0].isSigned;if(l)var m=new Int16Array(k.items.length*d);else var m=new Uint16Array(k.items.length*d);var n,o,p,q,s,t,u,v,w,x,y,z,A,B,C,D={left:k.left,top:k.top,width:k.width,height:k.height,items:m},E=0;if(i.codingStyleDefaultParameters.multipleComponentTransform){var F=4===d,G=j[0].items,H=j[1].items,I=j[2].items,J=F?j[3].items:null;n=c[0].precision-8,o=(128<t;t++,E+=L)v=G[t]+o,w=H[t],x=I[t],z=v-(x+w>>2),y=z+x,A=z+w,m[E++]=0>=y?0:y>=p?255:y>>n,m[E++]=0>=z?0:z>=p?255:z>>n,m[E++]=0>=A?0:A>=p?255:A>>n;else for(t=0;u>t;t++,E+=L)v=G[t]+o,w=H[t],x=I[t],y=v+1.402*x,z=v-.34413*w-.71414*x,A=v+1.772*w,m[E++]=0>=y?0:y>=p?255:y>>n,m[E++]=0>=z?0:z>=p?255:z>>n,m[E++]=0>=A?0:A>=p?255:A>>n;if(F)for(t=0,E=3;u>t;t++,E+=4)B=J[t],m[E]=q>=B?0:B>=s?255:B+o>>n}else for(h=0;d>h;h++)if(8===c[h].precision){var M=j[h].items;for(n=c[h].precision-8,o=(128<t;t++)C=M[t],m[E]=q>=C?0:C>=p?255:C+o>>n,E+=d}else{var l=c[h].isSigned,M=j[h].items;if(l)for(E=h,t=0,u=M.length;u>t;t++)m[E]=M[t],E+=d;else{n=c[h].precision-8,o=(128<t;t++)C=M[t],m[E]=Math.max(Math.min(C+o,N),0),E+=d}}e.push(D)}return e}function t(a,b){for(var c=a.SIZ,d=c.Csiz,e=a.tiles[b],f=0;d>f;f++){var g=e.components[f],h=void 0!==a.currentTile.QCC[f]?a.currentTile.QCC[f]:a.currentTile.QCD;g.quantizationParameters=h;var i=void 0!==a.currentTile.COC[f]?a.currentTile.COC[f]:a.currentTile.COD;g.codingStyleParameters=i}e.codingStyleDefaultParameters=a.currentTile.COD}var u={LL:0,LH:1,HL:1,HH:2};a.prototype={parse:function(a){var b=readUint16(a,0);if(65359===b)return void this.parseCodestream(a,0,a.length);for(var c=0,d=a.length;d>c;){var e=8,f=readUint32(a,c),g=readUint32(a,c+4);if(c+=e,1===f&&(f=4294967296*readUint32(a,c)+readUint32(a,c+4),c+=8,e+=8),0===f&&(f=d-c+e),e>f)throw new Error("JPX Error: Invalid box field size");var h=f-e,i=!0;switch(g){case 1785737832:i=!1;break;case 1668246642:var j=a[c];a[c+1],a[c+2];if(1===j){var k=readUint32(a,c+3);switch(k){case 16:case 17:case 18:break;default:warn("Unknown colorspace "+k)}}else 2===j&&info("ICC profile not supported");break;case 1785737827:this.parseCodestream(a,c,c+h);break;case 1783636e3:218793738!==readUint32(a,c)&&warn("Invalid JP2 signature");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:var l=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,255&g);warn("Unsupported header type "+g+" ("+l+")")}i&&(c+=h)}},parseImageProperties:function(a){for(var b=a.getByte();b>=0;){var c=b;b=a.getByte();var d=c<<8|b;if(65361===d){a.skip(4);var e=a.getInt32()>>>0,f=a.getInt32()>>>0,g=a.getInt32()>>>0,h=a.getInt32()>>>0;a.skip(16);var i=a.getUint16();return this.width=e-g,this.height=f-h,this.componentsCount=i,void(this.bitsPerComponent=8)}}throw new Error("JPX Error: No size marker found in JPX stream")},parseCodestream:function(a,d,e){var f={};try{for(var g=!1,h=d;e>h+1;){var i=readUint16(a,h);h+=2;var j,k,l,m,n,q,r=0;switch(i){case 65359:f.mainHeader=!0;break;case 65497:break;case 65361:r=readUint16(a,h);var u={};u.Xsiz=readUint32(a,h+4),u.Ysiz=readUint32(a,h+8),u.XOsiz=readUint32(a,h+12),u.YOsiz=readUint32(a,h+16),u.XTsiz=readUint32(a,h+20),u.YTsiz=readUint32(a,h+24),u.XTOsiz=readUint32(a,h+28),u.YTOsiz=readUint32(a,h+32);var v=readUint16(a,h+36);u.Csiz=v;var w=[];j=h+38;for(var x=0;v>x;x++){var y={precision:(127&a[j])+1,isSigned:!!(128&a[j]),XRsiz:a[j+1],YRsiz:a[j+1]};b(y,u),w.push(y)}f.SIZ=u,f.components=w,c(f,w),f.QCC=[],f.COC=[];break;case 65372:r=readUint16(a,h);var z={};switch(j=h+2,k=a[j++],31&k){case 0:m=8,n=!0;break;case 1:m=16,n=!1;break;case 2:m=16,n=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+k)}for(z.noQuantization=8===m,z.scalarExpounded=n,z.guardBits=k>>5,l=[];r+h>j;){var A={};8===m?(A.epsilon=a[j++]>>3,A.mu=0):(A.epsilon=a[j]>>3,A.mu=(7&a[j])<<8|a[j+1],j+=2),l.push(A)}z.SPqcds=l,f.mainHeader?f.QCD=z:(f.currentTile.QCD=z,f.currentTile.QCC=[]);break;case 65373:r=readUint16(a,h);var B={};j=h+2;var C;switch(f.SIZ.Csiz<257?C=a[j++]:(C=readUint16(a,j),j+=2),k=a[j++],31&k){case 0:m=8,n=!0;break;case 1:m=16,n=!1;break;case 2:m=16,n=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+k)}for(B.noQuantization=8===m,B.scalarExpounded=n,B.guardBits=k>>5,l=[];r+h>j;)A={},8===m?(A.epsilon=a[j++]>>3,A.mu=0):(A.epsilon=a[j]>>3,A.mu=(7&a[j])<<8|a[j+1],j+=2),l.push(A);B.SPqcds=l,f.mainHeader?f.QCC[C]=B:f.currentTile.QCC[C]=B;break;case 65362:r=readUint16(a,h);var D={};j=h+2;var E=a[j++];D.entropyCoderWithCustomPrecincts=!!(1&E),D.sopMarkerUsed=!!(2&E),D.ephMarkerUsed=!!(4&E),D.progressionOrder=a[j++],D.layersCount=readUint16(a,j),j+=2,D.multipleComponentTransform=a[j++],D.decompositionLevelsCount=a[j++],D.xcb=(15&a[j++])+2,D.ycb=(15&a[j++])+2;var F=a[j++];if(D.selectiveArithmeticCodingBypass=!!(1&F),D.resetContextProbabilities=!!(2&F),D.terminationOnEachCodingPass=!!(4&F),D.verticalyStripe=!!(8&F),D.predictableTermination=!!(16&F),D.segmentationSymbolUsed=!!(32&F),D.reversibleTransformation=a[j++],D.entropyCoderWithCustomPrecincts){for(var G=[];r+h>j;){var H=a[j++];G.push({PPx:15&H,PPy:H>>4})}D.precinctsSizes=G}var I=[];if(D.selectiveArithmeticCodingBypass&&I.push("selectiveArithmeticCodingBypass"),D.resetContextProbabilities&&I.push("resetContextProbabilities"),D.terminationOnEachCodingPass&&I.push("terminationOnEachCodingPass"),D.verticalyStripe&&I.push("verticalyStripe"),D.predictableTermination&&I.push("predictableTermination"),I.length>0)throw g=!0,new Error("JPX Error: Unsupported COD options ("+I.join(", ")+")");f.mainHeader?f.COD=D:(f.currentTile.COD=D,f.currentTile.COC=[]);break;case 65424:r=readUint16(a,h),q={},q.index=readUint16(a,h+2),q.length=readUint32(a,h+4),q.dataEnd=q.length+h-2,q.partIndex=a[h+8],q.partsCount=a[h+9],f.mainHeader=!1,0===q.partIndex&&(q.COD=f.COD,q.COC=f.COC.slice(0),q.QCD=f.QCD,q.QCC=f.QCC.slice(0)),f.currentTile=q;break;case 65427:q=f.currentTile,0===q.partIndex&&(t(f,q.index),o(f)),r=q.dataEnd-h,p(f,a,h,r);break;case 65365:case 65367:case 65368:case 65380:r=readUint16(a,h);break;case 65363:throw new Error("JPX Error: Codestream code 0xFF53 (COC) is not implemented");default:throw new Error("JPX Error: Unknown codestream code: "+i.toString(16))}h+=r}}catch(J){if(g||this.failOnCorruptedImage)throw J;warn("Trying to recover from "+J.message)}this.tiles=s(f),this.width=f.SIZ.Xsiz-f.SIZ.XOsiz,this.height=f.SIZ.Ysiz-f.SIZ.YOsiz,this.componentsCount=f.SIZ.Csiz}};var v=function(){function a(a,b){var c=log2(Math.max(a,b))+1;this.levels=[];for(var d=0;c>d;d++){var e={width:a,height:b,items:[]};this.levels.push(e),a=Math.ceil(a/2),b=Math.ceil(b/2)}}return a.prototype={reset:function(a,b){for(var c,d=0,e=0;d>=1,b>>=1,d++}d--,c=this.levels[d],c.items[c.index]=e,this.currentLevel=d,delete this.value},incrementValue:function(){var a=this.levels[this.currentLevel];a.items[a.index]++},nextLevel:function(){var a=this.currentLevel,b=this.levels[a],c=b.items[b.index];return a--,0>a?(this.value=c,!1):(this.currentLevel=a,b=this.levels[a],b.items[b.index]=c,!0)}},a}(),w=function(){function a(a,b){var c=log2(Math.max(a,b))+1;this.levels=[];for(var d=0;c>d;d++){for(var e=new Uint8Array(a*b),f=new Uint8Array(a*b),g=0,h=e.length;h>g;g++)e[g]=0,f[g]=0;var i={width:a,height:b,items:e,status:f};this.levels.push(i),a=Math.ceil(a/2),b=Math.ceil(b/2)}}return a.prototype={reset:function(a,b,c){this.currentStopValue=c;for(var d=0;d>=1,b>>=1,d++}this.currentLevel=this.levels.length-1,this.minValue=this.levels[this.currentLevel].items[0]},incrementValue:function(){var a=this.levels[this.currentLevel];a.items[a.index]=a.items[a.index]+1,a.items[a.index]>this.minValue&&(this.minValue=a.items[a.index])},nextLevel:function(){var a=this.currentLevel;if(a--,0>a)return!1;this.currentLevel=a;var b=this.levels[a];return b.items[b.index]this.minValue&&(this.minValue=b.items[b.index]),!0},isLeaf:function(){return 0===this.currentLevel},isAboveThreshold:function(){var a=this.currentLevel,b=this.levels[a];return b.items[b.index]>this.currentStopValue},isKnown:function(){var a=this.currentLevel,b=this.levels[a];return b.status[b.index]>0},setKnown:function(){var a=this.currentLevel,b=this.levels[a];b.status[b.index]=1}},a}(),x=function(){function a(a,b,c,g,h){this.width=a,this.height=b,this.contextLabelTable="HH"===c?f:"HL"===c?e:d;var i=a*b;this.neighborsSignificance=new Uint8Array(i),this.coefficentsSign=new Uint8Array(i),this.coefficentsMagnitude=h>14?new Uint32Array(i):h>6?new Uint16Array(i):new Uint8Array(i),this.processingFlags=new Uint8Array(i);var j=new Uint8Array(i);if(0!==g)for(var k=0;i>k;k++)j[k]=g;this.bitsDecoded=j,this.reset()}var b=17,c=18,d=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]),e=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]),f=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);return a.prototype={setDecoder:function(a){this.decoder=a},reset:function(){this.contexts=new Int8Array(19),this.contexts[0]=8,this.contexts[b]=92,this.contexts[c]=6},setNeighborsSignificance:function(a,b,c){var d,e=this.neighborsSignificance,f=this.width,g=this.height,h=b>0,i=f>b+1;a>0&&(d=c-f,h&&(e[d-1]+=16),i&&(e[d+1]+=16),e[d]+=4),g>a+1&&(d=c+f,h&&(e[d-1]+=16),i&&(e[d+1]+=16),e[d]+=4),h&&(e[c-1]+=1),i&&(e[c+1]+=1),e[c]|=128},runSignificancePropogationPass:function(){for(var a=this.decoder,b=this.width,c=this.height,d=this.coefficentsMagnitude,e=this.coefficentsSign,f=this.neighborsSignificance,g=this.processingFlags,h=this.contexts,i=this.contextLabelTable,j=this.bitsDecoded,k=-2,l=1,m=2,n=0;c>n;n+=4)for(var o=0;b>o;o++)for(var p=n*b+o,q=0;4>q;q++,p+=b){var r=n+q;if(r>=c)break;if(g[p]&=k,!d[p]&&f[p]){var s=i[f[p]],t=a.readBit(h,s);if(t){var u=this.decodeSignBit(r,o,p);e[p]=u,d[p]=1,this.setNeighborsSignificance(r,o,p),g[p]|=m}j[p]++,g[p]|=l}}},decodeSignBit:function(a,b,c){var d,e,f,g,h,i,j=this.width,k=this.height,l=this.coefficentsMagnitude,m=this.coefficentsSign;g=b>0&&0!==l[c-1],j>b+1&&0!==l[c+1]?(f=m[c+1],g?(e=m[c-1],d=1-f-e):d=1-f-f):g?(e=m[c-1],d=1-e-e):d=0;var n=3*d;return g=a>0&&0!==l[c-j],k>a+1&&0!==l[c+j]?(f=m[c+j],g?(e=m[c-j],d=1-f-e+n):d=1-f-f+n):g?(e=m[c-j],d=1-e-e+n):d=n,d>=0?(h=9+d,i=this.decoder.readBit(this.contexts,h)):(h=9-d,i=1^this.decoder.readBit(this.contexts,h)),i},runMagnitudeRefinementPass:function(){for(var a,b=this.decoder,c=this.width,d=this.height,e=this.coefficentsMagnitude,f=this.neighborsSignificance,g=this.contexts,h=this.bitsDecoded,i=this.processingFlags,j=1,k=2,l=c*d,m=4*c,n=0;l>n;n=a){a=Math.min(l,n+m);for(var o=0;c>o;o++)for(var p=n+o;a>p;p+=c)if(e[p]&&0===(i[p]&j)){var q=16;if(0!==(i[p]&k)){i[p]^=k;var r=127&f[p];q=0===r?15:14}var s=b.readBit(g,q);e[p]=e[p]<<1|s,h[p]++,i[p]|=j}}},runCleanupPass:function(){for(var a,d=this.decoder,e=this.width,f=this.height,g=this.neighborsSignificance,h=this.coefficentsMagnitude,i=this.coefficentsSign,j=this.contexts,k=this.contextLabelTable,l=this.bitsDecoded,m=this.processingFlags,n=1,o=2,p=e,q=2*e,r=3*e,s=0;f>s;s=a){a=Math.min(s+4,f);for(var t=s*e,u=f>s+3,v=0;e>v;v++){var w,x=t+v,y=u&&0===m[x]&&0===m[x+p]&&0===m[x+q]&&0===m[x+r]&&0===g[x]&&0===g[x+p]&&0===g[x+q]&&0===g[x+r],z=0,A=x,B=s;if(y){var C=d.readBit(j,c);if(!C){l[x]++,l[x+p]++,l[x+q]++,l[x+r]++;continue}z=d.readBit(j,b)<<1|d.readBit(j,b),0!==z&&(B=s+z,A+=z*e),w=this.decodeSignBit(B,v,A),i[A]=w,h[A]=1,this.setNeighborsSignificance(B,v,A),m[A]|=o,A=x;for(var D=s;B>=D;D++,A+=e)l[A]++;z++}for(B=s+z;a>B;B++,A+=e)if(!h[A]&&0===(m[A]&n)){var E=k[g[A]],F=d.readBit(j,E);1===F&&(w=this.decodeSignBit(B,v,A),i[A]=w,h[A]=1,this.setNeighborsSignificance(B,v,A),m[A]|=o),l[A]++}}}},checkSegmentationSymbol:function(){var a=this.decoder,c=this.contexts,d=a.readBit(c,b)<<3|a.readBit(c,b)<<2|a.readBit(c,b)<<1|a.readBit(c,b);if(10!==d)throw new Error("JPX Error: Invalid segmentation symbol")}},a}(),y=function(){function a(){}return a.prototype.calculate=function(a,b,c){for(var d=a[0],e=1,f=a.length;f>e;e++)d=this.iterate(d,a[e],b,c);return d},a.prototype.extend=function(a,b,c){var d=b-1,e=b+1,f=b+c-2,g=b+c;a[d--]=a[e++],a[g++]=a[f--],a[d--]=a[e++],a[g++]=a[f--],a[d--]=a[e++],a[g++]=a[f--],a[d]=a[e],a[g]=a[f]},a.prototype.iterate=function(a,b,c,d){var e,f,g,h,i,j,k=a.width,l=a.height,m=a.items,n=b.width,o=b.height,p=b.items;for(g=0,e=0;l>e;e++)for(h=2*e*n,f=0;k>f;f++,g++,h+=2)p[h]=m[g];m=a.items=null;var q=4,r=new Float32Array(n+2*q);if(1===n){if(0!==(1&c))for(j=0,g=0;o>j;j++,g+=n)p[g]*=.5}else for(j=0,g=0;o>j;j++,g+=n)r.set(p.subarray(g,g+n),q),this.extend(r,q,n),this.filter(r,q,n),p.set(r.subarray(q,q+n),g);var s=16,t=[];for(e=0;s>e;e++)t.push(new Float32Array(o+2*q));var u,v=0;if(a=q+o,1===o){if(0!==(1&d))for(i=0;n>i;i++)p[i]*=.5}else for(i=0;n>i;i++){if(0===v){for(s=Math.min(n-i,s),g=i,h=q;a>h;g+=n,h++)for(u=0;s>u;u++)t[u][h]=p[g+u];v=s}v--;var w=t[v];if(this.extend(w,q,o),this.filter(w,q,o),0===v)for(g=i-s+1,h=q;a>h;g+=n,h++)for(u=0;s>u;u++)p[g+u]=t[u][h]}return{width:n,height:o,items:p}},a}(),z=function(){function a(){y.call(this)}return a.prototype=Object.create(y.prototype),a.prototype.filter=function(a,b,c){var d=c>>1;b=0|b;var e,f,g,h,i=-1.586134342059924,j=-.052980118572961,k=.882911075530934,l=.443506852043971,m=1.230174104914001,n=1/m;for(e=b-3,f=d+4;f--;e+=2)a[e]*=n;for(e=b-2,g=l*a[e-1],f=d+3;f--&&(h=l*a[e+1],a[e]=m*a[e]-g-h,f--);e+=2)e+=2,g=l*a[e+1],a[e]=m*a[e]-g-h;for(e=b-1,g=k*a[e-1],f=d+2;f--&&(h=k*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=k*a[e+1],a[e]-=g+h;for(e=b,g=j*a[e-1],f=d+1;f--&&(h=j*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=j*a[e+1],a[e]-=g+h;if(0!==d)for(e=b+1,g=i*a[e-1],f=d;f--&&(h=i*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=i*a[e+1],a[e]-=g+h},a}(),A=function(){function a(){y.call(this)}return a.prototype=Object.create(y.prototype),a.prototype.filter=function(a,b,c){var d=c>>1;b=0|b;var e,f;for(e=b,f=d+1;f--;e+=2)a[e]-=a[e-1]+a[e+1]+2>>2;for(e=b+1,f=d;f--;e+=2)a[e]+=a[e-1]+a[e+1]>>1},a}();return a}(),ArithmeticDecoder=function(){function a(a,b,c){this.data=a,this.bp=b,this.dataEnd=c,this.chigh=a[b],this.clow=0,this.byteIn(),this.chigh=this.chigh<<7&65535|this.clow>>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}var b=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{ +qe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];return a.prototype={byteIn:function(){var a=this.data,b=this.bp;if(255===a[b]){var c=a[b+1];c>143?(this.clow+=65280,this.ct=8):(b++,this.clow+=a[b]<<9,this.ct=7,this.bp=b)}else b++,this.clow+=b65535&&(this.chigh+=this.clow>>16,this.clow&=65535)},readBit:function(a,c){var d,e=a[c]>>1,f=1&a[c],g=b[e],h=g.qe,i=this.a-h;if(this.chighi?(i=h,d=f,e=g.nmps):(i=h,d=1^f,1===g.switchFlag&&(f=d),e=g.nlps);else{if(this.chigh-=h,0!==(32768&i))return this.a=i,f;h>i?(d=1^f,1===g.switchFlag&&(f=d),e=g.nlps):(d=f,e=g.nmps)}do 0===this.ct&&this.byteIn(),i<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--;while(0===(32768&i));return this.a=i,a[c]=e<<1|f,d}},a}(),globalScope="undefined"==typeof window?this:window,isWorker="undefined"==typeof window,FONT_IDENTITY_MATRIX=[.001,0,0,.001,0,0],TextRenderingMode={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4},ImageKind={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3},AnnotationType={WIDGET:1,TEXT:2,LINK:3},StreamType={UNKNOWN:0,FLATE:1,LZW:2,DCT:3,JPX:4,JBIG:5,A85:6,AHX:7,CCF:8,RL:9},FontType={UNKNOWN:0,TYPE1:1,TYPE1C:2,CIDFONTTYPE0:3,CIDFONTTYPE0C:4,TRUETYPE:5,CIDFONTTYPE2:6,TYPE3:7,OPENTYPE:8,TYPE0:9,MMTYPE1:10};globalScope.PDFJS||(globalScope.PDFJS={}),globalScope.PDFJS.pdfBug=!1,PDFJS.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var OPS=PDFJS.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},UNSUPPORTED_FEATURES=PDFJS.UNSUPPORTED_FEATURES={unknown:"unknown",forms:"forms",javaScript:"javaScript",smask:"smask",shadingPattern:"shadingPattern",font:"font"},UnsupportedManager=PDFJS.UnsupportedManager=function(){var a=[];return{listen:function(b){a.push(b)},notify:function(b){warn('Unsupported feature "'+b+'"');for(var c=0,d=a.length;d>c;c++)a[c](b)}}}();PDFJS.isValidUrl=isValidUrl,PDFJS.shadow=shadow;var PasswordResponses=PDFJS.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2},PasswordException=function(){function a(a,b){this.name="PasswordException",this.message=a,this.code=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.PasswordException=PasswordException;var UnknownErrorException=function(){function a(a,b){this.name="UnknownErrorException",this.message=a,this.details=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.UnknownErrorException=UnknownErrorException;var InvalidPDFException=function(){function a(a){this.name="InvalidPDFException",this.message=a}return a.prototype=new Error,a.constructor=a,a}();PDFJS.InvalidPDFException=InvalidPDFException;var MissingPDFException=function(){function a(a){this.name="MissingPDFException",this.message=a}return a.prototype=new Error,a.constructor=a,a}();PDFJS.MissingPDFException=MissingPDFException;var UnexpectedResponseException=function(){function a(a,b){this.name="UnexpectedResponseException",this.message=a,this.status=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.UnexpectedResponseException=UnexpectedResponseException;var NotImplementedException=function(){function a(a){this.message=a}return a.prototype=new Error,a.prototype.name="NotImplementedException",a.constructor=a,a}(),MissingDataException=function(){function a(a,b){this.begin=a,this.end=b,this.message="Missing data ["+a+", "+b+")"}return a.prototype=new Error,a.prototype.name="MissingDataException",a.constructor=a,a}(),XRefParseException=function(){function a(a){this.message=a}return a.prototype=new Error,a.prototype.name="XRefParseException",a.constructor=a,a}();Object.defineProperty(PDFJS,"isLittleEndian",{configurable:!0,get:function(){return shadow(PDFJS,"isLittleEndian",isLittleEndian())}}),Object.defineProperty(PDFJS,"hasCanvasTypedArrays",{configurable:!0,get:function(){return shadow(PDFJS,"hasCanvasTypedArrays",hasCanvasTypedArrays())}});var Uint32ArrayView=function(){function a(a,b){this.buffer=a,this.byteLength=a.length,this.length=void 0===b?this.byteLength>>2:b,c(this.length)}function b(a){return{get:function(){var b=this.buffer,c=a<<2;return(b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24)>>>0},set:function(b){var c=this.buffer,d=a<<2;c[d]=255&b,c[d+1]=b>>8&255,c[d+2]=b>>16&255,c[d+3]=b>>>24&255}}}function c(c){for(;c>d;)Object.defineProperty(a.prototype,d,b(d)),d++}a.prototype=Object.create(null);var d=0;return a}(),IDENTITY_MATRIX=[1,0,0,1,0,0],Util=PDFJS.Util=function(){function a(){}var b=["rgb(",0,",",0,",",0,")"];return a.makeCssRgb=function(a,c,d){return b[1]=a,b[3]=c,b[5]=d,b.join("")},a.transform=function(a,b){return[a[0]*b[0]+a[2]*b[1],a[1]*b[0]+a[3]*b[1],a[0]*b[2]+a[2]*b[3],a[1]*b[2]+a[3]*b[3],a[0]*b[4]+a[2]*b[5]+a[4],a[1]*b[4]+a[3]*b[5]+a[5]]},a.applyTransform=function(a,b){var c=a[0]*b[0]+a[1]*b[2]+b[4],d=a[0]*b[1]+a[1]*b[3]+b[5];return[c,d]},a.applyInverseTransform=function(a,b){var c=b[0]*b[3]-b[1]*b[2],d=(a[0]*b[3]-a[1]*b[2]+b[2]*b[5]-b[4]*b[3])/c,e=(-a[0]*b[1]+a[1]*b[0]+b[4]*b[1]-b[5]*b[0])/c;return[d,e]},a.getAxialAlignedBoundingBox=function(b,c){var d=a.applyTransform(b,c),e=a.applyTransform(b.slice(2,4),c),f=a.applyTransform([b[0],b[3]],c),g=a.applyTransform([b[2],b[1]],c);return[Math.min(d[0],e[0],f[0],g[0]),Math.min(d[1],e[1],f[1],g[1]),Math.max(d[0],e[0],f[0],g[0]),Math.max(d[1],e[1],f[1],g[1])]},a.inverseTransform=function(a){var b=a[0]*a[3]-a[1]*a[2];return[a[3]/b,-a[1]/b,-a[2]/b,a[0]/b,(a[2]*a[5]-a[4]*a[3])/b,(a[4]*a[1]-a[5]*a[0])/b]},a.apply3dTransform=function(a,b){return[a[0]*b[0]+a[1]*b[1]+a[2]*b[2],a[3]*b[0]+a[4]*b[1]+a[5]*b[2],a[6]*b[0]+a[7]*b[1]+a[8]*b[2]]},a.singularValueDecompose2dScale=function(a){var b=[a[0],a[2],a[1],a[3]],c=a[0]*b[0]+a[1]*b[2],d=a[0]*b[1]+a[1]*b[3],e=a[2]*b[0]+a[3]*b[2],f=a[2]*b[1]+a[3]*b[3],g=(c+f)/2,h=Math.sqrt((c+f)*(c+f)-4*(c*f-e*d))/2,i=g+h||1,j=g-h||1;return[Math.sqrt(i),Math.sqrt(j)]},a.normalizeRect=function(a){var b=a.slice(0);return a[0]>a[2]&&(b[0]=a[2],b[2]=a[0]),a[1]>a[3]&&(b[1]=a[3],b[3]=a[1]),b},a.intersect=function(b,c){function d(a,b){return a-b}var e=[b[0],b[2],c[0],c[2]].sort(d),f=[b[1],b[3],c[1],c[3]].sort(d),g=[];return b=a.normalizeRect(b),c=a.normalizeRect(c),e[0]===b[0]&&e[1]===c[0]||e[0]===c[0]&&e[1]===b[0]?(g[0]=e[1],g[2]=e[2],f[0]===b[1]&&f[1]===c[1]||f[0]===c[1]&&f[1]===b[1]?(g[1]=f[1],g[3]=f[2],g):!1):!1},a.sign=function(a){return 0>a?-1:1},a.appendToArray=function(a,b){Array.prototype.push.apply(a,b)},a.prependToArray=function(a,b){Array.prototype.unshift.apply(a,b)},a.extendObj=function(a,b){for(var c in b)a[c]=b[c]},a.getInheritableProperty=function(a,b){for(;a&&!a.has(b);)a=a.get("Parent");return a?a.get(b):null},a.inherit=function(a,b,c){a.prototype=Object.create(b.prototype),a.prototype.constructor=a;for(var d in c)a.prototype[d]=c[d]},a.loadScript=function(a,b){var c=document.createElement("script"),d=!1;c.setAttribute("src",a),b&&(c.onload=function(){d||b(),d=!0}),document.getElementsByTagName("head")[0].appendChild(c)},a}(),PageViewport=PDFJS.PageViewport=function(){function a(a,b,c,d,e,f){this.viewBox=a,this.scale=b,this.rotation=c,this.offsetX=d,this.offsetY=e;var g,h,i,j,k=(a[2]+a[0])/2,l=(a[3]+a[1])/2;switch(c%=360,c=0>c?c+360:c){case 180:g=-1,h=0,i=0,j=1;break;case 90:g=0,h=1,i=1,j=0;break;case 270:g=0,h=-1,i=-1,j=0;break;default:g=1,h=0,i=0,j=-1}f&&(i=-i,j=-j);var m,n,o,p;0===g?(m=Math.abs(l-a[1])*b+d,n=Math.abs(k-a[0])*b+e,o=Math.abs(a[3]-a[1])*b,p=Math.abs(a[2]-a[0])*b):(m=Math.abs(k-a[0])*b+d,n=Math.abs(l-a[1])*b+e,o=Math.abs(a[2]-a[0])*b,p=Math.abs(a[3]-a[1])*b),this.transform=[g*b,h*b,i*b,j*b,m-g*b*k-i*b*l,n-h*b*k-j*b*l],this.width=o,this.height=p,this.fontScale=b}return a.prototype={clone:function(b){b=b||{};var c="scale"in b?b.scale:this.scale,d="rotation"in b?b.rotation:this.rotation;return new a(this.viewBox.slice(),c,d,this.offsetX,this.offsetY,b.dontFlip)},convertToViewportPoint:function(a,b){return Util.applyTransform([a,b],this.transform)},convertToViewportRectangle:function(a){var b=Util.applyTransform([a[0],a[1]],this.transform),c=Util.applyTransform([a[2],a[3]],this.transform);return[b[0],b[1],c[0],c[1]]},convertToPdfPoint:function(a,b){return Util.applyInverseTransform([a,b],this.transform)}},a}(),PDFStringTranslateTable=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364];PDFJS.createPromiseCapability=createPromiseCapability,function(){function a(a){this._status=b,this._handlers=[];try{a.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(c){this._reject(c)}}if(globalScope.Promise)return"function"!=typeof globalScope.Promise.all&&(globalScope.Promise.all=function(a){var b,c,d=0,e=[],f=new globalScope.Promise(function(a,d){b=a,c=d});return a.forEach(function(a,f){d++,a.then(function(a){e[f]=a,d--,0===d&&b(e)},c)}),0===d&&b(e),f}),"function"!=typeof globalScope.Promise.resolve&&(globalScope.Promise.resolve=function(a){return new globalScope.Promise(function(b){b(a)})}),"function"!=typeof globalScope.Promise.reject&&(globalScope.Promise.reject=function(a){return new globalScope.Promise(function(b,c){c(a)})}),void("function"!=typeof globalScope.Promise.prototype["catch"]&&(globalScope.Promise.prototype["catch"]=function(a){return globalScope.Promise.prototype.then(void 0,a)}));var b=0,c=1,d=2,e=500,f={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(a){a._status!==b&&(this.handlers=this.handlers.concat(a._handlers),a._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var a=1,b=Date.now()+a;this.handlers.length>0;){var e=this.handlers.shift(),f=e.thisPromise._status,g=e.thisPromise._value;try{f===c?"function"==typeof e.onResolve&&(g=e.onResolve(g)):"function"==typeof e.onReject&&(g=e.onReject(g),f=c,e.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(e.thisPromise))}catch(h){f=d,g=h}if(e.nextPromise._updateStatus(f,g),Date.now()>=b)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(a){this.unhandledRejections.push({promise:a,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(a){a._unhandledRejection=!1;for(var b=0;be){var c=this.unhandledRejections[b].promise._value,d="Unhandled rejection: "+c;c.stack&&(d+="\n"+c.stack),warn(d),this.unhandledRejections.splice(b),b--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),e))}};a.all=function(b){function c(a){g._status!==d&&(i=[],f(a))}var e,f,g=new a(function(a,b){e=a,f=b}),h=b.length,i=[];if(0===h)return e(i),g;for(var j=0,k=b.length;k>j;++j){var l=b[j],m=function(a){return function(b){g._status!==d&&(i[a]=b,h--,0===h&&e(i))}}(j);a.isPromise(l)?l.then(m,c):m(l)}return g},a.isPromise=function(a){return a&&"function"==typeof a.then},a.resolve=function(b){return new a(function(a){a(b)})},a.reject=function(b){return new a(function(a,c){c(b)})},a.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(b,e){if(this._status!==c&&this._status!==d){if(b===c&&a.isPromise(e))return void e.then(this._updateStatus.bind(this,c),this._updateStatus.bind(this,d));this._status=b,this._value=e,b===d&&0===this._handlers.length&&(this._unhandledRejection=!0,f.addUnhandledRejection(this)),f.scheduleHandlers(this)}},_resolve:function(a){this._updateStatus(c,a)},_reject:function(a){this._updateStatus(d,a)},then:function(b,c){var d=new a(function(a,b){this.resolve=a,this.reject=b});return this._handlers.push({thisPromise:this,onResolve:b,onReject:c,nextPromise:d}),f.scheduleHandlers(this),d},"catch":function(a){return this.then(void 0,a)}},globalScope.Promise=a}();var StatTimer=function(){function a(a,b,c){for(;a.lengthb;++b){var g=d[b].name;g.length>f&&(f=g.length)}for(b=0,c=d.length;c>b;++b){var h=d[b],i=h.end-h.start;e+=a(h.name," ",f)+" "+i+"ms\n"}return e}},b}();PDFJS.createBlob=function(a,b){if("undefined"!=typeof Blob)return new Blob([a],{type:b});var c=new MozBlobBuilder;return c.append(a),c.getBlob(b)},PDFJS.createObjectURL=function(){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function(b,c){if(!PDFJS.disableCreateObjectURL&&"undefined"!=typeof URL&&URL.createObjectURL){var d=PDFJS.createBlob(b,c);return URL.createObjectURL(d)}for(var e="data:"+c+";base64,",f=0,g=b.length;g>f;f+=3){var h=255&b[f],i=255&b[f+1],j=255&b[f+2],k=h>>2,l=(3&h)<<4|i>>4,m=g>f+1?(15&i)<<2|j>>6:64,n=g>f+2?63&j:64;e+=a[k]+a[l]+a[m]+a[n]}return e}}(),MessageHandler.prototype={on:function(a,b,c){var d=this.actionHandler;d[a]&&error('There is already an actionName called "'+a+'"'),d[a]=[b,c]},send:function(a,b,c){var d={action:a,data:b};this.postMessage(d,c)},sendWithPromise:function(a,b,c){var d=this.callbackIndex++,e={action:a,data:b,callbackId:d},f=createPromiseCapability();this.callbacksCapabilities[d]=f;try{this.postMessage(e,c)}catch(g){f.reject(g)}return f.promise},postMessage:function(a,b){b&&this.postMessageTransfers?this.comObj.postMessage(a,b):this.comObj.postMessage(a)}}; + + +/*** EXPORTS FROM exports-loader ***/ +module.exports = JpxImage; + +/***/ }), + +/***/ "../codecs/openJPEG-FixedMemory.js": +/*!*****************************************!*\ + !*** ../codecs/openJPEG-FixedMemory.js ***! + \*****************************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +/*! OpenJPEG.js - v0.2.0 - 2016-06-07 | (c) 2016 Chris Hafey | https://github.com/chafey/openjpeg */ + +// Notes: +// - Had to add export default at the bottom +// - Had to patch parsejsfunc, see https://github.com/svaarala/duktape/issues/410 +var OpenJPEG = function(Module) { + Module = Module || {}; + +var Module;if(!Module)Module=(typeof OpenJPEG!=="undefined"?OpenJPEG:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=require("fs");var nodePath=require("path");Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a"}else{ret=name}paramLoop:while(i0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||4e8;var totalMemory=64*1024;while(totalMemory0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+25664;__ATINIT__.push();allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}Module["_i64Subtract"]=_i64Subtract;var _floorf=Math_floor;Module["_bitshift64Ashr"]=_bitshift64Ashr;var _SItoF=true;Module["_memset"]=_memset;var _BDtoILow=true;var _ceilf=Math_ceil;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function ___lock(){}function ___unlock(){}Module["_i64Add"]=_i64Add;var _floor=Math_floor;var _sqrt=Math_sqrt;var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"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.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.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!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module["_bitshift64Lshr"]=_bitshift64Lshr;var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}var _BItoD=true;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE>2]=d;if((c[a+8>>2]|0)==16)k=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else k=c[a+12>>2]|0;g=(c[a+80>>2]|0)+16|0;h=(c[g>>2]|0)>>>0<257?1:2;j=h+1|0;if(j>>>0>d>>>0){Ub(e,1,14585,m)|0;e=0;i=m;return e|0}c[f>>2]=d-j;qb(b,l,h);d=c[l>>2]|0;if(d>>>0>=(c[g>>2]|0)>>>0){Ub(e,1,14611,m+8|0)|0;e=0;i=m;return e|0}qb(b+h|0,(c[k+5584>>2]|0)+(d*1080|0)|0,1);if(!(Fe(a,c[l>>2]|0,b+j|0,f,e)|0)){Ub(e,1,14585,m+16|0)|0;e=0;i=m;return e|0}if(!(c[f>>2]|0)){e=1;i=m;return e|0}Ub(e,1,14585,m+24|0)|0;e=0;i=m;return e|0}function ge(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k+8|0;f=k+20|0;h=c[(c[a+80>>2]|0)+16>>2]|0;g=h>>>0<257?1:2;if((g+2|0)!=(d|0)){Ub(e,1,14502,k)|0;j=0;i=k;return j|0}if((c[a+8>>2]|0)==16)a=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else a=c[a+12>>2]|0;qb(b,f,g);qb(b+g|0,k+16|0,1);d=c[f>>2]|0;if(d>>>0>>0){qb(b+(g+1)|0,(c[a+5584>>2]|0)+(d*1080|0)+808|0,1);j=1;i=k;return j|0}else{c[j>>2]=d;c[j+4>>2]=h;Ub(e,1,14528,j)|0;j=0;i=k;return j|0}return 0}function he(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+16|0;f=h+12|0;c[f>>2]=d;if(!(Ee(a,0,b,f,e)|0)){Ub(e,1,14476,h)|0;g=0;i=h;return g|0}if(c[f>>2]|0){Ub(e,1,14476,h+8|0)|0;g=0;i=h;return g|0}if((c[a+8>>2]|0)==16)f=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else f=c[a+12>>2]|0;f=c[f+5584>>2]|0;d=a+80|0;if((c[(c[d>>2]|0)+16>>2]|0)>>>0<=1){g=1;i=h;return g|0}e=f+24|0;a=f+804|0;g=f+28|0;b=1;while(1){c[f+1104>>2]=c[e>>2];c[f+1884>>2]=c[a>>2];Ui(f+1108|0,g|0,776)|0;b=b+1|0;if(b>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){f=1;break}else f=f+1080|0}i=h;return f|0}function ie(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+32|0;m=o+24|0;l=o+16|0;g=o+8|0;f=o;k=o+40|0;h=o+36|0;c[k>>2]=d;j=a+80|0;do if((c[(c[j>>2]|0)+16>>2]|0)>>>0<257){if(d){qb(b,h,1);g=b+1|0;b=d+-1|0;break}Ub(e,1,14129,f)|0;n=0;i=o;return n|0}else{if(d>>>0>=2){qb(b,h,2);g=b+2|0;b=d+-2|0;break}Ub(e,1,14129,g)|0;n=0;i=o;return n|0}while(0);c[k>>2]=b;f=c[h>>2]|0;b=c[(c[j>>2]|0)+16>>2]|0;if(f>>>0>=b>>>0){c[l>>2]=f;c[l+4>>2]=b;Ub(e,1,14155,l)|0;n=0;i=o;return n|0}if(!(Ee(a,f,g,k,e)|0)){Ub(e,1,14129,m)|0;n=0;i=o;return n|0}if(!(c[k>>2]|0)){n=1;i=o;return n|0}Ub(e,1,14129,n)|0;n=0;i=o;return n|0}function je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+16|0;h=t+8|0;s=t+12|0;r=c[(c[b+80>>2]|0)+16>>2]|0;q=r>>>0<257?1:2;p=(q<<1)+5|0;g=(e>>>0)/(p>>>0)|0;if((g|0)==0|((e>>>0)%(p>>>0)|0|0)!=0){Ub(f,1,14085,t)|0;s=0;i=t;return s|0}if((c[b+8>>2]|0)==16)p=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else p=c[b+12>>2]|0;e=p+5636|0;b=a[e>>0]|0;if(!(b&4))o=0;else o=(c[p+420>>2]|0)+1|0;n=o+g|0;if(n>>>0>31){c[h>>2]=n;Ub(f,1,14111,h)|0;s=0;i=t;return s|0}a[e>>0]=b|4;if(o>>>0>>0){f=q+1|0;m=p+8|0;h=q+3|0;j=q|4;k=j+q|0;l=k+1|0;b=d;g=o;e=p+424+(o*148|0)|0;while(1){qb(b,e,1);qb(b+1|0,e+4|0,q);d=e+8|0;qb(b+f|0,d,2);u=c[d>>2]|0;o=c[m>>2]|0;c[d>>2]=u>>>0>>0?u:o;qb(b+h|0,e+12|0,1);d=e+16|0;qb(b+j|0,d,q);qb(b+k|0,s,1);c[e+36>>2]=c[s>>2];o=c[d>>2]|0;c[d>>2]=o>>>0>>0?o:r;g=g+1|0;if(g>>>0>=n>>>0)break;else{b=b+l|0;e=e+148|0}}}c[p+420>>2]=n+-1;u=1;i=t;return u|0}function ke(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+144|0;L=M+128|0;H=M+120|0;G=M+112|0;F=M+104|0;E=M+96|0;D=M+88|0;A=M+72|0;t=M+64|0;r=M+56|0;q=M+48|0;p=M+40|0;s=M+32|0;l=M+24|0;j=M+16|0;h=M+136|0;w=M+132|0;J=c[d+80>>2]|0;K=d+88|0;if(f>>>0<36){Ub(g,1,13440,M)|0;g=0;i=M;return g|0}I=f+-36|0;o=(I>>>0)/3|0;if((I>>>0)%3|0){Ub(g,1,13440,M+8|0)|0;g=0;i=M;return g|0}qb(e,h,2);b[K>>1]=c[h>>2];x=J+8|0;qb(e+2|0,x,4);B=J+12|0;qb(e+6|0,B,4);qb(e+10|0,J,4);n=J+4|0;qb(e+14|0,n,4);v=d+100|0;qb(e+18|0,v,4);z=d+104|0;qb(e+22|0,z,4);u=d+92|0;qb(e+26|0,u,4);y=d+96|0;qb(e+30|0,y,4);qb(e+34|0,h,2);k=e+36|0;f=c[h>>2]|0;if(f>>>0>=16385){c[j>>2]=f;Ub(g,1,13468,j)|0;g=0;i=M;return g|0}f=f&65535;I=J+16|0;c[I>>2]=f;if((f|0)!=(o|0)){c[l>>2]=f;c[l+4>>2]=o;Ub(g,1,13529,l)|0;g=0;i=M;return g|0}l=c[J>>2]|0;m=c[x>>2]|0;if(m>>>0>l>>>0){f=c[n>>2]|0;e=c[B>>2]|0;if(f>>>0>>0){h=c[v>>2]|0;j=c[z>>2]|0;if(!(_(j,h)|0)){c[p>>2]=h;c[p+4>>2]=j;Ub(g,1,13705,p)|0;g=0;i=M;return g|0}s=Zi(e|0,0,m|0,0)|0;if(!((s|0)==(_(e,m)|0)&(C|0)==0)){c[q>>2]=m;c[q+4>>2]=e;Ub(g,1,13766,q)|0;g=0;i=M;return g|0}m=c[u>>2]|0;p=Si(m|0,0,h|0,0)|0;q=C;n=c[y>>2]|0;s=Si(n|0,0,j|0,0)|0;if(m>>>0<=l>>>0?n>>>0<=f>>>0&(p|0-q)>>>0>l>>>0&(s|0-C)>>>0>f>>>0:0){e=Qc(o,52)|0;o=J+24|0;c[o>>2]=e;if(!e){c[I>>2]=0;Ub(g,1,13852,t)|0;g=0;i=M;return g|0}a:do if(c[I>>2]|0){l=d+168|0;f=0;j=e;while(1){qb(k,w,1);c[j+24>>2]=(c[w>>2]&127)+1;c[j+32>>2]=(c[w>>2]|0)>>>7;qb(k+1|0,w,1);c[j>>2]=c[w>>2];qb(k+2|0,w,1);h=c[w>>2]|0;c[j+4>>2]=h;e=c[j>>2]|0;if((h+-1|0)>>>0>254|(e+-1|0)>>>0>254)break;c[j+36>>2]=0;c[j+40>>2]=c[l>>2];f=f+1|0;if(f>>>0>=(c[I>>2]|0)>>>0)break a;else{k=k+3|0;j=j+52|0}}c[A>>2]=f;c[A+4>>2]=e;c[A+8>>2]=h;Ub(g,1,13900,A)|0;g=0;i=M;return g|0}while(0);m=c[u>>2]|0;l=c[v>>2]|0;k=((c[x>>2]|0)+-1-m+l|0)/(l|0)|0;c[d+112>>2]=k;j=c[y>>2]|0;h=c[z>>2]|0;e=((c[B>>2]|0)+-1-j+h|0)/(h|0)|0;c[d+116>>2]=e;if(!((e|0)==0|(k|0)==0)?k>>>0<=(65535/(e>>>0)|0)>>>0:0){n=_(k,e)|0;f=d+28|0;if(!(a[d+76>>0]&2)){c[f>>2]=0;c[d+32>>2]=0;c[d+36>>2]=k;c[d+40>>2]=e}else{c[f>>2]=(((c[f>>2]|0)-m|0)>>>0)/(l>>>0)|0;D=d+32|0;c[D>>2]=(((c[D>>2]|0)-j|0)>>>0)/(h>>>0)|0;D=d+36|0;c[D>>2]=((c[D>>2]|0)+-1-m+l|0)/(l|0)|0;D=d+40|0;c[D>>2]=((c[D>>2]|0)+-1-j+h|0)/(h|0)|0}D=Qc(n,5640)|0;k=d+164|0;c[k>>2]=D;if(!D){Ub(g,1,13852,E)|0;g=0;i=M;return g|0}E=Qc(c[I>>2]|0,1080)|0;e=d+12|0;c[(c[e>>2]|0)+5584>>2]=E;if(!E){Ub(g,1,13852,F)|0;g=0;i=M;return g|0}F=Qc(10,20)|0;f=c[e>>2]|0;c[f+5612>>2]=F;if(!F){Ub(g,1,13852,G)|0;g=0;i=M;return g|0}c[f+5620>>2]=10;G=Qc(10,20)|0;f=c[e>>2]|0;c[f+5624>>2]=G;if(!G){Ub(g,1,13852,H)|0;g=0;i=M;return g|0}c[f+5632>>2]=10;j=c[I>>2]|0;if(j){h=c[o>>2]|0;f=f+5584|0;e=0;do{if(!(c[h+(e*52|0)+32>>2]|0))c[(c[f>>2]|0)+(e*1080|0)+1076>>2]=1<<(c[h+(e*52|0)+24>>2]|0)+-1;e=e+1|0}while(e>>>0>>0)}b:do if(n){f=c[k>>2]|0;H=Qc(j,1080)|0;c[f+5584>>2]=H;if(H){e=0;while(1){e=e+1|0;if(e>>>0>=n>>>0)break b;H=Qc(c[I>>2]|0,1080)|0;c[f+11224>>2]=H;if(!H)break;else f=f+5640|0}}Ub(g,1,13852,L)|0;g=0;i=M;return g|0}while(0);c[d+8>>2]=4;_b(J,K);g=1;i=M;return g|0}c[D>>2]=k;c[D+4>>2]=e;Ub(g,1,14002,D)|0;g=0;i=M;return g|0}Ub(g,1,13808,r)|0;g=0;i=M;return g|0}}else{e=c[B>>2]|0;f=c[n>>2]|0}c[s>>2]=m-l;c[s+4>>2]=e-f;Ub(g,1,13643,s)|0;g=0;i=M;return g|0}function le(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+32|0;a=f+12|0;if(d>>>0<2){Ub(e,1,13414,f)|0;e=0;i=f;return e|0}qb(b,f+16|0,1);qb(b+1|0,a,1);b=c[a>>2]|0;if(!(((d+-2|0)>>>0)%(((b>>>5&2)+2+(b>>>4&3)|0)>>>0)|0)){e=1;i=f;return e|0}Ub(e,1,13414,f+8|0)|0;e=0;i=f;return e|0}function me(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=i;i=i+16|0;if(!c){Ub(d,1,13388,a)|0;b=0}else b=1;i=a;return b|0}function ne(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k+8|0;h=k+12|0;if(!d){Ub(e,1,13362,k)|0;e=0;i=k;return e|0}qb(b,k+16|0,1);f=d+-1|0;if(!f){e=1;i=k;return e|0}else{g=0;a=0}do{b=b+1|0;qb(b,h,1);d=c[h>>2]|0;if(!(d&128))a=0;else a=(d&127|a)<<7;g=g+1|0}while((g|0)!=(f|0));if(!a){e=1;i=k;return e|0}Ub(e,1,13362,j)|0;e=0;i=k;return e|0}function oe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+32|0;l=p+24|0;h=p+16|0;g=p+8|0;n=p+36|0;if(e>>>0<2){Ub(f,1,13276,p)|0;o=0;i=p;return o|0}m=b+184|0;a[m>>0]=a[m>>0]|1;qb(d,n,1);m=d+1|0;k=e+-1|0;j=b+124|0;e=c[j>>2]|0;do if(e){g=b+120|0;d=c[n>>2]|0;if((c[g>>2]|0)>>>0<=d>>>0){b=d+1|0;d=Tc(e,b<<3)|0;if(d){c[j>>2]=d;e=c[g>>2]|0;Qi(d+(e<<3)|0,0,b-e<<3|0)|0;c[g>>2]=b;e=c[j>>2]|0;break}Ub(f,1,13302,h)|0;o=0;i=p;return o|0}}else{d=(c[n>>2]|0)+1|0;e=Qc(d,8)|0;c[j>>2]=e;if(e){c[b+120>>2]=d;break}Ub(f,1,13302,g)|0;o=0;i=p;return o|0}while(0);d=c[n>>2]|0;if(c[e+(d<<3)>>2]|0){c[l>>2]=d;Ub(f,1,13340,l)|0;o=0;i=p;return o|0}l=Pc(k)|0;e=c[n>>2]|0;d=c[j>>2]|0;c[d+(e<<3)>>2]=l;if(!l){Ub(f,1,13302,o)|0;o=0;i=p;return o|0}else{c[d+(e<<3)+4>>2]=k;Ui(c[d+(c[n>>2]<<3)>>2]|0,m|0,k|0)|0;o=1;i=p;return o|0}return 0}function pe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+40|0;o=r+32|0;k=r+24|0;j=r+16|0;p=r+44|0;if(e>>>0<2){Ub(f,1,13127,r)|0;q=0;i=r;return q|0}if(a[b+184>>0]&1){Ub(f,1,13153,r+8|0)|0;q=0;i=r;return q|0}h=c[b+200>>2]|0;g=c[b+164>>2]|0;n=g+(h*5640|0)+5636|0;a[n>>0]=a[n>>0]|2;qb(d,p,1);n=d+1|0;m=e+-1|0;l=g+(h*5640|0)+5164|0;d=c[l>>2]|0;do if(d){g=g+(h*5640|0)+5160|0;b=c[p>>2]|0;if((c[g>>2]|0)>>>0<=b>>>0){e=b+1|0;b=Tc(d,e<<3)|0;if(b){c[l>>2]=b;d=c[g>>2]|0;Qi(b+(d<<3)|0,0,e-d<<3|0)|0;c[g>>2]=e;d=c[l>>2]|0;break}Ub(f,1,8775,k)|0;q=0;i=r;return q|0}}else{b=(c[p>>2]|0)+1|0;d=Qc(b,8)|0;c[l>>2]=d;if(d){c[g+(h*5640|0)+5160>>2]=b;break}Ub(f,1,8775,j)|0;q=0;i=r;return q|0}while(0);b=c[p>>2]|0;if(c[d+(b<<3)>>2]|0){c[o>>2]=b;Ub(f,1,13254,o)|0;q=0;i=r;return q|0}o=Pc(m)|0;d=c[p>>2]|0;b=c[l>>2]|0;c[b+(d<<3)>>2]=o;if(!o){Ub(f,1,8775,q)|0;q=0;i=r;return q|0}else{c[b+(d<<3)+4>>2]=m;Ui(c[b+(c[p>>2]<<3)>>2]|0,n|0,m|0)|0;q=1;i=r;return q|0}return 0}function qe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=i;i=i+16|0;if((c[(c[a+80>>2]|0)+16>>2]<<2|0)==(d|0)){e=1;i=b;return e|0}Ub(e,1,13101,b)|0;e=0;i=b;return e|0}function re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 1}function se(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;q=s+32|0;l=s+24|0;p=s+44|0;if((c[a+8>>2]|0)==16)j=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else j=c[a+12>>2]|0;if(d>>>0<2){Ub(e,1,12933,s)|0;r=0;i=s;return r|0}qb(b,p,2);if(c[p>>2]|0){Ub(e,2,12959,s+8|0)|0;r=1;i=s;return r|0}if(d>>>0<7){Ub(e,1,12933,s+16|0)|0;r=0;i=s;return r|0}qb(b+2|0,p,2);n=b+4|0;o=c[p>>2]&255;k=j+5612|0;f=c[k>>2]|0;m=j+5616|0;a=c[m>>2]|0;a:do if(!a){g=0;h=f}else{g=0;h=f;do{if((c[h+8>>2]|0)==(o|0))break a;h=h+20|0;g=g+1|0}while(g>>>0>>0)}while(0);if((g|0)==(a|0)){g=j+5620|0;do if((a|0)==(c[g>>2]|0)){a=a+10|0;c[g>>2]=a;a=Tc(f,a*20|0)|0;if(a){c[k>>2]=a;f=c[m>>2]|0;Qi(a+(f*20|0)|0,0,((c[g>>2]|0)-f|0)*20|0)|0;f=c[k>>2]|0;a=c[m>>2]|0;break}Uc(c[k>>2]|0);c[k>>2]=0;c[g>>2]=0;c[m>>2]=0;Ub(e,1,13019,l)|0;r=0;i=s;return r|0}while(0);c[m>>2]=a+1;h=f+(a*20|0)|0}g=h+12|0;a=c[g>>2]|0;if(a){Uc(a);c[g>>2]=0}c[h+8>>2]=o;o=c[p>>2]|0;c[h+4>>2]=o>>>8&3;c[h>>2]=o>>>10&3;qb(n,p,2);if(c[p>>2]|0){Ub(e,2,13057,q)|0;r=1;i=s;return r|0}a=d+-6|0;f=Pc(a)|0;c[g>>2]=f;if(!f){Ub(e,1,12933,r)|0;r=0;i=s;return r|0}else{Ui(f|0,b+6|0,a|0)|0;c[h+16>>2]=a;r=1;i=s;return r|0}return 0}function te(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;h=j+12|0;a=a+80|0;g=c[(c[a>>2]|0)+16>>2]|0;if((g+2|0)!=(d|0)){Ub(e,1,12907,j)|0;h=0;i=j;return h|0}qb(b,f,2);if((c[f>>2]|0)!=(g|0)){Ub(e,1,12907,j+8|0)|0;h=0;i=j;return h|0}if(!g){h=1;i=j;return h|0}f=b+2|0;b=0;a=c[(c[a>>2]|0)+24>>2]|0;while(1){qb(f,h,1);c[a+32>>2]=(c[h>>2]|0)>>>7&1;c[a+24>>2]=(c[h>>2]&127)+1;b=b+1|0;if((b|0)==(g|0)){a=1;break}else{f=f+1|0;a=a+52|0}}i=j;return a|0}function ue(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,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;J=i;i=i+144|0;I=J+120|0;H=J+112|0;G=J+104|0;F=J+96|0;E=J+88|0;D=J+80|0;C=J+72|0;B=J+64|0;A=J+56|0;z=J+48|0;p=J+40|0;o=J+32|0;m=J+24|0;x=J+136|0;u=J+132|0;v=J+128|0;w=J+124|0;if((c[b+8>>2]|0)==16)q=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else q=c[b+12>>2]|0;if(e>>>0<2){Ub(f,1,12567,J)|0;I=0;i=J;return I|0}qb(d,x,2);if(c[x>>2]|0){Ub(f,2,12593,J+8|0)|0;I=1;i=J;return I|0}if(e>>>0<7){Ub(f,1,12567,J+16|0)|0;I=0;i=J;return I|0}qb(d+2|0,u,1);n=d+3|0;l=q+5624|0;g=c[l>>2]|0;y=q+5628|0;b=c[y>>2]|0;a:do if(!b){j=0;h=g}else{k=c[u>>2]|0;j=0;h=g;do{if((c[h>>2]|0)==(k|0))break a;h=h+20|0;j=j+1|0}while(j>>>0>>0)}while(0);if((j|0)==(b|0)){h=q+5632|0;do if((b|0)==(c[h>>2]|0)){b=b+10|0;c[h>>2]=b;b=Tc(g,b*20|0)|0;if(b){c[l>>2]=b;g=c[y>>2]|0;Qi(b+(g*20|0)|0,0,((c[h>>2]|0)-g|0)*20|0)|0;g=c[l>>2]|0;b=c[y>>2]|0;break}Uc(c[l>>2]|0);c[l>>2]=0;c[h>>2]=0;c[y>>2]=0;Ub(f,1,12639,m)|0;I=0;i=J;return I|0}while(0);h=g+(b*20|0)|0}c[h>>2]=c[u>>2];qb(n,x,2);if(c[x>>2]|0){Ub(f,2,12593,o)|0;I=1;i=J;return I|0}qb(d+5|0,v,2);g=c[v>>2]|0;if(g>>>0>1){Ub(f,2,12677,p)|0;I=1;i=J;return I|0}b=e+-7|0;b:do if(g){r=h+4|0;s=h+16|0;t=h+8|0;e=h+12|0;p=q+5612|0;o=q+5616|0;m=d+7|0;n=0;c:while(1){if(b>>>0<3){g=27;break}qb(m,x,1);if((c[x>>2]|0)!=1){g=29;break}qb(m+1|0,w,2);g=b+-3|0;j=c[w>>2]|0;k=(j>>>15)+1|0;j=j&32767;c[r>>2]=j;h=(_(k,j)|0)+2|0;if(g>>>0>>0){g=31;break}b=m+3|0;l=g-h|0;if(j){g=0;do{qb(b,x,k);if((c[x>>2]|0)!=(g|0)){g=34;break c}b=b+k|0;g=g+1|0}while(g>>>0<(c[r>>2]|0)>>>0)}qb(b,w,2);g=b+2|0;h=c[w>>2]|0;j=(h>>>15)+1|0;h=h&32767;c[w>>2]=h;if((h|0)!=(c[r>>2]|0)){g=37;break}b=(_(j,h)|0)+3|0;if(l>>>0>>0){g=39;break}b=l-b|0;if(h){h=0;do{qb(g,x,j);if((c[x>>2]|0)!=(h|0)){g=42;break c}g=g+j|0;h=h+1|0}while(h>>>0<(c[r>>2]|0)>>>0)}qb(g,x,3);m=g+3|0;a[s>>0]=((c[x>>2]|0)>>>16^1)&1|a[s>>0]&-2;c[t>>2]=0;c[e>>2]=0;l=c[x>>2]|0;h=l&255;c[u>>2]=h;if(h){j=c[o>>2]|0;if(!j){g=50;break}k=0;g=c[p>>2]|0;while(1){if((c[g+8>>2]|0)==(h|0))break;k=k+1|0;if(k>>>0>=j>>>0){g=50;break c}else g=g+20|0}c[t>>2]=g}h=l>>>8&255;c[u>>2]=h;if(h){j=c[o>>2]|0;if(!j){g=57;break}k=0;g=c[p>>2]|0;while(1){if((c[g+8>>2]|0)==(h|0))break;k=k+1|0;if(k>>>0>=j>>>0){g=57;break c}else g=g+20|0}c[e>>2]=g}n=n+1|0;if(n>>>0>=(c[v>>2]|0)>>>0)break b}if((g|0)==27){Ub(f,1,12567,z)|0;I=0;i=J;return I|0}else if((g|0)==29){Ub(f,2,12721,A)|0;I=1;i=J;return I|0}else if((g|0)==31){Ub(f,1,12567,B)|0;I=0;i=J;return I|0}else if((g|0)==34){Ub(f,2,12787,C)|0;I=1;i=J;return I|0}else if((g|0)==37){Ub(f,2,12841,D)|0;I=1;i=J;return I|0}else if((g|0)==39){Ub(f,1,12567,E)|0;I=0;i=J;return I|0}else if((g|0)==42){Ub(f,2,12787,F)|0;I=1;i=J;return I|0}else if((g|0)==50){Ub(f,1,12567,G)|0;I=0;i=J;return I|0}else if((g|0)==57){Ub(f,1,12567,H)|0;I=0;i=J;return I|0}}while(0);if(!b){c[y>>2]=(c[y>>2]|0)+1;I=1;i=J;return I|0}else{Ub(f,1,12567,I)|0;I=0;i=J;return I|0}return 0}function ve(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;r=s+24|0;q=s+20|0;n=a+80|0;f=c[n>>2]|0;if((c[a+8>>2]|0)==16)g=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else g=c[a+12>>2]|0;if(!d){Ub(e,1,12486,s)|0;r=0;i=s;return r|0}qb(b,q,1);a=c[q>>2]|0;if(a>>>0>1){Ub(e,2,12512,s+8|0)|0;r=1;i=s;return r|0}if((a+1|0)!=(d|0)){Ub(e,2,12486,s+16|0)|0;r=0;i=s;return r|0}m=g+5584|0;a=c[f+16>>2]|0;if(a){d=0;e=c[m>>2]|0;while(1){c[e+1076>>2]=0;d=d+1|0;if(d>>>0>=a>>>0)break;else e=e+1080|0}}l=g+5604|0;a=c[l>>2]|0;if(a){Uc(a);c[l>>2]=0}if(!(c[q>>2]|0)){r=1;i=s;return r|0}k=g+5624|0;h=g+5628|0;j=0;while(1){b=b+1|0;qb(b,r,1);a=c[n>>2]|0;f=c[k>>2]|0;g=c[h>>2]|0;if(((g|0)!=0?!((g|0)==0?1:(c[f>>2]|0)!=(c[r>>2]|0)):0)?(o=c[f+4>>2]|0,p=a+16|0,(o|0)==(c[p>>2]|0)):0){a=c[f+8>>2]|0;if(a){d=_(o,o)|0;g=_(c[1036+(c[a>>2]<<2)>>2]|0,d)|0;if((c[a+16>>2]|0)!=(g|0)){a=0;d=32;break}e=Pc(d<<2)|0;c[l>>2]=e;if(!e){a=0;d=32;break}Xa[c[1052+(c[a>>2]<<2)>>2]&15](c[a+12>>2]|0,e,d)}a=c[f+12>>2]|0;if(a){d=c[p>>2]|0;g=_(d,c[1036+(c[a>>2]<<2)>>2]|0)|0;if((c[a+16>>2]|0)!=(g|0)){a=0;d=32;break}g=Pc(d<<2)|0;if(!g){a=0;d=32;break}Xa[c[1068+(c[a>>2]<<2)>>2]&15](c[a+12>>2]|0,g,d);a=c[p>>2]|0;if(a){d=0;e=g;f=c[m>>2]|0;while(1){c[f+1076>>2]=c[e>>2];d=d+1|0;if((d|0)==(a|0))break;else{e=e+4|0;f=f+1080|0}}}Uc(g)}}j=j+1|0;if(j>>>0>=(c[q>>2]|0)>>>0){a=1;d=32;break}}if((d|0)==32){i=s;return a|0}return 0}function we(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){qb(a,f,2);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+2|0}}i=g;return}function xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){qb(a,f,4);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=g;return}function ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){ub(a,f);c[b>>2]=~~+g[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=h;return}function ze(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){sb(a,f);c[b>>2]=~~+h[f>>3];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+8|0}}i=g;return}function Ae(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){qb(a,f,2);g[b>>2]=+((c[f>>2]|0)>>>0);e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+2|0}}i=h;return}function Be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){qb(a,f,4);g[b>>2]=+((c[f>>2]|0)>>>0);e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=h;return}function Ce(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){ub(a,f);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=g;return}function De(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;if(!c){i=f;return}d=0;while(1){sb(a,e);g[b>>2]=+h[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}i=f;return}function Ee(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;h=n+8|0;k=n+20|0;if((c[a+8>>2]|0)==16)a=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else a=c[a+12>>2]|0;m=c[a+5584>>2]|0;a=c[e>>2]|0;if(!a){Ub(f,1,14224,n)|0;b=0;i=n;return b|0}c[e>>2]=a+-1;qb(d,k,1);d=d+1|0;g=c[k>>2]&31;j=m+(b*1080|0)+24|0;c[j>>2]=g;c[m+(b*1080|0)+804>>2]=(c[k>>2]|0)>>>5;do if((g|0)==1){a=1;l=8}else{a=(c[e>>2]|0)>>>((g|0)!=0&1);if(a>>>0>97){c[h>>2]=a;c[h+4>>2]=97;c[h+8>>2]=97;Ub(f,2,14260,h)|0;g=c[j>>2]|0}f=(a|0)==0;if(g)if(f){a=0;l=20;break}else{l=8;break}if(!f){g=0;while(1){qb(d,k,1);if(g>>>0<97){c[m+(b*1080|0)+28+(g<<3)>>2]=(c[k>>2]|0)>>>3;c[m+(b*1080|0)+28+(g<<3)+4>>2]=0}g=g+1|0;if((g|0)==(a|0))break;else d=d+1|0}}a=(c[e>>2]|0)-a|0}while(0);if((l|0)==8){g=0;while(1){qb(d,k,2);if(g>>>0<97){c[m+(b*1080|0)+28+(g<<3)>>2]=(c[k>>2]|0)>>>11;c[m+(b*1080|0)+28+(g<<3)+4>>2]=c[k>>2]&2047}g=g+1|0;if((g|0)==(a|0)){l=20;break}else d=d+2|0}}if((l|0)==20)a=(c[e>>2]|0)-(a<<1)|0;c[e>>2]=a;if((c[j>>2]|0)!=1){b=1;i=n;return b|0}a=m+(b*1080|0)+28|0;d=m+(b*1080|0)+32|0;g=1;do{e=(c[a>>2]|0)-(((g+-1|0)>>>0)/3|0)|0;c[m+(b*1080|0)+28+(g<<3)>>2]=(e|0)>0?e:0;c[m+(b*1080|0)+28+(g<<3)+4>>2]=c[d>>2];g=g+1|0}while((g|0)!=97);a=1;i=n;return a|0}function Fe(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;p=r+40|0;l=r+32|0;k=r+16|0;j=r+8|0;o=r+44|0;h=a+8|0;if((c[h>>2]|0)==16)g=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else g=c[a+12>>2]|0;m=c[g+5584>>2]|0;if((c[e>>2]|0)>>>0<5){Ub(f,1,14664,r)|0;e=0;i=r;return e|0}n=m+(b*1080|0)+4|0;qb(d,n,1);g=(c[n>>2]|0)+1|0;c[n>>2]=g;if(g>>>0>33){c[j>>2]=g;c[j+4>>2]=33;Ub(f,1,14699,j)|0;e=0;i=r;return e|0}if((c[a+168>>2]|0)>>>0>=g>>>0){c[k>>2]=b;Ub(f,1,14776,k)|0;c[h>>2]=c[h>>2]|32768;e=0;i=r;return e|0}j=m+(b*1080|0)+8|0;qb(d+1|0,j,1);c[j>>2]=(c[j>>2]|0)+2;a=m+(b*1080|0)+12|0;qb(d+2|0,a,1);k=(c[a>>2]|0)+2|0;c[a>>2]=k;j=c[j>>2]|0;if(j>>>0>10|k>>>0>10|(j+k|0)>>>0>12){Ub(f,1,14934,r+24|0)|0;e=0;i=r;return e|0}qb(d+3|0,m+(b*1080|0)+16|0,1);qb(d+4|0,m+(b*1080|0)+20|0,1);h=(c[e>>2]|0)+-5|0;c[e>>2]=h;g=c[n>>2]|0;if(!(c[m+(b*1080|0)>>2]&1)){if(!g){e=1;i=r;return e|0}else g=0;do{c[m+(b*1080|0)+812+(g<<2)>>2]=15;c[m+(b*1080|0)+944+(g<<2)>>2]=15;g=g+1|0}while(g>>>0<(c[n>>2]|0)>>>0);g=1;i=r;return g|0}if(h>>>0>>0){Ub(f,1,14664,l)|0;e=0;i=r;return e|0}do if(!g)g=0;else{a=0;h=d+5|0;while(1){qb(h,o,1);h=h+1|0;g=c[o>>2]|0;if((a|0)!=0?g>>>0<16|(g&15|0)==0:0)break;c[m+(b*1080|0)+812+(a<<2)>>2]=g&15;c[m+(b*1080|0)+944+(a<<2)>>2]=(c[o>>2]|0)>>>4;a=a+1|0;g=c[n>>2]|0;if(a>>>0>=g>>>0){q=22;break}}if((q|0)==22){h=c[e>>2]|0;break}Ub(f,1,15002,p)|0;e=0;i=r;return e|0}while(0);c[e>>2]=h-g;e=1;i=r;return e|0}function Ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){pb(b,~~+g[a>>2]>>>0,2);d=d+1|0;if((d|0)==(c|0))break;else{b=b+2|0;a=a+4|0}}return}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){pb(b,~~+g[a>>2]>>>0,4);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){tb(b,+g[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){rb(b,+g[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+8|0;a=a+4|0}}return}function Ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;if(!d){d=0;i=j;return d|0}if(!(ld(c[a>>2]|0,b,d,e)|0)){Ub(e,1,16303,j)|0;d=0;i=j;return d|0}if(c[a+128>>2]|0){d=1;i=j;return d|0}h=a+108|0;if(!(bf(d,h,e)|0)){d=0;i=j;return d|0}b=c[a+48>>2]|0;a:do switch(b|0){case 16:{c[d+20>>2]=1;break}case 17:{c[d+20>>2]=2;break}case 18:{c[d+20>>2]=3;break}case 24:{c[d+20>>2]=4;break}default:{f=d+20|0;if((b|0)==12){c[f>>2]=5;break a}else{c[f>>2]=-1;break a}}}while(0);g=a+120|0;b=c[g>>2]|0;do if(b){if(c[b+12>>2]|0){cf(d,h);break}Uc(c[b+4>>2]|0);Uc(c[(c[g>>2]|0)+8>>2]|0);Uc(c[c[g>>2]>>2]|0);b=c[g>>2]|0;f=c[b+12>>2]|0;if(f){Uc(f);b=c[g>>2]|0}Uc(b);c[g>>2]=0}while(0);if(c[a+116>>2]|0)df(d,h,e);b=c[h>>2]|0;if(!b){d=1;i=j;return d|0}c[d+28>>2]=b;c[d+32>>2]=c[a+112>>2];c[h>>2]=0;d=1;i=j;return d|0}function Le(b,d){b=b|0;d=d|0;Wc(c[b>>2]|0,d);a[b+124>>0]=0;c[b+128>>2]=c[d+8248>>2]&1;return}function Me(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+80|0;v=w+64|0;s=w+56|0;o=w+48|0;r=w+40|0;q=w+32|0;p=w+24|0;if(!((a|0)!=0&(d|0)!=0&(e|0)!=0)){d=0;i=w;return d|0}t=e+16|0;if(((c[t>>2]|0)+-1|0)>>>0>16383){Ub(f,1,16352,w)|0;d=0;i=w;return d|0}if(!(Zc(c[a>>2]|0,d,e,f)|0)){d=0;i=w;return d|0}c[a+56>>2]=1785737760;c[a+60>>2]=0;c[a+64>>2]=1;g=Pc(4)|0;h=a+68|0;c[h>>2]=g;if(!g){c[h>>2]=0;Ub(f,1,16421,w+8|0)|0;d=0;i=w;return d|0}c[g>>2]=1785737760;l=c[t>>2]|0;c[a+20>>2]=l;l=Pc(l*12|0)|0;g=a+72|0;c[g>>2]=l;if(!l){c[g>>2]=0;Ub(f,1,16421,w+16|0)|0;d=0;i=w;return d|0}c[a+16>>2]=(c[e+12>>2]|0)-(c[e+4>>2]|0);c[a+12>>2]=(c[e+8>>2]|0)-(c[e>>2]|0);u=e+24|0;m=c[u>>2]|0;j=c[m+24>>2]|0;k=c[m+32>>2]|0;g=a+24|0;c[g>>2]=j+-1+(k<<7);n=c[t>>2]|0;if(n>>>0>1){h=1;do{if((j|0)!=(c[m+(h*52|0)+24>>2]|0))c[g>>2]=255;h=h+1|0}while(h>>>0>>0)}c[a+28>>2]=7;c[a+32>>2]=0;c[a+36>>2]=0;h=(n|0)==0;if(!h?(c[l+8>>2]=j+-1+(k<<7),n>>>0>1):0){g=1;do{c[l+(g*12|0)+8>>2]=(c[m+(g*52|0)+24>>2]|0)+-1+(c[m+(g*52|0)+32>>2]<<7);g=g+1|0}while(g>>>0>>0)}g=a+40|0;a:do if(!(c[e+32>>2]|0)){c[g>>2]=1;switch(c[e+20>>2]|0){case 1:{c[a+48>>2]=16;break a}case 2:{c[a+48>>2]=17;break a}case 3:{c[a+48>>2]=18;break a}default:break a}}else{c[g>>2]=2;c[a+48>>2]=0}while(0);b:do if(!h){h=0;g=0;j=0;do{e=(b[m+(j*52|0)+48>>1]|0)==0;g=(e&1^1)+g|0;h=e?h:j;j=j+1|0}while(j>>>0>>0);j=h;if((g|0)!=1){if(g>>>0<=1)break;Ub(f,2,16717,o)|0;break}switch(c[a+48>>2]|0){case 18:case 16:{h=3;break}case 17:{h=1;break}default:{Ub(f,2,16467,p)|0;break b}}if(n>>>0<(h+1|0)>>>0){Ub(f,2,16541,q)|0;break}if(j>>>0>>0){Ub(f,2,16634,r)|0;break}r=Pc(8)|0;g=a+116|0;c[g>>2]=r;if(!r){Ub(f,1,16782,s)|0;d=0;i=w;return d|0}s=Pc((c[t>>2]|0)*6|0)|0;e=c[g>>2]|0;c[e>>2]=s;if(!s){Ub(f,1,16782,v)|0;d=0;i=w;return d|0}l=c[t>>2]|0;b[e+4>>1]=l;k=c[e>>2]|0;g=0;do{b[k+(g*6|0)>>1]=g;b[k+(g*6|0)+2>>1]=0;v=g;g=g+1|0;b[k+(v*6|0)+4>>1]=g}while((g|0)!=(h|0));if(h>>>0>>0){j=c[u>>2]|0;do{v=(b[j+(h*52|0)+48>>1]|0)==0;b[k+(h*6|0)>>1]=h;g=k+(h*6|0)+2|0;if(v){b[g>>1]=-1;b[k+(h*6|0)+4>>1]=-1}else{b[g>>1]=1;b[(c[e>>2]|0)+(h*6|0)+4>>1]=0}h=h+1|0}while(h>>>0>>0)}}while(0);c[a+52>>2]=0;c[a+44>>2]=0;c[a+96>>2]=c[d+18692>>2];d=1;i=w;return d|0}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;return od(c[a>>2]|0,b,d)|0}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+8|0;if(!(sg(c[e>>2]|0,52,d)|0)){d=0;return d|0}g=c[e>>2]|0;h=tg(g)|0;e=ug(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=(Ra[c[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}vg(g);if(!f){d=0;return d|0}}else vg(g);d=$c(c[a>>2]|0,b,d)|0;return d|0}function Pe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+8|0;if(!(sg(c[e>>2]|0,53,d)|0)){d=0;return d|0}if(!(pd(c[a>>2]|0,b,d)|0)){d=0;return d|0}i=c[e>>2]|0;g=tg(i)|0;e=ug(i)|0;if(!g)e=1;else{h=0;f=e;e=1;while(1){if(!e)e=0;else e=(Ra[c[f>>2]&63](a,b,d)|0)!=0;e=e&1;h=h+1|0;if((h|0)==(g|0))break;else f=f+4|0}}vg(i);d=e;return d|0}function Qe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=a+4|0;if(!(sg(c[f>>2]|0,54,e)|0)){b=0;return b|0}h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){b=0;return b|0}}else vg(h);f=a+8|0;if(!(sg(c[f>>2]|0,55,e)|0)){b=0;return b|0}if(!(sg(c[f>>2]|0,56,e)|0)){b=0;return b|0}if(!(sg(c[f>>2]|0,57,e)|0)){b=0;return b|0}if((c[a+96>>2]|0)!=0?(sg(c[f>>2]|0,58,e)|0)==0:0){b=0;return b|0}if(!(sg(c[f>>2]|0,59,e)|0)){b=0;return b|0}h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){b=0;return b|0}}else vg(h);b=qd(c[a>>2]|0,b,d,e)|0;return b|0}function Re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=b+8|0;if(!(sg(c[k>>2]|0,52,e)|0)){a=0;return a|0}h=c[b+4>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){a=0;return a|0}}else vg(h);h=c[k>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){a=0;return a|0}}else vg(h);a=ad(a,c[b>>2]|0,d,e)|0;return a|0}function Se(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|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;return cd(c[a>>2]|0,b,d,e,f,g,h,i,j,k,l)|0}function Te(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;return rd(c[a>>2]|0,b,d,e,f,g)|0}function Ue(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;return dd(c[a>>2]|0,b,d,e,f,g)|0}function Ve(a){a=a|0;var b=0,d=0,e=0;if(!a)return;Yc(c[a>>2]|0);c[a>>2]=0;b=a+72|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+68|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+108|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}e=a+116|0;b=c[e>>2]|0;if(b){d=c[b>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b>>2]=0}Uc(b);c[e>>2]=0}e=a+120|0;b=c[e>>2]|0;if(b){d=c[b+12>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+12>>2]=0}d=c[b+4>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+4>>2]=0}d=c[b+8>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+8>>2]=0}d=c[b>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b>>2]=0}Uc(b);c[e>>2]=0}b=a+4|0;d=c[b>>2]|0;if(d){rg(d);c[b>>2]=0}b=a+8|0;d=c[b>>2]|0;if(d){rg(d);c[b>>2]=0}Uc(a);return}function We(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ed(c[a>>2]|0,b,d,e,f,g,h)|0}function Xe(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;if(!d){a=0;i=j;return a|0}Ub(e,2,16826,j)|0;if(!(md(c[a>>2]|0,b,d,e,f)|0)){Ub(e,1,16303,j+8|0)|0;a=0;i=j;return a|0}h=a+108|0;if(!(bf(d,h,e)|0)){a=0;i=j;return a|0}f=c[a+48>>2]|0;a:do switch(f|0){case 16:{c[d+20>>2]=1;break}case 17:{c[d+20>>2]=2;break}case 18:{c[d+20>>2]=3;break}case 24:{c[d+20>>2]=4;break}default:{b=d+20|0;if((f|0)==12){c[b>>2]=5;break a}else{c[b>>2]=-1;break a}}}while(0);g=a+120|0;b=c[g>>2]|0;do if(b){if(c[b+12>>2]|0){cf(d,h);break}Uc(c[b+4>>2]|0);Uc(c[(c[g>>2]|0)+8>>2]|0);Uc(c[c[g>>2]>>2]|0);b=c[g>>2]|0;f=c[b+12>>2]|0;if(f){Uc(f);b=c[g>>2]|0}Uc(b);c[g>>2]=0}while(0);if(c[a+116>>2]|0)df(d,h,e);b=c[h>>2]|0;if(!b){a=1;i=j;return a|0}c[d+28>>2]=b;c[d+32>>2]=c[a+112>>2];c[h>>2]=0;a=1;i=j;return a|0}function Ye(b){b=b|0;var d=0;d=Qc(1,136)|0;if(!d)return d|0;if(!b){b=Xc()|0;c[d>>2]=b}else{b=fd()|0;c[d>>2]=b}if(!b){Ve(d);d=0;return d|0}b=d+108|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;a[b+16>>0]=0;b=qg()|0;c[d+4>>2]=b;if(!b){Ve(d);d=0;return d|0}b=qg()|0;c[d+8>>2]=b;if(b)return d|0;Ve(d);d=0;return d|0}function Ze(a,b,d){a=a|0;b=b|0;d=d|0;gd(c[a>>2]|0,b,d);return}function _e(a){a=a|0;return kd(c[a>>2]|0)|0}function $e(a){a=a|0;return jd(c[a>>2]|0)|0}function af(a,b,d){a=a|0;b=b|0;d=d|0;return nd(c[a>>2]|0,b,d)|0}function bf(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+80|0;A=B+72|0;z=B+64|0;y=B+56|0;x=B+48|0;w=B+40|0;v=B+32|0;u=B+24|0;s=B+16|0;o=B+8|0;n=B;j=c[g+8>>2]|0;a:do if(j){r=c[j>>2]|0;q=b[j+4>>1]|0;j=c[f+16>>2]|0;p=c[g+12>>2]|0;if((p|0)!=0?(c[p+12>>2]|0)!=0:0)g=d[p+18>>0]|0;else g=j;m=q<<16>>16==0;b:do if(!m){l=0;c:while(1){k=l&65535;j=e[r+(k*6|0)>>1]|0;if(j>>>0>=g>>>0){k=15;break}j=b[r+(k*6|0)+4>>1]|0;switch(j<<16>>16){case 0:case -1:break;default:{j=(j&65535)+-1|0;if(j>>>0>=g>>>0){k=18;break c}}}l=l+1<<16>>16;if((l&65535)>=(q&65535))break b}if((k|0)==15){c[n>>2]=j;c[n+4>>2]=g;Ub(h,1,19343,n)|0;h=0;i=B;return h|0}else if((k|0)==18){c[o>>2]=j;c[o+4>>2]=g;Ub(h,1,19343,o)|0;h=0;i=B;return h|0}}while(0);if(!g)j=p;else{d:do if(!m)while(1){g=g+-1|0;j=0;do{if((e[r+((j&65535)*6|0)>>1]|0)==(g|0))break;j=j+1<<16>>16}while((j&65535)<(q&65535));if(j<<16>>16==q<<16>>16)break d;if(!g){j=p;break a}}while(0);Ub(h,1,19380,s)|0;h=0;i=B;return h|0}}else j=c[g+12>>2]|0;while(0);if(!j){h=1;i=B;return h|0}t=c[j+12>>2]|0;if(!t){h=1;i=B;return h|0}p=a[j+18>>0]|0;s=p&255;r=p<<24>>24==0;if(r)j=1;else{l=f+16|0;g=0;m=0;j=1;do{g=e[t+(g<<2)>>1]|0;k=c[l>>2]|0;if(g>>>0>=k>>>0){c[u>>2]=g;c[u+4>>2]=k;Ub(h,1,19343,u)|0;j=0}m=m+1<<16>>16;g=m&65535}while(g>>>0>>0)}q=Qc(s,4)|0;if(!q){Ub(h,1,19413,v)|0;h=0;i=B;return h|0}if(!r){n=0;o=0;do{k=a[t+(n<<2)+3>>0]|0;l=k&255;do if((k&255)<(p&255)){m=q+(l<<2)|0;g=a[t+(n<<2)+2>>0]|0;if((c[m>>2]|0)!=0&g<<24>>24==1){c[x>>2]=l;Ub(h,1,19486,x)|0;j=0;break}if(g<<24>>24!=0|k<<24>>24==0){c[m>>2]=1;break}else{c[y>>2]=n;c[y+4>>2]=l;Ub(h,1,19517,y)|0;j=0;break}}else{c[w>>2]=l;Ub(h,1,19430,w)|0;j=0}while(0);o=o+1<<16>>16;n=o&65535}while(n>>>0>>0);if(!r){g=0;k=0;do{if((c[q+(g<<2)>>2]|0)==0?(a[t+(g<<2)+2>>0]|0)!=0:0){c[z>>2]=g;Ub(h,1,19553,z)|0;j=0}k=k+1<<16>>16;g=k&65535}while(g>>>0>>0)}}if(!j){Uc(q);h=0;i=B;return h|0}e:do if(!((c[f+16>>2]|0)!=1|r)){j=0;g=0;while(1){g=g+1<<16>>16;if(!(c[q+(j<<2)>>2]|0))break;j=g&65535;if(j>>>0>=s>>>0)break e}c[A>>2]=j;Ub(h,2,19591,A)|0;if(!r){j=0;g=0;do{a[t+(j<<2)+2>>0]=1;a[t+(j<<2)+3>>0]=g;g=g+1<<16>>16;j=g&65535}while(j>>>0>>0)}}while(0);Uc(q);h=1;i=B;return h|0}function cf(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=g+12|0;g=c[w>>2]|0;m=c[g+8>>2]|0;o=c[g+4>>2]|0;q=c[g>>2]|0;r=c[g+12>>2]|0;g=a[g+18>>0]|0;s=f+24|0;t=c[s>>2]|0;u=g&255;v=Pc(u*52|0)|0;if(!v)return;n=g<<24>>24==0;if(!n){k=0;l=0;do{g=b[r+(k<<2)>>1]|0;if(!(a[r+(k<<2)+2>>0]|0)){g=g&65535;h=v+(k*52|0)|0;i=t+(g*52|0)|0;j=h+52|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0))}else{g=g&65535;h=v+((d[r+(k<<2)+3>>0]|0)*52|0)|0;i=t+(g*52|0)|0;j=h+52|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0))}j=Pc(_(c[t+(g*52|0)+8>>2]<<2,c[t+(g*52|0)+12>>2]|0)|0)|0;c[v+(k*52|0)+44>>2]=j;if(!j){p=7;break}c[v+(k*52|0)+24>>2]=d[m+k>>0];c[v+(k*52|0)+32>>2]=d[o+k>>0];l=l+1<<16>>16;k=l&65535}while(k>>>0>>0);if((p|0)==7){Uc(v);return}m=(e[(c[w>>2]|0)+16>>1]|0)+-1|0;if(!n){g=0;l=0;do{j=c[t+((e[r+(g<<2)>>1]|0)*52|0)+44>>2]|0;i=d[r+(g<<2)+3>>0]|0;k=_(c[v+(i*52|0)+12>>2]|0,c[v+(i*52|0)+8>>2]|0)|0;if(!(a[r+(g<<2)+2>>0]|0)){g=c[v+(g*52|0)+44>>2]|0;if(k){h=0;do{c[g+(h<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}while((h|0)!=(k|0))}}else{g=c[v+(i*52|0)+44>>2]|0;if(k){h=0;do{p=c[j+(h<<2)>>2]|0;c[g+(h<<2)>>2]=c[q+((_((p|0)<0?0:(p|0)>(m|0)?m:p,u)|0)+i<<2)>>2];h=h+1|0}while((h|0)!=(k|0))}}l=l+1<<16>>16;g=l&65535}while(g>>>0>>0)}}h=f+16|0;i=c[h>>2]|0;if(i){g=0;j=0;do{g=c[t+(g*52|0)+44>>2]|0;if(g)Uc(g);j=j+1<<16>>16;g=j&65535}while(g>>>0>>0)}Uc(t);c[s>>2]=v;c[h>>2]=u;Uc(c[(c[w>>2]|0)+4>>2]|0);Uc(c[(c[w>>2]|0)+8>>2]|0);Uc(c[c[w>>2]>>2]|0);g=c[w>>2]|0;h=c[g+12>>2]|0;if(h){Uc(h);g=c[w>>2]|0}Uc(g);c[w>>2]=0;return}function df(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+80|0;w=y+8|0;v=y;u=y+16|0;x=d+8|0;f=c[x>>2]|0;d=c[f>>2]|0;t=b[f+4>>1]|0;if(t<<16>>16){s=a+16|0;o=a+24|0;q=1;r=0;while(1){p=b[d+(r*6|0)>>1]|0;n=p&65535;a=c[s>>2]|0;a:do if(n>>>0>>0){f=b[d+(r*6|0)+4>>1]|0;switch(f<<16>>16){case -1:case 0:{b[(c[o>>2]|0)+(n*52|0)+48>>1]=b[d+(r*6|0)+2>>1]|0;break a}default:{}}k=(f&65535)+65535|0;m=k&65535;k=k&65535;if(k>>>0>=a>>>0){c[w>>2]=k;c[w+4>>2]=a;Ub(e,2,19302,w)|0;break}l=d+(r*6|0)+2|0;if((n|0)!=(k|0)?(b[l>>1]|0)==0:0){f=c[o>>2]|0;a=f+(n*52|0)|0;g=u;h=a;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));g=a;h=f+(k*52|0)|0;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));g=(c[o>>2]|0)+(k*52|0)|0;h=u;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));if((r+1&65535)<(t&65535)){g=q;do{f=d+(g*6|0)|0;a=b[f>>1]|0;if(a<<16>>16!=p<<16>>16){if(a<<16>>16==m<<16>>16)b[f>>1]=p}else b[f>>1]=m;g=g+1|0}while((g&65535)<<16>>16!=t<<16>>16)}}b[(c[o>>2]|0)+(n*52|0)+48>>1]=b[l>>1]|0}else{c[v>>2]=n;c[v+4>>2]=a;Ub(e,2,19262,v)|0}while(0);r=r+1|0;if((r&65535)<<16>>16==t<<16>>16)break;else q=q+1|0}d=c[x>>2]|0;f=d;d=c[d>>2]|0}if(!d){w=f;Uc(w);c[x>>2]=0;i=y;return}else{Uc(d);w=c[x>>2]|0;Uc(w);c[x>>2]=0;i=y;return}}function ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0,H=0,I=0;I=i;i=i+192|0;y=I+152|0;x=I+144|0;w=I+136|0;v=I+128|0;u=I+120|0;E=I+88|0;s=I+80|0;q=I+64|0;p=I+48|0;G=I+40|0;z=I+32|0;F=I+24|0;t=I+16|0;r=I+8|0;n=I+176|0;o=I+168|0;D=I+156|0;e=Qc(1,1024)|0;if(!e){Ub(d,1,17098,I)|0;H=0;i=I;return H|0}m=n+4|0;A=D+4|0;B=a+100|0;l=1024;a:while(1){if((Mb(b,n,8,d)|0)!=8)break;while(1){qb(n,D,4);qb(m,A,4);switch(c[D>>2]|0){case 0:{f=Qb(b)|0;k=C;if((k|0)>0|(k|0)==0&f>>>0>4294967287){H=6;break a}c[D>>2]=f+8;j=8;break}case 1:{if((Mb(b,n,8,d)|0)!=8)break a;qb(n,o,4);if(c[o>>2]|0){H=10;break a}qb(m,D,4);j=16;break}default:j=8}g=c[A>>2]|0;if((g|0)==1785737827){H=13;break a}f=c[D>>2]|0;if(!f){H=17;break a}if(f>>>0>>0){H=19;break a}if((g|0)==1783636e3){h=1084;g=j;H=22;break}if((g|0)==1718909296){h=1092;g=j;H=22;break}k=(g|0)==1785737832;b:do if((g|0)!=1768449138)if((g|0)!=1668246642)if((g|0)!=1651532643)if((g|0)!=1885564018)if((g|0)!=1668112752){h=(g|0)==1667523942?1148:0;f=f-j|0;if((g|0)<1785737832)switch(g|0){case 1667523942:{H=30;break b}default:{}}else switch(g|0){case 1785737832:{H=30;break b}default:{}}g=c[B>>2]|0;if(!(g&1)){H=45;break a}if(!(g&2)){H=47;break a}c[B>>2]=g|2147483647;k=Rb(b,f,0,d)|0;if(!((k|0)==(f|0)&(C|0)==0)){H=50;break a}}else{h=1140;H=28}else{h=1132;H=28}else{h=1124;H=28}else{h=1116;H=28}else{h=1108;H=28}while(0);if((H|0)==28){f=f-j|0;H=30}if((H|0)==30){H=0;if(k){h=1100;break}c[p>>2]=g>>>24;c[p+4>>2]=g>>>16&255;c[p+8>>2]=g>>>8&255;c[p+12>>2]=g&255;Ub(d,2,17282,p)|0;if(c[B>>2]&4)break;k=c[A>>2]|0;c[q>>2]=k>>>24;c[q+4>>2]=k>>>16&255;c[q+8>>2]=k>>>8&255;c[q+12>>2]=k&255;Ub(d,2,17333,q)|0;c[B>>2]=c[B>>2]|2147483647;k=Rb(b,f,0,d)|0;if(!((k|0)==(f|0)&(C|0)==0)){H=33;break a}}if((Mb(b,n,8,d)|0)!=8)break a}if((H|0)==22){H=0;f=f-g|0}k=Qb(b)|0;j=C;if(0>(j|0)|0==(j|0)&f>>>0>k>>>0){H=35;break}if(f>>>0>l>>>0){g=Tc(e,f)|0;if(!g){H=38;break}else{e=g;g=f}}else g=l;if((Mb(b,e,f,d)|0)!=(f|0)){H=40;break}if(!(Za[c[h+4>>2]&63](a,e,f,d)|0)){H=43;break}else l=g}switch(H|0){case 6:{Ub(d,1,17148,r)|0;break}case 10:{Ub(d,1,17148,t)|0;break}case 13:{f=c[B>>2]|0;if(!(f&4)){Ub(d,1,17190,F)|0;Uc(e);H=0;i=I;return H|0}else{c[B>>2]=f|8;Uc(e);H=1;i=I;return H|0}}case 17:{Ub(d,1,17218,z)|0;Uc(e);H=0;i=I;return H|0}case 19:{c[G>>2]=f;c[G+4>>2]=g;Ub(d,1,17256,G)|0;Uc(e);H=0;i=I;return H|0}case 33:{Ub(d,1,17399,s)|0;Uc(e);H=0;i=I;return H|0}case 35:{F=c[D>>2]|0;G=c[A>>2]|0;H=Qb(b)|0;c[E>>2]=F;c[E+4>>2]=G>>>24;c[E+8>>2]=G>>>16&255;c[E+12>>2]=G>>>8&255;c[E+16>>2]=G&255;c[E+20>>2]=f;c[E+24>>2]=H;Ub(d,1,17449,E)|0;Uc(e);H=0;i=I;return H|0}case 38:{Uc(e);Ub(d,1,17525,u)|0;H=0;i=I;return H|0}case 40:{Ub(d,1,17567,v)|0;Uc(e);H=0;i=I;return H|0}case 43:{Uc(e);H=0;i=I;return H|0}case 45:{Ub(d,1,17616,w)|0;Uc(e);H=0;i=I;return H|0}case 47:{Ub(d,1,17686,x)|0;Uc(e);H=0;i=I;return H|0}case 50:{Ub(d,1,17399,y)|0;Uc(e);H=0;i=I;return H|0}}Uc(e);H=1;i=I;return H|0}function ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;g=h+24|0;e=Pb(b)|0;f=C;a=a+80|0;j=a;j=Oi(e|0,f|0,c[j>>2]|0,c[j+4>>2]|0)|0;pb(g,j,4);pb(g+4|0,1785737827,4);if(!(Sb(b,c[a>>2]|0,c[a+4>>2]|0,d)|0)){Ub(d,1,17067,h)|0;j=0;i=h;return j|0}if((Nb(b,g,8,d)|0)!=8){Ub(d,1,17067,h+8|0)|0;j=0;i=h;return j|0}if(Sb(b,e,f,d)|0){j=1;i=h;return j|0}Ub(d,1,17067,h+16|0)|0;j=0;i=h;return j|0}function gf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=((c[a>>2]|0)!=0?(c[a+104>>2]|c[a+100>>2]|0)==0:0)&(c[a+8>>2]|0)!=0&(c[a+4>>2]|0)!=0&(c[a+64>>2]|0)!=0&(c[a+16>>2]|0)!=0&(c[a+12>>2]|0)!=0&1;e=c[a+20>>2]|0;if(!e){g=d;a=a+40|0;a=c[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=Tb(b)|0;b=b&g;a=b&a;return a|0}f=c[a+72>>2]|0;g=0;do{d=(c[f+(g*12|0)+8>>2]&126)>>>0<38&d;g=g+1|0}while(g>>>0>>0);a=a+40|0;a=c[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=Tb(b)|0;b=b&d;a=b&a;return a|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=i;i=i+16|0;d=a;pb(d,12,4);pb(d+4|0,1783636e3,4);pb(d+8|0,218793738,4);c=(Nb(b,d,12,c)|0)==12&1;i=a;return c|0}function jf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l+8|0;f=a+64|0;h=(c[f>>2]<<2)+16|0;j=Qc(1,h)|0;if(!j){Ub(d,1,16987,l)|0;k=0;i=l;return k|0}pb(j,h,4);pb(j+4|0,1718909296,4);pb(j+8|0,c[a+56>>2]|0,4);pb(j+12|0,c[a+60>>2]|0,4);g=j+16|0;if(c[f>>2]|0){a=a+68|0;e=0;do{pb(g,c[(c[a>>2]|0)+(e<<2)>>2]|0,4);e=e+1|0}while(e>>>0<(c[f>>2]|0)>>>0)}a=(Nb(b,j,h,d)|0)==(h|0);if(!a)Ub(d,1,17026,k)|0;Uc(j);k=a&1;i=l;return k|0}function kf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+80|0;o=q+16|0;m=q+8|0;k=q;f=q+24|0;l=q+72|0;e=f;g=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(g|0));p=(c[a+24>>2]|0)==255;c[f>>2]=2;e=f+12|0;if(p){c[e>>2]=3;c[f+24>>2]=4;e=3}else{c[e>>2]=4;e=2}if(!(c[a+116>>2]|0))p=e;else{c[f+(e*12|0)>>2]=5;p=e+1|0}pb(l+4|0,1785737832,4);h=0;j=f;e=8;while(1){g=j+8|0;r=_a[c[j>>2]&7](a,g)|0;c[j+4>>2]=r;if(!r){n=8;break}e=(c[g>>2]|0)+e|0;h=h+1|0;if((h|0)>=(p|0))break;else j=j+12|0}if((n|0)==8){Ub(d,1,16901,k)|0;g=0;while(1){e=c[f+4>>2]|0;if(e)Uc(e);g=g+1|0;if((g|0)>=(p|0)){e=0;break}else f=f+12|0}i=q;return e|0}pb(l,e,4);a:do if((Nb(b,l,8,d)|0)==8){e=0;g=f;while(1){r=g+8|0;n=Nb(b,c[g+4>>2]|0,c[r>>2]|0,d)|0;if((n|0)!=(c[r>>2]|0))break;e=e+1|0;if((e|0)>=(p|0)){e=1;break a}else g=g+12|0}Ub(d,1,16944,o)|0;e=0}else{Ub(d,1,16944,m)|0;e=0}while(0);h=0;while(1){g=c[f+4>>2]|0;if(g)Uc(g);h=h+1|0;if((h|0)>=(p|0))break;else f=f+12|0}i=q;return e|0}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Pb(b)|0;a=a+88|0;c[a>>2]=e;c[a+4>>2]=C;b=Rb(b,24,0,d)|0;return (b|0)==24&(C|0)==0&1|0}function mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Pb(b)|0;a=a+80|0;c[a>>2]=e;c[a+4>>2]=C;b=Rb(b,8,0,d)|0;return (b|0)==8&(C|0)==0&1|0}function nf(a,b){a=a|0;b=b|0;var d=0;d=Qc(1,22)|0;if(!d){b=0;return b|0}pb(d,22,4);pb(d+4|0,1768449138,4);pb(d+8|0,c[a+16>>2]|0,4);pb(d+12|0,c[a+12>>2]|0,4);pb(d+16|0,c[a+20>>2]|0,2);pb(d+18|0,c[a+24>>2]|0,1);pb(d+19|0,c[a+28>>2]|0,1);pb(d+20|0,c[a+32>>2]|0,1);pb(d+21|0,c[a+36>>2]|0,1);c[b>>2]=22;b=d;return b|0}function of(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=a+20|0;g=(c[f>>2]|0)+8|0;h=Qc(1,g)|0;if(!h){b=0;return b|0}pb(h,g,4);pb(h+4|0,1651532643,4);if(c[f>>2]|0){a=a+72|0;d=0;e=h+8|0;while(1){pb(e,c[(c[a>>2]|0)+(d*12|0)+8>>2]|0,1);d=d+1|0;if(d>>>0>=(c[f>>2]|0)>>>0)break;else e=e+1|0}}c[b>>2]=g;b=h;return b|0}function pf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=a+40|0;switch(c[e>>2]|0){case 1:{j=15;break}case 2:{j=(c[a+112>>2]|0)+11|0;break}default:{b=0;return b|0}}i=Qc(1,j)|0;if(!i){b=0;return b|0}pb(i,j,4);pb(i+4|0,1668246642,4);pb(i+8|0,c[e>>2]|0,1);pb(i+9|0,c[a+52>>2]|0,1);pb(i+10|0,c[a+44>>2]|0,1);g=i+11|0;switch(c[e>>2]|0){case 1:{pb(g,c[a+48>>2]|0,4);break}case 2:{h=a+112|0;if(c[h>>2]|0){a=a+108|0;f=0;e=g;while(1){pb(e,d[(c[a>>2]|0)+f>>0]|0,1);f=f+1|0;if(f>>>0>=(c[h>>2]|0)>>>0)break;else e=e+1|0}}break}default:{}}c[b>>2]=j;b=i;return b|0}function qf(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=a+116|0;j=((e[(c[i>>2]|0)+4>>1]|0)*6|0)+10|0;k=Pc(j)|0;if(!k){d=0;return d|0}pb(k,j,4);pb(k+4|0,1667523942,4);pb(k+8|0,e[(c[i>>2]|0)+4>>1]|0,2);a=c[i>>2]|0;if(b[a+4>>1]|0){g=0;f=0;h=k+10|0;while(1){pb(h,e[(c[a>>2]|0)+(g*6|0)>>1]|0,2);pb(h+2|0,e[(c[c[i>>2]>>2]|0)+(g*6|0)+2>>1]|0,2);pb(h+4|0,e[(c[c[i>>2]>>2]|0)+(g*6|0)+4>>1]|0,2);f=f+1<<16>>16;a=c[i>>2]|0;if((f&65535)>=(e[a+4>>1]|0))break;else{g=f&65535;h=h+6|0}}}c[d>>2]=j;d=k;return d|0}function rf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+32|0;f=g+16|0;if((d|0)!=14){Ub(e,1,18507,g)|0;f=0;i=g;return f|0}qb(b,a+16|0,4);qb(b+4|0,a+12|0,4);d=a+20|0;qb(b+8|0,d,2);d=Qc(c[d>>2]|0,12)|0;c[a+72>>2]=d;if(!d){Ub(e,1,18540,g+8|0)|0;f=0;i=g;return f|0}qb(b+10|0,a+24|0,1);d=a+28|0;qb(b+11|0,d,1);d=c[d>>2]|0;if((d|0)!=7){c[f>>2]=d;Ub(e,4,18589,f)|0}qb(b+12|0,a+32|0,1);qb(b+13|0,a+36|0,1);f=1;i=g;return f|0}function sf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=i;i=i+80|0;j=x+40|0;t=x+32|0;l=x+24|0;k=x+16|0;u=x+72|0;s=x+68|0;p=x+64|0;q=x+60|0;n=x+56|0;r=x+52|0;o=x+48|0;m=x+44|0;if(e>>>0<3){Ub(f,1,18180,x)|0;w=0;i=x;return w|0}v=b+108|0;w=b+124|0;if(a[w>>0]|0){Ub(f,4,18212,x+8|0)|0;w=1;i=x;return w|0}h=b+40|0;qb(d,h,1);qb(d+1|0,b+52|0,1);qb(d+2|0,b+44|0,1);g=d+3|0;h=c[h>>2]|0;switch(h|0){case 1:{if(e>>>0<7){c[k>>2]=e;Ub(f,1,18321,k)|0;w=0;i=x;return w|0}h=b+48|0;if(e>>>0>7?(c[h>>2]|0)!=14:0){c[l>>2]=e;Ub(f,2,18321,l)|0}qb(g,h,4);if((c[h>>2]|0)==14){g=Pc(36)|0;c[g>>2]=14;c[o>>2]=0;c[n>>2]=0;c[p>>2]=0;c[r>>2]=0;c[q>>2]=0;c[s>>2]=0;c[m>>2]=4470064;h=g+4|0;c[h>>2]=1145390592;switch(e|0){case 35:{qb(d+7|0,s,4);qb(d+11|0,p,4);qb(d+15|0,q,4);qb(d+19|0,n,4);qb(d+23|0,r,4);qb(d+27|0,o,4);qb(d+31|0,m,4);c[h>>2]=0;break}case 7:break;default:{c[t>>2]=e;Ub(f,2,18357,t)|0}}c[g+8>>2]=c[s>>2];c[g+16>>2]=c[q>>2];c[g+24>>2]=c[r>>2];c[g+12>>2]=c[p>>2];c[g+20>>2]=c[n>>2];c[g+28>>2]=c[o>>2];c[g+32>>2]=c[m>>2];c[v>>2]=g;c[b+112>>2]=0}a[w>>0]=1;w=1;i=x;return w|0}case 2:{j=e+-3|0;h=b+112|0;c[h>>2]=j;b=Qc(1,j)|0;c[v>>2]=b;if(!b){c[h>>2]=0;w=0;i=x;return w|0}if((e|0)>3){h=0;while(1){qb(g,u,1);a[(c[v>>2]|0)+h>>0]=c[u>>2];h=h+1|0;if((h|0)==(j|0))break;else g=g+1|0}}a[w>>0]=1;w=1;i=x;return w|0}default:{if(h>>>0<=2){w=1;i=x;return w|0}c[j>>2]=h;Ub(f,4,18401,j)|0;w=1;i=x;return w|0}}return 0}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j;f=c[a+24>>2]|0;if((f|0)!=255){c[g>>2]=f;Ub(e,2,18034,g)|0}h=a+20|0;if((c[h>>2]|0)!=(d|0)){Ub(e,1,18148,j+8|0)|0;h=0;i=j;return h|0}if(!d){h=1;i=j;return h|0}g=a+72|0;f=0;while(1){qb(b,(c[g>>2]|0)+(f*12|0)+8|0,1);f=f+1|0;if(f>>>0>=(c[h>>2]|0)>>>0){b=1;break}else b=b+1|0}i=j;return b|0}function uf(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+16|0;j=r;q=r+12|0;k=e+120|0;if(g>>>0<3|(c[k>>2]|0)!=0){g=0;i=r;return g|0}qb(f,q,2);l=c[q>>2]|0;p=l&65535;if((p+-1|0)>>>0>1023){c[j>>2]=p;Ub(h,1,17951,j)|0;g=0;i=r;return g|0}qb(f+2|0,q,1);o=c[q>>2]&65535;if(!o){Ub(h,1,17989,r+8|0)|0;g=0;i=r;return g|0}if((o+3|0)>>>0>g>>>0){g=0;i=r;return g|0}j=Pc(_(p<<2,o)|0)|0;if(!j){g=0;i=r;return g|0}n=Pc(o)|0;if(!n){Uc(j);g=0;i=r;return g|0}m=Pc(o)|0;if(!m){Uc(j);Uc(n);g=0;i=r;return g|0}e=Pc(20)|0;if(!e){Uc(j);Uc(n);Uc(m);g=0;i=r;return g|0}c[e+4>>2]=m;c[e+8>>2]=n;c[e>>2]=j;b[e+16>>1]=l;a[e+18>>0]=c[q>>2];c[e+12>>2]=0;c[k>>2]=e;e=f+3|0;h=0;k=0;do{qb(e,q,1);e=e+1|0;a[n+h>>0]=(c[q>>2]&127)+1;a[m+h>>0]=(c[q>>2]|0)>>>7&1;k=k+1<<16>>16;h=k&65535}while(h>>>0>>0);if(!p){g=1;i=r;return g|0}h=0;a:while(1){l=0;k=j;m=0;while(1){j=((d[n+l>>0]|0)+7|0)>>>3;j=j>>>0>4?4:j;if((e-f+j|0)>(g|0)){e=0;j=22;break a}qb(e,q,j);e=e+j|0;c[k>>2]=c[q>>2];j=k+4|0;m=m+1<<16>>16;l=m&65535;if(l>>>0>=o>>>0)break;else k=j}h=h+1<<16>>16;if((h&65535)>>>0>=p>>>0){e=1;j=22;break}}if((j|0)==22){i=r;return e|0}return 0}function vf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;j=d+120|0;d=c[j>>2]|0;if(!d){Ub(g,1,17841,l)|0;k=0;i=l;return k|0}if(c[d+12>>2]|0){Ub(g,1,17887,l+8|0)|0;k=0;i=l;return k|0}h=a[d+18>>0]|0;d=(h&255)<<2;if(d>>>0>f>>>0){Ub(g,1,17918,l+16|0)|0;k=0;i=l;return k|0}g=Pc(d)|0;if(!g){k=0;i=l;return k|0}if(h<<24>>24){d=e;f=0;while(1){qb(d,k,2);b[g+(f<<2)>>1]=c[k>>2];qb(d+2|0,k,1);a[g+(f<<2)+2>>0]=c[k>>2];qb(d+3|0,k,1);a[g+(f<<2)+3>>0]=c[k>>2];f=f+1|0;if((f&255)<<24>>24==h<<24>>24)break;else d=d+4|0}}c[(c[j>>2]|0)+12>>2]=g;k=1;i=l;return k|0}function wf(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;j=a+116|0;if(c[j>>2]|0){k=0;i=l;return k|0}if(f>>>0<2){Ub(g,1,17747,l)|0;k=0;i=l;return k|0}qb(d,k,2);a=c[k>>2]|0;h=a&65535;if(!h){Ub(g,1,17780,l+8|0)|0;k=0;i=l;return k|0}if(((h*6|0)+2|0)>>>0>f>>>0){Ub(g,1,17747,l+16|0)|0;k=0;i=l;return k|0}f=Pc(a*6|0)|0;if(!f){k=0;i=l;return k|0}a=Pc(8)|0;c[j>>2]=a;if(!a){Uc(f);k=0;i=l;return k|0}c[a>>2]=f;g=c[k>>2]&65535;b[a+4>>1]=g;if(!(g<<16>>16)){k=1;i=l;return k|0}else{h=0;a=d}do{d=h&65535;qb(a+2|0,k,2);b[f+(d*6|0)>>1]=c[k>>2];qb(a+4|0,k,2);a=a+6|0;b[f+(d*6|0)+2>>1]=c[k>>2];qb(a,k,2);b[f+(d*6|0)+4>>1]=c[k>>2];h=h+1<<16>>16}while((h&65535)<(e[(c[j>>2]|0)+4>>1]|0));a=1;i=l;return a|0}function xf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+32|0;f=g+20|0;a=a+100|0;if(c[a>>2]|0){Ub(e,1,19130,g)|0;e=0;i=g;return e|0}if((d|0)!=4){Ub(e,1,19184,g+8|0)|0;e=0;i=g;return e|0}qb(b,f,4);if((c[f>>2]|0)==218793738){c[a>>2]=c[a>>2]|1;e=1;i=g;return e|0}else{Ub(e,1,19218,g+16|0)|0;e=0;i=g;return e|0}return 0}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+32|0;g=j+24|0;h=a+100|0;if((c[h>>2]|0)!=1){Ub(e,1,19011,j)|0;h=0;i=j;return h|0}if(d>>>0<8){Ub(e,1,19061,j+8|0)|0;h=0;i=j;return h|0}qb(b,a+56|0,4);qb(b+4|0,a+60|0,4);b=b+8|0;d=d+-8|0;if(d&3){Ub(e,1,19061,j+16|0)|0;h=0;i=j;return h|0}d=d>>>2;f=a+64|0;c[f>>2]=d;if(d){d=Qc(d,4)|0;c[a+68>>2]=d;if(!d){Ub(e,1,19097,g)|0;h=0;i=j;return h|0}if(c[f>>2]|0){a=a+68|0;d=0;while(1){qb(b,(c[a>>2]|0)+(d<<2)|0,4);d=d+1|0;if(d>>>0>=(c[f>>2]|0)>>>0)break;else b=b+4|0}}}c[h>>2]=c[h>>2]|2;h=1;i=j;return h|0}function zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+96|0;y=A+72|0;s=A+64|0;r=A+56|0;q=A+48|0;w=A+40|0;v=A+32|0;u=A+24|0;t=A+16|0;p=A+8|0;n=A+80|0;o=A+76|0;x=a+100|0;if(!(c[x>>2]&2)){Ub(e,1,18679,A)|0;z=0;i=A;return z|0}m=a+104|0;c[m>>2]=0;do if(d){k=b;b=0;a:while(1){if(d>>>0<8){z=6;break}qb(k,n,4);f=c[n>>2]|0;qb(k+4|0,n,4);j=c[n>>2]|0;switch(f|0){case 0:{z=14;break a}case 1:{if(d>>>0<16){z=9;break a}qb(k+8|0,o,4);if(c[o>>2]|0){z=11;break a}qb(k+12|0,n,4);f=c[n>>2]|0;if(!f){z=13;break a}else g=16;break}default:g=8}if(f>>>0>>0){z=16;break}if(d>>>0>>0){z=19;break}h=(j|0)==1768449138;if(!h)if((j|0)!=1668246642)if((j|0)!=1651532643)if((j|0)!=1885564018)if((j|0)!=1668112752)if((j|0)==1667523942){l=1148;z=26}else c[m>>2]=c[m>>2]|2147483647;else{l=1140;z=26}else{l=1132;z=26}else{l=1124;z=26}else{l=1116;z=26}else{l=1108;z=26}if((z|0)==26?(z=0,(Za[c[l+4>>2]&63](a,k+g|0,f-g|0,e)|0)==0):0){b=0;z=32;break}b=h?1:b;if((d|0)==(f|0)){z=29;break}else{k=k+f|0;d=d-f|0}}if((z|0)==6)Ub(e,1,18724,p)|0;else if((z|0)==9)Ub(e,1,18764,t)|0;else if((z|0)==11)Ub(e,1,17148,u)|0;else if((z|0)==13)Ub(e,1,17218,v)|0;else if((z|0)==14)Ub(e,1,17218,w)|0;else if((z|0)==16)Ub(e,1,18808,q)|0;else if((z|0)==19){Ub(e,1,18880,s)|0;z=0;i=A;return z|0}else if((z|0)==29){if(!b)break;c[x>>2]=c[x>>2]|4;z=1;i=A;return z|0}else if((z|0)==32){i=A;return b|0}Ub(e,1,18837,r)|0;z=0;i=A;return z|0}while(0);Ub(e,1,18952,y)|0;z=0;i=A;return z|0}function Af(){return 8}function Bf(){return 32}function Cf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!e)return;else f=0;do{l=a+(f<<2)|0;i=c[l>>2]|0;j=b+(f<<2)|0;h=c[j>>2]|0;g=d+(f<<2)|0;k=c[g>>2]|0;c[l>>2]=(h<<1)+i+k>>2;c[j>>2]=k-h;c[g>>2]=i-h;f=f+1|0}while((f|0)!=(e|0));return}function Df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!e)return;else f=0;do{k=a+(f<<2)|0;j=b+(f<<2)|0;h=c[j>>2]|0;g=d+(f<<2)|0;l=c[g>>2]|0;i=(c[k>>2]|0)-(l+h>>2)|0;c[k>>2]=i+l;c[j>>2]=i;c[g>>2]=i+h;f=f+1|0}while((f|0)!=(e|0));return}function Ef(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!e)return;else f=0;do{o=a+(f<<2)|0;u=c[o>>2]|0;k=b+(f<<2)|0;t=c[k>>2]|0;g=d+(f<<2)|0;s=c[g>>2]|0;j=((u|0)<0)<<31>>31;q=Zi(u|0,j|0,2449,0)|0;q=Si(q|0,C|0,4096,0)|0;q=Ti(q|0,C|0,13)|0;i=((t|0)<0)<<31>>31;r=Zi(t|0,i|0,4809,0)|0;r=Si(r|0,C|0,4096,0)|0;r=Ti(r|0,C|0,13)|0;h=((s|0)<0)<<31>>31;p=Zi(s|0,h|0,934,0)|0;p=Si(p|0,C|0,4096,0)|0;p=Ti(p|0,C|0,13)|0;l=Zi(u|0,j|0,1382,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=Zi(t|0,i|0,2714,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;n=Ri(s|0,h|0,12)|0;n=Si(n|0,C|0,4096,0)|0;n=Ti(n|0,C|0,13)|0;j=Ri(u|0,j|0,12)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;i=Zi(t|0,i|0,3430,0)|0;i=Si(i|0,C|0,4096,0)|0;i=Ti(i|0,C|0,13)|0;h=Zi(s|0,h|0,666,0)|0;h=Si(h|0,C|0,4096,0)|0;h=Ti(h|0,C|0,13)|0;c[o>>2]=r+q+p;c[k>>2]=n-(m+l);c[g>>2]=j-i-h;f=f+1|0}while((f|0)!=(e|0));return}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0.0,i=0.0,j=0,k=0.0,l=0;if(!d)return;else e=0;do{l=a+(e<<2)|0;i=+g[l>>2];j=b+(e<<2)|0;h=+g[j>>2];f=c+(e<<2)|0;k=+g[f>>2];g[l>>2]=i+k*1.4019999504089355;g[j>>2]=i-h*.3441300094127655-k*.714139997959137;g[f>>2]=i+h*1.7719999551773071;e=e+1|0}while((e|0)!=(d|0));return}function Gf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=_(e,e)|0;o=Pc(h+e<<2)|0;if(!o){e=0;return e|0}if(h){i=0;f=a;while(1){c[o+(i+e<<2)>>2]=~~(+g[f>>2]*8192.0);i=i+1|0;if((i|0)==(h|0))break;else f=f+4|0}}if(b){m=(e|0)==0;n=0;do{if(!m){f=0;do{c[o+(f<<2)>>2]=c[c[d+(f<<2)>>2]>>2];f=f+1|0}while((f|0)!=(e|0));if(!m){a=0;k=o;do{k=k+(e<<2)|0;h=d+(a<<2)|0;f=c[h>>2]|0;c[f>>2]=0;i=0;j=0;l=k;while(1){p=c[l>>2]|0;q=c[o+(j<<2)>>2]|0;p=Zi(q|0,((q|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;p=Si(p|0,C|0,4096,0)|0;p=Ti(p|0,C|0,13)|0;i=p+i|0;c[f>>2]=i;j=j+1|0;if((j|0)==(e|0))break;else l=l+4|0}c[h>>2]=f+4;a=a+1|0}while((a|0)!=(e|0))}}n=n+1|0}while((n|0)!=(b|0))}Uc(o);q=1;return q|0}function Hf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Pc(e<<3)|0;if(!m){e=0;return e|0}if(b){n=(e|0)==0;o=0;do{if(!n){f=0;do{c[m+(f<<2)>>2]=c[c[d+(f<<2)>>2]>>2];f=f+1|0}while((f|0)!=(e|0));if(!n){k=0;l=a;while(1){f=m+(k+e<<2)|0;g[f>>2]=0.0;h=0.0;i=0;j=l;while(1){h=h+ +g[j>>2]*+g[m+(i<<2)>>2];g[f>>2]=h;i=i+1|0;if((i|0)==(e|0))break;else j=j+4|0}i=d+(k<<2)|0;j=c[i>>2]|0;c[i>>2]=j+4;g[j>>2]=h;k=k+1|0;if((k|0)==(e|0))break;else l=l+(e<<2)|0}}}o=o+1|0}while((o|0)!=(b|0))}Uc(m);e=1;return e|0}function If(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,i=0,j=0,k=0.0;if(!b)return;else j=0;do{i=a+(j<<3)|0;h[i>>3]=0.0;d=0.0;e=0;f=j;while(1){k=+g[c+(f<<2)>>2];d=d+k*k;e=e+1|0;if((e|0)==(b|0))break;else f=f+b|0}h[i>>3]=+O(+d);j=j+1|0}while((j|0)!=(b|0));return}function Jf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;F=i;i=i+32|0;B=F+28|0;w=F+24|0;x=F+20|0;y=F+16|0;z=F+12|0;A=F+8|0;k=F+4|0;l=F;f=d+76|0;D=c[f>>2]|0;C=D+(e*5640|0)+420|0;E=(c[C>>2]|0)+1|0;m=b+16|0;v=Pc((c[m>>2]|0)*528|0)|0;if(!v){E=0;i=F;return E|0}u=Pc(c[m>>2]<<2)|0;if(!u){Uc(v);E=0;i=F;return E|0}f=Pf(b,c[f>>2]|0,e)|0;if(!f){Uc(v);Uc(u);E=0;i=F;return E|0}g=c[m>>2]|0;if(g){h=0;j=v;while(1){c[u+(h<<2)>>2]=j;h=h+1|0;if(h>>>0>=g>>>0)break;else j=j+528|0}}Qf(b,d,e,x,y,z,A,k,l,w,B,u);s=c[w>>2]|0;q=_(c[m>>2]|0,s)|0;r=_(c[B>>2]|0,q)|0;t=D+(e*5640|0)+8|0;p=Qc(_((c[t>>2]|0)+1|0,r)|0,2)|0;h=f+4|0;c[h>>2]=p;if(!p){Uc(v);Uc(u);g=c[h>>2]|0;if(g){Uc(g);c[h>>2]=0}if(E){b=f;n=0;while(1){m=b+196|0;g=c[m>>2]|0;if(g){d=b+192|0;h=c[d>>2]|0;if(h){l=0;while(1){j=g+12|0;k=c[j>>2]|0;if(k){Uc(k);c[j>>2]=0;h=c[d>>2]|0}l=l+1|0;if(l>>>0>=h>>>0)break;else g=g+16|0}g=c[m>>2]|0}Uc(g);c[m>>2]=0}n=n+1|0;if((n|0)==(E|0))break;else b=b+232|0}}Uc(f);E=0;i=F;return E|0}g=c[f+196>>2]|0;p=c[b+24>>2]|0;c[f+200>>2]=c[x>>2];c[f+204>>2]=c[z>>2];c[f+208>>2]=c[y>>2];c[f+212>>2]=c[A>>2];c[f+20>>2]=1;c[f+16>>2]=s;c[f+12>>2]=q;c[f+8>>2]=r;m=c[f+192>>2]|0;if(m){b=0;d=p;while(1){j=c[g+12>>2]|0;h=c[u+(b<<2)>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];l=c[g+8>>2]|0;if(l){k=0;while(1){c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];k=k+1|0;if(k>>>0>=l>>>0)break;else{h=h+16|0;j=j+16|0}}}b=b+1|0;if(b>>>0>=m>>>0)break;else{g=g+16|0;d=d+52|0}}}if(E>>>0>1){m=f;o=1;do{g=c[m+428>>2]|0;c[m+432>>2]=c[x>>2];c[m+436>>2]=c[z>>2];c[m+440>>2]=c[y>>2];c[m+444>>2]=c[A>>2];c[m+252>>2]=1;c[m+248>>2]=s;c[m+244>>2]=q;c[m+240>>2]=r;b=c[m+424>>2]|0;if(b){n=0;d=p;while(1){j=c[g+12>>2]|0;h=c[u+(n<<2)>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];l=c[g+8>>2]|0;if(l){k=0;while(1){c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];k=k+1|0;if(k>>>0>=l>>>0)break;else{h=h+16|0;j=j+16|0}}}n=n+1|0;if(n>>>0>=b>>>0)break;else{g=g+16|0;d=d+52|0}}}c[m+236>>2]=c[m+4>>2];m=m+232|0;o=o+1|0}while((o|0)!=(E|0))}Uc(v);Uc(u);m=c[w>>2]|0;if(!(a[D+(e*5640|0)+5636>>0]&4)){d=c[B>>2]|0;l=(c[C>>2]|0)+1|0;if(!l){E=f;i=F;return E|0}k=c[D+(e*5640|0)+4>>2]|0;g=c[t>>2]|0;h=f;j=0;while(1){c[h+80>>2]=k;c[h+40>>2]=1;c[h+44>>2]=0;c[h+48>>2]=0;c[h+64>>2]=0;c[h+68>>2]=0;c[h+56>>2]=d;c[h+60>>2]=c[h+192>>2];c[h+52>>2]=g;c[h+72>>2]=m;j=j+1|0;if((j|0)==(l|0))break;else h=h+232|0}i=F;return f|0}else{j=(c[C>>2]|0)+1|0;if(!j){E=f;i=F;return E|0}k=f;g=D+(e*5640|0)+424|0;h=0;while(1){c[k+80>>2]=c[g+36>>2];c[k+40>>2]=1;c[k+44>>2]=c[g>>2];c[k+48>>2]=c[g+4>>2];c[k+64>>2]=0;c[k+68>>2]=0;c[k+56>>2]=c[g+12>>2];c[k+60>>2]=c[g+16>>2];c[k+52>>2]=c[g+8>>2];c[k+72>>2]=m;h=h+1|0;if((h|0)==(j|0))break;else{k=k+232|0;g=g+148|0}}i=F;return f|0}return 0}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!a)return;d=a+4|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0}if(b){k=a;l=0;while(1){j=k+196|0;d=c[j>>2]|0;if(d){i=k+192|0;e=c[i>>2]|0;if(e){h=0;while(1){f=d+12|0;g=c[f>>2]|0;if(g){Uc(g);c[f>>2]=0;e=c[i>>2]|0}h=h+1|0;if(h>>>0>=e>>>0)break;else d=d+16|0}d=c[j>>2]|0}Uc(d);c[j>>2]=0}l=l+1|0;if((l|0)==(b|0))break;else k=k+232|0}}Uc(a);return}function Lf(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;L=i;i=i+32|0;G=L+28|0;F=L+24|0;B=L+20|0;C=L+16|0;D=L+12|0;E=L+8|0;H=L+4|0;I=L;J=f+76|0;x=c[J>>2]|0;K=(c[x+(g*5640|0)+420>>2]|0)+1|0;A=e+16|0;z=Pc((c[A>>2]|0)*528|0)|0;if(!z){g=0;i=L;return g|0}y=Pc(c[A>>2]<<2)|0;if(!y){Uc(z);g=0;i=L;return g|0}j=Pf(e,c[J>>2]|0,g)|0;if(!j){Uc(z);Uc(y);g=0;i=L;return g|0}k=c[A>>2]|0;if(k){l=0;m=z;while(1){c[y+(l<<2)>>2]=m;l=l+1|0;if(l>>>0>=k>>>0)break;else m=m+528|0}}Qf(e,f,g,B,C,D,E,H,I,F,G,y);u=c[F>>2]|0;v=_(c[A>>2]|0,u)|0;w=_(c[G>>2]|0,v)|0;a[j>>0]=(d[f+93>>0]|0)>>>3&1;t=Qc(_(c[x+(g*5640|0)+8>>2]|0,w)|0,2)|0;l=j+4|0;c[l>>2]=t;if(!t){Uc(z);Uc(y);k=c[l>>2]|0;if(k){Uc(k);c[l>>2]=0}if(K){q=j;r=0;while(1){p=q+196|0;k=c[p>>2]|0;if(k){o=q+192|0;l=c[o>>2]|0;if(l){n=0;while(1){m=k+12|0;e=c[m>>2]|0;if(e){Uc(e);c[m>>2]=0;l=c[o>>2]|0}n=n+1|0;if(n>>>0>=l>>>0)break;else k=k+16|0}k=c[p>>2]|0}Uc(k);c[p>>2]=0}r=r+1|0;if((r|0)==(K|0))break;else q=q+232|0}}Uc(j);g=0;i=L;return g|0}k=c[j+196>>2]|0;t=c[e+24>>2]|0;c[j+200>>2]=c[B>>2];c[j+204>>2]=c[D>>2];c[j+208>>2]=c[C>>2];c[j+212>>2]=c[E>>2];c[j+224>>2]=c[H>>2];c[j+228>>2]=c[I>>2];c[j+20>>2]=1;c[j+16>>2]=u;c[j+12>>2]=v;c[j+8>>2]=w;p=c[j+192>>2]|0;if(p){q=0;o=t;while(1){m=c[k+12>>2]|0;l=c[y+(q<<2)>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];n=c[k+8>>2]|0;if(n){e=0;while(1){c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];e=e+1|0;if(e>>>0>=n>>>0)break;else{l=l+16|0;m=m+16|0}}}q=q+1|0;if(q>>>0>=p>>>0)break;else{k=k+16|0;o=o+52|0}}}if(K>>>0>1){p=j;s=1;do{k=c[p+428>>2]|0;c[p+432>>2]=c[B>>2];c[p+436>>2]=c[D>>2];c[p+440>>2]=c[C>>2];c[p+444>>2]=c[E>>2];c[p+456>>2]=c[H>>2];c[p+460>>2]=c[I>>2];c[p+252>>2]=1;c[p+248>>2]=u;c[p+244>>2]=v;c[p+240>>2]=w;q=c[p+424>>2]|0;if(q){r=0;o=t;while(1){m=c[k+12>>2]|0;l=c[y+(r<<2)>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];n=c[k+8>>2]|0;if(n){e=0;while(1){c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];e=e+1|0;if(e>>>0>=n>>>0)break;else{l=l+16|0;m=m+16|0}}}r=r+1|0;if(r>>>0>=q>>>0)break;else{k=k+16|0;o=o+52|0}}}c[p+236>>2]=c[p+4>>2];p=p+232|0;s=s+1|0}while((s|0)!=(K|0))}Uc(z);Uc(y);do if(a[x+(g*5640|0)+5636>>0]&4){k=b[f>>1]|0;if((k&65535)>2){if(!((h|0)==1|(k&65535)<7))break}else if((h|0)!=1)break;Rf(c[J>>2]|0,g,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,c[H>>2]|0,c[I>>2]|0);g=j;i=L;return g|0}while(0);w=c[A>>2]|0;v=c[B>>2]|0;u=c[C>>2]|0;t=c[D>>2]|0;s=c[E>>2]|0;r=c[F>>2]|0;q=c[G>>2]|0;p=c[H>>2]|0;o=c[I>>2]|0;k=c[J>>2]|0;m=(c[k+(g*5640|0)+420>>2]|0)+1|0;if(!m){g=j;i=L;return g|0}e=c[k+(g*5640|0)+8>>2]|0;n=c[k+(g*5640|0)+4>>2]|0;k=k+(g*5640|0)+424|0;l=0;while(1){c[k+76>>2]=0;c[k+92>>2]=w;c[k+72>>2]=0;c[k+88>>2]=q;c[k+68>>2]=0;c[k+84>>2]=e;c[k+36>>2]=n;c[k+80>>2]=0;c[k+96>>2]=r;c[k+100>>2]=v;c[k+104>>2]=u;c[k+108>>2]=t;c[k+112>>2]=s;c[k+116>>2]=p;c[k+120>>2]=o;l=l+1|0;if((l|0)==(m|0))break;else k=k+148|0}i=L;return j|0}function Mf(d,e,f,g,h,i,j){d=d|0;e=e|0;f=f|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,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;Q=c[e+76>>2]|0;R=Q+(f*5640|0)+424+(g*148|0)+36|0;S=Vc(c[R>>2]|0)|0;c[d+(g*232|0)+40>>2]=1;T=d+(g*232|0)+44|0;c[d+(g*232|0)+80>>2]=c[R>>2];do if(a[e+93>>0]&8){k=b[e>>1]|0;if((k&65535)>2){if(!((j|0)==1&(k&65535)>6|(k+-3&65535)<4))break}else if(!((j|0)==1|(k+-3&65535)<4))break;k=i+1|0;a:do if((k|0)<4){j=Q+(f*5640|0)+424+(g*148|0)+72|0;l=Q+(f*5640|0)+424+(g*148|0)+88|0;m=d+(g*232|0)+56|0;n=Q+(f*5640|0)+424+(g*148|0)+76|0;o=d+(g*232|0)+48|0;p=Q+(f*5640|0)+424+(g*148|0)+92|0;q=d+(g*232|0)+60|0;r=Q+(f*5640|0)+424+(g*148|0)+68|0;s=d+(g*232|0)+64|0;t=Q+(f*5640|0)+424+(g*148|0)+84|0;u=d+(g*232|0)+52|0;v=Q+(f*5640|0)+424+(g*148|0)+80|0;w=d+(g*232|0)+68|0;x=Q+(f*5640|0)+424+(g*148|0)+96|0;y=d+(g*232|0)+72|0;z=Q+(f*5640|0)+424+(g*148|0)+100|0;A=d+(g*232|0)+96|0;B=Q+(f*5640|0)+424+(g*148|0)+108|0;C=d+(g*232|0)+104|0;D=Q+(f*5640|0)+424+(g*148|0)+104|0;E=d+(g*232|0)+100|0;F=Q+(f*5640|0)+424+(g*148|0)+112|0;G=d+(g*232|0)+108|0;while(1){b:do switch(a[S+k>>0]|0){case 82:{c[T>>2]=c[j>>2];c[m>>2]=c[l>>2];break}case 67:{c[o>>2]=c[n>>2];c[q>>2]=c[p>>2];break}case 76:{c[s>>2]=c[r>>2];c[u>>2]=c[t>>2];break}case 80:if((c[R>>2]|0)>>>0<2){c[w>>2]=c[v>>2];c[y>>2]=c[x>>2];break b}else{c[A>>2]=c[z>>2];c[C>>2]=c[B>>2];c[E>>2]=c[D>>2];c[G>>2]=c[F>>2];break b}default:{}}while(0);k=k+1|0;if((k|0)==4)break a}}while(0);k=(i|0)>-1;if(!h){if(!k)return;m=Q+(f*5640|0)+424+(g*148|0)+76|0;n=Q+(f*5640|0)+424+(g*148|0)+132|0;o=d+(g*232|0)+48|0;p=d+(g*232|0)+60|0;q=Q+(f*5640|0)+424+(g*148|0)+72|0;r=Q+(f*5640|0)+424+(g*148|0)+128|0;s=d+(g*232|0)+56|0;t=Q+(f*5640|0)+424+(g*148|0)+68|0;u=Q+(f*5640|0)+424+(g*148|0)+124|0;v=d+(g*232|0)+64|0;w=d+(g*232|0)+52|0;x=Q+(f*5640|0)+424+(g*148|0)+80|0;y=Q+(f*5640|0)+424+(g*148|0)+136|0;z=d+(g*232|0)+68|0;A=d+(g*232|0)+72|0;B=Q+(f*5640|0)+424+(g*148|0)+100|0;C=Q+(f*5640|0)+424+(g*148|0)+140|0;D=Q+(f*5640|0)+424+(g*148|0)+108|0;E=Q+(f*5640|0)+424+(g*148|0)+144|0;F=d+(g*232|0)+96|0;G=Q+(f*5640|0)+424+(g*148|0)+116|0;h=d+(g*232|0)+100|0;H=d+(g*232|0)+104|0;l=Q+(f*5640|0)+424+(g*148|0)+120|0;j=d+(g*232|0)+108|0;k=i;while(1){c:do switch(a[S+k>>0]|0){case 67:{g=c[m>>2]|0;c[o>>2]=g;g=g+1|0;c[p>>2]=g;c[n>>2]=g;break}case 82:{g=c[q>>2]|0;c[T>>2]=g;g=g+1|0;c[s>>2]=g;c[r>>2]=g;break}case 76:{g=c[t>>2]|0;c[v>>2]=g;g=g+1|0;c[w>>2]=g;c[u>>2]=g;break}case 80:if((c[R>>2]|0)>>>0<2){g=c[x>>2]|0;c[z>>2]=g;g=g+1|0;c[A>>2]=g;c[y>>2]=g;break c}else{g=c[B>>2]|0;i=c[D>>2]|0;c[F>>2]=g;f=c[G>>2]|0;f=f+g-((g>>>0)%(f>>>0)|0)|0;c[h>>2]=f;c[H>>2]=i;g=c[l>>2]|0;g=g+i-((i>>>0)%(g>>>0)|0)|0;c[j>>2]=g;c[C>>2]=f;c[E>>2]=g;break c}default:{}}while(0);if((k|0)>0)k=k+-1|0;else break}return}if(!k)return;L=Q+(f*5640|0)+424+(g*148|0)+128|0;M=Q+(f*5640|0)+424+(g*148|0)+88|0;N=Q+(f*5640|0)+424+(g*148|0)+72|0;O=d+(g*232|0)+56|0;P=Q+(f*5640|0)+424+(g*148|0)+132|0;p=Q+(f*5640|0)+424+(g*148|0)+92|0;q=Q+(f*5640|0)+424+(g*148|0)+76|0;r=d+(g*232|0)+48|0;s=d+(g*232|0)+60|0;t=Q+(f*5640|0)+424+(g*148|0)+124|0;u=Q+(f*5640|0)+424+(g*148|0)+84|0;v=Q+(f*5640|0)+424+(g*148|0)+68|0;w=d+(g*232|0)+64|0;x=d+(g*232|0)+52|0;y=Q+(f*5640|0)+424+(g*148|0)+136|0;z=Q+(f*5640|0)+424+(g*148|0)+96|0;A=Q+(f*5640|0)+424+(g*148|0)+80|0;B=d+(g*232|0)+68|0;C=d+(g*232|0)+72|0;D=Q+(f*5640|0)+424+(g*148|0)+140|0;E=Q+(f*5640|0)+424+(g*148|0)+104|0;F=d+(g*232|0)+96|0;G=Q+(f*5640|0)+424+(g*148|0)+116|0;h=d+(g*232|0)+100|0;H=Q+(f*5640|0)+424+(g*148|0)+144|0;I=Q+(f*5640|0)+424+(g*148|0)+112|0;J=d+(g*232|0)+104|0;K=Q+(f*5640|0)+424+(g*148|0)+120|0;n=d+(g*232|0)+108|0;o=Q+(f*5640|0)+424+(g*148|0)+100|0;m=Q+(f*5640|0)+424+(g*148|0)+108|0;l=i;k=1;while(1){j=S+l|0;d:do switch(a[j>>0]|0){case 67:{i=c[P>>2]|0;c[r>>2]=i+-1;c[s>>2]=i;break}case 82:{i=c[L>>2]|0;c[T>>2]=i+-1;c[O>>2]=i;break}case 76:{i=c[t>>2]|0;c[w>>2]=i+-1;c[x>>2]=i;break}case 80:if((c[R>>2]|0)>>>0<2){i=c[y>>2]|0;c[B>>2]=i+-1;c[C>>2]=i;break d}else{i=c[D>>2]|0;Q=c[G>>2]|0;c[F>>2]=i-Q-((i>>>0)%(Q>>>0)|0);c[h>>2]=i;i=c[H>>2]|0;Q=c[K>>2]|0;c[J>>2]=i-Q-((i>>>0)%(Q>>>0)|0);c[n>>2]=i;break d}default:{}}while(0);e:do if((k|0)==1)switch(a[j>>0]|0){case 82:{k=c[L>>2]|0;if((k|0)!=(c[M>>2]|0)){c[T>>2]=k;k=k+1|0;c[O>>2]=k;c[L>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[N>>2]|0;c[T>>2]=k;k=k+1|0;c[O>>2]=k;c[L>>2]=k;k=1;break e}case 67:{k=c[P>>2]|0;if((k|0)!=(c[p>>2]|0)){c[r>>2]=k;k=k+1|0;c[s>>2]=k;c[P>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[q>>2]|0;c[r>>2]=k;k=k+1|0;c[s>>2]=k;c[P>>2]=k;k=1;break e}case 76:{k=c[t>>2]|0;if((k|0)!=(c[u>>2]|0)){c[w>>2]=k;k=k+1|0;c[x>>2]=k;c[t>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[v>>2]|0;c[w>>2]=k;k=k+1|0;c[x>>2]=k;c[t>>2]=k;k=1;break e}case 80:{if((c[R>>2]|0)>>>0<2){k=c[y>>2]|0;if((k|0)!=(c[z>>2]|0)){c[B>>2]=k;k=k+1|0;c[C>>2]=k;c[y>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[A>>2]|0;c[B>>2]=k;k=k+1|0;c[C>>2]=k;c[y>>2]=k;k=1;break e}k=c[D>>2]|0;if(k>>>0<(c[E>>2]|0)>>>0){c[F>>2]=k;i=c[G>>2]|0;k=i+k-((k>>>0)%(i>>>0)|0)|0;c[h>>2]=k;c[D>>2]=k;k=0;break e}j=c[H>>2]|0;if(j>>>0<(c[I>>2]|0)>>>0){c[J>>2]=j;i=c[K>>2]|0;k=0;j=i+j-((j>>>0)%(i>>>0)|0)|0}else{if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}i=c[m>>2]|0;c[H>>2]=i;c[J>>2]=i;j=c[K>>2]|0;k=1;j=j+i-((i>>>0)%(j>>>0)|0)|0}c[n>>2]=j;c[H>>2]=j;Q=c[o>>2]|0;c[F>>2]=Q;i=c[G>>2]|0;i=i+Q-((Q>>>0)%(i>>>0)|0)|0;c[h>>2]=i;c[D>>2]=i;break e}default:{k=1;break e}}while(0);if((l|0)>0)l=l+-1|0;else break}return}while(0);c[T>>2]=c[Q+(f*5640|0)+424+(g*148|0)+72>>2];c[d+(g*232|0)+56>>2]=c[Q+(f*5640|0)+424+(g*148|0)+88>>2];c[d+(g*232|0)+48>>2]=c[Q+(f*5640|0)+424+(g*148|0)+76>>2];c[d+(g*232|0)+60>>2]=c[Q+(f*5640|0)+424+(g*148|0)+92>>2];c[d+(g*232|0)+64>>2]=c[Q+(f*5640|0)+424+(g*148|0)+68>>2];c[d+(g*232|0)+52>>2]=c[Q+(f*5640|0)+424+(g*148|0)+84>>2];c[d+(g*232|0)+68>>2]=c[Q+(f*5640|0)+424+(g*148|0)+80>>2];c[d+(g*232|0)+72>>2]=c[Q+(f*5640|0)+424+(g*148|0)+96>>2];c[d+(g*232|0)+96>>2]=c[Q+(f*5640|0)+424+(g*148|0)+100>>2];c[d+(g*232|0)+104>>2]=c[Q+(f*5640|0)+424+(g*148|0)+108>>2];c[d+(g*232|0)+100>>2]=c[Q+(f*5640|0)+424+(g*148|0)+104>>2];c[d+(g*232|0)+108>>2]=c[Q+(f*5640|0)+424+(g*148|0)+112>>2];return}function Nf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;I=c[d+76>>2]|0;K=c[d+24>>2]|0;N=(e>>>0)%(K>>>0)|0;K=(e>>>0)/(K>>>0)|0;L=c[d+4>>2]|0;H=c[d+12>>2]|0;G=(_(H,N)|0)+L|0;M=c[b>>2]|0;M=(G|0)>(M|0)?G:M;L=(_(H,N+1|0)|0)+L|0;N=c[b+8>>2]|0;N=(L|0)<(N|0)?L:N;L=c[d+8>>2]|0;H=c[d+16>>2]|0;G=(_(H,K)|0)+L|0;J=c[b+4>>2]|0;J=(G|0)>(J|0)?G:J;L=(_(H,K+1|0)|0)+L|0;K=c[b+12>>2]|0;K=(L|0)<(K|0)?L:K;L=c[b+16>>2]|0;if(!L){l=0;k=2147483647;j=2147483647;i=0}else{D=K+-1|0;E=N+-1|0;F=J+-1|0;G=M+-1|0;l=0;k=2147483647;j=2147483647;i=0;H=0;A=c[b+24>>2]|0;B=c[I+(e*5640|0)+5584>>2]|0;while(1){x=c[A>>2]|0;y=c[A+4>>2]|0;z=c[B+4>>2]|0;i=z>>>0>i>>>0?z:i;if(z){v=(D+y|0)/(y|0)|0;t=(E+x|0)/(x|0)|0;r=(F+y|0)/(y|0)|0;p=(G+x|0)/(x|0)|0;p=Si(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;q=C;r=Si(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;s=C;t=Si(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;u=C;v=Si(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;w=C;d=0;o=0;while(1){m=c[B+812+(o<<2)>>2]|0;n=c[B+944+(o<<2)>>2]|0;g=d+-1+z|0;h=x<>>0>>0?k:h;j=j>>>0>>0?j:O;O=Ri(1,0,g|0)|0;h=C;d=Si(p|0,q|0,O|0,h|0)|0;d=Pi(d|0,C|0,g|0)|0;f=Si(r|0,s|0,O|0,h|0)|0;f=Pi(f|0,C|0,g|0)|0;b=Si(t|0,u|0,O|0,h|0)|0;b=Pi(b|0,C|0,g|0)|0;h=Si(v|0,w|0,O|0,h|0)|0;g=Pi(h|0,C|0,g|0)|0;h=Ri(1,0,n|0)|0;h=Si(h|0,C|0,-1,-1)|0;h=Si(h|0,C|0,g|0,((g|0)<0)<<31>>31|0)|0;h=Pi(h|0,C|0,n|0)|0;if((d|0)==(b|0))d=0;else{O=Ri(1,0,m|0)|0;O=Si(O|0,C|0,-1,-1)|0;O=Si(O|0,C|0,b|0,((b|0)<0)<<31>>31|0)|0;O=Pi(O|0,C|0,m|0)|0;d=(O<>m<>m}b=_(d,(f|0)==(g|0)?0:(h<>n<>n)|0;l=b>>>0>l>>>0?b:l;b=o+1|0;if(b>>>0>>0){d=~o;o=b}else break}}H=H+1|0;if(H>>>0>=L>>>0)break;else{A=A+52|0;B=B+1080|0}}}if(a[I+(e*5640|0)+5636>>0]&4){Rf(I,e,M,N,J,K,l,k,j);return}f=(c[I+(e*5640|0)+420>>2]|0)+1|0;if(!f)return;g=c[I+(e*5640|0)+8>>2]|0;h=c[I+(e*5640|0)+4>>2]|0;d=I+(e*5640|0)+424|0;b=0;while(1){c[d+76>>2]=0;c[d+92>>2]=L;c[d+72>>2]=0;c[d+88>>2]=i;c[d+68>>2]=0;c[d+84>>2]=g;c[d+36>>2]=h;c[d+80>>2]=0;c[d+96>>2]=l;c[d+100>>2]=M;c[d+104>>2]=N;c[d+108>>2]=J;c[d+112>>2]=K;c[d+116>>2]=k;c[d+120>>2]=j;b=b+1|0;if((b|0)==(f|0))break;else d=d+148|0}return}function Of(d){d=d|0;var 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,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,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,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,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;switch(c[d+80>>2]|0){case 0:{e=d+40|0;if(!(c[e>>2]|0)){E=d+32|0;l=E;E=c[E>>2]|0;f=18}else{c[e>>2]=0;t=c[d+64>>2]|0;c[d+36>>2]=t;f=5}while(1){if((f|0)==5){if(t>>>0>=(c[d+52>>2]|0)>>>0){nb=0;f=153;break}z=c[d+44>>2]|0;c[d+28>>2]=z;f=7}else if((f|0)==18){j=E+1|0;c[l>>2]=j;h=l;f=14}while(1){if((f|0)==7){f=0;if(z>>>0>=(c[d+56>>2]|0)>>>0){f=21;break}A=c[d+48>>2]|0;p=d+24|0;c[p>>2]=A}else if((f|0)==14){if(j>>>0<(c[d+72>>2]|0)>>>0){f=16;break}F=d+24|0;n=F;F=c[F>>2]|0;f=19}while(1){if((f|0)==19){f=0;A=F+1|0;c[n>>2]=A;p=n}if(A>>>0>=(c[d+60>>2]|0)>>>0){f=20;break}B=c[d+196>>2]|0;C=c[d+28>>2]|0;if(C>>>0<(c[B+(A<<4)+8>>2]|0)>>>0)break;else{n=p;F=A;f=19}}if((f|0)==20){f=d+28|0;z=(c[f>>2]|0)+1|0;c[f>>2]=z;f=7;continue}e=c[B+(A<<4)+12>>2]|0;if(!(a[d>>0]|0))c[d+72>>2]=_(c[e+(C<<4)+12>>2]|0,c[e+(C<<4)+8>>2]|0)|0;j=c[d+68>>2]|0;h=d+32|0;c[h>>2]=j;f=14}if((f|0)==16){f=0;D=_(c[d+8>>2]|0,c[d+36>>2]|0)|0;D=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+D|0;D=D+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;D=D+(_(c[d+20>>2]|0,j)|0)|0;D=(c[d+4>>2]|0)+(D<<1)|0;if(!(b[D>>1]|0))break;else{l=h;E=j;f=18;continue}}else if((f|0)==21){f=d+36|0;t=(c[f>>2]|0)+1|0;c[f>>2]=t;f=5;continue}}if((f|0)==153)return nb|0;b[D>>1]=1;d=1;return d|0}case 1:{e=d+40|0;if(!(c[e>>2]|0)){x=d+32|0;k=x;x=c[x>>2]|0;f=38}else{c[e>>2]=0;G=c[d+44>>2]|0;c[d+28>>2]=G;f=25}while(1){if((f|0)==25){if(G>>>0>=(c[d+56>>2]|0)>>>0){nb=0;f=153;break}r=c[d+64>>2]|0;c[d+36>>2]=r;f=27}else if((f|0)==38){i=x+1|0;c[k>>2]=i;g=k;f=34}while(1){if((f|0)==27){f=0;if(r>>>0>=(c[d+52>>2]|0)>>>0){f=41;break}s=c[d+48>>2]|0;o=d+24|0;c[o>>2]=s}else if((f|0)==34){if(i>>>0<(c[d+72>>2]|0)>>>0){f=36;break}y=d+24|0;m=y;y=c[y>>2]|0;f=39}while(1){if((f|0)==39){f=0;s=y+1|0;c[m>>2]=s;o=m}if(s>>>0>=(c[d+60>>2]|0)>>>0){f=40;break}u=c[d+196>>2]|0;v=c[d+28>>2]|0;if(v>>>0<(c[u+(s<<4)+8>>2]|0)>>>0)break;else{m=o;y=s;f=39}}if((f|0)==40){f=d+36|0;r=(c[f>>2]|0)+1|0;c[f>>2]=r;f=27;continue}e=c[u+(s<<4)+12>>2]|0;if(!(a[d>>0]|0))c[d+72>>2]=_(c[e+(v<<4)+12>>2]|0,c[e+(v<<4)+8>>2]|0)|0;i=c[d+68>>2]|0;g=d+32|0;c[g>>2]=i;f=34}if((f|0)==36){f=0;w=_(c[d+8>>2]|0,c[d+36>>2]|0)|0;w=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+w|0;w=w+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;w=w+(_(c[d+20>>2]|0,i)|0)|0;w=(c[d+4>>2]|0)+(w<<1)|0;if(!(b[w>>1]|0))break;else{k=g;x=i;f=38;continue}}else if((f|0)==41){f=d+28|0;G=(c[f>>2]|0)+1|0;c[f>>2]=G;f=25;continue}}if((f|0)==153)return nb|0;b[w>>1]=1;d=1;return d|0}case 2:{e=d+40|0;if(!(c[e>>2]|0)){lb=d+36|0;Ta=lb;lb=c[lb>>2]|0;f=75}else{c[e>>2]=0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;q=c[d+192>>2]|0;if(q){r=c[d+196>>2]|0;e=0;f=0;s=0;do{j=c[r+(s<<4)+8>>2]|0;if(j){k=c[r+(s<<4)+12>>2]|0;l=c[r+(s<<4)>>2]|0;m=c[r+(s<<4)+4>>2]|0;n=j+-1|0;g=0;i=0;while(1){h=n+g|0;Sa=l<>2]|0);h=m<<(c[k+(i<<4)+4>>2]|0)+h;e=(e|0)==0?Sa:e>>>0>>0?e:Sa;f=(f|0)==0?h:f>>>0>>0?f:h;h=i+1|0;if((h|0)==(j|0))break;else{g=~i;i=h}}c[o>>2]=e;c[p>>2]=f}s=s+1|0}while((s|0)!=(q|0))}if(!(a[d>>0]|0)){c[d+104>>2]=c[d+204>>2];c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}J=c[d+44>>2]|0;c[d+28>>2]=J;f=54}while(1){if((f|0)==54){if(J>>>0>=(c[d+56>>2]|0)>>>0){nb=0;f=153;break}Xa=c[d+104>>2]|0;c[d+220>>2]=Xa;f=56}else if((f|0)==75){jb=lb+1|0;c[Ta>>2]=jb;Ua=Ta;f=71}while(1){if((f|0)==56){if((Xa|0)>=(c[d+108>>2]|0)){f=79;break}Ya=c[d+96>>2]|0;c[d+216>>2]=Ya;f=58}else if((f|0)==71){if(jb>>>0<(c[d+52>>2]|0)>>>0){f=73;break}mb=d+24|0;Va=mb;mb=c[mb>>2]|0;f=76}while(1){if((f|0)==58){if((Ya|0)>=(c[d+100>>2]|0)){f=78;break}Za=c[d+48>>2]|0;Wa=d+24|0;c[Wa>>2]=Za}else if((f|0)==76){Za=mb+1|0;c[Va>>2]=Za;Wa=Va}if(Za>>>0>=(c[d+60>>2]|0)>>>0){Ya=c[d+224>>2]|0;f=d+216|0;Sa=c[f>>2]|0;Ya=Sa+Ya-((Sa|0)%(Ya|0)|0)|0;c[f>>2]=Ya;f=58;continue}f=c[d+196>>2]|0;m=c[d+28>>2]|0;e=c[f+(Za<<4)+8>>2]|0;if(m>>>0>=e>>>0){Va=Wa;mb=Za;f=76;continue}n=c[f+(Za<<4)+12>>2]|0;i=e+~m|0;j=c[d+200>>2]|0;k=c[f+(Za<<4)>>2]|0;_a=k<>2]|0;Sa=c[f+(Za<<4)+4>>2]|0;ab=Sa<>2]|0)|0)/(_a|0)|0;db=ab+-1|0;f=(db+(c[d+212>>2]|0)|0)/(ab|0)|0;eb=c[n+(m<<4)>>2]|0;g=eb+i|0;fb=c[n+(m<<4)+4>>2]|0;h=fb+i|0;gb=c[d+220>>2]|0;if((gb|0)%(Sa<>2]|0;if((hb|0)%(k<>2]|0;if(!ib){Va=Wa;mb=Za;f=76;continue}if((bb|0)==(f|0)|(($a|0)==(e|0)?1:(c[n+(m<<4)+12>>2]|0)==0)){Va=Wa;mb=Za;f=76}else{f=70;break}}if((f|0)==70){c[d+32>>2]=(((cb+hb|0)/(_a|0)|0)>>eb)-($a>>eb)+(_((((db+gb|0)/(ab|0)|0)>>fb)-(bb>>fb)|0,ib)|0);jb=c[d+64>>2]|0;Ua=d+36|0;c[Ua>>2]=jb;f=71;continue}else if((f|0)==78){Xa=c[d+228>>2]|0;f=d+220|0;Sa=c[f>>2]|0;Xa=Sa+Xa-((Sa|0)%(Xa|0)|0)|0;c[f>>2]=Xa;f=56;continue}}if((f|0)==73){f=0;kb=_(c[d+8>>2]|0,jb)|0;kb=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+kb|0;kb=kb+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;kb=kb+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;kb=(c[d+4>>2]|0)+(kb<<1)|0;if(!(b[kb>>1]|0))break;else{Ta=Ua;lb=jb;f=75;continue}}else if((f|0)==79){f=d+28|0;J=(c[f>>2]|0)+1|0;c[f>>2]=J;f=54;continue}}if((f|0)==153)return nb|0;b[kb>>1]=1;d=1;return d|0}case 3:{f=d+40|0;if(!(c[f>>2]|0)){Ra=c[d+24>>2]|0;Ka=d+36|0;pa=Ka;Ka=c[Ka>>2]|0;Na=Ra;Ra=(c[d+196>>2]|0)+(Ra<<4)|0;f=113}else{c[f>>2]=0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;q=c[d+192>>2]|0;if(q){r=c[d+196>>2]|0;e=0;f=0;s=0;do{j=c[r+(s<<4)+8>>2]|0;if(j){k=c[r+(s<<4)+12>>2]|0;l=c[r+(s<<4)>>2]|0;m=c[r+(s<<4)+4>>2]|0;n=j+-1|0;g=0;i=0;while(1){h=n+g|0;mb=l<>2]|0);h=m<<(c[k+(i<<4)+4>>2]|0)+h;e=(e|0)==0?mb:e>>>0>>0?e:mb;f=(f|0)==0?h:f>>>0>>0?f:h;h=i+1|0;if((h|0)==(j|0))break;else{g=~i;i=h}}c[o>>2]=e;c[p>>2]=f}s=s+1|0}while((s|0)!=(q|0))}if(!(a[d>>0]|0)){e=c[d+204>>2]|0;c[d+104>>2]=e;c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}else e=c[d+104>>2]|0;c[d+220>>2]=e;f=93}while(1){if((f|0)==93){if((e|0)>=(c[d+108>>2]|0)){nb=0;f=153;break}ta=c[d+96>>2]|0;c[d+216>>2]=ta;f=95}else if((f|0)==113){Ha=Ka+1|0;c[pa>>2]=Ha;qa=pa;Ia=Na;Qa=Ra;f=109}while(1){if((f|0)==95){if((ta|0)>=(c[d+100>>2]|0)){f=117;break}ua=c[d+48>>2]|0;c[d+24>>2]=ua;f=97}else if((f|0)==109){if(Ha>>>0<(c[d+52>>2]|0)>>>0){f=111;break}La=d+28|0;ra=La;La=c[La>>2]|0;Oa=Ia;Sa=Qa;f=114}while(1){if((f|0)==97){if(ua>>>0>=(c[d+60>>2]|0)>>>0){f=116;break}Pa=(c[d+196>>2]|0)+(ua<<4)|0;va=c[d+44>>2]|0;sa=d+28|0;c[sa>>2]=va;Ma=ua}else if((f|0)==114){va=La+1|0;c[ra>>2]=va;sa=ra;Ma=Oa;Pa=Sa}mb=c[d+56>>2]|0;f=c[Pa+8>>2]|0;if(va>>>0>=(mb>>>0>>0?mb:f)>>>0){ua=Ma+1|0;c[d+24>>2]=ua;f=97;continue}n=c[Pa+12>>2]|0;f=f+~va|0;g=c[d+200>>2]|0;h=c[Pa>>2]|0;wa=h<>2]|0;mb=c[Pa+4>>2]|0;ya=mb<>2]|0)|0)/(wa|0)|0;Ba=ya+-1|0;k=(Ba+(c[d+212>>2]|0)|0)/(ya|0)|0;Ca=c[n+(va<<4)>>2]|0;l=Ca+f|0;Da=c[n+(va<<4)+4>>2]|0;m=Da+f|0;Ea=c[d+220>>2]|0;if((Ea|0)%(mb<>2]|0;if((Fa|0)%(h<>2]|0;if(!Ga){ra=sa;La=va;Oa=Ma;Sa=Pa;f=114;continue}if((za|0)==(k|0)|((xa|0)==(j|0)?1:(c[n+(va<<4)+12>>2]|0)==0)){ra=sa;La=va;Oa=Ma;Sa=Pa;f=114}else{f=108;break}}if((f|0)==108){c[d+32>>2]=(((Aa+Fa|0)/(wa|0)|0)>>Ca)-(xa>>Ca)+(_((((Ba+Ea|0)/(ya|0)|0)>>Da)-(za>>Da)|0,Ga)|0);Ha=c[d+64>>2]|0;qa=d+36|0;c[qa>>2]=Ha;Ia=Ma;Qa=Pa;f=109;continue}else if((f|0)==116){ta=c[d+224>>2]|0;f=d+216|0;mb=c[f>>2]|0;ta=mb+ta-((mb|0)%(ta|0)|0)|0;c[f>>2]=ta;f=95;continue}}if((f|0)==111){f=0;Ja=_(c[d+8>>2]|0,Ha)|0;Ja=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+Ja|0;Ja=Ja+(_(c[d+16>>2]|0,Ia)|0)|0;Ja=Ja+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;Ja=(c[d+4>>2]|0)+(Ja<<1)|0;if(!(b[Ja>>1]|0))break;else{pa=qa;Ka=Ha;Na=Ia;Ra=Qa;f=113;continue}}else if((f|0)==117){e=c[d+228>>2]|0;f=d+220|0;mb=c[f>>2]|0;e=mb+e-((mb|0)%(e|0)|0)|0;c[f>>2]=e;f=93;continue}}if((f|0)==153)return nb|0;b[Ja>>1]=1;d=1;return d|0}case 4:{e=d+40|0;if(!(c[e>>2]|0)){na=c[d+24>>2]|0;ea=d+36|0;K=ea;ea=c[ea>>2]|0;ga=na;na=(c[d+196>>2]|0)+(na<<4)|0;f=148}else{c[e>>2]=0;O=c[d+48>>2]|0;c[d+24>>2]=O;f=121}while(1){if((f|0)==121){if(O>>>0>=(c[d+60>>2]|0)>>>0){nb=0;f=153;break}e=c[d+196>>2]|0;q=e+(O<<4)|0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;l=c[e+(O<<4)+8>>2]|0;if(l){m=c[e+(O<<4)+12>>2]|0;n=c[q>>2]|0;h=c[e+(O<<4)+4>>2]|0;i=l+-1|0;f=0;e=0;g=0;k=0;while(1){j=i+g|0;mb=n<>2]|0);j=h<<(c[m+(k<<4)+4>>2]|0)+j;f=(f|0)==0?mb:f>>>0>>0?f:mb;e=(e|0)==0?j:e>>>0>>0?e:j;j=k+1|0;if((j|0)==(l|0))break;else{g=~k;k=j}}c[o>>2]=f;c[p>>2]=e}if(!(a[d>>0]|0)){e=c[d+204>>2]|0;c[d+104>>2]=e;c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}else e=c[d+104>>2]|0;c[d+220>>2]=e;H=e;I=O;f=130}else if((f|0)==148){ba=ea+1|0;c[K>>2]=ba;L=K;ca=ga;ma=na;f=144}while(1){if((f|0)==130){if((H|0)>=(c[d+108>>2]|0)){f=152;break}P=c[d+96>>2]|0;c[d+216>>2]=P;ha=I;ka=q;f=132}else if((f|0)==144){if(ba>>>0<(c[d+52>>2]|0)>>>0){f=146;break}fa=d+28|0;M=fa;fa=c[fa>>2]|0;ja=ca;oa=ma;f=149}while(1){if((f|0)==132){if((P|0)>=(c[d+100>>2]|0)){f=151;break}Q=c[d+44>>2]|0;N=d+28|0;c[N>>2]=Q;ia=ha;la=ka}else if((f|0)==149){Q=fa+1|0;c[M>>2]=Q;N=M;ia=ja;la=oa}mb=c[d+56>>2]|0;e=c[la+8>>2]|0;if(Q>>>0>=(mb>>>0>>0?mb:e)>>>0){P=c[d+224>>2]|0;ha=d+216|0;ka=c[ha>>2]|0;P=ka+P-((ka|0)%(P|0)|0)|0;c[ha>>2]=P;ha=ia;ka=la;f=132;continue}m=c[la+12>>2]|0;e=e+~Q|0;f=c[d+200>>2]|0;g=c[la>>2]|0;R=g<>2]|0;mb=c[la+4>>2]|0;T=mb<>2]|0)|0)/(R|0)|0;W=T+-1|0;j=(W+(c[d+212>>2]|0)|0)/(T|0)|0;X=c[m+(Q<<4)>>2]|0;k=X+e|0;Y=c[m+(Q<<4)+4>>2]|0;l=Y+e|0;Z=c[d+220>>2]|0;if((Z|0)%(mb<>2]|0;if(($|0)%(g<>2]|0;if(!aa){M=N;fa=Q;ja=ia;oa=la;f=149;continue}if((U|0)==(j|0)|((S|0)==(i|0)?1:(c[m+(Q<<4)+12>>2]|0)==0)){M=N;fa=Q;ja=ia;oa=la;f=149}else{f=143;break}}if((f|0)==143){c[d+32>>2]=(((V+$|0)/(R|0)|0)>>X)-(S>>X)+(_((((W+Z|0)/(T|0)|0)>>Y)-(U>>Y)|0,aa)|0);ba=c[d+64>>2]|0;L=d+36|0;c[L>>2]=ba;ca=ia;ma=la;f=144;continue}else if((f|0)==151){H=c[d+228>>2]|0;I=d+220|0;q=c[I>>2]|0;H=q+H-((q|0)%(H|0)|0)|0;c[I>>2]=H;I=ha;q=ka;f=130;continue}}if((f|0)==146){f=0;da=_(c[d+8>>2]|0,ba)|0;da=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+da|0;da=da+(_(c[d+16>>2]|0,ca)|0)|0;da=da+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;da=(c[d+4>>2]|0)+(da<<1)|0;if(!(b[da>>1]|0))break;else{K=L;ea=ba;ga=ca;na=ma;f=148;continue}}else if((f|0)==152){O=I+1|0;c[d+24>>2]=O;f=121;continue}}if((f|0)==153)return nb|0;b[da>>1]=1;d=1;return d|0}default:{d=0;return d|0}}return 0}function Pf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=(c[b+(d*5640|0)+420>>2]|0)+1|0;e=Qc(l,232)|0;if(!e){l=0;return l|0}if(!l){l=e;return l|0}j=a+16|0;g=b+(d*5640|0)+5584|0;a=c[j>>2]|0;h=e;i=0;a:while(1){b=Qc(a,16)|0;f=h+196|0;c[f>>2]=b;if(!b){a=5;break}k=c[j>>2]|0;c[h+192>>2]=k;b:do if(!k)a=0;else{a=(c[g>>2]|0)+4|0;k=Qc(c[a>>2]|0,16)|0;c[b+12>>2]=k;if(!k){a=18;break a}else d=0;while(1){c[b+(d<<4)+8>>2]=c[a>>2];d=d+1|0;a=c[j>>2]|0;if(d>>>0>=a>>>0)break b;b=c[f>>2]|0;a=(c[g>>2]|0)+(d*1080|0)+4|0;k=Qc(c[a>>2]|0,16)|0;c[b+(d<<4)+12>>2]=k;if(!k){a=18;break a}}}while(0);i=i+1|0;if(i>>>0>=l>>>0){a=32;break}else h=h+232|0}if((a|0)==5){a=e+4|0;b=c[a>>2]|0;if(!b){j=e;k=0}else{Uc(b);c[a>>2]=0;j=e;k=0}while(1){i=j+196|0;a=c[i>>2]|0;if(a){h=j+192|0;b=c[h>>2]|0;if(b){g=0;while(1){d=a+12|0;f=c[d>>2]|0;if(f){Uc(f);c[d>>2]=0;b=c[h>>2]|0}g=g+1|0;if(g>>>0>=b>>>0)break;else a=a+16|0}a=c[i>>2]|0}Uc(a);c[i>>2]=0}k=k+1|0;if((k|0)==(l|0))break;else j=j+232|0}Uc(e);l=0;return l|0}else if((a|0)==18){a=e+4|0;b=c[a>>2]|0;if(!b){j=e;k=0}else{Uc(b);c[a>>2]=0;j=e;k=0}while(1){i=j+196|0;a=c[i>>2]|0;if(a){h=j+192|0;b=c[h>>2]|0;if(b){g=0;while(1){d=a+12|0;f=c[d>>2]|0;if(f){Uc(f);c[d>>2]=0;b=c[h>>2]|0}g=g+1|0;if(g>>>0>=b>>>0)break;else a=a+16|0}a=c[i>>2]|0}Uc(a);c[i>>2]=0}k=k+1|0;if((k|0)==(l|0))break;else j=j+232|0}Uc(e);l=0;return l|0}else if((a|0)==32)return e|0;return 0}function Qf(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|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;var 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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;o=c[(c[b+76>>2]|0)+(d*5640|0)+5584>>2]|0;n=c[a+24>>2]|0;I=c[b+24>>2]|0;H=b+12|0;G=(_(c[H>>2]|0,(d>>>0)%(I>>>0)|0)|0)+(c[b+4>>2]|0)|0;F=c[a>>2]|0;c[e>>2]=G>>>0>F>>>0?G:F;G=Si(c[H>>2]|0,0,G|0,0)|0;G=G|0-C;H=c[a+8>>2]|0;c[f>>2]=G>>>0>>0?G:H;H=b+16|0;I=(_(c[H>>2]|0,(d>>>0)/(I>>>0)|0)|0)+(c[b+8>>2]|0)|0;G=c[a+4>>2]|0;c[g>>2]=I>>>0>G>>>0?I:G;I=Si(c[H>>2]|0,0,I|0,0)|0;I=I|0-C;H=c[a+12>>2]|0;c[h>>2]=I>>>0>>0?I:H;c[k>>2]=0;c[l>>2]=0;c[i>>2]=2147483647;c[j>>2]=2147483647;H=a+16|0;if(!(c[H>>2]|0))return;else I=0;while(1){r=c[m+(I<<2)>>2]|0;p=c[n>>2]|0;a=((c[e>>2]|0)+-1+p|0)/(p|0)|0;F=n+4|0;q=c[F>>2]|0;d=((c[g>>2]|0)+-1+q|0)/(q|0)|0;p=(p+-1+(c[f>>2]|0)|0)/(p|0)|0;q=(q+-1+(c[h>>2]|0)|0)/(q|0)|0;G=o+4|0;b=c[G>>2]|0;if(b>>>0>(c[l>>2]|0)>>>0){c[l>>2]=b;b=c[G>>2]|0}if(b){D=Si(a|0,((a|0)<0)<<31>>31|0,-1,-1)|0;E=C;A=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;B=C;y=Si(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;z=C;w=Si(q|0,((q|0)<0)<<31>>31|0,-1,-1)|0;x=C;v=0;while(1){b=b+-1|0;p=c[o+812+(v<<2)>>2]|0;u=c[o+944+(v<<2)>>2]|0;c[r>>2]=p;c[r+4>>2]=u;s=c[n>>2]<>2]<>2]|0;c[i>>2]=(a|0)<(s|0)?a:s;s=c[j>>2]|0;c[j>>2]=(s|0)<(J|0)?s:J;J=Ri(1,0,b|0)|0;s=C;a=Si(D|0,E|0,J|0,s|0)|0;a=Pi(a|0,C|0,b|0)|0;q=Si(A|0,B|0,J|0,s|0)|0;q=Pi(q|0,C|0,b|0)|0;d=Si(y|0,z|0,J|0,s|0)|0;d=Pi(d|0,C|0,b|0)|0;s=Si(w|0,x|0,J|0,s|0)|0;s=Pi(s|0,C|0,b|0)|0;J=Ri(1,0,u|0)|0;t=C;K=Si(s|0,((s|0)<0)<<31>>31|0,-1,-1)|0;t=Si(K|0,C|0,J|0,t|0)|0;t=Pi(t|0,C|0,u|0)|0;if((a|0)==(d|0))a=0;else{d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;J=C;K=Ri(1,0,p|0)|0;K=Si(d|0,J|0,K|0,C|0)|0;K=Pi(K|0,C|0,p|0)|0;a=(K<>p<>p}K=(q|0)==(s|0)?0:(t<>u<>u;c[r+8>>2]=a;c[r+12>>2]=K;a=_(a,K)|0;if(a>>>0>(c[k>>2]|0)>>>0)c[k>>2]=a;v=v+1|0;if(v>>>0>=(c[G>>2]|0)>>>0)break;else r=r+16|0}}I=I+1|0;if(I>>>0>=(c[H>>2]|0)>>>0)break;else{n=n+52|0;o=o+1080|0}}return}function Rf(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c[a+(b*5640|0)+420>>2]|0)+1|0;c[a+(b*5640|0)+500>>2]=c[a+(b*5640|0)+428>>2];c[a+(b*5640|0)+516>>2]=c[a+(b*5640|0)+440>>2];c[a+(b*5640|0)+496>>2]=c[a+(b*5640|0)+424>>2];c[a+(b*5640|0)+512>>2]=c[a+(b*5640|0)+436>>2];c[a+(b*5640|0)+508>>2]=c[a+(b*5640|0)+432>>2];c[a+(b*5640|0)+492>>2]=0;c[a+(b*5640|0)+460>>2]=c[a+(b*5640|0)+456>>2];c[a+(b*5640|0)+504>>2]=0;c[a+(b*5640|0)+520>>2]=h;c[a+(b*5640|0)+524>>2]=d;c[a+(b*5640|0)+528>>2]=e;c[a+(b*5640|0)+532>>2]=f;c[a+(b*5640|0)+536>>2]=g;c[a+(b*5640|0)+540>>2]=i;c[a+(b*5640|0)+544>>2]=j;if(k>>>0<=1)return;a=a+(b*5640|0)+572|0;b=1;while(1){c[a+76>>2]=c[a+4>>2];c[a+92>>2]=c[a+16>>2];c[a+72>>2]=c[a>>2];c[a+88>>2]=c[a+12>>2];l=c[a+8>>2]|0;c[a+84>>2]=l;c[a+36>>2]=c[a+32>>2];c[a+80>>2]=0;c[a+68>>2]=l>>>0>(c[a+-64>>2]|0)>>>0?l:0;c[a+96>>2]=h;c[a+100>>2]=d;c[a+104>>2]=e;c[a+108>>2]=f;c[a+112>>2]=g;c[a+116>>2]=i;c[a+120>>2]=j;b=b+1|0;if((b|0)==(k|0))break;else a=a+148|0}return}function Sf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=c[d+76>>2]|0;if((b|0)>-1)h=b;else{e=0;return e|0}a:while(1){switch(a[g+h>>0]|0){case 82:{i=3;break a}case 67:{i=5;break a}case 76:{i=7;break a}case 80:{i=9;break a}default:{}}h=h+-1|0}if((i|0)==3)if((c[j+(e*5640|0)+424+(f*148|0)+128>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+88>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==5)if((c[j+(e*5640|0)+424+(f*148|0)+132>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+92>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==7)if((c[j+(e*5640|0)+424+(f*148|0)+124>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+84>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==9){if((c[j+(e*5640|0)+424+(f*148|0)+36>>2]|0)>>>0<2)if((c[j+(e*5640|0)+424+(f*148|0)+136>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+96>>2]|0))return (Sf(h+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}if((c[j+(e*5640|0)+424+(f*148|0)+140>>2]|0)!=(c[j+(e*5640|0)+424+(f*148|0)+104>>2]|0)){e=1;return e|0}if((c[j+(e*5640|0)+424+(f*148|0)+144>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+112>>2]|0))return (Sf(h+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}}return 0}function Tf(b){b=b|0;var d=0,e=0;d=Qc(1,44)|0;if(!d){b=0;return b|0}e=d+40|0;a[e>>0]=a[e>>0]&-2|(b|0)!=0;b=Qc(1,4)|0;c[d+20>>2]=b;if(b){e=d;return e|0}Uc(d);e=0;return e|0}function Uf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=i;i=i+1200|0;N=O;e=c[c[a+20>>2]>>2]|0;M=e+16|0;f=c[M>>2]|0;if(!f){i=O;return}J=e+20|0;K=(c[a+32>>2]|0)+8|0;L=(c[a+28>>2]|0)+88|0;H=a+24|0;I=(b|0)==0;F=(d|0)==0;G=b+-1|0;e=f;E=0;do{j=c[J>>2]|0;k=c[K>>2]|0;C=c[j+(E*52|0)+16>>2]|0;if(k){if(C){a=c[L>>2]|0;g=+((c[(c[(c[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)>>>0)*.0625;f=0;do{d=_(C,f)|0;h=0;do{D=(d+h|0)*3|0;c[N+(f*120|0)+(h*12|0)>>2]=~~(+(c[a+(D<<2)>>2]|0)*g);c[N+(f*120|0)+(h*12|0)+4>>2]=~~(+(c[a+(D+1<<2)>>2]|0)*g);c[N+(f*120|0)+(h*12|0)+8>>2]=~~(+(c[a+(D+2<<2)>>2]|0)*g);h=h+1|0}while(h>>>0>>0);f=f+1|0}while(f>>>0>>0);D=9}}else D=9;if((D|0)==9){D=0;if(C){w=j+(E*52|0)+24|0;B=0;do{x=c[w>>2]|0;y=x+(B*136|0)+24|0;e=c[y>>2]|0;if(e){z=x+(B*136|0)+16|0;A=x+(B*136|0)+20|0;a=c[A>>2]|0;d=c[z>>2]|0;v=0;do{if(_(a,d)|0){s=x+(B*136|0)+28+(v*36|0)+20|0;t=N+(b*120|0)+(B*12|0)+(v<<2)|0;u=N+(G*120|0)+(B*12|0)+(v<<2)|0;r=0;do{e=c[s>>2]|0;q=_(c[e+(r*40|0)+20>>2]|0,c[e+(r*40|0)+16>>2]|0)|0;if(q){m=e+(r*40|0)+24|0;n=c[t>>2]|0;p=0;do{k=c[m>>2]|0;l=k+(p*52|0)|0;o=c[k+(p*52|0)+4>>2]|0;e=(c[(c[(c[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)-(c[k+(p*52|0)+28>>2]|0)|0;if(!I){a=c[u>>2]|0;d=n-a|0;if((a|0)<=(e|0)){d=d+(a-e)|0;d=(d|0)<0?0:d}}else{c[k+(p*52|0)+44>>2]=0;d=(n|0)>(e|0)?n-e|0:0}j=k+(p*52|0)+44|0;f=c[j>>2]|0;h=(f|0)==0;if(h)if(!d)d=0;else d=(d*3|0)+-2|0;else d=(d*3|0)+f|0;c[o+(b*24|0)>>2]=d-f;do if((d|0)!=(f|0)){a=c[k+(p*52|0)+8>>2]|0;e=c[a+((d+-1|0)*24|0)>>2]|0;if(h)c[o+(b*24|0)+16>>2]=c[l>>2];else{k=c[a+((f+-1|0)*24|0)>>2]|0;c[o+(b*24|0)+16>>2]=(c[l>>2]|0)+k;e=e-k|0}c[o+(b*24|0)+4>>2]=e;if(F)break;c[j>>2]=d}while(0);p=p+1|0}while(p>>>0>>0);a=c[A>>2]|0;d=c[z>>2]|0}r=r+1|0}while(r>>>0<(_(a,d)|0)>>>0);e=c[y>>2]|0}v=v+1|0}while(v>>>0>>0)}B=B+1|0}while(B>>>0>>0);e=c[M>>2]|0}}E=E+1|0}while(E>>>0>>0);i=O;return}function Vf(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,g=0.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;a=c[c[a+20>>2]>>2]|0;G=a+40+(b<<3)|0;h[G>>3]=0.0;H=a+16|0;f=c[H>>2]|0;if(!f)return;E=a+20|0;F=(b|0)==0;D=(e|0)==0;a=f;C=0;do{f=c[E>>2]|0;B=c[f+(C*52|0)+16>>2]|0;if(B){v=f+(C*52|0)+24|0;A=0;do{w=c[v>>2]|0;x=w+(A*136|0)+24|0;a=c[x>>2]|0;if(a){y=w+(A*136|0)+16|0;z=w+(A*136|0)+20|0;f=c[z>>2]|0;e=c[y>>2]|0;u=0;do{if(_(f,e)|0){t=w+(A*136|0)+28+(u*36|0)+20|0;s=0;do{a=c[t>>2]|0;r=_(c[a+(s*40|0)+20>>2]|0,c[a+(s*40|0)+16>>2]|0)|0;if(r){n=a+(s*40|0)+24|0;q=0;do{k=c[n>>2]|0;l=k+(q*52|0)|0;o=c[k+(q*52|0)+4>>2]|0;p=k+(q*52|0)+44|0;if(F){c[p>>2]=0;m=0}else m=c[p>>2]|0;e=c[k+(q*52|0)+48>>2]|0;if(m>>>0>>0){i=c[k+(q*52|0)+8>>2]|0;a=m;j=m;do{f=c[i+(j*24|0)>>2]|0;g=+h[i+(j*24|0)+8>>3];if(a){J=a+-1|0;g=g-+h[i+(J*24|0)+8>>3];f=f-(c[i+(J*24|0)>>2]|0)|0}do if(!f){if(!(g!=0.0))break;a=j+1|0}else{if(!(d-g/+(f>>>0)<2.220446049250313e-16))break;a=j+1|0}while(0);j=j+1|0}while(j>>>0>>0);i=a;c[o+(b*24|0)>>2]=i-m;if((i|0)!=(m|0)){e=i+-1|0;f=c[k+(q*52|0)+8>>2]|0;a=c[f+(e*24|0)>>2]|0;if(!m){c[o+(b*24|0)+16>>2]=c[l>>2];g=+h[f+(e*24|0)+8>>3]}else{m=m+-1|0;J=c[f+(m*24|0)>>2]|0;c[o+(b*24|0)+16>>2]=(c[l>>2]|0)+J;g=+h[f+(e*24|0)+8>>3]-+h[f+(m*24|0)+8>>3];a=a-J|0}c[o+(b*24|0)+4>>2]=a;h[o+(b*24|0)+8>>3]=g;h[G>>3]=g+ +h[G>>3];if(!D)c[p>>2]=i}else I=26}else{c[o+(b*24|0)>>2]=0;I=26}if((I|0)==26){I=0;h[o+(b*24|0)+8>>3]=0.0}q=q+1|0}while(q>>>0>>0);f=c[z>>2]|0;e=c[y>>2]|0}s=s+1|0}while(s>>>0<(_(f,e)|0)>>>0);a=c[x>>2]|0}u=u+1|0}while(u>>>0>>0)}A=A+1|0}while(A>>>0>>0);a=c[H>>2]|0}C=C+1|0}while(C>>>0>>0);return}function Wf(d,e,f,j,k){d=d|0;e=e|0;f=f|0;j=j|0;k=k|0;var 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.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,N=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;W=i;i=i+800|0;V=W;S=c[d+28>>2]|0;T=c[c[d+20>>2]>>2]|0;U=c[d+32>>2]|0;O=T+24|0;c[O>>2]=0;Q=c[T+16>>2]|0;if(!Q){l=0;J=0.0;n=0.0;p=1797693134862315708145274.0e284}else{M=c[T+20>>2]|0;N=c[(c[d+24>>2]|0)+24>>2]|0;l=0;R=0;o=0.0;n=0.0;p=1797693134862315708145274.0e284;do{I=M+(R*52|0)+48|0;c[I>>2]=0;K=c[M+(R*52|0)+16>>2]|0;if(!K)m=0;else{L=c[M+(R*52|0)+24>>2]|0;m=0;H=0;do{E=c[L+(H*136|0)+24>>2]|0;if(E){F=_(c[L+(H*136|0)+20>>2]|0,c[L+(H*136|0)+16>>2]|0)|0;G=(F|0)==0;D=0;do{if(!G){C=c[L+(H*136|0)+28+(D*36|0)+20>>2]|0;B=0;do{z=_(c[C+(B*40|0)+20>>2]|0,c[C+(B*40|0)+16>>2]|0)|0;if(z){A=c[C+(B*40|0)+24>>2]|0;y=0;do{v=c[A+(y*52|0)+48>>2]|0;if(v){w=c[A+(y*52|0)+8>>2]|0;u=0;do{t=c[w+(u*24|0)>>2]|0;q=+h[w+(u*24|0)+8>>3];if(u){X=u+-1|0;q=q-+h[w+(X*24|0)+8>>3];t=t-(c[w+(X*24|0)>>2]|0)|0}do if(t){q=q/+(t|0);p=qo))break;o=q}while(0);u=u+1|0}while(u>>>0>>0)}X=_((c[A+(y*52|0)+24>>2]|0)-(c[A+(y*52|0)+16>>2]|0)|0,(c[A+(y*52|0)+20>>2]|0)-(c[A+(y*52|0)+12>>2]|0)|0)|0;l=X+l|0;m=X+m|0;y=y+1|0}while(y>>>0>>0);c[O>>2]=l;c[I>>2]=m}B=B+1|0}while(B>>>0>>0)}D=D+1|0}while(D>>>0>>0)}H=H+1|0}while(H>>>0>>0)}J=+(1<>2]|0)+-1.0;n=n+ +(m|0)*(J*J);R=R+1|0}while(R>>>0>>0);J=o}I=(k|0)!=0;if(I){R=c[d+36>>2]|0;Q=c[k+88>>2]|0;c[Q+(R*592|0)+552>>2]=l;h[Q+(R*592|0)+560>>3]=+h[T+32>>3];l=U+8|0;X=Pc(c[l>>2]<<3)|0;c[Q+(R*592|0)>>2]=X;if(!X){X=0;i=W;return X|0}}else l=U+8|0;if(!(c[l>>2]|0)){X=1;i=W;return X|0}z=T+32|0;A=S+93|0;B=d+36|0;C=k+88|0;D=T+40|0;E=d+24|0;F=d+8|0;G=d+16|0;H=0;while(1){o=+g[U+20+(H<<2)>>2];if(o!=0.0){w=~~+Z(+o)>>>0;w=w>>>0>>0?w:j}else w=j;s=+g[U+5184+(H<<2)>>2];x=+h[z>>3]-n/+P(10.0,+(s/10.0));X=a[A>>0]|0;if(!((X&1)!=0&o>0.0)?!((X&4)!=0&s>0.0):0)o=p;else{y=dh(c[E>>2]|0,S)|0;if(!y){l=0;m=57;break}v=H+1|0;m=V+(H+-1<<3)|0;t=T+40+(H<<3)|0;if(!H){r=J;m=0;s=p;q=0.0;do{o=(s+r)*.5;Vf(d,0,o,0);do if(a[A>>0]&4){if(((b[S>>1]|0)+-3&65535)>=4){X=+h[D>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0))s=o;else{X=+h[D>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0)==0;r=X?r:o;s=X?o:s;q=X?q:o}while(0);m=m+1|0}while((m|0)!=128)}else{r=J;u=0;s=p;q=0.0;do{o=(s+r)*.5;Vf(d,H,o,0);do if(a[A>>0]&4){if(((b[S>>1]|0)+-3&65535)>=4){X=+h[m>>3]+ +h[t>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0))s=o;else{X=+h[m>>3]+ +h[t>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0)==0;r=X?r:o;s=X?o:s;q=X?q:o}while(0);u=u+1|0}while((u|0)!=128)}eh(y);o=q==0.0?o:q}if(I)h[(c[(c[C>>2]|0)+((c[B>>2]|0)*592|0)>>2]|0)+(H<<3)>>3]=o;Vf(d,H,o,1);if(!H)o=+h[D>>3];else o=+h[V+(H+-1<<3)>>3]+ +h[T+40+(H<<3)>>3];h[V+(H<<3)>>3]=o;H=H+1|0;if(H>>>0>=(c[l>>2]|0)>>>0){l=1;m=57;break}}if((m|0)==57){i=W;return l|0}return 0}function Xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a+24>>2]=b;c[a+28>>2]=d;f=Qc(1,848)|0;e=a+20|0;c[c[e>>2]>>2]=f;if(!f){a=0;return a|0}f=b+16|0;g=Qc(c[f>>2]|0,52)|0;b=c[c[e>>2]>>2]|0;c[b+20>>2]=g;if(!g){g=0;return g|0}c[b+16>>2]=c[f>>2];c[a>>2]=c[d+84>>2];g=1;return g|0}function Yf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;if(!b)return;s=b+20|0;d=c[s>>2]|0;do if(d){r=(a[b+40>>0]&1)==0?3:4;e=c[d>>2]|0;if(e){o=e+20|0;k=e+16|0;if(c[k>>2]|0){m=0;n=c[o>>2]|0;while(1){l=n+24|0;d=c[l>>2]|0;if(d){i=c[n+28>>2]|0;j=(i>>>0)/136|0;if(i>>>0>135){i=0;while(1){h=d+48|0;e=c[h>>2]|0;if(e){f=c[d+52>>2]|0;g=(f>>>0)/40|0;if(f>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=d+84|0;e=c[h>>2]|0;if(e){t=c[d+88>>2]|0;g=(t>>>0)/40|0;if(t>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=d+120|0;e=c[h>>2]|0;if(e){t=c[d+124>>2]|0;g=(t>>>0)/40|0;if(t>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}i=i+1|0;if(i>>>0>=j>>>0)break;else d=d+136|0}d=c[l>>2]|0}Uc(d);c[l>>2]=0}if((c[n+36>>2]|0)!=0?(p=n+32|0,q=c[p>>2]|0,(q|0)!=0):0){Sc(q);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0}m=m+1|0;if(m>>>0>=(c[k>>2]|0)>>>0)break;else n=n+52|0}}Uc(c[o>>2]|0);c[o>>2]=0;Uc(c[c[s>>2]>>2]|0);d=c[s>>2]|0;c[d>>2]=0;if(!d)break}Uc(d);c[s>>2]=0}while(0);Uc(b);return}function Zf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+32|0;f=c[e>>2]|0;b=a+40|0;d=c[b>>2]|0;if(f){g=a+44|0;if(d>>>0<=(c[g>>2]|0)>>>0){a=1;return a|0}if(c[a+36>>2]|0){Sc(f);f=Rc(c[b>>2]|0)|0;c[e>>2]=f;if(!f){c[g>>2]=0;c[b>>2]=0;c[a+36>>2]=0;a=0;return a|0}else{c[g>>2]=c[b>>2];c[a+36>>2]=1;a=1;return a|0}}}g=Rc(d)|0;c[e>>2]=g;if(!g){a=0;return a|0}c[a+44>>2]=c[b>>2];c[a+36>>2]=1;a=1;return a|0}function _f(a,b,c){a=a|0;b=b|0;c=c|0;return ig(a,b,1,1.0,52,c)|0}function $f(a,b,c){a=a|0;b=b|0;c=c|0;return ig(a,b,0,.5,56,c)|0}function ag(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+24>>2]|0;f=c[d+16>>2]|0;if(!f){g=0;return g|0}g=0;b=0;e=c[d+24>>2]|0;d=c[(c[c[a+20>>2]>>2]|0)+20>>2]|0;while(1){i=c[e+24>>2]|0;i=((i&7|0)!=0&1)+(i>>>3)|0;h=c[d+24>>2]|0;a=(c[d+20>>2]|0)+-1|0;b=(_(_((i|0)==3?4:i,(c[h+(a*136|0)+8>>2]|0)-(c[h+(a*136|0)>>2]|0)|0)|0,(c[h+(a*136|0)+12>>2]|0)-(c[h+(a*136|0)+4>>2]|0)|0)|0)+b|0;g=g+1|0;if(g>>>0>=f>>>0)break;else{e=e+52|0;d=d+52|0}}return b|0}function bg(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+16|0;w=y;if(!(c[b+8>>2]|0)){c[b+36>>2]=d;u=b+28|0;j=c[(c[u>>2]|0)+76>>2]|0;x=b+32|0;c[x>>2]=j+(d*5640|0);v=(h|0)==0;t=b+20|0;if(!v){k=c[(c[c[t>>2]>>2]|0)+20>>2]|0;o=c[j+(d*5640|0)+5584>>2]|0;p=k+16|0;if(!(c[p>>2]|0)){k=h+88|0;j=0}else{l=c[k+24>>2]|0;k=h+88|0;m=c[k>>2]|0;n=0;j=0;do{s=l+(n*136|0)+16|0;c[m+(d*592|0)+20+(n<<2)>>2]=c[s>>2];r=l+(n*136|0)+20|0;c[m+(d*592|0)+152+(n<<2)>>2]=c[r>>2];j=(_(c[r>>2]|0,c[s>>2]|0)|0)+j|0;c[m+(d*592|0)+284+(n<<2)>>2]=c[o+812+(n<<2)>>2];c[m+(d*592|0)+416+(n<<2)>>2]=c[o+944+(n<<2)>>2];n=n+1|0}while(n>>>0<(c[p>>2]|0)>>>0)}s=Qc(_(_(c[h+52>>2]|0,j)|0,c[h+56>>2]|0)|0,32)|0;c[(c[k>>2]|0)+(d*592|0)+548>>2]=s;if(!s){b=0;i=y;return b|0}}j=c[c[t>>2]>>2]|0;s=j+16|0;if(!(c[s>>2]|0)){n=c[x>>2]|0;l=0;k=c[j+20>>2]|0}else{n=c[x>>2]|0;k=c[j+20>>2]|0;d=0;q=c[n+5584>>2]|0;r=k;while(1){o=c[r+32>>2]|0;p=_((c[r+12>>2]|0)-(c[r+4>>2]|0)|0,(c[r+8>>2]|0)-(c[r>>2]|0)|0)|0;j=(p|0)==0;if((c[q+20>>2]|0)==1){if(!j){l=q+1076|0;m=0;j=o;while(1){c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);m=m+1|0;if((m|0)==(p|0))break;else j=j+4|0}}}else if(!j){l=q+1076|0;m=0;j=o;while(1){c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0)<<11;m=m+1|0;if((m|0)==(p|0))break;else j=j+4|0}}d=d+1|0;l=c[s>>2]|0;if(d>>>0>=l>>>0)break;else{q=q+1080|0;r=r+52|0}}}o=_((c[k+12>>2]|0)-(c[k+4>>2]|0)|0,(c[k+8>>2]|0)-(c[k>>2]|0)|0)|0;a:do switch(c[n+16>>2]|0){case 0:break;case 2:{if(c[n+5608>>2]|0){m=Pc(l<<2)|0;if(!m){b=0;i=y;return b|0}j=c[s>>2]|0;if(!j)j=0;else{l=0;while(1){c[m+(l<<2)>>2]=c[k+32>>2];l=l+1|0;if((l|0)==(j|0))break;else k=k+52|0}}s=(Gf(c[(c[x>>2]|0)+5608>>2]|0,o,m,j,c[(c[(c[b+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Uc(m);if(s){b=0;i=y;return b|0}}break}default:{l=c[k+32>>2]|0;m=c[k+84>>2]|0;j=c[k+136>>2]|0;if(!(c[(c[n+5584>>2]|0)+20>>2]|0)){Ef(l,m,j,o);break a}else{Cf(l,m,j,o);break a}}}while(0);j=c[c[t>>2]>>2]|0;k=j+16|0;b:do if(c[k>>2]|0){l=0;m=c[(c[x>>2]|0)+5584>>2]|0;j=c[j+20>>2]|0;c:while(1){switch(c[m+20>>2]|0){case 1:{if(!(Fg(j)|0)){j=0;k=54;break c}break}case 0:{if(!(Jg(j)|0)){j=0;k=54;break c}break}default:{}}l=l+1|0;if(l>>>0>=(c[k>>2]|0)>>>0)break b;else{m=m+1080|0;j=j+52|0}}if((k|0)==54){i=y;return j|0}}while(0);j=c[x>>2]|0;k=Wg(1)|0;if(!k){b=0;i=y;return b|0}do if((c[j+16>>2]|0)==1)if(!(c[(c[j+5584>>2]|0)+20>>2]|0)){l=Bf()|0;m=3;break}else{l=Af()|0;m=3;break}else{l=c[j+5600>>2]|0;m=c[(c[b+24>>2]|0)+16>>2]|0}while(0);t=Zg(k,c[c[t>>2]>>2]|0,j,l,m)|0;Xg(k);if(!t){b=0;i=y;return b|0}j=c[u>>2]|0;c[w>>2]=0;if(!v)c[h+12>>2]=0;if(!(a[j+93>>0]&5)){if(c[(c[x>>2]|0)+8>>2]|0){j=0;do{Uf(b,j,1);j=j+1|0}while(j>>>0<(c[(c[x>>2]|0)+8>>2]|0)>>>0)}}else if(!(Wf(b,e,w,g,h)|0)){b=0;i=y;return b|0}}if(h)c[h+12>>2]=1;j=dh(c[b+24>>2]|0,c[b+28>>2]|0)|0;if(!j)j=1;else{b=bh(j,c[b+36>>2]|0,c[c[b+20>>2]>>2]|0,c[(c[b+32>>2]|0)+8>>2]|0,e,f,g,h,c[b+4>>2]|0,c[b>>2]|0,c[b+16>>2]|0,1)|0;eh(j);j=(b|0)==0}b=j&1^1;i=y;return b|0}function cg(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+16|0;m=u+8|0;l=u;k=u+12|0;j=a+36|0;c[j>>2]=e;t=c[a+28>>2]|0;p=a+32|0;c[p>>2]=(c[t+76>>2]|0)+(e*5640|0);c[k>>2]=0;o=a+24|0;e=dh(c[o>>2]|0,t)|0;if(!e){t=0;i=u;return t|0}n=a+20|0;t=ch(e,c[j>>2]|0,c[c[n>>2]>>2]|0,b,k,d,f,h)|0;eh(e);if(!t){t=0;i=u;return t|0}e=c[c[n>>2]>>2]|0;a=c[(c[p>>2]|0)+5584>>2]|0;j=c[e+20>>2]|0;d=Wg(0)|0;if(!d){t=0;i=u;return t|0}k=e+16|0;a:do if(c[k>>2]|0){f=0;e=j;while(1){if(!(Yg(d,e,a)|0))break;f=f+1|0;if(f>>>0>=(c[k>>2]|0)>>>0)break a;else{a=a+1080|0;e=e+52|0}}Xg(d);t=0;i=u;return t|0}while(0);Xg(d);e=c[c[n>>2]>>2]|0;j=e+16|0;do if(c[j>>2]|0){k=0;f=c[(c[o>>2]|0)+24>>2]|0;d=c[(c[p>>2]|0)+5584>>2]|0;a=c[e+20>>2]|0;while(1){e=(c[f+36>>2]|0)+1|0;if((c[d+20>>2]|0)==1){if(!(Gg(a,e)|0)){e=0;a=49;break}}else if(!(Ng(a,e)|0)){e=0;a=49;break}k=k+1|0;if(k>>>0>=(c[j>>2]|0)>>>0){a=14;break}else{f=f+52|0;d=d+1080|0;a=a+52|0}}if((a|0)==14){e=c[c[n>>2]>>2]|0;break}else if((a|0)==49){i=u;return e|0}}while(0);k=c[p>>2]|0;a=c[e+20>>2]|0;j=c[k+16>>2]|0;do if(j){b=_((c[a+12>>2]|0)-(c[a+4>>2]|0)|0,(c[a+8>>2]|0)-(c[a>>2]|0)|0)|0;d=e+16|0;e=c[d>>2]|0;if(e>>>0<=2){c[m>>2]=e;Ub(h,1,19703,m)|0;break}if((_((c[a+64>>2]|0)-(c[a+56>>2]|0)|0,(c[a+60>>2]|0)-(c[a+52>>2]|0)|0)|0)>=(b|0)?(_((c[a+116>>2]|0)-(c[a+108>>2]|0)|0,(c[a+112>>2]|0)-(c[a+104>>2]|0)|0)|0)>=(b|0):0){if((j|0)!=2){e=c[a+32>>2]|0;if((c[(c[k+5584>>2]|0)+20>>2]|0)==1){Df(e,c[a+84>>2]|0,c[a+136>>2]|0,b);break}else{Ff(e,c[a+84>>2]|0,c[a+136>>2]|0,b);break}}f=k+5604|0;if(!(c[f>>2]|0))break;k=Pc(e<<2)|0;if(!k){t=0;i=u;return t|0}e=c[d>>2]|0;if(!e)e=0;else{j=0;while(1){c[k+(j<<2)>>2]=c[a+32>>2];j=j+1|0;if((j|0)==(e|0))break;else a=a+52|0}}t=(Hf(c[f>>2]|0,b,k,e,c[(c[(c[o>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Uc(k);if(t)e=0;else break;i=u;return e|0}Ub(h,1,19642,l)|0;t=0;i=u;return t|0}while(0);e=c[c[n>>2]>>2]|0;s=e+16|0;if(!(c[s>>2]|0)){t=1;i=u;return t|0}t=0;r=c[(c[o>>2]|0)+24>>2]|0;q=c[(c[p>>2]|0)+5584>>2]|0;p=c[e+20>>2]|0;while(1){o=c[p+24>>2]|0;h=c[r+36>>2]|0;j=c[o+(h*136|0)+8>>2]|0;k=c[o+(h*136|0)>>2]|0;n=j-k|0;f=c[o+(h*136|0)+12>>2]|0;h=c[o+(h*136|0)+4>>2]|0;o=(c[p+8>>2]|0)-(c[p>>2]|0)-n|0;e=c[r+24>>2]|0;if(!(c[r+32>>2]|0)){e=1<>2]|0;a=(f|0)==(h|0);if((c[q+20>>2]|0)==1){if(!a){d=(j|0)==(k|0);b=q+1076|0;k=f-h|0;f=0;while(1){if(!d){a=0;j=e;while(1){h=(c[b>>2]|0)+(c[j>>2]|0)|0;c[j>>2]=(h|0)<(m|0)?m:(h|0)>(l|0)?l:h;a=a+1|0;if((a|0)==(n|0))break;else j=j+4|0}e=e+(n<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else e=e+(o<<2)|0}}}else if(!a){d=(j|0)==(k|0);b=q+1076|0;k=f-h|0;f=0;while(1){if(!d){a=0;j=e;while(1){h=Hh(+g[j>>2])|0;h=(c[b>>2]|0)+h|0;c[j>>2]=(h|0)<(m|0)?m:(h|0)>(l|0)?l:h;a=a+1|0;if((a|0)==(n|0))break;else j=j+4|0}e=e+(n<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else e=e+(o<<2)|0}}t=t+1|0;if(t>>>0>=(c[s>>2]|0)>>>0){e=1;break}else{r=r+52|0;q=q+1080|0;p=p+52|0}}i=u;return e|0}function dg(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d+24|0;m=c[q>>2]|0;h=c[m+16>>2]|0;l=(h|0)==0;if(l){q=1;return q|0}i=0;g=0;j=c[m+24>>2]|0;k=c[(c[c[d+20>>2]>>2]|0)+20>>2]|0;while(1){n=c[j+24>>2]|0;n=((n&7|0)!=0&1)+(n>>>3)|0;o=c[k+24>>2]|0;p=(c[k+20>>2]|0)+-1|0;g=(_(_((n|0)==3?4:n,(c[o+(p*136|0)+8>>2]|0)-(c[o+(p*136|0)>>2]|0)|0)|0,(c[o+(p*136|0)+12>>2]|0)-(c[o+(p*136|0)+4>>2]|0)|0)|0)+g|0;i=i+1|0;if((i|0)==(h|0))break;else{j=j+52|0;k=k+52|0}}g=g>>>0>f>>>0;if(g|l){q=g&1^1;return q|0}p=0;o=c[m+24>>2]|0;n=c[(c[c[d+20>>2]>>2]|0)+20>>2]|0;while(1){l=c[o+24>>2]|0;d=c[n+24>>2]|0;f=c[o+36>>2]|0;i=c[d+(f*136|0)+8>>2]|0;j=c[d+(f*136|0)>>2]|0;m=i-j|0;k=c[d+(f*136|0)+12>>2]|0;f=c[d+(f*136|0)+4>>2]|0;d=(c[n+8>>2]|0)-(c[n>>2]|0)-m|0;l=((l&7|0)!=0&1)+(l>>>3)|0;a:do switch(((l|0)==3?4:l)|0){case 1:{g=c[n+32>>2]|0;h=(k|0)==(f|0);if(!(c[o+32>>2]|0)){if(h)break a;l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+m|0;i=0;h=g;while(1){a[e>>0]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+1|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}else{if(h)break a;l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+m|0;i=0;h=g;while(1){a[e>>0]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+1|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}case 2:{g=c[n+32>>2]|0;h=(k|0)==(f|0);if(!(c[o+32>>2]|0)){if(!h){l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+(m<<1)|0;i=0;h=g;while(1){b[e>>1]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+2|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}}else if(!h){l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+(m<<1)|0;i=0;h=g;while(1){b[e>>1]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+2|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}case 4:{if((k|0)!=(f|0)){l=(i|0)==(j|0);k=k-f|0;f=0;g=c[n+32>>2]|0;while(1){if(!l){j=e+(m<<2)|0;i=0;h=g;while(1){c[e>>2]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+4|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(c[(c[q>>2]|0)+16>>2]|0)>>>0){e=1;break}else{o=o+52|0;n=n+52|0}}return e|0}function eg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=c[a+24>>2]|0;f=c[d+16>>2]|0;if(!f){g=0;return g|0}g=0;b=0;e=c[d+24>>2]|0;d=c[(c[c[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=c[e+24>>2]|0;a=((a&7|0)!=0&1)+(a>>>3)|0;b=(_(_((c[d+12>>2]|0)-(c[d+4>>2]|0)|0,(c[d+8>>2]|0)-(c[d>>2]|0)|0)|0,(a|0)==3?4:a)|0)+b|0;g=g+1|0;if(g>>>0>=f>>>0)break;else{e=e+52|0;d=d+52|0}}return b|0}function fg(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=c[f+24>>2]|0;q=o+16|0;j=c[q>>2]|0;n=(j|0)==0;if(n)i=0;else{k=0;i=0;l=c[o+24>>2]|0;m=c[(c[c[f+20>>2]>>2]|0)+20>>2]|0;while(1){p=c[l+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;i=(_(_((c[m+12>>2]|0)-(c[m+4>>2]|0)|0,(c[m+8>>2]|0)-(c[m>>2]|0)|0)|0,(p|0)==3?4:p)|0)+i|0;k=k+1|0;if((k|0)==(j|0))break;else{l=l+52|0;m=m+52|0}}}i=(i|0)!=(h|0);if(i|n){q=i&1^1;return q|0}p=0;n=c[o+24>>2]|0;h=c[(c[c[f+20>>2]>>2]|0)+20>>2]|0;while(1){f=c[n+24>>2]|0;i=(c[h+8>>2]|0)-(c[h>>2]|0)|0;j=(c[h+12>>2]|0)-(c[h+4>>2]|0)|0;m=_(j,i)|0;f=((f&7|0)!=0&1)+(f>>>3)|0;a:do switch(((f|0)==3?4:f)|0){case 1:{j=c[h+32>>2]|0;i=(m|0)==0;if(!(c[n+32>>2]|0)){if(i)break a;else{k=0;i=j;j=g}while(1){c[i>>2]=d[j>>0];k=k+1|0;if((k|0)==(m|0))break;else{i=i+4|0;j=j+1|0}}g=g+m|0;break a}else{if(i)break a;else{k=0;i=j;j=g}while(1){c[i>>2]=a[j>>0];k=k+1|0;if((k|0)==(m|0))break;else{i=i+4|0;j=j+1|0}}g=g+m|0;break a}}case 2:{l=c[h+32>>2]|0;k=(m|0)==0;if(!(c[n+32>>2]|0)){if(!k){k=g+(_(j<<1,i)|0)|0;j=0;i=l;while(1){c[i>>2]=e[g>>1];j=j+1|0;if((j|0)==(m|0))break;else{i=i+4|0;g=g+2|0}}g=k}}else if(!k){k=g+(_(j<<1,i)|0)|0;j=0;i=l;while(1){c[i>>2]=b[g>>1];j=j+1|0;if((j|0)==(m|0))break;else{i=i+4|0;g=g+2|0}}g=k}break}case 4:{if(m){k=g+(_(j<<2,i)|0)|0;i=0;j=c[h+32>>2]|0;while(1){c[j>>2]=c[g>>2];i=i+1|0;if((i|0)==(m|0))break;else{j=j+4|0;g=g+4|0}}g=k}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(c[q>>2]|0)>>>0){g=1;break}else{n=n+52|0;h=h+52|0}}return g|0}function gg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+24|0;b=c[g>>2]|0;if(!b)return;f=c[a+28>>2]|0;e=(f>>>0)/52|0;if(f>>>0>51){f=0;while(1){a=c[b>>2]|0;if(a){Uc(a+-1|0);c[b>>2]=0}a=b+4|0;d=c[a>>2]|0;if(d){Uc(d);c[a>>2]=0}a=b+8|0;d=c[a>>2]|0;if(d){Uc(d);c[a>>2]=0}f=f+1|0;if(f>>>0>=e>>>0)break;else b=b+52|0}b=c[g>>2]|0}Uc(b);c[g>>2]=0;return}function hg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+24|0;b=c[g>>2]|0;if(!b)return;f=c[a+28>>2]|0;e=(f>>>0)/56|0;if(f>>>0>55){f=0;while(1){a=c[b>>2]|0;if(a){Uc(a);c[b>>2]=0}d=b+4|0;a=c[d>>2]|0;if(a){Uc(a);c[d>>2]=0}f=f+1|0;if(f>>>0>=e>>>0)break;else b=b+56|0}b=c[g>>2]|0}Uc(b);c[g>>2]=0;return}function ig(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|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,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=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,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.0;Sa=i;i=i+80|0;La=Sa+64|0;Ka=Sa+56|0;Na=Sa+48|0;Pa=Sa+40|0;Oa=Sa+32|0;Qa=Sa+24|0;Ma=Sa+16|0;Ja=Sa+8|0;k=c[b+28>>2]|0;Ia=c[c[b+20>>2]>>2]|0;p=c[(c[k+76>>2]|0)+(d*5640|0)+5584>>2]|0;q=c[Ia+20>>2]|0;n=c[b+24>>2]|0;o=c[n+24>>2]|0;Fa=c[k+24>>2]|0;m=c[k+12>>2]|0;Ha=(_(m,(d>>>0)%(Fa>>>0)|0)|0)+(c[k+4>>2]|0)|0;l=c[n>>2]|0;l=Ha>>>0>l>>>0?Ha:l;c[Ia>>2]=l;Ha=Si(m|0,0,Ha|0,0)|0;Ha=Ha|0-C;m=c[n+8>>2]|0;m=Ha>>>0>>0?Ha:m;Ha=Ia+8|0;c[Ha>>2]=m;Ga=c[k+16>>2]|0;Fa=(_(Ga,(d>>>0)/(Fa>>>0)|0)|0)+(c[k+8>>2]|0)|0;d=c[n+4>>2]|0;d=Fa>>>0>d>>>0?Fa:d;Ea=Ia+4|0;c[Ea>>2]=d;Fa=Si(Ga|0,0,Fa|0,0)|0;Fa=Fa|0-C;n=c[n+12>>2]|0;n=Fa>>>0>>0?Fa:n;Fa=Ia+12|0;c[Fa>>2]=n;if(!(c[p+4>>2]|0)){Ub(j,1,19777,Sa)|0;Ra=0;i=Sa;return Ra|0}Ga=Ia+16|0;if(!(c[Ga>>2]|0)){Ra=1;i=Sa;return Ra|0}Da=k+80|0;Ca=b+40|0;Ba=(e|0)==0;k=d;Aa=0;a:while(1){c[o+36>>2]=0;va=c[o>>2]|0;d=(l+-1+va|0)/(va|0)|0;c[q>>2]=d;wa=c[o+4>>2]|0;k=(k+-1+wa|0)/(wa|0)|0;za=q+4|0;c[za>>2]=k;va=(m+-1+va|0)/(va|0)|0;ya=q+8|0;c[ya>>2]=va;wa=(n+-1+wa|0)/(wa|0)|0;xa=q+12|0;c[xa>>2]=wa;d=va-d|0;k=wa-k|0;if((4294967295/(d>>>0)|0)>>>0>>0){Ra=6;break}d=_(k,d)|0;if(d>>>0>1073741823){Ra=8;break}m=d<<2;va=c[p+4>>2]|0;wa=q+16|0;c[wa>>2]=va;b=c[Da>>2]|0;c[q+20>>2]=va>>>0>>0?1:va-b|0;b=q+40|0;c[b>>2]=m;do if(a[Ca>>0]&1){e=q+32|0;l=c[e>>2]|0;if(l){k=q+44|0;if(m>>>0<=(c[k>>2]|0)>>>0)break;d=q+36|0;if(c[d>>2]|0){Sc(l);va=Rc(c[b>>2]|0)|0;c[e>>2]=va;if(!va){Ra=16;break a}c[k>>2]=c[b>>2];c[d>>2]=1;break}}va=Rc(m)|0;c[e>>2]=va;if(!va)break a;c[q+44>>2]=c[b>>2];c[q+36>>2]=1}while(0);e=(c[wa>>2]|0)*136|0;k=q+24|0;b=c[k>>2]|0;if(b){d=q+28|0;if(e>>>0>(c[d>>2]|0)>>>0){b=Tc(b,e)|0;if(!b){Ra=24;break}c[k>>2]=b;va=c[d>>2]|0;Qi(b+va|0,0,e-va|0)|0;c[d>>2]=e}}else{d=Pc(e)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break}c[q+28>>2]=e;Qi(d|0,0,e|0)|0}d=c[wa>>2]|0;va=(c[p+20>>2]|0)==0?7:8;if(d){ra=p+8|0;sa=p+12|0;ta=o+24|0;ua=p+804|0;qa=c[k>>2]|0;k=p+28|0;b=0;while(1){oa=d;pa=d+-1|0;la=c[q>>2]|0;ma=Ri(1,0,pa|0)|0;ma=Si(ma|0,C|0,-1,-1)|0;na=C;la=Si(ma|0,na|0,la|0,((la|0)<0)<<31>>31|0)|0;la=Pi(la|0,C|0,pa|0)|0;c[qa>>2]=la;e=c[za>>2]|0;e=Si(ma|0,na|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,pa|0)|0;c[qa+4>>2]=e;d=c[ya>>2]|0;d=Si(ma|0,na|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,pa|0)|0;c[qa+8>>2]=d;l=c[xa>>2]|0;l=Si(ma|0,na|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pi(l|0,C|0,pa|0)|0;c[qa+12>>2]=l;r=c[p+812+(b<<2)>>2]|0;n=c[p+944+(b<<2)>>2]|0;s=la>>r<>n<>31|0)|0;m=Pi(m|0,C|0,n|0)|0;if((la|0)==(d|0))d=0;else{la=Ri(1,0,r|0)|0;la=Si(la|0,C|0,-1,-1)|0;d=Si(la|0,C|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,r|0)|0;d=(d<>r}la=qa+16|0;c[la>>2]=d;ia=(e|0)==(l|0)?0:(m<>n;c[qa+20>>2]=ia;ia=_(ia,d)|0;ja=ia*40|0;ka=(b|0)==0;if(ka)d=1;else{s=Si(s|0,((s|0)<0)<<31>>31|0,1,0)|0;s=Ti(s|0,C|0,1)|0;t=Si(t|0,((t|0)<0)<<31>>31|0,1,0)|0;t=Ti(t|0,C|0,1)|0;d=3;n=n+-1|0;r=r+-1|0}ha=qa+24|0;c[ha>>2]=d;S=c[ra>>2]|0;S=S>>>0>>0?S:r;T=c[sa>>2]|0;T=T>>>0>>0?T:n;U=(ia|0)!=0;V=(ia|0)==0;W=1<>2]|0;d=Si(ma|0,na|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,pa|0)|0;k=c[za>>2]|0;k=Si(ma|0,na|0,k|0,((k|0)<0)<<31>>31|0)|0;k=Pi(k|0,C|0,pa|0)|0;e=c[ya>>2]|0;e=Si(ma|0,na|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,pa|0)|0;m=c[xa>>2]|0;m=Si(ma|0,na|0,m|0,((m|0)<0)<<31>>31|0)|0;m=Pi(m|0,C|0,pa|0)|0;l=0}else{l=fa+1|0;d=c[q>>2]|0;O=Ri(l&1|0,0,pa|0)|0;O=Oi(da|0,ea|0,O|0,C|0)|0;m=C;d=Si(O|0,m|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,oa|0)|0;k=c[za>>2]|0;P=Ri(l>>>1|0,0,pa|0)|0;P=Oi(da|0,ea|0,P|0,C|0)|0;Q=C;k=Si(P|0,Q|0,k|0,((k|0)<0)<<31>>31|0)|0;k=Pi(k|0,C|0,oa|0)|0;e=c[ya>>2]|0;e=Si(O|0,m|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,oa|0)|0;m=c[xa>>2]|0;m=Si(P|0,Q|0,m|0,((m|0)<0)<<31>>31|0)|0;m=Pi(m|0,C|0,oa|0)|0}c[ga+16>>2]=l;c[ga>>2]=d;Q=ga+4|0;c[Q>>2]=k;P=ga+8|0;c[P>>2]=e;O=ga+12|0;c[O>>2]=m;k=Wa[va&15](l)|0;Ta=+(c[R+4>>2]|0)*.00048828125+1.0;g[ga+32>>2]=+Gh(1.0,(c[ta>>2]|0)+k-(c[R>>2]|0)|0)*Ta*f;c[ga+28>>2]=(c[R>>2]|0)+-1+(c[ua>>2]|0);k=ga+20|0;e=c[k>>2]|0;if(!(U&(e|0)==0)){d=ga+24|0;if((c[d>>2]|0)>>>0>>0){e=Tc(e,ja)|0;if(!e){Ra=41;break a}c[k>>2]=e;N=c[d>>2]|0;Qi(e+N|0,0,ja-N|0)|0;c[d>>2]=ja}}else{d=Pc(ja)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break a}Qi(d|0,0,ja|0)|0;c[ga+24>>2]=ja}if(!V){M=c[k>>2]|0;N=0;while(1){F=c[la>>2]|0;J=(((N>>>0)%(F>>>0)|0)<>>0)/(F>>>0)|0)<>2]|0;I=(J|0)>(I|0)?J:I;c[M>>2]=I;J=c[Q>>2]|0;J=(F|0)>(J|0)?F:J;F=M+4|0;c[F>>2]=J;L=c[P>>2]|0;L=(G|0)<(L|0)?G:L;G=M+8|0;c[G>>2]=L;l=c[O>>2]|0;l=(H|0)<(l|0)?H:l;H=M+12|0;c[H>>2]=l;I=I>>S<>T<>31|0)|0;L=Pi(L|0,C|0,S|0)|0;l=Si($|0,aa|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pi(l|0,C|0,T|0)|0;L=(L<>S;K=M+16|0;c[K>>2]=L;l=(l<>T;u=M+20|0;c[u>>2]=l;L=_(l,L)|0;l=_(L,h)|0;k=M+24|0;e=c[k>>2]|0;do if((e|0)==0&(L|0)!=0){d=Pc(l)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break a}Qi(d|0,0,l|0)|0;c[M+28>>2]=l}else{d=M+28|0;if(l>>>0<=(c[d>>2]|0)>>>0)break;e=Tc(e,l)|0;if(!e){Ra=50;break a}c[k>>2]=e;E=c[d>>2]|0;Qi(e+E|0,0,l-E|0)|0;c[d>>2]=l}while(0);m=M+32|0;d=c[m>>2]|0;e=c[K>>2]|0;l=c[u>>2]|0;if(!d)d=jg(e,l,j)|0;else d=lg(d,e,l,j)|0;c[m>>2]=d;if(!d)Ub(j,2,19990,Ka)|0;m=M+36|0;e=c[m>>2]|0;l=c[K>>2]|0;d=c[u>>2]|0;if(!e)d=jg(l,d,j)|0;else d=lg(e,l,d,j)|0;c[m>>2]=d;if(!d)Ub(j,2,20012,La)|0;if(L){E=0;do{A=c[K>>2]|0;z=(((E>>>0)%(A>>>0)|0)<>>0)/(A>>>0)|0)<>2]|0;e=d+(E*56|0)|0;l=c[e>>2]|0;if(!l){y=Pc(8192)|0;c[e>>2]=y;if(!y){d=0;Ra=87;break a}c[d+(E*56|0)+32>>2]=8192;y=Qc(10,32)|0;c[d+(E*56|0)+4>>2]=y;if(!y){d=0;Ra=87;break a}c[d+(E*56|0)+52>>2]=10}else{m=d+(E*56|0)+32|0;u=c[m>>2]|0;v=d+(E*56|0)+4|0;w=c[v>>2]|0;x=e;y=x+52|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0));c[e>>2]=l;c[m>>2]=u;c[v>>2]=w}y=c[M>>2]|0;c[d+(E*56|0)+8>>2]=(z|0)>(y|0)?z:y;z=c[F>>2]|0;c[d+(E*56|0)+12>>2]=(A|0)>(z|0)?A:z;A=c[G>>2]|0;c[d+(E*56|0)+16>>2]=(B|0)<(A|0)?B:A;B=c[H>>2]|0;c[d+(E*56|0)+20>>2]=(D|0)<(B|0)?D:B}else{e=c[k>>2]|0;d=e+(E*52|0)+4|0;if((c[d>>2]|0)==0?(y=Qc(100,24)|0,c[d>>2]=y,(y|0)==0):0){d=0;Ra=87;break a}d=e+(E*52|0)+8|0;if((c[d>>2]|0)==0?(y=Qc(100,24)|0,c[d>>2]=y,(y|0)==0):0){d=0;Ra=87;break a}m=c[M>>2]|0;m=(z|0)>(m|0)?z:m;c[e+(E*52|0)+12>>2]=m;d=c[F>>2]|0;A=(A|0)>(d|0)?A:d;c[e+(E*52|0)+16>>2]=A;d=c[G>>2]|0;d=(B|0)<(d|0)?B:d;c[e+(E*52|0)+20>>2]=d;B=c[H>>2]|0;D=(D|0)<(B|0)?D:B;c[e+(E*52|0)+24>>2]=D;m=_(D-A|0,d-m<<2)|0;d=e+(E*52|0)+36|0;if(m>>>0<=(c[d>>2]|0)>>>0)break;l=e+(E*52|0)|0;e=c[l>>2]|0;if(e)Uc(e+-1|0);e=Pc(m|1)|0;c[l>>2]=e;if(!e){Ra=74;break a}c[d>>2]=m;a[e>>0]=0;c[l>>2]=(c[l>>2]|0)+1}while(0);E=E+1|0}while(E>>>0>>0)}N=N+1|0;if(N>>>0>=ia>>>0)break;else M=M+40|0}}k=R+8|0;fa=fa+1|0;if(fa>>>0>=(c[ha>>2]|0)>>>0)break;else{ga=ga+36|0;R=k}}b=b+1|0;if(b>>>0<(c[wa>>2]|0)>>>0){d=pa;qa=qa+136|0}else break}}d=Aa+1|0;if(d>>>0>=(c[Ga>>2]|0)>>>0){d=1;Ra=87;break}l=c[Ia>>2]|0;k=c[Ea>>2]|0;m=c[Ha>>2]|0;n=c[Fa>>2]|0;Aa=d;o=o+52|0;p=p+1080|0;q=q+52|0}if((Ra|0)==6){Ub(j,1,19816,Ja)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==8){Ub(j,1,19816,Ma)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==16){c[k>>2]=0;c[b>>2]=0;c[d>>2]=0}else if((Ra|0)==24){Ub(j,1,19849,Oa)|0;Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==41){Ub(j,1,19889,Pa)|0;Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==50){Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ub(j,1,19932,Na)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==74){c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==87){i=Sa;return d|0}Ub(j,1,19816,Qa)|0;Ra=0;i=Sa;return Ra|0}function jg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=i;i=i+288|0;l=v+16|0;j=v+8|0;t=v+152|0;u=v+24|0;e=Qc(1,20)|0;if(!e){Ub(d,1,20034,v)|0;u=0;i=v;return u|0}c[e>>2]=a;m=e+4|0;c[m>>2]=b;c[t>>2]=a;c[u>>2]=b;k=e+8|0;c[k>>2]=0;f=0;h=0;while(1){s=_(b,a)|0;a=(a+1|0)/2|0;g=h+1|0;c[t+(g<<2)>>2]=a;b=(b+1|0)/2|0;c[u+(g<<2)>>2]=b;f=f+s|0;if(s>>>0<=1)break;else h=g}c[k>>2]=f;if(!f){Uc(e);Ub(d,2,20072,j)|0;u=0;i=v;return u|0}f=Qc(f,16)|0;c[e+12>>2]=f;if(!f){Ub(d,1,20122,l)|0;Uc(e);u=0;i=v;return u|0}s=c[k>>2]|0;c[e+16>>2]=s<<4;b=f+((_(c[m>>2]|0,c[e>>2]|0)|0)<<4)|0;if(!h)b=f;else{r=0;g=b;a=b;b=f;do{p=c[u+(r<<2)>>2]|0;a:do if((p|0)>0){q=c[t+(r<<2)>>2]|0;if((q|0)<=0){k=p+-1|0;d=0;while(1){o=(d&1|0)!=0|(d|0)==(k|0);j=o?g:a;a=o?g:a+(q<<4)|0;d=d+1|0;if((d|0)>=(p|0)){g=j;break a}else g=j}}o=((q+2+((q|0)<2?~q:-3)|0)>>>1)+1|0;m=p+-1|0;n=0;do{d=q;l=g;while(1){c[b>>2]=l;j=b+16|0;k=d;d=d+-2|0;if((d|0)>-1){c[j>>2]=l;b=b+32|0}else b=j;if((k|0)<=2)break;else l=l+16|0}l=g+(o<<4)|0;d=(n&1|0)!=0|(n|0)==(m|0);g=d?l:a;a=d?l:a+(q<<4)|0;n=n+1|0}while((n|0)<(p|0))}while(0);r=r+1|0}while((r|0)!=(h|0))}c[b>>2]=0;if(!s){u=e;i=v;return u|0}else b=0;while(1){c[f+4>>2]=999;c[f+8>>2]=0;c[f+12>>2]=0;b=b+1|0;if((b|0)==(s|0))break;else f=f+16|0}i=v;return e|0}function kg(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a+8>>2]|0;if(!b)return;d=0;a=c[a+12>>2]|0;while(1){c[a+4>>2]=999;c[a+8>>2]=0;c[a+12>>2]=0;d=d+1|0;if(d>>>0>=b>>>0)break;else a=a+16|0}return} +function bb(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function cb(){return i|0}function db(a){a=a|0;i=a}function eb(a,b){a=a|0;b=b|0;i=a;j=b}function fb(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function gb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function hb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function ib(a){a=a|0;C=a}function jb(){return C|0}function kb(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+8272|0;k=o+16|0;m=o+12|0;j=o;c[m>>2]=0;if((c[a>>2]|0)==1375686655)n=gc(0)|0;else n=gc(2)|0;bc(n,1,0)|0;cc(n,2,0)|0;dc(n,3,0)|0;hc(k);c[j>>2]=a;c[j+4>>2]=a;c[j+8>>2]=b;l=ec(j,1)|0;if(!(ic(n,k)|0)){mi(4476)|0;Fb(l);zc(n);g=1;i=o;return g|0}if(!(jc(l,n,m)|0)){mi(4528)|0;Fb(l);zc(n);Zb(c[m>>2]|0);g=1;i=o;return g|0}if(!(oc(n,l,c[m>>2]|0,c[k+8228>>2]|0)|0)){mi(4578)|0;zc(n);Fb(l);Zb(c[m>>2]|0);g=1;i=o;return g|0}j=c[m>>2]|0;c[f>>2]=c[j+8>>2];c[g>>2]=c[j+12>>2];a=c[j+16>>2]|0;c[h>>2]=a;a=_(_(a<<2,c[f>>2]|0)|0,c[g>>2]|0)|0;c[e>>2]=a;e=Fi(a)|0;c[d>>2]=e;switch(c[h>>2]|0){case 1:{Ui(e|0,c[(c[j+24>>2]|0)+44>>2]|0,a|0)|0;break}case 3:{if((_(c[g>>2]|0,c[f>>2]|0)|0)>0){b=c[j+24>>2]|0;j=c[b+44>>2]|0;a=c[b+96>>2]|0;b=c[b+148>>2]|0;k=0;do{h=k*3|0;c[e+(h<<2)>>2]=c[j+(k<<2)>>2];c[e+(h+1<<2)>>2]=c[a+(k<<2)>>2];c[e+(h+2<<2)>>2]=c[b+(k<<2)>>2];k=k+1|0}while((k|0)<(_(c[g>>2]|0,c[f>>2]|0)|0))}break}default:{}}Fb(l);zc(n);Zb(c[m>>2]|0);g=0;i=o;return g|0}function lb(){return fc()|0}function mb(a,b){a=a|0;b=b|0;return}function nb(a,b){a=a|0;b=b|0;return}function ob(a,b){a=a|0;b=b|0;var d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;li(4625,d)|0;i=b;return}function pb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+16|0;g=h;c[g>>2]=d;if(!e){i=h;return}d=b;f=0;b=g+(e+-1)|0;while(1){a[d>>0]=a[b>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else{d=d+1|0;b=b+-1|0}}i=h;return}function qb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;c[d>>2]=0;if(!e)return;f=0;d=d+(e+-1)|0;while(1){a[d>>0]=a[b>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else{b=b+1|0;d=d+-1|0}}return}function rb(b,d){b=b|0;d=+d;var e=0,f=0,g=0,j=0,l=0;e=i;i=i+16|0;j=e;h[j>>3]=d;j=j+8|0;h[k>>3]=d;f=c[k>>2]|0;g=c[k+4>>2]|0;l=Ti(f|0,g|0,56)|0;a[b>>0]=l;l=Ti(f|0,g|0,48)|0;a[b+1>>0]=l;l=Ti(f|0,g|0,40)|0;a[b+2>>0]=l;a[b+3>>0]=g;a[b+4>>0]=a[j+-5>>0]|0;a[b+5>>0]=a[j+-6>>0]|0;g=Ti(f|0,g|0,8)|0;a[b+6>>0]=g;a[b+7>>0]=f;i=e;return}function sb(b,c){b=b|0;c=c|0;var d=0;d=c+8|0;a[d+-1>>0]=a[b>>0]|0;a[d+-2>>0]=a[b+1>>0]|0;a[d+-3>>0]=a[b+2>>0]|0;a[d+-4>>0]=a[b+3>>0]|0;a[d+-5>>0]=a[b+4>>0]|0;a[d+-6>>0]=a[b+5>>0]|0;a[d+-7>>0]=a[b+6>>0]|0;a[c>>0]=a[b+7>>0]|0;return}function tb(b,d){b=b|0;d=+d;var e=0;e=(g[k>>2]=d,c[k>>2]|0);a[b>>0]=e>>>24;a[b+1>>0]=e>>>16;a[b+2>>0]=e>>>8;a[b+3>>0]=e;return}function ub(b,c){b=b|0;c=c|0;var d=0;d=c+4|0;a[d+-1>>0]=a[b>>0]|0;a[d+-2>>0]=a[b+1>>0]|0;a[d+-3>>0]=a[b+2>>0]|0;a[c>>0]=a[b+3>>0]|0;return}function vb(a,b){a=a|0;b=b|0;var d=0,e=0;e=Qc(1,72)|0;if(!e){b=0;return b|0}c[e+64>>2]=a;a=Pc(a)|0;c[e+32>>2]=a;if(!a){Uc(e);b=0;return b|0}c[e+36>>2]=a;a=e+68|0;d=c[a>>2]|0;if(!b){c[a>>2]=d|1;c[e+40>>2]=31;c[e+44>>2]=32}else{c[a>>2]=d|2;c[e+40>>2]=29;c[e+44>>2]=30}c[e+16>>2]=4;c[e+20>>2]=5;c[e+24>>2]=6;c[e+28>>2]=7;b=e;return b|0}function wb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;m=n;f=a+48|0;g=c[f>>2]|0;if(g>>>0>=b>>>0){m=a+36|0;c[m>>2]=(c[m>>2]|0)+b;c[f>>2]=g-b;m=a+56|0;a=m;a=Si(c[a>>2]|0,c[a+4>>2]|0,b|0,d|0)|0;c[m>>2]=a;c[m+4>>2]=C;m=d;a=b;C=m;i=n;return a|0}l=a+68|0;if(c[l>>2]&4){m=a+36|0;c[m>>2]=(c[m>>2]|0)+g;c[f>>2]=0;a=a+56|0;m=a;m=Si(c[m>>2]|0,c[m+4>>2]|0,g|0,0)|0;c[a>>2]=m;c[a+4>>2]=C;a=(g|0)!=0;m=a?0:-1;a=a?g:-1;C=m;i=n;return a|0}if(!g){g=0;f=0}else{c[a+36>>2]=c[a+32>>2];b=Oi(b|0,d|0,g|0,0)|0;c[f>>2]=0;f=0;d=C}a:do if((d|0)>0|(d|0)==0&b>>>0>0){k=a+24|0;while(1){h=Ra[c[k>>2]&63](b,d,c[a>>2]|0)|0;j=C;if((h|0)==-1&(j|0)==-1)break;b=Oi(b|0,d|0,h|0,j|0)|0;d=C;g=Si(h|0,j|0,g|0,f|0)|0;f=C;if(!((d|0)>0|(d|0)==0&b>>>0>0))break a}Ub(e,4,4636,m)|0;c[l>>2]=c[l>>2]|4;a=a+56|0;m=a;m=Si(c[m>>2]|0,c[m+4>>2]|0,g|0,f|0)|0;c[a>>2]=m;c[a+4>>2]=C;a=(g|0)!=0|(f|0)!=0;m=a?f:-1;a=a?g:-1;C=m;i=n;return a|0}while(0);m=a+56|0;a=m;a=Si(c[a>>2]|0,c[a+4>>2]|0,g|0,f|0)|0;c[m>>2]=a;c[m+4>>2]=C;m=f;a=g;C=m;i=n;return a|0}function xb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;c[a+36>>2]=c[a+32>>2];c[a+48>>2]=0;g=(Ra[c[a+28>>2]&63](b,d,c[a>>2]|0)|0)==0;e=a+68|0;f=c[e>>2]|0;if(g){c[e>>2]=f|4;g=0;return g|0}else{c[e>>2]=f&-5;g=a+56|0;c[g>>2]=b;c[g+4>>2]=d;g=1;return g|0}return 0}function yb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+16|0;q=r+8|0;m=r;p=a+68|0;if(c[p>>2]&8){q=-1;a=-1;C=q;i=r;return a|0}k=a+32|0;f=c[k>>2]|0;o=a+36|0;c[o>>2]=f;l=a+48|0;g=c[l>>2]|0;do if(g){j=a+20|0;while(1){h=Ra[c[j>>2]&63](f,g,c[a>>2]|0)|0;if((h|0)==-1)break;f=(c[o>>2]|0)+h|0;c[o>>2]=f;s=c[l>>2]|0;g=s-h|0;c[l>>2]=g;if((s|0)==(h|0)){n=6;break}}if((n|0)==6){f=c[k>>2]|0;break}c[p>>2]=c[p>>2]|8;Ub(e,4,4662,m)|0;c[p>>2]=c[p>>2]|8;c[l>>2]=0;a=-1;s=-1;C=a;i=r;return s|0}while(0);c[o>>2]=f;a:do if((d|0)>0|(d|0)==0&b>>>0>0){k=a+24|0;g=0;f=0;while(1){h=Ra[c[k>>2]&63](b,d,c[a>>2]|0)|0;j=C;if((h|0)==-1&(j|0)==-1)break;b=Oi(b|0,d|0,h|0,j|0)|0;d=C;g=Si(h|0,j|0,g|0,f|0)|0;f=C;if(!((d|0)>0|(d|0)==0&b>>>0>0))break a}Ub(e,4,4688,q)|0;c[p>>2]=c[p>>2]|8;s=a+56|0;a=s;a=Si(c[a>>2]|0,c[a+4>>2]|0,g|0,f|0)|0;c[s>>2]=a;c[s+4>>2]=C;s=(g|0)!=0|(f|0)!=0;a=s?f:-1;s=s?g:-1;C=a;i=r;return s|0}else{g=0;f=0}while(0);a=a+56|0;s=a;s=Si(c[s>>2]|0,c[s+4>>2]|0,g|0,f|0)|0;c[a>>2]=s;c[a+4>>2]=C;a=f;s=g;C=a;i=r;return s|0}function zb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+16|0;k=p;m=a+32|0;f=c[m>>2]|0;n=a+36|0;c[n>>2]=f;o=a+48|0;g=c[o>>2]|0;do if(!g)g=a;else{j=a+20|0;while(1){h=Ra[c[j>>2]&63](f,g,c[a>>2]|0)|0;if((h|0)==-1)break;f=(c[n>>2]|0)+h|0;c[n>>2]=f;q=c[o>>2]|0;g=q-h|0;c[o>>2]=g;if((q|0)==(h|0)){l=6;break}}if((l|0)==6){g=a;f=c[m>>2]|0;break}q=a+68|0;c[q>>2]=c[q>>2]|8;Ub(e,4,4662,k)|0;c[q>>2]=c[q>>2]|8;q=0;i=p;return q|0}while(0);c[n>>2]=f;c[o>>2]=0;if(!(Ra[c[a+28>>2]&63](b,d,c[g>>2]|0)|0)){q=a+68|0;c[q>>2]=c[q>>2]|8;q=0;i=p;return q|0}else{q=a+56|0;c[q>>2]=b;c[q+4>>2]=d;q=1;i=p;return q|0}return 0}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Bb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Cb(a,b,c){a=a|0;b=b|0;c=c|0;C=-1;return -1}function Db(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Eb(a){a=a|0;var b=0,d=0,e=0;e=Qc(1,72)|0;if(!e){a=0;return a|0}c[e+64>>2]=1048576;b=Pc(1048576)|0;c[e+32>>2]=b;if(!b){Uc(e);a=0;return a|0}c[e+36>>2]=b;b=e+68|0;d=c[b>>2]|0;if(!a){c[b>>2]=d|1;c[e+40>>2]=31;c[e+44>>2]=32}else{c[b>>2]=d|2;c[e+40>>2]=29;c[e+44>>2]=30}c[e+16>>2]=4;c[e+20>>2]=5;c[e+24>>2]=6;c[e+28>>2]=7;a=e;return a|0}function Fb(a){a=a|0;var b=0;if(!a)return;b=c[a+4>>2]|0;if(b)Ta[b&7](c[a>>2]|0);b=a+32|0;Uc(c[b>>2]|0);c[b>>2]=0;Uc(a);return}function Gb(a,b){a=a|0;b=b|0;if(!a)return;if(!(c[a+68>>2]&2))return;c[a+16>>2]=b;return}function Hb(a,b){a=a|0;b=b|0;if(!a)return;c[a+28>>2]=b;return}function Ib(a,b){a=a|0;b=b|0;if(!a)return;if(!(c[a+68>>2]&1))return;c[a+20>>2]=b;return}function Jb(a,b){a=a|0;b=b|0;if(!a)return;c[a+24>>2]=b;return}function Kb(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;c[a>>2]=b;c[a+4>>2]=d;return}function Lb(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;a=a+8|0;c[a>>2]=b;c[a+4>>2]=d;return}function Mb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;s=w+8|0;r=w;v=a+48|0;f=c[v>>2]|0;if(f>>>0>=d>>>0){u=a+36|0;Ui(b|0,c[u>>2]|0,d|0)|0;c[u>>2]=(c[u>>2]|0)+d;c[v>>2]=(c[v>>2]|0)-d;v=a+56|0;u=v;u=Si(c[u>>2]|0,c[u+4>>2]|0,d|0,0)|0;c[v>>2]=u;c[v+4>>2]=C;v=d;i=w;return v|0}t=a+68|0;if(c[t>>2]&4){u=a+36|0;Ui(b|0,c[u>>2]|0,f|0)|0;e=c[v>>2]|0;c[u>>2]=(c[u>>2]|0)+e;u=a+56|0;t=u;e=Si(c[t>>2]|0,c[t+4>>2]|0,e|0,0)|0;c[u>>2]=e;c[u+4>>2]=C;c[v>>2]=0;v=(f|0)!=0?f:-1;i=w;return v|0}if(!f){o=a+32|0;g=c[o>>2]|0;p=a+36|0;c[p>>2]=g;q=p;u=a+56|0;f=0}else{p=a+36|0;Ui(b|0,c[p>>2]|0,f|0)|0;o=a+32|0;g=c[o>>2]|0;c[p>>2]=g;q=c[v>>2]|0;u=a+56|0;m=u;m=Si(c[m>>2]|0,c[m+4>>2]|0,q|0,0)|0;n=u;c[n>>2]=m;c[n+4>>2]=C;c[v>>2]=0;d=d-q|0;b=b+q|0;q=p}m=a+64|0;n=a+16|0;l=b;h=g;while(1){b=c[m>>2]|0;g=c[n>>2]|0;if(d>>>0>>0){g=Ra[g&63](h,b,c[a>>2]|0)|0;c[v>>2]=g;if((g|0)==-1){g=11;break}if(g>>>0>=d>>>0){b=l;g=14;break}Ui(l|0,c[q>>2]|0,g|0)|0;h=c[o>>2]|0;c[p>>2]=h;b=c[v>>2]|0;j=u;j=Si(c[j>>2]|0,c[j+4>>2]|0,b|0,0)|0;k=C;f=g+f|0}else{b=Ra[g&63](l,d,c[a>>2]|0)|0;c[v>>2]=b;if((b|0)==-1){g=16;break}f=b+f|0;if(b>>>0>=d>>>0){g=20;break}h=c[o>>2]|0;c[p>>2]=h;j=u;j=Si(c[j>>2]|0,c[j+4>>2]|0,b|0,0)|0;k=C}g=u;c[g>>2]=j;c[g+4>>2]=k;c[v>>2]=0;d=d-b|0;l=l+b|0}if((g|0)==11){Ub(e,4,4636,r)|0;c[v>>2]=0;c[t>>2]=c[t>>2]|4;v=(f|0)!=0?f:-1;i=w;return v|0}else if((g|0)==14){Ui(b|0,c[q>>2]|0,d|0)|0;c[q>>2]=(c[q>>2]|0)+d;c[v>>2]=(c[v>>2]|0)-d;e=u;e=Si(c[e>>2]|0,c[e+4>>2]|0,d|0,0)|0;v=u;c[v>>2]=e;c[v+4>>2]=C;v=f+d|0;i=w;return v|0}else if((g|0)==16){Ub(e,4,4636,s)|0;c[v>>2]=0;c[t>>2]=c[t>>2]|4;v=(f|0)!=0?f:-1;i=w;return v|0}else if((g|0)==20){e=u;e=Si(c[e>>2]|0,c[e+4>>2]|0,b|0,0)|0;c[u>>2]=e;c[u+4>>2]=C;c[p>>2]=c[o>>2];c[v>>2]=0;v=f;i=w;return v|0}return 0}function Nb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=i;i=i+16|0;r=u;n=a+68|0;if(c[n>>2]&8){t=-1;i=u;return t|0}q=a+64|0;f=c[q>>2]|0;t=a+48|0;k=c[t>>2]|0;g=f-k|0;do if(g>>>0>>0){o=a+32|0;h=a+36|0;p=a+20|0;j=a+56|0;l=f;m=g;f=0;a:while(1){if((l|0)==(k|0))g=c[o>>2]|0;else{Ui(c[h>>2]|0,b|0,m|0)|0;g=c[o>>2]|0;c[h>>2]=g;k=(c[t>>2]|0)+m|0;c[t>>2]=k;v=j;v=Si(c[v>>2]|0,c[v+4>>2]|0,m|0,0)|0;l=j;c[l>>2]=v;c[l+4>>2]=C;d=d-m|0;b=b+m|0;f=m+f|0}c[h>>2]=g;if(!k)k=0;else{do{l=Ra[c[p>>2]&63](g,k,c[a>>2]|0)|0;if((l|0)==-1)break a;g=(c[h>>2]|0)+l|0;c[h>>2]=g;v=c[t>>2]|0;k=v-l|0;c[t>>2]=k}while((v|0)!=(l|0));g=c[o>>2]|0}c[h>>2]=g;l=c[q>>2]|0;m=l-k|0;if(d>>>0<=m>>>0){s=5;break}}if((s|0)==5)break;c[n>>2]=c[n>>2]|8;Ub(e,4,4662,r)|0;v=-1;i=u;return v|0}else{g=a+36|0;j=a+56|0;h=g;g=c[g>>2]|0;f=0}while(0);Ui(g|0,b|0,d|0)|0;c[h>>2]=(c[h>>2]|0)+d;c[t>>2]=(c[t>>2]|0)+d;t=j;t=Si(c[t>>2]|0,c[t+4>>2]|0,d|0,0)|0;v=j;c[v>>2]=t;c[v+4>>2]=C;v=f+d|0;i=u;return v|0}function Ob(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+16|0;k=n;g=a+32|0;d=c[g>>2]|0;m=a+36|0;c[m>>2]=d;h=a+48|0;e=c[h>>2]|0;do if(e){j=a+20|0;while(1){f=Ra[c[j>>2]&63](d,e,c[a>>2]|0)|0;if((f|0)==-1)break;d=(c[m>>2]|0)+f|0;c[m>>2]=d;o=c[h>>2]|0;e=o-f|0;c[h>>2]=e;if((o|0)==(f|0)){l=6;break}}if((l|0)==6){d=c[g>>2]|0;break}o=a+68|0;c[o>>2]=c[o>>2]|8;Ub(b,4,4662,k)|0;o=0;i=n;return o|0}while(0);c[m>>2]=d;o=1;i=n;return o|0}function Pb(a){a=a|0;a=a+56|0;C=c[a+4>>2]|0;return c[a>>2]|0}function Qb(a){a=a|0;var b=0,d=0;d=a+8|0;b=c[d>>2]|0;d=c[d+4>>2]|0;if((b|0)==0&(d|0)==0){d=0;a=0;C=d;return a|0}a=a+56|0;a=Oi(b|0,d|0,c[a>>2]|0,c[a+4>>2]|0)|0;d=C;C=d;return a|0}function Rb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=Za[c[a+40>>2]&63](a,b,d,e)|0;return a|0}function Sb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return Za[c[a+44>>2]&63](a,b,d,e)|0}function Tb(a){a=a|0;return (c[a+28>>2]|0)!=7|0}function Ub(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+528|0;g=j;h=j+16|0;a:do if(a){switch(b|0){case 1:{b=a;f=a+12|0;break}case 2:{b=a+4|0;f=a+16|0;break}case 4:{b=a+8|0;f=a+20|0;break}default:{b=0;break a}}a=c[b>>2]|0;b=c[f>>2]|0;if(b)if(!d)b=1;else{Qi(h|0,0,512)|0;c[g>>2]=e;pi(h,512,d,g)|0;Ua[b&7](h,a);b=1}else b=0}else b=0;while(0);i=j;return b|0}function Vb(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=4;c[a+20>>2]=4;c[a+16>>2]=4;return}function Wb(a,b){a=a|0;b=b|0;return}function Xb(){return Qc(1,36)|0}function Yb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=Qc(1,36)|0;if(!e){i=e;return i|0}c[e+20>>2]=d;h=e+16|0;c[h>>2]=a;d=Qc(1,a*52|0)|0;i=e+24|0;c[i>>2]=d;if(!d){d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);i=0;return i|0}if(!a){i=e;return i|0}f=0;while(1){c[d+(f*52|0)>>2]=c[b+(f*36|0)>>2];c[d+(f*52|0)+4>>2]=c[b+(f*36|0)+4>>2];j=c[b+(f*36|0)+8>>2]|0;c[d+(f*52|0)+8>>2]=j;k=c[b+(f*36|0)+12>>2]|0;c[d+(f*52|0)+12>>2]=k;c[d+(f*52|0)+16>>2]=c[b+(f*36|0)+16>>2];c[d+(f*52|0)+20>>2]=c[b+(f*36|0)+20>>2];c[d+(f*52|0)+24>>2]=c[b+(f*36|0)+24>>2];c[d+(f*52|0)+28>>2]=c[b+(f*36|0)+28>>2];c[d+(f*52|0)+32>>2]=c[b+(f*36|0)+32>>2];j=Qc(_(k,j)|0,4)|0;c[d+(f*52|0)+44>>2]=j;f=f+1|0;if(!j)break;if(f>>>0>=a>>>0){g=22;break}d=c[i>>2]|0}if((g|0)==22)return e|0;d=c[i>>2]|0;if(d){f=c[h>>2]|0;if(f){b=0;while(1){d=c[d+(b*52|0)+44>>2]|0;if(d){Uc(d);f=c[h>>2]|0}b=b+1|0;if(b>>>0>=f>>>0)break;d=c[i>>2]|0}d=c[i>>2]|0}Uc(d)}d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);k=0;return k|0}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)return;f=a+24|0;b=c[f>>2]|0;if(b){g=a+16|0;d=c[g>>2]|0;if(d){e=0;while(1){b=c[b+(e*52|0)+44>>2]|0;if(b){Uc(b);d=c[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;b=c[f>>2]|0}b=c[f>>2]|0}Uc(b)}b=c[a+28>>2]|0;if(b)Uc(b);Uc(a);return}function _b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=c[b+4>>2]|0;e=c[a>>2]|0;g=c[b+8>>2]|0;h=c[a+4>>2]|0;f=c[b+12>>2]|0;l=(_((c[b+24>>2]|0)+-1|0,f)|0)+d|0;i=c[b+16>>2]|0;j=(_((c[b+28>>2]|0)+-1|0,i)|0)+g|0;b=Si(l|0,0,f|0,0)|0;b=b|0-C;f=c[a+8>>2]|0;i=Si(j|0,0,i|0,0)|0;i=i|0-C;j=c[a+12>>2]|0;l=c[a+16>>2]|0;if(!l)return;k=(d>>>0>e>>>0?d:e)+-1|0;g=(g>>>0>h>>>0?g:h)+-1|0;f=(b>>>0>>0?b:f)+-1|0;d=(i>>>0>>0?i:j)+-1|0;e=0;b=c[a+24>>2]|0;while(1){h=c[b>>2]|0;j=((k+h|0)>>>0)/(h>>>0)|0;o=c[b+4>>2]|0;a=((g+o|0)>>>0)/(o>>>0)|0;i=c[b+40>>2]|0;n=Ri(1,0,i|0)|0;m=C;h=Si((((f+h|0)>>>0)/(h>>>0)|0)-j|0,0,-1,-1)|0;h=Si(h|0,C|0,n|0,m|0)|0;h=Ti(h|0,C|0,i|0)|0;o=Si((((d+o|0)>>>0)/(o>>>0)|0)-a|0,0,-1,-1)|0;m=Si(o|0,C|0,n|0,m|0)|0;i=Ti(m|0,C|0,i|0)|0;c[b+8>>2]=h;c[b+12>>2]=i;c[b+16>>2]=j;c[b+20>>2]=a;e=e+1|0;if(e>>>0>=l>>>0)break;else b=b+52|0}return}function $b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];j=b+24|0;e=c[j>>2]|0;i=b+16|0;if(!e)d=j;else{d=c[i>>2]|0;if(!d)d=j;else{f=0;while(1){e=c[e+(f*52|0)+44>>2]|0;if(e){Uc(e);d=c[i>>2]|0}f=f+1|0;if(f>>>0>=d>>>0)break;e=c[j>>2]|0}d=j;e=c[j>>2]|0}Uc(e);c[j>>2]=0}e=c[a+16>>2]|0;c[i>>2]=e;e=Pc(e*52|0)|0;c[d>>2]=e;if(!e){c[j>>2]=0;c[i>>2]=0;return}if(c[i>>2]|0){h=a+24|0;g=0;do{d=e+(g*52|0)|0;e=(c[h>>2]|0)+(g*52|0)|0;f=d+52|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));e=c[j>>2]|0;c[e+(g*52|0)+44>>2]=0;g=g+1|0}while(g>>>0<(c[i>>2]|0)>>>0)}c[b+20>>2]=c[a+20>>2];f=a+32|0;d=c[f>>2]|0;g=b+32|0;c[g>>2]=d;if(!d){c[b+28>>2]=0;return}e=Pc(d)|0;d=b+28|0;c[d>>2]=e;if(!e){c[d>>2]=0;c[g>>2]=0;return}else{Ui(e|0,c[a+28>>2]|0,c[f>>2]|0)|0;return}}function ac(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Qc(1,36)|0;if(!e){a=e;return a|0}c[e+20>>2]=d;c[e+16>>2]=a;d=Qc(a,52)|0;c[e+24>>2]=d;if(!d){d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);a=0;return a|0}else{if(!a){a=e;return a|0}else f=0;do{c[d+(f*52|0)>>2]=c[b+(f*36|0)>>2];c[d+(f*52|0)+4>>2]=c[b+(f*36|0)+4>>2];c[d+(f*52|0)+8>>2]=c[b+(f*36|0)+8>>2];c[d+(f*52|0)+12>>2]=c[b+(f*36|0)+12>>2];c[d+(f*52|0)+16>>2]=c[b+(f*36|0)+16>>2];c[d+(f*52|0)+20>>2]=c[b+(f*36|0)+20>>2];c[d+(f*52|0)+24>>2]=c[b+(f*36|0)+24>>2];c[d+(f*52|0)+32>>2]=c[b+(f*36|0)+32>>2];c[d+(f*52|0)+44>>2]=0;f=f+1|0}while((f|0)!=(a|0));return e|0}return 0}function bc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+64>>2]=b;c[a+52>>2]=d;d=1;return d|0}function cc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+60>>2]=b;c[a+48>>2]=d;d=1;return d|0}function dc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+56>>2]=b;c[a+44>>2]=d;d=1;return d|0}function ec(a,b){a=a|0;b=b|0;var d=0;if(!a){a=0;return a|0}d=Eb(b)|0;if(!d){a=0;return a|0}Kb(d,a,0);Lb(d,c[a+8>>2]|0,0);if(!b)Ib(d,9);else Gb(d,8);Jb(d,1);Hb(d,10);a=d;return a|0}function fc(){return 4703}function gc(a){a=a|0;var b=0;b=Qc(1,84)|0;if(!b){a=0;return a|0}c[b+68>>2]=1;switch(a|0){case 0:{c[b+72>>2]=13;c[b+76>>2]=2;c[b+80>>2]=3;c[b+4>>2]=33;c[b+16>>2]=11;c[b>>2]=34;c[b+20>>2]=1;c[b+24>>2]=5;c[b+8>>2]=1;c[b+12>>2]=1;c[b+28>>2]=1;c[b+32>>2]=1;c[b+36>>2]=12;a=fd()|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}case 2:{c[b+72>>2]=14;c[b+76>>2]=4;c[b+80>>2]=5;c[b+4>>2]=35;c[b+16>>2]=13;c[b>>2]=36;c[b+8>>2]=2;c[b+12>>2]=2;c[b+20>>2]=2;c[b+24>>2]=6;c[b+28>>2]=2;c[b+32>>2]=2;c[b+36>>2]=14;a=Ye(1)|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}default:{Uc(b);a=0;return a|0}}Vb(b+44|0);a=b;return a|0}function hc(a){a=a|0;if(!a)return;Qi(a|0,0,8248)|0;c[a+8200>>2]=-1;c[a+8204>>2]=-1;c[a+8248>>2]=0;return}function ic(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if(!((a|0)!=0&(b|0)!=0)){b=0;i=d;return b|0}if(!(c[a+68>>2]|0)){Ub(a+44|0,1,4709,d)|0;b=0;i=d;return b|0}else{Ua[c[a+24>>2]&7](c[a+40>>2]|0,b);b=1;i=d;return b|0}return 0}function jc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;if(!((a|0)!=0&(b|0)!=0)){a=0;i=e;return a|0}if(!(c[b+68>>2]|0)){Ub(b+44|0,1,4790,e)|0;a=0;i=e;return a|0}else{a=Za[c[b>>2]&63](a,c[b+40>>2]|0,d,b+44|0)|0;i=e;return a|0}return 0}function kc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Za[c[a+4>>2]&63](c[a+40>>2]|0,b,d,a+44|0)|0;return b|0}function lc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!a){e=0;return e|0}if(!(c[a+68>>2]|0)){e=0;return e|0}e=Qa[c[a+28>>2]&3](c[a+40>>2]|0,b,d,e,f,g,a+44|0)|0;return e|0}function mc(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|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;if(!((d|0)!=0&((a|0)!=0&(b|0)!=0&(e|0)!=0))){i=0;return i|0}if(!(c[a+68>>2]|0)){i=0;return i|0}i=Ya[c[a+8>>2]&3](c[a+40>>2]|0,d,e,f,g,h,i,j,k,b,a+44|0)|0;return i|0}function nc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!((a|0)!=0&(d|0)!=0&(f|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Va[c[a+12>>2]&7](c[a+40>>2]|0,b,d,e,f,a+44|0)|0;return b|0}function oc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(!((a|0)!=0&(b|0)!=0)){e=0;return e|0}if(!(c[a+68>>2]|0)){e=0;return e|0}e=$a[c[a+32>>2]&3](c[a+40>>2]|0,b,d,a+44|0,e)|0;return e|0}function pc(a,b){a=a|0;b=b|0;if(!a){b=0;return b|0}b=Ra[c[a+36>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function qc(a){a=a|0;var b=0;b=Qc(1,84)|0;if(!b){a=0;return a|0}c[b+68>>2]=0;switch(a|0){case 0:{c[b+4>>2]=15;c[b+12>>2]=16;c[b>>2]=37;c[b+8>>2]=3;c[b+16>>2]=1;c[b+20>>2]=38;a=Xc()|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}case 2:{c[b+4>>2]=17;c[b+12>>2]=18;c[b>>2]=39;c[b+8>>2]=4;c[b+16>>2]=2;c[b+20>>2]=40;a=Ye(0)|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}default:{Uc(b);a=0;return a|0}}Vb(b+44|0);a=b;return a|0}function rc(b){b=b|0;if(!b)return;Qi(b|0,0,18708)|0;c[b+5592>>2]=6;c[b+18684>>2]=0;c[b+5596>>2]=64;c[b+5600>>2]=64;c[b+44>>2]=0;c[b+5612>>2]=-1;c[b+18188>>2]=1;c[b+18192>>2]=1;a[b+18688>>0]=0;c[b+18196>>2]=-1;c[b+18200>>2]=-1;g[b+4792>>2]=0.0;c[b+4788>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+18692>>2]=0;return}function sc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(b|0)!=0&(d|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Za[c[a+20>>2]&63](c[a+40>>2]|0,b,d,a+44|0)|0;return b|0}function tc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(d|0)!=0)){d=0;return d|0}if(c[a+68>>2]|0){d=0;return d|0}d=Za[c[a>>2]&63](c[a+40>>2]|0,d,b,a+44|0)|0;return d|0}function uc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Ra[c[a+4>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function vc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Ra[c[a+12>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function wc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Ra[c[a+16>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function xc(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=h<<2;i=_(k,h)|0;j=d+18704|0;h=e[j>>1]|0;b[j>>1]=(h&32768|0)==0?-32512:(h|256)&65535;c[d+5608>>2]=1;a[d+18690>>0]=2;j=Pc(i+k|0)|0;h=d+18696|0;c[h>>2]=j;if(!j){g=0;return g|0}Ui(j|0,f|0,i|0)|0;Ui((c[h>>2]|0)+i|0,g|0,k|0)|0;g=1;return g|0}function yc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!((d|0)!=0&((a|0)!=0&(f|0)!=0))){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Va[c[a+8>>2]&7](c[a+40>>2]|0,b,d,e,f,a+44|0)|0;return b|0}function zc(a){a=a|0;var b=0,d=0;if(!a)return;b=a+40|0;d=c[b>>2]|0;if(!(c[a+68>>2]|0))Ta[c[a+16>>2]&7](d);else Ta[c[a+20>>2]&7](d);c[b>>2]=0;Uc(a);return}function Ac(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;Xa[c[a+72>>2]&15](c[a+40>>2]|0,b,d);return}function Bc(a){a=a|0;if(!a){a=0;return a|0}a=Wa[c[a+76>>2]&15](c[a+40>>2]|0)|0;return a|0}function Cc(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a>>2]|0;d=c[b+48>>2]|0;if(d){Uc(d);b=c[a>>2]|0}Uc(b);c[a>>2]=0;return}function Dc(a){a=a|0;if(!a){a=0;return a|0}a=Wa[c[a+80>>2]&15](c[a+40>>2]|0)|0;return a|0}function Ec(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;bd(b);c[a>>2]=0;return}function Fc(a,b){a=a|0;b=b|0;return Gc(a,1048576,b)|0}function Gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!a){b=0;return b|0}d=_h(a,(c|0)==0?4869:4872)|0;if(!d){b=0;return b|0}a=vb(b,c)|0;if(!a){Yh(d)|0;b=0;return b|0}else{Kb(a,d,6);fi(d,0,2)|0;b=ii(d)|0;fi(d,0,0)|0;Lb(a,b,((b|0)<0)<<31>>31);Gb(a,19);Ib(a,20);Jb(a,21);Hb(a,22);b=a;return b|0}return 0}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[d>>2]|0)+(c[d+8>>2]|0)|0;d=d+4|0;e=c[d>>2]|0;f=g-e|0;if((g|0)==(e|0)){g=-1;return g|0}g=f>>>0>b>>>0?b:f;Ui(a|0,e|0,g|0)|0;c[d>>2]=(c[d>>2]|0)+g;return g|0}function Ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+4|0;e=c[k>>2]|0;i=d+8|0;g=c[i>>2]|0;j=e-(c[d>>2]|0)|0;f=(g|0)==0?1:g;while(1)if((f-j|0)>>>0>>0)f=f<<1;else{h=f;break}if((h|0)!=(g|0)){e=Pc(h)|0;if(!e){b=-1;return b|0}f=c[d>>2]|0;if(f){Ui(e|0,f|0,j|0)|0;Uc(c[d>>2]|0)}c[d>>2]=e;e=e+j|0;c[k>>2]=e;c[i>>2]=h}Ui(e|0,a|0,b|0)|0;c[k>>2]=(c[k>>2]|0)+b;return b|0}function Jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=(c[b>>2]|0)+(c[b+8>>2]|0)|0;b=b+4|0;d=c[b>>2]|0;e=f-d|0;if((f|0)==(d|0)){f=-1;return f|0}c[b>>2]=d+a;f=e>>>0>a>>>0?a:e;return f|0}function Kc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[d+8>>2]|0;c[d+4>>2]=(c[d>>2]|0)+(0>(b|0)|0==(b|0)&e>>>0>a>>>0?a:e);return 1}function Lc(a,b,c){a=a|0;b=b|0;c=c|0;b=ci(a,1,b,c)|0;return ((b|0)!=0?b:-1)|0}function Mc(a,b,c){a=a|0;b=b|0;c=c|0;return ki(a,1,b,c)|0}function Nc(a,b,c){a=a|0;b=b|0;c=c|0;c=(fi(c,a,1)|0)==0;C=c?b:-1;return (c?a:-1)|0}function Oc(a,b,c){a=a|0;b=b|0;c=c|0;return (fi(c,a,0)|0)==0|0}function Pc(a){a=a|0;if(!a)a=0;else a=Fi(a)|0;return a|0}function Qc(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Hi(a,b)|0;return a|0}function Rc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;do if(a)if(!(Ji(b,16,a)|0)){b=c[b>>2]|0;break}else{c[b>>2]=0;b=0;break}else b=0;while(0);i=d;return b|0}function Sc(a){a=a|0;Gi(a);return}function Tc(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Ii(a,b)|0;return b|0}function Uc(a){a=a|0;Gi(a);return}function Vc(a){a=a|0;var b=0,d=0;b=696;while(1){d=c[b>>2]|0;if((d|0)==-1|(d|0)==(a|0))break;else b=b+12|0}return b+4|0}function Wc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0))return;c[a+172>>2]=c[b+4>>2];c[a+168>>2]=c[b>>2];return}function Xc(){var b=0,d=0;b=Qc(1,208)|0;if(!b){b=0;return b|0}c[b>>2]=0;d=b+184|0;a[d>>0]=a[d>>0]&-3;d=Pc(1e3)|0;c[b+44>>2]=d;if(!d){Yc(b);d=0;return d|0}c[b+48>>2]=1e3;d=qg()|0;c[b+192>>2]=d;if(!d){Yc(b);d=0;return d|0}d=qg()|0;c[b+188>>2]=d;if(d){d=b;return d|0}Yc(b);d=0;return d|0}function Yc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;if(!b)return;if(!(c[b>>2]|0)){d=b+36|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0}d=b+24|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+28>>2]=0}d=b+44|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+48>>2]=0}}else{d=b+12|0;e=c[d>>2]|0;if(e){sd(e);Uc(c[d>>2]|0);c[d>>2]=0}d=b+16|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+20>>2]=0}}Yf(c[b+204>>2]|0);d=b+88|0;h=b+164|0;e=c[h>>2]|0;if(e){f=_(c[b+112>>2]|0,c[b+116>>2]|0)|0;if(f){g=0;while(1){sd(e);g=g+1|0;if((g|0)==(f|0))break;else e=e+5640|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=b+124|0;e=c[h>>2]|0;if(e){i=b+120|0;f=c[i>>2]|0;if(f){g=0;while(1){e=c[e+(g<<3)>>2]|0;if(e){Uc(e);f=c[i>>2]|0}g=g+1|0;if(g>>>0>=f>>>0)break;e=c[h>>2]|0}e=c[h>>2]|0}c[i>>2]=0;Uc(e);c[h>>2]=0}i=b+144|0;Uc(c[i>>2]|0);c[i>>2]=0;c[b+128>>2]=0;i=b+108|0;Uc(c[i>>2]|0);c[i>>2]=0;if(!(a[b+184>>0]&2)){i=b+176|0;Uc(c[i>>2]|0);c[i>>2]=0}e=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));i=b+188|0;rg(c[i>>2]|0);c[i>>2]=0;rg(c[b+192>>2]|0);c[i>>2]=0;i=b+196|0;bd(c[i>>2]|0);c[i>>2]=0;i=b+80|0;Zb(c[i>>2]|0);c[i>>2]=0;i=b+84|0;Zb(c[i>>2]|0);c[i>>2]=0;Uc(b);return}function Zc(d,e,f,j){d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0.0;ka=i;i=i+320|0;fa=ka+296|0;ea=ka+288|0;ja=ka+280|0;ia=ka+272|0;ha=ka+264|0;ga=ka+256|0;da=ka+248|0;ca=ka+240|0;W=ka+232|0;U=ka+224|0;T=ka+216|0;S=ka+208|0;R=ka+200|0;Q=ka+192|0;P=ka+184|0;v=ka+176|0;u=ka+168|0;t=ka+160|0;s=ka+152|0;q=ka+144|0;I=ka+136|0;H=ka+128|0;N=ka+112|0;G=ka+104|0;F=ka+96|0;E=ka+88|0;C=ka+80|0;B=ka+72|0;A=ka+64|0;z=ka+56|0;y=ka+48|0;x=ka+32|0;w=ka+24|0;p=ka+16|0;m=ka+8|0;l=ka;K=ka+309|0;L=ka+300|0;if(!((d|0)!=0&(e|0)!=0&(f|0)!=0)){j=0;i=ka;return j|0}ba=e+5592|0;k=c[ba>>2]|0;if((k+-1|0)>>>0>32){c[l>>2]=k;c[l+4>>2]=33;Ub(j,1,4875,l)|0;j=0;i=ka;return j|0}$=d+112|0;c[$>>2]=1;aa=d+116|0;c[aa>>2]=1;J=e+18704|0;do if(!(b[J>>1]|0)){switch(c[e+18676>>2]|0){case 1:{b[J>>1]=3;c[e+18700>>2]=1302083;c[e+18680>>2]=1041666;l=1;break}case 2:{b[J>>1]=3;c[e+18700>>2]=651041;c[e+18680>>2]=520833;l=1;break}case 3:{b[J>>1]=4;c[e+18700>>2]=1302083;c[e+18680>>2]=1041666;l=1;break}default:l=0}k=c[e+18684>>2]|0;a:do if((k|0)>=4)if((k|0)<33024){switch(k|0){case 4:break;default:{Z=13;break a}}b[J>>1]=4;break}else{switch(k|0){case 33024:break;default:{Z=13;break a}}b[J>>1]=-32512;break}else{switch(k|0){case 3:break;default:{Z=13;break a}}b[J>>1]=3}while(0);if((Z|0)==13?(l|0)==0:0)break;Ub(j,2,4931,m)|0}while(0);D=e+18700|0;k=c[D>>2]|0;do if((k|0)<1){r=+g[e+4792+((c[e+4788>>2]|0)+-1<<2)>>2];if(r>0.0){X=c[f+24>>2]|0;p=_(c[X+8>>2]|0,c[f+16>>2]|0)|0;p=_(p,c[X+12>>2]|0)|0;la=+((_(p,c[X+24>>2]|0)|0)>>>0);c[D>>2]=~~+M(+(la/(r*8.0*+((c[X>>2]|0)>>>0)*+((c[X+4>>2]|0)>>>0))));break}else{c[D>>2]=0;break}}else{o=c[f+24>>2]|0;X=_(c[o+8>>2]|0,c[f+16>>2]|0)|0;X=_(X,c[o+12>>2]|0)|0;r=+((_(X,c[o+24>>2]|0)|0)>>>0);k=_(k<<3,c[o>>2]|0)|0;r=r/+((_(k,c[o+4>>2]|0)|0)>>>0);o=e+4788|0;k=c[o>>2]|0;if(k){m=k;k=0;n=0;while(1){l=e+4792+(n<<2)|0;if(+g[l>>2]>2]=r;l=c[o>>2]|0;k=1}else l=m;n=n+1|0;if(n>>>0>=l>>>0)break;else m=l}if(k)Ub(j,2,5068,p)|0}}while(0);k=b[J>>1]|0;b:do if((k+-3&65535)>=4){if(k<<16>>16==7){Ub(j,2,7228,q)|0;b[J>>1]=0;k=0;break}if((k+-256&65535)<524){Ub(j,2,7283,s)|0;b[J>>1]=0;k=0;break}if((k+-1024&65535)<1180){Ub(j,2,7331,t)|0;b[J>>1]=0;k=0;break}if(k<<16>>16<=-1)switch(k<<16>>16){case -32512:{k=-32512;break b}case -32768:{Ub(j,2,7373,u)|0;b[J>>1]=0;k=0;break b}default:{Ub(j,2,7461,v)|0;b[J>>1]=0;k=0;break b}}}else{if((k+-5&65535)<2){Ub(j,2,5160,w)|0;b[J>>1]=0;k=0;break}c[e>>2]=0;c[e+12>>2]=1;c[e+16>>2]=1;a[e+18689>>0]=67;a[e+18688>>0]=1;c[e+4>>2]=0;c[e+8>>2]=0;c[e+18180>>2]=0;c[e+18184>>2]=0;c[e+5596>>2]=32;c[e+5600>>2]=32;c[e+5604>>2]=0;c[e+5612>>2]=-1;c[e+18188>>2]=1;c[e+18192>>2]=1;c[e+5608>>2]=1;l=e+4788|0;m=c[l>>2]|0;if((m|0)>1){la=+g[e+4792+(m+-1<<2)>>2];c[x>>2]=m;h[x+8>>3]=la;Ub(j,2,5222,x)|0;c[e+4792>>2]=c[e+4792+((c[l>>2]|0)+-1<<2)>>2];c[l>>2]=1;k=b[J>>1]|0}c:do switch(k&65535|0){case 3:{k=c[ba>>2]|0;if((k|0)>6){c[y>>2]=k+1;Ub(j,2,5395,y)|0;c[ba>>2]=6;k=6}break}case 4:{k=c[ba>>2]|0;if((k|0)<2){c[z>>2]=k+1;Ub(j,2,5541,z)|0;c[ba>>2]=1;k=1;break c}if((k|0)>7){c[A>>2]=k+1;Ub(j,2,5695,A)|0;c[ba>>2]=7;k=7}break}default:k=c[ba>>2]|0}while(0);l=e+40|0;c[l>>2]=c[l>>2]|1;l=e+5620|0;c[l>>2]=k+-1;if((k|0)>1){k=0;do{c[e+5624+(k<<2)>>2]=256;c[e+5756+(k<<2)>>2]=256;k=k+1|0}while((k|0)<(c[l>>2]|0))}c[e+44>>2]=4;if((b[J>>1]|0)==4){k=c[ba>>2]|0;c[e+96>>2]=1;c[e+48>>2]=0;c[e+52>>2]=0;c[e+56>>2]=1;X=k+-1|0;c[e+60>>2]=X;c[e+64>>2]=3;c[e+80>>2]=4;c[e+244>>2]=1;c[e+196>>2]=X;c[e+200>>2]=0;c[e+204>>2]=1;c[e+208>>2]=k;c[e+212>>2]=3;c[e+228>>2]=4;k=2}else k=0;c[e+4784>>2]=k;c[e+20>>2]=1;k=c[D>>2]|0;if((k|0)>=1){if((k|0)>1302083){Ub(j,2,5998,C)|0;c[D>>2]=1302083}}else{c[D>>2]=1302083;Ub(j,2,5849,B)|0}k=e+18680|0;l=c[k>>2]|0;if((l|0)>=1){if((l|0)>1041666){Ub(j,2,6320,F)|0;c[k>>2]=1041666}}else{c[k>>2]=1041666;Ub(j,2,6171,E)|0}l=c[f+16>>2]|0;n=c[f+24>>2]|0;o=c[n+8>>2]|0;k=_(o,l)|0;p=c[n+12>>2]|0;k=_(k,p)|0;la=+((_(k,c[n+24>>2]|0)|0)>>>0);k=_(c[D>>2]<<3,c[n>>2]|0)|0;g[e+4792>>2]=la/+((_(k,c[n+4>>2]|0)|0)>>>0);k=b[J>>1]|0;d:do if((l|0)==3){l=n+28|0;m=n+32|0;if(!((c[l>>2]|0)!=12|c[m>>2])){l=n+80|0;m=n+84|0;if(!((c[l>>2]|0)!=12|c[m>>2])){l=n+132|0;m=n+136|0;if(!((c[l>>2]|0)!=12|c[m>>2])){switch(k&65535|0){case 3:{if(p>>>0>1080|o>>>0>2048){c[H>>2]=o;c[H+4>>2]=p;Ub(j,2,6892,H)|0;break d}break}case 4:{if(p>>>0>2160|o>>>0>4096){c[I>>2]=o;c[I+4>>2]=p;Ub(j,2,7063,I)|0;break d}break}default:{}}break b}else{p=l;k=m;l=2}}else{p=l;k=m;l=1}}else{p=l;k=m;l=0};a[K>>0]=a[6659]|0;a[K+1>>0]=a[6660]|0;a[K+2>>0]=a[6661]|0;a[K+3>>0]=a[6662]|0;a[K+4>>0]=a[6663]|0;a[K+5>>0]=a[6664]|0;a[K+6>>0]=a[6665]|0;m=L;n=6666;o=m+9|0;do{a[m>>0]=a[n>>0]|0;m=m+1|0;n=n+1|0}while((m|0)<(o|0));X=(c[k>>2]|0)!=0?K:L;L=c[p>>2]|0;c[N>>2]=l;c[N+4>>2]=L;c[N+8>>2]=X;Ub(j,2,6675,N)|0}else{c[G>>2]=l;Ub(j,2,6493,G)|0}while(0);b[J>>1]=0;k=0}while(0);c[d+168>>2]=c[e+18680>>2];X=d+88|0;b[X>>1]=k;N=d+181|0;K=a[N>>0]&-2|c[e+20>>2]&1;a[N>>0]=K;L=e+24|0;K=(c[L>>2]&255)<<1&2|K&-3;a[N>>0]=K;a[N>>0]=K&-5|(c[e+28>>2]&255)<<2&4;do if((c[L>>2]|0)!=0?(O=e+32|0,(c[O>>2]|0)!=0):0){k=_((c[e+4788>>2]|0)*12|0,c[ba>>2]|0)|0;l=Pc(k)|0;c[d+176>>2]=l;if(l){Ui(l|0,c[O>>2]|0,k|0)|0;break}Ub(j,1,7520,P)|0;j=0;i=ka;return j|0}while(0);n=d+100|0;c[n>>2]=c[e+12>>2];o=d+104|0;c[o>>2]=c[e+16>>2];m=d+92|0;c[m>>2]=c[e+4>>2];p=d+96|0;c[p>>2]=c[e+8>>2];l=e+36|0;k=c[l>>2]|0;do if(!k){k=fc()|0;l=Pc((wi(k)|0)+29|0)|0;c[d+108>>2]=l;if(l){c[S>>2]=7697;c[S+4>>2]=k;ni(l,7692,S)|0;break}Ub(j,1,7646,R)|0;j=0;i=ka;return j|0}else{k=Pc((wi(k)|0)+1|0)|0;c[d+108>>2]=k;if(k){vi(k,c[l>>2]|0)|0;break}Ub(j,1,7592,Q)|0;j=0;i=ka;return j|0}while(0);k=(c[f+8>>2]|0)-(c[m>>2]|0)|0;l=c[f+12>>2]|0;if(!(c[e>>2]|0)){c[n>>2]=k;c[o>>2]=l-(c[p>>2]|0)}else{S=c[n>>2]|0;c[$>>2]=(k+-1+S|0)/(S|0)|0;S=c[o>>2]|0;c[aa>>2]=(l+-1-(c[p>>2]|0)+S|0)/(S|0)|0}if(a[e+18688>>0]|0){a[d+180>>0]=a[e+18689>>0]|0;a[N>>0]=a[N>>0]|8}S=Qc(_(c[aa>>2]|0,c[$>>2]|0)|0,5640)|0;L=d+164|0;c[L>>2]=S;if(!S){Ub(j,1,7726,T)|0;j=0;i=ka;return j|0}K=e+4784|0;A=c[K>>2]|0;do if(A){w=e+48|0;B=c[ba>>2]|0;C=c[f+16>>2]|0;D=c[e+4788>>2]|0;E=_(C,B)|0;F=Qc(_(E,D)|0,4)|0;if(!F){Ub(j,1,7780,U)|0;break}m=c[w>>2]|0;s=e+60|0;k=c[s>>2]|0;if(m>>>0>>0){q=_(m,C)|0;t=e+52|0;u=e+64|0;v=e+56|0;l=c[u>>2]|0;while(1){n=c[t>>2]|0;if(n>>>0>>0){k=c[v>>2]|0;p=n;o=n+q|0;while(1){if(!k)k=0;else{l=o;n=0;while(1){c[F+(l<<2)>>2]=1;n=n+1|0;k=c[v>>2]|0;if(n>>>0>=k>>>0)break;else l=l+E|0}l=c[u>>2]|0}p=p+1|0;if(p>>>0>=l>>>0)break;else o=o+1|0}k=c[s>>2]|0}m=m+1|0;if(m>>>0>=k>>>0)break;else q=q+C|0}}if(A>>>0>1){z=1;do{k=w;w=w+148|0;v=c[k+8>>2]|0;u=k+156|0;n=c[u>>2]|0;v=n>>>0>v>>>0?v:0;o=c[w>>2]|0;x=k+160|0;l=c[x>>2]|0;if(o>>>0>>0){q=_(o,C)|0;y=k+152|0;s=k+164|0;t=_(v,E)|0;m=c[s>>2]|0;k=n;while(1){n=c[y>>2]|0;if(n>>>0>>0){p=n;n=n+q|0;while(1){if(v>>>0>>0){l=n+t|0;m=v;while(1){c[F+(l<<2)>>2]=1;m=m+1|0;k=c[u>>2]|0;if(m>>>0>=k>>>0)break;else l=l+E|0}m=c[s>>2]|0}p=p+1|0;if(p>>>0>=m>>>0)break;else n=n+1|0}l=c[x>>2]|0}o=o+1|0;if(o>>>0>=l>>>0)break;else q=q+C|0}}z=z+1|0}while((z|0)!=(A|0))}if((D|0)!=0?(V=(C|0)==0,(B|0)!=0):0){l=0;q=0;k=0;do{if(!V){p=l;o=0;while(1){m=0;n=p;while(1){k=(c[F+(n<<2)>>2]|0)!=1|k;m=m+1|0;if((m|0)==(C|0))break;else n=n+1|0}o=o+1|0;if((o|0)==(B|0))break;else p=p+C|0}l=E+l|0}q=q+1|0}while((q|0)!=(D|0));if(k)Ub(j,1,7828,W)|0}Uc(F)}while(0);e:do if(_(c[aa>>2]|0,c[$>>2]|0)|0){w=e+4788|0;x=e+40|0;y=e+44|0;z=e+18690|0;A=f+16|0;l=e+18696|0;B=f+24|0;C=e+5596|0;D=e+5600|0;E=e+5604|0;F=e+5608|0;G=e+5612|0;H=e+5616|0;I=e+5620|0;J=0;f:while(1){q=c[L>>2]|0;s=q+(J*5640|0)|0;W=c[w>>2]|0;k=q+(J*5640|0)+8|0;c[k>>2]=W;if(W){m=((b[X>>1]|0)+-3&65535)<4;o=0;do{n=(a[N>>0]&4)==0;do if(!m)if(n){c[q+(J*5640|0)+20+(o<<2)>>2]=c[e+4792+(o<<2)>>2];break}else{c[q+(J*5640|0)+5184+(o<<2)>>2]=c[e+5192+(o<<2)>>2];break}else{if(!n)c[q+(J*5640|0)+5184+(o<<2)>>2]=c[e+5192+(o<<2)>>2];c[q+(J*5640|0)+20+(o<<2)>>2]=c[e+4792+(o<<2)>>2]}while(0);o=o+1|0}while(o>>>0<(c[k>>2]|0)>>>0)}c[s>>2]=c[x>>2];c[q+(J*5640|0)+4>>2]=c[y>>2];p=q+(J*5640|0)+16|0;c[p>>2]=a[z>>0];k=q+(J*5640|0)+5636|0;m=a[k>>0]|0;a[k>>0]=m&-5;if(!(c[K>>2]|0))c[q+(J*5640|0)+420>>2]=0;else{a[k>>0]=m|4;m=c[K>>2]|0;if(!m)k=0;else{n=J+1|0;o=0;k=0;do{if((n|0)==(c[e+48+(o*148|0)+48>>2]|0)){c[q+(J*5640|0)+424+(k*148|0)>>2]=c[e+48+(k*148|0)>>2];c[q+(J*5640|0)+424+(k*148|0)+4>>2]=c[e+48+(k*148|0)+4>>2];c[q+(J*5640|0)+424+(k*148|0)+8>>2]=c[e+48+(k*148|0)+8>>2];c[q+(J*5640|0)+424+(k*148|0)+12>>2]=c[e+48+(k*148|0)+12>>2];c[q+(J*5640|0)+424+(k*148|0)+16>>2]=c[e+48+(k*148|0)+16>>2];c[q+(J*5640|0)+424+(k*148|0)+32>>2]=c[e+48+(k*148|0)+32>>2];c[q+(J*5640|0)+424+(k*148|0)+48>>2]=c[e+48+(k*148|0)+48>>2];k=k+1|0}o=o+1|0}while(o>>>0>>0)}c[q+(J*5640|0)+420>>2]=k+-1}W=Qc(c[A>>2]|0,1080)|0;v=q+(J*5640|0)+5584|0;c[v>>2]=W;if(!W){Z=149;break}do if(!(c[l>>2]|0)){g:do if((c[p>>2]|0)==1){k=c[A>>2]|0;if(k>>>0<=2){n=k;break}m=c[B>>2]|0;k=c[m>>2]|0;do if((k|0)==(c[m+52>>2]|0)){if((k|0)!=(c[m+104>>2]|0))break;k=c[m+4>>2]|0;if((k|0)!=(c[m+56>>2]|0))break;if((k|0)==(c[m+108>>2]|0)){Z=175;break g}}while(0);Ub(j,2,8224,fa)|0;c[p>>2]=0;Z=175}else Z=175;while(0);if((Z|0)==175){Z=0;n=c[A>>2]|0}if(!n)break;k=c[B>>2]|0;m=0;do{if(!(c[k+(m*52|0)+32>>2]|0))c[(c[v>>2]|0)+(m*1080|0)+1076>>2]=1<<(c[k+(m*52|0)+24>>2]|0)+-1;m=m+1|0}while(m>>>0>>0);Y=n;Z=166}else{n=c[A>>2]|0;n=_(n<<2,n)|0;k=Pc(n)|0;o=(c[l>>2]|0)+n|0;if(!k){Z=152;break f}c[p>>2]=2;m=Pc(n)|0;c[q+(J*5640|0)+5608>>2]=m;if(!m){Z=154;break f}Ui(m|0,c[l>>2]|0,n|0)|0;Ui(k|0,c[l>>2]|0,n|0)|0;m=Pc(n)|0;n=q+(J*5640|0)+5604|0;c[n>>2]=m;if(!m){Z=156;break f}if(!(Vg(k,m,c[A>>2]|0)|0)){Z=158;break f}m=Pc(c[A>>2]<<3)|0;c[q+(J*5640|0)+5600>>2]=m;if(!m){Z=160;break f}If(m,c[A>>2]|0,c[n>>2]|0);Uc(k);k=c[A>>2]|0;if(k){m=c[v>>2]|0;n=0;do{c[m+(n*1080|0)+1076>>2]=c[o+(n<<2)>>2];n=n+1|0}while(n>>>0>>0)}if(!(_c(s,f)|0)){Z=167;break f}Y=c[A>>2]|0;Z=166}while(0);if((Z|0)==166?(Z=0,(Y|0)!=0):0){u=0;do{s=c[v>>2]|0;t=s+(u*1080|0)|0;c[t>>2]=c[x>>2]&1;n=c[ba>>2]|0;o=s+(u*1080|0)+4|0;c[o>>2]=n;k=c[C>>2]|0;if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+8>>2]=k;k=c[D>>2]|0;if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+12>>2]=k;c[s+(u*1080|0)+16>>2]=c[E>>2];W=c[F>>2]|0;c[s+(u*1080|0)+20>>2]=(W|0)==0&1;c[s+(u*1080|0)+24>>2]=(W|0)!=0?2:0;c[s+(u*1080|0)+804>>2]=2;if((u|0)==(c[G>>2]|0))k=c[H>>2]|0;else k=0;c[s+(u*1080|0)+808>>2]=k;do if(!(c[x>>2]&1)){if(!n)break;else k=0;do{c[s+(u*1080|0)+812+(k<<2)>>2]=15;c[s+(u*1080|0)+944+(k<<2)>>2]=15;k=k+1|0}while(k>>>0<(c[o>>2]|0)>>>0)}else{if((n|0)>0){o=n;q=0}else break;while(1){p=o;o=o+-1|0;k=c[I>>2]|0;do if((q|0)<(k|0)){k=c[e+5624+(q<<2)>>2]|0;if((k|0)<1)c[s+(u*1080|0)+812+(o<<2)>>2]=1;else{if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+812+(o<<2)>>2]=k}k=c[e+5756+(q<<2)>>2]|0;if((k|0)<1){c[s+(u*1080|0)+944+(o<<2)>>2]=1;break}if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+944+(o<<2)>>2]=k}else{W=k+-1|0;m=q-W|0;k=c[e+5624+(W<<2)>>2]>>m;m=c[e+5756+(W<<2)>>2]>>m;if((k|0)<1)c[s+(u*1080|0)+812+(o<<2)>>2]=1;else{if((k|0)>1){n=0;do{k=k>>1;n=n+1|0}while((k|0)>1);k=n}else k=0;c[s+(u*1080|0)+812+(o<<2)>>2]=k}if((m|0)<1){c[s+(u*1080|0)+944+(o<<2)>>2]=1;break}if((m|0)>1){k=0;do{m=m>>1;k=k+1|0}while((m|0)>1)}else k=0;c[s+(u*1080|0)+944+(o<<2)>>2]=k}while(0);if((p|0)<=1)break;else q=q+1|0}}while(0);Mg(t,c[(c[B>>2]|0)+(u*52|0)+24>>2]|0);u=u+1|0}while(u>>>0<(c[A>>2]|0)>>>0)}J=J+1|0;if(J>>>0>=(_(c[aa>>2]|0,c[$>>2]|0)|0)>>>0)break e}if((Z|0)==149){Ub(j,1,7867,ca)|0;j=0;i=ka;return j|0}else if((Z|0)==152){Ub(j,1,7931,da)|0;j=0;i=ka;return j|0}else if((Z|0)==154){Uc(k);Ub(j,1,7974,ga)|0;j=0;i=ka;return j|0}else if((Z|0)==156){Uc(k);Ub(j,1,8032,ha)|0;j=0;i=ka;return j|0}else if((Z|0)==158){Uc(k);Ub(j,1,8092,ia)|0;j=0;i=ka;return j|0}else if((Z|0)==160){Uc(k);Ub(j,1,8140,ja)|0;j=0;i=ka;return j|0}else if((Z|0)==167){Ub(j,1,8190,ea)|0;j=0;i=ka;return j|0}}else l=e+18696|0;while(0);k=c[l>>2]|0;if(!k){j=1;i=ka;return j|0}Uc(k);c[l>>2]=0;j=1;i=ka;return j|0}function _c(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((c[b+16>>2]|0)!=2){b=1;return b|0}m=b+5604|0;r=b+5616|0;e=c[r>>2]|0;n=b+5620|0;do if(c[m>>2]|0){do if((e|0)==(c[n>>2]|0)){e=e+10|0;c[n>>2]=e;f=b+5612|0;e=Tc(c[f>>2]|0,e*20|0)|0;if(e){c[f>>2]=e;q=c[r>>2]|0;Qi(e+(q*20|0)|0,0,((c[n>>2]|0)-q|0)*20|0)|0;e=c[r>>2]|0;break}Uc(c[f>>2]|0);c[f>>2]=0;c[n>>2]=0;c[r>>2]=0;b=0;return b|0}else f=b+5612|0;while(0);k=c[f>>2]|0;i=k+(e*20|0)|0;l=k+(e*20|0)+12|0;f=c[l>>2]|0;if(f){Uc(f);c[l>>2]=0}c[k+(e*20|0)+8>>2]=1;c[k+(e*20|0)+4>>2]=1;c[i>>2]=2;f=c[d+16>>2]|0;f=_(f,f)|0;h=f<<2;j=Pc(h)|0;c[l>>2]=j;if(!j){b=0;return b|0}else{Xa[c[768+(c[i>>2]<<2)>>2]&15](c[m>>2]|0,j,f);c[k+(e*20|0)+16>>2]=h;e=(c[r>>2]|0)+1|0;c[r>>2]=e;j=2;break}}else{j=1;i=0}while(0);do if((e|0)==(c[n>>2]|0)){f=e+10|0;c[n>>2]=f;e=b+5612|0;f=Tc(c[e>>2]|0,f*20|0)|0;if(!f){Uc(c[e>>2]|0);c[e>>2]=0;c[n>>2]=0;c[r>>2]=0;b=0;return b|0}else{c[e>>2]=f;h=c[r>>2]|0;Qi(f+(h*20|0)|0,0,((c[n>>2]|0)-h|0)*20|0)|0;if(!i){i=0;break}i=f+((h+-1|0)*20|0)|0;break}}else e=b+5612|0;while(0);m=c[e>>2]|0;n=c[r>>2]|0;q=m+(n*20|0)|0;o=m+(n*20|0)+12|0;e=c[o>>2]|0;if(e){Uc(e);c[o>>2]=0}p=j+1|0;c[m+(n*20|0)+8>>2]=j;c[m+(n*20|0)+4>>2]=2;c[q>>2]=2;d=d+16|0;e=c[d>>2]|0;f=e<<2;l=Pc(f)|0;c[o>>2]=l;if(!l){b=0;return b|0}h=Pc(f)|0;if(!h){Uc(c[o>>2]|0);c[o>>2]=0;b=0;return b|0}if(e){j=0;k=h;l=c[b+5584>>2]|0;while(1){g[k>>2]=+(c[l+1076>>2]|0);j=j+1|0;if((j|0)==(e|0))break;else{k=k+4|0;l=l+1080|0}}}Xa[c[768+(c[q>>2]<<2)>>2]&15](h,c[o>>2]|0,e);Uc(h);c[m+(n*20|0)+16>>2]=f;c[r>>2]=(c[r>>2]|0)+1;j=b+5628|0;e=c[j>>2]|0;h=b+5632|0;do if((e|0)==(c[h>>2]|0)){e=e+10|0;c[h>>2]=e;f=b+5624|0;e=Tc(c[f>>2]|0,e*20|0)|0;if(e){c[f>>2]=e;b=c[j>>2]|0;Qi(e+(b*20|0)|0,0,((c[h>>2]|0)-b|0)*20|0)|0;e=c[j>>2]|0;break}Uc(c[f>>2]|0);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;b=0;return b|0}else f=b+5624|0;while(0);b=c[f>>2]|0;c[b+(e*20|0)+8>>2]=i;r=b+(e*20|0)+16|0;a[r>>0]=a[r>>0]|1;c[b+(e*20|0)+4>>2]=c[d>>2];c[b+(e*20|0)>>2]=p;c[b+(e*20|0)+12>>2]=q;c[j>>2]=(c[j>>2]|0)+1;b=1;return b|0}function $c(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ad(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=Xb()|0;k=b+80|0;c[k>>2]=j;if(!j){k=0;return k|0}f=b+192|0;if((sg(c[f>>2]|0,23,e)|0)!=0?(sg(c[f>>2]|0,24,e)|0)!=0:0){h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}}else vg(h);f=b+188|0;if((sg(c[f>>2]|0,25,e)|0)!=0?(sg(c[f>>2]|0,26,e)|0)!=0:0){h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}}else vg(h);f=Xb()|0;c[d>>2]=f;if(!f){k=0;return k|0}$b(c[k>>2]|0,f);f=_(c[b+116>>2]|0,c[b+112>>2]|0)|0;i=b+196|0;c[(c[i>>2]|0)+36>>2]=f;f=Qc(f,40)|0;g=c[i>>2]|0;c[g+40>>2]=f;if(!f){k=0;return k|0}if(!(c[g+36>>2]|0)){k=1;return k|0}h=0;while(1){c[f+(h*40|0)+28>>2]=100;c[f+(h*40|0)+20>>2]=0;k=Qc(100,24)|0;g=c[i>>2]|0;f=c[g+40>>2]|0;c[f+(h*40|0)+24>>2]=k;h=h+1|0;if(!k){f=0;g=30;break}if(h>>>0>=(c[g+36>>2]|0)>>>0){f=1;g=30;break}}if((g|0)==30)return f|0}Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}function bd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;b=a+28|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}h=a+40|0;b=c[h>>2]|0;if(b){g=a+36|0;if(c[g>>2]|0){d=b;f=0;do{e=c[d+(f*40|0)+36>>2]|0;if(e){Uc(e);b=c[h>>2]|0;c[b+(f*40|0)+36>>2]=0;d=b}e=c[d+(f*40|0)+16>>2]|0;if(e){Uc(e);b=c[h>>2]|0;c[b+(f*40|0)+16>>2]=0;d=b}e=c[d+(f*40|0)+24>>2]|0;if(e){Uc(e);d=c[h>>2]|0;c[d+(f*40|0)+24>>2]=0;b=d}f=f+1|0}while(f>>>0<(c[g>>2]|0)>>>0)}Uc(b);c[h>>2]=0}Uc(a);return}function cd(d,e,f,g,h,j,k,l,m,n,o){d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=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;Da=i;i=i+256|0;Ca=Da+200|0;Ba=Da+192|0;za=Da+184|0;ya=Da+176|0;pa=Da+168|0;oa=Da+160|0;na=Da+152|0;ma=Da+144|0;la=Da+136|0;ka=Da+128|0;ia=Da+120|0;ha=Da+112|0;wa=Da+104|0;ua=Da+96|0;ga=Da+88|0;fa=Da+80|0;ea=Da+72|0;va=Da+64|0;da=Da+56|0;ca=Da+48|0;sa=Da+40|0;ra=Da+32|0;qa=Da+24|0;ja=Da+16|0;ba=Da+8|0;aa=Da;V=Da+240|0;T=Da+236|0;X=Da+232|0;Z=Da+228|0;$=Da+224|0;U=Da+220|0;Y=Da+216|0;S=Da+212|0;W=Da+208|0;c[S>>2]=65424;Aa=d+8|0;a:do switch(c[Aa>>2]|0){case 256:{c[S>>2]=65497;p=d+76|0;xa=117;break}case 8:{ta=d+76|0;if(!(a[ta>>0]&1)){O=d+200|0;P=d+164|0;Q=d+72|0;R=d+24|0;B=d+196|0;D=d+112|0;E=d+116|0;G=V+2|0;H=V+6|0;I=V+7|0;J=d+16|0;K=d+20|0;L=d+64|0;p=65424;b:while(1){c:do if((p|0)!=65427){while(1){A=Qb(n)|0;if((A|0)==0&(C|0)==0){xa=7;break}if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=9;break b}qb(c[J>>2]|0,W,2);if((c[W>>2]|0)>>>0<2){xa=11;break b}if((c[S>>2]|0)==32896?(A=Qb(n)|0,(A|0)==0&(C|0)==0):0){xa=14;break}s=c[Aa>>2]|0;p=c[W>>2]|0;if(s&16)c[R>>2]=-2-p+(c[R>>2]|0);q=p+-2|0;c[W>>2]=q;p=c[S>>2]|0;r=784;while(1){A=c[r>>2]|0;if((A|0)==0|(A|0)==(p|0)){y=r;break}else r=r+12|0}if(!(c[r+4>>2]&s)){xa=20;break b}if(q>>>0>(c[K>>2]|0)>>>0){A=Qb(n)|0;z=C;if(0>(z|0)|0==(z|0)&q>>>0>A>>>0){xa=24;break b}p=Tc(c[J>>2]|0,c[W>>2]|0)|0;if(!p){xa=26;break b}c[J>>2]=p;q=c[W>>2]|0;c[K>>2]=q}else p=c[J>>2]|0;q=Mb(n,p,q,o)|0;if((q|0)!=(c[W>>2]|0)){xa=29;break b}p=c[r+8>>2]|0;if(!p){xa=31;break b}if(!(Za[p&63](d,c[J>>2]|0,q,o)|0)){xa=33;break b}r=c[O>>2]|0;q=c[B>>2]|0;v=c[y>>2]|0;w=Pb(n)|0;x=c[W>>2]|0;w=w-x+-4|0;x=x+4|0;q=q+40|0;u=c[q>>2]|0;p=c[u+(r*40|0)+20>>2]|0;s=u+(r*40|0)+28|0;t=c[s>>2]|0;if((p+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;c[s>>2]=t;s=Tc(c[u+(r*40|0)+24>>2]|0,t*24|0)|0;t=c[q>>2]|0;p=t+(r*40|0)+24|0;if(!s){xa=41;break b}c[p>>2]=s;q=t;p=c[t+(r*40|0)+20>>2]|0}else{q=u;s=c[u+(r*40|0)+24>>2]|0}b[s+(p*24|0)>>1]=v;A=s+(p*24|0)+8|0;c[A>>2]=w;c[A+4>>2]=((w|0)<0)<<31>>31;c[s+(p*24|0)+16>>2]=x;c[q+(r*40|0)+20>>2]=p+1;if((v|0)==65424?(F=c[q+(r*40|0)+16>>2]|0,(F|0)!=0):0){A=F+((c[q+(r*40|0)+12>>2]|0)*24|0)|0;c[A>>2]=w;c[A+4>>2]=0}do if((c[y>>2]|0)==65424){p=Pb(n)|0;p=-4-(c[W>>2]|0)+p|0;A=L;z=c[A+4>>2]|0;if(!(0>(z|0)|(0==(z|0)?p>>>0>(c[A>>2]|0)>>>0:0)))break;A=L;c[A>>2]=p;c[A+4>>2]=0}while(0);if(a[ta>>0]&4){xa=46;break}if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=50;break b}qb(c[J>>2]|0,S,2);if((c[S>>2]|0)==65427)break c}if((xa|0)==7){xa=0;c[Aa>>2]=64;break}else if((xa|0)==14){xa=0;c[Aa>>2]=64;break}else if((xa|0)==46){xa=0;A=Rb(n,c[R>>2]|0,0,o)|0;if(!((C|0)==0?(A|0)==(c[R>>2]|0):0)){xa=47;break b}c[S>>2]=65427;break}}while(0);A=Qb(n)|0;if((A|0)==0&(C|0)==0?(c[Aa>>2]|0)==64:0){xa=115;break}p=a[ta>>0]|0;if(!(p&4)){q=c[O>>2]|0;r=c[P>>2]|0;if(!(c[Q>>2]|0)){p=c[R>>2]|0;if(p>>>0>1){s=p+-2|0;c[R>>2]=s}else s=p}else{s=Qb(n)|0;s=Si(s|0,C|0,-2,0)|0;c[R>>2]=s}p=r+(q*5640|0)+5592|0;A=r+(q*5640|0)+5596|0;do if(!s)z=1;else{z=Qb(n)|0;y=C;if(0>(y|0)|0==(y|0)&s>>>0>z>>>0)Ub(o,2,8573,ga)|0;q=c[p>>2]|0;if(!q){z=Pc(c[R>>2]|0)|0;c[p>>2]=z;if(!z)break b;else{z=0;break}}q=Tc(q,(c[R>>2]|0)+(c[A>>2]|0)|0)|0;if(!q){xa=65;break b}c[p>>2]=q;z=0}while(0);q=c[B>>2]|0;if(q){w=Pb(n)|0;s=C;y=Si(w|0,s|0,-2,-1)|0;r=c[O>>2]|0;q=q+40|0;u=c[q>>2]|0;v=c[u+(r*40|0)+12>>2]|0;t=c[u+(r*40|0)+16>>2]|0;x=t+(v*24|0)+8|0;c[x>>2]=y;c[x+4>>2]=C;x=c[R>>2]|0;s=Si(x|0,0,w|0,s|0)|0;v=t+(v*24|0)+16|0;c[v>>2]=s;c[v+4>>2]=C;x=x+2|0;v=c[u+(r*40|0)+20>>2]|0;s=u+(r*40|0)+28|0;t=c[s>>2]|0;if((v+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;c[s>>2]=t;s=Tc(c[u+(r*40|0)+24>>2]|0,t*24|0)|0;t=c[q>>2]|0;u=t+(r*40|0)+24|0;if(!s){p=u;xa=74;break}c[u>>2]=s;w=t;q=c[t+(r*40|0)+20>>2]|0}else{w=u;s=c[u+(r*40|0)+24>>2]|0;q=v}b[s+(q*24|0)>>1]=-109;v=Pi(0,y|0,32)|0;y=s+(q*24|0)+8|0;c[y>>2]=v;c[y+4>>2]=C;c[s+(q*24|0)+16>>2]=x;c[w+(r*40|0)+20>>2]=q+1}if(!z)p=Mb(n,(c[p>>2]|0)+(c[A>>2]|0)|0,c[R>>2]|0,o)|0;else p=0;c[Aa>>2]=(p|0)==(c[R>>2]|0)?8:64;c[A>>2]=(c[A>>2]|0)+p;p=a[ta>>0]|0;if((p&9)==1){a[ta>>0]=p|8;q=c[O>>2]|0;do if((Tb(n)|0)!=0?(M=Pb(n)|0,N=C,!((M|0)==-1&(N|0)==-1)):0){while(1){if((Mb(n,V,2,o)|0)!=2){xa=81;break}qb(V,T,2);if((c[T>>2]|0)!=65424){xa=83;break}if((Mb(n,V,2,o)|0)!=2){xa=85;break}qb(V,X,2);if((c[X>>2]|0)!=10){xa=87;break}c[X>>2]=8;p=Mb(n,V,8,o)|0;if((p|0)!=(c[X>>2]|0)){xa=89;break}if((p|0)!=8){xa=91;break}qb(V,Z,2);qb(G,$,4);qb(H,U,1);qb(I,Y,1);if((c[Z>>2]|0)==(q|0)){xa=97;break}p=c[$>>2]|0;if(p>>>0<14){xa=94;break}xa=p+-12|0;c[$>>2]=xa;xa=Rb(n,xa,0,o)|0;if(!((C|0)==0?(xa|0)==(c[$>>2]|0):0)){xa=96;break}}if((xa|0)==81){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==83){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==85){xa=0;Ub(o,1,8295,ha)|0;p=0;q=0;break}else if((xa|0)==87){xa=0;Ub(o,1,8313,ia)|0;p=0;q=0;break}else if((xa|0)==89){xa=0;Ub(o,1,8295,ka)|0;p=0;q=0;break}else if((xa|0)==91){xa=0;Ub(o,1,8662,la)|0;p=0;q=0;break}else if((xa|0)==94){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==96){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==97){xa=0;q=(c[U>>2]|0)==(c[Y>>2]|0)&1;p=(Sb(n,M,N,o)|0)!=0&1;break}}else{p=1;q=0}while(0);if(!p){xa=99;break}if(q){p=_(c[E>>2]|0,c[D>>2]|0)|0;a[ta>>0]=a[ta>>0]&-18|16;if(p){q=c[P>>2]|0;t=0;do{r=q+(t*5640|0)+5588|0;s=c[r>>2]|0;if(s)c[r>>2]=s+1;t=t+1|0}while((t|0)!=(p|0))}Ub(o,2,8734,na)|0}}if(!(a[ta>>0]&1)){if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=109;break}qb(c[J>>2]|0,S,2)}}else{a[ta>>0]=p&-6;c[Aa>>2]=8;if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=113;break}qb(c[J>>2]|0,S,2)}p=c[S>>2]|0;if(!((p|0)!=65497&(a[ta>>0]&1)==0)){xa=116;break}}switch(xa|0){case 9:{Ub(o,1,8295,aa)|0;o=0;i=Da;return o|0}case 11:{Ub(o,1,8313,ba)|0;o=0;i=Da;return o|0}case 20:{Ub(o,1,8339,ja)|0;o=0;i=Da;return o|0}case 24:{Ub(o,1,8382,qa)|0;o=0;i=Da;return o|0}case 26:{Uc(c[J>>2]|0);c[J>>2]=0;c[K>>2]=0;Ub(o,1,8427,ra)|0;o=0;i=Da;return o|0}case 29:{Ub(o,1,8295,sa)|0;o=0;i=Da;return o|0}case 31:{Ub(o,1,8461,ca)|0;o=0;i=Da;return o|0}case 33:{c[da>>2]=c[S>>2];Ub(o,1,8490,da)|0;o=0;i=Da;return o|0}case 41:{Uc(c[p>>2]|0);Ca=c[q>>2]|0;c[Ca+(r*40|0)+24>>2]=0;c[Ca+(r*40|0)+28>>2]=0;c[Ca+(r*40|0)+20>>2]=0;Ub(o,1,8537,va)|0;o=0;i=Da;return o|0}case 47:{Ub(o,1,8295,ea)|0;o=0;i=Da;return o|0}case 50:{Ub(o,1,8295,fa)|0;o=0;i=Da;return o|0}case 65:{Uc(c[p>>2]|0);c[p>>2]=0;break}case 74:{Uc(c[p>>2]|0);Ca=c[q>>2]|0;c[Ca+(r*40|0)+24>>2]=0;c[Ca+(r*40|0)+28>>2]=0;c[Ca+(r*40|0)+20>>2]=0;Ub(o,1,8537,wa)|0;o=0;i=Da;return o|0}case 99:{Ub(o,1,8688,ma)|0;o=0;i=Da;return o|0}case 109:{Ub(o,1,8295,oa)|0;o=0;i=Da;return o|0}case 113:{Ub(o,1,8295,pa)|0;o=0;i=Da;return o|0}case 115:{p=c[S>>2]|0;xa=116;break}}if((xa|0)==116)if((p|0)==65497){p=ta;xa=117;break a}else{p=ta;break a}Ub(o,1,8628,ua)|0;o=0;i=Da;return o|0}else p=ta;break}default:{o=0;i=Da;return o|0}}while(0);if((xa|0)==117)if((c[Aa>>2]|0)!=256){c[d+200>>2]=0;c[Aa>>2]=256}if(!(a[p>>0]&1)){s=_(c[d+112>>2]|0,c[d+116>>2]|0)|0;t=d+200|0;q=c[t>>2]|0;d:do if(q>>>0>>0){p=q;r=(c[d+164>>2]|0)+(q*5640|0)|0;while(1){if(c[r+5592>>2]|0){q=p;break d}q=p+1|0;c[t>>2]=q;if(q>>>0>>0){p=q;r=r+5640|0}else break}}while(0);if((q|0)==(s|0)){c[m>>2]=0;o=1;i=Da;return o|0}}else{q=d+200|0;t=q;q=c[q>>2]|0}A=c[d+164>>2]|0;if(a[A+(q*5640|0)+5636>>0]&2){B=A+(q*5640|0)+5160|0;r=c[B>>2]|0;if(!r)p=0;else{s=c[A+(q*5640|0)+5164>>2]|0;u=0;p=0;do{p=(c[s+(u<<3)+4>>2]|0)+p|0;u=u+1|0}while((u|0)!=(r|0))}xa=Pc(p)|0;z=A+(q*5640|0)+5172|0;c[z>>2]=xa;if(!xa){Ub(o,1,8775,ya)|0;Ub(o,1,8813,za)|0;o=0;i=Da;return o|0}y=A+(q*5640|0)+5180|0;c[y>>2]=p;r=c[B>>2]|0;x=A+(q*5640|0)+5164|0;if(!r)p=c[x>>2]|0;else{p=c[x>>2]|0;v=p;w=0;u=0;while(1){s=c[v+(w<<3)>>2]|0;if(!s)s=v;else{Ui((c[z>>2]|0)+u|0,s|0,c[v+(w<<3)+4>>2]|0)|0;s=c[x>>2]|0;u=(c[s+(w<<3)+4>>2]|0)+u|0;Uc(c[s+(w<<3)>>2]|0);s=c[x>>2]|0;c[s+(w<<3)>>2]=0;c[s+(w<<3)+4>>2]=0;r=c[B>>2]|0;p=s}w=w+1|0;if(w>>>0>=r>>>0)break;else v=s}}c[B>>2]=0;Uc(p);c[x>>2]=0;c[A+(q*5640|0)+5168>>2]=c[z>>2];c[A+(q*5640|0)+5176>>2]=c[y>>2];q=c[t>>2]|0}p=d+204|0;if(!($f(c[p>>2]|0,q,o)|0)){Ub(o,1,8839,Ba)|0;o=0;i=Da;return o|0}else{Ba=_(c[d+112>>2]|0,c[d+116>>2]|0)|0;c[Ca>>2]=(c[t>>2]|0)+1;c[Ca+4>>2]=Ba;Ub(o,4,8873,Ca)|0;c[e>>2]=c[t>>2];c[m>>2]=1;c[f>>2]=ag(c[p>>2]|0)|0;o=c[c[(c[p>>2]|0)+20>>2]>>2]|0;c[g>>2]=c[o>>2];c[h>>2]=c[o+4>>2];c[j>>2]=c[o+8>>2];c[k>>2]=c[o+12>>2];c[l>>2]=c[o+16>>2];c[Aa>>2]=c[Aa>>2]|128;o=1;i=Da;return o|0}return 0}function dd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+48|0;r=t+28|0;s=t+32|0;o=b+8|0;if(!(c[o>>2]&128)){g=0;i=t;return g|0}q=b+200|0;if((c[q>>2]|0)!=(d|0)){g=0;i=t;return g|0}j=c[b+164>>2]|0;n=j+(d*5640|0)|0;p=j+(d*5640|0)+5592|0;k=c[p>>2]|0;if(!k){sd(n);g=0;i=t;return g|0}l=b+204|0;m=j+(d*5640|0)+5596|0;if(!(cg(c[l>>2]|0,k,c[m>>2]|0,d,c[b+196>>2]|0,h)|0)){sd(n);c[o>>2]=c[o>>2]|32768;Ub(h,1,8912,t)|0;g=0;i=t;return g|0}if(!(dg(c[l>>2]|0,e,f)|0)){g=0;i=t;return g|0}j=c[p>>2]|0;if(j){Uc(j);c[p>>2]=0;c[m>>2]=0}p=b+76|0;a[p>>0]=a[p>>0]&-2;c[o>>2]=c[o>>2]&-129;p=Qb(g)|0;b=c[o>>2]|0;if((b|0)==256|(p|0)==0&(C|0)==0&(b|0)==64){g=1;i=t;return g|0}if((Mb(g,s,2,h)|0)!=2){Ub(h,2,8931,t+8|0)|0;g=1;i=t;return g|0}qb(s,r,2);switch(c[r>>2]|0){case 65497:{c[q>>2]=0;c[o>>2]=256;g=1;i=t;return g|0}case 65424:{g=1;i=t;return g|0}default:if((Qb(g)|0)==0&(C|0)==0){c[o>>2]=64;Ub(h,2,8975,t+16|0)|0;g=1;i=t;return g|0}else{Ub(h,1,9005,t+24|0)|0;g=0;i=t;return g|0}}return 0}function ed(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,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=i;i=i+112|0;y=z+96|0;x=z+88|0;w=z+80|0;v=z+72|0;u=z+64|0;s=z+56|0;r=z+48|0;o=z+40|0;n=z+32|0;m=z+24|0;l=z+16|0;p=c[b+80>>2]|0;if((c[b+8>>2]|0)!=8){Ub(j,1,9037,z)|0;j=0;i=z;return j|0}if(!(f|e|g|h)){Ub(j,4,9116,z+8|0)|0;c[b+28>>2]=0;c[b+32>>2]=0;c[b+36>>2]=c[b+112>>2];c[b+40>>2]=c[b+116>>2];j=1;i=z;return j|0}t=p+8|0;k=c[t>>2]|0;if(k>>>0>>0){c[l>>2]=e;c[l+4>>2]=k;Ub(j,1,9185,l)|0;j=0;i=z;return j|0}k=c[p>>2]|0;if(k>>>0>e>>>0){c[m>>2]=e;c[m+4>>2]=k;Ub(j,2,9272,m)|0;k=0;e=c[p>>2]|0}else k=((e-(c[b+92>>2]|0)|0)>>>0)/((c[b+100>>2]|0)>>>0)|0;c[b+28>>2]=k;c[d>>2]=e;q=p+12|0;e=c[q>>2]|0;if(e>>>0>>0){c[n>>2]=f;c[n+4>>2]=e;Ub(j,1,9360,n)|0;j=0;i=z;return j|0}l=p+4|0;e=c[l>>2]|0;if(e>>>0>f>>>0){c[o>>2]=f;c[o+4>>2]=e;Ub(j,2,9445,o)|0;e=0;f=c[l>>2]|0}else e=((f-(c[b+96>>2]|0)|0)>>>0)/((c[b+104>>2]|0)>>>0)|0;c[b+32>>2]=e;m=d+4|0;c[m>>2]=f;e=c[p>>2]|0;if(e>>>0>g>>>0){c[r>>2]=g;c[r+4>>2]=e;Ub(j,1,9531,r)|0;j=0;i=z;return j|0}e=c[t>>2]|0;if(e>>>0>>0){c[s>>2]=g;c[s+4>>2]=e;Ub(j,2,9620,s)|0;e=c[b+112>>2]|0;g=c[t>>2]|0}else{e=c[b+100>>2]|0;e=(g+-1-(c[b+92>>2]|0)+e|0)/(e|0)|0}c[b+36>>2]=e;k=d+8|0;c[k>>2]=g;g=c[l>>2]|0;if(g>>>0>h>>>0){c[u>>2]=h;c[u+4>>2]=g;Ub(j,1,9708,u)|0;j=0;i=z;return j|0}g=c[q>>2]|0;if(g>>>0>>0){c[v>>2]=h;c[v+4>>2]=g;Ub(j,2,9798,v)|0;e=c[q>>2]|0;g=c[b+116>>2]|0}else{g=c[b+104>>2]|0;e=h;g=(h+-1-(c[b+96>>2]|0)+g|0)/(g|0)|0}c[b+40>>2]=g;h=d+12|0;c[h>>2]=e;v=b+76|0;a[v>>0]=a[v>>0]|2;v=c[d+16>>2]|0;b=c[d>>2]|0;a:do if(v){f=c[m>>2]|0;t=f+-1|0;u=c[k>>2]|0;q=u+-1|0;r=b+-1|0;g=0;p=c[d+24>>2]|0;while(1){d=c[p>>2]|0;e=(r+d|0)/(d|0)|0;c[p+16>>2]=e;o=c[p+4>>2]|0;k=(t+o|0)/(o|0)|0;c[p+20>>2]=k;d=(q+d|0)/(d|0)|0;l=c[p+40>>2]|0;m=Ri(1,0,l|0)|0;n=C;d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;d=Si(d|0,C|0,m|0,n|0)|0;d=Pi(d|0,C|0,l|0)|0;e=Si(e|0,((e|0)<0)<<31>>31|0,-1,-1)|0;e=Si(e|0,C|0,m|0,n|0)|0;e=Pi(e|0,C|0,l|0)|0;e=d-e|0;if((e|0)<0){k=29;break}s=c[h>>2]|0;d=(o+-1+s|0)/(o|0)|0;c[p+8>>2]=e;d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;d=Si(d|0,C|0,m|0,n|0)|0;d=Pi(d|0,C|0,l|0)|0;e=Si(k|0,((k|0)<0)<<31>>31|0,-1,-1)|0;e=Si(e|0,C|0,m|0,n|0)|0;e=Pi(e|0,C|0,l|0)|0;e=d-e|0;if((e|0)<0){k=31;break}c[p+12>>2]=e;g=g+1|0;if(g>>>0>=v>>>0){e=u;g=s;break a}else p=p+52|0}if((k|0)==29){c[w>>2]=g;c[w+4>>2]=e;Ub(j,1,9887,w)|0;j=0;i=z;return j|0}else if((k|0)==31){c[x>>2]=g;c[x+4>>2]=e;Ub(j,1,9956,x)|0;j=0;i=z;return j|0}}else{f=c[m>>2]|0;e=c[k>>2]|0;g=c[h>>2]|0}while(0);c[y>>2]=b;c[y+4>>2]=f;c[y+8>>2]=e;c[y+12>>2]=g;Ub(j,4,10025,y)|0;j=1;i=z;return j|0}function fd(){var b=0,d=0,e=0;b=Qc(1,208)|0;if(!b){d=0;return d|0}c[b>>2]=1;d=b+184|0;a[d>>0]=a[d>>0]|2;d=Qc(1,5640)|0;c[b+12>>2]=d;if(!d){Yc(b);d=0;return d|0}d=Qc(1,1e3)|0;c[b+16>>2]=d;if(!d){Yc(b);d=0;return d|0}c[b+20>>2]=1e3;c[b+60>>2]=-1;d=b+64|0;c[d>>2]=0;c[d+4>>2]=0;d=Qc(1,48)|0;do if(d){c[d+32>>2]=100;c[d+24>>2]=0;e=Qc(100,24)|0;c[d+28>>2]=e;if(!e){Uc(d);break}c[d+40>>2]=0;c[b+196>>2]=d;e=qg()|0;c[b+192>>2]=e;if(!e){Yc(b);e=0;return e|0}e=qg()|0;c[b+188>>2]=e;if(e){e=b;return e|0}Yc(b);e=0;return e|0}while(0);c[b+196>>2]=0;Yc(b);e=0;return e|0}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+128|0;s=t+104|0;r=t+72|0;q=t+64|0;n=t+40|0;l=t+24|0;j=t+16|0;h=t+8|0;g=t;if(b&384){ki(10063,11,1,d)|0;i=t;return}if((b&1|0)!=0?(f=c[a+80>>2]|0,(f|0)!=0):0)hd(f,0,d);if(b&2){ki(10075,36,1,d)|0;f=c[a+96>>2]|0;c[g>>2]=c[a+92>>2];c[g+4>>2]=f;$h(d,10112,g)|0;g=c[a+104>>2]|0;c[h>>2]=c[a+100>>2];c[h+4>>2]=g;$h(d,10130,h)|0;h=c[a+116>>2]|0;c[j>>2]=c[a+112>>2];c[j+4>>2]=h;$h(d,10148,j)|0;xd(c[a+12>>2]|0,c[(c[a+80>>2]|0)+16>>2]|0,d);ki(10164,2,1,d)|0}if((b&8|0)!=0?(k=_(c[a+112>>2]|0,c[a+116>>2]|0)|0,(k|0)!=0):0){f=a+80|0;g=0;h=c[a+164>>2]|0;while(1){xd(h,c[(c[f>>2]|0)+16>>2]|0,d);g=g+1|0;if((g|0)==(k|0))break;else h=h+5640|0}}if(!(b&16)){i=t;return}j=c[a+196>>2]|0;ki(10167,37,1,d)|0;k=j;b=c[k+4>>2]|0;f=j+8|0;a=c[f>>2]|0;f=c[f+4>>2]|0;h=l;c[h>>2]=c[k>>2];c[h+4>>2]=b;h=l+8|0;c[h>>2]=a;c[h+4>>2]=f;$h(d,10205,l)|0;ki(10272,17,1,d)|0;h=j+28|0;f=c[h>>2]|0;a:do if((f|0)!=0?(m=j+24|0,(c[m>>2]|0)!=0):0){g=0;while(1){b=f+(g*24|0)+8|0;k=c[b>>2]|0;b=c[b+4>>2]|0;l=c[f+(g*24|0)+16>>2]|0;c[n>>2]=e[f+(g*24|0)>>1];a=n+8|0;c[a>>2]=k;c[a+4>>2]=b;c[n+16>>2]=l;$h(d,10290,n)|0;g=g+1|0;if(g>>>0>=(c[m>>2]|0)>>>0)break a;f=c[h>>2]|0}}while(0);ki(10321,4,1,d)|0;b=j+40|0;h=c[b>>2]|0;if((h|0)!=0?(p=j+36|0,o=c[p>>2]|0,(o|0)!=0):0){g=0;f=0;do{f=(c[h+(g*40|0)+4>>2]|0)+f|0;g=g+1|0}while((g|0)!=(o|0));if(f){ki(10326,16,1,d)|0;if(c[p>>2]|0){f=c[b>>2]|0;k=0;do{j=c[f+(k*40|0)+4>>2]|0;c[q>>2]=k;c[q+4>>2]=j;$h(d,10343,q)|0;f=c[b>>2]|0;g=c[f+(k*40|0)+16>>2]|0;b:do if(!((j|0)==0|(g|0)==0)){f=0;while(1){a=g+(f*24|0)|0;u=c[a>>2]|0;a=c[a+4>>2]|0;m=g+(f*24|0)+8|0;l=c[m>>2]|0;m=c[m+4>>2]|0;o=g+(f*24|0)+16|0;n=c[o>>2]|0;o=c[o+4>>2]|0;c[r>>2]=f;h=r+8|0;c[h>>2]=u;c[h+4>>2]=a;h=r+16|0;c[h>>2]=l;c[h+4>>2]=m;h=r+24|0;c[h>>2]=n;c[h+4>>2]=o;$h(d,10379,r)|0;h=f+1|0;f=c[b>>2]|0;if((h|0)==(j|0))break b;g=c[f+(k*40|0)+16>>2]|0;f=h}}while(0);g=c[f+(k*40|0)+24>>2]|0;c:do if((g|0)!=0?(c[f+(k*40|0)+20>>2]|0)!=0:0){f=0;while(1){o=g+(f*24|0)+8|0;n=c[o>>2]|0;o=c[o+4>>2]|0;h=c[g+(f*24|0)+16>>2]|0;c[s>>2]=e[g+(f*24|0)>>1];u=s+8|0;c[u>>2]=n;c[u+4>>2]=o;c[s+16>>2]=h;$h(d,10290,s)|0;h=f+1|0;f=c[b>>2]|0;if(h>>>0>=(c[f+(k*40|0)+20>>2]|0)>>>0)break c;g=c[f+(k*40|0)+24>>2]|0;f=h}}while(0);k=k+1|0}while(k>>>0<(c[p>>2]|0)>>>0)}ki(10321,4,1,d)|0}}ki(10164,2,1,d)|0;i=t;return}function hd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+64|0;m=n+48|0;l=n+40|0;j=n+32|0;h=n+16|0;g=n;k=n+52|0;if(!d){ki(10482,13,1,e)|0;a[k+1>>0]=0;f=9}else{ki(10445,36,1,c[676]|0)|0;f=0}a[k>>0]=f;o=c[b>>2]|0;f=c[b+4>>2]|0;c[g>>2]=k;c[g+4>>2]=o;c[g+8>>2]=f;$h(e,10496,g)|0;g=c[b+8>>2]|0;f=c[b+12>>2]|0;c[h>>2]=k;c[h+4>>2]=g;c[h+8>>2]=f;$h(e,10513,h)|0;h=b+16|0;f=c[h>>2]|0;c[j>>2]=k;c[j+4>>2]=f;$h(e,10530,j)|0;f=b+24|0;if(!(c[f>>2]|0)){ki(10164,2,1,e)|0;i=n;return}if(!(c[h>>2]|0)){ki(10164,2,1,e)|0;i=n;return}else g=0;do{c[l>>2]=k;c[l+4>>2]=g;$h(e,10546,l)|0;id((c[f>>2]|0)+(g*52|0)|0,d,e);c[m>>2]=k;$h(e,10566,m)|0;g=g+1|0}while(g>>>0<(c[h>>2]|0)>>>0);ki(10164,2,1,e)|0;i=n;return}function id(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+48|0;k=l+24|0;j=l+16|0;h=l;g=l+32|0;f=(d|0)!=0;if(f){ki(10571,41,1,c[676]|0)|0;d=0}else{a[g+1>>0]=9;a[g+2>>0]=0;d=9}a[g>>0]=d;m=c[b>>2]|0;d=c[b+4>>2]|0;c[h>>2]=g;c[h+4>>2]=m;c[h+8>>2]=d;$h(e,10613,h)|0;h=c[b+24>>2]|0;c[j>>2]=g;c[j+4>>2]=h;$h(e,10630,j)|0;j=c[b+32>>2]|0;c[k>>2]=g;c[k+4>>2]=j;$h(e,10642,k)|0;if(!f){i=l;return}ki(10164,2,1,e)|0;i=l;return}function jd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;e=m;b=a+80|0;k=c[(c[b>>2]|0)+16>>2]|0;d=Qc(1,56)|0;c[e>>2]=d;if(!d){l=0;i=m;return l|0}c[d+24>>2]=c[(c[b>>2]|0)+16>>2];c[d>>2]=c[a+92>>2];c[d+4>>2]=c[a+96>>2];c[d+8>>2]=c[a+100>>2];c[d+12>>2]=c[a+104>>2];c[d+16>>2]=c[a+112>>2];c[d+20>>2]=c[a+116>>2];c[d+52>>2]=0;d=c[a+12>>2]|0;b=c[e>>2]|0;c[b+32>>2]=c[d>>2];c[b+36>>2]=c[d+4>>2];c[b+40>>2]=c[d+8>>2];c[b+44>>2]=c[d+16>>2];c[b+48>>2]=Qc(c[b+24>>2]|0,1080)|0;b=c[e>>2]|0;j=b+48|0;a=c[j>>2]|0;if(!a){Cc(e);l=0;i=m;return l|0}if(!k){l=b;i=m;return l|0}h=d+5584|0;d=0;while(1){g=c[h>>2]|0;c[a+(d*1080|0)+4>>2]=c[g+(d*1080|0)>>2];e=g+(d*1080|0)+4|0;f=c[e>>2]|0;c[a+(d*1080|0)+8>>2]=f;c[a+(d*1080|0)+12>>2]=c[g+(d*1080|0)+8>>2];c[a+(d*1080|0)+16>>2]=c[g+(d*1080|0)+12>>2];c[a+(d*1080|0)+20>>2]=c[g+(d*1080|0)+16>>2];c[a+(d*1080|0)+24>>2]=c[g+(d*1080|0)+20>>2];if(f>>>0<33){Ui(a+(d*1080|0)+948|0,g+(d*1080|0)+944|0,f|0)|0;Ui(a+(d*1080|0)+816|0,g+(d*1080|0)+812|0,c[e>>2]|0)|0}f=c[g+(d*1080|0)+24>>2]|0;c[a+(d*1080|0)+28>>2]=f;c[a+(d*1080|0)+808>>2]=c[g+(d*1080|0)+804>>2];if((f|0)!=1){f=(c[e>>2]|0)*3|0;e=f+-2|0;if((e|0)<97&(f|0)>2)l=10}else{e=1;l=10}if((l|0)==10){l=0;f=0;do{c[a+(d*1080|0)+32+(f<<2)>>2]=c[g+(d*1080|0)+28+(f<<3)+4>>2];c[a+(d*1080|0)+420+(f<<2)>>2]=c[g+(d*1080|0)+28+(f<<3)>>2];f=f+1|0}while((f|0)!=(e|0))}c[a+(d*1080|0)+812>>2]=c[g+(d*1080|0)+808>>2];d=d+1|0;if((d|0)==(k|0))break;a=c[j>>2]|0}i=m;return b|0}function kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=Qc(1,48)|0;if(!b){k=0;return k|0}h=a+196|0;d=c[h>>2]|0;i=d;k=c[i+4>>2]|0;a=b;c[a>>2]=c[i>>2];c[a+4>>2]=k;a=d+8|0;k=c[a+4>>2]|0;i=b+8|0;c[i>>2]=c[a>>2];c[i+4>>2]=k;i=d+16|0;k=c[i+4>>2]|0;a=b+16|0;c[a>>2]=c[i>>2];c[a+4>>2]=k;d=c[d+24>>2]|0;a=b+24|0;c[a>>2]=d;d=Pc(d*24|0)|0;k=b+28|0;c[k>>2]=d;if(!d){Uc(b);k=0;return k|0}e=c[(c[h>>2]|0)+28>>2]|0;if(!e){Uc(d);c[k>>2]=0}else Ui(d|0,e|0,(c[a>>2]|0)*24|0)|0;a=c[(c[h>>2]|0)+36>>2]|0;g=b+36|0;c[g>>2]=a;a=Qc(a,40)|0;i=b+40|0;c[i>>2]=a;if(!a){Uc(c[k>>2]|0);Uc(b);k=0;return k|0}d=c[(c[h>>2]|0)+40>>2]|0;if(!d){Uc(a);c[i>>2]=0;k=b;return k|0}if(!(c[g>>2]|0)){k=b;return k|0}d=c[d+20>>2]|0;c[a+20>>2]=d;d=Pc(d*24|0)|0;a=c[i>>2]|0;c[a+24>>2]=d;a:do if(!d)d=0;else{f=d;d=0;while(1){e=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+24>>2]|0;if(!e){Uc(f);a=c[i>>2]|0;c[a+(d*40|0)+24>>2]=0}else{Ui(f|0,e|0,(c[a+(d*40|0)+20>>2]|0)*24|0)|0;a=c[i>>2]|0}e=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+4>>2]|0;c[a+(d*40|0)+4>>2]=e;e=Pc(e*24|0)|0;a=c[i>>2]|0;c[a+(d*40|0)+16>>2]=e;if(!e)break;f=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+16>>2]|0;if(!f){Uc(e);a=c[i>>2]|0;c[a+(d*40|0)+16>>2]=0}else{Ui(e|0,f|0,(c[a+(d*40|0)+4>>2]|0)*24|0)|0;a=c[i>>2]|0}c[a+(d*40|0)+32>>2]=0;c[a+(d*40|0)+36>>2]=0;d=d+1|0;if(d>>>0>=(c[g>>2]|0)>>>0){j=32;break}f=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+20>>2]|0;c[a+(d*40|0)+20>>2]=f;f=Pc(f*24|0)|0;a=c[i>>2]|0;c[a+(d*40|0)+24>>2]=f;if(!f)break a}if((j|0)==32)return b|0;if(d){Uc(c[a+24>>2]|0);Uc(c[(c[i>>2]|0)+16>>2]|0);if((d|0)!=1){a=1;do{Uc(c[(c[i>>2]|0)+(a*40|0)+24>>2]|0);Uc(c[(c[i>>2]|0)+(a*40|0)+16>>2]|0);a=a+1|0}while((a|0)!=(d|0))}a=c[i>>2]|0}Uc(a);Uc(c[k>>2]|0);Uc(b);k=0;return k|0}while(0);if(d){Uc(c[a+24>>2]|0);if((d|0)!=1){a=1;do{Uc(c[(c[i>>2]|0)+(a*40|0)+24>>2]|0);a=a+1|0}while((a|0)!=(d|0))}a=c[i>>2]|0}Uc(a);Uc(c[k>>2]|0);Uc(b);k=0;return k|0}function ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if(!d){d=0;return d|0}f=Xb()|0;k=a+84|0;c[k>>2]=f;if(!f){d=0;return d|0}$b(d,f);h=a+188|0;sg(c[h>>2]|0,27,e)|0;h=c[h>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){d=a+80|0;Zb(c[d>>2]|0);c[d>>2]=0;d=0;return d|0}}else vg(h);i=c[d+16>>2]|0;if(!i){d=1;return d|0}h=c[(c[k>>2]|0)+24>>2]|0;f=c[d+24>>2]|0;g=0;do{c[f+(g*52|0)+36>>2]=c[h+(g*52|0)+36>>2];d=h+(g*52|0)+44|0;c[f+(g*52|0)+44>>2]=c[d>>2];c[d>>2]=0;g=g+1|0}while(g>>>0>>0);f=1;return f|0}function md(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;t=i;i=i+16|0;j=t+8|0;if(!d){Ub(e,1,10654,t)|0;s=0;i=t;return s|0}g=c[a+112>>2]|0;h=_(c[a+116>>2]|0,g)|0;if(h>>>0<=f>>>0){c[j>>2]=f;c[j+4>>2]=h+-1;Ub(e,1,10692,j)|0;s=0;i=t;return s|0}s=(f>>>0)%(g>>>0)|0;r=(f>>>0)/(g>>>0)|0;j=c[a+100>>2]|0;h=_(j,s)|0;k=c[a+92>>2]|0;h=h+k|0;c[d>>2]=h;q=a+80|0;g=c[q>>2]|0;l=c[g>>2]|0;h=h>>>0>>0?l:h;c[d>>2]=h;k=(_(j,s+1|0)|0)+k|0;s=d+8|0;c[s>>2]=k;j=c[g+8>>2]|0;k=k>>>0>j>>>0?j:k;c[s>>2]=k;s=c[a+104>>2]|0;j=_(s,r)|0;l=c[a+96>>2]|0;j=j+l|0;p=d+4|0;c[p>>2]=j;o=c[g+4>>2]|0;j=j>>>0>>0?o:j;c[p>>2]=j;l=(_(s,r+1|0)|0)+l|0;r=d+12|0;c[r>>2]=l;s=c[g+12>>2]|0;l=l>>>0>s>>>0?s:l;c[r>>2]=l;r=d+24|0;s=d+16|0;p=c[s>>2]|0;if(p){o=c[g+24>>2]|0;n=h+-1|0;m=j+-1|0;k=k+-1|0;g=l+-1|0;h=0;j=c[r>>2]|0;while(1){l=c[o+(h*52|0)+40>>2]|0;c[j+40>>2]=l;z=c[j>>2]|0;y=(n+z|0)/(z|0)|0;c[j+16>>2]=y;u=c[j+4>>2]|0;x=(m+u|0)/(u|0)|0;c[j+20>>2]=x;z=(k+z|0)/(z|0)|0;u=(g+u|0)/(u|0)|0;w=Ri(1,0,l|0)|0;v=C;z=Si(z|0,((z|0)<0)<<31>>31|0,-1,-1)|0;z=Si(z|0,C|0,w|0,v|0)|0;z=Pi(z|0,C|0,l|0)|0;y=Si(y|0,((y|0)<0)<<31>>31|0,-1,-1)|0;y=Si(y|0,C|0,w|0,v|0)|0;y=Pi(y|0,C|0,l|0)|0;c[j+8>>2]=z-y;u=Si(u|0,((u|0)<0)<<31>>31|0,-1,-1)|0;u=Si(u|0,C|0,w|0,v|0)|0;u=Pi(u|0,C|0,l|0)|0;x=Si(x|0,((x|0)<0)<<31>>31|0,-1,-1)|0;v=Si(x|0,C|0,w|0,v|0)|0;l=Pi(v|0,C|0,l|0)|0;c[j+12>>2]=u-l;h=h+1|0;if(h>>>0>=p>>>0)break;else j=j+52|0}}m=a+84|0;g=c[m>>2]|0;if(g)Zb(g);g=Xb()|0;c[m>>2]=g;if(!g){z=0;i=t;return z|0}$b(d,g);c[a+60>>2]=f;j=a+188|0;sg(c[j>>2]|0,28,e)|0;j=c[j>>2]|0;k=tg(j)|0;g=ug(j)|0;if(k){l=0;h=1;while(1){if(!h)h=0;else h=(Ra[c[g>>2]&63](a,b,e)|0)!=0;l=l+1|0;if((l|0)==(k|0))break;else{g=g+4|0;h=h&1}}vg(j);if(!h){Zb(c[q>>2]|0);c[q>>2]=0;z=0;i=t;return z|0}}else vg(j);g=c[s>>2]|0;if(!g){z=1;i=t;return z|0}k=c[(c[m>>2]|0)+24>>2]|0;j=c[r>>2]|0;l=0;while(1){c[j+(l*52|0)+36>>2]=c[k+(l*52|0)+36>>2];h=c[j+(l*52|0)+44>>2]|0;if(!h)h=k;else{Uc(h);h=c[(c[m>>2]|0)+24>>2]|0;j=c[r>>2]|0;g=c[s>>2]|0}z=h+(l*52|0)+44|0;c[j+(l*52|0)+44>>2]=c[z>>2];c[z>>2]=0;l=l+1|0;if(l>>>0>=g>>>0){g=1;break}else k=h}i=t;return g|0}function nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;c[a+168>>2]=b;e=c[a+80>>2]|0;a:do if((((e|0)!=0?(h=c[e+24>>2]|0,(h|0)!=0):0)?(f=c[a+12>>2]|0,(f|0)!=0):0)?(g=c[f+5584>>2]|0,(g|0)!=0):0){e=c[e+16>>2]|0;if(!e)e=1;else{f=0;while(1){if((c[g+(f*1080|0)+4>>2]|0)>>>0<=b>>>0)break;c[h+(f*52|0)+40>>2]=b;f=f+1|0;if(f>>>0>=e>>>0){e=1;break a}}Ub(d,1,10753,j)|0;e=0}}else e=0;while(0);i=k;return e|0}function od(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,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;Q=i;i=i+48|0;O=Q+32|0;N=Q+24|0;M=Q+16|0;K=Q+8|0;L=Q;A=d+204|0;g=c[A>>2]|0;F=d+116|0;G=d+112|0;H=_(c[G>>2]|0,c[F>>2]|0)|0;I=(H|0)==1;if(!H){P=1;i=Q;return P|0}J=d+200|0;B=d+12|0;C=d+164|0;D=d+8|0;E=g+20|0;y=g+24|0;z=0;g=0;l=0;a:while(1){if((c[J>>2]|0)!=(z|0)){P=5;break}w=z;z=z+1|0;x=_(c[F>>2]|0,c[G>>2]|0)|0;c[K>>2]=z;c[K+4>>2]=x;Ub(f,4,10866,K)|0;c[B>>2]=0;x=c[A>>2]|0;c[x+12>>2]=c[(c[C>>2]|0)+(w*5640|0)+5588>>2];c[D>>2]=0;if(!(_f(x,c[J>>2]|0,f)|0))break;h=c[A>>2]|0;if(c[(c[h+24>>2]|0)+16>>2]|0){k=0;do{j=c[(c[c[E>>2]>>2]|0)+20>>2]|0;if(I){c[j+(k*52|0)+32>>2]=c[(c[(c[y>>2]|0)+24>>2]|0)+(k*52|0)+44>>2];c[j+(k*52|0)+36>>2]=0}else{if(!(Zf(j+(k*52|0)|0)|0)){P=14;break a}h=c[A>>2]|0}k=k+1|0}while(k>>>0<(c[(c[h+24>>2]|0)+16>>2]|0)>>>0)}x=eg(h)|0;if(!I){if(x>>>0>l>>>0){h=Tc(g,x)|0;if(!h){P=20;break}else{g=h;h=x}}else h=l;j=c[A>>2]|0;w=j+24|0;k=c[w>>2]|0;if(c[k+16>>2]|0){v=j+20|0;j=g;u=0;do{r=c[(c[c[v>>2]>>2]|0)+20>>2]|0;m=c[k+24>>2]|0;q=c[m+(u*52|0)+24>>2]|0;q=((q&7|0)!=0&1)+(q>>>3)|0;n=c[r+(u*52|0)+8>>2]|0;o=c[r+(u*52|0)>>2]|0;t=n-o|0;p=c[r+(u*52|0)+12>>2]|0;r=c[r+(u*52|0)+4>>2]|0;T=c[k>>2]|0;S=c[m+(u*52|0)>>2]|0;l=c[m+(u*52|0)+4>>2]|0;R=(S+~T+(c[k+8>>2]|0)|0)/(S|0)|0;s=R-t|0;k=o-((T+-1+S|0)/(S|0)|0)+(_(R,r-(((c[k+4>>2]|0)+-1+l|0)/(l|0)|0)|0)|0)|0;k=(c[m+(u*52|0)+44>>2]|0)+(k<<2)|0;b:do switch(((q|0)==3?4:q)|0){case 1:{l=(p|0)==(r|0);if(!(c[m+(u*52|0)+32>>2]|0)){if(l)break b;q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){a[m>>0]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+1|0;n=n+4|0}}j=j+t|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}else{if(l)break b;q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){a[m>>0]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+1|0;n=n+4|0}}j=j+t|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}case 2:{l=(p|0)==(r|0);if(!(c[m+(u*52|0)+32>>2]|0)){if(!l){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){b[m>>1]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+2|0;n=n+4|0}}j=j+(t<<1)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}}else if(!l){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){b[m>>1]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+2|0;n=n+4|0}}j=j+(t<<1)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}case 4:{if((p|0)!=(r|0)){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){c[m>>2]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+4|0;n=n+4|0}}j=j+(t<<2)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}default:{}}while(0);u=u+1|0;k=c[w>>2]|0}while(u>>>0<(c[k+16>>2]|0)>>>0);j=c[A>>2]|0}if(!(fg(j,g,x)|0)){P=63;break}}else h=l;if(!(Ad(d,e,f)|0)){P=65;break}if(z>>>0>=H>>>0){P=67;break}else l=h}if((P|0)==5)Ub(f,1,10829,L)|0;else if((P|0)==14){Ub(f,1,10887,M)|0;if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}else if((P|0)==20){if(g)Uc(g);Ub(f,1,10925,N)|0;T=0;i=Q;return T|0}else if((P|0)==63){Ub(f,1,10964,O)|0;Uc(g);T=0;i=Q;return T|0}else if((P|0)==65){if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}else if((P|0)==67){if(!g){T=1;i=Q;return T|0}Uc(g);T=1;i=Q;return T|0}if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}function pd(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=a+188|0;if(!(sg(c[f>>2]|0,29,e)|0)){d=0;return d|0}if(((b[a+88>>1]|0)+-3&65535)<4?(sg(c[f>>2]|0,30,e)|0)==0:0){d=0;return d|0}if(!(sg(c[f>>2]|0,31,e)|0)){d=0;return d|0}if(!(sg(c[f>>2]|0,32,e)|0)){d=0;return d|0}if(!(sg(c[f>>2]|0,33,e)|0)){d=0;return d|0}j=c[f>>2]|0;h=tg(j)|0;f=ug(j)|0;if(!h)f=1;else{i=0;g=f;f=1;while(1){if(!f)f=0;else f=(Ra[c[g>>2]&63](a,d,e)|0)!=0;f=f&1;i=i+1|0;if((i|0)==(h|0))break;else g=g+4|0}}vg(j);d=f;return d|0}function qd(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;g=Xb()|0;k=a+80|0;c[k>>2]=g;if(!g){Ub(f,1,11011,m)|0;d=0;i=m;return d|0}$b(e,g);j=c[e+24>>2]|0;if((j|0)!=0?(l=c[e+16>>2]|0,(l|0)!=0):0){h=0;do{e=j+(h*52|0)+44|0;g=c[e>>2]|0;if(g){c[(c[(c[k>>2]|0)+24>>2]|0)+(h*52|0)+44>>2]=g;c[e>>2]=0}h=h+1|0}while(h>>>0>>0)}g=a+192|0;if(!(sg(c[g>>2]|0,34,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,35,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,36,f)|0)){d=0;i=m;return d|0}h=c[g>>2]|0;j=tg(h)|0;g=ug(h)|0;if(j){k=0;e=1;while(1){if(!e)e=0;else e=(Ra[c[g>>2]&63](a,d,f)|0)!=0;k=k+1|0;if((k|0)==(j|0))break;else{g=g+4|0;e=e&1}}vg(h);if(!e){d=0;i=m;return d|0}}else vg(h);g=a+188|0;if(!(sg(c[g>>2]|0,37,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,38,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,39,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,40,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,41,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,42,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,43,f)|0)){d=0;i=m;return d|0}e=a+88|0;if(((b[e>>1]|0)+-3&65535)<4){if(!(sg(c[g>>2]|0,44,f)|0)){d=0;i=m;return d|0}if((b[e>>1]|0)==4?(sg(c[g>>2]|0,45,f)|0)==0:0){d=0;i=m;return d|0}}if(!(sg(c[g>>2]|0,46,f)|0)){d=0;i=m;return d|0}if((c[a+108>>2]|0)!=0?(sg(c[g>>2]|0,47,f)|0)==0:0){d=0;i=m;return d|0}if((b[e>>1]&256)!=0?(sg(c[g>>2]|0,48,f)|0)==0:0){d=0;i=m;return d|0}if((c[a+196>>2]|0)!=0?(sg(c[g>>2]|0,49,f)|0)==0:0){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,50,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,51,f)|0)){d=0;i=m;return d|0}k=c[g>>2]|0;h=tg(k)|0;g=ug(k)|0;if(!h)g=1;else{j=0;e=g;g=1;while(1){if(!g)g=0;else g=(Ra[c[e>>2]&63](a,d,f)|0)!=0;g=g&1;j=j+1|0;if((j|0)==(h|0))break;else e=e+4|0}}vg(k);d=g;i=m;return d|0}function rd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;o=q+40|0;p=q+32|0;n=q+24|0;l=q+16|0;j=q+8|0;h=q;k=a+200|0;if((c[k>>2]|0)==(b|0)){m=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[j>>2]=b+1;c[j+4>>2]=m;Ub(g,4,10866,j)|0;c[a+12>>2]=0;m=a+204|0;j=c[m>>2]|0;c[j+12>>2]=c[(c[a+164>>2]|0)+(b*5640|0)+5588>>2];c[a+8>>2]=0;if(_f(j,c[k>>2]|0,g)|0){h=c[m>>2]|0;a:do if(c[(c[h+24>>2]|0)+16>>2]|0){j=0;while(1){if(!(Zf((c[(c[c[h+20>>2]>>2]|0)+20>>2]|0)+(j*52|0)|0)|0))break;j=j+1|0;h=c[m>>2]|0;if(j>>>0>=(c[(c[h+24>>2]|0)+16>>2]|0)>>>0)break a}Ub(g,1,10887,n)|0;p=0;i=q;return p|0}while(0);if(!(fg(h,d,e)|0)){Ub(g,1,10964,p)|0;p=0;i=q;return p|0}if(Ad(a,f,g)|0){p=1;i=q;return p|0}c[o>>2]=b;Ub(g,1,11101,o)|0;p=0;i=q;return p|0}}else Ub(g,1,10829,h)|0;c[l>>2]=b;Ub(g,1,11044,l)|0;p=0;i=q;return p|0}function sd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;if(!a)return;f=a+5164|0;b=c[f>>2]|0;if(b){g=a+5160|0;d=c[g>>2]|0;if(d){e=0;while(1){b=c[b+(e<<3)>>2]|0;if(b){Uc(b);d=c[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;b=c[f>>2]|0}b=c[f>>2]|0}c[g>>2]=0;Uc(b);c[f>>2]=0}b=a+5172|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5584|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5608|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5604|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5624|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0;c[a+5632>>2]=0;c[a+5628>>2]=0}i=a+5612|0;b=c[i>>2]|0;if(b){h=a+5616|0;d=c[h>>2]|0;if(d){g=0;while(1){e=b+12|0;f=c[e>>2]|0;if(f){Uc(f);c[e>>2]=0;d=c[h>>2]|0}g=g+1|0;if(g>>>0>=d>>>0)break;else b=b+20|0}b=c[i>>2]|0}Uc(b);c[i>>2]=0}b=a+5600|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5592|0;d=c[b>>2]|0;if(!d)return;Uc(d);c[b>>2]=0;c[a+5596>>2]=0;return}function td(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ud(a,b,d){a=a|0;b=b|0;d=d|0;return (c[a+8>>2]|0)==0&(c[a+188>>2]|0)!=0&(c[a+192>>2]|0)!=0&1|0}function vd(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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;Y=i;i=i+224|0;X=Y+200|0;U=Y+192|0;T=Y+184|0;Q=Y+176|0;P=Y+168|0;O=Y+160|0;M=Y+152|0;L=Y+144|0;K=Y+136|0;E=Y+128|0;J=Y+120|0;D=Y+112|0;B=Y+104|0;A=Y+96|0;z=Y+88|0;y=Y+80|0;I=Y+72|0;H=Y+64|0;x=Y+56|0;w=Y+48|0;v=Y+40|0;F=Y+32|0;p=Y+24|0;m=Y+16|0;l=Y+8|0;N=Y;S=Y+216|0;g=Y+204|0;G=Y+212|0;u=Y+208|0;W=d+8|0;c[W>>2]=1;a:do if((Mb(e,S,2,f)|0)==2?(qb(S,g,2),(c[g>>2]|0)==65359):0){c[W>>2]=2;o=Pb(e)|0;o=Si(o|0,C|0,-2,-1)|0;n=C;V=d+196|0;h=c[V>>2]|0;c[h>>2]=o;c[h+4>>2]=n;h=N;c[h>>2]=o;c[h+4>>2]=n;Ub(f,4,15766,N)|0;h=c[V>>2]|0;n=c[h>>2]|0;o=h+24|0;g=c[o>>2]|0;k=h+32|0;j=c[k>>2]|0;do if((g+1|0)>>>0>j>>>0){t=~~(+(j>>>0)+100.0)>>>0;c[k>>2]=t;g=h+28|0;h=Tc(c[g>>2]|0,t*24|0)|0;if(!h){Uc(c[g>>2]|0);c[g>>2]=0;c[k>>2]=0;c[o>>2]=0;Ub(f,1,15803,l)|0;break a}else{c[g>>2]=h;g=c[o>>2]|0;break}}else h=c[h+28>>2]|0;while(0);b[h+(g*24|0)>>1]=-177;s=Pi(0,n|0,32)|0;t=h+(g*24|0)+8|0;c[t>>2]=s;c[t+4>>2]=C;c[h+(g*24|0)+16>>2]=2;c[o>>2]=g+1;t=d+16|0;if((Mb(e,c[t>>2]|0,2,f)|0)!=2){Ub(f,1,8295,p)|0;f=0;i=Y;return f|0}qb(c[t>>2]|0,G,2);g=c[G>>2]|0;if((g|0)!=65424){s=d+20|0;q=0;j=0;r=0;b:while(1){if(g>>>0<65280){R=14;break}else l=784;while(1){h=c[l>>2]|0;k=(h|0)==0;if(k|(h|0)==(g|0))break;else l=l+12|0}if(k){Ub(f,2,15914,v)|0;m=2;c:while(1){do{if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=20;break b}qb(c[t>>2]|0,N,2);g=c[N>>2]|0}while(g>>>0<65280);l=784;while(1){h=c[l>>2]|0;if((h|0)==0|(h|0)==(g|0)){k=l;g=l;break}else l=l+12|0}if(!(c[g+4>>2]&c[W>>2])){R=25;break b}if((h|0)>=65424){R=100;break}switch(h|0){case 0:break;default:{p=k;o=m;break c}}m=m+2|0}if((R|0)==100){R=0;switch(h|0){case 65424:{h=q;g=r;R=27;break b}default:{p=k;o=m}}}l=c[V>>2]|0;n=Pb(e)|0;n=n-o|0;k=l+24|0;g=c[k>>2]|0;h=l+32|0;m=c[h>>2]|0;if((g+1|0)>>>0>m>>>0){g=~~(+(m>>>0)+100.0)>>>0;c[h>>2]=g;l=l+28|0;g=Tc(c[l>>2]|0,g*24|0)|0;if(!g){j=l;g=l;R=32;break}c[l>>2]=g;h=g;g=c[k>>2]|0}else h=c[l+28>>2]|0;b[h+(g*24|0)>>1]=0;m=h+(g*24|0)+8|0;c[m>>2]=n;c[m+4>>2]=((n|0)<0)<<31>>31;c[h+(g*24|0)+16>>2]=o;c[k>>2]=g+1;g=c[p>>2]|0;c[G>>2]=g;if((g|0)==65424){h=q;g=r;break}else k=784;while(1){h=c[k>>2]|0;if((h|0)==0|(h|0)==(g|0))break;else k=k+12|0}}else k=l;r=(h|0)==65361?1:r;q=(h|0)==65362?1:q;j=(h|0)==65372?1:j;if(!(c[k+4>>2]&c[W>>2])){R=38;break}if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=40;break}qb(c[t>>2]|0,u,2);h=(c[u>>2]|0)+-2|0;c[u>>2]=h;g=c[t>>2]|0;if(h>>>0>(c[s>>2]|0)>>>0){g=Tc(g,h)|0;if(!g){R=43;break}c[t>>2]=g;h=c[u>>2]|0;c[s>>2]=h}g=Mb(e,g,h,f)|0;if((g|0)!=(c[u>>2]|0)){R=46;break}if(!(Za[c[k+8>>2]&63](d,c[t>>2]|0,g,f)|0)){R=48;break}m=c[V>>2]|0;n=c[k>>2]|0;o=Pb(e)|0;p=c[u>>2]|0;o=-4-p+o|0;p=p+4|0;k=m+24|0;g=c[k>>2]|0;h=m+32|0;l=c[h>>2]|0;if((g+1|0)>>>0>l>>>0){g=~~(+(l>>>0)+100.0)>>>0;c[h>>2]=g;l=m+28|0;g=Tc(c[l>>2]|0,g*24|0)|0;if(!g){j=l;g=l;R=53;break}c[l>>2]=g;h=g;g=c[k>>2]|0}else h=c[m+28>>2]|0;b[h+(g*24|0)>>1]=n;n=h+(g*24|0)+8|0;c[n>>2]=o;c[n+4>>2]=((o|0)<0)<<31>>31;c[h+(g*24|0)+16>>2]=p;c[k>>2]=g+1;if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=55;break}qb(c[t>>2]|0,G,2);g=c[G>>2]|0;if((g|0)==65424){h=q;g=r;break}}switch(R|0){case 14:{c[F>>2]=g;Ub(f,1,15863,F)|0;f=0;i=Y;return f|0}case 20:{Ub(f,1,8295,w)|0;R=34;break}case 25:{Ub(f,1,8339,x)|0;R=34;break}case 27:{c[G>>2]=65424;break}case 32:{Uc(c[g>>2]|0);c[j>>2]=0;c[h>>2]=0;c[k>>2]=0;Ub(f,1,15803,H)|0;R=34;break}case 38:{Ub(f,1,8339,y)|0;f=0;i=Y;return f|0}case 40:{Ub(f,1,8295,z)|0;f=0;i=Y;return f|0}case 43:{Uc(c[t>>2]|0);c[t>>2]=0;c[s>>2]=0;Ub(f,1,8427,A)|0;f=0;i=Y;return f|0}case 46:{Ub(f,1,8295,B)|0;f=0;i=Y;return f|0}case 48:{Ub(f,1,15985,D)|0;f=0;i=Y;return f|0}case 53:{Uc(c[g>>2]|0);c[j>>2]=0;c[h>>2]=0;c[k>>2]=0;Ub(f,1,15803,J)|0;f=0;i=Y;return f|0}case 55:{Ub(f,1,8295,E)|0;f=0;i=Y;return f|0}}if((R|0)==34){Ub(f,1,15930,I)|0;f=0;i=Y;return f|0}if(g){if(!h){Ub(f,1,16090,L)|0;f=0;i=Y;return f|0}if(!j){Ub(f,1,16136,M)|0;f=0;i=Y;return f|0}d:do if(a[d+184>>0]&1){s=d+120|0;do if(c[s>>2]|0){n=d+124|0;o=0;g=0;h=0;e:do{j=c[n>>2]|0;k=c[j+(o<<3)>>2]|0;f:do if(k){l=c[j+(o<<3)+4>>2]|0;j=g>>>0>>0;m=j?0:g-l|0;if((l|0)==(g|0)|j^1)g=m;else{k=j?k+g|0:k;g=l-g|0;while(1){if(g>>>0<4){R=70;break e}qb(k,N,4);j=g+-4|0;g=c[N>>2]|0;h=g+h|0;if(j>>>0>>0)break;if((j|0)==(g|0)){g=m;break f}else{k=k+(g+4)|0;g=j-g|0}}g=g-j|0}}while(0);o=o+1|0}while(o>>>0<(c[s>>2]|0)>>>0);if((R|0)==70){Ub(f,1,16182,O)|0;break}if(!g)R=77;else Ub(f,1,16213,P)|0}else{h=0;R=77}while(0);g:do if((R|0)==77){j=Pc(h)|0;p=d+144|0;c[p>>2]=j;if(!j){Ub(f,1,13302,Q)|0;break}q=d+132|0;c[q>>2]=h;k=c[s>>2]|0;r=d+124|0;do if(k){g=c[r>>2]|0;j=g;o=0;n=0;h=0;h:while(1){l=c[j+(o<<3)>>2]|0;if(!l)l=n;else{j=c[j+(o<<3)+4>>2]|0;g=(c[p>>2]|0)+h|0;i:do if(n>>>0>>0){Ui(g|0,l|0,n|0)|0;h=h+n|0;if((j|0)==(n|0)){l=0;break}m=l+n|0;g=j-n|0;while(1){if(g>>>0<4){R=88;break h}qb(m,S,4);l=m+4|0;k=g+-4|0;j=c[S>>2]|0;g=(c[p>>2]|0)+h|0;if(k>>>0>>0){j=l;break}Ui(g|0,l|0,j|0)|0;g=c[S>>2]|0;h=g+h|0;if((k|0)==(g|0)){l=0;break i}else{m=m+(g+4)|0;g=k-g|0}}Ui(g|0,j|0,k|0)|0;l=(c[S>>2]|0)-k|0;h=k+h|0}else{Ui(g|0,l|0,j|0)|0;l=n-j|0;h=j+h|0}while(0);Uc(c[(c[r>>2]|0)+(o<<3)>>2]|0);j=c[r>>2]|0;c[j+(o<<3)>>2]=0;c[j+(o<<3)+4>>2]=0;k=c[s>>2]|0;g=j}o=o+1|0;if(o>>>0>=k>>>0){R=94;break}else n=l}if((R|0)==88){Ub(f,1,16182,T)|0;break g}else if((R|0)==94){j=c[p>>2]|0;h=c[q>>2]|0;break}}else g=c[r>>2]|0;while(0);c[d+128>>2]=j;c[d+152>>2]=h;c[s>>2]=0;Uc(g);c[r>>2]=0;break d}while(0);Ub(f,1,16236,U)|0;f=0;i=Y;return f|0}while(0);Ub(f,4,16262,X)|0;X=Pb(e)|0;f=(c[V>>2]|0)+8|0;c[f>>2]=X+-2;c[f+4>>2]=0;c[W>>2]=8;f=1;i=Y;return f|0}}Ub(f,1,16044,K)|0;f=0;i=Y;return f|0}while(0);Ub(f,1,15839,m)|0;f=0;i=Y;return f|0}function wd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;G=i;i=i+16|0;F=G;D=c[b+80>>2]|0;E=b+88|0;A=_(c[b+112>>2]|0,c[b+116>>2]|0)|0;q=c[D+16>>2]|0;o=q*1080|0;p=c[b+12>>2]|0;q=_(q<<2,q)|0;a:do if(A){r=p+5604|0;s=p+5620|0;t=p+5612|0;u=p+5616|0;v=p+5632|0;w=p+5624|0;x=p+5584|0;B=0;C=c[b+164>>2]|0;b:while(1){k=C+5584|0;y=c[k>>2]|0;Ui(C|0,p|0,5640)|0;d=C+5636|0;a[d>>0]=a[d>>0]&-4;c[C+5168>>2]=0;d=C+5604|0;c[d>>2]=0;l=C+5620|0;c[l>>2]=0;z=C+5612|0;c[z>>2]=0;m=C+5632|0;c[m>>2]=0;n=C+5624|0;c[n>>2]=0;c[k>>2]=y;if(c[r>>2]|0){f=Pc(q)|0;c[d>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[r>>2]|0,q|0)|0}d=(c[s>>2]|0)*20|0;f=Pc(d)|0;c[z>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[t>>2]|0,d|0)|0;d=c[u>>2]|0;if(d){h=0;j=c[z>>2]|0;k=c[t>>2]|0;while(1){g=k+12|0;if(c[g>>2]|0){d=k+16|0;f=Pc(c[d>>2]|0)|0;c[j+12>>2]=f;if(!f){d=0;f=25;break b}Ui(f|0,c[g>>2]|0,c[d>>2]|0)|0;d=c[u>>2]|0}c[l>>2]=(c[l>>2]|0)+1;h=h+1|0;if(h>>>0>=d>>>0)break;else{j=j+20|0;k=k+20|0}}}d=(c[v>>2]|0)*20|0;f=Pc(d)|0;c[n>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[w>>2]|0,d|0)|0;c[m>>2]=c[v>>2];h=c[v>>2]|0;if(h){j=0;f=c[n>>2]|0;g=c[w>>2]|0;while(1){d=c[g+8>>2]|0;if(d)c[f+8>>2]=(c[z>>2]|0)+(((d-(c[t>>2]|0)|0)/20|0)*20|0);d=c[g+12>>2]|0;if(d)c[f+12>>2]=(c[z>>2]|0)+(((d-(c[t>>2]|0)|0)/20|0)*20|0);j=j+1|0;if(j>>>0>=h>>>0)break;else{f=f+20|0;g=g+20|0}}}Ui(y|0,c[x>>2]|0,o|0)|0;B=B+1|0;if(B>>>0>=A>>>0)break a;else C=C+5640|0}if((f|0)==25){i=G;return d|0}}while(0);f=Tf(1)|0;d=b+204|0;c[d>>2]=f;if(!f){e=0;i=G;return e|0}if(Xf(f,D,E)|0){e=1;i=G;return e|0}Yf(c[d>>2]|0);c[d>>2]=0;Ub(e,1,8839,F)|0;e=0;i=G;return e|0}function xd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=i;i=i+128|0;u=w+120|0;t=w+112|0;s=w+104|0;r=w+96|0;q=w+88|0;p=w+80|0;o=w+72|0;n=w+64|0;m=w+56|0;l=w+48|0;k=w+40|0;j=w+32|0;h=w+24|0;g=w+16|0;f=w+8|0;e=w;if(!a){i=w;return}ki(12191,17,1,d)|0;c[e>>2]=c[a>>2];$h(d,12209,e)|0;c[f>>2]=c[a+4>>2];$h(d,12222,f)|0;c[g>>2]=c[a+8>>2];$h(d,12234,g)|0;c[h>>2]=c[a+16>>2];$h(d,12251,h)|0;if((b|0)>0){g=a+5584|0;h=0;do{f=c[g>>2]|0;c[j>>2]=h;$h(d,12262,j)|0;c[k>>2]=c[f+(h*1080|0)>>2];$h(d,12276,k)|0;a=f+(h*1080|0)+4|0;c[l>>2]=c[a>>2];$h(d,12290,l)|0;c[m>>2]=c[f+(h*1080|0)+8>>2];$h(d,12313,m)|0;c[n>>2]=c[f+(h*1080|0)+12>>2];$h(d,12329,n)|0;c[o>>2]=c[f+(h*1080|0)+16>>2];$h(d,12345,o)|0;c[p>>2]=c[f+(h*1080|0)+20>>2];$h(d,12362,p)|0;ki(12377,23,1,d)|0;if(c[a>>2]|0){e=0;do{x=c[f+(h*1080|0)+944+(e<<2)>>2]|0;c[q>>2]=c[f+(h*1080|0)+812+(e<<2)>>2];c[q+4>>2]=x;$h(d,12401,q)|0;e=e+1|0}while(e>>>0<(c[a>>2]|0)>>>0)}ai(10,d)|0;x=f+(h*1080|0)+24|0;c[r>>2]=c[x>>2];$h(d,12410,r)|0;c[s>>2]=c[f+(h*1080|0)+804>>2];$h(d,12425,s)|0;ki(12442,20,1,d)|0;if((c[x>>2]|0)!=1){a=(c[a>>2]|0)*3|0;if((a|0)>2){a=a+-2|0;v=8}}else{a=1;v=8}if((v|0)==8){v=0;e=0;do{x=c[f+(h*1080|0)+28+(e<<3)>>2]|0;c[t>>2]=c[f+(h*1080|0)+28+(e<<3)+4>>2];c[t+4>>2]=x;$h(d,12401,t)|0;e=e+1|0}while((e|0)!=(a|0))}ai(10,d)|0;c[u>>2]=c[f+(h*1080|0)+808>>2];$h(d,12463,u)|0;ki(12480,5,1,d)|0;h=h+1|0}while((h|0)!=(b|0))}ki(10321,4,1,d)|0;i=w;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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;B=i;i=i+80|0;u=B+32|0;v=B+24|0;y=B+16|0;x=B+8|0;o=B+64|0;w=B+60|0;n=B+56|0;q=B+52|0;s=B+48|0;r=B+44|0;t=B+40|0;p=B+36|0;c[o>>2]=1;e=Pc(1e3)|0;if(!e){Ub(d,1,12127,B)|0;d=0;i=B;return d|0}z=a+116|0;A=a+112|0;k=a+204|0;l=a+84|0;m=a+8|0;f=1e3;j=0;while(1){if(!(cd(a,w,n,q,s,r,t,p,o,b,d)|0)){g=5;break}if(!(c[o>>2]|0)){g=17;break}h=c[n>>2]|0;if(h>>>0>f>>>0){f=Tc(e,h)|0;if(!f){g=9;break}else{e=f;g=h}}else g=f;f=c[w>>2]|0;if(!(dd(a,f,e,h,b,d)|0)){g=11;break}f=f+1|0;h=_(c[A>>2]|0,c[z>>2]|0)|0;c[v>>2]=f;c[v+4>>2]=h;Ub(d,4,11986,v)|0;h=c[k>>2]|0;if(!(ce(c[(c[c[h+20>>2]>>2]|0)+20>>2]|0,c[h+24>>2]|0,e,c[(c[l>>2]|0)+24>>2]|0)|0)){g=13;break}c[u>>2]=f;Ub(d,4,12016,u)|0;h=Qb(b)|0;if((h|0)==0&(C|0)==0?(c[m>>2]|0)==64:0){g=17;break}j=j+1|0;if((j|0)==(_(c[A>>2]|0,c[z>>2]|0)|0)){g=17;break}else f=g}if((g|0)==5){Uc(e);d=0;i=B;return d|0}else if((g|0)==9){Uc(e);A=_(c[A>>2]|0,c[z>>2]|0)|0;c[x>>2]=(c[w>>2]|0)+1;c[x+4>>2]=A;Ub(d,1,11946,x)|0;d=0;i=B;return d|0}else if((g|0)==11){Uc(e);A=_(c[A>>2]|0,c[z>>2]|0)|0;c[y>>2]=f+1;c[y+4>>2]=A;Ub(d,1,12162,y)|0;d=0;i=B;return d|0}else if((g|0)==13){Uc(e);d=0;i=B;return d|0}else if((g|0)==17){Uc(e);d=1;i=B;return d|0}return 0}function zd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0;G=i;i=i+96|0;y=G+56|0;D=G+48|0;x=G+40|0;z=G+32|0;E=G+24|0;k=G+16|0;j=G+8|0;r=G+92|0;B=G+88|0;q=G+84|0;t=G+80|0;v=G+76|0;u=G+72|0;w=G+68|0;s=G+64|0;c[r>>2]=1;e=Pc(1e3)|0;if(!e){Ub(d,1,11880,G)|0;F=0;i=G;return F|0}A=a+196|0;g=c[A>>2]|0;f=c[g+40>>2]|0;a:do if(!f){f=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[g+36>>2]=f;f=Qc(f,40)|0;g=c[A>>2]|0;c[g+40>>2]=f;b:do if(f){if(c[g+36>>2]|0){h=0;do{c[f+(h*40|0)+28>>2]=100;c[f+(h*40|0)+20>>2]=0;p=Qc(100,24)|0;g=c[A>>2]|0;f=c[g+40>>2]|0;c[f+(h*40|0)+24>>2]=p;h=h+1|0;if(!p)break b}while(h>>>0<(c[g+36>>2]|0)>>>0)}g=c[a+60>>2]|0;if(!f)break a;else{F=12;break a}}while(0);Uc(e);F=0;i=G;return F|0}else{g=c[a+60>>2]|0;F=12}while(0);if((F|0)==12)if(c[f+16>>2]|0){if(!(c[f+(g*40|0)+4>>2]|0)){p=a+64|0;p=Si(c[p>>2]|0,c[p+4>>2]|0,2,0)|0;if(!(xb(b,p,C,d)|0)){Ub(d,1,11918,j)|0;Uc(e);F=0;i=G;return F|0}}else{p=c[f+(g*40|0)+16>>2]|0;p=Si(c[p>>2]|0,c[p+4>>2]|0,2,0)|0;if(!(xb(b,p,C,d)|0)){Ub(d,1,11918,k)|0;Uc(e);F=0;i=G;return F|0}}f=a+8|0;if((c[f>>2]|0)==256)c[f>>2]=8}c:do if(cd(a,B,q,t,v,u,w,s,r,b,d)|0){o=a+116|0;p=a+112|0;l=a+204|0;m=a+84|0;n=g+1|0;f=1e3;while(1){if(!(c[r>>2]|0))break;k=c[q>>2]|0;if(k>>>0>f>>>0){f=Tc(e,k)|0;if(!f){F=26;break}else{e=f;j=k}}else j=f;h=c[B>>2]|0;if(!(dd(a,h,e,k,b,d)|0)){F=28;break}f=h+1|0;k=_(c[p>>2]|0,c[o>>2]|0)|0;c[z>>2]=f;c[z+4>>2]=k;Ub(d,4,11986,z)|0;k=c[l>>2]|0;if(!(ce(c[(c[c[k+20>>2]>>2]|0)+20>>2]|0,c[k+24>>2]|0,e,c[(c[m>>2]|0)+24>>2]|0)|0)){F=30;break}c[x>>2]=f;Ub(d,4,12016,x)|0;if((h|0)==(g|0)){F=32;break}c[y>>2]=f;c[y+4>>2]=n;Ub(d,2,12060,y)|0;if(!(cd(a,B,q,t,v,u,w,s,r,b,d)|0))break c;else f=j}if((F|0)==26){Uc(e);F=_(c[p>>2]|0,c[o>>2]|0)|0;c[E>>2]=(c[B>>2]|0)+1;c[E+4>>2]=F;Ub(d,1,11946,E)|0;F=0;i=G;return F|0}else if((F|0)==28){Uc(e);F=0;i=G;return F|0}else if((F|0)==30){Uc(e);F=0;i=G;return F|0}else if((F|0)==32){F=(c[A>>2]|0)+8|0;F=Si(c[F>>2]|0,c[F+4>>2]|0,2,0)|0;if(!(xb(b,F,C,d)|0)){Ub(d,1,11918,D)|0;Uc(e);F=0;i=G;return F|0}}Uc(e);F=1;i=G;return F|0}while(0);Uc(e);F=0;i=G;return F|0}function Ad(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;H=i;i=i+32|0;D=H+16|0;t=H+8|0;l=H;C=H+20|0;E=c[a+40>>2]|0;G=a+36|0;n=c[G>>2]|0;o=a+204|0;k=c[o>>2]|0;c[k+16>>2]=0;B=a+8|0;c[B>>2]=0;c[C>>2]=0;pb(n,65424,2);pb(n+2|0,10,2);F=a+200|0;pb(n+4|0,c[F>>2]|0,2);z=a+12|0;pb(n+10|0,c[z>>2]|0,1);A=a+164|0;pb(n+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=12;h=n+12|0;f=E+-12|0;m=a+88|0;if(((b[m>>1]|0)+-3&65535)>=4?(g=c[F>>2]|0,j=c[A>>2]|0,(c[j+(g*5640|0)+420>>2]|0)!=0):0){c[C>>2]=0;_d(c[(c[a+80>>2]|0)+16>>2]|0,j,g,h,C);y=c[C>>2]|0;g=y+12|0;h=n+g|0;f=f-y|0}else g=12;c[C>>2]=0;pb(h,65427,2);c[k+4>>2]=c[B>>2];y=c[z>>2]|0;c[k+8>>2]=y;if(!y)c[(c[c[k+20>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(k,c[F>>2]|0,h+2|0,C,f+-4|0,0)|0)){Ub(e,1,11860,l)|0;d=0;i=H;return d|0}f=(c[C>>2]|0)+2|0;c[C>>2]=f;f=f+g|0;pb(n+6|0,f,4);if(((b[m>>1]|0)+-3&65535)<4){y=a+28|0;pb(c[y>>2]|0,c[F>>2]|0,1);x=(c[y>>2]|0)+1|0;c[y>>2]=x;pb(x,f,4);c[y>>2]=(c[y>>2]|0)+4}g=n+f|0;y=E-f|0;v=c[o>>2]|0;w=a+88|0;r=c[A>>2]|0;s=c[F>>2]|0;m=be(w,0,s)|0;x=a+8|0;c[z>>2]=(c[z>>2]|0)+1;a:do if(m>>>0>1){n=v+4|0;o=v+8|0;p=v+20|0;q=a+28|0;j=g;g=y;f=0;l=1;while(1){c[x>>2]=l;c[C>>2]=0;pb(j,65424,2);pb(j+2|0,10,2);pb(j+4|0,c[F>>2]|0,2);pb(j+10|0,c[z>>2]|0,1);pb(j+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=0;pb(j+12|0,65427,2);c[n>>2]=c[B>>2];k=c[z>>2]|0;c[o>>2]=k;if(!k)c[(c[c[p>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(v,c[F>>2]|0,j+14|0,C,g+-16|0,0)|0))break;I=c[C>>2]|0;J=I+2|0;c[C>>2]=J;k=I+14|0;h=j+k|0;f=f+12+J|0;g=g+-12+(-2-I)|0;pb(j+6|0,k,4);if(((b[w>>1]|0)+-3&65535)<4){pb(c[q>>2]|0,c[F>>2]|0,1);J=(c[q>>2]|0)+1|0;c[q>>2]=J;pb(J,k,4);c[q>>2]=(c[q>>2]|0)+4}c[z>>2]=(c[z>>2]|0)+1;l=l+1|0;if(l>>>0>=m>>>0){u=12;break a}else j=h}Ub(e,1,11860,t)|0}else{h=g;g=y;f=0;u=12}while(0);b:do if((u|0)==12){p=r+(s*5640|0)+420|0;c:do if(c[p>>2]|0){q=v+16|0;r=v+4|0;s=v+8|0;t=v+20|0;o=a+28|0;n=1;d:while(1){c[q>>2]=n;m=be(w,n,c[F>>2]|0)|0;if(m){l=0;while(1){c[x>>2]=l;c[C>>2]=0;pb(h,65424,2);pb(h+2|0,10,2);pb(h+4|0,c[F>>2]|0,2);pb(h+10|0,c[z>>2]|0,1);pb(h+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=0;pb(h+12|0,65427,2);c[r>>2]=c[B>>2];J=c[z>>2]|0;c[s>>2]=J;if(!J)c[(c[c[t>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(v,c[F>>2]|0,h+14|0,C,g+-16|0,0)|0))break d;J=c[C>>2]|0;j=J+2|0;c[C>>2]=j;f=f+12+j|0;j=J+14|0;k=h+j|0;g=g+-12+(-2-J)|0;pb(h+6|0,j,4);if(((b[w>>1]|0)+-3&65535)<4){pb(c[o>>2]|0,c[F>>2]|0,1);J=(c[o>>2]|0)+1|0;c[o>>2]=J;pb(J,j,4);c[o>>2]=(c[o>>2]|0)+4}c[z>>2]=(c[z>>2]|0)+1;l=l+1|0;if(l>>>0>=m>>>0){h=k;break}else h=k}}n=n+1|0;if(n>>>0>(c[p>>2]|0)>>>0)break c}Ub(e,1,11860,D)|0;break b}while(0);J=f-y+E|0;if((Nb(d,c[G>>2]|0,J,e)|0)!=(J|0)){J=0;i=H;return J|0}c[F>>2]=(c[F>>2]|0)+1;J=1;i=H;return J|0}while(0);J=0;i=H;return J|0}function Bd(a,b,d){a=a|0;b=b|0;d=d|0;a=a+44|0;pb(c[a>>2]|0,65497,2);if((Nb(b,c[a>>2]|0,2,d)|0)!=2){b=0;return b|0}b=(Ob(b,d)|0)!=0&1;return b|0}function Cd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=(c[a+32>>2]|0)*5|0;i=a+16|0;i=Si(c[i>>2]|0,c[i+4>>2]|0,6,0)|0;h=C;e=Pb(b)|0;f=C;if(!(Sb(b,i,h,d)|0)){i=0;return i|0}if((Nb(b,c[a+24>>2]|0,g,d)|0)!=(g|0)){i=0;return i|0}i=(Sb(b,e,f,d)|0)!=0&1;return i|0}function Dd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+196>>2]|0;if(!a)return 1;b=Pb(b)|0;d=a;d=Oi(b|0,C|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=a+16|0;c[b>>2]=d;c[b+4>>2]=C;return 1}function Ed(a,b,d){a=a|0;b=b|0;d=d|0;d=a+204|0;Yf(c[d>>2]|0);c[d>>2]=0;d=a+24|0;b=c[d>>2]|0;if(b){Uc(b);c[d>>2]=0;c[a+28>>2]=0}d=a+36|0;b=c[d>>2]|0;if(!b){a=a+40|0;c[a>>2]=0;return 1}Uc(b);c[d>>2]=0;a=a+40|0;c[a>>2]=0;return 1}function Fd(a,b,d){a=a|0;b=b|0;d=d|0;d=a+44|0;b=c[d>>2]|0;if(b){Uc(b);c[d>>2]=0}c[a+48>>2]=0;return 1}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Hd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+32|0;e=(c[a+8>>2]|0)==0&(c[a+188>>2]|0)!=0&(c[a+192>>2]|0)!=0&1;b=(c[(c[(c[a+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(b>>>0>31){Ub(d,1,11790,f)|0;d=0;i=f;return d|0}b=1<>2]|0)>>>0>>0){Ub(d,1,11790,f+8|0)|0;d=0;i=f;return d|0}if((c[a+104>>2]|0)>>>0>=b>>>0){d=e;i=f;return d|0}Ub(d,1,11790,f+16|0)|0;d=0;i=f;return d|0}function Id(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if((b[a+88>>1]&-32256)<<16>>16!=-32256){j=1;return j|0}i=_(c[a+112>>2]|0,c[a+116>>2]|0)|0;if(!i){j=1;return j|0}h=a+80|0;j=0;e=1;g=c[a+164>>2]|0;while(1){if((c[g+16>>2]|0)==2){e=(c[g+5608>>2]|0)!=0&e;a=c[(c[h>>2]|0)+16>>2]|0;if(a){f=0;d=c[g+5584>>2]|0;while(1){e=(c[d+20>>2]&1^1)&e;f=f+1|0;if(f>>>0>=a>>>0)break;else d=d+1080|0}}}j=j+1|0;if((j|0)==(i|0))break;else g=g+5640|0}return e|0}function Jd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+88|0;h=a+32|0;i=c[a+80>>2]|0;j=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[h>>2]=0;if(!j)return 1;e=c[a+164>>2]|0;f=0;while(1){Nf(i,g,f);b=e+420|0;d=0;a=0;do{k=be(g,a,f)|0;c[h>>2]=(c[h>>2]|0)+k;d=k+d|0;a=a+1|0}while(a>>>0<=(c[b>>2]|0)>>>0);c[e+5588>>2]=d;f=f+1|0;if((f|0)==(j|0))break;else e=e+5640|0}return 1}function Kd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+44>>2]|0;pb(a,65359,2);return (Nb(b,a,2,d)|0)==2|0}function Ld(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;j=p;k=c[a+80>>2]|0;n=k+16|0;l=(c[n>>2]|0)*3|0;o=l+40|0;f=c[k+24>>2]|0;h=a+48|0;m=a+44|0;g=c[m>>2]|0;do if(o>>>0>(c[h>>2]|0)>>>0){g=Tc(g,o)|0;if(g){c[m>>2]=g;c[h>>2]=o;break}Uc(c[m>>2]|0);c[m>>2]=0;c[h>>2]=0;Ub(d,1,11752,j)|0;b=0;i=p;return b|0}while(0);pb(g,65361,2);pb(g+2|0,l+38|0,2);pb(g+4|0,e[a+88>>1]|0,2);pb(g+6|0,c[k+8>>2]|0,4);pb(g+10|0,c[k+12>>2]|0,4);pb(g+14|0,c[k>>2]|0,4);pb(g+18|0,c[k+4>>2]|0,4);pb(g+22|0,c[a+100>>2]|0,4);pb(g+26|0,c[a+104>>2]|0,4);pb(g+30|0,c[a+92>>2]|0,4);pb(g+34|0,c[a+96>>2]|0,4);pb(g+38|0,c[n>>2]|0,2);if(c[n>>2]|0){h=0;g=g+40|0;while(1){pb(g,(c[f+24>>2]|0)+-1+(c[f+32>>2]<<7)|0,1);pb(g+1|0,c[f>>2]|0,1);pb(g+2|0,c[f+4>>2]|0,1);h=h+1|0;if(h>>>0>=(c[n>>2]|0)>>>0)break;else{g=g+3|0;f=f+52|0}}}b=(Nb(b,c[m>>2]|0,o,d)|0)==(o|0)&1;i=p;return b|0}function Md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+32|0;q=r+16|0;p=r+8|0;j=r;o=r+20|0;k=a+200|0;l=c[k>>2]|0;m=a+164|0;n=c[m>>2]|0;e=c[n+(l*5640|0)+5584>>2]|0;if(!(c[e>>2]&1))g=5;else g=(c[e+4>>2]|0)+5|0;h=g+9|0;c[o>>2]=h;f=a+48|0;a=a+44|0;e=c[a>>2]|0;do if(h>>>0>(c[f>>2]|0)>>>0){e=Tc(e,h)|0;if(e){c[a>>2]=e;c[f>>2]=h;break}Uc(c[a>>2]|0);c[a>>2]=0;c[f>>2]=0;Ub(d,1,11687,j)|0;q=0;i=r;return q|0}while(0);pb(e,65362,2);pb(e+2|0,g+7|0,2);pb(e+4|0,c[n+(l*5640|0)>>2]|0,1);pb(e+5|0,c[n+(l*5640|0)+4>>2]|0,1);pb(e+6|0,c[n+(l*5640|0)+8>>2]|0,2);pb(e+8|0,c[n+(l*5640|0)+16>>2]|0,1);c[o>>2]=g;if(!(ae(c[m>>2]|0,c[k>>2]|0,e+9|0,o,d)|0)){Ub(d,1,11726,p)|0;q=0;i=r;return q|0}if(!(c[o>>2]|0)){q=(Nb(b,c[a>>2]|0,h,d)|0)==(h|0)&1;i=r;return q|0}else{Ub(d,1,11726,q)|0;q=0;i=r;return q|0}return 0}function Nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;o=p+16|0;n=p+8|0;j=p;l=p+20|0;k=a+200|0;m=a+164|0;e=c[(c[m>>2]|0)+((c[k>>2]|0)*5640|0)+5584>>2]|0;f=c[e+24>>2]|0;if((f|0)==1)e=1;else e=((c[e+4>>2]|0)*3|0)+-2|0;g=(f|0)==0?e+1|0:e<<1|1;h=g+4|0;c[l>>2]=h;f=a+48|0;a=a+44|0;e=c[a>>2]|0;do if(h>>>0>(c[f>>2]|0)>>>0){e=Tc(e,h)|0;if(e){c[a>>2]=e;c[f>>2]=h;break}Uc(c[a>>2]|0);c[a>>2]=0;c[f>>2]=0;Ub(d,1,11622,j)|0;o=0;i=p;return o|0}while(0);pb(e,65372,2);pb(e+2|0,g+2|0,2);c[l>>2]=g;if(!($d(c[m>>2]|0,c[k>>2]|0,0,e+4|0,l,d)|0)){Ub(d,1,11661,n)|0;o=0;i=p;return o|0}if(!(c[l>>2]|0)){o=(Nb(b,c[a>>2]|0,h,d)|0)==(h|0)&1;i=p;return o|0}else{Ub(d,1,11661,o)|0;o=0;i=p;return o|0}return 0}function Od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;u=w;r=w+4|0;o=a+80|0;e=c[(c[o>>2]|0)+16>>2]|0;if(e>>>0<=1){v=1;i=w;return v|0}s=a+164|0;t=a+200|0;q=a+48|0;n=a+44|0;m=1;while(1){h=c[s>>2]|0;k=c[t>>2]|0;g=c[h+(k*5640|0)+5584>>2]|0;j=c[g+(m*1080|0)>>2]|0;a:do if((((((c[g>>2]|0)==(j|0)?(p=c[g+4>>2]|0,(p|0)==(c[g+(m*1080|0)+4>>2]|0)):0)?(c[g+8>>2]|0)==(c[g+(m*1080|0)+8>>2]|0):0)?(c[g+12>>2]|0)==(c[g+(m*1080|0)+12>>2]|0):0)?(c[g+16>>2]|0)==(c[g+(m*1080|0)+16>>2]|0):0)?(c[g+20>>2]|0)==(c[g+(m*1080|0)+20>>2]|0):0){if(p){a=0;do{if((c[g+812+(a<<2)>>2]|0)!=(c[g+(m*1080|0)+812+(a<<2)>>2]|0)){v=13;break a}if((c[g+944+(a<<2)>>2]|0)!=(c[g+(m*1080|0)+944+(a<<2)>>2]|0)){v=13;break a}a=a+1|0}while(a>>>0

>>0)}}else v=13;while(0);if((v|0)==13){v=0;if(!(j&1))a=5;else a=(c[g+(m*1080|0)+4>>2]|0)+5|0;l=a+(e>>>0<257?6:7)|0;f=c[n>>2]|0;if(l>>>0>(c[q>>2]|0)>>>0){a=Tc(f,l)|0;if(!a){v=17;break}c[n>>2]=a;c[q>>2]=l;k=c[t>>2]|0;h=c[s>>2]|0;g=c[h+(k*5640|0)+5584>>2]|0;e=c[(c[o>>2]|0)+16>>2]|0;j=c[g+(m*1080|0)>>2]|0;f=a}e=e>>>0<257?1:2;if(!(j&1))a=5;else a=(c[g+(m*1080|0)+4>>2]|0)+5|0;pb(f,65363,2);pb(f+2|0,e+3+a|0,2);pb(f+4|0,m,e);j=e|4;pb(f+j|0,c[(c[h+(k*5640|0)+5584>>2]|0)+(m*1080|0)>>2]|0,1);c[r>>2]=a;ae(c[s>>2]|0,c[t>>2]|0,f+(j+1)|0,r,d)|0;if((Nb(b,c[n>>2]|0,l,d)|0)!=(l|0)){a=0;v=24;break}e=c[(c[o>>2]|0)+16>>2]|0}m=m+1|0;if(m>>>0>=e>>>0){a=1;v=24;break}}if((v|0)==17){Uc(c[n>>2]|0);c[n>>2]=0;c[q>>2]=0;Ub(d,1,11548,u)|0;v=0;i=w;return v|0}else if((v|0)==24){i=w;return a|0}return 0}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+16|0;r=t;o=t+4|0;m=a+80|0;e=c[(c[m>>2]|0)+16>>2]|0;if(e>>>0<=1){s=1;i=t;return s|0}p=a+164|0;q=a+200|0;n=a+48|0;l=a+44|0;k=1;while(1){j=c[(c[p>>2]|0)+((c[q>>2]|0)*5640|0)+5584>>2]|0;g=c[j+24>>2]|0;h=c[j+(k*1080|0)+24>>2]|0;a:do if((g|0)==(h|0)?(c[j+804>>2]|0)==(c[j+(k*1080|0)+804>>2]|0):0){if((g|0)!=1){f=(c[j+4>>2]|0)*3|0;a=f+-2|0;if((f|0)!=((c[j+(k*1080|0)+4>>2]|0)*3|0)){s=14;break}if(!a)break}else a=1;f=0;do{if((c[j+28+(f<<3)>>2]|0)!=(c[j+(k*1080|0)+28+(f<<3)>>2]|0)){s=14;break a}f=f+1|0}while(f>>>0>>0);if(g){f=0;do{if((c[j+28+(f<<3)+4>>2]|0)!=(c[j+(k*1080|0)+28+(f<<3)+4>>2]|0)){s=14;break a}f=f+1|0}while(f>>>0>>0)}}else s=14;while(0);if((s|0)==14){s=0;if((h|0)==1)a=1;else a=((c[j+(k*1080|0)+4>>2]|0)*3|0)+-2|0;g=((h|0)==0?a+1|0:a<<1|1)+5+(e>>>0>256&1)|0;a=c[l>>2]|0;if(g>>>0>(c[n>>2]|0)>>>0){a=Tc(a,g)|0;if(!a){s=18;break}c[l>>2]=a;c[n>>2]=g;e=c[(c[p>>2]|0)+((c[q>>2]|0)*5640|0)+5584>>2]|0;f=c[e+(k*1080|0)+24>>2]|0}else{f=h;e=j}if((f|0)==1)e=1;else e=((c[e+(k*1080|0)+4>>2]|0)*3|0)+-2|0;f=(f|0)==0?e+1|0:e<<1|1;c[o>>2]=f+6;pb(a,65373,2);e=a+2|0;if((c[(c[m>>2]|0)+16>>2]|0)>>>0<257){pb(e,f+3|0,2);pb(a+4|0,k,1);a=a+5|0}else{pb(e,f+4|0,2);pb(a+4|0,k,2);a=a+6|0}c[o>>2]=f;$d(c[p>>2]|0,c[q>>2]|0,k,a,o,d)|0;if((Nb(b,c[l>>2]|0,g,d)|0)!=(g|0)){a=0;s=28;break}e=c[(c[m>>2]|0)+16>>2]|0}k=k+1|0;if(k>>>0>=e>>>0){a=1;s=28;break}}if((s|0)==18){Uc(c[l>>2]|0);c[l>>2]=0;c[n>>2]=0;Ub(d,1,11476,r)|0;s=0;i=t;return s|0}else if((s|0)==28){i=t;return a|0}return 0}function Qd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l;h=(c[a+32>>2]|0)*5|0;j=h+6|0;f=a+48|0;k=a+44|0;e=c[k>>2]|0;do if(j>>>0>(c[f>>2]|0)>>>0){e=Tc(e,j)|0;if(e){c[k>>2]=e;c[f>>2]=j;break}Uc(c[k>>2]|0);c[k>>2]=0;c[f>>2]=0;Ub(d,1,11437,g)|0;b=0;i=l;return b|0}while(0);g=Pb(b)|0;a=a+16|0;c[a>>2]=g;c[a+4>>2]=C;pb(e,65365,2);pb(e+2|0,h+4|0,2);pb(e+4|0,0,1);pb(e+5|0,80,1);b=(Nb(b,c[k>>2]|0,j,d)|0)==(j|0)&1;i=l;return b|0}function Rd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;j=q;p=q+4|0;c[p>>2]=0;m=a+200|0;e=c[m>>2]|0;l=a+164|0;f=c[l>>2]|0;k=a+80|0;h=c[(c[k>>2]|0)+16>>2]|0;o=(_(h>>>0<257?7:9,(c[f+(e*5640|0)+420>>2]|0)+1|0)|0)+4|0;g=a+48|0;n=a+44|0;a=c[n>>2]|0;do if(o>>>0>(c[g>>2]|0)>>>0){e=Tc(a,o)|0;if(e){c[n>>2]=e;c[g>>2]=o;g=e;a=c[(c[k>>2]|0)+16>>2]|0;f=c[l>>2]|0;e=c[m>>2]|0;break}Uc(c[n>>2]|0);c[n>>2]=0;c[g>>2]=0;Ub(d,1,11398,j)|0;b=0;i=q;return b|0}else{g=a;a=h}while(0);_d(a,f,e,g,p);b=(Nb(b,c[n>>2]|0,o,d)|0)==(o|0)&1;i=q;return b|0}function Sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+164|0;j=a+80|0;f=c[j>>2]|0;e=c[f+16>>2]|0;if(!e){b=1;return b|0}h=a+44|0;a=0;g=c[(c[i>>2]|0)+5584>>2]|0;while(1){if(c[g+808>>2]|0){k=c[(c[i>>2]|0)+5584>>2]|0;m=e>>>0<257?1:2;f=m+6|0;l=c[h>>2]|0;pb(l,65374,2);e=m|4;pb(l+2|0,e,2);pb(l+4|0,a,m);pb(l+e|0,0,1);pb(l+(e+1)|0,c[k+(a*1080|0)+808>>2]|0,1);if((Nb(b,c[h>>2]|0,f,d)|0)!=(f|0)){a=0;e=7;break}f=c[j>>2]|0}a=a+1|0;e=c[f+16>>2]|0;if(a>>>0>=e>>>0){a=1;e=7;break}else g=g+1080|0}if((e|0)==7)return a|0;return 0}function Td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l;h=c[a+108>>2]|0;j=wi(h)|0;k=j+6|0;e=a+48|0;f=a+44|0;a=c[f>>2]|0;do if(k>>>0>(c[e>>2]|0)>>>0){a=Tc(a,k)|0;if(a){c[f>>2]=a;c[e>>2]=k;break}Uc(c[f>>2]|0);c[f>>2]=0;c[e>>2]=0;Ub(d,1,11355,g)|0;b=0;i=l;return b|0}while(0);pb(a,65380,2);pb(a+2|0,j+4|0,2);pb(a+4|0,1,2);Ui(a+6|0,h|0,j|0)|0;b=(Nb(b,c[f>>2]|0,k,d)|0)==(k|0)&1;i=l;return b|0}function Ud(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+32|0;w=A+24|0;t=A+16|0;o=A+8|0;g=A;j=c[b+80>>2]|0;k=j+16|0;h=c[k>>2]|0;l=h+6|0;v=b+48|0;z=b+44|0;f=c[z>>2]|0;do if(l>>>0>(c[v>>2]|0)>>>0){f=Tc(f,l)|0;if(f){c[z>>2]=f;c[v>>2]=l;break}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11199,g)|0;d=0;i=A;return d|0}while(0);pb(f,65400,2);pb(f+2|0,h+4|0,2);pb(f+4|0,c[k>>2]|0,2);if(c[k>>2]|0){h=0;g=c[j+24>>2]|0;f=f+6|0;while(1){pb(f,(c[g+24>>2]|0)+-1|c[g+32>>2]<<7,1);h=h+1|0;if(h>>>0>=(c[k>>2]|0)>>>0)break;else{g=g+52|0;f=f+1|0}}}if((Nb(d,c[z>>2]|0,l,e)|0)!=(l|0)){d=0;i=A;return d|0}q=b+200|0;n=c[q>>2]|0;r=b+164|0;m=c[r>>2]|0;g=m+(n*5640|0)+5616|0;a:do if(c[g>>2]|0){l=0;b=c[m+(n*5640|0)+5612>>2]|0;while(1){h=b+16|0;j=c[h>>2]|0;k=j+10|0;f=c[z>>2]|0;if(k>>>0>(c[v>>2]|0)>>>0){f=Tc(f,k)|0;if(!f)break;c[z>>2]=f;c[v>>2]=k}pb(f,65396,2);pb(f+2|0,j+8|0,2);pb(f+4|0,0,2);pb(f+6|0,c[b+4>>2]<<8|c[b+8>>2]&255|c[b>>2]<<10,2);pb(f+8|0,0,2);Ui(f+10|0,c[b+12>>2]|0,c[h>>2]|0)|0;if((Nb(d,c[z>>2]|0,k,e)|0)!=(k|0)){s=0;x=42;break}l=l+1|0;if(l>>>0>=(c[g>>2]|0)>>>0)break a;else b=b+20|0}if((x|0)==42){i=A;return s|0}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11238,o)|0;d=0;i=A;return d|0}while(0);o=m+(n*5640|0)+5628|0;b:do if(c[o>>2]|0){p=0;m=c[m+(n*5640|0)+5624>>2]|0;while(1){l=m+4|0;g=c[l>>2]|0;j=g>>>0>255;k=j?2:1;j=j?32768:0;g=_(k,g<<1)|0;b=g+19|0;f=c[z>>2]|0;if(b>>>0>(c[v>>2]|0)>>>0){f=Tc(f,b)|0;if(!f)break;c[z>>2]=f;c[v>>2]=b}pb(f,65397,2);pb(f+2|0,g+17|0,2);pb(f+4|0,0,2);pb(f+6|0,c[m>>2]|0,1);pb(f+7|0,0,2);pb(f+9|0,1,2);pb(f+11|0,1,1);pb(f+12|0,c[l>>2]|j,2);f=f+14|0;if(!(c[l>>2]|0))g=0;else{h=0;do{pb(f,h,k);f=f+k|0;h=h+1|0;g=c[l>>2]|0}while(h>>>0>>0)}pb(f,g|j,2);f=f+2|0;if(!(c[l>>2]|0))h=f;else{g=0;do{pb(f,g,k);f=f+k|0;g=g+1|0}while(g>>>0<(c[l>>2]|0)>>>0);h=f}f=((a[m+16>>0]^1)&255)<<16&65536;g=c[m+8>>2]|0;if(g)f=c[g+8>>2]|f;g=c[m+12>>2]|0;if(g)f=c[g+8>>2]<<8|f;pb(h,f,3);if((Nb(d,c[z>>2]|0,b,e)|0)!=(b|0)){s=0;x=42;break}p=p+1|0;if(p>>>0>=(c[o>>2]|0)>>>0)break b;else m=m+20|0}if((x|0)==42){i=A;return s|0}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11277,t)|0;d=0;i=A;return d|0}while(0);k=c[q>>2]|0;j=c[r>>2]|0;l=j+(k*5640|0)+5628|0;g=c[l>>2]|0;b=g+5|0;f=c[z>>2]|0;do if(b>>>0>(c[v>>2]|0)>>>0){f=Tc(f,b)|0;if(!f){Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11316,w)|0;u=1;break}else{c[z>>2]=f;c[v>>2]=b;y=f;x=37;break}}else{y=f;x=37}while(0);if((x|0)==37){pb(y,65399,2);pb(y+2|0,g+3|0,2);pb(y+4|0,c[l>>2]|0,1);if(c[l>>2]|0){h=0;g=y+5|0;f=c[j+(k*5640|0)+5624>>2]|0;while(1){pb(g,c[f>>2]|0,1);h=h+1|0;if(h>>>0>=(c[l>>2]|0)>>>0)break;else{g=g+1|0;f=f+20|0}}}u=(Nb(d,c[z>>2]|0,b,e)|0)!=(b|0)}d=u&1^1;i=A;return d|0}function Vd(a,b,d){a=a|0;b=b|0;d=d|0;d=Pb(b)|0;b=(c[a+196>>2]|0)+8|0;c[b>>2]=d;c[b+4>>2]=C;return 1}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;b=Tf(0)|0;e=a+204|0;c[e>>2]=b;if(!b){Ub(d,1,11159,f)|0;d=0;i=f;return d|0}if(Xf(b,c[a+80>>2]|0,a+88|0)|0){d=1;i=f;return d|0}Yf(c[e>>2]|0);c[e>>2]=0;d=0;i=f;return d|0}function Xd(d,e,f){d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=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;O=d+80|0;E=c[O>>2]|0;P=d+164|0;i=c[P>>2]|0;N=E+24|0;F=c[N>>2]|0;f=c[F>>2]|0;h=c[F+4>>2]|0;M=E+16|0;F=_(c[F+24>>2]|0,c[M>>2]|0)|0;D=Pb(e)|0;q=d+116|0;l=c[q>>2]|0;r=d+112|0;e=c[r>>2]|0;G=(+(D>>>0)+4294967296.0*+(C|0))/+((_(e,l)|0)>>>0);D=(a[d+181>>0]&8)==0?1:2;if(l){s=d+92|0;u=d+100|0;v=d+96|0;y=d+104|0;z=E+4|0;A=E+8|0;B=E+12|0;x=+((_(f<<3,h)|0)>>>0);m=e;f=e;p=0;e=i;do{o=p;p=p+1|0;if(!f)f=0;else{m=0;do{w=+Sa[D&3](e);l=c[e+8>>2]|0;w=w/+(l>>>0);Q=c[s>>2]|0;i=c[u>>2]|0;k=(_(i,m)|0)+Q|0;f=c[E>>2]|0;f=(k|0)>(f|0)?k:f;k=c[v>>2]|0;j=c[y>>2]|0;R=(_(j,o)|0)+k|0;h=c[z>>2]|0;h=(R|0)>(h|0)?R:h;m=m+1|0;Q=(_(i,m)|0)+Q|0;i=c[A>>2]|0;i=(Q|0)<(i|0)?Q:i;k=(_(j,p)|0)+k|0;j=c[B>>2]|0;j=(k|0)<(j|0)?k:j;k=e+20|0;n=+g[k>>2];if(n!=0.0)g[k>>2]=+((_(_(i-f|0,F)|0,j-h|0)|0)>>>0)/(x*n)-w;if(l>>>0>1){n=+((_(_(i-f|0,F)|0,j-h|0)|0)>>>0);f=1;h=e+24|0;while(1){t=+g[h>>2];if(t!=0.0)g[h>>2]=n/(x*t)-w;f=f+1|0;if(f>>>0>=l>>>0)break;else h=h+4|0}}e=e+5640|0;f=c[r>>2]|0}while(m>>>0>>0);l=c[q>>2]|0;m=f}}while(p>>>0>>0);if(!l)l=0;else{s=(m|0)==0;t=G+2.0;v=m>>>0>1?m:1;u=0;f=c[P>>2]|0;do{if(!s){p=f+16|0;q=0;r=f;while(1){e=r+20|0;n=+g[e>>2];if(n!=0.0?(x=n-G,g[e>>2]=x,x<30.0):0)g[e>>2]=30.0;j=r+24|0;e=c[r+8>>2]|0;o=e+-1|0;n=+g[j>>2];h=n!=0.0;if(o>>>0>1){k=p+(e<<2)|0;i=1;e=j;do{if(h?(x=n-G,g[e>>2]=x,I=+g[e+-4>>2],x>2]=I+20.0;e=e+4|0;i=i+1|0;n=+g[e>>2];h=n!=0.0}while((i|0)!=(o|0));if(h){H=n;K=k;L=29}}else if(h){H=n;K=j;L=29}if((L|0)==29?(L=0,x=H-t,g[K>>2]=x,J=+g[K+-4>>2],x>2]=J+20.0;q=q+1|0;if(q>>>0>=m>>>0)break;else{p=p+5640|0;r=r+5640|0}}f=f+(v*5640|0)|0}u=u+1|0}while(u>>>0>>0)}}else{m=e;l=0}h=c[M>>2]|0;if(!h)u=0;else{i=(c[d+100>>2]|0)+-1|0;j=(c[d+104>>2]|0)+-1|0;k=0;e=c[N>>2]|0;f=0;while(1){R=c[e>>2]|0;Q=c[e+4>>2]|0;R=_(((j+Q|0)>>>0)/(Q>>>0)|0,((i+R|0)>>>0)/(R>>>0)|0)|0;f=(_(R,c[e+24>>2]|0)|0)+f|0;k=k+1|0;if(k>>>0>=h>>>0)break;else e=e+52|0}u=~~(+(f>>>0)*.1625)>>>0}o=c[(c[O>>2]|0)+16>>2]|0;q=o+-1|0;s=_(l,m)|0;p=(s|0)==0;if(p)i=0;else{e=0;f=0;h=c[P>>2]|0;while(1){R=c[h+5588>>2]|0;f=f>>>0>R>>>0?f:R;e=e+1|0;if((e|0)==(s|0))break;else h=h+5640|0}i=f*12|0}r=d+88|0;if(((b[r>>1]|0)+-3&65535)>=4){if(p){e=0;f=0}else{m=(o|0)==0;k=0;f=0;do{if(!m){h=c[(c[P>>2]|0)+(k*5640|0)+5584>>2]|0;j=0;do{if(!(c[h+(j*1080|0)>>2]&1))e=5;else e=(c[h+(j*1080|0)+4>>2]|0)+5|0;f=f>>>0>e>>>0?f:e;j=j+1|0}while((j|0)!=(o|0))}k=k+1|0}while((k|0)!=(s|0));l=0;e=0;do{if(!m){j=c[(c[P>>2]|0)+(l*5640|0)+5584>>2]|0;k=0;do{if(!(c[j+(k*1080|0)>>2]&1))h=5;else h=(c[j+(k*1080|0)+4>>2]|0)+5|0;e=e>>>0>h>>>0?e:h;k=k+1|0}while((k|0)!=(o|0))}l=l+1|0}while((l|0)!=(s|0))}i=(_(f+12+e|0,q)|0)+i|0}if(p)f=13;else{h=0;f=0;e=c[P>>2]|0;while(1){R=c[e+420>>2]|0;f=f>>>0>R>>>0?f:R;h=h+1|0;if((h|0)==(s|0))break;else e=e+5640|0}f=(f*9|0)+13|0}R=i+u+f|0;c[d+40>>2]=R;R=Pc(R)|0;c[d+36>>2]=R;if(!R){R=0;return R|0}if(((b[r>>1]|0)+-3&65535)>=4){R=1;return R|0}f=Pc((c[d+32>>2]|0)*5|0)|0;c[d+24>>2]=f;if(!f){R=0;return R|0}c[d+28>>2]=f;R=1;return R|0}function Yd(a){a=a|0;return 0.0}function Zd(a){a=a|0;return +(+((((c[a+5588>>2]|0)*14|0)+-14|0)>>>0))}function _d(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=c[b+(d*5640|0)+5584>>2]|0;q=(c[b+(d*5640|0)+420>>2]|0)+1|0;j=a>>>0<257?1:2;p=_(q,(j<<1)+5|0)|0;r=p+4|0;pb(e,65375,2);pb(e+2|0,p+2|0,2);if(!q){c[f>>2]=r;return}k=j+1|0;l=j+3|0;m=j|4;n=m+j|0;o=n+1|0;p=b+(d*5640|0)+8|0;h=g+4|0;i=0;e=e+4|0;g=b+(d*5640|0)+424|0;while(1){pb(e,c[g>>2]|0,1);pb(e+1|0,c[g+4>>2]|0,j);t=g+8|0;pb(e+k|0,c[t>>2]|0,2);b=g+12|0;pb(e+l|0,c[b>>2]|0,1);d=g+16|0;pb(e+m|0,c[d>>2]|0,j);pb(e+n|0,c[g+36>>2]|0,1);u=c[t>>2]|0;s=c[p>>2]|0;c[t>>2]=(u|0)<(s|0)?u:s;t=c[b>>2]|0;s=c[h>>2]|0;c[b>>2]=(t|0)<(s|0)?t:s;b=c[d>>2]|0;c[d>>2]=(b|0)<(a|0)?b:a;i=i+1|0;if((i|0)==(q|0))break;else{e=e+o|0;g=g+148|0}}c[f>>2]=r;return}function $d(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+8|0;j=n;l=c[a+(b*5640|0)+5584>>2]|0;b=c[l+(d*1080|0)+24>>2]|0;do if((b|0)!=1){a=(c[l+(d*1080|0)+4>>2]|0)*3|0;h=a+-2|0;if(!b){a=a+-1|0;if((c[f>>2]|0)>>>0>>0){Ub(g,1,11515,j)|0;f=0;i=n;return f|0}else{pb(e,c[l+(d*1080|0)+804>>2]<<5,1);if(!h)break;else b=0;do{e=e+1|0;pb(e,c[l+(d*1080|0)+28+(b<<3)>>2]<<3,1);b=b+1|0}while((b|0)!=(h|0))}}else m=7}else{h=1;b=1;m=7}while(0);if((m|0)==7){a=h<<1|1;if((c[f>>2]|0)>>>0>>0){Ub(g,1,11515,k)|0;f=0;i=n;return f|0}pb(e,(c[l+(d*1080|0)+804>>2]<<5)+b|0,1);if(h){e=e+1|0;b=0;while(1){pb(e,(c[l+(d*1080|0)+28+(b<<3)>>2]<<11)+(c[l+(d*1080|0)+28+(b<<3)+4>>2]|0)|0,2);b=b+1|0;if((b|0)==(h|0))break;else e=e+2|0}}}c[f>>2]=(c[f>>2]|0)-a;f=1;i=n;return f|0}function ae(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;g=c[a+(b*5640|0)+5584>>2]|0;if((c[e>>2]|0)>>>0<5){Ub(f,1,11587,j)|0;e=0;i=j;return e|0}h=g+4|0;pb(d,(c[h>>2]|0)+-1|0,1);pb(d+1|0,(c[g+8>>2]|0)+-2|0,1);pb(d+2|0,(c[g+12>>2]|0)+-2|0,1);pb(d+3|0,c[g+16>>2]|0,1);pb(d+4|0,c[g+20>>2]|0,1);b=(c[e>>2]|0)+-5|0;c[e>>2]=b;if(!(c[g>>2]&1)){e=1;i=j;return e|0}a=c[h>>2]|0;if(b>>>0>>0){Ub(f,1,11587,j+8|0)|0;e=0;i=j;return e|0}if(!a)a=0;else{b=d+5|0;d=0;while(1){pb(b,(c[g+944+(d<<2)>>2]<<4)+(c[g+812+(d<<2)>>2]|0)|0,1);d=d+1|0;a=c[h>>2]|0;if(d>>>0>=a>>>0)break;else b=b+1|0}b=c[e>>2]|0}c[e>>2]=b-a;e=1;i=j;return e|0}function be(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=c[b+76>>2]|0;g=c[i+(f*5640|0)+4>>2]|0;h=696;while(1){m=c[h>>2]|0;if((m|0)==-1|(m|0)==(g|0))break;else h=h+12|0}if(!(a[b+93>>0]&8)){b=1;return b|0}m=d[b+92>>0]|0;j=i+(f*5640|0)+424+(e*148|0)+92|0;k=i+(f*5640|0)+424+(e*148|0)+88|0;l=i+(f*5640|0)+424+(e*148|0)+96|0;e=i+(f*5640|0)+424+(e*148|0)+84|0;i=a[h+4>>0]|0;switch(i|0){case 67:{g=c[j>>2]|0;break}case 82:{g=c[k>>2]|0;break}case 80:{g=c[l>>2]|0;break}case 76:{g=c[e>>2]|0;break}default:g=1}if((m|0)!=(i|0)){i=a[h+5>>0]|0;switch(i|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)!=(i|0)){i=a[h+6>>0]|0;switch(i|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)!=(i|0)){h=a[h+7>>0]|0;switch(h|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)==(h|0))h=3;else{b=g;return b|0}}else h=2}else h=1}else h=0;c[b+84>>2]=h;b=g;return b|0}function ce(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=g+16|0;if(!(c[B>>2]|0)){B=1;return B|0}A=0;z=c[g+24>>2]|0;while(1){k=i+44|0;j=c[k>>2]|0;l=i+8|0;if(!j){g=i+12|0;j=Qc(_(c[g>>2]|0,c[l>>2]|0)|0,4)|0;c[k>>2]=j;if(!j){h=0;i=61;break}}else g=i+12|0;q=z+36|0;c[i+36>>2]=c[q>>2];x=c[z+24>>2]|0;t=c[f+24>>2]|0;q=c[q>>2]|0;x=((x&7|0)!=0&1)+(x>>>3)|0;x=(x|0)==3?4:x;n=c[t+(q*136|0)+8>>2]|0;m=c[t+(q*136|0)>>2]|0;v=n-m|0;s=c[t+(q*136|0)+12>>2]|0;q=c[t+(q*136|0)+4>>2]|0;t=s-q|0;k=c[i+16>>2]|0;p=c[i+40>>2]|0;o=Ri(1,0,p|0)|0;w=C;k=Si(k|0,0,-1,-1)|0;k=Si(k|0,C|0,o|0,w|0)|0;k=Ti(k|0,C|0,p|0)|0;r=Si(c[i+20>>2]|0,0,-1,-1)|0;w=Si(r|0,C|0,o|0,w|0)|0;p=Ti(w|0,C|0,p|0)|0;w=c[l>>2]|0;l=k+w|0;o=c[g>>2]|0;r=p+o|0;do if(k>>>0>>0){g=m-k|0;if(n>>>0>l>>>0){y=l-m|0;u=0;m=v-y|0;n=g}else{u=0;m=0;n=g;y=v}}else{g=k-m|0;if(n>>>0>l>>>0){u=g;m=n-l|0;n=0;y=w;break}else{u=g;m=0;n=0;y=v-g|0;break}}while(0);do if(p>>>0>>0){l=q-p|0;if(s>>>0>r>>>0){k=r-q|0;o=k;g=0;k=t-k|0}else{o=t;g=0;k=0}}else{g=p-q|0;if(s>>>0>r>>>0){k=s-r|0;l=0;break}else{o=t-g|0;k=0;l=0;break}}while(0);if((u|m|y|k|g|o|0)<0){h=0;i=61;break}g=(_(g,v)|0)+u|0;q=u+m|0;r=(_(k,v)|0)-u|0;p=w-y|0;j=j+((_(w,l)|0)+n<<2)|0;switch(x|0){case 1:{h=h+g|0;g=(o|0)==0;if(!(c[z+32>>2]|0)){if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=d[j>>0];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+1|0}}g=l;h=h+y|0}h=h+q|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}}else if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=a[j>>0];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+1|0}}g=l;h=h+y|0}h=h+q|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+r|0;break}case 2:{h=h+(g<<1)|0;g=(o|0)==0;if(!(c[z+32>>2]|0)){if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=e[j>>1];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+2|0}}g=l;h=h+(y<<1)|0}h=h+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}}else if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=b[j>>1];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+2|0}}g=l;h=h+(y<<1)|0}h=h+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+(r<<1)|0;break}case 4:{h=h+(g<<2)|0;if(o){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=c[j>>2];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+4|0}}g=l;h=h+(y<<2)|0}h=h+(q<<2)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+(r<<2)|0;break}default:{}}A=A+1|0;if(A>>>0>=(c[B>>2]|0)>>>0){h=1;i=61;break}else{i=i+52|0;z=z+52|0;f=f+52|0}}if((i|0)==61)return h|0;return 0}function de(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;x=z+88|0;u=z+80|0;v=z+72|0;t=z+64|0;q=z+56|0;p=z+48|0;m=z+40|0;k=z+32|0;j=z+24|0;h=z+16|0;r=z+100|0;s=z+96|0;w=z+92|0;c[s>>2]=0;y=b+200|0;if((f|0)!=8){Ub(g,1,8662,z)|0;Ub(g,1,8662,z+8|0)|0;g=0;i=z;return g|0}qb(e,y,2);qb(e+2|0,r,4);qb(e+6|0,w,1);qb(e+7|0,s,1);l=c[y>>2]|0;e=c[b+112>>2]|0;if(l>>>0>=(_(c[b+116>>2]|0,e)|0)>>>0){c[h>>2]=l;Ub(g,1,15258,h)|0;g=0;i=z;return g|0}f=c[b+164>>2]|0;o=(l>>>0)%(e>>>0)|0;n=(l>>>0)/(e>>>0)|0;e=c[r>>2]|0;do if((e+-1|0)>>>0<13){if((e|0)==12){c[j>>2]=12;Ub(g,2,15282,j)|0;e=c[r>>2]|0;break}c[k>>2]=e;Ub(g,1,15319,k)|0;g=0;i=z;return g|0}while(0);if(!e){Ub(g,4,15380,m)|0;c[b+72>>2]=1}e=c[s>>2]|0;do if(!e)e=c[f+(l*5640|0)+5588>>2]|0;else{e=((d[b+76>>0]|0)>>>4&1)+e|0;c[s>>2]=e;h=f+(l*5640|0)+5588|0;j=c[h>>2]|0;f=c[w>>2]|0;if((j+-1|0)>>>0>>0){c[p>>2]=f;c[p+4>>2]=j;Ub(g,1,15491,p)|0;c[b+72>>2]=1;g=0;i=z;return g|0}if(f>>>0>>0){c[h>>2]=e;break}c[q>>2]=f;c[q+4>>2]=e;Ub(g,1,15590,q)|0;c[b+72>>2]=1;g=0;i=z;return g|0}while(0);if((e|0)!=0?(e|0)==((c[w>>2]|0)+1|0):0){q=b+76|0;a[q>>0]=a[q>>0]|1}c[b+24>>2]=(c[b+72>>2]|0)==0?(c[r>>2]|0)+-12|0:0;c[b+8>>2]=16;e=c[b+60>>2]|0;if((e|0)==-1){if((o>>>0>=(c[b+28>>2]|0)>>>0?o>>>0<(c[b+36>>2]|0)>>>0:0)?n>>>0>=(c[b+32>>2]|0)>>>0:0)e=(n>>>0>=(c[b+40>>2]|0)>>>0&1)<<2&255;else e=4;r=b+76|0;a[r>>0]=a[r>>0]&-5|e}else{r=b+76|0;a[r>>0]=((c[y>>2]|0)!=(e|0)&1)<<2&255|a[r>>0]&-5}k=b+196|0;e=c[k>>2]|0;if(!e){g=1;i=z;return g|0}j=c[y>>2]|0;e=c[e+40>>2]|0;c[e+(j*40|0)>>2]=j;c[e+(j*40|0)+12>>2]=c[w>>2];f=c[s>>2]|0;if(f){c[e+(j*40|0)+4>>2]=f;c[e+(j*40|0)+8>>2]=c[s>>2];e=c[e+(j*40|0)+16>>2]|0;if(!e){x=Qc(c[s>>2]|0,24)|0;c[(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16>>2]=x;if(x){g=1;i=z;return g|0}Ub(g,1,15698,t)|0;g=0;i=z;return g|0}e=Tc(e,(c[s>>2]|0)*24|0)|0;f=(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16|0;if(!e){Uc(c[f>>2]|0);c[(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16>>2]=0;Ub(g,1,15698,v)|0;g=0;i=z;return g|0}else{c[f>>2]=e;g=1;i=z;return g|0}}if(!(c[e+(j*40|0)+16>>2]|0)){c[e+(j*40|0)+8>>2]=10;v=Qc(10,24)|0;f=c[y>>2]|0;e=c[(c[k>>2]|0)+40>>2]|0;c[e+(f*40|0)+16>>2]=v;if(!v){c[e+(f*40|0)+8>>2]=0;Ub(g,1,15698,u)|0;g=0;i=z;return g|0}else j=f}f=c[w>>2]|0;h=e+(j*40|0)+8|0;if(f>>>0<(c[h>>2]|0)>>>0){g=1;i=z;return g|0}f=f+1|0;c[h>>2]=f;e=Tc(c[e+(j*40|0)+16>>2]|0,f*24|0)|0;f=(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16|0;if(!e){Uc(c[f>>2]|0);y=c[y>>2]|0;w=c[(c[k>>2]|0)+40>>2]|0;c[w+(y*40|0)+16>>2]=0;c[w+(y*40|0)+8>>2]=0;Ub(g,1,15698,x)|0;g=0;i=z;return g|0}else{c[f>>2]=e;g=1;i=z;return g|0}return 0}function ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;p=s+48|0;q=s+40|0;k=s+32|0;n=s+56|0;j=s+52|0;c[n>>2]=e;r=b+80|0;l=c[r>>2]|0;o=b+8|0;if((c[o>>2]|0)==16)m=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else m=c[b+12>>2]|0;g=m+5636|0;h=a[g>>0]|0;if(h&1){Ub(f,1,15025,s)|0;r=0;i=s;return r|0}a[g>>0]=h|1;if(e>>>0<5){Ub(f,1,15089,s+8|0)|0;r=0;i=s;return r|0}qb(d,m,1);if((c[m>>2]|0)>>>0>7){Ub(f,1,15115,s+16|0)|0;r=0;i=s;return r|0}qb(d+1|0,j,1);j=c[j>>2]|0;g=m+4|0;c[g>>2]=j;if((j|0)>4){Ub(f,1,15149,s+24|0)|0;c[g>>2]=-1}g=m+8|0;qb(d+2|0,g,2);g=c[g>>2]|0;if((g+-1|0)>>>0>65534){c[k>>2]=g;Ub(f,1,15190,k)|0;r=0;i=s;return r|0}k=c[b+172>>2]|0;c[m+12>>2]=(k|0)==0?g:k;qb(d+4|0,m+16|0,1);k=d+5|0;c[n>>2]=e+-5;j=c[l+16>>2]|0;if(j){d=c[m>>2]&1;g=c[m+5584>>2]|0;h=0;do{c[g+(h*1080|0)>>2]=d;h=h+1|0}while(h>>>0>>0)}if(!(Fe(b,0,k,n,f)|0)){Ub(f,1,15089,q)|0;r=0;i=s;return r|0}if(c[n>>2]|0){Ub(f,1,15089,p)|0;r=0;i=s;return r|0}if((c[o>>2]|0)==16)g=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else g=c[b+12>>2]|0;g=c[g+5584>>2]|0;e=g+4|0;h=c[e>>2]|0;m=h<<2;if((c[(c[r>>2]|0)+16>>2]|0)>>>0<=1){r=1;i=s;return r|0}n=g+8|0;o=g+12|0;b=g+16|0;f=g+20|0;p=g+812|0;q=g+944|0;c[g+1084>>2]=h;j=c[n>>2]|0;c[g+1088>>2]=j;d=c[o>>2]|0;c[g+1092>>2]=d;k=c[b>>2]|0;c[g+1096>>2]=k;l=c[f>>2]|0;c[g+1100>>2]=l;Ui(g+1892|0,p|0,m|0)|0;Ui(g+2024|0,q|0,m|0)|0;if((c[(c[r>>2]|0)+16>>2]|0)>>>0<=2){r=1;i=s;return r|0}c[g+2164>>2]=h;c[g+2168>>2]=j;c[g+2172>>2]=d;c[g+2176>>2]=k;c[g+2180>>2]=l;Ui(g+2972|0,p|0,m|0)|0;Ui(g+3104|0,q|0,m|0)|0;if((c[(c[r>>2]|0)+16>>2]|0)>>>0>3)h=3;else{r=1;i=s;return r|0}while(1){j=c[n>>2]|0;d=c[o>>2]|0;k=c[b>>2]|0;l=c[f>>2]|0;c[g+3244>>2]=c[e>>2];c[g+3248>>2]=j;c[g+3252>>2]=d;c[g+3256>>2]=k;c[g+3260>>2]=l;Ui(g+4052|0,p|0,m|0)|0;Ui(g+4184|0,q|0,m|0)|0;h=h+1|0;if(h>>>0>=(c[(c[r>>2]|0)+16>>2]|0)>>>0){g=1;break}else g=g+1080|0}i=s;return g|0} +function lg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+272|0;n=u;s=u+136|0;t=u+8|0;if(!a){t=0;i=u;return t|0}m=a+4|0;if((c[a>>2]|0)==(b|0)?(c[m>>2]|0)==(d|0):0)f=a+8|0;else{c[a>>2]=b;c[m>>2]=d;c[s>>2]=b;c[t>>2]=d;f=a+8|0;c[f>>2]=0;g=0;j=d;k=b;l=0;while(1){r=_(j,k)|0;k=(k+1|0)/2|0;h=l+1|0;c[s+(h<<2)>>2]=k;j=(j+1|0)/2|0;c[t+(h<<2)>>2]=j;g=g+r|0;if(r>>>0<=1)break;else l=h}c[f>>2]=g;if(!g){f=a+12|0;g=c[f>>2]|0;if(g){Uc(g);c[f>>2]=0}Uc(a);t=0;i=u;return t|0}h=g<<4;j=a+16|0;k=a+12|0;do if(h>>>0>(c[j>>2]|0)>>>0){g=Tc(c[k>>2]|0,h)|0;if(g){c[k>>2]=g;d=c[j>>2]|0;Qi(g+d|0,0,h-d|0)|0;c[j>>2]=h;d=c[m>>2]|0;b=c[a>>2]|0;break}Ub(e,1,20166,n)|0;f=c[k>>2]|0;if(f){Uc(f);c[k>>2]=0}Uc(a);t=0;i=u;return t|0}while(0);g=c[k>>2]|0;b=g+((_(d,b)|0)<<4)|0;if(l){r=0;d=b;do{p=c[t+(r<<2)>>2]|0;a:do if((p|0)>0){q=c[s+(r<<2)>>2]|0;if((q|0)<=0){h=p+-1|0;j=0;while(1){o=(j&1|0)!=0|(j|0)==(h|0);k=o?d:b+(q<<4)|0;d=o?d:b;j=j+1|0;if((j|0)>=(p|0)){b=k;break a}else b=k}}o=((q+2+((q|0)<2?~q:-3)|0)>>>1)+1|0;e=p+-1|0;n=0;while(1){m=q;k=d;while(1){c[g>>2]=k;h=g+16|0;j=m;m=m+-2|0;if((m|0)>-1){c[h>>2]=k;g=g+32|0}else g=h;if((j|0)<=2)break;else k=k+16|0}d=d+(o<<4)|0;m=(n&1|0)!=0|(n|0)==(e|0);h=m?d:b+(q<<4)|0;d=m?d:b;n=n+1|0;if((n|0)>=(p|0)){b=h;break}else b=h}}while(0);r=r+1|0}while((r|0)!=(l|0))}c[g>>2]=0}f=c[f>>2]|0;if(!f){t=a;i=u;return t|0}g=0;b=c[a+12>>2]|0;while(1){c[b+4>>2]=999;c[b+8>>2]=0;c[b+12>>2]=0;g=g+1|0;if((g|0)==(f|0))break;else b=b+16|0}i=u;return a|0}function mg(a){a=a|0;var b=0,d=0;if(!a)return;b=a+12|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}Uc(a);return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;b=(c[a+12>>2]|0)+(b<<4)|0;if(!b)return;while(1){a=b+4|0;if((c[a>>2]|0)<=(d|0)){b=4;break}c[a>>2]=d;b=c[b>>2]|0;if(!b){b=4;break}}if((b|0)==4)return}function og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+128|0;j=k;d=(c[b+12>>2]|0)+(d<<4)|0;if(!(c[d>>2]|0)){f=0;g=j}else{f=d;b=j;while(1){g=b+4|0;c[b>>2]=d;d=c[f>>2]|0;if(!(c[d>>2]|0)){f=0;break}else{f=d;b=g}}}while(1){h=d+8|0;b=c[h>>2]|0;if((f|0)>(b|0)){c[h>>2]=f;b=f}a:do if((b|0)<(e|0)){f=d+4|0;while(1){if((b|0)>=(c[f>>2]|0))break;Bg(a,0,1);b=b+1|0;if((b|0)>=(e|0)){d=b;break a}}d=d+12|0;if(!(c[d>>2]|0)){Bg(a,1,1);c[d>>2]=1;d=b}else d=b}else d=b;while(0);c[h>>2]=d;if((g|0)==(j|0))break;h=g+-4|0;f=d;d=c[h>>2]|0;g=h}i=k;return}function pg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+128|0;j=k;d=(c[b+12>>2]|0)+(d<<4)|0;if(!(c[d>>2]|0)){b=0;g=j}else{f=d;b=j;while(1){g=b+4|0;c[b>>2]=d;d=c[f>>2]|0;if(!(c[d>>2]|0)){b=0;break}else{f=d;b=g}}}while(1){h=d+8|0;f=c[h>>2]|0;if((b|0)>(f|0))c[h>>2]=b;else b=f;d=d+4|0;a:do if((b|0)<(e|0)){while(1){if((b|0)>=(c[d>>2]|0))break a;if(Cg(a,1)|0)break;b=b+1|0;if((b|0)>=(e|0))break a}c[d>>2]=b}while(0);c[h>>2]=b;if((g|0)==(j|0))break;h=g+-4|0;d=c[h>>2]|0;g=h}i=k;return (c[d>>2]|0)<(e|0)|0}function qg(){var a=0,b=0;a=Qc(1,12)|0;if(!a){a=0;return a|0}c[a+4>>2]=10;b=Qc(10,4)|0;c[a+8>>2]=b;if(b){b=a;return b|0}Uc(a);b=0;return b|0}function rg(a){a=a|0;var b=0;if(!a)return;b=c[a+8>>2]|0;if(b)Uc(b);Uc(a);return}function sg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;g=a+4|0;f=c[g>>2]|0;e=c[a>>2]|0;do if((f|0)==(e|0)){f=f+10|0;c[g>>2]=f;e=a+8|0;f=Tc(c[e>>2]|0,f<<2)|0;if(f){c[e>>2]=f;e=c[a>>2]|0;break}Uc(c[e>>2]|0);c[g>>2]=0;c[a>>2]=0;Ub(d,1,20214,h)|0;a=0;i=j;return a|0}else f=c[a+8>>2]|0;while(0);c[f+(e<<2)>>2]=b;c[a>>2]=e+1;a=1;i=j;return a|0}function tg(a){a=a|0;return c[a>>2]|0}function ug(a){a=a|0;return c[a+8>>2]|0}function vg(a){a=a|0;c[a>>2]=0;return}function wg(){return Pc(20)|0}function xg(a){a=a|0;if(!a)return;Uc(a);return}function yg(a){a=a|0;return (c[a+8>>2]|0)-(c[a>>2]|0)|0}function zg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=b+d;c[a+8>>2]=b;c[a+12>>2]=0;c[a+16>>2]=8;return}function Ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=b+d;c[a+8>>2]=b;c[a+12>>2]=0;c[a+16>>2]=0;return}function Bg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!e)return;k=b+16|0;l=b+12|0;m=b+8|0;h=b+4|0;b=c[k>>2]|0;j=e+-1|0;do{i=d>>>j&1;if(!b){g=c[l>>2]|0;b=g<<8&65280;c[l>>2]=b;b=(b|0)==65280?7:8;c[k>>2]=b;f=c[m>>2]|0;if(f>>>0<(c[h>>2]|0)>>>0){c[m>>2]=f+1;a[f>>0]=g;b=c[k>>2]|0}}b=b+-1|0;c[k>>2]=b;c[l>>2]=i<>2];j=j+-1|0}while(j>>>0>>0);return}function Cg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!b){b=0;return b|0}j=a+16|0;k=a+12|0;l=a+8|0;h=a+4|0;e=c[j>>2]|0;f=c[k>>2]|0;i=b+-1|0;a=0;do{if(!e){g=f<<8&65280;c[k>>2]=g;e=(g|0)==65280?7:8;c[j>>2]=e;f=c[l>>2]|0;if(f>>>0<(c[h>>2]|0)>>>0){c[l>>2]=f+1;f=d[f>>0]|0|g;c[k>>2]=f}else f=g}e=e+-1|0;c[j>>2]=e;a=((f>>>e&1)<>>0>>0);return a|0}function Dg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=b+12|0;d=c[f>>2]|0;i=d<<8&65280;c[f>>2]=i;g=b+16|0;c[g>>2]=(i|0)==65280?7:8;i=b+8|0;e=c[i>>2]|0;h=b+4|0;if(e>>>0>=(c[h>>2]|0)>>>0){i=0;return i|0}c[i>>2]=e+1;a[e>>0]=d;if((c[g>>2]|0)!=7){i=1;return i|0}d=c[f>>2]|0;b=d<<8&65280;c[f>>2]=b;c[g>>2]=(b|0)==65280?7:8;b=c[i>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0){i=0;return i|0}c[i>>2]=b+1;a[b>>0]=d;i=1;return i|0}function Eg(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;h=a+12|0;b=c[h>>2]|0;do if((b&255|0)==255){f=b<<8&65280;c[h>>2]=f;b=a+16|0;c[b>>2]=(f|0)==65280?7:8;g=a+8|0;e=c[g>>2]|0;if(e>>>0<(c[a+4>>2]|0)>>>0){c[g>>2]=e+1;c[h>>2]=d[e>>0]|0|f;break}else{a=0;return a|0}}else b=a+16|0;while(0);c[b>>2]=0;a=1;return a|0}function Fg(a){a=a|0;return Pg(a,1)|0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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;D=i;i=i+32|0;B=D+16|0;C=D;k=c[a+24>>2]|0;j=(c[k+8>>2]|0)-(c[k>>2]|0)|0;h=(c[k+12>>2]|0)-(c[k+4>>2]|0)|0;A=(c[a+8>>2]|0)-(c[a>>2]|0)|0;if((b|0)==1){C=1;i=D;return C|0}g=b+-1|0;f=(g|0)==0;if(f)b=0;else{d=k;e=g;b=0;do{z=d;d=d+136|0;y=(c[z+144>>2]|0)-(c[d>>2]|0)|0;b=b>>>0>>0?y:b;z=(c[z+148>>2]|0)-(c[z+140>>2]|0)|0;b=b>>>0>>0?z:b;e=e+-1|0}while((e|0)!=0);b=b<<2}z=Rc(b)|0;c[B>>2]=z;if(!z){C=0;i=D;return C|0}c[C>>2]=z;if(!f){s=a+32|0;t=B+8|0;u=C+8|0;v=B+4|0;w=B+12|0;x=C+4|0;y=C+12|0;do{q=c[s>>2]|0;n=k;k=k+136|0;c[t>>2]=j;c[u>>2]=h;o=c[n+144>>2]|0;p=c[k>>2]|0;e=j;j=o-p|0;b=c[n+148>>2]|0;n=n+140|0;r=c[n>>2]|0;d=h;h=b-r|0;c[v>>2]=j-e;c[w>>2]=(p|0)%2|0;r=(b|0)==(r|0);if(!r){m=j<<2;b=0;while(1){a=_(b,A)|0;l=q+(a<<2)|0;if(e){d=l;f=z+(c[w>>2]<<2)|0;while(1){e=e+-1|0;c[f>>2]=c[d>>2];if(!e)break;else{d=d+4|0;f=f+8|0}}}d=c[v>>2]|0;if(d){e=q+((c[t>>2]|0)+a<<2)|0;f=z+(1-(c[w>>2]|0)<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+4|0;f=f+8|0}}}Qg(B);Ui(l|0,z|0,m|0)|0;b=b+1|0;if((b|0)==(h|0))break;e=c[t>>2]|0}d=c[u>>2]|0;b=c[n>>2]|0}c[x>>2]=h-d;c[y>>2]=(b|0)%2|0;a:do if((o|0)!=(p|0)){b=0;while(1){if(d){e=q+(b<<2)|0;f=z+(c[y>>2]<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+(A<<2)|0;f=f+8|0}}}d=c[x>>2]|0;if(d){e=q+((_(c[u>>2]|0,A)|0)+b<<2)|0;f=z+(1-(c[y>>2]|0)<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+(A<<2)|0;f=f+8|0}}}Qg(C);if(!r){d=0;do{c[q+((_(d,A)|0)+b<<2)>>2]=c[z+(d<<2)>>2];d=d+1|0}while((d|0)!=(h|0))}b=b+1|0;if((b|0)==(j|0))break a;d=c[u>>2]|0}}while(0);g=g+-1|0}while((g|0)!=0)}Sc(z);C=1;i=D;return C|0}function Hg(a){a=a|0;if(!a){a=0;return a|0}a=(a+-1|0)>>>0<2?1:2;return a|0}function Ig(a,b){a=a|0;b=b|0;return +(+h[56+(b*80|0)+(a<<3)>>3])}function Jg(a){a=a|0;return Pg(a,2)|0}function Kg(a){a=a|0;return 0}function Lg(a,b){a=a|0;b=b|0;return +(+h[376+(b*80|0)+(a<<3)>>3])}function Mg(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=((c[k>>2]|0)*3|0)+-2|0;if(!l)return;m=a+20|0;n=a+24|0;o=0;do{if(!o){e=0;f=0}else{f=o+-1|0;e=((f>>>0)/3|0)+1|0;f=((f>>>0)%3|0)+1|0}if((f|0)==0|(c[m>>2]|0)==0)g=0;else g=(f+-1|0)>>>0<2?1:2;if(!(c[n>>2]|0))d=1.0;else d=+(1<>2]|0)+~e<<3)>>3];j=~~+M(+(d*8192.0));i=g+b|0;if((j|0)>1){e=j;f=0;while(1){e=e>>1;if((e|0)<=1)break;else f=f+1|0}g=j;e=0;do{g=g>>1;e=e+1|0}while((g|0)>1);f=f+-12|0}else{f=-13;e=0}g=11-e|0;c[a+28+(o<<3)+4>>2]=((g|0)<0?j>>0-g:j<>2]=i-f;o=o+1|0}while((o|0)!=(l|0));return}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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;T=i;i=i+32|0;Q=T+16|0;R=T;m=c[a+24>>2]|0;n=c[m+8>>2]|0;o=c[m>>2]|0;k=c[m+12>>2]|0;l=c[m+4>>2]|0;P=a+8|0;h=c[P>>2]|0;j=c[a>>2]|0;O=h-j|0;g=b+-1|0;f=(g|0)==0;if(f)b=80;else{d=m;e=g;b=0;do{N=d;d=d+136|0;M=(c[N+144>>2]|0)-(c[d>>2]|0)|0;b=b>>>0>>0?M:b;N=(c[N+148>>2]|0)-(c[N+140>>2]|0)|0;b=b>>>0>>0?N:b;e=e+-1|0}while((e|0)!=0);b=(b<<4)+80|0}N=Rc(b)|0;c[Q>>2]=N;if(!N){S=0;i=T;return S|0}c[R>>2]=N;a:do if(!f){y=a+32|0;z=a+12|0;A=a+4|0;B=Q+8|0;C=R+8|0;D=Q+4|0;E=Q+12|0;F=R+4|0;G=R+12|0;H=O<<1;I=O<<2;J=O*3|0;L=j<<2;M=h<<2;K=L-M|0;L=M-L|0;M=h-j<<2;b=g;d=N;g=h;e=j;r=k-l|0;f=m;h=n-o|0;while(1){s=c[y>>2]|0;e=_((c[z>>2]|0)-(c[A>>2]|0)|0,g-e|0)|0;c[B>>2]=h;c[C>>2]=r;w=f+136|0;p=c[f+144>>2]|0;q=c[w>>2]|0;x=p-q|0;u=c[f+148>>2]|0;n=f+140|0;t=c[n>>2]|0;v=u-t|0;c[D>>2]=x-h;c[E>>2]=(q|0)%2|0;if((v|0)>3){g=(x|0)>0;h=(u+-4-t|0)>>>2;m=_(K,h)|0;h=s+(L+(_(M,h)|0)<<2)|0;j=s;k=e;l=v;while(1){Sg(Q,j,O,k);Tg(Q);if(g){f=x;do{o=f;f=f+-1|0;c[j+(f<<2)>>2]=c[N+(f<<4)>>2];c[j+(f+O<<2)>>2]=c[N+(f<<4)+4>>2];c[j+(f+H<<2)>>2]=c[N+(f<<4)+8>>2];c[j+(f+J<<2)>>2]=c[N+(f<<4)+12>>2]}while((o|0)>1)}l=l+-4|0;if((l|0)<=3)break;else{j=j+(I<<2)|0;k=k-I|0}}e=K+e+m|0}else h=s;g=v&3;b:do if(!g)S=21;else{Sg(Q,h,O,e);Tg(Q);if((x|0)>0)e=x;else{k=v-r|0;c[F>>2]=k;g=(c[n>>2]|0)%2|0;c[G>>2]=g;l=r;j=s;break}while(1){f=e;e=e+-1|0;switch(g|0){case 3:{c[h+(e+H<<2)>>2]=c[N+(e<<4)+8>>2];S=18;break}case 2:{S=18;break}case 1:{S=19;break}default:{}}if((S|0)==18){c[h+(e+O<<2)>>2]=c[N+(e<<4)+4>>2];S=19}if((S|0)==19){S=0;c[h+(e<<2)>>2]=c[N+(e<<4)>>2]}if((f|0)<=1){S=21;break b}}}while(0);if((S|0)==21){S=0;k=v-r|0;c[F>>2]=k;g=(c[n>>2]|0)%2|0;c[G>>2]=g;if((x|0)>3){o=(u|0)==(t|0);p=p+-4-q|0;n=c[C>>2]|0;l=(n|0)>0;j=1-g|0;m=(k|0)>0;f=s;h=x;while(1){if(l){e=0;do{r=d+((e<<1)+g<<4)|0;q=f+((_(e,O)|0)<<2)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(n|0))}if(m){e=0;do{r=d+(j+(e<<1)<<4)|0;q=f+((_(e+n|0,O)|0)<<2)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(k|0))}Tg(R);if(!o){d=c[R>>2]|0;e=0;do{r=f+((_(e,O)|0)<<2)|0;q=d+(e<<4)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(v|0))}h=h+-4|0;if((h|0)<=3)break;else f=f+16|0}l=n;j=s+((p+4&-4)<<2)|0}else{l=r;j=s}}h=x&3;if(h){d=c[R>>2]|0;if((l|0)>0){e=h<<2;f=0;do{Ui(d+((f<<1)+g<<4)|0,j+((_(f,O)|0)<<2)|0,e|0)|0;f=f+1|0}while((f|0)!=(l|0))}e=1-g|0;if((k|0)>0){f=h<<2;g=0;do{Ui(d+(e+(g<<1)<<4)|0,j+((_(g+l|0,O)|0)<<2)|0,f|0)|0;g=g+1|0}while((g|0)!=(k|0))}Tg(R);if((u|0)!=(t|0)){e=h<<2;f=0;do{Ui(j+((_(f,O)|0)<<2)|0,d+(f<<4)|0,e|0)|0;f=f+1|0}while((f|0)!=(v|0))}}b=b+-1|0;if(!b)break a;g=c[P>>2]|0;e=c[a>>2]|0;r=v;f=w;h=x}}while(0);Sc(N);S=1;i=T;return S|0}function Og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if(!e){e=(b|0)>0;if(!(e|(d|0)>1))return;if(e){e=a+((d<<1)+-2<<2)|0;f=0;do{j=f;f=f+1|0;k=a+((j<<1|1)<<2)|0;c[k>>2]=(c[k>>2]|0)-((c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((j|0)<(d|0)?a+(j<<1<<2)|0:e)>>2]|0)>>1)}while((f|0)!=(b|0))}if((d|0)<=0)return;f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;k=a+(h<<1<<2)|0;c[k>>2]=((c[e>>2]|0)+2+(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)>>2)+(c[k>>2]|0);h=h+1|0}while((h|0)!=(d|0));return}if((b|0)==1&(d|0)==0){c[a>>2]=c[a>>2]<<1;return}if((b|0)>0){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;i=a+(i<<2)|0;c[i>>2]=(c[i>>2]|0)-((c[e>>2]|0)+j>>1);k=k+1|0}while((k|0)!=(b|0))}if((d|0)<=0)return;e=a+((b<<1)+-2<<2)|0;f=0;do{j=f;f=f+1|0;k=a+((j<<1|1)<<2)|0;c[k>>2]=((c[((j|0)<(b|0)?a+(j<<1<<2)|0:e)>>2]|0)+2+(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)>>2)+(c[k>>2]|0)}while((f|0)!=(d|0));return}function Pg(a,b){a=a|0;b=b|0;var 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;w=(c[a+8>>2]|0)-(c[a>>2]|0)|0;g=c[a+16>>2]|0;i=g+-1|0;x=c[a+32>>2]|0;h=c[a+24>>2]|0;f=(i|0)==0;if(f)a=0;else{d=h;e=i;a=0;do{v=d;d=d+136|0;u=(c[v+144>>2]|0)-(c[d>>2]|0)|0;a=a>>>0>>0?u:a;v=(c[v+148>>2]|0)-(c[v+140>>2]|0)|0;a=a>>>0>>0?v:a;e=e+-1|0}while((e|0)!=0);a=a<<2}v=Pc(a)|0;if(!((a|0)==0|(v|0)!=0)){b=0;return b|0}if(!f){t=g+-2|0;u=t;a=h+(i*136|0)|0;t=h+(t*136|0)|0;while(1){q=c[a>>2]|0;s=(c[a+8>>2]|0)-q|0;m=c[a+4>>2]|0;o=(c[a+12>>2]|0)-m|0;p=(c[t+8>>2]|0)-(c[t>>2]|0)|0;a=c[t+12>>2]|0;d=c[t+4>>2]|0;l=a-d|0;q=q&1;m=m&1;n=o-l|0;r=(s|0)>0;a:do if(r){f=(a|0)==(d|0);i=(o|0)==(l|0);j=v+((m^1)<<2)|0;k=_(l,w)|0;h=v+(m<<2)|0;if((o|0)>0){g=0;while(1){d=x+(g<<2)|0;a=0;do{c[v+(a<<2)>>2]=c[x+((_(a,w)|0)+g<<2)>>2];a=a+1|0}while((a|0)!=(o|0));ab[b&3](v,n,l,m);if(!f){e=l;a=h;while(1){e=e+-1|0;c[d>>2]=c[a>>2];if(!e)break;else{d=d+(w<<2)|0;a=a+8|0}}}if(!i){a=n;d=x+(g+k<<2)|0;e=j;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}g=g+1|0;if((g|0)==(s|0))break a}}if(f){d=0;while(1){ab[b&3](v,n,l,m);if(!i){a=n;e=x+(d+k<<2)|0;f=j;while(1){a=a+-1|0;c[e>>2]=c[f>>2];if(!a)break;else{e=e+(w<<2)|0;f=f+8|0}}}d=d+1|0;if((d|0)==(s|0))break a}}else f=0;do{ab[b&3](v,n,l,m);a=l;d=x+(f<<2)|0;e=h;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}if(!i){a=n;d=x+(f+k<<2)|0;e=j;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}f=f+1|0}while((f|0)!=(s|0))}while(0);g=s-p|0;if((o|0)>0){h=(p|0)>0;i=v+(q<<2)|0;j=(g|0)>0;k=v+((q^1)<<2)|0;l=0;do{f=_(l,w)|0;d=x+(f<<2)|0;if(r){a=0;do{c[v+(a<<2)>>2]=c[x+(a+f<<2)>>2];a=a+1|0}while((a|0)!=(s|0))}ab[b&3](v,g,p,q);if(h){e=0;a=i;while(1){c[d>>2]=c[a>>2];e=e+1|0;if((e|0)==(p|0))break;else{d=d+4|0;a=a+8|0}}}if(j){e=0;a=x+(f+p<<2)|0;d=k;while(1){c[a>>2]=c[d>>2];e=e+1|0;if((e|0)==(g|0))break;else{a=a+4|0;d=d+8|0}}}l=l+1|0}while((l|0)!=(o|0))}if(!u)break;else{a=t;u=u+-1|0;t=t+-136|0}}}Uc(v);b=1;return b|0}function Qg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=c[a+4>>2]|0;k=c[a+8>>2]|0;if(!(c[a+12>>2]|0)){e=(j|0)>0;if(!(e|(k|0)>1))return;if((k|0)>0){b=i+4|0;d=(j<<1)+-1|0;f=0;do{if((f|0)<1)a=b;else a=i+((((f|0)>(j|0)?j:f)<<1)+-1<<2)|0;g=f<<1;h=i+(g<<2)|0;c[h>>2]=(c[h>>2]|0)-((c[a>>2]|0)+2+(c[i+(((f|0)<(j|0)?g|1:d)<<2)>>2]|0)>>2);f=f+1|0}while((f|0)!=(k|0))}if(!e)return;a=i+((k<<1)+-2<<2)|0;b=0;do{g=b<<1;f=b;b=b+1|0;h=i+((g|1)<<2)|0;c[h>>2]=((c[((b|0)<(k|0)?i+(b<<1<<2)|0:a)>>2]|0)+(c[((f|0)<(k|0)?i+(g<<2)|0:a)>>2]|0)>>1)+(c[h>>2]|0)}while((b|0)!=(j|0));return}if((j|0)==1&(k|0)==0){c[i>>2]=(c[i>>2]|0)/2|0;return}if((k|0)>0){a=i+((j<<1)+-2<<2)|0;b=0;do{g=b<<1;f=b;b=b+1|0;h=i+((g|1)<<2)|0;c[h>>2]=(c[h>>2]|0)-((c[((f|0)<(j|0)?i+(g<<2)|0:a)>>2]|0)+2+(c[((b|0)<(j|0)?i+(b<<1<<2)|0:a)>>2]|0)>>2)}while((b|0)!=(k|0))}if((j|0)<=0)return;b=i+4|0;d=(k<<1)+-1|0;e=i+(d<<2)|0;h=0;do{f=h<<1;g=c[i+(((h|0)<(k|0)?f|1:d)<<2)>>2]|0;if((h|0)>=1)if((h|0)>(k|0))a=e;else a=i+(f+-1<<2)|0;else a=b;f=i+(f<<2)|0;c[f>>2]=((c[a>>2]|0)+g>>1)+(c[f>>2]|0);h=h+1|0}while((h|0)!=(j|0));return}function Rg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!e){j=(b|0)>0;if(!(j|(d|0)>1))return;if(j){e=a+((d<<1)+-2<<2)|0;f=0;do{m=f;f=f+1|0;l=(c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((m|0)<(d|0)?a+(m<<1<<2)|0:e)>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,12993,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+((m<<1|1)<<2)|0;c[m>>2]=(c[m>>2]|0)-l}while((f|0)!=(b|0))}i=(d|0)>0;if(i){f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;l=(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)+(c[e>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,434,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+(h<<1<<2)|0;c[m>>2]=(c[m>>2]|0)-l;h=h+1|0}while((h|0)!=(d|0))}if(j){e=a+((d<<1)+-2<<2)|0;f=0;do{m=f;f=f+1|0;l=(c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((m|0)<(d|0)?a+(m<<1<<2)|0:e)>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,7233,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+((m<<1|1)<<2)|0;c[m>>2]=l+(c[m>>2]|0)}while((f|0)!=(b|0))}if(i){f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;l=(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)+(c[e>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,3633,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+(h<<1<<2)|0;c[m>>2]=l+(c[m>>2]|0);h=h+1|0}while((h|0)!=(d|0))}if(j){e=0;do{m=a+((e<<1|1)<<2)|0;l=c[m>>2]|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,5038,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;c[m>>2]=l;e=e+1|0}while((e|0)!=(b|0))}if(i)e=0;else return;do{b=a+(e<<1<<2)|0;m=c[b>>2]|0;m=Zi(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;c[b>>2]=m;e=e+1|0}while((e|0)!=(d|0));return}m=(d|0)>0;if(!((b|0)>1|m))return;l=(b|0)>0;if(l){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;e=(c[e>>2]|0)+j|0;e=Zi(e|0,((e|0)<0)<<31>>31|0,12993,0)|0;e=Si(e|0,C|0,4096,0)|0;e=Ti(e|0,C|0,13)|0;j=a+(i<<2)|0;c[j>>2]=(c[j>>2]|0)-e;k=k+1|0}while((k|0)!=(b|0))}if(m){e=a+((b<<1)+-2<<2)|0;f=0;do{k=f;f=f+1|0;j=(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((k|0)<(b|0)?a+(k<<1<<2)|0:e)>>2]|0)|0;j=Zi(j|0,((j|0)<0)<<31>>31|0,434,0)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;k=a+((k<<1|1)<<2)|0;c[k>>2]=(c[k>>2]|0)-j}while((f|0)!=(d|0))}if(l){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;e=(c[e>>2]|0)+j|0;e=Zi(e|0,((e|0)<0)<<31>>31|0,7233,0)|0;e=Si(e|0,C|0,4096,0)|0;e=Ti(e|0,C|0,13)|0;j=a+(i<<2)|0;c[j>>2]=e+(c[j>>2]|0);k=k+1|0}while((k|0)!=(b|0))}if(m){e=a+((b<<1)+-2<<2)|0;f=0;do{k=f;f=f+1|0;j=(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((k|0)<(b|0)?a+(k<<1<<2)|0:e)>>2]|0)|0;j=Zi(j|0,((j|0)<0)<<31>>31|0,3633,0)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;k=a+((k<<1|1)<<2)|0;c[k>>2]=j+(c[k>>2]|0)}while((f|0)!=(d|0))}if(l){e=0;do{l=a+(e<<1<<2)|0;k=c[l>>2]|0;k=Zi(k|0,((k|0)<0)<<31>>31|0,5038,0)|0;k=Si(k|0,C|0,4096,0)|0;k=Ti(k|0,C|0,13)|0;c[l>>2]=k;e=e+1|0}while((e|0)!=(b|0))}if(m)e=0;else return;do{b=a+((e<<1|1)<<2)|0;m=c[b>>2]|0;m=Zi(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;c[b>>2]=m;e=e+1|0}while((e|0)!=(d|0));return}function Sg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=c[a>>2]|0;i=c[a+12>>2]|0;q=c[a+8>>2]|0;n=d*3|0;l=1-i|0;k=a+4|0;j=q;a=0;while(1){h=m+(i<<4)|0;if(((j+n|0)<(e|0)?(b&15|0)==0:0)?((h|d)&15|0)==0:0){if((j|0)>0){f=0;do{h=f<<3;c[m+(i<<4)+(h<<2)>>2]=c[b+(f<<2)>>2];g=f+d|0;c[m+(i<<4)+((h|1)<<2)>>2]=c[b+(g<<2)>>2];g=g+d|0;c[m+(i<<4)+((h|2)<<2)>>2]=c[b+(g<<2)>>2];c[m+(i<<4)+((h|3)<<2)>>2]=c[b+(g+d<<2)>>2];f=f+1|0}while((f|0)!=(j|0))}}else r=3;if((r|0)==3?(r=0,(j|0)>0):0){h=0;do{f=h<<3;c[m+(i<<4)+(f<<2)>>2]=c[b+(h<<2)>>2];g=h+d|0;if(((g|0)<(e|0)?(c[m+(i<<4)+((f|1)<<2)>>2]=c[b+(g<<2)>>2],o=g+d|0,(o|0)<(e|0)):0)?(c[m+(i<<4)+((f|2)<<2)>>2]=c[b+(o<<2)>>2],p=o+d|0,(p|0)<(e|0)):0)c[m+(i<<4)+((f|3)<<2)>>2]=c[b+(p<<2)>>2];h=h+1|0}while((h|0)!=(j|0))}a=a+1|0;if((a|0)==2)break;else{b=b+(q<<2)|0;e=e-q|0;i=l;j=c[k>>2]|0}}return}function Tg(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0.0,o=0,p=0;do if(!(c[a+12>>2]|0)){d=c[a+8>>2]|0;if((c[a+4>>2]|0)>0){b=c[a>>2]|0;if((d|0)>0){i=0;f=1;j=9;break}else{i=0;h=1;break}}if((d|0)>1){e=0;f=1;j=7}else return}else{d=c[a+8>>2]|0;if((d|0)<=0)if((c[a+4>>2]|0)>1){b=c[a>>2]|0;i=1;h=0;break}else return;else{e=1;f=0;j=7}}while(0);if((j|0)==7){b=c[a>>2]|0;i=e;j=9}if((j|0)==9){e=0;do{j=e<<3;o=b+(i<<4)+(j<<2)|0;m=b+(i<<4)+((j|1)<<2)|0;n=+g[m>>2];h=b+(i<<4)+((j|2)<<2)|0;l=+g[h>>2];j=b+(i<<4)+((j|3)<<2)|0;k=+g[j>>2];g[o>>2]=+g[o>>2]*1.2301740646362305;g[m>>2]=n*1.2301740646362305;g[h>>2]=l*1.2301740646362305;g[j>>2]=k*1.2301740646362305;e=e+1|0}while((e|0)!=(d|0));h=f}e=c[a+4>>2]|0;if((e|0)>0){f=0;do{o=f<<3;j=b+(h<<4)+(o<<2)|0;a=b+(h<<4)+((o|1)<<2)|0;k=+g[a>>2];m=b+(h<<4)+((o|2)<<2)|0;l=+g[m>>2];o=b+(h<<4)+((o|3)<<2)|0;n=+g[o>>2];g[j>>2]=+g[j>>2]*1.625732421875;g[a>>2]=k*1.625732421875;g[m>>2]=l*1.625732421875;g[o>>2]=n*1.625732421875;f=f+1|0}while((f|0)!=(e|0))}p=b+(h<<4)|0;f=b+(i+1<<4)|0;j=e-i|0;j=(d|0)<(j|0)?d:j;Ug(p,f,d,j,-.4435068666934967);a=b+(i<<4)|0;m=b+(h+1<<4)|0;o=d-h|0;o=(e|0)<(o|0)?e:o;Ug(a,m,e,o,-.8829110860824585);Ug(p,f,d,j,.05298011749982834);Ug(a,m,e,o,1.5861343145370483);return}function Ug(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0.0;if((d|0)>0){m=d<<1;l=m+-2|0;h=+g[a>>2];i=+g[a+4>>2];j=+g[a+8>>2];f=+g[a+12>>2];a=b;k=0;while(1){w=a+-16|0;t=a+-12|0;v=+g[t>>2];q=a+-8|0;s=+g[q>>2];n=a+-4|0;p=+g[n>>2];x=h;h=+g[a>>2];u=i;i=+g[a+4>>2];r=j;j=+g[a+8>>2];o=f;f=+g[a+12>>2];g[w>>2]=+g[w>>2]+(x+h)*e;g[t>>2]=v+(u+i)*e;g[q>>2]=s+(r+j)*e;g[n>>2]=p+(o+f)*e;k=k+1|0;if((k|0)==(d|0))break;else a=a+32|0}a=b+(l<<4)|0;b=b+(m<<4)|0}if((d|0)>=(c|0))return;f=e+e;h=f*+g[a>>2];i=f*+g[a+4>>2];j=f*+g[a+8>>2];f=f*+g[a+12>>2];while(1){n=b+-16|0;q=b+-12|0;u=+g[q>>2];t=b+-8|0;v=+g[t>>2];w=b+-4|0;x=+g[w>>2];g[n>>2]=h+ +g[n>>2];g[q>>2]=i+u;g[t>>2]=j+v;g[w>>2]=f+x;d=d+1|0;if((d|0)==(c|0))break;else b=b+32|0}return}function Vg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=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,z=0;x=d<<2;y=Pc(d<<4)|0;if(!y){a=0;return a|0}z=y+x|0;Qi(y|0,0,x|0)|0;v=d+-1|0;u=(d|0)==0;if(!u){e=0;f=y;while(1){c[f>>2]=e;e=e+1|0;if((e|0)==(d|0))break;else f=f+4|0}}a:do if(v){q=v;j=0;e=0;r=a;s=1;t=y;while(1){k=r+(j<<2)|0;if(j>>>0>>0){i=j;f=k;h=0.0}else break;while(1){o=+g[f>>2];o=o>0.0?o:-o;w=o>h;e=w?i:e;h=w?o:h;i=i+1|0;if((i|0)==(d|0))break;else f=f+(d<<2)|0}if(h==0.0)break;if((e|0)!=(j|0)){w=e-j|0;p=t+(w<<2)|0;n=c[t>>2]|0;c[t>>2]=c[p>>2];c[p>>2]=n;w=r+((_(w,d)|0)<<2)|0;Ui(z|0,w|0,x|0)|0;Ui(w|0,r|0,x|0)|0;Ui(r|0,z|0,x|0)|0}f=j;p=j+1|0;o=+g[k>>2];if(s>>>0>>0){l=r+(p<<2)|0;n=p+q|0;m=s;i=r+(f+d<<2)|0;while(1){h=+g[i>>2]/o;g[i>>2]=h;f=s;j=i;k=l;while(1){j=j+4|0;g[j>>2]=+g[j>>2]-h*+g[k>>2];f=f+1|0;if((f|0)==(d|0))break;else k=k+4|0}m=m+1|0;if((m|0)==(d|0))break;else i=i+(n<<2)|0}}if(p>>>0>>0){q=q+-1|0;j=p;r=r+(d<<2)|0;s=s+1|0;t=t+4|0}else break a}Uc(y);a=0;return a|0}while(0);e=d<<1;w=z+(e<<2)|0;if(!u){u=z+(v+d<<2)|0;q=z+(e+v<<2)|0;r=a+((_(d,d)|0)+-1<<2)|0;s=~d;t=0;p=b;while(1){Qi(z|0,0,x|0)|0;g[z+(t<<2)>>2]=1.0;j=0;k=1;l=y;m=w;n=a;while(1){if(!j)h=0.0;else{e=1;f=w;i=n;h=0.0;while(1){h=h+ +g[i>>2]*+g[f>>2];e=e+1|0;if((e|0)==(k|0))break;else{f=f+4|0;i=i+4|0}}}g[m>>2]=+g[z+(c[l>>2]<<2)>>2]-h;j=j+1|0;if((j|0)==(d|0)){j=d;k=u;l=w;m=q;n=r;break}else{k=k+1|0;l=l+4|0;m=m+4|0;n=n+(d<<2)|0}}while(1){e=j;j=j+-1|0;o=+g[n>>2];if(e>>>0>>0){f=l;i=n;h=0.0;while(1){i=i+4|0;h=h+ +g[i>>2]*+g[f>>2];e=e+1|0;if((e|0)==(d|0))break;else f=f+4|0}}else h=0.0;l=l+-4|0;g[k>>2]=(+g[m>>2]-h)/o;if(!j){e=0;f=p;break}else{k=k+-4|0;m=m+-4|0;n=n+(s<<2)|0}}while(1){c[f>>2]=c[z+(e+d<<2)>>2];e=e+1|0;if((e|0)==(d|0))break;else f=f+(d<<2)|0}t=t+1|0;if((t|0)==(d|0))break;else p=p+4|0}}Uc(y);a=1;return a|0}function Wg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=Qc(1,44)|0;if(!g){g=0;return g|0}h=hh()|0;c[g>>2]=h;if(!h){ih(0);c[g>>2]=0;h=g+4|0;yh(c[h>>2]|0);c[h>>2]=0;if((c[g+40>>2]|0)==0?(d=g+8|0,b=c[d>>2]|0,(b|0)!=0):0){Sc(b);c[d>>2]=0}b=g+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(g);h=0;return h|0}h=xh()|0;b=g+4|0;c[b>>2]=h;if(h){c[g+40>>2]=a;h=g;return h|0}ih(c[g>>2]|0);c[g>>2]=0;yh(c[b>>2]|0);c[b>>2]=0;if((c[g+40>>2]|0)==0?(e=g+8|0,f=c[e>>2]|0,(f|0)!=0):0){Sc(f);c[e>>2]=0}b=g+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(g);h=0;return h|0}function Xg(a){a=a|0;var b=0,d=0,e=0;if(!a)return;ih(c[a>>2]|0);c[a>>2]=0;e=a+4|0;yh(c[e>>2]|0);c[e>>2]=0;if((c[a+40>>2]|0)==0?(b=a+8|0,d=c[b>>2]|0,(d|0)!=0):0){Sc(d);c[b>>2]=0}b=a+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(a);return}function Yg(a,f,h){a=a|0;f=f|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,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,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;ya=(c[f+8>>2]|0)-(c[f>>2]|0)|0;za=f+20|0;i=c[za>>2]|0;if(!i){a=1;return a|0}Aa=f+24|0;Ba=h+808|0;Ca=h+16|0;ta=a+4|0;va=a+8|0;wa=a+16|0;xa=a+20|0;sa=h+20|0;pa=f+32|0;qa=a+32|0;ra=a+12|0;h=i;oa=0;a:while(1){ma=c[Aa>>2]|0;na=ma+(oa*136|0)+24|0;f=c[na>>2]|0;if(f){ja=ma+(oa*136|0)+16|0;ka=ma+(oa*136|0)+20|0;la=oa+-1|0;h=c[ka>>2]|0;i=c[ja>>2]|0;ia=0;do{if(_(h,i)|0){da=ma+(oa*136|0)+28+(ia*36|0)+20|0;ea=ma+(oa*136|0)+28+(ia*36|0)+16|0;fa=ma+(oa*136|0)+28+(ia*36|0)|0;ga=ma+(oa*136|0)+28+(ia*36|0)+4|0;ha=ma+(oa*136|0)+28+(ia*36|0)+32|0;ca=0;do{f=c[da>>2]|0;aa=f+(ca*40|0)+16|0;ba=f+(ca*40|0)+20|0;if(_(c[ba>>2]|0,c[aa>>2]|0)|0){Z=f+(ca*40|0)+24|0;$=0;do{h=c[Z>>2]|0;S=c[ea>>2]|0;j=c[Ba>>2]|0;f=c[Ca>>2]|0;T=c[ta>>2]|0;U=c[a>>2]|0;V=h+($*56|0)+8|0;Y=h+($*56|0)+12|0;if(!(_g(a,(c[h+($*56|0)+16>>2]|0)-(c[V>>2]|0)|0,(c[h+($*56|0)+20>>2]|0)-(c[Y>>2]|0)|0)|0)){h=0;G=201;break a}W=h+($*56|0)+24|0;k=c[W>>2]|0;qh(U);rh(U,18,0,46);rh(U,17,0,3);rh(U,0,0,4);X=h+($*56|0)+48|0;i=c[X>>2]|0;if(i){N=h+($*56|0)+4|0;O=(f&1|0)!=0;P=(f&2|0)==0;Q=(f&8|0)==0;R=S<<8;M=(f&32|0)==0;f=k+j|0;h=2;L=0;do{k=c[N>>2]|0;K=O&(h>>>0<2?(f|0)<=((c[W>>2]|0)+-4|0):0);j=c[k+(L<<5)>>2]|0;if(j){i=(c[j>>2]|0)+(c[k+(L<<5)+4>>2]|0)|0;j=c[k+(L<<5)+16>>2]|0;if(!K){if(!(vh(U,i,j)|0)){h=0;G=201;break a}}else zh(T,i,j);I=k+(L<<5)+12|0;b:do if(c[I>>2]|0){J=P|K;H=0;while(1){c:do switch(h|0){case 0:{if(K){w=1<>1|w;j=c[xa>>2]|0;if(!j)break c;v=0-w|0;i=c[wa>>2]|0;u=0;while(1){t=u;u=u+4|0;if(!i)i=0;else{q=(t|0)==-4;r=t|3;s=0;do{d:do if(!q)if(Q){o=t;do{if(o>>>0>=(c[xa>>2]|0)>>>0)break d;m=o;o=o+1|0;i=(_(c[qa>>2]|0,o)|0)+s|0;j=i+1|0;k=c[ra>>2]|0;l=k+(j<<1)|0;m=(_(c[wa>>2]|0,m)|0)+s|0;m=(c[va>>2]|0)+(m<<2)|0;n=c[ta>>2]|0;G=b[l>>1]|0;if((G&255|0)!=0&(G&20480|0)==0){if(Ah(n)|0){D=Ah(n)|0;c[m>>2]=(D|0)!=0?v:w;F=c[qa>>2]|0;G=k+(j-F<<1)|0;E=k+(F+j<<1)|0;C=k+(j+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=i+2|0;C=k+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=k+(i<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[l>>1]=e[l>>1]|4096;C=k+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=k+(F+i<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=k+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[l>>1]=e[l>>1]|16384}}while(o>>>0>>0)}else{p=t;do{i=c[xa>>2]|0;if(p>>>0>=i>>>0)break d;F=p;p=p+1|0;j=(_(c[qa>>2]|0,p)|0)+s|0;k=j+1|0;l=c[ra>>2]|0;m=l+(k<<1)|0;n=(_(c[wa>>2]|0,F)|0)+s|0;n=(c[va>>2]|0)+(n<<2)|0;o=c[ta>>2]|0;G=b[m>>1]|0;G=(F|0)==(r|0)|(F|0)==(i+-1|0)?G&-1095:G;if((G&255|0)!=0&(G&20480|0)==0){if(Ah(o)|0){D=Ah(o)|0;c[n>>2]=(D|0)!=0?v:w;F=c[qa>>2]|0;G=l+(k-F<<1)|0;E=l+(F+k<<1)|0;C=l+(k+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=j+2|0;C=l+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=l+(j<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[m>>1]=e[m>>1]|4096;C=l+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=l+(F+j<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=l+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[m>>1]=e[m>>1]|16384}}while(p>>>0>>0)}while(0);s=s+1|0;i=c[wa>>2]|0}while(s>>>0>>0);j=c[xa>>2]|0}if(u>>>0>=j>>>0){G=163;break c}}}if(Q){k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;r=1<>1|r;i=c[xa>>2]|0;j=c[wa>>2]|0;if(i>>>0>3){o=j;n=0;while(1){if(!j){j=o;m=0}else{j=0;do{G=(c[qa>>2]|0)+j|0;$g(a,l+(G<<1)|0,k+(j<<2)|0,S,r);i=(c[wa>>2]|0)+j|0;G=(c[qa>>2]|0)+G|0;$g(a,l+(G<<1)|0,k+(i<<2)|0,S,r);i=(c[wa>>2]|0)+i|0;G=(c[qa>>2]|0)+G|0;$g(a,l+(G<<1)|0,k+(i<<2)|0,S,r);$g(a,l+((c[qa>>2]|0)+G<<1)|0,k+((c[wa>>2]|0)+i<<2)|0,S,r);j=j+1|0;i=c[wa>>2]|0}while(j>>>0>>0);j=i;m=i;i=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=l+(c[qa>>2]<<2<<1)|0;n=n+4|0;if(n>>>0<(i&-4)>>>0){o=j;j=m}else{q=l;p=n;break}}}else{q=l;p=0}if(!j){G=163;break c}else o=0;while(1){if(p>>>0>>0){l=k+(o<<2)|0;m=q+(o<<1)|0;n=p;while(1){m=m+(c[qa>>2]<<1)|0;$g(a,m,l,S,r);j=c[wa>>2]|0;n=n+1|0;i=c[xa>>2]|0;if(n>>>0>=i>>>0)break;else l=l+(j<<2)|0}}o=o+1|0;if(o>>>0>=j>>>0){G=163;break c}}}w=1<>1|w;i=c[xa>>2]|0;if(!i){G=163;break c}x=0-w|0;j=c[wa>>2]|0;l=j;v=0;while(1){u=v;v=v+4|0;do if(!j){k=l;j=0}else{t=u|3;if((u|0)==-4){k=l;j=l;break}else s=0;do{r=u;do{i=c[xa>>2]|0;if(r>>>0>=i>>>0)break;G=r;r=r+1|0;l=(_(c[qa>>2]|0,r)|0)+s|0;m=l+1|0;n=c[ra>>2]|0;o=n+(m<<1)|0;p=(_(c[wa>>2]|0,G)|0)+s|0;p=(c[va>>2]|0)+(p<<2)|0;q=c[a>>2]|0;j=b[o>>1]|0;i=(G|0)==(t|0)|(G|0)==(i+-1|0)?j&-1095:j;j=i&255;if((j|0)!=0&(i&20480|0)==0){k=q+100|0;c[k>>2]=q+24+(d[20267+(j|R)>>0]<<2);if(wh(q)|0){F=i>>>4&255;c[k>>2]=q+24+(d[21291+F>>0]<<2);G=wh(q)|0;F=d[21547+F>>0]|0;D=F^G;c[p>>2]=(G|0)!=(F|0)?x:w;F=c[qa>>2]|0;G=n+(m-F<<1)|0;E=n+(F+m<<1)|0;C=n+(m+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=l+2|0;C=n+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=n+(l<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[o>>1]=e[o>>1]|4096;C=n+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=n+(F+l<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=n+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[o>>1]=e[o>>1]|16384}}while(r>>>0>>0);s=s+1|0;i=c[wa>>2]|0}while(s>>>0>>0);k=i;j=i;i=c[xa>>2]|0}while(0);if(v>>>0>=i>>>0){G=163;break}else l=k}break}case 1:{if(K){q=1<>1;r=(f|0)>0?0-q|0:-1;j=c[xa>>2]|0;if(!j)break c;k=c[wa>>2]|0;i=k;p=0;while(1){o=p;p=p+4|0;if(!k){l=i;k=0}else{n=(o|0)==-4;m=0;do{l=m;m=m+1|0;if(!n){k=o;do{if(k>>>0>=(c[xa>>2]|0)>>>0)break;j=k;k=k+1|0;i=(_(c[qa>>2]|0,k)|0)+m|0;i=(c[ra>>2]|0)+(i<<1)|0;j=(_(c[wa>>2]|0,j)|0)+l|0;j=(c[va>>2]|0)+(j<<2)|0;if((b[i>>1]&20480)==4096){F=(Ah(c[ta>>2]|0)|0)!=0;F=F?q:r;G=c[j>>2]|0;c[j>>2]=((G|0)<0?0-F|0:F)+G;b[i>>1]=e[i>>1]|8192}}while(k>>>0

>>0);i=c[wa>>2]|0}}while(m>>>0>>0);l=i;k=i;j=c[xa>>2]|0}if(p>>>0>=j>>>0){G=163;break c}else i=l}}if(!Q){t=1<>1;u=(f|0)>0?0-t|0:-1;i=c[xa>>2]|0;if(!i){G=163;break c}j=c[wa>>2]|0;k=j;s=0;while(1){r=s;s=s+4|0;if(!j)j=0;else{p=(r|0)==-4;q=r|3;i=k;o=0;do{n=o;o=o+1|0;if(!p){l=r;do{i=c[xa>>2]|0;if(l>>>0>=i>>>0)break;F=l;l=l+1|0;j=(_(c[qa>>2]|0,l)|0)+o|0;j=(c[ra>>2]|0)+(j<<1)|0;k=(_(c[wa>>2]|0,F)|0)+n|0;k=(c[va>>2]|0)+(k<<2)|0;m=c[a>>2]|0;G=b[j>>1]|0;i=(F|0)==(q|0)|(F|0)==(i+-1|0)?G&-1095:G;if((i&20480|0)==4096){c[m+100>>2]=m+24+(((i&8192|0)!=0?16:(i&255|0)!=0?15:14)<<2);F=(wh(m)|0)!=0;F=F?t:u;G=c[k>>2]|0;c[k>>2]=((G|0)<0?0-F|0:F)+G;b[j>>1]=e[j>>1]|8192}}while(l>>>0>>0);i=c[wa>>2]|0}}while(o>>>0>>0);k=i;j=i;i=c[xa>>2]|0}if(s>>>0>=i>>>0){G=163;break c}}}k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;v=1<>1;w=(f|0)>0?0-v|0:-1;i=c[xa>>2]|0;j=c[wa>>2]|0;if(i>>>0>3){n=j;t=l;u=0;while(1){if(!j){j=n;m=0}else{i=n;s=0;do{j=k+(s<<2)|0;n=c[qa>>2]|0;p=n+s|0;l=t+(p<<1)|0;o=c[a>>2]|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[o+100>>2]=o+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);n=(wh(o)|0)!=0;n=n?v:w;i=c[j>>2]|0;c[j>>2]=((i|0)<0?0-n|0:n)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}else{j=n;n=o}q=i+s|0;o=k+(q<<2)|0;r=j+p|0;l=t+(r<<1)|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);j=(wh(n)|0)!=0;j=j?v:w;i=c[o>>2]|0;c[o>>2]=((i|0)<0?0-j|0:j)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}p=i+q|0;o=k+(p<<2)|0;q=j+r|0;l=t+(q<<1)|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);j=(wh(n)|0)!=0;j=j?v:w;i=c[o>>2]|0;c[o>>2]=((i|0)<0?0-j|0:j)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}m=k+(i+p<<2)|0;j=t+(j+q<<1)|0;l=b[j>>1]|0;if((l&20480|0)==4096){c[n+100>>2]=n+24+(((l&8192|0)!=0?16:(l&255|0)!=0?15:14)<<2);G=(wh(n)|0)!=0;G=G?v:w;i=c[m>>2]|0;c[m>>2]=((i|0)<0?0-G|0:G)+i;b[j>>1]=e[j>>1]|8192;i=c[wa>>2]|0}s=s+1|0}while(s>>>0>>0);j=i;m=i;i=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=t+(c[qa>>2]<<2<<1)|0;o=u+4|0;if(o>>>0<(i&-4)>>>0){n=j;j=m;t=l;u=o}else{s=o;break}}}else s=0;if(!j){G=163;break c}else r=0;do{if(s>>>0>>0){o=k+(r<<2)|0;p=l+(r<<1)|0;q=s;while(1){p=p+(c[qa>>2]<<1)|0;n=c[a>>2]|0;m=b[p>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);i=(wh(n)|0)!=0;i=i?v:w;m=c[o>>2]|0;c[o>>2]=((m|0)<0?0-i|0:i)+m;b[p>>1]=e[p>>1]|8192;m=c[wa>>2]|0;i=c[xa>>2]|0}else m=j;q=q+1|0;if(q>>>0>=i>>>0){j=m;break}else{j=m;o=o+(m<<2)|0}}}r=r+1|0}while(r>>>0>>0);G=163;break}case 2:{E=c[a>>2]|0;F=1<>1|F;do if(Q){k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;j=c[xa>>2]|0;if(j>>>0>3){w=E+92|0;x=E+100|0;y=E+96|0;z=0-F|0;m=c[wa>>2]|0;i=m;o=0;while(1){if(!m)m=0;else{r=o|1;s=r+1|0;t=o|3;u=r+3|0;v=0;do{i=c[qa>>2]|0;j=v;v=v+1|0;D=(_(i,r)|0)+v|0;G=c[ra>>2]|0;D=b[G+((_(i,s)|0)+v<<1)>>1]|b[G+(D<<1)>>1];D=D|b[G+((_(i,t)|0)+v<<1)>>1];e:do if(!((D|b[G+((_(i,u)|0)+v<<1)>>1])&20735)){c[x>>2]=w;if(!(wh(E)|0))break;c[x>>2]=y;p=(wh(E)|0)<<1;p=p|(wh(E)|0);if(p>>>0>=4)break;q=k+((_(c[wa>>2]|0,p)|0)+j<<2)|0;j=l+((_(c[qa>>2]|0,p)|0)+j<<1)|0;n=p;while(1){if(n>>>0>=(c[xa>>2]|0)>>>0)break e;i=c[qa>>2]|0;m=j;j=j+(i<<1)|0;if((n|0)==(p|0)){G=c[a>>2]|0;D=(e[j>>1]|0)>>>4&255;c[G+100>>2]=G+24+(d[21291+D>>0]<<2);G=wh(G)|0;D=d[21547+D>>0]|0;B=D^G;c[q>>2]=(G|0)!=(D|0)?z:F;D=c[qa>>2]|0;G=m+(i-D<<1)|0;C=m+(D+i<<1)|0;A=m+(i+~D<<1)|0;b[A>>1]=e[A>>1]|2;b[G>>1]=b[G>>1]|b[3436+(B<<1)>>1];G=i+1|0;A=m+(G-D<<1)|0;b[A>>1]=e[A>>1]|4;A=i+-1|0;i=m+(A<<1)|0;b[i>>1]=b[i>>1]|b[3436+(B+2<<1)>>1];b[j>>1]=e[j>>1]|4096;i=m+(G<<1)|0;b[i>>1]=b[i>>1]|b[3436+(B+4<<1)>>1];A=m+(D+A<<1)|0;b[A>>1]=e[A>>1]|1;b[C>>1]=b[C>>1]|b[3436+(B+6<<1)>>1];G=m+(D+G<<1)|0;b[G>>1]=e[G>>1]|8;b[j>>1]=e[j>>1]&49151}else ah(a,j,q,S,F);n=n+1|0;if(n>>>0>=4)break;else q=q+(c[wa>>2]<<2)|0}}else{D=i+j|0;ah(a,l+(D<<1)|0,k+(j<<2)|0,S,F);G=(c[wa>>2]|0)+j|0;D=(c[qa>>2]|0)+D|0;ah(a,l+(D<<1)|0,k+(G<<2)|0,S,F);G=(c[wa>>2]|0)+G|0;D=(c[qa>>2]|0)+D|0;ah(a,l+(D<<1)|0,k+(G<<2)|0,S,F);ah(a,l+((c[qa>>2]|0)+D<<1)|0,k+((c[wa>>2]|0)+G<<2)|0,S,F)}while(0);i=c[wa>>2]|0}while(v>>>0>>0);m=i;j=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=l+(c[qa>>2]<<2<<1)|0;o=o+4|0;if(o>>>0>=(j&-4)>>>0){q=k;p=l;break}}}else{i=c[wa>>2]|0;q=k;p=l;o=0}if(!i)break;else n=0;do{if(o>>>0>>0){k=q+(n<<2)|0;l=p+(n<<1)|0;m=o;while(1){l=l+(c[qa>>2]<<1)|0;ah(a,l,k,S,F);i=c[wa>>2]|0;m=m+1|0;j=c[xa>>2]|0;if(m>>>0>=j>>>0)break;else k=k+(i<<2)|0}}n=n+1|0}while(n>>>0>>0)}else{i=c[xa>>2]|0;if(!i)break;A=E+92|0;B=E+100|0;C=E+96|0;D=0-F|0;j=c[wa>>2]|0;z=0;while(1){if(!j){k=z+4|0;j=0}else{v=z|3;w=z|1;x=w+1|0;y=w+3|0;k=z+4|0;u=0;while(1){do if(v>>>0>>0){i=c[qa>>2]|0;l=u+1|0;t=(_(i,w)|0)+l|0;j=c[ra>>2]|0;if(b[j+(t<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,x)|0)+l<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,v)|0)+l<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,y)|0)+l<<1)>>1]&20665){t=0;i=0;G=127;break}c[B>>2]=A;if(!(wh(E)|0))break;c[B>>2]=C;i=(wh(E)|0)<<1;t=1;i=i|(wh(E)|0);G=127}else{t=0;i=0;G=127}while(0);if((G|0)==127){G=0;l=i+z|0;f:do if(l>>>0>>0){s=l;do{i=c[xa>>2]|0;if(s>>>0>=i>>>0)break f;Da=s;s=s+1|0;m=(_(c[qa>>2]|0,s)|0)+u|0;n=m+1|0;o=c[ra>>2]|0;p=o+(n<<1)|0;q=(_(c[wa>>2]|0,Da)|0)+u|0;q=(c[va>>2]|0)+(q<<2)|0;r=c[a>>2]|0;j=b[p>>1]|0;j=(Da|0)==(v|0)|(Da|0)==(i+-1|0)?j&-1095:j;do if(!(t&(Da|0)==(l|0))){if(j&20480)break;i=r+100|0;c[i>>2]=r+24+(d[20267+(j&255|R)>>0]<<2);if(wh(r)|0)G=133}else{i=r+100|0;G=133}while(0);if((G|0)==133){G=0;j=j>>>4&255;c[i>>2]=r+24+(d[21291+j>>0]<<2);Da=wh(r)|0;r=d[21547+j>>0]|0;j=r^Da;c[q>>2]=(Da|0)!=(r|0)?D:F;r=c[qa>>2]|0;Da=o+(n-r<<1)|0;q=o+(r+n<<1)|0;n=o+(n+~r<<1)|0;b[n>>1]=e[n>>1]|2;b[Da>>1]=b[Da>>1]|b[3436+(j<<1)>>1];Da=m+2|0;n=o+(Da-r<<1)|0;b[n>>1]=e[n>>1]|4;n=o+(m<<1)|0;b[n>>1]=b[n>>1]|b[3436+(j+2<<1)>>1];b[p>>1]=e[p>>1]|4096;n=o+(Da<<1)|0;b[n>>1]=b[n>>1]|b[3436+(j+4<<1)>>1];n=o+(r+m<<1)|0;b[n>>1]=e[n>>1]|1;b[q>>1]=b[q>>1]|b[3436+(j+6<<1)>>1];Da=o+(r+Da<<1)|0;b[Da>>1]=e[Da>>1]|8}b[p>>1]=e[p>>1]&49151}while(s>>>0>>0)}while(0);l=u+1|0}j=c[wa>>2]|0;i=c[xa>>2]|0;if(l>>>0>>0)u=l;else break}}if(k>>>0>>0)z=k;else break}}while(0);if(M){G=163;break c}c[E+100>>2]=E+96;wh(E)|0;wh(E)|0;wh(E)|0;wh(E)|0;G=163;break}default:G=163}while(0);do if((G|0)==163){G=0;if(J)break;qh(U);rh(U,18,0,46);rh(U,17,0,3);rh(U,0,0,4)}while(0);h=h+1|0;Da=(h|0)==3;f=(Da<<31>>31)+f|0;h=Da?0:h;H=H+1|0;if(H>>>0>=(c[I>>2]|0)>>>0)break b}}while(0);i=c[X>>2]|0}L=L+1|0}while(L>>>0>>0)}h=(c[V>>2]|0)-(c[fa>>2]|0)|0;f=(c[Y>>2]|0)-(c[ga>>2]|0)|0;i=c[ea>>2]|0;if(i&1){Da=c[Aa>>2]|0;h=(c[Da+(la*136|0)+8>>2]|0)+h-(c[Da+(la*136|0)>>2]|0)|0}if(i&2){Da=c[Aa>>2]|0;f=(c[Da+(la*136|0)+12>>2]|0)+f-(c[Da+(la*136|0)+4>>2]|0)|0}p=c[va>>2]|0;q=c[wa>>2]|0;r=c[xa>>2]|0;i=c[Ba>>2]|0;if((i|0)!=0?(ua=1<>2]|0;m=(l|0)>-1?l:0-l|0;if((m|0)>=(ua|0)){Da=m>>c[Ba>>2];c[k>>2]=(l|0)<0?0-Da|0:Da}n=n+1|0}while((n|0)!=(q|0))}o=o+1|0}while((o|0)!=(r|0))}n=(_(f,ya)|0)+h|0;o=c[pa>>2]|0;h=(r|0)==0;if((c[sa>>2]|0)==1){if(!h){h=(q|0)==0;k=0;do{if(!h){f=_(k,q)|0;i=(_(k,ya)|0)+n|0;j=0;do{c[o+(i+j<<2)>>2]=(c[p+(j+f<<2)>>2]|0)/2|0;j=j+1|0}while((j|0)!=(q|0))}k=k+1|0}while((k|0)!=(r|0))}}else if(!h){m=(q|0)==0;h=p;l=0;k=o+(n<<2)|0;while(1){if(!m){f=h;i=0;j=k;while(1){g[j>>2]=+(c[f>>2]|0)*+g[ha>>2];i=i+1|0;if((i|0)==(q|0))break;else{f=f+4|0;j=j+4|0}}h=h+(q<<2)|0}l=l+1|0;if((l|0)==(r|0))break;else k=k+(ya<<2)|0}}$=$+1|0}while($>>>0<(_(c[ba>>2]|0,c[aa>>2]|0)|0)>>>0);h=c[ka>>2]|0;i=c[ja>>2]|0}ca=ca+1|0}while(ca>>>0<(_(h,i)|0)>>>0);f=c[na>>2]|0}ia=ia+1|0}while(ia>>>0>>0);h=c[za>>2]|0}oa=oa+1|0;if(oa>>>0>=h>>>0){h=1;G=201;break}}if((G|0)==201)return h|0;return 0}function Zg(f,i,j,k,l){f=f|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.0,t=0.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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0.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,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;Ya=i+32|0;h[Ya>>3]=0.0;Za=i+16|0;m=c[Za>>2]|0;if(!m){_a=1;return _a|0}Xa=i+20|0;Sa=j+5584|0;Ta=f+16|0;Ua=f+20|0;Va=f+8|0;Wa=f+36|0;Pa=(k|0)!=0;Qa=f+32|0;Ra=f+12|0;i=m;Oa=0;a:while(1){j=c[Xa>>2]|0;m=c[Sa>>2]|0;Ma=(c[j+(Oa*52|0)+8>>2]|0)-(c[j+(Oa*52|0)>>2]|0)|0;Na=j+(Oa*52|0)+16|0;n=c[Na>>2]|0;if(n){La=j+(Oa*52|0)+24|0;Ja=j+(Oa*52|0)+32|0;Ka=m+(Oa*1080|0)+20|0;Ga=m+(Oa*1080|0)+16|0;Ia=Pa&Oa>>>0>>0;Ha=k+(Oa<<3)|0;i=n;Fa=0;do{Da=c[La>>2]|0;Ea=Da+(Fa*136|0)+24|0;j=c[Ea>>2]|0;if(j){za=Da+(Fa*136|0)+16|0;Aa=Da+(Fa*136|0)+20|0;Ba=~Fa;Ca=Fa+-1|0;i=c[Aa>>2]|0;m=c[za>>2]|0;ya=0;do{xa=Da+(Fa*136|0)+28+(ya*36|0)+32|0;if(_(i,m)|0){ra=67108864/(~~+M(+(+g[xa>>2]*8192.0))|0)|0;sa=Da+(Fa*136|0)+28+(ya*36|0)+20|0;ta=Da+(Fa*136|0)+28+(ya*36|0)|0;ua=Da+(Fa*136|0)+28+(ya*36|0)+4|0;va=Da+(Fa*136|0)+28+(ya*36|0)+16|0;wa=((ra|0)<0)<<31>>31;qa=0;do{j=c[sa>>2]|0;oa=j+(qa*40|0)+16|0;pa=j+(qa*40|0)+20|0;if(_(c[pa>>2]|0,c[oa>>2]|0)|0){ma=j+(qa*40|0)+24|0;na=0;do{la=c[ma>>2]|0;n=c[la+(na*52|0)+12>>2]|0;i=n-(c[ta>>2]|0)|0;o=c[la+(na*52|0)+16>>2]|0;j=o-(c[ua>>2]|0)|0;m=c[va>>2]|0;if(m&1){ka=c[La>>2]|0;i=(c[ka+(Ca*136|0)+8>>2]|0)+i-(c[ka+(Ca*136|0)>>2]|0)|0}if(m&2){ka=c[La>>2]|0;j=(c[ka+(Ca*136|0)+12>>2]|0)+j-(c[ka+(Ca*136|0)+4>>2]|0)|0}if(!(_g(f,(c[la+(na*52|0)+20>>2]|0)-n|0,(c[la+(na*52|0)+24>>2]|0)-o|0)|0)){i=0;_a=173;break a}p=c[Ta>>2]|0;q=c[Ua>>2]|0;r=Ma-p|0;u=(_(j,Ma)|0)+i|0;v=c[Ja>>2]|0;c[Va>>2]=v+(u<<2);c[Wa>>2]=Ma;i=(q|0)==0;if((c[Ka>>2]|0)==1){if(!i){n=(p|0)==0;o=0;i=0;while(1){if(!n){j=0;m=i;while(1){ka=v+(m+u<<2)|0;c[ka>>2]=c[ka>>2]<<6;j=j+1|0;if((j|0)==(p|0))break;else m=m+1|0}i=p+i|0}o=o+1|0;if((o|0)==(q|0))break;else i=i+r|0}}}else if(!i){n=(p|0)==0;o=0;i=0;while(1){if(!n){j=0;m=i;while(1){ka=v+(m+u<<2)|0;ja=c[ka>>2]|0;ja=Zi(ja|0,((ja|0)<0)<<31>>31|0,ra|0,wa|0)|0;ja=Si(ja|0,C|0,4096,0)|0;ja=Ti(ja|0,C|0,18)|0;c[ka>>2]=ja;j=j+1|0;if((j|0)==(p|0))break;else m=m+1|0}i=p+i|0}o=o+1|0;if((o|0)==(q|0))break;else i=i+r|0}}ga=c[va>>2]|0;ha=(c[Na>>2]|0)+Ba|0;r=c[Ka>>2]|0;ia=+g[xa>>2];ja=c[Ga>>2]|0;ka=c[f>>2]|0;n=c[Ta>>2]|0;do if(!n)i=0;else{o=c[Ua>>2]|0;p=(o|0)==0;q=0;i=0;do{if(!p){j=c[Wa>>2]|0;m=0;do{fa=c[v+(u+((_(m,j)|0)+q)<<2)>>2]|0;fa=(fa|0)>-1?fa:0-fa|0;i=(i|0)>(fa|0)?i:fa;m=m+1|0}while((m|0)!=(o|0))}q=q+1|0}while((q|0)!=(n|0));if(!i){i=0;break}if((i|0)>1){j=i;i=0}else{i=-5;break}while(1){j=j>>1;if((j|0)<=1)break;else i=i+1|0}i=i+-4|0}while(0);ea=la+(na*52|0)+28|0;c[ea>>2]=i;i=i+-1|0;qh(ka);rh(ka,18,0,46);rh(ka,17,0,3);rh(ka,0,0,4);fa=la+(na*52|0)|0;kh(ka,c[fa>>2]|0);b:do if((i|0)>-1){ca=la+(na*52|0)+8|0;W=ja&1;da=(W|0)!=0;X=(r|0)==1;Y=(ja&4|0)==0;W=(W|0)==0;Z=(ja&2|0)==0;$=(ja&8|0)==0;aa=ga<<8;ba=(ja&32|0)==0;j=0;T=i;U=0.0;i=0;V=2;while(1){S=c[ca>>2]|0;I=da&(V>>>0<2?(T|0)<((c[ea>>2]|0)+-4|0):0);c:do switch(V|0){case 0:{G=1<>2]|0;if(!j){n=0;break c}H=(T|0)==0;o=c[Ta>>2]|0;m=o;n=0;F=0;do{E=F;F=F+4|0;if(!m)m=0;else{B=(E|0)==-4;D=E|3;m=o;A=0;do{if(!B){z=E;do{j=c[Ua>>2]|0;if(z>>>0>=j>>>0)break;do if($)j=0;else{if((z|0)==(D|0)){j=1;break}j=(z|0)==(j+-1|0)}while(0);p=z;z=z+1|0;u=(_(c[Qa>>2]|0,z)|0)+A|0;v=u+1|0;w=c[Ra>>2]|0;y=w+(v<<1)|0;p=(_(c[Wa>>2]|0,p)|0)+A|0;p=(c[Va>>2]|0)+(p<<2)|0;x=c[f>>2]|0;q=b[y>>1]|0;q=j?q&-1095:q;j=q&255;if((j|0)!=0&(q&20480|0)==0){m=c[p>>2]|0;m=(((m|0)<0?0-m|0:m)&G|0)!=0;o=m&1;r=x+100|0;c[r>>2]=x+24+(d[20267+(j|aa)>>0]<<2);if(I)oh(x,o);else lh(x,o);if(m){j=c[p>>2]|0;m=j>>>31;j=(j|0)<0?0-j|0:j;if(H)j=3708+((j&127)<<1)|0;else j=3452+((j>>>T&127)<<1)|0;n=(b[j>>1]|0)+n|0;j=q>>>4&255;c[r>>2]=x+24+(d[21291+j>>0]<<2);if(I)oh(x,m);else lh(x,d[21547+j>>0]^m);Q=c[Qa>>2]|0;R=w+(v-Q<<1)|0;P=w+(Q+v<<1)|0;O=w+(v+~Q<<1)|0;b[O>>1]=e[O>>1]|2;b[R>>1]=b[R>>1]|b[3436+(m<<1)>>1];R=u+2|0;O=w+(R-Q<<1)|0;b[O>>1]=e[O>>1]|4;O=w+(u<<1)|0;b[O>>1]=b[O>>1]|b[3436+((m|2)<<1)>>1];b[y>>1]=e[y>>1]|4096;O=w+(R<<1)|0;b[O>>1]=b[O>>1]|b[3436+((m|4)<<1)>>1];O=w+(Q+u<<1)|0;b[O>>1]=e[O>>1]|1;b[P>>1]=b[P>>1]|b[3436+((m|6)<<1)>>1];R=w+(Q+R<<1)|0;b[R>>1]=e[R>>1]|8}b[y>>1]=e[y>>1]|16384}}while(z>>>0>>0);m=c[Ta>>2]|0}A=A+1|0}while(A>>>0>>0);j=c[Ua>>2]|0;o=m}}while(F>>>0>>0);break}case 1:{A=1<>2]|0;if(!j){n=0;break c}B=(T|0)==0;o=c[Ta>>2]|0;m=o;n=0;z=0;do{y=z;z=z+4|0;if(!m)m=0;else{w=(y|0)==-4;x=y|3;m=o;v=0;do{u=v;v=v+1|0;if(!w){r=y;do{j=c[Ua>>2]|0;if(r>>>0>=j>>>0)break;do if($)j=0;else{if((r|0)==(x|0)){j=1;break}j=(r|0)==(j+-1|0)}while(0);m=r;r=r+1|0;p=(_(c[Qa>>2]|0,r)|0)+v|0;p=(c[Ra>>2]|0)+(p<<1)|0;q=c[f>>2]|0;o=b[p>>1]|0;o=j?o&-1095:o;if((o&20480|0)==4096){m=c[(c[Va>>2]|0)+((_(c[Wa>>2]|0,m)|0)+u<<2)>>2]|0;m=(m|0)<0?0-m|0:m;if(B)j=4220+((m&127)<<1)|0;else j=3964+((m>>>T&127)<<1)|0;n=(b[j>>1]|0)+n|0;j=(m&A|0)!=0&1;c[q+100>>2]=q+24+(((o&8192|0)!=0?16:(o&255|0)!=0?15:14)<<2);if(I)oh(q,j);else lh(q,j);b[p>>1]=e[p>>1]|8192}}while(r>>>0>>0);m=c[Ta>>2]|0}}while(v>>>0>>0);j=c[Ua>>2]|0;o=m}}while(z>>>0>>0);break}case 2:{L=c[f>>2]|0;N=1<>2]|0;if(!m)j=0;else{O=L+92|0;P=L+100|0;Q=L+96|0;R=(T|0)==0;n=c[Ta>>2]|0;j=0;K=0;while(1){if(!n){o=K+4|0;n=0}else{D=K|3;E=K|1;F=E+1|0;G=E+3|0;o=K+4|0;H=K+1|0;I=K+2|0;J=K+3|0;B=0;while(1){do if(D>>>0>>0){m=c[Qa>>2]|0;q=B+1|0;p=(_(m,E)|0)+q|0;n=c[Ra>>2]|0;p=b[n+(p<<1)>>1]|0;if($){A=b[n+((_(m,F)|0)+q<<1)>>1]|p;A=A|b[n+((_(m,D)|0)+q<<1)>>1];m=((A|b[n+((_(m,G)|0)+q<<1)>>1])&20735)==0&1}else{do if(!(p&20735)){if(b[n+((_(m,F)|0)+q<<1)>>1]&20735){m=1;break}if(b[n+((_(m,D)|0)+q<<1)>>1]&20735){m=1;break}m=(b[n+((_(m,G)|0)+q<<1)>>1]&20665)!=0}else m=1;while(0);m=m&1^1}if(!m){A=0;m=0;_a=109;break}m=c[Wa>>2]|0;n=c[Va>>2]|0;A=c[n+((_(m,K)|0)+B<<2)>>2]|0;do if(!(((A|0)<0?0-A|0:A)&N)){A=c[n+((_(m,H)|0)+B<<2)>>2]|0;if(((A|0)<0?0-A|0:A)&N){m=1;break}A=c[n+((_(m,I)|0)+B<<2)>>2]|0;if(((A|0)<0?0-A|0:A)&N){m=2;break}m=c[n+((_(m,J)|0)+B<<2)>>2]|0;m=(((m|0)<0?0-m|0:m)&N|0)==0?4:3}else m=0;while(0);c[P>>2]=O;lh(L,(m|0)!=4&1);if((m|0)==4){p=q;break}c[P>>2]=Q;lh(L,m>>>1);lh(L,m&1);A=1;_a=109}else{A=0;m=0;_a=109}while(0);if((_a|0)==109){_a=0;z=m+K|0;d:do if(z>>>0>>0){y=z;do{m=c[Ua>>2]|0;if(y>>>0>=m>>>0)break d;do if($)m=0;else{if((y|0)==(D|0)){m=1;break}m=(y|0)==(m+-1|0)}while(0);$a=y;y=y+1|0;r=(_(c[Qa>>2]|0,y)|0)+B|0;u=r+1|0;v=c[Ra>>2]|0;x=v+(u<<1)|0;n=(_(c[Wa>>2]|0,$a)|0)+B|0;n=(c[Va>>2]|0)+(n<<2)|0;w=c[f>>2]|0;p=b[x>>1]|0;q=m?p&-1095:p;do if(!(A&($a|0)==(z|0))){if(p&20480)break;c[w+100>>2]=w+24+(d[20267+(q&255|aa)>>0]<<2);$a=c[n>>2]|0;$a=((($a|0)<0?0-$a|0:$a)&N|0)!=0;lh(w,$a&1);if($a)_a=117}else _a=117;while(0);if((_a|0)==117){_a=0;n=c[n>>2]|0;m=(n|0)<0?0-n|0:n;if(R)m=3708+((m&127)<<1)|0;else m=3452+((m>>>T&127)<<1)|0;j=(b[m>>1]|0)+j|0;$a=q>>>4&255;c[w+100>>2]=w+24+(d[21291+$a>>0]<<2);p=n>>>31;lh(w,d[21547+$a>>0]^p);w=c[Qa>>2]|0;$a=v+(u-w<<1)|0;q=v+(w+u<<1)|0;u=v+(u+~w<<1)|0;b[u>>1]=e[u>>1]|2;b[$a>>1]=b[$a>>1]|b[3436+(p<<1)>>1];$a=r+2|0;u=v+($a-w<<1)|0;b[u>>1]=e[u>>1]|4;u=v+(r<<1)|0;b[u>>1]=b[u>>1]|b[3436+((p|2)<<1)>>1];b[x>>1]=e[x>>1]|4096;u=v+($a<<1)|0;b[u>>1]=b[u>>1]|b[3436+((p|4)<<1)>>1];u=v+(w+r<<1)|0;b[u>>1]=e[u>>1]|1;b[q>>1]=b[q>>1]|b[3436+((p|6)<<1)>>1];$a=v+(w+$a<<1)|0;b[$a>>1]=e[$a>>1]|8}b[x>>1]=e[x>>1]&49151}while(y>>>0>>0)}while(0);p=B+1|0}n=c[Ta>>2]|0;m=c[Ua>>2]|0;if(p>>>0>>0)B=p;else break}}if(o>>>0>>0)K=o;else break}}if(ba){n=j;break c}uh(ka);n=j;break}default:n=j}while(0);if(Ia)s=+h[Ha>>3];else s=1.0;if(X)t=+Ig(ha,ga);else t=+Lg(ha,ga);t=+(1<>3]=+h[Ya>>3]+t;do if(Y)_a=137;else{if((T|0)<1&(V|0)==2){_a=137;break}mh(ka);m=S+(i*24|0)+20|0;j=a[m>>0]|1;a[m>>0]=j;m=1}while(0);do if((_a|0)==137){j=(c[ea>>2]|0)+-4|0;if((V|0)!=0&(T|0)<(j|0))if(W)_a=141;else _a=140;else if(W|((V|0)!=2|(T|0)!=(j|0)))_a=141;else _a=140;if((_a|0)==140){_a=0;mh(ka);m=S+(i*24|0)+20|0;j=a[m>>0]|1;a[m>>0]=j;m=1;break}else if((_a|0)==141){_a=0;m=S+(i*24|0)+20|0;j=a[m>>0]&-2;a[m>>0]=j;m=3;break}}while(0);R=V+1|0;$a=(R|0)==3;V=$a?0:R;T=($a<<31>>31)+T|0;do if((T|0)>0&(j&1)!=0)if(da&(V>>>0<2?(T|0)<((c[ea>>2]|0)+-4|0):0)){nh(ka);break}else{sh(ka);break}while(0);h[S+(i*24|0)+8>>3]=U;c[S+(i*24|0)>>2]=(jh(ka)|0)+m;if(!Z)ph(ka);i=i+1|0;if((T|0)<=-1)break b;else j=n}}else i=0;while(0);do if(!(ja&16)){if(ja&1)break;mh(ka)}else th(ka);while(0);q=la+(na*52|0)+48|0;c[q>>2]=i;if(i){n=la+(na*52|0)+8|0;p=0;do{o=c[n>>2]|0;j=o+(p*24|0)|0;$a=c[j>>2]|0;if($a>>>0>(jh(ka)|0)>>>0){i=jh(ka)|0;c[j>>2]=i}else i=c[j>>2]|0;do if(i>>>0>1){m=i+-1|0;if((a[(c[fa>>2]|0)+m>>0]|0)!=-1)break;c[j>>2]=m;i=m}while(0);if(!p)j=0;else j=c[(c[n>>2]|0)+((p+-1|0)*24|0)>>2]|0;c[o+(p*24|0)+16>>2]=i-j;p=p+1|0}while(p>>>0<(c[q>>2]|0)>>>0)}na=na+1|0}while(na>>>0<(_(c[pa>>2]|0,c[oa>>2]|0)|0)>>>0);i=c[Aa>>2]|0;m=c[za>>2]|0}qa=qa+1|0}while(qa>>>0<(_(i,m)|0)>>>0);j=c[Ea>>2]|0}ya=ya+1|0}while(ya>>>0>>0);i=c[Na>>2]|0}Fa=Fa+1|0}while(Fa>>>0>>0);i=c[Za>>2]|0}Oa=Oa+1|0;if(Oa>>>0>=i>>>0){i=1;_a=173;break}}if((_a|0)==173)return i|0;return 0}function _g(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=_(d,b)|0;if(!(c[a+40>>2]|0)){h=a+24|0;i=a+8|0;e=c[i>>2]|0;do if(g>>>0>(c[h>>2]|0)>>>0){Sc(e);f=g<<2;e=Rc(f)|0;c[i>>2]=e;if(!e){b=0;return b|0}else{c[h>>2]=g;break}}else f=g<<2;while(0);Qi(e|0,0,f|0)|0}g=b+2|0;c[a+32>>2]=g;g=_(d+2|0,g)|0;h=a+28|0;i=a+12|0;e=c[i>>2]|0;do if(g>>>0>(c[h>>2]|0)>>>0){Sc(e);f=g<<1;e=Rc(f)|0;c[i>>2]=e;if(!e){b=0;return b|0}else{c[h>>2]=g;break}}else f=g<<1;while(0);Qi(e|0,0,f|0)|0;c[a+16>>2]=b;c[a+20>>2]=d;b=1;return b|0}function $g(a,f,g,h,i){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;j=c[a>>2]|0;l=b[f>>1]|0;m=l&255;if(!((m|0)!=0&(l&20480|0)==0))return;k=j+100|0;c[k>>2]=j+24+(d[20267+(m|h<<8)>>0]<<2);if(wh(j)|0){h=l>>>4&255;c[k>>2]=j+24+(d[21291+h>>0]<<2);l=wh(j)|0;h=d[21547+h>>0]|0;m=h^l;c[g>>2]=(l|0)!=(h|0)?0-i|0:i;a=c[a+32>>2]|0;i=f+(0-a<<1)|0;h=f+(a<<1)|0;g=f+(~a<<1)|0;b[g>>1]=e[g>>1]|2;b[i>>1]=b[i>>1]|b[3436+(m<<1)>>1];i=f+(1-a<<1)|0;b[i>>1]=e[i>>1]|4;i=f+-2|0;b[i>>1]=b[i>>1]|b[3436+(m+2<<1)>>1];b[f>>1]=e[f>>1]|4096;i=f+2|0;b[i>>1]=b[i>>1]|b[3436+(m+4<<1)>>1];i=f+(a+-1<<1)|0;b[i>>1]=e[i>>1]|1;b[h>>1]=b[h>>1]|b[3436+(m+6<<1)>>1];a=f+(a+1<<1)|0;b[a>>1]=e[a>>1]|8}b[f>>1]=e[f>>1]|16384;return}function ah(a,f,g,h,i){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[a>>2]|0;l=b[f>>1]|0;if(l&20480){a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}k=j+100|0;c[k>>2]=j+24+(d[20267+(l&255|h<<8)>>0]<<2);if(!(wh(j)|0)){a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}h=l>>>4&255;c[k>>2]=j+24+(d[21291+h>>0]<<2);k=wh(j)|0;h=d[21547+h>>0]|0;l=h^k;c[g>>2]=(k|0)!=(h|0)?0-i|0:i;a=c[a+32>>2]|0;i=f+(0-a<<1)|0;h=f+(a<<1)|0;g=f+(~a<<1)|0;b[g>>1]=e[g>>1]|2;b[i>>1]=b[i>>1]|b[3436+(l<<1)>>1];i=f+(1-a<<1)|0;b[i>>1]=e[i>>1]|4;i=f+-2|0;b[i>>1]=b[i>>1]|b[3436+(l+2<<1)>>1];b[f>>1]=e[f>>1]|4096;i=f+2|0;b[i>>1]=b[i>>1]|b[3436+(l+4<<1)>>1];i=f+(a+-1<<1)|0;b[i>>1]=e[i>>1]|1;b[h>>1]=b[h>>1]|b[3436+(l+6<<1)>>1];a=f+(a+1<<1)|0;b[a>>1]=e[a>>1]|8;a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}function bh(a,e,f,g,h,j,k,l,m,n,o,p){a=a|0;e=e|0;f=f|0;g=g|0;h=h|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,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;I=i;i=i+16|0;H=I;c[H>>2]=0;q=c[a>>2]|0;D=c[a+4>>2]|0;a=c[D+76>>2]|0;F=a+(e*5640|0)|0;s=(b[D>>1]|0)==4?2:1;t=D+80|0;if(!(c[t>>2]|0))r=1;else r=c[q+16>>2]|0;G=(c[a+(e*5640|0)+420>>2]|0)+1|0;E=Lf(q,D,e,p)|0;if(!E){e=0;i=I;return e|0}c[j>>2]=0;a:do if(!p){if(r){a=0;b:while(1){p=0;o=E;q=0;while(1){Mf(E,D,e,q,a,n,0);if((c[o+80>>2]|0)==-1){a=9;break b}m=o+36|0;c:while(1){do if(!(Of(o)|0))break c;while((c[m>>2]|0)>>>0>=g>>>0);c[H>>2]=0;if(!(fh(e,f,F,o,h,H,k,l)|0)){a=13;break b}B=c[H>>2]|0;c[j>>2]=(c[j>>2]|0)+B;k=k-B|0;p=B+p|0;h=h+B|0}B=c[t>>2]|0;if((B|0)!=0&p>>>0>B>>>0){a=17;break b}q=q+1|0;if(q>>>0>>0)o=o+232|0;else break}a=a+1|0;if(a>>>0>=r>>>0)break a}if((a|0)==9){Kf(E,G);e=0;i=I;return e|0}else if((a|0)==13){Kf(E,G);e=0;i=I;return e|0}else if((a|0)==17){Kf(E,G);e=0;i=I;return e|0}}}else{Mf(E,D,e,o,m,n,p);z=E+(o*232|0)|0;if((c[E+(o*232|0)+80>>2]|0)==-1){Kf(E,G);e=0;i=I;return e|0}n=E+(o*232|0)+36|0;u=(l|0)==0;v=f+840|0;w=l+12|0;x=l+8|0;y=l+88|0;t=D+93|0;s=a+(e*5640|0)+5636|0;while(1){do if(!(Of(z)|0))break a;while((c[n>>2]|0)>>>0>=g>>>0);c[H>>2]=0;if(!(fh(e,f,F,z,h,H,k,l)|0))break;r=c[H>>2]|0;h=h+r|0;k=k-r|0;c[j>>2]=(c[j>>2]|0)+r;if(!u){if(!(c[w>>2]|0))a=c[x>>2]|0;else{q=c[y>>2]|0;a=c[x>>2]|0;o=c[q+(e*592|0)+548>>2]|0;p=o+(a<<5)|0;if(!a){m=(c[q+(e*592|0)+12>>2]|0)+1|0;q=((m|0)<0)<<31>>31;D=p;c[D>>2]=m;c[D+4>>2]=q}else{if((((d[s>>0]|0)>>>2|(d[t>>0]|0)>>>3)&1)!=0?(B=p,A=c[B>>2]|0,B=c[B+4>>2]|0,!((A|0)==0&(B|0)==0)):0){m=A;q=B}else{m=o+(a+-1<<5)+16|0;m=Si(c[m>>2]|0,c[m+4>>2]|0,1,0)|0;q=C}D=p;c[D>>2]=m;c[D+4>>2]=q}p=Si(m|0,q|0,-1,-1)|0;m=C;r=Si(p|0,m|0,r|0,0)|0;D=o+(a<<5)+16|0;c[D>>2]=r;c[D+4>>2]=C;D=o+(a<<5)+8|0;r=D;r=Si(p|0,m|0,c[r>>2]|0,c[r+4>>2]|0)|0;c[D>>2]=r;c[D+4>>2]=C}c[x>>2]=a+1}c[v>>2]=(c[v>>2]|0)+1}Kf(E,G);e=0;i=I;return e|0}while(0);Kf(E,G);e=1;i=I;return e|0}function ch(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,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,aa=0;$=i;i=i+112|0;W=$+64|0;X=$+32|0;S=$;R=$+96|0;Q=$+92|0;k=c[a>>2]|0;M=a+4|0;Z=c[M>>2]|0;h=c[Z+76>>2]|0;O=h+(b*5640|0)|0;P=h+(b*5640|0)+420|0;Y=(c[P>>2]|0)+1|0;Z=Jf(k,Z,b)|0;if(!Z){aa=0;i=$;return aa|0}N=k+16|0;L=h+(b*5640|0)+12|0;K=d+20|0;J=k+24|0;b=g;a=e;H=Z;I=0;a:while(1){if((c[H+80>>2]|0)==-1){aa=4;break}h=Pc(c[N>>2]<<2)|0;if(!h){aa=6;break}Qi(h|0,1,c[N>>2]<<2|0)|0;if(Of(H)|0){g=H+24|0;d=H+28|0;G=H+36|0;k=H+32|0;F=b;E=a;while(1){if((c[L>>2]|0)>>>0>(c[G>>2]|0)>>>0){b=c[g>>2]|0;a=c[K>>2]|0;if((c[d>>2]|0)>>>0<(c[a+(b*52|0)+20>>2]|0)>>>0){c[h+(b<<2)>>2]=0;D=c[M>>2]|0;c[Q>>2]=0;if(!(gh(D,a,O,H,R,E,Q,F,j)|0)){aa=45;break a}C=c[Q>>2]|0;if(!(c[R>>2]|0))a=C;else{B=F-C|0;z=E+C|0;c[Q>>2]=0;b=c[d>>2]|0;l=c[(c[K>>2]|0)+((c[g>>2]|0)*52|0)+24>>2]|0;x=l+(b*136|0)+24|0;a=c[x>>2]|0;b:do if(!a){a=z;aa=43}else{y=E+F|0;m=a;D=0;w=l+(b*136|0)+28|0;l=z;c:while(1){a=c[k>>2]|0;b=c[w+20>>2]|0;if(((c[w+8>>2]|0)!=(c[w>>2]|0)?(c[w+12>>2]|0)!=(c[w+4>>2]|0):0)?(V=_(c[b+(a*40|0)+20>>2]|0,c[b+(a*40|0)+16>>2]|0)|0,(V|0)!=0):0){A=0;a=c[b+(a*40|0)+24>>2]|0;p=l;while(1){u=a+40|0;if(!(c[u>>2]|0))b=p;else{v=a+44|0;b=c[v>>2]|0;do if(!b){o=c[a+4>>2]|0;c[v>>2]=1;c[a+36>>2]=0}else{l=b+-1|0;m=c[a+4>>2]|0;if((c[m+(l<<5)+8>>2]|0)!=(c[m+(l<<5)+20>>2]|0)){o=m+(l<<5)|0;break}c[v>>2]=b+1;o=m+(b<<5)|0}while(0);t=a+36|0;b=a+32|0;s=p;n=o+28|0;l=c[n>>2]|0;if((l+s|0)>>>0>>0|(p+l|0)>>>0>y>>>0){b=D;a=A;break c}m=c[t>>2]|0;s=p;r=o;while(1){o=l+m|0;if(o>>>0>>0){b=D;a=A;aa=29;break a}p=c[a>>2]|0;if(o>>>0>(c[b>>2]|0)>>>0){l=Tc(p,o)|0;if(!l){aa=32;break a}m=c[t>>2]|0;q=c[n>>2]|0;c[b>>2]=q+m;c[a>>2]=l;p=l;l=q}Ui(p+m|0,s|0,l|0)|0;l=r+8|0;m=c[l>>2]|0;if(!m){c[r>>2]=a;o=c[t>>2]|0;c[r+4>>2]=o}else o=c[t>>2]|0;p=c[n>>2]|0;q=s;s=s+p|0;n=c[r+24>>2]|0;m=n+m|0;c[l>>2]=m;l=c[u>>2]|0;c[u>>2]=l-n;c[r+12>>2]=m;m=p+o|0;c[t>>2]=m;o=r+16|0;c[o>>2]=(c[o>>2]|0)+p;if((l|0)==(n|0)){b=s;break}c[v>>2]=(c[v>>2]|0)+1;o=s;n=r+60|0;l=c[n>>2]|0;if((l+o|0)>>>0>>0?1:(q+(l+p)|0)>>>0>y>>>0){b=D;a=A;break c}else r=r+32|0}c[a+48>>2]=c[v>>2]}A=A+1|0;if(A>>>0>=V>>>0){a=b;break}else{a=a+56|0;p=b}}b=c[x>>2]|0}else{b=m;a=l}D=D+1|0;if(D>>>0>=b>>>0){aa=43;break b}else{m=b;w=w+36|0;l=a}}z=c[k>>2]|0;A=c[d>>2]|0;D=c[g>>2]|0;c[S>>2]=l;c[S+4>>2]=B;c[S+8>>2]=a;c[S+12>>2]=z;c[S+16>>2]=b;c[S+20>>2]=A;c[S+24>>2]=D;Ub(j,2,21803,S)|0;a=c[Q>>2]|0}while(0);if((aa|0)==43){aa=0;a=a-z|0;c[Q>>2]=a}a=a+C|0}l=c[g>>2]|0;C=c[d>>2]|0;b=(c[J>>2]|0)+(l*52|0)+36|0;D=c[b>>2]|0;c[b>>2]=C>>>0>D>>>0?C:D;b=a}else aa=47}else{a=c[K>>2]|0;aa=47}if((aa|0)==47){aa=0;D=c[M>>2]|0;c[Q>>2]=0;if(!(gh(D,a,O,H,R,E,Q,F,j)|0)){aa=69;break a}u=c[Q>>2]|0;if(!(c[R>>2]|0))a=u;else{l=F-u|0;w=c[d>>2]|0;x=c[g>>2]|0;a=c[(c[K>>2]|0)+(x*52|0)+24>>2]|0;c[Q>>2]=0;t=c[a+(w*136|0)+24>>2]|0;if(!t)a=0;else{v=c[k>>2]|0;b=0;s=a+(w*136|0)+28|0;while(1){m=c[s+20>>2]|0;if(((c[s+8>>2]|0)!=(c[s>>2]|0)?(c[s+12>>2]|0)!=(c[s+4>>2]|0):0)?(T=_(c[m+(v*40|0)+20>>2]|0,c[m+(v*40|0)+16>>2]|0)|0,(T|0)!=0):0){a=0;r=c[m+(v*40|0)+24>>2]|0;while(1){p=r+40|0;d:do if(c[p>>2]|0){q=r+44|0;m=c[q>>2]|0;do if(!m){o=c[r+4>>2]|0;c[q>>2]=1;c[r+36>>2]=0}else{n=m+-1|0;o=c[r+4>>2]|0;if((c[o+(n<<5)+8>>2]|0)!=(c[o+(n<<5)+20>>2]|0)){o=o+(n<<5)|0;break}c[q>>2]=m+1;o=o+(m<<5)|0}while(0);D=c[Q>>2]|0;m=c[o+28>>2]|0;n=m+D|0;if(n>>>0>>0|n>>>0>l>>>0){g=v;d=w;k=x;aa=65;break a}while(1){c[Q>>2]=n;D=c[o+24>>2]|0;C=o+8|0;c[C>>2]=(c[C>>2]|0)+D;C=c[p>>2]|0;c[p>>2]=C-D;if((C|0)==(D|0))break d;c[q>>2]=(c[q>>2]|0)+1;D=c[Q>>2]|0;m=c[o+60>>2]|0;n=m+D|0;if(n>>>0>>0|n>>>0>l>>>0){g=v;d=w;k=x;aa=65;break a}else o=o+32|0}}while(0);a=a+1|0;if(a>>>0>=T>>>0)break;else r=r+56|0}}b=b+1|0;if(b>>>0>=t>>>0)break;else s=s+36|0}a=c[Q>>2]|0}a=a+u|0}l=c[g>>2]|0;b=a}if((c[h+(l<<2)>>2]|0)!=0?(U=(c[J>>2]|0)+(l*52|0)+36|0,(c[U>>2]|0)==0):0)c[U>>2]=(c[(c[K>>2]|0)+(l*52|0)+20>>2]|0)+-1;a=E+b|0;b=F-b|0;if(!(Of(H)|0))break;else{F=b;E=a}}}Uc(h);I=I+1|0;if(I>>>0>(c[P>>2]|0)>>>0){h=a;aa=75;break}else H=H+232|0}if((aa|0)==4){Kf(Z,Y);aa=0;i=$;return aa|0}else if((aa|0)==6){Kf(Z,Y);aa=0;i=$;return aa|0}else if((aa|0)==29){f=c[k>>2]|0;e=c[d>>2]|0;W=c[g>>2]|0;c[X>>2]=l;c[X+4>>2]=m;c[X+8>>2]=~l;c[X+12>>2]=a;c[X+16>>2]=f;c[X+20>>2]=b;c[X+24>>2]=e;c[X+28>>2]=W;Ub(j,1,21888,X)|0;aa=45}else if((aa|0)==32){Uc(c[a>>2]|0);c[a>>2]=0;c[b>>2]=0;aa=45}else if((aa|0)==65){c[W>>2]=m;c[W+4>>2]=l;c[W+8>>2]=a;c[W+12>>2]=g;c[W+16>>2]=b;c[W+20>>2]=d;c[W+24>>2]=k;Ub(j,1,21987,W)|0;aa=69}else if((aa|0)==75){Kf(Z,Y);c[f>>2]=h-e;aa=1;i=$;return aa|0}if((aa|0)==45){Kf(Z,Y);Uc(h);aa=0;i=$;return aa|0}else if((aa|0)==69){Kf(Z,Y);Uc(h);aa=0;i=$;return aa|0}return 0}function dh(a,b){a=a|0;b=b|0;var d=0;d=Qc(1,8)|0;if(!d){a=0;return a|0}c[d>>2]=a;c[d+4>>2]=b;a=d;return a|0}function eh(a){a=a|0;if(!a)return;Uc(a);return}function fh(b,d,e,f,g,i,j,k){b=b|0;d=d|0;e=e|0;f=f|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,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.0,J=0,K=0;s=c[f+28>>2]|0;J=c[f+32>>2]|0;K=c[f+36>>2]|0;r=c[(c[d+20>>2]|0)+((c[f+24>>2]|0)*52|0)+24>>2]|0;if(!(c[e>>2]&2))G=g;else{a[g>>0]=-1;a[g+1>>0]=-111;a[g+2>>0]=0;a[g+3>>0]=4;G=d+840|0;a[g+4>>0]=(c[G>>2]|0)>>>8;a[g+5>>0]=c[G>>2];j=j+-6|0;G=g+6|0}if((K|0)==0?(q=r+(s*136|0)+24|0,(c[q>>2]|0)!=0):0){o=r+(s*136|0)+28|0;p=0;while(1){f=c[o+20>>2]|0;kg(c[f+(J*40|0)+32>>2]|0);m=f+(J*40|0)+36|0;kg(c[m>>2]|0);n=_(c[f+(J*40|0)+20>>2]|0,c[f+(J*40|0)+16>>2]|0)|0;if(n){f=f+(J*40|0)+24|0;d=o+28|0;l=0;do{H=c[f>>2]|0;c[H+(l*52|0)+40>>2]=0;ng(c[m>>2]|0,l,(c[d>>2]|0)-(c[H+(l*52|0)+28>>2]|0)|0);l=l+1|0}while((l|0)!=(n|0))}p=p+1|0;if(p>>>0>=(c[q>>2]|0)>>>0)break;else o=o+36|0}}E=wg()|0;if(!E){i=0;return i|0}zg(E,G,j);Bg(E,1,1);F=r+(s*136|0)+28|0;H=r+(s*136|0)+24|0;if(c[H>>2]|0){A=K+1|0;C=F;D=0;while(1){n=c[C+20>>2]|0;B=_(c[n+(J*40|0)+20>>2]|0,c[n+(J*40|0)+16>>2]|0)|0;o=n+(J*40|0)+24|0;f=(B|0)==0;if(!f){d=n+(J*40|0)+32|0;l=c[o>>2]|0;m=0;while(1){if((c[l+40>>2]|0)==0?(c[(c[l+4>>2]|0)+(K*24|0)>>2]|0)!=0:0)ng(c[d>>2]|0,m,K);m=m+1|0;if((m|0)==(B|0))break;else l=l+52|0}if(!f){z=n+(J*40|0)+32|0;y=n+(J*40|0)+36|0;w=c[o>>2]|0;x=0;while(1){f=(c[w+4>>2]|0)+(K*24|0)|0;v=w+40|0;if(!(c[v>>2]|0))og(E,c[z>>2]|0,x,A);else Bg(E,(c[f>>2]|0)!=0&1,1);d=c[f>>2]|0;if(d){if(!(c[v>>2]|0)){c[w+32>>2]=3;og(E,c[y>>2]|0,x,999);d=c[f>>2]|0}a:do switch(d|0){case 1:{Bg(E,0,1);break}case 2:{Bg(E,2,2);break}default:{if(d>>>0<6){Bg(E,d+-3|12,4);break a}if(d>>>0<37){Bg(E,d+-6|480,9);break a}if(d>>>0<165)Bg(E,d+-37|65408,16)}}while(0);o=c[v>>2]|0;d=c[f>>2]|0;u=d+o|0;t=w+8|0;if(o>>>0>>0){s=w+32|0;q=o+-1+d|0;m=0;n=0;l=0;r=(c[t>>2]|0)+(o*24|0)|0;while(1){l=l+1|0;n=(c[r+16>>2]|0)+n|0;if((a[r+20>>0]&1)!=0|(o|0)==(q|0)){if((n|0)>1){d=0;do{n=n>>1;d=d+1|0}while((n|0)>1)}else d=0;p=c[s>>2]|0;if((l|0)>1){n=0;do{l=l>>1;n=n+1|0}while((l|0)>1);l=n}else l=0;n=d+1-p-l|0;m=(m|0)>(n|0)?m:n;n=0;l=0}o=o+1|0;if((o|0)==(u|0))break;else r=r+24|0}if((m|0)>0){d=m;while(1){Bg(E,1,1);if((d|0)>1)d=d+-1|0;else{d=n;break}}}else d=n}else{m=0;d=0;l=0}Bg(E,0,1);q=w+32|0;c[q>>2]=(c[q>>2]|0)+m;m=c[v>>2]|0;if(m>>>0>>0){p=(c[t>>2]|0)+(m*24|0)|0;while(1){l=l+1|0;n=(c[p+16>>2]|0)+d|0;if((a[p+20>>0]&1)==0?(m|0)!=((c[v>>2]|0)+-1+(c[f>>2]|0)|0):0)d=n;else{o=c[q>>2]|0;if((l|0)>1){d=0;do{l=l>>1;d=d+1|0}while((l|0)>1)}else d=0;Bg(E,n,d+o|0);d=0;l=0}m=m+1|0;if((m|0)==(u|0))break;else p=p+24|0}}}x=x+1|0;if((x|0)==(B|0))break;else w=w+52|0}}}D=D+1|0;if(D>>>0>=(c[H>>2]|0)>>>0)break;else C=C+36|0}}if(!(Dg(E)|0)){xg(E);i=0;return i|0}d=yg(E)|0;f=G+d|0;j=j-d|0;xg(E);if(c[e>>2]&4){a[f>>0]=-1;a[G+(d+1)>>0]=-110;j=j+-2|0;f=G+(d+2)|0}t=(k|0)!=0;if(t?(c[k+12>>2]|0)!=0:0){G=f-g|0;e=(c[(c[k+88>>2]|0)+(b*592|0)+548>>2]|0)+(c[k+8>>2]<<5)+8|0;c[e>>2]=G;c[e+4>>2]=((G|0)<0)<<31>>31}d=c[H>>2]|0;b:do if(d){u=k+12|0;v=k+8|0;w=k+88|0;r=F;s=0;c:while(1){l=c[r+20>>2]|0;q=_(c[l+(J*40|0)+20>>2]|0,c[l+(J*40|0)+16>>2]|0)|0;l=c[l+(J*40|0)+24>>2]|0;if(q){if(t){p=0;while(1){o=c[l+4>>2]|0;d=o+(K*24|0)|0;if(c[d>>2]|0){m=o+(K*24|0)+4|0;n=c[m>>2]|0;if(n>>>0>j>>>0){f=0;j=81;break c}Ui(f|0,c[o+(K*24|0)+16>>2]|0,n|0)|0;e=l+40|0;c[e>>2]=(c[e>>2]|0)+(c[d>>2]|0);e=c[m>>2]|0;f=f+e|0;j=j-e|0;if((c[u>>2]|0)!=0?(e=(c[(c[w>>2]|0)+(b*592|0)+548>>2]|0)+(c[v>>2]<<5)+24|0,I=+h[o+(K*24|0)+8>>3]+ +h[e>>3],h[e>>3]=I,+h[k>>3]>3]=I}p=p+1|0;if(p>>>0>=q>>>0)break;else l=l+52|0}}else{p=0;while(1){d=c[l+4>>2]|0;m=d+(K*24|0)|0;if(c[m>>2]|0){n=d+(K*24|0)+4|0;o=c[n>>2]|0;if(o>>>0>j>>>0){f=0;j=81;break c}Ui(f|0,c[d+(K*24|0)+16>>2]|0,o|0)|0;e=l+40|0;c[e>>2]=(c[e>>2]|0)+(c[m>>2]|0);e=c[n>>2]|0;j=j-e|0;f=f+e|0}p=p+1|0;if(p>>>0>=q>>>0)break;else l=l+52|0}}d=c[H>>2]|0}s=s+1|0;if(s>>>0>=d>>>0)break b;else r=r+36|0}if((j|0)==81)return f|0}while(0);c[i>>2]=f-g+(c[i>>2]|0);i=1;return i|0}function gh(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,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;N=i;i=i+64|0;L=N+40|0;K=N+32|0;x=N+24|0;w=N+16|0;u=N+8|0;t=N;v=N+48|0;M=N+44|0;c[M>>2]=h;z=c[f+28>>2]|0;J=f+24|0;y=c[d+((c[J>>2]|0)*52|0)+24>>2]|0;H=f+36|0;if((c[H>>2]|0)==0?(s=y+(z*136|0)+24|0,m=c[s>>2]|0,(m|0)!=0):0){r=f+32|0;p=0;q=y+(z*136|0)+28|0;while(1){d=c[r>>2]|0;n=c[q+20>>2]|0;if((c[q+8>>2]|0)!=(c[q>>2]|0)?(c[q+12>>2]|0)!=(c[q+4>>2]|0):0){kg(c[n+(d*40|0)+32>>2]|0);kg(c[n+(d*40|0)+36>>2]|0);m=_(c[n+(d*40|0)+20>>2]|0,c[n+(d*40|0)+16>>2]|0)|0;if(m){o=0;d=c[n+(d*40|0)+24>>2]|0;while(1){c[d+44>>2]=0;c[d+48>>2]=0;o=o+1|0;if((o|0)==(m|0))break;else d=d+56|0}}m=c[s>>2]|0}p=p+1|0;if(p>>>0>=m>>>0)break;else q=q+36|0}}do if(c[e>>2]&2){if(k>>>0<6){Ub(l,2,22072,t)|0;break}d=c[M>>2]|0;if((a[d>>0]|0)==-1?(a[d+1>>0]|0)==-111:0){c[M>>2]=d+6;break}Ub(l,2,22114,u)|0}while(0);G=wg()|0;if(!G){h=0;i=N;return h|0}do if(!(a[b+96>>0]&1))if(!(a[e+5636>>0]&2)){E=c[M>>2]|0;c[v>>2]=h+k-E;F=M;break}else{F=e+5168|0;E=c[F>>2]|0;v=e+5180|0;break}else{F=b+40|0;E=c[F>>2]|0;v=b+44|0}while(0);Ag(G,E,c[v>>2]|0);if(!(Cg(G,1)|0)){Eg(G)|0;m=yg(G)|0;d=E+m|0;xg(G);do if(c[e>>2]&4){if(((c[v>>2]|0)-d+(c[F>>2]|0)|0)>>>0<2){Ub(l,2,22135,w)|0;break}if((a[d>>0]|0)==-1?(a[E+(m+1)>>0]|0)==-110:0){d=E+(m+2)|0;break}Ub(l,2,22177,x)|0}while(0);c[v>>2]=(c[v>>2]|0)+((c[F>>2]|0)-d);c[F>>2]=d;c[g>>2]=0;c[j>>2]=(c[M>>2]|0)-h;h=1;i=N;return h|0}D=y+(z*136|0)+24|0;d=c[D>>2]|0;a:do if(d){B=f+32|0;C=e+5584|0;A=0;y=y+(z*136|0)+28|0;b:while(1){m=c[B>>2]|0;n=c[y+20>>2]|0;if(((c[y+8>>2]|0)!=(c[y>>2]|0)?(c[y+12>>2]|0)!=(c[y+4>>2]|0):0)?(I=_(c[n+(m*40|0)+20>>2]|0,c[n+(m*40|0)+16>>2]|0)|0,(I|0)!=0):0){b=n+(m*40|0)+32|0;f=n+(m*40|0)+36|0;w=y+28|0;x=0;k=c[n+(m*40|0)+24>>2]|0;while(1){m=k+44|0;if(!(c[m>>2]|0))d=pg(G,c[b>>2]|0,x,(c[H>>2]|0)+1|0)|0;else d=Cg(G,1)|0;c:do if(!d)c[k+40>>2]=0;else{if(!(c[m>>2]|0)){d=0;while(1)if(!(pg(G,c[f>>2]|0,x,d)|0))d=d+1|0;else break;c[k+24>>2]=1-d+(c[w>>2]|0);c[k+28>>2]=3}do if(Cg(G,1)|0)if(Cg(G,1)|0){d=Cg(G,2)|0;if((d|0)!=3){d=d+3|0;break}d=Cg(G,5)|0;if((d|0)==31){d=(Cg(G,7)|0)+37|0;break}else{d=d+6|0;break}}else d=2;else d=1;while(0);t=k+40|0;c[t>>2]=d;d=0;while(1)if(!(Cg(G,1)|0))break;else d=d+1|0;u=k+28|0;c[u>>2]=(c[u>>2]|0)+d;m=c[m>>2]|0;do if(!m){n=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;d=k+52|0;if(!(c[d>>2]|0)){c[d>>2]=10;o=k+4|0;m=Tc(c[o>>2]|0,320)|0;if(!m){m=d;n=o;d=o;o=66;break b}c[o>>2]=m}else m=c[k+4>>2]|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;if(n&4){c[m+20>>2]=1;m=0;break}m=m+20|0;if(!(n&1)){c[m>>2]=109;m=0;break}else{c[m>>2]=10;m=0;break}}else{q=m+-1|0;r=k+4|0;n=c[r>>2]|0;if((c[n+(q<<5)+8>>2]|0)!=(c[n+(q<<5)+20>>2]|0)){d=k+52|0;m=q;break}p=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;d=k+52|0;o=c[d>>2]|0;if((m+1|0)>>>0>o>>>0){z=o+10|0;c[d>>2]=z;n=Tc(n,z<<5)|0;if(!n){n=r;m=d;d=r;o=77;break b}c[r>>2]=n}z=n+(m<<5)|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(p&4){c[n+(m<<5)+20>>2]=1;break}if(!(p&1)){c[n+(m<<5)+20>>2]=109;break}else{z=c[n+(q<<5)+20>>2]|0;c[n+(m<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;break}}while(0);s=k+4|0;q=c[t>>2]|0;while(1){p=c[s>>2]|0;n=(c[p+(m<<5)+20>>2]|0)-(c[p+(m<<5)+8>>2]|0)|0;n=(n|0)<(q|0)?n:q;c[p+(m<<5)+24>>2]=n;p=c[u>>2]|0;if(n>>>0>1){o=0;while(1){o=o+1|0;if(n>>>0>3)n=n>>>1;else{n=o;break}}}else n=0;p=Cg(G,n+p|0)|0;n=c[s>>2]|0;c[n+(m<<5)+28>>2]=p;p=q-(c[n+(m<<5)+24>>2]|0)|0;if((p|0)<=0)break c;q=m+1|0;r=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;o=c[d>>2]|0;if((m+2|0)>>>0>o>>>0){z=o+10|0;c[d>>2]=z;n=Tc(n,z<<5)|0;if(!n){n=s;m=s;o=90;break b}c[s>>2]=n}z=n+(q<<5)|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(r&4){c[n+(q<<5)+20>>2]=1;m=q;q=p;continue}if(!(r&1)){c[n+(q<<5)+20>>2]=109;m=q;q=p;continue}else{z=c[n+(m<<5)+20>>2]|0;c[n+(q<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;m=q;q=p;continue}}}while(0);x=x+1|0;if(x>>>0>=I>>>0)break;else k=k+56|0}d=c[D>>2]|0}A=A+1|0;if(A>>>0>=d>>>0)break a;else y=y+36|0}if((o|0)==66){Uc(c[d>>2]|0);c[n>>2]=0;c[m>>2]=0;xg(G);h=0;i=N;return h|0}else if((o|0)==77){Uc(c[d>>2]|0);c[n>>2]=0;c[m>>2]=0;xg(G);h=0;i=N;return h|0}else if((o|0)==90){Uc(c[m>>2]|0);c[n>>2]=0;c[d>>2]=0;xg(G);h=0;i=N;return h|0}}while(0);if(!(Eg(G)|0)){xg(G);h=0;i=N;return h|0}m=yg(G)|0;d=E+m|0;xg(G);do if(c[e>>2]&4){if(((c[v>>2]|0)-d+(c[F>>2]|0)|0)>>>0<2){Ub(l,2,22135,K)|0;break}if((a[d>>0]|0)==-1?(a[E+(m+1)>>0]|0)==-110:0){d=E+(m+2)|0;break}Ub(l,2,22177,L)|0}while(0);c[v>>2]=(c[v>>2]|0)+((c[F>>2]|0)-d);c[F>>2]=d;c[g>>2]=1;c[j>>2]=(c[M>>2]|0)-h;h=1;i=N;return h|0}function hh(){return Pc(104)|0}function ih(a){a=a|0;if(!a)return;Uc(a);return}function jh(a){a=a|0;return (c[a+12>>2]|0)-(c[a+16>>2]|0)|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0;c[b+100>>2]=b+24;c[b+4>>2]=32768;c[b>>2]=0;f=d+-1|0;c[b+12>>2]=f;e=b+8|0;c[e>>2]=12;c[e>>2]=(a[f>>0]|0)==-1?13:12;c[b+16>>2]=d;return}function lh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=c[b+100>>2]|0;h=c[g>>2]|0;j=(c[h+4>>2]|0)==(d|0);f=c[h>>2]|0;k=b+4|0;d=(c[k>>2]|0)-f|0;c[k>>2]=d;if(!j){if(d>>>0>>0){j=(c[b>>2]|0)+f|0;c[b>>2]=j;f=d;d=j;j=b}else{c[k>>2]=f;d=c[b>>2]|0;j=b}c[g>>2]=c[h+12>>2];i=b+8|0;h=b+12|0;g=d;d=c[i>>2]|0;while(1){f=f<<1;c[k>>2]=f;e=g<<1;c[j>>2]=e;d=d+-1|0;c[i>>2]=d;if(!d){d=c[h>>2]|0;f=a[d>>0]|0;do if(f<<24>>24!=-1){if(!(e&134217728)){e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>18;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}a[d>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){b=c[j>>2]&134217727;c[j>>2]=b;e=d+1|0;c[h>>2]=e;a[e>>0]=b>>>20;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[h>>2]=e;a[e>>0]=(c[j>>2]|0)>>>19;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}}else{e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>19;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7}while(0);f=c[k>>2]|0}if(!(f&32768))g=e;else break}return}if(d&32768){c[b>>2]=(c[b>>2]|0)+f;return}if(d>>>0>>0){c[k>>2]=f;e=c[b>>2]|0;j=b}else{e=(c[b>>2]|0)+f|0;c[b>>2]=e;f=d;j=b}c[g>>2]=c[h+8>>2];i=b+8|0;h=b+12|0;g=e;d=c[i>>2]|0;while(1){f=f<<1;c[k>>2]=f;e=g<<1;c[j>>2]=e;d=d+-1|0;c[i>>2]=d;if(!d){d=c[h>>2]|0;f=a[d>>0]|0;do if(f<<24>>24!=-1){if(!(e&134217728)){e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>18;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}a[d>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){b=c[j>>2]&134217727;c[j>>2]=b;e=d+1|0;c[h>>2]=e;a[e>>0]=b>>>20;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[h>>2]=e;a[e>>0]=(c[j>>2]|0)>>>19;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}}else{e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>19;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7}while(0);f=c[k>>2]|0}if(!(f&32768))g=e;else break}return}function mh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[b>>2]|0;f=h|65535;g=b+8|0;f=(f>>>0<((c[b+4>>2]|0)+h|0)>>>0?f:f+-32768|0)<>2];c[b>>2]=f;h=b+12|0;d=c[h>>2]|0;e=a[d>>0]|0;do if(e<<24>>24!=-1){if(!(f&134217728)){d=d+1|0;c[h>>2]=d;a[d>>0]=f>>>19;d=c[b>>2]&524287;c[b>>2]=d;c[g>>2]=8;e=8;break}a[d>>0]=e+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){e=c[b>>2]&134217727;c[b>>2]=e;d=d+1|0;c[h>>2]=d;a[d>>0]=e>>>20;d=c[b>>2]&1048575;c[b>>2]=d;c[g>>2]=7;e=7;break}else{d=d+1|0;c[h>>2]=d;a[d>>0]=(c[b>>2]|0)>>>19;d=c[b>>2]&524287;c[b>>2]=d;c[g>>2]=8;e=8;break}}else{d=d+1|0;c[h>>2]=d;a[d>>0]=f>>>20;d=c[b>>2]&1048575;c[b>>2]=d;c[g>>2]=7;e=7}while(0);d=d<>2]=d;e=c[h>>2]|0;f=a[e>>0]|0;do if(f<<24>>24!=-1){if(!(d&134217728)){f=e+1|0;c[h>>2]=f;a[f>>0]=d>>>19;c[b>>2]=c[b>>2]&524287;c[g>>2]=8;break}a[e>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){e=c[b>>2]&134217727;c[b>>2]=e;f=d+1|0;c[h>>2]=f;a[f>>0]=e>>>20;c[b>>2]=c[b>>2]&1048575;c[g>>2]=7;break}else{f=d+1|0;c[h>>2]=f;a[f>>0]=(c[b>>2]|0)>>>19;c[b>>2]=c[b>>2]&524287;c[g>>2]=8;break}}else{f=e+1|0;c[h>>2]=f;a[f>>0]=d>>>20;c[b>>2]=c[b>>2]&1048575;c[g>>2]=7}while(0);d=c[h>>2]|0;if((a[d>>0]|0)==-1)return;c[h>>2]=d+1;return}function nh(a){a=a|0;c[a>>2]=0;c[a+8>>2]=8;return}function oh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+8|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;d=(d<>2]|0)|0;c[b>>2]=d;if(f)return;f=b+12|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;a[g>>0]=d;c[e>>2]=8;c[e>>2]=(a[c[f>>2]>>0]|0)==-1?7:8;c[b>>2]=0;return}function ph(a){a=a|0;c[a+28>>2]=1156;c[a+32>>2]=1156;c[a+36>>2]=1156;c[a+40>>2]=1156;c[a+44>>2]=1156;c[a+48>>2]=1156;c[a+52>>2]=1156;c[a+56>>2]=1156;c[a+60>>2]=1156;c[a+64>>2]=1156;c[a+68>>2]=1156;c[a+72>>2]=1156;c[a+76>>2]=1156;c[a+80>>2]=1156;c[a+84>>2]=1156;c[a+88>>2]=1156;c[a+96>>2]=2628;c[a+92>>2]=1252;c[a+24>>2]=1284;return}function qh(a){a=a|0;c[a+24>>2]=1156;c[a+28>>2]=1156;c[a+32>>2]=1156;c[a+36>>2]=1156;c[a+40>>2]=1156;c[a+44>>2]=1156;c[a+48>>2]=1156;c[a+52>>2]=1156;c[a+56>>2]=1156;c[a+60>>2]=1156;c[a+64>>2]=1156;c[a+68>>2]=1156;c[a+72>>2]=1156;c[a+76>>2]=1156;c[a+80>>2]=1156;c[a+84>>2]=1156;c[a+88>>2]=1156;c[a+92>>2]=1156;c[a+96>>2]=1156;return}function rh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a+24+(b<<2)>>2]=1156+((e<<1)+d<<4);return}function sh(b){b=b|0;var d=0,e=0;c[b+100>>2]=b+24;c[b+4>>2]=32768;c[b>>2]=0;d=b+8|0;c[d>>2]=12;e=b+12|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if((a[b>>0]|0)!=-1)return;c[d>>2]=13;return}function th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=b+8|0;d=c[i>>2]|0;f=12-d|0;if((f|0)>0){g=b+12|0;e=c[b>>2]|0;do{d=e<>2]=d;c[i>>2]=0;e=c[g>>2]|0;h=a[e>>0]|0;do if(h<<24>>24!=-1){if(!(d&134217728)){e=e+1|0;c[g>>2]=e;a[e>>0]=d>>>19;e=c[b>>2]&524287;c[b>>2]=e;c[i>>2]=8;d=8;break}a[e>>0]=h+1<<24>>24;d=c[g>>2]|0;if((a[d>>0]|0)==-1){h=c[b>>2]&134217727;c[b>>2]=h;e=d+1|0;c[g>>2]=e;a[e>>0]=h>>>20;e=c[b>>2]&1048575;c[b>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[g>>2]=e;a[e>>0]=(c[b>>2]|0)>>>19;e=c[b>>2]&524287;c[b>>2]=e;c[i>>2]=8;d=8;break}}else{e=e+1|0;c[g>>2]=e;a[e>>0]=d>>>20;e=c[b>>2]&1048575;c[b>>2]=e;c[i>>2]=7;d=7}while(0);f=f-d|0}while((f|0)>0)}else g=b+12|0;d=c[g>>2]|0;e=a[d>>0]|0;if(e<<24>>24==-1)return;f=c[b>>2]|0;if(!(f&134217728)){h=d+1|0;c[g>>2]=h;a[h>>0]=f>>>19;c[b>>2]=c[b>>2]&524287;c[i>>2]=8;return}a[d>>0]=e+1<<24>>24;d=c[g>>2]|0;if((a[d>>0]|0)==-1){f=c[b>>2]&134217727;c[b>>2]=f;h=d+1|0;c[g>>2]=h;a[h>>0]=f>>>20;c[b>>2]=c[b>>2]&1048575;c[i>>2]=7;return}else{h=d+1|0;c[g>>2]=h;a[h>>0]=(c[b>>2]|0)>>>19;c[b>>2]=c[b>>2]&524287;c[i>>2]=8;return}}function uh(a){a=a|0;c[a+100>>2]=a+96;lh(a,1);lh(a,0);lh(a,1);lh(a,0);return}function vh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;c[b+100>>2]=b+24;c[b+16>>2]=e;c[b+20>>2]=e+f;h=b+12|0;c[h>>2]=e;do if(f){i=d[e>>0]<<16;c[b>>2]=i;g=e+1|0;if((f|0)==1)f=255;else f=d[g>>0]|0;if((a[e>>0]|0)!=-1){c[h>>2]=g;g=i|f<<8;c[b>>2]=g;f=b+8|0;c[f>>2]=8;h=b;i=1;break}if(f>>>0>143){g=i|65280;c[b>>2]=g;f=b+8|0;c[f>>2]=8;h=b;i=1;break}else{c[h>>2]=g;g=i+(f<<9)|0;c[b>>2]=g;f=b+8|0;c[f>>2]=7;h=b;i=0;break}}else{c[b>>2]=16776960;f=b+8|0;c[f>>2]=8;g=16776960;h=b;i=1}while(0);c[h>>2]=g<<7;c[f>>2]=i;c[b+4>>2]=32768;return 1}function wh(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[b+100>>2]|0;g=c[f>>2]|0;j=c[g>>2]|0;n=b+4|0;i=(c[n>>2]|0)-j|0;c[n>>2]=i;h=c[b>>2]|0;if(h>>>16>>>0>>0){c[n>>2]=j;e=c[g+4>>2]|0;if(i>>>0>>0)c[f>>2]=c[g+8>>2];else{c[f>>2]=c[g+12>>2];e=1-e|0}k=b+8|0;l=b+12|0;m=b+20|0;g=c[k>>2]|0;f=h;do{do if(!g){h=c[l>>2]|0;g=c[m>>2]|0;if((h|0)==(g|0)){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}i=h+1|0;if((i|0)==(g|0))g=255;else g=d[i>>0]|0;if((a[h>>0]|0)!=-1){c[l>>2]=i;f=f+(g<<8)|0;c[b>>2]=f;c[k>>2]=8;g=8;break}if(g>>>0>143){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}else{c[l>>2]=i;f=f+(g<<9)|0;c[b>>2]=f;c[k>>2]=7;g=7;break}}while(0);j=j<<1;c[n>>2]=j;f=f<<1;c[b>>2]=f;g=g+-1|0;c[k>>2]=g}while(j>>>0<32768);return e|0}h=h-(j<<16)|0;c[b>>2]=h;if(i&32768){b=c[g+4>>2]|0;return b|0}e=c[g+4>>2]|0;if(j>>>0>i>>>0){c[f>>2]=c[g+12>>2];e=1-e|0}else c[f>>2]=c[g+8>>2];k=b+8|0;l=b+12|0;m=b+20|0;g=c[k>>2]|0;f=h;j=i;do{do if(!g){h=c[l>>2]|0;g=c[m>>2]|0;if((h|0)==(g|0)){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}i=h+1|0;if((i|0)==(g|0))g=255;else g=d[i>>0]|0;if((a[h>>0]|0)!=-1){c[l>>2]=i;f=f+(g<<8)|0;c[b>>2]=f;c[k>>2]=8;g=8;break}if(g>>>0>143){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}else{c[l>>2]=i;f=f+(g<<9)|0;c[b>>2]=f;c[k>>2]=7;g=7;break}}while(0);j=j<<1;c[n>>2]=j;f=f<<1;c[b>>2]=f;g=g+-1|0;c[k>>2]=g}while(j>>>0<32768);return e|0}function xh(){return Pc(28)|0}function yh(a){a=a|0;if(!a)return;Uc(a);return}function zh(b,d,e){b=b|0;d=d|0;e=e|0;c[b+20>>2]=d;c[b+8>>2]=e;c[b+12>>2]=0;a[b>>0]=0;c[b+4>>2]=0;return}function Ah(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=b+4|0;d=c[g>>2]|0;do if(!d){c[g>>2]=8;e=b+12|0;f=c[e>>2]|0;if((f|0)==(c[b+8>>2]|0)){a[b>>0]=-1;d=8;e=-1;break}if((a[b>>0]|0)==-1){c[g>>2]=7;d=7}else d=8;h=a[(c[b+20>>2]|0)+f>>0]|0;a[b>>0]=h;c[e>>2]=f+1;e=h}else e=a[b>>0]|0;while(0);h=d+-1|0;c[g>>2]=h;return (e&255)>>>h&1|0}function Bh(){var a=0;if(!(c[665]|0))a=2712;else a=c[(Ca()|0)+60>>2]|0;return a|0}function Ch(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[22198+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=22286;e=5;break}}if((e|0)==2)if(!c)b=22286;else{b=22286;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function Dh(a){a=a|0;if(a>>>0>4294963200){c[(Bh()|0)>>2]=0-a;a=-1}return a|0}function Eh(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Ti(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Eh(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function Fh(a,b){a=+a;b=b|0;return +(+Eh(a,b))}function Gh(a,b){a=+a;b=b|0;return +(+Jh(a,b))}function Hh(a){a=+a;return ~~+Ih(a)|0}function Ih(a){a=+a;var b=0;b=(g[k>>2]=a,c[k>>2]|0);if((b&2130706432)>>>0<=1249902592){b=(b|0)<0;a=b?a+-8388608.0+8388608.0:a+8388608.0+-8388608.0;if(a==0.0)a=b?-0.0:0.0}return +a}function Jh(a,b){a=+a;b=b|0;var d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){d=b+-2046|0;d=(d|0)>1023?1023:d;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){d=b+2044|0;d=(d|0)<-1022?-1022:d;a=a*2.2250738585072014e-308}}else d=b;d=Ri(d+1023|0,0,52)|0;b=C;c[k>>2]=d;c[k+4>>2]=b;return +(a*+h[k>>3])}function Kh(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Bh()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Lh(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Kh(a,b,0)|0;return a|0}function Mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(ri(24090,f<<24>>24,4)|0){e=Fi(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(j|0));if(!(ti(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(ti(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;ra(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k+4>>2]=3;f=ra(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;ra(221,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=60;c[e+36>>2]=61;c[e+40>>2]=3;c[e+12>>2]=1;if(!(c[666]|0))c[e+76>>2]=-1;Ia(2688);f=c[671]|0;c[e+56>>2]=f;if(f)c[f+52>>2]=e;c[671]=e;Ga(2688)}}else{c[(Bh()|0)>>2]=22;e=0}i=o;return e|0}function Nh(b){b=b|0;var c=0,d=0,e=0;d=(ti(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(ti(b,120)|0)==0;d=e?d:d|128;b=(ti(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Oh(a){a=a|0;return 0}function Ph(a){a=a|0;return}function Qh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;k=e&255;a[l>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Xh(b)|0)){h=c[g>>2]|0;j=4}else f=-1;else j=4;do if((j|0)==4){g=b+20|0;j=c[g>>2]|0;if(j>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[g>>2]=j+1;a[j>>0]=k;break}if((Ra[c[b+36>>2]&63](b,l,1)|0)==1)f=d[l>>0]|0;else f=-1}while(0);i=m;return f|0}function Rh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=Dh(Ja(6,d|0)|0)|0;i=b;return a|0}function Sh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[665]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=Dh(Na(145,h|0)|0)|0}else{ua(5,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=Dh(Na(145,g|0)|0)|0;qa(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){h=c[k>>2]|0;g=b+4|0;c[g>>2]=h;c[b+8>>2]=h+(f-j);if(!(c[l>>2]|0))f=e;else{c[g>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((Dh(Ma(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Uh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[665]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=Dh(Oa(146,n|0)|0)|0}else{ua(6,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=Dh(Oa(146,m|0)|0)|0;qa(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Vh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=61;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,(Fa(54,f|0)|0)!=0):0)a[b+75>>0]=-1;f=Uh(b,d,e)|0;i=g;return f|0}function Wh(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Ra[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Xh(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Yh(a){a=a|0;var b=0,d=0,e=0;e=(c[a>>2]&1|0)!=0;if(!e){Ia(2688);d=c[a+52>>2]|0;b=a+56|0;if(d)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b)c[b+52>>2]=d;if((c[671]|0)==(a|0))c[671]=b;Ga(2688)}b=Zh(a)|0;b=Wa[c[a+12>>2]&15](a)|0|b;d=c[a+92>>2]|0;if(d)Gi(d);if(!e)Gi(a);return b|0}function Zh(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=zi(a)|0;break}d=(Oh(a)|0)==0;b=zi(a)|0;if(!d)Ph(a)}else{if(!(c[677]|0))b=0;else b=Zh(c[677]|0)|0;Ia(2688);a=c[671]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Oh(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=zi(a)|0|b;if(d)Ph(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(2688)}while(0);return b|0}function _h(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(ri(24090,a[d>>0]|0,4)|0){h=Nh(d)|0|32768;c[e>>2]=b;c[e+4>>2]=h;c[e+8>>2]=438;e=Dh(Ka(5,e|0)|0)|0;if((e|0)>=0){b=Mh(e,d)|0;if(!b){c[f>>2]=e;Ja(6,f|0)|0;b=0}}else b=0}else{c[(Bh()|0)>>2]=22;b=0}i=g;return b|0}function $h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=oi(a,b,f)|0;i=e;return d|0}function ai(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(Oh(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(f=d+20|0,g=c[f>>2]|0,g>>>0<(c[d+16>>2]|0)>>>0):0){c[f>>2]=g+1;a[g>>0]=b;e=b&255}else e=Qh(d,b)|0;Ph(d)}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(h=d+20|0,e=c[h>>2]|0,e>>>0<(c[d+16>>2]|0)>>>0):0){c[h>>2]=e+1;a[e>>0]=b;e=b&255;break}e=Qh(d,b)|0}while(0);return e|0}function bi(a,b){a=a|0;b=b|0;return (ki(a,wi(a)|0,1,b)|0)+-1|0}function ci(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76>>2]|0)>-1)k=Oh(f)|0;else k=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;i=(c[f+8>>2]|0)-h|0;if((i|0)>0){i=i>>>0>>0?i:j;Ui(b|0,h|0,i|0)|0;c[g>>2]=h+i;b=b+i|0;g=j-i|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Wh(f)|0){e=h;break}g=Ra[c[i>>2]&63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k)Ph(f);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Ph(f);return e|0}function di(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;f=a+20|0;e=a+28|0;if((c[f>>2]|0)>>>0>(c[e>>2]|0)>>>0?(Ra[c[a+36>>2]&63](a,0,0)|0,(c[f>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[e>>2]=0;c[f>>2]=0;if((Ra[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(Oh(a)|0)==0;b=di(a,b,d)|0;if(!e)Ph(a)}else b=di(a,b,d)|0;return b|0}function fi(a,b,c){a=a|0;b=b|0;c=c|0;return ei(a,b,c)|0}function gi(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Ra[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function hi(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(Oh(a)|0)==0;a=gi(a)|0}else a=gi(a)|0;return a|0}function ii(a){a=a|0;return hi(a)|0}function ji(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Xh(e)|0)){g=c[f>>2]|0;h=4}else f=0;else h=4;a:do if((h|0)==4){i=e+20|0;h=c[i>>2]|0;if((g-h|0)>>>0>>0){f=Ra[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((Ra[c[e+36>>2]&63](e,b,f)|0)>>>0>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ui(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function ki(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=_(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Oh(e)|0)==0;a=ji(a,f,e)|0;if(!g)Ph(e)}else a=ji(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function li(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=oi(c[676]|0,a,e)|0;i=d;return b|0}function mi(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[676]|0;if((c[f+76>>2]|0)>-1)g=Oh(f)|0;else g=0;do if((bi(b,f)|0)<0)d=1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;d=0;break}d=(Qh(f,10)|0)<0}while(0);if(g)Ph(f);return d<<31>>31|0}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=qi(a,b,f)|0;i=e;return d|0}function oi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+80|0;r=s+96|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((Ai(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=Oh(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=Ai(b,d,o,q,r)|0;if(h){Ra[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Ai(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m)Ph(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function pi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=2716;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(Bh()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=oi(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function qi(a,b,c){a=a|0;b=b|0;c=c|0;return pi(a,2147483647,b,c)|0}function ri(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return ((e|0)!=0?b:0)|0}function si(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function ti(b,c){b=b|0;c=c|0;b=ui(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function ui(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(wi(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009)break b;b=b+4|0;e=c[b>>2]|0}while(((e&-2139062144^-2139062144)&e+-16843009|0)==0);while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function vi(a,b){a=a|0;b=b|0;si(a,b)|0;return a|0}function wi(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function xi(a){a=a|0;if(!(c[a+68>>2]|0))Ph(a);return}function yi(a){a=a|0;if(!(c[a+68>>2]|0))Ph(a);return}function zi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(Ra[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0>>0)Ra[c[a+40>>2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0} +function Ai(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=i;i=i+624|0;ca=ha+24|0;ea=ha+16|0;da=ha+588|0;Y=ha+576|0;ba=ha;V=ha+536|0;ga=ha+8|0;fa=ha+528|0;M=(e|0)!=0;N=V+40|0;U=N;V=V+39|0;W=ga+4|0;X=Y+12|0;Y=Y+11|0;Z=da;$=X;aa=$-Z|0;O=-2-Z|0;P=$+2|0;Q=ca+288|0;R=da+9|0;S=R;T=da+8|0;m=0;w=f;n=0;f=0;a:while(1){do if((m|0)>-1)if((n|0)>(2147483647-m|0)){c[(Bh()|0)>>2]=75;m=-1;break}else{m=n+m|0;break}while(0);n=a[w>>0]|0;if(!(n<<24>>24)){L=245;break}else o=w;b:while(1){switch(n<<24>>24){case 37:{n=o;L=9;break b}case 0:{n=o;break b}default:{}}K=o+1|0;n=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[n+1>>0]|0)!=37)break c;o=o+1|0;n=n+2|0;if((a[n>>0]|0)==37)L=9;else break}while(0);y=o-w|0;if(M?(c[e>>2]&32|0)==0:0)ji(w,y,e)|0;if((o|0)!=(w|0)){w=n;n=y;continue}r=n+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[n+2>>0]|0)==36;r=K?n+3|0:r;o=a[r>>0]|0;u=K?p:-1;f=K?1:f}else u=-1;n=o<<24>>24;d:do if((n&-32|0)==32){p=0;while(1){if(!(1<>24)+-32|p;r=r+1|0;o=a[r>>0]|0;n=o<<24>>24;if((n&-32|0)!=32){s=p;n=r;break}}}else{s=0;n=r}while(0);do if(o<<24>>24==42){p=n+1|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[l+(o<<2)>>2]=10;f=1;n=n+3|0;o=c[j+((a[p>>0]|0)+-48<<3)>>2]|0}else{if(f){m=-1;break a}if(!M){x=s;n=p;f=0;K=0;break}f=(c[g>>2]|0)+(4-1)&~(4-1);o=c[f>>2]|0;c[g>>2]=f+4;f=0;n=p}if((o|0)<0){x=s|8192;K=0-o|0}else{x=s;K=o}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){o=0;do{o=(o*10|0)+p|0;n=n+1|0;p=(a[n>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{x=s;K=o}}else{x=s;K=0}}while(0);e:do if((a[n>>0]|0)==46){p=n+1|0;o=a[p>>0]|0;if(o<<24>>24!=42){r=(o<<24>>24)+-48|0;if(r>>>0<10){n=p;o=0}else{n=p;r=0;break}while(1){o=(o*10|0)+r|0;n=n+1|0;r=(a[n>>0]|0)+-48|0;if(r>>>0>=10){r=o;break e}}}p=n+2|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;n=n+4|0;r=c[j+((a[p>>0]|0)+-48<<3)>>2]|0;break}if(f){m=-1;break a}if(M){n=(c[g>>2]|0)+(4-1)&~(4-1);r=c[n>>2]|0;c[g>>2]=n+4;n=p}else{n=p;r=0}}else r=-1;while(0);t=0;while(1){o=(a[n>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=n+1|0;o=a[25126+(t*58|0)+o>>0]|0;s=o&255;if((s+-1|0)>>>0<8){n=p;t=s}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=s;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ba;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Ci(ba,s,g)}while(0);if((L|0)==52?(L=0,!M):0){w=J;n=y;continue}u=a[n>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=x&-65537;I=(x&8192|0)==0?x:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 1:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 2:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}case 3:{b[c[ba>>2]>>1]=m;w=J;n=y;continue a}case 4:{a[c[ba>>2]>>0]=m;w=J;n=y;continue a}case 6:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 7:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}default:{w=J;n=y;continue a}}case 112:{t=I|8;r=r>>>0>8?r:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)n=N;else{n=N;do{n=n+-1|0;a[n>>0]=o&7|48;o=Ti(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;s=25606;L=77}else{t=U-n+1|0;o=I;r=(r|0)<(t|0)?t:r;t=0;s=25606;L=77}break}case 105:case 100:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){n=Oi(0,0,n|0,o|0)|0;o=C;p=ba;c[p>>2]=n;c[p+4>>2]=o;p=1;s=25606;L=76;break f}if(!(I&2048)){s=I&1;p=s;s=(s|0)==0?25606:25608;L=76}else{p=1;s=25607;L=76}break}case 117:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;p=0;s=25606;L=76;break}case 99:{a[V>>0]=c[ba>>2];w=V;o=1;t=0;u=25606;n=N;break}case 109:{n=Ch(c[(Bh()|0)>>2]|0)|0;L=82;break}case 115:{n=c[ba>>2]|0;n=(n|0)!=0?n:25616;L=82;break}case 67:{c[ga>>2]=c[ba>>2];c[W>>2]=0;c[ba>>2]=ga;r=-1;L=86;break}case 83:{if(!r){Ei(e,32,K,0,I);n=0;L=98}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ba>>3];c[ea>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?25624:25629}else{G=1;H=25626}else{q=-q;G=1;H=25623}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){v=+Fh(q,ea)*2.0;o=v!=0.0;if(o)c[ea>>2]=(c[ea>>2]|0)+-1;D=u|32;if((D|0)==97){w=u&32;y=(w|0)==0?H:H+9|0;x=G|2;n=12-r|0;do if(!(r>>>0>11|(n|0)==0)){q=8.0;do{n=n+-1|0;q=q*16.0}while((n|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-v-q));break}else{q=v+q-q;break}}else q=v;while(0);o=c[ea>>2]|0;n=(o|0)<0?0-o|0:o;n=Di(n,((n|0)<0)<<31>>31,X)|0;if((n|0)==(X|0)){a[Y>>0]=48;n=Y}a[n+-1>>0]=(o>>31&2)+43;t=n+-2|0;a[t>>0]=u+15;s=(r|0)<1;p=(I&8|0)==0;o=da;while(1){H=~~q;n=o+1|0;a[o>>0]=d[25590+H>>0]|w;q=(q-+(H|0))*16.0;do if((n-Z|0)==1){if(p&(s&q==0.0))break;a[n>>0]=46;n=o+2|0}while(0);if(!(q!=0.0))break;else o=n}r=(r|0)!=0&(O+n|0)<(r|0)?P+r-t|0:aa-t+n|0;p=r+x|0;Ei(e,32,K,p,I);if(!(c[e>>2]&32))ji(y,x,e)|0;Ei(e,48,K,p,I^65536);n=n-Z|0;if(!(c[e>>2]&32))ji(da,n,e)|0;o=$-t|0;Ei(e,48,r-(n+o)|0,0,0);if(!(c[e>>2]&32))ji(t,o,e)|0;Ei(e,32,K,p,I^8192);n=(p|0)<(K|0)?K:p;break}n=(r|0)<0?6:r;if(o){o=(c[ea>>2]|0)+-28|0;c[ea>>2]=o;q=v*268435456.0}else{q=v;o=c[ea>>2]|0}F=(o|0)<0?ca:Q;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[ea>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0>>0)r=s;else{o=0;do{B=Ri(c[r>>2]|0,0,t|0)|0;B=Si(B|0,C|0,o|0,0)|0;o=C;A=$i(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_i(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[ea>>2]|0)-t|0;c[ea>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((n+25|0)/9|0)+1|0;z=(D|0)==102;w=r;while(1){x=0-o|0;x=(x|0)>9?9:x;do if(w>>>0

>>0){o=(1<>>x;r=0;t=w;do{B=c[t>>2]|0;c[t>>2]=(B>>>x)+r;r=_(B&o,s)|0;t=t+4|0}while(t>>>0

>>0);o=(c[w>>2]|0)==0?w+4|0:w;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[w>>2]|0)==0?w+4|0:w;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[ea>>2]|0)+x|0;c[ea>>2]=o;if((o|0)>=0){w=r;break}else w=r}}else w=r;do if(w>>>0

>>0){o=(E-w>>2)*9|0;s=c[w>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(n|0)!=0;r=n-((D|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;z=(t|0)/9|0;r=F+(z+-1023<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;x=c[r>>2]|0;y=(x>>>0)%(s>>>0)|0;if((y|0)==0?(F+(z+-1022<<2)|0)==(p|0):0)s=w;else L=163;do if((L|0)==163){L=0;v=(((x>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;t=(s|0)/2|0;do if(y>>>0>>0)q=.5;else{if((y|0)==(t|0)?(F+(z+-1022<<2)|0)==(p|0):0){q=1.0;break}q=1.5}while(0);do if(G){if((a[H>>0]|0)!=45)break;v=-v;q=-q}while(0);t=x-y|0;c[r>>2]=t;if(!(v+q!=v)){s=w;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=w;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>>>0>999999999)r=s;else{w=o;r=s;break}}}o=(E-w>>2)*9|0;t=c[w>>2]|0;if(t>>>0<10){s=w;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=w}while(0);D=r+4|0;w=s;p=p>>>0>D>>>0?D:p}y=0-o|0;while(1){if(p>>>0<=w>>>0){z=0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{z=1;D=p;break}}do if(A){n=(B&1^1)+n|0;if((n|0)>(o|0)&(o|0)>-5){u=u+-1|0;n=n+-1-o|0}else{u=u+-2|0;n=n+-1|0}p=I&8;if(p)break;do if(z){p=c[D+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(((p>>>0)%(s>>>0)|0|0)==0)}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}}else p=I&8;while(0);x=n|p;s=(x|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?y:o;r=Di(r,((r|0)<0)<<31>>31,X)|0;if(($-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while(($-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=$-E|0;u=E}y=G+1+n+s+o|0;Ei(e,32,K,y,I);if(!(c[e>>2]&32))ji(H,G,e)|0;Ei(e,48,K,y,I^65536);do if(t){r=w>>>0>F>>>0?F:w;o=r;do{p=Di(c[o>>2]|0,0,R)|0;do if((o|0)==(r|0)){if((p|0)!=(R|0))break;a[T>>0]=48;p=T}else{if(p>>>0<=da>>>0)break;do{p=p+-1|0;a[p>>0]=48}while(p>>>0>da>>>0)}while(0);if(!(c[e>>2]&32))ji(p,S-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(x){if(c[e>>2]&32)break;ji(25658,1,e)|0}while(0);if((n|0)>0&o>>>0>>0){p=o;while(1){o=Di(c[p>>2]|0,0,R)|0;if(o>>>0>da>>>0)do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0);if(!(c[e>>2]&32))ji(o,(n|0)>9?9:n,e)|0;p=p+4|0;o=n+-9|0;if(!((n|0)>9&p>>>0>>0)){n=o;break}else n=o}}Ei(e,48,n+9|0,9,0)}else{t=z?D:w+4|0;if((n|0)>-1){s=(p|0)==0;r=w;do{o=Di(c[r>>2]|0,0,R)|0;if((o|0)==(R|0)){a[T>>0]=48;o=T}do if((r|0)==(w|0)){p=o+1|0;if(!(c[e>>2]&32))ji(o,1,e)|0;if(s&(n|0)<1){o=p;break}if(c[e>>2]&32){o=p;break}ji(25658,1,e)|0;o=p}else{if(o>>>0<=da>>>0)break;do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0)}while(0);p=S-o|0;if(!(c[e>>2]&32))ji(o,(n|0)>(p|0)?p:n,e)|0;n=n-p|0;r=r+4|0}while(r>>>0>>0&(n|0)>-1)}Ei(e,48,n+18|0,18,0);if(c[e>>2]&32)break;ji(u,$-u|0,e)|0}while(0);Ei(e,32,K,y,I^8192);n=(y|0)<(K|0)?K:y}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Ei(e,32,K,r,p);n=c[e>>2]|0;if(!(n&32)){ji(H,o,e)|0;n=c[e>>2]|0}if(!(n&32))ji(s?(t?25650:25654):t?25642:25646,3,e)|0;Ei(e,32,K,r,I^8192);n=(r|0)<(K|0)?K:r}while(0);w=J;continue a}default:{p=I;o=r;t=0;u=25606;n=N}}while(0);g:do if((L|0)==64){p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;s=u&32;if(!((o|0)==0&(p|0)==0)){n=N;do{n=n+-1|0;a[n>>0]=d[25590+(o&15)>>0]|s;o=Ti(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ba;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;s=25606;L=77}else{o=t;t=2;s=25606+(u>>4)|0;L=77}}else{n=N;o=t;t=0;s=25606;L=77}}else if((L|0)==76){n=Di(n,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=ri(n,0,r)|0;H=(I|0)==0;w=n;o=H?r:I-n|0;t=0;u=25606;n=H?n+r|0:I}else if((L|0)==86){L=0;o=0;n=0;s=c[ba>>2]|0;while(1){p=c[s>>2]|0;if(!p)break;n=Lh(fa,p)|0;if((n|0)<0|n>>>0>(r-o|0)>>>0)break;o=n+o|0;if(r>>>0>o>>>0)s=s+4|0;else break}if((n|0)<0){m=-1;break a}Ei(e,32,K,o,I);if(!o){n=0;L=98}else{p=0;r=c[ba>>2]|0;while(1){n=c[r>>2]|0;if(!n){n=o;L=98;break g}n=Lh(fa,n)|0;p=n+p|0;if((p|0)>(o|0)){n=o;L=98;break g}if(!(c[e>>2]&32))ji(fa,n,e)|0;if(p>>>0>=o>>>0){n=o;L=98;break}else r=r+4|0}}}while(0);if((L|0)==98){L=0;Ei(e,32,K,n,I^8192);w=J;n=(K|0)>(n|0)?K:n;continue}if((L|0)==77){L=0;p=(r|0)>-1?o&-65537:o;o=ba;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((r|0)!=0|o){o=(o&1^1)+(U-n)|0;w=n;o=(r|0)>(o|0)?r:o;u=s;n=N}else{w=N;o=0;u=s;n=N}}s=n-w|0;o=(o|0)<(s|0)?s:o;r=t+o|0;n=(K|0)<(r|0)?r:K;Ei(e,32,n,r,p);if(!(c[e>>2]&32))ji(u,t,e)|0;Ei(e,48,n,r,p^65536);Ei(e,48,o,s,0);if(!(c[e>>2]&32))ji(w,s,e)|0;Ei(e,32,n,r,p^8192);w=J}h:do if((L|0)==245)if(!e)if(f){m=1;while(1){f=c[l+(m<<2)>>2]|0;if(!f)break;Ci(j+(m<<3)|0,f,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ha;return m|0}function Bi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Ui(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Ci(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Di(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$i(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_i(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Ei(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;Qi(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){ji(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;ji(h,f,a)|0}while(0);i=j;return}function Fi(a){a=a|0;var 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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=c[735]|0;d=i>>>a;if(d&3){a=(d&1^1)+a|0;e=a<<1;d=2980+(e<<2)|0;e=2980+(e+2<<2)|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[739]|0)>>>0)ta();b=h+12|0;if((c[b>>2]|0)==(f|0)){c[b>>2]=d;c[e>>2]=h;break}else ta()}else c[735]=i&~(1<>2]=M|3;M=f+(M|4)|0;c[M>>2]=c[M>>2]|1;M=g;return M|0}h=c[737]|0;if(o>>>0>h>>>0){if(d){e=2<>>12&16;e=e>>>j;f=e>>>5&8;e=e>>>f;g=e>>>2&4;e=e>>>g;d=e>>>1&2;e=e>>>d;a=e>>>1&1;a=(f|j|g|d|a)+(e>>>a)|0;e=a<<1;d=2980+(e<<2)|0;e=2980+(e+2<<2)|0;g=c[e>>2]|0;j=g+8|0;f=c[j>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[739]|0)>>>0)ta();b=f+12|0;if((c[b>>2]|0)==(g|0)){c[b>>2]=d;c[e>>2]=f;k=c[737]|0;break}else ta()}else{c[735]=i&~(1<>2]=o|3;i=g+o|0;c[g+(o|4)>>2]=h|1;c[g+M>>2]=h;if(k){f=c[740]|0;d=k>>>3;b=d<<1;e=2980+(b<<2)|0;a=c[735]|0;d=1<>2]|0;if(b>>>0<(c[739]|0)>>>0)ta();else{l=a;m=b}}else{c[735]=a|d;l=2980+(b+2<<2)|0;m=e}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=e}c[737]=h;c[740]=i;M=j;return M|0}a=c[736]|0;if(a){d=(a&0-a)+-1|0;L=d>>>12&16;d=d>>>L;K=d>>>5&8;d=d>>>K;M=d>>>2&4;d=d>>>M;a=d>>>1&2;d=d>>>a;e=d>>>1&1;e=c[3244+((K|L|M|a|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;a=e;while(1){b=c[a+16>>2]|0;if(!b){b=c[a+20>>2]|0;if(!b){j=d;break}}a=(c[b+4>>2]&-8)-o|0;M=a>>>0>>0;d=M?a:d;a=b;e=M?b:e}g=c[739]|0;if(e>>>0>>0)ta();i=e+o|0;if(e>>>0>=i>>>0)ta();h=c[e+24>>2]|0;d=c[e+12>>2]|0;do if((d|0)==(e|0)){a=e+20|0;b=c[a>>2]|0;if(!b){a=e+16|0;b=c[a>>2]|0;if(!b){n=0;break}}while(1){d=b+20|0;f=c[d>>2]|0;if(f){b=f;a=d;continue}d=b+16|0;f=c[d>>2]|0;if(!f)break;else{b=f;a=d}}if(a>>>0>>0)ta();else{c[a>>2]=0;n=b;break}}else{f=c[e+8>>2]|0;if(f>>>0>>0)ta();b=f+12|0;if((c[b>>2]|0)!=(e|0))ta();a=d+8|0;if((c[a>>2]|0)==(e|0)){c[b>>2]=d;c[a>>2]=f;n=d;break}else ta()}while(0);do if(h){b=c[e+28>>2]|0;a=3244+(b<<2)|0;if((e|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(e|0))c[b>>2]=n;else c[h+20>>2]=n;if(!n)break}a=c[739]|0;if(n>>>0>>0)ta();c[n+24>>2]=h;b=c[e+16>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);b=c[e+20>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[n+20>>2]=b;c[b+24>>2]=n;break}}while(0);if(j>>>0<16){M=j+o|0;c[e+4>>2]=M|3;M=e+(M+4)|0;c[M>>2]=c[M>>2]|1}else{c[e+4>>2]=o|3;c[e+(o|4)>>2]=j|1;c[e+(j+o)>>2]=j;b=c[737]|0;if(b){g=c[740]|0;d=b>>>3;b=d<<1;f=2980+(b<<2)|0;a=c[735]|0;d=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{p=b;q=a}}else{c[735]=a|d;p=2980+(b+2<<2)|0;q=f}c[p>>2]=g;c[q+12>>2]=g;c[g+8>>2]=q;c[g+12>>2]=f}c[737]=j;c[740]=i}M=e+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=c[736]|0;if(l){d=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)k=31;else{q=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;k=14-(p|q|k)+(v<>>15)|0;k=m>>>(k+7|0)&1|k<<1}else k=0;a=c[3244+(k<<2)>>2]|0;a:do if(!a){f=0;a=0;v=86}else{h=d;f=0;i=m<<((k|0)==31?0:25-(k>>>1)|0);j=a;a=0;while(1){g=c[j+4>>2]&-8;d=g-m|0;if(d>>>0>>0)if((g|0)==(m|0)){g=j;a=j;v=90;break a}else a=j;else d=h;v=c[j+20>>2]|0;j=c[j+16+(i>>>31<<2)>>2]|0;f=(v|0)==0|(v|0)==(j|0)?f:v;if(!j){v=86;break}else{h=d;i=i<<1}}}while(0);if((v|0)==86){if((f|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;f=a>>>1&1;f=c[3244+((l|n|p|q|f)+(a>>>f)<<2)>>2]|0;a=0}if(!f){i=d;j=a}else{g=f;v=90}}if((v|0)==90)while(1){v=0;q=(c[g+4>>2]&-8)-m|0;f=q>>>0>>0;d=f?q:d;a=f?g:a;f=c[g+16>>2]|0;if(f){g=f;v=90;continue}g=c[g+20>>2]|0;if(!g){i=d;j=a;break}else v=90}if((j|0)!=0?i>>>0<((c[737]|0)-m|0)>>>0:0){f=c[739]|0;if(j>>>0>>0)ta();h=j+m|0;if(j>>>0>=h>>>0)ta();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){o=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0>>0)ta();else{c[a>>2]=0;o=b;break}}else{e=c[j+8>>2]|0;if(e>>>0>>0)ta();b=e+12|0;if((c[b>>2]|0)!=(j|0))ta();a=d+8|0;if((c[a>>2]|0)==(j|0)){c[b>>2]=d;c[a>>2]=e;o=d;break}else ta()}while(0);do if(g){b=c[j+28>>2]|0;a=3244+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=o;if(!o){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=g+16|0;if((c[b>>2]|0)==(j|0))c[b>>2]=o;else c[g+20>>2]=o;if(!o)break}a=c[739]|0;if(o>>>0>>0)ta();c[o+24>>2]=g;b=c[j+16>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[o+16>>2]=b;c[b+24>>2]=o;break}while(0);b=c[j+20>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[o+20>>2]=b;c[b+24>>2]=o;break}}while(0);b:do if(i>>>0>=16){c[j+4>>2]=m|3;c[j+(m|4)>>2]=i|1;c[j+(i+m)>>2]=i;b=i>>>3;if(i>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{s=b;t=a}}else{c[735]=d|b;s=2980+(a+2<<2)|0;t=e}c[s>>2]=h;c[t+12>>2]=h;c[j+(m+8)>>2]=t;c[j+(m+12)>>2]=e;break}b=i>>>8;if(b)if(i>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;b=3244+(e<<2)|0;c[j+(m+28)>>2]=e;c[j+(m+20)>>2]=0;c[j+(m+16)>>2]=0;a=c[736]|0;d=1<>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(i|0)){e=i<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(i|0)){y=d;break c}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break b}}else y=b;while(0);b=y+8|0;a=c[b>>2]|0;M=c[739]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[j+(m+8)>>2]=a;c[j+(m+12)>>2]=y;c[j+(m+24)>>2]=0;break}else ta()}else{M=i+m|0;c[j+4>>2]=M|3;M=j+(M+4)|0;c[M>>2]=c[M>>2]|1}while(0);M=j+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);d=c[737]|0;if(d>>>0>=q>>>0){b=d-q|0;a=c[740]|0;if(b>>>0>15){c[740]=a+q;c[737]=b;c[a+(q+4)>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=q|3}else{c[737]=0;c[740]=0;c[a+4>>2]=d|3;M=a+(d+4)|0;c[M>>2]=c[M>>2]|1}M=a+8|0;return M|0}a=c[738]|0;if(a>>>0>q>>>0){L=a-q|0;c[738]=L;M=c[741]|0;c[741]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(c[853]|0)){a=za(30)|0;if(!(a+-1&a)){c[855]=a;c[854]=a;c[856]=-1;c[857]=-1;c[858]=0;c[846]=0;c[853]=(La(0)|0)&-16^1431655768;break}else ta()}while(0);j=q+48|0;i=c[855]|0;k=q+47|0;h=i+k|0;i=0-i|0;l=h&i;if(l>>>0<=q>>>0){M=0;return M|0}a=c[845]|0;if((a|0)!=0?(t=c[843]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(c[846]&4)){a=c[741]|0;e:do if(a){f=3388;while(1){d=c[f>>2]|0;if(d>>>0<=a>>>0?(r=f+4|0,(d+(c[r>>2]|0)|0)>>>0>a>>>0):0){g=f;a=r;break}f=c[f+8>>2]|0;if(!f){v=174;break e}}d=h-(c[738]|0)&i;if(d>>>0<2147483647){f=xa(d|0)|0;y=(f|0)==((c[g>>2]|0)+(c[a>>2]|0)|0);a=y?d:0;if(y){if((f|0)!=(-1|0)){w=f;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){g=xa(0)|0;if((g|0)!=(-1|0)){a=g;d=c[854]|0;f=d+-1|0;if(!(f&a))d=l;else d=l-a+(f+a&0-d)|0;a=c[843]|0;f=a+d|0;if(d>>>0>q>>>0&d>>>0<2147483647){y=c[845]|0;if((y|0)!=0?f>>>0<=a>>>0|f>>>0>y>>>0:0){a=0;break}f=xa(d|0)|0;y=(f|0)==(g|0);a=y?d:0;if(y){w=g;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){g=0-d|0;do if(j>>>0>d>>>0&(d>>>0<2147483647&(f|0)!=(-1|0))?(u=c[855]|0,u=k-d+u&0-u,u>>>0<2147483647):0)if((xa(u|0)|0)==(-1|0)){xa(g|0)|0;break f}else{d=u+d|0;break}while(0);if((f|0)!=(-1|0)){w=f;p=d;v=194;break d}}while(0);c[846]=c[846]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=xa(l|0)|0,x=xa(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(c[843]|0)+p|0;c[843]=a;if(a>>>0>(c[844]|0)>>>0)c[844]=a;h=c[741]|0;g:do if(h){g=3388;do{a=c[g>>2]|0;d=g+4|0;f=c[d>>2]|0;if((w|0)==(a+f|0)){B=a;C=d;D=f;E=g;v=204;break}g=c[g+8>>2]|0}while((g|0)!=0);if(((v|0)==204?(c[E+12>>2]&8|0)==0:0)?h>>>0>>0&h>>>0>=B>>>0:0){c[C>>2]=D+p;M=(c[738]|0)+p|0;L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;c[741]=h+L;c[738]=K;c[h+(L+4)>>2]=K|1;c[h+(M+4)>>2]=40;c[742]=c[857];break}a=c[739]|0;if(w>>>0>>0){c[739]=w;a=w}d=w+p|0;g=3388;while(1){if((c[g>>2]|0)==(d|0)){f=g;d=g;v=212;break}g=c[g+8>>2]|0;if(!g){d=3388;break}}if((v|0)==212)if(!(c[d+12>>2]&8)){c[f>>2]=w;n=d+4|0;c[n>>2]=(c[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;k=w+(p+8)|0;k=(k&7|0)==0?0:0-k&7;b=w+(k+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;c[w+(n+4)>>2]=q|3;h:do if((b|0)!=(h|0)){if((b|0)==(c[740]|0)){M=(c[737]|0)+l|0;c[737]=M;c[740]=o;c[w+(m+4)>>2]=M|1;c[w+(M+m)>>2]=M;break}i=p+4|0;d=c[w+(i+k)>>2]|0;if((d&3|0)==1){j=d&-8;g=d>>>3;i:do if(d>>>0>=256){h=c[w+((k|24)+p)>>2]|0;e=c[w+(p+12+k)>>2]|0;do if((e|0)==(b|0)){f=k|16;e=w+(i+f)|0;d=c[e>>2]|0;if(!d){e=w+(f+p)|0;d=c[e>>2]|0;if(!d){J=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;J=d;break}}else{f=c[w+((k|8)+p)>>2]|0;if(f>>>0>>0)ta();a=f+12|0;if((c[a>>2]|0)!=(b|0))ta();d=e+8|0;if((c[d>>2]|0)==(b|0)){c[a>>2]=e;c[d>>2]=f;J=e;break}else ta()}while(0);if(!h)break;a=c[w+(p+28+k)>>2]|0;d=3244+(a<<2)|0;do if((b|0)!=(c[d>>2]|0)){if(h>>>0<(c[739]|0)>>>0)ta();a=h+16|0;if((c[a>>2]|0)==(b|0))c[a>>2]=J;else c[h+20>>2]=J;if(!J)break i}else{c[d>>2]=J;if(J)break;c[736]=c[736]&~(1<>>0>>0)ta();c[J+24>>2]=h;b=k|16;a=c[w+(b+p)>>2]|0;do if(a)if(a>>>0>>0)ta();else{c[J+16>>2]=a;c[a+24>>2]=J;break}while(0);b=c[w+(i+b)>>2]|0;if(!b)break;if(b>>>0<(c[739]|0)>>>0)ta();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{e=c[w+((k|8)+p)>>2]|0;f=c[w+(p+12+k)>>2]|0;d=2980+(g<<1<<2)|0;do if((e|0)!=(d|0)){if(e>>>0>>0)ta();if((c[e+12>>2]|0)==(b|0))break;ta()}while(0);if((f|0)==(e|0)){c[735]=c[735]&~(1<>>0>>0)ta();a=f+8|0;if((c[a>>2]|0)==(b|0)){F=a;break}ta()}while(0);c[e+12>>2]=f;c[F>>2]=e}while(0);b=w+((j|k)+p)|0;f=j+l|0}else f=l;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[w+(m+4)>>2]=f|1;c[w+(f+m)>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0>=(c[739]|0)>>>0){K=b;L=a;break}ta()}while(0);c[K>>2]=o;c[L+12>>2]=o;c[w+(m+8)>>2]=L;c[w+(m+12)>>2]=e;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}K=(b+1048320|0)>>>16&8;L=b<>>16&4;L=L<>>16&2;e=14-(J|K|e)+(L<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=3244+(e<<2)|0;c[w+(m+28)>>2]=e;c[w+(m+20)>>2]=0;c[w+(m+16)>>2]=0;a=c[736]|0;d=1<>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break}b=c[b>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(f|0)){M=d;break j}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=c[b>>2]|0;L=c[739]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){c[a+12>>2]=o;c[b>>2]=o;c[w+(m+8)>>2]=a;c[w+(m+12)>>2]=M;c[w+(m+24)>>2]=0;break}else ta()}else{M=(c[738]|0)+l|0;c[738]=M;c[741]=o;c[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else d=3388;while(1){a=c[d>>2]|0;if(a>>>0<=h>>>0?(b=c[d+4>>2]|0,e=a+b|0,e>>>0>h>>>0):0)break;d=c[d+8>>2]|0}f=a+(b+-39)|0;a=a+(b+-47+((f&7|0)==0?0:0-f&7))|0;f=h+16|0;a=a>>>0>>0?h:a;b=a+8|0;d=w+8|0;d=(d&7|0)==0?0:0-d&7;M=p+-40-d|0;c[741]=w+d;c[738]=M;c[w+(d+4)>>2]=M|1;c[w+(p+-36)>>2]=40;c[742]=c[857];d=a+4|0;c[d>>2]=27;c[b>>2]=c[847];c[b+4>>2]=c[848];c[b+8>>2]=c[849];c[b+12>>2]=c[850];c[847]=w;c[848]=p;c[850]=0;c[849]=b;b=a+28|0;c[b>>2]=7;if((a+32|0)>>>0>>0)do{M=b;b=b+4|0;c[b>>2]=7}while((M+8|0)>>>0>>0);if((a|0)!=(h|0)){g=a-h|0;c[d>>2]=c[d>>2]&-2;c[h+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{G=b;H=a}}else{c[735]=d|b;G=2980+(a+2<<2)|0;H=e}c[G>>2]=h;c[H+12>>2]=h;c[h+8>>2]=H;c[h+12>>2]=e;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=3244+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[f>>2]=0;b=c[736]|0;a=1<>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}b=c[d>>2]|0;k:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(g|0)){I=d;break k}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;break g}}else I=b;while(0);b=I+8|0;a=c[b>>2]|0;M=c[739]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[h+8>>2]=a;c[h+12>>2]=I;c[h+24>>2]=0;break}else ta()}}else{M=c[739]|0;if((M|0)==0|w>>>0>>0)c[739]=w;c[847]=w;c[848]=p;c[850]=0;c[744]=c[853];c[743]=-1;b=0;do{M=b<<1;L=2980+(M<<2)|0;c[2980+(M+3<<2)>>2]=L;c[2980+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;c[741]=w+M;c[738]=L;c[w+(M+4)>>2]=L|1;c[w+(p+-36)>>2]=40;c[742]=c[857]}while(0);b=c[738]|0;if(b>>>0>q>>>0){L=b-q|0;c[738]=L;M=c[741]|0;c[741]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}}c[(Bh()|0)>>2]=12;M=0;return M|0}function Gi(a){a=a|0;var 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,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;i=c[739]|0;if(b>>>0>>0)ta();d=c[a+-4>>2]|0;e=d&3;if((e|0)==1)ta();o=d&-8;q=a+(o+-8)|0;do if(!(d&1)){b=c[b>>2]|0;if(!e)return;j=-8-b|0;l=a+j|0;m=b+o|0;if(l>>>0>>0)ta();if((l|0)==(c[740]|0)){b=a+(o+-4)|0;d=c[b>>2]|0;if((d&3|0)!=3){u=l;g=m;break}c[737]=m;c[b>>2]=d&-2;c[a+(j+4)>>2]=m|1;c[q>>2]=m;return}f=b>>>3;if(b>>>0<256){e=c[a+(j+8)>>2]|0;d=c[a+(j+12)>>2]|0;b=2980+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0>>0)ta();if((c[e+12>>2]|0)!=(l|0))ta()}if((d|0)==(e|0)){c[735]=c[735]&~(1<>>0>>0)ta();b=d+8|0;if((c[b>>2]|0)==(l|0))h=b;else ta()}else h=d+8|0;c[e+12>>2]=d;c[h>>2]=e;u=l;g=m;break}h=c[a+(j+24)>>2]|0;e=c[a+(j+12)>>2]|0;do if((e|0)==(l|0)){d=a+(j+20)|0;b=c[d>>2]|0;if(!b){d=a+(j+16)|0;b=c[d>>2]|0;if(!b){k=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0>>0)ta();else{c[d>>2]=0;k=b;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)ta();b=f+12|0;if((c[b>>2]|0)!=(l|0))ta();d=e+8|0;if((c[d>>2]|0)==(l|0)){c[b>>2]=e;c[d>>2]=f;k=e;break}else ta()}while(0);if(h){b=c[a+(j+28)>>2]|0;d=3244+(b<<2)|0;if((l|0)==(c[d>>2]|0)){c[d>>2]=k;if(!k){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(l|0))c[b>>2]=k;else c[h+20>>2]=k;if(!k){u=l;g=m;break}}d=c[739]|0;if(k>>>0>>0)ta();c[k+24>>2]=h;b=c[a+(j+16)>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[k+16>>2]=b;c[b+24>>2]=k;break}while(0);b=c[a+(j+20)>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[k+20>>2]=b;c[b+24>>2]=k;u=l;g=m;break}else{u=l;g=m}}else{u=l;g=m}}else{u=b;g=o}while(0);if(u>>>0>=q>>>0)ta();b=a+(o+-4)|0;d=c[b>>2]|0;if(!(d&1))ta();if(!(d&2)){if((q|0)==(c[741]|0)){t=(c[738]|0)+g|0;c[738]=t;c[741]=u;c[u+4>>2]=t|1;if((u|0)!=(c[740]|0))return;c[740]=0;c[737]=0;return}if((q|0)==(c[740]|0)){t=(c[737]|0)+g|0;c[737]=t;c[740]=u;c[u+4>>2]=t|1;c[u+t>>2]=t;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=c[a+(o+16)>>2]|0;b=c[a+(o|4)>>2]|0;do if((b|0)==(q|0)){d=a+(o+12)|0;b=c[d>>2]|0;if(!b){d=a+(o+8)|0;b=c[d>>2]|0;if(!b){p=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<(c[739]|0)>>>0)ta();else{c[d>>2]=0;p=b;break}}else{d=c[a+o>>2]|0;if(d>>>0<(c[739]|0)>>>0)ta();e=d+12|0;if((c[e>>2]|0)!=(q|0))ta();f=b+8|0;if((c[f>>2]|0)==(q|0)){c[e>>2]=b;c[f>>2]=d;p=b;break}else ta()}while(0);if(h){b=c[a+(o+20)>>2]|0;d=3244+(b<<2)|0;if((q|0)==(c[d>>2]|0)){c[d>>2]=p;if(!p){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(q|0))c[b>>2]=p;else c[h+20>>2]=p;if(!p)break}d=c[739]|0;if(p>>>0>>0)ta();c[p+24>>2]=h;b=c[a+(o+8)>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[p+16>>2]=b;c[b+24>>2]=p;break}while(0);b=c[a+(o+12)>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[p+20>>2]=b;c[b+24>>2]=p;break}}}else{e=c[a+o>>2]|0;d=c[a+(o|4)>>2]|0;b=2980+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0<(c[739]|0)>>>0)ta();if((c[e+12>>2]|0)!=(q|0))ta()}if((d|0)==(e|0)){c[735]=c[735]&~(1<>>0<(c[739]|0)>>>0)ta();b=d+8|0;if((c[b>>2]|0)==(q|0))n=b;else ta()}else n=d+8|0;c[e+12>>2]=d;c[n>>2]=e}while(0);c[u+4>>2]=g|1;c[u+g>>2]=g;if((u|0)==(c[740]|0)){c[737]=g;return}}else{c[b>>2]=d&-2;c[u+4>>2]=g|1;c[u+g>>2]=g}b=g>>>3;if(g>>>0<256){d=b<<1;f=2980+(d<<2)|0;e=c[735]|0;b=1<>2]|0;if(d>>>0<(c[739]|0)>>>0)ta();else{r=b;s=d}}else{c[735]=e|b;r=2980+(d+2<<2)|0;s=f}c[r>>2]=u;c[s+12>>2]=u;c[u+8>>2]=s;c[u+12>>2]=f;return}b=g>>>8;if(b)if(g>>>0>16777215)f=31;else{r=(b+1048320|0)>>>16&8;s=b<>>16&4;s=s<>>16&2;f=14-(q|r|f)+(s<>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;b=3244+(f<<2)|0;c[u+28>>2]=f;c[u+20>>2]=0;c[u+16>>2]=0;d=c[736]|0;e=1<>2]|0;b:do if((c[b+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=b+16+(f>>>31<<2)|0;e=c[d>>2]|0;if(!e)break;if((c[e+4>>2]&-8|0)==(g|0)){t=e;break b}else{f=f<<1;b=e}}if(d>>>0<(c[739]|0)>>>0)ta();else{c[d>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;d=c[b>>2]|0;s=c[739]|0;if(d>>>0>=s>>>0&t>>>0>=s>>>0){c[d+12>>2]=u;c[b>>2]=u;c[u+8>>2]=d;c[u+12>>2]=t;c[u+24>>2]=0;break}else ta()}else{c[736]=d|e;c[b>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u}while(0);u=(c[743]|0)+-1|0;c[743]=u;if(!u)b=3396;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[743]=-1;return}function Hi(a,b){a=a|0;b=b|0;var d=0;if(a){d=_(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Fi(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;Qi(b|0,0,d|0)|0;return b|0}function Ii(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Fi(b)|0;return a|0}if(b>>>0>4294967231){c[(Bh()|0)>>2]=12;a=0;return a|0}d=Ki(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d){a=d+8|0;return a|0}d=Fi(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Ui(d|0,a|0,(e>>>0>>0?e:b)|0)|0;Gi(a);a=d;return a|0}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{e=Li(b>>>0<16?16:b,d)|0;break}}else e=Fi(d)|0;while(0);if(!e){a=12;return a|0}c[a>>2]=e;a=0;return a|0}function Ki(a,b){a=a|0;b=b|0;var 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=a+4|0;p=c[o>>2]|0;j=p&-8;l=a+j|0;i=c[739]|0;d=p&3;if(!((d|0)!=1&a>>>0>=i>>>0&a>>>0>>0))ta();e=a+(j|4)|0;f=c[e>>2]|0;if(!(f&1))ta();if(!d){if(b>>>0<256){a=0;return a|0}if(j>>>0>=(b+4|0)>>>0?(j-b|0)>>>0<=c[855]<<1>>>0:0)return a|0;a=0;return a|0}if(j>>>0>=b>>>0){d=j-b|0;if(d>>>0<=15)return a|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|3;c[e>>2]=c[e>>2]|1;Mi(a+b|0,d);return a|0}if((l|0)==(c[741]|0)){d=(c[738]|0)+j|0;if(d>>>0<=b>>>0){a=0;return a|0}n=d-b|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|1;c[741]=a+b;c[738]=n;return a|0}if((l|0)==(c[740]|0)){e=(c[737]|0)+j|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|1;c[a+e>>2]=d;e=a+(e+4)|0;c[e>>2]=c[e>>2]&-2;e=a+b|0}else{c[o>>2]=p&1|e|2;e=a+(e+4)|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[737]=d;c[740]=e;return a|0}if(f&2){a=0;return a|0}m=(f&-8)+j|0;if(m>>>0>>0){a=0;return a|0}n=m-b|0;g=f>>>3;do if(f>>>0>=256){h=c[a+(j+24)>>2]|0;g=c[a+(j+12)>>2]|0;do if((g|0)==(l|0)){e=a+(j+20)|0;d=c[e>>2]|0;if(!d){e=a+(j+16)|0;d=c[e>>2]|0;if(!d){k=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;k=d;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)ta();d=f+12|0;if((c[d>>2]|0)!=(l|0))ta();e=g+8|0;if((c[e>>2]|0)==(l|0)){c[d>>2]=g;c[e>>2]=f;k=g;break}else ta()}while(0);if(h){d=c[a+(j+28)>>2]|0;e=3244+(d<<2)|0;if((l|0)==(c[e>>2]|0)){c[e>>2]=k;if(!k){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=h+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=k;else c[h+20>>2]=k;if(!k)break}e=c[739]|0;if(k>>>0>>0)ta();c[k+24>>2]=h;d=c[a+(j+16)>>2]|0;do if(d)if(d>>>0>>0)ta();else{c[k+16>>2]=d;c[d+24>>2]=k;break}while(0);d=c[a+(j+20)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[k+20>>2]=d;c[d+24>>2]=k;break}}}else{f=c[a+(j+8)>>2]|0;e=c[a+(j+12)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(l|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(l|0))h=d;else ta()}else h=e+8|0;c[f+12>>2]=e;c[h>>2]=f}while(0);if(n>>>0<16){c[o>>2]=m|p&1|2;b=a+(m|4)|0;c[b>>2]=c[b>>2]|1;return a|0}else{c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|3;p=a+(m|4)|0;c[p>>2]=c[p>>2]|1;Mi(a+b|0,n);return a|0}return 0}function Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;a=a>>>0<16?16:a;if(a+-1&a){d=16;while(1)if(d>>>0>>0)d=d<<1;else{a=d;break}}if((-64-a|0)>>>0<=b>>>0){c[(Bh()|0)>>2]=12;i=0;return i|0}h=b>>>0<11?16:b+11&-8;e=Fi(h+12+a|0)|0;if(!e){i=0;return i|0}b=e+-8|0;d=a+-1|0;do if(e&d){f=e+d&0-a;d=f+-8|0;g=b;f=(d-g|0)>>>0>15?d:f+(a+-8)|0;g=f-g|0;a=e+-4|0;e=c[a>>2]|0;d=(e&-8)-g|0;if(!(e&3)){c[f>>2]=(c[b>>2]|0)+g;c[f+4>>2]=d;b=f;break}else{e=f+4|0;c[e>>2]=d|c[e>>2]&1|2;d=f+(d+4)|0;c[d>>2]=c[d>>2]|1;c[a>>2]=g|c[a>>2]&1|2;c[e>>2]=c[e>>2]|1;Mi(b,g);b=f;break}}while(0);a=b+4|0;d=c[a>>2]|0;if((d&3|0)!=0?(i=d&-8,i>>>0>(h+16|0)>>>0):0){g=i-h|0;c[a>>2]=h|d&1|2;c[b+(h|4)>>2]=g|3;i=b+(i|4)|0;c[i>>2]=c[i>>2]|1;Mi(b+h|0,g)}i=b+8|0;return i|0}function Mi(a,b){a=a|0;b=b|0;var 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;q=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){k=c[a>>2]|0;if(!(d&3))return;n=a+(0-k)|0;m=k+b|0;j=c[739]|0;if(n>>>0>>0)ta();if((n|0)==(c[740]|0)){e=a+(b+4)|0;d=c[e>>2]|0;if((d&3|0)!=3){t=n;h=m;break}c[737]=m;c[e>>2]=d&-2;c[a+(4-k)>>2]=m|1;c[q>>2]=m;return}g=k>>>3;if(k>>>0<256){f=c[a+(8-k)>>2]|0;e=c[a+(12-k)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(n|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(n|0))i=d;else ta()}else i=e+8|0;c[f+12>>2]=e;c[i>>2]=f;t=n;h=m;break}i=c[a+(24-k)>>2]|0;f=c[a+(12-k)>>2]|0;do if((f|0)==(n|0)){f=16-k|0;e=a+(f+4)|0;d=c[e>>2]|0;if(!d){e=a+f|0;d=c[e>>2]|0;if(!d){l=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;l=d;break}}else{g=c[a+(8-k)>>2]|0;if(g>>>0>>0)ta();d=g+12|0;if((c[d>>2]|0)!=(n|0))ta();e=f+8|0;if((c[e>>2]|0)==(n|0)){c[d>>2]=f;c[e>>2]=g;l=f;break}else ta()}while(0);if(i){d=c[a+(28-k)>>2]|0;e=3244+(d<<2)|0;if((n|0)==(c[e>>2]|0)){c[e>>2]=l;if(!l){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=i+16|0;if((c[d>>2]|0)==(n|0))c[d>>2]=l;else c[i+20>>2]=l;if(!l){t=n;h=m;break}}f=c[739]|0;if(l>>>0>>0)ta();c[l+24>>2]=i;d=16-k|0;e=c[a+d>>2]|0;do if(e)if(e>>>0>>0)ta();else{c[l+16>>2]=e;c[e+24>>2]=l;break}while(0);d=c[a+(d+4)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[l+20>>2]=d;c[d+24>>2]=l;t=n;h=m;break}else{t=n;h=m}}else{t=n;h=m}}else{t=a;h=b}while(0);j=c[739]|0;if(q>>>0>>0)ta();d=a+(b+4)|0;e=c[d>>2]|0;if(!(e&2)){if((q|0)==(c[741]|0)){s=(c[738]|0)+h|0;c[738]=s;c[741]=t;c[t+4>>2]=s|1;if((t|0)!=(c[740]|0))return;c[740]=0;c[737]=0;return}if((q|0)==(c[740]|0)){s=(c[737]|0)+h|0;c[737]=s;c[740]=t;c[t+4>>2]=s|1;c[t+s>>2]=s;return}h=(e&-8)+h|0;g=e>>>3;do if(e>>>0>=256){i=c[a+(b+24)>>2]|0;f=c[a+(b+12)>>2]|0;do if((f|0)==(q|0)){e=a+(b+20)|0;d=c[e>>2]|0;if(!d){e=a+(b+16)|0;d=c[e>>2]|0;if(!d){p=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;p=d;break}}else{g=c[a+(b+8)>>2]|0;if(g>>>0>>0)ta();d=g+12|0;if((c[d>>2]|0)!=(q|0))ta();e=f+8|0;if((c[e>>2]|0)==(q|0)){c[d>>2]=f;c[e>>2]=g;p=f;break}else ta()}while(0);if(i){d=c[a+(b+28)>>2]|0;e=3244+(d<<2)|0;if((q|0)==(c[e>>2]|0)){c[e>>2]=p;if(!p){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=i+16|0;if((c[d>>2]|0)==(q|0))c[d>>2]=p;else c[i+20>>2]=p;if(!p)break}e=c[739]|0;if(p>>>0>>0)ta();c[p+24>>2]=i;d=c[a+(b+16)>>2]|0;do if(d)if(d>>>0>>0)ta();else{c[p+16>>2]=d;c[d+24>>2]=p;break}while(0);d=c[a+(b+20)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[p+20>>2]=d;c[d+24>>2]=p;break}}}else{f=c[a+(b+8)>>2]|0;e=c[a+(b+12)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(q|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(q|0))o=d;else ta()}else o=e+8|0;c[f+12>>2]=e;c[o>>2]=f}while(0);c[t+4>>2]=h|1;c[t+h>>2]=h;if((t|0)==(c[740]|0)){c[737]=h;return}}else{c[d>>2]=e&-2;c[t+4>>2]=h|1;c[t+h>>2]=h}d=h>>>3;if(h>>>0<256){e=d<<1;g=2980+(e<<2)|0;f=c[735]|0;d=1<>2]|0;if(e>>>0<(c[739]|0)>>>0)ta();else{r=d;s=e}}else{c[735]=f|d;r=2980+(e+2<<2)|0;s=g}c[r>>2]=t;c[s+12>>2]=t;c[t+8>>2]=s;c[t+12>>2]=g;return}d=h>>>8;if(d)if(h>>>0>16777215)g=31;else{r=(d+1048320|0)>>>16&8;s=d<>>16&4;s=s<>>16&2;g=14-(q|r|g)+(s<>>15)|0;g=h>>>(g+7|0)&1|g<<1}else g=0;d=3244+(g<<2)|0;c[t+28>>2]=g;c[t+20>>2]=0;c[t+16>>2]=0;e=c[736]|0;f=1<>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}d=c[d>>2]|0;a:do if((c[d+4>>2]&-8|0)!=(h|0)){g=h<<((g|0)==31?0:25-(g>>>1)|0);while(1){e=d+16+(g>>>31<<2)|0;f=c[e>>2]|0;if(!f)break;if((c[f+4>>2]&-8|0)==(h|0)){d=f;break a}else{g=g<<1;d=f}}if(e>>>0<(c[739]|0)>>>0)ta();c[e>>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}while(0);e=d+8|0;f=c[e>>2]|0;s=c[739]|0;if(!(f>>>0>=s>>>0&d>>>0>=s>>>0))ta();c[f+12>>2]=t;c[e>>2]=t;c[t+8>>2]=f;c[t+12>>2]=d;c[t+24>>2]=0;return}function Ni(){}function Oi(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 (C=d,a-c>>>0|0)|0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>>>c|(b&(1<>c-32|0}function Qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<>>32-c;return a<>>0;return (C=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Ti(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Ui(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return ya(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Vi(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function Wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xi(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=Oi(j^a,i^b,j,i)|0;g=C;a=f^j;b=e^i;return Oi((aj(h,g,Oi(f^c,e^d,f,e)|0,C,0)|0)^a,C^b,a,b)|0}function Yi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=Oi(h^a,g^b,h,g)|0;b=C;aj(a,b,Oi(l^d,k^e,l,k)|0,C,j)|0;e=Oi(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;d=C;i=f;return (C=d,e)|0}function Zi(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=Wi(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return aj(a,b,c,d,0)|0}function $i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;aj(a,b,d,e,f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function aj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(aa(i|0)|0)-(aa(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<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if(g&h){i=(aa(h|0)|0)+33-(aa(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<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (C=o,p)|0}else{p=Vi(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Vi(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Si(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Oi(k,d,e,n)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Oi(e,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (C=o,p)|0}function bj(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 Qa[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function cj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ra[a&63](b|0,c|0,d|0)|0}function dj(a,b){a=a|0;b=b|0;return +Sa[a&3](b|0)}function ej(a,b){a=a|0;b=b|0;Ta[a&7](b|0)}function fj(a,b,c){a=a|0;b=b|0;c=c|0;Ua[a&7](b|0,c|0)}function gj(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 Va[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function hj(a,b){a=a|0;b=b|0;return Wa[a&15](b|0)|0}function ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Xa[a&15](b|0,c|0,d|0)}function jj(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;return Ya[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function kj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Za[a&63](b|0,c|0,d|0,e|0)|0}function lj(a,b,c){a=a|0;b=b|0;c=c|0;return _a[a&7](b|0,c|0)|0}function mj(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 $a[a&3](b|0,c|0,d|0,e|0,f|0)|0}function nj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ab[a&3](b|0,c|0,d|0,e|0)}function oj(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;ba(0);return 0}function pj(a,b,c){a=a|0;b=b|0;c=c|0;ba(1);return 0}function qj(a){a=a|0;ba(2);return 0.0}function rj(a){a=a|0;ba(3)}function sj(a,b){a=a|0;b=b|0;ba(4)}function tj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function uj(a){a=a|0;ba(6);return 0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function wj(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;ba(8);return 0}function xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function yj(a,b){a=a|0;b=b|0;ba(10);return 0}function zj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(11);return 0}function Aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(12)} + +// EMSCRIPTEN_END_FUNCS +var Qa=[oj,ed,We,oj];var Ra=[pj,Bi,Vh,Th,Ab,Bb,Cb,Db,Hc,Ic,Kc,$c,nd,Oe,af,od,pd,Ne,Pe,Lc,Mc,Nc,Oc,td,ud,vd,wd,yd,zd,Bd,Cd,Dd,Ed,Fd,Gd,Hd,Id,Jd,Kd,Ld,Md,Nd,Od,Pd,Qd,Rd,Sd,Td,Ud,Vd,Wd,Xd,ef,ff,gf,hf,jf,kf,lf,mf,Sh,Uh,pj,pj];var Sa=[qj,Yd,Zd,qj];var Ta=[rj,Yc,Ve,gg,hg,xi,yi,rj];var Ua=[sj,mb,nb,ob,Wb,Wc,Le,sj];var Va=[tj,dd,Ue,rd,Te,tj,tj,tj];var Wa=[uj,Rh,jd,kd,$e,_e,Yh,Kg,Hg,uj,uj,uj,uj,uj,uj,uj];var Xa=[vj,Ge,He,Ie,Je,Ae,Be,Ce,De,we,xe,ye,ze,gd,Ze,vj];var Ya=[wj,cd,Se,wj];var Za=[xj,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,xf,yf,zf,rf,sf,tf,uf,vf,wf,wb,xb,yb,zb,ld,ad,Ke,Re,qd,Zc,Qe,Me,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj];var _a=[yj,Jc,nf,of,pf,qf,yj,yj];var $a=[zj,md,Xe,zj];var ab=[Aj,Og,Rg,Aj];return{_opj_stream_destroy:Fb,_opj_stream_set_read_function:Gb,_opj_read_tile_header:mc,_opj_set_warning_handler:cc,_opj_destroy_cstr_info:Cc,_opj_image_create:Yb,_opj_set_error_handler:dc,_opj_stream_set_user_data:Kb,_opj_end_decompress:wc,_bitshift64Lshr:Ti,_opj_stream_set_seek_function:Hb,_opj_decode:kc,_opj_set_decoded_resolution_factor:pc,_i64Add:Si,_opj_stream_create_default_file_stream:Fc,_opj_set_default_decoder_parameters:hc,_bitshift64Ashr:Pi,_opj_get_decoded_tile:oc,_memset:Qi,_opj_version:fc,_memcpy:Ui,_opj_destroy_cstr_index:Ec,_opj_stream_set_user_data_length:Lb,_opj_stream_set_skip_function:Jb,_opj_image_destroy:Zb,_opj_stream_create_file_stream:Gc,_opj_setup_encoder:sc,_opj_stream_default_create:Eb,_bitshift64Shl:Ri,_opj_stream_create:vb,_jp2_version:lb,_i64Subtract:Oi,_opj_get_cstr_index:Dc,_opj_encode:uc,_opj_read_header:jc,_opj_get_cstr_info:Bc,_opj_set_default_encoder_parameters:rc,_opj_set_decode_area:lc,_opj_stream_set_write_function:Ib,_opj_dump_codec:Ac,_opj_create_decompress:gc,_opj_decode_tile_data:nc,_free:Gi,_opj_image_tile_create:ac,_opj_set_MCT:xc,_opj_set_info_handler:bc,_opj_start_compress:tc,_opj_write_tile:yc,_opj_setup_decoder:ic,_malloc:Fi,_opj_end_compress:vc,_opj_destroy_codec:zc,_jp2_decode:kb,_opj_stream_create_buffer_stream:ec,_opj_create_compress:qc,runPostSets:Ni,stackAlloc:bb,stackSave:cb,stackRestore:db,establishStackSpace:eb,setThrew:fb,setTempRet0:ib,getTempRet0:jb,dynCall_iiiiiiii:bj,dynCall_iiii:cj,dynCall_di:dj,dynCall_vi:ej,dynCall_vii:fj,dynCall_iiiiiii:gj,dynCall_ii:hj,dynCall_viii:ij,dynCall_iiiiiiiiiiii:jj,dynCall_iiiii:kj,dynCall_iii:lj,dynCall_iiiiii:mj,dynCall_viiii:nj}}) + + +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _opj_stream_destroy=Module["_opj_stream_destroy"]=asm["_opj_stream_destroy"];var _opj_stream_set_read_function=Module["_opj_stream_set_read_function"]=asm["_opj_stream_set_read_function"];var _opj_read_tile_header=Module["_opj_read_tile_header"]=asm["_opj_read_tile_header"];var _opj_set_warning_handler=Module["_opj_set_warning_handler"]=asm["_opj_set_warning_handler"];var _opj_destroy_cstr_info=Module["_opj_destroy_cstr_info"]=asm["_opj_destroy_cstr_info"];var _opj_image_create=Module["_opj_image_create"]=asm["_opj_image_create"];var _opj_set_error_handler=Module["_opj_set_error_handler"]=asm["_opj_set_error_handler"];var _opj_image_tile_create=Module["_opj_image_tile_create"]=asm["_opj_image_tile_create"];var _opj_end_decompress=Module["_opj_end_decompress"]=asm["_opj_end_decompress"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _opj_stream_set_seek_function=Module["_opj_stream_set_seek_function"]=asm["_opj_stream_set_seek_function"];var _opj_decode=Module["_opj_decode"]=asm["_opj_decode"];var _opj_set_decoded_resolution_factor=Module["_opj_set_decoded_resolution_factor"]=asm["_opj_set_decoded_resolution_factor"];var _opj_stream_create_default_file_stream=Module["_opj_stream_create_default_file_stream"]=asm["_opj_stream_create_default_file_stream"];var _opj_encode=Module["_opj_encode"]=asm["_opj_encode"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _opj_get_decoded_tile=Module["_opj_get_decoded_tile"]=asm["_opj_get_decoded_tile"];var _memset=Module["_memset"]=asm["_memset"];var _opj_version=Module["_opj_version"]=asm["_opj_version"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _opj_destroy_cstr_index=Module["_opj_destroy_cstr_index"]=asm["_opj_destroy_cstr_index"];var _opj_stream_set_user_data_length=Module["_opj_stream_set_user_data_length"]=asm["_opj_stream_set_user_data_length"];var _opj_stream_set_skip_function=Module["_opj_stream_set_skip_function"]=asm["_opj_stream_set_skip_function"];var _opj_image_destroy=Module["_opj_image_destroy"]=asm["_opj_image_destroy"];var _opj_stream_create_file_stream=Module["_opj_stream_create_file_stream"]=asm["_opj_stream_create_file_stream"];var _opj_setup_encoder=Module["_opj_setup_encoder"]=asm["_opj_setup_encoder"];var _opj_stream_default_create=Module["_opj_stream_default_create"]=asm["_opj_stream_default_create"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _opj_stream_create=Module["_opj_stream_create"]=asm["_opj_stream_create"];var _jp2_version=Module["_jp2_version"]=asm["_jp2_version"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _opj_get_cstr_index=Module["_opj_get_cstr_index"]=asm["_opj_get_cstr_index"];var _opj_set_default_decoder_parameters=Module["_opj_set_default_decoder_parameters"]=asm["_opj_set_default_decoder_parameters"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _opj_get_cstr_info=Module["_opj_get_cstr_info"]=asm["_opj_get_cstr_info"];var _opj_set_default_encoder_parameters=Module["_opj_set_default_encoder_parameters"]=asm["_opj_set_default_encoder_parameters"];var _opj_set_decode_area=Module["_opj_set_decode_area"]=asm["_opj_set_decode_area"];var _opj_stream_set_write_function=Module["_opj_stream_set_write_function"]=asm["_opj_stream_set_write_function"];var _opj_dump_codec=Module["_opj_dump_codec"]=asm["_opj_dump_codec"];var _opj_read_header=Module["_opj_read_header"]=asm["_opj_read_header"];var _opj_create_decompress=Module["_opj_create_decompress"]=asm["_opj_create_decompress"];var _opj_decode_tile_data=Module["_opj_decode_tile_data"]=asm["_opj_decode_tile_data"];var _opj_set_info_handler=Module["_opj_set_info_handler"]=asm["_opj_set_info_handler"];var _opj_stream_set_user_data=Module["_opj_stream_set_user_data"]=asm["_opj_stream_set_user_data"];var _opj_set_MCT=Module["_opj_set_MCT"]=asm["_opj_set_MCT"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _opj_start_compress=Module["_opj_start_compress"]=asm["_opj_start_compress"];var _opj_write_tile=Module["_opj_write_tile"]=asm["_opj_write_tile"];var _opj_setup_decoder=Module["_opj_setup_decoder"]=asm["_opj_setup_decoder"];var _malloc=Module["_malloc"]=asm["_malloc"];var _opj_end_compress=Module["_opj_end_compress"]=asm["_opj_end_compress"];var _opj_destroy_codec=Module["_opj_destroy_codec"]=asm["_opj_destroy_codec"];var _jp2_decode=Module["_jp2_decode"]=asm["_jp2_decode"];var _opj_stream_create_buffer_stream=Module["_opj_stream_create_buffer_stream"]=asm["_opj_stream_create_buffer_stream"];var _opj_create_compress=Module["_opj_create_compress"]=asm["_opj_create_compress"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run() + + + + + + return Module; +}; + + +/*** EXPORTS FROM exports-loader ***/ +module.exports = OpenJPEG; + +/***/ }), + +/***/ "../node_modules/worker-loader/dist/workers/InlineWorker.js": +/*!******************************************************************!*\ + !*** ../node_modules/worker-loader/dist/workers/InlineWorker.js ***! + \******************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +// http://stackoverflow.com/questions/10343913/how-to-create-a-web-worker-from-a-string + +var URL = window.URL || window.webkitURL; + +module.exports = function (content, url) { + try { + try { + var blob; + + try { + // BlobBuilder = Deprecated, but widely implemented + var BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder; + + blob = new BlobBuilder(); + + blob.append(content); + + blob = blob.getBlob(); + } catch (e) { + // The proposed API + blob = new Blob([content]); + } + + return new Worker(URL.createObjectURL(blob)); + } catch (e) { + return new Worker('data:application/javascript,' + encodeURIComponent(content)); + } + } catch (e) { + if (!url) { + throw Error('Inline worker is not supported'); + } + + return new Worker(url); + } +}; + +/***/ }), + +/***/ "./externalModules.js": +/*!****************************!*\ + !*** ./externalModules.js ***! + \****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _imageLoader_registerLoaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./imageLoader/registerLoaders.js */ "./imageLoader/registerLoaders.js"); +/* eslint import/extensions:0 */ + +var cornerstone; +var dicomParser; +var external = { + set cornerstone(cs) { + cornerstone = cs; + Object(_imageLoader_registerLoaders_js__WEBPACK_IMPORTED_MODULE_0__["default"])(cornerstone); + }, + + get cornerstone() { + if (!cornerstone) { + if (window && window.cornerstone) { + cornerstone = window.cornerstone; + Object(_imageLoader_registerLoaders_js__WEBPACK_IMPORTED_MODULE_0__["default"])(cornerstone); + } else { + throw new Error('cornerstoneWADOImageLoader requires a copy of Cornerstone to work properly. Please add cornerstoneWADOImageLoader.external.cornerstone = cornerstone; to your application.'); + } + } + + return cornerstone; + }, + + set dicomParser(dp) { + dicomParser = dp; + }, + + get dicomParser() { + if (!dicomParser) { + if (window && window.dicomParser) { + dicomParser = window.dicomParser; + } else { + throw new Error('cornerstoneWADOImageLoader requires a copy of dicomParser to work properly. Please add cornerstoneWADOImageLoader.external.dicomParser = dicomParser; to your application.'); + } + } + + return dicomParser; + } + +}; +/* harmony default export */ __webpack_exports__["default"] = (external); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/convertPALETTECOLOR.js": +/*!*****************************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/convertPALETTECOLOR.js ***! + \*****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* eslint no-bitwise: 0 */ +function convertLUTto8Bit(lut, shift) { + var numEntries = lut.length; + var cleanedLUT = new Uint8ClampedArray(numEntries); + + for (var i = 0; i < numEntries; ++i) { + cleanedLUT[i] = lut[i] >> shift; + } + + return cleanedLUT; +} +/** + * Convert pixel data with PALETTE COLOR Photometric Interpretation to RGBA + * + * @param {ImageFrame} imageFrame + * @param {Uint8ClampedArray} rgbaBuffer + * @returns {void} + */ + + +/* harmony default export */ __webpack_exports__["default"] = (function (imageFrame, rgbaBuffer) { + var numPixels = imageFrame.columns * imageFrame.rows; + var pixelData = imageFrame.pixelData; + var rData = imageFrame.redPaletteColorLookupTableData; + var gData = imageFrame.greenPaletteColorLookupTableData; + var bData = imageFrame.bluePaletteColorLookupTableData; + var len = imageFrame.redPaletteColorLookupTableData.length; + var palIndex = 0; + var rgbaIndex = 0; + var start = imageFrame.redPaletteColorLookupTableDescriptor[1]; + var shift = imageFrame.redPaletteColorLookupTableDescriptor[2] === 8 ? 0 : 8; + var rDataCleaned = convertLUTto8Bit(rData, shift); + var gDataCleaned = convertLUTto8Bit(gData, shift); + var bDataCleaned = convertLUTto8Bit(bData, shift); + + for (var i = 0; i < numPixels; ++i) { + var value = pixelData[palIndex++]; + + if (value < start) { + value = 0; + } else if (value > start + len - 1) { + value = len - 1; + } else { + value -= start; + } + + rgbaBuffer[rgbaIndex++] = rDataCleaned[value]; + rgbaBuffer[rgbaIndex++] = gDataCleaned[value]; + rgbaBuffer[rgbaIndex++] = bDataCleaned[value]; + rgbaBuffer[rgbaIndex++] = 255; + } +}); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/convertRGBColorByPixel.js": +/*!********************************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/convertRGBColorByPixel.js ***! + \********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (imageFrame, rgbaBuffer) { + if (imageFrame === undefined) { + throw new Error('decodeRGB: rgbBuffer must not be undefined'); + } + + if (imageFrame.length % 3 !== 0) { + throw new Error('decodeRGB: rgbBuffer length must be divisible by 3'); + } + + var numPixels = imageFrame.length / 3; + var rgbIndex = 0; + var rgbaIndex = 0; + + for (var i = 0; i < numPixels; i++) { + rgbaBuffer[rgbaIndex++] = imageFrame[rgbIndex++]; // red + + rgbaBuffer[rgbaIndex++] = imageFrame[rgbIndex++]; // green + + rgbaBuffer[rgbaIndex++] = imageFrame[rgbIndex++]; // blue + + rgbaBuffer[rgbaIndex++] = 255; // alpha + } +}); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/convertRGBColorByPlane.js": +/*!********************************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/convertRGBColorByPlane.js ***! + \********************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (imageFrame, rgbaBuffer) { + if (imageFrame === undefined) { + throw new Error('decodeRGB: rgbBuffer must not be undefined'); + } + + if (imageFrame.length % 3 !== 0) { + throw new Error('decodeRGB: rgbBuffer length must be divisible by 3'); + } + + var numPixels = imageFrame.length / 3; + var rgbaIndex = 0; + var rIndex = 0; + var gIndex = numPixels; + var bIndex = numPixels * 2; + + for (var i = 0; i < numPixels; i++) { + rgbaBuffer[rgbaIndex++] = imageFrame[rIndex++]; // red + + rgbaBuffer[rgbaIndex++] = imageFrame[gIndex++]; // green + + rgbaBuffer[rgbaIndex++] = imageFrame[bIndex++]; // blue + + rgbaBuffer[rgbaIndex++] = 255; // alpha + } +}); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/convertYBRFullByPixel.js": +/*!*******************************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/convertYBRFullByPixel.js ***! + \*******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (imageFrame, rgbaBuffer) { + if (imageFrame === undefined) { + throw new Error('decodeRGB: ybrBuffer must not be undefined'); + } + + if (imageFrame.length % 3 !== 0) { + throw new Error('decodeRGB: ybrBuffer length must be divisble by 3'); + } + + var numPixels = imageFrame.length / 3; + var ybrIndex = 0; + var rgbaIndex = 0; + + for (var i = 0; i < numPixels; i++) { + var y = imageFrame[ybrIndex++]; + var cb = imageFrame[ybrIndex++]; + var cr = imageFrame[ybrIndex++]; + rgbaBuffer[rgbaIndex++] = y + 1.40200 * (cr - 128); // red + + rgbaBuffer[rgbaIndex++] = y - 0.34414 * (cb - 128) - 0.71414 * (cr - 128); // green + + rgbaBuffer[rgbaIndex++] = y + 1.77200 * (cb - 128); // blue + + rgbaBuffer[rgbaIndex++] = 255; // alpha + } +}); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/convertYBRFullByPlane.js": +/*!*******************************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/convertYBRFullByPlane.js ***! + \*******************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (imageFrame, rgbaBuffer) { + if (imageFrame === undefined) { + throw new Error('decodeRGB: ybrBuffer must not be undefined'); + } + + if (imageFrame.length % 3 !== 0) { + throw new Error('decodeRGB: ybrBuffer length must be divisble by 3'); + } + + var numPixels = imageFrame.length / 3; + var rgbaIndex = 0; + var yIndex = 0; + var cbIndex = numPixels; + var crIndex = numPixels * 2; + + for (var i = 0; i < numPixels; i++) { + var y = imageFrame[yIndex++]; + var cb = imageFrame[cbIndex++]; + var cr = imageFrame[crIndex++]; + rgbaBuffer[rgbaIndex++] = y + 1.40200 * (cr - 128); // red + + rgbaBuffer[rgbaIndex++] = y - 0.34414 * (cb - 128) - 0.71414 * (cr - 128); // green + + rgbaBuffer[rgbaIndex++] = y + 1.77200 * (cb - 128); // blue + + rgbaBuffer[rgbaIndex++] = 255; // alpha + } +}); + +/***/ }), + +/***/ "./imageLoader/colorSpaceConverters/index.js": +/*!***************************************************!*\ + !*** ./imageLoader/colorSpaceConverters/index.js ***! + \***************************************************/ +/*! exports provided: convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _convertRGBColorByPixel_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./convertRGBColorByPixel.js */ "./imageLoader/colorSpaceConverters/convertRGBColorByPixel.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertRGBColorByPixel", function() { return _convertRGBColorByPixel_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _convertRGBColorByPlane_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./convertRGBColorByPlane.js */ "./imageLoader/colorSpaceConverters/convertRGBColorByPlane.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertRGBColorByPlane", function() { return _convertRGBColorByPlane_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _convertYBRFullByPixel_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./convertYBRFullByPixel.js */ "./imageLoader/colorSpaceConverters/convertYBRFullByPixel.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertYBRFullByPixel", function() { return _convertYBRFullByPixel_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _convertYBRFullByPlane_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./convertYBRFullByPlane.js */ "./imageLoader/colorSpaceConverters/convertYBRFullByPlane.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertYBRFullByPlane", function() { return _convertYBRFullByPlane_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _convertPALETTECOLOR_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./convertPALETTECOLOR.js */ "./imageLoader/colorSpaceConverters/convertPALETTECOLOR.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertPALETTECOLOR", function() { return _convertPALETTECOLOR_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + + + + + + + + +/***/ }), + +/***/ "./imageLoader/configure.js": +/*!**********************************!*\ + !*** ./imageLoader/configure.js ***! + \**********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/index.js */ "./imageLoader/internal/index.js"); + + +function configure(options) { + Object(_internal_index_js__WEBPACK_IMPORTED_MODULE_0__["setOptions"])(options); +} + +/* harmony default export */ __webpack_exports__["default"] = (configure); + +/***/ }), + +/***/ "./imageLoader/convertColorSpace.js": +/*!******************************************!*\ + !*** ./imageLoader/convertColorSpace.js ***! + \******************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return convertColorSpace; }); +/* harmony import */ var _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./colorSpaceConverters/index.js */ "./imageLoader/colorSpaceConverters/index.js"); + + +function convertRGB(imageFrame, rgbaBuffer) { + if (imageFrame.planarConfiguration === 0) { + Object(_colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPixel"])(imageFrame.pixelData, rgbaBuffer); + } else { + Object(_colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPlane"])(imageFrame.pixelData, rgbaBuffer); + } +} + +function convertYBRFull(imageFrame, rgbaBuffer) { + if (imageFrame.planarConfiguration === 0) { + Object(_colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPixel"])(imageFrame.pixelData, rgbaBuffer); + } else { + Object(_colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPlane"])(imageFrame.pixelData, rgbaBuffer); + } +} + +function convertColorSpace(imageFrame, imageData) { + var rgbaBuffer = imageData.data; // convert based on the photometric interpretation + + if (imageFrame.photometricInterpretation === 'RGB') { + convertRGB(imageFrame, rgbaBuffer); + } else if (imageFrame.photometricInterpretation === 'YBR_RCT') { + convertRGB(imageFrame, rgbaBuffer); + } else if (imageFrame.photometricInterpretation === 'YBR_ICT') { + convertRGB(imageFrame, rgbaBuffer); + } else if (imageFrame.photometricInterpretation === 'PALETTE COLOR') { + Object(_colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertPALETTECOLOR"])(imageFrame, rgbaBuffer); + } else if (imageFrame.photometricInterpretation === 'YBR_FULL_422') { + convertRGB(imageFrame, rgbaBuffer); + } else if (imageFrame.photometricInterpretation === 'YBR_FULL') { + convertYBRFull(imageFrame, rgbaBuffer); + } else { + throw new Error("No color space conversion for photometric interpretation ".concat(imageFrame.photometricInterpretation)); + } +} + +/***/ }), + +/***/ "./imageLoader/createImage.js": +/*!************************************!*\ + !*** ./imageLoader/createImage.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _getImageFrame_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getImageFrame.js */ "./imageLoader/getImageFrame.js"); +/* harmony import */ var _decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./decodeImageFrame.js */ "./imageLoader/decodeImageFrame.js"); +/* harmony import */ var _isColorImage_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isColorImage.js */ "./imageLoader/isColorImage.js"); +/* harmony import */ var _convertColorSpace_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./convertColorSpace.js */ "./imageLoader/convertColorSpace.js"); +/* harmony import */ var _shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shared/getMinMax.js */ "./shared/getMinMax.js"); +/* harmony import */ var _isJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isJPEGBaseline8BitColor.js */ "./imageLoader/isJPEGBaseline8BitColor.js"); + + + + + + + +var lastImageIdDrawn = ''; + +function isModalityLUTForDisplay(sopClassUid) { + // special case for XA and XRF + // https://groups.google.com/forum/#!searchin/comp.protocols.dicom/Modality$20LUT$20XA/comp.protocols.dicom/UBxhOZ2anJ0/D0R_QP8V2wIJ + return sopClassUid !== '1.2.840.10008.5.1.4.1.1.12.1' && // XA + sopClassUid !== '1.2.840.10008.5.1.4.1.1.12.2.1'; // XRF +} + +function convertToIntPixelData(floatPixelData) { + var floatMinMax = Object(_shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_5__["default"])(floatPixelData); + var floatRange = Math.abs(floatMinMax.max - floatMinMax.min); + var intRange = 65535; + var slope = floatRange / intRange; + var intercept = floatMinMax.min; + var numPixels = floatPixelData.length; + var intPixelData = new Uint16Array(numPixels); + var min = 65535; + var max = 0; + + for (var i = 0; i < numPixels; i++) { + var rescaledPixel = Math.floor((floatPixelData[i] - intercept) / slope); + intPixelData[i] = rescaledPixel; + min = Math.min(min, rescaledPixel); + max = Math.max(max, rescaledPixel); + } + + return { + min: min, + max: max, + intPixelData: intPixelData, + slope: slope, + intercept: intercept + }; +} +/** + * Helper function to set pixel data to the right typed array. This is needed because web workers + * can transfer array buffers but not typed arrays + * @param imageFrame + */ + + +function setPixelDataType(imageFrame) { + if (imageFrame.bitsAllocated === 32) { + imageFrame.pixelData = new Float32Array(imageFrame.pixelData); + } else if (imageFrame.bitsAllocated === 16) { + if (imageFrame.pixelRepresentation === 0) { + imageFrame.pixelData = new Uint16Array(imageFrame.pixelData); + } else { + imageFrame.pixelData = new Int16Array(imageFrame.pixelData); + } + } else { + imageFrame.pixelData = new Uint8Array(imageFrame.pixelData); + } +} + +function createImage(imageId, pixelData, transferSyntax, options) { + if (!pixelData || !pixelData.length) { + return Promise.reject(new Error('The file does not contain image data.')); + } + + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var canvas = document.createElement('canvas'); + var imageFrame = Object(_getImageFrame_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageId); + var decodePromise = Object(_decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_2__["default"])(imageFrame, transferSyntax, pixelData, canvas, options); + return new Promise(function (resolve, reject) { + decodePromise.then(function (imageFrame) { + var imagePlaneModule = cornerstone.metaData.get('imagePlaneModule', imageId) || {}; + var voiLutModule = cornerstone.metaData.get('voiLutModule', imageId) || {}; + var modalityLutModule = cornerstone.metaData.get('modalityLutModule', imageId) || {}; + var sopCommonModule = cornerstone.metaData.get('sopCommonModule', imageId) || {}; + var isColorImage = Object(_isColorImage_js__WEBPACK_IMPORTED_MODULE_3__["default"])(imageFrame.photometricInterpretation); // JPEGBaseline (8 bits) is already returning the pixel data in the right format (rgba) + // because it's using a canvas to load and decode images. + + if (!Object(_isJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_6__["default"])(imageFrame, transferSyntax)) { + setPixelDataType(imageFrame); // convert color space + + if (isColorImage) { + // setup the canvas context + canvas.height = imageFrame.rows; + canvas.width = imageFrame.columns; + var context = canvas.getContext('2d'); + var imageData = context.createImageData(imageFrame.columns, imageFrame.rows); + Object(_convertColorSpace_js__WEBPACK_IMPORTED_MODULE_4__["default"])(imageFrame, imageData); + imageFrame.imageData = imageData; + imageFrame.pixelData = imageData.data; // calculate smallest and largest PixelValue of the converted pixelData + + var minMax = Object(_shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_5__["default"])(imageFrame.pixelData); + imageFrame.smallestPixelValue = minMax.min; + imageFrame.largestPixelValue = minMax.max; + } + } + + var image = { + imageId: imageId, + color: isColorImage, + columnPixelSpacing: imagePlaneModule.columnPixelSpacing, + columns: imageFrame.columns, + height: imageFrame.rows, + intercept: modalityLutModule.rescaleIntercept ? modalityLutModule.rescaleIntercept : 0, + invert: imageFrame.photometricInterpretation === 'MONOCHROME1', + minPixelValue: imageFrame.smallestPixelValue, + maxPixelValue: imageFrame.largestPixelValue, + rowPixelSpacing: imagePlaneModule.rowPixelSpacing, + rows: imageFrame.rows, + sizeInBytes: imageFrame.pixelData.length, + slope: modalityLutModule.rescaleSlope ? modalityLutModule.rescaleSlope : 1, + width: imageFrame.columns, + windowCenter: voiLutModule.windowCenter ? voiLutModule.windowCenter[0] : undefined, + windowWidth: voiLutModule.windowWidth ? voiLutModule.windowWidth[0] : undefined, + decodeTimeInMS: imageFrame.decodeTimeInMS, + floatPixelData: undefined + }; // add function to return pixel data + + if (imageFrame.pixelData instanceof Float32Array) { + var floatPixelData = imageFrame.pixelData; + var results = convertToIntPixelData(floatPixelData); + image.minPixelValue = results.min; + image.maxPixelValue = results.max; + image.slope = results.slope; + image.intercept = results.intercept; + image.floatPixelData = floatPixelData; + + image.getPixelData = function () { + return results.intPixelData; + }; + } else { + image.getPixelData = function () { + return imageFrame.pixelData; + }; + } + + if (image.color) { + image.getCanvas = function () { + if (lastImageIdDrawn === imageId) { + return canvas; + } + + canvas.height = image.rows; + canvas.width = image.columns; + var context = canvas.getContext('2d'); + context.putImageData(imageFrame.imageData, 0, 0); + lastImageIdDrawn = imageId; + return canvas; + }; + } // Modality LUT + + + if (modalityLutModule.modalityLUTSequence && modalityLutModule.modalityLUTSequence.length > 0 && isModalityLUTForDisplay(sopCommonModule.sopClassUID)) { + image.modalityLUT = modalityLutModule.modalityLUTSequence[0]; + } // VOI LUT + + + if (voiLutModule.voiLUTSequence && voiLutModule.voiLUTSequence.length > 0) { + image.voiLUT = voiLutModule.voiLUTSequence[0]; + } + + if (image.color) { + image.windowWidth = 255; + image.windowCenter = 127; + } // set the ww/wc to cover the dynamic range of the image if no values are supplied + + + if (image.windowCenter === undefined || image.windowWidth === undefined) { + var maxVoi = image.maxPixelValue * image.slope + image.intercept; + var minVoi = image.minPixelValue * image.slope + image.intercept; + image.windowWidth = maxVoi - minVoi; + image.windowCenter = (maxVoi + minVoi) / 2; + } + + resolve(image); + }, reject); + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (createImage); + +/***/ }), + +/***/ "./imageLoader/decodeImageFrame.js": +/*!*****************************************!*\ + !*** ./imageLoader/decodeImageFrame.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_options_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/options.js */ "./imageLoader/internal/options.js"); +/* harmony import */ var _webWorkerManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./webWorkerManager.js */ "./imageLoader/webWorkerManager.js"); +/* harmony import */ var _decodeJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./decodeJPEGBaseline8BitColor.js */ "./imageLoader/decodeJPEGBaseline8BitColor.js"); +/* harmony import */ var _shared_decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../shared/decodeImageFrame.js */ "./shared/decodeImageFrame.js"); +/* harmony import */ var _shared_calculateMinMax_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../shared/calculateMinMax.js */ "./shared/calculateMinMax.js"); +/* harmony import */ var _shared_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shared/decoders/decodeJPEG2000.js */ "./shared/decoders/decodeJPEG2000.js"); +/* harmony import */ var _shared_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../shared/decoders/decodeJPEGLS.js */ "./shared/decoders/decodeJPEGLS.js"); + + + // TODO: Find a way to allow useWebWorkers: false that doesn't make the main bundle huge + + + + + +var codecsInitialized = false; + +function processDecodeTask(imageFrame, transferSyntax, pixelData, options) { + var priority = options.priority || undefined; + var transferList = options.transferPixelData ? [pixelData.buffer] : undefined; + var loaderOptions = Object(_internal_options_js__WEBPACK_IMPORTED_MODULE_0__["getOptions"])(); + var strict = loaderOptions.strict, + decodeConfig = loaderOptions.decodeConfig, + useWebWorkers = loaderOptions.useWebWorkers; + + if (useWebWorkers === false) { + if (codecsInitialized === false) { + Object(_shared_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_5__["initializeJPEG2000"])(decodeConfig); + Object(_shared_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_6__["initializeJPEGLS"])(decodeConfig); + codecsInitialized = true; + } + + return new Promise(function (resolve, reject) { + try { + var decodeArguments = [imageFrame, transferSyntax, pixelData, decodeConfig, options]; + var decodedImageFrame = _shared_decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_3__["default"].apply(void 0, decodeArguments); + Object(_shared_calculateMinMax_js__WEBPACK_IMPORTED_MODULE_4__["default"])(decodedImageFrame, strict); + resolve(decodedImageFrame); + } catch (error) { + reject(error); + } + }); + } + + return _webWorkerManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].addTask('decodeTask', { + imageFrame: imageFrame, + transferSyntax: transferSyntax, + pixelData: pixelData, + options: options + }, priority, transferList).promise; +} + +function decodeImageFrame(imageFrame, transferSyntax, pixelData, canvas) { + var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {}; + + // TODO: Turn this into a switch statement instead + if (transferSyntax === '1.2.840.10008.1.2') { + // Implicit VR Little Endian + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.1') { + // Explicit VR Little Endian + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.2') { + // Explicit VR Big Endian (retired) + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.1.99') { + // Deflate transfer syntax (deflated by dicomParser) + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.5') { + // RLE Lossless + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.50') { + // JPEG Baseline lossy process 1 (8 bit) + // Handle 8-bit JPEG Baseline color images using the browser's built-in + // JPEG decoding + if (imageFrame.bitsAllocated === 8 && (imageFrame.samplesPerPixel === 3 || imageFrame.samplesPerPixel === 4)) { + return Object(_decodeJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_2__["default"])(imageFrame, pixelData, canvas); + } + + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.51') { + // JPEG Baseline lossy process 2 & 4 (12 bit) + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.57') { + // JPEG Lossless, Nonhierarchical (Processes 14) + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.70') { + // JPEG Lossless, Nonhierarchical (Processes 14 [Selection 1]) + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.80') { + // JPEG-LS Lossless Image Compression + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.81') { + // JPEG-LS Lossy (Near-Lossless) Image Compression + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.90') { + // JPEG 2000 Lossless + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.91') { + // JPEG 2000 Lossy + return processDecodeTask(imageFrame, transferSyntax, pixelData, options); + } + /* Don't know if these work... + // JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only) + else if(transferSyntax === "1.2.840.10008.1.2.4.92") + { + return cornerstoneWADOImageLoader.decodeJPEG2000(dataSet, frame); + } + // JPEG 2000 Part 2 Multicomponent Image Compression + else if(transferSyntax === "1.2.840.10008.1.2.4.93") + { + return cornerstoneWADOImageLoader.decodeJPEG2000(dataSet, frame); + } + */ + + + return new Promise(function (resolve, reject) { + reject(new Error("No decoder for transfer syntax ".concat(transferSyntax))); + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeImageFrame); + +/***/ }), + +/***/ "./imageLoader/decodeJPEGBaseline8BitColor.js": +/*!****************************************************!*\ + !*** ./imageLoader/decodeJPEGBaseline8BitColor.js ***! + \****************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../shared/getMinMax.js */ "./shared/getMinMax.js"); + +/** + * Special decoder for 8 bit jpeg that leverages the browser's built in JPEG decoder for increased performance + */ + +function arrayBufferToString(buffer) { + return binaryToString(String.fromCharCode.apply(null, Array.prototype.slice.apply(new Uint8Array(buffer)))); +} + +function binaryToString(binary) { + var error; + + try { + return decodeURIComponent(escape(binary)); + } catch (_error) { + error = _error; + + if (error instanceof URIError) { + return binary; + } + + throw error; + } +} + +function decodeJPEGBaseline8BitColor(imageFrame, pixelData, canvas) { + var start = new Date().getTime(); + var imgBlob = new Blob([pixelData], { + type: 'image/jpeg' + }); + return new Promise(function (resolve, reject) { + var fileReader = new FileReader(); + + if (fileReader.readAsBinaryString === undefined) { + fileReader.readAsArrayBuffer(imgBlob); + } else { + fileReader.readAsBinaryString(imgBlob); // doesn't work on IE11 + } + + fileReader.onload = function () { + var img = new Image(); + + img.onload = function () { + canvas.height = img.height; + canvas.width = img.width; + imageFrame.rows = img.height; + imageFrame.columns = img.width; + var context = canvas.getContext('2d'); + context.drawImage(this, 0, 0); + var imageData = context.getImageData(0, 0, img.width, img.height); + var end = new Date().getTime(); + imageFrame.pixelData = imageData.data; + imageFrame.imageData = imageData; + imageFrame.decodeTimeInMS = end - start; // calculate smallest and largest PixelValue + + var minMax = Object(_shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageFrame.pixelData); + imageFrame.smallestPixelValue = minMax.min; + imageFrame.largestPixelValue = minMax.max; + resolve(imageFrame); + }; + + img.onerror = function (error) { + reject(error); + }; + + if (fileReader.readAsBinaryString === undefined) { + img.src = "data:image/jpeg;base64,".concat(window.btoa(arrayBufferToString(fileReader.result))); + } else { + img.src = "data:image/jpeg;base64,".concat(window.btoa(fileReader.result)); // doesn't work on IE11 + } + }; + + fileReader.onerror = function (e) { + reject(e); + }; + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeJPEGBaseline8BitColor); + +/***/ }), + +/***/ "./imageLoader/getImageFrame.js": +/*!**************************************!*\ + !*** ./imageLoader/getImageFrame.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); + + +function getImageFrame(imageId) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var imagePixelModule = cornerstone.metaData.get('imagePixelModule', imageId); + return { + samplesPerPixel: imagePixelModule.samplesPerPixel, + photometricInterpretation: imagePixelModule.photometricInterpretation, + planarConfiguration: imagePixelModule.planarConfiguration, + rows: imagePixelModule.rows, + columns: imagePixelModule.columns, + bitsAllocated: imagePixelModule.bitsAllocated, + bitsStored: imagePixelModule.bitsStored, + pixelRepresentation: imagePixelModule.pixelRepresentation, + // 0 = unsigned, + smallestPixelValue: imagePixelModule.smallestPixelValue, + largestPixelValue: imagePixelModule.largestPixelValue, + redPaletteColorLookupTableDescriptor: imagePixelModule.redPaletteColorLookupTableDescriptor, + greenPaletteColorLookupTableDescriptor: imagePixelModule.greenPaletteColorLookupTableDescriptor, + bluePaletteColorLookupTableDescriptor: imagePixelModule.bluePaletteColorLookupTableDescriptor, + redPaletteColorLookupTableData: imagePixelModule.redPaletteColorLookupTableData, + greenPaletteColorLookupTableData: imagePixelModule.greenPaletteColorLookupTableData, + bluePaletteColorLookupTableData: imagePixelModule.bluePaletteColorLookupTableData, + pixelData: undefined // populated later after decoding + + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (getImageFrame); + +/***/ }), + +/***/ "./imageLoader/index.js": +/*!******************************!*\ + !*** ./imageLoader/index.js ***! + \******************************/ +/*! exports provided: convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR, wadouri, wadors, configure, convertColorSpace, createImage, decodeImageFrame, decodeJPEGBaseline8BitColor, getImageFrame, getMinMax, isColorImage, isJPEGBaseline8BitColor, webWorkerManager, version, internal, external, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./colorSpaceConverters/index.js */ "./imageLoader/colorSpaceConverters/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertRGBColorByPixel", function() { return _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPixel"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertRGBColorByPlane", function() { return _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPlane"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertYBRFullByPixel", function() { return _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPixel"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertYBRFullByPlane", function() { return _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPlane"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertPALETTECOLOR", function() { return _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertPALETTECOLOR"]; }); + +/* harmony import */ var _wadouri_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wadouri/index.js */ "./imageLoader/wadouri/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "wadouri", function() { return _wadouri_index_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _wadors_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./wadors/index.js */ "./imageLoader/wadors/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "wadors", function() { return _wadors_index_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _configure_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./configure.js */ "./imageLoader/configure.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "configure", function() { return _configure_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _convertColorSpace_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./convertColorSpace.js */ "./imageLoader/convertColorSpace.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "convertColorSpace", function() { return _convertColorSpace_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + +/* harmony import */ var _createImage_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createImage.js */ "./imageLoader/createImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createImage", function() { return _createImage_js__WEBPACK_IMPORTED_MODULE_5__["default"]; }); + +/* harmony import */ var _decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./decodeImageFrame.js */ "./imageLoader/decodeImageFrame.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "decodeImageFrame", function() { return _decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_6__["default"]; }); + +/* harmony import */ var _decodeJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./decodeJPEGBaseline8BitColor.js */ "./imageLoader/decodeJPEGBaseline8BitColor.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "decodeJPEGBaseline8BitColor", function() { return _decodeJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_7__["default"]; }); + +/* harmony import */ var _getImageFrame_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getImageFrame.js */ "./imageLoader/getImageFrame.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getImageFrame", function() { return _getImageFrame_js__WEBPACK_IMPORTED_MODULE_8__["default"]; }); + +/* harmony import */ var _shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../shared/getMinMax.js */ "./shared/getMinMax.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getMinMax", function() { return _shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_9__["default"]; }); + +/* harmony import */ var _isColorImage_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./isColorImage.js */ "./imageLoader/isColorImage.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isColorImage", function() { return _isColorImage_js__WEBPACK_IMPORTED_MODULE_10__["default"]; }); + +/* harmony import */ var _isJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./isJPEGBaseline8BitColor.js */ "./imageLoader/isJPEGBaseline8BitColor.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isJPEGBaseline8BitColor", function() { return _isJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_11__["default"]; }); + +/* harmony import */ var _webWorkerManager_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./webWorkerManager.js */ "./imageLoader/webWorkerManager.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "webWorkerManager", function() { return _webWorkerManager_js__WEBPACK_IMPORTED_MODULE_12__["default"]; }); + +/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../version.js */ "./version.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "version", function() { return _version_js__WEBPACK_IMPORTED_MODULE_13__["default"]; }); + +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./internal/index.js */ "./imageLoader/internal/index.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "internal", function() { return _internal_index_js__WEBPACK_IMPORTED_MODULE_14__["internal"]; }); + +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../externalModules.js */ "./externalModules.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "external", function() { return _externalModules_js__WEBPACK_IMPORTED_MODULE_15__["default"]; }); + + + + + + + + + + + + + + + + + +var cornerstoneWADOImageLoader = { + convertRGBColorByPixel: _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPixel"], + convertRGBColorByPlane: _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertRGBColorByPlane"], + convertYBRFullByPixel: _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPixel"], + convertYBRFullByPlane: _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertYBRFullByPlane"], + convertPALETTECOLOR: _colorSpaceConverters_index_js__WEBPACK_IMPORTED_MODULE_0__["convertPALETTECOLOR"], + wadouri: _wadouri_index_js__WEBPACK_IMPORTED_MODULE_1__["default"], + wadors: _wadors_index_js__WEBPACK_IMPORTED_MODULE_2__["default"], + configure: _configure_js__WEBPACK_IMPORTED_MODULE_3__["default"], + convertColorSpace: _convertColorSpace_js__WEBPACK_IMPORTED_MODULE_4__["default"], + createImage: _createImage_js__WEBPACK_IMPORTED_MODULE_5__["default"], + decodeImageFrame: _decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_6__["default"], + decodeJPEGBaseline8BitColor: _decodeJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_7__["default"], + getImageFrame: _getImageFrame_js__WEBPACK_IMPORTED_MODULE_8__["default"], + getMinMax: _shared_getMinMax_js__WEBPACK_IMPORTED_MODULE_9__["default"], + isColorImage: _isColorImage_js__WEBPACK_IMPORTED_MODULE_10__["default"], + isJPEGBaseline8BitColor: _isJPEGBaseline8BitColor_js__WEBPACK_IMPORTED_MODULE_11__["default"], + webWorkerManager: _webWorkerManager_js__WEBPACK_IMPORTED_MODULE_12__["default"], + version: _version_js__WEBPACK_IMPORTED_MODULE_13__["default"], + internal: _internal_index_js__WEBPACK_IMPORTED_MODULE_14__["internal"], + external: _externalModules_js__WEBPACK_IMPORTED_MODULE_15__["default"] +}; + +/* harmony default export */ __webpack_exports__["default"] = (cornerstoneWADOImageLoader); + +/***/ }), + +/***/ "./imageLoader/internal/index.js": +/*!***************************************!*\ + !*** ./imageLoader/internal/index.js ***! + \***************************************/ +/*! exports provided: setOptions, getOptions, xhrRequest, internal */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "internal", function() { return internal; }); +/* harmony import */ var _xhrRequest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./xhrRequest.js */ "./imageLoader/internal/xhrRequest.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "xhrRequest", function() { return _xhrRequest_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _options_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./options.js */ "./imageLoader/internal/options.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setOptions", function() { return _options_js__WEBPACK_IMPORTED_MODULE_1__["setOptions"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getOptions", function() { return _options_js__WEBPACK_IMPORTED_MODULE_1__["getOptions"]; }); + + + +var internal = { + xhrRequest: _xhrRequest_js__WEBPACK_IMPORTED_MODULE_0__["default"], + setOptions: _options_js__WEBPACK_IMPORTED_MODULE_1__["setOptions"], + getOptions: _options_js__WEBPACK_IMPORTED_MODULE_1__["getOptions"] +}; + + +/***/ }), + +/***/ "./imageLoader/internal/options.js": +/*!*****************************************!*\ + !*** ./imageLoader/internal/options.js ***! + \*****************************************/ +/*! exports provided: setOptions, getOptions */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setOptions", function() { return setOptions; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getOptions", function() { return getOptions; }); +var options = { + // callback allowing customization of the xhr (e.g. adding custom auth headers, cors, etc) + beforeSend: function beforeSend() + /* xhr, imageId */ + {}, + // callback allowing modification of newly created image objects + imageCreated: function imageCreated() + /* image */ + {}, + strict: false, + useWebWorkers: true, + decodeConfig: { + usePDFJS: false + } +}; +function setOptions(newOptions) { + options = Object.assign(options, newOptions); +} +function getOptions() { + return options; +} + +/***/ }), + +/***/ "./imageLoader/internal/xhrRequest.js": +/*!********************************************!*\ + !*** ./imageLoader/internal/xhrRequest.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _options_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./options.js */ "./imageLoader/internal/options.js"); + + + +function xhrRequest(url, imageId) { + var headers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + var params = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; + var options = Object(_options_js__WEBPACK_IMPORTED_MODULE_1__["getOptions"])(); // Make the request for the DICOM P10 SOP Instance + + return new Promise(function (resolve, reject) { + var xhr = new XMLHttpRequest(); + xhr.open('get', url, true); + xhr.responseType = 'arraybuffer'; + options.beforeSend(xhr, imageId, headers, params); + Object.keys(headers).forEach(function (key) { + xhr.setRequestHeader(key, headers[key]); + }); + params.deferred = { + resolve: resolve, + reject: reject + }; + params.url = url; + params.imageId = imageId; // Event triggered when downloading an image starts + + xhr.onloadstart = function (event) { + // Action + if (options.onloadstart) { + options.onloadstart(event, params); + } // Event + + + var eventData = { + url: url, + imageId: imageId + }; + cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadstart', eventData); + }; // Event triggered when downloading an image ends + + + xhr.onloadend = function (event) { + // Action + if (options.onloadend) { + options.onloadend(event, params); + } + + var eventData = { + url: url, + imageId: imageId + }; // Event + + cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadend', eventData); + }; // handle response data + + + xhr.onreadystatechange = function (event) { + // Action + if (options.onreadystatechange) { + options.onreadystatechange(event, params); + return; + } // Default action + // TODO: consider sending out progress messages here as we receive the pixel data + + + if (xhr.readyState === 4) { + if (xhr.status === 200) { + resolve(xhr.response, xhr); + } else { + // request failed, reject the Promise + reject(xhr); + } + } + }; // Event triggered when downloading an image progresses + + + xhr.onprogress = function (oProgress) { + // console.log('progress:',oProgress) + var loaded = oProgress.loaded; // evt.loaded the bytes browser receive + + var total; + var percentComplete; + + if (oProgress.lengthComputable) { + total = oProgress.total; // evt.total the total bytes seted by the header + + percentComplete = Math.round(loaded / total * 100); + } // Action + + + if (options.onprogress) { + options.onprogress(oProgress, params); + } // Event + + + var eventData = { + url: url, + imageId: imageId, + loaded: loaded, + total: total, + percentComplete: percentComplete + }; + cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadprogress', eventData); + }; + + xhr.send(); + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (xhrRequest); + +/***/ }), + +/***/ "./imageLoader/isColorImage.js": +/*!*************************************!*\ + !*** ./imageLoader/isColorImage.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = (function (photoMetricInterpretation) { + return photoMetricInterpretation === 'RGB' || photoMetricInterpretation === 'PALETTE COLOR' || photoMetricInterpretation === 'YBR_FULL' || photoMetricInterpretation === 'YBR_FULL_422' || photoMetricInterpretation === 'YBR_PARTIAL_422' || photoMetricInterpretation === 'YBR_PARTIAL_420' || photoMetricInterpretation === 'YBR_RCT' || photoMetricInterpretation === 'YBR_ICT'; +}); + +/***/ }), + +/***/ "./imageLoader/isJPEGBaseline8BitColor.js": +/*!************************************************!*\ + !*** ./imageLoader/isJPEGBaseline8BitColor.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function isJPEGBaseline8BitColor(imageFrame, transferSyntax) { + transferSyntax = transferSyntax || imageFrame.transferSyntax; + + if (imageFrame.bitsAllocated === 8 && transferSyntax === '1.2.840.10008.1.2.4.50' && (imageFrame.samplesPerPixel === 3 || imageFrame.samplesPerPixel === 4)) { + return true; + } +} + +/* harmony default export */ __webpack_exports__["default"] = (isJPEGBaseline8BitColor); + +/***/ }), + +/***/ "./imageLoader/registerLoaders.js": +/*!****************************************!*\ + !*** ./imageLoader/registerLoaders.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _wadors_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wadors/index.js */ "./imageLoader/wadors/index.js"); +/* harmony import */ var _wadouri_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wadouri/index.js */ "./imageLoader/wadouri/index.js"); + + +/** + * Register the WADO-URI and WADO-RS image loaders and metaData providers + * with an instance of Cornerstone Core. + * + * @param cornerstone The Cornerstone Core library to register the image loaders with + */ + +function registerLoaders(cornerstone) { + _wadors_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].register(cornerstone); + _wadouri_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].register(cornerstone); +} + +/* harmony default export */ __webpack_exports__["default"] = (registerLoaders); + +/***/ }), + +/***/ "./imageLoader/wadors/findIndexOfString.js": +/*!*************************************************!*\ + !*** ./imageLoader/wadors/findIndexOfString.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function checkToken(token, data, dataOffset) { + if (dataOffset + token.length > data.length) { + return false; + } + + var endIndex = dataOffset; + + for (var i = 0; i < token.length; i++) { + if (token[i] !== data[endIndex++]) { + return false; + } + } + + return true; +} + +function stringToUint8Array(str) { + var uint = new Uint8Array(str.length); + + for (var i = 0, j = str.length; i < j; i++) { + uint[i] = str.charCodeAt(i); + } + + return uint; +} + +function findIndexOfString(data, str, offset) { + offset = offset || 0; + var token = stringToUint8Array(str); + + for (var i = offset; i < data.length; i++) { + if (token[0] === data[i]) { + // console.log('match @', i); + if (checkToken(token, data, i)) { + return i; + } + } + } + + return -1; +} + +/* harmony default export */ __webpack_exports__["default"] = (findIndexOfString); + +/***/ }), + +/***/ "./imageLoader/wadors/getPixelData.js": +/*!********************************************!*\ + !*** ./imageLoader/wadors/getPixelData.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/index.js */ "./imageLoader/internal/index.js"); +/* harmony import */ var _findIndexOfString_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./findIndexOfString.js */ "./imageLoader/wadors/findIndexOfString.js"); + + + +function findBoundary(header) { + for (var i = 0; i < header.length; i++) { + if (header[i].substr(0, 2) === '--') { + return header[i]; + } + } +} + +function findContentType(header) { + for (var i = 0; i < header.length; i++) { + if (header[i].substr(0, 13) === 'Content-Type:') { + return header[i].substr(13).trim(); + } + } +} + +function uint8ArrayToString(data, offset, length) { + offset = offset || 0; + length = length || data.length - offset; + var str = ''; + + for (var i = offset; i < offset + length; i++) { + str += String.fromCharCode(data[i]); + } + + return str; +} + +function getPixelData(uri, imageId) { + var mediaType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'application/octet-stream'; + var headers = { + accept: mediaType + }; + return new Promise(function (resolve, reject) { + var loadPromise = Object(_internal_index_js__WEBPACK_IMPORTED_MODULE_0__["xhrRequest"])(uri, imageId, headers); + loadPromise.then(function (imageFrameAsArrayBuffer + /* , xhr*/ + ) { + // request succeeded, Parse the multi-part mime response + var response = new Uint8Array(imageFrameAsArrayBuffer); // First look for the multipart mime header + + var tokenIndex = Object(_findIndexOfString_js__WEBPACK_IMPORTED_MODULE_1__["default"])(response, '\r\n\r\n'); + + if (tokenIndex === -1) { + reject(new Error('invalid response - no multipart mime header')); + } + + var header = uint8ArrayToString(response, 0, tokenIndex); // Now find the boundary marker + + var split = header.split('\r\n'); + var boundary = findBoundary(split); + + if (!boundary) { + reject(new Error('invalid response - no boundary marker')); + } + + var offset = tokenIndex + 4; // skip over the \r\n\r\n + // find the terminal boundary marker + + var endIndex = Object(_findIndexOfString_js__WEBPACK_IMPORTED_MODULE_1__["default"])(response, boundary, offset); + + if (endIndex === -1) { + reject(new Error('invalid response - terminating boundary not found')); + } // Remove \r\n from the length + + + var length = endIndex - offset - 2; // return the info for this pixel data + + resolve({ + contentType: findContentType(split), + imageFrame: { + pixelData: new Uint8Array(imageFrameAsArrayBuffer, offset, length) + } + }); + }); + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (getPixelData); + +/***/ }), + +/***/ "./imageLoader/wadors/index.js": +/*!*************************************!*\ + !*** ./imageLoader/wadors/index.js ***! + \*************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./metaData/index.js */ "./imageLoader/wadors/metaData/index.js"); +/* harmony import */ var _findIndexOfString_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./findIndexOfString.js */ "./imageLoader/wadors/findIndexOfString.js"); +/* harmony import */ var _getPixelData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getPixelData.js */ "./imageLoader/wadors/getPixelData.js"); +/* harmony import */ var _metaDataManager_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./metaDataManager.js */ "./imageLoader/wadors/metaDataManager.js"); +/* harmony import */ var _loadImage_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./loadImage.js */ "./imageLoader/wadors/loadImage.js"); +/* harmony import */ var _register_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./register.js */ "./imageLoader/wadors/register.js"); + + + + + + +var metaData = { + getNumberString: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getNumberString"], + getNumberValue: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getNumberValue"], + getNumberValues: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getNumberValues"], + getValue: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getValue"], + metaDataProvider: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["metaDataProvider"] +}; +/* harmony default export */ __webpack_exports__["default"] = ({ + metaData: metaData, + findIndexOfString: _findIndexOfString_js__WEBPACK_IMPORTED_MODULE_1__["default"], + getPixelData: _getPixelData_js__WEBPACK_IMPORTED_MODULE_2__["default"], + loadImage: _loadImage_js__WEBPACK_IMPORTED_MODULE_4__["default"], + metaDataManager: _metaDataManager_js__WEBPACK_IMPORTED_MODULE_3__["default"], + register: _register_js__WEBPACK_IMPORTED_MODULE_5__["default"] +}); + +/***/ }), + +/***/ "./imageLoader/wadors/loadImage.js": +/*!*****************************************!*\ + !*** ./imageLoader/wadors/loadImage.js ***! + \*****************************************/ +/*! exports provided: getTransferSyntaxForContentType, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTransferSyntaxForContentType", function() { return getTransferSyntaxForContentType; }); +/* harmony import */ var _metaDataManager_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./metaDataManager.js */ "./imageLoader/wadors/metaDataManager.js"); +/* harmony import */ var _getPixelData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getPixelData.js */ "./imageLoader/wadors/getPixelData.js"); +/* harmony import */ var _createImage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../createImage.js */ "./imageLoader/createImage.js"); + + + +/** + * Helper method to extract the transfer-syntax from the response of the server. + * @param {string} contentType The value of the content-type header as returned by the WADO-RS server. + * @return The transfer-syntax as announced by the server, or Implicit Little Endian by default. + */ + +function getTransferSyntaxForContentType(contentType) { + var defaultTransferSyntax = '1.2.840.10008.1.2'; // Default is Implicit Little Endian. + + if (!contentType) { + return defaultTransferSyntax; + } // Browse through the content type parameters + + + var parameters = contentType.split(';'); + var params = {}; + parameters.forEach(function (parameter) { + // Look for a transfer-syntax=XXXX pair + var parameterValues = parameter.split('='); + + if (parameterValues.length !== 2) { + return; + } + + var value = parameterValues[1].trim().replace(/"/g, ''); + params[parameterValues[0].trim()] = value; + }); // This is useful if the PACS doesn't respond with a syntax + // in the content type. + // http://dicom.nema.org/medical/dicom/current/output/chtml/part18/chapter_6.html#table_6.1.1.8-3b + + var defaultTransferSyntaxByType = { + 'image/jpeg': '1.2.840.10008.1.2.4.70', + 'image/x-dicom-rle': '1.2.840.10008.1.2.5', + 'image/x-jls': '1.2.840.10008.1.2.4.80', + 'image/jp2': '1.2.840.10008.1.2.4.90', + 'image/jpx': '1.2.840.10008.1.2.4.92' + }; + + if (params['transfer-syntax']) { + return params['transfer-syntax']; + } else if (contentType && !Object.keys(params).length && defaultTransferSyntaxByType[contentType]) { + // dcm4che seems to be reporting the content type as just 'image/jp2'? + return defaultTransferSyntaxByType[contentType]; + } else if (params.type && defaultTransferSyntaxByType[params.type]) { + return defaultTransferSyntaxByType[params.type]; + } + + return defaultTransferSyntax; +} + +function loadImage(imageId, options) { + var start = new Date().getTime(); + var uri = imageId.substring(7); + var promise = new Promise(function (resolve, reject) { + // check to make sure we have metadata for this imageId + var metaData = _metaDataManager_js__WEBPACK_IMPORTED_MODULE_0__["default"].get(imageId); + + if (metaData === undefined) { + var error = new Error("no metadata for imageId ".concat(imageId)); + return reject(error); + } // TODO: load bulk data items that we might need + + + var mediaType = 'multipart/related; type="application/octet-stream"'; // 'image/dicom+jp2'; + // get the pixel data from the server + + Object(_getPixelData_js__WEBPACK_IMPORTED_MODULE_1__["default"])(uri, imageId, mediaType).then(function (result) { + var transferSyntax = getTransferSyntaxForContentType(result.contentType); + var pixelData = result.imageFrame.pixelData; + var imagePromise = Object(_createImage_js__WEBPACK_IMPORTED_MODULE_2__["default"])(imageId, pixelData, transferSyntax, options); + imagePromise.then(function (image) { + // add the loadTimeInMS property + var end = new Date().getTime(); + image.loadTimeInMS = end - start; + resolve(image); + }, reject); + }, reject); + }); + return { + promise: promise, + cancelFn: undefined + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (loadImage); + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/getNumberString.js": +/*!********************************************************!*\ + !*** ./imageLoader/wadors/metaData/getNumberString.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getValue_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getValue.js */ "./imageLoader/wadors/metaData/getValue.js"); + +/** + * Returns the first string value as a Javascript number + * + * @param element - The javascript object for the specified element in the metadata + * @param [index] - the index of the value in a multi-valued element, default is 0 + * @param [defaultValue] - The default value to return if the element does not exist + * @returns {*} + */ + +function getNumberString(element, index, defaultValue) { + var value = Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, index, defaultValue); + + if (value === undefined) { + return; + } + + return parseFloat(value); +} + +/* harmony default export */ __webpack_exports__["default"] = (getNumberString); + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/getNumberValue.js": +/*!*******************************************************!*\ + !*** ./imageLoader/wadors/metaData/getNumberValue.js ***! + \*******************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getValue_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getValue.js */ "./imageLoader/wadors/metaData/getValue.js"); + + +function getNumberValue(element, index) { + var value = Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, index); + + if (value === undefined) { + return; + } + + return parseFloat(value); +} + +/* harmony default export */ __webpack_exports__["default"] = (getNumberValue); + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/getNumberValues.js": +/*!********************************************************!*\ + !*** ./imageLoader/wadors/metaData/getNumberValues.js ***! + \********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns the values as an array of javascript numbers + * + * @param element - The javascript object for the specified element in the metadata + * @param [minimumLength] - the minimum number of values + * @returns {*} + */ +function getNumberValues(element, minimumLength) { + if (!element) { + return; + } // Value is not present if the attribute has a zero length value + + + if (!element.Value) { + return; + } // make sure we have the expected length + + + if (minimumLength && element.Value.length < minimumLength) { + return; + } + + var values = []; + + for (var i = 0; i < element.Value.length; i++) { + values.push(parseFloat(element.Value[i])); + } + + return values; +} + +/* harmony default export */ __webpack_exports__["default"] = (getNumberValues); + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/getOverlayPlaneModule.js": +/*!**************************************************************!*\ + !*** ./imageLoader/wadors/metaData/getOverlayPlaneModule.js ***! + \**************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getOverlayPlaneModule; }); +/* harmony import */ var _getValue_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getValue.js */ "./imageLoader/wadors/metaData/getValue.js"); +/* harmony import */ var _getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getNumberValue.js */ "./imageLoader/wadors/metaData/getNumberValue.js"); + + +function getOverlayPlaneModule(metaData) { + var overlays = []; + + for (var overlayGroup = 0x00; overlayGroup <= 0x1E; overlayGroup += 0x02) { + var groupStr = "x60".concat(overlayGroup.toString(16)); + + if (groupStr.length === 4) { + groupStr = "x600".concat(overlayGroup.toString(16)); + } + + var data = Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "3000")]); + + if (!data) { + continue; + } + + var pixelData = []; + + for (var i = 0; i < data.length; i++) { + for (var k = 0; k < 8; k++) { + var byte_as_int = metaData.Value[data.dataOffset + i]; + pixelData[i * 8 + k] = byte_as_int >> k & 1; // eslint-disable-line no-bitwise + } + } + + overlays.push({ + rows: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData["".concat(groupStr, "0010")]), + columns: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData["".concat(groupStr, "0011")]), + type: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "0040")]), + x: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData["".concat(groupStr, "0050")], 1) - 1, + y: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData["".concat(groupStr, "0050")], 0) - 1, + pixelData: pixelData, + description: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "0022")]), + label: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "1500")]), + roiArea: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "1301")]), + roiMean: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "1302")]), + roiStandardDeviation: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_0__["default"])(metaData["".concat(groupStr, "1303")]) + }); + } + + return { + overlays: overlays + }; +} + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/getValue.js": +/*!*************************************************!*\ + !*** ./imageLoader/wadors/metaData/getValue.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns the raw value + * + * @param element - The javascript object for the specified element in the metadata + * @param [index] - the index of the value in a multi-valued element, default is 0 + * @param [defaultValue] - The default value to return if the element does not exist + * @returns {*} + */ +function getValue(element, index, defaultValue) { + index = index || 0; + + if (!element) { + return defaultValue; + } // Value is not present if the attribute has a zero length value + + + if (!element.Value) { + return defaultValue; + } // make sure we have the specified index + + + if (element.Value.length <= index) { + return defaultValue; + } + + return element.Value[index]; +} + +/* harmony default export */ __webpack_exports__["default"] = (getValue); + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/index.js": +/*!**********************************************!*\ + !*** ./imageLoader/wadors/metaData/index.js ***! + \**********************************************/ +/*! exports provided: getNumberString, getNumberValue, getNumberValues, getValue, metaDataProvider */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getNumberString_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNumberString.js */ "./imageLoader/wadors/metaData/getNumberString.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getNumberString", function() { return _getNumberString_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getNumberValue.js */ "./imageLoader/wadors/metaData/getNumberValue.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getNumberValue", function() { return _getNumberValue_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _getNumberValues_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getNumberValues.js */ "./imageLoader/wadors/metaData/getNumberValues.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getNumberValues", function() { return _getNumberValues_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _getValue_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getValue.js */ "./imageLoader/wadors/metaData/getValue.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getValue", function() { return _getValue_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _metaDataProvider_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metaDataProvider.js */ "./imageLoader/wadors/metaData/metaDataProvider.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "metaDataProvider", function() { return _metaDataProvider_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + + + + + + + +/***/ }), + +/***/ "./imageLoader/wadors/metaData/metaDataProvider.js": +/*!*********************************************************!*\ + !*** ./imageLoader/wadors/metaData/metaDataProvider.js ***! + \*********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getNumberValues.js */ "./imageLoader/wadors/metaData/getNumberValues.js"); +/* harmony import */ var _getValue_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getValue.js */ "./imageLoader/wadors/metaData/getValue.js"); +/* harmony import */ var _getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getNumberValue.js */ "./imageLoader/wadors/metaData/getNumberValue.js"); +/* harmony import */ var _getOverlayPlaneModule_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getOverlayPlaneModule.js */ "./imageLoader/wadors/metaData/getOverlayPlaneModule.js"); +/* harmony import */ var _metaDataManager_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../metaDataManager.js */ "./imageLoader/wadors/metaDataManager.js"); + + + + + + + +function metaDataProvider(type, imageId) { + var dicomParser = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].dicomParser; + var metaData = _metaDataManager_js__WEBPACK_IMPORTED_MODULE_5__["default"].get(imageId); + + if (!metaData) { + return; + } + + if (type === 'generalSeriesModule') { + return { + modality: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00080060']), + seriesInstanceUID: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['0020000e']), + seriesNumber: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00200011']), + studyInstanceUID: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['0020000d']), + seriesDate: dicomParser.parseDA(Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00080021'])), + seriesTime: dicomParser.parseTM(Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00080031'], 0, '')) + }; + } + + if (type === 'patientStudyModule') { + return { + patientAge: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00101010']), + patientSize: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00101020']), + patientWeight: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00101030']) + }; + } + + if (type === 'imagePlaneModule') { + var imageOrientationPatient = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00200037'], 6); + var imagePositionPatient = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00200032'], 3); + var pixelSpacing = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00280030'], 2); + var columnPixelSpacing = null; + var rowPixelSpacing = null; + + if (pixelSpacing) { + rowPixelSpacing = pixelSpacing[0]; + columnPixelSpacing = pixelSpacing[1]; + } + + var rowCosines = null; + var columnCosines = null; + + if (imageOrientationPatient) { + rowCosines = [parseFloat(imageOrientationPatient[0]), parseFloat(imageOrientationPatient[1]), parseFloat(imageOrientationPatient[2])]; + columnCosines = [parseFloat(imageOrientationPatient[3]), parseFloat(imageOrientationPatient[4]), parseFloat(imageOrientationPatient[5])]; + } + + return { + frameOfReferenceUID: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00200052']), + rows: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280010']), + columns: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280011']), + imageOrientationPatient: imageOrientationPatient, + rowCosines: rowCosines, + columnCosines: columnCosines, + imagePositionPatient: imagePositionPatient, + sliceThickness: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00180050']), + sliceLocation: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00201041']), + pixelSpacing: pixelSpacing, + rowPixelSpacing: rowPixelSpacing, + columnPixelSpacing: columnPixelSpacing + }; + } + + if (type === 'imagePixelModule') { + return { + samplesPerPixel: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280002']), + photometricInterpretation: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00280004']), + rows: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280010']), + columns: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280011']), + bitsAllocated: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280100']), + bitsStored: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280101']), + highBit: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00280102']), + pixelRepresentation: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280103']), + planarConfiguration: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280006']), + pixelAspectRatio: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00280034']), + smallestPixelValue: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280106']), + largestPixelValue: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00280107']), + redPaletteColorLookupTableDescriptor: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281101']), + greenPaletteColorLookupTableDescriptor: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281102']), + bluePaletteColorLookupTableDescriptor: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281103']), + redPaletteColorLookupTableData: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281201']), + greenPaletteColorLookupTableData: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281202']), + bluePaletteColorLookupTableData: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281203']) + }; + } + + if (type === 'voiLutModule') { + return { + // TODO VOT LUT Sequence + windowCenter: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281050'], 1), + windowWidth: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(metaData['00281051'], 1) + }; + } + + if (type === 'modalityLutModule') { + return { + // TODO VOT LUT Sequence + rescaleIntercept: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00281052']), + rescaleSlope: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(metaData['00281053']), + rescaleType: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00281054']) + }; + } + + if (type === 'sopCommonModule') { + return { + sopClassUID: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00080016']), + sopInstanceUID: Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00080018']) + }; + } + + if (type === 'petIsotopeModule') { + var radiopharmaceuticalInfo = Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(metaData['00540016']); + + if (radiopharmaceuticalInfo === undefined) { + return; + } + + return { + radiopharmaceuticalInfo: { + radiopharmaceuticalStartTime: dicomParser.parseTM(Object(_getValue_js__WEBPACK_IMPORTED_MODULE_2__["default"])(radiopharmaceuticalInfo['00181072'], 0, '')), + radionuclideTotalDose: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(radiopharmaceuticalInfo['00181074']), + radionuclideHalfLife: Object(_getNumberValue_js__WEBPACK_IMPORTED_MODULE_3__["default"])(radiopharmaceuticalInfo['00181075']) + } + }; + } + + if (type === 'overlayPlaneModule') { + return Object(_getOverlayPlaneModule_js__WEBPACK_IMPORTED_MODULE_4__["default"])(metaData); + } +} + +/* harmony default export */ __webpack_exports__["default"] = (metaDataProvider); + +/***/ }), + +/***/ "./imageLoader/wadors/metaDataManager.js": +/*!***********************************************!*\ + !*** ./imageLoader/wadors/metaDataManager.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var imageIds = []; + +function add(imageId, metadata) { + imageIds[imageId] = metadata; +} + +function get(imageId) { + return imageIds[imageId]; +} + +function remove(imageId) { + imageIds[imageId] = undefined; +} + +function purge() { + imageIds = []; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + add: add, + get: get, + remove: remove, + purge: purge +}); + +/***/ }), + +/***/ "./imageLoader/wadors/register.js": +/*!****************************************!*\ + !*** ./imageLoader/wadors/register.js ***! + \****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _loadImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadImage.js */ "./imageLoader/wadors/loadImage.js"); +/* harmony import */ var _metaData_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./metaData/index.js */ "./imageLoader/wadors/metaData/index.js"); + + +/* harmony default export */ __webpack_exports__["default"] = (function (cornerstone) { + // register wadors scheme and metadata provider + cornerstone.registerImageLoader('wadors', _loadImage_js__WEBPACK_IMPORTED_MODULE_0__["default"]); + cornerstone.metaData.addProvider(_metaData_index_js__WEBPACK_IMPORTED_MODULE_1__["metaDataProvider"]); +}); + +/***/ }), + +/***/ "./imageLoader/wadouri/dataSetCacheManager.js": +/*!****************************************************!*\ + !*** ./imageLoader/wadouri/dataSetCacheManager.js ***! + \****************************************************/ +/*! exports provided: getInfo, default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getInfo", function() { return getInfo; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../internal/index.js */ "./imageLoader/internal/index.js"); + + +/** + * This object supports loading of DICOM P10 dataset from a uri and caching it so it can be accessed + * by the caller. This allows a caller to access the datasets without having to go through cornerstone's + * image loader mechanism. One reason a caller may need to do this is to determine the number of frames + * in a multiframe sop instance so it can create the imageId's correctly. + */ + +var cacheSizeInBytes = 0; +var loadedDataSets = {}; +var promises = {}; // returns true if the wadouri for the specified index has been loaded + +function isLoaded(uri) { + return loadedDataSets[uri] !== undefined; +} + +function get(uri) { + if (!loadedDataSets[uri]) { + return; + } + + return loadedDataSets[uri].dataSet; +} // loads the dicom dataset from the wadouri sp + + +function load(uri) { + var loadRequest = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _internal_index_js__WEBPACK_IMPORTED_MODULE_1__["xhrRequest"]; + var imageId = arguments.length > 2 ? arguments[2] : undefined; + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone, + dicomParser = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].dicomParser; // if already loaded return it right away + + if (loadedDataSets[uri]) { + // console.log('using loaded dataset ' + uri); + return new Promise(function (resolve) { + loadedDataSets[uri].cacheCount++; + resolve(loadedDataSets[uri].dataSet); + }); + } // if we are currently loading this uri, increment the cacheCount and return its promise + + + if (promises[uri]) { + // console.log('returning existing load promise for ' + uri); + promises[uri].cacheCount++; + return promises[uri]; + } // This uri is not loaded or being loaded, load it via an xhrRequest + + + var loadDICOMPromise = loadRequest(uri, imageId); // handle success and failure of the XHR request load + + var promise = new Promise(function (resolve, reject) { + loadDICOMPromise.then(function (dicomPart10AsArrayBuffer + /* , xhr*/ + ) { + var byteArray = new Uint8Array(dicomPart10AsArrayBuffer); // Reject the promise if parsing the dicom file fails + + var dataSet; + + try { + dataSet = dicomParser.parseDicom(byteArray); + } catch (error) { + return reject(error); + } + + loadedDataSets[uri] = { + dataSet: dataSet, + cacheCount: promise.cacheCount + }; + cacheSizeInBytes += dataSet.byteArray.length; + resolve(dataSet); + cornerstone.triggerEvent(cornerstone.events, 'datasetscachechanged', { + uri: uri, + action: 'loaded', + cacheInfo: getInfo() + }); + }, reject).then(function () { + // Remove the promise if success + delete promises[uri]; + }, function () { + // Remove the promise if failure + delete promises[uri]; + }); + }); + promise.cacheCount = 1; + promises[uri] = promise; + return promise; +} // remove the cached/loaded dicom dataset for the specified wadouri to free up memory + + +function unload(uri) { + var cornerstone = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].cornerstone; // console.log('unload for ' + uri); + + if (loadedDataSets[uri]) { + loadedDataSets[uri].cacheCount--; + + if (loadedDataSets[uri].cacheCount === 0) { + // console.log('removing loaded dataset for ' + uri); + cacheSizeInBytes -= loadedDataSets[uri].dataSet.byteArray.length; + delete loadedDataSets[uri]; + cornerstone.triggerEvent(cornerstone.events, 'datasetscachechanged', { + uri: uri, + action: 'unloaded', + cacheInfo: getInfo() + }); + } + } +} + +function getInfo() { + return { + cacheSizeInBytes: cacheSizeInBytes, + numberOfDataSetsCached: Object.keys(loadedDataSets).length + }; +} // removes all cached datasets from memory + +function purge() { + loadedDataSets = {}; + promises = {}; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + isLoaded: isLoaded, + load: load, + unload: unload, + getInfo: getInfo, + purge: purge, + get: get +}); + +/***/ }), + +/***/ "./imageLoader/wadouri/fileManager.js": +/*!********************************************!*\ + !*** ./imageLoader/wadouri/fileManager.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +var files = []; + +function add(file) { + var fileIndex = files.push(file); + return "dicomfile:".concat(fileIndex - 1); +} + +function get(index) { + return files[index]; +} + +function remove(index) { + files[index] = undefined; +} + +function purge() { + files = []; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + add: add, + get: get, + remove: remove, + purge: purge +}); + +/***/ }), + +/***/ "./imageLoader/wadouri/getEncapsulatedImageFrame.js": +/*!**********************************************************!*\ + !*** ./imageLoader/wadouri/getEncapsulatedImageFrame.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getEncapsulatedImageFrame; }); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../externalModules.js */ "./externalModules.js"); + +/** + * Function to deal with extracting an image frame from an encapsulated data set. + */ + +function framesAreFragmented(dataSet) { + var numberOfFrames = dataSet.intString('x00280008'); + var pixelDataElement = dataSet.elements.x7fe00010; + return numberOfFrames !== pixelDataElement.fragments.length; +} + +function getEncapsulatedImageFrame(dataSet, frameIndex) { + var dicomParser = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].dicomParser; + + if (dataSet.elements.x7fe00010 && dataSet.elements.x7fe00010.basicOffsetTable.length) { + // Basic Offset Table is not empty + return dicomParser.readEncapsulatedImageFrame(dataSet, dataSet.elements.x7fe00010, frameIndex); + } // Empty basic offset table + + + if (framesAreFragmented(dataSet)) { + var basicOffsetTable = dicomParser.createJPEGBasicOffsetTable(dataSet, dataSet.elements.x7fe00010); + return dicomParser.readEncapsulatedImageFrame(dataSet, dataSet.elements.x7fe00010, frameIndex, basicOffsetTable); + } + + return dicomParser.readEncapsulatedPixelDataFromFragments(dataSet, dataSet.elements.x7fe00010, frameIndex); +} + +/***/ }), + +/***/ "./imageLoader/wadouri/getPixelData.js": +/*!*********************************************!*\ + !*** ./imageLoader/wadouri/getPixelData.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getEncapsulatedImageFrame_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getEncapsulatedImageFrame.js */ "./imageLoader/wadouri/getEncapsulatedImageFrame.js"); +/* harmony import */ var _getUncompressedImageFrame_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getUncompressedImageFrame.js */ "./imageLoader/wadouri/getUncompressedImageFrame.js"); + + + +function getPixelData(dataSet) { + var frameIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var pixelDataElement = dataSet.elements.x7fe00010 || dataSet.elements.x7fe00008; + + if (!pixelDataElement) { + return null; + } + + if (pixelDataElement.encapsulatedPixelData) { + return Object(_getEncapsulatedImageFrame_js__WEBPACK_IMPORTED_MODULE_0__["default"])(dataSet, frameIndex); + } + + return Object(_getUncompressedImageFrame_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, frameIndex); +} + +/* harmony default export */ __webpack_exports__["default"] = (getPixelData); + +/***/ }), + +/***/ "./imageLoader/wadouri/getUncompressedImageFrame.js": +/*!**********************************************************!*\ + !*** ./imageLoader/wadouri/getUncompressedImageFrame.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _unpackBinaryFrame_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./unpackBinaryFrame.js */ "./imageLoader/wadouri/unpackBinaryFrame.js"); + +/** + * Function to deal with extracting an image frame from an encapsulated data set. + */ + +function getUncompressedImageFrame(dataSet, frameIndex) { + var pixelDataElement = dataSet.elements.x7fe00010 || dataSet.elements.x7fe00008; + var bitsAllocated = dataSet.uint16('x00280100'); + var rows = dataSet.uint16('x00280010'); + var columns = dataSet.uint16('x00280011'); + var samplesPerPixel = dataSet.uint16('x00280002'); + var pixelDataOffset = pixelDataElement.dataOffset; + var pixelsPerFrame = rows * columns * samplesPerPixel; + var frameOffset; + + if (bitsAllocated === 8) { + frameOffset = pixelDataOffset + frameIndex * pixelsPerFrame; + + if (frameOffset >= dataSet.byteArray.length) { + throw new Error('frame exceeds size of pixelData'); + } + + return new Uint8Array(dataSet.byteArray.buffer, frameOffset, pixelsPerFrame); + } else if (bitsAllocated === 16) { + frameOffset = pixelDataOffset + frameIndex * pixelsPerFrame * 2; + + if (frameOffset >= dataSet.byteArray.length) { + throw new Error('frame exceeds size of pixelData'); + } + + return new Uint8Array(dataSet.byteArray.buffer, frameOffset, pixelsPerFrame * 2); + } else if (bitsAllocated === 1) { + frameOffset = pixelDataOffset + frameIndex * pixelsPerFrame * 0.125; + + if (frameOffset >= dataSet.byteArray.length) { + throw new Error('frame exceeds size of pixelData'); + } + + return Object(_unpackBinaryFrame_js__WEBPACK_IMPORTED_MODULE_0__["default"])(dataSet.byteArray, frameOffset, pixelsPerFrame); + } else if (bitsAllocated === 32) { + frameOffset = pixelDataOffset + frameIndex * pixelsPerFrame * 4; + + if (frameOffset >= dataSet.byteArray.length) { + throw new Error('frame exceeds size of pixelData'); + } + + return new Uint8Array(dataSet.byteArray.buffer, frameOffset, pixelsPerFrame * 4); + } + + throw new Error('unsupported pixel format'); +} + +/* harmony default export */ __webpack_exports__["default"] = (getUncompressedImageFrame); + +/***/ }), + +/***/ "./imageLoader/wadouri/index.js": +/*!**************************************!*\ + !*** ./imageLoader/wadouri/index.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./metaData/index.js */ "./imageLoader/wadouri/metaData/index.js"); +/* harmony import */ var _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataSetCacheManager.js */ "./imageLoader/wadouri/dataSetCacheManager.js"); +/* harmony import */ var _fileManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./fileManager.js */ "./imageLoader/wadouri/fileManager.js"); +/* harmony import */ var _getEncapsulatedImageFrame_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getEncapsulatedImageFrame.js */ "./imageLoader/wadouri/getEncapsulatedImageFrame.js"); +/* harmony import */ var _getUncompressedImageFrame_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getUncompressedImageFrame.js */ "./imageLoader/wadouri/getUncompressedImageFrame.js"); +/* harmony import */ var _loadFileRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./loadFileRequest.js */ "./imageLoader/wadouri/loadFileRequest.js"); +/* harmony import */ var _loadImage_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./loadImage.js */ "./imageLoader/wadouri/loadImage.js"); +/* harmony import */ var _parseImageId_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./parseImageId.js */ "./imageLoader/wadouri/parseImageId.js"); +/* harmony import */ var _unpackBinaryFrame_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./unpackBinaryFrame.js */ "./imageLoader/wadouri/unpackBinaryFrame.js"); +/* harmony import */ var _register_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./register.js */ "./imageLoader/wadouri/register.js"); + + + + + + + + + + +var metaData = { + getImagePixelModule: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getImagePixelModule"], + getLUTs: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getLUTs"], + getModalityLUTOutputPixelRepresentation: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getModalityLUTOutputPixelRepresentation"], + getNumberValues: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["getNumberValues"], + metaDataProvider: _metaData_index_js__WEBPACK_IMPORTED_MODULE_0__["metaDataProvider"] +}; +/* harmony default export */ __webpack_exports__["default"] = ({ + metaData: metaData, + dataSetCacheManager: _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_1__["default"], + fileManager: _fileManager_js__WEBPACK_IMPORTED_MODULE_2__["default"], + getEncapsulatedImageFrame: _getEncapsulatedImageFrame_js__WEBPACK_IMPORTED_MODULE_3__["default"], + getUncompressedImageFrame: _getUncompressedImageFrame_js__WEBPACK_IMPORTED_MODULE_4__["default"], + loadFileRequest: _loadFileRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"], + loadImageFromPromise: _loadImage_js__WEBPACK_IMPORTED_MODULE_6__["loadImageFromPromise"], + getLoaderForScheme: _loadImage_js__WEBPACK_IMPORTED_MODULE_6__["getLoaderForScheme"], + loadImage: _loadImage_js__WEBPACK_IMPORTED_MODULE_6__["loadImage"], + parseImageId: _parseImageId_js__WEBPACK_IMPORTED_MODULE_7__["default"], + unpackBinaryFrame: _unpackBinaryFrame_js__WEBPACK_IMPORTED_MODULE_8__["default"], + register: _register_js__WEBPACK_IMPORTED_MODULE_9__["default"] +}); + +/***/ }), + +/***/ "./imageLoader/wadouri/loadFileRequest.js": +/*!************************************************!*\ + !*** ./imageLoader/wadouri/loadFileRequest.js ***! + \************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _parseImageId_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./parseImageId.js */ "./imageLoader/wadouri/parseImageId.js"); +/* harmony import */ var _fileManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fileManager.js */ "./imageLoader/wadouri/fileManager.js"); + + + +function loadFileRequest(uri) { + var parsedImageId = Object(_parseImageId_js__WEBPACK_IMPORTED_MODULE_0__["default"])(uri); + var fileIndex = parseInt(parsedImageId.url, 10); + var file = _fileManager_js__WEBPACK_IMPORTED_MODULE_1__["default"].get(fileIndex); + return new Promise(function (resolve, reject) { + var fileReader = new FileReader(); + + fileReader.onload = function (e) { + var dicomPart10AsArrayBuffer = e.target.result; + resolve(dicomPart10AsArrayBuffer); + }; + + fileReader.onerror = reject; + fileReader.readAsArrayBuffer(file); + }); +} + +/* harmony default export */ __webpack_exports__["default"] = (loadFileRequest); + +/***/ }), + +/***/ "./imageLoader/wadouri/loadImage.js": +/*!******************************************!*\ + !*** ./imageLoader/wadouri/loadImage.js ***! + \******************************************/ +/*! exports provided: loadImageFromPromise, getLoaderForScheme, loadImage */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadImageFromPromise", function() { return loadImageFromPromise; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLoaderForScheme", function() { return getLoaderForScheme; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadImage", function() { return loadImage; }); +/* harmony import */ var _createImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../createImage.js */ "./imageLoader/createImage.js"); +/* harmony import */ var _parseImageId_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./parseImageId.js */ "./imageLoader/wadouri/parseImageId.js"); +/* harmony import */ var _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataSetCacheManager.js */ "./imageLoader/wadouri/dataSetCacheManager.js"); +/* harmony import */ var _loadFileRequest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./loadFileRequest.js */ "./imageLoader/wadouri/loadFileRequest.js"); +/* harmony import */ var _getPixelData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getPixelData.js */ "./imageLoader/wadouri/getPixelData.js"); +/* harmony import */ var _internal_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../internal/index.js */ "./imageLoader/internal/index.js"); + + + + + + // add a decache callback function to clear out our dataSetCacheManager + +function addDecache(imageLoadObject, imageId) { + imageLoadObject.decache = function () { + // console.log('decache'); + var parsedImageId = Object(_parseImageId_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageId); + _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].unload(parsedImageId.url); + }; +} + +function loadImageFromPromise(dataSetPromise, imageId) { + var frame = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + var sharedCacheKey = arguments.length > 3 ? arguments[3] : undefined; + var options = arguments.length > 4 ? arguments[4] : undefined; + var callbacks = arguments.length > 5 ? arguments[5] : undefined; + var start = new Date().getTime(); + var imageLoadObject = { + cancelFn: undefined + }; + imageLoadObject.promise = new Promise(function (resolve, reject) { + dataSetPromise.then(function (dataSet + /* , xhr*/ + ) { + var pixelData = Object(_getPixelData_js__WEBPACK_IMPORTED_MODULE_4__["default"])(dataSet, frame); + var transferSyntax = dataSet.string('x00020010'); + var loadEnd = new Date().getTime(); + var imagePromise = Object(_createImage_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageId, pixelData, transferSyntax, options); + addDecache(imageLoadObject, imageId); + imagePromise.then(function (image) { + image.data = dataSet; + image.sharedCacheKey = sharedCacheKey; + var end = new Date().getTime(); + image.loadTimeInMS = loadEnd - start; + image.totalTimeInMS = end - start; + + if (callbacks !== undefined && callbacks.imageDoneCallback !== undefined) { + callbacks.imageDoneCallback(image); + } + + resolve(image); + }, function (error) { + // Reject the error, and the dataSet + reject({ + error: error, + dataSet: dataSet + }); + }); + }, function (error) { + // Reject the error + reject({ + error: error + }); + }); + }); + return imageLoadObject; +} + +function loadImageFromDataSet(dataSet, imageId) { + var frame = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + var sharedCacheKey = arguments.length > 3 ? arguments[3] : undefined; + var options = arguments.length > 4 ? arguments[4] : undefined; + var start = new Date().getTime(); + var promise = new Promise(function (resolve, reject) { + var loadEnd = new Date().getTime(); + var imagePromise; + + try { + var pixelData = Object(_getPixelData_js__WEBPACK_IMPORTED_MODULE_4__["default"])(dataSet, frame); + var transferSyntax = dataSet.string('x00020010'); + imagePromise = Object(_createImage_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageId, pixelData, transferSyntax, options); + } catch (error) { + // Reject the error, and the dataSet + reject({ + error: error, + dataSet: dataSet + }); + return; + } + + imagePromise.then(function (image) { + image.data = dataSet; + image.sharedCacheKey = sharedCacheKey; + var end = new Date().getTime(); + image.loadTimeInMS = loadEnd - start; + image.totalTimeInMS = end - start; + resolve(image); + }, reject); + }); + return { + promise: promise, + cancelFn: undefined + }; +} + +function getLoaderForScheme(scheme) { + if (scheme === 'dicomweb' || scheme === 'wadouri') { + return _internal_index_js__WEBPACK_IMPORTED_MODULE_5__["xhrRequest"]; + } else if (scheme === 'dicomfile') { + return _loadFileRequest_js__WEBPACK_IMPORTED_MODULE_3__["default"]; + } +} + +function loadImage(imageId) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var parsedImageId = Object(_parseImageId_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageId); + options = Object.assign({}, options); + var loader = options.loader; + + if (loader === undefined) { + loader = getLoaderForScheme(parsedImageId.scheme); + } else { + delete options.loader; + } // if the dataset for this url is already loaded, use it + + + if (_dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].isLoaded(parsedImageId.url)) { + var dataSet = _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].get(parsedImageId.url, loader, imageId); + return loadImageFromDataSet(dataSet, imageId, parsedImageId.frame, parsedImageId.url, options); + } // load the dataSet via the dataSetCacheManager + + + var dataSetPromise = _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_2__["default"].load(parsedImageId.url, loader, imageId); + return loadImageFromPromise(dataSetPromise, imageId, parsedImageId.frame, parsedImageId.url, options); +} + + + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/getImagePixelModule.js": +/*!*************************************************************!*\ + !*** ./imageLoader/wadouri/metaData/getImagePixelModule.js ***! + \*************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function getLutDescriptor(dataSet, tag) { + if (!dataSet.elements[tag] || dataSet.elements[tag].length !== 6) { + return; + } + + return [dataSet.uint16(tag, 0), dataSet.uint16(tag, 1), dataSet.uint16(tag, 2)]; +} + +function getLutData(lutDataSet, tag, lutDescriptor) { + var lut = []; + var lutData = lutDataSet.elements[tag]; + + for (var i = 0; i < lutDescriptor[0]; i++) { + // Output range is always unsigned + if (lutDescriptor[2] === 16) { + lut[i] = lutDataSet.uint16(tag, i); + } else { + lut[i] = lutDataSet.byteArray[i + lutData.dataOffset]; + } + } + + return lut; +} + +function populatePaletteColorLut(dataSet, imagePixelModule) { + imagePixelModule.redPaletteColorLookupTableDescriptor = getLutDescriptor(dataSet, 'x00281101'); + imagePixelModule.greenPaletteColorLookupTableDescriptor = getLutDescriptor(dataSet, 'x00281102'); + imagePixelModule.bluePaletteColorLookupTableDescriptor = getLutDescriptor(dataSet, 'x00281103'); // The first Palette Color Lookup Table Descriptor value is the number of entries in the lookup table. + // When the number of table entries is equal to 2ˆ16 then this value shall be 0. + // See http://dicom.nema.org/MEDICAL/DICOM/current/output/chtml/part03/sect_C.7.6.3.html#sect_C.7.6.3.1.5 + + if (imagePixelModule.redPaletteColorLookupTableDescriptor[0] === 0) { + imagePixelModule.redPaletteColorLookupTableDescriptor[0] = 65536; + imagePixelModule.greenPaletteColorLookupTableDescriptor[0] = 65536; + imagePixelModule.bluePaletteColorLookupTableDescriptor[0] = 65536; + } // The third Palette Color Lookup Table Descriptor value specifies the number of bits for each entry in the Lookup Table Data. + // It shall take the value of 8 or 16. + // The LUT Data shall be stored in a format equivalent to 8 bits allocated when the number of bits for each entry is 8, and 16 bits allocated when the number of bits for each entry is 16, where in both cases the high bit is equal to bits allocated-1. + // The third value shall be identical for each of the Red, Green and Blue Palette Color Lookup Table Descriptors. + // + // Note: Some implementations have encoded 8 bit entries with 16 bits allocated, padding the high bits; + // this can be detected by comparing the number of entries specified in the LUT Descriptor with the actual value length of the LUT Data entry. + // The value length in bytes should equal the number of entries if bits allocated is 8, and be twice as long if bits allocated is 16. + + + var numLutEntries = imagePixelModule.redPaletteColorLookupTableDescriptor[0]; + var lutData = dataSet.elements.x00281201; + var lutBitsAllocated = lutData.length === numLutEntries ? 8 : 16; // If the descriptors do not appear to have the correct values, correct them + + if (imagePixelModule.redPaletteColorLookupTableDescriptor[2] !== lutBitsAllocated) { + imagePixelModule.redPaletteColorLookupTableDescriptor[2] = lutBitsAllocated; + imagePixelModule.greenPaletteColorLookupTableDescriptor[2] = lutBitsAllocated; + imagePixelModule.bluePaletteColorLookupTableDescriptor[2] = lutBitsAllocated; + } + + imagePixelModule.redPaletteColorLookupTableData = getLutData(dataSet, 'x00281201', imagePixelModule.redPaletteColorLookupTableDescriptor); + imagePixelModule.greenPaletteColorLookupTableData = getLutData(dataSet, 'x00281202', imagePixelModule.greenPaletteColorLookupTableDescriptor); + imagePixelModule.bluePaletteColorLookupTableData = getLutData(dataSet, 'x00281203', imagePixelModule.bluePaletteColorLookupTableDescriptor); +} + +function populateSmallestLargestPixelValues(dataSet, imagePixelModule) { + var pixelRepresentation = dataSet.uint16('x00280103'); + + if (pixelRepresentation === 0) { + imagePixelModule.smallestPixelValue = dataSet.uint16('x00280106'); + imagePixelModule.largestPixelValue = dataSet.uint16('x00280107'); + } else { + imagePixelModule.smallestPixelValue = dataSet.int16('x00280106'); + imagePixelModule.largestPixelValue = dataSet.int16('x00280107'); + } +} + +function getImagePixelModule(dataSet) { + var imagePixelModule = { + samplesPerPixel: dataSet.uint16('x00280002'), + photometricInterpretation: dataSet.string('x00280004'), + rows: dataSet.uint16('x00280010'), + columns: dataSet.uint16('x00280011'), + bitsAllocated: dataSet.uint16('x00280100'), + bitsStored: dataSet.uint16('x00280101'), + highBit: dataSet.uint16('x00280102'), + pixelRepresentation: dataSet.uint16('x00280103'), + planarConfiguration: dataSet.uint16('x00280006'), + pixelAspectRatio: dataSet.string('x00280034') + }; + populateSmallestLargestPixelValues(dataSet, imagePixelModule); + + if (imagePixelModule.photometricInterpretation === 'PALETTE COLOR' && dataSet.elements.x00281101) { + populatePaletteColorLut(dataSet, imagePixelModule); + } + + return imagePixelModule; +} + +/* harmony default export */ __webpack_exports__["default"] = (getImagePixelModule); + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/getLUTs.js": +/*!*************************************************!*\ + !*** ./imageLoader/wadouri/metaData/getLUTs.js ***! + \*************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function getLUT(pixelRepresentation, lutDataSet) { + var numLUTEntries = lutDataSet.uint16('x00283002', 0); + + if (numLUTEntries === 0) { + numLUTEntries = 65535; + } + + var firstValueMapped = 0; + + if (pixelRepresentation === 0) { + firstValueMapped = lutDataSet.uint16('x00283002', 1); + } else { + firstValueMapped = lutDataSet.int16('x00283002', 1); + } + + var numBitsPerEntry = lutDataSet.uint16('x00283002', 2); // console.log('LUT(', numLUTEntries, ',', firstValueMapped, ',', numBitsPerEntry, ')'); + + var lut = { + id: '1', + firstValueMapped: firstValueMapped, + numBitsPerEntry: numBitsPerEntry, + lut: [] + }; // console.log("minValue=", minValue, "; maxValue=", maxValue); + + for (var i = 0; i < numLUTEntries; i++) { + if (pixelRepresentation === 0) { + lut.lut[i] = lutDataSet.uint16('x00283006', i); + } else { + lut.lut[i] = lutDataSet.int16('x00283006', i); + } + } + + return lut; +} + +function getLUTs(pixelRepresentation, lutSequence) { + if (!lutSequence || !lutSequence.items || !lutSequence.items.length) { + return; + } + + var luts = []; + + for (var i = 0; i < lutSequence.items.length; i++) { + var lutDataSet = lutSequence.items[i].dataSet; + var lut = getLUT(pixelRepresentation, lutDataSet); + + if (lut) { + luts.push(lut); + } + } + + return luts; +} + +/* harmony default export */ __webpack_exports__["default"] = (getLUTs); + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js": +/*!*********************************************************************************!*\ + !*** ./imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js ***! + \*********************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* eslint no-bitwise: 0 */ +function getMinStoredPixelValue(dataSet) { + var pixelRepresentation = dataSet.uint16('x00280103'); + var bitsStored = dataSet.uint16('x00280101'); + + if (pixelRepresentation === 0) { + return 0; + } + + return -1 << bitsStored - 1; +} // 0 = unsigned / US, 1 = signed / SS + + +function getModalityLUTOutputPixelRepresentation(dataSet) { + // CT SOP Classes are always signed + var sopClassUID = dataSet.string('x00080016'); + + if (sopClassUID === '1.2.840.10008.5.1.4.1.1.2' || sopClassUID === '1.2.840.10008.5.1.4.1.1.2.1') { + return 1; + } // if rescale intercept and rescale slope are present, pass the minimum stored + // pixel value through them to see if we get a signed output range + + + var rescaleIntercept = dataSet.floatString('x00281052'); + var rescaleSlope = dataSet.floatString('x00281053'); + + if (rescaleIntercept !== undefined && rescaleSlope !== undefined) { + var minStoredPixelValue = getMinStoredPixelValue(dataSet); // + + var minModalityLutValue = minStoredPixelValue * rescaleSlope + rescaleIntercept; + + if (minModalityLutValue < 0) { + return 1; + } + + return 0; + } // Output of non linear modality lut is always unsigned + + + if (dataSet.elements.x00283000 && dataSet.elements.x00283000.length > 0) { + return 0; + } // If no modality lut transform, output is same as pixel representation + + + return dataSet.uint16('x00280103'); +} + +/* harmony default export */ __webpack_exports__["default"] = (getModalityLUTOutputPixelRepresentation); + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/getNumberValues.js": +/*!*********************************************************!*\ + !*** ./imageLoader/wadouri/metaData/getNumberValues.js ***! + \*********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function getNumberValues(dataSet, tag, minimumLength) { + var values = []; + var valueAsString = dataSet.string(tag); + + if (!valueAsString) { + return; + } + + var split = valueAsString.split('\\'); + + if (minimumLength && split.length < minimumLength) { + return; + } + + for (var i = 0; i < split.length; i++) { + values.push(parseFloat(split[i])); + } + + return values; +} + +/* harmony default export */ __webpack_exports__["default"] = (getNumberValues); + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/getOverlayPlaneModule.js": +/*!***************************************************************!*\ + !*** ./imageLoader/wadouri/metaData/getOverlayPlaneModule.js ***! + \***************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getOverlayPlaneModule; }); +function getOverlayPlaneModule(dataSet) { + var overlays = []; + + for (var overlayGroup = 0x00; overlayGroup <= 0x1E; overlayGroup += 0x02) { + var groupStr = "x60".concat(overlayGroup.toString(16)); + + if (groupStr.length === 4) { + groupStr = "x600".concat(overlayGroup.toString(16)); + } + + var data = dataSet.elements["".concat(groupStr, "3000")]; + + if (!data) { + continue; + } + + var pixelData = []; + + for (var i = 0; i < data.length; i++) { + for (var k = 0; k < 8; k++) { + var byte_as_int = dataSet.byteArray[data.dataOffset + i]; + pixelData[i * 8 + k] = byte_as_int >> k & 1; // eslint-disable-line no-bitwise + } + } + + overlays.push({ + rows: dataSet.uint16("".concat(groupStr, "0010")), + columns: dataSet.uint16("".concat(groupStr, "0011")), + type: dataSet.string("".concat(groupStr, "0040")), + x: dataSet.int16("".concat(groupStr, "0050"), 1) - 1, + y: dataSet.int16("".concat(groupStr, "0050"), 0) - 1, + pixelData: pixelData, + description: dataSet.string("".concat(groupStr, "0022")), + label: dataSet.string("".concat(groupStr, "1500")), + roiArea: dataSet.string("".concat(groupStr, "1301")), + roiMean: dataSet.string("".concat(groupStr, "1302")), + roiStandardDeviation: dataSet.string("".concat(groupStr, "1303")) + }); + } + + return { + overlays: overlays + }; +} + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/index.js": +/*!***********************************************!*\ + !*** ./imageLoader/wadouri/metaData/index.js ***! + \***********************************************/ +/*! exports provided: getImagePixelModule, getLUTs, getModalityLUTOutputPixelRepresentation, getNumberValues, metaDataProvider */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _getImagePixelModule_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getImagePixelModule.js */ "./imageLoader/wadouri/metaData/getImagePixelModule.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getImagePixelModule", function() { return _getImagePixelModule_js__WEBPACK_IMPORTED_MODULE_0__["default"]; }); + +/* harmony import */ var _getLUTs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getLUTs.js */ "./imageLoader/wadouri/metaData/getLUTs.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getLUTs", function() { return _getLUTs_js__WEBPACK_IMPORTED_MODULE_1__["default"]; }); + +/* harmony import */ var _getModalityLUTOutputPixelRepresentation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getModalityLUTOutputPixelRepresentation.js */ "./imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getModalityLUTOutputPixelRepresentation", function() { return _getModalityLUTOutputPixelRepresentation_js__WEBPACK_IMPORTED_MODULE_2__["default"]; }); + +/* harmony import */ var _getNumberValues_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getNumberValues.js */ "./imageLoader/wadouri/metaData/getNumberValues.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getNumberValues", function() { return _getNumberValues_js__WEBPACK_IMPORTED_MODULE_3__["default"]; }); + +/* harmony import */ var _metaDataProvider_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metaDataProvider.js */ "./imageLoader/wadouri/metaData/metaDataProvider.js"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "metaDataProvider", function() { return _metaDataProvider_js__WEBPACK_IMPORTED_MODULE_4__["default"]; }); + + + + + + + +/***/ }), + +/***/ "./imageLoader/wadouri/metaData/metaDataProvider.js": +/*!**********************************************************!*\ + !*** ./imageLoader/wadouri/metaData/metaDataProvider.js ***! + \**********************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _externalModules_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../externalModules.js */ "./externalModules.js"); +/* harmony import */ var _getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getNumberValues.js */ "./imageLoader/wadouri/metaData/getNumberValues.js"); +/* harmony import */ var _parseImageId_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../parseImageId.js */ "./imageLoader/wadouri/parseImageId.js"); +/* harmony import */ var _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dataSetCacheManager.js */ "./imageLoader/wadouri/dataSetCacheManager.js"); +/* harmony import */ var _getImagePixelModule_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getImagePixelModule.js */ "./imageLoader/wadouri/metaData/getImagePixelModule.js"); +/* harmony import */ var _getOverlayPlaneModule_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getOverlayPlaneModule.js */ "./imageLoader/wadouri/metaData/getOverlayPlaneModule.js"); +/* harmony import */ var _getLUTs_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getLUTs.js */ "./imageLoader/wadouri/metaData/getLUTs.js"); +/* harmony import */ var _getModalityLUTOutputPixelRepresentation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getModalityLUTOutputPixelRepresentation.js */ "./imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js"); + + + + + + + + + +function metaDataProvider(type, imageId) { + var dicomParser = _externalModules_js__WEBPACK_IMPORTED_MODULE_0__["default"].dicomParser; + var parsedImageId = Object(_parseImageId_js__WEBPACK_IMPORTED_MODULE_2__["default"])(imageId); + var dataSet = _dataSetCacheManager_js__WEBPACK_IMPORTED_MODULE_3__["default"].get(parsedImageId.url); + + if (!dataSet) { + return; + } + + if (type === 'generalSeriesModule') { + return { + modality: dataSet.string('x00080060'), + seriesInstanceUID: dataSet.string('x0020000e'), + seriesNumber: dataSet.intString('x00200011'), + studyInstanceUID: dataSet.string('x0020000d'), + seriesDate: dicomParser.parseDA(dataSet.string('x00080021')), + seriesTime: dicomParser.parseTM(dataSet.string('x00080031') || '') + }; + } + + if (type === 'patientStudyModule') { + return { + patientAge: dataSet.intString('x00101010'), + patientSize: dataSet.floatString('x00101020'), + patientWeight: dataSet.floatString('x00101030') + }; + } + + if (type === 'imagePlaneModule') { + var imageOrientationPatient = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, 'x00200037', 6); + var imagePositionPatient = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, 'x00200032', 3); + var pixelSpacing = Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, 'x00280030', 2); + var columnPixelSpacing = null; + var rowPixelSpacing = null; + + if (pixelSpacing) { + rowPixelSpacing = pixelSpacing[0]; + columnPixelSpacing = pixelSpacing[1]; + } + + var rowCosines = null; + var columnCosines = null; + + if (imageOrientationPatient) { + rowCosines = [parseFloat(imageOrientationPatient[0]), parseFloat(imageOrientationPatient[1]), parseFloat(imageOrientationPatient[2])]; + columnCosines = [parseFloat(imageOrientationPatient[3]), parseFloat(imageOrientationPatient[4]), parseFloat(imageOrientationPatient[5])]; + } + + return { + frameOfReferenceUID: dataSet.string('x00200052'), + rows: dataSet.uint16('x00280010'), + columns: dataSet.uint16('x00280011'), + imageOrientationPatient: imageOrientationPatient, + rowCosines: rowCosines, + columnCosines: columnCosines, + imagePositionPatient: imagePositionPatient, + sliceThickness: dataSet.floatString('x00180050'), + sliceLocation: dataSet.floatString('x00201041'), + pixelSpacing: pixelSpacing, + rowPixelSpacing: rowPixelSpacing, + columnPixelSpacing: columnPixelSpacing + }; + } + + if (type === 'imagePixelModule') { + return Object(_getImagePixelModule_js__WEBPACK_IMPORTED_MODULE_4__["default"])(dataSet); + } + + if (type === 'modalityLutModule') { + return { + rescaleIntercept: dataSet.floatString('x00281052'), + rescaleSlope: dataSet.floatString('x00281053'), + rescaleType: dataSet.string('x00281054'), + modalityLUTSequence: Object(_getLUTs_js__WEBPACK_IMPORTED_MODULE_6__["default"])(dataSet.uint16('x00280103'), dataSet.elements.x00283000) + }; + } + + if (type === 'voiLutModule') { + var modalityLUTOutputPixelRepresentation = Object(_getModalityLUTOutputPixelRepresentation_js__WEBPACK_IMPORTED_MODULE_7__["default"])(dataSet); + return { + windowCenter: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, 'x00281050', 1), + windowWidth: Object(_getNumberValues_js__WEBPACK_IMPORTED_MODULE_1__["default"])(dataSet, 'x00281051', 1), + voiLUTSequence: Object(_getLUTs_js__WEBPACK_IMPORTED_MODULE_6__["default"])(modalityLUTOutputPixelRepresentation, dataSet.elements.x00283010) + }; + } + + if (type === 'sopCommonModule') { + return { + sopClassUID: dataSet.string('x00080016'), + sopInstanceUID: dataSet.string('x00080018') + }; + } + + if (type === 'petIsotopeModule') { + var radiopharmaceuticalInfo = dataSet.elements.x00540016; + + if (radiopharmaceuticalInfo === undefined) { + return; + } + + var firstRadiopharmaceuticalInfoDataSet = radiopharmaceuticalInfo.items[0].dataSet; + return { + radiopharmaceuticalInfo: { + radiopharmaceuticalStartTime: dicomParser.parseTM(firstRadiopharmaceuticalInfoDataSet.string('x00181072') || ''), + radionuclideTotalDose: firstRadiopharmaceuticalInfoDataSet.floatString('x00181074'), + radionuclideHalfLife: firstRadiopharmaceuticalInfoDataSet.floatString('x00181075') + } + }; + } + + if (type === 'overlayPlaneModule') { + return Object(_getOverlayPlaneModule_js__WEBPACK_IMPORTED_MODULE_5__["default"])(dataSet); + } +} + +/* harmony default export */ __webpack_exports__["default"] = (metaDataProvider); + +/***/ }), + +/***/ "./imageLoader/wadouri/parseImageId.js": +/*!*********************************************!*\ + !*** ./imageLoader/wadouri/parseImageId.js ***! + \*********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function parseImageId(imageId) { + // build a url by parsing out the url scheme and frame index from the imageId + var firstColonIndex = imageId.indexOf(':'); + var url = imageId.substring(firstColonIndex + 1); + var frameIndex = url.indexOf('frame='); + var frame; + + if (frameIndex !== -1) { + var frameStr = url.substr(frameIndex + 6); + frame = parseInt(frameStr, 10); + url = url.substr(0, frameIndex - 1); + } + + return { + scheme: imageId.substr(0, firstColonIndex), + url: url, + frame: frame + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (parseImageId); + +/***/ }), + +/***/ "./imageLoader/wadouri/register.js": +/*!*****************************************!*\ + !*** ./imageLoader/wadouri/register.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _loadImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadImage.js */ "./imageLoader/wadouri/loadImage.js"); +/* harmony import */ var _metaData_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./metaData/index.js */ "./imageLoader/wadouri/metaData/index.js"); + + +/* harmony default export */ __webpack_exports__["default"] = (function (cornerstone) { + // register dicomweb and wadouri image loader prefixes + cornerstone.registerImageLoader('dicomweb', _loadImage_js__WEBPACK_IMPORTED_MODULE_0__["loadImage"]); + cornerstone.registerImageLoader('wadouri', _loadImage_js__WEBPACK_IMPORTED_MODULE_0__["loadImage"]); + cornerstone.registerImageLoader('dicomfile', _loadImage_js__WEBPACK_IMPORTED_MODULE_0__["loadImage"]); // add wadouri metadata provider + + cornerstone.metaData.addProvider(_metaData_index_js__WEBPACK_IMPORTED_MODULE_1__["metaDataProvider"]); +}); + +/***/ }), + +/***/ "./imageLoader/wadouri/unpackBinaryFrame.js": +/*!**************************************************!*\ + !*** ./imageLoader/wadouri/unpackBinaryFrame.js ***! + \**************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* eslint no-bitwise: 0 */ +function isBitSet(_byte, bitPos) { + return _byte & 1 << bitPos; +} +/** + * Function to deal with unpacking a binary frame + */ + + +function unpackBinaryFrame(byteArray, frameOffset, pixelsPerFrame) { + // Create a new pixel array given the image size + var pixelData = new Uint8Array(pixelsPerFrame); + + for (var i = 0; i < pixelsPerFrame; i++) { + // Compute byte position + var bytePos = Math.floor(i / 8); // Get the current byte + + var _byte2 = byteArray[bytePos + frameOffset]; // Bit position (0-7) within byte + + var bitPos = i % 8; // Check whether bit at bitpos is set + + pixelData[i] = isBitSet(_byte2, bitPos) ? 1 : 0; + } + + return pixelData; +} + +/* harmony default export */ __webpack_exports__["default"] = (unpackBinaryFrame); + +/***/ }), + +/***/ "./imageLoader/webWorkerManager.js": +/*!*****************************************!*\ + !*** ./imageLoader/webWorkerManager.js ***! + \*****************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _webWorker_index_worker_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../webWorker/index.worker.js */ "./webWorker/index.worker.js"); +/* harmony import */ var _webWorker_index_worker_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_webWorker_index_worker_js__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _internal_options_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/options.js */ "./imageLoader/internal/options.js"); + + // the taskId to assign to the next task added via addTask() + +var nextTaskId = 0; // array of queued tasks sorted with highest priority task first + +var tasks = []; // array of web workers to dispatch decode tasks to + +var webWorkers = []; // The options for CornerstoneWADOImageLoader + +var options = Object(_internal_options_js__WEBPACK_IMPORTED_MODULE_1__["getOptions"])(); +var defaultConfig = { + maxWebWorkers: navigator.hardwareConcurrency || 1, + startWebWorkersOnDemand: true, + webWorkerTaskPaths: [], + taskConfiguration: { + decodeTask: { + initializeCodecsOnStartup: false, + usePDFJS: false, + strict: options.strict + } + } +}; +var config; +var statistics = { + maxWebWorkers: 0, + numWebWorkers: 0, + numTasksQueued: 0, + numTasksExecuting: 0, + numTasksCompleted: 0, + totalTaskTimeInMS: 0, + totalTimeDelayedInMS: 0 +}; +/** + * Function to start a task on a web worker + */ + +function startTaskOnWebWorker() { + // return immediately if no decode tasks to do + if (!tasks.length) { + return; + } // look for a web worker that is ready + + + for (var i = 0; i < webWorkers.length; i++) { + if (webWorkers[i].status === 'ready') { + // mark it as busy so tasks are not assigned to it + webWorkers[i].status = 'busy'; // get the highest priority task + + var task = tasks.shift(); + task.start = new Date().getTime(); // update stats with how long this task was delayed (waiting in queue) + + var end = new Date().getTime(); + statistics.totalTimeDelayedInMS += end - task.added; // assign this task to this web worker and send the web worker + // a message to execute it + + webWorkers[i].task = task; + webWorkers[i].worker.postMessage({ + taskType: task.taskType, + workerIndex: i, + data: task.data + }, task.transferList); + statistics.numTasksExecuting++; + return; + } + } // if no available web workers and we haven't started max web workers, start a new one + + + if (webWorkers.length < config.maxWebWorkers) { + spawnWebWorker(); + } +} +/** + * Function to handle a message from a web worker + * @param msg + */ + + +function handleMessageFromWorker(msg) { + // console.log('handleMessageFromWorker', msg.data); + if (msg.data.taskType === 'initialize') { + webWorkers[msg.data.workerIndex].status = 'ready'; + startTaskOnWebWorker(); + } else { + var start = webWorkers[msg.data.workerIndex].task.start; + var action = msg.data.status === 'success' ? 'resolve' : 'reject'; + webWorkers[msg.data.workerIndex].task.deferred[action](msg.data.result); + webWorkers[msg.data.workerIndex].task = undefined; + statistics.numTasksExecuting--; + webWorkers[msg.data.workerIndex].status = 'ready'; + statistics.numTasksCompleted++; + var end = new Date().getTime(); + statistics.totalTaskTimeInMS += end - start; + startTaskOnWebWorker(); + } +} +/** + * Spawns a new web worker + */ + + +function spawnWebWorker() { + // prevent exceeding maxWebWorkers + if (webWorkers.length >= config.maxWebWorkers) { + return; + } // spawn the webworker + + + var worker = new _webWorker_index_worker_js__WEBPACK_IMPORTED_MODULE_0___default.a(); + webWorkers.push({ + worker: worker, + status: 'initializing' + }); + worker.addEventListener('message', handleMessageFromWorker); + worker.postMessage({ + taskType: 'initialize', + workerIndex: webWorkers.length - 1, + config: config + }); +} +/** + * Initialization function for the web worker manager - spawns web workers + * @param configObject + */ + + +function initialize(configObject) { + configObject = configObject || defaultConfig; // prevent being initialized more than once + + if (config) { + throw new Error('WebWorkerManager already initialized'); + } + + config = configObject; + config.maxWebWorkers = config.maxWebWorkers || navigator.hardwareConcurrency || 1; // Spawn new web workers + + if (!config.startWebWorkersOnDemand) { + for (var i = 0; i < config.maxWebWorkers; i++) { + spawnWebWorker(); + } + } +} +/** + * Terminate all running web workers. + */ + + +function terminate() { + for (var i = 0; i < webWorkers.length; i++) { + webWorkers[i].worker.terminate(); + } + + webWorkers.length = 0; + config = undefined; +} +/** + * dynamically loads a web worker task + * @param sourcePath + * @param taskConfig + */ + + +function loadWebWorkerTask(sourcePath, taskConfig) { + // add it to the list of web worker tasks paths so on demand web workers + // load this properly + config.webWorkerTaskPaths.push(sourcePath); // if a task specific configuration is provided, merge it into the config + + if (taskConfig) { + config.taskConfiguration = Object.assign(config.taskConfiguration, taskConfig); + } // tell each spawned web worker to load this task + + + for (var i = 0; i < webWorkers.length; i++) { + webWorkers[i].worker.postMessage({ + taskType: 'loadWebWorkerTask', + workerIndex: webWorkers.length - 1, + sourcePath: sourcePath, + config: config + }); + } +} +/** + * Function to add a decode task to be performed + * + * @param taskType - the taskType for this task + * @param data - data specific to the task + * @param priority - optional priority of the task (defaults to 0), > 0 is higher, < 0 is lower + * @param transferList - optional array of data to transfer to web worker + * @returns {*} + */ + + +function addTask(taskType, data) { + var priority = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + var transferList = arguments.length > 3 ? arguments[3] : undefined; + + if (!config) { + initialize(); + } + + var deferred = {}; + var promise = new Promise(function (resolve, reject) { + deferred = { + resolve: resolve, + reject: reject + }; + }); // find the right spot to insert this decode task (based on priority) + + var i; + + for (i = 0; i < tasks.length; i++) { + if (tasks[i].priority < priority) { + break; + } + } + + var taskId = nextTaskId++; // insert the decode task at position i + + tasks.splice(i, 0, { + taskId: taskId, + taskType: taskType, + status: 'ready', + added: new Date().getTime(), + data: data, + deferred: deferred, + priority: priority, + transferList: transferList + }); // try to start a task on the web worker since we just added a new task and a web worker may be available + + startTaskOnWebWorker(); + return { + taskId: taskId, + promise: promise + }; +} +/** + * Changes the priority of a queued task + * @param taskId - the taskId to change the priority of + * @param priority - priority of the task (defaults to 0), > 0 is higher, < 0 is lower + * @returns boolean - true on success, false if taskId not found + */ + + +function setTaskPriority(taskId) { + var priority = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + + // search for this taskId + for (var i = 0; i < tasks.length; i++) { + if (tasks[i].taskId === taskId) { + // taskId found, remove it + var task = tasks.splice(i, 1)[0]; // set its priority + + task.priority = priority; // find the right spot to insert this decode task (based on priority) + + for (i = 0; i < tasks.length; i++) { + if (tasks[i].priority < priority) { + break; + } + } // insert the decode task at position i + + + tasks.splice(i, 0, task); + return true; + } + } + + return false; +} +/** + * Cancels a queued task and rejects + * @param taskId - the taskId to cancel + * @param reason - optional reason the task was rejected + * @returns boolean - true on success, false if taskId not found + */ + + +function cancelTask(taskId, reason) { + // search for this taskId + for (var i = 0; i < tasks.length; i++) { + if (tasks[i].taskId === taskId) { + // taskId found, remove it + var task = tasks.splice(i, 1); + task.deferred.reject(reason); + return true; + } + } + + return false; +} +/** + * Function to return the statistics on running web workers + * @returns object containing statistics + */ + + +function getStatistics() { + statistics.maxWebWorkers = config.maxWebWorkers; + statistics.numWebWorkers = webWorkers.length; + statistics.numTasksQueued = tasks.length; + return statistics; +} + +/* harmony default export */ __webpack_exports__["default"] = ({ + initialize: initialize, + loadWebWorkerTask: loadWebWorkerTask, + addTask: addTask, + getStatistics: getStatistics, + setTaskPriority: setTaskPriority, + cancelTask: cancelTask, + webWorkers: webWorkers, + terminate: terminate +}); + +/***/ }), + +/***/ "./shared/calculateMinMax.js": +/*!***********************************!*\ + !*** ./shared/calculateMinMax.js ***! + \***********************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return calculateMinMax; }); +/* harmony import */ var _getMinMax_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getMinMax.js */ "./shared/getMinMax.js"); + +/** + * Check the minimum and maximum values in the imageFrame pixel data + * match with the provided smallestPixelValue and largestPixelValue metaData. + * + * If 'strict' is true, log to the console a warning if these values do not match. + * Otherwise, correct them automatically. + * + * @param {Object} imageFrame + * @param {Boolean} strict If 'strict' is true, log to the console a warning if these values do not match. + * Otherwise, correct them automatically.Default is true. + */ + +function calculateMinMax(imageFrame) { + var strict = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; + var minMax = Object(_getMinMax_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageFrame.pixelData); + var mustAssign = !(isNumber(imageFrame.smallestPixelValue) && isNumber(imageFrame.largestPixelValue)); + + if (strict === true && !mustAssign) { + if (imageFrame.smallestPixelValue !== minMax.min) { + console.warn('Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably.'); + } + + if (imageFrame.largestPixelValue !== minMax.max) { + console.warn('Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably.'); + } + } else { + imageFrame.smallestPixelValue = minMax.min; + imageFrame.largestPixelValue = minMax.max; + } +} + +function isNumber(numValue) { + return typeof numValue === 'number'; +} + +/***/ }), + +/***/ "./shared/decodeImageFrame.js": +/*!************************************!*\ + !*** ./shared/decodeImageFrame.js ***! + \************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./decoders/decodeLittleEndian.js */ "./shared/decoders/decodeLittleEndian.js"); +/* harmony import */ var _decoders_decodeBigEndian_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decoders/decodeBigEndian.js */ "./shared/decoders/decodeBigEndian.js"); +/* harmony import */ var _decoders_decodeRLE_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./decoders/decodeRLE.js */ "./shared/decoders/decodeRLE.js"); +/* harmony import */ var _decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./decoders/decodeJPEGBaseline.js */ "./shared/decoders/decodeJPEGBaseline.js"); +/* harmony import */ var _decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./decoders/decodeJPEGLossless.js */ "./shared/decoders/decodeJPEGLossless.js"); +/* harmony import */ var _decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./decoders/decodeJPEGLS.js */ "./shared/decoders/decodeJPEGLS.js"); +/* harmony import */ var _decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./decoders/decodeJPEG2000.js */ "./shared/decoders/decodeJPEG2000.js"); + + + + + + + + +function decodeImageFrame(imageFrame, transferSyntax, pixelData, decodeConfig, options) { + var start = new Date().getTime(); + + if (transferSyntax === '1.2.840.10008.1.2') { + // Implicit VR Little Endian + imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.1') { + // Explicit VR Little Endian + imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.2') { + // Explicit VR Big Endian (retired) + imageFrame = Object(_decoders_decodeBigEndian_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.1.99') { + // Deflate transfer syntax (deflated by dicomParser) + imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.5') { + // RLE Lossless + imageFrame = Object(_decoders_decodeRLE_js__WEBPACK_IMPORTED_MODULE_2__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.50') { + // JPEG Baseline lossy process 1 (8 bit) + imageFrame = Object(_decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.51') { + // JPEG Baseline lossy process 2 & 4 (12 bit) + imageFrame = Object(_decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.57') { + // JPEG Lossless, Nonhierarchical (Processes 14) + imageFrame = Object(_decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.70') { + // JPEG Lossless, Nonhierarchical (Processes 14 [Selection 1]) + imageFrame = Object(_decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.80') { + // JPEG-LS Lossless Image Compression + imageFrame = Object(_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.81') { + // JPEG-LS Lossy (Near-Lossless) Image Compression + imageFrame = Object(_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__["default"])(imageFrame, pixelData); + } else if (transferSyntax === '1.2.840.10008.1.2.4.90') { + // JPEG 2000 Lossless + imageFrame = Object(_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__["default"])(imageFrame, pixelData, decodeConfig, options); + } else if (transferSyntax === '1.2.840.10008.1.2.4.91') { + // JPEG 2000 Lossy + imageFrame = Object(_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__["default"])(imageFrame, pixelData, decodeConfig, options); + } else { + throw new Error("no decoder for transfer syntax ".concat(transferSyntax)); + } + /* Don't know if these work... + // JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only) + else if(transferSyntax === "1.2.840.10008.1.2.4.92") + { + return decodeJPEG2000(dataSet, frame); + } + // JPEG 2000 Part 2 Multicomponent Image Compression + else if(transferSyntax === "1.2.840.10008.1.2.4.93") + { + return decodeJPEG2000(dataSet, frame); + } + */ + + + var shouldShift = imageFrame.pixelRepresentation !== undefined && imageFrame.pixelRepresentation === 1; + var shift = shouldShift && imageFrame.bitsStored !== undefined ? 32 - imageFrame.bitsStored : undefined; + + if (shouldShift && shift !== undefined) { + for (var i = 0; i < imageFrame.pixelData.length; i++) { + // eslint-disable-next-line no-bitwise + imageFrame.pixelData[i] = imageFrame.pixelData[i] << shift >> shift; + } + } + + var end = new Date().getTime(); + imageFrame.decodeTimeInMS = end - start; + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeImageFrame); + +/***/ }), + +/***/ "./shared/decoders/decodeBigEndian.js": +/*!********************************************!*\ + !*** ./shared/decoders/decodeBigEndian.js ***! + \********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* eslint no-bitwise: 0 */ +function swap16(val) { + return (val & 0xFF) << 8 | val >> 8 & 0xFF; +} + +function decodeBigEndian(imageFrame, pixelData) { + if (imageFrame.bitsAllocated === 16) { + var arrayBuffer = pixelData.buffer; + var offset = pixelData.byteOffset; + var length = pixelData.length; // if pixel data is not aligned on even boundary, shift it so we can create the 16 bit array + // buffers on it + + if (offset % 2) { + arrayBuffer = arrayBuffer.slice(offset); + offset = 0; + } + + if (imageFrame.pixelRepresentation === 0) { + imageFrame.pixelData = new Uint16Array(arrayBuffer, offset, length / 2); + } else { + imageFrame.pixelData = new Int16Array(arrayBuffer, offset, length / 2); + } // Do the byte swap + + + for (var i = 0; i < imageFrame.pixelData.length; i++) { + imageFrame.pixelData[i] = swap16(imageFrame.pixelData[i]); + } + } else if (imageFrame.bitsAllocated === 8) { + imageFrame.pixelData = pixelData; + } + + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeBigEndian); + +/***/ }), + +/***/ "./shared/decoders/decodeJPEG2000.js": +/*!*******************************************!*\ + !*** ./shared/decoders/decodeJPEG2000.js ***! + \*******************************************/ +/*! exports provided: default, initializeJPEG2000 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initializeJPEG2000", function() { return initializeJPEG2000; }); +/* harmony import */ var _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/openJPEG-FixedMemory.js */ "../codecs/openJPEG-FixedMemory.js"); +/* harmony import */ var _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../codecs/jpx.min.js */ "../codecs/jpx.min.js"); +/* harmony import */ var _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1__); + + + +function decodeJpx(imageFrame, pixelData) { + var jpxImage = new _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1___default.a(); + jpxImage.parse(pixelData); + var tileCount = jpxImage.tiles.length; + + if (tileCount !== 1) { + throw new Error("JPEG2000 decoder returned a tileCount of ".concat(tileCount, ", when 1 is expected")); + } + + imageFrame.columns = jpxImage.width; + imageFrame.rows = jpxImage.height; + imageFrame.pixelData = jpxImage.tiles[0].items; + return imageFrame; +} + +var openJPEG; + +function decodeOpenJPEG(data, bytesPerPixel, signed) { + var dataPtr = openJPEG._malloc(data.length); + + openJPEG.writeArrayToMemory(data, dataPtr); // create param outpout + + var imagePtrPtr = openJPEG._malloc(4); + + var imageSizePtr = openJPEG._malloc(4); + + var imageSizeXPtr = openJPEG._malloc(4); + + var imageSizeYPtr = openJPEG._malloc(4); + + var imageSizeCompPtr = openJPEG._malloc(4); + + var t0 = new Date().getTime(); + var ret = openJPEG.ccall('jp2_decode', 'number', ['number', 'number', 'number', 'number', 'number', 'number', 'number'], [dataPtr, data.length, imagePtrPtr, imageSizePtr, imageSizeXPtr, imageSizeYPtr, imageSizeCompPtr]); // add num vomp..etc + + if (ret !== 0) { + console.log('[opj_decode] decoding failed!'); + + openJPEG._free(dataPtr); + + openJPEG._free(openJPEG.getValue(imagePtrPtr, '*')); + + openJPEG._free(imageSizeXPtr); + + openJPEG._free(imageSizeYPtr); + + openJPEG._free(imageSizePtr); + + openJPEG._free(imageSizeCompPtr); + + return; + } + + var imagePtr = openJPEG.getValue(imagePtrPtr, '*'); + var image = { + length: openJPEG.getValue(imageSizePtr, 'i32'), + sx: openJPEG.getValue(imageSizeXPtr, 'i32'), + sy: openJPEG.getValue(imageSizeYPtr, 'i32'), + nbChannels: openJPEG.getValue(imageSizeCompPtr, 'i32'), + // hard coded for now + perf_timetodecode: undefined, + pixelData: undefined + }; // Copy the data from the EMSCRIPTEN heap into the correct type array + + var length = image.sx * image.sy * image.nbChannels; + var src32 = new Int32Array(openJPEG.HEAP32.buffer, imagePtr, length); + + if (bytesPerPixel === 1) { + if (Uint8Array.from) { + image.pixelData = Uint8Array.from(src32); + } else { + image.pixelData = new Uint8Array(length); + + for (var i = 0; i < length; i++) { + image.pixelData[i] = src32[i]; + } + } + } else if (signed) { + if (Int16Array.from) { + image.pixelData = Int16Array.from(src32); + } else { + image.pixelData = new Int16Array(length); + + for (var _i = 0; _i < length; _i++) { + image.pixelData[_i] = src32[_i]; + } + } + } else if (Uint16Array.from) { + image.pixelData = Uint16Array.from(src32); + } else { + image.pixelData = new Uint16Array(length); + + for (var _i2 = 0; _i2 < length; _i2++) { + image.pixelData[_i2] = src32[_i2]; + } + } + + var t1 = new Date().getTime(); + image.perf_timetodecode = t1 - t0; // free + + openJPEG._free(dataPtr); + + openJPEG._free(imagePtrPtr); + + openJPEG._free(imagePtr); + + openJPEG._free(imageSizePtr); + + openJPEG._free(imageSizeXPtr); + + openJPEG._free(imageSizeYPtr); + + openJPEG._free(imageSizeCompPtr); + + return image; +} + +function decodeOpenJpeg2000(imageFrame, pixelData) { + var bytesPerPixel = imageFrame.bitsAllocated <= 8 ? 1 : 2; + var signed = imageFrame.pixelRepresentation === 1; + var image = decodeOpenJPEG(pixelData, bytesPerPixel, signed); + imageFrame.columns = image.sx; + imageFrame.rows = image.sy; + imageFrame.pixelData = image.pixelData; + + if (image.nbChannels > 1) { + imageFrame.photometricInterpretation = 'RGB'; + } + + return imageFrame; +} + +function initializeJPEG2000(decodeConfig) { + // check to make sure codec is loaded + if (!decodeConfig.usePDFJS) { + if (typeof _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') { + throw new Error('OpenJPEG decoder not loaded'); + } + } + + if (!openJPEG) { + openJPEG = _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default()(); + + if (!openJPEG || !openJPEG._jp2_decode) { + throw new Error('OpenJPEG failed to initialize'); + } + } +} + +function decodeJPEG2000(imageFrame, pixelData, decodeConfig) { + var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; + initializeJPEG2000(decodeConfig); + + if (options.usePDFJS || decodeConfig.usePDFJS) { + // OHIF image-JPEG2000 https://github.com/OHIF/image-JPEG2000 + // console.log('PDFJS') + return decodeJpx(imageFrame, pixelData); + } // OpenJPEG2000 https://github.com/jpambrun/openjpeg + // console.log('OpenJPEG') + + + return decodeOpenJpeg2000(imageFrame, pixelData); +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeJPEG2000); + + +/***/ }), + +/***/ "./shared/decoders/decodeJPEGBaseline.js": +/*!***********************************************!*\ + !*** ./shared/decoders/decodeJPEGBaseline.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/jpeg.js */ "../codecs/jpeg.js"); +/* harmony import */ var _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0__); + + +function decodeJPEGBaseline(imageFrame, pixelData) { + // check to make sure codec is loaded + if (typeof _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') { + throw new Error('No JPEG Baseline decoder loaded'); + } + + var jpeg = new _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default.a(); + jpeg.parse(pixelData); // Do not use the internal jpeg.js color transformation, + // since we will handle this afterwards + + jpeg.colorTransform = false; + + if (imageFrame.bitsAllocated === 8) { + imageFrame.pixelData = jpeg.getData(imageFrame.columns, imageFrame.rows); + return imageFrame; + } else if (imageFrame.bitsAllocated === 16) { + imageFrame.pixelData = jpeg.getData16(imageFrame.columns, imageFrame.rows); + return imageFrame; + } +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeJPEGBaseline); + +/***/ }), + +/***/ "./shared/decoders/decodeJPEGLS.js": +/*!*****************************************!*\ + !*** ./shared/decoders/decodeJPEGLS.js ***! + \*****************************************/ +/*! exports provided: default, initializeJPEGLS */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initializeJPEGLS", function() { return initializeJPEGLS; }); +/* harmony import */ var _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/charLS-FixedMemory-browser.js */ "../codecs/charLS-FixedMemory-browser.js"); +/* harmony import */ var _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0__); + +var charLS; + +function jpegLSDecode(data, isSigned) { + // prepare input parameters + var dataPtr = charLS._malloc(data.length); + + charLS.writeArrayToMemory(data, dataPtr); // prepare output parameters + + var imagePtrPtr = charLS._malloc(4); + + var imageSizePtr = charLS._malloc(4); + + var widthPtr = charLS._malloc(4); + + var heightPtr = charLS._malloc(4); + + var bitsPerSamplePtr = charLS._malloc(4); + + var stridePtr = charLS._malloc(4); + + var allowedLossyErrorPtr = charLS._malloc(4); + + var componentsPtr = charLS._malloc(4); + + var interleaveModePtr = charLS._malloc(4); // Decode the image + + + var result = charLS.ccall('jpegls_decode', 'number', ['number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number'], [dataPtr, data.length, imagePtrPtr, imageSizePtr, widthPtr, heightPtr, bitsPerSamplePtr, stridePtr, componentsPtr, allowedLossyErrorPtr, interleaveModePtr]); // Extract result values into object + + var image = { + result: result, + width: charLS.getValue(widthPtr, 'i32'), + height: charLS.getValue(heightPtr, 'i32'), + bitsPerSample: charLS.getValue(bitsPerSamplePtr, 'i32'), + stride: charLS.getValue(stridePtr, 'i32'), + components: charLS.getValue(componentsPtr, 'i32'), + allowedLossyError: charLS.getValue(allowedLossyErrorPtr, 'i32'), + interleaveMode: charLS.getValue(interleaveModePtr, 'i32'), + pixelData: undefined + }; // Copy image from emscripten heap into appropriate array buffer type + + var imagePtr = charLS.getValue(imagePtrPtr, '*'); + + if (image.bitsPerSample <= 8) { + image.pixelData = new Uint8Array(image.width * image.height * image.components); + image.pixelData.set(new Uint8Array(charLS.HEAP8.buffer, imagePtr, image.pixelData.length)); + } else if (isSigned) { + image.pixelData = new Int16Array(image.width * image.height * image.components); + image.pixelData.set(new Int16Array(charLS.HEAP16.buffer, imagePtr, image.pixelData.length)); + } else { + image.pixelData = new Uint16Array(image.width * image.height * image.components); + image.pixelData.set(new Uint16Array(charLS.HEAP16.buffer, imagePtr, image.pixelData.length)); + } // free memory and return image object + + + charLS._free(dataPtr); + + charLS._free(imagePtr); + + charLS._free(imagePtrPtr); + + charLS._free(imageSizePtr); + + charLS._free(widthPtr); + + charLS._free(heightPtr); + + charLS._free(bitsPerSamplePtr); + + charLS._free(stridePtr); + + charLS._free(componentsPtr); + + charLS._free(interleaveModePtr); + + return image; +} + +function initializeJPEGLS() { + // check to make sure codec is loaded + if (typeof _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') { + throw new Error('No JPEG-LS decoder loaded'); + } // Try to initialize CharLS + // CharLS https://github.com/cornerstonejs/charls + + + if (!charLS) { + charLS = _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default()(); + + if (!charLS || !charLS._jpegls_decode) { + throw new Error('JPEG-LS failed to initialize'); + } + } +} + +function decodeJPEGLS(imageFrame, pixelData) { + initializeJPEGLS(); + var image = jpegLSDecode(pixelData, imageFrame.pixelRepresentation === 1); // throw error if not success or too much data + + if (image.result !== 0 && image.result !== 6) { + throw new Error("JPEG-LS decoder failed to decode frame (error code ".concat(image.result, ")")); + } + + imageFrame.columns = image.width; + imageFrame.rows = image.height; + imageFrame.pixelData = image.pixelData; + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeJPEGLS); + + +/***/ }), + +/***/ "./shared/decoders/decodeJPEGLossless.js": +/*!***********************************************!*\ + !*** ./shared/decoders/decodeJPEGLossless.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/jpegLossless.js */ "../codecs/jpegLossless.js"); +/* harmony import */ var _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0__); + + +function decodeJPEGLossless(imageFrame, pixelData) { + // check to make sure codec is loaded + if (typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined' || typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless === 'undefined' || typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless.Decoder === 'undefined') { + throw new Error('No JPEG Lossless decoder loaded'); + } + + var byteOutput = imageFrame.bitsAllocated <= 8 ? 1 : 2; // console.time('jpeglossless'); + + var buffer = pixelData.buffer; + var decoder = new _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless.Decoder(); + var decompressedData = decoder.decode(buffer, pixelData.byteOffset, pixelData.length, byteOutput); // console.timeEnd('jpeglossless'); + + if (imageFrame.pixelRepresentation === 0) { + if (imageFrame.bitsAllocated === 16) { + imageFrame.pixelData = new Uint16Array(decompressedData.buffer); + return imageFrame; + } // untested! + + + imageFrame.pixelData = new Uint8Array(decompressedData.buffer); + return imageFrame; + } + + imageFrame.pixelData = new Int16Array(decompressedData.buffer); + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeJPEGLossless); + +/***/ }), + +/***/ "./shared/decoders/decodeLittleEndian.js": +/*!***********************************************!*\ + !*** ./shared/decoders/decodeLittleEndian.js ***! + \***********************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function decodeLittleEndian(imageFrame, pixelData) { + var arrayBuffer = pixelData.buffer; + var offset = pixelData.byteOffset; + var length = pixelData.length; + + if (imageFrame.bitsAllocated === 16) { + // if pixel data is not aligned on even boundary, shift it so we can create the 16 bit array + // buffers on it + if (offset % 2) { + arrayBuffer = arrayBuffer.slice(offset); + offset = 0; + } + + if (imageFrame.pixelRepresentation === 0) { + imageFrame.pixelData = new Uint16Array(arrayBuffer, offset, length / 2); + } else { + imageFrame.pixelData = new Int16Array(arrayBuffer, offset, length / 2); + } + } else if (imageFrame.bitsAllocated === 8 || imageFrame.bitsAllocated === 1) { + imageFrame.pixelData = pixelData; + } else if (imageFrame.bitsAllocated === 32) { + // if pixel data is not aligned on even boundary, shift it + if (offset % 2) { + arrayBuffer = arrayBuffer.slice(offset); + offset = 0; + } + + imageFrame.pixelData = new Float32Array(arrayBuffer, offset, length / 4); + } + + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeLittleEndian); + +/***/ }), + +/***/ "./shared/decoders/decodeRLE.js": +/*!**************************************!*\ + !*** ./shared/decoders/decodeRLE.js ***! + \**************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +function decodeRLE(imageFrame, pixelData) { + if (imageFrame.bitsAllocated === 8) { + if (imageFrame.planarConfiguration) { + return decode8Planar(imageFrame, pixelData); + } + + return decode8(imageFrame, pixelData); + } else if (imageFrame.bitsAllocated === 16) { + return decode16(imageFrame, pixelData); + } + + throw new Error('unsupported pixel format for RLE'); +} + +function decode8(imageFrame, pixelData) { + var frameData = pixelData; + var frameSize = imageFrame.rows * imageFrame.columns; + var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel); + var header = new DataView(frameData.buffer, frameData.byteOffset); + var data = new Int8Array(frameData.buffer, frameData.byteOffset); + var out = new Int8Array(outFrame); + var outIndex = 0; + var numSegments = header.getInt32(0, true); + + for (var s = 0; s < numSegments; ++s) { + outIndex = s; + var inIndex = header.getInt32((s + 1) * 4, true); + var maxIndex = header.getInt32((s + 2) * 4, true); + + if (maxIndex === 0) { + maxIndex = frameData.length; + } + + var endOfSegment = frameSize * numSegments; + + while (inIndex < maxIndex) { + var n = data[inIndex++]; + + if (n >= 0 && n <= 127) { + // copy n bytes + for (var i = 0; i < n + 1 && outIndex < endOfSegment; ++i) { + out[outIndex] = data[inIndex++]; + outIndex += imageFrame.samplesPerPixel; + } + } else if (n <= -1 && n >= -127) { + var value = data[inIndex++]; // run of n bytes + + for (var j = 0; j < -n + 1 && outIndex < endOfSegment; ++j) { + out[outIndex] = value; + outIndex += imageFrame.samplesPerPixel; + } + } + /* else if (n === -128) { + } // do nothing */ + + } + } + + imageFrame.pixelData = new Uint8Array(outFrame); + return imageFrame; +} + +function decode8Planar(imageFrame, pixelData) { + var frameData = pixelData; + var frameSize = imageFrame.rows * imageFrame.columns; + var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel); + var header = new DataView(frameData.buffer, frameData.byteOffset); + var data = new Int8Array(frameData.buffer, frameData.byteOffset); + var out = new Int8Array(outFrame); + var outIndex = 0; + var numSegments = header.getInt32(0, true); + + for (var s = 0; s < numSegments; ++s) { + outIndex = s * frameSize; + var inIndex = header.getInt32((s + 1) * 4, true); + var maxIndex = header.getInt32((s + 2) * 4, true); + + if (maxIndex === 0) { + maxIndex = frameData.length; + } + + var endOfSegment = frameSize * numSegments; + + while (inIndex < maxIndex) { + var n = data[inIndex++]; + + if (n >= 0 && n <= 127) { + // copy n bytes + for (var i = 0; i < n + 1 && outIndex < endOfSegment; ++i) { + out[outIndex] = data[inIndex++]; + outIndex++; + } + } else if (n <= -1 && n >= -127) { + var value = data[inIndex++]; // run of n bytes + + for (var j = 0; j < -n + 1 && outIndex < endOfSegment; ++j) { + out[outIndex] = value; + outIndex++; + } + } + /* else if (n === -128) { + } // do nothing */ + + } + } + + imageFrame.pixelData = new Uint8Array(outFrame); + return imageFrame; +} + +function decode16(imageFrame, pixelData) { + var frameData = pixelData; + var frameSize = imageFrame.rows * imageFrame.columns; + var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel * 2); + var header = new DataView(frameData.buffer, frameData.byteOffset); + var data = new Int8Array(frameData.buffer, frameData.byteOffset); + var out = new Int8Array(outFrame); + var numSegments = header.getInt32(0, true); + + for (var s = 0; s < numSegments; ++s) { + var outIndex = 0; + var highByte = s === 0 ? 1 : 0; + var inIndex = header.getInt32((s + 1) * 4, true); + var maxIndex = header.getInt32((s + 2) * 4, true); + + if (maxIndex === 0) { + maxIndex = frameData.length; + } + + while (inIndex < maxIndex) { + var n = data[inIndex++]; + + if (n >= 0 && n <= 127) { + for (var i = 0; i < n + 1 && outIndex < frameSize; ++i) { + out[outIndex * 2 + highByte] = data[inIndex++]; + outIndex++; + } + } else if (n <= -1 && n >= -127) { + var value = data[inIndex++]; + + for (var j = 0; j < -n + 1 && outIndex < frameSize; ++j) { + out[outIndex * 2 + highByte] = value; + outIndex++; + } + } + /* else if (n === -128) { + } // do nothing */ + + } + } + + if (imageFrame.pixelRepresentation === 0) { + imageFrame.pixelData = new Uint16Array(outFrame); + } else { + imageFrame.pixelData = new Int16Array(outFrame); + } + + return imageFrame; +} + +/* harmony default export */ __webpack_exports__["default"] = (decodeRLE); + +/***/ }), + +/***/ "./shared/getMinMax.js": +/*!*****************************!*\ + !*** ./shared/getMinMax.js ***! + \*****************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Calculate the minimum and maximum values in an Array + * + * @param {Number[]} storedPixelData + * @return {{min: Number, max: Number}} + */ +function getMinMax(storedPixelData) { + // we always calculate the min max values since they are not always + // present in DICOM and we don't want to trust them anyway as cornerstone + // depends on us providing reliable values for these + var min = storedPixelData[0]; + var max = storedPixelData[0]; + var storedPixel; + var numPixels = storedPixelData.length; + + for (var index = 1; index < numPixels; index++) { + storedPixel = storedPixelData[index]; + min = Math.min(min, storedPixel); + max = Math.max(max, storedPixel); + } + + return { + min: min, + max: max + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (getMinMax); + +/***/ }), + +/***/ "./version.js": +/*!********************!*\ + !*** ./version.js ***! + \********************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony default export */ __webpack_exports__["default"] = ('3.0.6'); + +/***/ }), + +/***/ "./webWorker/index.worker.js": +/*!***********************************!*\ + !*** ./webWorker/index.worker.js ***! + \***********************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = function() { + return __webpack_require__(/*! !../node_modules/worker-loader/dist/workers/InlineWorker.js */ "../node_modules/worker-loader/dist/workers/InlineWorker.js")("/*! cornerstone-wado-image-loader - 3.0.6 - 2019-09-19 | (c) 2019 Chris Hafey | https://github.com/cornerstonejs/cornerstoneWADOImageLoader */\n/******/ (function(modules) { // webpackBootstrap\n/******/ \tvar parentHotUpdateCallback = this[\"webpackHotUpdate_name_\"];\n/******/ \tthis[\"webpackHotUpdate_name_\"] = // eslint-disable-next-line no-unused-vars\n/******/ \tfunction webpackHotUpdateCallback(chunkId, moreModules) {\n/******/ \t\thotAddUpdateChunk(chunkId, moreModules);\n/******/ \t\tif (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules);\n/******/ \t} ;\n/******/\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotDownloadUpdateChunk(chunkId) {\n/******/ \t\timportScripts(__webpack_require__.p + \"\" + chunkId + \".\" + hotCurrentHash + \".hot-update.js\");\n/******/ \t}\n/******/\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotDownloadManifest(requestTimeout) {\n/******/ \t\trequestTimeout = requestTimeout || 10000;\n/******/ \t\treturn new Promise(function(resolve, reject) {\n/******/ \t\t\tif (typeof XMLHttpRequest === \"undefined\") {\n/******/ \t\t\t\treturn reject(new Error(\"No browser support\"));\n/******/ \t\t\t}\n/******/ \t\t\ttry {\n/******/ \t\t\t\tvar request = new XMLHttpRequest();\n/******/ \t\t\t\tvar requestPath = __webpack_require__.p + \"\" + hotCurrentHash + \".hot-update.json\";\n/******/ \t\t\t\trequest.open(\"GET\", requestPath, true);\n/******/ \t\t\t\trequest.timeout = requestTimeout;\n/******/ \t\t\t\trequest.send(null);\n/******/ \t\t\t} catch (err) {\n/******/ \t\t\t\treturn reject(err);\n/******/ \t\t\t}\n/******/ \t\t\trequest.onreadystatechange = function() {\n/******/ \t\t\t\tif (request.readyState !== 4) return;\n/******/ \t\t\t\tif (request.status === 0) {\n/******/ \t\t\t\t\t// timeout\n/******/ \t\t\t\t\treject(\n/******/ \t\t\t\t\t\tnew Error(\"Manifest request to \" + requestPath + \" timed out.\")\n/******/ \t\t\t\t\t);\n/******/ \t\t\t\t} else if (request.status === 404) {\n/******/ \t\t\t\t\t// no update available\n/******/ \t\t\t\t\tresolve();\n/******/ \t\t\t\t} else if (request.status !== 200 && request.status !== 304) {\n/******/ \t\t\t\t\t// other failure\n/******/ \t\t\t\t\treject(new Error(\"Manifest request to \" + requestPath + \" failed.\"));\n/******/ \t\t\t\t} else {\n/******/ \t\t\t\t\t// success\n/******/ \t\t\t\t\ttry {\n/******/ \t\t\t\t\t\tvar update = JSON.parse(request.responseText);\n/******/ \t\t\t\t\t} catch (e) {\n/******/ \t\t\t\t\t\treject(e);\n/******/ \t\t\t\t\t\treturn;\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tresolve(update);\n/******/ \t\t\t\t}\n/******/ \t\t\t};\n/******/ \t\t});\n/******/ \t}\n/******/\n/******/ \t//eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotDisposeChunk(chunkId) {\n/******/ \t\tdelete installedChunks[chunkId];\n/******/ \t}\n/******/\n/******/ \tvar hotApplyOnUpdate = true;\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tvar hotCurrentHash = \"922d2a9b8827ff21dc41\";\n/******/ \tvar hotRequestTimeout = 10000;\n/******/ \tvar hotCurrentModuleData = {};\n/******/ \tvar hotCurrentChildModule;\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tvar hotCurrentParents = [];\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tvar hotCurrentParentsTemp = [];\n/******/\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotCreateRequire(moduleId) {\n/******/ \t\tvar me = installedModules[moduleId];\n/******/ \t\tif (!me) return __webpack_require__;\n/******/ \t\tvar fn = function(request) {\n/******/ \t\t\tif (me.hot.active) {\n/******/ \t\t\t\tif (installedModules[request]) {\n/******/ \t\t\t\t\tif (installedModules[request].parents.indexOf(moduleId) === -1) {\n/******/ \t\t\t\t\t\tinstalledModules[request].parents.push(moduleId);\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t} else {\n/******/ \t\t\t\t\thotCurrentParents = [moduleId];\n/******/ \t\t\t\t\thotCurrentChildModule = request;\n/******/ \t\t\t\t}\n/******/ \t\t\t\tif (me.children.indexOf(request) === -1) {\n/******/ \t\t\t\t\tme.children.push(request);\n/******/ \t\t\t\t}\n/******/ \t\t\t} else {\n/******/ \t\t\t\tconsole.warn(\n/******/ \t\t\t\t\t\"[HMR] unexpected require(\" +\n/******/ \t\t\t\t\t\trequest +\n/******/ \t\t\t\t\t\t\") from disposed module \" +\n/******/ \t\t\t\t\t\tmoduleId\n/******/ \t\t\t\t);\n/******/ \t\t\t\thotCurrentParents = [];\n/******/ \t\t\t}\n/******/ \t\t\treturn __webpack_require__(request);\n/******/ \t\t};\n/******/ \t\tvar ObjectFactory = function ObjectFactory(name) {\n/******/ \t\t\treturn {\n/******/ \t\t\t\tconfigurable: true,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: function() {\n/******/ \t\t\t\t\treturn __webpack_require__[name];\n/******/ \t\t\t\t},\n/******/ \t\t\t\tset: function(value) {\n/******/ \t\t\t\t\t__webpack_require__[name] = value;\n/******/ \t\t\t\t}\n/******/ \t\t\t};\n/******/ \t\t};\n/******/ \t\tfor (var name in __webpack_require__) {\n/******/ \t\t\tif (\n/******/ \t\t\t\tObject.prototype.hasOwnProperty.call(__webpack_require__, name) &&\n/******/ \t\t\t\tname !== \"e\" &&\n/******/ \t\t\t\tname !== \"t\"\n/******/ \t\t\t) {\n/******/ \t\t\t\tObject.defineProperty(fn, name, ObjectFactory(name));\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t\tfn.e = function(chunkId) {\n/******/ \t\t\tif (hotStatus === \"ready\") hotSetStatus(\"prepare\");\n/******/ \t\t\thotChunksLoading++;\n/******/ \t\t\treturn __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) {\n/******/ \t\t\t\tfinishChunkLoading();\n/******/ \t\t\t\tthrow err;\n/******/ \t\t\t});\n/******/\n/******/ \t\t\tfunction finishChunkLoading() {\n/******/ \t\t\t\thotChunksLoading--;\n/******/ \t\t\t\tif (hotStatus === \"prepare\") {\n/******/ \t\t\t\t\tif (!hotWaitingFilesMap[chunkId]) {\n/******/ \t\t\t\t\t\thotEnsureUpdateChunk(chunkId);\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tif (hotChunksLoading === 0 && hotWaitingFiles === 0) {\n/******/ \t\t\t\t\t\thotUpdateDownloaded();\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t\tfn.t = function(value, mode) {\n/******/ \t\t\tif (mode & 1) value = fn(value);\n/******/ \t\t\treturn __webpack_require__.t(value, mode & ~1);\n/******/ \t\t};\n/******/ \t\treturn fn;\n/******/ \t}\n/******/\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotCreateModule(moduleId) {\n/******/ \t\tvar hot = {\n/******/ \t\t\t// private stuff\n/******/ \t\t\t_acceptedDependencies: {},\n/******/ \t\t\t_declinedDependencies: {},\n/******/ \t\t\t_selfAccepted: false,\n/******/ \t\t\t_selfDeclined: false,\n/******/ \t\t\t_disposeHandlers: [],\n/******/ \t\t\t_main: hotCurrentChildModule !== moduleId,\n/******/\n/******/ \t\t\t// Module API\n/******/ \t\t\tactive: true,\n/******/ \t\t\taccept: function(dep, callback) {\n/******/ \t\t\t\tif (dep === undefined) hot._selfAccepted = true;\n/******/ \t\t\t\telse if (typeof dep === \"function\") hot._selfAccepted = dep;\n/******/ \t\t\t\telse if (typeof dep === \"object\")\n/******/ \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n/******/ \t\t\t\t\t\thot._acceptedDependencies[dep[i]] = callback || function() {};\n/******/ \t\t\t\telse hot._acceptedDependencies[dep] = callback || function() {};\n/******/ \t\t\t},\n/******/ \t\t\tdecline: function(dep) {\n/******/ \t\t\t\tif (dep === undefined) hot._selfDeclined = true;\n/******/ \t\t\t\telse if (typeof dep === \"object\")\n/******/ \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n/******/ \t\t\t\t\t\thot._declinedDependencies[dep[i]] = true;\n/******/ \t\t\t\telse hot._declinedDependencies[dep] = true;\n/******/ \t\t\t},\n/******/ \t\t\tdispose: function(callback) {\n/******/ \t\t\t\thot._disposeHandlers.push(callback);\n/******/ \t\t\t},\n/******/ \t\t\taddDisposeHandler: function(callback) {\n/******/ \t\t\t\thot._disposeHandlers.push(callback);\n/******/ \t\t\t},\n/******/ \t\t\tremoveDisposeHandler: function(callback) {\n/******/ \t\t\t\tvar idx = hot._disposeHandlers.indexOf(callback);\n/******/ \t\t\t\tif (idx >= 0) hot._disposeHandlers.splice(idx, 1);\n/******/ \t\t\t},\n/******/\n/******/ \t\t\t// Management API\n/******/ \t\t\tcheck: hotCheck,\n/******/ \t\t\tapply: hotApply,\n/******/ \t\t\tstatus: function(l) {\n/******/ \t\t\t\tif (!l) return hotStatus;\n/******/ \t\t\t\thotStatusHandlers.push(l);\n/******/ \t\t\t},\n/******/ \t\t\taddStatusHandler: function(l) {\n/******/ \t\t\t\thotStatusHandlers.push(l);\n/******/ \t\t\t},\n/******/ \t\t\tremoveStatusHandler: function(l) {\n/******/ \t\t\t\tvar idx = hotStatusHandlers.indexOf(l);\n/******/ \t\t\t\tif (idx >= 0) hotStatusHandlers.splice(idx, 1);\n/******/ \t\t\t},\n/******/\n/******/ \t\t\t//inherit from previous dispose call\n/******/ \t\t\tdata: hotCurrentModuleData[moduleId]\n/******/ \t\t};\n/******/ \t\thotCurrentChildModule = undefined;\n/******/ \t\treturn hot;\n/******/ \t}\n/******/\n/******/ \tvar hotStatusHandlers = [];\n/******/ \tvar hotStatus = \"idle\";\n/******/\n/******/ \tfunction hotSetStatus(newStatus) {\n/******/ \t\thotStatus = newStatus;\n/******/ \t\tfor (var i = 0; i < hotStatusHandlers.length; i++)\n/******/ \t\t\thotStatusHandlers[i].call(null, newStatus);\n/******/ \t}\n/******/\n/******/ \t// while downloading\n/******/ \tvar hotWaitingFiles = 0;\n/******/ \tvar hotChunksLoading = 0;\n/******/ \tvar hotWaitingFilesMap = {};\n/******/ \tvar hotRequestedFilesMap = {};\n/******/ \tvar hotAvailableFilesMap = {};\n/******/ \tvar hotDeferred;\n/******/\n/******/ \t// The update info\n/******/ \tvar hotUpdate, hotUpdateNewHash;\n/******/\n/******/ \tfunction toModuleId(id) {\n/******/ \t\tvar isNumber = +id + \"\" === id;\n/******/ \t\treturn isNumber ? +id : id;\n/******/ \t}\n/******/\n/******/ \tfunction hotCheck(apply) {\n/******/ \t\tif (hotStatus !== \"idle\") {\n/******/ \t\t\tthrow new Error(\"check() is only allowed in idle status\");\n/******/ \t\t}\n/******/ \t\thotApplyOnUpdate = apply;\n/******/ \t\thotSetStatus(\"check\");\n/******/ \t\treturn hotDownloadManifest(hotRequestTimeout).then(function(update) {\n/******/ \t\t\tif (!update) {\n/******/ \t\t\t\thotSetStatus(\"idle\");\n/******/ \t\t\t\treturn null;\n/******/ \t\t\t}\n/******/ \t\t\thotRequestedFilesMap = {};\n/******/ \t\t\thotWaitingFilesMap = {};\n/******/ \t\t\thotAvailableFilesMap = update.c;\n/******/ \t\t\thotUpdateNewHash = update.h;\n/******/\n/******/ \t\t\thotSetStatus(\"prepare\");\n/******/ \t\t\tvar promise = new Promise(function(resolve, reject) {\n/******/ \t\t\t\thotDeferred = {\n/******/ \t\t\t\t\tresolve: resolve,\n/******/ \t\t\t\t\treject: reject\n/******/ \t\t\t\t};\n/******/ \t\t\t});\n/******/ \t\t\thotUpdate = {};\n/******/ \t\t\tvar chunkId = \"main\";\n/******/ \t\t\t// eslint-disable-next-line no-lone-blocks\n/******/ \t\t\t{\n/******/ \t\t\t\t/*globals chunkId */\n/******/ \t\t\t\thotEnsureUpdateChunk(chunkId);\n/******/ \t\t\t}\n/******/ \t\t\tif (\n/******/ \t\t\t\thotStatus === \"prepare\" &&\n/******/ \t\t\t\thotChunksLoading === 0 &&\n/******/ \t\t\t\thotWaitingFiles === 0\n/******/ \t\t\t) {\n/******/ \t\t\t\thotUpdateDownloaded();\n/******/ \t\t\t}\n/******/ \t\t\treturn promise;\n/******/ \t\t});\n/******/ \t}\n/******/\n/******/ \t// eslint-disable-next-line no-unused-vars\n/******/ \tfunction hotAddUpdateChunk(chunkId, moreModules) {\n/******/ \t\tif (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId])\n/******/ \t\t\treturn;\n/******/ \t\thotRequestedFilesMap[chunkId] = false;\n/******/ \t\tfor (var moduleId in moreModules) {\n/******/ \t\t\tif (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n/******/ \t\t\t\thotUpdate[moduleId] = moreModules[moduleId];\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t\tif (--hotWaitingFiles === 0 && hotChunksLoading === 0) {\n/******/ \t\t\thotUpdateDownloaded();\n/******/ \t\t}\n/******/ \t}\n/******/\n/******/ \tfunction hotEnsureUpdateChunk(chunkId) {\n/******/ \t\tif (!hotAvailableFilesMap[chunkId]) {\n/******/ \t\t\thotWaitingFilesMap[chunkId] = true;\n/******/ \t\t} else {\n/******/ \t\t\thotRequestedFilesMap[chunkId] = true;\n/******/ \t\t\thotWaitingFiles++;\n/******/ \t\t\thotDownloadUpdateChunk(chunkId);\n/******/ \t\t}\n/******/ \t}\n/******/\n/******/ \tfunction hotUpdateDownloaded() {\n/******/ \t\thotSetStatus(\"ready\");\n/******/ \t\tvar deferred = hotDeferred;\n/******/ \t\thotDeferred = null;\n/******/ \t\tif (!deferred) return;\n/******/ \t\tif (hotApplyOnUpdate) {\n/******/ \t\t\t// Wrap deferred object in Promise to mark it as a well-handled Promise to\n/******/ \t\t\t// avoid triggering uncaught exception warning in Chrome.\n/******/ \t\t\t// See https://bugs.chromium.org/p/chromium/issues/detail?id=465666\n/******/ \t\t\tPromise.resolve()\n/******/ \t\t\t\t.then(function() {\n/******/ \t\t\t\t\treturn hotApply(hotApplyOnUpdate);\n/******/ \t\t\t\t})\n/******/ \t\t\t\t.then(\n/******/ \t\t\t\t\tfunction(result) {\n/******/ \t\t\t\t\t\tdeferred.resolve(result);\n/******/ \t\t\t\t\t},\n/******/ \t\t\t\t\tfunction(err) {\n/******/ \t\t\t\t\t\tdeferred.reject(err);\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t);\n/******/ \t\t} else {\n/******/ \t\t\tvar outdatedModules = [];\n/******/ \t\t\tfor (var id in hotUpdate) {\n/******/ \t\t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n/******/ \t\t\t\t\toutdatedModules.push(toModuleId(id));\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t\tdeferred.resolve(outdatedModules);\n/******/ \t\t}\n/******/ \t}\n/******/\n/******/ \tfunction hotApply(options) {\n/******/ \t\tif (hotStatus !== \"ready\")\n/******/ \t\t\tthrow new Error(\"apply() is only allowed in ready status\");\n/******/ \t\toptions = options || {};\n/******/\n/******/ \t\tvar cb;\n/******/ \t\tvar i;\n/******/ \t\tvar j;\n/******/ \t\tvar module;\n/******/ \t\tvar moduleId;\n/******/\n/******/ \t\tfunction getAffectedStuff(updateModuleId) {\n/******/ \t\t\tvar outdatedModules = [updateModuleId];\n/******/ \t\t\tvar outdatedDependencies = {};\n/******/\n/******/ \t\t\tvar queue = outdatedModules.map(function(id) {\n/******/ \t\t\t\treturn {\n/******/ \t\t\t\t\tchain: [id],\n/******/ \t\t\t\t\tid: id\n/******/ \t\t\t\t};\n/******/ \t\t\t});\n/******/ \t\t\twhile (queue.length > 0) {\n/******/ \t\t\t\tvar queueItem = queue.pop();\n/******/ \t\t\t\tvar moduleId = queueItem.id;\n/******/ \t\t\t\tvar chain = queueItem.chain;\n/******/ \t\t\t\tmodule = installedModules[moduleId];\n/******/ \t\t\t\tif (!module || module.hot._selfAccepted) continue;\n/******/ \t\t\t\tif (module.hot._selfDeclined) {\n/******/ \t\t\t\t\treturn {\n/******/ \t\t\t\t\t\ttype: \"self-declined\",\n/******/ \t\t\t\t\t\tchain: chain,\n/******/ \t\t\t\t\t\tmoduleId: moduleId\n/******/ \t\t\t\t\t};\n/******/ \t\t\t\t}\n/******/ \t\t\t\tif (module.hot._main) {\n/******/ \t\t\t\t\treturn {\n/******/ \t\t\t\t\t\ttype: \"unaccepted\",\n/******/ \t\t\t\t\t\tchain: chain,\n/******/ \t\t\t\t\t\tmoduleId: moduleId\n/******/ \t\t\t\t\t};\n/******/ \t\t\t\t}\n/******/ \t\t\t\tfor (var i = 0; i < module.parents.length; i++) {\n/******/ \t\t\t\t\tvar parentId = module.parents[i];\n/******/ \t\t\t\t\tvar parent = installedModules[parentId];\n/******/ \t\t\t\t\tif (!parent) continue;\n/******/ \t\t\t\t\tif (parent.hot._declinedDependencies[moduleId]) {\n/******/ \t\t\t\t\t\treturn {\n/******/ \t\t\t\t\t\t\ttype: \"declined\",\n/******/ \t\t\t\t\t\t\tchain: chain.concat([parentId]),\n/******/ \t\t\t\t\t\t\tmoduleId: moduleId,\n/******/ \t\t\t\t\t\t\tparentId: parentId\n/******/ \t\t\t\t\t\t};\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tif (outdatedModules.indexOf(parentId) !== -1) continue;\n/******/ \t\t\t\t\tif (parent.hot._acceptedDependencies[moduleId]) {\n/******/ \t\t\t\t\t\tif (!outdatedDependencies[parentId])\n/******/ \t\t\t\t\t\t\toutdatedDependencies[parentId] = [];\n/******/ \t\t\t\t\t\taddAllToSet(outdatedDependencies[parentId], [moduleId]);\n/******/ \t\t\t\t\t\tcontinue;\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tdelete outdatedDependencies[parentId];\n/******/ \t\t\t\t\toutdatedModules.push(parentId);\n/******/ \t\t\t\t\tqueue.push({\n/******/ \t\t\t\t\t\tchain: chain.concat([parentId]),\n/******/ \t\t\t\t\t\tid: parentId\n/******/ \t\t\t\t\t});\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/\n/******/ \t\t\treturn {\n/******/ \t\t\t\ttype: \"accepted\",\n/******/ \t\t\t\tmoduleId: updateModuleId,\n/******/ \t\t\t\toutdatedModules: outdatedModules,\n/******/ \t\t\t\toutdatedDependencies: outdatedDependencies\n/******/ \t\t\t};\n/******/ \t\t}\n/******/\n/******/ \t\tfunction addAllToSet(a, b) {\n/******/ \t\t\tfor (var i = 0; i < b.length; i++) {\n/******/ \t\t\t\tvar item = b[i];\n/******/ \t\t\t\tif (a.indexOf(item) === -1) a.push(item);\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// at begin all updates modules are outdated\n/******/ \t\t// the \"outdated\" status can propagate to parents if they don't accept the children\n/******/ \t\tvar outdatedDependencies = {};\n/******/ \t\tvar outdatedModules = [];\n/******/ \t\tvar appliedUpdate = {};\n/******/\n/******/ \t\tvar warnUnexpectedRequire = function warnUnexpectedRequire() {\n/******/ \t\t\tconsole.warn(\n/******/ \t\t\t\t\"[HMR] unexpected require(\" + result.moduleId + \") to disposed module\"\n/******/ \t\t\t);\n/******/ \t\t};\n/******/\n/******/ \t\tfor (var id in hotUpdate) {\n/******/ \t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n/******/ \t\t\t\tmoduleId = toModuleId(id);\n/******/ \t\t\t\t/** @type {TODO} */\n/******/ \t\t\t\tvar result;\n/******/ \t\t\t\tif (hotUpdate[id]) {\n/******/ \t\t\t\t\tresult = getAffectedStuff(moduleId);\n/******/ \t\t\t\t} else {\n/******/ \t\t\t\t\tresult = {\n/******/ \t\t\t\t\t\ttype: \"disposed\",\n/******/ \t\t\t\t\t\tmoduleId: id\n/******/ \t\t\t\t\t};\n/******/ \t\t\t\t}\n/******/ \t\t\t\t/** @type {Error|false} */\n/******/ \t\t\t\tvar abortError = false;\n/******/ \t\t\t\tvar doApply = false;\n/******/ \t\t\t\tvar doDispose = false;\n/******/ \t\t\t\tvar chainInfo = \"\";\n/******/ \t\t\t\tif (result.chain) {\n/******/ \t\t\t\t\tchainInfo = \"\\nUpdate propagation: \" + result.chain.join(\" -> \");\n/******/ \t\t\t\t}\n/******/ \t\t\t\tswitch (result.type) {\n/******/ \t\t\t\t\tcase \"self-declined\":\n/******/ \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n/******/ \t\t\t\t\t\tif (!options.ignoreDeclined)\n/******/ \t\t\t\t\t\t\tabortError = new Error(\n/******/ \t\t\t\t\t\t\t\t\"Aborted because of self decline: \" +\n/******/ \t\t\t\t\t\t\t\t\tresult.moduleId +\n/******/ \t\t\t\t\t\t\t\t\tchainInfo\n/******/ \t\t\t\t\t\t\t);\n/******/ \t\t\t\t\t\tbreak;\n/******/ \t\t\t\t\tcase \"declined\":\n/******/ \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n/******/ \t\t\t\t\t\tif (!options.ignoreDeclined)\n/******/ \t\t\t\t\t\t\tabortError = new Error(\n/******/ \t\t\t\t\t\t\t\t\"Aborted because of declined dependency: \" +\n/******/ \t\t\t\t\t\t\t\t\tresult.moduleId +\n/******/ \t\t\t\t\t\t\t\t\t\" in \" +\n/******/ \t\t\t\t\t\t\t\t\tresult.parentId +\n/******/ \t\t\t\t\t\t\t\t\tchainInfo\n/******/ \t\t\t\t\t\t\t);\n/******/ \t\t\t\t\t\tbreak;\n/******/ \t\t\t\t\tcase \"unaccepted\":\n/******/ \t\t\t\t\t\tif (options.onUnaccepted) options.onUnaccepted(result);\n/******/ \t\t\t\t\t\tif (!options.ignoreUnaccepted)\n/******/ \t\t\t\t\t\t\tabortError = new Error(\n/******/ \t\t\t\t\t\t\t\t\"Aborted because \" + moduleId + \" is not accepted\" + chainInfo\n/******/ \t\t\t\t\t\t\t);\n/******/ \t\t\t\t\t\tbreak;\n/******/ \t\t\t\t\tcase \"accepted\":\n/******/ \t\t\t\t\t\tif (options.onAccepted) options.onAccepted(result);\n/******/ \t\t\t\t\t\tdoApply = true;\n/******/ \t\t\t\t\t\tbreak;\n/******/ \t\t\t\t\tcase \"disposed\":\n/******/ \t\t\t\t\t\tif (options.onDisposed) options.onDisposed(result);\n/******/ \t\t\t\t\t\tdoDispose = true;\n/******/ \t\t\t\t\t\tbreak;\n/******/ \t\t\t\t\tdefault:\n/******/ \t\t\t\t\t\tthrow new Error(\"Unexception type \" + result.type);\n/******/ \t\t\t\t}\n/******/ \t\t\t\tif (abortError) {\n/******/ \t\t\t\t\thotSetStatus(\"abort\");\n/******/ \t\t\t\t\treturn Promise.reject(abortError);\n/******/ \t\t\t\t}\n/******/ \t\t\t\tif (doApply) {\n/******/ \t\t\t\t\tappliedUpdate[moduleId] = hotUpdate[moduleId];\n/******/ \t\t\t\t\taddAllToSet(outdatedModules, result.outdatedModules);\n/******/ \t\t\t\t\tfor (moduleId in result.outdatedDependencies) {\n/******/ \t\t\t\t\t\tif (\n/******/ \t\t\t\t\t\t\tObject.prototype.hasOwnProperty.call(\n/******/ \t\t\t\t\t\t\t\tresult.outdatedDependencies,\n/******/ \t\t\t\t\t\t\t\tmoduleId\n/******/ \t\t\t\t\t\t\t)\n/******/ \t\t\t\t\t\t) {\n/******/ \t\t\t\t\t\t\tif (!outdatedDependencies[moduleId])\n/******/ \t\t\t\t\t\t\t\toutdatedDependencies[moduleId] = [];\n/******/ \t\t\t\t\t\t\taddAllToSet(\n/******/ \t\t\t\t\t\t\t\toutdatedDependencies[moduleId],\n/******/ \t\t\t\t\t\t\t\tresult.outdatedDependencies[moduleId]\n/******/ \t\t\t\t\t\t\t);\n/******/ \t\t\t\t\t\t}\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t}\n/******/ \t\t\t\tif (doDispose) {\n/******/ \t\t\t\t\taddAllToSet(outdatedModules, [result.moduleId]);\n/******/ \t\t\t\t\tappliedUpdate[moduleId] = warnUnexpectedRequire;\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// Store self accepted outdated modules to require them later by the module system\n/******/ \t\tvar outdatedSelfAcceptedModules = [];\n/******/ \t\tfor (i = 0; i < outdatedModules.length; i++) {\n/******/ \t\t\tmoduleId = outdatedModules[i];\n/******/ \t\t\tif (\n/******/ \t\t\t\tinstalledModules[moduleId] &&\n/******/ \t\t\t\tinstalledModules[moduleId].hot._selfAccepted &&\n/******/ \t\t\t\t// removed self-accepted modules should not be required\n/******/ \t\t\t\tappliedUpdate[moduleId] !== warnUnexpectedRequire\n/******/ \t\t\t) {\n/******/ \t\t\t\toutdatedSelfAcceptedModules.push({\n/******/ \t\t\t\t\tmodule: moduleId,\n/******/ \t\t\t\t\terrorHandler: installedModules[moduleId].hot._selfAccepted\n/******/ \t\t\t\t});\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// Now in \"dispose\" phase\n/******/ \t\thotSetStatus(\"dispose\");\n/******/ \t\tObject.keys(hotAvailableFilesMap).forEach(function(chunkId) {\n/******/ \t\t\tif (hotAvailableFilesMap[chunkId] === false) {\n/******/ \t\t\t\thotDisposeChunk(chunkId);\n/******/ \t\t\t}\n/******/ \t\t});\n/******/\n/******/ \t\tvar idx;\n/******/ \t\tvar queue = outdatedModules.slice();\n/******/ \t\twhile (queue.length > 0) {\n/******/ \t\t\tmoduleId = queue.pop();\n/******/ \t\t\tmodule = installedModules[moduleId];\n/******/ \t\t\tif (!module) continue;\n/******/\n/******/ \t\t\tvar data = {};\n/******/\n/******/ \t\t\t// Call dispose handlers\n/******/ \t\t\tvar disposeHandlers = module.hot._disposeHandlers;\n/******/ \t\t\tfor (j = 0; j < disposeHandlers.length; j++) {\n/******/ \t\t\t\tcb = disposeHandlers[j];\n/******/ \t\t\t\tcb(data);\n/******/ \t\t\t}\n/******/ \t\t\thotCurrentModuleData[moduleId] = data;\n/******/\n/******/ \t\t\t// disable module (this disables requires from this module)\n/******/ \t\t\tmodule.hot.active = false;\n/******/\n/******/ \t\t\t// remove module from cache\n/******/ \t\t\tdelete installedModules[moduleId];\n/******/\n/******/ \t\t\t// when disposing there is no need to call dispose handler\n/******/ \t\t\tdelete outdatedDependencies[moduleId];\n/******/\n/******/ \t\t\t// remove \"parents\" references from all children\n/******/ \t\t\tfor (j = 0; j < module.children.length; j++) {\n/******/ \t\t\t\tvar child = installedModules[module.children[j]];\n/******/ \t\t\t\tif (!child) continue;\n/******/ \t\t\t\tidx = child.parents.indexOf(moduleId);\n/******/ \t\t\t\tif (idx >= 0) {\n/******/ \t\t\t\t\tchild.parents.splice(idx, 1);\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// remove outdated dependency from module children\n/******/ \t\tvar dependency;\n/******/ \t\tvar moduleOutdatedDependencies;\n/******/ \t\tfor (moduleId in outdatedDependencies) {\n/******/ \t\t\tif (\n/******/ \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n/******/ \t\t\t) {\n/******/ \t\t\t\tmodule = installedModules[moduleId];\n/******/ \t\t\t\tif (module) {\n/******/ \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n/******/ \t\t\t\t\tfor (j = 0; j < moduleOutdatedDependencies.length; j++) {\n/******/ \t\t\t\t\t\tdependency = moduleOutdatedDependencies[j];\n/******/ \t\t\t\t\t\tidx = module.children.indexOf(dependency);\n/******/ \t\t\t\t\t\tif (idx >= 0) module.children.splice(idx, 1);\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// Now in \"apply\" phase\n/******/ \t\thotSetStatus(\"apply\");\n/******/\n/******/ \t\thotCurrentHash = hotUpdateNewHash;\n/******/\n/******/ \t\t// insert new code\n/******/ \t\tfor (moduleId in appliedUpdate) {\n/******/ \t\t\tif (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) {\n/******/ \t\t\t\tmodules[moduleId] = appliedUpdate[moduleId];\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// call accept handlers\n/******/ \t\tvar error = null;\n/******/ \t\tfor (moduleId in outdatedDependencies) {\n/******/ \t\t\tif (\n/******/ \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n/******/ \t\t\t) {\n/******/ \t\t\t\tmodule = installedModules[moduleId];\n/******/ \t\t\t\tif (module) {\n/******/ \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n/******/ \t\t\t\t\tvar callbacks = [];\n/******/ \t\t\t\t\tfor (i = 0; i < moduleOutdatedDependencies.length; i++) {\n/******/ \t\t\t\t\t\tdependency = moduleOutdatedDependencies[i];\n/******/ \t\t\t\t\t\tcb = module.hot._acceptedDependencies[dependency];\n/******/ \t\t\t\t\t\tif (cb) {\n/******/ \t\t\t\t\t\t\tif (callbacks.indexOf(cb) !== -1) continue;\n/******/ \t\t\t\t\t\t\tcallbacks.push(cb);\n/******/ \t\t\t\t\t\t}\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tfor (i = 0; i < callbacks.length; i++) {\n/******/ \t\t\t\t\t\tcb = callbacks[i];\n/******/ \t\t\t\t\t\ttry {\n/******/ \t\t\t\t\t\t\tcb(moduleOutdatedDependencies);\n/******/ \t\t\t\t\t\t} catch (err) {\n/******/ \t\t\t\t\t\t\tif (options.onErrored) {\n/******/ \t\t\t\t\t\t\t\toptions.onErrored({\n/******/ \t\t\t\t\t\t\t\t\ttype: \"accept-errored\",\n/******/ \t\t\t\t\t\t\t\t\tmoduleId: moduleId,\n/******/ \t\t\t\t\t\t\t\t\tdependencyId: moduleOutdatedDependencies[i],\n/******/ \t\t\t\t\t\t\t\t\terror: err\n/******/ \t\t\t\t\t\t\t\t});\n/******/ \t\t\t\t\t\t\t}\n/******/ \t\t\t\t\t\t\tif (!options.ignoreErrored) {\n/******/ \t\t\t\t\t\t\t\tif (!error) error = err;\n/******/ \t\t\t\t\t\t\t}\n/******/ \t\t\t\t\t\t}\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// Load self accepted modules\n/******/ \t\tfor (i = 0; i < outdatedSelfAcceptedModules.length; i++) {\n/******/ \t\t\tvar item = outdatedSelfAcceptedModules[i];\n/******/ \t\t\tmoduleId = item.module;\n/******/ \t\t\thotCurrentParents = [moduleId];\n/******/ \t\t\ttry {\n/******/ \t\t\t\t__webpack_require__(moduleId);\n/******/ \t\t\t} catch (err) {\n/******/ \t\t\t\tif (typeof item.errorHandler === \"function\") {\n/******/ \t\t\t\t\ttry {\n/******/ \t\t\t\t\t\titem.errorHandler(err);\n/******/ \t\t\t\t\t} catch (err2) {\n/******/ \t\t\t\t\t\tif (options.onErrored) {\n/******/ \t\t\t\t\t\t\toptions.onErrored({\n/******/ \t\t\t\t\t\t\t\ttype: \"self-accept-error-handler-errored\",\n/******/ \t\t\t\t\t\t\t\tmoduleId: moduleId,\n/******/ \t\t\t\t\t\t\t\terror: err2,\n/******/ \t\t\t\t\t\t\t\toriginalError: err\n/******/ \t\t\t\t\t\t\t});\n/******/ \t\t\t\t\t\t}\n/******/ \t\t\t\t\t\tif (!options.ignoreErrored) {\n/******/ \t\t\t\t\t\t\tif (!error) error = err2;\n/******/ \t\t\t\t\t\t}\n/******/ \t\t\t\t\t\tif (!error) error = err;\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t} else {\n/******/ \t\t\t\t\tif (options.onErrored) {\n/******/ \t\t\t\t\t\toptions.onErrored({\n/******/ \t\t\t\t\t\t\ttype: \"self-accept-errored\",\n/******/ \t\t\t\t\t\t\tmoduleId: moduleId,\n/******/ \t\t\t\t\t\t\terror: err\n/******/ \t\t\t\t\t\t});\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t\tif (!options.ignoreErrored) {\n/******/ \t\t\t\t\t\tif (!error) error = err;\n/******/ \t\t\t\t\t}\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t}\n/******/\n/******/ \t\t// handle errors in accept handlers and self accepted module load\n/******/ \t\tif (error) {\n/******/ \t\t\thotSetStatus(\"fail\");\n/******/ \t\t\treturn Promise.reject(error);\n/******/ \t\t}\n/******/\n/******/ \t\thotSetStatus(\"idle\");\n/******/ \t\treturn new Promise(function(resolve) {\n/******/ \t\t\tresolve(outdatedModules);\n/******/ \t\t});\n/******/ \t}\n/******/\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {},\n/******/ \t\t\thot: hotCreateModule(moduleId),\n/******/ \t\t\tparents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp),\n/******/ \t\t\tchildren: []\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// __webpack_hash__\n/******/ \t__webpack_require__.h = function() { return hotCurrentHash; };\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn hotCreateRequire(\"../node_modules/babel-loader/lib/index.js!../node_modules/eslint-loader/index.js?!./webWorker/index.worker.js\")(__webpack_require__.s = \"../node_modules/babel-loader/lib/index.js!../node_modules/eslint-loader/index.js?!./webWorker/index.worker.js\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"../codecs/charLS-FixedMemory-browser.js\":\n/*!***********************************************!*\\\n !*** ../codecs/charLS-FixedMemory-browser.js ***!\n \\***********************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n/*! CharLS.js - v2.0.1 - 2016-06-08 | (c) 2016 Chris Hafey | https://github.com/chafey/charls */\n\n// Notes:\n// - Had to patch parsejsfunc\nvar CharLS = function(Module) {\n Module = Module || {};\n\n var Module;if(!Module)Module=(typeof CharLS!==\"undefined\"?CharLS:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window===\"object\";var ENVIRONMENT_IS_WORKER=typeof importScripts===\"function\";var ENVIRONMENT_IS_NODE=typeof process===\"object\"&&typeof require===\"function\"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module[\"print\"])Module[\"print\"]=function print(x){process[\"stdout\"].write(x+\"\\n\")};if(!Module[\"printErr\"])Module[\"printErr\"]=function printErr(x){process[\"stderr\"].write(x+\"\\n\")};var nodeFS=require(\"fs\");var nodePath=require(\"path\");Module[\"read\"]=function read(filename,binary){filename=nodePath[\"normalize\"](filename);var ret=nodeFS[\"readFileSync\"](filename);if(!ret&&filename!=nodePath[\"resolve\"](filename)){filename=path.join(__dirname,\"..\",\"src\",filename);ret=nodeFS[\"readFileSync\"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module[\"load\"]=function load(f){globalEval(read(f))};if(!Module[\"thisProgram\"]){if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}else{Module[\"thisProgram\"]=\"unknown-program\"}}Module[\"arguments\"]=process[\"argv\"].slice(2);if(typeof module!==\"undefined\"){module[\"exports\"]=Module}process[\"on\"](\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else if(ENVIRONMENT_IS_SHELL){if(!Module[\"print\"])Module[\"print\"]=print;if(typeof printErr!=\"undefined\")Module[\"printErr\"]=printErr;if(typeof read!=\"undefined\"){Module[\"read\"]=read}else{Module[\"read\"]=function read(){throw\"no read() available (jsc?)\"}}Module[\"readBinary\"]=function readBinary(f){if(typeof readbuffer===\"function\"){return new Uint8Array(readbuffer(f))}var data=read(f,\"binary\");assert(typeof data===\"object\");return data};if(typeof scriptArgs!=\"undefined\"){Module[\"arguments\"]=scriptArgs}else if(typeof arguments!=\"undefined\"){Module[\"arguments\"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module[\"read\"]=function read(url){var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!=\"undefined\"){Module[\"arguments\"]=arguments}if(typeof console!==\"undefined\"){if(!Module[\"print\"])Module[\"print\"]=function print(x){console.log(x)};if(!Module[\"printErr\"])Module[\"printErr\"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module[\"print\"])Module[\"print\"]=TRY_USE_DUMP&&typeof dump!==\"undefined\"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module[\"load\"]=importScripts}if(typeof Module[\"setWindowTitle\"]===\"undefined\"){Module[\"setWindowTitle\"]=(function(title){document.title=title})}}else{throw\"Unknown runtime environment. Where are we?\"}function globalEval(x){eval.call(null,x)}if(!Module[\"load\"]&&Module[\"read\"]){Module[\"load\"]=function load(f){globalEval(Module[\"read\"](f))}}if(!Module[\"print\"]){Module[\"print\"]=(function(){})}if(!Module[\"printErr\"]){Module[\"printErr\"]=Module[\"print\"]}if(!Module[\"arguments\"]){Module[\"arguments\"]=[]}if(!Module[\"thisProgram\"]){Module[\"thisProgram\"]=\"./this.program\"}Module.print=Module[\"print\"];Module.printErr=Module[\"printErr\"];Module[\"preRun\"]=[];Module[\"postRun\"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return Runtime.QUANTUM_SIZE}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type===\"double\"||type===\"i64\"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type==\"i64\"||type==\"double\"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module[\"dynCall_\"+sig].apply(null,args)}else{return Module[\"dynCall_\"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module[\"Runtime\"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}var globalScope=this;function getCFunc(ident){var func=Module[\"_\"+ident];if(!func){try{func=eval(\"_\"+ident)}catch(e){}}assert(func,\"Cannot call unknown function \"+ident+\" (perhaps LLVM optimizations or closure removed it?)\");return func}var cwrap,ccall;((function(){var JSfuncs={\"stackSave\":(function(){Runtime.stackSave()}),\"stackRestore\":(function(){Runtime.stackRestore()}),\"arrayToC\":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}Module[\"setValue\"]=setValue;function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for setValue: \"+type)}return null}Module[\"getValue\"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module[\"ALLOC_NORMAL\"]=ALLOC_NORMAL;Module[\"ALLOC_STACK\"]=ALLOC_STACK;Module[\"ALLOC_STATIC\"]=ALLOC_STATIC;Module[\"ALLOC_DYNAMIC\"]=ALLOC_DYNAMIC;Module[\"ALLOC_NONE\"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret=\"\";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module[\"UTF8ToString\"](ptr)}Module[\"Pointer_stringify\"]=Pointer_stringify;function AsciiToString(ptr){var str=\"\";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module[\"AsciiToString\"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module[\"stringToAscii\"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module[\"UTF8ArrayToString\"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module[\"UTF8ToString\"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module[\"stringToUTF8Array\"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module[\"stringToUTF8\"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module[\"lengthBytesUTF8\"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str=\"\";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module[\"UTF16ToString\"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module[\"stringToUTF16\"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module[\"lengthBytesUTF16\"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str=\"\";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module[\"UTF32ToString\"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module[\"stringToUTF32\"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}Module[\"lengthBytesUTF32\"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module[\"___cxa_demangle\"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module[\"___cxa_demangle\"](buf,0,0,status);if(getValue(status,\"i32\")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={\"v\":\"void\",\"b\":\"bool\",\"c\":\"char\",\"s\":\"short\",\"i\":\"int\",\"l\":\"long\",\"f\":\"float\",\"d\":\"double\",\"w\":\"wchar_t\",\"a\":\"signed char\",\"h\":\"unsigned char\",\"t\":\"unsigned short\",\"j\":\"unsigned int\",\"m\":\"unsigned long\",\"x\":\"long long\",\"y\":\"unsigned long long\",\"z\":\"...\"};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre=\"\";for(var a=0;a\"}else{ret=name}paramLoop:while(i0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case\"P\":list.push(parse(true,1,true)[0]+\"*\");break;case\"R\":list.push(parse(true,1,true)[0]+\"&\");break;case\"L\":{i++;var end=func.indexOf(\"E\",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case\"A\":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!==\"_\")throw\"?\";i++;list.push(parse(true,1,true)[0]+\" [\"+size+\"]\");break};case\"E\":break paramLoop;default:ret+=\"?\"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]===\"void\")list=[];if(rawList){if(ret){list.push(ret+\"?\")}return list}else{return ret+flushList()}}var parsed=func;try{if(func==\"Object._main\"||func==\"_main\"){return\"main()\"}if(typeof func===\"number\")func=Pointer_stringify(func);if(func[0]!==\"_\")return func;if(func[1]!==\"_\")return func;if(func[2]!==\"Z\")return func;switch(func[3]){case\"n\":return\"operator new()\";case\"d\":return\"operator delete()\"}parsed=parse()}catch(e){parsed+=\"?\"}if(parsed.indexOf(\"?\")>=0&&!hasLibcxxabi){Runtime.warnOnce(\"warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\")}return parsed}function demangleAll(text){return text.replace(/__Z[\\w\\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+\" [\"+y+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module[\"stackTrace\"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module[\"TOTAL_STACK\"]||5242880;var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||4e8;var totalMemory=64*1024;while(totalMemory0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Runtime.dynCall(\"v\",func)}else{Runtime.dynCall(\"vi\",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module[\"addOnPreRun\"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module[\"addOnInit\"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module[\"addOnPreMain\"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module[\"addOnExit\"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module[\"addOnPostRun\"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module[\"intArrayFromString\"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join(\"\")}Module[\"intArrayToString\"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i>0]=chr;i=i+1}}Module[\"writeStringToMemory\"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i>0]=array[i]}}Module[\"writeArrayToMemory\"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module[\"writeAsciiToMemory\"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math[\"imul\"]||Math[\"imul\"](4294967295,5)!==-5)Math[\"imul\"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math[\"imul\"];if(!Math[\"clz32\"])Math[\"clz32\"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math[\"clz32\"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}}Module[\"addRunDependency\"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module[\"removeRunDependency\"]=removeRunDependency;Module[\"preloadedImages\"]={};Module[\"preloadedAudios\"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+59744;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_jpegls_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+35640);allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+39844);allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+42396);allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+52636);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,\"i8\",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module[\"_i64Subtract\"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw\"Assertion failed: \"+Pointer_stringify(condition)+\", at: \"+[filename?Pointer_stringify(filename):\"unknown filename\",line,func?Pointer_stringify(func):\"unknown function\"]+\" at \"+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0){if(info.destructor){Runtime.dynCall(\"vi\",info.destructor,[ptr])}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(ptr));throw ptr}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm[\"setTempRet0\"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm[\"setTempRet0\"](0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module[\"___cxa_is_pointer_type\"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(asm[\"setTempRet0\"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm[\"setTempRet0\"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0};EXCEPTIONS.last=ptr;if(!(\"uncaught_exception\"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr}Module[\"_memset\"]=_memset;var _BDtoILow=true;var _emscripten_resume=true;function ___gxx_personality_v0(){}var _emscripten_landingpad=true;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):\"\"};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={\"%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 rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_1[rule])}var WEEKDAYS=[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"];var MONTHS=[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];function leadingSomething(value,digits,character){var str=typeof value===\"number\"?value.toString():value||\"\";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={\"%a\":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),\"%A\":(function(date){return WEEKDAYS[date.tm_wday]}),\"%b\":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),\"%B\":(function(date){return MONTHS[date.tm_mon]}),\"%C\":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),\"%d\":(function(date){return leadingNulls(date.tm_mday,2)}),\"%e\":(function(date){return leadingSomething(date.tm_mday,2,\" \")}),\"%g\":(function(date){return getWeekBasedYear(date).toString().substring(2)}),\"%G\":(function(date){return getWeekBasedYear(date)}),\"%H\":(function(date){return leadingNulls(date.tm_hour,2)}),\"%I\":(function(date){return leadingNulls(date.tm_hour<13?date.tm_hour:date.tm_hour-12,2)}),\"%j\":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),\"%m\":(function(date){return leadingNulls(date.tm_mon+1,2)}),\"%M\":(function(date){return leadingNulls(date.tm_min,2)}),\"%n\":(function(){return\"\\n\"}),\"%p\":(function(date){if(date.tm_hour>0&&date.tm_hour<13){return\"AM\"}else{return\"PM\"}}),\"%S\":(function(date){return leadingNulls(date.tm_sec,2)}),\"%t\":(function(){return\"\\t\"}),\"%u\":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),\"%U\":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?\"01\":\"00\"}),\"%V\":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return\"53\"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return\"01\"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?\"+\":\"-\")+String(\"0000\"+off).slice(-4)}),\"%Z\":(function(date){return date.tm_zone}),\"%%\":(function(){return\"%\"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module[\"abort\"]()}function _free(){}Module[\"_free\"]=_free;function ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown){___cxa_end_catch.rethrown=false;return}asm[\"setThrew\"](0);var ptr=EXCEPTIONS.caught.pop();if(ptr){EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));EXCEPTIONS.last=0}}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Runtime.dynCall(\"v\",func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function ___setErrNo(value){if(Module[\"___errno_location\"])HEAP32[Module[\"___errno_location\"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator===\"object\")return navigator[\"hardwareConcurrency\"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _fabs=Math_abs;var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method=\"timeout\"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method=\"rAF\"}else if(mode==2){if(!window[\"setImmediate\"]){var setImmediates=[];var emscriptenMainLoopMessageId=\"__emcc\";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener(\"message\",Browser_setImmediate_messageHandler,true);window[\"setImmediate\"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,\"*\")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window[\"setImmediate\"](Browser.mainLoop.runner)};Browser.mainLoop.method=\"immediate\"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module[\"noExitRuntime\"]=true;assert(!Browser.mainLoop.func,\"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.\");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker \"'+blocker.name+'\" took '+(Date.now()-start)+\" ms\");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method===\"timeout\"&&Module.ctx){Module.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!\");Browser.mainLoop.method=\"\"}Browser.mainLoop.runIter((function(){if(typeof arg!==\"undefined\"){Runtime.dynCall(\"vi\",func,[arg])}else{Runtime.dynCall(\"v\",func)}}));if(thisMainLoopId0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw\"SimulateInfiniteLoop\"}}var Browser={mainLoop:{scheduler:null,method:\"\",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module[\"setStatus\"]){var message=Module[\"statusMessage\"]||\"Please wait...\";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src=\"data:audio/x-\"+name.substr(-3)+\";base64,\"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module[\"preloadPlugins\"].push(audioPlugin);var canvas=Module[\"canvas\"];function pointerLockChange(){Browser.pointerLock=document[\"pointerLockElement\"]===canvas||document[\"mozPointerLockElement\"]===canvas||document[\"webkitPointerLockElement\"]===canvas||document[\"msPointerLockElement\"]===canvas}if(canvas){canvas.requestPointerLock=canvas[\"requestPointerLock\"]||canvas[\"mozRequestPointerLock\"]||canvas[\"webkitRequestPointerLock\"]||canvas[\"msRequestPointerLock\"]||(function(){});canvas.exitPointerLock=document[\"exitPointerLock\"]||document[\"mozExitPointerLock\"]||document[\"webkitExitPointerLock\"]||document[\"msExitPointerLock\"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener(\"pointerlockchange\",pointerLockChange,false);document.addEventListener(\"mozpointerlockchange\",pointerLockChange,false);document.addEventListener(\"webkitpointerlockchange\",pointerLockChange,false);document.addEventListener(\"mspointerlockchange\",pointerLockChange,false);if(Module[\"elementPointerLock\"]){canvas.addEventListener(\"click\",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor=\"black\"}else{ctx=canvas.getContext(\"2d\")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx===\"undefined\",\"cannot set in module if GLctx is used, but we are a non-GL context that would replace it\");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer===\"undefined\")Browser.lockPointer=true;if(typeof Browser.resizeCanvas===\"undefined\")Browser.resizeCanvas=false;if(typeof Browser.vrDevice===\"undefined\")Browser.vrDevice=null;var canvas=Module[\"canvas\"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document[\"webkitFullScreenElement\"]||document[\"webkitFullscreenElement\"]||document[\"mozFullScreenElement\"]||document[\"mozFullscreenElement\"]||document[\"fullScreenElement\"]||document[\"fullscreenElement\"]||document[\"msFullScreenElement\"]||document[\"msFullscreenElement\"]||document[\"webkitCurrentFullScreenElement\"])===canvasContainer){canvas.cancelFullScreen=document[\"cancelFullScreen\"]||document[\"mozCancelFullScreen\"]||document[\"webkitCancelFullScreen\"]||document[\"msExitFullscreen\"]||document[\"exitFullscreen\"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module[\"onFullScreen\"])Module[\"onFullScreen\"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener(\"fullscreenchange\",fullScreenChange,false);document.addEventListener(\"mozfullscreenchange\",fullScreenChange,false);document.addEventListener(\"webkitfullscreenchange\",fullScreenChange,false);document.addEventListener(\"MSFullscreenChange\",fullScreenChange,false)}var canvasContainer=document.createElement(\"div\");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer[\"requestFullScreen\"]||canvasContainer[\"mozRequestFullScreen\"]||canvasContainer[\"msRequestFullscreen\"]||(canvasContainer[\"webkitRequestFullScreen\"]?(function(){canvasContainer[\"webkitRequestFullScreen\"](Element[\"ALLOW_KEYBOARD_INPUT\"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window===\"undefined\"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window[\"requestAnimationFrame\"]||window[\"mozRequestAnimationFrame\"]||window[\"webkitRequestAnimationFrame\"]||window[\"msRequestAnimationFrame\"]||window[\"oRequestAnimationFrame\"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module[\"noExitRuntime\"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module[\"noExitRuntime\"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{\"jpg\":\"image/jpeg\",\"jpeg\":\"image/jpeg\",\"png\":\"image/png\",\"bmp\":\"image/bmp\",\"ogg\":\"audio/ogg\",\"wav\":\"audio/wav\",\"mp3\":\"audio/mpeg\"}[name.substr(name.lastIndexOf(\".\")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator[\"getUserMedia\"]||navigator[\"mozGetUserMedia\"]}window.getUserMedia(func)}),getMovementX:(function(event){return event[\"movementX\"]||event[\"mozMovementX\"]||event[\"webkitMovementX\"]||0}),getMovementY:(function(event){return event[\"movementY\"]||event[\"mozMovementY\"]||event[\"webkitMovementY\"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case\"DOMMouseScroll\":delta=event.detail;break;case\"mousewheel\":delta=event.wheelDelta;break;case\"wheel\":delta=event[\"deltaY\"];break;default:throw\"unrecognized mouse wheel event: \"+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!=\"mousemove\"&&\"mozMovementX\"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!=\"undefined\"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module[\"canvas\"].getBoundingClientRect();var cw=Module[\"canvas\"].width;var ch=Module[\"canvas\"].height;var scrollX=typeof window.scrollX!==\"undefined\"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!==\"undefined\"?window.scrollY:window.pageYOffset;if(event.type===\"touchstart\"||event.type===\"touchend\"||event.type===\"touchmove\"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type===\"touchstart\"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type===\"touchend\"||event.type===\"touchmove\"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,true);xhr.responseType=\"arraybuffer\";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file \"'+url+'\" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency(\"al \"+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file \"'+url+'\" failed.'}}));if(!noRunDep)addRunDependency(\"al \"+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module[\"canvas\"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module[\"canvas\"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module[\"forcedAspectRatio\"]&&Module[\"forcedAspectRatio\"]>0){if(w/h>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module[\"_i64Add\"]=_i64Add;Module[\"_bitshift64Lshr\"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw\"Pure virtual function called!\"}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall(\"vi\",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(variable){if(!HEAP8[variable>>0]){HEAP8[variable>>0]=1;return 1}return 0}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,\"cannot pop if something else added meanwhile!\");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _llvm_eh_typeid_for(type){return type}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module[\"_memcpy\"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _pthread_mutex_lock(){}var _emscripten_postinvoke=true;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort(\"cannot dynamically allocate, sbrk now has control\")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module[\"_bitshift64Shl\"]=_bitshift64Shl;function ___cxa_guard_abort(){}Module[\"_memmove\"]=_memmove;var _emscripten_preinvoke=true;var _BItoD=true;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=true;var ptr=EXCEPTIONS.caught.pop();EXCEPTIONS.last=ptr;throw ptr}function _pthread_mutex_unlock(){}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function $b(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function ac(a){a=a|0;D=a}function bc(){return D|0}function cc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+128|0;p=w+44|0;s=w+8|0;l=w+4|0;n=w;q=e+4|0;r=e+8|0;o=0;Aa(35,c[e>>2]|0,c[q>>2]|0,c[r>>2]|0,f|0);m=o;o=0;if(!(m&1)){j=p;h=j+84|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(h|0));f=p+12|0;if((c[f>>2]|0)==0?(k=$(((c[p+8>>2]|0)+7|0)/8|0,c[p>>2]|0)|0,c[f>>2]=k,(c[p+24>>2]|0)!=0):0)c[f>>2]=$(c[p+16>>2]|0,k)|0;o=0;ha(176,s|0);m=o;o=0;if(!(m&1)){f=p+56|0;do if(c[f>>2]|0){o=0;f=ka(66,f|0)|0;m=o;o=0;if(!(m&1)){c[l>>2]=f;h=s+28|0;j=c[h>>2]|0;if(j>>>0<(c[s+32>>2]|0)>>>0){c[j>>2]=f;c[h>>2]=j+4;c[l>>2]=0;t=19;break}o=0;ia(57,s+24|0,l|0);m=o;o=0;if(m&1){h=Na(824,0)|0;f=D;j=c[l>>2]|0;c[l>>2]=0;if(!j)break;Bb[c[(c[j>>2]|0)+4>>2]&255](j);break}else{f=c[l>>2]|0;c[l>>2]=0;if(!f){t=19;break}Bb[c[(c[f>>2]|0)+4>>2]&255](f);t=19;break}}else t=15}else t=19;while(0);a:do if((t|0)==19){j=p+4|0;k=p+8|0;l=p+16|0;o=0;f=va(14,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;m=o;o=0;if(!(m&1)){c[n>>2]=f;m=s+28|0;h=c[m>>2]|0;do if(h>>>0>=(c[s+32>>2]|0)>>>0){o=0;ia(57,s+24|0,n|0);h=o;o=0;if(h&1){h=Na(824,0)|0;f=D;j=c[n>>2]|0;c[n>>2]=0;if(!j)break a;Bb[c[(c[j>>2]|0)+4>>2]&255](j);break a}else{f=c[n>>2]|0;c[n>>2]=0;if(!f)break;Bb[c[(c[f>>2]|0)+4>>2]&255](f);break}}else{c[h>>2]=f;c[m>>2]=h+4;c[n>>2]=0}while(0);f=c[p+28>>2]|0;if((f|0)!=0?(o=0,ia(58,s|0,f|0),t=o,o=0,t&1):0){t=15;break}b:do if(!(c[p+24>>2]|0)){f=$(c[j>>2]|0,c[p>>2]|0)|0;f=$(f,((c[k>>2]|0)+7|0)/8|0)|0;if((c[l>>2]|0)>0){j=0;while(1){o=0;wa(4,s|0,e|0,p|0);t=o;o=0;if(t&1)break;h=c[q>>2]|0;if(h){c[q>>2]=h+f;c[r>>2]=(c[r>>2]|0)-f}j=j+1|0;if((j|0)>=(c[l>>2]|0))break b}h=Na(824,0)|0;f=D;t=16;break a}}else{o=0;wa(4,s|0,e|0,p|0);t=o;o=0;if(t&1){t=15;break a}}while(0);o=0;ra(33,s|0,b|0)|0;t=o;o=0;if(!(t&1)){c[d>>2]=c[s+16>>2];if(g)a[g>>0]=0;j=s+24|0;f=c[j>>2]|0;if(f){h=c[m>>2]|0;if((h|0)!=(f|0)){do{g=h+-4|0;c[m>>2]=g;h=c[g>>2]|0;c[g>>2]=0;if(h)Bb[c[(c[h>>2]|0)+4>>2]&255](h);h=c[m>>2]|0}while((h|0)!=(f|0));f=c[j>>2]|0}cj(f)}g=0;i=w;return g|0}else t=15}else t=15}while(0);if((t|0)==15){h=Na(824,0)|0;f=D;t=16}m=s+24|0;j=c[m>>2]|0;if(j){l=s+28|0;k=c[l>>2]|0;if((k|0)!=(j|0)){do{s=k+-4|0;c[l>>2]=s;k=c[s>>2]|0;c[s>>2]=0;if(k)Bb[c[(c[k>>2]|0)+4>>2]&255](k);k=c[l>>2]|0}while((k|0)!=(j|0));j=c[m>>2]|0}cj(j)}}else t=5}else t=5;if((t|0)==5){h=Na(824,0)|0;f=D}s=(f|0)==(Ta(824)|0);k=Va(h|0)|0;f=(g|0)==0;if(!s){if(!f)a[g>>0]=0;Xa();g=14;i=w;return g|0}j=k+12|0;do if(!f){f=c[j>>2]|0;o=0;h=ua(1)|0;s=o;o=0;if(!(s&1))if((f|0)==(h|0)){ml(g,Eb[c[(c[k>>2]|0)+8>>2]&127](k)|0)|0;t=60;break}else{a[g>>0]=0;t=60;break}}else t=60;while(0);if((t|0)==60?(u=c[j>>2]|0,o=0,v=ua(1)|0,g=o,o=0,!(g&1)):0){g=(u|0)==(v|0)?c[k+8>>2]|0:13;Xa();i=w;return g|0}f=Na()|0;o=0;xa(3);w=o;o=0;if(w&1){w=Na(0)|0;ec(w)}else Ya(f|0);return 0}function dc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+112|0;g=l+96|0;k=l+84|0;m=l+72|0;n=l+60|0;p=l+48|0;q=l+36|0;r=l+24|0;s=l+12|0;t=l;j=(b|0)==0;if((a|0)==0&j){f=Ma(16)|0;o=0;wa(5,g|0,48504,52);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,g|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(g);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}h=c[e>>2]|0;if((h+-1|0)>>>0>65534){f=Ma(16)|0;o=0;wa(5,k|0,48557,41);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,k|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(k);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}g=c[e+4>>2]|0;if((g+-1|0)>>>0>65534){f=Ma(16)|0;o=0;wa(5,m|0,48599,42);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,m|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(m);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}f=c[e+8>>2]|0;if((f+-2|0)>>>0>14){f=Ma(16)|0;o=0;wa(5,n|0,48642,46);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,n|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(n);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}a=c[e+24>>2]|0;if(a>>>0>=3){f=Ma(16)|0;o=0;wa(5,p|0,48689,65);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,p|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(p);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}b=c[e+16>>2]|0;if((b+-1|0)>>>0>254){f=Ma(16)|0;o=0;wa(5,q|0,48755,44);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,q|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(q);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}if(!j?(q=$(g,h)|0,($($(q,(f|0)>8?2:1)|0,b)|0)>>>0>d>>>0):0){f=Ma(16)|0;o=0;wa(5,r|0,48800,58);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,r|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(r);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}switch(b|0){case 4:{if((a|0)!=2){i=l;return}f=Ma(16)|0;o=0;wa(5,s|0,48859,73);t=o;o=0;if(!(t&1)){o=0;b=ua(1)|0;t=o;o=0;if(!(t&1)?(o=0,Aa(36,f|0,1,b|0,s|0),t=o,o=0,!(t&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(s);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}case 3:{i=l;return}default:{if(!a){i=l;return}f=Ma(16)|0;o=0;wa(5,t|0,48933,73);s=o;o=0;if(!(s&1)){o=0;b=ua(1)|0;s=o;o=0;if(!(s&1)?(o=0,Aa(36,f|0,1,b|0,t|0),s=o,o=0,!(s&1)):0){o=0;wa(6,f|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(t);if(!a){t=b;Ya(t|0)}}else b=Na()|0;La(f|0);t=b;Ya(t|0)}}}function ec(a){a=a|0;Va(a|0)|0;jj()}function fc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;h=n+116|0;j=n;o=0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];ia(59,j|0,h|0);g=o;o=0;if(!(g&1)){if(e){g=j+16|0;d=g+84|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(d|0))}o=0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];ia(60,j|0,h|0);j=o;o=0;if(!(j&1)){if(f)a[f>>0]=0;m=0;i=n;return m|0}}b=Na(824,0)|0;j=D;j=(j|0)==(Ta(824)|0);b=Va(b|0)|0;d=(f|0)==0;if(!j){if(!d)a[f>>0]=0;Xa();m=14;i=n;return m|0}g=b+12|0;do if(!d){d=c[g>>2]|0;o=0;e=ua(1)|0;j=o;o=0;if(!(j&1))if((d|0)==(e|0)){ml(f,Eb[c[(c[b>>2]|0)+8>>2]&127](b)|0)|0;m=10;break}else{a[f>>0]=0;m=10;break}}else m=10;while(0);if((m|0)==10?(k=c[g>>2]|0,o=0,l=ua(1)|0,m=o,o=0,!(m&1)):0){m=(k|0)==(l|0)?c[b+8>>2]|0:13;Xa();i=n;return m|0}d=Na()|0;o=0;xa(3);n=o;o=0;if(n&1){n=Na(0)|0;ec(n)}else Ya(d|0);return 0}function gc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+128|0;g=l+116|0;f=l;o=0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];ia(59,f|0,g|0);g=o;o=0;if((!(g&1)?(o=0,ha(177,f|0),g=o,o=0,!(g&1)):0)?(o=0,ia(61,f|0,1),g=o,o=0,!(g&1)):0){b=f+16|0;f=d+84|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(f|0));if(e)a[e>>0]=0;e=0;i=l;return e|0}g=Na(824,0)|0;d=D;d=(d|0)==(Ta(824)|0);g=Va(g|0)|0;b=(e|0)==0;if(!d){if(!b)a[e>>0]=0;Xa();e=14;i=l;return e|0}d=g+12|0;do if(!b){b=c[d>>2]|0;o=0;f=ua(1)|0;m=o;o=0;if(!(m&1))if((b|0)==(f|0)){ml(e,Eb[c[(c[g>>2]|0)+8>>2]&127](g)|0)|0;k=13;break}else{a[e>>0]=0;k=13;break}}else k=13;while(0);if((k|0)==13?(h=c[d>>2]|0,o=0,j=ua(1)|0,m=o,o=0,!(m&1)):0){m=(h|0)==(j|0)?c[g+8>>2]|0:13;Xa();i=l;return m|0}b=Na()|0;o=0;xa(3);m=o;o=0;if(m&1){m=Na(0)|0;ec(m)}else Ya(b|0);return 0}function hc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;k=n+36|0;j=n+24|0;l=n+12|0;m=n;if(!((a|0)!=0&(d|0)!=0&(e|0)!=0&(g|0)!=0)){f=1;i=n;return f|0}c[l>>2]=0;c[l+4>>2]=a;c[l+8>>2]=b;c[m>>2]=0;c[m+4>>2]=e;c[m+8>>2]=f;c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];f=cc(j,d,k,g,h)|0;i=n;return f|0}function ic(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+12|0;h=f;j=h;c[j>>2]=0;c[j+4>>2]=0;c[h+4>>2]=a;c[h+8>>2]=b;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];d=gc(g,d,e)|0;i=f;return d|0}function jc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+48|0;j=h+36|0;k=h+24|0;m=h+12|0;l=h;c[m>>2]=0;c[m+4>>2]=a;c[m+8>>2]=b;c[l>>2]=0;c[l+4>>2]=d;c[l+8>>2]=e;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];e=fc(k,j,f,g)|0;i=h;return e|0}function kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;d=c[a>>2]|0;f=((c[k>>2]|0)-d>>2)+1|0;if(f>>>0>1073741823){$i(a);d=c[a>>2]|0}l=a+8|0;e=(c[l>>2]|0)-d|0;if(e>>2>>>0<536870911){e=e>>1;e=e>>>0>>0?f:e;d=(c[k>>2]|0)-d>>2;if(!e){g=0;h=0}else i=6}else{e=1073741823;d=(c[k>>2]|0)-d>>2;i=6}if((i|0)==6){g=e;h=bj(e<<2)|0}f=h+(d<<2)|0;e=f;j=h+(g<<2)|0;i=c[b>>2]|0;c[b>>2]=0;c[f>>2]=i;i=h+(d+1<<2)|0;h=c[a>>2]|0;d=c[k>>2]|0;if((d|0)==(h|0)){f=a;g=k}else{do{d=d+-4|0;b=c[d>>2]|0;c[d>>2]=0;c[f+-4>>2]=b;f=e+-4|0;e=f}while((d|0)!=(h|0));d=e;f=a;g=k;e=d;h=c[a>>2]|0;d=c[k>>2]|0}c[f>>2]=e;c[g>>2]=i;c[l>>2]=j;f=h;if((d|0)!=(f|0))do{d=d+-4|0;e=c[d>>2]|0;c[d>>2]=0;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e)}while((d|0)!=(f|0));if(!h)return;cj(h);return}function lc(){if(a[8]|0)return 35648;if(!(Ha(8)|0))return 35648;kb(72,35648,n|0)|0;Pa(8);return 35648}function mc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n;Ei(l,(1<>2]|0;m=h+1|0;e=m<<1;c[b>>2]=0;j=b+4|0;c[j>>2]=0;c[b+8>>2]=0;a:do if(m){if(!((h|0)<-1?(o=0,ha(178,b|0),k=o,o=0,k&1):0))f=4;if((f|0)==4?(o=0,g=ka(67,e|0)|0,k=o,o=0,!(k&1)):0){c[j>>2]=g;c[b>>2]=g;c[b+8>>2]=g+e;d=g;while(1){a[d>>0]=0;d=(c[j>>2]|0)+1|0;c[j>>2]=d;e=e+-1|0;if(!e)break a}}e=Na()|0;d=c[b>>2]|0;if(!d)Ya(e|0);if((c[j>>2]|0)!=(d|0))c[j>>2]=d;cj(d);Ya(e|0)}while(0);d=~h;if((h|0)<(d|0)){i=n;return}j=l+12|0;k=l+8|0;h=l+4|0;g=d;do{d=c[j>>2]|0;if((g|0)>(0-d|0)){e=c[k>>2]|0;if((g|0)>(0-e|0)){f=c[h>>2]|0;if((g|0)>(0-f|0))if((g|0)>=0)if((g|0)>0)if((f|0)<=(g|0))if((e|0)>(g|0))d=2;else d=(d|0)>(g|0)?3:4;else d=1;else d=0;else d=-1;else d=-2}else d=-3}else d=-4;a[(c[b>>2]|0)+(g+m)>>0]=d;g=g+1|0}while((g|0)<(m|0));i=n;return}function nc(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=c[f+16>>2]|0;switch(q|0){case 64:case 0:{o=0;d=ra(34,d|0,e|0)|0;e=o;o=0;if(e&1)r=16;else g=d;break}default:{h=(1<>2])+-1|0;p=c[e+20>>2]|0;n=p<<1;n=((n+h|0)/(n|1|0)|0)+1|0;d=0;while(1)if((1<>2]|0;o=0;g=ka(67,4624)|0;m=o;o=0;if(m&1)r=16;else{i=((j|0)<8?8:j)+j<<1;k=g+4|0;l=e;m=k+84|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));k=g+88|0;m=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));c[g>>2]=35660;c[g+128>>2]=h;c[g+132>>2]=n;c[g+136>>2]=p;c[g+140>>2]=d;c[g+144>>2]=j;c[g+148>>2]=i;c[g+152>>2]=q;d=g+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+172>>2]=c[e>>2];c[g+176>>2]=0;c[g+180>>2]=0;c[g+184>>2]=0;d=g+4568|0;h=g+188|0;do{c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;b[h+10>>1]=1;h=h+12|0}while((h|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1}}}if((r|0)==16){r=Na()|0;Ya(r|0)}if(!g)return g|0;o=0;ia(c[(c[g>>2]|0)+12>>2]|0,g|0,f|0);r=o;o=0;if(!(r&1))return g|0;d=Na()|0;if(!g){r=d;Ya(r|0)}Bb[c[(c[g>>2]|0)+4>>2]&255](g);r=d;Ya(r|0);return 0}function oc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=(c[e+24>>2]|0)==2;if(f?(c[e+16>>2]|0)!=3:0){e=0;return e|0}n=c[e+20>>2]|0;d=c[e+8>>2]|0;a:do if(!n){if(f){if((d|0)!=8)break;g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35688;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}switch(d|0){case 8:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35716;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}case 12:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35744;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}case 16:{g=bj(4600)|0;j=g+4|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=g+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[g>>2]=35772;d=g+132|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+148>>2]=c[e>>2];c[g+152>>2]=0;c[g+156>>2]=0;c[g+160>>2]=0;d=g+4544|0;f=g+164|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4556|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4568|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+28>>2]|0))c[g+20>>2]=1;e=g;return e|0}default:break a}}while(0);m=(1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35800;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35660;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}}if((d|0)>=17){e=0;return e|0}i=n<<1;i=((i+m|0)/(i|1|0)|0)+1|0;if(f){d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35828;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));j=h+88|0;l=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(l|0));c[h>>2]=35856;c[h+128>>2]=m;c[h+132>>2]=i;c[h+136>>2]=n;c[h+140>>2]=d;c[h+144>>2]=f;c[h+148>>2]=g;c[h+152>>2]=64;d=h+156|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+172>>2]=c[e>>2];c[h+176>>2]=0;c[h+180>>2]=0;c[h+184>>2]=0;d=h+4568|0;f=h+188|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4580|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+28>>2]|0))c[h+20>>2]=1;e=h;return e|0}return 0}function pc(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=c[f+16>>2]|0;switch(q|0){case 64:case 0:{o=0;d=ra(35,d|0,e|0)|0;e=o;o=0;if(e&1)r=16;else g=d;break}default:{h=(1<>2])+-1|0;p=c[e+20>>2]|0;n=p<<1;n=((n+h|0)/(n|1|0)|0)+1|0;d=0;while(1)if((1<>2]|0;o=0;g=ka(67,4632)|0;m=o;o=0;if(m&1)r=16;else{i=((j|0)<8?8:j)+j<<1;c[g+4>>2]=0;k=g+8|0;l=e;m=k+84|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;m=g+116|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[g>>2]=35884;c[g+136>>2]=h;c[g+140>>2]=n;c[g+144>>2]=p;c[g+148>>2]=d;c[g+152>>2]=j;c[g+156>>2]=i;c[g+160>>2]=q;d=g+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+180>>2]=c[e>>2];c[g+184>>2]=0;c[g+188>>2]=0;c[g+192>>2]=0;d=g+4576|0;h=g+196|0;do{c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;b[h+10>>1]=1;h=h+12|0}while((h|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1}}}if((r|0)==16){r=Na()|0;Ya(r|0)}if(!g)return g|0;o=0;ia(c[(c[g>>2]|0)+8>>2]|0,g|0,f|0);r=o;o=0;if(!(r&1))return g|0;d=Na()|0;if(!g){r=d;Ya(r|0)}Bb[c[(c[g>>2]|0)+4>>2]&255](g);r=d;Ya(r|0);return 0}function qc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=(c[e+24>>2]|0)==2;if(f?(c[e+16>>2]|0)!=3:0){e=0;return e|0}n=c[e+20>>2]|0;d=c[e+8>>2]|0;a:do if(!n){if(f){if((d|0)!=8)break;g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35912;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}switch(d|0){case 8:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35940;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}case 12:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35968;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}case 16:{g=bj(4608)|0;c[g+4>>2]=0;j=g+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[g+92>>2]=0;c[g+96>>2]=0;c[g+100>>2]=32;c[g+104>>2]=0;c[g+108>>2]=0;a[g+112>>0]=0;d=g+116|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[g>>2]=35996;d=g+140|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[g+156>>2]=c[e>>2];c[g+160>>2]=0;c[g+164>>2]=0;c[g+168>>2]=0;d=g+4552|0;f=g+172|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=g+4564|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=g+4576|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[g+32>>2]|0))c[g+24>>2]=1;e=g;return e|0}default:break a}}while(0);m=(1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36024;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=35884;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}}if((d|0)>=17){e=0;return e|0}i=n<<1;i=((i+m|0)/(i|1|0)|0)+1|0;if(f){d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36052;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}else{d=0;while(1)if((1<>2]=0;j=h+8|0;k=e;l=j+84|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));c[h+92>>2]=0;c[h+96>>2]=0;c[h+100>>2]=32;c[h+104>>2]=0;c[h+108>>2]=0;a[h+112>>0]=0;l=h+116|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=36080;c[h+136>>2]=m;c[h+140>>2]=i;c[h+144>>2]=n;c[h+148>>2]=d;c[h+152>>2]=f;c[h+156>>2]=g;c[h+160>>2]=64;d=h+164|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[h+180>>2]=c[e>>2];c[h+184>>2]=0;c[h+188>>2]=0;c[h+192>>2]=0;d=h+4576|0;f=h+196|0;do{c[f>>2]=0;c[f+4>>2]=0;b[f+8>>1]=0;b[f+10>>1]=1;f=f+12|0}while((f|0)!=(d|0));c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;a[d+10>>0]=0;e=h+4588|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;a[e+10>>0]=0;e=h+4600|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;a[e+28>>0]=0;if(!(c[h+32>>2]|0))c[h+24>>2]=1;e=h;return e|0}return 0}function rc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;a=2832;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=4880);iw(2832,0,2048)|0;a=0;do{h=2832+(a+128<<3)|0;c[h>>2]=0;c[h+4>>2]=1;a=a+1|0}while((a|0)!=128);a=3088;c[a>>2]=1;c[a+4>>2]=3;a=3096;c[a>>2]=1;c[a+4>>2]=3;a=3104;c[a>>2]=1;c[a+4>>2]=3;a=3112;c[a>>2]=1;c[a+4>>2]=3;a=3120;c[a>>2]=1;c[a+4>>2]=3;a=3128;c[a>>2]=1;c[a+4>>2]=3;a=3136;c[a>>2]=1;c[a+4>>2]=3;a=3144;c[a>>2]=1;c[a+4>>2]=3;a=3152;c[a>>2]=1;c[a+4>>2]=3;a=3160;c[a>>2]=1;c[a+4>>2]=3;a=3168;c[a>>2]=1;c[a+4>>2]=3;a=3176;c[a>>2]=1;c[a+4>>2]=3;a=3184;c[a>>2]=1;c[a+4>>2]=3;a=3192;c[a>>2]=1;c[a+4>>2]=3;a=3200;c[a>>2]=1;c[a+4>>2]=3;a=3208;c[a>>2]=1;c[a+4>>2]=3;a=3216;c[a>>2]=1;c[a+4>>2]=3;a=3224;c[a>>2]=1;c[a+4>>2]=3;a=3232;c[a>>2]=1;c[a+4>>2]=3;a=3240;c[a>>2]=1;c[a+4>>2]=3;a=3248;c[a>>2]=1;c[a+4>>2]=3;a=3256;c[a>>2]=1;c[a+4>>2]=3;a=3264;c[a>>2]=1;c[a+4>>2]=3;a=3272;c[a>>2]=1;c[a+4>>2]=3;a=3280;c[a>>2]=1;c[a+4>>2]=3;a=3288;c[a>>2]=1;c[a+4>>2]=3;a=3296;c[a>>2]=1;c[a+4>>2]=3;a=3304;c[a>>2]=1;c[a+4>>2]=3;a=3312;c[a>>2]=1;c[a+4>>2]=3;a=3320;c[a>>2]=1;c[a+4>>2]=3;a=3328;c[a>>2]=1;c[a+4>>2]=3;a=3336;c[a>>2]=1;c[a+4>>2]=3;a=2896;c[a>>2]=2;c[a+4>>2]=5;a=2904;c[a>>2]=2;c[a+4>>2]=5;a=2912;c[a>>2]=2;c[a+4>>2]=5;a=2920;c[a>>2]=2;c[a+4>>2]=5;a=2928;c[a>>2]=2;c[a+4>>2]=5;a=2936;c[a>>2]=2;c[a+4>>2]=5;a=2944;c[a>>2]=2;c[a+4>>2]=5;a=2952;c[a>>2]=2;c[a+4>>2]=5;a=2848;c[a>>2]=3;c[a+4>>2]=7;a=2856;c[a>>2]=3;c[a+4>>2]=7;a=0;do{h=2832+(a+64<<3)|0;c[h>>2]=-1;c[h+4>>2]=2;a=a+1|0}while((a|0)!=64);a=2960;c[a>>2]=-2;c[a+4>>2]=4;a=2968;c[a>>2]=-2;c[a+4>>2]=4;a=2976;c[a>>2]=-2;c[a+4>>2]=4;a=2984;c[a>>2]=-2;c[a+4>>2]=4;a=2992;c[a>>2]=-2;c[a+4>>2]=4;a=3e3;c[a>>2]=-2;c[a+4>>2]=4;a=3008;c[a>>2]=-2;c[a+4>>2]=4;a=3016;c[a>>2]=-2;c[a+4>>2]=4;a=3024;c[a>>2]=-2;c[a+4>>2]=4;a=3032;c[a>>2]=-2;c[a+4>>2]=4;a=3040;c[a>>2]=-2;c[a+4>>2]=4;a=3048;c[a>>2]=-2;c[a+4>>2]=4;a=3056;c[a>>2]=-2;c[a+4>>2]=4;a=3064;c[a>>2]=-2;c[a+4>>2]=4;a=3072;c[a>>2]=-2;c[a+4>>2]=4;a=3080;c[a>>2]=-2;c[a+4>>2]=4;a=2864;c[a>>2]=-3;c[a+4>>2]=6;a=2872;c[a>>2]=-3;c[a+4>>2]=6;a=2880;c[a>>2]=-3;c[a+4>>2]=6;a=2888;c[a>>2]=-3;c[a+4>>2]=6;a=2840;c[a>>2]=-4;c[a+4>>2]=8;a=4880;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=6928);iw(4880,0,2048)|0;d=2;a=0;f=0;g=0;while(1){d=d<<16>>16;b=8-d|0;e=1<>2]=f;c[h+4>>2]=d;b=b+1|0}while((b|0)<(e|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==7){b=2;f=1;g=-1;h=-1;break}else{d=(a>>1)+2|0;f=b>>16}}while(1){d=b<<16>>16;a=8-d|0;e=1<>2]=g;c[f+4>>2]=d;b=b+1|0}while((b|0)<(e|0))}a=(h<<16)+-65536|0;f=a>>31^a>>15;b=(f>>1)+2|0;if((b|0)>8){a=6928;break}else{g=a>>16;h=h+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=8976);iw(6928,0,2048)|0;f=3;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==12){f=3;b=1;e=-1;g=-1;break}else{f=(a>>2)+3|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>2)+3|0;if((f|0)>8){a=8976;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=11024);iw(8976,0,2048)|0;f=4;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==20){f=4;b=1;e=-1;g=-1;break}else{f=(a>>3)+4|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>3)+4|0;if((f|0)>8){a=11024;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=13072);iw(11024,0,2048)|0;f=5;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==32){f=5;b=1;e=-1;g=-1;break}else{f=(a>>4)+5|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>4)+5|0;if((f|0)>8){a=13072;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=15120);iw(13072,0,2048)|0;f=6;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==48){f=6;b=1;e=-1;g=-1;break}else{f=(a>>5)+6|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>5)+6|0;if((f|0)>8){a=15120;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=17168);iw(15120,0,2048)|0;f=7;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==64){f=7;b=1;e=-1;g=-1;break}else{f=(a>>6)+7|0;e=b>>16}}while(1){a=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}a=(g<<16)+-65536|0;b=a>>31^a>>15;f=(b>>6)+7|0;if((f|0)>8){a=17168;break}else{e=a>>16;g=g+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=19216);iw(17168,0,2048)|0;f=8;a=0;e=0;g=0;while(1){b=8-f|0;d=1<>2]=e;c[h+4>>2]=f;b=b+1|0}while((b|0)<(d|0))}b=(g<<16)+65536|0;a=b>>31^b>>15;g=g+1|0;if((g|0)==64){g=8;e=1;f=-1;h=-1;break}else{f=(a>>7)+8|0;e=b>>16}}while(1){a=8-g|0;d=1<>2]=f;c[e+4>>2]=g;b=b+1|0}while((b|0)<(d|0))}b=(h<<16)+-65536|0;e=b>>31^b>>15;a=e>>7;if((a|0)>0){a=19216;break}else{g=a+8|0;f=b>>16;h=h+-1|0}}do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=21264);iw(19216,0,2048)|0;a=21264;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=23312);iw(21264,0,2048)|0;a=23312;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=25360);iw(23312,0,2048)|0;a=25360;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=27408);iw(25360,0,2048)|0;a=27408;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=29456);iw(27408,0,2048)|0;a=29456;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=31504);iw(29456,0,2048)|0;a=31504;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=33552);iw(31504,0,2048)|0;a=33552;do{c[a>>2]=0;c[a+4>>2]=0;a=a+8|0}while((a|0)!=35600);iw(33552,0,2048)|0;mc(35600,8);kb(179,35600,n|0)|0;mc(35612,10);kb(179,35612,n|0)|0;mc(35624,12);kb(179,35624,n|0)|0;mc(35636,16);kb(179,35636,n|0)|0;return}function sc(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;a=a+4|0;if((c[a>>2]|0)!=(b|0))c[a>>2]=b;cj(b);return}function tc(a){a=a|0;var b=0,d=0;c[a>>2]=36080;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function uc(a){a=a|0;var b=0,d=0;c[a>>2]=36080;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function vc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;he(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function wc(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35856;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Yd(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Yd(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function xc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function yc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36460;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36436;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Ac(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36412;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Bc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0;c[b>>2]=36388;c[b+4>>2]=e;n=b+8|0;h=c[e>>2]|0;l=e+16|0;f=c[l>>2]|0;i=$(f,h)|0;c[n>>2]=0;p=b+12|0;c[p>>2]=0;c[b+16>>2]=0;do if(i){if(!((i|0)<0?(o=0,ha(178,n|0),h=o,o=0,h&1):0))m=4;if((m|0)==4?(j=i<<1,o=0,k=ka(67,j|0)|0,h=o,o=0,!(h&1)):0){c[n>>2]=k;h=k+(i<<1)|0;c[b+16>>2]=h;iw(k|0,0,j|0)|0;c[p>>2]=h;h=c[e>>2]|0;f=c[l>>2]|0;break}i=Na()|0;g=c[n>>2]|0;f=g;if(g){h=c[p>>2]|0;if((h|0)!=(g|0))c[p>>2]=h+(~((h+-2-f|0)>>>1)<<1);cj(g)}p=i;Ya(p|0)}while(0);i=b+20|0;f=$(h<<1,f)|0;c[i>>2]=0;j=b+24|0;c[j>>2]=0;c[b+28>>2]=0;if(!f){p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))m=13;if((m|0)==13?(o=0,g=ka(67,f|0)|0,m=o,o=0,!(m&1)):0){c[j>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[j>>2]|0)+1|0;c[j>>2]=g;f=f+-1|0}while((f|0)!=0);p=b+36|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];return}h=Na()|0;g=c[i>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}g=c[n>>2]|0;if(!g){p=h;Ya(p|0)}f=c[p>>2]|0;if((f|0)!=(g|0))c[p>>2]=f+(~((f+-2-g|0)>>>1)<<1);cj(g);p=h;Ya(p|0)}function Cc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=b+32|0;Jm(i,d)|0;h=b+44|0;c[h>>2]=0;j=b+48|0;g=c[j>>2]|0;if(g&8){d=a[i>>0]|0;if(!(d&1)){d=((d&255)>>>1)+(i+1)|0;c[h>>2]=d;e=i+1|0;f=i+1|0}else{d=(c[b+40>>2]|0)+(c[b+36>>2]|0)|0;c[h>>2]=d;f=c[b+40>>2]|0;e=f}c[b+8>>2]=e;c[b+12>>2]=f;c[b+16>>2]=d}if(!(g&16))return;d=a[i>>0]|0;if(!(d&1)){g=(d&255)>>>1;c[h>>2]=i+1+g;d=10;h=g}else{g=c[b+36>>2]|0;c[h>>2]=(c[b+40>>2]|0)+g;d=(c[i>>2]&-2)+-1|0;h=g}Mm(i,d,0);d=a[i>>0]|0;if(!(d&1)){g=i+1|0;f=(d&255)>>>1;e=i+1|0}else{e=c[b+40>>2]|0;g=e;f=c[b+36>>2]|0}d=b+24|0;c[d>>2]=e;c[b+20>>2]=e;c[b+28>>2]=g+f;if(!(c[j>>2]&3))return;c[d>>2]=e+h;return}function Dc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;j=q+16|0;p=q+8|0;k=q;o=0;ia(65,p|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b}else{do if(a[p>>0]|0){f=c[(c[b>>2]|0)+-12>>2]|0;c[k>>2]=c[b+(f+24)>>2];l=b+f|0;m=c[b+(f+4)>>2]|0;g=d+e|0;f=b+(f+76)|0;e=c[f>>2]|0;do if((e|0)==-1){o=0;e=ka(68,l|0)|0;r=o;o=0;if(r&1)n=13;else{c[j>>2]=e;o=0;e=ra(37,j|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(j);e=h<<24>>24;c[f>>2]=e;n=9;break}e=Na(0)|0;Gs(j)}}else n=9;while(0);if((n|0)==9){o=0;c[j>>2]=c[k>>2];e=ja(39,j|0,d|0,((m&176|0)==32?g:d)|0,g|0,l|0,e&255|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break;else n=13}else n=13}if((n|0)==13)e=Na(0)|0;ho(p);f=b;g=b;break a}while(0);ho(p);i=q;return b|0}while(0);Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();i=q;return b|0}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0);return 0}function Ec(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[d+48>>2]|0;if(e&16){e=d+44|0;f=c[e>>2]|0;g=c[d+24>>2]|0;if(f>>>0>>0)c[e>>2]=g;else g=f;f=c[d+20>>2]|0;h=g-f|0;if(h>>>0>4294967279)_i(b);if(h>>>0<11){a[b>>0]=h<<1;e=b+1|0}else{d=h+16&-16;e=bj(d)|0;c[b+8>>2]=e;c[b>>2]=d|1;c[b+4>>2]=h}if((f|0)!=(g|0)){d=e;while(1){a[d>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(g|0))break;else d=d+1|0}e=e+h|0}a[e>>0]=0;return}if(!(e&8)){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}f=c[d+8>>2]|0;d=c[d+16>>2]|0;h=d-f|0;if(h>>>0>4294967279)_i(b);if(h>>>0<11){a[b>>0]=h<<1;e=b+1|0}else{g=h+16&-16;e=bj(g)|0;c[b+8>>2]=e;c[b>>2]=g|1;c[b+4>>2]=h}if((f|0)!=(d|0)){g=e;while(1){a[g>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(d|0))break;else g=g+1|0}e=e+h|0}a[e>>0]=0;return}function Fc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36364;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Gc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36340;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Hc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;c[b>>2]=36316;c[b+4>>2]=e;p=b+8|0;i=c[e>>2]|0;m=e+16|0;h=c[m>>2]|0;l=$(h,i)|0;c[p>>2]=0;q=b+12|0;c[q>>2]=0;c[b+16>>2]=0;do if(l){if(!((l|0)<0?(o=0,ha(178,p|0),i=o,o=0,i&1):0))n=4;if((n|0)==4?(j=l<<1,o=0,k=ka(67,j|0)|0,i=o,o=0,!(i&1)):0){c[p>>2]=k;i=k+(l<<1)|0;c[b+16>>2]=i;iw(k|0,0,j|0)|0;c[q>>2]=i;i=c[e>>2]|0;h=c[m>>2]|0;break}j=Na()|0;g=c[p>>2]|0;h=g;if(g){i=c[q>>2]|0;if((i|0)!=(g|0))c[q>>2]=i+(~((i+-2-h|0)>>>1)<<1);cj(g)}q=j;Ya(q|0)}while(0);j=b+20|0;h=$(i<<1,h)|0;c[j>>2]=0;k=b+24|0;c[k>>2]=0;c[b+28>>2]=0;if(!h){q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}if(!((h|0)<0?(o=0,ha(178,j|0),m=o,o=0,m&1):0))n=13;if((n|0)==13?(o=0,g=ka(67,h|0)|0,n=o,o=0,!(n&1)):0){c[k>>2]=g;c[j>>2]=g;c[b+28>>2]=g+h;do{a[g>>0]=0;g=(c[k>>2]|0)+1|0;c[k>>2]=g;h=h+-1|0}while((h|0)!=0);q=b+32|0;p=f;p=c[p>>2]|0;f=f+4|0;f=c[f>>2]|0;n=q;c[n>>2]=p;q=q+4|0;c[q>>2]=f;q=b+40|0;c[q>>2]=p;q=b+48|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];return}i=Na()|0;g=c[j>>2]|0;if(g){if((c[k>>2]|0)!=(g|0))c[k>>2]=g;cj(g)}g=c[p>>2]|0;if(!g){q=i;Ya(q|0)}h=c[q>>2]|0;if((h|0)!=(g|0))c[q>>2]=h+(~((h+-2-g|0)>>>1)<<1);cj(g);q=i;Ya(q|0)}function Ic(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36316;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Jc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36316;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Kc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;Pc(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Pc(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Lc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;Mc(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Nc(a,f,b,d,e);return}}function Mc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{o=c[j>>2]|0;m=e[n+(f*6|0)+2>>1]<>1]<>1]<>1]=(m+49152+((d+i|0)>>>2)&65535)>>>o;b[g+(f*6|0)+2>>1]=d>>>o;b[g+(f*6|0)+4>>1]=i>>>o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{h=e[n+(f*6|0)+2>>1]<>1]<>1]<>1]=(h+49152+((d+o|0)>>>2)&65535)>>>j;b[g+(f+i<<1)>>1]=d>>>j;b[g+(f+l<<1)>>1]=o>>>j;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;m=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;p=e[n+(f<<3)+2>>1]<>1]<>1]<>1]=(p+49152+((h+d|0)>>>2)&65535)>>>j;b[g+(f+i<<1)>>1]=h>>>j;b[g+(f+l<<1)>>1]=d>>>j;b[g+(f+m<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}default:return}}function Nc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Mc(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Mc(b,t,e,f,g);i=q;return}function Oc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+176|0;e=g+152|0;l=g+16|0;j=g;if(!(d&1)){e=(d|0)/4|0;if((d|0)>3){f=0;do{l=b+(f<<2)|0;k=c[l>>2]|0;c[l>>2]=k>>>8&16711935|k<<8&-16711936;f=f+1|0}while((f|0)<(e|0))}if(!(d&3)){i=g;return}j=b+(d+-2)|0;l=b+(d+-1)|0;k=a[j>>0]|0;a[j>>0]=a[l>>0]|0;a[l>>0]=k;i=g;return}k=l+56|0;h=l+4|0;c[l>>2]=36160;c[k>>2]=36180;o=0;ia(62,l+56|0,h|0);g=o;o=0;if(g&1){l=Na()|0;fn(k);Ya(l|0)}c[l+128>>2]=0;c[l+132>>2]=-1;c[l>>2]=36200;c[l+56>>2]=36220;o=0;ha(180,h|0);g=o;o=0;do if(g&1)e=Na()|0;else{c[h>>2]=36236;g=l+36|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[l+52>>2]=16;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;o=0;ia(63,h|0,e|0);b=o;o=0;if(b&1){l=Na()|0;Im(e);Im(g);nn(h);e=l;break}Im(e);o=0;e=ma(28,l|0,49087,24)|0;b=o;o=0;if((!(b&1)?(o=0,f=ra(36,e|0,d|0)|0,d=o,o=0,!(d&1)):0)?(o=0,ma(28,f|0,49112,20)|0,d=o,o=0,!(d&1)):0){b=Ma(16)|0;o=0;ia(64,j|0,h|0);d=o;o=0;if(!(d&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,b|0,1,35648,j|0);d=o;o=0;if(d&1)f=1;else{o=0;wa(6,b|0,824,96);o=0;f=0}e=Na()|0;Im(j);if(!f){j=e;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}}else e=Na()|0;La(b|0);j=e;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}j=Na()|0;c[l>>2]=36200;c[k>>2]=36220;c[h>>2]=36236;Im(g);nn(h);fn(k);Ya(j|0)}while(0);l=e;fn(k);Ya(l|0)}function Pc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{i=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>1]<>2)+16384|0;b[g+(d*6|0)>>1]=(k+32768+m&65535)>>>i;b[g+(d*6|0)+2>>1]=(m&65535)>>>i;b[g+(d*6|0)+4>>1]=(l+32768+m&65535)>>>i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{m=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>1]<>2)+16384|0;b[g+(d*6|0)>>1]=(q+32768+o&65535)>>>m;b[g+(d*6|0)+2>>1]=(o&65535)>>>m;b[g+(d*6|0)+4>>1]=(p+32768+o&65535)>>>m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{q=c[j>>2]|0;p=e[f+(k+i<<1)>>1]<>1]<>1]<>2)+16384|0;r=b[f+(k+d<<1)>>1]|0;t=mw((o&65535)>>>q&65535|0,0,16)|0;p=(p+32768+o&65535)>>>q|D;r=mw(r&65535|0,0,48)|0;r=t|(s+32768+o&65535)>>>q&65535|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){t=j+4|0;s=b[j>>1]|0;b[j>>1]=b[t>>1]|0;b[t>>1]=s;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Qc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Rc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Sc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;Wc(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Wc(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Tc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;Uc(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Vc(a,f,b,d,e);return}}function Uc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;m=e[n+(f*6|0)>>1]<>1]<>1]<>>1)&65535)>>>i&65535;b[g+(f*6|0)>>1]=(m+32768-d&65535)>>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{h=e[n+(f*6|0)>>1]<>1]<>1]<>>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(h+32768-d&65535)>>>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;m=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;p=e[n+(f<<3)>>1]<>1]<>1]<>>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(p+32768-h&65535)>>>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+l<<1)>>1]=d;b[g+(f+m<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}default:return}}function Vc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}function Wc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>1]<>>1)&65535)>>>m&65535;b[g+(d*6|0)>>1]=k>>>m;b[g+(d*6|0)+2>>1]=l>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>1]<>>1)&65535)>>>o&65535;b[g+(d*6|0)>>1]=q>>>o;b[g+(d*6|0)+2>>1]=p>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{o=c[j>>2]|0;q=e[f+(k+i<<1)>>1]<>1]<>1]<>>1)&65535)>>>o;r=b[f+(k+d<<1)>>1]|0;q=mw(q>>>o&65535|0,0,16)|0;p=D|p;r=mw(r&65535|0,0,48)|0;r=s>>>o&65535|q|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Xc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Yc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;bd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;bd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function _c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;$c(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ad(a,f,b,d,e);return}}function $c(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;m=d+4|0;j=c[m>>2]|0;do if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;d=e[n+(f*6|0)+2>>1]<>1]<>>i&65535;b[g+(f*6|0)>>1]=((e[n+(f*6|0)>>1]<>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{d=e[n+(f*6|0)+2>>1]<>1]<>>j&65535;b[g+(f<<1)>>1]=((e[n+(f*6|0)>>1]<>>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;l=(i|0)<(h|0)?i:h;if((l|0)<=0)return;m=i<<1;k=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;h=e[n+(f<<3)+2>>1]<>1]<>>j&65535;b[g+(f<<1)>>1]=((e[n+(f<<3)>>1]<>>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+m<<1)>>1]=d;b[g+(f+k<<1)>>1]=o;f=f+1|0}while((f|0)!=(l|0));return}default:return}}function ad(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}function bd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]<>1]<>>m&65535;b[g+(d*6|0)>>1]=((e[f+(d*6|0)>>1]<>>m;b[g+(d*6|0)+2>>1]=(l&65535)>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]<>1]<>>o&65535;b[g+(d*6|0)>>1]=((e[f+(d<<1)>>1]<>>o;b[g+(d*6|0)+2>>1]=(p&65535)>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{q=c[j>>2]|0;s=e[f+(k+i<<1)>>1]<>1]<>>q;o=(s+32768+(e[f+(k+l<<1)>>1]<>>q;r=b[f+(k+d<<1)>>1]|0;q=mw((s&65535)>>>q&65535|0,0,16)|0;o=o|D;r=mw(r&65535|0,0,48)|0;r=q|p&65535|r;o=o&65535|D;p=g+(k<<3)|0;q=p;b[q>>1]=r;b[q+2>>1]=r>>>16;p=p+4|0;b[p>>1]=o;b[p+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function cd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0;p=i;i=i+16|0;m=p;n=c[b>>2]|0;if(!n){b=0;i=p;return b|0}q=d;k=f-q|0;l=g+12|0;j=c[l>>2]|0;k=(j|0)>(k|0)?j-k|0:0;j=e;g=j-q|0;if((g|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,d,g)|0)!=(g|0):0){c[b>>2]=0;q=0;i=p;return q|0}do if((k|0)>0){Hm(m,k,h);o=0;g=ma(c[(c[n>>2]|0)+48>>2]|0,n|0,((a[m>>0]&1)==0?m+1|0:c[m+8>>2]|0)|0,k|0)|0;q=o;o=0;if(q&1){q=Na()|0;Im(m);Ya(q|0)}if((g|0)==(k|0)){Im(m);break}c[b>>2]=0;Im(m);q=0;i=p;return q|0}while(0);f=f-j|0;if((f|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,e,f)|0)!=(f|0):0){c[b>>2]=0;q=0;i=p;return q|0}c[l>>2]=0;q=n;i=p;return q|0}function dd(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);return}function ed(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);cj(a);return}function fd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=d+44|0;j=c[i>>2]|0;l=d+24|0;m=c[l>>2]|0;if(j>>>0>>0){c[i>>2]=m;j=m}k=j;i=h&24;if(!i){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((g|0)==1&(i|0)==24){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}a:do switch(g|0){case 0:{i=0;g=0;break}case 1:if(!(h&8)){g=m-(c[d+20>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}else{g=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}case 2:{i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;g=j-i|0;i=g;g=((g|0)<0)<<31>>31;break}default:{d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}while(0);g=jw(i|0,g|0,e|0,f|0)|0;e=D;if((e|0)>=0){i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;f=j-i|0;j=((f|0)<0)<<31>>31;if(!((j|0)<(e|0)|(j|0)==(e|0)&f>>>0>>0)){i=h&8;if(!((g|0)==0&(e|0)==0)){if((i|0)!=0?(c[d+12>>2]|0)==0:0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((h&16|0)!=0&(m|0)==0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}if(i){c[d+12>>2]=(c[d+8>>2]|0)+g;c[d+16>>2]=k}if(h&16)c[l>>2]=(c[d+20>>2]|0)+g;d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=g;c[d+4>>2]=e;return}}d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function gd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=d+8|0;Ib[c[(c[b>>2]|0)+16>>2]&15](a,b,c[d>>2]|0,c[d+4>>2]|0,0,e);return}function hd(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+44|0;e=c[b>>2]|0;f=c[a+24>>2]|0;if(e>>>0>>0){c[b>>2]=f;e=f}if(!(c[a+48>>2]&8)){a=-1;return a|0}g=a+16|0;b=c[g>>2]|0;f=a+12|0;if(b>>>0>>0){f=c[f>>2]|0;c[g>>2]=e;b=e}else f=c[f>>2]|0;if(f>>>0>=b>>>0){a=-1;return a|0}a=d[f>>0]|0;return a|0}function id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=b+44|0;e=c[f>>2]|0;g=c[b+24>>2]|0;if(e>>>0>>0){c[f>>2]=g;e=g}j=b+8|0;f=c[j>>2]|0;k=b+12|0;h=c[k>>2]|0;i=f;if(f>>>0>=h>>>0){b=-1;return b|0}if((d|0)==-1){c[j>>2]=f;c[k>>2]=h+-1;c[b+16>>2]=e;b=0;return b|0}if(!(c[b+48>>2]&16)){g=d&255;f=h+-1|0;if(g<<24>>24!=(a[f>>0]|0)){b=-1;return b|0}}else{g=d&255;f=h+-1|0}c[j>>2]=i;c[k>>2]=f;c[b+16>>2]=e;a[f>>0]=g;b=d;return b|0}function jd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+16|0;n=t;if((d|0)==-1){b=0;i=t;return b|0}p=b+12|0;q=b+8|0;r=(c[p>>2]|0)-(c[q>>2]|0)|0;s=b+24|0;e=c[s>>2]|0;m=b+28|0;f=c[m>>2]|0;do if((e|0)==(f|0)){k=b+48|0;if(!(c[k>>2]&16)){b=-1;i=t;return b|0}l=b+20|0;j=c[l>>2]|0;g=e-j|0;h=b+44|0;j=(c[h>>2]|0)-j|0;f=b+32|0;o=0;ia(67,f|0,0);e=o;o=0;if(!(e&1)){if(!(a[f>>0]&1))e=10;else e=(c[f>>2]&-2)+-1|0;o=0;wa(8,f|0,e|0,0);e=o;o=0;if(!(e&1)){e=a[f>>0]|0;if(!(e&1)){f=f+1|0;e=(e&255)>>>1}else{f=c[b+40>>2]|0;e=c[b+36>>2]|0}u=f+e|0;c[l>>2]=f;c[m>>2]=u;l=f+g|0;c[s>>2]=l;e=f+j|0;c[h>>2]=e;f=u;break}}u=Na(0)|0;Va(u|0)|0;Xa();u=-1;i=t;return u|0}else{u=b+44|0;k=b+48|0;h=u;l=e;e=c[u>>2]|0}while(0);j=l+1|0;c[n>>2]=j;g=c[(j>>>0>>0?h:n)>>2]|0;c[h>>2]=g;if(c[k>>2]&8){e=b+32|0;if(!(a[e>>0]&1))e=e+1|0;else e=c[b+40>>2]|0;c[q>>2]=e;c[p>>2]=e+r;c[b+16>>2]=g}if((l|0)==(f|0)){u=Lb[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;i=t;return u|0}else{c[s>>2]=j;a[l>>0]=d;u=d&255;i=t;return u|0}return 0}function kd(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);return}function ld(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);cj(a);return}function md(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[(c[a>>2]|0)+-12>>2]|0;b=a+f|0;c[b>>2]=36200;d=a+(f+56)|0;c[d>>2]=36220;e=a+(f+4)|0;c[e>>2]=36236;Im(a+(f+36)|0);nn(e);fn(d);cj(b);return}function nd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function od(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function pd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;td(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;td(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;rd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{sd(a,f,b,d,e);return}}function rd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{l=e[m+(j*6|0)+2>>1]|0;i=32768-l+(e[m+(j*6|0)+4>>1]|0)|0;n=(e[m+(j*6|0)>>1]|0)-l+32768|0;b[g+(j*6|0)>>1]=l+49152+(((i&65535)+(n&65535)|0)>>>2);b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{l=e[m+(f*6|0)+2>>1]|0;h=32768-l+(e[m+(f*6|0)+4>>1]|0)|0;n=(e[m+(f*6|0)>>1]|0)-l+32768|0;b[g+(f<<1)>>1]=l+49152+(((h&65535)+(n&65535)|0)>>>2);b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{n=b[m+(k<<3)+6>>1]|0;o=e[m+(k<<3)+2>>1]|0;l=32768-o+(e[m+(k<<3)+4>>1]|0)|0;h=(e[m+(k<<3)>>1]|0)-o+32768|0;b[g+(k<<1)>>1]=o+49152+(((l&65535)+(h&65535)|0)>>>2);b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function sd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}function td(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=e[f+(d*6|0)+2>>1]|0;k=e[f+(d*6|0)+4>>1]|0;i=(e[f+(d*6|0)>>1]|0)-((k+l|0)>>>2)+16384|0;b[g+(d*6|0)>>1]=k+32768+i;b[g+(d*6|0)+2>>1]=i;b[g+(d*6|0)+4>>1]=l+32768+i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=e[f+(k+i<<1)>>1]|0;o=e[f+(k+j<<1)>>1]|0;l=(e[f+(k<<1)>>1]|0)-((o+n|0)>>>2)+16384|0;b[g+(k*6|0)>>1]=o+32768+l;b[g+(k*6|0)+2>>1]=l;b[g+(k*6|0)+4>>1]=n+32768+l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=e[f+(k+i<<1)>>1]|0;p=e[f+(k+d<<1)>>1]|0;o=(e[f+(k<<1)>>1]|0)-((p+n|0)>>>2)+16384|0;q=b[f+(k+j<<1)>>1]|0;r=mw(o&65535|0,0,16)|0;n=n+32768+o|D;q=mw(q&65535|0,0,48)|0;q=r|p+32768+o&65535|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){r=d+4|0;q=b[d>>1]|0;b[d>>1]=b[r>>1]|0;b[r>>1]=q;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function ud(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function vd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function wd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Ad(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Ad(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;yd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{zd(a,f,b,d,e);return}}function yd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{k=e[m+(j*6|0)>>1]|0;i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=(e[m+(j*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(j*6|0)>>1]=k+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;k=e[m+(f*6|0)>>1]|0;l=h&65535;n=(e[m+(f*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(f<<1)>>1]=k+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;p=e[m+(k<<3)>>1]|0;o=l&65535;h=(e[m+(k<<3)+4>>1]|0)+32768-((o+p|0)>>>1)&65535;b[g+(k<<1)>>1]=p+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function zd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}function Ad(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=l&65535;k=(e[f+(d*6|0)>>1]|0)+32768+i|0;i=(e[f+(d*6|0)+4>>1]|0)+32768+(((k&65535)+i|0)>>>1)&65535;b[g+(d*6|0)>>1]=k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=n&65535;o=(e[f+(k<<1)>>1]|0)+32768+l|0;l=(e[f+(k+j<<1)>>1]|0)+32768+(((o&65535)+l|0)>>>1)&65535;b[g+(k*6|0)>>1]=o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n&65535;n=(e[f+(k+d<<1)>>1]|0)+32768+((p+n|0)>>>1)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Bd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Cd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Dd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Hd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Hd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ed(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Fd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Gd(a,f,b,d,e);return}}function Fd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=32768-l+(e[m+(j*6|0)+4>>1]|0)&65535;b[g+(j*6|0)>>1]=(e[m+(j*6|0)>>1]|0)+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;l=h&65535;n=32768-l+(e[m+(f*6|0)+4>>1]|0)&65535;b[g+(f<<1)>>1]=(e[m+(f*6|0)>>1]|0)+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;o=l&65535;h=32768-o+(e[m+(k<<3)+4>>1]|0)&65535;b[g+(k<<1)>>1]=(e[m+(k<<3)>>1]|0)+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function Gd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}function Hd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;k=l&65535;i=k+32768+(e[f+(d*6|0)+4>>1]|0)&65535;b[g+(d*6|0)>>1]=(e[f+(d*6|0)>>1]|0)+32768+k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;o=n&65535;l=o+32768+(e[f+(k+j<<1)>>1]|0)&65535;b[g+(k*6|0)>>1]=(e[f+(k<<1)>>1]|0)+32768+o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n|0;n=n+32768+(e[f+(k+d<<1)>>1]|0)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p&65535|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Id(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Jd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Kd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Od(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Od(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Md(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Nd(a,f,b,d,e);return}}function Md(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;k=d+4|0;i=c[k>>2]|0;do if(!(a[i+32>>0]|0))l=e;else{d=d+8|0;lw(c[d>>2]|0,e|0,g*6|0)|0;i=c[k>>2]|0;j=c[i+16>>2]|0;if((g|0)<=0){l=c[d>>2]|0;break}d=c[d>>2]|0;i=d;e=0;while(1){l=i+4|0;m=b[i>>1]|0;b[i>>1]=b[l>>1]|0;b[l>>1]=m;e=e+1|0;if((e|0)==(g|0))break;else i=i+(j<<1)|0}l=d;i=c[k>>2]|0}while(0);switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=b[l+(i*6|0)+2>>1]|0;m=b[l+(i*6|0)+4>>1]|0;b[f+(i*6|0)>>1]=b[l+(i*6|0)>>1]|0;b[f+(i*6|0)+2>>1]=h;b[f+(i*6|0)+4>>1]=m;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=0;do{g=b[l+(e*6|0)+2>>1]|0;m=b[l+(e*6|0)+4>>1]|0;b[f+(e<<1)>>1]=b[l+(e*6|0)>>1]|0;b[f+(e+h<<1)>>1]=g;b[f+(e+d<<1)>>1]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=h*3|0;j=0;do{k=b[l+(j<<3)+2>>1]|0;g=b[l+(j<<3)+4>>1]|0;m=b[l+(j<<3)+6>>1]|0;b[f+(j<<1)>>1]=b[l+(j<<3)>>1]|0;b[f+(j+h<<1)>>1]=k;b[f+(j+d<<1)>>1]=g;b[f+(j+e<<1)>>1]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Nd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}while(0);t=h;fn(m);Ya(t|0)}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}function Od(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=b[f+(d*6|0)+4>>1]|0;b[g+(d*6|0)>>1]=b[f+(d*6|0)>>1]|0;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=b[f+(k+j<<1)>>1]|0;b[g+(k*6|0)>>1]=b[f+(k<<1)>>1]|0;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=b[f+(k<<1)>>1]|0;q=b[f+(k+j<<1)>>1]|0;o=e[f+(k+d<<1)>>1]|0;p=mw(e[f+(k+i<<1)>>1]|0,0,16)|0;o=D|o;q=mw(q&65535|0,0,48)|0;q=p|n&65535|q;o=o&65535|D;n=g+(k<<3)|0;p=n;b[p>>1]=q;b[p+2>>1]=q>>>16;n=n+4|0;b[n>>1]=o;b[n+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Pd(a){a=a|0;return}function Qd(a){a=a|0;cj(a);return}function Rd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;e=$(c[b+8>>2]|0,e)|0;b=c[b+4>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,d,e)|0)==(e|0))return;f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}function Sd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,p=0;p=i;i=i+16|0;m=p;l=b+8|0;g=c[l>>2]|0;f=$(g,e)|0;do if(f){j=b+4|0;h=f;while(1){g=c[j>>2]|0;g=Gb[c[(c[g>>2]|0)+32>>2]&63](g,d,h)|0;if(!g)break;f=h-g|0;if((h|0)==(g|0)){k=11;break}else h=f}if((k|0)==11){g=c[l>>2]|0;h=f;break}f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}else h=0;while(0);if((g|0)==2){Oc(d,e<<1);g=c[l>>2]|0}f=c[b+12>>2]|0;if((f|0)<=($(g,e)|0)){i=p;return}b=c[b+4>>2]|0;Ib[c[(c[b>>2]|0)+16>>2]&15](m,b,f-h|0,0,1,24);i=p;return}function Td(a){a=a|0;cj(a);return}function Ud(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(c[e>>2]|0,b|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(b|0,c[e>>2]|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Wd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c[b+112>>2]=0;c[b+108>>2]=0;l=c[d>>2]|0;g=l;do if(l){i=b+92|0;l=b+96|0;j=c[l>>2]|0;k=c[i>>2]|0;e=k;f=j-e|0;if(f>>>0>=4e4)if(f>>>0>4e4?(h=k+4e4|0,(j|0)!=(h|0)):0){c[l>>2]=h;h=e}else h=e;else{Xd(i,4e4-f|0);h=c[i>>2]|0;g=c[d>>2]|0}e=b+116|0;c[e>>2]=h;j=b+124|0;c[j>>2]=h;k=b+104|0;c[k>>2]=g;f=g;if(g){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){d=(Eb[c[(c[g>>2]|0)+36>>2]&127](f)|0)==-1;f=c[j>>2]|0;if(d)break;g=c[e>>2]|0}else{f=h;g=h}i=f-g|0;if(i>>>0<=64){h=b+92|0;if((f|0)==(g|0))f=g;else{f=g;g=0;do{a[(c[h>>2]|0)+g>>0]=a[f+g>>0]|0;g=g+1|0;f=c[e>>2]|0}while(g>>>0>>0);g=c[j>>2]|0}h=c[h>>2]|0;d=h;m=d-f|0;c[e>>2]=h;f=g+m|0;c[j>>2]=f;h=b+120|0;c[h>>2]=(c[h>>2]|0)+m;k=c[k>>2]|0;f=Gb[c[(c[k>>2]|0)+32>>2]&63](k,f,(c[l>>2]|0)-(d+i)|0)|0;f=(c[j>>2]|0)+f|0;c[j>>2]=f}}else f=h}else{c[b+104>>2]=0;f=c[d+4>>2]|0;e=b+116|0;c[e>>2]=f;f=f+(c[d+8>>2]|0)|0;c[b+124>>2]=f}while(0);e=c[e>>2]|0;if(e>>>0>=f>>>0){l=e;m=b+120|0;c[m>>2]=l;ge(b);return}while(1){if((a[e>>0]|0)==-1){f=20;break}e=e+1|0;if(e>>>0>=f>>>0){f=20;break}}if((f|0)==20){m=b+120|0;c[m>>2]=e;ge(b);return}}function Xd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function Yd(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+180|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4604|0;k=($(t,s)|0)+1|0;l=a+4608|0;m=a+92|0;n=(t|0)>0;p=a+4600|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(68,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Zd(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4604|0;f=c[p>>2]|0;s=d+180|0;if((c[s>>2]|0)<=0)return;q=d+4608|0;r=d+4612|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(ce(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=be(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function _d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=b+104|0;if((c[g>>2]|0)>>>0<4)$d(b);h=b+100|0;i=b+112|0;j=b+96|0;k=b+108|0;l=b+116|0;d=c[h>>2]|0;f=0;do{e=a[i>>0]|0;if((d|0)>31)break;d=c[j>>2]|0;if(!(e<<24>>24)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;e=(a[m>>0]|0)==-1&1;a[i>>0]=e;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;f=f+1|0}while((f|0)<4);if(!(e<<24>>24))ae(b,0,(d|0)%8|0);else ae(b,0,(d+-1|0)%8|0);if((c[g>>2]|0)>>>0<4)$d(b);d=c[h>>2]|0;e=0;do{if((d|0)>31)break;d=c[j>>2]|0;if(!(a[i>>0]|0)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;a[i>>0]=(a[m>>0]|0)==-1&1;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;e=e+1|0}while((e|0)<4);if(!(c[b+132>>2]|0))return;$d(b);return}function $d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+132>>2]|0;if(!d){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}e=b+108|0;f=b+120|0;h=c[f>>2]|0;g=(c[e>>2]|0)-h|0;if((Gb[c[(c[d>>2]|0)+48>>2]&63](d,h,g)|0)==(g|0)){h=c[f>>2]|0;c[e>>2]=h;c[b+104>>2]=(c[b+124>>2]|0)-h;return}d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);h=o;o=0;if(!(h&1))lb(d|0,824,96);h=Na()|0;La(d|0);Ya(h|0)}function ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+100|0;e=(c[l>>2]|0)-e|0;c[l>>2]=e;if((e|0)>-1){m=b+96|0;c[m>>2]=c[m>>2]|d<>2]=c[m>>2]|d>>0-e;k=b+104|0;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0}h=b+112|0;i=b+108|0;j=b+116|0;f=0;while(1){if((e|0)>31)break;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0;if((f|0)>=4){g=11;break}}a:do if((g|0)==11)if((e|0)<0){c[m>>2]=c[m>>2]|d>>0-e;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0;f=0}else f=0;do{if((e|0)>31)break a;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0}while((f|0)<4)}while(0);c[m>>2]=c[m>>2]|d<>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;fe(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ce(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[a+180>>2]|0)-d|0;m=c[a+4608>>2]|0;n=c[a+4604>>2]|0;h=b[m+(d+-1<<1)>>1]|0;k=h&65535;f=c[a+144>>2]|0;i=0;while(1){g=m+(i+d<<1)|0;j=(e[g>>1]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(f|0))break;b[g>>1]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]=de(a,e[d>>1]|0,k,e[n+(l<<1)>>1]|0)|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;a=i+1|0;return a|0}if(!f){a=l;return a|0}ae(a,1,1);a=l;return a|0}function de(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}return 0}function ee(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;fe(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function fe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0;l=b+120|0;if(e>>>0<((c[l>>2]|0)+-3|0)>>>0){l=b+112|0;j=c[l>>2]|0;b=b+108|0;c[b>>2]=(d[e+1>>0]<<16|d[e>>0]<<24|d[e+2>>0]<<8|d[e+3>>0])>>>j|c[b>>2];b=32-j>>3;c[k>>2]=e+b;c[l>>2]=(b<<3)+j;return}j=b+104|0;f=c[j>>2]|0;do if(f){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){if((Eb[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1)break;e=c[k>>2]|0}h=b+124|0;f=c[h>>2]|0;i=f-e|0;if(i>>>0<=64){g=b+92|0;if((f|0)==(e|0))f=e;else{f=0;do{a[(c[g>>2]|0)+f>>0]=a[e+f>>0]|0;f=f+1|0;e=c[k>>2]|0}while(f>>>0>>0);f=e;e=c[h>>2]|0}p=c[g>>2]|0;g=p;m=g-f|0;c[k>>2]=p;f=e+m|0;c[h>>2]=f;c[l>>2]=(c[l>>2]|0)+m;j=c[j>>2]|0;j=Gb[c[(c[j>>2]|0)+32>>2]&63](j,f,(c[b+96>>2]|0)-(g+i)|0)|0;c[h>>2]=(c[h>>2]|0)+j}}while(0);j=b+112|0;i=b+108|0;b=c[b+124>>2]|0;h=b+-1|0;e=c[k>>2]|0;while(1){if(e>>>0>=b>>>0){f=14;break}g=a[e>>0]|0;f=g&255;g=g<<24>>24==-1;if(g){if((e|0)==(h|0)){f=25;break}e=e+1|0;if((a[e>>0]|0)<0){f=25;break}}else e=e+1|0;p=c[j>>2]|0;c[i>>2]=f<<24-p|c[i>>2];c[k>>2]=e;p=p+(g?7:8)|0;c[j>>2]=p;if((p|0)>=24){f=33;break}}if((f|0)==14){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==25){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==33){a:do if(e>>>0>>0)do{if((a[e>>0]|0)==-1)break a;e=e+1|0}while(e>>>0>>0);while(0);c[l>>2]=e;return}}function he(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function je(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ke(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function le(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function me(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ne(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;xe(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function oe(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35828;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}\n function pe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function qe(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=a+180|0;r=(c[q>>2]|0)+4|0;if((c[a+32>>2]|0)==1)s=c[a+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;do if(d){if(!(d>>>0>715827882?(o=0,ha(178,w|0),v=o,o=0,v&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;f=e+(d*6|0)|0;c[w+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[x>>2]=f;break}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)j=20;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))j=18;if((j|0)==18?(g=s<<2,o=0,h=ka(67,g|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=h;j=h+(s<<2)|0;c[t+8>>2]=j;iw(h|0,0,g|0)|0;c[v>>2]=j;j=20;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==20){g=a+12|0;a:do if((c[g>>2]|0)>0){h=a+4604|0;j=($(s,r)|0)+1|0;k=a+4608|0;l=a+92|0;m=(s|0)>0;n=a+4600|0;p=0;b:while(1){e=c[w>>2]|0;d=e+6|0;c[h>>2]=d;e=e+(j*6|0)|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){j=30;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*6|0)|0;e=e+((y+-1|0)*6|0)|0;b[d>>1]=b[e>>1]|0;b[d+2>>1]=b[e+2>>1]|0;b[d+4>>1]=b[e+4>>1]|0;e=(c[k>>2]|0)+-6|0;d=c[h>>2]|0;b[e>>1]=b[d>>1]|0;b[e+2>>1]=b[d+2>>1]|0;b[e+4>>1]=b[d+4>>1]|0;o=0;ia(69,a|0,0);e=o;o=0;if(e&1){j=29;break b}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*6|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*6|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(182,a|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function re(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;B=d+180|0;if((c[B>>2]|0)<=0)return;C=d+4608|0;D=d+4604|0;E=d+4612|0;A=0;while(1){x=A+-1|0;j=c[C>>2]|0;k=c[D>>2]|0;f=A+1|0;i=e[k+(A*6|0)>>1]|0;z=c[E>>2]|0;l=e[k+(x*6|0)>>1]|0;m=i-l|0;n=e[j+(x*6|0)>>1]|0;o=l-n|0;p=((((a[z+((e[k+(f*6|0)>>1]|0)-i)>>0]|0)*9|0)+(a[z+m>>0]|0)|0)*9|0)+(a[z+o>>0]|0)|0;h=e[k+(A*6|0)+2>>1]|0;q=e[k+(x*6|0)+2>>1]|0;r=h-q|0;s=e[j+(x*6|0)+2>>1]|0;t=q-s|0;u=((((a[z+((e[k+(f*6|0)+2>>1]|0)-h)>>0]|0)*9|0)+(a[z+r>>0]|0)|0)*9|0)+(a[z+t>>0]|0)|0;g=e[k+(A*6|0)+4>>1]|0;v=e[k+(x*6|0)+4>>1]|0;w=g-v|0;x=e[j+(x*6|0)+4>>1]|0;y=v-x|0;z=((((a[z+((e[k+(f*6|0)+4>>1]|0)-g)>>0]|0)*9|0)+(a[z+w>>0]|0)|0)*9|0)+(a[z+y>>0]|0)|0;if(!(u|p|z))f=(se(d,A,0)|0)+A|0;else{k=e[j+(A*6|0)>>1]|0;j=i-n>>31;if((j^o|0)>=0)if((j^m|0)<0)i=n;else i=n-l+i|0;k=te(d,p,k,i,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+2>>1]|0;i=h-s>>31;if((i^t|0)>=0)if((i^r|0)<0)h=s;else h=s-q+h|0;i=te(d,u,j,h,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+4>>1]|0;h=g-x>>31;if((h^y|0)>=0)if((h^w|0)<0)g=x;else g=x-v+g|0;y=te(d,z,j,g,0)|0;z=c[C>>2]|0;b[z+(A*6|0)>>1]=k;b[z+(A*6|0)+2>>1]=i;b[z+(A*6|0)+4>>1]=y}if((f|0)<(c[B>>2]|0))A=f;else break}return}function se(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+48|0;r=B+30|0;q=B+24|0;p=B+18|0;s=B+12|0;x=B+6|0;y=B;z=(c[a+180>>2]|0)-d|0;A=c[a+4608>>2]|0;t=c[a+4604>>2]|0;w=d+-1|0;u=b[A+(w*6|0)>>1]|0;v=b[A+(w*6|0)+2>>1]|0;w=b[A+(w*6|0)+4>>1]|0;f=u&65535;g=a+144|0;h=v&65535;j=w&65535;o=0;while(1){m=o+d|0;k=A+(m*6|0)|0;l=A+(m*6|0)+2|0;m=A+(m*6|0)+4|0;C=(e[k>>1]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[l>>1]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[m>>1]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;b[k>>1]=u;b[l>>1]=v;b[m>>1]=w;o=o+1|0;if((o|0)==(z|0)){o=z;break}}h=(o|0)==(z|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(o|0))f=o;else{f=o;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]=b[C>>1]|0;b[x+2>>1]=b[C+2>>1]|0;b[x+4>>1]=b[C+4>>1]|0;b[y>>1]=u;b[y+2>>1]=v;b[y+4>>1]=w;d=t+(d*6|0)|0;b[p>>1]=b[x>>1]|0;b[p+2>>1]=b[x+2>>1]|0;b[p+4>>1]=b[x+4>>1]|0;b[q>>1]=b[y>>1]|0;b[q+2>>1]=b[y+2>>1]|0;b[q+4>>1]=b[y+4>>1]|0;b[r>>1]=b[d>>1]|0;b[r+2>>1]=b[d+2>>1]|0;b[r+4>>1]=b[d+4>>1]|0;ve(s,a,p,q,r);b[C>>1]=b[s>>1]|0;b[C+2>>1]=b[s+2>>1]|0;b[C+4>>1]=b[s+4>>1]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=z;i=B;return C|0}ae(a,1,1);C=z;i=B;return C|0}function te(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;ue(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ue(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>1]|0;p=o-(e[g>>1]|0)>>31|1;i=$(p,(e[f>>1]|0)-o|0)|0;m=d+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=d+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=d+4576|0;we(d,k,l);t=e[h+2>>1]|0;u=t-(e[g+2>>1]|0)>>31|1;i=$(u,(e[f+2>>1]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;we(d,k,q);v=e[h+4>>1]|0;s=v-(e[g+4>>1]|0)>>31|1;i=$(s,(e[f+4>>1]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;we(d,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&65535;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&65535;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}w=g&~(i>>31);w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}function we(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ue(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function xe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ye(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ze(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ae(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;pf(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function Be(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35800;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Ce(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function De(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36712;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36688;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Fe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36664;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ge(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36640;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function He(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Ie(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ne(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ne(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Le(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Me(a,f,b,d,e);return}}function Le(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{j=d[k+(i*3|0)+1>>0]|0;h=128-j+(d[k+(i*3|0)+2>>0]|0)|0;l=(d[k+(i*3|0)>>0]|0)-j+128|0;m=f+(i*3|0)|0;a[m>>0]=j+192+(((h&255)+(l&255)|0)>>>2);a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{g=d[k+(e*3|0)+1>>0]|0;l=128-g+(d[k+(e*3|0)+2>>0]|0)|0;m=(d[k+(e*3|0)>>0]|0)-g+128|0;a[f+e>>0]=g+192+(((l&255)+(m&255)|0)>>>2);a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{m=a[k+(j<<2)+3>>0]|0;n=d[k+(j<<2)+1>>0]|0;g=128-n+(d[k+(j<<2)+2>>0]|0)|0;l=(d[k+(j<<2)>>0]|0)-n+128|0;a[f+j>>0]=n+192+(((g&255)+(l&255)|0)>>>2);a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Me(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Le(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Le(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function Ne(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=d[e+(b*3|0)+1>>0]|0;i=d[e+(b*3|0)+2>>0]|0;k=(d[e+(b*3|0)>>0]|0)-((i+j|0)>>>2)+64|0;h=f+(b*3|0)|0;a[h>>0]=i+128+k;a[h+1>>0]=k;a[h+2>>0]=j+128+k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=d[e+(j+h)>>0]|0;o=d[e+(j+i)>>0]|0;m=(d[e+j>>0]|0)-((o+n|0)>>>2)+64|0;k=f+(j*3|0)|0;a[k>>0]=o+128+m;a[k+1>>0]=m;a[k+2>>0]=n+128+m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{m=d[e+(j+h)>>0]|0;p=d[e+(j+b)>>0]|0;n=(d[e+j>>0]|0)-((p+m|0)>>>2)+64|0;o=f+(j<<2)|0;n=n<<8&65280|d[e+(j+i)>>0]<<24|p+128+n&255|m+128+n<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){p=b+2|0;o=a[b>>0]|0;a[b>>0]=a[p>>0]|0;a[p>>0]=o;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Oe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Pe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Qe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ue(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ue(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Se(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Te(a,f,b,d,e);return}}function Se(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{e=d[k+(i*3|0)>>0]|0;h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=(d[k+(i*3|0)+2>>0]|0)+128-((j+e|0)>>>1)&255;m=f+(i*3|0)|0;a[m>>0]=e+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;j=d[k+(e*3|0)>>0]|0;g=l&255;m=(d[k+(e*3|0)+2>>0]|0)+128-((g+j|0)>>>1)&255;a[f+e>>0]=j+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;o=d[k+(j<<2)>>0]|0;n=g&255;l=(d[k+(j<<2)+2>>0]|0)+128-((n+o|0)>>>1)&255;a[f+j>>0]=o+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Te(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Se(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Se(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function Ue(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=j&255;i=(d[e+(b*3|0)>>0]|0)+128+k|0;k=(d[e+(b*3|0)+2>>0]|0)+128+(((i&255)+k|0)>>>1)&255;h=f+(b*3|0)|0;a[h>>0]=i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=n&255;o=(d[e+j>>0]|0)+128+m|0;m=(d[e+(j+i)>>0]|0)+128+(((o&255)+m|0)>>>1)&255;k=f+(j*3|0)|0;a[k>>0]=o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;m=(d[e+j>>0]|0)+128+n&255;o=f+(j<<2)|0;n=m|n<<8|d[e+(j+i)>>0]<<24|(d[e+(j+b)>>0]|0)+128+((m+n|0)>>>1)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Ve(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function We(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;$e(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;$e(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ye(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Ze(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{_e(a,f,b,d,e);return}}function Ze(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=128-j+(d[k+(i*3|0)+2>>0]|0)&255;m=f+(i*3|0)|0;a[m>>0]=(d[k+(i*3|0)>>0]|0)+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;g=l&255;m=128-g+(d[k+(e*3|0)+2>>0]|0)&255;a[f+e>>0]=(d[k+(e*3|0)>>0]|0)+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;n=g&255;l=128-n+(d[k+(j<<2)+2>>0]|0)&255;a[f+j>>0]=(d[k+(j<<2)>>0]|0)+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function _e(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Ze(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Ze(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function $e(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;i=j&255;k=i+128+(d[e+(b*3|0)+2>>0]|0)&255;h=f+(b*3|0)|0;a[h>>0]=(d[e+(b*3|0)>>0]|0)+128+i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;o=n&255;m=o+128+(d[e+(j+i)>>0]|0)&255;k=f+(j*3|0)|0;a[k>>0]=(d[e+j>>0]|0)+128+o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;o=f+(j<<2)|0;n=(d[e+j>>0]|0)+128+n&255|n<<8|d[e+(j+i)>>0]<<24|n+128+(d[e+(j+b)>>0]|0)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function af(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function bf(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function cf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;gf(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;gf(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;ef(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ff(a,f,b,d,e);return}}function ef(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=b+4|0;h=c[j>>2]|0;if(!(a[h+32>>0]|0))j=d;else{i=b+8|0;lw(c[i>>2]|0,d|0,f*3|0)|0;h=c[j>>2]|0;d=c[h+16>>2]|0;if((f|0)>0){h=c[i>>2]|0;b=0;while(1){k=h+2|0;l=a[h>>0]|0;a[h>>0]=a[k>>0]|0;a[k>>0]=l;b=b+1|0;if((b|0)==(f|0))break;else h=h+d|0}h=c[j>>2]|0}j=c[i>>2]|0}switch(c[h+16>>2]|0){case 3:{if((c[h+24>>2]|0)==2){if((f|0)>0)h=0;else return;do{g=a[j+(h*3|0)+1>>0]|0;k=a[j+(h*3|0)+2>>0]|0;l=e+(h*3|0)|0;a[l>>0]=a[j+(h*3|0)>>0]|0;a[l+1>>0]=g;a[l+2>>0]=k;h=h+1|0}while((h|0)!=(f|0));return}h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=0;do{k=a[j+(d*3|0)+1>>0]|0;l=a[j+(d*3|0)+2>>0]|0;a[e+d>>0]=a[j+(d*3|0)>>0]|0;a[e+(d+g)>>0]=k;a[e+(d+b)>>0]=l;d=d+1|0}while((d|0)!=(h|0));return}case 4:{if((c[h+24>>2]|0)!=1)return;h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=g*3|0;i=0;do{f=a[j+(i<<2)+1>>0]|0;k=a[j+(i<<2)+2>>0]|0;l=a[j+(i<<2)+3>>0]|0;a[e+i>>0]=a[j+(i<<2)>>0]|0;a[e+(i+g)>>0]=f;a[e+(i+b)>>0]=k;a[e+(i+d)>>0]=l;i=i+1|0}while((i|0)!=(h|0));return}default:return}}function ff(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;ef(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){ef(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}while(0);s=h;fn(e);Ya(s|0)}function gf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;b=c[l>>2]|0;a:do switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=a[e+(b*3|0)+2>>0]|0;h=f+(b*3|0)|0;a[h>>0]=a[e+(b*3|0)>>0]|0;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=a[e+(j+i)>>0]|0;k=f+(j*3|0)|0;a[k>>0]=a[e+j>>0]|0;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=f+(j<<2)|0;m=d[e+(j+h)>>0]<<8|d[e+j>>0]|d[e+(j+b)>>0]<<16|d[e+(j+i)>>0]<<24;a[n>>0]=m;a[n+1>>0]=m>>8;a[n+2>>0]=m>>16;a[n+3>>0]=m>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){n=b+2|0;m=a[b>>0]|0;a[b>>0]=a[n>>0]|0;a[n>>0]=m;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function hf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+180|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4604|0;j=($(s,r)|0)+1|0;k=b+4608|0;l=b+92|0;m=(s|0)>0;n=b+4600|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(70,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function jf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+180|0;if((c[A>>2]|0)<=0)return;B=b+4608|0;C=b+4604|0;D=b+4612|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(kf(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=lf(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=lf(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=lf(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function kf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+32|0;A=B+15|0;q=B+12|0;p=B+9|0;r=B+6|0;w=B+3|0;x=B;y=(c[b+180>>2]|0)-e|0;z=c[b+4608>>2]|0;s=c[b+4604>>2]|0;v=z+((e+-1|0)*3|0)|0;t=a[v>>0]|0;u=a[v+1>>0]|0;v=a[v+2>>0]|0;f=t&255;g=b+144|0;h=u&255;j=v&255;o=0;while(1){k=z+((o+e|0)*3|0)|0;l=k+1|0;m=k+2|0;C=(d[k>>0]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[l>>0]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[m>>0]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;a[k>>0]=t;a[l>>0]=u;a[m>>0]=v;o=o+1|0;if((o|0)==(y|0)){o=y;break}}h=(o|0)==(y|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(o|0))f=o;else{f=o;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]=a[C>>0]|0;a[w+1>>0]=a[C+1>>0]|0;a[w+2>>0]=a[C+2>>0]|0;a[x>>0]=t;a[x+1>>0]=u;a[x+2>>0]=v;e=s+(e*3|0)|0;a[p>>0]=a[w>>0]|0;a[p+1>>0]=a[w+1>>0]|0;a[p+2>>0]=a[w+2>>0]|0;a[q>>0]=a[x>>0]|0;a[q+1>>0]=a[x+1>>0]|0;a[q+2>>0]=a[x+2>>0]|0;a[A>>0]=a[e>>0]|0;a[A+1>>0]=a[e+1>>0]|0;a[A+2>>0]=a[e+2>>0]|0;nf(r,b,p,q,A);a[C>>0]=a[r>>0]|0;a[C+1>>0]=a[r+1>>0]|0;a[C+2>>0]=a[r+2>>0]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=y;i=B;return C|0}ae(b,1,1);C=y;i=B;return C|0}function lf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;mf(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>0]|0;p=o-(d[g>>0]|0)>>31|1;i=$(p,(d[f>>0]|0)-o|0)|0;m=e+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=e+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=e+4576|0;of(e,k,l);t=d[h+1>>0]|0;u=t-(d[g+1>>0]|0)>>31|1;i=$(u,(d[f+1>>0]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;of(e,k,q);v=d[h+2>>0]|0;s=v-(d[g+2>>0]|0)>>31|1;i=$(s,(d[f+2>>0]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;of(e,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&255;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&255;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}w=g&~(i>>31);w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}function of(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;mf(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function pf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function qf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function rf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function sf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Bf(d);g=0;do{c[d+172+(g*12|0)>>2]=1024;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=1024;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=1024;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function tf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35772;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function uf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function vf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(71,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function wf(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(yf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=xf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function xf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&65535|0)==(g|0))m=g;else m=g>>31&65535^65535;j=(e-m^q)-q<<16;l=j>>16;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<47){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-65536?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}function yf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<16>>16;zf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<16,m)|0)>>16;zf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function zf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Af(b,h,g,63-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-16|0;if((e|0)<(d+-17|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-47|0)}else ae(a,1,f);ae(a,c+65535&65535,16);return}function Bf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8909]|0;c[b+4588>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+65536;j=b+168|0;g=b+164|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function Cf(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Df(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ef(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Nf(d);g=0;do{c[d+172+(g*12|0)>>2]=64;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=64;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=64;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Ff(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35744;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Hf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+12|0;a:do if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(72,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40;while(0);do if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function If(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Kf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Jf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Jf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&4095|0)==(g|0))m=g;else m=g>>31&4095^4095;j=(e-m^q)-q<<20;l=j>>20;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<35){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-1048576?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}function Kf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<20>>20;Lf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<20,m)|0)>>20;Lf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f&4095;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function Lf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Mf(b,h,g,47-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-12|0;if((e|0)<(d+-13|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-43|0)}else ae(a,1,f);ae(a,c+4095&4095,12);return}function Nf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8906]|0;c[b+4588>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+4096;j=b+168|0;g=b+164|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Of(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pf(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Zf(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Rf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35716;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Tf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){e=c[w>>2]|0;d=e+1|0;c[h>>2]=d;e=e+j|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[h>>2]|0;e=c[t>>2]|0;f=0;do{c[n>>2]=c[e+(f<<2)>>2];e=c[q>>2]|0;a[d+e>>0]=a[d+(e+-1)>>0]|0;a[(c[k>>2]|0)+-1>>0]=a[c[h>>2]>>0]|0;o=0;ia(73,b|0,0);e=o;o=0;if(e&1){h=28;break c}e=c[t>>2]|0;c[e+(f<<2)>>2]=c[n>>2];d=(c[h>>2]|0)+r|0;c[h>>2]=d;c[k>>2]=(c[k>>2]|0)+r;f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){e=Na()|0;break}else if((h|0)==29){e=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function Uf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4580|0;e=c[o>>2]|0;r=b+156|0;if((c[r>>2]|0)<=0)return;p=b+4584|0;q=b+4588|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Wf(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Vf(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Vf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function Wf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[b+156>>2]|0)-e|0;k=c[b+4584>>2]|0;m=c[b+4580>>2]|0;h=a[k+(e+-1)>>0]|0;g=0;while(1){f=k+(g+e)|0;if((a[f>>0]|0)!=h<<24>>24){n=g;break}a[f>>0]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&255;h=(n|0)==(j|0);l=b+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1<(n|0))f=n;else{f=n;do{ae(b,1,1);g=c[l>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]|0;f=d[m+f>>0]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<24>>24;Xf(b,b+4564|0,f);f=f+i|0}else{m=f-i>>31|1;e=($(g-f<<24,m)|0)>>24;Xf(b,b+4552|0,e);f=($(e,m)|0)+f|0}a[h>>0]=f;b=c[l>>2]|0;c[l>>2]=(b|0)<1?0:b+-1|0;b=n+1|0;return b|0}function Xf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Yf(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Yf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function Zf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function _f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;jg(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function bg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35688;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function dg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){g=b+12|0;b:do if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(74,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41;while(0);do if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+156|0;if((c[A>>2]|0)<=0)return;B=b+4584|0;C=b+4580|0;D=b+4588|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(fg(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=gg(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=gg(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=gg(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function fg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=(c[b+156>>2]|0)-e|0;n=c[b+4584>>2]|0;o=c[b+4580>>2]|0;l=n+((e+-1|0)*3|0)|0;p=a[l>>0]|0;k=a[l+1>>0]|0;l=a[l+2>>0]|0;i=0;while(1){f=n+((i+e|0)*3|0)|0;g=f+1|0;h=f+2|0;if(!(((a[f>>0]|0)==p<<24>>24?(a[g>>0]|0)==k<<24>>24:0)&(a[h>>0]|0)==l<<24>>24))break;a[f>>0]=p;a[g>>0]=k;a[h>>0]=l;i=i+1|0;if((i|0)==(m|0)){i=m;break}}h=(i|0)==(m|0);j=b+4576|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]|0;e=m+2|0;f=a[e>>0]|0;o=o+(q*3|0)|0;q=a[o+1>>0]|0;t=a[o+2>>0]|0;o=d[o>>0]|0;h=o-(p&255)>>31|1;g=($((d[m>>0]|0)-o<<24,h)|0)>>24;s=b+4552|0;hg(b,s,g);p=q&255;q=p-(k&255)>>31|1;r=($((r&255)-p<<24,q)|0)>>24;hg(b,s,r);k=t&255;l=k-(l&255)>>31|1;f=($((f&255)-k<<24,l)|0)>>24;hg(b,s,f);p=($(r,q)|0)+p&255;b=($(f,l)|0)+k&255;a[m>>0]=($(g,h)|0)+o;a[n>>0]=p;a[e>>0]=b;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){t=m;return t|0}ae(b,1,1);t=m;return t|0}function gg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i<>1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1<>1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function hg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ig(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function jg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function kg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;wg(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function ng(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35660;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}\n function og(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function pg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;r=b+180|0;s=(c[r>>2]|0)+4|0;if((c[b+32>>2]|0)==1)p=c[b+24>>2]|0;else p=1;d=$(p<<1,s)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))q=6;if((q|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do if(!p)q=19;else{if(!(p>>>0>1073741823?(o=0,ha(178,t|0),n=o,o=0,n&1):0))q=17;if((q|0)==17?(f=p<<2,o=0,g=ka(67,f|0)|0,n=o,o=0,!(n&1)):0){c[t>>2]=g;q=g+(p<<2)|0;c[t+8>>2]=q;iw(g|0,0,f|0)|0;c[v>>2]=q;q=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((q|0)==19){j=b+12|0;b:do if((c[j>>2]|0)>0){k=b+4604|0;l=($(p,s)|0)+1|0;m=b+4608|0;n=b+92|0;h=b+4600|0;if((p|0)>0)g=0;else{f=0;while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(f&1))d=e;else{c[k>>2]=e;c[m>>2]=d}p=c[n>>2]|0;o=0;Aa(c[(c[p>>2]|0)+12>>2]|0,p|0,d|0,c[r>>2]|0,s|0);p=o;o=0;if(p&1)break;f=f+1|0;if((f|0)>=(c[j>>2]|0)){q=45;break b}}e=Na()|0;break}c:while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(g&1))d=e;else{c[k>>2]=e;c[m>>2]=d}q=c[n>>2]|0;o=0;Aa(c[(c[q>>2]|0)+12>>2]|0,q|0,d|0,c[r>>2]|0,s|0);q=o;o=0;if(q&1){q=28;break}d=c[t>>2]|0;e=c[k>>2]|0;f=0;do{c[h>>2]=c[d+(f<<2)>>2];q=c[r>>2]|0;a[e+q>>0]=a[e+(q+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[k>>2]>>0]|0;o=0;ia(75,b|0,0);q=o;o=0;if(q&1){q=36;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[h>>2];e=(c[k>>2]|0)+s|0;c[k>>2]=e;c[m>>2]=(c[m>>2]|0)+s;f=f+1|0}while((f|0)<(p|0));g=g+1|0;if((g|0)>=(c[j>>2]|0)){q=45;break b}}if((q|0)==28){e=Na()|0;break}else if((q|0)==36){e=Na()|0;break}}else q=45;while(0);do if((q|0)==45){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function qg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4604|0;e=c[o>>2]|0;r=b+180|0;if((c[r>>2]|0)<=0)return;p=b+4608|0;q=b+4612|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(sg(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=rg(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function rg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i<>1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;vg(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function sg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[b+180>>2]|0)-e|0;m=c[b+4608>>2]|0;n=c[b+4604>>2]|0;h=a[m+(e+-1)>>0]|0;k=h&255;f=b+144|0;i=0;while(1){g=m+(i+e)|0;j=(d[g>>0]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(c[f>>2]|0))break;a[g>>0]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1<(i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1<>2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1<>0]=tg(b,d[e>>0]|0,k,d[n+l>>0]|0)|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){b=l;return b|0}ae(b,1,1);b=l;return b|0}function tg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}return 0}function ug(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0>>0:0)g=1;else k=5;do if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;vg(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0;while(0);n=1<>2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function xg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function yg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function zg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Lg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Bg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Cg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Cg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(76,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Dg(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=d+4596|0;g=c[q>>2]|0;u=d+172|0;f=c[u>>2]|0;if((f|0)<=0)return;r=d+4600|0;s=d+4604|0;t=d+4592|0;l=g;j=e[g+-2>>1]|0;g=e[g>>1]|0;p=0;while(1){n=c[r>>2]|0;k=b[n+(p+-1<<1)>>1]|0;o=k&65535;i=p+1|0;h=e[l+(i<<1)>>1]|0;m=c[s>>2]|0;l=g-j|0;j=j-o|0;m=((((a[m+(h-g)>>0]|0)*9|0)+(a[m+l>>0]|0)|0)*9|0)+(a[m+j>>0]|0)|0;n=n+(p<<1)|0;if(!m){f=Gg(d,k,n,f-p|0)|0;g=f+p|0;if((g|0)!=(c[u>>2]|0)){o=Hg(d,o,e[(c[q>>2]|0)+(g<<1)>>1]|0)|0;b[(c[r>>2]|0)+(g<<1)>>1]=o;o=c[t>>2]|0;c[t>>2]=(o|0)<1?0:o+-1|0;f=f+1|0}i=f+p|0;h=c[q>>2]|0;g=e[h+(i+-1<<1)>>1]|0;h=e[h+(i<<1)>>1]|0}else{f=g-o>>31;if((f^j|0)<0)f=g;else f=o+((f^l|0)<0?0:l)|0;o=Fg(d,m,e[n>>1]|0,f,0)|0;b[(c[r>>2]|0)+(p<<1)>>1]=o}f=c[u>>2]|0;if((f|0)<=(i|0))break;l=c[q>>2]|0;j=g;g=h;p=i}return}function Eg(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+116|0;e=c[f>>2]|0;if((a[e>>0]|0)!=-1){g=b+112|0;d=c[g>>2]|0;if((d|0)<1){ge(b);d=c[g>>2]|0;e=c[f>>2]|0}b=b+108|0;f=c[b>>2]|0;c[g>>2]=d+-1;d=f<<1;c[b>>2]=d;if((a[e>>0]|0)!=-1){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}}else d=c[b+108>>2]|0;if(!d)return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}function Fg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Gg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=b-d|0;h=a+128|0;e=a+136|0;if((((g|0)>-1?g:0-g|0)|0)>(c[e>>2]|0)){b=$(Ig(a,a+4568|0)|0,d-b>>31|1)|0;f=c[e>>2]|0;g=f<<1|1;b=($(b,g)|0)+d|0;if((b|0)>=(0-f|0)){e=c[h>>2]|0;if((e+f|0)<(b|0))b=b-($(c[a+132>>2]|0,g)|0)|0}else{b=($(c[a+132>>2]|0,g)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}else{d=Ig(a,a+4580|0)|0;g=c[e>>2]|0;f=g<<1|1;b=($(f,d)|0)+b|0;if((b|0)>=(0-g|0)){e=c[h>>2]|0;if((e+g|0)<(b|0))b=b-($(c[a+132>>2]|0,f)|0)|0}else{b=($(c[a+132>>2]|0,f)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}return 0}function Ig(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Jg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=a+112|0;if((c[g>>2]|0)<16)ge(a);h=a+108|0;d=c[h>>2]|0;if((d|0)>=0)if(!(d&1073741824))if(!(d&536870912))if(!(d&268435456))if(!(d&134217728))if(!(d&67108864))if(!(d&33554432))if(!(d&16777216))if(!(d&8388608))if(!(d&4194304))if(!(d&2097152))if(!(d&1048576))if(!(d&524288))if(!(d&262144))if(!(d&131072)){f=d>>>12&16;b=f+-1|0;if(!f){b=(c[g>>2]|0)+-15|0;c[g>>2]=b;e=d<<15;c[h>>2]=e;d=b;b=15;while(1){if((d|0)<1){ge(a);f=c[h>>2]|0;d=c[g>>2]|0}else f=e;d=d+-1|0;c[g>>2]=d;e=f<<1;c[h>>2]=e;if((f|0)<0)break;else b=b+1|0}return b|0}}else b=14;else b=13;else b=12;else b=11;else b=10;else b=9;else b=8;else b=7;else b=6;else b=5;else b=4;else b=3;else b=2;else b=1;else b=0;a=b+1|0;c[g>>2]=(c[g>>2]|0)-a;c[h>>2]=d<>2]|0;if((e|0)<(d|0)){ge(b);e=c[f>>2]|0;if((e|0)<(d|0)){e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);b=o;o=0;if(b&1){b=Na()|0;La(e|0);Ya(b|0)}else lb(e|0,824,96)}}g=b+108|0;b=c[g>>2]|0;c[f>>2]=e-d;c[g>>2]=b<>>(32-d|0)|0}function Lg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function Mg(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Ng(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Og(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pg(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Rg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Zg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Tg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Tg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!(d>>>0>715827882?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;f=e+(d*6|0)|0;c[C+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[D>>2]=f;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=20;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=18;if((j|0)==18?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=20;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==20){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+6|0;c[j>>2]=e;f=f+(l*6|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*6|0)|0;e=e+((d+-1|0)*6|0)|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;g=(c[m>>2]|0)+-6|0;e=c[j>>2]|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;o=0;ia(77,a|0,0);g=o;o=0;if(g&1){j=31;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*6|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*6|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*6|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=32;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=44;break a}}if((j|0)==31){f=Na()|0;break}else if((j|0)==32){f=Na()|0;break}}else j=44;while(0);do if((j|0)==44){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function Ug(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=i;i=i+32|0;D=N+24|0;M=N+18|0;L=N+12|0;E=N+6|0;F=N;G=d+172|0;f=c[G>>2]|0;if((f|0)<=0){i=N;return}H=d+4600|0;I=d+4596|0;J=d+4604|0;K=d+4592|0;C=0;while(1){h=C+-1|0;j=c[H>>2]|0;O=c[I>>2]|0;g=C+1|0;k=e[O+(C*6|0)>>1]|0;B=c[J>>2]|0;l=e[O+(h*6|0)>>1]|0;m=k-l|0;n=e[j+(h*6|0)>>1]|0;o=l-n|0;p=((((a[B+((e[O+(g*6|0)>>1]|0)-k)>>0]|0)*9|0)+(a[B+m>>0]|0)|0)*9|0)+(a[B+o>>0]|0)|0;q=e[O+(C*6|0)+2>>1]|0;r=e[O+(h*6|0)+2>>1]|0;s=q-r|0;t=e[j+(h*6|0)+2>>1]|0;u=r-t|0;v=((((a[B+((e[O+(g*6|0)+2>>1]|0)-q)>>0]|0)*9|0)+(a[B+s>>0]|0)|0)*9|0)+(a[B+u>>0]|0)|0;w=e[O+(C*6|0)+4>>1]|0;x=e[O+(h*6|0)+4>>1]|0;y=w-x|0;z=e[j+(h*6|0)+4>>1]|0;A=x-z|0;B=((((a[B+((e[O+(g*6|0)+4>>1]|0)-w)>>0]|0)*9|0)+(a[B+y>>0]|0)|0)*9|0)+(a[B+A>>0]|0)|0;if(!(v|p|B)){g=j+(h*6|0)|0;b[L>>1]=b[g>>1]|0;b[L+2>>1]=b[g+2>>1]|0;b[L+4>>1]=b[g+4>>1]|0;b[D>>1]=b[g>>1]|0;b[D+2>>1]=b[g+2>>1]|0;b[D+4>>1]=b[g+4>>1]|0;f=Vg(d,D,j+(C*6|0)|0,f-C|0)|0;g=f+C|0;if((g|0)!=(c[G>>2]|0)){O=(c[I>>2]|0)+(g*6|0)|0;b[F>>1]=b[O>>1]|0;b[F+2>>1]=b[O+2>>1]|0;b[F+4>>1]=b[O+4>>1]|0;O=(c[H>>2]|0)+(g*6|0)|0;b[M>>1]=b[L>>1]|0;b[M+2>>1]=b[L+2>>1]|0;b[M+4>>1]=b[L+4>>1]|0;b[D>>1]=b[F>>1]|0;b[D+2>>1]=b[F+2>>1]|0;b[D+4>>1]=b[F+4>>1]|0;Wg(E,d,M,D);b[O>>1]=b[E>>1]|0;b[O+2>>1]=b[E+2>>1]|0;b[O+4>>1]=b[E+4>>1]|0;O=c[K>>2]|0;c[K>>2]=(O|0)<1?0:O+-1|0;f=f+1|0}g=f+C|0}else{h=e[j+(C*6|0)>>1]|0;f=k-n>>31;if((f^o|0)>=0)if((f^m|0)<0)f=n;else f=n-l+k|0;else f=k;k=Xg(d,p,h,f,0)|0;h=e[(c[H>>2]|0)+(C*6|0)+2>>1]|0;f=q-t>>31;if((f^u|0)>=0)if((f^s|0)<0)f=t;else f=t-r+q|0;else f=q;h=Xg(d,v,h,f,0)|0;j=e[(c[H>>2]|0)+(C*6|0)+4>>1]|0;f=w-z>>31;if((f^A|0)>=0)if((f^y|0)<0)f=z;else f=z-x+w|0;else f=w;B=Xg(d,B,j,f,0)|0;O=c[H>>2]|0;b[O+(C*6|0)>>1]=k;b[O+(C*6|0)+2>>1]=h;b[O+(C*6|0)+4>>1]=B}f=c[G>>2]|0;if((g|0)>=(f|0))break;else C=g}i=N;return}function Vg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)<=0)return h|0;i=0;do{r=f+(i*6|0)|0;b[r>>1]=b[e>>1]|0;b[r+2>>1]=b[e+2>>1]|0;b[r+4>>1]=b[e+4>>1]|0;i=i+1|0}while((i|0)!=(h|0));return h|0}function Wg(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=d+4568|0;o=Yg(d,l)|0;j=Yg(d,l)|0;l=Yg(d,l)|0;i=d+128|0;h=e[g>>1]|0;m=c[d+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(e[f>>1]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else{h=($(c[d+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&65535;h=e[g+2>>1]|0;h=($($(n,j)|0,h-(e[f+2>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&65535;h=e[g+4>>1]|0;h=($($(n,l)|0,h-(e[f+4>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){d=h;d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}d=i&~(h>>31);d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}function Xg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Yg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Zg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function _g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ah(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function bh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;jh(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function ch(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);dh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function dh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+172|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4596|0;k=$(y,x)|0;l=k+1|0;m=b+4600|0;n=(y|0)>0;p=b+160|0;q=b+168|0;r=b+164|0;s=b+156|0;t=b+88|0;u=b+4592|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(78,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;M=i;i=i+16|0;C=M+12|0;L=M+9|0;K=M+6|0;D=M+3|0;E=M;F=b+172|0;e=c[F>>2]|0;if((e|0)<=0){i=M;return}G=b+4600|0;H=b+4596|0;I=b+4604|0;J=b+4592|0;B=0;while(1){y=B+-1|0;g=c[G>>2]|0;h=g+(y*3|0)|0;N=c[H>>2]|0;f=B+1|0;j=d[N+(B*3|0)>>0]|0;A=c[I>>2]|0;k=d[N+(y*3|0)>>0]|0;l=j-k|0;m=d[h>>0]|0;n=k-m|0;o=((((a[A+((d[N+(f*3|0)>>0]|0)-j)>>0]|0)*9|0)+(a[A+l>>0]|0)|0)*9|0)+(a[A+n>>0]|0)|0;p=d[N+(B*3|0)+1>>0]|0;q=d[N+(y*3|0)+1>>0]|0;r=p-q|0;s=d[g+(y*3|0)+1>>0]|0;t=q-s|0;u=((((a[A+((d[N+(f*3|0)+1>>0]|0)-p)>>0]|0)*9|0)+(a[A+r>>0]|0)|0)*9|0)+(a[A+t>>0]|0)|0;v=d[N+(B*3|0)+2>>0]|0;w=d[N+(y*3|0)+2>>0]|0;x=v-w|0;y=d[g+(y*3|0)+2>>0]|0;z=w-y|0;A=((((a[A+((d[N+(f*3|0)+2>>0]|0)-v)>>0]|0)*9|0)+(a[A+x>>0]|0)|0)*9|0)+(a[A+z>>0]|0)|0;if(!(u|o|A)){a[K>>0]=a[h>>0]|0;a[K+1>>0]=a[h+1>>0]|0;a[K+2>>0]=a[h+2>>0]|0;a[C>>0]=a[h>>0]|0;a[C+1>>0]=a[h+1>>0]|0;a[C+2>>0]=a[h+2>>0]|0;e=fh(b,C,g+(B*3|0)|0,e-B|0)|0;f=e+B|0;if((f|0)!=(c[F>>2]|0)){N=(c[H>>2]|0)+(f*3|0)|0;a[E>>0]=a[N>>0]|0;a[E+1>>0]=a[N+1>>0]|0;a[E+2>>0]=a[N+2>>0]|0;N=c[G>>2]|0;a[L>>0]=a[K>>0]|0;a[L+1>>0]=a[K+1>>0]|0;a[L+2>>0]=a[K+2>>0]|0;a[C>>0]=a[E>>0]|0;a[C+1>>0]=a[E+1>>0]|0;a[C+2>>0]=a[E+2>>0]|0;gh(D,b,L,C);N=N+(f*3|0)|0;a[N>>0]=a[D>>0]|0;a[N+1>>0]=a[D+1>>0]|0;a[N+2>>0]=a[D+2>>0]|0;N=c[J>>2]|0;c[J>>2]=(N|0)<1?0:N+-1|0;e=e+1|0}f=e+B|0}else{g=d[g+(B*3|0)>>0]|0;e=j-m>>31;if((e^n|0)>=0)if((e^l|0)<0)e=m;else e=m-k+j|0;else e=j;j=hh(b,o,g,e,0)|0;g=d[(c[G>>2]|0)+(B*3|0)+1>>0]|0;e=p-s>>31;if((e^t|0)>=0)if((e^r|0)<0)e=s;else e=s-q+p|0;else e=p;g=hh(b,u,g,e,0)|0;h=d[(c[G>>2]|0)+(B*3|0)+2>>0]|0;e=v-y>>31;if((e^z|0)>=0)if((e^x|0)<0)e=y;else e=y-w+v|0;else e=v;A=hh(b,A,h,e,0)|0;N=(c[G>>2]|0)+(B*3|0)|0;a[N>>0]=j;a[N+1>>0]=g;a[N+2>>0]=A}e=c[F>>2]|0;if((f|0)>=(e|0))break;else B=f}i=M;return}function fh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4592|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function gh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=e+4568|0;o=ih(e,l)|0;j=ih(e,l)|0;l=ih(e,l)|0;i=e+128|0;h=d[g>>0]|0;m=c[e+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(d[f>>0]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else{h=($(c[e+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&255;h=d[g+1>>0]|0;h=($($(n,j)|0,h-(d[f+1>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&255;h=d[g+2>>0]|0;h=($($(n,l)|0,h-(d[f+2>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){e=h;e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}e=i&~(h>>31);e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}function hh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&255;return d|0}d=f&~(h>>31);d=d&255;return d|0}function ih(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function jh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function kh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function nh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;vh(d);g=0;do{c[d+164+(g*12|0)>>2]=1024;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=1024;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=1024;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function oh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);ph(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function ph(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(79,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function qh(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(sh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=rh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function rh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&65535|0)!=(f|0))f=f>>31&65535^65535;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<47){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}function sh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=th(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(uh(a,a+4556|0)|0)+f|0;else f=($(uh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function th(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function uh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(46-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,16)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function vh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8909]|0;c[b+4580>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+65536;j=b+160|0;g=b+156|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function wh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function xh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function yh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function zh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Hh(d);g=0;do{c[d+164+(g*12|0)>>2]=64;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=64;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=64;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Ah(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Bh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Bh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((j|0)==18){h=a+8|0;a:do if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(80,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42;while(0);do if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Ch(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Eh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Dh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Dh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&4095|0)!=(f|0))f=f>>31&4095^4095;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<35){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}function Eh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=Fh(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Gh(a,a+4556|0)|0)+f|0;else f=($(Gh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f&4095;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function Fh(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1<>2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Gh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(34-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,12)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Hh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8906]|0;c[b+4580>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+4096;j=b+160|0;g=b+156|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Ih(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Jh(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Lh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Th(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Mh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Nh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Nh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[D>>2]|0)+1|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}e=Na()|0;d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+1|0;c[j>>2]=e;f=f+l|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;a[e+g>>0]=a[e+(g+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[j>>2]>>0]|0;o=0;ia(81,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+x|0;c[j>>2]=e;d=(c[m>>2]|0)+x|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){e=Na()|0;break}else if((h|0)==31){e=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);i=A;return}while(0);d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}function Oh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4572|0;e=c[o>>2]|0;r=b+148|0;if((c[r>>2]|0)<=0)return;p=b+4576|0;q=b+4580|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Qh(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Ph(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Ph(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function Qh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=b+4576|0;h=c[i>>2]|0;f=a[h+(e+-1)>>0]|0;j=b+148|0;h=Rh(b,f,h+e|0,(c[j>>2]|0)-e|0)|0;g=h+e|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&255;e=d[(c[b+4572>>2]|0)+g>>0]|0;j=f-e|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Sh(b,b+4556|0)|0)+f|0;else f=($(Sh(b,b+4544|0)|0,e-f>>31|1)|0)+e|0;a[(c[i>>2]|0)+g>>0]=f;j=b+4568|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;j=h+1|0;return j|0}function Rh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;iw(e|0,d|0,g|0)|0;return g|0}function Sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8900]|0;c[b+4580>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+256;j=b+160|0;g=b+156|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function Uh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Vh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Xh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;di(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Yh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Zh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Zh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}while(0);if((h|0)==19){h=b+8|0;b:do if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(82,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43;while(0);do if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function _h(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+148|0;if((c[A>>2]|0)<=0)return;B=b+4576|0;C=b+4572|0;D=b+4580|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=($h(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=ai(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=ai(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=ai(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function $h(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+16|0;n=l+3|0;o=l;h=b+4576|0;e=c[h>>2]|0;f=e+((d+-1|0)*3|0)|0;j=a[f>>0]|0;k=a[f+1>>0]|0;f=a[f+2>>0]|0;a[o>>0]=j;a[o+1>>0]=k;a[o+2>>0]=f;m=b+148|0;g=(c[m>>2]|0)-d|0;a[n>>0]=a[o>>0]|0;a[n+1>>0]=a[o+1>>0]|0;a[n+2>>0]=a[o+2>>0]|0;g=bi(b,n,e+(d*3|0)|0,g)|0;e=g+d|0;if((e|0)==(c[m>>2]|0)){o=g;i=l;return o|0}n=(c[b+4572>>2]|0)+(e*3|0)|0;d=a[n>>0]|0;m=a[n+1>>0]|0;n=a[n+2>>0]|0;o=c[h>>2]|0;p=b+4544|0;h=ci(b,p)|0;q=ci(b,p)|0;d=d&255;m=m&255;m=($(m-(k&255)>>31|1,q)|0)+m&255;n=n&255;n=($(n-(f&255)>>31|1,ci(b,p)|0)|0)+n&255;o=o+(e*3|0)|0;a[o>>0]=($(d-(j&255)>>31|1,h)|0)+d;a[o+1>>0]=m;a[o+2>>0]=n;o=b+4568|0;n=c[o>>2]|0;c[o>>2]=(n|0)<1?0:n+-1|0;o=g+1|0;i=l;return o|0}function ai(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j<>2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function bi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function ci(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f<>2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}\n function Lp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+128|0;h=n;q=n+116|0;r=n+104|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,0,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(3,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=Uu(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function Mp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+240|0;h=n+8|0;a=n;q=n+204|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,0,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,23,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(3,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=Uu(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function Np(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+312|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+316|0;t=z+80|0;k=z+84|0;y=z+76|0;x=z+72|0;v=z+68|0;w=z+64|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58898,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,c[q>>2]=c[d+8>>2],h[q+8>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Op(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=i;i=i+16|0;z=y;x=Is(j,44212)|0;v=Is(j,44368)|0;Cb[c[(c[v>>2]|0)+20>>2]&127](z,v);c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,j|0)|0;w=o;o=0;if(w&1)u=8;else{m=c[h>>2]|0;c[h>>2]=m+4;c[m>>2]=j;m=b+1|0;u=10}break}default:{m=b;u=10}}a:do if((u|0)==10){w=e;b:do if((w-m|0)>1?(a[m>>0]|0)==48:0){k=m+1|0;switch(a[k>>0]|0){case 88:case 120:break;default:{u=11;break b}}o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,48)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;m=m+2|0;o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[k>>0]|0)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;if(m>>>0>>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(39,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break b}j=j+1|0;if(j>>>0>=e>>>0){t=m;break b}}j=Na()|0;break a}else{t=m;j=m}}else u=11;while(0);c:do if((u|0)==11)if(m>>>0>>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(40,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break c}j=j+1|0;if(j>>>0>=e>>>0){t=m;break c}}j=Na()|0;break a}else{t=m;j=m}while(0);r=a[z>>0]|0;s=z+4|0;if(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0){if((t|0)!=(j|0)?(n=j+-1|0,t>>>0>>0):0){l=t;k=n;do{r=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=r;l=l+1|0;k=k+-1|0}while(l>>>0>>0)}o=0;n=ka(c[(c[v>>2]|0)+16>>2]|0,v|0)|0;r=o;o=0;if(r&1){u=8;break}p=z+8|0;q=z+1|0;d:do if(t>>>0>>0){k=0;l=0;r=t;while(1){m=a[((a[z>>0]&1)==0?q:c[p>>2]|0)+l>>0]|0;if(m<<24>>24>0&(k|0)==(m<<24>>24|0)){k=c[h>>2]|0;c[h>>2]=k+4;c[k>>2]=n;k=a[z>>0]|0;m=0;l=(l>>>0<(((k&1)==0?(k&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+l|0}else m=k;o=0;k=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[r>>0]|0)|0;A=o;o=0;if(A&1)break;A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=k;r=r+1|0;if(r>>>0>=j>>>0)break d;else k=m+1|0}j=Na()|0;break a}while(0);k=f+(t-b<<2)|0;m=c[h>>2]|0;if((k|0)!=(m|0)){l=m+-4|0;if(k>>>0>>0){do{A=c[k>>2]|0;c[k>>2]=c[l>>2];c[l>>2]=A;k=k+4|0;l=l+-4|0}while(k>>>0>>0);n=x;k=m}else{n=x;k=m}}else n=x}else{o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,t|0,j|0,c[h>>2]|0)|0;A=o;o=0;if(A&1){u=8;break}k=(c[h>>2]|0)+(j-t<<2)|0;c[h>>2]=k;n=x}e:do if(j>>>0>>0){while(1){k=a[j>>0]|0;if(k<<24>>24==46){l=j;break}o=0;l=ra(c[(c[n>>2]|0)+44>>2]|0,x|0,k|0)|0;A=o;o=0;if(A&1){u=4;break}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=l;j=j+1|0;if(j>>>0>=e>>>0)break e}if((u|0)==4){j=Na()|0;break a}o=0;j=ka(c[(c[v>>2]|0)+12>>2]|0,v|0)|0;A=o;o=0;if(A&1){u=8;break a}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=j;j=l+1|0}while(0);o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,j|0,e|0,k|0)|0;A=o;o=0;if(A&1)u=8;else{A=(c[h>>2]|0)+(w-j<<2)|0;c[h>>2]=A;c[g>>2]=(d|0)==(e|0)?A:f+(d-b<<2)|0;Im(z);i=y;return}}while(0);if((u|0)==8)j=Na()|0;Im(z);Ya(j|0)}function Pp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+304|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+308|0;t=z+72|0;k=z+76|0;y=z+68|0;x=z+64|0;v=z+60|0;w=z+56|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58899,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,h[q>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Qp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+192|0;l=q;b=q+180|0;n=q+160|0;p=q+12|0;k=q+8|0;m=q+4|0;a[b>>0]=a[58901]|0;a[b+1>>0]=a[58902]|0;a[b+2>>0]=a[58903]|0;a[b+3>>0]=a[58904]|0;a[b+4>>0]=a[58905]|0;a[b+5>>0]=a[58906]|0;h=Xo()|0;c[l>>2]=g;b=Su(n,20,h,b,l)|0;g=n+b|0;h=vp(n,g,e)|0;j=jn(e)|0;c[k>>2]=j;o=0;k=ra(37,k|0,44212)|0;r=o;o=0;if(r&1){r=Na()|0;pm(j)|0;Ya(r|0)}else{pm(j)|0;Pb[c[(c[k>>2]|0)+48>>2]&31](k,n,g,p)|0;r=p+(b<<2)|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];r=Uu(l,p,(h|0)==(g|0)?r:p+(h-n<<2)|0,r,e,f)|0;i=q;return r|0}return 0}function Rp(e,f,g,h,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+32|0;w=C+16|0;v=C+12|0;z=C+8|0;x=C+4|0;y=C;n=jn(h)|0;c[z>>2]=n;o=0;z=ra(37,z|0,44220)|0;u=o;o=0;if(u&1){C=Na()|0;pm(n)|0;Ya(C|0)}pm(n)|0;c[j>>2]=0;u=z+8|0;n=c[f>>2]|0;a:do if((l|0)!=(m|0)){b:while(1){p=n;if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0;p=0}}else n=0;s=(n|0)==0;r=c[g>>2]|0;q=r;do if(r){if((c[r+12>>2]|0)==(c[r+16>>2]|0)?(Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)==-1:0){c[g>>2]=0;q=0;B=12;break}if(!s){B=13;break b}}else B=12;while(0);if((B|0)==12){B=0;if(s){B=13;break}else r=0}c:do if((Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[l>>0]|0,0)|0)<<24>>24==37){r=l+1|0;if((r|0)==(m|0)){B=17;break b}t=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[r>>0]|0,0)|0;switch(t<<24>>24){case 48:case 69:{s=l+2|0;if((s|0)==(m|0)){B=20;break b}l=r;r=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[s>>0]|0,0)|0;n=t;break}default:{r=t;n=0}}t=c[(c[e>>2]|0)+36>>2]|0;c[x>>2]=p;c[y>>2]=q;c[v>>2]=c[x>>2];c[w>>2]=c[y>>2];c[f>>2]=Sb[t&15](e,v,w,h,j,k,r,n)|0;l=l+2|0}else{p=a[l>>0]|0;if(p<<24>>24>-1?(A=c[u>>2]|0,(b[A+(p<<24>>24<<1)>>1]&8192)!=0):0){do{l=l+1|0;if((l|0)==(m|0)){l=m;break}p=a[l>>0]|0;if(p<<24>>24<=-1)break}while((b[A+(p<<24>>24<<1)>>1]&8192)!=0);p=r;while(1){if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;q=(n|0)==0;do if(r){if((c[r+12>>2]|0)!=(c[r+16>>2]|0))if(q){t=p;break}else break c;if((Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)!=-1)if(q^(p|0)==0){t=p;r=p;break}else break c;else{c[g>>2]=0;p=0;B=39;break}}else B=39;while(0);if((B|0)==39){B=0;if(q)break c;else{t=p;r=0}}q=n+12|0;p=c[q>>2]|0;s=n+16|0;if((p|0)==(c[s>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;if((p&255)<<24>>24<=-1)break c;if(!(b[(c[u>>2]|0)+(p<<24>>24<<1)>>1]&8192))break c;p=c[q>>2]|0;if((p|0)==(c[s>>2]|0)){Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;p=t;continue}else{c[q>>2]=p+1;p=t;continue}}}q=n+12|0;p=c[q>>2]|0;r=n+16|0;if((p|0)==(c[r>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;t=Lb[c[(c[z>>2]|0)+12>>2]&63](z,p&255)|0;if(t<<24>>24!=(Lb[c[(c[z>>2]|0)+12>>2]&63](z,a[l>>0]|0)|0)<<24>>24){B=57;break b}p=c[q>>2]|0;if((p|0)==(c[r>>2]|0))Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;else c[q>>2]=p+1;l=l+1|0}while(0);n=c[f>>2]|0;if(!((l|0)!=(m|0)&(c[j>>2]|0)==0))break a}if((B|0)==13){c[j>>2]=4;break}else if((B|0)==17){c[j>>2]=4;break}else if((B|0)==20){c[j>>2]=4;break}else if((B|0)==57){c[j>>2]=4;n=c[f>>2]|0;break}}while(0);if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;l=(n|0)==0;p=c[g>>2]|0;do if(p){if((c[p+12>>2]|0)==(c[p+16>>2]|0)?(Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1:0){c[g>>2]=0;B=67;break}if(!l)B=68}else B=67;while(0);if((B|0)==67?l:0)B=68;if((B|0)==68)c[j>>2]=c[j>>2]|2;i=C;return n|0}function Sp(a){a=a|0;return}function Tp(a){a=a|0;cj(a);return}function Up(a){a=a|0;return 2}function Vp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Rp(a,k,j,e,f,g,58907,58915)|0;i=h;return a|0}function Wp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;o=b+8|0;o=Eb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];e=a[o>>0]|0;p=(e&1)==0;d=p?o+1|0:c[o+8>>2]|0;e=d+(p?(e&255)>>>1:c[o+4>>2]|0)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=Rp(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function Xp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];Yp(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function Yp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function Zp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];_p(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function _p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function $p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];aq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function aq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function bq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44220)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];Yp(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];_p(b,h+16|0,d,l,g,N);V=28;break}case 99:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+12>>2]&127](V)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];cq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=Rp(b,k,l,f,g,h,58915,58923)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=Rp(b,k,l,f,g,h,58923,58931)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];dq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];eq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];fq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];gq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];hq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];iq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];jq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=Rp(b,k,l,f,g,h,58931,58942)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=Rp(b,k,l,f,g,h,58942,58947)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];kq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=Rp(b,k,l,f,g,h,58947,58955)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];lq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+24>>2]&127](V)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];aq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];mq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];nq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function hq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function iq(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=h+8|0;a:while(1){h=c[e>>2]|0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0;while(0);h=(h|0)==0;a=c[f>>2]|0;do if(a){if((c[a+12>>2]|0)!=(c[a+16>>2]|0))if(h)break;else break a;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)!=-1)if(h)break;else break a;else{c[f>>2]=0;k=12;break}}else k=12;while(0);if((k|0)==12){k=0;if(h){a=0;break}else a=0}h=c[e>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=d[i>>0]|0;if((h&255)<<24>>24<=-1)break;if(!(b[(c[j>>2]|0)+(h<<24>>24<<1)>>1]&8192))break;h=c[e>>2]|0;a=h+12|0;i=c[a>>2]|0;if((i|0)==(c[h+16>>2]|0)){Eb[c[(c[h>>2]|0)+40>>2]&127](h)|0;continue}else{c[a>>2]=i+1;continue}}h=c[e>>2]|0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0;while(0);h=(h|0)==0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[f>>2]=0;k=32;break}if(!h)k=33}else k=32;while(0);if((k|0)==32?h:0)k=33;if((k|0)==33)c[g>>2]=c[g>>2]|2;return}function jq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=xu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4;while(0);i=n;return}function kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function mq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function nq(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a=c[b>>2]|0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}}else a=0;while(0);h=(a|0)==0;a=c[e>>2]|0;do if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[e>>2]=0;j=11;break}if(h){i=a;j=13}else j=12}else j=11;while(0);if((j|0)==11)if(h)j=12;else{i=0;j=13}a:do if((j|0)==12)c[f>>2]=c[f>>2]|6;else if((j|0)==13){a=c[b>>2]|0;h=c[a+12>>2]|0;if((h|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=d[h>>0]|0;if((Gb[c[(c[g>>2]|0)+36>>2]&63](g,a&255,0)|0)<<24>>24!=37){c[f>>2]=c[f>>2]|4;break}a=c[b>>2]|0;h=a+12|0;g=c[h>>2]|0;if((g|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)a=0;else j=21}else{c[h>>2]=g+1;j=21}do if((j|0)==21)if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}while(0);a=(a|0)==0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0)?(Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1:0){c[e>>2]=0;j=30;break}if(a)break a}else j=30;while(0);if((j|0)==30?!a:0)break;c[f>>2]=c[f>>2]|2}while(0);return}function oq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=i;i=i+32|0;s=x+16|0;r=x+12|0;v=x+8|0;t=x+4|0;u=x;k=jn(e)|0;c[v>>2]=k;o=0;v=ra(37,v|0,44212)|0;q=o;o=0;if(q&1){x=Na()|0;pm(k)|0;Ya(x|0)}pm(k)|0;c[f>>2]=0;k=c[b>>2]|0;a:do if((h|0)!=(j|0)){b:while(1){m=k;if(k){l=c[k+12>>2]|0;if((l|0)==(c[k+16>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if((l|0)==-1){c[b>>2]=0;k=0;p=1;q=0}else{p=0;q=m}}else{k=0;p=1;q=m}n=c[d>>2]|0;l=n;do if(n){m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0))m=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(p)break;else{w=17;break b}else{c[d>>2]=0;l=0;w=15;break}}else w=15;while(0);if((w|0)==15){w=0;if(p){w=17;break}else n=0}c:do if((Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[h>>2]|0,0)|0)<<24>>24==37){m=h+4|0;if((m|0)==(j|0)){w=21;break b}p=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[m>>2]|0,0)|0;switch(p<<24>>24){case 48:case 69:{n=h+8|0;if((n|0)==(j|0)){w=24;break b}h=m;m=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[n>>2]|0,0)|0;k=p;break}default:{m=p;k=0}}p=c[(c[a>>2]|0)+36>>2]|0;c[t>>2]=q;c[u>>2]=l;c[r>>2]=c[t>>2];c[s>>2]=c[u>>2];c[b>>2]=Sb[p&15](a,r,s,e,f,g,m,k)|0;h=h+8|0}else{if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0)){m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;q=Lb[c[(c[v>>2]|0)+28>>2]&63](v,l)|0;if((q|0)!=(Lb[c[(c[v>>2]|0)+28>>2]&63](v,c[h>>2]|0)|0)){w=61;break b}l=c[m>>2]|0;if((l|0)==(c[n>>2]|0))Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;else c[m>>2]=l+4;h=h+4|0;break}do{h=h+4|0;if((h|0)==(j|0)){h=j;break}}while(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0);l=n;p=n;while(1){if(k){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0))m=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else m=c[m>>2]|0;if((m|0)==-1){c[b>>2]=0;n=1;k=0}else n=0}else{n=1;k=0}do if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0))m=Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(n^(l|0)==0){q=l;p=l;break}else break c;else{c[d>>2]=0;l=0;w=44;break}}else w=44;while(0);if((w|0)==44){w=0;if(n)break c;else{q=l;p=0}}m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,l)|0))break c;l=c[m>>2]|0;if((l|0)==(c[n>>2]|0)){Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;l=q;continue}else{c[m>>2]=l+4;l=q;continue}}}while(0);k=c[b>>2]|0;if(!((h|0)!=(j|0)&(c[f>>2]|0)==0))break a}if((w|0)==17){c[f>>2]=4;break}else if((w|0)==21){c[f>>2]=4;break}else if((w|0)==24){c[f>>2]=4;break}else if((w|0)==61){c[f>>2]=4;k=c[b>>2]|0;break}}while(0);if(k){h=c[k+12>>2]|0;if((h|0)==(c[k+16>>2]|0))h=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else h=c[h>>2]|0;if((h|0)==-1){c[b>>2]=0;k=0;m=1}else m=0}else{k=0;m=1}h=c[d>>2]|0;do if(h){l=c[h+12>>2]|0;if((l|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=c[l>>2]|0;if((h|0)!=-1)if(m)break;else{w=76;break}else{c[d>>2]=0;w=74;break}}else w=74;while(0);if((w|0)==74?m:0)w=76;if((w|0)==76)c[f>>2]=c[f>>2]|2;i=x;return k|0}function pq(a){a=a|0;return}function qq(a){a=a|0;cj(a);return}function rq(a){a=a|0;return 2}function sq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=oq(a,k,j,e,f,g,44788,44820)|0;i=h;return a|0}function tq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;q=b+8|0;q=Eb[c[(c[q>>2]|0)+20>>2]&127](q)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];o=a[q>>0]|0;p=(o&1)==0;e=q+4|0;d=p?e:c[q+8>>2]|0;e=d+((p?(o&255)>>>1:c[e>>2]|0)<<2)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=oq(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function uq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];vq(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function wq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];xq(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function yq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];zq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function zq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function Aq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44212)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];vq(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];xq(b,h+16|0,d,l,g,N);V=28;break}case 99:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+12>>2]&127](W)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];Bq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=oq(b,k,l,f,g,h,44820,44852)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=oq(b,k,l,f,g,h,44852,44884)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];Cq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];Dq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];Eq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];Fq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];Gq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];Hq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];Iq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=oq(b,k,l,f,g,h,44884,44928)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=oq(b,k,l,f,g,h,44928,44948)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];Jq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=oq(b,k,l,f,g,h,44948,44980)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];Kq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+24>>2]&127](W)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];zq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];Lq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];Mq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function Bq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function Gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Hq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:while(1){a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){h=g;break}else{h=g;break a}else{c[d>>2]=0;i=15;break}}else i=15;while(0);if((i|0)==15){i=0;if(h){h=0;break}else h=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if(!(Gb[c[(c[f>>2]|0)+12>>2]&63](f,8192,a)|0))break;a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;continue}else{c[g>>2]=h+4;continue}}a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))a=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break;else{i=39;break}else{c[d>>2]=0;i=37;break}}else i=37;while(0);if((i|0)==37?g:0)i=39;if((i|0)==39)c[e>>2]=c[e>>2]|2;return}function Iq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=Iu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4;while(0);i=n;return}function Jq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function Mq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){i=g;j=17;break}else{j=16;break}else{c[d>>2]=0;j=14;break}}else j=14;while(0);if((j|0)==14)if(h)j=16;else{i=0;j=17}a:do if((j|0)==16)c[e>>2]=c[e>>2]|6;else if((j|0)==17){a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((Gb[c[(c[f>>2]|0)+52>>2]&63](f,a,0)|0)<<24>>24!=37){c[e>>2]=c[e>>2]|4;break}a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)g=1;else j=25}else{c[g>>2]=h+4;j=25}do if((j|0)==25){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}while(0);do if(i){a=c[i+12>>2]|0;if((a|0)==(c[i+16>>2]|0))a=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break a;else break;else{c[d>>2]=0;j=37;break}}else j=37;while(0);if((j|0)==37?!g:0)break;c[e>>2]=c[e>>2]|2}while(0);return}function Nq(a){a=a|0;Oq(a+8|0);return}function Oq(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;o=0;d=ua(3)|0;e=o;o=0;do if(!(e&1)){if((b|0)!=(d|0)?(o=0,ha(188,c[a>>2]|0),e=o,o=0,e&1):0)break;return}while(0);e=Na(0)|0;ec(e)}function Pq(a){a=a|0;Oq(a+8|0);cj(a);return}function Qq(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;l=i;i=i+112|0;k=l+4|0;e=l;c[e>>2]=k+100;Rq(b+8|0,k,e,g,h,j);g=c[e>>2]|0;e=c[d>>2]|0;if((k|0)!=(g|0))do{j=a[k>>0]|0;do if(e){f=e+24|0;h=c[f>>2]|0;if((h|0)==(c[e+28>>2]|0)){d=(Lb[c[(c[e>>2]|0)+52>>2]&63](e,j&255)|0)==-1;e=d?0:e;break}else{c[f>>2]=h+1;a[h>>0]=j;break}}else e=0;while(0);k=k+1|0}while((k|0)!=(g|0));i=l;return e|0}function Rq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;a[l>>0]=37;j=l+1|0;a[j>>0]=g;k=l+2|0;a[k>>0]=h;a[l+3>>0]=0;if(h<<24>>24){a[j>>0]=h;a[k>>0]=g}c[e>>2]=d+(Ra(d|0,(c[e>>2]|0)-d|0,l|0,f|0,c[b>>2]|0)|0);i=m;return}function Sq(a){a=a|0;Oq(a+8|0);return}function Tq(a){a=a|0;Oq(a+8|0);cj(a);return}function Uq(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0;j=i;i=i+416|0;e=j+8|0;d=j;c[d>>2]=e+400;Vq(a+8|0,e,d,f,g,h);a=c[d>>2]|0;d=c[b>>2]|0;if((e|0)!=(a|0)){f=e;do{e=c[f>>2]|0;if(!d)d=0;else{g=d+24|0;h=c[g>>2]|0;if((h|0)==(c[d+28>>2]|0))e=Lb[c[(c[d>>2]|0)+52>>2]&63](d,e)|0;else{c[g>>2]=h+4;c[h>>2]=e}d=(e|0)==-1?0:d}f=f+4|0}while((f|0)!=(a|0))}i=j;return d|0}function Vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+128|0;l=h+16|0;m=h+12|0;j=h;k=h+8|0;c[m>>2]=l+100;Rq(a,l,m,e,f,g);f=j;c[f>>2]=0;c[f+4>>2]=0;c[k>>2]=l;f=(c[d>>2]|0)-b>>2;g=qk(c[a>>2]|0)|0;o=0;f=va(18,b|0,k|0,f|0,j|0)|0;a=o;o=0;if(a&1){f=Na()|0;if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}Ya(f|0)}if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}if((f|0)==-1)Rr(58955);else{c[d>>2]=b+(f<<2);i=h;return}}function Wq(a){a=a|0;return}function Xq(a){a=a|0;cj(a);return}function Yq(a){a=a|0;return 127}function Zq(a){a=a|0;return 127}function _q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function $q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function ar(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function br(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function cr(a){a=a|0;return 0}function dr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function er(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function fr(a){a=a|0;return}function gr(a){a=a|0;cj(a);return}function hr(a){a=a|0;return 127}function ir(a){a=a|0;return 127}function jr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function kr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function lr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function mr(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function nr(a){a=a|0;return 0}function or(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function pr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function qr(a){a=a|0;return}function rr(a){a=a|0;cj(a);return}function sr(a){a=a|0;return 2147483647}function tr(a){a=a|0;return 2147483647}function ur(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function vr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function wr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function xr(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function yr(a){a=a|0;return 0}function zr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ar(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Br(a){a=a|0;return}function Cr(a){a=a|0;cj(a);return}function Dr(a){a=a|0;return 2147483647}function Er(a){a=a|0;return 2147483647}function Fr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Gr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Hr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Ir(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function Jr(a){a=a|0;return 0}function Kr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Lr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Mr(a){a=a|0;return}function Nr(a){a=a|0;cj(a);return}function Or(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=i;i=i+240|0;z=B+24|0;A=B;b=B+136|0;D=B+16|0;y=B+12|0;C=B+8|0;p=B+134|0;l=B+4|0;x=B+124|0;c[D>>2]=b;E=D+4|0;c[E>>2]=189;m=b+100|0;o=0;k=ka(68,g|0)|0;w=o;o=0;if(!(w&1)){c[C>>2]=k;o=0;b=ra(37,C|0,44220)|0;w=o;o=0;a:do if(!(w&1)?(a[p>>0]=0,c[l>>2]=c[e>>2],n=c[g+4>>2]|0,o=0,c[z>>2]=c[l>>2],n=la(1,d|0,z|0,f|0,C|0,n|0,h|0,p|0,b|0,D|0,y|0,m|0)|0,w=o,o=0,!(w&1)):0){b:do if(n){o=0;va(c[(c[b>>2]|0)+32>>2]|0,b|0,58976,58986,x|0)|0;w=o;o=0;if(w&1){G=10;break a}l=c[y>>2]|0;m=c[D>>2]|0;b=l-m|0;if((b|0)>98){b=Fl(b+2|0)|0;k=b;if(!b){o=0;xa(6);w=o;o=0;if(!(w&1)){b=0;G=13}}else G=13}else{k=0;b=z;G=13}do if((G|0)==13){if(a[p>>0]|0){a[b>>0]=45;b=b+1|0}v=x+10|0;w=x;if(m>>>0>>0){n=x+1|0;f=n+1|0;g=f+1|0;p=g+1|0;q=p+1|0;r=q+1|0;s=r+1|0;t=s+1|0;u=t+1|0;do{l=a[m>>0]|0;do if((a[x>>0]|0)!=l<<24>>24)if((a[n>>0]|0)!=l<<24>>24)if((a[f>>0]|0)!=l<<24>>24)if((a[g>>0]|0)!=l<<24>>24)if((a[p>>0]|0)==l<<24>>24)l=p;else{if((a[q>>0]|0)==l<<24>>24){l=q;break}if((a[r>>0]|0)==l<<24>>24){l=r;break}if((a[s>>0]|0)==l<<24>>24){l=s;break}if((a[t>>0]|0)==l<<24>>24){l=t;break}l=(a[u>>0]|0)==l<<24>>24?u:v}else l=g;else l=f;else l=n;else l=x;while(0);a[b>>0]=a[58976+(l-w)>>0]|0;m=m+1|0;b=b+1|0}while(m>>>0<(c[y>>2]|0)>>>0)}a[b>>0]=0;c[A>>2]=j;if(($k(z,58987,A)|0)!=1?(o=0,ha(190,58991),j=o,o=0,j&1):0)break;if(k)Gl(k);break b}while(0);b=Na()|0;if(!k){l=b;k=D;break a}Gl(k);l=b;k=D;break a}while(0);b=c[d>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}if((b|0)==-1){c[d>>2]=0;b=0;break}else{b=c[d>>2]|0;break}}}else b=0;while(0);k=(b|0)==0;b=c[e>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}if((b|0)==-1){c[e>>2]=0;G=37;break}}if(!k)G=38}else G=37;while(0);if((G|0)==37?k:0)G=38;if((G|0)==38)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(c[C>>2]|0)|0;b=c[D>>2]|0;c[D>>2]=0;if((b|0)!=0?(o=0,ha(c[E>>2]|0,b|0),G=o,o=0,G&1):0){G=Na(0)|0;ec(G)}i=B;return k|0}else G=10;while(0);if((G|0)==10){l=Na()|0;k=D}pm(c[C>>2]|0)|0;b=c[k>>2]|0;c[k>>2]=0;if(!b)F=l;else{k=c[E>>2]|0;G=45}}else{l=Na()|0;c[D>>2]=0;k=189;G=45}if((G|0)==45){o=0;ha(k|0,b|0);G=o;o=0;if(G&1){G=Na(0)|0;ec(G)}else F=l}Ya(F|0);return 0}function Pr(a){a=a|0;return}function Qr(e,f,g,h,j,k,l,m,n,p,q){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|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,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;ba=i;i=i+512|0;P=ba+88|0;u=ba+96|0;da=ba+80|0;T=ba+72|0;S=ba+68|0;U=ba+500|0;Q=ba+497|0;V=ba+496|0;Y=ba+56|0;aa=ba+44|0;_=ba+32|0;Z=ba+20|0;$=ba+8|0;R=ba+4|0;X=ba;c[P>>2]=q;c[da>>2]=u;ca=da+4|0;c[ca>>2]=189;c[T>>2]=u;c[S>>2]=u+400;c[Y>>2]=0;c[Y+4>>2]=0;c[Y+8>>2]=0;c[aa>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[_>>2]=0;c[_+4>>2]=0;c[_+8>>2]=0;c[Z>>2]=0;c[Z+4>>2]=0;c[Z+8>>2]=0;c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;o=0;qa(1,g|0,h|0,U|0,Q|0,V|0,Y|0,aa|0,_|0,Z|0,R|0);O=o;o=0;a:do if(O&1)m=Na()|0;else{c[p>>2]=c[n>>2];I=m+8|0;J=_+4|0;K=Z+4|0;L=Z+8|0;M=Z+1|0;N=_+8|0;O=_+1|0;z=(j&512|0)!=0;A=aa+8|0;B=aa+1|0;C=aa+4|0;D=$+4|0;E=$+8|0;F=$+1|0;G=U+3|0;H=Y+4|0;y=0;t=0;b:while(1){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);q=(q|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(q){x=m;break}else{W=235;break b}o=0;g=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=24;break b}if((g|0)!=-1)if(q){x=m;break}else{W=235;break b}else{c[f>>2]=0;W=15;break}}else W=15;while(0);if((W|0)==15){W=0;if(q){W=235;break}else x=0}c:do switch(a[U+y>>0]|0){case 1:{if((y|0)!=3){q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=24;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24<=-1){W=40;break b}if(!(b[(c[I>>2]|0)+(q<<24>>24<<1)>>1]&8192)){W=40;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=24;break b}}else{c[m>>2]=g+1;q=d[g>>0]|0}o=0;ia(67,$|0,q&255|0);W=o;o=0;if(W&1){W=24;break b}else{q=x;h=x;W=42}}break}case 0:{if((y|0)!=3){q=x;h=x;W=42}break}case 3:{m=a[_>>0]|0;q=(m&1)==0?(m&255)>>>1:c[J>>2]|0;g=a[Z>>0]|0;h=(g&1)==0?(g&255)>>>1:c[K>>2]|0;if((q|0)!=(0-h|0)){if(!q){q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}m=a[Z>>0]|0}else{q=d[m>>0]|0;m=g}if((q&255)<<24>>24!=(a[((m&1)==0?M:c[L>>2]|0)>>0]|0))break c;q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;a[l>>0]=1;x=a[Z>>0]|0;t=((x&1)==0?(x&255)>>>1:c[K>>2]|0)>>>0>1?Z:t;break c}j=c[e>>2]|0;r=c[j+12>>2]|0;g=c[j+16>>2]|0;q=(r|0)==(g|0);if(!h){if(q){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}m=a[_>>0]|0}else q=d[r>>0]|0;if((q&255)<<24>>24!=(a[((m&1)==0?O:c[N>>2]|0)>>0]|0)){a[l>>0]=1;break c}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;x=a[_>>0]|0;t=((x&1)==0?(x&255)>>>1:c[J>>2]|0)>>>0>1?_:t;break c}if(q){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}g=c[e>>2]|0;m=a[_>>0]|0;j=g;r=c[g+12>>2]|0;g=c[g+16>>2]|0}else q=d[r>>0]|0;h=j+12|0;g=(r|0)==(g|0);if((q&255)<<24>>24==(a[((m&1)==0?O:c[N>>2]|0)>>0]|0)){if(g){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[h>>2]=r+1;x=a[_>>0]|0;t=((x&1)==0?(x&255)>>>1:c[J>>2]|0)>>>0>1?_:t;break c}if(g){o=0;q=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=24;break b}}else q=d[r>>0]|0;if((q&255)<<24>>24!=(a[((a[Z>>0]&1)==0?M:c[L>>2]|0)>>0]|0)){W=104;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;a[l>>0]=1;x=a[Z>>0]|0;t=((x&1)==0?(x&255)>>>1:c[K>>2]|0)>>>0>1?Z:t}break}case 2:{if(!(y>>>0<2|(t|0)!=0)?!(z|(y|0)==2&(a[G>>0]|0)!=0):0){t=0;break c}v=a[aa>>0]|0;q=(v&1)==0;w=c[A>>2]|0;g=q?B:w;s=g;d:do if((y|0)!=0?(d[U+(y+-1)>>0]|0)<2:0){r=q?(v&255)>>>1:c[C>>2]|0;h=g+r|0;j=c[I>>2]|0;e:do if(!r)m=s;else{r=g;m=s;do{q=a[r>>0]|0;if(q<<24>>24<=-1)break e;if(!(b[j+(q<<24>>24<<1)>>1]&8192))break e;r=r+1|0;m=r}while((r|0)!=(h|0))}while(0);h=m-s|0;j=a[$>>0]|0;q=(j&1)==0;j=q?(j&255)>>>1:c[D>>2]|0;if(j>>>0>=h>>>0){q=q?F:c[E>>2]|0;r=q+j|0;if((m|0)!=(s|0)){q=q+(j-h)|0;while(1){if((a[q>>0]|0)!=(a[g>>0]|0)){m=s;break d}q=q+1|0;if((q|0)==(r|0))break;else g=g+1|0}}}else m=s}else m=s;while(0);q=(v&1)==0;q=(q?B:w)+(q?(v&255)>>>1:c[C>>2]|0)|0;f:do if((m|0)!=(q|0)){j=x;h=x;q=m;while(1){m=c[e>>2]|0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=21;break b}if((m|0)==-1){c[e>>2]=0;m=0;break}else{m=c[e>>2]|0;break}}}else m=0;while(0);g=(m|0)==0;do if(h){if((c[h+12>>2]|0)!=(c[h+16>>2]|0))if(g){m=j;r=h;break}else break f;o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=21;break b}if((m|0)!=-1)if(g^(j|0)==0){m=j;r=j;break}else break f;else{c[f>>2]=0;m=0;W=131;break}}else{m=j;W=131}while(0);if((W|0)==131){W=0;if(g)break f;else r=0}g=c[e>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=21;break b}}else g=d[h>>0]|0;if((g&255)<<24>>24!=(a[q>>0]|0))break f;g=c[e>>2]|0;h=g+12|0;j=c[h>>2]|0;if((j|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=21;break b}}else c[h>>2]=j+1;q=q+1|0;g=a[aa>>0]|0;x=(g&1)==0;g=(x?B:c[A>>2]|0)+(x?(g&255)>>>1:c[C>>2]|0)|0;if((q|0)==(g|0)){q=g;break}else{j=m;h=r}}}while(0);if(z?(x=a[aa>>0]|0,w=(x&1)==0,(q|0)!=((w?B:c[A>>2]|0)+(w?(x&255)>>>1:c[C>>2]|0)|0)):0){W=143;break b}break}case 4:{s=a[V>>0]|0;m=x;j=x;q=0;g:while(1){g=c[e>>2]|0;do if(g){if((c[g+12>>2]|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=23;break b}if((g|0)==-1){c[e>>2]=0;g=0;break}else{g=c[e>>2]|0;break}}}else g=0;while(0);h=(g|0)==0;do if(j){if((c[j+12>>2]|0)!=(c[j+16>>2]|0))if(h){r=m;break}else{h=m;break g}o=0;g=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;x=o;o=0;if(x&1){W=23;break b}if((g|0)!=-1)if(h^(m|0)==0){r=m;j=m;break}else{h=m;break g}else{c[f>>2]=0;m=0;W=156;break}}else W=156;while(0);if((W|0)==156){W=0;if(h){h=m;break}else{r=m;j=0}}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=23;break b}}else m=d[g>>0]|0;g=m&255;if(g<<24>>24>-1?(b[(c[I>>2]|0)+(m<<24>>24<<1)>>1]&2048)!=0:0){m=c[p>>2]|0;if((m|0)==(c[P>>2]|0)){o=0;wa(12,n|0,p|0,P|0);x=o;o=0;if(x&1){W=23;break b}m=c[p>>2]|0}c[p>>2]=m+1;a[m>>0]=g;q=q+1|0}else{x=a[Y>>0]|0;if(!(g<<24>>24==s<<24>>24&((q|0)!=0?(((x&1)==0?(x&255)>>>1:c[H>>2]|0)|0)!=0:0))){h=r;break}if((u|0)==(c[S>>2]|0)){o=0;wa(13,da|0,T|0,S|0);x=o;o=0;if(x&1){W=23;break b}u=c[T>>2]|0}x=u+4|0;c[T>>2]=x;c[u>>2]=q;u=x;q=0}m=c[e>>2]|0;g=m+12|0;h=c[g>>2]|0;if((h|0)==(c[m+16>>2]|0)){o=0;ka(c[(c[m>>2]|0)+40>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=23;break b}else{m=r;continue}}else{c[g>>2]=h+1;m=r;continue}}if((q|0)!=0?(c[da>>2]|0)!=(u|0):0){if((u|0)==(c[S>>2]|0)){o=0;wa(13,da|0,T|0,S|0);x=o;o=0;if(x&1){W=24;break b}u=c[T>>2]|0}x=u+4|0;c[T>>2]=x;c[u>>2]=q;u=x}r=c[R>>2]|0;if((r|0)>0){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);q=(q|0)==0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0)){o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=24;break b}if((m|0)==-1){c[f>>2]=0;W=193;break}}if(!q){W=198;break b}}else W=193;while(0);if((W|0)==193){W=0;if(q){W=198;break b}else h=0}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24!=(a[Q>>0]|0)){W=198;break b}q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=24;break b}}else c[m>>2]=g+1;if((r|0)>0){j=h;g=h;s=r;while(1){q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=22;break b}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);m=(q|0)==0;do if(g){if((c[g+12>>2]|0)!=(c[g+16>>2]|0))if(m){q=j;r=g;break}else{W=222;break b}o=0;q=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=22;break b}if((q|0)!=-1)if(m^(j|0)==0){q=j;r=j;break}else{W=222;break b}else{c[f>>2]=0;q=0;W=215;break}}else{q=j;W=215}while(0);if((W|0)==215){W=0;if(m){W=222;break b}else r=0}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=22;break b}}else m=d[g>>0]|0;if((m&255)<<24>>24<=-1){W=222;break b}if(!(b[(c[I>>2]|0)+(m<<24>>24<<1)>>1]&2048)){W=222;break b}if((c[p>>2]|0)==(c[P>>2]|0)?(o=0,wa(12,n|0,p|0,P|0),x=o,o=0,x&1):0){W=22;break b}m=c[e>>2]|0;g=c[m+12>>2]|0;if((g|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=22;break b}}else m=d[g>>0]|0;g=c[p>>2]|0;c[p>>2]=g+1;a[g>>0]=m;m=s;s=s+-1|0;c[R>>2]=s;g=c[e>>2]|0;h=g+12|0;j=c[h>>2]|0;if((j|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){W=22;break b}}else c[h>>2]=j+1;if((m|0)<=1)break;else{j=q;g=r}}}}if((c[p>>2]|0)==(c[n>>2]|0)){W=233;break b}break}default:{}}while(0);h:do if((W|0)==42)while(1){W=0;m=c[e>>2]|0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;m=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;x=o;o=0;if(x&1){W=20;break b}if((m|0)==-1){c[e>>2]=0;m=0;break}else{m=c[e>>2]|0;break}}}else m=0;while(0);g=(m|0)==0;do if(h){if((c[h+12>>2]|0)!=(c[h+16>>2]|0))if(g){j=q;break}else break h;o=0;m=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){W=20;break b}if((m|0)!=-1)if(g^(q|0)==0){j=q;h=q;break}else break h;else{c[f>>2]=0;q=0;W=54;break}}else W=54;while(0);if((W|0)==54){W=0;if(g)break h;else{j=q;h=0}}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){W=20;break b}}else q=d[m>>0]|0;if((q&255)<<24>>24<=-1)break h;if(!(b[(c[I>>2]|0)+(q<<24>>24<<1)>>1]&8192))break h;q=c[e>>2]|0;m=q+12|0;g=c[m>>2]|0;if((g|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+40>>2]|0,q|0)|0;W=o;o=0;if(W&1){W=20;break b}}else{c[m>>2]=g+1;q=d[g>>0]|0}o=0;ia(67,$|0,q&255|0);W=o;o=0;if(W&1){W=20;break b}else{q=j;W=42}}while(0);y=y+1|0;if(y>>>0>=4){W=235;break}}i:switch(W|0){case 20:{m=Na()|0;break a}case 21:{m=Na()|0;break a}case 22:{m=Na()|0;break a}case 23:{m=Na()|0;break a}case 24:{m=Na()|0;break a}case 40:{c[k>>2]=c[k>>2]|4;m=0;break}case 104:{c[k>>2]=c[k>>2]|4;m=0;break}case 143:{c[k>>2]=c[k>>2]|4;m=0;break}case 198:{c[k>>2]=c[k>>2]|4;m=0;break}case 222:{c[k>>2]=c[k>>2]|4;m=0;break}case 233:{c[k>>2]=c[k>>2]|4;m=0;break}case 235:{j:do if(t){j=t+1|0;r=t+8|0;s=t+4|0;g=1;k:while(1){q=a[t>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[s>>2]|0;if(g>>>0>=q>>>0)break j;q=c[e>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break k}if((q|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}}}else q=0;while(0);m=(q|0)==0;q=c[f>>2]|0;do if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break k}if((q|0)==-1){c[f>>2]=0;W=253;break}}if(!m){W=260;break k}}else W=253;while(0);if((W|0)==253?(W=0,m):0){W=260;break}q=c[e>>2]|0;m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0)){o=0;q=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;p=o;o=0;if(p&1){W=19;break}}else q=d[m>>0]|0;if(!(a[t>>0]&1))m=j;else m=c[r>>2]|0;if((q&255)<<24>>24!=(a[m+g>>0]|0)){W=260;break}q=g+1|0;m=c[e>>2]|0;g=m+12|0;h=c[g>>2]|0;if((h|0)==(c[m+16>>2]|0)){o=0;ka(c[(c[m>>2]|0)+40>>2]|0,m|0)|0;p=o;o=0;if(p&1){W=19;break}else{g=q;continue}}else{c[g>>2]=h+1;g=q;continue}}if((W|0)==19){m=Na()|0;break a}else if((W|0)==260){c[k>>2]=c[k>>2]|4;m=0;break i}}while(0);q=c[da>>2]|0;if((q|0)!=(u|0)?(c[X>>2]=0,Ur(Y,q,u,X),(c[X>>2]|0)!=0):0){c[k>>2]=c[k>>2]|4;m=0}else m=1;break}}Im($);Im(Z);Im(_);Im(aa);Im(Y);q=c[da>>2]|0;c[da>>2]=0;if((q|0)!=0?(o=0,ha(c[ca>>2]|0,q|0),da=o,o=0,da&1):0){da=Na(0)|0;ec(da)}i=ba;return m|0}while(0);Im($);Im(Z);Im(_);Im(aa);Im(Y);q=c[da>>2]|0;c[da>>2]=0;if((q|0)!=0?(o=0,ha(c[ca>>2]|0,q|0),da=o,o=0,da&1):0){da=Na(0)|0;ec(da)}Ya(m|0);return 0}function Rr(a){a=a|0;var b=0;b=Ma(8)|0;o=0;ia(90,b|0,a|0);a=o;o=0;if(a&1){a=Na()|0;La(b|0);Ya(a|0)}else lb(b|0,616,80)}function Sr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;w=i;i=i+144|0;k=w+24|0;b=w+32|0;x=w+16|0;s=w+8|0;p=w+4|0;q=w+28|0;l=w;c[x>>2]=b;A=x+4|0;c[A>>2]=189;m=b+100|0;o=0;v=ka(68,g|0)|0;n=o;o=0;if(!(n&1)){c[p>>2]=v;o=0;n=ra(37,p|0,44220)|0;b=o;o=0;a:do if(!(b&1)?(a[q>>0]=0,t=c[e>>2]|0,c[l>>2]=t,r=c[g+4>>2]|0,u=t,o=0,c[k>>2]=c[l>>2],r=la(1,d|0,k|0,f|0,p|0,r|0,h|0,q|0,n|0,x|0,s|0,m|0)|0,g=o,o=0,!(g&1)):0){if(r){if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}if(a[q>>0]|0){o=0;b=ra(c[(c[n>>2]|0)+28>>2]|0,n|0,45)|0;g=o;o=0;if(g&1)break;o=0;ia(67,j|0,b|0);g=o;o=0;if(g&1)break}o=0;l=ra(c[(c[n>>2]|0)+28>>2]|0,n|0,48)|0;g=o;o=0;if(g&1)break;b=c[x>>2]|0;m=c[s>>2]|0;k=m+-1|0;b:do if(b>>>0>>0)do{if((a[b>>0]|0)!=l<<24>>24)break b;b=b+1|0}while(b>>>0>>0);while(0);o=0;ma(32,j|0,b|0,m|0)|0;j=o;o=0;if(j&1)break}b=c[d>>2]|0;do if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1)break a;if((b|0)==-1){c[d>>2]=0;b=0;break}else{b=c[d>>2]|0;break}}}else b=0;while(0);k=(b|0)==0;do if(t){if((c[u+12>>2]|0)==(c[u+16>>2]|0)){o=0;b=ka(c[(c[t>>2]|0)+36>>2]|0,u|0)|0;u=o;o=0;if(u&1)break a;if((b|0)==-1){c[e>>2]=0;z=29;break}}if(!k)z=30}else z=29;while(0);if((z|0)==29?k:0)z=30;if((z|0)==30)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(v)|0;b=c[x>>2]|0;c[x>>2]=0;if((b|0)!=0?(o=0,ha(c[A>>2]|0,b|0),A=o,o=0,A&1):0){A=Na(0)|0;ec(A)}i=w;return k|0}while(0);k=Na()|0;pm(v)|0;b=c[x>>2]|0;c[x>>2]=0;if(!b)y=k;else z=36}else{k=Na()|0;c[x>>2]=0;z=36}if((z|0)==36){o=0;ha(c[A>>2]|0,b|0);A=o;o=0;if(A&1){A=Na(0)|0;ec(A)}else y=k}Ya(y|0);return 0}function Tr(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;n=z+100|0;p=z+88|0;q=z+76|0;r=z+64|0;s=z+52|0;t=z+48|0;u=z+36|0;v=z+24|0;w=z+12|0;x=z;do if(b){b=Is(d,43828)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](n,b);x=c[n>>2]|0;a[e>>0]=x;a[e+1>>0]=x>>8;a[e+2>>0]=x>>16;a[e+3>>0]=x>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Im(p);Cb[c[(c[b>>2]|0)+28>>2]&127](q,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Im(q);a[f>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](r,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);Cb[c[(c[b>>2]|0)+24>>2]&127](s,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Im(s);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(d,43764)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](t,b);t=c[t>>2]|0;a[e>>0]=t;a[e+1>>0]=t>>8;a[e+2>>0]=t>>16;a[e+3>>0]=t>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](u,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Im(u);Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Im(v);a[f>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](w,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];c[h+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[b>>2]|0)+24>>2]&127](x,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Im(x);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=y;i=z;return}function Ur(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=a[b>>0]|0;i=b+4|0;h=c[i>>2]|0;a:do if(((g&1)==0?(g&255)>>>1:h)|0){if((d|0)!=(e|0)){g=e+-4|0;if(g>>>0>d>>>0){h=d;do{j=c[h>>2]|0;c[h>>2]=c[g>>2];c[g>>2]=j;h=h+4|0;g=g+-4|0}while(h>>>0>>0)}g=a[b>>0]|0;h=c[i>>2]|0}j=(g&1)==0;i=j?b+1|0:c[b+8>>2]|0;e=e+-4|0;b=i+(j?(g&255)>>>1:h)|0;h=a[i>>0]|0;g=h<<24>>24<1|h<<24>>24==127;b:do if(e>>>0>d>>>0){while(1){if(!g?(h<<24>>24|0)!=(c[d>>2]|0):0)break;i=(b-i|0)>1?i+1|0:i;d=d+4|0;h=a[i>>0]|0;g=h<<24>>24<1|h<<24>>24==127;if(d>>>0>=e>>>0)break b}c[f>>2]=4;break a}while(0);if(!g?((c[e>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0:0)c[f>>2]=4}while(0);return}function Vr(a){a=a|0;return}function Wr(a){a=a|0;cj(a);return}function Xr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=i;i=i+576|0;x=B+424|0;A=B;b=B+24|0;D=B+16|0;y=B+12|0;C=B+8|0;p=B+464|0;l=B+4|0;z=B+468|0;c[D>>2]=b;F=D+4|0;c[F>>2]=189;m=b+400|0;o=0;k=ka(68,g|0)|0;w=o;o=0;if(!(w&1)){c[C>>2]=k;o=0;b=ra(37,C|0,44212)|0;w=o;o=0;a:do if(!(w&1)?(a[p>>0]=0,c[l>>2]=c[e>>2],n=c[g+4>>2]|0,o=0,c[x>>2]=c[l>>2],n=la(2,d|0,x|0,f|0,C|0,n|0,h|0,p|0,b|0,D|0,y|0,m|0)|0,w=o,o=0,!(w&1)):0){b:do if(n){o=0;va(c[(c[b>>2]|0)+48>>2]|0,b|0,59007,59017,x|0)|0;w=o;o=0;if(w&1){G=10;break a}l=c[y>>2]|0;m=c[D>>2]|0;b=l-m|0;if((b|0)>392){b=Fl((b>>2)+2|0)|0;k=b;if(!b){o=0;xa(6);w=o;o=0;if(!(w&1)){b=0;G=13}}else G=13}else{k=0;b=z;G=13}do if((G|0)==13){if(a[p>>0]|0){a[b>>0]=45;b=b+1|0}v=x+40|0;w=x;if(m>>>0>>0){n=x+4|0;f=n+4|0;g=f+4|0;p=g+4|0;q=p+4|0;r=q+4|0;s=r+4|0;t=s+4|0;u=t+4|0;do{l=c[m>>2]|0;do if((c[x>>2]|0)!=(l|0))if((c[n>>2]|0)!=(l|0))if((c[f>>2]|0)!=(l|0))if((c[g>>2]|0)!=(l|0))if((c[p>>2]|0)==(l|0))l=p;else{if((c[q>>2]|0)==(l|0)){l=q;break}if((c[r>>2]|0)==(l|0)){l=r;break}if((c[s>>2]|0)==(l|0)){l=s;break}if((c[t>>2]|0)==(l|0)){l=t;break}l=(c[u>>2]|0)==(l|0)?u:v}else l=g;else l=f;else l=n;else l=x;while(0);a[b>>0]=a[59007+(l-w>>2)>>0]|0;m=m+4|0;b=b+1|0}while(m>>>0<(c[y>>2]|0)>>>0)}a[b>>0]=0;c[A>>2]=j;if(($k(z,58987,A)|0)!=1?(o=0,ha(190,58991),j=o,o=0,j&1):0)break;if(k)Gl(k);break b}while(0);b=Na()|0;if(!k){l=b;k=D;break a}Gl(k);l=b;k=D;break a}while(0);b=c[d>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}}else b=c[k>>2]|0;if((b|0)==-1){c[d>>2]=0;l=1;break}else{l=(c[d>>2]|0)==0;break}}else l=1;while(0);b=c[e>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1){G=10;break a}}else b=c[k>>2]|0;if((b|0)!=-1)if(l)break;else{G=40;break}else{c[e>>2]=0;G=38;break}}else G=38;while(0);if((G|0)==38?l:0)G=40;if((G|0)==40)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(c[C>>2]|0)|0;b=c[D>>2]|0;c[D>>2]=0;if((b|0)!=0?(o=0,ha(c[F>>2]|0,b|0),G=o,o=0,G&1):0){G=Na(0)|0;ec(G)}i=B;return k|0}else G=10;while(0);if((G|0)==10){l=Na()|0;k=D}pm(c[C>>2]|0)|0;b=c[k>>2]|0;c[k>>2]=0;if(!b)E=l;else{k=c[F>>2]|0;G=47}}else{l=Na()|0;c[D>>2]=0;k=189;G=47}if((G|0)==47){o=0;ha(k|0,b|0);G=o;o=0;if(G&1){G=Na(0)|0;ec(G)}else E=l}Ya(E|0);return 0}function Yr(b,e,f,g,h,j,k,l,m,n,p){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;p=p|0;var 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;Y=i;i=i+512|0;K=Y+96|0;q=Y+104|0;_=Y+88|0;O=Y+80|0;N=Y+76|0;P=Y+504|0;L=Y+72|0;Q=Y+68|0;T=Y+56|0;X=Y+44|0;V=Y+32|0;U=Y+20|0;W=Y+8|0;M=Y+4|0;S=Y;c[K>>2]=p;c[_>>2]=q;Z=_+4|0;c[Z>>2]=189;c[O>>2]=q;c[N>>2]=q+400;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=0;o=0;qa(2,f|0,g|0,P|0,L|0,Q|0,T|0,X|0,V|0,U|0,M|0);J=o;o=0;a:do if(J&1)f=Na()|0;else{c[n>>2]=c[m>>2];G=V+4|0;H=U+4|0;I=U+8|0;J=V+8|0;z=(h&512|0)!=0;A=X+8|0;B=X+4|0;C=W+4|0;D=W+8|0;E=P+3|0;F=T+4|0;y=0;s=0;b:while(1){p=c[b>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[f>>2]|0;if((p|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);f=c[e>>2]|0;do if(f){p=c[f+12>>2]|0;if((p|0)==(c[f+16>>2]|0)){o=0;p=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[p>>2]|0;if((p|0)!=-1)if(g){x=f;break}else{t=q;R=244;break b}else{c[e>>2]=0;R=16;break}}else R=16;while(0);if((R|0)==16){R=0;if(g){t=q;R=244;break}else x=0}c:do switch(a[P+y>>0]|0){case 1:{if((y|0)!=3){p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=26;break b}}else p=c[f>>2]|0;o=0;p=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,p|0)|0;R=o;o=0;if(R&1){R=26;break b}if(!p){R=42;break b}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=26;break b}}else{c[f>>2]=g+4;p=c[g>>2]|0}o=0;ia(92,W|0,p|0);R=o;o=0;if(R&1){R=26;break b}else{p=x;h=x;R=44}}else p=q;break}case 0:{if((y|0)==3)p=q;else{p=x;h=x;R=44}break}case 3:{f=a[V>>0]|0;p=(f&1)==0?(f&255)>>>1:c[G>>2]|0;g=a[U>>0]|0;h=(g&1)==0?(g&255)>>>1:c[H>>2]|0;if((p|0)==(0-h|0))p=q;else{if(!p){p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}f=a[U>>0]|0}else{p=c[f>>2]|0;f=g}if((p|0)!=(c[((f&1)==0?H:c[I>>2]|0)>>2]|0)){p=q;break c}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;a[k>>0]=1;x=a[U>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[H>>2]|0)>>>0>1?U:s;break c}r=c[b>>2]|0;t=c[r+12>>2]|0;g=c[r+16>>2]|0;p=(t|0)==(g|0);if(!h){if(p){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}f=a[V>>0]|0}else p=c[t>>2]|0;if((p|0)!=(c[((f&1)==0?G:c[J>>2]|0)>>2]|0)){a[k>>0]=1;p=q;break c}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;x=a[V>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[G>>2]|0)>>>0>1?V:s;break c}if(p){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}g=c[b>>2]|0;f=a[V>>0]|0;r=g;t=c[g+12>>2]|0;g=c[g+16>>2]|0}else p=c[t>>2]|0;h=r+12|0;g=(t|0)==(g|0);if((p|0)==(c[((f&1)==0?G:c[J>>2]|0)>>2]|0)){if(g){o=0;ka(c[(c[r>>2]|0)+40>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[h>>2]=t+4;x=a[V>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[G>>2]|0)>>>0>1?V:s;break c}if(g){o=0;p=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=26;break b}}else p=c[t>>2]|0;if((p|0)!=(c[((a[U>>0]&1)==0?H:c[I>>2]|0)>>2]|0)){R=107;break b}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[f>>2]=g+4;a[k>>0]=1;x=a[U>>0]|0;p=q;s=((x&1)==0?(x&255)>>>1:c[H>>2]|0)>>>0>1?U:s}break}case 2:{if(!(y>>>0<2|(s|0)!=0)?!(z|(y|0)==2&(a[E>>0]|0)!=0):0){p=q;s=0;break c}h=a[X>>0]|0;g=c[A>>2]|0;f=(h&1)==0?B:g;p=f;d:do if((y|0)!=0?(d[P+(y+-1)>>0]|0)<2:0){w=(h&1)==0;e:do if((f|0)!=((w?B:g)+((w?(h&255)>>>1:c[B>>2]|0)<<2)|0)){h=f;while(1){o=0;f=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,c[h>>2]|0)|0;w=o;o=0;if(w&1){R=23;break b}if(!f)break;h=h+4|0;p=h;f=a[X>>0]|0;g=c[A>>2]|0;w=(f&1)==0;if((h|0)==((w?B:g)+((w?(f&255)>>>1:c[B>>2]|0)<<2)|0)){h=f;break e}}h=a[X>>0]|0;g=c[A>>2]|0}while(0);t=(h&1)==0?B:g;f=t;u=p-f>>2;v=a[W>>0]|0;r=(v&1)==0;v=r?(v&255)>>>1:c[C>>2]|0;if(v>>>0>=u>>>0){r=r?C:c[D>>2]|0;w=r+(v<<2)|0;if(!u)f=p;else{r=r+(v-u<<2)|0;while(1){if((c[r>>2]|0)!=(c[t>>2]|0))break d;r=r+4|0;if((r|0)==(w|0)){f=p;break}else t=t+4|0}}}}else f=p;while(0);p=(h&1)==0;p=(p?B:g)+((p?(h&255)>>>1:c[B>>2]|0)<<2)|0;f:do if((f|0)!=(p|0)){r=x;h=x;p=f;while(1){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=22;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=22;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(r|0)==0){f=r;t=r;break}else break f;else{c[e>>2]=0;f=0;R=136;break}}else{f=r;R=136}while(0);if((R|0)==136){R=0;if(g)break f;else t=0}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=22;break b}}else g=c[h>>2]|0;if((g|0)!=(c[p>>2]|0))break f;g=c[b>>2]|0;h=g+12|0;r=c[h>>2]|0;if((r|0)==(c[g+16>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=22;break b}}else c[h>>2]=r+4;p=p+4|0;g=a[X>>0]|0;x=(g&1)==0;g=(x?B:c[A>>2]|0)+((x?(g&255)>>>1:c[B>>2]|0)<<2)|0;if((p|0)==(g|0)){p=g;break}else{r=f;h=t}}}while(0);if(z?(x=a[X>>0]|0,w=(x&1)==0,(p|0)!=((w?B:c[A>>2]|0)+((w?(x&255)>>>1:c[B>>2]|0)<<2)|0)):0){R=148;break b}else p=q;break}case 4:{v=c[Q>>2]|0;u=x;r=x;p=q;f=0;g:while(1){g=c[b>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=25;break b}}else g=c[h>>2]|0;if((g|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);do if(r){g=c[r+12>>2]|0;if((g|0)==(c[r+16>>2]|0)){o=0;g=ka(c[(c[r>>2]|0)+36>>2]|0,r|0)|0;x=o;o=0;if(x&1){R=25;break b}}else g=c[g>>2]|0;if((g|0)!=-1)if(h^(u|0)==0){g=u;t=u;break}else{q=u;break g}else{c[e>>2]=0;g=0;R=162;break}}else{g=u;R=162}while(0);if((R|0)==162){R=0;if(h){q=g;break}else t=0}h=c[b>>2]|0;q=c[h+12>>2]|0;if((q|0)==(c[h+16>>2]|0)){o=0;h=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=25;break b}}else h=c[q>>2]|0;o=0;q=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,2048,h|0)|0;x=o;o=0;if(x&1){R=25;break b}if(q){q=c[n>>2]|0;if((q|0)==(c[K>>2]|0)){o=0;wa(14,m|0,n|0,K|0);x=o;o=0;if(x&1){R=25;break b}q=c[n>>2]|0}c[n>>2]=q+4;c[q>>2]=h;f=f+1|0}else{x=a[T>>0]|0;if(!((h|0)==(v|0)&((f|0)!=0?(((x&1)==0?(x&255)>>>1:c[F>>2]|0)|0)!=0:0))){q=g;break}if((p|0)==(c[N>>2]|0)){o=0;wa(13,_|0,O|0,N|0);x=o;o=0;if(x&1){R=25;break b}p=c[O>>2]|0}x=p+4|0;c[O>>2]=x;c[p>>2]=f;p=x;f=0}h=c[b>>2]|0;q=h+12|0;r=c[q>>2]|0;if((r|0)==(c[h+16>>2]|0)){o=0;ka(c[(c[h>>2]|0)+40>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=25;break b}else{u=g;r=t;continue}}else{c[q>>2]=r+4;u=g;r=t;continue}}if((f|0)!=0?(c[_>>2]|0)!=(p|0):0){if((p|0)==(c[N>>2]|0)){o=0;wa(13,_|0,O|0,N|0);x=o;o=0;if(x&1){R=26;break b}p=c[O>>2]|0}x=p+4|0;c[O>>2]=x;c[p>>2]=f;p=x}t=c[M>>2]|0;if((t|0)>0){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(q){f=c[q+12>>2]|0;if((f|0)==(c[q+16>>2]|0)){o=0;f=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g)break;else{R=206;break b}else{c[e>>2]=0;R=200;break}}else R=200;while(0);if((R|0)==200){R=0;if(g){R=206;break b}else q=0}f=c[b>>2]|0;g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else f=c[g>>2]|0;if((f|0)!=(c[L>>2]|0)){R=206;break b}f=c[b>>2]|0;g=f+12|0;h=c[g>>2]|0;if((h|0)==(c[f+16>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=26;break b}}else c[g>>2]=h+4;if((t|0)>0){r=q;h=q;u=t;while(1){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=24;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=24;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(r|0)==0){f=r;t=r;break}else{R=231;break b}else{c[e>>2]=0;f=0;R=224;break}}else{f=r;R=224}while(0);if((R|0)==224){R=0;if(g){R=231;break b}else t=0}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=24;break b}}else g=c[h>>2]|0;o=0;g=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,2048,g|0)|0;x=o;o=0;if(x&1){R=24;break b}if(!g){R=231;break b}if((c[n>>2]|0)==(c[K>>2]|0)?(o=0,wa(14,m|0,n|0,K|0),x=o,o=0,x&1):0){R=24;break b}g=c[b>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0)){o=0;g=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;x=o;o=0;if(x&1){R=24;break b}}else g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;g=u;u=u+-1|0;c[M>>2]=u;h=c[b>>2]|0;q=h+12|0;r=c[q>>2]|0;if((r|0)==(c[h+16>>2]|0)){o=0;ka(c[(c[h>>2]|0)+40>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=24;break b}}else c[q>>2]=r+4;if((g|0)<=1)break;else{r=f;h=t}}}}if((c[n>>2]|0)==(c[m>>2]|0)){R=242;break b}break}default:p=q}while(0);h:do if((R|0)==44)while(1){R=0;f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0)){o=0;f=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;x=o;o=0;if(x&1){R=21;break b}}else f=c[g>>2]|0;if((f|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){o=0;f=ka(c[(c[h>>2]|0)+36>>2]|0,h|0)|0;x=o;o=0;if(x&1){R=21;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(g^(p|0)==0){r=p;h=p;break}else{p=q;break h}else{c[e>>2]=0;p=0;R=57;break}}else R=57;while(0);if((R|0)==57){R=0;if(g){p=q;break h}else{r=p;h=0}}p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;x=o;o=0;if(x&1){R=21;break b}}else p=c[f>>2]|0;o=0;p=ma(c[(c[l>>2]|0)+12>>2]|0,l|0,8192,p|0)|0;x=o;o=0;if(x&1){R=21;break b}if(!p){p=q;break h}p=c[b>>2]|0;f=p+12|0;g=c[f>>2]|0;if((g|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+40>>2]|0,p|0)|0;R=o;o=0;if(R&1){R=21;break b}}else{c[f>>2]=g+4;p=c[g>>2]|0}o=0;ia(92,W|0,p|0);R=o;o=0;if(R&1){R=21;break b}else{p=r;R=44}}while(0);y=y+1|0;if(y>>>0>=4){t=p;R=244;break}else q=p}i:switch(R|0){case 21:{f=Na()|0;break a}case 22:{f=Na()|0;break a}case 23:{f=Na()|0;break a}case 24:{f=Na()|0;break a}case 25:{f=Na()|0;break a}case 26:{f=Na()|0;break a}case 42:{c[j>>2]=c[j>>2]|4;f=0;break}case 107:{c[j>>2]=c[j>>2]|4;f=0;break}case 148:{c[j>>2]=c[j>>2]|4;f=0;break}case 206:{c[j>>2]=c[j>>2]|4;f=0;break}case 231:{c[j>>2]=c[j>>2]|4;f=0;break}case 242:{c[j>>2]=c[j>>2]|4;f=0;break}case 244:{j:do if(s){q=s+4|0;r=s+8|0;h=1;k:while(1){p=a[s>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[q>>2]|0;if(h>>>0>=p>>>0)break j;p=c[b>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break k}}else p=c[f>>2]|0;if((p|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);p=c[e>>2]|0;do if(p){f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break k}}else p=c[f>>2]|0;if((p|0)!=-1)if(g)break;else{R=271;break k}else{c[e>>2]=0;R=263;break}}else R=263;while(0);if((R|0)==263?(R=0,g):0){R=271;break}p=c[b>>2]|0;f=c[p+12>>2]|0;if((f|0)==(c[p+16>>2]|0)){o=0;p=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;n=o;o=0;if(n&1){R=20;break}}else p=c[f>>2]|0;if(!(a[s>>0]&1))f=q;else f=c[r>>2]|0;if((p|0)!=(c[f+(h<<2)>>2]|0)){R=271;break}p=h+1|0;f=c[b>>2]|0;g=f+12|0;h=c[g>>2]|0;if((h|0)==(c[f+16>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;n=o;o=0;if(n&1){R=20;break}else{h=p;continue}}else{c[g>>2]=h+4;h=p;continue}}if((R|0)==20){f=Na()|0;break a}else if((R|0)==271){c[j>>2]=c[j>>2]|4;f=0;break i}}while(0);p=c[_>>2]|0;if((p|0)!=(t|0)?(c[S>>2]=0,Ur(T,p,t,S),(c[S>>2]|0)!=0):0){c[j>>2]=c[j>>2]|4;f=0}else f=1;break}}Wm(W);Wm(U);Wm(V);Wm(X);Im(T);p=c[_>>2]|0;c[_>>2]=0;if((p|0)!=0?(o=0,ha(c[Z>>2]|0,p|0),_=o,o=0,_&1):0){_=Na(0)|0;ec(_)}i=Y;return f|0}while(0);Wm(W);Wm(U);Wm(V);Wm(X);Im(T);p=c[_>>2]|0;c[_>>2]=0;if((p|0)!=0?(o=0,ha(c[Z>>2]|0,p|0),_=o,o=0,_&1):0){_=Na(0)|0;ec(_)}Ya(f|0);return 0}function Zr(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;w=i;i=i+432|0;k=w+424|0;b=w+24|0;y=w+16|0;s=w+8|0;p=w+4|0;q=w+428|0;l=w;c[y>>2]=b;A=y+4|0;c[A>>2]=189;m=b+400|0;o=0;v=ka(68,g|0)|0;n=o;o=0;if(!(n&1)){c[p>>2]=v;o=0;n=ra(37,p|0,44212)|0;b=o;o=0;a:do if(!(b&1)?(a[q>>0]=0,t=c[e>>2]|0,c[l>>2]=t,r=c[g+4>>2]|0,u=t,o=0,c[k>>2]=c[l>>2],r=la(2,d|0,k|0,f|0,p|0,r|0,h|0,q|0,n|0,y|0,s|0,m|0)|0,g=o,o=0,!(g&1)):0){if(r){if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;if(a[q>>0]|0){o=0;b=ra(c[(c[n>>2]|0)+44>>2]|0,n|0,45)|0;g=o;o=0;if(g&1)break;o=0;ia(92,j|0,b|0);g=o;o=0;if(g&1)break}o=0;l=ra(c[(c[n>>2]|0)+44>>2]|0,n|0,48)|0;g=o;o=0;if(g&1)break;b=c[y>>2]|0;m=c[s>>2]|0;k=m+-4|0;b:do if(b>>>0>>0)do{if((c[b>>2]|0)!=(l|0))break b;b=b+4|0}while(b>>>0>>0);while(0);o=0;ma(33,j|0,b|0,m|0)|0;j=o;o=0;if(j&1)break}b=c[d>>2]|0;do if(b){k=c[b+12>>2]|0;if((k|0)==(c[b+16>>2]|0)){o=0;b=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;j=o;o=0;if(j&1)break a}else b=c[k>>2]|0;if((b|0)==-1){c[d>>2]=0;k=1;break}else{k=(c[d>>2]|0)==0;break}}else k=1;while(0);do if(t){b=c[u+12>>2]|0;if((b|0)==(c[u+16>>2]|0)){o=0;b=ka(c[(c[t>>2]|0)+36>>2]|0,u|0)|0;u=o;o=0;if(u&1)break a}else b=c[b>>2]|0;if((b|0)!=-1)if(k)break;else{z=32;break}else{c[e>>2]=0;z=30;break}}else z=30;while(0);if((z|0)==30?k:0)z=32;if((z|0)==32)c[h>>2]=c[h>>2]|2;k=c[d>>2]|0;pm(v)|0;b=c[y>>2]|0;c[y>>2]=0;if((b|0)!=0?(o=0,ha(c[A>>2]|0,b|0),A=o,o=0,A&1):0){A=Na(0)|0;ec(A)}i=w;return k|0}while(0);k=Na()|0;pm(v)|0;b=c[y>>2]|0;c[y>>2]=0;if(!b)x=k;else z=38}else{k=Na()|0;c[y>>2]=0;z=38}if((z|0)==38){o=0;ha(c[A>>2]|0,b|0);A=o;o=0;if(A&1){A=Na(0)|0;ec(A)}else x=k}Ya(x|0);return 0}function _r(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;n=z+100|0;p=z+88|0;q=z+76|0;r=z+64|0;s=z+52|0;t=z+48|0;u=z+36|0;v=z+24|0;w=z+12|0;x=z;do if(b){b=Is(d,43956)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](n,b);x=c[n>>2]|0;a[e>>0]=x;a[e+1>>0]=x>>8;a[e+2>>0]=x>>16;a[e+3>>0]=x>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Wm(p);Cb[c[(c[b>>2]|0)+28>>2]&127](q,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Wm(q);c[f>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](r,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);Cb[c[(c[b>>2]|0)+24>>2]&127](s,b);if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;o=0;ia(93,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Wm(s);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(d,43892)|0;Cb[c[(c[b>>2]|0)+44>>2]&127](t,b);t=c[t>>2]|0;a[e>>0]=t;a[e+1>>0]=t>>8;a[e+2>>0]=t>>16;a[e+3>>0]=t>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](u,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Wm(u);Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)};c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Wm(v);c[f>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](w,b);if(!(a[h>>0]&1)){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}o=0;ia(91,h|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)};c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];c[h+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[b>>2]|0)+24>>2]&127](x,b);if(!(a[j>>0]&1))a[j>>0]=0;else c[c[j+8>>2]>>2]=0;c[j+4>>2]=0;o=0;ia(93,j|0,0);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else{c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Wm(x);y=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=y;i=z;return}function $r(a){a=a|0;return}function as(a){a=a|0;cj(a);return}function bs(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=i;i=i+384|0;v=D+8|0;k=D;m=D+284|0;n=D+72|0;l=D+184|0;F=D+68|0;A=D+80|0;x=D+77|0;B=D+76|0;G=D+56|0;I=D+44|0;H=D+32|0;p=D+28|0;u=D+84|0;z=D+24|0;y=D+20|0;w=D+16|0;c[n>>2]=m;h[v>>3]=j;m=_k(m,100,59018,v)|0;do if(m>>>0>99){o=0;b=ua(3)|0;C=o;o=0;if(!(C&1)?(o=0,h[k>>3]=j,s=va(17,n|0,b|0,59018,k|0)|0,C=o,o=0,!(C&1)):0){b=c[n>>2]|0;if(!b){o=0;xa(6);C=o;o=0;if(C&1){b=0;k=0;C=7;break}b=c[n>>2]|0}l=Fl(s)|0;k=l;if(!l){o=0;xa(6);C=o;o=0;if(C&1)C=7;else{t=0;C=10}}else{t=l;C=10}}else{b=0;k=0;C=7}}else{k=0;b=0;t=l;s=m;C=10}while(0);if((C|0)==10){o=0;l=ka(68,f|0)|0;r=o;o=0;if(r&1)C=7;else{c[F>>2]=l;o=0;r=ra(37,F|0,44220)|0;q=o;o=0;if(!(q&1)?(q=c[n>>2]|0,o=0,va(c[(c[r>>2]|0)+32>>2]|0,r|0,q|0,q+s|0,t|0)|0,q=o,o=0,!(q&1)):0){if(!s)q=0;else q=(a[c[n>>2]>>0]|0)==45;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;o=0;qa(3,e|0,q|0,F|0,A|0,x|0,B|0,G|0,I|0,H|0,p|0);e=o;o=0;if(!(e&1)){p=c[p>>2]|0;if((s|0)>(p|0)){e=a[H>>0]|0;m=a[I>>0]|0;m=(s-p<<1|1)+p+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}else{e=a[H>>0]|0;m=a[I>>0]|0;m=p+2+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}if(m>>>0>100){m=Fl(m)|0;n=m;if(!m){o=0;xa(6);u=o;o=0;if(!(u&1)){m=0;C=26}}else C=26}else{n=0;m=u;C=26}if((C|0)==26){o=0;na(1,m|0,z|0,y|0,c[f+4>>2]|0,t|0,t+s|0,r|0,q|0,A|0,a[x>>0]|0,a[B>>0]|0,G|0,I|0,H|0,p|0);B=o;o=0;if(!(B&1)?(c[w>>2]=c[d>>2],d=c[z>>2]|0,E=c[y>>2]|0,o=0,c[v>>2]=c[w>>2],E=ja(39,v|0,m|0,d|0,E|0,f|0,g|0)|0,d=o,o=0,!(d&1)):0){if(n){Gl(n);l=c[F>>2]|0}Im(H);Im(I);Im(G);pm(l)|0;if(k)Gl(k);if(b)Gl(b);i=D;return E|0}}m=Na()|0;if(n){Gl(n);l=c[F>>2]|0}}else m=Na()|0;Im(H);Im(I);Im(G)}else m=Na()|0;pm(l)|0}}if((C|0)==7)m=Na()|0;if(k)Gl(k);if(b)Gl(b);Ya(m|0);return 0}function cs(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+112|0;q=D+108|0;r=D+96|0;u=D+92|0;v=D+80|0;w=D+68|0;x=D+56|0;y=D+52|0;z=D+40|0;A=D+36|0;B=D+24|0;s=D+12|0;t=D;do if(b){b=Is(e,43828)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](q,b);d=c[q>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](r,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Im(r);p=b;break}}else{Cb[c[e+40>>2]&127](u,b);d=c[u>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](v,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Im(v);p=b;break}}while(0);a[g>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[p>>2]|0)+20>>2]&127](w,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;Im(w);Cb[c[(c[p>>2]|0)+24>>2]&127](x,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Im(x);C=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(e,43764)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](y,b);d=c[y>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](z,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];c[l+8>>2]=c[z+8>>2];c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;Im(z);n=b;break}}else{Cb[c[e+40>>2]&127](A,b);d=c[A>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](B,b);if(!(a[l>>0]&1)){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}o=0;ia(91,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[B>>2];c[l+4>>2]=c[B+4>>2];c[l+8>>2]=c[B+8>>2];c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;Im(B);n=b;break}}while(0);a[g>>0]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[n>>2]|0)+20>>2]&127](s,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Im(s);Cb[c[(c[n>>2]|0)+24>>2]&127](t,b);if(!(a[k>>0]&1)){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}o=0;ia(91,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;Im(t);C=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=C;i=D;return}function ds(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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;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,K=0,L=0,M=0,N=0,O=0,P=0;c[f>>2]=d;N=q+4|0;O=q+8|0;P=q+1|0;H=p+4|0;I=(g&512|0)==0;J=p+8|0;K=p+1|0;L=j+8|0;M=(r|0)>0;A=o+4|0;B=o+8|0;C=o+1|0;D=r+1|0;F=-2-r-((r|0)<0?~r:-1)|0;G=(r|0)>0;z=0;do{switch(a[l+z>>0]|0){case 0:{c[e>>2]=c[f>>2];break}case 1:{c[e>>2]=c[f>>2];x=Lb[c[(c[j>>2]|0)+28>>2]&63](j,32)|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x;break}case 3:{y=a[q>>0]|0;s=(y&1)==0;if((s?(y&255)>>>1:c[N>>2]|0)|0){x=a[(s?P:c[O>>2]|0)>>0]|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x}break}case 2:{u=a[p>>0]|0;s=(u&1)==0;u=s?(u&255)>>>1:c[H>>2]|0;if(!(I|(u|0)==0)){t=s?K:c[J>>2]|0;v=t+u|0;s=c[f>>2]|0;if(u)do{a[s>>0]=a[t>>0]|0;t=t+1|0;s=s+1|0}while((t|0)!=(v|0));c[f>>2]=s}break}case 4:{s=c[f>>2]|0;h=k?h+1|0:h;w=h;v=c[L>>2]|0;a:do if(h>>>0>>0){t=h;do{u=a[t>>0]|0;if(u<<24>>24<=-1)break a;if(!(b[v+(u<<24>>24<<1)>>1]&2048))break a;t=t+1|0}while(t>>>0>>0)}else t=h;while(0);u=t;if(M){x=-2-u-~(u>>>0>w>>>0?w:u)|0;x=F>>>0>x>>>0?F:x;if(t>>>0>h>>>0&G){u=t;w=r;while(1){u=u+-1|0;y=a[u>>0]|0;v=c[f>>2]|0;c[f>>2]=v+1;a[v>>0]=y;v=(w|0)>1;if(!(u>>>0>h>>>0&v))break;else w=w+-1|0}}else v=G;y=D+x|0;u=t+(x+1)|0;if(v)w=Lb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;else w=0;t=c[f>>2]|0;c[f>>2]=t+1;if((y|0)>0){v=y;while(1){a[t>>0]=w;t=c[f>>2]|0;c[f>>2]=t+1;if((v|0)>1)v=v+-1|0;else break}}a[t>>0]=m}else u=t;if((u|0)!=(h|0)){y=a[o>>0]|0;t=(y&1)==0;if(!((t?(y&255)>>>1:c[A>>2]|0)|0))t=-1;else t=a[(t?C:c[B>>2]|0)>>0]|0;if((u|0)!=(h|0)){v=0;w=0;while(1){if((w|0)==(t|0)){y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=n;v=v+1|0;y=a[o>>0]|0;t=(y&1)==0;if(v>>>0<(t?(y&255)>>>1:c[A>>2]|0)>>>0){t=a[(t?C:c[B>>2]|0)+v>>0]|0;t=t<<24>>24==127?-1:t<<24>>24;w=0}else{t=w;w=0}}u=u+-1|0;x=a[u>>0]|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x;if((u|0)==(h|0))break;else w=w+1|0}}}else{x=Lb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;y=c[f>>2]|0;c[f>>2]=y+1;a[y>>0]=x}t=c[f>>2]|0;if((s|0)!=(t|0)?(E=t+-1|0,s>>>0>>0):0){t=E;do{y=a[s>>0]|0;a[s>>0]=a[t>>0]|0;a[t>>0]=y;s=s+1|0;t=t+-1|0}while(s>>>0>>0)}break}default:{}}z=z+1|0}while((z|0)!=4);t=a[q>>0]|0;h=(t&1)==0;t=h?(t&255)>>>1:c[N>>2]|0;if(t>>>0>1){s=h?P:c[O>>2]|0;u=s+t|0;h=c[f>>2]|0;if((t|0)!=1){s=s+1|0;do{a[h>>0]=a[s>>0]|0;h=h+1|0;s=s+1|0}while((s|0)!=(u|0))}c[f>>2]=h}switch(g&176|0){case 32:{c[e>>2]=c[f>>2];break}case 16:break;default:c[e>>2]=d}return}function es(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+176|0;r=z+56|0;B=z+52|0;x=z+64|0;u=z+61|0;y=z+60|0;C=z+40|0;E=z+28|0;D=z+16|0;m=z+12|0;q=z+68|0;w=z+8|0;v=z+4|0;s=z;b=jn(f)|0;c[B>>2]=b;o=0;t=ra(37,B|0,44220)|0;p=o;o=0;do if(p&1)F=13;else{n=a[h>>0]|0;j=(n&1)==0;p=h+4|0;if(!((j?(n&255)>>>1:c[p>>2]|0)|0))n=0;else{j=a[(j?h+1|0:c[h+8>>2]|0)>>0]|0;o=0;k=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,45)|0;n=o;o=0;if(n&1){F=13;break}n=j<<24>>24==k<<24>>24}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;qa(3,e|0,n|0,B|0,x|0,u|0,y|0,C|0,E|0,D|0,m|0);l=o;o=0;if(!(l&1)){l=a[h>>0]|0;e=c[p>>2]|0;j=(l&1)==0?(l&255)>>>1:e;m=c[m>>2]|0;if((j|0)>(m|0)){G=a[D>>0]|0;k=a[E>>0]|0;j=(j-m<<1|1)+m+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((k&1)==0?(k&255)>>>1:c[E+4>>2]|0)|0}else{G=a[D>>0]|0;j=a[E>>0]|0;j=m+2+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((j&1)==0?(j&255)>>>1:c[E+4>>2]|0)|0}if(j>>>0>100){j=Fl(j)|0;k=j;if(!j){o=0;xa(6);G=o;o=0;if(!(G&1)){l=a[h>>0]|0;e=c[p>>2]|0;j=0;F=17}}else F=17}else{k=0;j=q;F=17}if((F|0)==17){G=(l&1)==0;h=G?h+1|0:c[h+8>>2]|0;o=0;na(1,j|0,w|0,v|0,c[f+4>>2]|0,h|0,h+(G?(l&255)>>>1:e)|0,t|0,n|0,x|0,a[u>>0]|0,a[y>>0]|0,C|0,E|0,D|0,m|0);G=o;o=0;if(!(G&1)?(c[s>>2]=c[d>>2],G=c[w>>2]|0,A=c[v>>2]|0,o=0,c[r>>2]=c[s>>2],A=ja(39,r|0,j|0,G|0,A|0,f|0,g|0)|0,G=o,o=0,!(G&1)):0){if(k){Gl(k);b=c[B>>2]|0}Im(D);Im(E);Im(C);pm(b)|0;i=z;return A|0}}j=Na()|0;if(k){Gl(k);b=c[B>>2]|0}}else j=Na()|0;Im(D);Im(E);Im(C)}while(0);if((F|0)==13)j=Na()|0;pm(b)|0;Ya(j|0);return 0}function fs(a){a=a|0;return}function gs(a){a=a|0;cj(a);return}function hs(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=i;i=i+992|0;v=D+8|0;k=D;m=D+888|0;n=D+880|0;l=D+480|0;F=D+76|0;A=D+884|0;x=D+72|0;B=D+68|0;G=D+56|0;I=D+44|0;H=D+32|0;p=D+28|0;u=D+80|0;z=D+24|0;y=D+20|0;w=D+16|0;c[n>>2]=m;h[v>>3]=j;m=_k(m,100,59018,v)|0;do if(m>>>0>99){o=0;b=ua(3)|0;C=o;o=0;if(!(C&1)?(o=0,h[k>>3]=j,s=va(17,n|0,b|0,59018,k|0)|0,C=o,o=0,!(C&1)):0){b=c[n>>2]|0;if(!b){o=0;xa(6);C=o;o=0;if(C&1){b=0;k=0;C=7;break}b=c[n>>2]|0}l=Fl(s<<2)|0;k=l;if(!l){o=0;xa(6);C=o;o=0;if(C&1)C=7;else{t=0;C=10}}else{t=l;C=10}}else{b=0;k=0;C=7}}else{k=0;b=0;t=l;s=m;C=10}while(0);if((C|0)==10){o=0;l=ka(68,f|0)|0;r=o;o=0;if(r&1)C=7;else{c[F>>2]=l;o=0;r=ra(37,F|0,44212)|0;q=o;o=0;if(!(q&1)?(q=c[n>>2]|0,o=0,va(c[(c[r>>2]|0)+48>>2]|0,r|0,q|0,q+s|0,t|0)|0,q=o,o=0,!(q&1)):0){if(!s)q=0;else q=(a[c[n>>2]>>0]|0)==45;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;o=0;qa(4,e|0,q|0,F|0,A|0,x|0,B|0,G|0,I|0,H|0,p|0);e=o;o=0;if(!(e&1)){p=c[p>>2]|0;if((s|0)>(p|0)){e=a[H>>0]|0;m=a[I>>0]|0;m=(s-p<<1|1)+p+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}else{e=a[H>>0]|0;m=a[I>>0]|0;m=p+2+((e&1)==0?(e&255)>>>1:c[H+4>>2]|0)+((m&1)==0?(m&255)>>>1:c[I+4>>2]|0)|0}if(m>>>0>100){m=Fl(m<<2)|0;n=m;if(!m){o=0;xa(6);u=o;o=0;if(!(u&1)){m=0;C=26}}else C=26}else{n=0;m=u;C=26}if((C|0)==26){o=0;na(2,m|0,z|0,y|0,c[f+4>>2]|0,t|0,t+(s<<2)|0,r|0,q|0,A|0,c[x>>2]|0,c[B>>2]|0,G|0,I|0,H|0,p|0);B=o;o=0;if(!(B&1)?(c[w>>2]=c[d>>2],d=c[z>>2]|0,E=c[y>>2]|0,o=0,c[v>>2]=c[w>>2],E=ja(40,v|0,m|0,d|0,E|0,f|0,g|0)|0,d=o,o=0,!(d&1)):0){if(n){Gl(n);l=c[F>>2]|0}Wm(H);Wm(I);Im(G);pm(l)|0;if(k)Gl(k);if(b)Gl(b);i=D;return E|0}}m=Na()|0;if(n){Gl(n);l=c[F>>2]|0}}else m=Na()|0;Wm(H);Wm(I);Im(G)}else m=Na()|0;pm(l)|0}}if((C|0)==7)m=Na()|0;if(k)Gl(k);if(b)Gl(b);Ya(m|0);return 0}function is(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+112|0;n=B+108|0;p=B+96|0;s=B+92|0;t=B+80|0;u=B+68|0;v=B+56|0;w=B+52|0;x=B+40|0;y=B+36|0;z=B+24|0;q=B+12|0;r=B;do if(b){b=Is(e,43956)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](n,b);d=c[n>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](p,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;Wm(p);break}}else{Cb[c[e+40>>2]&127](s,b);d=c[s>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](t,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[t>>2];c[l+4>>2]=c[t+4>>2];c[l+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;Wm(t);break}}while(0);c[g>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](u,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;Im(u);Cb[c[(c[b>>2]|0)+24>>2]&127](v,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Wm(v);A=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}else{b=Is(e,43892)|0;e=c[b>>2]|0;do if(d){Cb[c[e+44>>2]&127](w,b);d=c[w>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+32>>2]&127](x,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Wm(x);break}}else{Cb[c[e+40>>2]&127](y,b);d=c[y>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;Cb[c[(c[b>>2]|0)+28>>2]&127](z,b);if(!(a[l>>0]&1))a[l>>0]=0;else c[c[l+8>>2]>>2]=0;c[l+4>>2]=0;o=0;ia(93,l|0,0);f=o;o=0;if(f&1){l=Na(0)|0;ec(l)}else{c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];c[l+8>>2]=c[z+8>>2];c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;Wm(z);break}}while(0);c[g>>2]=Eb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=Eb[c[(c[b>>2]|0)+16>>2]&127](b)|0;Cb[c[(c[b>>2]|0)+20>>2]&127](q,b);if(!(a[j>>0]&1)){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}o=0;ia(91,j|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)};c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Im(q);Cb[c[(c[b>>2]|0)+24>>2]&127](r,b);if(!(a[k>>0]&1))a[k>>0]=0;else c[c[k+8>>2]>>2]=0;c[k+4>>2]=0;o=0;ia(93,k|0,0);h=o;o=0;if(h&1){h=Na(0)|0;ec(h)}else{c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Wm(r);A=Eb[c[(c[b>>2]|0)+36>>2]&127](b)|0;break}}while(0);c[m>>2]=A;i=B;return}function js(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){b=b|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;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,I=0,J=0,K=0;c[e>>2]=b;J=p+4|0;K=p+8|0;C=o+4|0;D=(f&512|0)==0;E=o+8|0;F=(q|0)>0;G=n+4|0;H=n+8|0;I=n+1|0;A=(q|0)>0;z=0;do{switch(a[k+z>>0]|0){case 0:{c[d>>2]=c[e>>2];break}case 1:{c[d>>2]=c[e>>2];x=Lb[c[(c[i>>2]|0)+44>>2]&63](i,32)|0;y=c[e>>2]|0;c[e>>2]=y+4;c[y>>2]=x;break}case 3:{y=a[p>>0]|0;r=(y&1)==0;if((r?(y&255)>>>1:c[J>>2]|0)|0){x=c[(r?J:c[K>>2]|0)>>2]|0;y=c[e>>2]|0;c[e>>2]=y+4;c[y>>2]=x}break}case 2:{v=a[o>>0]|0;r=(v&1)==0;v=r?(v&255)>>>1:c[C>>2]|0;if(!(D|(v|0)==0)){r=r?C:c[E>>2]|0;t=r+(v<<2)|0;u=c[e>>2]|0;if(v){s=u;while(1){c[s>>2]=c[r>>2];r=r+4|0;if((r|0)==(t|0))break;else s=s+4|0}}c[e>>2]=u+(v<<2)}break}case 4:{r=c[e>>2]|0;g=j?g+4|0:g;a:do if(g>>>0>>0){s=g;do{if(!(Gb[c[(c[i>>2]|0)+12>>2]&63](i,2048,c[s>>2]|0)|0))break a;s=s+4|0}while(s>>>0>>0)}else s=g;while(0);if(F){if(s>>>0>g>>>0&A){v=c[e>>2]|0;u=q;while(1){s=s+-4|0;t=v+4|0;c[v>>2]=c[s>>2];w=u+-1|0;u=(u|0)>1;if(s>>>0>g>>>0&u){v=t;u=w}else{v=w;break}}c[e>>2]=t;t=v}else{u=A;t=q}if(u)w=Lb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;else w=0;x=c[e>>2]|0;u=t+((t|0)<0?~t:-1)|0;if((t|0)>0){v=x;while(1){c[v>>2]=w;if((t|0)>1){v=v+4|0;t=t+-1|0}else break}}c[e>>2]=x+(u+2<<2);c[x+(u+1<<2)>>2]=l}if((s|0)==(g|0)){x=Lb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;y=c[e>>2]|0;s=y+4|0;c[e>>2]=s;c[y>>2]=x}else{x=a[n>>0]|0;t=(x&1)==0;y=c[G>>2]|0;if(!((t?(x&255)>>>1:y)|0))t=-1;else t=a[(t?I:c[H>>2]|0)>>0]|0;if((s|0)!=(g|0)){w=0;x=0;while(1){u=c[e>>2]|0;if((x|0)==(t|0)){v=u+4|0;c[e>>2]=v;c[u>>2]=m;w=w+1|0;u=a[n>>0]|0;t=(u&1)==0;if(w>>>0<(t?(u&255)>>>1:y)>>>0){t=a[(t?I:c[H>>2]|0)+w>>0]|0;u=v;t=t<<24>>24==127?-1:t<<24>>24;v=0}else{u=v;t=x;v=0}}else v=x;s=s+-4|0;x=c[s>>2]|0;c[e>>2]=u+4;c[u>>2]=x;if((s|0)==(g|0))break;else x=v+1|0}}s=c[e>>2]|0}if((r|0)!=(s|0)?(B=s+-4|0,r>>>0>>0):0){s=B;do{y=c[r>>2]|0;c[r>>2]=c[s>>2];c[s>>2]=y;r=r+4|0;s=s+-4|0}while(r>>>0>>0)}break}default:{}}z=z+1|0}while((z|0)!=4);r=a[p>>0]|0;g=(r&1)==0;r=g?(r&255)>>>1:c[J>>2]|0;if(r>>>0>1){s=g?J:c[K>>2]|0;g=s+4|0;s=s+(r<<2)|0;t=c[e>>2]|0;u=s-g|0;if((r|0)!=1){r=t;while(1){c[r>>2]=c[g>>2];g=g+4|0;if((g|0)==(s|0))break;else r=r+4|0}}c[e>>2]=t+(u>>>2<<2)}switch(f&176|0){case 32:{c[d>>2]=c[e>>2];break}case 16:break;default:c[d>>2]=b}return}function ks(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+480|0;q=z+468|0;B=z+464|0;x=z+472|0;u=z+56|0;y=z+52|0;C=z+40|0;E=z+28|0;D=z+16|0;m=z+12|0;p=z+64|0;w=z+8|0;v=z+4|0;r=z;b=jn(f)|0;c[B>>2]=b;o=0;s=ra(37,B|0,44212)|0;t=o;o=0;do if(t&1)F=13;else{n=a[h>>0]|0;j=(n&1)==0;t=h+4|0;if(!((j?(n&255)>>>1:c[t>>2]|0)|0))n=0;else{j=c[(j?t:c[h+8>>2]|0)>>2]|0;o=0;k=ra(c[(c[s>>2]|0)+44>>2]|0,s|0,45)|0;n=o;o=0;if(n&1){F=13;break}n=(j|0)==(k|0)}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;qa(4,e|0,n|0,B|0,x|0,u|0,y|0,C|0,E|0,D|0,m|0);l=o;o=0;if(!(l&1)){l=a[h>>0]|0;e=c[t>>2]|0;j=(l&1)==0?(l&255)>>>1:e;m=c[m>>2]|0;if((j|0)>(m|0)){G=a[D>>0]|0;k=a[E>>0]|0;j=(j-m<<1|1)+m+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((k&1)==0?(k&255)>>>1:c[E+4>>2]|0)|0}else{G=a[D>>0]|0;j=a[E>>0]|0;j=m+2+((G&1)==0?(G&255)>>>1:c[D+4>>2]|0)+((j&1)==0?(j&255)>>>1:c[E+4>>2]|0)|0}if(j>>>0>100){j=Fl(j<<2)|0;k=j;if(!j){o=0;xa(6);G=o;o=0;if(!(G&1)){l=a[h>>0]|0;e=c[t>>2]|0;j=0;F=17}}else F=17}else{k=0;j=p;F=17}if((F|0)==17){G=(l&1)==0;h=G?t:c[h+8>>2]|0;o=0;na(2,j|0,w|0,v|0,c[f+4>>2]|0,h|0,h+((G?(l&255)>>>1:e)<<2)|0,s|0,n|0,x|0,c[u>>2]|0,c[y>>2]|0,C|0,E|0,D|0,m|0);G=o;o=0;if(!(G&1)?(c[r>>2]=c[d>>2],G=c[w>>2]|0,A=c[v>>2]|0,o=0,c[q>>2]=c[r>>2],A=ja(40,q|0,j|0,G|0,A|0,f|0,g|0)|0,G=o,o=0,!(G&1)):0){if(k){Gl(k);b=c[B>>2]|0}Wm(D);Wm(E);Im(C);pm(b)|0;i=z;return A|0}}j=Na()|0;if(k){Gl(k);b=c[B>>2]|0}}else j=Na()|0;Wm(D);Wm(E);Im(C)}while(0);if((F|0)==13)j=Na()|0;pm(b)|0;Ya(j|0);return 0}function ls(a){a=a|0;return}function ms(a){a=a|0;cj(a);return}function ns(b,d,e){b=b|0;d=d|0;e=e|0;b=lk((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0,1)|0;return b>>>((b|0)!=(-1|0)&1)|0}function os(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;k=i;i=i+16|0;l=k;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;j=a[h>>0]|0;m=(j&1)==0;d=m?h+1|0:c[h+8>>2]|0;j=m?(j&255)>>>1:c[h+4>>2]|0;h=d+j|0;a:do if((j|0)>0){while(1){o=0;ia(67,l|0,a[d>>0]|0);m=o;o=0;if(m&1)break;d=d+1|0;if(d>>>0>=h>>>0){j=4;break a}}d=Na()|0;j=7}else j=4;while(0);b:do if((j|0)==4){o=0;d=va(19,((e|0)==-1?-1:e<<1)|0,f|0,g|0,((a[l>>0]&1)==0?l+1|0:c[l+8>>2]|0)|0)|0;m=o;o=0;if(m&1){d=Na()|0;j=7;break}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;m=nl(d)|0;h=d+m|0;c:do if((m|0)>0){while(1){o=0;ia(67,b|0,a[d>>0]|0);m=o;o=0;if(m&1)break;d=d+1|0;if(d>>>0>=h>>>0)break c}d=Na()|0;Im(b);break b}while(0);Im(l);i=k;return}while(0);Im(l);Ya(d|0)}function ps(a,b){a=a|0;b=b|0;return}function qs(a){a=a|0;return}function rs(a){a=a|0;cj(a);return}function ss(b,d,e){b=b|0;d=d|0;e=e|0;b=lk((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0,1)|0;return b>>>((b|0)!=(-1|0)&1)|0}function ts(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+224|0;p=w+184|0;n=w+192|0;m=w+180|0;q=w+176|0;u=w+168|0;t=w+40|0;s=w+32|0;v=w+28|0;x=w+16|0;l=w+8|0;r=w;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[l+4>>2]=0;c[l>>2]=44696;k=a[h>>0]|0;y=(k&1)==0;j=h+4|0;d=y?j:c[h+8>>2]|0;h=y?(k&255)>>>1:c[j>>2]|0;j=d+(h<<2)|0;k=n+32|0;a:do if((h|0)>0){b:while(1){c[q>>2]=d;o=0;h=ya(c[(c[l>>2]|0)+12>>2]|0,l|0,p|0,d|0,j|0,q|0,n|0,k|0,m|0)|0;y=o;o=0;if(y&1){h=12;break}if((h|0)==2?1:(c[q>>2]|0)==(d|0)){h=5;break}if(n>>>0<(c[m>>2]|0)>>>0){d=n;do{o=0;ia(67,x|0,a[d>>0]|0);y=o;o=0;if(y&1){h=11;break b}d=d+1|0}while(d>>>0<(c[m>>2]|0)>>>0)}d=c[q>>2]|0;if(!((h|0)!=2&d>>>0>>0)){h=9;break a}}if((h|0)==5){o=0;ha(190,58955);o=0;d=Na()|0}else if((h|0)==11)d=Na()|0;else if((h|0)==12)d=Na()|0}else h=9;while(0);c:do if((h|0)==9){o=0;d=va(19,((e|0)==-1?-1:e<<1)|0,f|0,g|0,((a[x>>0]&1)==0?x+1|0:c[x+8>>2]|0)|0)|0;y=o;o=0;if(y&1){d=Na()|0;break}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[r+4>>2]=0;c[r>>2]=44744;y=nl(d)|0;j=d+y|0;k=j;l=t+128|0;d:do if((y|0)>0){e:while(1){c[v>>2]=d;o=0;h=ya(c[(c[r>>2]|0)+16>>2]|0,r|0,u|0,d|0,((k-d|0)>32?d+32|0:j)|0,v|0,t|0,l|0,s|0)|0;y=o;o=0;if(y&1){h=24;break}if((h|0)==2?1:(c[v>>2]|0)==(d|0)){h=18;break}if(t>>>0<(c[s>>2]|0)>>>0){d=t;do{o=0;ia(92,b|0,c[d>>2]|0);y=o;o=0;if(y&1){h=23;break e}d=d+4|0}while(d>>>0<(c[s>>2]|0)>>>0)}d=c[v>>2]|0;if(!((h|0)!=2&d>>>0>>0))break d}if((h|0)==18){o=0;ha(190,58955);o=0;d=Na()|0}else if((h|0)==23)d=Na()|0;else if((h|0)==24)d=Na()|0;Wm(b);break c}while(0);Im(x);i=w;return}while(0);Im(x);Ya(d|0)}function us(a,b){a=a|0;b=b|0;return}function vs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b+4>>2]=d+-1;c[b>>2]=44196;h=b+8|0;o=0;ia(94,h|0,28);g=o;o=0;if(g&1)d=Na()|0;else{g=b+144|0;o=0;wa(5,g|0,58885,1);f=o;o=0;if(f&1)d=Na()|0;else{e=c[h>>2]|0;f=b+12|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}c[495]=0;c[494]=43124;o=0;ia(95,b|0,1976);f=o;o=0;do if(((((((((((((!(f&1)?(c[497]=0,c[496]=43164,o=0,ia(96,b|0,1984),f=o,o=0,!(f&1)):0)?(c[499]=0,c[498]=44236,c[500]=0,a[2004]=0,c[500]=Os()|0,o=0,ia(97,b|0,1992),f=o,o=0,!(f&1)):0)?(c[503]=0,c[502]=44484,o=0,ia(98,b|0,2008),f=o,o=0,!(f&1)):0)?(c[505]=0,c[504]=44552,o=0,ia(99,b|0,2016),f=o,o=0,!(f&1)):0)?(o=0,ia(100,2024,1),f=o,o=0,!(f&1)):0)?(o=0,ia(101,b|0,2024),f=o,o=0,!(f&1)):0)?(c[511]=0,c[510]=44600,o=0,ia(102,b|0,2040),f=o,o=0,!(f&1)):0)?(c[513]=0,c[512]=44648,o=0,ia(103,b|0,2048),f=o,o=0,!(f&1)):0)?(Tt(2056,1),o=0,ia(104,b|0,2056),f=o,o=0,!(f&1)):0)?(Ut(2080,1),o=0,ia(105,b|0,2080),f=o,o=0,!(f&1)):0)?(c[529]=0,c[528]=43204,o=0,ia(106,b|0,2112),f=o,o=0,!(f&1)):0)?(c[531]=0,c[530]=43276,o=0,ia(107,b|0,2120),f=o,o=0,!(f&1)):0)?(c[533]=0,c[532]=43348,o=0,ia(108,b|0,2128),f=o,o=0,!(f&1)):0){c[535]=0;c[534]=43408;o=0;ia(109,b|0,2136);f=o;o=0;if(f&1){i=42;break}c[537]=0;c[536]=43716;o=0;ia(110,b|0,2144);f=o;o=0;if(f&1){i=42;break}c[539]=0;c[538]=43780;o=0;ia(111,b|0,2152);f=o;o=0;if(f&1){i=42;break}c[541]=0;c[540]=43844;o=0;ia(112,b|0,2160);f=o;o=0;if(f&1){i=42;break}c[543]=0;c[542]=43908;o=0;ia(113,b|0,2168);f=o;o=0;if(f&1){i=42;break}c[545]=0;c[544]=43972;o=0;ia(114,b|0,2176);f=o;o=0;if(f&1){i=42;break}c[547]=0;c[546]=44008;o=0;ia(115,b|0,2184);f=o;o=0;if(f&1){i=42;break}c[549]=0;c[548]=44044;o=0;ia(116,b|0,2192);f=o;o=0;if(f&1){i=42;break}c[551]=0;c[550]=44080;o=0;ia(117,b|0,2200);f=o;o=0;if(f&1){i=42;break}c[553]=0;c[552]=43468;c[554]=43516;o=0;ia(118,b|0,2208);f=o;o=0;if(f&1){i=42;break}c[557]=0;c[556]=43560;c[558]=43608;o=0;ia(119,b|0,2224);f=o;o=0;if(f&1){i=42;break}c[561]=0;c[560]=44464;o=0;d=ua(3)|0;f=o;o=0;if(f&1){d=Na()|0;break}c[562]=d;c[560]=43652;o=0;ia(120,b|0,2240);f=o;o=0;if(f&1){i=42;break}c[565]=0;c[564]=44464;o=0;d=ua(3)|0;f=o;o=0;if(f&1){d=Na()|0;break}c[566]=d;c[564]=43684;o=0;ia(121,b|0,2256);i=o;o=0;if(i&1){i=42;break}c[569]=0;c[568]=44116;o=0;ia(122,b|0,2272);i=o;o=0;if(i&1){i=42;break}c[571]=0;c[570]=44156;o=0;ia(123,b|0,2280);i=o;o=0;if(i&1){i=42;break}return}else i=42;while(0);if((i|0)==42)d=Na()|0;Im(g)}Dv(h)}Ya(d|0)}function ws(){var b=0;do if((a[2288]|0)==0?(Ha(2288)|0)!=0:0){o=0;ua(4)|0;b=o;o=0;if(b&1){b=Na()|0;sb(2288);Ya(b|0)}else{c[11246]=44980;Pa(2288);break}}while(0);return c[11246]|0}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;om(b);f=a+8|0;e=c[f>>2]|0;do if((c[a+12>>2]|0)-e>>2>>>0<=d>>>0){o=0;ia(124,f|0,d+1|0);a=o;o=0;if(!(a&1)){e=c[f>>2]|0;break}e=Na()|0;if(b)pm(b)|0;Ya(e|0)}while(0);a=c[e+(d<<2)>>2]|0;if(a){pm(a)|0;e=c[f>>2]|0}c[e+(d<<2)>>2]=b;return}function ys(a){a=a|0;var b=0,d=0,e=0,f=0;c[a>>2]=44196;e=a+8|0;f=a+12|0;b=c[e>>2]|0;if((c[f>>2]|0)!=(b|0)){d=0;do{b=c[b+(d<<2)>>2]|0;if(b)pm(b)|0;d=d+1|0;b=c[e>>2]|0}while(d>>>0<(c[f>>2]|0)-b>>2>>>0)}Im(a+144|0);Dv(e);return}function zs(a){a=a|0;ys(a);cj(a);return}function As(a,b){a=a|0;b=b|0;if(Fv(a,b)|0)return c[(c[a+8>>2]|0)+(b<<2)>>2]|0;else{a=Ma(4)|0;qj(a);lb(a|0,640,82)}return 0}function Bs(){vs(2296,1);c[11245]=2296;return 44980}function Cs(){var a=0;a=c[(ws()|0)>>2]|0;c[11247]=a;om(a);return 44988}function Ds(){var b=0;do if((a[2456]|0)==0?(Ha(2456)|0)!=0:0){o=0;ua(5)|0;b=o;o=0;if(b&1){b=Na()|0;sb(2456);Ya(b|0)}else{c[11248]=44988;Pa(2456);break}}while(0);return c[11248]|0}function Es(a){a=a|0;var b=0,d=0;o=0;b=ua(6)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}else{d=c[b>>2]|0;c[a>>2]=d;om(d);return}}function Fs(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;om(b);return}function Gs(a){a=a|0;pm(c[a>>2]|0)|0;return}function Hs(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;if((c[a>>2]|0)!=-1){c[b>>2]=a;c[b+4>>2]=191;c[b+8>>2]=0;Em(a,b,192)}i=d;return (c[a+4>>2]|0)+-1|0}function Is(a,b){a=a|0;b=b|0;a=c[a>>2]|0;return As(a,Hs(b)|0)|0}function Js(a){a=a|0;cj(a);return}function Ks(a){a=a|0;if(a)Bb[c[(c[a>>2]|0)+4>>2]&255](a);return}function Ls(a){a=a|0;var b=0;b=c[11052]|0;c[11052]=b+1;c[a+4>>2]=b+1;return}function Ms(a){a=a|0;cj(a);return}function Ns(a,c,d){a=a|0;c=c|0;d=d|0;if(d>>>0<128)d=(b[(Os()|0)+(d<<1)>>1]&c)<<16>>16!=0;else d=0;return d|0}function Os(){var a=0,b=0;o=0;a=ua(7)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Ps(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;i=(f-d|0)>>>2;if((d|0)!=(f|0)){h=d;while(1){a=c[h>>2]|0;if(a>>>0<128)a=e[(Os()|0)+(a<<1)>>1]|0;else a=0;b[g>>1]=a;h=h+4|0;if((h|0)==(f|0))break;else g=g+2|0}}return d+(i<<2)|0}function Qs(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;a:do if((e|0)==(f|0))e=f;else while(1){a=c[e>>2]|0;if(a>>>0<128?(b[(Os()|0)+(a<<1)>>1]&d)<<16>>16!=0:0)break a;e=e+4|0;if((e|0)==(f|0)){e=f;break}}while(0);return e|0}function Rs(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;a:do if((e|0)==(f|0))e=f;else while(1){a=c[e>>2]|0;if(a>>>0>=128)break a;if(!((b[(Os()|0)+(a<<1)>>1]&d)<<16>>16))break a;e=e+4|0;if((e|0)==(f|0)){e=f;break}}while(0);return e|0}function Ss(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[(Ts()|0)+(b<<2)>>2]|0;return b|0}function Ts(){var a=0,b=0;o=0;a=ua(8)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Us(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(d-b|0)>>>2;if((b|0)!=(d|0)){e=b;do{a=c[e>>2]|0;if(a>>>0<128)a=c[(Ts()|0)+(a<<2)>>2]|0;c[e>>2]=a;e=e+4|0}while((e|0)!=(d|0))}return b+(f<<2)|0}function Vs(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[(Ws()|0)+(b<<2)>>2]|0;return b|0}function Ws(){var a=0,b=0;o=0;a=ua(9)|0;b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else return c[a>>2]|0;return 0}function Xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(d-b|0)>>>2;if((b|0)!=(d|0)){e=b;do{a=c[e>>2]|0;if(a>>>0<128)a=c[(Ws()|0)+(a<<2)>>2]|0;c[e>>2]=a;e=e+4|0}while((e|0)!=(d|0))}return b+(f<<2)|0}function Ys(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Zs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;if((d|0)!=(e|0))while(1){c[f>>2]=a[d>>0];d=d+1|0;if((d|0)==(e|0))break;else f=f+4|0}return e|0}function _s(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function $s(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=(e-d|0)>>>2;if((d|0)!=(e|0)){h=d;b=g;while(1){g=c[h>>2]|0;a[b>>0]=g>>>0<128?g&255:f;h=h+4|0;if((h|0)==(e|0))break;else b=b+1|0}}return d+(i<<2)|0}function at(b){b=b|0;var d=0;c[b>>2]=44236;d=c[b+8>>2]|0;if((d|0)!=0?(a[b+12>>0]|0)!=0:0)dj(d);return}function bt(a){a=a|0;at(a);cj(a);return}function ct(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[(Ts()|0)+((b&255)<<2)>>2]&255;return b|0}function dt(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)!=(e|0)){b=d;do{d=a[b>>0]|0;if(d<<24>>24>-1)d=c[(Ts()|0)+(d<<24>>24<<2)>>2]&255;a[b>>0]=d;b=b+1|0}while((b|0)!=(e|0))}return e|0}function et(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[(Ws()|0)+(b<<24>>24<<2)>>2]&255;return b|0}function ft(b,d,e){b=b|0;d=d|0;e=e|0;if((d|0)!=(e|0)){b=d;do{d=a[b>>0]|0;if(d<<24>>24>-1)d=c[(Ws()|0)+(d<<24>>24<<2)>>2]&255;a[b>>0]=d;b=b+1|0}while((b|0)!=(e|0))}return e|0}function gt(a,b){a=a|0;b=b|0;return b|0}function ht(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if((c|0)!=(d|0))while(1){a[e>>0]=a[c>>0]|0;c=c+1|0;if((c|0)==(d|0))break;else e=e+1|0}return d|0}function it(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function jt(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((c|0)!=(d|0))while(1){b=a[c>>0]|0;a[f>>0]=b<<24>>24>-1?b:e;c=c+1|0;if((c|0)==(d|0))break;else f=f+1|0}return d|0}function kt(a){a=a|0;cj(a);return}function lt(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function mt(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function nt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function ot(a){a=a|0;return 1}function pt(a){a=a|0;return 1}function qt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=d-c|0;return (a>>>0>>0?a:e)|0}function rt(a){a=a|0;return 1}function st(a,b){a=a|0;b=b|0;var d=0;c[a+4>>2]=b+-1;c[a>>2]=44304;o=0;b=ua(3)|0;d=o;o=0;if(d&1){d=Na()|0;Ya(d|0)}else{c[a+8>>2]=b;return}}function tt(a){a=a|0;wu(a);cj(a);return}\n function xl(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=i;i=i+624|0;ca=ha+24|0;ea=ha+16|0;da=ha+588|0;Y=ha+576|0;ba=ha;V=ha+536|0;ga=ha+8|0;fa=ha+528|0;M=(e|0)!=0;N=V+40|0;U=N;V=V+39|0;W=ga+4|0;X=Y+12|0;Y=Y+11|0;Z=da;_=X;aa=_-Z|0;O=-2-Z|0;P=_+2|0;Q=ca+288|0;R=da+9|0;S=R;T=da+8|0;m=0;w=f;n=0;f=0;a:while(1){do if((m|0)>-1)if((n|0)>(2147483647-m|0)){c[(ck()|0)>>2]=75;m=-1;break}else{m=n+m|0;break}while(0);n=a[w>>0]|0;if(!(n<<24>>24)){L=245;break}else o=w;b:while(1){switch(n<<24>>24){case 37:{n=o;L=9;break b}case 0:{n=o;break b}default:{}}K=o+1|0;n=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[n+1>>0]|0)!=37)break c;o=o+1|0;n=n+2|0;if((a[n>>0]|0)==37)L=9;else break}while(0);y=o-w|0;if(M?(c[e>>2]&32|0)==0:0)Xk(w,y,e)|0;if((o|0)!=(w|0)){w=n;n=y;continue}r=n+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[n+2>>0]|0)==36;r=K?n+3|0:r;o=a[r>>0]|0;u=K?p:-1;f=K?1:f}else u=-1;n=o<<24>>24;d:do if((n&-32|0)==32){p=0;while(1){if(!(1<>24)+-32|p;r=r+1|0;o=a[r>>0]|0;n=o<<24>>24;if((n&-32|0)!=32){s=p;n=r;break}}}else{s=0;n=r}while(0);do if(o<<24>>24==42){p=n+1|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[l+(o<<2)>>2]=10;f=1;n=n+3|0;o=c[j+((a[p>>0]|0)+-48<<3)>>2]|0}else{if(f){m=-1;break a}if(!M){x=s;n=p;f=0;K=0;break}f=(c[g>>2]|0)+(4-1)&~(4-1);o=c[f>>2]|0;c[g>>2]=f+4;f=0;n=p}if((o|0)<0){x=s|8192;K=0-o|0}else{x=s;K=o}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){o=0;do{o=(o*10|0)+p|0;n=n+1|0;p=(a[n>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{x=s;K=o}}else{x=s;K=0}}while(0);e:do if((a[n>>0]|0)==46){p=n+1|0;o=a[p>>0]|0;if(o<<24>>24!=42){r=(o<<24>>24)+-48|0;if(r>>>0<10){n=p;o=0}else{n=p;r=0;break}while(1){o=(o*10|0)+r|0;n=n+1|0;r=(a[n>>0]|0)+-48|0;if(r>>>0>=10){r=o;break e}}}p=n+2|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;n=n+4|0;r=c[j+((a[p>>0]|0)+-48<<3)>>2]|0;break}if(f){m=-1;break a}if(M){n=(c[g>>2]|0)+(4-1)&~(4-1);r=c[n>>2]|0;c[g>>2]=n+4;n=p}else{n=p;r=0}}else r=-1;while(0);t=0;while(1){o=(a[n>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=n+1|0;o=a[56223+(t*58|0)+o>>0]|0;s=o&255;if((s+-1|0)>>>0<8){n=p;t=s}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=s;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ba;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Cl(ba,s,g)}while(0);if((L|0)==52?(L=0,!M):0){w=J;n=y;continue}u=a[n>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=x&-65537;I=(x&8192|0)==0?x:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 1:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 2:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}case 3:{b[c[ba>>2]>>1]=m;w=J;n=y;continue a}case 4:{a[c[ba>>2]>>0]=m;w=J;n=y;continue a}case 6:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 7:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}default:{w=J;n=y;continue a}}case 112:{t=I|8;r=r>>>0>8?r:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)n=N;else{n=N;do{n=n+-1|0;a[n>>0]=o&7|48;o=kw(o|0,p|0,3)|0;p=D}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;s=56703;L=77}else{t=U-n+1|0;o=I;r=(r|0)<(t|0)?t:r;t=0;s=56703;L=77}break}case 105:case 100:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){n=hw(0,0,n|0,o|0)|0;o=D;p=ba;c[p>>2]=n;c[p+4>>2]=o;p=1;s=56703;L=76;break f}if(!(I&2048)){s=I&1;p=s;s=(s|0)==0?56703:56705;L=76}else{p=1;s=56704;L=76}break}case 117:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;p=0;s=56703;L=76;break}case 99:{a[V>>0]=c[ba>>2];w=V;o=1;t=0;u=56703;n=N;break}case 109:{n=dk(c[(ck()|0)>>2]|0)|0;L=82;break}case 115:{n=c[ba>>2]|0;n=(n|0)!=0?n:56713;L=82;break}case 67:{c[ga>>2]=c[ba>>2];c[W>>2]=0;c[ba>>2]=ga;r=-1;L=86;break}case 83:{if(!r){El(e,32,K,0,I);n=0;L=98}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ba>>3];c[ea>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?56721:56726}else{G=1;H=56723}else{q=-q;G=1;H=56720}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){v=+wk(q,ea)*2.0;o=v!=0.0;if(o)c[ea>>2]=(c[ea>>2]|0)+-1;C=u|32;if((C|0)==97){w=u&32;y=(w|0)==0?H:H+9|0;x=G|2;n=12-r|0;do if(!(r>>>0>11|(n|0)==0)){q=8.0;do{n=n+-1|0;q=q*16.0}while((n|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-v-q));break}else{q=v+q-q;break}}else q=v;while(0);o=c[ea>>2]|0;n=(o|0)<0?0-o|0:o;n=Dl(n,((n|0)<0)<<31>>31,X)|0;if((n|0)==(X|0)){a[Y>>0]=48;n=Y}a[n+-1>>0]=(o>>31&2)+43;t=n+-2|0;a[t>>0]=u+15;s=(r|0)<1;p=(I&8|0)==0;o=da;while(1){H=~~q;n=o+1|0;a[o>>0]=d[56687+H>>0]|w;q=(q-+(H|0))*16.0;do if((n-Z|0)==1){if(p&(s&q==0.0))break;a[n>>0]=46;n=o+2|0}while(0);if(!(q!=0.0))break;else o=n}r=(r|0)!=0&(O+n|0)<(r|0)?P+r-t|0:aa-t+n|0;p=r+x|0;El(e,32,K,p,I);if(!(c[e>>2]&32))Xk(y,x,e)|0;El(e,48,K,p,I^65536);n=n-Z|0;if(!(c[e>>2]&32))Xk(da,n,e)|0;o=_-t|0;El(e,48,r-(n+o)|0,0,0);if(!(c[e>>2]&32))Xk(t,o,e)|0;El(e,32,K,p,I^8192);n=(p|0)<(K|0)?K:p;break}n=(r|0)<0?6:r;if(o){o=(c[ea>>2]|0)+-28|0;c[ea>>2]=o;q=v*268435456.0}else{q=v;o=c[ea>>2]|0}F=(o|0)<0?ca:Q;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[ea>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0>>0)r=s;else{o=0;do{B=mw(c[r>>2]|0,0,t|0)|0;B=jw(B|0,D|0,o|0,0)|0;o=D;A=vw(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=uw(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[ea>>2]|0)-t|0;c[ea>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((n+25|0)/9|0)+1|0;z=(C|0)==102;w=r;while(1){x=0-o|0;x=(x|0)>9?9:x;do if(w>>>0

>>0){o=(1<>>x;r=0;t=w;do{B=c[t>>2]|0;c[t>>2]=(B>>>x)+r;r=$(B&o,s)|0;t=t+4|0}while(t>>>0

>>0);o=(c[w>>2]|0)==0?w+4|0:w;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[w>>2]|0)==0?w+4|0:w;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[ea>>2]|0)+x|0;c[ea>>2]=o;if((o|0)>=0){w=r;break}else w=r}}else w=r;do if(w>>>0

>>0){o=(E-w>>2)*9|0;s=c[w>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(C|0)==103;B=(n|0)!=0;r=n-((C|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;z=(t|0)/9|0;r=F+(z+-1023<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;x=c[r>>2]|0;y=(x>>>0)%(s>>>0)|0;if((y|0)==0?(F+(z+-1022<<2)|0)==(p|0):0)s=w;else L=163;do if((L|0)==163){L=0;v=(((x>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;t=(s|0)/2|0;do if(y>>>0>>0)q=.5;else{if((y|0)==(t|0)?(F+(z+-1022<<2)|0)==(p|0):0){q=1.0;break}q=1.5}while(0);do if(G){if((a[H>>0]|0)!=45)break;v=-v;q=-q}while(0);t=x-y|0;c[r>>2]=t;if(!(v+q!=v)){s=w;break}C=t+s|0;c[r>>2]=C;if(C>>>0>999999999){o=w;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0>>0){o=o+-4|0;c[o>>2]=0}C=(c[s>>2]|0)+1|0;c[s>>2]=C;if(C>>>0>999999999)r=s;else{w=o;r=s;break}}}o=(E-w>>2)*9|0;t=c[w>>2]|0;if(t>>>0<10){s=w;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=w}while(0);C=r+4|0;w=s;p=p>>>0>C>>>0?C:p}y=0-o|0;while(1){if(p>>>0<=w>>>0){z=0;C=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{z=1;C=p;break}}do if(A){n=(B&1^1)+n|0;if((n|0)>(o|0)&(o|0)>-5){u=u+-1|0;n=n+-1-o|0}else{u=u+-2|0;n=n+-1|0}p=I&8;if(p)break;do if(z){p=c[C+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(((p>>>0)%(s>>>0)|0|0)==0)}else r=9;while(0);p=((C-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}}else p=I&8;while(0);x=n|p;s=(x|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?y:o;r=Dl(r,((r|0)<0)<<31>>31,X)|0;if((_-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((_-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=_-E|0;u=E}y=G+1+n+s+o|0;El(e,32,K,y,I);if(!(c[e>>2]&32))Xk(H,G,e)|0;El(e,48,K,y,I^65536);do if(t){r=w>>>0>F>>>0?F:w;o=r;do{p=Dl(c[o>>2]|0,0,R)|0;do if((o|0)==(r|0)){if((p|0)!=(R|0))break;a[T>>0]=48;p=T}else{if(p>>>0<=da>>>0)break;do{p=p+-1|0;a[p>>0]=48}while(p>>>0>da>>>0)}while(0);if(!(c[e>>2]&32))Xk(p,S-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(x){if(c[e>>2]&32)break;Xk(56755,1,e)|0}while(0);if((n|0)>0&o>>>0>>0){p=o;while(1){o=Dl(c[p>>2]|0,0,R)|0;if(o>>>0>da>>>0)do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0);if(!(c[e>>2]&32))Xk(o,(n|0)>9?9:n,e)|0;p=p+4|0;o=n+-9|0;if(!((n|0)>9&p>>>0>>0)){n=o;break}else n=o}}El(e,48,n+9|0,9,0)}else{t=z?C:w+4|0;if((n|0)>-1){s=(p|0)==0;r=w;do{o=Dl(c[r>>2]|0,0,R)|0;if((o|0)==(R|0)){a[T>>0]=48;o=T}do if((r|0)==(w|0)){p=o+1|0;if(!(c[e>>2]&32))Xk(o,1,e)|0;if(s&(n|0)<1){o=p;break}if(c[e>>2]&32){o=p;break}Xk(56755,1,e)|0;o=p}else{if(o>>>0<=da>>>0)break;do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0)}while(0);p=S-o|0;if(!(c[e>>2]&32))Xk(o,(n|0)>(p|0)?p:n,e)|0;n=n-p|0;r=r+4|0}while(r>>>0>>0&(n|0)>-1)}El(e,48,n+18|0,18,0);if(c[e>>2]&32)break;Xk(u,_-u|0,e)|0}while(0);El(e,32,K,y,I^8192);n=(y|0)<(K|0)?K:y}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;El(e,32,K,r,p);n=c[e>>2]|0;if(!(n&32)){Xk(H,o,e)|0;n=c[e>>2]|0}if(!(n&32))Xk(s?(t?56747:56751):t?56739:56743,3,e)|0;El(e,32,K,r,I^8192);n=(r|0)<(K|0)?K:r}while(0);w=J;continue a}default:{p=I;o=r;t=0;u=56703;n=N}}while(0);g:do if((L|0)==64){p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;s=u&32;if(!((o|0)==0&(p|0)==0)){n=N;do{n=n+-1|0;a[n>>0]=d[56687+(o&15)>>0]|s;o=kw(o|0,p|0,4)|0;p=D}while(!((o|0)==0&(p|0)==0));L=ba;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;s=56703;L=77}else{o=t;t=2;s=56703+(u>>4)|0;L=77}}else{n=N;o=t;t=0;s=56703;L=77}}else if((L|0)==76){n=Dl(n,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=jl(n,0,r)|0;H=(I|0)==0;w=n;o=H?r:I-n|0;t=0;u=56703;n=H?n+r|0:I}else if((L|0)==86){L=0;o=0;n=0;s=c[ba>>2]|0;while(1){p=c[s>>2]|0;if(!p)break;n=Ik(fa,p)|0;if((n|0)<0|n>>>0>(r-o|0)>>>0)break;o=n+o|0;if(r>>>0>o>>>0)s=s+4|0;else break}if((n|0)<0){m=-1;break a}El(e,32,K,o,I);if(!o){n=0;L=98}else{p=0;r=c[ba>>2]|0;while(1){n=c[r>>2]|0;if(!n){n=o;L=98;break g}n=Ik(fa,n)|0;p=n+p|0;if((p|0)>(o|0)){n=o;L=98;break g}if(!(c[e>>2]&32))Xk(fa,n,e)|0;if(p>>>0>=o>>>0){n=o;L=98;break}else r=r+4|0}}}while(0);if((L|0)==98){L=0;El(e,32,K,n,I^8192);w=J;n=(K|0)>(n|0)?K:n;continue}if((L|0)==77){L=0;p=(r|0)>-1?o&-65537:o;o=ba;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((r|0)!=0|o){o=(o&1^1)+(U-n)|0;w=n;o=(r|0)>(o|0)?r:o;u=s;n=N}else{w=N;o=0;u=s;n=N}}s=n-w|0;o=(o|0)<(s|0)?s:o;r=t+o|0;n=(K|0)<(r|0)?r:K;El(e,32,n,r,p);if(!(c[e>>2]&32))Xk(u,t,e)|0;El(e,48,n,r,p^65536);El(e,48,o,s,0);if(!(c[e>>2]&32))Xk(w,s,e)|0;El(e,32,n,r,p^8192);w=J}h:do if((L|0)==245)if(!e)if(f){m=1;while(1){f=c[l+(m<<2)>>2]|0;if(!f)break;Cl(j+(m<<3)|0,f,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ha;return m|0}function yl(a,b,c){a=a|0;b=b|0;c=c|0;return Rk(a,b,c)|0}function zl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+112|0;h=j;f=h;g=f+112|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;gk(h,0);e=+ek(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b)c[b>>2]=(d|0)!=0?a+d|0:a;i=j;return +e}function Al(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+112|0;j=k;c[j>>2]=0;g=j+4|0;c[g>>2]=a;c[j+44>>2]=a;h=j+8|0;c[h>>2]=(a|0)<0?-1:a+2147483647|0;c[j+76>>2]=-1;gk(j,0);e=fk(j,d,1,e,f)|0;if(b)c[b>>2]=a+((c[g>>2]|0)+(c[j+108>>2]|0)-(c[h>>2]|0));i=k;return e|0}function Bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;lw(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Cl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Dl(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=vw(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=uw(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=D}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function El(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;iw(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){Xk(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Xk(h,f,a)|0}while(0);i=j;return}function Fl(a){a=a|0;var 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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=c[10218]|0;d=i>>>a;if(d&3){a=(d&1^1)+a|0;e=a<<1;d=40912+(e<<2)|0;e=40912+(e+2<<2)|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[10222]|0)>>>0)Ga();b=h+12|0;if((c[b>>2]|0)==(f|0)){c[b>>2]=d;c[e>>2]=h;break}else Ga()}else c[10218]=i&~(1<>2]=M|3;M=f+(M|4)|0;c[M>>2]=c[M>>2]|1;M=g;return M|0}h=c[10220]|0;if(o>>>0>h>>>0){if(d){e=2<>>12&16;e=e>>>j;f=e>>>5&8;e=e>>>f;g=e>>>2&4;e=e>>>g;d=e>>>1&2;e=e>>>d;a=e>>>1&1;a=(f|j|g|d|a)+(e>>>a)|0;e=a<<1;d=40912+(e<<2)|0;e=40912+(e+2<<2)|0;g=c[e>>2]|0;j=g+8|0;f=c[j>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[10222]|0)>>>0)Ga();b=f+12|0;if((c[b>>2]|0)==(g|0)){c[b>>2]=d;c[e>>2]=f;k=c[10220]|0;break}else Ga()}else{c[10218]=i&~(1<>2]=o|3;i=g+o|0;c[g+(o|4)>>2]=h|1;c[g+M>>2]=h;if(k){f=c[10223]|0;d=k>>>3;b=d<<1;e=40912+(b<<2)|0;a=c[10218]|0;d=1<>2]|0;if(b>>>0<(c[10222]|0)>>>0)Ga();else{l=a;m=b}}else{c[10218]=a|d;l=40912+(b+2<<2)|0;m=e}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=e}c[10220]=h;c[10223]=i;M=j;return M|0}a=c[10219]|0;if(a){d=(a&0-a)+-1|0;L=d>>>12&16;d=d>>>L;K=d>>>5&8;d=d>>>K;M=d>>>2&4;d=d>>>M;a=d>>>1&2;d=d>>>a;e=d>>>1&1;e=c[41176+((K|L|M|a|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;a=e;while(1){b=c[a+16>>2]|0;if(!b){b=c[a+20>>2]|0;if(!b){j=d;break}}a=(c[b+4>>2]&-8)-o|0;M=a>>>0>>0;d=M?a:d;a=b;e=M?b:e}g=c[10222]|0;if(e>>>0>>0)Ga();i=e+o|0;if(e>>>0>=i>>>0)Ga();h=c[e+24>>2]|0;d=c[e+12>>2]|0;do if((d|0)==(e|0)){a=e+20|0;b=c[a>>2]|0;if(!b){a=e+16|0;b=c[a>>2]|0;if(!b){n=0;break}}while(1){d=b+20|0;f=c[d>>2]|0;if(f){b=f;a=d;continue}d=b+16|0;f=c[d>>2]|0;if(!f)break;else{b=f;a=d}}if(a>>>0>>0)Ga();else{c[a>>2]=0;n=b;break}}else{f=c[e+8>>2]|0;if(f>>>0>>0)Ga();b=f+12|0;if((c[b>>2]|0)!=(e|0))Ga();a=d+8|0;if((c[a>>2]|0)==(e|0)){c[b>>2]=d;c[a>>2]=f;n=d;break}else Ga()}while(0);do if(h){b=c[e+28>>2]|0;a=41176+(b<<2)|0;if((e|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(e|0))c[b>>2]=n;else c[h+20>>2]=n;if(!n)break}a=c[10222]|0;if(n>>>0>>0)Ga();c[n+24>>2]=h;b=c[e+16>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);b=c[e+20>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[n+20>>2]=b;c[b+24>>2]=n;break}}while(0);if(j>>>0<16){M=j+o|0;c[e+4>>2]=M|3;M=e+(M+4)|0;c[M>>2]=c[M>>2]|1}else{c[e+4>>2]=o|3;c[e+(o|4)>>2]=j|1;c[e+(j+o)>>2]=j;b=c[10220]|0;if(b){g=c[10223]|0;d=b>>>3;b=d<<1;f=40912+(b<<2)|0;a=c[10218]|0;d=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{p=b;q=a}}else{c[10218]=a|d;p=40912+(b+2<<2)|0;q=f}c[p>>2]=g;c[q+12>>2]=g;c[g+8>>2]=q;c[g+12>>2]=f}c[10220]=j;c[10223]=i}M=e+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=c[10219]|0;if(l){d=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)k=31;else{q=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;k=14-(p|q|k)+(v<>>15)|0;k=m>>>(k+7|0)&1|k<<1}else k=0;a=c[41176+(k<<2)>>2]|0;a:do if(!a){f=0;a=0;v=86}else{h=d;f=0;i=m<<((k|0)==31?0:25-(k>>>1)|0);j=a;a=0;while(1){g=c[j+4>>2]&-8;d=g-m|0;if(d>>>0>>0)if((g|0)==(m|0)){g=j;a=j;v=90;break a}else a=j;else d=h;v=c[j+20>>2]|0;j=c[j+16+(i>>>31<<2)>>2]|0;f=(v|0)==0|(v|0)==(j|0)?f:v;if(!j){v=86;break}else{h=d;i=i<<1}}}while(0);if((v|0)==86){if((f|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;f=a>>>1&1;f=c[41176+((l|n|p|q|f)+(a>>>f)<<2)>>2]|0;a=0}if(!f){i=d;j=a}else{g=f;v=90}}if((v|0)==90)while(1){v=0;q=(c[g+4>>2]&-8)-m|0;f=q>>>0>>0;d=f?q:d;a=f?g:a;f=c[g+16>>2]|0;if(f){g=f;v=90;continue}g=c[g+20>>2]|0;if(!g){i=d;j=a;break}else v=90}if((j|0)!=0?i>>>0<((c[10220]|0)-m|0)>>>0:0){f=c[10222]|0;if(j>>>0>>0)Ga();h=j+m|0;if(j>>>0>=h>>>0)Ga();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){o=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0>>0)Ga();else{c[a>>2]=0;o=b;break}}else{e=c[j+8>>2]|0;if(e>>>0>>0)Ga();b=e+12|0;if((c[b>>2]|0)!=(j|0))Ga();a=d+8|0;if((c[a>>2]|0)==(j|0)){c[b>>2]=d;c[a>>2]=e;o=d;break}else Ga()}while(0);do if(g){b=c[j+28>>2]|0;a=41176+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=o;if(!o){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=g+16|0;if((c[b>>2]|0)==(j|0))c[b>>2]=o;else c[g+20>>2]=o;if(!o)break}a=c[10222]|0;if(o>>>0>>0)Ga();c[o+24>>2]=g;b=c[j+16>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[o+16>>2]=b;c[b+24>>2]=o;break}while(0);b=c[j+20>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[o+20>>2]=b;c[b+24>>2]=o;break}}while(0);b:do if(i>>>0>=16){c[j+4>>2]=m|3;c[j+(m|4)>>2]=i|1;c[j+(i+m)>>2]=i;b=i>>>3;if(i>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{s=b;t=a}}else{c[10218]=d|b;s=40912+(a+2<<2)|0;t=e}c[s>>2]=h;c[t+12>>2]=h;c[j+(m+8)>>2]=t;c[j+(m+12)>>2]=e;break}b=i>>>8;if(b)if(i>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;b=41176+(e<<2)|0;c[j+(m+28)>>2]=e;c[j+(m+20)>>2]=0;c[j+(m+16)>>2]=0;a=c[10219]|0;d=1<>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(i|0)){e=i<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(i|0)){y=d;break c}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break b}}else y=b;while(0);b=y+8|0;a=c[b>>2]|0;M=c[10222]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[j+(m+8)>>2]=a;c[j+(m+12)>>2]=y;c[j+(m+24)>>2]=0;break}else Ga()}else{M=i+m|0;c[j+4>>2]=M|3;M=j+(M+4)|0;c[M>>2]=c[M>>2]|1}while(0);M=j+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);d=c[10220]|0;if(d>>>0>=q>>>0){b=d-q|0;a=c[10223]|0;if(b>>>0>15){c[10223]=a+q;c[10220]=b;c[a+(q+4)>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=q|3}else{c[10220]=0;c[10223]=0;c[a+4>>2]=d|3;M=a+(d+4)|0;c[M>>2]=c[M>>2]|1}M=a+8|0;return M|0}a=c[10221]|0;if(a>>>0>q>>>0){L=a-q|0;c[10221]=L;M=c[10224]|0;c[10224]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(c[10336]|0)){a=_a(30)|0;if(!(a+-1&a)){c[10338]=a;c[10337]=a;c[10339]=-1;c[10340]=-1;c[10341]=0;c[10329]=0;c[10336]=(qb(0)|0)&-16^1431655768;break}else Ga()}while(0);j=q+48|0;i=c[10338]|0;k=q+47|0;h=i+k|0;i=0-i|0;l=h&i;if(l>>>0<=q>>>0){M=0;return M|0}a=c[10328]|0;if((a|0)!=0?(t=c[10326]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(c[10329]&4)){a=c[10224]|0;e:do if(a){f=41320;while(1){d=c[f>>2]|0;if(d>>>0<=a>>>0?(r=f+4|0,(d+(c[r>>2]|0)|0)>>>0>a>>>0):0){g=f;a=r;break}f=c[f+8>>2]|0;if(!f){v=174;break e}}d=h-(c[10221]|0)&i;if(d>>>0<2147483647){f=Ua(d|0)|0;y=(f|0)==((c[g>>2]|0)+(c[a>>2]|0)|0);a=y?d:0;if(y){if((f|0)!=(-1|0)){w=f;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){g=Ua(0)|0;if((g|0)!=(-1|0)){a=g;d=c[10337]|0;f=d+-1|0;if(!(f&a))d=l;else d=l-a+(f+a&0-d)|0;a=c[10326]|0;f=a+d|0;if(d>>>0>q>>>0&d>>>0<2147483647){y=c[10328]|0;if((y|0)!=0?f>>>0<=a>>>0|f>>>0>y>>>0:0){a=0;break}f=Ua(d|0)|0;y=(f|0)==(g|0);a=y?d:0;if(y){w=g;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){g=0-d|0;do if(j>>>0>d>>>0&(d>>>0<2147483647&(f|0)!=(-1|0))?(u=c[10338]|0,u=k-d+u&0-u,u>>>0<2147483647):0)if((Ua(u|0)|0)==(-1|0)){Ua(g|0)|0;break f}else{d=u+d|0;break}while(0);if((f|0)!=(-1|0)){w=f;p=d;v=194;break d}}while(0);c[10329]=c[10329]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=Ua(l|0)|0,x=Ua(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(c[10326]|0)+p|0;c[10326]=a;if(a>>>0>(c[10327]|0)>>>0)c[10327]=a;h=c[10224]|0;g:do if(h){g=41320;do{a=c[g>>2]|0;d=g+4|0;f=c[d>>2]|0;if((w|0)==(a+f|0)){B=a;C=d;D=f;E=g;v=204;break}g=c[g+8>>2]|0}while((g|0)!=0);if(((v|0)==204?(c[E+12>>2]&8|0)==0:0)?h>>>0>>0&h>>>0>=B>>>0:0){c[C>>2]=D+p;M=(c[10221]|0)+p|0;L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;c[10224]=h+L;c[10221]=K;c[h+(L+4)>>2]=K|1;c[h+(M+4)>>2]=40;c[10225]=c[10340];break}a=c[10222]|0;if(w>>>0>>0){c[10222]=w;a=w}d=w+p|0;g=41320;while(1){if((c[g>>2]|0)==(d|0)){f=g;d=g;v=212;break}g=c[g+8>>2]|0;if(!g){d=41320;break}}if((v|0)==212)if(!(c[d+12>>2]&8)){c[f>>2]=w;n=d+4|0;c[n>>2]=(c[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;k=w+(p+8)|0;k=(k&7|0)==0?0:0-k&7;b=w+(k+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;c[w+(n+4)>>2]=q|3;h:do if((b|0)!=(h|0)){if((b|0)==(c[10223]|0)){M=(c[10220]|0)+l|0;c[10220]=M;c[10223]=o;c[w+(m+4)>>2]=M|1;c[w+(M+m)>>2]=M;break}i=p+4|0;d=c[w+(i+k)>>2]|0;if((d&3|0)==1){j=d&-8;g=d>>>3;i:do if(d>>>0>=256){h=c[w+((k|24)+p)>>2]|0;e=c[w+(p+12+k)>>2]|0;do if((e|0)==(b|0)){f=k|16;e=w+(i+f)|0;d=c[e>>2]|0;if(!d){e=w+(f+p)|0;d=c[e>>2]|0;if(!d){J=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;J=d;break}}else{f=c[w+((k|8)+p)>>2]|0;if(f>>>0>>0)Ga();a=f+12|0;if((c[a>>2]|0)!=(b|0))Ga();d=e+8|0;if((c[d>>2]|0)==(b|0)){c[a>>2]=e;c[d>>2]=f;J=e;break}else Ga()}while(0);if(!h)break;a=c[w+(p+28+k)>>2]|0;d=41176+(a<<2)|0;do if((b|0)!=(c[d>>2]|0)){if(h>>>0<(c[10222]|0)>>>0)Ga();a=h+16|0;if((c[a>>2]|0)==(b|0))c[a>>2]=J;else c[h+20>>2]=J;if(!J)break i}else{c[d>>2]=J;if(J)break;c[10219]=c[10219]&~(1<>>0>>0)Ga();c[J+24>>2]=h;b=k|16;a=c[w+(b+p)>>2]|0;do if(a)if(a>>>0>>0)Ga();else{c[J+16>>2]=a;c[a+24>>2]=J;break}while(0);b=c[w+(i+b)>>2]|0;if(!b)break;if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{e=c[w+((k|8)+p)>>2]|0;f=c[w+(p+12+k)>>2]|0;d=40912+(g<<1<<2)|0;do if((e|0)!=(d|0)){if(e>>>0>>0)Ga();if((c[e+12>>2]|0)==(b|0))break;Ga()}while(0);if((f|0)==(e|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();a=f+8|0;if((c[a>>2]|0)==(b|0)){F=a;break}Ga()}while(0);c[e+12>>2]=f;c[F>>2]=e}while(0);b=w+((j|k)+p)|0;f=j+l|0}else f=l;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[w+(m+4)>>2]=f|1;c[w+(f+m)>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0>=(c[10222]|0)>>>0){K=b;L=a;break}Ga()}while(0);c[K>>2]=o;c[L+12>>2]=o;c[w+(m+8)>>2]=L;c[w+(m+12)>>2]=e;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}K=(b+1048320|0)>>>16&8;L=b<>>16&4;L=L<>>16&2;e=14-(J|K|e)+(L<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=41176+(e<<2)|0;c[w+(m+28)>>2]=e;c[w+(m+20)>>2]=0;c[w+(m+16)>>2]=0;a=c[10219]|0;d=1<>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break}b=c[b>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(f|0)){M=d;break j}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=c[b>>2]|0;L=c[10222]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){c[a+12>>2]=o;c[b>>2]=o;c[w+(m+8)>>2]=a;c[w+(m+12)>>2]=M;c[w+(m+24)>>2]=0;break}else Ga()}else{M=(c[10221]|0)+l|0;c[10221]=M;c[10224]=o;c[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else d=41320;while(1){a=c[d>>2]|0;if(a>>>0<=h>>>0?(b=c[d+4>>2]|0,e=a+b|0,e>>>0>h>>>0):0)break;d=c[d+8>>2]|0}f=a+(b+-39)|0;a=a+(b+-47+((f&7|0)==0?0:0-f&7))|0;f=h+16|0;a=a>>>0>>0?h:a;b=a+8|0;d=w+8|0;d=(d&7|0)==0?0:0-d&7;M=p+-40-d|0;c[10224]=w+d;c[10221]=M;c[w+(d+4)>>2]=M|1;c[w+(p+-36)>>2]=40;c[10225]=c[10340];d=a+4|0;c[d>>2]=27;c[b>>2]=c[10330];c[b+4>>2]=c[10331];c[b+8>>2]=c[10332];c[b+12>>2]=c[10333];c[10330]=w;c[10331]=p;c[10333]=0;c[10332]=b;b=a+28|0;c[b>>2]=7;if((a+32|0)>>>0>>0)do{M=b;b=b+4|0;c[b>>2]=7}while((M+8|0)>>>0>>0);if((a|0)!=(h|0)){g=a-h|0;c[d>>2]=c[d>>2]&-2;c[h+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){a=b<<1;e=40912+(a<<2)|0;d=c[10218]|0;b=1<>2]|0;if(a>>>0<(c[10222]|0)>>>0)Ga();else{G=b;H=a}}else{c[10218]=d|b;G=40912+(a+2<<2)|0;H=e}c[G>>2]=h;c[H+12>>2]=h;c[h+8>>2]=H;c[h+12>>2]=e;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=41176+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[f>>2]=0;b=c[10219]|0;a=1<>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}b=c[d>>2]|0;k:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(g|0)){I=d;break k}else{e=e<<1;b=d}}if(a>>>0<(c[10222]|0)>>>0)Ga();else{c[a>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;break g}}else I=b;while(0);b=I+8|0;a=c[b>>2]|0;M=c[10222]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[h+8>>2]=a;c[h+12>>2]=I;c[h+24>>2]=0;break}else Ga()}}else{M=c[10222]|0;if((M|0)==0|w>>>0>>0)c[10222]=w;c[10330]=w;c[10331]=p;c[10333]=0;c[10227]=c[10336];c[10226]=-1;b=0;do{M=b<<1;L=40912+(M<<2)|0;c[40912+(M+3<<2)>>2]=L;c[40912+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;c[10224]=w+M;c[10221]=L;c[w+(M+4)>>2]=L|1;c[w+(p+-36)>>2]=40;c[10225]=c[10340]}while(0);b=c[10221]|0;if(b>>>0>q>>>0){L=b-q|0;c[10221]=L;M=c[10224]|0;c[10224]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}}c[(ck()|0)>>2]=12;M=0;return M|0}function Gl(a){a=a|0;var 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,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;i=c[10222]|0;if(b>>>0>>0)Ga();d=c[a+-4>>2]|0;e=d&3;if((e|0)==1)Ga();o=d&-8;q=a+(o+-8)|0;do if(!(d&1)){b=c[b>>2]|0;if(!e)return;j=-8-b|0;l=a+j|0;m=b+o|0;if(l>>>0>>0)Ga();if((l|0)==(c[10223]|0)){b=a+(o+-4)|0;d=c[b>>2]|0;if((d&3|0)!=3){u=l;g=m;break}c[10220]=m;c[b>>2]=d&-2;c[a+(j+4)>>2]=m|1;c[q>>2]=m;return}f=b>>>3;if(b>>>0<256){e=c[a+(j+8)>>2]|0;d=c[a+(j+12)>>2]|0;b=40912+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0>>0)Ga();if((c[e+12>>2]|0)!=(l|0))Ga()}if((d|0)==(e|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();b=d+8|0;if((c[b>>2]|0)==(l|0))h=b;else Ga()}else h=d+8|0;c[e+12>>2]=d;c[h>>2]=e;u=l;g=m;break}h=c[a+(j+24)>>2]|0;e=c[a+(j+12)>>2]|0;do if((e|0)==(l|0)){d=a+(j+20)|0;b=c[d>>2]|0;if(!b){d=a+(j+16)|0;b=c[d>>2]|0;if(!b){k=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0>>0)Ga();else{c[d>>2]=0;k=b;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)Ga();b=f+12|0;if((c[b>>2]|0)!=(l|0))Ga();d=e+8|0;if((c[d>>2]|0)==(l|0)){c[b>>2]=e;c[d>>2]=f;k=e;break}else Ga()}while(0);if(h){b=c[a+(j+28)>>2]|0;d=41176+(b<<2)|0;if((l|0)==(c[d>>2]|0)){c[d>>2]=k;if(!k){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(l|0))c[b>>2]=k;else c[h+20>>2]=k;if(!k){u=l;g=m;break}}d=c[10222]|0;if(k>>>0>>0)Ga();c[k+24>>2]=h;b=c[a+(j+16)>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[k+16>>2]=b;c[b+24>>2]=k;break}while(0);b=c[a+(j+20)>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[k+20>>2]=b;c[b+24>>2]=k;u=l;g=m;break}else{u=l;g=m}}else{u=l;g=m}}else{u=b;g=o}while(0);if(u>>>0>=q>>>0)Ga();b=a+(o+-4)|0;d=c[b>>2]|0;if(!(d&1))Ga();if(!(d&2)){if((q|0)==(c[10224]|0)){t=(c[10221]|0)+g|0;c[10221]=t;c[10224]=u;c[u+4>>2]=t|1;if((u|0)!=(c[10223]|0))return;c[10223]=0;c[10220]=0;return}if((q|0)==(c[10223]|0)){t=(c[10220]|0)+g|0;c[10220]=t;c[10223]=u;c[u+4>>2]=t|1;c[u+t>>2]=t;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=c[a+(o+16)>>2]|0;b=c[a+(o|4)>>2]|0;do if((b|0)==(q|0)){d=a+(o+12)|0;b=c[d>>2]|0;if(!b){d=a+(o+8)|0;b=c[d>>2]|0;if(!b){p=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[d>>2]=0;p=b;break}}else{d=c[a+o>>2]|0;if(d>>>0<(c[10222]|0)>>>0)Ga();e=d+12|0;if((c[e>>2]|0)!=(q|0))Ga();f=b+8|0;if((c[f>>2]|0)==(q|0)){c[e>>2]=b;c[f>>2]=d;p=b;break}else Ga()}while(0);if(h){b=c[a+(o+20)>>2]|0;d=41176+(b<<2)|0;if((q|0)==(c[d>>2]|0)){c[d>>2]=p;if(!p){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=h+16|0;if((c[b>>2]|0)==(q|0))c[b>>2]=p;else c[h+20>>2]=p;if(!p)break}d=c[10222]|0;if(p>>>0>>0)Ga();c[p+24>>2]=h;b=c[a+(o+8)>>2]|0;do if(b)if(b>>>0>>0)Ga();else{c[p+16>>2]=b;c[b+24>>2]=p;break}while(0);b=c[a+(o+12)>>2]|0;if(b)if(b>>>0<(c[10222]|0)>>>0)Ga();else{c[p+20>>2]=b;c[b+24>>2]=p;break}}}else{e=c[a+o>>2]|0;d=c[a+(o|4)>>2]|0;b=40912+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0<(c[10222]|0)>>>0)Ga();if((c[e+12>>2]|0)!=(q|0))Ga()}if((d|0)==(e|0)){c[10218]=c[10218]&~(1<>>0<(c[10222]|0)>>>0)Ga();b=d+8|0;if((c[b>>2]|0)==(q|0))n=b;else Ga()}else n=d+8|0;c[e+12>>2]=d;c[n>>2]=e}while(0);c[u+4>>2]=g|1;c[u+g>>2]=g;if((u|0)==(c[10223]|0)){c[10220]=g;return}}else{c[b>>2]=d&-2;c[u+4>>2]=g|1;c[u+g>>2]=g}b=g>>>3;if(g>>>0<256){d=b<<1;f=40912+(d<<2)|0;e=c[10218]|0;b=1<>2]|0;if(d>>>0<(c[10222]|0)>>>0)Ga();else{r=b;s=d}}else{c[10218]=e|b;r=40912+(d+2<<2)|0;s=f}c[r>>2]=u;c[s+12>>2]=u;c[u+8>>2]=s;c[u+12>>2]=f;return}b=g>>>8;if(b)if(g>>>0>16777215)f=31;else{r=(b+1048320|0)>>>16&8;s=b<>>16&4;s=s<>>16&2;f=14-(q|r|f)+(s<>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;b=41176+(f<<2)|0;c[u+28>>2]=f;c[u+20>>2]=0;c[u+16>>2]=0;d=c[10219]|0;e=1<>2]|0;b:do if((c[b+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=b+16+(f>>>31<<2)|0;e=c[d>>2]|0;if(!e)break;if((c[e+4>>2]&-8|0)==(g|0)){t=e;break b}else{f=f<<1;b=e}}if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[d>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;d=c[b>>2]|0;s=c[10222]|0;if(d>>>0>=s>>>0&t>>>0>=s>>>0){c[d+12>>2]=u;c[b>>2]=u;c[u+8>>2]=d;c[u+12>>2]=t;c[u+24>>2]=0;break}else Ga()}else{c[10219]=d|e;c[b>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u}while(0);u=(c[10226]|0)+-1|0;c[10226]=u;if(!u)b=41328;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[10226]=-1;return}function Hl(a,b){a=a|0;b=b|0;var d=0;if(a){d=$(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Fl(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;iw(b|0,0,d|0)|0;return b|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Fl(b)|0;return a|0}if(b>>>0>4294967231){c[(ck()|0)>>2]=12;a=0;return a|0}d=Jl(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d){a=d+8|0;return a|0}d=Fl(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;lw(d|0,a|0,(e>>>0>>0?e:b)|0)|0;Gl(a);a=d;return a|0}function Jl(a,b){a=a|0;b=b|0;var 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=a+4|0;p=c[o>>2]|0;j=p&-8;l=a+j|0;i=c[10222]|0;d=p&3;if(!((d|0)!=1&a>>>0>=i>>>0&a>>>0>>0))Ga();e=a+(j|4)|0;f=c[e>>2]|0;if(!(f&1))Ga();if(!d){if(b>>>0<256){a=0;return a|0}if(j>>>0>=(b+4|0)>>>0?(j-b|0)>>>0<=c[10338]<<1>>>0:0)return a|0;a=0;return a|0}if(j>>>0>=b>>>0){d=j-b|0;if(d>>>0<=15)return a|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|3;c[e>>2]=c[e>>2]|1;Kl(a+b|0,d);return a|0}if((l|0)==(c[10224]|0)){d=(c[10221]|0)+j|0;if(d>>>0<=b>>>0){a=0;return a|0}n=d-b|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|1;c[10224]=a+b;c[10221]=n;return a|0}if((l|0)==(c[10223]|0)){e=(c[10220]|0)+j|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|1;c[a+e>>2]=d;e=a+(e+4)|0;c[e>>2]=c[e>>2]&-2;e=a+b|0}else{c[o>>2]=p&1|e|2;e=a+(e+4)|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[10220]=d;c[10223]=e;return a|0}if(f&2){a=0;return a|0}m=(f&-8)+j|0;if(m>>>0>>0){a=0;return a|0}n=m-b|0;g=f>>>3;do if(f>>>0>=256){h=c[a+(j+24)>>2]|0;g=c[a+(j+12)>>2]|0;do if((g|0)==(l|0)){e=a+(j+20)|0;d=c[e>>2]|0;if(!d){e=a+(j+16)|0;d=c[e>>2]|0;if(!d){k=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;k=d;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)Ga();d=f+12|0;if((c[d>>2]|0)!=(l|0))Ga();e=g+8|0;if((c[e>>2]|0)==(l|0)){c[d>>2]=g;c[e>>2]=f;k=g;break}else Ga()}while(0);if(h){d=c[a+(j+28)>>2]|0;e=41176+(d<<2)|0;if((l|0)==(c[e>>2]|0)){c[e>>2]=k;if(!k){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=h+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=k;else c[h+20>>2]=k;if(!k)break}e=c[10222]|0;if(k>>>0>>0)Ga();c[k+24>>2]=h;d=c[a+(j+16)>>2]|0;do if(d)if(d>>>0>>0)Ga();else{c[k+16>>2]=d;c[d+24>>2]=k;break}while(0);d=c[a+(j+20)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[k+20>>2]=d;c[d+24>>2]=k;break}}}else{f=c[a+(j+8)>>2]|0;e=c[a+(j+12)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(l|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(l|0))h=d;else Ga()}else h=e+8|0;c[f+12>>2]=e;c[h>>2]=f}while(0);if(n>>>0<16){c[o>>2]=m|p&1|2;b=a+(m|4)|0;c[b>>2]=c[b>>2]|1;return a|0}else{c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|3;p=a+(m|4)|0;c[p>>2]=c[p>>2]|1;Kl(a+b|0,n);return a|0}return 0}function Kl(a,b){a=a|0;b=b|0;var 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;q=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){k=c[a>>2]|0;if(!(d&3))return;n=a+(0-k)|0;m=k+b|0;j=c[10222]|0;if(n>>>0>>0)Ga();if((n|0)==(c[10223]|0)){e=a+(b+4)|0;d=c[e>>2]|0;if((d&3|0)!=3){t=n;h=m;break}c[10220]=m;c[e>>2]=d&-2;c[a+(4-k)>>2]=m|1;c[q>>2]=m;return}g=k>>>3;if(k>>>0<256){f=c[a+(8-k)>>2]|0;e=c[a+(12-k)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(n|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(n|0))i=d;else Ga()}else i=e+8|0;c[f+12>>2]=e;c[i>>2]=f;t=n;h=m;break}i=c[a+(24-k)>>2]|0;f=c[a+(12-k)>>2]|0;do if((f|0)==(n|0)){f=16-k|0;e=a+(f+4)|0;d=c[e>>2]|0;if(!d){e=a+f|0;d=c[e>>2]|0;if(!d){l=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;l=d;break}}else{g=c[a+(8-k)>>2]|0;if(g>>>0>>0)Ga();d=g+12|0;if((c[d>>2]|0)!=(n|0))Ga();e=f+8|0;if((c[e>>2]|0)==(n|0)){c[d>>2]=f;c[e>>2]=g;l=f;break}else Ga()}while(0);if(i){d=c[a+(28-k)>>2]|0;e=41176+(d<<2)|0;if((n|0)==(c[e>>2]|0)){c[e>>2]=l;if(!l){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=i+16|0;if((c[d>>2]|0)==(n|0))c[d>>2]=l;else c[i+20>>2]=l;if(!l){t=n;h=m;break}}f=c[10222]|0;if(l>>>0>>0)Ga();c[l+24>>2]=i;d=16-k|0;e=c[a+d>>2]|0;do if(e)if(e>>>0>>0)Ga();else{c[l+16>>2]=e;c[e+24>>2]=l;break}while(0);d=c[a+(d+4)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[l+20>>2]=d;c[d+24>>2]=l;t=n;h=m;break}else{t=n;h=m}}else{t=n;h=m}}else{t=a;h=b}while(0);j=c[10222]|0;if(q>>>0>>0)Ga();d=a+(b+4)|0;e=c[d>>2]|0;if(!(e&2)){if((q|0)==(c[10224]|0)){s=(c[10221]|0)+h|0;c[10221]=s;c[10224]=t;c[t+4>>2]=s|1;if((t|0)!=(c[10223]|0))return;c[10223]=0;c[10220]=0;return}if((q|0)==(c[10223]|0)){s=(c[10220]|0)+h|0;c[10220]=s;c[10223]=t;c[t+4>>2]=s|1;c[t+s>>2]=s;return}h=(e&-8)+h|0;g=e>>>3;do if(e>>>0>=256){i=c[a+(b+24)>>2]|0;f=c[a+(b+12)>>2]|0;do if((f|0)==(q|0)){e=a+(b+20)|0;d=c[e>>2]|0;if(!d){e=a+(b+16)|0;d=c[e>>2]|0;if(!d){p=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)Ga();else{c[e>>2]=0;p=d;break}}else{g=c[a+(b+8)>>2]|0;if(g>>>0>>0)Ga();d=g+12|0;if((c[d>>2]|0)!=(q|0))Ga();e=f+8|0;if((c[e>>2]|0)==(q|0)){c[d>>2]=f;c[e>>2]=g;p=f;break}else Ga()}while(0);if(i){d=c[a+(b+28)>>2]|0;e=41176+(d<<2)|0;if((q|0)==(c[e>>2]|0)){c[e>>2]=p;if(!p){c[10219]=c[10219]&~(1<>>0<(c[10222]|0)>>>0)Ga();d=i+16|0;if((c[d>>2]|0)==(q|0))c[d>>2]=p;else c[i+20>>2]=p;if(!p)break}e=c[10222]|0;if(p>>>0>>0)Ga();c[p+24>>2]=i;d=c[a+(b+16)>>2]|0;do if(d)if(d>>>0>>0)Ga();else{c[p+16>>2]=d;c[d+24>>2]=p;break}while(0);d=c[a+(b+20)>>2]|0;if(d)if(d>>>0<(c[10222]|0)>>>0)Ga();else{c[p+20>>2]=d;c[d+24>>2]=p;break}}}else{f=c[a+(b+8)>>2]|0;e=c[a+(b+12)>>2]|0;d=40912+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(q|0))Ga()}if((e|0)==(f|0)){c[10218]=c[10218]&~(1<>>0>>0)Ga();d=e+8|0;if((c[d>>2]|0)==(q|0))o=d;else Ga()}else o=e+8|0;c[f+12>>2]=e;c[o>>2]=f}while(0);c[t+4>>2]=h|1;c[t+h>>2]=h;if((t|0)==(c[10223]|0)){c[10220]=h;return}}else{c[d>>2]=e&-2;c[t+4>>2]=h|1;c[t+h>>2]=h}d=h>>>3;if(h>>>0<256){e=d<<1;g=40912+(e<<2)|0;f=c[10218]|0;d=1<>2]|0;if(e>>>0<(c[10222]|0)>>>0)Ga();else{r=d;s=e}}else{c[10218]=f|d;r=40912+(e+2<<2)|0;s=g}c[r>>2]=t;c[s+12>>2]=t;c[t+8>>2]=s;c[t+12>>2]=g;return}d=h>>>8;if(d)if(h>>>0>16777215)g=31;else{r=(d+1048320|0)>>>16&8;s=d<>>16&4;s=s<>>16&2;g=14-(q|r|g)+(s<>>15)|0;g=h>>>(g+7|0)&1|g<<1}else g=0;d=41176+(g<<2)|0;c[t+28>>2]=g;c[t+20>>2]=0;c[t+16>>2]=0;e=c[10219]|0;f=1<>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}d=c[d>>2]|0;a:do if((c[d+4>>2]&-8|0)!=(h|0)){g=h<<((g|0)==31?0:25-(g>>>1)|0);while(1){e=d+16+(g>>>31<<2)|0;f=c[e>>2]|0;if(!f)break;if((c[f+4>>2]&-8|0)==(h|0)){d=f;break a}else{g=g<<1;d=f}}if(e>>>0<(c[10222]|0)>>>0)Ga();c[e>>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}while(0);e=d+8|0;f=c[e>>2]|0;s=c[10222]|0;if(!(f>>>0>=s>>>0&d>>>0>=s>>>0))Ga();c[f+12>>2]=t;c[e>>2]=t;c[t+8>>2]=f;c[t+12>>2]=d;c[t+24>>2]=0;return}function Ll(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=c[9321]|0;Pl(42048,e,42104);c[10342]=42892;c[10344]=42912;c[10343]=0;a=c[10720]|0;o=0;ia(62,41368+a|0,42048);g=o;o=0;if(g&1){g=Na()|0;fn(41376);Ya(g|0)}c[41368+(a+72)>>2]=0;c[41368+(a+76)>>2]=-1;f=c[9322]|0;Ql(42152,f,42112);c[10364]=42972;c[10365]=42992;d=c[10740]|0;o=0;ia(62,41456+d|0,42152);g=o;o=0;if(g&1){g=Na()|0;fn(41460);Ya(g|0)}a=d+72|0;c[41456+a>>2]=0;b=d+76|0;c[41456+b>>2]=-1;g=c[9320]|0;Ql(42200,g,42120);c[10385]=42972;c[10386]=42992;o=0;ia(62,41540+d|0,42200);h=o;o=0;if(h&1){h=Na()|0;fn(41544);Ya(h|0)}c[41540+a>>2]=0;c[41540+b>>2]=-1;h=c[41540+((c[(c[10385]|0)+-12>>2]|0)+24)>>2]|0;c[10406]=42972;c[10407]=42992;o=0;ia(62,41624+d|0,h|0);h=o;o=0;if(h&1){h=Na()|0;fn(41628);Ya(h|0)}c[41624+a>>2]=0;c[41624+b>>2]=-1;c[41368+((c[(c[10342]|0)+-12>>2]|0)+72)>>2]=41456;a=41540+((c[(c[10385]|0)+-12>>2]|0)+4)|0;c[a>>2]=c[a>>2]|8192;c[41540+((c[(c[10385]|0)+-12>>2]|0)+72)>>2]=41456;Rl(42248,e,42128);c[10427]=42932;c[10429]=42952;c[10428]=0;a=c[10730]|0;o=0;ia(62,41708+a|0,42248);h=o;o=0;if(h&1){h=Na()|0;ln(41716);Ya(h|0)}c[41708+(a+72)>>2]=0;c[41708+(a+76)>>2]=-1;Sl(42304,f,42136);c[10449]=43012;c[10450]=43032;d=c[10750]|0;o=0;ia(62,41796+d|0,42304);h=o;o=0;if(h&1){h=Na()|0;ln(41800);Ya(h|0)}a=d+72|0;c[41796+a>>2]=0;b=d+76|0;c[41796+b>>2]=-1;Sl(42352,g,42144);c[10470]=43012;c[10471]=43032;o=0;ia(62,41880+d|0,42352);h=o;o=0;if(h&1){h=Na()|0;ln(41884);Ya(h|0)}c[41880+a>>2]=0;c[41880+b>>2]=-1;h=c[41880+((c[(c[10470]|0)+-12>>2]|0)+24)>>2]|0;c[10491]=43012;c[10492]=43032;o=0;ia(62,41964+d|0,h|0);h=o;o=0;if(h&1){h=Na()|0;ln(41968);Ya(h|0)}else{c[41964+a>>2]=0;c[41964+b>>2]=-1;c[41708+((c[(c[10427]|0)+-12>>2]|0)+72)>>2]=41796;h=41880+((c[(c[10470]|0)+-12>>2]|0)+4)|0;c[h>>2]=c[h>>2]|8192;c[41880+((c[(c[10470]|0)+-12>>2]|0)+72)>>2]=41796;return}}function Ml(a){a=a|0;o=0;ka(70,41456)|0;a=o;o=0;if(((!(a&1)?(o=0,ka(70,41624)|0,a=o,o=0,!(a&1)):0)?(o=0,ka(71,41796)|0,a=o,o=0,!(a&1)):0)?(o=0,ka(71,41964)|0,a=o,o=0,!(a&1)):0)return;a=Na(0)|0;ec(a)}function Nl(){Ll(0);kb(187,56757,n|0)|0;return}function Ol(){return}function Pl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;pn(b);c[b>>2]=42600;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;ia(23,b|0,f|0);e=o;o=0;if(e&1){h=Na()|0;Gs(f);nn(b);Ya(h|0)}else{Gs(f);i=g;return}}function Ql(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;pn(b);c[b>>2]=42536;c[b+32>>2]=d;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;d=ra(37,f|0,44280)|0;h=o;o=0;if(h&1){h=Na()|0;Gs(f);nn(b);Ya(h|0)}else{Gs(f);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;i=g;return}}function Rl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;En(b);c[b>>2]=42472;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;ia(21,b|0,f|0);e=o;o=0;if(e&1){h=Na()|0;Gs(f);Cn(b);Ya(h|0)}else{Gs(f);i=g;return}}function Sl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;f=g;En(b);c[b>>2]=42408;c[b+32>>2]=d;Fs(h,b+4|0);c[f>>2]=c[h>>2];o=0;d=ra(37,f|0,44288)|0;h=o;o=0;if(h&1){h=Na()|0;Gs(f);Cn(b);Ya(h|0)}else{Gs(f);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;i=g;return}}function Tl(a){a=a|0;Cn(a);cj(a);return}function Ul(b,d){b=b|0;d=d|0;Eb[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Is(d,44288)|0;c[b+36>>2]=d;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l;d=a+36|0;e=a+40|0;f=j+8|0;g=j;b=a+32|0;a:while(1){a=c[d>>2]|0;a=Mb[c[(c[a>>2]|0)+20>>2]&31](a,c[e>>2]|0,j,f,h)|0;m=(c[h>>2]|0)-g|0;if((Yk(j,1,m,c[b>>2]|0)|0)!=(m|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{k=4;break a}}}if((k|0)==4)a=((Vk(c[b>>2]|0)|0)!=0)<<31>>31;i=l;return a|0}function Wl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;a:do if(!(a[b+44>>0]|0))if((e|0)>0){f=d;d=0;while(1){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,c[f>>2]|0)|0)==-1)break a;d=d+1|0;if((d|0)<(e|0))f=f+4|0;else break}}else d=0;else d=Yk(d,4,e,c[b+32>>2]|0)|0;while(0);return d|0}function Xl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;p=s+16|0;e=s+8|0;o=s+4|0;n=s;q=(d|0)==-1;a:do if(!q){c[e>>2]=d;if(a[b+44>>0]|0)if((Yk(e,4,1,c[b+32>>2]|0)|0)==1){r=11;break}else{e=-1;break}c[o>>2]=p;l=e+4|0;m=b+36|0;g=b+40|0;h=p+8|0;j=p;k=b+32|0;while(1){b=c[m>>2]|0;b=Sb[c[(c[b>>2]|0)+12>>2]&15](b,c[g>>2]|0,e,l,n,p,h,o)|0;if((c[n>>2]|0)==(e|0)){e=-1;break a}if((b|0)==3)break;f=(b|0)==1;if(b>>>0>=2){e=-1;break a}b=(c[o>>2]|0)-j|0;if((Yk(p,1,b,c[k>>2]|0)|0)!=(b|0)){e=-1;break a}if(f)e=f?c[n>>2]|0:e;else{r=11;break a}}if((Yk(e,1,1,c[k>>2]|0)|0)!=1)e=-1;else r=11}else r=11;while(0);if((r|0)==11)e=q?0:d;i=s;return e|0}function Yl(b,d){b=b|0;d=d|0;var e=0,f=0;f=Is(d,44288)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=Eb[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(Eb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)Rr(56783);return}function Zl(a){a=a|0;Cn(a);cj(a);return}function _l(a){a=a|0;return bm(a,0)|0}function $l(a){a=a|0;return bm(a,1)|0}function am(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+16|0;k=m+8|0;f=m+4|0;g=m;h=b+52|0;e=(a[h>>0]|0)!=0;a:do if((d|0)==-1)if(e)d=-1;else{d=c[b+48>>2]|0;a[h>>0]=(d|0)!=-1&1}else{j=b+48|0;b:do if(e){c[f>>2]=c[j>>2];e=c[b+36>>2]|0;switch(Sb[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+4|0,g,l,l+8|0,k)|0){case 1:case 2:{d=-1;break a}case 3:{a[l>>0]=c[j>>2];c[k>>2]=l+1;break}default:{}}e=b+32|0;while(1){f=c[k>>2]|0;if(f>>>0<=l>>>0)break b;b=f+-1|0;c[k>>2]=b;if((al(a[b>>0]|0,c[e>>2]|0)|0)==-1){d=-1;break a}}}while(0);c[j>>2]=d;a[h>>0]=1}while(0);i=m;return d|0}function bm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=i;i=i+32|0;q=r+16|0;p=r+8|0;m=r+4|0;n=r;g=b+52|0;a:do if(a[g>>0]|0){f=b+48|0;e=c[f>>2]|0;if(d){c[f>>2]=-1;a[g>>0]=0}}else{e=c[b+44>>2]|0;e=(e|0)>1?e:1;o=b+32|0;if((e|0)>0){g=0;do{f=Zk(c[o>>2]|0)|0;if((f|0)==-1){e=-1;break a}a[q+g>>0]=f;g=g+1|0}while((g|0)<(e|0))}b:do if(!(a[b+53>>0]|0)){j=b+40|0;k=b+36|0;l=p+4|0;c:while(1){s=c[j>>2]|0;g=s;f=c[g>>2]|0;g=c[g+4>>2]|0;t=c[k>>2]|0;h=q+e|0;switch(Sb[c[(c[t>>2]|0)+16>>2]&15](t,s,q,h,m,p,l,n)|0){case 2:{e=-1;break a}case 3:break c;case 1:break;default:break b}t=c[j>>2]|0;c[t>>2]=f;c[t+4>>2]=g;if((e|0)==8){e=-1;break a}f=Zk(c[o>>2]|0)|0;if((f|0)==-1){e=-1;break a}a[h>>0]=f;e=e+1|0}c[p>>2]=a[q>>0]}else c[p>>2]=a[q>>0];while(0);if(d){e=c[p>>2]|0;c[b+48>>2]=e;break}while(1){if((e|0)<=0)break;e=e+-1|0;if((al(a[q+e>>0]|0,c[o>>2]|0)|0)==-1){e=-1;break a}}e=c[p>>2]|0}while(0);i=r;return e|0}function cm(a){a=a|0;nn(a);cj(a);return}function dm(b,d){b=b|0;d=d|0;Eb[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Is(d,44280)|0;c[b+36>>2]=d;a[b+44>>0]=(Eb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function em(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l;d=a+36|0;e=a+40|0;f=j+8|0;g=j;b=a+32|0;a:while(1){a=c[d>>2]|0;a=Mb[c[(c[a>>2]|0)+20>>2]&31](a,c[e>>2]|0,j,f,h)|0;m=(c[h>>2]|0)-g|0;if((Yk(j,1,m,c[b>>2]|0)|0)!=(m|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{k=4;break a}}}if((k|0)==4)a=((Vk(c[b>>2]|0)|0)!=0)<<31>>31;i=l;return a|0}function fm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0;a:do if(!(a[b+44>>0]|0))if((f|0)>0){g=e;e=0;while(1){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,d[g>>0]|0)|0)==-1)break a;e=e+1|0;if((e|0)<(f|0))g=g+1|0;else break}}else e=0;else e=Yk(e,1,f,c[b+32>>2]|0)|0;while(0);return e|0}function gm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;p=s+16|0;e=s+8|0;o=s+4|0;n=s;q=(d|0)==-1;a:do if(!q){a[e>>0]=d;if(a[b+44>>0]|0)if((Yk(e,1,1,c[b+32>>2]|0)|0)==1){r=11;break}else{e=-1;break}c[o>>2]=p;m=e+1|0;g=b+36|0;h=b+40|0;j=p+8|0;k=p;l=b+32|0;while(1){b=c[g>>2]|0;b=Sb[c[(c[b>>2]|0)+12>>2]&15](b,c[h>>2]|0,e,m,n,p,j,o)|0;if((c[n>>2]|0)==(e|0)){e=-1;break a}if((b|0)==3)break;f=(b|0)==1;if(b>>>0>=2){e=-1;break a}b=(c[o>>2]|0)-k|0;if((Yk(p,1,b,c[l>>2]|0)|0)!=(b|0)){e=-1;break a}if(f)e=f?c[n>>2]|0:e;else{r=11;break a}}if((Yk(e,1,1,c[l>>2]|0)|0)!=1)e=-1;else r=11}else r=11;while(0);if((r|0)==11)e=q?0:d;i=s;return e|0}function hm(b,d){b=b|0;d=d|0;var e=0,f=0;f=Is(d,44280)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=Eb[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(Eb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)Rr(56783);return}function im(a){a=a|0;nn(a);cj(a);return}function jm(a){a=a|0;return mm(a,0)|0}function km(a){a=a|0;return mm(a,1)|0}function lm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+16|0;k=m+4|0;f=m+8|0;g=m;h=b+52|0;e=(a[h>>0]|0)!=0;a:do if((d|0)==-1)if(e)d=-1;else{d=c[b+48>>2]|0;a[h>>0]=(d|0)!=-1&1}else{j=b+48|0;b:do if(e){a[f>>0]=c[j>>2];e=c[b+36>>2]|0;switch(Sb[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+1|0,g,l,l+8|0,k)|0){case 1:case 2:{d=-1;break a}case 3:{a[l>>0]=c[j>>2];c[k>>2]=l+1;break}default:{}}e=b+32|0;while(1){f=c[k>>2]|0;if(f>>>0<=l>>>0)break b;b=f+-1|0;c[k>>2]=b;if((al(a[b>>0]|0,c[e>>2]|0)|0)==-1){d=-1;break a}}}while(0);c[j>>2]=d;a[h>>0]=1}while(0);i=m;return d|0}function mm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+32|0;r=s+16|0;q=s+8|0;n=s+4|0;o=s;h=b+52|0;a:do if(a[h>>0]|0){g=b+48|0;f=c[g>>2]|0;if(e){c[g>>2]=-1;a[h>>0]=0}}else{f=c[b+44>>2]|0;f=(f|0)>1?f:1;p=b+32|0;if((f|0)>0){h=0;do{g=Zk(c[p>>2]|0)|0;if((g|0)==-1){f=-1;break a}a[r+h>>0]=g;h=h+1|0}while((h|0)<(f|0))}b:do if(!(a[b+53>>0]|0)){k=b+40|0;l=b+36|0;m=q+1|0;c:while(1){t=c[k>>2]|0;h=t;g=c[h>>2]|0;h=c[h+4>>2]|0;u=c[l>>2]|0;j=r+f|0;switch(Sb[c[(c[u>>2]|0)+16>>2]&15](u,t,r,j,n,q,m,o)|0){case 2:{f=-1;break a}case 3:break c;case 1:break;default:break b}u=c[k>>2]|0;c[u>>2]=g;c[u+4>>2]=h;if((f|0)==8){f=-1;break a}g=Zk(c[p>>2]|0)|0;if((g|0)==-1){f=-1;break a}a[j>>0]=g;f=f+1|0}a[q>>0]=a[r>>0]|0}else a[q>>0]=a[r>>0]|0;while(0);if(e){f=a[q>>0]|0;c[b+48>>2]=f&255}else{while(1){if((f|0)<=0)break;f=f+-1|0;if((al(d[r+f>>0]|0,c[p>>2]|0)|0)==-1){f=-1;break a}}f=a[q>>0]|0}f=f&255}while(0);i=s;return f|0}function nm(a){a=a|0;return}function om(a){a=a|0;a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;return}function pm(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(!b){Bb[c[(c[a>>2]|0)+8>>2]&255](a);a=1}else a=0;return a|0}function qm(b,d){b=b|0;d=d|0;c[b>>2]=36868;o=0;ia(86,b+4|0,((a[d>>0]&1)==0?d+1|0:c[d+8>>2]|0)|0);b=o;o=0;if(b&1){b=Na()|0;Ya(b|0)}else return}function rm(a,b){a=a|0;b=b|0;c[a>>2]=36868;o=0;ia(86,a+4|0,b|0);a=o;o=0;if(a&1){a=Na()|0;Ya(a|0)}else return}function sm(a,b){a=a|0;b=b|0;var d=0,e=0;e=nl(b)|0;d=bj(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=d+12|0;lw(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function tm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function um(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;Qb[c[(c[a>>2]|0)+12>>2]&15](e,a,b);if((c[e+4>>2]|0)==(c[d+4>>2]|0))e=(c[e>>2]|0)==(c[d>>2]|0);else e=0;i=f;return e|0}function vm(a,b,d){a=a|0;b=b|0;d=d|0;return ((c[b>>2]|0)==(d|0)?(c[b+4>>2]|0)==(a|0):0)|0}function wm(a,b,c){a=a|0;b=b|0;c=c|0;b=dk(c)|0;Gm(a,b,nl(b)|0);return}function xm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;f=c[d>>2]|0;do if(f){g=a[e>>0]|0;if(!(g&1))g=(g&255)>>>1;else g=c[e+4>>2]|0;if(g){Pm(e,56990)|0;f=c[d>>2]|0}d=c[d+4>>2]|0;Qb[c[(c[d>>2]|0)+24>>2]&15](h,d,f);d=a[h>>0]|0;g=(d&1)==0;o=0;ma(30,e|0,(g?h+1|0:c[h+8>>2]|0)|0,(g?(d&255)>>>1:c[h+4>>2]|0)|0)|0;d=o;o=0;if(d&1){j=Na()|0;Im(h);Ya(j|0)}else{Im(h);break}}while(0);c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;i=j;return}function ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;e=f+12|0;g=f;Gm(g,d,nl(d)|0);o=0;wa(10,e|0,b|0,g|0);d=o;o=0;do if(!(d&1)){o=0;ia(87,a|0,e|0);d=o;o=0;if(d&1){f=Na()|0;Im(e);e=f;break}else{Im(e);Im(g);c[a>>2]=42664;d=c[b+4>>2]|0;g=a+8|0;c[g>>2]=c[b>>2];c[g+4>>2]=d;i=f;return}}else e=Na()|0;while(0);Im(g);Ya(e|0)}function zm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+48|0;f=g+24|0;j=g+16|0;h=g;c[j>>2]=b;c[j+4>>2]=d;Fm(h,e);o=0;wa(10,f|0,j|0,h|0);e=o;o=0;do if(!(e&1)){o=0;ia(87,a|0,f|0);j=o;o=0;if(j&1){j=Na()|0;Im(f);f=j;break}else{Im(f);Im(h);c[a>>2]=42664;c[a+8>>2]=b;c[a+12>>2]=d;i=g;return}}else f=Na()|0;while(0);Im(h);Ya(f|0)}function Am(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+48|0;e=f+24|0;h=f+16|0;g=f;c[h>>2]=b;c[h+4>>2]=d;Gm(g,58898,0);o=0;wa(10,e|0,h|0,g|0);h=o;o=0;do if(!(h&1)){o=0;ia(87,a|0,e|0);h=o;o=0;if(h&1){h=Na()|0;Im(e);e=h;break}else{Im(e);Im(g);c[a>>2]=42664;c[a+8>>2]=b;c[a+12>>2]=d;i=f;return}}else e=Na()|0;while(0);Im(g);Ya(e|0)}function Bm(a){a=a|0;mj(a);return}function Cm(a){a=a|0;mj(a);cj(a);return}function Dm(a){a=a|0;return}function Em(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;rb(42676)|0;if((c[a>>2]|0)==1)do Da(42704,42676)|0;while((c[a>>2]|0)==1);do if(!(c[a>>2]|0)){c[a>>2]=1;o=0;ka(72,42676)|0;e=o;o=0;if((((!(e&1)?(o=0,ha(d|0,b|0),e=o,o=0,!(e&1)):0)?(o=0,ka(73,42676)|0,e=o,o=0,!(e&1)):0)?(c[a>>2]=-1,o=0,ka(72,42676)|0,e=o,o=0,!(e&1)):0)?(o=0,ka(74,42704)|0,e=o,o=0,!(e&1)):0)break;e=Na(0)|0;Va(e|0)|0;o=0;ka(73,42676)|0;e=o;o=0;if((!(e&1)?(c[a>>2]=0,o=0,ka(72,42676)|0,e=o,o=0,!(e&1)):0)?(o=0,ka(74,42704)|0,e=o,o=0,!(e&1)):0){o=0;xa(5);o=0}b=Na()|0;o=0;xa(3);e=o;o=0;if(e&1){e=Na(0)|0;ec(e)}else Ya(b|0)}else cb(42676)|0;while(0);return}function Fm(b,d){b=b|0;d=d|0;if(!(a[d>>0]&1)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}else Gm(b,c[d+8>>2]|0,c[d+4>>2]|0);return}function Gm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>4294967279)_i(b);if(e>>>0<11){a[b>>0]=e<<1;b=b+1|0}else{g=e+16&-16;f=bj(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f}lw(b|0,d|0,e|0)|0;a[b+e>>0]=0;return}function Hm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>4294967279)_i(b);if(d>>>0<11){a[b>>0]=d<<1;b=b+1|0}else{g=d+16&-16;f=bj(g)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}iw(b|0,e|0,d|0)|0;a[b+d>>0]=0;return}function Im(b){b=b|0;if(a[b>>0]&1)cj(c[b+8>>2]|0);return}function Jm(b,d){b=b|0;d=d|0;var e=0,f=0;if((b|0)!=(d|0)){e=a[d>>0]|0;f=(e&1)==0;Lm(b,f?d+1|0:c[d+8>>2]|0,f?(e&255)>>>1:c[d+4>>2]|0)|0}return b|0}function Km(a,b){a=a|0;b=b|0;return Lm(a,b,nl(b)|0)|0}function Lm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))h=10;else{f=c[b>>2]|0;h=(f&-2)+-1|0;f=f&255}g=(f&1)==0;do if(h>>>0>=e>>>0){if(g)f=b+1|0;else f=c[b+8>>2]|0;nw(f|0,d|0,e|0)|0;a[f+e>>0]=0;if(!(a[b>>0]&1)){a[b>>0]=e<<1;break}else{c[b+4>>2]=e;break}}else{if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;Sm(b,h,e-h|0,f,0,f,e,d)}while(0);return b|0}function Mm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b>>0]|0;g=(f&1)==0;if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;do if(f>>>0>=d>>>0)if(g){a[b+1+d>>0]=0;a[b>>0]=d<<1;break}else{a[(c[b+8>>2]|0)+d>>0]=0;c[b+4>>2]=d;break}else Nm(b,d-f|0,e)|0;while(0);return}function Nm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(d){f=a[b>>0]|0;if(!(f&1))g=10;else{f=c[b>>2]|0;g=(f&-2)+-1|0;f=f&255}if(!(f&1))h=(f&255)>>>1;else h=c[b+4>>2]|0;if((g-h|0)>>>0>>0){Tm(b,g,d-g+h|0,h,h,0,0);f=a[b>>0]|0}if(!(f&1))g=b+1|0;else g=c[b+8>>2]|0;iw(g+h|0,e|0,d|0)|0;f=h+d|0;if(!(a[b>>0]&1))a[b>>0]=f<<1;else c[b+4>>2]=f;a[g+f>>0]=0}return b|0}function Om(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d>>>0>4294967279)_i(b);e=a[b>>0]|0;if(!(e&1))f=10;else{e=c[b>>2]|0;f=(e&-2)+-1|0;e=e&255}if(!(e&1))j=(e&255)>>>1;else j=c[b+4>>2]|0;d=j>>>0>d>>>0?j:d;if(d>>>0<11)i=10;else i=(d+16&-16)+-1|0;a:do if((i|0)!=(f|0)){do if((i|0)!=10){d=i+1|0;if(i>>>0<=f>>>0){o=0;d=ka(67,d|0)|0;h=o;o=0;if(h&1){b=Na(0)|0;Va(b|0)|0;Xa();break a}}else d=bj(d)|0;if(!(e&1)){f=1;g=b+1|0;h=0;break}else{f=1;g=c[b+8>>2]|0;h=1;break}}else{d=b+1|0;f=0;g=c[b+8>>2]|0;h=1}while(0);if(!(e&1))e=(e&255)>>>1;else e=c[b+4>>2]|0;lw(d|0,g|0,e+1|0)|0;if(h)cj(g);if(f){c[b>>2]=i+1|1;c[b+4>>2]=j;c[b+8>>2]=d;break}else{a[b>>0]=j<<1;break}}while(0);return}function Pm(a,b){a=a|0;b=b|0;return Rm(a,b,nl(b)|0)|0}function Qm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a[b>>0]|0;f=(e&1)!=0;if(f){g=(c[b>>2]&-2)+-1|0;h=c[b+4>>2]|0}else{g=10;h=(e&255)>>>1}if((h|0)==(g|0)){Tm(b,g,1,g,g,0,0);if(!(a[b>>0]&1))g=7;else g=8}else if(f)g=8;else g=7;if((g|0)==7){a[b>>0]=(h<<1)+2;e=b+1|0;f=h+1|0}else if((g|0)==8){e=c[b+8>>2]|0;f=h+1|0;c[b+4>>2]=f}a[e+h>>0]=d;a[e+f>>0]=0;return}function Rm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))g=10;else{f=c[b>>2]|0;g=(f&-2)+-1|0;f=f&255}if(!(f&1))h=(f&255)>>>1;else h=c[b+4>>2]|0;if((g-h|0)>>>0>=e>>>0){if(e){if(!(f&1))g=b+1|0;else g=c[b+8>>2]|0;lw(g+h|0,d|0,e|0)|0;f=h+e|0;if(!(a[b>>0]&1))a[b>>0]=f<<1;else c[b+4>>2]=f;a[g+f>>0]=0}}else Sm(b,g,e-g+h|0,h,h,0,e,d);return b|0}function Sm(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))m=b+1|0;else m=c[b+8>>2]|0;if(d>>>0<2147483623){k=e+d|0;l=d<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=bj(k)|0;if(g)lw(l|0,m|0,g|0)|0;if(i)lw(l+g|0,j|0,i|0)|0;e=f-h|0;if((e|0)!=(g|0))lw(l+(i+g)|0,m+(h+g)|0,e-g|0)|0;if((d|0)!=10)cj(m);c[b+8>>2]=l;c[b>>2]=k|1;d=e+i|0;c[b+4>>2]=d;a[l+d>>0]=0;return}function Tm(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))l=b+1|0;else l=c[b+8>>2]|0;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=bj(j)|0;if(g)lw(k|0,l|0,g|0)|0;e=f-h|0;if((e|0)!=(g|0))lw(k+(i+g)|0,l+(h+g)|0,e-g|0)|0;if((d|0)!=10)cj(l);c[b+8>>2]=k;c[b>>2]=j|1;return}function Um(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(e>>>0>1073741807)_i(b);if(e>>>0<2){a[b>>0]=e<<1;b=b+4|0}else{g=e+4&-4;f=bj(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=e;b=f}ql(b,d,e)|0;c[b+(e<<2)>>2]=0;return}function Vm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(d>>>0>1073741807)_i(b);if(d>>>0<2){a[b>>0]=d<<1;b=b+4|0}else{g=d+4&-4;f=bj(g<<2)|0;c[b+8>>2]=f;c[b>>2]=g|1;c[b+4>>2]=d;b=f}sl(b,e,d)|0;c[b+(d<<2)>>2]=0;return}function Wm(b){b=b|0;if(a[b>>0]&1)cj(c[b+8>>2]|0);return}function Xm(a,b){a=a|0;b=b|0;return Ym(a,b,pl(b)|0)|0}function Ym(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b>>0]|0;if(!(f&1))h=1;else{f=c[b>>2]|0;h=(f&-2)+-1|0;f=f&255}g=(f&1)==0;do if(h>>>0>=e>>>0){if(g)f=b+4|0;else f=c[b+8>>2]|0;rl(f,d,e)|0;c[f+(e<<2)>>2]=0;if(!(a[b>>0]&1)){a[b>>0]=e<<1;break}else{c[b+4>>2]=e;break}}else{if(g)f=(f&255)>>>1;else f=c[b+4>>2]|0;$m(b,h,e-h|0,f,0,f,e,d)}while(0);return b|0}function Zm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d>>>0>1073741807)_i(b);e=a[b>>0]|0;if(!(e&1))f=1;else{e=c[b>>2]|0;f=(e&-2)+-1|0;e=e&255}if(!(e&1))j=(e&255)>>>1;else j=c[b+4>>2]|0;d=j>>>0>d>>>0?j:d;if(d>>>0<2)i=1;else i=(d+4&-4)+-1|0;a:do if((i|0)!=(f|0)){do if((i|0)!=1){d=(i<<2)+4|0;if(i>>>0<=f>>>0){o=0;d=ka(67,d|0)|0;h=o;o=0;if(h&1){b=Na(0)|0;Va(b|0)|0;Xa();break a}}else d=bj(d)|0;if(!(e&1)){f=1;g=b+4|0;h=0;break}else{f=1;g=c[b+8>>2]|0;h=1;break}}else{d=b+4|0;f=0;g=c[b+8>>2]|0;h=1}while(0);if(!(e&1))e=(e&255)>>>1;else e=c[b+4>>2]|0;ql(d,g,e+1|0)|0;if(h)cj(g);if(f){c[b>>2]=i+1|1;c[b+4>>2]=j;c[b+8>>2]=d;break}else{a[b>>0]=j<<1;break}}while(0);return}function _m(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a[b>>0]|0;f=(e&1)!=0;if(f){g=(c[b>>2]&-2)+-1|0;h=c[b+4>>2]|0}else{g=1;h=(e&255)>>>1}if((h|0)==(g|0)){an(b,g,1,g,g,0,0);if(!(a[b>>0]&1))g=7;else g=8}else if(f)g=8;else g=7;if((g|0)==7){a[b>>0]=(h<<1)+2;e=b+4|0;f=h+1|0}else if((g|0)==8){e=c[b+8>>2]|0;f=h+1|0;c[b+4>>2]=f}c[e+(h<<2)>>2]=d;c[e+(f<<2)>>2]=0;return}function $m(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((1073741806-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))m=b+4|0;else m=c[b+8>>2]|0;if(d>>>0<536870887){k=e+d|0;l=d<<1;k=k>>>0>>0?l:k;k=k>>>0<2?2:k+4&-4}else k=1073741807;l=bj(k<<2)|0;if(g)ql(l,m,g)|0;if(i)ql(l+(g<<2)|0,j,i)|0;e=f-h|0;if((e|0)!=(g|0))ql(l+(i+g<<2)|0,m+(h+g<<2)|0,e-g|0)|0;if((d|0)!=1)cj(m);c[b+8>>2]=l;c[b>>2]=k|1;d=e+i|0;c[b+4>>2]=d;c[l+(d<<2)>>2]=0;return}function an(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((1073741807-d|0)>>>0>>0)_i(b);if(!(a[b>>0]&1))l=b+4|0;else l=c[b+8>>2]|0;if(d>>>0<536870887){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<2?2:j+4&-4}else j=1073741807;k=bj(j<<2)|0;if(g)ql(k,l,g)|0;e=f-h|0;if((e|0)!=(g|0))ql(k+(i+g<<2)|0,l+(h+g<<2)|0,e-g|0)|0;if((d|0)!=1)cj(l);c[b+8>>2]=k;c[b>>2]=j|1;return}function bn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=d;f=e-g|0;if(f>>>0>4294967279)_i(b);if(f>>>0<11){a[b>>0]=f<<1;h=b+1|0}else{i=f+16&-16;h=bj(i)|0;c[b+8>>2]=h;c[b>>2]=i|1;c[b+4>>2]=f}b=e-g|0;if((d|0)!=(e|0)){f=h;while(1){a[f>>0]=a[d>>0]|0;d=d+1|0;if((d|0)==(e|0))break;else f=f+1|0}}a[h+b>>0]=0;return}function cn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d;f=e-h|0;g=f>>2;if(g>>>0>1073741807)_i(b);if(g>>>0<2){a[b>>0]=f>>>1;b=b+4|0}else{i=g+4&-4;f=bj(i<<2)|0;c[b+8>>2]=f;c[b>>2]=i|1;c[b+4>>2]=g;b=f}g=(e-h|0)>>>2;if((d|0)!=(e|0)){f=b;while(1){c[f>>2]=c[d>>2];d=d+4|0;if((d|0)==(e|0))break;else f=f+4|0}}c[b+(g<<2)>>2]=0;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;f=(c[a+24>>2]|0)==0;c[a+16>>2]=f&1|b;if(!((f&1|b)&c[a+20>>2])){i=d;return}b=Ma(16)|0;so()|0;c[e>>2]=1;c[e+4>>2]=43112;o=0;wa(11,b|0,57437,e|0);f=o;o=0;if(f&1){f=Na()|0;La(b|0);Ya(f|0)}else lb(b|0,864,112)}function en(a){a=a|0;var b=0;c[a>>2]=43068;o=0;ia(88,a|0,0);b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else{Gs(a+28|0);Gl(c[a+32>>2]|0);Gl(c[a+36>>2]|0);Gl(c[a+48>>2]|0);Gl(c[a+60>>2]|0);return}}function fn(a){a=a|0;en(a);return}function gn(a){a=a|0;en(a);cj(a);return}function hn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a+40>>2]|0;e=a+32|0;f=a+36|0;if(d)do{d=d+-1|0;Qb[c[(c[e>>2]|0)+(d<<2)>>2]&15](b,a,c[(c[f>>2]|0)+(d<<2)>>2]|0)}while((d|0)!=0);return}function jn(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;Fs(b,a+28|0);i=d;return c[b>>2]|0}function kn(a,b){a=a|0;b=b|0;var d=0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;d=a+28|0;b=a+32|0;a=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));Es(d);return}function ln(a){a=a|0;en(a);return}function mn(a){a=a|0;en(a);cj(a);return}function nn(a){a=a|0;c[a>>2]=42760;Gs(a+4|0);return}function on(a){a=a|0;c[a>>2]=42760;Gs(a+4|0);cj(a);return}function pn(a){a=a|0;c[a>>2]=42760;Es(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function qn(a,b){a=a|0;b=b|0;return}function rn(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function sn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function tn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function un(a){a=a|0;return 0}function vn(a){a=a|0;return 0}function wn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+12|0;i=b+16|0;a:do if((e|0)>0){g=d;d=0;while(1){f=c[h>>2]|0;if(f>>>0<(c[i>>2]|0)>>>0){c[h>>2]=f+1;f=a[f>>0]|0}else{f=Eb[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((f|0)==-1)break a;f=f&255}a[g>>0]=f;d=d+1|0;if((d|0)<(e|0))g=g+1|0;else break}}else d=0;while(0);return d|0}function xn(a){a=a|0;return -1}function yn(a){a=a|0;var b=0;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)a=-1;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+1;a=d[a>>0]|0}return a|0}function zn(a,b){a=a|0;b=b|0;return -1}function An(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;i=b+24|0;j=b+28|0;a:do if((f|0)>0){h=e;e=0;while(1){g=c[i>>2]|0;if(g>>>0>=(c[j>>2]|0)>>>0){if((Lb[c[(c[b>>2]|0)+52>>2]&63](b,d[h>>0]|0)|0)==-1)break a}else{k=a[h>>0]|0;c[i>>2]=g+1;a[g>>0]=k}e=e+1|0;if((e|0)<(f|0))h=h+1|0;else break}}else e=0;while(0);return e|0}function Bn(a,b){a=a|0;b=b|0;return -1}function Cn(a){a=a|0;c[a>>2]=42824;Gs(a+4|0);return}function Dn(a){a=a|0;c[a>>2]=42824;Gs(a+4|0);cj(a);return}function En(a){a=a|0;c[a>>2]=42824;Es(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function Fn(a,b){a=a|0;b=b|0;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Hn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}function Jn(a){a=a|0;return 0}function Kn(a){a=a|0;return 0}function Ln(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+12|0;h=a+16|0;a:do if((d|0)>0){f=b;b=0;while(1){e=c[g>>2]|0;if(e>>>0>=(c[h>>2]|0)>>>0){e=Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((e|0)==-1)break a}else{c[g>>2]=e+4;e=c[e>>2]|0}c[f>>2]=e;b=b+1|0;if((b|0)<(d|0))f=f+4|0;else break}}else b=0;while(0);return b|0}function Mn(a){a=a|0;return -1}function Nn(a){a=a|0;var b=0;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)a=-1;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+4;a=c[a>>2]|0}return a|0}function On(a,b){a=a|0;b=b|0;return -1}function Pn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=a+24|0;h=a+28|0;a:do if((d|0)>0){f=b;b=0;while(1){e=c[g>>2]|0;if(e>>>0>=(c[h>>2]|0)>>>0){if((Lb[c[(c[a>>2]|0)+52>>2]&63](a,c[f>>2]|0)|0)==-1)break a}else{i=c[f>>2]|0;c[g>>2]=e+4;c[e>>2]=i}b=b+1|0;if((b|0)<(d|0))f=f+4|0;else break}}else b=0;while(0);return b|0}function Qn(a,b){a=a|0;b=b|0;return -1}function Rn(a){a=a|0;en(a+8|0);return}function Sn(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);return}function Tn(a){a=a|0;en(a+8|0);cj(a);return}function Un(a){a=a|0;Tn(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Vn(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f;a:do if(c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0){o=0;ia(65,e|0,b|0);d=o;o=0;b:do if(d&1)d=Na(0)|0;else{do if(a[e>>0]|0){d=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;d=ka(c[(c[d>>2]|0)+24>>2]|0,d|0)|0;g=o;o=0;if(!(g&1)){if((d|0)!=-1)break;g=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+g|0,c[b+(g+16)>>2]|1|0);g=o;o=0;if(!(g&1))break}d=Na(0)|0;ho(e);break b}while(0);ho(e);break a}while(0);Va(d|0)|0;o=0;ha(181,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);g=o;o=0;if(!(g&1)){Xa();break}d=Na()|0;o=0;xa(3);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else Ya(d|0)}while(0);i=f;return b|0}function Wn(a){a=a|0;var b=0;b=a+16|0;c[b>>2]=c[b>>2]|1;if(!(c[a+20>>2]&1))return;else mb()}function Xn(a){a=a|0;en(a+8|0);return}function Yn(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);return}function Zn(a){a=a|0;en(a+8|0);cj(a);return}function _n(a){a=a|0;Zn(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function $n(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f;a:do if(c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0){o=0;ia(89,e|0,b|0);d=o;o=0;b:do if(d&1)d=Na(0)|0;else{do if(a[e>>0]|0){d=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;d=ka(c[(c[d>>2]|0)+24>>2]|0,d|0)|0;g=o;o=0;if(!(g&1)){if((d|0)!=-1)break;g=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+g|0,c[b+(g+16)>>2]|1|0);g=o;o=0;if(!(g&1))break}d=Na(0)|0;po(e);break b}while(0);po(e);break a}while(0);Va(d|0)|0;o=0;ha(181,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);g=o;o=0;if(!(g&1)){Xa();break}d=Na()|0;o=0;xa(3);g=o;o=0;if(g&1){g=Na(0)|0;ec(g)}else Ya(d|0)}while(0);i=f;return b|0}function ao(a,b){a=a|0;b=b|0;return}function bo(a){a=a|0;en(a+4|0);return}function co(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);return}function eo(a){a=a|0;en(a+4|0);cj(a);return}function fo(a){a=a|0;eo(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function go(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=c[(c[d>>2]|0)+-12>>2]|0;if(!(c[d+(e+16)>>2]|0)){e=c[d+(e+72)>>2]|0;if(e)Vn(e)|0;a[b>>0]=1}return}function ho(a){a=a|0;var b=0,d=0;a=a+4|0;d=c[a>>2]|0;b=c[(c[d>>2]|0)+-12>>2]|0;do if((((c[d+(b+24)>>2]|0)!=0?(c[d+(b+16)>>2]|0)==0:0)?(c[d+(b+4)>>2]&8192|0)!=0:0)?!(Za()|0):0){b=c[a>>2]|0;b=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;b=ka(c[(c[b>>2]|0)+24>>2]|0,b|0)|0;d=o;o=0;if(!(d&1)){if((b|0)!=-1)break;b=c[a>>2]|0;d=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+d|0,c[b+(d+16)>>2]|1|0);d=o;o=0;if(!(d&1))break}d=Na(0)|0;Va(d|0)|0;o=0;xa(3);d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}}while(0);return}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+20|0;l=q+16|0;n=q+8|0;e=q;o=0;ia(65,n|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b;p=19}else{do if(a[n>>0]|0){c[e>>2]=jn(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;o=0;m=ra(37,e|0,43392)|0;j=o;o=0;if(j&1){p=Na(0)|0;Gs(e);e=p}else{Gs(e);g=c[(c[b>>2]|0)+-12>>2]|0;j=c[b+(g+24)>>2]|0;f=b+g|0;g=b+(g+76)|0;e=c[g>>2]|0;do if((e|0)==-1){c[k>>2]=jn(f)|0;o=0;e=ra(37,k|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(k);e=h<<24>>24;c[g>>2]=e;p=10;break}e=Na(0)|0;Gs(k)}else p=10;while(0);if((p|0)==10){r=c[(c[m>>2]|0)+16>>2]|0;c[l>>2]=j;o=0;c[k>>2]=c[l>>2];e=sa(r|0,m|0,k|0,f|0,e&255|0,d|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break}e=Na(0)|0}}ho(n);f=b;g=b;p=19;break a}while(0);ho(n)}while(0);do if((p|0)==19){Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();break}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0)}while(0);i=q;return b|0}function jo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+20|0;l=q+16|0;n=q+8|0;e=q;o=0;ia(65,n|0,b|0);m=o;o=0;a:do if(m&1){e=Na(0)|0;f=b;g=b;p=19}else{do if(a[n>>0]|0){c[e>>2]=jn(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;o=0;m=ra(37,e|0,43392)|0;j=o;o=0;if(j&1){p=Na(0)|0;Gs(e);e=p}else{Gs(e);g=c[(c[b>>2]|0)+-12>>2]|0;j=c[b+(g+24)>>2]|0;f=b+g|0;g=b+(g+76)|0;e=c[g>>2]|0;do if((e|0)==-1){c[k>>2]=jn(f)|0;o=0;e=ra(37,k|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,h=ra(c[(c[e>>2]|0)+28>>2]|0,e|0,32)|0,r=o,o=0,!(r&1)):0){Gs(k);e=h<<24>>24;c[g>>2]=e;p=10;break}e=Na(0)|0;Gs(k)}else p=10;while(0);if((p|0)==10){r=c[(c[m>>2]|0)+24>>2]|0;c[l>>2]=j;o=0;c[k>>2]=c[l>>2];e=sa(r|0,m|0,k|0,f|0,e&255|0,d|0)|0;r=o;o=0;if(!(r&1)){if(e)break;r=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+r|0,c[b+(r+16)>>2]|5|0);r=o;o=0;if(!(r&1))break}e=Na(0)|0}}ho(n);f=b;g=b;p=19;break a}while(0);ho(n)}while(0);do if((p|0)==19){Va(e|0)|0;o=0;ha(181,f+(c[(c[g>>2]|0)+-12>>2]|0)|0);r=o;o=0;if(!(r&1)){Xa();break}e=Na()|0;o=0;xa(3);r=o;o=0;if(r&1){r=Na(0)|0;ec(r)}else Ya(e|0)}while(0);i=q;return b|0}function ko(a){a=a|0;en(a+4|0);return}function lo(a){a=a|0;en(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);return}function mo(a){a=a|0;en(a+4|0);cj(a);return}function no(a){a=a|0;mo(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function oo(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=c[(c[d>>2]|0)+-12>>2]|0;if(!(c[d+(e+16)>>2]|0)){e=c[d+(e+72)>>2]|0;if(e)$n(e)|0;a[b>>0]=1}return}function po(a){a=a|0;var b=0,d=0;a=a+4|0;d=c[a>>2]|0;b=c[(c[d>>2]|0)+-12>>2]|0;do if((((c[d+(b+24)>>2]|0)!=0?(c[d+(b+16)>>2]|0)==0:0)?(c[d+(b+4)>>2]&8192|0)!=0:0)?!(Za()|0):0){b=c[a>>2]|0;b=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;o=0;b=ka(c[(c[b>>2]|0)+24>>2]|0,b|0)|0;d=o;o=0;if(!(d&1)){if((b|0)!=-1)break;b=c[a>>2]|0;d=c[(c[b>>2]|0)+-12>>2]|0;o=0;ia(66,b+d|0,c[b+(d+16)>>2]|1|0);d=o;o=0;if(!(d&1))break}d=Na(0)|0;Va(d|0)|0;o=0;xa(3);d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}}while(0);return}function qo(a){a=a|0;return 57453}function ro(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=1&(c|0)<257)wm(a,b,c);else Gm(a,57462,35);return}function so(){if((a[1048]|0)==0?(Ha(1048)|0)!=0:0){c[10778]=43084;kb(72,43112,n|0)|0;Pa(1048)}return 43112}function to(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e;j=d;h=c[j+4>>2]|0;d=g;c[d>>2]=c[j>>2];c[d+4>>2]=h;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];ym(a,f,b);c[a>>2]=43048;i=e;return}function uo(a){a=a|0;Bm(a);return}function vo(a){a=a|0;Bm(a);cj(a);return}function wo(a){a=a|0;en(a);cj(a);return}function xo(a){a=a|0;cj(a);return}function yo(a){a=a|0;return}function zo(a){a=a|0;return}function Ao(a){a=a|0;cj(a);return}function Bo(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((e|0)==(f|0))h=6;else while(1){if((c|0)==(d|0)){c=-1;break a}b=a[c>>0]|0;g=a[e>>0]|0;if(b<<24>>24>24){c=-1;break a}if(g<<24>>24>24){c=1;break a}c=c+1|0;e=e+1|0;if((e|0)==(f|0)){h=6;break}}while(0);if((h|0)==6)c=(c|0)!=(d|0)&1;return c|0}function Co(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bn(a,c,d);return}function Do(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)==(d|0))b=0;else{b=0;do{b=(a[c>>0]|0)+(b<<4)|0;e=b&-268435456;b=(e>>>24|e)^b;c=c+1|0}while((c|0)!=(d|0))}return b|0}function Eo(a){a=a|0;return}function Fo(a){a=a|0;cj(a);return}function Go(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((e|0)==(f|0))h=6;else while(1){if((b|0)==(d|0)){b=-1;break a}a=c[b>>2]|0;g=c[e>>2]|0;if((a|0)<(g|0)){b=-1;break a}if((g|0)<(a|0)){b=1;break a}b=b+4|0;e=e+4|0;if((e|0)==(f|0)){h=6;break}}while(0);if((h|0)==6)b=(b|0)!=(d|0)&1;return b|0}function Ho(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cn(a,c,d);return}function Io(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((b|0)==(d|0))a=0;else{a=0;do{a=(c[b>>2]|0)+(a<<4)|0;e=a&-268435456;a=(e>>>24|e)^a;b=b+4|0}while((b|0)!=(d|0))}return a|0}function Jo(a){a=a|0;return}function Ko(a){a=a|0;cj(a);return}function Lo(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+64|0;q=s+56|0;j=s+52|0;n=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;p=s+32|0;t=s+8|0;r=s;a:do if(!(c[f+4>>2]&1)){c[n>>2]=-1;t=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[j>>2]=c[k>>2];c[q>>2]=c[l>>2];j=Db[t&63](b,j,q,f,g,n)|0;c[d>>2]=j;switch(c[n>>2]|0){case 0:{a[h>>0]=0;break a}case 1:{a[h>>0]=1;break a}default:{a[h>>0]=1;c[g>>2]=4;break a}}}else{j=jn(f)|0;c[m>>2]=j;o=0;b=ra(37,m|0,44220)|0;n=o;o=0;do if(!(n&1)){pm(j)|0;j=jn(f)|0;c[p>>2]=j;o=0;l=ra(37,p|0,44360)|0;p=o;o=0;if(p&1){t=Na()|0;pm(j)|0;j=t;break}pm(j)|0;o=0;ia(c[(c[l>>2]|0)+24>>2]|0,t|0,l|0);p=o;o=0;if(!(p&1)){k=t+12|0;o=0;ia(c[(c[l>>2]|0)+28>>2]|0,k|0,l|0);p=o;o=0;if(!(p&1)){c[r>>2]=c[e>>2];o=0;c[q>>2]=c[r>>2];j=ea(7,d|0,q|0,t|0,t+24|0,b|0,g|0,1)|0;g=o;o=0;if(g&1){j=Na()|0;Im(t+12|0);Im(t);break}else{a[h>>0]=(j|0)==(t|0)&1;j=c[d>>2]|0;Im(t+12|0);Im(t);break a}}}else k=t;j=Na()|0;l=D;if((t|0)!=(k|0))do{k=k+-12|0;Im(k)}while((k|0)!=(t|0))}else{t=Na()|0;pm(j)|0;j=t}while(0);Ya(j|0)}while(0);i=s;return j|0}function Mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=yu(a,k,j,e,f,g)|0;i=h;return a|0}function No(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=zu(a,k,j,e,f,g)|0;i=h;return a|0}function Oo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Au(a,k,j,e,f,g)|0;i=h;return a|0}function Po(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Bu(a,k,j,e,f,g)|0;i=h;return a|0}function Qo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Cu(a,k,j,e,f,g)|0;i=h;return a|0}function Ro(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Du(a,k,j,e,f,g)|0;i=h;return a|0}function So(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Eu(a,k,j,e,f,g)|0;i=h;return a|0}function To(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Fu(a,k,j,e,f,g)|0;i=h;return a|0}function Uo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Gu(a,k,j,e,f,g)|0;i=h;return a|0}function Vo(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=i;i=i+240|0;x=C;s=C+208|0;E=C+32|0;b=C+28|0;D=C+16|0;w=C+12|0;u=C+48|0;v=C+8|0;t=C+4|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;o=0;g=ka(68,g|0)|0;r=o;o=0;do if(r&1)b=Na()|0;else{c[b>>2]=g;o=0;b=ra(37,b|0,44220)|0;r=o;o=0;if(!(r&1)?(o=0,va(c[(c[b>>2]|0)+32>>2]|0,b|0,57498,57524,s|0)|0,r=o,o=0,!(r&1)):0){pm(g)|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;if(!(a[D>>0]&1))b=10;else b=(c[D>>2]&-2)+-1|0;o=0;wa(8,D|0,b|0,0);r=o;o=0;a:do if(!(r&1)){q=D+8|0;r=D+1|0;g=(a[D>>0]&1)==0?r:c[q>>2]|0;c[w>>2]=g;c[v>>2]=u;c[t>>2]=0;p=D+4|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){F=29;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){F=29;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;F=19;break}}else F=19;while(0);if((F|0)==19){F=0;if(l){k=0;break}else k=0}l=a[D>>0]|0;l=(l&1)==0?(l&255)>>>1:c[p>>2]|0;if((c[w>>2]|0)==(g+l|0)){o=0;wa(8,D|0,l<<1|0,0);n=o;o=0;if(n&1){F=29;break}if(!(a[D>>0]&1))g=10;else g=(c[D>>2]&-2)+-1|0;o=0;wa(8,D|0,g|0,0);n=o;o=0;if(n&1){F=29;break}g=(a[D>>0]&1)==0?r:c[q>>2]|0;c[w>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=29;break}}else l=d[l>>0]|0;if(Wo(l&255,16,g,w,t,0,E,u,v,s)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=29;break}else continue}else{c[m>>2]=k+1;continue}}if((F|0)==29){b=Na()|0;break}o=0;wa(8,D|0,(c[w>>2]|0)-g|0,0);G=o;o=0;if((!(G&1)?(y=a[D>>0]|0,z=c[q>>2]|0,o=0,A=ua(3)|0,G=o,o=0,!(G&1)):0)?(o=0,c[x>>2]=j,B=va(16,((y&1)==0?r:z)|0,A|0,58882,x|0)|0,G=o,o=0,!(G&1)):0){if((B|0)!=1)c[h>>2]=4;if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;G=o;o=0;if(G&1){F=30;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;G=o;o=0;if(G&1){F=30;break a}if((b|0)==-1){c[f>>2]=0;F=55;break}}if(!g)F=56}else F=55;while(0);if((F|0)==55?g:0)F=56;if((F|0)==56)c[h>>2]=c[h>>2]|2;G=c[e>>2]|0;Im(D);Im(E);i=C;return G|0}else F=30}else F=30;while(0);if((F|0)==30)b=Na()|0;Im(D);break}b=Na()|0;pm(g)|0}while(0);Im(E);Ya(b|0);return 0}function Wo(b,d,e,f,g,h,i,j,k,l){b=b|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;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(a[l+24>>0]|0)==b<<24>>24;if(!m?(a[l+25>>0]|0)!=b<<24>>24:0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i>>0]|0;if(b<<24>>24==h<<24>>24?(((n&1)==0?(n&255)>>>1:c[i+4>>2]|0)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}d=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=d;c[g>>2]=0;m=0;break}i=l+26|0;m=l;while(1){if((a[m>>0]|0)==b<<24>>24)break;m=m+1|0;if((m|0)==(i|0)){m=i;break}}m=m-l|0;if((m|0)>23)m=-1;else{switch(d|0){case 10:case 8:{if((m|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[57498+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[57498+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function Xo(){var b=0,d=0;do if((a[1968]|0)==0?(Ha(1968)|0)!=0:0){o=0;b=ma(31,2147483647,58885,0)|0;d=o;o=0;if(d&1){d=Na()|0;sb(1968);Ya(d|0)}else{c[11196]=b;Pa(1968);break}}while(0);return c[11196]|0}function Yo(a){a=a|0;return}function Zo(a){a=a|0;cj(a);return}function _o(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+64|0;q=s+56|0;j=s+52|0;n=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;p=s+32|0;t=s+8|0;r=s;a:do if(!(c[f+4>>2]&1)){c[n>>2]=-1;t=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[j>>2]=c[k>>2];c[q>>2]=c[l>>2];j=Db[t&63](b,j,q,f,g,n)|0;c[d>>2]=j;switch(c[n>>2]|0){case 0:{a[h>>0]=0;break a}case 1:{a[h>>0]=1;break a}default:{a[h>>0]=1;c[g>>2]=4;break a}}}else{j=jn(f)|0;c[m>>2]=j;o=0;b=ra(37,m|0,44212)|0;n=o;o=0;do if(!(n&1)){pm(j)|0;j=jn(f)|0;c[p>>2]=j;o=0;l=ra(37,p|0,44368)|0;p=o;o=0;if(p&1){t=Na()|0;pm(j)|0;j=t;break}pm(j)|0;o=0;ia(c[(c[l>>2]|0)+24>>2]|0,t|0,l|0);p=o;o=0;if(!(p&1)){k=t+12|0;o=0;ia(c[(c[l>>2]|0)+28>>2]|0,k|0,l|0);p=o;o=0;if(!(p&1)){c[r>>2]=c[e>>2];o=0;c[q>>2]=c[r>>2];j=ea(8,d|0,q|0,t|0,t+24|0,b|0,g|0,1)|0;g=o;o=0;if(g&1){j=Na()|0;Wm(t+12|0);Wm(t);break}else{a[h>>0]=(j|0)==(t|0)&1;j=c[d>>2]|0;Wm(t+12|0);Wm(t);break a}}}else k=t;j=Na()|0;l=D;if((t|0)!=(k|0))do{k=k+-12|0;Wm(k)}while((k|0)!=(t|0))}else{t=Na()|0;pm(j)|0;j=t}while(0);Ya(j|0)}while(0);i=s;return j|0}function $o(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ju(a,k,j,e,f,g)|0;i=h;return a|0}function ap(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ku(a,k,j,e,f,g)|0;i=h;return a|0}function bp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Lu(a,k,j,e,f,g)|0;i=h;return a|0}function cp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Mu(a,k,j,e,f,g)|0;i=h;return a|0}function dp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Nu(a,k,j,e,f,g)|0;i=h;return a|0}function ep(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ou(a,k,j,e,f,g)|0;i=h;return a|0}function fp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Pu(a,k,j,e,f,g)|0;i=h;return a|0}function gp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Qu(a,k,j,e,f,g)|0;i=h;return a|0}function hp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Ru(a,k,j,e,f,g)|0;i=h;return a|0}function ip(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;B=i;i=i+320|0;w=B;r=B+208|0;D=B+32|0;b=B+28|0;C=B+16|0;v=B+12|0;t=B+48|0;u=B+8|0;s=B+4|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;o=0;f=ka(68,f|0)|0;q=o;o=0;do if(q&1)b=Na()|0;else{c[b>>2]=f;o=0;b=ra(37,b|0,44212)|0;q=o;o=0;if(!(q&1)?(o=0,va(c[(c[b>>2]|0)+48>>2]|0,b|0,57498,57524,r|0)|0,q=o,o=0,!(q&1)):0){pm(f)|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;if(!(a[C>>0]&1))b=10;else b=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,b|0,0);q=o;o=0;a:do if(!(q&1)){p=C+8|0;q=C+1|0;b=(a[C>>0]&1)==0?q:c[p>>2]|0;c[v>>2]=b;c[u>>2]=t;c[s>>2]=0;n=C+4|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){E=30;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){E=30;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k){j=l;break}else{j=l;break b}else{c[e>>2]=0;E=20;break}}else E=20;while(0);if((E|0)==20){E=0;if(k){j=0;break}else j=0}k=a[C>>0]|0;k=(k&1)==0?(k&255)>>>1:c[n>>2]|0;if((c[v>>2]|0)==(b+k|0)){o=0;wa(8,C|0,k<<1|0,0);m=o;o=0;if(m&1){E=30;break}if(!(a[C>>0]&1))b=10;else b=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,b|0,0);m=o;o=0;if(m&1){E=30;break}b=(a[C>>0]&1)==0?q:c[p>>2]|0;c[v>>2]=b+k}l=f+12|0;k=c[l>>2]|0;m=f+16|0;if((k|0)==(c[m>>2]|0)){o=0;k=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=30;break}}else k=c[k>>2]|0;if(jp(k,16,b,v,s,0,D,t,u,r)|0)break;j=c[l>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=30;break}else{j=f;continue}}else{c[l>>2]=j+4;j=f;continue}}if((E|0)==30){b=Na()|0;break}o=0;wa(8,C|0,(c[v>>2]|0)-b|0,0);F=o;o=0;if((!(F&1)?(x=a[C>>0]|0,y=c[p>>2]|0,o=0,z=ua(3)|0,F=o,o=0,!(F&1)):0)?(o=0,c[w>>2]=h,A=va(16,((x&1)==0?q:y)|0,z|0,58882,w|0)|0,F=o,o=0,!(F&1)):0){if((A|0)!=1)c[g>>2]=4;if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;F=o;o=0;if(F&1){E=31;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;F=o;o=0;if(F&1){E=31;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{E=59;break}else{c[e>>2]=0;E=57;break}}else E=57;while(0);if((E|0)==57?f:0)E=59;if((E|0)==59)c[g>>2]=c[g>>2]|2;F=c[d>>2]|0;Im(C);Im(D);i=B;return F|0}else E=31}else E=31;while(0);if((E|0)==31)b=Na()|0;Im(C);break}b=Na()|0;pm(f)|0}while(0);Im(D);Ya(b|0);return 0}function jp(b,d,e,f,g,h,i,j,k,l){b=b|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;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(c[l+96>>2]|0)==(b|0);if(!m?(c[l+100>>2]|0)!=(b|0):0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i>>0]|0;if((b|0)==(h|0)?(((n&1)==0?(n&255)>>>1:c[i+4>>2]|0)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}d=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=d;c[g>>2]=0;m=0;break}i=l+104|0;m=l;while(1){if((c[m>>2]|0)==(b|0))break;m=m+4|0;if((m|0)==(i|0)){m=i;break}}m=m-l|0;i=m>>2;if((m|0)>92)m=-1;else{switch(d|0){case 10:case 8:{if((i|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[57498+i>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[57498+i>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function kp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;k=l;d=jn(d)|0;c[k>>2]=d;o=0;g=ra(37,k|0,44220)|0;m=o;o=0;if((((!(m&1)?(o=0,va(c[(c[g>>2]|0)+32>>2]|0,g|0,57498,57524,e|0)|0,m=o,o=0,!(m&1)):0)?(o=0,j=ra(37,k|0,44360)|0,m=o,o=0,!(m&1)):0)?(o=0,h=ka(c[(c[j>>2]|0)+16>>2]|0,j|0)|0,m=o,o=0,!(m&1)):0)?(a[f>>0]=h,o=0,ia(c[(c[j>>2]|0)+20>>2]|0,b|0,j|0),m=o,o=0,!(m&1)):0){pm(d)|0;i=l;return}m=Na()|0;pm(d)|0;Ya(m|0)}function lp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i;i=i+16|0;m=n;d=jn(d)|0;c[m>>2]=d;o=0;h=ra(37,m|0,44220)|0;p=o;o=0;if(((((!(p&1)?(o=0,va(c[(c[h>>2]|0)+32>>2]|0,h|0,57498,57530,e|0)|0,p=o,o=0,!(p&1)):0)?(o=0,l=ra(37,m|0,44360)|0,p=o,o=0,!(p&1)):0)?(o=0,j=ka(c[(c[l>>2]|0)+12>>2]|0,l|0)|0,p=o,o=0,!(p&1)):0)?(a[f>>0]=j,o=0,k=ka(c[(c[l>>2]|0)+16>>2]|0,l|0)|0,p=o,o=0,!(p&1)):0)?(a[g>>0]=k,o=0,ia(c[(c[l>>2]|0)+20>>2]|0,b|0,l|0),p=o,o=0,!(p&1)):0){pm(d)|0;i=n;return}p=Na()|0;pm(d)|0;Ya(p|0)}function mp(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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;var p=0,q=0;a:do if(b<<24>>24==i<<24>>24)if(a[e>>0]|0){a[e>>0]=0;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=46;f=a[k>>0]|0;if((((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;p=0}else p=0}else p=-1;else{if(b<<24>>24==j<<24>>24?(j=a[k>>0]|0,(((j&1)==0?(j&255)>>>1:c[k+4>>2]|0)|0)!=0):0){if(!(a[e>>0]|0)){p=-1;break}p=c[m>>2]|0;if((p-l|0)>=160){p=0;break}l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;c[n>>2]=0;p=0;break}i=o+32|0;p=o;while(1){if((a[p>>0]|0)==b<<24>>24)break;p=p+1|0;if((p|0)==(i|0)){p=i;break}}i=p-o|0;if((i|0)>31)p=-1;else{j=a[57498+i>>0]|0;switch(i|0){case 24:case 25:{p=c[h>>2]|0;if((p|0)!=(g|0)?(d[p+-1>>0]&95|0)!=(d[f>>0]&127|0):0){p=-1;break a}c[h>>2]=p+1;a[p>>0]=j;p=0;break a}case 23:case 22:{a[f>>0]=80;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=j;p=0;break a}default:{p=j&95;if((((p|0)==(a[f>>0]|0)?(a[f>>0]=p|128,(a[e>>0]|0)!=0):0)?(a[e>>0]=0,f=a[k>>0]|0,(((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0):0)?(q=c[m>>2]|0,(q-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=l}m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=j;if((i|0)>21){p=0;break a}c[n>>2]=(c[n>>2]|0)+1;p=0;break a}}}}while(0);return p|0}function np(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k;b=jn(b)|0;c[j>>2]=b;o=0;f=ra(37,j|0,44212)|0;l=o;o=0;if((((!(l&1)?(o=0,va(c[(c[f>>2]|0)+48>>2]|0,f|0,57498,57524,d|0)|0,l=o,o=0,!(l&1)):0)?(o=0,h=ra(37,j|0,44368)|0,l=o,o=0,!(l&1)):0)?(o=0,g=ka(c[(c[h>>2]|0)+16>>2]|0,h|0)|0,l=o,o=0,!(l&1)):0)?(c[e>>2]=g,o=0,ia(c[(c[h>>2]|0)+20>>2]|0,a|0,h|0),l=o,o=0,!(l&1)):0){pm(b)|0;i=k;return}l=Na()|0;pm(b)|0;Ya(l|0)}function op(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+16|0;l=m;b=jn(b)|0;c[l>>2]=b;o=0;g=ra(37,l|0,44212)|0;n=o;o=0;if(((((!(n&1)?(o=0,va(c[(c[g>>2]|0)+48>>2]|0,g|0,57498,57530,d|0)|0,n=o,o=0,!(n&1)):0)?(o=0,k=ra(37,l|0,44368)|0,n=o,o=0,!(n&1)):0)?(o=0,h=ka(c[(c[k>>2]|0)+12>>2]|0,k|0)|0,n=o,o=0,!(n&1)):0)?(c[e>>2]=h,o=0,j=ka(c[(c[k>>2]|0)+16>>2]|0,k|0)|0,n=o,o=0,!(n&1)):0)?(c[f>>2]=j,o=0,ia(c[(c[k>>2]|0)+20>>2]|0,a|0,k|0),n=o,o=0,!(n&1)):0){pm(b)|0;i=m;return}n=Na()|0;pm(b)|0;Ya(n|0)}function pp(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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;var p=0,q=0;a:do if((b|0)==(i|0))if(a[e>>0]|0){a[e>>0]=0;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=46;f=a[k>>0]|0;if((((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;p=0}else p=0}else p=-1;else{if((b|0)==(j|0)?(j=a[k>>0]|0,(((j&1)==0?(j&255)>>>1:c[k+4>>2]|0)|0)!=0):0){if(!(a[e>>0]|0)){p=-1;break}p=c[m>>2]|0;if((p-l|0)>=160){p=0;break}l=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=l;c[n>>2]=0;p=0;break}i=o+128|0;p=o;while(1){if((c[p>>2]|0)==(b|0))break;p=p+4|0;if((p|0)==(i|0)){p=i;break}}i=p-o|0;p=i>>2;if((i|0)<=124){j=a[57498+p>>0]|0;switch(p|0){case 24:case 25:{p=c[h>>2]|0;if((p|0)!=(g|0)?(d[p+-1>>0]&95|0)!=(d[f>>0]&127|0):0){p=-1;break a}c[h>>2]=p+1;a[p>>0]=j;p=0;break a}case 23:case 22:{a[f>>0]=80;break}default:{p=j&95;if((((p|0)==(a[f>>0]|0)?(a[f>>0]=p|128,(a[e>>0]|0)!=0):0)?(a[e>>0]=0,f=a[k>>0]|0,(((f&1)==0?(f&255)>>>1:c[k+4>>2]|0)|0)!=0):0)?(q=c[m>>2]|0,(q-l|0)<160):0){l=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=l}}}m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=j;if((i|0)>84)p=0;else{c[n>>2]=(c[n>>2]|0)+1;p=0}}else p=-1}while(0);return p|0}function qp(a){a=a|0;return}function rp(a){a=a|0;cj(a);return}function sp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;h=n+20|0;j=n+16|0;k=n+12|0;m=n;a:do if(!(c[e+4>>2]&1)){m=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[h>>2]=c[j>>2];h=Mb[m&31](b,h,e,f,g&1)|0}else{h=jn(e)|0;c[k>>2]=h;o=0;j=ra(37,k|0,44360)|0;l=o;o=0;b:do if(l&1){n=Na()|0;pm(h)|0;h=n}else{pm(h)|0;h=c[j>>2]|0;if(g)Cb[c[h+24>>2]&127](m,j);else Cb[c[h+28>>2]&127](m,j);b=a[m>>0]|0;l=(b&1)==0;h=m+1|0;g=m+8|0;k=l?h:m+1|0;h=l?h:c[m+8>>2]|0;l=m+4|0;e=(b&1)==0;c:do if((h|0)!=((e?k:c[g>>2]|0)+(e?(b&255)>>>1:c[l>>2]|0)|0)){d:while(1){j=a[h>>0]|0;f=c[d>>2]|0;do if(f){e=f+24|0;b=c[e>>2]|0;if((b|0)!=(c[f+28>>2]|0)){c[e>>2]=b+1;a[b>>0]=j;break}o=0;j=ra(c[(c[f>>2]|0)+52>>2]|0,f|0,j&255|0)|0;b=o;o=0;if(b&1)break d;if((j|0)==-1)c[d>>2]=0}while(0);h=h+1|0;b=a[m>>0]|0;e=(b&1)==0;if((h|0)==((e?k:c[g>>2]|0)+(e?(b&255)>>>1:c[l>>2]|0)|0))break c}h=Na()|0;Im(m);break b}while(0);h=c[d>>2]|0;Im(m);break a}while(0);Ya(h|0)}while(0);i=n;return h|0}function tp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+64|0;h=n;q=n+56|0;r=n+44|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,1,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(1,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=cd(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function up(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;if(e&2048){a[b>>0]=43;b=b+1|0}if(e&512){a[b>>0]=35;b=b+1|0}f=a[c>>0]|0;if(f<<24>>24){g=c;while(1){g=g+1|0;c=b+1|0;a[b>>0]=f;f=a[g>>0]|0;if(!(f<<24>>24)){b=c;break}else b=c}}a:do switch(e&74|0){case 64:{a[b>>0]=111;break}case 8:if(!(e&16384)){a[b>>0]=120;break a}else{a[b>>0]=88;break a}default:if(d){a[b>>0]=100;break a}else{a[b>>0]=117;break a}}while(0);return}function vp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;a:do switch(c[e+4>>2]&176|0){case 16:{e=a[b>>0]|0;switch(e<<24>>24){case 43:case 45:{b=b+1|0;break a}default:{}}if((d-b|0)>1&e<<24>>24==48){switch(a[b+1>>0]|0){case 88:case 120:break;default:{f=7;break a}}b=b+2|0}else f=7;break}case 32:{b=d;break}default:f=7}while(0);return b|0}function wp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;t=Is(j,44220)|0;m=Is(j,44360)|0;Cb[c[(c[m>>2]|0)+20>>2]&127](w,m);r=a[w>>0]|0;s=w+4|0;a:do if(!(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0)){o=0;va(c[(c[t>>2]|0)+32>>2]|0,t|0,b|0,e|0,f|0)|0;u=o;o=0;if(u&1)u=5;else{j=f+(e-b)|0;c[h>>2]=j;u=29}}else{c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,j|0)|0;r=o;o=0;if(r&1){u=5;break a}l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=j;l=b+1|0;break}default:l=b}b:do if((e-l|0)>1?(a[l>>0]|0)==48:0){j=l+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:break b}o=0;k=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,48)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+1;a[r>>0]=k;o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,a[j>>0]|0)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+1;a[r>>0]=j;l=l+2|0}while(0);if((l|0)!=(e|0)?(n=e+-1|0,l>>>0>>0):0){k=l;j=n;do{r=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=r;k=k+1|0;j=j+-1|0}while(k>>>0>>0)}o=0;n=ka(c[(c[m>>2]|0)+16>>2]|0,m|0)|0;r=o;o=0;if(!(r&1)){p=w+8|0;q=w+1|0;c:do if(l>>>0>>0){j=0;k=0;r=l;while(1){m=a[((a[w>>0]&1)==0?q:c[p>>2]|0)+k>>0]|0;if(m<<24>>24!=0&(j|0)==(m<<24>>24|0)){j=c[h>>2]|0;c[h>>2]=j+1;a[j>>0]=n;j=a[w>>0]|0;m=0;k=(k>>>0<(((j&1)==0?(j&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+k|0}else m=j;o=0;j=ra(c[(c[t>>2]|0)+28>>2]|0,t|0,a[r>>0]|0)|0;x=o;o=0;if(x&1)break;x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=j;r=r+1|0;if(r>>>0>=e>>>0)break c;else j=m+1|0}j=Na()|0;break a}while(0);k=b;j=f+(l-k)|0;b=c[h>>2]|0;if((j|0)==(b|0)){b=k;u=29}else{b=b+-1|0;if(j>>>0>>0)do{x=a[j>>0]|0;a[j>>0]=a[b>>0]|0;a[b>>0]=x;j=j+1|0;b=b+-1|0}while(j>>>0>>0);b=k;j=c[h>>2]|0;u=29}}else u=5}while(0);if((u|0)==5)j=Na()|0;else if((u|0)==29){c[g>>2]=(d|0)==(e|0)?j:f+(d-b)|0;Im(w);i=v;return}Im(w);Ya(j|0)}function xp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+96|0;h=n+8|0;a=n;q=n+74|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,1,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,22,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(1,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=cd(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function yp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+64|0;h=n;q=n+56|0;r=n+44|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,0,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(1,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=cd(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function zp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+112|0;h=n+8|0;a=n;q=n+75|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,0,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,23,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(1,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=cd(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function Ap(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+176|0;u=z+84|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+88|0;t=z+80|0;k=z+118|0;y=z+76|0;x=z+72|0;v=z+68|0;w=z+64|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58898,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,c[q>>2]=c[d+8>>2],h[q+8>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<1)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(2,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(39,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Bp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(d&2048){a[b>>0]=43;b=b+1|0}if(d&1024){a[b>>0]=35;b=b+1|0}h=d&260;f=d>>>14;i=(h|0)==260;if(i)g=0;else{a[b>>0]=46;a[b+1>>0]=42;b=b+2|0;g=1}d=a[c>>0]|0;if(d<<24>>24){e=b;while(1){c=c+1|0;b=e+1|0;a[e>>0]=d;d=a[c>>0]|0;if(!(d<<24>>24))break;else e=b}}a:do switch(h|0){case 4:if(!(f&1)){a[b>>0]=102;break a}else{a[b>>0]=70;break a}case 256:if(!(f&1)){a[b>>0]=101;break a}else{a[b>>0]=69;break a}default:{d=(f&1|0)!=0;if(i)if(d){a[b>>0]=65;break a}else{a[b>>0]=97;break a}else if(d){a[b>>0]=71;break a}else{a[b>>0]=103;break a}}}while(0);return g|0}function Cp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+16|0;A=z;y=Is(j,44220)|0;w=Is(j,44360)|0;Cb[c[(c[w>>2]|0)+20>>2]&127](A,w);c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,j|0)|0;x=o;o=0;if(x&1)v=8;else{n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=j;n=b+1|0;v=10}break}default:{n=b;v=10}}a:do if((v|0)==10){x=e;b:do if((x-n|0)>1?(a[n>>0]|0)==48:0){l=n+1|0;switch(a[l>>0]|0){case 88:case 120:break;default:{v=11;break b}}o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,48)|0;u=o;o=0;if(u&1){v=8;break a}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=j;n=n+2|0;o=0;j=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,a[l>>0]|0)|0;u=o;o=0;if(u&1){v=8;break a}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=j;if(n>>>0>>0){j=n;while(1){l=a[j>>0]|0;o=0;m=ua(3)|0;u=o;o=0;if(u&1)break;o=0;l=ra(39,l<<24>>24|0,m|0)|0;u=o;o=0;if(u&1)break;if(!l){u=n;break b}j=j+1|0;if(j>>>0>=e>>>0){u=n;break b}}j=Na()|0;break a}else{u=n;j=n}}else v=11;while(0);c:do if((v|0)==11)if(n>>>0>>0){j=n;while(1){l=a[j>>0]|0;o=0;m=ua(3)|0;u=o;o=0;if(u&1)break;o=0;l=ra(40,l<<24>>24|0,m|0)|0;u=o;o=0;if(u&1)break;if(!l){u=n;break c}j=j+1|0;if(j>>>0>=e>>>0){u=n;break c}}j=Na()|0;break a}else{u=n;j=n}while(0);s=a[A>>0]|0;t=A+4|0;if(((s&1)==0?(s&255)>>>1:c[t>>2]|0)|0){if((u|0)!=(j|0)?(p=j+-1|0,u>>>0

>>0):0){m=u;l=p;do{s=a[m>>0]|0;a[m>>0]=a[l>>0]|0;a[l>>0]=s;m=m+1|0;l=l+-1|0}while(m>>>0>>0)}o=0;p=ka(c[(c[w>>2]|0)+16>>2]|0,w|0)|0;s=o;o=0;if(s&1){v=8;break}q=A+8|0;r=A+1|0;d:do if(u>>>0>>0){l=0;m=0;s=u;while(1){n=a[((a[A>>0]&1)==0?r:c[q>>2]|0)+m>>0]|0;if(n<<24>>24>0&(l|0)==(n<<24>>24|0)){l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=p;l=a[A>>0]|0;n=0;m=(m>>>0<(((l&1)==0?(l&255)>>>1:c[t>>2]|0)+-1|0)>>>0&1)+m|0}else n=l;o=0;l=ra(c[(c[y>>2]|0)+28>>2]|0,y|0,a[s>>0]|0)|0;B=o;o=0;if(B&1)break;B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=l;s=s+1|0;if(s>>>0>=j>>>0)break d;else l=n+1|0}j=Na()|0;break a}while(0);l=f+(u-b)|0;m=c[h>>2]|0;if((l|0)!=(m|0)?(k=m+-1|0,l>>>0>>0):0){do{B=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=B;l=l+1|0;k=k+-1|0}while(l>>>0>>0);l=y}else l=y}else{o=0;va(c[(c[y>>2]|0)+32>>2]|0,y|0,u|0,j|0,c[h>>2]|0)|0;B=o;o=0;if(B&1){v=8;break}c[h>>2]=(c[h>>2]|0)+(j-u);l=y}e:do if(j>>>0>>0){while(1){k=a[j>>0]|0;if(k<<24>>24==46)break;o=0;k=ra(c[(c[l>>2]|0)+28>>2]|0,y|0,k|0)|0;B=o;o=0;if(B&1){v=4;break}B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=k;j=j+1|0;if(j>>>0>=e>>>0)break e}if((v|0)==4){j=Na()|0;break a}o=0;k=ka(c[(c[w>>2]|0)+12>>2]|0,w|0)|0;B=o;o=0;if(B&1){v=8;break a}B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=k;j=j+1|0}while(0);o=0;va(c[(c[y>>2]|0)+32>>2]|0,y|0,j|0,e|0,c[h>>2]|0)|0;B=o;o=0;if(B&1)v=8;else{B=(c[h>>2]|0)+(x-j)|0;c[h>>2]=B;c[g>>2]=(d|0)==(e|0)?B:f+(d-b)|0;Im(A);i=z;return}}while(0);if((v|0)==8)j=Na()|0;Im(A);Ya(j|0)}function Dp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+176|0;u=z+76|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+80|0;t=z+72|0;k=z+110|0;y=z+68|0;x=z+64|0;v=z+60|0;w=z+56|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58899,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,h[q>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<1)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}while(0);do if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(2,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(39,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Ep(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+80|0;l=q;b=q+70|0;n=q+12|0;p=q+32|0;k=q+8|0;m=q+4|0;a[b>>0]=a[58901]|0;a[b+1>>0]=a[58902]|0;a[b+2>>0]=a[58903]|0;a[b+3>>0]=a[58904]|0;a[b+4>>0]=a[58905]|0;a[b+5>>0]=a[58906]|0;h=Xo()|0;c[l>>2]=g;b=Su(n,20,h,b,l)|0;g=n+b|0;h=vp(n,g,e)|0;j=jn(e)|0;c[k>>2]=j;o=0;k=ra(37,k|0,44220)|0;r=o;o=0;if(r&1){r=Na()|0;pm(j)|0;Ya(r|0)}else{pm(j)|0;Pb[c[(c[k>>2]|0)+32>>2]&31](k,n,g,p)|0;r=p+b|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];r=cd(l,p,(h|0)==(g|0)?r:p+(h-n)|0,r,e,f)|0;i=q;return r|0}return 0}function Fp(a){a=a|0;return}function Gp(a){a=a|0;cj(a);return}function Hp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;h=m+20|0;j=m+16|0;k=m+12|0;l=m;a:do if(!(c[e+4>>2]&1)){l=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[h>>2]=c[j>>2];h=Mb[l&31](b,h,e,f,g&1)|0}else{h=jn(e)|0;c[k>>2]=h;o=0;j=ra(37,k|0,44368)|0;k=o;o=0;b:do if(k&1){m=Na()|0;pm(h)|0;h=m}else{pm(h)|0;h=c[j>>2]|0;if(g)Cb[c[h+24>>2]&127](l,j);else Cb[c[h+28>>2]&127](l,j);b=a[l>>0]|0;e=(b&1)==0;h=l+4|0;g=l+8|0;k=e?h:l+4|0;h=e?h:c[l+8>>2]|0;e=(b&1)==0;c:do if((h|0)!=((e?k:c[g>>2]|0)+((e?(b&255)>>>1:c[k>>2]|0)<<2)|0)){while(1){j=c[h>>2]|0;f=c[d>>2]|0;if(f){e=f+24|0;b=c[e>>2]|0;if((b|0)==(c[f+28>>2]|0)){o=0;j=ra(c[(c[f>>2]|0)+52>>2]|0,f|0,j|0)|0;b=o;o=0;if(b&1)break}else{c[e>>2]=b+4;c[b>>2]=j}if((j|0)==-1)c[d>>2]=0}h=h+4|0;b=a[l>>0]|0;e=(b&1)==0;if((h|0)==((e?k:c[g>>2]|0)+((e?(b&255)>>>1:c[k>>2]|0)<<2)|0))break c}h=Na()|0;Wm(l);break b}while(0);h=c[d>>2]|0;Wm(l);break a}while(0);Ya(h|0)}while(0);i=m;return h|0}function Ip(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+128|0;h=n;q=n+116|0;r=n+104|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,1,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(3,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=Uu(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function Jp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;t=Is(j,44212)|0;m=Is(j,44368)|0;Cb[c[(c[m>>2]|0)+20>>2]&127](w,m);r=a[w>>0]|0;s=w+4|0;a:do if(!(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0)){o=0;va(c[(c[t>>2]|0)+48>>2]|0,t|0,b|0,e|0,f|0)|0;u=o;o=0;if(u&1)u=5;else{j=f+(e-b<<2)|0;c[h>>2]=j;u=28}}else{c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,j|0)|0;r=o;o=0;if(r&1){u=5;break a}l=c[h>>2]|0;c[h>>2]=l+4;c[l>>2]=j;l=b+1|0;break}default:l=b}b:do if((e-l|0)>1?(a[l>>0]|0)==48:0){j=l+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:{r=l;break b}}o=0;k=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,48)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=k;o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,a[j>>0]|0)|0;r=o;o=0;if(r&1){u=5;break a}r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=j;r=l+2|0}else r=l;while(0);if((r|0)!=(e|0)?(n=e+-1|0,r>>>0>>0):0){k=r;j=n;do{q=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=q;k=k+1|0;j=j+-1|0}while(k>>>0>>0)}o=0;m=ka(c[(c[m>>2]|0)+16>>2]|0,m|0)|0;q=o;o=0;if(!(q&1)){n=w+8|0;p=w+1|0;c:do if(r>>>0>>0){j=0;k=0;q=r;while(1){l=a[((a[w>>0]&1)==0?p:c[n>>2]|0)+k>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=c[h>>2]|0;c[h>>2]=j+4;c[j>>2]=m;j=a[w>>0]|0;l=0;k=(k>>>0<(((j&1)==0?(j&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+k|0}else l=j;o=0;j=ra(c[(c[t>>2]|0)+44>>2]|0,t|0,a[q>>0]|0)|0;x=o;o=0;if(x&1)break;x=c[h>>2]|0;c[h>>2]=x+4;c[x>>2]=j;q=q+1|0;if(q>>>0>=e>>>0)break c;else j=l+1|0}j=Na()|0;break a}while(0);l=b;j=f+(r-l<<2)|0;k=c[h>>2]|0;if((j|0)!=(k|0)){b=k+-4|0;if(j>>>0>>0){do{x=c[j>>2]|0;c[j>>2]=c[b>>2];c[b>>2]=x;j=j+4|0;b=b+-4|0}while(j>>>0>>0);b=l;j=k;u=28}else{b=l;j=k;u=28}}else{b=l;u=28}}else u=5}while(0);if((u|0)==5)j=Na()|0;else if((u|0)==28){c[g>>2]=(d|0)==(e|0)?j:f+(d-b<<2)|0;Im(w);i=v;return}Im(w);Ya(j|0)}function Kp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+224|0;h=n+8|0;a=n;q=n+196|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,1,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,22,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(3,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=Uu(h,k,r,s,d,e)|0;i=n;return s|0}return 0}\n function ut(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+16|0;s=u;q=u+8|0;a:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(c[l>>2]|0))break a;l=l+4|0;if((l|0)==(f|0)){l=f;break}}}while(0);c[k>>2]=h;c[g>>2]=e;n=j;r=b+8|0;b:do if(!((h|0)==(j|0)|(e|0)==(f|0))){b=h;m=l;c:while(1){w=d;h=c[w+4>>2]|0;l=s;c[l>>2]=c[w>>2];c[l+4>>2]=h;l=qk(c[r>>2]|0)|0;o=0;h=sa(21,b|0,g|0,m-e>>2|0,n-b|0,d|0)|0;w=o;o=0;if(w&1){v=9;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=8;break}switch(h|0){case 0:{p=1;break b}case -1:{l=b;v=14;break c}default:{}}l=(c[k>>2]|0)+h|0;c[k>>2]=l;if((l|0)==(j|0)){v=27;break}if((m|0)==(f|0)){e=c[g>>2]|0;b=l;l=f}else{l=qk(c[r>>2]|0)|0;o=0;e=ma(34,q|0,0,d|0)|0;w=o;o=0;if(w&1){v=35;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=34;break}if((e|0)==-1){p=2;break b}if(e>>>0>(n-(c[k>>2]|0)|0)>>>0){p=1;break b}if(e){l=q;while(1){m=a[l>>0]|0;w=c[k>>2]|0;c[k>>2]=w+1;a[w>>0]=m;e=e+-1|0;if(!e)break;else l=l+1|0}}e=(c[g>>2]|0)+4|0;c[g>>2]=e;d:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(c[l>>2]|0))break d;l=l+4|0;if((l|0)==(f|0)){l=f;break}}}while(0);b=c[k>>2]|0}if((b|0)==(j|0)|(e|0)==(f|0)){v=47;break b}else m=l}if((v|0)==8){w=Na(0)|0;ec(w)}else if((v|0)==9){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==14){c[k>>2]=l;e:do if((e|0)!=(c[g>>2]|0)){while(1){w=c[e>>2]|0;b=qk(c[r>>2]|0)|0;o=0;l=ma(34,l|0,w|0,s|0)|0;w=o;o=0;if(w&1){t=b;break}if((b|0)!=0?(o=0,ka(75,b|0)|0,w=o,o=0,w&1):0){v=18;break}if((l|0)==-1)break e;l=(c[k>>2]|0)+l|0;c[k>>2]=l;e=e+4|0;if((e|0)==(c[g>>2]|0))break e}if((v|0)==18){w=Na(0)|0;ec(w)}e=Na()|0;if((t|0)!=0?(o=0,ka(75,t|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}while(0);c[g>>2]=e;p=2;break}else if((v|0)==27){e=c[g>>2]|0;v=47;break}else if((v|0)==34){w=Na(0)|0;ec(w)}else if((v|0)==35){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}}else v=47;while(0);if((v|0)==47)p=(e|0)!=(f|0)&1;i=u;return p|0}function vt(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+16|0;t=u;a:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(a[l>>0]|0))break a;l=l+1|0;if((l|0)==(f|0)){l=f;break}}}while(0);c[k>>2]=h;c[g>>2]=e;p=j;r=b+8|0;b:do if(!((h|0)==(j|0)|(e|0)==(f|0))){b=h;n=l;c:while(1){m=d;l=c[m+4>>2]|0;h=t;c[h>>2]=c[m>>2];c[h+4>>2]=l;h=n;l=qk(c[r>>2]|0)|0;o=0;m=sa(22,b|0,g|0,h-e|0,p-b>>2|0,d|0)|0;w=o;o=0;if(w&1){v=9;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=8;break}switch(m|0){case 0:{q=2;break b}case -1:{l=b;v=14;break c}default:{}}b=(c[k>>2]|0)+(m<<2)|0;c[k>>2]=b;if((b|0)==(j|0)){v=31;break}e=c[g>>2]|0;if((n|0)==(f|0))l=f;else{l=qk(c[r>>2]|0)|0;o=0;e=va(20,b|0,e|0,1,d|0)|0;w=o;o=0;if(w&1){v=38;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=37;break}if(e){q=2;break b}c[k>>2]=(c[k>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;d:do if((e|0)==(f|0))l=f;else{l=e;while(1){if(!(a[l>>0]|0))break d;l=l+1|0;if((l|0)==(f|0)){l=f;break}}}while(0);b=c[k>>2]|0}if((b|0)==(j|0)|(e|0)==(f|0)){v=47;break b}else n=l}if((v|0)==8){w=Na(0)|0;ec(w)}else if((v|0)==9){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==14){c[k>>2]=l;e:do if((e|0)!=(c[g>>2]|0)){b=l;f:while(1){l=qk(c[r>>2]|0)|0;o=0;b=va(20,b|0,e|0,h-e|0,t|0)|0;w=o;o=0;if(w&1){v=19;break}if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){v=18;break}switch(b|0){case -1:{v=25;break f}case -2:{v=26;break f}case 0:{e=e+1|0;break}default:e=e+b|0}b=(c[k>>2]|0)+4|0;c[k>>2]=b;if((e|0)==(c[g>>2]|0)){s=e;break e}}if((v|0)==18){w=Na(0)|0;ec(w)}else if((v|0)==19){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}else if((v|0)==25){c[g>>2]=e;q=2;break b}else if((v|0)==26){c[g>>2]=e;q=1;break b}}else s=e;while(0);c[g>>2]=s;q=(s|0)!=(f|0)&1;break}else if((v|0)==31){e=c[g>>2]|0;v=47;break}else if((v|0)==37){w=Na(0)|0;ec(w)}else if((v|0)==38){e=Na()|0;if((l|0)!=0?(o=0,ka(75,l|0)|0,w=o,o=0,w&1):0){w=Na(0)|0;ec(w)}Ya(e|0)}}else v=47;while(0);if((v|0)==47)q=(e|0)!=(f|0)&1;i=u;return q|0}function wt(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;j=i;i=i+16|0;h=j;c[g>>2]=e;e=qk(c[b+8>>2]|0)|0;o=0;b=ma(34,h|0,0,d|0)|0;d=o;o=0;if(d&1){h=Na()|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,j=o,o=0,j&1):0){j=Na(0)|0;ec(j)}Ya(h|0)}if((e|0)!=0?(o=0,ka(75,e|0)|0,d=o,o=0,d&1):0){d=Na(0)|0;ec(d)}switch(b|0){case 0:case -1:{h=2;break}default:{b=b+-1|0;if(b>>>0<=(f-(c[g>>2]|0)|0)>>>0)if(!b)h=0;else while(1){d=a[h>>0]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=d;b=b+-1|0;if(!b){h=0;break}else h=h+1|0}else h=1}}i=j;return h|0}function xt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+8|0;o=0;d=ka(75,c[b>>2]|0)|0;e=o;o=0;do if(e&1)f=16;else{o=0;e=ma(35,0,0,4)|0;a=o;o=0;if(a&1){a=Na(0)|0;if(!d)break;o=0;ka(75,d|0)|0;h=o;o=0;if(!(h&1))break;h=Na(0)|0;ec(h)}if((d|0)!=0?(o=0,ka(75,d|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}if(!e){a=c[b>>2]|0;if(a){o=0;a=ka(75,a|0)|0;h=o;o=0;if(h&1){f=16;break}if((a|0)!=0?(o=0,ka(75,a|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}else g=0}else g=1}else g=-1;return g|0}while(0);if((f|0)==16)a=Na(0)|0;ec(a);return 0}function yt(a){a=a|0;return 0}function zt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=e;j=a+8|0;a:do if((d|0)==(e|0)|(f|0)==0)a=0;else{a=0;i=0;while(1){h=qk(c[j>>2]|0)|0;o=0;g=ma(36,d|0,k-d|0,b|0)|0;n=o;o=0;if(n&1){m=h;break}if((h|0)!=0?(o=0,ka(75,h|0)|0,n=o,o=0,n&1):0){l=5;break}switch(g|0){case -2:case -1:break a;case 0:{d=d+1|0;g=1;break}default:d=d+g|0}a=g+a|0;i=i+1|0;if((d|0)==(e|0)|i>>>0>=f>>>0)break a}if((l|0)==5){n=Na(0)|0;ec(n)}a=Na()|0;if((m|0)!=0?(o=0,ka(75,m|0)|0,n=o,o=0,n&1):0){n=Na(0)|0;ec(n)}Ya(a|0)}while(0);return a|0}function At(a){a=a|0;var b=0,d=0;a=c[a+8>>2]|0;if(a){o=0;a=ka(75,a|0)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}if((a|0)!=0?(o=0,ka(75,a|0)|0,d=o,o=0,d&1):0){d=Na(0)|0;ec(d)}else b=4}else b=1;return b|0}function Bt(a){a=a|0;cj(a);return}function Ct(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Hv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Dt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Iv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Et(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Ft(a){a=a|0;return 0}function Gt(a){a=a|0;return 0}function Ht(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Jv(c,d,e,1114111,0)|0}function It(a){a=a|0;return 4}function Jt(a){a=a|0;cj(a);return}function Kt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Kv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Lt(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;a=i;i=i+16|0;k=a+4|0;b=a;c[k>>2]=d;c[b>>2]=g;h=Lv(d,e,k,g,h,b,1114111,0)|0;c[f>>2]=c[k>>2];c[j>>2]=c[b>>2];i=a;return h|0}function Mt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Nt(a){a=a|0;return 0}function Ot(a){a=a|0;return 0}function Pt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Mv(c,d,e,1114111,0)|0}function Qt(a){a=a|0;return 4}function Rt(a){a=a|0;cj(a);return}function St(a){a=a|0;cj(a);return}function Tt(b,d){b=b|0;d=d|0;c[b+4>>2]=d+-1;c[b>>2]=44384;a[b+8>>0]=46;a[b+9>>0]=44;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}function Ut(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=44424;c[a+8>>2]=46;c[a+12>>2]=44;a=a+16|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Vt(a){a=a|0;c[a>>2]=44384;Im(a+12|0);return}function Wt(a){a=a|0;Vt(a);cj(a);return}function Xt(a){a=a|0;c[a>>2]=44424;Im(a+16|0);return}function Yt(a){a=a|0;Xt(a);cj(a);return}function Zt(b){b=b|0;return a[b+8>>0]|0}function _t(a){a=a|0;return c[a+8>>2]|0}function $t(b){b=b|0;return a[b+9>>0]|0}function au(a){a=a|0;return c[a+12>>2]|0}function bu(a,b){a=a|0;b=b|0;Fm(a,b+12|0);return}function cu(a,b){a=a|0;b=b|0;Fm(a,b+16|0);return}function du(a,b){a=a|0;b=b|0;Gm(a,59024,4);return}function eu(a,b){a=a|0;b=b|0;Um(a,44996,pl(44996)|0);return}function fu(a,b){a=a|0;b=b|0;Gm(a,59029,5);return}function gu(a,b){a=a|0;b=b|0;Um(a,45016,pl(45016)|0);return}function hu(a){a=a|0;switch(c[a+4>>2]&74|0){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function iu(b){b=b|0;do if((a[2464]|0)==0?(Ha(2464)|0)!=0:0){if((a[2472]|0)==0?(Ha(2472)|0)!=0:0){b=45040;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=45208);kb(193,0,n|0)|0;Pa(2472)}o=0;ra(41,45040,59035)|0;b=o;o=0;if(((((((((((((!(b&1)?(o=0,ra(41,45052,59042)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45064,59049)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45076,59057)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45088,59067)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45100,59076)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45112,59083)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45124,59092)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45136,59096)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45148,59100)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45160,59104)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45172,59108)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45184,59112)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45196,59116)|0,b=o,o=0,!(b&1)):0){c[11302]=45040;Pa(2464);break}b=Na()|0;sb(2464);Ya(b|0)}while(0);return c[11302]|0}function ju(b){b=b|0;do if((a[2480]|0)==0?(Ha(2480)|0)!=0:0){if((a[2488]|0)==0?(Ha(2488)|0)!=0:0){b=45212;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=45380);kb(194,0,n|0)|0;Pa(2488)}o=0;ra(42,45212,45380)|0;b=o;o=0;if(((((((((((((!(b&1)?(o=0,ra(42,45224,45408)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45236,45436)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45248,45468)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45260,45508)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45272,45544)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45284,45572)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45296,45608)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45308,45624)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45320,45640)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45332,45656)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45344,45672)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45356,45688)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,45368,45704)|0,b=o,o=0,!(b&1)):0){c[11430]=45212;Pa(2480);break}b=Na()|0;sb(2480);Ya(b|0)}while(0);return c[11430]|0}function ku(b){b=b|0;a:do if((a[2496]|0)==0?(Ha(2496)|0)!=0:0){if((a[2504]|0)==0?(Ha(2504)|0)!=0:0){b=45724;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=46012);kb(195,0,n|0)|0;Pa(2504)}o=0;ra(41,45724,59120)|0;b=o;o=0;do if((((((((((((((!(b&1)?(o=0,ra(41,45736,59128)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45748,59137)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45760,59143)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45772,59149)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45784,59153)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45796,59158)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45808,59163)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45820,59170)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45832,59180)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45844,59188)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45856,59197)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45868,59206)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45880,59210)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(41,45892,59214)|0,b=o,o=0,!(b&1)):0){o=0;ra(41,45904,59218)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45916,59149)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45928,59222)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45940,59226)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45952,59230)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45964,59234)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45976,59238)|0;b=o;o=0;if(b&1)break;o=0;ra(41,45988,59242)|0;b=o;o=0;if(b&1)break;o=0;ra(41,46e3,59246)|0;b=o;o=0;if(b&1)break;c[11503]=45724;Pa(2496);break a}while(0);b=Na()|0;sb(2496);Ya(b|0)}while(0);return c[11503]|0}function lu(b){b=b|0;a:do if((a[2512]|0)==0?(Ha(2512)|0)!=0:0){if((a[2520]|0)==0?(Ha(2520)|0)!=0:0){b=46016;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=46304);kb(196,0,n|0)|0;Pa(2520)}o=0;ra(42,46016,46304)|0;b=o;o=0;do if((((((((((((((!(b&1)?(o=0,ra(42,46028,46336)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46040,46372)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46052,46396)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46064,46420)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46076,46436)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46088,46456)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46100,46476)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46112,46504)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46124,46544)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46136,46576)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46148,46612)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46160,46648)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46172,46664)|0,b=o,o=0,!(b&1)):0)?(o=0,ra(42,46184,46680)|0,b=o,o=0,!(b&1)):0){o=0;ra(42,46196,46696)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46208,46420)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46220,46712)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46232,46728)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46244,46744)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46256,46760)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46268,46776)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46280,46792)|0;b=o;o=0;if(b&1)break;o=0;ra(42,46292,46808)|0;b=o;o=0;if(b&1)break;c[11706]=46016;Pa(2512);break a}while(0);b=Na()|0;sb(2512);Ya(b|0)}while(0);return c[11706]|0}function mu(b){b=b|0;do if((a[2528]|0)==0?(Ha(2528)|0)!=0:0){if((a[2536]|0)==0?(Ha(2536)|0)!=0:0){b=46828;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=47116);kb(197,0,n|0)|0;Pa(2536)}o=0;ra(41,46828,59250)|0;b=o;o=0;if(!(b&1)?(o=0,ra(41,46840,59253)|0,b=o,o=0,!(b&1)):0){c[11779]=46828;Pa(2528);break}b=Na()|0;sb(2528);Ya(b|0)}while(0);return c[11779]|0}function nu(b){b=b|0;do if((a[2544]|0)==0?(Ha(2544)|0)!=0:0){if((a[2552]|0)==0?(Ha(2552)|0)!=0:0){b=47120;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=b+12|0}while((b|0)!=47408);kb(198,0,n|0)|0;Pa(2552)}o=0;ra(42,47120,47408)|0;b=o;o=0;if(!(b&1)?(o=0,ra(42,47132,47420)|0,b=o,o=0,!(b&1)):0){c[11858]=47120;Pa(2544);break}b=Na()|0;sb(2544);Ya(b|0)}while(0);return c[11858]|0}function ou(b){b=b|0;do if((a[2560]|0)==0?(Ha(2560)|0)!=0:0){o=0;wa(5,47436,59256,8);b=o;o=0;if(b&1){b=Na()|0;sb(2560);Ya(b|0)}else{kb(199,47436,n|0)|0;Pa(2560);break}}while(0);return 47436}function pu(b){b=b|0;var c=0;do if((a[2568]|0)==0?(Ha(2568)|0)!=0:0){o=0;b=ka(76,47448)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47484,47448,b|0),c=o,o=0,!(c&1)):0){kb(200,47484,n|0)|0;Pa(2568);break}c=Na()|0;sb(2568);Ya(c|0)}while(0);return 47484}function qu(b){b=b|0;do if((a[2576]|0)==0?(Ha(2576)|0)!=0:0){o=0;wa(5,47496,59265,8);b=o;o=0;if(b&1){b=Na()|0;sb(2576);Ya(b|0)}else{kb(199,47496,n|0)|0;Pa(2576);break}}while(0);return 47496}function ru(b){b=b|0;var c=0;do if((a[2584]|0)==0?(Ha(2584)|0)!=0:0){o=0;b=ka(76,47508)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47544,47508,b|0),c=o,o=0,!(c&1)):0){kb(200,47544,n|0)|0;Pa(2584);break}c=Na()|0;sb(2584);Ya(c|0)}while(0);return 47544}function su(b){b=b|0;do if((a[2592]|0)==0?(Ha(2592)|0)!=0:0){o=0;wa(5,47556,59274,20);b=o;o=0;if(b&1){b=Na()|0;sb(2592);Ya(b|0)}else{kb(199,47556,n|0)|0;Pa(2592);break}}while(0);return 47556}function tu(b){b=b|0;var c=0;do if((a[2600]|0)==0?(Ha(2600)|0)!=0:0){o=0;b=ka(76,47568)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47652,47568,b|0),c=o,o=0,!(c&1)):0){kb(200,47652,n|0)|0;Pa(2600);break}c=Na()|0;sb(2600);Ya(c|0)}while(0);return 47652}function uu(b){b=b|0;do if((a[2608]|0)==0?(Ha(2608)|0)!=0:0){o=0;wa(5,47664,59295,11);b=o;o=0;if(b&1){b=Na()|0;sb(2608);Ya(b|0)}else{kb(199,47664,n|0)|0;Pa(2608);break}}while(0);return 47664}function vu(b){b=b|0;var c=0;do if((a[2616]|0)==0?(Ha(2616)|0)!=0:0){o=0;b=ka(76,47676)|0;c=o;o=0;if(!(c&1)?(o=0,wa(15,47724,47676,b|0),c=o,o=0,!(c&1)):0){kb(200,47724,n|0)|0;Pa(2616);break}c=Na()|0;sb(2616);Ya(c|0)}while(0);return 47724}function wu(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=44304;a=a+8|0;b=c[a>>2]|0;o=0;d=ua(3)|0;e=o;o=0;do if(!(e&1)){if((b|0)!=(d|0)?(o=0,ha(188,c[a>>2]|0),e=o,o=0,e&1):0)break;return}while(0);e=Na(0)|0;ec(e)}function xu(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+112|0;m=z;p=(g-f|0)/12|0;do if(p>>>0>100){m=Fl(p)|0;if((m|0)==0?(o=0,xa(6),y=o,o=0,y&1):0){l=0;s=6;break}l=m;s=11}else{l=0;s=11}while(0);a:do if((s|0)==11){if((f|0)==(g|0))n=0;else{s=f;q=0;r=m;while(1){n=a[s>>0]|0;if(!(n&1))n=(n&255)>>>1;else n=c[s+4>>2]|0;if(!n){a[r>>0]=2;n=q+1|0;p=p+-1|0}else{a[r>>0]=1;n=q}s=s+12|0;if((s|0)==(g|0))break;else{q=n;r=r+1|0}}}x=(f|0)==(g|0);y=(f|0)==(g|0);w=0;t=n;b:while(1){n=c[b>>2]|0;do if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;v=o;o=0;if(v&1){s=5;break b}if((n|0)==-1){c[b>>2]=0;n=0;break}else{n=c[b>>2]|0;break}}}else n=0;while(0);s=(n|0)==0;q=c[e>>2]|0;if(q){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;n=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;v=o;o=0;if(v&1){s=5;break}if((n|0)==-1){c[e>>2]=0;q=0}}}else q=0;r=(q|0)==0;n=c[b>>2]|0;if(!((p|0)!=0&(s^r))){s=64;break}q=c[n+12>>2]|0;if((q|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;v=o;o=0;if(v&1){s=5;break}}else n=d[q>>0]|0;n=n&255;if(!k){o=0;n=ra(c[(c[h>>2]|0)+12>>2]|0,h|0,n|0)|0;v=o;o=0;if(v&1){s=5;break}}v=w+1|0;if(x){n=0;s=t}else{r=0;u=f;s=t;t=m;while(1){do if((a[t>>0]|0)==1){if(!(a[u>>0]&1))q=u+1|0;else q=c[u+8>>2]|0;q=a[q+w>>0]|0;if(!k){o=0;q=ra(c[(c[h>>2]|0)+12>>2]|0,h|0,q|0)|0;A=o;o=0;if(A&1){s=4;break b}}if(n<<24>>24!=q<<24>>24){a[t>>0]=0;q=r;p=p+-1|0;break}q=a[u>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[u+4>>2]|0;if((q|0)==(v|0)){a[t>>0]=2;q=1;s=s+1|0;p=p+-1|0}else q=1}else q=r;while(0);u=u+12|0;if((u|0)==(g|0)){n=q;break}else{r=q;t=t+1|0}}}if(!n){w=v;t=s;continue}n=c[b>>2]|0;q=n+12|0;r=c[q>>2]|0;if((r|0)==(c[n+16>>2]|0)){o=0;ka(c[(c[n>>2]|0)+40>>2]|0,n|0)|0;A=o;o=0;if(A&1){s=5;break}}else c[q>>2]=r+1;if((s+p|0)>>>0<2|y){w=v;t=s;continue}else{n=f;r=s;s=m}while(1){if((a[s>>0]|0)==2){q=a[n>>0]|0;if(!(q&1))q=(q&255)>>>1;else q=c[n+4>>2]|0;if((q|0)!=(v|0)){a[s>>0]=0;r=r+-1|0}}n=n+12|0;if((n|0)==(g|0)){w=v;t=r;continue b}else s=s+1|0}}if((s|0)==4){f=Na()|0;break}else if((s|0)==5){f=Na()|0;break}else if((s|0)==64){do if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;A=o;o=0;if(A&1){s=6;break a}if((n|0)==-1){c[b>>2]=0;n=0;break}else{n=c[b>>2]|0;break}}}else n=0;while(0);p=(n|0)==0;do if(!r){if((c[q+12>>2]|0)==(c[q+16>>2]|0)){o=0;n=ka(c[(c[q>>2]|0)+36>>2]|0,q|0)|0;A=o;o=0;if(A&1){s=6;break a}if((n|0)==-1){c[e>>2]=0;s=76;break}}if(!p)s=77}else s=76;while(0);if((s|0)==76?p:0)s=77;if((s|0)==77)c[j>>2]=c[j>>2]|2;c:do if((f|0)==(g|0))s=81;else while(1){if((a[m>>0]|0)==2)break c;f=f+12|0;if((f|0)==(g|0)){s=81;break}else m=m+1|0}while(0);if((s|0)==81){c[j>>2]=c[j>>2]|4;f=g}if(l)Gl(l);i=z;return f|0}}while(0);if((s|0)==6)f=Na()|0;if(l)Gl(l);Ya(f|0);return 0}function yu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(21,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function zu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){E=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;k=(b|0)==0;l=c[f>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(k)break;else break b;o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;n=o;o=0;if(n&1){E=24;break b}if((m|0)!=-1)if(k)break;else break b;else{c[f>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(k){l=0;break}else l=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){E=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){E=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+k}m=b+12|0;k=c[m>>2]|0;n=b+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}}else k=d[k>>0]|0;if(Wo(k&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[m>>2]=k+1;continue}}if((E|0)==24){b=Na()|0;break}F=a[C>>0]|0;if((((F&1)==0?(F&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){F=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=F}o=0;g=va(22,g|0,c[v>>2]|0,h|0,u|0)|0;k=D;F=o;o=0;if(!(F&1)){F=j;c[F>>2]=g;c[F+4>>2]=k;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((b|0)==-1){c[f>>2]=0;E=49;break}}if(!g)E=50}else E=49;while(0);if((E|0)==49?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;F=c[e>>2]|0;Im(B);Im(C);i=A;return F|0}else E=25}else E=25;while(0);if((E|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Au(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;B=i;i=i+240|0;u=B+202|0;l=B+200|0;D=B+24|0;C=B+12|0;w=B+8|0;z=B+40|0;A=B+4|0;x=B;v=hu(h)|0;kp(D,h,u,l);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;if(!(a[C>>0]&1))e=10;else e=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,e|0,0);t=o;o=0;a:do if(!(t&1)){r=C+8|0;s=C+1|0;h=(a[C>>0]&1)==0?s:c[r>>2]|0;c[w>>2]=h;c[A>>2]=z;c[x>>2]=0;t=C+4|0;q=a[l>>0]|0;e=c[f>>2]|0;b:while(1){if(e){if((c[e+12>>2]|0)==(c[e+16>>2]|0)){o=0;l=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;p=o;o=0;if(p&1){E=24;break}if((l|0)==-1){c[f>>2]=0;e=0}}}else e=0;m=(e|0)==0;l=c[g>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(m)break;else break b;o=0;n=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){E=24;break b}if((n|0)!=-1)if(m)break;else break b;else{c[g>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(m){l=0;break}else l=0}m=a[C>>0]|0;m=(m&1)==0?(m&255)>>>1:c[t>>2]|0;if((c[w>>2]|0)==(h+m|0)){o=0;wa(8,C|0,m<<1|0,0);p=o;o=0;if(p&1){E=24;break}if(!(a[C>>0]&1))h=10;else h=(c[C>>2]&-2)+-1|0;o=0;wa(8,C|0,h|0,0);p=o;o=0;if(p&1){E=24;break}h=(a[C>>0]&1)==0?s:c[r>>2]|0;c[w>>2]=h+m}n=e+12|0;m=c[n>>2]|0;p=e+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=24;break}}else m=d[m>>0]|0;if(Wo(m&255,v,h,w,x,q,D,z,A,u)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[e>>2]|0)+40>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[n>>2]=l+1;continue}}if((E|0)==24){e=Na()|0;break}F=a[D>>0]|0;if((((F&1)==0?(F&255)>>>1:c[D+4>>2]|0)|0)!=0?(y=c[A>>2]|0,(y-z|0)<160):0){F=c[x>>2]|0;c[A>>2]=y+4;c[y>>2]=F}o=0;h=va(23,h|0,c[w>>2]|0,j|0,v|0)|0;F=o;o=0;if(!(F&1)){b[k>>1]=h;Ur(D,z,c[A>>2]|0,j);if(e){if((c[e+12>>2]|0)==(c[e+16>>2]|0)){o=0;h=ka(c[(c[e>>2]|0)+36>>2]|0,e|0)|0;F=o;o=0;if(F&1){E=25;break}if((h|0)==-1){c[f>>2]=0;e=0}}}else e=0;h=(e|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;e=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((e|0)==-1){c[g>>2]=0;E=49;break}}if(!h)E=50}else E=49;while(0);if((E|0)==49?h:0)E=50;if((E|0)==50)c[j>>2]=c[j>>2]|2;F=c[f>>2]|0;Im(C);Im(D);i=B;return F|0}else E=25}else E=25;while(0);if((E|0)==25)e=Na()|0;Im(C);Im(D);Ya(e|0);return 0}function Bu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(24,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Cu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){D=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;l=(b|0)==0;k=c[f>>2]|0;do if(k){if((c[k+12>>2]|0)!=(c[k+16>>2]|0))if(l)break;else break b;o=0;m=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=24;break b}if((m|0)!=-1)if(l)break;else break b;else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(l){k=0;break}else k=0}l=a[B>>0]|0;l=(l&1)==0?(l&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+l|0)){o=0;wa(8,B|0,l<<1|0,0);n=o;o=0;if(n&1){D=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){D=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+l}m=b+12|0;l=c[m>>2]|0;n=b+16|0;if((l|0)==(c[n>>2]|0)){o=0;l=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}}else l=d[l>>0]|0;if(Wo(l&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=24;break}else continue}else{c[m>>2]=k+1;continue}}if((D|0)==24){b=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;g=va(25,g|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){c[j>>2]=g;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;E=o;o=0;if(E&1){D=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=25;break a}if((b|0)==-1){c[f>>2]=0;D=49;break}}if(!g)D=50}else D=49;while(0);if((D|0)==49?g:0)D=50;if((D|0)==50)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=25}else D=25;while(0);if((D|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Du(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0;A=i;i=i+240|0;t=A+202|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;kp(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))b=10;else b=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,b|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=a[k>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;n=o;o=0;if(n&1){E=24;break}if((k|0)==-1){c[e>>2]=0;b=0}}}else b=0;k=(b|0)==0;l=c[f>>2]|0;do if(l){if((c[l+12>>2]|0)!=(c[l+16>>2]|0))if(k)break;else break b;o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;n=o;o=0;if(n&1){E=24;break b}if((m|0)!=-1)if(k)break;else break b;else{c[f>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(k){l=0;break}else l=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(g+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){E=24;break}if(!(a[B>>0]&1))g=10;else g=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,g|0,0);n=o;o=0;if(n&1){E=24;break}g=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=g+k}m=b+12|0;k=c[m>>2]|0;n=b+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}}else k=d[k>>0]|0;if(Wo(k&255,u,g,v,w,p,C,y,z,t)|0)break;k=c[m>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=24;break}else continue}else{c[m>>2]=k+1;continue}}if((E|0)==24){b=Na()|0;break}F=a[C>>0]|0;if((((F&1)==0?(F&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){F=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=F}o=0;g=va(26,g|0,c[v>>2]|0,h|0,u|0)|0;k=D;F=o;o=0;if(!(F&1)){F=j;c[F>>2]=g;c[F+4>>2]=k;Ur(C,y,c[z>>2]|0,h);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;F=o;o=0;if(F&1){E=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;F=o;o=0;if(F&1){E=25;break a}if((b|0)==-1){c[f>>2]=0;E=49;break}}if(!g)E=50}else E=49;while(0);if((E|0)==49?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;F=c[e>>2]|0;Im(B);Im(C);i=A;return F|0}else E=25}else E=25;while(0);if((E|0)==25)b=Na()|0;Im(B);Im(C);Ya(b|0);return 0}function Eu(b,e,f,h,j,k){b=b|0;e=e|0;f=f|0;h=h|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,h,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;h=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=h;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(h+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))h=10;else h=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,h|0,0);q=o;o=0;if(q&1){H=24;break}h=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=h+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,h,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(1,h|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){g[k>>2]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;h=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((h|0)==-1){c[e>>2]=0;b=0}}}else b=0;h=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!h)H=50}else H=49;while(0);if((H|0)==49?h:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Fu(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,g,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(g+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))g=10;else g=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,g|0,0);q=o;o=0;if(q&1){H=24;break}g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,g,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(2,g|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){h[k>>3]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!g)H=50}else H=49;while(0);if((H|0)==49?g:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Gu(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=i;i=i+240|0;w=E+208|0;m=E+203|0;n=E+202|0;G=E+24|0;F=E+12|0;y=E+8|0;C=E+40|0;D=E+4|0;z=E;A=E+201|0;x=E+200|0;lp(G,g,w,m,n);c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;if(!(a[F>>0]&1))b=10;else b=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,b|0,0);v=o;o=0;a:do if(!(v&1)){t=F+8|0;u=F+1|0;g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g;c[D>>2]=C;c[z>>2]=0;a[A>>0]=1;a[x>>0]=69;v=F+4|0;s=a[m>>0]|0;r=a[n>>0]|0;b=c[e>>2]|0;b:while(1){if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;m=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;q=o;o=0;if(q&1){H=24;break}if((m|0)==-1){c[e>>2]=0;b=0}}}else b=0;n=(b|0)==0;m=c[f>>2]|0;do if(m){if((c[m+12>>2]|0)!=(c[m+16>>2]|0))if(n)break;else break b;o=0;p=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;q=o;o=0;if(q&1){H=24;break b}if((p|0)!=-1)if(n)break;else break b;else{c[f>>2]=0;H=16;break}}else H=16;while(0);if((H|0)==16){H=0;if(n){m=0;break}else m=0}n=a[F>>0]|0;n=(n&1)==0?(n&255)>>>1:c[v>>2]|0;if((c[y>>2]|0)==(g+n|0)){o=0;wa(8,F|0,n<<1|0,0);q=o;o=0;if(q&1){H=24;break}if(!(a[F>>0]&1))g=10;else g=(c[F>>2]&-2)+-1|0;o=0;wa(8,F|0,g|0,0);q=o;o=0;if(q&1){H=24;break}g=(a[F>>0]&1)==0?u:c[t>>2]|0;c[y>>2]=g+n}p=b+12|0;n=c[p>>2]|0;q=b+16|0;if((n|0)==(c[q>>2]|0)){o=0;n=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}}else n=d[n>>0]|0;if(mp(n&255,A,x,g,y,s,r,G,C,D,z,w)|0)break;m=c[p>>2]|0;if((m|0)==(c[q>>2]|0)){o=0;ka(c[(c[b>>2]|0)+40>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=24;break}else continue}else{c[p>>2]=m+1;continue}}if((H|0)==24){b=Na()|0;break}I=a[G>>0]|0;if(!((a[A>>0]|0)==0?1:(((I&1)==0?(I&255)>>>1:c[G+4>>2]|0)|0)==0)?(B=c[D>>2]|0,(B-C|0)<160):0){I=c[z>>2]|0;c[D>>2]=B+4;c[B>>2]=I}o=0;l=+ta(3,g|0,c[y>>2]|0,j|0);I=o;o=0;if(!(I&1)){h[k>>3]=l;Ur(G,C,c[D>>2]|0,j);if(b){if((c[b+12>>2]|0)==(c[b+16>>2]|0)){o=0;g=ka(c[(c[b>>2]|0)+36>>2]|0,b|0)|0;I=o;o=0;if(I&1){H=25;break}if((g|0)==-1){c[e>>2]=0;b=0}}}else b=0;g=(b|0)==0;do if(m){if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=0;b=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;I=o;o=0;if(I&1){H=25;break a}if((b|0)==-1){c[f>>2]=0;H=49;break}}if(!g)H=50}else H=49;while(0);if((H|0)==49?g:0)H=50;if((H|0)==50)c[j>>2]=c[j>>2]|2;I=c[e>>2]|0;Im(F);Im(G);i=E;return I|0}else H=25}else H=25;while(0);if((H|0)==25)b=Na()|0;Im(F);Im(G);Ya(b|0);return 0}function Hu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=qk(b)|0;b=fl(a,d,g)|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}i=f;return b|0}function Iu(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+112|0;l=y;n=(f-e|0)/12|0;do if(n>>>0>100){l=Fl(n)|0;if((l|0)==0?(o=0,xa(6),x=o,o=0,x&1):0){k=0;q=6;break}k=l;q=11}else{k=0;q=11}while(0);a:do if((q|0)==11){if((e|0)==(f|0))m=0;else{r=e;p=0;q=l;while(1){m=a[r>>0]|0;if(!(m&1))m=(m&255)>>>1;else m=c[r+4>>2]|0;if(!m){a[q>>0]=2;m=p+1|0;n=n+-1|0}else{a[q>>0]=1;m=p}r=r+12|0;if((r|0)==(f|0))break;else{p=m;q=q+1|0}}}w=(e|0)==(f|0);x=(e|0)==(f|0);v=0;s=n;b:while(1){n=c[b>>2]|0;do if(n){p=c[n+12>>2]|0;if((p|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;u=o;o=0;if(u&1){q=5;break b}}else n=c[p>>2]|0;if((n|0)==-1){c[b>>2]=0;r=1;break}else{r=(c[b>>2]|0)==0;break}}else r=1;while(0);p=c[d>>2]|0;if(p){n=c[p+12>>2]|0;if((n|0)==(c[p+16>>2]|0)){o=0;n=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;u=o;o=0;if(u&1){q=5;break}}else n=c[n>>2]|0;if((n|0)==-1){c[d>>2]=0;p=0;q=1}else q=0}else{p=0;q=1}n=c[b>>2]|0;if(!((s|0)!=0&(r^q))){q=66;break}p=c[n+12>>2]|0;if((p|0)==(c[n+16>>2]|0)){o=0;n=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;u=o;o=0;if(u&1){q=5;break}}else n=c[p>>2]|0;if(!j){o=0;n=ra(c[(c[g>>2]|0)+28>>2]|0,g|0,n|0)|0;u=o;o=0;if(u&1){q=5;break}}u=v+1|0;if(w){n=0;r=s}else{r=0;t=e;q=s;s=l;while(1){do if((a[s>>0]|0)==1){if(!(a[t>>0]&1))p=t+4|0;else p=c[t+8>>2]|0;p=c[p+(v<<2)>>2]|0;if(!j){o=0;p=ra(c[(c[g>>2]|0)+28>>2]|0,g|0,p|0)|0;z=o;o=0;if(z&1){q=4;break b}}if((n|0)!=(p|0)){a[s>>0]=0;p=r;q=q+-1|0;break}p=a[t>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[t+4>>2]|0;if((p|0)==(u|0)){a[s>>0]=2;p=1;m=m+1|0;q=q+-1|0}else p=1}else p=r;while(0);t=t+12|0;if((t|0)==(f|0)){n=p;r=q;break}else{r=p;s=s+1|0}}}if(!n){v=u;s=r;continue}n=c[b>>2]|0;p=n+12|0;q=c[p>>2]|0;if((q|0)==(c[n+16>>2]|0)){o=0;ka(c[(c[n>>2]|0)+40>>2]|0,n|0)|0;z=o;o=0;if(z&1){q=5;break}}else c[p>>2]=q+4;if((m+r|0)>>>0<2|x){v=u;s=r;continue}else{n=e;q=l}while(1){if((a[q>>0]|0)==2){p=a[n>>0]|0;if(!(p&1))p=(p&255)>>>1;else p=c[n+4>>2]|0;if((p|0)!=(u|0)){a[q>>0]=0;m=m+-1|0}}n=n+12|0;if((n|0)==(f|0)){v=u;s=r;continue b}else q=q+1|0}}if((q|0)==4){e=Na()|0;break}else if((q|0)==5){e=Na()|0;break}else if((q|0)==66){do if(n){m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0)){o=0;m=ka(c[(c[n>>2]|0)+36>>2]|0,n|0)|0;z=o;o=0;if(z&1){q=6;break a}}else m=c[m>>2]|0;if((m|0)==-1){c[b>>2]=0;n=1;break}else{n=(c[b>>2]|0)==0;break}}else n=1;while(0);do if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0)){o=0;m=ka(c[(c[p>>2]|0)+36>>2]|0,p|0)|0;z=o;o=0;if(z&1){q=6;break a}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else{q=81;break}else{c[d>>2]=0;q=79;break}}else q=79;while(0);if((q|0)==79?n:0)q=81;if((q|0)==81)c[h>>2]=c[h>>2]|2;c:do if((e|0)==(f|0))q=85;else while(1){if((a[l>>0]|0)==2)break c;e=e+12|0;if((e|0)==(f|0)){q=85;break}else l=l+1|0}while(0);if((q|0)==85){c[h>>2]=c[h>>2]|4;e=f}if(k)Gl(k);i=y;return e|0}}while(0);if((q|0)==6)e=Na()|0;if(k)Gl(k);Ya(e|0);return 0}function Ju(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(21,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Ku(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}k=c[e>>2]|0;do if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0)){o=0;f=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;m=o;o=0;if(m&1){C=25;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(l)break;else break b;else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(l){k=0;break}else k=0}f=a[A>>0]|0;f=(f&1)==0?(f&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+f|0)){o=0;wa(8,A|0,f<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+f}l=j+12|0;f=c[l>>2]|0;m=j+16|0;if((f|0)==(c[m>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}}else f=c[f>>2]|0;if(jp(f,t,b,u,v,n,B,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0)){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}else continue}else{c[l>>2]=f+4;continue}}if((C|0)==25){b=Na()|0;break}E=a[B>>0]|0;if((((E&1)==0?(E&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){E=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=E}o=0;b=va(22,b|0,c[u>>2]|0,g|0,t|0)|0;f=D;E=o;o=0;if(!(E&1)){E=h;c[E>>2]=b;c[E+4>>2]=f;Ur(B,x,c[y>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;E=c[d>>2]|0;Im(A);Im(B);i=z;return E|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Lu(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=i;i=i+320|0;t=A+208|0;k=A+200|0;C=A+24|0;B=A+12|0;v=A+8|0;y=A+40|0;z=A+4|0;w=A;u=hu(g)|0;np(C,g,t,k);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;if(!(a[B>>0]&1))d=10;else d=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,d|0,0);s=o;o=0;a:do if(!(s&1)){q=B+8|0;r=B+1|0;d=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=d;c[z>>2]=y;c[w>>2]=0;s=B+4|0;p=c[k>>2]|0;k=c[e>>2]|0;b:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0)){o=0;g=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;n=o;o=0;if(n&1){D=25;break}}else g=c[g>>2]|0;if((g|0)==-1){c[e>>2]=0;g=0;l=1}else{g=k;l=0}}else{g=0;l=1}m=c[f>>2]|0;do if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0)){o=0;k=ka(c[(c[m>>2]|0)+36>>2]|0,m|0)|0;n=o;o=0;if(n&1){D=25;break b}}else k=c[k>>2]|0;if((k|0)!=-1)if(l)break;else{k=m;break b}else{c[f>>2]=0;D=17;break}}else D=17;while(0);if((D|0)==17){D=0;if(l){k=0;break}else m=0}k=a[B>>0]|0;k=(k&1)==0?(k&255)>>>1:c[s>>2]|0;if((c[v>>2]|0)==(d+k|0)){o=0;wa(8,B|0,k<<1|0,0);n=o;o=0;if(n&1){D=25;break}if(!(a[B>>0]&1))d=10;else d=(c[B>>2]&-2)+-1|0;o=0;wa(8,B|0,d|0,0);n=o;o=0;if(n&1){D=25;break}d=(a[B>>0]&1)==0?r:c[q>>2]|0;c[v>>2]=d+k}l=g+12|0;k=c[l>>2]|0;n=g+16|0;if((k|0)==(c[n>>2]|0)){o=0;k=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=25;break}}else k=c[k>>2]|0;if(jp(k,u,d,v,w,p,C,y,z,t)|0){k=m;break}k=c[l>>2]|0;if((k|0)==(c[n>>2]|0)){o=0;ka(c[(c[g>>2]|0)+40>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=25;break}else{k=g;continue}}else{c[l>>2]=k+4;k=g;continue}}if((D|0)==25){d=Na()|0;break}E=a[C>>0]|0;if((((E&1)==0?(E&255)>>>1:c[C+4>>2]|0)|0)!=0?(x=c[z>>2]|0,(x-y|0)<160):0){E=c[w>>2]|0;c[z>>2]=x+4;c[x>>2]=E}o=0;d=va(23,d|0,c[v>>2]|0,h|0,u|0)|0;E=o;o=0;if(!(E&1)){b[j>>1]=d;Ur(C,y,c[z>>2]|0,h);if(g){d=c[g+12>>2]|0;if((d|0)==(c[g+16>>2]|0)){o=0;d=ka(c[(c[g>>2]|0)+36>>2]|0,g|0)|0;E=o;o=0;if(E&1){D=26;break}}else d=c[d>>2]|0;if((d|0)==-1){c[e>>2]=0;g=1}else g=0}else g=1;do if(k){d=c[k+12>>2]|0;if((d|0)==(c[k+16>>2]|0)){o=0;d=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){D=26;break a}}else d=c[d>>2]|0;if((d|0)!=-1)if(g)break;else{D=53;break}else{c[f>>2]=0;D=51;break}}else D=51;while(0);if((D|0)==51?g:0)D=53;if((D|0)==53)c[h>>2]=c[h>>2]|2;E=c[e>>2]|0;Im(B);Im(C);i=A;return E|0}else D=26}else D=26;while(0);if((D|0)==26)d=Na()|0;Im(B);Im(C);Ya(d|0);return 0}function Mu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(24,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Nu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;f=0;k=1}else{f=j;k=0}}else{f=0;k=1}l=c[e>>2]|0;do if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=0;j=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;m=o;o=0;if(m&1){C=25;break b}}else j=c[j>>2]|0;if((j|0)!=-1)if(k)break;else{j=l;break b}else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(k){j=0;break}else l=0}j=a[A>>0]|0;j=(j&1)==0?(j&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+j|0)){o=0;wa(8,A|0,j<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+j}k=f+12|0;j=c[k>>2]|0;m=f+16|0;if((j|0)==(c[m>>2]|0)){o=0;j=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}}else j=c[j>>2]|0;if(jp(j,t,b,u,v,n,B,x,y,s)|0){j=l;break}j=c[k>>2]|0;if((j|0)==(c[m>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=25;break}else{j=f;continue}}else{c[k>>2]=j+4;j=f;continue}}if((C|0)==25){b=Na()|0;break}D=a[B>>0]|0;if((((D&1)==0?(D&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){D=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=D}o=0;b=va(25,b|0,c[u>>2]|0,g|0,t|0)|0;D=o;o=0;if(!(D&1)){c[h>>2]=b;Ur(B,x,c[y>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;D=o;o=0;if(D&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;D=o;o=0;if(D&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;D=c[d>>2]|0;Im(A);Im(B);i=z;return D|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Ou(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0,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;z=i;i=i+320|0;s=z+208|0;j=z+200|0;B=z+24|0;A=z+12|0;u=z+8|0;x=z+40|0;y=z+4|0;v=z;t=hu(f)|0;np(B,f,s,j);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);r=o;o=0;a:do if(!(r&1)){p=A+8|0;q=A+1|0;b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b;c[y>>2]=x;c[v>>2]=0;r=A+4|0;n=c[j>>2]|0;j=c[d>>2]|0;b:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;m=o;o=0;if(m&1){C=25;break}}else f=c[f>>2]|0;if((f|0)==-1){c[d>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}k=c[e>>2]|0;do if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0)){o=0;f=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;m=o;o=0;if(m&1){C=25;break b}}else f=c[f>>2]|0;if((f|0)!=-1)if(l)break;else break b;else{c[e>>2]=0;C=17;break}}else C=17;while(0);if((C|0)==17){C=0;if(l){k=0;break}else k=0}f=a[A>>0]|0;f=(f&1)==0?(f&255)>>>1:c[r>>2]|0;if((c[u>>2]|0)==(b+f|0)){o=0;wa(8,A|0,f<<1|0,0);m=o;o=0;if(m&1){C=25;break}if(!(a[A>>0]&1))b=10;else b=(c[A>>2]&-2)+-1|0;o=0;wa(8,A|0,b|0,0);m=o;o=0;if(m&1){C=25;break}b=(a[A>>0]&1)==0?q:c[p>>2]|0;c[u>>2]=b+f}l=j+12|0;f=c[l>>2]|0;m=j+16|0;if((f|0)==(c[m>>2]|0)){o=0;f=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}}else f=c[f>>2]|0;if(jp(f,t,b,u,v,n,B,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0)){o=0;ka(c[(c[j>>2]|0)+40>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=25;break}else continue}else{c[l>>2]=f+4;continue}}if((C|0)==25){b=Na()|0;break}E=a[B>>0]|0;if((((E&1)==0?(E&255)>>>1:c[B+4>>2]|0)|0)!=0?(w=c[y>>2]|0,(w-x|0)<160):0){E=c[v>>2]|0;c[y>>2]=w+4;c[w>>2]=E}o=0;b=va(26,b|0,c[u>>2]|0,g|0,t|0)|0;f=D;E=o;o=0;if(!(E&1)){E=h;c[E>>2]=b;c[E+4>>2]=f;Ur(B,x,c[y>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0)){o=0;b=ka(c[(c[j>>2]|0)+36>>2]|0,j|0)|0;E=o;o=0;if(E&1){C=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0)){o=0;b=ka(c[(c[k>>2]|0)+36>>2]|0,k|0)|0;E=o;o=0;if(E&1){C=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{C=53;break}else{c[e>>2]=0;C=51;break}}else C=51;while(0);if((C|0)==51?f:0)C=53;if((C|0)==53)c[g>>2]=c[g>>2]|2;E=c[d>>2]|0;Im(A);Im(B);i=z;return E|0}else C=26}else C=26;while(0);if((C|0)==26)b=Na()|0;Im(A);Im(B);Ya(b|0);return 0}function Pu(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(1,b|0,c[x>>2]|0,h|0);H=o;o=0;if(!(H&1)){g[j>>2]=k;Ur(F,B,c[C>>2]|0,h);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[h>>2]=c[h>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Qu(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(2,b|0,c[x>>2]|0,g|0);H=o;o=0;if(!(H&1)){h[j>>3]=k;Ur(F,B,c[C>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[g>>2]=c[g>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Ru(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=i;i=i+352|0;v=D+208|0;l=D+40|0;m=D+36|0;F=D+24|0;E=D+12|0;x=D+8|0;B=D+48|0;C=D+4|0;y=D;z=D+337|0;w=D+336|0;op(F,f,v,l,m);c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);u=o;o=0;a:do if(!(u&1)){s=E+8|0;t=E+1|0;b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b;c[C>>2]=B;c[y>>2]=0;a[z>>0]=1;a[w>>0]=69;u=E+4|0;r=c[l>>2]|0;q=c[m>>2]|0;f=c[d>>2]|0;b:while(1){if(f){l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){o=0;l=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;p=o;o=0;if(p&1){G=25;break}}else l=c[l>>2]|0;if((l|0)==-1){c[d>>2]=0;f=0;n=1}else n=0}else{f=0;n=1}l=c[e>>2]|0;do if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){o=0;m=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;p=o;o=0;if(p&1){G=25;break b}}else m=c[m>>2]|0;if((m|0)!=-1)if(n)break;else break b;else{c[e>>2]=0;G=17;break}}else G=17;while(0);if((G|0)==17){G=0;if(n){l=0;break}else l=0}m=a[E>>0]|0;m=(m&1)==0?(m&255)>>>1:c[u>>2]|0;if((c[x>>2]|0)==(b+m|0)){o=0;wa(8,E|0,m<<1|0,0);p=o;o=0;if(p&1){G=25;break}if(!(a[E>>0]&1))b=10;else b=(c[E>>2]&-2)+-1|0;o=0;wa(8,E|0,b|0,0);p=o;o=0;if(p&1){G=25;break}b=(a[E>>0]&1)==0?t:c[s>>2]|0;c[x>>2]=b+m}n=f+12|0;m=c[n>>2]|0;p=f+16|0;if((m|0)==(c[p>>2]|0)){o=0;m=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}}else m=c[m>>2]|0;if(pp(m,z,w,b,x,r,q,F,B,C,y,v)|0)break;l=c[n>>2]|0;if((l|0)==(c[p>>2]|0)){o=0;ka(c[(c[f>>2]|0)+40>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=25;break}else continue}else{c[n>>2]=l+4;continue}}if((G|0)==25){b=Na()|0;break}H=a[F>>0]|0;if(!((a[z>>0]|0)==0?1:(((H&1)==0?(H&255)>>>1:c[F+4>>2]|0)|0)==0)?(A=c[C>>2]|0,(A-B|0)<160):0){H=c[y>>2]|0;c[C>>2]=A+4;c[A>>2]=H}o=0;k=+ta(3,b|0,c[x>>2]|0,g|0);H=o;o=0;if(!(H&1)){h[j>>3]=k;Ur(F,B,c[C>>2]|0,g);if(f){b=c[f+12>>2]|0;if((b|0)==(c[f+16>>2]|0)){o=0;b=ka(c[(c[f>>2]|0)+36>>2]|0,f|0)|0;H=o;o=0;if(H&1){G=26;break}}else b=c[b>>2]|0;if((b|0)==-1){c[d>>2]=0;f=1}else f=0}else f=1;do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0)){o=0;b=ka(c[(c[l>>2]|0)+36>>2]|0,l|0)|0;H=o;o=0;if(H&1){G=26;break a}}else b=c[b>>2]|0;if((b|0)!=-1)if(f)break;else{G=53;break}else{c[e>>2]=0;G=51;break}}else G=51;while(0);if((G|0)==51?f:0)G=53;if((G|0)==53)c[g>>2]=c[g>>2]|2;H=c[d>>2]|0;Im(E);Im(F);i=D;return H|0}else G=26}else G=26;while(0);if((G|0)==26)b=Na()|0;Im(E);Im(F);Ya(b|0);return 0}function Su(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+16|0;h=g;c[h>>2]=f;f=qk(d)|0;d=el(a,b,e,h)|0;if((f|0)!=0?(o=0,ka(75,f|0)|0,h=o,o=0,h&1):0){h=Na(0)|0;ec(h)}i=g;return d|0}function Tu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=qk(b)|0;o=0;b=ma(37,a|0,d|0,g|0)|0;a=o;o=0;if(a&1){b=Na()|0;if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}Ya(b|0)}else{if((e|0)!=0?(o=0,ka(75,e|0)|0,g=o,o=0,g&1):0){g=Na(0)|0;ec(g)}i=f;return b|0}return 0}function Uu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0;p=i;i=i+16|0;n=p;j=c[b>>2]|0;a:do if(!j)j=0;else{q=d;l=f-q>>2;m=g+12|0;k=c[m>>2]|0;l=(k|0)>(l|0)?k-l|0:0;k=e;q=k-q|0;g=q>>2;if((q|0)>0?(Gb[c[(c[j>>2]|0)+48>>2]&63](j,d,g)|0)!=(g|0):0){c[b>>2]=0;j=0;break}do if((l|0)>0){Vm(n,l,h);o=0;g=ma(c[(c[j>>2]|0)+48>>2]|0,j|0,((a[n>>0]&1)==0?n+4|0:c[n+8>>2]|0)|0,l|0)|0;q=o;o=0;if(q&1){q=Na()|0;Wm(n);Ya(q|0)}if((g|0)==(l|0)){Wm(n);break}else{c[b>>2]=0;Wm(n);j=0;break a}}while(0);q=f-k|0;f=q>>2;if((q|0)>0?(Gb[c[(c[j>>2]|0)+48>>2]&63](j,e,f)|0)!=(f|0):0){c[b>>2]=0;j=0;break}c[m>>2]=0}while(0);i=p;return j|0}function Vu(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=c[a>>2]|0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0))if((Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1){c[a>>2]=0;i=0;break}else{i=c[a>>2]|0;break}}else i=0;while(0);j=(i|0)==0;i=c[e>>2]|0;do if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0)?(Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1:0){c[e>>2]=0;r=11;break}if(j)r=13;else r=12}else r=11;while(0);if((r|0)==11)if(j)r=12;else{i=0;r=13}a:do if((r|0)==12){c[f>>2]=c[f>>2]|6;i=0}else if((r|0)==13){j=c[a>>2]|0;k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0))j=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=d[k>>0]|0;k=j&255;if(k<<24>>24>-1?(q=g+8|0,(b[(c[q>>2]|0)+(j<<24>>24<<1)>>1]&2048)!=0):0){m=(Gb[c[(c[g>>2]|0)+36>>2]&63](g,k,0)|0)<<24>>24;j=c[a>>2]|0;k=j+12|0;l=c[k>>2]|0;if((l|0)==(c[j+16>>2]|0)){Eb[c[(c[j>>2]|0)+40>>2]&127](j)|0;o=h;n=i;h=i;i=m}else{c[k>>2]=l+1;o=h;n=i;h=i;i=m}while(1){i=i+-48|0;p=o+-1|0;j=c[a>>2]|0;do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0))if((Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[a>>2]=0;j=0;break}else{j=c[a>>2]|0;break}}else j=0;while(0);l=(j|0)==0;if(h)if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;k=0;h=0}else{k=n;h=n}else k=n;else{k=n;h=0}j=c[a>>2]|0;if(!((o|0)>1&(l^(h|0)==0)))break;l=c[j+12>>2]|0;if((l|0)==(c[j+16>>2]|0))j=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=d[l>>0]|0;l=j&255;if(l<<24>>24<=-1)break a;if(!(b[(c[q>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=((Gb[c[(c[g>>2]|0)+36>>2]&63](g,l,0)|0)<<24>>24)+(i*10|0)|0;j=c[a>>2]|0;l=j+12|0;m=c[l>>2]|0;if((m|0)==(c[j+16>>2]|0)){Eb[c[(c[j>>2]|0)+40>>2]&127](j)|0;o=p;n=k;continue}else{c[l>>2]=m+1;o=p;n=k;continue}}do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0))if((Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[a>>2]=0;j=0;break}else{j=c[a>>2]|0;break}}else j=0;while(0);j=(j|0)==0;do if(k){if((c[k+12>>2]|0)==(c[k+16>>2]|0)?(Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1:0){c[e>>2]=0;r=50;break}if(j)break a}else r=50;while(0);if((r|0)==50?!j:0)break;c[f>>2]=c[f>>2]|2;break}c[f>>2]=c[f>>2]|4;i=0}while(0);return i|0}function Wu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=c[a>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))g=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=c[h>>2]|0;if((g|0)==-1){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);h=c[b>>2]|0;do if(h){g=c[h+12>>2]|0;if((g|0)==(c[h+16>>2]|0))g=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else g=c[g>>2]|0;if((g|0)!=-1)if(i){o=17;break}else{o=16;break}else{c[b>>2]=0;o=14;break}}else o=14;while(0);if((o|0)==14)if(i)o=16;else{h=0;o=17}a:do if((o|0)==16){c[d>>2]=c[d>>2]|6;g=0}else if((o|0)==17){g=c[a>>2]|0;i=c[g+12>>2]|0;if((i|0)==(c[g+16>>2]|0))g=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=c[i>>2]|0;if(!(Gb[c[(c[e>>2]|0)+12>>2]&63](e,2048,g)|0)){c[d>>2]=c[d>>2]|4;g=0;break}g=(Gb[c[(c[e>>2]|0)+52>>2]&63](e,g,0)|0)<<24>>24;i=c[a>>2]|0;j=i+12|0;k=c[j>>2]|0;if((k|0)==(c[i+16>>2]|0)){Eb[c[(c[i>>2]|0)+40>>2]&127](i)|0;m=f;l=h;j=h}else{c[j>>2]=k+4;m=f;l=h;j=h}while(1){g=g+-48|0;n=m+-1|0;h=c[a>>2]|0;do if(h){i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=c[i>>2]|0;if((h|0)==-1){c[a>>2]=0;k=1;break}else{k=(c[a>>2]|0)==0;break}}else k=1;while(0);do if(j){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0))h=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else h=c[h>>2]|0;if((h|0)==-1){c[b>>2]=0;j=0;f=0;h=1;break}else{j=l;f=l;h=(l|0)==0;break}}else{j=l;f=0;h=1}while(0);i=c[a>>2]|0;if(!((m|0)>1&(k^h)))break;h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=c[h>>2]|0;if(!(Gb[c[(c[e>>2]|0)+12>>2]&63](e,2048,h)|0))break a;g=((Gb[c[(c[e>>2]|0)+52>>2]&63](e,h,0)|0)<<24>>24)+(g*10|0)|0;h=c[a>>2]|0;i=h+12|0;k=c[i>>2]|0;if((k|0)==(c[h+16>>2]|0)){Eb[c[(c[h>>2]|0)+40>>2]&127](h)|0;m=n;l=j;j=f;continue}else{c[i>>2]=k+4;m=n;l=j;j=f;continue}}do if(i){h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=c[h>>2]|0;if((h|0)==-1){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);do if(j){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0))h=Eb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else h=c[h>>2]|0;if((h|0)!=-1)if(i)break a;else break;else{c[b>>2]=0;o=60;break}}else o=60;while(0);if((o|0)==60?!i:0)break;c[d>>2]=c[d>>2]|2}while(0);return g|0}function Xu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h|0;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+h;c[d>>2]=(c[a>>2]|0)+f;return}function Yu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h>>2;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+(h<<2);c[d>>2]=(c[a>>2]|0)+(f>>>2<<2);return}function Zu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=d;f=a[b>>0]|0;if(!(f&1)){g=10;k=(f&255)>>>1}else{f=c[b>>2]|0;g=(f&-2)+-1|0;k=c[b+4>>2]|0;f=f&255}j=e-h|0;do if((e|0)!=(d|0)){if((g-k|0)>>>0>>0){Tm(b,g,k+j-g|0,k,k,0,0);f=a[b>>0]|0}if(!(f&1))i=b+1|0;else i=c[b+8>>2]|0;h=e+(k-h)|0;if((d|0)!=(e|0)){f=d;g=i+k|0;while(1){a[g>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else g=g+1|0}}a[i+h>>0]=0;f=k+j|0;if(!(a[b>>0]&1)){a[b>>0]=f<<1;break}else{c[b+4>>2]=f;break}}while(0);return b|0}function _u(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;e=(c[g>>2]|0)!=189;i=c[a>>2]|0;h=i;f=(c[d>>2]|0)-h|0;f=f>>>0<2147483647?f<<1:-1;h=(c[b>>2]|0)-h>>2;i=Il(e?i:0,f)|0;if(!i)Sj();do if(!e){e=c[a>>2]|0;c[a>>2]=i;if(e){o=0;ha(c[g>>2]|0,e|0);i=o;o=0;if(i&1){i=Na(0)|0;ec(i)}else{j=c[a>>2]|0;break}}else j=i}else{c[a>>2]=i;j=i}while(0);c[g>>2]=201;c[b>>2]=j+(h<<2);c[d>>2]=(c[a>>2]|0)+(f>>>2<<2);return}function $u(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=d;f=a[b>>0]|0;if(!(f&1)){g=1;k=(f&255)>>>1}else{f=c[b>>2]|0;g=(f&-2)+-1|0;k=c[b+4>>2]|0;f=f&255}j=e-h>>2;do if(j){if((g-k|0)>>>0>>0){an(b,g,k+j-g|0,k,k,0,0);f=a[b>>0]|0}if(!(f&1))i=b+4|0;else i=c[b+8>>2]|0;h=k+((e-h|0)>>>2)|0;if((d|0)!=(e|0)){f=d;g=i+(k<<2)|0;while(1){c[g>>2]=c[f>>2];f=f+4|0;if((f|0)==(e|0))break;else g=g+4|0}}c[i+(h<<2)>>2]=0;f=k+j|0;if(!(a[b>>0]&1)){a[b>>0]=f<<1;break}else{c[b+4>>2]=f;break}}while(0);return b|0}function av(b,d){b=b|0;d=d|0;var e=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a[b+128>>0]=0;do if(d){o=0;ia(125,b|0,d|0);e=o;o=0;if(e&1){e=Na()|0;Dv(b);Ya(e|0)}else{Uv(b,d);break}}while(0);return}function bv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43148)|0);return}function cv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43188)|0);return}function dv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44220)|0);return}function ev(a,b){a=a|0;b=b|0;xs(a,b,Hs(44212)|0);return}function fv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44280)|0);return}function gv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44288)|0);return}function hv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44344)|0);return}function iv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44352)|0);return}function jv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44360)|0);return}function kv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44368)|0);return}function lv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43260)|0);return}function mv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43332)|0);return}function nv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43392)|0);return}function ov(a,b){a=a|0;b=b|0;xs(a,b,Hs(43452)|0);return}function pv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43764)|0);return}function qv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43828)|0);return}function rv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43892)|0);return}function sv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43956)|0);return}function tv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43992)|0);return}function uv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44028)|0);return}function vv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44064)|0);return}function wv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44100)|0);return}function xv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43544)|0);return}function yv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43636)|0);return}function zv(a,b){a=a|0;b=b|0;xs(a,b,Hs(43668)|0);return}function Av(a,b){a=a|0;b=b|0;xs(a,b,Hs(43700)|0);return}function Bv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44140)|0);return}function Cv(a,b){a=a|0;b=b|0;xs(a,b,Hs(44180)|0);return}function Dv(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;do if(e){f=b+4|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}if((b+16|0)==(e|0)){a[b+128>>0]=0;break}else{cj(e);break}}while(0);return}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+4|0;d=c[h>>2]|0;e=c[a>>2]|0;f=d-e>>2;if(f>>>0>=b>>>0){if(f>>>0>b>>>0?(g=e+(b<<2)|0,(d|0)!=(g|0)):0){do d=d+-4|0;while((d|0)!=(g|0));c[h>>2]=d}}else Tv(a,b-f|0);return}function Fv(a,b){a=a|0;b=b|0;var d=0;d=c[a+8>>2]|0;if((c[a+12>>2]|0)-d>>2>>>0>b>>>0)d=(c[d+(b<<2)>>2]|0)!=0;else d=0;return d|0}function Gv(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;d=c[d+4>>2]|0;a=(c[a>>2]|0)+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;Bb[b&255](a);return}function Hv(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;c[g>>2]=d;c[j>>2]=h;if(l&2)if((i-h|0)<3)d=1;else{c[j>>2]=h+1;a[h>>0]=-17;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-69;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-65;m=4}else m=4;a:do if((m|0)==4){n=f;d=c[g>>2]|0;if(d>>>0>>0)while(1){l=b[d>>1]|0;m=l&65535;if(m>>>0>k>>>0){d=2;break a}do if((l&65535)<128){d=c[j>>2]|0;if((i-d|0)<1){d=1;break a}c[j>>2]=d+1;a[d>>0]=l}else{if((l&65535)<2048){d=c[j>>2]|0;if((i-d|0)<2){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>6|192;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((l&65535)<55296){d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>6&63|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((l&65535)>=56320){if((l&65535)<57344){d=2;break a}d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>6&63|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m&63|128;break}if((n-d|0)<4){d=1;break a}d=d+2|0;l=e[d>>1]|0;if((l&64512|0)!=56320){d=2;break a}if((i-(c[j>>2]|0)|0)<4){d=1;break a}h=m&960;if(((h<<10)+65536|m<<10&64512|l&1023)>>>0>k>>>0){d=2;break a}c[g>>2]=d;d=(h>>>6)+1|0;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=d>>>2|240;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m>>>2&15|d<<4&48|128;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=m<<4&48|l>>>6&15|128;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=l&63|128}while(0);d=(c[g>>2]|0)+2|0;c[g>>2]=d;if(d>>>0>=f>>>0){d=0;break}}else d=0}while(0);return d|0}function Iv(e,f,g,h,i,j,k,l){e=e|0;f=f|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,q=0,r=0;c[g>>2]=e;c[j>>2]=h;if(l&4){e=c[g>>2]|0;l=f;if((((l-e|0)>2?(a[e>>0]|0)==-17:0)?(a[e+1>>0]|0)==-69:0)?(a[e+2>>0]|0)==-65:0){c[g>>2]=e+3;m=c[j>>2]|0}else m=h}else{m=h;l=f}q=i;h=c[g>>2]|0;e=h>>>0>>0;a:do if(e&m>>>0>>0)while(1){e=a[h>>0]|0;o=e&255;if(o>>>0>k>>>0){e=2;break a}do if(e<<24>>24>-1){b[m>>1]=e&255;c[g>>2]=h+1}else{if((e&255)<194){e=2;break a}if((e&255)<224){if((l-h|0)<2){e=1;break a}e=d[h+1>>0]|0;if((e&192|0)!=128){e=2;break a}e=e&63|o<<6&1984;if(e>>>0>k>>>0){e=2;break a}b[m>>1]=e;c[g>>2]=h+2;break}if((e&255)<240){if((l-h|0)<3){e=1;break a}n=a[h+1>>0]|0;e=a[h+2>>0]|0;switch(o|0){case 224:{if((n&-32)<<24>>24!=-96){e=2;break a}break}case 237:{if((n&-32)<<24>>24!=-128){e=2;break a}break}default:if((n&-64)<<24>>24!=-128){e=2;break a}}e=e&255;if((e&192|0)!=128){e=2;break a}e=(n&255)<<6&4032|o<<12|e&63;if((e&65535)>>>0>k>>>0){e=2;break a}b[m>>1]=e;c[g>>2]=h+3;break}if((e&255)>=245){e=2;break a}if((l-h|0)<4){e=1;break a}n=a[h+1>>0]|0;e=a[h+2>>0]|0;h=a[h+3>>0]|0;switch(o|0){case 240:{if((n+112&255)>=48){e=2;break a}break}case 244:{if((n&-16)<<24>>24!=-128){e=2;break a}break}default:if((n&-64)<<24>>24!=-128){e=2;break a}}p=e&255;if((p&192|0)!=128){e=2;break a}e=h&255;if((e&192|0)!=128){e=2;break a}if((q-m|0)<4){e=1;break a}o=o&7;h=n&255;n=p<<6;e=e&63;if((h<<12&258048|o<<18|n&4032|e)>>>0>k>>>0){e=2;break a}b[m>>1]=h<<2&60|p>>>4&3|((h>>>4&3|o<<2)<<6)+16320|55296;p=m+2|0;c[j>>2]=p;b[p>>1]=e|n&960|56320;c[g>>2]=(c[g>>2]|0)+4}while(0);m=(c[j>>2]|0)+2|0;c[j>>2]=m;h=c[g>>2]|0;e=h>>>0>>0;if(!(e&m>>>0>>0)){r=39;break}}else r=39;while(0);if((r|0)==39)e=e&1;return e|0}function Jv(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c;if((((g&4|0)!=0?(n-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){m=g;h=0;b:while(1){g=a[m>>0]|0;l=g&255;if(l>>>0>f>>>0){g=m;h=42;break a}do if(g<<24>>24>-1)g=m+1|0;else{if((g&255)<194){g=m;h=42;break a}if((g&255)<224){if((n-m|0)<2){g=m;h=42;break a}g=d[m+1>>0]|0;if((g&192|0)!=128){g=m;h=42;break a}if((g&63|l<<6&1984)>>>0>f>>>0){g=m;h=42;break a}g=m+2|0;break}if((g&255)<240){g=m;if((n-g|0)<3){g=m;h=42;break a}j=a[m+1>>0]|0;i=a[m+2>>0]|0;switch(l|0){case 224:{if((j&-32)<<24>>24!=-96){h=20;break b}break}case 237:{if((j&-32)<<24>>24!=-128){h=22;break b}break}default:if((j&-64)<<24>>24!=-128){h=24;break b}}g=i&255;if((g&192|0)!=128){g=m;h=42;break a}if(((j&255)<<6&4032|l<<12&61440|g&63)>>>0>f>>>0){g=m;h=42;break a}g=m+3|0;break}if((g&255)>=245){g=m;h=42;break a}g=m;if((e-h|0)>>>0<2|(n-g|0)<4){g=m;h=42;break a}k=a[m+1>>0]|0;i=a[m+2>>0]|0;j=a[m+3>>0]|0;switch(l|0){case 240:{if((k+112&255)>=48){h=32;break b}break}case 244:{if((k&-16)<<24>>24!=-128){h=34;break b}break}default:if((k&-64)<<24>>24!=-128){h=36;break b}}i=i&255;if((i&192|0)!=128){g=m;h=42;break a}g=j&255;if((g&192|0)!=128){g=m;h=42;break a}if(((k&255)<<12&258048|l<<18&1835008|i<<6&4032|g&63)>>>0>f>>>0){g=m;h=42;break a}g=m+4|0;h=h+1|0}while(0);h=h+1|0;if(!(h>>>0>>0&g>>>0>>0)){h=42;break a}else m=g}if((h|0)==20){g=g-b|0;break}else if((h|0)==22){g=g-b|0;break}else if((h|0)==24){g=g-b|0;break}else if((h|0)==32){g=g-b|0;break}else if((h|0)==34){g=g-b|0;break}else if((h|0)==36){g=g-b|0;break}}else h=42;while(0);if((h|0)==42)g=g-b|0;return g|0}function Kv(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;c[e>>2]=b;c[h>>2]=f;l=g;if(j&2)if((l-f|0)<3)b=1;else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;k=4}else k=4;a:do if((k|0)==4){b=c[e>>2]|0;if(b>>>0>>0)while(1){j=c[b>>2]|0;if(j>>>0>i>>>0|(j&-2048|0)==55296){b=2;break a}do if(j>>>0>=128){if(j>>>0<2048){b=c[h>>2]|0;if((l-b|0)<2){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}b=c[h>>2]|0;g=l-b|0;if(j>>>0<65536){if((g|0)<3){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}else{if((g|0)<4){b=1;break a}c[h>>2]=b+1;a[b>>0]=j>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=j&63|128;break}}else{b=c[h>>2]|0;if((l-b|0)<1){b=1;break a}c[h>>2]=b+1;a[b>>0]=j}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b;if(b>>>0>=d>>>0){b=0;break}}else b=0}while(0);return b|0}function Lv(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|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;c[f>>2]=b;c[i>>2]=g;if(k&4){b=c[f>>2]|0;k=e;if((((k-b|0)>2?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)?(a[b+2>>0]|0)==-65:0){c[f>>2]=b+3;g=c[i>>2]|0;p=k}else p=k}else p=e;k=c[f>>2]|0;b=k>>>0>>0;a:do if(b&g>>>0>>0)while(1){b=a[k>>0]|0;o=b&255;do if(b<<24>>24>-1){if(o>>>0>j>>>0){b=2;break a}c[g>>2]=o;c[f>>2]=k+1}else{if((b&255)<194){b=2;break a}if((b&255)<224){if((p-k|0)<2){b=1;break a}b=d[k+1>>0]|0;if((b&192|0)!=128){b=2;break a}b=b&63|o<<6&1984;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+2;break}if((b&255)<240){if((p-k|0)<3){b=1;break a}l=a[k+1>>0]|0;b=a[k+2>>0]|0;switch(o|0){case 224:{if((l&-32)<<24>>24!=-96){b=2;break a}break}case 237:{if((l&-32)<<24>>24!=-128){b=2;break a}break}default:if((l&-64)<<24>>24!=-128){b=2;break a}}b=b&255;if((b&192|0)!=128){b=2;break a}b=(l&255)<<6&4032|o<<12&61440|b&63;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+3;break}if((b&255)>=245){b=2;break a}if((p-k|0)<4){b=1;break a}n=a[k+1>>0]|0;b=a[k+2>>0]|0;l=a[k+3>>0]|0;switch(o|0){case 240:{if((n+112&255)>=48){b=2;break a}break}case 244:{if((n&-16)<<24>>24!=-128){b=2;break a}break}default:if((n&-64)<<24>>24!=-128){b=2;break a}}m=b&255;if((m&192|0)!=128){b=2;break a}b=l&255;if((b&192|0)!=128){b=2;break a}b=(n&255)<<12&258048|o<<18&1835008|m<<6&4032|b&63;if(b>>>0>j>>>0){b=2;break a}c[g>>2]=b;c[f>>2]=k+4}while(0);g=(c[i>>2]|0)+4|0;c[i>>2]=g;k=c[f>>2]|0;b=k>>>0>>0;if(!(b&g>>>0>>0)){q=38;break}}else q=38;while(0);if((q|0)==38)b=b&1;return b|0}function Mv(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c;if((((g&4|0)!=0?(n-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){l=g;m=0;b:while(1){g=a[l>>0]|0;k=g&255;do if(g<<24>>24>-1){if(k>>>0>f>>>0){g=l;h=42;break a}g=l+1|0}else{if((g&255)<194){g=l;h=42;break a}if((g&255)<224){if((n-l|0)<2){g=l;h=42;break a}g=d[l+1>>0]|0;if((g&192|0)!=128){g=l;h=42;break a}if((g&63|k<<6&1984)>>>0>f>>>0){g=l;h=42;break a}g=l+2|0;break}if((g&255)<240){g=l;if((n-g|0)<3){g=l;h=42;break a}i=a[l+1>>0]|0;h=a[l+2>>0]|0;switch(k|0){case 224:{if((i&-32)<<24>>24!=-96){h=20;break b}break}case 237:{if((i&-32)<<24>>24!=-128){h=22;break b}break}default:if((i&-64)<<24>>24!=-128){h=24;break b}}g=h&255;if((g&192|0)!=128){g=l;h=42;break a}if(((i&255)<<6&4032|k<<12&61440|g&63)>>>0>f>>>0){g=l;h=42;break a}g=l+3|0;break}if((g&255)>=245){g=l;h=42;break a}g=l;if((n-g|0)<4){g=l;h=42;break a}j=a[l+1>>0]|0;h=a[l+2>>0]|0;i=a[l+3>>0]|0;switch(k|0){case 240:{if((j+112&255)>=48){h=32;break b}break}case 244:{if((j&-16)<<24>>24!=-128){h=34;break b}break}default:if((j&-64)<<24>>24!=-128){h=36;break b}}h=h&255;if((h&192|0)!=128){g=l;h=42;break a}g=i&255;if((g&192|0)!=128){g=l;h=42;break a}if(((j&255)<<12&258048|k<<18&1835008|h<<6&4032|g&63)>>>0>f>>>0){g=l;h=42;break a}g=l+4|0}while(0);m=m+1|0;if(!(m>>>0>>0&g>>>0>>0)){h=42;break a}else l=g}if((h|0)==20){g=g-b|0;break}else if((h|0)==22){g=g-b|0;break}else if((h|0)==24){g=g-b|0;break}else if((h|0)==32){g=g-b|0;break}else if((h|0)==34){g=g-b|0;break}else if((h|0)==36){g=g-b|0;break}}else h=42;while(0);if((h|0)==42)g=g-b|0;return g|0}function Nv(a){a=a|0;Im(45196);Im(45184);Im(45172);Im(45160);Im(45148);Im(45136);Im(45124);Im(45112);Im(45100);Im(45088);Im(45076);Im(45064);Im(45052);Im(45040);return}function Ov(a){a=a|0;Wm(45368);Wm(45356);Wm(45344);Wm(45332);Wm(45320);Wm(45308);Wm(45296);Wm(45284);Wm(45272);Wm(45260);Wm(45248);Wm(45236);Wm(45224);Wm(45212);return}function Pv(a){a=a|0;Im(46e3);Im(45988);Im(45976);Im(45964);Im(45952);Im(45940);Im(45928);Im(45916);Im(45904);Im(45892);Im(45880);Im(45868);Im(45856);Im(45844);Im(45832);Im(45820);Im(45808);Im(45796);Im(45784);Im(45772);Im(45760);Im(45748);Im(45736);Im(45724);return}function Qv(a){a=a|0;Wm(46292);Wm(46280);Wm(46268);Wm(46256);Wm(46244);Wm(46232);Wm(46220);Wm(46208);Wm(46196);Wm(46184);Wm(46172);Wm(46160);Wm(46148);Wm(46136);Wm(46124);Wm(46112);Wm(46100);Wm(46088);Wm(46076);Wm(46064);Wm(46052);Wm(46040);Wm(46028);Wm(46016);return}function Rv(a){a=a|0;Im(47104);Im(47092);Im(47080);Im(47068);Im(47056);Im(47044);Im(47032);Im(47020);Im(47008);Im(46996);Im(46984);Im(46972);Im(46960);Im(46948);Im(46936);Im(46924);Im(46912);Im(46900);Im(46888);Im(46876);Im(46864);Im(46852);Im(46840);Im(46828);return}function Sv(a){a=a|0;Wm(47396);Wm(47384);Wm(47372);Wm(47360);Wm(47348);Wm(47336);Wm(47324);Wm(47312);Wm(47300);Wm(47288);Wm(47276);Wm(47264);Wm(47252);Wm(47240);Wm(47228);Wm(47216);Wm(47204);Wm(47192);Wm(47180);Wm(47168);Wm(47156);Wm(47144);Wm(47132);Wm(47120);return}function Tv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k;g=c[a+8>>2]|0;d=c[a+4>>2]|0;if(g-d>>2>>>0>>0){e=c[a>>2]|0;h=d-e>>2;f=h+b|0;if(f>>>0>1073741823)$i(a);d=g-e|0;if(d>>2>>>0<536870911){d=d>>1;d=d>>>0>>0?f:d}else d=1073741823;Vv(j,d,h,a+16|0);h=j+8|0;g=c[h>>2]|0;iw(g|0,0,b<<2|0)|0;c[h>>2]=g+(b<<2);Wv(a,j);Xv(j)}else Uv(a,b);i=k;return}function Uv(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Vv(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;c[b+12>>2]=0;c[b+16>>2]=f;do if(d){g=f+112|0;if(d>>>0<29&(a[g>>0]|0)==0){a[g>>0]=1;break}else{f=bj(d<<2)|0;break}}else f=0;while(0);c[b>>2]=f;e=f+(e<<2)|0;c[b+8>>2]=e;c[b+4>>2]=e;c[b+12>>2]=f+(d<<2);return}function Wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=c[a>>2]|0;g=a+4|0;d=b+4|0;f=(c[g>>2]|0)-e|0;h=(c[d>>2]|0)+(0-(f>>2)<<2)|0;c[d>>2]=h;lw(h|0,e|0,f|0)|0;f=c[a>>2]|0;c[a>>2]=c[d>>2];c[d>>2]=f;f=b+8|0;e=c[g>>2]|0;c[g>>2]=c[f>>2];c[f>>2]=e;f=a+8|0;a=b+12|0;e=c[f>>2]|0;c[f>>2]=c[a>>2];c[a>>2]=e;c[b>>2]=c[d>>2];return}function Xv(b){b=b|0;var d=0,e=0,f=0;e=c[b+4>>2]|0;f=b+8|0;d=c[f>>2]|0;if((d|0)!=(e|0)){do d=d+-4|0;while((d|0)!=(e|0));c[f>>2]=d}e=c[b>>2]|0;do if(e){d=c[b+16>>2]|0;if((d|0)==(e|0)){a[d+112>>0]=0;break}else{cj(e);break}}while(0);return}function Yv(b,d){b=b|0;d=d|0;var e=0;if(d>>>0>1073741823)$i(b);e=b+128|0;if(d>>>0<29&(a[e>>0]|0)==0){a[e>>0]=1;e=b+16|0}else e=bj(d<<2)|0;c[b+4>>2]=e;c[b>>2]=e;c[b+8>>2]=e+(d<<2);return}function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)!=(b|0)){f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}else{c[d>>2]=4;e=0.0}while(0);i=j;return +e}function _v(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)!=(b|0)){f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}else{c[d>>2]=4;e=0.0}while(0);i=j;return +e}function $v(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;do if((a|0)==(b|0)){c[d>>2]=4;e=0.0}else{f=ck()|0;g=c[f>>2]|0;c[f>>2]=0;e=+gl(a,h,Xo()|0);a=c[f>>2]|0;if(!a)c[f>>2]=g;if((c[h>>2]|0)!=(b|0)){c[d>>2]=4;e=0.0;break}if((a|0)==34)c[d>>2]=4}while(0);i=j;return +e}function aw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;f=0;b=0;break}g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;b=Xj(b,j,f,Xo()|0)|0;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(d|0)){c[e>>2]=4;f=0;b=0;break}if((f|0)==34){c[e>>2]=4;f=-1;b=-1}else f=D}else{c[e>>2]=4;f=0;b=0}while(0);D=f;i=k;return b|0}function bw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function cw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function dw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;do if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}h=ck()|0;j=c[h>>2]|0;c[h>>2]=0;b=Xj(b,k,f,Xo()|0)|0;f=D;g=c[h>>2]|0;if(!g)c[h>>2]=j;if((c[k>>2]|0)!=(d|0)){c[e>>2]=4;b=0;break}if(f>>>0>0|(f|0)==0&b>>>0>65535|(g|0)==34){c[e>>2]=4;b=-1;break}else{b=b&65535;break}}else{c[e>>2]=4;b=0}while(0);i=l;return b|0}function ew(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;do if((a|0)!=(b|0)){g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;a=Yj(a,j,e,Xo()|0)|0;e=D;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(b|0)){c[d>>2]=4;e=0;a=0;break}if((f|0)==34){c[d>>2]=4;j=(e|0)>0|(e|0)==0&a>>>0>0;D=j?2147483647:-2147483648;i=k;return (j?-1:0)|0}}else{c[d>>2]=4;e=0;a=0}while(0);D=e;i=k;return a|0}function fw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;a:do if((a|0)==(b|0)){c[d>>2]=4;a=0}else{g=ck()|0;h=c[g>>2]|0;c[g>>2]=0;a=Yj(a,j,e,Xo()|0)|0;e=D;f=c[g>>2]|0;if(!f)c[g>>2]=h;if((c[j>>2]|0)!=(b|0)){c[d>>2]=4;a=0;break}do if((f|0)==34){c[d>>2]=4;if((e|0)>0|(e|0)==0&a>>>0>0){a=2147483647;break a}}else{if((e|0)<-1|(e|0)==-1&a>>>0<2147483648){c[d>>2]=4;break}if((e|0)>0|(e|0)==0&a>>>0>2147483647){c[d>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}while(0);i=k;return a|0}function gw(){}function hw(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 (D=d,a-c>>>0|0)|0}function iw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function jw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (D=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function kw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<>>c-32|0}function lw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Wa(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function mw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<>>32-c;return a<0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else lw(b,c,d)|0;return b|0}function ow(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<>c-32|0}function pw(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function qw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=$(e,f)|0;d=a>>>16;a=(c>>>16)+($(e,d)|0)|0;e=b>>>16;b=$(e,f)|0;return (D=(a>>>16)+($(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function rw(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=hw(j^a,i^b,j,i)|0;g=D;a=f^j;b=e^i;return hw((ww(h,g,hw(f^c,e^d,f,e)|0,D,0)|0)^a,D^b,a,b)|0}function sw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=hw(h^a,g^b,h,g)|0;b=D;ww(a,b,hw(l^d,k^e,l,k)|0,D,j)|0;e=hw(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;d=D;i=f;return (D=d,e)|0}function tw(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=qw(e,f)|0;a=D;return (D=($(b,f)|0)+($(d,e)|0)+a|a&0,c|0|0)|0}function uw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ww(a,b,c,d,0)|0}function vw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;ww(a,b,d,e,f)|0;i=g;return (D=c[f+4>>2]|0,c[f>>2]|0)|0}function ww(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (D=n,f)|0}else{if(!g){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (D=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(ba(i|0)|0)-(ba(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<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (D=n,f)|0}g=h-1|0;if(g&h){i=(ba(h|0)|0)+33-(ba(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<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (D=o,p)|0}else{p=pw(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (D=o,p)|0}}else{if(g){if(f){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (D=o,p)|0}if(!l){if(f){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (D=o,p)|0}g=i-1|0;if(!(g&i)){if(f){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((pw(i|0)|0)>>>0);return (D=o,p)|0}g=(ba(i|0)|0)-(ba(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (D=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=jw(m|0,l|0,-1,-1)|0;d=D;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;hw(k,d,e,n)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=hw(e,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=D;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (D=o,p)|0}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|0;g=g|0;h=h|0;return yb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function yw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;zb[a&15](b|0,c|0,d|0,e|0,f|0)}function zw(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 Ab[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function Aw(a,b){a=a|0;b=b|0;Bb[a&255](b|0)}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;Cb[a&127](b|0,c|0)}function Cw(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 Db[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Dw(a,b){a=a|0;b=b|0;return Eb[a&127](b|0)|0}function Ew(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;return Fb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function Fw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gb[a&63](b|0,c|0,d|0)|0}function Gw(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;Hb[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,p|0)}function Hw(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;Ib[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function Iw(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;Jb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Jw(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;Kb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;return Lb[a&63](b|0,c|0)|0}function Lw(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 Mb[a&31](b|0,c|0,d|0,e|0,f|0)|0}function Mw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Nb[a&3](b|0,c|0,d|0)}function Nw(a){a=a|0;return Ob[a&15]()|0}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Pb[a&31](b|0,c|0,d|0,e|0)|0}function Pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Qb[a&15](b|0,c|0,d|0)}function Qw(a){a=a|0;Rb[a&7]()}function Rw(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 Sb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Sw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Tb[a&7](b|0,c|0,d|0,e|0,+f)|0}function Tw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ub[a&63](b|0,c|0,d|0,e|0)}function Uw(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;ca(0);return 0}function Vw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(1)}function Ww(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ca(2);return 0}function Xw(a){a=a|0;ca(3)}function Yw(a,b){a=a|0;b=b|0;ca(4)}function Zw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ca(5);return 0}function _w(a){a=a|0;ca(6);return 0}function $w(a){a=a|0;return cb(a|0)|0}function ax(a){a=a|0;return rb(a|0)|0}function bx(a){a=a|0;return hb(a|0)|0}function cx(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;ca(7);return 0}function dx(a,b,c){a=a|0;b=b|0;c=c|0;ca(8);return 0}function ex(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;ca(9)}function fx(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ca(10)}function gx(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;ca(11)}function hx(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;ca(12)}function ix(a,b){a=a|0;b=b|0;ca(13);return 0}function jx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(14);return 0}function kx(a,b,c){a=a|0;b=b|0;c=c|0;ca(15);return 0.0}function lx(){ca(16);return 0}function mx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(17);return 0}function nx(a,b,c){a=a|0;b=b|0;c=c|0;ca(18)}function ox(a,b,c){a=a|0;b=b|0;c=c|0;lb(a|0,b|0,c|0)}function px(){ca(19)}function qx(){pb()}function rx(){Xa()}function sx(){mb()}function tx(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;ca(20);return 0}function ux(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ca(21);return 0}function vx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(22)}\n function di(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8900]|0;c[b+4580>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+256;j=b+160|0;g=b+156|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function ei(a){a=a|0;var b=0,d=0;c[a>>2]=35660;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function fi(a){a=a|0;var b=0,d=0;c[a>>2]=35660;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function gi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34;while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64;while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function hi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;pi(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function ii(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);ji(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function ji(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;k=b+172|0;y=(c[k>>2]|0)+4|0;if((c[b+28>>2]|0)==1)l=c[b+20>>2]|0;else l=1;d=$(l<<1,y)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))x=6;if((x|0)==6?(o=0,e=ka(67,d|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[D>>2]|0)+1|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do if(!l)x=19;else{if(!(l>>>0>1073741823?(o=0,ha(178,z|0),w=o,o=0,w&1):0))x=17;if((x|0)==17?(f=l<<2,o=0,g=ka(67,f|0)|0,w=o,o=0,!(w&1)):0){c[z>>2]=g;x=g+(l<<2)|0;c[z+8>>2]=x;iw(g|0,0,f|0)|0;c[B>>2]=x;x=19;break}e=Na()|0;d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}while(0);if((x|0)==19){m=b+8|0;d=c[m>>2]|0;b:do if((d|0)>0){n=b+4596|0;p=$(l,y)|0;q=p+1|0;r=b+4600|0;s=b+160|0;t=b+168|0;u=b+164|0;v=b+156|0;w=b+88|0;j=b+4592|0;if((l|0)>0)h=0;else{h=0;while(1){g=c[C>>2]|0;e=g+1|0;c[n>>2]=e;f=g+q|0;c[r>>2]=f;if(!(h&1))e=q;else{c[n>>2]=f;c[r>>2]=e;e=1}l=c[s>>2]|0;if((l|0)<=(h|0)?(h|0)<((c[t>>2]|0)+l|0):0){l=c[w>>2]|0;o=0;Aa(c[(c[l>>2]|0)+8>>2]|0,l|0,g+(e+((c[v>>2]|0)-p))|0,c[u>>2]|0,y|0);l=o;o=0;if(l&1)break;d=c[m>>2]|0}h=h+1|0;if((h|0)>=(d|0)){x=50;break b}}e=Na()|0;break}c:while(1){e=c[C>>2]|0;d=e+1|0;c[n>>2]=d;e=e+q|0;c[r>>2]=e;if(h&1){c[n>>2]=e;c[r>>2]=d;d=e}g=c[z>>2]|0;e=d;f=0;do{c[j>>2]=c[g+(f<<2)>>2];x=c[k>>2]|0;a[e+x>>0]=a[e+(x+-1)>>0]|0;a[(c[r>>2]|0)+-1>>0]=a[c[n>>2]>>0]|0;o=0;ia(83,b|0,0);x=o;o=0;if(x&1){x=38;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[j>>2];e=(c[n>>2]|0)+y|0;c[n>>2]=e;d=c[r>>2]|0;c[r>>2]=d+y;f=f+1|0}while((f|0)<(l|0));x=c[s>>2]|0;if(((x|0)<=(h|0)?(h|0)<((c[t>>2]|0)+x|0):0)?(x=c[w>>2]|0,o=0,Aa(c[(c[x>>2]|0)+8>>2]|0,x|0,d+(y+((c[v>>2]|0)-p))|0,c[u>>2]|0,y|0),x=o,o=0,x&1):0){x=30;break}h=h+1|0;if((h|0)>=(c[m>>2]|0)){x=50;break b}}if((x|0)==30){e=Na()|0;break}else if((x|0)==38){e=Na()|0;break}}else x=50;while(0);do if((x|0)==50){o=0;ha(183,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);i=A;return}while(0);d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}function ki(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=b+4596|0;f=c[p>>2]|0;t=b+172|0;e=c[t>>2]|0;if((e|0)<=0)return;q=b+4600|0;r=b+4604|0;s=b+4592|0;k=f;i=d[f+-1>>0]|0;f=d[f>>0]|0;o=0;while(1){m=c[q>>2]|0;j=a[m+(o+-1)>>0]|0;n=j&255;h=o+1|0;g=d[k+h>>0]|0;l=c[r>>2]|0;k=f-i|0;i=i-n|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;m=m+o|0;if(!l){e=mi(b,j,m,e-o|0)|0;f=e+o|0;if((f|0)!=(c[t>>2]|0)){n=ni(b,n,d[(c[p>>2]|0)+f>>0]|0)|0;a[(c[q>>2]|0)+f>>0]=n;n=c[s>>2]|0;c[s>>2]=(n|0)<1?0:n+-1|0;e=e+1|0}h=e+o|0;g=c[p>>2]|0;f=d[g+(h+-1)>>0]|0;g=d[g+h>>0]|0}else{e=f-n>>31;if((e^i|0)<0)e=f;else e=n+((e^k|0)<0?0:k)|0;n=li(b,l,d[m>>0]|0,e,0)|0;a[(c[q>>2]|0)+o>>0]=n}e=c[t>>2]|0;if((e|0)<=(h|0))break;k=c[p>>2]|0;i=f;f=g;o=h}return}function li(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f<>1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f<>31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g<>2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&255;return d|0}d=f&~(h>>31);d=d&255;return d|0}function mi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4592|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1<>2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;iw(e|0,d|0,g|0)|0;return g|0}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=b-d|0;h=a+128|0;e=a+136|0;if((((g|0)>-1?g:0-g|0)|0)>(c[e>>2]|0)){b=$(oi(a,a+4568|0)|0,d-b>>31|1)|0;f=c[e>>2]|0;g=f<<1|1;b=($(b,g)|0)+d|0;if((b|0)>=(0-f|0)){e=c[h>>2]|0;if((e+f|0)<(b|0))b=b-($(c[a+132>>2]|0,g)|0)|0}else{b=($(c[a+132>>2]|0,g)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&255;return a|0}a=e&~(b>>31);a=a&255;return a|0}else{d=oi(a,a+4580|0)|0;g=c[e>>2]|0;f=g<<1|1;b=($(f,d)|0)+b|0;if((b|0)>=(0-g|0)){e=c[h>>2]|0;if((e+g|0)<(b|0))b=b-($(c[a+132>>2]|0,f)|0)|0}else{b=($(c[a+132>>2]|0,f)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&255;return a|0}a=e&~(b>>31);a=a&255;return a|0}return 0}function oi(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h<>2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function pi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1<>2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0;while(0);n=1<>2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0>>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function qi(a){a=a|0;cj(a);return}function ri(a){a=a|0;return 50767}function si(a,b,c){a=a|0;b=b|0;c=c|0;Gm(a,50754,12);return}function ti(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+16|0;t=s;c[t>>2]=0;u=t+4|0;c[u>>2]=0;c[t+8>>2]=0;q=t+8|0;o=0;g=ka(67,1)|0;p=o;o=0;a:do if((!(p&1)?(p=g+1|0,a[g>>0]=e,c[t>>2]=g,c[u>>2]=p,c[q>>2]=p,o=0,ia(84,t|0,d&65535|0),p=o,o=0,!(p&1)):0)?(o=0,ia(84,t|0,b&65535|0),p=o,o=0,!(p&1)):0){m=f&255;g=c[u>>2]|0;e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);p=o;o=0;if(p&1){r=52;break}b=c[t>>2]|0;e=c[q>>2]|0;d=b}l=d;g=e-l|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;e=c[u>>2]|0;k=e-l|0;if(!g){g=0;j=0}else r=12}else{k=c[u>>2]|0;g=2147483647;e=k;k=k-l|0;r=12}if((r|0)==12){o=0;j=ka(67,g|0)|0;p=o;o=0;if(p&1){r=52;break}}a[j+k>>0]=m;n=e-l|0;p=j+(k-n)|0;lw(p|0,d|0,n|0)|0;c[t>>2]=p;c[u>>2]=j+(k+1);c[q>>2]=j+g;if(b)cj(b)}else{a[g>>0]=m;c[u>>2]=(c[u>>2]|0)+1}b:do if((f|0)>0){p=0;while(1){p=p+1|0;n=p&255;g=c[u>>2]|0;d=c[q>>2]|0;if(g>>>0>=d>>>0){b=c[t>>2]|0;e=b;j=g-e+1|0;if((j|0)<0){o=0;ha(178,t|0);m=o;o=0;if(m&1)break;b=c[t>>2]|0;e=b;d=c[q>>2]|0}m=b;g=d-m|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;d=c[u>>2]|0;k=d-m|0;if(!g){l=0;j=0}else r=25}else{k=c[u>>2]|0;g=2147483647;d=k;k=k-m|0;r=25}if((r|0)==25){r=0;o=0;j=ka(67,g|0)|0;l=o;o=0;if(l&1)break;else l=g}a[j+k>>0]=n;g=j+(k+1)|0;m=d-m|0;n=j+(k-m)|0;lw(n|0,b|0,m|0)|0;c[t>>2]=n;c[u>>2]=g;c[q>>2]=j+l;if(e){cj(e);g=c[u>>2]|0}}else{a[g>>0]=n;g=(c[u>>2]|0)+1|0;c[u>>2]=g}e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);n=o;o=0;if(n&1)break;b=c[t>>2]|0;e=c[q>>2]|0;d=b}m=d;g=e-m|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;j=c[u>>2]|0;k=j-m|0;if(!g){l=0;e=0}else r=36}else{k=c[u>>2]|0;g=2147483647;j=k;k=k-m|0;r=36}if((r|0)==36){r=0;o=0;e=ka(67,g|0)|0;n=o;o=0;if(n&1)break;else l=g}a[e+k>>0]=17;g=e+(k+1)|0;m=j-m|0;n=e+(k-m)|0;lw(n|0,d|0,m|0)|0;c[t>>2]=n;c[u>>2]=g;c[q>>2]=e+l;if(b){cj(b);g=c[u>>2]|0}}else{a[g>>0]=17;g=(c[u>>2]|0)+1|0;c[u>>2]=g}e=c[q>>2]|0;if(g>>>0>=e>>>0){d=c[t>>2]|0;b=d;j=g-b+1|0;if((j|0)<0){o=0;ha(178,t|0);n=o;o=0;if(n&1)break;b=c[t>>2]|0;e=c[q>>2]|0;d=b}l=d;g=e-l|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;e=c[u>>2]|0;k=e-l|0;if(!g){g=0;j=0}else r=48}else{k=c[u>>2]|0;g=2147483647;e=k;k=k-l|0;r=48}if((r|0)==48){r=0;o=0;j=ka(67,g|0)|0;n=o;o=0;if(n&1)break}a[j+k>>0]=0;m=e-l|0;n=j+(k-m)|0;lw(n|0,d|0,m|0)|0;c[t>>2]=n;c[u>>2]=j+(k+1);c[q>>2]=j+g;if(b)cj(b)}else{a[g>>0]=0;c[u>>2]=(c[u>>2]|0)+1}if((p|0)>=(f|0))break b}h=Na()|0;break a}while(0);o=0;k=ka(67,20)|0;f=o;o=0;if(!(f&1)){c[k>>2]=36800;a[k+4>>0]=-9;b=k+8|0;c[b>>2]=0;j=k+12|0;c[j>>2]=0;e=k+16|0;c[e>>2]=0;g=c[u>>2]|0;f=c[t>>2]|0;d=g-f|0;do if((g|0)!=(f|0)){if(!((d|0)<0?(o=0,ha(178,b|0),f=o,o=0,f&1):0))r=62;if((r|0)==62?(o=0,h=ka(67,d|0)|0,f=o,o=0,!(f&1)):0){c[j>>2]=h;c[b>>2]=h;c[e>>2]=h+d;g=c[t>>2]|0;e=c[u>>2]|0;if((g|0)==(e|0))break;do{a[h>>0]=a[g>>0]|0;h=(c[j>>2]|0)+1|0;c[j>>2]=h;g=g+1|0}while((g|0)!=(e|0));g=c[t>>2]|0;break}h=Na()|0;g=c[b>>2]|0;if(g){if((c[j>>2]|0)!=(g|0))c[j>>2]=g;cj(g)}cj(k);break a}while(0);if(!g){i=s;return k|0}if((c[u>>2]|0)!=(g|0))c[u>>2]=g;cj(g);i=s;return k|0}else r=52}else r=52;while(0);if((r|0)==52)h=Na()|0;g=c[t>>2]|0;if(!g)Ya(h|0);if((c[u>>2]|0)!=(g|0))c[u>>2]=g;cj(g);Ya(h|0);return 0}function ui(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;r=u+28|0;w=u+16|0;t=u+4|0;s=u;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;p=bj(5)|0;c[w>>2]=p;q=w+8|0;c[q>>2]=p+5;a[p>>0]=74;a[p+1>>0]=70;a[p+2>>0]=73;a[p+3>>0]=70;a[p+4>>0]=0;c[x>>2]=p+5;o=0;ia(84,w|0,c[b>>2]&65535|0);p=o;o=0;a:do if(!(p&1)){m=c[b+4>>2]&255;d=c[x>>2]|0;f=c[q>>2]|0;if(d>>>0>=f>>>0){g=c[w>>2]|0;h=g;j=d-h+1|0;if((j|0)<0){o=0;ha(178,w|0);p=o;o=0;if(p&1){v=43;break}h=c[w>>2]|0;f=c[q>>2]|0;g=h}l=g;d=f-l|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;f=c[x>>2]|0;k=f-l|0;if(!d){d=0;j=0}else v=10}else{k=c[x>>2]|0;d=2147483647;f=k;k=k-l|0;v=10}if((v|0)==10){o=0;j=ka(67,d|0)|0;p=o;o=0;if(p&1){v=43;break}}a[j+k>>0]=m;n=f-l|0;p=j+(k-n)|0;lw(p|0,g|0,n|0)|0;c[w>>2]=p;c[x>>2]=j+(k+1);c[q>>2]=j+d;if(h)cj(h)}else{a[d>>0]=m;c[x>>2]=(c[x>>2]|0)+1}o=0;ia(84,w|0,c[b+8>>2]&65535|0);p=o;o=0;if(!(p&1)?(o=0,ia(84,w|0,c[b+12>>2]&65535|0),p=o,o=0,!(p&1)):0){p=b+16|0;n=c[p>>2]&255;d=c[x>>2]|0;g=c[q>>2]|0;if(d>>>0>=g>>>0){h=c[w>>2]|0;f=h;j=d-f+1|0;if((j|0)<0){o=0;ha(178,w|0);m=o;o=0;if(m&1){v=43;break}h=c[w>>2]|0;f=h;g=c[q>>2]|0}m=h;d=g-m|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;j=c[x>>2]|0;k=j-m|0;if(!d){l=0;g=0}else v=23}else{k=c[x>>2]|0;d=2147483647;j=k;k=k-m|0;v=23}if((v|0)==23){o=0;g=ka(67,d|0)|0;l=o;o=0;if(l&1){v=43;break}else l=d}a[g+k>>0]=n;d=g+(k+1)|0;m=j-m|0;n=g+(k-m)|0;lw(n|0,h|0,m|0)|0;c[w>>2]=n;c[x>>2]=d;c[q>>2]=g+l;if(f){cj(f);d=c[x>>2]|0}}else{a[d>>0]=n;d=(c[x>>2]|0)+1|0;c[x>>2]=d}n=b+20|0;m=c[n>>2]&255;f=c[q>>2]|0;if(d>>>0>=f>>>0){g=c[w>>2]|0;h=g;j=d-h+1|0;if((j|0)<0){o=0;ha(178,w|0);l=o;o=0;if(l&1){v=43;break}h=c[w>>2]|0;f=c[q>>2]|0;g=h}l=g;d=f-l|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?j:d;f=c[x>>2]|0;k=f-l|0;if(!d){d=0;j=0}else v=34}else{k=c[x>>2]|0;d=2147483647;f=k;k=k-l|0;v=34}if((v|0)==34){o=0;j=ka(67,d|0)|0;y=o;o=0;if(y&1){v=43;break}}a[j+k>>0]=m;m=f-l|0;y=j+(k-m)|0;lw(y|0,g|0,m|0)|0;c[w>>2]=y;c[x>>2]=j+(k+1);c[q>>2]=j+d;if(h)cj(h)}else{a[d>>0]=m;c[x>>2]=(c[x>>2]|0)+1}d=c[p>>2]|0;do if((d|0)>0){if(!(c[b+24>>2]|0)){c[s>>2]=c[x>>2];y=0+($(d*3|0,c[n>>2]|0)|0)|0;o=0;c[r>>2]=c[s>>2];va(15,w|0,r|0,0,y|0)|0;y=o;o=0;if(y&1){v=43;break a}else break}f=Ma(16)|0;o=0;wa(5,t|0,50792,57);y=o;o=0;if(!(y&1)){o=0;d=ua(1)|0;y=o;o=0;if(!(y&1)?(o=0,Aa(36,f|0,1,d|0,t|0),y=o,o=0,!(y&1)):0){o=0;wa(6,f|0,824,96);o=0;e=0}else e=1;d=Na()|0;Im(t);if(!e){e=d;break a}}else d=Na()|0;La(f|0);e=d;break a}while(0);o=0;k=ka(67,20)|0;y=o;o=0;if(!(y&1)){c[k>>2]=36800;a[k+4>>0]=-32;h=k+8|0;c[h>>2]=0;j=k+12|0;c[j>>2]=0;f=k+16|0;c[f>>2]=0;d=c[x>>2]|0;y=c[w>>2]|0;g=d-y|0;do if((d|0)!=(y|0)){if(!((g|0)<0?(o=0,ha(178,h|0),y=o,o=0,y&1):0))v=53;if((v|0)==53?(o=0,e=ka(67,g|0)|0,y=o,o=0,!(y&1)):0){c[j>>2]=e;c[h>>2]=e;c[f>>2]=e+g;d=c[w>>2]|0;f=c[x>>2]|0;if((d|0)==(f|0))break;do{a[e>>0]=a[d>>0]|0;e=(c[j>>2]|0)+1|0;c[j>>2]=e;d=d+1|0}while((d|0)!=(f|0));d=c[w>>2]|0;break}d=Na()|0;e=c[h>>2]|0;if(e){if((c[j>>2]|0)!=(e|0))c[j>>2]=e;cj(e)}cj(k);v=44;break a}while(0);if(!d){i=u;return k|0}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return k|0}else v=43}else v=43}else v=43;while(0);if((v|0)==43){d=Na()|0;v=44}if((v|0)==44)e=d;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0);return 0}function vi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;k=i;i=i+16|0;m=k;c[m>>2]=0;n=m+4|0;c[n>>2]=0;c[m+8>>2]=0;o=0;d=ka(67,1)|0;j=o;o=0;a:do if((((((!(j&1)?(j=d+1|0,a[d>>0]=1,c[m>>2]=d,c[n>>2]=j,c[m+8>>2]=j,o=0,ia(84,m|0,c[b>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+4>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+8>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+12>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,ia(84,m|0,c[b+16>>2]&65535|0),j=o,o=0,!(j&1)):0)?(o=0,l=ka(67,20)|0,j=o,o=0,!(j&1)):0){c[l>>2]=36800;a[l+4>>0]=-8;g=l+8|0;c[g>>2]=0;j=l+12|0;c[j>>2]=0;b=l+16|0;c[b>>2]=0;d=c[n>>2]|0;p=c[m>>2]|0;f=d-p|0;do if((d|0)!=(p|0)){if(!((f|0)<0?(o=0,ha(178,g|0),p=o,o=0,p&1):0))h=11;if((h|0)==11?(o=0,e=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[j>>2]=e;c[g>>2]=e;c[b>>2]=e+f;d=c[m>>2]|0;b=c[n>>2]|0;if((d|0)==(b|0))break;do{a[e>>0]=a[d>>0]|0;e=(c[j>>2]|0)+1|0;c[j>>2]=e;d=d+1|0}while((d|0)!=(b|0));d=c[m>>2]|0;break}e=Na()|0;d=c[g>>2]|0;if(d){if((c[j>>2]|0)!=(d|0))c[j>>2]=d;cj(d)}cj(l);break a}while(0);if(!d){i=k;return l|0}if((c[n>>2]|0)!=(d|0))c[n>>2]=d;cj(d);i=k;return l|0}else h=25;while(0);if((h|0)==25)e=Na()|0;d=c[m>>2]|0;if(!d)Ya(e|0);if((c[n>>2]|0)!=(d|0))c[n>>2]=d;cj(d);Ya(e|0);return 0}function wi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=bj(5)|0;a[h>>0]=109;a[h+1>>0]=114;a[h+2>>0]=102;a[h+3>>0]=120;a[h+4>>0]=b;o=0;g=ka(67,20)|0;f=o;o=0;if(f&1){g=Na()|0;cj(h);Ya(g|0)}c[g>>2]=36800;a[g+4>>0]=-24;b=g+8|0;c[b>>2]=0;d=g+12|0;c[d>>2]=0;e=g+16|0;c[e>>2]=0;o=0;f=ka(67,5)|0;i=o;o=0;if(!(i&1)){c[d>>2]=f;c[b>>2]=f;c[e>>2]=f+5;a[f>>0]=109;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=h+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=f+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;f=f+1|0;a[i>>0]=a[f>>0]|0;i=(c[d>>2]|0)+1|0;c[d>>2]=i;a[i>>0]=a[f+1>>0]|0;c[d>>2]=(c[d>>2]|0)+1;cj(h);return g|0}i=Na()|0;cj(g);cj(h);Ya(i|0);return 0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+16|0;w=v;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;t=w+8|0;o=0;g=ka(67,1)|0;s=o;o=0;a:do if(!(s&1)){k=g+1|0;s=k;a[g>>0]=d;c[w>>2]=g;c[x>>2]=s;c[t>>2]=s;if((d|0)>0){j=k;s=0;do{r=s+b&255;if(j>>>0>=k>>>0){g=c[w>>2]|0;l=g;j=j-l+1|0;if((j|0)<0){o=0;ha(178,w|0);q=o;o=0;if(q&1){u=28;break}l=c[w>>2]|0;k=c[t>>2]|0;q=l}else q=g;p=q;g=k-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;k=c[x>>2]|0;m=k-p|0;if(!g){n=0;j=0}else u=13}else{m=c[x>>2]|0;g=2147483647;k=m;m=m-p|0;u=13}if((u|0)==13){u=0;o=0;j=ka(67,g|0)|0;n=o;o=0;if(n&1){u=28;break}else n=g}a[j+m>>0]=r;g=j+(m+1)|0;p=k-p|0;r=j+(m-p)|0;lw(r|0,q|0,p|0)|0;c[w>>2]=r;c[x>>2]=g;c[t>>2]=j+n;if(l){cj(l);g=c[x>>2]|0}}else{a[j>>0]=r;g=(c[x>>2]|0)+1|0;c[x>>2]=g}k=c[t>>2]|0;if(g>>>0>=k>>>0){l=c[w>>2]|0;j=l;m=g-j+1|0;if((m|0)<0){o=0;ha(178,w|0);r=o;o=0;if(r&1){u=28;break}l=c[w>>2]|0;j=l;k=c[t>>2]|0}p=l;g=k-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?m:g;m=c[x>>2]|0;k=m-p|0;if(!g){g=0;n=0}else u=24}else{k=c[x>>2]|0;g=2147483647;m=k;k=k-p|0;u=24}if((u|0)==24){u=0;o=0;n=ka(67,g|0)|0;r=o;o=0;if(r&1){u=28;break}}a[n+k>>0]=0;q=m-p|0;r=n+(k-q)|0;lw(r|0,l|0,q|0)|0;c[w>>2]=r;c[x>>2]=n+(k+1);c[t>>2]=n+g;if(j)cj(j)}else{a[g>>0]=0;c[x>>2]=(c[x>>2]|0)+1}s=s+1|0;j=c[x>>2]|0;k=c[t>>2]|0}while((s|0)<(d|0));if((u|0)==28){h=Na()|0;break}g=e&255;if(j>>>0>>0){a[j>>0]=g;j=(c[x>>2]|0)+1|0;c[x>>2]=j}else u=37}else{j=k;g=e&255;u=37}if((u|0)==37){l=c[w>>2]|0;m=l;n=j-m+1|0;if((n|0)<0){o=0;ha(178,w|0);e=o;o=0;if(e&1){u=29;break}m=c[w>>2]|0;k=c[t>>2]|0;l=m}r=l;j=k-r|0;if(j>>>0<1073741823){j=j<<1;j=j>>>0>>0?n:j;n=c[x>>2]|0;p=n-r|0;if(!j){q=0;k=0}else u=43}else{p=c[x>>2]|0;j=2147483647;n=p;p=p-r|0;u=43}if((u|0)==43){o=0;k=ka(67,j|0)|0;e=o;o=0;if(e&1){u=29;break}else q=j}a[k+p>>0]=g;j=k+(p+1)|0;b=n-r|0;e=k+(p-b)|0;lw(e|0,l|0,b|0)|0;c[w>>2]=e;c[x>>2]=j;c[t>>2]=k+q;if(m){cj(m);j=c[x>>2]|0}}r=f&255;g=c[t>>2]|0;if(j>>>0>=g>>>0){k=c[w>>2]|0;l=k;j=j-l+1|0;if((j|0)<0){o=0;ha(178,w|0);f=o;o=0;if(f&1){u=29;break}l=c[w>>2]|0;g=c[t>>2]|0;k=l}q=k;g=g-q|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?j:g;m=c[x>>2]|0;n=m-q|0;if(!g){p=0;j=0}else u=54}else{n=c[x>>2]|0;g=2147483647;m=n;n=n-q|0;u=54}if((u|0)==54){o=0;j=ka(67,g|0)|0;f=o;o=0;if(f&1){u=29;break}else p=g}a[j+n>>0]=r;g=j+(n+1)|0;e=m-q|0;f=j+(n-e)|0;lw(f|0,k|0,e|0)|0;c[w>>2]=f;c[x>>2]=g;c[t>>2]=j+p;if(l){cj(l);g=c[x>>2]|0}}else{a[j>>0]=r;g=(c[x>>2]|0)+1|0;c[x>>2]=g}j=c[t>>2]|0;if(g>>>0>=j>>>0){k=c[w>>2]|0;l=k;m=g-l+1|0;if((m|0)<0){o=0;ha(178,w|0);f=o;o=0;if(f&1){u=29;break}l=c[w>>2]|0;j=c[t>>2]|0;k=l}p=k;g=j-p|0;if(g>>>0<1073741823){g=g<<1;g=g>>>0>>0?m:g;j=c[x>>2]|0;n=j-p|0;if(!g){g=0;m=0}else u=65}else{n=c[x>>2]|0;g=2147483647;j=n;n=n-p|0;u=65}if((u|0)==65){o=0;m=ka(67,g|0)|0;f=o;o=0;if(f&1){u=29;break}}a[m+n>>0]=0;e=j-p|0;f=m+(n-e)|0;lw(f|0,k|0,e|0)|0;c[w>>2]=f;c[x>>2]=m+(n+1);c[t>>2]=m+g;if(l)cj(l)}else{a[g>>0]=0;c[x>>2]=(c[x>>2]|0)+1}o=0;n=ka(67,20)|0;t=o;o=0;if(!(t&1)){c[n>>2]=36800;a[n+4>>0]=-38;l=n+8|0;c[l>>2]=0;m=n+12|0;c[m>>2]=0;j=n+16|0;c[j>>2]=0;g=c[x>>2]|0;t=c[w>>2]|0;k=g-t|0;do if((g|0)!=(t|0)){if(!((k|0)<0?(o=0,ha(178,l|0),t=o,o=0,t&1):0))u=72;if((u|0)==72?(o=0,h=ka(67,k|0)|0,t=o,o=0,!(t&1)):0){c[m>>2]=h;c[l>>2]=h;c[j>>2]=h+k;g=c[w>>2]|0;j=c[x>>2]|0;if((g|0)==(j|0))break;do{a[h>>0]=a[g>>0]|0;h=(c[m>>2]|0)+1|0;c[m>>2]=h;g=g+1|0}while((g|0)!=(j|0));g=c[w>>2]|0;break}h=Na()|0;g=c[l>>2]|0;if(g){if((c[m>>2]|0)!=(g|0))c[m>>2]=g;cj(g)}cj(n);break a}while(0);if(!g){i=v;return n|0}if((c[x>>2]|0)!=(g|0))c[x>>2]=g;cj(g);i=v;return n|0}else u=29}else u=29;while(0);if((u|0)==29)h=Na()|0;g=c[w>>2]|0;if(!g)Ya(h|0);if((c[x>>2]|0)!=(g|0))c[x>>2]=g;cj(g);Ya(h|0);return 0}function yi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=(d&65535)>>>8&255;o=b+4|0;e=c[o>>2]|0;p=b+8|0;f=c[p>>2]|0;if(e>>>0>=f>>>0){g=c[b>>2]|0;h=g;i=e-h+1|0;if((i|0)<0){$i(b);h=c[b>>2]|0;f=c[p>>2]|0;g=h}m=g;e=f-m|0;if(e>>>0<1073741823){e=e<<1;e=e>>>0>>0?i:e;i=c[o>>2]|0;f=i-m|0;if(!e){l=0;k=0;j=f;e=i}else q=8}else{f=c[o>>2]|0;e=2147483647;i=f;f=f-m|0;q=8}if((q|0)==8){l=e;k=bj(e)|0;j=f;e=i}a[k+j>>0]=n;f=k+(j+1)|0;m=e-m|0;n=k+(j-m)|0;lw(n|0,g|0,m|0)|0;c[b>>2]=n;c[o>>2]=f;c[p>>2]=k+l;if(h){cj(h);f=c[o>>2]|0}}else{a[e>>0]=n;f=(c[o>>2]|0)+1|0;c[o>>2]=f}m=d&255;e=c[p>>2]|0;if(f>>>0>>0){a[f>>0]=m;c[o>>2]=(c[o>>2]|0)+1;return}g=c[b>>2]|0;h=g;f=f-h+1|0;if((f|0)<0){$i(b);h=c[b>>2]|0;e=c[p>>2]|0;g=h}l=g;e=e-l|0;if(e>>>0<1073741823){e=e<<1;e=e>>>0>>0?f:e;i=c[o>>2]|0;f=i-l|0;if(!e){k=0;j=0;e=i}else q=18}else{f=c[o>>2]|0;e=2147483647;i=f;f=f-l|0;q=18}if((q|0)==18){k=e;j=bj(e)|0;e=i}a[j+f>>0]=m;d=e-l|0;q=j+(f-d)|0;lw(q|0,g|0,d|0)|0;c[b>>2]=q;c[o>>2]=j+(f+1);c[p>>2]=j+k;if(!h)return;cj(h);return}function zi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=c[b>>2]|0;q=c[d>>2]|0;p=q;k=g;n=e;l=f-n|0;if((l|0)<=0){r=q;return r|0}o=b+8|0;d=c[o>>2]|0;r=b+4|0;m=c[r>>2]|0;h=m;if((l|0)<=(d-h|0)){j=h-p|0;if((l|0)>(j|0)){i=e+j|0;if((i|0)==(f|0))d=m;else{h=i;d=m;do{a[d>>0]=a[h>>0]|0;d=(c[r>>2]|0)+1|0;c[r>>2]=d;h=h+1|0}while((h|0)!=(f|0))}if((j|0)>0)j=d;else{r=q;return r|0}}else{j=m;i=f}g=j-(g+(l-k+p))|0;d=q+g|0;if(d>>>0>>0){h=j;do{a[h>>0]=a[d>>0]|0;d=d+1|0;h=(c[r>>2]|0)+1|0;c[r>>2]=h}while((d|0)!=(m|0))}nw(j+(0-g)|0,q|0,g|0)|0;nw(q|0,e|0,i-n|0)|0;r=q;return r|0}h=h-k+l|0;if((h|0)<0){$i(b);d=c[o>>2]|0;g=c[b>>2]|0}i=g;d=d-i|0;if(d>>>0<1073741823){d=d<<1;d=d>>>0>>0?h:d;h=p-i|0;if(!d){i=0;l=0}else j=15}else{d=2147483647;h=p-i|0;j=15}if((j|0)==15){i=d;l=bj(d)|0}k=l+h|0;d=k;j=l+i|0;if((e|0)!=(f|0)){g=e;i=k;do{a[i>>0]=a[g>>0]|0;i=d+1|0;d=i;g=g+1|0}while((g|0)!=(f|0));g=c[b>>2]|0}e=p-g|0;f=l+(h-e)|0;lw(f|0,g|0,e|0)|0;p=(c[r>>2]|0)-p|0;e=d;lw(e|0,q|0,p|0)|0;d=c[b>>2]|0;c[b>>2]=f;c[r>>2]=e+p;c[o>>2]=j;if(!d){r=k;return r|0}cj(d);r=k;return r|0}function Ai(a){a=a|0;var b=0;c[a>>2]=36800;b=c[a+8>>2]|0;if(!b)return;a=a+12|0;if((c[a>>2]|0)!=(b|0))c[a>>2]=b;cj(b);return}function Bi(a){a=a|0;var b=0,d=0;c[a>>2]=36800;b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Ci(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;Di(d,-1);Di(d,a[b+4>>0]|0);g=b+12|0;f=b+8|0;b=(c[g>>2]|0)-(c[f>>2]|0)+2|0;Di(d,(b&65535)>>>8&255);Di(d,b&255);b=c[f>>2]|0;if((c[g>>2]|0)==(b|0))return;else e=0;do{Di(d,a[b+e>>0]|0);e=e+1|0;b=c[f>>2]|0}while(e>>>0<((c[g>>2]|0)-b|0)>>>0);return}function Di(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=c[b+4>>2]|0;if(g){e=g+24|0;f=c[e>>2]|0;if((f|0)==(c[g+28>>2]|0)){Lb[c[(c[g>>2]|0)+52>>2]&63](g,d&255)|0;return}else{c[e>>2]=f+1;a[f>>0]=d;return}}e=b+16|0;f=c[e>>2]|0;if(f>>>0<(c[b+12>>2]|0)>>>0){c[e>>2]=f+1;a[(c[b+8>>2]|0)+f>>0]=d;return}e=Ma(16)|0;o=0;f=ua(1)|0;d=o;o=0;if(d&1){d=Na()|0;La(e|0);Ya(d|0)}o=0;wa(7,e|0,4,f|0);d=o;o=0;if(d&1){d=Na()|0;La(e|0);Ya(d|0)}else lb(e|0,824,96)}function Ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)<4095?(b+128|0)/256|0:16;g=(d*3|0)+2+f|0;e=d+1|0;g=(g|0)<(e|0)|(g|0)>(b|0)?e:g;c[a+4>>2]=g;e=(f<<2|3)+(d*5|0)|0;e=(e|0)>(b|0)|(e|0)<(g|0)?g:e;c[a+8>>2]=e;d=(d*7|0)+4+(f*17|0)|0;c[a+12>>2]=(d|0)>(b|0)|(d|0)<(e|0)?e:d;c[a>>2]=b;c[a+16>>2]=64;return}function Fi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+128|0;k=m+100|0;f=m+16|0;e=m+112|0;l=m+4|0;n=m;g=f;h=b+20|0;j=g+84|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));c[f+16>>2]=c[b+4>>2];h=pc(e,f,b+56|0)|0;e=c[(c[h>>2]|0)+16>>2]|0;b=b+8|0;o=0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];e=ra(e|0,h|0,k|0)|0;b=o;o=0;do if(b&1)e=Na()|0;else{g=d+4|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];g=d+16|0;b=c[g>>2]|0;k=l+8|0;c[k>>2]=(c[k>>2]|0)-b;k=l+4|0;c[k>>2]=(c[k>>2]|0)+b;k=c[(c[h>>2]|0)+12>>2]|0;c[n>>2]=e;o=0;e=va(k|0,h|0,n|0,l|0,((a[d>>0]|0)==0?0:(c[d+8>>2]|0)+b|0)|0)|0;l=o;o=0;if(l&1){e=Na()|0;f=c[n>>2]|0;c[n>>2]=0;if(!f)break;Bb[c[(c[f>>2]|0)+4>>2]&255](f);break}f=c[n>>2]|0;c[n>>2]=0;if(f)Bb[c[(c[f>>2]|0)+4>>2]&255](f);if(!(c[d+4>>2]|0))c[g>>2]=(c[g>>2]|0)+e;if(!h){i=m;return}Bb[c[(c[h>>2]|0)+4>>2]&255](h);i=m;return}while(0);if(!h)Ya(e|0);Bb[c[(c[h>>2]|0)+4>>2]&255](h);Ya(e|0)}function Gi(b,d){b=b|0;d=d|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];a[b+12>>0]=0;d=b+16|0;b=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));return}function Hi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=i;i=i+32|0;u=v+4|0;q=v+16|0;w=v;Ii(b);r=b+16|0;g=c[b+24>>2]|0;a:do if((g+-2|0)>>>0<=14){s=b+40|0;e=c[s>>2]|0;if(e>>>0>2)e=5;else{t=b+32|0;h=c[t>>2]|0;switch(h|0){case 0:{e=1;break a}case 4:{if((e|0)==2){e=2;break a}break}case 3:break;default:if(e){e=2;break a}}p=b+100|0;e=b+108|0;f=c[e>>2]|0;if((f|0)<1){f=c[r>>2]|0;c[e>>2]=f;e=c[b+20>>2]|0;c[b+112>>2]=e}else e=c[b+112>>2]|0;l=tw(e|0,((e|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;k=(g+7|0)/8|0;k=tw(l|0,D|0,k|0,((k|0)<0)<<31>>31|0)|0;l=d+4|0;e=c[l>>2]|0;j=d+8|0;if((e|0)!=0?(m=c[j>>2]|0,n=tw(h|0,((h|0)<0)<<31>>31|0,k|0,D|0)|0,g=D,0<(g|0)|0==(g|0)&m>>>0>>0):0){e=Ma(16)|0;o=0;f=ua(1)|0;w=o;o=0;if(!(w&1)?(o=0,wa(7,e|0,3,f|0),w=o,o=0,!(w&1)):0)lb(e|0,824,96);w=Na()|0;La(e|0);Ya(w|0)}m=b+52|0;n=b+12|0;if((h|0)>0)h=0;else{i=v;return}while(1){Ji(b,(h|0)==0);f=nc(q,r,m)|0;g=c[(c[f>>2]|0)+8>>2]|0;o=0;c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];g=ra(g|0,f|0,u|0)|0;x=o;o=0;if(x&1){g=32;break}x=c[(c[f>>2]|0)+16>>2]|0;c[w>>2]=g;o=0;fa(x|0,f|0,w|0,p|0,b|0,(a[n>>0]|0)!=0|0);x=o;o=0;if(x&1){g=30;break}g=c[w>>2]|0;c[w>>2]=0;if(g)Bb[c[(c[g>>2]|0)+4>>2]&255](g);if(!e)e=0;else{e=e+k|0;c[l>>2]=e;c[j>>2]=(c[j>>2]|0)-k}g=(c[s>>2]|0)==0;h=(g&1)+h|0;if(f)Bb[c[(c[f>>2]|0)+4>>2]&255](f);if(!g){g=34;break}if((h|0)>=(c[t>>2]|0)){g=34;break}}if((g|0)==30){e=Na()|0;g=c[w>>2]|0;c[w>>2]=0;if(g)Bb[c[(c[g>>2]|0)+4>>2]&255](g)}else if((g|0)==32){e=Na()|0;if(!f){x=e;Ya(x|0)}}else if((g|0)==34){i=v;return}Bb[c[(c[f>>2]|0)+4>>2]&255](f);x=e;Ya(x|0)}}else e=2;while(0);f=Ma(16)|0;o=0;g=ua(1)|0;x=o;o=0;if(!(x&1)?(o=0,wa(7,f|0,e|0,g|0),x=o,o=0,!(x&1)):0)lb(f|0,824,96);x=Na()|0;La(f|0);Ya(x|0)}function Ii(a){a=a|0;var b=0,c=0,d=0,e=0;if((Mi(a)|0)<<24>>24!=-40){b=Ma(16)|0;o=0;c=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,wa(7,b|0,5,c|0),e=o,o=0,!(e&1)):0)lb(b|0,824,96);e=Na()|0;La(b|0);Ya(e|0)}b=Mi(a)|0;if(b<<24>>24==-38)return;while(1){d=((Li(a)|0)&255)<<8;d=d|(Li(a)|0)&255;b=Ni(a,b)|0;c=-2-b+d|0;if((c|0)<0)break;if((c|0)>0){b=d+-2-b|0;c=0;do{Li(a)|0;c=c+1|0}while((c|0)!=(b|0))}b=Mi(a)|0;if(b<<24>>24==-38){e=8;break}}if((e|0)==8)return;b=Ma(16)|0;o=0;c=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,wa(7,b|0,5,c|0),e=o,o=0,!(e&1)):0)lb(b|0,824,96);e=Na()|0;La(b|0);Ya(e|0)}function Ji(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(!b){if((Li(a)|0)<<24>>24!=-1){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,12,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}if((Li(a)|0)<<24>>24!=-38){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}}Li(a)|0;Li(a)|0;d=Li(a)|0;e=d&255;do if(d<<24>>24==1){Li(a)|0;d=0;f=20}else{if((e|0)==(c[a+32>>2]|0)){b=Li(a)|0;if(!(d<<24>>24))break;else{d=0;f=20;break}}b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,2,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}while(0);if((f|0)==20)while(1){Li(a)|0;d=d+1|0;b=Li(a)|0;if((d|0)==(e|0))break;else f=20}c[a+36>>2]=b&255;f=Li(a)|0;d=a+40|0;c[d>>2]=f&255;if((f&255)>=3){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}if((Li(a)|0)<<24>>24){b=Ma(16)|0;o=0;d=ua(1)|0;a=o;o=0;if(!(a&1)?(o=0,wa(7,b|0,5,d|0),a=o,o=0,!(a&1)):0)lb(b|0,824,96);a=Na()|0;La(b|0);Ya(a|0)}e=a+28|0;if(c[e>>2]|0)return;b=c[a+108>>2]|0;if(!b)b=c[a+16>>2]|0;if(!(c[d>>2]|0))d=1;else d=c[a+32>>2]|0;f=$(d,b)|0;c[e>>2]=$(f,((c[a+24>>2]|0)+7|0)/8|0)|0;return}function Ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((e|0)<=0)return;n=d+4|0;o=d+8|0;q=0;do{p=Li(b)|0;f=c[n>>2]|0;g=c[o>>2]|0;if(f>>>0>=g>>>0){h=c[d>>2]|0;i=h;j=f-i+1|0;if((j|0)<0){$i(d);i=c[d>>2]|0;g=c[o>>2]|0;h=i}m=h;f=g-m|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0>>0?j:f;j=c[n>>2]|0;g=j-m|0;if(!f){l=0;k=0;f=j}else r=10}else{g=c[n>>2]|0;f=2147483647;j=g;g=g-m|0;r=10}if((r|0)==10){r=0;l=f;k=bj(f)|0;f=j}a[k+g>>0]=p;m=f-m|0;p=k+(g-m)|0;lw(p|0,h|0,m|0)|0;c[d>>2]=p;c[n>>2]=k+(g+1);c[o>>2]=k+l;if(i)cj(i)}else{a[f>>0]=p;c[n>>2]=(c[n>>2]|0)+1}q=q+1|0}while((q|0)!=(e|0));return}function Li(b){b=b|0;var e=0,f=0,g=0,h=0;f=c[b>>2]|0;if(f){b=f+12|0;e=c[b>>2]|0;if((e|0)==(c[f+16>>2]|0))b=Eb[c[(c[f>>2]|0)+40>>2]&127](f)|0;else{c[b>>2]=e+1;b=d[e>>0]|0}h=b&255;return h|0}g=b+8|0;h=c[g>>2]|0;if(h){b=b+4|0;e=c[b>>2]|0;f=a[e>>0]|0;if(!e){h=f;return h|0}c[b>>2]=e+1;c[g>>2]=h+-1;h=f;return h|0}b=Ma(16)|0;o=0;e=ua(1)|0;h=o;o=0;if(h&1){h=Na()|0;La(b|0);Ya(h|0)}o=0;wa(7,b|0,4,e|0);h=o;o=0;if(h&1){h=Na()|0;La(b|0);Ya(h|0)}else lb(b|0,824,96);return 0}function Mi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+176|0;b=d+152|0;k=d+16|0;h=d;j=Li(a)|0;e=j&255;if(j<<24>>24==-1){do b=Li(a)|0;while(b<<24>>24==-1);i=d;return b|0}j=k+56|0;g=k+4|0;c[k>>2]=36160;c[j>>2]=36180;o=0;ia(62,k+56|0,g|0);f=o;o=0;if(f&1){k=Na()|0;fn(j);Ya(k|0)}c[k+128>>2]=0;c[k+132>>2]=-1;c[k>>2]=36200;c[k+56>>2]=36220;o=0;ha(180,g|0);f=o;o=0;do if(f&1)b=Na()|0;else{c[g>>2]=36236;f=k+36|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[k+52>>2]=16;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;o=0;ia(63,g|0,b|0);d=o;o=0;if(d&1){k=Na()|0;Im(b);Im(f);nn(g);b=k;break}Im(b);c[k+((c[(c[k>>2]|0)+-12>>2]|0)+76)>>2]=48;o=0;b=ma(28,k|0,50907,62)|0;d=o;o=0;if(!(d&1)?(d=b+((c[(c[b>>2]|0)+-12>>2]|0)+4)|0,c[d>>2]=c[d>>2]&-75|8,d=b+((c[(c[b>>2]|0)+-12>>2]|0)+4)|0,c[d>>2]=c[d>>2]|16384,c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=2,o=0,ra(38,b|0,e|0)|0,e=o,o=0,!(e&1)):0){d=Ma(16)|0;o=0;ia(64,h|0,g|0);e=o;o=0;if(!(e&1)){o=0;b=ua(1)|0;e=o;o=0;if(!(e&1)?(o=0,Aa(36,d|0,12,b|0,h|0),e=o,o=0,!(e&1)):0){o=0;wa(6,d|0,824,96);o=0;a=0}else a=1;b=Na()|0;Im(h);if(!a){h=b;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}}else b=Na()|0;La(d|0);h=b;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}h=Na()|0;c[k>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(f);nn(g);fn(j);Ya(h|0)}while(0);k=b;fn(j);Ya(k|0);return 0}function Ni(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;d=i;i=i+320|0;j=d+300|0;m=d+152|0;k=d+288|0;n=d+16|0;l=d;switch(b<<24>>24){case -9:{c[a+24>>2]=(Li(a)|0)&255;p=((Li(a)|0)&255)<<8|(Li(a)|0)&255;c[a+16>>2]=((Li(a)|0)&255)<<8|(Li(a)|0)&255;c[a+20>>2]=p;c[a+32>>2]=(Li(a)|0)&255;p=6;i=d;return p|0}case -8:{p=Oi(a)|0;i=d;return p|0}case -24:{p=Pi(a)|0;i=d;return p|0}case -53:case -54:case -55:case -57:case -58:case -59:case -61:case -62:case -63:case -64:{h=m+56|0;f=m+4|0;c[m>>2]=36160;c[h>>2]=36180;o=0;ia(62,m+56|0,f|0);n=o;o=0;if(n&1){p=Na()|0;fn(h);Ya(p|0)}c[m+128>>2]=0;c[m+132>>2]=-1;c[m>>2]=36200;c[m+56>>2]=36220;o=0;ha(180,f|0);n=o;o=0;do if(n&1)a=Na()|0;else{c[f>>2]=36236;g=m+36|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[m+52>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=0;ia(63,f|0,j|0);n=o;o=0;if(n&1){a=Na()|0;Im(j);Im(g);nn(f);break}Im(j);o=0;a=ma(28,m|0,50970,26)|0;n=o;o=0;do if((!(n&1)?(o=0,e=ra(38,a|0,b&255|0)|0,n=o,o=0,!(n&1)):0)?(o=0,ma(28,e|0,50997,18)|0,n=o,o=0,!(n&1)):0){e=Ma(16)|0;o=0;ia(64,k|0,f|0);n=o;o=0;if(!(n&1)){o=0;a=ua(1)|0;n=o;o=0;if(!(n&1)?(o=0,Aa(36,e|0,10,a|0,k|0),n=o,o=0,!(n&1)):0){o=0;wa(6,e|0,824,96);o=0;d=0}else d=1;a=Na()|0;Im(k);if(!d)break}else a=Na()|0;La(e|0)}else p=20;while(0);if((p|0)==20)a=Na()|0;c[m>>2]=36200;c[h>>2]=36220;c[f>>2]=36236;Im(g);nn(f);fn(h);p=a;Ya(p|0)}while(0);p=a;fn(h);Ya(p|0)}case -25:case -32:case -2:{p=0;i=d;return p|0}default:{k=n+56|0;g=n+4|0;c[n>>2]=36160;c[k>>2]=36180;o=0;ia(62,n+56|0,g|0);m=o;o=0;if(m&1){p=Na()|0;fn(k);Ya(p|0)}c[n+128>>2]=0;c[n+132>>2]=-1;c[n>>2]=36200;c[n+56>>2]=36220;o=0;ha(180,g|0);m=o;o=0;do if(m&1)a=Na()|0;else{c[g>>2]=36236;h=n+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[n+52>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=0;ia(63,g|0,j|0);m=o;o=0;if(m&1){a=Na()|0;Im(j);Im(h);nn(g);break}Im(j);o=0;a=ma(28,n|0,51016,20)|0;m=o;o=0;do if((!(m&1)?(o=0,f=ra(38,a|0,b&255|0)|0,m=o,o=0,!(m&1)):0)?(o=0,ma(28,f|0,51037,13)|0,m=o,o=0,!(m&1)):0){e=Ma(16)|0;o=0;ia(64,l|0,g|0);m=o;o=0;if(!(m&1)){o=0;a=ua(1)|0;m=o;o=0;if(!(m&1)?(o=0,Aa(36,e|0,11,a|0,l|0),m=o,o=0,!(m&1)):0){o=0;wa(6,e|0,824,96);o=0;d=0}else d=1;a=Na()|0;Im(l);if(!d)break}else a=Na()|0;La(e|0)}else p=40;while(0);if((p|0)==40)a=Na()|0;c[n>>2]=36200;c[k>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(k);p=a;Ya(p|0)}while(0);p=a;fn(k);Ya(p|0)}}return 0}function Oi(a){a=a|0;var b=0;if((Li(a)|0)<<24>>24!=1){a=1;return a|0}b=((Li(a)|0)&255)<<8;c[a+52>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+56>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+60>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+64>>2]=b|(Li(a)|0)&255;b=((Li(a)|0)&255)<<8;c[a+68>>2]=b|(Li(a)|0)&255;a=11;return a|0}function Pi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d;c[f>>2]=0;g=f+4|0;c[g>>2]=0;c[f+8>>2]=0;o=0;wa(9,a|0,f|0,4);b=o;o=0;a:do if(b&1)e=3;else{b=c[f>>2]|0;b:do if(!(ol(b,51051,4)|0)){o=0;b=ka(69,a|0)|0;h=o;o=0;if(h&1){e=3;break a}b=b&255;switch(b|0){case 3:case 2:case 1:case 0:{c[a+44>>2]=b;a=5;b=c[f>>2]|0;break b}case 5:case 4:{b=Ma(16)|0;o=0;a=ua(1)|0;h=o;o=0;if(!(h&1)?(o=0,wa(7,b|0,7,a|0),h=o,o=0,!(h&1)):0){o=0;wa(6,b|0,824,96);o=0;e=3;break a}a=Na()|0;La(b|0);break a}default:{b=Ma(16)|0;o=0;a=ua(1)|0;h=o;o=0;if(!(h&1)?(o=0,wa(7,b|0,5,a|0),h=o,o=0,!(h&1)):0){o=0;wa(6,b|0,824,96);o=0;e=3;break a}a=Na()|0;La(b|0);break a}}}else a=4;while(0);if(!b){i=d;return a|0}if((c[g>>2]|0)!=(b|0))c[g>>2]=b;cj(b);i=d;return a|0}while(0);if((e|0)==3)a=Na()|0;b=c[f>>2]|0;if(!b)Ya(a|0);if((c[g>>2]|0)!=(b|0))c[g>>2]=b;cj(b);Ya(a|0);return 0}function Qi(a){a=a|0;var b=0,d=0,e=0;e=c[(c[a>>2]|0)+-12>>2]|0;c[a+e>>2]=36200;b=a+(e+56)|0;c[b>>2]=36220;d=a+(e+4)|0;c[d>>2]=36236;Im(a+(e+36)|0);nn(d);fn(b);return}function Ri(a){a=a|0;return}function Si(a){a=a|0;cj(a);return}function Ti(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;return}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f;b=wi(b)|0;c[g>>2]=b;d=a+28|0;e=c[d>>2]|0;if(e>>>0<(c[a+32>>2]|0)>>>0){c[e>>2]=b;c[d>>2]=e+4;c[g>>2]=0;i=f;return}o=0;ia(57,a+24|0,g|0);a=o;o=0;if(a&1){b=Na()|0;d=c[g>>2]|0;c[g>>2]=0;if(!d)Ya(b|0);Bb[c[(c[d>>2]|0)+4>>2]&255](d);Ya(b|0)}else{b=c[g>>2]|0;c[g>>2]=0;if(!b){i=f;return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);i=f;return}}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Di(a,-1);Di(a,-40);e=a+28|0;f=a+24|0;b=c[f>>2]|0;if((c[e>>2]|0)==(b|0)){Di(a,-1);Di(a,-39);a=a+16|0;a=c[a>>2]|0;return a|0}else d=0;do{g=c[b+(d<<2)>>2]|0;Cb[c[(c[g>>2]|0)+8>>2]&127](g,a);d=d+1|0;b=c[f>>2]|0}while(d>>>0<(c[e>>2]|0)-b>>2>>>0);Di(a,-1);Di(a,-39);g=a+16|0;g=c[g>>2]|0;return g|0}function Wi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i;i=i+48|0;j=n+32|0;f=n+12|0;k=n+8|0;m=n+4|0;p=n;e=d+36|0;do if(((((c[e>>2]|0)==0?(c[d+40>>2]|0)==0:0)?(c[d+44>>2]|0)==0:0)?(c[d+48>>2]|0)==0:0)?(c[d+52>>2]|0)==0:0){e=c[d+8>>2]|0;if((e|0)<=12){g=a+28|0;h=a+32|0;break}Ei(f,(1<>2]|0);e=vi(f)|0;c[k>>2]=e;g=a+28|0;f=c[g>>2]|0;h=a+32|0;if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[k>>2]=0;break}o=0;ia(57,a+24|0,k|0);j=o;o=0;if(!(j&1)){e=c[k>>2]|0;c[k>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[k>>2]|0;c[k>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}else l=6;while(0);do if((l|0)==6){e=vi(e)|0;c[j>>2]=e;g=a+28|0;f=c[g>>2]|0;h=a+32|0;if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[j>>2]=0;break}o=0;ia(57,a+24|0,j|0);l=o;o=0;if(!(l&1)){e=c[j>>2]|0;c[j>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[j>>2]|0;c[j>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}while(0);e=a+20|0;f=(c[e>>2]|0)+1|0;c[e>>2]=f;e=c[d+24>>2]|0;j=(e|0)==0?1:c[d+16>>2]|0;e=xi(f,j,c[d+20>>2]|0,e)|0;c[m>>2]=e;f=c[g>>2]|0;do if(f>>>0<(c[h>>2]|0)>>>0){c[f>>2]=e;c[g>>2]=f+4;c[m>>2]=0}else{o=0;ia(57,a+24|0,m|0);l=o;o=0;if(!(l&1)){e=c[m>>2]|0;c[m>>2]=0;if(!e)break;Bb[c[(c[e>>2]|0)+4>>2]&255](e);break}d=Na()|0;e=c[m>>2]|0;c[m>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}while(0);k=bj(104)|0;c[k>>2]=36820;c[k+4>>2]=j;f=k+8|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];f=k+20|0;e=f+84|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));c[p>>2]=k;d=c[g>>2]|0;if(d>>>0<(c[h>>2]|0)>>>0){c[d>>2]=k;c[g>>2]=d+4;c[p>>2]=0;i=n;return}o=0;ia(57,a+24|0,p|0);a=o;o=0;if(a&1){d=Na()|0;e=c[p>>2]|0;c[p>>2]=0;if(!e){p=d;Ya(p|0)}Bb[c[(c[e>>2]|0)+4>>2]&255](e);p=d;Ya(p|0)}else{d=c[p>>2]|0;c[p>>2]=0;if(!d){i=n;return}Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=n;return}}function Xi(b,d,e,f,g,h,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,u=0;q=i;i=i+96|0;p=q;o=ic(b,d,p,0)|0;if(o){g=o;i=q;return g|0}a[p+32>>0]=0;s=c[p+8>>2]|0;u=c[p>>2]|0;t=c[p+4>>2]|0;o=$(t,u)|0;r=c[p+16>>2]|0;o=$($(o,(s|0)<9?1:2)|0,r)|0;c[f>>2]=o;o=Fl(o)|0;c[e>>2]=o;c[g>>2]=u;c[h>>2]=t;c[j>>2]=s;c[k>>2]=c[p+12>>2];c[l>>2]=r;c[m>>2]=c[p+20>>2];c[n>>2]=c[p+24>>2];g=jc(o,c[f>>2]|0,b,d,0,0)|0;i=q;return g|0}function Yi(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;n=i;i=i+96|0;l=n+4|0;h=n;m=l;o=m+84|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(o|0));c[l+16>>2]=g;c[l+8>>2]=f;c[l>>2]=d;c[l+4>>2]=e;c[j>>2]=Fl(b)|0;c[h>>2]=0;d=hc(j,b,h,a,b,l,0)|0;c[k>>2]=c[h>>2];i=n;return d|0}function Zi(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d>>2]=b;b=c[9320]|0;cl(b,a,d)|0;Wk(10,b)|0;Ga()}function _i(a){a=a|0;Ka(51337,51366,1164,51442)}function $i(a){a=a|0;Ka(51463,51486,303,51442)}function aj(){var a=0,b=0;a=i;i=i+16|0;if(!(db(37024,4)|0)){b=$a(c[9255]|0)|0;i=a;return b|0}else Zi(51562,a);return 0}function bj(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Fl(b)|0;a:do if(!a){while(1){a=kj()|0;if(!a)break;Rb[a&7]();a=Fl(b)|0;if(a)break a}b=Ma(4)|0;c[b>>2]=36844;lb(b|0,592,78)}while(0);return a|0}function cj(a){a=a|0;Gl(a);return}function dj(a){a=a|0;cj(a);return}function ej(a){a=a|0;c[a>>2]=36844;return}function fj(a){a=a|0;return}function gj(a){a=a|0;cj(a);return}function hj(a){a=a|0;return 51611}function ij(a){a=a|0;var b=0;b=i;i=i+16|0;o=0;xa(a|0);a=o;o=0;if(!(a&1)){o=0;ia(85,51626,b|0);o=0}a=Na(0)|0;Va(a|0)|0;o=0;ia(85,51666,b+8|0);o=0;a=Na(0)|0;o=0;xa(3);b=o;o=0;if(b&1){b=Na(0)|0;ec(b)}else ec(a)}function jj(){var a=0,b=0,d=0;o=0;a=ua(2)|0;d=o;o=0;if(d&1){d=Na(0)|0;ec(d)}if(((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(d=b+48|0,(c[d>>2]&-256|0)==1126902528?(c[d+4>>2]|0)==1129074247:0):0)ij(c[b+12>>2]|0);d=c[9208]|0;c[9208]=d+0;ij(d)}function kj(){var a=0;a=c[9214]|0;c[9214]=a+0;return a|0}function lj(a){a=a|0;return}function mj(a){a=a|0;c[a>>2]=36868;Vj(a+4|0);return}function nj(a){a=a|0;mj(a);cj(a);return}function oj(a){a=a|0;return c[a+4>>2]|0}function pj(a){a=a|0;return}function qj(a){a=a|0;c[a>>2]=36888;return}function rj(a){a=a|0;return}function sj(a){a=a|0;cj(a);return}function tj(a){a=a|0;return 51716}function uj(a){a=a|0;return}function vj(a){a=a|0;return}function wj(a){a=a|0;return}function xj(a){a=a|0;cj(a);return}function yj(a){a=a|0;cj(a);return}function zj(a){a=a|0;cj(a);return}function Aj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+64|0;g=h;if((a|0)!=(b|0))if((b|0)!=0?(f=Gj(b,656,672,0)|0,(f|0)!=0):0){b=g;e=b+56|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[g>>2]=f;c[g+8>>2]=a;c[g+12>>2]=-1;c[g+48>>2]=1;Ub[c[(c[f>>2]|0)+28>>2]&63](f,g,c[d>>2]|0,1);if((c[g+24>>2]|0)==1){c[d>>2]=c[g+16>>2];b=1}else b=0}else b=0;else b=1;i=h;return b|0}function Bj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Bj(0,b,d,e);return}function Dj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Bj(0,b,d,e);else{a=c[a+8>>2]|0;Ub[c[(c[a>>2]|0)+28>>2]&63](a,b,d,e)}return}function Ej(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ub[c[(c[a>>2]|0)+28>>2]&63](a,b,d+f|0,(g&2|0)!=0?e:2);return}function Fj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((b|0)!=(c[d+8>>2]|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Ej(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Ej(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Bj(0,d,e,f);while(0);return}function Gj(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;q=r;p=c[d>>2]|0;o=d+(c[p+-8>>2]|0)|0;p=c[p+-4>>2]|0;c[q>>2]=f;c[q+4>>2]=d;c[q+8>>2]=e;c[q+12>>2]=g;g=q+16|0;d=q+20|0;e=q+24|0;h=q+28|0;j=q+32|0;k=q+40|0;l=(p|0)==(f|0);m=g;n=m+36|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));b[g+36>>1]=0;a[g+38>>0]=0;a:do if(l){c[q+48>>2]=1;Ib[c[(c[f>>2]|0)+20>>2]&15](f,q,o,o,1,0);g=(c[e>>2]|0)==1?o:0}else{zb[c[(c[p>>2]|0)+24>>2]&15](p,q,o,1,0);switch(c[q+36>>2]|0){case 0:{g=(c[k>>2]|0)==1&(c[h>>2]|0)==1&(c[j>>2]|0)==1?c[d>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((c[e>>2]|0)!=1?!((c[k>>2]|0)==0&(c[h>>2]|0)==1&(c[j>>2]|0)==1):0){g=0;break}g=c[g>>2]|0}while(0);i=r;return g|0}function Hj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;f=d+16|0;b=c[f>>2]|0;if(!b){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((b|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}b=d+24|0;f=c[b>>2]|0;if((f|0)==2){c[b>>2]=g;f=g}if((f|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Ij(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){q=c[b+12>>2]|0;j=b+16+(q<<3)|0;Kj(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;i=c[b+8>>2]|0;if((i&2|0)==0?(k=d+36|0,(c[k>>2]|0)!=1):0){if(!(i&1)){i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[k>>2]|0)==1)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+24|0;b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[k>>2]|0)==1?(c[i>>2]|0)==1:0)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+54|0;while(1){if(a[i>>0]|0)break a;Kj(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(p=d+20|0,(c[p>>2]|0)!=(e|0)):0){c[d+32>>2]=f;m=d+44|0;if((c[m>>2]|0)==4)break;i=c[b+12>>2]|0;j=b+16+(i<<3)|0;k=d+52|0;f=d+53|0;n=d+54|0;l=b+8|0;o=d+24|0;b:do if((i|0)>0){i=0;h=0;b=b+16|0;while(1){a[k>>0]=0;a[f>>0]=0;Jj(b,d,e,e,1,g);if(a[n>>0]|0){q=20;break b}do if(a[f>>0]|0){if(!(a[k>>0]|0))if(!(c[l>>2]&1)){h=1;q=20;break b}else{h=1;break}if((c[o>>2]|0)==1)break b;if(!(c[l>>2]&2))break b;else{i=1;h=1}}while(0);b=b+8|0;if(b>>>0>=j>>>0){q=20;break}}}else{i=0;h=0;q=20}while(0);do if((q|0)==20){if((!i?(c[p>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h)break}else q=24;if((q|0)==24?h:0)break;c[m>>2]=4;break a}while(0);c[m>>2]=3;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Jj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ib[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e+h|0,(i&2|0)!=0?f:2,g);return}function Kj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;zb[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,(h&2|0)!=0?e:2,f);return}function Lj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){j=c[b+8>>2]|0;zb[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(i=d+20|0,(c[i>>2]|0)!=(e|0)):0){c[d+32>>2]=f;f=d+44|0;if((c[f>>2]|0)==4)break;h=d+52|0;a[h>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ib[c[(c[b>>2]|0)+20>>2]&15](b,d,e,e,1,g);if(a[k>>0]|0){if(!(a[h>>0]|0)){h=1;j=13}}else{h=0;j=13}do if((j|0)==13){c[i>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(h)break}else j=16;if((j|0)==16?h:0)break;c[f>>2]=4;break a}while(0);c[f>>2]=3;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Mj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(i=d+28|0,(c[i>>2]|0)!=1):0)c[i>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Nj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if((b|0)==(c[d+8>>2]|0))Hj(0,d,e,f,g);else{m=d+52|0;n=a[m>>0]|0;o=d+53|0;p=a[o>>0]|0;l=c[b+12>>2]|0;i=b+16+(l<<3)|0;a[m>>0]=0;a[o>>0]=0;Jj(b+16|0,d,e,f,g,h);a:do if((l|0)>1){j=d+24|0;k=b+8|0;l=d+54|0;b=b+24|0;do{if(a[l>>0]|0)break a;if(!(a[m>>0]|0)){if((a[o>>0]|0)!=0?(c[k>>2]&1|0)==0:0)break a}else{if((c[j>>2]|0)==1)break a;if(!(c[k>>2]&2))break a}a[m>>0]=0;a[o>>0]=0;Jj(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[m>>0]=n;a[o>>0]=p}return}function Oj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))Hj(0,b,d,e,f);else{a=c[a+8>>2]|0;Ib[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e,f,g)}return}function Pj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))Hj(0,b,d,e,f);return}function Qj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=c[d>>2];a=Gb[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];i=f;return a&1|0}function Rj(a){a=a|0;if(!a)a=0;else a=(Gj(a,656,704,0)|0)!=0;return a&1|0}function Sj(){var a=0;a=Ma(4)|0;ej(a);lb(a|0,592,78)}function Tj(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+48|0;h=f+32|0;d=f+24|0;j=f+16|0;g=f;f=f+36|0;a=aj()|0;if((a|0)!=0?(e=c[a>>2]|0,(e|0)!=0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=c[9257];Zi(51919,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Gb[c[(c[608>>2]|0)+16>>2]&63](608,e,f)|0){j=c[f>>2]|0;f=c[9257]|0;j=Eb[c[(c[j>>2]|0)+8>>2]&127](j)|0;c[g>>2]=f;c[g+4>>2]=a;c[g+8>>2]=j;Zi(51833,g)}else{c[j>>2]=c[9257];c[j+4>>2]=a;Zi(51878,j)}}Zi(51957,h)}function Uj(){var a=0;a=i;i=i+16|0;if(!(Fa(37020,184)|0)){i=a;return}else Zi(51730,a)}function Vj(a){a=a|0;var b=0,d=0;d=(c[a>>2]|0)+-4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if((b+-1|0)<0)cj((c[a>>2]|0)+-12|0);return}function Wj(a){a=a|0;var b=0;b=i;i=i+16|0;Gl(a);if(!(jb(c[9255]|0,0)|0)){i=b;return}else Zi(51780,b)}function Xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=hl(a,b,c)|0;return a|0}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=il(a,b,c)|0;return a|0}function Zj(){return 37296}function _j(){return 37300}function $j(){return 37304}function ak(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function bk(a){a=a|0;if((a+-48|0)>>>0<10)a=1;else a=((a|32)+-97|0)>>>0<6;return a&1|0}function ck(){var a=0;if(!(c[9258]|0))a=37308;else a=c[(bb()|0)+60>>2]|0;return a|0}function dk(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[51978+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=52066;e=5;break}}if((e|0)==2)if(!c)b=52066;else{b=52066;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function ek(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,j=0.0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0;L=i;i=i+512|0;H=L;switch(e|0){case 0:{K=24;J=-149;A=4;break}case 1:{K=53;J=-1074;A=4;break}case 2:{K=53;J=-1074;A=4;break}default:g=0.0}a:do if((A|0)==4){E=b+4|0;C=b+100|0;do{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0}while((ak(e)|0)!=0);b:do switch(e|0){case 43:case 45:{h=1-(((e|0)==45&1)<<1)|0;e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;I=h;break b}else{e=hk(b)|0;I=h;break b}}default:I=1}while(0);h=e;e=0;do{if((h|32|0)!=(a[53870+e>>0]|0))break;do if(e>>>0<7){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=hk(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{A=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{A=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[56747+e>>0]|0))break d;do if(e>>>0<2){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=hk(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==40)e=1;else{if(!(c[C>>2]|0)){g=s;break a}c[E>>2]=(c[E>>2]|0)+-1;g=s;break a}while(1){h=c[E>>2]|0;if(h>>>0<(c[C>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0}else h=hk(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[C>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!k){c[(ck()|0)>>2]=22;gk(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{do if((h|0)==48){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|32|0)!=120){if(!(c[C>>2]|0)){e=48;break}c[E>>2]=(c[E>>2]|0)+-1;e=48;break}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=0}else{e=hk(b)|0;k=0}e:while(1){switch(e|0){case 46:{A=74;break e}case 48:break;default:{y=0;l=0;x=0;h=0;n=k;o=0;w=0;m=1.0;k=0;g=0.0;break e}}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=hk(b)|0;k=1;continue}}if((A|0)==74){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48){k=0;h=0;do{e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;k=jw(k|0,h|0,-1,-1)|0;h=D}while((e|0)==48);y=0;l=0;x=k;n=1;o=1;w=0;m=1.0;k=0;g=0.0}else{y=0;l=0;x=0;h=0;n=k;o=1;w=0;m=1.0;k=0;g=0.0}}while(1){u=e+-48|0;p=e|32;if(u>>>0>=10){v=(e|0)==46;if(!(v|(p+-97|0)>>>0<6)){p=x;u=y;break}if(v)if(!o){v=l;h=y;u=y;o=1;p=w;j=m}else{p=x;u=y;e=46;break}else A=86}else A=86;if((A|0)==86){A=0;e=(e|0)>57?p+-87|0:u;do if(!((y|0)<0|(y|0)==0&l>>>0<8)){if((y|0)<0|(y|0)==0&l>>>0<14){r=m*.0625;p=w;j=r;g=g+r*+(e|0);break}if((w|0)!=0|(e|0)==0){p=w;j=m}else{p=1;j=m;g=g+m*.5}}else{p=w;j=m;k=e+(k<<4)|0}while(0);l=jw(l|0,y|0,1,0)|0;v=x;u=D;n=1}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;y=u;x=v;e=d[e>>0]|0;w=p;m=j;continue}else{y=u;x=v;e=hk(b)|0;w=p;m=j;continue}}if(!n){e=(c[C>>2]|0)==0;if(!e)c[E>>2]=(c[E>>2]|0)+-1;if(f){if(!e?(z=c[E>>2]|0,c[E>>2]=z+-1,(o|0)!=0):0)c[E>>2]=z+-2}else gk(b,0);g=+(I|0)*0.0;break a}n=(o|0)==0;o=n?l:p;n=n?u:h;if((u|0)<0|(u|0)==0&l>>>0<8){h=u;do{k=k<<4;l=jw(l|0,h|0,1,0)|0;h=D}while((h|0)<0|(h|0)==0&l>>>0<8)}if((e|32|0)==112){h=tl(b,f)|0;e=D;if((h|0)==0&(e|0)==-2147483648){if(!f){gk(b,0);g=0.0;break a}if(!(c[C>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}}}else if(!(c[C>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}H=mw(o|0,n|0,2)|0;H=jw(H|0,D|0,-32,-1)|0;e=jw(H|0,D|0,h|0,e|0)|0;h=D;if(!k){g=+(I|0)*0.0;break a}if((h|0)>0|(h|0)==0&e>>>0>(0-J|0)>>>0){c[(ck()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}H=J+-106|0;G=((H|0)<0)<<31>>31;if((h|0)<(G|0)|(h|0)==(G|0)&e>>>0>>0){c[(ck()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((k|0)>-1){do{G=!(g>=.5);H=G&1|k<<1;k=H^1;g=g+(G?g:g+-1.0);e=jw(e|0,h|0,-1,-1)|0;h=D}while((H|0)>-1);l=e;m=g}else{l=e;m=g}e=hw(32,0,J|0,((J|0)<0)<<31>>31|0)|0;e=jw(l|0,h|0,e|0,D|0)|0;J=D;if(0>(J|0)|0==(J|0)&K>>>0>e>>>0)if((e|0)<0){e=0;A=127}else A=125;else{e=K;A=125}if((A|0)==125)if((e|0)<53)A=127;else{h=e;j=+(I|0);g=0.0}if((A|0)==127){g=+(I|0);h=e;j=g;g=+sk(+xk(1.0,84-e|0),g)}K=(k&1|0)==0&(m!=0.0&(h|0)<32);g=j*(K?0.0:m)+(g+j*+(((K&1)+k|0)>>>0))-g;if(!(g!=0.0))c[(ck()|0)>>2]=34;g=+yk(g,l);break a}else e=h;while(0);F=J+K|0;G=0-F|0;k=0;f:while(1){switch(e|0){case 46:{A=138;break f}case 48:break;default:{h=0;p=0;o=0;break f}}e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=hk(b)|0;k=1;continue}}if((A|0)==138){e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48){h=0;e=0;while(1){h=jw(h|0,e|0,-1,-1)|0;k=D;e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;if((e|0)==48)e=k;else{p=k;k=1;o=1;break}}}else{h=0;p=0;o=1}}c[H>>2]=0;n=e+-48|0;l=(e|0)==46;g:do if(l|n>>>0<10){B=H+496|0;y=0;v=0;w=l;A=p;u=k;z=o;k=0;l=0;o=0;h:while(1){do if(w)if(!z){h=y;p=v;z=1}else{p=A;e=y;n=v;break h}else{w=jw(y|0,v|0,1,0)|0;v=D;x=(e|0)!=48;if((l|0)>=125){if(!x){p=A;y=w;break}c[B>>2]=c[B>>2]|1;p=A;y=w;break}p=H+(l<<2)|0;if(k)n=e+-48+((c[p>>2]|0)*10|0)|0;c[p>>2]=n;k=k+1|0;n=(k|0)==9;p=A;y=w;u=1;k=n?0:k;l=(n&1)+l|0;o=x?w:o}while(0);e=c[E>>2]|0;if(e>>>0<(c[C>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=hk(b)|0;n=e+-48|0;w=(e|0)==46;if(!(w|n>>>0<10)){n=z;A=161;break g}else A=p}u=(u|0)!=0;A=169}else{y=0;v=0;u=k;n=o;k=0;l=0;o=0;A=161}while(0);do if((A|0)==161){B=(n|0)==0;h=B?y:h;p=B?v:p;u=(u|0)!=0;if(!((e|32|0)==101&u))if((e|0)>-1){e=y;n=v;A=169;break}else{e=y;n=v;A=171;break}n=tl(b,f)|0;e=D;if((n|0)==0&(e|0)==-2147483648){if(!f){gk(b,0);g=0.0;break}if(!(c[C>>2]|0)){n=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;n=0;e=0}}h=jw(n|0,e|0,h|0,p|0)|0;u=y;p=D;n=v;A=173}while(0);if((A|0)==169)if(c[C>>2]|0){c[E>>2]=(c[E>>2]|0)+-1;if(u){u=e;A=173}else A=172}else A=171;if((A|0)==171)if(u){u=e;A=173}else A=172;do if((A|0)==172){c[(ck()|0)>>2]=22;gk(b,0);g=0.0}else if((A|0)==173){e=c[H>>2]|0;if(!e){g=+(I|0)*0.0;break}if(((n|0)<0|(n|0)==0&u>>>0<10)&((h|0)==(u|0)&(p|0)==(n|0))?K>>>0>30|(e>>>K|0)==0:0){g=+(I|0)*+(e>>>0);break}b=(J|0)/-2|0;E=((b|0)<0)<<31>>31;if((p|0)>(E|0)|(p|0)==(E|0)&h>>>0>b>>>0){c[(ck()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}b=J+-106|0;E=((b|0)<0)<<31>>31;if((p|0)<(E|0)|(p|0)==(E|0)&h>>>0>>0){c[(ck()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(k){if((k|0)<9){n=H+(l<<2)|0;e=c[n>>2]|0;do{e=e*10|0;k=k+1|0}while((k|0)!=9);c[n>>2]=e}l=l+1|0}if((o|0)<9?(o|0)<=(h|0)&(h|0)<18:0){if((h|0)==9){g=+(I|0)*+((c[H>>2]|0)>>>0);break}if((h|0)<9){g=+(I|0)*+((c[H>>2]|0)>>>0)/+(c[37312+(8-h<<2)>>2]|0);break}b=K+27+($(h,-3)|0)|0;e=c[H>>2]|0;if((b|0)>30|(e>>>b|0)==0){g=+(I|0)*+(e>>>0)*+(c[37312+(h+-10<<2)>>2]|0);break}}e=(h|0)%9|0;if(!e){k=0;e=0}else{u=(h|0)>-1?e:e+9|0;n=c[37312+(8-u<<2)>>2]|0;if(l){o=1e9/(n|0)|0;k=0;e=0;p=0;do{C=H+(p<<2)|0;E=c[C>>2]|0;b=((E>>>0)/(n>>>0)|0)+e|0;c[C>>2]=b;e=$((E>>>0)%(n>>>0)|0,o)|0;b=(p|0)==(k|0)&(b|0)==0;p=p+1|0;h=b?h+-9|0:h;k=b?p&127:k}while((p|0)!=(l|0));if(e){c[H+(l<<2)>>2]=e;l=l+1|0}}else{k=0;l=0}e=0;h=9-u+h|0}i:while(1){v=(h|0)<18;w=(h|0)==18;x=H+(k<<2)|0;do{if(!v){if(!w)break i;if((c[x>>2]|0)>>>0>=9007199){h=18;break i}}n=0;o=l+127|0;while(1){u=o&127;p=H+(u<<2)|0;o=mw(c[p>>2]|0,0,29)|0;o=jw(o|0,D|0,n|0,0)|0;n=D;if(n>>>0>0|(n|0)==0&o>>>0>1e9){b=uw(o|0,n|0,1e9,0)|0;o=vw(o|0,n|0,1e9,0)|0;n=b}else n=0;c[p>>2]=o;b=(u|0)==(k|0);l=(u|0)!=(l+127&127|0)|b?l:(o|0)==0?u:l;if(b)break;else o=u+-1|0}e=e+-29|0}while((n|0)==0);k=k+127&127;if((k|0)==(l|0)){b=l+127&127;l=H+((l+126&127)<<2)|0;c[l>>2]=c[l>>2]|c[H+(b<<2)>>2];l=b}c[H+(k<<2)>>2]=n;h=h+9|0}j:while(1){y=l+1&127;x=H+((l+127&127)<<2)|0;while(1){v=(h|0)==18;w=(h|0)>27?9:1;u=v^1;while(1){o=k&127;p=(o|0)==(l|0);do if(!p){n=c[H+(o<<2)>>2]|0;if(n>>>0<9007199){A=219;break}if(n>>>0>9007199)break;n=k+1&127;if((n|0)==(l|0)){A=219;break}n=c[H+(n<<2)>>2]|0;if(n>>>0<254740991){A=219;break}if(!(n>>>0>254740991|u)){h=o;break j}}else A=219;while(0);if((A|0)==219?(A=0,v):0){A=220;break j}e=e+w|0;if((k|0)==(l|0))k=l;else break}u=(1<>>w;o=k;n=0;p=k;while(1){E=H+(p<<2)|0;b=c[E>>2]|0;k=(b>>>w)+n|0;c[E>>2]=k;n=$(b&u,v)|0;k=(p|0)==(o|0)&(k|0)==0;p=p+1&127;h=k?h+-9|0:h;k=k?p:o;if((p|0)==(l|0))break;else o=k}if(!n)continue;if((y|0)!=(k|0))break;c[x>>2]=c[x>>2]|1}c[H+(l<<2)>>2]=n;l=y}if((A|0)==220)if(p){c[H+(y+-1<<2)>>2]=0;h=l;l=y}else h=o;g=+((c[H+(h<<2)>>2]|0)>>>0);h=k+1&127;if((h|0)==(l|0)){l=k+2&127;c[H+(l+-1<<2)>>2]=0}r=+(I|0);j=r*(g*1.0e9+ +((c[H+(h<<2)>>2]|0)>>>0));v=e+53|0;p=v-J|0;u=(p|0)<(K|0);h=u&1;o=u?((p|0)<0?0:p):K;if((o|0)<53){M=+sk(+xk(1.0,105-o|0),j);m=+uk(j,+xk(1.0,53-o|0));q=M;g=m;m=M+(j-m)}else{q=0.0;g=0.0;m=j}n=k+2&127;do if((n|0)==(l|0))j=g;else{n=c[H+(n<<2)>>2]|0;do if(n>>>0>=5e8){if(n>>>0>5e8){g=r*.75+g;break}if((k+3&127|0)==(l|0)){g=r*.5+g;break}else{g=r*.75+g;break}}else{if((n|0)==0?(k+3&127|0)==(l|0):0)break;g=r*.25+g}while(0);if((53-o|0)<=1){j=g;break}if(+uk(g,1.0)!=0.0){j=g;break}j=g+1.0}while(0);g=m+j-q;do if((v&2147483647|0)>(-2-F|0)){if(+O(+g)>=9007199254740992.0){h=u&(o|0)==(p|0)?0:h;e=e+1|0;g=g*.5}if((e+50|0)<=(G|0)?!(j!=0.0&(h|0)!=0):0)break;c[(ck()|0)>>2]=34}while(0);g=+yk(g,e)}while(0);break a}default:{if(c[C>>2]|0)c[E>>2]=(c[E>>2]|0)+-1;c[(ck()|0)>>2]=22;gk(b,0);g=0.0;break a}}}}while(0);if((A|0)==23){h=(c[C>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[E>>2]=(c[E>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(I|0)*t}while(0);i=L;return +g}function fk(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(ck()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0}while((ak(i)|0)!=0);b:do switch(i|0){case 43:case 45:{j=((i|0)==45)<<31>>31;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0;p=j;break b}else{i=hk(b)|0;p=j;break b}}default:p=0}while(0);j=(e|0)==0;do if((e&-17|0)==0&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=hk(b)|0;if((d[53879+(i+1)>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){gk(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[53879+(i+1)>>0]|0)>>>0>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;gk(b,0);c[(ck()|0)>>2]=22;h=0;g=0;break a}}while(0);if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;while(1){j=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=hk(b)|0;e=i+-48|0;if(!(e>>>0<10&j>>>0<429496729)){e=j;break}else i=j}j=0}else{e=0;j=0}f=i+-48|0;if(f>>>0<10){while(1){k=tw(e|0,j|0,10,0)|0;l=D;m=((f|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&k>>>0>~f>>>0){k=e;break}e=jw(k|0,l|0,f|0,m|0)|0;j=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;f=i+-48|0;if(!(f>>>0<10&(j>>>0<429496729|(j|0)==429496729&e>>>0<2576980378))){k=e;break}}if(f>>>0>9){i=k;e=p}else{e=10;n=72}}else{i=e;e=p}}else n=46;c:do if((n|0)==46){if(!(e+-1&e)){n=a[54136+((e*23|0)>>>5&7)>>0]|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(f>>>0>>0){i=0;while(1){k=f|i<>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(!(k>>>0<134217728&f>>>0>>0))break;else i=k}f=0}else{f=0;k=0}l=kw(-1,-1,n|0)|0;m=D;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break}else i=f;while(1){k=mw(k|0,i|0,n|0)|0;f=D;k=j&255|k;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break c}else i=f}}j=a[53879+(i+1)>>0]|0;f=j&255;if(f>>>0>>0){i=0;while(1){k=f+($(i,e)|0)|0;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;f=j&255;if(!(k>>>0<119304647&f>>>0>>0))break;else i=k}f=0}else{k=0;f=0}if((j&255)>>>0>>0){n=uw(-1,-1,e|0,0)|0;o=D;m=f;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&k>>>0>n>>>0){j=m;n=72;break c}f=tw(k|0,m|0,e|0,0)|0;l=D;j=j&255;if(l>>>0>4294967295|(l|0)==-1&f>>>0>~j>>>0){j=m;n=72;break c}k=jw(j|0,0,f|0,l|0)|0;f=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0;j=a[53879+(i+1)>>0]|0;if((j&255)>>>0>=e>>>0){j=f;n=72;break}else m=f}}else{j=f;n=72}}while(0);if((n|0)==72)if((d[53879+(i+1)>>0]|0)>>>0>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=hk(b)|0}while((d[53879+(i+1)>>0]|0)>>>0>>0);c[(ck()|0)>>2]=34;j=h;i=g;e=(g&1|0)==0&0==0?p:0}else{i=k;e=p}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(j>>>0>>0|(j|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(e|0)!=0)){c[(ck()|0)>>2]=34;g=jw(g|0,h|0,-1,-1)|0;h=D;break}if(j>>>0>h>>>0|(j|0)==(h|0)&i>>>0>g>>>0){c[(ck()|0)>>2]=34;break}}g=((e|0)<0)<<31>>31;g=hw(i^e|0,j^g|0,e|0,g|0)|0;h=D}while(0);D=h;return g|0}function gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+4>>2]|0;e=c[a+8>>2]|0;f=e-d|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=d+b;else c[a+100>>2]=e;return}function hk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=Uk(b)|0;if((e|0)>=0){h=c[f>>2]|0;f=b+8|0;if(h){g=c[f>>2]|0;i=c[b+4>>2]|0;f=g;h=h-(c[b+108>>2]|0)+-1|0;if((f-i|0)>(h|0))c[b+100>>2]=i+h;else j=9}else{g=c[f>>2]|0;f=g;j=9}if((j|0)==9)c[b+100>>2]=f;f=c[b+4>>2]|0;if(g){b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function ik(a){a=a|0;if(a>>>0>4294963200){c[(ck()|0)>>2]=0-a;a=-1}return a|0}function jk(a){a=a|0;return 0}function kk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function lk(a,b){a=a|0;b=b|0;return -1|0}function mk(a){a=a|0;Gl(a);return}function nk(a,b){a=a|0;b=b|0;return (a+-48|0)>>>0<10|0}function ok(a,b){a=a|0;b=b|0;return bk(a)|0}function pk(b,c,d){b=b|0;c=c|0;d=d|0;if(((a[c>>0]|0)!=0?(ll(c,58885)|0)!=0:0)?(ll(c,54145)|0)!=0:0)d=0;else if(!d)d=Hl(1,4)|0;return d|0}function qk(a){a=a|0;var b=0,d=0;b=(bb()|0)+176|0;d=c[b>>2]|0;if(a)c[b>>2]=a;return d|0}function rk(a,b){a=+a;b=+b;var d=0,e=0;h[k>>3]=a;e=c[k>>2]|0;d=c[k+4>>2]|0;h[k>>3]=b;d=c[k+4>>2]&-2147483648|d&2147483647;c[k>>2]=e;c[k+4>>2]=d;return +(+h[k>>3])}function sk(a,b){a=+a;b=+b;return +(+rk(a,b))}function tk(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;h[k>>3]=a;d=c[k>>2]|0;m=c[k+4>>2]|0;h[k>>3]=b;n=c[k>>2]|0;o=c[k+4>>2]|0;e=kw(d|0,m|0,52)|0;e=e&2047;j=kw(n|0,o|0,52)|0;j=j&2047;p=m&-2147483648;i=mw(n|0,o|0,1)|0;l=D;a:do if(!((i|0)==0&(l|0)==0)?(g=o&2147483647,!(g>>>0>2146435072|(g|0)==2146435072&n>>>0>0|(e|0)==2047)):0){f=mw(d|0,m|0,1)|0;g=D;if(!(g>>>0>l>>>0|(g|0)==(l|0)&f>>>0>i>>>0))return +((f|0)==(i|0)&(g|0)==(l|0)?a*0.0:a);if(!e){e=mw(d|0,m|0,12)|0;f=D;if((f|0)>-1|(f|0)==-1&e>>>0>4294967295){g=e;e=0;do{e=e+-1|0;g=mw(g|0,f|0,1)|0;f=D}while((f|0)>-1|(f|0)==-1&g>>>0>4294967295)}else e=0;d=mw(d|0,m|0,1-e|0)|0;f=D}else f=m&1048575|1048576;if(!j){g=mw(n|0,o|0,12)|0;i=D;if((i|0)>-1|(i|0)==-1&g>>>0>4294967295){j=0;do{j=j+-1|0;g=mw(g|0,i|0,1)|0;i=D}while((i|0)>-1|(i|0)==-1&g>>>0>4294967295)}else j=0;n=mw(n|0,o|0,1-j|0)|0;m=D}else m=o&1048575|1048576;l=hw(d|0,f|0,n|0,m|0)|0;i=D;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;b:do if((e|0)>(j|0)){while(1){if(g)if((d|0)==(n|0)&(f|0)==(m|0))break;else{d=l;f=i}d=mw(d|0,f|0,1)|0;f=D;e=e+-1|0;l=hw(d|0,f|0,n|0,m|0)|0;i=D;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;if((e|0)<=(j|0))break b}b=a*0.0;break a}while(0);if(g)if((d|0)==(n|0)&(f|0)==(m|0)){b=a*0.0;break}else{f=i;d=l}if(f>>>0<1048576|(f|0)==1048576&d>>>0<0)do{d=mw(d|0,f|0,1)|0;f=D;e=e+-1|0}while(f>>>0<1048576|(f|0)==1048576&d>>>0<0);if((e|0)>0){o=jw(d|0,f|0,0,-1048576)|0;d=D;e=mw(e|0,0,52)|0;d=d|D;e=o|e}else{e=kw(d|0,f|0,1-e|0)|0;d=D}c[k>>2]=e;c[k+4>>2]=d|p;b=+h[k>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function uk(a,b){a=+a;b=+b;return +(+tk(a,b))}function vk(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=kw(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+vk(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function wk(a,b){a=+a;b=b|0;return +(+vk(a,b))}function xk(a,b){a=+a;b=b|0;var d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){d=b+-2046|0;d=(d|0)>1023?1023:d;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){d=b+2044|0;d=(d|0)<-1022?-1022:d;a=a*2.2250738585072014e-308}}else d=b;d=mw(d+1023|0,0,52)|0;b=D;c[k>>2]=d;c[k+4>>2]=b;return +(a*+h[k>>3])}function yk(a,b){a=+a;b=b|0;return +(+xk(a,b))}function zk(a,b,c){a=a|0;b=b|0;c=c|0;return Ak(0,a,b,(c|0)!=0?c:37344)|0}function Ak(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l;j=(f|0)==0?37348:f;f=c[j>>2]|0;a:do if(!d)if(!f)f=0;else k=15;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;g=f&255;if(f<<24>>24>-1){c[h>>2]=g;f=f<<24>>24!=0&1;break}f=g+-194|0;if(f>>>0>50){k=15;break}f=c[37076+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;k=9}}else{g=e;k=9}b:do if((k|0)==9){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){k=15;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){k=15;break a}}c[j>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[j>>2]=f;f=-2}}while(0);if((k|0)==15){c[j>>2]=0;c[(ck()|0)>>2]=84;f=-1}i=l;return f|0}function Bk(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0;return a&1|0}function Ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+1040|0;l=o+8|0;n=o;k=c[b>>2]|0;c[n>>2]=k;m=(a|0)!=0;e=m?e:256;a=m?a:l;g=k;a:do if((e|0)!=0&(k|0)!=0){j=e;k=g;e=0;while(1){g=d>>>2;h=g>>>0>=j>>>0;if(!(d>>>0>131|h)){g=k;break a}g=h?j:g;d=d-g|0;g=Dk(a,n,g,f)|0;if((g|0)==-1){e=d;break}p=(a|0)==(l|0);k=p?0:g;h=j-k|0;a=p?a:a+(g<<2)|0;e=g+e|0;g=c[n>>2]|0;if((j|0)!=(k|0)&(g|0)!=0){j=h;k=g}else{j=h;break a}}d=e;j=0;g=c[n>>2]|0;e=-1}else{j=e;e=0}while(0);b:do if((g|0)!=0?(j|0)!=0&(d|0)!=0:0){h=g;g=a;while(1){a=Ak(g,h,d,f)|0;if((a+2|0)>>>0<3)break;h=(c[n>>2]|0)+a|0;c[n>>2]=h;j=j+-1|0;e=e+1|0;if(!((j|0)!=0&(d|0)!=(a|0)))break b;else{d=d-a|0;g=g+4|0}}switch(a|0){case -1:{e=-1;break b}case 0:{c[n>>2]=0;break b}default:{c[f>>2]=0;break b}}}while(0);if(m)c[b>>2]=c[n>>2];i=o;return e|0}function Dk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){g=f;j=h;m=16}else{c[g>>2]=0;l=b;g=f;k=i;m=37}else if(!b){g=f;m=7}else{i=b;g=f;m=6}a:while(1)if((m|0)==6){if(!g){m=26;break}else b=i;while(1){i=a[h>>0]|0;do if(((i&255)+-1|0)>>>0<127?g>>>0>4&(h&3|0)==0:0){j=h;while(1){h=c[j>>2]|0;if((h+-16843009|h)&-2139062144){i=h;h=j;m=32;break}c[b>>2]=h&255;c[b+4>>2]=d[j+1>>0];c[b+8>>2]=d[j+2>>0];h=j+4|0;i=b+16|0;c[b+12>>2]=d[j+3>>0];g=g+-4|0;if(g>>>0>4){b=i;j=h}else{m=31;break}}if((m|0)==31){b=i;i=a[h>>0]|0;break}else if((m|0)==32){i=i&255;break}}while(0);i=i&255;if((i+-1|0)>>>0>=127)break;h=h+1|0;c[b>>2]=i;g=g+-1|0;if(!g){m=26;break a}else b=b+4|0}i=i+-194|0;if(i>>>0>50){m=48;break}l=b;k=c[37076+(i<<2)>>2]|0;h=h+1|0;m=37;continue}else if((m|0)==7){i=a[h>>0]|0;if(((i&255)+-1|0)>>>0<127?(h&3|0)==0:0){i=c[h>>2]|0;if(!((i+-16843009|i)&-2139062144))do{h=h+4|0;g=g+-4|0;i=c[h>>2]|0}while(((i+-16843009|i)&-2139062144|0)==0);i=i&255}i=i&255;if((i+-1|0)>>>0<127){g=g+-1|0;h=h+1|0;m=7;continue}i=i+-194|0;if(i>>>0>50){m=48;break}i=c[37076+(i<<2)>>2]|0;j=h+1|0;m=16;continue}else if((m|0)==16){m=(d[j>>0]|0)>>>3;if((m+-16|m+(i>>26))>>>0>7){m=17;break}h=j+1|0;if(i&33554432){if((a[h>>0]&-64)<<24>>24!=-128){m=20;break}h=j+2|0;if(i&524288){if((a[h>>0]&-64)<<24>>24!=-128){m=23;break}h=j+3|0}}g=g+-1|0;m=7;continue}else if((m|0)==37){i=d[h>>0]|0;m=i>>>3;if((m+-16|m+(k>>26))>>>0>7){m=38;break}j=h+1|0;b=i+-128|k<<6;if((b|0)<0){i=d[j>>0]|0;if((i&192|0)!=128){m=41;break}j=h+2|0;b=i+-128|b<<6;if((b|0)<0){i=d[j>>0]|0;if((i&192|0)!=128){m=44;break}b=i+-128|b<<6;h=h+3|0}else h=j}else h=j;c[l>>2]=b;i=l+4|0;g=g+-1|0;m=6;continue}if((m|0)==17){h=j+-1|0;m=47}else if((m|0)==20){h=j+-1|0;m=47}else if((m|0)==23){h=j+-1|0;m=47}else if((m|0)==26)c[e>>2]=h;else if((m|0)==38){b=l;i=k;h=h+-1|0;m=47}else if((m|0)==41){g=l;f=h+-1|0;m=52}else if((m|0)==44){g=l;f=h+-1|0;m=52}if((m|0)==47)if(!i)m=48;else{g=b;f=h;m=52}if((m|0)==48)if(!(a[h>>0]|0)){if(b){c[b>>2]=0;c[e>>2]=0}f=f-g|0}else{g=b;f=h;m=52}if((m|0)==52){c[(ck()|0)>>2]=84;if(!g)f=-1;else{c[e>>2]=f;f=-1}}return f|0}function Ek(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k;a:do if(!e)g=0;else{do if(f){j=(b|0)==0?g:b;g=a[e>>0]|0;b=g&255;if(g<<24>>24>-1){c[j>>2]=b;g=g<<24>>24!=0&1;break a}g=b+-194|0;if(g>>>0<=50){b=e+1|0;h=c[37076+(g<<2)>>2]|0;if(f>>>0<4?(h&-2147483648>>>((f*6|0)+-6|0)|0)!=0:0)break;g=d[b>>0]|0;f=g>>>3;if((f+-16|f+(h>>26))>>>0<=7){g=g+-128|h<<6;if((g|0)>=0){c[j>>2]=g;g=2;break a}b=d[e+2>>0]|0;if((b&192|0)==128){b=b+-128|g<<6;if((b|0)>=0){c[j>>2]=b;g=3;break a}g=d[e+3>>0]|0;if((g&192|0)==128){c[j>>2]=g+-128|b<<6;g=4;break a}}}}}while(0);c[(ck()|0)>>2]=84;g=-1}while(0);i=k;return g|0}function Fk(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(ck()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Gk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+272|0;j=m+8|0;l=m;h=c[b>>2]|0;c[l>>2]=h;k=(a|0)!=0;f=k?e:256;e=k?a:j;a=h;a:do if((f|0)!=0&(h|0)!=0){h=f;g=a;f=0;while(1){a=d>>>0>=h>>>0;if(!(a|d>>>0>32)){a=g;break a}a=a?h:d;d=d-a|0;a=Hk(e,l,a,0)|0;if((a|0)==-1){f=d;break}o=(e|0)==(j|0);n=o?0:a;g=h-n|0;e=o?e:e+a|0;f=a+f|0;a=c[l>>2]|0;if((h|0)!=(n|0)&(a|0)!=0){h=g;g=a}else{h=g;break a}}d=f;h=0;a=c[l>>2]|0;f=-1}else{h=f;f=0}while(0);b:do if((a|0)!=0?(h|0)!=0&(d|0)!=0:0){g=a;a=e;while(1){e=Fk(a,c[g>>2]|0,0)|0;if((e+1|0)>>>0<2)break;g=(c[l>>2]|0)+4|0;c[l>>2]=g;d=d+-1|0;f=f+1|0;if(!((h|0)!=(e|0)&(d|0)!=0))break b;else{h=h-e|0;a=a+e|0}}if(!e)c[l>>2]=0;else f=-1}while(0);if(k)c[b>>2]=c[l>>2];i=m;return f|0}function Hk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;a:do if(!b){b=c[d>>2]|0;f=c[b>>2]|0;if(!f)e=0;else{e=0;do{if(f>>>0>127){f=Fk(j,f,0)|0;if((f|0)==-1){e=-1;break a}}else f=1;e=f+e|0;b=b+4|0;f=c[b>>2]|0}while((f|0)!=0)}}else{b:do if(e>>>0>3){f=e;g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=Fk(b,h,0)|0;if((h|0)==-1){e=-1;break a}b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(f>>>0<=3)break b}a[b>>0]=0;c[d>>2]=0;e=e-f|0;break a}else f=e;while(0);if(f){g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=19;break}h=Fk(j,h,0)|0;if((h|0)==-1){e=-1;break a}if(f>>>0>>0){g=22;break}Fk(b,c[g>>2]|0,0)|0;b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(!f)break a}if((g|0)==19){a[b>>0]=0;c[d>>2]=0;e=e-f|0;break}else if((g|0)==22){e=e-f|0;break}}}while(0);i=k;return e|0}function Ik(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Fk(a,b,0)|0;return a|0}function Jk(a){a=a|0;return 0}function Kk(a){a=a|0;return}function Lk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;k=e&255;a[l>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Tk(b)|0)){h=c[g>>2]|0;j=4}else f=-1;else j=4;do if((j|0)==4){g=b+20|0;j=c[g>>2]|0;if(j>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[g>>2]=j+1;a[j>>0]=k;break}if((Gb[c[b+36>>2]&63](b,l,1)|0)==1)f=d[l>>0]|0;else f=-1}while(0);i=m;return f|0}function Mk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=ik(nb(6,d|0)|0)|0;i=b;return a|0}function Nk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[9258]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=ik(vb(145,h|0)|0)|0}else{ob(185,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=ik(vb(145,g|0)|0)|0;gb(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){h=c[k>>2]|0;g=b+4|0;c[g>>2]=h;c[b+8>>2]=h+(f-j);if(!(c[l>>2]|0))f=e;else{c[g>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Ok(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((ik(ub(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[9258]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=ik(wb(146,n|0)|0)|0}else{ob(186,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=ik(wb(146,m|0)|0)|0;gb(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=8;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,(eb(54,f|0)|0)!=0):0)a[b+75>>0]=-1;f=Pk(b,d,e)|0;i=g;return f|0}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=jl(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;lw(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Sk(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Gb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Tk(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Uk(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;if((c[a+8>>2]|0)==0?(Sk(a)|0)!=0:0)b=-1;else if((Gb[c[a+32>>2]&63](a,b,1)|0)==1)b=d[b>>0]|0;else b=-1;i=e;return b|0}function Vk(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=wl(a)|0;break}d=(Jk(a)|0)==0;b=wl(a)|0;if(!d)Kk(a)}else{if(!(c[9323]|0))b=0;else b=Vk(c[9323]|0)|0;Ea(37060);a=c[9264]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Jk(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=wl(a)|0|b;if(d)Kk(a);a=c[a+56>>2]|0}while((a|0)!=0);fb(37060)}while(0);return b|0}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(Jk(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(f=d+20|0,g=c[f>>2]|0,g>>>0<(c[d+16>>2]|0)>>>0):0){c[f>>2]=g+1;a[g>>0]=b;e=b&255}else e=Lk(d,b)|0;Kk(d)}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(h=d+20|0,e=c[h>>2]|0,e>>>0<(c[d+16>>2]|0)>>>0):0){c[h>>2]=e+1;a[e>>0]=b;e=b&255;break}e=Lk(d,b)|0}while(0);return e|0}function Xk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Tk(e)|0)){g=c[f>>2]|0;h=4}else f=0;else h=4;a:do if((h|0)==4){i=e+20|0;h=c[i>>2]|0;if((g-h|0)>>>0>>0){f=Gb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((Gb[c[e+36>>2]&63](e,b,f)|0)>>>0>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);lw(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function Yk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=$(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Jk(e)|0)==0;a=Xk(a,f,e)|0;if(!g)Kk(e)}else a=Xk(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Zk(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(Jk(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=Uk(a)|0}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=Uk(a)|0;break}}while(0);return b|0}function _k(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=el(a,b,d,g)|0;i=f;return e|0}function $k(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=fl(a,b,f)|0;i=e;return d|0}function al(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;do if((b|0)!=-1){if((c[d+76>>2]|0)>-1)g=Jk(d)|0;else g=0;if(!((c[d+8>>2]|0)==0?(Sk(d)|0)!=0:0))h=6;if((h|0)==6?(e=d+4|0,f=c[e>>2]|0,f>>>0>((c[d+44>>2]|0)+-8|0)>>>0):0){h=f+-1|0;c[e>>2]=h;a[h>>0]=b;c[d>>2]=c[d>>2]&-17;if(!g)break;Kk(d);break}if(g){Kk(d);b=-1}else b=-1}else b=-1;while(0);return b|0}function bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j;f=Fl(240)|0;do if(f){c[e>>2]=c[d>>2];e=el(f,240,b,e)|0;if(e>>>0<240){b=Il(f,e+1|0)|0;c[a>>2]=(b|0)!=0?b:f;break}Gl(f);if((e|0)>=0?(h=e+1|0,g=Fl(h)|0,c[a>>2]=g,(g|0)!=0):0)e=el(g,h,b,d)|0;else e=-1}else e=-1;while(0);i=j;return e|0}function cl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+80|0;r=s+96|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((xl(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=Jk(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=xl(b,d,o,q,r)|0;if(h){Gb[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=xl(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m)Kk(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function dl(e,f,j){e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=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,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;P=i;i=i+304|0;H=P+16|0;J=P+8|0;I=P+33|0;K=P;y=P+32|0;if((c[e+76>>2]|0)>-1)O=Jk(e)|0;else O=0;k=a[f>>0]|0;a:do if(k<<24>>24){L=e+4|0;M=e+100|0;G=e+108|0;z=e+8|0;A=I+10|0;B=I+33|0;C=J+4|0;E=I+46|0;F=I+94|0;m=k;k=0;n=f;s=0;l=0;f=0;b:while(1){c:do if(!(ak(m&255)|0)){m=(a[n>>0]|0)==37;d:do if(m){q=n+1|0;o=a[q>>0]|0;e:do switch(o<<24>>24){case 37:break d;case 42:{x=0;o=n+2|0;break}default:{o=(o&255)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[H>>2]=c[j>>2];while(1){x=(c[H>>2]|0)+(4-1)&~(4-1);m=c[x>>2]|0;c[H>>2]=x+4;if(o>>>0>1)o=o+-1|0;else break}x=m;o=n+3|0;break e}o=(c[j>>2]|0)+(4-1)&~(4-1);x=c[o>>2]|0;c[j>>2]=o+4;o=q}}while(0);m=a[o>>0]|0;n=m&255;if((n+-48|0)>>>0<10){m=0;while(1){q=(m*10|0)+-48+n|0;o=o+1|0;m=a[o>>0]|0;n=m&255;if((n+-48|0)>>>0>=10)break;else m=q}}else q=0;if(m<<24>>24==109){o=o+1|0;r=a[o>>0]|0;m=(x|0)!=0&1;l=0;f=0}else{r=m;m=0}n=o+1|0;switch(r&255|0){case 104:{w=(a[n>>0]|0)==104;n=w?o+2|0:n;o=w?-2:-1;break}case 108:{w=(a[n>>0]|0)==108;n=w?o+2|0:n;o=w?3:1;break}case 106:{o=3;break}case 116:case 122:{o=1;break}case 76:{o=2;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:{n=o;o=0;break}default:{N=152;break b}}r=d[n>>0]|0;t=(r&47|0)==3;r=t?r|32:r;t=t?1:o;switch(r|0){case 99:{w=s;v=(q|0)<1?1:q;break}case 91:{w=s;v=q;break}case 110:{if(!x){o=s;break c}switch(t|0){case -2:{a[x>>0]=s;o=s;break c}case -1:{b[x>>1]=s;o=s;break c}case 0:{c[x>>2]=s;o=s;break c}case 1:{c[x>>2]=s;o=s;break c}case 3:{o=x;c[o>>2]=s;c[o+4>>2]=((s|0)<0)<<31>>31;o=s;break c}default:{o=s;break c}}}default:{gk(e,0);do{o=c[L>>2]|0;if(o>>>0<(c[M>>2]|0)>>>0){c[L>>2]=o+1;o=d[o>>0]|0}else o=hk(e)|0}while((ak(o)|0)!=0);o=c[L>>2]|0;if(c[M>>2]|0){o=o+-1|0;c[L>>2]=o}w=(c[G>>2]|0)+s+o-(c[z>>2]|0)|0;v=q}}gk(e,v);o=c[L>>2]|0;q=c[M>>2]|0;if(o>>>0>>0)c[L>>2]=o+1;else{if((hk(e)|0)<0){N=152;break b}q=c[M>>2]|0}if(q)c[L>>2]=(c[L>>2]|0)+-1;f:do switch(r|0){case 91:case 99:case 115:{u=(r|0)==99;g:do if((r&239|0)==99){iw(I|0,-1,257)|0;a[I>>0]=0;if((r|0)==115){a[B>>0]=0;a[A>>0]=0;a[A+1>>0]=0;a[A+2>>0]=0;a[A+3>>0]=0;a[A+4>>0]=0}}else{Q=n+1|0;s=(a[Q>>0]|0)==94;o=s&1;r=s?Q:n;n=s?n+2|0:Q;iw(I|0,s&1|0,257)|0;a[I>>0]=0;switch(a[n>>0]|0){case 45:{s=(o^1)&255;a[E>>0]=s;n=r+2|0;break}case 93:{s=(o^1)&255;a[F>>0]=s;n=r+2|0;break}default:s=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{N=152;break b}case 93:break g;case 45:{r=n+1|0;o=a[r>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[I+n>>0]=s;o=a[r>>0]|0}while((n|0)<(o&255|0));n=r}else n=r;break}default:{}}while(0);a[I+((o&255)+1)>>0]=s;n=n+1|0}}while(0);r=u?v+1|0:31;s=(t|0)==1;t=(m|0)!=0;i:do if(s){if(t){f=Fl(r<<2)|0;if(!f){l=0;N=152;break b}}else f=x;c[J>>2]=0;c[C>>2]=0;l=0;j:while(1){q=(f|0)==0;do{k:while(1){o=c[L>>2]|0;if(o>>>0<(c[M>>2]|0)>>>0){c[L>>2]=o+1;o=d[o>>0]|0}else o=hk(e)|0;if(!(a[I+(o+1)>>0]|0))break j;a[y>>0]=o;switch(Ak(K,y,1,J)|0){case -1:{l=0;N=152;break b}case -2:break;default:break k}}if(!q){c[f+(l<<2)>>2]=c[K>>2];l=l+1|0}}while(!(t&(l|0)==(r|0)));l=r<<1|1;o=Il(f,l<<2)|0;if(!o){l=0;N=152;break b}Q=r;r=l;f=o;l=Q}if(!(Bk(J)|0)){l=0;N=152;break b}else{q=l;l=0}}else{if(t){l=Fl(r)|0;if(!l){l=0;f=0;N=152;break b}else o=0;while(1){do{f=c[L>>2]|0;if(f>>>0<(c[M>>2]|0)>>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=o;f=0;break i}a[l+o>>0]=f;o=o+1|0}while((o|0)!=(r|0));f=r<<1|1;o=Il(l,f)|0;if(!o){f=0;N=152;break b}else{Q=r;r=f;l=o;o=Q}}}if(!x){l=q;while(1){f=c[L>>2]|0;if(f>>>0>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=0;l=0;f=0;break i}l=c[M>>2]|0}}else{l=0;while(1){f=c[L>>2]|0;if(f>>>0>>0){c[L>>2]=f+1;f=d[f>>0]|0}else f=hk(e)|0;if(!(a[I+(f+1)>>0]|0)){q=l;l=x;f=0;break i}a[x+l>>0]=f;q=c[M>>2]|0;l=l+1|0}}}while(0);o=c[L>>2]|0;if(c[M>>2]|0){o=o+-1|0;c[L>>2]=o}o=o-(c[z>>2]|0)+(c[G>>2]|0)|0;if(!o)break b;if(!((o|0)==(v|0)|u^1))break b;do if(t)if(s){c[x>>2]=f;break}else{c[x>>2]=l;break}while(0);if(!u){if(f)c[f+(q<<2)>>2]=0;if(!l){l=0;break f}a[l+q>>0]=0}break}case 120:case 88:case 112:{o=16;N=134;break}case 111:{o=8;N=134;break}case 117:case 100:{o=10;N=134;break}case 105:{o=0;N=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{p=+ek(e,t,0);if((c[G>>2]|0)==((c[z>>2]|0)-(c[L>>2]|0)|0))break b;if(x)switch(t|0){case 0:{g[x>>2]=p;break f}case 1:{h[x>>3]=p;break f}case 2:{h[x>>3]=p;break f}default:break f}break}default:{}}while(0);l:do if((N|0)==134){N=0;o=fk(e,o,0,-1,-1)|0;if((c[G>>2]|0)==((c[z>>2]|0)-(c[L>>2]|0)|0))break b;if((x|0)!=0&(r|0)==112){c[x>>2]=o;break}if(x)switch(t|0){case -2:{a[x>>0]=o;break l}case -1:{b[x>>1]=o;break l}case 0:{c[x>>2]=o;break l}case 1:{c[x>>2]=o;break l}case 3:{Q=x;c[Q>>2]=o;c[Q+4>>2]=D;break l}default:break l}}while(0);k=((x|0)!=0&1)+k|0;o=(c[G>>2]|0)+w+(c[L>>2]|0)-(c[z>>2]|0)|0;break c}while(0);n=n+(m&1)|0;gk(e,0);m=c[L>>2]|0;if(m>>>0<(c[M>>2]|0)>>>0){c[L>>2]=m+1;m=d[m>>0]|0}else m=hk(e)|0;if((m|0)!=(d[n>>0]|0)){N=21;break b}o=s+1|0}else{while(1){m=n+1|0;if(!(ak(d[m>>0]|0)|0))break;else n=m}gk(e,0);do{m=c[L>>2]|0;if(m>>>0<(c[M>>2]|0)>>>0){c[L>>2]=m+1;m=d[m>>0]|0}else m=hk(e)|0}while((ak(m)|0)!=0);m=c[L>>2]|0;if(c[M>>2]|0){m=m+-1|0;c[L>>2]=m}o=(c[G>>2]|0)+s+m-(c[z>>2]|0)|0}while(0);n=n+1|0;m=a[n>>0]|0;if(!(m<<24>>24))break a;else s=o}if((N|0)==21){if(c[M>>2]|0)c[L>>2]=(c[L>>2]|0)+-1;if((k|0)!=0|(m|0)>-1)break;else{k=0;N=153}}else if((N|0)==152)if(!k){k=m;N=153}if((N|0)==153){m=k;k=-1}if(m){Gl(l);Gl(f)}}else k=0;while(0);if(O)Kk(e);i=P;return k|0}function el(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=37352;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(ck()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=cl(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function fl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+112|0;e=g;f=e;h=f+112|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=29;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=dl(e,b,d)|0;i=g;return h|0}function gl(a,b,c){a=a|0;b=b|0;c=c|0;return +(+zl(a,b,2))}function hl(a,b,c){a=a|0;b=b|0;c=c|0;a=Al(a,b,c,-1,-1)|0;return a|0}function il(a,b,c){a=a|0;b=b|0;c=c|0;a=Al(a,b,c,0,-2147483648)|0;return a|0}function jl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=$(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return ((e|0)!=0?b:0)|0}function kl(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function ll(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>>0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c&255)-(d&255)|0}function ml(a,b){a=a|0;b=b|0;kl(a,b)|0;return a|0}function nl(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function ol(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function pl(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}return a|0}function rl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(d|0)==0;if(a-b>>2>>>0>>0){if(!e)do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0)}else if(!e){e=b;b=a;while(1){d=d+-1|0;c[b>>2]=c[e>>2];if(!d)break;else{e=e+4|0;b=b+4|0}}}return a|0}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d){e=a;while(1){d=d+-1|0;c[e>>2]=b;if(!d)break;else e=e+4|0}}return a|0}function tl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[j>>2]|0)!=0:0){c[i>>2]=(c[i>>2]|0)+-1;h=f}else h=f;break}default:h=0}if((e+-48|0)>>>0>9)if(!(c[j>>2]|0)){f=-2147483648;e=0}else{c[i>>2]=(c[i>>2]|0)+-1;f=-2147483648;e=0}else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10&(f|0)<214748364);b=((f|0)<0)<<31>>31;if((e+-48|0)>>>0<10){do{b=tw(f|0,b|0,10,0)|0;f=D;e=jw(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=jw(e|0,D|0,b|0,f|0)|0;b=D;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&f>>>0<2061584302));g=f}else g=f;if((e+-48|0)>>>0<10)do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=hk(a)|0}while((e+-48|0)>>>0<10);if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;a=(h|0)!=0;e=hw(0,0,g|0,b|0)|0;f=a?D:b;e=a?e:g}D=f;return e|0}function ul(a){a=a|0;if(!(c[a+68>>2]|0))Kk(a);return}function vl(a){a=a|0;if(!(c[a+68>>2]|0))Kk(a);return}function wl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(Gb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0>>0)Gb[c[a+40>>2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0}\n\n// EMSCRIPTEN_END_FUNCS\n var yb=[Uw,Qq,Uq,Or,Sr,Xr,Zr,xu,Iu,Uw,Uw,Uw,Uw,Uw,Uw,Uw];var zb=[Vw,ii,Yh,Mh,Ah,oh,ch,Sg,Bg,Mj,Lj,Ij,Vw,Vw,Vw,Vw];var Ab=[Ww,bs,hs,Ww];var Bb=[Xw,ei,fi,Uh,Vh,Ih,Jh,wh,xh,kh,lh,_g,$g,Og,Pg,xg,yg,kg,lg,_f,$f,Of,Pf,Cf,Df,qf,rf,ye,ze,le,me,tc,uc,Pd,Td,Qd,bo,eo,co,fo,kd,ld,Qi,md,dd,ed,Ic,Jc,Qc,Rc,Xc,Yc,nd,od,ud,vd,Bd,Cd,Id,Jd,je,ke,He,Ie,Oe,Pe,Ve,We,af,bf,Mg,Ng,Dm,qi,Ai,Bi,Ri,Si,fj,gj,mj,nj,rj,sj,uj,xj,vj,wj,yj,zj,Cn,Tl,Zl,nn,cm,im,Bm,Cm,on,Dn,Rn,Tn,Sn,Un,Xn,Zn,Yn,_n,ko,mo,lo,no,uo,vo,en,wo,xo,yo,Ao,Ks,Eo,Fo,Jo,Ko,Yo,Zo,qp,rp,Fp,Gp,Sp,Tp,pq,qq,Nq,Pq,Sq,Tq,Wq,Xq,fr,gr,qr,rr,Br,Cr,Mr,Nr,Vr,Wr,$r,as,fs,gs,ls,ms,qs,rs,ys,zs,at,bt,wu,tt,Vt,Wt,Xt,Yt,zo,Js,Ms,kt,Bt,Jt,Rt,St,Ti,Ii,$i,sc,pn,Wn,_d,Eg,Wj,ul,vl,Ml,mk,Pr,Rr,Ls,Gv,Nv,Ov,Pv,Qv,Rv,Sv,Im,Wm,Gl,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw,Xw];var Cb=[Yw,hi,Xh,Lh,zh,nh,bh,Rg,Ag,mg,ag,Qf,Ef,sf,Ae,ne,vc,qn,Ci,Fi,Ul,Yl,dm,hm,Fn,_q,$q,ar,br,dr,er,jr,kr,lr,mr,or,pr,ur,vr,wr,xr,zr,Ar,Fr,Gr,Hr,Ir,Kr,Lr,ps,us,bu,du,fu,cu,eu,gu,kc,Ui,Gi,Hi,Ji,kn,Cc,Ec,go,dn,Qm,Zd,re,jf,wf,If,Uf,eg,qg,Dg,Ug,eh,qh,Ch,Oh,_h,ki,yi,Zi,sm,qm,hn,oo,rm,Om,_m,Zm,av,bv,cv,dv,ev,fv,st,gv,hv,iv,jv,kv,lv,mv,nv,ov,pv,qv,rv,sv,tv,uv,vv,wv,xv,yv,zv,Av,Bv,Cv,Ev,Yv,Yw,Yw];var Db=[Zw,Lo,Mo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,_o,$o,ap,bp,cp,dp,ep,fp,gp,hp,ip,xp,zp,Kp,Mp,Vp,Wp,Xp,Zp,$p,sq,tq,uq,wq,yq,es,ks,cd,Uu,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw,Zw];var Eb=[_w,un,vn,hd,yn,ri,hj,oj,tj,Mk,Vl,Kn,Mn,Nn,Jn,_l,$l,em,xn,jm,km,qo,Up,iu,ku,mu,su,uu,ou,qu,rq,ju,lu,nu,tu,vu,pu,ru,Yq,Zq,cr,hr,ir,nr,sr,tr,yr,Dr,Er,Jr,xt,yt,At,Zt,$t,_t,au,ot,pt,rt,Ft,Gt,It,Nt,Ot,Qt,ui,bj,jn,Li,Vn,$n,$w,ax,bx,qk,pl,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w,_w];var Fb=[cx,Qr,Yr,cx];var Gb=[dx,rn,wn,An,um,vm,Aj,Bl,Pk,Ok,Nk,Qk,Gn,Ln,Wl,Pn,fm,Do,Io,ns,ss,dt,ft,it,Ns,Us,Xs,_s,Dc,yl,Rm,pk,Zu,$u,Fk,Ek,zk,bl,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx,dx];var Hb=[ex,ds,js,ex];var Ib=[fx,fd,Pj,Oj,Nj,Hn,sn,os,ts,fx,fx,fx,fx,fx,fx,fx];var Jb=[gx,wp,Cp,Jp,Op,gx,gx,gx];var Kb=[hx,Tr,_r,cs,is,hx,hx,hx];var Lb=[ix,gi,Wh,Kh,yh,mh,ah,Qg,zg,og,cg,Sf,Gf,uf,Ce,pe,xc,id,jd,On,Xl,am,Qn,zn,gm,lm,Bn,ct,et,gt,Ss,Vs,Ys,Vi,oc,qc,io,Is,jo,ok,nk,Km,Xm,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix];var Mb=[jx,Bo,Go,sp,tp,yp,Ep,Hp,Ip,Lp,Qp,jt,wt,zt,$s,nt,qt,Et,Ht,Mt,Pt,Gk,Ck,jx,jx,jx,jx,jx,jx,jx,jx,jx];var Nb=[kx,$v,_v,Zv];var Ob=[lx,lc,aj,Xo,Bs,Cs,Ds,Zj,$j,_j,lx,lx,lx,lx,lx,lx];var Pb=[mx,ng,bg,Rf,Ff,tf,Be,oe,wc,ht,Ps,Qs,Rs,Zs,ti,zi,Hu,Tu,Dk,kk,Ak,fw,ew,dw,cw,bw,aw,mx,mx,mx,mx,mx];var Qb=[nx,tm,si,ro,Wi,Gm,ox,Am,Mm,Ki,xm,to,Xu,Yu,_u,Um];var Rb=[px,qx,Tj,rx,Uj,sx,Sj,px];var Sb=[tx,bq,Aq,ut,vt,lt,mt,Ct,Dt,Kt,Lt,tx,tx,tx,tx,tx];var Tb=[ux,Ap,Dp,Np,Pp,ux,ux,ux];var Ub=[vx,Ud,Vd,Rd,Sd,gd,Kc,Lc,Sc,Tc,Zc,_c,pd,qd,wd,xd,Dd,Ed,Kd,Ld,Je,Ke,Qe,Re,Xe,Ye,cf,df,Cj,Dj,Fj,In,tn,Co,Ho,dc,zm,yc,zc,Ac,Bc,Fc,Gc,Hc,De,Ee,Fe,Ge,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx,vx];return{_jpegls_encode:Yi,___cxa_can_catch:Qj,_free:Gl,_jpegls_decode:Xi,___cxa_is_pointer_type:Rj,_i64Add:jw,_memmove:nw,_i64Subtract:hw,_memset:iw,_malloc:Fl,_memcpy:lw,_bitshift64Lshr:kw,_bitshift64Shl:mw,__GLOBAL__I_000101:Nl,__GLOBAL__sub_I_jpegls_cpp:rc,__GLOBAL__sub_I_iostream_cpp:Ol,runPostSets:gw,stackAlloc:Vb,stackSave:Wb,stackRestore:Xb,establishStackSpace:Yb,setThrew:Zb,setTempRet0:ac,getTempRet0:bc,dynCall_iiiiiiii:xw,dynCall_viiiii:yw,dynCall_iiiiiid:zw,dynCall_vi:Aw,dynCall_vii:Bw,dynCall_iiiiiii:Cw,dynCall_ii:Dw,dynCall_iiiiiiiiiiii:Ew,dynCall_iiii:Fw,dynCall_viiiiiiiiiiiiiii:Gw,dynCall_viiiiii:Hw,dynCall_viiiiiii:Iw,dynCall_viiiiiiiiii:Jw,dynCall_iii:Kw,dynCall_iiiiii:Lw,dynCall_diii:Mw,dynCall_i:Nw,dynCall_iiiii:Ow,dynCall_viii:Pw,dynCall_v:Qw,dynCall_iiiiiiiii:Rw,dynCall_iiiiid:Sw,dynCall_viiii:Tw}})\n\n\n // EMSCRIPTEN_END_ASM\n (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _jpegls_encode=Module[\"_jpegls_encode\"]=asm[\"_jpegls_encode\"];var ___cxa_can_catch=Module[\"___cxa_can_catch\"]=asm[\"___cxa_can_catch\"];var _free=Module[\"_free\"]=asm[\"_free\"];var _jpegls_decode=Module[\"_jpegls_decode\"]=asm[\"_jpegls_decode\"];var ___cxa_is_pointer_type=Module[\"___cxa_is_pointer_type\"]=asm[\"___cxa_is_pointer_type\"];var _i64Add=Module[\"_i64Add\"]=asm[\"_i64Add\"];var _memmove=Module[\"_memmove\"]=asm[\"_memmove\"];var _i64Subtract=Module[\"_i64Subtract\"]=asm[\"_i64Subtract\"];var _memset=Module[\"_memset\"]=asm[\"_memset\"];var _malloc=Module[\"_malloc\"]=asm[\"_malloc\"];var _memcpy=Module[\"_memcpy\"]=asm[\"_memcpy\"];var runPostSets=Module[\"runPostSets\"]=asm[\"runPostSets\"];var __GLOBAL__sub_I_iostream_cpp=Module[\"__GLOBAL__sub_I_iostream_cpp\"]=asm[\"__GLOBAL__sub_I_iostream_cpp\"];var _bitshift64Lshr=Module[\"_bitshift64Lshr\"]=asm[\"_bitshift64Lshr\"];var __GLOBAL__sub_I_jpegls_cpp=Module[\"__GLOBAL__sub_I_jpegls_cpp\"]=asm[\"__GLOBAL__sub_I_jpegls_cpp\"];var __GLOBAL__I_000101=Module[\"__GLOBAL__I_000101\"]=asm[\"__GLOBAL__I_000101\"];var _bitshift64Shl=Module[\"_bitshift64Shl\"]=asm[\"_bitshift64Shl\"];var dynCall_iiiiiiii=Module[\"dynCall_iiiiiiii\"]=asm[\"dynCall_iiiiiiii\"];var dynCall_viiiii=Module[\"dynCall_viiiii\"]=asm[\"dynCall_viiiii\"];var dynCall_iiiiiid=Module[\"dynCall_iiiiiid\"]=asm[\"dynCall_iiiiiid\"];var dynCall_vi=Module[\"dynCall_vi\"]=asm[\"dynCall_vi\"];var dynCall_vii=Module[\"dynCall_vii\"]=asm[\"dynCall_vii\"];var dynCall_iiiiiii=Module[\"dynCall_iiiiiii\"]=asm[\"dynCall_iiiiiii\"];var dynCall_ii=Module[\"dynCall_ii\"]=asm[\"dynCall_ii\"];var dynCall_iiiiiiiiiiii=Module[\"dynCall_iiiiiiiiiiii\"]=asm[\"dynCall_iiiiiiiiiiii\"];var dynCall_iiii=Module[\"dynCall_iiii\"]=asm[\"dynCall_iiii\"];var dynCall_viiiiiiiiiiiiiii=Module[\"dynCall_viiiiiiiiiiiiiii\"]=asm[\"dynCall_viiiiiiiiiiiiiii\"];var dynCall_viiiiii=Module[\"dynCall_viiiiii\"]=asm[\"dynCall_viiiiii\"];var dynCall_viiiiiii=Module[\"dynCall_viiiiiii\"]=asm[\"dynCall_viiiiiii\"];var dynCall_viiiiiiiiii=Module[\"dynCall_viiiiiiiiii\"]=asm[\"dynCall_viiiiiiiiii\"];var dynCall_iii=Module[\"dynCall_iii\"]=asm[\"dynCall_iii\"];var dynCall_iiiiii=Module[\"dynCall_iiiiii\"]=asm[\"dynCall_iiiiii\"];var dynCall_diii=Module[\"dynCall_diii\"]=asm[\"dynCall_diii\"];var dynCall_i=Module[\"dynCall_i\"]=asm[\"dynCall_i\"];var dynCall_iiiii=Module[\"dynCall_iiiii\"]=asm[\"dynCall_iiiii\"];var dynCall_viii=Module[\"dynCall_viii\"]=asm[\"dynCall_viii\"];var dynCall_v=Module[\"dynCall_v\"]=asm[\"dynCall_v\"];var dynCall_iiiiiiiii=Module[\"dynCall_iiiiiiiii\"]=asm[\"dynCall_iiiiiiiii\"];var dynCall_iiiiid=Module[\"dynCall_iiiiid\"]=asm[\"dynCall_iiiiid\"];var dynCall_viiii=Module[\"dynCall_viiii\"]=asm[\"dynCall_viiii\"];Runtime.stackAlloc=asm[\"stackAlloc\"];Runtime.stackSave=asm[\"stackSave\"];Runtime.stackRestore=asm[\"stackRestore\"];Runtime.establishStackSpace=asm[\"establishStackSpace\"];Runtime.setTempRet0=asm[\"setTempRet0\"];Runtime.getTempRet0=asm[\"getTempRet0\"];function ExitStatus(status){this.name=\"ExitStatus\";this.message=\"Program terminated with exit(\"+status+\")\";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module[\"calledRun\"])run();if(!Module[\"calledRun\"])dependenciesFulfilled=runCaller};Module[\"callMain\"]=Module.callMain=function callMain(args){assert(runDependencies==0,\"cannot call main when async dependencies remain! (listen on __ATMAIN__)\");assert(__ATPRERUN__.length==0,\"cannot call main when preRun functions remain to be called\");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module[\"thisProgram\"]),\"i8\",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();if(Module[\"_main\"]&&shouldRunNow)Module[\"callMain\"](args);postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}}Module[\"run\"]=Module.run=run;function exit(status,implicit){if(implicit&&Module[\"noExitRuntime\"]){return}if(Module[\"noExitRuntime\"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module[\"onExit\"])Module[\"onExit\"](status)}if(ENVIRONMENT_IS_NODE){process[\"stdout\"][\"once\"](\"drain\",(function(){process[\"exit\"](status)}));console.log(\" \");setTimeout((function(){process[\"exit\"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit===\"function\"){quit(status)}throw new ExitStatus(status)}Module[\"exit\"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=Module.abort=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}var shouldRunNow=true;if(Module[\"noInitialRun\"]){shouldRunNow=false}run()\n\n\n\n\n\n return Module;\n};\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = CharLS;\n\n/***/ }),\n\n/***/ \"../codecs/jpeg.js\":\n/*!*************************!*\\\n !*** ../codecs/jpeg.js ***!\n \\*************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// jshint ignore: start\n\n/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /\n /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */\n/*\n Copyright 2011 notmasteryet\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n */\n\n// - The JPEG specification can be found in the ITU CCITT Recommendation T.81\n// (www.w3.org/Graphics/JPEG/itu-t81.pdf)\n// - The JFIF specification can be found in the JPEG File Interchange Format\n// (www.w3.org/Graphics/JPEG/jfif3.pdf)\n// - The Adobe Application-Specific JPEG markers in the Supporting the DCT Filters\n// in PostScript Level 2, Technical Note #5116\n// (partners.adobe.com/public/developer/en/ps/sdk/5116.DCT_Filter.pdf)\n\nvar ColorSpace = {Unkown: 0, Grayscale: 1, AdobeRGB: 2, RGB: 3, CYMK: 4};\nvar JpegImage = (function jpegImage() {\n \"use strict\";\n var dctZigZag = new Int32Array([\n 0,\n 1, 8,\n 16, 9, 2,\n 3, 10, 17, 24,\n 32, 25, 18, 11, 4,\n 5, 12, 19, 26, 33, 40,\n 48, 41, 34, 27, 20, 13, 6,\n 7, 14, 21, 28, 35, 42, 49, 56,\n 57, 50, 43, 36, 29, 22, 15,\n 23, 30, 37, 44, 51, 58,\n 59, 52, 45, 38, 31,\n 39, 46, 53, 60,\n 61, 54, 47,\n 55, 62,\n 63\n ]);\n\n var dctCos1 = 4017; // cos(pi/16)\n var dctSin1 = 799; // sin(pi/16)\n var dctCos3 = 3406; // cos(3*pi/16)\n var dctSin3 = 2276; // sin(3*pi/16)\n var dctCos6 = 1567; // cos(6*pi/16)\n var dctSin6 = 3784; // sin(6*pi/16)\n var dctSqrt2 = 5793; // sqrt(2)\n var dctSqrt1d2 = 2896; // sqrt(2) / 2\n\n function constructor() {\n }\n\n function buildHuffmanTable(codeLengths, values) {\n var k = 0, code = [], i, j, length = 16;\n while (length > 0 && !codeLengths[length - 1])\n length--;\n code.push({children: [], index: 0});\n var p = code[0], q;\n for (i = 0; i < length; i++) {\n for (j = 0; j < codeLengths[i]; j++) {\n p = code.pop();\n p.children[p.index] = values[k];\n while (p.index > 0) {\n p = code.pop();\n }\n p.index++;\n code.push(p);\n while (code.length <= i) {\n code.push(q = {children: [], index: 0});\n p.children[p.index] = q.children;\n p = q;\n }\n k++;\n }\n if (i + 1 < length) {\n // p here points to last code\n code.push(q = {children: [], index: 0});\n p.children[p.index] = q.children;\n p = q;\n }\n }\n return code[0].children;\n }\n\n function getBlockBufferOffset(component, row, col) {\n return 64 * ((component.blocksPerLine + 1) * row + col);\n }\n\n function decodeScan(data, offset,\n frame, components, resetInterval,\n spectralStart, spectralEnd,\n successivePrev, successive) {\n var precision = frame.precision;\n var samplesPerLine = frame.samplesPerLine;\n var scanLines = frame.scanLines;\n var mcusPerLine = frame.mcusPerLine;\n var progressive = frame.progressive;\n var maxH = frame.maxH, maxV = frame.maxV;\n\n var startOffset = offset, bitsData = 0, bitsCount = 0;\n\n function readBit() {\n if (bitsCount > 0) {\n bitsCount--;\n return (bitsData >> bitsCount) & 1;\n }\n bitsData = data[offset++];\n if (bitsData == 0xFF) {\n var nextByte = data[offset++];\n if (nextByte) {\n throw \"unexpected marker: \" + ((bitsData << 8) | nextByte).toString(16);\n }\n // unstuff 0\n }\n bitsCount = 7;\n return bitsData >>> 7;\n }\n\n function decodeHuffman(tree) {\n var node = tree;\n var bit;\n while ((bit = readBit()) !== null) {\n node = node[bit];\n if (typeof node === 'number')\n return node;\n if (typeof node !== 'object')\n throw \"invalid huffman sequence\";\n }\n return null;\n }\n\n function receive(length) {\n var n = 0;\n while (length > 0) {\n var bit = readBit();\n if (bit === null)\n return;\n n = (n << 1) | bit;\n length--;\n }\n return n;\n }\n\n function receiveAndExtend(length) {\n var n = receive(length);\n if (n >= 1 << (length - 1))\n return n;\n return n + (-1 << length) + 1;\n }\n\n function decodeBaseline(component, offset) {\n var t = decodeHuffman(component.huffmanTableDC);\n var diff = t === 0 ? 0 : receiveAndExtend(t);\n component.blockData[offset] = (component.pred += diff);\n var k = 1;\n while (k < 64) {\n var rs = decodeHuffman(component.huffmanTableAC);\n var s = rs & 15, r = rs >> 4;\n if (s === 0) {\n if (r < 15)\n break;\n k += 16;\n continue;\n }\n k += r;\n var z = dctZigZag[k];\n component.blockData[offset + z] = receiveAndExtend(s);\n k++;\n }\n }\n\n function decodeDCFirst(component, offset) {\n var t = decodeHuffman(component.huffmanTableDC);\n var diff = t === 0 ? 0 : (receiveAndExtend(t) << successive);\n component.blockData[offset] = (component.pred += diff);\n }\n\n function decodeDCSuccessive(component, offset) {\n component.blockData[offset] |= readBit() << successive;\n }\n\n var eobrun = 0;\n function decodeACFirst(component, offset) {\n if (eobrun > 0) {\n eobrun--;\n return;\n }\n var k = spectralStart, e = spectralEnd;\n while (k <= e) {\n var rs = decodeHuffman(component.huffmanTableAC);\n var s = rs & 15, r = rs >> 4;\n if (s === 0) {\n if (r < 15) {\n eobrun = receive(r) + (1 << r) - 1;\n break;\n }\n k += 16;\n continue;\n }\n k += r;\n var z = dctZigZag[k];\n component.blockData[offset + z] = receiveAndExtend(s) * (1 << successive);\n k++;\n }\n }\n\n var successiveACState = 0, successiveACNextValue;\n function decodeACSuccessive(component, offset) {\n var k = spectralStart, e = spectralEnd, r = 0;\n while (k <= e) {\n var z = dctZigZag[k];\n switch (successiveACState) {\n case 0: // initial state\n var rs = decodeHuffman(component.huffmanTableAC);\n var s = rs & 15;\n r = rs >> 4;\n if (s === 0) {\n if (r < 15) {\n eobrun = receive(r) + (1 << r);\n successiveACState = 4;\n } else {\n r = 16;\n successiveACState = 1;\n }\n } else {\n if (s !== 1)\n throw \"invalid ACn encoding\";\n successiveACNextValue = receiveAndExtend(s);\n successiveACState = r ? 2 : 3;\n }\n continue;\n case 1: // skipping r zero items\n case 2:\n if (component.blockData[offset + z]) {\n component.blockData[offset + z] += (readBit() << successive);\n } else {\n r--;\n if (r === 0)\n successiveACState = successiveACState == 2 ? 3 : 0;\n }\n break;\n case 3: // set value for a zero item\n if (component.blockData[offset + z]) {\n component.blockData[offset + z] += (readBit() << successive);\n } else {\n component.blockData[offset + z] = successiveACNextValue << successive;\n successiveACState = 0;\n }\n break;\n case 4: // eob\n if (component.blockData[offset + z]) {\n component.blockData[offset + z] += (readBit() << successive);\n }\n break;\n }\n k++;\n }\n if (successiveACState === 4) {\n eobrun--;\n if (eobrun === 0)\n successiveACState = 0;\n }\n }\n\n function decodeMcu(component, decode, mcu, row, col) {\n var mcuRow = (mcu / mcusPerLine) | 0;\n var mcuCol = mcu % mcusPerLine;\n var blockRow = mcuRow * component.v + row;\n var blockCol = mcuCol * component.h + col;\n var offset = getBlockBufferOffset(component, blockRow, blockCol);\n decode(component, offset);\n }\n\n function decodeBlock(component, decode, mcu) {\n var blockRow = (mcu / component.blocksPerLine) | 0;\n var blockCol = mcu % component.blocksPerLine;\n var offset = getBlockBufferOffset(component, blockRow, blockCol);\n decode(component, offset);\n }\n\n var componentsLength = components.length;\n var component, i, j, k, n;\n var decodeFn;\n if (progressive) {\n if (spectralStart === 0)\n decodeFn = successivePrev === 0 ? decodeDCFirst : decodeDCSuccessive;\n else\n decodeFn = successivePrev === 0 ? decodeACFirst : decodeACSuccessive;\n } else {\n decodeFn = decodeBaseline;\n }\n\n var mcu = 0, marker;\n var mcuExpected;\n if (componentsLength == 1) {\n mcuExpected = components[0].blocksPerLine * components[0].blocksPerColumn;\n } else {\n mcuExpected = mcusPerLine * frame.mcusPerColumn;\n }\n if (!resetInterval) {\n resetInterval = mcuExpected;\n }\n\n var h, v;\n while (mcu < mcuExpected) {\n // reset interval stuff\n for (i = 0; i < componentsLength; i++) {\n components[i].pred = 0;\n }\n eobrun = 0;\n\n if (componentsLength == 1) {\n component = components[0];\n for (n = 0; n < resetInterval; n++) {\n decodeBlock(component, decodeFn, mcu);\n mcu++;\n }\n } else {\n for (n = 0; n < resetInterval; n++) {\n for (i = 0; i < componentsLength; i++) {\n component = components[i];\n h = component.h;\n v = component.v;\n for (j = 0; j < v; j++) {\n for (k = 0; k < h; k++) {\n decodeMcu(component, decodeFn, mcu, j, k);\n }\n }\n }\n mcu++;\n }\n }\n\n // find marker\n bitsCount = 0;\n marker = (data[offset] << 8) | data[offset + 1];\n if (marker <= 0xFF00) {\n throw \"marker was not found\";\n }\n\n if (marker >= 0xFFD0 && marker <= 0xFFD7) { // RSTx\n offset += 2;\n } else {\n break;\n }\n }\n\n return offset - startOffset;\n }\n\n // A port of poppler's IDCT method which in turn is taken from:\n // Christoph Loeffler, Adriaan Ligtenberg, George S. Moschytz,\n // \"Practical Fast 1-D DCT Algorithms with 11 Multiplications\",\n // IEEE Intl. Conf. on Acoustics, Speech & Signal Processing, 1989,\n // 988-991.\n function quantizeAndInverse(component, blockBufferOffset, p) {\n var qt = component.quantizationTable;\n var v0, v1, v2, v3, v4, v5, v6, v7, t;\n var i;\n\n // dequant\n for (i = 0; i < 64; i++) {\n p[i] = component.blockData[blockBufferOffset + i] * qt[i];\n }\n\n // inverse DCT on rows\n for (i = 0; i < 8; ++i) {\n var row = 8 * i;\n\n // check for all-zero AC coefficients\n if (p[1 + row] === 0 && p[2 + row] === 0 && p[3 + row] === 0 &&\n p[4 + row] === 0 && p[5 + row] === 0 && p[6 + row] === 0 &&\n p[7 + row] === 0) {\n t = (dctSqrt2 * p[0 + row] + 512) >> 10;\n p[0 + row] = t;\n p[1 + row] = t;\n p[2 + row] = t;\n p[3 + row] = t;\n p[4 + row] = t;\n p[5 + row] = t;\n p[6 + row] = t;\n p[7 + row] = t;\n continue;\n }\n\n // stage 4\n v0 = (dctSqrt2 * p[0 + row] + 128) >> 8;\n v1 = (dctSqrt2 * p[4 + row] + 128) >> 8;\n v2 = p[2 + row];\n v3 = p[6 + row];\n v4 = (dctSqrt1d2 * (p[1 + row] - p[7 + row]) + 128) >> 8;\n v7 = (dctSqrt1d2 * (p[1 + row] + p[7 + row]) + 128) >> 8;\n v5 = p[3 + row] << 4;\n v6 = p[5 + row] << 4;\n\n // stage 3\n t = (v0 - v1 + 1) >> 1;\n v0 = (v0 + v1 + 1) >> 1;\n v1 = t;\n t = (v2 * dctSin6 + v3 * dctCos6 + 128) >> 8;\n v2 = (v2 * dctCos6 - v3 * dctSin6 + 128) >> 8;\n v3 = t;\n t = (v4 - v6 + 1) >> 1;\n v4 = (v4 + v6 + 1) >> 1;\n v6 = t;\n t = (v7 + v5 + 1) >> 1;\n v5 = (v7 - v5 + 1) >> 1;\n v7 = t;\n\n // stage 2\n t = (v0 - v3 + 1) >> 1;\n v0 = (v0 + v3 + 1) >> 1;\n v3 = t;\n t = (v1 - v2 + 1) >> 1;\n v1 = (v1 + v2 + 1) >> 1;\n v2 = t;\n t = (v4 * dctSin3 + v7 * dctCos3 + 2048) >> 12;\n v4 = (v4 * dctCos3 - v7 * dctSin3 + 2048) >> 12;\n v7 = t;\n t = (v5 * dctSin1 + v6 * dctCos1 + 2048) >> 12;\n v5 = (v5 * dctCos1 - v6 * dctSin1 + 2048) >> 12;\n v6 = t;\n\n // stage 1\n p[0 + row] = v0 + v7;\n p[7 + row] = v0 - v7;\n p[1 + row] = v1 + v6;\n p[6 + row] = v1 - v6;\n p[2 + row] = v2 + v5;\n p[5 + row] = v2 - v5;\n p[3 + row] = v3 + v4;\n p[4 + row] = v3 - v4;\n }\n\n // inverse DCT on columns\n for (i = 0; i < 8; ++i) {\n var col = i;\n\n // check for all-zero AC coefficients\n if (p[1 * 8 + col] === 0 && p[2 * 8 + col] === 0 && p[3 * 8 + col] === 0 &&\n p[4 * 8 + col] === 0 && p[5 * 8 + col] === 0 && p[6 * 8 + col] === 0 &&\n p[7 * 8 + col] === 0) {\n t = (dctSqrt2 * p[i + 0] + 8192) >> 14;\n p[0 * 8 + col] = t;\n p[1 * 8 + col] = t;\n p[2 * 8 + col] = t;\n p[3 * 8 + col] = t;\n p[4 * 8 + col] = t;\n p[5 * 8 + col] = t;\n p[6 * 8 + col] = t;\n p[7 * 8 + col] = t;\n continue;\n }\n\n // stage 4\n v0 = (dctSqrt2 * p[0 * 8 + col] + 2048) >> 12;\n v1 = (dctSqrt2 * p[4 * 8 + col] + 2048) >> 12;\n v2 = p[2 * 8 + col];\n v3 = p[6 * 8 + col];\n v4 = (dctSqrt1d2 * (p[1 * 8 + col] - p[7 * 8 + col]) + 2048) >> 12;\n v7 = (dctSqrt1d2 * (p[1 * 8 + col] + p[7 * 8 + col]) + 2048) >> 12;\n v5 = p[3 * 8 + col];\n v6 = p[5 * 8 + col];\n\n // stage 3\n t = (v0 - v1 + 1) >> 1;\n v0 = (v0 + v1 + 1) >> 1;\n v1 = t;\n t = (v2 * dctSin6 + v3 * dctCos6 + 2048) >> 12;\n v2 = (v2 * dctCos6 - v3 * dctSin6 + 2048) >> 12;\n v3 = t;\n t = (v4 - v6 + 1) >> 1;\n v4 = (v4 + v6 + 1) >> 1;\n v6 = t;\n t = (v7 + v5 + 1) >> 1;\n v5 = (v7 - v5 + 1) >> 1;\n v7 = t;\n\n // stage 2\n t = (v0 - v3 + 1) >> 1;\n v0 = (v0 + v3 + 1) >> 1;\n v3 = t;\n t = (v1 - v2 + 1) >> 1;\n v1 = (v1 + v2 + 1) >> 1;\n v2 = t;\n t = (v4 * dctSin3 + v7 * dctCos3 + 2048) >> 12;\n v4 = (v4 * dctCos3 - v7 * dctSin3 + 2048) >> 12;\n v7 = t;\n t = (v5 * dctSin1 + v6 * dctCos1 + 2048) >> 12;\n v5 = (v5 * dctCos1 - v6 * dctSin1 + 2048) >> 12;\n v6 = t;\n\n // stage 1\n p[0 * 8 + col] = v0 + v7;\n p[7 * 8 + col] = v0 - v7;\n p[1 * 8 + col] = v1 + v6;\n p[6 * 8 + col] = v1 - v6;\n p[2 * 8 + col] = v2 + v5;\n p[5 * 8 + col] = v2 - v5;\n p[3 * 8 + col] = v3 + v4;\n p[4 * 8 + col] = v3 - v4;\n }\n\n // convert to 8-bit integers\n for (i = 0; i < 64; ++i) {\n var index = blockBufferOffset + i;\n var q = p[i];\n q = (q <= -2056 / component.bitConversion) ? 0 :\n (q >= 2024 / component.bitConversion) ? 255 / component.bitConversion :\n (q + 2056 / component.bitConversion) >> 4;\n component.blockData[index] = q;\n }\n }\n\n function buildComponentData(frame, component) {\n var lines = [];\n var blocksPerLine = component.blocksPerLine;\n var blocksPerColumn = component.blocksPerColumn;\n var samplesPerLine = blocksPerLine << 3;\n var computationBuffer = new Int32Array(64);\n\n var i, j, ll = 0;\n for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) {\n for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) {\n var offset = getBlockBufferOffset(component, blockRow, blockCol);\n quantizeAndInverse(component, offset, computationBuffer);\n }\n }\n return component.blockData;\n }\n\n function clampToUint8(a) {\n return a <= 0 ? 0 : a >= 255 ? 255 : a | 0;\n }\n\n constructor.prototype = {\n load: function load(path) {\n var handleData = (function (data) {\n this.parse(data);\n if (this.onload)\n this.onload();\n }).bind(this);\n\n if (path.indexOf(\"data:\") > -1) {\n var offset = path.indexOf(\"base64,\") + 7;\n var data = atob(path.substring(offset));\n var arr = new Uint8Array(data.length);\n for (var i = data.length - 1; i >= 0; i--) {\n arr[i] = data.charCodeAt(i);\n }\n handleData(data);\n } else {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", path, true);\n xhr.responseType = \"arraybuffer\";\n xhr.onload = (function () {\n // TODO catch parse error\n var data = new Uint8Array(xhr.response);\n handleData(data);\n }).bind(this);\n xhr.send(null);\n }\n },\n parse: function parse(data) {\n\n function readUint16() {\n var value = (data[offset] << 8) | data[offset + 1];\n offset += 2;\n return value;\n }\n\n function readDataBlock() {\n var length = readUint16();\n var array = data.subarray(offset, offset + length - 2);\n offset += array.length;\n return array;\n }\n\n function prepareComponents(frame) {\n var mcusPerLine = Math.ceil(frame.samplesPerLine / 8 / frame.maxH);\n var mcusPerColumn = Math.ceil(frame.scanLines / 8 / frame.maxV);\n for (var i = 0; i < frame.components.length; i++) {\n component = frame.components[i];\n var blocksPerLine = Math.ceil(Math.ceil(frame.samplesPerLine / 8) * component.h / frame.maxH);\n var blocksPerColumn = Math.ceil(Math.ceil(frame.scanLines / 8) * component.v / frame.maxV);\n var blocksPerLineForMcu = mcusPerLine * component.h;\n var blocksPerColumnForMcu = mcusPerColumn * component.v;\n\n var blocksBufferSize = 64 * blocksPerColumnForMcu * (blocksPerLineForMcu + 1);\n component.blockData = new Int16Array(blocksBufferSize);\n component.blocksPerLine = blocksPerLine;\n component.blocksPerColumn = blocksPerColumn;\n }\n frame.mcusPerLine = mcusPerLine;\n frame.mcusPerColumn = mcusPerColumn;\n }\n\n var offset = 0, length = data.length;\n var jfif = null;\n var adobe = null;\n var pixels = null;\n var frame, resetInterval;\n var quantizationTables = [];\n var huffmanTablesAC = [], huffmanTablesDC = [];\n var fileMarker = readUint16();\n if (fileMarker != 0xFFD8) { // SOI (Start of Image)\n throw \"SOI not found\";\n }\n\n fileMarker = readUint16();\n while (fileMarker != 0xFFD9) { // EOI (End of image)\n var i, j, l;\n switch (fileMarker) {\n case 0xFFE0: // APP0 (Application Specific)\n case 0xFFE1: // APP1\n case 0xFFE2: // APP2\n case 0xFFE3: // APP3\n case 0xFFE4: // APP4\n case 0xFFE5: // APP5\n case 0xFFE6: // APP6\n case 0xFFE7: // APP7\n case 0xFFE8: // APP8\n case 0xFFE9: // APP9\n case 0xFFEA: // APP10\n case 0xFFEB: // APP11\n case 0xFFEC: // APP12\n case 0xFFED: // APP13\n case 0xFFEE: // APP14\n case 0xFFEF: // APP15\n case 0xFFFE: // COM (Comment)\n var appData = readDataBlock();\n\n if (fileMarker === 0xFFE0) {\n if (appData[0] === 0x4A && appData[1] === 0x46 && appData[2] === 0x49 &&\n appData[3] === 0x46 && appData[4] === 0) { // 'JFIF\\x00'\n jfif = {\n version: {major: appData[5], minor: appData[6]},\n densityUnits: appData[7],\n xDensity: (appData[8] << 8) | appData[9],\n yDensity: (appData[10] << 8) | appData[11],\n thumbWidth: appData[12],\n thumbHeight: appData[13],\n thumbData: appData.subarray(14, 14 + 3 * appData[12] * appData[13])\n };\n }\n }\n // TODO APP1 - Exif\n if (fileMarker === 0xFFEE) {\n if (appData[0] === 0x41 && appData[1] === 0x64 && appData[2] === 0x6F &&\n appData[3] === 0x62 && appData[4] === 0x65 && appData[5] === 0) { // 'Adobe\\x00'\n adobe = {\n version: appData[6],\n flags0: (appData[7] << 8) | appData[8],\n flags1: (appData[9] << 8) | appData[10],\n transformCode: appData[11]\n };\n }\n }\n break;\n\n case 0xFFDB: // DQT (Define Quantization Tables)\n var quantizationTablesLength = readUint16();\n var quantizationTablesEnd = quantizationTablesLength + offset - 2;\n while (offset < quantizationTablesEnd) {\n var quantizationTableSpec = data[offset++];\n var tableData = new Int32Array(64);\n if ((quantizationTableSpec >> 4) === 0) { // 8 bit values\n for (j = 0; j < 64; j++) {\n var z = dctZigZag[j];\n tableData[z] = data[offset++];\n }\n } else if ((quantizationTableSpec >> 4) === 1) { //16 bit\n for (j = 0; j < 64; j++) {\n var zz = dctZigZag[j];\n tableData[zz] = readUint16();\n }\n } else\n throw \"DQT: invalid table spec\";\n quantizationTables[quantizationTableSpec & 15] = tableData;\n }\n break;\n\n case 0xFFC0: // SOF0 (Start of Frame, Baseline DCT)\n case 0xFFC1: // SOF1 (Start of Frame, Extended DCT)\n case 0xFFC2: // SOF2 (Start of Frame, Progressive DCT)\n if (frame) {\n throw \"Only single frame JPEGs supported\";\n }\n readUint16(); // skip data length\n frame = {};\n frame.extended = (fileMarker === 0xFFC1);\n frame.progressive = (fileMarker === 0xFFC2);\n frame.precision = data[offset++];\n frame.scanLines = readUint16();\n frame.samplesPerLine = readUint16();\n frame.components = [];\n frame.componentIds = {};\n var componentsCount = data[offset++], componentId;\n var maxH = 0, maxV = 0;\n for (i = 0; i < componentsCount; i++) {\n componentId = data[offset];\n var h = data[offset + 1] >> 4;\n var v = data[offset + 1] & 15;\n if (maxH < h)\n maxH = h;\n if (maxV < v)\n maxV = v;\n var qId = data[offset + 2];\n l = frame.components.push({\n h: h,\n v: v,\n quantizationTable: quantizationTables[qId],\n quantizationTableId: qId,\n bitConversion: 255 / ((1 << frame.precision) - 1)\n });\n frame.componentIds[componentId] = l - 1;\n offset += 3;\n }\n frame.maxH = maxH;\n frame.maxV = maxV;\n prepareComponents(frame);\n break;\n\n case 0xFFC4: // DHT (Define Huffman Tables)\n var huffmanLength = readUint16();\n for (i = 2; i < huffmanLength; ) {\n var huffmanTableSpec = data[offset++];\n var codeLengths = new Uint8Array(16);\n var codeLengthSum = 0;\n for (j = 0; j < 16; j++, offset++)\n codeLengthSum += (codeLengths[j] = data[offset]);\n var huffmanValues = new Uint8Array(codeLengthSum);\n for (j = 0; j < codeLengthSum; j++, offset++)\n huffmanValues[j] = data[offset];\n i += 17 + codeLengthSum;\n\n ((huffmanTableSpec >> 4) === 0 ?\n huffmanTablesDC : huffmanTablesAC)[huffmanTableSpec & 15] =\n buildHuffmanTable(codeLengths, huffmanValues);\n }\n break;\n\n case 0xFFDD: // DRI (Define Restart Interval)\n readUint16(); // skip data length\n resetInterval = readUint16();\n break;\n\n case 0xFFDA: // SOS (Start of Scan)\n var scanLength = readUint16();\n var selectorsCount = data[offset++];\n var components = [], component;\n for (i = 0; i < selectorsCount; i++) {\n var componentIndex = frame.componentIds[data[offset++]];\n component = frame.components[componentIndex];\n var tableSpec = data[offset++];\n component.huffmanTableDC = huffmanTablesDC[tableSpec >> 4];\n component.huffmanTableAC = huffmanTablesAC[tableSpec & 15];\n components.push(component);\n }\n var spectralStart = data[offset++];\n var spectralEnd = data[offset++];\n var successiveApproximation = data[offset++];\n var processed = decodeScan(data, offset,\n frame, components, resetInterval,\n spectralStart, spectralEnd,\n successiveApproximation >> 4, successiveApproximation & 15);\n offset += processed;\n break;\n case 0xFFFF: // Fill bytes\n if (data[offset] !== 0xFF) { // Avoid skipping a valid marker.\n offset--;\n }\n break;\n default:\n if (data[offset - 3] == 0xFF &&\n data[offset - 2] >= 0xC0 && data[offset - 2] <= 0xFE) {\n // could be incorrect encoding -- last 0xFF byte of the previous\n // block was eaten by the encoder\n offset -= 3;\n break;\n }\n throw \"unknown JPEG marker \" + fileMarker.toString(16);\n }\n fileMarker = readUint16();\n }\n\n this.width = frame.samplesPerLine;\n this.height = frame.scanLines;\n this.jfif = jfif;\n this.adobe = adobe;\n this.components = [];\n switch (frame.components.length)\n {\n case 1:\n this.colorspace = ColorSpace.Grayscale;\n break;\n case 3:\n if (this.adobe)\n this.colorspace = ColorSpace.AdobeRGB;\n else\n this.colorspace = ColorSpace.RGB;\n break;\n case 4:\n this.colorspace = ColorSpace.CYMK;\n break;\n default:\n this.colorspace = ColorSpace.Unknown;\n }\n for (var i = 0; i < frame.components.length; i++) {\n var component = frame.components[i];\n if (!component.quantizationTable && component.quantizationTableId !== null)\n component.quantizationTable = quantizationTables[component.quantizationTableId];\n this.components.push({\n output: buildComponentData(frame, component),\n scaleX: component.h / frame.maxH,\n scaleY: component.v / frame.maxV,\n blocksPerLine: component.blocksPerLine,\n blocksPerColumn: component.blocksPerColumn,\n bitConversion: component.bitConversion\n });\n }\n },\n getData16: function getData16(width, height) {\n if (this.components.length !== 1)\n throw 'Unsupported color mode';\n var scaleX = this.width / width, scaleY = this.height / height;\n\n var component, componentScaleX, componentScaleY;\n var x, y, i;\n var offset = 0;\n var numComponents = this.components.length;\n var dataLength = width * height * numComponents;\n var data = new Uint16Array(dataLength);\n var componentLine;\n\n // lineData is reused for all components. Assume first component is\n // the biggest\n var lineData = new Uint16Array((this.components[0].blocksPerLine << 3) *\n this.components[0].blocksPerColumn * 8);\n\n // First construct image data ...\n for (i = 0; i < numComponents; i++) {\n component = this.components[i];\n var blocksPerLine = component.blocksPerLine;\n var blocksPerColumn = component.blocksPerColumn;\n var samplesPerLine = blocksPerLine << 3;\n\n var j, k, ll = 0;\n var lineOffset = 0;\n for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) {\n var scanLine = blockRow << 3;\n for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) {\n var bufferOffset = getBlockBufferOffset(component, blockRow, blockCol);\n var offset = 0, sample = blockCol << 3;\n for (j = 0; j < 8; j++) {\n var lineOffset = (scanLine + j) * samplesPerLine;\n for (k = 0; k < 8; k++) {\n lineData[lineOffset + sample + k] =\n component.output[bufferOffset + offset++];\n }\n }\n }\n }\n\n componentScaleX = component.scaleX * scaleX;\n componentScaleY = component.scaleY * scaleY;\n offset = i;\n\n var cx, cy;\n var index;\n for (y = 0; y < height; y++) {\n for (x = 0; x < width; x++) {\n cy = 0 | (y * componentScaleY);\n cx = 0 | (x * componentScaleX);\n index = cy * samplesPerLine + cx;\n data[offset] = lineData[index];\n offset += numComponents;\n }\n }\n }\n return data;\n },\n getData: function getData(width, height) {\n var scaleX = this.width / width, scaleY = this.height / height;\n\n var component, componentScaleX, componentScaleY;\n var x, y, i;\n var offset = 0;\n var Y, Cb, Cr, K, C, M, Ye, R, G, B;\n var colorTransform;\n var numComponents = this.components.length;\n var dataLength = width * height * numComponents;\n var data = new Uint8Array(dataLength);\n var componentLine;\n\n // lineData is reused for all components. Assume first component is\n // the biggest\n var lineData = new Uint8Array((this.components[0].blocksPerLine << 3) *\n this.components[0].blocksPerColumn * 8);\n\n // First construct image data ...\n for (i = 0; i < numComponents; i++) {\n component = this.components[i];\n var blocksPerLine = component.blocksPerLine;\n var blocksPerColumn = component.blocksPerColumn;\n var samplesPerLine = blocksPerLine << 3;\n\n var j, k, ll = 0;\n var lineOffset = 0;\n for (var blockRow = 0; blockRow < blocksPerColumn; blockRow++) {\n var scanLine = blockRow << 3;\n for (var blockCol = 0; blockCol < blocksPerLine; blockCol++) {\n var bufferOffset = getBlockBufferOffset(component, blockRow, blockCol);\n var offset = 0, sample = blockCol << 3;\n for (j = 0; j < 8; j++) {\n var lineOffset = (scanLine + j) * samplesPerLine;\n for (k = 0; k < 8; k++) {\n lineData[lineOffset + sample + k] =\n component.output[bufferOffset + offset++] * component.bitConversion;\n }\n }\n }\n }\n\n componentScaleX = component.scaleX * scaleX;\n componentScaleY = component.scaleY * scaleY;\n offset = i;\n\n var cx, cy;\n var index;\n for (y = 0; y < height; y++) {\n for (x = 0; x < width; x++) {\n cy = 0 | (y * componentScaleY);\n cx = 0 | (x * componentScaleX);\n index = cy * samplesPerLine + cx;\n data[offset] = lineData[index];\n offset += numComponents;\n }\n }\n }\n\n // ... then transform colors, if necessary\n switch (numComponents) {\n case 1:\n case 2:\n break;\n // no color conversion for one or two compoenents\n\n case 3:\n // The default transform for three components is true\n colorTransform = true;\n // The adobe transform marker overrides any previous setting\n if (this.adobe && this.adobe.transformCode)\n colorTransform = true;\n else if (typeof this.colorTransform !== 'undefined')\n colorTransform = !!this.colorTransform;\n\n if (colorTransform) {\n for (i = 0; i < dataLength; i += numComponents) {\n Y = data[i ];\n Cb = data[i + 1];\n Cr = data[i + 2];\n\n R = clampToUint8(Y - 179.456 + 1.402 * Cr);\n G = clampToUint8(Y + 135.459 - 0.344 * Cb - 0.714 * Cr);\n B = clampToUint8(Y - 226.816 + 1.772 * Cb);\n\n data[i ] = R;\n data[i + 1] = G;\n data[i + 2] = B;\n }\n }\n break;\n case 4:\n if (!this.adobe)\n throw 'Unsupported color mode (4 components)';\n // The default transform for four components is false\n colorTransform = false;\n // The adobe transform marker overrides any previous setting\n if (this.adobe && this.adobe.transformCode)\n colorTransform = true;\n else if (typeof this.colorTransform !== 'undefined')\n colorTransform = !!this.colorTransform;\n\n if (colorTransform) {\n for (i = 0; i < dataLength; i += numComponents) {\n Y = data[i];\n Cb = data[i + 1];\n Cr = data[i + 2];\n\n C = clampToUint8(434.456 - Y - 1.402 * Cr);\n M = clampToUint8(119.541 - Y + 0.344 * Cb + 0.714 * Cr);\n Y = clampToUint8(481.816 - Y - 1.772 * Cb);\n\n data[i ] = C;\n data[i + 1] = M;\n data[i + 2] = Y;\n // K is unchanged\n }\n }\n break;\n default:\n throw 'Unsupported color mode';\n }\n return data;\n }\n };\n\n return constructor;\n})();\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = JpegImage;\n\n/***/ }),\n\n/***/ \"../codecs/jpegLossless.js\":\n/*!*********************************!*\\\n !*** ../codecs/jpegLossless.js ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.jpeg = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o> 4) !== 0x0FFC) || (current === 0xFFC4))) { // SOF 0~15\n switch (current) {\n case 0xFFC4: // DHT\n this.huffTable.read(this.stream, this.HuffTab);\n break;\n case 0xFFCC: // DAC\n throw new Error(\"Program doesn't support arithmetic coding. (format throw new IOException)\");\n case 0xFFDB:\n this.quantTable.read(this.stream, jpeg.lossless.Decoder.TABLE);\n break;\n case 0xFFDD:\n this.restartInterval = this.readNumber();\n break;\n case 0xFFE0:\n case 0xFFE1:\n case 0xFFE2:\n case 0xFFE3:\n case 0xFFE4:\n case 0xFFE5:\n case 0xFFE6:\n case 0xFFE7:\n case 0xFFE8:\n case 0xFFE9:\n case 0xFFEA:\n case 0xFFEB:\n case 0xFFEC:\n case 0xFFED:\n case 0xFFEE:\n case 0xFFEF:\n this.readApp();\n break;\n case 0xFFFE:\n this.readComment();\n break;\n default:\n if ((current >> 8) !== 0xFF) {\n throw new Error(\"ERROR: format throw new IOException! (decode)\");\n }\n }\n\n current = this.stream.get16();\n }\n\n if ((current < 0xFFC0) || (current > 0xFFC7)) {\n throw new Error(\"ERROR: could not handle arithmetic code!\");\n }\n\n this.frame.read(this.stream);\n current = this.stream.get16();\n\n do {\n while (current !== 0x0FFDA) { // SOS\n switch (current) {\n case 0xFFC4: // DHT\n this.huffTable.read(this.stream, this.HuffTab);\n break;\n case 0xFFCC: // DAC\n throw new Error(\"Program doesn't support arithmetic coding. (format throw new IOException)\");\n case 0xFFDB:\n this.quantTable.read(this.stream, jpeg.lossless.Decoder.TABLE);\n break;\n case 0xFFDD:\n this.restartInterval = this.readNumber();\n break;\n case 0xFFE0:\n case 0xFFE1:\n case 0xFFE2:\n case 0xFFE3:\n case 0xFFE4:\n case 0xFFE5:\n case 0xFFE6:\n case 0xFFE7:\n case 0xFFE8:\n case 0xFFE9:\n case 0xFFEA:\n case 0xFFEB:\n case 0xFFEC:\n case 0xFFED:\n case 0xFFEE:\n case 0xFFEF:\n this.readApp();\n break;\n case 0xFFFE:\n this.readComment();\n break;\n default:\n if ((current >> 8) !== 0xFF) {\n throw new Error(\"ERROR: format throw new IOException! (Parser.decode)\");\n }\n }\n\n current = this.stream.get16();\n }\n\n this.precision = this.frame.precision;\n this.components = this.frame.components;\n\n if (!this.numBytes) {\n this.numBytes = parseInt(Math.ceil(this.precision / 8));\n }\n\n if (this.numBytes == 1) {\n this.mask = 0xFF;\n } else {\n this.mask = 0xFFFF;\n }\n\n this.scan.read(this.stream);\n this.numComp = this.scan.numComp;\n this.selection = this.scan.selection;\n\n if (this.numBytes === 1) {\n if (this.numComp === 3) {\n this.getter = this.getValueRGB;\n this.setter = this.setValueRGB;\n this.output = this.outputRGB;\n } else {\n this.getter = this.getValue8;\n this.setter = this.setValue8;\n this.output = this.outputSingle;\n }\n } else {\n this.getter = this.getValue16;\n this.setter = this.setValue16;\n this.output = this.outputSingle;\n }\n\n switch (this.selection) {\n case 2:\n this.selector = this.select2;\n break;\n case 3:\n this.selector = this.select3;\n break;\n case 4:\n this.selector = this.select4;\n break;\n case 5:\n this.selector = this.select5;\n break;\n case 6:\n this.selector = this.select6;\n break;\n case 7:\n this.selector = this.select7;\n break;\n default:\n this.selector = this.select1;\n break;\n }\n\n this.scanComps = this.scan.components;\n this.quantTables = this.quantTable.quantTables;\n\n for (i = 0; i < this.numComp; i+=1) {\n compN = this.scanComps[i].scanCompSel;\n this.qTab[i] = this.quantTables[this.components[compN].quantTableSel];\n this.nBlock[i] = this.components[compN].vSamp * this.components[compN].hSamp;\n this.dcTab[i] = this.HuffTab[this.scanComps[i].dcTabSel][0];\n this.acTab[i] = this.HuffTab[this.scanComps[i].acTabSel][1];\n }\n\n this.xDim = this.frame.dimX;\n this.yDim = this.frame.dimY;\n if (this.numBytes == 1) {\n this.outputData = new Uint8Array(new ArrayBuffer(this.xDim * this.yDim * this.numBytes * this.numComp));\n } else {\n this.outputData = new Uint16Array(new ArrayBuffer(this.xDim * this.yDim * this.numBytes * this.numComp));\n }\n\n scanNum+=1;\n\n while (true) { // Decode one scan\n temp[0] = 0;\n index[0] = 0;\n\n for (i = 0; i < 10; i+=1) {\n pred[i] = (1 << (this.precision - 1));\n }\n\n if (this.restartInterval === 0) {\n current = this.decodeUnit(pred, temp, index);\n\n while ((current === 0) && ((this.xLoc < this.xDim) && (this.yLoc < this.yDim))) {\n this.output(pred);\n current = this.decodeUnit(pred, temp, index);\n }\n\n break; //current=MARKER\n }\n\n for (mcuNum = 0; mcuNum < this.restartInterval; mcuNum+=1) {\n this.restarting = (mcuNum == 0);\n current = this.decodeUnit(pred, temp, index);\n this.output(pred);\n\n if (current !== 0) {\n break;\n }\n }\n\n if (current === 0) {\n if (this.markerIndex !== 0) {\n current = (0xFF00 | this.marker);\n this.markerIndex = 0;\n } else {\n current = this.stream.get16();\n }\n }\n\n if (!((current >= jpeg.lossless.Decoder.RESTART_MARKER_BEGIN) &&\n (current <= jpeg.lossless.Decoder.RESTART_MARKER_END))) {\n break; //current=MARKER\n }\n }\n\n if ((current === 0xFFDC) && (scanNum === 1)) { //DNL\n this.readNumber();\n current = this.stream.get16();\n }\n } while ((current !== 0xFFD9) && ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) && (scanNum === 0));\n\n return this.outputData;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.decodeUnit = function (prev, temp, index) {\n if (this.numComp == 1) {\n return this.decodeSingle(prev, temp, index);\n } else if (this.numComp == 3) {\n return this.decodeRGB(prev, temp, index);\n } else {\n return -1;\n }\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select1 = function (compOffset) {\n return this.getPreviousX(compOffset);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select2 = function (compOffset) {\n return this.getPreviousY(compOffset);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select3 = function (compOffset) {\n return this.getPreviousXY(compOffset);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select4 = function (compOffset) {\n return (this.getPreviousX(compOffset) + this.getPreviousY(compOffset)) - this.getPreviousXY(compOffset);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select5 = function (compOffset) {\n return this.getPreviousX(compOffset) + ((this.getPreviousY(compOffset) - this.getPreviousXY(compOffset)) >> 1);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select6 = function (compOffset) {\n return this.getPreviousY(compOffset) + ((this.getPreviousX(compOffset) - this.getPreviousXY(compOffset)) >> 1);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.select7 = function (compOffset) {\n return ((this.getPreviousX(compOffset) + this.getPreviousY(compOffset)) / 2);\n };\n\n\n\n jpeg.lossless.Decoder.prototype.decodeRGB = function (prev, temp, index) {\n /*jslint bitwise: true */\n\n var value, actab, dctab, qtab, ctrC, i, k, j;\n\n prev[0] = this.selector(0);\n prev[1] = this.selector(1);\n prev[2] = this.selector(2);\n\n for (ctrC = 0; ctrC < this.numComp; ctrC+=1) {\n qtab = this.qTab[ctrC];\n actab = this.acTab[ctrC];\n dctab = this.dcTab[ctrC];\n for (i = 0; i < this.nBlock[ctrC]; i+=1) {\n for (k = 0; k < this.IDCT_Source.length; k+=1) {\n this.IDCT_Source[k] = 0;\n }\n\n value = this.getHuffmanValue(dctab, temp, index);\n\n if (value >= 0xFF00) {\n return value;\n }\n\n prev[ctrC] = this.IDCT_Source[0] = prev[ctrC] + this.getn(index, value, temp, index);\n this.IDCT_Source[0] *= qtab[0];\n\n for (j = 1; j < 64; j+=1) {\n value = this.getHuffmanValue(actab, temp, index);\n\n if (value >= 0xFF00) {\n return value;\n }\n\n j += (value >> 4);\n\n if ((value & 0x0F) === 0) {\n if ((value >> 4) === 0) {\n break;\n }\n } else {\n this.IDCT_Source[jpeg.lossless.Decoder.IDCT_P[j]] = this.getn(index, value & 0x0F, temp, index) * qtab[j];\n }\n }\n }\n }\n\n return 0;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.decodeSingle = function (prev, temp, index) {\n /*jslint bitwise: true */\n\n var value, i, n, nRestart;\n\n if (this.restarting) {\n this.restarting = false;\n prev[0] = (1 << (this.frame.precision - 1));\n } else {\n prev[0] = this.selector();\n }\n\n for (i = 0; i < this.nBlock[0]; i+=1) {\n value = this.getHuffmanValue(this.dcTab[0], temp, index);\n if (value >= 0xFF00) {\n return value;\n }\n\n n = this.getn(prev, value, temp, index);\n nRestart = (n >> 8);\n\n if ((nRestart >= jpeg.lossless.Decoder.RESTART_MARKER_BEGIN) && (nRestart <= jpeg.lossless.Decoder.RESTART_MARKER_END)) {\n return nRestart;\n }\n\n prev[0] += n;\n }\n\n return 0;\n };\n\n\n\n // Huffman table for fast search: (HuffTab) 8-bit Look up table 2-layer search architecture, 1st-layer represent 256 node (8 bits) if codeword-length > 8\n // bits, then the entry of 1st-layer = (# of 2nd-layer table) | MSB and it is stored in the 2nd-layer Size of tables in each layer are 256.\n // HuffTab[*][*][0-256] is always the only 1st-layer table.\n //\n // An entry can be: (1) (# of 2nd-layer table) | MSB , for code length > 8 in 1st-layer (2) (Code length) << 8 | HuffVal\n //\n // HuffmanValue(table HuffTab[x][y] (ex) HuffmanValue(HuffTab[1][0],...)\n // ):\n // return: Huffman Value of table\n // 0xFF?? if it receives a MARKER\n // Parameter: table HuffTab[x][y] (ex) HuffmanValue(HuffTab[1][0],...)\n // temp temp storage for remainded bits\n // index index to bit of temp\n // in FILE pointer\n // Effect:\n // temp store new remainded bits\n // index change to new index\n // in change to new position\n // NOTE:\n // Initial by temp=0; index=0;\n // NOTE: (explain temp and index)\n // temp: is always in the form at calling time or returning time\n // | byte 4 | byte 3 | byte 2 | byte 1 |\n // | 0 | 0 | 00000000 | 00000??? | if not a MARKER\n // ^index=3 (from 0 to 15)\n // 321\n // NOTE (marker and marker_index):\n // If get a MARKER from 'in', marker=the low-byte of the MARKER\n // and marker_index=9\n // If marker_index=9 then index is always > 8, or HuffmanValue()\n // will not be called\n jpeg.lossless.Decoder.prototype.getHuffmanValue = function (table, temp, index) {\n /*jslint bitwise: true */\n\n var code, input, mask;\n mask = 0xFFFF;\n\n if (index[0] < 8) {\n temp[0] <<= 8;\n input = this.stream.get8();\n if (input === 0xFF) {\n this.marker = this.stream.get8();\n if (this.marker !== 0) {\n this.markerIndex = 9;\n }\n }\n temp[0] |= input;\n } else {\n index[0] -= 8;\n }\n\n code = table[temp[0] >> index[0]];\n\n if ((code & jpeg.lossless.Decoder.MSB) !== 0) {\n if (this.markerIndex !== 0) {\n this.markerIndex = 0;\n return 0xFF00 | this.marker;\n }\n\n temp[0] &= (mask >> (16 - index[0]));\n temp[0] <<= 8;\n input = this.stream.get8();\n\n if (input === 0xFF) {\n this.marker = this.stream.get8();\n if (this.marker !== 0) {\n this.markerIndex = 9;\n }\n }\n\n temp[0] |= input;\n code = table[((code & 0xFF) * 256) + (temp[0] >> index[0])];\n index[0] += 8;\n }\n\n index[0] += 8 - (code >> 8);\n\n if (index[0] < 0) {\n throw new Error(\"index=\" + index[0] + \" temp=\" + temp[0] + \" code=\" + code + \" in HuffmanValue()\");\n }\n\n if (index[0] < this.markerIndex) {\n this.markerIndex = 0;\n return 0xFF00 | this.marker;\n }\n\n temp[0] &= (mask >> (16 - index[0]));\n return code & 0xFF;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.getn = function (PRED, n, temp, index) {\n /*jslint bitwise: true */\n\n var result, one, n_one, mask, input;\n one = 1;\n n_one = -1;\n mask = 0xFFFF;\n\n if (n === 0) {\n return 0;\n }\n\n if (n === 16) {\n if (PRED[0] >= 0) {\n return -32768;\n } else {\n return 32768;\n }\n }\n\n index[0] -= n;\n\n if (index[0] >= 0) {\n if ((index[0] < this.markerIndex) && !this.isLastPixel()) { // this was corrupting the last pixel in some cases\n this.markerIndex = 0;\n return (0xFF00 | this.marker) << 8;\n }\n\n result = temp[0] >> index[0];\n temp[0] &= (mask >> (16 - index[0]));\n } else {\n temp[0] <<= 8;\n input = this.stream.get8();\n\n if (input === 0xFF) {\n this.marker = this.stream.get8();\n if (this.marker !== 0) {\n this.markerIndex = 9;\n }\n }\n\n temp[0] |= input;\n index[0] += 8;\n\n if (index[0] < 0) {\n if (this.markerIndex !== 0) {\n this.markerIndex = 0;\n return (0xFF00 | this.marker) << 8;\n }\n\n temp[0] <<= 8;\n input = this.stream.get8();\n\n if (input === 0xFF) {\n this.marker = this.stream.get8();\n if (this.marker !== 0) {\n this.markerIndex = 9;\n }\n }\n\n temp[0] |= input;\n index[0] += 8;\n }\n\n if (index[0] < 0) {\n throw new Error(\"index=\" + index[0] + \" in getn()\");\n }\n\n if (index[0] < this.markerIndex) {\n this.markerIndex = 0;\n return (0xFF00 | this.marker) << 8;\n }\n\n result = temp[0] >> index[0];\n temp[0] &= (mask >> (16 - index[0]));\n }\n\n if (result < (one << (n - 1))) {\n result += (n_one << n) + 1;\n }\n\n return result;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.getPreviousX = function (compOffset) {\n /*jslint bitwise: true */\n\n if (this.xLoc > 0) {\n return this.getter((((this.yLoc * this.xDim) + this.xLoc) - 1), compOffset);\n } else if (this.yLoc > 0) {\n return this.getPreviousY(compOffset);\n } else {\n return (1 << (this.frame.precision - 1));\n }\n };\n\n\n\n jpeg.lossless.Decoder.prototype.getPreviousXY = function (compOffset) {\n /*jslint bitwise: true */\n\n if ((this.xLoc > 0) && (this.yLoc > 0)) {\n return this.getter(((((this.yLoc - 1) * this.xDim) + this.xLoc) - 1), compOffset);\n } else {\n return this.getPreviousY(compOffset);\n }\n };\n\n\n\n jpeg.lossless.Decoder.prototype.getPreviousY = function (compOffset) {\n /*jslint bitwise: true */\n\n if (this.yLoc > 0) {\n return this.getter((((this.yLoc - 1) * this.xDim) + this.xLoc), compOffset);\n } else {\n return this.getPreviousX(compOffset);\n }\n };\n\n\n\n jpeg.lossless.Decoder.prototype.isLastPixel = function () {\n return (this.xLoc === (this.xDim - 1)) && (this.yLoc === (this.yDim - 1));\n };\n\n\n\n jpeg.lossless.Decoder.prototype.outputSingle = function (PRED) {\n if ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) {\n this.setter((((this.yLoc * this.xDim) + this.xLoc)), this.mask & PRED[0]);\n\n this.xLoc+=1;\n\n if (this.xLoc >= this.xDim) {\n this.yLoc+=1;\n this.xLoc = 0;\n }\n }\n };\n\n\n\n jpeg.lossless.Decoder.prototype.outputRGB = function (PRED) {\n var offset = ((this.yLoc * this.xDim) + this.xLoc);\n\n if ((this.xLoc < this.xDim) && (this.yLoc < this.yDim)) {\n this.setter(offset, PRED[0], 0);\n this.setter(offset, PRED[1], 1);\n this.setter(offset, PRED[2], 2);\n\n this.xLoc+=1;\n\n if (this.xLoc >= this.xDim) {\n this.yLoc+=1;\n this.xLoc = 0;\n }\n }\n };\n\n jpeg.lossless.Decoder.prototype.setValue8 = function (index, val) {\n this.outputData[index] = val;\n };\n\n jpeg.lossless.Decoder.prototype.getValue8 = function (index) {\n return this.outputData[index]; // mask should not be necessary because outputData is either Int8Array or Int16Array\n };\n\n var littleEndian = (function() {\n var buffer = new ArrayBuffer(2);\n new DataView(buffer).setInt16(0, 256, true /* littleEndian */);\n // Int16Array uses the platform's endianness.\n return new Int16Array(buffer)[0] === 256;\n })();\n\n if (littleEndian) {\n // just reading from an array is fine then. Int16Array will use platform endianness.\n jpeg.lossless.Decoder.prototype.setValue16 = jpeg.lossless.Decoder.prototype.setValue8;\n jpeg.lossless.Decoder.prototype.getValue16 = jpeg.lossless.Decoder.prototype.getValue8;\n }\n else {\n // If platform is big-endian, we will need to convert to little-endian\n jpeg.lossless.Decoder.prototype.setValue16 = function (index, val) {\n this.outputData[index] = ((val & 0xFF) << 8) | ((val >> 8) & 0xFF);\n };\n\n jpeg.lossless.Decoder.prototype.getValue16 = function (index) {\n var val = this.outputData[index];\n return ((val & 0xFF) << 8) | ((val >> 8) & 0xFF);\n };\n }\n\n jpeg.lossless.Decoder.prototype.setValueRGB = function (index, val, compOffset) {\n // this.outputData.setUint8(index * 3 + compOffset, val);\n this.outputData[index * 3 + compOffset] = val;\n };\n\n jpeg.lossless.Decoder.prototype.getValueRGB = function (index, compOffset) {\n // return this.outputData.getUint8(index * 3 + compOffset);\n return this.outputData[index * 3 + compOffset];\n };\n\n\n\n jpeg.lossless.Decoder.prototype.readApp = function() {\n var count = 0, length = this.stream.get16();\n count += 2;\n\n while (count < length) {\n this.stream.get8();\n count+=1;\n }\n\n return length;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.readComment = function () {\n var sb = \"\", count = 0, length;\n\n length = this.stream.get16();\n count += 2;\n\n while (count < length) {\n sb += this.stream.get8();\n count+=1;\n }\n\n return sb;\n };\n\n\n\n jpeg.lossless.Decoder.prototype.readNumber = function() {\n var Ld = this.stream.get16();\n\n if (Ld !== 4) {\n throw new Error(\"ERROR: Define number format throw new IOException [Ld!=4]\");\n }\n\n return this.stream.get16();\n };\n\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.Decoder;\n }\n\n },{\"./data-stream.js\":2,\"./frame-header.js\":4,\"./huffman-table.js\":5,\"./quantization-table.js\":7,\"./scan-header.js\":9,\"./utils.js\":10}],4:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n jpeg.lossless.ComponentSpec = jpeg.lossless.ComponentSpec || ((typeof require !== 'undefined') ? require('./component-spec.js') : null);\n jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null);\n\n\n /*** Constructor ***/\n jpeg.lossless.FrameHeader = jpeg.lossless.FrameHeader || function () {\n this.components = []; // Components\n this.dimX = 0; // Number of samples per line\n this.dimY = 0; // Number of lines\n this.numComp = 0; // Number of component in the frame\n this.precision = 0; // Sample Precision (from the original image)\n };\n\n\n\n /*** Prototype Methods ***/\n\n jpeg.lossless.FrameHeader.prototype.read = function (data) {\n /*jslint bitwise: true */\n\n var count = 0, length, i, c, temp;\n\n length = data.get16();\n count += 2;\n\n this.precision = data.get8();\n count+=1;\n\n this.dimY = data.get16();\n count += 2;\n\n this.dimX = data.get16();\n count += 2;\n\n this.numComp = data.get8();\n count+=1;\n for (i = 1; i <= this.numComp; i+=1) {\n if (count > length) {\n throw new Error(\"ERROR: frame format error\");\n }\n\n c = data.get8();\n count+=1;\n\n if (count >= length) {\n throw new Error(\"ERROR: frame format error [c>=Lf]\");\n }\n\n temp = data.get8();\n count+=1;\n\n if (!this.components[c]) {\n this.components[c] = new jpeg.lossless.ComponentSpec();\n }\n\n this.components[c].hSamp = temp >> 4;\n this.components[c].vSamp = temp & 0x0F;\n this.components[c].quantTableSel = data.get8();\n count+=1;\n }\n\n if (count !== length) {\n throw new Error(\"ERROR: frame format error [Lf!=count]\");\n }\n\n return 1;\n };\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.FrameHeader;\n }\n\n },{\"./component-spec.js\":1,\"./data-stream.js\":2}],5:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null);\n jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null);\n\n\n /*** Constructor ***/\n jpeg.lossless.HuffmanTable = jpeg.lossless.HuffmanTable || function () {\n this.l = jpeg.lossless.Utils.createArray(4, 2, 16);\n this.th = [];\n this.v = jpeg.lossless.Utils.createArray(4, 2, 16, 200);\n this.tc = jpeg.lossless.Utils.createArray(4, 2);\n\n this.tc[0][0] = 0;\n this.tc[1][0] = 0;\n this.tc[2][0] = 0;\n this.tc[3][0] = 0;\n this.tc[0][1] = 0;\n this.tc[1][1] = 0;\n this.tc[2][1] = 0;\n this.tc[3][1] = 0;\n this.th[0] = 0;\n this.th[1] = 0;\n this.th[2] = 0;\n this.th[3] = 0;\n };\n\n\n\n /*** Static Pseudo-constants ***/\n\n jpeg.lossless.HuffmanTable.MSB = 0x80000000;\n\n\n /*** Prototype Methods ***/\n\n jpeg.lossless.HuffmanTable.prototype.read = function(data, HuffTab) {\n /*jslint bitwise: true */\n\n var count = 0, length, temp, t, c, i, j;\n\n length = data.get16();\n count += 2;\n\n while (count < length) {\n temp = data.get8();\n count+=1;\n t = temp & 0x0F;\n if (t > 3) {\n throw new Error(\"ERROR: Huffman table ID > 3\");\n }\n\n c = temp >> 4;\n if (c > 2) {\n throw new Error(\"ERROR: Huffman table [Table class > 2 ]\");\n }\n\n this.th[t] = 1;\n this.tc[t][c] = 1;\n\n for (i = 0; i < 16; i+=1) {\n this.l[t][c][i] = data.get8();\n count+=1;\n }\n\n for (i = 0; i < 16; i+=1) {\n for (j = 0; j < this.l[t][c][i]; j+=1) {\n if (count > length) {\n throw new Error(\"ERROR: Huffman table format error [count>Lh]\");\n }\n\n this.v[t][c][i][j] = data.get8();\n count+=1;\n }\n }\n }\n\n if (count !== length) {\n throw new Error(\"ERROR: Huffman table format error [count!=Lf]\");\n }\n\n for (i = 0; i < 4; i+=1) {\n for (j = 0; j < 2; j+=1) {\n if (this.tc[i][j] !== 0) {\n this.buildHuffTable(HuffTab[i][j], this.l[i][j], this.v[i][j]);\n }\n }\n }\n\n return 1;\n };\n\n\n\n // Build_HuffTab()\n // Parameter: t table ID\n // c table class ( 0 for DC, 1 for AC )\n // L[i] # of codewords which length is i\n // V[i][j] Huffman Value (length=i)\n // Effect:\n // build up HuffTab[t][c] using L and V.\n jpeg.lossless.HuffmanTable.prototype.buildHuffTable = function(tab, L, V) {\n /*jslint bitwise: true */\n\n var currentTable, temp, k, i, j, n;\n temp = 256;\n k = 0;\n\n for (i = 0; i < 8; i+=1) { // i+1 is Code length\n for (j = 0; j < L[i]; j+=1) {\n for (n = 0; n < (temp >> (i + 1)); n+=1) {\n tab[k] = V[i][j] | ((i + 1) << 8);\n k+=1;\n }\n }\n }\n\n for (i = 1; k < 256; i+=1, k+=1) {\n tab[k] = i | jpeg.lossless.HuffmanTable.MSB;\n }\n\n currentTable = 1;\n k = 0;\n\n for (i = 8; i < 16; i+=1) { // i+1 is Code length\n for (j = 0; j < L[i]; j+=1) {\n for (n = 0; n < (temp >> (i - 7)); n+=1) {\n tab[(currentTable * 256) + k] = V[i][j] | ((i + 1) << 8);\n k+=1;\n }\n\n if (k >= 256) {\n if (k > 256) {\n throw new Error(\"ERROR: Huffman table error(1)!\");\n }\n\n k = 0;\n currentTable+=1;\n }\n }\n }\n };\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.HuffmanTable;\n }\n\n },{\"./data-stream.js\":2,\"./utils.js\":10}],6:[function(require,module,exports){\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ****/\n\n /**\n * jpeg\n * @type {*|{}}\n */\n var jpeg = jpeg || {};\n\n /**\n * jpeg.lossless\n * @type {*|{}}\n */\n jpeg.lossless = jpeg.lossless || {};\n\n\n jpeg.lossless.ComponentSpec = jpeg.lossless.ComponentSpec || ((typeof require !== 'undefined') ? require('./component-spec.js') : null);\n jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null);\n jpeg.lossless.Decoder = jpeg.lossless.Decoder || ((typeof require !== 'undefined') ? require('./decoder.js') : null);\n jpeg.lossless.FrameHeader = jpeg.lossless.FrameHeader || ((typeof require !== 'undefined') ? require('./frame-header.js') : null);\n jpeg.lossless.HuffmanTable = jpeg.lossless.HuffmanTable || ((typeof require !== 'undefined') ? require('./huffman-table.js') : null);\n jpeg.lossless.QuantizationTable = jpeg.lossless.QuantizationTable || ((typeof require !== 'undefined') ? require('./quantization-table.js') : null);\n jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || ((typeof require !== 'undefined') ? require('./scan-component.js') : null);\n jpeg.lossless.ScanHeader = jpeg.lossless.ScanHeader || ((typeof require !== 'undefined') ? require('./scan-header.js') : null);\n jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null);\n\n\n /*** Exports ***/\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg;\n }\n\n },{\"./component-spec.js\":1,\"./data-stream.js\":2,\"./decoder.js\":3,\"./frame-header.js\":4,\"./huffman-table.js\":5,\"./quantization-table.js\":7,\"./scan-component.js\":8,\"./scan-header.js\":9,\"./utils.js\":10}],7:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null);\n jpeg.lossless.Utils = jpeg.lossless.Utils || ((typeof require !== 'undefined') ? require('./utils.js') : null);\n\n\n /*** Constructor ***/\n jpeg.lossless.QuantizationTable = jpeg.lossless.QuantizationTable || function () {\n this.precision = []; // Quantization precision 8 or 16\n this.tq = []; // 1: this table is presented\n this.quantTables = jpeg.lossless.Utils.createArray(4, 64); // Tables\n\n this.tq[0] = 0;\n this.tq[1] = 0;\n this.tq[2] = 0;\n this.tq[3] = 0;\n };\n\n\n\n /*** Static Methods ***/\n\n jpeg.lossless.QuantizationTable.enhanceQuantizationTable = function(qtab, table) {\n /*jslint bitwise: true */\n\n var i;\n\n for (i = 0; i < 8; i+=1) {\n qtab[table[(0 * 8) + i]] *= 90;\n qtab[table[(4 * 8) + i]] *= 90;\n qtab[table[(2 * 8) + i]] *= 118;\n qtab[table[(6 * 8) + i]] *= 49;\n qtab[table[(5 * 8) + i]] *= 71;\n qtab[table[(1 * 8) + i]] *= 126;\n qtab[table[(7 * 8) + i]] *= 25;\n qtab[table[(3 * 8) + i]] *= 106;\n }\n\n for (i = 0; i < 8; i+=1) {\n qtab[table[0 + (8 * i)]] *= 90;\n qtab[table[4 + (8 * i)]] *= 90;\n qtab[table[2 + (8 * i)]] *= 118;\n qtab[table[6 + (8 * i)]] *= 49;\n qtab[table[5 + (8 * i)]] *= 71;\n qtab[table[1 + (8 * i)]] *= 126;\n qtab[table[7 + (8 * i)]] *= 25;\n qtab[table[3 + (8 * i)]] *= 106;\n }\n\n for (i = 0; i < 64; i+=1) {\n qtab[i] >>= 6;\n }\n };\n\n\n /*** Prototype Methods ***/\n\n jpeg.lossless.QuantizationTable.prototype.read = function (data, table) {\n /*jslint bitwise: true */\n\n var count = 0, length, temp, t, i;\n\n length = data.get16();\n count += 2;\n\n while (count < length) {\n temp = data.get8();\n count+=1;\n t = temp & 0x0F;\n\n if (t > 3) {\n throw new Error(\"ERROR: Quantization table ID > 3\");\n }\n\n this.precision[t] = temp >> 4;\n\n if (this.precision[t] === 0) {\n this.precision[t] = 8;\n } else if (this.precision[t] === 1) {\n this.precision[t] = 16;\n } else {\n throw new Error(\"ERROR: Quantization table precision error\");\n }\n\n this.tq[t] = 1;\n\n if (this.precision[t] === 8) {\n for (i = 0; i < 64; i+=1) {\n if (count > length) {\n throw new Error(\"ERROR: Quantization table format error\");\n }\n\n this.quantTables[t][i] = data.get8();\n count+=1;\n }\n\n jpeg.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t], table);\n } else {\n for (i = 0; i < 64; i+=1) {\n if (count > length) {\n throw new Error(\"ERROR: Quantization table format error\");\n }\n\n this.quantTables[t][i] = data.get16();\n count += 2;\n }\n\n jpeg.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t], table);\n }\n }\n\n if (count !== length) {\n throw new Error(\"ERROR: Quantization table error [count!=Lq]\");\n }\n\n return 1;\n };\n\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.QuantizationTable;\n }\n\n },{\"./data-stream.js\":2,\"./utils.js\":10}],8:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n\n\n /*** Constructor ***/\n jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || function () {\n this.acTabSel = 0; // AC table selector\n this.dcTabSel = 0; // DC table selector\n this.scanCompSel = 0; // Scan component selector\n };\n\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.ScanComponent;\n }\n\n },{}],9:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n jpeg.lossless.DataStream = jpeg.lossless.DataStream || ((typeof require !== 'undefined') ? require('./data-stream.js') : null);\n jpeg.lossless.ScanComponent = jpeg.lossless.ScanComponent || ((typeof require !== 'undefined') ? require('./scan-component.js') : null);\n\n\n /*** Constructor ***/\n jpeg.lossless.ScanHeader = jpeg.lossless.ScanHeader || function () {\n this.ah = 0;\n this.al = 0;\n this.numComp = 0; // Number of components in the scan\n this.selection = 0; // Start of spectral or predictor selection\n this.spectralEnd = 0; // End of spectral selection\n this.components = [];\n };\n\n\n /*** Prototype Methods ***/\n\n jpeg.lossless.ScanHeader.prototype.read = function(data) {\n /*jslint bitwise: true */\n\n var count = 0, length, i, temp;\n\n length = data.get16();\n count += 2;\n\n this.numComp = data.get8();\n count+=1;\n\n for (i = 0; i < this.numComp; i+=1) {\n this.components[i] = new jpeg.lossless.ScanComponent();\n\n if (count > length) {\n throw new Error(\"ERROR: scan header format error\");\n }\n\n this.components[i].scanCompSel = data.get8();\n count+=1;\n\n temp = data.get8();\n count+=1;\n\n this.components[i].dcTabSel = (temp >> 4);\n this.components[i].acTabSel = (temp & 0x0F);\n }\n\n this.selection = data.get8();\n count+=1;\n\n this.spectralEnd = data.get8();\n count+=1;\n\n temp = data.get8();\n this.ah = (temp >> 4);\n this.al = (temp & 0x0F);\n count+=1;\n\n if (count !== length) {\n throw new Error(\"ERROR: scan header format error [count!=Ns]\");\n }\n\n return 1;\n };\n\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.ScanHeader;\n }\n\n },{\"./data-stream.js\":2,\"./scan-component.js\":8}],10:[function(require,module,exports){\n /*\n * Copyright (C) 2015 Michael Martinez\n * Changes: Added support for selection values 2-7, fixed minor bugs &\n * warnings, split into multiple class files, and general clean up.\n *\n * 08-25-2015: Helmut Dersch agreed to a license change from LGPL to MIT.\n */\n\n /*\n * Copyright (C) Helmut Dersch\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n /*jslint browser: true, node: true */\n /*global require, module */\n\n \"use strict\";\n\n /*** Imports ***/\n var jpeg = jpeg || {};\n jpeg.lossless = jpeg.lossless || {};\n\n\n /*** Constructor ***/\n jpeg.lossless.Utils = jpeg.lossless.Utils || {};\n\n\n /*** Static methods ***/\n\n // http://stackoverflow.com/questions/966225/how-can-i-create-a-two-dimensional-array-in-javascript\n jpeg.lossless.Utils.createArray = function (length) {\n var arr = new Array(length || 0),\n i = length;\n\n if (arguments.length > 1) {\n var args = Array.prototype.slice.call(arguments, 1);\n while(i--) arr[length-1 - i] = jpeg.lossless.Utils.createArray.apply(this, args);\n }\n\n return arr;\n };\n\n\n // http://stackoverflow.com/questions/18638900/javascript-crc32\n jpeg.lossless.Utils.makeCRCTable = function(){\n var c;\n var crcTable = [];\n for(var n =0; n < 256; n++){\n c = n;\n for(var k =0; k < 8; k++){\n c = ((c&1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));\n }\n crcTable[n] = c;\n }\n return crcTable;\n };\n\n jpeg.lossless.Utils.crc32 = function(dataView) {\n var uint8view = new Uint8Array(dataView.buffer);\n var crcTable = jpeg.lossless.Utils.crcTable || (jpeg.lossless.Utils.crcTable = jpeg.lossless.Utils.makeCRCTable());\n var crc = 0 ^ (-1);\n\n for (var i = 0; i < uint8view.length; i++ ) {\n crc = (crc >>> 8) ^ crcTable[(crc ^ uint8view[i]) & 0xFF];\n }\n\n return (crc ^ (-1)) >>> 0;\n };\n\n\n /*** Exports ***/\n\n var moduleType = typeof module;\n if ((moduleType !== 'undefined') && module.exports) {\n module.exports = jpeg.lossless.Utils;\n }\n\n},{}]},{},[6])(6)\n});\n\n\n/***/ }),\n\n/***/ \"../codecs/jpx.min.js\":\n/*!****************************!*\\\n !*** ../codecs/jpx.min.js ***!\n \\****************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n/*! image-JPEG2000 - v0.3.1 - 2015-08-26 | https://github.com/OHIF/image-JPEG2000 */\n\"use strict\";var PDFJS = {};function info(a){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.infos&&console.log(\"Info: \"+a)}function warn(a){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.warnings&&console.log(\"Warning: \"+a)}function error(a){if(arguments.length>1){var b=[\"Error:\"];b.push.apply(b,arguments),console.log.apply(console,b),a=[].join.call(arguments,\" \")}else console.log(\"Error: \"+a);throw console.log(backtrace()),UnsupportedManager.notify(UNSUPPORTED_FEATURES.unknown),new Error(a)}function backtrace(){try{throw new Error}catch(a){return a.stack?a.stack.split(\"\\n\").slice(2).join(\"\\n\"):\"\"}}function assert(a,b){a||error(b)}function combineUrl(a,b){if(!b)return a;if(/^[a-z][a-z0-9+\\-.]*:/i.test(b))return b;var c;if(\"/\"===b.charAt(0))return c=a.indexOf(\"://\"),\"/\"===b.charAt(1)?++c:c=a.indexOf(\"/\",c+3),a.substring(0,c)+b;var d=a.length;c=a.lastIndexOf(\"#\"),d=c>=0?c:d,c=a.lastIndexOf(\"?\",d),d=c>=0?c:d;var e=a.lastIndexOf(\"/\",d);return a.substring(0,e+1)+b}function isValidUrl(a,b){if(!a)return!1;var c=/^[a-z][a-z0-9+\\-.]*(?=:)/i.exec(a);if(!c)return b;switch(c=c[0].toLowerCase()){case\"http\":case\"https\":case\"ftp\":case\"mailto\":case\"tel\":return!0;default:return!1}}function shadow(a,b,c){return Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!1}),c}function bytesToString(a){assert(null!==a&&\"object\"==typeof a&&void 0!==a.length,\"Invalid argument for bytesToString\");var b=a.length,c=8192;if(c>b)return String.fromCharCode.apply(null,a);for(var d=[],e=0;b>e;e+=c){var f=Math.min(e+c,b),g=a.subarray(e,f);d.push(String.fromCharCode.apply(null,g))}return d.join(\"\")}function stringToBytes(a){assert(\"string\"==typeof a,\"Invalid argument for stringToBytes\");for(var b=a.length,c=new Uint8Array(b),d=0;b>d;++d)c[d]=255&a.charCodeAt(d);return c}function string32(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,255&a)}function log2(a){for(var b=1,c=0;a>b;)b<<=1,c++;return c}function readInt8(a,b){return a[b]<<24>>24}function readUint16(a,b){return a[b]<<8|a[b+1]}function readUint32(a,b){return(a[b]<<24|a[b+1]<<16|a[b+2]<<8|a[b+3])>>>0}function isLittleEndian(){var a=new Uint8Array(2);a[0]=1;var b=new Uint16Array(a.buffer);return 1===b[0]}function hasCanvasTypedArrays(){var a=document.createElement(\"canvas\");a.width=a.height=1;var b=a.getContext(\"2d\"),c=b.createImageData(1,1);return\"undefined\"!=typeof c.data.buffer}function stringToPDFString(a){var b,c=a.length,d=[];if(\"þ\"===a[0]&&\"ÿ\"===a[1])for(b=2;c>b;b+=2)d.push(String.fromCharCode(a.charCodeAt(b)<<8|a.charCodeAt(b+1)));else for(b=0;c>b;++b){var e=PDFStringTranslateTable[a.charCodeAt(b)];d.push(e?String.fromCharCode(e):a.charAt(b))}return d.join(\"\")}function stringToUTF8String(a){return decodeURIComponent(escape(a))}function isEmptyObj(a){for(var b in a)return!1;return!0}function isBool(a){return\"boolean\"==typeof a}function isInt(a){return\"number\"==typeof a&&(0|a)===a}function isNum(a){return\"number\"==typeof a}function isString(a){return\"string\"==typeof a}function isNull(a){return null===a}function isName(a){return a instanceof Name}function isCmd(a,b){return a instanceof Cmd&&(void 0===b||a.cmd===b)}function isDict(a,b){if(!(a instanceof Dict))return!1;if(!b)return!0;var c=a.get(\"Type\");return isName(c)&&c.name===b}function isArray(a){return a instanceof Array}function isStream(a){return\"object\"==typeof a&&null!==a&&void 0!==a.getBytes}function isArrayBuffer(a){return\"object\"==typeof a&&null!==a&&void 0!==a.byteLength}function isRef(a){return a instanceof Ref}function createPromiseCapability(){var a={};return a.promise=new Promise(function(b,c){a.resolve=b,a.reject=c}),a}function MessageHandler(a,b){this.name=a,this.comObj=b,this.callbackIndex=1,this.postMessageTransfers=!0;var c=this.callbacksCapabilities={},d=this.actionHandler={};d.console_log=[function(a){console.log.apply(console,a)}],d.console_error=[function(a){console.error.apply(console,a)}],d._unsupported_feature=[function(a){UnsupportedManager.notify(a)}],b.onmessage=function(a){var e=a.data;if(e.isReply){var f=e.callbackId;if(e.callbackId in c){var g=c[f];delete c[f],\"error\"in e?g.reject(e.error):g.resolve(e.data)}else error(\"Cannot resolve callback \"+f)}else if(e.action in d){var h=d[e.action];e.callbackId?Promise.resolve().then(function(){return h[0].call(h[1],e.data)}).then(function(a){b.postMessage({isReply:!0,callbackId:e.callbackId,data:a})},function(a){b.postMessage({isReply:!0,callbackId:e.callbackId,error:a})}):h[0].call(h[1],e.data)}else error(\"Unknown action from worker: \"+e.action)}}function loadJpegStream(a,b,c){var d=new Image;d.onload=function(){c.resolve(a,d)},d.onerror=function(){c.resolve(a,null),warn(\"Error during JPEG image loading\")},d.src=b}var JpxImage=function(){function a(){this.failOnCorruptedImage=!1}function b(a,b){a.x0=Math.ceil(b.XOsiz/a.XRsiz),a.x1=Math.ceil(b.Xsiz/a.XRsiz),a.y0=Math.ceil(b.YOsiz/a.YRsiz),a.y1=Math.ceil(b.Ysiz/a.YRsiz),a.width=a.x1-a.x0,a.height=a.y1-a.y0}function c(a,b){for(var c,d=a.SIZ,e=[],f=Math.ceil((d.Xsiz-d.XTOsiz)/d.XTsiz),g=Math.ceil((d.Ysiz-d.YTOsiz)/d.YTsiz),h=0;g>h;h++)for(var i=0;f>i;i++)c={},c.tx0=Math.max(d.XTOsiz+i*d.XTsiz,d.XOsiz),c.ty0=Math.max(d.YTOsiz+h*d.YTsiz,d.YOsiz),c.tx1=Math.min(d.XTOsiz+(i+1)*d.XTsiz,d.Xsiz),c.ty1=Math.min(d.YTOsiz+(h+1)*d.YTsiz,d.Ysiz),c.width=c.tx1-c.tx0,c.height=c.ty1-c.ty0,c.components=[],e.push(c);a.tiles=e;for(var j=d.Csiz,k=0,l=j;l>k;k++)for(var m=b[k],n=0,o=e.length;o>n;n++){var p={};c=e[n],p.tcx0=Math.ceil(c.tx0/m.XRsiz),p.tcy0=Math.ceil(c.ty0/m.YRsiz),p.tcx1=Math.ceil(c.tx1/m.XRsiz),p.tcy1=Math.ceil(c.ty1/m.YRsiz),p.width=p.tcx1-p.tcx0,p.height=p.tcy1-p.tcy0,c.components[k]=p}}function d(a,b,c){var d=b.codingStyleParameters,e={};return d.entropyCoderWithCustomPrecincts?(e.PPx=d.precinctsSizes[c].PPx,e.PPy=d.precinctsSizes[c].PPy):(e.PPx=15,e.PPy=15),e.xcb_=c>0?Math.min(d.xcb,e.PPx-1):Math.min(d.xcb,e.PPx),e.ycb_=c>0?Math.min(d.ycb,e.PPy-1):Math.min(d.ycb,e.PPy),e}function e(a,b,c){var d=1<b.trx0?Math.ceil(b.trx1/d)-Math.floor(b.trx0/d):0,j=b.try1>b.try0?Math.ceil(b.try1/e)-Math.floor(b.try0/e):0,k=i*j;b.precinctParameters={precinctWidth:d,precinctHeight:e,numprecinctswide:i,numprecinctshigh:j,numprecincts:k,precinctWidthInSubband:g,precinctHeightInSubband:h}}function f(a,b,c){var d,e,f,g,h=c.xcb_,i=c.ycb_,j=1<>h,m=b.tby0>>i,n=b.tbx1+j-1>>h,o=b.tby1+k-1>>i,p=b.resolution.precinctParameters,q=[],r=[];for(e=m;o>e;e++)for(d=l;n>d;d++){f={cbx:d,cby:e,tbx0:j*d,tby0:k*e,tbx1:j*(d+1),tby1:k*(e+1)},f.tbx0_=Math.max(b.tbx0,f.tbx0),f.tby0_=Math.max(b.tby0,f.tby0),f.tbx1_=Math.min(b.tbx1,f.tbx1),f.tby1_=Math.min(b.tby1,f.tby1);var s=Math.floor((f.tbx0_-b.tbx0)/p.precinctWidthInSubband),t=Math.floor((f.tby0_-b.tby0)/p.precinctHeightInSubband);if(g=s+t*p.numprecinctswide,f.precinctNumber=g,f.subbandType=b.type,f.Lblock=3,!(f.tbx1_<=f.tbx0_||f.tby1_<=f.tby0_)){q.push(f);var u=r[g];void 0!==u?(du.cbxMax&&(u.cbxMax=d),eu.cbyMax&&(u.cbyMax=e)):r[g]=u={cbxMin:d,cbyMin:e,cbxMax:d,cbyMax:e},f.precinct=u}}b.codeblockParameters={codeblockWidth:h,codeblockHeight:i,numcodeblockwide:n-l+1,numcodeblockhigh:o-m+1},b.codeblocks=q,b.precincts=r}function g(a,b,c){for(var d=[],e=a.subbands,f=0,g=e.length;g>f;f++)for(var h=e[f],i=h.codeblocks,j=0,k=i.length;k>j;j++){var l=i[j];l.precinctNumber===b&&d.push(l)}return{layerNumber:c,codeblocks:d}}function h(a){for(var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=0,i=0;f>i;i++)h=Math.max(h,d.components[i].codingStyleParameters.decompositionLevelsCount);var j=0,k=0,l=0,m=0;this.nextPacket=function(){for(;e>j;j++){for(;h>=k;k++){for(;f>l;l++){var a=d.components[l];if(!(k>a.codingStyleParameters.decompositionLevelsCount)){for(var b=a.resolutions[k],c=b.precinctParameters.numprecincts;c>m;){var i=g(b,m,j);return m++,i}m=0}}l=0}k=0}}}function i(a){for(var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=0,i=0;f>i;i++)h=Math.max(h,d.components[i].codingStyleParameters.decompositionLevelsCount);var j=0,k=0,l=0,m=0;this.nextPacket=function(){for(;h>=j;j++){for(;e>k;k++){for(;f>l;l++){var a=d.components[l];if(!(j>a.codingStyleParameters.decompositionLevelsCount)){for(var b=a.resolutions[j],c=b.precinctParameters.numprecincts;c>m;){var i=g(b,m,k);return m++,i}m=0}}l=0}k=0}}}function j(a){var b,c,d,e,f=a.SIZ,h=a.currentTile.index,i=a.tiles[h],j=i.codingStyleDefaultParameters.layersCount,k=f.Csiz,l=0;for(d=0;k>d;d++){var m=i.components[d];l=Math.max(l,m.codingStyleParameters.decompositionLevelsCount)}var n=new Int32Array(l+1);for(c=0;l>=c;++c){var o=0;for(d=0;k>d;++d){var p=i.components[d].resolutions;c=c;c++){for(;ed;d++){var a=i.components[d];if(!(c>a.codingStyleParameters.decompositionLevelsCount)){var f=a.resolutions[c],h=f.precinctParameters.numprecincts;if(!(e>=h)){for(;j>b;){var m=g(f,e,b);return b++,m}b=0}}}d=0}e=0}}}function k(a){var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=n(d),i=h,j=0,k=0,l=0,o=0,p=0;this.nextPacket=function(){for(;pl;l++){for(var a=d.components[l],b=a.codingStyleParameters.decompositionLevelsCount;b>=k;k++){var c=a.resolutions[k],n=h.components[l].resolutions[k],q=m(o,p,n,i,c);if(null!==q){for(;e>j;){var r=g(c,q,j);return j++,r}j=0}}k=0}l=0}o=0}}}function l(a){var b=a.SIZ,c=a.currentTile.index,d=a.tiles[c],e=d.codingStyleDefaultParameters.layersCount,f=b.Csiz,h=n(d),i=0,j=0,k=0,l=0,o=0;this.nextPacket=function(){for(;f>k;++k){for(var a=d.components[k],b=h.components[k],c=a.codingStyleParameters.decompositionLevelsCount;o=j;j++){var n=a.resolutions[j],p=b.resolutions[j],q=m(l,o,p,b,n);if(null!==q){for(;e>i;){var r=g(n,q,i);return i++,r}i=0}}j=0}l=0}o=0}}}function m(a,b,c,d,e){var f=a*d.minWidth,g=b*d.minHeight;if(f%c.width!==0||g%c.height!==0)return null;var h=g/c.width*e.precinctParameters.numprecinctswide;return f/c.height+h}function n(a){for(var b=a.components.length,c=Number.MAX_VALUE,d=Number.MAX_VALUE,e=0,f=0,g=new Array(b),h=0;b>h;h++){for(var i=a.components[h],j=i.codingStyleParameters.decompositionLevelsCount,k=new Array(j+1),l=Number.MAX_VALUE,m=Number.MAX_VALUE,n=0,o=0,p=1,q=j;q>=0;--q){var r=i.resolutions[q],s=p*r.precinctParameters.precinctWidth,t=p*r.precinctParameters.precinctHeight;l=Math.min(l,s),m=Math.min(m,t),n=Math.max(n,r.precinctParameters.numprecinctswide),o=Math.max(o,r.precinctParameters.numprecinctshigh),k[q]={width:s,height:t},p<<=1}c=Math.min(c,l),d=Math.min(d,m),e=Math.max(e,n),f=Math.max(f,o),g[h]={resolutions:k,minWidth:l,minHeight:m,maxNumWide:n,maxNumHigh:o}}return{components:g,minWidth:c,minHeight:d,maxNumWide:e,maxNumHigh:f}}function o(a){for(var b=a.SIZ,c=a.currentTile.index,g=a.tiles[c],m=b.Csiz,n=0;m>n;n++){for(var o=g.components[n],p=o.codingStyleParameters.decompositionLevelsCount,q=[],r=[],s=0;p>=s;s++){var t=d(a,o,s),u={},v=1<l;){if(c+k>=b.length)throw new Error(\"Unexpected EOF\");var d=b[c+k];k++,m?(j=j<<7|d,l+=7,m=!1):(j=j<<8|d,l+=8),255===d&&(m=!0)}return l-=a,j>>>l&(1<a?a+3:(a=e(5),31>a?a+6:(a=e(7),a+37))}for(var j,k=0,l=0,m=!1,n=a.currentTile.index,o=a.tiles[n],p=a.COD.sopMarkerUsed,q=a.COD.ephMarkerUsed,r=o.packetsIterator;d>k;)try{h(),p&&f(145)&&g(4);var s=r.nextPacket();if(void 0===s)return;if(!e(1))continue;for(var t,u=s.layerNumber,x=[],y=0,z=s.codeblocks.length;z>y;y++){t=s.codeblocks[y];var A,B=t.precinct,C=t.cbx-B.cbxMin,D=t.cby-B.cbyMin,E=!1,F=!1;if(void 0!==t.included)E=!!e(1);else{B=t.precinct;var G,H;if(void 0!==B.inclusionTree)G=B.inclusionTree;else{var I=B.cbxMax-B.cbxMin+1,J=B.cbyMax-B.cbyMin+1;G=new w(I,J),H=new v(I,J),B.inclusionTree=G,B.zeroBitPlanesTree=H}for(G.reset(C,D,u);;){if(k>=b.length)return;if(G.isAboveThreshold())break;if(G.isKnown())G.nextLevel();else if(e(1)){if(G.setKnown(),G.isLeaf()){t.included=!0,E=F=!0;break}G.nextLevel()}else G.incrementValue()}}if(E){if(F){for(H=B.zeroBitPlanesTree,H.reset(C,D);;){if(k>=b.length)return;if(e(1)){if(A=!H.nextLevel())break}else H.incrementValue()}t.zeroBitPlanes=H.value}for(var K=i();e(1);)t.Lblock++;var L=log2(K),M=(1<K?L-1:L)+t.Lblock,N=e(M);x.push({codeblock:t,codingpasses:K,dataLength:N})}}for(h(),q&&f(146);x.length>0;){var O=x.shift();t=O.codeblock,void 0===t.data&&(t.data=[]),t.data.push({data:b,start:c+k,end:c+k+O.dataLength,codingpasses:O.codingpasses}),k+=O.dataLength}}catch(P){return}return k}function q(a,b,c,d,e,f,g,h){for(var i=d.tbx0,j=d.tby0,k=d.tbx1-d.tbx0,l=d.codeblocks,m=\"H\"===d.type.charAt(0)?1:0,n=\"H\"===d.type.charAt(1)?b:0,o=0,p=l.length;p>o;++o){var q=l[o],r=q.tbx1_-q.tbx0_,s=q.tby1_-q.tby0_;if(0!==r&&0!==s&&void 0!==q.data){var t,u;t=new x(r,s,q.subbandType,q.zeroBitPlanes,f),u=2;var v,w,y,z=q.data,A=0,B=0;for(v=0,w=z.length;w>v;v++)y=z[v],A+=y.end-y.start,B+=y.codingpasses;var C=new Int16Array(A),D=0;for(v=0,w=z.length;w>v;v++){y=z[v];var E=y.data.subarray(y.start,y.end);C.set(E,D),D+=E.length}var F=new ArithmeticDecoder(C,0,A);for(t.setDecoder(F),v=0;B>v;v++){switch(u){case 0:t.runSignificancePropogationPass();break;case 1:t.runMagnitudeRefinementPass();break;case 2:t.runCleanupPass(),h&&t.checkSegmentationSymbol()}u=(u+1)%3}var G,H,I,J=q.tbx0_-i+(q.tby0_-j)*k,K=t.coefficentsSign,L=t.coefficentsMagnitude,M=t.bitsDecoded,N=g?0:.5;D=0;var O=\"LL\"!==d.type;for(v=0;s>v;v++){var P=J/k|0,Q=2*P*(b-k)+m+n;for(G=0;r>G;G++){if(H=L[D],0!==H){H=(H+N)*e,0!==K[D]&&(H=-H),I=M[D];var R=O?Q+(J<<1):J;g&&I>=f?a[R]=H:a[R]=H*(1<=r;r++){for(var s=d.resolutions[r],t=s.trx1-s.trx0,v=s.try1-s.try0,w=new Float32Array(t*v),x=0,y=s.subbands.length;y>x;x++){var B,C;i?(B=h[p].mu,C=h[p].epsilon,p++):(B=h[0].mu,C=h[0].epsilon+(r>0?1-r:0));var D=s.subbands[x],E=u[D.type],F=m?1:Math.pow(2,l+E-C)*(1+B/2048),G=j+C-1;q(w,t,v,D,F,G,m,k)}o.push({width:t,height:v,items:w})}var H=n.calculate(o,d.tcx0,d.tcy0);return{left:d.tcx0,top:d.tcy0,width:H.width,height:H.height,items:H.items}}function s(a){for(var b=a.SIZ,c=a.components,d=b.Csiz,e=[],f=0,g=a.tiles.length;g>f;f++){var h,i=a.tiles[f],j=[];for(h=0;d>h;h++)j[h]=r(a,i,h);var k=j[0],l=c[0].isSigned;if(l)var m=new Int16Array(k.items.length*d);else var m=new Uint16Array(k.items.length*d);var n,o,p,q,s,t,u,v,w,x,y,z,A,B,C,D={left:k.left,top:k.top,width:k.width,height:k.height,items:m},E=0;if(i.codingStyleDefaultParameters.multipleComponentTransform){var F=4===d,G=j[0].items,H=j[1].items,I=j[2].items,J=F?j[3].items:null;n=c[0].precision-8,o=(128<t;t++,E+=L)v=G[t]+o,w=H[t],x=I[t],z=v-(x+w>>2),y=z+x,A=z+w,m[E++]=0>=y?0:y>=p?255:y>>n,m[E++]=0>=z?0:z>=p?255:z>>n,m[E++]=0>=A?0:A>=p?255:A>>n;else for(t=0;u>t;t++,E+=L)v=G[t]+o,w=H[t],x=I[t],y=v+1.402*x,z=v-.34413*w-.71414*x,A=v+1.772*w,m[E++]=0>=y?0:y>=p?255:y>>n,m[E++]=0>=z?0:z>=p?255:z>>n,m[E++]=0>=A?0:A>=p?255:A>>n;if(F)for(t=0,E=3;u>t;t++,E+=4)B=J[t],m[E]=q>=B?0:B>=s?255:B+o>>n}else for(h=0;d>h;h++)if(8===c[h].precision){var M=j[h].items;for(n=c[h].precision-8,o=(128<t;t++)C=M[t],m[E]=q>=C?0:C>=p?255:C+o>>n,E+=d}else{var l=c[h].isSigned,M=j[h].items;if(l)for(E=h,t=0,u=M.length;u>t;t++)m[E]=M[t],E+=d;else{n=c[h].precision-8,o=(128<t;t++)C=M[t],m[E]=Math.max(Math.min(C+o,N),0),E+=d}}e.push(D)}return e}function t(a,b){for(var c=a.SIZ,d=c.Csiz,e=a.tiles[b],f=0;d>f;f++){var g=e.components[f],h=void 0!==a.currentTile.QCC[f]?a.currentTile.QCC[f]:a.currentTile.QCD;g.quantizationParameters=h;var i=void 0!==a.currentTile.COC[f]?a.currentTile.COC[f]:a.currentTile.COD;g.codingStyleParameters=i}e.codingStyleDefaultParameters=a.currentTile.COD}var u={LL:0,LH:1,HL:1,HH:2};a.prototype={parse:function(a){var b=readUint16(a,0);if(65359===b)return void this.parseCodestream(a,0,a.length);for(var c=0,d=a.length;d>c;){var e=8,f=readUint32(a,c),g=readUint32(a,c+4);if(c+=e,1===f&&(f=4294967296*readUint32(a,c)+readUint32(a,c+4),c+=8,e+=8),0===f&&(f=d-c+e),e>f)throw new Error(\"JPX Error: Invalid box field size\");var h=f-e,i=!0;switch(g){case 1785737832:i=!1;break;case 1668246642:var j=a[c];a[c+1],a[c+2];if(1===j){var k=readUint32(a,c+3);switch(k){case 16:case 17:case 18:break;default:warn(\"Unknown colorspace \"+k)}}else 2===j&&info(\"ICC profile not supported\");break;case 1785737827:this.parseCodestream(a,c,c+h);break;case 1783636e3:218793738!==readUint32(a,c)&&warn(\"Invalid JP2 signature\");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:var l=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,255&g);warn(\"Unsupported header type \"+g+\" (\"+l+\")\")}i&&(c+=h)}},parseImageProperties:function(a){for(var b=a.getByte();b>=0;){var c=b;b=a.getByte();var d=c<<8|b;if(65361===d){a.skip(4);var e=a.getInt32()>>>0,f=a.getInt32()>>>0,g=a.getInt32()>>>0,h=a.getInt32()>>>0;a.skip(16);var i=a.getUint16();return this.width=e-g,this.height=f-h,this.componentsCount=i,void(this.bitsPerComponent=8)}}throw new Error(\"JPX Error: No size marker found in JPX stream\")},parseCodestream:function(a,d,e){var f={};try{for(var g=!1,h=d;e>h+1;){var i=readUint16(a,h);h+=2;var j,k,l,m,n,q,r=0;switch(i){case 65359:f.mainHeader=!0;break;case 65497:break;case 65361:r=readUint16(a,h);var u={};u.Xsiz=readUint32(a,h+4),u.Ysiz=readUint32(a,h+8),u.XOsiz=readUint32(a,h+12),u.YOsiz=readUint32(a,h+16),u.XTsiz=readUint32(a,h+20),u.YTsiz=readUint32(a,h+24),u.XTOsiz=readUint32(a,h+28),u.YTOsiz=readUint32(a,h+32);var v=readUint16(a,h+36);u.Csiz=v;var w=[];j=h+38;for(var x=0;v>x;x++){var y={precision:(127&a[j])+1,isSigned:!!(128&a[j]),XRsiz:a[j+1],YRsiz:a[j+1]};b(y,u),w.push(y)}f.SIZ=u,f.components=w,c(f,w),f.QCC=[],f.COC=[];break;case 65372:r=readUint16(a,h);var z={};switch(j=h+2,k=a[j++],31&k){case 0:m=8,n=!0;break;case 1:m=16,n=!1;break;case 2:m=16,n=!0;break;default:throw new Error(\"JPX Error: Invalid SQcd value \"+k)}for(z.noQuantization=8===m,z.scalarExpounded=n,z.guardBits=k>>5,l=[];r+h>j;){var A={};8===m?(A.epsilon=a[j++]>>3,A.mu=0):(A.epsilon=a[j]>>3,A.mu=(7&a[j])<<8|a[j+1],j+=2),l.push(A)}z.SPqcds=l,f.mainHeader?f.QCD=z:(f.currentTile.QCD=z,f.currentTile.QCC=[]);break;case 65373:r=readUint16(a,h);var B={};j=h+2;var C;switch(f.SIZ.Csiz<257?C=a[j++]:(C=readUint16(a,j),j+=2),k=a[j++],31&k){case 0:m=8,n=!0;break;case 1:m=16,n=!1;break;case 2:m=16,n=!0;break;default:throw new Error(\"JPX Error: Invalid SQcd value \"+k)}for(B.noQuantization=8===m,B.scalarExpounded=n,B.guardBits=k>>5,l=[];r+h>j;)A={},8===m?(A.epsilon=a[j++]>>3,A.mu=0):(A.epsilon=a[j]>>3,A.mu=(7&a[j])<<8|a[j+1],j+=2),l.push(A);B.SPqcds=l,f.mainHeader?f.QCC[C]=B:f.currentTile.QCC[C]=B;break;case 65362:r=readUint16(a,h);var D={};j=h+2;var E=a[j++];D.entropyCoderWithCustomPrecincts=!!(1&E),D.sopMarkerUsed=!!(2&E),D.ephMarkerUsed=!!(4&E),D.progressionOrder=a[j++],D.layersCount=readUint16(a,j),j+=2,D.multipleComponentTransform=a[j++],D.decompositionLevelsCount=a[j++],D.xcb=(15&a[j++])+2,D.ycb=(15&a[j++])+2;var F=a[j++];if(D.selectiveArithmeticCodingBypass=!!(1&F),D.resetContextProbabilities=!!(2&F),D.terminationOnEachCodingPass=!!(4&F),D.verticalyStripe=!!(8&F),D.predictableTermination=!!(16&F),D.segmentationSymbolUsed=!!(32&F),D.reversibleTransformation=a[j++],D.entropyCoderWithCustomPrecincts){for(var G=[];r+h>j;){var H=a[j++];G.push({PPx:15&H,PPy:H>>4})}D.precinctsSizes=G}var I=[];if(D.selectiveArithmeticCodingBypass&&I.push(\"selectiveArithmeticCodingBypass\"),D.resetContextProbabilities&&I.push(\"resetContextProbabilities\"),D.terminationOnEachCodingPass&&I.push(\"terminationOnEachCodingPass\"),D.verticalyStripe&&I.push(\"verticalyStripe\"),D.predictableTermination&&I.push(\"predictableTermination\"),I.length>0)throw g=!0,new Error(\"JPX Error: Unsupported COD options (\"+I.join(\", \")+\")\");f.mainHeader?f.COD=D:(f.currentTile.COD=D,f.currentTile.COC=[]);break;case 65424:r=readUint16(a,h),q={},q.index=readUint16(a,h+2),q.length=readUint32(a,h+4),q.dataEnd=q.length+h-2,q.partIndex=a[h+8],q.partsCount=a[h+9],f.mainHeader=!1,0===q.partIndex&&(q.COD=f.COD,q.COC=f.COC.slice(0),q.QCD=f.QCD,q.QCC=f.QCC.slice(0)),f.currentTile=q;break;case 65427:q=f.currentTile,0===q.partIndex&&(t(f,q.index),o(f)),r=q.dataEnd-h,p(f,a,h,r);break;case 65365:case 65367:case 65368:case 65380:r=readUint16(a,h);break;case 65363:throw new Error(\"JPX Error: Codestream code 0xFF53 (COC) is not implemented\");default:throw new Error(\"JPX Error: Unknown codestream code: \"+i.toString(16))}h+=r}}catch(J){if(g||this.failOnCorruptedImage)throw J;warn(\"Trying to recover from \"+J.message)}this.tiles=s(f),this.width=f.SIZ.Xsiz-f.SIZ.XOsiz,this.height=f.SIZ.Ysiz-f.SIZ.YOsiz,this.componentsCount=f.SIZ.Csiz}};var v=function(){function a(a,b){var c=log2(Math.max(a,b))+1;this.levels=[];for(var d=0;c>d;d++){var e={width:a,height:b,items:[]};this.levels.push(e),a=Math.ceil(a/2),b=Math.ceil(b/2)}}return a.prototype={reset:function(a,b){for(var c,d=0,e=0;d>=1,b>>=1,d++}d--,c=this.levels[d],c.items[c.index]=e,this.currentLevel=d,delete this.value},incrementValue:function(){var a=this.levels[this.currentLevel];a.items[a.index]++},nextLevel:function(){var a=this.currentLevel,b=this.levels[a],c=b.items[b.index];return a--,0>a?(this.value=c,!1):(this.currentLevel=a,b=this.levels[a],b.items[b.index]=c,!0)}},a}(),w=function(){function a(a,b){var c=log2(Math.max(a,b))+1;this.levels=[];for(var d=0;c>d;d++){for(var e=new Uint8Array(a*b),f=new Uint8Array(a*b),g=0,h=e.length;h>g;g++)e[g]=0,f[g]=0;var i={width:a,height:b,items:e,status:f};this.levels.push(i),a=Math.ceil(a/2),b=Math.ceil(b/2)}}return a.prototype={reset:function(a,b,c){this.currentStopValue=c;for(var d=0;d>=1,b>>=1,d++}this.currentLevel=this.levels.length-1,this.minValue=this.levels[this.currentLevel].items[0]},incrementValue:function(){var a=this.levels[this.currentLevel];a.items[a.index]=a.items[a.index]+1,a.items[a.index]>this.minValue&&(this.minValue=a.items[a.index])},nextLevel:function(){var a=this.currentLevel;if(a--,0>a)return!1;this.currentLevel=a;var b=this.levels[a];return b.items[b.index]this.minValue&&(this.minValue=b.items[b.index]),!0},isLeaf:function(){return 0===this.currentLevel},isAboveThreshold:function(){var a=this.currentLevel,b=this.levels[a];return b.items[b.index]>this.currentStopValue},isKnown:function(){var a=this.currentLevel,b=this.levels[a];return b.status[b.index]>0},setKnown:function(){var a=this.currentLevel,b=this.levels[a];b.status[b.index]=1}},a}(),x=function(){function a(a,b,c,g,h){this.width=a,this.height=b,this.contextLabelTable=\"HH\"===c?f:\"HL\"===c?e:d;var i=a*b;this.neighborsSignificance=new Uint8Array(i),this.coefficentsSign=new Uint8Array(i),this.coefficentsMagnitude=h>14?new Uint32Array(i):h>6?new Uint16Array(i):new Uint8Array(i),this.processingFlags=new Uint8Array(i);var j=new Uint8Array(i);if(0!==g)for(var k=0;i>k;k++)j[k]=g;this.bitsDecoded=j,this.reset()}var b=17,c=18,d=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]),e=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]),f=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);return a.prototype={setDecoder:function(a){this.decoder=a},reset:function(){this.contexts=new Int8Array(19),this.contexts[0]=8,this.contexts[b]=92,this.contexts[c]=6},setNeighborsSignificance:function(a,b,c){var d,e=this.neighborsSignificance,f=this.width,g=this.height,h=b>0,i=f>b+1;a>0&&(d=c-f,h&&(e[d-1]+=16),i&&(e[d+1]+=16),e[d]+=4),g>a+1&&(d=c+f,h&&(e[d-1]+=16),i&&(e[d+1]+=16),e[d]+=4),h&&(e[c-1]+=1),i&&(e[c+1]+=1),e[c]|=128},runSignificancePropogationPass:function(){for(var a=this.decoder,b=this.width,c=this.height,d=this.coefficentsMagnitude,e=this.coefficentsSign,f=this.neighborsSignificance,g=this.processingFlags,h=this.contexts,i=this.contextLabelTable,j=this.bitsDecoded,k=-2,l=1,m=2,n=0;c>n;n+=4)for(var o=0;b>o;o++)for(var p=n*b+o,q=0;4>q;q++,p+=b){var r=n+q;if(r>=c)break;if(g[p]&=k,!d[p]&&f[p]){var s=i[f[p]],t=a.readBit(h,s);if(t){var u=this.decodeSignBit(r,o,p);e[p]=u,d[p]=1,this.setNeighborsSignificance(r,o,p),g[p]|=m}j[p]++,g[p]|=l}}},decodeSignBit:function(a,b,c){var d,e,f,g,h,i,j=this.width,k=this.height,l=this.coefficentsMagnitude,m=this.coefficentsSign;g=b>0&&0!==l[c-1],j>b+1&&0!==l[c+1]?(f=m[c+1],g?(e=m[c-1],d=1-f-e):d=1-f-f):g?(e=m[c-1],d=1-e-e):d=0;var n=3*d;return g=a>0&&0!==l[c-j],k>a+1&&0!==l[c+j]?(f=m[c+j],g?(e=m[c-j],d=1-f-e+n):d=1-f-f+n):g?(e=m[c-j],d=1-e-e+n):d=n,d>=0?(h=9+d,i=this.decoder.readBit(this.contexts,h)):(h=9-d,i=1^this.decoder.readBit(this.contexts,h)),i},runMagnitudeRefinementPass:function(){for(var a,b=this.decoder,c=this.width,d=this.height,e=this.coefficentsMagnitude,f=this.neighborsSignificance,g=this.contexts,h=this.bitsDecoded,i=this.processingFlags,j=1,k=2,l=c*d,m=4*c,n=0;l>n;n=a){a=Math.min(l,n+m);for(var o=0;c>o;o++)for(var p=n+o;a>p;p+=c)if(e[p]&&0===(i[p]&j)){var q=16;if(0!==(i[p]&k)){i[p]^=k;var r=127&f[p];q=0===r?15:14}var s=b.readBit(g,q);e[p]=e[p]<<1|s,h[p]++,i[p]|=j}}},runCleanupPass:function(){for(var a,d=this.decoder,e=this.width,f=this.height,g=this.neighborsSignificance,h=this.coefficentsMagnitude,i=this.coefficentsSign,j=this.contexts,k=this.contextLabelTable,l=this.bitsDecoded,m=this.processingFlags,n=1,o=2,p=e,q=2*e,r=3*e,s=0;f>s;s=a){a=Math.min(s+4,f);for(var t=s*e,u=f>s+3,v=0;e>v;v++){var w,x=t+v,y=u&&0===m[x]&&0===m[x+p]&&0===m[x+q]&&0===m[x+r]&&0===g[x]&&0===g[x+p]&&0===g[x+q]&&0===g[x+r],z=0,A=x,B=s;if(y){var C=d.readBit(j,c);if(!C){l[x]++,l[x+p]++,l[x+q]++,l[x+r]++;continue}z=d.readBit(j,b)<<1|d.readBit(j,b),0!==z&&(B=s+z,A+=z*e),w=this.decodeSignBit(B,v,A),i[A]=w,h[A]=1,this.setNeighborsSignificance(B,v,A),m[A]|=o,A=x;for(var D=s;B>=D;D++,A+=e)l[A]++;z++}for(B=s+z;a>B;B++,A+=e)if(!h[A]&&0===(m[A]&n)){var E=k[g[A]],F=d.readBit(j,E);1===F&&(w=this.decodeSignBit(B,v,A),i[A]=w,h[A]=1,this.setNeighborsSignificance(B,v,A),m[A]|=o),l[A]++}}}},checkSegmentationSymbol:function(){var a=this.decoder,c=this.contexts,d=a.readBit(c,b)<<3|a.readBit(c,b)<<2|a.readBit(c,b)<<1|a.readBit(c,b);if(10!==d)throw new Error(\"JPX Error: Invalid segmentation symbol\")}},a}(),y=function(){function a(){}return a.prototype.calculate=function(a,b,c){for(var d=a[0],e=1,f=a.length;f>e;e++)d=this.iterate(d,a[e],b,c);return d},a.prototype.extend=function(a,b,c){var d=b-1,e=b+1,f=b+c-2,g=b+c;a[d--]=a[e++],a[g++]=a[f--],a[d--]=a[e++],a[g++]=a[f--],a[d--]=a[e++],a[g++]=a[f--],a[d]=a[e],a[g]=a[f]},a.prototype.iterate=function(a,b,c,d){var e,f,g,h,i,j,k=a.width,l=a.height,m=a.items,n=b.width,o=b.height,p=b.items;for(g=0,e=0;l>e;e++)for(h=2*e*n,f=0;k>f;f++,g++,h+=2)p[h]=m[g];m=a.items=null;var q=4,r=new Float32Array(n+2*q);if(1===n){if(0!==(1&c))for(j=0,g=0;o>j;j++,g+=n)p[g]*=.5}else for(j=0,g=0;o>j;j++,g+=n)r.set(p.subarray(g,g+n),q),this.extend(r,q,n),this.filter(r,q,n),p.set(r.subarray(q,q+n),g);var s=16,t=[];for(e=0;s>e;e++)t.push(new Float32Array(o+2*q));var u,v=0;if(a=q+o,1===o){if(0!==(1&d))for(i=0;n>i;i++)p[i]*=.5}else for(i=0;n>i;i++){if(0===v){for(s=Math.min(n-i,s),g=i,h=q;a>h;g+=n,h++)for(u=0;s>u;u++)t[u][h]=p[g+u];v=s}v--;var w=t[v];if(this.extend(w,q,o),this.filter(w,q,o),0===v)for(g=i-s+1,h=q;a>h;g+=n,h++)for(u=0;s>u;u++)p[g+u]=t[u][h]}return{width:n,height:o,items:p}},a}(),z=function(){function a(){y.call(this)}return a.prototype=Object.create(y.prototype),a.prototype.filter=function(a,b,c){var d=c>>1;b=0|b;var e,f,g,h,i=-1.586134342059924,j=-.052980118572961,k=.882911075530934,l=.443506852043971,m=1.230174104914001,n=1/m;for(e=b-3,f=d+4;f--;e+=2)a[e]*=n;for(e=b-2,g=l*a[e-1],f=d+3;f--&&(h=l*a[e+1],a[e]=m*a[e]-g-h,f--);e+=2)e+=2,g=l*a[e+1],a[e]=m*a[e]-g-h;for(e=b-1,g=k*a[e-1],f=d+2;f--&&(h=k*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=k*a[e+1],a[e]-=g+h;for(e=b,g=j*a[e-1],f=d+1;f--&&(h=j*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=j*a[e+1],a[e]-=g+h;if(0!==d)for(e=b+1,g=i*a[e-1],f=d;f--&&(h=i*a[e+1],a[e]-=g+h,f--);e+=2)e+=2,g=i*a[e+1],a[e]-=g+h},a}(),A=function(){function a(){y.call(this)}return a.prototype=Object.create(y.prototype),a.prototype.filter=function(a,b,c){var d=c>>1;b=0|b;var e,f;for(e=b,f=d+1;f--;e+=2)a[e]-=a[e-1]+a[e+1]+2>>2;for(e=b+1,f=d;f--;e+=2)a[e]+=a[e-1]+a[e+1]>>1},a}();return a}(),ArithmeticDecoder=function(){function a(a,b,c){this.data=a,this.bp=b,this.dataEnd=c,this.chigh=a[b],this.clow=0,this.byteIn(),this.chigh=this.chigh<<7&65535|this.clow>>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}var b=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{\nqe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];return a.prototype={byteIn:function(){var a=this.data,b=this.bp;if(255===a[b]){var c=a[b+1];c>143?(this.clow+=65280,this.ct=8):(b++,this.clow+=a[b]<<9,this.ct=7,this.bp=b)}else b++,this.clow+=b65535&&(this.chigh+=this.clow>>16,this.clow&=65535)},readBit:function(a,c){var d,e=a[c]>>1,f=1&a[c],g=b[e],h=g.qe,i=this.a-h;if(this.chighi?(i=h,d=f,e=g.nmps):(i=h,d=1^f,1===g.switchFlag&&(f=d),e=g.nlps);else{if(this.chigh-=h,0!==(32768&i))return this.a=i,f;h>i?(d=1^f,1===g.switchFlag&&(f=d),e=g.nlps):(d=f,e=g.nmps)}do 0===this.ct&&this.byteIn(),i<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--;while(0===(32768&i));return this.a=i,a[c]=e<<1|f,d}},a}(),globalScope=\"undefined\"==typeof window?this:window,isWorker=\"undefined\"==typeof window,FONT_IDENTITY_MATRIX=[.001,0,0,.001,0,0],TextRenderingMode={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4},ImageKind={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3},AnnotationType={WIDGET:1,TEXT:2,LINK:3},StreamType={UNKNOWN:0,FLATE:1,LZW:2,DCT:3,JPX:4,JBIG:5,A85:6,AHX:7,CCF:8,RL:9},FontType={UNKNOWN:0,TYPE1:1,TYPE1C:2,CIDFONTTYPE0:3,CIDFONTTYPE0C:4,TRUETYPE:5,CIDFONTTYPE2:6,TYPE3:7,OPENTYPE:8,TYPE0:9,MMTYPE1:10};globalScope.PDFJS||(globalScope.PDFJS={}),globalScope.PDFJS.pdfBug=!1,PDFJS.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var OPS=PDFJS.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},UNSUPPORTED_FEATURES=PDFJS.UNSUPPORTED_FEATURES={unknown:\"unknown\",forms:\"forms\",javaScript:\"javaScript\",smask:\"smask\",shadingPattern:\"shadingPattern\",font:\"font\"},UnsupportedManager=PDFJS.UnsupportedManager=function(){var a=[];return{listen:function(b){a.push(b)},notify:function(b){warn('Unsupported feature \"'+b+'\"');for(var c=0,d=a.length;d>c;c++)a[c](b)}}}();PDFJS.isValidUrl=isValidUrl,PDFJS.shadow=shadow;var PasswordResponses=PDFJS.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2},PasswordException=function(){function a(a,b){this.name=\"PasswordException\",this.message=a,this.code=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.PasswordException=PasswordException;var UnknownErrorException=function(){function a(a,b){this.name=\"UnknownErrorException\",this.message=a,this.details=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.UnknownErrorException=UnknownErrorException;var InvalidPDFException=function(){function a(a){this.name=\"InvalidPDFException\",this.message=a}return a.prototype=new Error,a.constructor=a,a}();PDFJS.InvalidPDFException=InvalidPDFException;var MissingPDFException=function(){function a(a){this.name=\"MissingPDFException\",this.message=a}return a.prototype=new Error,a.constructor=a,a}();PDFJS.MissingPDFException=MissingPDFException;var UnexpectedResponseException=function(){function a(a,b){this.name=\"UnexpectedResponseException\",this.message=a,this.status=b}return a.prototype=new Error,a.constructor=a,a}();PDFJS.UnexpectedResponseException=UnexpectedResponseException;var NotImplementedException=function(){function a(a){this.message=a}return a.prototype=new Error,a.prototype.name=\"NotImplementedException\",a.constructor=a,a}(),MissingDataException=function(){function a(a,b){this.begin=a,this.end=b,this.message=\"Missing data [\"+a+\", \"+b+\")\"}return a.prototype=new Error,a.prototype.name=\"MissingDataException\",a.constructor=a,a}(),XRefParseException=function(){function a(a){this.message=a}return a.prototype=new Error,a.prototype.name=\"XRefParseException\",a.constructor=a,a}();Object.defineProperty(PDFJS,\"isLittleEndian\",{configurable:!0,get:function(){return shadow(PDFJS,\"isLittleEndian\",isLittleEndian())}}),Object.defineProperty(PDFJS,\"hasCanvasTypedArrays\",{configurable:!0,get:function(){return shadow(PDFJS,\"hasCanvasTypedArrays\",hasCanvasTypedArrays())}});var Uint32ArrayView=function(){function a(a,b){this.buffer=a,this.byteLength=a.length,this.length=void 0===b?this.byteLength>>2:b,c(this.length)}function b(a){return{get:function(){var b=this.buffer,c=a<<2;return(b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24)>>>0},set:function(b){var c=this.buffer,d=a<<2;c[d]=255&b,c[d+1]=b>>8&255,c[d+2]=b>>16&255,c[d+3]=b>>>24&255}}}function c(c){for(;c>d;)Object.defineProperty(a.prototype,d,b(d)),d++}a.prototype=Object.create(null);var d=0;return a}(),IDENTITY_MATRIX=[1,0,0,1,0,0],Util=PDFJS.Util=function(){function a(){}var b=[\"rgb(\",0,\",\",0,\",\",0,\")\"];return a.makeCssRgb=function(a,c,d){return b[1]=a,b[3]=c,b[5]=d,b.join(\"\")},a.transform=function(a,b){return[a[0]*b[0]+a[2]*b[1],a[1]*b[0]+a[3]*b[1],a[0]*b[2]+a[2]*b[3],a[1]*b[2]+a[3]*b[3],a[0]*b[4]+a[2]*b[5]+a[4],a[1]*b[4]+a[3]*b[5]+a[5]]},a.applyTransform=function(a,b){var c=a[0]*b[0]+a[1]*b[2]+b[4],d=a[0]*b[1]+a[1]*b[3]+b[5];return[c,d]},a.applyInverseTransform=function(a,b){var c=b[0]*b[3]-b[1]*b[2],d=(a[0]*b[3]-a[1]*b[2]+b[2]*b[5]-b[4]*b[3])/c,e=(-a[0]*b[1]+a[1]*b[0]+b[4]*b[1]-b[5]*b[0])/c;return[d,e]},a.getAxialAlignedBoundingBox=function(b,c){var d=a.applyTransform(b,c),e=a.applyTransform(b.slice(2,4),c),f=a.applyTransform([b[0],b[3]],c),g=a.applyTransform([b[2],b[1]],c);return[Math.min(d[0],e[0],f[0],g[0]),Math.min(d[1],e[1],f[1],g[1]),Math.max(d[0],e[0],f[0],g[0]),Math.max(d[1],e[1],f[1],g[1])]},a.inverseTransform=function(a){var b=a[0]*a[3]-a[1]*a[2];return[a[3]/b,-a[1]/b,-a[2]/b,a[0]/b,(a[2]*a[5]-a[4]*a[3])/b,(a[4]*a[1]-a[5]*a[0])/b]},a.apply3dTransform=function(a,b){return[a[0]*b[0]+a[1]*b[1]+a[2]*b[2],a[3]*b[0]+a[4]*b[1]+a[5]*b[2],a[6]*b[0]+a[7]*b[1]+a[8]*b[2]]},a.singularValueDecompose2dScale=function(a){var b=[a[0],a[2],a[1],a[3]],c=a[0]*b[0]+a[1]*b[2],d=a[0]*b[1]+a[1]*b[3],e=a[2]*b[0]+a[3]*b[2],f=a[2]*b[1]+a[3]*b[3],g=(c+f)/2,h=Math.sqrt((c+f)*(c+f)-4*(c*f-e*d))/2,i=g+h||1,j=g-h||1;return[Math.sqrt(i),Math.sqrt(j)]},a.normalizeRect=function(a){var b=a.slice(0);return a[0]>a[2]&&(b[0]=a[2],b[2]=a[0]),a[1]>a[3]&&(b[1]=a[3],b[3]=a[1]),b},a.intersect=function(b,c){function d(a,b){return a-b}var e=[b[0],b[2],c[0],c[2]].sort(d),f=[b[1],b[3],c[1],c[3]].sort(d),g=[];return b=a.normalizeRect(b),c=a.normalizeRect(c),e[0]===b[0]&&e[1]===c[0]||e[0]===c[0]&&e[1]===b[0]?(g[0]=e[1],g[2]=e[2],f[0]===b[1]&&f[1]===c[1]||f[0]===c[1]&&f[1]===b[1]?(g[1]=f[1],g[3]=f[2],g):!1):!1},a.sign=function(a){return 0>a?-1:1},a.appendToArray=function(a,b){Array.prototype.push.apply(a,b)},a.prependToArray=function(a,b){Array.prototype.unshift.apply(a,b)},a.extendObj=function(a,b){for(var c in b)a[c]=b[c]},a.getInheritableProperty=function(a,b){for(;a&&!a.has(b);)a=a.get(\"Parent\");return a?a.get(b):null},a.inherit=function(a,b,c){a.prototype=Object.create(b.prototype),a.prototype.constructor=a;for(var d in c)a.prototype[d]=c[d]},a.loadScript=function(a,b){var c=document.createElement(\"script\"),d=!1;c.setAttribute(\"src\",a),b&&(c.onload=function(){d||b(),d=!0}),document.getElementsByTagName(\"head\")[0].appendChild(c)},a}(),PageViewport=PDFJS.PageViewport=function(){function a(a,b,c,d,e,f){this.viewBox=a,this.scale=b,this.rotation=c,this.offsetX=d,this.offsetY=e;var g,h,i,j,k=(a[2]+a[0])/2,l=(a[3]+a[1])/2;switch(c%=360,c=0>c?c+360:c){case 180:g=-1,h=0,i=0,j=1;break;case 90:g=0,h=1,i=1,j=0;break;case 270:g=0,h=-1,i=-1,j=0;break;default:g=1,h=0,i=0,j=-1}f&&(i=-i,j=-j);var m,n,o,p;0===g?(m=Math.abs(l-a[1])*b+d,n=Math.abs(k-a[0])*b+e,o=Math.abs(a[3]-a[1])*b,p=Math.abs(a[2]-a[0])*b):(m=Math.abs(k-a[0])*b+d,n=Math.abs(l-a[1])*b+e,o=Math.abs(a[2]-a[0])*b,p=Math.abs(a[3]-a[1])*b),this.transform=[g*b,h*b,i*b,j*b,m-g*b*k-i*b*l,n-h*b*k-j*b*l],this.width=o,this.height=p,this.fontScale=b}return a.prototype={clone:function(b){b=b||{};var c=\"scale\"in b?b.scale:this.scale,d=\"rotation\"in b?b.rotation:this.rotation;return new a(this.viewBox.slice(),c,d,this.offsetX,this.offsetY,b.dontFlip)},convertToViewportPoint:function(a,b){return Util.applyTransform([a,b],this.transform)},convertToViewportRectangle:function(a){var b=Util.applyTransform([a[0],a[1]],this.transform),c=Util.applyTransform([a[2],a[3]],this.transform);return[b[0],b[1],c[0],c[1]]},convertToPdfPoint:function(a,b){return Util.applyInverseTransform([a,b],this.transform)}},a}(),PDFStringTranslateTable=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364];PDFJS.createPromiseCapability=createPromiseCapability,function(){function a(a){this._status=b,this._handlers=[];try{a.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(c){this._reject(c)}}if(globalScope.Promise)return\"function\"!=typeof globalScope.Promise.all&&(globalScope.Promise.all=function(a){var b,c,d=0,e=[],f=new globalScope.Promise(function(a,d){b=a,c=d});return a.forEach(function(a,f){d++,a.then(function(a){e[f]=a,d--,0===d&&b(e)},c)}),0===d&&b(e),f}),\"function\"!=typeof globalScope.Promise.resolve&&(globalScope.Promise.resolve=function(a){return new globalScope.Promise(function(b){b(a)})}),\"function\"!=typeof globalScope.Promise.reject&&(globalScope.Promise.reject=function(a){return new globalScope.Promise(function(b,c){c(a)})}),void(\"function\"!=typeof globalScope.Promise.prototype[\"catch\"]&&(globalScope.Promise.prototype[\"catch\"]=function(a){return globalScope.Promise.prototype.then(void 0,a)}));var b=0,c=1,d=2,e=500,f={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(a){a._status!==b&&(this.handlers=this.handlers.concat(a._handlers),a._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var a=1,b=Date.now()+a;this.handlers.length>0;){var e=this.handlers.shift(),f=e.thisPromise._status,g=e.thisPromise._value;try{f===c?\"function\"==typeof e.onResolve&&(g=e.onResolve(g)):\"function\"==typeof e.onReject&&(g=e.onReject(g),f=c,e.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(e.thisPromise))}catch(h){f=d,g=h}if(e.nextPromise._updateStatus(f,g),Date.now()>=b)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(a){this.unhandledRejections.push({promise:a,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(a){a._unhandledRejection=!1;for(var b=0;be){var c=this.unhandledRejections[b].promise._value,d=\"Unhandled rejection: \"+c;c.stack&&(d+=\"\\n\"+c.stack),warn(d),this.unhandledRejections.splice(b),b--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),e))}};a.all=function(b){function c(a){g._status!==d&&(i=[],f(a))}var e,f,g=new a(function(a,b){e=a,f=b}),h=b.length,i=[];if(0===h)return e(i),g;for(var j=0,k=b.length;k>j;++j){var l=b[j],m=function(a){return function(b){g._status!==d&&(i[a]=b,h--,0===h&&e(i))}}(j);a.isPromise(l)?l.then(m,c):m(l)}return g},a.isPromise=function(a){return a&&\"function\"==typeof a.then},a.resolve=function(b){return new a(function(a){a(b)})},a.reject=function(b){return new a(function(a,c){c(b)})},a.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(b,e){if(this._status!==c&&this._status!==d){if(b===c&&a.isPromise(e))return void e.then(this._updateStatus.bind(this,c),this._updateStatus.bind(this,d));this._status=b,this._value=e,b===d&&0===this._handlers.length&&(this._unhandledRejection=!0,f.addUnhandledRejection(this)),f.scheduleHandlers(this)}},_resolve:function(a){this._updateStatus(c,a)},_reject:function(a){this._updateStatus(d,a)},then:function(b,c){var d=new a(function(a,b){this.resolve=a,this.reject=b});return this._handlers.push({thisPromise:this,onResolve:b,onReject:c,nextPromise:d}),f.scheduleHandlers(this),d},\"catch\":function(a){return this.then(void 0,a)}},globalScope.Promise=a}();var StatTimer=function(){function a(a,b,c){for(;a.lengthb;++b){var g=d[b].name;g.length>f&&(f=g.length)}for(b=0,c=d.length;c>b;++b){var h=d[b],i=h.end-h.start;e+=a(h.name,\" \",f)+\" \"+i+\"ms\\n\"}return e}},b}();PDFJS.createBlob=function(a,b){if(\"undefined\"!=typeof Blob)return new Blob([a],{type:b});var c=new MozBlobBuilder;return c.append(a),c.getBlob(b)},PDFJS.createObjectURL=function(){var a=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";return function(b,c){if(!PDFJS.disableCreateObjectURL&&\"undefined\"!=typeof URL&&URL.createObjectURL){var d=PDFJS.createBlob(b,c);return URL.createObjectURL(d)}for(var e=\"data:\"+c+\";base64,\",f=0,g=b.length;g>f;f+=3){var h=255&b[f],i=255&b[f+1],j=255&b[f+2],k=h>>2,l=(3&h)<<4|i>>4,m=g>f+1?(15&i)<<2|j>>6:64,n=g>f+2?63&j:64;e+=a[k]+a[l]+a[m]+a[n]}return e}}(),MessageHandler.prototype={on:function(a,b,c){var d=this.actionHandler;d[a]&&error('There is already an actionName called \"'+a+'\"'),d[a]=[b,c]},send:function(a,b,c){var d={action:a,data:b};this.postMessage(d,c)},sendWithPromise:function(a,b,c){var d=this.callbackIndex++,e={action:a,data:b,callbackId:d},f=createPromiseCapability();this.callbacksCapabilities[d]=f;try{this.postMessage(e,c)}catch(g){f.reject(g)}return f.promise},postMessage:function(a,b){b&&this.postMessageTransfers?this.comObj.postMessage(a,b):this.comObj.postMessage(a)}};\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = JpxImage;\n\n/***/ }),\n\n/***/ \"../codecs/openJPEG-FixedMemory.js\":\n/*!*****************************************!*\\\n !*** ../codecs/openJPEG-FixedMemory.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n/*! OpenJPEG.js - v0.2.0 - 2016-06-07 | (c) 2016 Chris Hafey | https://github.com/chafey/openjpeg */\n\n// Notes:\n// - Had to add export default at the bottom\n// - Had to patch parsejsfunc, see https://github.com/svaarala/duktape/issues/410\nvar OpenJPEG = function(Module) {\n Module = Module || {};\n\nvar Module;if(!Module)Module=(typeof OpenJPEG!==\"undefined\"?OpenJPEG:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window===\"object\";var ENVIRONMENT_IS_WORKER=typeof importScripts===\"function\";var ENVIRONMENT_IS_NODE=typeof process===\"object\"&&typeof require===\"function\"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module[\"print\"])Module[\"print\"]=function print(x){process[\"stdout\"].write(x+\"\\n\")};if(!Module[\"printErr\"])Module[\"printErr\"]=function printErr(x){process[\"stderr\"].write(x+\"\\n\")};var nodeFS=require(\"fs\");var nodePath=require(\"path\");Module[\"read\"]=function read(filename,binary){filename=nodePath[\"normalize\"](filename);var ret=nodeFS[\"readFileSync\"](filename);if(!ret&&filename!=nodePath[\"resolve\"](filename)){filename=path.join(__dirname,\"..\",\"src\",filename);ret=nodeFS[\"readFileSync\"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module[\"load\"]=function load(f){globalEval(read(f))};if(!Module[\"thisProgram\"]){if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}else{Module[\"thisProgram\"]=\"unknown-program\"}}Module[\"arguments\"]=process[\"argv\"].slice(2);if(typeof module!==\"undefined\"){module[\"exports\"]=Module}process[\"on\"](\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else if(ENVIRONMENT_IS_SHELL){if(!Module[\"print\"])Module[\"print\"]=print;if(typeof printErr!=\"undefined\")Module[\"printErr\"]=printErr;if(typeof read!=\"undefined\"){Module[\"read\"]=read}else{Module[\"read\"]=function read(){throw\"no read() available (jsc?)\"}}Module[\"readBinary\"]=function readBinary(f){if(typeof readbuffer===\"function\"){return new Uint8Array(readbuffer(f))}var data=read(f,\"binary\");assert(typeof data===\"object\");return data};if(typeof scriptArgs!=\"undefined\"){Module[\"arguments\"]=scriptArgs}else if(typeof arguments!=\"undefined\"){Module[\"arguments\"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module[\"read\"]=function read(url){var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!=\"undefined\"){Module[\"arguments\"]=arguments}if(typeof console!==\"undefined\"){if(!Module[\"print\"])Module[\"print\"]=function print(x){console.log(x)};if(!Module[\"printErr\"])Module[\"printErr\"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module[\"print\"])Module[\"print\"]=TRY_USE_DUMP&&typeof dump!==\"undefined\"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module[\"load\"]=importScripts}if(typeof Module[\"setWindowTitle\"]===\"undefined\"){Module[\"setWindowTitle\"]=(function(title){document.title=title})}}else{throw\"Unknown runtime environment. Where are we?\"}function globalEval(x){eval.call(null,x)}if(!Module[\"load\"]&&Module[\"read\"]){Module[\"load\"]=function load(f){globalEval(Module[\"read\"](f))}}if(!Module[\"print\"]){Module[\"print\"]=(function(){})}if(!Module[\"printErr\"]){Module[\"printErr\"]=Module[\"print\"]}if(!Module[\"arguments\"]){Module[\"arguments\"]=[]}if(!Module[\"thisProgram\"]){Module[\"thisProgram\"]=\"./this.program\"}Module.print=Module[\"print\"];Module.printErr=Module[\"printErr\"];Module[\"preRun\"]=[];Module[\"postRun\"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return Runtime.QUANTUM_SIZE}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type===\"double\"||type===\"i64\"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type==\"i64\"||type==\"double\"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module[\"dynCall_\"+sig].apply(null,args)}else{return Module[\"dynCall_\"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module[\"Runtime\"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}var globalScope=this;function getCFunc(ident){var func=Module[\"_\"+ident];if(!func){try{func=eval(\"_\"+ident)}catch(e){}}assert(func,\"Cannot call unknown function \"+ident+\" (perhaps LLVM optimizations or closure removed it?)\");return func}var cwrap,ccall;((function(){var JSfuncs={\"stackSave\":(function(){Runtime.stackSave()}),\"stackRestore\":(function(){Runtime.stackRestore()}),\"arrayToC\":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}Module[\"setValue\"]=setValue;function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for setValue: \"+type)}return null}Module[\"getValue\"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module[\"ALLOC_NORMAL\"]=ALLOC_NORMAL;Module[\"ALLOC_STACK\"]=ALLOC_STACK;Module[\"ALLOC_STATIC\"]=ALLOC_STATIC;Module[\"ALLOC_DYNAMIC\"]=ALLOC_DYNAMIC;Module[\"ALLOC_NONE\"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret=\"\";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module[\"UTF8ToString\"](ptr)}Module[\"Pointer_stringify\"]=Pointer_stringify;function AsciiToString(ptr){var str=\"\";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module[\"AsciiToString\"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module[\"stringToAscii\"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module[\"UTF8ArrayToString\"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module[\"UTF8ToString\"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module[\"stringToUTF8Array\"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module[\"stringToUTF8\"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module[\"lengthBytesUTF8\"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str=\"\";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module[\"UTF16ToString\"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module[\"stringToUTF16\"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module[\"lengthBytesUTF16\"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str=\"\";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module[\"UTF32ToString\"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module[\"stringToUTF32\"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}Module[\"lengthBytesUTF32\"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module[\"___cxa_demangle\"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module[\"___cxa_demangle\"](buf,0,0,status);if(getValue(status,\"i32\")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={\"v\":\"void\",\"b\":\"bool\",\"c\":\"char\",\"s\":\"short\",\"i\":\"int\",\"l\":\"long\",\"f\":\"float\",\"d\":\"double\",\"w\":\"wchar_t\",\"a\":\"signed char\",\"h\":\"unsigned char\",\"t\":\"unsigned short\",\"j\":\"unsigned int\",\"m\":\"unsigned long\",\"x\":\"long long\",\"y\":\"unsigned long long\",\"z\":\"...\"};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre=\"\";for(var a=0;a\"}else{ret=name}paramLoop:while(i0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case\"P\":list.push(parse(true,1,true)[0]+\"*\");break;case\"R\":list.push(parse(true,1,true)[0]+\"&\");break;case\"L\":{i++;var end=func.indexOf(\"E\",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case\"A\":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!==\"_\")throw\"?\";i++;list.push(parse(true,1,true)[0]+\" [\"+size+\"]\");break};case\"E\":break paramLoop;default:ret+=\"?\"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]===\"void\")list=[];if(rawList){if(ret){list.push(ret+\"?\")}return list}else{return ret+flushList()}}var parsed=func;try{if(func==\"Object._main\"||func==\"_main\"){return\"main()\"}if(typeof func===\"number\")func=Pointer_stringify(func);if(func[0]!==\"_\")return func;if(func[1]!==\"_\")return func;if(func[2]!==\"Z\")return func;switch(func[3]){case\"n\":return\"operator new()\";case\"d\":return\"operator delete()\"}parsed=parse()}catch(e){parsed+=\"?\"}if(parsed.indexOf(\"?\")>=0&&!hasLibcxxabi){Runtime.warnOnce(\"warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\")}return parsed}function demangleAll(text){return text.replace(/__Z[\\w\\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+\" [\"+y+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module[\"stackTrace\"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module[\"TOTAL_STACK\"]||5242880;var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||4e8;var totalMemory=64*1024;while(totalMemory0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Runtime.dynCall(\"v\",func)}else{Runtime.dynCall(\"vi\",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module[\"addOnPreRun\"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module[\"addOnInit\"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module[\"addOnPreMain\"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module[\"addOnExit\"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module[\"addOnPostRun\"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module[\"intArrayFromString\"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join(\"\")}Module[\"intArrayToString\"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i>0]=chr;i=i+1}}Module[\"writeStringToMemory\"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i>0]=array[i]}}Module[\"writeArrayToMemory\"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module[\"writeAsciiToMemory\"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math[\"imul\"]||Math[\"imul\"](4294967295,5)!==-5)Math[\"imul\"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math[\"imul\"];if(!Math[\"clz32\"])Math[\"clz32\"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math[\"clz32\"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}}Module[\"addRunDependency\"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module[\"removeRunDependency\"]=removeRunDependency;Module[\"preloadedImages\"]={};Module[\"preloadedAudios\"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+25664;__ATINIT__.push();allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],\"i8\",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,\"i8\",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}Module[\"_i64Subtract\"]=_i64Subtract;var _floorf=Math_floor;Module[\"_bitshift64Ashr\"]=_bitshift64Ashr;var _SItoF=true;Module[\"_memset\"]=_memset;var _BDtoILow=true;var _ceilf=Math_ceil;Module[\"_bitshift64Shl\"]=_bitshift64Shl;function _abort(){Module[\"abort\"]()}function ___lock(){}function ___unlock(){}Module[\"_i64Add\"]=_i64Add;var _floor=Math_floor;var _sqrt=Math_sqrt;var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method=\"timeout\"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method=\"rAF\"}else if(mode==2){if(!window[\"setImmediate\"]){var setImmediates=[];var emscriptenMainLoopMessageId=\"__emcc\";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener(\"message\",Browser_setImmediate_messageHandler,true);window[\"setImmediate\"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,\"*\")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window[\"setImmediate\"](Browser.mainLoop.runner)};Browser.mainLoop.method=\"immediate\"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module[\"noExitRuntime\"]=true;assert(!Browser.mainLoop.func,\"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.\");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker \"'+blocker.name+'\" took '+(Date.now()-start)+\" ms\");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method===\"timeout\"&&Module.ctx){Module.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!\");Browser.mainLoop.method=\"\"}Browser.mainLoop.runIter((function(){if(typeof arg!==\"undefined\"){Runtime.dynCall(\"vi\",func,[arg])}else{Runtime.dynCall(\"v\",func)}}));if(thisMainLoopId0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw\"SimulateInfiniteLoop\"}}var Browser={mainLoop:{scheduler:null,method:\"\",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module[\"setStatus\"]){var message=Module[\"statusMessage\"]||\"Please wait...\";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src=\"data:audio/x-\"+name.substr(-3)+\";base64,\"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module[\"preloadPlugins\"].push(audioPlugin);var canvas=Module[\"canvas\"];function pointerLockChange(){Browser.pointerLock=document[\"pointerLockElement\"]===canvas||document[\"mozPointerLockElement\"]===canvas||document[\"webkitPointerLockElement\"]===canvas||document[\"msPointerLockElement\"]===canvas}if(canvas){canvas.requestPointerLock=canvas[\"requestPointerLock\"]||canvas[\"mozRequestPointerLock\"]||canvas[\"webkitRequestPointerLock\"]||canvas[\"msRequestPointerLock\"]||(function(){});canvas.exitPointerLock=document[\"exitPointerLock\"]||document[\"mozExitPointerLock\"]||document[\"webkitExitPointerLock\"]||document[\"msExitPointerLock\"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener(\"pointerlockchange\",pointerLockChange,false);document.addEventListener(\"mozpointerlockchange\",pointerLockChange,false);document.addEventListener(\"webkitpointerlockchange\",pointerLockChange,false);document.addEventListener(\"mspointerlockchange\",pointerLockChange,false);if(Module[\"elementPointerLock\"]){canvas.addEventListener(\"click\",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor=\"black\"}else{ctx=canvas.getContext(\"2d\")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx===\"undefined\",\"cannot set in module if GLctx is used, but we are a non-GL context that would replace it\");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer===\"undefined\")Browser.lockPointer=true;if(typeof Browser.resizeCanvas===\"undefined\")Browser.resizeCanvas=false;if(typeof Browser.vrDevice===\"undefined\")Browser.vrDevice=null;var canvas=Module[\"canvas\"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document[\"webkitFullScreenElement\"]||document[\"webkitFullscreenElement\"]||document[\"mozFullScreenElement\"]||document[\"mozFullscreenElement\"]||document[\"fullScreenElement\"]||document[\"fullscreenElement\"]||document[\"msFullScreenElement\"]||document[\"msFullscreenElement\"]||document[\"webkitCurrentFullScreenElement\"])===canvasContainer){canvas.cancelFullScreen=document[\"cancelFullScreen\"]||document[\"mozCancelFullScreen\"]||document[\"webkitCancelFullScreen\"]||document[\"msExitFullscreen\"]||document[\"exitFullscreen\"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module[\"onFullScreen\"])Module[\"onFullScreen\"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener(\"fullscreenchange\",fullScreenChange,false);document.addEventListener(\"mozfullscreenchange\",fullScreenChange,false);document.addEventListener(\"webkitfullscreenchange\",fullScreenChange,false);document.addEventListener(\"MSFullscreenChange\",fullScreenChange,false)}var canvasContainer=document.createElement(\"div\");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer[\"requestFullScreen\"]||canvasContainer[\"mozRequestFullScreen\"]||canvasContainer[\"msRequestFullscreen\"]||(canvasContainer[\"webkitRequestFullScreen\"]?(function(){canvasContainer[\"webkitRequestFullScreen\"](Element[\"ALLOW_KEYBOARD_INPUT\"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window===\"undefined\"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window[\"requestAnimationFrame\"]||window[\"mozRequestAnimationFrame\"]||window[\"webkitRequestAnimationFrame\"]||window[\"msRequestAnimationFrame\"]||window[\"oRequestAnimationFrame\"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module[\"noExitRuntime\"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module[\"noExitRuntime\"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{\"jpg\":\"image/jpeg\",\"jpeg\":\"image/jpeg\",\"png\":\"image/png\",\"bmp\":\"image/bmp\",\"ogg\":\"audio/ogg\",\"wav\":\"audio/wav\",\"mp3\":\"audio/mpeg\"}[name.substr(name.lastIndexOf(\".\")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator[\"getUserMedia\"]||navigator[\"mozGetUserMedia\"]}window.getUserMedia(func)}),getMovementX:(function(event){return event[\"movementX\"]||event[\"mozMovementX\"]||event[\"webkitMovementX\"]||0}),getMovementY:(function(event){return event[\"movementY\"]||event[\"mozMovementY\"]||event[\"webkitMovementY\"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case\"DOMMouseScroll\":delta=event.detail;break;case\"mousewheel\":delta=event.wheelDelta;break;case\"wheel\":delta=event[\"deltaY\"];break;default:throw\"unrecognized mouse wheel event: \"+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!=\"mousemove\"&&\"mozMovementX\"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!=\"undefined\"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module[\"canvas\"].getBoundingClientRect();var cw=Module[\"canvas\"].width;var ch=Module[\"canvas\"].height;var scrollX=typeof window.scrollX!==\"undefined\"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!==\"undefined\"?window.scrollY:window.pageYOffset;if(event.type===\"touchstart\"||event.type===\"touchend\"||event.type===\"touchmove\"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type===\"touchstart\"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type===\"touchend\"||event.type===\"touchmove\"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,true);xhr.responseType=\"arraybuffer\";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file \"'+url+'\" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency(\"al \"+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file \"'+url+'\" failed.'}}));if(!noRunDep)addRunDependency(\"al \"+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module[\"canvas\"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module[\"canvas\"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module[\"forcedAspectRatio\"]&&Module[\"forcedAspectRatio\"]>0){if(w/h>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___setErrNo(value){if(Module[\"___errno_location\"])HEAP32[Module[\"___errno_location\"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator===\"object\")return navigator[\"hardwareConcurrency\"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module[\"_bitshift64Lshr\"]=_bitshift64Lshr;var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall(\"vi\",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,\"cannot pop if something else added meanwhile!\");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module[\"_memcpy\"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort(\"cannot dynamically allocate, sbrk now has control\")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}var _BItoD=true;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module[\"requestFullScreen\"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module[\"requestAnimationFrame\"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module[\"setCanvasSize\"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module[\"pauseMainLoop\"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module[\"resumeMainLoop\"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module[\"getUserMedia\"]=function Module_getUserMedia(){Browser.getUserMedia()};Module[\"createContext\"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE>2]=d;if((c[a+8>>2]|0)==16)k=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else k=c[a+12>>2]|0;g=(c[a+80>>2]|0)+16|0;h=(c[g>>2]|0)>>>0<257?1:2;j=h+1|0;if(j>>>0>d>>>0){Ub(e,1,14585,m)|0;e=0;i=m;return e|0}c[f>>2]=d-j;qb(b,l,h);d=c[l>>2]|0;if(d>>>0>=(c[g>>2]|0)>>>0){Ub(e,1,14611,m+8|0)|0;e=0;i=m;return e|0}qb(b+h|0,(c[k+5584>>2]|0)+(d*1080|0)|0,1);if(!(Fe(a,c[l>>2]|0,b+j|0,f,e)|0)){Ub(e,1,14585,m+16|0)|0;e=0;i=m;return e|0}if(!(c[f>>2]|0)){e=1;i=m;return e|0}Ub(e,1,14585,m+24|0)|0;e=0;i=m;return e|0}function ge(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k+8|0;f=k+20|0;h=c[(c[a+80>>2]|0)+16>>2]|0;g=h>>>0<257?1:2;if((g+2|0)!=(d|0)){Ub(e,1,14502,k)|0;j=0;i=k;return j|0}if((c[a+8>>2]|0)==16)a=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else a=c[a+12>>2]|0;qb(b,f,g);qb(b+g|0,k+16|0,1);d=c[f>>2]|0;if(d>>>0>>0){qb(b+(g+1)|0,(c[a+5584>>2]|0)+(d*1080|0)+808|0,1);j=1;i=k;return j|0}else{c[j>>2]=d;c[j+4>>2]=h;Ub(e,1,14528,j)|0;j=0;i=k;return j|0}return 0}function he(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+16|0;f=h+12|0;c[f>>2]=d;if(!(Ee(a,0,b,f,e)|0)){Ub(e,1,14476,h)|0;g=0;i=h;return g|0}if(c[f>>2]|0){Ub(e,1,14476,h+8|0)|0;g=0;i=h;return g|0}if((c[a+8>>2]|0)==16)f=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else f=c[a+12>>2]|0;f=c[f+5584>>2]|0;d=a+80|0;if((c[(c[d>>2]|0)+16>>2]|0)>>>0<=1){g=1;i=h;return g|0}e=f+24|0;a=f+804|0;g=f+28|0;b=1;while(1){c[f+1104>>2]=c[e>>2];c[f+1884>>2]=c[a>>2];Ui(f+1108|0,g|0,776)|0;b=b+1|0;if(b>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){f=1;break}else f=f+1080|0}i=h;return f|0}function ie(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+32|0;m=o+24|0;l=o+16|0;g=o+8|0;f=o;k=o+40|0;h=o+36|0;c[k>>2]=d;j=a+80|0;do if((c[(c[j>>2]|0)+16>>2]|0)>>>0<257){if(d){qb(b,h,1);g=b+1|0;b=d+-1|0;break}Ub(e,1,14129,f)|0;n=0;i=o;return n|0}else{if(d>>>0>=2){qb(b,h,2);g=b+2|0;b=d+-2|0;break}Ub(e,1,14129,g)|0;n=0;i=o;return n|0}while(0);c[k>>2]=b;f=c[h>>2]|0;b=c[(c[j>>2]|0)+16>>2]|0;if(f>>>0>=b>>>0){c[l>>2]=f;c[l+4>>2]=b;Ub(e,1,14155,l)|0;n=0;i=o;return n|0}if(!(Ee(a,f,g,k,e)|0)){Ub(e,1,14129,m)|0;n=0;i=o;return n|0}if(!(c[k>>2]|0)){n=1;i=o;return n|0}Ub(e,1,14129,n)|0;n=0;i=o;return n|0}function je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+16|0;h=t+8|0;s=t+12|0;r=c[(c[b+80>>2]|0)+16>>2]|0;q=r>>>0<257?1:2;p=(q<<1)+5|0;g=(e>>>0)/(p>>>0)|0;if((g|0)==0|((e>>>0)%(p>>>0)|0|0)!=0){Ub(f,1,14085,t)|0;s=0;i=t;return s|0}if((c[b+8>>2]|0)==16)p=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else p=c[b+12>>2]|0;e=p+5636|0;b=a[e>>0]|0;if(!(b&4))o=0;else o=(c[p+420>>2]|0)+1|0;n=o+g|0;if(n>>>0>31){c[h>>2]=n;Ub(f,1,14111,h)|0;s=0;i=t;return s|0}a[e>>0]=b|4;if(o>>>0>>0){f=q+1|0;m=p+8|0;h=q+3|0;j=q|4;k=j+q|0;l=k+1|0;b=d;g=o;e=p+424+(o*148|0)|0;while(1){qb(b,e,1);qb(b+1|0,e+4|0,q);d=e+8|0;qb(b+f|0,d,2);u=c[d>>2]|0;o=c[m>>2]|0;c[d>>2]=u>>>0>>0?u:o;qb(b+h|0,e+12|0,1);d=e+16|0;qb(b+j|0,d,q);qb(b+k|0,s,1);c[e+36>>2]=c[s>>2];o=c[d>>2]|0;c[d>>2]=o>>>0>>0?o:r;g=g+1|0;if(g>>>0>=n>>>0)break;else{b=b+l|0;e=e+148|0}}}c[p+420>>2]=n+-1;u=1;i=t;return u|0}function ke(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+144|0;L=M+128|0;H=M+120|0;G=M+112|0;F=M+104|0;E=M+96|0;D=M+88|0;A=M+72|0;t=M+64|0;r=M+56|0;q=M+48|0;p=M+40|0;s=M+32|0;l=M+24|0;j=M+16|0;h=M+136|0;w=M+132|0;J=c[d+80>>2]|0;K=d+88|0;if(f>>>0<36){Ub(g,1,13440,M)|0;g=0;i=M;return g|0}I=f+-36|0;o=(I>>>0)/3|0;if((I>>>0)%3|0){Ub(g,1,13440,M+8|0)|0;g=0;i=M;return g|0}qb(e,h,2);b[K>>1]=c[h>>2];x=J+8|0;qb(e+2|0,x,4);B=J+12|0;qb(e+6|0,B,4);qb(e+10|0,J,4);n=J+4|0;qb(e+14|0,n,4);v=d+100|0;qb(e+18|0,v,4);z=d+104|0;qb(e+22|0,z,4);u=d+92|0;qb(e+26|0,u,4);y=d+96|0;qb(e+30|0,y,4);qb(e+34|0,h,2);k=e+36|0;f=c[h>>2]|0;if(f>>>0>=16385){c[j>>2]=f;Ub(g,1,13468,j)|0;g=0;i=M;return g|0}f=f&65535;I=J+16|0;c[I>>2]=f;if((f|0)!=(o|0)){c[l>>2]=f;c[l+4>>2]=o;Ub(g,1,13529,l)|0;g=0;i=M;return g|0}l=c[J>>2]|0;m=c[x>>2]|0;if(m>>>0>l>>>0){f=c[n>>2]|0;e=c[B>>2]|0;if(f>>>0>>0){h=c[v>>2]|0;j=c[z>>2]|0;if(!(_(j,h)|0)){c[p>>2]=h;c[p+4>>2]=j;Ub(g,1,13705,p)|0;g=0;i=M;return g|0}s=Zi(e|0,0,m|0,0)|0;if(!((s|0)==(_(e,m)|0)&(C|0)==0)){c[q>>2]=m;c[q+4>>2]=e;Ub(g,1,13766,q)|0;g=0;i=M;return g|0}m=c[u>>2]|0;p=Si(m|0,0,h|0,0)|0;q=C;n=c[y>>2]|0;s=Si(n|0,0,j|0,0)|0;if(m>>>0<=l>>>0?n>>>0<=f>>>0&(p|0-q)>>>0>l>>>0&(s|0-C)>>>0>f>>>0:0){e=Qc(o,52)|0;o=J+24|0;c[o>>2]=e;if(!e){c[I>>2]=0;Ub(g,1,13852,t)|0;g=0;i=M;return g|0}a:do if(c[I>>2]|0){l=d+168|0;f=0;j=e;while(1){qb(k,w,1);c[j+24>>2]=(c[w>>2]&127)+1;c[j+32>>2]=(c[w>>2]|0)>>>7;qb(k+1|0,w,1);c[j>>2]=c[w>>2];qb(k+2|0,w,1);h=c[w>>2]|0;c[j+4>>2]=h;e=c[j>>2]|0;if((h+-1|0)>>>0>254|(e+-1|0)>>>0>254)break;c[j+36>>2]=0;c[j+40>>2]=c[l>>2];f=f+1|0;if(f>>>0>=(c[I>>2]|0)>>>0)break a;else{k=k+3|0;j=j+52|0}}c[A>>2]=f;c[A+4>>2]=e;c[A+8>>2]=h;Ub(g,1,13900,A)|0;g=0;i=M;return g|0}while(0);m=c[u>>2]|0;l=c[v>>2]|0;k=((c[x>>2]|0)+-1-m+l|0)/(l|0)|0;c[d+112>>2]=k;j=c[y>>2]|0;h=c[z>>2]|0;e=((c[B>>2]|0)+-1-j+h|0)/(h|0)|0;c[d+116>>2]=e;if(!((e|0)==0|(k|0)==0)?k>>>0<=(65535/(e>>>0)|0)>>>0:0){n=_(k,e)|0;f=d+28|0;if(!(a[d+76>>0]&2)){c[f>>2]=0;c[d+32>>2]=0;c[d+36>>2]=k;c[d+40>>2]=e}else{c[f>>2]=(((c[f>>2]|0)-m|0)>>>0)/(l>>>0)|0;D=d+32|0;c[D>>2]=(((c[D>>2]|0)-j|0)>>>0)/(h>>>0)|0;D=d+36|0;c[D>>2]=((c[D>>2]|0)+-1-m+l|0)/(l|0)|0;D=d+40|0;c[D>>2]=((c[D>>2]|0)+-1-j+h|0)/(h|0)|0}D=Qc(n,5640)|0;k=d+164|0;c[k>>2]=D;if(!D){Ub(g,1,13852,E)|0;g=0;i=M;return g|0}E=Qc(c[I>>2]|0,1080)|0;e=d+12|0;c[(c[e>>2]|0)+5584>>2]=E;if(!E){Ub(g,1,13852,F)|0;g=0;i=M;return g|0}F=Qc(10,20)|0;f=c[e>>2]|0;c[f+5612>>2]=F;if(!F){Ub(g,1,13852,G)|0;g=0;i=M;return g|0}c[f+5620>>2]=10;G=Qc(10,20)|0;f=c[e>>2]|0;c[f+5624>>2]=G;if(!G){Ub(g,1,13852,H)|0;g=0;i=M;return g|0}c[f+5632>>2]=10;j=c[I>>2]|0;if(j){h=c[o>>2]|0;f=f+5584|0;e=0;do{if(!(c[h+(e*52|0)+32>>2]|0))c[(c[f>>2]|0)+(e*1080|0)+1076>>2]=1<<(c[h+(e*52|0)+24>>2]|0)+-1;e=e+1|0}while(e>>>0>>0)}b:do if(n){f=c[k>>2]|0;H=Qc(j,1080)|0;c[f+5584>>2]=H;if(H){e=0;while(1){e=e+1|0;if(e>>>0>=n>>>0)break b;H=Qc(c[I>>2]|0,1080)|0;c[f+11224>>2]=H;if(!H)break;else f=f+5640|0}}Ub(g,1,13852,L)|0;g=0;i=M;return g|0}while(0);c[d+8>>2]=4;_b(J,K);g=1;i=M;return g|0}c[D>>2]=k;c[D+4>>2]=e;Ub(g,1,14002,D)|0;g=0;i=M;return g|0}Ub(g,1,13808,r)|0;g=0;i=M;return g|0}}else{e=c[B>>2]|0;f=c[n>>2]|0}c[s>>2]=m-l;c[s+4>>2]=e-f;Ub(g,1,13643,s)|0;g=0;i=M;return g|0}function le(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+32|0;a=f+12|0;if(d>>>0<2){Ub(e,1,13414,f)|0;e=0;i=f;return e|0}qb(b,f+16|0,1);qb(b+1|0,a,1);b=c[a>>2]|0;if(!(((d+-2|0)>>>0)%(((b>>>5&2)+2+(b>>>4&3)|0)>>>0)|0)){e=1;i=f;return e|0}Ub(e,1,13414,f+8|0)|0;e=0;i=f;return e|0}function me(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=i;i=i+16|0;if(!c){Ub(d,1,13388,a)|0;b=0}else b=1;i=a;return b|0}function ne(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k+8|0;h=k+12|0;if(!d){Ub(e,1,13362,k)|0;e=0;i=k;return e|0}qb(b,k+16|0,1);f=d+-1|0;if(!f){e=1;i=k;return e|0}else{g=0;a=0}do{b=b+1|0;qb(b,h,1);d=c[h>>2]|0;if(!(d&128))a=0;else a=(d&127|a)<<7;g=g+1|0}while((g|0)!=(f|0));if(!a){e=1;i=k;return e|0}Ub(e,1,13362,j)|0;e=0;i=k;return e|0}function oe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+32|0;l=p+24|0;h=p+16|0;g=p+8|0;n=p+36|0;if(e>>>0<2){Ub(f,1,13276,p)|0;o=0;i=p;return o|0}m=b+184|0;a[m>>0]=a[m>>0]|1;qb(d,n,1);m=d+1|0;k=e+-1|0;j=b+124|0;e=c[j>>2]|0;do if(e){g=b+120|0;d=c[n>>2]|0;if((c[g>>2]|0)>>>0<=d>>>0){b=d+1|0;d=Tc(e,b<<3)|0;if(d){c[j>>2]=d;e=c[g>>2]|0;Qi(d+(e<<3)|0,0,b-e<<3|0)|0;c[g>>2]=b;e=c[j>>2]|0;break}Ub(f,1,13302,h)|0;o=0;i=p;return o|0}}else{d=(c[n>>2]|0)+1|0;e=Qc(d,8)|0;c[j>>2]=e;if(e){c[b+120>>2]=d;break}Ub(f,1,13302,g)|0;o=0;i=p;return o|0}while(0);d=c[n>>2]|0;if(c[e+(d<<3)>>2]|0){c[l>>2]=d;Ub(f,1,13340,l)|0;o=0;i=p;return o|0}l=Pc(k)|0;e=c[n>>2]|0;d=c[j>>2]|0;c[d+(e<<3)>>2]=l;if(!l){Ub(f,1,13302,o)|0;o=0;i=p;return o|0}else{c[d+(e<<3)+4>>2]=k;Ui(c[d+(c[n>>2]<<3)>>2]|0,m|0,k|0)|0;o=1;i=p;return o|0}return 0}function pe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+40|0;o=r+32|0;k=r+24|0;j=r+16|0;p=r+44|0;if(e>>>0<2){Ub(f,1,13127,r)|0;q=0;i=r;return q|0}if(a[b+184>>0]&1){Ub(f,1,13153,r+8|0)|0;q=0;i=r;return q|0}h=c[b+200>>2]|0;g=c[b+164>>2]|0;n=g+(h*5640|0)+5636|0;a[n>>0]=a[n>>0]|2;qb(d,p,1);n=d+1|0;m=e+-1|0;l=g+(h*5640|0)+5164|0;d=c[l>>2]|0;do if(d){g=g+(h*5640|0)+5160|0;b=c[p>>2]|0;if((c[g>>2]|0)>>>0<=b>>>0){e=b+1|0;b=Tc(d,e<<3)|0;if(b){c[l>>2]=b;d=c[g>>2]|0;Qi(b+(d<<3)|0,0,e-d<<3|0)|0;c[g>>2]=e;d=c[l>>2]|0;break}Ub(f,1,8775,k)|0;q=0;i=r;return q|0}}else{b=(c[p>>2]|0)+1|0;d=Qc(b,8)|0;c[l>>2]=d;if(d){c[g+(h*5640|0)+5160>>2]=b;break}Ub(f,1,8775,j)|0;q=0;i=r;return q|0}while(0);b=c[p>>2]|0;if(c[d+(b<<3)>>2]|0){c[o>>2]=b;Ub(f,1,13254,o)|0;q=0;i=r;return q|0}o=Pc(m)|0;d=c[p>>2]|0;b=c[l>>2]|0;c[b+(d<<3)>>2]=o;if(!o){Ub(f,1,8775,q)|0;q=0;i=r;return q|0}else{c[b+(d<<3)+4>>2]=m;Ui(c[b+(c[p>>2]<<3)>>2]|0,n|0,m|0)|0;q=1;i=r;return q|0}return 0}function qe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=i;i=i+16|0;if((c[(c[a+80>>2]|0)+16>>2]<<2|0)==(d|0)){e=1;i=b;return e|0}Ub(e,1,13101,b)|0;e=0;i=b;return e|0}function re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 1}function se(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;q=s+32|0;l=s+24|0;p=s+44|0;if((c[a+8>>2]|0)==16)j=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else j=c[a+12>>2]|0;if(d>>>0<2){Ub(e,1,12933,s)|0;r=0;i=s;return r|0}qb(b,p,2);if(c[p>>2]|0){Ub(e,2,12959,s+8|0)|0;r=1;i=s;return r|0}if(d>>>0<7){Ub(e,1,12933,s+16|0)|0;r=0;i=s;return r|0}qb(b+2|0,p,2);n=b+4|0;o=c[p>>2]&255;k=j+5612|0;f=c[k>>2]|0;m=j+5616|0;a=c[m>>2]|0;a:do if(!a){g=0;h=f}else{g=0;h=f;do{if((c[h+8>>2]|0)==(o|0))break a;h=h+20|0;g=g+1|0}while(g>>>0>>0)}while(0);if((g|0)==(a|0)){g=j+5620|0;do if((a|0)==(c[g>>2]|0)){a=a+10|0;c[g>>2]=a;a=Tc(f,a*20|0)|0;if(a){c[k>>2]=a;f=c[m>>2]|0;Qi(a+(f*20|0)|0,0,((c[g>>2]|0)-f|0)*20|0)|0;f=c[k>>2]|0;a=c[m>>2]|0;break}Uc(c[k>>2]|0);c[k>>2]=0;c[g>>2]=0;c[m>>2]=0;Ub(e,1,13019,l)|0;r=0;i=s;return r|0}while(0);c[m>>2]=a+1;h=f+(a*20|0)|0}g=h+12|0;a=c[g>>2]|0;if(a){Uc(a);c[g>>2]=0}c[h+8>>2]=o;o=c[p>>2]|0;c[h+4>>2]=o>>>8&3;c[h>>2]=o>>>10&3;qb(n,p,2);if(c[p>>2]|0){Ub(e,2,13057,q)|0;r=1;i=s;return r|0}a=d+-6|0;f=Pc(a)|0;c[g>>2]=f;if(!f){Ub(e,1,12933,r)|0;r=0;i=s;return r|0}else{Ui(f|0,b+6|0,a|0)|0;c[h+16>>2]=a;r=1;i=s;return r|0}return 0}function te(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;h=j+12|0;a=a+80|0;g=c[(c[a>>2]|0)+16>>2]|0;if((g+2|0)!=(d|0)){Ub(e,1,12907,j)|0;h=0;i=j;return h|0}qb(b,f,2);if((c[f>>2]|0)!=(g|0)){Ub(e,1,12907,j+8|0)|0;h=0;i=j;return h|0}if(!g){h=1;i=j;return h|0}f=b+2|0;b=0;a=c[(c[a>>2]|0)+24>>2]|0;while(1){qb(f,h,1);c[a+32>>2]=(c[h>>2]|0)>>>7&1;c[a+24>>2]=(c[h>>2]&127)+1;b=b+1|0;if((b|0)==(g|0)){a=1;break}else{f=f+1|0;a=a+52|0}}i=j;return a|0}function ue(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,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;J=i;i=i+144|0;I=J+120|0;H=J+112|0;G=J+104|0;F=J+96|0;E=J+88|0;D=J+80|0;C=J+72|0;B=J+64|0;A=J+56|0;z=J+48|0;p=J+40|0;o=J+32|0;m=J+24|0;x=J+136|0;u=J+132|0;v=J+128|0;w=J+124|0;if((c[b+8>>2]|0)==16)q=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else q=c[b+12>>2]|0;if(e>>>0<2){Ub(f,1,12567,J)|0;I=0;i=J;return I|0}qb(d,x,2);if(c[x>>2]|0){Ub(f,2,12593,J+8|0)|0;I=1;i=J;return I|0}if(e>>>0<7){Ub(f,1,12567,J+16|0)|0;I=0;i=J;return I|0}qb(d+2|0,u,1);n=d+3|0;l=q+5624|0;g=c[l>>2]|0;y=q+5628|0;b=c[y>>2]|0;a:do if(!b){j=0;h=g}else{k=c[u>>2]|0;j=0;h=g;do{if((c[h>>2]|0)==(k|0))break a;h=h+20|0;j=j+1|0}while(j>>>0>>0)}while(0);if((j|0)==(b|0)){h=q+5632|0;do if((b|0)==(c[h>>2]|0)){b=b+10|0;c[h>>2]=b;b=Tc(g,b*20|0)|0;if(b){c[l>>2]=b;g=c[y>>2]|0;Qi(b+(g*20|0)|0,0,((c[h>>2]|0)-g|0)*20|0)|0;g=c[l>>2]|0;b=c[y>>2]|0;break}Uc(c[l>>2]|0);c[l>>2]=0;c[h>>2]=0;c[y>>2]=0;Ub(f,1,12639,m)|0;I=0;i=J;return I|0}while(0);h=g+(b*20|0)|0}c[h>>2]=c[u>>2];qb(n,x,2);if(c[x>>2]|0){Ub(f,2,12593,o)|0;I=1;i=J;return I|0}qb(d+5|0,v,2);g=c[v>>2]|0;if(g>>>0>1){Ub(f,2,12677,p)|0;I=1;i=J;return I|0}b=e+-7|0;b:do if(g){r=h+4|0;s=h+16|0;t=h+8|0;e=h+12|0;p=q+5612|0;o=q+5616|0;m=d+7|0;n=0;c:while(1){if(b>>>0<3){g=27;break}qb(m,x,1);if((c[x>>2]|0)!=1){g=29;break}qb(m+1|0,w,2);g=b+-3|0;j=c[w>>2]|0;k=(j>>>15)+1|0;j=j&32767;c[r>>2]=j;h=(_(k,j)|0)+2|0;if(g>>>0>>0){g=31;break}b=m+3|0;l=g-h|0;if(j){g=0;do{qb(b,x,k);if((c[x>>2]|0)!=(g|0)){g=34;break c}b=b+k|0;g=g+1|0}while(g>>>0<(c[r>>2]|0)>>>0)}qb(b,w,2);g=b+2|0;h=c[w>>2]|0;j=(h>>>15)+1|0;h=h&32767;c[w>>2]=h;if((h|0)!=(c[r>>2]|0)){g=37;break}b=(_(j,h)|0)+3|0;if(l>>>0>>0){g=39;break}b=l-b|0;if(h){h=0;do{qb(g,x,j);if((c[x>>2]|0)!=(h|0)){g=42;break c}g=g+j|0;h=h+1|0}while(h>>>0<(c[r>>2]|0)>>>0)}qb(g,x,3);m=g+3|0;a[s>>0]=((c[x>>2]|0)>>>16^1)&1|a[s>>0]&-2;c[t>>2]=0;c[e>>2]=0;l=c[x>>2]|0;h=l&255;c[u>>2]=h;if(h){j=c[o>>2]|0;if(!j){g=50;break}k=0;g=c[p>>2]|0;while(1){if((c[g+8>>2]|0)==(h|0))break;k=k+1|0;if(k>>>0>=j>>>0){g=50;break c}else g=g+20|0}c[t>>2]=g}h=l>>>8&255;c[u>>2]=h;if(h){j=c[o>>2]|0;if(!j){g=57;break}k=0;g=c[p>>2]|0;while(1){if((c[g+8>>2]|0)==(h|0))break;k=k+1|0;if(k>>>0>=j>>>0){g=57;break c}else g=g+20|0}c[e>>2]=g}n=n+1|0;if(n>>>0>=(c[v>>2]|0)>>>0)break b}if((g|0)==27){Ub(f,1,12567,z)|0;I=0;i=J;return I|0}else if((g|0)==29){Ub(f,2,12721,A)|0;I=1;i=J;return I|0}else if((g|0)==31){Ub(f,1,12567,B)|0;I=0;i=J;return I|0}else if((g|0)==34){Ub(f,2,12787,C)|0;I=1;i=J;return I|0}else if((g|0)==37){Ub(f,2,12841,D)|0;I=1;i=J;return I|0}else if((g|0)==39){Ub(f,1,12567,E)|0;I=0;i=J;return I|0}else if((g|0)==42){Ub(f,2,12787,F)|0;I=1;i=J;return I|0}else if((g|0)==50){Ub(f,1,12567,G)|0;I=0;i=J;return I|0}else if((g|0)==57){Ub(f,1,12567,H)|0;I=0;i=J;return I|0}}while(0);if(!b){c[y>>2]=(c[y>>2]|0)+1;I=1;i=J;return I|0}else{Ub(f,1,12567,I)|0;I=0;i=J;return I|0}return 0}function ve(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;r=s+24|0;q=s+20|0;n=a+80|0;f=c[n>>2]|0;if((c[a+8>>2]|0)==16)g=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else g=c[a+12>>2]|0;if(!d){Ub(e,1,12486,s)|0;r=0;i=s;return r|0}qb(b,q,1);a=c[q>>2]|0;if(a>>>0>1){Ub(e,2,12512,s+8|0)|0;r=1;i=s;return r|0}if((a+1|0)!=(d|0)){Ub(e,2,12486,s+16|0)|0;r=0;i=s;return r|0}m=g+5584|0;a=c[f+16>>2]|0;if(a){d=0;e=c[m>>2]|0;while(1){c[e+1076>>2]=0;d=d+1|0;if(d>>>0>=a>>>0)break;else e=e+1080|0}}l=g+5604|0;a=c[l>>2]|0;if(a){Uc(a);c[l>>2]=0}if(!(c[q>>2]|0)){r=1;i=s;return r|0}k=g+5624|0;h=g+5628|0;j=0;while(1){b=b+1|0;qb(b,r,1);a=c[n>>2]|0;f=c[k>>2]|0;g=c[h>>2]|0;if(((g|0)!=0?!((g|0)==0?1:(c[f>>2]|0)!=(c[r>>2]|0)):0)?(o=c[f+4>>2]|0,p=a+16|0,(o|0)==(c[p>>2]|0)):0){a=c[f+8>>2]|0;if(a){d=_(o,o)|0;g=_(c[1036+(c[a>>2]<<2)>>2]|0,d)|0;if((c[a+16>>2]|0)!=(g|0)){a=0;d=32;break}e=Pc(d<<2)|0;c[l>>2]=e;if(!e){a=0;d=32;break}Xa[c[1052+(c[a>>2]<<2)>>2]&15](c[a+12>>2]|0,e,d)}a=c[f+12>>2]|0;if(a){d=c[p>>2]|0;g=_(d,c[1036+(c[a>>2]<<2)>>2]|0)|0;if((c[a+16>>2]|0)!=(g|0)){a=0;d=32;break}g=Pc(d<<2)|0;if(!g){a=0;d=32;break}Xa[c[1068+(c[a>>2]<<2)>>2]&15](c[a+12>>2]|0,g,d);a=c[p>>2]|0;if(a){d=0;e=g;f=c[m>>2]|0;while(1){c[f+1076>>2]=c[e>>2];d=d+1|0;if((d|0)==(a|0))break;else{e=e+4|0;f=f+1080|0}}}Uc(g)}}j=j+1|0;if(j>>>0>=(c[q>>2]|0)>>>0){a=1;d=32;break}}if((d|0)==32){i=s;return a|0}return 0}function we(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){qb(a,f,2);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+2|0}}i=g;return}function xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){qb(a,f,4);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=g;return}function ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){ub(a,f);c[b>>2]=~~+g[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=h;return}function ze(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){sb(a,f);c[b>>2]=~~+h[f>>3];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+8|0}}i=g;return}function Ae(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){qb(a,f,2);g[b>>2]=+((c[f>>2]|0)>>>0);e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+2|0}}i=h;return}function Be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;f=h;if(!d){i=h;return}e=0;while(1){qb(a,f,4);g[b>>2]=+((c[f>>2]|0)>>>0);e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=h;return}function Ce(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(!d){i=g;return}e=0;while(1){ub(a,f);c[b>>2]=c[f>>2];e=e+1|0;if((e|0)==(d|0))break;else{b=b+4|0;a=a+4|0}}i=g;return}function De(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;if(!c){i=f;return}d=0;while(1){sb(a,e);g[b>>2]=+h[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}i=f;return}function Ee(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;h=n+8|0;k=n+20|0;if((c[a+8>>2]|0)==16)a=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else a=c[a+12>>2]|0;m=c[a+5584>>2]|0;a=c[e>>2]|0;if(!a){Ub(f,1,14224,n)|0;b=0;i=n;return b|0}c[e>>2]=a+-1;qb(d,k,1);d=d+1|0;g=c[k>>2]&31;j=m+(b*1080|0)+24|0;c[j>>2]=g;c[m+(b*1080|0)+804>>2]=(c[k>>2]|0)>>>5;do if((g|0)==1){a=1;l=8}else{a=(c[e>>2]|0)>>>((g|0)!=0&1);if(a>>>0>97){c[h>>2]=a;c[h+4>>2]=97;c[h+8>>2]=97;Ub(f,2,14260,h)|0;g=c[j>>2]|0}f=(a|0)==0;if(g)if(f){a=0;l=20;break}else{l=8;break}if(!f){g=0;while(1){qb(d,k,1);if(g>>>0<97){c[m+(b*1080|0)+28+(g<<3)>>2]=(c[k>>2]|0)>>>3;c[m+(b*1080|0)+28+(g<<3)+4>>2]=0}g=g+1|0;if((g|0)==(a|0))break;else d=d+1|0}}a=(c[e>>2]|0)-a|0}while(0);if((l|0)==8){g=0;while(1){qb(d,k,2);if(g>>>0<97){c[m+(b*1080|0)+28+(g<<3)>>2]=(c[k>>2]|0)>>>11;c[m+(b*1080|0)+28+(g<<3)+4>>2]=c[k>>2]&2047}g=g+1|0;if((g|0)==(a|0)){l=20;break}else d=d+2|0}}if((l|0)==20)a=(c[e>>2]|0)-(a<<1)|0;c[e>>2]=a;if((c[j>>2]|0)!=1){b=1;i=n;return b|0}a=m+(b*1080|0)+28|0;d=m+(b*1080|0)+32|0;g=1;do{e=(c[a>>2]|0)-(((g+-1|0)>>>0)/3|0)|0;c[m+(b*1080|0)+28+(g<<3)>>2]=(e|0)>0?e:0;c[m+(b*1080|0)+28+(g<<3)+4>>2]=c[d>>2];g=g+1|0}while((g|0)!=97);a=1;i=n;return a|0}function Fe(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;p=r+40|0;l=r+32|0;k=r+16|0;j=r+8|0;o=r+44|0;h=a+8|0;if((c[h>>2]|0)==16)g=(c[a+164>>2]|0)+((c[a+200>>2]|0)*5640|0)|0;else g=c[a+12>>2]|0;m=c[g+5584>>2]|0;if((c[e>>2]|0)>>>0<5){Ub(f,1,14664,r)|0;e=0;i=r;return e|0}n=m+(b*1080|0)+4|0;qb(d,n,1);g=(c[n>>2]|0)+1|0;c[n>>2]=g;if(g>>>0>33){c[j>>2]=g;c[j+4>>2]=33;Ub(f,1,14699,j)|0;e=0;i=r;return e|0}if((c[a+168>>2]|0)>>>0>=g>>>0){c[k>>2]=b;Ub(f,1,14776,k)|0;c[h>>2]=c[h>>2]|32768;e=0;i=r;return e|0}j=m+(b*1080|0)+8|0;qb(d+1|0,j,1);c[j>>2]=(c[j>>2]|0)+2;a=m+(b*1080|0)+12|0;qb(d+2|0,a,1);k=(c[a>>2]|0)+2|0;c[a>>2]=k;j=c[j>>2]|0;if(j>>>0>10|k>>>0>10|(j+k|0)>>>0>12){Ub(f,1,14934,r+24|0)|0;e=0;i=r;return e|0}qb(d+3|0,m+(b*1080|0)+16|0,1);qb(d+4|0,m+(b*1080|0)+20|0,1);h=(c[e>>2]|0)+-5|0;c[e>>2]=h;g=c[n>>2]|0;if(!(c[m+(b*1080|0)>>2]&1)){if(!g){e=1;i=r;return e|0}else g=0;do{c[m+(b*1080|0)+812+(g<<2)>>2]=15;c[m+(b*1080|0)+944+(g<<2)>>2]=15;g=g+1|0}while(g>>>0<(c[n>>2]|0)>>>0);g=1;i=r;return g|0}if(h>>>0>>0){Ub(f,1,14664,l)|0;e=0;i=r;return e|0}do if(!g)g=0;else{a=0;h=d+5|0;while(1){qb(h,o,1);h=h+1|0;g=c[o>>2]|0;if((a|0)!=0?g>>>0<16|(g&15|0)==0:0)break;c[m+(b*1080|0)+812+(a<<2)>>2]=g&15;c[m+(b*1080|0)+944+(a<<2)>>2]=(c[o>>2]|0)>>>4;a=a+1|0;g=c[n>>2]|0;if(a>>>0>=g>>>0){q=22;break}}if((q|0)==22){h=c[e>>2]|0;break}Ub(f,1,15002,p)|0;e=0;i=r;return e|0}while(0);c[e>>2]=h-g;e=1;i=r;return e|0}function Ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){pb(b,~~+g[a>>2]>>>0,2);d=d+1|0;if((d|0)==(c|0))break;else{b=b+2|0;a=a+4|0}}return}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){pb(b,~~+g[a>>2]>>>0,4);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){tb(b,+g[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){rb(b,+g[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+8|0;a=a+4|0}}return}function Ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;if(!d){d=0;i=j;return d|0}if(!(ld(c[a>>2]|0,b,d,e)|0)){Ub(e,1,16303,j)|0;d=0;i=j;return d|0}if(c[a+128>>2]|0){d=1;i=j;return d|0}h=a+108|0;if(!(bf(d,h,e)|0)){d=0;i=j;return d|0}b=c[a+48>>2]|0;a:do switch(b|0){case 16:{c[d+20>>2]=1;break}case 17:{c[d+20>>2]=2;break}case 18:{c[d+20>>2]=3;break}case 24:{c[d+20>>2]=4;break}default:{f=d+20|0;if((b|0)==12){c[f>>2]=5;break a}else{c[f>>2]=-1;break a}}}while(0);g=a+120|0;b=c[g>>2]|0;do if(b){if(c[b+12>>2]|0){cf(d,h);break}Uc(c[b+4>>2]|0);Uc(c[(c[g>>2]|0)+8>>2]|0);Uc(c[c[g>>2]>>2]|0);b=c[g>>2]|0;f=c[b+12>>2]|0;if(f){Uc(f);b=c[g>>2]|0}Uc(b);c[g>>2]=0}while(0);if(c[a+116>>2]|0)df(d,h,e);b=c[h>>2]|0;if(!b){d=1;i=j;return d|0}c[d+28>>2]=b;c[d+32>>2]=c[a+112>>2];c[h>>2]=0;d=1;i=j;return d|0}function Le(b,d){b=b|0;d=d|0;Wc(c[b>>2]|0,d);a[b+124>>0]=0;c[b+128>>2]=c[d+8248>>2]&1;return}function Me(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+80|0;v=w+64|0;s=w+56|0;o=w+48|0;r=w+40|0;q=w+32|0;p=w+24|0;if(!((a|0)!=0&(d|0)!=0&(e|0)!=0)){d=0;i=w;return d|0}t=e+16|0;if(((c[t>>2]|0)+-1|0)>>>0>16383){Ub(f,1,16352,w)|0;d=0;i=w;return d|0}if(!(Zc(c[a>>2]|0,d,e,f)|0)){d=0;i=w;return d|0}c[a+56>>2]=1785737760;c[a+60>>2]=0;c[a+64>>2]=1;g=Pc(4)|0;h=a+68|0;c[h>>2]=g;if(!g){c[h>>2]=0;Ub(f,1,16421,w+8|0)|0;d=0;i=w;return d|0}c[g>>2]=1785737760;l=c[t>>2]|0;c[a+20>>2]=l;l=Pc(l*12|0)|0;g=a+72|0;c[g>>2]=l;if(!l){c[g>>2]=0;Ub(f,1,16421,w+16|0)|0;d=0;i=w;return d|0}c[a+16>>2]=(c[e+12>>2]|0)-(c[e+4>>2]|0);c[a+12>>2]=(c[e+8>>2]|0)-(c[e>>2]|0);u=e+24|0;m=c[u>>2]|0;j=c[m+24>>2]|0;k=c[m+32>>2]|0;g=a+24|0;c[g>>2]=j+-1+(k<<7);n=c[t>>2]|0;if(n>>>0>1){h=1;do{if((j|0)!=(c[m+(h*52|0)+24>>2]|0))c[g>>2]=255;h=h+1|0}while(h>>>0>>0)}c[a+28>>2]=7;c[a+32>>2]=0;c[a+36>>2]=0;h=(n|0)==0;if(!h?(c[l+8>>2]=j+-1+(k<<7),n>>>0>1):0){g=1;do{c[l+(g*12|0)+8>>2]=(c[m+(g*52|0)+24>>2]|0)+-1+(c[m+(g*52|0)+32>>2]<<7);g=g+1|0}while(g>>>0>>0)}g=a+40|0;a:do if(!(c[e+32>>2]|0)){c[g>>2]=1;switch(c[e+20>>2]|0){case 1:{c[a+48>>2]=16;break a}case 2:{c[a+48>>2]=17;break a}case 3:{c[a+48>>2]=18;break a}default:break a}}else{c[g>>2]=2;c[a+48>>2]=0}while(0);b:do if(!h){h=0;g=0;j=0;do{e=(b[m+(j*52|0)+48>>1]|0)==0;g=(e&1^1)+g|0;h=e?h:j;j=j+1|0}while(j>>>0>>0);j=h;if((g|0)!=1){if(g>>>0<=1)break;Ub(f,2,16717,o)|0;break}switch(c[a+48>>2]|0){case 18:case 16:{h=3;break}case 17:{h=1;break}default:{Ub(f,2,16467,p)|0;break b}}if(n>>>0<(h+1|0)>>>0){Ub(f,2,16541,q)|0;break}if(j>>>0>>0){Ub(f,2,16634,r)|0;break}r=Pc(8)|0;g=a+116|0;c[g>>2]=r;if(!r){Ub(f,1,16782,s)|0;d=0;i=w;return d|0}s=Pc((c[t>>2]|0)*6|0)|0;e=c[g>>2]|0;c[e>>2]=s;if(!s){Ub(f,1,16782,v)|0;d=0;i=w;return d|0}l=c[t>>2]|0;b[e+4>>1]=l;k=c[e>>2]|0;g=0;do{b[k+(g*6|0)>>1]=g;b[k+(g*6|0)+2>>1]=0;v=g;g=g+1|0;b[k+(v*6|0)+4>>1]=g}while((g|0)!=(h|0));if(h>>>0>>0){j=c[u>>2]|0;do{v=(b[j+(h*52|0)+48>>1]|0)==0;b[k+(h*6|0)>>1]=h;g=k+(h*6|0)+2|0;if(v){b[g>>1]=-1;b[k+(h*6|0)+4>>1]=-1}else{b[g>>1]=1;b[(c[e>>2]|0)+(h*6|0)+4>>1]=0}h=h+1|0}while(h>>>0>>0)}}while(0);c[a+52>>2]=0;c[a+44>>2]=0;c[a+96>>2]=c[d+18692>>2];d=1;i=w;return d|0}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;return od(c[a>>2]|0,b,d)|0}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+8|0;if(!(sg(c[e>>2]|0,52,d)|0)){d=0;return d|0}g=c[e>>2]|0;h=tg(g)|0;e=ug(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=(Ra[c[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}vg(g);if(!f){d=0;return d|0}}else vg(g);d=$c(c[a>>2]|0,b,d)|0;return d|0}function Pe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+8|0;if(!(sg(c[e>>2]|0,53,d)|0)){d=0;return d|0}if(!(pd(c[a>>2]|0,b,d)|0)){d=0;return d|0}i=c[e>>2]|0;g=tg(i)|0;e=ug(i)|0;if(!g)e=1;else{h=0;f=e;e=1;while(1){if(!e)e=0;else e=(Ra[c[f>>2]&63](a,b,d)|0)!=0;e=e&1;h=h+1|0;if((h|0)==(g|0))break;else f=f+4|0}}vg(i);d=e;return d|0}function Qe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=a+4|0;if(!(sg(c[f>>2]|0,54,e)|0)){b=0;return b|0}h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){b=0;return b|0}}else vg(h);f=a+8|0;if(!(sg(c[f>>2]|0,55,e)|0)){b=0;return b|0}if(!(sg(c[f>>2]|0,56,e)|0)){b=0;return b|0}if(!(sg(c[f>>2]|0,57,e)|0)){b=0;return b|0}if((c[a+96>>2]|0)!=0?(sg(c[f>>2]|0,58,e)|0)==0:0){b=0;return b|0}if(!(sg(c[f>>2]|0,59,e)|0)){b=0;return b|0}h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){b=0;return b|0}}else vg(h);b=qd(c[a>>2]|0,b,d,e)|0;return b|0}function Re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=b+8|0;if(!(sg(c[k>>2]|0,52,e)|0)){a=0;return a|0}h=c[b+4>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){a=0;return a|0}}else vg(h);h=c[k>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){a=0;return a|0}}else vg(h);a=ad(a,c[b>>2]|0,d,e)|0;return a|0}function Se(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|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;return cd(c[a>>2]|0,b,d,e,f,g,h,i,j,k,l)|0}function Te(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;return rd(c[a>>2]|0,b,d,e,f,g)|0}function Ue(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;return dd(c[a>>2]|0,b,d,e,f,g)|0}function Ve(a){a=a|0;var b=0,d=0,e=0;if(!a)return;Yc(c[a>>2]|0);c[a>>2]=0;b=a+72|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+68|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+108|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}e=a+116|0;b=c[e>>2]|0;if(b){d=c[b>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b>>2]=0}Uc(b);c[e>>2]=0}e=a+120|0;b=c[e>>2]|0;if(b){d=c[b+12>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+12>>2]=0}d=c[b+4>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+4>>2]=0}d=c[b+8>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b+8>>2]=0}d=c[b>>2]|0;if(d){Uc(d);b=c[e>>2]|0;c[b>>2]=0}Uc(b);c[e>>2]=0}b=a+4|0;d=c[b>>2]|0;if(d){rg(d);c[b>>2]=0}b=a+8|0;d=c[b>>2]|0;if(d){rg(d);c[b>>2]=0}Uc(a);return}function We(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ed(c[a>>2]|0,b,d,e,f,g,h)|0}function Xe(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;if(!d){a=0;i=j;return a|0}Ub(e,2,16826,j)|0;if(!(md(c[a>>2]|0,b,d,e,f)|0)){Ub(e,1,16303,j+8|0)|0;a=0;i=j;return a|0}h=a+108|0;if(!(bf(d,h,e)|0)){a=0;i=j;return a|0}f=c[a+48>>2]|0;a:do switch(f|0){case 16:{c[d+20>>2]=1;break}case 17:{c[d+20>>2]=2;break}case 18:{c[d+20>>2]=3;break}case 24:{c[d+20>>2]=4;break}default:{b=d+20|0;if((f|0)==12){c[b>>2]=5;break a}else{c[b>>2]=-1;break a}}}while(0);g=a+120|0;b=c[g>>2]|0;do if(b){if(c[b+12>>2]|0){cf(d,h);break}Uc(c[b+4>>2]|0);Uc(c[(c[g>>2]|0)+8>>2]|0);Uc(c[c[g>>2]>>2]|0);b=c[g>>2]|0;f=c[b+12>>2]|0;if(f){Uc(f);b=c[g>>2]|0}Uc(b);c[g>>2]=0}while(0);if(c[a+116>>2]|0)df(d,h,e);b=c[h>>2]|0;if(!b){a=1;i=j;return a|0}c[d+28>>2]=b;c[d+32>>2]=c[a+112>>2];c[h>>2]=0;a=1;i=j;return a|0}function Ye(b){b=b|0;var d=0;d=Qc(1,136)|0;if(!d)return d|0;if(!b){b=Xc()|0;c[d>>2]=b}else{b=fd()|0;c[d>>2]=b}if(!b){Ve(d);d=0;return d|0}b=d+108|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;a[b+16>>0]=0;b=qg()|0;c[d+4>>2]=b;if(!b){Ve(d);d=0;return d|0}b=qg()|0;c[d+8>>2]=b;if(b)return d|0;Ve(d);d=0;return d|0}function Ze(a,b,d){a=a|0;b=b|0;d=d|0;gd(c[a>>2]|0,b,d);return}function _e(a){a=a|0;return kd(c[a>>2]|0)|0}function $e(a){a=a|0;return jd(c[a>>2]|0)|0}function af(a,b,d){a=a|0;b=b|0;d=d|0;return nd(c[a>>2]|0,b,d)|0}function bf(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+80|0;A=B+72|0;z=B+64|0;y=B+56|0;x=B+48|0;w=B+40|0;v=B+32|0;u=B+24|0;s=B+16|0;o=B+8|0;n=B;j=c[g+8>>2]|0;a:do if(j){r=c[j>>2]|0;q=b[j+4>>1]|0;j=c[f+16>>2]|0;p=c[g+12>>2]|0;if((p|0)!=0?(c[p+12>>2]|0)!=0:0)g=d[p+18>>0]|0;else g=j;m=q<<16>>16==0;b:do if(!m){l=0;c:while(1){k=l&65535;j=e[r+(k*6|0)>>1]|0;if(j>>>0>=g>>>0){k=15;break}j=b[r+(k*6|0)+4>>1]|0;switch(j<<16>>16){case 0:case -1:break;default:{j=(j&65535)+-1|0;if(j>>>0>=g>>>0){k=18;break c}}}l=l+1<<16>>16;if((l&65535)>=(q&65535))break b}if((k|0)==15){c[n>>2]=j;c[n+4>>2]=g;Ub(h,1,19343,n)|0;h=0;i=B;return h|0}else if((k|0)==18){c[o>>2]=j;c[o+4>>2]=g;Ub(h,1,19343,o)|0;h=0;i=B;return h|0}}while(0);if(!g)j=p;else{d:do if(!m)while(1){g=g+-1|0;j=0;do{if((e[r+((j&65535)*6|0)>>1]|0)==(g|0))break;j=j+1<<16>>16}while((j&65535)<(q&65535));if(j<<16>>16==q<<16>>16)break d;if(!g){j=p;break a}}while(0);Ub(h,1,19380,s)|0;h=0;i=B;return h|0}}else j=c[g+12>>2]|0;while(0);if(!j){h=1;i=B;return h|0}t=c[j+12>>2]|0;if(!t){h=1;i=B;return h|0}p=a[j+18>>0]|0;s=p&255;r=p<<24>>24==0;if(r)j=1;else{l=f+16|0;g=0;m=0;j=1;do{g=e[t+(g<<2)>>1]|0;k=c[l>>2]|0;if(g>>>0>=k>>>0){c[u>>2]=g;c[u+4>>2]=k;Ub(h,1,19343,u)|0;j=0}m=m+1<<16>>16;g=m&65535}while(g>>>0>>0)}q=Qc(s,4)|0;if(!q){Ub(h,1,19413,v)|0;h=0;i=B;return h|0}if(!r){n=0;o=0;do{k=a[t+(n<<2)+3>>0]|0;l=k&255;do if((k&255)<(p&255)){m=q+(l<<2)|0;g=a[t+(n<<2)+2>>0]|0;if((c[m>>2]|0)!=0&g<<24>>24==1){c[x>>2]=l;Ub(h,1,19486,x)|0;j=0;break}if(g<<24>>24!=0|k<<24>>24==0){c[m>>2]=1;break}else{c[y>>2]=n;c[y+4>>2]=l;Ub(h,1,19517,y)|0;j=0;break}}else{c[w>>2]=l;Ub(h,1,19430,w)|0;j=0}while(0);o=o+1<<16>>16;n=o&65535}while(n>>>0>>0);if(!r){g=0;k=0;do{if((c[q+(g<<2)>>2]|0)==0?(a[t+(g<<2)+2>>0]|0)!=0:0){c[z>>2]=g;Ub(h,1,19553,z)|0;j=0}k=k+1<<16>>16;g=k&65535}while(g>>>0>>0)}}if(!j){Uc(q);h=0;i=B;return h|0}e:do if(!((c[f+16>>2]|0)!=1|r)){j=0;g=0;while(1){g=g+1<<16>>16;if(!(c[q+(j<<2)>>2]|0))break;j=g&65535;if(j>>>0>=s>>>0)break e}c[A>>2]=j;Ub(h,2,19591,A)|0;if(!r){j=0;g=0;do{a[t+(j<<2)+2>>0]=1;a[t+(j<<2)+3>>0]=g;g=g+1<<16>>16;j=g&65535}while(j>>>0>>0)}}while(0);Uc(q);h=1;i=B;return h|0}function cf(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=g+12|0;g=c[w>>2]|0;m=c[g+8>>2]|0;o=c[g+4>>2]|0;q=c[g>>2]|0;r=c[g+12>>2]|0;g=a[g+18>>0]|0;s=f+24|0;t=c[s>>2]|0;u=g&255;v=Pc(u*52|0)|0;if(!v)return;n=g<<24>>24==0;if(!n){k=0;l=0;do{g=b[r+(k<<2)>>1]|0;if(!(a[r+(k<<2)+2>>0]|0)){g=g&65535;h=v+(k*52|0)|0;i=t+(g*52|0)|0;j=h+52|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0))}else{g=g&65535;h=v+((d[r+(k<<2)+3>>0]|0)*52|0)|0;i=t+(g*52|0)|0;j=h+52|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0))}j=Pc(_(c[t+(g*52|0)+8>>2]<<2,c[t+(g*52|0)+12>>2]|0)|0)|0;c[v+(k*52|0)+44>>2]=j;if(!j){p=7;break}c[v+(k*52|0)+24>>2]=d[m+k>>0];c[v+(k*52|0)+32>>2]=d[o+k>>0];l=l+1<<16>>16;k=l&65535}while(k>>>0>>0);if((p|0)==7){Uc(v);return}m=(e[(c[w>>2]|0)+16>>1]|0)+-1|0;if(!n){g=0;l=0;do{j=c[t+((e[r+(g<<2)>>1]|0)*52|0)+44>>2]|0;i=d[r+(g<<2)+3>>0]|0;k=_(c[v+(i*52|0)+12>>2]|0,c[v+(i*52|0)+8>>2]|0)|0;if(!(a[r+(g<<2)+2>>0]|0)){g=c[v+(g*52|0)+44>>2]|0;if(k){h=0;do{c[g+(h<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}while((h|0)!=(k|0))}}else{g=c[v+(i*52|0)+44>>2]|0;if(k){h=0;do{p=c[j+(h<<2)>>2]|0;c[g+(h<<2)>>2]=c[q+((_((p|0)<0?0:(p|0)>(m|0)?m:p,u)|0)+i<<2)>>2];h=h+1|0}while((h|0)!=(k|0))}}l=l+1<<16>>16;g=l&65535}while(g>>>0>>0)}}h=f+16|0;i=c[h>>2]|0;if(i){g=0;j=0;do{g=c[t+(g*52|0)+44>>2]|0;if(g)Uc(g);j=j+1<<16>>16;g=j&65535}while(g>>>0>>0)}Uc(t);c[s>>2]=v;c[h>>2]=u;Uc(c[(c[w>>2]|0)+4>>2]|0);Uc(c[(c[w>>2]|0)+8>>2]|0);Uc(c[c[w>>2]>>2]|0);g=c[w>>2]|0;h=c[g+12>>2]|0;if(h){Uc(h);g=c[w>>2]|0}Uc(g);c[w>>2]=0;return}function df(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+80|0;w=y+8|0;v=y;u=y+16|0;x=d+8|0;f=c[x>>2]|0;d=c[f>>2]|0;t=b[f+4>>1]|0;if(t<<16>>16){s=a+16|0;o=a+24|0;q=1;r=0;while(1){p=b[d+(r*6|0)>>1]|0;n=p&65535;a=c[s>>2]|0;a:do if(n>>>0>>0){f=b[d+(r*6|0)+4>>1]|0;switch(f<<16>>16){case -1:case 0:{b[(c[o>>2]|0)+(n*52|0)+48>>1]=b[d+(r*6|0)+2>>1]|0;break a}default:{}}k=(f&65535)+65535|0;m=k&65535;k=k&65535;if(k>>>0>=a>>>0){c[w>>2]=k;c[w+4>>2]=a;Ub(e,2,19302,w)|0;break}l=d+(r*6|0)+2|0;if((n|0)!=(k|0)?(b[l>>1]|0)==0:0){f=c[o>>2]|0;a=f+(n*52|0)|0;g=u;h=a;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));g=a;h=f+(k*52|0)|0;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));g=(c[o>>2]|0)+(k*52|0)|0;h=u;j=g+52|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));if((r+1&65535)<(t&65535)){g=q;do{f=d+(g*6|0)|0;a=b[f>>1]|0;if(a<<16>>16!=p<<16>>16){if(a<<16>>16==m<<16>>16)b[f>>1]=p}else b[f>>1]=m;g=g+1|0}while((g&65535)<<16>>16!=t<<16>>16)}}b[(c[o>>2]|0)+(n*52|0)+48>>1]=b[l>>1]|0}else{c[v>>2]=n;c[v+4>>2]=a;Ub(e,2,19262,v)|0}while(0);r=r+1|0;if((r&65535)<<16>>16==t<<16>>16)break;else q=q+1|0}d=c[x>>2]|0;f=d;d=c[d>>2]|0}if(!d){w=f;Uc(w);c[x>>2]=0;i=y;return}else{Uc(d);w=c[x>>2]|0;Uc(w);c[x>>2]=0;i=y;return}}function ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0,H=0,I=0;I=i;i=i+192|0;y=I+152|0;x=I+144|0;w=I+136|0;v=I+128|0;u=I+120|0;E=I+88|0;s=I+80|0;q=I+64|0;p=I+48|0;G=I+40|0;z=I+32|0;F=I+24|0;t=I+16|0;r=I+8|0;n=I+176|0;o=I+168|0;D=I+156|0;e=Qc(1,1024)|0;if(!e){Ub(d,1,17098,I)|0;H=0;i=I;return H|0}m=n+4|0;A=D+4|0;B=a+100|0;l=1024;a:while(1){if((Mb(b,n,8,d)|0)!=8)break;while(1){qb(n,D,4);qb(m,A,4);switch(c[D>>2]|0){case 0:{f=Qb(b)|0;k=C;if((k|0)>0|(k|0)==0&f>>>0>4294967287){H=6;break a}c[D>>2]=f+8;j=8;break}case 1:{if((Mb(b,n,8,d)|0)!=8)break a;qb(n,o,4);if(c[o>>2]|0){H=10;break a}qb(m,D,4);j=16;break}default:j=8}g=c[A>>2]|0;if((g|0)==1785737827){H=13;break a}f=c[D>>2]|0;if(!f){H=17;break a}if(f>>>0>>0){H=19;break a}if((g|0)==1783636e3){h=1084;g=j;H=22;break}if((g|0)==1718909296){h=1092;g=j;H=22;break}k=(g|0)==1785737832;b:do if((g|0)!=1768449138)if((g|0)!=1668246642)if((g|0)!=1651532643)if((g|0)!=1885564018)if((g|0)!=1668112752){h=(g|0)==1667523942?1148:0;f=f-j|0;if((g|0)<1785737832)switch(g|0){case 1667523942:{H=30;break b}default:{}}else switch(g|0){case 1785737832:{H=30;break b}default:{}}g=c[B>>2]|0;if(!(g&1)){H=45;break a}if(!(g&2)){H=47;break a}c[B>>2]=g|2147483647;k=Rb(b,f,0,d)|0;if(!((k|0)==(f|0)&(C|0)==0)){H=50;break a}}else{h=1140;H=28}else{h=1132;H=28}else{h=1124;H=28}else{h=1116;H=28}else{h=1108;H=28}while(0);if((H|0)==28){f=f-j|0;H=30}if((H|0)==30){H=0;if(k){h=1100;break}c[p>>2]=g>>>24;c[p+4>>2]=g>>>16&255;c[p+8>>2]=g>>>8&255;c[p+12>>2]=g&255;Ub(d,2,17282,p)|0;if(c[B>>2]&4)break;k=c[A>>2]|0;c[q>>2]=k>>>24;c[q+4>>2]=k>>>16&255;c[q+8>>2]=k>>>8&255;c[q+12>>2]=k&255;Ub(d,2,17333,q)|0;c[B>>2]=c[B>>2]|2147483647;k=Rb(b,f,0,d)|0;if(!((k|0)==(f|0)&(C|0)==0)){H=33;break a}}if((Mb(b,n,8,d)|0)!=8)break a}if((H|0)==22){H=0;f=f-g|0}k=Qb(b)|0;j=C;if(0>(j|0)|0==(j|0)&f>>>0>k>>>0){H=35;break}if(f>>>0>l>>>0){g=Tc(e,f)|0;if(!g){H=38;break}else{e=g;g=f}}else g=l;if((Mb(b,e,f,d)|0)!=(f|0)){H=40;break}if(!(Za[c[h+4>>2]&63](a,e,f,d)|0)){H=43;break}else l=g}switch(H|0){case 6:{Ub(d,1,17148,r)|0;break}case 10:{Ub(d,1,17148,t)|0;break}case 13:{f=c[B>>2]|0;if(!(f&4)){Ub(d,1,17190,F)|0;Uc(e);H=0;i=I;return H|0}else{c[B>>2]=f|8;Uc(e);H=1;i=I;return H|0}}case 17:{Ub(d,1,17218,z)|0;Uc(e);H=0;i=I;return H|0}case 19:{c[G>>2]=f;c[G+4>>2]=g;Ub(d,1,17256,G)|0;Uc(e);H=0;i=I;return H|0}case 33:{Ub(d,1,17399,s)|0;Uc(e);H=0;i=I;return H|0}case 35:{F=c[D>>2]|0;G=c[A>>2]|0;H=Qb(b)|0;c[E>>2]=F;c[E+4>>2]=G>>>24;c[E+8>>2]=G>>>16&255;c[E+12>>2]=G>>>8&255;c[E+16>>2]=G&255;c[E+20>>2]=f;c[E+24>>2]=H;Ub(d,1,17449,E)|0;Uc(e);H=0;i=I;return H|0}case 38:{Uc(e);Ub(d,1,17525,u)|0;H=0;i=I;return H|0}case 40:{Ub(d,1,17567,v)|0;Uc(e);H=0;i=I;return H|0}case 43:{Uc(e);H=0;i=I;return H|0}case 45:{Ub(d,1,17616,w)|0;Uc(e);H=0;i=I;return H|0}case 47:{Ub(d,1,17686,x)|0;Uc(e);H=0;i=I;return H|0}case 50:{Ub(d,1,17399,y)|0;Uc(e);H=0;i=I;return H|0}}Uc(e);H=1;i=I;return H|0}function ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;g=h+24|0;e=Pb(b)|0;f=C;a=a+80|0;j=a;j=Oi(e|0,f|0,c[j>>2]|0,c[j+4>>2]|0)|0;pb(g,j,4);pb(g+4|0,1785737827,4);if(!(Sb(b,c[a>>2]|0,c[a+4>>2]|0,d)|0)){Ub(d,1,17067,h)|0;j=0;i=h;return j|0}if((Nb(b,g,8,d)|0)!=8){Ub(d,1,17067,h+8|0)|0;j=0;i=h;return j|0}if(Sb(b,e,f,d)|0){j=1;i=h;return j|0}Ub(d,1,17067,h+16|0)|0;j=0;i=h;return j|0}function gf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=((c[a>>2]|0)!=0?(c[a+104>>2]|c[a+100>>2]|0)==0:0)&(c[a+8>>2]|0)!=0&(c[a+4>>2]|0)!=0&(c[a+64>>2]|0)!=0&(c[a+16>>2]|0)!=0&(c[a+12>>2]|0)!=0&1;e=c[a+20>>2]|0;if(!e){g=d;a=a+40|0;a=c[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=Tb(b)|0;b=b&g;a=b&a;return a|0}f=c[a+72>>2]|0;g=0;do{d=(c[f+(g*12|0)+8>>2]&126)>>>0<38&d;g=g+1|0}while(g>>>0>>0);a=a+40|0;a=c[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=Tb(b)|0;b=b&d;a=b&a;return a|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=i;i=i+16|0;d=a;pb(d,12,4);pb(d+4|0,1783636e3,4);pb(d+8|0,218793738,4);c=(Nb(b,d,12,c)|0)==12&1;i=a;return c|0}function jf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l+8|0;f=a+64|0;h=(c[f>>2]<<2)+16|0;j=Qc(1,h)|0;if(!j){Ub(d,1,16987,l)|0;k=0;i=l;return k|0}pb(j,h,4);pb(j+4|0,1718909296,4);pb(j+8|0,c[a+56>>2]|0,4);pb(j+12|0,c[a+60>>2]|0,4);g=j+16|0;if(c[f>>2]|0){a=a+68|0;e=0;do{pb(g,c[(c[a>>2]|0)+(e<<2)>>2]|0,4);e=e+1|0}while(e>>>0<(c[f>>2]|0)>>>0)}a=(Nb(b,j,h,d)|0)==(h|0);if(!a)Ub(d,1,17026,k)|0;Uc(j);k=a&1;i=l;return k|0}function kf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+80|0;o=q+16|0;m=q+8|0;k=q;f=q+24|0;l=q+72|0;e=f;g=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(g|0));p=(c[a+24>>2]|0)==255;c[f>>2]=2;e=f+12|0;if(p){c[e>>2]=3;c[f+24>>2]=4;e=3}else{c[e>>2]=4;e=2}if(!(c[a+116>>2]|0))p=e;else{c[f+(e*12|0)>>2]=5;p=e+1|0}pb(l+4|0,1785737832,4);h=0;j=f;e=8;while(1){g=j+8|0;r=_a[c[j>>2]&7](a,g)|0;c[j+4>>2]=r;if(!r){n=8;break}e=(c[g>>2]|0)+e|0;h=h+1|0;if((h|0)>=(p|0))break;else j=j+12|0}if((n|0)==8){Ub(d,1,16901,k)|0;g=0;while(1){e=c[f+4>>2]|0;if(e)Uc(e);g=g+1|0;if((g|0)>=(p|0)){e=0;break}else f=f+12|0}i=q;return e|0}pb(l,e,4);a:do if((Nb(b,l,8,d)|0)==8){e=0;g=f;while(1){r=g+8|0;n=Nb(b,c[g+4>>2]|0,c[r>>2]|0,d)|0;if((n|0)!=(c[r>>2]|0))break;e=e+1|0;if((e|0)>=(p|0)){e=1;break a}else g=g+12|0}Ub(d,1,16944,o)|0;e=0}else{Ub(d,1,16944,m)|0;e=0}while(0);h=0;while(1){g=c[f+4>>2]|0;if(g)Uc(g);h=h+1|0;if((h|0)>=(p|0))break;else f=f+12|0}i=q;return e|0}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Pb(b)|0;a=a+88|0;c[a>>2]=e;c[a+4>>2]=C;b=Rb(b,24,0,d)|0;return (b|0)==24&(C|0)==0&1|0}function mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Pb(b)|0;a=a+80|0;c[a>>2]=e;c[a+4>>2]=C;b=Rb(b,8,0,d)|0;return (b|0)==8&(C|0)==0&1|0}function nf(a,b){a=a|0;b=b|0;var d=0;d=Qc(1,22)|0;if(!d){b=0;return b|0}pb(d,22,4);pb(d+4|0,1768449138,4);pb(d+8|0,c[a+16>>2]|0,4);pb(d+12|0,c[a+12>>2]|0,4);pb(d+16|0,c[a+20>>2]|0,2);pb(d+18|0,c[a+24>>2]|0,1);pb(d+19|0,c[a+28>>2]|0,1);pb(d+20|0,c[a+32>>2]|0,1);pb(d+21|0,c[a+36>>2]|0,1);c[b>>2]=22;b=d;return b|0}function of(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=a+20|0;g=(c[f>>2]|0)+8|0;h=Qc(1,g)|0;if(!h){b=0;return b|0}pb(h,g,4);pb(h+4|0,1651532643,4);if(c[f>>2]|0){a=a+72|0;d=0;e=h+8|0;while(1){pb(e,c[(c[a>>2]|0)+(d*12|0)+8>>2]|0,1);d=d+1|0;if(d>>>0>=(c[f>>2]|0)>>>0)break;else e=e+1|0}}c[b>>2]=g;b=h;return b|0}function pf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=a+40|0;switch(c[e>>2]|0){case 1:{j=15;break}case 2:{j=(c[a+112>>2]|0)+11|0;break}default:{b=0;return b|0}}i=Qc(1,j)|0;if(!i){b=0;return b|0}pb(i,j,4);pb(i+4|0,1668246642,4);pb(i+8|0,c[e>>2]|0,1);pb(i+9|0,c[a+52>>2]|0,1);pb(i+10|0,c[a+44>>2]|0,1);g=i+11|0;switch(c[e>>2]|0){case 1:{pb(g,c[a+48>>2]|0,4);break}case 2:{h=a+112|0;if(c[h>>2]|0){a=a+108|0;f=0;e=g;while(1){pb(e,d[(c[a>>2]|0)+f>>0]|0,1);f=f+1|0;if(f>>>0>=(c[h>>2]|0)>>>0)break;else e=e+1|0}}break}default:{}}c[b>>2]=j;b=i;return b|0}function qf(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=a+116|0;j=((e[(c[i>>2]|0)+4>>1]|0)*6|0)+10|0;k=Pc(j)|0;if(!k){d=0;return d|0}pb(k,j,4);pb(k+4|0,1667523942,4);pb(k+8|0,e[(c[i>>2]|0)+4>>1]|0,2);a=c[i>>2]|0;if(b[a+4>>1]|0){g=0;f=0;h=k+10|0;while(1){pb(h,e[(c[a>>2]|0)+(g*6|0)>>1]|0,2);pb(h+2|0,e[(c[c[i>>2]>>2]|0)+(g*6|0)+2>>1]|0,2);pb(h+4|0,e[(c[c[i>>2]>>2]|0)+(g*6|0)+4>>1]|0,2);f=f+1<<16>>16;a=c[i>>2]|0;if((f&65535)>=(e[a+4>>1]|0))break;else{g=f&65535;h=h+6|0}}}c[d>>2]=j;d=k;return d|0}function rf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+32|0;f=g+16|0;if((d|0)!=14){Ub(e,1,18507,g)|0;f=0;i=g;return f|0}qb(b,a+16|0,4);qb(b+4|0,a+12|0,4);d=a+20|0;qb(b+8|0,d,2);d=Qc(c[d>>2]|0,12)|0;c[a+72>>2]=d;if(!d){Ub(e,1,18540,g+8|0)|0;f=0;i=g;return f|0}qb(b+10|0,a+24|0,1);d=a+28|0;qb(b+11|0,d,1);d=c[d>>2]|0;if((d|0)!=7){c[f>>2]=d;Ub(e,4,18589,f)|0}qb(b+12|0,a+32|0,1);qb(b+13|0,a+36|0,1);f=1;i=g;return f|0}function sf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=i;i=i+80|0;j=x+40|0;t=x+32|0;l=x+24|0;k=x+16|0;u=x+72|0;s=x+68|0;p=x+64|0;q=x+60|0;n=x+56|0;r=x+52|0;o=x+48|0;m=x+44|0;if(e>>>0<3){Ub(f,1,18180,x)|0;w=0;i=x;return w|0}v=b+108|0;w=b+124|0;if(a[w>>0]|0){Ub(f,4,18212,x+8|0)|0;w=1;i=x;return w|0}h=b+40|0;qb(d,h,1);qb(d+1|0,b+52|0,1);qb(d+2|0,b+44|0,1);g=d+3|0;h=c[h>>2]|0;switch(h|0){case 1:{if(e>>>0<7){c[k>>2]=e;Ub(f,1,18321,k)|0;w=0;i=x;return w|0}h=b+48|0;if(e>>>0>7?(c[h>>2]|0)!=14:0){c[l>>2]=e;Ub(f,2,18321,l)|0}qb(g,h,4);if((c[h>>2]|0)==14){g=Pc(36)|0;c[g>>2]=14;c[o>>2]=0;c[n>>2]=0;c[p>>2]=0;c[r>>2]=0;c[q>>2]=0;c[s>>2]=0;c[m>>2]=4470064;h=g+4|0;c[h>>2]=1145390592;switch(e|0){case 35:{qb(d+7|0,s,4);qb(d+11|0,p,4);qb(d+15|0,q,4);qb(d+19|0,n,4);qb(d+23|0,r,4);qb(d+27|0,o,4);qb(d+31|0,m,4);c[h>>2]=0;break}case 7:break;default:{c[t>>2]=e;Ub(f,2,18357,t)|0}}c[g+8>>2]=c[s>>2];c[g+16>>2]=c[q>>2];c[g+24>>2]=c[r>>2];c[g+12>>2]=c[p>>2];c[g+20>>2]=c[n>>2];c[g+28>>2]=c[o>>2];c[g+32>>2]=c[m>>2];c[v>>2]=g;c[b+112>>2]=0}a[w>>0]=1;w=1;i=x;return w|0}case 2:{j=e+-3|0;h=b+112|0;c[h>>2]=j;b=Qc(1,j)|0;c[v>>2]=b;if(!b){c[h>>2]=0;w=0;i=x;return w|0}if((e|0)>3){h=0;while(1){qb(g,u,1);a[(c[v>>2]|0)+h>>0]=c[u>>2];h=h+1|0;if((h|0)==(j|0))break;else g=g+1|0}}a[w>>0]=1;w=1;i=x;return w|0}default:{if(h>>>0<=2){w=1;i=x;return w|0}c[j>>2]=h;Ub(f,4,18401,j)|0;w=1;i=x;return w|0}}return 0}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j;f=c[a+24>>2]|0;if((f|0)!=255){c[g>>2]=f;Ub(e,2,18034,g)|0}h=a+20|0;if((c[h>>2]|0)!=(d|0)){Ub(e,1,18148,j+8|0)|0;h=0;i=j;return h|0}if(!d){h=1;i=j;return h|0}g=a+72|0;f=0;while(1){qb(b,(c[g>>2]|0)+(f*12|0)+8|0,1);f=f+1|0;if(f>>>0>=(c[h>>2]|0)>>>0){b=1;break}else b=b+1|0}i=j;return b|0}function uf(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+16|0;j=r;q=r+12|0;k=e+120|0;if(g>>>0<3|(c[k>>2]|0)!=0){g=0;i=r;return g|0}qb(f,q,2);l=c[q>>2]|0;p=l&65535;if((p+-1|0)>>>0>1023){c[j>>2]=p;Ub(h,1,17951,j)|0;g=0;i=r;return g|0}qb(f+2|0,q,1);o=c[q>>2]&65535;if(!o){Ub(h,1,17989,r+8|0)|0;g=0;i=r;return g|0}if((o+3|0)>>>0>g>>>0){g=0;i=r;return g|0}j=Pc(_(p<<2,o)|0)|0;if(!j){g=0;i=r;return g|0}n=Pc(o)|0;if(!n){Uc(j);g=0;i=r;return g|0}m=Pc(o)|0;if(!m){Uc(j);Uc(n);g=0;i=r;return g|0}e=Pc(20)|0;if(!e){Uc(j);Uc(n);Uc(m);g=0;i=r;return g|0}c[e+4>>2]=m;c[e+8>>2]=n;c[e>>2]=j;b[e+16>>1]=l;a[e+18>>0]=c[q>>2];c[e+12>>2]=0;c[k>>2]=e;e=f+3|0;h=0;k=0;do{qb(e,q,1);e=e+1|0;a[n+h>>0]=(c[q>>2]&127)+1;a[m+h>>0]=(c[q>>2]|0)>>>7&1;k=k+1<<16>>16;h=k&65535}while(h>>>0>>0);if(!p){g=1;i=r;return g|0}h=0;a:while(1){l=0;k=j;m=0;while(1){j=((d[n+l>>0]|0)+7|0)>>>3;j=j>>>0>4?4:j;if((e-f+j|0)>(g|0)){e=0;j=22;break a}qb(e,q,j);e=e+j|0;c[k>>2]=c[q>>2];j=k+4|0;m=m+1<<16>>16;l=m&65535;if(l>>>0>=o>>>0)break;else k=j}h=h+1<<16>>16;if((h&65535)>>>0>=p>>>0){e=1;j=22;break}}if((j|0)==22){i=r;return e|0}return 0}function vf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;j=d+120|0;d=c[j>>2]|0;if(!d){Ub(g,1,17841,l)|0;k=0;i=l;return k|0}if(c[d+12>>2]|0){Ub(g,1,17887,l+8|0)|0;k=0;i=l;return k|0}h=a[d+18>>0]|0;d=(h&255)<<2;if(d>>>0>f>>>0){Ub(g,1,17918,l+16|0)|0;k=0;i=l;return k|0}g=Pc(d)|0;if(!g){k=0;i=l;return k|0}if(h<<24>>24){d=e;f=0;while(1){qb(d,k,2);b[g+(f<<2)>>1]=c[k>>2];qb(d+2|0,k,1);a[g+(f<<2)+2>>0]=c[k>>2];qb(d+3|0,k,1);a[g+(f<<2)+3>>0]=c[k>>2];f=f+1|0;if((f&255)<<24>>24==h<<24>>24)break;else d=d+4|0}}c[(c[j>>2]|0)+12>>2]=g;k=1;i=l;return k|0}function wf(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;j=a+116|0;if(c[j>>2]|0){k=0;i=l;return k|0}if(f>>>0<2){Ub(g,1,17747,l)|0;k=0;i=l;return k|0}qb(d,k,2);a=c[k>>2]|0;h=a&65535;if(!h){Ub(g,1,17780,l+8|0)|0;k=0;i=l;return k|0}if(((h*6|0)+2|0)>>>0>f>>>0){Ub(g,1,17747,l+16|0)|0;k=0;i=l;return k|0}f=Pc(a*6|0)|0;if(!f){k=0;i=l;return k|0}a=Pc(8)|0;c[j>>2]=a;if(!a){Uc(f);k=0;i=l;return k|0}c[a>>2]=f;g=c[k>>2]&65535;b[a+4>>1]=g;if(!(g<<16>>16)){k=1;i=l;return k|0}else{h=0;a=d}do{d=h&65535;qb(a+2|0,k,2);b[f+(d*6|0)>>1]=c[k>>2];qb(a+4|0,k,2);a=a+6|0;b[f+(d*6|0)+2>>1]=c[k>>2];qb(a,k,2);b[f+(d*6|0)+4>>1]=c[k>>2];h=h+1<<16>>16}while((h&65535)<(e[(c[j>>2]|0)+4>>1]|0));a=1;i=l;return a|0}function xf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+32|0;f=g+20|0;a=a+100|0;if(c[a>>2]|0){Ub(e,1,19130,g)|0;e=0;i=g;return e|0}if((d|0)!=4){Ub(e,1,19184,g+8|0)|0;e=0;i=g;return e|0}qb(b,f,4);if((c[f>>2]|0)==218793738){c[a>>2]=c[a>>2]|1;e=1;i=g;return e|0}else{Ub(e,1,19218,g+16|0)|0;e=0;i=g;return e|0}return 0}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+32|0;g=j+24|0;h=a+100|0;if((c[h>>2]|0)!=1){Ub(e,1,19011,j)|0;h=0;i=j;return h|0}if(d>>>0<8){Ub(e,1,19061,j+8|0)|0;h=0;i=j;return h|0}qb(b,a+56|0,4);qb(b+4|0,a+60|0,4);b=b+8|0;d=d+-8|0;if(d&3){Ub(e,1,19061,j+16|0)|0;h=0;i=j;return h|0}d=d>>>2;f=a+64|0;c[f>>2]=d;if(d){d=Qc(d,4)|0;c[a+68>>2]=d;if(!d){Ub(e,1,19097,g)|0;h=0;i=j;return h|0}if(c[f>>2]|0){a=a+68|0;d=0;while(1){qb(b,(c[a>>2]|0)+(d<<2)|0,4);d=d+1|0;if(d>>>0>=(c[f>>2]|0)>>>0)break;else b=b+4|0}}}c[h>>2]=c[h>>2]|2;h=1;i=j;return h|0}function zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+96|0;y=A+72|0;s=A+64|0;r=A+56|0;q=A+48|0;w=A+40|0;v=A+32|0;u=A+24|0;t=A+16|0;p=A+8|0;n=A+80|0;o=A+76|0;x=a+100|0;if(!(c[x>>2]&2)){Ub(e,1,18679,A)|0;z=0;i=A;return z|0}m=a+104|0;c[m>>2]=0;do if(d){k=b;b=0;a:while(1){if(d>>>0<8){z=6;break}qb(k,n,4);f=c[n>>2]|0;qb(k+4|0,n,4);j=c[n>>2]|0;switch(f|0){case 0:{z=14;break a}case 1:{if(d>>>0<16){z=9;break a}qb(k+8|0,o,4);if(c[o>>2]|0){z=11;break a}qb(k+12|0,n,4);f=c[n>>2]|0;if(!f){z=13;break a}else g=16;break}default:g=8}if(f>>>0>>0){z=16;break}if(d>>>0>>0){z=19;break}h=(j|0)==1768449138;if(!h)if((j|0)!=1668246642)if((j|0)!=1651532643)if((j|0)!=1885564018)if((j|0)!=1668112752)if((j|0)==1667523942){l=1148;z=26}else c[m>>2]=c[m>>2]|2147483647;else{l=1140;z=26}else{l=1132;z=26}else{l=1124;z=26}else{l=1116;z=26}else{l=1108;z=26}if((z|0)==26?(z=0,(Za[c[l+4>>2]&63](a,k+g|0,f-g|0,e)|0)==0):0){b=0;z=32;break}b=h?1:b;if((d|0)==(f|0)){z=29;break}else{k=k+f|0;d=d-f|0}}if((z|0)==6)Ub(e,1,18724,p)|0;else if((z|0)==9)Ub(e,1,18764,t)|0;else if((z|0)==11)Ub(e,1,17148,u)|0;else if((z|0)==13)Ub(e,1,17218,v)|0;else if((z|0)==14)Ub(e,1,17218,w)|0;else if((z|0)==16)Ub(e,1,18808,q)|0;else if((z|0)==19){Ub(e,1,18880,s)|0;z=0;i=A;return z|0}else if((z|0)==29){if(!b)break;c[x>>2]=c[x>>2]|4;z=1;i=A;return z|0}else if((z|0)==32){i=A;return b|0}Ub(e,1,18837,r)|0;z=0;i=A;return z|0}while(0);Ub(e,1,18952,y)|0;z=0;i=A;return z|0}function Af(){return 8}function Bf(){return 32}function Cf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!e)return;else f=0;do{l=a+(f<<2)|0;i=c[l>>2]|0;j=b+(f<<2)|0;h=c[j>>2]|0;g=d+(f<<2)|0;k=c[g>>2]|0;c[l>>2]=(h<<1)+i+k>>2;c[j>>2]=k-h;c[g>>2]=i-h;f=f+1|0}while((f|0)!=(e|0));return}function Df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!e)return;else f=0;do{k=a+(f<<2)|0;j=b+(f<<2)|0;h=c[j>>2]|0;g=d+(f<<2)|0;l=c[g>>2]|0;i=(c[k>>2]|0)-(l+h>>2)|0;c[k>>2]=i+l;c[j>>2]=i;c[g>>2]=i+h;f=f+1|0}while((f|0)!=(e|0));return}function Ef(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!e)return;else f=0;do{o=a+(f<<2)|0;u=c[o>>2]|0;k=b+(f<<2)|0;t=c[k>>2]|0;g=d+(f<<2)|0;s=c[g>>2]|0;j=((u|0)<0)<<31>>31;q=Zi(u|0,j|0,2449,0)|0;q=Si(q|0,C|0,4096,0)|0;q=Ti(q|0,C|0,13)|0;i=((t|0)<0)<<31>>31;r=Zi(t|0,i|0,4809,0)|0;r=Si(r|0,C|0,4096,0)|0;r=Ti(r|0,C|0,13)|0;h=((s|0)<0)<<31>>31;p=Zi(s|0,h|0,934,0)|0;p=Si(p|0,C|0,4096,0)|0;p=Ti(p|0,C|0,13)|0;l=Zi(u|0,j|0,1382,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=Zi(t|0,i|0,2714,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;n=Ri(s|0,h|0,12)|0;n=Si(n|0,C|0,4096,0)|0;n=Ti(n|0,C|0,13)|0;j=Ri(u|0,j|0,12)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;i=Zi(t|0,i|0,3430,0)|0;i=Si(i|0,C|0,4096,0)|0;i=Ti(i|0,C|0,13)|0;h=Zi(s|0,h|0,666,0)|0;h=Si(h|0,C|0,4096,0)|0;h=Ti(h|0,C|0,13)|0;c[o>>2]=r+q+p;c[k>>2]=n-(m+l);c[g>>2]=j-i-h;f=f+1|0}while((f|0)!=(e|0));return}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0.0,i=0.0,j=0,k=0.0,l=0;if(!d)return;else e=0;do{l=a+(e<<2)|0;i=+g[l>>2];j=b+(e<<2)|0;h=+g[j>>2];f=c+(e<<2)|0;k=+g[f>>2];g[l>>2]=i+k*1.4019999504089355;g[j>>2]=i-h*.3441300094127655-k*.714139997959137;g[f>>2]=i+h*1.7719999551773071;e=e+1|0}while((e|0)!=(d|0));return}function Gf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=_(e,e)|0;o=Pc(h+e<<2)|0;if(!o){e=0;return e|0}if(h){i=0;f=a;while(1){c[o+(i+e<<2)>>2]=~~(+g[f>>2]*8192.0);i=i+1|0;if((i|0)==(h|0))break;else f=f+4|0}}if(b){m=(e|0)==0;n=0;do{if(!m){f=0;do{c[o+(f<<2)>>2]=c[c[d+(f<<2)>>2]>>2];f=f+1|0}while((f|0)!=(e|0));if(!m){a=0;k=o;do{k=k+(e<<2)|0;h=d+(a<<2)|0;f=c[h>>2]|0;c[f>>2]=0;i=0;j=0;l=k;while(1){p=c[l>>2]|0;q=c[o+(j<<2)>>2]|0;p=Zi(q|0,((q|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;p=Si(p|0,C|0,4096,0)|0;p=Ti(p|0,C|0,13)|0;i=p+i|0;c[f>>2]=i;j=j+1|0;if((j|0)==(e|0))break;else l=l+4|0}c[h>>2]=f+4;a=a+1|0}while((a|0)!=(e|0))}}n=n+1|0}while((n|0)!=(b|0))}Uc(o);q=1;return q|0}function Hf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Pc(e<<3)|0;if(!m){e=0;return e|0}if(b){n=(e|0)==0;o=0;do{if(!n){f=0;do{c[m+(f<<2)>>2]=c[c[d+(f<<2)>>2]>>2];f=f+1|0}while((f|0)!=(e|0));if(!n){k=0;l=a;while(1){f=m+(k+e<<2)|0;g[f>>2]=0.0;h=0.0;i=0;j=l;while(1){h=h+ +g[j>>2]*+g[m+(i<<2)>>2];g[f>>2]=h;i=i+1|0;if((i|0)==(e|0))break;else j=j+4|0}i=d+(k<<2)|0;j=c[i>>2]|0;c[i>>2]=j+4;g[j>>2]=h;k=k+1|0;if((k|0)==(e|0))break;else l=l+(e<<2)|0}}}o=o+1|0}while((o|0)!=(b|0))}Uc(m);e=1;return e|0}function If(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,i=0,j=0,k=0.0;if(!b)return;else j=0;do{i=a+(j<<3)|0;h[i>>3]=0.0;d=0.0;e=0;f=j;while(1){k=+g[c+(f<<2)>>2];d=d+k*k;e=e+1|0;if((e|0)==(b|0))break;else f=f+b|0}h[i>>3]=+O(+d);j=j+1|0}while((j|0)!=(b|0));return}function Jf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;F=i;i=i+32|0;B=F+28|0;w=F+24|0;x=F+20|0;y=F+16|0;z=F+12|0;A=F+8|0;k=F+4|0;l=F;f=d+76|0;D=c[f>>2]|0;C=D+(e*5640|0)+420|0;E=(c[C>>2]|0)+1|0;m=b+16|0;v=Pc((c[m>>2]|0)*528|0)|0;if(!v){E=0;i=F;return E|0}u=Pc(c[m>>2]<<2)|0;if(!u){Uc(v);E=0;i=F;return E|0}f=Pf(b,c[f>>2]|0,e)|0;if(!f){Uc(v);Uc(u);E=0;i=F;return E|0}g=c[m>>2]|0;if(g){h=0;j=v;while(1){c[u+(h<<2)>>2]=j;h=h+1|0;if(h>>>0>=g>>>0)break;else j=j+528|0}}Qf(b,d,e,x,y,z,A,k,l,w,B,u);s=c[w>>2]|0;q=_(c[m>>2]|0,s)|0;r=_(c[B>>2]|0,q)|0;t=D+(e*5640|0)+8|0;p=Qc(_((c[t>>2]|0)+1|0,r)|0,2)|0;h=f+4|0;c[h>>2]=p;if(!p){Uc(v);Uc(u);g=c[h>>2]|0;if(g){Uc(g);c[h>>2]=0}if(E){b=f;n=0;while(1){m=b+196|0;g=c[m>>2]|0;if(g){d=b+192|0;h=c[d>>2]|0;if(h){l=0;while(1){j=g+12|0;k=c[j>>2]|0;if(k){Uc(k);c[j>>2]=0;h=c[d>>2]|0}l=l+1|0;if(l>>>0>=h>>>0)break;else g=g+16|0}g=c[m>>2]|0}Uc(g);c[m>>2]=0}n=n+1|0;if((n|0)==(E|0))break;else b=b+232|0}}Uc(f);E=0;i=F;return E|0}g=c[f+196>>2]|0;p=c[b+24>>2]|0;c[f+200>>2]=c[x>>2];c[f+204>>2]=c[z>>2];c[f+208>>2]=c[y>>2];c[f+212>>2]=c[A>>2];c[f+20>>2]=1;c[f+16>>2]=s;c[f+12>>2]=q;c[f+8>>2]=r;m=c[f+192>>2]|0;if(m){b=0;d=p;while(1){j=c[g+12>>2]|0;h=c[u+(b<<2)>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];l=c[g+8>>2]|0;if(l){k=0;while(1){c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];k=k+1|0;if(k>>>0>=l>>>0)break;else{h=h+16|0;j=j+16|0}}}b=b+1|0;if(b>>>0>=m>>>0)break;else{g=g+16|0;d=d+52|0}}}if(E>>>0>1){m=f;o=1;do{g=c[m+428>>2]|0;c[m+432>>2]=c[x>>2];c[m+436>>2]=c[z>>2];c[m+440>>2]=c[y>>2];c[m+444>>2]=c[A>>2];c[m+252>>2]=1;c[m+248>>2]=s;c[m+244>>2]=q;c[m+240>>2]=r;b=c[m+424>>2]|0;if(b){n=0;d=p;while(1){j=c[g+12>>2]|0;h=c[u+(n<<2)>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];l=c[g+8>>2]|0;if(l){k=0;while(1){c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];k=k+1|0;if(k>>>0>=l>>>0)break;else{h=h+16|0;j=j+16|0}}}n=n+1|0;if(n>>>0>=b>>>0)break;else{g=g+16|0;d=d+52|0}}}c[m+236>>2]=c[m+4>>2];m=m+232|0;o=o+1|0}while((o|0)!=(E|0))}Uc(v);Uc(u);m=c[w>>2]|0;if(!(a[D+(e*5640|0)+5636>>0]&4)){d=c[B>>2]|0;l=(c[C>>2]|0)+1|0;if(!l){E=f;i=F;return E|0}k=c[D+(e*5640|0)+4>>2]|0;g=c[t>>2]|0;h=f;j=0;while(1){c[h+80>>2]=k;c[h+40>>2]=1;c[h+44>>2]=0;c[h+48>>2]=0;c[h+64>>2]=0;c[h+68>>2]=0;c[h+56>>2]=d;c[h+60>>2]=c[h+192>>2];c[h+52>>2]=g;c[h+72>>2]=m;j=j+1|0;if((j|0)==(l|0))break;else h=h+232|0}i=F;return f|0}else{j=(c[C>>2]|0)+1|0;if(!j){E=f;i=F;return E|0}k=f;g=D+(e*5640|0)+424|0;h=0;while(1){c[k+80>>2]=c[g+36>>2];c[k+40>>2]=1;c[k+44>>2]=c[g>>2];c[k+48>>2]=c[g+4>>2];c[k+64>>2]=0;c[k+68>>2]=0;c[k+56>>2]=c[g+12>>2];c[k+60>>2]=c[g+16>>2];c[k+52>>2]=c[g+8>>2];c[k+72>>2]=m;h=h+1|0;if((h|0)==(j|0))break;else{k=k+232|0;g=g+148|0}}i=F;return f|0}return 0}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!a)return;d=a+4|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0}if(b){k=a;l=0;while(1){j=k+196|0;d=c[j>>2]|0;if(d){i=k+192|0;e=c[i>>2]|0;if(e){h=0;while(1){f=d+12|0;g=c[f>>2]|0;if(g){Uc(g);c[f>>2]=0;e=c[i>>2]|0}h=h+1|0;if(h>>>0>=e>>>0)break;else d=d+16|0}d=c[j>>2]|0}Uc(d);c[j>>2]=0}l=l+1|0;if((l|0)==(b|0))break;else k=k+232|0}}Uc(a);return}function Lf(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;L=i;i=i+32|0;G=L+28|0;F=L+24|0;B=L+20|0;C=L+16|0;D=L+12|0;E=L+8|0;H=L+4|0;I=L;J=f+76|0;x=c[J>>2]|0;K=(c[x+(g*5640|0)+420>>2]|0)+1|0;A=e+16|0;z=Pc((c[A>>2]|0)*528|0)|0;if(!z){g=0;i=L;return g|0}y=Pc(c[A>>2]<<2)|0;if(!y){Uc(z);g=0;i=L;return g|0}j=Pf(e,c[J>>2]|0,g)|0;if(!j){Uc(z);Uc(y);g=0;i=L;return g|0}k=c[A>>2]|0;if(k){l=0;m=z;while(1){c[y+(l<<2)>>2]=m;l=l+1|0;if(l>>>0>=k>>>0)break;else m=m+528|0}}Qf(e,f,g,B,C,D,E,H,I,F,G,y);u=c[F>>2]|0;v=_(c[A>>2]|0,u)|0;w=_(c[G>>2]|0,v)|0;a[j>>0]=(d[f+93>>0]|0)>>>3&1;t=Qc(_(c[x+(g*5640|0)+8>>2]|0,w)|0,2)|0;l=j+4|0;c[l>>2]=t;if(!t){Uc(z);Uc(y);k=c[l>>2]|0;if(k){Uc(k);c[l>>2]=0}if(K){q=j;r=0;while(1){p=q+196|0;k=c[p>>2]|0;if(k){o=q+192|0;l=c[o>>2]|0;if(l){n=0;while(1){m=k+12|0;e=c[m>>2]|0;if(e){Uc(e);c[m>>2]=0;l=c[o>>2]|0}n=n+1|0;if(n>>>0>=l>>>0)break;else k=k+16|0}k=c[p>>2]|0}Uc(k);c[p>>2]=0}r=r+1|0;if((r|0)==(K|0))break;else q=q+232|0}}Uc(j);g=0;i=L;return g|0}k=c[j+196>>2]|0;t=c[e+24>>2]|0;c[j+200>>2]=c[B>>2];c[j+204>>2]=c[D>>2];c[j+208>>2]=c[C>>2];c[j+212>>2]=c[E>>2];c[j+224>>2]=c[H>>2];c[j+228>>2]=c[I>>2];c[j+20>>2]=1;c[j+16>>2]=u;c[j+12>>2]=v;c[j+8>>2]=w;p=c[j+192>>2]|0;if(p){q=0;o=t;while(1){m=c[k+12>>2]|0;l=c[y+(q<<2)>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];n=c[k+8>>2]|0;if(n){e=0;while(1){c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];e=e+1|0;if(e>>>0>=n>>>0)break;else{l=l+16|0;m=m+16|0}}}q=q+1|0;if(q>>>0>=p>>>0)break;else{k=k+16|0;o=o+52|0}}}if(K>>>0>1){p=j;s=1;do{k=c[p+428>>2]|0;c[p+432>>2]=c[B>>2];c[p+436>>2]=c[D>>2];c[p+440>>2]=c[C>>2];c[p+444>>2]=c[E>>2];c[p+456>>2]=c[H>>2];c[p+460>>2]=c[I>>2];c[p+252>>2]=1;c[p+248>>2]=u;c[p+244>>2]=v;c[p+240>>2]=w;q=c[p+424>>2]|0;if(q){r=0;o=t;while(1){m=c[k+12>>2]|0;l=c[y+(r<<2)>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];n=c[k+8>>2]|0;if(n){e=0;while(1){c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];e=e+1|0;if(e>>>0>=n>>>0)break;else{l=l+16|0;m=m+16|0}}}r=r+1|0;if(r>>>0>=q>>>0)break;else{k=k+16|0;o=o+52|0}}}c[p+236>>2]=c[p+4>>2];p=p+232|0;s=s+1|0}while((s|0)!=(K|0))}Uc(z);Uc(y);do if(a[x+(g*5640|0)+5636>>0]&4){k=b[f>>1]|0;if((k&65535)>2){if(!((h|0)==1|(k&65535)<7))break}else if((h|0)!=1)break;Rf(c[J>>2]|0,g,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,c[H>>2]|0,c[I>>2]|0);g=j;i=L;return g|0}while(0);w=c[A>>2]|0;v=c[B>>2]|0;u=c[C>>2]|0;t=c[D>>2]|0;s=c[E>>2]|0;r=c[F>>2]|0;q=c[G>>2]|0;p=c[H>>2]|0;o=c[I>>2]|0;k=c[J>>2]|0;m=(c[k+(g*5640|0)+420>>2]|0)+1|0;if(!m){g=j;i=L;return g|0}e=c[k+(g*5640|0)+8>>2]|0;n=c[k+(g*5640|0)+4>>2]|0;k=k+(g*5640|0)+424|0;l=0;while(1){c[k+76>>2]=0;c[k+92>>2]=w;c[k+72>>2]=0;c[k+88>>2]=q;c[k+68>>2]=0;c[k+84>>2]=e;c[k+36>>2]=n;c[k+80>>2]=0;c[k+96>>2]=r;c[k+100>>2]=v;c[k+104>>2]=u;c[k+108>>2]=t;c[k+112>>2]=s;c[k+116>>2]=p;c[k+120>>2]=o;l=l+1|0;if((l|0)==(m|0))break;else k=k+148|0}i=L;return j|0}function Mf(d,e,f,g,h,i,j){d=d|0;e=e|0;f=f|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,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;Q=c[e+76>>2]|0;R=Q+(f*5640|0)+424+(g*148|0)+36|0;S=Vc(c[R>>2]|0)|0;c[d+(g*232|0)+40>>2]=1;T=d+(g*232|0)+44|0;c[d+(g*232|0)+80>>2]=c[R>>2];do if(a[e+93>>0]&8){k=b[e>>1]|0;if((k&65535)>2){if(!((j|0)==1&(k&65535)>6|(k+-3&65535)<4))break}else if(!((j|0)==1|(k+-3&65535)<4))break;k=i+1|0;a:do if((k|0)<4){j=Q+(f*5640|0)+424+(g*148|0)+72|0;l=Q+(f*5640|0)+424+(g*148|0)+88|0;m=d+(g*232|0)+56|0;n=Q+(f*5640|0)+424+(g*148|0)+76|0;o=d+(g*232|0)+48|0;p=Q+(f*5640|0)+424+(g*148|0)+92|0;q=d+(g*232|0)+60|0;r=Q+(f*5640|0)+424+(g*148|0)+68|0;s=d+(g*232|0)+64|0;t=Q+(f*5640|0)+424+(g*148|0)+84|0;u=d+(g*232|0)+52|0;v=Q+(f*5640|0)+424+(g*148|0)+80|0;w=d+(g*232|0)+68|0;x=Q+(f*5640|0)+424+(g*148|0)+96|0;y=d+(g*232|0)+72|0;z=Q+(f*5640|0)+424+(g*148|0)+100|0;A=d+(g*232|0)+96|0;B=Q+(f*5640|0)+424+(g*148|0)+108|0;C=d+(g*232|0)+104|0;D=Q+(f*5640|0)+424+(g*148|0)+104|0;E=d+(g*232|0)+100|0;F=Q+(f*5640|0)+424+(g*148|0)+112|0;G=d+(g*232|0)+108|0;while(1){b:do switch(a[S+k>>0]|0){case 82:{c[T>>2]=c[j>>2];c[m>>2]=c[l>>2];break}case 67:{c[o>>2]=c[n>>2];c[q>>2]=c[p>>2];break}case 76:{c[s>>2]=c[r>>2];c[u>>2]=c[t>>2];break}case 80:if((c[R>>2]|0)>>>0<2){c[w>>2]=c[v>>2];c[y>>2]=c[x>>2];break b}else{c[A>>2]=c[z>>2];c[C>>2]=c[B>>2];c[E>>2]=c[D>>2];c[G>>2]=c[F>>2];break b}default:{}}while(0);k=k+1|0;if((k|0)==4)break a}}while(0);k=(i|0)>-1;if(!h){if(!k)return;m=Q+(f*5640|0)+424+(g*148|0)+76|0;n=Q+(f*5640|0)+424+(g*148|0)+132|0;o=d+(g*232|0)+48|0;p=d+(g*232|0)+60|0;q=Q+(f*5640|0)+424+(g*148|0)+72|0;r=Q+(f*5640|0)+424+(g*148|0)+128|0;s=d+(g*232|0)+56|0;t=Q+(f*5640|0)+424+(g*148|0)+68|0;u=Q+(f*5640|0)+424+(g*148|0)+124|0;v=d+(g*232|0)+64|0;w=d+(g*232|0)+52|0;x=Q+(f*5640|0)+424+(g*148|0)+80|0;y=Q+(f*5640|0)+424+(g*148|0)+136|0;z=d+(g*232|0)+68|0;A=d+(g*232|0)+72|0;B=Q+(f*5640|0)+424+(g*148|0)+100|0;C=Q+(f*5640|0)+424+(g*148|0)+140|0;D=Q+(f*5640|0)+424+(g*148|0)+108|0;E=Q+(f*5640|0)+424+(g*148|0)+144|0;F=d+(g*232|0)+96|0;G=Q+(f*5640|0)+424+(g*148|0)+116|0;h=d+(g*232|0)+100|0;H=d+(g*232|0)+104|0;l=Q+(f*5640|0)+424+(g*148|0)+120|0;j=d+(g*232|0)+108|0;k=i;while(1){c:do switch(a[S+k>>0]|0){case 67:{g=c[m>>2]|0;c[o>>2]=g;g=g+1|0;c[p>>2]=g;c[n>>2]=g;break}case 82:{g=c[q>>2]|0;c[T>>2]=g;g=g+1|0;c[s>>2]=g;c[r>>2]=g;break}case 76:{g=c[t>>2]|0;c[v>>2]=g;g=g+1|0;c[w>>2]=g;c[u>>2]=g;break}case 80:if((c[R>>2]|0)>>>0<2){g=c[x>>2]|0;c[z>>2]=g;g=g+1|0;c[A>>2]=g;c[y>>2]=g;break c}else{g=c[B>>2]|0;i=c[D>>2]|0;c[F>>2]=g;f=c[G>>2]|0;f=f+g-((g>>>0)%(f>>>0)|0)|0;c[h>>2]=f;c[H>>2]=i;g=c[l>>2]|0;g=g+i-((i>>>0)%(g>>>0)|0)|0;c[j>>2]=g;c[C>>2]=f;c[E>>2]=g;break c}default:{}}while(0);if((k|0)>0)k=k+-1|0;else break}return}if(!k)return;L=Q+(f*5640|0)+424+(g*148|0)+128|0;M=Q+(f*5640|0)+424+(g*148|0)+88|0;N=Q+(f*5640|0)+424+(g*148|0)+72|0;O=d+(g*232|0)+56|0;P=Q+(f*5640|0)+424+(g*148|0)+132|0;p=Q+(f*5640|0)+424+(g*148|0)+92|0;q=Q+(f*5640|0)+424+(g*148|0)+76|0;r=d+(g*232|0)+48|0;s=d+(g*232|0)+60|0;t=Q+(f*5640|0)+424+(g*148|0)+124|0;u=Q+(f*5640|0)+424+(g*148|0)+84|0;v=Q+(f*5640|0)+424+(g*148|0)+68|0;w=d+(g*232|0)+64|0;x=d+(g*232|0)+52|0;y=Q+(f*5640|0)+424+(g*148|0)+136|0;z=Q+(f*5640|0)+424+(g*148|0)+96|0;A=Q+(f*5640|0)+424+(g*148|0)+80|0;B=d+(g*232|0)+68|0;C=d+(g*232|0)+72|0;D=Q+(f*5640|0)+424+(g*148|0)+140|0;E=Q+(f*5640|0)+424+(g*148|0)+104|0;F=d+(g*232|0)+96|0;G=Q+(f*5640|0)+424+(g*148|0)+116|0;h=d+(g*232|0)+100|0;H=Q+(f*5640|0)+424+(g*148|0)+144|0;I=Q+(f*5640|0)+424+(g*148|0)+112|0;J=d+(g*232|0)+104|0;K=Q+(f*5640|0)+424+(g*148|0)+120|0;n=d+(g*232|0)+108|0;o=Q+(f*5640|0)+424+(g*148|0)+100|0;m=Q+(f*5640|0)+424+(g*148|0)+108|0;l=i;k=1;while(1){j=S+l|0;d:do switch(a[j>>0]|0){case 67:{i=c[P>>2]|0;c[r>>2]=i+-1;c[s>>2]=i;break}case 82:{i=c[L>>2]|0;c[T>>2]=i+-1;c[O>>2]=i;break}case 76:{i=c[t>>2]|0;c[w>>2]=i+-1;c[x>>2]=i;break}case 80:if((c[R>>2]|0)>>>0<2){i=c[y>>2]|0;c[B>>2]=i+-1;c[C>>2]=i;break d}else{i=c[D>>2]|0;Q=c[G>>2]|0;c[F>>2]=i-Q-((i>>>0)%(Q>>>0)|0);c[h>>2]=i;i=c[H>>2]|0;Q=c[K>>2]|0;c[J>>2]=i-Q-((i>>>0)%(Q>>>0)|0);c[n>>2]=i;break d}default:{}}while(0);e:do if((k|0)==1)switch(a[j>>0]|0){case 82:{k=c[L>>2]|0;if((k|0)!=(c[M>>2]|0)){c[T>>2]=k;k=k+1|0;c[O>>2]=k;c[L>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[N>>2]|0;c[T>>2]=k;k=k+1|0;c[O>>2]=k;c[L>>2]=k;k=1;break e}case 67:{k=c[P>>2]|0;if((k|0)!=(c[p>>2]|0)){c[r>>2]=k;k=k+1|0;c[s>>2]=k;c[P>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[q>>2]|0;c[r>>2]=k;k=k+1|0;c[s>>2]=k;c[P>>2]=k;k=1;break e}case 76:{k=c[t>>2]|0;if((k|0)!=(c[u>>2]|0)){c[w>>2]=k;k=k+1|0;c[x>>2]=k;c[t>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[v>>2]|0;c[w>>2]=k;k=k+1|0;c[x>>2]=k;c[t>>2]=k;k=1;break e}case 80:{if((c[R>>2]|0)>>>0<2){k=c[y>>2]|0;if((k|0)!=(c[z>>2]|0)){c[B>>2]=k;k=k+1|0;c[C>>2]=k;c[y>>2]=k;k=0;break e}if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}k=c[A>>2]|0;c[B>>2]=k;k=k+1|0;c[C>>2]=k;c[y>>2]=k;k=1;break e}k=c[D>>2]|0;if(k>>>0<(c[E>>2]|0)>>>0){c[F>>2]=k;i=c[G>>2]|0;k=i+k-((k>>>0)%(i>>>0)|0)|0;c[h>>2]=k;c[D>>2]=k;k=0;break e}j=c[H>>2]|0;if(j>>>0<(c[I>>2]|0)>>>0){c[J>>2]=j;i=c[K>>2]|0;k=0;j=i+j-((j>>>0)%(i>>>0)|0)|0}else{if(!(Sf(l+-1|0,e,f,g,S)|0)){k=0;break e}i=c[m>>2]|0;c[H>>2]=i;c[J>>2]=i;j=c[K>>2]|0;k=1;j=j+i-((i>>>0)%(j>>>0)|0)|0}c[n>>2]=j;c[H>>2]=j;Q=c[o>>2]|0;c[F>>2]=Q;i=c[G>>2]|0;i=i+Q-((Q>>>0)%(i>>>0)|0)|0;c[h>>2]=i;c[D>>2]=i;break e}default:{k=1;break e}}while(0);if((l|0)>0)l=l+-1|0;else break}return}while(0);c[T>>2]=c[Q+(f*5640|0)+424+(g*148|0)+72>>2];c[d+(g*232|0)+56>>2]=c[Q+(f*5640|0)+424+(g*148|0)+88>>2];c[d+(g*232|0)+48>>2]=c[Q+(f*5640|0)+424+(g*148|0)+76>>2];c[d+(g*232|0)+60>>2]=c[Q+(f*5640|0)+424+(g*148|0)+92>>2];c[d+(g*232|0)+64>>2]=c[Q+(f*5640|0)+424+(g*148|0)+68>>2];c[d+(g*232|0)+52>>2]=c[Q+(f*5640|0)+424+(g*148|0)+84>>2];c[d+(g*232|0)+68>>2]=c[Q+(f*5640|0)+424+(g*148|0)+80>>2];c[d+(g*232|0)+72>>2]=c[Q+(f*5640|0)+424+(g*148|0)+96>>2];c[d+(g*232|0)+96>>2]=c[Q+(f*5640|0)+424+(g*148|0)+100>>2];c[d+(g*232|0)+104>>2]=c[Q+(f*5640|0)+424+(g*148|0)+108>>2];c[d+(g*232|0)+100>>2]=c[Q+(f*5640|0)+424+(g*148|0)+104>>2];c[d+(g*232|0)+108>>2]=c[Q+(f*5640|0)+424+(g*148|0)+112>>2];return}function Nf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;I=c[d+76>>2]|0;K=c[d+24>>2]|0;N=(e>>>0)%(K>>>0)|0;K=(e>>>0)/(K>>>0)|0;L=c[d+4>>2]|0;H=c[d+12>>2]|0;G=(_(H,N)|0)+L|0;M=c[b>>2]|0;M=(G|0)>(M|0)?G:M;L=(_(H,N+1|0)|0)+L|0;N=c[b+8>>2]|0;N=(L|0)<(N|0)?L:N;L=c[d+8>>2]|0;H=c[d+16>>2]|0;G=(_(H,K)|0)+L|0;J=c[b+4>>2]|0;J=(G|0)>(J|0)?G:J;L=(_(H,K+1|0)|0)+L|0;K=c[b+12>>2]|0;K=(L|0)<(K|0)?L:K;L=c[b+16>>2]|0;if(!L){l=0;k=2147483647;j=2147483647;i=0}else{D=K+-1|0;E=N+-1|0;F=J+-1|0;G=M+-1|0;l=0;k=2147483647;j=2147483647;i=0;H=0;A=c[b+24>>2]|0;B=c[I+(e*5640|0)+5584>>2]|0;while(1){x=c[A>>2]|0;y=c[A+4>>2]|0;z=c[B+4>>2]|0;i=z>>>0>i>>>0?z:i;if(z){v=(D+y|0)/(y|0)|0;t=(E+x|0)/(x|0)|0;r=(F+y|0)/(y|0)|0;p=(G+x|0)/(x|0)|0;p=Si(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;q=C;r=Si(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;s=C;t=Si(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;u=C;v=Si(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;w=C;d=0;o=0;while(1){m=c[B+812+(o<<2)>>2]|0;n=c[B+944+(o<<2)>>2]|0;g=d+-1+z|0;h=x<>>0>>0?k:h;j=j>>>0>>0?j:O;O=Ri(1,0,g|0)|0;h=C;d=Si(p|0,q|0,O|0,h|0)|0;d=Pi(d|0,C|0,g|0)|0;f=Si(r|0,s|0,O|0,h|0)|0;f=Pi(f|0,C|0,g|0)|0;b=Si(t|0,u|0,O|0,h|0)|0;b=Pi(b|0,C|0,g|0)|0;h=Si(v|0,w|0,O|0,h|0)|0;g=Pi(h|0,C|0,g|0)|0;h=Ri(1,0,n|0)|0;h=Si(h|0,C|0,-1,-1)|0;h=Si(h|0,C|0,g|0,((g|0)<0)<<31>>31|0)|0;h=Pi(h|0,C|0,n|0)|0;if((d|0)==(b|0))d=0;else{O=Ri(1,0,m|0)|0;O=Si(O|0,C|0,-1,-1)|0;O=Si(O|0,C|0,b|0,((b|0)<0)<<31>>31|0)|0;O=Pi(O|0,C|0,m|0)|0;d=(O<>m<>m}b=_(d,(f|0)==(g|0)?0:(h<>n<>n)|0;l=b>>>0>l>>>0?b:l;b=o+1|0;if(b>>>0>>0){d=~o;o=b}else break}}H=H+1|0;if(H>>>0>=L>>>0)break;else{A=A+52|0;B=B+1080|0}}}if(a[I+(e*5640|0)+5636>>0]&4){Rf(I,e,M,N,J,K,l,k,j);return}f=(c[I+(e*5640|0)+420>>2]|0)+1|0;if(!f)return;g=c[I+(e*5640|0)+8>>2]|0;h=c[I+(e*5640|0)+4>>2]|0;d=I+(e*5640|0)+424|0;b=0;while(1){c[d+76>>2]=0;c[d+92>>2]=L;c[d+72>>2]=0;c[d+88>>2]=i;c[d+68>>2]=0;c[d+84>>2]=g;c[d+36>>2]=h;c[d+80>>2]=0;c[d+96>>2]=l;c[d+100>>2]=M;c[d+104>>2]=N;c[d+108>>2]=J;c[d+112>>2]=K;c[d+116>>2]=k;c[d+120>>2]=j;b=b+1|0;if((b|0)==(f|0))break;else d=d+148|0}return}function Of(d){d=d|0;var 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,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,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,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,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;switch(c[d+80>>2]|0){case 0:{e=d+40|0;if(!(c[e>>2]|0)){E=d+32|0;l=E;E=c[E>>2]|0;f=18}else{c[e>>2]=0;t=c[d+64>>2]|0;c[d+36>>2]=t;f=5}while(1){if((f|0)==5){if(t>>>0>=(c[d+52>>2]|0)>>>0){nb=0;f=153;break}z=c[d+44>>2]|0;c[d+28>>2]=z;f=7}else if((f|0)==18){j=E+1|0;c[l>>2]=j;h=l;f=14}while(1){if((f|0)==7){f=0;if(z>>>0>=(c[d+56>>2]|0)>>>0){f=21;break}A=c[d+48>>2]|0;p=d+24|0;c[p>>2]=A}else if((f|0)==14){if(j>>>0<(c[d+72>>2]|0)>>>0){f=16;break}F=d+24|0;n=F;F=c[F>>2]|0;f=19}while(1){if((f|0)==19){f=0;A=F+1|0;c[n>>2]=A;p=n}if(A>>>0>=(c[d+60>>2]|0)>>>0){f=20;break}B=c[d+196>>2]|0;C=c[d+28>>2]|0;if(C>>>0<(c[B+(A<<4)+8>>2]|0)>>>0)break;else{n=p;F=A;f=19}}if((f|0)==20){f=d+28|0;z=(c[f>>2]|0)+1|0;c[f>>2]=z;f=7;continue}e=c[B+(A<<4)+12>>2]|0;if(!(a[d>>0]|0))c[d+72>>2]=_(c[e+(C<<4)+12>>2]|0,c[e+(C<<4)+8>>2]|0)|0;j=c[d+68>>2]|0;h=d+32|0;c[h>>2]=j;f=14}if((f|0)==16){f=0;D=_(c[d+8>>2]|0,c[d+36>>2]|0)|0;D=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+D|0;D=D+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;D=D+(_(c[d+20>>2]|0,j)|0)|0;D=(c[d+4>>2]|0)+(D<<1)|0;if(!(b[D>>1]|0))break;else{l=h;E=j;f=18;continue}}else if((f|0)==21){f=d+36|0;t=(c[f>>2]|0)+1|0;c[f>>2]=t;f=5;continue}}if((f|0)==153)return nb|0;b[D>>1]=1;d=1;return d|0}case 1:{e=d+40|0;if(!(c[e>>2]|0)){x=d+32|0;k=x;x=c[x>>2]|0;f=38}else{c[e>>2]=0;G=c[d+44>>2]|0;c[d+28>>2]=G;f=25}while(1){if((f|0)==25){if(G>>>0>=(c[d+56>>2]|0)>>>0){nb=0;f=153;break}r=c[d+64>>2]|0;c[d+36>>2]=r;f=27}else if((f|0)==38){i=x+1|0;c[k>>2]=i;g=k;f=34}while(1){if((f|0)==27){f=0;if(r>>>0>=(c[d+52>>2]|0)>>>0){f=41;break}s=c[d+48>>2]|0;o=d+24|0;c[o>>2]=s}else if((f|0)==34){if(i>>>0<(c[d+72>>2]|0)>>>0){f=36;break}y=d+24|0;m=y;y=c[y>>2]|0;f=39}while(1){if((f|0)==39){f=0;s=y+1|0;c[m>>2]=s;o=m}if(s>>>0>=(c[d+60>>2]|0)>>>0){f=40;break}u=c[d+196>>2]|0;v=c[d+28>>2]|0;if(v>>>0<(c[u+(s<<4)+8>>2]|0)>>>0)break;else{m=o;y=s;f=39}}if((f|0)==40){f=d+36|0;r=(c[f>>2]|0)+1|0;c[f>>2]=r;f=27;continue}e=c[u+(s<<4)+12>>2]|0;if(!(a[d>>0]|0))c[d+72>>2]=_(c[e+(v<<4)+12>>2]|0,c[e+(v<<4)+8>>2]|0)|0;i=c[d+68>>2]|0;g=d+32|0;c[g>>2]=i;f=34}if((f|0)==36){f=0;w=_(c[d+8>>2]|0,c[d+36>>2]|0)|0;w=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+w|0;w=w+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;w=w+(_(c[d+20>>2]|0,i)|0)|0;w=(c[d+4>>2]|0)+(w<<1)|0;if(!(b[w>>1]|0))break;else{k=g;x=i;f=38;continue}}else if((f|0)==41){f=d+28|0;G=(c[f>>2]|0)+1|0;c[f>>2]=G;f=25;continue}}if((f|0)==153)return nb|0;b[w>>1]=1;d=1;return d|0}case 2:{e=d+40|0;if(!(c[e>>2]|0)){lb=d+36|0;Ta=lb;lb=c[lb>>2]|0;f=75}else{c[e>>2]=0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;q=c[d+192>>2]|0;if(q){r=c[d+196>>2]|0;e=0;f=0;s=0;do{j=c[r+(s<<4)+8>>2]|0;if(j){k=c[r+(s<<4)+12>>2]|0;l=c[r+(s<<4)>>2]|0;m=c[r+(s<<4)+4>>2]|0;n=j+-1|0;g=0;i=0;while(1){h=n+g|0;Sa=l<>2]|0);h=m<<(c[k+(i<<4)+4>>2]|0)+h;e=(e|0)==0?Sa:e>>>0>>0?e:Sa;f=(f|0)==0?h:f>>>0>>0?f:h;h=i+1|0;if((h|0)==(j|0))break;else{g=~i;i=h}}c[o>>2]=e;c[p>>2]=f}s=s+1|0}while((s|0)!=(q|0))}if(!(a[d>>0]|0)){c[d+104>>2]=c[d+204>>2];c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}J=c[d+44>>2]|0;c[d+28>>2]=J;f=54}while(1){if((f|0)==54){if(J>>>0>=(c[d+56>>2]|0)>>>0){nb=0;f=153;break}Xa=c[d+104>>2]|0;c[d+220>>2]=Xa;f=56}else if((f|0)==75){jb=lb+1|0;c[Ta>>2]=jb;Ua=Ta;f=71}while(1){if((f|0)==56){if((Xa|0)>=(c[d+108>>2]|0)){f=79;break}Ya=c[d+96>>2]|0;c[d+216>>2]=Ya;f=58}else if((f|0)==71){if(jb>>>0<(c[d+52>>2]|0)>>>0){f=73;break}mb=d+24|0;Va=mb;mb=c[mb>>2]|0;f=76}while(1){if((f|0)==58){if((Ya|0)>=(c[d+100>>2]|0)){f=78;break}Za=c[d+48>>2]|0;Wa=d+24|0;c[Wa>>2]=Za}else if((f|0)==76){Za=mb+1|0;c[Va>>2]=Za;Wa=Va}if(Za>>>0>=(c[d+60>>2]|0)>>>0){Ya=c[d+224>>2]|0;f=d+216|0;Sa=c[f>>2]|0;Ya=Sa+Ya-((Sa|0)%(Ya|0)|0)|0;c[f>>2]=Ya;f=58;continue}f=c[d+196>>2]|0;m=c[d+28>>2]|0;e=c[f+(Za<<4)+8>>2]|0;if(m>>>0>=e>>>0){Va=Wa;mb=Za;f=76;continue}n=c[f+(Za<<4)+12>>2]|0;i=e+~m|0;j=c[d+200>>2]|0;k=c[f+(Za<<4)>>2]|0;_a=k<>2]|0;Sa=c[f+(Za<<4)+4>>2]|0;ab=Sa<>2]|0)|0)/(_a|0)|0;db=ab+-1|0;f=(db+(c[d+212>>2]|0)|0)/(ab|0)|0;eb=c[n+(m<<4)>>2]|0;g=eb+i|0;fb=c[n+(m<<4)+4>>2]|0;h=fb+i|0;gb=c[d+220>>2]|0;if((gb|0)%(Sa<>2]|0;if((hb|0)%(k<>2]|0;if(!ib){Va=Wa;mb=Za;f=76;continue}if((bb|0)==(f|0)|(($a|0)==(e|0)?1:(c[n+(m<<4)+12>>2]|0)==0)){Va=Wa;mb=Za;f=76}else{f=70;break}}if((f|0)==70){c[d+32>>2]=(((cb+hb|0)/(_a|0)|0)>>eb)-($a>>eb)+(_((((db+gb|0)/(ab|0)|0)>>fb)-(bb>>fb)|0,ib)|0);jb=c[d+64>>2]|0;Ua=d+36|0;c[Ua>>2]=jb;f=71;continue}else if((f|0)==78){Xa=c[d+228>>2]|0;f=d+220|0;Sa=c[f>>2]|0;Xa=Sa+Xa-((Sa|0)%(Xa|0)|0)|0;c[f>>2]=Xa;f=56;continue}}if((f|0)==73){f=0;kb=_(c[d+8>>2]|0,jb)|0;kb=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+kb|0;kb=kb+(_(c[d+16>>2]|0,c[d+24>>2]|0)|0)|0;kb=kb+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;kb=(c[d+4>>2]|0)+(kb<<1)|0;if(!(b[kb>>1]|0))break;else{Ta=Ua;lb=jb;f=75;continue}}else if((f|0)==79){f=d+28|0;J=(c[f>>2]|0)+1|0;c[f>>2]=J;f=54;continue}}if((f|0)==153)return nb|0;b[kb>>1]=1;d=1;return d|0}case 3:{f=d+40|0;if(!(c[f>>2]|0)){Ra=c[d+24>>2]|0;Ka=d+36|0;pa=Ka;Ka=c[Ka>>2]|0;Na=Ra;Ra=(c[d+196>>2]|0)+(Ra<<4)|0;f=113}else{c[f>>2]=0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;q=c[d+192>>2]|0;if(q){r=c[d+196>>2]|0;e=0;f=0;s=0;do{j=c[r+(s<<4)+8>>2]|0;if(j){k=c[r+(s<<4)+12>>2]|0;l=c[r+(s<<4)>>2]|0;m=c[r+(s<<4)+4>>2]|0;n=j+-1|0;g=0;i=0;while(1){h=n+g|0;mb=l<>2]|0);h=m<<(c[k+(i<<4)+4>>2]|0)+h;e=(e|0)==0?mb:e>>>0>>0?e:mb;f=(f|0)==0?h:f>>>0>>0?f:h;h=i+1|0;if((h|0)==(j|0))break;else{g=~i;i=h}}c[o>>2]=e;c[p>>2]=f}s=s+1|0}while((s|0)!=(q|0))}if(!(a[d>>0]|0)){e=c[d+204>>2]|0;c[d+104>>2]=e;c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}else e=c[d+104>>2]|0;c[d+220>>2]=e;f=93}while(1){if((f|0)==93){if((e|0)>=(c[d+108>>2]|0)){nb=0;f=153;break}ta=c[d+96>>2]|0;c[d+216>>2]=ta;f=95}else if((f|0)==113){Ha=Ka+1|0;c[pa>>2]=Ha;qa=pa;Ia=Na;Qa=Ra;f=109}while(1){if((f|0)==95){if((ta|0)>=(c[d+100>>2]|0)){f=117;break}ua=c[d+48>>2]|0;c[d+24>>2]=ua;f=97}else if((f|0)==109){if(Ha>>>0<(c[d+52>>2]|0)>>>0){f=111;break}La=d+28|0;ra=La;La=c[La>>2]|0;Oa=Ia;Sa=Qa;f=114}while(1){if((f|0)==97){if(ua>>>0>=(c[d+60>>2]|0)>>>0){f=116;break}Pa=(c[d+196>>2]|0)+(ua<<4)|0;va=c[d+44>>2]|0;sa=d+28|0;c[sa>>2]=va;Ma=ua}else if((f|0)==114){va=La+1|0;c[ra>>2]=va;sa=ra;Ma=Oa;Pa=Sa}mb=c[d+56>>2]|0;f=c[Pa+8>>2]|0;if(va>>>0>=(mb>>>0>>0?mb:f)>>>0){ua=Ma+1|0;c[d+24>>2]=ua;f=97;continue}n=c[Pa+12>>2]|0;f=f+~va|0;g=c[d+200>>2]|0;h=c[Pa>>2]|0;wa=h<>2]|0;mb=c[Pa+4>>2]|0;ya=mb<>2]|0)|0)/(wa|0)|0;Ba=ya+-1|0;k=(Ba+(c[d+212>>2]|0)|0)/(ya|0)|0;Ca=c[n+(va<<4)>>2]|0;l=Ca+f|0;Da=c[n+(va<<4)+4>>2]|0;m=Da+f|0;Ea=c[d+220>>2]|0;if((Ea|0)%(mb<>2]|0;if((Fa|0)%(h<>2]|0;if(!Ga){ra=sa;La=va;Oa=Ma;Sa=Pa;f=114;continue}if((za|0)==(k|0)|((xa|0)==(j|0)?1:(c[n+(va<<4)+12>>2]|0)==0)){ra=sa;La=va;Oa=Ma;Sa=Pa;f=114}else{f=108;break}}if((f|0)==108){c[d+32>>2]=(((Aa+Fa|0)/(wa|0)|0)>>Ca)-(xa>>Ca)+(_((((Ba+Ea|0)/(ya|0)|0)>>Da)-(za>>Da)|0,Ga)|0);Ha=c[d+64>>2]|0;qa=d+36|0;c[qa>>2]=Ha;Ia=Ma;Qa=Pa;f=109;continue}else if((f|0)==116){ta=c[d+224>>2]|0;f=d+216|0;mb=c[f>>2]|0;ta=mb+ta-((mb|0)%(ta|0)|0)|0;c[f>>2]=ta;f=95;continue}}if((f|0)==111){f=0;Ja=_(c[d+8>>2]|0,Ha)|0;Ja=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+Ja|0;Ja=Ja+(_(c[d+16>>2]|0,Ia)|0)|0;Ja=Ja+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;Ja=(c[d+4>>2]|0)+(Ja<<1)|0;if(!(b[Ja>>1]|0))break;else{pa=qa;Ka=Ha;Na=Ia;Ra=Qa;f=113;continue}}else if((f|0)==117){e=c[d+228>>2]|0;f=d+220|0;mb=c[f>>2]|0;e=mb+e-((mb|0)%(e|0)|0)|0;c[f>>2]=e;f=93;continue}}if((f|0)==153)return nb|0;b[Ja>>1]=1;d=1;return d|0}case 4:{e=d+40|0;if(!(c[e>>2]|0)){na=c[d+24>>2]|0;ea=d+36|0;K=ea;ea=c[ea>>2]|0;ga=na;na=(c[d+196>>2]|0)+(na<<4)|0;f=148}else{c[e>>2]=0;O=c[d+48>>2]|0;c[d+24>>2]=O;f=121}while(1){if((f|0)==121){if(O>>>0>=(c[d+60>>2]|0)>>>0){nb=0;f=153;break}e=c[d+196>>2]|0;q=e+(O<<4)|0;o=d+224|0;c[o>>2]=0;p=d+228|0;c[p>>2]=0;l=c[e+(O<<4)+8>>2]|0;if(l){m=c[e+(O<<4)+12>>2]|0;n=c[q>>2]|0;h=c[e+(O<<4)+4>>2]|0;i=l+-1|0;f=0;e=0;g=0;k=0;while(1){j=i+g|0;mb=n<>2]|0);j=h<<(c[m+(k<<4)+4>>2]|0)+j;f=(f|0)==0?mb:f>>>0>>0?f:mb;e=(e|0)==0?j:e>>>0>>0?e:j;j=k+1|0;if((j|0)==(l|0))break;else{g=~k;k=j}}c[o>>2]=f;c[p>>2]=e}if(!(a[d>>0]|0)){e=c[d+204>>2]|0;c[d+104>>2]=e;c[d+96>>2]=c[d+200>>2];c[d+108>>2]=c[d+212>>2];c[d+100>>2]=c[d+208>>2]}else e=c[d+104>>2]|0;c[d+220>>2]=e;H=e;I=O;f=130}else if((f|0)==148){ba=ea+1|0;c[K>>2]=ba;L=K;ca=ga;ma=na;f=144}while(1){if((f|0)==130){if((H|0)>=(c[d+108>>2]|0)){f=152;break}P=c[d+96>>2]|0;c[d+216>>2]=P;ha=I;ka=q;f=132}else if((f|0)==144){if(ba>>>0<(c[d+52>>2]|0)>>>0){f=146;break}fa=d+28|0;M=fa;fa=c[fa>>2]|0;ja=ca;oa=ma;f=149}while(1){if((f|0)==132){if((P|0)>=(c[d+100>>2]|0)){f=151;break}Q=c[d+44>>2]|0;N=d+28|0;c[N>>2]=Q;ia=ha;la=ka}else if((f|0)==149){Q=fa+1|0;c[M>>2]=Q;N=M;ia=ja;la=oa}mb=c[d+56>>2]|0;e=c[la+8>>2]|0;if(Q>>>0>=(mb>>>0>>0?mb:e)>>>0){P=c[d+224>>2]|0;ha=d+216|0;ka=c[ha>>2]|0;P=ka+P-((ka|0)%(P|0)|0)|0;c[ha>>2]=P;ha=ia;ka=la;f=132;continue}m=c[la+12>>2]|0;e=e+~Q|0;f=c[d+200>>2]|0;g=c[la>>2]|0;R=g<>2]|0;mb=c[la+4>>2]|0;T=mb<>2]|0)|0)/(R|0)|0;W=T+-1|0;j=(W+(c[d+212>>2]|0)|0)/(T|0)|0;X=c[m+(Q<<4)>>2]|0;k=X+e|0;Y=c[m+(Q<<4)+4>>2]|0;l=Y+e|0;Z=c[d+220>>2]|0;if((Z|0)%(mb<>2]|0;if(($|0)%(g<>2]|0;if(!aa){M=N;fa=Q;ja=ia;oa=la;f=149;continue}if((U|0)==(j|0)|((S|0)==(i|0)?1:(c[m+(Q<<4)+12>>2]|0)==0)){M=N;fa=Q;ja=ia;oa=la;f=149}else{f=143;break}}if((f|0)==143){c[d+32>>2]=(((V+$|0)/(R|0)|0)>>X)-(S>>X)+(_((((W+Z|0)/(T|0)|0)>>Y)-(U>>Y)|0,aa)|0);ba=c[d+64>>2]|0;L=d+36|0;c[L>>2]=ba;ca=ia;ma=la;f=144;continue}else if((f|0)==151){H=c[d+228>>2]|0;I=d+220|0;q=c[I>>2]|0;H=q+H-((q|0)%(H|0)|0)|0;c[I>>2]=H;I=ha;q=ka;f=130;continue}}if((f|0)==146){f=0;da=_(c[d+8>>2]|0,ba)|0;da=(_(c[d+12>>2]|0,c[d+28>>2]|0)|0)+da|0;da=da+(_(c[d+16>>2]|0,ca)|0)|0;da=da+(_(c[d+20>>2]|0,c[d+32>>2]|0)|0)|0;da=(c[d+4>>2]|0)+(da<<1)|0;if(!(b[da>>1]|0))break;else{K=L;ea=ba;ga=ca;na=ma;f=148;continue}}else if((f|0)==152){O=I+1|0;c[d+24>>2]=O;f=121;continue}}if((f|0)==153)return nb|0;b[da>>1]=1;d=1;return d|0}default:{d=0;return d|0}}return 0}function Pf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=(c[b+(d*5640|0)+420>>2]|0)+1|0;e=Qc(l,232)|0;if(!e){l=0;return l|0}if(!l){l=e;return l|0}j=a+16|0;g=b+(d*5640|0)+5584|0;a=c[j>>2]|0;h=e;i=0;a:while(1){b=Qc(a,16)|0;f=h+196|0;c[f>>2]=b;if(!b){a=5;break}k=c[j>>2]|0;c[h+192>>2]=k;b:do if(!k)a=0;else{a=(c[g>>2]|0)+4|0;k=Qc(c[a>>2]|0,16)|0;c[b+12>>2]=k;if(!k){a=18;break a}else d=0;while(1){c[b+(d<<4)+8>>2]=c[a>>2];d=d+1|0;a=c[j>>2]|0;if(d>>>0>=a>>>0)break b;b=c[f>>2]|0;a=(c[g>>2]|0)+(d*1080|0)+4|0;k=Qc(c[a>>2]|0,16)|0;c[b+(d<<4)+12>>2]=k;if(!k){a=18;break a}}}while(0);i=i+1|0;if(i>>>0>=l>>>0){a=32;break}else h=h+232|0}if((a|0)==5){a=e+4|0;b=c[a>>2]|0;if(!b){j=e;k=0}else{Uc(b);c[a>>2]=0;j=e;k=0}while(1){i=j+196|0;a=c[i>>2]|0;if(a){h=j+192|0;b=c[h>>2]|0;if(b){g=0;while(1){d=a+12|0;f=c[d>>2]|0;if(f){Uc(f);c[d>>2]=0;b=c[h>>2]|0}g=g+1|0;if(g>>>0>=b>>>0)break;else a=a+16|0}a=c[i>>2]|0}Uc(a);c[i>>2]=0}k=k+1|0;if((k|0)==(l|0))break;else j=j+232|0}Uc(e);l=0;return l|0}else if((a|0)==18){a=e+4|0;b=c[a>>2]|0;if(!b){j=e;k=0}else{Uc(b);c[a>>2]=0;j=e;k=0}while(1){i=j+196|0;a=c[i>>2]|0;if(a){h=j+192|0;b=c[h>>2]|0;if(b){g=0;while(1){d=a+12|0;f=c[d>>2]|0;if(f){Uc(f);c[d>>2]=0;b=c[h>>2]|0}g=g+1|0;if(g>>>0>=b>>>0)break;else a=a+16|0}a=c[i>>2]|0}Uc(a);c[i>>2]=0}k=k+1|0;if((k|0)==(l|0))break;else j=j+232|0}Uc(e);l=0;return l|0}else if((a|0)==32)return e|0;return 0}function Qf(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|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;var 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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;o=c[(c[b+76>>2]|0)+(d*5640|0)+5584>>2]|0;n=c[a+24>>2]|0;I=c[b+24>>2]|0;H=b+12|0;G=(_(c[H>>2]|0,(d>>>0)%(I>>>0)|0)|0)+(c[b+4>>2]|0)|0;F=c[a>>2]|0;c[e>>2]=G>>>0>F>>>0?G:F;G=Si(c[H>>2]|0,0,G|0,0)|0;G=G|0-C;H=c[a+8>>2]|0;c[f>>2]=G>>>0>>0?G:H;H=b+16|0;I=(_(c[H>>2]|0,(d>>>0)/(I>>>0)|0)|0)+(c[b+8>>2]|0)|0;G=c[a+4>>2]|0;c[g>>2]=I>>>0>G>>>0?I:G;I=Si(c[H>>2]|0,0,I|0,0)|0;I=I|0-C;H=c[a+12>>2]|0;c[h>>2]=I>>>0>>0?I:H;c[k>>2]=0;c[l>>2]=0;c[i>>2]=2147483647;c[j>>2]=2147483647;H=a+16|0;if(!(c[H>>2]|0))return;else I=0;while(1){r=c[m+(I<<2)>>2]|0;p=c[n>>2]|0;a=((c[e>>2]|0)+-1+p|0)/(p|0)|0;F=n+4|0;q=c[F>>2]|0;d=((c[g>>2]|0)+-1+q|0)/(q|0)|0;p=(p+-1+(c[f>>2]|0)|0)/(p|0)|0;q=(q+-1+(c[h>>2]|0)|0)/(q|0)|0;G=o+4|0;b=c[G>>2]|0;if(b>>>0>(c[l>>2]|0)>>>0){c[l>>2]=b;b=c[G>>2]|0}if(b){D=Si(a|0,((a|0)<0)<<31>>31|0,-1,-1)|0;E=C;A=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;B=C;y=Si(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;z=C;w=Si(q|0,((q|0)<0)<<31>>31|0,-1,-1)|0;x=C;v=0;while(1){b=b+-1|0;p=c[o+812+(v<<2)>>2]|0;u=c[o+944+(v<<2)>>2]|0;c[r>>2]=p;c[r+4>>2]=u;s=c[n>>2]<>2]<>2]|0;c[i>>2]=(a|0)<(s|0)?a:s;s=c[j>>2]|0;c[j>>2]=(s|0)<(J|0)?s:J;J=Ri(1,0,b|0)|0;s=C;a=Si(D|0,E|0,J|0,s|0)|0;a=Pi(a|0,C|0,b|0)|0;q=Si(A|0,B|0,J|0,s|0)|0;q=Pi(q|0,C|0,b|0)|0;d=Si(y|0,z|0,J|0,s|0)|0;d=Pi(d|0,C|0,b|0)|0;s=Si(w|0,x|0,J|0,s|0)|0;s=Pi(s|0,C|0,b|0)|0;J=Ri(1,0,u|0)|0;t=C;K=Si(s|0,((s|0)<0)<<31>>31|0,-1,-1)|0;t=Si(K|0,C|0,J|0,t|0)|0;t=Pi(t|0,C|0,u|0)|0;if((a|0)==(d|0))a=0;else{d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;J=C;K=Ri(1,0,p|0)|0;K=Si(d|0,J|0,K|0,C|0)|0;K=Pi(K|0,C|0,p|0)|0;a=(K<>p<>p}K=(q|0)==(s|0)?0:(t<>u<>u;c[r+8>>2]=a;c[r+12>>2]=K;a=_(a,K)|0;if(a>>>0>(c[k>>2]|0)>>>0)c[k>>2]=a;v=v+1|0;if(v>>>0>=(c[G>>2]|0)>>>0)break;else r=r+16|0}}I=I+1|0;if(I>>>0>=(c[H>>2]|0)>>>0)break;else{n=n+52|0;o=o+1080|0}}return}function Rf(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c[a+(b*5640|0)+420>>2]|0)+1|0;c[a+(b*5640|0)+500>>2]=c[a+(b*5640|0)+428>>2];c[a+(b*5640|0)+516>>2]=c[a+(b*5640|0)+440>>2];c[a+(b*5640|0)+496>>2]=c[a+(b*5640|0)+424>>2];c[a+(b*5640|0)+512>>2]=c[a+(b*5640|0)+436>>2];c[a+(b*5640|0)+508>>2]=c[a+(b*5640|0)+432>>2];c[a+(b*5640|0)+492>>2]=0;c[a+(b*5640|0)+460>>2]=c[a+(b*5640|0)+456>>2];c[a+(b*5640|0)+504>>2]=0;c[a+(b*5640|0)+520>>2]=h;c[a+(b*5640|0)+524>>2]=d;c[a+(b*5640|0)+528>>2]=e;c[a+(b*5640|0)+532>>2]=f;c[a+(b*5640|0)+536>>2]=g;c[a+(b*5640|0)+540>>2]=i;c[a+(b*5640|0)+544>>2]=j;if(k>>>0<=1)return;a=a+(b*5640|0)+572|0;b=1;while(1){c[a+76>>2]=c[a+4>>2];c[a+92>>2]=c[a+16>>2];c[a+72>>2]=c[a>>2];c[a+88>>2]=c[a+12>>2];l=c[a+8>>2]|0;c[a+84>>2]=l;c[a+36>>2]=c[a+32>>2];c[a+80>>2]=0;c[a+68>>2]=l>>>0>(c[a+-64>>2]|0)>>>0?l:0;c[a+96>>2]=h;c[a+100>>2]=d;c[a+104>>2]=e;c[a+108>>2]=f;c[a+112>>2]=g;c[a+116>>2]=i;c[a+120>>2]=j;b=b+1|0;if((b|0)==(k|0))break;else a=a+148|0}return}function Sf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=c[d+76>>2]|0;if((b|0)>-1)h=b;else{e=0;return e|0}a:while(1){switch(a[g+h>>0]|0){case 82:{i=3;break a}case 67:{i=5;break a}case 76:{i=7;break a}case 80:{i=9;break a}default:{}}h=h+-1|0}if((i|0)==3)if((c[j+(e*5640|0)+424+(f*148|0)+128>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+88>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==5)if((c[j+(e*5640|0)+424+(f*148|0)+132>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+92>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==7)if((c[j+(e*5640|0)+424+(f*148|0)+124>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+84>>2]|0))return (Sf(b+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}else if((i|0)==9){if((c[j+(e*5640|0)+424+(f*148|0)+36>>2]|0)>>>0<2)if((c[j+(e*5640|0)+424+(f*148|0)+136>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+96>>2]|0))return (Sf(h+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}if((c[j+(e*5640|0)+424+(f*148|0)+140>>2]|0)!=(c[j+(e*5640|0)+424+(f*148|0)+104>>2]|0)){e=1;return e|0}if((c[j+(e*5640|0)+424+(f*148|0)+144>>2]|0)==(c[j+(e*5640|0)+424+(f*148|0)+112>>2]|0))return (Sf(h+-1|0,d,e,f,g)|0)!=0|0;else{e=1;return e|0}}return 0}function Tf(b){b=b|0;var d=0,e=0;d=Qc(1,44)|0;if(!d){b=0;return b|0}e=d+40|0;a[e>>0]=a[e>>0]&-2|(b|0)!=0;b=Qc(1,4)|0;c[d+20>>2]=b;if(b){e=d;return e|0}Uc(d);e=0;return e|0}function Uf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=i;i=i+1200|0;N=O;e=c[c[a+20>>2]>>2]|0;M=e+16|0;f=c[M>>2]|0;if(!f){i=O;return}J=e+20|0;K=(c[a+32>>2]|0)+8|0;L=(c[a+28>>2]|0)+88|0;H=a+24|0;I=(b|0)==0;F=(d|0)==0;G=b+-1|0;e=f;E=0;do{j=c[J>>2]|0;k=c[K>>2]|0;C=c[j+(E*52|0)+16>>2]|0;if(k){if(C){a=c[L>>2]|0;g=+((c[(c[(c[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)>>>0)*.0625;f=0;do{d=_(C,f)|0;h=0;do{D=(d+h|0)*3|0;c[N+(f*120|0)+(h*12|0)>>2]=~~(+(c[a+(D<<2)>>2]|0)*g);c[N+(f*120|0)+(h*12|0)+4>>2]=~~(+(c[a+(D+1<<2)>>2]|0)*g);c[N+(f*120|0)+(h*12|0)+8>>2]=~~(+(c[a+(D+2<<2)>>2]|0)*g);h=h+1|0}while(h>>>0>>0);f=f+1|0}while(f>>>0>>0);D=9}}else D=9;if((D|0)==9){D=0;if(C){w=j+(E*52|0)+24|0;B=0;do{x=c[w>>2]|0;y=x+(B*136|0)+24|0;e=c[y>>2]|0;if(e){z=x+(B*136|0)+16|0;A=x+(B*136|0)+20|0;a=c[A>>2]|0;d=c[z>>2]|0;v=0;do{if(_(a,d)|0){s=x+(B*136|0)+28+(v*36|0)+20|0;t=N+(b*120|0)+(B*12|0)+(v<<2)|0;u=N+(G*120|0)+(B*12|0)+(v<<2)|0;r=0;do{e=c[s>>2]|0;q=_(c[e+(r*40|0)+20>>2]|0,c[e+(r*40|0)+16>>2]|0)|0;if(q){m=e+(r*40|0)+24|0;n=c[t>>2]|0;p=0;do{k=c[m>>2]|0;l=k+(p*52|0)|0;o=c[k+(p*52|0)+4>>2]|0;e=(c[(c[(c[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)-(c[k+(p*52|0)+28>>2]|0)|0;if(!I){a=c[u>>2]|0;d=n-a|0;if((a|0)<=(e|0)){d=d+(a-e)|0;d=(d|0)<0?0:d}}else{c[k+(p*52|0)+44>>2]=0;d=(n|0)>(e|0)?n-e|0:0}j=k+(p*52|0)+44|0;f=c[j>>2]|0;h=(f|0)==0;if(h)if(!d)d=0;else d=(d*3|0)+-2|0;else d=(d*3|0)+f|0;c[o+(b*24|0)>>2]=d-f;do if((d|0)!=(f|0)){a=c[k+(p*52|0)+8>>2]|0;e=c[a+((d+-1|0)*24|0)>>2]|0;if(h)c[o+(b*24|0)+16>>2]=c[l>>2];else{k=c[a+((f+-1|0)*24|0)>>2]|0;c[o+(b*24|0)+16>>2]=(c[l>>2]|0)+k;e=e-k|0}c[o+(b*24|0)+4>>2]=e;if(F)break;c[j>>2]=d}while(0);p=p+1|0}while(p>>>0>>0);a=c[A>>2]|0;d=c[z>>2]|0}r=r+1|0}while(r>>>0<(_(a,d)|0)>>>0);e=c[y>>2]|0}v=v+1|0}while(v>>>0>>0)}B=B+1|0}while(B>>>0>>0);e=c[M>>2]|0}}E=E+1|0}while(E>>>0>>0);i=O;return}function Vf(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,g=0.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;a=c[c[a+20>>2]>>2]|0;G=a+40+(b<<3)|0;h[G>>3]=0.0;H=a+16|0;f=c[H>>2]|0;if(!f)return;E=a+20|0;F=(b|0)==0;D=(e|0)==0;a=f;C=0;do{f=c[E>>2]|0;B=c[f+(C*52|0)+16>>2]|0;if(B){v=f+(C*52|0)+24|0;A=0;do{w=c[v>>2]|0;x=w+(A*136|0)+24|0;a=c[x>>2]|0;if(a){y=w+(A*136|0)+16|0;z=w+(A*136|0)+20|0;f=c[z>>2]|0;e=c[y>>2]|0;u=0;do{if(_(f,e)|0){t=w+(A*136|0)+28+(u*36|0)+20|0;s=0;do{a=c[t>>2]|0;r=_(c[a+(s*40|0)+20>>2]|0,c[a+(s*40|0)+16>>2]|0)|0;if(r){n=a+(s*40|0)+24|0;q=0;do{k=c[n>>2]|0;l=k+(q*52|0)|0;o=c[k+(q*52|0)+4>>2]|0;p=k+(q*52|0)+44|0;if(F){c[p>>2]=0;m=0}else m=c[p>>2]|0;e=c[k+(q*52|0)+48>>2]|0;if(m>>>0>>0){i=c[k+(q*52|0)+8>>2]|0;a=m;j=m;do{f=c[i+(j*24|0)>>2]|0;g=+h[i+(j*24|0)+8>>3];if(a){J=a+-1|0;g=g-+h[i+(J*24|0)+8>>3];f=f-(c[i+(J*24|0)>>2]|0)|0}do if(!f){if(!(g!=0.0))break;a=j+1|0}else{if(!(d-g/+(f>>>0)<2.220446049250313e-16))break;a=j+1|0}while(0);j=j+1|0}while(j>>>0>>0);i=a;c[o+(b*24|0)>>2]=i-m;if((i|0)!=(m|0)){e=i+-1|0;f=c[k+(q*52|0)+8>>2]|0;a=c[f+(e*24|0)>>2]|0;if(!m){c[o+(b*24|0)+16>>2]=c[l>>2];g=+h[f+(e*24|0)+8>>3]}else{m=m+-1|0;J=c[f+(m*24|0)>>2]|0;c[o+(b*24|0)+16>>2]=(c[l>>2]|0)+J;g=+h[f+(e*24|0)+8>>3]-+h[f+(m*24|0)+8>>3];a=a-J|0}c[o+(b*24|0)+4>>2]=a;h[o+(b*24|0)+8>>3]=g;h[G>>3]=g+ +h[G>>3];if(!D)c[p>>2]=i}else I=26}else{c[o+(b*24|0)>>2]=0;I=26}if((I|0)==26){I=0;h[o+(b*24|0)+8>>3]=0.0}q=q+1|0}while(q>>>0>>0);f=c[z>>2]|0;e=c[y>>2]|0}s=s+1|0}while(s>>>0<(_(f,e)|0)>>>0);a=c[x>>2]|0}u=u+1|0}while(u>>>0>>0)}A=A+1|0}while(A>>>0>>0);a=c[H>>2]|0}C=C+1|0}while(C>>>0>>0);return}function Wf(d,e,f,j,k){d=d|0;e=e|0;f=f|0;j=j|0;k=k|0;var 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.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,N=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;W=i;i=i+800|0;V=W;S=c[d+28>>2]|0;T=c[c[d+20>>2]>>2]|0;U=c[d+32>>2]|0;O=T+24|0;c[O>>2]=0;Q=c[T+16>>2]|0;if(!Q){l=0;J=0.0;n=0.0;p=1797693134862315708145274.0e284}else{M=c[T+20>>2]|0;N=c[(c[d+24>>2]|0)+24>>2]|0;l=0;R=0;o=0.0;n=0.0;p=1797693134862315708145274.0e284;do{I=M+(R*52|0)+48|0;c[I>>2]=0;K=c[M+(R*52|0)+16>>2]|0;if(!K)m=0;else{L=c[M+(R*52|0)+24>>2]|0;m=0;H=0;do{E=c[L+(H*136|0)+24>>2]|0;if(E){F=_(c[L+(H*136|0)+20>>2]|0,c[L+(H*136|0)+16>>2]|0)|0;G=(F|0)==0;D=0;do{if(!G){C=c[L+(H*136|0)+28+(D*36|0)+20>>2]|0;B=0;do{z=_(c[C+(B*40|0)+20>>2]|0,c[C+(B*40|0)+16>>2]|0)|0;if(z){A=c[C+(B*40|0)+24>>2]|0;y=0;do{v=c[A+(y*52|0)+48>>2]|0;if(v){w=c[A+(y*52|0)+8>>2]|0;u=0;do{t=c[w+(u*24|0)>>2]|0;q=+h[w+(u*24|0)+8>>3];if(u){X=u+-1|0;q=q-+h[w+(X*24|0)+8>>3];t=t-(c[w+(X*24|0)>>2]|0)|0}do if(t){q=q/+(t|0);p=qo))break;o=q}while(0);u=u+1|0}while(u>>>0>>0)}X=_((c[A+(y*52|0)+24>>2]|0)-(c[A+(y*52|0)+16>>2]|0)|0,(c[A+(y*52|0)+20>>2]|0)-(c[A+(y*52|0)+12>>2]|0)|0)|0;l=X+l|0;m=X+m|0;y=y+1|0}while(y>>>0>>0);c[O>>2]=l;c[I>>2]=m}B=B+1|0}while(B>>>0>>0)}D=D+1|0}while(D>>>0>>0)}H=H+1|0}while(H>>>0>>0)}J=+(1<>2]|0)+-1.0;n=n+ +(m|0)*(J*J);R=R+1|0}while(R>>>0>>0);J=o}I=(k|0)!=0;if(I){R=c[d+36>>2]|0;Q=c[k+88>>2]|0;c[Q+(R*592|0)+552>>2]=l;h[Q+(R*592|0)+560>>3]=+h[T+32>>3];l=U+8|0;X=Pc(c[l>>2]<<3)|0;c[Q+(R*592|0)>>2]=X;if(!X){X=0;i=W;return X|0}}else l=U+8|0;if(!(c[l>>2]|0)){X=1;i=W;return X|0}z=T+32|0;A=S+93|0;B=d+36|0;C=k+88|0;D=T+40|0;E=d+24|0;F=d+8|0;G=d+16|0;H=0;while(1){o=+g[U+20+(H<<2)>>2];if(o!=0.0){w=~~+Z(+o)>>>0;w=w>>>0>>0?w:j}else w=j;s=+g[U+5184+(H<<2)>>2];x=+h[z>>3]-n/+P(10.0,+(s/10.0));X=a[A>>0]|0;if(!((X&1)!=0&o>0.0)?!((X&4)!=0&s>0.0):0)o=p;else{y=dh(c[E>>2]|0,S)|0;if(!y){l=0;m=57;break}v=H+1|0;m=V+(H+-1<<3)|0;t=T+40+(H<<3)|0;if(!H){r=J;m=0;s=p;q=0.0;do{o=(s+r)*.5;Vf(d,0,o,0);do if(a[A>>0]&4){if(((b[S>>1]|0)+-3&65535)>=4){X=+h[D>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0))s=o;else{X=+h[D>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0)==0;r=X?r:o;s=X?o:s;q=X?q:o}while(0);m=m+1|0}while((m|0)!=128)}else{r=J;u=0;s=p;q=0.0;do{o=(s+r)*.5;Vf(d,H,o,0);do if(a[A>>0]&4){if(((b[S>>1]|0)+-3&65535)>=4){X=+h[m>>3]+ +h[t>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0))s=o;else{X=+h[m>>3]+ +h[t>>3]>2]|0,T,v,e,f,w,k,c[F>>2]|0,c[d>>2]|0,c[G>>2]|0,0)|0)==0;r=X?r:o;s=X?o:s;q=X?q:o}while(0);u=u+1|0}while((u|0)!=128)}eh(y);o=q==0.0?o:q}if(I)h[(c[(c[C>>2]|0)+((c[B>>2]|0)*592|0)>>2]|0)+(H<<3)>>3]=o;Vf(d,H,o,1);if(!H)o=+h[D>>3];else o=+h[V+(H+-1<<3)>>3]+ +h[T+40+(H<<3)>>3];h[V+(H<<3)>>3]=o;H=H+1|0;if(H>>>0>=(c[l>>2]|0)>>>0){l=1;m=57;break}}if((m|0)==57){i=W;return l|0}return 0}function Xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a+24>>2]=b;c[a+28>>2]=d;f=Qc(1,848)|0;e=a+20|0;c[c[e>>2]>>2]=f;if(!f){a=0;return a|0}f=b+16|0;g=Qc(c[f>>2]|0,52)|0;b=c[c[e>>2]>>2]|0;c[b+20>>2]=g;if(!g){g=0;return g|0}c[b+16>>2]=c[f>>2];c[a>>2]=c[d+84>>2];g=1;return g|0}function Yf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;if(!b)return;s=b+20|0;d=c[s>>2]|0;do if(d){r=(a[b+40>>0]&1)==0?3:4;e=c[d>>2]|0;if(e){o=e+20|0;k=e+16|0;if(c[k>>2]|0){m=0;n=c[o>>2]|0;while(1){l=n+24|0;d=c[l>>2]|0;if(d){i=c[n+28>>2]|0;j=(i>>>0)/136|0;if(i>>>0>135){i=0;while(1){h=d+48|0;e=c[h>>2]|0;if(e){f=c[d+52>>2]|0;g=(f>>>0)/40|0;if(f>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=d+84|0;e=c[h>>2]|0;if(e){t=c[d+88>>2]|0;g=(t>>>0)/40|0;if(t>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=d+120|0;e=c[h>>2]|0;if(e){t=c[d+124>>2]|0;g=(t>>>0)/40|0;if(t>>>0>39){f=0;while(1){t=e+32|0;mg(c[t>>2]|0);c[t>>2]=0;t=e+36|0;mg(c[t>>2]|0);c[t>>2]=0;Ta[r&7](e);f=f+1|0;if(f>>>0>=g>>>0)break;else e=e+40|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}i=i+1|0;if(i>>>0>=j>>>0)break;else d=d+136|0}d=c[l>>2]|0}Uc(d);c[l>>2]=0}if((c[n+36>>2]|0)!=0?(p=n+32|0,q=c[p>>2]|0,(q|0)!=0):0){Sc(q);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0}m=m+1|0;if(m>>>0>=(c[k>>2]|0)>>>0)break;else n=n+52|0}}Uc(c[o>>2]|0);c[o>>2]=0;Uc(c[c[s>>2]>>2]|0);d=c[s>>2]|0;c[d>>2]=0;if(!d)break}Uc(d);c[s>>2]=0}while(0);Uc(b);return}function Zf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+32|0;f=c[e>>2]|0;b=a+40|0;d=c[b>>2]|0;if(f){g=a+44|0;if(d>>>0<=(c[g>>2]|0)>>>0){a=1;return a|0}if(c[a+36>>2]|0){Sc(f);f=Rc(c[b>>2]|0)|0;c[e>>2]=f;if(!f){c[g>>2]=0;c[b>>2]=0;c[a+36>>2]=0;a=0;return a|0}else{c[g>>2]=c[b>>2];c[a+36>>2]=1;a=1;return a|0}}}g=Rc(d)|0;c[e>>2]=g;if(!g){a=0;return a|0}c[a+44>>2]=c[b>>2];c[a+36>>2]=1;a=1;return a|0}function _f(a,b,c){a=a|0;b=b|0;c=c|0;return ig(a,b,1,1.0,52,c)|0}function $f(a,b,c){a=a|0;b=b|0;c=c|0;return ig(a,b,0,.5,56,c)|0}function ag(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+24>>2]|0;f=c[d+16>>2]|0;if(!f){g=0;return g|0}g=0;b=0;e=c[d+24>>2]|0;d=c[(c[c[a+20>>2]>>2]|0)+20>>2]|0;while(1){i=c[e+24>>2]|0;i=((i&7|0)!=0&1)+(i>>>3)|0;h=c[d+24>>2]|0;a=(c[d+20>>2]|0)+-1|0;b=(_(_((i|0)==3?4:i,(c[h+(a*136|0)+8>>2]|0)-(c[h+(a*136|0)>>2]|0)|0)|0,(c[h+(a*136|0)+12>>2]|0)-(c[h+(a*136|0)+4>>2]|0)|0)|0)+b|0;g=g+1|0;if(g>>>0>=f>>>0)break;else{e=e+52|0;d=d+52|0}}return b|0}function bg(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+16|0;w=y;if(!(c[b+8>>2]|0)){c[b+36>>2]=d;u=b+28|0;j=c[(c[u>>2]|0)+76>>2]|0;x=b+32|0;c[x>>2]=j+(d*5640|0);v=(h|0)==0;t=b+20|0;if(!v){k=c[(c[c[t>>2]>>2]|0)+20>>2]|0;o=c[j+(d*5640|0)+5584>>2]|0;p=k+16|0;if(!(c[p>>2]|0)){k=h+88|0;j=0}else{l=c[k+24>>2]|0;k=h+88|0;m=c[k>>2]|0;n=0;j=0;do{s=l+(n*136|0)+16|0;c[m+(d*592|0)+20+(n<<2)>>2]=c[s>>2];r=l+(n*136|0)+20|0;c[m+(d*592|0)+152+(n<<2)>>2]=c[r>>2];j=(_(c[r>>2]|0,c[s>>2]|0)|0)+j|0;c[m+(d*592|0)+284+(n<<2)>>2]=c[o+812+(n<<2)>>2];c[m+(d*592|0)+416+(n<<2)>>2]=c[o+944+(n<<2)>>2];n=n+1|0}while(n>>>0<(c[p>>2]|0)>>>0)}s=Qc(_(_(c[h+52>>2]|0,j)|0,c[h+56>>2]|0)|0,32)|0;c[(c[k>>2]|0)+(d*592|0)+548>>2]=s;if(!s){b=0;i=y;return b|0}}j=c[c[t>>2]>>2]|0;s=j+16|0;if(!(c[s>>2]|0)){n=c[x>>2]|0;l=0;k=c[j+20>>2]|0}else{n=c[x>>2]|0;k=c[j+20>>2]|0;d=0;q=c[n+5584>>2]|0;r=k;while(1){o=c[r+32>>2]|0;p=_((c[r+12>>2]|0)-(c[r+4>>2]|0)|0,(c[r+8>>2]|0)-(c[r>>2]|0)|0)|0;j=(p|0)==0;if((c[q+20>>2]|0)==1){if(!j){l=q+1076|0;m=0;j=o;while(1){c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);m=m+1|0;if((m|0)==(p|0))break;else j=j+4|0}}}else if(!j){l=q+1076|0;m=0;j=o;while(1){c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0)<<11;m=m+1|0;if((m|0)==(p|0))break;else j=j+4|0}}d=d+1|0;l=c[s>>2]|0;if(d>>>0>=l>>>0)break;else{q=q+1080|0;r=r+52|0}}}o=_((c[k+12>>2]|0)-(c[k+4>>2]|0)|0,(c[k+8>>2]|0)-(c[k>>2]|0)|0)|0;a:do switch(c[n+16>>2]|0){case 0:break;case 2:{if(c[n+5608>>2]|0){m=Pc(l<<2)|0;if(!m){b=0;i=y;return b|0}j=c[s>>2]|0;if(!j)j=0;else{l=0;while(1){c[m+(l<<2)>>2]=c[k+32>>2];l=l+1|0;if((l|0)==(j|0))break;else k=k+52|0}}s=(Gf(c[(c[x>>2]|0)+5608>>2]|0,o,m,j,c[(c[(c[b+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Uc(m);if(s){b=0;i=y;return b|0}}break}default:{l=c[k+32>>2]|0;m=c[k+84>>2]|0;j=c[k+136>>2]|0;if(!(c[(c[n+5584>>2]|0)+20>>2]|0)){Ef(l,m,j,o);break a}else{Cf(l,m,j,o);break a}}}while(0);j=c[c[t>>2]>>2]|0;k=j+16|0;b:do if(c[k>>2]|0){l=0;m=c[(c[x>>2]|0)+5584>>2]|0;j=c[j+20>>2]|0;c:while(1){switch(c[m+20>>2]|0){case 1:{if(!(Fg(j)|0)){j=0;k=54;break c}break}case 0:{if(!(Jg(j)|0)){j=0;k=54;break c}break}default:{}}l=l+1|0;if(l>>>0>=(c[k>>2]|0)>>>0)break b;else{m=m+1080|0;j=j+52|0}}if((k|0)==54){i=y;return j|0}}while(0);j=c[x>>2]|0;k=Wg(1)|0;if(!k){b=0;i=y;return b|0}do if((c[j+16>>2]|0)==1)if(!(c[(c[j+5584>>2]|0)+20>>2]|0)){l=Bf()|0;m=3;break}else{l=Af()|0;m=3;break}else{l=c[j+5600>>2]|0;m=c[(c[b+24>>2]|0)+16>>2]|0}while(0);t=Zg(k,c[c[t>>2]>>2]|0,j,l,m)|0;Xg(k);if(!t){b=0;i=y;return b|0}j=c[u>>2]|0;c[w>>2]=0;if(!v)c[h+12>>2]=0;if(!(a[j+93>>0]&5)){if(c[(c[x>>2]|0)+8>>2]|0){j=0;do{Uf(b,j,1);j=j+1|0}while(j>>>0<(c[(c[x>>2]|0)+8>>2]|0)>>>0)}}else if(!(Wf(b,e,w,g,h)|0)){b=0;i=y;return b|0}}if(h)c[h+12>>2]=1;j=dh(c[b+24>>2]|0,c[b+28>>2]|0)|0;if(!j)j=1;else{b=bh(j,c[b+36>>2]|0,c[c[b+20>>2]>>2]|0,c[(c[b+32>>2]|0)+8>>2]|0,e,f,g,h,c[b+4>>2]|0,c[b>>2]|0,c[b+16>>2]|0,1)|0;eh(j);j=(b|0)==0}b=j&1^1;i=y;return b|0}function cg(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+16|0;m=u+8|0;l=u;k=u+12|0;j=a+36|0;c[j>>2]=e;t=c[a+28>>2]|0;p=a+32|0;c[p>>2]=(c[t+76>>2]|0)+(e*5640|0);c[k>>2]=0;o=a+24|0;e=dh(c[o>>2]|0,t)|0;if(!e){t=0;i=u;return t|0}n=a+20|0;t=ch(e,c[j>>2]|0,c[c[n>>2]>>2]|0,b,k,d,f,h)|0;eh(e);if(!t){t=0;i=u;return t|0}e=c[c[n>>2]>>2]|0;a=c[(c[p>>2]|0)+5584>>2]|0;j=c[e+20>>2]|0;d=Wg(0)|0;if(!d){t=0;i=u;return t|0}k=e+16|0;a:do if(c[k>>2]|0){f=0;e=j;while(1){if(!(Yg(d,e,a)|0))break;f=f+1|0;if(f>>>0>=(c[k>>2]|0)>>>0)break a;else{a=a+1080|0;e=e+52|0}}Xg(d);t=0;i=u;return t|0}while(0);Xg(d);e=c[c[n>>2]>>2]|0;j=e+16|0;do if(c[j>>2]|0){k=0;f=c[(c[o>>2]|0)+24>>2]|0;d=c[(c[p>>2]|0)+5584>>2]|0;a=c[e+20>>2]|0;while(1){e=(c[f+36>>2]|0)+1|0;if((c[d+20>>2]|0)==1){if(!(Gg(a,e)|0)){e=0;a=49;break}}else if(!(Ng(a,e)|0)){e=0;a=49;break}k=k+1|0;if(k>>>0>=(c[j>>2]|0)>>>0){a=14;break}else{f=f+52|0;d=d+1080|0;a=a+52|0}}if((a|0)==14){e=c[c[n>>2]>>2]|0;break}else if((a|0)==49){i=u;return e|0}}while(0);k=c[p>>2]|0;a=c[e+20>>2]|0;j=c[k+16>>2]|0;do if(j){b=_((c[a+12>>2]|0)-(c[a+4>>2]|0)|0,(c[a+8>>2]|0)-(c[a>>2]|0)|0)|0;d=e+16|0;e=c[d>>2]|0;if(e>>>0<=2){c[m>>2]=e;Ub(h,1,19703,m)|0;break}if((_((c[a+64>>2]|0)-(c[a+56>>2]|0)|0,(c[a+60>>2]|0)-(c[a+52>>2]|0)|0)|0)>=(b|0)?(_((c[a+116>>2]|0)-(c[a+108>>2]|0)|0,(c[a+112>>2]|0)-(c[a+104>>2]|0)|0)|0)>=(b|0):0){if((j|0)!=2){e=c[a+32>>2]|0;if((c[(c[k+5584>>2]|0)+20>>2]|0)==1){Df(e,c[a+84>>2]|0,c[a+136>>2]|0,b);break}else{Ff(e,c[a+84>>2]|0,c[a+136>>2]|0,b);break}}f=k+5604|0;if(!(c[f>>2]|0))break;k=Pc(e<<2)|0;if(!k){t=0;i=u;return t|0}e=c[d>>2]|0;if(!e)e=0;else{j=0;while(1){c[k+(j<<2)>>2]=c[a+32>>2];j=j+1|0;if((j|0)==(e|0))break;else a=a+52|0}}t=(Hf(c[f>>2]|0,b,k,e,c[(c[(c[o>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Uc(k);if(t)e=0;else break;i=u;return e|0}Ub(h,1,19642,l)|0;t=0;i=u;return t|0}while(0);e=c[c[n>>2]>>2]|0;s=e+16|0;if(!(c[s>>2]|0)){t=1;i=u;return t|0}t=0;r=c[(c[o>>2]|0)+24>>2]|0;q=c[(c[p>>2]|0)+5584>>2]|0;p=c[e+20>>2]|0;while(1){o=c[p+24>>2]|0;h=c[r+36>>2]|0;j=c[o+(h*136|0)+8>>2]|0;k=c[o+(h*136|0)>>2]|0;n=j-k|0;f=c[o+(h*136|0)+12>>2]|0;h=c[o+(h*136|0)+4>>2]|0;o=(c[p+8>>2]|0)-(c[p>>2]|0)-n|0;e=c[r+24>>2]|0;if(!(c[r+32>>2]|0)){e=1<>2]|0;a=(f|0)==(h|0);if((c[q+20>>2]|0)==1){if(!a){d=(j|0)==(k|0);b=q+1076|0;k=f-h|0;f=0;while(1){if(!d){a=0;j=e;while(1){h=(c[b>>2]|0)+(c[j>>2]|0)|0;c[j>>2]=(h|0)<(m|0)?m:(h|0)>(l|0)?l:h;a=a+1|0;if((a|0)==(n|0))break;else j=j+4|0}e=e+(n<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else e=e+(o<<2)|0}}}else if(!a){d=(j|0)==(k|0);b=q+1076|0;k=f-h|0;f=0;while(1){if(!d){a=0;j=e;while(1){h=Hh(+g[j>>2])|0;h=(c[b>>2]|0)+h|0;c[j>>2]=(h|0)<(m|0)?m:(h|0)>(l|0)?l:h;a=a+1|0;if((a|0)==(n|0))break;else j=j+4|0}e=e+(n<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else e=e+(o<<2)|0}}t=t+1|0;if(t>>>0>=(c[s>>2]|0)>>>0){e=1;break}else{r=r+52|0;q=q+1080|0;p=p+52|0}}i=u;return e|0}function dg(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d+24|0;m=c[q>>2]|0;h=c[m+16>>2]|0;l=(h|0)==0;if(l){q=1;return q|0}i=0;g=0;j=c[m+24>>2]|0;k=c[(c[c[d+20>>2]>>2]|0)+20>>2]|0;while(1){n=c[j+24>>2]|0;n=((n&7|0)!=0&1)+(n>>>3)|0;o=c[k+24>>2]|0;p=(c[k+20>>2]|0)+-1|0;g=(_(_((n|0)==3?4:n,(c[o+(p*136|0)+8>>2]|0)-(c[o+(p*136|0)>>2]|0)|0)|0,(c[o+(p*136|0)+12>>2]|0)-(c[o+(p*136|0)+4>>2]|0)|0)|0)+g|0;i=i+1|0;if((i|0)==(h|0))break;else{j=j+52|0;k=k+52|0}}g=g>>>0>f>>>0;if(g|l){q=g&1^1;return q|0}p=0;o=c[m+24>>2]|0;n=c[(c[c[d+20>>2]>>2]|0)+20>>2]|0;while(1){l=c[o+24>>2]|0;d=c[n+24>>2]|0;f=c[o+36>>2]|0;i=c[d+(f*136|0)+8>>2]|0;j=c[d+(f*136|0)>>2]|0;m=i-j|0;k=c[d+(f*136|0)+12>>2]|0;f=c[d+(f*136|0)+4>>2]|0;d=(c[n+8>>2]|0)-(c[n>>2]|0)-m|0;l=((l&7|0)!=0&1)+(l>>>3)|0;a:do switch(((l|0)==3?4:l)|0){case 1:{g=c[n+32>>2]|0;h=(k|0)==(f|0);if(!(c[o+32>>2]|0)){if(h)break a;l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+m|0;i=0;h=g;while(1){a[e>>0]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+1|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}else{if(h)break a;l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+m|0;i=0;h=g;while(1){a[e>>0]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+1|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}case 2:{g=c[n+32>>2]|0;h=(k|0)==(f|0);if(!(c[o+32>>2]|0)){if(!h){l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+(m<<1)|0;i=0;h=g;while(1){b[e>>1]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+2|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}}else if(!h){l=(i|0)==(j|0);k=k-f|0;f=0;while(1){if(!l){j=e+(m<<1)|0;i=0;h=g;while(1){b[e>>1]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+2|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}case 4:{if((k|0)!=(f|0)){l=(i|0)==(j|0);k=k-f|0;f=0;g=c[n+32>>2]|0;while(1){if(!l){j=e+(m<<2)|0;i=0;h=g;while(1){c[e>>2]=c[h>>2];i=i+1|0;if((i|0)==(m|0))break;else{e=e+4|0;h=h+4|0}}e=j;g=g+(m<<2)|0}f=f+1|0;if((f|0)==(k|0))break;else g=g+(d<<2)|0}}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(c[(c[q>>2]|0)+16>>2]|0)>>>0){e=1;break}else{o=o+52|0;n=n+52|0}}return e|0}function eg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=c[a+24>>2]|0;f=c[d+16>>2]|0;if(!f){g=0;return g|0}g=0;b=0;e=c[d+24>>2]|0;d=c[(c[c[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=c[e+24>>2]|0;a=((a&7|0)!=0&1)+(a>>>3)|0;b=(_(_((c[d+12>>2]|0)-(c[d+4>>2]|0)|0,(c[d+8>>2]|0)-(c[d>>2]|0)|0)|0,(a|0)==3?4:a)|0)+b|0;g=g+1|0;if(g>>>0>=f>>>0)break;else{e=e+52|0;d=d+52|0}}return b|0}function fg(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=c[f+24>>2]|0;q=o+16|0;j=c[q>>2]|0;n=(j|0)==0;if(n)i=0;else{k=0;i=0;l=c[o+24>>2]|0;m=c[(c[c[f+20>>2]>>2]|0)+20>>2]|0;while(1){p=c[l+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;i=(_(_((c[m+12>>2]|0)-(c[m+4>>2]|0)|0,(c[m+8>>2]|0)-(c[m>>2]|0)|0)|0,(p|0)==3?4:p)|0)+i|0;k=k+1|0;if((k|0)==(j|0))break;else{l=l+52|0;m=m+52|0}}}i=(i|0)!=(h|0);if(i|n){q=i&1^1;return q|0}p=0;n=c[o+24>>2]|0;h=c[(c[c[f+20>>2]>>2]|0)+20>>2]|0;while(1){f=c[n+24>>2]|0;i=(c[h+8>>2]|0)-(c[h>>2]|0)|0;j=(c[h+12>>2]|0)-(c[h+4>>2]|0)|0;m=_(j,i)|0;f=((f&7|0)!=0&1)+(f>>>3)|0;a:do switch(((f|0)==3?4:f)|0){case 1:{j=c[h+32>>2]|0;i=(m|0)==0;if(!(c[n+32>>2]|0)){if(i)break a;else{k=0;i=j;j=g}while(1){c[i>>2]=d[j>>0];k=k+1|0;if((k|0)==(m|0))break;else{i=i+4|0;j=j+1|0}}g=g+m|0;break a}else{if(i)break a;else{k=0;i=j;j=g}while(1){c[i>>2]=a[j>>0];k=k+1|0;if((k|0)==(m|0))break;else{i=i+4|0;j=j+1|0}}g=g+m|0;break a}}case 2:{l=c[h+32>>2]|0;k=(m|0)==0;if(!(c[n+32>>2]|0)){if(!k){k=g+(_(j<<1,i)|0)|0;j=0;i=l;while(1){c[i>>2]=e[g>>1];j=j+1|0;if((j|0)==(m|0))break;else{i=i+4|0;g=g+2|0}}g=k}}else if(!k){k=g+(_(j<<1,i)|0)|0;j=0;i=l;while(1){c[i>>2]=b[g>>1];j=j+1|0;if((j|0)==(m|0))break;else{i=i+4|0;g=g+2|0}}g=k}break}case 4:{if(m){k=g+(_(j<<2,i)|0)|0;i=0;j=c[h+32>>2]|0;while(1){c[j>>2]=c[g>>2];i=i+1|0;if((i|0)==(m|0))break;else{j=j+4|0;g=g+4|0}}g=k}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(c[q>>2]|0)>>>0){g=1;break}else{n=n+52|0;h=h+52|0}}return g|0}function gg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+24|0;b=c[g>>2]|0;if(!b)return;f=c[a+28>>2]|0;e=(f>>>0)/52|0;if(f>>>0>51){f=0;while(1){a=c[b>>2]|0;if(a){Uc(a+-1|0);c[b>>2]=0}a=b+4|0;d=c[a>>2]|0;if(d){Uc(d);c[a>>2]=0}a=b+8|0;d=c[a>>2]|0;if(d){Uc(d);c[a>>2]=0}f=f+1|0;if(f>>>0>=e>>>0)break;else b=b+52|0}b=c[g>>2]|0}Uc(b);c[g>>2]=0;return}function hg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+24|0;b=c[g>>2]|0;if(!b)return;f=c[a+28>>2]|0;e=(f>>>0)/56|0;if(f>>>0>55){f=0;while(1){a=c[b>>2]|0;if(a){Uc(a);c[b>>2]=0}d=b+4|0;a=c[d>>2]|0;if(a){Uc(a);c[d>>2]=0}f=f+1|0;if(f>>>0>=e>>>0)break;else b=b+56|0}b=c[g>>2]|0}Uc(b);c[g>>2]=0;return}function ig(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|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,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=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,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.0;Sa=i;i=i+80|0;La=Sa+64|0;Ka=Sa+56|0;Na=Sa+48|0;Pa=Sa+40|0;Oa=Sa+32|0;Qa=Sa+24|0;Ma=Sa+16|0;Ja=Sa+8|0;k=c[b+28>>2]|0;Ia=c[c[b+20>>2]>>2]|0;p=c[(c[k+76>>2]|0)+(d*5640|0)+5584>>2]|0;q=c[Ia+20>>2]|0;n=c[b+24>>2]|0;o=c[n+24>>2]|0;Fa=c[k+24>>2]|0;m=c[k+12>>2]|0;Ha=(_(m,(d>>>0)%(Fa>>>0)|0)|0)+(c[k+4>>2]|0)|0;l=c[n>>2]|0;l=Ha>>>0>l>>>0?Ha:l;c[Ia>>2]=l;Ha=Si(m|0,0,Ha|0,0)|0;Ha=Ha|0-C;m=c[n+8>>2]|0;m=Ha>>>0>>0?Ha:m;Ha=Ia+8|0;c[Ha>>2]=m;Ga=c[k+16>>2]|0;Fa=(_(Ga,(d>>>0)/(Fa>>>0)|0)|0)+(c[k+8>>2]|0)|0;d=c[n+4>>2]|0;d=Fa>>>0>d>>>0?Fa:d;Ea=Ia+4|0;c[Ea>>2]=d;Fa=Si(Ga|0,0,Fa|0,0)|0;Fa=Fa|0-C;n=c[n+12>>2]|0;n=Fa>>>0>>0?Fa:n;Fa=Ia+12|0;c[Fa>>2]=n;if(!(c[p+4>>2]|0)){Ub(j,1,19777,Sa)|0;Ra=0;i=Sa;return Ra|0}Ga=Ia+16|0;if(!(c[Ga>>2]|0)){Ra=1;i=Sa;return Ra|0}Da=k+80|0;Ca=b+40|0;Ba=(e|0)==0;k=d;Aa=0;a:while(1){c[o+36>>2]=0;va=c[o>>2]|0;d=(l+-1+va|0)/(va|0)|0;c[q>>2]=d;wa=c[o+4>>2]|0;k=(k+-1+wa|0)/(wa|0)|0;za=q+4|0;c[za>>2]=k;va=(m+-1+va|0)/(va|0)|0;ya=q+8|0;c[ya>>2]=va;wa=(n+-1+wa|0)/(wa|0)|0;xa=q+12|0;c[xa>>2]=wa;d=va-d|0;k=wa-k|0;if((4294967295/(d>>>0)|0)>>>0>>0){Ra=6;break}d=_(k,d)|0;if(d>>>0>1073741823){Ra=8;break}m=d<<2;va=c[p+4>>2]|0;wa=q+16|0;c[wa>>2]=va;b=c[Da>>2]|0;c[q+20>>2]=va>>>0>>0?1:va-b|0;b=q+40|0;c[b>>2]=m;do if(a[Ca>>0]&1){e=q+32|0;l=c[e>>2]|0;if(l){k=q+44|0;if(m>>>0<=(c[k>>2]|0)>>>0)break;d=q+36|0;if(c[d>>2]|0){Sc(l);va=Rc(c[b>>2]|0)|0;c[e>>2]=va;if(!va){Ra=16;break a}c[k>>2]=c[b>>2];c[d>>2]=1;break}}va=Rc(m)|0;c[e>>2]=va;if(!va)break a;c[q+44>>2]=c[b>>2];c[q+36>>2]=1}while(0);e=(c[wa>>2]|0)*136|0;k=q+24|0;b=c[k>>2]|0;if(b){d=q+28|0;if(e>>>0>(c[d>>2]|0)>>>0){b=Tc(b,e)|0;if(!b){Ra=24;break}c[k>>2]=b;va=c[d>>2]|0;Qi(b+va|0,0,e-va|0)|0;c[d>>2]=e}}else{d=Pc(e)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break}c[q+28>>2]=e;Qi(d|0,0,e|0)|0}d=c[wa>>2]|0;va=(c[p+20>>2]|0)==0?7:8;if(d){ra=p+8|0;sa=p+12|0;ta=o+24|0;ua=p+804|0;qa=c[k>>2]|0;k=p+28|0;b=0;while(1){oa=d;pa=d+-1|0;la=c[q>>2]|0;ma=Ri(1,0,pa|0)|0;ma=Si(ma|0,C|0,-1,-1)|0;na=C;la=Si(ma|0,na|0,la|0,((la|0)<0)<<31>>31|0)|0;la=Pi(la|0,C|0,pa|0)|0;c[qa>>2]=la;e=c[za>>2]|0;e=Si(ma|0,na|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,pa|0)|0;c[qa+4>>2]=e;d=c[ya>>2]|0;d=Si(ma|0,na|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,pa|0)|0;c[qa+8>>2]=d;l=c[xa>>2]|0;l=Si(ma|0,na|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pi(l|0,C|0,pa|0)|0;c[qa+12>>2]=l;r=c[p+812+(b<<2)>>2]|0;n=c[p+944+(b<<2)>>2]|0;s=la>>r<>n<>31|0)|0;m=Pi(m|0,C|0,n|0)|0;if((la|0)==(d|0))d=0;else{la=Ri(1,0,r|0)|0;la=Si(la|0,C|0,-1,-1)|0;d=Si(la|0,C|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,r|0)|0;d=(d<>r}la=qa+16|0;c[la>>2]=d;ia=(e|0)==(l|0)?0:(m<>n;c[qa+20>>2]=ia;ia=_(ia,d)|0;ja=ia*40|0;ka=(b|0)==0;if(ka)d=1;else{s=Si(s|0,((s|0)<0)<<31>>31|0,1,0)|0;s=Ti(s|0,C|0,1)|0;t=Si(t|0,((t|0)<0)<<31>>31|0,1,0)|0;t=Ti(t|0,C|0,1)|0;d=3;n=n+-1|0;r=r+-1|0}ha=qa+24|0;c[ha>>2]=d;S=c[ra>>2]|0;S=S>>>0>>0?S:r;T=c[sa>>2]|0;T=T>>>0>>0?T:n;U=(ia|0)!=0;V=(ia|0)==0;W=1<>2]|0;d=Si(ma|0,na|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,pa|0)|0;k=c[za>>2]|0;k=Si(ma|0,na|0,k|0,((k|0)<0)<<31>>31|0)|0;k=Pi(k|0,C|0,pa|0)|0;e=c[ya>>2]|0;e=Si(ma|0,na|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,pa|0)|0;m=c[xa>>2]|0;m=Si(ma|0,na|0,m|0,((m|0)<0)<<31>>31|0)|0;m=Pi(m|0,C|0,pa|0)|0;l=0}else{l=fa+1|0;d=c[q>>2]|0;O=Ri(l&1|0,0,pa|0)|0;O=Oi(da|0,ea|0,O|0,C|0)|0;m=C;d=Si(O|0,m|0,d|0,((d|0)<0)<<31>>31|0)|0;d=Pi(d|0,C|0,oa|0)|0;k=c[za>>2]|0;P=Ri(l>>>1|0,0,pa|0)|0;P=Oi(da|0,ea|0,P|0,C|0)|0;Q=C;k=Si(P|0,Q|0,k|0,((k|0)<0)<<31>>31|0)|0;k=Pi(k|0,C|0,oa|0)|0;e=c[ya>>2]|0;e=Si(O|0,m|0,e|0,((e|0)<0)<<31>>31|0)|0;e=Pi(e|0,C|0,oa|0)|0;m=c[xa>>2]|0;m=Si(P|0,Q|0,m|0,((m|0)<0)<<31>>31|0)|0;m=Pi(m|0,C|0,oa|0)|0}c[ga+16>>2]=l;c[ga>>2]=d;Q=ga+4|0;c[Q>>2]=k;P=ga+8|0;c[P>>2]=e;O=ga+12|0;c[O>>2]=m;k=Wa[va&15](l)|0;Ta=+(c[R+4>>2]|0)*.00048828125+1.0;g[ga+32>>2]=+Gh(1.0,(c[ta>>2]|0)+k-(c[R>>2]|0)|0)*Ta*f;c[ga+28>>2]=(c[R>>2]|0)+-1+(c[ua>>2]|0);k=ga+20|0;e=c[k>>2]|0;if(!(U&(e|0)==0)){d=ga+24|0;if((c[d>>2]|0)>>>0>>0){e=Tc(e,ja)|0;if(!e){Ra=41;break a}c[k>>2]=e;N=c[d>>2]|0;Qi(e+N|0,0,ja-N|0)|0;c[d>>2]=ja}}else{d=Pc(ja)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break a}Qi(d|0,0,ja|0)|0;c[ga+24>>2]=ja}if(!V){M=c[k>>2]|0;N=0;while(1){F=c[la>>2]|0;J=(((N>>>0)%(F>>>0)|0)<>>0)/(F>>>0)|0)<>2]|0;I=(J|0)>(I|0)?J:I;c[M>>2]=I;J=c[Q>>2]|0;J=(F|0)>(J|0)?F:J;F=M+4|0;c[F>>2]=J;L=c[P>>2]|0;L=(G|0)<(L|0)?G:L;G=M+8|0;c[G>>2]=L;l=c[O>>2]|0;l=(H|0)<(l|0)?H:l;H=M+12|0;c[H>>2]=l;I=I>>S<>T<>31|0)|0;L=Pi(L|0,C|0,S|0)|0;l=Si($|0,aa|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pi(l|0,C|0,T|0)|0;L=(L<>S;K=M+16|0;c[K>>2]=L;l=(l<>T;u=M+20|0;c[u>>2]=l;L=_(l,L)|0;l=_(L,h)|0;k=M+24|0;e=c[k>>2]|0;do if((e|0)==0&(L|0)!=0){d=Pc(l)|0;c[k>>2]=d;if(!d){d=0;Ra=87;break a}Qi(d|0,0,l|0)|0;c[M+28>>2]=l}else{d=M+28|0;if(l>>>0<=(c[d>>2]|0)>>>0)break;e=Tc(e,l)|0;if(!e){Ra=50;break a}c[k>>2]=e;E=c[d>>2]|0;Qi(e+E|0,0,l-E|0)|0;c[d>>2]=l}while(0);m=M+32|0;d=c[m>>2]|0;e=c[K>>2]|0;l=c[u>>2]|0;if(!d)d=jg(e,l,j)|0;else d=lg(d,e,l,j)|0;c[m>>2]=d;if(!d)Ub(j,2,19990,Ka)|0;m=M+36|0;e=c[m>>2]|0;l=c[K>>2]|0;d=c[u>>2]|0;if(!e)d=jg(l,d,j)|0;else d=lg(e,l,d,j)|0;c[m>>2]=d;if(!d)Ub(j,2,20012,La)|0;if(L){E=0;do{A=c[K>>2]|0;z=(((E>>>0)%(A>>>0)|0)<>>0)/(A>>>0)|0)<>2]|0;e=d+(E*56|0)|0;l=c[e>>2]|0;if(!l){y=Pc(8192)|0;c[e>>2]=y;if(!y){d=0;Ra=87;break a}c[d+(E*56|0)+32>>2]=8192;y=Qc(10,32)|0;c[d+(E*56|0)+4>>2]=y;if(!y){d=0;Ra=87;break a}c[d+(E*56|0)+52>>2]=10}else{m=d+(E*56|0)+32|0;u=c[m>>2]|0;v=d+(E*56|0)+4|0;w=c[v>>2]|0;x=e;y=x+52|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0));c[e>>2]=l;c[m>>2]=u;c[v>>2]=w}y=c[M>>2]|0;c[d+(E*56|0)+8>>2]=(z|0)>(y|0)?z:y;z=c[F>>2]|0;c[d+(E*56|0)+12>>2]=(A|0)>(z|0)?A:z;A=c[G>>2]|0;c[d+(E*56|0)+16>>2]=(B|0)<(A|0)?B:A;B=c[H>>2]|0;c[d+(E*56|0)+20>>2]=(D|0)<(B|0)?D:B}else{e=c[k>>2]|0;d=e+(E*52|0)+4|0;if((c[d>>2]|0)==0?(y=Qc(100,24)|0,c[d>>2]=y,(y|0)==0):0){d=0;Ra=87;break a}d=e+(E*52|0)+8|0;if((c[d>>2]|0)==0?(y=Qc(100,24)|0,c[d>>2]=y,(y|0)==0):0){d=0;Ra=87;break a}m=c[M>>2]|0;m=(z|0)>(m|0)?z:m;c[e+(E*52|0)+12>>2]=m;d=c[F>>2]|0;A=(A|0)>(d|0)?A:d;c[e+(E*52|0)+16>>2]=A;d=c[G>>2]|0;d=(B|0)<(d|0)?B:d;c[e+(E*52|0)+20>>2]=d;B=c[H>>2]|0;D=(D|0)<(B|0)?D:B;c[e+(E*52|0)+24>>2]=D;m=_(D-A|0,d-m<<2)|0;d=e+(E*52|0)+36|0;if(m>>>0<=(c[d>>2]|0)>>>0)break;l=e+(E*52|0)|0;e=c[l>>2]|0;if(e)Uc(e+-1|0);e=Pc(m|1)|0;c[l>>2]=e;if(!e){Ra=74;break a}c[d>>2]=m;a[e>>0]=0;c[l>>2]=(c[l>>2]|0)+1}while(0);E=E+1|0}while(E>>>0>>0)}N=N+1|0;if(N>>>0>=ia>>>0)break;else M=M+40|0}}k=R+8|0;fa=fa+1|0;if(fa>>>0>=(c[ha>>2]|0)>>>0)break;else{ga=ga+36|0;R=k}}b=b+1|0;if(b>>>0<(c[wa>>2]|0)>>>0){d=pa;qa=qa+136|0}else break}}d=Aa+1|0;if(d>>>0>=(c[Ga>>2]|0)>>>0){d=1;Ra=87;break}l=c[Ia>>2]|0;k=c[Ea>>2]|0;m=c[Ha>>2]|0;n=c[Fa>>2]|0;Aa=d;o=o+52|0;p=p+1080|0;q=q+52|0}if((Ra|0)==6){Ub(j,1,19816,Ja)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==8){Ub(j,1,19816,Ma)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==16){c[k>>2]=0;c[b>>2]=0;c[d>>2]=0}else if((Ra|0)==24){Ub(j,1,19849,Oa)|0;Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==41){Ub(j,1,19889,Pa)|0;Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==50){Uc(c[k>>2]|0);c[k>>2]=0;c[d>>2]=0;Ub(j,1,19932,Na)|0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==74){c[d>>2]=0;Ra=0;i=Sa;return Ra|0}else if((Ra|0)==87){i=Sa;return d|0}Ub(j,1,19816,Qa)|0;Ra=0;i=Sa;return Ra|0}function jg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=i;i=i+288|0;l=v+16|0;j=v+8|0;t=v+152|0;u=v+24|0;e=Qc(1,20)|0;if(!e){Ub(d,1,20034,v)|0;u=0;i=v;return u|0}c[e>>2]=a;m=e+4|0;c[m>>2]=b;c[t>>2]=a;c[u>>2]=b;k=e+8|0;c[k>>2]=0;f=0;h=0;while(1){s=_(b,a)|0;a=(a+1|0)/2|0;g=h+1|0;c[t+(g<<2)>>2]=a;b=(b+1|0)/2|0;c[u+(g<<2)>>2]=b;f=f+s|0;if(s>>>0<=1)break;else h=g}c[k>>2]=f;if(!f){Uc(e);Ub(d,2,20072,j)|0;u=0;i=v;return u|0}f=Qc(f,16)|0;c[e+12>>2]=f;if(!f){Ub(d,1,20122,l)|0;Uc(e);u=0;i=v;return u|0}s=c[k>>2]|0;c[e+16>>2]=s<<4;b=f+((_(c[m>>2]|0,c[e>>2]|0)|0)<<4)|0;if(!h)b=f;else{r=0;g=b;a=b;b=f;do{p=c[u+(r<<2)>>2]|0;a:do if((p|0)>0){q=c[t+(r<<2)>>2]|0;if((q|0)<=0){k=p+-1|0;d=0;while(1){o=(d&1|0)!=0|(d|0)==(k|0);j=o?g:a;a=o?g:a+(q<<4)|0;d=d+1|0;if((d|0)>=(p|0)){g=j;break a}else g=j}}o=((q+2+((q|0)<2?~q:-3)|0)>>>1)+1|0;m=p+-1|0;n=0;do{d=q;l=g;while(1){c[b>>2]=l;j=b+16|0;k=d;d=d+-2|0;if((d|0)>-1){c[j>>2]=l;b=b+32|0}else b=j;if((k|0)<=2)break;else l=l+16|0}l=g+(o<<4)|0;d=(n&1|0)!=0|(n|0)==(m|0);g=d?l:a;a=d?l:a+(q<<4)|0;n=n+1|0}while((n|0)<(p|0))}while(0);r=r+1|0}while((r|0)!=(h|0))}c[b>>2]=0;if(!s){u=e;i=v;return u|0}else b=0;while(1){c[f+4>>2]=999;c[f+8>>2]=0;c[f+12>>2]=0;b=b+1|0;if((b|0)==(s|0))break;else f=f+16|0}i=v;return e|0}function kg(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a+8>>2]|0;if(!b)return;d=0;a=c[a+12>>2]|0;while(1){c[a+4>>2]=999;c[a+8>>2]=0;c[a+12>>2]=0;d=d+1|0;if(d>>>0>=b>>>0)break;else a=a+16|0}return}\nfunction bb(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function cb(){return i|0}function db(a){a=a|0;i=a}function eb(a,b){a=a|0;b=b|0;i=a;j=b}function fb(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function gb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function hb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function ib(a){a=a|0;C=a}function jb(){return C|0}function kb(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+8272|0;k=o+16|0;m=o+12|0;j=o;c[m>>2]=0;if((c[a>>2]|0)==1375686655)n=gc(0)|0;else n=gc(2)|0;bc(n,1,0)|0;cc(n,2,0)|0;dc(n,3,0)|0;hc(k);c[j>>2]=a;c[j+4>>2]=a;c[j+8>>2]=b;l=ec(j,1)|0;if(!(ic(n,k)|0)){mi(4476)|0;Fb(l);zc(n);g=1;i=o;return g|0}if(!(jc(l,n,m)|0)){mi(4528)|0;Fb(l);zc(n);Zb(c[m>>2]|0);g=1;i=o;return g|0}if(!(oc(n,l,c[m>>2]|0,c[k+8228>>2]|0)|0)){mi(4578)|0;zc(n);Fb(l);Zb(c[m>>2]|0);g=1;i=o;return g|0}j=c[m>>2]|0;c[f>>2]=c[j+8>>2];c[g>>2]=c[j+12>>2];a=c[j+16>>2]|0;c[h>>2]=a;a=_(_(a<<2,c[f>>2]|0)|0,c[g>>2]|0)|0;c[e>>2]=a;e=Fi(a)|0;c[d>>2]=e;switch(c[h>>2]|0){case 1:{Ui(e|0,c[(c[j+24>>2]|0)+44>>2]|0,a|0)|0;break}case 3:{if((_(c[g>>2]|0,c[f>>2]|0)|0)>0){b=c[j+24>>2]|0;j=c[b+44>>2]|0;a=c[b+96>>2]|0;b=c[b+148>>2]|0;k=0;do{h=k*3|0;c[e+(h<<2)>>2]=c[j+(k<<2)>>2];c[e+(h+1<<2)>>2]=c[a+(k<<2)>>2];c[e+(h+2<<2)>>2]=c[b+(k<<2)>>2];k=k+1|0}while((k|0)<(_(c[g>>2]|0,c[f>>2]|0)|0))}break}default:{}}Fb(l);zc(n);Zb(c[m>>2]|0);g=0;i=o;return g|0}function lb(){return fc()|0}function mb(a,b){a=a|0;b=b|0;return}function nb(a,b){a=a|0;b=b|0;return}function ob(a,b){a=a|0;b=b|0;var d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;li(4625,d)|0;i=b;return}function pb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+16|0;g=h;c[g>>2]=d;if(!e){i=h;return}d=b;f=0;b=g+(e+-1)|0;while(1){a[d>>0]=a[b>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else{d=d+1|0;b=b+-1|0}}i=h;return}function qb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;c[d>>2]=0;if(!e)return;f=0;d=d+(e+-1)|0;while(1){a[d>>0]=a[b>>0]|0;f=f+1|0;if((f|0)==(e|0))break;else{b=b+1|0;d=d+-1|0}}return}function rb(b,d){b=b|0;d=+d;var e=0,f=0,g=0,j=0,l=0;e=i;i=i+16|0;j=e;h[j>>3]=d;j=j+8|0;h[k>>3]=d;f=c[k>>2]|0;g=c[k+4>>2]|0;l=Ti(f|0,g|0,56)|0;a[b>>0]=l;l=Ti(f|0,g|0,48)|0;a[b+1>>0]=l;l=Ti(f|0,g|0,40)|0;a[b+2>>0]=l;a[b+3>>0]=g;a[b+4>>0]=a[j+-5>>0]|0;a[b+5>>0]=a[j+-6>>0]|0;g=Ti(f|0,g|0,8)|0;a[b+6>>0]=g;a[b+7>>0]=f;i=e;return}function sb(b,c){b=b|0;c=c|0;var d=0;d=c+8|0;a[d+-1>>0]=a[b>>0]|0;a[d+-2>>0]=a[b+1>>0]|0;a[d+-3>>0]=a[b+2>>0]|0;a[d+-4>>0]=a[b+3>>0]|0;a[d+-5>>0]=a[b+4>>0]|0;a[d+-6>>0]=a[b+5>>0]|0;a[d+-7>>0]=a[b+6>>0]|0;a[c>>0]=a[b+7>>0]|0;return}function tb(b,d){b=b|0;d=+d;var e=0;e=(g[k>>2]=d,c[k>>2]|0);a[b>>0]=e>>>24;a[b+1>>0]=e>>>16;a[b+2>>0]=e>>>8;a[b+3>>0]=e;return}function ub(b,c){b=b|0;c=c|0;var d=0;d=c+4|0;a[d+-1>>0]=a[b>>0]|0;a[d+-2>>0]=a[b+1>>0]|0;a[d+-3>>0]=a[b+2>>0]|0;a[c>>0]=a[b+3>>0]|0;return}function vb(a,b){a=a|0;b=b|0;var d=0,e=0;e=Qc(1,72)|0;if(!e){b=0;return b|0}c[e+64>>2]=a;a=Pc(a)|0;c[e+32>>2]=a;if(!a){Uc(e);b=0;return b|0}c[e+36>>2]=a;a=e+68|0;d=c[a>>2]|0;if(!b){c[a>>2]=d|1;c[e+40>>2]=31;c[e+44>>2]=32}else{c[a>>2]=d|2;c[e+40>>2]=29;c[e+44>>2]=30}c[e+16>>2]=4;c[e+20>>2]=5;c[e+24>>2]=6;c[e+28>>2]=7;b=e;return b|0}function wb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;m=n;f=a+48|0;g=c[f>>2]|0;if(g>>>0>=b>>>0){m=a+36|0;c[m>>2]=(c[m>>2]|0)+b;c[f>>2]=g-b;m=a+56|0;a=m;a=Si(c[a>>2]|0,c[a+4>>2]|0,b|0,d|0)|0;c[m>>2]=a;c[m+4>>2]=C;m=d;a=b;C=m;i=n;return a|0}l=a+68|0;if(c[l>>2]&4){m=a+36|0;c[m>>2]=(c[m>>2]|0)+g;c[f>>2]=0;a=a+56|0;m=a;m=Si(c[m>>2]|0,c[m+4>>2]|0,g|0,0)|0;c[a>>2]=m;c[a+4>>2]=C;a=(g|0)!=0;m=a?0:-1;a=a?g:-1;C=m;i=n;return a|0}if(!g){g=0;f=0}else{c[a+36>>2]=c[a+32>>2];b=Oi(b|0,d|0,g|0,0)|0;c[f>>2]=0;f=0;d=C}a:do if((d|0)>0|(d|0)==0&b>>>0>0){k=a+24|0;while(1){h=Ra[c[k>>2]&63](b,d,c[a>>2]|0)|0;j=C;if((h|0)==-1&(j|0)==-1)break;b=Oi(b|0,d|0,h|0,j|0)|0;d=C;g=Si(h|0,j|0,g|0,f|0)|0;f=C;if(!((d|0)>0|(d|0)==0&b>>>0>0))break a}Ub(e,4,4636,m)|0;c[l>>2]=c[l>>2]|4;a=a+56|0;m=a;m=Si(c[m>>2]|0,c[m+4>>2]|0,g|0,f|0)|0;c[a>>2]=m;c[a+4>>2]=C;a=(g|0)!=0|(f|0)!=0;m=a?f:-1;a=a?g:-1;C=m;i=n;return a|0}while(0);m=a+56|0;a=m;a=Si(c[a>>2]|0,c[a+4>>2]|0,g|0,f|0)|0;c[m>>2]=a;c[m+4>>2]=C;m=f;a=g;C=m;i=n;return a|0}function xb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;c[a+36>>2]=c[a+32>>2];c[a+48>>2]=0;g=(Ra[c[a+28>>2]&63](b,d,c[a>>2]|0)|0)==0;e=a+68|0;f=c[e>>2]|0;if(g){c[e>>2]=f|4;g=0;return g|0}else{c[e>>2]=f&-5;g=a+56|0;c[g>>2]=b;c[g+4>>2]=d;g=1;return g|0}return 0}function yb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+16|0;q=r+8|0;m=r;p=a+68|0;if(c[p>>2]&8){q=-1;a=-1;C=q;i=r;return a|0}k=a+32|0;f=c[k>>2]|0;o=a+36|0;c[o>>2]=f;l=a+48|0;g=c[l>>2]|0;do if(g){j=a+20|0;while(1){h=Ra[c[j>>2]&63](f,g,c[a>>2]|0)|0;if((h|0)==-1)break;f=(c[o>>2]|0)+h|0;c[o>>2]=f;s=c[l>>2]|0;g=s-h|0;c[l>>2]=g;if((s|0)==(h|0)){n=6;break}}if((n|0)==6){f=c[k>>2]|0;break}c[p>>2]=c[p>>2]|8;Ub(e,4,4662,m)|0;c[p>>2]=c[p>>2]|8;c[l>>2]=0;a=-1;s=-1;C=a;i=r;return s|0}while(0);c[o>>2]=f;a:do if((d|0)>0|(d|0)==0&b>>>0>0){k=a+24|0;g=0;f=0;while(1){h=Ra[c[k>>2]&63](b,d,c[a>>2]|0)|0;j=C;if((h|0)==-1&(j|0)==-1)break;b=Oi(b|0,d|0,h|0,j|0)|0;d=C;g=Si(h|0,j|0,g|0,f|0)|0;f=C;if(!((d|0)>0|(d|0)==0&b>>>0>0))break a}Ub(e,4,4688,q)|0;c[p>>2]=c[p>>2]|8;s=a+56|0;a=s;a=Si(c[a>>2]|0,c[a+4>>2]|0,g|0,f|0)|0;c[s>>2]=a;c[s+4>>2]=C;s=(g|0)!=0|(f|0)!=0;a=s?f:-1;s=s?g:-1;C=a;i=r;return s|0}else{g=0;f=0}while(0);a=a+56|0;s=a;s=Si(c[s>>2]|0,c[s+4>>2]|0,g|0,f|0)|0;c[a>>2]=s;c[a+4>>2]=C;a=f;s=g;C=a;i=r;return s|0}function zb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+16|0;k=p;m=a+32|0;f=c[m>>2]|0;n=a+36|0;c[n>>2]=f;o=a+48|0;g=c[o>>2]|0;do if(!g)g=a;else{j=a+20|0;while(1){h=Ra[c[j>>2]&63](f,g,c[a>>2]|0)|0;if((h|0)==-1)break;f=(c[n>>2]|0)+h|0;c[n>>2]=f;q=c[o>>2]|0;g=q-h|0;c[o>>2]=g;if((q|0)==(h|0)){l=6;break}}if((l|0)==6){g=a;f=c[m>>2]|0;break}q=a+68|0;c[q>>2]=c[q>>2]|8;Ub(e,4,4662,k)|0;c[q>>2]=c[q>>2]|8;q=0;i=p;return q|0}while(0);c[n>>2]=f;c[o>>2]=0;if(!(Ra[c[a+28>>2]&63](b,d,c[g>>2]|0)|0)){q=a+68|0;c[q>>2]=c[q>>2]|8;q=0;i=p;return q|0}else{q=a+56|0;c[q>>2]=b;c[q+4>>2]=d;q=1;i=p;return q|0}return 0}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Bb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Cb(a,b,c){a=a|0;b=b|0;c=c|0;C=-1;return -1}function Db(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Eb(a){a=a|0;var b=0,d=0,e=0;e=Qc(1,72)|0;if(!e){a=0;return a|0}c[e+64>>2]=1048576;b=Pc(1048576)|0;c[e+32>>2]=b;if(!b){Uc(e);a=0;return a|0}c[e+36>>2]=b;b=e+68|0;d=c[b>>2]|0;if(!a){c[b>>2]=d|1;c[e+40>>2]=31;c[e+44>>2]=32}else{c[b>>2]=d|2;c[e+40>>2]=29;c[e+44>>2]=30}c[e+16>>2]=4;c[e+20>>2]=5;c[e+24>>2]=6;c[e+28>>2]=7;a=e;return a|0}function Fb(a){a=a|0;var b=0;if(!a)return;b=c[a+4>>2]|0;if(b)Ta[b&7](c[a>>2]|0);b=a+32|0;Uc(c[b>>2]|0);c[b>>2]=0;Uc(a);return}function Gb(a,b){a=a|0;b=b|0;if(!a)return;if(!(c[a+68>>2]&2))return;c[a+16>>2]=b;return}function Hb(a,b){a=a|0;b=b|0;if(!a)return;c[a+28>>2]=b;return}function Ib(a,b){a=a|0;b=b|0;if(!a)return;if(!(c[a+68>>2]&1))return;c[a+20>>2]=b;return}function Jb(a,b){a=a|0;b=b|0;if(!a)return;c[a+24>>2]=b;return}function Kb(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;c[a>>2]=b;c[a+4>>2]=d;return}function Lb(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;a=a+8|0;c[a>>2]=b;c[a+4>>2]=d;return}function Mb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;s=w+8|0;r=w;v=a+48|0;f=c[v>>2]|0;if(f>>>0>=d>>>0){u=a+36|0;Ui(b|0,c[u>>2]|0,d|0)|0;c[u>>2]=(c[u>>2]|0)+d;c[v>>2]=(c[v>>2]|0)-d;v=a+56|0;u=v;u=Si(c[u>>2]|0,c[u+4>>2]|0,d|0,0)|0;c[v>>2]=u;c[v+4>>2]=C;v=d;i=w;return v|0}t=a+68|0;if(c[t>>2]&4){u=a+36|0;Ui(b|0,c[u>>2]|0,f|0)|0;e=c[v>>2]|0;c[u>>2]=(c[u>>2]|0)+e;u=a+56|0;t=u;e=Si(c[t>>2]|0,c[t+4>>2]|0,e|0,0)|0;c[u>>2]=e;c[u+4>>2]=C;c[v>>2]=0;v=(f|0)!=0?f:-1;i=w;return v|0}if(!f){o=a+32|0;g=c[o>>2]|0;p=a+36|0;c[p>>2]=g;q=p;u=a+56|0;f=0}else{p=a+36|0;Ui(b|0,c[p>>2]|0,f|0)|0;o=a+32|0;g=c[o>>2]|0;c[p>>2]=g;q=c[v>>2]|0;u=a+56|0;m=u;m=Si(c[m>>2]|0,c[m+4>>2]|0,q|0,0)|0;n=u;c[n>>2]=m;c[n+4>>2]=C;c[v>>2]=0;d=d-q|0;b=b+q|0;q=p}m=a+64|0;n=a+16|0;l=b;h=g;while(1){b=c[m>>2]|0;g=c[n>>2]|0;if(d>>>0>>0){g=Ra[g&63](h,b,c[a>>2]|0)|0;c[v>>2]=g;if((g|0)==-1){g=11;break}if(g>>>0>=d>>>0){b=l;g=14;break}Ui(l|0,c[q>>2]|0,g|0)|0;h=c[o>>2]|0;c[p>>2]=h;b=c[v>>2]|0;j=u;j=Si(c[j>>2]|0,c[j+4>>2]|0,b|0,0)|0;k=C;f=g+f|0}else{b=Ra[g&63](l,d,c[a>>2]|0)|0;c[v>>2]=b;if((b|0)==-1){g=16;break}f=b+f|0;if(b>>>0>=d>>>0){g=20;break}h=c[o>>2]|0;c[p>>2]=h;j=u;j=Si(c[j>>2]|0,c[j+4>>2]|0,b|0,0)|0;k=C}g=u;c[g>>2]=j;c[g+4>>2]=k;c[v>>2]=0;d=d-b|0;l=l+b|0}if((g|0)==11){Ub(e,4,4636,r)|0;c[v>>2]=0;c[t>>2]=c[t>>2]|4;v=(f|0)!=0?f:-1;i=w;return v|0}else if((g|0)==14){Ui(b|0,c[q>>2]|0,d|0)|0;c[q>>2]=(c[q>>2]|0)+d;c[v>>2]=(c[v>>2]|0)-d;e=u;e=Si(c[e>>2]|0,c[e+4>>2]|0,d|0,0)|0;v=u;c[v>>2]=e;c[v+4>>2]=C;v=f+d|0;i=w;return v|0}else if((g|0)==16){Ub(e,4,4636,s)|0;c[v>>2]=0;c[t>>2]=c[t>>2]|4;v=(f|0)!=0?f:-1;i=w;return v|0}else if((g|0)==20){e=u;e=Si(c[e>>2]|0,c[e+4>>2]|0,b|0,0)|0;c[u>>2]=e;c[u+4>>2]=C;c[p>>2]=c[o>>2];c[v>>2]=0;v=f;i=w;return v|0}return 0}function Nb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=i;i=i+16|0;r=u;n=a+68|0;if(c[n>>2]&8){t=-1;i=u;return t|0}q=a+64|0;f=c[q>>2]|0;t=a+48|0;k=c[t>>2]|0;g=f-k|0;do if(g>>>0>>0){o=a+32|0;h=a+36|0;p=a+20|0;j=a+56|0;l=f;m=g;f=0;a:while(1){if((l|0)==(k|0))g=c[o>>2]|0;else{Ui(c[h>>2]|0,b|0,m|0)|0;g=c[o>>2]|0;c[h>>2]=g;k=(c[t>>2]|0)+m|0;c[t>>2]=k;v=j;v=Si(c[v>>2]|0,c[v+4>>2]|0,m|0,0)|0;l=j;c[l>>2]=v;c[l+4>>2]=C;d=d-m|0;b=b+m|0;f=m+f|0}c[h>>2]=g;if(!k)k=0;else{do{l=Ra[c[p>>2]&63](g,k,c[a>>2]|0)|0;if((l|0)==-1)break a;g=(c[h>>2]|0)+l|0;c[h>>2]=g;v=c[t>>2]|0;k=v-l|0;c[t>>2]=k}while((v|0)!=(l|0));g=c[o>>2]|0}c[h>>2]=g;l=c[q>>2]|0;m=l-k|0;if(d>>>0<=m>>>0){s=5;break}}if((s|0)==5)break;c[n>>2]=c[n>>2]|8;Ub(e,4,4662,r)|0;v=-1;i=u;return v|0}else{g=a+36|0;j=a+56|0;h=g;g=c[g>>2]|0;f=0}while(0);Ui(g|0,b|0,d|0)|0;c[h>>2]=(c[h>>2]|0)+d;c[t>>2]=(c[t>>2]|0)+d;t=j;t=Si(c[t>>2]|0,c[t+4>>2]|0,d|0,0)|0;v=j;c[v>>2]=t;c[v+4>>2]=C;v=f+d|0;i=u;return v|0}function Ob(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+16|0;k=n;g=a+32|0;d=c[g>>2]|0;m=a+36|0;c[m>>2]=d;h=a+48|0;e=c[h>>2]|0;do if(e){j=a+20|0;while(1){f=Ra[c[j>>2]&63](d,e,c[a>>2]|0)|0;if((f|0)==-1)break;d=(c[m>>2]|0)+f|0;c[m>>2]=d;o=c[h>>2]|0;e=o-f|0;c[h>>2]=e;if((o|0)==(f|0)){l=6;break}}if((l|0)==6){d=c[g>>2]|0;break}o=a+68|0;c[o>>2]=c[o>>2]|8;Ub(b,4,4662,k)|0;o=0;i=n;return o|0}while(0);c[m>>2]=d;o=1;i=n;return o|0}function Pb(a){a=a|0;a=a+56|0;C=c[a+4>>2]|0;return c[a>>2]|0}function Qb(a){a=a|0;var b=0,d=0;d=a+8|0;b=c[d>>2]|0;d=c[d+4>>2]|0;if((b|0)==0&(d|0)==0){d=0;a=0;C=d;return a|0}a=a+56|0;a=Oi(b|0,d|0,c[a>>2]|0,c[a+4>>2]|0)|0;d=C;C=d;return a|0}function Rb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=Za[c[a+40>>2]&63](a,b,d,e)|0;return a|0}function Sb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return Za[c[a+44>>2]&63](a,b,d,e)|0}function Tb(a){a=a|0;return (c[a+28>>2]|0)!=7|0}function Ub(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+528|0;g=j;h=j+16|0;a:do if(a){switch(b|0){case 1:{b=a;f=a+12|0;break}case 2:{b=a+4|0;f=a+16|0;break}case 4:{b=a+8|0;f=a+20|0;break}default:{b=0;break a}}a=c[b>>2]|0;b=c[f>>2]|0;if(b)if(!d)b=1;else{Qi(h|0,0,512)|0;c[g>>2]=e;pi(h,512,d,g)|0;Ua[b&7](h,a);b=1}else b=0}else b=0;while(0);i=j;return b|0}function Vb(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=4;c[a+20>>2]=4;c[a+16>>2]=4;return}function Wb(a,b){a=a|0;b=b|0;return}function Xb(){return Qc(1,36)|0}function Yb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=Qc(1,36)|0;if(!e){i=e;return i|0}c[e+20>>2]=d;h=e+16|0;c[h>>2]=a;d=Qc(1,a*52|0)|0;i=e+24|0;c[i>>2]=d;if(!d){d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);i=0;return i|0}if(!a){i=e;return i|0}f=0;while(1){c[d+(f*52|0)>>2]=c[b+(f*36|0)>>2];c[d+(f*52|0)+4>>2]=c[b+(f*36|0)+4>>2];j=c[b+(f*36|0)+8>>2]|0;c[d+(f*52|0)+8>>2]=j;k=c[b+(f*36|0)+12>>2]|0;c[d+(f*52|0)+12>>2]=k;c[d+(f*52|0)+16>>2]=c[b+(f*36|0)+16>>2];c[d+(f*52|0)+20>>2]=c[b+(f*36|0)+20>>2];c[d+(f*52|0)+24>>2]=c[b+(f*36|0)+24>>2];c[d+(f*52|0)+28>>2]=c[b+(f*36|0)+28>>2];c[d+(f*52|0)+32>>2]=c[b+(f*36|0)+32>>2];j=Qc(_(k,j)|0,4)|0;c[d+(f*52|0)+44>>2]=j;f=f+1|0;if(!j)break;if(f>>>0>=a>>>0){g=22;break}d=c[i>>2]|0}if((g|0)==22)return e|0;d=c[i>>2]|0;if(d){f=c[h>>2]|0;if(f){b=0;while(1){d=c[d+(b*52|0)+44>>2]|0;if(d){Uc(d);f=c[h>>2]|0}b=b+1|0;if(b>>>0>=f>>>0)break;d=c[i>>2]|0}d=c[i>>2]|0}Uc(d)}d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);k=0;return k|0}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)return;f=a+24|0;b=c[f>>2]|0;if(b){g=a+16|0;d=c[g>>2]|0;if(d){e=0;while(1){b=c[b+(e*52|0)+44>>2]|0;if(b){Uc(b);d=c[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;b=c[f>>2]|0}b=c[f>>2]|0}Uc(b)}b=c[a+28>>2]|0;if(b)Uc(b);Uc(a);return}function _b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=c[b+4>>2]|0;e=c[a>>2]|0;g=c[b+8>>2]|0;h=c[a+4>>2]|0;f=c[b+12>>2]|0;l=(_((c[b+24>>2]|0)+-1|0,f)|0)+d|0;i=c[b+16>>2]|0;j=(_((c[b+28>>2]|0)+-1|0,i)|0)+g|0;b=Si(l|0,0,f|0,0)|0;b=b|0-C;f=c[a+8>>2]|0;i=Si(j|0,0,i|0,0)|0;i=i|0-C;j=c[a+12>>2]|0;l=c[a+16>>2]|0;if(!l)return;k=(d>>>0>e>>>0?d:e)+-1|0;g=(g>>>0>h>>>0?g:h)+-1|0;f=(b>>>0>>0?b:f)+-1|0;d=(i>>>0>>0?i:j)+-1|0;e=0;b=c[a+24>>2]|0;while(1){h=c[b>>2]|0;j=((k+h|0)>>>0)/(h>>>0)|0;o=c[b+4>>2]|0;a=((g+o|0)>>>0)/(o>>>0)|0;i=c[b+40>>2]|0;n=Ri(1,0,i|0)|0;m=C;h=Si((((f+h|0)>>>0)/(h>>>0)|0)-j|0,0,-1,-1)|0;h=Si(h|0,C|0,n|0,m|0)|0;h=Ti(h|0,C|0,i|0)|0;o=Si((((d+o|0)>>>0)/(o>>>0)|0)-a|0,0,-1,-1)|0;m=Si(o|0,C|0,n|0,m|0)|0;i=Ti(m|0,C|0,i|0)|0;c[b+8>>2]=h;c[b+12>>2]=i;c[b+16>>2]=j;c[b+20>>2]=a;e=e+1|0;if(e>>>0>=l>>>0)break;else b=b+52|0}return}function $b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];j=b+24|0;e=c[j>>2]|0;i=b+16|0;if(!e)d=j;else{d=c[i>>2]|0;if(!d)d=j;else{f=0;while(1){e=c[e+(f*52|0)+44>>2]|0;if(e){Uc(e);d=c[i>>2]|0}f=f+1|0;if(f>>>0>=d>>>0)break;e=c[j>>2]|0}d=j;e=c[j>>2]|0}Uc(e);c[j>>2]=0}e=c[a+16>>2]|0;c[i>>2]=e;e=Pc(e*52|0)|0;c[d>>2]=e;if(!e){c[j>>2]=0;c[i>>2]=0;return}if(c[i>>2]|0){h=a+24|0;g=0;do{d=e+(g*52|0)|0;e=(c[h>>2]|0)+(g*52|0)|0;f=d+52|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));e=c[j>>2]|0;c[e+(g*52|0)+44>>2]=0;g=g+1|0}while(g>>>0<(c[i>>2]|0)>>>0)}c[b+20>>2]=c[a+20>>2];f=a+32|0;d=c[f>>2]|0;g=b+32|0;c[g>>2]=d;if(!d){c[b+28>>2]=0;return}e=Pc(d)|0;d=b+28|0;c[d>>2]=e;if(!e){c[d>>2]=0;c[g>>2]=0;return}else{Ui(e|0,c[a+28>>2]|0,c[f>>2]|0)|0;return}}function ac(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Qc(1,36)|0;if(!e){a=e;return a|0}c[e+20>>2]=d;c[e+16>>2]=a;d=Qc(a,52)|0;c[e+24>>2]=d;if(!d){d=c[e+28>>2]|0;if(d)Uc(d);Uc(e);a=0;return a|0}else{if(!a){a=e;return a|0}else f=0;do{c[d+(f*52|0)>>2]=c[b+(f*36|0)>>2];c[d+(f*52|0)+4>>2]=c[b+(f*36|0)+4>>2];c[d+(f*52|0)+8>>2]=c[b+(f*36|0)+8>>2];c[d+(f*52|0)+12>>2]=c[b+(f*36|0)+12>>2];c[d+(f*52|0)+16>>2]=c[b+(f*36|0)+16>>2];c[d+(f*52|0)+20>>2]=c[b+(f*36|0)+20>>2];c[d+(f*52|0)+24>>2]=c[b+(f*36|0)+24>>2];c[d+(f*52|0)+32>>2]=c[b+(f*36|0)+32>>2];c[d+(f*52|0)+44>>2]=0;f=f+1|0}while((f|0)!=(a|0));return e|0}return 0}function bc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+64>>2]=b;c[a+52>>2]=d;d=1;return d|0}function cc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+60>>2]=b;c[a+48>>2]=d;d=1;return d|0}function dc(a,b,d){a=a|0;b=b|0;d=d|0;if(!a){d=0;return d|0}c[a+56>>2]=b;c[a+44>>2]=d;d=1;return d|0}function ec(a,b){a=a|0;b=b|0;var d=0;if(!a){a=0;return a|0}d=Eb(b)|0;if(!d){a=0;return a|0}Kb(d,a,0);Lb(d,c[a+8>>2]|0,0);if(!b)Ib(d,9);else Gb(d,8);Jb(d,1);Hb(d,10);a=d;return a|0}function fc(){return 4703}function gc(a){a=a|0;var b=0;b=Qc(1,84)|0;if(!b){a=0;return a|0}c[b+68>>2]=1;switch(a|0){case 0:{c[b+72>>2]=13;c[b+76>>2]=2;c[b+80>>2]=3;c[b+4>>2]=33;c[b+16>>2]=11;c[b>>2]=34;c[b+20>>2]=1;c[b+24>>2]=5;c[b+8>>2]=1;c[b+12>>2]=1;c[b+28>>2]=1;c[b+32>>2]=1;c[b+36>>2]=12;a=fd()|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}case 2:{c[b+72>>2]=14;c[b+76>>2]=4;c[b+80>>2]=5;c[b+4>>2]=35;c[b+16>>2]=13;c[b>>2]=36;c[b+8>>2]=2;c[b+12>>2]=2;c[b+20>>2]=2;c[b+24>>2]=6;c[b+28>>2]=2;c[b+32>>2]=2;c[b+36>>2]=14;a=Ye(1)|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}default:{Uc(b);a=0;return a|0}}Vb(b+44|0);a=b;return a|0}function hc(a){a=a|0;if(!a)return;Qi(a|0,0,8248)|0;c[a+8200>>2]=-1;c[a+8204>>2]=-1;c[a+8248>>2]=0;return}function ic(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if(!((a|0)!=0&(b|0)!=0)){b=0;i=d;return b|0}if(!(c[a+68>>2]|0)){Ub(a+44|0,1,4709,d)|0;b=0;i=d;return b|0}else{Ua[c[a+24>>2]&7](c[a+40>>2]|0,b);b=1;i=d;return b|0}return 0}function jc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;if(!((a|0)!=0&(b|0)!=0)){a=0;i=e;return a|0}if(!(c[b+68>>2]|0)){Ub(b+44|0,1,4790,e)|0;a=0;i=e;return a|0}else{a=Za[c[b>>2]&63](a,c[b+40>>2]|0,d,b+44|0)|0;i=e;return a|0}return 0}function kc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Za[c[a+4>>2]&63](c[a+40>>2]|0,b,d,a+44|0)|0;return b|0}function lc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!a){e=0;return e|0}if(!(c[a+68>>2]|0)){e=0;return e|0}e=Qa[c[a+28>>2]&3](c[a+40>>2]|0,b,d,e,f,g,a+44|0)|0;return e|0}function mc(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|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;if(!((d|0)!=0&((a|0)!=0&(b|0)!=0&(e|0)!=0))){i=0;return i|0}if(!(c[a+68>>2]|0)){i=0;return i|0}i=Ya[c[a+8>>2]&3](c[a+40>>2]|0,d,e,f,g,h,i,j,k,b,a+44|0)|0;return i|0}function nc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!((a|0)!=0&(d|0)!=0&(f|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Va[c[a+12>>2]&7](c[a+40>>2]|0,b,d,e,f,a+44|0)|0;return b|0}function oc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(!((a|0)!=0&(b|0)!=0)){e=0;return e|0}if(!(c[a+68>>2]|0)){e=0;return e|0}e=$a[c[a+32>>2]&3](c[a+40>>2]|0,b,d,a+44|0,e)|0;return e|0}function pc(a,b){a=a|0;b=b|0;if(!a){b=0;return b|0}b=Ra[c[a+36>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function qc(a){a=a|0;var b=0;b=Qc(1,84)|0;if(!b){a=0;return a|0}c[b+68>>2]=0;switch(a|0){case 0:{c[b+4>>2]=15;c[b+12>>2]=16;c[b>>2]=37;c[b+8>>2]=3;c[b+16>>2]=1;c[b+20>>2]=38;a=Xc()|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}case 2:{c[b+4>>2]=17;c[b+12>>2]=18;c[b>>2]=39;c[b+8>>2]=4;c[b+16>>2]=2;c[b+20>>2]=40;a=Ye(0)|0;c[b+40>>2]=a;if(!a){Uc(b);a=0;return a|0}break}default:{Uc(b);a=0;return a|0}}Vb(b+44|0);a=b;return a|0}function rc(b){b=b|0;if(!b)return;Qi(b|0,0,18708)|0;c[b+5592>>2]=6;c[b+18684>>2]=0;c[b+5596>>2]=64;c[b+5600>>2]=64;c[b+44>>2]=0;c[b+5612>>2]=-1;c[b+18188>>2]=1;c[b+18192>>2]=1;a[b+18688>>0]=0;c[b+18196>>2]=-1;c[b+18200>>2]=-1;g[b+4792>>2]=0.0;c[b+4788>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+18692>>2]=0;return}function sc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(b|0)!=0&(d|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Za[c[a+20>>2]&63](c[a+40>>2]|0,b,d,a+44|0)|0;return b|0}function tc(a,b,d){a=a|0;b=b|0;d=d|0;if(!((a|0)!=0&(d|0)!=0)){d=0;return d|0}if(c[a+68>>2]|0){d=0;return d|0}d=Za[c[a>>2]&63](c[a+40>>2]|0,d,b,a+44|0)|0;return d|0}function uc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Ra[c[a+4>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function vc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Ra[c[a+12>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function wc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(c[a+68>>2]|0)){b=0;return b|0}b=Ra[c[a+16>>2]&63](c[a+40>>2]|0,b,a+44|0)|0;return b|0}function xc(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=h<<2;i=_(k,h)|0;j=d+18704|0;h=e[j>>1]|0;b[j>>1]=(h&32768|0)==0?-32512:(h|256)&65535;c[d+5608>>2]=1;a[d+18690>>0]=2;j=Pc(i+k|0)|0;h=d+18696|0;c[h>>2]=j;if(!j){g=0;return g|0}Ui(j|0,f|0,i|0)|0;Ui((c[h>>2]|0)+i|0,g|0,k|0)|0;g=1;return g|0}function yc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!((d|0)!=0&((a|0)!=0&(f|0)!=0))){b=0;return b|0}if(c[a+68>>2]|0){b=0;return b|0}b=Va[c[a+8>>2]&7](c[a+40>>2]|0,b,d,e,f,a+44|0)|0;return b|0}function zc(a){a=a|0;var b=0,d=0;if(!a)return;b=a+40|0;d=c[b>>2]|0;if(!(c[a+68>>2]|0))Ta[c[a+16>>2]&7](d);else Ta[c[a+20>>2]&7](d);c[b>>2]=0;Uc(a);return}function Ac(a,b,d){a=a|0;b=b|0;d=d|0;if(!a)return;Xa[c[a+72>>2]&15](c[a+40>>2]|0,b,d);return}function Bc(a){a=a|0;if(!a){a=0;return a|0}a=Wa[c[a+76>>2]&15](c[a+40>>2]|0)|0;return a|0}function Cc(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a>>2]|0;d=c[b+48>>2]|0;if(d){Uc(d);b=c[a>>2]|0}Uc(b);c[a>>2]=0;return}function Dc(a){a=a|0;if(!a){a=0;return a|0}a=Wa[c[a+80>>2]&15](c[a+40>>2]|0)|0;return a|0}function Ec(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;bd(b);c[a>>2]=0;return}function Fc(a,b){a=a|0;b=b|0;return Gc(a,1048576,b)|0}function Gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!a){b=0;return b|0}d=_h(a,(c|0)==0?4869:4872)|0;if(!d){b=0;return b|0}a=vb(b,c)|0;if(!a){Yh(d)|0;b=0;return b|0}else{Kb(a,d,6);fi(d,0,2)|0;b=ii(d)|0;fi(d,0,0)|0;Lb(a,b,((b|0)<0)<<31>>31);Gb(a,19);Ib(a,20);Jb(a,21);Hb(a,22);b=a;return b|0}return 0}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[d>>2]|0)+(c[d+8>>2]|0)|0;d=d+4|0;e=c[d>>2]|0;f=g-e|0;if((g|0)==(e|0)){g=-1;return g|0}g=f>>>0>b>>>0?b:f;Ui(a|0,e|0,g|0)|0;c[d>>2]=(c[d>>2]|0)+g;return g|0}function Ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+4|0;e=c[k>>2]|0;i=d+8|0;g=c[i>>2]|0;j=e-(c[d>>2]|0)|0;f=(g|0)==0?1:g;while(1)if((f-j|0)>>>0>>0)f=f<<1;else{h=f;break}if((h|0)!=(g|0)){e=Pc(h)|0;if(!e){b=-1;return b|0}f=c[d>>2]|0;if(f){Ui(e|0,f|0,j|0)|0;Uc(c[d>>2]|0)}c[d>>2]=e;e=e+j|0;c[k>>2]=e;c[i>>2]=h}Ui(e|0,a|0,b|0)|0;c[k>>2]=(c[k>>2]|0)+b;return b|0}function Jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=(c[b>>2]|0)+(c[b+8>>2]|0)|0;b=b+4|0;d=c[b>>2]|0;e=f-d|0;if((f|0)==(d|0)){f=-1;return f|0}c[b>>2]=d+a;f=e>>>0>a>>>0?a:e;return f|0}function Kc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[d+8>>2]|0;c[d+4>>2]=(c[d>>2]|0)+(0>(b|0)|0==(b|0)&e>>>0>a>>>0?a:e);return 1}function Lc(a,b,c){a=a|0;b=b|0;c=c|0;b=ci(a,1,b,c)|0;return ((b|0)!=0?b:-1)|0}function Mc(a,b,c){a=a|0;b=b|0;c=c|0;return ki(a,1,b,c)|0}function Nc(a,b,c){a=a|0;b=b|0;c=c|0;c=(fi(c,a,1)|0)==0;C=c?b:-1;return (c?a:-1)|0}function Oc(a,b,c){a=a|0;b=b|0;c=c|0;return (fi(c,a,0)|0)==0|0}function Pc(a){a=a|0;if(!a)a=0;else a=Fi(a)|0;return a|0}function Qc(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Hi(a,b)|0;return a|0}function Rc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;do if(a)if(!(Ji(b,16,a)|0)){b=c[b>>2]|0;break}else{c[b>>2]=0;b=0;break}else b=0;while(0);i=d;return b|0}function Sc(a){a=a|0;Gi(a);return}function Tc(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Ii(a,b)|0;return b|0}function Uc(a){a=a|0;Gi(a);return}function Vc(a){a=a|0;var b=0,d=0;b=696;while(1){d=c[b>>2]|0;if((d|0)==-1|(d|0)==(a|0))break;else b=b+12|0}return b+4|0}function Wc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0))return;c[a+172>>2]=c[b+4>>2];c[a+168>>2]=c[b>>2];return}function Xc(){var b=0,d=0;b=Qc(1,208)|0;if(!b){b=0;return b|0}c[b>>2]=0;d=b+184|0;a[d>>0]=a[d>>0]&-3;d=Pc(1e3)|0;c[b+44>>2]=d;if(!d){Yc(b);d=0;return d|0}c[b+48>>2]=1e3;d=qg()|0;c[b+192>>2]=d;if(!d){Yc(b);d=0;return d|0}d=qg()|0;c[b+188>>2]=d;if(d){d=b;return d|0}Yc(b);d=0;return d|0}function Yc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;if(!b)return;if(!(c[b>>2]|0)){d=b+36|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0}d=b+24|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+28>>2]=0}d=b+44|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+48>>2]=0}}else{d=b+12|0;e=c[d>>2]|0;if(e){sd(e);Uc(c[d>>2]|0);c[d>>2]=0}d=b+16|0;e=c[d>>2]|0;if(e){Uc(e);c[d>>2]=0;c[b+20>>2]=0}}Yf(c[b+204>>2]|0);d=b+88|0;h=b+164|0;e=c[h>>2]|0;if(e){f=_(c[b+112>>2]|0,c[b+116>>2]|0)|0;if(f){g=0;while(1){sd(e);g=g+1|0;if((g|0)==(f|0))break;else e=e+5640|0}e=c[h>>2]|0}Uc(e);c[h>>2]=0}h=b+124|0;e=c[h>>2]|0;if(e){i=b+120|0;f=c[i>>2]|0;if(f){g=0;while(1){e=c[e+(g<<3)>>2]|0;if(e){Uc(e);f=c[i>>2]|0}g=g+1|0;if(g>>>0>=f>>>0)break;e=c[h>>2]|0}e=c[h>>2]|0}c[i>>2]=0;Uc(e);c[h>>2]=0}i=b+144|0;Uc(c[i>>2]|0);c[i>>2]=0;c[b+128>>2]=0;i=b+108|0;Uc(c[i>>2]|0);c[i>>2]=0;if(!(a[b+184>>0]&2)){i=b+176|0;Uc(c[i>>2]|0);c[i>>2]=0}e=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));i=b+188|0;rg(c[i>>2]|0);c[i>>2]=0;rg(c[b+192>>2]|0);c[i>>2]=0;i=b+196|0;bd(c[i>>2]|0);c[i>>2]=0;i=b+80|0;Zb(c[i>>2]|0);c[i>>2]=0;i=b+84|0;Zb(c[i>>2]|0);c[i>>2]=0;Uc(b);return}function Zc(d,e,f,j){d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0.0;ka=i;i=i+320|0;fa=ka+296|0;ea=ka+288|0;ja=ka+280|0;ia=ka+272|0;ha=ka+264|0;ga=ka+256|0;da=ka+248|0;ca=ka+240|0;W=ka+232|0;U=ka+224|0;T=ka+216|0;S=ka+208|0;R=ka+200|0;Q=ka+192|0;P=ka+184|0;v=ka+176|0;u=ka+168|0;t=ka+160|0;s=ka+152|0;q=ka+144|0;I=ka+136|0;H=ka+128|0;N=ka+112|0;G=ka+104|0;F=ka+96|0;E=ka+88|0;C=ka+80|0;B=ka+72|0;A=ka+64|0;z=ka+56|0;y=ka+48|0;x=ka+32|0;w=ka+24|0;p=ka+16|0;m=ka+8|0;l=ka;K=ka+309|0;L=ka+300|0;if(!((d|0)!=0&(e|0)!=0&(f|0)!=0)){j=0;i=ka;return j|0}ba=e+5592|0;k=c[ba>>2]|0;if((k+-1|0)>>>0>32){c[l>>2]=k;c[l+4>>2]=33;Ub(j,1,4875,l)|0;j=0;i=ka;return j|0}$=d+112|0;c[$>>2]=1;aa=d+116|0;c[aa>>2]=1;J=e+18704|0;do if(!(b[J>>1]|0)){switch(c[e+18676>>2]|0){case 1:{b[J>>1]=3;c[e+18700>>2]=1302083;c[e+18680>>2]=1041666;l=1;break}case 2:{b[J>>1]=3;c[e+18700>>2]=651041;c[e+18680>>2]=520833;l=1;break}case 3:{b[J>>1]=4;c[e+18700>>2]=1302083;c[e+18680>>2]=1041666;l=1;break}default:l=0}k=c[e+18684>>2]|0;a:do if((k|0)>=4)if((k|0)<33024){switch(k|0){case 4:break;default:{Z=13;break a}}b[J>>1]=4;break}else{switch(k|0){case 33024:break;default:{Z=13;break a}}b[J>>1]=-32512;break}else{switch(k|0){case 3:break;default:{Z=13;break a}}b[J>>1]=3}while(0);if((Z|0)==13?(l|0)==0:0)break;Ub(j,2,4931,m)|0}while(0);D=e+18700|0;k=c[D>>2]|0;do if((k|0)<1){r=+g[e+4792+((c[e+4788>>2]|0)+-1<<2)>>2];if(r>0.0){X=c[f+24>>2]|0;p=_(c[X+8>>2]|0,c[f+16>>2]|0)|0;p=_(p,c[X+12>>2]|0)|0;la=+((_(p,c[X+24>>2]|0)|0)>>>0);c[D>>2]=~~+M(+(la/(r*8.0*+((c[X>>2]|0)>>>0)*+((c[X+4>>2]|0)>>>0))));break}else{c[D>>2]=0;break}}else{o=c[f+24>>2]|0;X=_(c[o+8>>2]|0,c[f+16>>2]|0)|0;X=_(X,c[o+12>>2]|0)|0;r=+((_(X,c[o+24>>2]|0)|0)>>>0);k=_(k<<3,c[o>>2]|0)|0;r=r/+((_(k,c[o+4>>2]|0)|0)>>>0);o=e+4788|0;k=c[o>>2]|0;if(k){m=k;k=0;n=0;while(1){l=e+4792+(n<<2)|0;if(+g[l>>2]>2]=r;l=c[o>>2]|0;k=1}else l=m;n=n+1|0;if(n>>>0>=l>>>0)break;else m=l}if(k)Ub(j,2,5068,p)|0}}while(0);k=b[J>>1]|0;b:do if((k+-3&65535)>=4){if(k<<16>>16==7){Ub(j,2,7228,q)|0;b[J>>1]=0;k=0;break}if((k+-256&65535)<524){Ub(j,2,7283,s)|0;b[J>>1]=0;k=0;break}if((k+-1024&65535)<1180){Ub(j,2,7331,t)|0;b[J>>1]=0;k=0;break}if(k<<16>>16<=-1)switch(k<<16>>16){case -32512:{k=-32512;break b}case -32768:{Ub(j,2,7373,u)|0;b[J>>1]=0;k=0;break b}default:{Ub(j,2,7461,v)|0;b[J>>1]=0;k=0;break b}}}else{if((k+-5&65535)<2){Ub(j,2,5160,w)|0;b[J>>1]=0;k=0;break}c[e>>2]=0;c[e+12>>2]=1;c[e+16>>2]=1;a[e+18689>>0]=67;a[e+18688>>0]=1;c[e+4>>2]=0;c[e+8>>2]=0;c[e+18180>>2]=0;c[e+18184>>2]=0;c[e+5596>>2]=32;c[e+5600>>2]=32;c[e+5604>>2]=0;c[e+5612>>2]=-1;c[e+18188>>2]=1;c[e+18192>>2]=1;c[e+5608>>2]=1;l=e+4788|0;m=c[l>>2]|0;if((m|0)>1){la=+g[e+4792+(m+-1<<2)>>2];c[x>>2]=m;h[x+8>>3]=la;Ub(j,2,5222,x)|0;c[e+4792>>2]=c[e+4792+((c[l>>2]|0)+-1<<2)>>2];c[l>>2]=1;k=b[J>>1]|0}c:do switch(k&65535|0){case 3:{k=c[ba>>2]|0;if((k|0)>6){c[y>>2]=k+1;Ub(j,2,5395,y)|0;c[ba>>2]=6;k=6}break}case 4:{k=c[ba>>2]|0;if((k|0)<2){c[z>>2]=k+1;Ub(j,2,5541,z)|0;c[ba>>2]=1;k=1;break c}if((k|0)>7){c[A>>2]=k+1;Ub(j,2,5695,A)|0;c[ba>>2]=7;k=7}break}default:k=c[ba>>2]|0}while(0);l=e+40|0;c[l>>2]=c[l>>2]|1;l=e+5620|0;c[l>>2]=k+-1;if((k|0)>1){k=0;do{c[e+5624+(k<<2)>>2]=256;c[e+5756+(k<<2)>>2]=256;k=k+1|0}while((k|0)<(c[l>>2]|0))}c[e+44>>2]=4;if((b[J>>1]|0)==4){k=c[ba>>2]|0;c[e+96>>2]=1;c[e+48>>2]=0;c[e+52>>2]=0;c[e+56>>2]=1;X=k+-1|0;c[e+60>>2]=X;c[e+64>>2]=3;c[e+80>>2]=4;c[e+244>>2]=1;c[e+196>>2]=X;c[e+200>>2]=0;c[e+204>>2]=1;c[e+208>>2]=k;c[e+212>>2]=3;c[e+228>>2]=4;k=2}else k=0;c[e+4784>>2]=k;c[e+20>>2]=1;k=c[D>>2]|0;if((k|0)>=1){if((k|0)>1302083){Ub(j,2,5998,C)|0;c[D>>2]=1302083}}else{c[D>>2]=1302083;Ub(j,2,5849,B)|0}k=e+18680|0;l=c[k>>2]|0;if((l|0)>=1){if((l|0)>1041666){Ub(j,2,6320,F)|0;c[k>>2]=1041666}}else{c[k>>2]=1041666;Ub(j,2,6171,E)|0}l=c[f+16>>2]|0;n=c[f+24>>2]|0;o=c[n+8>>2]|0;k=_(o,l)|0;p=c[n+12>>2]|0;k=_(k,p)|0;la=+((_(k,c[n+24>>2]|0)|0)>>>0);k=_(c[D>>2]<<3,c[n>>2]|0)|0;g[e+4792>>2]=la/+((_(k,c[n+4>>2]|0)|0)>>>0);k=b[J>>1]|0;d:do if((l|0)==3){l=n+28|0;m=n+32|0;if(!((c[l>>2]|0)!=12|c[m>>2])){l=n+80|0;m=n+84|0;if(!((c[l>>2]|0)!=12|c[m>>2])){l=n+132|0;m=n+136|0;if(!((c[l>>2]|0)!=12|c[m>>2])){switch(k&65535|0){case 3:{if(p>>>0>1080|o>>>0>2048){c[H>>2]=o;c[H+4>>2]=p;Ub(j,2,6892,H)|0;break d}break}case 4:{if(p>>>0>2160|o>>>0>4096){c[I>>2]=o;c[I+4>>2]=p;Ub(j,2,7063,I)|0;break d}break}default:{}}break b}else{p=l;k=m;l=2}}else{p=l;k=m;l=1}}else{p=l;k=m;l=0};a[K>>0]=a[6659]|0;a[K+1>>0]=a[6660]|0;a[K+2>>0]=a[6661]|0;a[K+3>>0]=a[6662]|0;a[K+4>>0]=a[6663]|0;a[K+5>>0]=a[6664]|0;a[K+6>>0]=a[6665]|0;m=L;n=6666;o=m+9|0;do{a[m>>0]=a[n>>0]|0;m=m+1|0;n=n+1|0}while((m|0)<(o|0));X=(c[k>>2]|0)!=0?K:L;L=c[p>>2]|0;c[N>>2]=l;c[N+4>>2]=L;c[N+8>>2]=X;Ub(j,2,6675,N)|0}else{c[G>>2]=l;Ub(j,2,6493,G)|0}while(0);b[J>>1]=0;k=0}while(0);c[d+168>>2]=c[e+18680>>2];X=d+88|0;b[X>>1]=k;N=d+181|0;K=a[N>>0]&-2|c[e+20>>2]&1;a[N>>0]=K;L=e+24|0;K=(c[L>>2]&255)<<1&2|K&-3;a[N>>0]=K;a[N>>0]=K&-5|(c[e+28>>2]&255)<<2&4;do if((c[L>>2]|0)!=0?(O=e+32|0,(c[O>>2]|0)!=0):0){k=_((c[e+4788>>2]|0)*12|0,c[ba>>2]|0)|0;l=Pc(k)|0;c[d+176>>2]=l;if(l){Ui(l|0,c[O>>2]|0,k|0)|0;break}Ub(j,1,7520,P)|0;j=0;i=ka;return j|0}while(0);n=d+100|0;c[n>>2]=c[e+12>>2];o=d+104|0;c[o>>2]=c[e+16>>2];m=d+92|0;c[m>>2]=c[e+4>>2];p=d+96|0;c[p>>2]=c[e+8>>2];l=e+36|0;k=c[l>>2]|0;do if(!k){k=fc()|0;l=Pc((wi(k)|0)+29|0)|0;c[d+108>>2]=l;if(l){c[S>>2]=7697;c[S+4>>2]=k;ni(l,7692,S)|0;break}Ub(j,1,7646,R)|0;j=0;i=ka;return j|0}else{k=Pc((wi(k)|0)+1|0)|0;c[d+108>>2]=k;if(k){vi(k,c[l>>2]|0)|0;break}Ub(j,1,7592,Q)|0;j=0;i=ka;return j|0}while(0);k=(c[f+8>>2]|0)-(c[m>>2]|0)|0;l=c[f+12>>2]|0;if(!(c[e>>2]|0)){c[n>>2]=k;c[o>>2]=l-(c[p>>2]|0)}else{S=c[n>>2]|0;c[$>>2]=(k+-1+S|0)/(S|0)|0;S=c[o>>2]|0;c[aa>>2]=(l+-1-(c[p>>2]|0)+S|0)/(S|0)|0}if(a[e+18688>>0]|0){a[d+180>>0]=a[e+18689>>0]|0;a[N>>0]=a[N>>0]|8}S=Qc(_(c[aa>>2]|0,c[$>>2]|0)|0,5640)|0;L=d+164|0;c[L>>2]=S;if(!S){Ub(j,1,7726,T)|0;j=0;i=ka;return j|0}K=e+4784|0;A=c[K>>2]|0;do if(A){w=e+48|0;B=c[ba>>2]|0;C=c[f+16>>2]|0;D=c[e+4788>>2]|0;E=_(C,B)|0;F=Qc(_(E,D)|0,4)|0;if(!F){Ub(j,1,7780,U)|0;break}m=c[w>>2]|0;s=e+60|0;k=c[s>>2]|0;if(m>>>0>>0){q=_(m,C)|0;t=e+52|0;u=e+64|0;v=e+56|0;l=c[u>>2]|0;while(1){n=c[t>>2]|0;if(n>>>0>>0){k=c[v>>2]|0;p=n;o=n+q|0;while(1){if(!k)k=0;else{l=o;n=0;while(1){c[F+(l<<2)>>2]=1;n=n+1|0;k=c[v>>2]|0;if(n>>>0>=k>>>0)break;else l=l+E|0}l=c[u>>2]|0}p=p+1|0;if(p>>>0>=l>>>0)break;else o=o+1|0}k=c[s>>2]|0}m=m+1|0;if(m>>>0>=k>>>0)break;else q=q+C|0}}if(A>>>0>1){z=1;do{k=w;w=w+148|0;v=c[k+8>>2]|0;u=k+156|0;n=c[u>>2]|0;v=n>>>0>v>>>0?v:0;o=c[w>>2]|0;x=k+160|0;l=c[x>>2]|0;if(o>>>0>>0){q=_(o,C)|0;y=k+152|0;s=k+164|0;t=_(v,E)|0;m=c[s>>2]|0;k=n;while(1){n=c[y>>2]|0;if(n>>>0>>0){p=n;n=n+q|0;while(1){if(v>>>0>>0){l=n+t|0;m=v;while(1){c[F+(l<<2)>>2]=1;m=m+1|0;k=c[u>>2]|0;if(m>>>0>=k>>>0)break;else l=l+E|0}m=c[s>>2]|0}p=p+1|0;if(p>>>0>=m>>>0)break;else n=n+1|0}l=c[x>>2]|0}o=o+1|0;if(o>>>0>=l>>>0)break;else q=q+C|0}}z=z+1|0}while((z|0)!=(A|0))}if((D|0)!=0?(V=(C|0)==0,(B|0)!=0):0){l=0;q=0;k=0;do{if(!V){p=l;o=0;while(1){m=0;n=p;while(1){k=(c[F+(n<<2)>>2]|0)!=1|k;m=m+1|0;if((m|0)==(C|0))break;else n=n+1|0}o=o+1|0;if((o|0)==(B|0))break;else p=p+C|0}l=E+l|0}q=q+1|0}while((q|0)!=(D|0));if(k)Ub(j,1,7828,W)|0}Uc(F)}while(0);e:do if(_(c[aa>>2]|0,c[$>>2]|0)|0){w=e+4788|0;x=e+40|0;y=e+44|0;z=e+18690|0;A=f+16|0;l=e+18696|0;B=f+24|0;C=e+5596|0;D=e+5600|0;E=e+5604|0;F=e+5608|0;G=e+5612|0;H=e+5616|0;I=e+5620|0;J=0;f:while(1){q=c[L>>2]|0;s=q+(J*5640|0)|0;W=c[w>>2]|0;k=q+(J*5640|0)+8|0;c[k>>2]=W;if(W){m=((b[X>>1]|0)+-3&65535)<4;o=0;do{n=(a[N>>0]&4)==0;do if(!m)if(n){c[q+(J*5640|0)+20+(o<<2)>>2]=c[e+4792+(o<<2)>>2];break}else{c[q+(J*5640|0)+5184+(o<<2)>>2]=c[e+5192+(o<<2)>>2];break}else{if(!n)c[q+(J*5640|0)+5184+(o<<2)>>2]=c[e+5192+(o<<2)>>2];c[q+(J*5640|0)+20+(o<<2)>>2]=c[e+4792+(o<<2)>>2]}while(0);o=o+1|0}while(o>>>0<(c[k>>2]|0)>>>0)}c[s>>2]=c[x>>2];c[q+(J*5640|0)+4>>2]=c[y>>2];p=q+(J*5640|0)+16|0;c[p>>2]=a[z>>0];k=q+(J*5640|0)+5636|0;m=a[k>>0]|0;a[k>>0]=m&-5;if(!(c[K>>2]|0))c[q+(J*5640|0)+420>>2]=0;else{a[k>>0]=m|4;m=c[K>>2]|0;if(!m)k=0;else{n=J+1|0;o=0;k=0;do{if((n|0)==(c[e+48+(o*148|0)+48>>2]|0)){c[q+(J*5640|0)+424+(k*148|0)>>2]=c[e+48+(k*148|0)>>2];c[q+(J*5640|0)+424+(k*148|0)+4>>2]=c[e+48+(k*148|0)+4>>2];c[q+(J*5640|0)+424+(k*148|0)+8>>2]=c[e+48+(k*148|0)+8>>2];c[q+(J*5640|0)+424+(k*148|0)+12>>2]=c[e+48+(k*148|0)+12>>2];c[q+(J*5640|0)+424+(k*148|0)+16>>2]=c[e+48+(k*148|0)+16>>2];c[q+(J*5640|0)+424+(k*148|0)+32>>2]=c[e+48+(k*148|0)+32>>2];c[q+(J*5640|0)+424+(k*148|0)+48>>2]=c[e+48+(k*148|0)+48>>2];k=k+1|0}o=o+1|0}while(o>>>0>>0)}c[q+(J*5640|0)+420>>2]=k+-1}W=Qc(c[A>>2]|0,1080)|0;v=q+(J*5640|0)+5584|0;c[v>>2]=W;if(!W){Z=149;break}do if(!(c[l>>2]|0)){g:do if((c[p>>2]|0)==1){k=c[A>>2]|0;if(k>>>0<=2){n=k;break}m=c[B>>2]|0;k=c[m>>2]|0;do if((k|0)==(c[m+52>>2]|0)){if((k|0)!=(c[m+104>>2]|0))break;k=c[m+4>>2]|0;if((k|0)!=(c[m+56>>2]|0))break;if((k|0)==(c[m+108>>2]|0)){Z=175;break g}}while(0);Ub(j,2,8224,fa)|0;c[p>>2]=0;Z=175}else Z=175;while(0);if((Z|0)==175){Z=0;n=c[A>>2]|0}if(!n)break;k=c[B>>2]|0;m=0;do{if(!(c[k+(m*52|0)+32>>2]|0))c[(c[v>>2]|0)+(m*1080|0)+1076>>2]=1<<(c[k+(m*52|0)+24>>2]|0)+-1;m=m+1|0}while(m>>>0>>0);Y=n;Z=166}else{n=c[A>>2]|0;n=_(n<<2,n)|0;k=Pc(n)|0;o=(c[l>>2]|0)+n|0;if(!k){Z=152;break f}c[p>>2]=2;m=Pc(n)|0;c[q+(J*5640|0)+5608>>2]=m;if(!m){Z=154;break f}Ui(m|0,c[l>>2]|0,n|0)|0;Ui(k|0,c[l>>2]|0,n|0)|0;m=Pc(n)|0;n=q+(J*5640|0)+5604|0;c[n>>2]=m;if(!m){Z=156;break f}if(!(Vg(k,m,c[A>>2]|0)|0)){Z=158;break f}m=Pc(c[A>>2]<<3)|0;c[q+(J*5640|0)+5600>>2]=m;if(!m){Z=160;break f}If(m,c[A>>2]|0,c[n>>2]|0);Uc(k);k=c[A>>2]|0;if(k){m=c[v>>2]|0;n=0;do{c[m+(n*1080|0)+1076>>2]=c[o+(n<<2)>>2];n=n+1|0}while(n>>>0>>0)}if(!(_c(s,f)|0)){Z=167;break f}Y=c[A>>2]|0;Z=166}while(0);if((Z|0)==166?(Z=0,(Y|0)!=0):0){u=0;do{s=c[v>>2]|0;t=s+(u*1080|0)|0;c[t>>2]=c[x>>2]&1;n=c[ba>>2]|0;o=s+(u*1080|0)+4|0;c[o>>2]=n;k=c[C>>2]|0;if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+8>>2]=k;k=c[D>>2]|0;if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+12>>2]=k;c[s+(u*1080|0)+16>>2]=c[E>>2];W=c[F>>2]|0;c[s+(u*1080|0)+20>>2]=(W|0)==0&1;c[s+(u*1080|0)+24>>2]=(W|0)!=0?2:0;c[s+(u*1080|0)+804>>2]=2;if((u|0)==(c[G>>2]|0))k=c[H>>2]|0;else k=0;c[s+(u*1080|0)+808>>2]=k;do if(!(c[x>>2]&1)){if(!n)break;else k=0;do{c[s+(u*1080|0)+812+(k<<2)>>2]=15;c[s+(u*1080|0)+944+(k<<2)>>2]=15;k=k+1|0}while(k>>>0<(c[o>>2]|0)>>>0)}else{if((n|0)>0){o=n;q=0}else break;while(1){p=o;o=o+-1|0;k=c[I>>2]|0;do if((q|0)<(k|0)){k=c[e+5624+(q<<2)>>2]|0;if((k|0)<1)c[s+(u*1080|0)+812+(o<<2)>>2]=1;else{if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+812+(o<<2)>>2]=k}k=c[e+5756+(q<<2)>>2]|0;if((k|0)<1){c[s+(u*1080|0)+944+(o<<2)>>2]=1;break}if((k|0)>1){m=0;do{k=k>>1;m=m+1|0}while((k|0)>1);k=m}else k=0;c[s+(u*1080|0)+944+(o<<2)>>2]=k}else{W=k+-1|0;m=q-W|0;k=c[e+5624+(W<<2)>>2]>>m;m=c[e+5756+(W<<2)>>2]>>m;if((k|0)<1)c[s+(u*1080|0)+812+(o<<2)>>2]=1;else{if((k|0)>1){n=0;do{k=k>>1;n=n+1|0}while((k|0)>1);k=n}else k=0;c[s+(u*1080|0)+812+(o<<2)>>2]=k}if((m|0)<1){c[s+(u*1080|0)+944+(o<<2)>>2]=1;break}if((m|0)>1){k=0;do{m=m>>1;k=k+1|0}while((m|0)>1)}else k=0;c[s+(u*1080|0)+944+(o<<2)>>2]=k}while(0);if((p|0)<=1)break;else q=q+1|0}}while(0);Mg(t,c[(c[B>>2]|0)+(u*52|0)+24>>2]|0);u=u+1|0}while(u>>>0<(c[A>>2]|0)>>>0)}J=J+1|0;if(J>>>0>=(_(c[aa>>2]|0,c[$>>2]|0)|0)>>>0)break e}if((Z|0)==149){Ub(j,1,7867,ca)|0;j=0;i=ka;return j|0}else if((Z|0)==152){Ub(j,1,7931,da)|0;j=0;i=ka;return j|0}else if((Z|0)==154){Uc(k);Ub(j,1,7974,ga)|0;j=0;i=ka;return j|0}else if((Z|0)==156){Uc(k);Ub(j,1,8032,ha)|0;j=0;i=ka;return j|0}else if((Z|0)==158){Uc(k);Ub(j,1,8092,ia)|0;j=0;i=ka;return j|0}else if((Z|0)==160){Uc(k);Ub(j,1,8140,ja)|0;j=0;i=ka;return j|0}else if((Z|0)==167){Ub(j,1,8190,ea)|0;j=0;i=ka;return j|0}}else l=e+18696|0;while(0);k=c[l>>2]|0;if(!k){j=1;i=ka;return j|0}Uc(k);c[l>>2]=0;j=1;i=ka;return j|0}function _c(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((c[b+16>>2]|0)!=2){b=1;return b|0}m=b+5604|0;r=b+5616|0;e=c[r>>2]|0;n=b+5620|0;do if(c[m>>2]|0){do if((e|0)==(c[n>>2]|0)){e=e+10|0;c[n>>2]=e;f=b+5612|0;e=Tc(c[f>>2]|0,e*20|0)|0;if(e){c[f>>2]=e;q=c[r>>2]|0;Qi(e+(q*20|0)|0,0,((c[n>>2]|0)-q|0)*20|0)|0;e=c[r>>2]|0;break}Uc(c[f>>2]|0);c[f>>2]=0;c[n>>2]=0;c[r>>2]=0;b=0;return b|0}else f=b+5612|0;while(0);k=c[f>>2]|0;i=k+(e*20|0)|0;l=k+(e*20|0)+12|0;f=c[l>>2]|0;if(f){Uc(f);c[l>>2]=0}c[k+(e*20|0)+8>>2]=1;c[k+(e*20|0)+4>>2]=1;c[i>>2]=2;f=c[d+16>>2]|0;f=_(f,f)|0;h=f<<2;j=Pc(h)|0;c[l>>2]=j;if(!j){b=0;return b|0}else{Xa[c[768+(c[i>>2]<<2)>>2]&15](c[m>>2]|0,j,f);c[k+(e*20|0)+16>>2]=h;e=(c[r>>2]|0)+1|0;c[r>>2]=e;j=2;break}}else{j=1;i=0}while(0);do if((e|0)==(c[n>>2]|0)){f=e+10|0;c[n>>2]=f;e=b+5612|0;f=Tc(c[e>>2]|0,f*20|0)|0;if(!f){Uc(c[e>>2]|0);c[e>>2]=0;c[n>>2]=0;c[r>>2]=0;b=0;return b|0}else{c[e>>2]=f;h=c[r>>2]|0;Qi(f+(h*20|0)|0,0,((c[n>>2]|0)-h|0)*20|0)|0;if(!i){i=0;break}i=f+((h+-1|0)*20|0)|0;break}}else e=b+5612|0;while(0);m=c[e>>2]|0;n=c[r>>2]|0;q=m+(n*20|0)|0;o=m+(n*20|0)+12|0;e=c[o>>2]|0;if(e){Uc(e);c[o>>2]=0}p=j+1|0;c[m+(n*20|0)+8>>2]=j;c[m+(n*20|0)+4>>2]=2;c[q>>2]=2;d=d+16|0;e=c[d>>2]|0;f=e<<2;l=Pc(f)|0;c[o>>2]=l;if(!l){b=0;return b|0}h=Pc(f)|0;if(!h){Uc(c[o>>2]|0);c[o>>2]=0;b=0;return b|0}if(e){j=0;k=h;l=c[b+5584>>2]|0;while(1){g[k>>2]=+(c[l+1076>>2]|0);j=j+1|0;if((j|0)==(e|0))break;else{k=k+4|0;l=l+1080|0}}}Xa[c[768+(c[q>>2]<<2)>>2]&15](h,c[o>>2]|0,e);Uc(h);c[m+(n*20|0)+16>>2]=f;c[r>>2]=(c[r>>2]|0)+1;j=b+5628|0;e=c[j>>2]|0;h=b+5632|0;do if((e|0)==(c[h>>2]|0)){e=e+10|0;c[h>>2]=e;f=b+5624|0;e=Tc(c[f>>2]|0,e*20|0)|0;if(e){c[f>>2]=e;b=c[j>>2]|0;Qi(e+(b*20|0)|0,0,((c[h>>2]|0)-b|0)*20|0)|0;e=c[j>>2]|0;break}Uc(c[f>>2]|0);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;b=0;return b|0}else f=b+5624|0;while(0);b=c[f>>2]|0;c[b+(e*20|0)+8>>2]=i;r=b+(e*20|0)+16|0;a[r>>0]=a[r>>0]|1;c[b+(e*20|0)+4>>2]=c[d>>2];c[b+(e*20|0)>>2]=p;c[b+(e*20|0)+12>>2]=q;c[j>>2]=(c[j>>2]|0)+1;b=1;return b|0}function $c(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ad(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=Xb()|0;k=b+80|0;c[k>>2]=j;if(!j){k=0;return k|0}f=b+192|0;if((sg(c[f>>2]|0,23,e)|0)!=0?(sg(c[f>>2]|0,24,e)|0)!=0:0){h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}}else vg(h);f=b+188|0;if((sg(c[f>>2]|0,25,e)|0)!=0?(sg(c[f>>2]|0,26,e)|0)!=0:0){h=c[f>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](b,a,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}}else vg(h);f=Xb()|0;c[d>>2]=f;if(!f){k=0;return k|0}$b(c[k>>2]|0,f);f=_(c[b+116>>2]|0,c[b+112>>2]|0)|0;i=b+196|0;c[(c[i>>2]|0)+36>>2]=f;f=Qc(f,40)|0;g=c[i>>2]|0;c[g+40>>2]=f;if(!f){k=0;return k|0}if(!(c[g+36>>2]|0)){k=1;return k|0}h=0;while(1){c[f+(h*40|0)+28>>2]=100;c[f+(h*40|0)+20>>2]=0;k=Qc(100,24)|0;g=c[i>>2]|0;f=c[g+40>>2]|0;c[f+(h*40|0)+24>>2]=k;h=h+1|0;if(!k){f=0;g=30;break}if(h>>>0>=(c[g+36>>2]|0)>>>0){f=1;g=30;break}}if((g|0)==30)return f|0}Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}Zb(c[k>>2]|0);c[k>>2]=0;k=0;return k|0}function bd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;b=a+28|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}h=a+40|0;b=c[h>>2]|0;if(b){g=a+36|0;if(c[g>>2]|0){d=b;f=0;do{e=c[d+(f*40|0)+36>>2]|0;if(e){Uc(e);b=c[h>>2]|0;c[b+(f*40|0)+36>>2]=0;d=b}e=c[d+(f*40|0)+16>>2]|0;if(e){Uc(e);b=c[h>>2]|0;c[b+(f*40|0)+16>>2]=0;d=b}e=c[d+(f*40|0)+24>>2]|0;if(e){Uc(e);d=c[h>>2]|0;c[d+(f*40|0)+24>>2]=0;b=d}f=f+1|0}while(f>>>0<(c[g>>2]|0)>>>0)}Uc(b);c[h>>2]=0}Uc(a);return}function cd(d,e,f,g,h,j,k,l,m,n,o){d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=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;Da=i;i=i+256|0;Ca=Da+200|0;Ba=Da+192|0;za=Da+184|0;ya=Da+176|0;pa=Da+168|0;oa=Da+160|0;na=Da+152|0;ma=Da+144|0;la=Da+136|0;ka=Da+128|0;ia=Da+120|0;ha=Da+112|0;wa=Da+104|0;ua=Da+96|0;ga=Da+88|0;fa=Da+80|0;ea=Da+72|0;va=Da+64|0;da=Da+56|0;ca=Da+48|0;sa=Da+40|0;ra=Da+32|0;qa=Da+24|0;ja=Da+16|0;ba=Da+8|0;aa=Da;V=Da+240|0;T=Da+236|0;X=Da+232|0;Z=Da+228|0;$=Da+224|0;U=Da+220|0;Y=Da+216|0;S=Da+212|0;W=Da+208|0;c[S>>2]=65424;Aa=d+8|0;a:do switch(c[Aa>>2]|0){case 256:{c[S>>2]=65497;p=d+76|0;xa=117;break}case 8:{ta=d+76|0;if(!(a[ta>>0]&1)){O=d+200|0;P=d+164|0;Q=d+72|0;R=d+24|0;B=d+196|0;D=d+112|0;E=d+116|0;G=V+2|0;H=V+6|0;I=V+7|0;J=d+16|0;K=d+20|0;L=d+64|0;p=65424;b:while(1){c:do if((p|0)!=65427){while(1){A=Qb(n)|0;if((A|0)==0&(C|0)==0){xa=7;break}if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=9;break b}qb(c[J>>2]|0,W,2);if((c[W>>2]|0)>>>0<2){xa=11;break b}if((c[S>>2]|0)==32896?(A=Qb(n)|0,(A|0)==0&(C|0)==0):0){xa=14;break}s=c[Aa>>2]|0;p=c[W>>2]|0;if(s&16)c[R>>2]=-2-p+(c[R>>2]|0);q=p+-2|0;c[W>>2]=q;p=c[S>>2]|0;r=784;while(1){A=c[r>>2]|0;if((A|0)==0|(A|0)==(p|0)){y=r;break}else r=r+12|0}if(!(c[r+4>>2]&s)){xa=20;break b}if(q>>>0>(c[K>>2]|0)>>>0){A=Qb(n)|0;z=C;if(0>(z|0)|0==(z|0)&q>>>0>A>>>0){xa=24;break b}p=Tc(c[J>>2]|0,c[W>>2]|0)|0;if(!p){xa=26;break b}c[J>>2]=p;q=c[W>>2]|0;c[K>>2]=q}else p=c[J>>2]|0;q=Mb(n,p,q,o)|0;if((q|0)!=(c[W>>2]|0)){xa=29;break b}p=c[r+8>>2]|0;if(!p){xa=31;break b}if(!(Za[p&63](d,c[J>>2]|0,q,o)|0)){xa=33;break b}r=c[O>>2]|0;q=c[B>>2]|0;v=c[y>>2]|0;w=Pb(n)|0;x=c[W>>2]|0;w=w-x+-4|0;x=x+4|0;q=q+40|0;u=c[q>>2]|0;p=c[u+(r*40|0)+20>>2]|0;s=u+(r*40|0)+28|0;t=c[s>>2]|0;if((p+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;c[s>>2]=t;s=Tc(c[u+(r*40|0)+24>>2]|0,t*24|0)|0;t=c[q>>2]|0;p=t+(r*40|0)+24|0;if(!s){xa=41;break b}c[p>>2]=s;q=t;p=c[t+(r*40|0)+20>>2]|0}else{q=u;s=c[u+(r*40|0)+24>>2]|0}b[s+(p*24|0)>>1]=v;A=s+(p*24|0)+8|0;c[A>>2]=w;c[A+4>>2]=((w|0)<0)<<31>>31;c[s+(p*24|0)+16>>2]=x;c[q+(r*40|0)+20>>2]=p+1;if((v|0)==65424?(F=c[q+(r*40|0)+16>>2]|0,(F|0)!=0):0){A=F+((c[q+(r*40|0)+12>>2]|0)*24|0)|0;c[A>>2]=w;c[A+4>>2]=0}do if((c[y>>2]|0)==65424){p=Pb(n)|0;p=-4-(c[W>>2]|0)+p|0;A=L;z=c[A+4>>2]|0;if(!(0>(z|0)|(0==(z|0)?p>>>0>(c[A>>2]|0)>>>0:0)))break;A=L;c[A>>2]=p;c[A+4>>2]=0}while(0);if(a[ta>>0]&4){xa=46;break}if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=50;break b}qb(c[J>>2]|0,S,2);if((c[S>>2]|0)==65427)break c}if((xa|0)==7){xa=0;c[Aa>>2]=64;break}else if((xa|0)==14){xa=0;c[Aa>>2]=64;break}else if((xa|0)==46){xa=0;A=Rb(n,c[R>>2]|0,0,o)|0;if(!((C|0)==0?(A|0)==(c[R>>2]|0):0)){xa=47;break b}c[S>>2]=65427;break}}while(0);A=Qb(n)|0;if((A|0)==0&(C|0)==0?(c[Aa>>2]|0)==64:0){xa=115;break}p=a[ta>>0]|0;if(!(p&4)){q=c[O>>2]|0;r=c[P>>2]|0;if(!(c[Q>>2]|0)){p=c[R>>2]|0;if(p>>>0>1){s=p+-2|0;c[R>>2]=s}else s=p}else{s=Qb(n)|0;s=Si(s|0,C|0,-2,0)|0;c[R>>2]=s}p=r+(q*5640|0)+5592|0;A=r+(q*5640|0)+5596|0;do if(!s)z=1;else{z=Qb(n)|0;y=C;if(0>(y|0)|0==(y|0)&s>>>0>z>>>0)Ub(o,2,8573,ga)|0;q=c[p>>2]|0;if(!q){z=Pc(c[R>>2]|0)|0;c[p>>2]=z;if(!z)break b;else{z=0;break}}q=Tc(q,(c[R>>2]|0)+(c[A>>2]|0)|0)|0;if(!q){xa=65;break b}c[p>>2]=q;z=0}while(0);q=c[B>>2]|0;if(q){w=Pb(n)|0;s=C;y=Si(w|0,s|0,-2,-1)|0;r=c[O>>2]|0;q=q+40|0;u=c[q>>2]|0;v=c[u+(r*40|0)+12>>2]|0;t=c[u+(r*40|0)+16>>2]|0;x=t+(v*24|0)+8|0;c[x>>2]=y;c[x+4>>2]=C;x=c[R>>2]|0;s=Si(x|0,0,w|0,s|0)|0;v=t+(v*24|0)+16|0;c[v>>2]=s;c[v+4>>2]=C;x=x+2|0;v=c[u+(r*40|0)+20>>2]|0;s=u+(r*40|0)+28|0;t=c[s>>2]|0;if((v+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;c[s>>2]=t;s=Tc(c[u+(r*40|0)+24>>2]|0,t*24|0)|0;t=c[q>>2]|0;u=t+(r*40|0)+24|0;if(!s){p=u;xa=74;break}c[u>>2]=s;w=t;q=c[t+(r*40|0)+20>>2]|0}else{w=u;s=c[u+(r*40|0)+24>>2]|0;q=v}b[s+(q*24|0)>>1]=-109;v=Pi(0,y|0,32)|0;y=s+(q*24|0)+8|0;c[y>>2]=v;c[y+4>>2]=C;c[s+(q*24|0)+16>>2]=x;c[w+(r*40|0)+20>>2]=q+1}if(!z)p=Mb(n,(c[p>>2]|0)+(c[A>>2]|0)|0,c[R>>2]|0,o)|0;else p=0;c[Aa>>2]=(p|0)==(c[R>>2]|0)?8:64;c[A>>2]=(c[A>>2]|0)+p;p=a[ta>>0]|0;if((p&9)==1){a[ta>>0]=p|8;q=c[O>>2]|0;do if((Tb(n)|0)!=0?(M=Pb(n)|0,N=C,!((M|0)==-1&(N|0)==-1)):0){while(1){if((Mb(n,V,2,o)|0)!=2){xa=81;break}qb(V,T,2);if((c[T>>2]|0)!=65424){xa=83;break}if((Mb(n,V,2,o)|0)!=2){xa=85;break}qb(V,X,2);if((c[X>>2]|0)!=10){xa=87;break}c[X>>2]=8;p=Mb(n,V,8,o)|0;if((p|0)!=(c[X>>2]|0)){xa=89;break}if((p|0)!=8){xa=91;break}qb(V,Z,2);qb(G,$,4);qb(H,U,1);qb(I,Y,1);if((c[Z>>2]|0)==(q|0)){xa=97;break}p=c[$>>2]|0;if(p>>>0<14){xa=94;break}xa=p+-12|0;c[$>>2]=xa;xa=Rb(n,xa,0,o)|0;if(!((C|0)==0?(xa|0)==(c[$>>2]|0):0)){xa=96;break}}if((xa|0)==81){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==83){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==85){xa=0;Ub(o,1,8295,ha)|0;p=0;q=0;break}else if((xa|0)==87){xa=0;Ub(o,1,8313,ia)|0;p=0;q=0;break}else if((xa|0)==89){xa=0;Ub(o,1,8295,ka)|0;p=0;q=0;break}else if((xa|0)==91){xa=0;Ub(o,1,8662,la)|0;p=0;q=0;break}else if((xa|0)==94){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==96){xa=0;p=(Sb(n,M,N,o)|0)!=0&1;q=0;break}else if((xa|0)==97){xa=0;q=(c[U>>2]|0)==(c[Y>>2]|0)&1;p=(Sb(n,M,N,o)|0)!=0&1;break}}else{p=1;q=0}while(0);if(!p){xa=99;break}if(q){p=_(c[E>>2]|0,c[D>>2]|0)|0;a[ta>>0]=a[ta>>0]&-18|16;if(p){q=c[P>>2]|0;t=0;do{r=q+(t*5640|0)+5588|0;s=c[r>>2]|0;if(s)c[r>>2]=s+1;t=t+1|0}while((t|0)!=(p|0))}Ub(o,2,8734,na)|0}}if(!(a[ta>>0]&1)){if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=109;break}qb(c[J>>2]|0,S,2)}}else{a[ta>>0]=p&-6;c[Aa>>2]=8;if((Mb(n,c[J>>2]|0,2,o)|0)!=2){xa=113;break}qb(c[J>>2]|0,S,2)}p=c[S>>2]|0;if(!((p|0)!=65497&(a[ta>>0]&1)==0)){xa=116;break}}switch(xa|0){case 9:{Ub(o,1,8295,aa)|0;o=0;i=Da;return o|0}case 11:{Ub(o,1,8313,ba)|0;o=0;i=Da;return o|0}case 20:{Ub(o,1,8339,ja)|0;o=0;i=Da;return o|0}case 24:{Ub(o,1,8382,qa)|0;o=0;i=Da;return o|0}case 26:{Uc(c[J>>2]|0);c[J>>2]=0;c[K>>2]=0;Ub(o,1,8427,ra)|0;o=0;i=Da;return o|0}case 29:{Ub(o,1,8295,sa)|0;o=0;i=Da;return o|0}case 31:{Ub(o,1,8461,ca)|0;o=0;i=Da;return o|0}case 33:{c[da>>2]=c[S>>2];Ub(o,1,8490,da)|0;o=0;i=Da;return o|0}case 41:{Uc(c[p>>2]|0);Ca=c[q>>2]|0;c[Ca+(r*40|0)+24>>2]=0;c[Ca+(r*40|0)+28>>2]=0;c[Ca+(r*40|0)+20>>2]=0;Ub(o,1,8537,va)|0;o=0;i=Da;return o|0}case 47:{Ub(o,1,8295,ea)|0;o=0;i=Da;return o|0}case 50:{Ub(o,1,8295,fa)|0;o=0;i=Da;return o|0}case 65:{Uc(c[p>>2]|0);c[p>>2]=0;break}case 74:{Uc(c[p>>2]|0);Ca=c[q>>2]|0;c[Ca+(r*40|0)+24>>2]=0;c[Ca+(r*40|0)+28>>2]=0;c[Ca+(r*40|0)+20>>2]=0;Ub(o,1,8537,wa)|0;o=0;i=Da;return o|0}case 99:{Ub(o,1,8688,ma)|0;o=0;i=Da;return o|0}case 109:{Ub(o,1,8295,oa)|0;o=0;i=Da;return o|0}case 113:{Ub(o,1,8295,pa)|0;o=0;i=Da;return o|0}case 115:{p=c[S>>2]|0;xa=116;break}}if((xa|0)==116)if((p|0)==65497){p=ta;xa=117;break a}else{p=ta;break a}Ub(o,1,8628,ua)|0;o=0;i=Da;return o|0}else p=ta;break}default:{o=0;i=Da;return o|0}}while(0);if((xa|0)==117)if((c[Aa>>2]|0)!=256){c[d+200>>2]=0;c[Aa>>2]=256}if(!(a[p>>0]&1)){s=_(c[d+112>>2]|0,c[d+116>>2]|0)|0;t=d+200|0;q=c[t>>2]|0;d:do if(q>>>0>>0){p=q;r=(c[d+164>>2]|0)+(q*5640|0)|0;while(1){if(c[r+5592>>2]|0){q=p;break d}q=p+1|0;c[t>>2]=q;if(q>>>0>>0){p=q;r=r+5640|0}else break}}while(0);if((q|0)==(s|0)){c[m>>2]=0;o=1;i=Da;return o|0}}else{q=d+200|0;t=q;q=c[q>>2]|0}A=c[d+164>>2]|0;if(a[A+(q*5640|0)+5636>>0]&2){B=A+(q*5640|0)+5160|0;r=c[B>>2]|0;if(!r)p=0;else{s=c[A+(q*5640|0)+5164>>2]|0;u=0;p=0;do{p=(c[s+(u<<3)+4>>2]|0)+p|0;u=u+1|0}while((u|0)!=(r|0))}xa=Pc(p)|0;z=A+(q*5640|0)+5172|0;c[z>>2]=xa;if(!xa){Ub(o,1,8775,ya)|0;Ub(o,1,8813,za)|0;o=0;i=Da;return o|0}y=A+(q*5640|0)+5180|0;c[y>>2]=p;r=c[B>>2]|0;x=A+(q*5640|0)+5164|0;if(!r)p=c[x>>2]|0;else{p=c[x>>2]|0;v=p;w=0;u=0;while(1){s=c[v+(w<<3)>>2]|0;if(!s)s=v;else{Ui((c[z>>2]|0)+u|0,s|0,c[v+(w<<3)+4>>2]|0)|0;s=c[x>>2]|0;u=(c[s+(w<<3)+4>>2]|0)+u|0;Uc(c[s+(w<<3)>>2]|0);s=c[x>>2]|0;c[s+(w<<3)>>2]=0;c[s+(w<<3)+4>>2]=0;r=c[B>>2]|0;p=s}w=w+1|0;if(w>>>0>=r>>>0)break;else v=s}}c[B>>2]=0;Uc(p);c[x>>2]=0;c[A+(q*5640|0)+5168>>2]=c[z>>2];c[A+(q*5640|0)+5176>>2]=c[y>>2];q=c[t>>2]|0}p=d+204|0;if(!($f(c[p>>2]|0,q,o)|0)){Ub(o,1,8839,Ba)|0;o=0;i=Da;return o|0}else{Ba=_(c[d+112>>2]|0,c[d+116>>2]|0)|0;c[Ca>>2]=(c[t>>2]|0)+1;c[Ca+4>>2]=Ba;Ub(o,4,8873,Ca)|0;c[e>>2]=c[t>>2];c[m>>2]=1;c[f>>2]=ag(c[p>>2]|0)|0;o=c[c[(c[p>>2]|0)+20>>2]>>2]|0;c[g>>2]=c[o>>2];c[h>>2]=c[o+4>>2];c[j>>2]=c[o+8>>2];c[k>>2]=c[o+12>>2];c[l>>2]=c[o+16>>2];c[Aa>>2]=c[Aa>>2]|128;o=1;i=Da;return o|0}return 0}function dd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+48|0;r=t+28|0;s=t+32|0;o=b+8|0;if(!(c[o>>2]&128)){g=0;i=t;return g|0}q=b+200|0;if((c[q>>2]|0)!=(d|0)){g=0;i=t;return g|0}j=c[b+164>>2]|0;n=j+(d*5640|0)|0;p=j+(d*5640|0)+5592|0;k=c[p>>2]|0;if(!k){sd(n);g=0;i=t;return g|0}l=b+204|0;m=j+(d*5640|0)+5596|0;if(!(cg(c[l>>2]|0,k,c[m>>2]|0,d,c[b+196>>2]|0,h)|0)){sd(n);c[o>>2]=c[o>>2]|32768;Ub(h,1,8912,t)|0;g=0;i=t;return g|0}if(!(dg(c[l>>2]|0,e,f)|0)){g=0;i=t;return g|0}j=c[p>>2]|0;if(j){Uc(j);c[p>>2]=0;c[m>>2]=0}p=b+76|0;a[p>>0]=a[p>>0]&-2;c[o>>2]=c[o>>2]&-129;p=Qb(g)|0;b=c[o>>2]|0;if((b|0)==256|(p|0)==0&(C|0)==0&(b|0)==64){g=1;i=t;return g|0}if((Mb(g,s,2,h)|0)!=2){Ub(h,2,8931,t+8|0)|0;g=1;i=t;return g|0}qb(s,r,2);switch(c[r>>2]|0){case 65497:{c[q>>2]=0;c[o>>2]=256;g=1;i=t;return g|0}case 65424:{g=1;i=t;return g|0}default:if((Qb(g)|0)==0&(C|0)==0){c[o>>2]=64;Ub(h,2,8975,t+16|0)|0;g=1;i=t;return g|0}else{Ub(h,1,9005,t+24|0)|0;g=0;i=t;return g|0}}return 0}function ed(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,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=i;i=i+112|0;y=z+96|0;x=z+88|0;w=z+80|0;v=z+72|0;u=z+64|0;s=z+56|0;r=z+48|0;o=z+40|0;n=z+32|0;m=z+24|0;l=z+16|0;p=c[b+80>>2]|0;if((c[b+8>>2]|0)!=8){Ub(j,1,9037,z)|0;j=0;i=z;return j|0}if(!(f|e|g|h)){Ub(j,4,9116,z+8|0)|0;c[b+28>>2]=0;c[b+32>>2]=0;c[b+36>>2]=c[b+112>>2];c[b+40>>2]=c[b+116>>2];j=1;i=z;return j|0}t=p+8|0;k=c[t>>2]|0;if(k>>>0>>0){c[l>>2]=e;c[l+4>>2]=k;Ub(j,1,9185,l)|0;j=0;i=z;return j|0}k=c[p>>2]|0;if(k>>>0>e>>>0){c[m>>2]=e;c[m+4>>2]=k;Ub(j,2,9272,m)|0;k=0;e=c[p>>2]|0}else k=((e-(c[b+92>>2]|0)|0)>>>0)/((c[b+100>>2]|0)>>>0)|0;c[b+28>>2]=k;c[d>>2]=e;q=p+12|0;e=c[q>>2]|0;if(e>>>0>>0){c[n>>2]=f;c[n+4>>2]=e;Ub(j,1,9360,n)|0;j=0;i=z;return j|0}l=p+4|0;e=c[l>>2]|0;if(e>>>0>f>>>0){c[o>>2]=f;c[o+4>>2]=e;Ub(j,2,9445,o)|0;e=0;f=c[l>>2]|0}else e=((f-(c[b+96>>2]|0)|0)>>>0)/((c[b+104>>2]|0)>>>0)|0;c[b+32>>2]=e;m=d+4|0;c[m>>2]=f;e=c[p>>2]|0;if(e>>>0>g>>>0){c[r>>2]=g;c[r+4>>2]=e;Ub(j,1,9531,r)|0;j=0;i=z;return j|0}e=c[t>>2]|0;if(e>>>0>>0){c[s>>2]=g;c[s+4>>2]=e;Ub(j,2,9620,s)|0;e=c[b+112>>2]|0;g=c[t>>2]|0}else{e=c[b+100>>2]|0;e=(g+-1-(c[b+92>>2]|0)+e|0)/(e|0)|0}c[b+36>>2]=e;k=d+8|0;c[k>>2]=g;g=c[l>>2]|0;if(g>>>0>h>>>0){c[u>>2]=h;c[u+4>>2]=g;Ub(j,1,9708,u)|0;j=0;i=z;return j|0}g=c[q>>2]|0;if(g>>>0>>0){c[v>>2]=h;c[v+4>>2]=g;Ub(j,2,9798,v)|0;e=c[q>>2]|0;g=c[b+116>>2]|0}else{g=c[b+104>>2]|0;e=h;g=(h+-1-(c[b+96>>2]|0)+g|0)/(g|0)|0}c[b+40>>2]=g;h=d+12|0;c[h>>2]=e;v=b+76|0;a[v>>0]=a[v>>0]|2;v=c[d+16>>2]|0;b=c[d>>2]|0;a:do if(v){f=c[m>>2]|0;t=f+-1|0;u=c[k>>2]|0;q=u+-1|0;r=b+-1|0;g=0;p=c[d+24>>2]|0;while(1){d=c[p>>2]|0;e=(r+d|0)/(d|0)|0;c[p+16>>2]=e;o=c[p+4>>2]|0;k=(t+o|0)/(o|0)|0;c[p+20>>2]=k;d=(q+d|0)/(d|0)|0;l=c[p+40>>2]|0;m=Ri(1,0,l|0)|0;n=C;d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;d=Si(d|0,C|0,m|0,n|0)|0;d=Pi(d|0,C|0,l|0)|0;e=Si(e|0,((e|0)<0)<<31>>31|0,-1,-1)|0;e=Si(e|0,C|0,m|0,n|0)|0;e=Pi(e|0,C|0,l|0)|0;e=d-e|0;if((e|0)<0){k=29;break}s=c[h>>2]|0;d=(o+-1+s|0)/(o|0)|0;c[p+8>>2]=e;d=Si(d|0,((d|0)<0)<<31>>31|0,-1,-1)|0;d=Si(d|0,C|0,m|0,n|0)|0;d=Pi(d|0,C|0,l|0)|0;e=Si(k|0,((k|0)<0)<<31>>31|0,-1,-1)|0;e=Si(e|0,C|0,m|0,n|0)|0;e=Pi(e|0,C|0,l|0)|0;e=d-e|0;if((e|0)<0){k=31;break}c[p+12>>2]=e;g=g+1|0;if(g>>>0>=v>>>0){e=u;g=s;break a}else p=p+52|0}if((k|0)==29){c[w>>2]=g;c[w+4>>2]=e;Ub(j,1,9887,w)|0;j=0;i=z;return j|0}else if((k|0)==31){c[x>>2]=g;c[x+4>>2]=e;Ub(j,1,9956,x)|0;j=0;i=z;return j|0}}else{f=c[m>>2]|0;e=c[k>>2]|0;g=c[h>>2]|0}while(0);c[y>>2]=b;c[y+4>>2]=f;c[y+8>>2]=e;c[y+12>>2]=g;Ub(j,4,10025,y)|0;j=1;i=z;return j|0}function fd(){var b=0,d=0,e=0;b=Qc(1,208)|0;if(!b){d=0;return d|0}c[b>>2]=1;d=b+184|0;a[d>>0]=a[d>>0]|2;d=Qc(1,5640)|0;c[b+12>>2]=d;if(!d){Yc(b);d=0;return d|0}d=Qc(1,1e3)|0;c[b+16>>2]=d;if(!d){Yc(b);d=0;return d|0}c[b+20>>2]=1e3;c[b+60>>2]=-1;d=b+64|0;c[d>>2]=0;c[d+4>>2]=0;d=Qc(1,48)|0;do if(d){c[d+32>>2]=100;c[d+24>>2]=0;e=Qc(100,24)|0;c[d+28>>2]=e;if(!e){Uc(d);break}c[d+40>>2]=0;c[b+196>>2]=d;e=qg()|0;c[b+192>>2]=e;if(!e){Yc(b);e=0;return e|0}e=qg()|0;c[b+188>>2]=e;if(e){e=b;return e|0}Yc(b);e=0;return e|0}while(0);c[b+196>>2]=0;Yc(b);e=0;return e|0}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+128|0;s=t+104|0;r=t+72|0;q=t+64|0;n=t+40|0;l=t+24|0;j=t+16|0;h=t+8|0;g=t;if(b&384){ki(10063,11,1,d)|0;i=t;return}if((b&1|0)!=0?(f=c[a+80>>2]|0,(f|0)!=0):0)hd(f,0,d);if(b&2){ki(10075,36,1,d)|0;f=c[a+96>>2]|0;c[g>>2]=c[a+92>>2];c[g+4>>2]=f;$h(d,10112,g)|0;g=c[a+104>>2]|0;c[h>>2]=c[a+100>>2];c[h+4>>2]=g;$h(d,10130,h)|0;h=c[a+116>>2]|0;c[j>>2]=c[a+112>>2];c[j+4>>2]=h;$h(d,10148,j)|0;xd(c[a+12>>2]|0,c[(c[a+80>>2]|0)+16>>2]|0,d);ki(10164,2,1,d)|0}if((b&8|0)!=0?(k=_(c[a+112>>2]|0,c[a+116>>2]|0)|0,(k|0)!=0):0){f=a+80|0;g=0;h=c[a+164>>2]|0;while(1){xd(h,c[(c[f>>2]|0)+16>>2]|0,d);g=g+1|0;if((g|0)==(k|0))break;else h=h+5640|0}}if(!(b&16)){i=t;return}j=c[a+196>>2]|0;ki(10167,37,1,d)|0;k=j;b=c[k+4>>2]|0;f=j+8|0;a=c[f>>2]|0;f=c[f+4>>2]|0;h=l;c[h>>2]=c[k>>2];c[h+4>>2]=b;h=l+8|0;c[h>>2]=a;c[h+4>>2]=f;$h(d,10205,l)|0;ki(10272,17,1,d)|0;h=j+28|0;f=c[h>>2]|0;a:do if((f|0)!=0?(m=j+24|0,(c[m>>2]|0)!=0):0){g=0;while(1){b=f+(g*24|0)+8|0;k=c[b>>2]|0;b=c[b+4>>2]|0;l=c[f+(g*24|0)+16>>2]|0;c[n>>2]=e[f+(g*24|0)>>1];a=n+8|0;c[a>>2]=k;c[a+4>>2]=b;c[n+16>>2]=l;$h(d,10290,n)|0;g=g+1|0;if(g>>>0>=(c[m>>2]|0)>>>0)break a;f=c[h>>2]|0}}while(0);ki(10321,4,1,d)|0;b=j+40|0;h=c[b>>2]|0;if((h|0)!=0?(p=j+36|0,o=c[p>>2]|0,(o|0)!=0):0){g=0;f=0;do{f=(c[h+(g*40|0)+4>>2]|0)+f|0;g=g+1|0}while((g|0)!=(o|0));if(f){ki(10326,16,1,d)|0;if(c[p>>2]|0){f=c[b>>2]|0;k=0;do{j=c[f+(k*40|0)+4>>2]|0;c[q>>2]=k;c[q+4>>2]=j;$h(d,10343,q)|0;f=c[b>>2]|0;g=c[f+(k*40|0)+16>>2]|0;b:do if(!((j|0)==0|(g|0)==0)){f=0;while(1){a=g+(f*24|0)|0;u=c[a>>2]|0;a=c[a+4>>2]|0;m=g+(f*24|0)+8|0;l=c[m>>2]|0;m=c[m+4>>2]|0;o=g+(f*24|0)+16|0;n=c[o>>2]|0;o=c[o+4>>2]|0;c[r>>2]=f;h=r+8|0;c[h>>2]=u;c[h+4>>2]=a;h=r+16|0;c[h>>2]=l;c[h+4>>2]=m;h=r+24|0;c[h>>2]=n;c[h+4>>2]=o;$h(d,10379,r)|0;h=f+1|0;f=c[b>>2]|0;if((h|0)==(j|0))break b;g=c[f+(k*40|0)+16>>2]|0;f=h}}while(0);g=c[f+(k*40|0)+24>>2]|0;c:do if((g|0)!=0?(c[f+(k*40|0)+20>>2]|0)!=0:0){f=0;while(1){o=g+(f*24|0)+8|0;n=c[o>>2]|0;o=c[o+4>>2]|0;h=c[g+(f*24|0)+16>>2]|0;c[s>>2]=e[g+(f*24|0)>>1];u=s+8|0;c[u>>2]=n;c[u+4>>2]=o;c[s+16>>2]=h;$h(d,10290,s)|0;h=f+1|0;f=c[b>>2]|0;if(h>>>0>=(c[f+(k*40|0)+20>>2]|0)>>>0)break c;g=c[f+(k*40|0)+24>>2]|0;f=h}}while(0);k=k+1|0}while(k>>>0<(c[p>>2]|0)>>>0)}ki(10321,4,1,d)|0}}ki(10164,2,1,d)|0;i=t;return}function hd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+64|0;m=n+48|0;l=n+40|0;j=n+32|0;h=n+16|0;g=n;k=n+52|0;if(!d){ki(10482,13,1,e)|0;a[k+1>>0]=0;f=9}else{ki(10445,36,1,c[676]|0)|0;f=0}a[k>>0]=f;o=c[b>>2]|0;f=c[b+4>>2]|0;c[g>>2]=k;c[g+4>>2]=o;c[g+8>>2]=f;$h(e,10496,g)|0;g=c[b+8>>2]|0;f=c[b+12>>2]|0;c[h>>2]=k;c[h+4>>2]=g;c[h+8>>2]=f;$h(e,10513,h)|0;h=b+16|0;f=c[h>>2]|0;c[j>>2]=k;c[j+4>>2]=f;$h(e,10530,j)|0;f=b+24|0;if(!(c[f>>2]|0)){ki(10164,2,1,e)|0;i=n;return}if(!(c[h>>2]|0)){ki(10164,2,1,e)|0;i=n;return}else g=0;do{c[l>>2]=k;c[l+4>>2]=g;$h(e,10546,l)|0;id((c[f>>2]|0)+(g*52|0)|0,d,e);c[m>>2]=k;$h(e,10566,m)|0;g=g+1|0}while(g>>>0<(c[h>>2]|0)>>>0);ki(10164,2,1,e)|0;i=n;return}function id(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+48|0;k=l+24|0;j=l+16|0;h=l;g=l+32|0;f=(d|0)!=0;if(f){ki(10571,41,1,c[676]|0)|0;d=0}else{a[g+1>>0]=9;a[g+2>>0]=0;d=9}a[g>>0]=d;m=c[b>>2]|0;d=c[b+4>>2]|0;c[h>>2]=g;c[h+4>>2]=m;c[h+8>>2]=d;$h(e,10613,h)|0;h=c[b+24>>2]|0;c[j>>2]=g;c[j+4>>2]=h;$h(e,10630,j)|0;j=c[b+32>>2]|0;c[k>>2]=g;c[k+4>>2]=j;$h(e,10642,k)|0;if(!f){i=l;return}ki(10164,2,1,e)|0;i=l;return}function jd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;e=m;b=a+80|0;k=c[(c[b>>2]|0)+16>>2]|0;d=Qc(1,56)|0;c[e>>2]=d;if(!d){l=0;i=m;return l|0}c[d+24>>2]=c[(c[b>>2]|0)+16>>2];c[d>>2]=c[a+92>>2];c[d+4>>2]=c[a+96>>2];c[d+8>>2]=c[a+100>>2];c[d+12>>2]=c[a+104>>2];c[d+16>>2]=c[a+112>>2];c[d+20>>2]=c[a+116>>2];c[d+52>>2]=0;d=c[a+12>>2]|0;b=c[e>>2]|0;c[b+32>>2]=c[d>>2];c[b+36>>2]=c[d+4>>2];c[b+40>>2]=c[d+8>>2];c[b+44>>2]=c[d+16>>2];c[b+48>>2]=Qc(c[b+24>>2]|0,1080)|0;b=c[e>>2]|0;j=b+48|0;a=c[j>>2]|0;if(!a){Cc(e);l=0;i=m;return l|0}if(!k){l=b;i=m;return l|0}h=d+5584|0;d=0;while(1){g=c[h>>2]|0;c[a+(d*1080|0)+4>>2]=c[g+(d*1080|0)>>2];e=g+(d*1080|0)+4|0;f=c[e>>2]|0;c[a+(d*1080|0)+8>>2]=f;c[a+(d*1080|0)+12>>2]=c[g+(d*1080|0)+8>>2];c[a+(d*1080|0)+16>>2]=c[g+(d*1080|0)+12>>2];c[a+(d*1080|0)+20>>2]=c[g+(d*1080|0)+16>>2];c[a+(d*1080|0)+24>>2]=c[g+(d*1080|0)+20>>2];if(f>>>0<33){Ui(a+(d*1080|0)+948|0,g+(d*1080|0)+944|0,f|0)|0;Ui(a+(d*1080|0)+816|0,g+(d*1080|0)+812|0,c[e>>2]|0)|0}f=c[g+(d*1080|0)+24>>2]|0;c[a+(d*1080|0)+28>>2]=f;c[a+(d*1080|0)+808>>2]=c[g+(d*1080|0)+804>>2];if((f|0)!=1){f=(c[e>>2]|0)*3|0;e=f+-2|0;if((e|0)<97&(f|0)>2)l=10}else{e=1;l=10}if((l|0)==10){l=0;f=0;do{c[a+(d*1080|0)+32+(f<<2)>>2]=c[g+(d*1080|0)+28+(f<<3)+4>>2];c[a+(d*1080|0)+420+(f<<2)>>2]=c[g+(d*1080|0)+28+(f<<3)>>2];f=f+1|0}while((f|0)!=(e|0))}c[a+(d*1080|0)+812>>2]=c[g+(d*1080|0)+808>>2];d=d+1|0;if((d|0)==(k|0))break;a=c[j>>2]|0}i=m;return b|0}function kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=Qc(1,48)|0;if(!b){k=0;return k|0}h=a+196|0;d=c[h>>2]|0;i=d;k=c[i+4>>2]|0;a=b;c[a>>2]=c[i>>2];c[a+4>>2]=k;a=d+8|0;k=c[a+4>>2]|0;i=b+8|0;c[i>>2]=c[a>>2];c[i+4>>2]=k;i=d+16|0;k=c[i+4>>2]|0;a=b+16|0;c[a>>2]=c[i>>2];c[a+4>>2]=k;d=c[d+24>>2]|0;a=b+24|0;c[a>>2]=d;d=Pc(d*24|0)|0;k=b+28|0;c[k>>2]=d;if(!d){Uc(b);k=0;return k|0}e=c[(c[h>>2]|0)+28>>2]|0;if(!e){Uc(d);c[k>>2]=0}else Ui(d|0,e|0,(c[a>>2]|0)*24|0)|0;a=c[(c[h>>2]|0)+36>>2]|0;g=b+36|0;c[g>>2]=a;a=Qc(a,40)|0;i=b+40|0;c[i>>2]=a;if(!a){Uc(c[k>>2]|0);Uc(b);k=0;return k|0}d=c[(c[h>>2]|0)+40>>2]|0;if(!d){Uc(a);c[i>>2]=0;k=b;return k|0}if(!(c[g>>2]|0)){k=b;return k|0}d=c[d+20>>2]|0;c[a+20>>2]=d;d=Pc(d*24|0)|0;a=c[i>>2]|0;c[a+24>>2]=d;a:do if(!d)d=0;else{f=d;d=0;while(1){e=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+24>>2]|0;if(!e){Uc(f);a=c[i>>2]|0;c[a+(d*40|0)+24>>2]=0}else{Ui(f|0,e|0,(c[a+(d*40|0)+20>>2]|0)*24|0)|0;a=c[i>>2]|0}e=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+4>>2]|0;c[a+(d*40|0)+4>>2]=e;e=Pc(e*24|0)|0;a=c[i>>2]|0;c[a+(d*40|0)+16>>2]=e;if(!e)break;f=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+16>>2]|0;if(!f){Uc(e);a=c[i>>2]|0;c[a+(d*40|0)+16>>2]=0}else{Ui(e|0,f|0,(c[a+(d*40|0)+4>>2]|0)*24|0)|0;a=c[i>>2]|0}c[a+(d*40|0)+32>>2]=0;c[a+(d*40|0)+36>>2]=0;d=d+1|0;if(d>>>0>=(c[g>>2]|0)>>>0){j=32;break}f=c[(c[(c[h>>2]|0)+40>>2]|0)+(d*40|0)+20>>2]|0;c[a+(d*40|0)+20>>2]=f;f=Pc(f*24|0)|0;a=c[i>>2]|0;c[a+(d*40|0)+24>>2]=f;if(!f)break a}if((j|0)==32)return b|0;if(d){Uc(c[a+24>>2]|0);Uc(c[(c[i>>2]|0)+16>>2]|0);if((d|0)!=1){a=1;do{Uc(c[(c[i>>2]|0)+(a*40|0)+24>>2]|0);Uc(c[(c[i>>2]|0)+(a*40|0)+16>>2]|0);a=a+1|0}while((a|0)!=(d|0))}a=c[i>>2]|0}Uc(a);Uc(c[k>>2]|0);Uc(b);k=0;return k|0}while(0);if(d){Uc(c[a+24>>2]|0);if((d|0)!=1){a=1;do{Uc(c[(c[i>>2]|0)+(a*40|0)+24>>2]|0);a=a+1|0}while((a|0)!=(d|0))}a=c[i>>2]|0}Uc(a);Uc(c[k>>2]|0);Uc(b);k=0;return k|0}function ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if(!d){d=0;return d|0}f=Xb()|0;k=a+84|0;c[k>>2]=f;if(!f){d=0;return d|0}$b(d,f);h=a+188|0;sg(c[h>>2]|0,27,e)|0;h=c[h>>2]|0;i=tg(h)|0;f=ug(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=(Ra[c[f>>2]&63](a,b,e)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}vg(h);if(!g){d=a+80|0;Zb(c[d>>2]|0);c[d>>2]=0;d=0;return d|0}}else vg(h);i=c[d+16>>2]|0;if(!i){d=1;return d|0}h=c[(c[k>>2]|0)+24>>2]|0;f=c[d+24>>2]|0;g=0;do{c[f+(g*52|0)+36>>2]=c[h+(g*52|0)+36>>2];d=h+(g*52|0)+44|0;c[f+(g*52|0)+44>>2]=c[d>>2];c[d>>2]=0;g=g+1|0}while(g>>>0>>0);f=1;return f|0}function md(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;t=i;i=i+16|0;j=t+8|0;if(!d){Ub(e,1,10654,t)|0;s=0;i=t;return s|0}g=c[a+112>>2]|0;h=_(c[a+116>>2]|0,g)|0;if(h>>>0<=f>>>0){c[j>>2]=f;c[j+4>>2]=h+-1;Ub(e,1,10692,j)|0;s=0;i=t;return s|0}s=(f>>>0)%(g>>>0)|0;r=(f>>>0)/(g>>>0)|0;j=c[a+100>>2]|0;h=_(j,s)|0;k=c[a+92>>2]|0;h=h+k|0;c[d>>2]=h;q=a+80|0;g=c[q>>2]|0;l=c[g>>2]|0;h=h>>>0>>0?l:h;c[d>>2]=h;k=(_(j,s+1|0)|0)+k|0;s=d+8|0;c[s>>2]=k;j=c[g+8>>2]|0;k=k>>>0>j>>>0?j:k;c[s>>2]=k;s=c[a+104>>2]|0;j=_(s,r)|0;l=c[a+96>>2]|0;j=j+l|0;p=d+4|0;c[p>>2]=j;o=c[g+4>>2]|0;j=j>>>0>>0?o:j;c[p>>2]=j;l=(_(s,r+1|0)|0)+l|0;r=d+12|0;c[r>>2]=l;s=c[g+12>>2]|0;l=l>>>0>s>>>0?s:l;c[r>>2]=l;r=d+24|0;s=d+16|0;p=c[s>>2]|0;if(p){o=c[g+24>>2]|0;n=h+-1|0;m=j+-1|0;k=k+-1|0;g=l+-1|0;h=0;j=c[r>>2]|0;while(1){l=c[o+(h*52|0)+40>>2]|0;c[j+40>>2]=l;z=c[j>>2]|0;y=(n+z|0)/(z|0)|0;c[j+16>>2]=y;u=c[j+4>>2]|0;x=(m+u|0)/(u|0)|0;c[j+20>>2]=x;z=(k+z|0)/(z|0)|0;u=(g+u|0)/(u|0)|0;w=Ri(1,0,l|0)|0;v=C;z=Si(z|0,((z|0)<0)<<31>>31|0,-1,-1)|0;z=Si(z|0,C|0,w|0,v|0)|0;z=Pi(z|0,C|0,l|0)|0;y=Si(y|0,((y|0)<0)<<31>>31|0,-1,-1)|0;y=Si(y|0,C|0,w|0,v|0)|0;y=Pi(y|0,C|0,l|0)|0;c[j+8>>2]=z-y;u=Si(u|0,((u|0)<0)<<31>>31|0,-1,-1)|0;u=Si(u|0,C|0,w|0,v|0)|0;u=Pi(u|0,C|0,l|0)|0;x=Si(x|0,((x|0)<0)<<31>>31|0,-1,-1)|0;v=Si(x|0,C|0,w|0,v|0)|0;l=Pi(v|0,C|0,l|0)|0;c[j+12>>2]=u-l;h=h+1|0;if(h>>>0>=p>>>0)break;else j=j+52|0}}m=a+84|0;g=c[m>>2]|0;if(g)Zb(g);g=Xb()|0;c[m>>2]=g;if(!g){z=0;i=t;return z|0}$b(d,g);c[a+60>>2]=f;j=a+188|0;sg(c[j>>2]|0,28,e)|0;j=c[j>>2]|0;k=tg(j)|0;g=ug(j)|0;if(k){l=0;h=1;while(1){if(!h)h=0;else h=(Ra[c[g>>2]&63](a,b,e)|0)!=0;l=l+1|0;if((l|0)==(k|0))break;else{g=g+4|0;h=h&1}}vg(j);if(!h){Zb(c[q>>2]|0);c[q>>2]=0;z=0;i=t;return z|0}}else vg(j);g=c[s>>2]|0;if(!g){z=1;i=t;return z|0}k=c[(c[m>>2]|0)+24>>2]|0;j=c[r>>2]|0;l=0;while(1){c[j+(l*52|0)+36>>2]=c[k+(l*52|0)+36>>2];h=c[j+(l*52|0)+44>>2]|0;if(!h)h=k;else{Uc(h);h=c[(c[m>>2]|0)+24>>2]|0;j=c[r>>2]|0;g=c[s>>2]|0}z=h+(l*52|0)+44|0;c[j+(l*52|0)+44>>2]=c[z>>2];c[z>>2]=0;l=l+1|0;if(l>>>0>=g>>>0){g=1;break}else k=h}i=t;return g|0}function nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;c[a+168>>2]=b;e=c[a+80>>2]|0;a:do if((((e|0)!=0?(h=c[e+24>>2]|0,(h|0)!=0):0)?(f=c[a+12>>2]|0,(f|0)!=0):0)?(g=c[f+5584>>2]|0,(g|0)!=0):0){e=c[e+16>>2]|0;if(!e)e=1;else{f=0;while(1){if((c[g+(f*1080|0)+4>>2]|0)>>>0<=b>>>0)break;c[h+(f*52|0)+40>>2]=b;f=f+1|0;if(f>>>0>=e>>>0){e=1;break a}}Ub(d,1,10753,j)|0;e=0}}else e=0;while(0);i=k;return e|0}function od(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,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;Q=i;i=i+48|0;O=Q+32|0;N=Q+24|0;M=Q+16|0;K=Q+8|0;L=Q;A=d+204|0;g=c[A>>2]|0;F=d+116|0;G=d+112|0;H=_(c[G>>2]|0,c[F>>2]|0)|0;I=(H|0)==1;if(!H){P=1;i=Q;return P|0}J=d+200|0;B=d+12|0;C=d+164|0;D=d+8|0;E=g+20|0;y=g+24|0;z=0;g=0;l=0;a:while(1){if((c[J>>2]|0)!=(z|0)){P=5;break}w=z;z=z+1|0;x=_(c[F>>2]|0,c[G>>2]|0)|0;c[K>>2]=z;c[K+4>>2]=x;Ub(f,4,10866,K)|0;c[B>>2]=0;x=c[A>>2]|0;c[x+12>>2]=c[(c[C>>2]|0)+(w*5640|0)+5588>>2];c[D>>2]=0;if(!(_f(x,c[J>>2]|0,f)|0))break;h=c[A>>2]|0;if(c[(c[h+24>>2]|0)+16>>2]|0){k=0;do{j=c[(c[c[E>>2]>>2]|0)+20>>2]|0;if(I){c[j+(k*52|0)+32>>2]=c[(c[(c[y>>2]|0)+24>>2]|0)+(k*52|0)+44>>2];c[j+(k*52|0)+36>>2]=0}else{if(!(Zf(j+(k*52|0)|0)|0)){P=14;break a}h=c[A>>2]|0}k=k+1|0}while(k>>>0<(c[(c[h+24>>2]|0)+16>>2]|0)>>>0)}x=eg(h)|0;if(!I){if(x>>>0>l>>>0){h=Tc(g,x)|0;if(!h){P=20;break}else{g=h;h=x}}else h=l;j=c[A>>2]|0;w=j+24|0;k=c[w>>2]|0;if(c[k+16>>2]|0){v=j+20|0;j=g;u=0;do{r=c[(c[c[v>>2]>>2]|0)+20>>2]|0;m=c[k+24>>2]|0;q=c[m+(u*52|0)+24>>2]|0;q=((q&7|0)!=0&1)+(q>>>3)|0;n=c[r+(u*52|0)+8>>2]|0;o=c[r+(u*52|0)>>2]|0;t=n-o|0;p=c[r+(u*52|0)+12>>2]|0;r=c[r+(u*52|0)+4>>2]|0;T=c[k>>2]|0;S=c[m+(u*52|0)>>2]|0;l=c[m+(u*52|0)+4>>2]|0;R=(S+~T+(c[k+8>>2]|0)|0)/(S|0)|0;s=R-t|0;k=o-((T+-1+S|0)/(S|0)|0)+(_(R,r-(((c[k+4>>2]|0)+-1+l|0)/(l|0)|0)|0)|0)|0;k=(c[m+(u*52|0)+44>>2]|0)+(k<<2)|0;b:do switch(((q|0)==3?4:q)|0){case 1:{l=(p|0)==(r|0);if(!(c[m+(u*52|0)+32>>2]|0)){if(l)break b;q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){a[m>>0]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+1|0;n=n+4|0}}j=j+t|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}else{if(l)break b;q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){a[m>>0]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+1|0;n=n+4|0}}j=j+t|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}case 2:{l=(p|0)==(r|0);if(!(c[m+(u*52|0)+32>>2]|0)){if(!l){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){b[m>>1]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+2|0;n=n+4|0}}j=j+(t<<1)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}}else if(!l){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){b[m>>1]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+2|0;n=n+4|0}}j=j+(t<<1)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}case 4:{if((p|0)!=(r|0)){q=(n|0)==(o|0);o=p-r|0;p=0;while(1){if(!q){l=0;m=j;n=k;while(1){c[m>>2]=c[n>>2];l=l+1|0;if((l|0)==(t|0))break;else{m=m+4|0;n=n+4|0}}j=j+(t<<2)|0;k=k+(t<<2)|0}p=p+1|0;if((p|0)==(o|0))break;else k=k+(s<<2)|0}}break}default:{}}while(0);u=u+1|0;k=c[w>>2]|0}while(u>>>0<(c[k+16>>2]|0)>>>0);j=c[A>>2]|0}if(!(fg(j,g,x)|0)){P=63;break}}else h=l;if(!(Ad(d,e,f)|0)){P=65;break}if(z>>>0>=H>>>0){P=67;break}else l=h}if((P|0)==5)Ub(f,1,10829,L)|0;else if((P|0)==14){Ub(f,1,10887,M)|0;if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}else if((P|0)==20){if(g)Uc(g);Ub(f,1,10925,N)|0;T=0;i=Q;return T|0}else if((P|0)==63){Ub(f,1,10964,O)|0;Uc(g);T=0;i=Q;return T|0}else if((P|0)==65){if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}else if((P|0)==67){if(!g){T=1;i=Q;return T|0}Uc(g);T=1;i=Q;return T|0}if(!g){T=0;i=Q;return T|0}Uc(g);T=0;i=Q;return T|0}function pd(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=a+188|0;if(!(sg(c[f>>2]|0,29,e)|0)){d=0;return d|0}if(((b[a+88>>1]|0)+-3&65535)<4?(sg(c[f>>2]|0,30,e)|0)==0:0){d=0;return d|0}if(!(sg(c[f>>2]|0,31,e)|0)){d=0;return d|0}if(!(sg(c[f>>2]|0,32,e)|0)){d=0;return d|0}if(!(sg(c[f>>2]|0,33,e)|0)){d=0;return d|0}j=c[f>>2]|0;h=tg(j)|0;f=ug(j)|0;if(!h)f=1;else{i=0;g=f;f=1;while(1){if(!f)f=0;else f=(Ra[c[g>>2]&63](a,d,e)|0)!=0;f=f&1;i=i+1|0;if((i|0)==(h|0))break;else g=g+4|0}}vg(j);d=f;return d|0}function qd(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;g=Xb()|0;k=a+80|0;c[k>>2]=g;if(!g){Ub(f,1,11011,m)|0;d=0;i=m;return d|0}$b(e,g);j=c[e+24>>2]|0;if((j|0)!=0?(l=c[e+16>>2]|0,(l|0)!=0):0){h=0;do{e=j+(h*52|0)+44|0;g=c[e>>2]|0;if(g){c[(c[(c[k>>2]|0)+24>>2]|0)+(h*52|0)+44>>2]=g;c[e>>2]=0}h=h+1|0}while(h>>>0>>0)}g=a+192|0;if(!(sg(c[g>>2]|0,34,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,35,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,36,f)|0)){d=0;i=m;return d|0}h=c[g>>2]|0;j=tg(h)|0;g=ug(h)|0;if(j){k=0;e=1;while(1){if(!e)e=0;else e=(Ra[c[g>>2]&63](a,d,f)|0)!=0;k=k+1|0;if((k|0)==(j|0))break;else{g=g+4|0;e=e&1}}vg(h);if(!e){d=0;i=m;return d|0}}else vg(h);g=a+188|0;if(!(sg(c[g>>2]|0,37,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,38,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,39,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,40,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,41,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,42,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,43,f)|0)){d=0;i=m;return d|0}e=a+88|0;if(((b[e>>1]|0)+-3&65535)<4){if(!(sg(c[g>>2]|0,44,f)|0)){d=0;i=m;return d|0}if((b[e>>1]|0)==4?(sg(c[g>>2]|0,45,f)|0)==0:0){d=0;i=m;return d|0}}if(!(sg(c[g>>2]|0,46,f)|0)){d=0;i=m;return d|0}if((c[a+108>>2]|0)!=0?(sg(c[g>>2]|0,47,f)|0)==0:0){d=0;i=m;return d|0}if((b[e>>1]&256)!=0?(sg(c[g>>2]|0,48,f)|0)==0:0){d=0;i=m;return d|0}if((c[a+196>>2]|0)!=0?(sg(c[g>>2]|0,49,f)|0)==0:0){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,50,f)|0)){d=0;i=m;return d|0}if(!(sg(c[g>>2]|0,51,f)|0)){d=0;i=m;return d|0}k=c[g>>2]|0;h=tg(k)|0;g=ug(k)|0;if(!h)g=1;else{j=0;e=g;g=1;while(1){if(!g)g=0;else g=(Ra[c[e>>2]&63](a,d,f)|0)!=0;g=g&1;j=j+1|0;if((j|0)==(h|0))break;else e=e+4|0}}vg(k);d=g;i=m;return d|0}function rd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;o=q+40|0;p=q+32|0;n=q+24|0;l=q+16|0;j=q+8|0;h=q;k=a+200|0;if((c[k>>2]|0)==(b|0)){m=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[j>>2]=b+1;c[j+4>>2]=m;Ub(g,4,10866,j)|0;c[a+12>>2]=0;m=a+204|0;j=c[m>>2]|0;c[j+12>>2]=c[(c[a+164>>2]|0)+(b*5640|0)+5588>>2];c[a+8>>2]=0;if(_f(j,c[k>>2]|0,g)|0){h=c[m>>2]|0;a:do if(c[(c[h+24>>2]|0)+16>>2]|0){j=0;while(1){if(!(Zf((c[(c[c[h+20>>2]>>2]|0)+20>>2]|0)+(j*52|0)|0)|0))break;j=j+1|0;h=c[m>>2]|0;if(j>>>0>=(c[(c[h+24>>2]|0)+16>>2]|0)>>>0)break a}Ub(g,1,10887,n)|0;p=0;i=q;return p|0}while(0);if(!(fg(h,d,e)|0)){Ub(g,1,10964,p)|0;p=0;i=q;return p|0}if(Ad(a,f,g)|0){p=1;i=q;return p|0}c[o>>2]=b;Ub(g,1,11101,o)|0;p=0;i=q;return p|0}}else Ub(g,1,10829,h)|0;c[l>>2]=b;Ub(g,1,11044,l)|0;p=0;i=q;return p|0}function sd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;if(!a)return;f=a+5164|0;b=c[f>>2]|0;if(b){g=a+5160|0;d=c[g>>2]|0;if(d){e=0;while(1){b=c[b+(e<<3)>>2]|0;if(b){Uc(b);d=c[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;b=c[f>>2]|0}b=c[f>>2]|0}c[g>>2]=0;Uc(b);c[f>>2]=0}b=a+5172|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5584|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5608|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5604|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5624|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0;c[a+5632>>2]=0;c[a+5628>>2]=0}i=a+5612|0;b=c[i>>2]|0;if(b){h=a+5616|0;d=c[h>>2]|0;if(d){g=0;while(1){e=b+12|0;f=c[e>>2]|0;if(f){Uc(f);c[e>>2]=0;d=c[h>>2]|0}g=g+1|0;if(g>>>0>=d>>>0)break;else b=b+20|0}b=c[i>>2]|0}Uc(b);c[i>>2]=0}b=a+5600|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}b=a+5592|0;d=c[b>>2]|0;if(!d)return;Uc(d);c[b>>2]=0;c[a+5596>>2]=0;return}function td(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ud(a,b,d){a=a|0;b=b|0;d=d|0;return (c[a+8>>2]|0)==0&(c[a+188>>2]|0)!=0&(c[a+192>>2]|0)!=0&1|0}function vd(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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;Y=i;i=i+224|0;X=Y+200|0;U=Y+192|0;T=Y+184|0;Q=Y+176|0;P=Y+168|0;O=Y+160|0;M=Y+152|0;L=Y+144|0;K=Y+136|0;E=Y+128|0;J=Y+120|0;D=Y+112|0;B=Y+104|0;A=Y+96|0;z=Y+88|0;y=Y+80|0;I=Y+72|0;H=Y+64|0;x=Y+56|0;w=Y+48|0;v=Y+40|0;F=Y+32|0;p=Y+24|0;m=Y+16|0;l=Y+8|0;N=Y;S=Y+216|0;g=Y+204|0;G=Y+212|0;u=Y+208|0;W=d+8|0;c[W>>2]=1;a:do if((Mb(e,S,2,f)|0)==2?(qb(S,g,2),(c[g>>2]|0)==65359):0){c[W>>2]=2;o=Pb(e)|0;o=Si(o|0,C|0,-2,-1)|0;n=C;V=d+196|0;h=c[V>>2]|0;c[h>>2]=o;c[h+4>>2]=n;h=N;c[h>>2]=o;c[h+4>>2]=n;Ub(f,4,15766,N)|0;h=c[V>>2]|0;n=c[h>>2]|0;o=h+24|0;g=c[o>>2]|0;k=h+32|0;j=c[k>>2]|0;do if((g+1|0)>>>0>j>>>0){t=~~(+(j>>>0)+100.0)>>>0;c[k>>2]=t;g=h+28|0;h=Tc(c[g>>2]|0,t*24|0)|0;if(!h){Uc(c[g>>2]|0);c[g>>2]=0;c[k>>2]=0;c[o>>2]=0;Ub(f,1,15803,l)|0;break a}else{c[g>>2]=h;g=c[o>>2]|0;break}}else h=c[h+28>>2]|0;while(0);b[h+(g*24|0)>>1]=-177;s=Pi(0,n|0,32)|0;t=h+(g*24|0)+8|0;c[t>>2]=s;c[t+4>>2]=C;c[h+(g*24|0)+16>>2]=2;c[o>>2]=g+1;t=d+16|0;if((Mb(e,c[t>>2]|0,2,f)|0)!=2){Ub(f,1,8295,p)|0;f=0;i=Y;return f|0}qb(c[t>>2]|0,G,2);g=c[G>>2]|0;if((g|0)!=65424){s=d+20|0;q=0;j=0;r=0;b:while(1){if(g>>>0<65280){R=14;break}else l=784;while(1){h=c[l>>2]|0;k=(h|0)==0;if(k|(h|0)==(g|0))break;else l=l+12|0}if(k){Ub(f,2,15914,v)|0;m=2;c:while(1){do{if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=20;break b}qb(c[t>>2]|0,N,2);g=c[N>>2]|0}while(g>>>0<65280);l=784;while(1){h=c[l>>2]|0;if((h|0)==0|(h|0)==(g|0)){k=l;g=l;break}else l=l+12|0}if(!(c[g+4>>2]&c[W>>2])){R=25;break b}if((h|0)>=65424){R=100;break}switch(h|0){case 0:break;default:{p=k;o=m;break c}}m=m+2|0}if((R|0)==100){R=0;switch(h|0){case 65424:{h=q;g=r;R=27;break b}default:{p=k;o=m}}}l=c[V>>2]|0;n=Pb(e)|0;n=n-o|0;k=l+24|0;g=c[k>>2]|0;h=l+32|0;m=c[h>>2]|0;if((g+1|0)>>>0>m>>>0){g=~~(+(m>>>0)+100.0)>>>0;c[h>>2]=g;l=l+28|0;g=Tc(c[l>>2]|0,g*24|0)|0;if(!g){j=l;g=l;R=32;break}c[l>>2]=g;h=g;g=c[k>>2]|0}else h=c[l+28>>2]|0;b[h+(g*24|0)>>1]=0;m=h+(g*24|0)+8|0;c[m>>2]=n;c[m+4>>2]=((n|0)<0)<<31>>31;c[h+(g*24|0)+16>>2]=o;c[k>>2]=g+1;g=c[p>>2]|0;c[G>>2]=g;if((g|0)==65424){h=q;g=r;break}else k=784;while(1){h=c[k>>2]|0;if((h|0)==0|(h|0)==(g|0))break;else k=k+12|0}}else k=l;r=(h|0)==65361?1:r;q=(h|0)==65362?1:q;j=(h|0)==65372?1:j;if(!(c[k+4>>2]&c[W>>2])){R=38;break}if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=40;break}qb(c[t>>2]|0,u,2);h=(c[u>>2]|0)+-2|0;c[u>>2]=h;g=c[t>>2]|0;if(h>>>0>(c[s>>2]|0)>>>0){g=Tc(g,h)|0;if(!g){R=43;break}c[t>>2]=g;h=c[u>>2]|0;c[s>>2]=h}g=Mb(e,g,h,f)|0;if((g|0)!=(c[u>>2]|0)){R=46;break}if(!(Za[c[k+8>>2]&63](d,c[t>>2]|0,g,f)|0)){R=48;break}m=c[V>>2]|0;n=c[k>>2]|0;o=Pb(e)|0;p=c[u>>2]|0;o=-4-p+o|0;p=p+4|0;k=m+24|0;g=c[k>>2]|0;h=m+32|0;l=c[h>>2]|0;if((g+1|0)>>>0>l>>>0){g=~~(+(l>>>0)+100.0)>>>0;c[h>>2]=g;l=m+28|0;g=Tc(c[l>>2]|0,g*24|0)|0;if(!g){j=l;g=l;R=53;break}c[l>>2]=g;h=g;g=c[k>>2]|0}else h=c[m+28>>2]|0;b[h+(g*24|0)>>1]=n;n=h+(g*24|0)+8|0;c[n>>2]=o;c[n+4>>2]=((o|0)<0)<<31>>31;c[h+(g*24|0)+16>>2]=p;c[k>>2]=g+1;if((Mb(e,c[t>>2]|0,2,f)|0)!=2){R=55;break}qb(c[t>>2]|0,G,2);g=c[G>>2]|0;if((g|0)==65424){h=q;g=r;break}}switch(R|0){case 14:{c[F>>2]=g;Ub(f,1,15863,F)|0;f=0;i=Y;return f|0}case 20:{Ub(f,1,8295,w)|0;R=34;break}case 25:{Ub(f,1,8339,x)|0;R=34;break}case 27:{c[G>>2]=65424;break}case 32:{Uc(c[g>>2]|0);c[j>>2]=0;c[h>>2]=0;c[k>>2]=0;Ub(f,1,15803,H)|0;R=34;break}case 38:{Ub(f,1,8339,y)|0;f=0;i=Y;return f|0}case 40:{Ub(f,1,8295,z)|0;f=0;i=Y;return f|0}case 43:{Uc(c[t>>2]|0);c[t>>2]=0;c[s>>2]=0;Ub(f,1,8427,A)|0;f=0;i=Y;return f|0}case 46:{Ub(f,1,8295,B)|0;f=0;i=Y;return f|0}case 48:{Ub(f,1,15985,D)|0;f=0;i=Y;return f|0}case 53:{Uc(c[g>>2]|0);c[j>>2]=0;c[h>>2]=0;c[k>>2]=0;Ub(f,1,15803,J)|0;f=0;i=Y;return f|0}case 55:{Ub(f,1,8295,E)|0;f=0;i=Y;return f|0}}if((R|0)==34){Ub(f,1,15930,I)|0;f=0;i=Y;return f|0}if(g){if(!h){Ub(f,1,16090,L)|0;f=0;i=Y;return f|0}if(!j){Ub(f,1,16136,M)|0;f=0;i=Y;return f|0}d:do if(a[d+184>>0]&1){s=d+120|0;do if(c[s>>2]|0){n=d+124|0;o=0;g=0;h=0;e:do{j=c[n>>2]|0;k=c[j+(o<<3)>>2]|0;f:do if(k){l=c[j+(o<<3)+4>>2]|0;j=g>>>0>>0;m=j?0:g-l|0;if((l|0)==(g|0)|j^1)g=m;else{k=j?k+g|0:k;g=l-g|0;while(1){if(g>>>0<4){R=70;break e}qb(k,N,4);j=g+-4|0;g=c[N>>2]|0;h=g+h|0;if(j>>>0>>0)break;if((j|0)==(g|0)){g=m;break f}else{k=k+(g+4)|0;g=j-g|0}}g=g-j|0}}while(0);o=o+1|0}while(o>>>0<(c[s>>2]|0)>>>0);if((R|0)==70){Ub(f,1,16182,O)|0;break}if(!g)R=77;else Ub(f,1,16213,P)|0}else{h=0;R=77}while(0);g:do if((R|0)==77){j=Pc(h)|0;p=d+144|0;c[p>>2]=j;if(!j){Ub(f,1,13302,Q)|0;break}q=d+132|0;c[q>>2]=h;k=c[s>>2]|0;r=d+124|0;do if(k){g=c[r>>2]|0;j=g;o=0;n=0;h=0;h:while(1){l=c[j+(o<<3)>>2]|0;if(!l)l=n;else{j=c[j+(o<<3)+4>>2]|0;g=(c[p>>2]|0)+h|0;i:do if(n>>>0>>0){Ui(g|0,l|0,n|0)|0;h=h+n|0;if((j|0)==(n|0)){l=0;break}m=l+n|0;g=j-n|0;while(1){if(g>>>0<4){R=88;break h}qb(m,S,4);l=m+4|0;k=g+-4|0;j=c[S>>2]|0;g=(c[p>>2]|0)+h|0;if(k>>>0>>0){j=l;break}Ui(g|0,l|0,j|0)|0;g=c[S>>2]|0;h=g+h|0;if((k|0)==(g|0)){l=0;break i}else{m=m+(g+4)|0;g=k-g|0}}Ui(g|0,j|0,k|0)|0;l=(c[S>>2]|0)-k|0;h=k+h|0}else{Ui(g|0,l|0,j|0)|0;l=n-j|0;h=j+h|0}while(0);Uc(c[(c[r>>2]|0)+(o<<3)>>2]|0);j=c[r>>2]|0;c[j+(o<<3)>>2]=0;c[j+(o<<3)+4>>2]=0;k=c[s>>2]|0;g=j}o=o+1|0;if(o>>>0>=k>>>0){R=94;break}else n=l}if((R|0)==88){Ub(f,1,16182,T)|0;break g}else if((R|0)==94){j=c[p>>2]|0;h=c[q>>2]|0;break}}else g=c[r>>2]|0;while(0);c[d+128>>2]=j;c[d+152>>2]=h;c[s>>2]=0;Uc(g);c[r>>2]=0;break d}while(0);Ub(f,1,16236,U)|0;f=0;i=Y;return f|0}while(0);Ub(f,4,16262,X)|0;X=Pb(e)|0;f=(c[V>>2]|0)+8|0;c[f>>2]=X+-2;c[f+4>>2]=0;c[W>>2]=8;f=1;i=Y;return f|0}}Ub(f,1,16044,K)|0;f=0;i=Y;return f|0}while(0);Ub(f,1,15839,m)|0;f=0;i=Y;return f|0}function wd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;G=i;i=i+16|0;F=G;D=c[b+80>>2]|0;E=b+88|0;A=_(c[b+112>>2]|0,c[b+116>>2]|0)|0;q=c[D+16>>2]|0;o=q*1080|0;p=c[b+12>>2]|0;q=_(q<<2,q)|0;a:do if(A){r=p+5604|0;s=p+5620|0;t=p+5612|0;u=p+5616|0;v=p+5632|0;w=p+5624|0;x=p+5584|0;B=0;C=c[b+164>>2]|0;b:while(1){k=C+5584|0;y=c[k>>2]|0;Ui(C|0,p|0,5640)|0;d=C+5636|0;a[d>>0]=a[d>>0]&-4;c[C+5168>>2]=0;d=C+5604|0;c[d>>2]=0;l=C+5620|0;c[l>>2]=0;z=C+5612|0;c[z>>2]=0;m=C+5632|0;c[m>>2]=0;n=C+5624|0;c[n>>2]=0;c[k>>2]=y;if(c[r>>2]|0){f=Pc(q)|0;c[d>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[r>>2]|0,q|0)|0}d=(c[s>>2]|0)*20|0;f=Pc(d)|0;c[z>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[t>>2]|0,d|0)|0;d=c[u>>2]|0;if(d){h=0;j=c[z>>2]|0;k=c[t>>2]|0;while(1){g=k+12|0;if(c[g>>2]|0){d=k+16|0;f=Pc(c[d>>2]|0)|0;c[j+12>>2]=f;if(!f){d=0;f=25;break b}Ui(f|0,c[g>>2]|0,c[d>>2]|0)|0;d=c[u>>2]|0}c[l>>2]=(c[l>>2]|0)+1;h=h+1|0;if(h>>>0>=d>>>0)break;else{j=j+20|0;k=k+20|0}}}d=(c[v>>2]|0)*20|0;f=Pc(d)|0;c[n>>2]=f;if(!f){d=0;f=25;break}Ui(f|0,c[w>>2]|0,d|0)|0;c[m>>2]=c[v>>2];h=c[v>>2]|0;if(h){j=0;f=c[n>>2]|0;g=c[w>>2]|0;while(1){d=c[g+8>>2]|0;if(d)c[f+8>>2]=(c[z>>2]|0)+(((d-(c[t>>2]|0)|0)/20|0)*20|0);d=c[g+12>>2]|0;if(d)c[f+12>>2]=(c[z>>2]|0)+(((d-(c[t>>2]|0)|0)/20|0)*20|0);j=j+1|0;if(j>>>0>=h>>>0)break;else{f=f+20|0;g=g+20|0}}}Ui(y|0,c[x>>2]|0,o|0)|0;B=B+1|0;if(B>>>0>=A>>>0)break a;else C=C+5640|0}if((f|0)==25){i=G;return d|0}}while(0);f=Tf(1)|0;d=b+204|0;c[d>>2]=f;if(!f){e=0;i=G;return e|0}if(Xf(f,D,E)|0){e=1;i=G;return e|0}Yf(c[d>>2]|0);c[d>>2]=0;Ub(e,1,8839,F)|0;e=0;i=G;return e|0}function xd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=i;i=i+128|0;u=w+120|0;t=w+112|0;s=w+104|0;r=w+96|0;q=w+88|0;p=w+80|0;o=w+72|0;n=w+64|0;m=w+56|0;l=w+48|0;k=w+40|0;j=w+32|0;h=w+24|0;g=w+16|0;f=w+8|0;e=w;if(!a){i=w;return}ki(12191,17,1,d)|0;c[e>>2]=c[a>>2];$h(d,12209,e)|0;c[f>>2]=c[a+4>>2];$h(d,12222,f)|0;c[g>>2]=c[a+8>>2];$h(d,12234,g)|0;c[h>>2]=c[a+16>>2];$h(d,12251,h)|0;if((b|0)>0){g=a+5584|0;h=0;do{f=c[g>>2]|0;c[j>>2]=h;$h(d,12262,j)|0;c[k>>2]=c[f+(h*1080|0)>>2];$h(d,12276,k)|0;a=f+(h*1080|0)+4|0;c[l>>2]=c[a>>2];$h(d,12290,l)|0;c[m>>2]=c[f+(h*1080|0)+8>>2];$h(d,12313,m)|0;c[n>>2]=c[f+(h*1080|0)+12>>2];$h(d,12329,n)|0;c[o>>2]=c[f+(h*1080|0)+16>>2];$h(d,12345,o)|0;c[p>>2]=c[f+(h*1080|0)+20>>2];$h(d,12362,p)|0;ki(12377,23,1,d)|0;if(c[a>>2]|0){e=0;do{x=c[f+(h*1080|0)+944+(e<<2)>>2]|0;c[q>>2]=c[f+(h*1080|0)+812+(e<<2)>>2];c[q+4>>2]=x;$h(d,12401,q)|0;e=e+1|0}while(e>>>0<(c[a>>2]|0)>>>0)}ai(10,d)|0;x=f+(h*1080|0)+24|0;c[r>>2]=c[x>>2];$h(d,12410,r)|0;c[s>>2]=c[f+(h*1080|0)+804>>2];$h(d,12425,s)|0;ki(12442,20,1,d)|0;if((c[x>>2]|0)!=1){a=(c[a>>2]|0)*3|0;if((a|0)>2){a=a+-2|0;v=8}}else{a=1;v=8}if((v|0)==8){v=0;e=0;do{x=c[f+(h*1080|0)+28+(e<<3)>>2]|0;c[t>>2]=c[f+(h*1080|0)+28+(e<<3)+4>>2];c[t+4>>2]=x;$h(d,12401,t)|0;e=e+1|0}while((e|0)!=(a|0))}ai(10,d)|0;c[u>>2]=c[f+(h*1080|0)+808>>2];$h(d,12463,u)|0;ki(12480,5,1,d)|0;h=h+1|0}while((h|0)!=(b|0))}ki(10321,4,1,d)|0;i=w;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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;B=i;i=i+80|0;u=B+32|0;v=B+24|0;y=B+16|0;x=B+8|0;o=B+64|0;w=B+60|0;n=B+56|0;q=B+52|0;s=B+48|0;r=B+44|0;t=B+40|0;p=B+36|0;c[o>>2]=1;e=Pc(1e3)|0;if(!e){Ub(d,1,12127,B)|0;d=0;i=B;return d|0}z=a+116|0;A=a+112|0;k=a+204|0;l=a+84|0;m=a+8|0;f=1e3;j=0;while(1){if(!(cd(a,w,n,q,s,r,t,p,o,b,d)|0)){g=5;break}if(!(c[o>>2]|0)){g=17;break}h=c[n>>2]|0;if(h>>>0>f>>>0){f=Tc(e,h)|0;if(!f){g=9;break}else{e=f;g=h}}else g=f;f=c[w>>2]|0;if(!(dd(a,f,e,h,b,d)|0)){g=11;break}f=f+1|0;h=_(c[A>>2]|0,c[z>>2]|0)|0;c[v>>2]=f;c[v+4>>2]=h;Ub(d,4,11986,v)|0;h=c[k>>2]|0;if(!(ce(c[(c[c[h+20>>2]>>2]|0)+20>>2]|0,c[h+24>>2]|0,e,c[(c[l>>2]|0)+24>>2]|0)|0)){g=13;break}c[u>>2]=f;Ub(d,4,12016,u)|0;h=Qb(b)|0;if((h|0)==0&(C|0)==0?(c[m>>2]|0)==64:0){g=17;break}j=j+1|0;if((j|0)==(_(c[A>>2]|0,c[z>>2]|0)|0)){g=17;break}else f=g}if((g|0)==5){Uc(e);d=0;i=B;return d|0}else if((g|0)==9){Uc(e);A=_(c[A>>2]|0,c[z>>2]|0)|0;c[x>>2]=(c[w>>2]|0)+1;c[x+4>>2]=A;Ub(d,1,11946,x)|0;d=0;i=B;return d|0}else if((g|0)==11){Uc(e);A=_(c[A>>2]|0,c[z>>2]|0)|0;c[y>>2]=f+1;c[y+4>>2]=A;Ub(d,1,12162,y)|0;d=0;i=B;return d|0}else if((g|0)==13){Uc(e);d=0;i=B;return d|0}else if((g|0)==17){Uc(e);d=1;i=B;return d|0}return 0}function zd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,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,D=0,E=0,F=0,G=0;G=i;i=i+96|0;y=G+56|0;D=G+48|0;x=G+40|0;z=G+32|0;E=G+24|0;k=G+16|0;j=G+8|0;r=G+92|0;B=G+88|0;q=G+84|0;t=G+80|0;v=G+76|0;u=G+72|0;w=G+68|0;s=G+64|0;c[r>>2]=1;e=Pc(1e3)|0;if(!e){Ub(d,1,11880,G)|0;F=0;i=G;return F|0}A=a+196|0;g=c[A>>2]|0;f=c[g+40>>2]|0;a:do if(!f){f=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[g+36>>2]=f;f=Qc(f,40)|0;g=c[A>>2]|0;c[g+40>>2]=f;b:do if(f){if(c[g+36>>2]|0){h=0;do{c[f+(h*40|0)+28>>2]=100;c[f+(h*40|0)+20>>2]=0;p=Qc(100,24)|0;g=c[A>>2]|0;f=c[g+40>>2]|0;c[f+(h*40|0)+24>>2]=p;h=h+1|0;if(!p)break b}while(h>>>0<(c[g+36>>2]|0)>>>0)}g=c[a+60>>2]|0;if(!f)break a;else{F=12;break a}}while(0);Uc(e);F=0;i=G;return F|0}else{g=c[a+60>>2]|0;F=12}while(0);if((F|0)==12)if(c[f+16>>2]|0){if(!(c[f+(g*40|0)+4>>2]|0)){p=a+64|0;p=Si(c[p>>2]|0,c[p+4>>2]|0,2,0)|0;if(!(xb(b,p,C,d)|0)){Ub(d,1,11918,j)|0;Uc(e);F=0;i=G;return F|0}}else{p=c[f+(g*40|0)+16>>2]|0;p=Si(c[p>>2]|0,c[p+4>>2]|0,2,0)|0;if(!(xb(b,p,C,d)|0)){Ub(d,1,11918,k)|0;Uc(e);F=0;i=G;return F|0}}f=a+8|0;if((c[f>>2]|0)==256)c[f>>2]=8}c:do if(cd(a,B,q,t,v,u,w,s,r,b,d)|0){o=a+116|0;p=a+112|0;l=a+204|0;m=a+84|0;n=g+1|0;f=1e3;while(1){if(!(c[r>>2]|0))break;k=c[q>>2]|0;if(k>>>0>f>>>0){f=Tc(e,k)|0;if(!f){F=26;break}else{e=f;j=k}}else j=f;h=c[B>>2]|0;if(!(dd(a,h,e,k,b,d)|0)){F=28;break}f=h+1|0;k=_(c[p>>2]|0,c[o>>2]|0)|0;c[z>>2]=f;c[z+4>>2]=k;Ub(d,4,11986,z)|0;k=c[l>>2]|0;if(!(ce(c[(c[c[k+20>>2]>>2]|0)+20>>2]|0,c[k+24>>2]|0,e,c[(c[m>>2]|0)+24>>2]|0)|0)){F=30;break}c[x>>2]=f;Ub(d,4,12016,x)|0;if((h|0)==(g|0)){F=32;break}c[y>>2]=f;c[y+4>>2]=n;Ub(d,2,12060,y)|0;if(!(cd(a,B,q,t,v,u,w,s,r,b,d)|0))break c;else f=j}if((F|0)==26){Uc(e);F=_(c[p>>2]|0,c[o>>2]|0)|0;c[E>>2]=(c[B>>2]|0)+1;c[E+4>>2]=F;Ub(d,1,11946,E)|0;F=0;i=G;return F|0}else if((F|0)==28){Uc(e);F=0;i=G;return F|0}else if((F|0)==30){Uc(e);F=0;i=G;return F|0}else if((F|0)==32){F=(c[A>>2]|0)+8|0;F=Si(c[F>>2]|0,c[F+4>>2]|0,2,0)|0;if(!(xb(b,F,C,d)|0)){Ub(d,1,11918,D)|0;Uc(e);F=0;i=G;return F|0}}Uc(e);F=1;i=G;return F|0}while(0);Uc(e);F=0;i=G;return F|0}function Ad(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;H=i;i=i+32|0;D=H+16|0;t=H+8|0;l=H;C=H+20|0;E=c[a+40>>2]|0;G=a+36|0;n=c[G>>2]|0;o=a+204|0;k=c[o>>2]|0;c[k+16>>2]=0;B=a+8|0;c[B>>2]=0;c[C>>2]=0;pb(n,65424,2);pb(n+2|0,10,2);F=a+200|0;pb(n+4|0,c[F>>2]|0,2);z=a+12|0;pb(n+10|0,c[z>>2]|0,1);A=a+164|0;pb(n+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=12;h=n+12|0;f=E+-12|0;m=a+88|0;if(((b[m>>1]|0)+-3&65535)>=4?(g=c[F>>2]|0,j=c[A>>2]|0,(c[j+(g*5640|0)+420>>2]|0)!=0):0){c[C>>2]=0;_d(c[(c[a+80>>2]|0)+16>>2]|0,j,g,h,C);y=c[C>>2]|0;g=y+12|0;h=n+g|0;f=f-y|0}else g=12;c[C>>2]=0;pb(h,65427,2);c[k+4>>2]=c[B>>2];y=c[z>>2]|0;c[k+8>>2]=y;if(!y)c[(c[c[k+20>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(k,c[F>>2]|0,h+2|0,C,f+-4|0,0)|0)){Ub(e,1,11860,l)|0;d=0;i=H;return d|0}f=(c[C>>2]|0)+2|0;c[C>>2]=f;f=f+g|0;pb(n+6|0,f,4);if(((b[m>>1]|0)+-3&65535)<4){y=a+28|0;pb(c[y>>2]|0,c[F>>2]|0,1);x=(c[y>>2]|0)+1|0;c[y>>2]=x;pb(x,f,4);c[y>>2]=(c[y>>2]|0)+4}g=n+f|0;y=E-f|0;v=c[o>>2]|0;w=a+88|0;r=c[A>>2]|0;s=c[F>>2]|0;m=be(w,0,s)|0;x=a+8|0;c[z>>2]=(c[z>>2]|0)+1;a:do if(m>>>0>1){n=v+4|0;o=v+8|0;p=v+20|0;q=a+28|0;j=g;g=y;f=0;l=1;while(1){c[x>>2]=l;c[C>>2]=0;pb(j,65424,2);pb(j+2|0,10,2);pb(j+4|0,c[F>>2]|0,2);pb(j+10|0,c[z>>2]|0,1);pb(j+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=0;pb(j+12|0,65427,2);c[n>>2]=c[B>>2];k=c[z>>2]|0;c[o>>2]=k;if(!k)c[(c[c[p>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(v,c[F>>2]|0,j+14|0,C,g+-16|0,0)|0))break;I=c[C>>2]|0;J=I+2|0;c[C>>2]=J;k=I+14|0;h=j+k|0;f=f+12+J|0;g=g+-12+(-2-I)|0;pb(j+6|0,k,4);if(((b[w>>1]|0)+-3&65535)<4){pb(c[q>>2]|0,c[F>>2]|0,1);J=(c[q>>2]|0)+1|0;c[q>>2]=J;pb(J,k,4);c[q>>2]=(c[q>>2]|0)+4}c[z>>2]=(c[z>>2]|0)+1;l=l+1|0;if(l>>>0>=m>>>0){u=12;break a}else j=h}Ub(e,1,11860,t)|0}else{h=g;g=y;f=0;u=12}while(0);b:do if((u|0)==12){p=r+(s*5640|0)+420|0;c:do if(c[p>>2]|0){q=v+16|0;r=v+4|0;s=v+8|0;t=v+20|0;o=a+28|0;n=1;d:while(1){c[q>>2]=n;m=be(w,n,c[F>>2]|0)|0;if(m){l=0;while(1){c[x>>2]=l;c[C>>2]=0;pb(h,65424,2);pb(h+2|0,10,2);pb(h+4|0,c[F>>2]|0,2);pb(h+10|0,c[z>>2]|0,1);pb(h+11|0,c[(c[A>>2]|0)+((c[F>>2]|0)*5640|0)+5588>>2]|0,1);c[C>>2]=0;pb(h+12|0,65427,2);c[r>>2]=c[B>>2];J=c[z>>2]|0;c[s>>2]=J;if(!J)c[(c[c[t>>2]>>2]|0)+840>>2]=0;c[C>>2]=0;if(!(bg(v,c[F>>2]|0,h+14|0,C,g+-16|0,0)|0))break d;J=c[C>>2]|0;j=J+2|0;c[C>>2]=j;f=f+12+j|0;j=J+14|0;k=h+j|0;g=g+-12+(-2-J)|0;pb(h+6|0,j,4);if(((b[w>>1]|0)+-3&65535)<4){pb(c[o>>2]|0,c[F>>2]|0,1);J=(c[o>>2]|0)+1|0;c[o>>2]=J;pb(J,j,4);c[o>>2]=(c[o>>2]|0)+4}c[z>>2]=(c[z>>2]|0)+1;l=l+1|0;if(l>>>0>=m>>>0){h=k;break}else h=k}}n=n+1|0;if(n>>>0>(c[p>>2]|0)>>>0)break c}Ub(e,1,11860,D)|0;break b}while(0);J=f-y+E|0;if((Nb(d,c[G>>2]|0,J,e)|0)!=(J|0)){J=0;i=H;return J|0}c[F>>2]=(c[F>>2]|0)+1;J=1;i=H;return J|0}while(0);J=0;i=H;return J|0}function Bd(a,b,d){a=a|0;b=b|0;d=d|0;a=a+44|0;pb(c[a>>2]|0,65497,2);if((Nb(b,c[a>>2]|0,2,d)|0)!=2){b=0;return b|0}b=(Ob(b,d)|0)!=0&1;return b|0}function Cd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=(c[a+32>>2]|0)*5|0;i=a+16|0;i=Si(c[i>>2]|0,c[i+4>>2]|0,6,0)|0;h=C;e=Pb(b)|0;f=C;if(!(Sb(b,i,h,d)|0)){i=0;return i|0}if((Nb(b,c[a+24>>2]|0,g,d)|0)!=(g|0)){i=0;return i|0}i=(Sb(b,e,f,d)|0)!=0&1;return i|0}function Dd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+196>>2]|0;if(!a)return 1;b=Pb(b)|0;d=a;d=Oi(b|0,C|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=a+16|0;c[b>>2]=d;c[b+4>>2]=C;return 1}function Ed(a,b,d){a=a|0;b=b|0;d=d|0;d=a+204|0;Yf(c[d>>2]|0);c[d>>2]=0;d=a+24|0;b=c[d>>2]|0;if(b){Uc(b);c[d>>2]=0;c[a+28>>2]=0}d=a+36|0;b=c[d>>2]|0;if(!b){a=a+40|0;c[a>>2]=0;return 1}Uc(b);c[d>>2]=0;a=a+40|0;c[a>>2]=0;return 1}function Fd(a,b,d){a=a|0;b=b|0;d=d|0;d=a+44|0;b=c[d>>2]|0;if(b){Uc(b);c[d>>2]=0}c[a+48>>2]=0;return 1}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Hd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+32|0;e=(c[a+8>>2]|0)==0&(c[a+188>>2]|0)!=0&(c[a+192>>2]|0)!=0&1;b=(c[(c[(c[a+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(b>>>0>31){Ub(d,1,11790,f)|0;d=0;i=f;return d|0}b=1<>2]|0)>>>0>>0){Ub(d,1,11790,f+8|0)|0;d=0;i=f;return d|0}if((c[a+104>>2]|0)>>>0>=b>>>0){d=e;i=f;return d|0}Ub(d,1,11790,f+16|0)|0;d=0;i=f;return d|0}function Id(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if((b[a+88>>1]&-32256)<<16>>16!=-32256){j=1;return j|0}i=_(c[a+112>>2]|0,c[a+116>>2]|0)|0;if(!i){j=1;return j|0}h=a+80|0;j=0;e=1;g=c[a+164>>2]|0;while(1){if((c[g+16>>2]|0)==2){e=(c[g+5608>>2]|0)!=0&e;a=c[(c[h>>2]|0)+16>>2]|0;if(a){f=0;d=c[g+5584>>2]|0;while(1){e=(c[d+20>>2]&1^1)&e;f=f+1|0;if(f>>>0>=a>>>0)break;else d=d+1080|0}}}j=j+1|0;if((j|0)==(i|0))break;else g=g+5640|0}return e|0}function Jd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+88|0;h=a+32|0;i=c[a+80>>2]|0;j=_(c[a+116>>2]|0,c[a+112>>2]|0)|0;c[h>>2]=0;if(!j)return 1;e=c[a+164>>2]|0;f=0;while(1){Nf(i,g,f);b=e+420|0;d=0;a=0;do{k=be(g,a,f)|0;c[h>>2]=(c[h>>2]|0)+k;d=k+d|0;a=a+1|0}while(a>>>0<=(c[b>>2]|0)>>>0);c[e+5588>>2]=d;f=f+1|0;if((f|0)==(j|0))break;else e=e+5640|0}return 1}function Kd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+44>>2]|0;pb(a,65359,2);return (Nb(b,a,2,d)|0)==2|0}function Ld(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;j=p;k=c[a+80>>2]|0;n=k+16|0;l=(c[n>>2]|0)*3|0;o=l+40|0;f=c[k+24>>2]|0;h=a+48|0;m=a+44|0;g=c[m>>2]|0;do if(o>>>0>(c[h>>2]|0)>>>0){g=Tc(g,o)|0;if(g){c[m>>2]=g;c[h>>2]=o;break}Uc(c[m>>2]|0);c[m>>2]=0;c[h>>2]=0;Ub(d,1,11752,j)|0;b=0;i=p;return b|0}while(0);pb(g,65361,2);pb(g+2|0,l+38|0,2);pb(g+4|0,e[a+88>>1]|0,2);pb(g+6|0,c[k+8>>2]|0,4);pb(g+10|0,c[k+12>>2]|0,4);pb(g+14|0,c[k>>2]|0,4);pb(g+18|0,c[k+4>>2]|0,4);pb(g+22|0,c[a+100>>2]|0,4);pb(g+26|0,c[a+104>>2]|0,4);pb(g+30|0,c[a+92>>2]|0,4);pb(g+34|0,c[a+96>>2]|0,4);pb(g+38|0,c[n>>2]|0,2);if(c[n>>2]|0){h=0;g=g+40|0;while(1){pb(g,(c[f+24>>2]|0)+-1+(c[f+32>>2]<<7)|0,1);pb(g+1|0,c[f>>2]|0,1);pb(g+2|0,c[f+4>>2]|0,1);h=h+1|0;if(h>>>0>=(c[n>>2]|0)>>>0)break;else{g=g+3|0;f=f+52|0}}}b=(Nb(b,c[m>>2]|0,o,d)|0)==(o|0)&1;i=p;return b|0}function Md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+32|0;q=r+16|0;p=r+8|0;j=r;o=r+20|0;k=a+200|0;l=c[k>>2]|0;m=a+164|0;n=c[m>>2]|0;e=c[n+(l*5640|0)+5584>>2]|0;if(!(c[e>>2]&1))g=5;else g=(c[e+4>>2]|0)+5|0;h=g+9|0;c[o>>2]=h;f=a+48|0;a=a+44|0;e=c[a>>2]|0;do if(h>>>0>(c[f>>2]|0)>>>0){e=Tc(e,h)|0;if(e){c[a>>2]=e;c[f>>2]=h;break}Uc(c[a>>2]|0);c[a>>2]=0;c[f>>2]=0;Ub(d,1,11687,j)|0;q=0;i=r;return q|0}while(0);pb(e,65362,2);pb(e+2|0,g+7|0,2);pb(e+4|0,c[n+(l*5640|0)>>2]|0,1);pb(e+5|0,c[n+(l*5640|0)+4>>2]|0,1);pb(e+6|0,c[n+(l*5640|0)+8>>2]|0,2);pb(e+8|0,c[n+(l*5640|0)+16>>2]|0,1);c[o>>2]=g;if(!(ae(c[m>>2]|0,c[k>>2]|0,e+9|0,o,d)|0)){Ub(d,1,11726,p)|0;q=0;i=r;return q|0}if(!(c[o>>2]|0)){q=(Nb(b,c[a>>2]|0,h,d)|0)==(h|0)&1;i=r;return q|0}else{Ub(d,1,11726,q)|0;q=0;i=r;return q|0}return 0}function Nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;o=p+16|0;n=p+8|0;j=p;l=p+20|0;k=a+200|0;m=a+164|0;e=c[(c[m>>2]|0)+((c[k>>2]|0)*5640|0)+5584>>2]|0;f=c[e+24>>2]|0;if((f|0)==1)e=1;else e=((c[e+4>>2]|0)*3|0)+-2|0;g=(f|0)==0?e+1|0:e<<1|1;h=g+4|0;c[l>>2]=h;f=a+48|0;a=a+44|0;e=c[a>>2]|0;do if(h>>>0>(c[f>>2]|0)>>>0){e=Tc(e,h)|0;if(e){c[a>>2]=e;c[f>>2]=h;break}Uc(c[a>>2]|0);c[a>>2]=0;c[f>>2]=0;Ub(d,1,11622,j)|0;o=0;i=p;return o|0}while(0);pb(e,65372,2);pb(e+2|0,g+2|0,2);c[l>>2]=g;if(!($d(c[m>>2]|0,c[k>>2]|0,0,e+4|0,l,d)|0)){Ub(d,1,11661,n)|0;o=0;i=p;return o|0}if(!(c[l>>2]|0)){o=(Nb(b,c[a>>2]|0,h,d)|0)==(h|0)&1;i=p;return o|0}else{Ub(d,1,11661,o)|0;o=0;i=p;return o|0}return 0}function Od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;u=w;r=w+4|0;o=a+80|0;e=c[(c[o>>2]|0)+16>>2]|0;if(e>>>0<=1){v=1;i=w;return v|0}s=a+164|0;t=a+200|0;q=a+48|0;n=a+44|0;m=1;while(1){h=c[s>>2]|0;k=c[t>>2]|0;g=c[h+(k*5640|0)+5584>>2]|0;j=c[g+(m*1080|0)>>2]|0;a:do if((((((c[g>>2]|0)==(j|0)?(p=c[g+4>>2]|0,(p|0)==(c[g+(m*1080|0)+4>>2]|0)):0)?(c[g+8>>2]|0)==(c[g+(m*1080|0)+8>>2]|0):0)?(c[g+12>>2]|0)==(c[g+(m*1080|0)+12>>2]|0):0)?(c[g+16>>2]|0)==(c[g+(m*1080|0)+16>>2]|0):0)?(c[g+20>>2]|0)==(c[g+(m*1080|0)+20>>2]|0):0){if(p){a=0;do{if((c[g+812+(a<<2)>>2]|0)!=(c[g+(m*1080|0)+812+(a<<2)>>2]|0)){v=13;break a}if((c[g+944+(a<<2)>>2]|0)!=(c[g+(m*1080|0)+944+(a<<2)>>2]|0)){v=13;break a}a=a+1|0}while(a>>>0

>>0)}}else v=13;while(0);if((v|0)==13){v=0;if(!(j&1))a=5;else a=(c[g+(m*1080|0)+4>>2]|0)+5|0;l=a+(e>>>0<257?6:7)|0;f=c[n>>2]|0;if(l>>>0>(c[q>>2]|0)>>>0){a=Tc(f,l)|0;if(!a){v=17;break}c[n>>2]=a;c[q>>2]=l;k=c[t>>2]|0;h=c[s>>2]|0;g=c[h+(k*5640|0)+5584>>2]|0;e=c[(c[o>>2]|0)+16>>2]|0;j=c[g+(m*1080|0)>>2]|0;f=a}e=e>>>0<257?1:2;if(!(j&1))a=5;else a=(c[g+(m*1080|0)+4>>2]|0)+5|0;pb(f,65363,2);pb(f+2|0,e+3+a|0,2);pb(f+4|0,m,e);j=e|4;pb(f+j|0,c[(c[h+(k*5640|0)+5584>>2]|0)+(m*1080|0)>>2]|0,1);c[r>>2]=a;ae(c[s>>2]|0,c[t>>2]|0,f+(j+1)|0,r,d)|0;if((Nb(b,c[n>>2]|0,l,d)|0)!=(l|0)){a=0;v=24;break}e=c[(c[o>>2]|0)+16>>2]|0}m=m+1|0;if(m>>>0>=e>>>0){a=1;v=24;break}}if((v|0)==17){Uc(c[n>>2]|0);c[n>>2]=0;c[q>>2]=0;Ub(d,1,11548,u)|0;v=0;i=w;return v|0}else if((v|0)==24){i=w;return a|0}return 0}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+16|0;r=t;o=t+4|0;m=a+80|0;e=c[(c[m>>2]|0)+16>>2]|0;if(e>>>0<=1){s=1;i=t;return s|0}p=a+164|0;q=a+200|0;n=a+48|0;l=a+44|0;k=1;while(1){j=c[(c[p>>2]|0)+((c[q>>2]|0)*5640|0)+5584>>2]|0;g=c[j+24>>2]|0;h=c[j+(k*1080|0)+24>>2]|0;a:do if((g|0)==(h|0)?(c[j+804>>2]|0)==(c[j+(k*1080|0)+804>>2]|0):0){if((g|0)!=1){f=(c[j+4>>2]|0)*3|0;a=f+-2|0;if((f|0)!=((c[j+(k*1080|0)+4>>2]|0)*3|0)){s=14;break}if(!a)break}else a=1;f=0;do{if((c[j+28+(f<<3)>>2]|0)!=(c[j+(k*1080|0)+28+(f<<3)>>2]|0)){s=14;break a}f=f+1|0}while(f>>>0>>0);if(g){f=0;do{if((c[j+28+(f<<3)+4>>2]|0)!=(c[j+(k*1080|0)+28+(f<<3)+4>>2]|0)){s=14;break a}f=f+1|0}while(f>>>0>>0)}}else s=14;while(0);if((s|0)==14){s=0;if((h|0)==1)a=1;else a=((c[j+(k*1080|0)+4>>2]|0)*3|0)+-2|0;g=((h|0)==0?a+1|0:a<<1|1)+5+(e>>>0>256&1)|0;a=c[l>>2]|0;if(g>>>0>(c[n>>2]|0)>>>0){a=Tc(a,g)|0;if(!a){s=18;break}c[l>>2]=a;c[n>>2]=g;e=c[(c[p>>2]|0)+((c[q>>2]|0)*5640|0)+5584>>2]|0;f=c[e+(k*1080|0)+24>>2]|0}else{f=h;e=j}if((f|0)==1)e=1;else e=((c[e+(k*1080|0)+4>>2]|0)*3|0)+-2|0;f=(f|0)==0?e+1|0:e<<1|1;c[o>>2]=f+6;pb(a,65373,2);e=a+2|0;if((c[(c[m>>2]|0)+16>>2]|0)>>>0<257){pb(e,f+3|0,2);pb(a+4|0,k,1);a=a+5|0}else{pb(e,f+4|0,2);pb(a+4|0,k,2);a=a+6|0}c[o>>2]=f;$d(c[p>>2]|0,c[q>>2]|0,k,a,o,d)|0;if((Nb(b,c[l>>2]|0,g,d)|0)!=(g|0)){a=0;s=28;break}e=c[(c[m>>2]|0)+16>>2]|0}k=k+1|0;if(k>>>0>=e>>>0){a=1;s=28;break}}if((s|0)==18){Uc(c[l>>2]|0);c[l>>2]=0;c[n>>2]=0;Ub(d,1,11476,r)|0;s=0;i=t;return s|0}else if((s|0)==28){i=t;return a|0}return 0}function Qd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l;h=(c[a+32>>2]|0)*5|0;j=h+6|0;f=a+48|0;k=a+44|0;e=c[k>>2]|0;do if(j>>>0>(c[f>>2]|0)>>>0){e=Tc(e,j)|0;if(e){c[k>>2]=e;c[f>>2]=j;break}Uc(c[k>>2]|0);c[k>>2]=0;c[f>>2]=0;Ub(d,1,11437,g)|0;b=0;i=l;return b|0}while(0);g=Pb(b)|0;a=a+16|0;c[a>>2]=g;c[a+4>>2]=C;pb(e,65365,2);pb(e+2|0,h+4|0,2);pb(e+4|0,0,1);pb(e+5|0,80,1);b=(Nb(b,c[k>>2]|0,j,d)|0)==(j|0)&1;i=l;return b|0}function Rd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;j=q;p=q+4|0;c[p>>2]=0;m=a+200|0;e=c[m>>2]|0;l=a+164|0;f=c[l>>2]|0;k=a+80|0;h=c[(c[k>>2]|0)+16>>2]|0;o=(_(h>>>0<257?7:9,(c[f+(e*5640|0)+420>>2]|0)+1|0)|0)+4|0;g=a+48|0;n=a+44|0;a=c[n>>2]|0;do if(o>>>0>(c[g>>2]|0)>>>0){e=Tc(a,o)|0;if(e){c[n>>2]=e;c[g>>2]=o;g=e;a=c[(c[k>>2]|0)+16>>2]|0;f=c[l>>2]|0;e=c[m>>2]|0;break}Uc(c[n>>2]|0);c[n>>2]=0;c[g>>2]=0;Ub(d,1,11398,j)|0;b=0;i=q;return b|0}else{g=a;a=h}while(0);_d(a,f,e,g,p);b=(Nb(b,c[n>>2]|0,o,d)|0)==(o|0)&1;i=q;return b|0}function Sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=a+164|0;j=a+80|0;f=c[j>>2]|0;e=c[f+16>>2]|0;if(!e){b=1;return b|0}h=a+44|0;a=0;g=c[(c[i>>2]|0)+5584>>2]|0;while(1){if(c[g+808>>2]|0){k=c[(c[i>>2]|0)+5584>>2]|0;m=e>>>0<257?1:2;f=m+6|0;l=c[h>>2]|0;pb(l,65374,2);e=m|4;pb(l+2|0,e,2);pb(l+4|0,a,m);pb(l+e|0,0,1);pb(l+(e+1)|0,c[k+(a*1080|0)+808>>2]|0,1);if((Nb(b,c[h>>2]|0,f,d)|0)!=(f|0)){a=0;e=7;break}f=c[j>>2]|0}a=a+1|0;e=c[f+16>>2]|0;if(a>>>0>=e>>>0){a=1;e=7;break}else g=g+1080|0}if((e|0)==7)return a|0;return 0}function Td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l;h=c[a+108>>2]|0;j=wi(h)|0;k=j+6|0;e=a+48|0;f=a+44|0;a=c[f>>2]|0;do if(k>>>0>(c[e>>2]|0)>>>0){a=Tc(a,k)|0;if(a){c[f>>2]=a;c[e>>2]=k;break}Uc(c[f>>2]|0);c[f>>2]=0;c[e>>2]=0;Ub(d,1,11355,g)|0;b=0;i=l;return b|0}while(0);pb(a,65380,2);pb(a+2|0,j+4|0,2);pb(a+4|0,1,2);Ui(a+6|0,h|0,j|0)|0;b=(Nb(b,c[f>>2]|0,k,d)|0)==(k|0)&1;i=l;return b|0}function Ud(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+32|0;w=A+24|0;t=A+16|0;o=A+8|0;g=A;j=c[b+80>>2]|0;k=j+16|0;h=c[k>>2]|0;l=h+6|0;v=b+48|0;z=b+44|0;f=c[z>>2]|0;do if(l>>>0>(c[v>>2]|0)>>>0){f=Tc(f,l)|0;if(f){c[z>>2]=f;c[v>>2]=l;break}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11199,g)|0;d=0;i=A;return d|0}while(0);pb(f,65400,2);pb(f+2|0,h+4|0,2);pb(f+4|0,c[k>>2]|0,2);if(c[k>>2]|0){h=0;g=c[j+24>>2]|0;f=f+6|0;while(1){pb(f,(c[g+24>>2]|0)+-1|c[g+32>>2]<<7,1);h=h+1|0;if(h>>>0>=(c[k>>2]|0)>>>0)break;else{g=g+52|0;f=f+1|0}}}if((Nb(d,c[z>>2]|0,l,e)|0)!=(l|0)){d=0;i=A;return d|0}q=b+200|0;n=c[q>>2]|0;r=b+164|0;m=c[r>>2]|0;g=m+(n*5640|0)+5616|0;a:do if(c[g>>2]|0){l=0;b=c[m+(n*5640|0)+5612>>2]|0;while(1){h=b+16|0;j=c[h>>2]|0;k=j+10|0;f=c[z>>2]|0;if(k>>>0>(c[v>>2]|0)>>>0){f=Tc(f,k)|0;if(!f)break;c[z>>2]=f;c[v>>2]=k}pb(f,65396,2);pb(f+2|0,j+8|0,2);pb(f+4|0,0,2);pb(f+6|0,c[b+4>>2]<<8|c[b+8>>2]&255|c[b>>2]<<10,2);pb(f+8|0,0,2);Ui(f+10|0,c[b+12>>2]|0,c[h>>2]|0)|0;if((Nb(d,c[z>>2]|0,k,e)|0)!=(k|0)){s=0;x=42;break}l=l+1|0;if(l>>>0>=(c[g>>2]|0)>>>0)break a;else b=b+20|0}if((x|0)==42){i=A;return s|0}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11238,o)|0;d=0;i=A;return d|0}while(0);o=m+(n*5640|0)+5628|0;b:do if(c[o>>2]|0){p=0;m=c[m+(n*5640|0)+5624>>2]|0;while(1){l=m+4|0;g=c[l>>2]|0;j=g>>>0>255;k=j?2:1;j=j?32768:0;g=_(k,g<<1)|0;b=g+19|0;f=c[z>>2]|0;if(b>>>0>(c[v>>2]|0)>>>0){f=Tc(f,b)|0;if(!f)break;c[z>>2]=f;c[v>>2]=b}pb(f,65397,2);pb(f+2|0,g+17|0,2);pb(f+4|0,0,2);pb(f+6|0,c[m>>2]|0,1);pb(f+7|0,0,2);pb(f+9|0,1,2);pb(f+11|0,1,1);pb(f+12|0,c[l>>2]|j,2);f=f+14|0;if(!(c[l>>2]|0))g=0;else{h=0;do{pb(f,h,k);f=f+k|0;h=h+1|0;g=c[l>>2]|0}while(h>>>0>>0)}pb(f,g|j,2);f=f+2|0;if(!(c[l>>2]|0))h=f;else{g=0;do{pb(f,g,k);f=f+k|0;g=g+1|0}while(g>>>0<(c[l>>2]|0)>>>0);h=f}f=((a[m+16>>0]^1)&255)<<16&65536;g=c[m+8>>2]|0;if(g)f=c[g+8>>2]|f;g=c[m+12>>2]|0;if(g)f=c[g+8>>2]<<8|f;pb(h,f,3);if((Nb(d,c[z>>2]|0,b,e)|0)!=(b|0)){s=0;x=42;break}p=p+1|0;if(p>>>0>=(c[o>>2]|0)>>>0)break b;else m=m+20|0}if((x|0)==42){i=A;return s|0}Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11277,t)|0;d=0;i=A;return d|0}while(0);k=c[q>>2]|0;j=c[r>>2]|0;l=j+(k*5640|0)+5628|0;g=c[l>>2]|0;b=g+5|0;f=c[z>>2]|0;do if(b>>>0>(c[v>>2]|0)>>>0){f=Tc(f,b)|0;if(!f){Uc(c[z>>2]|0);c[z>>2]=0;c[v>>2]=0;Ub(e,1,11316,w)|0;u=1;break}else{c[z>>2]=f;c[v>>2]=b;y=f;x=37;break}}else{y=f;x=37}while(0);if((x|0)==37){pb(y,65399,2);pb(y+2|0,g+3|0,2);pb(y+4|0,c[l>>2]|0,1);if(c[l>>2]|0){h=0;g=y+5|0;f=c[j+(k*5640|0)+5624>>2]|0;while(1){pb(g,c[f>>2]|0,1);h=h+1|0;if(h>>>0>=(c[l>>2]|0)>>>0)break;else{g=g+1|0;f=f+20|0}}}u=(Nb(d,c[z>>2]|0,b,e)|0)!=(b|0)}d=u&1^1;i=A;return d|0}function Vd(a,b,d){a=a|0;b=b|0;d=d|0;d=Pb(b)|0;b=(c[a+196>>2]|0)+8|0;c[b>>2]=d;c[b+4>>2]=C;return 1}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;b=Tf(0)|0;e=a+204|0;c[e>>2]=b;if(!b){Ub(d,1,11159,f)|0;d=0;i=f;return d|0}if(Xf(b,c[a+80>>2]|0,a+88|0)|0){d=1;i=f;return d|0}Yf(c[e>>2]|0);c[e>>2]=0;d=0;i=f;return d|0}function Xd(d,e,f){d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=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;O=d+80|0;E=c[O>>2]|0;P=d+164|0;i=c[P>>2]|0;N=E+24|0;F=c[N>>2]|0;f=c[F>>2]|0;h=c[F+4>>2]|0;M=E+16|0;F=_(c[F+24>>2]|0,c[M>>2]|0)|0;D=Pb(e)|0;q=d+116|0;l=c[q>>2]|0;r=d+112|0;e=c[r>>2]|0;G=(+(D>>>0)+4294967296.0*+(C|0))/+((_(e,l)|0)>>>0);D=(a[d+181>>0]&8)==0?1:2;if(l){s=d+92|0;u=d+100|0;v=d+96|0;y=d+104|0;z=E+4|0;A=E+8|0;B=E+12|0;x=+((_(f<<3,h)|0)>>>0);m=e;f=e;p=0;e=i;do{o=p;p=p+1|0;if(!f)f=0;else{m=0;do{w=+Sa[D&3](e);l=c[e+8>>2]|0;w=w/+(l>>>0);Q=c[s>>2]|0;i=c[u>>2]|0;k=(_(i,m)|0)+Q|0;f=c[E>>2]|0;f=(k|0)>(f|0)?k:f;k=c[v>>2]|0;j=c[y>>2]|0;R=(_(j,o)|0)+k|0;h=c[z>>2]|0;h=(R|0)>(h|0)?R:h;m=m+1|0;Q=(_(i,m)|0)+Q|0;i=c[A>>2]|0;i=(Q|0)<(i|0)?Q:i;k=(_(j,p)|0)+k|0;j=c[B>>2]|0;j=(k|0)<(j|0)?k:j;k=e+20|0;n=+g[k>>2];if(n!=0.0)g[k>>2]=+((_(_(i-f|0,F)|0,j-h|0)|0)>>>0)/(x*n)-w;if(l>>>0>1){n=+((_(_(i-f|0,F)|0,j-h|0)|0)>>>0);f=1;h=e+24|0;while(1){t=+g[h>>2];if(t!=0.0)g[h>>2]=n/(x*t)-w;f=f+1|0;if(f>>>0>=l>>>0)break;else h=h+4|0}}e=e+5640|0;f=c[r>>2]|0}while(m>>>0>>0);l=c[q>>2]|0;m=f}}while(p>>>0>>0);if(!l)l=0;else{s=(m|0)==0;t=G+2.0;v=m>>>0>1?m:1;u=0;f=c[P>>2]|0;do{if(!s){p=f+16|0;q=0;r=f;while(1){e=r+20|0;n=+g[e>>2];if(n!=0.0?(x=n-G,g[e>>2]=x,x<30.0):0)g[e>>2]=30.0;j=r+24|0;e=c[r+8>>2]|0;o=e+-1|0;n=+g[j>>2];h=n!=0.0;if(o>>>0>1){k=p+(e<<2)|0;i=1;e=j;do{if(h?(x=n-G,g[e>>2]=x,I=+g[e+-4>>2],x>2]=I+20.0;e=e+4|0;i=i+1|0;n=+g[e>>2];h=n!=0.0}while((i|0)!=(o|0));if(h){H=n;K=k;L=29}}else if(h){H=n;K=j;L=29}if((L|0)==29?(L=0,x=H-t,g[K>>2]=x,J=+g[K+-4>>2],x>2]=J+20.0;q=q+1|0;if(q>>>0>=m>>>0)break;else{p=p+5640|0;r=r+5640|0}}f=f+(v*5640|0)|0}u=u+1|0}while(u>>>0>>0)}}else{m=e;l=0}h=c[M>>2]|0;if(!h)u=0;else{i=(c[d+100>>2]|0)+-1|0;j=(c[d+104>>2]|0)+-1|0;k=0;e=c[N>>2]|0;f=0;while(1){R=c[e>>2]|0;Q=c[e+4>>2]|0;R=_(((j+Q|0)>>>0)/(Q>>>0)|0,((i+R|0)>>>0)/(R>>>0)|0)|0;f=(_(R,c[e+24>>2]|0)|0)+f|0;k=k+1|0;if(k>>>0>=h>>>0)break;else e=e+52|0}u=~~(+(f>>>0)*.1625)>>>0}o=c[(c[O>>2]|0)+16>>2]|0;q=o+-1|0;s=_(l,m)|0;p=(s|0)==0;if(p)i=0;else{e=0;f=0;h=c[P>>2]|0;while(1){R=c[h+5588>>2]|0;f=f>>>0>R>>>0?f:R;e=e+1|0;if((e|0)==(s|0))break;else h=h+5640|0}i=f*12|0}r=d+88|0;if(((b[r>>1]|0)+-3&65535)>=4){if(p){e=0;f=0}else{m=(o|0)==0;k=0;f=0;do{if(!m){h=c[(c[P>>2]|0)+(k*5640|0)+5584>>2]|0;j=0;do{if(!(c[h+(j*1080|0)>>2]&1))e=5;else e=(c[h+(j*1080|0)+4>>2]|0)+5|0;f=f>>>0>e>>>0?f:e;j=j+1|0}while((j|0)!=(o|0))}k=k+1|0}while((k|0)!=(s|0));l=0;e=0;do{if(!m){j=c[(c[P>>2]|0)+(l*5640|0)+5584>>2]|0;k=0;do{if(!(c[j+(k*1080|0)>>2]&1))h=5;else h=(c[j+(k*1080|0)+4>>2]|0)+5|0;e=e>>>0>h>>>0?e:h;k=k+1|0}while((k|0)!=(o|0))}l=l+1|0}while((l|0)!=(s|0))}i=(_(f+12+e|0,q)|0)+i|0}if(p)f=13;else{h=0;f=0;e=c[P>>2]|0;while(1){R=c[e+420>>2]|0;f=f>>>0>R>>>0?f:R;h=h+1|0;if((h|0)==(s|0))break;else e=e+5640|0}f=(f*9|0)+13|0}R=i+u+f|0;c[d+40>>2]=R;R=Pc(R)|0;c[d+36>>2]=R;if(!R){R=0;return R|0}if(((b[r>>1]|0)+-3&65535)>=4){R=1;return R|0}f=Pc((c[d+32>>2]|0)*5|0)|0;c[d+24>>2]=f;if(!f){R=0;return R|0}c[d+28>>2]=f;R=1;return R|0}function Yd(a){a=a|0;return 0.0}function Zd(a){a=a|0;return +(+((((c[a+5588>>2]|0)*14|0)+-14|0)>>>0))}function _d(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=c[b+(d*5640|0)+5584>>2]|0;q=(c[b+(d*5640|0)+420>>2]|0)+1|0;j=a>>>0<257?1:2;p=_(q,(j<<1)+5|0)|0;r=p+4|0;pb(e,65375,2);pb(e+2|0,p+2|0,2);if(!q){c[f>>2]=r;return}k=j+1|0;l=j+3|0;m=j|4;n=m+j|0;o=n+1|0;p=b+(d*5640|0)+8|0;h=g+4|0;i=0;e=e+4|0;g=b+(d*5640|0)+424|0;while(1){pb(e,c[g>>2]|0,1);pb(e+1|0,c[g+4>>2]|0,j);t=g+8|0;pb(e+k|0,c[t>>2]|0,2);b=g+12|0;pb(e+l|0,c[b>>2]|0,1);d=g+16|0;pb(e+m|0,c[d>>2]|0,j);pb(e+n|0,c[g+36>>2]|0,1);u=c[t>>2]|0;s=c[p>>2]|0;c[t>>2]=(u|0)<(s|0)?u:s;t=c[b>>2]|0;s=c[h>>2]|0;c[b>>2]=(t|0)<(s|0)?t:s;b=c[d>>2]|0;c[d>>2]=(b|0)<(a|0)?b:a;i=i+1|0;if((i|0)==(q|0))break;else{e=e+o|0;g=g+148|0}}c[f>>2]=r;return}function $d(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+8|0;j=n;l=c[a+(b*5640|0)+5584>>2]|0;b=c[l+(d*1080|0)+24>>2]|0;do if((b|0)!=1){a=(c[l+(d*1080|0)+4>>2]|0)*3|0;h=a+-2|0;if(!b){a=a+-1|0;if((c[f>>2]|0)>>>0>>0){Ub(g,1,11515,j)|0;f=0;i=n;return f|0}else{pb(e,c[l+(d*1080|0)+804>>2]<<5,1);if(!h)break;else b=0;do{e=e+1|0;pb(e,c[l+(d*1080|0)+28+(b<<3)>>2]<<3,1);b=b+1|0}while((b|0)!=(h|0))}}else m=7}else{h=1;b=1;m=7}while(0);if((m|0)==7){a=h<<1|1;if((c[f>>2]|0)>>>0>>0){Ub(g,1,11515,k)|0;f=0;i=n;return f|0}pb(e,(c[l+(d*1080|0)+804>>2]<<5)+b|0,1);if(h){e=e+1|0;b=0;while(1){pb(e,(c[l+(d*1080|0)+28+(b<<3)>>2]<<11)+(c[l+(d*1080|0)+28+(b<<3)+4>>2]|0)|0,2);b=b+1|0;if((b|0)==(h|0))break;else e=e+2|0}}}c[f>>2]=(c[f>>2]|0)-a;f=1;i=n;return f|0}function ae(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;g=c[a+(b*5640|0)+5584>>2]|0;if((c[e>>2]|0)>>>0<5){Ub(f,1,11587,j)|0;e=0;i=j;return e|0}h=g+4|0;pb(d,(c[h>>2]|0)+-1|0,1);pb(d+1|0,(c[g+8>>2]|0)+-2|0,1);pb(d+2|0,(c[g+12>>2]|0)+-2|0,1);pb(d+3|0,c[g+16>>2]|0,1);pb(d+4|0,c[g+20>>2]|0,1);b=(c[e>>2]|0)+-5|0;c[e>>2]=b;if(!(c[g>>2]&1)){e=1;i=j;return e|0}a=c[h>>2]|0;if(b>>>0>>0){Ub(f,1,11587,j+8|0)|0;e=0;i=j;return e|0}if(!a)a=0;else{b=d+5|0;d=0;while(1){pb(b,(c[g+944+(d<<2)>>2]<<4)+(c[g+812+(d<<2)>>2]|0)|0,1);d=d+1|0;a=c[h>>2]|0;if(d>>>0>=a>>>0)break;else b=b+1|0}b=c[e>>2]|0}c[e>>2]=b-a;e=1;i=j;return e|0}function be(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=c[b+76>>2]|0;g=c[i+(f*5640|0)+4>>2]|0;h=696;while(1){m=c[h>>2]|0;if((m|0)==-1|(m|0)==(g|0))break;else h=h+12|0}if(!(a[b+93>>0]&8)){b=1;return b|0}m=d[b+92>>0]|0;j=i+(f*5640|0)+424+(e*148|0)+92|0;k=i+(f*5640|0)+424+(e*148|0)+88|0;l=i+(f*5640|0)+424+(e*148|0)+96|0;e=i+(f*5640|0)+424+(e*148|0)+84|0;i=a[h+4>>0]|0;switch(i|0){case 67:{g=c[j>>2]|0;break}case 82:{g=c[k>>2]|0;break}case 80:{g=c[l>>2]|0;break}case 76:{g=c[e>>2]|0;break}default:g=1}if((m|0)!=(i|0)){i=a[h+5>>0]|0;switch(i|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)!=(i|0)){i=a[h+6>>0]|0;switch(i|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)!=(i|0)){h=a[h+7>>0]|0;switch(h|0){case 67:{g=_(c[j>>2]|0,g)|0;break}case 82:{g=_(c[k>>2]|0,g)|0;break}case 80:{g=_(c[l>>2]|0,g)|0;break}case 76:{g=_(c[e>>2]|0,g)|0;break}default:{}}if((m|0)==(h|0))h=3;else{b=g;return b|0}}else h=2}else h=1}else h=0;c[b+84>>2]=h;b=g;return b|0}function ce(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=g+16|0;if(!(c[B>>2]|0)){B=1;return B|0}A=0;z=c[g+24>>2]|0;while(1){k=i+44|0;j=c[k>>2]|0;l=i+8|0;if(!j){g=i+12|0;j=Qc(_(c[g>>2]|0,c[l>>2]|0)|0,4)|0;c[k>>2]=j;if(!j){h=0;i=61;break}}else g=i+12|0;q=z+36|0;c[i+36>>2]=c[q>>2];x=c[z+24>>2]|0;t=c[f+24>>2]|0;q=c[q>>2]|0;x=((x&7|0)!=0&1)+(x>>>3)|0;x=(x|0)==3?4:x;n=c[t+(q*136|0)+8>>2]|0;m=c[t+(q*136|0)>>2]|0;v=n-m|0;s=c[t+(q*136|0)+12>>2]|0;q=c[t+(q*136|0)+4>>2]|0;t=s-q|0;k=c[i+16>>2]|0;p=c[i+40>>2]|0;o=Ri(1,0,p|0)|0;w=C;k=Si(k|0,0,-1,-1)|0;k=Si(k|0,C|0,o|0,w|0)|0;k=Ti(k|0,C|0,p|0)|0;r=Si(c[i+20>>2]|0,0,-1,-1)|0;w=Si(r|0,C|0,o|0,w|0)|0;p=Ti(w|0,C|0,p|0)|0;w=c[l>>2]|0;l=k+w|0;o=c[g>>2]|0;r=p+o|0;do if(k>>>0>>0){g=m-k|0;if(n>>>0>l>>>0){y=l-m|0;u=0;m=v-y|0;n=g}else{u=0;m=0;n=g;y=v}}else{g=k-m|0;if(n>>>0>l>>>0){u=g;m=n-l|0;n=0;y=w;break}else{u=g;m=0;n=0;y=v-g|0;break}}while(0);do if(p>>>0>>0){l=q-p|0;if(s>>>0>r>>>0){k=r-q|0;o=k;g=0;k=t-k|0}else{o=t;g=0;k=0}}else{g=p-q|0;if(s>>>0>r>>>0){k=s-r|0;l=0;break}else{o=t-g|0;k=0;l=0;break}}while(0);if((u|m|y|k|g|o|0)<0){h=0;i=61;break}g=(_(g,v)|0)+u|0;q=u+m|0;r=(_(k,v)|0)-u|0;p=w-y|0;j=j+((_(w,l)|0)+n<<2)|0;switch(x|0){case 1:{h=h+g|0;g=(o|0)==0;if(!(c[z+32>>2]|0)){if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=d[j>>0];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+1|0}}g=l;h=h+y|0}h=h+q|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}}else if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=a[j>>0];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+1|0}}g=l;h=h+y|0}h=h+q|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+r|0;break}case 2:{h=h+(g<<1)|0;g=(o|0)==0;if(!(c[z+32>>2]|0)){if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=e[j>>1];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+2|0}}g=l;h=h+(y<<1)|0}h=h+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}}else if(!g){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=b[j>>1];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+2|0}}g=l;h=h+(y<<1)|0}h=h+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+(r<<1)|0;break}case 4:{h=h+(g<<2)|0;if(o){m=(y|0)==0;n=0;g=j;while(1){if(!m){l=g+(y<<2)|0;k=0;j=h;while(1){c[g>>2]=c[j>>2];k=k+1|0;if((k|0)==(y|0))break;else{g=g+4|0;j=j+4|0}}g=l;h=h+(y<<2)|0}h=h+(q<<2)|0;n=n+1|0;if((n|0)==(o|0))break;else g=g+(p<<2)|0}}h=h+(r<<2)|0;break}default:{}}A=A+1|0;if(A>>>0>=(c[B>>2]|0)>>>0){h=1;i=61;break}else{i=i+52|0;z=z+52|0;f=f+52|0}}if((i|0)==61)return h|0;return 0}function de(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;x=z+88|0;u=z+80|0;v=z+72|0;t=z+64|0;q=z+56|0;p=z+48|0;m=z+40|0;k=z+32|0;j=z+24|0;h=z+16|0;r=z+100|0;s=z+96|0;w=z+92|0;c[s>>2]=0;y=b+200|0;if((f|0)!=8){Ub(g,1,8662,z)|0;Ub(g,1,8662,z+8|0)|0;g=0;i=z;return g|0}qb(e,y,2);qb(e+2|0,r,4);qb(e+6|0,w,1);qb(e+7|0,s,1);l=c[y>>2]|0;e=c[b+112>>2]|0;if(l>>>0>=(_(c[b+116>>2]|0,e)|0)>>>0){c[h>>2]=l;Ub(g,1,15258,h)|0;g=0;i=z;return g|0}f=c[b+164>>2]|0;o=(l>>>0)%(e>>>0)|0;n=(l>>>0)/(e>>>0)|0;e=c[r>>2]|0;do if((e+-1|0)>>>0<13){if((e|0)==12){c[j>>2]=12;Ub(g,2,15282,j)|0;e=c[r>>2]|0;break}c[k>>2]=e;Ub(g,1,15319,k)|0;g=0;i=z;return g|0}while(0);if(!e){Ub(g,4,15380,m)|0;c[b+72>>2]=1}e=c[s>>2]|0;do if(!e)e=c[f+(l*5640|0)+5588>>2]|0;else{e=((d[b+76>>0]|0)>>>4&1)+e|0;c[s>>2]=e;h=f+(l*5640|0)+5588|0;j=c[h>>2]|0;f=c[w>>2]|0;if((j+-1|0)>>>0>>0){c[p>>2]=f;c[p+4>>2]=j;Ub(g,1,15491,p)|0;c[b+72>>2]=1;g=0;i=z;return g|0}if(f>>>0>>0){c[h>>2]=e;break}c[q>>2]=f;c[q+4>>2]=e;Ub(g,1,15590,q)|0;c[b+72>>2]=1;g=0;i=z;return g|0}while(0);if((e|0)!=0?(e|0)==((c[w>>2]|0)+1|0):0){q=b+76|0;a[q>>0]=a[q>>0]|1}c[b+24>>2]=(c[b+72>>2]|0)==0?(c[r>>2]|0)+-12|0:0;c[b+8>>2]=16;e=c[b+60>>2]|0;if((e|0)==-1){if((o>>>0>=(c[b+28>>2]|0)>>>0?o>>>0<(c[b+36>>2]|0)>>>0:0)?n>>>0>=(c[b+32>>2]|0)>>>0:0)e=(n>>>0>=(c[b+40>>2]|0)>>>0&1)<<2&255;else e=4;r=b+76|0;a[r>>0]=a[r>>0]&-5|e}else{r=b+76|0;a[r>>0]=((c[y>>2]|0)!=(e|0)&1)<<2&255|a[r>>0]&-5}k=b+196|0;e=c[k>>2]|0;if(!e){g=1;i=z;return g|0}j=c[y>>2]|0;e=c[e+40>>2]|0;c[e+(j*40|0)>>2]=j;c[e+(j*40|0)+12>>2]=c[w>>2];f=c[s>>2]|0;if(f){c[e+(j*40|0)+4>>2]=f;c[e+(j*40|0)+8>>2]=c[s>>2];e=c[e+(j*40|0)+16>>2]|0;if(!e){x=Qc(c[s>>2]|0,24)|0;c[(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16>>2]=x;if(x){g=1;i=z;return g|0}Ub(g,1,15698,t)|0;g=0;i=z;return g|0}e=Tc(e,(c[s>>2]|0)*24|0)|0;f=(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16|0;if(!e){Uc(c[f>>2]|0);c[(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16>>2]=0;Ub(g,1,15698,v)|0;g=0;i=z;return g|0}else{c[f>>2]=e;g=1;i=z;return g|0}}if(!(c[e+(j*40|0)+16>>2]|0)){c[e+(j*40|0)+8>>2]=10;v=Qc(10,24)|0;f=c[y>>2]|0;e=c[(c[k>>2]|0)+40>>2]|0;c[e+(f*40|0)+16>>2]=v;if(!v){c[e+(f*40|0)+8>>2]=0;Ub(g,1,15698,u)|0;g=0;i=z;return g|0}else j=f}f=c[w>>2]|0;h=e+(j*40|0)+8|0;if(f>>>0<(c[h>>2]|0)>>>0){g=1;i=z;return g|0}f=f+1|0;c[h>>2]=f;e=Tc(c[e+(j*40|0)+16>>2]|0,f*24|0)|0;f=(c[(c[k>>2]|0)+40>>2]|0)+((c[y>>2]|0)*40|0)+16|0;if(!e){Uc(c[f>>2]|0);y=c[y>>2]|0;w=c[(c[k>>2]|0)+40>>2]|0;c[w+(y*40|0)+16>>2]=0;c[w+(y*40|0)+8>>2]=0;Ub(g,1,15698,x)|0;g=0;i=z;return g|0}else{c[f>>2]=e;g=1;i=z;return g|0}return 0}function ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;p=s+48|0;q=s+40|0;k=s+32|0;n=s+56|0;j=s+52|0;c[n>>2]=e;r=b+80|0;l=c[r>>2]|0;o=b+8|0;if((c[o>>2]|0)==16)m=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else m=c[b+12>>2]|0;g=m+5636|0;h=a[g>>0]|0;if(h&1){Ub(f,1,15025,s)|0;r=0;i=s;return r|0}a[g>>0]=h|1;if(e>>>0<5){Ub(f,1,15089,s+8|0)|0;r=0;i=s;return r|0}qb(d,m,1);if((c[m>>2]|0)>>>0>7){Ub(f,1,15115,s+16|0)|0;r=0;i=s;return r|0}qb(d+1|0,j,1);j=c[j>>2]|0;g=m+4|0;c[g>>2]=j;if((j|0)>4){Ub(f,1,15149,s+24|0)|0;c[g>>2]=-1}g=m+8|0;qb(d+2|0,g,2);g=c[g>>2]|0;if((g+-1|0)>>>0>65534){c[k>>2]=g;Ub(f,1,15190,k)|0;r=0;i=s;return r|0}k=c[b+172>>2]|0;c[m+12>>2]=(k|0)==0?g:k;qb(d+4|0,m+16|0,1);k=d+5|0;c[n>>2]=e+-5;j=c[l+16>>2]|0;if(j){d=c[m>>2]&1;g=c[m+5584>>2]|0;h=0;do{c[g+(h*1080|0)>>2]=d;h=h+1|0}while(h>>>0>>0)}if(!(Fe(b,0,k,n,f)|0)){Ub(f,1,15089,q)|0;r=0;i=s;return r|0}if(c[n>>2]|0){Ub(f,1,15089,p)|0;r=0;i=s;return r|0}if((c[o>>2]|0)==16)g=(c[b+164>>2]|0)+((c[b+200>>2]|0)*5640|0)|0;else g=c[b+12>>2]|0;g=c[g+5584>>2]|0;e=g+4|0;h=c[e>>2]|0;m=h<<2;if((c[(c[r>>2]|0)+16>>2]|0)>>>0<=1){r=1;i=s;return r|0}n=g+8|0;o=g+12|0;b=g+16|0;f=g+20|0;p=g+812|0;q=g+944|0;c[g+1084>>2]=h;j=c[n>>2]|0;c[g+1088>>2]=j;d=c[o>>2]|0;c[g+1092>>2]=d;k=c[b>>2]|0;c[g+1096>>2]=k;l=c[f>>2]|0;c[g+1100>>2]=l;Ui(g+1892|0,p|0,m|0)|0;Ui(g+2024|0,q|0,m|0)|0;if((c[(c[r>>2]|0)+16>>2]|0)>>>0<=2){r=1;i=s;return r|0}c[g+2164>>2]=h;c[g+2168>>2]=j;c[g+2172>>2]=d;c[g+2176>>2]=k;c[g+2180>>2]=l;Ui(g+2972|0,p|0,m|0)|0;Ui(g+3104|0,q|0,m|0)|0;if((c[(c[r>>2]|0)+16>>2]|0)>>>0>3)h=3;else{r=1;i=s;return r|0}while(1){j=c[n>>2]|0;d=c[o>>2]|0;k=c[b>>2]|0;l=c[f>>2]|0;c[g+3244>>2]=c[e>>2];c[g+3248>>2]=j;c[g+3252>>2]=d;c[g+3256>>2]=k;c[g+3260>>2]=l;Ui(g+4052|0,p|0,m|0)|0;Ui(g+4184|0,q|0,m|0)|0;h=h+1|0;if(h>>>0>=(c[(c[r>>2]|0)+16>>2]|0)>>>0){g=1;break}else g=g+1080|0}i=s;return g|0}\nfunction lg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+272|0;n=u;s=u+136|0;t=u+8|0;if(!a){t=0;i=u;return t|0}m=a+4|0;if((c[a>>2]|0)==(b|0)?(c[m>>2]|0)==(d|0):0)f=a+8|0;else{c[a>>2]=b;c[m>>2]=d;c[s>>2]=b;c[t>>2]=d;f=a+8|0;c[f>>2]=0;g=0;j=d;k=b;l=0;while(1){r=_(j,k)|0;k=(k+1|0)/2|0;h=l+1|0;c[s+(h<<2)>>2]=k;j=(j+1|0)/2|0;c[t+(h<<2)>>2]=j;g=g+r|0;if(r>>>0<=1)break;else l=h}c[f>>2]=g;if(!g){f=a+12|0;g=c[f>>2]|0;if(g){Uc(g);c[f>>2]=0}Uc(a);t=0;i=u;return t|0}h=g<<4;j=a+16|0;k=a+12|0;do if(h>>>0>(c[j>>2]|0)>>>0){g=Tc(c[k>>2]|0,h)|0;if(g){c[k>>2]=g;d=c[j>>2]|0;Qi(g+d|0,0,h-d|0)|0;c[j>>2]=h;d=c[m>>2]|0;b=c[a>>2]|0;break}Ub(e,1,20166,n)|0;f=c[k>>2]|0;if(f){Uc(f);c[k>>2]=0}Uc(a);t=0;i=u;return t|0}while(0);g=c[k>>2]|0;b=g+((_(d,b)|0)<<4)|0;if(l){r=0;d=b;do{p=c[t+(r<<2)>>2]|0;a:do if((p|0)>0){q=c[s+(r<<2)>>2]|0;if((q|0)<=0){h=p+-1|0;j=0;while(1){o=(j&1|0)!=0|(j|0)==(h|0);k=o?d:b+(q<<4)|0;d=o?d:b;j=j+1|0;if((j|0)>=(p|0)){b=k;break a}else b=k}}o=((q+2+((q|0)<2?~q:-3)|0)>>>1)+1|0;e=p+-1|0;n=0;while(1){m=q;k=d;while(1){c[g>>2]=k;h=g+16|0;j=m;m=m+-2|0;if((m|0)>-1){c[h>>2]=k;g=g+32|0}else g=h;if((j|0)<=2)break;else k=k+16|0}d=d+(o<<4)|0;m=(n&1|0)!=0|(n|0)==(e|0);h=m?d:b+(q<<4)|0;d=m?d:b;n=n+1|0;if((n|0)>=(p|0)){b=h;break}else b=h}}while(0);r=r+1|0}while((r|0)!=(l|0))}c[g>>2]=0}f=c[f>>2]|0;if(!f){t=a;i=u;return t|0}g=0;b=c[a+12>>2]|0;while(1){c[b+4>>2]=999;c[b+8>>2]=0;c[b+12>>2]=0;g=g+1|0;if((g|0)==(f|0))break;else b=b+16|0}i=u;return a|0}function mg(a){a=a|0;var b=0,d=0;if(!a)return;b=a+12|0;d=c[b>>2]|0;if(d){Uc(d);c[b>>2]=0}Uc(a);return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;b=(c[a+12>>2]|0)+(b<<4)|0;if(!b)return;while(1){a=b+4|0;if((c[a>>2]|0)<=(d|0)){b=4;break}c[a>>2]=d;b=c[b>>2]|0;if(!b){b=4;break}}if((b|0)==4)return}function og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+128|0;j=k;d=(c[b+12>>2]|0)+(d<<4)|0;if(!(c[d>>2]|0)){f=0;g=j}else{f=d;b=j;while(1){g=b+4|0;c[b>>2]=d;d=c[f>>2]|0;if(!(c[d>>2]|0)){f=0;break}else{f=d;b=g}}}while(1){h=d+8|0;b=c[h>>2]|0;if((f|0)>(b|0)){c[h>>2]=f;b=f}a:do if((b|0)<(e|0)){f=d+4|0;while(1){if((b|0)>=(c[f>>2]|0))break;Bg(a,0,1);b=b+1|0;if((b|0)>=(e|0)){d=b;break a}}d=d+12|0;if(!(c[d>>2]|0)){Bg(a,1,1);c[d>>2]=1;d=b}else d=b}else d=b;while(0);c[h>>2]=d;if((g|0)==(j|0))break;h=g+-4|0;f=d;d=c[h>>2]|0;g=h}i=k;return}function pg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+128|0;j=k;d=(c[b+12>>2]|0)+(d<<4)|0;if(!(c[d>>2]|0)){b=0;g=j}else{f=d;b=j;while(1){g=b+4|0;c[b>>2]=d;d=c[f>>2]|0;if(!(c[d>>2]|0)){b=0;break}else{f=d;b=g}}}while(1){h=d+8|0;f=c[h>>2]|0;if((b|0)>(f|0))c[h>>2]=b;else b=f;d=d+4|0;a:do if((b|0)<(e|0)){while(1){if((b|0)>=(c[d>>2]|0))break a;if(Cg(a,1)|0)break;b=b+1|0;if((b|0)>=(e|0))break a}c[d>>2]=b}while(0);c[h>>2]=b;if((g|0)==(j|0))break;h=g+-4|0;d=c[h>>2]|0;g=h}i=k;return (c[d>>2]|0)<(e|0)|0}function qg(){var a=0,b=0;a=Qc(1,12)|0;if(!a){a=0;return a|0}c[a+4>>2]=10;b=Qc(10,4)|0;c[a+8>>2]=b;if(b){b=a;return b|0}Uc(a);b=0;return b|0}function rg(a){a=a|0;var b=0;if(!a)return;b=c[a+8>>2]|0;if(b)Uc(b);Uc(a);return}function sg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;g=a+4|0;f=c[g>>2]|0;e=c[a>>2]|0;do if((f|0)==(e|0)){f=f+10|0;c[g>>2]=f;e=a+8|0;f=Tc(c[e>>2]|0,f<<2)|0;if(f){c[e>>2]=f;e=c[a>>2]|0;break}Uc(c[e>>2]|0);c[g>>2]=0;c[a>>2]=0;Ub(d,1,20214,h)|0;a=0;i=j;return a|0}else f=c[a+8>>2]|0;while(0);c[f+(e<<2)>>2]=b;c[a>>2]=e+1;a=1;i=j;return a|0}function tg(a){a=a|0;return c[a>>2]|0}function ug(a){a=a|0;return c[a+8>>2]|0}function vg(a){a=a|0;c[a>>2]=0;return}function wg(){return Pc(20)|0}function xg(a){a=a|0;if(!a)return;Uc(a);return}function yg(a){a=a|0;return (c[a+8>>2]|0)-(c[a>>2]|0)|0}function zg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=b+d;c[a+8>>2]=b;c[a+12>>2]=0;c[a+16>>2]=8;return}function Ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=b+d;c[a+8>>2]=b;c[a+12>>2]=0;c[a+16>>2]=0;return}function Bg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!e)return;k=b+16|0;l=b+12|0;m=b+8|0;h=b+4|0;b=c[k>>2]|0;j=e+-1|0;do{i=d>>>j&1;if(!b){g=c[l>>2]|0;b=g<<8&65280;c[l>>2]=b;b=(b|0)==65280?7:8;c[k>>2]=b;f=c[m>>2]|0;if(f>>>0<(c[h>>2]|0)>>>0){c[m>>2]=f+1;a[f>>0]=g;b=c[k>>2]|0}}b=b+-1|0;c[k>>2]=b;c[l>>2]=i<>2];j=j+-1|0}while(j>>>0>>0);return}function Cg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!b){b=0;return b|0}j=a+16|0;k=a+12|0;l=a+8|0;h=a+4|0;e=c[j>>2]|0;f=c[k>>2]|0;i=b+-1|0;a=0;do{if(!e){g=f<<8&65280;c[k>>2]=g;e=(g|0)==65280?7:8;c[j>>2]=e;f=c[l>>2]|0;if(f>>>0<(c[h>>2]|0)>>>0){c[l>>2]=f+1;f=d[f>>0]|0|g;c[k>>2]=f}else f=g}e=e+-1|0;c[j>>2]=e;a=((f>>>e&1)<>>0>>0);return a|0}function Dg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=b+12|0;d=c[f>>2]|0;i=d<<8&65280;c[f>>2]=i;g=b+16|0;c[g>>2]=(i|0)==65280?7:8;i=b+8|0;e=c[i>>2]|0;h=b+4|0;if(e>>>0>=(c[h>>2]|0)>>>0){i=0;return i|0}c[i>>2]=e+1;a[e>>0]=d;if((c[g>>2]|0)!=7){i=1;return i|0}d=c[f>>2]|0;b=d<<8&65280;c[f>>2]=b;c[g>>2]=(b|0)==65280?7:8;b=c[i>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0){i=0;return i|0}c[i>>2]=b+1;a[b>>0]=d;i=1;return i|0}function Eg(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;h=a+12|0;b=c[h>>2]|0;do if((b&255|0)==255){f=b<<8&65280;c[h>>2]=f;b=a+16|0;c[b>>2]=(f|0)==65280?7:8;g=a+8|0;e=c[g>>2]|0;if(e>>>0<(c[a+4>>2]|0)>>>0){c[g>>2]=e+1;c[h>>2]=d[e>>0]|0|f;break}else{a=0;return a|0}}else b=a+16|0;while(0);c[b>>2]=0;a=1;return a|0}function Fg(a){a=a|0;return Pg(a,1)|0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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;D=i;i=i+32|0;B=D+16|0;C=D;k=c[a+24>>2]|0;j=(c[k+8>>2]|0)-(c[k>>2]|0)|0;h=(c[k+12>>2]|0)-(c[k+4>>2]|0)|0;A=(c[a+8>>2]|0)-(c[a>>2]|0)|0;if((b|0)==1){C=1;i=D;return C|0}g=b+-1|0;f=(g|0)==0;if(f)b=0;else{d=k;e=g;b=0;do{z=d;d=d+136|0;y=(c[z+144>>2]|0)-(c[d>>2]|0)|0;b=b>>>0>>0?y:b;z=(c[z+148>>2]|0)-(c[z+140>>2]|0)|0;b=b>>>0>>0?z:b;e=e+-1|0}while((e|0)!=0);b=b<<2}z=Rc(b)|0;c[B>>2]=z;if(!z){C=0;i=D;return C|0}c[C>>2]=z;if(!f){s=a+32|0;t=B+8|0;u=C+8|0;v=B+4|0;w=B+12|0;x=C+4|0;y=C+12|0;do{q=c[s>>2]|0;n=k;k=k+136|0;c[t>>2]=j;c[u>>2]=h;o=c[n+144>>2]|0;p=c[k>>2]|0;e=j;j=o-p|0;b=c[n+148>>2]|0;n=n+140|0;r=c[n>>2]|0;d=h;h=b-r|0;c[v>>2]=j-e;c[w>>2]=(p|0)%2|0;r=(b|0)==(r|0);if(!r){m=j<<2;b=0;while(1){a=_(b,A)|0;l=q+(a<<2)|0;if(e){d=l;f=z+(c[w>>2]<<2)|0;while(1){e=e+-1|0;c[f>>2]=c[d>>2];if(!e)break;else{d=d+4|0;f=f+8|0}}}d=c[v>>2]|0;if(d){e=q+((c[t>>2]|0)+a<<2)|0;f=z+(1-(c[w>>2]|0)<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+4|0;f=f+8|0}}}Qg(B);Ui(l|0,z|0,m|0)|0;b=b+1|0;if((b|0)==(h|0))break;e=c[t>>2]|0}d=c[u>>2]|0;b=c[n>>2]|0}c[x>>2]=h-d;c[y>>2]=(b|0)%2|0;a:do if((o|0)!=(p|0)){b=0;while(1){if(d){e=q+(b<<2)|0;f=z+(c[y>>2]<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+(A<<2)|0;f=f+8|0}}}d=c[x>>2]|0;if(d){e=q+((_(c[u>>2]|0,A)|0)+b<<2)|0;f=z+(1-(c[y>>2]|0)<<2)|0;while(1){d=d+-1|0;c[f>>2]=c[e>>2];if(!d)break;else{e=e+(A<<2)|0;f=f+8|0}}}Qg(C);if(!r){d=0;do{c[q+((_(d,A)|0)+b<<2)>>2]=c[z+(d<<2)>>2];d=d+1|0}while((d|0)!=(h|0))}b=b+1|0;if((b|0)==(j|0))break a;d=c[u>>2]|0}}while(0);g=g+-1|0}while((g|0)!=0)}Sc(z);C=1;i=D;return C|0}function Hg(a){a=a|0;if(!a){a=0;return a|0}a=(a+-1|0)>>>0<2?1:2;return a|0}function Ig(a,b){a=a|0;b=b|0;return +(+h[56+(b*80|0)+(a<<3)>>3])}function Jg(a){a=a|0;return Pg(a,2)|0}function Kg(a){a=a|0;return 0}function Lg(a,b){a=a|0;b=b|0;return +(+h[376+(b*80|0)+(a<<3)>>3])}function Mg(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;l=((c[k>>2]|0)*3|0)+-2|0;if(!l)return;m=a+20|0;n=a+24|0;o=0;do{if(!o){e=0;f=0}else{f=o+-1|0;e=((f>>>0)/3|0)+1|0;f=((f>>>0)%3|0)+1|0}if((f|0)==0|(c[m>>2]|0)==0)g=0;else g=(f+-1|0)>>>0<2?1:2;if(!(c[n>>2]|0))d=1.0;else d=+(1<>2]|0)+~e<<3)>>3];j=~~+M(+(d*8192.0));i=g+b|0;if((j|0)>1){e=j;f=0;while(1){e=e>>1;if((e|0)<=1)break;else f=f+1|0}g=j;e=0;do{g=g>>1;e=e+1|0}while((g|0)>1);f=f+-12|0}else{f=-13;e=0}g=11-e|0;c[a+28+(o<<3)+4>>2]=((g|0)<0?j>>0-g:j<>2]=i-f;o=o+1|0}while((o|0)!=(l|0));return}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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;T=i;i=i+32|0;Q=T+16|0;R=T;m=c[a+24>>2]|0;n=c[m+8>>2]|0;o=c[m>>2]|0;k=c[m+12>>2]|0;l=c[m+4>>2]|0;P=a+8|0;h=c[P>>2]|0;j=c[a>>2]|0;O=h-j|0;g=b+-1|0;f=(g|0)==0;if(f)b=80;else{d=m;e=g;b=0;do{N=d;d=d+136|0;M=(c[N+144>>2]|0)-(c[d>>2]|0)|0;b=b>>>0>>0?M:b;N=(c[N+148>>2]|0)-(c[N+140>>2]|0)|0;b=b>>>0>>0?N:b;e=e+-1|0}while((e|0)!=0);b=(b<<4)+80|0}N=Rc(b)|0;c[Q>>2]=N;if(!N){S=0;i=T;return S|0}c[R>>2]=N;a:do if(!f){y=a+32|0;z=a+12|0;A=a+4|0;B=Q+8|0;C=R+8|0;D=Q+4|0;E=Q+12|0;F=R+4|0;G=R+12|0;H=O<<1;I=O<<2;J=O*3|0;L=j<<2;M=h<<2;K=L-M|0;L=M-L|0;M=h-j<<2;b=g;d=N;g=h;e=j;r=k-l|0;f=m;h=n-o|0;while(1){s=c[y>>2]|0;e=_((c[z>>2]|0)-(c[A>>2]|0)|0,g-e|0)|0;c[B>>2]=h;c[C>>2]=r;w=f+136|0;p=c[f+144>>2]|0;q=c[w>>2]|0;x=p-q|0;u=c[f+148>>2]|0;n=f+140|0;t=c[n>>2]|0;v=u-t|0;c[D>>2]=x-h;c[E>>2]=(q|0)%2|0;if((v|0)>3){g=(x|0)>0;h=(u+-4-t|0)>>>2;m=_(K,h)|0;h=s+(L+(_(M,h)|0)<<2)|0;j=s;k=e;l=v;while(1){Sg(Q,j,O,k);Tg(Q);if(g){f=x;do{o=f;f=f+-1|0;c[j+(f<<2)>>2]=c[N+(f<<4)>>2];c[j+(f+O<<2)>>2]=c[N+(f<<4)+4>>2];c[j+(f+H<<2)>>2]=c[N+(f<<4)+8>>2];c[j+(f+J<<2)>>2]=c[N+(f<<4)+12>>2]}while((o|0)>1)}l=l+-4|0;if((l|0)<=3)break;else{j=j+(I<<2)|0;k=k-I|0}}e=K+e+m|0}else h=s;g=v&3;b:do if(!g)S=21;else{Sg(Q,h,O,e);Tg(Q);if((x|0)>0)e=x;else{k=v-r|0;c[F>>2]=k;g=(c[n>>2]|0)%2|0;c[G>>2]=g;l=r;j=s;break}while(1){f=e;e=e+-1|0;switch(g|0){case 3:{c[h+(e+H<<2)>>2]=c[N+(e<<4)+8>>2];S=18;break}case 2:{S=18;break}case 1:{S=19;break}default:{}}if((S|0)==18){c[h+(e+O<<2)>>2]=c[N+(e<<4)+4>>2];S=19}if((S|0)==19){S=0;c[h+(e<<2)>>2]=c[N+(e<<4)>>2]}if((f|0)<=1){S=21;break b}}}while(0);if((S|0)==21){S=0;k=v-r|0;c[F>>2]=k;g=(c[n>>2]|0)%2|0;c[G>>2]=g;if((x|0)>3){o=(u|0)==(t|0);p=p+-4-q|0;n=c[C>>2]|0;l=(n|0)>0;j=1-g|0;m=(k|0)>0;f=s;h=x;while(1){if(l){e=0;do{r=d+((e<<1)+g<<4)|0;q=f+((_(e,O)|0)<<2)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(n|0))}if(m){e=0;do{r=d+(j+(e<<1)<<4)|0;q=f+((_(e+n|0,O)|0)<<2)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(k|0))}Tg(R);if(!o){d=c[R>>2]|0;e=0;do{r=f+((_(e,O)|0)<<2)|0;q=d+(e<<4)|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];e=e+1|0}while((e|0)!=(v|0))}h=h+-4|0;if((h|0)<=3)break;else f=f+16|0}l=n;j=s+((p+4&-4)<<2)|0}else{l=r;j=s}}h=x&3;if(h){d=c[R>>2]|0;if((l|0)>0){e=h<<2;f=0;do{Ui(d+((f<<1)+g<<4)|0,j+((_(f,O)|0)<<2)|0,e|0)|0;f=f+1|0}while((f|0)!=(l|0))}e=1-g|0;if((k|0)>0){f=h<<2;g=0;do{Ui(d+(e+(g<<1)<<4)|0,j+((_(g+l|0,O)|0)<<2)|0,f|0)|0;g=g+1|0}while((g|0)!=(k|0))}Tg(R);if((u|0)!=(t|0)){e=h<<2;f=0;do{Ui(j+((_(f,O)|0)<<2)|0,d+(f<<4)|0,e|0)|0;f=f+1|0}while((f|0)!=(v|0))}}b=b+-1|0;if(!b)break a;g=c[P>>2]|0;e=c[a>>2]|0;r=v;f=w;h=x}}while(0);Sc(N);S=1;i=T;return S|0}function Og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if(!e){e=(b|0)>0;if(!(e|(d|0)>1))return;if(e){e=a+((d<<1)+-2<<2)|0;f=0;do{j=f;f=f+1|0;k=a+((j<<1|1)<<2)|0;c[k>>2]=(c[k>>2]|0)-((c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((j|0)<(d|0)?a+(j<<1<<2)|0:e)>>2]|0)>>1)}while((f|0)!=(b|0))}if((d|0)<=0)return;f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;k=a+(h<<1<<2)|0;c[k>>2]=((c[e>>2]|0)+2+(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)>>2)+(c[k>>2]|0);h=h+1|0}while((h|0)!=(d|0));return}if((b|0)==1&(d|0)==0){c[a>>2]=c[a>>2]<<1;return}if((b|0)>0){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;i=a+(i<<2)|0;c[i>>2]=(c[i>>2]|0)-((c[e>>2]|0)+j>>1);k=k+1|0}while((k|0)!=(b|0))}if((d|0)<=0)return;e=a+((b<<1)+-2<<2)|0;f=0;do{j=f;f=f+1|0;k=a+((j<<1|1)<<2)|0;c[k>>2]=((c[((j|0)<(b|0)?a+(j<<1<<2)|0:e)>>2]|0)+2+(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)>>2)+(c[k>>2]|0)}while((f|0)!=(d|0));return}function Pg(a,b){a=a|0;b=b|0;var 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;w=(c[a+8>>2]|0)-(c[a>>2]|0)|0;g=c[a+16>>2]|0;i=g+-1|0;x=c[a+32>>2]|0;h=c[a+24>>2]|0;f=(i|0)==0;if(f)a=0;else{d=h;e=i;a=0;do{v=d;d=d+136|0;u=(c[v+144>>2]|0)-(c[d>>2]|0)|0;a=a>>>0>>0?u:a;v=(c[v+148>>2]|0)-(c[v+140>>2]|0)|0;a=a>>>0>>0?v:a;e=e+-1|0}while((e|0)!=0);a=a<<2}v=Pc(a)|0;if(!((a|0)==0|(v|0)!=0)){b=0;return b|0}if(!f){t=g+-2|0;u=t;a=h+(i*136|0)|0;t=h+(t*136|0)|0;while(1){q=c[a>>2]|0;s=(c[a+8>>2]|0)-q|0;m=c[a+4>>2]|0;o=(c[a+12>>2]|0)-m|0;p=(c[t+8>>2]|0)-(c[t>>2]|0)|0;a=c[t+12>>2]|0;d=c[t+4>>2]|0;l=a-d|0;q=q&1;m=m&1;n=o-l|0;r=(s|0)>0;a:do if(r){f=(a|0)==(d|0);i=(o|0)==(l|0);j=v+((m^1)<<2)|0;k=_(l,w)|0;h=v+(m<<2)|0;if((o|0)>0){g=0;while(1){d=x+(g<<2)|0;a=0;do{c[v+(a<<2)>>2]=c[x+((_(a,w)|0)+g<<2)>>2];a=a+1|0}while((a|0)!=(o|0));ab[b&3](v,n,l,m);if(!f){e=l;a=h;while(1){e=e+-1|0;c[d>>2]=c[a>>2];if(!e)break;else{d=d+(w<<2)|0;a=a+8|0}}}if(!i){a=n;d=x+(g+k<<2)|0;e=j;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}g=g+1|0;if((g|0)==(s|0))break a}}if(f){d=0;while(1){ab[b&3](v,n,l,m);if(!i){a=n;e=x+(d+k<<2)|0;f=j;while(1){a=a+-1|0;c[e>>2]=c[f>>2];if(!a)break;else{e=e+(w<<2)|0;f=f+8|0}}}d=d+1|0;if((d|0)==(s|0))break a}}else f=0;do{ab[b&3](v,n,l,m);a=l;d=x+(f<<2)|0;e=h;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}if(!i){a=n;d=x+(f+k<<2)|0;e=j;while(1){a=a+-1|0;c[d>>2]=c[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}f=f+1|0}while((f|0)!=(s|0))}while(0);g=s-p|0;if((o|0)>0){h=(p|0)>0;i=v+(q<<2)|0;j=(g|0)>0;k=v+((q^1)<<2)|0;l=0;do{f=_(l,w)|0;d=x+(f<<2)|0;if(r){a=0;do{c[v+(a<<2)>>2]=c[x+(a+f<<2)>>2];a=a+1|0}while((a|0)!=(s|0))}ab[b&3](v,g,p,q);if(h){e=0;a=i;while(1){c[d>>2]=c[a>>2];e=e+1|0;if((e|0)==(p|0))break;else{d=d+4|0;a=a+8|0}}}if(j){e=0;a=x+(f+p<<2)|0;d=k;while(1){c[a>>2]=c[d>>2];e=e+1|0;if((e|0)==(g|0))break;else{a=a+4|0;d=d+8|0}}}l=l+1|0}while((l|0)!=(o|0))}if(!u)break;else{a=t;u=u+-1|0;t=t+-136|0}}}Uc(v);b=1;return b|0}function Qg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=c[a+4>>2]|0;k=c[a+8>>2]|0;if(!(c[a+12>>2]|0)){e=(j|0)>0;if(!(e|(k|0)>1))return;if((k|0)>0){b=i+4|0;d=(j<<1)+-1|0;f=0;do{if((f|0)<1)a=b;else a=i+((((f|0)>(j|0)?j:f)<<1)+-1<<2)|0;g=f<<1;h=i+(g<<2)|0;c[h>>2]=(c[h>>2]|0)-((c[a>>2]|0)+2+(c[i+(((f|0)<(j|0)?g|1:d)<<2)>>2]|0)>>2);f=f+1|0}while((f|0)!=(k|0))}if(!e)return;a=i+((k<<1)+-2<<2)|0;b=0;do{g=b<<1;f=b;b=b+1|0;h=i+((g|1)<<2)|0;c[h>>2]=((c[((b|0)<(k|0)?i+(b<<1<<2)|0:a)>>2]|0)+(c[((f|0)<(k|0)?i+(g<<2)|0:a)>>2]|0)>>1)+(c[h>>2]|0)}while((b|0)!=(j|0));return}if((j|0)==1&(k|0)==0){c[i>>2]=(c[i>>2]|0)/2|0;return}if((k|0)>0){a=i+((j<<1)+-2<<2)|0;b=0;do{g=b<<1;f=b;b=b+1|0;h=i+((g|1)<<2)|0;c[h>>2]=(c[h>>2]|0)-((c[((f|0)<(j|0)?i+(g<<2)|0:a)>>2]|0)+2+(c[((b|0)<(j|0)?i+(b<<1<<2)|0:a)>>2]|0)>>2)}while((b|0)!=(k|0))}if((j|0)<=0)return;b=i+4|0;d=(k<<1)+-1|0;e=i+(d<<2)|0;h=0;do{f=h<<1;g=c[i+(((h|0)<(k|0)?f|1:d)<<2)>>2]|0;if((h|0)>=1)if((h|0)>(k|0))a=e;else a=i+(f+-1<<2)|0;else a=b;f=i+(f<<2)|0;c[f>>2]=((c[a>>2]|0)+g>>1)+(c[f>>2]|0);h=h+1|0}while((h|0)!=(j|0));return}function Rg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!e){j=(b|0)>0;if(!(j|(d|0)>1))return;if(j){e=a+((d<<1)+-2<<2)|0;f=0;do{m=f;f=f+1|0;l=(c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((m|0)<(d|0)?a+(m<<1<<2)|0:e)>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,12993,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+((m<<1|1)<<2)|0;c[m>>2]=(c[m>>2]|0)-l}while((f|0)!=(b|0))}i=(d|0)>0;if(i){f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;l=(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)+(c[e>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,434,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+(h<<1<<2)|0;c[m>>2]=(c[m>>2]|0)-l;h=h+1|0}while((h|0)!=(d|0))}if(j){e=a+((d<<1)+-2<<2)|0;f=0;do{m=f;f=f+1|0;l=(c[((f|0)<(d|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((m|0)<(d|0)?a+(m<<1<<2)|0:e)>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,7233,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+((m<<1|1)<<2)|0;c[m>>2]=l+(c[m>>2]|0)}while((f|0)!=(b|0))}if(i){f=a+4|0;g=(b<<1)+-1|0;h=0;do{if((h|0)<1)e=f;else e=a+((((h|0)>(b|0)?b:h)<<1)+-1<<2)|0;l=(c[a+(((h|0)<(b|0)?h<<1|1:g)<<2)>>2]|0)+(c[e>>2]|0)|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,3633,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;m=a+(h<<1<<2)|0;c[m>>2]=l+(c[m>>2]|0);h=h+1|0}while((h|0)!=(d|0))}if(j){e=0;do{m=a+((e<<1|1)<<2)|0;l=c[m>>2]|0;l=Zi(l|0,((l|0)<0)<<31>>31|0,5038,0)|0;l=Si(l|0,C|0,4096,0)|0;l=Ti(l|0,C|0,13)|0;c[m>>2]=l;e=e+1|0}while((e|0)!=(b|0))}if(i)e=0;else return;do{b=a+(e<<1<<2)|0;m=c[b>>2]|0;m=Zi(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;c[b>>2]=m;e=e+1|0}while((e|0)!=(d|0));return}m=(d|0)>0;if(!((b|0)>1|m))return;l=(b|0)>0;if(l){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;e=(c[e>>2]|0)+j|0;e=Zi(e|0,((e|0)<0)<<31>>31|0,12993,0)|0;e=Si(e|0,C|0,4096,0)|0;e=Ti(e|0,C|0,13)|0;j=a+(i<<2)|0;c[j>>2]=(c[j>>2]|0)-e;k=k+1|0}while((k|0)!=(b|0))}if(m){e=a+((b<<1)+-2<<2)|0;f=0;do{k=f;f=f+1|0;j=(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((k|0)<(b|0)?a+(k<<1<<2)|0:e)>>2]|0)|0;j=Zi(j|0,((j|0)<0)<<31>>31|0,434,0)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;k=a+((k<<1|1)<<2)|0;c[k>>2]=(c[k>>2]|0)-j}while((f|0)!=(d|0))}if(l){f=a+4|0;g=(d<<1)+-1|0;h=a+(g<<2)|0;k=0;do{i=k<<1;j=c[a+(((k|0)<(d|0)?i|1:g)<<2)>>2]|0;if((k|0)>=1)if((k|0)>(d|0))e=h;else e=a+(i+-1<<2)|0;else e=f;e=(c[e>>2]|0)+j|0;e=Zi(e|0,((e|0)<0)<<31>>31|0,7233,0)|0;e=Si(e|0,C|0,4096,0)|0;e=Ti(e|0,C|0,13)|0;j=a+(i<<2)|0;c[j>>2]=e+(c[j>>2]|0);k=k+1|0}while((k|0)!=(b|0))}if(m){e=a+((b<<1)+-2<<2)|0;f=0;do{k=f;f=f+1|0;j=(c[((f|0)<(b|0)?a+(f<<1<<2)|0:e)>>2]|0)+(c[((k|0)<(b|0)?a+(k<<1<<2)|0:e)>>2]|0)|0;j=Zi(j|0,((j|0)<0)<<31>>31|0,3633,0)|0;j=Si(j|0,C|0,4096,0)|0;j=Ti(j|0,C|0,13)|0;k=a+((k<<1|1)<<2)|0;c[k>>2]=j+(c[k>>2]|0)}while((f|0)!=(d|0))}if(l){e=0;do{l=a+(e<<1<<2)|0;k=c[l>>2]|0;k=Zi(k|0,((k|0)<0)<<31>>31|0,5038,0)|0;k=Si(k|0,C|0,4096,0)|0;k=Ti(k|0,C|0,13)|0;c[l>>2]=k;e=e+1|0}while((e|0)!=(b|0))}if(m)e=0;else return;do{b=a+((e<<1|1)<<2)|0;m=c[b>>2]|0;m=Zi(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=Si(m|0,C|0,4096,0)|0;m=Ti(m|0,C|0,13)|0;c[b>>2]=m;e=e+1|0}while((e|0)!=(d|0));return}function Sg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=c[a>>2]|0;i=c[a+12>>2]|0;q=c[a+8>>2]|0;n=d*3|0;l=1-i|0;k=a+4|0;j=q;a=0;while(1){h=m+(i<<4)|0;if(((j+n|0)<(e|0)?(b&15|0)==0:0)?((h|d)&15|0)==0:0){if((j|0)>0){f=0;do{h=f<<3;c[m+(i<<4)+(h<<2)>>2]=c[b+(f<<2)>>2];g=f+d|0;c[m+(i<<4)+((h|1)<<2)>>2]=c[b+(g<<2)>>2];g=g+d|0;c[m+(i<<4)+((h|2)<<2)>>2]=c[b+(g<<2)>>2];c[m+(i<<4)+((h|3)<<2)>>2]=c[b+(g+d<<2)>>2];f=f+1|0}while((f|0)!=(j|0))}}else r=3;if((r|0)==3?(r=0,(j|0)>0):0){h=0;do{f=h<<3;c[m+(i<<4)+(f<<2)>>2]=c[b+(h<<2)>>2];g=h+d|0;if(((g|0)<(e|0)?(c[m+(i<<4)+((f|1)<<2)>>2]=c[b+(g<<2)>>2],o=g+d|0,(o|0)<(e|0)):0)?(c[m+(i<<4)+((f|2)<<2)>>2]=c[b+(o<<2)>>2],p=o+d|0,(p|0)<(e|0)):0)c[m+(i<<4)+((f|3)<<2)>>2]=c[b+(p<<2)>>2];h=h+1|0}while((h|0)!=(j|0))}a=a+1|0;if((a|0)==2)break;else{b=b+(q<<2)|0;e=e-q|0;i=l;j=c[k>>2]|0}}return}function Tg(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0.0,o=0,p=0;do if(!(c[a+12>>2]|0)){d=c[a+8>>2]|0;if((c[a+4>>2]|0)>0){b=c[a>>2]|0;if((d|0)>0){i=0;f=1;j=9;break}else{i=0;h=1;break}}if((d|0)>1){e=0;f=1;j=7}else return}else{d=c[a+8>>2]|0;if((d|0)<=0)if((c[a+4>>2]|0)>1){b=c[a>>2]|0;i=1;h=0;break}else return;else{e=1;f=0;j=7}}while(0);if((j|0)==7){b=c[a>>2]|0;i=e;j=9}if((j|0)==9){e=0;do{j=e<<3;o=b+(i<<4)+(j<<2)|0;m=b+(i<<4)+((j|1)<<2)|0;n=+g[m>>2];h=b+(i<<4)+((j|2)<<2)|0;l=+g[h>>2];j=b+(i<<4)+((j|3)<<2)|0;k=+g[j>>2];g[o>>2]=+g[o>>2]*1.2301740646362305;g[m>>2]=n*1.2301740646362305;g[h>>2]=l*1.2301740646362305;g[j>>2]=k*1.2301740646362305;e=e+1|0}while((e|0)!=(d|0));h=f}e=c[a+4>>2]|0;if((e|0)>0){f=0;do{o=f<<3;j=b+(h<<4)+(o<<2)|0;a=b+(h<<4)+((o|1)<<2)|0;k=+g[a>>2];m=b+(h<<4)+((o|2)<<2)|0;l=+g[m>>2];o=b+(h<<4)+((o|3)<<2)|0;n=+g[o>>2];g[j>>2]=+g[j>>2]*1.625732421875;g[a>>2]=k*1.625732421875;g[m>>2]=l*1.625732421875;g[o>>2]=n*1.625732421875;f=f+1|0}while((f|0)!=(e|0))}p=b+(h<<4)|0;f=b+(i+1<<4)|0;j=e-i|0;j=(d|0)<(j|0)?d:j;Ug(p,f,d,j,-.4435068666934967);a=b+(i<<4)|0;m=b+(h+1<<4)|0;o=d-h|0;o=(e|0)<(o|0)?e:o;Ug(a,m,e,o,-.8829110860824585);Ug(p,f,d,j,.05298011749982834);Ug(a,m,e,o,1.5861343145370483);return}function Ug(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0.0;if((d|0)>0){m=d<<1;l=m+-2|0;h=+g[a>>2];i=+g[a+4>>2];j=+g[a+8>>2];f=+g[a+12>>2];a=b;k=0;while(1){w=a+-16|0;t=a+-12|0;v=+g[t>>2];q=a+-8|0;s=+g[q>>2];n=a+-4|0;p=+g[n>>2];x=h;h=+g[a>>2];u=i;i=+g[a+4>>2];r=j;j=+g[a+8>>2];o=f;f=+g[a+12>>2];g[w>>2]=+g[w>>2]+(x+h)*e;g[t>>2]=v+(u+i)*e;g[q>>2]=s+(r+j)*e;g[n>>2]=p+(o+f)*e;k=k+1|0;if((k|0)==(d|0))break;else a=a+32|0}a=b+(l<<4)|0;b=b+(m<<4)|0}if((d|0)>=(c|0))return;f=e+e;h=f*+g[a>>2];i=f*+g[a+4>>2];j=f*+g[a+8>>2];f=f*+g[a+12>>2];while(1){n=b+-16|0;q=b+-12|0;u=+g[q>>2];t=b+-8|0;v=+g[t>>2];w=b+-4|0;x=+g[w>>2];g[n>>2]=h+ +g[n>>2];g[q>>2]=i+u;g[t>>2]=j+v;g[w>>2]=f+x;d=d+1|0;if((d|0)==(c|0))break;else b=b+32|0}return}function Vg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=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,z=0;x=d<<2;y=Pc(d<<4)|0;if(!y){a=0;return a|0}z=y+x|0;Qi(y|0,0,x|0)|0;v=d+-1|0;u=(d|0)==0;if(!u){e=0;f=y;while(1){c[f>>2]=e;e=e+1|0;if((e|0)==(d|0))break;else f=f+4|0}}a:do if(v){q=v;j=0;e=0;r=a;s=1;t=y;while(1){k=r+(j<<2)|0;if(j>>>0>>0){i=j;f=k;h=0.0}else break;while(1){o=+g[f>>2];o=o>0.0?o:-o;w=o>h;e=w?i:e;h=w?o:h;i=i+1|0;if((i|0)==(d|0))break;else f=f+(d<<2)|0}if(h==0.0)break;if((e|0)!=(j|0)){w=e-j|0;p=t+(w<<2)|0;n=c[t>>2]|0;c[t>>2]=c[p>>2];c[p>>2]=n;w=r+((_(w,d)|0)<<2)|0;Ui(z|0,w|0,x|0)|0;Ui(w|0,r|0,x|0)|0;Ui(r|0,z|0,x|0)|0}f=j;p=j+1|0;o=+g[k>>2];if(s>>>0>>0){l=r+(p<<2)|0;n=p+q|0;m=s;i=r+(f+d<<2)|0;while(1){h=+g[i>>2]/o;g[i>>2]=h;f=s;j=i;k=l;while(1){j=j+4|0;g[j>>2]=+g[j>>2]-h*+g[k>>2];f=f+1|0;if((f|0)==(d|0))break;else k=k+4|0}m=m+1|0;if((m|0)==(d|0))break;else i=i+(n<<2)|0}}if(p>>>0>>0){q=q+-1|0;j=p;r=r+(d<<2)|0;s=s+1|0;t=t+4|0}else break a}Uc(y);a=0;return a|0}while(0);e=d<<1;w=z+(e<<2)|0;if(!u){u=z+(v+d<<2)|0;q=z+(e+v<<2)|0;r=a+((_(d,d)|0)+-1<<2)|0;s=~d;t=0;p=b;while(1){Qi(z|0,0,x|0)|0;g[z+(t<<2)>>2]=1.0;j=0;k=1;l=y;m=w;n=a;while(1){if(!j)h=0.0;else{e=1;f=w;i=n;h=0.0;while(1){h=h+ +g[i>>2]*+g[f>>2];e=e+1|0;if((e|0)==(k|0))break;else{f=f+4|0;i=i+4|0}}}g[m>>2]=+g[z+(c[l>>2]<<2)>>2]-h;j=j+1|0;if((j|0)==(d|0)){j=d;k=u;l=w;m=q;n=r;break}else{k=k+1|0;l=l+4|0;m=m+4|0;n=n+(d<<2)|0}}while(1){e=j;j=j+-1|0;o=+g[n>>2];if(e>>>0>>0){f=l;i=n;h=0.0;while(1){i=i+4|0;h=h+ +g[i>>2]*+g[f>>2];e=e+1|0;if((e|0)==(d|0))break;else f=f+4|0}}else h=0.0;l=l+-4|0;g[k>>2]=(+g[m>>2]-h)/o;if(!j){e=0;f=p;break}else{k=k+-4|0;m=m+-4|0;n=n+(s<<2)|0}}while(1){c[f>>2]=c[z+(e+d<<2)>>2];e=e+1|0;if((e|0)==(d|0))break;else f=f+(d<<2)|0}t=t+1|0;if((t|0)==(d|0))break;else p=p+4|0}}Uc(y);a=1;return a|0}function Wg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=Qc(1,44)|0;if(!g){g=0;return g|0}h=hh()|0;c[g>>2]=h;if(!h){ih(0);c[g>>2]=0;h=g+4|0;yh(c[h>>2]|0);c[h>>2]=0;if((c[g+40>>2]|0)==0?(d=g+8|0,b=c[d>>2]|0,(b|0)!=0):0){Sc(b);c[d>>2]=0}b=g+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(g);h=0;return h|0}h=xh()|0;b=g+4|0;c[b>>2]=h;if(h){c[g+40>>2]=a;h=g;return h|0}ih(c[g>>2]|0);c[g>>2]=0;yh(c[b>>2]|0);c[b>>2]=0;if((c[g+40>>2]|0)==0?(e=g+8|0,f=c[e>>2]|0,(f|0)!=0):0){Sc(f);c[e>>2]=0}b=g+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(g);h=0;return h|0}function Xg(a){a=a|0;var b=0,d=0,e=0;if(!a)return;ih(c[a>>2]|0);c[a>>2]=0;e=a+4|0;yh(c[e>>2]|0);c[e>>2]=0;if((c[a+40>>2]|0)==0?(b=a+8|0,d=c[b>>2]|0,(d|0)!=0):0){Sc(d);c[b>>2]=0}b=a+12|0;d=c[b>>2]|0;if(d){Sc(d);c[b>>2]=0}Uc(a);return}function Yg(a,f,h){a=a|0;f=f|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,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,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;ya=(c[f+8>>2]|0)-(c[f>>2]|0)|0;za=f+20|0;i=c[za>>2]|0;if(!i){a=1;return a|0}Aa=f+24|0;Ba=h+808|0;Ca=h+16|0;ta=a+4|0;va=a+8|0;wa=a+16|0;xa=a+20|0;sa=h+20|0;pa=f+32|0;qa=a+32|0;ra=a+12|0;h=i;oa=0;a:while(1){ma=c[Aa>>2]|0;na=ma+(oa*136|0)+24|0;f=c[na>>2]|0;if(f){ja=ma+(oa*136|0)+16|0;ka=ma+(oa*136|0)+20|0;la=oa+-1|0;h=c[ka>>2]|0;i=c[ja>>2]|0;ia=0;do{if(_(h,i)|0){da=ma+(oa*136|0)+28+(ia*36|0)+20|0;ea=ma+(oa*136|0)+28+(ia*36|0)+16|0;fa=ma+(oa*136|0)+28+(ia*36|0)|0;ga=ma+(oa*136|0)+28+(ia*36|0)+4|0;ha=ma+(oa*136|0)+28+(ia*36|0)+32|0;ca=0;do{f=c[da>>2]|0;aa=f+(ca*40|0)+16|0;ba=f+(ca*40|0)+20|0;if(_(c[ba>>2]|0,c[aa>>2]|0)|0){Z=f+(ca*40|0)+24|0;$=0;do{h=c[Z>>2]|0;S=c[ea>>2]|0;j=c[Ba>>2]|0;f=c[Ca>>2]|0;T=c[ta>>2]|0;U=c[a>>2]|0;V=h+($*56|0)+8|0;Y=h+($*56|0)+12|0;if(!(_g(a,(c[h+($*56|0)+16>>2]|0)-(c[V>>2]|0)|0,(c[h+($*56|0)+20>>2]|0)-(c[Y>>2]|0)|0)|0)){h=0;G=201;break a}W=h+($*56|0)+24|0;k=c[W>>2]|0;qh(U);rh(U,18,0,46);rh(U,17,0,3);rh(U,0,0,4);X=h+($*56|0)+48|0;i=c[X>>2]|0;if(i){N=h+($*56|0)+4|0;O=(f&1|0)!=0;P=(f&2|0)==0;Q=(f&8|0)==0;R=S<<8;M=(f&32|0)==0;f=k+j|0;h=2;L=0;do{k=c[N>>2]|0;K=O&(h>>>0<2?(f|0)<=((c[W>>2]|0)+-4|0):0);j=c[k+(L<<5)>>2]|0;if(j){i=(c[j>>2]|0)+(c[k+(L<<5)+4>>2]|0)|0;j=c[k+(L<<5)+16>>2]|0;if(!K){if(!(vh(U,i,j)|0)){h=0;G=201;break a}}else zh(T,i,j);I=k+(L<<5)+12|0;b:do if(c[I>>2]|0){J=P|K;H=0;while(1){c:do switch(h|0){case 0:{if(K){w=1<>1|w;j=c[xa>>2]|0;if(!j)break c;v=0-w|0;i=c[wa>>2]|0;u=0;while(1){t=u;u=u+4|0;if(!i)i=0;else{q=(t|0)==-4;r=t|3;s=0;do{d:do if(!q)if(Q){o=t;do{if(o>>>0>=(c[xa>>2]|0)>>>0)break d;m=o;o=o+1|0;i=(_(c[qa>>2]|0,o)|0)+s|0;j=i+1|0;k=c[ra>>2]|0;l=k+(j<<1)|0;m=(_(c[wa>>2]|0,m)|0)+s|0;m=(c[va>>2]|0)+(m<<2)|0;n=c[ta>>2]|0;G=b[l>>1]|0;if((G&255|0)!=0&(G&20480|0)==0){if(Ah(n)|0){D=Ah(n)|0;c[m>>2]=(D|0)!=0?v:w;F=c[qa>>2]|0;G=k+(j-F<<1)|0;E=k+(F+j<<1)|0;C=k+(j+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=i+2|0;C=k+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=k+(i<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[l>>1]=e[l>>1]|4096;C=k+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=k+(F+i<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=k+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[l>>1]=e[l>>1]|16384}}while(o>>>0>>0)}else{p=t;do{i=c[xa>>2]|0;if(p>>>0>=i>>>0)break d;F=p;p=p+1|0;j=(_(c[qa>>2]|0,p)|0)+s|0;k=j+1|0;l=c[ra>>2]|0;m=l+(k<<1)|0;n=(_(c[wa>>2]|0,F)|0)+s|0;n=(c[va>>2]|0)+(n<<2)|0;o=c[ta>>2]|0;G=b[m>>1]|0;G=(F|0)==(r|0)|(F|0)==(i+-1|0)?G&-1095:G;if((G&255|0)!=0&(G&20480|0)==0){if(Ah(o)|0){D=Ah(o)|0;c[n>>2]=(D|0)!=0?v:w;F=c[qa>>2]|0;G=l+(k-F<<1)|0;E=l+(F+k<<1)|0;C=l+(k+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=j+2|0;C=l+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=l+(j<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[m>>1]=e[m>>1]|4096;C=l+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=l+(F+j<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=l+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[m>>1]=e[m>>1]|16384}}while(p>>>0>>0)}while(0);s=s+1|0;i=c[wa>>2]|0}while(s>>>0>>0);j=c[xa>>2]|0}if(u>>>0>=j>>>0){G=163;break c}}}if(Q){k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;r=1<>1|r;i=c[xa>>2]|0;j=c[wa>>2]|0;if(i>>>0>3){o=j;n=0;while(1){if(!j){j=o;m=0}else{j=0;do{G=(c[qa>>2]|0)+j|0;$g(a,l+(G<<1)|0,k+(j<<2)|0,S,r);i=(c[wa>>2]|0)+j|0;G=(c[qa>>2]|0)+G|0;$g(a,l+(G<<1)|0,k+(i<<2)|0,S,r);i=(c[wa>>2]|0)+i|0;G=(c[qa>>2]|0)+G|0;$g(a,l+(G<<1)|0,k+(i<<2)|0,S,r);$g(a,l+((c[qa>>2]|0)+G<<1)|0,k+((c[wa>>2]|0)+i<<2)|0,S,r);j=j+1|0;i=c[wa>>2]|0}while(j>>>0>>0);j=i;m=i;i=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=l+(c[qa>>2]<<2<<1)|0;n=n+4|0;if(n>>>0<(i&-4)>>>0){o=j;j=m}else{q=l;p=n;break}}}else{q=l;p=0}if(!j){G=163;break c}else o=0;while(1){if(p>>>0>>0){l=k+(o<<2)|0;m=q+(o<<1)|0;n=p;while(1){m=m+(c[qa>>2]<<1)|0;$g(a,m,l,S,r);j=c[wa>>2]|0;n=n+1|0;i=c[xa>>2]|0;if(n>>>0>=i>>>0)break;else l=l+(j<<2)|0}}o=o+1|0;if(o>>>0>=j>>>0){G=163;break c}}}w=1<>1|w;i=c[xa>>2]|0;if(!i){G=163;break c}x=0-w|0;j=c[wa>>2]|0;l=j;v=0;while(1){u=v;v=v+4|0;do if(!j){k=l;j=0}else{t=u|3;if((u|0)==-4){k=l;j=l;break}else s=0;do{r=u;do{i=c[xa>>2]|0;if(r>>>0>=i>>>0)break;G=r;r=r+1|0;l=(_(c[qa>>2]|0,r)|0)+s|0;m=l+1|0;n=c[ra>>2]|0;o=n+(m<<1)|0;p=(_(c[wa>>2]|0,G)|0)+s|0;p=(c[va>>2]|0)+(p<<2)|0;q=c[a>>2]|0;j=b[o>>1]|0;i=(G|0)==(t|0)|(G|0)==(i+-1|0)?j&-1095:j;j=i&255;if((j|0)!=0&(i&20480|0)==0){k=q+100|0;c[k>>2]=q+24+(d[20267+(j|R)>>0]<<2);if(wh(q)|0){F=i>>>4&255;c[k>>2]=q+24+(d[21291+F>>0]<<2);G=wh(q)|0;F=d[21547+F>>0]|0;D=F^G;c[p>>2]=(G|0)!=(F|0)?x:w;F=c[qa>>2]|0;G=n+(m-F<<1)|0;E=n+(F+m<<1)|0;C=n+(m+~F<<1)|0;b[C>>1]=e[C>>1]|2;b[G>>1]=b[G>>1]|b[3436+(D<<1)>>1];G=l+2|0;C=n+(G-F<<1)|0;b[C>>1]=e[C>>1]|4;C=n+(l<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+2<<1)>>1];b[o>>1]=e[o>>1]|4096;C=n+(G<<1)|0;b[C>>1]=b[C>>1]|b[3436+(D+4<<1)>>1];C=n+(F+l<<1)|0;b[C>>1]=e[C>>1]|1;b[E>>1]=b[E>>1]|b[3436+(D+6<<1)>>1];G=n+(F+G<<1)|0;b[G>>1]=e[G>>1]|8}b[o>>1]=e[o>>1]|16384}}while(r>>>0>>0);s=s+1|0;i=c[wa>>2]|0}while(s>>>0>>0);k=i;j=i;i=c[xa>>2]|0}while(0);if(v>>>0>=i>>>0){G=163;break}else l=k}break}case 1:{if(K){q=1<>1;r=(f|0)>0?0-q|0:-1;j=c[xa>>2]|0;if(!j)break c;k=c[wa>>2]|0;i=k;p=0;while(1){o=p;p=p+4|0;if(!k){l=i;k=0}else{n=(o|0)==-4;m=0;do{l=m;m=m+1|0;if(!n){k=o;do{if(k>>>0>=(c[xa>>2]|0)>>>0)break;j=k;k=k+1|0;i=(_(c[qa>>2]|0,k)|0)+m|0;i=(c[ra>>2]|0)+(i<<1)|0;j=(_(c[wa>>2]|0,j)|0)+l|0;j=(c[va>>2]|0)+(j<<2)|0;if((b[i>>1]&20480)==4096){F=(Ah(c[ta>>2]|0)|0)!=0;F=F?q:r;G=c[j>>2]|0;c[j>>2]=((G|0)<0?0-F|0:F)+G;b[i>>1]=e[i>>1]|8192}}while(k>>>0

>>0);i=c[wa>>2]|0}}while(m>>>0>>0);l=i;k=i;j=c[xa>>2]|0}if(p>>>0>=j>>>0){G=163;break c}else i=l}}if(!Q){t=1<>1;u=(f|0)>0?0-t|0:-1;i=c[xa>>2]|0;if(!i){G=163;break c}j=c[wa>>2]|0;k=j;s=0;while(1){r=s;s=s+4|0;if(!j)j=0;else{p=(r|0)==-4;q=r|3;i=k;o=0;do{n=o;o=o+1|0;if(!p){l=r;do{i=c[xa>>2]|0;if(l>>>0>=i>>>0)break;F=l;l=l+1|0;j=(_(c[qa>>2]|0,l)|0)+o|0;j=(c[ra>>2]|0)+(j<<1)|0;k=(_(c[wa>>2]|0,F)|0)+n|0;k=(c[va>>2]|0)+(k<<2)|0;m=c[a>>2]|0;G=b[j>>1]|0;i=(F|0)==(q|0)|(F|0)==(i+-1|0)?G&-1095:G;if((i&20480|0)==4096){c[m+100>>2]=m+24+(((i&8192|0)!=0?16:(i&255|0)!=0?15:14)<<2);F=(wh(m)|0)!=0;F=F?t:u;G=c[k>>2]|0;c[k>>2]=((G|0)<0?0-F|0:F)+G;b[j>>1]=e[j>>1]|8192}}while(l>>>0>>0);i=c[wa>>2]|0}}while(o>>>0>>0);k=i;j=i;i=c[xa>>2]|0}if(s>>>0>=i>>>0){G=163;break c}}}k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;v=1<>1;w=(f|0)>0?0-v|0:-1;i=c[xa>>2]|0;j=c[wa>>2]|0;if(i>>>0>3){n=j;t=l;u=0;while(1){if(!j){j=n;m=0}else{i=n;s=0;do{j=k+(s<<2)|0;n=c[qa>>2]|0;p=n+s|0;l=t+(p<<1)|0;o=c[a>>2]|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[o+100>>2]=o+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);n=(wh(o)|0)!=0;n=n?v:w;i=c[j>>2]|0;c[j>>2]=((i|0)<0?0-n|0:n)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}else{j=n;n=o}q=i+s|0;o=k+(q<<2)|0;r=j+p|0;l=t+(r<<1)|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);j=(wh(n)|0)!=0;j=j?v:w;i=c[o>>2]|0;c[o>>2]=((i|0)<0?0-j|0:j)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}p=i+q|0;o=k+(p<<2)|0;q=j+r|0;l=t+(q<<1)|0;m=b[l>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);j=(wh(n)|0)!=0;j=j?v:w;i=c[o>>2]|0;c[o>>2]=((i|0)<0?0-j|0:j)+i;b[l>>1]=e[l>>1]|8192;i=c[wa>>2]|0;j=c[qa>>2]|0;n=c[a>>2]|0}m=k+(i+p<<2)|0;j=t+(j+q<<1)|0;l=b[j>>1]|0;if((l&20480|0)==4096){c[n+100>>2]=n+24+(((l&8192|0)!=0?16:(l&255|0)!=0?15:14)<<2);G=(wh(n)|0)!=0;G=G?v:w;i=c[m>>2]|0;c[m>>2]=((i|0)<0?0-G|0:G)+i;b[j>>1]=e[j>>1]|8192;i=c[wa>>2]|0}s=s+1|0}while(s>>>0>>0);j=i;m=i;i=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=t+(c[qa>>2]<<2<<1)|0;o=u+4|0;if(o>>>0<(i&-4)>>>0){n=j;j=m;t=l;u=o}else{s=o;break}}}else s=0;if(!j){G=163;break c}else r=0;do{if(s>>>0>>0){o=k+(r<<2)|0;p=l+(r<<1)|0;q=s;while(1){p=p+(c[qa>>2]<<1)|0;n=c[a>>2]|0;m=b[p>>1]|0;if((m&20480|0)==4096){c[n+100>>2]=n+24+(((m&8192|0)!=0?16:(m&255|0)!=0?15:14)<<2);i=(wh(n)|0)!=0;i=i?v:w;m=c[o>>2]|0;c[o>>2]=((m|0)<0?0-i|0:i)+m;b[p>>1]=e[p>>1]|8192;m=c[wa>>2]|0;i=c[xa>>2]|0}else m=j;q=q+1|0;if(q>>>0>=i>>>0){j=m;break}else{j=m;o=o+(m<<2)|0}}}r=r+1|0}while(r>>>0>>0);G=163;break}case 2:{E=c[a>>2]|0;F=1<>1|F;do if(Q){k=c[va>>2]|0;l=(c[ra>>2]|0)+2|0;j=c[xa>>2]|0;if(j>>>0>3){w=E+92|0;x=E+100|0;y=E+96|0;z=0-F|0;m=c[wa>>2]|0;i=m;o=0;while(1){if(!m)m=0;else{r=o|1;s=r+1|0;t=o|3;u=r+3|0;v=0;do{i=c[qa>>2]|0;j=v;v=v+1|0;D=(_(i,r)|0)+v|0;G=c[ra>>2]|0;D=b[G+((_(i,s)|0)+v<<1)>>1]|b[G+(D<<1)>>1];D=D|b[G+((_(i,t)|0)+v<<1)>>1];e:do if(!((D|b[G+((_(i,u)|0)+v<<1)>>1])&20735)){c[x>>2]=w;if(!(wh(E)|0))break;c[x>>2]=y;p=(wh(E)|0)<<1;p=p|(wh(E)|0);if(p>>>0>=4)break;q=k+((_(c[wa>>2]|0,p)|0)+j<<2)|0;j=l+((_(c[qa>>2]|0,p)|0)+j<<1)|0;n=p;while(1){if(n>>>0>=(c[xa>>2]|0)>>>0)break e;i=c[qa>>2]|0;m=j;j=j+(i<<1)|0;if((n|0)==(p|0)){G=c[a>>2]|0;D=(e[j>>1]|0)>>>4&255;c[G+100>>2]=G+24+(d[21291+D>>0]<<2);G=wh(G)|0;D=d[21547+D>>0]|0;B=D^G;c[q>>2]=(G|0)!=(D|0)?z:F;D=c[qa>>2]|0;G=m+(i-D<<1)|0;C=m+(D+i<<1)|0;A=m+(i+~D<<1)|0;b[A>>1]=e[A>>1]|2;b[G>>1]=b[G>>1]|b[3436+(B<<1)>>1];G=i+1|0;A=m+(G-D<<1)|0;b[A>>1]=e[A>>1]|4;A=i+-1|0;i=m+(A<<1)|0;b[i>>1]=b[i>>1]|b[3436+(B+2<<1)>>1];b[j>>1]=e[j>>1]|4096;i=m+(G<<1)|0;b[i>>1]=b[i>>1]|b[3436+(B+4<<1)>>1];A=m+(D+A<<1)|0;b[A>>1]=e[A>>1]|1;b[C>>1]=b[C>>1]|b[3436+(B+6<<1)>>1];G=m+(D+G<<1)|0;b[G>>1]=e[G>>1]|8;b[j>>1]=e[j>>1]&49151}else ah(a,j,q,S,F);n=n+1|0;if(n>>>0>=4)break;else q=q+(c[wa>>2]<<2)|0}}else{D=i+j|0;ah(a,l+(D<<1)|0,k+(j<<2)|0,S,F);G=(c[wa>>2]|0)+j|0;D=(c[qa>>2]|0)+D|0;ah(a,l+(D<<1)|0,k+(G<<2)|0,S,F);G=(c[wa>>2]|0)+G|0;D=(c[qa>>2]|0)+D|0;ah(a,l+(D<<1)|0,k+(G<<2)|0,S,F);ah(a,l+((c[qa>>2]|0)+D<<1)|0,k+((c[wa>>2]|0)+G<<2)|0,S,F)}while(0);i=c[wa>>2]|0}while(v>>>0>>0);m=i;j=c[xa>>2]|0}k=k+(m<<2<<2)|0;l=l+(c[qa>>2]<<2<<1)|0;o=o+4|0;if(o>>>0>=(j&-4)>>>0){q=k;p=l;break}}}else{i=c[wa>>2]|0;q=k;p=l;o=0}if(!i)break;else n=0;do{if(o>>>0>>0){k=q+(n<<2)|0;l=p+(n<<1)|0;m=o;while(1){l=l+(c[qa>>2]<<1)|0;ah(a,l,k,S,F);i=c[wa>>2]|0;m=m+1|0;j=c[xa>>2]|0;if(m>>>0>=j>>>0)break;else k=k+(i<<2)|0}}n=n+1|0}while(n>>>0>>0)}else{i=c[xa>>2]|0;if(!i)break;A=E+92|0;B=E+100|0;C=E+96|0;D=0-F|0;j=c[wa>>2]|0;z=0;while(1){if(!j){k=z+4|0;j=0}else{v=z|3;w=z|1;x=w+1|0;y=w+3|0;k=z+4|0;u=0;while(1){do if(v>>>0>>0){i=c[qa>>2]|0;l=u+1|0;t=(_(i,w)|0)+l|0;j=c[ra>>2]|0;if(b[j+(t<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,x)|0)+l<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,v)|0)+l<<1)>>1]&20735){t=0;i=0;G=127;break}if(b[j+((_(i,y)|0)+l<<1)>>1]&20665){t=0;i=0;G=127;break}c[B>>2]=A;if(!(wh(E)|0))break;c[B>>2]=C;i=(wh(E)|0)<<1;t=1;i=i|(wh(E)|0);G=127}else{t=0;i=0;G=127}while(0);if((G|0)==127){G=0;l=i+z|0;f:do if(l>>>0>>0){s=l;do{i=c[xa>>2]|0;if(s>>>0>=i>>>0)break f;Da=s;s=s+1|0;m=(_(c[qa>>2]|0,s)|0)+u|0;n=m+1|0;o=c[ra>>2]|0;p=o+(n<<1)|0;q=(_(c[wa>>2]|0,Da)|0)+u|0;q=(c[va>>2]|0)+(q<<2)|0;r=c[a>>2]|0;j=b[p>>1]|0;j=(Da|0)==(v|0)|(Da|0)==(i+-1|0)?j&-1095:j;do if(!(t&(Da|0)==(l|0))){if(j&20480)break;i=r+100|0;c[i>>2]=r+24+(d[20267+(j&255|R)>>0]<<2);if(wh(r)|0)G=133}else{i=r+100|0;G=133}while(0);if((G|0)==133){G=0;j=j>>>4&255;c[i>>2]=r+24+(d[21291+j>>0]<<2);Da=wh(r)|0;r=d[21547+j>>0]|0;j=r^Da;c[q>>2]=(Da|0)!=(r|0)?D:F;r=c[qa>>2]|0;Da=o+(n-r<<1)|0;q=o+(r+n<<1)|0;n=o+(n+~r<<1)|0;b[n>>1]=e[n>>1]|2;b[Da>>1]=b[Da>>1]|b[3436+(j<<1)>>1];Da=m+2|0;n=o+(Da-r<<1)|0;b[n>>1]=e[n>>1]|4;n=o+(m<<1)|0;b[n>>1]=b[n>>1]|b[3436+(j+2<<1)>>1];b[p>>1]=e[p>>1]|4096;n=o+(Da<<1)|0;b[n>>1]=b[n>>1]|b[3436+(j+4<<1)>>1];n=o+(r+m<<1)|0;b[n>>1]=e[n>>1]|1;b[q>>1]=b[q>>1]|b[3436+(j+6<<1)>>1];Da=o+(r+Da<<1)|0;b[Da>>1]=e[Da>>1]|8}b[p>>1]=e[p>>1]&49151}while(s>>>0>>0)}while(0);l=u+1|0}j=c[wa>>2]|0;i=c[xa>>2]|0;if(l>>>0>>0)u=l;else break}}if(k>>>0>>0)z=k;else break}}while(0);if(M){G=163;break c}c[E+100>>2]=E+96;wh(E)|0;wh(E)|0;wh(E)|0;wh(E)|0;G=163;break}default:G=163}while(0);do if((G|0)==163){G=0;if(J)break;qh(U);rh(U,18,0,46);rh(U,17,0,3);rh(U,0,0,4)}while(0);h=h+1|0;Da=(h|0)==3;f=(Da<<31>>31)+f|0;h=Da?0:h;H=H+1|0;if(H>>>0>=(c[I>>2]|0)>>>0)break b}}while(0);i=c[X>>2]|0}L=L+1|0}while(L>>>0>>0)}h=(c[V>>2]|0)-(c[fa>>2]|0)|0;f=(c[Y>>2]|0)-(c[ga>>2]|0)|0;i=c[ea>>2]|0;if(i&1){Da=c[Aa>>2]|0;h=(c[Da+(la*136|0)+8>>2]|0)+h-(c[Da+(la*136|0)>>2]|0)|0}if(i&2){Da=c[Aa>>2]|0;f=(c[Da+(la*136|0)+12>>2]|0)+f-(c[Da+(la*136|0)+4>>2]|0)|0}p=c[va>>2]|0;q=c[wa>>2]|0;r=c[xa>>2]|0;i=c[Ba>>2]|0;if((i|0)!=0?(ua=1<>2]|0;m=(l|0)>-1?l:0-l|0;if((m|0)>=(ua|0)){Da=m>>c[Ba>>2];c[k>>2]=(l|0)<0?0-Da|0:Da}n=n+1|0}while((n|0)!=(q|0))}o=o+1|0}while((o|0)!=(r|0))}n=(_(f,ya)|0)+h|0;o=c[pa>>2]|0;h=(r|0)==0;if((c[sa>>2]|0)==1){if(!h){h=(q|0)==0;k=0;do{if(!h){f=_(k,q)|0;i=(_(k,ya)|0)+n|0;j=0;do{c[o+(i+j<<2)>>2]=(c[p+(j+f<<2)>>2]|0)/2|0;j=j+1|0}while((j|0)!=(q|0))}k=k+1|0}while((k|0)!=(r|0))}}else if(!h){m=(q|0)==0;h=p;l=0;k=o+(n<<2)|0;while(1){if(!m){f=h;i=0;j=k;while(1){g[j>>2]=+(c[f>>2]|0)*+g[ha>>2];i=i+1|0;if((i|0)==(q|0))break;else{f=f+4|0;j=j+4|0}}h=h+(q<<2)|0}l=l+1|0;if((l|0)==(r|0))break;else k=k+(ya<<2)|0}}$=$+1|0}while($>>>0<(_(c[ba>>2]|0,c[aa>>2]|0)|0)>>>0);h=c[ka>>2]|0;i=c[ja>>2]|0}ca=ca+1|0}while(ca>>>0<(_(h,i)|0)>>>0);f=c[na>>2]|0}ia=ia+1|0}while(ia>>>0>>0);h=c[za>>2]|0}oa=oa+1|0;if(oa>>>0>=h>>>0){h=1;G=201;break}}if((G|0)==201)return h|0;return 0}function Zg(f,i,j,k,l){f=f|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.0,t=0.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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0.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,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;Ya=i+32|0;h[Ya>>3]=0.0;Za=i+16|0;m=c[Za>>2]|0;if(!m){_a=1;return _a|0}Xa=i+20|0;Sa=j+5584|0;Ta=f+16|0;Ua=f+20|0;Va=f+8|0;Wa=f+36|0;Pa=(k|0)!=0;Qa=f+32|0;Ra=f+12|0;i=m;Oa=0;a:while(1){j=c[Xa>>2]|0;m=c[Sa>>2]|0;Ma=(c[j+(Oa*52|0)+8>>2]|0)-(c[j+(Oa*52|0)>>2]|0)|0;Na=j+(Oa*52|0)+16|0;n=c[Na>>2]|0;if(n){La=j+(Oa*52|0)+24|0;Ja=j+(Oa*52|0)+32|0;Ka=m+(Oa*1080|0)+20|0;Ga=m+(Oa*1080|0)+16|0;Ia=Pa&Oa>>>0>>0;Ha=k+(Oa<<3)|0;i=n;Fa=0;do{Da=c[La>>2]|0;Ea=Da+(Fa*136|0)+24|0;j=c[Ea>>2]|0;if(j){za=Da+(Fa*136|0)+16|0;Aa=Da+(Fa*136|0)+20|0;Ba=~Fa;Ca=Fa+-1|0;i=c[Aa>>2]|0;m=c[za>>2]|0;ya=0;do{xa=Da+(Fa*136|0)+28+(ya*36|0)+32|0;if(_(i,m)|0){ra=67108864/(~~+M(+(+g[xa>>2]*8192.0))|0)|0;sa=Da+(Fa*136|0)+28+(ya*36|0)+20|0;ta=Da+(Fa*136|0)+28+(ya*36|0)|0;ua=Da+(Fa*136|0)+28+(ya*36|0)+4|0;va=Da+(Fa*136|0)+28+(ya*36|0)+16|0;wa=((ra|0)<0)<<31>>31;qa=0;do{j=c[sa>>2]|0;oa=j+(qa*40|0)+16|0;pa=j+(qa*40|0)+20|0;if(_(c[pa>>2]|0,c[oa>>2]|0)|0){ma=j+(qa*40|0)+24|0;na=0;do{la=c[ma>>2]|0;n=c[la+(na*52|0)+12>>2]|0;i=n-(c[ta>>2]|0)|0;o=c[la+(na*52|0)+16>>2]|0;j=o-(c[ua>>2]|0)|0;m=c[va>>2]|0;if(m&1){ka=c[La>>2]|0;i=(c[ka+(Ca*136|0)+8>>2]|0)+i-(c[ka+(Ca*136|0)>>2]|0)|0}if(m&2){ka=c[La>>2]|0;j=(c[ka+(Ca*136|0)+12>>2]|0)+j-(c[ka+(Ca*136|0)+4>>2]|0)|0}if(!(_g(f,(c[la+(na*52|0)+20>>2]|0)-n|0,(c[la+(na*52|0)+24>>2]|0)-o|0)|0)){i=0;_a=173;break a}p=c[Ta>>2]|0;q=c[Ua>>2]|0;r=Ma-p|0;u=(_(j,Ma)|0)+i|0;v=c[Ja>>2]|0;c[Va>>2]=v+(u<<2);c[Wa>>2]=Ma;i=(q|0)==0;if((c[Ka>>2]|0)==1){if(!i){n=(p|0)==0;o=0;i=0;while(1){if(!n){j=0;m=i;while(1){ka=v+(m+u<<2)|0;c[ka>>2]=c[ka>>2]<<6;j=j+1|0;if((j|0)==(p|0))break;else m=m+1|0}i=p+i|0}o=o+1|0;if((o|0)==(q|0))break;else i=i+r|0}}}else if(!i){n=(p|0)==0;o=0;i=0;while(1){if(!n){j=0;m=i;while(1){ka=v+(m+u<<2)|0;ja=c[ka>>2]|0;ja=Zi(ja|0,((ja|0)<0)<<31>>31|0,ra|0,wa|0)|0;ja=Si(ja|0,C|0,4096,0)|0;ja=Ti(ja|0,C|0,18)|0;c[ka>>2]=ja;j=j+1|0;if((j|0)==(p|0))break;else m=m+1|0}i=p+i|0}o=o+1|0;if((o|0)==(q|0))break;else i=i+r|0}}ga=c[va>>2]|0;ha=(c[Na>>2]|0)+Ba|0;r=c[Ka>>2]|0;ia=+g[xa>>2];ja=c[Ga>>2]|0;ka=c[f>>2]|0;n=c[Ta>>2]|0;do if(!n)i=0;else{o=c[Ua>>2]|0;p=(o|0)==0;q=0;i=0;do{if(!p){j=c[Wa>>2]|0;m=0;do{fa=c[v+(u+((_(m,j)|0)+q)<<2)>>2]|0;fa=(fa|0)>-1?fa:0-fa|0;i=(i|0)>(fa|0)?i:fa;m=m+1|0}while((m|0)!=(o|0))}q=q+1|0}while((q|0)!=(n|0));if(!i){i=0;break}if((i|0)>1){j=i;i=0}else{i=-5;break}while(1){j=j>>1;if((j|0)<=1)break;else i=i+1|0}i=i+-4|0}while(0);ea=la+(na*52|0)+28|0;c[ea>>2]=i;i=i+-1|0;qh(ka);rh(ka,18,0,46);rh(ka,17,0,3);rh(ka,0,0,4);fa=la+(na*52|0)|0;kh(ka,c[fa>>2]|0);b:do if((i|0)>-1){ca=la+(na*52|0)+8|0;W=ja&1;da=(W|0)!=0;X=(r|0)==1;Y=(ja&4|0)==0;W=(W|0)==0;Z=(ja&2|0)==0;$=(ja&8|0)==0;aa=ga<<8;ba=(ja&32|0)==0;j=0;T=i;U=0.0;i=0;V=2;while(1){S=c[ca>>2]|0;I=da&(V>>>0<2?(T|0)<((c[ea>>2]|0)+-4|0):0);c:do switch(V|0){case 0:{G=1<>2]|0;if(!j){n=0;break c}H=(T|0)==0;o=c[Ta>>2]|0;m=o;n=0;F=0;do{E=F;F=F+4|0;if(!m)m=0;else{B=(E|0)==-4;D=E|3;m=o;A=0;do{if(!B){z=E;do{j=c[Ua>>2]|0;if(z>>>0>=j>>>0)break;do if($)j=0;else{if((z|0)==(D|0)){j=1;break}j=(z|0)==(j+-1|0)}while(0);p=z;z=z+1|0;u=(_(c[Qa>>2]|0,z)|0)+A|0;v=u+1|0;w=c[Ra>>2]|0;y=w+(v<<1)|0;p=(_(c[Wa>>2]|0,p)|0)+A|0;p=(c[Va>>2]|0)+(p<<2)|0;x=c[f>>2]|0;q=b[y>>1]|0;q=j?q&-1095:q;j=q&255;if((j|0)!=0&(q&20480|0)==0){m=c[p>>2]|0;m=(((m|0)<0?0-m|0:m)&G|0)!=0;o=m&1;r=x+100|0;c[r>>2]=x+24+(d[20267+(j|aa)>>0]<<2);if(I)oh(x,o);else lh(x,o);if(m){j=c[p>>2]|0;m=j>>>31;j=(j|0)<0?0-j|0:j;if(H)j=3708+((j&127)<<1)|0;else j=3452+((j>>>T&127)<<1)|0;n=(b[j>>1]|0)+n|0;j=q>>>4&255;c[r>>2]=x+24+(d[21291+j>>0]<<2);if(I)oh(x,m);else lh(x,d[21547+j>>0]^m);Q=c[Qa>>2]|0;R=w+(v-Q<<1)|0;P=w+(Q+v<<1)|0;O=w+(v+~Q<<1)|0;b[O>>1]=e[O>>1]|2;b[R>>1]=b[R>>1]|b[3436+(m<<1)>>1];R=u+2|0;O=w+(R-Q<<1)|0;b[O>>1]=e[O>>1]|4;O=w+(u<<1)|0;b[O>>1]=b[O>>1]|b[3436+((m|2)<<1)>>1];b[y>>1]=e[y>>1]|4096;O=w+(R<<1)|0;b[O>>1]=b[O>>1]|b[3436+((m|4)<<1)>>1];O=w+(Q+u<<1)|0;b[O>>1]=e[O>>1]|1;b[P>>1]=b[P>>1]|b[3436+((m|6)<<1)>>1];R=w+(Q+R<<1)|0;b[R>>1]=e[R>>1]|8}b[y>>1]=e[y>>1]|16384}}while(z>>>0>>0);m=c[Ta>>2]|0}A=A+1|0}while(A>>>0>>0);j=c[Ua>>2]|0;o=m}}while(F>>>0>>0);break}case 1:{A=1<>2]|0;if(!j){n=0;break c}B=(T|0)==0;o=c[Ta>>2]|0;m=o;n=0;z=0;do{y=z;z=z+4|0;if(!m)m=0;else{w=(y|0)==-4;x=y|3;m=o;v=0;do{u=v;v=v+1|0;if(!w){r=y;do{j=c[Ua>>2]|0;if(r>>>0>=j>>>0)break;do if($)j=0;else{if((r|0)==(x|0)){j=1;break}j=(r|0)==(j+-1|0)}while(0);m=r;r=r+1|0;p=(_(c[Qa>>2]|0,r)|0)+v|0;p=(c[Ra>>2]|0)+(p<<1)|0;q=c[f>>2]|0;o=b[p>>1]|0;o=j?o&-1095:o;if((o&20480|0)==4096){m=c[(c[Va>>2]|0)+((_(c[Wa>>2]|0,m)|0)+u<<2)>>2]|0;m=(m|0)<0?0-m|0:m;if(B)j=4220+((m&127)<<1)|0;else j=3964+((m>>>T&127)<<1)|0;n=(b[j>>1]|0)+n|0;j=(m&A|0)!=0&1;c[q+100>>2]=q+24+(((o&8192|0)!=0?16:(o&255|0)!=0?15:14)<<2);if(I)oh(q,j);else lh(q,j);b[p>>1]=e[p>>1]|8192}}while(r>>>0>>0);m=c[Ta>>2]|0}}while(v>>>0>>0);j=c[Ua>>2]|0;o=m}}while(z>>>0>>0);break}case 2:{L=c[f>>2]|0;N=1<>2]|0;if(!m)j=0;else{O=L+92|0;P=L+100|0;Q=L+96|0;R=(T|0)==0;n=c[Ta>>2]|0;j=0;K=0;while(1){if(!n){o=K+4|0;n=0}else{D=K|3;E=K|1;F=E+1|0;G=E+3|0;o=K+4|0;H=K+1|0;I=K+2|0;J=K+3|0;B=0;while(1){do if(D>>>0>>0){m=c[Qa>>2]|0;q=B+1|0;p=(_(m,E)|0)+q|0;n=c[Ra>>2]|0;p=b[n+(p<<1)>>1]|0;if($){A=b[n+((_(m,F)|0)+q<<1)>>1]|p;A=A|b[n+((_(m,D)|0)+q<<1)>>1];m=((A|b[n+((_(m,G)|0)+q<<1)>>1])&20735)==0&1}else{do if(!(p&20735)){if(b[n+((_(m,F)|0)+q<<1)>>1]&20735){m=1;break}if(b[n+((_(m,D)|0)+q<<1)>>1]&20735){m=1;break}m=(b[n+((_(m,G)|0)+q<<1)>>1]&20665)!=0}else m=1;while(0);m=m&1^1}if(!m){A=0;m=0;_a=109;break}m=c[Wa>>2]|0;n=c[Va>>2]|0;A=c[n+((_(m,K)|0)+B<<2)>>2]|0;do if(!(((A|0)<0?0-A|0:A)&N)){A=c[n+((_(m,H)|0)+B<<2)>>2]|0;if(((A|0)<0?0-A|0:A)&N){m=1;break}A=c[n+((_(m,I)|0)+B<<2)>>2]|0;if(((A|0)<0?0-A|0:A)&N){m=2;break}m=c[n+((_(m,J)|0)+B<<2)>>2]|0;m=(((m|0)<0?0-m|0:m)&N|0)==0?4:3}else m=0;while(0);c[P>>2]=O;lh(L,(m|0)!=4&1);if((m|0)==4){p=q;break}c[P>>2]=Q;lh(L,m>>>1);lh(L,m&1);A=1;_a=109}else{A=0;m=0;_a=109}while(0);if((_a|0)==109){_a=0;z=m+K|0;d:do if(z>>>0>>0){y=z;do{m=c[Ua>>2]|0;if(y>>>0>=m>>>0)break d;do if($)m=0;else{if((y|0)==(D|0)){m=1;break}m=(y|0)==(m+-1|0)}while(0);$a=y;y=y+1|0;r=(_(c[Qa>>2]|0,y)|0)+B|0;u=r+1|0;v=c[Ra>>2]|0;x=v+(u<<1)|0;n=(_(c[Wa>>2]|0,$a)|0)+B|0;n=(c[Va>>2]|0)+(n<<2)|0;w=c[f>>2]|0;p=b[x>>1]|0;q=m?p&-1095:p;do if(!(A&($a|0)==(z|0))){if(p&20480)break;c[w+100>>2]=w+24+(d[20267+(q&255|aa)>>0]<<2);$a=c[n>>2]|0;$a=((($a|0)<0?0-$a|0:$a)&N|0)!=0;lh(w,$a&1);if($a)_a=117}else _a=117;while(0);if((_a|0)==117){_a=0;n=c[n>>2]|0;m=(n|0)<0?0-n|0:n;if(R)m=3708+((m&127)<<1)|0;else m=3452+((m>>>T&127)<<1)|0;j=(b[m>>1]|0)+j|0;$a=q>>>4&255;c[w+100>>2]=w+24+(d[21291+$a>>0]<<2);p=n>>>31;lh(w,d[21547+$a>>0]^p);w=c[Qa>>2]|0;$a=v+(u-w<<1)|0;q=v+(w+u<<1)|0;u=v+(u+~w<<1)|0;b[u>>1]=e[u>>1]|2;b[$a>>1]=b[$a>>1]|b[3436+(p<<1)>>1];$a=r+2|0;u=v+($a-w<<1)|0;b[u>>1]=e[u>>1]|4;u=v+(r<<1)|0;b[u>>1]=b[u>>1]|b[3436+((p|2)<<1)>>1];b[x>>1]=e[x>>1]|4096;u=v+($a<<1)|0;b[u>>1]=b[u>>1]|b[3436+((p|4)<<1)>>1];u=v+(w+r<<1)|0;b[u>>1]=e[u>>1]|1;b[q>>1]=b[q>>1]|b[3436+((p|6)<<1)>>1];$a=v+(w+$a<<1)|0;b[$a>>1]=e[$a>>1]|8}b[x>>1]=e[x>>1]&49151}while(y>>>0>>0)}while(0);p=B+1|0}n=c[Ta>>2]|0;m=c[Ua>>2]|0;if(p>>>0>>0)B=p;else break}}if(o>>>0>>0)K=o;else break}}if(ba){n=j;break c}uh(ka);n=j;break}default:n=j}while(0);if(Ia)s=+h[Ha>>3];else s=1.0;if(X)t=+Ig(ha,ga);else t=+Lg(ha,ga);t=+(1<>3]=+h[Ya>>3]+t;do if(Y)_a=137;else{if((T|0)<1&(V|0)==2){_a=137;break}mh(ka);m=S+(i*24|0)+20|0;j=a[m>>0]|1;a[m>>0]=j;m=1}while(0);do if((_a|0)==137){j=(c[ea>>2]|0)+-4|0;if((V|0)!=0&(T|0)<(j|0))if(W)_a=141;else _a=140;else if(W|((V|0)!=2|(T|0)!=(j|0)))_a=141;else _a=140;if((_a|0)==140){_a=0;mh(ka);m=S+(i*24|0)+20|0;j=a[m>>0]|1;a[m>>0]=j;m=1;break}else if((_a|0)==141){_a=0;m=S+(i*24|0)+20|0;j=a[m>>0]&-2;a[m>>0]=j;m=3;break}}while(0);R=V+1|0;$a=(R|0)==3;V=$a?0:R;T=($a<<31>>31)+T|0;do if((T|0)>0&(j&1)!=0)if(da&(V>>>0<2?(T|0)<((c[ea>>2]|0)+-4|0):0)){nh(ka);break}else{sh(ka);break}while(0);h[S+(i*24|0)+8>>3]=U;c[S+(i*24|0)>>2]=(jh(ka)|0)+m;if(!Z)ph(ka);i=i+1|0;if((T|0)<=-1)break b;else j=n}}else i=0;while(0);do if(!(ja&16)){if(ja&1)break;mh(ka)}else th(ka);while(0);q=la+(na*52|0)+48|0;c[q>>2]=i;if(i){n=la+(na*52|0)+8|0;p=0;do{o=c[n>>2]|0;j=o+(p*24|0)|0;$a=c[j>>2]|0;if($a>>>0>(jh(ka)|0)>>>0){i=jh(ka)|0;c[j>>2]=i}else i=c[j>>2]|0;do if(i>>>0>1){m=i+-1|0;if((a[(c[fa>>2]|0)+m>>0]|0)!=-1)break;c[j>>2]=m;i=m}while(0);if(!p)j=0;else j=c[(c[n>>2]|0)+((p+-1|0)*24|0)>>2]|0;c[o+(p*24|0)+16>>2]=i-j;p=p+1|0}while(p>>>0<(c[q>>2]|0)>>>0)}na=na+1|0}while(na>>>0<(_(c[pa>>2]|0,c[oa>>2]|0)|0)>>>0);i=c[Aa>>2]|0;m=c[za>>2]|0}qa=qa+1|0}while(qa>>>0<(_(i,m)|0)>>>0);j=c[Ea>>2]|0}ya=ya+1|0}while(ya>>>0>>0);i=c[Na>>2]|0}Fa=Fa+1|0}while(Fa>>>0>>0);i=c[Za>>2]|0}Oa=Oa+1|0;if(Oa>>>0>=i>>>0){i=1;_a=173;break}}if((_a|0)==173)return i|0;return 0}function _g(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=_(d,b)|0;if(!(c[a+40>>2]|0)){h=a+24|0;i=a+8|0;e=c[i>>2]|0;do if(g>>>0>(c[h>>2]|0)>>>0){Sc(e);f=g<<2;e=Rc(f)|0;c[i>>2]=e;if(!e){b=0;return b|0}else{c[h>>2]=g;break}}else f=g<<2;while(0);Qi(e|0,0,f|0)|0}g=b+2|0;c[a+32>>2]=g;g=_(d+2|0,g)|0;h=a+28|0;i=a+12|0;e=c[i>>2]|0;do if(g>>>0>(c[h>>2]|0)>>>0){Sc(e);f=g<<1;e=Rc(f)|0;c[i>>2]=e;if(!e){b=0;return b|0}else{c[h>>2]=g;break}}else f=g<<1;while(0);Qi(e|0,0,f|0)|0;c[a+16>>2]=b;c[a+20>>2]=d;b=1;return b|0}function $g(a,f,g,h,i){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;j=c[a>>2]|0;l=b[f>>1]|0;m=l&255;if(!((m|0)!=0&(l&20480|0)==0))return;k=j+100|0;c[k>>2]=j+24+(d[20267+(m|h<<8)>>0]<<2);if(wh(j)|0){h=l>>>4&255;c[k>>2]=j+24+(d[21291+h>>0]<<2);l=wh(j)|0;h=d[21547+h>>0]|0;m=h^l;c[g>>2]=(l|0)!=(h|0)?0-i|0:i;a=c[a+32>>2]|0;i=f+(0-a<<1)|0;h=f+(a<<1)|0;g=f+(~a<<1)|0;b[g>>1]=e[g>>1]|2;b[i>>1]=b[i>>1]|b[3436+(m<<1)>>1];i=f+(1-a<<1)|0;b[i>>1]=e[i>>1]|4;i=f+-2|0;b[i>>1]=b[i>>1]|b[3436+(m+2<<1)>>1];b[f>>1]=e[f>>1]|4096;i=f+2|0;b[i>>1]=b[i>>1]|b[3436+(m+4<<1)>>1];i=f+(a+-1<<1)|0;b[i>>1]=e[i>>1]|1;b[h>>1]=b[h>>1]|b[3436+(m+6<<1)>>1];a=f+(a+1<<1)|0;b[a>>1]=e[a>>1]|8}b[f>>1]=e[f>>1]|16384;return}function ah(a,f,g,h,i){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[a>>2]|0;l=b[f>>1]|0;if(l&20480){a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}k=j+100|0;c[k>>2]=j+24+(d[20267+(l&255|h<<8)>>0]<<2);if(!(wh(j)|0)){a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}h=l>>>4&255;c[k>>2]=j+24+(d[21291+h>>0]<<2);k=wh(j)|0;h=d[21547+h>>0]|0;l=h^k;c[g>>2]=(k|0)!=(h|0)?0-i|0:i;a=c[a+32>>2]|0;i=f+(0-a<<1)|0;h=f+(a<<1)|0;g=f+(~a<<1)|0;b[g>>1]=e[g>>1]|2;b[i>>1]=b[i>>1]|b[3436+(l<<1)>>1];i=f+(1-a<<1)|0;b[i>>1]=e[i>>1]|4;i=f+-2|0;b[i>>1]=b[i>>1]|b[3436+(l+2<<1)>>1];b[f>>1]=e[f>>1]|4096;i=f+2|0;b[i>>1]=b[i>>1]|b[3436+(l+4<<1)>>1];i=f+(a+-1<<1)|0;b[i>>1]=e[i>>1]|1;b[h>>1]=b[h>>1]|b[3436+(l+6<<1)>>1];a=f+(a+1<<1)|0;b[a>>1]=e[a>>1]|8;a=b[f>>1]|0;a=a&65535;a=a&49151;a=a&65535;b[f>>1]=a;return}function bh(a,e,f,g,h,j,k,l,m,n,o,p){a=a|0;e=e|0;f=f|0;g=g|0;h=h|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,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;I=i;i=i+16|0;H=I;c[H>>2]=0;q=c[a>>2]|0;D=c[a+4>>2]|0;a=c[D+76>>2]|0;F=a+(e*5640|0)|0;s=(b[D>>1]|0)==4?2:1;t=D+80|0;if(!(c[t>>2]|0))r=1;else r=c[q+16>>2]|0;G=(c[a+(e*5640|0)+420>>2]|0)+1|0;E=Lf(q,D,e,p)|0;if(!E){e=0;i=I;return e|0}c[j>>2]=0;a:do if(!p){if(r){a=0;b:while(1){p=0;o=E;q=0;while(1){Mf(E,D,e,q,a,n,0);if((c[o+80>>2]|0)==-1){a=9;break b}m=o+36|0;c:while(1){do if(!(Of(o)|0))break c;while((c[m>>2]|0)>>>0>=g>>>0);c[H>>2]=0;if(!(fh(e,f,F,o,h,H,k,l)|0)){a=13;break b}B=c[H>>2]|0;c[j>>2]=(c[j>>2]|0)+B;k=k-B|0;p=B+p|0;h=h+B|0}B=c[t>>2]|0;if((B|0)!=0&p>>>0>B>>>0){a=17;break b}q=q+1|0;if(q>>>0>>0)o=o+232|0;else break}a=a+1|0;if(a>>>0>=r>>>0)break a}if((a|0)==9){Kf(E,G);e=0;i=I;return e|0}else if((a|0)==13){Kf(E,G);e=0;i=I;return e|0}else if((a|0)==17){Kf(E,G);e=0;i=I;return e|0}}}else{Mf(E,D,e,o,m,n,p);z=E+(o*232|0)|0;if((c[E+(o*232|0)+80>>2]|0)==-1){Kf(E,G);e=0;i=I;return e|0}n=E+(o*232|0)+36|0;u=(l|0)==0;v=f+840|0;w=l+12|0;x=l+8|0;y=l+88|0;t=D+93|0;s=a+(e*5640|0)+5636|0;while(1){do if(!(Of(z)|0))break a;while((c[n>>2]|0)>>>0>=g>>>0);c[H>>2]=0;if(!(fh(e,f,F,z,h,H,k,l)|0))break;r=c[H>>2]|0;h=h+r|0;k=k-r|0;c[j>>2]=(c[j>>2]|0)+r;if(!u){if(!(c[w>>2]|0))a=c[x>>2]|0;else{q=c[y>>2]|0;a=c[x>>2]|0;o=c[q+(e*592|0)+548>>2]|0;p=o+(a<<5)|0;if(!a){m=(c[q+(e*592|0)+12>>2]|0)+1|0;q=((m|0)<0)<<31>>31;D=p;c[D>>2]=m;c[D+4>>2]=q}else{if((((d[s>>0]|0)>>>2|(d[t>>0]|0)>>>3)&1)!=0?(B=p,A=c[B>>2]|0,B=c[B+4>>2]|0,!((A|0)==0&(B|0)==0)):0){m=A;q=B}else{m=o+(a+-1<<5)+16|0;m=Si(c[m>>2]|0,c[m+4>>2]|0,1,0)|0;q=C}D=p;c[D>>2]=m;c[D+4>>2]=q}p=Si(m|0,q|0,-1,-1)|0;m=C;r=Si(p|0,m|0,r|0,0)|0;D=o+(a<<5)+16|0;c[D>>2]=r;c[D+4>>2]=C;D=o+(a<<5)+8|0;r=D;r=Si(p|0,m|0,c[r>>2]|0,c[r+4>>2]|0)|0;c[D>>2]=r;c[D+4>>2]=C}c[x>>2]=a+1}c[v>>2]=(c[v>>2]|0)+1}Kf(E,G);e=0;i=I;return e|0}while(0);Kf(E,G);e=1;i=I;return e|0}function ch(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,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,aa=0;$=i;i=i+112|0;W=$+64|0;X=$+32|0;S=$;R=$+96|0;Q=$+92|0;k=c[a>>2]|0;M=a+4|0;Z=c[M>>2]|0;h=c[Z+76>>2]|0;O=h+(b*5640|0)|0;P=h+(b*5640|0)+420|0;Y=(c[P>>2]|0)+1|0;Z=Jf(k,Z,b)|0;if(!Z){aa=0;i=$;return aa|0}N=k+16|0;L=h+(b*5640|0)+12|0;K=d+20|0;J=k+24|0;b=g;a=e;H=Z;I=0;a:while(1){if((c[H+80>>2]|0)==-1){aa=4;break}h=Pc(c[N>>2]<<2)|0;if(!h){aa=6;break}Qi(h|0,1,c[N>>2]<<2|0)|0;if(Of(H)|0){g=H+24|0;d=H+28|0;G=H+36|0;k=H+32|0;F=b;E=a;while(1){if((c[L>>2]|0)>>>0>(c[G>>2]|0)>>>0){b=c[g>>2]|0;a=c[K>>2]|0;if((c[d>>2]|0)>>>0<(c[a+(b*52|0)+20>>2]|0)>>>0){c[h+(b<<2)>>2]=0;D=c[M>>2]|0;c[Q>>2]=0;if(!(gh(D,a,O,H,R,E,Q,F,j)|0)){aa=45;break a}C=c[Q>>2]|0;if(!(c[R>>2]|0))a=C;else{B=F-C|0;z=E+C|0;c[Q>>2]=0;b=c[d>>2]|0;l=c[(c[K>>2]|0)+((c[g>>2]|0)*52|0)+24>>2]|0;x=l+(b*136|0)+24|0;a=c[x>>2]|0;b:do if(!a){a=z;aa=43}else{y=E+F|0;m=a;D=0;w=l+(b*136|0)+28|0;l=z;c:while(1){a=c[k>>2]|0;b=c[w+20>>2]|0;if(((c[w+8>>2]|0)!=(c[w>>2]|0)?(c[w+12>>2]|0)!=(c[w+4>>2]|0):0)?(V=_(c[b+(a*40|0)+20>>2]|0,c[b+(a*40|0)+16>>2]|0)|0,(V|0)!=0):0){A=0;a=c[b+(a*40|0)+24>>2]|0;p=l;while(1){u=a+40|0;if(!(c[u>>2]|0))b=p;else{v=a+44|0;b=c[v>>2]|0;do if(!b){o=c[a+4>>2]|0;c[v>>2]=1;c[a+36>>2]=0}else{l=b+-1|0;m=c[a+4>>2]|0;if((c[m+(l<<5)+8>>2]|0)!=(c[m+(l<<5)+20>>2]|0)){o=m+(l<<5)|0;break}c[v>>2]=b+1;o=m+(b<<5)|0}while(0);t=a+36|0;b=a+32|0;s=p;n=o+28|0;l=c[n>>2]|0;if((l+s|0)>>>0>>0|(p+l|0)>>>0>y>>>0){b=D;a=A;break c}m=c[t>>2]|0;s=p;r=o;while(1){o=l+m|0;if(o>>>0>>0){b=D;a=A;aa=29;break a}p=c[a>>2]|0;if(o>>>0>(c[b>>2]|0)>>>0){l=Tc(p,o)|0;if(!l){aa=32;break a}m=c[t>>2]|0;q=c[n>>2]|0;c[b>>2]=q+m;c[a>>2]=l;p=l;l=q}Ui(p+m|0,s|0,l|0)|0;l=r+8|0;m=c[l>>2]|0;if(!m){c[r>>2]=a;o=c[t>>2]|0;c[r+4>>2]=o}else o=c[t>>2]|0;p=c[n>>2]|0;q=s;s=s+p|0;n=c[r+24>>2]|0;m=n+m|0;c[l>>2]=m;l=c[u>>2]|0;c[u>>2]=l-n;c[r+12>>2]=m;m=p+o|0;c[t>>2]=m;o=r+16|0;c[o>>2]=(c[o>>2]|0)+p;if((l|0)==(n|0)){b=s;break}c[v>>2]=(c[v>>2]|0)+1;o=s;n=r+60|0;l=c[n>>2]|0;if((l+o|0)>>>0>>0?1:(q+(l+p)|0)>>>0>y>>>0){b=D;a=A;break c}else r=r+32|0}c[a+48>>2]=c[v>>2]}A=A+1|0;if(A>>>0>=V>>>0){a=b;break}else{a=a+56|0;p=b}}b=c[x>>2]|0}else{b=m;a=l}D=D+1|0;if(D>>>0>=b>>>0){aa=43;break b}else{m=b;w=w+36|0;l=a}}z=c[k>>2]|0;A=c[d>>2]|0;D=c[g>>2]|0;c[S>>2]=l;c[S+4>>2]=B;c[S+8>>2]=a;c[S+12>>2]=z;c[S+16>>2]=b;c[S+20>>2]=A;c[S+24>>2]=D;Ub(j,2,21803,S)|0;a=c[Q>>2]|0}while(0);if((aa|0)==43){aa=0;a=a-z|0;c[Q>>2]=a}a=a+C|0}l=c[g>>2]|0;C=c[d>>2]|0;b=(c[J>>2]|0)+(l*52|0)+36|0;D=c[b>>2]|0;c[b>>2]=C>>>0>D>>>0?C:D;b=a}else aa=47}else{a=c[K>>2]|0;aa=47}if((aa|0)==47){aa=0;D=c[M>>2]|0;c[Q>>2]=0;if(!(gh(D,a,O,H,R,E,Q,F,j)|0)){aa=69;break a}u=c[Q>>2]|0;if(!(c[R>>2]|0))a=u;else{l=F-u|0;w=c[d>>2]|0;x=c[g>>2]|0;a=c[(c[K>>2]|0)+(x*52|0)+24>>2]|0;c[Q>>2]=0;t=c[a+(w*136|0)+24>>2]|0;if(!t)a=0;else{v=c[k>>2]|0;b=0;s=a+(w*136|0)+28|0;while(1){m=c[s+20>>2]|0;if(((c[s+8>>2]|0)!=(c[s>>2]|0)?(c[s+12>>2]|0)!=(c[s+4>>2]|0):0)?(T=_(c[m+(v*40|0)+20>>2]|0,c[m+(v*40|0)+16>>2]|0)|0,(T|0)!=0):0){a=0;r=c[m+(v*40|0)+24>>2]|0;while(1){p=r+40|0;d:do if(c[p>>2]|0){q=r+44|0;m=c[q>>2]|0;do if(!m){o=c[r+4>>2]|0;c[q>>2]=1;c[r+36>>2]=0}else{n=m+-1|0;o=c[r+4>>2]|0;if((c[o+(n<<5)+8>>2]|0)!=(c[o+(n<<5)+20>>2]|0)){o=o+(n<<5)|0;break}c[q>>2]=m+1;o=o+(m<<5)|0}while(0);D=c[Q>>2]|0;m=c[o+28>>2]|0;n=m+D|0;if(n>>>0>>0|n>>>0>l>>>0){g=v;d=w;k=x;aa=65;break a}while(1){c[Q>>2]=n;D=c[o+24>>2]|0;C=o+8|0;c[C>>2]=(c[C>>2]|0)+D;C=c[p>>2]|0;c[p>>2]=C-D;if((C|0)==(D|0))break d;c[q>>2]=(c[q>>2]|0)+1;D=c[Q>>2]|0;m=c[o+60>>2]|0;n=m+D|0;if(n>>>0>>0|n>>>0>l>>>0){g=v;d=w;k=x;aa=65;break a}else o=o+32|0}}while(0);a=a+1|0;if(a>>>0>=T>>>0)break;else r=r+56|0}}b=b+1|0;if(b>>>0>=t>>>0)break;else s=s+36|0}a=c[Q>>2]|0}a=a+u|0}l=c[g>>2]|0;b=a}if((c[h+(l<<2)>>2]|0)!=0?(U=(c[J>>2]|0)+(l*52|0)+36|0,(c[U>>2]|0)==0):0)c[U>>2]=(c[(c[K>>2]|0)+(l*52|0)+20>>2]|0)+-1;a=E+b|0;b=F-b|0;if(!(Of(H)|0))break;else{F=b;E=a}}}Uc(h);I=I+1|0;if(I>>>0>(c[P>>2]|0)>>>0){h=a;aa=75;break}else H=H+232|0}if((aa|0)==4){Kf(Z,Y);aa=0;i=$;return aa|0}else if((aa|0)==6){Kf(Z,Y);aa=0;i=$;return aa|0}else if((aa|0)==29){f=c[k>>2]|0;e=c[d>>2]|0;W=c[g>>2]|0;c[X>>2]=l;c[X+4>>2]=m;c[X+8>>2]=~l;c[X+12>>2]=a;c[X+16>>2]=f;c[X+20>>2]=b;c[X+24>>2]=e;c[X+28>>2]=W;Ub(j,1,21888,X)|0;aa=45}else if((aa|0)==32){Uc(c[a>>2]|0);c[a>>2]=0;c[b>>2]=0;aa=45}else if((aa|0)==65){c[W>>2]=m;c[W+4>>2]=l;c[W+8>>2]=a;c[W+12>>2]=g;c[W+16>>2]=b;c[W+20>>2]=d;c[W+24>>2]=k;Ub(j,1,21987,W)|0;aa=69}else if((aa|0)==75){Kf(Z,Y);c[f>>2]=h-e;aa=1;i=$;return aa|0}if((aa|0)==45){Kf(Z,Y);Uc(h);aa=0;i=$;return aa|0}else if((aa|0)==69){Kf(Z,Y);Uc(h);aa=0;i=$;return aa|0}return 0}function dh(a,b){a=a|0;b=b|0;var d=0;d=Qc(1,8)|0;if(!d){a=0;return a|0}c[d>>2]=a;c[d+4>>2]=b;a=d;return a|0}function eh(a){a=a|0;if(!a)return;Uc(a);return}function fh(b,d,e,f,g,i,j,k){b=b|0;d=d|0;e=e|0;f=f|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,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.0,J=0,K=0;s=c[f+28>>2]|0;J=c[f+32>>2]|0;K=c[f+36>>2]|0;r=c[(c[d+20>>2]|0)+((c[f+24>>2]|0)*52|0)+24>>2]|0;if(!(c[e>>2]&2))G=g;else{a[g>>0]=-1;a[g+1>>0]=-111;a[g+2>>0]=0;a[g+3>>0]=4;G=d+840|0;a[g+4>>0]=(c[G>>2]|0)>>>8;a[g+5>>0]=c[G>>2];j=j+-6|0;G=g+6|0}if((K|0)==0?(q=r+(s*136|0)+24|0,(c[q>>2]|0)!=0):0){o=r+(s*136|0)+28|0;p=0;while(1){f=c[o+20>>2]|0;kg(c[f+(J*40|0)+32>>2]|0);m=f+(J*40|0)+36|0;kg(c[m>>2]|0);n=_(c[f+(J*40|0)+20>>2]|0,c[f+(J*40|0)+16>>2]|0)|0;if(n){f=f+(J*40|0)+24|0;d=o+28|0;l=0;do{H=c[f>>2]|0;c[H+(l*52|0)+40>>2]=0;ng(c[m>>2]|0,l,(c[d>>2]|0)-(c[H+(l*52|0)+28>>2]|0)|0);l=l+1|0}while((l|0)!=(n|0))}p=p+1|0;if(p>>>0>=(c[q>>2]|0)>>>0)break;else o=o+36|0}}E=wg()|0;if(!E){i=0;return i|0}zg(E,G,j);Bg(E,1,1);F=r+(s*136|0)+28|0;H=r+(s*136|0)+24|0;if(c[H>>2]|0){A=K+1|0;C=F;D=0;while(1){n=c[C+20>>2]|0;B=_(c[n+(J*40|0)+20>>2]|0,c[n+(J*40|0)+16>>2]|0)|0;o=n+(J*40|0)+24|0;f=(B|0)==0;if(!f){d=n+(J*40|0)+32|0;l=c[o>>2]|0;m=0;while(1){if((c[l+40>>2]|0)==0?(c[(c[l+4>>2]|0)+(K*24|0)>>2]|0)!=0:0)ng(c[d>>2]|0,m,K);m=m+1|0;if((m|0)==(B|0))break;else l=l+52|0}if(!f){z=n+(J*40|0)+32|0;y=n+(J*40|0)+36|0;w=c[o>>2]|0;x=0;while(1){f=(c[w+4>>2]|0)+(K*24|0)|0;v=w+40|0;if(!(c[v>>2]|0))og(E,c[z>>2]|0,x,A);else Bg(E,(c[f>>2]|0)!=0&1,1);d=c[f>>2]|0;if(d){if(!(c[v>>2]|0)){c[w+32>>2]=3;og(E,c[y>>2]|0,x,999);d=c[f>>2]|0}a:do switch(d|0){case 1:{Bg(E,0,1);break}case 2:{Bg(E,2,2);break}default:{if(d>>>0<6){Bg(E,d+-3|12,4);break a}if(d>>>0<37){Bg(E,d+-6|480,9);break a}if(d>>>0<165)Bg(E,d+-37|65408,16)}}while(0);o=c[v>>2]|0;d=c[f>>2]|0;u=d+o|0;t=w+8|0;if(o>>>0>>0){s=w+32|0;q=o+-1+d|0;m=0;n=0;l=0;r=(c[t>>2]|0)+(o*24|0)|0;while(1){l=l+1|0;n=(c[r+16>>2]|0)+n|0;if((a[r+20>>0]&1)!=0|(o|0)==(q|0)){if((n|0)>1){d=0;do{n=n>>1;d=d+1|0}while((n|0)>1)}else d=0;p=c[s>>2]|0;if((l|0)>1){n=0;do{l=l>>1;n=n+1|0}while((l|0)>1);l=n}else l=0;n=d+1-p-l|0;m=(m|0)>(n|0)?m:n;n=0;l=0}o=o+1|0;if((o|0)==(u|0))break;else r=r+24|0}if((m|0)>0){d=m;while(1){Bg(E,1,1);if((d|0)>1)d=d+-1|0;else{d=n;break}}}else d=n}else{m=0;d=0;l=0}Bg(E,0,1);q=w+32|0;c[q>>2]=(c[q>>2]|0)+m;m=c[v>>2]|0;if(m>>>0>>0){p=(c[t>>2]|0)+(m*24|0)|0;while(1){l=l+1|0;n=(c[p+16>>2]|0)+d|0;if((a[p+20>>0]&1)==0?(m|0)!=((c[v>>2]|0)+-1+(c[f>>2]|0)|0):0)d=n;else{o=c[q>>2]|0;if((l|0)>1){d=0;do{l=l>>1;d=d+1|0}while((l|0)>1)}else d=0;Bg(E,n,d+o|0);d=0;l=0}m=m+1|0;if((m|0)==(u|0))break;else p=p+24|0}}}x=x+1|0;if((x|0)==(B|0))break;else w=w+52|0}}}D=D+1|0;if(D>>>0>=(c[H>>2]|0)>>>0)break;else C=C+36|0}}if(!(Dg(E)|0)){xg(E);i=0;return i|0}d=yg(E)|0;f=G+d|0;j=j-d|0;xg(E);if(c[e>>2]&4){a[f>>0]=-1;a[G+(d+1)>>0]=-110;j=j+-2|0;f=G+(d+2)|0}t=(k|0)!=0;if(t?(c[k+12>>2]|0)!=0:0){G=f-g|0;e=(c[(c[k+88>>2]|0)+(b*592|0)+548>>2]|0)+(c[k+8>>2]<<5)+8|0;c[e>>2]=G;c[e+4>>2]=((G|0)<0)<<31>>31}d=c[H>>2]|0;b:do if(d){u=k+12|0;v=k+8|0;w=k+88|0;r=F;s=0;c:while(1){l=c[r+20>>2]|0;q=_(c[l+(J*40|0)+20>>2]|0,c[l+(J*40|0)+16>>2]|0)|0;l=c[l+(J*40|0)+24>>2]|0;if(q){if(t){p=0;while(1){o=c[l+4>>2]|0;d=o+(K*24|0)|0;if(c[d>>2]|0){m=o+(K*24|0)+4|0;n=c[m>>2]|0;if(n>>>0>j>>>0){f=0;j=81;break c}Ui(f|0,c[o+(K*24|0)+16>>2]|0,n|0)|0;e=l+40|0;c[e>>2]=(c[e>>2]|0)+(c[d>>2]|0);e=c[m>>2]|0;f=f+e|0;j=j-e|0;if((c[u>>2]|0)!=0?(e=(c[(c[w>>2]|0)+(b*592|0)+548>>2]|0)+(c[v>>2]<<5)+24|0,I=+h[o+(K*24|0)+8>>3]+ +h[e>>3],h[e>>3]=I,+h[k>>3]>3]=I}p=p+1|0;if(p>>>0>=q>>>0)break;else l=l+52|0}}else{p=0;while(1){d=c[l+4>>2]|0;m=d+(K*24|0)|0;if(c[m>>2]|0){n=d+(K*24|0)+4|0;o=c[n>>2]|0;if(o>>>0>j>>>0){f=0;j=81;break c}Ui(f|0,c[d+(K*24|0)+16>>2]|0,o|0)|0;e=l+40|0;c[e>>2]=(c[e>>2]|0)+(c[m>>2]|0);e=c[n>>2]|0;j=j-e|0;f=f+e|0}p=p+1|0;if(p>>>0>=q>>>0)break;else l=l+52|0}}d=c[H>>2]|0}s=s+1|0;if(s>>>0>=d>>>0)break b;else r=r+36|0}if((j|0)==81)return f|0}while(0);c[i>>2]=f-g+(c[i>>2]|0);i=1;return i|0}function gh(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,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;N=i;i=i+64|0;L=N+40|0;K=N+32|0;x=N+24|0;w=N+16|0;u=N+8|0;t=N;v=N+48|0;M=N+44|0;c[M>>2]=h;z=c[f+28>>2]|0;J=f+24|0;y=c[d+((c[J>>2]|0)*52|0)+24>>2]|0;H=f+36|0;if((c[H>>2]|0)==0?(s=y+(z*136|0)+24|0,m=c[s>>2]|0,(m|0)!=0):0){r=f+32|0;p=0;q=y+(z*136|0)+28|0;while(1){d=c[r>>2]|0;n=c[q+20>>2]|0;if((c[q+8>>2]|0)!=(c[q>>2]|0)?(c[q+12>>2]|0)!=(c[q+4>>2]|0):0){kg(c[n+(d*40|0)+32>>2]|0);kg(c[n+(d*40|0)+36>>2]|0);m=_(c[n+(d*40|0)+20>>2]|0,c[n+(d*40|0)+16>>2]|0)|0;if(m){o=0;d=c[n+(d*40|0)+24>>2]|0;while(1){c[d+44>>2]=0;c[d+48>>2]=0;o=o+1|0;if((o|0)==(m|0))break;else d=d+56|0}}m=c[s>>2]|0}p=p+1|0;if(p>>>0>=m>>>0)break;else q=q+36|0}}do if(c[e>>2]&2){if(k>>>0<6){Ub(l,2,22072,t)|0;break}d=c[M>>2]|0;if((a[d>>0]|0)==-1?(a[d+1>>0]|0)==-111:0){c[M>>2]=d+6;break}Ub(l,2,22114,u)|0}while(0);G=wg()|0;if(!G){h=0;i=N;return h|0}do if(!(a[b+96>>0]&1))if(!(a[e+5636>>0]&2)){E=c[M>>2]|0;c[v>>2]=h+k-E;F=M;break}else{F=e+5168|0;E=c[F>>2]|0;v=e+5180|0;break}else{F=b+40|0;E=c[F>>2]|0;v=b+44|0}while(0);Ag(G,E,c[v>>2]|0);if(!(Cg(G,1)|0)){Eg(G)|0;m=yg(G)|0;d=E+m|0;xg(G);do if(c[e>>2]&4){if(((c[v>>2]|0)-d+(c[F>>2]|0)|0)>>>0<2){Ub(l,2,22135,w)|0;break}if((a[d>>0]|0)==-1?(a[E+(m+1)>>0]|0)==-110:0){d=E+(m+2)|0;break}Ub(l,2,22177,x)|0}while(0);c[v>>2]=(c[v>>2]|0)+((c[F>>2]|0)-d);c[F>>2]=d;c[g>>2]=0;c[j>>2]=(c[M>>2]|0)-h;h=1;i=N;return h|0}D=y+(z*136|0)+24|0;d=c[D>>2]|0;a:do if(d){B=f+32|0;C=e+5584|0;A=0;y=y+(z*136|0)+28|0;b:while(1){m=c[B>>2]|0;n=c[y+20>>2]|0;if(((c[y+8>>2]|0)!=(c[y>>2]|0)?(c[y+12>>2]|0)!=(c[y+4>>2]|0):0)?(I=_(c[n+(m*40|0)+20>>2]|0,c[n+(m*40|0)+16>>2]|0)|0,(I|0)!=0):0){b=n+(m*40|0)+32|0;f=n+(m*40|0)+36|0;w=y+28|0;x=0;k=c[n+(m*40|0)+24>>2]|0;while(1){m=k+44|0;if(!(c[m>>2]|0))d=pg(G,c[b>>2]|0,x,(c[H>>2]|0)+1|0)|0;else d=Cg(G,1)|0;c:do if(!d)c[k+40>>2]=0;else{if(!(c[m>>2]|0)){d=0;while(1)if(!(pg(G,c[f>>2]|0,x,d)|0))d=d+1|0;else break;c[k+24>>2]=1-d+(c[w>>2]|0);c[k+28>>2]=3}do if(Cg(G,1)|0)if(Cg(G,1)|0){d=Cg(G,2)|0;if((d|0)!=3){d=d+3|0;break}d=Cg(G,5)|0;if((d|0)==31){d=(Cg(G,7)|0)+37|0;break}else{d=d+6|0;break}}else d=2;else d=1;while(0);t=k+40|0;c[t>>2]=d;d=0;while(1)if(!(Cg(G,1)|0))break;else d=d+1|0;u=k+28|0;c[u>>2]=(c[u>>2]|0)+d;m=c[m>>2]|0;do if(!m){n=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;d=k+52|0;if(!(c[d>>2]|0)){c[d>>2]=10;o=k+4|0;m=Tc(c[o>>2]|0,320)|0;if(!m){m=d;n=o;d=o;o=66;break b}c[o>>2]=m}else m=c[k+4>>2]|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;if(n&4){c[m+20>>2]=1;m=0;break}m=m+20|0;if(!(n&1)){c[m>>2]=109;m=0;break}else{c[m>>2]=10;m=0;break}}else{q=m+-1|0;r=k+4|0;n=c[r>>2]|0;if((c[n+(q<<5)+8>>2]|0)!=(c[n+(q<<5)+20>>2]|0)){d=k+52|0;m=q;break}p=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;d=k+52|0;o=c[d>>2]|0;if((m+1|0)>>>0>o>>>0){z=o+10|0;c[d>>2]=z;n=Tc(n,z<<5)|0;if(!n){n=r;m=d;d=r;o=77;break b}c[r>>2]=n}z=n+(m<<5)|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(p&4){c[n+(m<<5)+20>>2]=1;break}if(!(p&1)){c[n+(m<<5)+20>>2]=109;break}else{z=c[n+(q<<5)+20>>2]|0;c[n+(m<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;break}}while(0);s=k+4|0;q=c[t>>2]|0;while(1){p=c[s>>2]|0;n=(c[p+(m<<5)+20>>2]|0)-(c[p+(m<<5)+8>>2]|0)|0;n=(n|0)<(q|0)?n:q;c[p+(m<<5)+24>>2]=n;p=c[u>>2]|0;if(n>>>0>1){o=0;while(1){o=o+1|0;if(n>>>0>3)n=n>>>1;else{n=o;break}}}else n=0;p=Cg(G,n+p|0)|0;n=c[s>>2]|0;c[n+(m<<5)+28>>2]=p;p=q-(c[n+(m<<5)+24>>2]|0)|0;if((p|0)<=0)break c;q=m+1|0;r=c[(c[C>>2]|0)+((c[J>>2]|0)*1080|0)+16>>2]|0;o=c[d>>2]|0;if((m+2|0)>>>0>o>>>0){z=o+10|0;c[d>>2]=z;n=Tc(n,z<<5)|0;if(!n){n=s;m=s;o=90;break b}c[s>>2]=n}z=n+(q<<5)|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(r&4){c[n+(q<<5)+20>>2]=1;m=q;q=p;continue}if(!(r&1)){c[n+(q<<5)+20>>2]=109;m=q;q=p;continue}else{z=c[n+(m<<5)+20>>2]|0;c[n+(q<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;m=q;q=p;continue}}}while(0);x=x+1|0;if(x>>>0>=I>>>0)break;else k=k+56|0}d=c[D>>2]|0}A=A+1|0;if(A>>>0>=d>>>0)break a;else y=y+36|0}if((o|0)==66){Uc(c[d>>2]|0);c[n>>2]=0;c[m>>2]=0;xg(G);h=0;i=N;return h|0}else if((o|0)==77){Uc(c[d>>2]|0);c[n>>2]=0;c[m>>2]=0;xg(G);h=0;i=N;return h|0}else if((o|0)==90){Uc(c[m>>2]|0);c[n>>2]=0;c[d>>2]=0;xg(G);h=0;i=N;return h|0}}while(0);if(!(Eg(G)|0)){xg(G);h=0;i=N;return h|0}m=yg(G)|0;d=E+m|0;xg(G);do if(c[e>>2]&4){if(((c[v>>2]|0)-d+(c[F>>2]|0)|0)>>>0<2){Ub(l,2,22135,K)|0;break}if((a[d>>0]|0)==-1?(a[E+(m+1)>>0]|0)==-110:0){d=E+(m+2)|0;break}Ub(l,2,22177,L)|0}while(0);c[v>>2]=(c[v>>2]|0)+((c[F>>2]|0)-d);c[F>>2]=d;c[g>>2]=1;c[j>>2]=(c[M>>2]|0)-h;h=1;i=N;return h|0}function hh(){return Pc(104)|0}function ih(a){a=a|0;if(!a)return;Uc(a);return}function jh(a){a=a|0;return (c[a+12>>2]|0)-(c[a+16>>2]|0)|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0;c[b+100>>2]=b+24;c[b+4>>2]=32768;c[b>>2]=0;f=d+-1|0;c[b+12>>2]=f;e=b+8|0;c[e>>2]=12;c[e>>2]=(a[f>>0]|0)==-1?13:12;c[b+16>>2]=d;return}function lh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=c[b+100>>2]|0;h=c[g>>2]|0;j=(c[h+4>>2]|0)==(d|0);f=c[h>>2]|0;k=b+4|0;d=(c[k>>2]|0)-f|0;c[k>>2]=d;if(!j){if(d>>>0>>0){j=(c[b>>2]|0)+f|0;c[b>>2]=j;f=d;d=j;j=b}else{c[k>>2]=f;d=c[b>>2]|0;j=b}c[g>>2]=c[h+12>>2];i=b+8|0;h=b+12|0;g=d;d=c[i>>2]|0;while(1){f=f<<1;c[k>>2]=f;e=g<<1;c[j>>2]=e;d=d+-1|0;c[i>>2]=d;if(!d){d=c[h>>2]|0;f=a[d>>0]|0;do if(f<<24>>24!=-1){if(!(e&134217728)){e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>18;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}a[d>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){b=c[j>>2]&134217727;c[j>>2]=b;e=d+1|0;c[h>>2]=e;a[e>>0]=b>>>20;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[h>>2]=e;a[e>>0]=(c[j>>2]|0)>>>19;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}}else{e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>19;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7}while(0);f=c[k>>2]|0}if(!(f&32768))g=e;else break}return}if(d&32768){c[b>>2]=(c[b>>2]|0)+f;return}if(d>>>0>>0){c[k>>2]=f;e=c[b>>2]|0;j=b}else{e=(c[b>>2]|0)+f|0;c[b>>2]=e;f=d;j=b}c[g>>2]=c[h+8>>2];i=b+8|0;h=b+12|0;g=e;d=c[i>>2]|0;while(1){f=f<<1;c[k>>2]=f;e=g<<1;c[j>>2]=e;d=d+-1|0;c[i>>2]=d;if(!d){d=c[h>>2]|0;f=a[d>>0]|0;do if(f<<24>>24!=-1){if(!(e&134217728)){e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>18;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}a[d>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){b=c[j>>2]&134217727;c[j>>2]=b;e=d+1|0;c[h>>2]=e;a[e>>0]=b>>>20;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[h>>2]=e;a[e>>0]=(c[j>>2]|0)>>>19;e=c[j>>2]&524287;c[j>>2]=e;c[i>>2]=8;d=8;break}}else{e=d+1|0;c[h>>2]=e;a[e>>0]=g>>>19;e=c[j>>2]&1048575;c[j>>2]=e;c[i>>2]=7;d=7}while(0);f=c[k>>2]|0}if(!(f&32768))g=e;else break}return}function mh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[b>>2]|0;f=h|65535;g=b+8|0;f=(f>>>0<((c[b+4>>2]|0)+h|0)>>>0?f:f+-32768|0)<>2];c[b>>2]=f;h=b+12|0;d=c[h>>2]|0;e=a[d>>0]|0;do if(e<<24>>24!=-1){if(!(f&134217728)){d=d+1|0;c[h>>2]=d;a[d>>0]=f>>>19;d=c[b>>2]&524287;c[b>>2]=d;c[g>>2]=8;e=8;break}a[d>>0]=e+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){e=c[b>>2]&134217727;c[b>>2]=e;d=d+1|0;c[h>>2]=d;a[d>>0]=e>>>20;d=c[b>>2]&1048575;c[b>>2]=d;c[g>>2]=7;e=7;break}else{d=d+1|0;c[h>>2]=d;a[d>>0]=(c[b>>2]|0)>>>19;d=c[b>>2]&524287;c[b>>2]=d;c[g>>2]=8;e=8;break}}else{d=d+1|0;c[h>>2]=d;a[d>>0]=f>>>20;d=c[b>>2]&1048575;c[b>>2]=d;c[g>>2]=7;e=7}while(0);d=d<>2]=d;e=c[h>>2]|0;f=a[e>>0]|0;do if(f<<24>>24!=-1){if(!(d&134217728)){f=e+1|0;c[h>>2]=f;a[f>>0]=d>>>19;c[b>>2]=c[b>>2]&524287;c[g>>2]=8;break}a[e>>0]=f+1<<24>>24;d=c[h>>2]|0;if((a[d>>0]|0)==-1){e=c[b>>2]&134217727;c[b>>2]=e;f=d+1|0;c[h>>2]=f;a[f>>0]=e>>>20;c[b>>2]=c[b>>2]&1048575;c[g>>2]=7;break}else{f=d+1|0;c[h>>2]=f;a[f>>0]=(c[b>>2]|0)>>>19;c[b>>2]=c[b>>2]&524287;c[g>>2]=8;break}}else{f=e+1|0;c[h>>2]=f;a[f>>0]=d>>>20;c[b>>2]=c[b>>2]&1048575;c[g>>2]=7}while(0);d=c[h>>2]|0;if((a[d>>0]|0)==-1)return;c[h>>2]=d+1;return}function nh(a){a=a|0;c[a>>2]=0;c[a+8>>2]=8;return}function oh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+8|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;d=(d<>2]|0)|0;c[b>>2]=d;if(f)return;f=b+12|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;a[g>>0]=d;c[e>>2]=8;c[e>>2]=(a[c[f>>2]>>0]|0)==-1?7:8;c[b>>2]=0;return}function ph(a){a=a|0;c[a+28>>2]=1156;c[a+32>>2]=1156;c[a+36>>2]=1156;c[a+40>>2]=1156;c[a+44>>2]=1156;c[a+48>>2]=1156;c[a+52>>2]=1156;c[a+56>>2]=1156;c[a+60>>2]=1156;c[a+64>>2]=1156;c[a+68>>2]=1156;c[a+72>>2]=1156;c[a+76>>2]=1156;c[a+80>>2]=1156;c[a+84>>2]=1156;c[a+88>>2]=1156;c[a+96>>2]=2628;c[a+92>>2]=1252;c[a+24>>2]=1284;return}function qh(a){a=a|0;c[a+24>>2]=1156;c[a+28>>2]=1156;c[a+32>>2]=1156;c[a+36>>2]=1156;c[a+40>>2]=1156;c[a+44>>2]=1156;c[a+48>>2]=1156;c[a+52>>2]=1156;c[a+56>>2]=1156;c[a+60>>2]=1156;c[a+64>>2]=1156;c[a+68>>2]=1156;c[a+72>>2]=1156;c[a+76>>2]=1156;c[a+80>>2]=1156;c[a+84>>2]=1156;c[a+88>>2]=1156;c[a+92>>2]=1156;c[a+96>>2]=1156;return}function rh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a+24+(b<<2)>>2]=1156+((e<<1)+d<<4);return}function sh(b){b=b|0;var d=0,e=0;c[b+100>>2]=b+24;c[b+4>>2]=32768;c[b>>2]=0;d=b+8|0;c[d>>2]=12;e=b+12|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if((a[b>>0]|0)!=-1)return;c[d>>2]=13;return}function th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=b+8|0;d=c[i>>2]|0;f=12-d|0;if((f|0)>0){g=b+12|0;e=c[b>>2]|0;do{d=e<>2]=d;c[i>>2]=0;e=c[g>>2]|0;h=a[e>>0]|0;do if(h<<24>>24!=-1){if(!(d&134217728)){e=e+1|0;c[g>>2]=e;a[e>>0]=d>>>19;e=c[b>>2]&524287;c[b>>2]=e;c[i>>2]=8;d=8;break}a[e>>0]=h+1<<24>>24;d=c[g>>2]|0;if((a[d>>0]|0)==-1){h=c[b>>2]&134217727;c[b>>2]=h;e=d+1|0;c[g>>2]=e;a[e>>0]=h>>>20;e=c[b>>2]&1048575;c[b>>2]=e;c[i>>2]=7;d=7;break}else{e=d+1|0;c[g>>2]=e;a[e>>0]=(c[b>>2]|0)>>>19;e=c[b>>2]&524287;c[b>>2]=e;c[i>>2]=8;d=8;break}}else{e=e+1|0;c[g>>2]=e;a[e>>0]=d>>>20;e=c[b>>2]&1048575;c[b>>2]=e;c[i>>2]=7;d=7}while(0);f=f-d|0}while((f|0)>0)}else g=b+12|0;d=c[g>>2]|0;e=a[d>>0]|0;if(e<<24>>24==-1)return;f=c[b>>2]|0;if(!(f&134217728)){h=d+1|0;c[g>>2]=h;a[h>>0]=f>>>19;c[b>>2]=c[b>>2]&524287;c[i>>2]=8;return}a[d>>0]=e+1<<24>>24;d=c[g>>2]|0;if((a[d>>0]|0)==-1){f=c[b>>2]&134217727;c[b>>2]=f;h=d+1|0;c[g>>2]=h;a[h>>0]=f>>>20;c[b>>2]=c[b>>2]&1048575;c[i>>2]=7;return}else{h=d+1|0;c[g>>2]=h;a[h>>0]=(c[b>>2]|0)>>>19;c[b>>2]=c[b>>2]&524287;c[i>>2]=8;return}}function uh(a){a=a|0;c[a+100>>2]=a+96;lh(a,1);lh(a,0);lh(a,1);lh(a,0);return}function vh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;c[b+100>>2]=b+24;c[b+16>>2]=e;c[b+20>>2]=e+f;h=b+12|0;c[h>>2]=e;do if(f){i=d[e>>0]<<16;c[b>>2]=i;g=e+1|0;if((f|0)==1)f=255;else f=d[g>>0]|0;if((a[e>>0]|0)!=-1){c[h>>2]=g;g=i|f<<8;c[b>>2]=g;f=b+8|0;c[f>>2]=8;h=b;i=1;break}if(f>>>0>143){g=i|65280;c[b>>2]=g;f=b+8|0;c[f>>2]=8;h=b;i=1;break}else{c[h>>2]=g;g=i+(f<<9)|0;c[b>>2]=g;f=b+8|0;c[f>>2]=7;h=b;i=0;break}}else{c[b>>2]=16776960;f=b+8|0;c[f>>2]=8;g=16776960;h=b;i=1}while(0);c[h>>2]=g<<7;c[f>>2]=i;c[b+4>>2]=32768;return 1}function wh(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[b+100>>2]|0;g=c[f>>2]|0;j=c[g>>2]|0;n=b+4|0;i=(c[n>>2]|0)-j|0;c[n>>2]=i;h=c[b>>2]|0;if(h>>>16>>>0>>0){c[n>>2]=j;e=c[g+4>>2]|0;if(i>>>0>>0)c[f>>2]=c[g+8>>2];else{c[f>>2]=c[g+12>>2];e=1-e|0}k=b+8|0;l=b+12|0;m=b+20|0;g=c[k>>2]|0;f=h;do{do if(!g){h=c[l>>2]|0;g=c[m>>2]|0;if((h|0)==(g|0)){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}i=h+1|0;if((i|0)==(g|0))g=255;else g=d[i>>0]|0;if((a[h>>0]|0)!=-1){c[l>>2]=i;f=f+(g<<8)|0;c[b>>2]=f;c[k>>2]=8;g=8;break}if(g>>>0>143){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}else{c[l>>2]=i;f=f+(g<<9)|0;c[b>>2]=f;c[k>>2]=7;g=7;break}}while(0);j=j<<1;c[n>>2]=j;f=f<<1;c[b>>2]=f;g=g+-1|0;c[k>>2]=g}while(j>>>0<32768);return e|0}h=h-(j<<16)|0;c[b>>2]=h;if(i&32768){b=c[g+4>>2]|0;return b|0}e=c[g+4>>2]|0;if(j>>>0>i>>>0){c[f>>2]=c[g+12>>2];e=1-e|0}else c[f>>2]=c[g+8>>2];k=b+8|0;l=b+12|0;m=b+20|0;g=c[k>>2]|0;f=h;j=i;do{do if(!g){h=c[l>>2]|0;g=c[m>>2]|0;if((h|0)==(g|0)){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}i=h+1|0;if((i|0)==(g|0))g=255;else g=d[i>>0]|0;if((a[h>>0]|0)!=-1){c[l>>2]=i;f=f+(g<<8)|0;c[b>>2]=f;c[k>>2]=8;g=8;break}if(g>>>0>143){f=f+65280|0;c[b>>2]=f;c[k>>2]=8;g=8;break}else{c[l>>2]=i;f=f+(g<<9)|0;c[b>>2]=f;c[k>>2]=7;g=7;break}}while(0);j=j<<1;c[n>>2]=j;f=f<<1;c[b>>2]=f;g=g+-1|0;c[k>>2]=g}while(j>>>0<32768);return e|0}function xh(){return Pc(28)|0}function yh(a){a=a|0;if(!a)return;Uc(a);return}function zh(b,d,e){b=b|0;d=d|0;e=e|0;c[b+20>>2]=d;c[b+8>>2]=e;c[b+12>>2]=0;a[b>>0]=0;c[b+4>>2]=0;return}function Ah(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=b+4|0;d=c[g>>2]|0;do if(!d){c[g>>2]=8;e=b+12|0;f=c[e>>2]|0;if((f|0)==(c[b+8>>2]|0)){a[b>>0]=-1;d=8;e=-1;break}if((a[b>>0]|0)==-1){c[g>>2]=7;d=7}else d=8;h=a[(c[b+20>>2]|0)+f>>0]|0;a[b>>0]=h;c[e>>2]=f+1;e=h}else e=a[b>>0]|0;while(0);h=d+-1|0;c[g>>2]=h;return (e&255)>>>h&1|0}function Bh(){var a=0;if(!(c[665]|0))a=2712;else a=c[(Ca()|0)+60>>2]|0;return a|0}function Ch(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[22198+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=22286;e=5;break}}if((e|0)==2)if(!c)b=22286;else{b=22286;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function Dh(a){a=a|0;if(a>>>0>4294963200){c[(Bh()|0)>>2]=0-a;a=-1}return a|0}function Eh(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Ti(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Eh(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function Fh(a,b){a=+a;b=b|0;return +(+Eh(a,b))}function Gh(a,b){a=+a;b=b|0;return +(+Jh(a,b))}function Hh(a){a=+a;return ~~+Ih(a)|0}function Ih(a){a=+a;var b=0;b=(g[k>>2]=a,c[k>>2]|0);if((b&2130706432)>>>0<=1249902592){b=(b|0)<0;a=b?a+-8388608.0+8388608.0:a+8388608.0+-8388608.0;if(a==0.0)a=b?-0.0:0.0}return +a}function Jh(a,b){a=+a;b=b|0;var d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){d=b+-2046|0;d=(d|0)>1023?1023:d;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){d=b+2044|0;d=(d|0)<-1022?-1022:d;a=a*2.2250738585072014e-308}}else d=b;d=Ri(d+1023|0,0,52)|0;b=C;c[k>>2]=d;c[k+4>>2]=b;return +(a*+h[k>>3])}function Kh(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Bh()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Lh(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Kh(a,b,0)|0;return a|0}function Mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(ri(24090,f<<24>>24,4)|0){e=Fi(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(j|0));if(!(ti(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(ti(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;ra(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k+4>>2]=3;f=ra(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;ra(221,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=60;c[e+36>>2]=61;c[e+40>>2]=3;c[e+12>>2]=1;if(!(c[666]|0))c[e+76>>2]=-1;Ia(2688);f=c[671]|0;c[e+56>>2]=f;if(f)c[f+52>>2]=e;c[671]=e;Ga(2688)}}else{c[(Bh()|0)>>2]=22;e=0}i=o;return e|0}function Nh(b){b=b|0;var c=0,d=0,e=0;d=(ti(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(ti(b,120)|0)==0;d=e?d:d|128;b=(ti(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Oh(a){a=a|0;return 0}function Ph(a){a=a|0;return}function Qh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;k=e&255;a[l>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Xh(b)|0)){h=c[g>>2]|0;j=4}else f=-1;else j=4;do if((j|0)==4){g=b+20|0;j=c[g>>2]|0;if(j>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[g>>2]=j+1;a[j>>0]=k;break}if((Ra[c[b+36>>2]&63](b,l,1)|0)==1)f=d[l>>0]|0;else f=-1}while(0);i=m;return f|0}function Rh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=Dh(Ja(6,d|0)|0)|0;i=b;return a|0}function Sh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[665]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=Dh(Na(145,h|0)|0)|0}else{ua(5,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=Dh(Na(145,g|0)|0)|0;qa(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){h=c[k>>2]|0;g=b+4|0;c[g>>2]=h;c[b+8>>2]=h+(f-j);if(!(c[l>>2]|0))f=e;else{c[g>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((Dh(Ma(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Uh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[665]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=Dh(Oa(146,n|0)|0)|0}else{ua(6,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=Dh(Oa(146,m|0)|0)|0;qa(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Vh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=61;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,(Fa(54,f|0)|0)!=0):0)a[b+75>>0]=-1;f=Uh(b,d,e)|0;i=g;return f|0}function Wh(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Ra[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Xh(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Yh(a){a=a|0;var b=0,d=0,e=0;e=(c[a>>2]&1|0)!=0;if(!e){Ia(2688);d=c[a+52>>2]|0;b=a+56|0;if(d)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b)c[b+52>>2]=d;if((c[671]|0)==(a|0))c[671]=b;Ga(2688)}b=Zh(a)|0;b=Wa[c[a+12>>2]&15](a)|0|b;d=c[a+92>>2]|0;if(d)Gi(d);if(!e)Gi(a);return b|0}function Zh(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=zi(a)|0;break}d=(Oh(a)|0)==0;b=zi(a)|0;if(!d)Ph(a)}else{if(!(c[677]|0))b=0;else b=Zh(c[677]|0)|0;Ia(2688);a=c[671]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Oh(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=zi(a)|0|b;if(d)Ph(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(2688)}while(0);return b|0}function _h(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(ri(24090,a[d>>0]|0,4)|0){h=Nh(d)|0|32768;c[e>>2]=b;c[e+4>>2]=h;c[e+8>>2]=438;e=Dh(Ka(5,e|0)|0)|0;if((e|0)>=0){b=Mh(e,d)|0;if(!b){c[f>>2]=e;Ja(6,f|0)|0;b=0}}else b=0}else{c[(Bh()|0)>>2]=22;b=0}i=g;return b|0}function $h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=oi(a,b,f)|0;i=e;return d|0}function ai(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(Oh(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(f=d+20|0,g=c[f>>2]|0,g>>>0<(c[d+16>>2]|0)>>>0):0){c[f>>2]=g+1;a[g>>0]=b;e=b&255}else e=Qh(d,b)|0;Ph(d)}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(h=d+20|0,e=c[h>>2]|0,e>>>0<(c[d+16>>2]|0)>>>0):0){c[h>>2]=e+1;a[e>>0]=b;e=b&255;break}e=Qh(d,b)|0}while(0);return e|0}function bi(a,b){a=a|0;b=b|0;return (ki(a,wi(a)|0,1,b)|0)+-1|0}function ci(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76>>2]|0)>-1)k=Oh(f)|0;else k=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;i=(c[f+8>>2]|0)-h|0;if((i|0)>0){i=i>>>0>>0?i:j;Ui(b|0,h|0,i|0)|0;c[g>>2]=h+i;b=b+i|0;g=j-i|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Wh(f)|0){e=h;break}g=Ra[c[i>>2]&63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k)Ph(f);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Ph(f);return e|0}function di(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;f=a+20|0;e=a+28|0;if((c[f>>2]|0)>>>0>(c[e>>2]|0)>>>0?(Ra[c[a+36>>2]&63](a,0,0)|0,(c[f>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[e>>2]=0;c[f>>2]=0;if((Ra[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(Oh(a)|0)==0;b=di(a,b,d)|0;if(!e)Ph(a)}else b=di(a,b,d)|0;return b|0}function fi(a,b,c){a=a|0;b=b|0;c=c|0;return ei(a,b,c)|0}function gi(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Ra[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function hi(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(Oh(a)|0)==0;a=gi(a)|0}else a=gi(a)|0;return a|0}function ii(a){a=a|0;return hi(a)|0}function ji(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Xh(e)|0)){g=c[f>>2]|0;h=4}else f=0;else h=4;a:do if((h|0)==4){i=e+20|0;h=c[i>>2]|0;if((g-h|0)>>>0>>0){f=Ra[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((Ra[c[e+36>>2]&63](e,b,f)|0)>>>0>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ui(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function ki(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=_(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Oh(e)|0)==0;a=ji(a,f,e)|0;if(!g)Ph(e)}else a=ji(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function li(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=oi(c[676]|0,a,e)|0;i=d;return b|0}function mi(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[676]|0;if((c[f+76>>2]|0)>-1)g=Oh(f)|0;else g=0;do if((bi(b,f)|0)<0)d=1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;d=0;break}d=(Qh(f,10)|0)<0}while(0);if(g)Ph(f);return d<<31>>31|0}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=qi(a,b,f)|0;i=e;return d|0}function oi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+80|0;r=s+96|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((Ai(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=Oh(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=Ai(b,d,o,q,r)|0;if(h){Ra[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Ai(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m)Ph(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function pi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=2716;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(Bh()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=oi(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function qi(a,b,c){a=a|0;b=b|0;c=c|0;return pi(a,2147483647,b,c)|0}function ri(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return ((e|0)!=0?b:0)|0}function si(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function ti(b,c){b=b|0;c=c|0;b=ui(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function ui(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(wi(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009)break b;b=b+4|0;e=c[b>>2]|0}while(((e&-2139062144^-2139062144)&e+-16843009|0)==0);while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function vi(a,b){a=a|0;b=b|0;si(a,b)|0;return a|0}function wi(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function xi(a){a=a|0;if(!(c[a+68>>2]|0))Ph(a);return}function yi(a){a=a|0;if(!(c[a+68>>2]|0))Ph(a);return}function zi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(Ra[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0>>0)Ra[c[a+40>>2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0}\nfunction Ai(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=i;i=i+624|0;ca=ha+24|0;ea=ha+16|0;da=ha+588|0;Y=ha+576|0;ba=ha;V=ha+536|0;ga=ha+8|0;fa=ha+528|0;M=(e|0)!=0;N=V+40|0;U=N;V=V+39|0;W=ga+4|0;X=Y+12|0;Y=Y+11|0;Z=da;$=X;aa=$-Z|0;O=-2-Z|0;P=$+2|0;Q=ca+288|0;R=da+9|0;S=R;T=da+8|0;m=0;w=f;n=0;f=0;a:while(1){do if((m|0)>-1)if((n|0)>(2147483647-m|0)){c[(Bh()|0)>>2]=75;m=-1;break}else{m=n+m|0;break}while(0);n=a[w>>0]|0;if(!(n<<24>>24)){L=245;break}else o=w;b:while(1){switch(n<<24>>24){case 37:{n=o;L=9;break b}case 0:{n=o;break b}default:{}}K=o+1|0;n=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[n+1>>0]|0)!=37)break c;o=o+1|0;n=n+2|0;if((a[n>>0]|0)==37)L=9;else break}while(0);y=o-w|0;if(M?(c[e>>2]&32|0)==0:0)ji(w,y,e)|0;if((o|0)!=(w|0)){w=n;n=y;continue}r=n+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[n+2>>0]|0)==36;r=K?n+3|0:r;o=a[r>>0]|0;u=K?p:-1;f=K?1:f}else u=-1;n=o<<24>>24;d:do if((n&-32|0)==32){p=0;while(1){if(!(1<>24)+-32|p;r=r+1|0;o=a[r>>0]|0;n=o<<24>>24;if((n&-32|0)!=32){s=p;n=r;break}}}else{s=0;n=r}while(0);do if(o<<24>>24==42){p=n+1|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+2>>0]|0)==36:0){c[l+(o<<2)>>2]=10;f=1;n=n+3|0;o=c[j+((a[p>>0]|0)+-48<<3)>>2]|0}else{if(f){m=-1;break a}if(!M){x=s;n=p;f=0;K=0;break}f=(c[g>>2]|0)+(4-1)&~(4-1);o=c[f>>2]|0;c[g>>2]=f+4;f=0;n=p}if((o|0)<0){x=s|8192;K=0-o|0}else{x=s;K=o}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){o=0;do{o=(o*10|0)+p|0;n=n+1|0;p=(a[n>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{x=s;K=o}}else{x=s;K=0}}while(0);e:do if((a[n>>0]|0)==46){p=n+1|0;o=a[p>>0]|0;if(o<<24>>24!=42){r=(o<<24>>24)+-48|0;if(r>>>0<10){n=p;o=0}else{n=p;r=0;break}while(1){o=(o*10|0)+r|0;n=n+1|0;r=(a[n>>0]|0)+-48|0;if(r>>>0>=10){r=o;break e}}}p=n+2|0;o=(a[p>>0]|0)+-48|0;if(o>>>0<10?(a[n+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;n=n+4|0;r=c[j+((a[p>>0]|0)+-48<<3)>>2]|0;break}if(f){m=-1;break a}if(M){n=(c[g>>2]|0)+(4-1)&~(4-1);r=c[n>>2]|0;c[g>>2]=n+4;n=p}else{n=p;r=0}}else r=-1;while(0);t=0;while(1){o=(a[n>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=n+1|0;o=a[25126+(t*58|0)+o>>0]|0;s=o&255;if((s+-1|0)>>>0<8){n=p;t=s}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=s;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ba;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Ci(ba,s,g)}while(0);if((L|0)==52?(L=0,!M):0){w=J;n=y;continue}u=a[n>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=x&-65537;I=(x&8192|0)==0?x:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 1:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 2:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}case 3:{b[c[ba>>2]>>1]=m;w=J;n=y;continue a}case 4:{a[c[ba>>2]>>0]=m;w=J;n=y;continue a}case 6:{c[c[ba>>2]>>2]=m;w=J;n=y;continue a}case 7:{w=c[ba>>2]|0;c[w>>2]=m;c[w+4>>2]=((m|0)<0)<<31>>31;w=J;n=y;continue a}default:{w=J;n=y;continue a}}case 112:{t=I|8;r=r>>>0>8?r:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)n=N;else{n=N;do{n=n+-1|0;a[n>>0]=o&7|48;o=Ti(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;s=25606;L=77}else{t=U-n+1|0;o=I;r=(r|0)<(t|0)?t:r;t=0;s=25606;L=77}break}case 105:case 100:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){n=Oi(0,0,n|0,o|0)|0;o=C;p=ba;c[p>>2]=n;c[p+4>>2]=o;p=1;s=25606;L=76;break f}if(!(I&2048)){s=I&1;p=s;s=(s|0)==0?25606:25608;L=76}else{p=1;s=25607;L=76}break}case 117:{o=ba;n=c[o>>2]|0;o=c[o+4>>2]|0;p=0;s=25606;L=76;break}case 99:{a[V>>0]=c[ba>>2];w=V;o=1;t=0;u=25606;n=N;break}case 109:{n=Ch(c[(Bh()|0)>>2]|0)|0;L=82;break}case 115:{n=c[ba>>2]|0;n=(n|0)!=0?n:25616;L=82;break}case 67:{c[ga>>2]=c[ba>>2];c[W>>2]=0;c[ba>>2]=ga;r=-1;L=86;break}case 83:{if(!r){Ei(e,32,K,0,I);n=0;L=98}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ba>>3];c[ea>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?25624:25629}else{G=1;H=25626}else{q=-q;G=1;H=25623}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){v=+Fh(q,ea)*2.0;o=v!=0.0;if(o)c[ea>>2]=(c[ea>>2]|0)+-1;D=u|32;if((D|0)==97){w=u&32;y=(w|0)==0?H:H+9|0;x=G|2;n=12-r|0;do if(!(r>>>0>11|(n|0)==0)){q=8.0;do{n=n+-1|0;q=q*16.0}while((n|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-v-q));break}else{q=v+q-q;break}}else q=v;while(0);o=c[ea>>2]|0;n=(o|0)<0?0-o|0:o;n=Di(n,((n|0)<0)<<31>>31,X)|0;if((n|0)==(X|0)){a[Y>>0]=48;n=Y}a[n+-1>>0]=(o>>31&2)+43;t=n+-2|0;a[t>>0]=u+15;s=(r|0)<1;p=(I&8|0)==0;o=da;while(1){H=~~q;n=o+1|0;a[o>>0]=d[25590+H>>0]|w;q=(q-+(H|0))*16.0;do if((n-Z|0)==1){if(p&(s&q==0.0))break;a[n>>0]=46;n=o+2|0}while(0);if(!(q!=0.0))break;else o=n}r=(r|0)!=0&(O+n|0)<(r|0)?P+r-t|0:aa-t+n|0;p=r+x|0;Ei(e,32,K,p,I);if(!(c[e>>2]&32))ji(y,x,e)|0;Ei(e,48,K,p,I^65536);n=n-Z|0;if(!(c[e>>2]&32))ji(da,n,e)|0;o=$-t|0;Ei(e,48,r-(n+o)|0,0,0);if(!(c[e>>2]&32))ji(t,o,e)|0;Ei(e,32,K,p,I^8192);n=(p|0)<(K|0)?K:p;break}n=(r|0)<0?6:r;if(o){o=(c[ea>>2]|0)+-28|0;c[ea>>2]=o;q=v*268435456.0}else{q=v;o=c[ea>>2]|0}F=(o|0)<0?ca:Q;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[ea>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0>>0)r=s;else{o=0;do{B=Ri(c[r>>2]|0,0,t|0)|0;B=Si(B|0,C|0,o|0,0)|0;o=C;A=$i(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_i(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[ea>>2]|0)-t|0;c[ea>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((n+25|0)/9|0)+1|0;z=(D|0)==102;w=r;while(1){x=0-o|0;x=(x|0)>9?9:x;do if(w>>>0

>>0){o=(1<>>x;r=0;t=w;do{B=c[t>>2]|0;c[t>>2]=(B>>>x)+r;r=_(B&o,s)|0;t=t+4|0}while(t>>>0

>>0);o=(c[w>>2]|0)==0?w+4|0:w;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[w>>2]|0)==0?w+4|0:w;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[ea>>2]|0)+x|0;c[ea>>2]=o;if((o|0)>=0){w=r;break}else w=r}}else w=r;do if(w>>>0

>>0){o=(E-w>>2)*9|0;s=c[w>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(n|0)!=0;r=n-((D|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;z=(t|0)/9|0;r=F+(z+-1023<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;x=c[r>>2]|0;y=(x>>>0)%(s>>>0)|0;if((y|0)==0?(F+(z+-1022<<2)|0)==(p|0):0)s=w;else L=163;do if((L|0)==163){L=0;v=(((x>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;t=(s|0)/2|0;do if(y>>>0>>0)q=.5;else{if((y|0)==(t|0)?(F+(z+-1022<<2)|0)==(p|0):0){q=1.0;break}q=1.5}while(0);do if(G){if((a[H>>0]|0)!=45)break;v=-v;q=-q}while(0);t=x-y|0;c[r>>2]=t;if(!(v+q!=v)){s=w;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=w;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>>>0>999999999)r=s;else{w=o;r=s;break}}}o=(E-w>>2)*9|0;t=c[w>>2]|0;if(t>>>0<10){s=w;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=w}while(0);D=r+4|0;w=s;p=p>>>0>D>>>0?D:p}y=0-o|0;while(1){if(p>>>0<=w>>>0){z=0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{z=1;D=p;break}}do if(A){n=(B&1^1)+n|0;if((n|0)>(o|0)&(o|0)>-5){u=u+-1|0;n=n+-1-o|0}else{u=u+-2|0;n=n+-1|0}p=I&8;if(p)break;do if(z){p=c[D+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(((p>>>0)%(s>>>0)|0|0)==0)}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;n=(n|0)<(p|0)?n:p;p=0;break}}else p=I&8;while(0);x=n|p;s=(x|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?y:o;r=Di(r,((r|0)<0)<<31>>31,X)|0;if(($-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while(($-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=$-E|0;u=E}y=G+1+n+s+o|0;Ei(e,32,K,y,I);if(!(c[e>>2]&32))ji(H,G,e)|0;Ei(e,48,K,y,I^65536);do if(t){r=w>>>0>F>>>0?F:w;o=r;do{p=Di(c[o>>2]|0,0,R)|0;do if((o|0)==(r|0)){if((p|0)!=(R|0))break;a[T>>0]=48;p=T}else{if(p>>>0<=da>>>0)break;do{p=p+-1|0;a[p>>0]=48}while(p>>>0>da>>>0)}while(0);if(!(c[e>>2]&32))ji(p,S-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(x){if(c[e>>2]&32)break;ji(25658,1,e)|0}while(0);if((n|0)>0&o>>>0>>0){p=o;while(1){o=Di(c[p>>2]|0,0,R)|0;if(o>>>0>da>>>0)do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0);if(!(c[e>>2]&32))ji(o,(n|0)>9?9:n,e)|0;p=p+4|0;o=n+-9|0;if(!((n|0)>9&p>>>0>>0)){n=o;break}else n=o}}Ei(e,48,n+9|0,9,0)}else{t=z?D:w+4|0;if((n|0)>-1){s=(p|0)==0;r=w;do{o=Di(c[r>>2]|0,0,R)|0;if((o|0)==(R|0)){a[T>>0]=48;o=T}do if((r|0)==(w|0)){p=o+1|0;if(!(c[e>>2]&32))ji(o,1,e)|0;if(s&(n|0)<1){o=p;break}if(c[e>>2]&32){o=p;break}ji(25658,1,e)|0;o=p}else{if(o>>>0<=da>>>0)break;do{o=o+-1|0;a[o>>0]=48}while(o>>>0>da>>>0)}while(0);p=S-o|0;if(!(c[e>>2]&32))ji(o,(n|0)>(p|0)?p:n,e)|0;n=n-p|0;r=r+4|0}while(r>>>0>>0&(n|0)>-1)}Ei(e,48,n+18|0,18,0);if(c[e>>2]&32)break;ji(u,$-u|0,e)|0}while(0);Ei(e,32,K,y,I^8192);n=(y|0)<(K|0)?K:y}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Ei(e,32,K,r,p);n=c[e>>2]|0;if(!(n&32)){ji(H,o,e)|0;n=c[e>>2]|0}if(!(n&32))ji(s?(t?25650:25654):t?25642:25646,3,e)|0;Ei(e,32,K,r,I^8192);n=(r|0)<(K|0)?K:r}while(0);w=J;continue a}default:{p=I;o=r;t=0;u=25606;n=N}}while(0);g:do if((L|0)==64){p=ba;o=c[p>>2]|0;p=c[p+4>>2]|0;s=u&32;if(!((o|0)==0&(p|0)==0)){n=N;do{n=n+-1|0;a[n>>0]=d[25590+(o&15)>>0]|s;o=Ti(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ba;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;s=25606;L=77}else{o=t;t=2;s=25606+(u>>4)|0;L=77}}else{n=N;o=t;t=0;s=25606;L=77}}else if((L|0)==76){n=Di(n,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=ri(n,0,r)|0;H=(I|0)==0;w=n;o=H?r:I-n|0;t=0;u=25606;n=H?n+r|0:I}else if((L|0)==86){L=0;o=0;n=0;s=c[ba>>2]|0;while(1){p=c[s>>2]|0;if(!p)break;n=Lh(fa,p)|0;if((n|0)<0|n>>>0>(r-o|0)>>>0)break;o=n+o|0;if(r>>>0>o>>>0)s=s+4|0;else break}if((n|0)<0){m=-1;break a}Ei(e,32,K,o,I);if(!o){n=0;L=98}else{p=0;r=c[ba>>2]|0;while(1){n=c[r>>2]|0;if(!n){n=o;L=98;break g}n=Lh(fa,n)|0;p=n+p|0;if((p|0)>(o|0)){n=o;L=98;break g}if(!(c[e>>2]&32))ji(fa,n,e)|0;if(p>>>0>=o>>>0){n=o;L=98;break}else r=r+4|0}}}while(0);if((L|0)==98){L=0;Ei(e,32,K,n,I^8192);w=J;n=(K|0)>(n|0)?K:n;continue}if((L|0)==77){L=0;p=(r|0)>-1?o&-65537:o;o=ba;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((r|0)!=0|o){o=(o&1^1)+(U-n)|0;w=n;o=(r|0)>(o|0)?r:o;u=s;n=N}else{w=N;o=0;u=s;n=N}}s=n-w|0;o=(o|0)<(s|0)?s:o;r=t+o|0;n=(K|0)<(r|0)?r:K;Ei(e,32,n,r,p);if(!(c[e>>2]&32))ji(u,t,e)|0;Ei(e,48,n,r,p^65536);Ei(e,48,o,s,0);if(!(c[e>>2]&32))ji(w,s,e)|0;Ei(e,32,n,r,p^8192);w=J}h:do if((L|0)==245)if(!e)if(f){m=1;while(1){f=c[l+(m<<2)>>2]|0;if(!f)break;Ci(j+(m<<3)|0,f,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ha;return m|0}function Bi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Ui(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Ci(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Di(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$i(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_i(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Ei(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;Qi(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){ji(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;ji(h,f,a)|0}while(0);i=j;return}function Fi(a){a=a|0;var 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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=c[735]|0;d=i>>>a;if(d&3){a=(d&1^1)+a|0;e=a<<1;d=2980+(e<<2)|0;e=2980+(e+2<<2)|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[739]|0)>>>0)ta();b=h+12|0;if((c[b>>2]|0)==(f|0)){c[b>>2]=d;c[e>>2]=h;break}else ta()}else c[735]=i&~(1<>2]=M|3;M=f+(M|4)|0;c[M>>2]=c[M>>2]|1;M=g;return M|0}h=c[737]|0;if(o>>>0>h>>>0){if(d){e=2<>>12&16;e=e>>>j;f=e>>>5&8;e=e>>>f;g=e>>>2&4;e=e>>>g;d=e>>>1&2;e=e>>>d;a=e>>>1&1;a=(f|j|g|d|a)+(e>>>a)|0;e=a<<1;d=2980+(e<<2)|0;e=2980+(e+2<<2)|0;g=c[e>>2]|0;j=g+8|0;f=c[j>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[739]|0)>>>0)ta();b=f+12|0;if((c[b>>2]|0)==(g|0)){c[b>>2]=d;c[e>>2]=f;k=c[737]|0;break}else ta()}else{c[735]=i&~(1<>2]=o|3;i=g+o|0;c[g+(o|4)>>2]=h|1;c[g+M>>2]=h;if(k){f=c[740]|0;d=k>>>3;b=d<<1;e=2980+(b<<2)|0;a=c[735]|0;d=1<>2]|0;if(b>>>0<(c[739]|0)>>>0)ta();else{l=a;m=b}}else{c[735]=a|d;l=2980+(b+2<<2)|0;m=e}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=e}c[737]=h;c[740]=i;M=j;return M|0}a=c[736]|0;if(a){d=(a&0-a)+-1|0;L=d>>>12&16;d=d>>>L;K=d>>>5&8;d=d>>>K;M=d>>>2&4;d=d>>>M;a=d>>>1&2;d=d>>>a;e=d>>>1&1;e=c[3244+((K|L|M|a|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;a=e;while(1){b=c[a+16>>2]|0;if(!b){b=c[a+20>>2]|0;if(!b){j=d;break}}a=(c[b+4>>2]&-8)-o|0;M=a>>>0>>0;d=M?a:d;a=b;e=M?b:e}g=c[739]|0;if(e>>>0>>0)ta();i=e+o|0;if(e>>>0>=i>>>0)ta();h=c[e+24>>2]|0;d=c[e+12>>2]|0;do if((d|0)==(e|0)){a=e+20|0;b=c[a>>2]|0;if(!b){a=e+16|0;b=c[a>>2]|0;if(!b){n=0;break}}while(1){d=b+20|0;f=c[d>>2]|0;if(f){b=f;a=d;continue}d=b+16|0;f=c[d>>2]|0;if(!f)break;else{b=f;a=d}}if(a>>>0>>0)ta();else{c[a>>2]=0;n=b;break}}else{f=c[e+8>>2]|0;if(f>>>0>>0)ta();b=f+12|0;if((c[b>>2]|0)!=(e|0))ta();a=d+8|0;if((c[a>>2]|0)==(e|0)){c[b>>2]=d;c[a>>2]=f;n=d;break}else ta()}while(0);do if(h){b=c[e+28>>2]|0;a=3244+(b<<2)|0;if((e|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(e|0))c[b>>2]=n;else c[h+20>>2]=n;if(!n)break}a=c[739]|0;if(n>>>0>>0)ta();c[n+24>>2]=h;b=c[e+16>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);b=c[e+20>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[n+20>>2]=b;c[b+24>>2]=n;break}}while(0);if(j>>>0<16){M=j+o|0;c[e+4>>2]=M|3;M=e+(M+4)|0;c[M>>2]=c[M>>2]|1}else{c[e+4>>2]=o|3;c[e+(o|4)>>2]=j|1;c[e+(j+o)>>2]=j;b=c[737]|0;if(b){g=c[740]|0;d=b>>>3;b=d<<1;f=2980+(b<<2)|0;a=c[735]|0;d=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{p=b;q=a}}else{c[735]=a|d;p=2980+(b+2<<2)|0;q=f}c[p>>2]=g;c[q+12>>2]=g;c[g+8>>2]=q;c[g+12>>2]=f}c[737]=j;c[740]=i}M=e+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=c[736]|0;if(l){d=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)k=31;else{q=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;k=14-(p|q|k)+(v<>>15)|0;k=m>>>(k+7|0)&1|k<<1}else k=0;a=c[3244+(k<<2)>>2]|0;a:do if(!a){f=0;a=0;v=86}else{h=d;f=0;i=m<<((k|0)==31?0:25-(k>>>1)|0);j=a;a=0;while(1){g=c[j+4>>2]&-8;d=g-m|0;if(d>>>0>>0)if((g|0)==(m|0)){g=j;a=j;v=90;break a}else a=j;else d=h;v=c[j+20>>2]|0;j=c[j+16+(i>>>31<<2)>>2]|0;f=(v|0)==0|(v|0)==(j|0)?f:v;if(!j){v=86;break}else{h=d;i=i<<1}}}while(0);if((v|0)==86){if((f|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;f=a>>>1&1;f=c[3244+((l|n|p|q|f)+(a>>>f)<<2)>>2]|0;a=0}if(!f){i=d;j=a}else{g=f;v=90}}if((v|0)==90)while(1){v=0;q=(c[g+4>>2]&-8)-m|0;f=q>>>0>>0;d=f?q:d;a=f?g:a;f=c[g+16>>2]|0;if(f){g=f;v=90;continue}g=c[g+20>>2]|0;if(!g){i=d;j=a;break}else v=90}if((j|0)!=0?i>>>0<((c[737]|0)-m|0)>>>0:0){f=c[739]|0;if(j>>>0>>0)ta();h=j+m|0;if(j>>>0>=h>>>0)ta();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){o=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0>>0)ta();else{c[a>>2]=0;o=b;break}}else{e=c[j+8>>2]|0;if(e>>>0>>0)ta();b=e+12|0;if((c[b>>2]|0)!=(j|0))ta();a=d+8|0;if((c[a>>2]|0)==(j|0)){c[b>>2]=d;c[a>>2]=e;o=d;break}else ta()}while(0);do if(g){b=c[j+28>>2]|0;a=3244+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=o;if(!o){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=g+16|0;if((c[b>>2]|0)==(j|0))c[b>>2]=o;else c[g+20>>2]=o;if(!o)break}a=c[739]|0;if(o>>>0>>0)ta();c[o+24>>2]=g;b=c[j+16>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[o+16>>2]=b;c[b+24>>2]=o;break}while(0);b=c[j+20>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[o+20>>2]=b;c[b+24>>2]=o;break}}while(0);b:do if(i>>>0>=16){c[j+4>>2]=m|3;c[j+(m|4)>>2]=i|1;c[j+(i+m)>>2]=i;b=i>>>3;if(i>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{s=b;t=a}}else{c[735]=d|b;s=2980+(a+2<<2)|0;t=e}c[s>>2]=h;c[t+12>>2]=h;c[j+(m+8)>>2]=t;c[j+(m+12)>>2]=e;break}b=i>>>8;if(b)if(i>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;b=3244+(e<<2)|0;c[j+(m+28)>>2]=e;c[j+(m+20)>>2]=0;c[j+(m+16)>>2]=0;a=c[736]|0;d=1<>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(i|0)){e=i<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(i|0)){y=d;break c}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=h;c[j+(m+24)>>2]=b;c[j+(m+12)>>2]=h;c[j+(m+8)>>2]=h;break b}}else y=b;while(0);b=y+8|0;a=c[b>>2]|0;M=c[739]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[j+(m+8)>>2]=a;c[j+(m+12)>>2]=y;c[j+(m+24)>>2]=0;break}else ta()}else{M=i+m|0;c[j+4>>2]=M|3;M=j+(M+4)|0;c[M>>2]=c[M>>2]|1}while(0);M=j+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);d=c[737]|0;if(d>>>0>=q>>>0){b=d-q|0;a=c[740]|0;if(b>>>0>15){c[740]=a+q;c[737]=b;c[a+(q+4)>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=q|3}else{c[737]=0;c[740]=0;c[a+4>>2]=d|3;M=a+(d+4)|0;c[M>>2]=c[M>>2]|1}M=a+8|0;return M|0}a=c[738]|0;if(a>>>0>q>>>0){L=a-q|0;c[738]=L;M=c[741]|0;c[741]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(c[853]|0)){a=za(30)|0;if(!(a+-1&a)){c[855]=a;c[854]=a;c[856]=-1;c[857]=-1;c[858]=0;c[846]=0;c[853]=(La(0)|0)&-16^1431655768;break}else ta()}while(0);j=q+48|0;i=c[855]|0;k=q+47|0;h=i+k|0;i=0-i|0;l=h&i;if(l>>>0<=q>>>0){M=0;return M|0}a=c[845]|0;if((a|0)!=0?(t=c[843]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(c[846]&4)){a=c[741]|0;e:do if(a){f=3388;while(1){d=c[f>>2]|0;if(d>>>0<=a>>>0?(r=f+4|0,(d+(c[r>>2]|0)|0)>>>0>a>>>0):0){g=f;a=r;break}f=c[f+8>>2]|0;if(!f){v=174;break e}}d=h-(c[738]|0)&i;if(d>>>0<2147483647){f=xa(d|0)|0;y=(f|0)==((c[g>>2]|0)+(c[a>>2]|0)|0);a=y?d:0;if(y){if((f|0)!=(-1|0)){w=f;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){g=xa(0)|0;if((g|0)!=(-1|0)){a=g;d=c[854]|0;f=d+-1|0;if(!(f&a))d=l;else d=l-a+(f+a&0-d)|0;a=c[843]|0;f=a+d|0;if(d>>>0>q>>>0&d>>>0<2147483647){y=c[845]|0;if((y|0)!=0?f>>>0<=a>>>0|f>>>0>y>>>0:0){a=0;break}f=xa(d|0)|0;y=(f|0)==(g|0);a=y?d:0;if(y){w=g;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){g=0-d|0;do if(j>>>0>d>>>0&(d>>>0<2147483647&(f|0)!=(-1|0))?(u=c[855]|0,u=k-d+u&0-u,u>>>0<2147483647):0)if((xa(u|0)|0)==(-1|0)){xa(g|0)|0;break f}else{d=u+d|0;break}while(0);if((f|0)!=(-1|0)){w=f;p=d;v=194;break d}}while(0);c[846]=c[846]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=xa(l|0)|0,x=xa(0)|0,w>>>0>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(c[843]|0)+p|0;c[843]=a;if(a>>>0>(c[844]|0)>>>0)c[844]=a;h=c[741]|0;g:do if(h){g=3388;do{a=c[g>>2]|0;d=g+4|0;f=c[d>>2]|0;if((w|0)==(a+f|0)){B=a;C=d;D=f;E=g;v=204;break}g=c[g+8>>2]|0}while((g|0)!=0);if(((v|0)==204?(c[E+12>>2]&8|0)==0:0)?h>>>0>>0&h>>>0>=B>>>0:0){c[C>>2]=D+p;M=(c[738]|0)+p|0;L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;c[741]=h+L;c[738]=K;c[h+(L+4)>>2]=K|1;c[h+(M+4)>>2]=40;c[742]=c[857];break}a=c[739]|0;if(w>>>0>>0){c[739]=w;a=w}d=w+p|0;g=3388;while(1){if((c[g>>2]|0)==(d|0)){f=g;d=g;v=212;break}g=c[g+8>>2]|0;if(!g){d=3388;break}}if((v|0)==212)if(!(c[d+12>>2]&8)){c[f>>2]=w;n=d+4|0;c[n>>2]=(c[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;k=w+(p+8)|0;k=(k&7|0)==0?0:0-k&7;b=w+(k+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;c[w+(n+4)>>2]=q|3;h:do if((b|0)!=(h|0)){if((b|0)==(c[740]|0)){M=(c[737]|0)+l|0;c[737]=M;c[740]=o;c[w+(m+4)>>2]=M|1;c[w+(M+m)>>2]=M;break}i=p+4|0;d=c[w+(i+k)>>2]|0;if((d&3|0)==1){j=d&-8;g=d>>>3;i:do if(d>>>0>=256){h=c[w+((k|24)+p)>>2]|0;e=c[w+(p+12+k)>>2]|0;do if((e|0)==(b|0)){f=k|16;e=w+(i+f)|0;d=c[e>>2]|0;if(!d){e=w+(f+p)|0;d=c[e>>2]|0;if(!d){J=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;J=d;break}}else{f=c[w+((k|8)+p)>>2]|0;if(f>>>0>>0)ta();a=f+12|0;if((c[a>>2]|0)!=(b|0))ta();d=e+8|0;if((c[d>>2]|0)==(b|0)){c[a>>2]=e;c[d>>2]=f;J=e;break}else ta()}while(0);if(!h)break;a=c[w+(p+28+k)>>2]|0;d=3244+(a<<2)|0;do if((b|0)!=(c[d>>2]|0)){if(h>>>0<(c[739]|0)>>>0)ta();a=h+16|0;if((c[a>>2]|0)==(b|0))c[a>>2]=J;else c[h+20>>2]=J;if(!J)break i}else{c[d>>2]=J;if(J)break;c[736]=c[736]&~(1<>>0>>0)ta();c[J+24>>2]=h;b=k|16;a=c[w+(b+p)>>2]|0;do if(a)if(a>>>0>>0)ta();else{c[J+16>>2]=a;c[a+24>>2]=J;break}while(0);b=c[w+(i+b)>>2]|0;if(!b)break;if(b>>>0<(c[739]|0)>>>0)ta();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{e=c[w+((k|8)+p)>>2]|0;f=c[w+(p+12+k)>>2]|0;d=2980+(g<<1<<2)|0;do if((e|0)!=(d|0)){if(e>>>0>>0)ta();if((c[e+12>>2]|0)==(b|0))break;ta()}while(0);if((f|0)==(e|0)){c[735]=c[735]&~(1<>>0>>0)ta();a=f+8|0;if((c[a>>2]|0)==(b|0)){F=a;break}ta()}while(0);c[e+12>>2]=f;c[F>>2]=e}while(0);b=w+((j|k)+p)|0;f=j+l|0}else f=l;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[w+(m+4)>>2]=f|1;c[w+(f+m)>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0>=(c[739]|0)>>>0){K=b;L=a;break}ta()}while(0);c[K>>2]=o;c[L+12>>2]=o;c[w+(m+8)>>2]=L;c[w+(m+12)>>2]=e;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}K=(b+1048320|0)>>>16&8;L=b<>>16&4;L=L<>>16&2;e=14-(J|K|e)+(L<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=3244+(e<<2)|0;c[w+(m+28)>>2]=e;c[w+(m+20)>>2]=0;c[w+(m+16)>>2]=0;a=c[736]|0;d=1<>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break}b=c[b>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(f|0)){M=d;break j}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=o;c[w+(m+24)>>2]=b;c[w+(m+12)>>2]=o;c[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=c[b>>2]|0;L=c[739]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){c[a+12>>2]=o;c[b>>2]=o;c[w+(m+8)>>2]=a;c[w+(m+12)>>2]=M;c[w+(m+24)>>2]=0;break}else ta()}else{M=(c[738]|0)+l|0;c[738]=M;c[741]=o;c[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else d=3388;while(1){a=c[d>>2]|0;if(a>>>0<=h>>>0?(b=c[d+4>>2]|0,e=a+b|0,e>>>0>h>>>0):0)break;d=c[d+8>>2]|0}f=a+(b+-39)|0;a=a+(b+-47+((f&7|0)==0?0:0-f&7))|0;f=h+16|0;a=a>>>0>>0?h:a;b=a+8|0;d=w+8|0;d=(d&7|0)==0?0:0-d&7;M=p+-40-d|0;c[741]=w+d;c[738]=M;c[w+(d+4)>>2]=M|1;c[w+(p+-36)>>2]=40;c[742]=c[857];d=a+4|0;c[d>>2]=27;c[b>>2]=c[847];c[b+4>>2]=c[848];c[b+8>>2]=c[849];c[b+12>>2]=c[850];c[847]=w;c[848]=p;c[850]=0;c[849]=b;b=a+28|0;c[b>>2]=7;if((a+32|0)>>>0>>0)do{M=b;b=b+4|0;c[b>>2]=7}while((M+8|0)>>>0>>0);if((a|0)!=(h|0)){g=a-h|0;c[d>>2]=c[d>>2]&-2;c[h+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){a=b<<1;e=2980+(a<<2)|0;d=c[735]|0;b=1<>2]|0;if(a>>>0<(c[739]|0)>>>0)ta();else{G=b;H=a}}else{c[735]=d|b;G=2980+(a+2<<2)|0;H=e}c[G>>2]=h;c[H+12>>2]=h;c[h+8>>2]=H;c[h+12>>2]=e;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{L=(b+1048320|0)>>>16&8;M=b<>>16&4;M=M<>>16&2;e=14-(K|L|e)+(M<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=3244+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[f>>2]=0;b=c[736]|0;a=1<>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}b=c[d>>2]|0;k:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){a=b+16+(e>>>31<<2)|0;d=c[a>>2]|0;if(!d)break;if((c[d+4>>2]&-8|0)==(g|0)){I=d;break k}else{e=e<<1;b=d}}if(a>>>0<(c[739]|0)>>>0)ta();else{c[a>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;break g}}else I=b;while(0);b=I+8|0;a=c[b>>2]|0;M=c[739]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){c[a+12>>2]=h;c[b>>2]=h;c[h+8>>2]=a;c[h+12>>2]=I;c[h+24>>2]=0;break}else ta()}}else{M=c[739]|0;if((M|0)==0|w>>>0>>0)c[739]=w;c[847]=w;c[848]=p;c[850]=0;c[744]=c[853];c[743]=-1;b=0;do{M=b<<1;L=2980+(M<<2)|0;c[2980+(M+3<<2)>>2]=L;c[2980+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;c[741]=w+M;c[738]=L;c[w+(M+4)>>2]=L|1;c[w+(p+-36)>>2]=40;c[742]=c[857]}while(0);b=c[738]|0;if(b>>>0>q>>>0){L=b-q|0;c[738]=L;M=c[741]|0;c[741]=M+q;c[M+(q+4)>>2]=L|1;c[M+4>>2]=q|3;M=M+8|0;return M|0}}c[(Bh()|0)>>2]=12;M=0;return M|0}function Gi(a){a=a|0;var 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,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;i=c[739]|0;if(b>>>0>>0)ta();d=c[a+-4>>2]|0;e=d&3;if((e|0)==1)ta();o=d&-8;q=a+(o+-8)|0;do if(!(d&1)){b=c[b>>2]|0;if(!e)return;j=-8-b|0;l=a+j|0;m=b+o|0;if(l>>>0>>0)ta();if((l|0)==(c[740]|0)){b=a+(o+-4)|0;d=c[b>>2]|0;if((d&3|0)!=3){u=l;g=m;break}c[737]=m;c[b>>2]=d&-2;c[a+(j+4)>>2]=m|1;c[q>>2]=m;return}f=b>>>3;if(b>>>0<256){e=c[a+(j+8)>>2]|0;d=c[a+(j+12)>>2]|0;b=2980+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0>>0)ta();if((c[e+12>>2]|0)!=(l|0))ta()}if((d|0)==(e|0)){c[735]=c[735]&~(1<>>0>>0)ta();b=d+8|0;if((c[b>>2]|0)==(l|0))h=b;else ta()}else h=d+8|0;c[e+12>>2]=d;c[h>>2]=e;u=l;g=m;break}h=c[a+(j+24)>>2]|0;e=c[a+(j+12)>>2]|0;do if((e|0)==(l|0)){d=a+(j+20)|0;b=c[d>>2]|0;if(!b){d=a+(j+16)|0;b=c[d>>2]|0;if(!b){k=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0>>0)ta();else{c[d>>2]=0;k=b;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)ta();b=f+12|0;if((c[b>>2]|0)!=(l|0))ta();d=e+8|0;if((c[d>>2]|0)==(l|0)){c[b>>2]=e;c[d>>2]=f;k=e;break}else ta()}while(0);if(h){b=c[a+(j+28)>>2]|0;d=3244+(b<<2)|0;if((l|0)==(c[d>>2]|0)){c[d>>2]=k;if(!k){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(l|0))c[b>>2]=k;else c[h+20>>2]=k;if(!k){u=l;g=m;break}}d=c[739]|0;if(k>>>0>>0)ta();c[k+24>>2]=h;b=c[a+(j+16)>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[k+16>>2]=b;c[b+24>>2]=k;break}while(0);b=c[a+(j+20)>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[k+20>>2]=b;c[b+24>>2]=k;u=l;g=m;break}else{u=l;g=m}}else{u=l;g=m}}else{u=b;g=o}while(0);if(u>>>0>=q>>>0)ta();b=a+(o+-4)|0;d=c[b>>2]|0;if(!(d&1))ta();if(!(d&2)){if((q|0)==(c[741]|0)){t=(c[738]|0)+g|0;c[738]=t;c[741]=u;c[u+4>>2]=t|1;if((u|0)!=(c[740]|0))return;c[740]=0;c[737]=0;return}if((q|0)==(c[740]|0)){t=(c[737]|0)+g|0;c[737]=t;c[740]=u;c[u+4>>2]=t|1;c[u+t>>2]=t;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=c[a+(o+16)>>2]|0;b=c[a+(o|4)>>2]|0;do if((b|0)==(q|0)){d=a+(o+12)|0;b=c[d>>2]|0;if(!b){d=a+(o+8)|0;b=c[d>>2]|0;if(!b){p=0;break}}while(1){e=b+20|0;f=c[e>>2]|0;if(f){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<(c[739]|0)>>>0)ta();else{c[d>>2]=0;p=b;break}}else{d=c[a+o>>2]|0;if(d>>>0<(c[739]|0)>>>0)ta();e=d+12|0;if((c[e>>2]|0)!=(q|0))ta();f=b+8|0;if((c[f>>2]|0)==(q|0)){c[e>>2]=b;c[f>>2]=d;p=b;break}else ta()}while(0);if(h){b=c[a+(o+20)>>2]|0;d=3244+(b<<2)|0;if((q|0)==(c[d>>2]|0)){c[d>>2]=p;if(!p){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();b=h+16|0;if((c[b>>2]|0)==(q|0))c[b>>2]=p;else c[h+20>>2]=p;if(!p)break}d=c[739]|0;if(p>>>0>>0)ta();c[p+24>>2]=h;b=c[a+(o+8)>>2]|0;do if(b)if(b>>>0>>0)ta();else{c[p+16>>2]=b;c[b+24>>2]=p;break}while(0);b=c[a+(o+12)>>2]|0;if(b)if(b>>>0<(c[739]|0)>>>0)ta();else{c[p+20>>2]=b;c[b+24>>2]=p;break}}}else{e=c[a+o>>2]|0;d=c[a+(o|4)>>2]|0;b=2980+(f<<1<<2)|0;if((e|0)!=(b|0)){if(e>>>0<(c[739]|0)>>>0)ta();if((c[e+12>>2]|0)!=(q|0))ta()}if((d|0)==(e|0)){c[735]=c[735]&~(1<>>0<(c[739]|0)>>>0)ta();b=d+8|0;if((c[b>>2]|0)==(q|0))n=b;else ta()}else n=d+8|0;c[e+12>>2]=d;c[n>>2]=e}while(0);c[u+4>>2]=g|1;c[u+g>>2]=g;if((u|0)==(c[740]|0)){c[737]=g;return}}else{c[b>>2]=d&-2;c[u+4>>2]=g|1;c[u+g>>2]=g}b=g>>>3;if(g>>>0<256){d=b<<1;f=2980+(d<<2)|0;e=c[735]|0;b=1<>2]|0;if(d>>>0<(c[739]|0)>>>0)ta();else{r=b;s=d}}else{c[735]=e|b;r=2980+(d+2<<2)|0;s=f}c[r>>2]=u;c[s+12>>2]=u;c[u+8>>2]=s;c[u+12>>2]=f;return}b=g>>>8;if(b)if(g>>>0>16777215)f=31;else{r=(b+1048320|0)>>>16&8;s=b<>>16&4;s=s<>>16&2;f=14-(q|r|f)+(s<>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;b=3244+(f<<2)|0;c[u+28>>2]=f;c[u+20>>2]=0;c[u+16>>2]=0;d=c[736]|0;e=1<>2]|0;b:do if((c[b+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=b+16+(f>>>31<<2)|0;e=c[d>>2]|0;if(!e)break;if((c[e+4>>2]&-8|0)==(g|0)){t=e;break b}else{f=f<<1;b=e}}if(d>>>0<(c[739]|0)>>>0)ta();else{c[d>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;d=c[b>>2]|0;s=c[739]|0;if(d>>>0>=s>>>0&t>>>0>=s>>>0){c[d+12>>2]=u;c[b>>2]=u;c[u+8>>2]=d;c[u+12>>2]=t;c[u+24>>2]=0;break}else ta()}else{c[736]=d|e;c[b>>2]=u;c[u+24>>2]=b;c[u+12>>2]=u;c[u+8>>2]=u}while(0);u=(c[743]|0)+-1|0;c[743]=u;if(!u)b=3396;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[743]=-1;return}function Hi(a,b){a=a|0;b=b|0;var d=0;if(a){d=_(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Fi(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;Qi(b|0,0,d|0)|0;return b|0}function Ii(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Fi(b)|0;return a|0}if(b>>>0>4294967231){c[(Bh()|0)>>2]=12;a=0;return a|0}d=Ki(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d){a=d+8|0;return a|0}d=Fi(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Ui(d|0,a|0,(e>>>0>>0?e:b)|0)|0;Gi(a);a=d;return a|0}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{e=Li(b>>>0<16?16:b,d)|0;break}}else e=Fi(d)|0;while(0);if(!e){a=12;return a|0}c[a>>2]=e;a=0;return a|0}function Ki(a,b){a=a|0;b=b|0;var 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=a+4|0;p=c[o>>2]|0;j=p&-8;l=a+j|0;i=c[739]|0;d=p&3;if(!((d|0)!=1&a>>>0>=i>>>0&a>>>0>>0))ta();e=a+(j|4)|0;f=c[e>>2]|0;if(!(f&1))ta();if(!d){if(b>>>0<256){a=0;return a|0}if(j>>>0>=(b+4|0)>>>0?(j-b|0)>>>0<=c[855]<<1>>>0:0)return a|0;a=0;return a|0}if(j>>>0>=b>>>0){d=j-b|0;if(d>>>0<=15)return a|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|3;c[e>>2]=c[e>>2]|1;Mi(a+b|0,d);return a|0}if((l|0)==(c[741]|0)){d=(c[738]|0)+j|0;if(d>>>0<=b>>>0){a=0;return a|0}n=d-b|0;c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|1;c[741]=a+b;c[738]=n;return a|0}if((l|0)==(c[740]|0)){e=(c[737]|0)+j|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=d|1;c[a+e>>2]=d;e=a+(e+4)|0;c[e>>2]=c[e>>2]&-2;e=a+b|0}else{c[o>>2]=p&1|e|2;e=a+(e+4)|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[737]=d;c[740]=e;return a|0}if(f&2){a=0;return a|0}m=(f&-8)+j|0;if(m>>>0>>0){a=0;return a|0}n=m-b|0;g=f>>>3;do if(f>>>0>=256){h=c[a+(j+24)>>2]|0;g=c[a+(j+12)>>2]|0;do if((g|0)==(l|0)){e=a+(j+20)|0;d=c[e>>2]|0;if(!d){e=a+(j+16)|0;d=c[e>>2]|0;if(!d){k=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;k=d;break}}else{f=c[a+(j+8)>>2]|0;if(f>>>0>>0)ta();d=f+12|0;if((c[d>>2]|0)!=(l|0))ta();e=g+8|0;if((c[e>>2]|0)==(l|0)){c[d>>2]=g;c[e>>2]=f;k=g;break}else ta()}while(0);if(h){d=c[a+(j+28)>>2]|0;e=3244+(d<<2)|0;if((l|0)==(c[e>>2]|0)){c[e>>2]=k;if(!k){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=h+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=k;else c[h+20>>2]=k;if(!k)break}e=c[739]|0;if(k>>>0>>0)ta();c[k+24>>2]=h;d=c[a+(j+16)>>2]|0;do if(d)if(d>>>0>>0)ta();else{c[k+16>>2]=d;c[d+24>>2]=k;break}while(0);d=c[a+(j+20)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[k+20>>2]=d;c[d+24>>2]=k;break}}}else{f=c[a+(j+8)>>2]|0;e=c[a+(j+12)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(l|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(l|0))h=d;else ta()}else h=e+8|0;c[f+12>>2]=e;c[h>>2]=f}while(0);if(n>>>0<16){c[o>>2]=m|p&1|2;b=a+(m|4)|0;c[b>>2]=c[b>>2]|1;return a|0}else{c[o>>2]=p&1|b|2;c[a+(b+4)>>2]=n|3;p=a+(m|4)|0;c[p>>2]=c[p>>2]|1;Mi(a+b|0,n);return a|0}return 0}function Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;a=a>>>0<16?16:a;if(a+-1&a){d=16;while(1)if(d>>>0>>0)d=d<<1;else{a=d;break}}if((-64-a|0)>>>0<=b>>>0){c[(Bh()|0)>>2]=12;i=0;return i|0}h=b>>>0<11?16:b+11&-8;e=Fi(h+12+a|0)|0;if(!e){i=0;return i|0}b=e+-8|0;d=a+-1|0;do if(e&d){f=e+d&0-a;d=f+-8|0;g=b;f=(d-g|0)>>>0>15?d:f+(a+-8)|0;g=f-g|0;a=e+-4|0;e=c[a>>2]|0;d=(e&-8)-g|0;if(!(e&3)){c[f>>2]=(c[b>>2]|0)+g;c[f+4>>2]=d;b=f;break}else{e=f+4|0;c[e>>2]=d|c[e>>2]&1|2;d=f+(d+4)|0;c[d>>2]=c[d>>2]|1;c[a>>2]=g|c[a>>2]&1|2;c[e>>2]=c[e>>2]|1;Mi(b,g);b=f;break}}while(0);a=b+4|0;d=c[a>>2]|0;if((d&3|0)!=0?(i=d&-8,i>>>0>(h+16|0)>>>0):0){g=i-h|0;c[a>>2]=h|d&1|2;c[b+(h|4)>>2]=g|3;i=b+(i|4)|0;c[i>>2]=c[i>>2]|1;Mi(b+h|0,g)}i=b+8|0;return i|0}function Mi(a,b){a=a|0;b=b|0;var 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;q=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){k=c[a>>2]|0;if(!(d&3))return;n=a+(0-k)|0;m=k+b|0;j=c[739]|0;if(n>>>0>>0)ta();if((n|0)==(c[740]|0)){e=a+(b+4)|0;d=c[e>>2]|0;if((d&3|0)!=3){t=n;h=m;break}c[737]=m;c[e>>2]=d&-2;c[a+(4-k)>>2]=m|1;c[q>>2]=m;return}g=k>>>3;if(k>>>0<256){f=c[a+(8-k)>>2]|0;e=c[a+(12-k)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(n|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(n|0))i=d;else ta()}else i=e+8|0;c[f+12>>2]=e;c[i>>2]=f;t=n;h=m;break}i=c[a+(24-k)>>2]|0;f=c[a+(12-k)>>2]|0;do if((f|0)==(n|0)){f=16-k|0;e=a+(f+4)|0;d=c[e>>2]|0;if(!d){e=a+f|0;d=c[e>>2]|0;if(!d){l=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;l=d;break}}else{g=c[a+(8-k)>>2]|0;if(g>>>0>>0)ta();d=g+12|0;if((c[d>>2]|0)!=(n|0))ta();e=f+8|0;if((c[e>>2]|0)==(n|0)){c[d>>2]=f;c[e>>2]=g;l=f;break}else ta()}while(0);if(i){d=c[a+(28-k)>>2]|0;e=3244+(d<<2)|0;if((n|0)==(c[e>>2]|0)){c[e>>2]=l;if(!l){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=i+16|0;if((c[d>>2]|0)==(n|0))c[d>>2]=l;else c[i+20>>2]=l;if(!l){t=n;h=m;break}}f=c[739]|0;if(l>>>0>>0)ta();c[l+24>>2]=i;d=16-k|0;e=c[a+d>>2]|0;do if(e)if(e>>>0>>0)ta();else{c[l+16>>2]=e;c[e+24>>2]=l;break}while(0);d=c[a+(d+4)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[l+20>>2]=d;c[d+24>>2]=l;t=n;h=m;break}else{t=n;h=m}}else{t=n;h=m}}else{t=a;h=b}while(0);j=c[739]|0;if(q>>>0>>0)ta();d=a+(b+4)|0;e=c[d>>2]|0;if(!(e&2)){if((q|0)==(c[741]|0)){s=(c[738]|0)+h|0;c[738]=s;c[741]=t;c[t+4>>2]=s|1;if((t|0)!=(c[740]|0))return;c[740]=0;c[737]=0;return}if((q|0)==(c[740]|0)){s=(c[737]|0)+h|0;c[737]=s;c[740]=t;c[t+4>>2]=s|1;c[t+s>>2]=s;return}h=(e&-8)+h|0;g=e>>>3;do if(e>>>0>=256){i=c[a+(b+24)>>2]|0;f=c[a+(b+12)>>2]|0;do if((f|0)==(q|0)){e=a+(b+20)|0;d=c[e>>2]|0;if(!d){e=a+(b+16)|0;d=c[e>>2]|0;if(!d){p=0;break}}while(1){f=d+20|0;g=c[f>>2]|0;if(g){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0>>0)ta();else{c[e>>2]=0;p=d;break}}else{g=c[a+(b+8)>>2]|0;if(g>>>0>>0)ta();d=g+12|0;if((c[d>>2]|0)!=(q|0))ta();e=f+8|0;if((c[e>>2]|0)==(q|0)){c[d>>2]=f;c[e>>2]=g;p=f;break}else ta()}while(0);if(i){d=c[a+(b+28)>>2]|0;e=3244+(d<<2)|0;if((q|0)==(c[e>>2]|0)){c[e>>2]=p;if(!p){c[736]=c[736]&~(1<>>0<(c[739]|0)>>>0)ta();d=i+16|0;if((c[d>>2]|0)==(q|0))c[d>>2]=p;else c[i+20>>2]=p;if(!p)break}e=c[739]|0;if(p>>>0>>0)ta();c[p+24>>2]=i;d=c[a+(b+16)>>2]|0;do if(d)if(d>>>0>>0)ta();else{c[p+16>>2]=d;c[d+24>>2]=p;break}while(0);d=c[a+(b+20)>>2]|0;if(d)if(d>>>0<(c[739]|0)>>>0)ta();else{c[p+20>>2]=d;c[d+24>>2]=p;break}}}else{f=c[a+(b+8)>>2]|0;e=c[a+(b+12)>>2]|0;d=2980+(g<<1<<2)|0;if((f|0)!=(d|0)){if(f>>>0>>0)ta();if((c[f+12>>2]|0)!=(q|0))ta()}if((e|0)==(f|0)){c[735]=c[735]&~(1<>>0>>0)ta();d=e+8|0;if((c[d>>2]|0)==(q|0))o=d;else ta()}else o=e+8|0;c[f+12>>2]=e;c[o>>2]=f}while(0);c[t+4>>2]=h|1;c[t+h>>2]=h;if((t|0)==(c[740]|0)){c[737]=h;return}}else{c[d>>2]=e&-2;c[t+4>>2]=h|1;c[t+h>>2]=h}d=h>>>3;if(h>>>0<256){e=d<<1;g=2980+(e<<2)|0;f=c[735]|0;d=1<>2]|0;if(e>>>0<(c[739]|0)>>>0)ta();else{r=d;s=e}}else{c[735]=f|d;r=2980+(e+2<<2)|0;s=g}c[r>>2]=t;c[s+12>>2]=t;c[t+8>>2]=s;c[t+12>>2]=g;return}d=h>>>8;if(d)if(h>>>0>16777215)g=31;else{r=(d+1048320|0)>>>16&8;s=d<>>16&4;s=s<>>16&2;g=14-(q|r|g)+(s<>>15)|0;g=h>>>(g+7|0)&1|g<<1}else g=0;d=3244+(g<<2)|0;c[t+28>>2]=g;c[t+20>>2]=0;c[t+16>>2]=0;e=c[736]|0;f=1<>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}d=c[d>>2]|0;a:do if((c[d+4>>2]&-8|0)!=(h|0)){g=h<<((g|0)==31?0:25-(g>>>1)|0);while(1){e=d+16+(g>>>31<<2)|0;f=c[e>>2]|0;if(!f)break;if((c[f+4>>2]&-8|0)==(h|0)){d=f;break a}else{g=g<<1;d=f}}if(e>>>0<(c[739]|0)>>>0)ta();c[e>>2]=t;c[t+24>>2]=d;c[t+12>>2]=t;c[t+8>>2]=t;return}while(0);e=d+8|0;f=c[e>>2]|0;s=c[739]|0;if(!(f>>>0>=s>>>0&d>>>0>=s>>>0))ta();c[f+12>>2]=t;c[e>>2]=t;c[t+8>>2]=f;c[t+12>>2]=d;c[t+24>>2]=0;return}function Ni(){}function Oi(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 (C=d,a-c>>>0|0)|0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>>>c|(b&(1<>c-32|0}function Qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<>>32-c;return a<>>0;return (C=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Ti(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Ui(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return ya(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Vi(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function Wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xi(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=Oi(j^a,i^b,j,i)|0;g=C;a=f^j;b=e^i;return Oi((aj(h,g,Oi(f^c,e^d,f,e)|0,C,0)|0)^a,C^b,a,b)|0}function Yi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=Oi(h^a,g^b,h,g)|0;b=C;aj(a,b,Oi(l^d,k^e,l,k)|0,C,j)|0;e=Oi(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;d=C;i=f;return (C=d,e)|0}function Zi(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=Wi(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return aj(a,b,c,d,0)|0}function $i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;aj(a,b,d,e,f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function aj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(aa(i|0)|0)-(aa(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<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if(g&h){i=(aa(h|0)|0)+33-(aa(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<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (C=o,p)|0}else{p=Vi(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Vi(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Si(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Oi(k,d,e,n)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Oi(e,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (C=o,p)|0}function bj(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 Qa[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function cj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ra[a&63](b|0,c|0,d|0)|0}function dj(a,b){a=a|0;b=b|0;return +Sa[a&3](b|0)}function ej(a,b){a=a|0;b=b|0;Ta[a&7](b|0)}function fj(a,b,c){a=a|0;b=b|0;c=c|0;Ua[a&7](b|0,c|0)}function gj(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 Va[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function hj(a,b){a=a|0;b=b|0;return Wa[a&15](b|0)|0}function ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Xa[a&15](b|0,c|0,d|0)}function jj(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;return Ya[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function kj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Za[a&63](b|0,c|0,d|0,e|0)|0}function lj(a,b,c){a=a|0;b=b|0;c=c|0;return _a[a&7](b|0,c|0)|0}function mj(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 $a[a&3](b|0,c|0,d|0,e|0,f|0)|0}function nj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ab[a&3](b|0,c|0,d|0,e|0)}function oj(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;ba(0);return 0}function pj(a,b,c){a=a|0;b=b|0;c=c|0;ba(1);return 0}function qj(a){a=a|0;ba(2);return 0.0}function rj(a){a=a|0;ba(3)}function sj(a,b){a=a|0;b=b|0;ba(4)}function tj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function uj(a){a=a|0;ba(6);return 0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function wj(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;ba(8);return 0}function xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function yj(a,b){a=a|0;b=b|0;ba(10);return 0}function zj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(11);return 0}function Aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(12)}\n\n// EMSCRIPTEN_END_FUNCS\nvar Qa=[oj,ed,We,oj];var Ra=[pj,Bi,Vh,Th,Ab,Bb,Cb,Db,Hc,Ic,Kc,$c,nd,Oe,af,od,pd,Ne,Pe,Lc,Mc,Nc,Oc,td,ud,vd,wd,yd,zd,Bd,Cd,Dd,Ed,Fd,Gd,Hd,Id,Jd,Kd,Ld,Md,Nd,Od,Pd,Qd,Rd,Sd,Td,Ud,Vd,Wd,Xd,ef,ff,gf,hf,jf,kf,lf,mf,Sh,Uh,pj,pj];var Sa=[qj,Yd,Zd,qj];var Ta=[rj,Yc,Ve,gg,hg,xi,yi,rj];var Ua=[sj,mb,nb,ob,Wb,Wc,Le,sj];var Va=[tj,dd,Ue,rd,Te,tj,tj,tj];var Wa=[uj,Rh,jd,kd,$e,_e,Yh,Kg,Hg,uj,uj,uj,uj,uj,uj,uj];var Xa=[vj,Ge,He,Ie,Je,Ae,Be,Ce,De,we,xe,ye,ze,gd,Ze,vj];var Ya=[wj,cd,Se,wj];var Za=[xj,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,xf,yf,zf,rf,sf,tf,uf,vf,wf,wb,xb,yb,zb,ld,ad,Ke,Re,qd,Zc,Qe,Me,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj,xj];var _a=[yj,Jc,nf,of,pf,qf,yj,yj];var $a=[zj,md,Xe,zj];var ab=[Aj,Og,Rg,Aj];return{_opj_stream_destroy:Fb,_opj_stream_set_read_function:Gb,_opj_read_tile_header:mc,_opj_set_warning_handler:cc,_opj_destroy_cstr_info:Cc,_opj_image_create:Yb,_opj_set_error_handler:dc,_opj_stream_set_user_data:Kb,_opj_end_decompress:wc,_bitshift64Lshr:Ti,_opj_stream_set_seek_function:Hb,_opj_decode:kc,_opj_set_decoded_resolution_factor:pc,_i64Add:Si,_opj_stream_create_default_file_stream:Fc,_opj_set_default_decoder_parameters:hc,_bitshift64Ashr:Pi,_opj_get_decoded_tile:oc,_memset:Qi,_opj_version:fc,_memcpy:Ui,_opj_destroy_cstr_index:Ec,_opj_stream_set_user_data_length:Lb,_opj_stream_set_skip_function:Jb,_opj_image_destroy:Zb,_opj_stream_create_file_stream:Gc,_opj_setup_encoder:sc,_opj_stream_default_create:Eb,_bitshift64Shl:Ri,_opj_stream_create:vb,_jp2_version:lb,_i64Subtract:Oi,_opj_get_cstr_index:Dc,_opj_encode:uc,_opj_read_header:jc,_opj_get_cstr_info:Bc,_opj_set_default_encoder_parameters:rc,_opj_set_decode_area:lc,_opj_stream_set_write_function:Ib,_opj_dump_codec:Ac,_opj_create_decompress:gc,_opj_decode_tile_data:nc,_free:Gi,_opj_image_tile_create:ac,_opj_set_MCT:xc,_opj_set_info_handler:bc,_opj_start_compress:tc,_opj_write_tile:yc,_opj_setup_decoder:ic,_malloc:Fi,_opj_end_compress:vc,_opj_destroy_codec:zc,_jp2_decode:kb,_opj_stream_create_buffer_stream:ec,_opj_create_compress:qc,runPostSets:Ni,stackAlloc:bb,stackSave:cb,stackRestore:db,establishStackSpace:eb,setThrew:fb,setTempRet0:ib,getTempRet0:jb,dynCall_iiiiiiii:bj,dynCall_iiii:cj,dynCall_di:dj,dynCall_vi:ej,dynCall_vii:fj,dynCall_iiiiiii:gj,dynCall_ii:hj,dynCall_viii:ij,dynCall_iiiiiiiiiiii:jj,dynCall_iiiii:kj,dynCall_iii:lj,dynCall_iiiiii:mj,dynCall_viiii:nj}})\n\n\n// EMSCRIPTEN_END_ASM\n(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _opj_stream_destroy=Module[\"_opj_stream_destroy\"]=asm[\"_opj_stream_destroy\"];var _opj_stream_set_read_function=Module[\"_opj_stream_set_read_function\"]=asm[\"_opj_stream_set_read_function\"];var _opj_read_tile_header=Module[\"_opj_read_tile_header\"]=asm[\"_opj_read_tile_header\"];var _opj_set_warning_handler=Module[\"_opj_set_warning_handler\"]=asm[\"_opj_set_warning_handler\"];var _opj_destroy_cstr_info=Module[\"_opj_destroy_cstr_info\"]=asm[\"_opj_destroy_cstr_info\"];var _opj_image_create=Module[\"_opj_image_create\"]=asm[\"_opj_image_create\"];var _opj_set_error_handler=Module[\"_opj_set_error_handler\"]=asm[\"_opj_set_error_handler\"];var _opj_image_tile_create=Module[\"_opj_image_tile_create\"]=asm[\"_opj_image_tile_create\"];var _opj_end_decompress=Module[\"_opj_end_decompress\"]=asm[\"_opj_end_decompress\"];var _bitshift64Lshr=Module[\"_bitshift64Lshr\"]=asm[\"_bitshift64Lshr\"];var _opj_stream_set_seek_function=Module[\"_opj_stream_set_seek_function\"]=asm[\"_opj_stream_set_seek_function\"];var _opj_decode=Module[\"_opj_decode\"]=asm[\"_opj_decode\"];var _opj_set_decoded_resolution_factor=Module[\"_opj_set_decoded_resolution_factor\"]=asm[\"_opj_set_decoded_resolution_factor\"];var _opj_stream_create_default_file_stream=Module[\"_opj_stream_create_default_file_stream\"]=asm[\"_opj_stream_create_default_file_stream\"];var _opj_encode=Module[\"_opj_encode\"]=asm[\"_opj_encode\"];var _bitshift64Ashr=Module[\"_bitshift64Ashr\"]=asm[\"_bitshift64Ashr\"];var _opj_get_decoded_tile=Module[\"_opj_get_decoded_tile\"]=asm[\"_opj_get_decoded_tile\"];var _memset=Module[\"_memset\"]=asm[\"_memset\"];var _opj_version=Module[\"_opj_version\"]=asm[\"_opj_version\"];var _memcpy=Module[\"_memcpy\"]=asm[\"_memcpy\"];var _opj_destroy_cstr_index=Module[\"_opj_destroy_cstr_index\"]=asm[\"_opj_destroy_cstr_index\"];var _opj_stream_set_user_data_length=Module[\"_opj_stream_set_user_data_length\"]=asm[\"_opj_stream_set_user_data_length\"];var _opj_stream_set_skip_function=Module[\"_opj_stream_set_skip_function\"]=asm[\"_opj_stream_set_skip_function\"];var _opj_image_destroy=Module[\"_opj_image_destroy\"]=asm[\"_opj_image_destroy\"];var _opj_stream_create_file_stream=Module[\"_opj_stream_create_file_stream\"]=asm[\"_opj_stream_create_file_stream\"];var _opj_setup_encoder=Module[\"_opj_setup_encoder\"]=asm[\"_opj_setup_encoder\"];var _opj_stream_default_create=Module[\"_opj_stream_default_create\"]=asm[\"_opj_stream_default_create\"];var _bitshift64Shl=Module[\"_bitshift64Shl\"]=asm[\"_bitshift64Shl\"];var _opj_stream_create=Module[\"_opj_stream_create\"]=asm[\"_opj_stream_create\"];var _jp2_version=Module[\"_jp2_version\"]=asm[\"_jp2_version\"];var _i64Subtract=Module[\"_i64Subtract\"]=asm[\"_i64Subtract\"];var _opj_get_cstr_index=Module[\"_opj_get_cstr_index\"]=asm[\"_opj_get_cstr_index\"];var _opj_set_default_decoder_parameters=Module[\"_opj_set_default_decoder_parameters\"]=asm[\"_opj_set_default_decoder_parameters\"];var _i64Add=Module[\"_i64Add\"]=asm[\"_i64Add\"];var _opj_get_cstr_info=Module[\"_opj_get_cstr_info\"]=asm[\"_opj_get_cstr_info\"];var _opj_set_default_encoder_parameters=Module[\"_opj_set_default_encoder_parameters\"]=asm[\"_opj_set_default_encoder_parameters\"];var _opj_set_decode_area=Module[\"_opj_set_decode_area\"]=asm[\"_opj_set_decode_area\"];var _opj_stream_set_write_function=Module[\"_opj_stream_set_write_function\"]=asm[\"_opj_stream_set_write_function\"];var _opj_dump_codec=Module[\"_opj_dump_codec\"]=asm[\"_opj_dump_codec\"];var _opj_read_header=Module[\"_opj_read_header\"]=asm[\"_opj_read_header\"];var _opj_create_decompress=Module[\"_opj_create_decompress\"]=asm[\"_opj_create_decompress\"];var _opj_decode_tile_data=Module[\"_opj_decode_tile_data\"]=asm[\"_opj_decode_tile_data\"];var _opj_set_info_handler=Module[\"_opj_set_info_handler\"]=asm[\"_opj_set_info_handler\"];var _opj_stream_set_user_data=Module[\"_opj_stream_set_user_data\"]=asm[\"_opj_stream_set_user_data\"];var _opj_set_MCT=Module[\"_opj_set_MCT\"]=asm[\"_opj_set_MCT\"];var _free=Module[\"_free\"]=asm[\"_free\"];var runPostSets=Module[\"runPostSets\"]=asm[\"runPostSets\"];var _opj_start_compress=Module[\"_opj_start_compress\"]=asm[\"_opj_start_compress\"];var _opj_write_tile=Module[\"_opj_write_tile\"]=asm[\"_opj_write_tile\"];var _opj_setup_decoder=Module[\"_opj_setup_decoder\"]=asm[\"_opj_setup_decoder\"];var _malloc=Module[\"_malloc\"]=asm[\"_malloc\"];var _opj_end_compress=Module[\"_opj_end_compress\"]=asm[\"_opj_end_compress\"];var _opj_destroy_codec=Module[\"_opj_destroy_codec\"]=asm[\"_opj_destroy_codec\"];var _jp2_decode=Module[\"_jp2_decode\"]=asm[\"_jp2_decode\"];var _opj_stream_create_buffer_stream=Module[\"_opj_stream_create_buffer_stream\"]=asm[\"_opj_stream_create_buffer_stream\"];var _opj_create_compress=Module[\"_opj_create_compress\"]=asm[\"_opj_create_compress\"];var dynCall_iiiiiiii=Module[\"dynCall_iiiiiiii\"]=asm[\"dynCall_iiiiiiii\"];var dynCall_iiii=Module[\"dynCall_iiii\"]=asm[\"dynCall_iiii\"];var dynCall_di=Module[\"dynCall_di\"]=asm[\"dynCall_di\"];var dynCall_vi=Module[\"dynCall_vi\"]=asm[\"dynCall_vi\"];var dynCall_vii=Module[\"dynCall_vii\"]=asm[\"dynCall_vii\"];var dynCall_iiiiiii=Module[\"dynCall_iiiiiii\"]=asm[\"dynCall_iiiiiii\"];var dynCall_ii=Module[\"dynCall_ii\"]=asm[\"dynCall_ii\"];var dynCall_viii=Module[\"dynCall_viii\"]=asm[\"dynCall_viii\"];var dynCall_iiiiiiiiiiii=Module[\"dynCall_iiiiiiiiiiii\"]=asm[\"dynCall_iiiiiiiiiiii\"];var dynCall_iiiii=Module[\"dynCall_iiiii\"]=asm[\"dynCall_iiiii\"];var dynCall_iii=Module[\"dynCall_iii\"]=asm[\"dynCall_iii\"];var dynCall_iiiiii=Module[\"dynCall_iiiiii\"]=asm[\"dynCall_iiiiii\"];var dynCall_viiii=Module[\"dynCall_viiii\"]=asm[\"dynCall_viiii\"];Runtime.stackAlloc=asm[\"stackAlloc\"];Runtime.stackSave=asm[\"stackSave\"];Runtime.stackRestore=asm[\"stackRestore\"];Runtime.establishStackSpace=asm[\"establishStackSpace\"];Runtime.setTempRet0=asm[\"setTempRet0\"];Runtime.getTempRet0=asm[\"getTempRet0\"];function ExitStatus(status){this.name=\"ExitStatus\";this.message=\"Program terminated with exit(\"+status+\")\";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module[\"calledRun\"])run();if(!Module[\"calledRun\"])dependenciesFulfilled=runCaller};Module[\"callMain\"]=Module.callMain=function callMain(args){assert(runDependencies==0,\"cannot call main when async dependencies remain! (listen on __ATMAIN__)\");assert(__ATPRERUN__.length==0,\"cannot call main when preRun functions remain to be called\");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module[\"thisProgram\"]),\"i8\",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();if(Module[\"_main\"]&&shouldRunNow)Module[\"callMain\"](args);postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}}Module[\"run\"]=Module.run=run;function exit(status,implicit){if(implicit&&Module[\"noExitRuntime\"]){return}if(Module[\"noExitRuntime\"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module[\"onExit\"])Module[\"onExit\"](status)}if(ENVIRONMENT_IS_NODE){process[\"stdout\"][\"once\"](\"drain\",(function(){process[\"exit\"](status)}));console.log(\" \");setTimeout((function(){process[\"exit\"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit===\"function\"){quit(status)}throw new ExitStatus(status)}Module[\"exit\"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=Module.abort=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}var shouldRunNow=true;if(Module[\"noInitialRun\"]){shouldRunNow=false}run()\n\n\n\n\n\n return Module;\n};\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = OpenJPEG;\n\n/***/ }),\n\n/***/ \"../node_modules/babel-loader/lib/index.js!../node_modules/eslint-loader/index.js?!./webWorker/index.worker.js\":\n/*!**********************************************************************************************************!*\\\n !*** ../node_modules/babel-loader/lib!../node_modules/eslint-loader??ref--4!./webWorker/index.worker.js ***!\n \\**********************************************************************************************************/\n/*! exports provided: registerTaskHandler, version, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _webWorker_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./webWorker.js */ \"./webWorker/webWorker.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"registerTaskHandler\", function() { return _webWorker_js__WEBPACK_IMPORTED_MODULE_0__[\"registerTaskHandler\"]; });\n\n/* harmony import */ var _decodeTask_decodeTask_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decodeTask/decodeTask.js */ \"./webWorker/decodeTask/decodeTask.js\");\n/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../version.js */ \"./version.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"version\", function() { return _version_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]; });\n\n/* harmony import */ var pako__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! pako */ \"../node_modules/pako/index.js\");\n/* harmony import */ var pako__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(pako__WEBPACK_IMPORTED_MODULE_3__);\n\n\n // TODO: Not sure if this is necessary, but we probably need it for deflate in dicomParser\n\n/* eslint-disable-next-line import/extensions */\n\n // register our task\n\nObject(_webWorker_js__WEBPACK_IMPORTED_MODULE_0__[\"registerTaskHandler\"])(_decodeTask_decodeTask_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\nvar cornerstoneWADOImageLoaderWebWorker = {\n registerTaskHandler: _webWorker_js__WEBPACK_IMPORTED_MODULE_0__[\"registerTaskHandler\"],\n version: _version_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (cornerstoneWADOImageLoaderWebWorker);\n\n/***/ }),\n\n/***/ \"../node_modules/pako/index.js\":\n/*!*************************************!*\\\n !*** ../node_modules/pako/index.js ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// Top level file is just a mixin of submodules & constants\n\n\nvar assign = __webpack_require__(/*! ./lib/utils/common */ \"../node_modules/pako/lib/utils/common.js\").assign;\n\nvar deflate = __webpack_require__(/*! ./lib/deflate */ \"../node_modules/pako/lib/deflate.js\");\nvar inflate = __webpack_require__(/*! ./lib/inflate */ \"../node_modules/pako/lib/inflate.js\");\nvar constants = __webpack_require__(/*! ./lib/zlib/constants */ \"../node_modules/pako/lib/zlib/constants.js\");\n\nvar pako = {};\n\nassign(pako, deflate, inflate, constants);\n\nmodule.exports = pako;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/deflate.js\":\n/*!*******************************************!*\\\n !*** ../node_modules/pako/lib/deflate.js ***!\n \\*******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n\nvar zlib_deflate = __webpack_require__(/*! ./zlib/deflate */ \"../node_modules/pako/lib/zlib/deflate.js\");\nvar utils = __webpack_require__(/*! ./utils/common */ \"../node_modules/pako/lib/utils/common.js\");\nvar strings = __webpack_require__(/*! ./utils/strings */ \"../node_modules/pako/lib/utils/strings.js\");\nvar msg = __webpack_require__(/*! ./zlib/messages */ \"../node_modules/pako/lib/zlib/messages.js\");\nvar ZStream = __webpack_require__(/*! ./zlib/zstream */ \"../node_modules/pako/lib/zlib/zstream.js\");\n\nvar toString = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nvar Z_NO_FLUSH = 0;\nvar Z_FINISH = 4;\n\nvar Z_OK = 0;\nvar Z_STREAM_END = 1;\nvar Z_SYNC_FLUSH = 2;\n\nvar Z_DEFAULT_COMPRESSION = -1;\n\nvar Z_DEFAULT_STRATEGY = 0;\n\nvar Z_DEFLATED = 8;\n\n/* ===========================================================================*/\n\n\n/**\n * class Deflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[deflate]],\n * [[deflateRaw]] and [[gzip]].\n **/\n\n/* internal\n * Deflate.chunks -> Array\n *\n * Chunks of output data, if [[Deflate#onData]] not overridden.\n **/\n\n/**\n * Deflate.result -> Uint8Array|Array\n *\n * Compressed result, generated by default [[Deflate#onData]]\n * and [[Deflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Deflate#push]] with `Z_FINISH` / `true` param) or if you\n * push a chunk with explicit flush (call [[Deflate#push]] with\n * `Z_SYNC_FLUSH` param).\n **/\n\n/**\n * Deflate.err -> Number\n *\n * Error code after deflate finished. 0 (Z_OK) on success.\n * You will not need it in real life, because deflate errors\n * are possible only on wrong options or bad `onData` / `onEnd`\n * custom handlers.\n **/\n\n/**\n * Deflate.msg -> String\n *\n * Error message, if [[Deflate.err]] != 0\n **/\n\n\n/**\n * new Deflate(options)\n * - options (Object): zlib deflate options.\n *\n * Creates new deflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `level`\n * - `windowBits`\n * - `memLevel`\n * - `strategy`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw deflate\n * - `gzip` (Boolean) - create gzip wrapper\n * - `to` (String) - if equal to 'string', then result will be \"binary string\"\n * (each char code [0..255])\n * - `header` (Object) - custom header for gzip\n * - `text` (Boolean) - true if compressed data believed to be text\n * - `time` (Number) - modification time, unix timestamp\n * - `os` (Number) - operation system code\n * - `extra` (Array) - array of bytes with extra data (max 65536)\n * - `name` (String) - file name (binary string)\n * - `comment` (String) - comment (binary string)\n * - `hcrc` (Boolean) - true if header crc should be added\n *\n * ##### Example:\n *\n * ```javascript\n * var pako = require('pako')\n * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9])\n * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * var deflate = new pako.Deflate({ level: 3});\n *\n * deflate.push(chunk1, false);\n * deflate.push(chunk2, true); // true -> last chunk\n *\n * if (deflate.err) { throw new Error(deflate.err); }\n *\n * console.log(deflate.result);\n * ```\n **/\nfunction Deflate(options) {\n if (!(this instanceof Deflate)) return new Deflate(options);\n\n this.options = utils.assign({\n level: Z_DEFAULT_COMPRESSION,\n method: Z_DEFLATED,\n chunkSize: 16384,\n windowBits: 15,\n memLevel: 8,\n strategy: Z_DEFAULT_STRATEGY,\n to: ''\n }, options || {});\n\n var opt = this.options;\n\n if (opt.raw && (opt.windowBits > 0)) {\n opt.windowBits = -opt.windowBits;\n }\n\n else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) {\n opt.windowBits += 16;\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new ZStream();\n this.strm.avail_out = 0;\n\n var status = zlib_deflate.deflateInit2(\n this.strm,\n opt.level,\n opt.method,\n opt.windowBits,\n opt.memLevel,\n opt.strategy\n );\n\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n\n if (opt.header) {\n zlib_deflate.deflateSetHeader(this.strm, opt.header);\n }\n\n if (opt.dictionary) {\n var dict;\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n // If we need to compress text, change encoding to utf8.\n dict = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n dict = new Uint8Array(opt.dictionary);\n } else {\n dict = opt.dictionary;\n }\n\n status = zlib_deflate.deflateSetDictionary(this.strm, dict);\n\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n\n this._dict_set = true;\n }\n}\n\n/**\n * Deflate#push(data[, mode]) -> Boolean\n * - data (Uint8Array|Array|ArrayBuffer|String): input data. Strings will be\n * converted to utf8 byte sequence.\n * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.\n * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.\n *\n * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with\n * new compressed chunks. Returns `true` on success. The last data block must have\n * mode Z_FINISH (or `true`). That will flush internal pending buffers and call\n * [[Deflate#onEnd]]. For interim explicit flushes (without ending the stream) you\n * can use mode Z_SYNC_FLUSH, keeping the compression context.\n *\n * On fail call [[Deflate#onEnd]] with error code and return false.\n *\n * We strongly recommend to use `Uint8Array` on input for best speed (output\n * array format is detected automatically). Also, don't skip last param and always\n * use the same type in your code (boolean or number). That will improve JS speed.\n *\n * For regular `Array`-s make sure all elements are [0..255].\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nDeflate.prototype.push = function (data, mode) {\n var strm = this.strm;\n var chunkSize = this.options.chunkSize;\n var status, _mode;\n\n if (this.ended) { return false; }\n\n _mode = (mode === ~~mode) ? mode : ((mode === true) ? Z_FINISH : Z_NO_FLUSH);\n\n // Convert data if needed\n if (typeof data === 'string') {\n // If we need to compress text, change encoding to utf8.\n strm.input = strings.string2buf(data);\n } else if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n do {\n if (strm.avail_out === 0) {\n strm.output = new utils.Buf8(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n status = zlib_deflate.deflate(strm, _mode); /* no bad return value */\n\n if (status !== Z_STREAM_END && status !== Z_OK) {\n this.onEnd(status);\n this.ended = true;\n return false;\n }\n if (strm.avail_out === 0 || (strm.avail_in === 0 && (_mode === Z_FINISH || _mode === Z_SYNC_FLUSH))) {\n if (this.options.to === 'string') {\n this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output, strm.next_out)));\n } else {\n this.onData(utils.shrinkBuf(strm.output, strm.next_out));\n }\n }\n } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== Z_STREAM_END);\n\n // Finalize on the last chunk.\n if (_mode === Z_FINISH) {\n status = zlib_deflate.deflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return status === Z_OK;\n }\n\n // callback interim results if Z_SYNC_FLUSH.\n if (_mode === Z_SYNC_FLUSH) {\n this.onEnd(Z_OK);\n strm.avail_out = 0;\n return true;\n }\n\n return true;\n};\n\n\n/**\n * Deflate#onData(chunk) -> Void\n * - chunk (Uint8Array|Array|String): output data. Type of array depends\n * on js engine support. When string output requested, each chunk\n * will be string.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nDeflate.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Deflate#onEnd(status) -> Void\n * - status (Number): deflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called once after you tell deflate that the input stream is\n * complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH)\n * or if an error happened. By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nDeflate.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK) {\n if (this.options.to === 'string') {\n this.result = this.chunks.join('');\n } else {\n this.result = utils.flattenChunks(this.chunks);\n }\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * deflate(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * Compress `data` with deflate algorithm and `options`.\n *\n * Supported options are:\n *\n * - level\n * - windowBits\n * - memLevel\n * - strategy\n * - dictionary\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n * - `to` (String) - if equal to 'string', then result will be \"binary string\"\n * (each char code [0..255])\n *\n * ##### Example:\n *\n * ```javascript\n * var pako = require('pako')\n * , data = Uint8Array([1,2,3,4,5,6,7,8,9]);\n *\n * console.log(pako.deflate(data));\n * ```\n **/\nfunction deflate(input, options) {\n var deflator = new Deflate(options);\n\n deflator.push(input, true);\n\n // That will never happens, if you don't cheat with options :)\n if (deflator.err) { throw deflator.msg || msg[deflator.err]; }\n\n return deflator.result;\n}\n\n\n/**\n * deflateRaw(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction deflateRaw(input, options) {\n options = options || {};\n options.raw = true;\n return deflate(input, options);\n}\n\n\n/**\n * gzip(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but create gzip wrapper instead of\n * deflate one.\n **/\nfunction gzip(input, options) {\n options = options || {};\n options.gzip = true;\n return deflate(input, options);\n}\n\n\nexports.Deflate = Deflate;\nexports.deflate = deflate;\nexports.deflateRaw = deflateRaw;\nexports.gzip = gzip;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/inflate.js\":\n/*!*******************************************!*\\\n !*** ../node_modules/pako/lib/inflate.js ***!\n \\*******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n\nvar zlib_inflate = __webpack_require__(/*! ./zlib/inflate */ \"../node_modules/pako/lib/zlib/inflate.js\");\nvar utils = __webpack_require__(/*! ./utils/common */ \"../node_modules/pako/lib/utils/common.js\");\nvar strings = __webpack_require__(/*! ./utils/strings */ \"../node_modules/pako/lib/utils/strings.js\");\nvar c = __webpack_require__(/*! ./zlib/constants */ \"../node_modules/pako/lib/zlib/constants.js\");\nvar msg = __webpack_require__(/*! ./zlib/messages */ \"../node_modules/pako/lib/zlib/messages.js\");\nvar ZStream = __webpack_require__(/*! ./zlib/zstream */ \"../node_modules/pako/lib/zlib/zstream.js\");\nvar GZheader = __webpack_require__(/*! ./zlib/gzheader */ \"../node_modules/pako/lib/zlib/gzheader.js\");\n\nvar toString = Object.prototype.toString;\n\n/**\n * class Inflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[inflate]]\n * and [[inflateRaw]].\n **/\n\n/* internal\n * inflate.chunks -> Array\n *\n * Chunks of output data, if [[Inflate#onData]] not overridden.\n **/\n\n/**\n * Inflate.result -> Uint8Array|Array|String\n *\n * Uncompressed result, generated by default [[Inflate#onData]]\n * and [[Inflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you\n * push a chunk with explicit flush (call [[Inflate#push]] with\n * `Z_SYNC_FLUSH` param).\n **/\n\n/**\n * Inflate.err -> Number\n *\n * Error code after inflate finished. 0 (Z_OK) on success.\n * Should be checked if broken data possible.\n **/\n\n/**\n * Inflate.msg -> String\n *\n * Error message, if [[Inflate.err]] != 0\n **/\n\n\n/**\n * new Inflate(options)\n * - options (Object): zlib inflate options.\n *\n * Creates new inflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `windowBits`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw inflate\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n * By default, when no options set, autodetect deflate/gzip data format via\n * wrapper header.\n *\n * ##### Example:\n *\n * ```javascript\n * var pako = require('pako')\n * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9])\n * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * var inflate = new pako.Inflate({ level: 3});\n *\n * inflate.push(chunk1, false);\n * inflate.push(chunk2, true); // true -> last chunk\n *\n * if (inflate.err) { throw new Error(inflate.err); }\n *\n * console.log(inflate.result);\n * ```\n **/\nfunction Inflate(options) {\n if (!(this instanceof Inflate)) return new Inflate(options);\n\n this.options = utils.assign({\n chunkSize: 16384,\n windowBits: 0,\n to: ''\n }, options || {});\n\n var opt = this.options;\n\n // Force window size for `raw` data, if not set directly,\n // because we have no header for autodetect.\n if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {\n opt.windowBits = -opt.windowBits;\n if (opt.windowBits === 0) { opt.windowBits = -15; }\n }\n\n // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate\n if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&\n !(options && options.windowBits)) {\n opt.windowBits += 32;\n }\n\n // Gzip header has no info about windows size, we can do autodetect only\n // for deflate. So, if window size not set, force it to max when gzip possible\n if ((opt.windowBits > 15) && (opt.windowBits < 48)) {\n // bit 3 (16) -> gzipped data\n // bit 4 (32) -> autodetect gzip/deflate\n if ((opt.windowBits & 15) === 0) {\n opt.windowBits |= 15;\n }\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new ZStream();\n this.strm.avail_out = 0;\n\n var status = zlib_inflate.inflateInit2(\n this.strm,\n opt.windowBits\n );\n\n if (status !== c.Z_OK) {\n throw new Error(msg[status]);\n }\n\n this.header = new GZheader();\n\n zlib_inflate.inflateGetHeader(this.strm, this.header);\n\n // Setup dictionary\n if (opt.dictionary) {\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n opt.dictionary = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n opt.dictionary = new Uint8Array(opt.dictionary);\n }\n if (opt.raw) { //In raw mode we need to set the dictionary early\n status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary);\n if (status !== c.Z_OK) {\n throw new Error(msg[status]);\n }\n }\n }\n}\n\n/**\n * Inflate#push(data[, mode]) -> Boolean\n * - data (Uint8Array|Array|ArrayBuffer|String): input data\n * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.\n * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.\n *\n * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with\n * new output chunks. Returns `true` on success. The last data block must have\n * mode Z_FINISH (or `true`). That will flush internal pending buffers and call\n * [[Inflate#onEnd]]. For interim explicit flushes (without ending the stream) you\n * can use mode Z_SYNC_FLUSH, keeping the decompression context.\n *\n * On fail call [[Inflate#onEnd]] with error code and return false.\n *\n * We strongly recommend to use `Uint8Array` on input for best speed (output\n * format is detected automatically). Also, don't skip last param and always\n * use the same type in your code (boolean or number). That will improve JS speed.\n *\n * For regular `Array`-s make sure all elements are [0..255].\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nInflate.prototype.push = function (data, mode) {\n var strm = this.strm;\n var chunkSize = this.options.chunkSize;\n var dictionary = this.options.dictionary;\n var status, _mode;\n var next_out_utf8, tail, utf8str;\n\n // Flag to properly process Z_BUF_ERROR on testing inflate call\n // when we check that all output data was flushed.\n var allowBufError = false;\n\n if (this.ended) { return false; }\n _mode = (mode === ~~mode) ? mode : ((mode === true) ? c.Z_FINISH : c.Z_NO_FLUSH);\n\n // Convert data if needed\n if (typeof data === 'string') {\n // Only binary strings can be decompressed on practice\n strm.input = strings.binstring2buf(data);\n } else if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n do {\n if (strm.avail_out === 0) {\n strm.output = new utils.Buf8(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); /* no bad return value */\n\n if (status === c.Z_NEED_DICT && dictionary) {\n status = zlib_inflate.inflateSetDictionary(this.strm, dictionary);\n }\n\n if (status === c.Z_BUF_ERROR && allowBufError === true) {\n status = c.Z_OK;\n allowBufError = false;\n }\n\n if (status !== c.Z_STREAM_END && status !== c.Z_OK) {\n this.onEnd(status);\n this.ended = true;\n return false;\n }\n\n if (strm.next_out) {\n if (strm.avail_out === 0 || status === c.Z_STREAM_END || (strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH))) {\n\n if (this.options.to === 'string') {\n\n next_out_utf8 = strings.utf8border(strm.output, strm.next_out);\n\n tail = strm.next_out - next_out_utf8;\n utf8str = strings.buf2string(strm.output, next_out_utf8);\n\n // move tail\n strm.next_out = tail;\n strm.avail_out = chunkSize - tail;\n if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); }\n\n this.onData(utf8str);\n\n } else {\n this.onData(utils.shrinkBuf(strm.output, strm.next_out));\n }\n }\n }\n\n // When no more input data, we should check that internal inflate buffers\n // are flushed. The only way to do it when avail_out = 0 - run one more\n // inflate pass. But if output data not exists, inflate return Z_BUF_ERROR.\n // Here we set flag to process this error properly.\n //\n // NOTE. Deflate does not return error in this case and does not needs such\n // logic.\n if (strm.avail_in === 0 && strm.avail_out === 0) {\n allowBufError = true;\n }\n\n } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END);\n\n if (status === c.Z_STREAM_END) {\n _mode = c.Z_FINISH;\n }\n\n // Finalize on the last chunk.\n if (_mode === c.Z_FINISH) {\n status = zlib_inflate.inflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return status === c.Z_OK;\n }\n\n // callback interim results if Z_SYNC_FLUSH.\n if (_mode === c.Z_SYNC_FLUSH) {\n this.onEnd(c.Z_OK);\n strm.avail_out = 0;\n return true;\n }\n\n return true;\n};\n\n\n/**\n * Inflate#onData(chunk) -> Void\n * - chunk (Uint8Array|Array|String): output data. Type of array depends\n * on js engine support. When string output requested, each chunk\n * will be string.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nInflate.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Inflate#onEnd(status) -> Void\n * - status (Number): inflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called either after you tell inflate that the input stream is\n * complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH)\n * or if an error happened. By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nInflate.prototype.onEnd = function (status) {\n // On success - join\n if (status === c.Z_OK) {\n if (this.options.to === 'string') {\n // Glue & convert here, until we teach pako to send\n // utf8 aligned strings to onData\n this.result = this.chunks.join('');\n } else {\n this.result = utils.flattenChunks(this.chunks);\n }\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * inflate(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Decompress `data` with inflate/ungzip and `options`. Autodetect\n * format via wrapper header by default. That's why we don't provide\n * separate `ungzip` method.\n *\n * Supported options are:\n *\n * - windowBits\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n *\n * ##### Example:\n *\n * ```javascript\n * var pako = require('pako')\n * , input = pako.deflate([1,2,3,4,5,6,7,8,9])\n * , output;\n *\n * try {\n * output = pako.inflate(input);\n * } catch (err)\n * console.log(err);\n * }\n * ```\n **/\nfunction inflate(input, options) {\n var inflator = new Inflate(options);\n\n inflator.push(input, true);\n\n // That will never happens, if you don't cheat with options :)\n if (inflator.err) { throw inflator.msg || msg[inflator.err]; }\n\n return inflator.result;\n}\n\n\n/**\n * inflateRaw(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * The same as [[inflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction inflateRaw(input, options) {\n options = options || {};\n options.raw = true;\n return inflate(input, options);\n}\n\n\n/**\n * ungzip(data[, options]) -> Uint8Array|Array|String\n * - data (Uint8Array|Array|String): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Just shortcut to [[inflate]], because it autodetects format\n * by header.content. Done for convenience.\n **/\n\n\nexports.Inflate = Inflate;\nexports.inflate = inflate;\nexports.inflateRaw = inflateRaw;\nexports.ungzip = inflate;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/utils/common.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/utils/common.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n\nvar TYPED_OK = (typeof Uint8Array !== 'undefined') &&\n (typeof Uint16Array !== 'undefined') &&\n (typeof Int32Array !== 'undefined');\n\nfunction _has(obj, key) {\n return Object.prototype.hasOwnProperty.call(obj, key);\n}\n\nexports.assign = function (obj /*from1, from2, from3, ...*/) {\n var sources = Array.prototype.slice.call(arguments, 1);\n while (sources.length) {\n var source = sources.shift();\n if (!source) { continue; }\n\n if (typeof source !== 'object') {\n throw new TypeError(source + 'must be non-object');\n }\n\n for (var p in source) {\n if (_has(source, p)) {\n obj[p] = source[p];\n }\n }\n }\n\n return obj;\n};\n\n\n// reduce buffer size, avoiding mem copy\nexports.shrinkBuf = function (buf, size) {\n if (buf.length === size) { return buf; }\n if (buf.subarray) { return buf.subarray(0, size); }\n buf.length = size;\n return buf;\n};\n\n\nvar fnTyped = {\n arraySet: function (dest, src, src_offs, len, dest_offs) {\n if (src.subarray && dest.subarray) {\n dest.set(src.subarray(src_offs, src_offs + len), dest_offs);\n return;\n }\n // Fallback to ordinary array\n for (var i = 0; i < len; i++) {\n dest[dest_offs + i] = src[src_offs + i];\n }\n },\n // Join array of chunks to single array.\n flattenChunks: function (chunks) {\n var i, l, len, pos, chunk, result;\n\n // calculate data length\n len = 0;\n for (i = 0, l = chunks.length; i < l; i++) {\n len += chunks[i].length;\n }\n\n // join chunks\n result = new Uint8Array(len);\n pos = 0;\n for (i = 0, l = chunks.length; i < l; i++) {\n chunk = chunks[i];\n result.set(chunk, pos);\n pos += chunk.length;\n }\n\n return result;\n }\n};\n\nvar fnUntyped = {\n arraySet: function (dest, src, src_offs, len, dest_offs) {\n for (var i = 0; i < len; i++) {\n dest[dest_offs + i] = src[src_offs + i];\n }\n },\n // Join array of chunks to single array.\n flattenChunks: function (chunks) {\n return [].concat.apply([], chunks);\n }\n};\n\n\n// Enable/Disable typed arrays use, for testing\n//\nexports.setTyped = function (on) {\n if (on) {\n exports.Buf8 = Uint8Array;\n exports.Buf16 = Uint16Array;\n exports.Buf32 = Int32Array;\n exports.assign(exports, fnTyped);\n } else {\n exports.Buf8 = Array;\n exports.Buf16 = Array;\n exports.Buf32 = Array;\n exports.assign(exports, fnUntyped);\n }\n};\n\nexports.setTyped(TYPED_OK);\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/utils/strings.js\":\n/*!*************************************************!*\\\n !*** ../node_modules/pako/lib/utils/strings.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// String encode/decode helpers\n\n\n\nvar utils = __webpack_require__(/*! ./common */ \"../node_modules/pako/lib/utils/common.js\");\n\n\n// Quick check if we can use fast array to bin string conversion\n//\n// - apply(Array) can fail on Android 2.2\n// - apply(Uint8Array) can fail on iOS 5.1 Safari\n//\nvar STR_APPLY_OK = true;\nvar STR_APPLY_UIA_OK = true;\n\ntry { String.fromCharCode.apply(null, [ 0 ]); } catch (__) { STR_APPLY_OK = false; }\ntry { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }\n\n\n// Table with utf8 lengths (calculated by first byte of sequence)\n// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,\n// because max possible codepoint is 0x10ffff\nvar _utf8len = new utils.Buf8(256);\nfor (var q = 0; q < 256; q++) {\n _utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);\n}\n_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start\n\n\n// convert string to array (typed, when possible)\nexports.string2buf = function (str) {\n var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;\n\n // count binary size\n for (m_pos = 0; m_pos < str_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;\n }\n\n // allocate buffer\n buf = new utils.Buf8(buf_len);\n\n // convert\n for (i = 0, m_pos = 0; i < buf_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n if (c < 0x80) {\n /* one byte */\n buf[i++] = c;\n } else if (c < 0x800) {\n /* two bytes */\n buf[i++] = 0xC0 | (c >>> 6);\n buf[i++] = 0x80 | (c & 0x3f);\n } else if (c < 0x10000) {\n /* three bytes */\n buf[i++] = 0xE0 | (c >>> 12);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n } else {\n /* four bytes */\n buf[i++] = 0xf0 | (c >>> 18);\n buf[i++] = 0x80 | (c >>> 12 & 0x3f);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n }\n }\n\n return buf;\n};\n\n// Helper (used in 2 places)\nfunction buf2binstring(buf, len) {\n // On Chrome, the arguments in a function call that are allowed is `65534`.\n // If the length of the buffer is smaller than that, we can use this optimization,\n // otherwise we will take a slower path.\n if (len < 65534) {\n if ((buf.subarray && STR_APPLY_UIA_OK) || (!buf.subarray && STR_APPLY_OK)) {\n return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len));\n }\n }\n\n var result = '';\n for (var i = 0; i < len; i++) {\n result += String.fromCharCode(buf[i]);\n }\n return result;\n}\n\n\n// Convert byte array to binary string\nexports.buf2binstring = function (buf) {\n return buf2binstring(buf, buf.length);\n};\n\n\n// Convert binary string (typed, when possible)\nexports.binstring2buf = function (str) {\n var buf = new utils.Buf8(str.length);\n for (var i = 0, len = buf.length; i < len; i++) {\n buf[i] = str.charCodeAt(i);\n }\n return buf;\n};\n\n\n// convert array to string\nexports.buf2string = function (buf, max) {\n var i, out, c, c_len;\n var len = max || buf.length;\n\n // Reserve max possible length (2 words per char)\n // NB: by unknown reasons, Array is significantly faster for\n // String.fromCharCode.apply than Uint16Array.\n var utf16buf = new Array(len * 2);\n\n for (out = 0, i = 0; i < len;) {\n c = buf[i++];\n // quick process ascii\n if (c < 0x80) { utf16buf[out++] = c; continue; }\n\n c_len = _utf8len[c];\n // skip 5 & 6 byte codes\n if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }\n\n // apply mask on first byte\n c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;\n // join the rest\n while (c_len > 1 && i < len) {\n c = (c << 6) | (buf[i++] & 0x3f);\n c_len--;\n }\n\n // terminated by end of string?\n if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }\n\n if (c < 0x10000) {\n utf16buf[out++] = c;\n } else {\n c -= 0x10000;\n utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);\n utf16buf[out++] = 0xdc00 | (c & 0x3ff);\n }\n }\n\n return buf2binstring(utf16buf, out);\n};\n\n\n// Calculate max possible position in utf8 buffer,\n// that will not break sequence. If that's not possible\n// - (very small limits) return max size as is.\n//\n// buf[] - utf8 bytes array\n// max - length limit (mandatory);\nexports.utf8border = function (buf, max) {\n var pos;\n\n max = max || buf.length;\n if (max > buf.length) { max = buf.length; }\n\n // go back from last position, until start of sequence found\n pos = max - 1;\n while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }\n\n // Very small and broken sequence,\n // return max, because we should return something anyway.\n if (pos < 0) { return max; }\n\n // If we came to start of buffer - that means buffer is too small,\n // return max too.\n if (pos === 0) { return max; }\n\n return (pos + _utf8len[buf[pos]] > max) ? pos : max;\n};\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/adler32.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/adler32.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Note: adler32 takes 12% for level 0 and 2% for level 6.\n// It isn't worth it to make additional optimizations as in original.\n// Small size is preferable.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction adler32(adler, buf, len, pos) {\n var s1 = (adler & 0xffff) |0,\n s2 = ((adler >>> 16) & 0xffff) |0,\n n = 0;\n\n while (len !== 0) {\n // Set limit ~ twice less than 5552, to keep\n // s2 in 31-bits, because we force signed ints.\n // in other case %= will fail.\n n = len > 2000 ? 2000 : len;\n len -= n;\n\n do {\n s1 = (s1 + buf[pos++]) |0;\n s2 = (s2 + s1) |0;\n } while (--n);\n\n s1 %= 65521;\n s2 %= 65521;\n }\n\n return (s1 | (s2 << 16)) |0;\n}\n\n\nmodule.exports = adler32;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/constants.js\":\n/*!**************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/constants.js ***!\n \\**************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n\n /* Allowed flush values; see deflate() and inflate() below for details */\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n\n /* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n //Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n //Z_VERSION_ERROR: -6,\n\n /* compression levels */\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n\n\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n\n /* Possible values of the data_type field (though see inflate()) */\n Z_BINARY: 0,\n Z_TEXT: 1,\n //Z_ASCII: 1, // = Z_TEXT (deprecated)\n Z_UNKNOWN: 2,\n\n /* The deflate compression method */\n Z_DEFLATED: 8\n //Z_NULL: null // Use -1 or null inline, depending on var type\n};\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/crc32.js\":\n/*!**********************************************!*\\\n !*** ../node_modules/pako/lib/zlib/crc32.js ***!\n \\**********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Note: we can't get significant speed boost here.\n// So write code to minimize size - no pregenerated tables\n// and array tools dependencies.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// Use ordinary array, since untyped makes no boost here\nfunction makeTable() {\n var c, table = [];\n\n for (var n = 0; n < 256; n++) {\n c = n;\n for (var k = 0; k < 8; k++) {\n c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));\n }\n table[n] = c;\n }\n\n return table;\n}\n\n// Create table on load. Just 255 signed longs. Not a problem.\nvar crcTable = makeTable();\n\n\nfunction crc32(crc, buf, len, pos) {\n var t = crcTable,\n end = pos + len;\n\n crc ^= -1;\n\n for (var i = pos; i < end; i++) {\n crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF];\n }\n\n return (crc ^ (-1)); // >>> 0;\n}\n\n\nmodule.exports = crc32;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/deflate.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/deflate.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar utils = __webpack_require__(/*! ../utils/common */ \"../node_modules/pako/lib/utils/common.js\");\nvar trees = __webpack_require__(/*! ./trees */ \"../node_modules/pako/lib/zlib/trees.js\");\nvar adler32 = __webpack_require__(/*! ./adler32 */ \"../node_modules/pako/lib/zlib/adler32.js\");\nvar crc32 = __webpack_require__(/*! ./crc32 */ \"../node_modules/pako/lib/zlib/crc32.js\");\nvar msg = __webpack_require__(/*! ./messages */ \"../node_modules/pako/lib/zlib/messages.js\");\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n/* Allowed flush values; see deflate() and inflate() below for details */\nvar Z_NO_FLUSH = 0;\nvar Z_PARTIAL_FLUSH = 1;\n//var Z_SYNC_FLUSH = 2;\nvar Z_FULL_FLUSH = 3;\nvar Z_FINISH = 4;\nvar Z_BLOCK = 5;\n//var Z_TREES = 6;\n\n\n/* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\nvar Z_OK = 0;\nvar Z_STREAM_END = 1;\n//var Z_NEED_DICT = 2;\n//var Z_ERRNO = -1;\nvar Z_STREAM_ERROR = -2;\nvar Z_DATA_ERROR = -3;\n//var Z_MEM_ERROR = -4;\nvar Z_BUF_ERROR = -5;\n//var Z_VERSION_ERROR = -6;\n\n\n/* compression levels */\n//var Z_NO_COMPRESSION = 0;\n//var Z_BEST_SPEED = 1;\n//var Z_BEST_COMPRESSION = 9;\nvar Z_DEFAULT_COMPRESSION = -1;\n\n\nvar Z_FILTERED = 1;\nvar Z_HUFFMAN_ONLY = 2;\nvar Z_RLE = 3;\nvar Z_FIXED = 4;\nvar Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\n//var Z_BINARY = 0;\n//var Z_TEXT = 1;\n//var Z_ASCII = 1; // = Z_TEXT\nvar Z_UNKNOWN = 2;\n\n\n/* The deflate compression method */\nvar Z_DEFLATED = 8;\n\n/*============================================================================*/\n\n\nvar MAX_MEM_LEVEL = 9;\n/* Maximum value for memLevel in deflateInit2 */\nvar MAX_WBITS = 15;\n/* 32K LZ77 window */\nvar DEF_MEM_LEVEL = 8;\n\n\nvar LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\nvar LITERALS = 256;\n/* number of literal bytes 0..255 */\nvar L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\nvar D_CODES = 30;\n/* number of distance codes */\nvar BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\nvar HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\nvar MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nvar MIN_MATCH = 3;\nvar MAX_MATCH = 258;\nvar MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1);\n\nvar PRESET_DICT = 0x20;\n\nvar INIT_STATE = 42;\nvar EXTRA_STATE = 69;\nvar NAME_STATE = 73;\nvar COMMENT_STATE = 91;\nvar HCRC_STATE = 103;\nvar BUSY_STATE = 113;\nvar FINISH_STATE = 666;\n\nvar BS_NEED_MORE = 1; /* block not completed, need more input or more output */\nvar BS_BLOCK_DONE = 2; /* block flush performed */\nvar BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */\nvar BS_FINISH_DONE = 4; /* finish done, accept no more input or output */\n\nvar OS_CODE = 0x03; // Unix :) . Don't detect, use this default.\n\nfunction err(strm, errorCode) {\n strm.msg = msg[errorCode];\n return errorCode;\n}\n\nfunction rank(f) {\n return ((f) << 1) - ((f) > 4 ? 9 : 0);\n}\n\nfunction zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n\n/* =========================================================================\n * Flush as much pending output as possible. All deflate() output goes\n * through this function so some applications may wish to modify it\n * to avoid allocating a large strm->output buffer and copying into it.\n * (See also read_buf()).\n */\nfunction flush_pending(strm) {\n var s = strm.state;\n\n //_tr_flush_bits(s);\n var len = s.pending;\n if (len > strm.avail_out) {\n len = strm.avail_out;\n }\n if (len === 0) { return; }\n\n utils.arraySet(strm.output, s.pending_buf, s.pending_out, len, strm.next_out);\n strm.next_out += len;\n s.pending_out += len;\n strm.total_out += len;\n strm.avail_out -= len;\n s.pending -= len;\n if (s.pending === 0) {\n s.pending_out = 0;\n }\n}\n\n\nfunction flush_block_only(s, last) {\n trees._tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last);\n s.block_start = s.strstart;\n flush_pending(s.strm);\n}\n\n\nfunction put_byte(s, b) {\n s.pending_buf[s.pending++] = b;\n}\n\n\n/* =========================================================================\n * Put a short in the pending buffer. The 16-bit value is put in MSB order.\n * IN assertion: the stream state is correct and there is enough room in\n * pending_buf.\n */\nfunction putShortMSB(s, b) {\n// put_byte(s, (Byte)(b >> 8));\n// put_byte(s, (Byte)(b & 0xff));\n s.pending_buf[s.pending++] = (b >>> 8) & 0xff;\n s.pending_buf[s.pending++] = b & 0xff;\n}\n\n\n/* ===========================================================================\n * Read a new buffer from the current input stream, update the adler32\n * and total number of bytes read. All deflate() input goes through\n * this function so some applications may wish to modify it to avoid\n * allocating a large strm->input buffer and copying from it.\n * (See also flush_pending()).\n */\nfunction read_buf(strm, buf, start, size) {\n var len = strm.avail_in;\n\n if (len > size) { len = size; }\n if (len === 0) { return 0; }\n\n strm.avail_in -= len;\n\n // zmemcpy(buf, strm->next_in, len);\n utils.arraySet(buf, strm.input, strm.next_in, len, start);\n if (strm.state.wrap === 1) {\n strm.adler = adler32(strm.adler, buf, len, start);\n }\n\n else if (strm.state.wrap === 2) {\n strm.adler = crc32(strm.adler, buf, len, start);\n }\n\n strm.next_in += len;\n strm.total_in += len;\n\n return len;\n}\n\n\n/* ===========================================================================\n * Set match_start to the longest match starting at the given string and\n * return its length. Matches shorter or equal to prev_length are discarded,\n * in which case the result is equal to prev_length and match_start is\n * garbage.\n * IN assertions: cur_match is the head of the hash chain for the current\n * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1\n * OUT assertion: the match length is not greater than s->lookahead.\n */\nfunction longest_match(s, cur_match) {\n var chain_length = s.max_chain_length; /* max hash chain length */\n var scan = s.strstart; /* current string */\n var match; /* matched string */\n var len; /* length of current match */\n var best_len = s.prev_length; /* best match length so far */\n var nice_match = s.nice_match; /* stop if match long enough */\n var limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ?\n s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/;\n\n var _win = s.window; // shortcut\n\n var wmask = s.w_mask;\n var prev = s.prev;\n\n /* Stop when cur_match becomes <= limit. To simplify the code,\n * we prevent matches with the string of window index 0.\n */\n\n var strend = s.strstart + MAX_MATCH;\n var scan_end1 = _win[scan + best_len - 1];\n var scan_end = _win[scan + best_len];\n\n /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.\n * It is easy to get rid of this optimization if necessary.\n */\n // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, \"Code too clever\");\n\n /* Do not waste too much time if we already have a good match: */\n if (s.prev_length >= s.good_match) {\n chain_length >>= 2;\n }\n /* Do not look for matches beyond the end of the input. This is necessary\n * to make deflate deterministic.\n */\n if (nice_match > s.lookahead) { nice_match = s.lookahead; }\n\n // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, \"need lookahead\");\n\n do {\n // Assert(cur_match < s->strstart, \"no future\");\n match = cur_match;\n\n /* Skip to next match if the match length cannot increase\n * or if the match length is less than 2. Note that the checks below\n * for insufficient lookahead only occur occasionally for performance\n * reasons. Therefore uninitialized memory will be accessed, and\n * conditional jumps will be made that depend on those values.\n * However the length of the match is limited to the lookahead, so\n * the output of deflate is not affected by the uninitialized values.\n */\n\n if (_win[match + best_len] !== scan_end ||\n _win[match + best_len - 1] !== scan_end1 ||\n _win[match] !== _win[scan] ||\n _win[++match] !== _win[scan + 1]) {\n continue;\n }\n\n /* The check at best_len-1 can be removed because it will be made\n * again later. (This heuristic is not always a win.)\n * It is not necessary to compare scan[2] and match[2] since they\n * are always equal when the other bytes match, given that\n * the hash keys are equal and that HASH_BITS >= 8.\n */\n scan += 2;\n match++;\n // Assert(*scan == *match, \"match[2]?\");\n\n /* We check for insufficient lookahead only every 8th comparison;\n * the 256th check will be made at strstart+258.\n */\n do {\n /*jshint noempty:false*/\n } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n scan < strend);\n\n // Assert(scan <= s->window+(unsigned)(s->window_size-1), \"wild scan\");\n\n len = MAX_MATCH - (strend - scan);\n scan = strend - MAX_MATCH;\n\n if (len > best_len) {\n s.match_start = cur_match;\n best_len = len;\n if (len >= nice_match) {\n break;\n }\n scan_end1 = _win[scan + best_len - 1];\n scan_end = _win[scan + best_len];\n }\n } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0);\n\n if (best_len <= s.lookahead) {\n return best_len;\n }\n return s.lookahead;\n}\n\n\n/* ===========================================================================\n * Fill the window when the lookahead becomes insufficient.\n * Updates strstart and lookahead.\n *\n * IN assertion: lookahead < MIN_LOOKAHEAD\n * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD\n * At least one byte has been read, or avail_in == 0; reads are\n * performed for at least two bytes (required for the zip translate_eol\n * option -- not supported here).\n */\nfunction fill_window(s) {\n var _w_size = s.w_size;\n var p, n, m, more, str;\n\n //Assert(s->lookahead < MIN_LOOKAHEAD, \"already enough lookahead\");\n\n do {\n more = s.window_size - s.lookahead - s.strstart;\n\n // JS ints have 32 bit, block below not needed\n /* Deal with !@#$% 64K limit: */\n //if (sizeof(int) <= 2) {\n // if (more == 0 && s->strstart == 0 && s->lookahead == 0) {\n // more = wsize;\n //\n // } else if (more == (unsigned)(-1)) {\n // /* Very unlikely, but possible on 16 bit machine if\n // * strstart == 0 && lookahead == 1 (input done a byte at time)\n // */\n // more--;\n // }\n //}\n\n\n /* If the window is almost full and there is insufficient lookahead,\n * move the upper half to the lower one to make room in the upper half.\n */\n if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {\n\n utils.arraySet(s.window, s.window, _w_size, _w_size, 0);\n s.match_start -= _w_size;\n s.strstart -= _w_size;\n /* we now have strstart >= MAX_DIST */\n s.block_start -= _w_size;\n\n /* Slide the hash table (could be avoided with 32 bit values\n at the expense of memory usage). We slide even when level == 0\n to keep the hash table consistent if we switch back to level > 0\n later. (Using level 0 permanently is not an optimal usage of\n zlib, so we don't care about this pathological case.)\n */\n\n n = s.hash_size;\n p = n;\n do {\n m = s.head[--p];\n s.head[p] = (m >= _w_size ? m - _w_size : 0);\n } while (--n);\n\n n = _w_size;\n p = n;\n do {\n m = s.prev[--p];\n s.prev[p] = (m >= _w_size ? m - _w_size : 0);\n /* If n is not on any hash chain, prev[n] is garbage but\n * its value will never be used.\n */\n } while (--n);\n\n more += _w_size;\n }\n if (s.strm.avail_in === 0) {\n break;\n }\n\n /* If there was no sliding:\n * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&\n * more == window_size - lookahead - strstart\n * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)\n * => more >= window_size - 2*WSIZE + 2\n * In the BIG_MEM or MMAP case (not yet supported),\n * window_size == input_size + MIN_LOOKAHEAD &&\n * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.\n * Otherwise, window_size == 2*WSIZE so more >= 2.\n * If there was sliding, more >= WSIZE. So in all cases, more >= 2.\n */\n //Assert(more >= 2, \"more < 2\");\n n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);\n s.lookahead += n;\n\n /* Initialize the hash value now that we have some input: */\n if (s.lookahead + s.insert >= MIN_MATCH) {\n str = s.strstart - s.insert;\n s.ins_h = s.window[str];\n\n /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[str + 1]) & s.hash_mask;\n//#if MIN_MATCH != 3\n// Call update_hash() MIN_MATCH-3 more times\n//#endif\n while (s.insert) {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask;\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = str;\n str++;\n s.insert--;\n if (s.lookahead + s.insert < MIN_MATCH) {\n break;\n }\n }\n }\n /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,\n * but this is not important since only literal bytes will be emitted.\n */\n\n } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0);\n\n /* If the WIN_INIT bytes after the end of the current data have never been\n * written, then zero those bytes in order to avoid memory check reports of\n * the use of uninitialized (or uninitialised as Julian writes) bytes by\n * the longest match routines. Update the high water mark for the next\n * time through here. WIN_INIT is set to MAX_MATCH since the longest match\n * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.\n */\n// if (s.high_water < s.window_size) {\n// var curr = s.strstart + s.lookahead;\n// var init = 0;\n//\n// if (s.high_water < curr) {\n// /* Previous high water mark below current data -- zero WIN_INIT\n// * bytes or up to end of window, whichever is less.\n// */\n// init = s.window_size - curr;\n// if (init > WIN_INIT)\n// init = WIN_INIT;\n// zmemzero(s->window + curr, (unsigned)init);\n// s->high_water = curr + init;\n// }\n// else if (s->high_water < (ulg)curr + WIN_INIT) {\n// /* High water mark at or above current data, but below current data\n// * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up\n// * to end of window, whichever is less.\n// */\n// init = (ulg)curr + WIN_INIT - s->high_water;\n// if (init > s->window_size - s->high_water)\n// init = s->window_size - s->high_water;\n// zmemzero(s->window + s->high_water, (unsigned)init);\n// s->high_water += init;\n// }\n// }\n//\n// Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD,\n// \"not enough room for search\");\n}\n\n/* ===========================================================================\n * Copy without compression as much as possible from the input stream, return\n * the current block state.\n * This function does not insert new strings in the dictionary since\n * uncompressible data is probably not useful. This function is used\n * only for the level=0 compression option.\n * NOTE: this function should be optimized to avoid extra copying from\n * window to pending_buf.\n */\nfunction deflate_stored(s, flush) {\n /* Stored blocks are limited to 0xffff bytes, pending_buf is limited\n * to pending_buf_size, and each stored block has a 5 byte header:\n */\n var max_block_size = 0xffff;\n\n if (max_block_size > s.pending_buf_size - 5) {\n max_block_size = s.pending_buf_size - 5;\n }\n\n /* Copy as much as possible from input to output: */\n for (;;) {\n /* Fill the window as much as possible: */\n if (s.lookahead <= 1) {\n\n //Assert(s->strstart < s->w_size+MAX_DIST(s) ||\n // s->block_start >= (long)s->w_size, \"slide too late\");\n// if (!(s.strstart < s.w_size + (s.w_size - MIN_LOOKAHEAD) ||\n// s.block_start >= s.w_size)) {\n// throw new Error(\"slide too late\");\n// }\n\n fill_window(s);\n if (s.lookahead === 0 && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n\n if (s.lookahead === 0) {\n break;\n }\n /* flush the current block */\n }\n //Assert(s->block_start >= 0L, \"block gone\");\n// if (s.block_start < 0) throw new Error(\"block gone\");\n\n s.strstart += s.lookahead;\n s.lookahead = 0;\n\n /* Emit a stored block if pending_buf will be full: */\n var max_start = s.block_start + max_block_size;\n\n if (s.strstart === 0 || s.strstart >= max_start) {\n /* strstart == 0 is possible when wraparound on 16-bit machine */\n s.lookahead = s.strstart - max_start;\n s.strstart = max_start;\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n\n\n }\n /* Flush if we may have to slide, otherwise block_start may become\n * negative and the data will be gone:\n */\n if (s.strstart - s.block_start >= (s.w_size - MIN_LOOKAHEAD)) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n\n s.insert = 0;\n\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n\n if (s.strstart > s.block_start) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n return BS_NEED_MORE;\n}\n\n/* ===========================================================================\n * Compress as much as possible from the input stream, return the current\n * block state.\n * This function does not perform lazy evaluation of matches and inserts\n * new strings in the dictionary only for unmatched strings or for short\n * matches. It is used only for the fast compression options.\n */\nfunction deflate_fast(s, flush) {\n var hash_head; /* head of the hash chain */\n var bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) {\n break; /* flush the current block */\n }\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask;\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n * At this point we have always match_length < MIN_MATCH\n */\n if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n }\n if (s.match_length >= MIN_MATCH) {\n // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only\n\n /*** _tr_tally_dist(s, s.strstart - s.match_start,\n s.match_length - MIN_MATCH, bflush); ***/\n bflush = trees._tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n\n /* Insert new strings in the hash table only if the match length\n * is not too large. This saves time but degrades compression.\n */\n if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) {\n s.match_length--; /* string at strstart already in table */\n do {\n s.strstart++;\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask;\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead.\n */\n } while (--s.match_length !== 0);\n s.strstart++;\n } else\n {\n s.strstart += s.match_length;\n s.match_length = 0;\n s.ins_h = s.window[s.strstart];\n /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + 1]) & s.hash_mask;\n\n//#if MIN_MATCH != 3\n// Call UPDATE_HASH() MIN_MATCH-3 more times\n//#endif\n /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not\n * matter since it will be recomputed at next deflate call.\n */\n }\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s.window[s.strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = trees._tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = ((s.strstart < (MIN_MATCH - 1)) ? s.strstart : MIN_MATCH - 1);\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.last_lit) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n}\n\n/* ===========================================================================\n * Same as above, but achieves better compression. We use a lazy\n * evaluation for matches: a match is finally adopted only if there is\n * no better match at the next window position.\n */\nfunction deflate_slow(s, flush) {\n var hash_head; /* head of hash chain */\n var bflush; /* set if current block must be flushed */\n\n var max_insert;\n\n /* Process the input block. */\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask;\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n */\n s.prev_length = s.match_length;\n s.prev_match = s.match_start;\n s.match_length = MIN_MATCH - 1;\n\n if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match &&\n s.strstart - hash_head <= (s.w_size - MIN_LOOKAHEAD)/*MAX_DIST(s)*/) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n\n if (s.match_length <= 5 &&\n (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) {\n\n /* If prev_match is also MIN_MATCH, match_start is garbage\n * but we will ignore the current match anyway.\n */\n s.match_length = MIN_MATCH - 1;\n }\n }\n /* If there was a match at the previous step and the current\n * match is not better, output the previous match:\n */\n if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) {\n max_insert = s.strstart + s.lookahead - MIN_MATCH;\n /* Do not insert strings in hash table beyond this. */\n\n //check_match(s, s.strstart-1, s.prev_match, s.prev_length);\n\n /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match,\n s.prev_length - MIN_MATCH, bflush);***/\n bflush = trees._tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH);\n /* Insert in hash table all strings up to the end of the match.\n * strstart-1 and strstart are already inserted. If there is not\n * enough lookahead, the last two strings are not inserted in\n * the hash table.\n */\n s.lookahead -= s.prev_length - 1;\n s.prev_length -= 2;\n do {\n if (++s.strstart <= max_insert) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask;\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n } while (--s.prev_length !== 0);\n s.match_available = 0;\n s.match_length = MIN_MATCH - 1;\n s.strstart++;\n\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n } else if (s.match_available) {\n /* If there was no match at the previous position, output a\n * single literal. If there was a match but the current match\n * is longer, truncate the previous match to a single literal.\n */\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]);\n\n if (bflush) {\n /*** FLUSH_BLOCK_ONLY(s, 0) ***/\n flush_block_only(s, false);\n /***/\n }\n s.strstart++;\n s.lookahead--;\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n } else {\n /* There is no previous match to compare with, wait for\n * the next step to decide.\n */\n s.match_available = 1;\n s.strstart++;\n s.lookahead--;\n }\n }\n //Assert (flush != Z_NO_FLUSH, \"no flush?\");\n if (s.match_available) {\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]);\n\n s.match_available = 0;\n }\n s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.last_lit) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n return BS_BLOCK_DONE;\n}\n\n\n/* ===========================================================================\n * For Z_RLE, simply look for runs of bytes, generate matches only of distance\n * one. Do not maintain a hash table. (It will be regenerated if this run of\n * deflate switches away from Z_RLE.)\n */\nfunction deflate_rle(s, flush) {\n var bflush; /* set if current block must be flushed */\n var prev; /* byte at distance one to match */\n var scan, strend; /* scan goes up to strend for length of run */\n\n var _win = s.window;\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the longest run, plus one for the unrolled loop.\n */\n if (s.lookahead <= MAX_MATCH) {\n fill_window(s);\n if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* See how many times the previous byte repeats */\n s.match_length = 0;\n if (s.lookahead >= MIN_MATCH && s.strstart > 0) {\n scan = s.strstart - 1;\n prev = _win[scan];\n if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) {\n strend = s.strstart + MAX_MATCH;\n do {\n /*jshint noempty:false*/\n } while (prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n scan < strend);\n s.match_length = MAX_MATCH - (strend - scan);\n if (s.match_length > s.lookahead) {\n s.match_length = s.lookahead;\n }\n }\n //Assert(scan <= s->window+(uInt)(s->window_size-1), \"wild scan\");\n }\n\n /* Emit match if have run of MIN_MATCH or longer, else emit literal */\n if (s.match_length >= MIN_MATCH) {\n //check_match(s, s.strstart, s.strstart - 1, s.match_length);\n\n /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/\n bflush = trees._tr_tally(s, 1, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n s.strstart += s.match_length;\n s.match_length = 0;\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = trees._tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.last_lit) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n}\n\n/* ===========================================================================\n * For Z_HUFFMAN_ONLY, do not look for matches. Do not maintain a hash table.\n * (It will be regenerated if this run of deflate switches away from Huffman.)\n */\nfunction deflate_huff(s, flush) {\n var bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we have a literal to write. */\n if (s.lookahead === 0) {\n fill_window(s);\n if (s.lookahead === 0) {\n if (flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n break; /* flush the current block */\n }\n }\n\n /* Output a literal byte */\n s.match_length = 0;\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = trees._tr_tally(s, 0, s.window[s.strstart]);\n s.lookahead--;\n s.strstart++;\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.last_lit) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n}\n\n/* Values for max_lazy_match, good_match and max_chain_length, depending on\n * the desired pack level (0..9). The values given below have been tuned to\n * exclude worst case performance for pathological files. Better values may be\n * found for specific files.\n */\nfunction Config(good_length, max_lazy, nice_length, max_chain, func) {\n this.good_length = good_length;\n this.max_lazy = max_lazy;\n this.nice_length = nice_length;\n this.max_chain = max_chain;\n this.func = func;\n}\n\nvar configuration_table;\n\nconfiguration_table = [\n /* good lazy nice chain */\n new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */\n new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */\n new Config(4, 5, 16, 8, deflate_fast), /* 2 */\n new Config(4, 6, 32, 32, deflate_fast), /* 3 */\n\n new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */\n new Config(8, 16, 32, 32, deflate_slow), /* 5 */\n new Config(8, 16, 128, 128, deflate_slow), /* 6 */\n new Config(8, 32, 128, 256, deflate_slow), /* 7 */\n new Config(32, 128, 258, 1024, deflate_slow), /* 8 */\n new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */\n];\n\n\n/* ===========================================================================\n * Initialize the \"longest match\" routines for a new zlib stream\n */\nfunction lm_init(s) {\n s.window_size = 2 * s.w_size;\n\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n\n /* Set the default configuration parameters:\n */\n s.max_lazy_match = configuration_table[s.level].max_lazy;\n s.good_match = configuration_table[s.level].good_length;\n s.nice_match = configuration_table[s.level].nice_length;\n s.max_chain_length = configuration_table[s.level].max_chain;\n\n s.strstart = 0;\n s.block_start = 0;\n s.lookahead = 0;\n s.insert = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n s.ins_h = 0;\n}\n\n\nfunction DeflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.status = 0; /* as the name implies */\n this.pending_buf = null; /* output still pending */\n this.pending_buf_size = 0; /* size of pending_buf */\n this.pending_out = 0; /* next pending byte to output to the stream */\n this.pending = 0; /* nb of bytes in the pending buffer */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */\n this.gzhead = null; /* gzip header information to write */\n this.gzindex = 0; /* where in extra, name, or comment */\n this.method = Z_DEFLATED; /* can only be DEFLATED */\n this.last_flush = -1; /* value of flush param for previous deflate call */\n\n this.w_size = 0; /* LZ77 window size (32K by default) */\n this.w_bits = 0; /* log2(w_size) (8..16) */\n this.w_mask = 0; /* w_size - 1 */\n\n this.window = null;\n /* Sliding window. Input bytes are read into the second half of the window,\n * and move to the first half later to keep a dictionary of at least wSize\n * bytes. With this organization, matches are limited to a distance of\n * wSize-MAX_MATCH bytes, but this ensures that IO is always\n * performed with a length multiple of the block size.\n */\n\n this.window_size = 0;\n /* Actual size of window: 2*wSize, except when the user input buffer\n * is directly used as sliding window.\n */\n\n this.prev = null;\n /* Link to older string with same hash index. To limit the size of this\n * array to 64K, this link is maintained only for the last 32K strings.\n * An index in this array is thus a window index modulo 32K.\n */\n\n this.head = null; /* Heads of the hash chains or NIL. */\n\n this.ins_h = 0; /* hash index of string to be inserted */\n this.hash_size = 0; /* number of elements in hash table */\n this.hash_bits = 0; /* log2(hash_size) */\n this.hash_mask = 0; /* hash_size-1 */\n\n this.hash_shift = 0;\n /* Number of bits by which ins_h must be shifted at each input\n * step. It must be such that after MIN_MATCH steps, the oldest\n * byte no longer takes part in the hash key, that is:\n * hash_shift * MIN_MATCH >= hash_bits\n */\n\n this.block_start = 0;\n /* Window position at the beginning of the current output block. Gets\n * negative when the window is moved backwards.\n */\n\n this.match_length = 0; /* length of best match */\n this.prev_match = 0; /* previous match */\n this.match_available = 0; /* set if previous match exists */\n this.strstart = 0; /* start of string to insert */\n this.match_start = 0; /* start of matching string */\n this.lookahead = 0; /* number of valid bytes ahead in window */\n\n this.prev_length = 0;\n /* Length of the best match at previous step. Matches not greater than this\n * are discarded. This is used in the lazy match evaluation.\n */\n\n this.max_chain_length = 0;\n /* To speed up deflation, hash chains are never searched beyond this\n * length. A higher limit improves compression ratio but degrades the\n * speed.\n */\n\n this.max_lazy_match = 0;\n /* Attempt to find a better match only when the current match is strictly\n * smaller than this value. This mechanism is used only for compression\n * levels >= 4.\n */\n // That's alias to max_lazy_match, don't use directly\n //this.max_insert_length = 0;\n /* Insert new strings in the hash table only if the match length is not\n * greater than this length. This saves time but degrades compression.\n * max_insert_length is used only for compression levels <= 3.\n */\n\n this.level = 0; /* compression level (1..9) */\n this.strategy = 0; /* favor or force Huffman coding*/\n\n this.good_match = 0;\n /* Use a faster search when the previous match is longer than this */\n\n this.nice_match = 0; /* Stop searching when current match exceeds this */\n\n /* used by trees.c: */\n\n /* Didn't use ct_data typedef below to suppress compiler warning */\n\n // struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */\n // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */\n // struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */\n\n // Use flat array of DOUBLE size, with interleaved fata,\n // because JS does not support effective\n this.dyn_ltree = new utils.Buf16(HEAP_SIZE * 2);\n this.dyn_dtree = new utils.Buf16((2 * D_CODES + 1) * 2);\n this.bl_tree = new utils.Buf16((2 * BL_CODES + 1) * 2);\n zero(this.dyn_ltree);\n zero(this.dyn_dtree);\n zero(this.bl_tree);\n\n this.l_desc = null; /* desc. for literal tree */\n this.d_desc = null; /* desc. for distance tree */\n this.bl_desc = null; /* desc. for bit length tree */\n\n //ush bl_count[MAX_BITS+1];\n this.bl_count = new utils.Buf16(MAX_BITS + 1);\n /* number of codes at each bit length for an optimal tree */\n\n //int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */\n this.heap = new utils.Buf16(2 * L_CODES + 1); /* heap used to build the Huffman trees */\n zero(this.heap);\n\n this.heap_len = 0; /* number of elements in the heap */\n this.heap_max = 0; /* element of largest frequency */\n /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.\n * The same heap array is used to build all trees.\n */\n\n this.depth = new utils.Buf16(2 * L_CODES + 1); //uch depth[2*L_CODES+1];\n zero(this.depth);\n /* Depth of each subtree used as tie breaker for trees of equal frequency\n */\n\n this.l_buf = 0; /* buffer index for literals or lengths */\n\n this.lit_bufsize = 0;\n /* Size of match buffer for literals/lengths. There are 4 reasons for\n * limiting lit_bufsize to 64K:\n * - frequencies can be kept in 16 bit counters\n * - if compression is not successful for the first block, all input\n * data is still in the window so we can still emit a stored block even\n * when input comes from standard input. (This can also be done for\n * all blocks if lit_bufsize is not greater than 32K.)\n * - if compression is not successful for a file smaller than 64K, we can\n * even emit a stored file instead of a stored block (saving 5 bytes).\n * This is applicable only for zip (not gzip or zlib).\n * - creating new Huffman trees less frequently may not provide fast\n * adaptation to changes in the input data statistics. (Take for\n * example a binary file with poorly compressible code followed by\n * a highly compressible string table.) Smaller buffer sizes give\n * fast adaptation but have of course the overhead of transmitting\n * trees more frequently.\n * - I can't count above 4\n */\n\n this.last_lit = 0; /* running index in l_buf */\n\n this.d_buf = 0;\n /* Buffer index for distances. To simplify the code, d_buf and l_buf have\n * the same number of elements. To use different lengths, an extra flag\n * array would be necessary.\n */\n\n this.opt_len = 0; /* bit length of current block with optimal trees */\n this.static_len = 0; /* bit length of current block with static trees */\n this.matches = 0; /* number of string matches in current block */\n this.insert = 0; /* bytes at end of window left to insert */\n\n\n this.bi_buf = 0;\n /* Output buffer. bits are inserted starting at the bottom (least\n * significant bits).\n */\n this.bi_valid = 0;\n /* Number of valid bits in bi_buf. All bits above the last valid bit\n * are always zero.\n */\n\n // Used for window memory init. We safely ignore it for JS. That makes\n // sense only for pointers and memory check tools.\n //this.high_water = 0;\n /* High water mark offset in window for initialized bytes -- bytes above\n * this are set to zero in order to avoid memory check warnings when\n * longest match routines access bytes past the input. This is then\n * updated to the new high water mark.\n */\n}\n\n\nfunction deflateResetKeep(strm) {\n var s;\n\n if (!strm || !strm.state) {\n return err(strm, Z_STREAM_ERROR);\n }\n\n strm.total_in = strm.total_out = 0;\n strm.data_type = Z_UNKNOWN;\n\n s = strm.state;\n s.pending = 0;\n s.pending_out = 0;\n\n if (s.wrap < 0) {\n s.wrap = -s.wrap;\n /* was made negative by deflate(..., Z_FINISH); */\n }\n s.status = (s.wrap ? INIT_STATE : BUSY_STATE);\n strm.adler = (s.wrap === 2) ?\n 0 // crc32(0, Z_NULL, 0)\n :\n 1; // adler32(0, Z_NULL, 0)\n s.last_flush = Z_NO_FLUSH;\n trees._tr_init(s);\n return Z_OK;\n}\n\n\nfunction deflateReset(strm) {\n var ret = deflateResetKeep(strm);\n if (ret === Z_OK) {\n lm_init(strm.state);\n }\n return ret;\n}\n\n\nfunction deflateSetHeader(strm, head) {\n if (!strm || !strm.state) { return Z_STREAM_ERROR; }\n if (strm.state.wrap !== 2) { return Z_STREAM_ERROR; }\n strm.state.gzhead = head;\n return Z_OK;\n}\n\n\nfunction deflateInit2(strm, level, method, windowBits, memLevel, strategy) {\n if (!strm) { // === Z_NULL\n return Z_STREAM_ERROR;\n }\n var wrap = 1;\n\n if (level === Z_DEFAULT_COMPRESSION) {\n level = 6;\n }\n\n if (windowBits < 0) { /* suppress zlib wrapper */\n wrap = 0;\n windowBits = -windowBits;\n }\n\n else if (windowBits > 15) {\n wrap = 2; /* write gzip wrapper instead */\n windowBits -= 16;\n }\n\n\n if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED ||\n windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||\n strategy < 0 || strategy > Z_FIXED) {\n return err(strm, Z_STREAM_ERROR);\n }\n\n\n if (windowBits === 8) {\n windowBits = 9;\n }\n /* until 256-byte window bug fixed */\n\n var s = new DeflateState();\n\n strm.state = s;\n s.strm = strm;\n\n s.wrap = wrap;\n s.gzhead = null;\n s.w_bits = windowBits;\n s.w_size = 1 << s.w_bits;\n s.w_mask = s.w_size - 1;\n\n s.hash_bits = memLevel + 7;\n s.hash_size = 1 << s.hash_bits;\n s.hash_mask = s.hash_size - 1;\n s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);\n\n s.window = new utils.Buf8(s.w_size * 2);\n s.head = new utils.Buf16(s.hash_size);\n s.prev = new utils.Buf16(s.w_size);\n\n // Don't need mem init magic for JS.\n //s.high_water = 0; /* nothing written to s->window yet */\n\n s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */\n\n s.pending_buf_size = s.lit_bufsize * 4;\n\n //overlay = (ushf *) ZALLOC(strm, s->lit_bufsize, sizeof(ush)+2);\n //s->pending_buf = (uchf *) overlay;\n s.pending_buf = new utils.Buf8(s.pending_buf_size);\n\n // It is offset from `s.pending_buf` (size is `s.lit_bufsize * 2`)\n //s->d_buf = overlay + s->lit_bufsize/sizeof(ush);\n s.d_buf = 1 * s.lit_bufsize;\n\n //s->l_buf = s->pending_buf + (1+sizeof(ush))*s->lit_bufsize;\n s.l_buf = (1 + 2) * s.lit_bufsize;\n\n s.level = level;\n s.strategy = strategy;\n s.method = method;\n\n return deflateReset(strm);\n}\n\nfunction deflateInit(strm, level) {\n return deflateInit2(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY);\n}\n\n\nfunction deflate(strm, flush) {\n var old_flush, s;\n var beg, val; // for gzip header write only\n\n if (!strm || !strm.state ||\n flush > Z_BLOCK || flush < 0) {\n return strm ? err(strm, Z_STREAM_ERROR) : Z_STREAM_ERROR;\n }\n\n s = strm.state;\n\n if (!strm.output ||\n (!strm.input && strm.avail_in !== 0) ||\n (s.status === FINISH_STATE && flush !== Z_FINISH)) {\n return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR : Z_STREAM_ERROR);\n }\n\n s.strm = strm; /* just in case */\n old_flush = s.last_flush;\n s.last_flush = flush;\n\n /* Write the header */\n if (s.status === INIT_STATE) {\n\n if (s.wrap === 2) { // GZIP header\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n put_byte(s, 31);\n put_byte(s, 139);\n put_byte(s, 8);\n if (!s.gzhead) { // s->gzhead == Z_NULL\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, OS_CODE);\n s.status = BUSY_STATE;\n }\n else {\n put_byte(s, (s.gzhead.text ? 1 : 0) +\n (s.gzhead.hcrc ? 2 : 0) +\n (!s.gzhead.extra ? 0 : 4) +\n (!s.gzhead.name ? 0 : 8) +\n (!s.gzhead.comment ? 0 : 16)\n );\n put_byte(s, s.gzhead.time & 0xff);\n put_byte(s, (s.gzhead.time >> 8) & 0xff);\n put_byte(s, (s.gzhead.time >> 16) & 0xff);\n put_byte(s, (s.gzhead.time >> 24) & 0xff);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, s.gzhead.os & 0xff);\n if (s.gzhead.extra && s.gzhead.extra.length) {\n put_byte(s, s.gzhead.extra.length & 0xff);\n put_byte(s, (s.gzhead.extra.length >> 8) & 0xff);\n }\n if (s.gzhead.hcrc) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending, 0);\n }\n s.gzindex = 0;\n s.status = EXTRA_STATE;\n }\n }\n else // DEFLATE header\n {\n var header = (Z_DEFLATED + ((s.w_bits - 8) << 4)) << 8;\n var level_flags = -1;\n\n if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) {\n level_flags = 0;\n } else if (s.level < 6) {\n level_flags = 1;\n } else if (s.level === 6) {\n level_flags = 2;\n } else {\n level_flags = 3;\n }\n header |= (level_flags << 6);\n if (s.strstart !== 0) { header |= PRESET_DICT; }\n header += 31 - (header % 31);\n\n s.status = BUSY_STATE;\n putShortMSB(s, header);\n\n /* Save the adler32 of the preset dictionary: */\n if (s.strstart !== 0) {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n strm.adler = 1; // adler32(0L, Z_NULL, 0);\n }\n }\n\n//#ifdef GZIP\n if (s.status === EXTRA_STATE) {\n if (s.gzhead.extra/* != Z_NULL*/) {\n beg = s.pending; /* start of bytes to update crc */\n\n while (s.gzindex < (s.gzhead.extra.length & 0xffff)) {\n if (s.pending === s.pending_buf_size) {\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n flush_pending(strm);\n beg = s.pending;\n if (s.pending === s.pending_buf_size) {\n break;\n }\n }\n put_byte(s, s.gzhead.extra[s.gzindex] & 0xff);\n s.gzindex++;\n }\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n if (s.gzindex === s.gzhead.extra.length) {\n s.gzindex = 0;\n s.status = NAME_STATE;\n }\n }\n else {\n s.status = NAME_STATE;\n }\n }\n if (s.status === NAME_STATE) {\n if (s.gzhead.name/* != Z_NULL*/) {\n beg = s.pending; /* start of bytes to update crc */\n //int val;\n\n do {\n if (s.pending === s.pending_buf_size) {\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n flush_pending(strm);\n beg = s.pending;\n if (s.pending === s.pending_buf_size) {\n val = 1;\n break;\n }\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.name.length) {\n val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n if (val === 0) {\n s.gzindex = 0;\n s.status = COMMENT_STATE;\n }\n }\n else {\n s.status = COMMENT_STATE;\n }\n }\n if (s.status === COMMENT_STATE) {\n if (s.gzhead.comment/* != Z_NULL*/) {\n beg = s.pending; /* start of bytes to update crc */\n //int val;\n\n do {\n if (s.pending === s.pending_buf_size) {\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n flush_pending(strm);\n beg = s.pending;\n if (s.pending === s.pending_buf_size) {\n val = 1;\n break;\n }\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.comment.length) {\n val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n if (val === 0) {\n s.status = HCRC_STATE;\n }\n }\n else {\n s.status = HCRC_STATE;\n }\n }\n if (s.status === HCRC_STATE) {\n if (s.gzhead.hcrc) {\n if (s.pending + 2 > s.pending_buf_size) {\n flush_pending(strm);\n }\n if (s.pending + 2 <= s.pending_buf_size) {\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n s.status = BUSY_STATE;\n }\n }\n else {\n s.status = BUSY_STATE;\n }\n }\n//#endif\n\n /* Flush as much pending output as possible */\n if (s.pending !== 0) {\n flush_pending(strm);\n if (strm.avail_out === 0) {\n /* Since avail_out is 0, deflate will be called again with\n * more output space, but possibly with both pending and\n * avail_in equal to zero. There won't be anything to do,\n * but this is not an error situation so make sure we\n * return OK instead of BUF_ERROR at next call of deflate:\n */\n s.last_flush = -1;\n return Z_OK;\n }\n\n /* Make sure there is something to do and avoid duplicate consecutive\n * flushes. For repeated and useless calls with Z_FINISH, we keep\n * returning Z_STREAM_END instead of Z_BUF_ERROR.\n */\n } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) &&\n flush !== Z_FINISH) {\n return err(strm, Z_BUF_ERROR);\n }\n\n /* User must not provide more input after the first FINISH: */\n if (s.status === FINISH_STATE && strm.avail_in !== 0) {\n return err(strm, Z_BUF_ERROR);\n }\n\n /* Start a new block or continue the current one.\n */\n if (strm.avail_in !== 0 || s.lookahead !== 0 ||\n (flush !== Z_NO_FLUSH && s.status !== FINISH_STATE)) {\n var bstate = (s.strategy === Z_HUFFMAN_ONLY) ? deflate_huff(s, flush) :\n (s.strategy === Z_RLE ? deflate_rle(s, flush) :\n configuration_table[s.level].func(s, flush));\n\n if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) {\n s.status = FINISH_STATE;\n }\n if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) {\n if (strm.avail_out === 0) {\n s.last_flush = -1;\n /* avoid BUF_ERROR next call, see above */\n }\n return Z_OK;\n /* If flush != Z_NO_FLUSH && avail_out == 0, the next call\n * of deflate should use the same flush parameter to make sure\n * that the flush is complete. So we don't have to output an\n * empty block here, this will be done at next call. This also\n * ensures that for a very small output buffer, we emit at most\n * one empty block.\n */\n }\n if (bstate === BS_BLOCK_DONE) {\n if (flush === Z_PARTIAL_FLUSH) {\n trees._tr_align(s);\n }\n else if (flush !== Z_BLOCK) { /* FULL_FLUSH or SYNC_FLUSH */\n\n trees._tr_stored_block(s, 0, 0, false);\n /* For a full flush, this empty block will be recognized\n * as a special marker by inflate_sync().\n */\n if (flush === Z_FULL_FLUSH) {\n /*** CLEAR_HASH(s); ***/ /* forget history */\n zero(s.head); // Fill with NIL (= 0);\n\n if (s.lookahead === 0) {\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n }\n }\n flush_pending(strm);\n if (strm.avail_out === 0) {\n s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */\n return Z_OK;\n }\n }\n }\n //Assert(strm->avail_out > 0, \"bug2\");\n //if (strm.avail_out <= 0) { throw new Error(\"bug2\");}\n\n if (flush !== Z_FINISH) { return Z_OK; }\n if (s.wrap <= 0) { return Z_STREAM_END; }\n\n /* Write the trailer */\n if (s.wrap === 2) {\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n put_byte(s, (strm.adler >> 16) & 0xff);\n put_byte(s, (strm.adler >> 24) & 0xff);\n put_byte(s, strm.total_in & 0xff);\n put_byte(s, (strm.total_in >> 8) & 0xff);\n put_byte(s, (strm.total_in >> 16) & 0xff);\n put_byte(s, (strm.total_in >> 24) & 0xff);\n }\n else\n {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n\n flush_pending(strm);\n /* If avail_out is zero, the application will call deflate again\n * to flush the rest.\n */\n if (s.wrap > 0) { s.wrap = -s.wrap; }\n /* write the trailer only once! */\n return s.pending !== 0 ? Z_OK : Z_STREAM_END;\n}\n\nfunction deflateEnd(strm) {\n var status;\n\n if (!strm/*== Z_NULL*/ || !strm.state/*== Z_NULL*/) {\n return Z_STREAM_ERROR;\n }\n\n status = strm.state.status;\n if (status !== INIT_STATE &&\n status !== EXTRA_STATE &&\n status !== NAME_STATE &&\n status !== COMMENT_STATE &&\n status !== HCRC_STATE &&\n status !== BUSY_STATE &&\n status !== FINISH_STATE\n ) {\n return err(strm, Z_STREAM_ERROR);\n }\n\n strm.state = null;\n\n return status === BUSY_STATE ? err(strm, Z_DATA_ERROR) : Z_OK;\n}\n\n\n/* =========================================================================\n * Initializes the compression dictionary from the given byte\n * sequence without producing any compressed output.\n */\nfunction deflateSetDictionary(strm, dictionary) {\n var dictLength = dictionary.length;\n\n var s;\n var str, n;\n var wrap;\n var avail;\n var next;\n var input;\n var tmpDict;\n\n if (!strm/*== Z_NULL*/ || !strm.state/*== Z_NULL*/) {\n return Z_STREAM_ERROR;\n }\n\n s = strm.state;\n wrap = s.wrap;\n\n if (wrap === 2 || (wrap === 1 && s.status !== INIT_STATE) || s.lookahead) {\n return Z_STREAM_ERROR;\n }\n\n /* when using zlib wrappers, compute Adler-32 for provided dictionary */\n if (wrap === 1) {\n /* adler32(strm->adler, dictionary, dictLength); */\n strm.adler = adler32(strm.adler, dictionary, dictLength, 0);\n }\n\n s.wrap = 0; /* avoid computing Adler-32 in read_buf */\n\n /* if dictionary would fill window, just replace the history */\n if (dictLength >= s.w_size) {\n if (wrap === 0) { /* already empty otherwise */\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n /* use the tail */\n // dictionary = dictionary.slice(dictLength - s.w_size);\n tmpDict = new utils.Buf8(s.w_size);\n utils.arraySet(tmpDict, dictionary, dictLength - s.w_size, s.w_size, 0);\n dictionary = tmpDict;\n dictLength = s.w_size;\n }\n /* insert dictionary into window and hash */\n avail = strm.avail_in;\n next = strm.next_in;\n input = strm.input;\n strm.avail_in = dictLength;\n strm.next_in = 0;\n strm.input = dictionary;\n fill_window(s);\n while (s.lookahead >= MIN_MATCH) {\n str = s.strstart;\n n = s.lookahead - (MIN_MATCH - 1);\n do {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask;\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n\n s.head[s.ins_h] = str;\n str++;\n } while (--n);\n s.strstart = str;\n s.lookahead = MIN_MATCH - 1;\n fill_window(s);\n }\n s.strstart += s.lookahead;\n s.block_start = s.strstart;\n s.insert = s.lookahead;\n s.lookahead = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n strm.next_in = next;\n strm.input = input;\n strm.avail_in = avail;\n s.wrap = wrap;\n return Z_OK;\n}\n\n\nexports.deflateInit = deflateInit;\nexports.deflateInit2 = deflateInit2;\nexports.deflateReset = deflateReset;\nexports.deflateResetKeep = deflateResetKeep;\nexports.deflateSetHeader = deflateSetHeader;\nexports.deflate = deflate;\nexports.deflateEnd = deflateEnd;\nexports.deflateSetDictionary = deflateSetDictionary;\nexports.deflateInfo = 'pako deflate (from Nodeca project)';\n\n/* Not implemented\nexports.deflateBound = deflateBound;\nexports.deflateCopy = deflateCopy;\nexports.deflateParams = deflateParams;\nexports.deflatePending = deflatePending;\nexports.deflatePrime = deflatePrime;\nexports.deflateTune = deflateTune;\n*/\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/gzheader.js\":\n/*!*************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/gzheader.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction GZheader() {\n /* true if compressed data believed to be text */\n this.text = 0;\n /* modification time */\n this.time = 0;\n /* extra flags (not used when writing a gzip file) */\n this.xflags = 0;\n /* operating system */\n this.os = 0;\n /* pointer to extra field or Z_NULL if none */\n this.extra = null;\n /* extra field length (valid if extra != Z_NULL) */\n this.extra_len = 0; // Actually, we don't need it in JS,\n // but leave for few code modifications\n\n //\n // Setup limits is not necessary because in js we should not preallocate memory\n // for inflate use constant limit in 65536 bytes\n //\n\n /* space at extra (only when reading header) */\n // this.extra_max = 0;\n /* pointer to zero-terminated file name or Z_NULL */\n this.name = '';\n /* space at name (only when reading header) */\n // this.name_max = 0;\n /* pointer to zero-terminated comment or Z_NULL */\n this.comment = '';\n /* space at comment (only when reading header) */\n // this.comm_max = 0;\n /* true if there was or will be a header crc */\n this.hcrc = 0;\n /* true when done reading gzip header (not used when writing a gzip file) */\n this.done = false;\n}\n\nmodule.exports = GZheader;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/inffast.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/inffast.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// See state defs from inflate.js\nvar BAD = 30; /* got a data error -- remain here until reset */\nvar TYPE = 12; /* i: waiting for type bits, including last-flag bit */\n\n/*\n Decode literal, length, and distance codes and write out the resulting\n literal and match bytes until either not enough input or output is\n available, an end-of-block is encountered, or a data error is encountered.\n When large enough input and output buffers are supplied to inflate(), for\n example, a 16K input buffer and a 64K output buffer, more than 95% of the\n inflate execution time is spent in this routine.\n\n Entry assumptions:\n\n state.mode === LEN\n strm.avail_in >= 6\n strm.avail_out >= 258\n start >= strm.avail_out\n state.bits < 8\n\n On return, state.mode is one of:\n\n LEN -- ran out of enough output space or enough available input\n TYPE -- reached end of block code, inflate() to interpret next block\n BAD -- error in block data\n\n Notes:\n\n - The maximum input bits used by a length/distance pair is 15 bits for the\n length code, 5 bits for the length extra, 15 bits for the distance code,\n and 13 bits for the distance extra. This totals 48 bits, or six bytes.\n Therefore if strm.avail_in >= 6, then there is enough input to avoid\n checking for available input while decoding.\n\n - The maximum bytes that a single length/distance pair can output is 258\n bytes, which is the maximum length that can be coded. inflate_fast()\n requires strm.avail_out >= 258 for each loop to avoid checking for\n output space.\n */\nmodule.exports = function inflate_fast(strm, start) {\n var state;\n var _in; /* local strm.input */\n var last; /* have enough input while in < last */\n var _out; /* local strm.output */\n var beg; /* inflate()'s initial strm.output */\n var end; /* while out < end, enough space available */\n//#ifdef INFLATE_STRICT\n var dmax; /* maximum distance from zlib header */\n//#endif\n var wsize; /* window size or zero if not using window */\n var whave; /* valid bytes in the window */\n var wnext; /* window write index */\n // Use `s_window` instead `window`, avoid conflict with instrumentation tools\n var s_window; /* allocated sliding window, if wsize != 0 */\n var hold; /* local strm.hold */\n var bits; /* local strm.bits */\n var lcode; /* local strm.lencode */\n var dcode; /* local strm.distcode */\n var lmask; /* mask for first level of length codes */\n var dmask; /* mask for first level of distance codes */\n var here; /* retrieved table entry */\n var op; /* code bits, operation, extra bits, or */\n /* window position, window bytes to copy */\n var len; /* match length, unused bytes */\n var dist; /* match distance */\n var from; /* where to copy match from */\n var from_source;\n\n\n var input, output; // JS specific, because we have no pointers\n\n /* copy state to local variables */\n state = strm.state;\n //here = state.here;\n _in = strm.next_in;\n input = strm.input;\n last = _in + (strm.avail_in - 5);\n _out = strm.next_out;\n output = strm.output;\n beg = _out - (start - strm.avail_out);\n end = _out + (strm.avail_out - 257);\n//#ifdef INFLATE_STRICT\n dmax = state.dmax;\n//#endif\n wsize = state.wsize;\n whave = state.whave;\n wnext = state.wnext;\n s_window = state.window;\n hold = state.hold;\n bits = state.bits;\n lcode = state.lencode;\n dcode = state.distcode;\n lmask = (1 << state.lenbits) - 1;\n dmask = (1 << state.distbits) - 1;\n\n\n /* decode literals and length/distances until end-of-block or not enough\n input data or output space */\n\n top:\n do {\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n\n here = lcode[hold & lmask];\n\n dolen:\n for (;;) { // Goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n if (op === 0) { /* literal */\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n output[_out++] = here & 0xffff/*here.val*/;\n }\n else if (op & 16) { /* length base */\n len = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (op) {\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n len += hold & ((1 << op) - 1);\n hold >>>= op;\n bits -= op;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", len));\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n here = dcode[hold & dmask];\n\n dodist:\n for (;;) { // goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n\n if (op & 16) { /* distance base */\n dist = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n }\n dist += hold & ((1 << op) - 1);\n//#ifdef INFLATE_STRICT\n if (dist > dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break top;\n }\n//#endif\n hold >>>= op;\n bits -= op;\n //Tracevv((stderr, \"inflate: distance %u\\n\", dist));\n op = _out - beg; /* max distance in output */\n if (dist > op) { /* see if copy from window */\n op = dist - op; /* distance back in window */\n if (op > whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break top;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// if (len <= op - whave) {\n// do {\n// output[_out++] = 0;\n// } while (--len);\n// continue top;\n// }\n// len -= op - whave;\n// do {\n// output[_out++] = 0;\n// } while (--op > whave);\n// if (op === 0) {\n// from = _out - dist;\n// do {\n// output[_out++] = output[from++];\n// } while (--len);\n// continue top;\n// }\n//#endif\n }\n from = 0; // window index\n from_source = s_window;\n if (wnext === 0) { /* very common case */\n from += wsize - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n else if (wnext < op) { /* wrap around window */\n from += wsize + wnext - op;\n op -= wnext;\n if (op < len) { /* some from end of window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = 0;\n if (wnext < len) { /* some from start of window */\n op = wnext;\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n }\n else { /* contiguous in window */\n from += wnext - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n while (len > 2) {\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n len -= 3;\n }\n if (len) {\n output[_out++] = from_source[from++];\n if (len > 1) {\n output[_out++] = from_source[from++];\n }\n }\n }\n else {\n from = _out - dist; /* copy direct from output */\n do { /* minimum length is three */\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n len -= 3;\n } while (len > 2);\n if (len) {\n output[_out++] = output[from++];\n if (len > 1) {\n output[_out++] = output[from++];\n }\n }\n }\n }\n else if ((op & 64) === 0) { /* 2nd level distance code */\n here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dodist;\n }\n else {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n }\n else if ((op & 64) === 0) { /* 2nd level length code */\n here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dolen;\n }\n else if (op & 32) { /* end-of-block */\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.mode = TYPE;\n break top;\n }\n else {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n } while (_in < last && _out < end);\n\n /* return unused bytes (on entry, bits < 8, so in won't go too far back) */\n len = bits >> 3;\n _in -= len;\n bits -= len << 3;\n hold &= (1 << bits) - 1;\n\n /* update state and return */\n strm.next_in = _in;\n strm.next_out = _out;\n strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last));\n strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end));\n state.hold = hold;\n state.bits = bits;\n return;\n};\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/inflate.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/inflate.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar utils = __webpack_require__(/*! ../utils/common */ \"../node_modules/pako/lib/utils/common.js\");\nvar adler32 = __webpack_require__(/*! ./adler32 */ \"../node_modules/pako/lib/zlib/adler32.js\");\nvar crc32 = __webpack_require__(/*! ./crc32 */ \"../node_modules/pako/lib/zlib/crc32.js\");\nvar inflate_fast = __webpack_require__(/*! ./inffast */ \"../node_modules/pako/lib/zlib/inffast.js\");\nvar inflate_table = __webpack_require__(/*! ./inftrees */ \"../node_modules/pako/lib/zlib/inftrees.js\");\n\nvar CODES = 0;\nvar LENS = 1;\nvar DISTS = 2;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n/* Allowed flush values; see deflate() and inflate() below for details */\n//var Z_NO_FLUSH = 0;\n//var Z_PARTIAL_FLUSH = 1;\n//var Z_SYNC_FLUSH = 2;\n//var Z_FULL_FLUSH = 3;\nvar Z_FINISH = 4;\nvar Z_BLOCK = 5;\nvar Z_TREES = 6;\n\n\n/* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\nvar Z_OK = 0;\nvar Z_STREAM_END = 1;\nvar Z_NEED_DICT = 2;\n//var Z_ERRNO = -1;\nvar Z_STREAM_ERROR = -2;\nvar Z_DATA_ERROR = -3;\nvar Z_MEM_ERROR = -4;\nvar Z_BUF_ERROR = -5;\n//var Z_VERSION_ERROR = -6;\n\n/* The deflate compression method */\nvar Z_DEFLATED = 8;\n\n\n/* STATES ====================================================================*/\n/* ===========================================================================*/\n\n\nvar HEAD = 1; /* i: waiting for magic header */\nvar FLAGS = 2; /* i: waiting for method and flags (gzip) */\nvar TIME = 3; /* i: waiting for modification time (gzip) */\nvar OS = 4; /* i: waiting for extra flags and operating system (gzip) */\nvar EXLEN = 5; /* i: waiting for extra length (gzip) */\nvar EXTRA = 6; /* i: waiting for extra bytes (gzip) */\nvar NAME = 7; /* i: waiting for end of file name (gzip) */\nvar COMMENT = 8; /* i: waiting for end of comment (gzip) */\nvar HCRC = 9; /* i: waiting for header crc (gzip) */\nvar DICTID = 10; /* i: waiting for dictionary check value */\nvar DICT = 11; /* waiting for inflateSetDictionary() call */\nvar TYPE = 12; /* i: waiting for type bits, including last-flag bit */\nvar TYPEDO = 13; /* i: same, but skip check to exit inflate on new block */\nvar STORED = 14; /* i: waiting for stored size (length and complement) */\nvar COPY_ = 15; /* i/o: same as COPY below, but only first time in */\nvar COPY = 16; /* i/o: waiting for input or output to copy stored block */\nvar TABLE = 17; /* i: waiting for dynamic block table lengths */\nvar LENLENS = 18; /* i: waiting for code length code lengths */\nvar CODELENS = 19; /* i: waiting for length/lit and distance code lengths */\nvar LEN_ = 20; /* i: same as LEN below, but only first time in */\nvar LEN = 21; /* i: waiting for length/lit/eob code */\nvar LENEXT = 22; /* i: waiting for length extra bits */\nvar DIST = 23; /* i: waiting for distance code */\nvar DISTEXT = 24; /* i: waiting for distance extra bits */\nvar MATCH = 25; /* o: waiting for output space to copy string */\nvar LIT = 26; /* o: waiting for output space to write literal */\nvar CHECK = 27; /* i: waiting for 32-bit check value */\nvar LENGTH = 28; /* i: waiting for 32-bit length (gzip) */\nvar DONE = 29; /* finished check, done -- remain here until reset */\nvar BAD = 30; /* got a data error -- remain here until reset */\nvar MEM = 31; /* got an inflate() memory error -- remain here until reset */\nvar SYNC = 32; /* looking for synchronization bytes to restart inflate() */\n\n/* ===========================================================================*/\n\n\n\nvar ENOUGH_LENS = 852;\nvar ENOUGH_DISTS = 592;\n//var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nvar MAX_WBITS = 15;\n/* 32K LZ77 window */\nvar DEF_WBITS = MAX_WBITS;\n\n\nfunction zswap32(q) {\n return (((q >>> 24) & 0xff) +\n ((q >>> 8) & 0xff00) +\n ((q & 0xff00) << 8) +\n ((q & 0xff) << 24));\n}\n\n\nfunction InflateState() {\n this.mode = 0; /* current inflate mode */\n this.last = false; /* true if processing last block */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */\n this.havedict = false; /* true if dictionary provided */\n this.flags = 0; /* gzip header method and flags (0 if zlib) */\n this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */\n this.check = 0; /* protected copy of check value */\n this.total = 0; /* protected copy of output count */\n // TODO: may be {}\n this.head = null; /* where to save gzip header information */\n\n /* sliding window */\n this.wbits = 0; /* log base 2 of requested window size */\n this.wsize = 0; /* window size or zero if not using window */\n this.whave = 0; /* valid bytes in the window */\n this.wnext = 0; /* window write index */\n this.window = null; /* allocated sliding window, if needed */\n\n /* bit accumulator */\n this.hold = 0; /* input bit accumulator */\n this.bits = 0; /* number of bits in \"in\" */\n\n /* for string and stored block copying */\n this.length = 0; /* literal or length of data to copy */\n this.offset = 0; /* distance back to copy string from */\n\n /* for table and code decoding */\n this.extra = 0; /* extra bits needed */\n\n /* fixed and dynamic code tables */\n this.lencode = null; /* starting table for length/literal codes */\n this.distcode = null; /* starting table for distance codes */\n this.lenbits = 0; /* index bits for lencode */\n this.distbits = 0; /* index bits for distcode */\n\n /* dynamic table building */\n this.ncode = 0; /* number of code length code lengths */\n this.nlen = 0; /* number of length code lengths */\n this.ndist = 0; /* number of distance code lengths */\n this.have = 0; /* number of code lengths in lens[] */\n this.next = null; /* next available space in codes[] */\n\n this.lens = new utils.Buf16(320); /* temporary storage for code lengths */\n this.work = new utils.Buf16(288); /* work area for code table building */\n\n /*\n because we don't have pointers in js, we use lencode and distcode directly\n as buffers so we don't need codes\n */\n //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */\n this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */\n this.distdyn = null; /* dynamic table for distance codes (JS specific) */\n this.sane = 0; /* if false, allow invalid distance too far */\n this.back = 0; /* bits back of last unprocessed length/lit */\n this.was = 0; /* initial length of match */\n}\n\nfunction inflateResetKeep(strm) {\n var state;\n\n if (!strm || !strm.state) { return Z_STREAM_ERROR; }\n state = strm.state;\n strm.total_in = strm.total_out = state.total = 0;\n strm.msg = ''; /*Z_NULL*/\n if (state.wrap) { /* to support ill-conceived Java test suite */\n strm.adler = state.wrap & 1;\n }\n state.mode = HEAD;\n state.last = 0;\n state.havedict = 0;\n state.dmax = 32768;\n state.head = null/*Z_NULL*/;\n state.hold = 0;\n state.bits = 0;\n //state.lencode = state.distcode = state.next = state.codes;\n state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS);\n state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS);\n\n state.sane = 1;\n state.back = -1;\n //Tracev((stderr, \"inflate: reset\\n\"));\n return Z_OK;\n}\n\nfunction inflateReset(strm) {\n var state;\n\n if (!strm || !strm.state) { return Z_STREAM_ERROR; }\n state = strm.state;\n state.wsize = 0;\n state.whave = 0;\n state.wnext = 0;\n return inflateResetKeep(strm);\n\n}\n\nfunction inflateReset2(strm, windowBits) {\n var wrap;\n var state;\n\n /* get the state */\n if (!strm || !strm.state) { return Z_STREAM_ERROR; }\n state = strm.state;\n\n /* extract wrap request from windowBits parameter */\n if (windowBits < 0) {\n wrap = 0;\n windowBits = -windowBits;\n }\n else {\n wrap = (windowBits >> 4) + 1;\n if (windowBits < 48) {\n windowBits &= 15;\n }\n }\n\n /* set number of window bits, free window if different */\n if (windowBits && (windowBits < 8 || windowBits > 15)) {\n return Z_STREAM_ERROR;\n }\n if (state.window !== null && state.wbits !== windowBits) {\n state.window = null;\n }\n\n /* update state and reset the rest of it */\n state.wrap = wrap;\n state.wbits = windowBits;\n return inflateReset(strm);\n}\n\nfunction inflateInit2(strm, windowBits) {\n var ret;\n var state;\n\n if (!strm) { return Z_STREAM_ERROR; }\n //strm.msg = Z_NULL; /* in case we return an error */\n\n state = new InflateState();\n\n //if (state === Z_NULL) return Z_MEM_ERROR;\n //Tracev((stderr, \"inflate: allocated\\n\"));\n strm.state = state;\n state.window = null/*Z_NULL*/;\n ret = inflateReset2(strm, windowBits);\n if (ret !== Z_OK) {\n strm.state = null/*Z_NULL*/;\n }\n return ret;\n}\n\nfunction inflateInit(strm) {\n return inflateInit2(strm, DEF_WBITS);\n}\n\n\n/*\n Return state with length and distance decoding tables and index sizes set to\n fixed code decoding. Normally this returns fixed tables from inffixed.h.\n If BUILDFIXED is defined, then instead this routine builds the tables the\n first time it's called, and returns those tables the first time and\n thereafter. This reduces the size of the code by about 2K bytes, in\n exchange for a little execution time. However, BUILDFIXED should not be\n used for threaded applications, since the rewriting of the tables and virgin\n may not be thread-safe.\n */\nvar virgin = true;\n\nvar lenfix, distfix; // We have no pointers in JS, so keep tables separate\n\nfunction fixedtables(state) {\n /* build fixed huffman tables if first call (may not be thread safe) */\n if (virgin) {\n var sym;\n\n lenfix = new utils.Buf32(512);\n distfix = new utils.Buf32(32);\n\n /* literal/length table */\n sym = 0;\n while (sym < 144) { state.lens[sym++] = 8; }\n while (sym < 256) { state.lens[sym++] = 9; }\n while (sym < 280) { state.lens[sym++] = 7; }\n while (sym < 288) { state.lens[sym++] = 8; }\n\n inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 });\n\n /* distance table */\n sym = 0;\n while (sym < 32) { state.lens[sym++] = 5; }\n\n inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 });\n\n /* do this just once */\n virgin = false;\n }\n\n state.lencode = lenfix;\n state.lenbits = 9;\n state.distcode = distfix;\n state.distbits = 5;\n}\n\n\n/*\n Update the window with the last wsize (normally 32K) bytes written before\n returning. If window does not exist yet, create it. This is only called\n when a window is already in use, or when output has been written during this\n inflate call, but the end of the deflate stream has not been reached yet.\n It is also called to create a window for dictionary data when a dictionary\n is loaded.\n\n Providing output buffers larger than 32K to inflate() should provide a speed\n advantage, since only the last 32K of output is copied to the sliding window\n upon return from inflate(), and since all distances after the first 32K of\n output will fall in the output data, making match copies simpler and faster.\n The advantage may be dependent on the size of the processor's data caches.\n */\nfunction updatewindow(strm, src, end, copy) {\n var dist;\n var state = strm.state;\n\n /* if it hasn't been done already, allocate space for the window */\n if (state.window === null) {\n state.wsize = 1 << state.wbits;\n state.wnext = 0;\n state.whave = 0;\n\n state.window = new utils.Buf8(state.wsize);\n }\n\n /* copy state->wsize or less output bytes into the circular window */\n if (copy >= state.wsize) {\n utils.arraySet(state.window, src, end - state.wsize, state.wsize, 0);\n state.wnext = 0;\n state.whave = state.wsize;\n }\n else {\n dist = state.wsize - state.wnext;\n if (dist > copy) {\n dist = copy;\n }\n //zmemcpy(state->window + state->wnext, end - copy, dist);\n utils.arraySet(state.window, src, end - copy, dist, state.wnext);\n copy -= dist;\n if (copy) {\n //zmemcpy(state->window, end - copy, copy);\n utils.arraySet(state.window, src, end - copy, copy, 0);\n state.wnext = copy;\n state.whave = state.wsize;\n }\n else {\n state.wnext += dist;\n if (state.wnext === state.wsize) { state.wnext = 0; }\n if (state.whave < state.wsize) { state.whave += dist; }\n }\n }\n return 0;\n}\n\nfunction inflate(strm, flush) {\n var state;\n var input, output; // input/output buffers\n var next; /* next input INDEX */\n var put; /* next output INDEX */\n var have, left; /* available input and output */\n var hold; /* bit buffer */\n var bits; /* bits in bit buffer */\n var _in, _out; /* save starting available input and output */\n var copy; /* number of stored or match bytes to copy */\n var from; /* where to copy match bytes from */\n var from_source;\n var here = 0; /* current decoding table entry */\n var here_bits, here_op, here_val; // paked \"here\" denormalized (JS specific)\n //var last; /* parent table entry */\n var last_bits, last_op, last_val; // paked \"last\" denormalized (JS specific)\n var len; /* length to copy for repeats, bits to drop */\n var ret; /* return code */\n var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */\n var opts;\n\n var n; // temporary var for NEED_BITS\n\n var order = /* permutation of code lengths */\n [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ];\n\n\n if (!strm || !strm.state || !strm.output ||\n (!strm.input && strm.avail_in !== 0)) {\n return Z_STREAM_ERROR;\n }\n\n state = strm.state;\n if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */\n\n\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n _in = have;\n _out = left;\n ret = Z_OK;\n\n inf_leave: // goto emulation\n for (;;) {\n switch (state.mode) {\n case HEAD:\n if (state.wrap === 0) {\n state.mode = TYPEDO;\n break;\n }\n //=== NEEDBITS(16);\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */\n state.check = 0/*crc32(0L, Z_NULL, 0)*/;\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = FLAGS;\n break;\n }\n state.flags = 0; /* expect zlib header */\n if (state.head) {\n state.head.done = false;\n }\n if (!(state.wrap & 1) || /* check if zlib header allowed */\n (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) {\n strm.msg = 'incorrect header check';\n state.mode = BAD;\n break;\n }\n if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n len = (hold & 0x0f)/*BITS(4)*/ + 8;\n if (state.wbits === 0) {\n state.wbits = len;\n }\n else if (len > state.wbits) {\n strm.msg = 'invalid window size';\n state.mode = BAD;\n break;\n }\n state.dmax = 1 << len;\n //Tracev((stderr, \"inflate: zlib header ok\\n\"));\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = hold & 0x200 ? DICTID : TYPE;\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n break;\n case FLAGS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.flags = hold;\n if ((state.flags & 0xff) !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n if (state.flags & 0xe000) {\n strm.msg = 'unknown header flags set';\n state.mode = BAD;\n break;\n }\n if (state.head) {\n state.head.text = ((hold >> 8) & 1);\n }\n if (state.flags & 0x0200) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = TIME;\n /* falls through */\n case TIME:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.time = hold;\n }\n if (state.flags & 0x0200) {\n //=== CRC4(state.check, hold)\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n hbuf[2] = (hold >>> 16) & 0xff;\n hbuf[3] = (hold >>> 24) & 0xff;\n state.check = crc32(state.check, hbuf, 4, 0);\n //===\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = OS;\n /* falls through */\n case OS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.xflags = (hold & 0xff);\n state.head.os = (hold >> 8);\n }\n if (state.flags & 0x0200) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = EXLEN;\n /* falls through */\n case EXLEN:\n if (state.flags & 0x0400) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length = hold;\n if (state.head) {\n state.head.extra_len = hold;\n }\n if (state.flags & 0x0200) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n else if (state.head) {\n state.head.extra = null/*Z_NULL*/;\n }\n state.mode = EXTRA;\n /* falls through */\n case EXTRA:\n if (state.flags & 0x0400) {\n copy = state.length;\n if (copy > have) { copy = have; }\n if (copy) {\n if (state.head) {\n len = state.head.extra_len - state.length;\n if (!state.head.extra) {\n // Use untyped array for more convenient processing later\n state.head.extra = new Array(state.head.extra_len);\n }\n utils.arraySet(\n state.head.extra,\n input,\n next,\n // extra field is limited to 65536 bytes\n // - no need for additional size check\n copy,\n /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/\n len\n );\n //zmemcpy(state.head.extra + len, next,\n // len + copy > state.head.extra_max ?\n // state.head.extra_max - len : copy);\n }\n if (state.flags & 0x0200) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n state.length -= copy;\n }\n if (state.length) { break inf_leave; }\n }\n state.length = 0;\n state.mode = NAME;\n /* falls through */\n case NAME:\n if (state.flags & 0x0800) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n // TODO: 2 or 1 bytes?\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.name_max*/)) {\n state.head.name += String.fromCharCode(len);\n }\n } while (len && copy < have);\n\n if (state.flags & 0x0200) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.name = null;\n }\n state.length = 0;\n state.mode = COMMENT;\n /* falls through */\n case COMMENT:\n if (state.flags & 0x1000) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.comm_max*/)) {\n state.head.comment += String.fromCharCode(len);\n }\n } while (len && copy < have);\n if (state.flags & 0x0200) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.comment = null;\n }\n state.mode = HCRC;\n /* falls through */\n case HCRC:\n if (state.flags & 0x0200) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (hold !== (state.check & 0xffff)) {\n strm.msg = 'header crc mismatch';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n if (state.head) {\n state.head.hcrc = ((state.flags >> 9) & 1);\n state.head.done = true;\n }\n strm.adler = state.check = 0;\n state.mode = TYPE;\n break;\n case DICTID:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n strm.adler = state.check = zswap32(hold);\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = DICT;\n /* falls through */\n case DICT:\n if (state.havedict === 0) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n return Z_NEED_DICT;\n }\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = TYPE;\n /* falls through */\n case TYPE:\n if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case TYPEDO:\n if (state.last) {\n //--- BYTEBITS() ---//\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n state.mode = CHECK;\n break;\n }\n //=== NEEDBITS(3); */\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.last = (hold & 0x01)/*BITS(1)*/;\n //--- DROPBITS(1) ---//\n hold >>>= 1;\n bits -= 1;\n //---//\n\n switch ((hold & 0x03)/*BITS(2)*/) {\n case 0: /* stored block */\n //Tracev((stderr, \"inflate: stored block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = STORED;\n break;\n case 1: /* fixed block */\n fixedtables(state);\n //Tracev((stderr, \"inflate: fixed codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = LEN_; /* decode codes */\n if (flush === Z_TREES) {\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break inf_leave;\n }\n break;\n case 2: /* dynamic block */\n //Tracev((stderr, \"inflate: dynamic codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = TABLE;\n break;\n case 3:\n strm.msg = 'invalid block type';\n state.mode = BAD;\n }\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break;\n case STORED:\n //--- BYTEBITS() ---// /* go to byte boundary */\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) {\n strm.msg = 'invalid stored block lengths';\n state.mode = BAD;\n break;\n }\n state.length = hold & 0xffff;\n //Tracev((stderr, \"inflate: stored length %u\\n\",\n // state.length));\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = COPY_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case COPY_:\n state.mode = COPY;\n /* falls through */\n case COPY:\n copy = state.length;\n if (copy) {\n if (copy > have) { copy = have; }\n if (copy > left) { copy = left; }\n if (copy === 0) { break inf_leave; }\n //--- zmemcpy(put, next, copy); ---\n utils.arraySet(output, input, next, copy, put);\n //---//\n have -= copy;\n next += copy;\n left -= copy;\n put += copy;\n state.length -= copy;\n break;\n }\n //Tracev((stderr, \"inflate: stored end\\n\"));\n state.mode = TYPE;\n break;\n case TABLE:\n //=== NEEDBITS(14); */\n while (bits < 14) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4;\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n//#ifndef PKZIP_BUG_WORKAROUND\n if (state.nlen > 286 || state.ndist > 30) {\n strm.msg = 'too many length or distance symbols';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracev((stderr, \"inflate: table sizes ok\\n\"));\n state.have = 0;\n state.mode = LENLENS;\n /* falls through */\n case LENLENS:\n while (state.have < state.ncode) {\n //=== NEEDBITS(3);\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.lens[order[state.have++]] = (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n while (state.have < 19) {\n state.lens[order[state.have++]] = 0;\n }\n // We have separate tables & no pointers. 2 commented lines below not needed.\n //state.next = state.codes;\n //state.lencode = state.next;\n // Switch to use dynamic table\n state.lencode = state.lendyn;\n state.lenbits = 7;\n\n opts = { bits: state.lenbits };\n ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);\n state.lenbits = opts.bits;\n\n if (ret) {\n strm.msg = 'invalid code lengths set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, \"inflate: code lengths ok\\n\"));\n state.have = 0;\n state.mode = CODELENS;\n /* falls through */\n case CODELENS:\n while (state.have < state.nlen + state.ndist) {\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_val < 16) {\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.lens[state.have++] = here_val;\n }\n else {\n if (here_val === 16) {\n //=== NEEDBITS(here.bits + 2);\n n = here_bits + 2;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n if (state.have === 0) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n len = state.lens[state.have - 1];\n copy = 3 + (hold & 0x03);//BITS(2);\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n }\n else if (here_val === 17) {\n //=== NEEDBITS(here.bits + 3);\n n = here_bits + 3;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 3 + (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n else {\n //=== NEEDBITS(here.bits + 7);\n n = here_bits + 7;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 11 + (hold & 0x7f);//BITS(7);\n //--- DROPBITS(7) ---//\n hold >>>= 7;\n bits -= 7;\n //---//\n }\n if (state.have + copy > state.nlen + state.ndist) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n while (copy--) {\n state.lens[state.have++] = len;\n }\n }\n }\n\n /* handle error breaks in while */\n if (state.mode === BAD) { break; }\n\n /* check for end-of-block code (better have one) */\n if (state.lens[256] === 0) {\n strm.msg = 'invalid code -- missing end-of-block';\n state.mode = BAD;\n break;\n }\n\n /* build code tables -- note: do not change the lenbits or distbits\n values here (9 and 6) without reading the comments in inftrees.h\n concerning the ENOUGH constants, which depend on those values */\n state.lenbits = 9;\n\n opts = { bits: state.lenbits };\n ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.lenbits = opts.bits;\n // state.lencode = state.next;\n\n if (ret) {\n strm.msg = 'invalid literal/lengths set';\n state.mode = BAD;\n break;\n }\n\n state.distbits = 6;\n //state.distcode.copy(state.codes);\n // Switch to use dynamic table\n state.distcode = state.distdyn;\n opts = { bits: state.distbits };\n ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.distbits = opts.bits;\n // state.distcode = state.next;\n\n if (ret) {\n strm.msg = 'invalid distances set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, 'inflate: codes ok\\n'));\n state.mode = LEN_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case LEN_:\n state.mode = LEN;\n /* falls through */\n case LEN:\n if (have >= 6 && left >= 258) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n inflate_fast(strm, _out);\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n if (state.mode === TYPE) {\n state.back = -1;\n }\n break;\n }\n state.back = 0;\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if (here_bits <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_op && (here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.lencode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n state.length = here_val;\n if (here_op === 0) {\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n state.mode = LIT;\n break;\n }\n if (here_op & 32) {\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.back = -1;\n state.mode = TYPE;\n break;\n }\n if (here_op & 64) {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break;\n }\n state.extra = here_op & 15;\n state.mode = LENEXT;\n /* falls through */\n case LENEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", state.length));\n state.was = state.length;\n state.mode = DIST;\n /* falls through */\n case DIST:\n for (;;) {\n here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if ((here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.distcode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n if (here_op & 64) {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break;\n }\n state.offset = here_val;\n state.extra = (here_op) & 15;\n state.mode = DISTEXT;\n /* falls through */\n case DISTEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n//#ifdef INFLATE_STRICT\n if (state.offset > state.dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracevv((stderr, \"inflate: distance %u\\n\", state.offset));\n state.mode = MATCH;\n /* falls through */\n case MATCH:\n if (left === 0) { break inf_leave; }\n copy = _out - left;\n if (state.offset > copy) { /* copy from window */\n copy = state.offset - copy;\n if (copy > state.whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// Trace((stderr, \"inflate.c too far\\n\"));\n// copy -= state.whave;\n// if (copy > state.length) { copy = state.length; }\n// if (copy > left) { copy = left; }\n// left -= copy;\n// state.length -= copy;\n// do {\n// output[put++] = 0;\n// } while (--copy);\n// if (state.length === 0) { state.mode = LEN; }\n// break;\n//#endif\n }\n if (copy > state.wnext) {\n copy -= state.wnext;\n from = state.wsize - copy;\n }\n else {\n from = state.wnext - copy;\n }\n if (copy > state.length) { copy = state.length; }\n from_source = state.window;\n }\n else { /* copy from output */\n from_source = output;\n from = put - state.offset;\n copy = state.length;\n }\n if (copy > left) { copy = left; }\n left -= copy;\n state.length -= copy;\n do {\n output[put++] = from_source[from++];\n } while (--copy);\n if (state.length === 0) { state.mode = LEN; }\n break;\n case LIT:\n if (left === 0) { break inf_leave; }\n output[put++] = state.length;\n left--;\n state.mode = LEN;\n break;\n case CHECK:\n if (state.wrap) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n // Use '|' instead of '+' to make sure that result is signed\n hold |= input[next++] << bits;\n bits += 8;\n }\n //===//\n _out -= left;\n strm.total_out += _out;\n state.total += _out;\n if (_out) {\n strm.adler = state.check =\n /*UPDATE(state.check, put - _out, _out);*/\n (state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out));\n\n }\n _out = left;\n // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too\n if ((state.flags ? hold : zswap32(hold)) !== state.check) {\n strm.msg = 'incorrect data check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: check matches trailer\\n\"));\n }\n state.mode = LENGTH;\n /* falls through */\n case LENGTH:\n if (state.wrap && state.flags) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (hold !== (state.total & 0xffffffff)) {\n strm.msg = 'incorrect length check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: length matches trailer\\n\"));\n }\n state.mode = DONE;\n /* falls through */\n case DONE:\n ret = Z_STREAM_END;\n break inf_leave;\n case BAD:\n ret = Z_DATA_ERROR;\n break inf_leave;\n case MEM:\n return Z_MEM_ERROR;\n case SYNC:\n /* falls through */\n default:\n return Z_STREAM_ERROR;\n }\n }\n\n // inf_leave <- here is real place for \"goto inf_leave\", emulated via \"break inf_leave\"\n\n /*\n Return from inflate(), updating the total counts and the check value.\n If there was no progress during the inflate() call, return a buffer\n error. Call updatewindow() to create and/or update the window state.\n Note: a memory error from inflate() is non-recoverable.\n */\n\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n\n if (state.wsize || (_out !== strm.avail_out && state.mode < BAD &&\n (state.mode < CHECK || flush !== Z_FINISH))) {\n if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) {\n state.mode = MEM;\n return Z_MEM_ERROR;\n }\n }\n _in -= strm.avail_in;\n _out -= strm.avail_out;\n strm.total_in += _in;\n strm.total_out += _out;\n state.total += _out;\n if (state.wrap && _out) {\n strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/\n (state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out));\n }\n strm.data_type = state.bits + (state.last ? 64 : 0) +\n (state.mode === TYPE ? 128 : 0) +\n (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);\n if (((_in === 0 && _out === 0) || flush === Z_FINISH) && ret === Z_OK) {\n ret = Z_BUF_ERROR;\n }\n return ret;\n}\n\nfunction inflateEnd(strm) {\n\n if (!strm || !strm.state /*|| strm->zfree == (free_func)0*/) {\n return Z_STREAM_ERROR;\n }\n\n var state = strm.state;\n if (state.window) {\n state.window = null;\n }\n strm.state = null;\n return Z_OK;\n}\n\nfunction inflateGetHeader(strm, head) {\n var state;\n\n /* check state */\n if (!strm || !strm.state) { return Z_STREAM_ERROR; }\n state = strm.state;\n if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; }\n\n /* save header structure */\n state.head = head;\n head.done = false;\n return Z_OK;\n}\n\nfunction inflateSetDictionary(strm, dictionary) {\n var dictLength = dictionary.length;\n\n var state;\n var dictid;\n var ret;\n\n /* check state */\n if (!strm /* == Z_NULL */ || !strm.state /* == Z_NULL */) { return Z_STREAM_ERROR; }\n state = strm.state;\n\n if (state.wrap !== 0 && state.mode !== DICT) {\n return Z_STREAM_ERROR;\n }\n\n /* check for correct dictionary identifier */\n if (state.mode === DICT) {\n dictid = 1; /* adler32(0, null, 0)*/\n /* dictid = adler32(dictid, dictionary, dictLength); */\n dictid = adler32(dictid, dictionary, dictLength, 0);\n if (dictid !== state.check) {\n return Z_DATA_ERROR;\n }\n }\n /* copy dictionary to window using updatewindow(), which will amend the\n existing dictionary if appropriate */\n ret = updatewindow(strm, dictionary, dictLength, dictLength);\n if (ret) {\n state.mode = MEM;\n return Z_MEM_ERROR;\n }\n state.havedict = 1;\n // Tracev((stderr, \"inflate: dictionary set\\n\"));\n return Z_OK;\n}\n\nexports.inflateReset = inflateReset;\nexports.inflateReset2 = inflateReset2;\nexports.inflateResetKeep = inflateResetKeep;\nexports.inflateInit = inflateInit;\nexports.inflateInit2 = inflateInit2;\nexports.inflate = inflate;\nexports.inflateEnd = inflateEnd;\nexports.inflateGetHeader = inflateGetHeader;\nexports.inflateSetDictionary = inflateSetDictionary;\nexports.inflateInfo = 'pako inflate (from Nodeca project)';\n\n/* Not implemented\nexports.inflateCopy = inflateCopy;\nexports.inflateGetDictionary = inflateGetDictionary;\nexports.inflateMark = inflateMark;\nexports.inflatePrime = inflatePrime;\nexports.inflateSync = inflateSync;\nexports.inflateSyncPoint = inflateSyncPoint;\nexports.inflateUndermine = inflateUndermine;\n*/\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/inftrees.js\":\n/*!*************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/inftrees.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar utils = __webpack_require__(/*! ../utils/common */ \"../node_modules/pako/lib/utils/common.js\");\n\nvar MAXBITS = 15;\nvar ENOUGH_LENS = 852;\nvar ENOUGH_DISTS = 592;\n//var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nvar CODES = 0;\nvar LENS = 1;\nvar DISTS = 2;\n\nvar lbase = [ /* Length codes 257..285 base */\n 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,\n 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0\n];\n\nvar lext = [ /* Length codes 257..285 extra */\n 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,\n 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78\n];\n\nvar dbase = [ /* Distance codes 0..29 base */\n 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,\n 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,\n 8193, 12289, 16385, 24577, 0, 0\n];\n\nvar dext = [ /* Distance codes 0..29 extra */\n 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,\n 23, 23, 24, 24, 25, 25, 26, 26, 27, 27,\n 28, 28, 29, 29, 64, 64\n];\n\nmodule.exports = function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts)\n{\n var bits = opts.bits;\n //here = opts.here; /* table entry for duplication */\n\n var len = 0; /* a code's length in bits */\n var sym = 0; /* index of code symbols */\n var min = 0, max = 0; /* minimum and maximum code lengths */\n var root = 0; /* number of index bits for root table */\n var curr = 0; /* number of index bits for current table */\n var drop = 0; /* code bits to drop for sub-table */\n var left = 0; /* number of prefix codes available */\n var used = 0; /* code entries in table used */\n var huff = 0; /* Huffman code */\n var incr; /* for incrementing code, index */\n var fill; /* index for replicating entries */\n var low; /* low bits for current root entry */\n var mask; /* mask for low root bits */\n var next; /* next available space in table */\n var base = null; /* base value table to use */\n var base_index = 0;\n// var shoextra; /* extra bits table to use */\n var end; /* use base and extra for symbol > end */\n var count = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */\n var offs = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */\n var extra = null;\n var extra_index = 0;\n\n var here_bits, here_op, here_val;\n\n /*\n Process a set of code lengths to create a canonical Huffman code. The\n code lengths are lens[0..codes-1]. Each length corresponds to the\n symbols 0..codes-1. The Huffman code is generated by first sorting the\n symbols by length from short to long, and retaining the symbol order\n for codes with equal lengths. Then the code starts with all zero bits\n for the first code of the shortest length, and the codes are integer\n increments for the same length, and zeros are appended as the length\n increases. For the deflate format, these bits are stored backwards\n from their more natural integer increment ordering, and so when the\n decoding tables are built in the large loop below, the integer codes\n are incremented backwards.\n\n This routine assumes, but does not check, that all of the entries in\n lens[] are in the range 0..MAXBITS. The caller must assure this.\n 1..MAXBITS is interpreted as that code length. zero means that that\n symbol does not occur in this code.\n\n The codes are sorted by computing a count of codes for each length,\n creating from that a table of starting indices for each length in the\n sorted table, and then entering the symbols in order in the sorted\n table. The sorted table is work[], with that space being provided by\n the caller.\n\n The length counts are used for other purposes as well, i.e. finding\n the minimum and maximum length codes, determining if there are any\n codes at all, checking for a valid set of lengths, and looking ahead\n at length counts to determine sub-table sizes when building the\n decoding tables.\n */\n\n /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */\n for (len = 0; len <= MAXBITS; len++) {\n count[len] = 0;\n }\n for (sym = 0; sym < codes; sym++) {\n count[lens[lens_index + sym]]++;\n }\n\n /* bound code lengths, force root to be within code lengths */\n root = bits;\n for (max = MAXBITS; max >= 1; max--) {\n if (count[max] !== 0) { break; }\n }\n if (root > max) {\n root = max;\n }\n if (max === 0) { /* no symbols to code at all */\n //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */\n //table.bits[opts.table_index] = 1; //here.bits = (var char)1;\n //table.val[opts.table_index++] = 0; //here.val = (var short)0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n\n //table.op[opts.table_index] = 64;\n //table.bits[opts.table_index] = 1;\n //table.val[opts.table_index++] = 0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n opts.bits = 1;\n return 0; /* no symbols, but wait for decoding to report error */\n }\n for (min = 1; min < max; min++) {\n if (count[min] !== 0) { break; }\n }\n if (root < min) {\n root = min;\n }\n\n /* check for an over-subscribed or incomplete set of lengths */\n left = 1;\n for (len = 1; len <= MAXBITS; len++) {\n left <<= 1;\n left -= count[len];\n if (left < 0) {\n return -1;\n } /* over-subscribed */\n }\n if (left > 0 && (type === CODES || max !== 1)) {\n return -1; /* incomplete set */\n }\n\n /* generate offsets into symbol table for each length for sorting */\n offs[1] = 0;\n for (len = 1; len < MAXBITS; len++) {\n offs[len + 1] = offs[len] + count[len];\n }\n\n /* sort symbols by length, by symbol order within each length */\n for (sym = 0; sym < codes; sym++) {\n if (lens[lens_index + sym] !== 0) {\n work[offs[lens[lens_index + sym]]++] = sym;\n }\n }\n\n /*\n Create and fill in decoding tables. In this loop, the table being\n filled is at next and has curr index bits. The code being used is huff\n with length len. That code is converted to an index by dropping drop\n bits off of the bottom. For codes where len is less than drop + curr,\n those top drop + curr - len bits are incremented through all values to\n fill the table with replicated entries.\n\n root is the number of index bits for the root table. When len exceeds\n root, sub-tables are created pointed to by the root entry with an index\n of the low root bits of huff. This is saved in low to check for when a\n new sub-table should be started. drop is zero when the root table is\n being filled, and drop is root when sub-tables are being filled.\n\n When a new sub-table is needed, it is necessary to look ahead in the\n code lengths to determine what size sub-table is needed. The length\n counts are used for this, and so count[] is decremented as codes are\n entered in the tables.\n\n used keeps track of how many table entries have been allocated from the\n provided *table space. It is checked for LENS and DIST tables against\n the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in\n the initial root table size constants. See the comments in inftrees.h\n for more information.\n\n sym increments through all symbols, and the loop terminates when\n all codes of length max, i.e. all codes, have been processed. This\n routine permits incomplete codes, so another loop after this one fills\n in the rest of the decoding tables with invalid code markers.\n */\n\n /* set up for code type */\n // poor man optimization - use if-else instead of switch,\n // to avoid deopts in old v8\n if (type === CODES) {\n base = extra = work; /* dummy value--not used */\n end = 19;\n\n } else if (type === LENS) {\n base = lbase;\n base_index -= 257;\n extra = lext;\n extra_index -= 257;\n end = 256;\n\n } else { /* DISTS */\n base = dbase;\n extra = dext;\n end = -1;\n }\n\n /* initialize opts for loop */\n huff = 0; /* starting code */\n sym = 0; /* starting code symbol */\n len = min; /* starting code length */\n next = table_index; /* current table to fill in */\n curr = root; /* current table index bits */\n drop = 0; /* current bits to drop from code for index */\n low = -1; /* trigger new sub-table when len > root */\n used = 1 << root; /* use root table entries */\n mask = used - 1; /* mask for comparing low */\n\n /* check available table space */\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* process all codes and make table entries */\n for (;;) {\n /* create table entry */\n here_bits = len - drop;\n if (work[sym] < end) {\n here_op = 0;\n here_val = work[sym];\n }\n else if (work[sym] > end) {\n here_op = extra[extra_index + work[sym]];\n here_val = base[base_index + work[sym]];\n }\n else {\n here_op = 32 + 64; /* end of block */\n here_val = 0;\n }\n\n /* replicate for those indices with low len bits equal to huff */\n incr = 1 << (len - drop);\n fill = 1 << curr;\n min = fill; /* save offset to next table */\n do {\n fill -= incr;\n table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;\n } while (fill !== 0);\n\n /* backwards increment the len-bit code huff */\n incr = 1 << (len - 1);\n while (huff & incr) {\n incr >>= 1;\n }\n if (incr !== 0) {\n huff &= incr - 1;\n huff += incr;\n } else {\n huff = 0;\n }\n\n /* go to next symbol, update count, len */\n sym++;\n if (--count[len] === 0) {\n if (len === max) { break; }\n len = lens[lens_index + work[sym]];\n }\n\n /* create new sub-table if needed */\n if (len > root && (huff & mask) !== low) {\n /* if first time, transition to sub-tables */\n if (drop === 0) {\n drop = root;\n }\n\n /* increment past last table */\n next += min; /* here min is 1 << curr */\n\n /* determine length of next table */\n curr = len - drop;\n left = 1 << curr;\n while (curr + drop < max) {\n left -= count[curr + drop];\n if (left <= 0) { break; }\n curr++;\n left <<= 1;\n }\n\n /* check for enough space */\n used += 1 << curr;\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* point entry in root table to sub-table */\n low = huff & mask;\n /*table.op[low] = curr;\n table.bits[low] = root;\n table.val[low] = next - opts.table_index;*/\n table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;\n }\n }\n\n /* fill in remaining table entry if code is incomplete (guaranteed to have\n at most one remaining entry, since if the code is incomplete, the\n maximum code length that was allowed to get this far is one bit) */\n if (huff !== 0) {\n //table.op[next + huff] = 64; /* invalid code marker */\n //table.bits[next + huff] = len - drop;\n //table.val[next + huff] = 0;\n table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;\n }\n\n /* set return parameters */\n //opts.table_index += used;\n opts.bits = root;\n return 0;\n};\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/messages.js\":\n/*!*************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/messages.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n 2: 'need dictionary', /* Z_NEED_DICT 2 */\n 1: 'stream end', /* Z_STREAM_END 1 */\n 0: '', /* Z_OK 0 */\n '-1': 'file error', /* Z_ERRNO (-1) */\n '-2': 'stream error', /* Z_STREAM_ERROR (-2) */\n '-3': 'data error', /* Z_DATA_ERROR (-3) */\n '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */\n '-5': 'buffer error', /* Z_BUF_ERROR (-5) */\n '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */\n};\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/trees.js\":\n/*!**********************************************!*\\\n !*** ../node_modules/pako/lib/zlib/trees.js ***!\n \\**********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n/* eslint-disable space-unary-ops */\n\nvar utils = __webpack_require__(/*! ../utils/common */ \"../node_modules/pako/lib/utils/common.js\");\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n//var Z_FILTERED = 1;\n//var Z_HUFFMAN_ONLY = 2;\n//var Z_RLE = 3;\nvar Z_FIXED = 4;\n//var Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\nvar Z_BINARY = 0;\nvar Z_TEXT = 1;\n//var Z_ASCII = 1; // = Z_TEXT\nvar Z_UNKNOWN = 2;\n\n/*============================================================================*/\n\n\nfunction zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n// From zutil.h\n\nvar STORED_BLOCK = 0;\nvar STATIC_TREES = 1;\nvar DYN_TREES = 2;\n/* The three kinds of block type */\n\nvar MIN_MATCH = 3;\nvar MAX_MATCH = 258;\n/* The minimum and maximum match lengths */\n\n// From deflate.h\n/* ===========================================================================\n * Internal compression state.\n */\n\nvar LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\n\nvar LITERALS = 256;\n/* number of literal bytes 0..255 */\n\nvar L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\n\nvar D_CODES = 30;\n/* number of distance codes */\n\nvar BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\n\nvar HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\n\nvar MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nvar Buf_size = 16;\n/* size of bit buffer in bi_buf */\n\n\n/* ===========================================================================\n * Constants\n */\n\nvar MAX_BL_BITS = 7;\n/* Bit length codes must not exceed MAX_BL_BITS bits */\n\nvar END_BLOCK = 256;\n/* end of block literal code */\n\nvar REP_3_6 = 16;\n/* repeat previous bit length 3-6 times (2 bits of repeat count) */\n\nvar REPZ_3_10 = 17;\n/* repeat a zero length 3-10 times (3 bits of repeat count) */\n\nvar REPZ_11_138 = 18;\n/* repeat a zero length 11-138 times (7 bits of repeat count) */\n\n/* eslint-disable comma-spacing,array-bracket-spacing */\nvar extra_lbits = /* extra bits for each length code */\n [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];\n\nvar extra_dbits = /* extra bits for each distance code */\n [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];\n\nvar extra_blbits = /* extra bits for each bit length code */\n [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];\n\nvar bl_order =\n [16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];\n/* eslint-enable comma-spacing,array-bracket-spacing */\n\n/* The lengths of the bit length codes are sent in order of decreasing\n * probability, to avoid transmitting the lengths for unused bit length codes.\n */\n\n/* ===========================================================================\n * Local data. These are initialized only once.\n */\n\n// We pre-fill arrays with 0 to avoid uninitialized gaps\n\nvar DIST_CODE_LEN = 512; /* see definition of array dist_code below */\n\n// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1\nvar static_ltree = new Array((L_CODES + 2) * 2);\nzero(static_ltree);\n/* The static literal tree. Since the bit lengths are imposed, there is no\n * need for the L_CODES extra codes used during heap construction. However\n * The codes 286 and 287 are needed to build a canonical tree (see _tr_init\n * below).\n */\n\nvar static_dtree = new Array(D_CODES * 2);\nzero(static_dtree);\n/* The static distance tree. (Actually a trivial tree since all codes use\n * 5 bits.)\n */\n\nvar _dist_code = new Array(DIST_CODE_LEN);\nzero(_dist_code);\n/* Distance codes. The first 256 values correspond to the distances\n * 3 .. 258, the last 256 values correspond to the top 8 bits of\n * the 15 bit distances.\n */\n\nvar _length_code = new Array(MAX_MATCH - MIN_MATCH + 1);\nzero(_length_code);\n/* length code for each normalized match length (0 == MIN_MATCH) */\n\nvar base_length = new Array(LENGTH_CODES);\nzero(base_length);\n/* First normalized length for each code (0 = MIN_MATCH) */\n\nvar base_dist = new Array(D_CODES);\nzero(base_dist);\n/* First normalized distance for each code (0 = distance of 1) */\n\n\nfunction StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {\n\n this.static_tree = static_tree; /* static tree or NULL */\n this.extra_bits = extra_bits; /* extra bits for each code or NULL */\n this.extra_base = extra_base; /* base index for extra_bits */\n this.elems = elems; /* max number of elements in the tree */\n this.max_length = max_length; /* max bit length for the codes */\n\n // show if `static_tree` has data or dummy - needed for monomorphic objects\n this.has_stree = static_tree && static_tree.length;\n}\n\n\nvar static_l_desc;\nvar static_d_desc;\nvar static_bl_desc;\n\n\nfunction TreeDesc(dyn_tree, stat_desc) {\n this.dyn_tree = dyn_tree; /* the dynamic tree */\n this.max_code = 0; /* largest code with non zero frequency */\n this.stat_desc = stat_desc; /* the corresponding static tree */\n}\n\n\n\nfunction d_code(dist) {\n return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];\n}\n\n\n/* ===========================================================================\n * Output a short LSB first on the stream.\n * IN assertion: there is enough room in pendingBuf.\n */\nfunction put_short(s, w) {\n// put_byte(s, (uch)((w) & 0xff));\n// put_byte(s, (uch)((ush)(w) >> 8));\n s.pending_buf[s.pending++] = (w) & 0xff;\n s.pending_buf[s.pending++] = (w >>> 8) & 0xff;\n}\n\n\n/* ===========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\nfunction send_bits(s, value, length) {\n if (s.bi_valid > (Buf_size - length)) {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n put_short(s, s.bi_buf);\n s.bi_buf = value >> (Buf_size - s.bi_valid);\n s.bi_valid += length - Buf_size;\n } else {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n s.bi_valid += length;\n }\n}\n\n\nfunction send_code(s, c, tree) {\n send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);\n}\n\n\n/* ===========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\nfunction bi_reverse(code, len) {\n var res = 0;\n do {\n res |= code & 1;\n code >>>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >>> 1;\n}\n\n\n/* ===========================================================================\n * Flush the bit buffer, keeping at most 7 bits in it.\n */\nfunction bi_flush(s) {\n if (s.bi_valid === 16) {\n put_short(s, s.bi_buf);\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n } else if (s.bi_valid >= 8) {\n s.pending_buf[s.pending++] = s.bi_buf & 0xff;\n s.bi_buf >>= 8;\n s.bi_valid -= 8;\n }\n}\n\n\n/* ===========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\nfunction gen_bitlen(s, desc)\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n{\n var tree = desc.dyn_tree;\n var max_code = desc.max_code;\n var stree = desc.stat_desc.static_tree;\n var has_stree = desc.stat_desc.has_stree;\n var extra = desc.stat_desc.extra_bits;\n var base = desc.stat_desc.extra_base;\n var max_length = desc.stat_desc.max_length;\n var h; /* heap index */\n var n, m; /* iterate over the tree elements */\n var bits; /* bit length */\n var xbits; /* extra bits */\n var f; /* frequency */\n var overflow = 0; /* number of elements with bit length too large */\n\n for (bits = 0; bits <= MAX_BITS; bits++) {\n s.bl_count[bits] = 0;\n }\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */\n\n for (h = s.heap_max + 1; h < HEAP_SIZE; h++) {\n n = s.heap[h];\n bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n * 2 + 1]/*.Len*/ = bits;\n /* We overwrite tree[n].Dad which is no longer needed */\n\n if (n > max_code) { continue; } /* not a leaf node */\n\n s.bl_count[bits]++;\n xbits = 0;\n if (n >= base) {\n xbits = extra[n - base];\n }\n f = tree[n * 2]/*.Freq*/;\n s.opt_len += f * (bits + xbits);\n if (has_stree) {\n s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);\n }\n }\n if (overflow === 0) { return; }\n\n // Trace((stderr,\"\\nbit length overflow\\n\"));\n /* This happens for example on obj2 and pic of the Calgary corpus */\n\n /* Find the first bit length which could increase: */\n do {\n bits = max_length - 1;\n while (s.bl_count[bits] === 0) { bits--; }\n s.bl_count[bits]--; /* move one leaf down the tree */\n s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */\n s.bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits !== 0; bits--) {\n n = s.bl_count[bits];\n while (n !== 0) {\n m = s.heap[--h];\n if (m > max_code) { continue; }\n if (tree[m * 2 + 1]/*.Len*/ !== bits) {\n // Trace((stderr,\"code %d bits %d->%d\\n\", m, tree[m].Len, bits));\n s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;\n tree[m * 2 + 1]/*.Len*/ = bits;\n }\n n--;\n }\n }\n}\n\n\n/* ===========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\nfunction gen_codes(tree, max_code, bl_count)\n// ct_data *tree; /* the tree to decorate */\n// int max_code; /* largest code with non zero frequency */\n// ushf *bl_count; /* number of codes at each bit length */\n{\n var next_code = new Array(MAX_BITS + 1); /* next code value for each bit length */\n var code = 0; /* running code value */\n var bits; /* bit index */\n var n; /* code index */\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= MAX_BITS; bits++) {\n next_code[bits] = code = (code + bl_count[bits - 1]) << 1;\n }\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n //Assert (code + bl_count[MAX_BITS]-1 == (1< length code (0..28) */\n length = 0;\n for (code = 0; code < LENGTH_CODES - 1; code++) {\n base_length[code] = length;\n for (n = 0; n < (1 << extra_lbits[code]); n++) {\n _length_code[length++] = code;\n }\n }\n //Assert (length == 256, \"tr_static_init: length != 256\");\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n _length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n base_dist[code] = dist;\n for (n = 0; n < (1 << extra_dbits[code]); n++) {\n _dist_code[dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: dist != 256\");\n dist >>= 7; /* from now on, all distances are divided by 128 */\n for (; code < D_CODES; code++) {\n base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {\n _dist_code[256 + dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: 256+dist != 512\");\n\n /* Construct the codes of the static literal tree */\n for (bits = 0; bits <= MAX_BITS; bits++) {\n bl_count[bits] = 0;\n }\n\n n = 0;\n while (n <= 143) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n while (n <= 255) {\n static_ltree[n * 2 + 1]/*.Len*/ = 9;\n n++;\n bl_count[9]++;\n }\n while (n <= 279) {\n static_ltree[n * 2 + 1]/*.Len*/ = 7;\n n++;\n bl_count[7]++;\n }\n while (n <= 287) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n gen_codes(static_ltree, L_CODES + 1, bl_count);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < D_CODES; n++) {\n static_dtree[n * 2 + 1]/*.Len*/ = 5;\n static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);\n }\n\n // Now data ready and we can init static trees\n static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS + 1, L_CODES, MAX_BITS);\n static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS);\n static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS);\n\n //static_init_done = true;\n}\n\n\n/* ===========================================================================\n * Initialize a new block.\n */\nfunction init_block(s) {\n var n; /* iterates over tree elements */\n\n /* Initialize the trees. */\n for (n = 0; n < L_CODES; n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < D_CODES; n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < BL_CODES; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }\n\n s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;\n s.opt_len = s.static_len = 0;\n s.last_lit = s.matches = 0;\n}\n\n\n/* ===========================================================================\n * Flush the bit buffer and align the output on a byte boundary\n */\nfunction bi_windup(s)\n{\n if (s.bi_valid > 8) {\n put_short(s, s.bi_buf);\n } else if (s.bi_valid > 0) {\n //put_byte(s, (Byte)s->bi_buf);\n s.pending_buf[s.pending++] = s.bi_buf;\n }\n s.bi_buf = 0;\n s.bi_valid = 0;\n}\n\n/* ===========================================================================\n * Copy a stored block, storing first the length and its\n * one's complement if requested.\n */\nfunction copy_block(s, buf, len, header)\n//DeflateState *s;\n//charf *buf; /* the input data */\n//unsigned len; /* its length */\n//int header; /* true if block header must be written */\n{\n bi_windup(s); /* align on byte boundary */\n\n if (header) {\n put_short(s, len);\n put_short(s, ~len);\n }\n// while (len--) {\n// put_byte(s, *buf++);\n// }\n utils.arraySet(s.pending_buf, s.window, buf, len, s.pending);\n s.pending += len;\n}\n\n/* ===========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\nfunction smaller(tree, n, m, depth) {\n var _n2 = n * 2;\n var _m2 = m * 2;\n return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||\n (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));\n}\n\n/* ===========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\nfunction pqdownheap(s, tree, k)\n// deflate_state *s;\n// ct_data *tree; /* the tree to restore */\n// int k; /* node to move down */\n{\n var v = s.heap[k];\n var j = k << 1; /* left son of k */\n while (j <= s.heap_len) {\n /* Set j to the smallest of the two sons: */\n if (j < s.heap_len &&\n smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {\n j++;\n }\n /* Exit if v is smaller than both sons */\n if (smaller(tree, v, s.heap[j], s.depth)) { break; }\n\n /* Exchange v with the smallest son */\n s.heap[k] = s.heap[j];\n k = j;\n\n /* And continue down the tree, setting j to the left son of k */\n j <<= 1;\n }\n s.heap[k] = v;\n}\n\n\n// inlined manually\n// var SMALLEST = 1;\n\n/* ===========================================================================\n * Send the block data compressed using the given Huffman trees\n */\nfunction compress_block(s, ltree, dtree)\n// deflate_state *s;\n// const ct_data *ltree; /* literal tree */\n// const ct_data *dtree; /* distance tree */\n{\n var dist; /* distance of matched string */\n var lc; /* match length or unmatched char (if dist == 0) */\n var lx = 0; /* running index in l_buf */\n var code; /* the code to send */\n var extra; /* number of extra bits to send */\n\n if (s.last_lit !== 0) {\n do {\n dist = (s.pending_buf[s.d_buf + lx * 2] << 8) | (s.pending_buf[s.d_buf + lx * 2 + 1]);\n lc = s.pending_buf[s.l_buf + lx];\n lx++;\n\n if (dist === 0) {\n send_code(s, lc, ltree); /* send a literal byte */\n //Tracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n /* Here, lc is the match length - MIN_MATCH */\n code = _length_code[lc];\n send_code(s, code + LITERALS + 1, ltree); /* send the length code */\n extra = extra_lbits[code];\n if (extra !== 0) {\n lc -= base_length[code];\n send_bits(s, lc, extra); /* send the extra length bits */\n }\n dist--; /* dist is now the match distance - 1 */\n code = d_code(dist);\n //Assert (code < D_CODES, \"bad d_code\");\n\n send_code(s, code, dtree); /* send the distance code */\n extra = extra_dbits[code];\n if (extra !== 0) {\n dist -= base_dist[code];\n send_bits(s, dist, extra); /* send the extra distance bits */\n }\n } /* literal or match pair ? */\n\n /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */\n //Assert((uInt)(s->pending) < s->lit_bufsize + 2*lx,\n // \"pendingBuf overflow\");\n\n } while (lx < s.last_lit);\n }\n\n send_code(s, END_BLOCK, ltree);\n}\n\n\n/* ===========================================================================\n * Construct one Huffman tree and assigns the code bit strings and lengths.\n * Update the total bit length for the current block.\n * IN assertion: the field freq is set for all tree elements.\n * OUT assertions: the fields len and code are set to the optimal bit length\n * and corresponding code. The length opt_len is updated; static_len is\n * also updated if stree is not null. The field max_code is set.\n */\nfunction build_tree(s, desc)\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n{\n var tree = desc.dyn_tree;\n var stree = desc.stat_desc.static_tree;\n var has_stree = desc.stat_desc.has_stree;\n var elems = desc.stat_desc.elems;\n var n, m; /* iterate over heap elements */\n var max_code = -1; /* largest code with non zero frequency */\n var node; /* new node being created */\n\n /* Construct the initial heap, with least frequent element in\n * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].\n * heap[0] is not used.\n */\n s.heap_len = 0;\n s.heap_max = HEAP_SIZE;\n\n for (n = 0; n < elems; n++) {\n if (tree[n * 2]/*.Freq*/ !== 0) {\n s.heap[++s.heap_len] = max_code = n;\n s.depth[n] = 0;\n\n } else {\n tree[n * 2 + 1]/*.Len*/ = 0;\n }\n }\n\n /* The pkzip format requires that at least one distance code exists,\n * and that at least one bit should be sent even if there is only one\n * possible code. So to avoid special checks later on we force at least\n * two codes of non zero frequency.\n */\n while (s.heap_len < 2) {\n node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);\n tree[node * 2]/*.Freq*/ = 1;\n s.depth[node] = 0;\n s.opt_len--;\n\n if (has_stree) {\n s.static_len -= stree[node * 2 + 1]/*.Len*/;\n }\n /* node is 0 or 1 so it does not have extra bits */\n }\n desc.max_code = max_code;\n\n /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,\n * establish sub-heaps of increasing lengths:\n */\n for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n node = elems; /* next internal node of the tree */\n do {\n //pqremove(s, tree, n); /* n = node of least frequency */\n /*** pqremove ***/\n n = s.heap[1/*SMALLEST*/];\n s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];\n pqdownheap(s, tree, 1/*SMALLEST*/);\n /***/\n\n m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */\n\n s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */\n s.heap[--s.heap_max] = m;\n\n /* Create a new node father of n and m */\n tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;\n s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;\n tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;\n\n /* and insert the new node in the heap */\n s.heap[1/*SMALLEST*/] = node++;\n pqdownheap(s, tree, 1/*SMALLEST*/);\n\n } while (s.heap_len >= 2);\n\n s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n gen_bitlen(s, desc);\n\n /* The field len is now set, we can generate the bit codes */\n gen_codes(tree, max_code, s.bl_count);\n}\n\n\n/* ===========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree.\n */\nfunction scan_tree(s, tree, max_code)\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n{\n var n; /* iterates over all tree elements */\n var prevlen = -1; /* last emitted length */\n var curlen; /* length of current code */\n\n var nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n var count = 0; /* repeat count of the current code */\n var max_count = 7; /* max repeat count */\n var min_count = 4; /* min repeat count */\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n s.bl_tree[curlen * 2]/*.Freq*/ += count;\n\n } else if (curlen !== 0) {\n\n if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }\n s.bl_tree[REP_3_6 * 2]/*.Freq*/++;\n\n } else if (count <= 10) {\n s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;\n\n } else {\n s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;\n }\n\n count = 0;\n prevlen = curlen;\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n}\n\n\n/* ===========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\nfunction send_tree(s, tree, max_code)\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n{\n var n; /* iterates over all tree elements */\n var prevlen = -1; /* last emitted length */\n var curlen; /* length of current code */\n\n var nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n var count = 0; /* repeat count of the current code */\n var max_count = 7; /* max repeat count */\n var min_count = 4; /* min repeat count */\n\n /* tree[max_code+1].Len = -1; */ /* guard already set */\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);\n\n } else if (curlen !== 0) {\n if (curlen !== prevlen) {\n send_code(s, curlen, s.bl_tree);\n count--;\n }\n //Assert(count >= 3 && count <= 6, \" 3_6?\");\n send_code(s, REP_3_6, s.bl_tree);\n send_bits(s, count - 3, 2);\n\n } else if (count <= 10) {\n send_code(s, REPZ_3_10, s.bl_tree);\n send_bits(s, count - 3, 3);\n\n } else {\n send_code(s, REPZ_11_138, s.bl_tree);\n send_bits(s, count - 11, 7);\n }\n\n count = 0;\n prevlen = curlen;\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n}\n\n\n/* ===========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\nfunction build_bl_tree(s) {\n var max_blindex; /* index of last bit length code of non zero freq */\n\n /* Determine the bit length frequencies for literal and distance trees */\n scan_tree(s, s.dyn_ltree, s.l_desc.max_code);\n scan_tree(s, s.dyn_dtree, s.d_desc.max_code);\n\n /* Build the bit length tree: */\n build_tree(s, s.bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = BL_CODES - 1; max_blindex >= 3; max_blindex--) {\n if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {\n break;\n }\n }\n /* Update opt_len to include the bit length tree and counts */\n s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n //Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n // s->opt_len, s->static_len));\n\n return max_blindex;\n}\n\n\n/* ===========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\nfunction send_all_trees(s, lcodes, dcodes, blcodes)\n// deflate_state *s;\n// int lcodes, dcodes, blcodes; /* number of codes for each tree */\n{\n var rank; /* index in bl_order */\n\n //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n // \"too many codes\");\n //Tracev((stderr, \"\\nbl counts: \"));\n send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */\n send_bits(s, dcodes - 1, 5);\n send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */\n for (rank = 0; rank < blcodes; rank++) {\n //Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);\n }\n //Tracev((stderr, \"\\nbl tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */\n //Tracev((stderr, \"\\nlit tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */\n //Tracev((stderr, \"\\ndist tree: sent %ld\", s->bits_sent));\n}\n\n\n/* ===========================================================================\n * Check if the data type is TEXT or BINARY, using the following algorithm:\n * - TEXT if the two conditions below are satisfied:\n * a) There are no non-portable control characters belonging to the\n * \"black list\" (0..6, 14..25, 28..31).\n * b) There is at least one printable character belonging to the\n * \"white list\" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).\n * - BINARY otherwise.\n * - The following partially-portable control characters form a\n * \"gray list\" that is ignored in this detection algorithm:\n * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).\n * IN assertion: the fields Freq of dyn_ltree are set.\n */\nfunction detect_data_type(s) {\n /* black_mask is the bit mask of black-listed bytes\n * set bits 0..6, 14..25, and 28..31\n * 0xf3ffc07f = binary 11110011111111111100000001111111\n */\n var black_mask = 0xf3ffc07f;\n var n;\n\n /* Check for non-textual (\"black-listed\") bytes. */\n for (n = 0; n <= 31; n++, black_mask >>>= 1) {\n if ((black_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {\n return Z_BINARY;\n }\n }\n\n /* Check for textual (\"white-listed\") bytes. */\n if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||\n s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n for (n = 32; n < LITERALS; n++) {\n if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n }\n\n /* There are no \"black-listed\" or \"white-listed\" bytes:\n * this stream either is empty or has tolerated (\"gray-listed\") bytes only.\n */\n return Z_BINARY;\n}\n\n\nvar static_init_done = false;\n\n/* ===========================================================================\n * Initialize the tree data structures for a new zlib stream.\n */\nfunction _tr_init(s)\n{\n\n if (!static_init_done) {\n tr_static_init();\n static_init_done = true;\n }\n\n s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc);\n s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc);\n s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);\n\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n /* Initialize the first block of the first file: */\n init_block(s);\n}\n\n\n/* ===========================================================================\n * Send a stored block\n */\nfunction _tr_stored_block(s, buf, stored_len, last)\n//DeflateState *s;\n//charf *buf; /* input block */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n{\n send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); /* send block type */\n copy_block(s, buf, stored_len, true); /* with header */\n}\n\n\n/* ===========================================================================\n * Send one empty static block to give enough lookahead for inflate.\n * This takes 10 bits, of which 7 may remain in the bit buffer.\n */\nfunction _tr_align(s) {\n send_bits(s, STATIC_TREES << 1, 3);\n send_code(s, END_BLOCK, static_ltree);\n bi_flush(s);\n}\n\n\n/* ===========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and output the encoded block to the zip file.\n */\nfunction _tr_flush_block(s, buf, stored_len, last)\n//DeflateState *s;\n//charf *buf; /* input block, or NULL if too old */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n{\n var opt_lenb, static_lenb; /* opt_len and static_len in bytes */\n var max_blindex = 0; /* index of last bit length code of non zero freq */\n\n /* Build the Huffman trees unless a stored block is forced */\n if (s.level > 0) {\n\n /* Check if the file is binary or text */\n if (s.strm.data_type === Z_UNKNOWN) {\n s.strm.data_type = detect_data_type(s);\n }\n\n /* Construct the literal and distance trees */\n build_tree(s, s.l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n\n build_tree(s, s.d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = build_bl_tree(s);\n\n /* Determine the best encoding. Compute the block lengths in bytes. */\n opt_lenb = (s.opt_len + 3 + 7) >>> 3;\n static_lenb = (s.static_len + 3 + 7) >>> 3;\n\n // Tracev((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u \",\n // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,\n // s->last_lit));\n\n if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }\n\n } else {\n // Assert(buf != (char*)0, \"lost buf\");\n opt_lenb = static_lenb = stored_len + 5; /* force a stored block */\n }\n\n if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {\n /* 4: two words for the lengths */\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n _tr_stored_block(s, buf, stored_len, last);\n\n } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) {\n\n send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);\n compress_block(s, static_ltree, static_dtree);\n\n } else {\n send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);\n send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);\n compress_block(s, s.dyn_ltree, s.dyn_dtree);\n }\n // Assert (s->compressed_len == s->bits_sent, \"bad compressed size\");\n /* The above check is made mod 2^32, for files larger than 512 MB\n * and uLong implemented on 32 bits.\n */\n init_block(s);\n\n if (last) {\n bi_windup(s);\n }\n // Tracev((stderr,\"\\ncomprlen %lu(%lu) \", s->compressed_len>>3,\n // s->compressed_len-7*last));\n}\n\n/* ===========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\nfunction _tr_tally(s, dist, lc)\n// deflate_state *s;\n// unsigned dist; /* distance of matched string */\n// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */\n{\n //var out_length, in_length, dcode;\n\n s.pending_buf[s.d_buf + s.last_lit * 2] = (dist >>> 8) & 0xff;\n s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 0xff;\n\n s.pending_buf[s.l_buf + s.last_lit] = lc & 0xff;\n s.last_lit++;\n\n if (dist === 0) {\n /* lc is the unmatched char */\n s.dyn_ltree[lc * 2]/*.Freq*/++;\n } else {\n s.matches++;\n /* Here, lc is the match length - MIN_MATCH */\n dist--; /* dist = match distance - 1 */\n //Assert((ush)dist < (ush)MAX_DIST(s) &&\n // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n // (ush)d_code(dist) < (ush)D_CODES, \"_tr_tally: bad match\");\n\n s.dyn_ltree[(_length_code[lc] + LITERALS + 1) * 2]/*.Freq*/++;\n s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n\n//#ifdef TRUNCATE_BLOCK\n// /* Try to guess if it is profitable to stop the current block here */\n// if ((s.last_lit & 0x1fff) === 0 && s.level > 2) {\n// /* Compute an upper bound for the compressed length */\n// out_length = s.last_lit*8;\n// in_length = s.strstart - s.block_start;\n//\n// for (dcode = 0; dcode < D_CODES; dcode++) {\n// out_length += s.dyn_dtree[dcode*2]/*.Freq*/ * (5 + extra_dbits[dcode]);\n// }\n// out_length >>>= 3;\n// //Tracev((stderr,\"\\nlast_lit %u, in %ld, out ~%ld(%ld%%) \",\n// // s->last_lit, in_length, out_length,\n// // 100L - out_length*100L/in_length));\n// if (s.matches < (s.last_lit>>1)/*int /2*/ && out_length < (in_length>>1)/*int /2*/) {\n// return true;\n// }\n// }\n//#endif\n\n return (s.last_lit === s.lit_bufsize - 1);\n /* We avoid equality with lit_bufsize because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n}\n\nexports._tr_init = _tr_init;\nexports._tr_stored_block = _tr_stored_block;\nexports._tr_flush_block = _tr_flush_block;\nexports._tr_tally = _tr_tally;\nexports._tr_align = _tr_align;\n\n\n/***/ }),\n\n/***/ \"../node_modules/pako/lib/zlib/zstream.js\":\n/*!************************************************!*\\\n !*** ../node_modules/pako/lib/zlib/zstream.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction ZStream() {\n /* next input byte */\n this.input = null; // JS specific, because we have no pointers\n this.next_in = 0;\n /* number of bytes available at input */\n this.avail_in = 0;\n /* total number of input bytes read so far */\n this.total_in = 0;\n /* next output byte should be put there */\n this.output = null; // JS specific, because we have no pointers\n this.next_out = 0;\n /* remaining free space at output */\n this.avail_out = 0;\n /* total number of bytes output so far */\n this.total_out = 0;\n /* last error message, NULL if no error */\n this.msg = ''/*Z_NULL*/;\n /* not visible by applications */\n this.state = null;\n /* best guess about the data type: binary or text */\n this.data_type = 2/*Z_UNKNOWN*/;\n /* adler32 value of the uncompressed data */\n this.adler = 0;\n}\n\nmodule.exports = ZStream;\n\n\n/***/ }),\n\n/***/ \"./shared/calculateMinMax.js\":\n/*!***********************************!*\\\n !*** ./shared/calculateMinMax.js ***!\n \\***********************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return calculateMinMax; });\n/* harmony import */ var _getMinMax_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getMinMax.js */ \"./shared/getMinMax.js\");\n\n/**\n * Check the minimum and maximum values in the imageFrame pixel data\n * match with the provided smallestPixelValue and largestPixelValue metaData.\n *\n * If 'strict' is true, log to the console a warning if these values do not match.\n * Otherwise, correct them automatically.\n *\n * @param {Object} imageFrame\n * @param {Boolean} strict If 'strict' is true, log to the console a warning if these values do not match.\n * Otherwise, correct them automatically.Default is true.\n */\n\nfunction calculateMinMax(imageFrame) {\n var strict = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var minMax = Object(_getMinMax_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(imageFrame.pixelData);\n var mustAssign = !(isNumber(imageFrame.smallestPixelValue) && isNumber(imageFrame.largestPixelValue));\n\n if (strict === true && !mustAssign) {\n if (imageFrame.smallestPixelValue !== minMax.min) {\n console.warn('Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably.');\n }\n\n if (imageFrame.largestPixelValue !== minMax.max) {\n console.warn('Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably.');\n }\n } else {\n imageFrame.smallestPixelValue = minMax.min;\n imageFrame.largestPixelValue = minMax.max;\n }\n}\n\nfunction isNumber(numValue) {\n return typeof numValue === 'number';\n}\n\n/***/ }),\n\n/***/ \"./shared/decodeImageFrame.js\":\n/*!************************************!*\\\n !*** ./shared/decodeImageFrame.js ***!\n \\************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./decoders/decodeLittleEndian.js */ \"./shared/decoders/decodeLittleEndian.js\");\n/* harmony import */ var _decoders_decodeBigEndian_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decoders/decodeBigEndian.js */ \"./shared/decoders/decodeBigEndian.js\");\n/* harmony import */ var _decoders_decodeRLE_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./decoders/decodeRLE.js */ \"./shared/decoders/decodeRLE.js\");\n/* harmony import */ var _decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./decoders/decodeJPEGBaseline.js */ \"./shared/decoders/decodeJPEGBaseline.js\");\n/* harmony import */ var _decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./decoders/decodeJPEGLossless.js */ \"./shared/decoders/decodeJPEGLossless.js\");\n/* harmony import */ var _decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./decoders/decodeJPEGLS.js */ \"./shared/decoders/decodeJPEGLS.js\");\n/* harmony import */ var _decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./decoders/decodeJPEG2000.js */ \"./shared/decoders/decodeJPEG2000.js\");\n\n\n\n\n\n\n\n\nfunction decodeImageFrame(imageFrame, transferSyntax, pixelData, decodeConfig, options) {\n var start = new Date().getTime();\n\n if (transferSyntax === '1.2.840.10008.1.2') {\n // Implicit VR Little Endian\n imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.1') {\n // Explicit VR Little Endian\n imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.2') {\n // Explicit VR Big Endian (retired)\n imageFrame = Object(_decoders_decodeBigEndian_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.1.99') {\n // Deflate transfer syntax (deflated by dicomParser)\n imageFrame = Object(_decoders_decodeLittleEndian_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.5') {\n // RLE Lossless\n imageFrame = Object(_decoders_decodeRLE_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.50') {\n // JPEG Baseline lossy process 1 (8 bit)\n imageFrame = Object(_decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.51') {\n // JPEG Baseline lossy process 2 & 4 (12 bit)\n imageFrame = Object(_decoders_decodeJPEGBaseline_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.57') {\n // JPEG Lossless, Nonhierarchical (Processes 14)\n imageFrame = Object(_decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.70') {\n // JPEG Lossless, Nonhierarchical (Processes 14 [Selection 1])\n imageFrame = Object(_decoders_decodeJPEGLossless_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.80') {\n // JPEG-LS Lossless Image Compression\n imageFrame = Object(_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.81') {\n // JPEG-LS Lossy (Near-Lossless) Image Compression\n imageFrame = Object(_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(imageFrame, pixelData);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.90') {\n // JPEG 2000 Lossless\n imageFrame = Object(_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(imageFrame, pixelData, decodeConfig, options);\n } else if (transferSyntax === '1.2.840.10008.1.2.4.91') {\n // JPEG 2000 Lossy\n imageFrame = Object(_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(imageFrame, pixelData, decodeConfig, options);\n } else {\n throw new Error(\"no decoder for transfer syntax \".concat(transferSyntax));\n }\n /* Don't know if these work...\n // JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only)\n else if(transferSyntax === \"1.2.840.10008.1.2.4.92\")\n {\n return decodeJPEG2000(dataSet, frame);\n }\n // JPEG 2000 Part 2 Multicomponent Image Compression\n else if(transferSyntax === \"1.2.840.10008.1.2.4.93\")\n {\n return decodeJPEG2000(dataSet, frame);\n }\n */\n\n\n var shouldShift = imageFrame.pixelRepresentation !== undefined && imageFrame.pixelRepresentation === 1;\n var shift = shouldShift && imageFrame.bitsStored !== undefined ? 32 - imageFrame.bitsStored : undefined;\n\n if (shouldShift && shift !== undefined) {\n for (var i = 0; i < imageFrame.pixelData.length; i++) {\n // eslint-disable-next-line no-bitwise\n imageFrame.pixelData[i] = imageFrame.pixelData[i] << shift >> shift;\n }\n }\n\n var end = new Date().getTime();\n imageFrame.decodeTimeInMS = end - start;\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeImageFrame);\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeBigEndian.js\":\n/*!********************************************!*\\\n !*** ./shared/decoders/decodeBigEndian.js ***!\n \\********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* eslint no-bitwise: 0 */\nfunction swap16(val) {\n return (val & 0xFF) << 8 | val >> 8 & 0xFF;\n}\n\nfunction decodeBigEndian(imageFrame, pixelData) {\n if (imageFrame.bitsAllocated === 16) {\n var arrayBuffer = pixelData.buffer;\n var offset = pixelData.byteOffset;\n var length = pixelData.length; // if pixel data is not aligned on even boundary, shift it so we can create the 16 bit array\n // buffers on it\n\n if (offset % 2) {\n arrayBuffer = arrayBuffer.slice(offset);\n offset = 0;\n }\n\n if (imageFrame.pixelRepresentation === 0) {\n imageFrame.pixelData = new Uint16Array(arrayBuffer, offset, length / 2);\n } else {\n imageFrame.pixelData = new Int16Array(arrayBuffer, offset, length / 2);\n } // Do the byte swap\n\n\n for (var i = 0; i < imageFrame.pixelData.length; i++) {\n imageFrame.pixelData[i] = swap16(imageFrame.pixelData[i]);\n }\n } else if (imageFrame.bitsAllocated === 8) {\n imageFrame.pixelData = pixelData;\n }\n\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeBigEndian);\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeJPEG2000.js\":\n/*!*******************************************!*\\\n !*** ./shared/decoders/decodeJPEG2000.js ***!\n \\*******************************************/\n/*! exports provided: default, initializeJPEG2000 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initializeJPEG2000\", function() { return initializeJPEG2000; });\n/* harmony import */ var _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/openJPEG-FixedMemory.js */ \"../codecs/openJPEG-FixedMemory.js\");\n/* harmony import */ var _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../codecs/jpx.min.js */ \"../codecs/jpx.min.js\");\n/* harmony import */ var _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1__);\n\n\n\nfunction decodeJpx(imageFrame, pixelData) {\n var jpxImage = new _codecs_jpx_min_js__WEBPACK_IMPORTED_MODULE_1___default.a();\n jpxImage.parse(pixelData);\n var tileCount = jpxImage.tiles.length;\n\n if (tileCount !== 1) {\n throw new Error(\"JPEG2000 decoder returned a tileCount of \".concat(tileCount, \", when 1 is expected\"));\n }\n\n imageFrame.columns = jpxImage.width;\n imageFrame.rows = jpxImage.height;\n imageFrame.pixelData = jpxImage.tiles[0].items;\n return imageFrame;\n}\n\nvar openJPEG;\n\nfunction decodeOpenJPEG(data, bytesPerPixel, signed) {\n var dataPtr = openJPEG._malloc(data.length);\n\n openJPEG.writeArrayToMemory(data, dataPtr); // create param outpout\n\n var imagePtrPtr = openJPEG._malloc(4);\n\n var imageSizePtr = openJPEG._malloc(4);\n\n var imageSizeXPtr = openJPEG._malloc(4);\n\n var imageSizeYPtr = openJPEG._malloc(4);\n\n var imageSizeCompPtr = openJPEG._malloc(4);\n\n var t0 = new Date().getTime();\n var ret = openJPEG.ccall('jp2_decode', 'number', ['number', 'number', 'number', 'number', 'number', 'number', 'number'], [dataPtr, data.length, imagePtrPtr, imageSizePtr, imageSizeXPtr, imageSizeYPtr, imageSizeCompPtr]); // add num vomp..etc\n\n if (ret !== 0) {\n console.log('[opj_decode] decoding failed!');\n\n openJPEG._free(dataPtr);\n\n openJPEG._free(openJPEG.getValue(imagePtrPtr, '*'));\n\n openJPEG._free(imageSizeXPtr);\n\n openJPEG._free(imageSizeYPtr);\n\n openJPEG._free(imageSizePtr);\n\n openJPEG._free(imageSizeCompPtr);\n\n return;\n }\n\n var imagePtr = openJPEG.getValue(imagePtrPtr, '*');\n var image = {\n length: openJPEG.getValue(imageSizePtr, 'i32'),\n sx: openJPEG.getValue(imageSizeXPtr, 'i32'),\n sy: openJPEG.getValue(imageSizeYPtr, 'i32'),\n nbChannels: openJPEG.getValue(imageSizeCompPtr, 'i32'),\n // hard coded for now\n perf_timetodecode: undefined,\n pixelData: undefined\n }; // Copy the data from the EMSCRIPTEN heap into the correct type array\n\n var length = image.sx * image.sy * image.nbChannels;\n var src32 = new Int32Array(openJPEG.HEAP32.buffer, imagePtr, length);\n\n if (bytesPerPixel === 1) {\n if (Uint8Array.from) {\n image.pixelData = Uint8Array.from(src32);\n } else {\n image.pixelData = new Uint8Array(length);\n\n for (var i = 0; i < length; i++) {\n image.pixelData[i] = src32[i];\n }\n }\n } else if (signed) {\n if (Int16Array.from) {\n image.pixelData = Int16Array.from(src32);\n } else {\n image.pixelData = new Int16Array(length);\n\n for (var _i = 0; _i < length; _i++) {\n image.pixelData[_i] = src32[_i];\n }\n }\n } else if (Uint16Array.from) {\n image.pixelData = Uint16Array.from(src32);\n } else {\n image.pixelData = new Uint16Array(length);\n\n for (var _i2 = 0; _i2 < length; _i2++) {\n image.pixelData[_i2] = src32[_i2];\n }\n }\n\n var t1 = new Date().getTime();\n image.perf_timetodecode = t1 - t0; // free\n\n openJPEG._free(dataPtr);\n\n openJPEG._free(imagePtrPtr);\n\n openJPEG._free(imagePtr);\n\n openJPEG._free(imageSizePtr);\n\n openJPEG._free(imageSizeXPtr);\n\n openJPEG._free(imageSizeYPtr);\n\n openJPEG._free(imageSizeCompPtr);\n\n return image;\n}\n\nfunction decodeOpenJpeg2000(imageFrame, pixelData) {\n var bytesPerPixel = imageFrame.bitsAllocated <= 8 ? 1 : 2;\n var signed = imageFrame.pixelRepresentation === 1;\n var image = decodeOpenJPEG(pixelData, bytesPerPixel, signed);\n imageFrame.columns = image.sx;\n imageFrame.rows = image.sy;\n imageFrame.pixelData = image.pixelData;\n\n if (image.nbChannels > 1) {\n imageFrame.photometricInterpretation = 'RGB';\n }\n\n return imageFrame;\n}\n\nfunction initializeJPEG2000(decodeConfig) {\n // check to make sure codec is loaded\n if (!decodeConfig.usePDFJS) {\n if (typeof _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') {\n throw new Error('OpenJPEG decoder not loaded');\n }\n }\n\n if (!openJPEG) {\n openJPEG = _codecs_openJPEG_FixedMemory_js__WEBPACK_IMPORTED_MODULE_0___default()();\n\n if (!openJPEG || !openJPEG._jp2_decode) {\n throw new Error('OpenJPEG failed to initialize');\n }\n }\n}\n\nfunction decodeJPEG2000(imageFrame, pixelData, decodeConfig) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n initializeJPEG2000(decodeConfig);\n\n if (options.usePDFJS || decodeConfig.usePDFJS) {\n // OHIF image-JPEG2000 https://github.com/OHIF/image-JPEG2000\n // console.log('PDFJS')\n return decodeJpx(imageFrame, pixelData);\n } // OpenJPEG2000 https://github.com/jpambrun/openjpeg\n // console.log('OpenJPEG')\n\n\n return decodeOpenJpeg2000(imageFrame, pixelData);\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeJPEG2000);\n\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeJPEGBaseline.js\":\n/*!***********************************************!*\\\n !*** ./shared/decoders/decodeJPEGBaseline.js ***!\n \\***********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/jpeg.js */ \"../codecs/jpeg.js\");\n/* harmony import */ var _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0__);\n\n\nfunction decodeJPEGBaseline(imageFrame, pixelData) {\n // check to make sure codec is loaded\n if (typeof _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') {\n throw new Error('No JPEG Baseline decoder loaded');\n }\n\n var jpeg = new _codecs_jpeg_js__WEBPACK_IMPORTED_MODULE_0___default.a();\n jpeg.parse(pixelData); // Do not use the internal jpeg.js color transformation,\n // since we will handle this afterwards\n\n jpeg.colorTransform = false;\n\n if (imageFrame.bitsAllocated === 8) {\n imageFrame.pixelData = jpeg.getData(imageFrame.columns, imageFrame.rows);\n return imageFrame;\n } else if (imageFrame.bitsAllocated === 16) {\n imageFrame.pixelData = jpeg.getData16(imageFrame.columns, imageFrame.rows);\n return imageFrame;\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeJPEGBaseline);\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeJPEGLS.js\":\n/*!*****************************************!*\\\n !*** ./shared/decoders/decodeJPEGLS.js ***!\n \\*****************************************/\n/*! exports provided: default, initializeJPEGLS */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initializeJPEGLS\", function() { return initializeJPEGLS; });\n/* harmony import */ var _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/charLS-FixedMemory-browser.js */ \"../codecs/charLS-FixedMemory-browser.js\");\n/* harmony import */ var _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0__);\n\nvar charLS;\n\nfunction jpegLSDecode(data, isSigned) {\n // prepare input parameters\n var dataPtr = charLS._malloc(data.length);\n\n charLS.writeArrayToMemory(data, dataPtr); // prepare output parameters\n\n var imagePtrPtr = charLS._malloc(4);\n\n var imageSizePtr = charLS._malloc(4);\n\n var widthPtr = charLS._malloc(4);\n\n var heightPtr = charLS._malloc(4);\n\n var bitsPerSamplePtr = charLS._malloc(4);\n\n var stridePtr = charLS._malloc(4);\n\n var allowedLossyErrorPtr = charLS._malloc(4);\n\n var componentsPtr = charLS._malloc(4);\n\n var interleaveModePtr = charLS._malloc(4); // Decode the image\n\n\n var result = charLS.ccall('jpegls_decode', 'number', ['number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number'], [dataPtr, data.length, imagePtrPtr, imageSizePtr, widthPtr, heightPtr, bitsPerSamplePtr, stridePtr, componentsPtr, allowedLossyErrorPtr, interleaveModePtr]); // Extract result values into object\n\n var image = {\n result: result,\n width: charLS.getValue(widthPtr, 'i32'),\n height: charLS.getValue(heightPtr, 'i32'),\n bitsPerSample: charLS.getValue(bitsPerSamplePtr, 'i32'),\n stride: charLS.getValue(stridePtr, 'i32'),\n components: charLS.getValue(componentsPtr, 'i32'),\n allowedLossyError: charLS.getValue(allowedLossyErrorPtr, 'i32'),\n interleaveMode: charLS.getValue(interleaveModePtr, 'i32'),\n pixelData: undefined\n }; // Copy image from emscripten heap into appropriate array buffer type\n\n var imagePtr = charLS.getValue(imagePtrPtr, '*');\n\n if (image.bitsPerSample <= 8) {\n image.pixelData = new Uint8Array(image.width * image.height * image.components);\n image.pixelData.set(new Uint8Array(charLS.HEAP8.buffer, imagePtr, image.pixelData.length));\n } else if (isSigned) {\n image.pixelData = new Int16Array(image.width * image.height * image.components);\n image.pixelData.set(new Int16Array(charLS.HEAP16.buffer, imagePtr, image.pixelData.length));\n } else {\n image.pixelData = new Uint16Array(image.width * image.height * image.components);\n image.pixelData.set(new Uint16Array(charLS.HEAP16.buffer, imagePtr, image.pixelData.length));\n } // free memory and return image object\n\n\n charLS._free(dataPtr);\n\n charLS._free(imagePtr);\n\n charLS._free(imagePtrPtr);\n\n charLS._free(imageSizePtr);\n\n charLS._free(widthPtr);\n\n charLS._free(heightPtr);\n\n charLS._free(bitsPerSamplePtr);\n\n charLS._free(stridePtr);\n\n charLS._free(componentsPtr);\n\n charLS._free(interleaveModePtr);\n\n return image;\n}\n\nfunction initializeJPEGLS() {\n // check to make sure codec is loaded\n if (typeof _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined') {\n throw new Error('No JPEG-LS decoder loaded');\n } // Try to initialize CharLS\n // CharLS https://github.com/cornerstonejs/charls\n\n\n if (!charLS) {\n charLS = _codecs_charLS_FixedMemory_browser_js__WEBPACK_IMPORTED_MODULE_0___default()();\n\n if (!charLS || !charLS._jpegls_decode) {\n throw new Error('JPEG-LS failed to initialize');\n }\n }\n}\n\nfunction decodeJPEGLS(imageFrame, pixelData) {\n initializeJPEGLS();\n var image = jpegLSDecode(pixelData, imageFrame.pixelRepresentation === 1); // throw error if not success or too much data\n\n if (image.result !== 0 && image.result !== 6) {\n throw new Error(\"JPEG-LS decoder failed to decode frame (error code \".concat(image.result, \")\"));\n }\n\n imageFrame.columns = image.width;\n imageFrame.rows = image.height;\n imageFrame.pixelData = image.pixelData;\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeJPEGLS);\n\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeJPEGLossless.js\":\n/*!***********************************************!*\\\n !*** ./shared/decoders/decodeJPEGLossless.js ***!\n \\***********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../codecs/jpegLossless.js */ \"../codecs/jpegLossless.js\");\n/* harmony import */ var _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0__);\n\n\nfunction decodeJPEGLossless(imageFrame, pixelData) {\n // check to make sure codec is loaded\n if (typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a === 'undefined' || typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless === 'undefined' || typeof _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless.Decoder === 'undefined') {\n throw new Error('No JPEG Lossless decoder loaded');\n }\n\n var byteOutput = imageFrame.bitsAllocated <= 8 ? 1 : 2; // console.time('jpeglossless');\n\n var buffer = pixelData.buffer;\n var decoder = new _codecs_jpegLossless_js__WEBPACK_IMPORTED_MODULE_0___default.a.lossless.Decoder();\n var decompressedData = decoder.decode(buffer, pixelData.byteOffset, pixelData.length, byteOutput); // console.timeEnd('jpeglossless');\n\n if (imageFrame.pixelRepresentation === 0) {\n if (imageFrame.bitsAllocated === 16) {\n imageFrame.pixelData = new Uint16Array(decompressedData.buffer);\n return imageFrame;\n } // untested!\n\n\n imageFrame.pixelData = new Uint8Array(decompressedData.buffer);\n return imageFrame;\n }\n\n imageFrame.pixelData = new Int16Array(decompressedData.buffer);\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeJPEGLossless);\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeLittleEndian.js\":\n/*!***********************************************!*\\\n !*** ./shared/decoders/decodeLittleEndian.js ***!\n \\***********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\nfunction decodeLittleEndian(imageFrame, pixelData) {\n var arrayBuffer = pixelData.buffer;\n var offset = pixelData.byteOffset;\n var length = pixelData.length;\n\n if (imageFrame.bitsAllocated === 16) {\n // if pixel data is not aligned on even boundary, shift it so we can create the 16 bit array\n // buffers on it\n if (offset % 2) {\n arrayBuffer = arrayBuffer.slice(offset);\n offset = 0;\n }\n\n if (imageFrame.pixelRepresentation === 0) {\n imageFrame.pixelData = new Uint16Array(arrayBuffer, offset, length / 2);\n } else {\n imageFrame.pixelData = new Int16Array(arrayBuffer, offset, length / 2);\n }\n } else if (imageFrame.bitsAllocated === 8 || imageFrame.bitsAllocated === 1) {\n imageFrame.pixelData = pixelData;\n } else if (imageFrame.bitsAllocated === 32) {\n // if pixel data is not aligned on even boundary, shift it\n if (offset % 2) {\n arrayBuffer = arrayBuffer.slice(offset);\n offset = 0;\n }\n\n imageFrame.pixelData = new Float32Array(arrayBuffer, offset, length / 4);\n }\n\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeLittleEndian);\n\n/***/ }),\n\n/***/ \"./shared/decoders/decodeRLE.js\":\n/*!**************************************!*\\\n !*** ./shared/decoders/decodeRLE.js ***!\n \\**************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\nfunction decodeRLE(imageFrame, pixelData) {\n if (imageFrame.bitsAllocated === 8) {\n if (imageFrame.planarConfiguration) {\n return decode8Planar(imageFrame, pixelData);\n }\n\n return decode8(imageFrame, pixelData);\n } else if (imageFrame.bitsAllocated === 16) {\n return decode16(imageFrame, pixelData);\n }\n\n throw new Error('unsupported pixel format for RLE');\n}\n\nfunction decode8(imageFrame, pixelData) {\n var frameData = pixelData;\n var frameSize = imageFrame.rows * imageFrame.columns;\n var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel);\n var header = new DataView(frameData.buffer, frameData.byteOffset);\n var data = new Int8Array(frameData.buffer, frameData.byteOffset);\n var out = new Int8Array(outFrame);\n var outIndex = 0;\n var numSegments = header.getInt32(0, true);\n\n for (var s = 0; s < numSegments; ++s) {\n outIndex = s;\n var inIndex = header.getInt32((s + 1) * 4, true);\n var maxIndex = header.getInt32((s + 2) * 4, true);\n\n if (maxIndex === 0) {\n maxIndex = frameData.length;\n }\n\n var endOfSegment = frameSize * numSegments;\n\n while (inIndex < maxIndex) {\n var n = data[inIndex++];\n\n if (n >= 0 && n <= 127) {\n // copy n bytes\n for (var i = 0; i < n + 1 && outIndex < endOfSegment; ++i) {\n out[outIndex] = data[inIndex++];\n outIndex += imageFrame.samplesPerPixel;\n }\n } else if (n <= -1 && n >= -127) {\n var value = data[inIndex++]; // run of n bytes\n\n for (var j = 0; j < -n + 1 && outIndex < endOfSegment; ++j) {\n out[outIndex] = value;\n outIndex += imageFrame.samplesPerPixel;\n }\n }\n /* else if (n === -128) {\n } // do nothing */\n\n }\n }\n\n imageFrame.pixelData = new Uint8Array(outFrame);\n return imageFrame;\n}\n\nfunction decode8Planar(imageFrame, pixelData) {\n var frameData = pixelData;\n var frameSize = imageFrame.rows * imageFrame.columns;\n var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel);\n var header = new DataView(frameData.buffer, frameData.byteOffset);\n var data = new Int8Array(frameData.buffer, frameData.byteOffset);\n var out = new Int8Array(outFrame);\n var outIndex = 0;\n var numSegments = header.getInt32(0, true);\n\n for (var s = 0; s < numSegments; ++s) {\n outIndex = s * frameSize;\n var inIndex = header.getInt32((s + 1) * 4, true);\n var maxIndex = header.getInt32((s + 2) * 4, true);\n\n if (maxIndex === 0) {\n maxIndex = frameData.length;\n }\n\n var endOfSegment = frameSize * numSegments;\n\n while (inIndex < maxIndex) {\n var n = data[inIndex++];\n\n if (n >= 0 && n <= 127) {\n // copy n bytes\n for (var i = 0; i < n + 1 && outIndex < endOfSegment; ++i) {\n out[outIndex] = data[inIndex++];\n outIndex++;\n }\n } else if (n <= -1 && n >= -127) {\n var value = data[inIndex++]; // run of n bytes\n\n for (var j = 0; j < -n + 1 && outIndex < endOfSegment; ++j) {\n out[outIndex] = value;\n outIndex++;\n }\n }\n /* else if (n === -128) {\n } // do nothing */\n\n }\n }\n\n imageFrame.pixelData = new Uint8Array(outFrame);\n return imageFrame;\n}\n\nfunction decode16(imageFrame, pixelData) {\n var frameData = pixelData;\n var frameSize = imageFrame.rows * imageFrame.columns;\n var outFrame = new ArrayBuffer(frameSize * imageFrame.samplesPerPixel * 2);\n var header = new DataView(frameData.buffer, frameData.byteOffset);\n var data = new Int8Array(frameData.buffer, frameData.byteOffset);\n var out = new Int8Array(outFrame);\n var numSegments = header.getInt32(0, true);\n\n for (var s = 0; s < numSegments; ++s) {\n var outIndex = 0;\n var highByte = s === 0 ? 1 : 0;\n var inIndex = header.getInt32((s + 1) * 4, true);\n var maxIndex = header.getInt32((s + 2) * 4, true);\n\n if (maxIndex === 0) {\n maxIndex = frameData.length;\n }\n\n while (inIndex < maxIndex) {\n var n = data[inIndex++];\n\n if (n >= 0 && n <= 127) {\n for (var i = 0; i < n + 1 && outIndex < frameSize; ++i) {\n out[outIndex * 2 + highByte] = data[inIndex++];\n outIndex++;\n }\n } else if (n <= -1 && n >= -127) {\n var value = data[inIndex++];\n\n for (var j = 0; j < -n + 1 && outIndex < frameSize; ++j) {\n out[outIndex * 2 + highByte] = value;\n outIndex++;\n }\n }\n /* else if (n === -128) {\n } // do nothing */\n\n }\n }\n\n if (imageFrame.pixelRepresentation === 0) {\n imageFrame.pixelData = new Uint16Array(outFrame);\n } else {\n imageFrame.pixelData = new Int16Array(outFrame);\n }\n\n return imageFrame;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (decodeRLE);\n\n/***/ }),\n\n/***/ \"./shared/getMinMax.js\":\n/*!*****************************!*\\\n !*** ./shared/getMinMax.js ***!\n \\*****************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/**\n * Calculate the minimum and maximum values in an Array\n *\n * @param {Number[]} storedPixelData\n * @return {{min: Number, max: Number}}\n */\nfunction getMinMax(storedPixelData) {\n // we always calculate the min max values since they are not always\n // present in DICOM and we don't want to trust them anyway as cornerstone\n // depends on us providing reliable values for these\n var min = storedPixelData[0];\n var max = storedPixelData[0];\n var storedPixel;\n var numPixels = storedPixelData.length;\n\n for (var index = 1; index < numPixels; index++) {\n storedPixel = storedPixelData[index];\n min = Math.min(min, storedPixel);\n max = Math.max(max, storedPixel);\n }\n\n return {\n min: min,\n max: max\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (getMinMax);\n\n/***/ }),\n\n/***/ \"./version.js\":\n/*!********************!*\\\n !*** ./version.js ***!\n \\********************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ('3.0.6');\n\n/***/ }),\n\n/***/ \"./webWorker/decodeTask/decodeTask.js\":\n/*!********************************************!*\\\n !*** ./webWorker/decodeTask/decodeTask.js ***!\n \\********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _shared_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/decoders/decodeJPEG2000.js */ \"./shared/decoders/decodeJPEG2000.js\");\n/* harmony import */ var _shared_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/decoders/decodeJPEGLS.js */ \"./shared/decoders/decodeJPEGLS.js\");\n/* harmony import */ var _shared_calculateMinMax_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/calculateMinMax.js */ \"./shared/calculateMinMax.js\");\n/* harmony import */ var _shared_decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../shared/decodeImageFrame.js */ \"./shared/decodeImageFrame.js\");\n\n\n\n // the configuration object for the decodeTask\n\nvar decodeConfig;\n/**\n * Function to control loading and initializing the codecs\n * @param config\n */\n\nfunction loadCodecs(config) {\n // Initialize the codecs\n if (config.decodeTask.initializeCodecsOnStartup) {\n // console.time('initializeCodecs');\n Object(_shared_decoders_decodeJPEG2000_js__WEBPACK_IMPORTED_MODULE_0__[\"initializeJPEG2000\"])(config.decodeTask);\n Object(_shared_decoders_decodeJPEGLS_js__WEBPACK_IMPORTED_MODULE_1__[\"initializeJPEGLS\"])(config.decodeTask); // console.timeEnd('initializeCodecs');\n }\n}\n/**\n * Task initialization function\n */\n\n\nfunction initialize(config) {\n decodeConfig = config;\n loadCodecs(config);\n}\n/**\n * Task handler function\n */\n\n\nfunction handler(data, doneCallback) {\n // Load the codecs if they aren't already loaded\n loadCodecs(decodeConfig);\n var strict = decodeConfig && decodeConfig.decodeTask && decodeConfig.decodeTask.strict;\n var imageFrame = data.data.imageFrame; // convert pixel data from ArrayBuffer to Uint8Array since web workers support passing ArrayBuffers but\n // not typed arrays\n\n var pixelData = new Uint8Array(data.data.pixelData);\n Object(_shared_decodeImageFrame_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(imageFrame, data.data.transferSyntax, pixelData, decodeConfig.decodeTask, data.data.options);\n\n if (!imageFrame.pixelData) {\n throw new Error('decodeTask: imageFrame.pixelData is undefined after decoding');\n }\n\n Object(_shared_calculateMinMax_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(imageFrame, strict); // convert from TypedArray to ArrayBuffer since web workers support passing ArrayBuffers but not\n // typed arrays\n\n imageFrame.pixelData = imageFrame.pixelData.buffer; // invoke the callback with our result and pass the pixelData in the transferList to move it to\n // UI thread without making a copy\n\n doneCallback(imageFrame, [imageFrame.pixelData]);\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n taskType: 'decodeTask',\n handler: handler,\n initialize: initialize\n});\n\n/***/ }),\n\n/***/ \"./webWorker/webWorker.js\":\n/*!********************************!*\\\n !*** ./webWorker/webWorker.js ***!\n \\********************************/\n/*! exports provided: registerTaskHandler */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerTaskHandler\", function() { return registerTaskHandler; });\n// an object of task handlers\nvar taskHandlers = {}; // Flag to ensure web worker is only initialized once\n\nvar initialized = false; // the configuration object passed in when the web worker manager is initialized\n\nvar config;\n/**\n * Initialization function that loads additional web workers and initializes them\n * @param data\n */\n\nfunction initialize(data) {\n // console.log('web worker initialize ', data.workerIndex);\n // prevent initialization from happening more than once\n if (initialized) {\n return;\n } // save the config data\n\n\n config = data.config; // Additional web worker tasks can self-register by calling self.registerTaskHandler\n\n self.registerTaskHandler = registerTaskHandler; // load any additional web worker tasks\n\n if (data.config.webWorkerTaskPaths) {\n for (var i = 0; i < data.config.webWorkerTaskPaths.length; i++) {\n self.importScripts(data.config.webWorkerTaskPaths[i]);\n }\n } // initialize each task handler\n\n\n Object.keys(taskHandlers).forEach(function (key) {\n taskHandlers[key].initialize(config.taskConfiguration);\n }); // tell main ui thread that we have completed initialization\n\n self.postMessage({\n taskType: 'initialize',\n status: 'success',\n result: {},\n workerIndex: data.workerIndex\n });\n initialized = true;\n}\n/**\n * Function exposed to web worker tasks to register themselves\n * @param taskHandler\n */\n\n\nfunction registerTaskHandler(taskHandler) {\n if (taskHandlers[taskHandler.taskType]) {\n console.log('attempt to register duplicate task handler \"', taskHandler.taskType, '\"');\n return false;\n }\n\n taskHandlers[taskHandler.taskType] = taskHandler;\n\n if (initialized) {\n taskHandler.initialize(config.taskConfiguration);\n }\n}\n/**\n * Function to load a new web worker task with updated configuration\n * @param data\n */\n\nfunction loadWebWorkerTask(data) {\n config = data.config;\n self.importScripts(data.sourcePath);\n}\n/**\n * Web worker message handler - dispatches messages to the registered task handlers\n * @param msg\n */\n\n\nself.onmessage = function (msg) {\n // console.log('web worker onmessage', msg.data);\n // handle initialize message\n if (msg.data.taskType === 'initialize') {\n initialize(msg.data);\n return;\n } // handle loadWebWorkerTask message\n\n\n if (msg.data.taskType === 'loadWebWorkerTask') {\n loadWebWorkerTask(msg.data);\n return;\n } // dispatch the message if there is a handler registered for it\n\n\n if (taskHandlers[msg.data.taskType]) {\n try {\n taskHandlers[msg.data.taskType].handler(msg.data, function (result, transferList) {\n self.postMessage({\n taskType: msg.data.taskType,\n status: 'success',\n result: result,\n workerIndex: msg.data.workerIndex\n }, transferList);\n });\n } catch (error) {\n console.log(\"task \".concat(msg.data.taskType, \" failed - \").concat(error.message));\n self.postMessage({\n taskType: msg.data.taskType,\n status: 'failed',\n result: error.message,\n workerIndex: msg.data.workerIndex\n });\n }\n\n return;\n } // not task handler registered - send a failure message back to ui thread\n\n\n console.log('no task handler for ', msg.data.taskType);\n console.log(taskHandlers);\n self.postMessage({\n taskType: msg.data.taskType,\n status: 'failed - no task handler registered',\n workerIndex: msg.data.workerIndex\n });\n};\n\n/***/ })\n\n/******/ });\n//# sourceMappingURL=922d2a9b8827ff21dc41.worker.js.map", null); +}; + +/***/ }) + +/******/ }); +}); +//# sourceMappingURL=cornerstoneWADOImageLoader.js.map \ No newline at end of file diff --git a/lib/cornerstone/cornerstoneWebImageLoader.min.js b/lib/cornerstone/cornerstoneWebImageLoader.min.js new file mode 100644 index 0000000..d39cba1 --- /dev/null +++ b/lib/cornerstone/cornerstoneWebImageLoader.min.js @@ -0,0 +1,3 @@ +/*! cornerstone-web-image-loader - 2.1.1 - 2018-12-05 | (c) 2016 Chris Hafey | https://github.com/cornerstonejs/cornerstoneWebImageLoader */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstoneWebImageLoader",[],t):"object"==typeof exports?exports.cornerstoneWebImageLoader=t():e.cornerstoneWebImageLoader=t()}(window,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=5)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.external=void 0;var r,o=n(4),a=(r=o)&&r.__esModule?r:{default:r};var u=void 0,i={set cornerstone(e){u=e,(0,a.default)(u)},get cornerstone(){return u}};t.external=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadImage=function(e){var t=r.external.cornerstone,n=new XMLHttpRequest;return n.open("GET",e,!0),n.responseType="arraybuffer",i.beforeSend(n),n.onprogress=function(n){if(n.lengthComputable){var r=n.loaded,o=n.total,a=Math.round(r/o*100),u={imageId:e,loaded:r,total:o,percentComplete:a};t.triggerEvent(t.events,"cornerstoneimageloadprogress",u)}},{promise:new Promise(function(t,r){n.onload=function(){(0,o.default)(this.response).then(function(n){var r=(0,a.default)(n,e);t(r)},r)},n.send()}),cancelFn:function(){n.abort()}}},t.configure=function(e){i=e};var r=n(0),o=u(n(3)),a=u(n(2));function u(e){return e&&e.__esModule?e:{default:e}}var i={beforeSend:function(){}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=e.naturalHeight,u=e.naturalWidth;return{imageId:t,minPixelValue:0,maxPixelValue:255,slope:1,intercept:0,windowCenter:128,windowWidth:255,render:r.external.cornerstone.renderWebImage,getPixelData:function(){return(n=void 0,a===t?n=o.getContext("2d"):(o.height=e.naturalHeight,o.width=e.naturalWidth,(n=o.getContext("2d")).drawImage(e,0,0),a=t),n.getImageData(0,0,e.naturalWidth,e.naturalHeight)).data;var n},getCanvas:function(){return a===t?o:(o.height=e.naturalHeight,o.width=e.naturalWidth,o.getContext("2d").drawImage(e,0,0),a=t,o)},getImage:function(){return e},rows:n,columns:u,height:n,width:u,color:!0,rgba:!1,columnPixelSpacing:void 0,rowPixelSpacing:void 0,invert:!1,sizeInBytes:n*u*4}};var r=n(0),o=document.createElement("canvas"),a=void 0},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return new Promise(function(t,n){var r=new Image,o=new Uint8Array(e),a=new Blob([o]),u=window.URL||window.webkitURL,i=u.createObjectURL(a);r.src=i,r.onload=function(){t(r),u.revokeObjectURL(i)},r.onerror=function(e){u.revokeObjectURL(i),n(e)}})}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e.registerImageLoader("http",r.loadImage),e.registerImageLoader("https",r.loadImage)};var r=n(1)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.external=t.configure=t.loadImage=t.createImage=t.arrayBufferToImage=void 0;var r=i(n(3)),o=i(n(2)),a=n(1),u=n(0);function i(e){return e&&e.__esModule?e:{default:e}}var d={arrayBufferToImage:r.default,createImage:o.default,loadImage:a.loadImage,configure:a.configure,external:u.external};t.arrayBufferToImage=r.default,t.createImage=o.default,t.loadImage=a.loadImage,t.configure=a.configure,t.external=u.external,t.default=d}])}); +//# sourceMappingURL=cornerstoneWebImageLoader.min.js.map \ No newline at end of file diff --git a/lib/cornerstone/dicomParser.min.js b/lib/cornerstone/dicomParser.min.js new file mode 100644 index 0000000..1c636ce --- /dev/null +++ b/lib/cornerstone/dicomParser.min.js @@ -0,0 +1,17 @@ +/*! dicom-parser - 1.8.4 - 2019-11-26 | (c) 2017 Chris Hafey | https://github.com/cornerstonejs/dicomParser */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("dicom-parser",[],t):"object"==typeof exports?exports["dicom-parser"]=t():e.dicomParser=t()}(this,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=79)}([function(e,t){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){"use strict";(function(e){ +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +var n=r(73),i=r(72),a=r(39);function o(){return l.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function p(e,t){if(l.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return Z(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return j(e).length;default:if(n)return Z(e).length;t=(""+t).toLowerCase(),n=!0}}function g(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function m(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=l.from(t,n)),l.isBuffer(t))return 0===t.length?-1:_(e,t,r,n,i);if("number"==typeof t)return t&=255,l.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):_(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function _(e,t,r,n,i){var a,o=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,r/=2}function f(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var u=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var h=!0,d=0;di&&(n=i):n=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var o=0;o>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function S(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function k(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:f>223?3:f>191?2:1;if(i+h<=r)switch(h){case 1:f<128&&(u=f);break;case 2:128==(192&(a=e[i+1]))&&(l=(31&f)<<6|63&a)>127&&(u=l);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(l=(15&f)<<12|(63&a)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(l=(15&f)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),i+=h}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var r="",n=0;for(;nthis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return D(this,t,r);case"utf8":case"utf-8":return k(this,t,r);case"ascii":return P(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return S(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}.apply(this,arguments)},l.prototype.equals=function(e){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===l.compare(this,e)},l.prototype.inspect=function(){var e="",r=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),""},l.prototype.compare=function(e,t,r,n,i){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;for(var a=i-n,o=r-t,s=Math.min(a,o),f=this.slice(n,i),u=e.slice(t,r),h=0;hi)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return y(this,e,t,r);case"utf8":case"utf-8":return b(this,e,t,r);case"ascii":return v(this,e,t,r);case"latin1":case"binary":return w(this,e,t,r);case"base64":return E(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function P(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,r,n,i,a){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function L(e,t,r,n){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-r,2);i>>8*(n?i:1-i)}function F(e,t,r,n){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-r,4);i>>8*(n?i:3-i)&255}function B(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function U(e,t,r,n,a){return a||B(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function M(e,t,r,n,a){return a||B(e,0,r,8),i.write(e,t,r,n,52,8),r+8}l.prototype.slice=function(e,t){var r,n=this.length;if(e=~~e,t=void 0===t?n:~~t,e<0?(e+=n)<0&&(e=0):e>n&&(e=n),t<0?(t+=n)<0&&(t=0):t>n&&(t=n),t0&&(i*=256);)n+=this[e+--t]*i;return n},l.prototype.readUInt8=function(e,t){return t||I(e,1,this.length),this[e]},l.prototype.readUInt16LE=function(e,t){return t||I(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUInt16BE=function(e,t){return t||I(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUInt32LE=function(e,t){return t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUInt32BE=function(e,t){return t||I(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||I(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},l.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||I(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},l.prototype.readInt8=function(e,t){return t||I(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){t||I(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt16BE=function(e,t){t||I(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},l.prototype.readInt32LE=function(e,t){return t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readFloatLE=function(e,t){return t||I(e,4,this.length),i.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return t||I(e,4,this.length),i.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return t||I(e,8,this.length),i.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return t||I(e,8,this.length),i.read(this,e,!1,52,8)},l.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||R(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+i]=e/a&255;return t+r},l.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,255,0),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},l.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},l.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},l.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):F(this,e,t,!0),t+4},l.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},l.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},l.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},l.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,127,-128),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},l.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},l.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):F(this,e,t,!0),t+4},l.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},l.prototype.writeFloatLE=function(e,t,r){return U(this,e,t,!0,r)},l.prototype.writeFloatBE=function(e,t,r){return U(this,e,t,!1,r)},l.prototype.writeDoubleLE=function(e,t,r){return M(this,e,t,!0,r)},l.prototype.writeDoubleBE=function(e,t,r){return M(this,e,t,!1,r)},l.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t=0;--i)e[i+t]=this[i+r];else if(a<1e3||!l.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function j(e){return n.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(N,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function C(e,t,r,n){for(var i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}}).call(this,r(0))},function(e,t,r){"use strict";var n=r(10),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=h;var a=r(6);a.inherits=r(5);var o=r(36),s=r(18);a.inherits(h,o);for(var l=i(s.prototype),f=0;f1)for(var r=1;r0){var r=(0,i.readFixedString)(this.byteArray,t.dataOffset,t.length).match(/\\/g);return null===r?1:r.length+1}}},{key:"string",value:function(e,t){var r=this.elements[e];if(r&&r.length>0){var n=(0,i.readFixedString)(this.byteArray,r.dataOffset,r.length);return t>=0?n.split("\\")[t].trim():n.trim()}}},{key:"text",value:function(e,t){var r=this.elements[e];if(r&&r.length>0){var n=(0,i.readFixedString)(this.byteArray,r.dataOffset,r.length);return t>=0?n.split("\\")[t].replace(/ +$/,""):n.replace(/ +$/,"")}}},{key:"floatString",value:function(e,t){var r=this.elements[e];if(r&&r.length>0){t=void 0!==t?t:0;var n=this.string(e,t);if(void 0!==n)return parseFloat(n)}}},{key:"intString",value:function(e,t){var r=this.elements[e];if(r&&r.length>0){t=void 0!==t?t:0;var n=this.string(e,t);if(void 0!==n)return parseInt(n)}}},{key:"attributeTag",value:function(e){var t=this.elements[e];if(t&&4===t.length){var r=a(t,this.byteArrayParser).readUint16,n=this.byteArray,i=t.dataOffset;return"x"+("00000000"+(256*r(n,i)*256+r(n,i+2)).toString(16)).substr(-8)}}}]),e}();t.default=o},function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)i(r,n)&&(e[n]=r[n])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var a={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var a=0;a=n.length)throw"dicomParser.ByteStream: parameter 'position' cannot be greater than or equal to 'byteArray' length";this.byteArrayParser=r,this.byteArray=n,this.position=i||0,this.warnings=[]}return i(t,[{key:"seek",value:function(e){if(this.position+e<0)throw"dicomParser.ByteStream.prototype.seek: cannot seek to position < 0";this.position+=e}},{key:"readByteStream",value:function(e){if(this.position+e>this.byteArray.length)throw"dicomParser.ByteStream.prototype.readByteStream: readByteStream - buffer overread";var r=(0,o.default)(this.byteArray,this.position,e);return this.position+=e,new t(this.byteArrayParser,r)}},{key:"readUint16",value:function(){var e=this.byteArrayParser.readUint16(this.byteArray,this.position);return this.position+=2,e}},{key:"readUint32",value:function(){var e=this.byteArrayParser.readUint32(this.byteArray,this.position);return this.position+=4,e}},{key:"readFixedString",value:function(e){var t=(0,s.readFixedString)(this.byteArray,this.position,e);return this.position+=e,t}}]),t}();t.default=l}).call(this,r(1).Buffer)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(void 0===e)throw"dicomParser.readSequenceItem: missing required parameter 'byteStream'";var t={tag:(0,a.default)(e),length:e.readUint32(),dataOffset:e.position};if("xfffee000"!==t.tag)throw"dicomParser.readSequenceItem: item tag (FFFE,E000) not found at offset "+e.position;return t};var n,i=r(4),a=(n=i)&&n.__esModule?n:{default:n}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readFixedString=function(e,t,r){if(r<0)throw"dicomParser.readFixedString - length cannot be less than 0";if(t+r>e.length)throw"dicomParser.readFixedString: attempt to read past end of buffer";for(var n,i="",a=0;a3&&void 0!==arguments[3]?arguments[3]:{};if(r=void 0===r?t.byteArray.length:r,void 0===t)throw"dicomParser.parseDicomDataSetExplicit: missing required parameter 'byteStream'";if(rt.byteArray.length)throw"dicomParser.parseDicomDataSetExplicit: invalid value for parameter 'maxP osition'";var a=e.elements;for(;t.positionr)throw"dicomParser:parseDicomDataSetExplicit: buffer overrun"},t.parseDicomDataSetImplicit=function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(r=void 0===r?e.byteArray.length:r,void 0===t)throw"dicomParser.parseDicomDataSetImplicit: missing required parameter 'byteStream'";if(rt.byteArray.length)throw"dicomParser.parseDicomDataSetImplicit: invalid value for parameter 'maxPosition'";var a=e.elements;for(;t.position= 0";if(r>=t.fragments.length)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'startFragmentIndex' must be < number of fragments";if(s<1)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'numFragments' must be > 0";if(r+s>t.fragments.length)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'startFragment' + 'numFragments' < number of fragments";var u=new i.default(e.byteArrayParser,e.byteArray,t.dataOffset),h=(0,a.default)(u);if("xfffee000"!==h.tag)throw"dicomParser.readEncapsulatedPixelData: missing basic offset table xfffee000";u.seek(h.length);var d=u.position;if(1===s)return(0,o.default)(u.byteArray,d+f[r].offset+8,f[r].length);for(var c=l(f,r,s),p=(0,n.default)(u.byteArray,c),g=0,m=r;m-1?n:a.nextTick;y.WritableState=_;var f=r(6);f.inherits=r(5);var u={deprecate:r(61)},h=r(35),d=r(9).Buffer,c=i.Uint8Array||function(){};var p,g=r(34);function m(){}function _(e,t){s=s||r(2),e=e||{};var n=t instanceof s;this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,f=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(f||0===f)?f:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var h=!1===e.decodeStrings;this.decodeStrings=!h,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(a.nextTick(i,n),a.nextTick(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",n)):(i(n),e._writableState.errorEmitted=!0,e.emit("error",n),S(e,t))}(e,r,n,t,i);else{var o=E(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||w(e,r),n?l(v,e,r,o,i):v(e,r,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function y(e){if(s=s||r(2),!(p.call(y,this)||this instanceof s))return new y(e);this._writableState=new _(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),h.call(this)}function b(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function v(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),S(e,t)}function w(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,l=!0;r;)i[s]=r,r.isBuf||(l=!1),r=r.next,s+=1;i.allBuffers=l,b(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var f=r.chunk,u=r.encoding,h=r.callback;if(b(e,t,!1,t.objectMode?1:f.length,f,u,h),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function E(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function x(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),S(e,t)})}function S(e,t){var r=E(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(x,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}f.inherits(y,h),_.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(_.prototype,"buffer",{get:u.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(y,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===y&&(e&&e._writableState instanceof _)}})):p=function(e){return e instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(e,t,r){var n,i=this._writableState,o=!1,s=!i.objectMode&&(n=e,d.isBuffer(n)||n instanceof c);return s&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=m),i.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),a.nextTick(t,r)}(this,r):(s||function(e,t,r,n){var i=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a.nextTick(n,o),i=!1),i}(this,i,e,r))&&(i.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},y.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(e,t,r){var n=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(e,t,r){t.ending=!0,S(e,t),r&&(t.finished?a.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,r(3),r(63).setImmediate,r(0))},function(e,t,r){(t=e.exports=r(36)).Stream=t,t.Readable=t,t.Writable=r(18),t.Duplex=r(2),t.Transform=r(32),t.PassThrough=r(60)},function(e,t){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function n(e){return"function"==typeof e}function i(e){return"object"==typeof e&&null!==e}function a(e){return void 0===e}e.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,r,o,s,l,f;if(this._events||(this._events={}),"error"===e&&(!this._events.error||i(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var u=new Error('Uncaught, unspecified "error" event. ('+t+")");throw u.context=t,u}if(a(r=this._events[e]))return!1;if(n(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),r.apply(this,s)}else if(i(r))for(s=Array.prototype.slice.call(arguments,1),o=(f=r.slice()).length,l=0;l0&&this._events[e].length>o&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!n(t))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(e,i),r||(r=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},r.prototype.removeListener=function(e,t){var r,a,o,s;if(!n(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(r=this._events[e]).length,a=-1,r===t||n(r.listener)&&r.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(i(r)){for(s=o;s-- >0;)if(r[s]===t||r[s].listener&&r[s].listener===t){a=s;break}if(a<0)return this;1===r.length?(r.length=0,delete this._events[e]):r.splice(a,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n(r=this._events[e]))this.removeListener(e,r);else if(r)for(;r.length;)this.removeListener(e,r[r.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?n(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(n(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={readUint16:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readUint16: position cannot be less than 0";if(t+2>e.length)throw"littleEndianByteArrayParser.readUint16: attempt to read past end of buffer";return e[t]+256*e[t+1]},readInt16:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readInt16: position cannot be less than 0";if(t+2>e.length)throw"littleEndianByteArrayParser.readInt16: attempt to read past end of buffer";var r=e[t]+(e[t+1]<<8);return 32768&r&&(r=r-65535-1),r},readUint32:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readUint32: position cannot be less than 0";if(t+4>e.length)throw"littleEndianByteArrayParser.readUint32: attempt to read past end of buffer";return e[t]+256*e[t+1]+256*e[t+2]*256+256*e[t+3]*256*256},readInt32:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readInt32: position cannot be less than 0";if(t+4>e.length)throw"littleEndianByteArrayParser.readInt32: attempt to read past end of buffer";return e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24)},readFloat:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readFloat: position cannot be less than 0";if(t+4>e.length)throw"littleEndianByteArrayParser.readFloat: attempt to read past end of buffer";var r=new Uint8Array(4);return r[0]=e[t],r[1]=e[t+1],r[2]=e[t+2],r[3]=e[t+3],new Float32Array(r.buffer)[0]},readDouble:function(e,t){if(t<0)throw"littleEndianByteArrayParser.readDouble: position cannot be less than 0";if(t+8>e.length)throw"littleEndianByteArrayParser.readDouble: attempt to read past end of buffer";var r=new Uint8Array(8);return r[0]=e[t],r[1]=e[t+1],r[2]=e[t+2],r[3]=e[t+3],r[4]=e[t+4],r[5]=e[t+5],r[6]=e[t+6],r[7]=e[t+7],new Float64Array(r.buffer)[0]}}},function(e,t,r){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(t,r){if(void 0!==e&&t instanceof e)return e.alloc(r);if(t instanceof Uint8Array)return new Uint8Array(r);throw"dicomParser.alloc: unknown type for byteArray"}}).call(this,r(1).Buffer)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw"dicomParser.readDicomElementImplicit: missing required parameter 'byteStream'";var r=e.byteArray.length-8;for(;e.position<=r;){var n=e.readUint16();if(65534===n){var i=e.readUint16();if(57357===i){var a=e.readUint32();return 0!==a&&e.warnings("encountered non zero length following item delimiter at position "+(e.position-4)+" while reading element of undefined length with tag "+t.tag),void(t.length=e.position-t.dataOffset)}}}t.length=e.byteArray.length-t.dataOffset,e.seek(e.byteArray.length-e.position)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){if(void 0===e)throw"dicomParser.readDicomElementImplicit: missing required parameter 'byteStream'";var o={tag:(0,a.default)(e),length:e.readUint32(),dataOffset:e.position};4294967295===o.length&&(o.hadUndefinedLength=!0);if(o.tag===t)return o;if(s(o,e,r))return(0,i.default)(e,o),o;if(o.hadUndefinedLength)return(0,n.default)(e,o),o;return e.seek(o.length),o};var n=o(r(23)),i=o(r(25)),a=o(r(4));function o(e){return e&&e.__esModule?e:{default:e}}var s=function(e,t,r){if(void 0!==r)return"SQ"===r(e.tag);if(t.position+4<=t.byteArray.length){var n=(0,a.default)(t);return t.seek(-4),"xfffee000"===n||"xfffee0dd"===n}return t.warnings.push("eof encountered before finding sequence item tag or sequence delimiter tag in peeking to determine VR"),!1}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){if(void 0===e)throw"dicomParser.readSequenceItemsImplicit: missing required parameter 'byteStream'";if(void 0===t)throw"dicomParser.readSequenceItemsImplicit: missing required parameter 'element'";t.items=[],4294967295===t.length?function(e,t,r){for(;e.position+4<=e.byteArray.length;){var n=(0,o.default)(e);if(e.seek(-4),"xfffee0dd"===n)return t.length=e.position-t.dataOffset,e.seek(8),t;var i=f(e,r);t.items.push(i)}e.warnings.push("eof encountered before finding sequence delimiter in sequence of undefined length"),t.length=e.byteArray.length-t.dataOffset}(e,t,r):function(e,t,r){var n=t.dataOffset+t.length;for(;e.position= 0";if(r>=n.length)throw"dicomParser.readEncapsulatedImageFrame: parameter 'frameIndex' must be < basicOffsetTable.length";var l=n[r],f=o(i,l);if(void 0===f)throw"dicomParser.readEncapsulatedImageFrame: unable to find fragment that matches basic offset table entry";var u=s(r,n,i,f);return(0,a.default)(e,t,f,u,i)};var n,i=r(17),a=(n=i)&&n.__esModule?n:{default:n};var o=function(e,t){for(var r=0;r>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,t,r,i){var a=n,o=i+r;e^=-1;for(var s=i;s>>8^a[255&(e^t[s])];return-1^e}},function(e,t,r){"use strict";e.exports=function(e,t,r,n){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;0!==r;){r-=o=r>2e3?2e3:r;do{a=a+(i=i+t[n++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16|0}},function(e,t,r){(function(e,n){var i=/%[sdj%]/g;t.format=function(e){if(!_(e)){for(var t=[],r=0;r=a)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return e}}),l=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),p(r)?n.showHidden=r:r&&t._extend(n,r),y(n.showHidden)&&(n.showHidden=!1),y(n.depth)&&(n.depth=2),y(n.colors)&&(n.colors=!1),y(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),u(n,e,n.depth)}function l(e,t){var r=s.styles[t];return r?"["+s.colors[r][0]+"m"+e+"["+s.colors[r][1]+"m":e}function f(e,t){return e}function u(e,r,n){if(e.customInspect&&r&&x(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return _(i)||(i=u(e,i,n)),i}var a=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(_(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(m(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,r);if(a)return a;var o=Object.keys(r),s=function(e){var t={};return e.forEach(function(e,r){t[e]=!0}),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),E(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(r);if(0===o.length){if(x(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(b(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(w(r))return e.stylize(Date.prototype.toString.call(r),"date");if(E(r))return h(r)}var f,v="",S=!1,k=["{","}"];(c(r)&&(S=!0,k=["[","]"]),x(r))&&(v=" [Function"+(r.name?": "+r.name:"")+"]");return b(r)&&(v=" "+RegExp.prototype.toString.call(r)),w(r)&&(v=" "+Date.prototype.toUTCString.call(r)),E(r)&&(v=" "+h(r)),0!==o.length||S&&0!=r.length?n<0?b(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),f=S?function(e,t,r,n,i){for(var a=[],o=0,s=t.length;o=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(f,v,k)):k[0]+v+k[1]}function h(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),P(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(s=g(r)?u(e,l.value,null):u(e,l.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n")):s=e.stylize("[Circular]","special")),y(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function c(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function g(e){return null===e}function m(e){return"number"==typeof e}function _(e){return"string"==typeof e}function y(e){return void 0===e}function b(e){return v(e)&&"[object RegExp]"===S(e)}function v(e){return"object"==typeof e&&null!==e}function w(e){return v(e)&&"[object Date]"===S(e)}function E(e){return v(e)&&("[object Error]"===S(e)||e instanceof Error)}function x(e){return"function"==typeof e}function S(e){return Object.prototype.toString.call(e)}function k(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(e){if(y(a)&&(a=n.env.NODE_DEBUG||""),e=e.toUpperCase(),!o[e])if(new RegExp("\\b"+e+"\\b","i").test(a)){var r=n.pid;o[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else o[e]=function(){};return o[e]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=c,t.isBoolean=p,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=_,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=y,t.isRegExp=b,t.isObject=v,t.isDate=w,t.isError=E,t.isFunction=x,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(54);var A=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function P(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){var e,r;console.log("%s - %s",(e=new Date,r=[k(e.getHours()),k(e.getMinutes()),k(e.getSeconds())].join(":"),[e.getDate(),A[e.getMonth()],r].join(" ")),t.format.apply(t,arguments))},t.inherits=r(53),t._extend=function(e,t){if(!t||!v(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e}}).call(this,r(0),r(3))},function(e,t,r){"use strict";(function(t){ +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +function n(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i=0;f--)if(u[f]!==h[f])return!1;for(f=u.length-1;f>=0;f--)if(l=u[f],!y(e[l],t[l],r,n))return!1;return!0}(e,t,r,o))}return r?e===t:e==t}function b(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function v(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function w(e,t,r,n){var i;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(e){var t;try{e()}catch(e){t=e}return t}(t),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),e&&!i&&m(i,r,"Missing expected exception"+n);var o="string"==typeof n,s=!e&&a.isError(i),l=!e&&i&&!r;if((s&&o&&v(i,r)||l)&&m(i,r,"Got unwanted exception"+n),e&&i&&r&&!v(i,r)||!e&&i)throw i}h.AssertionError=function(e){var t;this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=p(g((t=this).actual),128)+" "+t.operator+" "+p(g(t.expected),128),this.generatedMessage=!0);var r=e.stackStartFunction||m;if(Error.captureStackTrace)Error.captureStackTrace(this,r);else{var n=new Error;if(n.stack){var i=n.stack,a=c(r),o=i.indexOf("\n"+a);if(o>=0){var s=i.indexOf("\n",o+1);i=i.substring(s+1)}this.stack=i}}},a.inherits(h.AssertionError,Error),h.fail=m,h.ok=_,h.equal=function(e,t,r){e!=t&&m(e,t,r,"==",h.equal)},h.notEqual=function(e,t,r){e==t&&m(e,t,r,"!=",h.notEqual)},h.deepEqual=function(e,t,r){y(e,t,!1)||m(e,t,r,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,r){y(e,t,!0)||m(e,t,r,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,r){y(e,t,!1)&&m(e,t,r,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=function e(t,r,n){y(t,r,!0)&&m(t,r,n,"notDeepStrictEqual",e)},h.strictEqual=function(e,t,r){e!==t&&m(e,t,r,"===",h.strictEqual)},h.notStrictEqual=function(e,t,r){e===t&&m(e,t,r,"!==",h.notStrictEqual)},h.throws=function(e,t,r){w(!0,e,t,r)},h.doesNotThrow=function(e,t,r){w(!1,e,t,r)},h.ifError=function(e){if(e)throw e};var E=Object.keys||function(e){var t=[];for(var r in e)o.call(e,r)&&t.push(r);return t}}).call(this,r(0))},function(e,t,r){"use strict";e.exports=a;var n=r(2),i=r(6);function a(e){if(!(this instanceof a))return new a(e);n.call(this,e),this._transformState={afterTransform:function(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length>5==6?2:e>>4==14?3:e>>3==30?4:-1}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�".repeat(r);if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�".repeat(r+1);if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�".repeat(r+2)}}(this,e,t);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function c(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,r){"use strict";var n=r(10);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||n.nextTick(i,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(e){!t&&e?(n.nextTick(i,r,e),r._writableState&&(r._writableState.errorEmitted=!0)):t&&t(e)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,r){e.exports=r(20).EventEmitter},function(e,t,r){"use strict";(function(t,n){var i=r(10);e.exports=b;var a,o=r(39);b.ReadableState=y;r(20).EventEmitter;var s=function(e,t){return e.listeners(t).length},l=r(35),f=r(9).Buffer,u=t.Uint8Array||function(){};var h=r(6);h.inherits=r(5);var d=r(66),c=void 0;c=d&&d.debuglog?d.debuglog("stream"):function(){};var p,g=r(65),m=r(34);h.inherits(b,l);var _=["error","close","destroy","pause","resume"];function y(e,t){a=a||r(2),e=e||{};var n=t instanceof a;this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new g,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(p||(p=r(33).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function b(e){if(a=a||r(2),!(this instanceof b))return new b(e);this._readableState=new y(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),l.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,f.isBuffer(n)||n instanceof u||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===f.prototype||(t=function(e){return f.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?w(e,o,t,!1):A(e,o)):w(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=E?e=E:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(c("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(k,e):k(e))}function k(e){c("emit readable"),e.emit("readable"),O(e)}function A(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(P,e,t))}function P(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;ea.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=f.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function R(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(L,t,e))}function L(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return c("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?R(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&R(this),null;var n,i=t.needReadable;return c("need readable",i),(0===t.length||t.length-e0?I(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&R(this)),null!==n&&this.emit("data",n),n},b.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},b.prototype.pipe=function(e,t){var r=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,c("pipe count=%d opts=%j",a.pipesCount,t);var l=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?u:b;function f(t,n){c("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),e.removeListener("close",_),e.removeListener("finish",y),e.removeListener("drain",h),e.removeListener("error",m),e.removeListener("unpipe",f),r.removeListener("end",u),r.removeListener("end",b),r.removeListener("data",g),d=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function u(){c("onend"),e.end()}a.endEmitted?i.nextTick(l):r.once("end",l),e.on("unpipe",f);var h=function(e){return function(){var t=e._readableState;c("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,O(e))}}(r);e.on("drain",h);var d=!1;var p=!1;function g(t){c("ondata"),p=!1,!1!==e.write(t)||p||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==F(a.pipes,e))&&!d&&(c("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,p=!0),r.pause())}function m(t){c("onerror",t),b(),e.removeListener("error",m),0===s(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",y),b()}function y(){c("onfinish"),e.removeListener("close",_),b()}function b(){c("unpipe"),r.unpipe(e)}return r.on("data",g),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",m),e.once("close",_),e.once("finish",y),e.emit("pipe",r),a.flowing||(c("pipe resume"),r.resume()),e},b.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a"x0002ffff"){r.position=n;break}s.parser=a.default,t[s.tag]=s}var l=new i.default(r.byteArrayParser,r.byteArray,t);return l.warnings=r.warnings,l.position=r.position,l}()};var n=s(r(12)),i=s(r(7)),a=s(r(21)),o=s(r(15));function s(e){return e&&e.__esModule?e:{default:e}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={readUint16:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readUint16: position cannot be less than 0";if(t+2>e.length)throw"bigEndianByteArrayParser.readUint16: attempt to read past end of buffer";return(e[t]<<8)+e[t+1]},readInt16:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readInt16: position cannot be less than 0";if(t+2>e.length)throw"bigEndianByteArrayParser.readInt16: attempt to read past end of buffer";var r=(e[t]<<8)+e[t+1];return 32768&r&&(r=r-65535-1),r},readUint32:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readUint32: position cannot be less than 0";if(t+4>e.length)throw"bigEndianByteArrayParser.readUint32: attempt to read past end of buffer";return 256*(256*(256*e[t]+e[t+1])+e[t+2])+e[t+3]},readInt32:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readInt32: position cannot be less than 0";if(t+4>e.length)throw"bigEndianByteArrayParser.readInt32: attempt to read past end of buffer";return(e[t]<<24)+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3]},readFloat:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readFloat: position cannot be less than 0";if(t+4>e.length)throw"bigEndianByteArrayParser.readFloat: attempt to read past end of buffer";var r=new Uint8Array(4);return r[3]=e[t],r[2]=e[t+1],r[1]=e[t+2],r[0]=e[t+3],new Float32Array(r.buffer)[0]},readDouble:function(e,t){if(t<0)throw"bigEndianByteArrayParser.readDouble: position cannot be less than 0";if(t+8>e.length)throw"bigEndianByteArrayParser.readDouble: attempt to read past end of buffer";var r=new Uint8Array(8);return r[7]=e[t],r[6]=e[t+1],r[5]=e[t+2],r[4]=e[t+3],r[3]=e[t+4],r[2]=e[t+5],r[1]=e[t+6],r[0]=e[t+7],new Float64Array(r.buffer)[0]}}},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){if(void 0===e)throw"dicomParser.readSequenceItemsExplicit: missing required parameter 'byteStream'";if(void 0===t)throw"dicomParser.readSequenceItemsExplicit: missing required parameter 'element'";t.items=[],4294967295===t.length?function(e,t,r){for(;e.position+4<=e.byteArray.length;){var n=(0,o.default)(e);if(e.seek(-4),"xfffee0dd"===n)return t.length=e.position-t.dataOffset,e.seek(8),t;var i=f(e,r);t.items.push(i)}r.push("eof encountered before finding sequence delimitation tag while reading sequence of undefined length"),t.length=e.position-t.dataOffset}(e,t,r):function(e,t,r){var n=t.dataOffset+t.length;for(;e.positione.byteArray.length-e.position&&(f=e.byteArray.length-e.position),t.fragments.push({offset:e.position-s-8,position:e.position,length:f}),e.seek(f),void(t.length=e.position-t.dataOffset);t.fragments.push({offset:e.position-s-8,position:e.position,length:f}),e.seek(f)}r&&r.push("pixel data element "+t.tag+" missing sequence delimiter tag xfffee0dd")};var n,i=r(4),a=(n=i)&&n.__esModule?n:{default:n}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e||void 0===t)throw"dicomParser.explicitElementToString: missing required parameters";if(void 0===t.vr)throw"dicomParser.explicitElementToString: cannot convert implicit element to string";var r,i=t.vr,a=t.tag;function o(t,r){for(var n="",i=0;i= 0";if(0!==t.basicOffsetTable.length)return(0,n.default)(e,t,r);return(0,i.default)(e,t,0,t.fragments.length)};var n=a(r(27)),i=a(r(17));function a(e){return e&&e.__esModule?e:{default:e}}var o=!1},function(e,t,r){"use strict";e.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}},function(e,t,r){"use strict";var n=r(8),i=[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],a=[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],o=[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],s=[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];e.exports=function(e,t,r,l,f,u,h,d){var c,p,g,m,_,y,b,v,w,E=d.bits,x=0,S=0,k=0,A=0,P=0,T=0,D=0,O=0,I=0,R=0,L=null,F=0,B=new n.Buf16(16),U=new n.Buf16(16),M=null,N=0;for(x=0;x<=15;x++)B[x]=0;for(S=0;S=1&&0===B[A];A--);if(P>A&&(P=A),0===A)return f[u++]=20971520,f[u++]=20971520,d.bits=1,0;for(k=1;k0&&(0===e||1!==A))return-1;for(U[1]=0,x=1;x<15;x++)U[x+1]=U[x]+B[x];for(S=0;S852||2===e&&I>592)return 1;for(;;){b=x-D,h[S]y?(v=M[N+h[S]],w=L[F+h[S]]):(v=96,w=0),c=1<>D)+(p-=c)]=b<<24|v<<16|w|0}while(0!==p);for(c=1<>=1;if(0!==c?(R&=c-1,R+=c):R=0,S++,0==--B[x]){if(x===A)break;x=t[r+h[S]]}if(x>P&&(R&m)!==g){for(0===D&&(D=P),_+=k,O=1<<(T=x-D);T+D852||2===e&&I>592)return 1;f[g=R&m]=P<<24|T<<16|_-u|0}}return 0!==R&&(f[_+R]=x-D<<24|64<<16|0),d.bits=P,0}},function(e,t,r){"use strict";e.exports=function(e,t){var r,n,i,a,o,s,l,f,u,h,d,c,p,g,m,_,y,b,v,w,E,x,S,k,A;r=e.state,n=e.next_in,k=e.input,i=n+(e.avail_in-5),a=e.next_out,A=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),l=r.dmax,f=r.wsize,u=r.whave,h=r.wnext,d=r.window,c=r.hold,p=r.bits,g=r.lencode,m=r.distcode,_=(1<>>=v=b>>>24,p-=v,0===(v=b>>>16&255))A[a++]=65535&b;else{if(!(16&v)){if(0==(64&v)){b=g[(65535&b)+(c&(1<>>=v,p-=v),p<15&&(c+=k[n++]<>>=v=b>>>24,p-=v,!(16&(v=b>>>16&255))){if(0==(64&v)){b=m[(65535&b)+(c&(1<l){e.msg="invalid distance too far back",r.mode=30;break e}if(c>>>=v,p-=v,E>(v=a-o)){if((v=E-v)>u&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(x=0,S=d,0===h){if(x+=f-v,v2;)A[a++]=S[x++],A[a++]=S[x++],A[a++]=S[x++],w-=3;w&&(A[a++]=S[x++],w>1&&(A[a++]=S[x++]))}else{x=a-E;do{A[a++]=A[x++],A[a++]=A[x++],A[a++]=A[x++],w-=3}while(w>2);w&&(A[a++]=A[x++],w>1&&(A[a++]=A[x++]))}break}}break}}while(n>3,c&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=a,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function ie(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=E,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(ee),t.distcode=t.distdyn=new n.Buf32(te),t.sane=1,t.back=-1,p):_}function ae(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,ie(e)):_}function oe(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?_:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,ae(e))):_}function se(e,t){var r,i;return e?(i=new function(){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 n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},e.state=i,i.window=null,(r=oe(e,t))!==p&&(e.state=null),r):_}var le,fe,ue=!0;function he(e){if(ue){var t;for(le=new n.Buf32(512),fe=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(f,e.lens,0,288,le,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(u,e.lens,0,32,fe,0,e.work,{bits:5}),ue=!1}e.lencode=le,e.lenbits=9,e.distcode=fe,e.distbits=5}function de(e,t,r,i){var a,o=e.state;return null===o.window&&(o.wsize=1<=o.wsize?(n.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),n.arraySet(o.window,t,r-i,a,o.wnext),(i-=a)?(n.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,r.check=a(r.check,Pe,2,0),se=0,le=0,r.mode=x;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",r.mode=X;break}if((15&se)!==w){e.msg="unknown compression method",r.mode=X;break}if(le-=4,Ee=8+(15&(se>>>=4)),0===r.wbits)r.wbits=Ee;else if(Ee>r.wbits){e.msg="invalid window size",r.mode=X;break}r.dmax=1<>8&1),512&r.flags&&(Pe[0]=255&se,Pe[1]=se>>>8&255,r.check=a(r.check,Pe,2,0)),se=0,le=0,r.mode=S;case S:for(;le<32;){if(0===ae)break e;ae--,se+=ee[re++]<>>8&255,Pe[2]=se>>>16&255,Pe[3]=se>>>24&255,r.check=a(r.check,Pe,4,0)),se=0,le=0,r.mode=k;case k:for(;le<16;){if(0===ae)break e;ae--,se+=ee[re++]<>8),512&r.flags&&(Pe[0]=255&se,Pe[1]=se>>>8&255,r.check=a(r.check,Pe,2,0)),se=0,le=0,r.mode=A;case A:if(1024&r.flags){for(;le<16;){if(0===ae)break e;ae--,se+=ee[re++]<>>8&255,r.check=a(r.check,Pe,2,0)),se=0,le=0}else r.head&&(r.head.extra=null);r.mode=P;case P:if(1024&r.flags&&((ce=r.length)>ae&&(ce=ae),ce&&(r.head&&(Ee=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,ee,re,ce,Ee)),512&r.flags&&(r.check=a(r.check,ee,ce,re)),ae-=ce,re+=ce,r.length-=ce),r.length))break e;r.length=0,r.mode=T;case T:if(2048&r.flags){if(0===ae)break e;ce=0;do{Ee=ee[re+ce++],r.head&&Ee&&r.length<65536&&(r.head.name+=String.fromCharCode(Ee))}while(Ee&&ce>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=L;break;case I:for(;le<32;){if(0===ae)break e;ae--,se+=ee[re++]<>>=7&le,le-=7&le,r.mode=V;break}for(;le<3;){if(0===ae)break e;ae--,se+=ee[re++]<>>=1)){case 0:r.mode=B;break;case 1:if(he(r),r.mode=j,t===c){se>>>=2,le-=2;break e}break;case 2:r.mode=N;break;case 3:e.msg="invalid block type",r.mode=X}se>>>=2,le-=2;break;case B:for(se>>>=7&le,le-=7≤le<32;){if(0===ae)break e;ae--,se+=ee[re++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=X;break}if(r.length=65535&se,se=0,le=0,r.mode=U,t===c)break e;case U:r.mode=M;case M:if(ce=r.length){if(ce>ae&&(ce=ae),ce>oe&&(ce=oe),0===ce)break e;n.arraySet(te,ee,re,ce,ie),ae-=ce,re+=ce,oe-=ce,ie+=ce,r.length-=ce;break}r.mode=L;break;case N:for(;le<14;){if(0===ae)break e;ae--,se+=ee[re++]<>>=5,le-=5,r.ndist=1+(31&se),se>>>=5,le-=5,r.ncode=4+(15&se),se>>>=4,le-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=X;break}r.have=0,r.mode=z;case z:for(;r.have>>=3,le-=3}for(;r.have<19;)r.lens[Te[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,Se={bits:r.lenbits},xe=s(l,r.lens,0,19,r.lencode,0,r.work,Se),r.lenbits=Se.bits,xe){e.msg="invalid code lengths set",r.mode=X;break}r.have=0,r.mode=Z;case Z:for(;r.have>>16&255,ye=65535&Ae,!((me=Ae>>>24)<=le);){if(0===ae)break e;ae--,se+=ee[re++]<>>=me,le-=me,r.lens[r.have++]=ye;else{if(16===ye){for(ke=me+2;le>>=me,le-=me,0===r.have){e.msg="invalid bit length repeat",r.mode=X;break}Ee=r.lens[r.have-1],ce=3+(3&se),se>>>=2,le-=2}else if(17===ye){for(ke=me+3;le>>=me)),se>>>=3,le-=3}else{for(ke=me+7;le>>=me)),se>>>=7,le-=7}if(r.have+ce>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=X;break}for(;ce--;)r.lens[r.have++]=Ee}}if(r.mode===X)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=X;break}if(r.lenbits=9,Se={bits:r.lenbits},xe=s(f,r.lens,0,r.nlen,r.lencode,0,r.work,Se),r.lenbits=Se.bits,xe){e.msg="invalid literal/lengths set",r.mode=X;break}if(r.distbits=6,r.distcode=r.distdyn,Se={bits:r.distbits},xe=s(u,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,Se),r.distbits=Se.bits,xe){e.msg="invalid distances set",r.mode=X;break}if(r.mode=j,t===c)break e;case j:r.mode=C;case C:if(ae>=6&&oe>=258){e.next_out=ie,e.avail_out=oe,e.next_in=re,e.avail_in=ae,r.hold=se,r.bits=le,o(e,ue),ie=e.next_out,te=e.output,oe=e.avail_out,re=e.next_in,ee=e.input,ae=e.avail_in,se=r.hold,le=r.bits,r.mode===L&&(r.back=-1);break}for(r.back=0;_e=(Ae=r.lencode[se&(1<>>16&255,ye=65535&Ae,!((me=Ae>>>24)<=le);){if(0===ae)break e;ae--,se+=ee[re++]<>be)])>>>16&255,ye=65535&Ae,!(be+(me=Ae>>>24)<=le);){if(0===ae)break e;ae--,se+=ee[re++]<>>=be,le-=be,r.back+=be}if(se>>>=me,le-=me,r.back+=me,r.length=ye,0===_e){r.mode=G;break}if(32&_e){r.back=-1,r.mode=L;break}if(64&_e){e.msg="invalid literal/length code",r.mode=X;break}r.extra=15&_e,r.mode=q;case q:if(r.extra){for(ke=r.extra;le>>=r.extra,le-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Y;case Y:for(;_e=(Ae=r.distcode[se&(1<>>16&255,ye=65535&Ae,!((me=Ae>>>24)<=le);){if(0===ae)break e;ae--,se+=ee[re++]<>be)])>>>16&255,ye=65535&Ae,!(be+(me=Ae>>>24)<=le);){if(0===ae)break e;ae--,se+=ee[re++]<>>=be,le-=be,r.back+=be}if(se>>>=me,le-=me,r.back+=me,64&_e){e.msg="invalid distance code",r.mode=X;break}r.offset=ye,r.extra=15&_e,r.mode=W;case W:if(r.extra){for(ke=r.extra;le>>=r.extra,le-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=X;break}r.mode=H;case H:if(0===oe)break e;if(ce=ue-oe,r.offset>ce){if((ce=r.offset-ce)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=X;break}ce>r.wnext?(ce-=r.wnext,pe=r.wsize-ce):pe=r.wnext-ce,ce>r.length&&(ce=r.length),ge=r.window}else ge=te,pe=ie-r.offset,ce=r.length;ce>oe&&(ce=oe),oe-=ce,r.length-=ce;do{te[ie++]=ge[pe++]}while(--ce);0===r.length&&(r.mode=C);break;case G:if(0===oe)break e;te[ie++]=r.length,oe--,r.mode=C;break;case V:if(r.wrap){for(;le<32;){if(0===ae)break e;ae--,se|=ee[re++]<=0;)e[t]=0}var f=0,u=1,h=2,d=29,c=256,p=c+1+d,g=30,m=19,_=2*p+1,y=15,b=16,v=7,w=256,E=16,x=17,S=18,k=[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],A=[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],P=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],D=new Array(2*(p+2));l(D);var O=new Array(2*g);l(O);var I=new Array(512);l(I);var R=new Array(256);l(R);var L=new Array(d);l(L);var F,B,U,M=new Array(g);function N(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function z(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function Z(e){return e<256?I[e]:I[256+(e>>>7)]}function j(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function C(e,t,r){e.bi_valid>b-r?(e.bi_buf|=t<>b-e.bi_valid,e.bi_valid+=r-b):(e.bi_buf|=t<>>=1,r<<=1}while(--t>0);return r>>>1}function W(e,t,r){var n,i,a=new Array(y+1),o=0;for(n=1;n<=y;n++)a[n]=o=o+r[n-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=Y(a[s]++,s))}}function H(e){var t;for(t=0;t8?j(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function V(e,t,r,n){var i=2*t,a=2*r;return e[i]>1;r>=1;r--)J(e,a,r);i=l;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],J(e,a,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,a[2*i]=a[2*r]+a[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,a[2*r+1]=a[2*n+1]=i,e.heap[1]=i++,J(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,a,o,s,l=t.dyn_tree,f=t.max_code,u=t.stat_desc.static_tree,h=t.stat_desc.has_stree,d=t.stat_desc.extra_bits,c=t.stat_desc.extra_base,p=t.stat_desc.max_length,g=0;for(a=0;a<=y;a++)e.bl_count[a]=0;for(l[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<_;r++)(a=l[2*l[2*(n=e.heap[r])+1]+1]+1)>p&&(a=p,g++),l[2*n+1]=a,n>f||(e.bl_count[a]++,o=0,n>=c&&(o=d[n-c]),s=l[2*n],e.opt_len+=s*(a+o),h&&(e.static_len+=s*(u[2*n+1]+o)));if(0!==g){do{for(a=p-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[p]--,g-=2}while(g>0);for(a=p;0!==a;a--)for(n=e.bl_count[a];0!==n;)(i=e.heap[--r])>f||(l[2*i+1]!==a&&(e.opt_len+=(a-l[2*i+1])*l[2*i],l[2*i+1]=a),n--)}}(e,t),W(a,f,e.bl_count)}function $(e,t,r){var n,i,a=-1,o=t[1],s=0,l=7,f=4;for(0===o&&(l=138,f=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=o,o=t[2*(n+1)+1],++s>=7;n0?(e.strm.data_type===s&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return a;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return o;for(t=32;t=3&&0===e.bl_tree[2*T[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),l=e.opt_len+3+7>>>3,(f=e.static_len+3+7>>>3)<=l&&(l=f)):l=f=r+5,r+4<=l&&-1!==t?te(e,t,r,n):e.strategy===i||f===l?(C(e,(u<<1)+(n?1:0),3),K(e,D,O)):(C(e,(h<<1)+(n?1:0),3),function(e,t,r,n){var i;for(C(e,t-257,5),C(e,r-1,5),C(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(R[r]+c+1)]++,e.dyn_dtree[2*Z(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){C(e,u<<1,3),q(e,w,D),function(e){16===e.bi_valid?(j(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},function(e,t,r){"use strict";var n,i=r(8),a=r(50),o=r(29),s=r(28),l=r(49),f=0,u=1,h=3,d=4,c=5,p=0,g=1,m=-2,_=-3,y=-5,b=-1,v=1,w=2,E=3,x=4,S=0,k=2,A=8,P=9,T=15,D=8,O=286,I=30,R=19,L=2*O+1,F=15,B=3,U=258,M=U+B+1,N=32,z=42,Z=69,j=73,C=91,q=103,Y=113,W=666,H=1,G=2,V=3,J=4,K=3;function X(e,t){return e.msg=l[t],t}function $(e){return(e<<1)-(e>4?9:0)}function Q(e){for(var t=e.length;--t>=0;)e[t]=0}function ee(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function te(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ee(e.strm)}function re(e,t){e.pending_buf[e.pending++]=t}function ne(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function ie(e,t){var r,n,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-M?e.strstart-(e.w_size-M):0,f=e.window,u=e.w_mask,h=e.prev,d=e.strstart+U,c=f[a+o-1],p=f[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(f[(r=t)+o]===p&&f[r+o-1]===c&&f[r]===f[a]&&f[++r]===f[a+1]){a+=2,r++;do{}while(f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&f[++a]===f[++r]&&ao){if(e.match_start=t,o=n,n>=s)break;c=f[a+o-1],p=f[a+o]}}}while((t=h[t&u])>l&&0!=--i);return o<=e.lookahead?o:e.lookahead}function ae(e){var t,r,n,a,l,f,u,h,d,c,p=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=p+(p-M)){i.arraySet(e.window,e.window,p,p,0),e.match_start-=p,e.strstart-=p,e.block_start-=p,t=r=e.hash_size;do{n=e.head[--t],e.head[t]=n>=p?n-p:0}while(--r);t=r=p;do{n=e.prev[--t],e.prev[t]=n>=p?n-p:0}while(--r);a+=p}if(0===e.strm.avail_in)break;if(f=e.strm,u=e.window,h=e.strstart+e.lookahead,d=a,c=void 0,(c=f.avail_in)>d&&(c=d),r=0===c?0:(f.avail_in-=c,i.arraySet(u,f.input,f.next_in,c,h),1===f.state.wrap?f.adler=o(f.adler,u,c,h):2===f.state.wrap&&(f.adler=s(f.adler,u,c,h)),f.next_in+=c,f.total_in+=c,c),e.lookahead+=r,e.lookahead+e.insert>=B)for(l=e.strstart-e.insert,e.ins_h=e.window[l],e.ins_h=(e.ins_h<=B&&(e.ins_h=(e.ins_h<=B)if(n=a._tr_tally(e,e.strstart-e.match_start,e.match_length-B),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=B){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=B&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=B-1)),e.prev_length>=B&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-B,n=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-B),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<15&&(s=2,n-=16),a<1||a>P||r!==A||n<8||n>15||t<0||t>9||o<0||o>x)return X(e,m);8===n&&(n=9);var l=new function(){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=A,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 i.Buf16(2*L),this.dyn_dtree=new i.Buf16(2*(2*I+1)),this.bl_tree=new i.Buf16(2*(2*R+1)),Q(this.dyn_ltree),Q(this.dyn_dtree),Q(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(F+1),this.heap=new i.Buf16(2*O+1),Q(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*O+1),Q(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};return e.state=l,l.strm=e,l.wrap=s,l.gzhead=null,l.w_bits=n,l.w_size=1<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(ae(e),0===e.lookahead&&t===f)return H;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,te(e,!1),0===e.strm.avail_out))return H;if(e.strstart-e.block_start>=e.w_size-M&&(te(e,!1),0===e.strm.avail_out))return H}return e.insert=0,t===d?(te(e,!0),0===e.strm.avail_out?V:J):(e.strstart>e.block_start&&(te(e,!1),e.strm.avail_out),H)}),new le(4,4,8,4,oe),new le(4,5,16,8,oe),new le(4,6,32,32,oe),new le(4,4,16,16,se),new le(8,16,32,32,se),new le(8,16,128,128,se),new le(8,32,128,256,se),new le(32,128,258,1024,se),new le(32,258,258,4096,se)],t.deflateInit=function(e,t){return he(e,t,A,T,D,S)},t.deflateInit2=he,t.deflateReset=ue,t.deflateResetKeep=fe,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?m:(e.state.gzhead=t,p):m},t.deflate=function(e,t){var r,i,o,l;if(!e||!e.state||t>c||t<0)return e?X(e,m):m;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===W&&t!==d)return X(e,0===e.avail_out?y:m);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===z)if(2===i.wrap)e.adler=0,re(i,31),re(i,139),re(i,8),i.gzhead?(re(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),re(i,255&i.gzhead.time),re(i,i.gzhead.time>>8&255),re(i,i.gzhead.time>>16&255),re(i,i.gzhead.time>>24&255),re(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),re(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(re(i,255&i.gzhead.extra.length),re(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=Z):(re(i,0),re(i,0),re(i,0),re(i,0),re(i,0),re(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),re(i,K),i.status=Y);else{var _=A+(i.w_bits-8<<4)<<8;_|=(i.strategy>=w||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(_|=N),_+=31-_%31,i.status=Y,ne(i,_),0!==i.strstart&&(ne(i,e.adler>>>16),ne(i,65535&e.adler)),e.adler=1}if(i.status===Z)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending!==i.pending_buf_size));)re(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=j)}else i.status=j;if(i.status===j)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===l&&(i.gzindex=0,i.status=C)}else i.status=C;if(i.status===C)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===l&&(i.status=q)}else i.status=q;if(i.status===q&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ee(e),i.pending+2<=i.pending_buf_size&&(re(i,255&e.adler),re(i,e.adler>>8&255),e.adler=0,i.status=Y)):i.status=Y),0!==i.pending){if(ee(e),0===e.avail_out)return i.last_flush=-1,p}else if(0===e.avail_in&&$(t)<=$(r)&&t!==d)return X(e,y);if(i.status===W&&0!==e.avail_in)return X(e,y);if(0!==e.avail_in||0!==i.lookahead||t!==f&&i.status!==W){var b=i.strategy===w?function(e,t){for(var r;;){if(0===e.lookahead&&(ae(e),0===e.lookahead)){if(t===f)return H;break}if(e.match_length=0,r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(te(e,!1),0===e.strm.avail_out))return H}return e.insert=0,t===d?(te(e,!0),0===e.strm.avail_out?V:J):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?H:G}(i,t):i.strategy===E?function(e,t){for(var r,n,i,o,s=e.window;;){if(e.lookahead<=U){if(ae(e),e.lookahead<=U&&t===f)return H;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=B&&e.strstart>0&&(n=s[i=e.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){o=e.strstart+U;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=B?(r=a._tr_tally(e,1,e.match_length-B),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(te(e,!1),0===e.strm.avail_out))return H}return e.insert=0,t===d?(te(e,!0),0===e.strm.avail_out?V:J):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?H:G}(i,t):n[i.level].func(i,t);if(b!==V&&b!==J||(i.status=W),b===H||b===V)return 0===e.avail_out&&(i.last_flush=-1),p;if(b===G&&(t===u?a._tr_align(i):t!==c&&(a._tr_stored_block(i,0,0,!1),t===h&&(Q(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),ee(e),0===e.avail_out))return i.last_flush=-1,p}return t!==d?p:i.wrap<=0?g:(2===i.wrap?(re(i,255&e.adler),re(i,e.adler>>8&255),re(i,e.adler>>16&255),re(i,e.adler>>24&255),re(i,255&e.total_in),re(i,e.total_in>>8&255),re(i,e.total_in>>16&255),re(i,e.total_in>>24&255)):(ne(i,e.adler>>>16),ne(i,65535&e.adler)),ee(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?p:g)},t.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==z&&t!==Z&&t!==j&&t!==C&&t!==q&&t!==Y&&t!==W?X(e,m):(e.state=null,t===Y?X(e,_):p):m},t.deflateSetDictionary=function(e,t){var r,n,a,s,l,f,u,h,d=t.length;if(!e||!e.state)return m;if(2===(s=(r=e.state).wrap)||1===s&&r.status!==z||r.lookahead)return m;for(1===s&&(e.adler=o(e.adler,t,d,0)),r.wrap=0,d>=r.w_size&&(0===s&&(Q(r.head),r.strstart=0,r.block_start=0,r.insert=0),h=new i.Buf8(r.w_size),i.arraySet(h,t,d-r.w_size,r.w_size,0),t=h,d=r.w_size),l=e.avail_in,f=e.next_in,u=e.input,e.avail_in=d,e.next_in=0,e.input=t,ae(r);r.lookahead>=B;){n=r.strstart,a=r.lookahead-(B-1);do{r.ins_h=(r.ins_h<t.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=e,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}u.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,i(this.init_done,"close before init"),i(this.mode<=t.UNZIP),this.mode===t.DEFLATE||this.mode===t.GZIP||this.mode===t.DEFLATERAW?o.deflateEnd(this.strm):this.mode!==t.INFLATE&&this.mode!==t.GUNZIP&&this.mode!==t.INFLATERAW&&this.mode!==t.UNZIP||s.inflateEnd(this.strm),this.mode=t.NONE,this.dictionary=null)},u.prototype.write=function(e,t,r,n,i,a,o){return this._write(!0,e,t,r,n,i,a,o)},u.prototype.writeSync=function(e,t,r,n,i,a,o){return this._write(!1,e,t,r,n,i,a,o)},u.prototype._write=function(r,a,o,s,l,f,u,h){if(i.equal(arguments.length,8),i(this.init_done,"write before init"),i(this.mode!==t.NONE,"already finalized"),i.equal(!1,this.write_in_progress,"write already in progress"),i.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,i.equal(!1,void 0===a,"must provide flush value"),this.write_in_progress=!0,a!==t.Z_NO_FLUSH&&a!==t.Z_PARTIAL_FLUSH&&a!==t.Z_SYNC_FLUSH&&a!==t.Z_FULL_FLUSH&&a!==t.Z_FINISH&&a!==t.Z_BLOCK)throw new Error("Invalid flush value");if(null==o&&(o=e.alloc(0),l=0,s=0),this.strm.avail_in=l,this.strm.input=o,this.strm.next_in=s,this.strm.avail_out=h,this.strm.output=f,this.strm.next_out=u,this.flush=a,!r)return this._process(),this._checkError()?this._afterSync():void 0;var d=this;return n.nextTick(function(){d._process(),d._after()}),this},u.prototype._afterSync=function(){var e=this.strm.avail_out,t=this.strm.avail_in;return this.write_in_progress=!1,[t,e]},u.prototype._process=function(){var e=null;switch(this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=o.deflate(this.strm,this.flush);break;case t.UNZIP:switch(this.strm.avail_in>0&&(e=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(null===e)break;if(31!==this.strm.input[e]){this.mode=t.INFLATE;break}if(this.gzip_id_bytes_read=1,e++,1===this.strm.avail_in)break;case 1:if(null===e)break;139===this.strm.input[e]?(this.gzip_id_bytes_read=2,this.mode=t.GUNZIP):this.mode=t.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:for(this.err=s.inflate(this.strm,this.flush),this.err===t.Z_NEED_DICT&&this.dictionary&&(this.err=s.inflateSetDictionary(this.strm,this.dictionary),this.err===t.Z_OK?this.err=s.inflate(this.strm,this.flush):this.err===t.Z_DATA_ERROR&&(this.err=t.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===t.GUNZIP&&this.err===t.Z_STREAM_END&&0!==this.strm.next_in[0];)this.reset(),this.err=s.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},u.prototype._checkError=function(){switch(this.err){case t.Z_OK:case t.Z_BUF_ERROR:if(0!==this.strm.avail_out&&this.flush===t.Z_FINISH)return this._error("unexpected end of file"),!1;break;case t.Z_STREAM_END:break;case t.Z_NEED_DICT:return null==this.dictionary?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},u.prototype._after=function(){if(this._checkError()){var e=this.strm.avail_out,t=this.strm.avail_in;this.write_in_progress=!1,this.callback(t,e),this.pending_close&&this.close()}},u.prototype._error=function(e){this.strm.msg&&(e=this.strm.msg),this.onerror(e,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},u.prototype.init=function(e,r,n,a,o){i(4===arguments.length||5===arguments.length,"init(windowBits, level, memLevel, strategy, [dictionary])"),i(e>=8&&e<=15,"invalid windowBits"),i(r>=-1&&r<=9,"invalid compression level"),i(n>=1&&n<=9,"invalid memlevel"),i(a===t.Z_FILTERED||a===t.Z_HUFFMAN_ONLY||a===t.Z_RLE||a===t.Z_FIXED||a===t.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(r,e,n,a,o),this._setDictionary()},u.prototype.params=function(){throw new Error("deflateParams Not supported")},u.prototype.reset=function(){this._reset(),this._setDictionary()},u.prototype._init=function(e,r,n,i,l){switch(this.level=e,this.windowBits=r,this.memLevel=n,this.strategy=i,this.flush=t.Z_NO_FLUSH,this.err=t.Z_OK,this.mode!==t.GZIP&&this.mode!==t.GUNZIP||(this.windowBits+=16),this.mode===t.UNZIP&&(this.windowBits+=32),this.mode!==t.DEFLATERAW&&this.mode!==t.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new a,this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=o.deflateInit2(this.strm,this.level,t.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:case t.UNZIP:this.err=s.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==t.Z_OK&&this._error("Init error"),this.dictionary=l,this.write_in_progress=!1,this.init_done=!0},u.prototype._setDictionary=function(){if(null!=this.dictionary){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:this.err=o.deflateSetDictionary(this.strm,this.dictionary)}this.err!==t.Z_OK&&this._error("Failed to set dictionary")}},u.prototype._reset=function(){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:case t.GZIP:this.err=o.deflateReset(this.strm);break;case t.INFLATE:case t.INFLATERAW:case t.GUNZIP:this.err=s.inflateReset(this.strm)}this.err!==t.Z_OK&&this._error("Failed to reset stream")},t.Zlib=u}).call(this,r(1).Buffer,r(3))},function(e,t,r){e.exports=r(19).PassThrough},function(e,t,r){e.exports=r(19).Transform},function(e,t,r){e.exports=r(2)},function(e,t,r){e.exports=r(18)},function(e,t,r){"use strict";e.exports=a;var n=r(32),i=r(6);function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(5),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},function(e,t,r){(function(t){function r(e){try{if(!t.localStorage)return!1}catch(e){return!1}var r=t.localStorage[e];return null!=r&&"true"===String(r).toLowerCase()}e.exports=function(e,t){if(r("noDeprecation"))return e;var n=!1;return function(){if(!n){if(r("throwDeprecation"))throw new Error(t);r("traceDeprecation")?console.trace(t):console.warn(t),n=!0}return e.apply(this,arguments)}}}).call(this,r(0))},function(e,t,r){(function(e,t){!function(e,r){"use strict";if(!e.setImmediate){var n,i,a,o,s,l=1,f={},u=!1,h=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?n=function(e){t.nextTick(function(){p(e)})}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},n=function(e){a.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(i=h.documentElement,n=function(e){var t=h.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):n=function(e){setTimeout(p,0,e)}:(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),n=function(t){e.postMessage(o+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),r=0;r=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},r(62),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,r(0))},function(e,t){},function(e,t,r){"use strict";var n=r(9).Buffer,i=r(64);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,r){e.exports=i;var n=r(20).EventEmitter;function i(){n.call(this)}r(5)(i,n),i.Readable=r(19),i.Writable=r(59),i.Duplex=r(58),i.Transform=r(57),i.PassThrough=r(56),i.Stream=i,i.prototype.pipe=function(e,t){var r=this;function i(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function a(){r.readable&&r.resume&&r.resume()}r.on("data",i),e.on("drain",a),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",l));var o=!1;function s(){o||(o=!0,e.end())}function l(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function f(e){if(u(),0===n.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",i),e.removeListener("drain",a),r.removeListener("end",s),r.removeListener("close",l),r.removeListener("error",f),e.removeListener("error",f),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",f),e.on("error",f),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},function(e,t,r){"use strict";(function(e){var n=r(1).Buffer,i=r(67).Transform,a=r(55),o=r(30),s=r(31).ok,l=r(1).kMaxLength,f="Cannot create final Buffer. It would be larger than 0x"+l.toString(16)+" bytes";a.Z_MIN_WINDOWBITS=8,a.Z_MAX_WINDOWBITS=15,a.Z_DEFAULT_WINDOWBITS=15,a.Z_MIN_CHUNK=64,a.Z_MAX_CHUNK=1/0,a.Z_DEFAULT_CHUNK=16384,a.Z_MIN_MEMLEVEL=1,a.Z_MAX_MEMLEVEL=9,a.Z_DEFAULT_MEMLEVEL=8,a.Z_MIN_LEVEL=-1,a.Z_MAX_LEVEL=9,a.Z_DEFAULT_LEVEL=a.Z_DEFAULT_COMPRESSION;for(var u=Object.keys(a),h=0;h=l?o=new RangeError(f):t=n.concat(i,a),i=[],e.close(),r(o,t)}e.on("error",function(t){e.removeListener("end",s),e.removeListener("readable",o),r(t)}),e.on("end",s),e.end(t),o()}function y(e,t){if("string"==typeof t&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Not a string or buffer");var r=e._finishFlushFlag;return e._processChunk(t,r)}function b(e){if(!(this instanceof b))return new b(e);P.call(this,e,a.DEFLATE)}function v(e){if(!(this instanceof v))return new v(e);P.call(this,e,a.INFLATE)}function w(e){if(!(this instanceof w))return new w(e);P.call(this,e,a.GZIP)}function E(e){if(!(this instanceof E))return new E(e);P.call(this,e,a.GUNZIP)}function x(e){if(!(this instanceof x))return new x(e);P.call(this,e,a.DEFLATERAW)}function S(e){if(!(this instanceof S))return new S(e);P.call(this,e,a.INFLATERAW)}function k(e){if(!(this instanceof k))return new k(e);P.call(this,e,a.UNZIP)}function A(e){return e===a.Z_NO_FLUSH||e===a.Z_PARTIAL_FLUSH||e===a.Z_SYNC_FLUSH||e===a.Z_FULL_FLUSH||e===a.Z_FINISH||e===a.Z_BLOCK}function P(e,r){var o=this;if(this._opts=e=e||{},this._chunkSize=e.chunkSize||t.Z_DEFAULT_CHUNK,i.call(this,e),e.flush&&!A(e.flush))throw new Error("Invalid flush flag: "+e.flush);if(e.finishFlush&&!A(e.finishFlush))throw new Error("Invalid flush flag: "+e.finishFlush);if(this._flushFlag=e.flush||a.Z_NO_FLUSH,this._finishFlushFlag=void 0!==e.finishFlush?e.finishFlush:a.Z_FINISH,e.chunkSize&&(e.chunkSizet.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBitst.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.levelt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevelt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=t.Z_FILTERED&&e.strategy!=t.Z_HUFFMAN_ONLY&&e.strategy!=t.Z_RLE&&e.strategy!=t.Z_FIXED&&e.strategy!=t.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!n.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new a.Zlib(r);var s=this;this._hadError=!1,this._handle.onerror=function(e,r){T(s),s._hadError=!0;var n=new Error(e);n.errno=r,n.code=t.codes[r],s.emit("error",n)};var l=t.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(l=e.level);var f=t.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(f=e.strategy),this._handle.init(e.windowBits||t.Z_DEFAULT_WINDOWBITS,l,e.memLevel||t.Z_DEFAULT_MEMLEVEL,f,e.dictionary),this._buffer=n.allocUnsafe(this._chunkSize),this._offset=0,this._level=l,this._strategy=f,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!o._handle},configurable:!0,enumerable:!0})}function T(t,r){r&&e.nextTick(r),t._handle&&(t._handle.close(),t._handle=null)}function D(e){e.emit("close")}Object.defineProperty(t,"codes",{enumerable:!0,value:Object.freeze(c),writable:!1}),t.Deflate=b,t.Inflate=v,t.Gzip=w,t.Gunzip=E,t.DeflateRaw=x,t.InflateRaw=S,t.Unzip=k,t.createDeflate=function(e){return new b(e)},t.createInflate=function(e){return new v(e)},t.createDeflateRaw=function(e){return new x(e)},t.createInflateRaw=function(e){return new S(e)},t.createGzip=function(e){return new w(e)},t.createGunzip=function(e){return new E(e)},t.createUnzip=function(e){return new k(e)},t.deflate=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new b(t),e,r)},t.deflateSync=function(e,t){return y(new b(t),e)},t.gzip=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new w(t),e,r)},t.gzipSync=function(e,t){return y(new w(t),e)},t.deflateRaw=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new x(t),e,r)},t.deflateRawSync=function(e,t){return y(new x(t),e)},t.unzip=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new k(t),e,r)},t.unzipSync=function(e,t){return y(new k(t),e)},t.inflate=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new v(t),e,r)},t.inflateSync=function(e,t){return y(new v(t),e)},t.gunzip=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new E(t),e,r)},t.gunzipSync=function(e,t){return y(new E(t),e)},t.inflateRaw=function(e,t,r){return"function"==typeof t&&(r=t,t={}),_(new S(t),e,r)},t.inflateRawSync=function(e,t){return y(new S(t),e)},o.inherits(P,i),P.prototype.params=function(r,n,i){if(rt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+r);if(n!=t.Z_FILTERED&&n!=t.Z_HUFFMAN_ONLY&&n!=t.Z_RLE&&n!=t.Z_FIXED&&n!=t.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+n);if(this._level!==r||this._strategy!==n){var o=this;this.flush(a.Z_SYNC_FLUSH,function(){s(o._handle,"zlib binding closed"),o._handle.params(r,n),o._hadError||(o._level=r,o._strategy=n,i&&i())})}else e.nextTick(i)},P.prototype.reset=function(){return s(this._handle,"zlib binding closed"),this._handle.reset()},P.prototype._flush=function(e){this._transform(n.alloc(0),"",e)},P.prototype.flush=function(t,r){var i=this,o=this._writableState;("function"==typeof t||void 0===t&&!r)&&(r=t,t=a.Z_FULL_FLUSH),o.ended?r&&e.nextTick(r):o.ending?r&&this.once("end",r):o.needDrain?r&&this.once("drain",function(){return i.flush(t,r)}):(this._flushFlag=t,this.write(n.alloc(0),"",r))},P.prototype.close=function(t){T(this,t),e.nextTick(D,this)},P.prototype._transform=function(e,t,r){var i,o=this._writableState,s=(o.ending||o.ended)&&(!e||o.length===e.length);return null===e||n.isBuffer(e)?this._handle?(s?i=this._finishFlushFlag:(i=this._flushFlag,e.length>=o.length&&(this._flushFlag=this._opts.flush||a.Z_NO_FLUSH)),void this._processChunk(e,i,r)):r(new Error("zlib binding closed")):r(new Error("invalid input"))},P.prototype._processChunk=function(e,t,r){var i=e&&e.length,a=this._chunkSize-this._offset,o=0,u=this,h="function"==typeof r;if(!h){var d,c=[],p=0;this.on("error",function(e){d=e}),s(this._handle,"zlib binding closed");do{var g=this._handle.writeSync(t,e,o,i,this._buffer,this._offset,a)}while(!this._hadError&&y(g[0],g[1]));if(this._hadError)throw d;if(p>=l)throw T(this),new RangeError(f);var m=n.concat(c,p);return T(this),m}s(this._handle,"zlib binding closed");var _=this._handle.write(t,e,o,i,this._buffer,this._offset,a);function y(l,f){if(this&&(this.buffer=null,this.callback=null),!u._hadError){var d=a-f;if(s(d>=0,"have should not go down"),d>0){var g=u._buffer.slice(u._offset,u._offset+d);u._offset+=d,h?u.push(g):(c.push(g),p+=g.length)}if((0===f||u._offset>=u._chunkSize)&&(a=u._chunkSize,u._offset=0,u._buffer=n.allocUnsafe(u._chunkSize)),0===f){if(o+=i-l,i=l,!h)return!0;var m=u._handle.write(t,e,o,i,u._buffer,u._offset,u._chunkSize);return m.callback=y,void(m.buffer=e)}if(!h)return!1;r()}}_.buffer=e,_.callback=y},o.inherits(b,P),o.inherits(v,P),o.inherits(w,P),o.inherits(E,P),o.inherits(x,P),o.inherits(S,P),o.inherits(k,P)}).call(this,r(3))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(t,d){if(void 0===t)throw"dicomParser.parseDicom: missing required parameter 'byteArray'";function c(l){var c=function(e){if(void 0===e.elements.x00020010)throw"dicomParser.parseDicom: missing required meta header attribute 0002,0010";var r=e.elements.x00020010;return u.readFixedString(t,r.dataOffset,r.length)}(l),p=function(e){if("1.2.840.10008.1.2"===e)return!1;return!0}(c),g=function(o,l){if("1.2.840.10008.1.2.1.99"===o){if(d&&d.inflater){var u=d.inflater(t,l);return new a.default(s.default,u,0)}if(void 0!==e&&this.module!==e){var h=r(68),c=(0,f.default)(t,l,t.length-l),p=h.inflateRawSync(c),g=(0,n.default)(t,p.length+l);return t.copy(g,0,0,l),p.copy(g,l),new a.default(s.default,g,0)}if("undefined"!=typeof pako){var m=t.slice(l),_=pako.inflateRaw(m),y=(0,n.default)(t,_.length+l);return y.set(t.slice(0,l),0),y.set(_,l),new a.default(s.default,y,0)}throw"dicomParser.parseDicom: no inflater available to handle deflate transfer syntax"}if("1.2.840.10008.1.2.2"===o)return new a.default(i.default,t,l);return new a.default(s.default,t,l)}(c,l.position),m=new o.default(g.byteArrayParser,g.byteArray,{});m.warnings=g.warnings;try{p?h.parseDicomDataSetExplicit(m,g,g.byteArray.length,d):h.parseDicomDataSetImplicit(m,g,g.byteArray.length,d)}catch(e){var _={exception:e,dataSet:m};throw _}return m}return p=(0,l.default)(t,d),g=c(p),function(e,t){for(var r in e.elements)e.elements.hasOwnProperty(r)&&(t.elements[r]=e.elements[r]);return void 0!==e.warnings&&(t.warnings=e.warnings.concat(t.warnings)),t}(p,g);var p,g};var n=c(r(22)),i=c(r(38)),a=c(r(12)),o=c(r(7)),s=c(r(21)),l=c(r(37)),f=c(r(11)),u=d(r(14)),h=d(r(16));function d(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function c(e){return e&&e.__esModule?e:{default:e}}}).call(this,r(69)(e))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="1.8.4"},function(e,t){t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,l=(1<>1,u=-7,h=r?i-1:0,d=r?-1:1,c=e[t+h];for(h+=d,a=c&(1<<-u)-1,c>>=-u,u+=s;u>0;a=256*a+e[t+h],h+=d,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+e[t+h],h+=d,u-=8);if(0===a)a=1-f;else{if(a===l)return o?NaN:1/0*(c?-1:1);o+=Math.pow(2,n),a-=f}return(c?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,l,f=8*a-i-1,u=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,c=n?0:a-1,p=n?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(t*l-1)*Math.pow(2,i),o+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+c]=255&s,c+=p,s/=256,i-=8);for(o=o<0;e[r+c]=255&o,c+=p,o/=256,f-=8);e[r+c-p]|=128*g}},function(e,t,r){"use strict";t.byteLength=function(e){return 3*e.length/4-f(e)},t.toByteArray=function(e){var t,r,n,o,s,l=e.length;o=f(e),s=new a(3*l/4-o),r=o>0?l-4:l;var u=0;for(t=0;t>16&255,s[u++]=n>>8&255,s[u++]=255&n;2===o?(n=i[e.charCodeAt(t)]<<2|i[e.charCodeAt(t+1)]>>4,s[u++]=255&n):1===o&&(n=i[e.charCodeAt(t)]<<10|i[e.charCodeAt(t+1)]<<4|i[e.charCodeAt(t+2)]>>2,s[u++]=n>>8&255,s[u++]=255&n);return s},t.fromByteArray=function(e){for(var t,r=e.length,i=r%3,a="",o=[],s=0,l=r-i;sl?l:s+16383));1===i?(t=e[r-1],a+=n[t>>2],a+=n[t<<4&63],a+="=="):2===i&&(t=(e[r-2]<<8)+e[r-1],a+=n[t>>10],a+=n[t>>4&63],a+=n[t<<2&63],a+="=");return o.push(a),o.join("")};for(var n=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function u(e,t,r){for(var i,a,o=[],s=t;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t,r){"use strict";function n(e,t){return 255===e.byteArray[t]&&217===e.byteArray[t+1]}function i(e,t,r){var i=t.fragments[r];return!(!n(e,i.position+i.length-2)&&!n(e,i.position+i.length-3))}function a(e,t,r){for(var n=r;n0&&t<=12&&e>0&&e<=function(e,t){switch(e){case 2:return t%4==0&&t%100||t%400==0?29:28;case 9:case 4:case 6:case 11:return 30;default:return 31}}(t,r)}(i,n,r))throw"invalid DA '"+e+"'";return{year:r,month:n,day:i}}if(t)throw"invalid DA '"+e+"'";return}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e.length>=2){var r=parseInt(e.substring(0,2),10),n=e.length>=4?parseInt(e.substring(2,4),10):void 0,i=e.length>=6?parseInt(e.substring(4,6),10):void 0,a=e.length>=8?e.substring(7,13):void 0,o=a?parseInt(a,10)*Math.pow(10,6-a.length):void 0;if(t&&(isNaN(r)||void 0!==n&&isNaN(n)||void 0!==i&&isNaN(i)||void 0!==o&&isNaN(o)||r<0||r>23||n&&(n<0||n>59)||i&&(i<0||i>59)||o&&(o<0||o>999999)))throw"invalid TM '"+e+"'";return{hours:r,minutes:n,seconds:i,fractionalSeconds:o}}if(t)throw"invalid TM '"+e+"'";return}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createJPEGBasicOffsetTable=t.explicitDataSetToJS=t.explicitElementToString=t.parseDA=t.parseTM=t.parsePN=t.isPrivateTag=t.isStringVr=void 0;var n=r(26),i=f(r(77)),a=f(r(76)),o=f(r(43)),s=f(r(75)),l=f(r(74));function f(e){return e&&e.__esModule?e:{default:e}}t.isStringVr=n.isStringVr,t.isPrivateTag=n.isPrivateTag,t.parsePN=n.parsePN,t.parseTM=i.default,t.parseDA=a.default,t.explicitElementToString=o.default,t.explicitDataSetToJS=s.default,t.createJPEGBasicOffsetTable=l.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readTag=t.readSequenceItem=t.readSequenceItemsImplicit=t.readSequenceItemsExplicit=t.readPart10Header=t.readEncapsulatedPixelDataFromFragments=t.readEncapsulatedPixelData=t.readEncapsulatedImageFrame=t.readDicomElementImplicit=t.readDicomElementExplicit=t.parseDicom=t.littleEndianByteArrayParser=t.findItemDelimitationItemAndSetElementLength=t.findEndOfEncapsulatedElement=t.findAndSetUNElementLength=t.DataSet=t.sharedCopy=t.ByteStream=t.bigEndianByteArrayParser=t.version=t.alloc=t.readFixedString=t.parseDicomDataSetImplicit=t.parseDicomDataSetExplicit=t.createJPEGBasicOffsetTable=t.explicitDataSetToJS=t.explicitElementToString=t.parseDA=t.parseTM=t.parsePN=t.isPrivateTag=t.isStringVr=void 0;var n=r(78),i=r(16),a=r(14),o=P(r(22)),s=P(r(71)),l=P(r(38)),f=P(r(12)),u=P(r(11)),h=P(r(7)),d=P(r(41)),c=P(r(42)),p=P(r(23)),g=P(r(21)),m=P(r(70)),_=P(r(15)),y=P(r(24)),b=P(r(27)),v=P(r(44)),w=P(r(17)),E=P(r(37)),x=P(r(40)),S=P(r(25)),k=P(r(13)),A=P(r(4));function P(e){return e&&e.__esModule?e:{default:e}}var T={isStringVr:n.isStringVr,isPrivateTag:n.isPrivateTag,parsePN:n.parsePN,parseTM:n.parseTM,parseDA:n.parseDA,explicitElementToString:n.explicitElementToString,explicitDataSetToJS:n.explicitDataSetToJS,createJPEGBasicOffsetTable:n.createJPEGBasicOffsetTable,parseDicomDataSetExplicit:i.parseDicomDataSetExplicit,parseDicomDataSetImplicit:i.parseDicomDataSetImplicit,readFixedString:a.readFixedString,alloc:o.default,version:s.default,bigEndianByteArrayParser:l.default,ByteStream:f.default,sharedCopy:u.default,DataSet:h.default,findAndSetUNElementLength:d.default,findEndOfEncapsulatedElement:c.default,findItemDelimitationItemAndSetElementLength:p.default,littleEndianByteArrayParser:g.default,parseDicom:m.default,readDicomElementExplicit:_.default,readDicomElementImplicit:y.default,readEncapsulatedImageFrame:b.default,readEncapsulatedPixelData:v.default,readEncapsulatedPixelDataFromFragments:w.default,readPart10Header:E.default,readSequenceItemsExplicit:x.default,readSequenceItemsImplicit:S.default,readSequenceItem:k.default,readTag:A.default};t.isStringVr=n.isStringVr,t.isPrivateTag=n.isPrivateTag,t.parsePN=n.parsePN,t.parseTM=n.parseTM,t.parseDA=n.parseDA,t.explicitElementToString=n.explicitElementToString,t.explicitDataSetToJS=n.explicitDataSetToJS,t.createJPEGBasicOffsetTable=n.createJPEGBasicOffsetTable,t.parseDicomDataSetExplicit=i.parseDicomDataSetExplicit,t.parseDicomDataSetImplicit=i.parseDicomDataSetImplicit,t.readFixedString=a.readFixedString,t.alloc=o.default,t.version=s.default,t.bigEndianByteArrayParser=l.default,t.ByteStream=f.default,t.sharedCopy=u.default,t.DataSet=h.default,t.findAndSetUNElementLength=d.default,t.findEndOfEncapsulatedElement=c.default,t.findItemDelimitationItemAndSetElementLength=p.default,t.littleEndianByteArrayParser=g.default,t.parseDicom=m.default,t.readDicomElementExplicit=_.default,t.readDicomElementImplicit=y.default,t.readEncapsulatedImageFrame=b.default,t.readEncapsulatedPixelData=v.default,t.readEncapsulatedPixelDataFromFragments=w.default,t.readPart10Header=E.default,t.readSequenceItemsExplicit=x.default,t.readSequenceItemsImplicit=S.default,t.readSequenceItem=k.default,t.readTag=A.default,t.default=T}])}); +//# sourceMappingURL=dicomParser.min.js.map \ No newline at end of file diff --git a/lib/cornerstone/hammer.js b/lib/cornerstone/hammer.js new file mode 100644 index 0000000..00d2965 --- /dev/null +++ b/lib/cornerstone/hammer.js @@ -0,0 +1,2643 @@ +/*! Hammer.JS - v2.0.7 - 2016-04-22 + * http://hammerjs.github.io/ + * + * Copyright (c) 2016 Jorik Tangelder; + * Licensed under the MIT license */ +(function(window, document, exportName, undefined) { + 'use strict'; + +var VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o']; +var TEST_ELEMENT = document.createElement('div'); + +var TYPE_FUNCTION = 'function'; + +var round = Math.round; +var abs = Math.abs; +var now = Date.now; + +/** + * set a timeout with a given scope + * @param {Function} fn + * @param {Number} timeout + * @param {Object} context + * @returns {number} + */ +function setTimeoutContext(fn, timeout, context) { + return setTimeout(bindFn(fn, context), timeout); +} + +/** + * if the argument is an array, we want to execute the fn on each entry + * if it aint an array we don't want to do a thing. + * this is used by all the methods that accept a single and array argument. + * @param {*|Array} arg + * @param {String} fn + * @param {Object} [context] + * @returns {Boolean} + */ +function invokeArrayArg(arg, fn, context) { + if (Array.isArray(arg)) { + each(arg, context[fn], context); + return true; + } + return false; +} + +/** + * walk objects and arrays + * @param {Object} obj + * @param {Function} iterator + * @param {Object} context + */ +function each(obj, iterator, context) { + var i; + + if (!obj) { + return; + } + + if (obj.forEach) { + obj.forEach(iterator, context); + } else if (obj.length !== undefined) { + i = 0; + while (i < obj.length) { + iterator.call(context, obj[i], i, obj); + i++; + } + } else { + for (i in obj) { + obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj); + } + } +} + +/** + * wrap a method with a deprecation warning and stack trace + * @param {Function} method + * @param {String} name + * @param {String} message + * @returns {Function} A new function wrapping the supplied method. + */ +function deprecate(method, name, message) { + var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\n' + message + ' AT \n'; + return function() { + var e = new Error('get-stack-trace'); + var stack = e && e.stack ? e.stack.replace(/^[^\(]+?[\n$]/gm, '') + .replace(/^\s+at\s+/gm, '') + .replace(/^Object.\s*\(/gm, '{anonymous}()@') : 'Unknown Stack Trace'; + + var log = window.console && (window.console.warn || window.console.log); + if (log) { + log.call(window.console, deprecationMessage, stack); + } + return method.apply(this, arguments); + }; +} + +/** + * extend object. + * means that properties in dest will be overwritten by the ones in src. + * @param {Object} target + * @param {...Object} objects_to_assign + * @returns {Object} target + */ +var assign; +if (typeof Object.assign !== 'function') { + assign = function assign(target) { + if (target === undefined || target === null) { + throw new TypeError('Cannot convert undefined or null to object'); + } + + var output = Object(target); + for (var index = 1; index < arguments.length; index++) { + var source = arguments[index]; + if (source !== undefined && source !== null) { + for (var nextKey in source) { + if (source.hasOwnProperty(nextKey)) { + output[nextKey] = source[nextKey]; + } + } + } + } + return output; + }; +} else { + assign = Object.assign; +} + +/** + * extend object. + * means that properties in dest will be overwritten by the ones in src. + * @param {Object} dest + * @param {Object} src + * @param {Boolean} [merge=false] + * @returns {Object} dest + */ +var extend = deprecate(function extend(dest, src, merge) { + var keys = Object.keys(src); + var i = 0; + while (i < keys.length) { + if (!merge || (merge && dest[keys[i]] === undefined)) { + dest[keys[i]] = src[keys[i]]; + } + i++; + } + return dest; +}, 'extend', 'Use `assign`.'); + +/** + * merge the values from src in the dest. + * means that properties that exist in dest will not be overwritten by src + * @param {Object} dest + * @param {Object} src + * @returns {Object} dest + */ +var merge = deprecate(function merge(dest, src) { + return extend(dest, src, true); +}, 'merge', 'Use `assign`.'); + +/** + * simple class inheritance + * @param {Function} child + * @param {Function} base + * @param {Object} [properties] + */ +function inherit(child, base, properties) { + var baseP = base.prototype, + childP; + + childP = child.prototype = Object.create(baseP); + childP.constructor = child; + childP._super = baseP; + + if (properties) { + assign(childP, properties); + } +} + +/** + * simple function bind + * @param {Function} fn + * @param {Object} context + * @returns {Function} + */ +function bindFn(fn, context) { + return function boundFn() { + return fn.apply(context, arguments); + }; +} + +/** + * let a boolean value also be a function that must return a boolean + * this first item in args will be used as the context + * @param {Boolean|Function} val + * @param {Array} [args] + * @returns {Boolean} + */ +function boolOrFn(val, args) { + if (typeof val == TYPE_FUNCTION) { + return val.apply(args ? args[0] || undefined : undefined, args); + } + return val; +} + +/** + * use the val2 when val1 is undefined + * @param {*} val1 + * @param {*} val2 + * @returns {*} + */ +function ifUndefined(val1, val2) { + return (val1 === undefined) ? val2 : val1; +} + +/** + * addEventListener with multiple events at once + * @param {EventTarget} target + * @param {String} types + * @param {Function} handler + */ +function addEventListeners(target, types, handler) { + each(splitStr(types), function(type) { + target.addEventListener(type, handler, false); + }); +} + +/** + * removeEventListener with multiple events at once + * @param {EventTarget} target + * @param {String} types + * @param {Function} handler + */ +function removeEventListeners(target, types, handler) { + each(splitStr(types), function(type) { + target.removeEventListener(type, handler, false); + }); +} + +/** + * find if a node is in the given parent + * @method hasParent + * @param {HTMLElement} node + * @param {HTMLElement} parent + * @return {Boolean} found + */ +function hasParent(node, parent) { + while (node) { + if (node == parent) { + return true; + } + node = node.parentNode; + } + return false; +} + +/** + * small indexOf wrapper + * @param {String} str + * @param {String} find + * @returns {Boolean} found + */ +function inStr(str, find) { + return str.indexOf(find) > -1; +} + +/** + * split string on whitespace + * @param {String} str + * @returns {Array} words + */ +function splitStr(str) { + return str.trim().split(/\s+/g); +} + +/** + * find if a array contains the object using indexOf or a simple polyFill + * @param {Array} src + * @param {String} find + * @param {String} [findByKey] + * @return {Boolean|Number} false when not found, or the index + */ +function inArray(src, find, findByKey) { + if (src.indexOf && !findByKey) { + return src.indexOf(find); + } else { + var i = 0; + while (i < src.length) { + if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) { + return i; + } + i++; + } + return -1; + } +} + +/** + * convert array-like objects to real arrays + * @param {Object} obj + * @returns {Array} + */ +function toArray(obj) { + return Array.prototype.slice.call(obj, 0); +} + +/** + * unique array with objects based on a key (like 'id') or just by the array's value + * @param {Array} src [{id:1},{id:2},{id:1}] + * @param {String} [key] + * @param {Boolean} [sort=False] + * @returns {Array} [{id:1},{id:2}] + */ +function uniqueArray(src, key, sort) { + var results = []; + var values = []; + var i = 0; + + while (i < src.length) { + var val = key ? src[i][key] : src[i]; + if (inArray(values, val) < 0) { + results.push(src[i]); + } + values[i] = val; + i++; + } + + if (sort) { + if (!key) { + results = results.sort(); + } else { + results = results.sort(function sortUniqueArray(a, b) { + return a[key] > b[key]; + }); + } + } + + return results; +} + +/** + * get the prefixed property + * @param {Object} obj + * @param {String} property + * @returns {String|Undefined} prefixed + */ +function prefixed(obj, property) { + var prefix, prop; + var camelProp = property[0].toUpperCase() + property.slice(1); + + var i = 0; + while (i < VENDOR_PREFIXES.length) { + prefix = VENDOR_PREFIXES[i]; + prop = (prefix) ? prefix + camelProp : property; + + if (prop in obj) { + return prop; + } + i++; + } + return undefined; +} + +/** + * get a unique id + * @returns {number} uniqueId + */ +var _uniqueId = 1; +function uniqueId() { + return _uniqueId++; +} + +/** + * get the window object of an element + * @param {HTMLElement} element + * @returns {DocumentView|Window} + */ +function getWindowForElement(element) { + var doc = element.ownerDocument || element; + return (doc.defaultView || doc.parentWindow || window); +} + +var MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i; + +var SUPPORT_TOUCH = ('ontouchstart' in window); +var SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined; +var SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent); + +var INPUT_TYPE_TOUCH = 'touch'; +var INPUT_TYPE_PEN = 'pen'; +var INPUT_TYPE_MOUSE = 'mouse'; +var INPUT_TYPE_KINECT = 'kinect'; + +var COMPUTE_INTERVAL = 25; + +var INPUT_START = 1; +var INPUT_MOVE = 2; +var INPUT_END = 4; +var INPUT_CANCEL = 8; + +var DIRECTION_NONE = 1; +var DIRECTION_LEFT = 2; +var DIRECTION_RIGHT = 4; +var DIRECTION_UP = 8; +var DIRECTION_DOWN = 16; + +var DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT; +var DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN; +var DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL; + +var PROPS_XY = ['x', 'y']; +var PROPS_CLIENT_XY = ['clientX', 'clientY']; + +/** + * create new input type manager + * @param {Manager} manager + * @param {Function} callback + * @returns {Input} + * @constructor + */ +function Input(manager, callback) { + var self = this; + this.manager = manager; + this.callback = callback; + this.element = manager.element; + this.target = manager.options.inputTarget; + + // smaller wrapper around the handler, for the scope and the enabled state of the manager, + // so when disabled the input events are completely bypassed. + this.domHandler = function(ev) { + if (boolOrFn(manager.options.enable, [manager])) { + self.handler(ev); + } + }; + + this.init(); + +} + +Input.prototype = { + /** + * should handle the inputEvent data and trigger the callback + * @virtual + */ + handler: function() { }, + + /** + * bind the events + */ + init: function() { + this.evEl && addEventListeners(this.element, this.evEl, this.domHandler); + this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler); + this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler); + }, + + /** + * unbind the events + */ + destroy: function() { + this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler); + this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler); + this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler); + } +}; + +/** + * create new input type manager + * called by the Manager constructor + * @param {Hammer} manager + * @returns {Input} + */ +function createInputInstance(manager) { + var Type; + var inputClass = manager.options.inputClass; + + if (inputClass) { + Type = inputClass; + } else if (SUPPORT_POINTER_EVENTS) { + Type = PointerEventInput; + } else if (SUPPORT_ONLY_TOUCH) { + Type = TouchInput; + } else if (!SUPPORT_TOUCH) { + Type = MouseInput; + } else { + Type = TouchMouseInput; + } + return new (Type)(manager, inputHandler); +} + +/** + * handle input events + * @param {Manager} manager + * @param {String} eventType + * @param {Object} input + */ +function inputHandler(manager, eventType, input) { + var pointersLen = input.pointers.length; + var changedPointersLen = input.changedPointers.length; + var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0)); + var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0)); + + input.isFirst = !!isFirst; + input.isFinal = !!isFinal; + + if (isFirst) { + manager.session = {}; + } + + // source event is the normalized value of the domEvents + // like 'touchstart, mouseup, pointerdown' + input.eventType = eventType; + + // compute scale, rotation etc + computeInputData(manager, input); + + // emit secret event + manager.emit('hammer.input', input); + + manager.recognize(input); + manager.session.prevInput = input; +} + +/** + * extend the data with some usable properties like scale, rotate, velocity etc + * @param {Object} manager + * @param {Object} input + */ +function computeInputData(manager, input) { + var session = manager.session; + var pointers = input.pointers; + var pointersLength = pointers.length; + + // store the first input to calculate the distance and direction + if (!session.firstInput) { + session.firstInput = simpleCloneInputData(input); + } + + // to compute scale and rotation we need to store the multiple touches + if (pointersLength > 1 && !session.firstMultiple) { + session.firstMultiple = simpleCloneInputData(input); + } else if (pointersLength === 1) { + session.firstMultiple = false; + } + + var firstInput = session.firstInput; + var firstMultiple = session.firstMultiple; + var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center; + + var center = input.center = getCenter(pointers); + input.timeStamp = now(); + input.deltaTime = input.timeStamp - firstInput.timeStamp; + + input.angle = getAngle(offsetCenter, center); + input.distance = getDistance(offsetCenter, center); + + computeDeltaXY(session, input); + input.offsetDirection = getDirection(input.deltaX, input.deltaY); + + var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY); + input.overallVelocityX = overallVelocity.x; + input.overallVelocityY = overallVelocity.y; + input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y; + + input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1; + input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0; + + input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length > + session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers); + + computeIntervalInputData(session, input); + + // find the correct target + var target = manager.element; + if (hasParent(input.srcEvent.target, target)) { + target = input.srcEvent.target; + } + input.target = target; +} + +function computeDeltaXY(session, input) { + var center = input.center; + var offset = session.offsetDelta || {}; + var prevDelta = session.prevDelta || {}; + var prevInput = session.prevInput || {}; + + if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) { + prevDelta = session.prevDelta = { + x: prevInput.deltaX || 0, + y: prevInput.deltaY || 0 + }; + + offset = session.offsetDelta = { + x: center.x, + y: center.y + }; + } + + input.deltaX = prevDelta.x + (center.x - offset.x); + input.deltaY = prevDelta.y + (center.y - offset.y); +} + +/** + * velocity is calculated every x ms + * @param {Object} session + * @param {Object} input + */ +function computeIntervalInputData(session, input) { + var last = session.lastInterval || input, + deltaTime = input.timeStamp - last.timeStamp, + velocity, velocityX, velocityY, direction; + + if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) { + var deltaX = input.deltaX - last.deltaX; + var deltaY = input.deltaY - last.deltaY; + + var v = getVelocity(deltaTime, deltaX, deltaY); + velocityX = v.x; + velocityY = v.y; + velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y; + direction = getDirection(deltaX, deltaY); + + session.lastInterval = input; + } else { + // use latest velocity info if it doesn't overtake a minimum period + velocity = last.velocity; + velocityX = last.velocityX; + velocityY = last.velocityY; + direction = last.direction; + } + + input.velocity = velocity; + input.velocityX = velocityX; + input.velocityY = velocityY; + input.direction = direction; +} + +/** + * create a simple clone from the input used for storage of firstInput and firstMultiple + * @param {Object} input + * @returns {Object} clonedInputData + */ +function simpleCloneInputData(input) { + // make a simple copy of the pointers because we will get a reference if we don't + // we only need clientXY for the calculations + var pointers = []; + var i = 0; + while (i < input.pointers.length) { + pointers[i] = { + clientX: round(input.pointers[i].clientX), + clientY: round(input.pointers[i].clientY) + }; + i++; + } + + return { + timeStamp: now(), + pointers: pointers, + center: getCenter(pointers), + deltaX: input.deltaX, + deltaY: input.deltaY + }; +} + +/** + * get the center of all the pointers + * @param {Array} pointers + * @return {Object} center contains `x` and `y` properties + */ +function getCenter(pointers) { + var pointersLength = pointers.length; + + // no need to loop when only one touch + if (pointersLength === 1) { + return { + x: round(pointers[0].clientX), + y: round(pointers[0].clientY) + }; + } + + var x = 0, y = 0, i = 0; + while (i < pointersLength) { + x += pointers[i].clientX; + y += pointers[i].clientY; + i++; + } + + return { + x: round(x / pointersLength), + y: round(y / pointersLength) + }; +} + +/** + * calculate the velocity between two points. unit is in px per ms. + * @param {Number} deltaTime + * @param {Number} x + * @param {Number} y + * @return {Object} velocity `x` and `y` + */ +function getVelocity(deltaTime, x, y) { + return { + x: x / deltaTime || 0, + y: y / deltaTime || 0 + }; +} + +/** + * get the direction between two points + * @param {Number} x + * @param {Number} y + * @return {Number} direction + */ +function getDirection(x, y) { + if (x === y) { + return DIRECTION_NONE; + } + + if (abs(x) >= abs(y)) { + return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT; + } + return y < 0 ? DIRECTION_UP : DIRECTION_DOWN; +} + +/** + * calculate the absolute distance between two points + * @param {Object} p1 {x, y} + * @param {Object} p2 {x, y} + * @param {Array} [props] containing x and y keys + * @return {Number} distance + */ +function getDistance(p1, p2, props) { + if (!props) { + props = PROPS_XY; + } + var x = p2[props[0]] - p1[props[0]], + y = p2[props[1]] - p1[props[1]]; + + return Math.sqrt((x * x) + (y * y)); +} + +/** + * calculate the angle between two coordinates + * @param {Object} p1 + * @param {Object} p2 + * @param {Array} [props] containing x and y keys + * @return {Number} angle + */ +function getAngle(p1, p2, props) { + if (!props) { + props = PROPS_XY; + } + var x = p2[props[0]] - p1[props[0]], + y = p2[props[1]] - p1[props[1]]; + return Math.atan2(y, x) * 180 / Math.PI; +} + +/** + * calculate the rotation degrees between two pointersets + * @param {Array} start array of pointers + * @param {Array} end array of pointers + * @return {Number} rotation + */ +function getRotation(start, end) { + return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY); +} + +/** + * calculate the scale factor between two pointersets + * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out + * @param {Array} start array of pointers + * @param {Array} end array of pointers + * @return {Number} scale + */ +function getScale(start, end) { + return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY); +} + +var MOUSE_INPUT_MAP = { + mousedown: INPUT_START, + mousemove: INPUT_MOVE, + mouseup: INPUT_END +}; + +var MOUSE_ELEMENT_EVENTS = 'mousedown'; +var MOUSE_WINDOW_EVENTS = 'mousemove mouseup'; + +/** + * Mouse events input + * @constructor + * @extends Input + */ +function MouseInput() { + this.evEl = MOUSE_ELEMENT_EVENTS; + this.evWin = MOUSE_WINDOW_EVENTS; + + this.pressed = false; // mousedown state + + Input.apply(this, arguments); +} + +inherit(MouseInput, Input, { + /** + * handle mouse events + * @param {Object} ev + */ + handler: function MEhandler(ev) { + var eventType = MOUSE_INPUT_MAP[ev.type]; + + // on start we want to have the left mouse button down + if (eventType & INPUT_START && ev.button === 0) { + this.pressed = true; + } + + if (eventType & INPUT_MOVE && ev.which !== 1) { + eventType = INPUT_END; + } + + // mouse must be down + if (!this.pressed) { + return; + } + + if (eventType & INPUT_END) { + this.pressed = false; + } + + this.callback(this.manager, eventType, { + pointers: [ev], + changedPointers: [ev], + pointerType: INPUT_TYPE_MOUSE, + srcEvent: ev + }); + } +}); + +var POINTER_INPUT_MAP = { + pointerdown: INPUT_START, + pointermove: INPUT_MOVE, + pointerup: INPUT_END, + pointercancel: INPUT_CANCEL, + pointerout: INPUT_CANCEL +}; + +// in IE10 the pointer types is defined as an enum +var IE10_POINTER_TYPE_ENUM = { + 2: INPUT_TYPE_TOUCH, + 3: INPUT_TYPE_PEN, + 4: INPUT_TYPE_MOUSE, + 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816 +}; + +var POINTER_ELEMENT_EVENTS = 'pointerdown'; +var POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel'; + +// IE10 has prefixed support, and case-sensitive +if (window.MSPointerEvent && !window.PointerEvent) { + POINTER_ELEMENT_EVENTS = 'MSPointerDown'; + POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel'; +} + +/** + * Pointer events input + * @constructor + * @extends Input + */ +function PointerEventInput() { + this.evEl = POINTER_ELEMENT_EVENTS; + this.evWin = POINTER_WINDOW_EVENTS; + + Input.apply(this, arguments); + + this.store = (this.manager.session.pointerEvents = []); +} + +inherit(PointerEventInput, Input, { + /** + * handle mouse events + * @param {Object} ev + */ + handler: function PEhandler(ev) { + var store = this.store; + var removePointer = false; + + var eventTypeNormalized = ev.type.toLowerCase().replace('ms', ''); + var eventType = POINTER_INPUT_MAP[eventTypeNormalized]; + var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType; + + var isTouch = (pointerType == INPUT_TYPE_TOUCH); + + // get index of the event in the store + var storeIndex = inArray(store, ev.pointerId, 'pointerId'); + + // start and mouse must be down + if (eventType & INPUT_START && (ev.button === 0 || isTouch)) { + if (storeIndex < 0) { + store.push(ev); + storeIndex = store.length - 1; + } + } else if (eventType & (INPUT_END | INPUT_CANCEL)) { + removePointer = true; + } + + // it not found, so the pointer hasn't been down (so it's probably a hover) + if (storeIndex < 0) { + return; + } + + // update the event in the store + store[storeIndex] = ev; + + this.callback(this.manager, eventType, { + pointers: store, + changedPointers: [ev], + pointerType: pointerType, + srcEvent: ev + }); + + if (removePointer) { + // remove from the store + store.splice(storeIndex, 1); + } + } +}); + +var SINGLE_TOUCH_INPUT_MAP = { + touchstart: INPUT_START, + touchmove: INPUT_MOVE, + touchend: INPUT_END, + touchcancel: INPUT_CANCEL +}; + +var SINGLE_TOUCH_TARGET_EVENTS = 'touchstart'; +var SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel'; + +/** + * Touch events input + * @constructor + * @extends Input + */ +function SingleTouchInput() { + this.evTarget = SINGLE_TOUCH_TARGET_EVENTS; + this.evWin = SINGLE_TOUCH_WINDOW_EVENTS; + this.started = false; + + Input.apply(this, arguments); +} + +inherit(SingleTouchInput, Input, { + handler: function TEhandler(ev) { + var type = SINGLE_TOUCH_INPUT_MAP[ev.type]; + + // should we handle the touch events? + if (type === INPUT_START) { + this.started = true; + } + + if (!this.started) { + return; + } + + var touches = normalizeSingleTouches.call(this, ev, type); + + // when done, reset the started state + if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) { + this.started = false; + } + + this.callback(this.manager, type, { + pointers: touches[0], + changedPointers: touches[1], + pointerType: INPUT_TYPE_TOUCH, + srcEvent: ev + }); + } +}); + +/** + * @this {TouchInput} + * @param {Object} ev + * @param {Number} type flag + * @returns {undefined|Array} [all, changed] + */ +function normalizeSingleTouches(ev, type) { + var all = toArray(ev.touches); + var changed = toArray(ev.changedTouches); + + if (type & (INPUT_END | INPUT_CANCEL)) { + all = uniqueArray(all.concat(changed), 'identifier', true); + } + + return [all, changed]; +} + +var TOUCH_INPUT_MAP = { + touchstart: INPUT_START, + touchmove: INPUT_MOVE, + touchend: INPUT_END, + touchcancel: INPUT_CANCEL +}; + +var TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel'; + +/** + * Multi-user touch events input + * @constructor + * @extends Input + */ +function TouchInput() { + this.evTarget = TOUCH_TARGET_EVENTS; + this.targetIds = {}; + + Input.apply(this, arguments); +} + +inherit(TouchInput, Input, { + handler: function MTEhandler(ev) { + var type = TOUCH_INPUT_MAP[ev.type]; + var touches = getTouches.call(this, ev, type); + if (!touches) { + return; + } + + this.callback(this.manager, type, { + pointers: touches[0], + changedPointers: touches[1], + pointerType: INPUT_TYPE_TOUCH, + srcEvent: ev + }); + } +}); + +/** + * @this {TouchInput} + * @param {Object} ev + * @param {Number} type flag + * @returns {undefined|Array} [all, changed] + */ +function getTouches(ev, type) { + var allTouches = toArray(ev.touches); + var targetIds = this.targetIds; + + // when there is only one touch, the process can be simplified + if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) { + targetIds[allTouches[0].identifier] = true; + return [allTouches, allTouches]; + } + + var i, + targetTouches, + changedTouches = toArray(ev.changedTouches), + changedTargetTouches = [], + target = this.target; + + // get target touches from touches + targetTouches = allTouches.filter(function(touch) { + return hasParent(touch.target, target); + }); + + // collect touches + if (type === INPUT_START) { + i = 0; + while (i < targetTouches.length) { + targetIds[targetTouches[i].identifier] = true; + i++; + } + } + + // filter changed touches to only contain touches that exist in the collected target ids + i = 0; + while (i < changedTouches.length) { + if (targetIds[changedTouches[i].identifier]) { + changedTargetTouches.push(changedTouches[i]); + } + + // cleanup removed touches + if (type & (INPUT_END | INPUT_CANCEL)) { + delete targetIds[changedTouches[i].identifier]; + } + i++; + } + + if (!changedTargetTouches.length) { + return; + } + + return [ + // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel' + uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true), + changedTargetTouches + ]; +} + +/** + * Combined touch and mouse input + * + * Touch has a higher priority then mouse, and while touching no mouse events are allowed. + * This because touch devices also emit mouse events while doing a touch. + * + * @constructor + * @extends Input + */ + +var DEDUP_TIMEOUT = 2500; +var DEDUP_DISTANCE = 25; + +function TouchMouseInput() { + Input.apply(this, arguments); + + var handler = bindFn(this.handler, this); + this.touch = new TouchInput(this.manager, handler); + this.mouse = new MouseInput(this.manager, handler); + + this.primaryTouch = null; + this.lastTouches = []; +} + +inherit(TouchMouseInput, Input, { + /** + * handle mouse and touch events + * @param {Hammer} manager + * @param {String} inputEvent + * @param {Object} inputData + */ + handler: function TMEhandler(manager, inputEvent, inputData) { + var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH), + isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE); + + if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) { + return; + } + + // when we're in a touch event, record touches to de-dupe synthetic mouse event + if (isTouch) { + recordTouches.call(this, inputEvent, inputData); + } else if (isMouse && isSyntheticEvent.call(this, inputData)) { + return; + } + + this.callback(manager, inputEvent, inputData); + }, + + /** + * remove the event listeners + */ + destroy: function destroy() { + this.touch.destroy(); + this.mouse.destroy(); + } +}); + +function recordTouches(eventType, eventData) { + if (eventType & INPUT_START) { + this.primaryTouch = eventData.changedPointers[0].identifier; + setLastTouch.call(this, eventData); + } else if (eventType & (INPUT_END | INPUT_CANCEL)) { + setLastTouch.call(this, eventData); + } +} + +function setLastTouch(eventData) { + var touch = eventData.changedPointers[0]; + + if (touch.identifier === this.primaryTouch) { + var lastTouch = {x: touch.clientX, y: touch.clientY}; + this.lastTouches.push(lastTouch); + var lts = this.lastTouches; + var removeLastTouch = function() { + var i = lts.indexOf(lastTouch); + if (i > -1) { + lts.splice(i, 1); + } + }; + setTimeout(removeLastTouch, DEDUP_TIMEOUT); + } +} + +function isSyntheticEvent(eventData) { + var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY; + for (var i = 0; i < this.lastTouches.length; i++) { + var t = this.lastTouches[i]; + var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y); + if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) { + return true; + } + } + return false; +} + +var PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction'); +var NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined; + +// magical touchAction value +var TOUCH_ACTION_COMPUTE = 'compute'; +var TOUCH_ACTION_AUTO = 'auto'; +var TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented +var TOUCH_ACTION_NONE = 'none'; +var TOUCH_ACTION_PAN_X = 'pan-x'; +var TOUCH_ACTION_PAN_Y = 'pan-y'; +var TOUCH_ACTION_MAP = getTouchActionProps(); + +/** + * Touch Action + * sets the touchAction property or uses the js alternative + * @param {Manager} manager + * @param {String} value + * @constructor + */ +function TouchAction(manager, value) { + this.manager = manager; + this.set(value); +} + +TouchAction.prototype = { + /** + * set the touchAction value on the element or enable the polyfill + * @param {String} value + */ + set: function(value) { + // find out the touch-action by the event handlers + if (value == TOUCH_ACTION_COMPUTE) { + value = this.compute(); + } + + if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) { + this.manager.element.style[PREFIXED_TOUCH_ACTION] = value; + } + this.actions = value.toLowerCase().trim(); + }, + + /** + * just re-set the touchAction value + */ + update: function() { + this.set(this.manager.options.touchAction); + }, + + /** + * compute the value for the touchAction property based on the recognizer's settings + * @returns {String} value + */ + compute: function() { + var actions = []; + each(this.manager.recognizers, function(recognizer) { + if (boolOrFn(recognizer.options.enable, [recognizer])) { + actions = actions.concat(recognizer.getTouchAction()); + } + }); + return cleanTouchActions(actions.join(' ')); + }, + + /** + * this method is called on each input cycle and provides the preventing of the browser behavior + * @param {Object} input + */ + preventDefaults: function(input) { + var srcEvent = input.srcEvent; + var direction = input.offsetDirection; + + // if the touch action did prevented once this session + if (this.manager.session.prevented) { + srcEvent.preventDefault(); + return; + } + + var actions = this.actions; + var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE]; + var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y]; + var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X]; + + if (hasNone) { + //do not prevent defaults if this is a tap gesture + + var isTapPointer = input.pointers.length === 1; + var isTapMovement = input.distance < 2; + var isTapTouchTime = input.deltaTime < 250; + + if (isTapPointer && isTapMovement && isTapTouchTime) { + return; + } + } + + if (hasPanX && hasPanY) { + // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent + return; + } + + if (hasNone || + (hasPanY && direction & DIRECTION_HORIZONTAL) || + (hasPanX && direction & DIRECTION_VERTICAL)) { + return this.preventSrc(srcEvent); + } + }, + + /** + * call preventDefault to prevent the browser's default behavior (scrolling in most cases) + * @param {Object} srcEvent + */ + preventSrc: function(srcEvent) { + this.manager.session.prevented = true; + srcEvent.preventDefault(); + } +}; + +/** + * when the touchActions are collected they are not a valid value, so we need to clean things up. * + * @param {String} actions + * @returns {*} + */ +function cleanTouchActions(actions) { + // none + if (inStr(actions, TOUCH_ACTION_NONE)) { + return TOUCH_ACTION_NONE; + } + + var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X); + var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y); + + // if both pan-x and pan-y are set (different recognizers + // for different directions, e.g. horizontal pan but vertical swipe?) + // we need none (as otherwise with pan-x pan-y combined none of these + // recognizers will work, since the browser would handle all panning + if (hasPanX && hasPanY) { + return TOUCH_ACTION_NONE; + } + + // pan-x OR pan-y + if (hasPanX || hasPanY) { + return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y; + } + + // manipulation + if (inStr(actions, TOUCH_ACTION_MANIPULATION)) { + return TOUCH_ACTION_MANIPULATION; + } + + return TOUCH_ACTION_AUTO; +} + +function getTouchActionProps() { + if (!NATIVE_TOUCH_ACTION) { + return false; + } + var touchMap = {}; + var cssSupports = window.CSS && window.CSS.supports; + ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) { + + // If css.supports is not supported but there is native touch-action assume it supports + // all values. This is the case for IE 10 and 11. + touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true; + }); + return touchMap; +} + +/** + * Recognizer flow explained; * + * All recognizers have the initial state of POSSIBLE when a input session starts. + * The definition of a input session is from the first input until the last input, with all it's movement in it. * + * Example session for mouse-input: mousedown -> mousemove -> mouseup + * + * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed + * which determines with state it should be. + * + * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to + * POSSIBLE to give it another change on the next cycle. + * + * Possible + * | + * +-----+---------------+ + * | | + * +-----+-----+ | + * | | | + * Failed Cancelled | + * +-------+------+ + * | | + * Recognized Began + * | + * Changed + * | + * Ended/Recognized + */ +var STATE_POSSIBLE = 1; +var STATE_BEGAN = 2; +var STATE_CHANGED = 4; +var STATE_ENDED = 8; +var STATE_RECOGNIZED = STATE_ENDED; +var STATE_CANCELLED = 16; +var STATE_FAILED = 32; + +/** + * Recognizer + * Every recognizer needs to extend from this class. + * @constructor + * @param {Object} options + */ +function Recognizer(options) { + this.options = assign({}, this.defaults, options || {}); + + this.id = uniqueId(); + + this.manager = null; + + // default is enable true + this.options.enable = ifUndefined(this.options.enable, true); + + this.state = STATE_POSSIBLE; + + this.simultaneous = {}; + this.requireFail = []; +} + +Recognizer.prototype = { + /** + * @virtual + * @type {Object} + */ + defaults: {}, + + /** + * set options + * @param {Object} options + * @return {Recognizer} + */ + set: function(options) { + assign(this.options, options); + + // also update the touchAction, in case something changed about the directions/enabled state + this.manager && this.manager.touchAction.update(); + return this; + }, + + /** + * recognize simultaneous with an other recognizer. + * @param {Recognizer} otherRecognizer + * @returns {Recognizer} this + */ + recognizeWith: function(otherRecognizer) { + if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) { + return this; + } + + var simultaneous = this.simultaneous; + otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this); + if (!simultaneous[otherRecognizer.id]) { + simultaneous[otherRecognizer.id] = otherRecognizer; + otherRecognizer.recognizeWith(this); + } + return this; + }, + + /** + * drop the simultaneous link. it doesnt remove the link on the other recognizer. + * @param {Recognizer} otherRecognizer + * @returns {Recognizer} this + */ + dropRecognizeWith: function(otherRecognizer) { + if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) { + return this; + } + + otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this); + delete this.simultaneous[otherRecognizer.id]; + return this; + }, + + /** + * recognizer can only run when an other is failing + * @param {Recognizer} otherRecognizer + * @returns {Recognizer} this + */ + requireFailure: function(otherRecognizer) { + if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) { + return this; + } + + var requireFail = this.requireFail; + otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this); + if (inArray(requireFail, otherRecognizer) === -1) { + requireFail.push(otherRecognizer); + otherRecognizer.requireFailure(this); + } + return this; + }, + + /** + * drop the requireFailure link. it does not remove the link on the other recognizer. + * @param {Recognizer} otherRecognizer + * @returns {Recognizer} this + */ + dropRequireFailure: function(otherRecognizer) { + if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) { + return this; + } + + otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this); + var index = inArray(this.requireFail, otherRecognizer); + if (index > -1) { + this.requireFail.splice(index, 1); + } + return this; + }, + + /** + * has require failures boolean + * @returns {boolean} + */ + hasRequireFailures: function() { + return this.requireFail.length > 0; + }, + + /** + * if the recognizer can recognize simultaneous with an other recognizer + * @param {Recognizer} otherRecognizer + * @returns {Boolean} + */ + canRecognizeWith: function(otherRecognizer) { + return !!this.simultaneous[otherRecognizer.id]; + }, + + /** + * You should use `tryEmit` instead of `emit` directly to check + * that all the needed recognizers has failed before emitting. + * @param {Object} input + */ + emit: function(input) { + var self = this; + var state = this.state; + + function emit(event) { + self.manager.emit(event, input); + } + + // 'panstart' and 'panmove' + if (state < STATE_ENDED) { + emit(self.options.event + stateStr(state)); + } + + emit(self.options.event); // simple 'eventName' events + + if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...) + emit(input.additionalEvent); + } + + // panend and pancancel + if (state >= STATE_ENDED) { + emit(self.options.event + stateStr(state)); + } + }, + + /** + * Check that all the require failure recognizers has failed, + * if true, it emits a gesture event, + * otherwise, setup the state to FAILED. + * @param {Object} input + */ + tryEmit: function(input) { + if (this.canEmit()) { + return this.emit(input); + } + // it's failing anyway + this.state = STATE_FAILED; + }, + + /** + * can we emit? + * @returns {boolean} + */ + canEmit: function() { + var i = 0; + while (i < this.requireFail.length) { + if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) { + return false; + } + i++; + } + return true; + }, + + /** + * update the recognizer + * @param {Object} inputData + */ + recognize: function(inputData) { + // make a new copy of the inputData + // so we can change the inputData without messing up the other recognizers + var inputDataClone = assign({}, inputData); + + // is is enabled and allow recognizing? + if (!boolOrFn(this.options.enable, [this, inputDataClone])) { + this.reset(); + this.state = STATE_FAILED; + return; + } + + // reset when we've reached the end + if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) { + this.state = STATE_POSSIBLE; + } + + this.state = this.process(inputDataClone); + + // the recognizer has recognized a gesture + // so trigger an event + if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) { + this.tryEmit(inputDataClone); + } + }, + + /** + * return the state of the recognizer + * the actual recognizing happens in this method + * @virtual + * @param {Object} inputData + * @returns {Const} STATE + */ + process: function(inputData) { }, // jshint ignore:line + + /** + * return the preferred touch-action + * @virtual + * @returns {Array} + */ + getTouchAction: function() { }, + + /** + * called when the gesture isn't allowed to recognize + * like when another is being recognized or it is disabled + * @virtual + */ + reset: function() { } +}; + +/** + * get a usable string, used as event postfix + * @param {Const} state + * @returns {String} state + */ +function stateStr(state) { + if (state & STATE_CANCELLED) { + return 'cancel'; + } else if (state & STATE_ENDED) { + return 'end'; + } else if (state & STATE_CHANGED) { + return 'move'; + } else if (state & STATE_BEGAN) { + return 'start'; + } + return ''; +} + +/** + * direction cons to string + * @param {Const} direction + * @returns {String} + */ +function directionStr(direction) { + if (direction == DIRECTION_DOWN) { + return 'down'; + } else if (direction == DIRECTION_UP) { + return 'up'; + } else if (direction == DIRECTION_LEFT) { + return 'left'; + } else if (direction == DIRECTION_RIGHT) { + return 'right'; + } + return ''; +} + +/** + * get a recognizer by name if it is bound to a manager + * @param {Recognizer|String} otherRecognizer + * @param {Recognizer} recognizer + * @returns {Recognizer} + */ +function getRecognizerByNameIfManager(otherRecognizer, recognizer) { + var manager = recognizer.manager; + if (manager) { + return manager.get(otherRecognizer); + } + return otherRecognizer; +} + +/** + * This recognizer is just used as a base for the simple attribute recognizers. + * @constructor + * @extends Recognizer + */ +function AttrRecognizer() { + Recognizer.apply(this, arguments); +} + +inherit(AttrRecognizer, Recognizer, { + /** + * @namespace + * @memberof AttrRecognizer + */ + defaults: { + /** + * @type {Number} + * @default 1 + */ + pointers: 1 + }, + + /** + * Used to check if it the recognizer receives valid input, like input.distance > 10. + * @memberof AttrRecognizer + * @param {Object} input + * @returns {Boolean} recognized + */ + attrTest: function(input) { + var optionPointers = this.options.pointers; + return optionPointers === 0 || input.pointers.length === optionPointers; + }, + + /** + * Process the input and return the state for the recognizer + * @memberof AttrRecognizer + * @param {Object} input + * @returns {*} State + */ + process: function(input) { + var state = this.state; + var eventType = input.eventType; + + var isRecognized = state & (STATE_BEGAN | STATE_CHANGED); + var isValid = this.attrTest(input); + + // on cancel input and we've recognized before, return STATE_CANCELLED + if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) { + return state | STATE_CANCELLED; + } else if (isRecognized || isValid) { + if (eventType & INPUT_END) { + return state | STATE_ENDED; + } else if (!(state & STATE_BEGAN)) { + return STATE_BEGAN; + } + return state | STATE_CHANGED; + } + return STATE_FAILED; + } +}); + +/** + * Pan + * Recognized when the pointer is down and moved in the allowed direction. + * @constructor + * @extends AttrRecognizer + */ +function PanRecognizer() { + AttrRecognizer.apply(this, arguments); + + this.pX = null; + this.pY = null; +} + +inherit(PanRecognizer, AttrRecognizer, { + /** + * @namespace + * @memberof PanRecognizer + */ + defaults: { + event: 'pan', + threshold: 10, + pointers: 1, + direction: DIRECTION_ALL + }, + + getTouchAction: function() { + var direction = this.options.direction; + var actions = []; + if (direction & DIRECTION_HORIZONTAL) { + actions.push(TOUCH_ACTION_PAN_Y); + } + if (direction & DIRECTION_VERTICAL) { + actions.push(TOUCH_ACTION_PAN_X); + } + return actions; + }, + + directionTest: function(input) { + var options = this.options; + var hasMoved = true; + var distance = input.distance; + var direction = input.direction; + var x = input.deltaX; + var y = input.deltaY; + + // lock to axis? + if (!(direction & options.direction)) { + if (options.direction & DIRECTION_HORIZONTAL) { + direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT; + hasMoved = x != this.pX; + distance = Math.abs(input.deltaX); + } else { + direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN; + hasMoved = y != this.pY; + distance = Math.abs(input.deltaY); + } + } + input.direction = direction; + return hasMoved && distance > options.threshold && direction & options.direction; + }, + + attrTest: function(input) { + return AttrRecognizer.prototype.attrTest.call(this, input) && + (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input))); + }, + + emit: function(input) { + + this.pX = input.deltaX; + this.pY = input.deltaY; + + var direction = directionStr(input.direction); + + if (direction) { + input.additionalEvent = this.options.event + direction; + } + this._super.emit.call(this, input); + } +}); + +/** + * Pinch + * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out). + * @constructor + * @extends AttrRecognizer + */ +function PinchRecognizer() { + AttrRecognizer.apply(this, arguments); +} + +inherit(PinchRecognizer, AttrRecognizer, { + /** + * @namespace + * @memberof PinchRecognizer + */ + defaults: { + event: 'pinch', + threshold: 0, + pointers: 2 + }, + + getTouchAction: function() { + return [TOUCH_ACTION_NONE]; + }, + + attrTest: function(input) { + return this._super.attrTest.call(this, input) && + (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN); + }, + + emit: function(input) { + if (input.scale !== 1) { + var inOut = input.scale < 1 ? 'in' : 'out'; + input.additionalEvent = this.options.event + inOut; + } + this._super.emit.call(this, input); + } +}); + +/** + * Press + * Recognized when the pointer is down for x ms without any movement. + * @constructor + * @extends Recognizer + */ +function PressRecognizer() { + Recognizer.apply(this, arguments); + + this._timer = null; + this._input = null; +} + +inherit(PressRecognizer, Recognizer, { + /** + * @namespace + * @memberof PressRecognizer + */ + defaults: { + event: 'press', + pointers: 1, + time: 251, // minimal time of the pointer to be pressed + threshold: 9 // a minimal movement is ok, but keep it low + }, + + getTouchAction: function() { + return [TOUCH_ACTION_AUTO]; + }, + + process: function(input) { + var options = this.options; + var validPointers = input.pointers.length === options.pointers; + var validMovement = input.distance < options.threshold; + var validTime = input.deltaTime > options.time; + + this._input = input; + + // we only allow little movement + // and we've reached an end event, so a tap is possible + if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) { + this.reset(); + } else if (input.eventType & INPUT_START) { + this.reset(); + this._timer = setTimeoutContext(function() { + this.state = STATE_RECOGNIZED; + this.tryEmit(); + }, options.time, this); + } else if (input.eventType & INPUT_END) { + return STATE_RECOGNIZED; + } + return STATE_FAILED; + }, + + reset: function() { + clearTimeout(this._timer); + }, + + emit: function(input) { + if (this.state !== STATE_RECOGNIZED) { + return; + } + + if (input && (input.eventType & INPUT_END)) { + this.manager.emit(this.options.event + 'up', input); + } else { + this._input.timeStamp = now(); + this.manager.emit(this.options.event, this._input); + } + } +}); + +/** + * Rotate + * Recognized when two or more pointer are moving in a circular motion. + * @constructor + * @extends AttrRecognizer + */ +function RotateRecognizer() { + AttrRecognizer.apply(this, arguments); +} + +inherit(RotateRecognizer, AttrRecognizer, { + /** + * @namespace + * @memberof RotateRecognizer + */ + defaults: { + event: 'rotate', + threshold: 0, + pointers: 2 + }, + + getTouchAction: function() { + return [TOUCH_ACTION_NONE]; + }, + + attrTest: function(input) { + return this._super.attrTest.call(this, input) && + (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN); + } +}); + +/** + * Swipe + * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction. + * @constructor + * @extends AttrRecognizer + */ +function SwipeRecognizer() { + AttrRecognizer.apply(this, arguments); +} + +inherit(SwipeRecognizer, AttrRecognizer, { + /** + * @namespace + * @memberof SwipeRecognizer + */ + defaults: { + event: 'swipe', + threshold: 10, + velocity: 0.3, + direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL, + pointers: 1 + }, + + getTouchAction: function() { + return PanRecognizer.prototype.getTouchAction.call(this); + }, + + attrTest: function(input) { + var direction = this.options.direction; + var velocity; + + if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) { + velocity = input.overallVelocity; + } else if (direction & DIRECTION_HORIZONTAL) { + velocity = input.overallVelocityX; + } else if (direction & DIRECTION_VERTICAL) { + velocity = input.overallVelocityY; + } + + return this._super.attrTest.call(this, input) && + direction & input.offsetDirection && + input.distance > this.options.threshold && + input.maxPointers == this.options.pointers && + abs(velocity) > this.options.velocity && input.eventType & INPUT_END; + }, + + emit: function(input) { + var direction = directionStr(input.offsetDirection); + if (direction) { + this.manager.emit(this.options.event + direction, input); + } + + this.manager.emit(this.options.event, input); + } +}); + +/** + * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur + * between the given interval and position. The delay option can be used to recognize multi-taps without firing + * a single tap. + * + * The eventData from the emitted event contains the property `tapCount`, which contains the amount of + * multi-taps being recognized. + * @constructor + * @extends Recognizer + */ +function TapRecognizer() { + Recognizer.apply(this, arguments); + + // previous time and center, + // used for tap counting + this.pTime = false; + this.pCenter = false; + + this._timer = null; + this._input = null; + this.count = 0; +} + +inherit(TapRecognizer, Recognizer, { + /** + * @namespace + * @memberof PinchRecognizer + */ + defaults: { + event: 'tap', + pointers: 1, + taps: 1, + interval: 300, // max time between the multi-tap taps + time: 250, // max time of the pointer to be down (like finger on the screen) + threshold: 9, // a minimal movement is ok, but keep it low + posThreshold: 10 // a multi-tap can be a bit off the initial position + }, + + getTouchAction: function() { + return [TOUCH_ACTION_MANIPULATION]; + }, + + process: function(input) { + var options = this.options; + + var validPointers = input.pointers.length === options.pointers; + var validMovement = input.distance < options.threshold; + var validTouchTime = input.deltaTime < options.time; + + this.reset(); + + if ((input.eventType & INPUT_START) && (this.count === 0)) { + return this.failTimeout(); + } + + // we only allow little movement + // and we've reached an end event, so a tap is possible + if (validMovement && validTouchTime && validPointers) { + if (input.eventType != INPUT_END) { + return this.failTimeout(); + } + + var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true; + var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold; + + this.pTime = input.timeStamp; + this.pCenter = input.center; + + if (!validMultiTap || !validInterval) { + this.count = 1; + } else { + this.count += 1; + } + + this._input = input; + + // if tap count matches we have recognized it, + // else it has began recognizing... + var tapCount = this.count % options.taps; + if (tapCount === 0) { + // no failing requirements, immediately trigger the tap event + // or wait as long as the multitap interval to trigger + if (!this.hasRequireFailures()) { + return STATE_RECOGNIZED; + } else { + this._timer = setTimeoutContext(function() { + this.state = STATE_RECOGNIZED; + this.tryEmit(); + }, options.interval, this); + return STATE_BEGAN; + } + } + } + return STATE_FAILED; + }, + + failTimeout: function() { + this._timer = setTimeoutContext(function() { + this.state = STATE_FAILED; + }, this.options.interval, this); + return STATE_FAILED; + }, + + reset: function() { + clearTimeout(this._timer); + }, + + emit: function() { + if (this.state == STATE_RECOGNIZED) { + this._input.tapCount = this.count; + this.manager.emit(this.options.event, this._input); + } + } +}); + +/** + * Simple way to create a manager with a default set of recognizers. + * @param {HTMLElement} element + * @param {Object} [options] + * @constructor + */ +function Hammer(element, options) { + options = options || {}; + options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset); + return new Manager(element, options); +} + +/** + * @const {string} + */ +Hammer.VERSION = '2.0.7'; + +/** + * default settings + * @namespace + */ +Hammer.defaults = { + /** + * set if DOM events are being triggered. + * But this is slower and unused by simple implementations, so disabled by default. + * @type {Boolean} + * @default false + */ + domEvents: false, + + /** + * The value for the touchAction property/fallback. + * When set to `compute` it will magically set the correct value based on the added recognizers. + * @type {String} + * @default compute + */ + touchAction: TOUCH_ACTION_COMPUTE, + + /** + * @type {Boolean} + * @default true + */ + enable: true, + + /** + * EXPERIMENTAL FEATURE -- can be removed/changed + * Change the parent input target element. + * If Null, then it is being set the to main element. + * @type {Null|EventTarget} + * @default null + */ + inputTarget: null, + + /** + * force an input class + * @type {Null|Function} + * @default null + */ + inputClass: null, + + /** + * Default recognizer setup when calling `Hammer()` + * When creating a new Manager these will be skipped. + * @type {Array} + */ + preset: [ + // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...] + [RotateRecognizer, {enable: false}], + [PinchRecognizer, {enable: false}, ['rotate']], + [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}], + [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']], + [TapRecognizer], + [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']], + [PressRecognizer] + ], + + /** + * Some CSS properties can be used to improve the working of Hammer. + * Add them to this method and they will be set when creating a new Manager. + * @namespace + */ + cssProps: { + /** + * Disables text selection to improve the dragging gesture. Mainly for desktop browsers. + * @type {String} + * @default 'none' + */ + userSelect: 'none', + + /** + * Disable the Windows Phone grippers when pressing an element. + * @type {String} + * @default 'none' + */ + touchSelect: 'none', + + /** + * Disables the default callout shown when you touch and hold a touch target. + * On iOS, when you touch and hold a touch target such as a link, Safari displays + * a callout containing information about the link. This property allows you to disable that callout. + * @type {String} + * @default 'none' + */ + touchCallout: 'none', + + /** + * Specifies whether zooming is enabled. Used by IE10> + * @type {String} + * @default 'none' + */ + contentZooming: 'none', + + /** + * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers. + * @type {String} + * @default 'none' + */ + userDrag: 'none', + + /** + * Overrides the highlight color shown when the user taps a link or a JavaScript + * clickable element in iOS. This property obeys the alpha value, if specified. + * @type {String} + * @default 'rgba(0,0,0,0)' + */ + tapHighlightColor: 'rgba(0,0,0,0)' + } +}; + +var STOP = 1; +var FORCED_STOP = 2; + +/** + * Manager + * @param {HTMLElement} element + * @param {Object} [options] + * @constructor + */ +function Manager(element, options) { + this.options = assign({}, Hammer.defaults, options || {}); + + this.options.inputTarget = this.options.inputTarget || element; + + this.handlers = {}; + this.session = {}; + this.recognizers = []; + this.oldCssProps = {}; + + this.element = element; + this.input = createInputInstance(this); + this.touchAction = new TouchAction(this, this.options.touchAction); + + toggleCssProps(this, true); + + each(this.options.recognizers, function(item) { + var recognizer = this.add(new (item[0])(item[1])); + item[2] && recognizer.recognizeWith(item[2]); + item[3] && recognizer.requireFailure(item[3]); + }, this); +} + +Manager.prototype = { + /** + * set options + * @param {Object} options + * @returns {Manager} + */ + set: function(options) { + assign(this.options, options); + + // Options that need a little more setup + if (options.touchAction) { + this.touchAction.update(); + } + if (options.inputTarget) { + // Clean up existing event listeners and reinitialize + this.input.destroy(); + this.input.target = options.inputTarget; + this.input.init(); + } + return this; + }, + + /** + * stop recognizing for this session. + * This session will be discarded, when a new [input]start event is fired. + * When forced, the recognizer cycle is stopped immediately. + * @param {Boolean} [force] + */ + stop: function(force) { + this.session.stopped = force ? FORCED_STOP : STOP; + }, + + /** + * run the recognizers! + * called by the inputHandler function on every movement of the pointers (touches) + * it walks through all the recognizers and tries to detect the gesture that is being made + * @param {Object} inputData + */ + recognize: function(inputData) { + var session = this.session; + if (session.stopped) { + return; + } + + // run the touch-action polyfill + this.touchAction.preventDefaults(inputData); + + var recognizer; + var recognizers = this.recognizers; + + // this holds the recognizer that is being recognized. + // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED + // if no recognizer is detecting a thing, it is set to `null` + var curRecognizer = session.curRecognizer; + + // reset when the last recognizer is recognized + // or when we're in a new session + if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) { + curRecognizer = session.curRecognizer = null; + } + + var i = 0; + while (i < recognizers.length) { + recognizer = recognizers[i]; + + // find out if we are allowed try to recognize the input for this one. + // 1. allow if the session is NOT forced stopped (see the .stop() method) + // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one + // that is being recognized. + // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer. + // this can be setup with the `recognizeWith()` method on the recognizer. + if (session.stopped !== FORCED_STOP && ( // 1 + !curRecognizer || recognizer == curRecognizer || // 2 + recognizer.canRecognizeWith(curRecognizer))) { // 3 + recognizer.recognize(inputData); + } else { + recognizer.reset(); + } + + // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the + // current active recognizer. but only if we don't already have an active recognizer + if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) { + curRecognizer = session.curRecognizer = recognizer; + } + i++; + } + }, + + /** + * get a recognizer by its event name. + * @param {Recognizer|String} recognizer + * @returns {Recognizer|Null} + */ + get: function(recognizer) { + if (recognizer instanceof Recognizer) { + return recognizer; + } + + var recognizers = this.recognizers; + for (var i = 0; i < recognizers.length; i++) { + if (recognizers[i].options.event == recognizer) { + return recognizers[i]; + } + } + return null; + }, + + /** + * add a recognizer to the manager + * existing recognizers with the same event name will be removed + * @param {Recognizer} recognizer + * @returns {Recognizer|Manager} + */ + add: function(recognizer) { + if (invokeArrayArg(recognizer, 'add', this)) { + return this; + } + + // remove existing + var existing = this.get(recognizer.options.event); + if (existing) { + this.remove(existing); + } + + this.recognizers.push(recognizer); + recognizer.manager = this; + + this.touchAction.update(); + return recognizer; + }, + + /** + * remove a recognizer by name or instance + * @param {Recognizer|String} recognizer + * @returns {Manager} + */ + remove: function(recognizer) { + if (invokeArrayArg(recognizer, 'remove', this)) { + return this; + } + + recognizer = this.get(recognizer); + + // let's make sure this recognizer exists + if (recognizer) { + var recognizers = this.recognizers; + var index = inArray(recognizers, recognizer); + + if (index !== -1) { + recognizers.splice(index, 1); + this.touchAction.update(); + } + } + + return this; + }, + + /** + * bind event + * @param {String} events + * @param {Function} handler + * @returns {EventEmitter} this + */ + on: function(events, handler) { + if (events === undefined) { + return; + } + if (handler === undefined) { + return; + } + + var handlers = this.handlers; + each(splitStr(events), function(event) { + handlers[event] = handlers[event] || []; + handlers[event].push(handler); + }); + return this; + }, + + /** + * unbind event, leave emit blank to remove all handlers + * @param {String} events + * @param {Function} [handler] + * @returns {EventEmitter} this + */ + off: function(events, handler) { + if (events === undefined) { + return; + } + + var handlers = this.handlers; + each(splitStr(events), function(event) { + if (!handler) { + delete handlers[event]; + } else { + handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1); + } + }); + return this; + }, + + /** + * emit event to the listeners + * @param {String} event + * @param {Object} data + */ + emit: function(event, data) { + // we also want to trigger dom events + if (this.options.domEvents) { + triggerDomEvent(event, data); + } + + // no handlers, so skip it all + var handlers = this.handlers[event] && this.handlers[event].slice(); + if (!handlers || !handlers.length) { + return; + } + + data.type = event; + data.preventDefault = function() { + data.srcEvent.preventDefault(); + }; + + var i = 0; + while (i < handlers.length) { + handlers[i](data); + i++; + } + }, + + /** + * destroy the manager and unbinds all events + * it doesn't unbind dom events, that is the user own responsibility + */ + destroy: function() { + this.element && toggleCssProps(this, false); + + this.handlers = {}; + this.session = {}; + this.input.destroy(); + this.element = null; + } +}; + +/** + * add/remove the css properties as defined in manager.options.cssProps + * @param {Manager} manager + * @param {Boolean} add + */ +function toggleCssProps(manager, add) { + var element = manager.element; + if (!element.style) { + return; + } + var prop; + each(manager.options.cssProps, function(value, name) { + prop = prefixed(element.style, name); + if (add) { + manager.oldCssProps[prop] = element.style[prop]; + element.style[prop] = value; + } else { + element.style[prop] = manager.oldCssProps[prop] || ''; + } + }); + if (!add) { + manager.oldCssProps = {}; + } +} + +/** + * trigger dom event + * @param {String} event + * @param {Object} data + */ +function triggerDomEvent(event, data) { + var gestureEvent = document.createEvent('Event'); + gestureEvent.initEvent(event, true, true); + gestureEvent.gesture = data; + data.target.dispatchEvent(gestureEvent); +} + +assign(Hammer, { + INPUT_START: INPUT_START, + INPUT_MOVE: INPUT_MOVE, + INPUT_END: INPUT_END, + INPUT_CANCEL: INPUT_CANCEL, + + STATE_POSSIBLE: STATE_POSSIBLE, + STATE_BEGAN: STATE_BEGAN, + STATE_CHANGED: STATE_CHANGED, + STATE_ENDED: STATE_ENDED, + STATE_RECOGNIZED: STATE_RECOGNIZED, + STATE_CANCELLED: STATE_CANCELLED, + STATE_FAILED: STATE_FAILED, + + DIRECTION_NONE: DIRECTION_NONE, + DIRECTION_LEFT: DIRECTION_LEFT, + DIRECTION_RIGHT: DIRECTION_RIGHT, + DIRECTION_UP: DIRECTION_UP, + DIRECTION_DOWN: DIRECTION_DOWN, + DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL, + DIRECTION_VERTICAL: DIRECTION_VERTICAL, + DIRECTION_ALL: DIRECTION_ALL, + + Manager: Manager, + Input: Input, + TouchAction: TouchAction, + + TouchInput: TouchInput, + MouseInput: MouseInput, + PointerEventInput: PointerEventInput, + TouchMouseInput: TouchMouseInput, + SingleTouchInput: SingleTouchInput, + + Recognizer: Recognizer, + AttrRecognizer: AttrRecognizer, + Tap: TapRecognizer, + Pan: PanRecognizer, + Swipe: SwipeRecognizer, + Pinch: PinchRecognizer, + Rotate: RotateRecognizer, + Press: PressRecognizer, + + on: addEventListeners, + off: removeEventListeners, + each: each, + merge: merge, + extend: extend, + assign: assign, + inherit: inherit, + bindFn: bindFn, + prefixed: prefixed +}); + +// this prevents errors when Hammer is loaded in the presence of an AMD +// style loader but by script tag, not by the loader. +var freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line +freeGlobal.Hammer = Hammer; + +if (typeof define === 'function' && define.amd) { + define(function() { + return Hammer; + }); +} else if (typeof module != 'undefined' && module.exports) { + module.exports = Hammer; +} else { + window[exportName] = Hammer; +} + +})(window, document, 'Hammer'); diff --git a/lib/dexie.js b/lib/dexie.js new file mode 100644 index 0000000..15f54c3 --- /dev/null +++ b/lib/dexie.js @@ -0,0 +1,4474 @@ +/* + * Dexie.js - a minimalistic wrapper for IndexedDB + * =============================================== + * + * By David Fahlander, david.fahlander@gmail.com + * + * Version 2.0.4, Fri May 25 2018 + * + * http://dexie.org + * + * Apache License Version 2.0, January 2004, http://www.apache.org/licenses/ + */ + +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global.Dexie = factory()); +}(this, (function () { 'use strict'; + +var keys = Object.keys; +var isArray = Array.isArray; +var _global = typeof self !== 'undefined' ? self : + typeof window !== 'undefined' ? window : + global; +function extend(obj, extension) { + if (typeof extension !== 'object') + return obj; + keys(extension).forEach(function (key) { + obj[key] = extension[key]; + }); + return obj; +} +var getProto = Object.getPrototypeOf; +var _hasOwn = {}.hasOwnProperty; +function hasOwn(obj, prop) { + return _hasOwn.call(obj, prop); +} +function props(proto, extension) { + if (typeof extension === 'function') + extension = extension(getProto(proto)); + keys(extension).forEach(function (key) { + setProp(proto, key, extension[key]); + }); +} +var defineProperty = Object.defineProperty; +function setProp(obj, prop, functionOrGetSet, options) { + defineProperty(obj, prop, extend(functionOrGetSet && hasOwn(functionOrGetSet, "get") && typeof functionOrGetSet.get === 'function' ? + { get: functionOrGetSet.get, set: functionOrGetSet.set, configurable: true } : + { value: functionOrGetSet, configurable: true, writable: true }, options)); +} +function derive(Child) { + return { + from: function (Parent) { + Child.prototype = Object.create(Parent.prototype); + setProp(Child.prototype, "constructor", Child); + return { + extend: props.bind(null, Child.prototype) + }; + } + }; +} +var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; +function getPropertyDescriptor(obj, prop) { + var pd = getOwnPropertyDescriptor(obj, prop), proto; + return pd || (proto = getProto(obj)) && getPropertyDescriptor(proto, prop); +} +var _slice = [].slice; +function slice(args, start, end) { + return _slice.call(args, start, end); +} +function override(origFunc, overridedFactory) { + return overridedFactory(origFunc); +} +function assert(b) { + if (!b) + throw new Error("Assertion Failed"); +} +function asap(fn) { + if (_global.setImmediate) + setImmediate(fn); + else + setTimeout(fn, 0); +} + +/** Generate an object (hash map) based on given array. + * @param extractor Function taking an array item and its index and returning an array of 2 items ([key, value]) to + * instert on the resulting object for each item in the array. If this function returns a falsy value, the + * current item wont affect the resulting object. + */ +function arrayToObject(array, extractor) { + return array.reduce(function (result, item, i) { + var nameAndValue = extractor(item, i); + if (nameAndValue) + result[nameAndValue[0]] = nameAndValue[1]; + return result; + }, {}); +} +function trycatcher(fn, reject) { + return function () { + try { + fn.apply(this, arguments); + } + catch (e) { + reject(e); + } + }; +} +function tryCatch(fn, onerror, args) { + try { + fn.apply(null, args); + } + catch (ex) { + onerror && onerror(ex); + } +} +function getByKeyPath(obj, keyPath) { + // http://www.w3.org/TR/IndexedDB/#steps-for-extracting-a-key-from-a-value-using-a-key-path + if (hasOwn(obj, keyPath)) + return obj[keyPath]; // This line is moved from last to first for optimization purpose. + if (!keyPath) + return obj; + if (typeof keyPath !== 'string') { + var rv = []; + for (var i = 0, l = keyPath.length; i < l; ++i) { + var val = getByKeyPath(obj, keyPath[i]); + rv.push(val); + } + return rv; + } + var period = keyPath.indexOf('.'); + if (period !== -1) { + var innerObj = obj[keyPath.substr(0, period)]; + return innerObj === undefined ? undefined : getByKeyPath(innerObj, keyPath.substr(period + 1)); + } + return undefined; +} +function setByKeyPath(obj, keyPath, value) { + if (!obj || keyPath === undefined) + return; + if ('isFrozen' in Object && Object.isFrozen(obj)) + return; + if (typeof keyPath !== 'string' && 'length' in keyPath) { + assert(typeof value !== 'string' && 'length' in value); + for (var i = 0, l = keyPath.length; i < l; ++i) { + setByKeyPath(obj, keyPath[i], value[i]); + } + } + else { + var period = keyPath.indexOf('.'); + if (period !== -1) { + var currentKeyPath = keyPath.substr(0, period); + var remainingKeyPath = keyPath.substr(period + 1); + if (remainingKeyPath === "") + if (value === undefined) + delete obj[currentKeyPath]; + else + obj[currentKeyPath] = value; + else { + var innerObj = obj[currentKeyPath]; + if (!innerObj) + innerObj = (obj[currentKeyPath] = {}); + setByKeyPath(innerObj, remainingKeyPath, value); + } + } + else { + if (value === undefined) + delete obj[keyPath]; + else + obj[keyPath] = value; + } + } +} +function delByKeyPath(obj, keyPath) { + if (typeof keyPath === 'string') + setByKeyPath(obj, keyPath, undefined); + else if ('length' in keyPath) + [].map.call(keyPath, function (kp) { + setByKeyPath(obj, kp, undefined); + }); +} +function shallowClone(obj) { + var rv = {}; + for (var m in obj) { + if (hasOwn(obj, m)) + rv[m] = obj[m]; + } + return rv; +} +var concat = [].concat; +function flatten(a) { + return concat.apply([], a); +} +//https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm +var intrinsicTypes = "Boolean,String,Date,RegExp,Blob,File,FileList,ArrayBuffer,DataView,Uint8ClampedArray,ImageData,Map,Set" + .split(',').concat(flatten([8, 16, 32, 64].map(function (num) { return ["Int", "Uint", "Float"].map(function (t) { return t + num + "Array"; }); }))).filter(function (t) { return _global[t]; }).map(function (t) { return _global[t]; }); +function deepClone(any) { + if (!any || typeof any !== 'object') + return any; + var rv; + if (isArray(any)) { + rv = []; + for (var i = 0, l = any.length; i < l; ++i) { + rv.push(deepClone(any[i])); + } + } + else if (intrinsicTypes.indexOf(any.constructor) >= 0) { + rv = any; + } + else { + rv = any.constructor ? Object.create(any.constructor.prototype) : {}; + for (var prop in any) { + if (hasOwn(any, prop)) { + rv[prop] = deepClone(any[prop]); + } + } + } + return rv; +} +function getObjectDiff(a, b, rv, prfx) { + // Compares objects a and b and produces a diff object. + rv = rv || {}; + prfx = prfx || ''; + keys(a).forEach(function (prop) { + if (!hasOwn(b, prop)) + rv[prfx + prop] = undefined; // Property removed + else { + var ap = a[prop], bp = b[prop]; + if (typeof ap === 'object' && typeof bp === 'object' && + ap && bp && + // Now compare constructors are same (not equal because wont work in Safari) + ('' + ap.constructor) === ('' + bp.constructor)) + // Same type of object but its properties may have changed + getObjectDiff(ap, bp, rv, prfx + prop + "."); + else if (ap !== bp) + rv[prfx + prop] = b[prop]; // Primitive value changed + } + }); + keys(b).forEach(function (prop) { + if (!hasOwn(a, prop)) { + rv[prfx + prop] = b[prop]; // Property added + } + }); + return rv; +} +// If first argument is iterable or array-like, return it as an array +var iteratorSymbol = typeof Symbol !== 'undefined' && Symbol.iterator; +var getIteratorOf = iteratorSymbol ? function (x) { + var i; + return x != null && (i = x[iteratorSymbol]) && i.apply(x); +} : function () { return null; }; +var NO_CHAR_ARRAY = {}; +// Takes one or several arguments and returns an array based on the following criteras: +// * If several arguments provided, return arguments converted to an array in a way that +// still allows javascript engine to optimize the code. +// * If single argument is an array, return a clone of it. +// * If this-pointer equals NO_CHAR_ARRAY, don't accept strings as valid iterables as a special +// case to the two bullets below. +// * If single argument is an iterable, convert it to an array and return the resulting array. +// * If single argument is array-like (has length of type number), convert it to an array. +function getArrayOf(arrayLike) { + var i, a, x, it; + if (arguments.length === 1) { + if (isArray(arrayLike)) + return arrayLike.slice(); + if (this === NO_CHAR_ARRAY && typeof arrayLike === 'string') + return [arrayLike]; + if ((it = getIteratorOf(arrayLike))) { + a = []; + while ((x = it.next()), !x.done) + a.push(x.value); + return a; + } + if (arrayLike == null) + return [arrayLike]; + i = arrayLike.length; + if (typeof i === 'number') { + a = new Array(i); + while (i--) + a[i] = arrayLike[i]; + return a; + } + return [arrayLike]; + } + i = arguments.length; + a = new Array(i); + while (i--) + a[i] = arguments[i]; + return a; +} + +// By default, debug will be true only if platform is a web platform and its page is served from localhost. +// When debug = true, error's stacks will contain asyncronic long stacks. +var debug = typeof location !== 'undefined' && + // By default, use debug mode if served from localhost. + /^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href); +function setDebug(value, filter) { + debug = value; + libraryFilter = filter; +} +var libraryFilter = function () { return true; }; +var NEEDS_THROW_FOR_STACK = !new Error("").stack; +function getErrorWithStack() { + "use strict"; + if (NEEDS_THROW_FOR_STACK) + try { + // Doing something naughty in strict mode here to trigger a specific error + // that can be explicitely ignored in debugger's exception settings. + // If we'd just throw new Error() here, IE's debugger's exception settings + // will just consider it as "exception thrown by javascript code" which is + // something you wouldn't want it to ignore. + getErrorWithStack.arguments; + throw new Error(); // Fallback if above line don't throw. + } + catch (e) { + return e; + } + return new Error(); +} +function prettyStack(exception, numIgnoredFrames) { + var stack = exception.stack; + if (!stack) + return ""; + numIgnoredFrames = (numIgnoredFrames || 0); + if (stack.indexOf(exception.name) === 0) + numIgnoredFrames += (exception.name + exception.message).split('\n').length; + return stack.split('\n') + .slice(numIgnoredFrames) + .filter(libraryFilter) + .map(function (frame) { return "\n" + frame; }) + .join(''); +} +function deprecated(what, fn) { + return function () { + console.warn(what + " is deprecated. See https://github.com/dfahlander/Dexie.js/wiki/Deprecations. " + prettyStack(getErrorWithStack(), 1)); + return fn.apply(this, arguments); + }; +} + +var dexieErrorNames = [ + 'Modify', + 'Bulk', + 'OpenFailed', + 'VersionChange', + 'Schema', + 'Upgrade', + 'InvalidTable', + 'MissingAPI', + 'NoSuchDatabase', + 'InvalidArgument', + 'SubTransaction', + 'Unsupported', + 'Internal', + 'DatabaseClosed', + 'PrematureCommit', + 'ForeignAwait' +]; +var idbDomErrorNames = [ + 'Unknown', + 'Constraint', + 'Data', + 'TransactionInactive', + 'ReadOnly', + 'Version', + 'NotFound', + 'InvalidState', + 'InvalidAccess', + 'Abort', + 'Timeout', + 'QuotaExceeded', + 'Syntax', + 'DataClone' +]; +var errorList = dexieErrorNames.concat(idbDomErrorNames); +var defaultTexts = { + VersionChanged: "Database version changed by other database connection", + DatabaseClosed: "Database has been closed", + Abort: "Transaction aborted", + TransactionInactive: "Transaction has already completed or failed" +}; +// +// DexieError - base class of all out exceptions. +// +function DexieError(name, msg) { + // Reason we don't use ES6 classes is because: + // 1. It bloats transpiled code and increases size of minified code. + // 2. It doesn't give us much in this case. + // 3. It would require sub classes to call super(), which + // is not needed when deriving from Error. + this._e = getErrorWithStack(); + this.name = name; + this.message = msg; +} +derive(DexieError).from(Error).extend({ + stack: { + get: function () { + return this._stack || + (this._stack = this.name + ": " + this.message + prettyStack(this._e, 2)); + } + }, + toString: function () { return this.name + ": " + this.message; } +}); +function getMultiErrorMessage(msg, failures) { + return msg + ". Errors: " + failures + .map(function (f) { return f.toString(); }) + .filter(function (v, i, s) { return s.indexOf(v) === i; }) // Only unique error strings + .join('\n'); +} +// +// ModifyError - thrown in Collection.modify() +// Specific constructor because it contains members failures and failedKeys. +// +function ModifyError(msg, failures, successCount, failedKeys) { + this._e = getErrorWithStack(); + this.failures = failures; + this.failedKeys = failedKeys; + this.successCount = successCount; +} +derive(ModifyError).from(DexieError); +function BulkError(msg, failures) { + this._e = getErrorWithStack(); + this.name = "BulkError"; + this.failures = failures; + this.message = getMultiErrorMessage(msg, failures); +} +derive(BulkError).from(DexieError); +// +// +// Dynamically generate error names and exception classes based +// on the names in errorList. +// +// +// Map of {ErrorName -> ErrorName + "Error"} +var errnames = errorList.reduce(function (obj, name) { return (obj[name] = name + "Error", obj); }, {}); +// Need an alias for DexieError because we're gonna create subclasses with the same name. +var BaseException = DexieError; +// Map of {ErrorName -> exception constructor} +var exceptions = errorList.reduce(function (obj, name) { + // Let the name be "DexieError" because this name may + // be shown in call stack and when debugging. DexieError is + // the most true name because it derives from DexieError, + // and we cannot change Function.name programatically without + // dynamically create a Function object, which would be considered + // 'eval-evil'. + var fullName = name + "Error"; + function DexieError(msgOrInner, inner) { + this._e = getErrorWithStack(); + this.name = fullName; + if (!msgOrInner) { + this.message = defaultTexts[name] || fullName; + this.inner = null; + } + else if (typeof msgOrInner === 'string') { + this.message = msgOrInner; + this.inner = inner || null; + } + else if (typeof msgOrInner === 'object') { + this.message = msgOrInner.name + " " + msgOrInner.message; + this.inner = msgOrInner; + } + } + derive(DexieError).from(BaseException); + obj[name] = DexieError; + return obj; +}, {}); +// Use ECMASCRIPT standard exceptions where applicable: +exceptions.Syntax = SyntaxError; +exceptions.Type = TypeError; +exceptions.Range = RangeError; +var exceptionMap = idbDomErrorNames.reduce(function (obj, name) { + obj[name + "Error"] = exceptions[name]; + return obj; +}, {}); +function mapError(domError, message) { + if (!domError || domError instanceof DexieError || domError instanceof TypeError || domError instanceof SyntaxError || !domError.name || !exceptionMap[domError.name]) + return domError; + var rv = new exceptionMap[domError.name](message || domError.message, domError); + if ("stack" in domError) { + // Derive stack from inner exception if it has a stack + setProp(rv, "stack", { get: function () { + return this.inner.stack; + } }); + } + return rv; +} +var fullNameExceptions = errorList.reduce(function (obj, name) { + if (["Syntax", "Type", "Range"].indexOf(name) === -1) + obj[name + "Error"] = exceptions[name]; + return obj; +}, {}); +fullNameExceptions.ModifyError = ModifyError; +fullNameExceptions.DexieError = DexieError; +fullNameExceptions.BulkError = BulkError; + +function nop() { } +function mirror(val) { return val; } +function pureFunctionChain(f1, f2) { + // Enables chained events that takes ONE argument and returns it to the next function in chain. + // This pattern is used in the hook("reading") event. + if (f1 == null || f1 === mirror) + return f2; + return function (val) { + return f2(f1(val)); + }; +} +function callBoth(on1, on2) { + return function () { + on1.apply(this, arguments); + on2.apply(this, arguments); + }; +} +function hookCreatingChain(f1, f2) { + // Enables chained events that takes several arguments and may modify first argument by making a modification and then returning the same instance. + // This pattern is used in the hook("creating") event. + if (f1 === nop) + return f2; + return function () { + var res = f1.apply(this, arguments); + if (res !== undefined) + arguments[0] = res; + var onsuccess = this.onsuccess, // In case event listener has set this.onsuccess + onerror = this.onerror; // In case event listener has set this.onerror + this.onsuccess = null; + this.onerror = null; + var res2 = f2.apply(this, arguments); + if (onsuccess) + this.onsuccess = this.onsuccess ? callBoth(onsuccess, this.onsuccess) : onsuccess; + if (onerror) + this.onerror = this.onerror ? callBoth(onerror, this.onerror) : onerror; + return res2 !== undefined ? res2 : res; + }; +} +function hookDeletingChain(f1, f2) { + if (f1 === nop) + return f2; + return function () { + f1.apply(this, arguments); + var onsuccess = this.onsuccess, // In case event listener has set this.onsuccess + onerror = this.onerror; // In case event listener has set this.onerror + this.onsuccess = this.onerror = null; + f2.apply(this, arguments); + if (onsuccess) + this.onsuccess = this.onsuccess ? callBoth(onsuccess, this.onsuccess) : onsuccess; + if (onerror) + this.onerror = this.onerror ? callBoth(onerror, this.onerror) : onerror; + }; +} +function hookUpdatingChain(f1, f2) { + if (f1 === nop) + return f2; + return function (modifications) { + var res = f1.apply(this, arguments); + extend(modifications, res); // If f1 returns new modifications, extend caller's modifications with the result before calling next in chain. + var onsuccess = this.onsuccess, // In case event listener has set this.onsuccess + onerror = this.onerror; // In case event listener has set this.onerror + this.onsuccess = null; + this.onerror = null; + var res2 = f2.apply(this, arguments); + if (onsuccess) + this.onsuccess = this.onsuccess ? callBoth(onsuccess, this.onsuccess) : onsuccess; + if (onerror) + this.onerror = this.onerror ? callBoth(onerror, this.onerror) : onerror; + return res === undefined ? + (res2 === undefined ? undefined : res2) : + (extend(res, res2)); + }; +} +function reverseStoppableEventChain(f1, f2) { + if (f1 === nop) + return f2; + return function () { + if (f2.apply(this, arguments) === false) + return false; + return f1.apply(this, arguments); + }; +} + +function promisableChain(f1, f2) { + if (f1 === nop) + return f2; + return function () { + var res = f1.apply(this, arguments); + if (res && typeof res.then === 'function') { + var thiz = this, i = arguments.length, args = new Array(i); + while (i--) + args[i] = arguments[i]; + return res.then(function () { + return f2.apply(thiz, args); + }); + } + return f2.apply(this, arguments); + }; +} + +/* + * Copyright (c) 2014-2017 David Fahlander + * Apache License Version 2.0, January 2004, http://www.apache.org/licenses/LICENSE-2.0 + */ +// +// Promise and Zone (PSD) for Dexie library +// +// I started out writing this Promise class by copying promise-light (https://github.com/taylorhakes/promise-light) by +// https://github.com/taylorhakes - an A+ and ECMASCRIPT 6 compliant Promise implementation. +// +// In previous versions this was fixed by not calling setTimeout when knowing that the resolve() or reject() came from another +// tick. In Dexie v1.4.0, I've rewritten the Promise class entirely. Just some fragments of promise-light is left. I use +// another strategy now that simplifies everything a lot: to always execute callbacks in a new micro-task, but have an own micro-task +// engine that is indexedDB compliant across all browsers. +// Promise class has also been optimized a lot with inspiration from bluebird - to avoid closures as much as possible. +// Also with inspiration from bluebird, asyncronic stacks in debug mode. +// +// Specific non-standard features of this Promise class: +// * Custom zone support (a.k.a. PSD) with ability to keep zones also when using native promises as well as +// native async / await. +// * Promise.follow() method built upon the custom zone engine, that allows user to track all promises created from current stack frame +// and below + all promises that those promises creates or awaits. +// * Detect any unhandled promise in a PSD-scope (PSD.onunhandled). +// +// David Fahlander, https://github.com/dfahlander +// +// Just a pointer that only this module knows about. +// Used in Promise constructor to emulate a private constructor. +var INTERNAL = {}; +// Async stacks (long stacks) must not grow infinitely. +var LONG_STACKS_CLIP_LIMIT = 100; +var MAX_LONG_STACKS = 20; +var ZONE_ECHO_LIMIT = 7; +var nativePromiseInstanceAndProto = (function () { + try { + // Be able to patch native async functions + return new Function("let F=async ()=>{},p=F();return [p,Object.getPrototypeOf(p),Promise.resolve(),F.constructor];")(); + } + catch (e) { + var P = _global.Promise; + return P ? + [P.resolve(), P.prototype, P.resolve()] : + []; + } +})(); +var resolvedNativePromise = nativePromiseInstanceAndProto[0]; +var nativePromiseProto = nativePromiseInstanceAndProto[1]; +var resolvedGlobalPromise = nativePromiseInstanceAndProto[2]; +var nativePromiseThen = nativePromiseProto && nativePromiseProto.then; +var NativePromise = resolvedNativePromise && resolvedNativePromise.constructor; +var AsyncFunction = nativePromiseInstanceAndProto[3]; +var patchGlobalPromise = !!resolvedGlobalPromise; +var stack_being_generated = false; +/* The default function used only for the very first promise in a promise chain. + As soon as then promise is resolved or rejected, all next tasks will be executed in micro ticks + emulated in this module. For indexedDB compatibility, this means that every method needs to + execute at least one promise before doing an indexedDB operation. Dexie will always call + db.ready().then() for every operation to make sure the indexedDB event is started in an + indexedDB-compatible emulated micro task loop. +*/ +var schedulePhysicalTick = resolvedGlobalPromise ? + function () { resolvedGlobalPromise.then(physicalTick); } + : + _global.setImmediate ? + // setImmediate supported. Those modern platforms also supports Function.bind(). + setImmediate.bind(null, physicalTick) : + _global.MutationObserver ? + // MutationObserver supported + function () { + var hiddenDiv = document.createElement("div"); + (new MutationObserver(function () { + physicalTick(); + hiddenDiv = null; + })).observe(hiddenDiv, { attributes: true }); + hiddenDiv.setAttribute('i', '1'); + } : + // No support for setImmediate or MutationObserver. No worry, setTimeout is only called + // once time. Every tick that follows will be our emulated micro tick. + // Could have uses setTimeout.bind(null, 0, physicalTick) if it wasnt for that FF13 and below has a bug + function () { setTimeout(physicalTick, 0); }; +// Configurable through Promise.scheduler. +// Don't export because it would be unsafe to let unknown +// code call it unless they do try..catch within their callback. +// This function can be retrieved through getter of Promise.scheduler though, +// but users must not do Promise.scheduler = myFuncThatThrowsException +var asap$1 = function (callback, args) { + microtickQueue.push([callback, args]); + if (needsNewPhysicalTick) { + schedulePhysicalTick(); + needsNewPhysicalTick = false; + } +}; +var isOutsideMicroTick = true; +var needsNewPhysicalTick = true; +var unhandledErrors = []; +var rejectingErrors = []; +var currentFulfiller = null; +var rejectionMapper = mirror; // Remove in next major when removing error mapping of DOMErrors and DOMExceptions +var globalPSD = { + id: 'global', + global: true, + ref: 0, + unhandleds: [], + onunhandled: globalError, + pgp: false, + env: {}, + finalize: function () { + this.unhandleds.forEach(function (uh) { + try { + globalError(uh[0], uh[1]); + } + catch (e) { } + }); + } +}; +var PSD = globalPSD; +var microtickQueue = []; // Callbacks to call in this or next physical tick. +var numScheduledCalls = 0; // Number of listener-calls left to do in this physical tick. +var tickFinalizers = []; // Finalizers to call when there are no more async calls scheduled within current physical tick. +function Promise(fn) { + if (typeof this !== 'object') + throw new TypeError('Promises must be constructed via new'); + this._listeners = []; + this.onuncatched = nop; // Deprecate in next major. Not needed. Better to use global error handler. + // A library may set `promise._lib = true;` after promise is created to make resolve() or reject() + // execute the microtask engine implicitely within the call to resolve() or reject(). + // To remain A+ compliant, a library must only set `_lib=true` if it can guarantee that the stack + // only contains library code when calling resolve() or reject(). + // RULE OF THUMB: ONLY set _lib = true for promises explicitely resolving/rejecting directly from + // global scope (event handler, timer etc)! + this._lib = false; + // Current async scope + var psd = (this._PSD = PSD); + if (debug) { + this._stackHolder = getErrorWithStack(); + this._prev = null; + this._numPrev = 0; // Number of previous promises (for long stacks) + } + if (typeof fn !== 'function') { + if (fn !== INTERNAL) + throw new TypeError('Not a function'); + // Private constructor (INTERNAL, state, value). + // Used internally by Promise.resolve() and Promise.reject(). + this._state = arguments[1]; + this._value = arguments[2]; + if (this._state === false) + handleRejection(this, this._value); // Map error, set stack and addPossiblyUnhandledError(). + return; + } + this._state = null; // null (=pending), false (=rejected) or true (=resolved) + this._value = null; // error or result + ++psd.ref; // Refcounting current scope + executePromiseTask(this, fn); +} +// Prepare a property descriptor to put onto Promise.prototype.then +var thenProp = { + get: function () { + var psd = PSD, microTaskId = totalEchoes; + function then(onFulfilled, onRejected) { + var _this = this; + var possibleAwait = !psd.global && (psd !== PSD || microTaskId !== totalEchoes); + if (possibleAwait) + decrementExpectedAwaits(); + var rv = new Promise(function (resolve, reject) { + propagateToListener(_this, new Listener(nativeAwaitCompatibleWrap(onFulfilled, psd, possibleAwait), nativeAwaitCompatibleWrap(onRejected, psd, possibleAwait), resolve, reject, psd)); + }); + debug && linkToPreviousPromise(rv, this); + return rv; + } + then.prototype = INTERNAL; // For idempotense, see setter below. + return then; + }, + // Be idempotent and allow another framework (such as zone.js or another instance of a Dexie.Promise module) to replace Promise.prototype.then + // and when that framework wants to restore the original property, we must identify that and restore the original property descriptor. + set: function (value) { + setProp(this, 'then', value && value.prototype === INTERNAL ? + thenProp : // Restore to original property descriptor. + { + get: function () { + return value; // Getter returning provided value (behaves like value is just changed) + }, + set: thenProp.set // Keep a setter that is prepared to restore original. + }); + } +}; +props(Promise.prototype, { + then: thenProp, + _then: function (onFulfilled, onRejected) { + // A little tinier version of then() that don't have to create a resulting promise. + propagateToListener(this, new Listener(null, null, onFulfilled, onRejected, PSD)); + }, + catch: function (onRejected) { + if (arguments.length === 1) + return this.then(null, onRejected); + // First argument is the Error type to catch + var type = arguments[0], handler = arguments[1]; + return typeof type === 'function' ? this.then(null, function (err) { + // Catching errors by its constructor type (similar to java / c++ / c#) + // Sample: promise.catch(TypeError, function (e) { ... }); + return err instanceof type ? handler(err) : PromiseReject(err); + }) + : this.then(null, function (err) { + // Catching errors by the error.name property. Makes sense for indexedDB where error type + // is always DOMError but where e.name tells the actual error type. + // Sample: promise.catch('ConstraintError', function (e) { ... }); + return err && err.name === type ? handler(err) : PromiseReject(err); + }); + }, + finally: function (onFinally) { + return this.then(function (value) { + onFinally(); + return value; + }, function (err) { + onFinally(); + return PromiseReject(err); + }); + }, + stack: { + get: function () { + if (this._stack) + return this._stack; + try { + stack_being_generated = true; + var stacks = getStack(this, [], MAX_LONG_STACKS); + var stack = stacks.join("\nFrom previous: "); + if (this._state !== null) + this._stack = stack; // Stack may be updated on reject. + return stack; + } + finally { + stack_being_generated = false; + } + } + }, + timeout: function (ms, msg) { + var _this = this; + return ms < Infinity ? + new Promise(function (resolve, reject) { + var handle = setTimeout(function () { return reject(new exceptions.Timeout(msg)); }, ms); + _this.then(resolve, reject).finally(clearTimeout.bind(null, handle)); + }) : this; + } +}); +if (typeof Symbol !== 'undefined' && Symbol.toStringTag) + setProp(Promise.prototype, Symbol.toStringTag, 'Promise'); +// Now that Promise.prototype is defined, we have all it takes to set globalPSD.env. +// Environment globals snapshotted on leaving global zone +globalPSD.env = snapShot(); +function Listener(onFulfilled, onRejected, resolve, reject, zone) { + this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null; + this.onRejected = typeof onRejected === 'function' ? onRejected : null; + this.resolve = resolve; + this.reject = reject; + this.psd = zone; +} +// Promise Static Properties +props(Promise, { + all: function () { + var values = getArrayOf.apply(null, arguments) // Supports iterables, implicit arguments and array-like. + .map(onPossibleParallellAsync); // Handle parallell async/awaits + return new Promise(function (resolve, reject) { + if (values.length === 0) + resolve([]); + var remaining = values.length; + values.forEach(function (a, i) { return Promise.resolve(a).then(function (x) { + values[i] = x; + if (!--remaining) + resolve(values); + }, reject); }); + }); + }, + resolve: function (value) { + if (value instanceof Promise) + return value; + if (value && typeof value.then === 'function') + return new Promise(function (resolve, reject) { + value.then(resolve, reject); + }); + var rv = new Promise(INTERNAL, true, value); + linkToPreviousPromise(rv, currentFulfiller); + return rv; + }, + reject: PromiseReject, + race: function () { + var values = getArrayOf.apply(null, arguments).map(onPossibleParallellAsync); + return new Promise(function (resolve, reject) { + values.map(function (value) { return Promise.resolve(value).then(resolve, reject); }); + }); + }, + PSD: { + get: function () { return PSD; }, + set: function (value) { return PSD = value; } + }, + //totalEchoes: {get: ()=>totalEchoes}, + //task: {get: ()=>task}, + newPSD: newScope, + usePSD: usePSD, + scheduler: { + get: function () { return asap$1; }, + set: function (value) { asap$1 = value; } + }, + rejectionMapper: { + get: function () { return rejectionMapper; }, + set: function (value) { rejectionMapper = value; } // Map reject failures + }, + follow: function (fn, zoneProps) { + return new Promise(function (resolve, reject) { + return newScope(function (resolve, reject) { + var psd = PSD; + psd.unhandleds = []; // For unhandled standard- or 3rd party Promises. Checked at psd.finalize() + psd.onunhandled = reject; // Triggered directly on unhandled promises of this library. + psd.finalize = callBoth(function () { + var _this = this; + // Unhandled standard or 3rd part promises are put in PSD.unhandleds and + // examined upon scope completion while unhandled rejections in this Promise + // will trigger directly through psd.onunhandled + run_at_end_of_this_or_next_physical_tick(function () { + _this.unhandleds.length === 0 ? resolve() : reject(_this.unhandleds[0]); + }); + }, psd.finalize); + fn(); + }, zoneProps, resolve, reject); + }); + } +}); +/** +* Take a potentially misbehaving resolver function and make sure +* onFulfilled and onRejected are only called once. +* +* Makes no guarantees about asynchrony. +*/ +function executePromiseTask(promise, fn) { + // Promise Resolution Procedure: + // https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure + try { + fn(function (value) { + if (promise._state !== null) + return; // Already settled + if (value === promise) + throw new TypeError('A promise cannot be resolved with itself.'); + var shouldExecuteTick = promise._lib && beginMicroTickScope(); + if (value && typeof value.then === 'function') { + executePromiseTask(promise, function (resolve, reject) { + value instanceof Promise ? + value._then(resolve, reject) : + value.then(resolve, reject); + }); + } + else { + promise._state = true; + promise._value = value; + propagateAllListeners(promise); + } + if (shouldExecuteTick) + endMicroTickScope(); + }, handleRejection.bind(null, promise)); // If Function.bind is not supported. Exception is handled in catch below + } + catch (ex) { + handleRejection(promise, ex); + } +} +function handleRejection(promise, reason) { + rejectingErrors.push(reason); + if (promise._state !== null) + return; + var shouldExecuteTick = promise._lib && beginMicroTickScope(); + reason = rejectionMapper(reason); + promise._state = false; + promise._value = reason; + debug && reason !== null && typeof reason === 'object' && !reason._promise && tryCatch(function () { + var origProp = getPropertyDescriptor(reason, "stack"); + reason._promise = promise; + setProp(reason, "stack", { + get: function () { + return stack_being_generated ? + origProp && (origProp.get ? + origProp.get.apply(reason) : + origProp.value) : + promise.stack; + } + }); + }); + // Add the failure to a list of possibly uncaught errors + addPossiblyUnhandledError(promise); + propagateAllListeners(promise); + if (shouldExecuteTick) + endMicroTickScope(); +} +function propagateAllListeners(promise) { + //debug && linkToPreviousPromise(promise); + var listeners = promise._listeners; + promise._listeners = []; + for (var i = 0, len = listeners.length; i < len; ++i) { + propagateToListener(promise, listeners[i]); + } + var psd = promise._PSD; + --psd.ref || psd.finalize(); // if psd.ref reaches zero, call psd.finalize(); + if (numScheduledCalls === 0) { + // If numScheduledCalls is 0, it means that our stack is not in a callback of a scheduled call, + // and that no deferreds where listening to this rejection or success. + // Since there is a risk that our stack can contain application code that may + // do stuff after this code is finished that may generate new calls, we cannot + // call finalizers here. + ++numScheduledCalls; + asap$1(function () { + if (--numScheduledCalls === 0) + finalizePhysicalTick(); // Will detect unhandled errors + }, []); + } +} +function propagateToListener(promise, listener) { + if (promise._state === null) { + promise._listeners.push(listener); + return; + } + var cb = promise._state ? listener.onFulfilled : listener.onRejected; + if (cb === null) { + // This Listener doesnt have a listener for the event being triggered (onFulfilled or onReject) so lets forward the event to any eventual listeners on the Promise instance returned by then() or catch() + return (promise._state ? listener.resolve : listener.reject)(promise._value); + } + ++listener.psd.ref; + ++numScheduledCalls; + asap$1(callListener, [cb, promise, listener]); +} +function callListener(cb, promise, listener) { + try { + // Set static variable currentFulfiller to the promise that is being fullfilled, + // so that we connect the chain of promises (for long stacks support) + currentFulfiller = promise; + // Call callback and resolve our listener with it's return value. + var ret, value = promise._value; + if (promise._state) { + // cb is onResolved + ret = cb(value); + } + else { + // cb is onRejected + if (rejectingErrors.length) + rejectingErrors = []; + ret = cb(value); + if (rejectingErrors.indexOf(value) === -1) + markErrorAsHandled(promise); // Callback didnt do Promise.reject(err) nor reject(err) onto another promise. + } + listener.resolve(ret); + } + catch (e) { + // Exception thrown in callback. Reject our listener. + listener.reject(e); + } + finally { + // Restore env and currentFulfiller. + currentFulfiller = null; + if (--numScheduledCalls === 0) + finalizePhysicalTick(); + --listener.psd.ref || listener.psd.finalize(); + } +} +function getStack(promise, stacks, limit) { + if (stacks.length === limit) + return stacks; + var stack = ""; + if (promise._state === false) { + var failure = promise._value, errorName, message; + if (failure != null) { + errorName = failure.name || "Error"; + message = failure.message || failure; + stack = prettyStack(failure, 0); + } + else { + errorName = failure; // If error is undefined or null, show that. + message = ""; + } + stacks.push(errorName + (message ? ": " + message : "") + stack); + } + if (debug) { + stack = prettyStack(promise._stackHolder, 2); + if (stack && stacks.indexOf(stack) === -1) + stacks.push(stack); + if (promise._prev) + getStack(promise._prev, stacks, limit); + } + return stacks; +} +function linkToPreviousPromise(promise, prev) { + // Support long stacks by linking to previous completed promise. + var numPrev = prev ? prev._numPrev + 1 : 0; + if (numPrev < LONG_STACKS_CLIP_LIMIT) { + promise._prev = prev; + promise._numPrev = numPrev; + } +} +/* The callback to schedule with setImmediate() or setTimeout(). + It runs a virtual microtick and executes any callback registered in microtickQueue. + */ +function physicalTick() { + beginMicroTickScope() && endMicroTickScope(); +} +function beginMicroTickScope() { + var wasRootExec = isOutsideMicroTick; + isOutsideMicroTick = false; + needsNewPhysicalTick = false; + return wasRootExec; +} +/* Executes micro-ticks without doing try..catch. + This can be possible because we only use this internally and + the registered functions are exception-safe (they do try..catch + internally before calling any external method). If registering + functions in the microtickQueue that are not exception-safe, this + would destroy the framework and make it instable. So we don't export + our asap method. +*/ +function endMicroTickScope() { + var callbacks, i, l; + do { + while (microtickQueue.length > 0) { + callbacks = microtickQueue; + microtickQueue = []; + l = callbacks.length; + for (i = 0; i < l; ++i) { + var item = callbacks[i]; + item[0].apply(null, item[1]); + } + } + } while (microtickQueue.length > 0); + isOutsideMicroTick = true; + needsNewPhysicalTick = true; +} +function finalizePhysicalTick() { + var unhandledErrs = unhandledErrors; + unhandledErrors = []; + unhandledErrs.forEach(function (p) { + p._PSD.onunhandled.call(null, p._value, p); + }); + var finalizers = tickFinalizers.slice(0); // Clone first because finalizer may remove itself from list. + var i = finalizers.length; + while (i) + finalizers[--i](); +} +function run_at_end_of_this_or_next_physical_tick(fn) { + function finalizer() { + fn(); + tickFinalizers.splice(tickFinalizers.indexOf(finalizer), 1); + } + tickFinalizers.push(finalizer); + ++numScheduledCalls; + asap$1(function () { + if (--numScheduledCalls === 0) + finalizePhysicalTick(); + }, []); +} +function addPossiblyUnhandledError(promise) { + // Only add to unhandledErrors if not already there. The first one to add to this list + // will be upon the first rejection so that the root cause (first promise in the + // rejection chain) is the one listed. + if (!unhandledErrors.some(function (p) { return p._value === promise._value; })) + unhandledErrors.push(promise); +} +function markErrorAsHandled(promise) { + // Called when a reject handled is actually being called. + // Search in unhandledErrors for any promise whos _value is this promise_value (list + // contains only rejected promises, and only one item per error) + var i = unhandledErrors.length; + while (i) + if (unhandledErrors[--i]._value === promise._value) { + // Found a promise that failed with this same error object pointer, + // Remove that since there is a listener that actually takes care of it. + unhandledErrors.splice(i, 1); + return; + } +} +function PromiseReject(reason) { + return new Promise(INTERNAL, false, reason); +} +function wrap(fn, errorCatcher) { + var psd = PSD; + return function () { + var wasRootExec = beginMicroTickScope(), outerScope = PSD; + try { + switchToZone(psd, true); + return fn.apply(this, arguments); + } + catch (e) { + errorCatcher && errorCatcher(e); + } + finally { + switchToZone(outerScope, false); + if (wasRootExec) + endMicroTickScope(); + } + }; +} +// +// variables used for native await support +// +var task = { awaits: 0, echoes: 0, id: 0 }; // The ongoing macro-task when using zone-echoing. +var taskCounter = 0; // ID counter for macro tasks. +var zoneStack = []; // Stack of left zones to restore asynchronically. +var zoneEchoes = 0; // zoneEchoes is a must in order to persist zones between native await expressions. +var totalEchoes = 0; // ID counter for micro-tasks. Used to detect possible native await in our Promise.prototype.then. +var zone_id_counter = 0; +function newScope(fn, props$$1, a1, a2) { + var parent = PSD, psd = Object.create(parent); + psd.parent = parent; + psd.ref = 0; + psd.global = false; + psd.id = ++zone_id_counter; + // Prepare for promise patching (done in usePSD): + var globalEnv = globalPSD.env; + psd.env = patchGlobalPromise ? { + Promise: Promise, + PromiseProp: { value: Promise, configurable: true, writable: true }, + all: Promise.all, + race: Promise.race, + resolve: Promise.resolve, + reject: Promise.reject, + nthen: getPatchedPromiseThen(globalEnv.nthen, psd), + gthen: getPatchedPromiseThen(globalEnv.gthen, psd) // global then + } : {}; + if (props$$1) + extend(psd, props$$1); + // unhandleds and onunhandled should not be specifically set here. + // Leave them on parent prototype. + // unhandleds.push(err) will push to parent's prototype + // onunhandled() will call parents onunhandled (with this scope's this-pointer though!) + ++parent.ref; + psd.finalize = function () { + --this.parent.ref || this.parent.finalize(); + }; + var rv = usePSD(psd, fn, a1, a2); + if (psd.ref === 0) + psd.finalize(); + return rv; +} +// Function to call if scopeFunc returns NativePromise +// Also for each NativePromise in the arguments to Promise.all() +function incrementExpectedAwaits() { + if (!task.id) + task.id = ++taskCounter; + ++task.awaits; + task.echoes += ZONE_ECHO_LIMIT; + return task.id; +} +// Function to call when 'then' calls back on a native promise where onAwaitExpected() had been called. +// Also call this when a native await calls then method on a promise. In that case, don't supply +// sourceTaskId because we already know it refers to current task. +function decrementExpectedAwaits(sourceTaskId) { + if (!task.awaits || (sourceTaskId && sourceTaskId !== task.id)) + return; + if (--task.awaits === 0) + task.id = 0; + task.echoes = task.awaits * ZONE_ECHO_LIMIT; // Will reset echoes to 0 if awaits is 0. +} +// Call from Promise.all() and Promise.race() +function onPossibleParallellAsync(possiblePromise) { + if (task.echoes && possiblePromise && possiblePromise.constructor === NativePromise) { + incrementExpectedAwaits(); + return possiblePromise.then(function (x) { + decrementExpectedAwaits(); + return x; + }, function (e) { + decrementExpectedAwaits(); + return rejection(e); + }); + } + return possiblePromise; +} +function zoneEnterEcho(targetZone) { + ++totalEchoes; + if (!task.echoes || --task.echoes === 0) { + task.echoes = task.id = 0; // Cancel zone echoing. + } + zoneStack.push(PSD); + switchToZone(targetZone, true); +} +function zoneLeaveEcho() { + var zone = zoneStack[zoneStack.length - 1]; + zoneStack.pop(); + switchToZone(zone, false); +} +function switchToZone(targetZone, bEnteringZone) { + var currentZone = PSD; + if (bEnteringZone ? task.echoes && (!zoneEchoes++ || targetZone !== PSD) : zoneEchoes && (!--zoneEchoes || targetZone !== PSD)) { + // Enter or leave zone asynchronically as well, so that tasks initiated during current tick + // will be surrounded by the zone when they are invoked. + enqueueNativeMicroTask(bEnteringZone ? zoneEnterEcho.bind(null, targetZone) : zoneLeaveEcho); + } + if (targetZone === PSD) + return; + PSD = targetZone; // The actual zone switch occurs at this line. + // Snapshot on every leave from global zone. + if (currentZone === globalPSD) + globalPSD.env = snapShot(); + if (patchGlobalPromise) { + // Let's patch the global and native Promises (may be same or may be different) + var GlobalPromise = globalPSD.env.Promise; + // Swich environments (may be PSD-zone or the global zone. Both apply.) + var targetEnv = targetZone.env; + // Change Promise.prototype.then for native and global Promise (they MAY differ on polyfilled environments, but both can be accessed) + // Must be done on each zone change because the patched method contains targetZone in its closure. + nativePromiseProto.then = targetEnv.nthen; + GlobalPromise.prototype.then = targetEnv.gthen; + if (currentZone.global || targetZone.global) { + // Leaving or entering global zone. It's time to patch / restore global Promise. + // Set this Promise to window.Promise so that transiled async functions will work on Firefox, Safari and IE, as well as with Zonejs and angular. + Object.defineProperty(_global, 'Promise', targetEnv.PromiseProp); + // Support Promise.all() etc to work indexedDB-safe also when people are including es6-promise as a module (they might + // not be accessing global.Promise but a local reference to it) + GlobalPromise.all = targetEnv.all; + GlobalPromise.race = targetEnv.race; + GlobalPromise.resolve = targetEnv.resolve; + GlobalPromise.reject = targetEnv.reject; + } + } +} +function snapShot() { + var GlobalPromise = _global.Promise; + return patchGlobalPromise ? { + Promise: GlobalPromise, + PromiseProp: Object.getOwnPropertyDescriptor(_global, "Promise"), + all: GlobalPromise.all, + race: GlobalPromise.race, + resolve: GlobalPromise.resolve, + reject: GlobalPromise.reject, + nthen: nativePromiseProto.then, + gthen: GlobalPromise.prototype.then + } : {}; +} +function usePSD(psd, fn, a1, a2, a3) { + var outerScope = PSD; + try { + switchToZone(psd, true); + return fn(a1, a2, a3); + } + finally { + switchToZone(outerScope, false); + } +} +function enqueueNativeMicroTask(job) { + // + // Precondition: nativePromiseThen !== undefined + // + nativePromiseThen.call(resolvedNativePromise, job); +} +function nativeAwaitCompatibleWrap(fn, zone, possibleAwait) { + return typeof fn !== 'function' ? fn : function () { + var outerZone = PSD; + if (possibleAwait) + incrementExpectedAwaits(); + switchToZone(zone, true); + try { + return fn.apply(this, arguments); + } + finally { + switchToZone(outerZone, false); + } + }; +} +function getPatchedPromiseThen(origThen, zone) { + return function (onResolved, onRejected) { + return origThen.call(this, nativeAwaitCompatibleWrap(onResolved, zone, false), nativeAwaitCompatibleWrap(onRejected, zone, false)); + }; +} +var UNHANDLEDREJECTION = "unhandledrejection"; +function globalError(err, promise) { + var rv; + try { + rv = promise.onuncatched(err); + } + catch (e) { } + if (rv !== false) + try { + var event, eventData = { promise: promise, reason: err }; + if (_global.document && document.createEvent) { + event = document.createEvent('Event'); + event.initEvent(UNHANDLEDREJECTION, true, true); + extend(event, eventData); + } + else if (_global.CustomEvent) { + event = new CustomEvent(UNHANDLEDREJECTION, { detail: eventData }); + extend(event, eventData); + } + if (event && _global.dispatchEvent) { + dispatchEvent(event); + if (!_global.PromiseRejectionEvent && _global.onunhandledrejection) + // No native support for PromiseRejectionEvent but user has set window.onunhandledrejection. Manually call it. + try { + _global.onunhandledrejection(event); + } + catch (_) { } + } + if (!event.defaultPrevented) { + console.warn("Unhandled rejection: " + (err.stack || err)); + } + } + catch (e) { } +} +var rejection = Promise.reject; + +function Events(ctx) { + var evs = {}; + var rv = function (eventName, subscriber) { + if (subscriber) { + // Subscribe. If additional arguments than just the subscriber was provided, forward them as well. + var i = arguments.length, args = new Array(i - 1); + while (--i) + args[i - 1] = arguments[i]; + evs[eventName].subscribe.apply(null, args); + return ctx; + } + else if (typeof (eventName) === 'string') { + // Return interface allowing to fire or unsubscribe from event + return evs[eventName]; + } + }; + rv.addEventType = add; + for (var i = 1, l = arguments.length; i < l; ++i) { + add(arguments[i]); + } + return rv; + function add(eventName, chainFunction, defaultFunction) { + if (typeof eventName === 'object') + return addConfiguredEvents(eventName); + if (!chainFunction) + chainFunction = reverseStoppableEventChain; + if (!defaultFunction) + defaultFunction = nop; + var context = { + subscribers: [], + fire: defaultFunction, + subscribe: function (cb) { + if (context.subscribers.indexOf(cb) === -1) { + context.subscribers.push(cb); + context.fire = chainFunction(context.fire, cb); + } + }, + unsubscribe: function (cb) { + context.subscribers = context.subscribers.filter(function (fn) { return fn !== cb; }); + context.fire = context.subscribers.reduce(chainFunction, defaultFunction); + } + }; + evs[eventName] = rv[eventName] = context; + return context; + } + function addConfiguredEvents(cfg) { + // events(this, {reading: [functionChain, nop]}); + keys(cfg).forEach(function (eventName) { + var args = cfg[eventName]; + if (isArray(args)) { + add(eventName, cfg[eventName][0], cfg[eventName][1]); + } + else if (args === 'asap') { + // Rather than approaching event subscription using a functional approach, we here do it in a for-loop where subscriber is executed in its own stack + // enabling that any exception that occur wont disturb the initiator and also not nescessary be catched and forgotten. + var context = add(eventName, mirror, function fire() { + // Optimazation-safe cloning of arguments into args. + var i = arguments.length, args = new Array(i); + while (i--) + args[i] = arguments[i]; + // All each subscriber: + context.subscribers.forEach(function (fn) { + asap(function fireEvent() { + fn.apply(null, args); + }); + }); + }); + } + else + throw new exceptions.InvalidArgument("Invalid event config"); + }); + } +} + +/* + * Dexie.js - a minimalistic wrapper for IndexedDB + * =============================================== + * + * Copyright (c) 2014-2017 David Fahlander + * + * Version 2.0.4, Fri May 25 2018 + * + * http://dexie.org + * + * Apache License Version 2.0, January 2004, http://www.apache.org/licenses/LICENSE-2.0 + * + */ +var DEXIE_VERSION = '2.0.4'; +var maxString = String.fromCharCode(65535); +var maxKey = (function () { try { + IDBKeyRange.only([[]]); + return [[]]; +} +catch (e) { + return maxString; +} })(); +var minKey = -Infinity; +var INVALID_KEY_ARGUMENT = "Invalid key provided. Keys must be of type string, number, Date or Array."; +var STRING_EXPECTED = "String expected."; +var connections = []; +var isIEOrEdge = typeof navigator !== 'undefined' && /(MSIE|Trident|Edge)/.test(navigator.userAgent); +var hasIEDeleteObjectStoreBug = isIEOrEdge; +var hangsOnDeleteLargeKeyRange = isIEOrEdge; +var dexieStackFrameFilter = function (frame) { return !/(dexie\.js|dexie\.min\.js)/.test(frame); }; +var dbNamesDB; // Global database for backing Dexie.getDatabaseNames() on browser without indexedDB.webkitGetDatabaseNames() +// Init debug +setDebug(debug, dexieStackFrameFilter); +function Dexie(dbName, options) { + /// Specify only if you wich to control which addons that should run on this instance + var deps = Dexie.dependencies; + var opts = extend({ + // Default Options + addons: Dexie.addons, + autoOpen: true, + indexedDB: deps.indexedDB, + IDBKeyRange: deps.IDBKeyRange // Backend IDBKeyRange api. Default to browser env. + }, options); + var addons = opts.addons, autoOpen = opts.autoOpen, indexedDB = opts.indexedDB, IDBKeyRange = opts.IDBKeyRange; + var globalSchema = this._dbSchema = {}; + var versions = []; + var dbStoreNames = []; + var allTables = {}; + /// + var idbdb = null; // Instance of IDBDatabase + var dbOpenError = null; + var isBeingOpened = false; + var onReadyBeingFired = null; + var openComplete = false; + var READONLY = "readonly", READWRITE = "readwrite"; + var db = this; + var dbReadyResolve, dbReadyPromise = new Promise(function (resolve) { + dbReadyResolve = resolve; + }), cancelOpen, openCanceller = new Promise(function (_, reject) { + cancelOpen = reject; + }); + var autoSchema = true; + var hasNativeGetDatabaseNames = !!getNativeGetDatabaseNamesFn(indexedDB), hasGetAll; + function init() { + // Default subscribers to "versionchange" and "blocked". + // Can be overridden by custom handlers. If custom handlers return false, these default + // behaviours will be prevented. + db.on("versionchange", function (ev) { + // Default behavior for versionchange event is to close database connection. + // Caller can override this behavior by doing db.on("versionchange", function(){ return false; }); + // Let's not block the other window from making it's delete() or open() call. + // NOTE! This event is never fired in IE,Edge or Safari. + if (ev.newVersion > 0) + console.warn("Another connection wants to upgrade database '" + db.name + "'. Closing db now to resume the upgrade."); + else + console.warn("Another connection wants to delete database '" + db.name + "'. Closing db now to resume the delete request."); + db.close(); + // In many web applications, it would be recommended to force window.reload() + // when this event occurs. To do that, subscribe to the versionchange event + // and call window.location.reload(true) if ev.newVersion > 0 (not a deletion) + // The reason for this is that your current web app obviously has old schema code that needs + // to be updated. Another window got a newer version of the app and needs to upgrade DB but + // your window is blocking it unless we close it here. + }); + db.on("blocked", function (ev) { + if (!ev.newVersion || ev.newVersion < ev.oldVersion) + console.warn("Dexie.delete('" + db.name + "') was blocked"); + else + console.warn("Upgrade '" + db.name + "' blocked by other connection holding version " + ev.oldVersion / 10); + }); + } + // + // + // + // ------------------------- Versioning Framework--------------------------- + // + // + // + this.version = function (versionNumber) { + /// + /// + if (idbdb || isBeingOpened) + throw new exceptions.Schema("Cannot add version when database is open"); + this.verno = Math.max(this.verno, versionNumber); + var versionInstance = versions.filter(function (v) { return v._cfg.version === versionNumber; })[0]; + if (versionInstance) + return versionInstance; + versionInstance = new Version(versionNumber); + versions.push(versionInstance); + versions.sort(lowerVersionFirst); + // Disable autoschema mode, as at least one version is specified. + autoSchema = false; + return versionInstance; + }; + function Version(versionNumber) { + this._cfg = { + version: versionNumber, + storesSource: null, + dbschema: {}, + tables: {}, + contentUpgrade: null + }; + this.stores({}); // Derive earlier schemas by default. + } + extend(Version.prototype, { + stores: function (stores) { + ///

+ /// Defines the schema for a particular version + /// + /// + /// Example:
+ /// {users: "id++,first,last,&username,*email",
+ /// passwords: "id++,&username"}
+ ///
+ /// Syntax: {Table: "[primaryKey][++],[&][*]index1,[&][*]index2,..."}

+ /// Special characters:
+ /// "&" means unique key,
+ /// "*" means value is multiEntry,
+ /// "++" means auto-increment and only applicable for primary key
+ /// + this._cfg.storesSource = this._cfg.storesSource ? extend(this._cfg.storesSource, stores) : stores; + // Derive stores from earlier versions if they are not explicitely specified as null or a new syntax. + var storesSpec = {}; + versions.forEach(function (version) { + extend(storesSpec, version._cfg.storesSource); + }); + var dbschema = (this._cfg.dbschema = {}); + this._parseStoresSpec(storesSpec, dbschema); + // Update the latest schema to this version + // Update API + globalSchema = db._dbSchema = dbschema; + removeTablesApi([allTables, db, Transaction.prototype]); // Keep Transaction.prototype even though it should be depr. + setApiOnPlace([allTables, db, Transaction.prototype, this._cfg.tables], keys(dbschema), dbschema); + dbStoreNames = keys(dbschema); + return this; + }, + upgrade: function (upgradeFunction) { + this._cfg.contentUpgrade = upgradeFunction; + return this; + }, + _parseStoresSpec: function (stores, outSchema) { + keys(stores).forEach(function (tableName) { + if (stores[tableName] !== null) { + var instanceTemplate = {}; + var indexes = parseIndexSyntax(stores[tableName]); + var primKey = indexes.shift(); + if (primKey.multi) + throw new exceptions.Schema("Primary key cannot be multi-valued"); + if (primKey.keyPath) + setByKeyPath(instanceTemplate, primKey.keyPath, primKey.auto ? 0 : primKey.keyPath); + indexes.forEach(function (idx) { + if (idx.auto) + throw new exceptions.Schema("Only primary key can be marked as autoIncrement (++)"); + if (!idx.keyPath) + throw new exceptions.Schema("Index must have a name and cannot be an empty string"); + setByKeyPath(instanceTemplate, idx.keyPath, idx.compound ? idx.keyPath.map(function () { return ""; }) : ""); + }); + outSchema[tableName] = new TableSchema(tableName, primKey, indexes, instanceTemplate); + } + }); + } + }); + function runUpgraders(oldVersion, idbtrans, reject) { + var trans = db._createTransaction(READWRITE, dbStoreNames, globalSchema); + trans.create(idbtrans); + trans._completion.catch(reject); + var rejectTransaction = trans._reject.bind(trans); + newScope(function () { + PSD.trans = trans; + if (oldVersion === 0) { + // Create tables: + keys(globalSchema).forEach(function (tableName) { + createTable(idbtrans, tableName, globalSchema[tableName].primKey, globalSchema[tableName].indexes); + }); + Promise.follow(function () { return db.on.populate.fire(trans); }).catch(rejectTransaction); + } + else + updateTablesAndIndexes(oldVersion, trans, idbtrans).catch(rejectTransaction); + }); + } + function updateTablesAndIndexes(oldVersion, trans, idbtrans) { + // Upgrade version to version, step-by-step from oldest to newest version. + // Each transaction object will contain the table set that was current in that version (but also not-yet-deleted tables from its previous version) + var queue = []; + var oldVersionStruct = versions.filter(function (version) { return version._cfg.version === oldVersion; })[0]; + if (!oldVersionStruct) + throw new exceptions.Upgrade("Dexie specification of currently installed DB version is missing"); + globalSchema = db._dbSchema = oldVersionStruct._cfg.dbschema; + var anyContentUpgraderHasRun = false; + var versToRun = versions.filter(function (v) { return v._cfg.version > oldVersion; }); + versToRun.forEach(function (version) { + /// + queue.push(function () { + var oldSchema = globalSchema; + var newSchema = version._cfg.dbschema; + adjustToExistingIndexNames(oldSchema, idbtrans); + adjustToExistingIndexNames(newSchema, idbtrans); + globalSchema = db._dbSchema = newSchema; + var diff = getSchemaDiff(oldSchema, newSchema); + // Add tables + diff.add.forEach(function (tuple) { + createTable(idbtrans, tuple[0], tuple[1].primKey, tuple[1].indexes); + }); + // Change tables + diff.change.forEach(function (change) { + if (change.recreate) { + throw new exceptions.Upgrade("Not yet support for changing primary key"); + } + else { + var store = idbtrans.objectStore(change.name); + // Add indexes + change.add.forEach(function (idx) { + addIndex(store, idx); + }); + // Update indexes + change.change.forEach(function (idx) { + store.deleteIndex(idx.name); + addIndex(store, idx); + }); + // Delete indexes + change.del.forEach(function (idxName) { + store.deleteIndex(idxName); + }); + } + }); + if (version._cfg.contentUpgrade) { + anyContentUpgraderHasRun = true; + return Promise.follow(function () { + version._cfg.contentUpgrade(trans); + }); + } + }); + queue.push(function (idbtrans) { + if (!anyContentUpgraderHasRun || !hasIEDeleteObjectStoreBug) { + var newSchema = version._cfg.dbschema; + // Delete old tables + deleteRemovedTables(newSchema, idbtrans); + } + }); + }); + // Now, create a queue execution engine + function runQueue() { + return queue.length ? Promise.resolve(queue.shift()(trans.idbtrans)).then(runQueue) : + Promise.resolve(); + } + return runQueue().then(function () { + createMissingTables(globalSchema, idbtrans); // At last, make sure to create any missing tables. (Needed by addons that add stores to DB without specifying version) + }); + } + function getSchemaDiff(oldSchema, newSchema) { + var diff = { + del: [], + add: [], + change: [] // Array of {name: tableName, recreate: newDefinition, del: delIndexNames, add: newIndexDefs, change: changedIndexDefs} + }; + for (var table in oldSchema) { + if (!newSchema[table]) + diff.del.push(table); + } + for (table in newSchema) { + var oldDef = oldSchema[table], newDef = newSchema[table]; + if (!oldDef) { + diff.add.push([table, newDef]); + } + else { + var change = { + name: table, + def: newDef, + recreate: false, + del: [], + add: [], + change: [] + }; + if (oldDef.primKey.src !== newDef.primKey.src) { + // Primary key has changed. Remove and re-add table. + change.recreate = true; + diff.change.push(change); + } + else { + // Same primary key. Just find out what differs: + var oldIndexes = oldDef.idxByName; + var newIndexes = newDef.idxByName; + for (var idxName in oldIndexes) { + if (!newIndexes[idxName]) + change.del.push(idxName); + } + for (idxName in newIndexes) { + var oldIdx = oldIndexes[idxName], newIdx = newIndexes[idxName]; + if (!oldIdx) + change.add.push(newIdx); + else if (oldIdx.src !== newIdx.src) + change.change.push(newIdx); + } + if (change.del.length > 0 || change.add.length > 0 || change.change.length > 0) { + diff.change.push(change); + } + } + } + } + return diff; + } + function createTable(idbtrans, tableName, primKey, indexes) { + /// + var store = idbtrans.db.createObjectStore(tableName, primKey.keyPath ? { keyPath: primKey.keyPath, autoIncrement: primKey.auto } : { autoIncrement: primKey.auto }); + indexes.forEach(function (idx) { addIndex(store, idx); }); + return store; + } + function createMissingTables(newSchema, idbtrans) { + keys(newSchema).forEach(function (tableName) { + if (!idbtrans.db.objectStoreNames.contains(tableName)) { + createTable(idbtrans, tableName, newSchema[tableName].primKey, newSchema[tableName].indexes); + } + }); + } + function deleteRemovedTables(newSchema, idbtrans) { + for (var i = 0; i < idbtrans.db.objectStoreNames.length; ++i) { + var storeName = idbtrans.db.objectStoreNames[i]; + if (newSchema[storeName] == null) { + idbtrans.db.deleteObjectStore(storeName); + } + } + } + function addIndex(store, idx) { + store.createIndex(idx.name, idx.keyPath, { unique: idx.unique, multiEntry: idx.multi }); + } + // + // + // Dexie Protected API + // + // + this._allTables = allTables; + this._createTransaction = function (mode, storeNames, dbschema, parentTransaction) { + return new Transaction(mode, storeNames, dbschema, parentTransaction); + }; + /* Generate a temporary transaction when db operations are done outside a transaction scope. + */ + function tempTransaction(mode, storeNames, fn) { + if (!openComplete && (!PSD.letThrough)) { + if (!isBeingOpened) { + if (!autoOpen) + return rejection(new exceptions.DatabaseClosed()); + db.open().catch(nop); // Open in background. If if fails, it will be catched by the final promise anyway. + } + return dbReadyPromise.then(function () { return tempTransaction(mode, storeNames, fn); }); + } + else { + var trans = db._createTransaction(mode, storeNames, globalSchema); + try { + trans.create(); + } + catch (ex) { + return rejection(ex); + } + return trans._promise(mode, function (resolve, reject) { + return newScope(function () { + PSD.trans = trans; + return fn(resolve, reject, trans); + }); + }).then(function (result) { + // Instead of resolving value directly, wait with resolving it until transaction has completed. + // Otherwise the data would not be in the DB if requesting it in the then() operation. + // Specifically, to ensure that the following expression will work: + // + // db.friends.put({name: "Arne"}).then(function () { + // db.friends.where("name").equals("Arne").count(function(count) { + // assert (count === 1); + // }); + // }); + // + return trans._completion.then(function () { return result; }); + }); /*.catch(err => { // Don't do this as of now. If would affect bulk- and modify methods in a way that could be more intuitive. But wait! Maybe change in next major. + trans._reject(err); + return rejection(err); + });*/ + } + } + this._whenReady = function (fn) { + return openComplete || PSD.letThrough ? fn() : new Promise(function (resolve, reject) { + if (!isBeingOpened) { + if (!autoOpen) { + reject(new exceptions.DatabaseClosed()); + return; + } + db.open().catch(nop); // Open in background. If if fails, it will be catched by the final promise anyway. + } + dbReadyPromise.then(resolve, reject); + }).then(fn); + }; + // + // + // + // + // Dexie API + // + // + // + this.verno = 0; + this.open = function () { + if (isBeingOpened || idbdb) + return dbReadyPromise.then(function () { return dbOpenError ? rejection(dbOpenError) : db; }); + debug && (openCanceller._stackHolder = getErrorWithStack()); // Let stacks point to when open() was called rather than where new Dexie() was called. + isBeingOpened = true; + dbOpenError = null; + openComplete = false; + // Function pointers to call when the core opening process completes. + var resolveDbReady = dbReadyResolve, + // upgradeTransaction to abort on failure. + upgradeTransaction = null; + return Promise.race([openCanceller, new Promise(function (resolve, reject) { + // Multiply db.verno with 10 will be needed to workaround upgrading bug in IE: + // IE fails when deleting objectStore after reading from it. + // A future version of Dexie.js will stopover an intermediate version to workaround this. + // At that point, we want to be backward compatible. Could have been multiplied with 2, but by using 10, it is easier to map the number to the real version number. + // If no API, throw! + if (!indexedDB) + throw new exceptions.MissingAPI("indexedDB API not found. If using IE10+, make sure to run your code on a server URL " + + "(not locally). If using old Safari versions, make sure to include indexedDB polyfill."); + var req = autoSchema ? indexedDB.open(dbName) : indexedDB.open(dbName, Math.round(db.verno * 10)); + if (!req) + throw new exceptions.MissingAPI("IndexedDB API not available"); // May happen in Safari private mode, see https://github.com/dfahlander/Dexie.js/issues/134 + req.onerror = eventRejectHandler(reject); + req.onblocked = wrap(fireOnBlocked); + req.onupgradeneeded = wrap(function (e) { + upgradeTransaction = req.transaction; + if (autoSchema && !db._allowEmptyDB) { + // Caller did not specify a version or schema. Doing that is only acceptable for opening alread existing databases. + // If onupgradeneeded is called it means database did not exist. Reject the open() promise and make sure that we + // do not create a new database by accident here. + req.onerror = preventDefault; // Prohibit onabort error from firing before we're done! + upgradeTransaction.abort(); // Abort transaction (would hope that this would make DB disappear but it doesnt.) + // Close database and delete it. + req.result.close(); + var delreq = indexedDB.deleteDatabase(dbName); // The upgrade transaction is atomic, and javascript is single threaded - meaning that there is no risk that we delete someone elses database here! + delreq.onsuccess = delreq.onerror = wrap(function () { + reject(new exceptions.NoSuchDatabase("Database " + dbName + " doesnt exist")); + }); + } + else { + upgradeTransaction.onerror = eventRejectHandler(reject); + var oldVer = e.oldVersion > Math.pow(2, 62) ? 0 : e.oldVersion; // Safari 8 fix. + runUpgraders(oldVer / 10, upgradeTransaction, reject, req); + } + }, reject); + req.onsuccess = wrap(function () { + // Core opening procedure complete. Now let's just record some stuff. + upgradeTransaction = null; + idbdb = req.result; + connections.push(db); // Used for emulating versionchange event on IE/Edge/Safari. + if (autoSchema) + readGlobalSchema(); + else if (idbdb.objectStoreNames.length > 0) { + try { + adjustToExistingIndexNames(globalSchema, idbdb.transaction(safariMultiStoreFix(idbdb.objectStoreNames), READONLY)); + } + catch (e) { + // Safari may bail out if > 1 store names. However, this shouldnt be a showstopper. Issue #120. + } + } + idbdb.onversionchange = wrap(function (ev) { + db._vcFired = true; // detect implementations that not support versionchange (IE/Edge/Safari) + db.on("versionchange").fire(ev); + }); + if (!hasNativeGetDatabaseNames && dbName !== '__dbnames') { + dbNamesDB.dbnames.put({ name: dbName }).catch(nop); + } + resolve(); + }, reject); + })]).then(function () { + // Before finally resolving the dbReadyPromise and this promise, + // call and await all on('ready') subscribers: + // Dexie.vip() makes subscribers able to use the database while being opened. + // This is a must since these subscribers take part of the opening procedure. + onReadyBeingFired = []; + return Promise.resolve(Dexie.vip(db.on.ready.fire)).then(function fireRemainders() { + if (onReadyBeingFired.length > 0) { + // In case additional subscribers to db.on('ready') were added during the time db.on.ready.fire was executed. + var remainders = onReadyBeingFired.reduce(promisableChain, nop); + onReadyBeingFired = []; + return Promise.resolve(Dexie.vip(remainders)).then(fireRemainders); + } + }); + }).finally(function () { + onReadyBeingFired = null; + }).then(function () { + // Resolve the db.open() with the db instance. + isBeingOpened = false; + return db; + }).catch(function (err) { + try { + // Did we fail within onupgradeneeded? Make sure to abort the upgrade transaction so it doesnt commit. + upgradeTransaction && upgradeTransaction.abort(); + } + catch (e) { } + isBeingOpened = false; // Set before calling db.close() so that it doesnt reject openCanceller again (leads to unhandled rejection event). + db.close(); // Closes and resets idbdb, removes connections, resets dbReadyPromise and openCanceller so that a later db.open() is fresh. + // A call to db.close() may have made on-ready subscribers fail. Use dbOpenError if set, since err could be a follow-up error on that. + dbOpenError = err; // Record the error. It will be used to reject further promises of db operations. + return rejection(dbOpenError); + }).finally(function () { + openComplete = true; + resolveDbReady(); // dbReadyPromise is resolved no matter if open() rejects or resolved. It's just to wake up waiters. + }); + }; + this.close = function () { + var idx = connections.indexOf(db); + if (idx >= 0) + connections.splice(idx, 1); + if (idbdb) { + try { + idbdb.close(); + } + catch (e) { } + idbdb = null; + } + autoOpen = false; + dbOpenError = new exceptions.DatabaseClosed(); + if (isBeingOpened) + cancelOpen(dbOpenError); + // Reset dbReadyPromise promise: + dbReadyPromise = new Promise(function (resolve) { + dbReadyResolve = resolve; + }); + openCanceller = new Promise(function (_, reject) { + cancelOpen = reject; + }); + }; + this.delete = function () { + var hasArguments = arguments.length > 0; + return new Promise(function (resolve, reject) { + if (hasArguments) + throw new exceptions.InvalidArgument("Arguments not allowed in db.delete()"); + if (isBeingOpened) { + dbReadyPromise.then(doDelete); + } + else { + doDelete(); + } + function doDelete() { + db.close(); + var req = indexedDB.deleteDatabase(dbName); + req.onsuccess = wrap(function () { + if (!hasNativeGetDatabaseNames) { + dbNamesDB.dbnames.delete(dbName).catch(nop); + } + resolve(); + }); + req.onerror = eventRejectHandler(reject); + req.onblocked = fireOnBlocked; + } + }); + }; + this.backendDB = function () { + return idbdb; + }; + this.isOpen = function () { + return idbdb !== null; + }; + this.hasBeenClosed = function () { + return dbOpenError && (dbOpenError instanceof exceptions.DatabaseClosed); + }; + this.hasFailed = function () { + return dbOpenError !== null; + }; + this.dynamicallyOpened = function () { + return autoSchema; + }; + // + // Properties + // + this.name = dbName; + // db.tables - an array of all Table instances. + props(this, { + tables: { + get: function () { + /// + return keys(allTables).map(function (name) { return allTables[name]; }); + } + } + }); + // + // Events + // + this.on = Events(this, "populate", "blocked", "versionchange", { ready: [promisableChain, nop] }); + this.on.ready.subscribe = override(this.on.ready.subscribe, function (subscribe) { + return function (subscriber, bSticky) { + Dexie.vip(function () { + if (openComplete) { + // Database already open. Call subscriber asap. + if (!dbOpenError) + Promise.resolve().then(subscriber); + // bSticky: Also subscribe to future open sucesses (after close / reopen) + if (bSticky) + subscribe(subscriber); + } + else if (onReadyBeingFired) { + // db.on('ready') subscribers are currently being executed and have not yet resolved or rejected + onReadyBeingFired.push(subscriber); + if (bSticky) + subscribe(subscriber); + } + else { + // Database not yet open. Subscribe to it. + subscribe(subscriber); + // If bSticky is falsy, make sure to unsubscribe subscriber when fired once. + if (!bSticky) + subscribe(function unsubscribe() { + db.on.ready.unsubscribe(subscriber); + db.on.ready.unsubscribe(unsubscribe); + }); + } + }); + }; + }); + this.transaction = function () { + /// + /// + /// + /// "r" for readonly, or "rw" for readwrite + /// Table instance, Array of Table instances, String or String Array of object stores to include in the transaction + /// Function to execute with transaction + var args = extractTransactionArgs.apply(this, arguments); + return this._transaction.apply(this, args); + }; + function extractTransactionArgs(mode, _tableArgs_, scopeFunc) { + // Let table arguments be all arguments between mode and last argument. + var i = arguments.length; + if (i < 2) + throw new exceptions.InvalidArgument("Too few arguments"); + // Prevent optimzation killer (https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments) + // and clone arguments except the first one into local var 'args'. + var args = new Array(i - 1); + while (--i) + args[i - 1] = arguments[i]; + // Let scopeFunc be the last argument and pop it so that args now only contain the table arguments. + scopeFunc = args.pop(); + var tables = flatten(args); // Support using array as middle argument, or a mix of arrays and non-arrays. + return [mode, tables, scopeFunc]; + } + this._transaction = function (mode, tables, scopeFunc) { + var parentTransaction = PSD.trans; + // Check if parent transactions is bound to this db instance, and if caller wants to reuse it + if (!parentTransaction || parentTransaction.db !== db || mode.indexOf('!') !== -1) + parentTransaction = null; + var onlyIfCompatible = mode.indexOf('?') !== -1; + mode = mode.replace('!', '').replace('?', ''); // Ok. Will change arguments[0] as well but we wont touch arguments henceforth. + try { + // + // Get storeNames from arguments. Either through given table instances, or through given table names. + // + var storeNames = tables.map(function (table) { + var storeName = table instanceof Table ? table.name : table; + if (typeof storeName !== 'string') + throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed"); + return storeName; + }); + // + // Resolve mode. Allow shortcuts "r" and "rw". + // + if (mode == "r" || mode == READONLY) + mode = READONLY; + else if (mode == "rw" || mode == READWRITE) + mode = READWRITE; + else + throw new exceptions.InvalidArgument("Invalid transaction mode: " + mode); + if (parentTransaction) { + // Basic checks + if (parentTransaction.mode === READONLY && mode === READWRITE) { + if (onlyIfCompatible) { + // Spawn new transaction instead. + parentTransaction = null; + } + else + throw new exceptions.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY"); + } + if (parentTransaction) { + storeNames.forEach(function (storeName) { + if (parentTransaction && parentTransaction.storeNames.indexOf(storeName) === -1) { + if (onlyIfCompatible) { + // Spawn new transaction instead. + parentTransaction = null; + } + else + throw new exceptions.SubTransaction("Table " + storeName + + " not included in parent transaction."); + } + }); + } + if (onlyIfCompatible && parentTransaction && !parentTransaction.active) { + // '?' mode should not keep using an inactive transaction. + parentTransaction = null; + } + } + } + catch (e) { + return parentTransaction ? + parentTransaction._promise(null, function (_, reject) { reject(e); }) : + rejection(e); + } + // If this is a sub-transaction, lock the parent and then launch the sub-transaction. + return (parentTransaction ? + parentTransaction._promise(mode, enterTransactionScope, "lock") : + PSD.trans ? + // no parent transaction despite PSD.trans exists. Make sure also + // that the zone we create is not a sub-zone of current, because + // Promise.follow() should not wait for it if so. + usePSD(PSD.transless, function () { return db._whenReady(enterTransactionScope); }) : + db._whenReady(enterTransactionScope)); + function enterTransactionScope() { + return Promise.resolve().then(function () { + // Keep a pointer to last non-transactional PSD to use if someone calls Dexie.ignoreTransaction(). + var transless = PSD.transless || PSD; + // Our transaction. + //return new Promise((resolve, reject) => { + var trans = db._createTransaction(mode, storeNames, globalSchema, parentTransaction); + // Let the transaction instance be part of a Promise-specific data (PSD) value. + var zoneProps = { + trans: trans, + transless: transless + }; + if (parentTransaction) { + // Emulate transaction commit awareness for inner transaction (must 'commit' when the inner transaction has no more operations ongoing) + trans.idbtrans = parentTransaction.idbtrans; + } + else { + trans.create(); // Create the backend transaction so that complete() or error() will trigger even if no operation is made upon it. + } + // Support for native async await. + if (scopeFunc.constructor === AsyncFunction) { + incrementExpectedAwaits(); + } + var returnValue; + var promiseFollowed = Promise.follow(function () { + // Finally, call the scope function with our table and transaction arguments. + returnValue = scopeFunc.call(trans, trans); + if (returnValue) { + if (returnValue.constructor === NativePromise) { + var decrementor = decrementExpectedAwaits.bind(null, null); + returnValue.then(decrementor, decrementor); + } + else if (typeof returnValue.next === 'function' && typeof returnValue.throw === 'function') { + // scopeFunc returned an iterator with throw-support. Handle yield as await. + returnValue = awaitIterator(returnValue); + } + } + }, zoneProps); + return (returnValue && typeof returnValue.then === 'function' ? + // Promise returned. User uses promise-style transactions. + Promise.resolve(returnValue).then(function (x) { return trans.active ? + x // Transaction still active. Continue. + : rejection(new exceptions.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn")); }) + // No promise returned. Wait for all outstanding promises before continuing. + : promiseFollowed.then(function () { return returnValue; })).then(function (x) { + // sub transactions don't react to idbtrans.oncomplete. We must trigger a completion: + if (parentTransaction) + trans._resolve(); + // wait for trans._completion + // (if root transaction, this means 'complete' event. If sub-transaction, we've just fired it ourselves) + return trans._completion.then(function () { return x; }); + }).catch(function (e) { + trans._reject(e); // Yes, above then-handler were maybe not called because of an unhandled rejection in scopeFunc! + return rejection(e); + }); + }); + } + }; + this.table = function (tableName) { + /// + if (!hasOwn(allTables, tableName)) { + throw new exceptions.InvalidTable("Table " + tableName + " does not exist"); + } + return allTables[tableName]; + }; + // + // + // + // Table Class + // + // + // + function Table(name, tableSchema, optionalTrans) { + /// + this.name = name; + this.schema = tableSchema; + this._tx = optionalTrans; + this.hook = allTables[name] ? allTables[name].hook : Events(null, { + "creating": [hookCreatingChain, nop], + "reading": [pureFunctionChain, mirror], + "updating": [hookUpdatingChain, nop], + "deleting": [hookDeletingChain, nop] + }); + } + function BulkErrorHandlerCatchAll(errorList, done, supportHooks) { + return (supportHooks ? hookedEventRejectHandler : eventRejectHandler)(function (e) { + errorList.push(e); + done && done(); + }); + } + function bulkDelete(idbstore, trans, keysOrTuples, hasDeleteHook, deletingHook) { + // If hasDeleteHook, keysOrTuples must be an array of tuples: [[key1, value2],[key2,value2],...], + // else keysOrTuples must be just an array of keys: [key1, key2, ...]. + return new Promise(function (resolve, reject) { + var len = keysOrTuples.length, lastItem = len - 1; + if (len === 0) + return resolve(); + if (!hasDeleteHook) { + for (var i = 0; i < len; ++i) { + var req = idbstore.delete(keysOrTuples[i]); + req.onerror = eventRejectHandler(reject); + if (i === lastItem) + req.onsuccess = wrap(function () { return resolve(); }); + } + } + else { + var hookCtx, errorHandler = hookedEventRejectHandler(reject), successHandler = hookedEventSuccessHandler(null); + tryCatch(function () { + for (var i = 0; i < len; ++i) { + hookCtx = { onsuccess: null, onerror: null }; + var tuple = keysOrTuples[i]; + deletingHook.call(hookCtx, tuple[0], tuple[1], trans); + var req = idbstore.delete(tuple[0]); + req._hookCtx = hookCtx; + req.onerror = errorHandler; + if (i === lastItem) + req.onsuccess = hookedEventSuccessHandler(resolve); + else + req.onsuccess = successHandler; + } + }, function (err) { + hookCtx.onerror && hookCtx.onerror(err); + throw err; + }); + } + }); + } + props(Table.prototype, { + // + // Table Protected Methods + // + _trans: function getTransaction(mode, fn, writeLocked) { + var trans = this._tx || PSD.trans; + return trans && trans.db === db ? + trans === PSD.trans ? + trans._promise(mode, fn, writeLocked) : + newScope(function () { return trans._promise(mode, fn, writeLocked); }, { trans: trans, transless: PSD.transless || PSD }) : + tempTransaction(mode, [this.name], fn); + }, + _idbstore: function getIDBObjectStore(mode, fn, writeLocked) { + var tableName = this.name; + function supplyIdbStore(resolve, reject, trans) { + if (trans.storeNames.indexOf(tableName) === -1) + throw new exceptions.NotFound("Table" + tableName + " not part of transaction"); + return fn(resolve, reject, trans.idbtrans.objectStore(tableName), trans); + } + return this._trans(mode, supplyIdbStore, writeLocked); + }, + // + // Table Public Methods + // + get: function (keyOrCrit, cb) { + if (keyOrCrit && keyOrCrit.constructor === Object) + return this.where(keyOrCrit).first(cb); + var self = this; + return this._idbstore(READONLY, function (resolve, reject, idbstore) { + var req = idbstore.get(keyOrCrit); + req.onerror = eventRejectHandler(reject); + req.onsuccess = wrap(function () { + resolve(self.hook.reading.fire(req.result)); + }, reject); + }).then(cb); + }, + where: function (indexOrCrit) { + if (typeof indexOrCrit === 'string') + return new WhereClause(this, indexOrCrit); + if (isArray(indexOrCrit)) + return new WhereClause(this, "[" + indexOrCrit.join('+') + "]"); + // indexOrCrit is an object map of {[keyPath]:value} + var keyPaths = keys(indexOrCrit); + if (keyPaths.length === 1) + // Only one critera. This was the easy case: + return this + .where(keyPaths[0]) + .equals(indexOrCrit[keyPaths[0]]); + // Multiple criterias. + // Let's try finding a compound index that matches all keyPaths in + // arbritary order: + var compoundIndex = this.schema.indexes.concat(this.schema.primKey).filter(function (ix) { + return ix.compound && + keyPaths.every(function (keyPath) { return ix.keyPath.indexOf(keyPath) >= 0; }) && + ix.keyPath.every(function (keyPath) { return keyPaths.indexOf(keyPath) >= 0; }); + })[0]; + if (compoundIndex && maxKey !== maxString) + // Cool! We found such compound index + // and this browser supports compound indexes (maxKey !== maxString)! + return this + .where(compoundIndex.name) + .equals(compoundIndex.keyPath.map(function (kp) { return indexOrCrit[kp]; })); + if (!compoundIndex) + console.warn("The query " + JSON.stringify(indexOrCrit) + " on " + this.name + " would benefit of a " + + ("compound index [" + keyPaths.join('+') + "]")); + // Ok, now let's fallback to finding at least one matching index + // and filter the rest. + var idxByName = this.schema.idxByName; + var simpleIndex = keyPaths.reduce(function (r, keyPath) { return [ + r[0] || idxByName[keyPath], + r[0] || !idxByName[keyPath] ? + combine(r[1], function (x) { return '' + getByKeyPath(x, keyPath) == + '' + indexOrCrit[keyPath]; }) + : r[1] + ]; }, [null, null]); + var idx = simpleIndex[0]; + return idx ? + this.where(idx.name).equals(indexOrCrit[idx.keyPath]) + .filter(simpleIndex[1]) : + compoundIndex ? + this.filter(simpleIndex[1]) : // Has compound but browser bad. Allow filter. + this.where(keyPaths).equals(''); // No index at all. Fail lazily. + }, + count: function (cb) { + return this.toCollection().count(cb); + }, + offset: function (offset) { + return this.toCollection().offset(offset); + }, + limit: function (numRows) { + return this.toCollection().limit(numRows); + }, + reverse: function () { + return this.toCollection().reverse(); + }, + filter: function (filterFunction) { + return this.toCollection().and(filterFunction); + }, + each: function (fn) { + return this.toCollection().each(fn); + }, + toArray: function (cb) { + return this.toCollection().toArray(cb); + }, + orderBy: function (index) { + return new Collection(new WhereClause(this, isArray(index) ? + "[" + index.join('+') + "]" : + index)); + }, + toCollection: function () { + return new Collection(new WhereClause(this)); + }, + mapToClass: function (constructor, structure) { + /// + /// Map table to a javascript constructor function. Objects returned from the database will be instances of this class, making + /// it possible to the instanceOf operator as well as extending the class using constructor.prototype.method = function(){...}. + /// + /// Constructor function representing the class. + /// Helps IDE code completion by knowing the members that objects contain and not just the indexes. Also + /// know what type each member has. Example: {name: String, emailAddresses: [String], password} + this.schema.mappedClass = constructor; + var instanceTemplate = Object.create(constructor.prototype); + if (structure) { + // structure and instanceTemplate is for IDE code competion only while constructor.prototype is for actual inheritance. + applyStructure(instanceTemplate, structure); + } + this.schema.instanceTemplate = instanceTemplate; + // Now, subscribe to the when("reading") event to make all objects that come out from this table inherit from given class + // no matter which method to use for reading (Table.get() or Table.where(...)... ) + var readHook = function (obj) { + if (!obj) + return obj; // No valid object. (Value is null). Return as is. + // Create a new object that derives from constructor: + var res = Object.create(constructor.prototype); + // Clone members: + for (var m in obj) + if (hasOwn(obj, m)) + try { + res[m] = obj[m]; + } + catch (_) { } + return res; + }; + if (this.schema.readHook) { + this.hook.reading.unsubscribe(this.schema.readHook); + } + this.schema.readHook = readHook; + this.hook("reading", readHook); + return constructor; + }, + defineClass: function (structure) { + /// + /// Define all members of the class that represents the table. This will help code completion of when objects are read from the database + /// as well as making it possible to extend the prototype of the returned constructor function. + /// + /// Helps IDE code completion by knowing the members that objects contain and not just the indexes. Also + /// know what type each member has. Example: {name: String, emailAddresses: [String], properties: {shoeSize: Number}} + return this.mapToClass(Dexie.defineClass(structure), structure); + }, + bulkDelete: function (keys$$1) { + if (this.hook.deleting.fire === nop) { + return this._idbstore(READWRITE, function (resolve, reject, idbstore, trans) { + resolve(bulkDelete(idbstore, trans, keys$$1, false, nop)); + }); + } + else { + return this + .where(':id') + .anyOf(keys$$1) + .delete() + .then(function () { }); // Resolve with undefined. + } + }, + bulkPut: function (objects, keys$$1) { + var _this = this; + return this._idbstore(READWRITE, function (resolve, reject, idbstore) { + if (!idbstore.keyPath && !_this.schema.primKey.auto && !keys$$1) + throw new exceptions.InvalidArgument("bulkPut() with non-inbound keys requires keys array in second argument"); + if (idbstore.keyPath && keys$$1) + throw new exceptions.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys"); + if (keys$$1 && keys$$1.length !== objects.length) + throw new exceptions.InvalidArgument("Arguments objects and keys must have the same length"); + if (objects.length === 0) + return resolve(); // Caller provided empty list. + var done = function (result) { + if (errorList.length === 0) + resolve(result); + else + reject(new BulkError(_this.name + ".bulkPut(): " + errorList.length + " of " + numObjs + " operations failed", errorList)); + }; + var req, errorList = [], errorHandler, numObjs = objects.length, table = _this; + if (_this.hook.creating.fire === nop && _this.hook.updating.fire === nop) { + // + // Standard Bulk (no 'creating' or 'updating' hooks to care about) + // + errorHandler = BulkErrorHandlerCatchAll(errorList); + for (var i = 0, l = objects.length; i < l; ++i) { + req = keys$$1 ? idbstore.put(objects[i], keys$$1[i]) : idbstore.put(objects[i]); + req.onerror = errorHandler; + } + // Only need to catch success or error on the last operation + // according to the IDB spec. + req.onerror = BulkErrorHandlerCatchAll(errorList, done); + req.onsuccess = eventSuccessHandler(done); + } + else { + var effectiveKeys = keys$$1 || idbstore.keyPath && objects.map(function (o) { return getByKeyPath(o, idbstore.keyPath); }); + // Generate map of {[key]: object} + var objectLookup = effectiveKeys && arrayToObject(effectiveKeys, function (key, i) { return key != null && [key, objects[i]]; }); + var promise = !effectiveKeys ? + // Auto-incremented key-less objects only without any keys argument. + table.bulkAdd(objects) : + // Keys provided. Either as inbound in provided objects, or as a keys argument. + // Begin with updating those that exists in DB: + table.where(':id').anyOf(effectiveKeys.filter(function (key) { return key != null; })).modify(function () { + this.value = objectLookup[this.primKey]; + objectLookup[this.primKey] = null; // Mark as "don't add this" + }).catch(ModifyError, function (e) { + errorList = e.failures; // No need to concat here. These are the first errors added. + }).then(function () { + // Now, let's examine which items didnt exist so we can add them: + var objsToAdd = [], keysToAdd = keys$$1 && []; + // Iterate backwards. Why? Because if same key was used twice, just add the last one. + for (var i = effectiveKeys.length - 1; i >= 0; --i) { + var key = effectiveKeys[i]; + if (key == null || objectLookup[key]) { + objsToAdd.push(objects[i]); + keys$$1 && keysToAdd.push(key); + if (key != null) + objectLookup[key] = null; // Mark as "dont add again" + } + } + // The items are in reverse order so reverse them before adding. + // Could be important in order to get auto-incremented keys the way the caller + // would expect. Could have used unshift instead of push()/reverse(), + // but: http://jsperf.com/unshift-vs-reverse + objsToAdd.reverse(); + keys$$1 && keysToAdd.reverse(); + return table.bulkAdd(objsToAdd, keysToAdd); + }).then(function (lastAddedKey) { + // Resolve with key of the last object in given arguments to bulkPut(): + var lastEffectiveKey = effectiveKeys[effectiveKeys.length - 1]; // Key was provided. + return lastEffectiveKey != null ? lastEffectiveKey : lastAddedKey; + }); + promise.then(done).catch(BulkError, function (e) { + // Concat failure from ModifyError and reject using our 'done' method. + errorList = errorList.concat(e.failures); + done(); + }).catch(reject); + } + }, "locked"); // If called from transaction scope, lock transaction til all steps are done. + }, + bulkAdd: function (objects, keys$$1) { + var self = this, creatingHook = this.hook.creating.fire; + return this._idbstore(READWRITE, function (resolve, reject, idbstore, trans) { + if (!idbstore.keyPath && !self.schema.primKey.auto && !keys$$1) + throw new exceptions.InvalidArgument("bulkAdd() with non-inbound keys requires keys array in second argument"); + if (idbstore.keyPath && keys$$1) + throw new exceptions.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys"); + if (keys$$1 && keys$$1.length !== objects.length) + throw new exceptions.InvalidArgument("Arguments objects and keys must have the same length"); + if (objects.length === 0) + return resolve(); // Caller provided empty list. + function done(result) { + if (errorList.length === 0) + resolve(result); + else + reject(new BulkError(self.name + ".bulkAdd(): " + errorList.length + " of " + numObjs + " operations failed", errorList)); + } + var req, errorList = [], errorHandler, successHandler, numObjs = objects.length; + if (creatingHook !== nop) { + // + // There are subscribers to hook('creating') + // Must behave as documented. + // + var keyPath = idbstore.keyPath, hookCtx; + errorHandler = BulkErrorHandlerCatchAll(errorList, null, true); + successHandler = hookedEventSuccessHandler(null); + tryCatch(function () { + for (var i = 0, l = objects.length; i < l; ++i) { + hookCtx = { onerror: null, onsuccess: null }; + var key = keys$$1 && keys$$1[i]; + var obj = objects[i], effectiveKey = keys$$1 ? key : keyPath ? getByKeyPath(obj, keyPath) : undefined, keyToUse = creatingHook.call(hookCtx, effectiveKey, obj, trans); + if (effectiveKey == null && keyToUse != null) { + if (keyPath) { + obj = deepClone(obj); + setByKeyPath(obj, keyPath, keyToUse); + } + else { + key = keyToUse; + } + } + req = key != null ? idbstore.add(obj, key) : idbstore.add(obj); + req._hookCtx = hookCtx; + if (i < l - 1) { + req.onerror = errorHandler; + if (hookCtx.onsuccess) + req.onsuccess = successHandler; + } + } + }, function (err) { + hookCtx.onerror && hookCtx.onerror(err); + throw err; + }); + req.onerror = BulkErrorHandlerCatchAll(errorList, done, true); + req.onsuccess = hookedEventSuccessHandler(done); + } + else { + // + // Standard Bulk (no 'creating' hook to care about) + // + errorHandler = BulkErrorHandlerCatchAll(errorList); + for (var i = 0, l = objects.length; i < l; ++i) { + req = keys$$1 ? idbstore.add(objects[i], keys$$1[i]) : idbstore.add(objects[i]); + req.onerror = errorHandler; + } + // Only need to catch success or error on the last operation + // according to the IDB spec. + req.onerror = BulkErrorHandlerCatchAll(errorList, done); + req.onsuccess = eventSuccessHandler(done); + } + }); + }, + add: function (obj, key) { + /// + /// Add an object to the database. In case an object with same primary key already exists, the object will not be added. + /// + /// A javascript object to insert + /// Primary key + var creatingHook = this.hook.creating.fire; + return this._idbstore(READWRITE, function (resolve, reject, idbstore, trans) { + var hookCtx = { onsuccess: null, onerror: null }; + if (creatingHook !== nop) { + var effectiveKey = (key != null) ? key : (idbstore.keyPath ? getByKeyPath(obj, idbstore.keyPath) : undefined); + var keyToUse = creatingHook.call(hookCtx, effectiveKey, obj, trans); // Allow subscribers to when("creating") to generate the key. + if (effectiveKey == null && keyToUse != null) { + if (idbstore.keyPath) + setByKeyPath(obj, idbstore.keyPath, keyToUse); + else + key = keyToUse; + } + } + try { + var req = key != null ? idbstore.add(obj, key) : idbstore.add(obj); + req._hookCtx = hookCtx; + req.onerror = hookedEventRejectHandler(reject); + req.onsuccess = hookedEventSuccessHandler(function (result) { + // TODO: Remove these two lines in next major release (2.0?) + // It's no good practice to have side effects on provided parameters + var keyPath = idbstore.keyPath; + if (keyPath) + setByKeyPath(obj, keyPath, result); + resolve(result); + }); + } + catch (e) { + if (hookCtx.onerror) + hookCtx.onerror(e); + throw e; + } + }); + }, + put: function (obj, key) { + var _this = this; + /// + /// Add an object to the database but in case an object with same primary key alread exists, the existing one will get updated. + /// + /// A javascript object to insert or update + /// Primary key + var creatingHook = this.hook.creating.fire, updatingHook = this.hook.updating.fire; + if (creatingHook !== nop || updatingHook !== nop) { + // + // People listens to when("creating") or when("updating") events! + // We must know whether the put operation results in an CREATE or UPDATE. + // + var keyPath = this.schema.primKey.keyPath; + var effectiveKey = (key !== undefined) ? key : (keyPath && getByKeyPath(obj, keyPath)); + if (effectiveKey == null) + return this.add(obj); + // Since key is optional, make sure we get it from obj if not provided + // Primary key exist. Lock transaction and try modifying existing. If nothing modified, call add(). + // clone obj before this async call. If caller modifies obj the line after put(), the IDB spec requires that it should not affect operation. + obj = deepClone(obj); + return this._trans(READWRITE, function () { + return _this.where(":id").equals(effectiveKey).modify(function () { + // Replace extisting value with our object + // CRUD event firing handled in Collection.modify() + this.value = obj; + }).then(function (count) { return count === 0 ? _this.add(obj, key) : effectiveKey; }); + }, "locked"); // Lock needed because operation is splitted into modify() and add(). + } + else { + // Use the standard IDB put() method. + return this._idbstore(READWRITE, function (resolve, reject, idbstore) { + var req = key !== undefined ? idbstore.put(obj, key) : idbstore.put(obj); + req.onerror = eventRejectHandler(reject); + req.onsuccess = wrap(function (ev) { + var keyPath = idbstore.keyPath; + if (keyPath) + setByKeyPath(obj, keyPath, ev.target.result); + resolve(req.result); + }); + }); + } + }, + 'delete': function (key) { + /// Primary key of the object to delete + if (this.hook.deleting.subscribers.length) { + // People listens to when("deleting") event. Must implement delete using Collection.delete() that will + // call the CRUD event. Only Collection.delete() will know whether an object was actually deleted. + return this.where(":id").equals(key).delete(); + } + else { + // No one listens. Use standard IDB delete() method. + return this._idbstore(READWRITE, function (resolve, reject, idbstore) { + var req = idbstore.delete(key); + req.onerror = eventRejectHandler(reject); + req.onsuccess = wrap(function () { + resolve(req.result); + }); + }); + } + }, + clear: function () { + if (this.hook.deleting.subscribers.length) { + // People listens to when("deleting") event. Must implement delete using Collection.delete() that will + // call the CRUD event. Only Collection.delete() will knows which objects that are actually deleted. + return this.toCollection().delete(); + } + else { + return this._idbstore(READWRITE, function (resolve, reject, idbstore) { + var req = idbstore.clear(); + req.onerror = eventRejectHandler(reject); + req.onsuccess = wrap(function () { + resolve(req.result); + }); + }); + } + }, + update: function (keyOrObject, modifications) { + if (typeof modifications !== 'object' || isArray(modifications)) + throw new exceptions.InvalidArgument("Modifications must be an object."); + if (typeof keyOrObject === 'object' && !isArray(keyOrObject)) { + // object to modify. Also modify given object with the modifications: + keys(modifications).forEach(function (keyPath) { + setByKeyPath(keyOrObject, keyPath, modifications[keyPath]); + }); + var key = getByKeyPath(keyOrObject, this.schema.primKey.keyPath); + if (key === undefined) + return rejection(new exceptions.InvalidArgument("Given object does not contain its primary key")); + return this.where(":id").equals(key).modify(modifications); + } + else { + // key to modify + return this.where(":id").equals(keyOrObject).modify(modifications); + } + } + }); + // + // + // + // Transaction Class + // + // + // + function Transaction(mode, storeNames, dbschema, parent) { + var _this = this; + /// + /// Transaction class. Represents a database transaction. All operations on db goes through a Transaction. + /// + /// Any of "readwrite" or "readonly" + /// Array of table names to operate on + this.db = db; + this.mode = mode; + this.storeNames = storeNames; + this.idbtrans = null; + this.on = Events(this, "complete", "error", "abort"); + this.parent = parent || null; + this.active = true; + this._reculock = 0; + this._blockedFuncs = []; + this._resolve = null; + this._reject = null; + this._waitingFor = null; + this._waitingQueue = null; + this._spinCount = 0; // Just for debugging waitFor() + this._completion = new Promise(function (resolve, reject) { + _this._resolve = resolve; + _this._reject = reject; + }); + this._completion.then(function () { + _this.active = false; + _this.on.complete.fire(); + }, function (e) { + var wasActive = _this.active; + _this.active = false; + _this.on.error.fire(e); + _this.parent ? + _this.parent._reject(e) : + wasActive && _this.idbtrans && _this.idbtrans.abort(); + return rejection(e); // Indicate we actually DO NOT catch this error. + }); + } + props(Transaction.prototype, { + // + // Transaction Protected Methods (not required by API users, but needed internally and eventually by dexie extensions) + // + _lock: function () { + assert(!PSD.global); // Locking and unlocking reuires to be within a PSD scope. + // Temporary set all requests into a pending queue if they are called before database is ready. + ++this._reculock; // Recursive read/write lock pattern using PSD (Promise Specific Data) instead of TLS (Thread Local Storage) + if (this._reculock === 1 && !PSD.global) + PSD.lockOwnerFor = this; + return this; + }, + _unlock: function () { + assert(!PSD.global); // Locking and unlocking reuires to be within a PSD scope. + if (--this._reculock === 0) { + if (!PSD.global) + PSD.lockOwnerFor = null; + while (this._blockedFuncs.length > 0 && !this._locked()) { + var fnAndPSD = this._blockedFuncs.shift(); + try { + usePSD(fnAndPSD[1], fnAndPSD[0]); + } + catch (e) { } + } + } + return this; + }, + _locked: function () { + // Checks if any write-lock is applied on this transaction. + // To simplify the Dexie API for extension implementations, we support recursive locks. + // This is accomplished by using "Promise Specific Data" (PSD). + // PSD data is bound to a Promise and any child Promise emitted through then() or resolve( new Promise() ). + // PSD is local to code executing on top of the call stacks of any of any code executed by Promise(): + // * callback given to the Promise() constructor (function (resolve, reject){...}) + // * callbacks given to then()/catch()/finally() methods (function (value){...}) + // If creating a new independant Promise instance from within a Promise call stack, the new Promise will derive the PSD from the call stack of the parent Promise. + // Derivation is done so that the inner PSD __proto__ points to the outer PSD. + // PSD.lockOwnerFor will point to current transaction object if the currently executing PSD scope owns the lock. + return this._reculock && PSD.lockOwnerFor !== this; + }, + create: function (idbtrans) { + var _this = this; + if (!this.mode) + return this; + assert(!this.idbtrans); + if (!idbtrans && !idbdb) { + switch (dbOpenError && dbOpenError.name) { + case "DatabaseClosedError": + // Errors where it is no difference whether it was caused by the user operation or an earlier call to db.open() + throw new exceptions.DatabaseClosed(dbOpenError); + case "MissingAPIError": + // Errors where it is no difference whether it was caused by the user operation or an earlier call to db.open() + throw new exceptions.MissingAPI(dbOpenError.message, dbOpenError); + default: + // Make it clear that the user operation was not what caused the error - the error had occurred earlier on db.open()! + throw new exceptions.OpenFailed(dbOpenError); + } + } + if (!this.active) + throw new exceptions.TransactionInactive(); + assert(this._completion._state === null); + idbtrans = this.idbtrans = idbtrans || idbdb.transaction(safariMultiStoreFix(this.storeNames), this.mode); + idbtrans.onerror = wrap(function (ev) { + preventDefault(ev); // Prohibit default bubbling to window.error + _this._reject(idbtrans.error); + }); + idbtrans.onabort = wrap(function (ev) { + preventDefault(ev); + _this.active && _this._reject(new exceptions.Abort(idbtrans.error)); + _this.active = false; + _this.on("abort").fire(ev); + }); + idbtrans.oncomplete = wrap(function () { + _this.active = false; + _this._resolve(); + }); + return this; + }, + _promise: function (mode, fn, bWriteLock) { + var _this = this; + if (mode === READWRITE && this.mode !== READWRITE) + return rejection(new exceptions.ReadOnly("Transaction is readonly")); + if (!this.active) + return rejection(new exceptions.TransactionInactive()); + if (this._locked()) { + return new Promise(function (resolve, reject) { + _this._blockedFuncs.push([function () { + _this._promise(mode, fn, bWriteLock).then(resolve, reject); + }, PSD]); + }); + } + else if (bWriteLock) { + return newScope(function () { + var p = new Promise(function (resolve, reject) { + _this._lock(); + var rv = fn(resolve, reject, _this); + if (rv && rv.then) + rv.then(resolve, reject); + }); + p.finally(function () { return _this._unlock(); }); + p._lib = true; + return p; + }); + } + else { + var p = new Promise(function (resolve, reject) { + var rv = fn(resolve, reject, _this); + if (rv && rv.then) + rv.then(resolve, reject); + }); + p._lib = true; + return p; + } + }, + _root: function () { + return this.parent ? this.parent._root() : this; + }, + waitFor: function (promise) { + // Always operate on the root transaction (in case this is a sub stransaction) + var root = this._root(); + // For stability reasons, convert parameter to promise no matter what type is passed to waitFor(). + // (We must be able to call .then() on it.) + promise = Promise.resolve(promise); + if (root._waitingFor) { + // Already called waitFor(). Wait for both to complete. + root._waitingFor = root._waitingFor.then(function () { return promise; }); + } + else { + // We're not in waiting state. Start waiting state. + root._waitingFor = promise; + root._waitingQueue = []; + // Start interacting with indexedDB until promise completes: + var store = root.idbtrans.objectStore(root.storeNames[0]); + (function spin() { + ++root._spinCount; // For debugging only + while (root._waitingQueue.length) + (root._waitingQueue.shift())(); + if (root._waitingFor) + store.get(-Infinity).onsuccess = spin; + }()); + } + var currentWaitPromise = root._waitingFor; + return new Promise(function (resolve, reject) { + promise.then(function (res) { return root._waitingQueue.push(wrap(resolve.bind(null, res))); }, function (err) { return root._waitingQueue.push(wrap(reject.bind(null, err))); }).finally(function () { + if (root._waitingFor === currentWaitPromise) { + // No one added a wait after us. Safe to stop the spinning. + root._waitingFor = null; + } + }); + }); + }, + // + // Transaction Public Properties and Methods + // + abort: function () { + this.active && this._reject(new exceptions.Abort()); + this.active = false; + }, + tables: { + get: deprecated("Transaction.tables", function () { return allTables; }) + }, + table: function (name) { + var table = db.table(name); // Don't check that table is part of transaction. It must fail lazily! + return new Table(name, table.schema, this); + } + }); + // + // + // + // WhereClause + // + // + // + function WhereClause(table, index, orCollection) { + /// + /// + /// + this._ctx = { + table: table, + index: index === ":id" ? null : index, + or: orCollection + }; + } + props(WhereClause.prototype, function () { + // WhereClause private methods + function fail(collectionOrWhereClause, err, T) { + var collection = collectionOrWhereClause instanceof WhereClause ? + new Collection(collectionOrWhereClause) : + collectionOrWhereClause; + collection._ctx.error = T ? new T(err) : new TypeError(err); + return collection; + } + function emptyCollection(whereClause) { + return new Collection(whereClause, function () { return IDBKeyRange.only(""); }).limit(0); + } + function upperFactory(dir) { + return dir === "next" ? function (s) { return s.toUpperCase(); } : function (s) { return s.toLowerCase(); }; + } + function lowerFactory(dir) { + return dir === "next" ? function (s) { return s.toLowerCase(); } : function (s) { return s.toUpperCase(); }; + } + function nextCasing(key, lowerKey, upperNeedle, lowerNeedle, cmp, dir) { + var length = Math.min(key.length, lowerNeedle.length); + var llp = -1; + for (var i = 0; i < length; ++i) { + var lwrKeyChar = lowerKey[i]; + if (lwrKeyChar !== lowerNeedle[i]) { + if (cmp(key[i], upperNeedle[i]) < 0) + return key.substr(0, i) + upperNeedle[i] + upperNeedle.substr(i + 1); + if (cmp(key[i], lowerNeedle[i]) < 0) + return key.substr(0, i) + lowerNeedle[i] + upperNeedle.substr(i + 1); + if (llp >= 0) + return key.substr(0, llp) + lowerKey[llp] + upperNeedle.substr(llp + 1); + return null; + } + if (cmp(key[i], lwrKeyChar) < 0) + llp = i; + } + if (length < lowerNeedle.length && dir === "next") + return key + upperNeedle.substr(key.length); + if (length < key.length && dir === "prev") + return key.substr(0, upperNeedle.length); + return (llp < 0 ? null : key.substr(0, llp) + lowerNeedle[llp] + upperNeedle.substr(llp + 1)); + } + function addIgnoreCaseAlgorithm(whereClause, match, needles, suffix) { + /// + var upper, lower, compare, upperNeedles, lowerNeedles, direction, nextKeySuffix, needlesLen = needles.length; + if (!needles.every(function (s) { return typeof s === 'string'; })) { + return fail(whereClause, STRING_EXPECTED); + } + function initDirection(dir) { + upper = upperFactory(dir); + lower = lowerFactory(dir); + compare = (dir === "next" ? simpleCompare : simpleCompareReverse); + var needleBounds = needles.map(function (needle) { + return { lower: lower(needle), upper: upper(needle) }; + }).sort(function (a, b) { + return compare(a.lower, b.lower); + }); + upperNeedles = needleBounds.map(function (nb) { return nb.upper; }); + lowerNeedles = needleBounds.map(function (nb) { return nb.lower; }); + direction = dir; + nextKeySuffix = (dir === "next" ? "" : suffix); + } + initDirection("next"); + var c = new Collection(whereClause, function () { + return IDBKeyRange.bound(upperNeedles[0], lowerNeedles[needlesLen - 1] + suffix); + }); + c._ondirectionchange = function (direction) { + // This event onlys occur before filter is called the first time. + initDirection(direction); + }; + var firstPossibleNeedle = 0; + c._addAlgorithm(function (cursor, advance, resolve) { + /// + /// + /// + var key = cursor.key; + if (typeof key !== 'string') + return false; + var lowerKey = lower(key); + if (match(lowerKey, lowerNeedles, firstPossibleNeedle)) { + return true; + } + else { + var lowestPossibleCasing = null; + for (var i = firstPossibleNeedle; i < needlesLen; ++i) { + var casing = nextCasing(key, lowerKey, upperNeedles[i], lowerNeedles[i], compare, direction); + if (casing === null && lowestPossibleCasing === null) + firstPossibleNeedle = i + 1; + else if (lowestPossibleCasing === null || compare(lowestPossibleCasing, casing) > 0) { + lowestPossibleCasing = casing; + } + } + if (lowestPossibleCasing !== null) { + advance(function () { cursor.continue(lowestPossibleCasing + nextKeySuffix); }); + } + else { + advance(resolve); + } + return false; + } + }); + return c; + } + // + // WhereClause public methods + // + return { + between: function (lower, upper, includeLower, includeUpper) { + /// + /// Filter out records whose where-field lays between given lower and upper values. Applies to Strings, Numbers and Dates. + /// + /// + /// + /// Whether items that equals lower should be included. Default true. + /// Whether items that equals upper should be included. Default false. + /// + includeLower = includeLower !== false; // Default to true + includeUpper = includeUpper === true; // Default to false + try { + if ((cmp(lower, upper) > 0) || + (cmp(lower, upper) === 0 && (includeLower || includeUpper) && !(includeLower && includeUpper))) + return emptyCollection(this); // Workaround for idiotic W3C Specification that DataError must be thrown if lower > upper. The natural result would be to return an empty collection. + return new Collection(this, function () { return IDBKeyRange.bound(lower, upper, !includeLower, !includeUpper); }); + } + catch (e) { + return fail(this, INVALID_KEY_ARGUMENT); + } + }, + equals: function (value) { + return new Collection(this, function () { return IDBKeyRange.only(value); }); + }, + above: function (value) { + return new Collection(this, function () { return IDBKeyRange.lowerBound(value, true); }); + }, + aboveOrEqual: function (value) { + return new Collection(this, function () { return IDBKeyRange.lowerBound(value); }); + }, + below: function (value) { + return new Collection(this, function () { return IDBKeyRange.upperBound(value, true); }); + }, + belowOrEqual: function (value) { + return new Collection(this, function () { return IDBKeyRange.upperBound(value); }); + }, + startsWith: function (str) { + /// + if (typeof str !== 'string') + return fail(this, STRING_EXPECTED); + return this.between(str, str + maxString, true, true); + }, + startsWithIgnoreCase: function (str) { + /// + if (str === "") + return this.startsWith(str); + return addIgnoreCaseAlgorithm(this, function (x, a) { return x.indexOf(a[0]) === 0; }, [str], maxString); + }, + equalsIgnoreCase: function (str) { + /// + return addIgnoreCaseAlgorithm(this, function (x, a) { return x === a[0]; }, [str], ""); + }, + anyOfIgnoreCase: function () { + var set = getArrayOf.apply(NO_CHAR_ARRAY, arguments); + if (set.length === 0) + return emptyCollection(this); + return addIgnoreCaseAlgorithm(this, function (x, a) { return a.indexOf(x) !== -1; }, set, ""); + }, + startsWithAnyOfIgnoreCase: function () { + var set = getArrayOf.apply(NO_CHAR_ARRAY, arguments); + if (set.length === 0) + return emptyCollection(this); + return addIgnoreCaseAlgorithm(this, function (x, a) { + return a.some(function (n) { + return x.indexOf(n) === 0; + }); + }, set, maxString); + }, + anyOf: function () { + var set = getArrayOf.apply(NO_CHAR_ARRAY, arguments); + var compare = ascending; + try { + set.sort(compare); + } + catch (e) { + return fail(this, INVALID_KEY_ARGUMENT); + } + if (set.length === 0) + return emptyCollection(this); + var c = new Collection(this, function () { return IDBKeyRange.bound(set[0], set[set.length - 1]); }); + c._ondirectionchange = function (direction) { + compare = (direction === "next" ? ascending : descending); + set.sort(compare); + }; + var i = 0; + c._addAlgorithm(function (cursor, advance, resolve) { + var key = cursor.key; + while (compare(key, set[i]) > 0) { + // The cursor has passed beyond this key. Check next. + ++i; + if (i === set.length) { + // There is no next. Stop searching. + advance(resolve); + return false; + } + } + if (compare(key, set[i]) === 0) { + // The current cursor value should be included and we should continue a single step in case next item has the same key or possibly our next key in set. + return true; + } + else { + // cursor.key not yet at set[i]. Forward cursor to the next key to hunt for. + advance(function () { cursor.continue(set[i]); }); + return false; + } + }); + return c; + }, + notEqual: function (value) { + return this.inAnyRange([[minKey, value], [value, maxKey]], { includeLowers: false, includeUppers: false }); + }, + noneOf: function () { + var set = getArrayOf.apply(NO_CHAR_ARRAY, arguments); + if (set.length === 0) + return new Collection(this); // Return entire collection. + try { + set.sort(ascending); + } + catch (e) { + return fail(this, INVALID_KEY_ARGUMENT); + } + // Transform ["a","b","c"] to a set of ranges for between/above/below: [[minKey,"a"], ["a","b"], ["b","c"], ["c",maxKey]] + var ranges = set.reduce(function (res, val) { return res ? res.concat([[res[res.length - 1][1], val]]) : [[minKey, val]]; }, null); + ranges.push([set[set.length - 1], maxKey]); + return this.inAnyRange(ranges, { includeLowers: false, includeUppers: false }); + }, + /** Filter out values withing given set of ranges. + * Example, give children and elders a rebate of 50%: + * + * db.friends.where('age').inAnyRange([[0,18],[65,Infinity]]).modify({Rebate: 1/2}); + * + * @param {(string|number|Date|Array)[][]} ranges + * @param {{includeLowers: boolean, includeUppers: boolean}} options + */ + inAnyRange: function (ranges, options) { + if (ranges.length === 0) + return emptyCollection(this); + if (!ranges.every(function (range) { return range[0] !== undefined && range[1] !== undefined && ascending(range[0], range[1]) <= 0; })) { + return fail(this, "First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower", exceptions.InvalidArgument); + } + var includeLowers = !options || options.includeLowers !== false; // Default to true + var includeUppers = options && options.includeUppers === true; // Default to false + function addRange(ranges, newRange) { + for (var i = 0, l = ranges.length; i < l; ++i) { + var range = ranges[i]; + if (cmp(newRange[0], range[1]) < 0 && cmp(newRange[1], range[0]) > 0) { + range[0] = min(range[0], newRange[0]); + range[1] = max(range[1], newRange[1]); + break; + } + } + if (i === l) + ranges.push(newRange); + return ranges; + } + var sortDirection = ascending; + function rangeSorter(a, b) { return sortDirection(a[0], b[0]); } + // Join overlapping ranges + var set; + try { + set = ranges.reduce(addRange, []); + set.sort(rangeSorter); + } + catch (ex) { + return fail(this, INVALID_KEY_ARGUMENT); + } + var i = 0; + var keyIsBeyondCurrentEntry = includeUppers ? + function (key) { return ascending(key, set[i][1]) > 0; } : + function (key) { return ascending(key, set[i][1]) >= 0; }; + var keyIsBeforeCurrentEntry = includeLowers ? + function (key) { return descending(key, set[i][0]) > 0; } : + function (key) { return descending(key, set[i][0]) >= 0; }; + function keyWithinCurrentRange(key) { + return !keyIsBeyondCurrentEntry(key) && !keyIsBeforeCurrentEntry(key); + } + var checkKey = keyIsBeyondCurrentEntry; + var c = new Collection(this, function () { + return IDBKeyRange.bound(set[0][0], set[set.length - 1][1], !includeLowers, !includeUppers); + }); + c._ondirectionchange = function (direction) { + if (direction === "next") { + checkKey = keyIsBeyondCurrentEntry; + sortDirection = ascending; + } + else { + checkKey = keyIsBeforeCurrentEntry; + sortDirection = descending; + } + set.sort(rangeSorter); + }; + c._addAlgorithm(function (cursor, advance, resolve) { + var key = cursor.key; + while (checkKey(key)) { + // The cursor has passed beyond this key. Check next. + ++i; + if (i === set.length) { + // There is no next. Stop searching. + advance(resolve); + return false; + } + } + if (keyWithinCurrentRange(key)) { + // The current cursor value should be included and we should continue a single step in case next item has the same key or possibly our next key in set. + return true; + } + else if (cmp(key, set[i][1]) === 0 || cmp(key, set[i][0]) === 0) { + // includeUpper or includeLower is false so keyWithinCurrentRange() returns false even though we are at range border. + // Continue to next key but don't include this one. + return false; + } + else { + // cursor.key not yet at set[i]. Forward cursor to the next key to hunt for. + advance(function () { + if (sortDirection === ascending) + cursor.continue(set[i][0]); + else + cursor.continue(set[i][1]); + }); + return false; + } + }); + return c; + }, + startsWithAnyOf: function () { + var set = getArrayOf.apply(NO_CHAR_ARRAY, arguments); + if (!set.every(function (s) { return typeof s === 'string'; })) { + return fail(this, "startsWithAnyOf() only works with strings"); + } + if (set.length === 0) + return emptyCollection(this); + return this.inAnyRange(set.map(function (str) { + return [str, str + maxString]; + })); + } + }; + }); + // + // + // + // Collection Class + // + // + // + function Collection(whereClause, keyRangeGenerator) { + /// + /// + /// + /// Where clause instance + /// + var keyRange = null, error = null; + if (keyRangeGenerator) + try { + keyRange = keyRangeGenerator(); + } + catch (ex) { + error = ex; + } + var whereCtx = whereClause._ctx, table = whereCtx.table; + this._ctx = { + table: table, + index: whereCtx.index, + isPrimKey: (!whereCtx.index || (table.schema.primKey.keyPath && whereCtx.index === table.schema.primKey.name)), + range: keyRange, + keysOnly: false, + dir: "next", + unique: "", + algorithm: null, + filter: null, + replayFilter: null, + justLimit: true, + isMatch: null, + offset: 0, + limit: Infinity, + error: error, + or: whereCtx.or, + valueMapper: table.hook.reading.fire + }; + } + function isPlainKeyRange(ctx, ignoreLimitFilter) { + return !(ctx.filter || ctx.algorithm || ctx.or) && + (ignoreLimitFilter ? ctx.justLimit : !ctx.replayFilter); + } + props(Collection.prototype, function () { + // + // Collection Private Functions + // + function addFilter(ctx, fn) { + ctx.filter = combine(ctx.filter, fn); + } + function addReplayFilter(ctx, factory, isLimitFilter) { + var curr = ctx.replayFilter; + ctx.replayFilter = curr ? function () { return combine(curr(), factory()); } : factory; + ctx.justLimit = isLimitFilter && !curr; + } + function addMatchFilter(ctx, fn) { + ctx.isMatch = combine(ctx.isMatch, fn); + } + /** @param ctx { + * isPrimKey: boolean, + * table: Table, + * index: string + * } + * @param store IDBObjectStore + **/ + function getIndexOrStore(ctx, store) { + if (ctx.isPrimKey) + return store; + var indexSpec = ctx.table.schema.idxByName[ctx.index]; + if (!indexSpec) + throw new exceptions.Schema("KeyPath " + ctx.index + " on object store " + store.name + " is not indexed"); + return store.index(indexSpec.name); + } + /** @param ctx { + * isPrimKey: boolean, + * table: Table, + * index: string, + * keysOnly: boolean, + * range?: IDBKeyRange, + * dir: "next" | "prev" + * } + */ + function openCursor(ctx, store) { + var idxOrStore = getIndexOrStore(ctx, store); + return ctx.keysOnly && 'openKeyCursor' in idxOrStore ? + idxOrStore.openKeyCursor(ctx.range || null, ctx.dir + ctx.unique) : + idxOrStore.openCursor(ctx.range || null, ctx.dir + ctx.unique); + } + function iter(ctx, fn, resolve, reject, idbstore) { + var filter = ctx.replayFilter ? combine(ctx.filter, ctx.replayFilter()) : ctx.filter; + if (!ctx.or) { + iterate(openCursor(ctx, idbstore), combine(ctx.algorithm, filter), fn, resolve, reject, !ctx.keysOnly && ctx.valueMapper); + } + else + (function () { + var set = {}; + var resolved = 0; + function resolveboth() { + if (++resolved === 2) + resolve(); // Seems like we just support or btwn max 2 expressions, but there are no limit because we do recursion. + } + function union(item, cursor, advance) { + if (!filter || filter(cursor, advance, resolveboth, reject)) { + var primaryKey = cursor.primaryKey; + var key = '' + primaryKey; + if (key === '[object ArrayBuffer]') + key = '' + new Uint8Array(primaryKey); + if (!hasOwn(set, key)) { + set[key] = true; + fn(item, cursor, advance); + } + } + } + ctx.or._iterate(union, resolveboth, reject, idbstore); + iterate(openCursor(ctx, idbstore), ctx.algorithm, union, resolveboth, reject, !ctx.keysOnly && ctx.valueMapper); + })(); + } + return { + // + // Collection Protected Functions + // + _read: function (fn, cb) { + var ctx = this._ctx; + return ctx.error ? + ctx.table._trans(null, rejection.bind(null, ctx.error)) : + ctx.table._idbstore(READONLY, fn).then(cb); + }, + _write: function (fn) { + var ctx = this._ctx; + return ctx.error ? + ctx.table._trans(null, rejection.bind(null, ctx.error)) : + ctx.table._idbstore(READWRITE, fn, "locked"); // When doing write operations on collections, always lock the operation so that upcoming operations gets queued. + }, + _addAlgorithm: function (fn) { + var ctx = this._ctx; + ctx.algorithm = combine(ctx.algorithm, fn); + }, + _iterate: function (fn, resolve, reject, idbstore) { + return iter(this._ctx, fn, resolve, reject, idbstore); + }, + clone: function (props$$1) { + var rv = Object.create(this.constructor.prototype), ctx = Object.create(this._ctx); + if (props$$1) + extend(ctx, props$$1); + rv._ctx = ctx; + return rv; + }, + raw: function () { + this._ctx.valueMapper = null; + return this; + }, + // + // Collection Public methods + // + each: function (fn) { + var ctx = this._ctx; + return this._read(function (resolve, reject, idbstore) { + iter(ctx, fn, resolve, reject, idbstore); + }); + }, + count: function (cb) { + var ctx = this._ctx; + if (isPlainKeyRange(ctx, true)) { + // This is a plain key range. We can use the count() method if the index. + return this._read(function (resolve, reject, idbstore) { + var idx = getIndexOrStore(ctx, idbstore); + var req = (ctx.range ? idx.count(ctx.range) : idx.count()); + req.onerror = eventRejectHandler(reject); + req.onsuccess = function (e) { + resolve(Math.min(e.target.result, ctx.limit)); + }; + }, cb); + } + else { + // Algorithms, filters or expressions are applied. Need to count manually. + var count = 0; + return this._read(function (resolve, reject, idbstore) { + iter(ctx, function () { ++count; return false; }, function () { resolve(count); }, reject, idbstore); + }, cb); + } + }, + sortBy: function (keyPath, cb) { + /// + var parts = keyPath.split('.').reverse(), lastPart = parts[0], lastIndex = parts.length - 1; + function getval(obj, i) { + if (i) + return getval(obj[parts[i]], i - 1); + return obj[lastPart]; + } + var order = this._ctx.dir === "next" ? 1 : -1; + function sorter(a, b) { + var aVal = getval(a, lastIndex), bVal = getval(b, lastIndex); + return aVal < bVal ? -order : aVal > bVal ? order : 0; + } + return this.toArray(function (a) { + return a.sort(sorter); + }).then(cb); + }, + toArray: function (cb) { + var ctx = this._ctx; + return this._read(function (resolve, reject, idbstore) { + if (hasGetAll && ctx.dir === 'next' && isPlainKeyRange(ctx, true) && ctx.limit > 0) { + // Special optimation if we could use IDBObjectStore.getAll() or + // IDBKeyRange.getAll(): + var readingHook = ctx.table.hook.reading.fire; + var idxOrStore = getIndexOrStore(ctx, idbstore); + var req = ctx.limit < Infinity ? + idxOrStore.getAll(ctx.range, ctx.limit) : + idxOrStore.getAll(ctx.range); + req.onerror = eventRejectHandler(reject); + req.onsuccess = readingHook === mirror ? + eventSuccessHandler(resolve) : + eventSuccessHandler(function (res) { + try { + resolve(res.map(readingHook)); + } + catch (e) { + reject(e); + } + }); + } + else { + // Getting array through a cursor. + var a = []; + iter(ctx, function (item) { a.push(item); }, function arrayComplete() { + resolve(a); + }, reject, idbstore); + } + }, cb); + }, + offset: function (offset) { + var ctx = this._ctx; + if (offset <= 0) + return this; + ctx.offset += offset; // For count() + if (isPlainKeyRange(ctx)) { + addReplayFilter(ctx, function () { + var offsetLeft = offset; + return function (cursor, advance) { + if (offsetLeft === 0) + return true; + if (offsetLeft === 1) { + --offsetLeft; + return false; + } + advance(function () { + cursor.advance(offsetLeft); + offsetLeft = 0; + }); + return false; + }; + }); + } + else { + addReplayFilter(ctx, function () { + var offsetLeft = offset; + return function () { return (--offsetLeft < 0); }; + }); + } + return this; + }, + limit: function (numRows) { + this._ctx.limit = Math.min(this._ctx.limit, numRows); // For count() + addReplayFilter(this._ctx, function () { + var rowsLeft = numRows; + return function (cursor, advance, resolve) { + if (--rowsLeft <= 0) + advance(resolve); // Stop after this item has been included + return rowsLeft >= 0; // If numRows is already below 0, return false because then 0 was passed to numRows initially. Otherwise we wouldnt come here. + }; + }, true); + return this; + }, + until: function (filterFunction, bIncludeStopEntry) { + addFilter(this._ctx, function (cursor, advance, resolve) { + if (filterFunction(cursor.value)) { + advance(resolve); + return bIncludeStopEntry; + } + else { + return true; + } + }); + return this; + }, + first: function (cb) { + return this.limit(1).toArray(function (a) { return a[0]; }).then(cb); + }, + last: function (cb) { + return this.reverse().first(cb); + }, + filter: function (filterFunction) { + /// function(val){return true/false} + addFilter(this._ctx, function (cursor) { + return filterFunction(cursor.value); + }); + // match filters not used in Dexie.js but can be used by 3rd part libraries to test a + // collection for a match without querying DB. Used by Dexie.Observable. + addMatchFilter(this._ctx, filterFunction); + return this; + }, + and: function (filterFunction) { + return this.filter(filterFunction); + }, + or: function (indexName) { + return new WhereClause(this._ctx.table, indexName, this); + }, + reverse: function () { + this._ctx.dir = (this._ctx.dir === "prev" ? "next" : "prev"); + if (this._ondirectionchange) + this._ondirectionchange(this._ctx.dir); + return this; + }, + desc: function () { + return this.reverse(); + }, + eachKey: function (cb) { + var ctx = this._ctx; + ctx.keysOnly = !ctx.isMatch; + return this.each(function (val, cursor) { cb(cursor.key, cursor); }); + }, + eachUniqueKey: function (cb) { + this._ctx.unique = "unique"; + return this.eachKey(cb); + }, + eachPrimaryKey: function (cb) { + var ctx = this._ctx; + ctx.keysOnly = !ctx.isMatch; + return this.each(function (val, cursor) { cb(cursor.primaryKey, cursor); }); + }, + keys: function (cb) { + var ctx = this._ctx; + ctx.keysOnly = !ctx.isMatch; + var a = []; + return this.each(function (item, cursor) { + a.push(cursor.key); + }).then(function () { + return a; + }).then(cb); + }, + primaryKeys: function (cb) { + var ctx = this._ctx; + if (hasGetAll && ctx.dir === 'next' && isPlainKeyRange(ctx, true) && ctx.limit > 0) { + // Special optimation if we could use IDBObjectStore.getAllKeys() or + // IDBKeyRange.getAllKeys(): + return this._read(function (resolve, reject, idbstore) { + var idxOrStore = getIndexOrStore(ctx, idbstore); + var req = ctx.limit < Infinity ? + idxOrStore.getAllKeys(ctx.range, ctx.limit) : + idxOrStore.getAllKeys(ctx.range); + req.onerror = eventRejectHandler(reject); + req.onsuccess = eventSuccessHandler(resolve); + }).then(cb); + } + ctx.keysOnly = !ctx.isMatch; + var a = []; + return this.each(function (item, cursor) { + a.push(cursor.primaryKey); + }).then(function () { + return a; + }).then(cb); + }, + uniqueKeys: function (cb) { + this._ctx.unique = "unique"; + return this.keys(cb); + }, + firstKey: function (cb) { + return this.limit(1).keys(function (a) { return a[0]; }).then(cb); + }, + lastKey: function (cb) { + return this.reverse().firstKey(cb); + }, + distinct: function () { + var ctx = this._ctx, idx = ctx.index && ctx.table.schema.idxByName[ctx.index]; + if (!idx || !idx.multi) + return this; // distinct() only makes differencies on multiEntry indexes. + var set = {}; + addFilter(this._ctx, function (cursor) { + var strKey = cursor.primaryKey.toString(); // Converts any Date to String, String to String, Number to String and Array to comma-separated string + var found = hasOwn(set, strKey); + set[strKey] = true; + return !found; + }); + return this; + }, + // + // Methods that mutate storage + // + modify: function (changes) { + var self = this, ctx = this._ctx, hook = ctx.table.hook, updatingHook = hook.updating.fire, deletingHook = hook.deleting.fire; + return this._write(function (resolve, reject, idbstore, trans) { + var modifyer; + if (typeof changes === 'function') { + // Changes is a function that may update, add or delete propterties or even require a deletion the object itself (delete this.item) + if (updatingHook === nop && deletingHook === nop) { + // Noone cares about what is being changed. Just let the modifier function be the given argument as is. + modifyer = changes; + } + else { + // People want to know exactly what is being modified or deleted. + // Let modifyer be a proxy function that finds out what changes the caller is actually doing + // and call the hooks accordingly! + modifyer = function (item) { + var origItem = deepClone(item); // Clone the item first so we can compare laters. + if (changes.call(this, item, this) === false) + return false; // Call the real modifyer function (If it returns false explicitely, it means it dont want to modify anyting on this object) + if (!hasOwn(this, "value")) { + // The real modifyer function requests a deletion of the object. Inform the deletingHook that a deletion is taking place. + deletingHook.call(this, this.primKey, item, trans); + } + else { + // No deletion. Check what was changed + var objectDiff = getObjectDiff(origItem, this.value); + var additionalChanges = updatingHook.call(this, objectDiff, this.primKey, origItem, trans); + if (additionalChanges) { + // Hook want to apply additional modifications. Make sure to fullfill the will of the hook. + item = this.value; + keys(additionalChanges).forEach(function (keyPath) { + setByKeyPath(item, keyPath, additionalChanges[keyPath]); // Adding {keyPath: undefined} means that the keyPath should be deleted. Handled by setByKeyPath + }); + } + } + }; + } + } + else if (updatingHook === nop) { + // changes is a set of {keyPath: value} and no one is listening to the updating hook. + var keyPaths = keys(changes); + var numKeys = keyPaths.length; + modifyer = function (item) { + var anythingModified = false; + for (var i = 0; i < numKeys; ++i) { + var keyPath = keyPaths[i], val = changes[keyPath]; + if (getByKeyPath(item, keyPath) !== val) { + setByKeyPath(item, keyPath, val); // Adding {keyPath: undefined} means that the keyPath should be deleted. Handled by setByKeyPath + anythingModified = true; + } + } + return anythingModified; + }; + } + else { + // changes is a set of {keyPath: value} and people are listening to the updating hook so we need to call it and + // allow it to add additional modifications to make. + var origChanges = changes; + changes = shallowClone(origChanges); // Let's work with a clone of the changes keyPath/value set so that we can restore it in case a hook extends it. + modifyer = function (item) { + var anythingModified = false; + var additionalChanges = updatingHook.call(this, changes, this.primKey, deepClone(item), trans); + if (additionalChanges) + extend(changes, additionalChanges); + keys(changes).forEach(function (keyPath) { + var val = changes[keyPath]; + if (getByKeyPath(item, keyPath) !== val) { + setByKeyPath(item, keyPath, val); + anythingModified = true; + } + }); + if (additionalChanges) + changes = shallowClone(origChanges); // Restore original changes for next iteration + return anythingModified; + }; + } + var count = 0; + var successCount = 0; + var iterationComplete = false; + var failures = []; + var failKeys = []; + var currentKey = null; + function modifyItem(item, cursor) { + currentKey = cursor.primaryKey; + var thisContext = { + primKey: cursor.primaryKey, + value: item, + onsuccess: null, + onerror: null + }; + function onerror(e) { + failures.push(e); + failKeys.push(thisContext.primKey); + checkFinished(); + return true; // Catch these errors and let a final rejection decide whether or not to abort entire transaction + } + if (modifyer.call(thisContext, item, thisContext) !== false) { + var bDelete = !hasOwn(thisContext, "value"); + ++count; + tryCatch(function () { + var req = (bDelete ? cursor.delete() : cursor.update(thisContext.value)); + req._hookCtx = thisContext; + req.onerror = hookedEventRejectHandler(onerror); + req.onsuccess = hookedEventSuccessHandler(function () { + ++successCount; + checkFinished(); + }); + }, onerror); + } + else if (thisContext.onsuccess) { + // Hook will expect either onerror or onsuccess to always be called! + thisContext.onsuccess(thisContext.value); + } + } + function doReject(e) { + if (e) { + failures.push(e); + failKeys.push(currentKey); + } + return reject(new ModifyError("Error modifying one or more objects", failures, successCount, failKeys)); + } + function checkFinished() { + if (iterationComplete && successCount + failures.length === count) { + if (failures.length > 0) + doReject(); + else + resolve(successCount); + } + } + self.clone().raw()._iterate(modifyItem, function () { + iterationComplete = true; + checkFinished(); + }, doReject, idbstore); + }); + }, + 'delete': function () { + var _this = this; + var ctx = this._ctx, range = ctx.range, deletingHook = ctx.table.hook.deleting.fire, hasDeleteHook = deletingHook !== nop; + if (!hasDeleteHook && + isPlainKeyRange(ctx) && + ((ctx.isPrimKey && !hangsOnDeleteLargeKeyRange) || !range)) { + // May use IDBObjectStore.delete(IDBKeyRange) in this case (Issue #208) + // For chromium, this is the way most optimized version. + // For IE/Edge, this could hang the indexedDB engine and make operating system instable + // (https://gist.github.com/dfahlander/5a39328f029de18222cf2125d56c38f7) + return this._write(function (resolve, reject, idbstore) { + // Our API contract is to return a count of deleted items, so we have to count() before delete(). + var onerror = eventRejectHandler(reject), countReq = (range ? idbstore.count(range) : idbstore.count()); + countReq.onerror = onerror; + countReq.onsuccess = function () { + var count = countReq.result; + tryCatch(function () { + var delReq = (range ? idbstore.delete(range) : idbstore.clear()); + delReq.onerror = onerror; + delReq.onsuccess = function () { return resolve(count); }; + }, function (err) { return reject(err); }); + }; + }); + } + // Default version to use when collection is not a vanilla IDBKeyRange on the primary key. + // Divide into chunks to not starve RAM. + // If has delete hook, we will have to collect not just keys but also objects, so it will use + // more memory and need lower chunk size. + var CHUNKSIZE = hasDeleteHook ? 2000 : 10000; + return this._write(function (resolve, reject, idbstore, trans) { + var totalCount = 0; + // Clone collection and change its table and set a limit of CHUNKSIZE on the cloned Collection instance. + var collection = _this + .clone({ + keysOnly: !ctx.isMatch && !hasDeleteHook + }) // load just keys (unless filter() or and() or deleteHook has subscribers) + .distinct() // In case multiEntry is used, never delete same key twice because resulting count + .limit(CHUNKSIZE) + .raw(); // Don't filter through reading-hooks (like mapped classes etc) + var keysOrTuples = []; + // We're gonna do things on as many chunks that are needed. + // Use recursion of nextChunk function: + var nextChunk = function () { return collection.each(hasDeleteHook ? function (val, cursor) { + // Somebody subscribes to hook('deleting'). Collect all primary keys and their values, + // so that the hook can be called with its values in bulkDelete(). + keysOrTuples.push([cursor.primaryKey, cursor.value]); + } : function (val, cursor) { + // No one subscribes to hook('deleting'). Collect only primary keys: + keysOrTuples.push(cursor.primaryKey); + }).then(function () { + // Chromium deletes faster when doing it in sort order. + hasDeleteHook ? + keysOrTuples.sort(function (a, b) { return ascending(a[0], b[0]); }) : + keysOrTuples.sort(ascending); + return bulkDelete(idbstore, trans, keysOrTuples, hasDeleteHook, deletingHook); + }).then(function () { + var count = keysOrTuples.length; + totalCount += count; + keysOrTuples = []; + return count < CHUNKSIZE ? totalCount : nextChunk(); + }); }; + resolve(nextChunk()); + }); + } + }; + }); + // + // + // + // ------------------------- Help functions --------------------------- + // + // + // + function lowerVersionFirst(a, b) { + return a._cfg.version - b._cfg.version; + } + function setApiOnPlace(objs, tableNames, dbschema) { + tableNames.forEach(function (tableName) { + var schema = dbschema[tableName]; + objs.forEach(function (obj) { + if (!(tableName in obj)) { + if (obj === Transaction.prototype || obj instanceof Transaction) { + // obj is a Transaction prototype (or prototype of a subclass to Transaction) + // Make the API a getter that returns this.table(tableName) + setProp(obj, tableName, { get: function () { return this.table(tableName); } }); + } + else { + // Table will not be bound to a transaction (will use Dexie.currentTransaction) + obj[tableName] = new Table(tableName, schema); + } + } + }); + }); + } + function removeTablesApi(objs) { + objs.forEach(function (obj) { + for (var key in obj) { + if (obj[key] instanceof Table) + delete obj[key]; + } + }); + } + function iterate(req, filter, fn, resolve, reject, valueMapper) { + // Apply valueMapper (hook('reading') or mappped class) + var mappedFn = valueMapper ? function (x, c, a) { return fn(valueMapper(x), c, a); } : fn; + // Wrap fn with PSD and microtick stuff from Promise. + var wrappedFn = wrap(mappedFn, reject); + if (!req.onerror) + req.onerror = eventRejectHandler(reject); + if (filter) { + req.onsuccess = trycatcher(function filter_record() { + var cursor = req.result; + if (cursor) { + var c = function () { cursor.continue(); }; + if (filter(cursor, function (advancer) { c = advancer; }, resolve, reject)) + wrappedFn(cursor.value, cursor, function (advancer) { c = advancer; }); + c(); + } + else { + resolve(); + } + }, reject); + } + else { + req.onsuccess = trycatcher(function filter_record() { + var cursor = req.result; + if (cursor) { + var c = function () { cursor.continue(); }; + wrappedFn(cursor.value, cursor, function (advancer) { c = advancer; }); + c(); + } + else { + resolve(); + } + }, reject); + } + } + function parseIndexSyntax(indexes) { + /// + /// + var rv = []; + indexes.split(',').forEach(function (index) { + index = index.trim(); + var name = index.replace(/([&*]|\+\+)/g, ""); // Remove "&", "++" and "*" + // Let keyPath of "[a+b]" be ["a","b"]: + var keyPath = /^\[/.test(name) ? name.match(/^\[(.*)\]$/)[1].split('+') : name; + rv.push(new IndexSpec(name, keyPath || null, /\&/.test(index), /\*/.test(index), /\+\+/.test(index), isArray(keyPath), /\./.test(index))); + }); + return rv; + } + function cmp(key1, key2) { + return indexedDB.cmp(key1, key2); + } + function min(a, b) { + return cmp(a, b) < 0 ? a : b; + } + function max(a, b) { + return cmp(a, b) > 0 ? a : b; + } + function ascending(a, b) { + return indexedDB.cmp(a, b); + } + function descending(a, b) { + return indexedDB.cmp(b, a); + } + function simpleCompare(a, b) { + return a < b ? -1 : a === b ? 0 : 1; + } + function simpleCompareReverse(a, b) { + return a > b ? -1 : a === b ? 0 : 1; + } + function combine(filter1, filter2) { + return filter1 ? + filter2 ? + function () { return filter1.apply(this, arguments) && filter2.apply(this, arguments); } : + filter1 : + filter2; + } + function readGlobalSchema() { + db.verno = idbdb.version / 10; + db._dbSchema = globalSchema = {}; + dbStoreNames = slice(idbdb.objectStoreNames, 0); + if (dbStoreNames.length === 0) + return; // Database contains no stores. + var trans = idbdb.transaction(safariMultiStoreFix(dbStoreNames), 'readonly'); + dbStoreNames.forEach(function (storeName) { + var store = trans.objectStore(storeName), keyPath = store.keyPath, dotted = keyPath && typeof keyPath === 'string' && keyPath.indexOf('.') !== -1; + var primKey = new IndexSpec(keyPath, keyPath || "", false, false, !!store.autoIncrement, keyPath && typeof keyPath !== 'string', dotted); + var indexes = []; + for (var j = 0; j < store.indexNames.length; ++j) { + var idbindex = store.index(store.indexNames[j]); + keyPath = idbindex.keyPath; + dotted = keyPath && typeof keyPath === 'string' && keyPath.indexOf('.') !== -1; + var index = new IndexSpec(idbindex.name, keyPath, !!idbindex.unique, !!idbindex.multiEntry, false, keyPath && typeof keyPath !== 'string', dotted); + indexes.push(index); + } + globalSchema[storeName] = new TableSchema(storeName, primKey, indexes, {}); + }); + setApiOnPlace([allTables], keys(globalSchema), globalSchema); + } + function adjustToExistingIndexNames(schema, idbtrans) { + /// + /// Issue #30 Problem with existing db - adjust to existing index names when migrating from non-dexie db + /// + /// Map between name and TableSchema + /// + var storeNames = idbtrans.db.objectStoreNames; + for (var i = 0; i < storeNames.length; ++i) { + var storeName = storeNames[i]; + var store = idbtrans.objectStore(storeName); + hasGetAll = 'getAll' in store; + for (var j = 0; j < store.indexNames.length; ++j) { + var indexName = store.indexNames[j]; + var keyPath = store.index(indexName).keyPath; + var dexieName = typeof keyPath === 'string' ? keyPath : "[" + slice(keyPath).join('+') + "]"; + if (schema[storeName]) { + var indexSpec = schema[storeName].idxByName[dexieName]; + if (indexSpec) + indexSpec.name = indexName; + } + } + } + // Bug with getAll() on Safari ver<604 on Workers only, see discussion following PR #579 + if (/Safari/.test(navigator.userAgent) && + !/(Chrome\/|Edge\/)/.test(navigator.userAgent) && + _global.WorkerGlobalScope && _global instanceof _global.WorkerGlobalScope && + [].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1] < 604) { + hasGetAll = false; + } + } + function fireOnBlocked(ev) { + db.on("blocked").fire(ev); + // Workaround (not fully*) for missing "versionchange" event in IE,Edge and Safari: + connections + .filter(function (c) { return c.name === db.name && c !== db && !c._vcFired; }) + .map(function (c) { return c.on("versionchange").fire(ev); }); + } + extend(this, { + Collection: Collection, + Table: Table, + Transaction: Transaction, + Version: Version, + WhereClause: WhereClause + }); + init(); + addons.forEach(function (fn) { + fn(db); + }); +} +function parseType(type) { + if (typeof type === 'function') { + return new type(); + } + else if (isArray(type)) { + return [parseType(type[0])]; + } + else if (type && typeof type === 'object') { + var rv = {}; + applyStructure(rv, type); + return rv; + } + else { + return type; + } +} +function applyStructure(obj, structure) { + keys(structure).forEach(function (member) { + var value = parseType(structure[member]); + obj[member] = value; + }); + return obj; +} +function hookedEventSuccessHandler(resolve) { + // wrap() is needed when calling hooks because the rare scenario of: + // * hook does a db operation that fails immediately (IDB throws exception) + // For calling db operations on correct transaction, wrap makes sure to set PSD correctly. + // wrap() will also execute in a virtual tick. + // * If not wrapped in a virtual tick, direct exception will launch a new physical tick. + // * If this was the last event in the bulk, the promise will resolve after a physical tick + // and the transaction will have committed already. + // If no hook, the virtual tick will be executed in the reject()/resolve of the final promise, + // because it is always marked with _lib = true when created using Transaction._promise(). + return wrap(function (event) { + var req = event.target, ctx = req._hookCtx, // Contains the hook error handler. Put here instead of closure to boost performance. + result = ctx.value || req.result, // Pass the object value on updates. The result from IDB is the primary key. + hookSuccessHandler = ctx && ctx.onsuccess; + hookSuccessHandler && hookSuccessHandler(result); + resolve && resolve(result); + }, resolve); +} +function eventRejectHandler(reject) { + return wrap(function (event) { + preventDefault(event); + reject(event.target.error); + return false; + }); +} +function eventSuccessHandler(resolve) { + return wrap(function (event) { + resolve(event.target.result); + }); +} +function hookedEventRejectHandler(reject) { + return wrap(function (event) { + // See comment on hookedEventSuccessHandler() why wrap() is needed only when supporting hooks. + var req = event.target, err = req.error, ctx = req._hookCtx, // Contains the hook error handler. Put here instead of closure to boost performance. + hookErrorHandler = ctx && ctx.onerror; + hookErrorHandler && hookErrorHandler(err); + preventDefault(event); + reject(err); + return false; + }); +} +function preventDefault(event) { + if (event.stopPropagation) + event.stopPropagation(); + if (event.preventDefault) + event.preventDefault(); +} +function awaitIterator(iterator) { + var callNext = function (result) { return iterator.next(result); }, doThrow = function (error) { return iterator.throw(error); }, onSuccess = step(callNext), onError = step(doThrow); + function step(getNext) { + return function (val) { + var next = getNext(val), value = next.value; + return next.done ? value : + (!value || typeof value.then !== 'function' ? + isArray(value) ? Promise.all(value).then(onSuccess, onError) : onSuccess(value) : + value.then(onSuccess, onError)); + }; + } + return step(callNext)(); +} +// +// IndexSpec struct +// +function IndexSpec(name, keyPath, unique, multi, auto, compound, dotted) { + /// + /// + /// + /// + /// + /// + /// + this.name = name; + this.keyPath = keyPath; + this.unique = unique; + this.multi = multi; + this.auto = auto; + this.compound = compound; + this.dotted = dotted; + var keyPathSrc = typeof keyPath === 'string' ? keyPath : keyPath && ('[' + [].join.call(keyPath, '+') + ']'); + this.src = (unique ? '&' : '') + (multi ? '*' : '') + (auto ? "++" : "") + keyPathSrc; +} +// +// TableSchema struct +// +function TableSchema(name, primKey, indexes, instanceTemplate) { + /// + /// + /// + /// + this.name = name; + this.primKey = primKey || new IndexSpec(); + this.indexes = indexes || [new IndexSpec()]; + this.instanceTemplate = instanceTemplate; + this.mappedClass = null; + this.idxByName = arrayToObject(indexes, function (index) { return [index.name, index]; }); +} +function safariMultiStoreFix(storeNames) { + return storeNames.length === 1 ? storeNames[0] : storeNames; +} +function getNativeGetDatabaseNamesFn(indexedDB) { + var fn = indexedDB && (indexedDB.getDatabaseNames || indexedDB.webkitGetDatabaseNames); + return fn && fn.bind(indexedDB); +} +// Export Error classes +props(Dexie, fullNameExceptions); // Dexie.XXXError = class XXXError {...}; +// +// Static methods and properties +// +props(Dexie, { + // + // Static delete() method. + // + delete: function (databaseName) { + var db = new Dexie(databaseName), promise = db.delete(); + promise.onblocked = function (fn) { + db.on("blocked", fn); + return this; + }; + return promise; + }, + // + // Static exists() method. + // + exists: function (name) { + return new Dexie(name).open().then(function (db) { + db.close(); + return true; + }).catch(Dexie.NoSuchDatabaseError, function () { return false; }); + }, + // + // Static method for retrieving a list of all existing databases at current host. + // + getDatabaseNames: function (cb) { + var getDatabaseNames = getNativeGetDatabaseNamesFn(Dexie.dependencies.indexedDB); + return getDatabaseNames ? new Promise(function (resolve, reject) { + var req = getDatabaseNames(); + req.onsuccess = function (event) { + resolve(slice(event.target.result, 0)); // Converst DOMStringList to Array + }; + req.onerror = eventRejectHandler(reject); + }).then(cb) : dbNamesDB.dbnames.toCollection().primaryKeys(cb); + }, + defineClass: function () { + // Default constructor able to copy given properties into this object. + function Class(properties) { + /// Properties to initialize object with. + /// + if (properties) + extend(this, properties); + } + return Class; + }, + applyStructure: applyStructure, + ignoreTransaction: function (scopeFunc) { + // In case caller is within a transaction but needs to create a separate transaction. + // Example of usage: + // + // Let's say we have a logger function in our app. Other application-logic should be unaware of the + // logger function and not need to include the 'logentries' table in all transaction it performs. + // The logging should always be done in a separate transaction and not be dependant on the current + // running transaction context. Then you could use Dexie.ignoreTransaction() to run code that starts a new transaction. + // + // Dexie.ignoreTransaction(function() { + // db.logentries.add(newLogEntry); + // }); + // + // Unless using Dexie.ignoreTransaction(), the above example would try to reuse the current transaction + // in current Promise-scope. + // + // An alternative to Dexie.ignoreTransaction() would be setImmediate() or setTimeout(). The reason we still provide an + // API for this because + // 1) The intention of writing the statement could be unclear if using setImmediate() or setTimeout(). + // 2) setTimeout() would wait unnescessary until firing. This is however not the case with setImmediate(). + // 3) setImmediate() is not supported in the ES standard. + // 4) You might want to keep other PSD state that was set in a parent PSD, such as PSD.letThrough. + return PSD.trans ? + usePSD(PSD.transless, scopeFunc) : // Use the closest parent that was non-transactional. + scopeFunc(); // No need to change scope because there is no ongoing transaction. + }, + vip: function (fn) { + // To be used by subscribers to the on('ready') event. + // This will let caller through to access DB even when it is blocked while the db.ready() subscribers are firing. + // This would have worked automatically if we were certain that the Provider was using Dexie.Promise for all asyncronic operations. The promise PSD + // from the provider.connect() call would then be derived all the way to when provider would call localDatabase.applyChanges(). But since + // the provider more likely is using non-promise async APIs or other thenable implementations, we cannot assume that. + // Note that this method is only useful for on('ready') subscribers that is returning a Promise from the event. If not using vip() + // the database could deadlock since it wont open until the returned Promise is resolved, and any non-VIPed operation started by + // the caller will not resolve until database is opened. + return newScope(function () { + PSD.letThrough = true; // Make sure we are let through if still blocking db due to onready is firing. + return fn(); + }); + }, + async: function (generatorFn) { + return function () { + try { + var rv = awaitIterator(generatorFn.apply(this, arguments)); + if (!rv || typeof rv.then !== 'function') + return Promise.resolve(rv); + return rv; + } + catch (e) { + return rejection(e); + } + }; + }, + spawn: function (generatorFn, args, thiz) { + try { + var rv = awaitIterator(generatorFn.apply(thiz, args || [])); + if (!rv || typeof rv.then !== 'function') + return Promise.resolve(rv); + return rv; + } + catch (e) { + return rejection(e); + } + }, + // Dexie.currentTransaction property + currentTransaction: { + get: function () { return PSD.trans || null; } + }, + waitFor: function (promiseOrFunction, optionalTimeout) { + // If a function is provided, invoke it and pass the returning value to Transaction.waitFor() + var promise = Promise.resolve(typeof promiseOrFunction === 'function' ? Dexie.ignoreTransaction(promiseOrFunction) : promiseOrFunction) + .timeout(optionalTimeout || 60000); // Default the timeout to one minute. Caller may specify Infinity if required. + // Run given promise on current transaction. If no current transaction, just return a Dexie promise based + // on given value. + return PSD.trans ? PSD.trans.waitFor(promise) : promise; + }, + // Export our Promise implementation since it can be handy as a standalone Promise implementation + Promise: Promise, + // Dexie.debug proptery: + // Dexie.debug = false + // Dexie.debug = true + // Dexie.debug = "dexie" - don't hide dexie's stack frames. + debug: { + get: function () { return debug; }, + set: function (value) { + setDebug(value, value === 'dexie' ? function () { return true; } : dexieStackFrameFilter); + } + }, + // Export our derive/extend/override methodology + derive: derive, + extend: extend, + props: props, + override: override, + // Export our Events() function - can be handy as a toolkit + Events: Events, + // Utilities + getByKeyPath: getByKeyPath, + setByKeyPath: setByKeyPath, + delByKeyPath: delByKeyPath, + shallowClone: shallowClone, + deepClone: deepClone, + getObjectDiff: getObjectDiff, + asap: asap, + maxKey: maxKey, + minKey: minKey, + // Addon registry + addons: [], + // Global DB connection list + connections: connections, + MultiModifyError: exceptions.Modify, + errnames: errnames, + // Export other static classes + IndexSpec: IndexSpec, + TableSchema: TableSchema, + // + // Dependencies + // + // These will automatically work in browsers with indexedDB support, or where an indexedDB polyfill has been included. + // + // In node.js, however, these properties must be set "manually" before instansiating a new Dexie(). + // For node.js, you need to require indexeddb-js or similar and then set these deps. + // + dependencies: (function () { + try { + return { + // Required: + indexedDB: _global.indexedDB || _global.mozIndexedDB || _global.webkitIndexedDB || _global.msIndexedDB, + IDBKeyRange: _global.IDBKeyRange || _global.webkitIDBKeyRange + }; + } + catch (e) { + return { + indexedDB: null, + IDBKeyRange: null + }; + } + })(), + // API Version Number: Type Number, make sure to always set a version number that can be comparable correctly. Example: 0.9, 0.91, 0.92, 1.0, 1.01, 1.1, 1.2, 1.21, etc. + semVer: DEXIE_VERSION, + version: DEXIE_VERSION.split('.') + .map(function (n) { return parseInt(n); }) + .reduce(function (p, c, i) { return p + (c / Math.pow(10, i * 2)); }), + // https://github.com/dfahlander/Dexie.js/issues/186 + // typescript compiler tsc in mode ts-->es5 & commonJS, will expect require() to return + // x.default. Workaround: Set Dexie.default = Dexie. + default: Dexie, + // Make it possible to import {Dexie} (non-default import) + // Reason 1: May switch to that in future. + // Reason 2: We declare it both default and named exported in d.ts to make it possible + // to let addons extend the Dexie interface with Typescript 2.1 (works only when explicitely + // exporting the symbol, not just default exporting) + Dexie: Dexie +}); +// Map DOMErrors and DOMExceptions to corresponding Dexie errors. May change in Dexie v2.0. +Promise.rejectionMapper = mapError; +// Initialize dbNamesDB (won't ever be opened on chromium browsers') +dbNamesDB = new Dexie('__dbnames'); +dbNamesDB.version(1).stores({ dbnames: 'name' }); +(function () { + // Migrate from Dexie 1.x database names stored in localStorage: + var DBNAMES = 'Dexie.DatabaseNames'; + try { + if (typeof localStorage !== undefined && _global.document !== undefined) { + // Have localStorage and is not executing in a worker. Lets migrate from Dexie 1.x. + JSON.parse(localStorage.getItem(DBNAMES) || "[]") + .forEach(function (name) { return dbNamesDB.dbnames.put({ name: name }).catch(nop); }); + localStorage.removeItem(DBNAMES); + } + } + catch (_e) { } +})(); + +return Dexie; + +}))); +//# sourceMappingURL=dexie.js.map diff --git a/loader.js b/loader.js new file mode 100644 index 0000000..52802ed --- /dev/null +++ b/loader.js @@ -0,0 +1,40 @@ +import * as dicomViewer from "./dicomViewer.js" + + +$(document).ready(function () { + + loadDicomViewer(); +}); + +function loadDicomViewer(images_to_load) { + console.log("loadDicomViewer", images_to_load); + let single_dicom = document.getElementById("dicom-viewer"); + if (single_dicom) { + + let images = single_dicom.dataset.images; + + if (images_to_load != undefined) { + images = images_to_load; + console.log("i1", images) + } else if (images.indexOf(",") > 0) { + images = images.split(","); + } + + console.log(images); + + let annotations = single_dicom.dataset.annotations; + if (annotations != undefined && annotations.indexOf(",") > 0) { + annotations = annotations; + } + let load_as_stack; + if (images.length > 5) { + load_as_stack = true; + } else { + load_as_stack = false; + } + + if (images) { + dicomViewer.loadCornerstone($(single_dicom), null, images, annotations, load_as_stack); + } + } +} \ No newline at end of file diff --git a/test_images/IMG1.dcm b/test_images/IMG1.dcm new file mode 100644 index 0000000000000000000000000000000000000000..5485090fad25441194139aff938ce8cae6e12a00 GIT binary patch literal 526126 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

$2`o>V9QZcH;lZ`;|Az#-07^?ZL6MFnV6r9~PiJ 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 L_!<80arov7z!2Xu literal 0 HcmV?d00001 diff --git a/test_images/IMG10.dcm b/test_images/IMG10.dcm new file mode 100644 index 0000000000000000000000000000000000000000..8e7a072ea12dd6d9675a8b4c7fc04c4a29076a44 GIT binary patch literal 526122 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

~lyt90{Vq5(ysP-?_3b6%1w{3qS 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

-de}*S?2)s0;fg`dk3FFySjYgNZs@+pQGB~ z^J~3T9ei-SsyxG=iS56r?4OB3{%Gm{G4(jWW0DM!I)Q$m>OhAVbIYctlbQ}|TA^ut z)uDPw{X$nP7nKxPs{D(p%-x-TqMVFL@&s(45etijt2=Ma8oUwRM-MXM(cZQL(BA&u zdjHpwfcHoWV-4A0j9K%8clHe|0o0+S-36Kj&0?!3N*V~!_)AmCc=l1&9E(zCaW?-Ko@jE0VPsJ8K2uHfvSLj$Dk`vBP z9u$m+xt6`tV-@e8EN|=)lDK`#%~Yd#H&yj|O`3n}>hx-I^>X!MHNM)UdZFB|d|2pj zmf!y(UG>NE@K2ZL?-JSl=W4FsW%^}rQ6%tn)%jr_@Sxns6Tv2&JCl_zzOXoXfkEI7mTZN7x z_F&ml2S(9=Mn9~;y4x0U@cjp$e!w%D-S{_;K$n7l9|dUv8oiCJ0^9%C>qaW`c$btN zT&h|ORzDs=<^-%WxdJ#s@J#rV zwLcM2&~57;CS(u4@sDJnsv`Z?z`wU@qbJ!nJvEK8$5f;B1o8f@g#5wf@N!)Fe%Vfa z{H_!7zpVbEz8>wWJIhw(h~mq9?R$BtxA1&4 zyFLHNg2q0c?@#^!48Rh=>zql@ORJoq_*mx#9LFBIEr{Zaqf)2F)b0pB1HOg%>+mi<>f@DB$*p9HywLCzN!m>f0{QyQA z7B`jyShWscPP)HHQ~fQfe1K)@3+$iVowckZ_j@RSyUIK%Vlq8Pv(~utCo9| zhnGi}XP38>A1llEr0SvSTh(j(QT)F}b-sME!-}W#Rr9^F8QL#bPVX#n{cD8#3+45@ zOj3Q4dO<#|sNWCbdsifdX3t!&8oz&*M`)OI|DWV@pD)jl=lYUIYWv)tI;wry#}|Bh zj@VP%%WU7MHm|qV_ZssB-rMJobg&FDNAR5A4K+Ld4Dr&}6!$+^=f*x>OXD@jk1f>! z;InAI8Rh#6+q0XsH4K%$zJuN`S<9mnVdrv*_|n_*D1O? zIw)RKn*S>;ugW64NxGjn;21>&ZWeodMw%j5vIT6>BNw>3fb`&bWMAG}8iWX+(eL{vif8mA19?99_sNptd!7;gKRAN* ze|y5S$LyngvbuKP~ zsLIbyy3bF9^t*)l%Y^<5WdV#9qq|piUp|oC|Ft}Vt&kT zfMSg|DK`DAq|uf_KBJn5mCw*cI_oWU|2QETCH${13Gmxt`Tze{(m7sC6#x&Y+yAcr zji(PD-fqFuL@Tp2o+#Ki`gt-e{0`(vu^oG3*Egbw&JZAvkQ%_umcshS-l8YSX7c&b zdo;}3-aztT2jzF)C>tQh`ipLj2g_2NE1&RF@)k|dsJTjiNPt_EBlL{e!IH}M-$6O2 z%a(gry_znS9k5l?ylQmSrFyA6S#twA$tP8ocNHy)z4A-44}sZ0Xz!;{qOu6?;nl@e)0A%A^x8W|G79o zRhIz)|1f}12N?VY{*Ol>_yp1PEFd0LfS7|HD5|OK0B7DD+Bw+@~QI6a;d71bpM0W{R=hyQr)Mn zK8L8A_m}z3`3tIw`AE8>WZb99_ouJ#C5rf+FZ_>`N9RuEcE2O^e=85bCdt_N>uB%j zN7>tFO5YwSi|{>li}|_spgi!KX%xZS9q$9H4a7FIKHlnv1o(B#|JOEvnE+bN{s4}K zM*({xZ~~(HgJg3&r5>MmNEUSz_h&}SdV0rknJ=`v<|3^c%Y%_FquL*x{-42r+j*-+ zmn!-{ST@ZjLb6%7@otT88z1!Bj`H(C=DM06Y@V*ZUG+5B#xkI7T?UZj2kyhnfpv6z z>N9rN|Bl*&?x0&}*+lV^&>xT-&i=BsF4P>Wk2I(HqNsB`KfY9%0ADFrWTte(b&3So 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

XpS{2|o)jekYz7IEmKloF6 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 @5alTOV|7ZL4Ofi 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG12.dcm b/test_images/IMG12.dcm new file mode 100644 index 0000000000000000000000000000000000000000..622633e14b750b8c060c6223ed34354a4f6e6073 GIT binary patch literal 526122 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

5r@@_$Ciu~E+! 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 K=l{DS@P7ejT#)hr literal 0 HcmV?d00001 diff --git a/test_images/IMG13.dcm b/test_images/IMG13.dcm new file mode 100644 index 0000000000000000000000000000000000000000..3953f81a1692cf8f3be442d1c4e41fe356fa7722 GIT binary patch literal 526122 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%0Ad7)a~cu@ZO?7YAH0Q(Z5YDj#t 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

9Q*%j5CM)BkJ!Sp4$_%X~I0 zoj~eVFZ>_;^9@$nCWEMO{sI2MIle<9{-B>#gvQ9SLVDntZlyI9-kpScJidrYS5EwVa?stO$C;`y_dxt|D z5jjGyaJq?-SwQ{pMT!6aIxCRhm0o1)Rg>Er2milF2GFy?(@I%;?UL@!>G=PZ`r||W zp-1{##|LZ1AF)4XJiLylEBcEzl^KIEHng~UfPIwma#(GDXE3^q`M@6PG+z6T_OO@* zk+4xTwA{K1f3*h&NGn<&j~|`@;$Y}rENEkN;#%vX@EAPU&T6z>(WT6FwJr!S%NP#M zciH$J_PCj@MeeDy;o#;PV24x7Zw?KTj5D#fXY?J}^~BcF4h ziuCjqaSQOzRm3&Kb!UA0M>qH(b7Q`F>8=2pF`Sks%|IPmyWC4PI&~JQjSakO4jpUJg zm~p&P&d0jklj5}?W^dHaEM4k#=mc<1B*3ij0{WLt4EkApY)Zoy=sik=L){PRxn}Us zk)}u2?->a~C-eh@dOC`O{=Fg-&PykPm*NAsGnrFsRFm2phX21B{67=?k4UEP&E4aA z7x(Y3w;B3leSLpoZ=c{F7DwbB%~kZee3UuptUz0q`CYQSl^Hy3oVgEYZB7D~KUTE1$lMvTx}Nc4;fP_*={3u;i~WyefK4C`7!h$r zZ2-NI>i=@T;bHI?j*0J*^O}b+@CxGn#7_$T#lDgND*<_7q=4T@0q$PO0$?0GOYUBI zramQ}b$OR7(yj;ZY)T|$0e|}`ztR740_*^v|MHn{<^tgTR}!p~`S+cy1@h6MH|qQQ zNA)fWBb^k>VD9c~O%2d3iBtbFYk+*aGorI)`!mV^yDqwNYJ>lYL3+UwXh8RC|ATz9 zcZ&X30%!-U7;Q|KuT_KW1zYn(-^2D<`E#B|XnrKGSIVcz5OM;r7(l;VL;=O`>a*ORI`nlFOll%Wv>+9(Quxd4`Jt><1 zm3aT245MB#eb>I1K1_G^?@txRgd2(R@W(e^O zW~&+i3F0hPZm1j82xV@GS5Tq`0{vvsl^h!pruT|jtQP>zjSpL|zaGCbi^YGjUhv0p zWJabJ-fVXx46gMyTofH0(Z~%dd>aQ zcL@XFeBj1Vkx{(^t?KiQ1i2ZjM$m`@wQ?&nWB|L82AuAeU@_y3vx_v;ZuH`IIg7fSXYS-#r4vU=q>^H4ThkbtIC zdojo50NM$nUwx(gP;xMroZbI9x7b_TfO#nTv99TUA=AayFCKs6fXrgzZP@$B3bSsR zyUu0f5zJHbmh|&80#GgjjlPu_n4{y07!T-WOh|=-XXO*9hBL5Yh!J(LG=IKlT`bW$ zP*gA_6DiC?#v#iXU=Gg(%%5X3K0e_J=0v~smW)ZcWh}t>s96DcLEt0GNTj9_!GRQz zLFqNrXKGF~l1OW=u%aS;xGQW*q2dkVsWLB^At1Won;1V9fc%dPaF9;cA5~*+SOKG= z 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�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%0As-%0^J24 zG$uT@I09tYt8F`$s5cB1EmdgrmeTWJJF@+3%Lf7(tDwV?fBWbi|Hta*C|kv03lJ}` zBxBTbb+Bjzn+1c!U<&qdv5)sO9=WDv2}}TqV{U==w-*vjfhSsK2ElL0mtY^Qs^q>F z`@$U8JY;n3Mxkkt(I*$Z^2T)fZyLp0S0A2vE?l(aCyo*o< zVy%hS6#n~2HgFtu@nFi+#kYSb*)UdKvX?c_=3aT*))4-e*D)>I9~}*5(bkp$VFj4+ zlljYEFaUc1*~c;0#mk*NVws zBptqLazt{2e1Kmoo9{p&d?$Gd$O1VJItWVj;>7_}gc z@e4leEd%?Y5?SJmS^VPo5uEwL@#G3&MH`ovLH2ta34R~md+ym%jXOqeaRp)yAeHkN zjo^mQ#;LJy{BtGCnbsANCUFK@Z-gTmIGg>B9Nm&lK0mJ|O zzIXl@y&DgOU@afj9bTQ>h#@&Cob|1FxW@kU`qgA5kA2{x^;Za1hTi^G9bKy{BQhw7P9LL zGe3c<05FZ!#r~gZETa|rX6C=n?~#SxJ9}Swf7dAnc&6%jebLxCxiUFa>!4j&^Z%Xd zEMVi`{t*2C(7D%3Vp@58 zHMnihwjpgNSHsFb6u%b!dkFdX|JdxQ@jTejK4$Bd1-9*sb|c*k0A^rofOjxJ_F=OW zaQ-SS-$P4&6vH=NVRB~+aB!6S}&zZTl`G#8$ zvq7SIjgLkeF-U~l@(C@w4`}L!`2i~3bTHYDHj2|Qb*e45sPxc41{?Ew#>3o^yRpqPI zu5J6Z^=vz=>QUZN{9NO&sTBYpkpJ&8%~yX-eD#RzjC9ZBXVUV_)P)03O`n<SR*0o4F{2v6(4H|EH9zN!3YuQr}Yo=F!d({P#WJ>}PRQbpkJ z3+ZM6NC40Mu@(Q_C_q^Dkp<*cz>oy?5rTjIzUv1JsnS7b4jF()U>&iKQH_<7qta&n zaXz9LC@kKTjZJ$cw`eZlN%8}}+L)A_n;ang|4eZ~);yvbNXz;s`cM3SwrqnVBqJVf z{H;;wvA-wp!PQy==*VPYI!94eX8)AJ`OBL9w{>|^H9*X(**36xqj^$sp`J-k;U4_+ zg#7ftzsI~SLnD9@YD8P#^PUZU;2dzqgfjpv0T|1+85q$mKQ?$k-B1>uoE+vcjmM-5?1GXO-+9w&WdVs6`2mfe)qZ|}_yzl)L zd&LpV1b{u*g20;Kcs^nOqyO;-F!ykC+4%RQ6Z3V78O7w{qx_TX=yVIsdOl6j{F9W) zHy}AK*){oG8322U<1-783}B?7<9}O78cb1U&;hdkuTb95r;RqPn)p}c{#?`eQ{&L& z0OkKZtO&sSS(|2Fzn*_p%v0v|hHZn|{#3nFp4c3t+G~S^eX}z^H(PTa_dMa2C1Cu+ z`WfGh3i}Hg!|UpaM~)Xf&^`plk!4132#+>29ynywGk%@9WB;}5`{uH01OLv5G3q(a z{<;<~w-yJhAeqG{6~!_{Nz3!iJv!F9AM5j^Ga*TW8Z=ql{mCM()(v48}#s z0)KLJ-#$Rg46~ll)n4tB%q6mQU?ceG9G#$ltpC9{s0^KqOu*aOl6PorI2NqJZQ~v2 zhd+UFGktsg@t|_=mITH>R+afbcWdcn3BYskv*HTw4_>*B{clOYukZvs15+fDwr>7e`X3MUTZ%y6sQRA=>pYe8|NZj+Unv&ww(!4uwtG4{ zIi~jSk;5}WmH-}a<^fX+2OAiBV1ih{VA;|ggubx-VgG$4Iq>^U(7w}!8|vxqCvH42 zy(+sq?^A489F{MiEl76M3IMC>*kJ#TAAsbr`$0DRKXQJ!j*;$}K%l?(S78_UIQF;o zz&jW~*brV-ob||9S7@uogygk!x4dgHy_ixoi*@qr(mj;*c#8P^;i}@Xo??JAk`Gi3 zWKW@dj_!f=jspK=0I;seu8JC-ulas|Qp{k5WI6c@eVHeb0A^;Jr(KdmYW#1cS2FlOKb1h34amwr zRKXlCxiCQfv~`6^TjQ+3*G=ECS|<9RY8zfr75{rvRlRl>{$mbs%={w*jJZMLQv;ds|#6+8S`Fn4sf z=kkIbVtTIef#mRfbFzy(X3bP>i=t~lBc6KV0M?C01DOHN4v1VrWDtM0;EixFXuR7V z4@6rh1|Im94dnPcqY_zY)?+=&{gK_^>tdC_!;t}a>s`A8K2A@8d#(by{lB%c`w$HJ z-po~yE!abrj?A61uD91Cynw+9_>5dI3&LA!nd2*mJPvQD<(lu!t>V5I525vW-eB5! z!5|#{ZXX~c!P?*J{!#$|3D7CuDIZjv(R`)6xca7Az3pb{poz`zY5j>c)UqY2{Bf}) z0Qi3;8>{+1-%Iw8ZioN3YUfc2iu9n1Cf)*O+EE>A zntbY~C97r!<~@YAP2_dlCHq}+YJDWuzv~B+Ltvyj^T!^5@C5Rm<$x`HO9<5Rsp#NowVTrnA4b@e48%Fdlp-2TUV7hzeq3Ayx(J_(|1;!B2A_y!|E#N z;2-u+4kUhmM?r`HZmZb=7bxTZ31tnZ$*R)-Z;3gatH1G@|2s_he?znXiyZuauQ{XK zyn3wqqPkXn->>{X(dR#Ny@>S0p0@dobjFJj!vA4I z*dJyYfbI{UJ)Ar=HL)u66=M|%fUah<-wH&mS+^|k&-moe3;_9Ll-Ngy6u`PbBf`1) z-;qIlg2)H2<^`UOcaVqvW!`-^4EC;!w zr8X@=wpo4~|F-wIOYC{Z3RrKyf%Cw>SN^tFnSHxx{h67?Jm4{eLb1Cv)hFK%f(mU)%@S?*$V0BV(tCwNI5Zp(HiyB#O0X}hz$(;Cla`^xc>UW zUU=ik=ItT&KS9`-BJ49?28}sI4EgS4N_JsBShn^i#c%RO*=xy#!r@wyAFTc5Je`)l zx9<0=vjM=r^}OSIMEuvR`9E?3y$|*S|NhQ#1o%Zn7F?x>OoQzkbCQ1w|J{o%v~8%h zkXOuZO#Z0Zz^rk2dgE)^2mQ4Q^2w^~H&>dT8h~5qFJ?nAD`Hz&3Rg8AZTwl0|At~3 zMe=8P|4tKo=#z9yd&#PLOZHSl{=X&pXGQ;VJz@X->Xz!RvTySvWnQ889sRTK-_{!P z-F7^ZfalH#HA;B3^^XR?vg@S1jecXE(PDkkETI4V&9tOd-gBrj~Etn z|11?;y~bJUV1-fU_!qW6XEO(|46x+!EIa&X$N(}6vASCxL08H~AL50BGg#~Le+z$> z0et3rW0U{E1@{KiK!1Z0`$9vy8CU3jXXIgr!)%ZMVAOfaj%wmRi575fa2MEvUGYrZ zrot`oA=a;`n{ z87-Cq<^e`N)*w8<-X(HOkID}%-fFHu7_)%^`-f#>`7+cI?}IH_?RfIPqr*| z1IEe|FjZc$*OEiBoAQl{&5BXQQ~5<%n%*v3VO`k|R1$XXzqLQFFah)S_FBJ%^T_@| z|F_@IRsm;VU(Y0VWkOpSSOCm4>>!W+yrhvW5F?qQt!Hsm-X*&~c}DoB-uaI-6L@UW zH+f!Y#{WkRuqm}n+p@NRkOHjvafE7pz98+tr152=O1_on|0?+dFKTp1R!P^DRrRJM zz(2E%^C$8rixpIP`NHbW>Za=Ya_#0T`Pik;$I-vA-jVCADnL9_+X2Rf^#h{-l*8-H z1mYW82xg0x1K^+W41R1|^1j9W;jqs9{kJleTjLdsn5&cX8!X+nwQKIcUy&z_SP*0h z72_9%;rM`~2#zv3%gFu)GU8XN&kTA)3tO7_T(mjPXT5KxV7yyau&0klCv!z`gMEVJ zfp4IZZJqO)>8hT|MEm1tpMjoo#IL>XrDe#ckOE=jICBE)$nzgs*8u%U)4;!(5Ax3V z=dQrE<)=VcX8Xn*+A&d+UAc{%$p^?5dIBC;+3YYu-OUH9xKR zSF?-e{yridbbhsw7&dQJHMMRud+tG}xl;AiP$n*B3g5qs+9V*ig3qRHc# zyi^O~`JO8L4-@`7O7l7s?|-CaJIiLEuJ&|oTM7Tp7@ppEu92kYW)Elv!e+&|VoCnE zY7D-sUs?Mrs)z-SLBH|uZ_Mq(E9g&-0Ic>O{SV$9DG2Uw8PLiAgkf~l2HT)E(SpVa z$y(V-dGBJXd=dkS)AM236UqQ$HNZK-|3{7CNiTgqM|1m~|Hq0TNHsGXY@1n%72Mu< zL$SXPBrpCY&hV__96wS#aOLEyWEojiZ)y8dtAE^{-&Uk$smg1A(aeh)L1jZxJtwW zk!tQ?OEp?%%^V!S-oL1r?jH2aKcs-sAKpg$16(x;{_lSAQ?y*>+{moJJ}777Tb`Od z{lNs0L-zWhE5c@M;obfuJb;b}AOVKt=jIm{P1T?IY4tnd|FmjO`H-srcT#JT{CQ=- zU8~Vbt-5Qo=hGV$2OA@9PyMbDij?F1$KOrF8|1UG8VJ?;I|_GUdo%BMpioVfZPw7E z$~Jida~kh9)=IC>9#gD+Gi_mcdj*xh&0@4Q0vx{>erpXUPv z{*C#N0QUdehrsH>tqkM!Wo?iF*h6i25m z^g8MPH?xnk_48};TZ@&&|8J^Zs*cgj>p#l}vXPz;*+1<)fZ?@;-G{zmG=Nx-Y{rSB zR?Z}0Y}%v8_+flvGpwWi&0_tlvBIy6a?ZdpMD);-_{P4i@ee*2ulA3b-{R*7S?EM# z&GN?_lM{cp7YoOh@w?r@l2#Y`LJU;{TMB9n9QvsOwfIR1a3~YWDBYa;;7*Ot8a>i` zvS;$qvb84{|D$#9-%A%H7fV+3(>c({mH@WXt-E4fmAYvZv<#bV@JI{-8NglcoQM6_@5SvUieqgG!mqB9k-Kj7|md$#R?dm zYwJqza=Z;j3;1_+@j{xCxdzTFK!P|9A5zK~#nT7+Xuq*y403Ol9AQ0xYqw%mT?6(F z+pu@uIZ2hSMy{QaWh8N4BnrHS^IJBCbZy-a_v|b29n#8`K*@8!@;Afas<0@s0pS8z z0iGRzCk3Aa_zwnR8DO-BJg|i4J9?657FoYs9ZQ9FTld2dVE|Zy=zEVKBcHiHmIvMC zfqF21y%qrdU7gbYcC& z|MBSI%Ln~l5o3~=L0@T8=l+?0ud8eT5)Yxz&aM#ASjiKppvzPL*HU2j!_R81H zu2r;sruJYyU?<@d>|>>Ku2v)fZoynX<37-jpO5#p|06PJ#D@gnlh0}95B^z?WFyJ0 zlQipZw^Z4=b&IAJLyN2O?dA7)U)ZJQ-%*;QkR+At|4Stc7V5kG73qWz*AN8`?JQ1+Viu@J)&IDs znpuq~?@|o3ztG>K-eCWprA@x3^IaU7X4Ip>ow38X0k`<>olD0jYZ87zLYU=)QEOrA z7>{_)#^~ZaoZtGt(gY+Qm&^9oR4oeW0UxG!(qFWMiSpVe~ASA%O1 z*Tk0*n%~^PcVn4j8Dr+;R`?rVm$vX{{(+AHA0X1q@jo;_|BQFOb41W{|G_^I51yIX z9EgukNH}_lD}`k9ojLkv_V2r;Wndoc2miPJ$0q=X1owVVeTkmR{&`gq=pD88$C0W) z^T(=x^=xxWv5&6wt#Z_FR_@RBs{H$byw$sAbCvzGNM3v@^{_ezbNKN9;PIk%E>S=% zd#d(!s6FrI+IZW#>Il}+j@1I00XSZ`sgm*OQ`zhJc*WW#%iF$R-Zi^h(YBqn_Ym=M z<`9Eh@MVg+enb97u~j)v_Ww227FGZ9 zw&F73zq_ih_ml(({3Fwie&^aSQmswxm-6_CSL@Z7PhyQ`{m|n1ASm>THKRSwXk=?; zcyi$1esWl>Gi0z<@!&IRX^TCMt}?;+qpdBS2rBHS1~bNr^)bhKtUDqPUYsLGT#zaQ z`0b2@z*k5XORm5rRtOvc9GH1!IJV_82gru^pE+ECA^|AT)J?(bWBu{T_zwc!U~{{LXfvF#P#AC?@RzAlM0qL^50F8zOVen9pQ z)%-h6`F{tB@h=vdGv)LAO0wc)+4&3gon-(lU>A7=_EYr#M9GQwWGVbl@(=C*it+$& z(`>*KR0;T?aHzGN4e_^NYpga&&c8b#^sGwf}D{E)oClS>xXx+NkDYyju^3 zUbWUXe$jG91LMbeV~hvm(K~emHt<9_!hv&f%e^m-BSI z5}oZ6uII>P=t=7&Fvw)sKB3#_O!8{-^=%bxEV+lY{ za2>E?1`np!(wUHHpbsQEml^LPvk>gVKuU296>R zd4Q{Ae^(akY~h&bpYgx3v^cZ*z(1b7X~I8RJ8XYu+k?^dg#Z51ugv&m&i^Ko0HcKP zLlqC(Eqy;*BDTG0F`-zqn47PW-IP2ceL6+^^cOD4$_eIf{DX94fYFaFk4+!;fFl6l zzxP+{58{1bfqqN#8~>!Wzt5I+ zabIJ1%>bC4J+6uh&&aQSk?Q|!RZdj>&qdYR)#~LhH1n#zo=h+Ok^6(C2J>e$gOG_%enB&1@{93hfkI~7*eW-R@ciTOM8p-* z-}G0=BQle{9yjO*dCt2*;yGpkR@mr8dXtvhGFP6#y+5s1dnbdv~ah3LRCY}zb`vCA5;G6m(ozzXyv~v<^6jn`%E#w*V8){{hK76+)wD= zsMh|hoJGcu^ZChz8>?UJ`!n*vDERN9qc*Aco37V!I*t{07BzY%ho)a-ALe6({&B^s z$~&yG%T!~G8iONsOt+=@HwOqW07wqqZw*hTF;zeOXY>dDkra3if;}KT;1Z7ill`}W z*#9QN|BjmF*Cm-PkHnv(|0l^N*;tiO7iER;f10@d!PO|FC~zw8(A7yEVCW44=HU*YTDBd;{NQl%kn=>O6POVmSh* zjIqVIGV{dhN8j>4*?;)|Jz5?6LpPHn19OI-FQdJz56!#X5?(EZ7<)z$qttpT=H$f) zW>2#K;(^8|R|6B4GQCk(T4n^!42bmXfpqnYW5s3l1nfx`1U0~2`QLs&EPk+$KLtAq8N{Fc zsk8%B`&rPZmM_R=>wB(;zX#jQ{#|o9%ec_|M!w}N^4>C;eq$712jBzXU6-0;4#?-{ z>ld?{hiUDZ1FLtcr>e_Uf8tu*-4gl!7OVE>wORr2Z;Di%nq8J2o?I$Sf`6~x|y@5ztLmPtPq{ufBI?ix3Iz)WxWl4Z9veWa&HUDon z<^Swf{i9r_yhZ*-?El_11Bi%i*lgGWfqS@Ku)XjDgL|HO_=NZb_Sw@u1Z!r-t-VT& zUi%O{`WRj2psv?p@3`?#%nHvrnZMYv_L-wCIcxam7=30X#-P~-qnHsJ@`rKDDEDXc zmNg_#oD=B!AiPIQyEYccaxOsVe_G52TLD3MJm5R#AVz_&XgRU6&W8-ci_yyT^Eqre zxb3zY>_?ynK{V|rwjUlk-wXG^@!VUy!@s&pEg?a;vwa-*H~MWy!Eo3tgRIltN~7QB zv*hEhEY-LMwwj|U^mE|f?2h*P?qU7-{lPoqf#=U`(8&IWVfI#y{{xlhvX}V(_p1e} z|MjctP}QIKiTdeTMgA@p{%_8nmi7NZHYeL&-oF#X$*Jvy1>p7j90MeipA`WnNIndb zu6N!(h;^iHZE10$Ym;OnP%)qE-$^>+#Kx%PtaQ2jpZTU@+Y^fAi(&aY>9NU8@}*6Y zg#iAIco@59?ZMjl1hOOYkJsP$|NeLI@4R33gY&~4{6CTa-yhY#U;)%69VzKGTN-`M zWV7^+?D2efoslr4xFLHzdK4^>&2b zovKWN_jR`Qk~Dcu^MG$v#?T3>B)EREcG^KR0Nzvt;M42~)&Cw<&Z#ca3LxK>YpVC} zRONL%GkE{NKbW`2#!nMj&u2DE0G=#YR7kr2CXRgm(gIF_m-dWC}IkEneIvS4`1MecSJaYriV;M!?crGI? z_dUgxjDFf|$>mo|K5~D#A6P=vI{X~IRI<;jglS*$zj)TBqWiw57t0w3;*Q* zZ!Yw2CmAqV_$L?m6jjq$oUWxRc$1`UH!GGc`sL55#?W=b|1?<%1LZe}>VIhakOAO0 z?0p!&qkzEx9Q}s_w6gw#{re2${007z0$3*-t99E6(W@t;(i^kiDI*baQyC)xj` zX>zVmeyIEsd#KfSDUSEJviVOD`oaGRk^{#r=xRXf8&!^*y5u4_DX#bLJ~Ru*wJ)b3B=9F2C(lTu3`T?oRl$V9%iEZ{1(Z}4a~#l8O}uZwGLtX}sMnikaBBgqvw6XyWQ*0o@fU;L}zv!69H zQownJ^eOk?*-gRr9qX?}K;46|ffoN?L1(oc;W!89^>Z?#p!a;==2-l0iDOpa*I-sL z0wVL*8lY1>3Oec)seo14V=4bXNcw;G=7Ms~>Ui1zdsj)hOEEcrOSr#6-oL9=sp?&M z|8C8eq|YekHBT(rD{^B643W+x1Bk3XeE;L5;aLNey8rgC+iwT=M*k1hzB9$KXX^;& z%1ss9-X^&v?Uq-<{}z$}%M{)7N7H?it92#K!(VDkxcYy~hldXL+``qx^;`IN?tgp! zPZc2S`)Ca^g!jfjp8t;8i2e7k?f<#*=&zg%PA|_M(2S(<#aQA0zWlsw1IfOhi>(|X z{O=??|7zLuPs$EBLnuF5o29_9!Z)974IC@Jf3G|RYbL9!THw<){*P4_!558ZlXsN! zxFma9GGMso8Qj%eN#6gxscu)ohR%1 z0LXo`9w;+E2q}T4v-SmT=8^4fPFv(?Q&;YDM9vX1;#g?07`4t^C2j>fXYQ}j7$Y)x zslNvw)>UXzx7=KWaUH*yOFIf--y_$fG6%juJoMJbK9{e=S+KTUnb-K|nw-l_D6IC# zX9WMQxwDe?K~f^2Y!C52*RVH_KC-=!R5RK^AX|G$L~nD4mUHwPttZZqNZNR2VM_vV zM`-@YbE2ZM=Ndce$JJYSx6F*I(MsCl7SnJ1wKmIkbcM%5j1???HtPoGmV$ru|Gu*S zr#1Ic2I>X!{*9>aX?8Ap|u zSr2HEJbJ9yiN*$T@rUMJueSdOX^(B?W8YrKP%UsvRn*%lc`zN2FC*PQNftn%Y8!W_ zyCjQc|8FA+fiI!ce|QAC+bqDDh4%Evt8)R(0mA;b-;b7YIZ@81)O=$$RRvr6b;k_iiI zIe-K>R`LLuaGG-dUsi_0>aqa-T-*Q0O1`|-xFvZwy+HVXM>&9NDgJsy^ApX!+(Z7q zZOg&Um5Lqne!@SD9`8RW?jWhnrw#N8%$wz!{eyp`JUSk$&)VKNV{EXO_e9eLJGahf zgxlh`W@GF*3V@}HN8ULsMnB^g7Rx6zD7As`T!Uf8WsF2KQ(u`e$|$APj9bvl-k{SS zHomcDgF(|CR~|s-*h=PgdHsTZ48GvA@ai=;;QzJ@g6mNK1TP`?$US*B6FQmml3hql z0hDu2+76D*189>GZK((su$G2>msceDis`thGy65s&{ zcEkO}nUFJ%NeXd%z+N=4Fdiw$S{;!np?{4|1K3DGVylh@NH91RoA0*^=7hZbH12AG~Mh|me znDw`bECZ_kdLA9wwMHGQ{&thh7^LH=j0^s$6f{{l+9!D|-AMQ!FSb3d_(sq9+H~9G zQsw{5kc1etl>ghu@3zZUn8Twvru;GZKRV-U$}XZBbRrKM9Y43n&m~zftUeN%pNW)w;|2|3Pw?_&#g$b{1Z!mOosWXXX!Cf2^B1LY$zteuYz;VLNA+ zl|Mk(pc-RylqE+Fz<5~<7c>q_UQ9O@{>KRYn-rhOJ9B|1B3^HSRr_~9T0NF5diZ4iT{n%oop`zf7MtiJv3XKcN6;` zt^B_~=C^B3;u^_ik_|@+|JXYFX)V87Wd)qA{n7r1$TI-`kpS2Ncmj{o>&f!>{Xw$; zztmj7`{XY?QF7szjh&MN)7_O(^|~T}f6va$zb$@N9#-T3i1Me+y^9}f_O+w`cyHly zJV*Ed9zeYLW^z1F7%a%=>4&a2`$htw6C9zk-RzMPb|qRDeG3C%#(qC75lke;0pZF0wRH-EkUd6j<`Oc zr3pvbe_=Zv{{_0=vV^m8O?x-OmqEMj!|)15NC41oj|$R)qro(<{&TdE$_AER#y`i= zYRe$5g>;3(6FbF+$se9lq~>>L8=(L3YD6tXR}R7=Pt%!4c@@~3WzJl;SM)kkmQ?<>L(~-$fg+%=SeQRlgECI)XVBVAY>)e8PB^F>? zpoM;F0KgTD|F8o%lh4NdANYTlx;nvR`TrIwvR|k||0SybH&$&LRy?2oCYzM5n_Mn5 zFB131)45~q$zQyb|1T8o7cSiv)bIWI2%(*o1D{a5@Fn5@V&Q+0>Hv&N#;FF_~80Ky00`5J-$))=sUXB1lUoBMhczy?D9 zfom|yULL3Z1cHc~^V*UC*ve7=!`1PqQ3+!O`=CE?WHiP4HRk4FLxb!VK0pmu1}`9o zPad<@TxczLi?Ig-K=Pm~c{O72*%NQz2;UnmM`o~rW8=Z^xPqk-+8-pAIvX37OH>~A zakiGsk7$E=0qvy4v<>{zLtNc*iXQZR@Cw)Q+GO}o@nIrGT?xQi-Z4||#CDVCQ4qP{ z3D6ERFv|em^DUe2lDpko^SdQ=wpNah8 z{p&1?roZlBvb>WEG+XDN$*$S?c^BCv<0O+_mp5c)+BvyO`hSsT_RLhAaE3JgS(*WK zfxffH55yn7H2ddpy(1rpD8TVz{kJMs@TBGg5ieY*&+8^Dr$5Z@751Od);r&}Sf<=Y z89?1t|Ko4X=M@1Mr{@$ifRFLTmnCA)|Q~i zehYjXwp_s1szQl90JfnmamY9@2DyLi7-PdeGh@j7J-9Tpi|mg>*N=6R=wIHm?ibbz_Jt5UB zAMF?9>B0YLOZawq-hTQ#P0MzV0Y_P|6`dL4NFchz=!f|a&^+@U^1tLa7WX!vQT5Ni zYVGM+%_qe6?v(bwTr>ZEulQ7wzmbg+|LvQcArIe>8j;k>>89AmM%DMfe|}yFmXRu8IVo zB(t)!@(mUJn;^OLZvINPOWHfRMiKpEH3Mk2_M0p&bdvIa&R16OaW&UpAnYHk`2h#j zmH;_G&I3ADdo0#mf&1kxxIo7ruH(LFypVj5Ua1VAC$fjLB44(+v)NY}0Hdn=%2mo$ zn*YwXtL1c0J*}t%hWFNfzVPk9{r&u{Tg`U^|6tFI+at@Uus$<30{_Sc>m29NS@)As zgVsc6w$R_ge`qn{1L%LoyFGB=fL55}TLM@!^L2=Ncxm??gVyB;r{okJ@*++_C9V}~~bv?REU!u>4%7SO*?@h$}+3XqYSTprNzkTiN z31yvYoRI^tWj#x7mhe4G5wy#awrozmQZZcHpyGx6$!w>zYjV2qKUrt)tt;W5>rm@| zBj4u+_wag40p|k6T;TTlKUxAq@LuSCV;}90?cZ5-{^*!EAHqTB`T!fs& z(Zyf$x3m4zp~=mPRvxEb*s*3kvxM|Bg#RB4(?<%`hY0%zY6ido`u>om`X9UCXhjXq zmkn^Uc>h`2_Yi&egjNB(Rdaw}QjYbnb|yFb!b)N-L0cl>|-g#eyuz;tai|~vaX279Ly~+qO6?th1K!$V6`)^6cwL!kGYN^h5#(&@*4j6VI z62NhPync)Tdo+!I?`H|%C=wii8D`Tp_xJJQzUJxWW}5kPQnhBeQ!zCEts?)_{JmY) z|L4m6xgfhQy*_zT8gINf@<8ciG`#to_`ocdfoeiB$6aYO- zbuC!H5PAMs`)9j46W}hz!hVqLCjLKETVFBX`?Bfj50f7W|69tV&`ZbIlZY0#9!Cn` z`?ux~d?O2D`!4=%8`wUu6fpD0M*%ZIHg(kdo)4a6ypu68MiCe6Vl)8*>%@wp$O9E@-Lo5bzNKQ!vOHeLs=i!Qat+`89( z3))SK_{|xF{7)VZIk*vZhf&0On@9gs`sRmg&5c3LwaVWr|MZTkOLa-JD4O}LTJQHlSpdJ(8ns_2_y2(G znDoHpdhyYUPVOn3cb6O(RBL_E-%sCl6_4&%>uGTB=(=<4jIz+PW5xSt$_ucq z5cF{4!K7DqSiY9H{}9#Myg$D&8!un`$+G{q)YW<{)%}hmfOTX5Y~Kv6&zBVVvAh9?D1Z1o%`qIV^+g{S z{(mV3uvz}oVq&>>^^>ZjJOFK)f$^T|vVeAUf7t(>>ZfU$fHi>B_lV<_CvH?R0ztL4 zt7U=tqa}qIIV07KlcRkebQiY2@o(Q1S~S+}bv8R184QINi?NOV2T!1b2w1G_%~+&8 z;0P22SBbVVy1^Qwl`+cLw4CdxHmxAM!~EgyAlG&XOoZq?8Gl&Zv=~d;H9fIQs84M9 zi}%8t$Ja_anDsO>8Gr~ab(X|HBm%KJS^9(m$%tD8mQ7a|@}E(L#huwY$~Ahq*-Nz-`&Yj$H!Zho z4p9Xbm?%#xR`BtYM0PVL!1G`|N{r<2?-|)>B*tgpKQxLpmRW(v9OIu24s9&KuwBF6 zHEcbXy-+^{ABPQi1hXHy%rP${fGuxEDCZ0&0vB+c54{wlm{zsqgS`N-R{T}#s5QpD z*}G#6AqS|K1Lts^0(&BnPs~Yh-ZDrh=8w0MZ}}cZ;I%pM&%5GJNJa331PCt#l8YXq zC+RitZHXIx0b2$3$fJwRW!(Smc@_O?d*4hT@Q?iw-oMcQmKp9BKPAgfkk1GR-skop zF|iDTp_oM>OOdeb14Ce+*60EIeO32!4`tndtJ<@dmdjN;SCgty<;9BqJ*mk5g<=3V zYUS?_W&J;%t(UEoeqVKeCW()e`A_yA_@_EIjGkP;UizO}eXRG5bq)S42k_ma|EaIp zO|oN1jsIyv&nzL~IdSbt*=e%1Hx~Xo7dPf-s>(=Pa(ta5K>W{hiOAb=E|IlAcsKJW z57?^=fb*#Q)m{SdJw89SkRc%fI@a93yV`I4zq2s=MB}bxwQP32ymbE<;r}a*oXgW0 z;{PWpq7VM(NPfWpwioJ85WW}bTkwCd{s;T^1;7Rlkvv%>sd0+1f4cro6#nYnltJU5`a)1DdCpJ){58XXszX@!C2&I^A{$vWLih*a1i%wwNV^Re-OO zYWn03z!jWfN1M$CqMep%w3S}6rnD|M{%u90$I;$c-l2&@64)ci9mO}ao~>ntaST0f z-vsuFWe<`lWKq~3?Ah`H@{T8HNfNp~+GYtwdwII(cyoR;0!vqO6-zDmDiW0pQeyvo z<@+0zpPg@C9MIgMd`G!|2UpGN!Dip0V}6(B{QX>izf$JkH_DX0F?%%hTt% zfBkCwcNV7copq`8C!g@qMTT9=!nUW)G4^hf6eA@^z|IVz=Md$>zMIU*ev)^r^?&E$ zn*7wPW7-t{=L%y{1C%r4O>izxtLmR4|3v-q{P78n-yZwCca1Q6BW#&C{>L}?CGh@} z%{W$e{myFB?;6)BNoz`8NG6Su4ERQ)`s!5k6r}BskbiFvwT;;htn z^y#Pajz$Hgo87>zCC-5!iDA!9P#jzN!|#2g%kwj80=daL;)1sPxEo-X9zl z3BU+sl-hd+pT=YD4Lu5;*jh0^__KAJqus6s#MRI}w1aoyWpv~mtTQ45|K6K>u~uc| zGP23r$D()4&RNH_fq%3l{E}`LUO{pOkrrru+x)G)Tua3MK=yPlq5YM%Jd9mi0I+EK zmA<0=Z1gFg=yNuIZ|3AD5p3H}CiaUM1=7|M0Jenp&#cLH$&t_zh2eSdeAp}pVDgSo zp#Q_G9~_D+*@wcNn8Pp!gjQK9k@IIQ0-q%BzhAyp{!IR8@ka9&RsP*Wb5CwAM>ikI zKU3cCMcS^aWB(0VzQ<_Z{~4Fri75-T%V@B<3d#~|TvP<@}yi@J}?_6A|S{v)6nee}(tZ^z0cN1?Q`WI0=5NBJiH#347JEh53GgWXDP33e*eSSKr^- zI962vj~4zPmHz*IHX%Q#C{+b`pXy)bg=Lp=QnP2VXRS{>>yKBeHG+N53GfpS{9C)4 z3xGOr)*oh;Mi}Fjk$1qX~^uJb+mIwv!`HW@Pc5t$yriGU)Jg<6}3T7|Xtb z?S3;7XB%@3TO^ETGi6$7?HXFNr9rXm@!nwp;QPmh2i5rREs6LZUj#lu$I(~NJ0ujG zpZ)E5t@-FcUlDdZ^b6eP_Rt!OLmu38!4-Pp4j_? ziq3tQZjvX`{o}NiMVI_RtpI$7wD*xh_}-Ed+lwnq(_Ju!d5&1a9>O%ZpD#HuU%G!U zNr_$cx2N{rTi+ij$#Jw;z(O6*ZNn9j&{LXZGpHYj9f+~nRA>2{cm3C)`GB*Q`W2Ckd0%E ze|U${5Bo2K{m4ZE)keANkszs9Z3hOBFU?qH&VavLM(?aw!LYp|NIvQogQKwA;o8{L zo$7tyU)Uq;56<9I<^bW_FgigRz3O9Oqo&|No2slLPF{{sE+fGXOeDhPm=T^O-ghGnp-<{u#+Ca7q46ajx*cWA#OOmMnm`l?yeow%5o3A`5`c zo?MiF0|FDrM0IM?KL zi~z(Dac2+oIAhhGaqtULK$@}U*cR=w>~VX&7rNEa>(FelZ!&nu0S5DU{;>UNf#31o zbCIY=Y_C3XcB}y;25T1NIv!lXBB)bhHtiO=r{Er--S%_XE9UX6`N6)OgnxP#JVo^1 z8kaky@9m#s<LNubr~Gvl8gXLH-kOKgpqjj=ZyPuL8gquOH$X^WtR zbbpV`K`L1Gus0jLpV_1M0J_#$|7#Wnq2+7?BD#e`t5ev{^yGW+^O6Y zW-k9EyE?s0YhNB9WNa(Uj+FI=x$sf6vbe-D+PQK0rtRY+?5izBUo^srxaZ z#{X<-!!H}Frzd7NDA#_N@ZUjeZOzKQP`$i`LKOA?dg>ZzXs-i8_O5eyjCN-PVD)>$ z5AeUWKc8)zFlU%OkQa_lI{$~e0RIEks%?eSUp7ukUP$}r-)aSr(UJkn6vOkEmH&K? zSP2^ZK;e6yyqC;j9InjAjrIQ&#WQA$70lHyyVTn}-N9V_dE?#g;stmF;19>D%E%gN z7u8mKLx1;34ouAtDb_7#X%_a7>UU+oazL{~v4?UrVExPmA_Lf--r&ealX<8mf%R^T zM@B}=B4Er~YA~*?f!k{t@as{Df83QZvFbs$>)C)fuZ?SuAEVggm(gja0iSkU3~Ym> zb%kVG&LORkHJ;fTl8Bat<&AE$%)lGj@;jK>gLGp&YdVuN20>C)xj0 z4?so*C!wb-H{C`)^Jiq^pCEJEd4ZM=VA}JO;W3t?^kd)>i9*lv3p^bOKwr2wqLzUB z*s)T40Pa5|Cw=H%w8po*FlXU6KQYc|hSa(aSHnAu9Q&??z`h{?jDN;Z=X~S*>iqQL zmgZ^YpUXCR{(Dq?%3F(*^AF_pzfk!;S7i@nA7yR%huO?*t8_|orAF**F#u-dGRFsR zzgOqoQ0T<-7u?)>7GFK@_}@H%xxXWY6IREJ+F!H8wZCetlb)H~EdD=K_+Ps?UTbZ= zoBTyq_-wI_VZtTaADntdA!~}X&;79k@OS@v=3h$^*dD<@ft;`>5Sf5{LOPMnz?z2R zgyQ*{)qj-cBzMlgPzA7!<(FKp7@aRsO|p9w%OlGl2EVh~hyG{Q19i|n6N`TmwHE6xA5EP#8(0alT};R3C~dWY&T{f! zvcZ*XA2Iq8ZkWp@2&3jof`&!kjPSJ?nSqyg@A%yCGmH@*Ifsw zh5FVz%OcKUi3E>;t+?`cXGs8Z0Q&0gwv&ForEy4df4X-5sVaaE7cW_%*ew4zJw|5qCi zsS41I!vC|%1E3n%IeA<2+VbM+9Mu8Zxjd(NzABHkp9cg3;3>2DNi*XN&Ee4qp1cKL zW%RW$4+dMT(qq+e0P7ci1M%p8YbNIdGg9H!*#AV`jsJ*TTWhuV`*HOay1<|D&iCdc z5q0AmzC#vRS_S%z6+HU*@W3{&Y{by8MV8ZfEpdEL<|z0l!)oCwNJu0e%p4|SF3lCe zG?=4TKsj2~R=nF{Y+KXw-cdZ`-+YGSxpu1+yypsd75t1Wq1`+1C^q)6*VKN~7W=og z?dtMmO(s7Jek zrWXDq+79km`IouEBZUpG6pHtsdZE*Vf`2r6r;D?Dh5tdSw6UVHUV3JK)D;gFW+utj zz_;L>oz`{i%d;QQ9zbh;Vu1f0{X+_{Z&UzBUb&ta`kxra2D%DyjNZxsGXCc$cc$OZ zKau_)uJu2cFSgA8p_;_^3H{{w;N#y%@{oCeW7Q+WYMIE2NUVoMJ=971g?Z6Px+#(c z(HZQb7kYD5MXX3M7P#;eUP)JsK^s_B8%!GwsKY4$qk9$~X^^EBkxq^Hlm2);3I= z7I@B&nF)96_F%J{vGb0-!v3L^w2RH&Gglyo8Os7= z94iPWPJeKuEiy|YGkW@&%@Gv(pYvc1@H_4CJsJI$1;Jgc|LG~-F&dCH?!T5572mU; z@6Nduoiyk7x2ie6M)^YdW%-5H{avlOtmfR%# zQ`L4KA$FLwKb3#cdCc`^l`rgRO91qQB}W+TX|k8_XQsSF8W^*F3m; z#Qz5r{bgzIn6H;Tk~}Mn&6an4kdTRF0lREw8gLE1bqz541BeI`d-%WcPaRMgLr5x1 zkXQlO5dboP#|owUYu%n*lk3tIr2jV-{s*d6Q}Q%BFZqq^mHqTPk^cRKVDL{BBP0M> z(d0o5(4B6q^NiQunEEg3BVrTmRQmw-k@s+}u5x(t^YnQ2^vkjWu2r4oLNS0-o6A+d zsJ5!EDBo?a*6dy!t4bjKT)%@Mn*GMz}}0_w(2djqNcD za_oWPGvk?z9*;{)0CQ_}E-}C0{zigvZ?gDBr+G_Gx+f@ zmTcTLxU!TBo4|}6{F-?fcUTq3f>^`J{1ooyNOXBQkf9@;J%x6dWc*g7n z)8`62eR>~H0N;7@81ZN@VTrH%H zxd-iNasKbVbG{(5$t=YZiyQ?Q0GWx@Ga4#2Sg%Jum<`z&zda9`Xdt(rln@ zlEc!y#sA;T9@H9(*DDL?JXHd^xcpIdMD^!#opPJzeC0z=%?F7CfPZAYy*PfZ#!Fz` zy2kkPSTOo69|9d7oh?iL3wIKn}OpHi-t6&56v6+j*!O5IOXW5#zwa?M6x#w6H zdNL$aToD;y&I}G{r*$uP1fq}?fD1SR82lgmzlYj6TwV!c z^IIoBNx#hgBKv=Y`2WhqE?SfL`s8u(|2=96uumPsBLXnBzLzmVI`&YP+KwQW;4JAr z;z(3Uomg8t(-M*iaZ5A}?88?b)kn*6PDY)r63Yf!WGn>J1|M#R^}a_ccVG!-T}NyI zbdoc})rsEI!ngxk&c49EQHNe4q{N*FiDmm-DJQrCg?3t}3cQ)%w-I@_|D6r}9B9*1TWV`+HtB zf41VFQ4Cun4Nq&Sw5-S8@dUX}?W{ z{_#2zFChN0E%a%$Buc5ZHtx%Qt6Zdh;{Qo8F8?ZBoIEW2@1Xs>{%@VjzN2MqZl$%qGn5?v?^;WMA!^qys?xPtvM7Bgdqx$&N67!ThSo#qlKm=q zM&AFug?#>YQTt{~qcaZxFTijiow^7S6>(-1o<(LnzyQb=oUA_FLF|8~df;F!3cp;s zo;B(Pyt4Nkef*XIQNoC&m=D|oac7p#H( zE8qIO_K>evU(?*#?ZdJ_rhrDYrtx7pft;_8!_Oi@tNmahH_s(eN z3AC58?t}2PI5ugyN3Yp;5%QWdxIH{&%TnukEPVWc<`+C?Zy|eZAGimiA2!H$6V~=` zUM#=ga@9K3)aujn(dHJy-81q*T_)>)vAj{QtLoPW+1zZ$bVpge=QMt%nJaq=!L0mA z&418L?#l>$@(eu?$p-${TPg#8JSL#>INYqI_`nVDh4}fA*Kp673KEXGx1s)7`*jHkOog*{Siz#=XhQiU52p3*hd$-s+3l$@$-kBUKA@@9NQV zjdDiwq~fW3=cPUX@bCHQJaaTzcmV_dMibbu9`OHW3NdnE1xCA356&51)~xu@h);n( z`=`J@h$o(gTp;%cods7#U#+2QVVN)ru{zPNARKuDhK&C}nfY^|)Y8dqHTG$xt!gt6 z&+g^QZY5}7PmbZ7V2^i!J>K!Fc?f$U2P}0!4g1>1!F_U0YiYN^`k!wC?_>ecJ4hGb z3vw#1$Mrcs{mz;B-qt%hnDcNn?TjPbFYa^rm3tYRpKC_HaYcXP$~-N4gFX0cx$Y4V z+5q(Pz5o2gEsyO9;0dvB&-_RE0mbi|kCrP7{~K4cl=r`7^KG@{ezE_{wEaRe(%u#R zpU5`I)>b91o2CEHmIrXAba!82d8o$m)TIa>Dc;Kpy~O52H;3mBl(MdFj~er2{g^#~ z|0&Xk;D4{iD#`ZgQ`ysb-#XIvPieZ>({m(qu>bM@lWVwvbbn%0qJyj>jW+8B zG_gl?j4V)$_OzzL7ueGMc>3Y{Fn)9}I+H)-0Qk4IT34utV`F>T6CK*lycy{P_P~i- z6r9;S#d~o)=(lVF8=T#8i1%C%6dL_Tq4@=4-}vPW+@BdVm^A+Ro_&l;q!#y#95Al< z)hvJ(xK*~@ZH0qDT1l@)o9RX3eCA?qy{&-ucWt@kV`vS0E9539_eNWI9!5Bl)6y7; zLSNc5$hSx=w=|wK&)Lt~ZRcL?1+eYIIKgVP|7b{lbAE>=Nj_WtyIj7Sq1gXc|8q2NZFh~|0mAxVaoNclyIX7IkCk3yMj$nM zj4ONQLB82GvHxC@5m^7@B{^6%nA!i6^}30+`Hi)cy;7}%E2Irq2GAF3P`}QYzW`Z*SoypiocSBX5a~pk(FQ2Bp1D)xGvysmHLGn$W;dsZ7($CNKO`!@G19?ECdd4SYx zA_|Dd*P52mZe+zcWK^J$7?1o}@35D(21m3;7g+I_3jGr{Jq#S~kLS;GeeCzgYQ`tv z5y@yoFNO_j@04}CH5F~(vo&?_WZJ^!@!cLH;NOykSC4qxC4A;;zAxk1TAs5Q=V&;u z!iQwATyW3e383H5=OIhXGaPNBg~oSFW^#-ffw5_>fi4H<^w1CVJM1Dh>v?2UJOyiH z?$jOzdf#_u*@;{U)N^;1f5FCR6W6jV^wR?Wz9;vspSXE|WgKiIqW%7#oL}a*~yz?!)MFxMf(%= z!;&Stg)uxyC?2Kndu!Z-cXMjn|9I$#19YreHCeyo#I6VG4;DO8cp-20z{Unz{rk=A zMb#l1CjS4Sdi0U>#N=N6GD~M4P~#u_-xURrGWPS4!OPb2=#vBV->7eWgO9+o5}cVF znmVHY`2R=gzIIcUuP(_1&CS0}R>^4b{~s2o=38a2Chuzo?;+CuVf$|_ImS$;&Gk1% zZS}ebfq(eF?f=1IIumQePn3NzRXv9+~zjry)E--6*=njuTVI-?ip3nU@YP1r}|{aUgZ z_1r&a;jYcb=rfK%N+aWFXS6IlKkf&60=Q?}1!Vc5Dg3|deUVAJoodbYX--${|Fg1J zHM@GO+_l*#*2^E2*Z*pbzgrdido%l|R;C@FP1QO)kE&+vsq%PDl80-kM)^dI`Dq%% z_Iyv#=Z%GbvH)VvkE`_sTkjyh+F)USQ%Q~?dN)F--c&f_{cvgdp2>0P2iZ$`Pig+nKlPV;*6~`44C^9h{Xyp=EDNO4zN`Z18AZBzu(yd$eAoT-~sS+YilZ# z4Ad2;OShlh=$MR1FVhM@JtUO|%Kvw2zHPQdvl31b|KCTt9}C{-2iL?h$&2i&mO7ru z|9Aj4lx@^k{Wezp1mdv(HkV(M?1#y+aBgYruhq}@Ru0gT>|x2?tCe}tPyU(nnvX~V zyjjjG-)#14?poZDPp*A{z4Zi{+3lxn6rh#h)r_yuL;l|^z*zIB1Z|FdF^W8zg7@>i z=kaj_S{N{Q<^=k$B$0q`VXI> zf347elV+kkrP$xM`dnnor9F~6Rkh{_jZ{|m7_ISZ{YCyB`MWbTikYL+p++GLz?*Rj zM%NVv2Iy#_eZ#el5&l^vaDcX9%BLBWoT*6LYk4mrZD{en^vs=_X=D745q7!?p`5Kl z{l`1bN)+GzK3?tD#~1M5sBixbe8ic5e&^XqAeH&Q%>Sb@;m(S7uA2;0ZH}vzl{mQQ zU92Mf?~wg9`A{*tgXH^T9>i9{=-P^}C}WxIl$LRLv*l|<`&_9q8| ztiV~C1=u_3m3G$*fR7b(xm_~&Hd$WR=U*4o$`z_ov$8fUPjCLN_%>HwbR7lkt|tom z$pm0!;P3)6{=J1Q7_n!*W%PQa8e3=+zKM~>doxq(8SGT+D8~c9f6NJp%ysaOHsNu@uZ*Kvhf2v7b?H99#OBUj(Y$T68CJ1h&f+9nAylmUX;>dF#;@ zittddj-qq;xH6tMBD)sE|P@*xgx)rryv2$3%DAef=O{k%R%35+^hS_ z*QWQv>Zd)n$t(fr4gY2@08hqt7JY2#5;D+CkP$)KXsNw0<^zlpSO6=2_R=;uKOhA=Ag#~;o9dMu;(n3>3$+r?;~du#4pL3h6*UiM_w38$Q{n$W;h&j5WH4+dT#u<`8;pik&uO90 z3Ijl@^byY?Uc!tAc*1z?KTb!2|Cy4kA2ps!{-U*jKaOdD;WV?bBe1OaaCJsk7o+E-$g`aT`HbMh~N#1jIkiaj#mb2oKS!U*-hF^>#(8TDa zCCCfpk6C(*ed|s#e`37*s@xfO9rp-YL*nqAF@f%e)!2`28_05kRtA=BO~Dgr6~}Tk za)75asT}^Qb%bFkE^v7+!am6+C5tf2b&5t8wi2c$k^CsC42dQkvKZuR@ zjtBTkWC6F3{(rwS?+=8ctKk){0OI*S!*!3dRikgkWS#VAW#g@{oP?h8z@L*Jm^IR` zWCn}3v#6-QgKdZ#?5{6TqK^S1xT+gX6iRh{d9w$0vywYW zEMvl6GEhPVd*|P}5*Y9C2Sh|3y&cpTW$2rh&giY-mqTlX($Ub{n)o*=%^Nsl32QyX zNU)u39DsPsK1)L5-}gZC)+_jIyu-cFuOt6}IpKa}FL<>?=4xZu__tgKIj&e@>)uiy z3>&%8Bc4l3#mJMo7MU^XU&t8cYOVppA@dnM-*blV(F7cy@b~o5ypdnpoXyso zIg@pi=!eJ8UwDtTL@LNo^{=1&$RFg()^{$4RflQ6`2(wS%MSJ1wNm;{$(@;c-61XX z>#WM3%i6O+s(5$5Jl;DAxkzq&*I51=h>G!Llg&>|ua7iz=hYBjGy2U1KxRkzzp41^ ztFeC9)jg~p!Y=-4ZL{PKt+aVlHg8{L0KK3}`@cxHme#SC@Uf=&1Qo@>R15w1?d-t^ zzm5f>`~Q9Xqa}ow(&#rYaF$Y6X(YqNowkz3QzZ*)2f*X<<7S(; z>?dt#qGrPQAE~jduDM|qV0+X4r%&|Po&aj2V&{y}_28eZr;)mLq-Fu_X)9R(gOmZe zwyFSpq8I>N_-bVY{!Bi=Wy|-=ughPl8u0J55@3jQkky+uTsQIbSleM5gAPFel;&@O zCj>%*CxjG(+KhM0vcMg@!4wGc!P*j%_UQiP-@4K#x&RSD%YSIqH~|mt1Jv(0V8|xp z%UZE}$rIfx=$Bp_Pv8hGgkCsK$8+sFuqVtOKt^ax8gpRH^T2=G*v>!l_q0yi;bQ>n zz6V?zd)5K?7W|_rz&{vM^x2U($03Y+cn?poj5e07ftv%g?l*RME5ppMuZ8Ijj}9E&A?*d9)_vzpnZb`~CINZeIs0&c0jy>~gGjnmD!^u5~{%wbKll zf0v2!u4`)lwY`#Sv--yp8ZUfc4sKUzNzGDU$sv3 zA3vRQ0K#TR3kd&ztO5L=rT)C%+FM{fAbbE|mH0pUKeb7>QkGAe6zLAx;rUYHN_EMRvy3^@&pdchiHA~3@x~wUG7@WU+!K%qj)r*sCr;naqJA_ z^`C*Sz`v!c(GR-7mi+*Z4?$tpR|Ef+JWxJoph@f9U>|BU{$qb?vgU{b+8aQez_b{2 zir&E!!GFlTkXW>C)YB^{HmKG8h5nJtt=K#`BmWmape4AyarW~C`so8mFt1|yQFG87&K|A1#rpaa8$WHC(I{}qb+Unc+4gR(-C{Ojzf?6P#GGXH<67}Z8XF4B8^a}5i- zcCOvTKDoc_1mx;}px&Ce@$W1R)}E?Sp?_NPT0=+JHTQUIqBKegDA&=p$M{=qc#`;s3Lxj{HBY z_I2&6WOMCGvbeneeH8zjnV*@hn9eW!?<0L^f_R|U{TcmaH4`0W=X3WE4S>i(Cvg>O zp20o6Q!1H4gLU;+TWLlm%X(X z_{(C&;^)!;`p)$NzyUxTvd5Y?pLmDF0a2z*u0Rf0>u%9I6pwz%-ImU#D=6GHG8_SU z8To!-jFoxdkrjDV*D%k3`gm^e7;D|}e5`h^gF<;h>BgTqfO!SjG6Ib}^A&nVe~|y6 zh&#g%7rkytUPfSC(QC5mK}7Hg#u6Ds#xjzZR_L3x2>-Pl=4z~N*Yw0D2wZYK^BT66 zXC8zyKF|MO;@^6i{TJ9vpcqbNO~5^%HE_*$=Euf-T*D`3g{$FZZii=@zZw1DKCmCQ zKhgj0qMWVrSM%Q$AJ=avS5o9}ljL^R9Y3~K7Vd$P zbsGrr#H{f5Zz-v~foOM>Bp-Evx-{uM>}uoD__y>o&N|8u#_pQv$!mxQ5KAEbH$ppO z?v^~0wn_f4P;^%H&pYx5vOUxFlyemL?w-A0+E!`)F6Pfm)Zms#f7$q+JQVuU$#^R`hRE&A{ln(jN{$T!Ynq%!joU zxD@zDs~Ds!$^OS;K$9Z#fhwq5%G1bdpc_HmL}7I3xnuvzlK9-N<}U+Ps^ z02e3^@RRz4`XR;Ls@cq1VC28o0GqBtMnO^J;9A~-P)-m09BcUW&)f=x`8kec5w%0^^JL3d5JC@I z_=lg+0x}go0CJIm94)D6Jpe7n`nyrawL~sm2ZZ@ycQMc%ngH+25zVKVlfN7nT7{8I z&)f^RY)jMO6FwODfw=&@j`!{{eMY~b7287AM3`BAL+2VA(e97AWpFy%W*%#c7ny@| zz4b2t{`UR3ax8j47sZbbQAJ3S?}|3mu%YVpnoX^j+&uFBBBvHh98?+k`~{t4-L0U=SYOdSwKDJ| zz&+S4c$iid9FV-7_L2W@d7*6O;@9~t+4kw0$;I-Fjn`A!#W}pI2zqt+0njP}`TX~@ zLdO5C|Hi+02W{9JfOSD7Q|uJ{e}`%Z@Yj=J+LiEo!he5praSUk+LdUD^?O;7;%r)&TX8o3t<>k00$=Ni80 zSuuB__s%WiH=qacy*(Ke&Nokzk@9Pd#{HTc^?4BL29K0u+asLU@|FK+={u8AQY$k-@?HV9#c9*mR z^-z0c;`x)~f%XX)|NV6rIy0yl*+k6{y*s6Lc=A~~B!5@(e>JVMxmq}zkPc5Sl9zoW zou|?`^#$<(f?6a$=!eh5`ajzp%l}>Pzxe|FbD!NBJSA*^p0ZNblT1ETyYoDs^wO@x z3kd!Fg#UZ;o3sP^vdL-kOKziUMmKrb>bibd)1G%tG;ASs6?*`z|6~6T)3{ylgopua zrdUH^{BJF5BTv3d7S8Tf#l`2f0^l0q|7OKtZ_K|cwktbU3s=)s4e*Ql2KD`mYx1%B zRgwMH{{5RroDX!EBUtW`^TM@lqDs@Wtph#<{`nqyvMy?=Y`x#PK+qidzI=Oi`9-;AX&T2W&we*hu zn1^tUIe>W-=iGv4!Lt$8Q*cl2Wem0^{H=MWZ7$}Ne#4E-(fu^{0$yU7?-e6(fL{3? zdA<0m_(T1W^8T{B@c&G?cl`tXinnRqNmTs)Nb7#?&X&%WP5Y_l=iZV|j8J z3;i2PmJJvBdrLBt?;3vjz<=2N_~ViN*0NU>w-~KE*()6Bhup*?a8B*`q?V1!=SbRh z(>j}(`Sfi4bWk!)8Heot*Q<#rd;gsIgXT`FZol=6za{nOJ!j3|T8gc7x6WP$J%rTt zC6f;q{+~!XWt->oDJI!hyAs}~y69ul<+UsMuHu2~3D5Zc@cLoLP!F-UxM7!OZ}I#) z{zqmZRRvl9i~pa<32P>~YpiCJn!sDg0=U06J-H=4Q@)p1m3?`w^#5Or6Kta$K|ZT5 zSgol%z@L;u$~)?xs1nIubG3i6S-_HUWo%hK2K|C7+k%$zLDAOAO_k8SDKOpzm0@+G z?{W}HLk_d@7f+z^?>%&kPz2+u!#oDL?>vL} zk2Wwb#{bs)xChN2&mV{J+G#HSx0nC_-P)r`2UX;*npp{5iwE+1ig9N<<4b?@<;VUl?ODu`MZ+)2X#Sx&`nsOrbna| zbk7-(7M#I2Y+YlTgtEX56l{GM*@(0w_7+(Rzs@1wn% zzdW+oB>%0}{GF}iV#)n?RP*PFY;d+|x_$B+`Ti!!7N&-+YgcV1^pBQ=>?+#r)+fjj4bRSv3;rkyZOl+hYc$X&2OU{0)OxymF{}<%H$oi$7 zRdH;0J$bCKcL%dgAB6bJmg zUexQVkm%h2tkauTLN5-Cm@-XOA%n~XOr5^VIwS}PISKXfttkyHA3fYMn0+){h0iO4 zID=0Oq&lh|xB)%p1MnqKZ>(4bf-grTK$OwP6-Yi)G(Ixg1Z}*GlCZ=*D%%f?1_aXU z;3FY9k%b;%i%(cHhV!_O^pXQ~wq!dkx@Ggnm^pfDeS-Nzw+d;^_&id#Y+p#sGOb{# zFqK%n@88W(MCO`}@FAJva0PK1bHCHGn?(Hu)E- zEw@m4wbuQPSN6{*$}3;0SU$g1^?uJ(#s4d`3iXrhGerVkN#9QvPtI1J%hs~^vH8&f z(EQhw#KY?MKHs1Q+Zp)}HnGatiP!sUfKxa?t8!;IdBVw-8!ma+U)Z76-i@{ElkVA$ z+TNwNH0>3YXLm%_Iqj&Y|3GKQ=xKP=BHPCtz`j4QZ%h6k_5BAI;C^%!G6~#wY#8)^ zVs-0C=Q+Igc5QaDi0bjC%~c6~ir?i=XA{%5R2I zvStJ?@X91-guscM9SV)GMg$JfU+aFl6r<|vmd}-)mHTsuR+cPMzcK%lB+c2v|5VAF z-)rT`+u6?9QL6d%oHFybk%x+1D<%s2tae#T$n7sJmz_UCZ$>)@m0$`S8vmC1Xalh; zFIqrH;cJMfe?(JmvLz(=1KFtMTs0 zpJljl{Lg6r@BrH3h5jE|faYV}G`=zF)giUlYQIU!Ydq0?nT%c#ds#@Fe>p=sPWS z&^)nDpOuQ{G@e7a6jSMFK|2XAL;;-vL#_SUwMP_Z|4F`>r2oKTiQ;GZKFYIMUU9bV z^u+!`KitLgG$MVDD_ZNfcVUHp*!s5);D{ws->qB!r&145%8j+g_vPA+$+y}8>?`Hr z4Uq@%rTi`BC1|a(=7JnPa(I#d?E3)+=p|0oT?g_17I*Rbe^)<_osY(fa}1CMFh-n& zox*kyZ(T>)&X=|ClJCp=H%GDmhxGq9I^M_*%rBJA_O)s?-7NfHSsqc|R-dL_K~`^4 zEmROx5qi62A>UflG-X*LLDf*1sS|ucjkE#<$9vxats`4Z{~*$J0nw9@Wnupt{oG>> z1N=ji&@vp!GSl`6&oXK)Db1yfELw=Z+A_A}HKm&u#fU;*2(8Cxhik={jOyq;-&-dR z9^jtE`Is%9WlkAB0`mx?HQIz{A>(7-%u%9c=Lva6`OcP!`G`4%B|E(}7mm-IrJv|0 z*3w!Q4^QK{ysVjUKfk5FaUUY)2jaU*Ms#oHitv7o{HlCL@n-#%ax0<#an=02SGDDP zDD!8E&_6{!=ciTk&==%w^+iNqF2|cxG0X(WapgW}lJdkzHmoAQ}-&VF&FP5j27nZXW2N+QAAkNKN zHhz8Zh)x|e42B|y7TO53Lm}XAUVoEm)0hN9#-k-NG!NAVA90(`T|t|5Owb-JOC?J) zSFN>7g4@79!V>V>Tt2}M(EoY1|AGZ03JhCQfTx&efPbFNli>^ISG0m%0jG%rWHKAR z-VuIUv{r1p8t&u1nZq$w_k(w66}0O42u<5Mg!!4Tr8kbxw`_m#4&RI(f^Cm1W|^^@ zS8y#ye8cR?gZlG869qDiU;{l*n&knWwv;+7H=|akv z?5_BKd-0BTlRYL~UHhQ1=O?~@@A}nGv%*d&?M?aLQ$6m~Y}2b0kpEN_?Wg%$M|Q(T zn#mE02a*j5{wHaEsU*g#s&i`FCx@g5$OrqLvViWE7w~%d0lvs)%4@S_xm@+<@=UD- zoUUx(>*}W!7s;aIcLygR6yGvf1a0%?zCpvr3i$BV*3_XiOEjq2vIP7=c`eC8+q4NE zKw5I}9r#D{51&~`-grvTKh%k|gywl7pF;n4oZRT(e(=u$Wy6UWpOI?51>QW?$ey!B z<7;>_ZFr3CpE(6r@$}#o?n~tJGCF2}e(+q&e{1s07+erO>XkrP8J;0#nJPo(JI1Xg zGcy$Sl+hVu6pGqQgNG%Wz|?-~Gb6>6W70m$BGqr}fZ z`Fg^CPx%RZNrTv^sb5VNm)$~hd_--vq<1<({{Ii9i`}j~z^fDo_?>D2>{Gm2|C4-x zca#T|$Cu}p%aq@%f01u4dWHf*+JQyrH0U)X6Oy_PP4eo$}e z4W{gIHvaHr8U1|b8hDI(jd@B-|D`pkp2PTrYEA7S6D{vyk|_-ywGiYC$q_2 z+yO`7YHJIeH)r)sbDihFv%n}@zWaF*?fZf^8vjN=Gw4}kB>dJyRPg+=-iLS}Qr|uR zGXD?G#}sGOA1_an^nbq^Q$4Qrr0uHtbxCu#&snPV`=Me_M`yFro02*5M(rref0B-E zj&B#AqIdcGz7#09LpoM>H0C)l50LFitq#rxvftdc%dmpKNnCzdO zBm57Nlzl-f5l_=@!)G<6Kb}VX>9zrkf4qRS=*Zvldft+?CH_h4A3k8NMgEVY3;ZP; zfc3iV>feuR%V<^ZS=lA|vWot7FWyrP%=5G^;UszMh+vTQ1Ny0F#+nB9|LUoOY~{#Q zv;{y`0U5ySH}SvzT>N*_9qY;d*;&;@*bQh4)fM@u_WR_^^oFJf;C5vJQ;+H9Y_a^C zd|TxKuUQq^rSY)xqH-721K3pif^`!W@#{ldmSWI$$QXNrOv7Ab%$r&wN(hCTib8IJ za_AcxwzT(J9^0AWmoxss7f5pzFt`y{(Hl?-jiZ^mMUmU;wUw-0R=QK&mYsh3G%Z|ENz}Z9FzrlSY;sU;d*2>F=KzEs z5M96-H{B&U$^9E7RIIBC_}?Ty%`VP6$p6=+xFw&K^-8~%)-j~1B^&*40P6rPEdUPS zr~YH>{#vr%@31K>`GW%l{=Ik4#=}Ie_yF($QUeVA!d?Zh00jT!|4=P)uy_Q!4Gqv;n`@+d>DWaxy;JSB+R@q%@JLky ze_Q(hm8u4MsdRw1r5!z4Y*wzPjI9^TlVky$U%p$vxwttWs^2}Nec;<3VCWz$U1SV2 z2A2FCXtcD5&(JD}05xC?`nM!SesY!R9hBj3a8^)6{}vIw(;ioWd{9k)e9#u}j29yX z+(PAC9U8Rl{J0jrV0`$SkpJZG+BSDf_R!n@iHu>}382Q9_w~U|7^_<&lHp21E#5;< zId7DDUTB3L8};Cj^YlCThUK|66@C*qC%Tkd7V z?5~O0jQ??W@DO`9sBp-y+_{N*bO7i6j8h!x%VP6#%j)IotLn&Vy>gaTlDs4uyHE%F zPW@4q<_%drTTnjkX_81}rjq+h+;0O>?HEzGGya|9g1iKc_WP0H&(Y!lk(V1NHU3u= zj;RLZ?BAi%fM2LBpuE?s@>PZZRbN6WdWQTTpch_DvKrUW zd$IuWj(9gDDvaS%wETDNG*(WrUs5L>)EXZzJ!^06D6)qvfr(lR(I**{4prR$UFBlT z68c$_eSfw_KE8Op-m^Nh>QY@@UZ&MsgUhAs-)Jo$Ygo{~E#=VvyfT1X5F{Bg2AVSV z1MU9a894BUpljE*z;kC>w@!ilw3ZQBboRm7?`TQ8>|Fdq-7V=KC;}ap)L_}~`ESIN zyXGgD8_*wGvDBkA?utkpBelnmei2dh4A>)qMuJCTUhM(tZ>@*xJrZjk)>2}Im@jiF zunk(72k>TGGaAcbI2!MRKXDbUa4l^({$cG2&cq0qQQr;vgIoI^&yRm6+YJ1sJi#-; z`27p|8fz)cqi564^;!?+5^Dmv-$UNNUV8P-ca;^pqrAw|ss$QfSG}v>)O!?to4fs; zFYEuxxtTvFWp|{vCZDUu-3~(k4$}U~P9y(kBT=|_xCH&kV^`4x{m6Y=_+T9iAaVea z_-#4&mIxMLE>4|H0do3z!5;&qy}&ojfNFKR6ZM}D_AAKt^mXUCMwTyAK`ynXbwuK3=;uPOWyYUQ!J34y_0LVSUZw0HNJ-%K4w5 zpWh#fH%5>J&=~q6XIh#7v}>A0W<#O;M|ZZz9E8}e=Q?N~X=cnr)8P%YtOpC^`Gn?R z?^o#e)>gxk2j8Z6;~#2u4R3k@RU3V@MO@yI1ZNK6XYfe4j`4th`{OJt-D~bOX8cq~ zJ(ve;A(p{hV|+799;dY)`x!XTb2wv3-{O@#!8l|ro@aO*2RsY(+cPq+{07mC&fEhu zTZ?xuz%!iAqh_pJ?Oq1{>1o`@vv{_DRpyawpO64>04o0VRqStSeq8ZdvxT{f@krU!P4=-rxC6FVmkCYu-HDH$6~0Z~m}}{>jn;CO7^6+sRLl->P5Jy7fvt z>-``gd;*t_`UO|u+laNTEIhCu5Y+_7iN}0e>yciU-6=2ofTBZjaz0kOY+Wf_ zfTLJVXH6qGiR}z54Ilp<+5gx#wny+v*fRnC$=9I{Fd4gt)^R$FvawGV5A}?Vf1>*60|V6pJ%+oWyHEqbm4&H)I9xme{G%7J+Hif%H9LxK zr@Vr#Ygg9x*M30zss7g+(#b9p{x8dljs1@MdFeDw)h zur6=w&va~zzy*+a$S1C{gflO&yGSPOtz$3wr*;%=j&0hl z-ruT~jRW?*o(435edKaP{T=t``&Rr9l%e~w3n*DHwPZwkS9Y(m|NAQY?`L`c>{`|S zVBa6s7h?b8nRkAneGIg3&*Hy^|6X6XUr|}uPjbAzrzG}|YFj6>Rhi&Z%Z5&fMdk%sRrOG z52gcS!G0jT$}Q?KwOVhstm0ftVj|0pO(gSQYR7N~RS?=mS}li`OcU^l7cVpGk(C5_bb3l>G9D= zxP*C=QE8oo=U~w|6EHB&^R3%>bfKjf)tu$L4_`sALmx38;rl>7_wh0h2#dt6!7Ht$ zFqfA4ZrvP&yTCfLL!VjA99kb*KiR(Q5k&?d@*nAcdOo2zv3^fEv+CGbq|shoP+zv_ zoZm0q^33cE>HoJY=KQhzfWJ+jNWP&WmyRDu8{Jp0J;e>Sl@EZO|Io+n_rt>-9&}I% zzR{t>N8jQKw%2_v@{prVlAU^B$@uiK?EZW;#n={=M%yvFB)L#n>DToCb!tA( z)<&Q;^bPpR->dikw>1I#B#{1={q%2DjS@e8U#))HIJq_Lu9b;B)VD^lUjBM|knDff zFOmt-S1;qAnucpNy#gcD^U?a2eZY|Y)&R`!s1wfqhvsVFpNiw`hPsiwf7AilLi*O@ zwadkIPS*}BPf7BF|C!+X#o=_d5D8S9~0SwiS?TZ&X$iHJxuRTAO3}6AN zz`B3aj*)MA11qK;z6A-O&>E}Jj3nZF(`bHXi zF1W(@H~vDOXJ2sJK;VmStsMknc>=wNyNud-G0doFnk+gY+6Zl< z%Q^ecqqQZ+RV{7Bv)~?qf3D%zMgv415c@YD=pzkrJJr^Eu2`~MwR)-QDeeE-vZ!C3 zer|5DM{9C?}dP|c5{RPXnPLjPpR{rz?9BR;UBB7o~jvJv_3De2YTqzS7-a^uqT{#0Fr|#t?(v1fPFO&YbUePRb>D7Qe<-e zV$=Mi^a$ledKWWn{l1z55D)$xA;HS$eCMWBVH<#$V!QY!RYI{1JR-jBCJmss+88U_ ze>)wlvO1@>L9$CaQCR>lD)x7YytC7_8eonpk^Qt-s@$%+O?$Sysrn5^l+)`6%3m@> zJidp1buf+Ak2HXSz+9XDTT+@n1OJvD(6RAv4ZwWBIyNY^1U0RJzo2HWL;h2%t96et z0R;#CjWeENO6I>&5i;LMF(yDgG)^CR*V5!cpiyR&)2?xDeIYV+ZHf4-BMWFO3+7c` ziUTaD{#p+Yeq`xROV(bH>cQu*y*(1^L-EYe(dmitjitc&qK}?Yv0uyo&*10!QJAQpvN%-^IBG59}a-z5A^rbzOlc|H!Sv0#ozs^KUXU@ zj;xj__bDc-!r%1llp_0AiqwFE8Tg#=BtesPnt%^RDt0;4|D-Uc;@#GuRo3xY!WU{%}!0^iP#MR?N0b4vtWZ zhs)#rBklh6+k6$_zg}#U=h<<>*ht}mOggmZc`X1VHX;rGs{D5rK+6YcjU8Nq|GjI& zl4+_;{F!zp>|M-PY@y7g zu5)z)q<@zt2ViwDdk#=pkyy)tsyse_x|nkRUsLw)3~6N-DlYSCHX{Fi@$-5^*;~`A zPSyM6t>r@H>&46Yc%h#iL7)<3N5lZ&06|C4CNv(lvndLiwk>WNL>_@5=nJix_h8Rh z;~ZF^rSKE-jp^LFwl(QMuk~JI-m=SjId>sbK@b{5$o1e+(6+63x6d_k2d$Y$fFceM zKoo?G1ZU&f!th;7XvMO3E~fIA5oF!SkpOr=9BvonSswE}{L1}f+~yVb3V8194`t4n zP5NUl#$90F*-~&5cpZ@dBs`u{^ISBqm;=u<^1O3%Ogx|a;ui?+?a%J5^*!d2UmM(G z2^#bzVRoYUOV2TCLx|qBc{<<+aOdm)0(- zU7%`qXXwh4RoU+t+0c86H_#&7fohlRn@1Jw4fKE4+LYQx$r#~Q=;hlhdJ-Pkxy$pvpu&)wjIZ zGB2{zRF?!@h;{$Y{b4l|JNtqELE>)gb4=9|d=_{;R~F`bO51^75E*pdf!76D8)A20 zc0^`Jp|!<5AJ960TeTASHB|$jB^~W-c>tcu7Rj&7KPrwbZ&CKvzSTn2v)UJEgL>~` zU&(*_{X_Pf2cQ+&B8E~dpKSR<4`!G8-^pda4EIrEgj4*xAd!zO8A2t0r(M+vOMfJ(gO)FqlvE0Q?JsO+7f zpX^}lya2B{2BYCI<5~`LC+h_~-#v}9#(nSv{+k1UOg?$mjQ`+vv|!oq_#d+k2W{yU zo_X}A;D9`r@gu>#`i~yazGpAy$Q*%L^7Sn~=siAJJxt~g(ZAvOFY8Y0 zzp71b9v5g&&Ev%p;3Pkhl>3qXpQ#+1Bem*%!Tk5~vG*#fVtoE?x}Vnm43o^n*Jyu% zy$#MXwD-@RzyH6;|GZoQH2Sc&9{rz+{YdN|)VjzQpX7f~-`bR!JTad?J3qO2F8-bAWMr9nNWX=BKA95F3;0@USuk?ZCLNL@>^h_pk~Ab|F`%Cu^_4Q;_~@txmU zQ^BWiESVd*hsHIw2Dku2*yGOB0qF}1(Nqa_udzg^QNj-8^XotPzShg}PJ;i|8U_0i z<5|{H_(YFGCoq;;oG~!w*a+OsV>K4dE4YTXsl8(u$ zN!O%@j&4bpWR+x@WKo^@p3c{kB&kVz_>=g+E4Am8)$?-g_u?4v0=UN`;v&~Kbp&*U z8R80;>IwI0=ZhPYchhe9dy4mYFk-C25M+^{> z*%fezFpr&&ML|T7yg=6mgag23+M3*r=iv+CE_PL8H^E(-dk-uktN(4~{!9^%K1-`J zf1h>NEREJL`F{0>YAfyBa79^`Ulo7MCp7sz+1_}5$oMAv2k8$rLD7Eazs`X%1wo6v zvkZiaEeWA!-a(NZNK|M!{Lav}HGt6mgC>2yIZJp2pvU?TotzzC!lrhbrU zS!wP82QdD@65c%5AGBr-`dNv;T_0b^A~d_b35xZ{3UnB8TkIr znvt~{&mZWv#J8US&D-lx!#sPe1j_gAfG*AdTF;+AUh=%5j&@zFF&O=to=u30roWBKj;1a^Q(UUCk}yK!QosW@XC(8=<7SxmQH?< zzL&kw#Q)dYeQ%ZQ`s7;S6#T;hEdSXL9q$O4eFMb>*ync*wZJ+6Yzi`cs0={XFW-TG zG#gtT#2d*3go}`6IZAfG-KqxqXnL{MV>~TA?KJ&X7pWe2mLH#ARE#U9SKn(~RIN}w zDGOlF`g+AN&0PWc)#3hd0ni`u_CUS)0W@X*lWkiNY5ZH-TQdlxnlD&~cNUvz9Sng# z@Eb_tjJXBvS=YtCZd?Z^;R?Q?7w8ejzgsmAaICv%~G<~X$!+o5C6neC| zjh{>JoXLzHfu`cDVb<7D!xxRh^#uJitPy)q>4|X{wvqV;(wqJTj|{sT9KxrVF~5ty zpxpQm{%4;Gc=z1L+*z05IU(I+mKZ;?g+~B>X`ak=JdcCk(s##zjeoEB>!p=+`>Eb< zy}q=neePR5Q`H&=R?C+M6dUCCN}`-3s=8QuT|c$a$4hr7D`(9Yi%S zRz#%#q~Mx7mG3yqEZT#> zD6IXMpIGCF8MQ@#zl3i%M=$)#nOlK-Z2pk{paWF2Yz-%5|azjkx& zYGL}6+Rwxx4z3*}>-|Tv6!w;PZ+F=XyUSL_$G4Zh*+c$=-J7w2J@t8CRkp;F_)}T? zKh<%xd;llQvv8hTyF$EVK(cH)KHDu%w8pMi@u6mAdb&okpYYJ~{v$D4G9NAg_VEDx zvsnM1uLtv>vc&<&0O+GgN0Drpz99LJ|9`RKXZe`y@#J=)8~-2ve5&}ft{?nwED1hH zsHc87`=#|4=W=wBj7RnsCK^iqg!LNxG~fl1$o9k@5~`=7X-nitNzz-N^bb(rrCG->e0@|!`gl<85 z^SgIx>iuZ{qw-U=;&+4kBvp<$p?a_C(U@KBTi!2Pc~bR$PR>qMZpmGuuTNETcDby7 zx~ca1`nirP<=>l>oR%D#4Ax43*^=TX3iJC2-(&%g7iD`7Ppn+ly+O6eEwWqI(sx9{ z*U}4VHdeYYer>9UZ>j87^4xY3uh?4@{v+{%tK?x@DcvU9U)4XmDaZC*MQhGfjh(%l zadP7XNr`rjj&8jl^#412|G^C`|Lq0jJu8&(0BlkFwzfw4gyjDKtxZ^=I5pomdp@~K zs^t@3dPj*!5&yg|5t7HnFxb9fU_YwH}wGWgLoq6z(4f?oF9Y^v32eB z+AGOd=`FGVo|1lE-%_6Tw- zo(b+_wu1k_H|Vv`a;1CAQ#?NV3Su_-j@jdYhniFJd}r~Xo0(_(H}kCU3%2P+tDKK# z#;=9%!g+uAe|kysv(N87S~dPbQIzkMldHR`l^gvVyH@wrI~7ahS2wf%&Xeu`lf=N)#8?l1Wr~oah0TFx_x$#?3AuWr{aw~$&XFDC%Xv` z&i%no?jZDo6>|YJ0k1s>{Qm3zk<%RZ0~ zTA-kPXr5k#wh$R_p_#OJ2zP)t>o7(XcxEiNPOL$|scJcDHIptGA_fOD{Gy`ORO9Pl5!vBjg%JD3ly0N3<^F>qz@Qumf8vVN;g z*KsA|ZgEBC$!)k5x8}KFyyyq4_Yc1x_#Y(Q|IYk`VoLp-a){Q9%&EpT=5IVzE>OQf zc|TJmOU{!A@Loy(ue94lpKP?&wLGetABW3!pQGs0K9c=UOIx2PI%c0McIqI12fr8C zNB0Hy#K4eO{6{0UM1%wIJ)en)nJbKJN;vimM_-^8)+FJ7wWKYbq@6Bvt+8z@p36VU z4pi;$U3DLO3lSr8%nT$shuHbVEB>2wfAfyWD7LkZ2avqH%~g-1dwQF4lLo2+@M^`c z^4+yI`Ejj<7}^{gYkkrQHk2388UVT9w*SL36xyTd#hk#1HFo*llxsd=ZP^kB>IUn^nx#6ZM1uK+Ot)Nv zuHBAl)z&fkEk|e^pbm7J>zMM5kC3)4IZn%H*+!YUfpG*9TRsTzY)#+KGA_eLV07ka z!T*>8u5mv=oB4$~7|#QX_7xCE2u%XL-TWYM47Y>N(VNhIc%J*m*m)A8U}j>}evY{c zbLTPgO!yEpW4}Y(>HZK8@NdKSF@LLw-&5xg>#v9Y_EW9Dv+^~H!SyxD&$Z%zdbLDj zTw_YLXt_x-K=uC475XnyWjSpBPeoOarOzgdCDTQ7KbKc-nPjtMt>go7gH0s0+2e}+ zZFvR$ZTW(Ed%@Yu2Cfk6;gR@o0CNO$iSU+F{htHW>?qr!J?Sd^ACzZ8|BA)^`HR{1 z+GBG^p@=F&&W~ATF7mAbm<#-S@gFOJydMZV_H+~eH>yXaM9u)qEh(BGPAC!HY zJS)2ZUB|P)>R)#D94{Wgu4sML^D#|rV7S_F+|qi5*8!9B#|movfIi3s=&IQoCtJx? z*2u8luJ)DoA75P7Ke-v#sYV+IEl}`13Yrxhp`(R$jAeqV2b{bb5FZiA7t`-gtlpz3G*7B zVOeWz2S*C2?%BeRU~eI#CssFA-5X0ZzAM+N-=2T0 zjMDQ(P16n`bFjqgU)TBnvIV>gw#C6CHhLd5|9<+6{HJzt)JJn3AnSdI0=R-g_#E*FcF}Co#=5$T{lxm{(`~g2lH1eM z3trY*a{i76R+H{!sY>DSa|tk??%#X_YZ%osy21`XuDL&4CiwP;%5T5}rC`EEZY z&~K{eJMau8ho0f^?y>{IaaD0uioDt`Ojg^KCllTKoWv_>j1U} z@CRTmz!~5G)&gkH`+u_=<`0zxFf!?!ZY%x2F8R7bahvucT0Q+venP5g5--CChz9`l zd!3aIg+u{M<{-wR#zVG&02dqP~M4a^Aod0)7Ryl^E`O>5B4)b zcgG(J{`<>f8ZT>L4fzmOR<9kmguB?QK%H<~|Mmc219a2e;YDD7CF-p9*5~7E;~V0j)=)>LfdLZg9KsM&U?bpYc(bY9;@M4tG$xk%7Gn!IV(D4aGFt!K)SeDiBs3{J@} zkbIWv_5)fI zM#B$YV6?*{%o}_KyM2RyGG?)n4^^ab4f+4JP>sF$6#ZMRxLf!isOo46k_g5a!{ng0o)pE!3#QIOwzfDxVu9gS549Ug`S;ZW2CxmT0%~_ zq6RxzgK^phEtc&@za^RRkGIfwxi+6^J>+2Y)QFELAEQCOl9fo@AKe5yAoeH?3m!zF zWq>=QdtRNIzMDH(GoZKh364PP?0LriUB)$ic3aj2tgp~^d^YZ*Z+y?ZFjF3d`(Z5! z3GYZIz8iigf1=>c%QJoq0gv}~m(K2;l)ESGMX9g#1r?7yDH?EKeR z_w*x03+LTsz+QA#(-{5#p1i-m#=on85UE4^Cj)4GWjei|9F$$E`XBujpSV4rrWKMO zNjqWuR6}RgGd{o(;%dY~hv}Psnmcm&$LJjyK<+d0e>Jtq9n?|is56lVxQaA|)x|Nk zl4k)6z;%Szkp*yx)<&EsAI*o-)~=ENpIus~%5#(CzsWn*A1L3IXJ@8zx*t|W@I~q? z6i2Go!+@p+fF;nQsr!R|azi>x!a?8Aw7CFui0p&5EP?zU{2>j|8C=sdvVE;tBhQ_W z4>F))(1yire3@Q@YE83I1J8agXxb<@U5CHGc!JVhZJ?E*!*yX#Sc9>a4JWcCLN8ba zNG7oNBV~u8g>;Y^?0Ozx7T&`VGS_|atiX4yUszKx{^<`rVlB}kb6es&+Vc1V+wqC9 zbIx3eXMubF=NjXAUJe|*(Q^(b0{?I)eiOg=7XRaNbAKPN_v5$4_uos^V0Xx`mEUiH z`UmxC#r4CBpx;@+rS3{r_j#P3djQ>pNAl_*e4$ z_eeS=FDg@qT3@cvIb8G@dOUVK*heRb!&-h|9>n7Z42|Eu0(%G0215R`Ms6q7*L(3vEgrz`i2e1R^+4c%HTBh23qFfZ!v8>B zJ3y-eh-x_Ju!G+B*4+~n5uGT$F-rKyMi`_OSmTn7(@nGv@GDvUx9OKVUpfH3o5z#~ zFur)RzNex9N#i8#4t!pDef`Sf>3ovBfPI@s`+wn|+%Pg|$AwyOb`XcMIrPP~U|Yz%rRDjY1>X+y#z=yoEC`QyvNZ z_N*-{KEf(u^G)W;a-7*fD=-JL^#T6lS=JXqFED?hP2b;|fB!o6-1_P64}Upqt`PTVm%A$R@xT(HR`C7SD)xSDaD}DwvZm6~_Z&ZZ%4Qc&dp`CB*LHn~%tzn_cN7uMRIFO`?Kb<^_)R!54K`5XTHkorcyeSjh5E%mJnfPWw6 z2>#67!__w4|Mis@czNwr<^L{{?vS0L8v8?(V|QzQw(1YREX~_ivVDJK$zm%<2Ee}u z?f<7g z@zewECr<+SCtraoBb|kF{3L^gaMuU%sMrxwR1JN4^;+ zzSr6=SE6Hht-SZaH3~ffu0o0$L+*`znP|rg&z1S;0Sh))1uxLl0BA3I3R3Nlur>fv zd4f40pFpJ#pJ7x{8OTV6D|y^JHTX}wiy3LPZ)wj{m_?rDUxYFF;CWvCkEX^|d}fr+ z1_~bz-`GTdEqz8(u(xz#@BQI; zUn~Cq@Av(;IDsQ_UX$BXD89M&K(c|flaAs}eTs)wGhwYXOD1Xj-ur`n|GfVf_$O0> z$RIgEYYE53Ka$_kg)YK0@}KOXZcWdI*8#1j(XJuuf9qxikTE*T9;-d{-PGEy$1<{e33R)nHZvssr%R8!TbY}u=5vY*%J-`E8hPW?YNhIg za#sCzVAL04D>mVzM>%@3e|%Xe$I zmQ>tjdi8B-0)Ao67#*`` zUu9@q@F8pQ_*mdW9=m(d*8IlUH&^g)#$QGZr$rmUuiLJjpm)rFrCnmLD|V?DC@gl$^%s>Ken|Jeu3v(hdLfb3uI z55Qhv>kIu`iTjdqIb7|-{nk}P_OawcSpa`huIB8y_SFp?_ju_I<$vIAgD$vjEW#tOuB1c#QzQ!%=#|Ch|Dk ztd#~2*1nf4l>R6?H~*ei|8yu$$+ya$Ol}qei2ZjG0*L-w2f&U7P5*w>&)cFkbuxgv zsh`tpmnLmmow$&AQ-|U~t(@9ET_pK|MoWyIC>^e zw30@{IzPu#`-vC8-S9b34|Slh&YFmcii@r%J~CK$ch)a(sdfaLmL8`Fz#Q!gbhEhk z#nJ$-5&j=iTySdsX>o12Kx6;LqK(6=rK=muj^#S_{fhhYotip8Uqu7^H0eC>V)_bA zxn z=#hH~p97udcxdrN7|96Y4(5k;TKDme7uTC_&^AvAp2?_f6)+}iV&)NkB04~u&UhC6 zp68hNF;muGSnG$+e`da1aY?aG{iFJi%DaU9XUcEO-K!-VM>N_RAC%+jAIk=OO&TM$ zB&R9n_xtQks}#!@_vX)JyQWJfdkWtJB;CP(pJo)0@iDH^ z8X-PG_yP6O9shT&!VXRRQy&DYiu}e-P5j#mXxF`)N&auGRR^1h7vM>37oRzz)?d4j zj+XWRnY6Y$h5u>F0h%EX;N8*y1}QQ*TN=Q`#=4E0_SOrjN;EMmII_sw(61uZAGL<96!txEx*BY*`G)ifuO>IHB z(7icAOJ;&D5Mdp{+#~Se=tHYkhx;8Zf*nUA;4AdN(wQs(%YCwcs1_31MBtKfxOa?` zR=_HV^9-0D%`5%sJDh+#07pZx;XOmlB=^~_qD5vo+N9n1#?PQ#&!&0Oyqv+mPRlB= zpM-I9ICp|M>?rv^BA=XJBk$DJ#mM@T_3_#l;@R?z@@uX4f1;Yu*toG*HK)FtR{Vag zc;76c|9n{h4-5TIW}9XErH3bvX$|hrm4#Qy^WR9WR?Z1NEMDLrJs>!M<-av~>fTtd z4^Kd71)S$Q>R`3BetQPs8*l(B-R!2yAdf5JaGAUg%cm!17fQl*Etb%Zgafi)tHRbu z*}km*L-spQ)?R@BJpOxq5i4?fsuxqW3U9t_vpkjbUrN~tFK7FtDxc5wD0nCgVMlMxV8amgaBjH*eq^hugKJ1lQ2J4_d`OvGg|1@cUUO2mkN_>jCBpa0ZZTG}~^W zCmfdcmb8}E*0`OCXibHCeFgHGs%1Pa^ndeEM&oz>YnzEDz}>jtvK@4r%P>kfEC*LG zI)4Y&BeN$sUFbg63h4K$LjPX*Ey_*1so1do+j{@Ujcpr`R)>^- zD(=v=FDZZQVp;rCjNG_BYeu^lpO>zI%#R=9Ib)v_@0UY(S{P$`e z%YU$rb{i7EL<^P_a&CC~r#Iu}A5{EKp1>iJ5=eR|imCwAh_MW{FU?wj>CT9@gg0)DU&|s>qUDe^2mU(i z4LS$0js`;W*6b}0Ex~NJgE7lkxDIrW_ui7<$OJ2#34UNrz`ZhWLU$)R89a$y#9aN` zc}iH>?n}fe{8akb(&po-KF41_*LFf^=wQIXVzA2GFw)Qg zcxTA;lxw*YmUbg!0((T;c!K zazJ%mHMnUJeyu$sS1iWlf6VTc-gusl8S?tSt~xSnNsb+9j2dl|Cy98ot>9lpeJ{0M*nR4gMH`G{HHMgm+i7&A3Jjl7xwm-_l+Gu zSCan!cs?gPHtnYBWS~1N04fC#*CVbmTBFA^LJW{BpH*e`yHe3|;$YbSWCu|lg*<#c@B<+KF?D zKIOU6_j)uAsO~BED-YD}pbM8<)Q>A()LM|iLcD!?P^GaC9hs&~&z3~~&XNXN3(0M| z3<(5X@(oAGY2zO`%M0xkR3kl+&tcEOUxkkhpqjhT-)&K(G^w5&Hbv56F#ljpgdb|=Xy~p|i^TmuX zS`h5_ZVw(3SyQ1MF}vL3SNL7|eH?qGjqp)0%C_dUyjxZF{4nMD-y!rrtW5uUd35=( zB>!w#{wr4JDI?@(jZGRmSKrl-SKKejA5q+IilqOA(gI%9aZ2_~`k|`#UMc)fQ4Zd6 z(gfaARW8>1vNoS%%_awk3}E;`OS)6}!WzDJzzb{N$e$Pgc>U}g7jvXTWZ>|d4Cnsk&@eeZa|2gmPKbQ6Qm)PeMb-CdHL*=E|J$WS^ zqUxj_v^x2j{LAc&w14s==|;$ZqVycp3LMnb>zx7Uy^zS_r2^2hwWYKp@^X^$R05{b zAN9i5p34Dx>PfD1w3^x*C*6Mw;eQiF12+^8zzev#c3e0pIaE>7*W?3yPX3!2!vFdD zMW>4=JeDnDDMzr%!VX^Qo#}w zX!_!Pcmk}8LTk`_a0_b^A>C|yhi;AU4ICp^K`nogRYnibcCL>#ZllWb(;h_bv*us~ zwrpZ*ahL}gpDQ=zKPWWvR@9TR_Nn(rE9OGj*Bp$E5n2|TW6-Z?pAn;r#8tte7z1rs zYw)+s7wAOq;n`tR@ZJbzv|;)16hGb1$8K=ta(cn5c*Z65^ zk#}ajw8nP7$(~lM4 zjDK7E)(s*)K)jsyRLh*u^f){s-}(W{I&LKEr}t+MYKN`i#UiRq`n9|grwRY){~*H| zfYjyrPka97-(|H8jB3%ct3DB*uS9iw$MYkjD60?+B8GaCv2u9P-WS&*aD7WNrp$9M3bxTjo z$H`M{d)X4q_Pp_rJ_|J>ZzARdwIjEoWXm#3H!#9CSgb~d(GEti{gM4hV30$63;MPn zjQfo_N6mPqp8<+PZW~iP*L;I3=mY)r)qyX6V{IP&AB!Ao-v<$TymO%;fN%O3a-4Bs z;UmLCZ?`-~?ps2)^bhkg^BT{e=ZRigvIqY8o_RA*HTI2f#zQS3)+R+1CFa)u`3r9` z2f)5z#fJ3*Yi_=7RmF5S&!@;^cDB~}ysLe^I#dT%$5n?_hij$(vW){2^?O-$zDL&= zF4mXEdYh1cjXQ^8Fu_U6bCUn*K9X&2xrq|D}^!_ko?D&xvK6OCdt0OiF{h`kRVfoU7_Uy_!9{`}A#@aTKk!d)TN(i0hitd@1Ujt) zn6r3>m`z4Yo1RP?>*BO}TV6meEzh2LLz5FEYNq2DZ zz531d-IeEmvUc`)v3gngK0_q?f86-Cnp2)x-#~lmCR*=*k@Wr3Wi#Hc>XCm?4#47B z*L0m^cC!ZWL$&#mj>&hb?YpNaaxEQWn^ZhflAj!4YyC)W{C0Q&?Zfj*-{1k3^633o z{d^nt0b0MSf!GT;yy^S9L76`@m1(qvGLM!@Ca2G34{L{={zXv?)$SkLCP%9kSO0ER z=KRm*{k4!E?^ypkn0RP%W7}J$Nz`*&sc~p;sc=i3448w(wt%y;Y*<6FuR9M5cVhQHL2+bzzZ-^bCo9VBrnTT zI!CJkUy=@Yg}6F9gW=Pet-ZnS%D*WNEq|kY?{BL;E0qSR)~ybz*01g=|5&fr2NW|U zGy2MF=GyS{;vZUt6F{Sui0}X^Qd)AMAJ|&A#SGR!_(c3Se?SA^ou6#{TccoRty4M z_{+Rt2~g3?zFM>&@9O7o*T@geU&%KuUeUfDoy(WXL#tP+`IY5Avax65?8eEBB^zzk zv-NX|8S2ps@)rG4yL_Fhtlx*F`@fj&ot>9no%~6WtKZxr`~N5E{RGbcxBuOR#(~O>7@bT{7Zd*5wL8IQ z`hD+CH%pEXcVzXi@$bDt1_-C*N#p-RXJ_0j5>gN+vun+3>#h30=0nVR60ofgU0)z&ivu55TxbYVm^N!Jz-U znuk$p8`x*9-C7ERz(Bm^zh$uXapXDZw{{E`U3s7NYnIJC*P1a`f-hs&-Z$R~{)`{v zA8c`di~wmKT*mFi72&sF3}I!k@3>LsJwx#s&_83FbJl|BiTRzSd8?o9Pe^w-VR#aQ zZ?@?fNPb&R=0H4w>zJ*`qvEQF1=1e;0{r`4^J>>{u}uK)9;Ar>?0jT#TQR2oa{bhD zq}KN@(HPR$zHwIL_Qs4xdt;5NUf!!5(4qNz$`?B;J2pE`@_&|W|JM{d%CaTX)m6j( zbVcBwm-OwbtiMZzMOLh>JCFQF!h6lX@$MCWVAyoZe{5WKwIl=H{(ox(;UC~X=gE)b z7^-I+to=eBSKY6l$huuqYXCbW2d9!}`S)dC&(ZkrXv)`iS;W-H1OLvR{oio;|y8LWq1kJtaJGs&4>0u zmD>Ub@D4vCuxE{%Ys{mJDdeQ_PYcGZIR?@f3~`n*f+Q>j^B8IcEUWizIs-pI8oO4A ztsdVUc7^$1OAn$Ca0N!r5k11I;hx*Wz!RAnyp+te=gT7k|9%$t(>q#mYuv$%!+{vr zs?ycq)#d<1JXq_uUVeeH(We&6)i10M*SF;oT5Gcj?I1{UGWad{s*&-vY)1BskY~NlESwuuC!XRoa)&gCP~bS6=F`#`?24z zg?wx8j^si4SpDz;@b64ukni{)NC)|j5=4Z6tA~oBPnYihm{uG9Ku=pk_+KqKB7HTx zEpI5l<{f2f&Qvv$gC$vA`*#%~=Km`0|JR(Po8q z`}M^ECJO)L0#SRNcrK0)6VYZNyrSG>Py3<`z%&^4{y`!C;EmZGD(Vn~ZG zSmyE9+CO(YFBqwYEp6Ji{~c=^^drSP=$Ygp-~qFqU_L@0!jg#fai9TiV_snNa1Ayy zxc7nPZ2n<@{5ssz9VOeAXC6@Nmzv0$j)mQ2VkE-k8+sij`_m_XnrtI zIPWO^#ri+e-!+U@kOsi|Le>JXb2#W{2T?d8x!2?Lo*fb<>b1FSfDLrbhSEh|s!dBy zOZRGK0==N@AM&}+5(hX*JYcGF0T#}$$}cHCu8-7;pw}CV%r~boRdt^~mo3nxI9eV2I_Up4O%w_kymgHUbftkutC?xD+n-l<8Ns6NadAv z4#ZjKrd8TPGv+>|u_J(if7{Z&0=!u3xAbrEt&s1Qqexw^dX5Z%(8FC(0D12I! zFw=KudH)TP8A+e?4fXg~O1b{!izAE4#bf&EP#hriuaT~ooT_8IBThJ?e5N}5T)d>_ z_XTzOJ-BqH*7&?q+pKEdFH)I?-WxlR(|qYA(c3v$cJiQe^XWh;tDc% z&oK`wMyOkM^v}v=Yw9^_{u}CBqWAUCwIBwd`zI?Zk%MIw@ZR$IeXHAU(gb!?L@-*> z$QtShc)w-?eyaIDQid{sP93{(U#LyBNs z-aorOeL+=>7i(2mI3?^f%<;vG;qPl6ixJP*4X83U>h(T0{HIr}0k`J(;DYxvx{WP+ zaPwq7<;VgS4&K0t@y{oXe`0a}XC@Ki16!AX6)XVf#-7dZjUV>r+8}TP{(0VNT3E@) zdvrVio*lh#KK@?p)%Fh5;^RY9fI8~f-QU#Lh9iP*a2;YJe=GiD55Zd4dISq%Uc?m( zR@GOS|F{oWU-xaJyBAvECQ@&Xj9-h7OV&vrO9yC<&+z>Fyl*k3_@H>c*u6L^@1Cug zHc?qRtEZweBNpQ z&nV}|4A<-;_;J*MFq;prYJAlEzY)WJ%#nj~=KstIY@1*WX6$ePNBrc z&7bwYv1;M^@;ui#)Bx};;Qi+zY;|E*T_xuSSic78-LIX^ht zD6LP<(!LgIWQ-L0Pc5GzW;j)9@w=)MX{26X`)j`M#j3i0N;SXhL{W67BHW(BKHMMn z4}a}c#U_=yM5Fj_+XJ%q;2$Oc13=@l3g`|vwFtmkpFa&>um$L?E+eyq|4Fg~ovNR0 zui0(8L=Tmgi(l6K-<8$9?(Op7r8S}h6;(G9KB)fxd!oPT_xmb8+OPC-d2U>de5?fF2IBVB)%&!LSO6YPsU2fUb37(1Ym zZUU~7P%=Chmy-zZc7atzqH<9xqv2H?jW)%K7$-_|17BHJpT z9cOO7V4i|iuqtAU;qP6;e|Y4xu??^qVhw|D5aNFBRnxeyy1wp}G|)WX8QEd#?6+-k zdht-PP`dw5`2*R`=@#<+_3`O^XAI9klw(d~twY(gD9rOX;S`6-ip1+#u%vxFY{`^ZV1oldJS?zm)1fMq^=^@PCHJ!-HDk=M^!5d8Kco z&E@YeP=C+)n(e=7^s7Aafr>c6zw7(0CRoY16TbR z|5glI>o_N?w@;wW{|0Qtp+OYr~KQTexg zwqt2}`7zc1ua|tSRd!b_kB-KPCz08-|2O{8^W8C(nZ57&3>%SJ6^zw1orOU9`~40ZKe4svlRtiAiSTfpG&0> z%@O`@EXU<$rGd)yU8=g9S>m)UHT&oFy5aIGtmfTKW6wSR-0utjZ}txAgFgr7wg9g5 zv+BjGyn>JC)u8%$<_~*eA03oqxIuZprxktll4k@RE%eDt>xM*&N-bsA*3$f%nepxA zHl=UHNvMd2|Nkv<{@)#|S!q)FA*rtQ%K!C^*DX)fys2%g-_#g4{yhVTj6NMe+!cVz zes?e@>+e3G0sU|r*92J!q<)BOU=QsZ4ncKcGyTOb5F6~K4RxTeDz~W2=OYON(S;5B@8#IW|i#sMerDrNbyh*WRu}Sf*R)Ib`U!;`+nxs3b z7GO_hGn}1fJ{fC;F!C9R##*QmFb?h2K&x3c?+w1%{?2ISH>2Jia?Ai2(=cvuX#9g0 z;|neUuSP#(!w!HKUd89*3#~I4|Bm8)WLp5o?!jk+D0B=fXg*i#8rTPHka>W8ZNNXs zcGqKnYonX*!ZAFriN|rWdO^c2@M?F(UNw|)Kw%}=hE{`ZUOXEsrPlDmXMG>{tp@%Q+D@^{8R_(jF! zTj1+iUBop&{%!p8EPVkQ%h%HxfIL7??FIakStO?jFX*k#0K4cl?$bbB$s?j(rA@Uq z=ntv|m?w@mQF_nC^8aUx1)u`FC=0N@EWl35QR%eofxL6kt5`!Sz-5{xc1ku$d4N@t z5sGF&)B3^-o~Bk6z!jJtq;_QB_jHXn(zBevi?u~%3f{5ofj_41j* zU$8KI(zAJ;8MKaJACDyi{nRY;3>z_!xsNqIkjsW<=NXBdku4awh7CEcVb53-vlVj{ zu8es@xKiONW3#Zz?%_xux1BZP@4#f2v`hAVHaMTF49_{mMau5X*DU`nwf5Um>Q3{J z^q}+0r)xV`e&8|n`F*6^zkF-yC3W|^OSAomz?X`eL@TND&zbW6%tY_5*wYcebA5E^ z@n#kP_EG;qvi-Y}ZT$0${|EnUpgz3Df2@tMue{bAZP#cNH>+07Q#apUbx8Er*)jeh z-bnh|o$-kB%B6QT&RO|u!+#L;H~s#?@|`-rO_P%9Dq5Ex(p<@&)o%%pu>wFJpjP@m zT){T-|I7?zZeXxuC;;HzJ&ef)@SiyWNvko1V zvHi5}*64~-f6WH|L0y4flGPty%>$ex8*rg)!9C@<;s%>&J&22vSJDmg6%+$>C_c}x z$=l}-i2?LhZ-BSr{WWH(mt&;CmhpY|NsK}e1pYxtVAAN)RtkByk;E9bZf@=XO2GdL z!c8p}X1_*`{iS_3aRBVwJ|BEo1prabsd0X08Zdi%dC(v52uI*3*aqIm*>L8LYn;&x z=WH9mS%(@xGZ!D#%$~Ck2zD$(zS6z^Y+pj`V?1MhIDX(MSR^wU+Yt86o;kCcQo#2J z*DO4$MM=KeSglRu_nV8SwN&nJpw@jJk(`|#o2`@&Rc&|g;`(CW;zU*Z-k6NhcVDEM zuv^6Whs*z;r+SbXiu<1}pICmiv|Oo=*#2m#$204`)f!)GM(+uU`)Z_F^@p|M?;ZW~ z7yR>|vwlIzr=l(J`{30 z0MP%Fng5&0`!~_|@Em5Um^_EseGEfSb7BH!1hD2%b6t<^wCC-Ge|m#ZL%>P`=z?f} ztSH31!&Z9Nh`N=cx3xO(5M_41S2f`CLi|`+fD45GbHoHji4(k`ionkC{P@SDUv^Et zl~llz)`0Jpf0P}bJ)JJAdf;2*Z8XME%V7UT2ROnGfF}DW{3$vV{teISjsL(qI14`6 z_y-T}k>|>Ko(^`{!O^{aE_({+Z`BgdZ0_zj1Wm%#0c8C-Ctnf%`Yeof>zwSLe26j59@v|& zMTmm1TDBEFI>%>k;d|M#!2Y=#pdbF^_ zZkm3l`}mu9;62LupQF6r1Q=7y`JJN5+ddjc z+iFaCw!b5Q5cdaoxr2;hhC^_WO@jfX)(FJM1ErajaI-oGrG$yFP_tZv1zt zyQA)|Xp8dk@rvsHv6;r>vE}cgr-gsw|NjY(f9uz-6aHH!%O)qqearK;V#1D9HUuA{ z8pLPX>VBpr5~>A0FWKMw$ur-Gy@IVUi!^igwUrR|Zf4 z#9Sce33X6y@GV+7y(oQDxd_*H?mjN z6KZ*_71$&HI=eC3Fgq`OO8pkjQ4C;p$@pemnm_Z%w!n2L@O|t-?OAhiyjU%EMe*{; z2RZhrMz??Sc}6>on;aqUaRgx-g3n(~m>`li@3t=u9KT+l$2J6hZHY*GCzR>W4zGc`Ar|7U%lF7cVFky)H9N}tOH%)_UUy` zL_Nx9O8x631~4u@pu8}8RO6i4zkh3t|If!`1+W#9;qigxMbc5hzqt|GC-^7-Pvq2I zf6e}x9Y_!JjfHP!0lW6km=E|T8|V(;jr1w-&&r|jGG+u4{rAxSJ6H98Y5?E>Ff(eY z9QGnS7`}gZs0BY92*2h*8O(C!dBOm(!>N%far|j>sWVWb2PhWA{ z0$3RpKby%qH&g82Hr^$k6!%J6rH!&5vJ3J=^ZgDg9#+lIH_2S}cPhv4X|CUuy7%X( z&X3ihUeRc1Q$ACjKGusKQS?2&?g_2#y{@W$K2aR7pGFmP&bn1`&%AZ7_Tw2Wp8E&G zbxhA+&~8o7w!r?r#sPR_mf&}W&u*<6`U$c;kIM>duQ5)~T$nNI+x1jD@=DaVe4(=I zofThS6YpGpMcx0qi8uexX#9J;+CjCmBjRJqKSpzfe>73pK6CfMKh;pg|L)p}_U9E0 z@&4rh+y#_A0PFq1|I-zWj>B~SXd`dmTUg(@YMZ+%_Gg{MKGIBf6LadTAFmBSy;h&P zGwK%BT^$`)>M4~c(QL2RW%WlZ{<}aPfO_ETG!C9sop77@4XqN;A=^9uQa0fHygq*| zyDICNJ(8}P?yWUV_Emi8IvG&nSU-3qk5Q}w*d~hQG4J9P@Cf5YrRTHwH*$ZjrU%c) z731F#JNWdc;QyWr5^V_D1yyeCHpuod0|13=I4 zb>p-+_Xj?(dvzWlbAkF+pWjaRZU^1L z{iU8R7d;)_SvpA?V5Bau&q(OtzU_ZpuuyMRU2sC%~xMj>c;>9D@Yb3+|gIZ>5z-NpE zd&S@ZZBM+4IJLlF!`_f15R2HZ5Sa(`vmg6x-isCCnEn+0-?(O9>CHv;;^)XjHt@>5bkM;-FjeOVo+YX@o1@3R3 zZ*Ojt*LXj84~hWKVl9H-w=L+VeBb1{x$^VFWNVrT6V%3`i#1iuu(PUxzl%;PkJ0+t z+awz*x~?zZ5seq7{x>ZCeO}*C>l2PHHz+L>Lcu@1(%lIV{L}LnOUnE|tN-p{WbYsR zzpDTo{Ri|j8;BK0=n6nzAo#wceKLQ0Xy(s=YBvC?0DD)pKq>>w^6V zNVfgplUxV(Tf@J-IM1^`pKJJ@K})dr4;GBQaSUvS8Gx^#l|Ik$Bj(3e!CH*}wnG12 zs^?rQc_o>go|U!8AI+O+R`)IW@!7KJ$ExEjRP#4i>d$B~K34a6S+W1+<)zErOXo+w zXuj>WvH&lr=BK%8{=O6wIH2lVnC;(9qZPHkHp9otztK+&Z+wI0n%6htnco8Ebp#Oj z0O${K1NE@|HPi5UvHwvT#hX^MT<~IiBlWVoYW?p@>7w!^tzocjvVL+{{O4--@4pYa z|M#OdPNv7xt1E!-DU^56)g#|e2R~*3(cb_L)kbUp{CfqHdSN?M|G5Itu|F07^^Yn* z{689CV_nluiujoc0RFj0JBa)DuXY33Q%nGEu#2u6UBdgTqWWajQy&<0D6OOlfWIgc zFkjVwH^~o-&~}+LfC=&ja}@(@pn0QLB=ggC^M&dV`MTa z<;h-YTdnCmMcuu76^rvvveVM`$pM<@zesm@x-x%blmq5&zbfUYS^31$z0umyOyPZ$ zyzejS9nn@Recvme!8~(nez#S8N&L!&1%UH=t`FLleYw$XZLeklc!cWb=bZ&0`u`(W zXrmE4R5`!-b&sgeX9taM>RiA+{V|yn)K_bcuU;CZ?0OUN|5erf`#a69yW$_z`(q!T z)C`5brDdaiboRvmC?{kAxEjoWfJ?R2w`29BWe;=0Q;BcO?D0KS$Dn4@{$H&&V8 zWzvImZ8b;WHRTAJ#k1r2$(Gr`e8r-X`hy*juObd`T=uRqfo+p3tb?-$Rwo0S2$@aWm4JWF!+8Ha{vBKR41%5E+&NR*BS#)^2e>^p zj?M4ob6f}8g+JonTn0PB_2ii5E~tN4To?dnY6jLsx<9J_!1%KGqxj%trS#MENzLbI zTpX%(9(v?ItHYl<0ck~==jHP!3;Ppf1?DQ}^Qh+f+*(>3ZKe4=6RKIiMe1VFS$V&C z(%^QH*Qeee8^CNo=ls!>!9SzgY=Fo1`_Az57;9j4&vwBUfM>7-j`#y3pd0S{0orzn~nolt70aqyWsywV?hlrq7WDFV1kQQd%^f>ByH<08niS9Gd*#dJ&uguqN$E4{ym*r4HaD+Y0P4+|abisnq%&R_m2~i7 z6!V`wrun>Wgtc!Y)R{9gb&z9D4T8WVBOedS_&2+7v=55-BswFw#y2|4XjFkGaOVGN zyc*29*4{IVK^M=MX>)dLK9U)LnFjCS+|2OVcX+cy#2 z{%*>5&%V}b^o^zZKc>5Vi)Q)Vs{8z+=6=mprtTAY{~^Le zV{NGZtgFMk7UG1x>q^m9r3cD0;`*eS#^A>4uKV}I_W$MBb@7Fz=Ft&4d#Zg<=)+n7 zC>lIR{V)AX+`+6~+ z3RrHsgb&p9Ll-zqcX`?9-e`DfYjp)&tl2-$YTn27iUElMuGQGMt2|Q{prjRJwh)V) zk-eaK>ZEbuk?3Y=K(F|tIEI2QpIli2|)zBZ##Swkr0A@2V9KI#-fb*H5m#{w%+Obxg zhmXeJ5Iu$Y3GjWcGzfHs*nU_%D*jkmzvq&nY4@y&X8aBg;o~I_G}D;K>~eBD1h{+oV(OR0M_SYF>V_Q;@8(?qpTGkqtXZ>jG| z|1xs_tnA?x42b*j{GfmJD*Dm?z&<}g3!oa9J++k*Kz@OqV)O!{{)gHix(076UeHHb zfq_Clok9;+cK6TG_nQZagr#C8a(1?wSv9 zd){C30Upju*)nOXWPIFTJ_p}#{4*Lse^AfBk@0W5nDd&yn*qS5$pAX5Z(i(}09#<4 z9PHyi`D^6ym)Fb;?2&_)<~jH=wgTMZqs=GWcNne^JhM^f=!6+VMmPI40|5PKYhc|x z!e?A%aZ__RpMw@4cq-p7b?>PjIHTE}WCC1~$uAAXFvU*Bkln z@Zq`2n<(z@Bt>SJ`Z#>Ap03X({nFL4&$DOpLyGH)hQ)IEcy)6=RI1-YQhiYUSO?}o z)&ISt2%uB>l+xYN>d`Yo-$bpl_md+3t)k_m1e_%P$htFF0J48X0bQyJ7GoAQ3+>t- z+;jdz*57k|;p}Glj`(>TdSHdzzx4y6h+Q<(_^G=0>+aL&Y_1W$(Gu)~ekxnR|Dl?R zbX;jcwflE{GC%&h{D1MlfB*LkicYUyEutuLD52s9O_Ta5R{m?WWTW~A{Dc10g?#+K z`9CXy!VQ=OKt-VK06d_9?4_>~3M)0hJ%#+k-}$^(IV@=~EPi1BN`3POXAbWc9e>DNG(qi}maFvb5??fD%0!5i9VgBEaM z7H-?X{5|kxJfq)R6Eo-LS!@820!jl2v`sMcHtTnM!YkI>Yn+2ug7WBnfmQF1x&?Sm z;4VDxz1s5Fmpk|8Im;Z`HpA@0+67m~c7r3p4+8etTfjfQKGgUc|GwTW;~w!r@g=JE zFOq@s{kx?o4z5C&}*BQA_Us_cebY7w$?d>pY)x|DfD)Kia;xpaggh zyt`j}R$x#MwpXS9UFt9Xq>kH7<9uDA00zLuYFY4vcG4o-tNZ7V<>%GaXdSJt`S(Zm z|LqKhMHf}=rlTknK<4^;4iMi9dw}}CNtO42ad-ZL^RKQA3jp3dE9m!?z}NxL2ryql zDaEGHosGFcJ64qd`T_2wNBzaISSe^<{T-say=}C7X+h~?MF3x_8fb=4e`D1KTrUPN zU3sC!st4{CzpHAX0h$reyBMU-Ko91F^4GIUR-f*kybupnhXXhO_$LG9t+6l&>$j&4 z%o)$-PBp0OycQHd@E-7Q9nd_O=fFKIpHG7kuo3J6tN{M&I$f{>65Ttvk&X{~@U-Ur z#;JX{IYG^mz*9hSz(0`-Q44m8`G!^*0{%G{?3QQw@u;Q*a7@k{e7la{3_h#?$knh7 za9rVUWu_m#7j*|#2Ke@TN9%k>KflpisP}6j6{fG&_m~`iq7|`DN#57`ex>Z*Y^b_@ zTw5GnT%#U;^VKJ3GwFU0OY!q6aCa%=w?H<3MER>yv(jOz@S7y=KST9l>qM=h^`iNj z^*>0Xr?-BnAt!6)Iv-+x*Zfn>3J(C=_-52UD}avf!*lQhtUxW&_gsEF6=R?MY_0J) zN?HHcr2p+HKggI~Up%;>9uoy@S$*eLstM?;>Xl{UdFpGhdNT8$2LDaJzg||Yqki!J zWKrA?$$ijJQJ4Wpl|v(a>ka+`{i|130wwNe4gi~D0y2T?E&1Q|0Ym{|6=M2}vvLZ# zKy*K<0jLD(qrV5J4*1}@gEYh9F!8N7>yC-qmsVE(=POx&Il}w|^#i#^K4QEofu621 zgIp|sg`{gbHhVcgtT?Jzub7rM%TLV4rq3w`yI;Klw^v1p^MGUmhz2&%m<6dJt_HV^ zdVDKrt*>Is_y;GT-wXlV8-?&;u`eV`rB4eq`1ZQPg8mH$c^4#&YB_*3k`-k&_HyL~j5<=tK}|Fv4rb?Ics1@elVW z;&;>!1E31n=qD0z9U$!Al>ue|Xn`9jYHFnG1!L+Y=GI4C|3Jl4M=Np~BulWTnE(D& z3vh^@87!scr@E2RvC;vbR3>nt_#piOuhn*wM#+8U$HWppRyEMzxJPnw`d;>Hezy99 zu2YQ6zsZ_s{nN3@O3B^vvErXCmUw>9&+Gt3d*Jw>4gY2&I6DYVKpmqzuyM2C-=p3Y z0miFQ<@bUL{ts9MbKt}XXMTW{2P^=*+x8`N4dHA!b~q>h#qMB<@Y%uR+5-42ZHJ6W z9>Ymoxoo>(yTV!U8k~TRMjROr4*p?8oR`(ha80m^oC}}hokUUaBd&w@X3hitQTlk5 z&faas%=U_h#}6vk-!>VV%u3czuT3}4Ue7L-@4uqBKso;hv!3Z1$_l{ZyFz9@NC721+bO2PqF6x>+S)FP>(Cpqm8pY_{jB(F%g#$Fzcy28ga#h_0 z>i)4!{As-AKNqdYk-4#qJQjwD}R^~ z=xjjX0&D9%L6(jsiir*9E+Y|v@t)J1F9X3Ur@g>y)G|-%&qmp~mRq_Vv9D7pn=i-F? zvFwMmMS8a8INz={CVDFO+^p*TsRgj_g|&MA9OD?T2P3d&4fqed0BnE&{nzrPQanC>UzPBOC3hrWC+*XTs`pu#-H>lxj4wtOdGTR(hAMszR*(GWW!FLf7@>cb zYQ8>_z2B!iz4U#wgI4mrN%{7Nw6;%U;lGGxsYYyfjZxN^!dHd<-p=vi@xi~fe)D&$ ze4(lbA5Wa`41ZAi`HM~vA_4cpvG?0m{l(|heJ%ztRIj_o1r`AOqlvS!E(%~b*@xSr zHOd3yU)5dXAH}c#-_L{Csf(^EihL)1AG&=t5?;~nxt`7SJzW6|{%rw_Zn}YSU91Rt z9ds)2qiH;->tMcG?vD^-(Sq;(^|&j;kAvp3SU z(=(E#RONV@^yjTq4*>en0-QZ}{txuqzuB*16^uQ`IGb@1;&ne4ShTByYAEAXBaZkR z@5=vZW>}UmB9?9XF>GQO7Kh}RACEGqrclcvPddHUE zD6L#NC|WEXcy!%^TGz8)J^ofu7T`Sj4XQ|Bsm$|bZBMHF@&0%)@Ne{^^PvK|yEn={ zk*C!^=lQ~8>_M3G%X4f*0Ym`ZGz#xh*8e??)jr~{R<)hy_B=O~EqYsRuQ^FCN1e+< z3Cphj!`GwwnfZfvtO9HRKEQ9# zzh>1=qLQ|(di_1c?}y6gk5x6teah#&q?+k3G?Vj7&7HVK3W_bjAo2ghWdV+t(zBrM z*r;{shtd^QUih+n#b`wUm#Zf5T8*12;so!j7NEWK<@=I2>zHp;3@vukDq&so5!rL; zTIq0Uv2)dHZhtY-Eye$_07R)FhGwjTbgOk9(cmA{f_;#{m^UX6m@v-C1_bSoXZ)vDQBE>B`D{5pSJb zk-VXG{q|4qOIONM*U`;3z%zd_p04E1@Pvf3^GO9nBek=Z{f9Ct3n9N;UjXdL< z4!1@=)_^F$Sce;g%pZ*3H3B@^N__MRb^7?Q?g7pG*|Iv;nc;@FW9&1}4F#Z?UfW45 z;rr;2@-_cNy5Aq!0r)2~*In0eb9sJxmNAcSi>hU1C2;UxzXbnayB7EJUo94Z^TP+o z2{zJo>?oVEyLkPH^7@ynit~QuQeV_8%2%~&+lQ)}{H?C6UhdR)Vgb+r4pjtz7I=*8 zZe4V3v`1-Gq5Zw`0x|w+vH;h}|6g0J1(>d9J}p<&FY=9ewk*I_`D&^u-9f8_bk8r6 z1z1P&oc*zp1;4iy0*m-}cu6?E5y@F%J?ytRl9fPf zo8i;`e26}<9{7K+66Q~HR$(tjy}u#n=^51a^S(M}A6!8q{!Mf(IlCs(`u7y}Z`JA- zOC|l2hm&>FL&f^PmFJ(HHOy~O+<%Q$_1m=AAfJ^EOD>F)_({#_9$~+5uTOMu{*Q8x4M6#K-EXMs z3w9uA{C?he56@u}h!N;u+ehPZnnvkU)x2MWs%NX=-&p_7 zevkjBTSuEE?4S6iv1}#l_plBabDrvD_weoJK;Rtg+xMFhtfzN)9xz?Ni1qgto`TYmo~*~_`rK1y@N0X~-%SgiTeW5f>jlMO%tJVwZJ&q z9;4GA(oWe3@%~-&$F#2JC0f&aL-qE5Iz1)1B+laJbnnJV%N;A`KSS}|UzFvUUT#qy zTAHDCyq}ggxLY%7HjKK9`~RTYzoUizp4zDP@yed~f4o0BAE<=|SjG2mEBm1afc&35 zJ=N{t-Bo_PD=>aIfmMJu@>$0yrhi`1=}7scCe;xS+qDHC<|VTA+Lz5W#^b1a>8^j0 znx8*<{@Q=kQnDH_6@XU!8|zw;1MMh_$U4TXVvcX;`v;EiDnK&=l)lgdysK)o4pc7x zY%#Yn>e=?Nu>Z6?|BJe+kBSA{qrA=pUE`Z&6`qkbn5!)B^>wF;`5!9Zf1r2(df*Vf zZ~f@0=z>xQA%Br9z#OUnH&^`zV`sYl|6H{I>uVjL#qkHpTG{sbTE!6c2>l@6EZ;l3 zJ8hP}B{teC$&$z7bK*YY09LT^x%BO#XNP^8Q3m$d@VVFkn6Ae^Hln`z3eQ-*2YdVk z4iHdj9uBW&|DeW}h5fP*Fc&m8GlCkk0P{5~gk1vp!T%c5<`4GWRuOzGScLfjIA$+w zt{=c!8SPjl>4E9=bd~Hx_4aO@U!*<_{Z#F9t?DyY$R9|LPtH<@A69%GFD6H=?@Z-#zt()uXUn^k zN0sI)%Rf&eW4hw*b)zn-_WeaM_+a@FB7f?Atosr9^W!|9^*j7MSv`Ak&*8T>cP4_^Z5TpQ3$S;mnXuP@5-9HzbE^{o5T|C)_z*A1#35(VI3jnSk23F>`o zSpVyf=+nV!fXw;vEQjX$_FU&y!hcxDC}@6Qo{e~)Du4|XGtdiVE8VGnx+W(}J-uG_ zypv?hA5_<*Cv`<<>CWCJdvJv^re`W9I9?rGP7*sHE_g(IYmC^|U@-vd0QQqz9i&&M z)omKhRYh4T%B~+swX$8?|B=IdwXf?bdJx-UE|?`-v@En0AtUOzy-_~G_w!q!2;3( zBM)reHAH9xc+!9=TL9zN-W{wNjrPc>Zft=ca3+C$_%AHpJ{xB5@4|1Z{60cJHVnlU z0=~~au?MattgrsZdAs_F*a(mA>%e~4xFS~gP$p1N%%B=b?eDD$pL>+&+djE9DW!eV z>(bZLO4c?zHG3=DI-i`ct1AD8wYJB~MV{Z69+C`=zgL!TO4Wjom4^F>?%ucR_b{(~ zaQTT+r0%|N%U8^hF0`T0-y-@+=s&Sq?ThZ``958%3V`eLQ2szY8_eHX{a^$5-?6^^ zJj|YGAMAsEHY)~jgJ2Q1QZ>p&8maR%CQp^kX;}4n9^?3bGFtp52f!@A7E-i3|AWu< z`|EiB&(G3D5w&k~eJk+4nZ6q{f$7!j_@8g?I$vk_;R57C8t4 z*9p~k$ba7>1oQh2{ePpLKSR}$hl$+}kdW!vJNBk-x10I9w8er zP(0uyJ=-*TB^ps`E4}!G@`CDWfj2Kmwa647T^rF$Gh`cu4n;$wdfnI3;dhggFt=h8> za{}83+bYK{SQ{SM)AOJ4?U}oHc)lU1w*}yw{j6)KdA5=A{QWhj?=7t-d$yGR-O~Hh z<+EL~bF!PV`?F88ZSs3mnSE0+zqmsyHmOris^KuXsQaVZ&%!<@~;@n<@sldsX*iY`V_hE7OBpqJA>~@DJL(S?MDxfc4t~ zfOVtX>b@g=e!~u&_jhivS2gl~L#*_2%}(D`o{j1@`#B;2YyiH_6)kkTKUbYA{xg>T zIsa!ZbMO!U-((5?nM2h|kLmwiFQl)p>){B<9Y4tIZ>i7q)YaNYs6AP}{c3sgTcq>f zDf@k=a6d}d@?2flV}VY=_fOLsj$7GOVF z;fFN$<7KTAu$6rOhq3_l2)?;GQ+$f%i#)G9z&9F4tIE5l$K{y-NPr(Q_vG5m+ff=o9Z@)+uGtl%-^?83adrX8W(#<2js+vZ?}t@>tYu&W zYPQGxfjl5bXAAnGl?7WC_5?2h=P-L_?lD^$J5cMHU|Y!bA&-G=U|vtp_;Bfc%<8!# zSzY!u(pA1U`zXuv)$`_BrTqnU_L^FJB-Q`7e2zMNY^RR%p9}rB3H{>~_fOQkjyGku zBX#{ayZmWs)6(ftNi+TKmnyuj=J;y}S(5|w{DHCn z52^~}mFSw%wwnL*vGD%1vVpg1yG^m={nd)#Po)H|p;4J7za@>bKGFg9QFnlu`L6j7 z*`3*ttea*Bj!IWcPt)qh7b;WTq&n{DSV4~v#<%?*Sa37|KCI%|vjzm#|Hre|&_NJc zcjJ%McR(ze1?zG_4YaMWq6oV2=Z?~OKl|c1_UmTpwmP;Y*dTCgKEU2XKQPYGM+(^o zjzokK=Kt7Mah|po0spoD*d+7?+rZyj!r=Mw`|hMfH=p+L?yB#5Dqcr*{U0Pf6z@0A zMrU>TR;s-?I=?V~Fke;?*xcf4)%(1f-;!;gZjkiS4F9`@`kRIRak_8!OS$<=75$f# zzb~~_x137!q^$pkQhc|F)>WHQNbdjgP0x)KRuLryC^9_>0Fi0ogPsZOE zCnl(|0IzgIH2``6mLpgXqK1z0PM65@zo%$)n2u+?3(PypVz z7GX<$C+r%%4Tz7pzW9IY|J>ipwvW6%UHyBD@gE@UpQ70PGWBS?LEe6hnEpt0Ogm4N ze1oOv?V~%{Q&-BfG+eLYo}=#BLmOaNtl?%=KTn?k&k{o60tfsBWpHS496YG~FW%YJJoc-wd$Vx7 zx4n9UDjv-MJhL#==s9y{1r0A9)B`Z?BU!=Y{Q>=01*4xMfog;f_+2L6-zpiMER~*+zL#z< z&%cg*{wVeHou4mP>{;Ah{8}WHk;Ma=k-2gDn_`98x>w`G*lw2ppC~2g1+5aOoX581mYgO~N;@?Rab*3M@g7BL1Z}ktfTj4ji z51PKcJ&HhJ2VftDz{aQA%RikiJ$k-+4P2?Xw4r=HwJyZC<^cGA*S$FY2PJ>ai~ch| z2ma}7hW#`@YOBYr|4l6)RgbRY2m93VA1;=5x{!W}IR4eb|23-Wy;SvkXH=EE0a9;v zTH^J$s#;tlKFr&oQrmr7=oPfD)^VRwtqyopbwb0X1RST_&k@4^L5eG8)@>F29L+2p zrqP21cv_ueCTdKvQ4u^x%;1;uYO447CH_3AWb3O(;5J3uVxfFe7xB_xvw7KBS&{9P zPSpwsqvgf6l<#MAq|cZK3-u-013Hwpcd6~nzCTm6H6ZYUS!9ZOe7D@HFU zFZ4rQ6V35mGkQnb(E-9AeIu#!3l%^34cGhGXMfBH-1A1odJf-3ee7yhph*B>rleWI-QLDKhjSaJu+)w)6x#s=QGk5~fV zPp{cPzraEA`*&%LmDiLd9HV`ms3ROF3vjS_z*%Ajdq%62=Bp<76=efIP}b<)ss$J; z-!e(rz!%H!DwDj7l&Npxxyd)_a#|;#w<>~CDFFxM?bIVA$?waWW~Zk!lXa7^aX;0q zu{yQqt{DHuINpz~Ubq1*{5Cgm^bXdHeb8_A&i~%Xx5K?1H-K2)W!r#PWiyWl)nP*w z#A64fgV?||c$Rap|0n*3ZNNy3?{EgTIAIU?`FeehqZ|J-@a@WpVx<%JVNST2*>f@=CvAw|v=b zcJj22{ghBYM)|&*WTz)7kNdo=_mArBFt)r}d0^?5XszfCMcj3Y`P*q#kN2zS?_JgV zsq^*helqL%QalVgg zf;KFk&QDi|fIaiAwQ~55+4eGCSx>9bXQEnD&H2l|?*Elg7c0YggG;@N$(aqn% zq*;6o|F!`}Kj;O;czlqFT>z{6PqYDx4|{fuPNd*217WtVIY6!22!>HZzpaAn58xfx zEEodE^?%?S4q$7>HwWjof_VS1(KVr&l)e_#Z42d1w^Mch&04)R#n*7D)H|N{=@v zA6c4Kt?yf?u20QW>$93x_q;-i?~X!$SNVO92`m8k$CDfVVBUxie;vtt%z}0+dX5M{ zIkPjD ztz1R$@9rIr_IFoh&Ox$}gXQPXP<_w2+Rl+eH$+VR5WR+G18?&TOs^zr&Tk7I_`a3D zVAH8Hq|y*(v9F?uyTrrhNe>z&esQ#7j00tz57bew)U1G`qXwmSN`tGlKOc(;%ur5g z>=OS1yL?g=Wj~fX#Lucj&-7Bva zpXLu_$EW?ZCSy6CCG=mX?FRjwBwPKQwA-)6(e5m_EDtL^DUbh~YQQ(p-#vZN9q2|uiGbDsWhi_xV-;oiUVF#9myS10>_I7jMv|($`L%N=%9(# znZG!>Ii06Iq5Er<$-Rp8i=Pw`JeLpC+M!*uVOlwKGj$3%P`(Xpc%BZc_K*{BR)FW& zzzJT{^|L5!D0Fyv_tL>12UObQ+a6#Cz`y-(;O}Pf_W4!?tN_&5JBZ~NL;zO%i1s-L zw1tpkSS?;rv-v`g5A0E}K~@Khf9LW*e9-v$KF;^?-8Pl?$N#grXENX2|Fw`t(pr5w z_SCAKGc~{Mm}HJ-^iD`u&(6!fQMKg_>g74Gc(&L;*x$FZY31r-Y<_?=zcsbO{I{~q zV>Q2z-fcJP&P)^fKT^HV=hAK3moF{NQ+;n9EvuRS-PGSB)_QrTC`Z&yct`0+>*o=3 z)A@@nU`$cxYbNj5-rn7>FuH6LjC%M!ui*XtJ}d(GcZR?2pUpU>vpzpLZ_mGR&7`!4e0^aR~ne|MBsK3Ld0Rymm=;zt4f!-W0ArQ7c& z%y!isa&+dq;QL^NJJaHO#52Jf@VvQ!dp7bP_j^0V5W}SeKBH}#qB1xDHG%X8I8t%O z9O(c{m7XdMQ2pOx*?_mjDjyK;Z`CMcn;?7euqsQ}P~X`jlXKJi)N}G^DO01>d8(V{ zpuV9z)%)3I*|F)Yq-k=G6z!H(#8cbKd>zKWS-(A{AH&zp(4Dz=2Oku6YXBfQ#Q8Or z9`KL<4fwae$DjKdVgbCr?S#2G%s(gq#2T(u*m%kN@aN3sTTvUc`LGq{4~|5f9pJnJ zcLD#kx(4GLWk2|QEFPQ(m5*L2!~}Hi@2FMP=;ia0dRq)h-buDe?@a5n>$8ehUYLxwgQQZH*a+mVeTG6j> zv`Vy+vVGgh_kSn+4VG4H^n-fF0jLlDAN&V&gXiG8f6whb&dl_Ahy8!RKhKZ}q}H#w zSgqH(@1SUQurkjt3;%a(jJFckrh1d@Afm+1F-|V+iMSQ zBa4FtV9vlS=>X?wM#e!^74V>HteJ<=KeKXLKQBN{%MMih6{tktBik`YIBJ7sp#n`EA3TQ z9e06!>@=3z)_~u(3<2+cjXTI|)&oLxhi$+TFpFT2jyOek=2cmNu{wjJbWG0wj_F#0ir^GmA2JRH&{H=U=+%(xPJvVzGzqBYxn|?uR zz}m&5`F8mf)dcO9-jS>=C2){NZ8M?5Y}nmGz>X1$udd5>c610gKz8s>Kzs! zWCqRuL8+r~kQ}slkV=eh4Z`o?8D}C~vtu;?tAU*eH9}PQd8HuO0(}ImOmJ3aF;?@~ z8ymLGDJ6)XVpe<#iEJ4KbM&neQpTON&Se`d3Lj;n2eu}}UV?hpPO{F|U3J8+h~eGU7k zDNY(J#(%&PozH&XHrc*D+$H|wntQYV_gx6D*e=(4H((X8A^i2TU}^OSXkYq3O2E@nmA(}dcuroQn3JwDRGCgyXPK|dyJ-ZklkTTJ z6z9kSELVA17GOiw26oEFWOdoD>Fw&;I#KI}bkxX)^|lZito-3Y@wK1_#%(;qx4|*q z+L*L=2CL@s{0%X^BLKf*ZckJZ9y#Z3wvWBxQ?3(s#Lj-ODx3xT2mh`@wlYW`5;_al z>o0x%978nJ`Qz2GX6}Q|-iYtvIF1C2e^h?HaSQ!so$i+6{9u1Ksr{EK=KnEnnVgW! zOjbybN$01#W^=OL^Jld3(plpD8&&qH>{UrBJ&LXK<+6{GpVb3oxp;xpm#O0ZH|Q?V z*Y6=IwI7P3EmlOZOZmQ1xpcf%@!3M%y*orJM{|_b87TDI?>k3CR>*pgM}#|jFfu}% zZ*|WV`yN+T`#gqh0qpPH&(~uV<-k^h{ML?&W^Yuj**wiYy+>;HHp=OTJ~rh290R!C zFXRBw0&4#8U;oi1Qul{T=pU@@j90ibk7DW@))Aurz>jvLD_&mm+mU{ zQfBE(#g+?Y0q(43oSbi-SXBZ(DQ_zV`$N()J3(tt{3NgSUU6x$Me%svKA)T|rH-Mu zC95S96a}=G-nC^_^`?_G-qLD$U;?hRgY`Rl2gTS0*W!Us_`T7}Un~Y1pfhrymrw8+ zzXwzjb1&`@ux49mv%Y6N zAC-gGt!jF8-j>zx4dd^u&gpw7;y+ityXUK){cf5+{aUg~dQSRXdXVyc`{ZxsU5guw zFN!TIdsnuryjj$#qu*WP{f|jU{aU$~$5oGci|zsIc;2Bn;0@*bKUH_Xo5~%uo?k_k z{%ytkyF?wen#a?+r~Q{G{=wseRab`KL->zz5fJPcl2;g6X8l+Nk2CxE8Y3{v^k+Q= z9S5+k$3?0qiBx&`7iF5y(m6D!TSa}Xo$>c?s(y`sw102^UifeN{kihHL*;o772n@O zHk0g3rz%3Z)*-)QG=qL4-*>=1-mlq)+dliA5-B*+b1sk=!0+|z(nBC zK7J(mG2J5XQY(=*>)kNC5VY z0to*HWyY{|IxK`O0q6psA!Fc50sJJ#^;B#K&v?!|t+SuGmAt!?)X>q3n~-Z!Rn0SO5#KnO|N}00{R(&A;*UeV049%M+{(9fKgbp0QjJG@?aO%eX4aPj*52G zYQlGl(KeUwUqu@oEj+K?^V>bY)iYmV|Nr_v|3802=Hu>H#eR3iXL#%2r_JuU;^7K& z{e4%=#{%|^e%~W=IPNf;vG05DRojey>j0fJItB{s6BMJpBO5SXvEn&GzjesdWdSZ% zUGVDBO;OL%FQtnV0sN$Vz-#hB(=`sqDGC^^(KuD(^40SC$_HMSOiO>rmMWesR;#R5 zd0q2VmM$*Lzsg!=C#4Tb3A`^pF5XFTKwIGgK1}tSGvc5R#G$V{{tg($=Nt3*dt=i% zLq3Cb0L%DpUiEt&J2-x@XE%qyH{d3c1vdX94CK5bwAu6-vRqKQq3f5ejh%_bNpre zI0wkMt0{qw{%sN5$Jf36nDNJaAMA-e%(mi@FA4oOMw6mrRdw{R_+$^|{iygQ^GDqu z48V`*_Qyv4?>}SX-{XJg?Di1$gGy%}@4En>;yzfHG5UEOHO6e;SKgoDIjnTJn;~W} z_w$`~^pBmPda#qcLtovWaa9ZOs^$WZ7jrvRn==u^6d_Ei`>}3F)Tp$ebecxouhN-6 z(kekSWdUvyD;Og-db`Hsobs}YX!|CIr=zo3`E|wWl`Sfz%A}&bIt477_sgzHKTdik zZ)kSlfGP{H-=qQtU682RTpw)@4+`e72(Hw#cMkXmv)1se9pK-Me*X`8y@6*CjZFdT z;aMyOu>_pJ$Orozw_eZNM)-40b-t5TnbRvdBH1NbCYhm5M+eFVw5^`G)eNE;;u)&} zL<=2d=MIg}j<1*HxG$a&KO8@zIejl{oz7U5kv)==lBvn($>!;h^wqS7y7}yuzmm6A zh41`g<4W&J2l4*3iWT$u%An4Z{rN&@pCp{$psRhew7-Xh`uW2CYl;O9FE68f-&&=K zQ9oh7vwqf%-cx1QApM_-v4A%z{&+*8H9te5wZE?PdjL_4f0iKX8a(FR%*ivxa~6Xf6=+ z0FKx&?jjT~j`v6&NIpuQPfk`g<4xIvv!!NiCzN;4_Xu17EdX_|v(&xgg#5?jk2F`R zNS00hoGh(=>3@<6vZ*>H9hi(zm0w-jQBnWf=}y_~Y(Tys?_b=jd3`N~{!J>ksfJ=^ zc2#<^YJ4}0-;u4oU0(l2ZCvN4qyoGr=KpBf{31fr!-wGgOA~4Lr?;UkIn+NLotogo2r}aPg_2joTe|xF+iYZS}JlP^T zE;?MbM_)=^dRf~nX@P@P3(!vU+t#i6fAoLP`!xdySort+%YEPqf>0hg$3l!1tginW z{kF^84gU8%80tSbT{?#+CTqHHPo+3@9!<%pI445PRaMp+N7P5)3nz0 zi%Vwqqqf{qorU#|&_733cQ?)LKdt>v|w6u&mnHp2fpn%_54Ix;hSP?Fri+x7aW z@`+BSB{piXwzd0^}TkC^|t^^*U$R;|%c#Q{$#A2?TiqOOtWKVI8V*@bg8 z3vq(hiQF$*ru0JTXjKHJvH+|dc)!LZtA~!P`lh>;Dg07e;FS2VWJo$LdnCV7*??x1 zN@a$62F}(Bf@fwgq#LJKXzhTfIuo|om-<{5L_J2Zk&Q$a_Z>t z)sP@QA%&-3VZSPec~uiwT$d;!nSG2jTszw468)O$}nOD4}Xx-HfB@Sb>c<>xx4 z*QXDsQ`6(r_xy$AqNGolZ6lS}PNFGfd7>)Sxx{JP2auUVbpGpIU8g!)n# z0KAX!#8?U{A4vD;@T>Otwg8MVkD|Z;7*8SMXSDH-U<1OaWB;u++IovIK3TWCY7W)ZlWf)<$mFB!?V$BdR?~dE zJ<{3fpR;wd<+G2}>8wXump-n3hl7%>lP0nQe^N~I7j3`9D<|EOGt{B~t7O@9m2~;E zlrB`q?pev*^7#`rt9N$tjb`@t)rx)Zq%E>5vgPyZ)V+UVv8-nH9i?pF<66CMj;j2w zO`cLz@v(H(TXjvZ*YzDI-v7Lizd&)^CdkygE5rI$eNMp>|>o7X(F?hy)o$&<&u%9>I=f7YfY#)LxV8m^s8q)C^ zC96sGTdc~TLu7+ky>Ra@0B(0r~&*V68>HP3voM$H@3My zp?|WYEPfl|Tz%JHy1!zG$NX%#m)vJ-wpajAZxt8~sFTo7W+*U0)+y_yjNsW~YR^dv zct$lqSBd|hs%Op@led<02j#XLELukdO>=)zF)(1sr0Ml-Q?Be6|LFxnbiJm)XncTt=D;O_K7;FK9l#aCjak+7MlGg9OKiXX@cYUe#9jNke zty=$AG`sge-9fM7V|EXkgZB>{-<%NUA281&|7UApZg2EE!e>;4M~qGW|6`2WR%5BZ zko`h6>;H}X{YCQp;2#c4wb>A5lO_rOPe^4RC%>|r_Q0w)|E_rduix8T-{^;};itLo zU_Kzf#<*;YZQcKfey+Ihe9&^t=wNs?{D&^@_6n#0*n=+OY(wPxpVdsjIm!r*lJ{pm z!kMxGBV^M*ml9ZC`ml74#^W!lJb6iIpDYD%q_BT^`BK?{k>aa&h#4#upAol9I*a9A zkRMUxn!UPBWyQ*qnjx@UaZ_He-gO&kJ@NI^`;z^oiN7D;rrh{$inzC|>Vl|(WYw(< z82@0{^>#J%gIwYQ6nIAluI;z-?@Ao}zCRgs20q~p^xLMecR!+Pr?t*yO1wj|R{DN= zTz0p*9A1(Q&IV+gW((6v>DlR^v~9X-nurVhmPF~F()zT!)ch&w$LiXXXCJF$??vgp z=~n4_=?dve>AGq2w3pWDemq?_J439$yJkx-SDaA1S+uSkUKyxNNv~p;yivAPx=M0H zoG9wQL%eE?@IOi%;34s?g}UDNmk-ezUPqTci%!!@9$)DWeOk9{w5fV~EEPScyR)yD zHS2eFt;YQx0o-};%t#3S-WH#cgV*MLZ1y?W1Q-Aq#{zhLKmQNr!zB~) zO75%ss;-EB7Js~1qo$wE#B8Fq{LBur0mqA>+%DVjgsM$OsQzrL|A+oR^f>vwwGQ5& z^;Dc|t?4h^8SVwvpk{{yAK)JPu5*vg(0F&7s;@Wqb6&u@pjAP4e{HKfxs&+XNUb9H zrnG>Es@(!l)~tkKvH=&$g8x)EJnCGk$kQ*syz zD0huNkKaswO4rgF!fzKnD*IKoS7pG<#p%Tcsu12Oe^rS3F&!gLy)Zc^X((mzLTPB$ z1jwwDWjC_@n~b|V3c>~K(ee78XA8Q?8W8z|c_IX}0%~z;*?Bkx7KA;xiiaFz&>i^O zLh9sc%GEudj7fJH3=a z+(-Qnnr2I@EAj*BW$Cf$5$Q?l=W%yBPd&U3R6nnF>gD%i-lv$L9-d9b{98#K`6mA~ zdog`bx?&H_?R%`M_m5S6b%N?GpOD_NNPKIe*6yAu&wp36z2@`2Ax-VWYG;q;>h8%( zT6+uotm5HXUssB{M>lsqpdZ8&7n&FHipK-~KiCNvXox%QS^SE9kL^V8EVc>l#5<0b zcX+2R(X8V|s{6e{b6a+jPci<9KFB?7t4fz4QUs^V0^F~TcK_7}{<}Ye-L*x zgPX|`2e0l}AaF4AGHe0&kh|l1X@0<7{495jTp%NZ`y1{%kLVIi?{_N!TPcP-SbTrF z7{F_a111XhZ~*dw=ct3zQqkDx;L^ro{-3HI=pCtk(=}pmlIOpsx`N;}dc-V&ae8HC ztzLC}GE{Q}@6SgSn~UilCmZmm$^*s0#WKYm>S|k`f1cfvZ6{Rina-)!2%H`7D)!w< z8!P~y95U=d8MF= zd3R4&Q_ua6vai&M>+WoLHZW_gH4na0{Qh$KSb9%-M>)I{W&1W$ zwr{#TK7D-0>zd9Kzj{}^|3&5c)+nD{`YsxxnSF0dQJmY|cyPAy-ImFQlbA$Ys0xZhMY*S+Ec zXDJtOk`%$S)iq$9=$Yv9(soj!Kdn}uKO=5BNjku2v4ZQW*bkj49#)ias4Cr;NtF4Q(>dpI3`fj=)U98&uBwJZ%@09h+PEsZB_1XAr zN;XM7kyfyji!5(BC2|lw}((^lvBRdq%Ho zNMVmwhJRn5M?}fJH|saYXB;qgjCVh0#=to8XbX7fy|w^h1TlWPi!V;8`%Fs2YEcq> zDC=~UR-x%B8-(}qSY%Y=%^0nn!~#zLf9U@M^Z&gq0O!ukzy-_!0#k$Udxgc{+W=cw z`}ta|7BKF+2L6Nh_XzMPKno-n2>!!Na4Y~^ZK(2oFV=lf_qL*e2~u}X5qmpPY~ZoF z*3n1N#8PiX|BJ){-jj!#p_tVxP~23l45Ty7NIkk!{I#j-->yz3rjKXy^4p6Jl@lw+ zRN7TO)fzU(6#Eqe)JwdXY6PCi_sZ|c=A}O-+i6wN3+02mSL=iV3ozfeKPT3Q!{f)v z*}>&`#m|}Hqw<4&Yy%tuD}v6)d-=4Zf-S05NT?3ZIW!UXKU-@4#N_0(wc`FaviF7l zh1qM_ec9#Np#hFt4&Pp%Rx9uK(SIzc~75b^Dd_Zy4d%Ch8 zNL}e#o~{*qE|uq}f9B1yzi(BUe`ERD2Zf}5LSXIg8UG#&_TKmb*q#|5|9OOAAwV;~ zLo{i$`aSq;k3P7hpELf=5*TT%#XF8vH2+)OCh9i0l;#`XtLl;Cr6P5#S`=&xd+{Fl zi!bZ&|Iq*6q903u-Q?=?!__k*;Qoa>=KE__<-5Tru*zI-M+3Ih!Cr@Z?)P~#uty#- zH=JAm)j+j516@>^e1f#V=M`ywq*!38?(BK;|ExPYr>G$cQyvQ);1gB*}Rkild%$#$k&{T?w z0wN%YUI7K^y@v<{kSZWmK&dK5dX+BHTj(W(7J4tCH<5%cE%X{f3BAbo|Ig$8CVtoJ zrNn#TV}9@N%$fI{x9+{3wVt*1+Uu=9Tz`Q7mtos?tglCn)5VAc%tbVChWgYjv(y*B z_U}&Zj?wk^>tAYo7u0Xs*dDe&yfL~lHC2*#iysE z+lzS*kGJzFeQ)nDTJT2Z^{H1!(}v%z{jvITWdq*Ud3pQ&50}#$Q!>YQ=8A9e84S`= zNh;ZX_F+6c*<<|1jQkf3pp>W&%6L=3f5)pVenCNQVgNy~lBGOGD)UaC^N9J+$GpQy zDkI7M*#+NmO{|AwS4AEZB~TK>D8{#T-S7Xb1#I8a&SmU2_%BvHZEG*9h22`VM5jkX zL>EMtgy-2SqCUv?oXH2(cg)JCYQ_F@`sO6p_PE~d$--H#J$E>>=nK!+(i{0x z4|L-D+ImL~O3jbh{xXUv1JLK!+M8t%)F%d@4w#QTzTfuV-n$}iIy<|6AT0h){Qjfh z@WZj|>VX^U=b!@)sUOJO_;$kHZ(84=zHxn9-p74DxqPk0e>9eDY~0v~H}pM(#ht$m`0+H85dk^aP-I&!%vbJvDZUEJK`Nh{Z388$>8Ef4w^<(jcx zN@a&%xb2_Gdw1La+XCVK(X+|j=wxelSU`FtI=oo==z)U&q7|YE3O9%rDVD&>fT;u} z^XSYFogdj+k=e%i9V))}q6TdTHaY>jK))ZCxS z0cTS~c<%b{{bTyJrFO^zybJFSWE2f*&%65(_$_{ZiSEnfQ)gF>Z$#g>51IWZ!*>z? zM*HLf&eP8r<2=L{oQ05?h;yQ2Rzlm{)H`3_$iBhU-`^h8p8?8OW%(`M|5c0v+=T|X zrhZHP!TO_k2BYe?)^CF&JX^0dzJtx*tnr7&DUH80{??eIxjMehKFw2_w>N8Gf9uvh zt({scx87)O(mab<(N8mOI7i>X%rJZe-8dZF4}&%No`pYS^ha|F z+>7^h6in?~K>zSVsiK#0$;2W;gjv|LcI_tnAIt5^X)fHny7BeKw)Kbl2le0E z_uIZ%d8^=v-XnUqVLt5=Lyxdfuu}-T>oz} z$LB;?_Hu2s#rmf*wDldGNgDK9hbwR5u!n>BPLHR5<7q}lVsS*RXip3<{(g=sk`#Wq z5E51RW@KfXnS4BaWr6EVu2@<7x)Uk-UoP~H;}`1 z2qUcq9}sSErfb?Dwg2Ruin>doLibpnpV2XI92L}CFqGJ|-T-jTh# z_ie;X!G-aT?`{ri9f<}wiLt@CT5sbA3~1ilSgY|+edYSK%({7$4Ep8Bv%QO4`<=^r=rJISbS@#oB{v8 z5$r!r`#p~T^vl|~>d)Z)OI4m_r0is(ez(KEzC~XBTx9&-3m4cFmTmrasqAIcCidTV zK?TFUi6d{DN)LA7kg>twK1Vy=6pyn+{-Q;q5k&ufWQu=_d;DJIQL@BV zZl5dXbk8t~!Wuls{9We%FQb0{8UM4topuxb$=LiyO&sqavonnHM4M~ngZKCVV!ilm z;@kcFr7ZS-a>Bw1js9mwa+rs|Erz^pLXTfUj>lWDfakFN=MxJ!0_nV~XU57gl^LpM zRHtKR%9Yr!*Qg6P7EAUJ833J;L79M_z=e1MeK7hLdJpPbr+@MK9F1No2hRmk4sY$u zESO1JH&Z)g4&HCOapPX>?_K2BOhql>O?a=^v%S~#4r9j6@0o$?EaFrWk-Gk;RTK*x@RJO^K$%xEDPg|FuozY=ruSE^r3#P3SR?^Yw{cb59X z@PKQ<{a1L?;WWI1dwt$?ax1mEMmL_s;`dYae7@#-%|9}S_u1x@%-{c6Yx~wAts$+0 z!Ty|7@7<>P7+hg9-jVzetbZsm#@Cs@dv=@k4@DjW`GS7iwrKEJaCsI9?5<^nuMmheU72ObYM9oMsbWkhA(>bcdg);7V~--0|pN7m|7 zr^vQ_i!%qmLM4&&c~ABRj1D+|@W zt$=bu|Fg^qzPNXl-idpkCQ3RS??~*QM_Y_USNhJytElJkPW6}7hp3$OI`d`DVAhQ9 z?fwe9e_kqkjA4B+(RJV5>wA10v#~eRZ*n-9TeQ1u�a8zo5ON0Se~BC`G4I5ZMXm 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG15.dcm b/test_images/IMG15.dcm new file mode 100644 index 0000000000000000000000000000000000000000..b3c5ce2f82e99a593c58830deae59a0ab03afef0 GIT binary patch literal 526122 zcmeF42b>jEw(cuewOIrK$w_kC&@>GqNwSh8ih_uM0xB3VVnECp6DlBL071ck83P~& zFpMH9=7c#r=KTI&E%r2b-ktmIZ{EE#YIoPK!Ve7(nZHfw86%`e=D=aB&RoI4qmhyeb8ii$R zv??wwE!NjXMWscBrLFkTx~O%lqSi(2T9p*FD`{8Qs(t&w+m5Xμ2rS4U~Z9xL%( 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%0Ahqvr=B{3 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/zDR8d5 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 E2iTa*1poj5 literal 0 HcmV?d00001 diff --git a/test_images/IMG16.dcm b/test_images/IMG16.dcm new file mode 100644 index 0000000000000000000000000000000000000000..bc29ccfd0abb04c51e4bca2346a83141a8a7f1d7 GIT binary patch literal 526122 zcmeFa2fP*4*~LBQOuaS`1wlaRP0GDoI)ZdT>BWwM*cUm`PP3HJD2Y*-A4zJqA8v_Ajc3^GqfpvP(x3+IxZQt5Kb^U7x^&g~{wbiJp_FB1NukyHjN}Z0_Oz$;o zc+W>1*t@P8trX1|Uqm`Y@4CUfZV`Setr8D z`iz;AvZ%ISeZSiJLZ9&e{riik<-hRzi>Tdy_|*3Q;dO`q@VeuFcwM{XTlTHz7uJRE zTwgy>zeTTB;1|^QAJDt5-@w|wgLGc%!#3sbnyNFoOf+)dye)UzZQJ=f)fLekouz6t zdS(&r98H|kELwYPyGdi!Jw{G!H)F#YGsjMvQAACf&KRF)o7zD|RNHjo6rI_b?Z$68 zcMBbVxLz+8^=~)6-Q@W@wVN@2tKEy}1g%>knz-%O+w4AL=PkF~qTPBNziI8P3H_G7 zz5{eM`}VG{@7G(MWw5^Qz*=>c-u>(Ad)M{vJGj38V6E!izkgj*^_!`an?+OS?!N7o zJMCV#>Bybt@3ha3^Y_@Tsm|!cDGBdrtJ?Bx)eY`fPseK-jVOQHxOPpWNZ&{g`XwW0 zBvI|aejB!oI+Q)8><;ZFO&K$`Wi&M!qhH&Mu*) z)S45@HTC~k)w2AQYScsTwbSP<6K%cY&YSHyZ};B)`nFth-h`g=#A(|V%j4CD1GbEs zmTLz0Qy168zme$9##^zF4? z-)EYa>sg+z;0YeeijX=A5iXjLivfp=#t|% zZAM?1F=gCL{f23y^$Fw0&Cp)yuf~ljU=RJhyjII7Tk7>|dYv!zy5ER)(enQlegyFU zhCjpugX-HwD`>BOsSnk*)776bK8t4TzQ-2()U}IN6jxNEzU|tH30Uf*8{WPij}0q3vqF z=oU@YchR}5?G{bblCYyb)GeA`e#2e@Wk0=|QEpSGrJ3b#7(Z)7G_$%itGs+r(`d^2 z^d$B5FB;qbtuwG%w7UB5YHIDG_T^IBsBQVGonE!myR;5b$MU_^qBdn~Tdrj<_V-%9 z;y4}j-&WiG-#Sx`zozjF{MgSx8{yJ8Zyl{7UEONQ>wy0T24E{14A4&K@3e#gz%>lP zT9^TjU>$4CCG53&xsKOfV*5r$__6n%#_#{*I|CrFO|)v%y2K}lG^&mNmRj3Ejjj9+ z*4$PdJKmvWfCl{YuD3NWuulX2VT1PNUaSjD1M)dyTYZOB)p%uY`SG32#&6ts27dTw zpmo$zt(CCWrbH{qYqJEo*5~bo!j@710smNRGk~9s_j(Qht z+h^c4oZ(}!oz=k7_=iEvEWFPWNBiNQ)y8kwcm{sRX8;S2&c++Z&iXZIvt|dAw(Pd} zt%UzpT4T%xMBD4d4|`K_!PeAG_b z0tN}Zv|1w*G{)E(&%i%@23iTjH0ygSZR6iQI%n4!*G^FvHTJ|qaKoCL89FbuJ;$_9V4c7#G)0&4xPg1jF=i{i z^$(eC8^2rQ8TdZW01-F)(^z_xKFBiC+b*&H;1FzCaf46$;vI#%PFf3R*tf?D2NYtl zK|FTe$nO$$)gIvANM~#KB&-L?oz=jvx9LzK8}8xw90xw(d+=|s0QJCLd@p+$<{GOB z9`Rdf-{*O5{Orav@IyKSw)Bp-V<}Pk=7NBKv~=szwi|o)+B*noV3=1Ol_l;f%&`o1 z18%(~_z$=QpEM!7{Ka*bpikW zY*++FG25_RU<(+I|DbSwNY|n9yELAG@A3>73AXsyMB;gP`nLT%vyQdcar1&zxeQqkGgd>ZSiR)OzT-HtMZ)ey4kR6j-908mhu< z!v0;#BRN7~EdjFmd~f4*VNY0u&qGC+VH~w2rV;#^Mm_Ld_PEB+`XQVF`hGxtKthP_ zp^-s87_m~u3&1k_b@1)6r(hcN_7J+d>9Lnk+*3HlvSWX-?KE%*64{2fhPLdZ+SWQ% z;SGoeN5i9$`X3bai~6he(|bL%EzDw-03%@0IVxzj=U{AG@53DS`vVhoFJJSCd>f7h zzwq0LVZdf)H=hUpdNLe8gzMAz9U9NTw{r%F&STT*@2hH=%()qWWl(Ru&RX*TTf0^d z2H<@wZ2Q%ngfHwk2<@(=zGdqp9st3hwZR5s_50}kdNq(fKsC0*qcPFi(WGcvG)0f= z>VHZ!AsQVG)i%9#JQyXgim|*j55PLs2z@aJ)mdL_q2Y0nX_5fkKUQ2z{dX@OJ9S4p5qcw&35wiEAgz|AE@@GaHMYE&LqPfxL z(Kc$EN1H}7qIIHS(GY2ZfolDw6z~+*&}SL(a0`0CI0yY`3OL7}1?#(uJ7Al-(!1c> z^wd6Z2EK{oh{O+q4lo14cC01d`F&lh#?Ng$1OKiw0OCP9l{q}Sx3k3h|93Tym3~mv z#)zZ;L2F~pQS@j4d)7qqu>a_9um}D@>;Sbvdd9P_EjgjTl>R7Tew}Edto$^Mky$_5 zL}=eK+DfS3F4`g5HQF~iFxo%bBbu-E>x&&GN)4z5ZdOHS|5nBa&+*Mo3P;TxbR4jDi`_O!@D+7LCVgJOkh5 z8CX@Qr)CfI^Gu(nM_d2f6R_g9#iQqU6gse;c=e8%8}Hzo=DZpz8lM}V9?Q$tSmvI> z*dXD2h!p&=Xf3s2S{g3gqw|gXnbE9hgJ?tj&yBVg?strK(#X`^)b@@JiVlx{79A`O z*i&n_5i`t_8rV>Kj+JI0N}w@$OK=UEd#mxuUGy!8D-cOE|9GqVl8FZE8^K0{%Dv%+ z9wqi2QRq-|q8R`NMD^Gwa`cn4*Q!wq{L|GV-(?SP{H*`_450Gq$sx~$^0&3e$4Aq{ z1uTJi`}bJ(PC`ER8uXyKLA*VEknZ?BmJ^MP0>B%`{@dPyzJWsgNTGG@(#~VSC(5ta zsC1!zW7&J!Mrs@Cf3p(*I|%8!2>p8q{|82g3IB(bDq!zupJ*?&-NX=cwf%Zh3{#{Z zMwEOqN}prjpkAL3XQ2st$=VN=kFln(K2%EsOWY3^5Ana2*5gaS8?Y4-3z&ejVLcS` z9iiI6=gHYn7~;P^+l^}*&%h7m3}Eve<#X=dN+0{*vb6k5$GyC4EIXEF55E5rTiI7Q zSwlEMCu1u^#@-n{NA_R<)B>zQG=F#*&zml^g7!^?@y+x&yKMOQbF{Q^Y5mavv!(Or z$^+O&7~iGT{|8G092o5ai>I+%Xr}g@eEvmCLrDrJPk(} z&>L{Y5WPQA>SL^4jn!+S6a7n10Jea)I*HB9i1xyIKO^VBHz-Cuqujv|HWX_~)Qsj>Td30^ z_UEjdnL#rJ$@UV_A17-M`Zp_ay}gjVz3lv!Qu1@uHq$%nM>C}d){`QbsmJy7dZUsn zwiM3yEZgqlg59-*{og~(Fkfvawe5AB&6XTxnsmi@wQ=$;hN?MQI7r`qE#Z9~aRgh8 zRrFwtwi#Du7sxE&pO9$^z1Nn7M(xj)UEh8QZn56;gx%Rf`((8#Vu@*r@J-S)79BrfhTfeQZ6S%mG`MA^d;H7O)R;B zm;{=^kpSwK+AW2DdjlaJ5XKd=79{}wS1K8RnGPD*w{fZQ416DFpoOsBLJbCR+zR|R zUosB|*2@tsW1nRszI~Yivj%Y09KJscFh~dR2%%&3I8}I^E*_Yv zhCZd7^{=!iLG9D(NpdGY*=MoJx?rE0W}3-f7bJwZO2Ou@XLrE zIBG%suziVtYky(^_Lj(wI@^gpKpnKzdn>DP#zRE4v1aJ|==Y7ES^EV@2mdYg7!Z%0 zGX7U7do1|3)(_SnJ?o0x(5u0}b9z+q*9pJ)0K-ZjV2G455i{c-#qU}GM+MOZ&dC!? zBe%wDYWv9aj}aEh?%NZ<{)5`}N`$VxM7fg@oFMGG9$>tfVYJ#PaS(L^YwJA_>vf~G zopFq9-%v^d{7=_9ID`tK$t818O$3vmL5MbNpk>sC)dFf@oH$^x_=+qcF~ANbcLv|T zAzwnZBh>;vcX&>#>P)Y!Gi)CV&k7!BtQBa)<9B%m?3=DyBAuQH1Gu(_$ThFsLy7Tw z)Ehn3-aqOetJXo!um!XAIIHites`glEI$7{l4k=a(KLrU{*dpG4hYizVvc3}EyVG2pC!mwlk|vwoUqARrr?gr#q;eitkj5k2=s z@>$p=$N0<&^k@1o4J+QE?Cs3f;Yt`Ipp)?H+FRq;mYsLmrTJUTrpA}fNKLi_NaZy0YpW7?(n8K zUsMXR+^*!j)pfS5w(tSqTzCR@^>taLkpq4(QL+Df{6HUbKXb2Zxx^dg6==trhj^dY z&~wcRaDjC{3V`fg$MPNQKlt|ue6#_Te2)2pXUF(#??V*;`F5&q*wXcP;GT6T0(%0k z3!u_}ps-C2j+g>@IHK^**_kQu8+r+g9{)qmo~nJCJ#^Rk`kN48z#s8QgTC5lfR0Yg z66P49XCe>y2cRGQznS8QTg&&@K83!O`LnGZ2xBo zB#cs@3$k6s3kOiW!#cL3Vz*A%XFs+vtKeH$X9R6xg}^=yb-t*B!Que&e^aIT(EziT z7p|g@KRbxdj?BeVjp5zdZxaOsDeqnE~ttaNe02kt;$3hG)(? z=luKbFO8r7f9DLK^Bs3a>o>%w9gQL$?Vd=#bH?A=-`Eenzg0ikF8Z}2Th4E@?1&yH zX9-3y?p@(S6%gb7jY3xgp#8D_OWXc1){gD4+s3#bQ3Tj;upHh&EjVh(d!QL_fOw-h zg6JF?119h@wi;HzCtxe@6>1Qv{~sup87i$YUPy-pHdgF`I^r3!`;0yy|1eJP5?LHt z@(sDbuBFy*$n}S_W(Gh-b=2n)<>;hy?5vANQ<(wm6?nXb*|#x2_nh7R)(Nt3BK6%wX+( z*6dHYUdj;w@K2p#cWv3GWB`w!Y^C#09L8C}pt`IK8e@XrA98;DpX}%!`qDitSbArj zY-NJoaeXfgfK4Zg<$3WP&teV_&hwM*esS^rP^J1cd57>wEk3jtPKBun*3_ zAi4jpdIrnj9jqF;Fo696=MAhQu>0(9-yS<|Exoef&K32uqJad5SP6GZxdqd>e zekTfmn6>q*?LV~u*7Ya=$Nd{n4+A(O2>#6gAPLJ3(m@o~8tZDk4uV-i4Ws|TqAkAH zf>yrn!K)!*PA)^EPYJ1OF(~Vr`D?VM{@pQEA+v{lO}JI`}7gPt4DGK-=n&4S)xH zOlx#&1Y2_yy*YqKjta)9DDaWMv9ZjfBYxh~-vb4}x3C%@c1V1Y(F?=0RI6jcI3AVE zs6a*wxuVJQ5P4KE9sm)*HS|4wc9tGB0Sgdag(LY^L<{jy7&nA>&{|i8$ShaIyv(&> z+0|L*1?#sTZ;x#J=HJyBu(fcnF$*}>1pb4@w9*9CA=2b%zp+om3cKWZ09&-y8u0D- zzGHqY6ZdoNi)YowJ1_&-QrqJ9C{YRS9No92#uLYCf>m@os@VDf%L~@A^~N^}081P= zBzW$@dRs4GyB#0oTX8 zne{p|Kw~`MyTZ|r@pC{d(d5u)!V(G~C`&9$@GOmR+jy3-M|i6s93>E<0gm^zFL}Z5 znGb>jKoOAN0&`)!FX%ObK}*0c(KTCO=K2bw>9M>6%YP8Y>>t=##t~7eN5p-K;_us) zV|YCxV17B?pAr6hYNX$;gS?Bd;2iF0Hco+46FaYuGUP1v8Kr;Q{A;kHJq!CLSEqqNE z!Zs3CcNA_Jp}SvnKy*}eZ1l_Mr0CS>^ysYU{OHo?n&`Ud#%NLWQ1o2%R`f;GtkSvC zt5*7rLg!s;l2uaq+Z*n7uo8`#|F_c6cS-qd*X zAJZA2M}$5U)P8v89TX+VhYRRKwlu5(=U9H*e9%o#4K^NRTM;;h4NtHw*?@rlP~*xv zY^8NAkpR@d0NLS5s-c;$S$R$tu5XGSjb4r3i@uDSRN7T~SNd0mSH@SSRpwN-uk2RY zuX1SR=apkCzo}eMxwLX^<)+Hrm8U9iR=%pNRP9|ISDjq8Y1LWP&8pi}cdYJG-BoS( z>dw_ItLsyz;pJa(8XK_&pJZ|3GXLZ6U{_1iiFwg*OLLpF)N zL{9?mFo0D)u_o&PIDwuSa(%(d+e*O)z9&ww`}9vowB4gU4j^Q_c@GA_^CpKjL@InM zVgBrBar9?leW(zAXyrWN`Sr@zLUY&ZTGbiV&8s_A_o*IMJ-&KI_4m~)s@GR_+ zxB5i&IB;GpSCf-*6+r{(aJ>tFMebn}k4^Z1fYiGwZ z;_-3+xMSQb{#*4=)q8ZzqpLeqCsaFBzo)1tS>WEMfIM4hTjuKRDmb{xC@= zS;H~%zjqe4ZiwEA+E+HNoKktDlFBY`Tm6;L{cQD%>WXofcwoGCynZ|{-Z9==*gZV{ zMSN0xMtoL$PJDKJUc4Z_EWR?nD!wMZKE74$&iJADsrb40mH3VLZME05^lJPkJ-?y$ zPW+en&szJs*8C}cF@7?BFupHdq+^_|qyAhhF()1suO5F@eY$#C_0a0nYRl@2l`|__ zRq85n<;iGabfjh&m?hmmP7w#9{EP;0WAq`ji;NZKnTwoSCSv%^Q7}r83F?4HY5Rd? zOwg4B4Rwn|LeNjdN|+-EM&>+sEIEX%VILh0Wh@n(5*IY(iw zuj-GZr#61efA<-1e_A>=M6aNlj7mT2eefSR0!-7xh&H=1q7P)VU#L~L$L}7Aws)m} z2lZd@?|2pXr(fd*5cTUP?9A4@d*{pZu92cYpt4A)pCZgZT>YlnBc2-XDvX~QUlQLC z-z79Z9zPww@DCKfUZVKVLh-vo^V|A=Cw@!o-qiA2Lix+(mM;t4Z|AH2V= zZQj+M?D4jqX@7}7jNdQ!G&{Vltsjo>h_8r$C$8Bl9v(M|pQ-+?I;YyX`j$M6%_^%^ z-jhx_U$cj9t60H!p`THNWckOG<9*iAntsB)vm2i4sGn2-^N_#+BekXPTHxAb=Nef? z1;84ebcQ+SoaGKW631p%@@{&C0%JY#!WL1pf8gJq7U$jk?5o?r^bJdm5y5{qwtncx zTe_OxHUT|vTVX4L4S^w0`6xwujEplu0iX(qMcIqT_MlS1Iu_pc$xU&>MyFJs+HToZtCrEEPQ*UZA;_$K&_V0@VJkDqiR( zWxQ?ltLVO{s7$K-w(?$OSoNstLsIwa#s>-Yw+X*53Vp8%gP{74@e@Ml9m4J{|7bVG z*Tq*$>0cqOez}%dzEXT~qwsxG`FOq7T^9d7K3`tJ`Fg%YxLp`uwB+@LTDny4U$*3N zVfp?Q+UHvN4p-=y*XpzG6f-;$KUT8Iv-(c2iUZy*dEj|{tGl(&5n`%d@!u79_(gSW z^(#dlx2UXMc`dp~@r!wiW2_@P&wM|wP~zOssDX z0Dhly!}Jt;f(_mvy&(7ipd3zU@FUUhFaQlbKz}4#*Fj4xdu9$|SMUH#;3z(Jk8Q|+ z4U)Z^ADyQtevitYm4_;ws(UNawvsgd&xFl~rN%#xzmESV1&*bCM0)@B_z!Bg36qz^ z7pVO{zF12a3%v`3>$A&tZu!pH@)6FCFBG0HFHwDow!J`Xa+cPfr{#rOf4Sae-;322 zYWY$fiz8jA?R>1W6iYZQ{%w4U9y!`o@y*f-H_P|9PX9NH5$@CXL?ygba=~j-B9Ds+ zE{%_lH;y~RFI9i7T*F6|(<*CMK3B%#NJTOy3F*`VbkR95GoqEcN)rrG1c0$X>*$|+ zA<;nBB@yMv$}_V-y=*=sA~~<@zlOGCjQ=dJ4@Jw8F+nx5Pp;P1*1=iL*CYLKaZZO$_m9JHeaFA*Oh6=@C z)t(Zg9T>a7JZ0RWh*=1S=oPaOQR7FHpIjkh23#{lM1XsTktgXV|6+vJGg^stt`;Kh z5B?o_ffd44HO3wF3wXD`$JOL|)3~bt`(D;~gdgG=@K_!zeyc&y9TWfzKu>UAz%rl% z>=R)3i6h}n5@)i4^z5`)`H-=4{j5jC^XQ0IciFR%%9R}-{W0oS`E@0#&Qq4IdAvb< zj4(nHg|)9uoY(s6oc zmGsNxndGMAv}E68<7BvaB1+y;3}LaX{#E+)%Y^9b^oe*97l<9;nhVu_U#f_O+U7>_ z&12%4H_Ip@vB#IiK9|IM#=YYwRbfz6&r+4qJE|akjMg(*Mk)@ek0N%`SL;TWbqH{Z?1>Emgu`5U#q5^P$Z9+i3WBAVAF@m3l>Zfv# z%5?5-Lq$6(7RyAwd!j1zZj6?%?4s!2Ol9a>$D7Be3%$<>C2z*>3IA_t`7!y~x5>_4 zE3{oDKmM{(p<`#Slls3;3i~-(*-zpqSy7gIXtGYSh46ZmP<~-@oACQ#vTWKp9h2^u zo|!(Dewnt-hG%oLgR(QSTeH`)rg?onF`u1plW&)An{S6 zEL$(@l>IrqCfz?Bo35PxIr)PaVfSRZ_@qrzB!82VcvgG^CtNDzUru{?F;;M())Dc8HNgL9tskH@L{(66j^nh_abaa*vDRxr$$1O< zL4y^rCEzuE0G9Wf|6Olu-1~=g2Dsvm*_rF<2Q1kOa9^;EXZ_Mq0rLX6Ix_(HHwW1F z594YXf#bVf`mT7)pxH}(bRFGA>w&0m<-$s9Rq1?MT{k{X*3$9(XJzS$(?2ZC+^UGY zafMw)UtcLMxKB9xG;WggO2!H8M~k0;+Gozw9``LEI&(-+gP(^lC4A$RZW^z63m zb>Vz$erSGu{$l<~o)jw-s}voJp~c+d=;FfS>f-w1+G1gGZgEbrK<%93wBn@VxZ=QK zhhl?bOwq0QCSRQYD&HvYkiVNWLh4@$8F^*Es4Q zu5TD$L~o$^S_c(~68s_c;l}Usubu(V4P*6hbaQR(<%bGCUwv$dt9^rqXsuxU+rk7d z0Q`H7t}wpMGvhYg|8|^e^Y4iUstR{hby2lLyo;1G*6}fU`-_F1o69WR%~JZ;msX!h z{*_w$fa3nVGxl5LaIlP8m!bZ9z1JuiJeT{YVz`*n7I_C?k@Uo)SZACX^}-;qC; zf1Wohx)(!=$;JHQjN;MaqvEsTmExA-H^qKhbAXV3Pw}+Y-&R~+oLQV8%%3VgxT?6Z zxLxnuTijnfR=irgS-epELF-Q__9^BRYZo1gkMgVXUGm!evusgzR5mSZlf97sHl39= zPoGK7mX9$aStJTBH`2)D;D0f2v|DB|`2A1oGi6=TQvD{W` z9ZN3p909iH@IQVYh!5AESJ(j8eZwDSc5_I${{L#9YuxXLaRx#zFJ%0z0z!YVXXqF| zeJ4Z(?DgA|bfpgV-#H_qfsXcLg*+Y=%g?NLjKTAq+QT(I=i+G9%K4Q+)jO;GmC3(a zD7ic@yY(lwaLdxFZt`|rthbNvwgFxvbVC; zrPxo)pUjJ*PcgojRLm^45W0^jjwya!oLBt5IK4Qm*i)|;77wajSZr6UUc8Vm)IJyH z4~rqP;;Z}(?Y}s`HNRPpFXf+U-3rA@Mf0Lnv4)O0PdZ?`Vr%{HQ5;$vU;I+4VXtE2 zVoe<>F5bxR&o9pR&xht8WtV32vXCx$^^o!&wedF=TD#-`ZGk*|+on7hy#|SRc zue)7d!()1ndW9$DB^;p~=a<#fR6Vp%qmZ7Dexb2KsCbWB_Glo_EaXTEV+*;5Id>iy zqVvl<0aOzA)9W!>J5X1F_#Zxi#|JSFsmC0k+Uym;__p}Qwtau=ewKrRumTJ|0<7@E z=*f-W;(vYyK(KRt)P;u1Q0so%13W|PL9V|!fd1h=Vg?|W)Lxi(ogY?$UPU&qo2(I| z@bO;l`J?;mmGeF^`ZPL3n*XY5Pv!M)76OQ-T`nDbn(}J2-zdX&wsii@@&P`NdnB7B zXC-eZL!|59N!QALA&dL2FuzHDQvQehmHg|xeX(w_ix7FLkbYuuP_bjNrF8wK#f)N# z?EXlh_{sdD{L=jK{G{OWxByk-7G_WSI-?3V1$S=)R--aqe=cg$DU`W5q)^RD@* ze3rESdWr)~$fqeHuz!A3*?yg0B7S%+|0Z9tXj^oavglO|D#jM;6`L2ci_y{rf6t!~ ztLz~S@=11qbio(t>FLPyz2v-PtE4{pQVQmB>4Ed41kTWJyg+K;BJtcU(mm89J)%g* zmGPmfVt!2HkY20It$Y~$u8avV`Z3H%#F-_ALOp=*ipE`t$OJIc0m`elA_9yyVswFL zQsiC=-SvvN!C>vjT)_eJj`N0VY_td5H*kTM!b~qg75>kAUgI9$_ZcvjvFNVVr*7Ak z;r9HU!9xQE?zc9C`5hOq3b1Dg2M|l*nI${|=F|ZF%w5w^vob^@8v-=)5PnUwK~%8>s;m2GJjOuaFuNQ<+Ad#^E`i8k-RwXsg~vsh(l&& zBeHd}?Xpv{yA%U_FMB`xAp20f@=W${_OzDrye5zG53)DaKFt1}rFk{~CQI^F6)jvh z-#p(lKPLZees;bfzbwBy|8u^IK7EMV&|$v<`l3nkVtz(GDSt;1#P->ubp7-% z$%)D6q$YV)`NRvwcxQ_3_{G#OUn9P|Lu^Pz(;u{cTKuU-Fny|#hEe5g)j$u@ne?25 zpdS1)n+cH=?q|m6!r@vb5YFI;1^fOER` z=0Lc6ikG&DXTUK%t|klsp6vmItBQU1m=U({wdX1u^Il?^ zcjzI`|DguW03NO1w~SLUBHpuHP}TSI=(FgTmC@B#tDDI3-Jy1);(4bD`^UsbN&6nD z?D$#I#P7v@718@JnU}ttZkRopjmpo>Kg5^7Dnk z>($PZmEK&cVAFgHMe(=M^9;2O^U?X&+1c4P!urYC4T|_*o}DB%nVL;f4&adN-0Y6* zx$GUG|6{dxv!}Af*?rlIB^&%nuO1g8yq8H5i&c*&xBfBboSSfDSUSDSiXMb0Yu|s-$vWw~s{w9{Y zMAZZ*#3$=4I97OJsfZqy9=KiSVon^zhgZMUh@!XT3rrVosq>*SfEcRhG3qU>k0~n! z$7+e$f2g$>ApCRp!a-VQ&JZdvdTQ-xU59nW0Nho88G^Wq!MnHb*P!-5xVP|@`>i1gik*onxXW;SUgj zCe}|x+A~+wYgUenqOO%ED!-_96xwf*kWr_F6b`=+FE=D*kJ74I3OlW^g4Dgn4{(`Lk;_Sif z6}|qGnCCGqMR_}M$Y%L&`Om~O59IHb3ZzM~vN-6S{3iJYJLS9Tz0>3yT%X^N|2{t< z|GC)V27ULI@=SJB^x??jV8sw>6?NDvUp_x4>zmz{PF3FE=%hAzQwr!jq5ov@z%f!l zzftz^5=BC8S5)v;DT9sUPpVs0AFK?i+@CBDC2 z-T2A>+!^ro1l{)dKs9X6s6Juc-Oc_bT3ZrTkws{}CETdzAY8)vB0nk?fXykQ|-X33Ug` z$KF7ZwhQFb?=L;wToLy-^4I0>-zC3)Bl+xWsCCL)B`t8DZ2Z&NABFqdr44S+?$**v z(gE*gZ-@{6p7l|*;B;jYo)zx@DzCp=(YxqTbW!W1_~1Lj{C4>W@y}#wfQ$6)s)_(S zo}VoBF)Uw8%HY@ez4-_74u&aOI9tD?R&m8QCHBlQZlU~aJC;t1|P$Ot5I3$6{~x&^Hd_F1;N3wGbx0Bc3x%{^Ruw)R$ybB6qL zDEz**3iCaJcwbM@Z%l*#6*WGTZ5-)`(}P7Y_cQJX*er;iFo?Z>lJBtCnmIwc*?9uEV<@#^e<15@0eSJRdoh#St%ft(JDl>9)+%rB;bwV3d9*A}krm_Bb03i-U$mqf; z8gaa#9vNZ8y~_q`-E>u3Zl?9?h$ni=D*(UNZI0bIS73Ap1z>#BAGrQpZ?>}j3t9oj zXx$hI_<`PG6r5ApX$JQ)YA=k~MFBJu1FS6cJIaI72mdGq@b4G_9Dq)MC%grHgKA&K znxp-@%lZsk5{t$U9j;9OYthM-dDT@F>3TruzgcmwU#WK=qxKtN|JArYSt!N-VR~A& zuHy4s6_*x^h5eJH^qUlm^FtJa$9_LARq%DTs*t~y5VgPb_L)-MlclF0kR{(D8<+LU znq+@TpG+60_sW0xYuY9om2H(BD!>0iq5iK~SM9lWK2A(9M0GrW6E+5n9;a%fQK~Im zJ?))tk=~w87YAIM4_0NtjN*L$tzHd8!sBk`-}3^4~V zdJ1j7f!b8507eeYR2>ob7oH;AGa_J2Y5g~g<|>*vLo87*ufWR9d0QADSpKCofwh2j zpyy{X`e6>Vg7t#?Nn1 z*GxAMMvq9ZPQOa0Wec+}v!O!s zv9jX_2<2J+Z1#vS|4R0dnBZo8N-CwWUw(^x{O(1avI$p6$6v3{xFy{o9VmppmE4nD zoh(p|&#B2t$#EJ>ut%~@GEe^pY5gkc!gSYch*)gxVtr);pU!`ySmYFC3}(n5L96sq z&CsUGMOKT6ifWvrN~3G!;mj;v6GQwqds4B%pCzr6ClwbxN$5XT|3nARlM1*`dD1iE z5%I!mTAf{aEZRXiKB9rd13Jr+Gc(#cnj>iw+5E{u|2o3|7Uj&wn~4`DOBYPly~gH= z5w_C*9KBjoY~4Yb0gt}+I3X)TuC8MMJiE~=93QatXB$`|cmVJNdpD|p{~n3o$2*?+ z)jm5G-72ACyootXyP;KDQWKBJe zRz2=aA#-Qd;2foq052y!)8o@m(%I7Nz48M(T%n^W>v%n|_j9pnCreb;RKsA6ToZb|c|_03&`C#GU00mG0=JVBL{S1@iYJP8Gx~ARsdlM)UTvv; zDp{1ClFiSTmzRHtqWqnUSCmaZQ6BcD^4W*weH7jMd-joPdaGiAcB;nNL%M%z{!z9| z_FlSY+ALj^9HJ3@LxsOCNoS4OZ6*EOOqI9I^}Le)TgaAn)O+28(=n>RIaMq$C_Ovv zElYn&-dgp0d2zLlxt{WR-4st8r^x;L`R1x5+M>8O|6A52o1ea%{7f}`-IBICdP~*v zwbU`&l*?^(?CxqkgnnAL^7RaH&A{}{^vtZk@&$j+ms6ggTD&DrJ4%^}uT-Oamm(F- zr9O7g&&i)wY;Xf{z;i{l=F{S0MGm&j&(0oC+oi|rcrWP8{aW}xx{L{)uQ5cAibcVA8Mj_Z@xZBX~YCU`7}Il#;i;>56py$3VLf9{QqYrfkvU>_Y$ zM)@1%Ji78XC;;98<81A@eViSz*XJl8TkyUgQ3xLIOP^zATHocuvs-fCYUZHXM|FPJ zRF0{RSFHa@dHz?bu7~Qrg^KhKP>ye(biHguzD#jSakq5vy2Z=V^<(7S*GnajR;+KZ z{N_A=Pxx;xzkQZ6`|C?PKby_Y9@bdCCzGGc9uF1vRx9z?w!~y}p}(2X-=b`*=$-aL zQ4jrh5;i+%X;iX(a(=R6dTY8cJ1d`7{6fA)>*D_Wm&)nyDX-w|d^338b9=qB95;smeEqbagOxHZTXk^NaZ^2EnZU8b5BJM*2_=Lo>E-lNd20- z6#*b7_%rdq@01t3SEHh?j_1bDR_m&JYs}zwvf|*B=u2m5fZ?+I>q+rX7yf6;``fBdw7Rg@W(ej)zPRi=S^yn16humfv@_BYpC0XQ1y9^&~t@f)c$ zqaK~Aa%Qv}CJn$ilwq>{pGKEfj;fB<2%cxuW3QC&dWtO9t*YyrpEOV3NT1BEQLOLr z;$4lr8!v2Zs><7sW$RZ^25${{{T=kWP(H7hbn^l72HNGfXKM?SgVXzxy@ccL!e0mB z&{$ke$ZRQ_-%M7&WoeyT>pk$;6L`s#@FA~8E~Bj9KaPc{$Y1(0^4$sZ)E_w&HUyD zm>up9*BX{Ek6`bd>~n9eVN(1k|2nD4{i4sK>q^^yqh`Q)LL6{`uz$Xy z{~eR-lKs=IvWa<9RrB4Wad$_nR&KE{zH7^ZvQ=?s>kF?Eg?j`gfJDJVADU zRJJhfn%*S)y_Rs;rnLI2m57E1+L!omQQCeib=wlB*#4eEXW!B~chPnrcQrA?sO0iw zm-P5-QGRhz)O@6ILUZKtA67hEJXwq@+T;(X4<_ph$#@g^6K(XF_!0OSJoga)bd%+W zTWGcV@2Pj-n6~fM#5 zm7nVh;E{91+Up7oSM-nSpLN9m8_DV)pxVpB#S^)vMYsQ2J!{&MebYRKPZ3qA?F0BBBOtOSN*;5bCx~>4H5qaToc(bPX{IM z>xjkY%DVqJiVIU<<*oLZJG#X`wpmR!h8lC?&fLAyGt_{8W}yK6`zq>pP38FNSXrqT zg#H_4vo27deJLKN`koilr?MLr=|4kb?03@mnRhf^W{%=~uPGOQwQ6u4S3UkG*>Y0K zQ#6iuu5xvMR=v(cX`l2uMcIdzNN-aj95rqg-cg7K^Q~m9TWT#<8g<^KY&~TCiPCjb z!&~p7z1oOH&P;Yr&(7Y@UoNKB46pfIV||~K8u?jqXx=G{(wRbklM?$abllZS{Db)} zODsPO0K4=mj}8Zb|MuFly|zUM5P|5POjd02UMZfr=~?N+%5*HBbrY9ulR`I~%O~ocx$vUO;lh1WFe_7T{9IKeXg;G+? zH9RrCu=*#>GJcG>7xaSA&bkWZV3|2=yi~v@^8XJP101YeY`C8x(SUi<2Hf*-N9lsi z#TNs0MO_o@eqw}M1>i%%{XzR( zVY8>uim%Rdr;;oBX4RCvV)dGxYI@b&SDdV@-MRUG+30jHZLxyp6T+K-WmYeb z34e4hnSdjiPu5t1f3gDLpKrqFt}gyqFjRVDA8ZJiycvBNLvxA&2caFs?7%n=9tQF>&%VnKd-c4~U3G{%Ec0mmwTa=iS2 z1yTU_t14i2d`I;|-M{cS=`UEE>q9<&SqKp{Bi!4xL}X0l{Ek0^r2)=+5J|+J`HP(!X^ff(zmrW{)x)L37v#Z&<+E1 zT!L4!bfGc7Ct6`}az%1U`gJx$w*Q#o(|ljm8qCRdP0y77PAp-i(w8^G*mvlpW8(>M zq@V;~0Na0j3+%t~-&*Xkf@TD&5eGEU(OPKFfyzT{pq%8f$qkx)aBTX!^z*czMkDT^ z5enx@3EUz5^KrJCB7mnT6R}aTsQ5tfiL7XnSF)z*jO0amQNL2<^vTKyUQkvA+^qYK z+@U#z+gFYi;<46@zvj;8=H{WQ2AU-+zq|bX-4qSnT5-V5g!|EDwq}^F*~YT}`zao{ zi=u@S#pOM8h0zl3E%YHQd9eP$e%LdB0oiD$modJdD8K}b?O#P>e9ov& zRIcw4)vYp{$HmJ0wN0*1&P^}P7UYu^;X0t`t7!i(Rol~CIA?_2JM#EfQYOBIa(lOA zKg%X&d3HrQGyP1JHd`b^gu>;7AtL)UEV46jU>*DumvbbLHLESb{~Aje06(C6iCFYI z8N2SKrEVd757RuL*QWPn8!6gwNcO%e`r4=GD9gW!uxqVB+z%B&Ogkqhl;5^e-zGSV2q6N)NzY9B~c(s+r0x-j{St4^E#;dumkDg6t2< z4&I|N2=^*7@Ilr|vlumzpY&<*wz3ol=i6qJ(|wbVWb>I>>{R{3tjtZkReVqNgGv`M zz_9Y_;iGlawdtey3}XStDbl}bsrToq@@J0ngX?NbW)fotkulE|QT3($TbpV=e3$?xY5*S_05^LxMn6NUb^mFFs#RHsYrKdO=a zzgL9nJT3LtOuLV!A7`)RJIcGBpt_nf70>UVC;5}|`R`Qq-50|Dd(!^LXG626H3RPu z&7E_#DsDy!L(3$Zu1^j01p5#A$;9L7cNCh8e&AFYo4$3~;q9jUh-K(n(R^tP5& zUO{z2wi6gF}$Cf%;$MOiEAA64$=q9X#c6g_gK7j~hZynKI z1yuojAN&*M5U9uT%Y6*`lzA9F%xu|$FUyvP={zhkHu`&XlOK5=@;9f;o=Eb*G-_w1MtpQq#sTq60 z%wc_Wbp|OGKu%zWB7M{JjP)NNZs?_JNbYu+;si4l5g<%;-2>H_58*o*M1RDZT#D+TZ4gOu28rZW@tFw83Au= zeP^3*#8JL^0ik4(Nu zDyrLWS{$Wuusw@wl*eCP*#A)R?_0AgvdglI6bainYmwcr`E|RePsmf)Tv_)ugqcJ$ z@K-f+cTK6GR}_9gej! zxmdII4c4}8b!0RK&HNIwer6e}2yFeyJ8*35KfeF!`d)Y>WFs7(AcDATss2|i*(-2^ z6-8TZOHCD!nJyz z`eCZJnOD%GgEkif9H_RNe1x^79lGjR){CGY%v%%KRs?+>{~>?l>tTCuJOTUF$L}~~+Ydbs$Dv}(vq+X!4Y7#b4jqyt9DQORlN?cx< z&(W%bUKY9c!UvZzT4rOU?vL8v5XxZ37VOJ zC3Asm1nd=96R(~m#0AEw# z15-Hq=c~y+zUu6c@6WsR7Sz9Ozn^M z&e3_~{ZLWpqjoM80LS&aZOd()nQ%T5onl4_zJ$LE+=Ox=PtZ)?WF`In*{VudL!+Q) zh#h-t%+Qo_tl}7r9K1&3k8zV{-mi~m#^+XV zt$ZwRo*DkYzVo!iX_<|UyM*`-V%!_7v+$2UM>dyy4okh{3#_O5fWxEXbg%UT%e$2_ zhfq89j|TiZ4@lo($>_$)Sot?t82Vh$kKUgi_-$a|r+Z9WZzCIz--rg?fqn7Z9lOB~ z0R6sJX6z8Z#pV;=Bg4D2{RjUbpXNJyG|WfcLp@`y=!mFI<*mx?)h*Nu?q9JJLhJ{<{K-oHluh}Gw5_vP5m1h$$PJC+&0;=*~w|A^bXDPH%@46Cd@A*wM@L6 zm>Dbp1Jno`w)sXq$VB5i(%;}s8|UbK)He|Te1DLOMyGDa9(?c@+6tFVl2mu}iR5D} zClng}tB8ZZEZUq{9r&kN8^Afl|Irm8Ccu%g=2jmeGwGwD2+UPJR+0w;puwp+C`rjR?#1Dcd2I{E9vomTiN6x@i4(|8jd;SZ~{N>|4~ihX<{kWd?jPqn!(i=Q>j8UU_pubjl;}&$>B;*P{;(c%d8i1uHrSiu(m7lZqZ~k0-#D=c+S*c)cP8 z8!KOUTy$!5hVI3@ue^e_#2>zIn4`na58L`MvWiniBsj$s)T7$92CTkG+Tk+Diwac-PofFm7zJjkN%o02lzh z4VI}BY9Yks^8OQj-U>PrI9;iXHLR>9wxgjdLOdT$V7|fDTLJJ**baYyDrB&3{NoE) zIk1Lp_%`Mv>Ih+_?j=Xr10c#lo^ToIfq~Ki*XZtq2d95a57w*%yQwbl9?d~iEq2o# zOa|AySo|qJBilILL-!WAxvZ}|U)6wj=n9+~H;wyMr&LZ;l#g+}#yv~0f!B2Y$2<53 z*nZ{#@Vy)G0=mjy7^Y0Ywu%J&F1j!}H#%Cmf$3#lkUNSxJ`4|71>hmV1oW-I0LH(o zOHc$X`IYNVewv8=cm8U}RYQb@^A5U$p9T8O0_ZOyHfCnx{CI7=_V$4(c*k)+xE*_7 zUx0CCjw7KQQ2==UJZ=&_5uH-mN27dh(j6=wQD%Cf{Qj5Y*~wbz5!vJUeZ|T(cWRdW z6Z5Vb$@j2S{|;Hx>@1CLy*$}S@wS!9s2(Ur|1PKIs2_-2wtUSa{y)((BM596lX&oW z*7noEBZzWjjR-ra1#gV`A@2v`>>b!MUs<2-I76;aM^&`dH(Fj8T)AWwqZNB?-oU0C z-Eaz@fJcEZ0J7m6^9mXPtpfg03UGooioZ?p96&z`0QPI9Pvw)F==Y+0me;xgiU<5g z^B`|0LR^s5YtG@TboYToRnzYmooXJ`nBsG@Emf)bS6TkcrMk}5*>ovFov(eu{*VX@Ep7rQ{t~Iuwt>6O~fZEQHnkC?%==A7PwR57Q6cL=E7-F|_ zYqqDE3y2m4zmfmZ9~=TTL^!yvBm1*`%@!RETsU@ z!z&1rME>pd+wTWW=zrpYA?6OMi0nJ#ht0NKhAU9qolCqD_p=v4_0Nh+@J59m_+L%y zz#!v&0)oA-H3cy~Y`JYXM-2FPoB$63|HQrnEP!XiSRmHH2yDl93)Ua}lZn6s;B3GG zG+1vX?bR!pn*1`UrYEMuR248o^B&zN4X|bLh_V6q7H?~QlG$Q_FEuyFLPY{DPz>;X zalriehU#LC4BT9J4&${Pe7j#oBV5Y_oo~(PbUmsm9 z4meEJL(D!1YXlX5od`3DhByErXY0-hhqZE~OLsXYP@1s&5U$c{)J{PxV>1u=6-nr$7GYz9TW$+QxO2}k9w<^ z`1W{Kd`R^K%@{sawj3tMt0(G5bw5`beP{fGe$+o}Z2i#$owba*?;s5^LE{IG&>hNe zif)arP&5EfV5p8p?+8%B7OsfT|$$8rq@EQ-bF+%`o1 zxe~Cj)d09|Xyy#|a>T}d8&}MYJ&k?TA-*D!Ke9)l-}js%Z`@VUpyQ%$m1V0RRDYvU zKF_K5ac}Nt;;~7GbWZkI{z0)*%_Q~DKE=tJUu*yDPr6g?vpXvcV5d$nPvYG|OdHJlYZ8|G?M|V%ST=>6U zqpV*N6L*ZqSJ$tcr3^k+-gjc}re%5t>dp-g0PnDX@gE`u?X?|Bv9qrJNL38)r%2%S z(H+qZ(RuO&wh=4T>!{2cNN@5z0$jNM4?Ni)x5w`zTXVw<;e9l>EjXVJ-cT0cAGOg; z$7`ieqRP;!f=>%^#BdzA#xcQ=@e532&j4<5)X)56KgDrMGXvk$`X65DT)sk`5Cwn% z__c0~J!BtrLS4TOHhig`5L4eukFS83!~ek zyL1<~1(u%&gINAwu~Ts@A>>>iF2^GLlP6(eAuntyUdy)02j&Yko_<8l^{Q4KpP!KZQPuo6YZOm?X)~>Q@zJr!ppZNqegG<* zd_P#k`Y$K+V+k3D$0HelVEc`J<09C0P-Wj9D{JfRIDz#6zPhV^951BK7pxI^EcA&h z>6;LTYo*n_tL`uM3yq}wI(t<29Uq;1qI&Cl)Simp zR`u248W;F@G>B@$2!=Sm5gj75Wc*MEur6CT?&Is`J=l^AFc~2po$K#Y+J5SNvHe{%Q^YO0 zpT~U7>v@YT&Etwa-6qYsa(ZSUG!0%jX8eD*1XZ-UTrdUl|aK*iC z7i9z{sy6Uc+5e~1?o(Fa7pfE*uWyb4M5!={y5qn6j-Gb2_w^IHH>WqHMYf$`;+%`u8kTU^_iUA%I z*G^SE!|T#yujnqSUq}fIi8rn8Q@L5W{4T;YxF)t2YJR}K?LF&_e{%u7%j3OV9c267 zUOX~ZGYA|PT_pwZT=a~5fwMKc*hY#6d9)z?5mY6y?sV~f4-$FF8m&66n^ENJlJ(}gK-ZJaGq(Ld#*3M;CdhHeqVdnj4*z@PRw2} z-A~mIx&JOw0`sG9qL(X=SC3Sj`Dr14v21@ub6g#fzMf50Wy<`Tw5E5_HD4_omtG{r z+F$7JTaJ)rlngm<;_1%M2gME&iNw451qN7FuRPv|3_mC!0}!mJ(Pwn>$cR4X-a$=( zLnDodU#I{ISmS+|1G|m#XfAti{G%@zeXxQ)$;gH^z`wP;H9rVtZ*a?TKsz=Z?ZA;~ z-rL*5L*^{+#oj&w3c}pLH-^u=9tD8uiTvHk!5+Z$NZ23Voi-MEaWP(#bm$91d@+qz8rM3GyGu4zBNd& zokc;gKXpHh=Lb#pm;*oXKFc84ww5E>V*7~A#WT*fqb{0jc?CV1XM!a+Vr{ei**u2t zWBfB}fUF^F1Cs4Gux;Q3@6G#QJ?N2!Xa*d?ctFrk%+u({kAVTqDD}#q#=4);MBUBk zqw@Zwm*zE^ALQ_&P0>C7yCSWd=r?>U`~Ok=*Z6(S75H&=nQFJn&*Z7&)fv%v?C3p@ z|MS?Np!AJ@;sJ02`oL>Yi|o-wy<&oD15Z@_$MdTHd^36|`n_ft-c%KbwIv6*w$$+{ ztUg$$(c7#ItOWcz^z6owLH|7q`0NGE6waktl=BLsHYhI`0w00KIS&3ncxA@0zeYUB z+K7%p5@@;*TBZq2DAuK_PrASQP%$<^|EQ2!)E*J)%??9%bKn= z`xM9Idt|$%*J}3cA&Oe}FBza-3cz>GLH`qnr$+|{03o1{C;&A;Asy|ixXQN{pf>;8uG zG=BP{tc&i3ba~!Sv#38^%qm9YpJ~qUSvrTG>dJf)f3674q4B-d7b<_(xZb`(v-zER ze_{a*Q9rOAlz}4x=s-sY91$c&00U4D+Ea>uW7P&;EPL>_IN*ioHq{C4rLluU)l;xB z_5k1jt5)|;da9$NH754Y+Hm+^9*s9v z9Pqr#%bMY*r+R_WZKY1M#|_QrdjZ+vWAj10RY2#GH-ct>8M?_goTyr$Q&bg%3V0{_ zV{}b)f+_>nmZczmh<&ja;GX73j{~wMa1W*zvZZSSe#$uiuYWsMJ0Lcome=;^IeXxp zh$_wgmGb~$8`e4BZw4?oqY9|~a@>cj5BjO=?_2u)wR&yr69ek6$nQ7Nla`ZfMar0bOZQzbin?Fvs%rRqR1~vuM+20 zr2*bkdsm|~hQ(V|52@U$EIz0vx<{Yz*iP1fXkY)XLb~HX0soE*paqP76oj|vu2{e( zss#AGRKUB@C(&EcgQ^qUS9c+0_AqLV?5i5zXi}r!bt~?#=m3`J!>(ujuTk(*U5njz zwlCOhtNsT4L|z~KbCyFCfNkMeD*#{XpatM%wk5aQwe;)B>!JT#+22R#AE1BF5XCx1 zgKR7>@6^hX)%6wee^U(byfnbdnxFI5v~#{!QLl{uor?PBc_r(h`&Nw*_EG-${V0EY zf3kj5y`ci^_uCH!6(Ef$nmu1INgW=R5oEY>hb_P~=wl!3zB76t+(>mqjlDp=v1ea_ zEgS4DegZa|3?LOi%azu4r6u_H2mp`|`s`^m)D8vA8?}xsaAYe0SjZ|K3mz(o%_QKS z7Cs%#VGk$#8s-co28nV&74TWGk7qOV=mxR?8)z=^rs>gXRd+tWM0ZA=rdh(aDn2jP zkp}2m{6Y6E)V)=e4g5gY>P=+>FN#-;2UXXpoGN_|E>Yd|4PzWD&pbic|IS**?$ewF zc2>~XcXlX552!1wmkOA#oZwwT|L5X>=T#YSyzVVFLH(z_dYNlfZKc4yQ4SYi)yxmP z%lgoVf2vsj&%Zk;ceJ}v8!WuplPl?WK)jih?Sf8loX=hZEWq9z6FtD)yQu7CEN{s0 zG8Y_o^Xgy5{Xjm<&{dl5!f1A7Qnjo)JZBSieu`aP&i4ZB)+fbdUjdc`Tc#I@O#{k z&-$!&uX|qa*Xw#+*ZX>3Z&3^$u!`VU6gd`#_#gPk#*#PS+!}iGM*1fEVBWJ-bwhr+0s5 z{%vX0-IECM|}&w@xA=V7UU!`8mjyTtUu2S65O=sil+}|{ zG4Q^@jN$&n(}p*sdhoB3d41IA7o#;-c-QEq?fT81lMOH&+!eO|Ryg2m{S*5C-n%q2 zhCX48O3{yvx9=bSZ(6=lPgVF!L>^zvcAHO$N z0Z&bx;jOYC=&r>!2?L3A<9>WQY1gpC|JN4&^Q{5@Jf-3R-h+2FK=FZ`DGy9+Kk816 zz%R|SR1h9vs6D;C?b1pe!@%z^*(YDpmi+*6}XL^eykdqW)wd6aQN^ z$L2b~uV<{D2T@-cc@-UyUAP~v0RDl+RQG5bx35^I8btfA!eLME3k~9|L-HB+pL}7* z3cv&Qb5coo=3xK9DXCcgj==?k9}S)~Trsl=o}c-P@64PbM~`MD4tR57g}({@Z_e0^ zZ>37;;{J)fle-@aD(TOs--m?=AALS#cVW?M5&L@jQ?hkgfA%TA!ELK%(9_c=_=V1o zq5&Qb58RSb0;i{90OJo(0IGY`fbH3qUEion?KfbXe?GMT&pYP%Xxq{AT6Fn##g?r)$;GbU|<-bLKlSRqo+dl75cliEP^`pOkht%|%9oEJZD^P3?|WI$e@&uEH}oGn`1If#!~NPfj}~N)+ge!$Z+*i-QBRjTF z?kfD#Yrs|5{|NJe{;EJweSk6&=be!!JwKI;cTU#NC4=2EpV*(9TattMgVDD~n~v^j z-kiBirVj2&#O6QJQ+r1;HXqYpuQ#jv>io*|{8h%kSwX}FweouZXaTmFmOs~&TBz6n z|0|;iZ*oz_1f7vS;@dmF?F_q}?%iR7b5lQ%?7&i?v|X&x#A~%J^F6KGhyd;Sf8ybv z>vO3g5zkX8hP1Dwe0)&uHa=CJoLd?<1oy@dK|a6W7D4!~Sr$b5>+dX?_b&eAOO$5a{jQ2qTc*BcmXWyw_^uU3Yu7hPNTEcz#sh$P@$$h3@b&F_$D>Ae4GgBj^ z8NDO(n0{{b!;HQ06V4qr?v9V z_R6bPtt=gp!+$QsFMqdaC7w_zf9<JsMsfErnnYVLeB!J~p4zuH^+;6_$?5r{JM|FS3ics426)F17_M4dvi;rAN z7__Pjs-M5S2T=!tz&}SU4*)coNsm>>mtY|xPhO9HhduCMk*a&>|5Y;bpbZBQfpahV zBiRE4s#rKDdH`R*c!S_vDWxb#6M9F zHHNtWW&^?i)DU6@@@>X_tlJFsNF3lf!{=nqu)EsbNADV4KH57YuzxrFQ6jP5&u{mc z{9T{A0PFRa^p5FXk}5uPW0kibs{np)Fb(3-{NxA12mIN-@c8+}I=z41yS;2+5Ax>W zl%2yaukL)T^Zib@yJ~mk=#5*V37(yK2)7;|4GXqB`nCO~aVO{}i)DGM_|Nekq+;7A z3pu)=UQ|~eAD`s_)>j2a-uVmhs^>3rY#Q|M7JasFeuufixKTgizFXxR{QfzK`&r>r z-+xZ(K5gAyt2a!I`LCtzTooJghyJ;P%ZFRHCud&Dn=?ywXY`i#mgY-|`|my0p_QfL z2=}VIO>0&E<3WRe)jx_?PkDLY8AO9#d;n1E*gs?F;sI=_6vVyuzqSC8+EVr}6>kqA zUNu%!*nb&;ea#=D zU%-1Q&0nm-aqKmKjY=C-)B%>T&p{6e2G9pU`-6Y7E4K~{JR^C5KaXGb?)H!EzL_uN zQ>no6=jP+X^K;BQ^6Pyzae)8mzrKHOZ`j+g`}*|UFOF57n_r!JuKeb50QP=L+FaQZ zTAEy-O{sCC<`2Uf@PHYFcokTgBhnx6f%FIbwzEol9f#dJQ#)FH3%P(-eQog1{$L3N8oyUZ8@mHRpbiFbv`x)DL>umU5A0bwqwGGcQ(gf0C)VQpqtgeA zlNb2Z;nB^`sTIE7=*6iH^tsU=+N+vp4quUc;9K+iePQgyJ*$6VdIEo(S^f^l=zStV z+vV3L;%mFH?Uen{lN9;1Chd^6XwpYOd#ctnD{X1l9Q#@E13nl3amDT$-IcocrE_ zAAY@J@Qq^C7i9F#6Qj!xPR{05K{xSV`uoWMvcBJ}vFDF2n3nIR$B+AX=LL!T?-HN? z=0yHJpI)TR2frEYn!5fsj{Z1$`)J+KHL2|Xp60!o!E4vCT}6-5R|V$v_rbqd(`&T{ zt&po$w%1==l&!Nb9FHB;sff$}S3wlYKoe_Z4|)qZBe>>>SWY5mu7v^0esWbRaI7wN zex-Q-j6LFvT7TmNXn3*%U6tKRER|x*?`$PR`|MfrQLvnf00$ii@ z|Ii2Uj&Z@s@wsM>LG+YZ0Pl%GFe<=E>x|sZjARAfJ-B-K`Q}wo00)dNO;6w@qc65k zZ?+viA!7osiw3wh85~#kckCb3dwTcEZJmEj)u4UCH&!Agt_8;R2jBuK zg=6*nhIju=3IKKm|13NKJtO!4{PWr012u+5lL6EO#mlm)u|gEw#^L3K$`T#0|&i<$NMv)OZD;6t0kC%Bx0cpt|Y(v+{u0#~N#o@lc2(vYl1BVWk?MqpIM1 z_WSGk!*JMf{0;7g?_E<~3Z4vp1>5LfSn0I#8n|Qqe2$>~w{HW_fN#qGXLJSg2y7T1 z;Pk8#LQ ztGhz?r>P?Ps(1(U()x@_)7H_j*fOj?nZP1|2p~-G&%yvaTM#V+@J!^}>d*HVU>kEW zc;@^z{(*m3ncqzBirydd+VR9lj$Of3#{WzVmE= zd@x6=wb#miKd>k6Xz|!e@Mu<^Jz^q8v=9x00Z`lWhHNvL1Hw-_M`?w>&BlQ8lo@~GidY|k5vGckp@`K|O?wmGY7C73^oIgEH+7<1P z)~Bxt@?B_O_7EBkoIbWF){CWXBzY!#M+KbT`Dn6(+sseCZqE7TFv4+B9b2Y-+NL=N z?H>GBMxZkW@I7qskFWi;@;nD|@6+bJtOdTu#!xDQv zH5D87%kN>HpVd6A>u(mY`M!8?u*1?sZ%^)?+}kU9@$32fd@}xa&RpIHHdnP5CBNhq zqhGZzZ2#08-kdSKHgosVf@zOfek_w11gnmoVJ-NWSVU1@nLp;_8#5Cnv~+UlMdq6M z1do7Z?5&YDY$u2+RO6>(|Mi*6zXv&N0nXq6Y`MCDeThd}al`B%xQ6fHBo{3-7zEdx zL%m>RvV08A!IAlF*04qWV|uUXem&TH za_qz2=@;H=jAg5VVA1VAuK8nWPqeeL{LT)+_)&TfXorjks<|Sl7mpHP-tonW1w5zo z{^SJ>x*K<=W{&c2CpYi~X^%5=7HvPRSgX$~8UQ~)`^W1)dWA4pPQ?2>z`dV+DljBG z47ORX2H-b_^5v|auS|9S z)q2BZj4`X<=MptuZSa}FkA{oeBS&9NWO=jE``gF2C&cr=bMVw)2urTFip5$!E>^xO z`ST)A1u#*=U=v$T+sA_Oz1U@YunE$z|K{Kq-bIS~8VrF;v@?5)Fl@Wyeg7K&B1~Td zMQ!BGk#|H4^}j)XdGlP848j$v1xmFTnJoN+c~Gi45&wDssCF|TN)eQHq4EfE1w0C_ z7@pz@$YgRIYfCN2d8Mt0w{XX>6Zu1{CHL~I!SvyO4d31@XusEinUzUU$>P1Amb!vad~>WIi!9t5t(+?aU9d zcG|iAu=xMSt`LTmH{OTG0~?BeUVSEDpY_W#0KX7h@QW-T@q-CA%&)Oixcwy=y>n_< zV5hJFzbn~3#As&c*P*hv{s79Kd@yGAIyT%U^~%HcPgUgAj? zkCsLI@6f(HGy422eNJ0H($>+d*njYE+rwc<1{%u4fdzu#0M1CBZiI6sq@$`-ymMDM~;-s{5!b_l)=m z)f>pQajit{;hpks*n_S4kG)32z$IKyDHH1uiGR+_74yX4QdpDgtEd9^UHr&%h6QBC zdRk;WY@I4$zZ$$Vqk>k<%)!TvK07*f^y+qI^YCEq;JfhvZprw~ulG;tU)sAN*7z-{ z;(Jgu-{M5=whbPMi19-GNf19T%bc_^Jb*cgJ}r*t zc|a8C*{KjU8VaMv}GU-a_? zxOW(U?_~geG2TyXJym>+2=XNTWkCPYsnPVt{2i127-xist;zH!>IeF<_hxQ@essV- ziTgjl`|NStpI-kjMEmbG*m8J$^Rf12LH{#H541JE6d!RlqK&JTLHLhS@TjckSnK7uITn+lOR z4%qi^j{q&)vvEf4;6Ek<7~_!jhOsqan0sPmKhaJ!Y#lm`K@-s>eUfw*<|LDZ< z&&%A+C&jzlKF^p64_kz7w+a4PTtgm^^}p}~7A4<*vvJPPd(z)`bN}jO{7p^9-wMeq z+hg?R(KC|qb7E?IT|0a@RerV!vdT`=GOMRsglns{owQ96CtCds1C(vknig6)u8d)y zI>#n=SPNeGS2?hc?H)@Bg4N%k8|271pjOSV2Ebmz55)BFFtGe?%hj_d(Fv|z1{42c z*9g4)#ud383dDV!U5IFexxo|E;%~qvr7P?;G)qaGqjVTCNyG%i%Q2jT`{5qo5jcj0 zGr+pWU5&pGePL|Sv4iU~d+;{Raa<}j7T+zL__nhGVw)p+mr;6-(gAWdW-;9z`a>VFo?bF(eGpo;F_=2=B ztl}g_4JyhTEmWukK#`Fe^v1yk}bf58McLgqX^&v z+=vj*C?lbk%?;3^vbQ<6RQyv(aIG+dmbmcF`8kGHfEp2VZ~#2Vw`dsmBBuy%p8M2l zb3ZVM+@rdY2Vf1AM}4QCfby5Wd)CY1xb>Os&AjrOs20YkfO&(H26qkKI(%7X zWjb;6U-8{;XisYv4xgObfZs|Dr=N!fPU?TEcU|{^#OJ{N9nstM#Xkfh+^+ zezRTSUpA0wWS_cDj^_-%+FO}SEn{CHnu57|IhGc@jtv`>BH?U&Poz=5fzL7~OyRa{ z%@gIBOmv67i!lTkfeK+%2f*@^6GTqn%!~;*Z?OLGm%|5|-?tZxzCU{2=#+M|=GTKo zsSEJSjN|-uGJ1TQ21}3f z-!n+xH+bJOc7NfR6?TsO-!G#8k4#_SQSky!jw-z{6+{2rS--ns#tD8uH3XlZy|&Al zDvwo#TQM&Xpr!oB!hhWrd|H~P?wR{l+hf<^27LhRz35jL@k+E`zkgb+{n6>y{r4=d z%e!5pt<3Hx!}qVNdh%NmwXxFw&hZzfq|VRJQ|ITaLH~8J659=aIoPgwP4fNUmZ<-W z+fO#X7*0)3()=I*G@(Tc1)!dFV2qXwUL3O{8_$GyWbZe2Vr%!vQtxxzuyl_m9 z$kEio<)zCRAhvJ;H^3C)SG6IADx!e$$MO;{1OICTZ=7>^f5z)7)Ok$#1*Sv!7^UM` zfMi*P`yiIV(=bNBdX8RfAb0V-9EaDyF~q<33EI^TvMKjiYOC&BWgz~|yJp0NrYMA07@zkc`d!Q3%3>>5TmGLhw{$I>60 zOtfbw=J3|cCVGEo?eqt%+x=zog3icZb7PUrI<(Kh{w*w=NC5@^I1B*3xi8Q>QU0JC zKF}v9y|1?C8=r}mU&SCZ(hIm*829Lmx4a;cm2*>#dC&YVSpFUJn=-b4tFhJRSF4#I z%mReJk4mQI#hKUh_^AG`rl07`{lVbE!L`FJ({`>Hos?|fhngwPK^af7blmPi0891u z(@txlErZrcy9Pb_#T8`(Yajp(jlCBCU}J)RZ6NDJfvDDVN9|WH9V#D$fLIm3$aft$ z1&d;yem!-+*+pgKXU@cx^S$4&ANjq;AMgX{I{@Dx9$v6- z1KwgAj?Nz}!gaw7;NQEGC15k21lzfIHmAq1l5c4?9o;ihh3i?&Yd4zgMT~#)W7k5y*9jmJOKLq7#sMW&a&<M#74{V&@IazLbc zwED?fTNMB;9Z%SpIoqlb3eU0vSOOOu2aMI?@jwda7c*kV?eSCar_CoKzZb8c%0FcL zJ4Tp!zl(`vAiV*w4M&O2;v=uCRJ%-J1e3GFFGl~|j%y``VO&wJ;WB^Y1KkmiDS0kNX6)}%q2Uos z$#dQ#&-T1<>L=2(dP+R5`D5JU_fzSU?EV_x1A|-H-SPiBE=LA2@}yJbwE`tCrv*hTY# zR`!uCjJlN%UJ6@npiM3di;V|UpiCanYmhbA0|o&#c=>$C8Su2Ls(_>Zt^7yy4Ng$2 za3*ob>%>cuSKyOEDO>>K$QF*^fxo~%wTtR1I4{u!uA%rtCgY6iex4>*$gyEJm{5N#JKC=ErWxGCp1U3KMDgpBcp_5GH%f@3(PEM5XSy2MJq}`EMK09sm39KcKoOPw z_m_YH;Dwn{SSQDZUzz2-{c`x*4mwwmI z+fxSm*`8PY1yE5|7d6W{{02O0Jxe`9<m1~&?5?hoSvC)S_$SP-K}=KRplw;+h(8P2V+fauOL=rik9+&L8-Q1B@Q0+@!47q03YPpvZwejl!KN+ zpX=CH%d568n+qO{s%cR@i@KvC5BmEsfD1|it6)3^@N z&wuaI9y(c|`V5WEsdMO^kQdl~az!c!&%srLXFL>+p=RMp$OLT5(WqmhP_324n->*nds`?%wZX ze~AL_80)_<$fOP&`d{DQw&o`+2iSKpZ*05lw`lA=ERC{1Dp)@u7Jo^2g#IS#&g~OE zI6n6N$?*^lj8fPsdk{I?IoqEc#d>41gV#?iV5Rg2d@xM0d-fCkDgfKP785@B`}G0v z@+-=(@6RXVdd2}O3ZVUWYx9BRL7#+P0$$kc#9B^|&woQ=C>JNH^2F$_d3mzfeY1L< z+s_Q3>iv@eHp(w~T=Fq~(EU#DtYn3LZ9GPN>%q?kTQq02=ZtPom7iB8d;CqQC;f!6 z(j?M^g)Ka*lS>cKZbb=}6l93T7(@J{`&Gj-gvhY3PbF;_{fi1XNR0T(IY;$=4Toqg(-?Fzp0XhtyV2d&S zcZe4-FEh35KYV`kwD!XGUovC(jL~b84fv{d|7M%vv55iPlt}Lt{e%1G^xo6`N{~yW zn9Lob#Z-c^B7pt>_yUgkF>jm*68(eD5IZ}2(fhw=+T#<_3J;ETpA*}I0@yL{_e;kA zky#FjwW4p3oRn?DG>hU59FuBOpGsE1+TAU>>vVq}Kj5^iof-Dg=3^!C{f!C82!F2( zP`P}Q`zZxLUKQ~U?h}1b@lWr)(60x;>n3^fJI3RBRp-*o!gh0f|JQ_HmxRIR=J(q= z3@uZW;X`dNvCn_F-5#FZv)38jm-P-!J78Ad8~cCmzjtuiaJ6>(WRAaS^n>k$_a{qhM{&UeN)Ik&z8+Ym>nI>_cg86}W^N`c6DawgAi z+F$TLb8P=-h6kRUIm6d%Hf!J2p3$DrUePXy7cgx!yB##Y9PBi>GkIRurN-Op{W-lQ z-M5c1J2x$8POwQkaiKcUl(8yh_89F6@d14TYDlZ|=LF45g4_ec0n`?m6WdSL>FliE zeHlR_rCxkh#NH)dS!=H@jUOGmEbSj`yFHP1MjVPs znTAgwQU>DeT3#ymFvB1Ie$DRz1HcN#0AK}b{)F?+0Q*k{(9Cg9 z;2wi74n8@&y?I6Z>h^$SaDJoRe{|yL-qdZrJiqHIgPRlYy{4Z!Z>bLcP&{<7&tlfN zHbW(V7eITW9od%1A#nr=v&U{3ML$1S-Y2$x|FOoWwh$h|>?qO&Sr*4f*d?u&`omV6 zDiLn996hY3me!4lIONZ&u-(hFExeS$!)Qe{(I1JYIaWuZ|ruH`yFJ$Bw|CO#w9 zaR=u4`rdttOJo-Ai))bSjFY1O^)JvnXeIc>r-u@epLnV;0Z{}LK;;9|7f2=M9g_vH z*YL#Vp!VGM$?dM~tJ;S%Q_x|ftJ)7X&mX>IaDRUH8`AH)YyYI)OS_+rB_?uA^a$Hc z+z1`u$Y3)@_4%DWQrtU!l+h(x`hEX`f4*^EN#>O$7tQ%)nR{wlS|?Q}Xs?VG-Xkse zjfr9XwzE-plkO^+wfsYg1niY>H~93PEFHGV@QfN%g&KUijd z_TQ(ws5h;DVOqfF6aD{F|NVnc3|DAZ8$D;V&FIp0TKm-I)tTGlfV3-6&g{M53^am) z>La7&m7Oo0PfO-KxTbxwE$zD2Pk5wSJvv^EpcNHCT2L)ISkeAt{j`Q&iTH;bu;18W zj*1UWejl$D@ds0U$2Rl@SY@!r0C6_H_nNS$C;&YGktd?H*y?pvJrdf!?UMZucd@C?iD0w_`)}_i0hI zqpgF;8bwb1SgL)n_V8KX|zTjN;#SGA+UKas$S3E1P0 z_J;$?-`XZ|mS?2D@5Vf-AEwUg8{+pb&M!bepNtJJqxSLN)c-tpA});C-YCy*dXDg5 z=g#h}y;ns6UYi>6-yP@spW9sDK54Wlmi#YC}t{aT9a8z+FYRUdFPmg=$&gyzVJXcV>;d}1O ztRFNLPp9gV6oYWRa75)u>F<>Ohx?4eFcOHFSDbkbRYrf{+{_dBieapM`)}>3`Bh)q zeyv@Y3W3{>c5Z)>eBfrl?|)VQ$o|`V@9bV5RY=YVtx3c(OEm3?mIDWvGmc7NA-mLt zx*u@B4$+|p=O|0F9_`?$b8-Q!GKODD{}w&k#1r8d&P8pCdE-dH`;(2@L<4Nn?RBrq zShj=m{gg+dfA)xJNB^D}phoc$-{XB{HlYG!10#R1fZG(?fqd0~eJ|VQ`JR+sl3P=w z`v+mjSBEth<_Up(EIpbF|BUzQ02rH0KYkzLy0FP^i5R@7`-05x@wvqQu1e1D2ANB8 zo#x0y{`MN(l~yvPeQWcn;dcjzrWL6*!Ga5D=bbUZvXZhu;h$DZyR}Wj6~@%CR%m>1 zfE6r@3tCtYR&R*fm+*zihwKylD8$!H*IF zxUT=c{>uHSy_wzD#)4B57OTvnRYP>ap^t7 z4OEo0*7P>{KV__6Y0Z_>4+E%B%|@A-qwJq3#5hCUv%yokDOpO7e@4A z@xeZeei?kgTC@L3ea*--pOrBfn|4?4_4@Bk)Q=fre%XKP;KRdTHNS569zEQ?pn{%Q{U;wUJCg2R% za;_WfihJI{Px6=?r4pIkA^2Czdu(F_9!u-a_41wn&NbE|MA%73_dn^$MC}DiS5hU{o3`~RTBsJRJ+w^`_UQge$8WsTMx+lxT^n*{zrP3 zbiWaM0_x!a#)cA0GLD2@A(o6Kp^6ma{;2P>B-Vrx|I8}HKJ&)o{ddbY^g+$YKIr~U z$GA75WxGe^Zj|*z5zQ;6mcUNqdO_!;I>6798Av4H&b0SuDn7KKe=iDvYX;ri zF|mE|&*xfd3vll?zMAug@9$j8`y`L@{M1wYMP^&RGX4F`vRwX|zYh66+Wpc4sw>x_ z3ARYi->scbbU)fVB|Uy$Nmcmk`@0Nw8J^jEs@*M7|M#`Kw41bdHk+k-{7Yh0Q15u= zv@@f9v@h*Ht&Dek?^3;bSi8ch5dhjM?`kbuxX`+d>Q{!4$OjE@gMWMiGa{R#gMN-C z3b4CcZF>tj7hA|i_{e%LB8F}749Eb40j%t;CgD7srS_Ev#3xs*_6Of}eamCn**;(e zabLQCD^<~G>v``p;$7(gBLnW~{jzm2PjQ6zTzBs;WBiZ$A0qdt$$YsfK+bhRGJAfqn1O7e~0N6&csQP6BuDn=)?|C-WFR1r# ztj`Dl)_;1Q`d&f*hdbZO*vY$N`(F{Q#CUCbWmrHqsvpmvPrk>y;vFpRud!?A-JJuw z2llp$_P-dqa!7YQ0n&-Al6B)iEw*Rqh+g{q-J-k2BBXCb#nHoIC=&>+Xo`e_R zf@%4$EyBWTV?~~bcb#^WZ$)5v{ooc`3KnSJ;)?&iD-;x4upR4+$Q5?r02aB5Gs+63 zI{4Ar zGvNe|R;q~O!Zb$x^gUR^I*!JZriZa+X`z~)wLCvGx2jF_aI}88^R18qPUpYT=fc^k%pz5dB)oi_) ziKu}7|LpuSl@vdpY@dVk3z?&Zmn8=f^F#g9Pm2yvd+`pHMLclF^s02aKk5Fs_qNRF zdu!tUcl1vfoIPyXEk@^z7N*y4-L#S4r;S`VygDd*{d&0{^OP*+b>vkx&bhv3%vjt4HJ@j!h(QQqzm;UmpLQ6Z~^$6Mca_rwabEpr2G-~1_cfmd(8+MLroqdBAb zUGstV_w8xz{O0?E-r$YK+_{_BFsgK~_D3jV!dk-II{p}f?AdVIYZfKj6*q=5J zdr8YhCl{jh@ss^#%1h>GZmmT$62|paoI%X%!55-c&YYjC!-9fFj)dk` zaqu1LfqRfcjLH+YgE<)2L#&al`ICwG22X}>Ky6){*ydPj1^X#WRp{~XB*gqgANY(| z%heQ{l6eH%xrS$KKMeP61eWu#z(gx0|7peW+Ook<2Dc8cNG9Oa_9x8+&8hi)KhW&m z{w7|)W7~6v#|&;sOSqwbcK^=aJ(;QF_}F@?!WrqC9mJavfV$i|@4^4>!Ttf!p!jz1XUIswbzyKhdrIdg@|8N0!ucBeRZ{_`$hqFQMb$a-B zNuqw|2mQZ`_5X5M@rm)1sJ<@#WdIOP&JTP++yyP5Ctxlxzs7d)qt@s?t~csm6ubYG zXuhBH-!QmlxJ|pm=;Vy_e^Z$Tvsty%qAxDessfEFwIL^SVF&0>P>K@;o1lGc+g3#}X%O(6m%T0`uL6t1SU ziMAB%n8#;aovY?r%BIR2b^X@sEQ{{Ag2KQ1aWwGHQudo`EZbh!Yi}QC_rCd_Bgt!p z|K*<**Ul60Nx?2K6rZ?5o-Rzsd#;(|S6l=9GspS1gLe;}HasLXf!A&CZ?0%w-<;H( z-u$ZhM7z=G-xCGAbMVLX0^E>T@Us4kdoRk|06UM7jyGTRW*I4Zr9FeXU9fd-h40K|3Tw6Hfdq>GT~o>w0gDWfhbyR z*-hJ1Qc;0XBs%)SE}jTd+)M*Os{g)XlWY@zVA|5|zPfa|ThDkcGol+#=N-ziau7U8WRrz44o^r;hi?!6wdu6KZNAXFwRutV z+~(pafZw$bwGTJ18Xh>fDGK1`^au_6tM)eNK5y*#gLUVLq*uv&5@wOvJ}q#M;GUUf zkBllmXuKQ{MX)rsie;y4gXJgF2d!_k3rh%cr{vXGp7_@t#7LK;;4I4e$!uc|t}+c*pi| z!}M_JiRthEZbs@o*tsQHdr$r!=(l%JPXYU1F#~!GWd!;ThyZSve5#q<8NCgX@%gR9 z{;%o(s(h{#wyv+x&o!u7>MphOTp7oc z!Mt;xpu9z-0e;~=J&R8PP2nEJS6m~SjFDA5L8B!+Dc{2z9DzKi?Fa9T0$AGov>CPE zY~C0D|M|_C&Hc>>+rjAN?dHujsS5a|w2ABc&+dP?cR}~Y*mKk)_MS{2`k1jQ&hqF`dB>uWUS;SIhP*BF7YR* z9?D#z?@pihW4fD%0sfGD_fx|#TjUt)1^q0KP6jA#51v7}pG9_M{-^=iLWKYWOxSXh zFyYgK{_i9o;*aU~dsi}j7X-=TTpoop#XNq1_~(^A1I7xNJAfA3zw_13r@EK-UY5Au zZOQt&DRcYnJG`vi#-1|G^eV!WI{@WG6KO z`+;U{uUM|_N7<>eY!t_=|O=H}nShWJIxI4r~o? zaII^Pk5>K;&xf<|y+@NjxC?zA?nVYcgJ#+XtJEHLq-5 z91q~~X0P^JsSWUj=8)kY84Ywze8Nxmx9acR+b`n*=Lhe^jEEvv4B5T_`u=uF-0#p> z=fi{j1A@{+#yVi%tR)t(XSUcndrwV!E^LEx`};({ZM}SB`GC0BCc!pQhDABbL17j0 ziJsN@m&CpP*qNICfNuBmofk)G%oyW;t)TzW=mCg$QI8VP&Q~v=_-B3bg70Ag-Vq(0 z9`rvgHGRI5h<&H~oy?zbd~_A_v=H|vifV-xc))j#*q-(m7T_Ho0k7L6mNLJ)TWWk? z73+Ufe(T@#FBv>IJg9x_=zHz9sqX)w=7DBb;(yOcoyf}vyQO{6!U|ntffmYIXZ)Qu zZf$HK>S%|yVQp4fOI13@14Xn-TC~WY*hG%PdTb`Rzz%AiK_;rg3}4Ow7Qun<{9mK; zSvhbc{0C+_#`cC9=pLhhS6Vc5TcyGl3li7Y< zuQt$Um@uVLM4kZO$iVmxumEd}E%5AQG_R2-3$s~siHHm=?RPw>4bqqM>A~xUr!|9i z)PAvfbv%HVHvii6+BdadX=kM_XlSo0(e01e^{17vm6pOU~chkV{rumKj zGc$YN+B>iR{mkt3<<$DyHCaC&Y_4ek+`gi{yZL0)|K{=iKax8C-Qfv|`qRHR8S}4w z2BVEPq2#?!?aoYZz*o};zHh7{vj(r;Sv4H+Xo>==^+mk* z>pjAE)pH3y)D~=SG>~<~{TGDs-jlHqf9mwQKS=!Vq&!icXT?wWkIJt~O>lx^1c(h{ z@yqXrG3G=+9ol_DX7>JS|EH<;@s<8V{mTYFN#y^|_R66C^UWQ}5nmkbziuM`ZyV?R z)~LV2EUgH1V_Wcxi2;^L!-ij&{PYnL0< z21^E44PHMyA~S^Fml)t#i2%O1`C!v;U)lb9`}^j~jP<%bk)bQ20p8btY=3%htM2LJ zUi_Jf$Wcv>+&`4SHfc>({9hK_?-P~2bnFWd4S)d-4_^1l7Td*!k*`CGHtz@Y>kET( zEgyDLZ6NmP89)JSnltSXmSF}FynqA7afN3l7Wk9&2X393Wna(OfCIDDI-S+R0FR~^ z0HgZ2C+~~@Y5{y4?oSnDT?6jEl!AL~n0ucWPye0q_c`oh?)(ic3 z0`>qnV-vA{dR>UtkP}E>$!5_G4|eYD-rGCBe{cHyzL8lV_sPicb5iN+>h`eq*5(t< zADi9N^Y@hI#hEK||KOpredtf8-Luf1&GwfA%IdI%zOX7=-C5BuZDQ$G@T$`1h_v)# z0C7T#1;^kFykPw~x(I?RuxYAqQN|vA&#_te*FHG7!kS}8WsUN&*MH=0U^4qC3oqUu zs4`Bcedp-KFl<@;BhQh|0RHXGR~yu|mtNqWxmK=8zMEKey%<=?b+81B*57mURD3c# z8;&9$!y8^Z9N^vZS^Ll3te<;))?kIS0- zk)6ueU2@uq`%Pm0TKmF3|IKtaI$(Yv%EOuhyX71Q=1hBpQ}&Dx{O)+fYlH#Ti7GxX z>R|J61OWf~(V_s>%C(4ptvK?UMGU=G&Rw_xR-fkk_lmueL->L`56>1No&oL3_2*vj4VXb790L z*wa3%^=Z$x^vam2_FDKaC9e$zLB$pFgWnfML^kK*JaCL^103SXZ1M>H^&jZ@XQn-<*vS( zXy=MS|K}6;Se7Rb;`JOrzJKT>SO7gC1Ne#`;J5&K0Jjc*Oz*DUTPeTnAG7>-|9AZ( z2TO-y)``|{?*;kyPqj4@t)d}#bq&a`@cOjx0`KRp5!&DJ7m zjlcp(sFn^EKwVjI+H=`O*NHjC^0TKHDFnb3SYg-#+sFF)j^ltGnF9+A!oV=-rG74a z#(UO+Yp$0oL9c)p?!i|uuMX#k>{DkEgHY*r33y2ZqjMAGER@iln`Tb*= z4-EF1J&3&h{qo9aAjSe=vFzEW-5TM-2A1_Joo`h^dZ?Y567Q83OeD(@td1$#X^j6} za)x7)1@pDes$qbQx<3k5_RF?-&yNlTuv+v8nSJmZsK?54*LwIefa}l#JevtOY?P;a zczkuy|EuvV$@_;%LAmgo4W>=e+E_EOoP45viFI3_ zXtdR0^His01^HGs0H?NjEvjBCmR|Kcv2$Pm%vNR0vW_x=zKO>KX&hHJ@tRRHV7_wa zWC~-8rJ?Jd_|F}|9+Nxpe0t`3Fj{?(EHiL)u7>+{fdLuM3=Z*8IG=YRhjHg@S!}{* z-g|Dg<;ZMN*HLTafkL^{U2w`2uKGY&;nTjxHq2U{YJK^sIf5R2E^55=R{F z7w`D&RKQsweE}OMI`-yh0Qv$R4I_dd(^)04NapiU;i&Dg^h7?;DX>A=e4Y-oDytPT z%W=G?vs2Ie;mnTq`_w~wS#1AS<1O40q{9UG|Lp01eb#fV~TJLmRV(foWXT0s)WhIhPAUST)mn)ZBxV39nyWQ^7 zf`95rFjwTfER62~|4V{@`sWUh558AW4+AipI5osj3Y(=p8m|)nYJW3;uvJ)hatmM; zB8wCJ+sB2yqdn8gH_LX^7u+-WAkS!7&iV3;3hajgHtOD;v4RJuw{rd9>;Ev_I9*nC}iWy1`$&ef6861>KzSk$yca@BJygBdp%~MhJgMXifHeRd~ z|K|y@4L$+h6U<8PKXJerc~aMR{w;MrPsw}_-^<*7clTExyl3#f;Wf>9?MKq{`)|!& z&C$)5n>Oz*7=Ai+p~Zm_Wmy3GkNqgCO3M~E6BST7{gcP3DfvvSX!Au5-hhk)XK-}x zU;hI>fZ5%%9is~WFpoRQMJ0FPgU09e1&}PO)f3e>zC;D zXxYWTIzg3Yc9ypM zK?jFT)=po*|0M&g7W6+Z_8m8k{5w`ifwiWj~CQ^f$< zPZ$7qKORg@uM0QS>c;A|X&GhuT@baBA?IbYTL zS#x{^Ad7g0(M(m2T%#fYk)qkVhp*_V=NdQ*=TT2!U11e4?v?R$%;e*WI11m&eH@MF z1p4V`p=J+W7snOw`$`?(*sKyj>*ipMMF+{X`A z8IGD2+c&mHw>LH?L;JxTf z-H+e2X;}Kg&P%$d_m0eHpBod`{cL*wP8}RSJg<3adu#jr_S4O3%}y6n)FLaNZkj#%8NyLA9PYtr7ef83*Cu0tLV;t<@1dX0vm2uuJ?< zb-@1BuO?RbtkOq4h(Fe-v6tr)Esy!h zGv-+s&14;O=>4)^C(QqsZ4;Mw!^VbbZDkNwx3A9cUmdt)sBHPLjR?>B?b4Xz*F*IX9- zFKJJ2R&HiB?{BVY_GykD{!3aT$N)Ry-+n;w4?1XnWy@p&+b8R3xoky?TOJ$QNRS5N zmyelYld%7#FRcsMC;~>=7A$@+Z7Q6(SIV$sN zJa(``7+}@B=U%k8Mh4|1xPyIMhu$f!fx9?9dxB8dg8MFQze71jX|M!_6uoDG|@uAZ(;LLwDbTl4hhXbjbKI| z>=r(no9m%}a7ij-d^%phHW?fA&-6E7dKpraG77YH45NZikw_3=_ z8Nf-^_trkE!?l?rMnrK2Jm69Oz`sg_dw@4o^}ge3S<5z{4TQ^gwIy3{Y@Y!~uE@j0 zL*fZc@Xz~t5?mWr-0Jg_58fRexM{n7`?=*E_NMfwWNK^j80& z4{rbX+sx*P&EGMe`Cj>SP|!%fKUwOuS6eLYo>ohCI_M{QNTh&X0%jVb#$aW!(~`0I zv}?z$Q$3Ush_q}n5$0sCd3oJ_tTb4I2KYi}*qzm#(*17dtSFJh(SQH9U)Bo#S=Jb< zdzHTIhrNdb#H`Q7UI3oV^swl2Gmqc>vHfeO+TkUs(MA1*(ob-JJU|RZ%ug9VUpW>0 z`^3!nHR})G;J}O+K0o9Ak4a^RFXs2WG9!LZ85}TtQgc9iUHjT(`<@)#-zEyMeKU7> zTG|ZJYCKF^PesFxqT}P2pI`C4<<%_wP;FG}g$2_$r`^#mY13fZ^?dK>Td=MD$0}A| zA{d~x^BuV7s3MYY3QvVj^@NN8z9Sl4ElQBv=>z&>qQzIlUVJJu1mD%W zH+@mm1fu>g3_xD~!Q)8Wvhc#3teF?o(HD47{?7^i>75eyARlFl-%s_h9kMNv!ui>5 zyBv=`{~FUmJ2s~s@710`vJa>|2>UQ=Fue~%4EgiBSz(>i!T>9EXLmQqIJs9xA^h#p z&wL)M2m6dgqW8c0`Ly)b`3J@F035(4Z2!)|`^Qq(Yn|@nyT4AR-t(ewHXmaezK}tT zCGt#BQCfU7z?3ns@^py`+NZ);U!Lf!@eF^x-hI6{#QXnD{}UPEz53vzgMS&msd;Kf zeH_z%CnG_Bm0Yk_HLo9jB7Pq&iIa^^^3(9t!o8BsL1s*{f_y?74Ps`Ufs|(7ui6rnRdbk(uC^!;LXazXVHHBF9 z2-o8g3x8^MnS-N&f8+daTMFMR;v0~Rib1=mDYyo%pL1!=Ra3@P*2&dSdDJt>Dr$?e z<`e94P8p!sjO&$Scm`}K_R&xkErbV)x49O6D{{IvOw{rDgUyF4Hy=;*=Sk@Wx-2=M z{dT8jm*J~(JwJ@azz4XXzf=E&-f>X?i_)&J!n1<^Wr@NcnOy&aqW~5Jk&Fo3dz=ff zU*2u`h;`CiEkrMG`|%o>XP9V}quJexc3eG!RvM?)K=nE96rI7@s7JO#&S~@z4X|hG z1l^R#*^cQAye;qN|IHZy{4)-Lh5R2PeDv?>>)Z2RnxOoCZ2zLneRx4?dajvl#)mSW z54pZpH&OG$6ZRj%qO5}fSj4}K$206bKi2=!jQiPX@Z-Ua z!%sKIW;TeW>HT>q=)b7BZTMfQ_Jd6)YE-R=7FF5gqMUX_yPZVV^$98`NCkkMp=A~h z!Mr#wn<^goUT)B?YA<1vQu<;RB=`>e%NvvZz!c1)URH0@_Bkhb5qWhzDs7M{nz#~k z4LG7Gl)pS)X_e9haEujw#GVYm)o~P-Qv9Xfy%rb;bjy|X95>7vnU9!EWZ0$d6aEnY z>;bNgOmfX$olnqfX9iPQ0@Wtg(I1@A_>8eYe;qX)G0*igL-;2Krw>t*!=!!(OZvOC#}3}KgyIG9=-nRDX^*#3@~l{N4|D1{cRNhJ$`G(_h%vgPXv(Oe(W~rtx-NO zfYAW`{`rZ}y+5;ft{U`ry8n?X$K?A^H9@3TBorM$KL`q`A|!=>834sZq*O+olHckX zsTcT-?v=f#2m7B*kItw25A;tQY?z*(Z#Rdx$F}p^8SR$skCOvBBQYQP{c3a%_@+Of z#dX+r+7>PBukk-wH)(lVdD=U;6dR?JwQ*>5Fr_6cH7}|`v+N-r>Nsp=FB=w_;}sux z6cEo^xC(smsq8iHK#%yZqkvm5#CKZx;u)@tn7-Kpcpvr%xX$fi7WU?7;GV_nmW^Nn z7?fTN@z3)tpUSaQL^z4Ka?M_YcTjkjGx(N;I~M;wVWI}88Dk>+5^TvieS$J$=>mQ` zws7<|;~}OEPRZN={ltGS&xqj9H=ASx=*`W&!)AC~j{M_P1iL&w(Eaz| zZqu|*X8PSdSbtJ-gOAOKzx|_EvFCI1f1ktw7%_nVZ=Y1P&aJ{5#16?ISP;Cb>B;z` z#S*ioRxQ~;&MmT2a89I;nFZ)y*el2&*O=M@OR{cpzS$-Jcg}g4k7$0b=WVHsKfSws z`p-U{5j1~G2EglIJ+c3lAHhF*U(~Djc@}u@<@FQ0-!xZ#bowm5ol!pPr^o+>_mL#j$4k}utxRLim)ui0m)yZ<{kQh-?>(G~Ajbu*%m79{{_Yv;cWlO}KP7$u zqkXp@BbQkL<^}&~&?#x5=u~_B8AE`Vuv73qKSy9bx~eQj%LVyZ{kda~0QuAawGQZR zvHFZPBEoo3_=Y-TOY*lgtUxBv!W?m7)*P39vtM*JOC<15sTA?S4`Amh3>5x&3ss%096gu3`S3}@*DwAg6JPi zBK~0jp0J}Ou>3CIfAjcaw{^<$3Hm05TefgQ#HIG0$F2zr))#n$tw14mp4}eCzi^?m& zQtQitN%^C;qjhs!)`R~-FlX{;oKZxB8b8S{VxMEf7<|iKunPDvW7zc|QDy;=@|X%h zR)Rg)*Vomf+?i1ve&F0Lbq4RUn4q|UZ|UJ6_RkZx2M}~>+qnZ3yl4is9!c)y>bWbp zfvb?Q)EqK^+k2%l1?OZfi`)W#bAIxUb{@Px*&zF-CcwSTH`_zUB#u|xVV?VXab01Lwa^uz5K6z?DXe{A&YQL$RPWF6cvE4G-(y!k)cekusD z2MPiEPp_Y&35eTQ_`^IvEC1^CJ7#KH@V|ZH2BqUM z-y57h*lPHPWd3fSDxZs!|NYdA`n)jKe|B1+K0U2Zyc-7q@3u&-JQj;Zd!$kaVW?KW zvCY@3ZPj+l7U)tw(HgOiAfVblsHCk{lx@NjoKHm#@>#5x0|G>SF@eZ{C&(*+eZ;@G z7RNGxs)C$gc|p$Ly1)}?ayC*Udg=sugZ+GG{q>}ZX^T_j8(!HL-e7yVPgX4Z&k>4&jQ`01(^C^@c4`8wG<Vbw!Oa(8VgvlKsulQ5Ev)2IpgYz0G zDgGVtM$%LSIVCXpjgRo zeI}kslyZICubc;`!hG0Z?L6POg_&2zU(`lixe9^f$|}C&*eWfKi&sy~Ms?)bi!0dA zrvy)Mbge&g1~182(6^^YX!U5p?>2XjD+A2VNWjYmO9yR61KyCl(L167cIzM6JD_`3 ztTM|K46a6hEVhK|Kq3 zgsA$x@(TKQ&a&GW;ggxhu>9J7UfJ4DFvGHVBd<&4j19Xxb*H96(BDD<5bq|EXbcq)Ee80&vgqB!^U56B$f9~wR***+V#8?}42C$tYWzZiZm zv0nUJRXzCEBB?cPpV%I-#W!Z{Vo6zJODr$AETDcbR?z4??H8SI8`oxWeA}mZsR+3` z!jXP@-q?OM2JM)4M7?AH*{E>9zO0!<#lWz=eVorT!x}INTk{TU?{@SZa#vmh-+}1D z8T;5%@4Q+ojeG7~BLj%KVjAw2eV0FTVHv)i)Ex3z^E7zI{03xS!Mr>p)Q|VY^Y!|8 z5*(jv;vIU0J@t|%c$aUBwYV0P9_VMx5i>b%HF!~G2U{A;zi#{W=DOw&&4Z~6_R-{m zKO;x`c@)5nu^qScU)%pu@5=61qQA-9CwF&`^!|zegJQS0jU^{bkGaF~>`?%qA5Vc< z!j0k+)8jocKv-a2j>AY|5Rb+O<&5rQ9P#eKK4bpT1AfOVcHSD}#2SqO;2ThhfNF#X z#FD-<^W#qME=o_p|33cF{f_rH17Ou~fIR@?er&ncn;!p#sp)@l{FLdbX8ecr z_&+xsw|Ow`HpcfrIf$>GKAB+3BkN=a`%J5U)d&EJYhE~TtL{dOD82RC4ch(N15@ksmBY8B)i@dktb=e`n|`D?uw9nAuO9SCOpI1&`}e=7 zN9ofxX|Eg^TMPrx)Yf_(6QkcD*j$$Q z^>Ok4_Y0cEKd}M&=FRJ)QXrK=h~O_C^ME4-i0Lz4m@1-JcQX3%>p?FlCbO6b9}#|( z!R}+68x3%N5hDUd2;c)M5l|)cp!}y!=tq)EyKVXc+y8Y2u=Xenuy*WKM+5d+J zVBAg(508b4dh2$bOrnG8nPy= z{l{2>D^l<4#l2noABpn+SgiluQU7lq%pIeo$KQ++@GjEJ??N4cO)ZW+tCDUqfP<;+=17|vv52w zJ@(+=Ymi;omaFGjJ}Hjk+B)X{#6M4@;waj9p04)1`~%~#Xfxxa#s??(=YIWNWGn93 z^VIKW#Km8d-;wc7wK(Q*(cnuN5B$m4g`1l9W`6Jo(-*LD^TbpH-!&eRSk6;=g~L7DB%TR0JJ^hghA{sVT*;qJL-OE>^Tg8 zXODU(u1{p23gU-np@x{gKGFU1|A_`rWyrW-vA`bVW9%8mIAmOZklBb1%N#kc$hg3^ zyRbX=e;NN+f9*Z~Kl-2i|24;vKKy*`KB!i~PtQ|(O6Ps)@n1du$uK?sugDXi#~-V2 z%EFVul?nC{>g9`^o z4CiGAm@QN5X}9$MciTS>e~>!=`i7-E^-e49r0%TNWBa6ifeCCoiUBXWR5ER`bhfNu z52B+{wP-3@eG0XO41)cJQ(zRW=$hjgyT=A+99iwnC^k^cK3)rap$6dkJU8FiW8h~w zi7^iJnRBP5&`T#w(5t-#)rCoVGKl(%|CRHfUQMrh`OE|ri)_gL+@mPu==ws%i1wQJ z6pCGqNNyBu?hGsNl>R_zDOk{_BG&5{Q2}w6b-xofQ)8IT!RRh~AozZ}!3PFs4bMm> z=$BIw{Nt$w_w|elKYMt~;NaZhuM_=40o<0Vz`yO?pB%L(jCDRyfSqEisrk7q*xn&{ zpBWaIleM6B{y65hQxJ|$-+gTD>Bl2-Czi4M==OtySn7s9DY$*|m`|u7$|zr|exd~M z4p`t0KlzT=CE0>(#3%k`?A%zdPYo*`nJk6xjM3l5n|e){Ynw6p)%O+Q*B4+f-hq3@_g9`T9>0-4Y(8WC zSj+&}G)nB{o$WKv*J}N@r~mfS}tL&qd1#cWxwIKfGN)agvL4V=Dp0)qgT;=0?eMa=`m8qE**-q9{CCFZ?4)uob zdG#(zZ*g9pxx8bnM+ROeF~BnihYt5n1&HgLe~ALPqxsL~dCgTB2XK6@x06iZuci<1 zo3SE$_Mg~0sC#Bw?DW{IS+Vqv`q?}7e#c;+e0;Kih|e(^m|24N4K@$RcGzy_^TJ0b zZqJMXPYC9Z3R<6*UWBK`li=^z#IDFJL{~VsAajfEA2xsw%0nR5$E@S~w7xI`!47@pg9Z1?f}_ym0~(m0FX!2)XqX`DsX|Nm%v z4|uz(GX4LaviG@EM?j>P6d(kW0D(Y48YF~-nm`~xfP~(AhtLEIC@PGIT?7Ob0Vzt8 zCQYPEQ%A6%prVewq5hul{<7xe|M@%PIOAl0a__nO?6UUS@AJHMt;NiLZf_0)EcJ#5 zjvs*K4c^p=S^;1U4&XaB^)z@VT1m7)kv^Up2H-Abj>8f;AznwcP}Zbp>}&7NQLw636z!40i?zWW zy%PJquYGLGh9(ENR>lF`Q$Jr{USF0vz$dak(D$oVsVbMG17ZrVu4xHYgl-U6oC%9WMJ}($0XUAF|yES(D-iaI@nyB|-iG&>) zfBoqEJR+YD4~pf2{lW`-N2@c+02^cP=y%o@V9jA?8OPse+cTVTRIYGBV(KSn^vtoT z{yj2#&dSW$y+i^3?_z-X{-7Tgum%A9FO$Eh0Mh=aYR_2x2C-Ha4LmSVXQc89nY;Y5 zJl!VI>RA15g)7kdWco_Qpb-J_PhQpe{fzu$0muX7Uzzo1zpR-4ovie8e%5k%IFwhk5sEJLqjBa}X~*XV!wi&m)9hve>sgJD_tz&xh?PD}ed zAj{Hr?l3!bVUJf=rT*t@SsV27tPFfk{g-NT^^qnw^ykjM#R7ObtHynoi?a{j3U=M21k;9bpjUa)^s zwo9{W=xVLW|7Q%qY#)UI@B#4tmyZ6YB7pjT>-fm(!I#tWe79$=lA&42{N+?C?ia6# zG5#XmSb+>+bf2H{f^~nT($AcqTHl&~@Gts@#|C@*z?QA??Ugf!`=i1CL!Iw+mhMi= ztdCn%f32>pUup7xQ?lOYADWS#$iCXa+`l;|v8i-{RyB>d7FSxnY8v*7cCaLx)OrcSK(Ts%D5XjKQO^@%;Uq__He+Pf=c#*XK>ojB-j%6gJi9E zkVtD~1#ETj!JVx3MfaEXl-ge`5i0?;Q-~efTShfy5cRHFyhQ%&F|JrL81j+NXBN8Hqox9PpxHOU&$@>@$dVU0nq$hqu3j;_QdWjSsU=g zNXAby7U+U(M`sP#y{p@^63mFqm+<4p19&zb!1T`i_RM$y8#mUcvw~X7*IyfGhiLBo zqO(~UWcPfsMtE+}e^9jaiP=sL^3TaQ-E)IewlkZbXXp3n!7<1^AxwZCKQ@?w7mjbv zI^_+%I5FSy9aoY&PRSMDo(kFzWZtaHgRKwd>Zc^OcFn*~k_r32u>gqsq4|vfh=2F6 z8krUV)qbl6{&8S

;JHGL0^&*W-;CAL?5e)E6)EZ?C2Px6W#evDm_=uIIo-Q zo2vV|lk@hCg90gYSY7(JcDdr{yk+jLv}vtpd11 z{KGP6Vdf`-E4bgA^V617o48;ecevYIc%rJS~x3w z!MBU@7k0yG!TcHd?zkZ9$gsgV@vT3Q(R4Rw6zxs1uDQ;I$pds+z^Z>3z^q^S zoA{p<0geD>HNP!l%Um_^v!H+7Wc+VPuWXUMM)W{>$?}&d0GU3}ujS7XSPA6(^!lmt z0r6npIn$kUalLq0-ye7)*8eG4#p%nb+j_S1m(Iv||6lE%P;HWNUf-<0UoVqduhZ%i zW8ZC(_m6}lhs6)YVn=?E4JF4oIru{UwQ`XmWQYI#O^X3Uu^(-(?^@~xJ=^*dd;;g> z1lj6)eC86wSszeI(is{a<;w#hy(wy z1b3DJmdmx#!NmHt{#h{?jmie*)uXhD&mxLG;4csft7uc$lZ79+gG^}OEpB^puJ!}1 zaqTj6f8Ro&XSfHg_LFz>y?9spkoT&+!O?Oud%dTT1ixP+^S<8GJ+GRYk-!(%ht&t? z|G3Ns|9WZzC*=4#RRB+?2I!m7C>wUhwAXE&koZ5k2n&GuxzPS>8%45riFP|Ynx7Sc z4-Ha}%V%PBCkOrar0VtRtlEba0RG>V-*0Ph4dzddE|=)P=*9OR6GnV*R^MJJV-l9g+yrN&#p~sJ@Lyts;D7BLtIjW0K&b$v z!iRZ2`;~rJ0ivILfHS5Lli4f`xI=6A_LSuPznr?C`#L}Aye0nKQQc>{i>fi1=kI}V z{P!~B%U`OcQu_l2+0Z~(Gt)L-Bi6yvSpJ;(({`#A@B z1zjA2G~=_9Q7_pz*r$wVwH;U=<$jzc?r5(J08T+EQ2=zcRRQQs5CNWLEN~Cf_2OxP z2osy&iKo#<&|VFr5{8# zS2dCfLhUJzA$uYhdwqCK<`CN)>vd_1&kf&MEnyoxUZisr_%9r0Kduo!@RQx`t9E@- zBLBx`W#H569qYTRWverT{~_t$Uqt&qmj7St%O^t|my% z(2>9X-m%I1F%pn*z*CcP9G7j&#Mfr!i~};J_K8&geIsmhYVLn{Sm5)iwEt)0pDG{b z`Jmcw`TVB-=gran#Q&B{H6Ru|nBE|Hk8`u0*Yd3~sYiY?_}ngRIkeIC;GCndrKs#v z$FmnJpm+t&>`#o(totjmjzS(_S zwPF3CWO<&gzg1sYe>L-c&WV;~L;QzeD|K3;cUq4r^l^WnF8727E?w^}F;3pza=XD-#Kbds_4@eatl8FtV zAL`5iTLr(zC1!U}bo0V!^K*j21@Q%T&8PcQm-d~Eb~z^uacGVpGq6X#nVnbx8GR~# zsq!PINWFlg2B;He_>7iQ(x z52pV2d-aR;k@Y942fEW6Tq%R}nOCPQbfkea=3ZR1y? z8MQ--*4GLs+P~=kH#gU-WBU#U|JDl`i7)Ybb*P*~TfmrYru}>Z|6Uywiho+8_Sfg4 zmxectDL2S|UcuTaM)edb+Ja` zKxcKAtM09KsV}KNRew5m;<5D)tBtBlGYW8Y&aS&Z2=*UM9^i`3^6>yBwca1>p}Cl+ z69#Zzfbr4D3xfI+8~pDd1imfukNv-UK0P$>tBgy#I{dI_{DIl2-EoxP)CSwkBF5al z{ZWF94r2B{H$F3OC`WM|^9NgXNZk=@lw$`>iidFBz-y`fxgkt&Kv-zk-2X#~z5O#S z0IU7X`Iq`%?0_-@2#m05?DFxkKW!)oJzGgPp6A`MWRqnpZo^roMAp_mu9By6=zv|8QzNeiQw_ zLw!PZb!~CbpBg?qXgqvliReos z|6qnqZyTM(eT#gfyWF^2!GGTZ;A{~9I+hPc2UD%SL}Ra0n~xp9Qxrb{9B6MCm7_h} z1CK+tF!pb>;7z$s-L3M!&NY`!8)*YAr|ojz;#RcUxztB-S2mxlFbk-qZ+%XD3Hsb8 zbIxOI1CN3$xh9N5l+^3f-}D%N^FHWHZ87)K=XzoAG_1ng;u=&E(`qdM=X4VP<`qUq zLkv_mRl8;c&{yia>l?E=_%Ex8)hD{!XO4i8>7!pH0`Rpkz}=nQJD0VuY&{=DlX0RB zh#5SbxodK4^+SUGv!WLn5#*X-&I+I%&&WdN z^^*%kJGgfKfW?10ikRr5V~)m#0hl{%ZYuv?4*qY9rw#shiS==EasvN6{4?5D-=F9o z@qZ%zL<5We|Cao{M%Zcp%*VR*Ik0tWm-eJs{$CCHpYHsjvwAW()4Qj2U+Z2H{C}i=Dfs_N#&^u9 zE{J8YTBMNZvK2Z?w9$SU0Et6lkxV2Blp}pIfb5`k>2X?{AWIgZg3oa>#LkQ|a1CV< zX;e$Vr`{J>4HFN*yXRc`!fG8mv znR+{(4WwFOWYllT;J%%$4yUkMh~uMdf5DvWLl3dhx;2`+aaY>L-MBVPpba9beWns+ zl|wm}w$iT!;~cFI#nZB%C$R7Rj{e~J}qtQV)KS4G)NB=XQ7k{Dm zHxHtn^IyFWKWGIwhd84Voh{Uv!8eH~aq+;nGrsPoSRea`d*t3-h;nie0?o{{&JL$d;tFO z7Qnw2K+*YqCSbO2s|B0E%<3=jGl3rZ{y{a&(t$YS~1OgWN-enFyUVH#8V6HEQ$hNEZi-pU6F#-P3omd&H?9&TkyZO&Lmuy56xH|0;CAO4! zfwBLBPMFGy0%CrH4gNcgML}*6_K<%-f6>EQLHy)9^BE!@J^+dI6KyTg2wF}%v}wdD zPa-FHtQhw*&$oE2k-f#z7yYz{t8y3G;Wa_H@f^8HyN+{dslCRrh5a||?%91La{*7z zIw0Rmj_AhvjF>)qWEPOQi4Ba6d<=G94*DOC2k_<2o}G)^pUl`bs@Ji+(Z9^i&m7=; z1^Z;>c8Mjhe=P7ti3Ku3Xy@$zc&cCTOMGt6#&ZYV;$NJLZ}@<@0bJ!{vs{%~!DI^U ze&!OvZh$4m<=*0-8ATX(%v|6XhG$+0{!ac2|=EDK~h@V-%;tvq<*Y@v^`=Rd7 zsz11Z*q`x0>InF5WS;ep1FyAy*ZxQ>wFmO9e$rVrHvY7%>x2FOzG~xGcR#Ctm?-ZT zs#jAJgytZoRq(IXj{ISxBJ)VKnLzd^d1__!D6um$W5l@}4X4e^URT*(haD?~pd*LtfZ%2s5($T@sM6(RQ{6WEQ`uJRi;7|c)nfIch9RJOW| z9Kffh)o;$xOJ<{<0Q_V9a~xHlioh4vYs5!&Y#*#w3luj^M-aV zbNg+T=-YzS_#L18KcjW1_&FoEpPfp;or1uRB@%Xfa)0w0{G-Rw;YIHkOF&LwuXtue zaXFS_v=BI#c?79Ea6ST76rdJqo5a|kNVfgPSp5sK?cT%}=cT&nnSTlcyfxN8@jmQ* zX8ffF*lfTG`Aqz8x!`kFEROFD3~!BVEt3%wX8h6iFo3x{vUx`S8Sz84u=T=>8z?ye zqJ(_bUcd?v^)diI@h3b6>wmk}?Do_|{vQqgAM5-P@fN8F2kuZ9wG(Da5xF|9HGe%;GwU&sNAF)A-KX0cu(HsQH%;itxyZo`Yo& zV*I>Z5Auuls;}Iwe1urE{n3zap#jT%T;%?$O<9c<@|&dak5~NB3j*GfNroS7y$yML|E_|MQ)8tpBYV{GZT4(=L0{ zk$u=UKARfbGvrfqlYC!dd)WRyr+4BUEi!tk`1`b|ydn6_cUNqN;-knzwnb}(zC-i# zENdplcSQHs-P^0f>c^8GdMPo0W9x^jDir`zx|6bP7W?Xl(f{{lE|BLs@98|*emD{B z{Sw1dH-rBfv9%8i;!k@6|N95?c>m1NyF+Y&Ya^kb4JYi>ptxY&SiYDh0${XHd!C5i zrrFa!28%(f0fr#=NA;mGK(zmuwBz{j%!^qS^wglA4CCAe|8s)F|2_V({n=K0!{T@5 zUn&8x3jQVffBCfO*nzJMtdP3nwOijzjnk~u=UKs9=Kn3Wy|I27z?{EzzHmhG>SX{} z0R2BA6$R@D?N|iGlHi-sx#u#iCEA_L`SWz+sr|6COky`v6aAZ+(SN_`-dvqtza=xg zznC?@M^*31>MzKR_%F3Tpuvb0a$IyQ$04c6AHR*7gA6s0J}TNrX3!hZpQbX0xj5Bk zU=@2EDHkcqC3r;7az||s_(na(J-BaSApL=oL*TFBc?xGH1jW4|x0P}01L1&f{vs#v zrsnFj99_>dqW|GATWlR6u|whq@CUZT5{>1ewp8n*kKr)JGxzlv&l(R84t>wtQOARRIeGDTqHhLE2mIUj zTp1gM$PYHgdfmOcU+=!RnqJ?TIbwd7aiSl~2(b;SOX5Fn8T^mW{eB(4^6vPR-^xmI z6FS>xKF|+E>+~&vnZf$8(Y~i8`=|atHdg;0;e{!&0Tx9ge>K^^qw}}t=>LQKEt^~b z5q)r9{u9yDw>(qEQ`e!$1a`lr&Db(n@X764~*B$>v`2IjX8ZO=;V@2R|}Cp*8*sQ+=zyPMWMr`xR_ ztv+0D+}pPIRQ-$8{+*n>ATc6z8L>ZfGPZY#lOeTz+-qm@6Z{t|9c|>MHz_k1M<*VD zA3*eP#YUb*PVxT13R3Jni`5S*+^fDW+MoS000_X3Kx(<45e%;Cd;v=bx1t~IPxhV) z9;^_b49^7%2Y;WL1F&SQ^fPuS_S0QqjuQC;UFdT&X8q@o0ccmjzxcLQ^e(m&2<53j zAIEVm`>W5U@D`C$XFCJ`pi_4BF1!nRtn?fADE0>}kW;lS?7=?TWzIe~XjjoLp9M}{ zCz-yRvlhTQ86)y~=7?CX_fWllB7oP%Pn-}bnh;N+)BRR_OU9JE*ts+oz@x2Kl5u7= zE)dI%;QOZX=gi>lz-ZjrVS!_k4cIfjN9NHq1D`4~6|U3nO5s6VbCOnBQPpFF#4k-M>^kcDt{&f{hK8QaB+7`-s~gw^xo9omG#Zl^W8nd z4!nP7f(1(;PdP$ZC=bcAj)9a1x zjp@B!FRE{;e%xIc2^tstZ=NT5JyGS`VgbCA%CdjWjNsR`9*=hoBDai{kLbui&&}A`9$=@wy}Nw(zds%N4vk|{f!lRggn4cRt3fa zVAet71gt#77^J;Y`~O&M@DqYYXCRuN)-YONyVNHAZy3PYyjKa{$@cfh{^-}Qn+WK6 zu{_oc`s<96J|ewhb!5Rm2*(aU^Xm;TH@KF+aXumf9D_~=|HKU83vB$7_bW4gaV0oq zo%HC%1ADagYj2{2Ti0-0^QyZ z{DUg*t>)|FUfqQ(tMQRqKIy-5Z{ldw?Uo22nE)&Rc>wF$*k7?xuueFdoFRO{Z=!~+ zaKT_&?)-*4k?j^eMQ_ql_sCixnT!B9C9XQW`2_xDD!nF{70ipMaI(S<4y2iURf>e+`Id&REf>Y2=S4< z&9V~MN9u3IQ#>x{9~)U3pB%to_r>J@Z_j)HKTeEkL}#t`+O1RL0Za(Krw3u!|L3LB z_vqNYtPo7)@7A%)$K;6P5K{*P})66}^%P>r}_*kGG@BmZ0c!vQNt=Ue|{^q<*&hBcXo zM>EoARBOrBy@`Wvo3^0))#XLI^V`ZF*8_B=FOZB?z)xfU!*fNV0qS_||6$oj1)$$~ zrL}VXxv6;gO6!sKMH!>@^;rMUWyas3!TzNDpO75xBi-Yw%@fz%wD+do{QB6;`?*cz zQ@ny(j9LSL-W{$aldZ^21Tcs>q}*wXQz!Iy09C4D%#Yp>U=y8HmeNnCJEvqu@bg=rk5*+34`$@tGamoB!T+(* z^33YHSN2T`F4qs5kIFc_2ZGGK!WRYeU|eL&0AL+I-Uy(&UJt-1Vet;+4iL}01FT5G zHoC$8nB4gz!T+t%^~^iYO2uRWz&~q<|IhJnj^0S06+mSFT<>eG==u{f!s$)%``^@h zDACUC!bq%xLX|Z2x>oKD4}!rpwEzYGt`9<`57hxg3h?gBCLcr zg#oySZ7){8sIy(%o#&%h=^@+ikzkR1*fspu;x{L1-%)c(?vhx=5^0q+2gT~>*AiHV z$<_4l@nm>6UfF9GD}Q^*$LV zGBdh=Qldy(#zq+EJ`)e%)@YgUXN>tD+dpspCbey>*yrk7N2lWdoUj11axji}`)KzK zBmJAC4&bU(|9vdlcv6FTYWT3}jR1md;(wrByPrL5i|c>5!v8SDra?Tj4l(Yy%tA&i zU~ZxePYirH_}?;ru}Z=G;D2_oKRp(~-v46;V5|=IININQzjJ^smwlV07w*VP-Wz2- zzh^R^$(`s@C!)Yc-LH}S;SI*g`t^Ch5x)5TMg>7XegZr) zB+vJqfd^WTMf<-H{r}a}X#Ogdf8+AbCg#meOZ0E)>h9|8^=iE-z2{Qby<&A*EIRE! zuS?Dmav%Xj{e~(GT{#Ga*nhNw$KT zB^gn6kafjrBh(2nPS7!U!LYPX1VUU}7-Ms$eDhPt?Cu^=Su`SRhB36DY_hQ^>d> z*kN2_@v|Z+9soW7zQg9Z?`0Wre|PXdF4!9vX2KHLEnLLP1Ka%%@$Wib;vek~2T%dT zYF{Jssz1j7;sF#dpWl6d0j)0s z;7fpdJq7lz9Ui=NV4v2$?U~X0FU9u1FZr2PqWW+)*8h&(4|hjauT)=1^nX_G_WFV9 zm3Rb1|H+~;@`ugwVMwrAPK<(UWCyubm#K;Q3nUUd0EtD{AZ0KF`8+VDosHfF;YAj` z1Lr8oYOIo91JP=GWY{Z<8!?EdBKk)}W03{yuQ9-Uf~?MiRj*GEritj20W9-_&^BU| zjv6-a=W)jV>KskYA~>N3KpS%%6Ki12Eba)x#1d_l5et@$mlVIi41lb_^VmDY__(_L zU8)zbN3Z}Gafn4ESK4337x4__V}8nIdi{%g1GEmj56f2SEodVa7tan)SOIAj1ikT= ze7kk`!fsuCF;#%$dnfm{>pfmCRS&Jsh%AkdE}5L4Yo-d|!K^8DbI|`>=bX+R?OT%t zJT9o36%D&jkk7onhe!9jQup-Wal^>`h;YPvGB@QX6RAf3i{r8mAQ=Sx04;p#>`aMe*pAsI8kCK#7HU7SjTyMq6*LCdIU{dr9#&@SO9)(KzmKVkr5|E%Gy z{wMYi{+G`^b`H1wE~{>gZv8wAw}0+9K73?t@}~K0n~8(EG9nRy;SI)14v;t=i~#br z{;~A=?BCi3MiMyEj3Bcw?48*TUTgileRb#M)coBW{4?Y4sK#Rh|8o=ln_gA*Q}w*e z`+ZsFb-N=qf%y8vgP#!%hCvjv1_r^ja;MJVb72Ga6zS)Djx~aW#Br4Ng4&5_Jh}H} zBXiDVgFGUUW)+Y}q!>*Ly4Z&2dwGFx-QWR^1drPOaMF-)+=k&VT2$HsR-F~B7yMfR zh#yczr;=Yov!XBcNvKc)Z!iFSft|pJKgRr_fw``2Ma!%It&~8A+Im}P?1Hw@1Mq@c zmUfDNSOeDNTiDSn81dj7&t_DRh9l+@iF7VXdczcXTek8AM1Uj8~S5rE4ZZvi}m zWHrB|e9Cw~k>AI>`k&+7s20+9z`}OsA=Vv(L&nAu*eG0dK|Jw0l8YD{oU9+d*`>k% zyjUpH(xU%a3;=K4*dO&jqMt0_8ex?8WW3R+)@H50W{l%ux&M?rnURbwa=&fz?96R4 zsp$(M0_O3GEpNmhy{`W+2bk?IOd&s56J%VF`PYW$ikA)?*gB)Ve{}y3Q=4^L=Yg#C zyHZAMY@WzJncIE3cjt``OGVcaVf0h#{i_egH$b)+{e{iVCjJ=T5Y5SiylI99ftrnaCd!a@1iWrD*e0|wl{O* zte?%?CD_A`L6f4*mI~&0#0lN==3GY$y<|Y)0;3E( zE$u2ysI@Ieidp?}`bbWdC4CmOcG1|y!YG_U27~zJQt3N0iN;+@l!L2ljSxwo_v8UB zf0&KqwY2DI*IjWQB5kp!F4Mhz_FPrc9r@~)q#ls zjt>h=jYKUM58(D#0CyzQ{CF&Y$J#GN?oW!0?-*TlNPK_B|LhizK$+hxHZb#p%uHnP z+RRUNV!m;lZ^`9R>Az|4tM=||eK-L08zltw#YO;KME^%M7WSxovSNt*|CrqA{AmB% z(xy$~RS(YqmCe|SS$76t?-}oOM0Qo<(|BBhWMe3cN9T=9?23Kg^7xrVc z)3n?Leq((U);*b%J8zr6@K_4|$?p^6)0Q{pUu=G&{AEs0{e>a_aa^A@SP5vS%&72e z>zC~>bY9C`pLYiTk7v%WwS)h0Z{%$c>pt5(zuGY|-FIfq-$N4pds|lh0#RrdZGTXV z&d|0-%J6cF#zJnv7aJJhdnH?ozW9_z0XUj-$pSKteu-$DRdap)P#6XsY7`9b6$vKN zPD^YJ=W~7iXYCK}VeU-5h&5nt9c%W+5#L(;lO=TaaAIy& z2oNu@T9^^Q)C-Cv?S0!L{^13B0v3`9^i=3Gdree&9PBDjat*SZdhPI@jK>mVQePfT0!0KO0#;Ni?K^+0D@XF+?{rV@C& z*xCCEo0)l-m1|ZI$yPKz$QS)s@8BQX-`Jn%XCFG> z8bNpgt^nnG~lb;txmgHng^QbFu*XTW-{*@SW0b-q+9^SH>1_ zC76d8qMX7zFYup#Av|1FV$0?VVcVrLxZOh}NsA`#n7OV3k5vCS(m$)-7YM;=S|NjI^-e z9|SvlCvgDte#73twfHZU{zUw-3iSVrXHaGVnvuJIpmkmQl4$=|;`y`M-%m5+@5ZtI zH;)CddGh@4?XH`Zf1a#Q>D`?8-{ic@10#_lkkPy77^6zaB2tMY$pGR}9l>YVL3t^% zgQh_z$sYRe;=*d2GWw6>k#nRNSw?1yzv|hXE8Flr_dzXS0d-^(Fy@!__*j& zQ0AHfSo@CVX~nPa1m|da>}u}z)*y^%0QfJ}f5iWt?W=gjeZ+BfFaxG|TCx?co(-eH ze{9-IwAi-!T%5zvw2jS3Am7mkumtCEO`aLc2wr496Sxyy?YJoW&hw2Hpz%4=*6HJe zZLcNI@}$N+VOsCR_r@}Lcm20(ykNaphjY5`OV0S@YD(SiP3&D$Us8Rcu>goCZIU*< z97+33=i0;oUWy;EZ0EPF-=*f48UP|~`zG%-Ci&B$&V}pP2E0)Ot z@)_;!rfm=Ii;YmM{$c~T-|@jP0KPwbL7fq?z*!jye|P-<G{qGr-b$eF)d^B@@ zt=)KQ(Gk>VFs5vDDL{?m%6uB~LUvxyltg@?a zM~aX}Bu9x>8-o}9dt@9tm#Y&wXFrmwtaDAIRx1|VAdg@~{B!MsZuy4mv)6Ov8n}Ud zFi^2TlzA)$4DV~ppSn&>GFKq+~9wm=B`*P<^|CI z+#Mu?Wi5unaXcBC7%mh4ep8Ou_Yswx%Q1LPR4C#HV6|9>2xEG6darm-+7Vnu-OhU~ z<1%1Ra)$W*W?009LLCs|C>~ z#FNJ5nSK-7|JpFXZHYKPnJnOx_L$b0(fF+R$IRV3ME9HBN9M`QO$r7sjaI%T*+D9T z(evP)D&7+N*UD#BPy7HZf3|XLIm37$_W#&i+3|nm*NC@|Y$6TY2LJcO1ITEf*yt-q zgN_Lo%?JZvn{Ss-)Bi#IJ8s9>x=Pi~nqiR(veLllX#c^?@$vT9J^SR@nYDc9FyMk_ z{1Y=E92*;8r+6L2C&>voepjqp86*dQ{o)yD1r*z#nxMh~a0A=Axz-t3;doZ6e!rD9 zejf|^Z%s_LlQ+0|-V-^SEi=yN7u~0-`|E>({txtio3VedCB~!tX@g?{Xct-$Lxjjk zIo_mpCKAI2c0jJ@>uHKv;ya3qju;<@#S87;{7{W?K%Z^p)oC5`5W_viyS zio3}2e{6oNf8QeK%QZZUZG~mm3I0cB8;{hG)(U9C&hI?RfqxW)#FFP1JK?ga4hA{n$6pdrTsO ztZQ;~Y@eBVM#n2r2gC?od;qO{Y6FP|f^5Bjf^{Nj1yQ1fNii@Ry$hQI8^lY;_n=pw7kiuEWGk=uf7t#u+|+MdqGqX%0mht-luv3|UDD`Ey|1!o{cnWTlp zBgqG#??62m;9Pjgz12((*^gKy|-jx)!KtpvBqIofZf*XZdHLI3&<{y*OBR0mhLR&T1`8~mTy8|eM0 zdM=ScvH%kjBV4Kb%ZxI)G20`FI)A$JZ2QL69l_RwAPWsUte+2*f{LamT4?s*||5P*mOVB^8^_?)=snPOBMdR<;L>czV*vF${f1D9- z=cIhzHT*}s(tL#@0zrF;@%L+k(fDe6m_UD@*q>vD$QAT?W2?kdFKAugzA)&2y2;5t z*!guv{g25TV$9YSS@-XE-CtGzUZ2;yqIY3xy5F6#KVOO`ha89+p{}9yAbiDB(6{g^-*{HRH2uZV{04<(E9ZH2uYguJZ$};y-1D>CtFVUe zL3_-12s?soj`g>n;R5^EZ}{8I_RxoT1la#uci-9lQ&t3Cwmv1RMa}Geytij>pL#@f zXcJXtO!>(4=XYcM-_W@?y5}pMr8}>+z7^Y_`S+*C57;XHypg;K*)ut~+dlaJSadS+ zza8HA4!Zz6>(}!e{A=@@|L1%C0HcM4EjSBnx>Wo-{-?|aG(9!Qcm4Jys00vmMiF3@R%DMIJ_NTH!`~9)T zzL2Wyf$%u7|FMbFOzD2MduH{)dY@?jMZGz_zt&UhovVw(;AO_oqL|_HsNM z@~ZyFrr;?48_6OEU_0=imko|ZKZqv651+wDtma47fsJY#GL#%)4iH-breN%E8Qttv zZI^8my__#L#q#28Xp89;&$gfC1NLwo&hlvrGJP8DAil){fMe)0&X5Jv-X2TOX%mz; zXxxJP8X4hg^b@G(cX^t=&jPFC55V6tz-HY;vtHck)u^l%wNmfU-Yvb4r4sNx)n$>Z zP5vVW@QdV{u1n16TZuVs*jcIldOY4O8tsafrM8EU=(k-Z%2e}n(P|H9P$za@G9vw8>hHt)Tq_oezLRh@aiHxA2F_iN=0Z(l^J zU(2eRRLmmZ*tuv+^f=O_1&kzdCO`eH7UNs%@X26dNrV5Q5w%9OSCM1>7fS?PS#%%R zLl%v;EAiY*UsqoM35Nx+Ts_h~tERR1^?kjrc3*sTAbbzBEA>Cb39t{y7U(N*vfFVYXyjK?R%qs+5^QO;2UiPtN+QRiT^VDkE4OdgmKPn@PAqu0rZ2b zb#v^-4NF)vyngWb-^D+x`HFr#fHl&J69=9i7}1*6S~EHSkK}HPQgLv8td5hya?Clp zf2^HjVhv5^E5JV&(XgH z!%78Gg7!q}$UsvAhg`5%KOKoe=0rhZj{a}tSM5)w3DG}!L;2&{=qIIK>wz;k2YrSP zqB@A{4GTvxGqrk>JzzvB$Nz^n#2WagrVuIT2uB~A`*&QAc0JL5w7(g3@cZWAocd(4 z0B}InL<>MabB0o1RP1h}6YxQ?MzEF4k!VkQBzm+QBkt9^^cgx>2H+>Sg$Ictz-L4@ z^dPJ^Dqg$!dcNV#*kfFmO|Ia%y{C2n*CA60{>`b#5xyg>1l~4BaaFFvf8PKcM;vg= z?g`yrc0XI4kr^Y8=v~u$qIY`l$a=Htm{b5$2QVRT=MS;{KNAmtxu&=2?AKn{x;C-z z3DLuj!~xsb{d1aam&Cx|mKkxbidNpC(Zf{yXwQRlKJi=37wg}@_*trd`m2L&{s#Vu z|4~0kbPYZjox7e9?SD@+^0=TCds!sG0Oa3__5I(&zjgm0-@Mo4U2;Nee?Z-@W7F=0T#w5nv&-n^@i>*RXkYnSoNS9&AvvizFM;n zt6${fCAg}$GXUx#_#}L{W&Ej=S{JlW$atT}!^5{E7gGh>`2Eb-uy40rty!uq zkV$8+_G_`;!9S66B$TaxeYB6`f2i(dY=WZ!XrJ0$%|+fzO-Z|G6@12qR%P4))qji6 z>cN@-M)s_IAwubzVN?O3`9VM40^@IB3XoQKk-LBmbuie$atDpHO7zeJq7I}MJcBOh zC=qL-w(tQxqD|yauEkx|%vu0=042}o9qF^ur#?OX#F<{Lcv-fM-u3MmJ%xciPJhlP z<1KJq;{c;#0bJ9aR;`k?0Cw!Xt9N(rs@^y2PgS2uJ;}syz{FGv4|Km4pYytSp7(bS z?cCD-TB~ZE9o@@pe2mB4G>D!S`JWg6cV4!I(U8~0|35!`fR&FmuGNp%uU%j8U!s8i zT`K?mO;rJGz-SurZUunxHP#}Z66AybGjktMqef-sT#jGAv8h2>Y6pM+_cvnyXn%A6 zLlViqH1qpy-P$^~|NR+hcwx5pXWyk^fU}bC-z(2LKQX^U^2Bq}AB<8q;zt}`%ONLgldFhtte3s=h4});JMw>*ffojzXnn7Jd2s)5=47}hH9#u__hkMy z%NzP=_nhk5`jABZSC95zA|wA^t$vktUceXf>4qj%;=rhuB9f#m8D}pjHPTk}8)u@? zirz)qkTb^M68ocerN8c9!KRX@9xD>Z6-AghrakIPFef4kQ;GkQO zpBVrvfL$9Ddju(8^9}rib@0zWV};lP)GUKYutG~{9cSSW=(F=293d-#TiR0ClKwS2 z$CH665KDg*ABt=7+&qu(gWuwmzuhMblc9w#xn>!azm=Sc_Na?&Fg4+87f|ENl1NgX_@=I6Jb z0NTIr>6hcM0lEt2{BR~xtb}UQ7VV?A3QoL}cmgfO{{S6oMt&Lr zr0qrkI8&{ZCtOiB_GX58|h=0%_imkl? zhvHSlg6ra)(}Vax*at>8jARz971p!0Jb|n!pV;Scs@?&k^R3XLzdO&o|6CVV!uHYw(k8P9d8;y<7T&PL0Oofe%8Fof>Oa+Uk^y+7cVq7h^}bm( zlJx+l#tT?8vw_|o3*eT_IPta4dpn)Z==L_Pk4ERaBKIbV>&*!Msej)qHoyVF$9t{%G1dOFGS=@`@d7@Q8Gb*Jn8v5$*L);iz>#@Y zW*Vo~aCX>lQd-6s1?&!Nb{Rk`pp5(l|3&~E{|irz4i`>sDitQ@3T3`;okh)FAFs9DvI_-bwu|Y2?_2_bA03cWdA-%&J zbnzRUxv4MtRtct+$UQQxMQhuUY`j(@8h9UA|5pBE0f2rZe0TsQAAyzPi~x+cMURz`suc!xpUBr}QSh%~j=Py#;3b zvKG@g3hzt{z|19a1GouH%jR513!gnOfO8gTL1~@2pKI9?dQuBO3rCitwHsvI_zm6J znKkmcdTQeT)!_1j(|g~qzMA>KCkOviVsrd4et?#;dtD^P0amkLJN^-a~|d2__&uz|H|dHcvf(fp!VNkghc7&;pLf<$6@Bd=zSj54eL%~u&YbnY+x zR&ZO6a}GOE!Zobq1Mi>#jwoDE^gjMA5-cNGafddxg2tBcG+aZ>fq(QrdYlpcR{vQI zNHv|+^o+BiKG9>b{qYjO{_CB;cIu{=$i6u<5!bel)WJL%_%EE;*Q-8}Pebqe>_#a0 z%rp9={4UI^KGz0=%XmIo2tyS=iYs$>>;YOv7Spi;j-sNEjql6Q1^?`2kNxdi#VVi` zzJKk0dX-pAUt;ug>J-5nlW;k)AG7NzC zVHSXxB(XkgeP|8s;a=1#j7{8Nhxkc*#){Y~&qu|uaY3w^^>UXl4qVpyT>HG({*MR! zUwk9;zeTh^Rlo1(?p1xXet++#%=q@Y3^SY1*Yq8I;CrR=SO0_i!cWE{=sVfgch7r(am)wPcF@nvD%*4~ z>aJXUy?Rf*bn?f~^tKpm5587kTz$Mdt-=3h=}X1|U7hX5NZ~i*3%uU`P3+F^TeQ)>xj2HBy)%E<{Q{n+w_(ku_6$Sfx3q}8r3O-;A;{V`e zom}ns+~=YA8{0%JS&5BAxp`Pn<{wR&sk)cpM=SHC{9nOvVI zx+xs+(fAtH`7q*n%P_!JO&t`rz|?SnxeEONGJ4nnB?|!u3=bC!NsEXC4vB@bSvYj} zWDyUHzrkpUGG>VE->|ggfJ7jB?YGA7e=*V5>*IsH*sS%9^*<@IxINu{p<1i=Y^weS zdmpOzuX~yGtd&e#X(4CunaX^}0D?~9f7Jhp zWoG|jqp}aAa5S+pu0;hvKkrYh00v<75N8184phc7j+R(}{a}oZ`?B$jcpX#&Ig6p5 z2v02@%O}p}Xc+*D!u}~d!1sD##2K+;sQ(B5r9XMAFpQkL^pLwAsbWiU7q5HYa1oETI26l08aB!``1A5EVKS~Ul*#O7q zj=$?XkoD%S=v#ugtPsi*E|*XaHOn|S#7$(G&O%#KGbJeW7n zk1yb;KWhLc#%?Dgs3ia&a4Z|YodJyFi~Ubt-|Bj>H6rLcDM)=N`hVNTUnXA83}Jd1 zn>1(wZAA3{KK|9qYX!*{5BzyxR>GO%s1qDZU_r}BGo`AhT|CHKP4@nke@T+ zp}Xb?9KZ@Fj{PATKvs`=L2a$Gg1SbCqkKo^Ik!(F@yJvVxPA&Yi~%?047(p5bc!Ht7%WtmG2dMrY=z z7g7a0qkgP@b8qL~!@V^J@9cfJo>`sM=zrz{>t-f^&u2aG%k%SzSOD+q+}^&Vb$t*> z1bfTqz?~Bj+doo#Q1t(~(U-T!Qrp!=pK>3#s~lVC)2Pf46s*NlywBO8mMHN9^d1l)cwCdwbx%y2KF3w;RlkR32FDNf9`CKw+qwR7HLv8qCZ~$l% zr~akh2m9q%7yy}tIndR{s<7;-9xkKJ)ks*r!*djfLngU8vX8ur3w59fDRN010G}I4 z)fx%z)dcA9_>+;RiCI`4eJb;@!pX_`*R=~rV3*eT{5}hAsJj_m!=}m(}#@vGc zgY*A@bc1+8NPnO#p0wtuH^6zswSf{xY*bKmJdg9ZgD%Z));z zcSiq%e`W_VKCnf!G9&-DX#4~`0BZTy{4W^*{1cfQmgl%OEBelD&1@}``Mqxq0&mKm zPlnCjnY$gC=W~srX}Jqgk2$g5=f->ADI2qYZ6DOS=1G~UkZMIL7pO^M6(hV7eEX5v zJ3cL67*;ty3~*qshG$d!h4s^x#|G|B=KreBcawYhZ2YdrbNVK6cjqE5hNT0qV5@Zxv-?2pe)m$9UxnNi% zI%Xa8>#tJxi*%#$L=dvcf6&TRunf@K{B3+qUNPskIR3RdkY(go-DaH}x(zQ~WIBS0 z+8;*zTGMYNkQo43TdUYTa2w}nXERrb9Dvn8%wWj|Q?wJ5=)0)(i2#&-1D!k%Jtb-j zuNhO5``}8x2VMF#@_{x2wvnjiw;ZW&0PoQ^eRk2qrw8y39Hm8GlUYr~v8-x~ctWi@ zddcj9JxE)5Gj2W~4A8g#Y5An?C%ZGNmFq9mzsNiwJN2Fn1MJpYqW*E#3f?L#!!~(cFQRwd`7Cj?bz~x&91k231F)Px~NcaOH&HF``uMToP5;oW>=tkpXx8nnV zetdW~n8AvFtA9$406Sq)vzZs%Jjg+ZlK%rkME24D8|0W%Gydjm$tu_nxDC?;feg+9rS-OmjC6c`#Cqh#*x7&bNtK;&ZmXj z7->x1!|p-;>?Q-cTfSjbC|K}&d=4i&$s3P znHOwi;wL{G_omk&m&8q&A z*&KGys6gykFoZM`+cK7qL?~}X`xNhA{F^V5p#wrmV!1pM3FO1Cl1NSny?8SX#T=;_P z%Wp~nZ-n@tm6v0(ZuF4q_th2kuj@b88}_d5{h@bJZ(%*MI<-4J7J#z>KN_e1yV7xZlb zbU(;p3@@2AbS8Kw{|A0HX#O6VZ%@yC3jSRk5X)lg@X>bpIX*`-Cpnh=8vmvKC+@de zj@&Dm%k^4&v?jOyoC<~;@*LMC<9BiD{f^F)?H7hy5dA+dXrI=!ahpUv_Dr3_uG!{h z{~qCjo#PWQ`;apOvR(pgL~MZB!N-R&oyCA^hH=@yM{NIhHIao~@;6xn;)G-|4$e9w zE4MdD?B$yo_j7$J|NcF>Kjvqh-d)sPwtA-eL_M~5K(F1KS%0b8uUbA9+n&Kc^S!VY zJ3thQePj}OR!3u1BQNZME6^QCk$K~Cq>=>!jiobg&{;LnNNRDV40)GL%$;)=H4xGa zx{*Soe&|MZr89-{7qUM*Ef*o24IiKxZK1LaE*Qbc?EgmlT?qjHpV7?fet1v&ovW7B z%8UY3IntwWc+6$Ka`}+&wR5z; z-~rh{-+*T(E-LSGtlk1|!zydI*7zTHqMzv%-c7^@_J+j+`1jtIdw198S68Jzcv>P&o9BJM82xi)e9*7N8-1=bvoo%} zYU{Ab^W>nP+~52l^&^W=*{05z(=W;-Nnn>}(s`K0Bb8ZF86(MhDA+%ELF2P$b}|a@NDkxN#7`%MudHHTH{ZW~VEe4~xmW7` zpNYqHW9okfV%-yyC1<-=wOz*iogDnXT+gV#TYaS3thzb+e{|lbksWNif=l_|zeJvx zLh6wUq)8js-^h>FrLvFogJ~InQA5lg;2L)5GUUpupaVJD=$+_LUP~L0J!}*(&FH(L z8@&o`6mz!CzlyA5LC{t#04-z2`#6&Uem&Zsd)roQ5S|KD5WB~6ah-6E?R(VP&zxn> zPhO;T;;cNAnM>P_R@crd%*IuyI&i%L8ILE|;^w(*yDY}j%Xmf$U=On{Z~|xX%swgg z3szY>H<8~O6Oo-cQoA18fh!gdgm1KNU;_GB{39dC2R*ud_rdOmtF!9mGX8H=)&ux{ z??=70G8f2q!wlPm0VbqZUx^+1>EQpq%m#c%)&w2eUa56dB-RY}{2=6@ApYQtjJY^9 zYmZ0&FANsV`f2$q^RR&xzQy7f`Bwc{FC_la|6GCjzKEVtHH81K2R$NqIy*M{{jr@h z&u7>H>tbT|Qj0J*8?%73D$&qjd)4^&|5*-zd45;PaYtr#%?Ygqt%-^J-I4ZR7Q6rL zsRcMXPck`}yjI z`l#4y3wqDj`_;n}{hty2zkM>gSao`&jI)yi`dSK^MJp&5Y8>#PZH~S&-bXGR8ye|B z7K^t4O3bK(J7eu=#)3>UidwqdspuUwlA1@^)ZaxO)siBDmg@V{Lhde?fCTXYvKakC zRv$b&w$JfAXn&4}sfdM%TyREA-IYL`6PU3-RMZq*%=JY-XYst+=W2DXDpT58Z2_(d zrerqk2<~KT-DmO|#R5lj^Gvb|pJW(W0z4NcRcm9d^A?D=k{MW|xwaM&Pgb7K>tKjsz+DnB+@iJ->=&J zc_ILxj{SdEV$rvEHp_}&2PFfrN91~TWPV|!_>f32q=c z>*N>@ERlfX6EN;i@1LK{7~tw(;GYOzss5!#c3O1i-Oc!)NpE=5%*4NSP{izn=;GPA z!bXk$XWZR?hX0i_$M0%+jw=)S+bi0C#nuz4^SwA$`I)J|J0efEXS6x<9GkPCWsFK- zwnOGYW4_^C!U3#5x^M0}H-8ZeoYSxn+`tjDgXkUef4j5~2Ecy6#+jM(PDu{)!c;TN z&Aw4hbZ}Cl8Y5e4w^t1Esr$b^wLjlY?r%b@v2Bz2Te50p{r1mfuHW5z->pAbA71~l znqGZ4-->^%|GsSr%d@dZSuJ*1dMdl3d;602R_!qr`-_G^$ym^Acp0WX4MT@k5{Ap}ml**-e^Bx19{UqBJ zZeu@)hIP1#$H@~srzbJ@El`Ha8Tpu}L(??u0Hsi_N z5!I%d1MI5ahkO6p`%Z6z!Ef{)tIx}d0JEe2C+5gMCI)>?Jb*7{F2Kh+=XPFf*X<26 z4q*34_ulc14-Qg}Xy(KDSmvvFYT(0>Yqgx7KiDT)h`*2IQ}c`F*F)g9x*rUKe4_%K zi^acwEC4cmMAM1tvCT+K{@(Z+C*|Dr^9{Ac%=ygEBJ{Z$a{Yuf_JiIF&x9Wo-W;@oE_1LuSv)WuC#Bqz&_%%7^Xqtv(PVpyoAr zXDyIj^J%wW8n0pZFw(s2VYM_@D5heFZCZ{zGIqv=i39ExJ|G7;IZw7q>*dyi?UU2n zPXzndXWqY`b%r!~|Jkwrcdw4B7xtctpSDM@4g*}1+Mm(Yxrq*J5dRbX%DeTyQmX_i zd!Sowg*3X4n2@%DvcdNSjeTSwL24efQjtrpP_zl(5=mfR+0S=i9yZY4=dRiyoT)E> zY!-belKe}gz!uKAfev23i4l;)gEg?l3QvequEP1;r9|vYv{oC3 z@319!PMB8h?@CV0d|J@Y-Mv5WsMJT=9@(D0;*HAq94q>ZY`_L1G78{F-CtHiB2h2) z?(6-ox69zhgWL38sb1*romJ$fB&t+*pHB|zQ^`U-mNkK&>73NLxBW;g<_6fT3pmC>QZEldZRlXw!fQSE|;s34qe&9VBqVcf>(Eqd30@{G~r^1(Q zkNmxB^W6?Pp81KHp_Ce+GaA0xC-@(eUO9JQ#num6U&?A<561g{Ad#1wGwyF7x_xrq z#k^SmU#On0ug`nBt9M{;%lK^Hs9W_inYnG_2LI0cgWQQ|(NuK4sAL~|)Ltbj2WMzQ zf*Un1Xb|(p(~wQ}IBOOA^kC%~Er4Rla$VwkdKlab6v+kLoximPz=O7ct@S6?iZ-k= zZ;RN=-{^Ba04kB4{aVX_900yJ&yTiLBjPp48O;2_we$0` z`bmYc=snp*HsD#%{@@?~342Afm7XrW4I9zF&c5JvxC=F#JUQ3pSniFz;yPv8BSu8f z{W78NmA{P+_+IT-4<>FqkuYB-xok-OU-7BhB>!*855B{Y0roqz(-!^z{R*_hy zIyzMV)1y~d59|x60k|@8=Mvt4_~)+d{o_`*i>GdHIAe>(a9Jr~pACF}3{ zey~76KYp}GCmM(yz_(?inr75u_;>st)ilii|L$g{(PMHB)xqQqiLh;(Z??Wqii1Gbx{IkBtW{L3sG&O(wv_`gGO7+5d8Ch^pH2=cb^ZNwB@W|#tyLJd;3x_7A zxK@5|n!A$UO`OoEckA>>b|was7kp zMG?A9Z|5LbZKW6e^H--bCEIR(eY?%PqZjL1k#CaGg5A@p!gMh zS1fg|3Nx6?;v5lP*n)eo2YI!9wu!&okY2~wa&M4r`(ZFzP|(~93lNFW=P%a3xim8p z>PYZU|owH4qo{_FXx{joCC|7cYBhws6%t%TFWAgwPw%4eRpAA8d>5Y1ZkobR*B zp;r7D50GQE=CuzvmZ&9JOXg@RjNm)dqL5eVM|wzGLzdDa)5;(I#(OC51OC+CE3x7+ z-7~t|rJC&Xss3AbaQNW62R}df+unus#OnM=)r{Dkt7k6YJDVDyYcme`N7*juT-W|o z>&alA=-**M{)r9#KOX=8vBc8nMV3o!&nzIio<067vB6UL10(QV-#@@AAcse^pL!X_ z|4~(k^*<`uc~89mTjDp5&)$ujGp7Xq+XRP1>SpEBq-gDtK`YfgL;fZMtPmvck~-g^ zt-VwA({0_ESo{gWKGFPrv+W)H&&qYoB#@b7T=D8*jg@oVQQ;0|LL&RHd7c-KerluF ziTBY8JbtnOvttEtP4b7>1Y`)X5q1e1EQqJEDEMF4Fv#TtN3@P^&x!8;c3Aelc>fRN z(?Fz-IoT$6kMFLUIU9HE{W7Dq?(ALCyR!G51HjSL0gjAS`RDG&^>MwSgCk@6zisey z843JIeRk%O*gZLbDbXo^4(_i?4dAC@kA6Kqz;&HJwSV8LT5pSvTo~W~q)6~_(VUmY zD*s9%+PeplU|J6!OJ9VSx*yTrj{p?kfXW(X7KJ_Z{u$k420+`Jzc&niE(-o{4*n-J zRyp{?17IEA?X!XZi9zNDi2x3Xw*K4re@mF->_+?V-CDQxZ}DCj;m1rSdj*%|`{(33 z<`Jk9Vs4K$gZ<^RF6b&@16CrX*4LU}#wfvSjtycJa@mL#0_WzM^Bet7RDg}Y_imym z$HW6TEjGsv`Tog)2V4KvzA`=hjiCRY#9hAA`F&@(*!B~H@M#(Izia0D->3JJ-fO+v zd)M~968zs$pPQ8%s5&vPgAP#tYCnrfWKOMak1q0-VQ~A#(=IT0%^Xdr(c#=M3*dt2l$_EvzJJ^~%X6cpv>At9xL8 zf?O~u1M7SHgnHt|&oJ`9Q`&FblXnE`z=cf^&jKz{+0(Y zEI7P%U|6*OHW}~tr9}OYjn>Cj-#1USFu%9YRmOxvR*TN3l9(~PD+T?_Wz`|p9FYNt zOTYw-K7`54Md060kEf3fz*=E@H_XC3X?x}Kf~Myd3Dxmf%^ zOb_1~26!P=|ATp}tjaPeHJOihud1%8PwhS5`$qi#dwP%dj_;jSZ(SW8DIlL-#&~K0 zAerJ5sZwhy?^?7Rg(Q`ge29t>C!@Z%%t=>#$v*yzKZ)dO19K0tVZ_aBgFK`jR1?WZ zAceakwIW^JNegMC2-f-rwfG@;%V0z8%$XpZx&6UEcy_!z+{QDQr(||QDxhHx;{~ky z%V=6hFBK%y3Q@$F@C|nYjeLSB=|^i8^?uARf`7DX(Zt2R2bIPC;hEX!N4y~{7riGr zj-CLOK9l#eUzxqsmg?L0?^5v3RXtmKgEzyT(%ZDh=#Dla*QNLI%V3oC;xlfLpJTe` zbx)}7t6%7i9o%Se$HB7)cN@Gcm8CmYA8I^+DLLnlnT6)diA6IT(AOiECwD&9esAlM zCPRK$Ook4`@R+KifcPb8e|J?O@p*H4BCPa%%kQ+u$8+ zVgEaxZcJ?F4+Q_$L~CvuYk-wMu)fi_)FV@ehyLd~=i~X?V*n;3_Wqkx+RSeaZ9SWu z{|Q0k9t~3W3lKQ}$HZ!nKnu`t^Ku`>=!#S|Ha1JiS-hk5pl4fWR6$o9BISihfj7jKXC|3b9? z^39w-SpSQa*!+0!tC_QHY`sJ^J5sxP-YPub-_QlxjG&OuVoMw$ ze@c?Ru{Hf@MCSGacWNV%2u8p-@`}tM&s>vh@r_sG8*O1_tREYY2ek8x+=_Vq>N9{D zJUtKaDbld-$t;Reu?arFKeaq~364z`^ZEne2TiZ9;EZL&(_jny0X0s|+sH zyQ_LAzQMMM0d5+3_(NiUk0u9rOMHQEbUxPkPW#EMjB#dU_~2-;vy;g_CeiE91^@4j zR6DZ|I=yV>1LOqez4H^g-*JC10v0qp;XW&3)(eX9vBw5&%(J&a{@Nos#(PtzGrx(< zjmjBV|6q=px$v)Ng%37w@Q=;@w<-YENh|Nl9N!D$`~M|lea;OMiO;d3FM4_Ju*ig5 zVMuKK6`NHChcs-oPIJ9A@|nCN^PjWc@YIHVhyYRnjQ@`x!WzNMkG5y7c0f}lby#qJ zSaKyt2l2<`jzk)cOy3RqKV8W|+Nd*g9q-lhuFGh2 z&n|L>w21)NKxs#ZD_a~ZqWj*zHox+%_b(%9Efg75>b@YU~BVjJA1K@ z@#k634{IJ4qsph`1BmuhrG#g|JV0ds;W#Y{7>g`|tANWZYJcp9ejI?~>@6@$8$mwU z#nvJ24yp?p!4L+G<_Ab7GR(J)A=yY5~wkeHOJ|!OB1E5tu@)?onKkUe|)- zo5d|EpGJl%@el6FImRiC23m~?M{V7Gw)@j+)5z7t!3BfY4t{g+?SpUYtycdot4nU1 z7{J6t30BOwsUHRV*rm^=Hf7n)V0-1(MUmlyqQMp=j(vQpS^pnf=K-!qRkrK>)tUU* zu^>oG2nnPT2oM4!1PBQ|fzTlVY0`UPT~})W z|5VhVlHaHxe$rz6yRv?*NKkyO&a{q3jW9dW-ZS8xsS>~)b;#-Jpk(` z@9vGEIl=#!*3021tiv^z9}9rUAGJNl=1x`-FPC;!kEQ_^A`5w3c+N&aIjew6w2wN- zjN8XboL4MQ`nWJOkD?K_K^OR<70a*k4=KN97oqnA)f6ui)8}0vbyP z{Z#h)epgogPfPCK{O)Vr*JGvqxmvegzW#mng4`fy%XXAzy~-veu8Df0e%#()FY__vZyn;vu=Ci)^(9(`$U!< z-_Z3rLI1t+&FvEGTgTtLIniDs{z!g4vn~MK%Ln|V{ft%s{;i@zgb(@8`hW1gMlg0& z@PB!b#}%xmC!1!I#^Xi?0J%0q0MQ^=1F-!6CkNOSKYOOmZ>M!{;(q(aYl-x?mifFO zn+W3Av_CR!jLuWl@Xc&s--CI%mYqPzenzJ6pGfF|Imm@PF!G$w>=AHi(0x>c{NscA zQ=(~nESATGiIaXbdI339hh+Y)8XDDlZ+p4S@6Tgl-IaXn+Y$$OJ(+(~GXJx>r*^+@BGl6W*>eVPvRHG=VDUmA}vp_~Jk8Y3NFMpj6@< zt?(^aLE=Jp&@OUZSykFW1BS1N5T3#}QZ>0M#L2*ibjoM$S0e`Xg*S;VY<&A?U(0`L z`UNpQ1GL-n;(=TR~_QS}S0r{uzgxN1v0Bwxy9-c~o$Mi3##@7edU#kC6|FRxme?M7( zmu1DtrlG$nS=qEgGJ$>;Czbv{nSB!7)KQq2I zqHfsRtjcE{;FNqfD(J;;_kVi;Pfx6U>ty|n&WfK)qKogkSW_?Zdz%wV@kPFQolyXB zjb2aw%nIqXSu>@wCY(-xAeO&e4Y_G{0mvx>MczUpS1Mf#-ob`b}#^k}?wT?6<|| zC$i*n+`(J$J7%uD3HXRl9Ly?*&RV>lG=l3u{Uxd+}&45y5j zwtSa9Ne)u92j1EW-MQUAb%*zNs@`AkTi;m!wQdhPxt>*hzxQl+=g9vV!T;)Mzm**U z9*hs*YspDFvGck10$4b-Rcmg0>*!YB$to)mWz1RECR;$-j6Q!9@Ppn_B)~No~`(;-C@a~~9^+9M2nads6?}2yn~fdV2&Q}*O?Ia&JgntlAUYyEPVsagR|$;xL2N7o?@$5C&+K? zG@sy`6vKmiz&2Wf=-1~dPlOZDd)_L1uXq69B2#&XM&Td}AyCeV{}EKt56*KfW0NRR3kQZ(09q{GSRslk>zcWcBamK`ga3M~631 zi(vC0mdtzBCCrWfZVnKYHK_#lX8fNp^oya*nykO?MHU|%jRn6Ue)>J){bNNF6^+OO zz^Iu5$M>m0}p+&eluSq~@VK=vOKZg6-s{X-g^|KPNEa6VBJ?L(QF!yE00-9nGf z_3S2garC5@;=?>M&)haoJtDkd=hhzWox)ka9S(bKDz4p@^*_CM|EFjE56(`XtMsSG z`X617PJDLrdbez7Sy%V<9!zeK@(G;j3F4EIz3A@9UujYNdxv_UQDbmL^v|f1RjKuk zL2*zr_CnD+rC=o@7^OWda!`V{D+ho(3@iY-lYD>{y<7ATt}hV)a0MbjJ6DQ({`YBe zHTV+RGIl?ivOG`xfEsCEZU#To>fuhlr4J&V{}=(!;XAbgeybfgI>x5|o~uC|_bL0u zlL%*=1Fow~FIo_PnU#Wi-UeKYzKDOGLNDN|RsvT);R(D2xEG(i1HTQr4_u&lIg341 ztbhHd#ggz@^niI#XIm!u<(Fg~@UQxBRQuGI)IY439rn}uAJu32GkT{d3wYz$|L^bq zCA9g)W+m`5ou5WV^*aB~in-55`hO_MI3ymdyRu^y_}?}tNAEYo2TedPpIU($f06%W z%#;{l(F5QS;GcLOQFhkPotP7$W z>>93s_J3%8?-y=B#xN0nJcq>i@gi)W{*dEmM1fkrdo_IIptMP(^o6XIydZaMnJbQp zK5%gB$o78mt$r)k|25$N4$B9Uhh?(SpTznp?^&8 z)3MB;2ja{4*Px4{*Gp~Cqf{rgiYjm6Sd@O4% zCx@U&MZQ&PgI)^po$X za01SinM8k5tKtdR@`VSfO*nEmgn1ieYar>3;JBB_z~_Nx#(OEetZ+I;T=X2i8xaq{ zF4+m-mFj@{bM^Nl|KEs)`D*{nRF>N+5@?<9*x$r1y)kroW90uY;-P+P=dJBkTML7f zgMyGFl9Ti0p&v#rpAsx#_sao{@*B~E3*gzu0s#Ni15onoC(ve4J0Sm$_&@qT74`7` zvA@nL`EUP7%ctVApVQ!fm0ZV81T!PU@w)F3B<>vEFgxd1AAtP-K)Aq?`2XS1w8Z__ zX#FHw#6dwSYxCyjF4i+1mJys8z2@X-?nh-@2R9x)B>9Je^*w@VviDj4Pgd_v`Jd{4 z#2kqHQS*m70qlv+dPZsz&dhhL3YeQ~T@!R*awVUNwsd*8$(A{LcOvn@zAcGl|RIoU37hM=S zh5EUh-#lGJh#OH20-<_vga1*~!2yuq#l8ip@+{iqhq1X%jygc#K>KBxoP`Gw*(i~8 zq8p;W%m7HTH=-D>No!&Sj2GS}ry>ejGy+g%uboZ)bDWHU_C&axz;PAqDZSPCy%OHw zSmj*2E43VW8#V~si22~)etHgPvmzVbPBk`de&&qcssZqx^#PzI6i+E!mha7ucuzb` z%l7u~-&=hs`M*D?-!bgZ^|tlc>RVX{xN9hIN?Q1JFn?Vr^QQR!ew3PEe`)_ad9!yk zajZjP{azfI{KM$ACk6-T^7#Ms0rDAcfUM^)8~`4mBcfNmqxLVR;;!T!iCWr?wA{@BizW;m^hTe>&d3 z5smk6e)sp?p{&ta&uyeIx64f8JfTe@wM~eOvVZ?y%q0 zd)G%->-Lw42Vh!k%n{u`rVa@BzcG~g?W_j)b^CAep5Gk=9TNIIF7o(^)X}*kvTRm^ z0xfzt0dW9r05|~IeGOgbfZ|U`UJ~=`M zrJnJztrN2H@40AKw?xajCD}j!>8zf)-z1rT8}#NQPd{W|pZxN*A zCjKw-xvqF32HG$91|QHrzm3AtJA26Y@+Blxp?Z6&tQB`~6Zi>o(C8lY|IYN86#S18*k71BEx)gJtdFf<%g!HrC-y(Cp%k=kR&)+zE*heU1!4NQ^%7`n zY9)&XwE%Q>vVYhyuWB-D(W%{qN*vlIs1`@^4JZ~QgMVZ!_(zk5f?a=Nq*^N&3RV*k zC2#KV0IlB>Prt_oT zW1pBko*}ZGJtel`Vi>43opMp#|81n;fVpbR}m}ZVR%NfSU!7~f@p-}*fe)*FFn*pX*Tb{#e92qX_KOBH&{{Yzcks9IMSO;Eh^6!H&+DGrd!;{AUt9mY zUTWA|hrL*DR#l*1j*&AKf1L4*He%o-qngYz1ux;{R6vVE?~C_Rpvw>A2|5k0gg?W+VUE zQ)jiHjf}i4f+g$nZXRrk|FO+gZ>|EkS8L_&U*+1_7r#GYeSG@l>X<1sauM=#ok_qzh7sGisq?s-PPDQ+2|fClX%B8;3IVg@Gt2 zRJ&Gr#+_2Pv+CRhMdBi1MG<}mqoc+Ul*`Kck&C&X znvoV$!9N^;vC$$UfKPHS=Qz;WxWaqovW(d1CHg!P939`c;vDhLZ53`oALR+YY0h|# zPdu%R0o<_QQfJ%Q~D27r`6vJ{znaa=dfGrN2>+>|LN@AzVdw^;;Zf>w6<7|8!Qt@-g> zd@q%XPg*SV$>CcNAHd9b0uD|F$=vNj;;!uhz z(nT30p2QX3ApMk@c$KOK|M-Wbv4W1GcZ(G;q{Oc2k_K}lfpO&!P)#Bxl zdfb=~TSP{yQFAA_=W5TPJ<|(trz{84Sns?EwI48SREB6OHjNY;P@9uK_dDX0B z0RJHofK`UQ8gJ9r`@1I#c%3E#xa$5gIjMI+u8s$a`_E53pGHe8;!oLr%e8{zGR#avT2#|H#obgE;enXT~@GaGrHs(8lT> zcKKW>2%VV!H;?=V|650PQ*WC(;NpM9v|2cTc|Q*X=Z6LV>|A_6ezs4)k?DIUgX!F8 z0bA#8Vi4e;eS4O~|A?GlJ1x532l&@+DbWphfSyeL!rkB%%70fX%!z-I-O?_O?X)0c z`Nq&0!T%na-^Zh2eLkx#f1R~Ih1P4_-_aEU2-o2`g<_S%dsHe^mT&r*aAjqRavxNIfwN zC9Cg>Ot1vb(UN&0bgzB_&j9_P5V|eCKCj}8ZE=sd@@i}h{9E)0u7|%v*=Ouhdbf1&gGm7pxdUrxxwVQ}uqIDf+cGxL2*2p3+w&r~X9I#(DZK-ir)pjLy6EfMYM( zhBBVkm^Ipk$8xrC0q(*hgKuBWhTTBXX5;`R-+?v;<15@#je_6IC+L^kF+Tp+f=~nC zJX^3_&rnLx+3(5yXycj7lLG^%wf8zgE|G|%kuWwc) zCp+{Umh-Ib;a~?Z@_^ZwgH?P~0HD$?5}eBV@QJjzI0ImQYizUT=a_i-=Ew3sF!sxC zX?MM}I3-rVX_3muH2AmXD0T>%h-HdU1M#;g*mK>KJPR33RM0X~|0#IMT zZrCy&lbbSQpUdBU<3oLA=+p84%}b2+iOB!!vku_*o#kS6ZPk6M`|aNNYWaGfL}X^C zKHCfRH|wGLQ>prSShIc`8nf~=7=iYrHu0~%K9EC&xy9+R;{R| zg<|)sWh%AJE8!Xs_>Qu!JfV0X3q6Wxo~HILra)MsV$ol;ZghQRJ$FFGYUJ=1#x8%s z%Td<uToKO5SJ}_*%>P+$-SKE!yeJ z(Nw2&rnk3C2F;0y034CZxeulO*L9)h89@fvAd6oOSRDYZpm_I`_C-_XDs^VAgl{Za z{g29<#PO)+vub4gIkA>+jmADMEAv>JSMa}XP*45OIl=Nq4K~*g{>T7gC!qM_7UO?z z@_z1){jhIj|NQWP10(b27jThs9UAC?3F5qHA0<^t++US|_&WB*yY&=J%$~V_EyZ za4^S37Kzc;3Lzhq$ z-!FN9e6dxoT{)EGDmpTN+~pf8L&rd0g{u?|6S;%bR5u0%Y8`SQD3HD_XVK8&9A|;-57?9QXmq3b5kGyYoGGR`!X1G#&i*MF)ZF z_#Y!GpVgY_59bO`0&RR_oU-WQqTH+GuFfs9?wrxSpXdt*v-D<(Ee9<;nK>}dPqkx4 zRH8CGn;EeGYGIC%xgFqNdf>SOD&QWX1Lh5BU96D$l1ug8+uy8uU$RSXsK1qUz$v>Nj+J4b<-z@*(0?0?S z0R8?-f7SuIHvl>^yZ|3N_-Cga@_p31k-Jy}RP!4Zq+SsGUmq|3=%yCmvcdm~;SJ;R zlo^rQtp33QA@)E!*bVFjI{v@-U%&O!L@N&s`pFj9C+OcXoP&CyNck<}`#(2Xy>oIe zRtNaU<3A?c03OAf;Nf}N`VEgk&q4CP8UI)`@-g@QVw73|#Ro7u&%ZwYlDo4S=%iRp z-PUcbv)VfZ|4(Ff^{t5m{3p@>De=mz+dHy|KGyqt|5w%gWC6b#FW?RJmDT$F<+CIB=CL*3pBw=8qy2o=rhg~d>HBp) z);_ECVscpyjlTTZ;QzUy8)Hjv+|WKKR+mQ(f`<|x^S`1AAp4P>B8cmhn-hY$kwG8p zfA#*Y(x80D*vyZ_&$v@i`M%WS6aOQE&&hehR>AF7K_=V;|AHC7;D3+-ynJ}pslh$y z-#ZyUJ4aub5?pIvY@D&2pS3#k(uTW^;CG-70TsUBOL!AkOY7?Xa2n;k)(oR5<2D}P z{zqm4QKbYA;Oy8;pO3%fp~OwjNG-GXx4zc8p}kMC{;2wWN2&mIB5^nDe!6>j?}7d| z67!#xtp5{YnSHH(Z~dkIyxxbSu@z6B?_DZ}l0g~>gCd|fb7Z6&`2dK*Za}7&R`f_M z7y3fV=r_kghJK*pVqbtu<*9rC*=v>w)<3)mR7uC&1&)fm(;BtEoK<%y@|E)g>C1h{ zD0(1QVLUvWJR_b00{BZiL@1+TeAEFg+CO{@ zZw4L^=3ibu;P}3C+Tp#(v*?dmMOtt2AhZf}H=+p~WLmsG(&nn}p}nj7Hzm*X-1>j( zHHZD7uIqc_X}Txt04L}A*J77mm$hkMNCe>J&Z(Un+BZg)emvU$v624|NB%F2HobA^ zU+ilK@EfnbmA?GOXt`Q}I92~2$bbEPtH=Il_YW)YkBlC$Yh?HR$u?m1&j+IYqyH}- ziOd@P^@A(2aW`o0VTI9J!R@L|2JqEC>p?B@v(frGc4Bq%sP&9 z5*<)_L5Wg?xPtniH7Em$ERqo)aJkFN51--^=iQfXd z-yMIc5QrV4#$YcTJ#8U}Ih3J{t02pfVSnJ~bBtWC-e3L)UGx?-flAIZGLfi;CFdOA znV!IVsq>-tgf_KF7{9$?WJrJZE~L(}(jTM}1%%r=4~|H#;~R(HJIDOiYJr1uUTw?% z`kC?37W`s#RspQso6%oTt(+==KdjdtHhkED^#)a||FOzz-!i_0nhn&j(^bRn0>&wXlIzN11qt;v7KW~2`_G=gK{0qI3%yp>AnMjS~Bj%J=o+tRABJP^viguNop$ z3o3}EBSFcU#RC9MLd!~Ws0s>$R(&47MG9Irv|a2HamAGd6LKUlW3;Q_UrLpN>4W1y zPC=XW4+`c{-UoNum%(h|qkL<|(9he0 zi}7p`D`uGsW=rlP|8(}4LAii4D9;A-OCCjUlYfjz9f0q4f82XV_5nYne!O03*c!v` zsqd%`?N4pA&3B~&82G;|I>5830(eg6f%bjD|2gqtlQn;5>~ePh-Y7`W+hs<)esWNa z4d8!P2*ob|KJbxi{mUWN&l$7*mH$-#1plo5TM*pbnP+YpR4V`R0#f4(pFB0WX6G+C zx>W9%kbBq#Y?=HP|H~%p|D%!nROBP)Z`*Jvv;^88nS=Gk7e*={8LI&MAN-^LQ-=@~ zqyG;N7r_5V_KzMwIi6YoqjaS32e})gW7kjC0kEUsjEv*r;Qy|1{R*uK@gYo{Ynatk}>yOo+t*@^isvk~`#((tB?OmO!Y}ELJV#J?F79UX1 zKr$^IxlcwPhw@R4Pe}rOLz7aib~F-{m{aip$W!z+L9w8x(3wwH{)=if1*n}L{ZL$8 zP(}}-LC&GyN`qpu;HO{%x`f+!o~QC3-Uu@F=s8a*=vB`twhKIu-F^r77gx4TyJDTT z>6-{quXavFkn`%Z!H>ur;2$mm#`p`LLeeuX=1l%4Pbj?5d2klx1cl$JiSQnnQ+~_4 z!9O;PoQGb?m*m6z#*>ew#%JFS?Rz-eN_ghpF~CKz|Dgoi#Y&jo{e1WA)B=7n9)R0Y z1!O|j0sp6Zw0~spyi}QcclWo6`hTu-dF21o$pJpAk^jF<9G%J+=cfAiqlsrBHw(^* z0cab;5y<|4&CHgy8UXsU+VkW{T%_@8LGY6CzX{RHFG=M5>`3{MjrNcJ z5B^tjzi%vn9dgI|c>?&y-?(aI z{;nAdy8&#S^W&DlKRXSxD=B`0v5hP@|Bp-qG#Pn-`b)t-+`$pD+L0YXSO-KL5d1$8 z55NtvXI>mSw6$YB zGCY7WqxFyvhzEgdKxaXE>3tcS^N3c0^rs)iV(~AMSFC^~@Xtupp83RE;3-Oco`w!D zZ=si^U0Q~Bu~TBvmEZu5MV=`yf)}$M3m(S$MfDY0qy_pf!r>D{0OjQHGv}I7_*S{M z%r~PTf1%|5F(z{#MkL06LU+UXo3E?3s;`U(VC=Bgu#M`sR(JI7N+vor0KSs7DOV;x z?a6om&h9+YUex+){PD*nYyQ0WvKKY^e={QWkn>1CSHt1o2iM>q`LE2BC!kYj1g@dgYJhR4P4e@Xmh=LDUj8vURAA8ddXbH_Tt)|Tf!H zkWkyWjXt07W|t{ zf`{DI{f7tOIWtGnmK>?}iSbxCK{>>^=+%lrlVM!kP5vq0NRhY!QWcnk0t zqXX~=@1R|IA9Lm#(uycNf_BUqwwLgD^M1)8fD3a4zlpMr>+ad@^hPD#Jf;3jA^_uu ztvu|+dZ+63-pi>3xS~!@JM-l`2$>tezHlB@PimR6z6I=t|x+StQieJRDw6qug^^_Roxsa1pfn1 z!9eD5x71#+r@sI$WpBY1^be}lu!}YWB8#*WMTJKci76JeY~gxu4PNj8fPbZb(O~F( z(XK&~Xrs?!2!w$mbttdq8?L11_}(5@e1&eUVzTIzLjJ6awYkMov^ z0sbKC09VXD06&QQUuW2D$u=3+|7UlHJawr1d~(yS%+HsD|EoH`Y5%VE&eqk*05~O5 z?7`swlAs3pZ$_*YeFlg}LoTsC^?{N#2lkQv)&NCkcAbs8>`V;$K;6p0;NHQ@-NFC1 z;SKD|1^$))qk@0XH92S<9)5u~Pv#HbVzx#z3FWsM8tx;c`oc}w*0~Xf9>)-Y-=v@)p zV0hjjZp}{kobp}=rJq$bZK3g&v?*vIlyVL*r8r19f_r_D;|{H z+yyG}mm32h{*TuT-eO+|SeEvS#N-KR56E=T&tIO5KNPM8%8105^$^5VT#IA$4E|=X z7zsS0%o4q2^j1Y1L_!(ap!e$X%pH~im?ei%3yo;zyK}Y32if#z&@;G!_-CfnX7q_L zChR#@4v2p}gzx}9xdMZ`d~2&FqO?)>rtTHJ-}V1peWHG*e%G*Z!@gQCs&?)#+xuW7 zPPhBbtO33}$iF}NKR0&%-R`!R5B^U|JpJ0B|Iye2y9X1>yF~61ZMh5hG8W+$ukRwiuma^Ys{NI&a#-&@Ywccpo-0b@Y{+~M|5{rpsAxih}M%j%z17xlMDKE}FvXW&(uh3ddW!3DW+VjuZoHV@pul`+T_wc~>S zeh{OjP^<(bsHHDB&7h~sJyC|clTJP{5G?(HEGwMbPl z24A($a$J7H1@K-B_?fihjb=>Eqz5_hcdf zlY2*H4d7C#0DMb>|NDaf+dE5j-q{}6x+e1S^u*MOW}O%B8L}T7fGaSqPrt;(l!%-i zM8?qn)trqFOl#yn_)pf}V$_Wc?p6-xI3T+DEqUVfV4TQ5Kjr|B4tGG0S1&+fgMT#y zVg!-q!T*PX{q5pCpgs`T6}<)j>*oITq8(h4@thWmVNzNnE`TM%dVVs3tS2@l=m-C- z0TA~{c4WJD0Tz&F`0YISG_Kh+eC&!;0DC^X?2e(8TD|r=67~OX;wv}D{(rgCPj=tJ z?n%8%`QjkV(!CF}b>5R#L;1a}29iel9^hf_f^TKAM z5*yV^)I&hK=;wd90KH{a)C!z8T6aYF_{kWgm*^$hGLEpIp1!Hmtr831;O?ruo%?51 z)8lLUT%v%V%3jmQW;ejI;sJb5_ZRU`U6r-J4<-Na?#??p?`e--jQ@p+Vt+ZF^IbyS z$Ur0GN_F*NEM@#*d_!&wdH^vsGyt^#EMzzUD+gHb1OD0lhrK{o3GRmH{1I6}lLHv7LNB$zY@yDsfvnB_-1^llQ z4)N(|<)6-9G6S^#2l~JAf8E7*8Ua+-XPjpE``gy#5O6_$cq$b@_K6?z@uA1U%Wls; zWbbXSlvNeqiueDP=vJ?G-j+2N&v)d5Gm z11K+{TMns_w~j{d>M`WGE62?GE)oW9xkLuB20DxJ4+R$dn>mP<3e|}TZOlS{MWR84 z9#ASg0BY5Oha#mXpI+Hj1zD);#OTAl0}Y z8NlM77(J_f$A!j8uR8|LidUdi=EEMK?#P*4A%AaL#5J#HfHey5GmIh=mj_ZUCXC3Vo)hB2Oy@iY)jNlb~@)jg_mFeM&F+i!zWqtcNSNBlowH zV^GDcWD$aX4zyqndZ7o5R*~yi2|S6GMJW=0(DTA${(8mHErOGc_5se>oI0YE*?*;jX*``H6jYh8z<#0Y5aG6DI?&7a+)S4+LA@$vIN+Wm6x-~GQ<3!-=4p2+jBt0((6_rBHLJ$?Ocq|=qj0eC1Y zf$r!G>%67CQt<^=~tx;%=;tKVCsAph47((sAn?}JBZ|Enz^CD(4` zJ#ltyZdT^8`fpUwdU`x&3sZAwa)ZO=vH}1Ouv{=tl^!(ym2>UtK`qi>{XqZUh7JC= zYchn0!*8Bg;nw+&dcJ%jayTVA#Q0$Mn0NrLOfK_`JbCrS_$L#QdIBrtd3Yk^YFGh9 z*LRfG1u4~jN{uk=9-@QdfAh3`RXFAo(Pi!$+ORdby>6m^&%~y>IWgAXCHi+t_XEA( z_rBV{y4pJ{v3^&7x4xi$sk%Ix*eTKeM>Mo45}{KhK9M@PK5|g)0D3eNKrc{<{iqw@ zUp6YJ9}wij1%`!cKq=mI@Q)9$AOqS$Zb65jy3iA!&~%mlP$oVvb!{a*914`EBa3pm z75t#+271d}p~6akp2IVh$>IfGA^)%y@npLmj2Ey6E`Y`^4?Fq16}QQb=ch7^kwg@G9Gpn}|@JRd|9vkzzZ*Z;|{;Y&f6M7?gkQuWW?+j__5s^10wmn8%E?)d+2?esfKwO4Lk7ioE3vVXsk6#%El zFAtuJq&E&eu!_->J&^Xr+pmXg;3wE1=)!Uz9_+CL7wd4zx)~jeo)x@Y6(8P&;1K^G z+Q0dKqw_siQ4MH9a7*QXR|n|-o7&(Xyl<9+y~4I_4t5Nr3K;eNa!sDKLC|@5{BuW# zOIUZD4B&!)w22YnKh*TIs)wEcEeWK(9sq0rvVF<-ou09-n|s!2W`V*6PUmmHHR;qI$pjlhv&L(y{)>M_ZHA zD-l48QdQXx%AxskPVPXg09nNkQWp+kW)POXb$^TH&u$vT;)n;}O@C+Z(2ED{7yP5S z7TE;tLx)f%eS;3o7#7`n)r*e}ym^2aai&~ChXA4I^YQ|{*|Z8?;3$le=Yo5voo6Bk z3*UQZdff{LAaaiG0_Q=0Dbf=Z4di?23;nlMKgrw7iZUVr2LS)fK$%l|q86@B<9HaG z?a~%Kr-$^{S)v6cxHbf`Sz8TWYZR6h4CpYdUO;zHo05xgzw^x8@dOXsEfye>AMBSH zuj{$hcbIMM585SbYfP;FvB~p4q&u#+Z~vNVo8bT1tT#QmKEB$fKf8B9@&o=5EA^7j z#nDs0o;Y z5YME}kvIhv#j}nU&1gX=7WrF(|8B;io}*RH?gV(@XlY6A0}hmlVAF4yFYe-hXHo1r z7Bp_OYvO8*hx-SdO&y?U<+KNf68VKY_$1C_b*P`1v4#Gx=MT+{w_)^O%?ioR^E_z9 z|Mj{u-@FUnE?PuEe~BVsPx)rNU!EZ+8W9a(Y{LV#j|br0{r#$`_1Vcd|5f4u4_2S; zpWM46QK!Eo@_+ea{NK`PXBY4h4gSgge>yzil;q_|{d&cVpisl@e=4Q z*G5=7h@)!%*x;Y6oYjN66@t30vR?kSL>cGh48DK0f3p9n6;7o-YJsxuZ(P#?em^sW zmy7J3_{Pj27Oc8k@T|yTYX4K+pWS=rg)fldyHsX?w+37x*Ia4Xzo! zvQnNlr9nSl!{Pxb)(!lt;Gb-Ncmz4ZtaD%$Fww?Y$w69}`2VxXMt)>yr`9g*9b^4J z)8PLb+4cL(?!4Ys{SQ<(W>3}&68pcl{z(1Sx?ergdnBs@#{~aW)s>c^39t>8luAWc zmm0()Z=82uY)14}G+V3YzyXE@G41?d1F)M8hy_XH(7D5KiDJ_hpUrT?rzN`4pGBpb zwy30E=qGR}@B__4qhQ|u{SV}W5=KRvwkExDhQ70=9u1)2RE|(|0`5S+VFhzHyi6|! z=t4@9;ieZJDJf^shv7WIz3dzPrBCoA<+%RFVyoM0xFZo&t^@r=%Yc_~ZXlQSf)uUW z`QSI4sLUQ*!0csWGFoD;W`>s!G%mOi_bxdGbps=b_t8OY+dkO8 zBVNY2jr?CW>w1=nWXJbUoener*6E^YgMT!2IK*MSh$dU$X@Z=ox|MwZ`Wu9 zQyYC_vqTs!&2tt6^W+eqdrSy=r{sU?iLRPwpxrZ8M#d=UHylpS2htzU;*uPI+5qM~ zZI&E^o09kcwfuf$XqVRf_O8MIv%&vu@vMyO-qpRa_vQZe)ugP%zB^vn^XfzDUsX@^ zPtBgpQ^TpPu?h7kS)eW6q7qP9I`BY&9`U2~3mtO?9otMnYvy2Y68%H!u=WQV0Sl7& zAJn=^p1fLcua*h_QT{;v#Sc)tO8AqJM?T4(skMVHa0)$g2Ba15B}k-AaVR2{RZuB( z4(&2B`mg^AE`$~>f6=l*{?E>yo`m2F4S~(ysmlXiiT~_~krQ2g#U&spJ&xDG<6aU}ok(^k=M81@Z>i_8d z1?}J+B%llH11P>iIRV#-I_hi_)5EKe4L>Gz`YsFp&xprv)#l7HLHF{J$g2hKW1=mL z4@SYGb$Y-*9OC`W&*bcp*@u6^<3*!gaAWxz$ z0G0$MToEBfx?C)m+QQgmll&1%Ugu>;bjOaP@&*+fZ+^go|-SkflX@I)X znNRjzDB3!n7}hP3!&G)HV*a%B7&~*%yf_XkvlW{Nj?UQO-)I2x4|OWug}sp{* z?uqpOTvoFEDADZGgCx+5^*i`c7cj#Yd*Agy{AN`E`Y;>=Um++$16Ze#vU>8^322o@ z{!d6m?%KrvPD<utGk9=nbFvf?bF@05DR3^;mkL&$7xe-;13eLodQ@2F@5*KDEe_D{4$SHhMU!y!jDh#4{{s$4 z|G@Whxex9E{_!f}Pi5u?JVb6L706fIKL*}DCiq_~`_2ESJ2Q2F4oT+8t@V$y{^X)+ zVrtIp7@g{+Ng+PW{&|N8i{f07-oP7RX4uRC7p71Qqrw&4Isexx9F zaN!8X&B4DhwGD%`Rf9S6e_8#5FMov~7_a%lo2rv{0e=V1S#Nx6eO zog)8<5w4YtUTg#Ga3TuS2q33#z2J50;D7(LzJI&{R1aAre@~4E;M`~glhP9Q|G4Jv zwPFcSZ3z2+R`Wd8^OpMFX8fr6&uVys){uF^jDDSrd&7KF@P9|VfXB5y(mpU6)l-?% zhdaONjOm^o`~S4;`1x%8@2vaZHg&(d^_tad(ZS{g|5~w1b!e7%3pI%fkpX>4#d_YM z1J6h&#=xWn?n5T4?PD_{g}^`3)VMK}kCv$A=<|@(Vzb}{Op8#E3ymtLM0MdLNI`i9 zbPU2pjs7-rg3Na{x}_Wz|2$V}mVW6!8UXeM76m#l`9636)BxU+vq*8JB{RVI>96yI zWCl0z6po_z!w0+uWPy7B`dntaXffI_j)XpF%Wz$pe>olaXEq1CK@>ChL|TniG6JG? zpkIy!%6Yn1(^E#lS**E{`B95eSNTBh#Dhy50bb)-DMaf@t)H>c1}&h2;914~pU_mD zey00IZ{KQe{o(qP$vt^8`%RtDUoHF1^t<0pg!=N-s9zKw(C@sXJ+}3w;QyvbvY#aX z|D!>Yem?!+1^dPGN7UcAf8hYe0Fj?uqrU+EKVEk-di4Gi%U?Mh`7hZ=@hYTX(fXMt!7t4F}0?s4-;R(!xIZv*2 z+%&6@Zi~hAe6)bC4}G}V`}f7j|GQIR;q}h=?kBq2_0H}8y?UkoOa1YBjja3mLG`Ep zoxMe=`a2N` z<4UC~=pkG7{rOu*T2VOz92E=?@K2BAob;U;;5)`-zxZ6Z+LB&#=a?S(M6(%u6U;Qx zRa;<0<=|;(5Af3^y|c_9_K*I0zT+Jjvy|U5)9^v&%lYwt`fTP7qnC?1%dY#@CXs`| z-xy!Pzq*HWYUU3*9iPS}w`9%kjP5nvn|mu&Yt~2B$7dbTU+TH__xlS{alYz)FZt=$ zME_qDFTiixe{C(_x;?c&ZyEa5(2uhM@TA}mNsmMq^VswS>m}!(3YnZWBhH-If`2rJ zX~8Mg_(nz&Tm559gZ~-P#}~!}ut(0j!VmlsJD46M&P%>7wg0K+w@NTeZjhS4_+KlS z!<$HipM5>XgbS>dzRn0zw~CzKE9l=p_@9>V*;9CrcmP=2uxXyXY}#Xe0g(lKk<bzv0{ZH_JcPxM}B}?tx&Uf3dw%*;kHJovB5Qyi&)VP3x=(iR>9w;4xe{46Q2okgyphx{#k&^h8A(`(vLZ!pKRL<|Nq$=kzkPS*-2-sWa-Qc_IGdM_pBVi@+V#Z2Y7E&B^)bYLcIClnn)oYLskpId5F|)79`J! z4zN@3zgc=o-T(E&FD^@6ll{Ua;6CGmeflE)*AC9N%G1p!Dpo#P0O-f|FOfejgV{NQ zr;yr4lk@5L>UQ0) zKVI$MUn47jr^ZHuGSL0ZWBM{U7win5S__Jf~_izFX!4d`-LQXqbyOmN&tw(wIrY@+IdNG=_;U3Bg^^Q>Iv-8_ z&nL5&&MlFW_YQq8Rjk1O=0OyQ#utt+9=#Wjm)3yV0J!H99Dr}+6yTqj0UGn9MuxA_ zV3bvYqaxAAHs1f+6Jyvs_*^6Rp|{Uzto|K?+<7@aHOMA&fXrZdfEEBd1&j}pspQEI zd4+4|>Gl$T9r?i9N7l~^H(?#XgrIcyWB^PGli*Sm~GBVaStewvvNw)M4n*84vhEB`gA4kXk_js}^pNagR)_p9y zv9F!FfA=Qt_j>i)?EU+}YTf=)z5QdIt)4ek_L+n>ky^&nkitk1^jh$TP0!nR{b}L< zynSs(^+KhBXF=Bcf*)ij2P*-fX;H?NQY$osywu_y$UtS76vh?eO(_p0Dlh%NL;;|C zFegnj9`y>(LGO-I{nzmg&@1hV=MqH+{pA0k!C1efcqQnM@pMNb`e~DP0%juUW9{q{rzUi zU<(utU~nz?$6f~i`1bL*VKL)#pOV&Zj=Thq?)5V-cm=WiCVQWHU1aC6GJtr2s{`=; zzb`)%6X7G0KO*fC&BODj#y&H6+%gsbEx||T1heE2u@}%qi37|FH=ySC%5N`nTpG-j7*do;h9u3cYJnM{K96GyoQTv3*|Hrep z`jfH$CwK4ZKHJ+Qng7?*9-ILWGQRTx{`Dt7mr^6TqQyW@A*v}0{qLBIpfI7e2C0~e|_;H7i`K2)IXS2 z4qB)GN_gg2udVB|@bMrSpbh5AaoJXB&lxOy1v%k!&A#)|!9Q)*s6UuIz#}@>v~O?yJrsO(a@b#q|L?9u*pQx}Udalwk?!yS z&~NU)xK}5@Q^-{u=nKey@xO93dE<3d105CooE{D1x_IgFs&5t3FC0;x9 zj)@JQK>MdIkoZUQH~(j1YW}0gvpx{(VM?B89`F{C{d3a>d}OEm?2y(s4oWvlm5wu$ z-L!vt2+yE5>xMVc!n(mX`akI3H0_|}>j6aS>lal1gM54edIMPtuzv15EpztGcucR( z?+aVkv`>%y|9JHOCsO-+&FsbcYVY9c)7kB}U*B4Nqk5@Yw)%eW$$0-JgiDtNMZVu*sX@jLhcx#{5N}+wz#s$5-oiFZsy@Zb3B=+ zL0>$}s65_-VqMDtmgEEa$hl7nSI3vrD5K0blAg;*=&v+gWH?VV=Y&e&uz?jLhK#$-p z$Q2j`^M&lk1CLGT*y)Ee!kuz#+Jg6! z14IVUr0n)}ZuiVyC;6wy|2L9@_LXYueycY#dw@Tf3e}53s|R&H+x~p(FY#bs7hU#8 zIc|=JomI4WyJiGk>H+4(Yx}zsDEK#5hTr~ zMGx>VGczssotj;Lo=+vitKtQ?s&!lY)5-gNGV=ea&R;w0b-&(yd;fFQ%~|#HMs;)b zt?IezjYR)$>uwzWJSO~IuI)PpX9aCgn1_0&m{q?k?_JtcS17bD`ioD2c(iL!N*oy* z0E$6kp<(iTsL(q6C0oZR6*MYGQZLa0fj4LkixF(+Hy`$kyXmP&6yr*$BF{htJVLq6 z=fd@j|C6=gx_zAFBw2+JB<2mAA>FRTp=;EI51WAm46xnlj}15o$Jf3|VZhW~GD(1sUbS}?b6 zu#TVcf}nVIr1f4w|NhbF_sUwmT_V3Xh+dAB4*He+c>O_s!9UrPr+%xT z9rUC5Zxe2SPk~*;Shu%r_BJ{@8o(jx6}*eeMC1d3e|oW9t}q5*Wq&XZ{`CNEnz=yk zqYc0jf}@3d0;=TF^f{pYGjQ+?sj)kD>< zswb=O^v~&ClHBZx;m{=q5A;GUA_iK}2aPpou8p!(>VV5Dt<=QP52OYuL9IgS!;-d= zZpkBqx<%dpi+?4Wtt!onBy_bgm` zZ*UuMPyEZ3H17W?{?)=obn%ZcRt|9EDk`-XkwuHN>+`_Bnhj$q9IkLhuPn3eQ_uO*YM>Aas@do}T|^ z<=lGteQYd^yW)}iV5IT7{d)-~>ytC8L87J?69y?nP_jyd5yRumBT zN_{i|Jpdq|tVHw#Kcg>f|6lxHlX<(X_2u@Zss4xk|3YV})c#qvcSQe>)sykN{<(Ug zYSmw@?(ZMeJ0p7nt=VV*?)NRVNX62>8L(E4b;Z{JwY*`k)h{p27DRz+vOv_SiDt2% z9u>4)Ltivd&|-bh5sZxLi+qGf zD7Da()o=YyEb<){FTgx&XvttCiHd! z>Ouum{>K}DTQJA=iMe2w#cBCZ?f}m&2Yki;D8rT5^o1S_-V@xO_k;IVZqH21p=hhj z2mDFv!KVynNNRvH*i-Zc4n4~Fl~xP>*9`tY*nMwrzy5vkL4Pv&f8R?K>WqHf+c5aQ zKM{aOa?I@<-@c&1|82?s`)%ad6~QCYO*oESd& zIn#nM>T*!8Z?{O{J5u@oQ^EaSLH>t=OsaVAoNqUYW=_VRwZ6&rp(2p_KT$yZfA5ce zFmJJEfc1N8M*jP>t-}{~&ClFOax(TfYi2K%fp$u!&KcnVN9EI&`F^8#0jLPNez*?! zM^g~n19amFkdul1E&i(`%*v-Na{UhRW!#_DKlg-ZzB=@!))Vc^Q&DkI;;LWoyfwUc z{od#L@2#Is^zToR{>#)~uC7ewpX0Iud(B1zKvsiisRoTsOhFH3fv|Rmh!9k#2F~@+ z4*12QhANb@(3th0)gX~Bs~hqo1{KzgDPh$L<@^ zLC>!?&yJHf#0R)`eRKc)z3Hg{dSBM4J{(PT+s<+A&$QkMD#>B}-(<6196Xk6H|4rM zK5KrIwZ5+PHv*^~p!`SENBakbXxZxo*}Dbndq>9a5)@t#cJT=R;$G1K{@?NPlz!ybX8_cSaN{*XQ}_8 z2Z;C1n};5dGEi8-9qZtbs79rw66hKo4+$>4@f%64JU|xEGSq7oaaW_FLz9&+)o_(h z1s_N$=}O9mD&+vkcr{e19(@@4<9a9;qJ@65o>RZjAJ^NY`?L7}Z*S!PcAXEm zFKzuJn7l1(Sbmc@*7?CBc0cleMo?7rd{_M#@y8BO^Vc>&J5c(g{acS?t8f6;1n!dT z`=gTce`xIQv*KrbFudlhtkT&#K7jc-c8%RWEA3IEcX;F3Blc&-AEN(O2UH*UK=3~& z@}F;6F+4sNJUE{fIle=V&C_eS5xwIZ@H;z*o*(3&8Nb8X$pzjoZA{O-qjL>>gN$Q1 z0LZ6`*tYpS$O__qbA+)o;09zFP;+qS;Qzj?nY=5$)87p}-FmrwO?Fhnv-(16|DM`C zr1$gwTB*D;E&KhwExh-pYJPv2-X3``L}W5W?UpbcP@#4d5jzY?1(Qp z5WK^)ug_YMAcs?Ui0KO+0iZW90hk7NDc z8vH-n0soh@{uUa(BQdQ1jW_#Kp=+XHn+7|`Q7n7we3Ln2^j}W^m?tmDnwaSRX5kWt z+a;*Rs@@@}KPfdkPRZ|&WG(I&6EV9fcJl#2Kh=6b|JFe*H91-BXQltaj$ozwhxI{M zh{u1MhC5g-bhX?!wZS=3ezWw4+&#dG3zU z8umypc1WK=KAA{awso%AHotcb{_jcjpLphxP4uN|GPWi z%g(=-bp;m#M#7eV|^iK0nz%|43FAZ)RMyv?BkZ3f`sCxX9fiSCGHfe^>5s zUil}jpaD{Q0%}ug4De5@#P9I}xSkyO34RMLs&jzzLbu|-=(?PhD}W7-0sV_QC{YYT z&+53I<9{ezZcuRQIKhtjJXj6oek=-BzA5+18b;OtQ_H{=b?`x-OiS>Q0aiq;*!0=V z5g76b%n!2zS199=XVDU475}#2JtYIcaf@^`1ls2g&V%zZ3b`pWB~PGzXU^H7zwiKO zO>R)^AkLQlGIMY#=igECKfU4_tphy?*#78)@O*SbR{^gU{C~aspWX+v_w)x-2joY| z175k>r8lel{phGSH}Zem&N1x^6aTv_$b4n!53y#?3?>FXZlu38FQ|J(we7m zFa810KQl-n4!2wMdiLkqD^mZoXx$$V{!fkter=v}S1@>V{D17;pUjcq;e}!igim0mu*{J|Hh3QyDHXCw$|KR80Cx_}MkV|4Xf(w?7}t z|H0T+uO|9`PxroL|E^c>TmLil|3+s8z~R-~`akS$5$sc=aZKJ4Zwws(gvbM+!lH5d z_RR}*9k^>u)H9W)BAK`xGzM)*QM3u|(<(JC$fjjKAlp%s;K?GPXtdI_DA()F8ECHP zz954iY=wc;^*$(8OwteW1%6e|2+ z_5pY$H2@}6`}AgK{qLPw{r7Nab<57-?N7IUA5`8y^sAx2C6ApK68Wc`_Bwc<^)H3#Jc}**4>*=bv(fT z7Ln#Vgd2S-Yjti5A38O>Y4ad`?{Ectk@N%$VqOmN2ebl+3UGJH5ytap#Zgu%?-kB= zPci^+Nc{gVL*Hxts(pRxem)rA>Ms)gf2RBW-t21A?Dz3na{nf!_Q#ghPkT?LGTVe` z|Ksv@R{t;lp+7BFF|P*6n>PN0_K(~yzPExhD6k+Nnt{%sFR31x29=mo$BJ~UXmV+h zpwt1ec8*vaU|)=vJb2rq#*k5PzEw^ZK4hNp@Bn3EX@|BLtvV0fr0@u53%y3m2W|=XP~xMX6nk90#hu{a zUeO2VA3rR2$`P4+Bs_B7vBNvy*5vRGt|~l8T}2*He3x>=^5$sQo)xi-@Otz5u&hHnubxot-PcjccxzJh*yeIDe^;T791s9q4={)BiD zu1qB1f(HE`i{^cNwEuG=eJ@Gu@90R}U2-M4I@<-GlN;F&`pNh+=eOXW=pU8A-6L?N zks6N=;J)^re@%npG>*(a*_k*e6ad^1G z0r`x7(!4?Zfmrw)ARliZ{s6uHcnYaHzI}MdIpLa%64AUSGxyWh>%srCiT>T+`Bm`$ zVmR;q)zWfk@^sla}3@6N3KBl`Dd{PPZZi{{=bA$ZdRU0m%`O;f}}Bgh<3 zWEPKhxKt#C(WbO*HjNyBy(r8wrT(Z|Cco7^q~;>WphuoUT#j|bMgJ{2FVt;M3*JN} zoC~zLYC#zX-3~lfO0L59)I*3gn)S!3Wi20l7vi5DSjWhxIcIWC@h>L@eIS^*p?AzK z96{7DuUaKsH_%Vy3Es(P--nhEQeS@NX#HQ`s2o7g4H_Cb#!7J8@>%ja?pFTG7vHRn zz(?d4pq$TmA4&wsxn>r9C%pSYIa>asgZ=T1d_l&H?{3w7w)=W-MzvHj(6_C>m`Wha zRrBKieVLDTX9D*hw;IhOk`{>P_3$bZj}2TX+#s(`GXV^sd5#t8X=E9LXp#v5R)0v%Id2P8vLXEQK8lvjRn*DWx&UYHd&`t-#KePwE75sy6 z{Z~+1$^5}nP<#VL4~GV!_o8)xN_$VWe*KitxiS&FL9O)5JH;$_5UtQsAzH~wSXTk` zq7P8Rkah9+|3sHj#)5E0AvSzYk>E@A4DExp5pYm?04IP0D4W3(t#FQ6aXy#@^|A79 zoD1~)qL1;82LCY+v_cQy6Zjm|P1H2REu5K=!y84rmW7rd~k*ZoE#{~t;Y;Ec}v_A#wjg8!$Z z!~QYYI5gC6mOK8xjTT$~=KPlxfoA!Gs7>>Ohitp(&$|Z^2R5?*_NR9v9tz*I;bxV1J`{6xN9B2eZpZ&Lio;IzMm#SO4;v1ABn=yBjp$a1|B+ z8i2cmkIY|k2k{~BgLOa!5bE{gxxkAtGkyG6`t@**o1=?-COXQ6vEq-*s6P}AU^D{1 zC0af;#qkC3pXk>Y0Q$)=-aER?qp_Io2&b!Cf5`5?*CqS+!FW}FmDN8#?T+q$KKuTx zSwCC-IQsvOt4I2K_s&fA&!pxZ5vLXZygg&~U;wItLiFe(LyJ@>6kenrbf#o2@qFkA zx+4;Z|~oy<}#{6xrS1(pXjezo}ASGitnE)fa9|RMYp#}|Cs6zS$p!Y>acoZ{d|Ab z-lWL?FU14!Xfjo%cD8RH)cS7h|8GTy{X=}&2Zr9sZo_x3S557oOdr?Tn-ynN91qzR zk&!z`gWf;B{u875-w{lFCw{RDnke6gqVIn!C}S1=3GoZ=6g16B%lQ28){PEoS?!~& z2lWO0>Hn*+l4gu2907j;b;Wj@~|fd6yD<-Qr7dCSmJtv6c# zjQoExUX`zA@4v~({@tqoc-CI7lvNk6RqKQcT-2Y@J0W!$){KUx{%;Il{1@r31*qkZ zwB^mi^#`=h^-2IGGk5r{6kPK0kOw?Lq?P+cICn_#v^K!Kb|%z}zYEQ?#0H9%3vEK# z`T&cz0yU#?;MtR6<))pBxx$zE`8bF1Recb)=@ z9fRYR_u-f132OOr3eF(!mCGQlct(`c&M$Xp1AtGT0m{vB@QsLixq>zly(suM8b{B)}>mj7D(X8sp@Ur(Ri)C~2Lby74M3?R4=DaLjK}+JF=Q;-Eu)P4QA`{Bjn~ujFZJ*z7 ziT95x`qst4x(5GpMNvwdAW5#sv+0R?2cras;$IDl@f9@EL(y)Va#CC5YRBjsQ0`-o zYx&SuI0;spx`5}Is{#HQm7GOSBN~$b%e8#E@0B z2AE57!{8BPx<_@l?p@KpsJg2`%V z%R_%n7W<`k!Qm{_&RHiCnc6&~gGVfO_U0MH{6Ozu<*&Lwct@rW51uFHd+mEgyd;qU^rgvA)%8P$g zyJzRsE2`f|{$E{f-~T^+od^6C)%ES~v^!%gi7jeW3<@ZMfD}PdKtMoH5E}?83U;wK zR5Ui!sA$w^#Kb7}jtzSS>|$9%ZId*{xbIdkT$z1J>h zpB0LI>+D~$e-_XF4KDys-Xq({VI;N2Cr_7+kGkMqe)^S)4DBK`+r4mI<`LHiuhgYY1K1k`k7NNCnPCyWDP$MV=Y6 zaD3Z7mb=D3$F#h3VI_fG_l=(^5;2}0=XRg*%3YW#ApQNscq*-)r9WvIEpD%Sp-mj= ze&#Mcf@rs80LOLBPsxue<~Oe?XO=r?2I{8DLz~=uTYdSg(0`|@|6P!Msp_9=CbtQp zZ^-(8S;*K{822n!{Qr3P$f02$b7MfkR?>gWwWC_sF4BUNg#LY`=Z_bP=IK1I%lf}r z*7Y&+^_?NjKU-&?AxSVo3>@5pNLKcy9sr&{@b1l4enp(#@Lh_#Z_*-;o`EiF}oZNCNCu zGk_f>2Z;!x|MC4r6wuLswEy-xZkmw)ykx-Ljn$Jp{UMzppDNXV{+SKQdla`em#oHB zub1bRpO))ZCzcyDQ`P?Iqs&aQe>_{G{h}wwb2BsKsd@_(I&&25Z4DmM-=m+`7zbb) z`C(L>KkzB=Z~HuuiPo~5;4dSNvCGknMvq?hS|_u|7>)BDA?z!^Dn>mH11?$BNfKU2=#x^s^qUjZwiw<^$Hrv&Ob<;CT8cw(& z^9fl~k1I!YwwUS}*~{s3NmJFoZj&bbPFDL_(t6Hv!?Gt25Y!X-VulP1m>L^I?k8yc z?xjwQzPAM6HO|1f!9USI;~&d_)kNEB=HL?AHrE`7eUdkmmD8ou zOOoZ2IkHv0Y!t~4jSr;7i3qTIz$D#SR3wSH0o*@wfD8xZ-!|%n3G!>)p^WK=^xHL( zEd4G$Pu~Cgl>_i~HZmVrJfhh@W2#q#|BuU+s$I(!RC{Gt;UE7W_=l&lvBp+wta^Mh zV$iollO3&Nw0gxLv;~`=zFBW*5$i=pR7elT7311gBKtkw8FSX_T#Ks_;R9_RyB>em z`5?eD#d5;(f<2ZK9=m2Pj6#pwmPGRvjZaG}Mrp{3)$1#RZYmZtQ;8K!SoOjT1KrK) zI$qht84UJI*mK9-f`ax!NAx6!rhkw$t!o+o-p_m)_dLJm9JJD{r%&0(9_A#FF~P6E zwDm6ciX5Z`^qu`BwxNQ<@a(WWkR|l6&mXp4$Z5*~+f1~=8~09IjAlF}ARqZ}Tgg32 zn|QK}4YwH!fuorLxT)3ve7ESO?30=0uH}>EuhlKaL zB?B&1Ud%(%uB#?1Ca;SPbZac9IecE_7Z%V_=xi&@qVM4Vc>Y>GKjVLK^n-s^2n}li z?Qbc71PE3D{@dxleFCl(wz?{aE}>uE)wm(KHr*ooeRgQ}Q2L4$+ekbo;n!F|3 zWtv#b-n9g9B!DVnL<5k2mH_s8;2Ydd?B{sl{}uTFAC&(8A^B%|j+b$nf zywqGn5toah2fz z{v3z^57y}%3u1guqA!*OoPi#tmn;iFmHQ0*lXFa4=}~KZdLej_nUgaU%#dIJwg|#f z;`vxg@`Qu$TYiS5rq%Q<+}@0dUZU;spLgJ&jk9n+NJn%D$Iw%j6X1VT{%O8yb61VN zOUi@FkIE6%g=N{iApe&}=?yjhkIAmn?4S1(5u2mv-x7Lvp)6n`^XNC{!%LO5BV;*Gl|6l%u=JX^|7}7QoS3TE8zlE8E2gWYw#*RgbZ~Uo0gOdPFQdof#)z}_G~W58^}X#%k26LvqmEy) zCq^%RKlBwfgzW9|ct^9D7g$b3D_iJsyFeBHkxTYkfn$DS+{a&IaaCQz)ym29XXQMi ze=F#hjAr8z3p-Xeb4>v10a+V!=iCKXGO|FLc`?@m8_~P8%WVm1O3%W#-K(5|-sC7` zfu$&VoqIH==h%plS}uZPS3YpW5O1pGCS1z659^8k3v0ji4GfDGaAxJ2sjKQKEd zJu!JvxqA0&23wK5BQO2F8rNWcy!6}7LOk2f!UI-5+J3TLCu`fU{(FGXf3$S_$+Djx z5c7XR=)Y09Kle*BKGxVcSuXuTt706My^+pM?vVCgN>P4man|{^mNx#)0(f-<(D6V^ zf$$GtKTsXWN02Ar901VIFZmXY-%gw#{39*c))4PlNq)a`k~Oj;^HqyM#V?Dk^RLr0 zWC6@no4;$Ulq{9Js`pbB!!-VP64PN86S=@-|Kazr-nV3At%76a`F}}sCLY!AKTh6I z{l9y~t>#PrPsn#GK5MR{tgHFuA5{D6x$?W_UBx}h$fEWi=x6?)pIdwVH6nP%#yR8G z=U z6}T3d4w-;$!sfo_3GhAq${7OmCn(2D;65jMz|3r)hkdPQN~=Tf+lygIU|ry+y*R`1 z-LI|@wqM@AIKFvCc}qFI+@t(KbJ2#CHx_%=)jw{O|L?(Ux9m6RVacP?`gd#YU!pvq zOQg@K$T30Q?cIe0v^;u#FWLF~D@*1evHb(;jZgc_V|IklKTYwpS>h1$g#IgJP0SY4 zzPIu7{?4bDvE3;jSv3G2iiuT9P`*w=%1)Nzh0c@Sy=!}B+n;v(<$<+ zJ|O?!m)TDFp2eqH`)3nX{W!OLqP(kot9e;*lV)VCSKFP$Xg&YW?58r!Z3X=y4LqJ(5&N}JLCoZ8PbRr`!i3Mp7q^uM;;Sq05L+iM@tp1zlz4! ziTS?8_08XvzbiK>cT@eTHLKOjlZ$QhcQs0H5(k)*?JQL8o6MC@{GP_&l*9Ut(0jBr zJ5{;%(ck^GOKuLy!r9*i=Shzo^-VT=KKUH4-%XEeZr49eAb6qM1FiUa33CZc{ z+u8hl{bHqJZ2oRKCfUC63;EzztC_iNe^|Tud_?*pwvYGU8`zKBz}1BQZVTZ9NDNyI z_y8A{ie^#w?p9 zhL7jHM*<_tBY{!K7zD*0k)e^$=#~v0f9N>IeE9qPd#=GzjOx`i4)Ix_Cuv_`&Ny?< zu^F^wLyTMBRbVylk@@C)}PXQK6%qewz#AbS0A`o*7|ok%p&(F*4z_)eS|Np`|}a*BhHBjXJu9Yx-7rAc(r+9IlUZO zo=`4dEnEG)Ij$I}*?-LbzgO|UvDtp<#Nm68Q|6n2fU}<^$ zdxuHSAF2OG=pEHO4y`2sM;uyv{%?@JpRJhxX^Qv%Ntrd5$rE@(vSc1DBh3A{bB!j07pstqyNnS z$aLOC3}K?Y1(yr`&q?xq*7$RBPP&u4D)%X`;-hSvd{VKXSyk&*_m^juH9sZ>JuYmu(39?O-vi@-U-3I^Bxg-AM`A$!aQ<>pme-c&mHU>nm4TjDbF}(Y*L=Rv zf33#pL#qC@YdSW$SFC@&G~m+7hth?oh}9l0bffE!kanLU+#fAV_cz*@F>|;!D9d}BdRey=%Y9A*%XMd3P->TT8xH8`?yF8g9D|}_)6aG(B4haCJ z{XepP!Uxde{N96X&H-U*n6nnoCz3S5FH2my}b=E1JJ8u9g0G?hmtn!9UNkz5d4N z_4xECV9eV3^|)k&SgRuYV`MS%{QMb1UL_74#?g!|#-TSfI7mh#aV#>zBM=^7zrXEP zMlMJA+#c1I0j*W2tee3+oAD2)c2z=u%eZ!nZ7o=mabM_PX5x6QQr9Q*Jb%~wUP|AP z_ppxo3yTSfW|rVeAb1F=WdeqXj~Mm7s--5^whlGJH(qQ@fpU0L@D*A_?;ru(OJpE{ zbs`Z+8)}b4gu?A)5BbT=NWc@>!g0vYz&~e2!kVr4+4?Gh`;f_eN6XCfEa}~|AqiSm z7I)0ufd9A>mK!pQITEAg{a>cpv%FiQ?@X;eHC9z9&uW&%D)}Q?`|~PU{|{;Q{|@OW z`QLNjBq|h**nL|vOigfKB?YLkOVkN$Uj`)vcU+ZXy0`G{u*(J zQzR1(*O9-M4RE<)YAYxnc84kuZ(j5(X6L(P_avv*IvxCz``1B|fZV^(=H~HW*s;LS z`IZaz4_N;@O6WWQ_G2HIJ8-P$1R-Hy0x$rw|Jp0-|GVUxY(YM>*g|dkD*tzOXu5H7 zo#fVojc*(6VXgq^{gN&4Ud-%u(PHYYWYNY|A#dvlyjATImSIj5dPUoBhyWTAeVV%sN368u)5&l19aTT6lCgn#4yC~<P2rPvm`zp+*1Vf&8%S#bk!CxmwNs@&A$i%L?K4-5LEchX+RB z&6$132>S$W|MQ(~1zQOr0q_c70mRw)Oa5P5WgpzpsM1;4+w%X7(Ds9#;F;-`3B2V2 zWht~vR#pUHhIBeriFX(NnF&Na5Mq5)19Ejh@}KYkupJ~@=NUx+=g8Wbl1xsAYevQ0 z@&P=SbjxqzA|oAO`?B zu*{;n;GQk@-~pfnR5@$X+LKncW(2i3Ga8hm`8})&qauLo0pS7IR#L&03wM%d^g?<6-xU6zZS0tgO#2G|_lN`B zpDA8loZWm|R@bxA|CdMxf6<&@yqNEx_&;@jz&smrz;OV}_Tb4p>Co67-L}F(DS8e5 z&$#lq^>~9P7_s~XgJ8{AXS793it%ANVO_=V_zXfh6KCcVpKWE>o@W&E4K3q*_NXyF zX{oPmh9CYaT8f2Z`4BksZ}~(^z&{8>--0T8_m@#S+SK^(uXXG?*LT8I$P_^H8vo#i zE#wL40P!3N{^?=b2UcjMTVNSMo1*u)KYl}Ns6b$yAFTrC@!qvbGp$U@+N3Z6&rQG< zARY;h1MwjR=qcl$CxEV}|1F9A%2TCpEiKxp)%LNNRncCL3tAj35jnv9S#x+q`FNgs z`~0MQ_hP0hP+V93MlxU@;s4C?ZLR+OiM)T8iUG{iJe8eP{cBIf|85jE^5j1n#a9UJ zr`OwQ!uF~9e}?v)BMATpfEAF{KSfsm;WhU^Mc@5FGUG^D!|>w0^zG^Te7$1-2c#bh zZG&pI{h_=LBhyB*ld^!zs(}uZy!IO(C>}`1pYbRl>(gm2aACD zqy5SG4ernEKk5J-+E^z!G5tPUDF5H+VmoC3s77D9kD?z}3ICrrR+IjJOOos;@tDc- z0FeJbb`koC`+H6>_$T|>5@52V-;=`sTrr3~NxQVIJS)`yzB6m)pXXznv&z-0$IEHu zmE}$4QspPbhnkVyy|(Rr-&Q}S&S8HGw=c4kPI!xZ(S8S&L|39!x%zNSer0f zLTZ3?`-Rcx)To!iP@#!7$ge+(SD0lkH^p zm}P0;gcjK{2YG0Ia*V*beT=+X*OPOEWXkij-ZH%=wFL0dFa_h^eao}-ldwGX`HlbZ z`XL`I2WSV+ox9|DyP6k0h@@xp*x(rZ0I)CjcYA$8rg^limtUAqEAAHl&ye>| z98`5^w<|9$Cglr+|I4NSA6A@tPsRTaOr8|}UljxXTygBnglBa9Z)@Zu38oAC=ST*e zB~}3bkCld>BHN#cz*JfL9C?K7Wmxi#(wtNE8T=1Uev>ZDzL2#&Qu?-8teDSAM<-`$ zPEijra`e9acJ}1Ot8IOlKJP3UTmc;Xvzh;geZX;%^#k_t`LjhNfHeYp3H>8wqa2aE zm2M)vJWBrmF~urH-+Z2GpFA#`=N{EQTtV{z-jpqHwD7-=q#1JnsRs!2NAD8_KniTH zZ;1Z$x~F<&p71|US%k|c-z147>qF|_*;@bi(Y(EKFIK6ZtMPwVxki~bzsdKIHA`hi zHhTbAtp$I&QR0!nGi3ZA33$5L)JB|jzU=|N_ox9+)*+0k@IQryv6i>>;P3sO-`MU9 zZI90zPxs`CQ4^>lxvBb2THffM_9oXUR$buz3%CXcW z?npjY9|@-KwwUR=7CAZ}{Hv^n-m&4gV8c_0Kf-rLU(h4*TtI*8u46BMEop;$Ar1V* z>Ayff_hG3^&x3z|LqD6}nBkabS?2c6Z_KYKUe^dbq1;>ZPtK`!uU0B2s`lTj(oa{& z|Npq=sT`1-cwb{xZl z`P&m1Ou+bu;~V*`0=#mKf1}@Z0Uh-V-18SXz&TwTu%~Jl43j>e*SIlRIol&&yVyqC zcEbOr`Fv$R&X@Ibr{@3sBKdjp+9LhGujCp2fBb(`|DhJxC~Z{zvF{J>-_APgsp1ZA zDF1Jk@~2q=;CD6tZ&d}5YxAEqPb}MO&gFDfU%0pIUj9nn*8{|6yUU(kPd+Uo0L}y? z7dTilD1zge;m2q|doijQzl>^+?Z73Y%erK7^n0Ae$b*&oJ(9w{KE^Biks@sD1^?E} zW~!d!X4}}z7EF6g^3EeQxPkHIu?y1B#-Y8;T)=;e2jl+-`&j?r&DbORA0%|pDmHz^ z0l+`LKI#~QM`C~Qbbc9GfVNJ!7kUSrAf?!7hb;nnGq6t|82`@MElNsrf`L|-*BP9Xa78CQ8vg?w0vaE-z3P%^&07w9P{rpPo4(@NQZz|6$|G zzJ#Q6JRsz3R4(Yt)QoF(s5o9bMxK|ihemF|=1-%RQMrxm4|nq49Uyeb4dsR+Ov zdH-fe|DPwu5BAT}|I=&iPm`a2sxW_uut5&+A+_~?tbF}b6e}C4DxL#1KW+WaCdjC}TFOz2!xtOARU`^s(g>WnY=Ks6;4{HpK)jld0!ve?xI!?_0CH3A-n)!4} z^1F1BZ2#HHu3V5^p!&ZjmYY>eS2H95?kY!?gPQG%qy7i~uF-_$ZypC{4wlScv@s)^ z%_D{p4EEpxY#}WeA&e($ax-BwPXCti#n`eQLgyI&jM2b9zv6sG5x+y@I>Rlr8vFcf zI0(lesn|eRj7@YCEecPSM=JW)egxw`&hLDhh^qwySW^h>mxXTXy(XYhJ%Zhf#Ade!XEea?Nh z(-w0{{i(g?nfyI()7)D@iciXS$}!bN)zf9K<~+6gp6uf6LfQZGwN~{>*|q68Lcq1c z{(Q}1zgW8eY;DH>nYAZ?SRm{794*X~^$Y&V0L1=3T(PpP>k8omq}8_*X7!^vY-x04o|m{_P<>W z>!s}E{Iz2La$vPwb%88^+sbj}j?F&BiLz%|nXzk~1wbtq#-MpJ2m;-f_(rX@gZCK! zJbl{$)(v3U?A%^@#*06DB*oY=VvS(1OOzP&Gy04f|1zWm88CRl$#H>gGlD&;!98a~ zf6{XEY;)7_RnS(mQhNgIePb{9w`3#l7jGWyAAQR|G%o0NR?VtHeot-d>7E_G0Hat5 zSli^fpqs&epqkc`ImlIwCF@nUn4_F?%V+wBo&u?~iM0l3MKFMn0!RS2k8eW)zyaU{ zSOvVZq@Xq6oL;v~=9QkaET*TCvq;+L2R~^`V4j`v&pE<_X-Us-YzKtIrMHP}kauOD z5?&=Z$&XBY?U-l9@M25h|Chy<`S)6Be70o7Xfblu`gQe>mKP9R4~kp!0qpUQJV5ln(N6}j znS%X>;W_YL*Zm>8U|sPH<9|P4^oC@aY}9@*9dx z%TCqu)%oS|<&EX!a%ywi;w)Kafq%SyL~HFw_oy(pj%HGRnWOLK2gn*fv$3Cyl-#=UEKTQ@q zsE5a&tk>gY(@zzyiTc3+ECUXfPTfKEfi}?ASNMlzPtZQ10>_FEADTR#_RK43+L4j~ z%WB@iXX$ClELqL0_t$F?{?XiF>GQX>q4lx*K|OZA-v$2h`}5yX0?Ps<2OIeJ%)fON z`vd>mNiIFon5hcAL-M7I!OBP)URxwdc6IWBqIVw%{mUjF$qqV6M^Xhe>VFW`z_;m& zhn4`a0P+Hm274*n@nK~E&Jn*Du8gOS$^gDgy?bA_d49P3FUwXdRevszEN_quxV$-~ zxHKOm{~z{$CynXw^6{j>1(*R(#=Y@~j>R@Grop^*DevqJ@^9@qwx`>p$oY5H@QiYg zHb%U4lD*Z|>S(8s4~$l{BK9@9e`)DI>~gpOJ}wYMJezmcpnPV`T3R6wJk~9(xF1Gq zcrNUV<5>Lp`2E?4tb;2oZmx!YUs;;0yVz0}{Urk!``;@WqWA6pvj@=l=U&Lf@myN& z5{-{U;Ev40c}IJYQncGqfBYQC4tpVudaw-}a7@xXKYW0}{^J<_!W)*_PBZjDKVR z)xwPb$+Gd!)(TyH@4 z0C=VDAE@V*Sits*0Gy$jPcO*>_*kQJvTXV@F{_6ZVYwsgq|C=>n%^n{aI-wHS85jE zlg*jMU77*hO){FOZ zfH<%Nd(LXR8um{VfC?b1NJe&*1n8{30{=w+(Zn3%I$>B3j=O<+Uzk0IUibW}A_0OZY!4e|6Q?EuW)cQ2trx>gei| z>d@*fdH>tyPbfoWrnWn>w>3-k=Iq0Cjx^x;vH)(WEB0aYpH}<)U;tzQ)T8rV-NX1t`@;gl`ez2Pb-nolyx+fX)&C$0*j_B7x0uQH zYWHo8<0O$f$u1gH3={s_%NO4!dm#CTwD-5F-}8%Pfua_t>R!qIBmPI-BlJJW2m8jq z_wY(IfC#{B`A(k}3s@$3FL^J$K-`}kV2$hI{N`V@_Tm%e;hKSQR{44JNo4?zuH%1! zf6IW-n8Cu05^xfn0OT0gjEWc^Jbie9B?r0!ZeW&aIbpOj){Ora`Z*h10R6=G5f8vC z2+Joc2XwXa@?hO9{m-~IW8e&2)95$1K;tobkrQSImR7b+q7@*|h=%in|AsJxPk_8S zc>G$@W!)q#+vz@6(jF{y&}Oe3t)op?EMT4WLGTNr&5;D&ocBaaZ0VZ;nE%sSdqU`i z6?8Up5!gH!M>666qeaLm&=3E&|IZdeD;@y;;Y=_W`oo?8_Y^%GQ2`hh^4FWCcRbzJ z^F_juzrUf9sR0{vV&$f&PcvUw^Fvvmg4_g6iKmaeowkva;YT8XdT^E+Mjq`#Oee6LfGv&T7r!T&+Lxj(Ot1mOGQoNQzOtf5aG)yAR1@gzn04@@3TSI_^W%ACXG0qjsr z%{yj~CSNJ{DM?mMex~UE72^K~=|1uPQ~d{ykDfR7$^Nk{KoWp|);*XiuJfwq0I+`A z4auzZI7L?HNWT6no1c$qK3Q%f5A30u|2M5{mJ2oOXqUPIpx6J7JmBz-S-V@8VhIH5 ztucB29KkmrA05DGL7&@)XlVedEg}3n#$V_hWQ8R`aEY*f&6Dl%XAT*@KgZ?Kh~Uj5 z+y1SPC?3a_1K^)4yJ99$IWunizPKK~YjEiHa1|_gtZ4Ax)c9-&W7zauZCRnDt#n#f zaa(2;vpP`V9}fZ1fAHokK+Z;sZKb$cIC2at$DUF1A?~04qThJMXMp@*Kl~!}fB5yd zbI!>(mH@Pp4SgSWi+uyeKY59q&-&grhOc7p2`nT$4)h;acANZkF{}iGB1ljP!`}@@CdcA;)eq$i~Ik==WiYmc>qR#v-$G+ zzbD`SS`z8cDo5~maU9S;LG9c@cREHW2mgV6`~YSHu7SRj?42u>0q~Bhh%IOwnH-Xi z(;6U8XcoYN>`(bhs=dBX^~-9SaxkZszb-pAS5*d3pGE$EH~{(o}$v7@Xf)2 z(Z}BGHAI^^e}L=wx*n@=3XWuqn~mF}NJc(u4RJkw4W_srj2`?~`kM%2Mw?NzMs3%6 zy_;X^7i8dCC-Y0A9erj2{Z&Hy9=KqhJDTKo6P4^ZCC<+A^~RO73;)qPrh;#sXd@r?3*E*1J`il4qD z|NpdXcKT;Uy^oQ$C+g=6f3T0Q{~%#upG9n+Z1}*#R>C@K_jS?Cn$D5{WY`UoL|{eC z1BHGn2i(`VT-85z%YRkJ+BPq~QLoKRw@oe-uC}h@f9nYQuzu`!{-f=^q3!M4!vh$W zzkPtA|D8FsxD@cL-*&a`M-K3RZRP*;5&p4Eu4wEc?OZA@+P@fB3@CnGOv^XU-q5Va ze~SHgNU|FLC&<6STEJ2NAN<1s(D=>)bp6k5B^8(nw1c?O48{IFR1Dy$#*m~_+E%jl z8P!&KPPqp2i=)fKt5MZW<$julF`(S3xp{GtG61LmO#UCSn)X7nQEq9DeGE?Q$7d9n z2O|5yyfr^@--sS8E;|@89FLx7OpYQM-kQ)pO_Z`~WcPrgj^dYUq8gT|Pk}R@+t6`Apby>I+GG6~Y@J!^d=1o-!N@$7hNmZ>evpvCyya(jQ)sx^pn zNQec(C-DLF$Pdo9F0O3O)4H>VRZmyvRK4Z>+c1Afc|TW5>t81y)eD-Xx?Og-X29Gg zq)(|mefar7K6yTqrT6!cCWHq&66RTORKpxB#^0@;SBrDdoKk#qw9`Bv|_bbT(d;)?0 zZVSPF+nVL$^^3Vb;ZyJ&z|OUAVz^Mcr?m9=@&^!X(a8F zj(UAoUXYU{^NfFH|552Pe1P0H^?%|0MnC?)F_L-H#r@xt7h$gE5WJTxNY7Mm)nm%9 z?w=p046MU6^Wy#T#PZZ~VtGOH=;ETh|4;Bw6af5#db2wFbzTkmRx!4(*V+i)i|5kHW)Q}nz#Wh9UW(To2znm@NcaR=kWDFci0-%-Pjb!8|Mm|D>&mGo*xossTz;i z1GLrXhgXC1kWnCuScK=z!JqK@aVN;O7USU>t4Nn_ENg8Y9R)YwN|sjE_ehAMmIHi- z6R?N6WZWlrYQMix>`x$_ji(cw%o5tqiT*R2at|UM7#r68c!Axw=7+3d;LK4o1M+}6 z3IE;lBl1aFf98>Llj`j1RYd^jYwf9JW&Piv?7wTJ{U4Q%x++^C>y-A?to*%%TH^bM zNc-(u+rN{9QzGE#KWjWPVX1=2%Dn@m^E*kqcGPPZNrGNt0GkOJ=zmuXd$4hvvh5C1 z^{=5~0Gkyb=O1M!rTvogg|6*&hCcdbheh06;MhFCe!W&C!1+Hd^pgPqZwQY+ zOoIGBI0bTn+MgZOww{tqTS}krBmKWka$fqc>_d4*25MWoI6ohoeJjmh3H=>w{SW^4 zm#+Z!kDb%PKC=L*0ZbJzYysN=;D2Y?4EKotzb={gdE-J|W0KJSq^y8tG}mB3b355z zZK|uv3nc+wZQfVRQw|Gy#VDms{>wXb zJuDxDf>hfC{Fc}vXa~h`XuSAFm#@h+I6n*k=?F@RMBraZ zGBA3u#fdy`&g*Dd0@@ydk#J^b^0yIB+dAJqA6Dldvqk~cM_~KT0I&xzaL>NLKamTb zhjAb59=&g^4=dq$*eYWm&)Imlr-JV+4>*UPp>wG@ies%U(D$w+Lxjla?;>v5EB~!@ z&r9+??;-BLpjxFmtofqq-Q20nR4V_^(fFLJH8AF;FD2iK`|mEjO>PgKFL2M?H(S2M zzQH`zFIWScb#OOZr2Rd&zKd*m@V~jF#ol5Pht$!*`x|#D+y3zU*R}p1T)daRu6p~u zl5>QvG1C9N>lr|y^=-dfj~oAv>)HPY_RS6!$A82JIFjEZ0oafs;D7B}HuaLFGFo`v zOF0h1lHaDEWbZ02H&_yBz2f40_pF(ARph_3wp7)Bt`wHN1|Svy`1k#f67szUh}Qw& zJzRiw5q6ZH?-)tmtalh+ zXw_h~_IF|3IvQtrV9y^uftVA|OdT_9UY$V*r*MmCi>+@W4M_129fYc!eW42RQ6~><8usS<;|mqsNe{;E~>>*RYncy0Fp1LqQ~h zmMo#)ud44i%tz$oRj*-l`D;4s7prK0u>Z*Z#q$3#vnSBm3(igU?8SHj;qOH6+iyxc z;577`EhYB&3G)}Pr0qA3qus4qMMl5x0*!$TVB`e)iT`bsUy@&4q~*%W`}?|jr+T$q zwRx`Ue&4Q$9~CMdlZWcEZ2fGv^f=APIY5{^pyvF02`R35>!_D)Ugy7p{vl%i1Lf`O zF81D02xfKNuG0U#wRfa6A*+ELC>F4%bm43t-SoWsxWL@Zr|K+Q4Vlq03*5a-u)el$F_29BA0B{iwVweTb6v0S0Un(D z3kSeYfo%{QQYAc=pws#vYrfSgq$@HNh$T;@maZY`+*h?)N2p%o zMq<;{Y+g-A5CgRKZ{-4F_aieM8}z+UnaCQQ`?rPwQ0WO9UT> z1h55Q=4TejJ(w?oeV72T((d{{Aiq6-zUWf+t6r$qSmMR%`100byk`F0BK^<0-%m?B z9htq8Hq-Tz3pCn|e=^^9)`*UbS6914{|}dSzqwF5P;8ovA6L|2e$Bd)0L1?XOH=M5 z-AS}yCrN<0jc1a6*|fZ!kTy)#_VfAu**58#$#n7mu{zTRwf=7_*aMheS&%S+cgIXHbWdp_Sl{{JCG@8XvH_^d-Z zBI%U$Pc}%F)I5l*lubyjg7lI0ulYxMuCg!50YrTL?z_ zTdzj6mv1c{(EauX`*Y;mqj${gcX&-G{vEukMOy>BZdZ6LkxS}pCQTi4W) zO9A|MR+!&EUa!NL^ZF{F~MA-ZGhE=_~7cdMuD0du{RaOdSKl z+T$3cE#qh1I`@a@e^<$^m-DZRL0a+aFV#9rT&mo^F~xfMT;=}Ur0mqE#ZGU_hR7dx zbMklj`oSx+diIyU53Pr#kIuKXOWjMa1UgVy0{zs}qk1P5Hp#H*D*O)>{;7vS<%}_s z1dladOGajA*P4X*_NirZ_9nF$!X9gZ8cAL?SFP`ig;$mQfy&Mr$BC)LDL3wB>JDW&^NpTVIYqTM0*Q~Epl(@|1}ju?<)zgZv8v%i@5=0 z9)a>!4iM-kPPn*Cum>>m4v;ZOFYY#Y0DHLpPdD2H<^l8<*ruJdnx|-f#dB^+ce5)p z#M{g7XYG#!7@z+u|5bAvRsDOfT6&4m)z!@(C8h2b{;5y(oJQt_+0U|m=_Jj^oviV@ zyI%K`jx_7_ns-}jjC=LZ5kfbbe{`XOiV`o()yf1qs@1lC-{lx$8%zvM4n(mbhOtwt=$qV?LY=pz4{p|z6 z4)PkPNJCZt-(1)qraK*4|Ai9`Q6G)cafe89yr3+gdo>SWv!rXfmZa?4im+Bd?H3P zZJ_n|*TJ82{~61X8vy?8JBXYcbSo%sVcIpmVGU*upvWr)zyN50u}{pBm?7Q(_M*>? zFs^R-7??M6b~_x6hxx-L$U^|#rSRWTYv+!rSz3Gbw&y9rfZ+Kp=5O?ae=`BtfOCMc zKWH=2i->qQ($`}AmIjuOw9ax9%gxf#eQ7@6XT{n4J>T(;vm-Y`|98`l~SJ!I*37OQ4vEn5en3`@JSB*QRi%I$@H*34lZ(DRMIX|1hGgtejC`Uq=hXX~V8 za-xpdPST{icmphgI6V@8y1=&ft;0i~M;-v*EgtNz%~u5 zg)Bb!1YS4KlwqEc83=8F!`t6r?*b73TFEbv7#xeY5V?cp&nF}oc8D>DK3{$jK8${l zLeCg0ejk~Mv;`>!<8W?Ip--J;`){o{O@F;xO-Eq=M4wnHT2`0~1RwCHTu0**p*7e= zWEk)%7#DU78w>?>hu$~Rt@XoKU>nWoM_Sn@Xj{%YfYHJlDdhfl)^h><8>#l^;9~FQ zlyYSCVs(3UdihW>Ie$TZ{~P81dsNKyk!WzQvZdTY?PaJ!wWCoS-h?|jZ^Gf62$-&uGdDq(h?^WE8pOpP7{XzVC zXYqqU|Al|o0t|0|L<8cp|Nb}nJqN&XLwgIE17PICPC81$tSA28S4bVJ`#Ynta?(G& zTq_cEl>Q%}HHjXRO|olxve3VcY=G~D-gD)>MEhg=j}@-T@+a;O>$lb)s!Rpy+o$40VVV_)H+&rbYJRhiM zMGc@%_2vq|Mz8ffqZE8IeuD2=|6BX}8;@)sXAKYj(7m=MkQ?X~` z63F(K@elIN&w@AEFX*F?(*D+R!uEqTJ`%uQR~FQESvu({eM<^>DFxRY_oKa~-^g@DKXY|9INE)ck*>@G?%=A%d`nY6+&Qg>|j;KXdJS71!iPWxq%lD$|hs zKlH!PXB&c5K+yPTdsg)Z)mQ<}`F948EB^)i=P$=O=I0n7?_K@ZRsX5{-9@p9L5uLe zT+%%~Kf57sFYP}_|DVh6)B0y;Cfg=kDFVRy-{&d{O6BjJ^b61LCHHTun*CcI4v{Ma9%sWyQPu`FOxJPFhk@QWwD8Bk$_Hi~SAEP+TG1Ujv*y=9L0obj4r1^ln zAzR8z3tK~K!vdlLaMX7-UKl;WVU25eJrdtmAj|-?J0pOx0oJ{aCB6Xm$KK%nMiQe5 zNdTj^#zhCC!QiuC-`>9^G>X@iKY6q&7w@60@E_s2mEg()_J?;p5Ct9vuCT} z)uXCAS!t}_BK?26Z2#9a|K}U|{<~>5-hTCHXRS;AkFW8Mm#?=teSdBJg#8U`^n-o; zeXw>*g2=J$D!<@R*~s9Zb%Tim{-v>GIxV|V`hS>a|MZl`J3z7ae@fnrlT|%nk^VPR zZ_NS^3nEBf2so52p8Qov;{{h7- z`8=(EdUmp1GAikke5sh_xyoGLy_R6E{T(?FQ~)y@8mzOyiM$Py7tkvLOjaF`*L2rU zX`b=&$=Au(=`}+C$Jt8xKl3A+9c2L=t1RH5Ww-L_=2yj!!cq@CE7t)agCq2{GyC~u z{P3h1xo9nPDqFinN5}i{3NS{{AeJG{13**Q(nOEi-)&vZm;-x`wt;xGnLXOZKVG$^ zbWGQLl=4Y`pI;-rG9y1VKRTbB@1#*SOe_Wo&_+1M4~OU7wRl0l+m9!pC9TY9Tze1% zJCm4<0Qfz+-AIJtJ8RHd&uBtUc)!t)tzhoYb;;1f@;BzVS8Gr+0i*%_XqJscu?1qU zALxzPrzK#_FXH@s2j-1`+yBKPU5~y;GT=K6p9yj;7)!_j7yxZDqi?m%RvD7mep$C0 z^qaFFJ^U-=I((0@U>n9#!2T5^Kxg5A!KFMnG-B~mq^`C$I3nE#Ec zO9B30$$pzXna)p&ncbFmllOniqI+>+J}LWN6?Tr+5#WFQMdyIAqqW;E z()rfpVf~~3nE_<~|Khrz_ppS>9|rw?Z&m;gp#D!6Nv~nLvpvQCo5^bFRMqADwfO&F z;s4G2Y1KcUk&H>UP!{0dRmpR@_&-(<`lG(Ap{*qBC!y`({4S z&YDB{wDSL67yiF&+>+dxo~2blzff+-jQqRe;qvwBa`FGA%l|arZuV=ARPNyb;U5ct z)xg@p4Ql%LKY$p4s66aEiWeTmVs1BS^*)>o||GVbU-`19B`gR%VL zecTP4B;s!1)&4iy=qLj?ay}3~K4%xuYVHI4;}@{Cz+bovbM9d^Cgj3H}TeB*c_ zjeC3J`JT9+vxne4A^Euf(B$CVC}%Gc5&RqD=Kbz9`$;&GBVY#f8hK7g0Z?s50_M%+ zZFw!81?cZM)|=Tq{EZgVc58pfbCL13ZQQ$l;(`DE`I*Xa@6!Br`Sdxx6^1I^b z{8^#@25ol;|1V?*WtYkNe@`=fv31Gr_Z*ikG`=^MrQfBtoO|gVv3}zn)(-;!|MuEh z%XX}NY{P{C@?y7_JlREB{@;!EnhAeb-d*$mMipI)bMi6Sm-06pEA6_C_&@mPEavZ? z2^bcD{rJW{uaW8Z-}uJ@hzJ4s|3nX+6%ZK!oplFfCXSJuJ6W;$Wz&PR^E4-6BcZ=v zu|O*!pOIdX>?HiROFmHy?{qO2tRUDw*vA7%{F7MdaG@Ub4;21w1sMO14Q{Kxq>AYK zViB)trGbOeT{Q#nU)shh6LVBKOId&)l&cBT&Ik^Z_0kIFAZ^#$2UGHpxR)#QF!xpeN07m0zAZIe)F=o(?Mv)@|Xnxy0 zwpm~j^gvQ)J%DfUZ=CyGL`5CrGs^An4<-Qic@O@vUEnoDF7X1e(F61YJx{B!y0B)P zhhbYDS?!h~ox)#$#s}kkOP_jP2j?>run&;Yf_H}aUoVZT`}0$aeVYTyrRDqkQ#Gdi zz3TovSmR&bZ)K%Cqji6dSLWZ7@^*VA3vzx&F0%ab^L4DfXPxVJaCDGv)^E+Y^gBY}c>v)Dz$-!iZ#S`jY!f1q$4M_2=^ojc`6}}LZKCbH zTousL8T7ubJLJD89%}ATy;*Hi9Z+si4lmPkt>#*)KGIXj$8K}p52y~T z<3~d(@Xr3dI2vC&`}qv|@wPFl(8J+<_Si$um{BttW5$bpXx4VH;F!rm zF5ODHW)I=~-2AQlOJ$W@m7gscaAE#C%`n+jV{L2s$vW#yc;fKF6MN?hjAd9XBi9}b z+p4q?4og%FygPDFT%je6I1kvi1prQL+mq>I`v5E39KkVvXBDH-7q|aG4n5blzMApR zeY4^Bcl^+{yzvjZjb?oM^o21FzTGd*^)XMP6>)SN2mbLzazBe}ZqVJ;{?j@-7~44;YRfMr2=c`Q${{_*@%^{boWN{6WC-n+%D=3c7(agS#IzT50xteoGa z$loma|K>>hKa%y=y1x@ti*qmOepa&DLD(H8U*E=J`(1<_&_i}Fem*?vZ0xfvFk`m_ zXfKp)pkHoLYfJ3p?UhY*dSkg{kYa6*YW3eys<+=svt9>g9|~i?k)LrpVW+3$2KB$u z{MZ0y0>(3VN9P;&W&^7)HuEpg-)$js!9D}q0`>uzml*%dOc*5Wj?>J>FB)GZ+o>+^ zO2Yrf`v0!xBwd`|l1vi**HHDZ*){)X=#d|8v)t0QLpi9suXo{?7G968xB9DFiog{x7_N9EQj~LT8(W zaIdhA$opY02>se~TpzK$nPZ=ltZ$afU46m-Q zvT9QE<$BG}o9pQR9P$6#vo*7B>4vJs!(2QnS&z{O-%MJ31M%{XLb|LOvxom) zvpZNjvuwKRR|BL2VgF>uZ!LtM*=Un&lRlKqSFSzP|JxOZ=RLF6RB3RkEM?pOuKx>e z?YCdEX7J(n5A>tmLHPfMe<}rp&%oz`O%VMz{(H)gxvAPURx_Oc()c*pJo}CCzp*j^ zHW2THLzQi3v@(sVtSa^|M%HF{Zqzda~+M-Kw>K4=U%Y64+b$j$&)%mbce4 zX0s=sCmKFJkKW+TeB+Iy@%r-($5>9pyf%*(q=D@KMituF925zFCmrt1W^3BME$cN# zIr?=;oqd4({Nv^EpP7Fo{Fj=?IX{0qe@LrKP1oL?BpdqbI?D?AU;$);-N@TD_RRqz z?#38)Tmst!UJu8|T1FxvN1O$O{wLFaMWL8`{iQw;g%2AX-5Z&Jwh}0zD(3QIC zm(>5nYBvkuoo4{XETEX#1IPcrqyMk~O9}D-oeRi0905RXQT@Az{C}{Mak}z*jRl&M zaI|U?^%MSk3IG4dW~C1#`y?ZU|M!I3)9QFguz#}u$b^FXd+rm~Ke~TVEd@gRlL;_F zy*O1>PrlGLSJl+}COtI|a6$H?7=Y@16puDHuimImsQ#w)SWhdUds2lnX-f!C< zWWldj6`vfgJeV>0k@;=;hg#G0ZN-)z%jfCSIbxbS%l_X`?OIafJ~*)}VBiI0tXt1n zC!+;k+G203ZFn%xRUH9z z1j0PP@-XCrkD-;VV>trJ?omLm!SnoldDfN;yaWGO02}6~=i3&$G>4Usmm5}>RTHX} z%iW4i^T*`&i8}+x6_7ffUBc( zS!o-LZ6M}A{Lg;!t%d)y8=aEL>6_V`(*J`r*M8|@T)td(pE7I@)fGqRN?nCdRslxq zgIN3Sjd)(|*TWM4`u{ilBLRGbtpv{rfC1pG=%lN3R~%zgwQNWEB;VDXgkIU9!he5R z{~Ht^=HF&_r;jCvCi&_ z$&RZVA2q&dyr^8DB6%nIdwRF@|2L`w@JQZ4l>i^D9;&)kbIS|LjmrI-`xiGUf=*>? zo^1H?z%J~V5zN>L2>_bN0I;QRt#AF$F9Y%IG&($9kSJ^FH`XW~`^Eth0Iuzg`W&9y z6BaJ9E_)3j%6@q_g=V)36@elT;$75P2# zt$Vc1L6%x6#Ep6ZFD_6p1<~mwC>E_0W6Tv`5`m-ZIZ(Z@|v*(hPi7j5lg=K z6cGX2{It;TEHNyp>@(r%Ti4TP#yn4(cYf9$Id}kw{f|_PW^VCH^N$MnA5`5^ty-Pi z{Fi$20crp1^#4A^{@>2d$sVk$e#6CC$$DGif3RZx8wvmG2{%~w=F(WwW&`bO^kb_> z%|7SaFo7lD3!733#7{}1bAl6GoO6+kvst2Qh? z(=(fsKA9Yr?5H__e--|x3I97Svi^|(p8fB6zu@0?KXW1aivbLk-pAq@Bxx`}Jvd(L zBtI`N;{rtz-)a0lxi~#j>i~bP|9j`>6dRSNC=2Mo>OEOz+n0AX=M{gE{_LcY%5%4V zN7M7XJzm2DWc|>gx?GPX`O@|V0>W%I5ve2WTb<6_%4<| zdd>fuwFX8TuOOTcQG53i>pvzxIX@xaQyKCbN_wp-WTv&x0HnAA4pBHXo3$-@kD@X~{JUfIGEU_amrIvebV4GBQ@11Jn@8fgHx zMygs4t|+8N_OLN;3BcXc8)ih@5&dF&zhxzbjEqPiJ;wbbGwE6GF1WtYy||{gF97?5 z&C;G8;u+IAw>qqSo_5G}@Q%dyeX^HN9rSd%De}Lc>g{%Fb}65b?{7wRb9KLFo6Jz= z|7_X**UA4kN9cb$o06TUtha}yuZYzV?HZ}E?U}vn)>_&5xXh#l{q3}2{iFBI(j)4= zrgSVbY?%jRE12B>eUuH~TdRNnHG5C~zkbrSSurU8mm-djDl=dwU2T&^`G0sCVH-X# z=e7g@)yNk|0RA`cKa#+Kp6EY0z{rDsdfi&l z&3ol#cvp77oQARrwHnxaiU5497{C&$#@ea+P?Z2G)dJeL{Ia=vvuAOFa%*gnI!4d< zWHcC~_MnINoRMM{5LUl=gE=ANz?-E5`oZh)M8>J{XiVDbwileb+h(vZ0LDAI4-D{% zZbT0!w+;1M|u^#{)}q{+UtO?F-CjnIpmn-ohxy`fILg4 z72ikZIM$Di!sb~CNC0%U>u%9*c*1hR41O@`sfGk_=5t`kwupNWq~Qs0?jL-^*!BH# z1vak0J^5P3zkLEN_KzI0MxYw$McJA_uJ0r8S;*&5PK{a-8XQ&*m!UK5B{z7 zdGb72->GB7NIUEQzKYE3QJm2{P?7(!)nk$X+m+`R!&Q0XCZYcty*{3OpmjfX%MMBR zRPG-&?#b2}uaP@K<99=Gd8~5qh$T+_+?Mu74q*2$ZfR3r7Z3Yjp#TX$^luN%B|J~| z@2TlOv-cJM>#Jz{kMa_Ioc>X@Mh@5YMhPuFYW;7oVmqA~3E*fTSSAW+3E;VaKb`rz zI0HaRz*W4t3ZSJGwn|6wnQqEq+FU&67{%ouN|w*I&wnQUznNsfzok_kP3I;1Dg$7B z>Hq76-$}ZIZPY^B{YF1g4dy^O?vD?EylCI^F#R2%`{}QJqZLoRR#N6YMF8(=te&Ll z@|tb+cdZ4yFuOdjnm3hCYCcAvYIb=<*=`}em&}K1>5^%U1Pa|?T?q9s2Q0%_FEeR#&GCZ^dcy*UjVG(k;C8a zY(2-$@SG7dh`b?Z*KE_0X87_%6dOUkD2|mp4k5|`DN}Z z-fmt|u3DW}eJ%@NL35pAdBy&&QLVpgOaGsvT07^Y-(`Q%DkK}K(#AsR zjn|ZEJ4dy$CdyCPProAmXHSFwMicRwqu||1v_1Ef<>Sfgd>04gc ze4+SZ~SU2fwAq}AAh!0XuqJ3PLZnkUmht9LCXvqgNWjL~<<^H9sf^ZMqh3#MKMB4#IzehUy%oYzT z4q=g->4QV$3uw1?vs*#I7Qyoz|ih^G4N&N4t^wqyYNLLM^j(B2041g-bK zxHmJO#hKBf1L{BY6MaHo*?O?_AotIiJ)j+H%eI~Qhd&475B#@meaA)IW~708$j{E1 z)UbW@J@_Z%hdHFK_}Np|*^l{h&Gusd1Eu}{rIqK#HRmbDeZ6Y_UZvN&h5fJO|KBj{ zn6^(&)=1w$41n1#V}!|}8p*vB{l_oojC^xxvH;Bejj_>0# zgU@OVN-j#%{IAOY>n%^)KlOB;NKZ`ek^gUkj@($N^jVQK#OrJWL?!^tKYaVhoBtjE zu@VsaKk(mfQTyBJ8ePOR`Us~xh`^A9?JeACi+OWY_?FIb9$9$i) zYJAy3XVyJP1z*_z1EnF!{vW6D&-y?Ult;69a#gyd;zh>)7a9rorAH;V*BOUfNMn*^ z1nL*ZKltUUZFMcI03?880gE&K|9)>f!N28fj!|r(3IiH)Sc$IA2gaN{Da0N7Kt zQF_WI=_CH%CVw`at^EHTRRJhb>yA^NFq!{R0nPTk^*s6>IS{#j{@Y*Z-&isL`+t~N z#!2G-pEo|MYXNpnewDUWrNvK#|BteB@{f!2%Ln8G98~>DGl70+?yZ@?_sgrsj5zaS z@XqM)EDt|%NBTUc$B|!jKAs=EKx7Fqt{LyvbHS~>C-gs8U{n(MBhnUGwXU^eYad)$ zpIgfYF06f#3o!k_KUy_k@_=wwp zHvx=;Ii!yfh^+!QC;EqnkZY`=zF;0z$VmR$(nrS7WB5ZY4Pn)^De|8Sot^*OPoSFX zb2VfkJrUBueMMiGG2t)eAKc%W56-u;|AV_m4mi3G+Id#yXqHZv2DCM@6)d^qIa=p2R5{m+wk)Q_yc9?B#cn%|KBxp=a9X_;1&tNGQQ)wj)l#aj7I*%jKZ(VX8Wvd@M8 z>s9w}t|IY!3lrmO?N0Pwmcht3r|6yss)7xo74%o8*y8z3M2Ot6P z2K+bX7yrzW_WUE09IxPv%>N+**h}afE?IYw^7GG4-b&ZWKh>2ip>7dJf!+g71>`Z_bS&fA85WW8)Tw%)=$w3;(7Y!dU$@oh`rj3 z2KIx0SAQqlm*0aS+lL&F4B@{KK(@VWX(0hXCFsQ8PS!k{JbZpJ+GCVkvzs57BY=Or z{Kh00Fj9?y@DMl$28O|0d@~wQVBKrag!R8$&Hb*fW06OoE#}x_4cHDKN*UIPB@b-F z@c|ePsB&!Fb~KU{U1}NAuI@2=R;kJnIf2e9^!+W4f9}c%=kDA;NFYZ?{MRyoJ=XrT zX8F3u>D!P3_JG<4iYzeyF+=mcPJK_X@2$2(!%of$@_4 zKTudE{s)F^>%*$s);LE3v|Xf^!{P>Q`2Plp`J?-H7yF-3qvx!~xa6UhwUZG;)ZJ7$wwDN34B~eDKeijrgeMi3C9VI|jHo-v9f({(QaIa|2q8nmIaaR;V}{4;qPwEt+%{DGBENPVT>upKe=ws zl4UenE8F|;`k5Zz#<6)f@4>s7ZOb=ko#!L@l{F;V*&5K?AFU7CiRfdS2ijmDjDPE9 z>qfWK@{9GrZI8gE?TN$wN7~@?3+};{ErlZ2FgP>)!_~NJx~+HdX8{Tlyh_sH?_d+U4S8ySy1 zKs)WZL^9B3j|uAlMhSb2e_rtdu-;F1MPv3-erDh1#ImeL$n$@4by)dKv5(gKy;R$k zivQiKiZlx)0S?TLRL#pj3H9KAtaR4)(s$Ij7*OLsv@*ImSarnzY-3yF!nLXW#r*ow zI@6?@`!kbZD_OyNCeNjv^RI>f4Q2l?(AookPWP7nH~t4K!arCw(+K?Q^ITca*Q@$~Ni=ET(lK@ObRu*{ zzq9|=5nsT&X8q5q;M5Nr)%Zi>V6FbWVg6lhX>U-xmVcg|r5Q&zF0%jo%m3fGwkoWx zomCWPw}oL3z~XCu{uK4CPplS39YW71wEf^SV!Ny_wgLVRP<;Q;Z`rsVBZhc_u(b;aE1z^T&e*ty?n$2t*k0SVoA;)-!l`~TY^n+01;P8Af7P<}$ z2F5`-n{5HVw~jg!+LN;*kNGn@e<^cFViT?%939pCm8B4(2hgUEk){12SJ!W~ zKf1#Dzl-X!U6P+%JkfkqHNXF?S^te{VspM${J2P!e*Yx?f6M>j?JeN0D%17*Aix zoc}q$Gv#4@c;Ef*Shb()y01H)`%&)y(=1UJz=gB#6zkqu7LMp2bAOoUK3evFh_rII z8u!>v&=|fro;94n1~0$?_yt|$U#~12j1umdNyy5;bi}#1ad`51I#ijq0gAM*q*d?V z(v0JcldEKfw-8EJR$Pw00$?^G4bC|@i%0DN8Do3|Ztl9quE}NT=h*|Q0A9N2Am4jL{#V8S7D*Nq`so1vOH}~xqU-Q_pRj)oKNBaR*24OF;jNaS<$8iR52s7c8U=xj0I4WXd zfdbCjHGoDSbLm|9gC1apQN-r3%~)#Y+M3JS=@@uURzHrIqdV*km|dKAGuF6I_L5kw zoQS1+iE{qd_wXUQ#v44~Ev}Lng*npN3G}0OjCuPO)?6^L{jio#X5WOLu#i1}Sdnkb zykJfw?rXizIB?{TNA3{e7$BYhMyT@l$zq=JqjH?ke`$4Y`Es$R>VD79&e8uXQ~~%@ z_GR{+<^epf5&wYjFiMD}Iyq(PsAE+ z|HH>17r;^e-_bu9fS4hlhcB#7919=Vwu3!(F4? z{{rfDa(m;c#xcr+9+$nR2p}si4$HSI7AQ}umTG&n8lXzxL&_=5LyF7g0kk>+cha}a zX1yvhlP_E8*j@Rhw*N+ZC*cY7^B-IVra}R@4xmeoFY^D+lj9w)r?vJ@Onyj5>UL58 zzf$o~{_AX9x<+!DRQQ%c5;m0O`iPtv=eHWAfa8KlAtRHGom?Pw_c()v~%8 zI)D!nHaC)Iex+9DJ2`zRyCt8uXeS2vA>TY-Fnb`GH~GA=kQ6|VGqfY?7(fYbq+6RZkGiapNLT40MLg*Fn52xz^=NRDhDqscKg zMiVH*3X|`$TBe>p@bBI^fqzD`@f^Ar{})7{e2sHsBK%_ezI+B05CQOveyehiVK^&d zepLTimB+bRn=tA**NDi2H0Bb6fA&lsFyahgki0)?0!2gq&v%O~0=gengw>B|pizbW z<^K6xY;~8akJ-uua&@jPfOp^_{EqLXor8Bcy7BL;HYs3xoHN4x6u=6m^P z>hpPy7~mY?{|;H8uT=ZLR@OIdpX{g6yYAocPXu6np>l{~`CV(oVcW5&j=}{N?Njr- z?J{}5&QbsaYX#srved?pP!-&XNurv!A9PkLE7NwDY7nRD9=ejDIu1KgF`ukbiz;Sf^ArIhgK*RO7YoDorqEpD0jfv_4xQM)p zS5*bDS~4tMTd}_nwd&G6iUjVe&aC6g`>G||ZmNb>pO$Nu%cwi+c8cIq%N4zV%=R7| z{Pd`?X0;8oMddZyefzwOK3f__SE$KQpPplfeRB63Dvq)KVgK!QhkdurL-R7qL;dnB zkNN4iK+7iDGNOas3z#E;YB(ztxv?2BZm?=QY~4!)z+HiiG4}yMhvN&lHo!;WsC4N? z)4*xe|5^>9da(Rt`0YuD_2(Gi(svE!@MAM$bRPu&p)&9UxK3Yn>q`BISV>D0n2)Uc zVOzc@`xqP-t;2c2eb#EchIPkhfdN3eV;8M&(OgfSH>^YFnhV@966=pL=&Z4GT)u~5 zOTR96QQglC>iO5!JU)L)-v4>oWaDM^`)%D>ZE8@-EVHPiL# zZ2fdVa>;D}AN)JV7=F8F6tPEh4w*k5{l6;zS{eZKb6#dGD;3WIVg^88S?f(Sv+s(= zddXhtz1cM3e^DubZ`8l0efGF~^;a8THM%5&lV!99;6>_Dwr{w@RRAnt zMc}#4@BwQiQ6tP+0eB5tHI7yvkcE>DQWXz3I;-bsSNUEa>;Iin0G;wh^*yaqE!g&X zb*R<_pHS|jIPKxe-;l>O16b{aviG&NlTqC!dZ$-v8Y z&wf<;oZ1&_&OZi`Lm*Mjq}(TK%tYa^9N=l!>^&!f;Q?R7>z$B0!dt0VQ3h2Bz;hszqnlX2;-*`+o97b(6~^?kSO>0~bX z{l8V$?mkI-DS>I~0&;}b0o%2nA2miS$z6ge?JF@W*eipW4_F0sL*31->UV7;KjR2h z8Wh6+UsZ8DU-D`4O?pfAzWT1+DgOOkc2WLCF#w_ z9N5bHS>vB)=ET2Q0Q+qGGy9);4B-X)oIKK75$^DQjRYeCmH;O{H@paZ3A%d_nZx?y zu|zc>2xO&BPz=w|_XB)bOJmpR0uV>%-tiajG|r5FB9pKL7^U{eGY=vM!d2l9`TAS_ z5KIubw@v~5%&6kJBkN~n1OM4W;g0w_F*Cq=JTk_OfAbe-!#P=pid^NBvL~sC{qo7xjOCkM#fPFI#{3 z%JT?=S?EwQKB@#Z>M}f_KNiX3#!=vrq=8qs|(;HWdRP? zOoiQr<#Eaf?x4zso#Yd+GT>I)(-yj8Z0?=3seZHS!H!~>-L&l^{cyD^fEP`&ez zo02=y)3qAdb3*^k+2g7MT)X&l^Wf?yT9e z@30*WZEe3lj?b&CVHVj3?rqd0n<3$Y1?nSm9b7p|$W=YTi?;o7Ke$J56u;3aRQ@~W z3ClR<&;4g!BhUN$i2hzJ&I_%=Z>)WAK6eBQz%$PJ5eecd9rI)UAF)8@{_d3jtQgun zraVL|O}<;bTQ1wYL=pE(Wc$y{rf4<#hcyfB_v-uej4FR$)wpKG8fN~&0L=f}Sm<3< zIO!=gqx4bVU=TD>k%JO9kVS||Iq-q&=no_ZEUiD*s3KKd^5eY5D$e0BmDL@W03YgAd|!!BOF-v=`G1)YWYwB%iCU z1RJMUWf!OeK>IrWzh^!;doNi)_Wxyd?n(9NE3E={iDCf9X}<75@&oqNwnx1>^8WgJ zAKg3VH;vQAnn_eVFy~^~h`Sq*^LpL2eU2gU(E%>mZ5fq5%TaOP?g z#u#JV*yAt9+ffIhL0tjFdOe9bBPf-<&hviF0z`pE$*w=m&Gw8;-cSYL0sq(GW)*xG(qu z9LG8zJi2be-BHlwtkK1>!D-BfF#fq4^fTaizV2WESdaW58583_R1Z;4;~(U+|4;<2 z?}SHS+GlHh2dhU65N;rv31?Xy5EBOJo$8Hz01-icvgX&S>iV@oaZ2-7<(0}TdJe8IskPR{=Zi*n-ST^ z$wI>Ei$dz3q}J2qnZ|Uj19Y+&;3#4FAk7;*Kso&*^w*L4`%pczzj$CTal-DkCfHMd z9iV3q)c?cvt`qdx^HuxzdE*E50(eH95IUsoh5gr5fpLoz!1LKw`K86^@`kEvyRGV5 z9aoNTj#4i`I)VN@`mFW;Tj5M$cDVR)D5OGcSBH>1tI=bT;uN`cQ=Ut{mF`=E-9 zH6C#`)u!qiRtoe#H2O*Z3d! zM=jg-V_jhspDB3&(8k&E58N^H&s9F1g$#2@_)D=*aAlQkjbyFhc~jgE-z~=gU;uo8 z(EQ~5sAi(?c<7z5|KLB+4@*T?QN9Zp*cyO45qxL8#`DZp_8Eh9?h#yIUf>ao&ngbS zKdAoj_W2Z^jxz$w*OkBPs2l4U>iU(dyF}HtW%X=xv7#-%M&AELiu})1aIJLc6c)=|{1x6tp1f8ZT_f+r$^5nlscD0bUdd)uzGC(=GpafNln zCU-R+N``0qs{Us=t^KiRabkWz)+t>knJmO?p?3`U+w33s23v3Z8vi_Y^lzzuQ2nC< zT&KYKI%>gL!c9~t4v{L^TDrbhG9o=ktCBCMnB-E5|L>D;nEfePRQCS`t=|2y>h_w+ zYpUBhTMA&JkbJB#e}v+B$2TVE|1o-WRQ>-*se?mh@AuaKgY;;;-ZfsY9jDmAsp@`u zu4?~YYy4TA03H{oJg*v{GsVHrDg$t{dawz9#nsIrRoV7YwP*Ec`Ev8p;(FC0+WM2# zh z>wiXnGCM9{rr>>Kzp4E9yuz?}pn$RMtFd(loj$jSYod4AKnHlFYA|x~C~P7CQ3U|{ z%>evFb+dx#Qo37?{jrx;O)dCwUIZ0@a^mg~nFn3O-JO5nZsIAxq#T=kBUi=sGsh4% z;@)sfzvBC3{5$f;3S?*rYc6yK`$GY67yNBmjlj$JL%u6!KfYf)5_rKLfO*kAAN-Hk zPY%G5|4;y|!#qg+nP1IcFIFr!(un%D`a?OiIbAE;T%zq#Y5#kbd;VSaVAd@goQ_Op z2!Y$qM*j}_O{ROK@X=T3?@;5;-8L7m5l?j99)R_~D{Mf2`x>{74Dv4eZFLuitXfAF zA6BQ$Ewf|t`HP-KpJHM4x!NOJQXPjU$%7uPck~wi$^UoK<~_AIz<$R6KJO=#fBZIU zMa+^tqb``C)JJEvmb{#^8a(k;cpFDm{&Q}ZxClmbbbx0Np`25@t=ShZ65L-DzC5q)RJ|HFu) zKa3A7gsqh^nW_ z(ZwLcxC`IfC z%JXkuTX}3fS+_;>-@ZPq04GF_Jv?k)wGx02sO0G;A7CZb0*q1J+egW+!dW|^zkl&F ztv@y{YnLvXoGG7qeX)&K8E{WQkdImq4Pd2#_W#G#KOC@V{R!Lth*0voi*yMdz!r5^ z;#IW*=!vTT>#F+Sv^XZ;Et@M{I(e$`8?D>(i0XE}QuofAyz~e zl%FJJaE7*1^=P8DlV-p3v>N%7h5ZW}7b^d8m2!XYYbMYG;+1uh?&$*AG(`X(t@|+F zt5t!wE9NZ^t(Iu}W3^*-M!8LMKyjGXZSPrgJf0mjUe?6;f{YHv3u6LHW_yV}!QREV z4*Z)PS|iXl$x&#>q8N#A0Sw@If$qF-1>l%BHZGZM>A^cuKX>_a%pXgL{^z&tq38X8 zd~=c22$gxAWuZZOoIAe*cYYV=gHm>s(hOjnp|Nds19=?PUN@_g*_ILww})YEFCv zmHE3^W9}}kLjQ%IfEbY9iUJ`mvUj|DZbWXX_6VJqMSSHK?QmnOI}0 z>|1d%aH! zz1i1@*dLjIuWOk{^I+vj zhKSL+Eyq>}?m(Fq|D|Av%FZ zVODNvZtD#&5AHZaa7d*A__zM=qPyhl^-(#8xI5s@+-cU~F4_YJdvGi7u847$t@w@oP-(mdLs;iT9YlC`Fo9=(SqX3@eBKN| zG!VPbn4r%gmcOsG{{Y#HjkPN4two{Letz24)>c#_o4?FoQPs~m!vFQk`+uT&KSyWR zq*rQA`mu^q@2l9=Zc_eZ6cZb+oPVtE+d=5T5~G@pcjn$Y|8I{RpWN!)UN(>63nPs@ z;EF=pU}602Ml(HLdG;lWzOw)GX&&-g*dvM_Jkj}kab+v(cigEO_AHQWAQC=R$$dg4)KLZ&FTFh1ET z?WO+fPiXx`Ix)YH?U~~OrU<|-#Utvb-%ARB9H2A1E&N*xFjlc{VLKSJ zF~YHLpxmR&5dv#%#|Z*o9+S4YtbvPf?eWVT09#r|zp;IZtiJJ&jR$x3i{mGF;N8>= zfJS@?_=Qo+x!Gs&U-oFN0esdxgHL0Gz)z?Esu9SS%_pS6E)j=}`dgmkSr9p&KFg6D zEw{4fdSN||3hF~Mfhg3p-{nu4lfnv<1K>V68e;sr|B#u0V{%k`B>V>ZFsS1wTnCkv zQ~`5ju8jN5#_!NLd{ex`#|7`)EA)uJccYy1^d86-I3{HD)Ay@)jsAg({qLsA|D~D- zXnm#qL+k9}!2Ii>a=d<|#gXB$&rJ5!^E4xbgUr`=FUTl;v zlRcAss3WhVT0y*jSO38{R{v%Iju2JHOaGJBzt`8C3pPK{PhP_7fb_0&fCp$OXX(gn z%lvEAC3Ptl)T-nYvkvKUT9@Fy#%-$opVfF?+T~u&UpTAA^r^MFckJ&-`A&HM_yxz; zk4_OspcCK;9>D?UsQUjr>45W8ZG5LR#bx@$)r}RBzb0>{M=1~cp!%>)S4KuwyO`D- zQ2n`jP&vS6`GvZX?J94scg+E0b~|fCfOuzstogwWV+Ac>Ho*EDQ?_un8umGPx4i@V zp6F5Q0kZ^s2g$3kk#TdB3w(idteslddt-z;C1Eg4t6)a+2q zm0wa<{az*A|E_xeos!*|-YWDRU+1XFVbi6HRX>Ib|2>4;?y}tdwXs^>D#Gv}{qCpd zcy?uBXQ1qQf5p*yiY@35xSW1^U7&8V`fRKeMz5Wrs)yZ4^WWO17iCv#p6&A5KG)rN zRx1wNBi5nE5WPR```hOa^=}>UuiJmuC|i@D{NW^y!z^WDfZIsl-B$uSJq=J6Nj?KnNC1tnn}tpeAi9ntO4u|n2B8dhg#qcw3GqZ#P&Kq;d6l(xhL3l z)KSC(or^Ft#Jb~-o)T4c^upa$@MT~oj^mAQf~(|v;V8TguFdf1I_{CbZM43t`<&AZ zZGb)?-*5Dz{a01juSfFRie|Y=^Z`{@$2uB?0XykXY+ zYGMbNp|6;tr~a=dPT5?U@Mh9K)p|q1|8mmV4{P?{4yyi{peh4u410(x9Q_CDuJ>`> zul0bR`{(VyX98PK82{ESbSYXg#a%t z#pu^SJt#B!8DYG~9(CCIz?C(q<8rpOAdPH2_7?o309?;zF8~Gzb#MP04S@G;Jplg6 z2D)Ov9ltrM)jsFtjq&da25h~(@|GWC8yxz?%*45ZBWe<0A!2cCQ3Gscj=w?e4%#1^ zi3NvEI38!gZ|eZg#rVfY!vNtK@w(LsuZKE<9q|Ip0?tL!Y1EYn=p=HIj+=o0ct8G& z&mAoT{)3(QhRnrg0IrYMt%^WB_raT$0Qjf69|nl*KN^6FAAJA*>RmM`ADZu{99!q+ zLFGgVl5481%WI{z?@;XjBGvueuhnPX%}&jpN}o!8(AYds`hOqQs_i61yP|!pxL{X3 zbD;9v-P?BhP3Ler2d*Z~u)2Kg zt)(tl{d07BUv``D-&xgvm*)Fr->c*3ma_fy{jv4$Bnxee9d*Cpo@}ETq2<^A?4Zsq*1s;_*im|%vk_=Gyo zf2@Av`yVX~QwIR%$qHBppbU=DHet2`u>X(sCl+v?{D~Q2fg^O+u4pWtyqesa?kP5Y zw2lGZlqLC#`FhP)wJPARtBzIQvR!lWVn3~@wSvB3W_U)mCy!c@fB1lCfGvk@KckDW z-qM+jWd4VxXM{2`ZJqH$J!<(K9f45*!~n@^IrC-jKB9j12?GDvW0=6`C;v|@j{So$ z&dy_>Gqd&g8edpF`vq_SSmY=6&~Z!H3q3%kLag~kERM5srkz=UsBe0hQ_b(}2sV>= zi7~`kaBqxt+f`N=19fJghyrk*IAb4|zvB3DUx<-V+dzbm%^nkfnLXJj`~`zjjbw#o z<d!&nJ>fKi;qIIrf-Dhi@pC;beM+$*{ z8JpJFKTK+OR$~*b{`G2hkMe(=gtFuFRkGWXsZtKTrNmib%uzbLeQSS^@8}}2zyH1G z_y5EQ!5yub0uhSNbz}mKvW_y7jr5T0O4TKIRbA4}`7PO~w4b`6UZ;6KXA8%Zr2|j` z*nB+x3A6D}9ndj)jM|4AkJBAIMz0@T-$|I09KcyM_K6UlE){U4`iWhkckZuy{YGO# zGA*Z5~#Gol$y zY++ro{$X8=K9BJ5`~&%n&=&s92G$1P%wwC84g-LHqI&#GYPAo_i~4^k0$#)Z+fN`$ z1{xXRwrhBvI^Bdc5{DX5gcTj@^Laz|{n4{twigu^r^ezFI7z z^*%mR?cXcq%FVm;_f+$Dq40mRdQQEg8i3c*ca!-v^9~Poyhh_BjmepcaXqF!b#E)* z^|k8Wo09(W&N(3QWA)W^Jka0_OM zIJ)xZpUeHX_`odU2%vvborwMKt+>Nb#pK>ec9QSiN%InyR$qeqvn|p=$(=&#)xtiW z{n@&PbM)I5|2W;TV`?s-0+{+fl+aPSlT`h|5GVw40mK3v1te>5n)Y+C_Bmbm2j0D* zu}U&u`b~PF>aZVD1mG%VW|znpE2cJkXdb}Z)sSkKIswd6>?Hr6nE8o#(1DXUrGhfrGEE| zYQB3Ht$f>4oo~7&os&*U`($zTtynnunO+6?^Jr^JisZY-?}h3QYX*2jS?!k^uZjnr zmnyhZBl`-)x~A&)?aFrFrTw={9!cI$=gS|JZ?bq%7CYocc5HH@@ZVP`WZf^kbGG)v zeB=^|1v(x81GEtR&pl!v-a9|}PY!@}Kv&fN!Sd~&S7qYGivO=zM<$+CWMYW$KdsjP zX!Rp&Bp)Nc{V*{mEO3~xesGQABWkOEM6II^(6cbYL~XFbiS_5m1$aACp3^k($|d^D zfntI08h0kwEBpAgajqVYYUDWSayR*#EaOfC;c@c(Zu6_|~ncKi++K`^I}w zzv^dU0b>$8w)*^|POx^IQ79Hzz^f3z0MzU)U1QAodtVP60Z!pAS1Qw+8~i&82>ZY_ z?l6M4?HFRPhq=*K6fFX7@R_Nl{jm^A*uDoBK_$Z3XsH{SUP;_;l= zxPz|vu`lCwMeqvjkMT|T8{&K5yf|Om|Iqf>d9EJ*#P9G5V#GE$XY&}gpBg~$Pwa0s z#r_`3uPk0~X4Oko(l)qypxL=tG{0WH{}e@-ev`ee{9n6l@pR?n7TL3-WRvbtB)Vg= zTCzs6y82!9)2f%z?UjL*<`UlE{zastroUHwCWb5w}vTv8YzgalH zLBH?OGr!dDo3!05#ebhP!Q=87?iVxkNIp;I&AR7L)_u1AstScK(*u&@YWwdMMqQcX zY#*6FBL6S}=tT?svz0${azra1N%Wt*L^o-Up7l0ZI{(pRlq!?DsxF~N@k0JiwqLrA z@PD~-erE{d%;04n&!JN7%<5sb4>c3})Unfp#RcPq{{59l-B<5EQuse!3IJb#h#-}M zR0^|A)c&qe1mH?Ni#mFuu}AXrbaiC_pH&XvYWZhRXB*@@X-$wVl?8mJ>QfCVtL9hw zR+$Ijxt(}@o(E!2poJ^On*C_TEMv-uautoO5LSuT?AzL^VH-VitpQL2_H?mtcmTHk z_WA?=w)@V&g$FM#^(g7{#1SL z_fGao#)t#DCX30o|3QlWY2nu1{nZ++Q|buz*@|GDsxeIbn~mt7XTI&Du|Hm;{X}gi zYm8qgm3yl)-S>(iZUA5Er1O`geKtt(t$CDV|3kiJ{#LrHx(=)&{ZH<1&N>3;>_I=V zKM_T;?UGD*P zu49~Hn0wa$ndP^eX8i7^C@Ig8KVjC7w|#X-&;{dbrEqMG`3X{4cnbVKS)4LM8sK!X z$)Sn{_DFsrNj+ULnS0~`T&LC87s%huH*UUCK3)C3I;Og#JiEDLahhU)_5eJ`6U$&P z*7;yt6UG!{nlT#@HEb4Ekx|A7Wi#p-qaN$V`s;2v^lG@y`C;iD_YeIY z{Lp&deK^2??OWi?qa4iP`J#Mb0Ia3;Hh+VLh!KDY>>ck1MbzQYlPBT~{*ABUN&|Zl z+ykQtJfVneanb&^tJVd6m+u$%%*@E00iB!?&vGyEUcv`)Y=rw2__x~UK5|9IHfI}= z7IYR25UL%ln20CpRZ=SWv8U4ByVYCAE6QcWn;5sQgTMJYtmo(|6?ijJC*Z3 zMXw#Kk-fLZ`mXi7fS)TnNcNAufb_I-p9}JZboXVQ-wicyfYk%HRxaTH*}yZTZ_kkB z!&{!-STOlx(kUCPUYGN#_Wx6z>yzo$$q{v}q1XL#&tH^3*58$fc z*8!Oa@Bq4q0annqy6pUoN#AUO;(vpr06tPp`x#mdZlMCnl@I z$V17!sy}`t`<2jty;Q&_*}?hDV%73!t=2lLTD)4ke6M&#dWk9^x&gV@BRID%MqApZ zGiG_#Hj6RjN}8}oj6(bUpb~w{d#sHasUD?Z7My{9wx|LqYRm2jzj+|CaA@&}4){6y z{vg4}WX7NEEYE>VRISH7kH7|J#JL0(?5l%QqYoS|qVu6Tk*XvZ$ax9+0L~{YI$L0? zZrf=d;69j7Y+b=J=f&}iYR&}a;ipjy1F-p7Gg4S_$NpePYnN7z51tJcv9duMSh@SY zTI<6`W?#;P@6T6@Z(?redxWcq`1o5id+;q;0l*F9{_qT$1+;=NH7@^c{&CT<9H@>T zpI1v)Cp8;IQ|o~Bvf7nbyQJ?my>HhQ6KqpsWm~bq)YvpZ_g1|0|DR5;K6+g;xT^ z16W0BJMi<$$#{eJbM1LW}^EG|4>3gBWf%aMBJBzaR4)qiwzq5s#K1$e!BfxMXY z%R3g6oAav*;JIqc>gaN-W}jlb{JY*Y2lUjvYiUD95*FQ<0@03X`EQS3k718)o`MuSuG#}>rcdz(QZ5M zxVO0=&dAsS7x0q#%XXTdDC9-NMpV~Yk&s~^I>~GstUsT$Qs+LnR|ed{X8X^pY%q!0 zhezO#W1Eq<2b^W-bMlbB78E~dc5KA+8f=%@gY7$e4Za1j)GUPW&TIC{%yYh8_8R#Q zFb&?}DIQ0(-+G91_PL=Gc%3*Q>-{l9WCf}JGql?8_RW*Z{S^D3SxqWGk#c-R$fxJe zG*z0vp$tH&*=-$@sZ#G3X=dB5$#uyo()~}$+8rRIZl;kwO!%gfXK;;daL=~t?5e+& z^_%srR-MfTpr5~~5FDiU4Hg5?{dS}_SY(v;d5rAb$HLfP;eP>T|K8VkaD6&F*@EWp2~{^1LJ39A4zf#)XntUG~BZk&_+G}}F2So(jZ;xmn> zDe1P!Z9*qK|8^4c*VPrRSF4_lXLtNW?a&95ZM3eD-syf0ZrDsLVLk8*c?j+mIOPfv6(xC|C!=}AF^xm-xcG_GpiTX4d|KjvF16-N)DHY z*H0>so*>kM;>ChrtQ5H+>^|cjOKV))f`OaRr07{ZfAH^&fL{yM%GhOu@spVV)Va8e z9rIrtbrbCM&$&POgHI7H3%|ntM@0O>{$uyKGv)-2Y6jr$a<{PXT#K!_y&_n_ z5y^=6^SrGzT869QUdDGylRy3D*T9(Y!jKVQlIoS;};*JMI+ zmg0VoOQUYBk*Y%Cq*6ww7nGbB+JK>d4_Cx)YP?Sjvet{*RI`&@uTo`C9cy z&(=A>YgD26Mz(Q2rud*auzFOzTYpk@Ex*-FfE`ua)nE8`N03$=z^KRSV>cKRSX%5l zTUb9v7Z_q}+XrCOF-o!eR>M5@xVK99sjx+5D|IeJ0bTJParemc6M-}OZU0^OgBrJ% zFs?avuoY+EIz#K_u+5Rnv`Y7g2QR(`uFqv0j-?vl`D)WD**4Vp5vwqGL z2h38psn@gdT61%5&anPttkS`{NziiPO^V$qu#kxB6$s z(XzFlPQ8!o_0av`|KExI2MfduLgSwq0L}vpkS#tc`AfQ$m}w>X|9{lzxiQ^2xlu8^ z{e|71>k5YIidWW^!EAK-r`tap>;@yS_6PXiK-;K#+dy}8Q+;+j#RvAP^*?!ogN1+U zC(luwbiDo=uL!``jk}Y(6#;lwbAhi_q-MHmG#AR>)VjbAiN}9gtzVr`?%Lc)^Ad;G zJ^*z}x-lddeF~#f(%g0#$O=F`~mV? zQE?v&wlJQ6f>cZ4A7|2NZ^c~)IyzbY?L$KPG5 z4&_P3y7{l9{m;-gMIPq6s{YwB+g@?EnL^|(jh`mF$@A}=+@x5R*RBEMw)@uqEqt2~ zT-y%=fOB&K*oO`HZ>_Mp@WQr6jS$upI*l%RX}@fE{(Rn6ETpx68~L&7Iy_F%e|!I) zJJea0nfjk#0Ps(jfxz&;^BX1Mc!D#H)BvD6`YYyfQ1WTIu`(0=H8=TBLeSmmp1Mbe zDHgJe*lR6a7c-suiu+d8Rk7L^Yk#xO2Wr48f1nOFknQ)1A1HuLp9W@$LsI?qzNXfy7Kts_;jo?08dM!k*B>O`)xKpzoi&l?xP66nVP}zR`V|P z10JIY59;6eXFib8Z>wg@5B9AEJYK8{7+s7nMopk8>>mEF^(|xE0ZysU5zHO*?e#iN^B7tbO`6tFYiWi0e1+Ll!2e!$aGk>w!R^l;m z)}Rd>`P?~g7zKRTg9iEh1@pwdxN`Gf_&UZU_L=)+_5;b>Gh1ff&-2`?Ks-3+ll%^( zTmSz(ubMl|bdGg!&OT$#$=@GWXspM#%GEN@2Tu>bz!u;7j&G9L!PEe;*7x9iQod2K zd-I5LJ=u&Kw3hU)&CeCdo~}9nXDa76Ro3MLMVVK~x~9Dn^4c#o1}g8je)56FMANU`l|Emc517>T0hykDw&<(@`%^$3MjRpWA>nJ{Uo@Uw4t4i0k zw9a-Z{J*BPzYk286#o0q#y{%c)*qGLvei`n{-^K{`iTN`syFc8P5%D?V*HwkJ2J0? z{@%scx}OiLHsNN)=a?0}sjh->uA|%_hK^wU5w%u{>=j(-Hv~OMIM1DtP?oE zR>1*STJRdH?s|@&(T^8U%(ndg-6qa(EI*hA_5uI4#rWc2m!o*}2P<*je8&34xZ^#J z2f}K+5?BuF$(j0GjWgl^?9mKhCb4=j{@E{&;EWdAnE}is9Mc}U^#nhCHhc!On+ePV zeA1eq{c^|9|Gt}XoyI!XMmzzIfH7bJAIn!}ub%JGK0jv-cR3R1Z#Cxp+OHw{$ISl$ ziu`|>|F)Q`{GvRex~tlx8cg?93Hb*#oksK zwrELYL{DpjOt+Mxe{$;jH`mJwo+S2P=lZqcA)|SIJr8FVM{pmg6dkbl@>r z@4y1Sk1zo1e{7^}Q?cJTVVzFEhe}aUaY?7peN{WKyBOdg)fje9+NJX=^8cDN+67|k z^ArR4Cc8;vTY%8!4pbdUtRJp>% z9yrf{4*zr{j1eBzEhJs$-*jC-oGp8YuYAp1k^2_n z{ey9?&^n**(-}c(gJFOE>Q+bo*2=HQe^DIYJXKZyS5z0O>i-aB{^rZC(^#6U|5H_6 z^18;?q1p8GQmyrMf$H*lBs(V~l6Mv5Vg~P=_;+lNF>b4lU0+35$M+wgt*^E|Vgc}v z_UAR2z*avP0Q3_DTt_za26fq9I9*lve??KYrIgQpKie!Vld;+x*?)An=l{Aw7Y+dZ z|B1|Bivzq$3AO*&{=omrvc*479!pot3*o;{@mI~be=9vf@&Em0xyK5_Yw9d}=reqd zwS&<=24o8o86u1WweA*tl?OWKa$R;vUJr|gmJ2fce-97ULPv0B<0C@mcS&iaz<9Q8c1@wP9^f$$#!-A+M?S7WNdB^`eWsZb)o64{>=j6`Gfy{H3JNo z{Vr@jGyaJQzyRPM?_r3L00WGa`n^MS1`DM9rT<@5maTp9eExhkBK=P4xL>XRK|j4i z+yTHfz+fK^Smr04oBoBNZ@O3Sbw-5m_sQ6#@2BMsQbEM^G_D z_22|`1fQNvOOF&kzo1^Atj>0sVu0=P4>cF~vGP&na`&uGE_ZCMuWas`wE`gHOEoZK z1k7XoZ50?3j2&#gZHGMqGet{38znFVkHR_{17XSR|AS}h-Kl*i2SDD9tbc1G1Mg?( zi;Y@6Hk`TbXS|BWH=e1713~VWZw&-8;fnASxO(;& z+-J?t@!1c1w)eqfpC@~;<(?D&f$J9ji8*j4=y()B3;%rD@8?{&1HNAG4+iijcs9-i zX5p&L(7t*UfM@xJ-*1K|0^mn@2yA@k-K754&F{`971uYfC`VLRR@15<%5$4b747ny zrTfp3^}kB3dq){$|zvESzkjwJqP2?Hj3aYA+W59{hu57{DQ~lt@WHCJzu<}i>HyHg8%y&(tW|bOb-Pm#6lTVt_Xk1Ii<+FQn-{EMIBfQ9PHA zRi1|!06qYt1Zy8!(6fUh4ha4kFN_<|k0QW=xZ;mdkM0Hm_MfqJpn<G z3fPL<+WRs0$oCNZ<45_3+-bB8SxEC6QT*`io!gJtKU&u{00X4{LA*18JPR*?f1-fa4d8%W+17QeaZpmE zy|w!9yQ;ElUp%C4gv+HLNn11fpI&3Af8ui3XLP?a0Q~;ZClL2$#KTXplhKB~wDspXd&W@>YpcmMdt)6x_QdQs7{qsg&%te+0gPf508^l7 zh%AKOLH`*0ekNEj*ukF%ua56=CGbQ`{@@+M^*kl+gK*qI9WM)N3ke6^-$-#mTWcgKgaLw-8!3RPr#Tq9}o$kGa%y| z%(p54V2X$tkSizuzndalA8Mw1rFm}Kct-QqaJ!6-Vs;D+@clq{EE6;tTn`npsX6YoxC2;q1Zw?U}qiu0?m$i zKY3Su0N&O&b%XGKYIc@#f!}7gD+YLKIaMCO$<>|e26ATcV7`fB0R6-OtP4)xCuamb zPKb8dwlZe0`k;Yvibb@_G$yQ#!MklBRxo@}$Ec&8-f9`!hCe{9n|pAyY(KrPq8AU< z`JNveR?lc84&NH}oRQhbHZwe2-UYJkf$-bN;ivuL&iW+S!A4U1;!McWLa(cCjB>o_ z&Na?J8E4|>xpvp(yEh+70NsF{Hamr?x9`vMW=gn($J_1uIeV@td;@0( z%?ljc-i9Cf%(&}(JDf2L0RO=^W^5E*;2$RFT))rCpPIjQ^BeL*ic_28%SEaKh5jkk zHD$-bziwxWlh$|_SCHZkJQEI2d#O(g?#@TG#dp3F|C#KE(^Sq}zfc~I5%DJ-3lUc&*X0rdI zbZ1tp6@cp#os(b{LE;FGBND;n5o;bUKby^5(}<_gR}3&rvB1rR_wA*Jwoq1JwD!EI z)YmSG4W6vo)t4scs}mUWv+k1Dc7~#WSL*TDeAnW$=32u4gIW`)b2+#AfgPd_j{}sW z=p_bVy$A3geL-yBZ72NL2sgG{_y$jo{TUyOZO7dhnc)dX{F~8?g|klp2T%=2?Ja$; zK)*W#xeKnlaM{j*J7=|>hXa4+A1u0Ke4r1`3j61y@h;F8_(vtv?WU7Hk6*xEiGC6F z;5oR7SR$X|RS?Dg!}~D)`5UD`9WU2}okpp{DAwv+CHu1W;r-?+`z6-!u5PeS;TfW& zD0^^k%MYh`Pu{wXPN4p?hqV8A;i+eH zQ2Dv4{;pD_cuZB6dlZAz?~j%KrYQ1%w_?dJWv6GaroUHbkKbqxe~)CFWKBi>kCO_u z?Wdw;xUB!s8vm`_KUzMjdh8iEItcz<1wiB<1rWZ0qvEasCa$oB>Rlca{#Q(z>6q*U z&Hm{lAN!{K#O!OG%Lt*RhwP{Of1&-!|2ggl&i+%Gzd6~%>fiGLsRHaHP2MFrEd4(F zUEZhYr4>MS$QRCLsQ(}Ke-q(!J@KM@qB}MLFR>T63ZKOtg^3P0KIk~6H3k(1z4YnT zbT2lP<;U-5wh#({SyH=*eU4D4ge{V_6(6}zS(-=0*cT}ec)2*co#smnY|bk0sy$mWaePLuXB6$tljLqda+d)_$ zDq9%UST1G+xDtR_I8@)!jR))#|8pdOOaQZg9RCCV#JB9D!v!3N-^M@I-YVZp#rZQU zd7qW>>-YuZp7lJyEq1iCuANNCvf69l%$x<6Ip@KZ`YbpWpX9oT+;g4GjdrXu?uM`0 znLR6fUg194H*!?c>fKz%eKDV)S6~nO{@gJii=)8+T#N4juW%o1_noP+*AHu9`O$M& zd2E090eE%x^z8Zf(;DBO=5G{#Y(7;Et0t-D|H105a#-`B`~!`iOQZmi?(7HHtsGj&)casRR2U-)IKyWb}vBF@aD4{KnUh96vbkvX9hZd$?>Rv45E}1v(1<{p6u6t@XJ7ko`6vpbDV*R5!77cC)f1I}4{+>h*OW`pb^TYKU|s z_1VHyjwg6_5q#o2CR~6z!2b6V$E+d_@eHCZ#EF~N%(A)c|IT8c{WT|eq2x>TN4h}z z|7leMTv2~}H>zT5&-}Dv{&H;fadk(vpcFv6=Ay-siUBYiFnWS@uF=nk;Sopz(;h|s zyTuBOKd=YZt+TBJ_{-y+G3pu}{CIH8hIMogY@T&*Amg8GKtutF12X$BX5+FiNBgWs zd`zCRN6&HCH|J|l#GW+hwtry11XS3saYrvuwuqiV0rwP6mZ(vO6(*Ws#9PmRT0a8+ zsB|lHyah)BdB&ERdt#5k>L29W%Ckov!CuxU+z&?qxGz33?=TzKr{MGO8`!tK_x|DYT?|*` z|00c`sq!J2^ZQD6aCUF{oI3j4t{#00Cu=7wXm#7eG_GCAN;MnGAM9J<+w&)yZ&t8% zkIbMefchxr)mP{t#zh=}2q5vmITgSt#nx_A_n+5v)H2;yJ@%H-9NVtNlzhkR6(MZ6 z>_6zo`$tbl=FfGy|9SOq4gtHi-E;vPAPg>?Y@5EHy_5G>1;G5pUiq@w9qNv{lhD73 ztoBIVoq<9zYax3bw8%|To9H!$U0LY0Qk=zbw$NS1`U(F-qyW~_-sp<9l#};vH5Veq@t2rG~Xznt-jHBd}BGId4aMg+o&H1 zBR}c@>^<67wC4|6>>md!U~3#nw;l3m<}o8KkjY~#ClNsGnB(6bu~X5(^;a%c{RCYqsx(#TM%Ivp}_5 zb-UL2{Z#AxZrOY?|5P3%-F~OZ?vqoxAzN74wlUJ%Ga7HH+H6qry?T6XU2A@-SB-yS zfA;k8^La##zw7^a92*$`_xGm`h&&+pC;x9>0PF9%!C@NZ$E%OftEx7dD``s)%dV9D z@1ywtY56AEW62%0{&(!J)&Ccb?d?Bh@&D_7u+6A;eDz*B^PO~d8>FvfuPXo7S1S|l zm-otkmE131o!NZM{U0F})L%*k{Idq4XC?A@(fV&^73eA8jaY{9&k6|m|Kvr`LnG_T zV0TIxBL-lG&^T2A%+hKA8>D?@`=3%C;A&|%`ZeCBb=rz&cAY}no z)~X;Qlm#UAhxPM#K_z;Wpti9kjuJ6uc!seB{;_HH%R~Rq=@&2}0|%gq_u%1z7t}Mp zam)JS4@B>6(C^+HRshrt1hO~+tO7oG&WhZ;YFzh5ofc1G2$Jg!(Pzf0(6rO#_+Ki<@OAG>B3q_?PF?{$jA{m@uRQGjO^l^ZGK zQ}sucj;nUu%LDY{^*iq8xW6qw(LQf5z)HeC`L3}2yc%&r*9?tNeDPv+3)BibjlVYL zOOMT_s`{sEz4rIe>>kaq87A)-?cZ5=#3GZK$FoLL|0nBy{yPS6^uCwaYr960teO5M zdqMagpzZ{R=c{E;$UE6a3W@oA>&tGhB@Fk_S;mZHuZV2?)2G;x02DvoKkJQwe>x2H z);)4mlzhnAwFcNk)*l~WV{Kz}{Jm5m-6NSR{W_hj8o&qC3FvYufT^kmdMxXhf1e-R zEYuHlk+xH-`^(3hPZVF|dnxwQS6i<-CKfh>tPra~+ph%wc#u&8Yacso5Tlqe#|T7U zhfd~^WB!a*EVlKn<7KD<&$@FT4CV*XkC$wKH2|3auljBL+sZ|>(Z|FJnrA?h^#JF^ zyEvvf0sMlO&N@Th4GuV05X4z6p=+ZKs)G;~bvb;7_ZmTtA>d~lb=YC}0BqWlha!Lj zI4d-QYYxK~h#CYl6z9rj7U2GwAH&CY4A3ga*5AkBoosPrs~{ARS--~)obzh?f3xbz-q1+;KK)rb zM0vld!eYCmPf{e)6p3C_76~8S_MdtcP;LxI%nt=XeLJsM-(%%@7q%YDkL~C0@EBkK zHtgL7s;s+R%Jx@cfv+3w($lp1-%pAT#oWa{dGG8xMIeRc9MGa(lX)Du5nRmzFE_yjOChlL789@^-ov}%dGjCF1mXj+ z{Ed#_-oOP|_0SYN2TS={{2pVR`^9FRWIu-YvVnj0AN#bAV_zVA0Pa7Ziac$LztBwn zr0bo`=!5ce^PP*swZ_j^%KHtkZmoXMict%c+ZBV9_ov&}lzOe7*Q6#l$&O6VRClk7 zH0S5jMyF({!~z3Lt!c$NA9y@W7njfa`u-Ytyh z^5+qCxVlzz-o9#dQgrKD;eV+jEym_cWtV6c;;ME0&-Su|Py`1!lJlfg}^Tw z-O}5#$El-Ib;9I)i|lQ!|GSlJH4MP4{*k(({(86LlyoHk`}qHh))4?#D#I(C^&bt> zrOy2I)m>s0Bs?PU&m6%~y8EMND~pYk4cJ~afyc{Bnvm?Hd4Mys2c`R`%lc1~4!B8d zu()O>9@Si=%G%~tPw+3w<;rf&LB*MMM<99v^^zjA!pBntDPSCX;aC9Hq&2pzh3(bG zPme=B1>&u3J?gAy9lvHA2N&?0dLS}@cmVGCMLdAYK;{5O`~bX}VL$^cU{qKM#2N4k zO4r>kZGpkBwJ%p?jl-Ud77)9%u9xhG^**)}){8v4H3mP;8R&0g8J+`~V9ThDTqj!I zxj)V?c#!*I#+>sC*q?a zu9b?vzWIS#t7^sO;PSWS{K^aOpuFGR)jf6I|IIpgbdg5S?Na`)N(X$Dexok_*J{@J zeT_DC_HHECsS<5e9s76QkIH|%f7^L`{$bH=%k2-eEWfQkH9*$?es?PdNcF(lifmt{ z+3k;s1rAmJuiokOY^G-aEU5~+(fQojnaR1*5YGL(swU?CIYJ+{`p5Z=uTJD~dEtK( z<=>Y{XJij+<%GfVPcF>IWxq`xtMTs{{f+?)lv?N_bbEd>)_;lG{yQFk3UCAy9TV#d zvQ{ed1JPRUhs4}~=p!^r`kyMmomGQ8tFeC4E1gT+{cA-4X9)e%lnK01Gq*m@j@D}K zTb0wR#oAu1Mpv`S_nMy;ZK?!VO>w}LG#=;(hBl6k@omr25i>@q^KkYyK^8XAxM7SM z`yRQrlZ{im_HFgdWD1k=*wj!bF8q)9@Fd*FWVU9HNPGT zoLArmtbSN^Fle+Gy(o681N;}>P0W*;fKK|0_nOz(hiBLLc)o6~ifiOd?2q#}x^+1N z09K7+?jRfY%8$&F+%fKw?@YuXeCNW(^A}12j$t#yvS<4~p?gq5d^3DE@SVRCD-7Pd zwD8|m5uYvd_w(nAKQ-?w=dR|hR<14;{#UPFZ*EYmpici({7;eP_>HPbpU6gK`)DrP ztLiv6O;vd9lckf_H2<8QHtUK3jDKSP&h$C^=lGvhKDvI+S->a+djiA&i2x7*BnDuG z;7B0qVI$3Ry<66Qme9Xfqmc|wZ^`b+ex$@j>=@u;H4DH1 zOV!H7)j><^efInZ=>E|ufVmJOYX6^ZA-L;M z1EUHofd$4GqYI3LZDWKnma(hGgGaXi;wP^$j-3UFIv~(LmzaR40BdAZ2TUZ8?tJw4 zXmN|ZTP&MZF_x0EG7AN|I1ZK_<;!P%wqf%@f!Tz!brldEkFN#ILu{OipccA9GXxuO z#m1yh0W&pxI`~fanEaKfurO>R?3}&ezI%oiqq|HtOz+F?)#?OGsl&$VTK(hD}*=B_Nf+_=R2#&Z~pi z{-X!1B*PlorWgUXDIQ@SuUD10^w*aWo~v0{clDB_53$i+WX)Yj$l@_e!!1t)eZPgTE&DKi1(Y}yg$AP zSj^v(eKzO#sdeIc7(Dp8z4D#Mo349y%lOQ@fz zEb?zvNir(iH$7Z4elFCCJb!2`r(R!gs`K3DwIyQKuVa5hgjRR$U}WOS!vpU3%e;O+ z!MT%I4ErRj63&Y`0xzCS+u zy5h&ab+nS~-ZH{H5dgZAEFsjB0R;cpf3g9~O4X2Cpza61pZZGrE4h<`E2RdDQ&=ID zb(go%yx<2L2PE5Tmc$*h`1eb}O;r}~3Mqg)^=-DxKh8(jbpT&$mPfzp$+Azmd2^@Y z7R^=w|I`9`Rxk(y^LV}SD56MVi_rr{mwj$qOOJ9!J2?0F2KU}T3C|lN&UV2DFo0LS zj%=W31W^a*DtlXE+j7o{jWfdf+um7=fL6yJu!O|;(agq>&ln~G#eNmMEv{<~m4h9{ zZo&q}E8G!BU=J{aw}|0^{)qTF)=8`b1%k!*u{cxv65LhuWt=H&>5V;ENx%xhKH$3* zQ?!=i&U){hlh4%O6gACMG{fbt>Gt)Y6%-A?)A z>Dc5bDG6rC#N0pIPY^UGPJg_|#Q%E<(;G;oe30y|>V)pf|1Dcwl^>rikiI5ezJ6V& zzrOHK+-`)ki}+QfR*PFNaWlC%|;~nr$Z-E2&w?XMp7x`I3e$d zPX%H*B6#NR*q-`IxdtNsMl{zK9#C)%oaEPo5x5F#8ef&wfOQ1CY9{dUT;uH81XKa< zp)fkjd&nFl6H6KvUe{{8Tb$`{R?OR2JM>Su|zmcst zUHG4@tkH|A8+kSxt##}sB(G?G*)5IlHOFoFi$cIges{`{V@a{(+`NH>{>{{R>6?Uu`_8ZnvZL{O;=iw_o~+GHe}%ug`Ul z?@BjJ#tRGJpLsLx`~h~i4eMxb@=|VqM+*eBxJd!o@JMy{J;pxiio$AD@OZ9nqZ8>k*x!F&1 zz1L6-fH}e7pHTx2%mXn_t-~3=VLxrvj63U35J%k#BbyEMTOY^Bh68vO4Zw3$%efjj z>H#Ajhz9VwA@kKL07QhH_1>-HZT~#_VFmUM{&9{DXTFbfuDRcTm@c0cysjk!>=Rm-zVQsvwcQ4_bt0t+f_%&?;p`NTGoHAa))9> zezz?DshT-B@_ff_6+p68VUNrzyln=N}kM30^#}M@=n50Se^miSuTFy{ z6ZNP5)ztuK0oMUW=WurfaK!+1ao{18NLW_Jeb{~&1m2hjCnR9Rlr;+ z$meRUCcHP>W;0C7PW$*=H;=$0+(a%R5RD>eMe_Zu@o%r*%BA&r^OZA+W=!r6oZ=(I zE8Kgts(I9`=Hv2Cvkl)5bDcpvy3TXFnCY-y{#5>0(JVhL*RS@k9auU=i==bqUxJlOkbItePEIU}%|2?V7UpMAWR@G|WZ>ih#rouciKlkRrCnW{| z{@K7hc(>Ju3HU4ee82$wMXaxderEyWJ?vpkY1zxA{a;qy&(Af=duxvS^2zCGqV69n zs>k*hst~(eD-iE5EKvJTH$K~c<^cRxjQ*H^+y1YkJjH{_2+dAhxL98JzcZhj^-cez zxFz|yO=bT_=pLbxr~>Y;bBy?(V}H~E82g|f{M#GoD0b_o&k^?@rq8abyGE}d<9|i{ z9;Dak6}qwTKSnC)Hq8UvKs5l5XCEqhbBh!mGXbYa0oNuS^L1YH(w( zlK}uTUJn}vV8jyvv)u>j9E&UFCs^YV&!ae6e8BY?|GY0gVSkz0c%+N#v=r9YN#(ND z2G!|R=eFr>N44!y-P7z=bj)YfzWg=4n1T?UC$L?5__59-YW=9Jbs!a7`Ks0Mn71hbm`_=e0i93}2fCw+_bcjz7p#(FPE>@ zljpxz+cj-pRQs3rN&USprN}BjQ#4NAlJYv1E?? z+5aa700W=_uus^1D|+Yn?fW|hXpaEPADSN};7FEz0wRN0|LrxO^*P1Vrz!`?EP+)t zzioJOW4f?;$brxVI2MR~={6+Sd{EAJf|Zcl+)xjlQO071t%*v;Bqt z71RObVRcVfTZ>xlT*v=5mVF*xDhv;*c-UxHSPyT z;yCs|ILq)wtlk})h`YhQje9eunaTU)J?zcb!gpYnGFQa@c`xrU2lx>`srF-K4{E&o zNZlQ*?DY0p-D`oWNA-(pfwswQ!`m9w&zqm<4%{g(agy@>*Q@65cN#kfW%s1dXpa9) zQnrOW{{hJ#m5m>(QAoERe$w$P)~*<)aXs{J_z%60w;y&t7=RprEx-K&^4skVdVzRbrlC(StF*G#!OH7kBog+ z|9}-F1hM>f@IXGB{SJ*onXJanr zU1sd|;_n_pem~*AUp^{-D8Eaqd%aYysMS3ltj4zO-8QlMq`5<}rK*0ek>5W_mf}9; z{XUev_$Fzi?qq(+w%Z^3mDWlQ#C=vTZ-MWGw)Dz2huFA7}sQGhL zFrIbo5Am#)_DB5>k;gwt^L?LJ?eBJam5z9;smJv;s%-0-f2RuDLB-qoTUv!|{$xjC zfWF#jX>UI+(*K9O3xO9j&P?Xbwv+wuCk60g{&Kc+x=2E-lo|V|Ch$*JqoKMJfq$<} z1n#l?pdb9RnFp8y&_f7cP5uLnJGi#~E7bU3QTK(dul7imVRNCMZX>(t&RwhZ08f?-eaECED0=g%Ya9(V$4umO6) znt=TqYrGa-5LbcvfCJ+ZN9QjipZ$VY?-l!Q%g-l+7x~1TY{0RMYBOr+3@Z&@jn|{% zhx6$o{ohyhUH#SZ?bv+HV#nshvP-qC)`acWwolvp)luck%2ofM*w7TI|8rF<{=9s| zJG0)|HtEFVlg6#ezs;BQ*BU=hX^pGR{y+BK16+zK>-z7iu80$iGoy|=qF2R;fPe(a zK}1n8V8EO+iV4M>zyK;nB&uKzs30H)%vnsB5J519F*C+*{d#$(ao+d)|DX4pcV?XM z)N}9cTV35`TVB75B?5|xBidX=lXstey;u@ zKS;jMx?f9;V7dT!MZgaFgrik!^kU_H`TWfkE7KRVjUMl>{+8{MG;OE;AFn3QRJV?^ zXxCcqFZ9&K3jALXs`b17mRoyeDNl>Ok9SaYa;tPhtxooi>ZVo}{<{jb%mD_w%;7~h zX{T@0P^(uY3yA0Ehs`X8`UUhqRxl+3*if$^#^1DNJM8~AlntOiXj5IqZn|cy73y9? z+h~38*3riCy3+sO6$7|kxCj4ZWYw=#P0+2nzm?>XWQA->{!MXgxvu5}udaH)tMg~F z+tUZ-Czuf*DgxaZtR4y2@7wo#%mphD#=jXW^Zd~2jC&)&IWaI{zs z0I1IqphFl+pcMgngTdN)Es6j*;j!l!S#ji3Kp6nT3T;d||pmo)-rcqlzzz-sQ68SNWdV*NXU_ z)uf+Z zcO4HlfOr)PV7Bine=`H?06ZHqT2u{mRg7_A*q0{I8}X*VA?AruU$WP#f7wGk^M?(i^0e_VyP3 z@&DV&()5xFI7{n+To<39IBve;0M`Lh2XK{i0BQp7sIH<_l!s)$E!Hf%mbVH2-{oKA z$K@wxyQL#lTTLCHH`WMXJdp_i>8R-VP56KxnU^y5?avsUj7*q3D0FoUqc)6J+XVY? z+XS-(j-U7{7cL2*i^+CdZGP%LLq+|AT(_JZY@s zi9t{U-7&z`41qUbwX7$)S{Ph|IY$7&`uV$?i*R1nA*?fy@c_B@|KW`I-}aCz$8(Mj z!ubbWV>z%S=3Cfa*E-l5gm-iOGBFRmo$2r0O!)7W+>i`R$7grv2NdJg=WD5QQL#>O zZ`L>Mo4lzR;#aHN$0&`8*;?OsgtGoi#ho;J^>!(LzleSxeX4oCM6!%yHXe}$AoFLx zkN*#qzo0+N@Ufo{3ZL@=jttBJyvOT-VI|th;}59ZEbZ@M^|akw$Y*|ib6J;*Dkn!@ z$6E^j?c`yfQGc?Q@mGp?$^KLOPYm$)tNZz{w&0w~fvUUdoGc-AqOJ7FAFAiZ>qbZD z%wYidZWI!){M$hmkEn%SK+gX;_9p^xT@Y13)&iJiw6-wbSyzUBE1Sp`U@xfw*g*Ji zrmNOjSBjN_cM=2GN}sivYA05Yei5hQ{_}N5@0A6ZAnadR`xzsZ=MqH$y^=lCx!IOQ ztgb-27ONDEi%;|Rss>s;J+_t!toH`Ro46*}=*Jp(pL+!aPa5#g2o3(<-VlAwkujLG zbwJ5CD>hmJ`tknc{;c^~4WK3nMUbvx?6*}w3!rkq$Y-Bt$blk0!x{IW(t(g*tL)8f z0r+mz$gQT=z#)u(>H$2Xo^Jq>gJwZgO(iXehX>idfKsCqOUL)}`2_s4atHV~8!%?M zZhk$PNY)DW6*R^j_Z!!oxz9e>0Dl`>3v8TOKNgwqLhhgYhmzAwHGd~)9f8Z&df9w@EN*UtERWmlJ+O)chvi|Q0{ZCf1XeDL+?vd`lgHUhe zV*%**jqgYEXTu73P6{5M96-?Z{h0r-0$|(`0!#rbL0k}WfjqapBK>>uUy5VfX?)XP ztA##iROP&=(2912x_>qkOTAL7e|)4-Pw!v%{`~vq{r}Pepij(-TWJN*F3L~*N%aX= z#I2*FYnb=EJ@-i?W7bG?X0`Bt?o{D{k^@ix8_T$H~rLsyxpnnh|hpGCo~3 z-??~Ovp>&LJy@sW<$O{0X8NJl2y({Q^?=R^2A>c1;RLQRHPd7qFV3^6t#vnTdrf;` z`((y-$YA5+IKrIW766YfY(0WaAzlc+8#@qs`niV3Is1A=4>r)z ziK8d7BxV=Z8GeP8@9|CcS$!XqJ-s<17K(hg+Die5ZjRlNVtapLxyhbV)cti40 zx~t{{E>%{`sapG~ZE5c(7($PPPKVBa1?pcDa5Oywr-oTzY9FF2Rkjv((0zQj(g<+U+ zV`b`I*H{hfe>sv_L+8yoaXelYI{`O0?*`M@6=w?kjq(2ApCjQ%e5z6H9t6Q2@eZMa z*O5s*KH*yMJl~!x!!toyu+PWRuyMWl6l{W-16BcB#zx;JYBsnhRBy1V-$pg%Z`0() zXfZ zKU+0FPfPjVU(a}5A2@E;%Jr3NqSd9Z=koqdR9}BmHPh-JTM0*@_BY`0ANTjBczJc& z>yma>f0E^r8{@8;pMc&^k2F|0Hq#yaI*GmG|C#ZR<{$JvcLlQ&fJN}OYK;N3*L6pI z-CFm84Hjk%wzvHKZpxMHrU+nL*~HCi_U1$>xAUV%$3sCyQ_p<8AN5Ey8^JE<7_3I6Lb{7`|%mZ zQNU6iUuMdn$oUE^8W^VQ2Xp?3{mtY-9Jb8(;x|~e0_bn<=%3eM6}+k_3V~xC+n?a) zLtfBU&>X0453w$0N5M*>Ee1|sk5+7FgTiO~V+%mNFB^AapznOlh@rU1I6^wc70=xpe!xh3~ynj#4V7*n!-$SZ0-lCS- z_qtfr*WFsVGip}dPxz<4c5HHp=GQ+X6d3>iXy0#}b4A=J`7-G&{QpV!b8@_SbgHfs zvm#i(k3PWUOIR(ftC&!Ou#dinZh^n&hgyKp5y0_3m4K`jvbNZM2O*o)fWbbQ7}yxv z!d7Dbdu!XhrT|cF*jt~nt!fh5M8AsPjL%dAut4l?hO9i*0HdVwoK-zp7T}iZ+Ulot zc=l@kQt^A`gDxp{*4nQf^OjlbbhvUxt{|r#D6AHWe_;awpeQiv@RNu(f1$b&O`&*&f^}it7vjTXIdSTZAEm6|}c$PT9bBA0TK;p&3ibu^{d0u% zLp0XcuSNFszip|{zN_+3)Ui51_-~^AUl%7kR~M?kW-rAD=>IGj84K>L4p{=fqKu2vId24H=FEI?~9 z2#^o=4{I*6hgEF0hl}Dz5rys@Rs(N_J?NF#tx_Qmo>!0+0MX#z9vwc<9=L?7gu+^3ME+z40{(3QP|zGt z2W;Da2bGQUaI|90j-$Yidwvn?V8!SNN_@|=K68%ZJF3`mf4F?XwWf zp?Uw?DdwkB9`kFdf9tD^;7d`T>hVb?@4sAnMzU%3xoEo3w03Rw&p(dy|MZhTs4h&} z3IEk}j{edXXGk9hY?Q9u!f?yOx@e1nzMle{k<`=GkJvwL3xjW+E8yUyW-Sb+$ zUp;zoB@(v5*3z%`>l_<#Ejiwsc}932vlwP8SPirW<8B{lG(q{Nf@=dsaMvY=smJe- ze0{C&aj4?{H}gNK_xogBKPtmVs^*8R|4ikG9FyccR@@x0b2u15F#SOKi5KjsKF#whCq+Hf74#BufQ9PmFirM;v>3pt)j_fV zLuL0rt)8QPa1Ug!n;y5;KDs8f*7pnRmIS45aV3!cK+Fn64_KvE2Sh(GGXHc0Mm_CZivl(i*9Yml zX=7zz<^k;dV=izz-N9j%Pb)*C&Eix{?^UsY*~$stqH4gQLjQ5n07j`6AWOz2BhtsU z3gq_1zQv}+hEf5J$uGz*PM;8mTuUPc1mFSTvS0=uiw}jN8a-&!;2&&*e{1pfZ}#=< z59p|Syt@DAc`(mwu^jx5e-FI@-~#ynU)Fd6{KC-!&%+U@&*dDfwHsf~jIr0}k4@kR z&OIQFzqSJ4ALQCD@NU5y8|TFG9ND1X<_f$YnB;YA{?u@7d_{=mIhxN5_JVJRPi;{+du*5U0bKjg?~9d8Sksp|zipC(k|B>{m8~SSxSwH%E(g720u%ohB)%X;x z{<(D8SkZOAi*wJ=>K`)zv-fussLI#-8osRdVX}dz8T-Iz3@)mL}xt)|Jc!u z^&LasLhw(uUr++52B0#?Y9NsSvw~O~knf8kVyn_soQ$fht!frvCt)AvPbUD@2J&$^@^dt^`wiuJZxr`CMHb*>F@fu(0%Xa^WL)}0c30j|tgEh&Kjcs6 z-SY#oBhpFg4TKkSmmEgF^WXR`(B-I;$P+JX6)Qyl9^=@6;2(L+ST_SO0>FUxfOzol z%$@UrMz^sZ>i@tyF+!LdMBK2P&c_xCB>@GEPjwy-jM|2QtU8v%Bk&1#cGq9N7c9Y6 zfaBSWR1j=y0Ydrywm5tzB z0sD3QyZ(o~0ArUQHnIg9iy045z5i^@Hy9{(!HT}?)bPK7m;lP+4z>Q;!>Z#nzpg>} z?~{D16-h4BIcSBPziDOv|I53#lR~k7vTAi)bd@3*@ZVN{UBAb7CWq2h-wOqR)c{Zc zjeKy=V>CZDqW_Q^bTu%Fp;sMju6JNQ0TzG=jSe7ae{6IEq$?nu!4J@E%JG#yX>E{A z<4kt{?dm7$4Rnw0{*dYk(g4p?J>UfWpCwb0sp)gs75N|Y_wpyy7hq(*V%|z)W~ge& zey@?}j#9*#_nwbQi;ZHC(ccnZ?#wxI3!>rFUSDx=>Wx$xn3K(tn)10@D z#|rXE&J_foj*Y}>a25Ct`0iEp$mhnHggC;hjlzboah!SR>cJ;~exCu~$I%HEfJahmT2r+R1nrh0qMQq9jdm5riJqDIkV_1z-tPvp7zu~sBf_wR=E zJAJ=*)Hkgm^xN-K z`A5|sOd!k#2sVJf%ntI(290F{*3#8!rgtK@;5EUB0_XwIzlMFH0agV$P^#)c={Q$w zg|Z>C0KXFF`#}92o>eaJLNS2B(g4qq1sJb5aCyxNdN_SVx#FwybMv$H`#jYHX4#VI zp&D1L8xit=j78S~!auu;Fb|;p9sFJ7l8E;B?tRp&dh!oLD)bV8_${%INxuq zhj_r~cjr+0_Co8AF%Qnmx<=s{5_j!J7J~6u{ovC?1pQz5~M(ICSs5bmDDMGWQ z1I>;T)vCN)xu^0@r6KARHIAND{T*vpFmsJ{E5JT^|4tfj)U)uH`XBOn@BoxQ9-&KF z4*=(3W-kaZ-s|`eaR6xOrwT*$&y)?=N73zS!i2rQ*+1{TYvtQY^Z179t?K^WpzQj_ z$+Pic(b@8)|1bXeZ~vN=(vy-cYU>mC);aRssnR1~-(HW=O1NIlg<<2LxZfBD|9E`s zfbI&00to);2tdA&x&c-nV&ySn3;F}~(w*8t*J)q*`-5ap57j)10a_J!pzQe3>I-;k zWrD8Zc~QT3W%YP?S4!YRvIOS{{U?h743|f^TH|3Y)dS5=@6WpB`{hUEws}));O#I zay+abjI-I>^R3Jt_*C}u&bAz8Al4D73Ph<0(Y{px_Z?!!bMXII8(%@*6%G(=ncv-( zzzhub#pnAj;Pt8Ycg}w!q5q)dt>n@4mF%g!m#TeMF2>|9NcEqSbX3-F&W~LoC#c@{ zRc#k(ZO=8;Nqer8x0fov*4mzHMsHUxQ#BcWpV$)B5A270zq@=gzq&hnWDexqQc2Apcz>@A%8USa2dDQq@e#I#RRH(al^i5rf2L+jUZfeD!!&1mP!0VjNL4*eRh5-! zY;<7UtU6ivpQGsSa>W3rNdr7vTF@xv1)i?9Q-_rW>77}J{1o*Dd?LR;-$AQ|9;jOJ z&KhCl0W9K z)MEhG0J!Qm;GgWD`-eFP?--kmK6(V74B|pWVjjYo!2ZE3y+8Rz*feu`Uf~FzeS8~p ze!iLYKra;dze#of zFK7hZQ2j%78|D1}sGR>S_4!#(>->EzPjP_8Dt*2J@9&~9hG&Q8do3@J|5FQqpYt3( z@_ixNXSCDb1N^h03!+_zh@q=2&1hx)X6sXTmEVU0qjaq!{L|Y8?%YmZZJB7tSnJx0 z*Q~CrRFRC0dqv0pZ1LZ8(WvCe>gQS|y|2DAx`_QhGkCd99cuQJwM*z->KdTM(U12h z9>DXjC|iK~N2OqcYykLYl~8vcZmlcXRr=pT_|DPheaAReuXi9WWys0$*H&pL^yW+s1)iY!TE>H|GO5@@6>Q?Gul4fsaN9K3r z59g2P6Y?eVWwT$YKPamNl4C++f(Zl_fN^UpV9x9;08AF77#HTXJY!2>uE0zI^WT8~ zzzV4Nbqzp0C*b~|&iAAIu~8L3PLP}cc(V5)K<^df=?!<;I)B0@aZ8o zAi4-=M)bjXGQ-~$THKSCQpRsd`lr3K-uW+u{$q+|i!JjO+3(Zd>hJr2IzO-~UDrT5+*xtc(Zc@as@J+xSMwS5Z2C?WT;GUQ-6AeiY3~jPy@{80T_`dwn{7l6F zlhUV>Ej7YWm|&V=oe=QANCf|NRCxsRKYo!h&Uj`l+Zuotb80JLa0M%Xyb^DXYL3e9 zIsoSroda-2K*C%m( z8+0e!;d^~${Wez~w|%-+wp#vKzJGC!y8MpHhiaDp9_p8MoA@1bKgKBA_ktq8xz%H< z_r`Oh)uIQ4zAw~Ydn5Jtzfb(JpLi}dS^b6%_gIcYD;q|q#h+GRNLE*O&1aMO z)&1kY2AhA6*N&?GK{J&5{~7-%^;G^7`!JWUx9nz9d2v=QaQA}65zEWABHQFQ1+*nin+Lw;zt0VXb+1N8`+v)16aF4nJ zeHA?&A1fd5w$z~OWdVk3J72NjNNEC7)g5SRDEVaI0u!6!Nn08M7j*aM;gtN}k* zhA``wtN^_M?Emq(=H0eSwn#>~{Wm_`7Qi;kj3uBSTM)cH=j(Ik^*-9T=KRbh{7&I} z8~=PeA7_5RH{})7_QDa2dmh^=)olfPup4F(u0rrRaGh+woCEL-46bM68Uw%rG*i9b zg~_^UmKFJed_Zx9D!Jay7iKr6Ba-)ORiDiC8z~zwQ?o(d(oFCl;#K1r1|mu5;ZqYF+8W96wk2)mQ4l0+`K%Z6W}BdbmCoz?A^}CjJkx z0I%;X#p+x!k2e*44AhujN$98A#oaIHeN6Yt!uZJ zuFL5{_tnx*?y1e3SSSVe1I^v|R&)PW75iwZ`KK z#eKs6Z;A~x&-XP&%h&4uUM#g|w9rqNpM|OdZC2~^L65&#T3fTVc)**|jCL3H;if$` zR?+;a_jQ~P{|EoZdhp?lX7T{8@kRBo$NIJaSOFApjM6oixeMe<@YL$k(r%O6t?dF|rS{I%>BS>EjxV;cWq4lpP)tGD{iD7LQ(NMn?` zUe4anS{K*^HShzF!gDYHGiC6K7SD45bzskxKKupoSOa$tCdUqI21mv}C^nurBi@fa zoXbyjHJ+emUy=3esGMJ;^tJTG?B4vS;sted=~o<<_sCXE zJ0$n2*5|@nbT^?oMVa6E)u*cctE1!lqUE9o<$r&uG*!jVm$lhGWc#S{x9Si2!8gb^ z&KJ-1qXfVQtmcDutA5}epXZzah$sHX2KYC&pq)NtU#;vtTPs#gRTQwk{63r2Zv5aX z!o|As|1E`=vnz*0&%_PNPBo+rn!oVZBlGX`4o#v%g;_MyfPdBjaZkXWx(e&nqJJxZ ztOdYk{^QO+Wck+7QA9yqWiNM>&p$#+-Z0f>kC)fKxALes|FiPwFX;Cpn(ueJ?&5eM z{Bo_FbhBnszft*6mf!`cIv49I4iN)5MccSa9Nie58TXVDG)Hp+W+)1nDBmzz{O}6J z082-=R=?g-wDY|*R7LYNIp9RzQs>VOa3n($x z!6){BBkP>7}@xD?CyF*&>Ld^I{rZu z7_{0C&Unt~!pHK>JQK*OW#I848(8NK*cZMF_RBt>bHF~}dr`jsC1rh|jlYlDMlT5cU#ZVW(l%>zbqYahH^r%fRP#};Qy6snG8x=r|q(}@|W^1 znia5Cv1i^V>zJOWnI&j|?h=e00Nvm|jQKj-X0MsIAEBM$J6(MPHuwP%aCiGq7yuc1 z+Y)=pU>RH+44&OL+%p4%8bBQ#IP@oi7|--E{y~<{49jDUKb()5Jm<)nfqG-h-q*&36`D|EvuGYz5p5JA%>J!BIU#wMrjI74hX7K^h zd#d+)ztUKJK7JEDuCdWy9>(+h$@sJCwDbP(dyip13LUzt=PT?(^e)R{i`N z@9#*Uy~gtiiuxBw`J14T+FZ!@d{=W|=fYN#I@VOrb=TOvAzHe+wQ|#IX?5MdkMI89 z`jjrRf?%Es;LT*qsQn?c!VJK5gn#RQsQ<8iI6s+w>igXHdkb0R-D}ysp*8H^A+P^{ zW=cM!?Ez)_u9v4jPpCdxENV|#31^%;5_mFQ!0aHBTm)c zR?#1$yW%}G6Z|DH!aL<3=ma-fdcX`-2*=7LPfAWpPuFU(%WD4U(V7*|HeW7VHa$}H zSM^n;s0hMC;qR;n7)|D@Ak9cN{_u3c7xS3WZ+?$ob%ad>fCn{dunkxZj&g*+k?xp@ zr9cC)8t7Nq!-FIHUw;N3I-G}}!>8h(c?Ps%EjULQzu5yvus=lh#%##U8KIoNzmanr zdW(K^oDe zLLv2j)cd%%Z#RutI6z(bcO-yMH_r$E{?CiB6YQj1ITL|^wA7<5F z_-<0u|J?%szGIzlO+`Z+)mTDb#rpfppAS~#etAvjnBqdfOEwOPLl0CUR>eXO5bSN_~rN*RsKCE)$djz z|4MDwXg0vYYN4^Urx@3h>6_U@`L^l|aH3WT_%?ereNVH3TPoYcs#2^OPE8OvVa($> zJwB~jfi;h8^WlINs|H{bUry`};%y7Sx%DtSqyIDdtp&jUoe=~{FadV}#4dnfdr>|Y z^aTcPj?O1qyTf8}v=JKc8f<_qL&zfr56!2cTk>tK3fKz3J8aFucg2SA-h3L@z-QsJ z3HZ0|2#mq6^yhOeedXvj>Z(7yK3BIMcdaEBwoNitKJis4HG3&eJ69{azg6s4?34c{ z`$+F_kE}W9zg~Cr70vtjqpU#Z>KXCmXnE=WFG(L-N4nof>hC>39(hZR7S{IarV)hV zPo=MWeB<{~0Lc2ex(~!t)kYQ{yxRiUE;#3Jtv^KkpdUqm-yNl0Q}O$ObgMJ<8SaFO z=Lh+)e@DL!@{LphZ7z=can!$hx@P~b|4)biri;w}w~$}nQs0*92YPq5lA=e41G0Z) z|EcIY&i3EC!Wv{Z!3 zb&~J{-*Qu|n4GgH0KI?*DHtmA5|aZB+=^gpm4`uu?Z&ceQx ze{=vajM9fDWlV!~EB{pdvLB!C>_3mq2hjXDzP+r>F&e|Kt2*UMG1MkM;@-aB^WQ?v z3;w^Ej+tLsE82cRBkv~q=mqYm+x@kz1(PpUeU)q+?j7%KFyR6eIw-LKBJPPa*((_I`Z-+zrN zI-ae*U;Rw?cjxLg@f%vr?`3hnA1WKD;-}P{-%~W+`l^PM-g293Jb`~kC}YWw7)PL& zIG)W401>`fy%7%LUGop?51K#ge9^Tc)cyAmqa7{J|Efkc+@J23-W&mt`7#%V4TJxk zH7l`gd`uKF~+^VJFSnJ4Sr}Qdvi^ zf0Ix@N!RLDA@@S9h$0s;ZFH3xi-^v+38yC?nhj}ww$~_mB7pBb@sJj6n{-WQ7iyfgFSv9@N0Vnz8Z8scxBrHye|01 zKA`$}b|Bd0SdKH+c|G`NRy5WDk8f|y>p3RmLV^~F?eO>GyZG#FHP|0w06rx|P}mq- z19w;mGko#?&9t7^^rVNf{dZ-1UjjjkQ_`&zdh0?))55@5Zi1VK+#y=j-Q`_~j z0b``>pRerQaZ>bmm(TB`yVO;8#!(rFho2Gid;TT+c|_(BtG$UnZ!6Uaj#0*7uC%}@ zvMr|x`-An4CrVXl6kQV?8LzJK@|-NdOld`q8n0E&=-rwTu!*{^byHt}JBqgDW@S+h zF0RyU@>A1$lbxjmZdA($k`WB^=oq<gm^hHd?Uh zF%J&_|Nal|0REW)X#CqV`+XcUU?H#_?6YMFIX}lIjM$fT;%zU%Fw(k`+fP3nm=>=-&XwJuX;=T$Ea)c zy8OUrS|4g-X#lTCKiX5HlGvZMebJ6w=|{~E<0^O+XZk%~zh2V^!eIc;{h8}K1|ZvK z6_DTTvtEGif4gFjruniroTWqy;h3MHHy{83;9E}{|Nc-J;e;@>}_QR zAMa?&*mrdXe&6W#eFOj8L*ltUvL09bXaT0`eNU~;3_7-!3tTa}H##w1TNdDXZTCwr zq8^BKANdEC4mZu0dzriH09XE`A;! z8%8o--&{6$e|)sPUtslkeD=cKK_8sh^JnM@gi7Fe-!lX3M_~rk08#(%%7TEWz#^y- z3M&clu8!eBG@H?j%^`Xx>PFvNycdXlKhM~Q2X%q>HG<_+(EjuKCTdVo@k?()AXsi`nwklT7 zA4#uIzEs3d9(TO#_fx|D+p^+)w64$lQFo#L5%tnoEo!g&(0Pg__x%z3#HP&i0rhZ4 zxPRTR;8|b*sQr%XiRSI~>-eV*0IV}>2lUr<0q6eP$ifT|t9@D(f7gk{wy5!bvR>Yt z0dppd8E$xgDgXvowvDF#6V&_GvHssb+Dfy5SfiW#99?|rpSp$q-$(OyPnCbaSg0H= z)L*Y{yg0zwvIfWKI-&64^NAfi?;^~)=Gq7RW1-FVxm!eT_WyW)ta)cykHhu8Pblm9 znzV#V6iXZ@9pMOB#3jl|lEaiAua&@{=eq^z2d0BZx z*{IyDI6gl(J35`IwZdA9kCF@Uya1vAaAcqFJUTct`uXkd+Mpb)fhkZ8SBD8(X*2%8 z3eS1|EG!ugPt_0ppVxrr<%Dm#1kwS7Pjb&5+YjCmh7f9murR~}E9tm~+7I}LnWOe$ z6F4Kf0nrWEUYu`Y<-*uD{;@J_X870!zLAeLv%re+ZD2#5i;U)H{M(k;;y5;_TOUx* zw;=8S|HS-W$+LwtzX3^-evp2aP0kw^J&Rq6VM6~J<*&+pi&ps?>0PS!ouYd-PL}%) zMf?lJ{AX6Tuig}Y9&M@$-$$jouNn1_0{D@Tc(6t!9X{~>y=$s8W5%%~e9|KdAHtXd z|9E;d{owPR-Lu}uGerA=0fagL#|x}sySK*p{n8%p6sEfg^{(@^1;F#e23D=b1Iz)Y z&lPLm4zC>lGoS1C-{bu+_foUJt5m!G`paqn+ezc!L%e*js`5t27LO4+uM!`>S`qpX zA@dMjuN`!E7LW4r@Z29(Ru6NkeZS1mu-tF~;x_959rgMydPPUsoNe{4S4n$WSc?KK z7T@4g4$>Liu6m#cqx0hKsuGzm&i|0|#8=6OuvX|O)du9rUCGz!k@@|_@#V;J$MVgh zYq4*BXm+w@W9_d|i4KSbAPR5>0A9_=cWwY&x|YTE0h|Pn3d)R%fGKe0nAqOmNaq;# zV*#)M=>H(>w?enO1bc>@Juj97OftjB3IQwtOM-T|qR{1Y!!vUvo*LZo3TNF=0YN-y z#!7@(fPLoee7duVKGJal--~Z+{5vwh9&&W>|F##74Z<1NcG!k+bsRI%Z;ct(R9v)4 z_DkMNUP%|Jqkji=^Y5#S-v>pDa_MqU)n>e*h%8N}SFhHcn;<3kNqPQ{^m~u$3|0GW zt9qZuRPVEPw3XKQ_+Hhahim+Kr3hB`bL5ZD_ZTz6!7k&Ay&;cJbuW*}1AzRX@OwY3 z02>ghenXa^qsINYs#Ke$EY=YDqIH$$W2TRLUt$Az6#h~HL*?uG`s9g~3I7uKZ@Oq_ zX&DC!ZwJSY~Un*kd+x z0PYdU#{xJLXhi_;Z%%;DaFnj+vzjUJqBO+|H3MUS&gT$Wg2|P2qF19ER1x^F#?5?n zgug=!@)FGoyhPq)X0>thr({$0l=-SSyBu1!DDNs77klK#W|yU}Cx@x)jB5et5I{#7 zx>T9J+8W@^z!BabegHlg_h8ys;%Fn+IXhS~-g0rh%pTWK02~1RO@~d^0%JY^KHPrO zp4VAGV9D?iUMwo4(q*Pzd0ro-a%{jip{m}?99%=4_J`*n&?-hL|~jaeIvD4w8~gnBtSpYQ?nm_RSk4L#_s_PVtM0?G ziZ7lQ2be7jFif9#nDBp??#@)rvVJ$ZCEiV|LA|T|-y^CA7_G{2)`q`YR-s+eL{(;K zu}XPfd8pP4ytMdzF(AJ@yEXkXIVtHWC6K-VFjaa38UI%Otg)F5paOz^ysI;GuBY*c zcie0y?dZUK9o`P^{bLRQ{_X$k_zx_c*J5$N-S32VcL@vq1K|PY`{0^)wHNm}`8}w- zTSKo7x`3HL&@MP0gtLLJbcWWPriSx6WpJh|?q8s4zuB7O|AuDy z4v4-J^4_Yf67>@LmyaG%&ac0)&)Pn&6=l9Zt5Y&++}+#W-5wqW;0ypGjIoCW;4dSR zzmEE;U9p|8_vbjQ#3mZgM=0i>Ew6Kxl&luDTK|yubJaUD-O>Gt0O)f8{;7xQ^Dl&c ztiu`d^EZioO;GM_oVfl({bqLFU?G2RA)oa-UBPER&mACh0?x6eAews-Y%ukN?4uHk z&0N6xt(ly)K`aB$byM7NviSaMiUeQLc?^;Ia9C|SNvc4r=tI>6@2mBo-V+CSP-AJF zY`|#gf#Z}9+)m@~iLA5o0H>8b%X!6V#q!bt#%2$sOQe@4JBpuLrCPV<<%7pJ&nLd6 zQze$cRqU$^AK)658&+Ve06XB7Y;_+B&O=0CD?t2jB|Xdq;JxtWwjR6(?+MGG2QTx4 zyoL~K2Rbu|C$^67IG&?HE*5|oz$*groV5U$0FU?_&E0$-B9_yowb7Z)M9M$c(G!+LV0}AC7+j0 zNfOP9ognnzs!pyiR6neKti0cmLjOAPpeT-J%lEG+^}mN!^q!^ayIqB=Erouv$lWyF zTC|4&vVu(#M4x}YsE z*Pbg)t+n$l_Ve6y%Fv1Bz5p zz}W2dv|IXQa%|F7{t6a=pEUmJUUKzXY~Wd|jBZxk21!=iz#bL=<;(FiSTyP#Ipa(5 z|K2=L$a;XQft~BeCIp`hUL9w+&VcM8^9Dh`D~Lk=vCaVa{D6PX)!4Qr^7~>l_zV#2 z4f{~H27HfTxj0w2Lilcr+cxlzjj{E!JwPLAsO?{;#`}r;TPw%1Npf_OrXQ!vs>Xjt z@m;ZGxqjKZT&3KvXq~^L8L>Y|>j(X}$!5Q*TAxL_SBF$zh*ye_Q>Fh)ngjZKp}(8f z^?6=V-##_P&(;1^k)RdXV>qkKxbyg9Oxgdy0Qir;czh!rE5ReG0mx@z0lYc?&)DrI zkAJ@ApS+^H|CzElYYF|oQ{)fw!T+kYzs&pdf5yLOz_k3A!++C74^=)xK-$Xz50bJH(#m_tUew8CO$NZ zl;!_W>TY*!%SSKjzV9bbL%k2R{_gHaKYDNtvoyQ3_c!M8b8XywaS_TmUNq*0B><2#&E; z2zI@*?*9PA9kZkdzo{8TBgFxZml7~gdry}|=o2jwKPC?FsPH~d3i9n5U1S0-mbUao zby6}X?W=LPMY&7)je1O0iiuiZ;@A1`?8CHkdZ%gvnrfVz$r3+%hCN)D`T$o6)n~C8 z{Q()E1DgOwc&$~yU;}vwQ+K=>V581|mYvJ(izQU;b4Bu*vbE#o{cl#~#_Q7jK3Al6 zVD*Xk*YV!b7sA~q%J**;^%VMN%lGfAED)-{SC40=FSAj+qK}nid<1@mkz=+A?#%>3 z#gE4&*k|*Y^xAaTfKd5E*NR;g+fEbTeMS+$ZbG!@_@vfTLsshA2OBy0pX$cn7>r|flC;R zagGH*nV^0toRJ>|yxXT+$>bf`I5$wtC-OZ5Yv7$gIqz-!^DN(=<6J52>q0-zX4;zm z_`9X@tMilF(#hHVy5cL9hn3frHgW?^5l?2a5Y=s?zta z_?OcBzto+4zp`qyx$v)k4`Q49>b|q4Pw$%Uhu+5zGkl!Ax58xq9z1-A02oh>>G3R} zJk$a3j1@rJfKUOzx_*~wO|cK1pOEdVD}U@U`q%sy_5HR1)#yX1 zfCGg7;PnHycl3n)^|dw^uzt^8o)5hh=qrZh@Exj0|8*V#^Y?5ncpd5>aULCBdTAsK z{Bc&m9OYQ9kOiP3_(;Vg!=w&wAAJ+u6mPEF|C_a3z%4Z;aE!FTo2uVd?@$)Hy}C@U zQ}!t<^ULCsd`jLizeHS^)iTPik>hkTS`4RV{`g?vTIY0OC#;@S#*~~P}Fg@z82#(6)`RK2|>BU8xaMRdsZR6u?2^0LSX_8?pdjMmNWOYTW?lRv#40yh@{uc_r7& z0^FE9mNw)E6zi6ImyOF?iye#g)p7EDtsM4t_KR$NDFJP3n8w?!_2==;2qy+;sNvCQ z0{vjzei@|Ub@97lFIe;s*aUCZ;2a;o3S8MAG(mRKF(6SS3^nEDNs-3<1l5ZLw$fXZSg;LWmYP4_;*+g}^YJ-x53 zwyRziza4EI{YkTCzg4YY*QlfVKtHYgGSzB6ems*2N)s_aICgdqzcZfY%LCOo7M_=SaV3`)H;M*C$>38 z7T^ZWC%-JYCjCBZBTjl?*}i;5GXr}T?PUdC%h%Jop_^;9$?h8Sczt}EtAg-x)Yf|R zgB>^-p&#Lq!#Ck`;?K%eb_V*+dej2|yf4#3p`bObdka13GoU~Gd(ShpG_zVb9sIFQh8(f>++-g{H%Mri{|)E(A}7*3=Nw9 zLdE{0t7}$=#IGpU|3Y^(iCRY6N%i|x^r$j^`~6tykM74DU+03z3KJb-0lba}wc|f! zn~Xw_z>tk{Wv^$jI1+6w+;8}2{G&Vdk=8%AvT?L;v`w^(R>C?%-lnB+O?^M;Ck}AV z9~Hnke^$6)=HD9s(%iq!A*M+i*-Km;Y+_}(&c;4hkjF+ksCWJ^@C4YHH@}WoS|jA% zvDprQf7b$g568G7n0ro7!hVYTuT_jTPx+a9Re^l2IKc6;0;h?)Ev)Pk{UUxcK3G|R zx1|F-rkcQO!~n1WS6APuo|p_yXKG$hS{`2RR(@ZMDh|@NN71P0nQxWtq7GDjrD0jc z4*deXhLEFUd?HaXv+ar2L5Y2;8L|}sXU0P`usHgHB7hIK?{_5NS%Sow)U#^eLcBDzJE$STvdLP$~ongQd=I(_s!NxJ8K2sE>O4Jt_3>E%d|u!9KPhj5C(V7~vmm0Z^D- zVZw9v`$21B1bT%J^G_52YyRi}qXH@?8py zz&625z?mHP8zIBP#(hN*U<7d2yK6-3T(bbP6a~C5J@C4k1sJUJI!iT5A5{*BR#uO& zBWe{v3u=7=u>hl`296i!+$rgjo|(OnFDQ;Ek15wEA1E#=&R4I%rHY;My|Y2-Lz=0+ zajiC(bwijZNOeG90Qg|9x(kyJbwFSRAL&jSu8R#mAG|pd@DcX?X8$OH_`g?_;Ghbg`h1yI-t9fZ=nqBU}YocR6f_t@aKg3A(|C@vKYWn zRSJJqIWcMy&yNSHBIrX^1wO0l(raoxLZ}OVvf4vyGWN(u=C>8QmV?VS<$~ho;zF^2 zC5ry}G1<`cWvxfs;m7eE`h|giu;z?lsIn*KXD?orDB8MTsLV6|c!u2FDmsz~fn!32 zFiIdOceQ|L|GN4H?tq0sFN6&QH6H)#P9Dq$PR>kb^A9r;EJK5ivS&xfId&_Kj~;N3V~hwlAsP9v#)&>rblZI#Zhe zPKx~dD(Vkw`C$FMPB&wQ@xrK~UWAQN6MQ|Y9#MY4KVIG%zmK&=aMh2q(ye4)_ES~a zyOkAm2FvSwrYOHWMkDDu)gBDejJH1eybTozc%^IbZw=7v+x|Owf7s1r>9Tvv6Pw@r z+Vh)xU_Bt*9rl6v`UdWK9ozwnVC2L8?fZF-$BzB^%O2MYqWqBkAs4W@va}~CA2Fx$ zsVc>ulp-)x+9W*!&sN^%+sbj#n(=e02Y5``rT0}AG_BSv`0`rb>0!+bdL{WPZJqC3 zG$;z_RQ^!hty!tN7r!bF&o9lUq+cheCEaRzRtt@9a@wE*tbhYo0fpLN^JCCr#to*e zv%vto7mTCU!yL>8VEuS{EJMf?q6+#y_(It4Oak#YIJEz_J#n`(lnMMZSSJ?YwT>Bh z-s%OY#n0pau>pJ&*oy5$K>y+vz9rs z=C>CImyebAmEFpnir?l>r&Cqsf3wifT5S_l>HDg(Gf!&`_b=nk;xX#w`L58vtT;f& zsByGV)#b;i_HKKje_OGCGR>W8(H|YC>iB28cw~WKTL6ze^Lr3qk4LcpczJ&CK2`x3 ziNpo1^uD_b?QdzN*`?K6aJG2BnPUE@NN2uLapt9ZbfC_thd!rCjRiRNC;oTO`+s%D z|6jk~4f3_y%NHA`MmwG!3&0kH&6?2Kb@o20g2+-~{Q;M4)3- z5%690%H)c4cJ^idRMEcdRsN=YvKUz$R;*fFkUyS%kT%i!;oE9#x2)kGCBS|W8qx;$Za85z1gR8Gwvmfl`ov=%w+pz%eiqH37+X231{dwb`3_lSO=x-_Xx2Z+_ zT{N3=R&rK)g4Xi5z8F-_6Z3CTHZJC5m*^^fE5<*fhW_i-uk}S~GEY@csD2gqh)1iB z_j{`K`JMXvwU^(WBL#PW#?`jk=!AJ_SKb|^Jtj3v0D^?t^Z=kbAdZ?JlzdSZQ# zGcX?T&mLE!m>;kj^$yB3ysp0DOGWRi=9g6`4poG^pX$oSh*^$P4d5x-(_hx8O)U;! z&ac^&i3&E(O77(A1nZmd_Tdu)g8a0&I|lL z+;heN`oHntOU$sB?%d&GX!i;KZ^;g@Vh|kQba8-d#0qwZ{-k<<-dY=kdVpEVH{Yae z6Zxl0o`)GRg8T#NZO~AWt1Fzy!0%NdEz&@;}cOf1k-$#W% zs$WM{PoI)}sJMTO`g`0{oLJ6PzHgcGGgVdWo(@btROEG;y#Gj5`s4dq!TBVif75uR zeE)~)<=8lCr-(aOzVBlB+3i&6w~f%>TNd7$zvDw9K%zm$OYkrJ2eR?@Sb?BIk?E`J zdc4B;uV<%uQdoxtoq+d&Q{8$;~%Y^=u#RuqpxxdEJg*vN?q%UCsc9lhHqYl_% zJ^O#R$p5EyZJ0EgUNwshyARfvN9F+Ral8+jjpLvg+6DwWz){@OU>|&E`0aP*5jjC> z0GajaHC}nlDnkeBj!l#OepfSuZ`1u7D*T_W-&ZP^vvu@wG&XK6)#)WE&MzwVoT{4B zt283dt6rem)0W96$)a?Hymj%tw19ofcB%}zS2Kh@%{R&S$wsB$Xr+oR<>~NybPWwX z!|=19k1HiU%NR;i^9_+&bumT}_7vgpzesJke z5BLwBA3M;X=dc1HSHSV)F|FA9{8MwMW&MKdU#trgfW(>UQzO zXf3I1vDSO-5H*Xw)g3%Tn<2_2@2s)aP3N+&a?PwjJxu#g)LfID<#jfa z1pxW~J~_Xi;=cah$>KykenhFSaj?MtuO9UWWZNQeYnU<4wgA_trhTRVv_o)okA_CEzmMFZvaXR(`Ns^jb71{%!Sa>3;KM1D=%^qAu_v zsn6%?QJP$voSWX1J)TdOYBjjruiQW#gGUu>6vyO~vyajqVgW~M9{a|N;U5oL_mzQ{ zJ1Q`XH~zt*vj8x1dt|Ia@YmoU?Al-3?}k-6jDCJQ#|Yzq1#lGa!6VKA#PZwE+Zth+ zsLCVu2gzuJj^6FRJ=d9c;m8mp_**}5?aS=Q?2Cp zrF5KQYCYqq^kK~zuR850&=|Kj0Ks)nj|~VMfW38<&kVqI{n!ip9sdoZi>yIkMUYdZ zKQz)g+$T?erf`0yJpHyBXRLYISGn$iiYQr!mUZf=M(n1~S@S>Wug!B9q`TIwb`N}) zLQGY+wA`a$8+;FK3+gr*Yv6s@c54H^M`!@N-nl_)0>}VR3ygKfKfnk!6<6C?*?-?pd6sXhwL==DVGUHbkQOyh2#?02S_!wewAXYd&3xQ( zfl+C{Y>RgOy?B%F{Wmgbd_b1AC_OC%l_y_!Ryx9V;vPJM`uowFPiiua8t>Y8c z()kAejS|4S@t&X?Zos#4cHfmf^>2seaCJXX5Jxswrhj`Wq>m=8(udPivTgHD#j@r2 z^7gV-*|u1eJ(517SG=H#tFglVSjAj->8ih{Yky<4Y4wEo(P)z>iGHosJhznU|D}|h zBZatL^7`)Q4e#GX9wLk;t8|PBXY85@fnnZ0qsQn*)eEYhYyDvTUfaX0A&f-(pLY7Z zqhxs&R=!it_&zcHQ{_j_m7m{R&(Oh+HEnj4B5{gF(i!3jgJcMF^7$+hVn*^^SQ`>I>u$Z{{$2Ax%WuNgv5Wi1p5teQ?wj*<-sYCu>; z1cYG&te+Y0cxOldcv!Z8?>hQn>0lf7jVA}yR@;IFusVpA$g4QQ-rn4wPsFc-cz>2{ z0(&`{iU9mL=Z2@pBDfpx2DSY`w{-6#dw1ve+2fiAECW9q)HG14`|C|+mY`Of6d|c68SM20+ela`0I6F8Uq25JL=?agP(t4$=z+NpYR{FD$6Yy{rE|vKF(W7^wzo|%+h?>ef?xoS46N)^ z3E<<*OMM*Hf>GB?Y6CIix0+FYkF?|CR6hdyKU|duJ>+E=X(>(j2K=Kux=T2=pi7Ob?XSBxMU^B`^qppJJ*Y_FLPY|X$+j;Uoe`}N-x+Tv5A?dW z=hR;sZaPBI==oBoZqW?XLy~pV^|Ky%zv2(&m~v`)dbw(Oi+Tk-ly}dkW$R}X(`M;& zTES+Qq?6*`&^y?Q8t4yv8Sf4*L7lk(2)385dwQPnY&~c2eY`b=ki&x^82?xRzk|60 z__p0}RAHNdEinGEHz;_#2J664#v} zotR8Z;&iukR=QjELpCYjr}%|BD~%~PFHbEFQ4RGP>7L0~QdX|3&Zy*YeoM_;+{? zUO;_7sQPuxZ}f-p$!Kb$PolH$bIKEaCf<0FP=2g<{#oLYdx(WlZ-jT*P9A@#xa4`l z|6t+&Ao+hfkaqnK`u}YGhSzjJ<3D5oY^#lJ_w+EAgMsm5Tj2lr?fcB}#C&G|A!=CM zmUw1>dp=SP;FXE60O$g&LUxRl|JSrqR5kkaM?G+un84J^*OmREucOiNhGL}8$save zovCcVSj`W?7_oq7@+XzUzCm-=H!a^OPEk(q?tII9ZnnR=1q@7o znNHK{)jO!-t(kBGa!|+6%N%X<*Z(=fc9hL?AzCL+z}MRvn2S4d5BvZNz!Biz)qJ)o z#xpj+OdmUAoi0QK!QZkz5^^zr7NcGF#i*M&RpIz97#{D(J~B0s^q2Q3d= zqXIC}e2imBUS%#C#$y{{8`b|IRge8iHejsKKTt{lE6pFQ^CAA=e0nOnJyDfFS4&B{ zRQ-U4=(q!wb>8+r=>IeN;RDA`9p+tgH|w~!-468_!7|u-hpesN zk5>i%j}G8DAOZi(4kB0FS?bXtx?@jNzLci(z2bl=x_85M?{1RH(>IzQoe{5CJyTlX zYnpk^+<=MVsFw==7l;Mis9K=|lQq-ES;xGWw1AV!aph6vYUP7kOMLa>t$cLeCZCbD zQGB~o`dxCpX1Z-DpGaN+o{SA}>>MKKprC_R`)eM7esn)0p5Ol8oWWe***wti+CN(g zkco8x)!^Lzo_$yZ`+hzrczkC79h+FQ;LPeO0Nfr<&wK~Z#D}(K-Ku&t4Qg_Vsw6ZwqrU(U48DUUS0G2BWqO_k1FQ> zRBQM?P~E3GSM@%RMT0cIXLHs0XVC*<)q6|_%U{xdj@aAZnKyBZVS(I z;T4VzmYz!ETu=oY%G^xAub_gHbj0(A$wO86fxeeiW<1D=QujN|H{ z8Y`Wzy1;wH0>&sCFkEWjdEx_4R@X=-C+DQ+XA|;~#b#o*mzO&zD>$ODn8Wc zUpt>FD=;bTlrB(z+x?Sn!VA$h*s5>rSsbHAqw#M=!1*<>?)n}__+Y)Bp9>L$BY05E z`(O!R>io98PkbNt5b>kyJ74Koo@X7Uki}>16VB9`eAhT(30evFR6J7C*G_Rx_hfT@ zzwyZz>Z1BtdP&wce=_e=%q%u2hnKIHUkU$>%XNxh=5J|*^|r|z`TNmgQmnvowW=MI7Rr)MYW!<1!ob9?34W*mA&G4sj&HFBnj zN6uA^**nTFJ*hm?zXziKr{D5u~qgJ#`oFr8h6Yp zLEsCX8R$wtuk(t>!1wcm6+pE?73inh;7Ph`U(3RODu#EHVz?2C4CYi?M$@BhmDoq!z>16ZjC|BmH(L~h>i%RX}u{--}_7bz73l(#rk^O^dJzju^sk2mj>Y?1U+ z{L(MkI_aUkc=f^O_`bK(Uwn6@~x_G}On|O8kMY&R= zywT|Lnc_~Zs&~r@yz&eya;>rc;c^X{}>-(q!``7e=v%8E$ktTA&<6=H8ysX<+)1L zVqb_O!u^jC>JJeAr;j}~e&+s+sLiGR4OLCaGa5;63I7Xa0sg1B`1d(}fOL^gHHHRi zLnL2EJdb=Af^{}qtJi57@#bvU0^fVkZ)@T?LSzN#B1DFUsxbV&EdX~83&68|bw@`@ z`~O^VK%_O~rpy12)qIX;D-E@5z|-;8QUK?QpT1sOL3m_!n6d%G6a`$aeAScHW#rj+ zO?S+8&HEM=G2NTX>8fnmto*XLx42$22KOsgQhu;k{%E$bn814JeKi|kuZqWYL~S;} zW9Q=V@Sq#k58wBH=zQkyuzTx#)(+7Qumq?9&dl4#V`D;=-m!or=aTB%;eO8J-RS7He-tG;K1uH0C~Q#VUn zeNMLZ9bMhqs|Qpo)eGab<2lioXuoJ}Rrp^ey}zGWHhCLse$3=G^AGwF_dJXhP|e5z z`OXG=?zz2%`67r1>HOw+zuM1*xPfQ8)VSevvBGbp`_ESlaF%>OYuK`)#2y+o-E|CO z3qILHxve9V8Mt1ne@)lCq?!Lg|4-unzqDyFN^Dz$cYL+2#*r@h8{TE_g)Q zfYYO;;;Z9zlmUEJUTUt?DOL^|Ar>$~7T_|C<2#kF?xxx76VuVzMfr)E&w6|LN;$dQ zzx+e_N%3qkSvKI%qE+#+;(G5Mvl<+88RyVHZy->C=s$mIBBA64^gCYI1kUVpFTbgiBC%k;?foAjKlNq)D~ zkcZSieR8>6qaKaAHYysOQBKi{%ExE>)ja=n@qK1ijTMucDplom&A9qNvDF3D7V7D_ zkJj>eCc0QN`mA;e|ZHClK#dlt-$_4Z$Q8AQavLZY=PNAs2~Vl-`1c1g73F&@N6N}BG8Yg z2ld=D+iX|?`%wsbNxwZwalky~19E8r3#Itppc!5FC@Sb5&5aI?zljeO-+xUrQlA%N zy-{QMQsMs+{iZ+N{puNZfN=0iIxBl3zq#nAE|xRY$M#UoZuzcws+d%aQ#^2Z(X6;D zUo!8kl?C5T&XhN8RpbB6izl*n%?w@|bc1vMwWkmGuWNe^LOg5$TjAOPA^=zP2kj3= z;rGK9py5-O8{T;f`T7y*;B2-0p!|TmcfMvG<*#RVWmjcaWLIaivOM1~-zZ-ue>NMC zCD|3}=IOGjdUYpvCb#J4`6Nnv%2uqAP0D)b^Yep?1;wW2=t`)rRi_TT9KZ)*9hHW?TezJXV ze{23A&8m(W9mozo!1o+q5OM**2e^YT$9aqecFA8}g?7k>O<)9dP;J3pwTxdb{h^U~ z$PA(XOeucge;@h&9py1tuhv~=>`UMPTPZ5oL)PIh$NGQ%|L?BAL5c!cyA%IkzcT^V zj>~+10>WL{!_n;LNUS&a+c_Vs2{S)9-u(j5i9k7b)#_iJvw2P;M-Ul!{m`+>2Yjmj z<&C0mr25<=#rIA{bDKoBMD5~-<1SMF9+w4pRrAvB5_`Q;glhR%?rn&)!HkNgqrG$&Z#2kB4F#3j7knl2WH#n zPYAt_OnL)8(*Jx~s#s*>+73qqgU;|MQ8@3R|uCXO*?25fNY#??; zMC_mv#R7s2rK4bvz5n0ed0BVRo9jO}S0d^>=lSNFIdj_Vz2A4eYwfl7{s z7nMHxwO?0%*Qi;e#TpG!Pv3HtrLu*~Ym^Ss$iBP8n2hZipeX8n>fxUtkN*v6stXGn z6h@`Hrqy(8GB7z-qx(J*^Zr?VXRO^vu8;9=&&@s?9002a{;dMtB5EV{+>#st1nJfU z@Bo-cFR<6%f8d{^+6(>X$=|Ogzfn7QRhs@ZdHnrk_xIK}J!R*+iXqzOwj@TG^Qo=& zb`>}Lv$kH}_s>e;z&v}JbwIqq$idTr`A`Ma4B9^8xvo#o%?blJ3&?7Z>sVP}-)Se2 z4dhxw0Yn6lD4;*LQ-AIO8o@C{K3_FiCRtP?yq}lfcaJiImq|`YzDoX*ex~^X2Wec| z%i6|B2MktwX4YUL**7R#ct&Bp;s8a#RxU4*C6#fNzSU=|Gc>Q|l^QX$o>mrrR~&F| zrCH^ctZ}w`d1z^^(qrO)E{dUf{4jlK>x&2Mqt|RVdfub?qL(lF_3Rlqw+GA^IrM!vAtv>+GQH z^6c*HKFxi6TXu!mVDD^8&40LPR>(>^YAbm(6SFpzTk~w_C#wrIYN{=5bctq3Sf#R7 zwpzJ;>FnZs#Yf~PU7(FwmF|$`A0rN(qCDS$h2DiP(=*f6(rL+%2}mgPsrF3zWsjtu7CdjmB2pgJE4B4$ME2(W5;Ez)KF*P ztD)C88owQ-9~s|a1$<_xJNpPQ0}24P_KM^1fxQCsLHGdFVn?;TzKT6PuGr7=Vt@rS z)_a^jjgl%@A^B7CV$vqPJ#8YNb&$M(@fxf4y!r?45C^a>{SESMZ&g3xM}=0!hl+ca z)+jHOeULp?*;jqwi!@rO(Zp(h^$yNZJmADiYt1FRbM{bqmGb!-Gw@Wgf3c7H&|4`k z2tsYCnJL>^z)=Cl^LwQ4s@e}f)MEP{l@s>fF$2f^PymknF&=k=+yiJ^yrFoQX5l$1 zdoP=n-IHA)?cXo!o^6u-Hmj<~vPrhGJpb0&_SqiUf!Pt+X<~qvvQ(oT+Y0wbSFWwR zURkNyTQQEwvinOnDm5A=Kj#AFKz~qPy1ZlQ7IDuDiuRE!ajv2ySIb{|So18ts_j9| z=(Tp?iL|Fw|MT*#&Q)*U`pNrwPk&Eo=&nLP>-aFTAH_!0#=W@iH>R$w;%(QX?(Ip^ zW^6622y9Kr90@BD>cQ&3@c}r4^?c5i?Kk=-DIaWqwNA&5$t7|BQERm!+YSF`KjX}| zs-ypZW&48}_7Uc&BiEw2-L*?SIyw{jEYKe|U{3sVehvLT!#<(W4*rP+zy{Q*^#T?J zr9i%r`lXFprt$)sBo%SM3+f>pFHTr5IWd`SzGzS z8)Vm&mn~nV{pXpcJUfzIL#l=>$KDI{?V8Mw2FdqmpK63AvZ_LV`*dcKM*3`C# z@A$tn4T$>1czisJ7K-C9Q(CgTc=m{F`gHmKkL%qn+1VP!)G1phTSNJaTV>s{KH1?? z{U?hXPR|Ak|HaC>mHiaUe7Ul;=Inc@`k8)FlSc1pMBftCK9vhK`eBmhL+Y=m8!vT# zfh<4$q}NL$JtDRoC$=0VU!Z+qN_u#@RQf`4YjUwXtDO{Q8!x4OP(HGEJ27xq)j_8` z`iJVrS3{wJJXE4fKpEu`{Km(r^wD`5}mK9qq=7;?!@`oO<-{A-$aVGR$S1G?U75$s6xu%!WmZ@KG zyjsUA@&sBaO8r5yokj^QTG&@QV60+)uSwI6Rj%OuYU{U&0d5u-JglDW4P|HBmI~!* zW`pWAg@0!KVU7UC+IglCud1<*R6qInoT$r?RU-KF|WW%)|y>{yL|{z9|+HOSw;R962?^^sm6^?!$QdY=>W$BQE` zFLam3e}=OAUzFzWFD~6zrTK;W%ui8tZF{wYF4Fzm=jbQj4?mkaVuTG5HnK*r)YK^T z2CA{@u0i&qB5TMFEdau4MI7xG#4&7~!?jw8droioyU_nzMg7KWyup65OSTSNk=DXS zJBo-hmOuKF{zTs5x2? zHPuT0{Rss?UDBes!X|o03qx)4zpbp#F3JqLNVyyzYqrD}pK;()8vmpxJW0n_p{nT4C(V$|V{*_`2c&3uU*Iw=I8Fx~p`!GKLo@O;irfg^JScqcQXytZ@(d%cMZ>A>C7Arw(sOdk~zHNhBkF7Zx&!fd@ zN9Y4b24R8t4EoWGo9RA175RNieZMOx>Ni$iz+QR+>w7FsFb?>KkKF&@9%b6foNc-O z{@*D9W>RTAyPmAou=B1<*Btd|^haHSa4Q08$nVV+ju&t|wHwMU&`<5b`qW=5orzW0 zMEi_?^d?(7`JY|YE}1=iVs00HtG4kE^$U*E=P$MXL#O0y`2w4#SEiq&9c1lTNob~c z;905NJB9xN+K31YQD66B#UqNP(k&VlvtjmWHlWg?InSl zQhjX)$n&09zC=t=P!GW&rOlN$JV6n~D>a8sKaH#1QvLz zoEBmZ=j^prj{c3s`AQd++LT`@Z!VAj65;(halo63Rj#h}jaIHKQ(0Ph%R5z$mCheg znN?|A{e5*aJ>w?KTN zA*>BJ(n`U$!?uK1T1>k-`u{Dz|NAWAxs+;NoiXhQo>|`b52Rb$Sru?>_zC6#RAJyh zqBRk>p%)qEhs()Aw145xAm2VG(SWVg7Q0IYT&OW!GaD9=23R(kUo%n6P)6ufWeO~s zv`YS*JdrGw9+^%_x01enUZYs2$`=?VOE^fGK{u$+i@t$dgoH-2`3*K9b3p}pzg9oaI@Y~90#nkr@5@$(?@1Sg)+spfvS1nH~U0vE+5rTy^dS;a7 zAv;HGvX8i+lX?v{7ay>Zix1v6)%#6zypx~Hd%oR5`FeX7FHlDB4yDPZKb7AqZ>)I# zVcDh1*&CgW6DKuSmg0Gpft6v(S^Tu}yXv-jqBE;EsZW2TkpEcqL9Neqiq=A#tXU6d zDN1l-`5TSyf4bPKIDc`Be(R+|{{`~yuaf68TwM5!kpF_L|2>5hHJiuO^q6$%baZlw z%IlzHFOBS7HkmTJr@w2C{;sp*{f?!3q@Uw7sBdg;c;B=D@a=dXn6Ft3*npP6oLyD` zfqsq)9OG;98SBti9Dhz8^;=od-WR3#_Rv1A?afgoTchw6cpCR6)yMaLAIJax=YHy6 zZLQjK2A8eB@eQNb`~lZ+SbE#~@b1`a2H?LL!%-f$7iyeV#XfX_R~R${kUiv@rLCbi zVSrA0sy)>!c$sE@_(U^M|4vq7VdV$Cp;3YplqvXy#tC#w1|(^Ebox%ZqwqdnnJrV~ z^FAmJ7%WT3dP2-2e6v{Lv%<#3ON&dF9xI)qdBo;6w^N~yG;H16BW~6R{qD~TGyZ?JHNMP z=eb1ryU%HM-U;g08>VrM{lrWksF%M-<>TzwtU=klAD8woeNsGCisK{Mc(NeKfw)>M zFhso}&nvrUk|H8wG_vo+LaW02>4oV=8r5@;qJ1YNhbZ2+x^&ci%Bx}3&TVD)yUw=# z?(HYj*M7h857vXj(QaY8!@AczKI+@;!lM8a=@C_Z?veCu}duAh+xKep1XvZCh8Ixbr= z8(Y4jd~~^Yd5iLj<#Ksy>E6;wrJYKDC^cv$qM_oI<24U?FLA-P!u+<18tkr_2hNc1 z@OE+S(($D!rESV1%Ijw5WFzI>e~>MvHBJ9qxk>iEsJ^>Hr9mDO?w_qbs`dEJSH{xn z)wi_LLA%PE;)>sAPnP$R#lNJqap^VbkFAOojpC)}bD)0T^-?;wYp%4>>fM{HD9B`a z{0}GsxOL(4^eWBY|BW=#jT+PYx1_J;^O#@R{TFKtT@T^DvlJFSKhgdz#kWLY!UMCH zZA;86HAmez^Pf75_CXDX;tM5cb#DZ7B<+DV;#i(Nz%3Q!yHZ+iDUCO3oIImZAU##* za1AlRPzhYacd~`xJ3mXb+xq_>uLQd03~zmA_6~2&d{C=vUVTIB;`G-TqBhl4wA#RPnqhEFtu}CoGIBOhzx=xDqiZTmRAX_A(l^CNi>GUR z@M^_!@jb=#9#D*f9?!vff9J#cy_3}6F;l$vjFiqX()^!kK=u^*sLc_F3zru$}QsOSDR(XA%hP7AdRViGXGkJsYsSNd)VY^O2~ zc86!J#cbj2>48;hw^p;pKlS9cU~d7GTTNK~^V#P)LIlsF=OT-Uy@7vfnv4$^fc8nG zr;}R9ftus(F7*pmr2;mNFIzx3U-r=ng{G?(SuiU>Zf zIQZ?dkz@7~*qrIpHi z3inG&?GMS`&X!XwfB(ukit05~H_|=+qWQSa*DS`nDIej@%K2K~e5PhASTh@4K1_N3 zqe@3;wDKDo`Fn`^Ay<~Y|4_eVjCwjosAqGybj;n_hU)z&`T4BU`<5*KQ~HH{3ab`g zOV3koUt{(2-H}|HoRJ)()pDCEx1Uv^`)ZsFJ^VGh?@@l}e)p(>di!G50JgZ)oa+l# z=TqP^knP&Fo+GBq_q@_hc<(qNwY-_sMj!R^O;T=mQ|0=-Altu-?oKd#wK^AbK%nW}#KZz~H{m)D5IuJY)QQ*^I&HPfoQ z`&LSoOXOSJRo=S%QR#}()}>S{8~4xGHf|!!6U!u$al5qso#M11LjJwN{V*wj$E5?N z=2rg=aoI4%b`ZdbyKSJ@5wKb~p3B}g>3Hv)K-q$tP{HQ8h zeV4Xl{#e*h;AR1T0)=4E98ayH3|-H``mTM~WV8vl0*;PZe>}?PLizoRCu^wo#wzQ# zm+G6V8TD2ewm!5T`yX%ve*gE|YyI<&T>@wTuxbXTR0CP@|3xrQftf#GX05i{bR_onOy#i-ymXN0#-dDfT z(#jfHLbHcVZ+J$n{5j1P*(SL&SyvfC>#HAptW?1JxpjO|h`A$=2wpB0xLlq9+ci?r zPY6fzD}r~XGIP30%eO4wS8lG@-(r;`)F;qb*xy$k`XRE}msjsl58R!4WxGx>`hJ>o zsFiH^Qq}o1+IX7g9l54*rdBDvQ6rERs&>{nmug0mla-sle|6_-OZ7IsFR#CYVv7f4 zpDV7obos7Q7wP-^izh2)u!dIQ{7`%~R(y3=p35{?tTjkXb*u1ycaHu0<@t}6k3U7f z>OE=xar*W!&E7LTy-13G{`6)2`m2TgE9LR;E_MBtX7agMz5Kmr_w<2&#`ciikL{;? z(OPZwigmS@59+8T>v3boLPp#A%Ib|*!%FE(_p+eHF!W20|j32yO5wwBA+Hk3a zS%oDvBJd)`2iugc(`e#j%5STuV0gB4W$(&$l{YJER`;r&t}L8~6svnxvBFmsF?do6 z;Z9`|+*!R#y>ypJH5?{ZI7-ok!HOe1q$01H%0%`S&jKmSKcj+uJh?2B>KSjsw4(-A?^Emnf3Eu)MdbqJC${_A@Ijt;TB6 z_wco00xJ#fU-$d}Ia=q&-aXY$HdnoY%U}T4g%w~}clJ@U)Lo7JsW))#$S`dr5bu6J z@3Fpc&Aaw(|FJ_v|E&GV^I(hzkwBsWowaq+-!`&mz16nQZy4F|X~VLL2(BhAP*v~N z+nP;ifuxnjwtTELg&x*ufjX*vRR@eH&H){k=vAU|p6z*9)xO${!9{ii;AG}uE zg}JTYv)V=ZdQIgcOsHI3>8KS-ZqO+HSIYYrTGo)5P{tbmA3M~pBrq{~XFQiXs=B`tf-E%_n z7yTWod3;vWs=Wi%ce+ci_syJS_t3xRk(gkeNDCW^iyU9}vGL!Svkq`w!S!Zr>op_R zF+cbEP}8&qw+Cw7x)3$Fx$1E*_2uICuceiRo|TI0rG3mrV|&3h+=^&HwmB$BuDWqu z`Oj6q|G%@y)+%*+_+ull13%8T`n&ZVHAkJn1i=8d39vt#qx;l0TF*A7W-lWCM+^W( z>UL^v>eWQy1R~aq_;RkAR~5TX`J->DXJBEC8Co!zPb@H>`UuxZdZ^d?HT4QynidM( z4nq%)~q3?RB0XzeG(+4VQI7SM)qFle-ipxJIe2uSI&B5=W2fax3aQw1)3?ox1%!mI#o8S{Gqa-<{=-NouW*gB)hfTv%GkD zWa%Ky;`OA~R0dR{u8=-xXycfBuP zW}2Ab*1~ax)`e8_b@okvo4%4G|mKBcgBoJNLwA(|)*S?ECMnv%Y8UmjEL$!6&t0@66f%usd~4-P0nbTrs?D z${jSXK-2P4!fY6i#Pz~zmI0^ z|5}RZTq&bnggESe^r2E(;p1cTvG#ZXyd%PbPvE}!TK^mM0fvoa*EtM83jm?C3)+C& zNDcpd>o~9Lo7w#PX?6$t`-jpt0UOpW|9{x>*O;Z7+6*STC^v7m|T%FIX+Y)xTkgU-!m1`Qr%AB0Oor_ z%c2oFw5MfDLjQ)_FH?4a4LZcSz+%cecj%hHMIZ>0uK zmc4ykm?B?pnw0e*j^>?;L3mjJ5RpW*>l&x_qMxj*P7&^BUf~uK2rykk>~Ov)@R#av-@UR6ae2k{%89Shg0j+ zp6i+V@jGhRmLaTwTLv{73?I3J^y+pI9}QGwW=Z)ai^%q0pq#D_dKU2S{^p1mxlPrs zTG#zGH2xItdI@XPku9@p-~4Q}hUaEqA1qUM_7ZvTcEW3*-mQr%QuDSZusP0KK1zCEvKZiH@xhDQUXaQjCBzPseZE8AJ3?^1IN);i z9$uV#3CuYJAKWe^4;PjnmS%ri=Z($rJU-VHPYB_|<;&k9ALFk4KXLqfWc|s~e?b|0 z6Lr_ub@$iw`ntG?k<3rX&a?LMIhw2ESm~9Xh0O|CVT7K!nKF6r(0o1H$$wr#zRqvN zZk>{z$?o#^w@^>|ME&j)6cy>LvLS;yG?INO%FZlGxte1m0to)m25_!zvX!0{88u~= zj)-4;3J#!-cyAvL&Tx(6^R<@kKUDoSZ)nWMii$}-tN#Ao^n9?4YnXFuy-9IR+Q}w$ z+y9f<{$QKlLKvCfY&HB_{e|te0&t!C7)SqHm$VDeZ|h*bx1B&qu*F*N5iyKtfqg@t zXK&T<0IOA6uUk3zN9kJcc9%zRg7V8A);NK$6m4oIbad8=wmYgfyr;&%{4KdY8J&Es z$iUH>P2|&b?ZR%#mcLvW1(g$oN~3YS(DO;pN8d-CMO4qIjC!Mf&Dq8-aE98*P`KG{a=+O`yWdTA{DBgr=!M|`~W zz+36knjhzn8bN=hto}pt4xSP|pOHo%rI9vIY5TjF;8E#Y8@@uWCqr2d$P;}xNvH8o^^My70bg;p_C}^r7??Me@(pbL^XLsaZMa z(`elZ$y3Sj{M;Jc zDi}v-^m8nmtpP{7%{ZDs>#>4ZPuOoZ8~>~h?RLPG!;8csd1XN~EL+SLg4T7mfLEs{ zj>UKFrGIx+RN&Z#%Qch8n~DmqqIh6uvB37i{+d$I3n>3=$zT9_td*MK{}yd;SYt^m8rO0x`O=qmy(gn*c+(+`@brZzoYa@ zQ|0R~BDMU5Mm&$zJotmPF3Mo#Jbj?C4(n^i&MxZTUrTc%jo1Do^Q>Nv-6zJ!Tub(t zh?UTN)W5&$T0{P22FO?UowB{TIzJ^ocas z(#k--U!QvDiBNU4gs=&21HKbaiT3zz>#KkI=}TZw;Vf#(EyK|vGq=CtJ&_#SacUHv zsI?&55POxhAGaQSzjYg$=V#SagV}-T5%$O}7*$Zizq3}%1z3He0x^=sIfU%pM!n33 zsej;R9Oer zQsLv$kCaiohWzl(g&u{z@)fR-#eYT!e@Br(;`3h=K2@&qhdI9AD|{fN|3j}}eb(%a zJjA!f6eFbf_bDu17_OQ3E9r3cPVA;u|HseUtvZ{X(h7e%C6l#Jvco%y*hn7{V-jz zu$}thZ<4Z~ETn&=?H}r&pCx-gQMUgDc?%CHa(J1dc&BJB^HUUOJgIQ7V)!c-rby?n ztA6`aY=`oFXDC)^N%6Dm@ zC!ML|FIIL>Z{_oQGGv^C@tG|5a*l=&%WfCfcyLK3!IG+{A&DzPR^r_ zjQQXMb90RcxFa^5TBY7ws1|mWr$18p*h?tScaq|NN6Hrq z?b!?vb`5LgcozOZ#JRD7;J?l6wuXk_`>oVNu$yMSIJx0QX@QwS)N(>Uk$^3v2{w{# zT}hTIQ4ZlO`3p0o7G`O-u_oHzQ8D&Ilv{VEM%3Mvj8DqxX6X^>of>Pnf=1f!r|8|$ znrG`kjlbKqux+7Lp?P7sLRxqueO7UWLFrBD&FSEDKzdr*OQUmUiBo#0XW|3Rd^22; zF%W-+Z2V=)jJ-gJXBA|&3&jF=Dzj;t#yTyjNPkCp`&(<|y4dYglGm>!=y4f>7~p4_u$4+Ux1g zR2hFG^p`cW&!t-5Wm`QTT;x&2T$9atBgX&w!vDO|&g;+dKb1gt)vi5CqrYbN(FI1l z6+gZJT;N`#h!4>+K|aS=D>zOF7c^H402^S%0GrU-{2!$n?b*Flj&Zq7SrgFy`E#th zWqvN~fo%%a&_;2A-P9v>s_=Dx!)vlo3&|5`ANV@ zI%#IGKUCR!%z6H%Wb%J~A9{+Ai#!)r+61Mawa7j55PYEC2J_3j|U)YA5 z6MVe=baOPd6xZNe*C2Zw&E*?2aw?(?xN z_@CNbegC{w0-c32Pz?5|e_8|oV?2*7zO%X_0)R>Y*I1{p9gY% z@Kt?1TBcjKZ4~VryN=DX(zOTcIJePn2C~<|S>_N{jND%SX&*%gFUsR;?`u5qx{9mq zB<0^tvt@KhHdMTD3HjvTXhgwlVu7dBclAiF((jiKF;-kql-ItQ`V{t6pW?wuKSl2L zRG$JIvWeo0%W5|3ZyG+7&X_JPnI;84PI1V)8*Y-d$IhQ8>|d41HT;`teICaQU9xCFY(>M(u}{bvhZ)B7Iv3(B1Z0KVZ0P-u$+7tp#Q zQb3EK51?s||K|FJ_KKFU&9Mb{EFd(1v5wU<-tDvUG~5F(CE6KQ#-4=ZV4Dj!#0ptG zrn4dgdq_?9Z@5)+(9cw>T}^1~t~qk|QNO@$;(`u}#V;il`;C;shr;rBF~LY}k7#|e zM-``gN>Ta0OY3^iL+azYU$L&c#VR){eDaw4;0bCZ>WI<{UN%-ktHa{V;z9Y>IKphQh2jxM z>X*OKu&}ax(`1x>X%9US?Sy9t^wSoMeO|%;54X1ZxAS5NY^$2JH%CjMJKgB8Gk z4gIt&S|II=&F#wl{f_>uBM!g=;7D6;pADu#wc8MQrzP>N zD{a@&0s09&vZ$+CX&>dN{zZ}YVH%_Iwer+gmsanX_ZD`@ql6pEs<%)!;Tp+`YTHec zf;{ob^5LIQWPYGxb{FUIx{DOAzfQ;>sJ|NYd%^{6}Z;m;)&l zmj{gCxF2Q0FSg~SjvTw8Jng$%w;P!#efw)JEqEJUW{grR<_Hvk<9J-(tj_4|?S=k3 z^<+2Yu;MZ4l|MnB)Wy>Sb zwM>^k@URrbAaTJ6al&h2hRKQ??F`Ovo1GdtGl94PF*|0oy7McjwyJRWMn zXoVdp6G{f#O$|{(!K-)yR{G{i`*v39;M8>mlKl+~z%{HXHWe#%*NP2yst0qaytkkJ zzMb`~)?C3Ht_A9WSP$F3($4C~%)2GfRXUn>MOzAuZy(?K-7UtkUiTDm6dURQWP(i} z>pb8&@$a@qD`lhIMjoQ~8Tnj=R*NNyHccyMenBe`zBk`&nBxSjc%A`rQ0?du?J2My$PUX4PuSXkSt~@Y7pOKjz1N?|}t)$16z0B7=T2fFmQuza#VD zKWw&RHn1h74gkjxKtbB#7q=z0WADO!D<3PV-^-(`eWl!PAtuXL!MBD4OmZaw0f@oQ^B3cF7 z!1jgjus8UHj0Z3S)LJBMC*lI&-WWU6FR^)D~dJM-X zLw7{p7jTc%{qvfgWU8V8@8|4%l(dv%bNmQ^NTFs0TJjPeMZ(|4}AJHEhB6Q7bN57Qout7!SyZK(`+35v`|YMFQvcM~!&jm3GRV+2?qH_haKg82kATDzNw3zl(TV8ex1h{Vx8@CdrTd#%tpGcdgOY_LpW4%{o9nM`-D9C+tjmvqBQ*x+WIMu zu)CD~!3}>F;?GiK@hthteKjV5%w2T7Z9Vw6zm9T2_hbJZr!?ZhHRuKL5zXiKIR`R+ zmyyr!v>N}pxB~BL3Z@{x#sM>;bHKd`Ib+u6s0&yKGB4R2IWk> zFGX{qSZ#a#7DkMlN2poXyfxUo(pKxwF*izJ7a?hjyzbquKqqa;{=EH2P|rSEoUJ*i zb}SJ5uhp=o{>TMrmMeg;L>$ABFox}YwB*pSFpK>UBRufWap1x29G&dQm3snVfDUTQ z%vAv*(aNo~$76}i5FS@Y#DJsG0^V;;fR13qabMxQpVTn3ZnCysS8)Vqwv}RFEwgTl zEXHb^@Cj(*bEDOfbplrcnJ6_j zmmse$J5cR;nXSSc`3n!rXS%k?^6e>}8=~HglF&a>k&IKtcFaD)FEgWr-FFW{y`O(> zU~XQ!=5}hav`0taz7OV`IW@ z#XBockQA6_k0V?@HtZd08BAmKc@K_T<;S+tK0E=BBt`{*AHHX<5x(JjYXw_t&hWgX zL=Eg!kfnoNM^89Ux7BR4!!z!W!zT|r&olDWw(sx}x&SQ@cAsAa;%(hw06ue;tvF|c zy!eH1E%-+PSV8#Mu;ZbdxDr^6Gl|*agTcVI_x{$*!8O|p>*q-Ee5jGtMa?~Qt0JU3 z>vz}Ki8DBt+OPNY&1)!~o6obG>>V1=3KT7g%?>S3dvK0mcn7fu-Pug|U-Q2_0G~;F zgGFec=8CZFV4gM{*yp{`9{4w2!tU8-@*PY7iiiV7d>xFU15n_+xAoOl)S+>$rJW7uo@mZu<9gUS&LiFq>fr$} zZG@r;K&g>#CLlTpE3l96K%_N#9A&=%-vQ)1s&D+m4B(%0YWN42R!X48z4TaWkm@VD zACKS5@50veN7)(u<}iMTe~nARG)u8}*4z5M!A9mZhKh%|v zY%QcSoA0aA{jA46T3-MD(*3Z#*_gY#Zms?1#r9c$rnz4N+Y2MkDYNpYbvPm&EfD|T z96&qFM}W%qqx+5i8gIBA+iHc64`bNgyJcGqW9N)>TUPLgt=5GpqP&j?RSl6@Ekq#V$`$ ze$O=JKrEo#rAL()!T3J+HQ3ki)y?X2zm?VRFfW(D)@rr3HMA|a+fbPxKNJA17W@bH zdFT9aS|}}wbFpYx?)c1=tZHr1v5tX%=fl{3dLQ^fJL6~2p55lH8Hl>slP4x%WpAG! zTW?RC|9BE+1ysHB?93c|;#i^tfqtxgtDGf5%Ud&WWu6;b?ub12hX-H++kY#5?q_Rn z8_qBA9%Gf`tpPx7MCYw5Tv}W+jtZ+!8M-`OE9`gaT2YxDf|*@f8|eBS)z@*JGW$PJ zUw@XoseI?-71i`;(6IQyF6-BO`G0Y}{QnNq?4@Wx%N)7JKd7U{hHqd+Z&af9*RKR3;<1oH&`<5*B{^!uHa0H}u%Y`wXP z@oq%7(ivtBs{&ZTu|a$Zu8bY`#&tLv260S}Cj#~Uvubgc9*FgmgKMjF`|zR8?ZIHv zts~qc5b+U?GX5zSGXU3TpRdM#bAZdv@w!@RyKlx;9Clz0pM&J-k8Sw2VF8Uteo;Qa zq1s1zx^^PRlKa(X@BMeM@=HCZyU;^h3-6Tn9=(5#2G%}1=4bpn{!BX!>tcIl??n4APF4Vx5oZ+SI##IP!S*%e1c&9djs3-w;JclL<$@Mh$sNxTOn{J zJm6@*6~280uJ309|L()L0>E45+588Z!Kr_nS&L6Rtr@|;7PR_Ue!I`%9r2d+^3rhL z6UXrzeFRsEJ+6yTRU891xQ^fn@bAoRJdO5>?jNrx|0Io(UQlBlMk^b7e=$2*!`y-E zat1M*dWO$0703UV-?g1k6IvImMNgi41!#MW)rnrdU;ugmJsQ{3aEx5vE z&3^9SBdow&sy-5)2y4E+o~NU-9WT)6#ZNV|zj5-OMnRmRc@sM7X*f5Ol*bDHU)o6h z++TJHbP;xJuWc_ty#0H(Tx^M36tQRUPp%Kv#q40r+Ok=-x^3HsM@xel@Mc{d7>av3 zT0rZ^mjG*_LL3LQ=U?*yK&rR6s#OBoAM0<6Zrt0>!ww+&1Ya2s;8c*Aw=? zkAEZ9Sf-_#8Emn@9k$dOA6yz$=x&sNkzkC47tEa+8pgbA(f;Bu#0<2kMmb*vEz%0mg* z({Rk3GmI>lfO~L1&ct74CJOK$y@%Yv9=h2AjDv2F4{l)ztUH>Y{niZV4gP#=#1V~p zP-X@K{~XWN?C<*?#y?MKuf;an&+I-=IMG_(OlAcT_^0&j6U1w%`>@RZy)G@v8^n`G z!TtCI_foDA>*p?8$iLrLBO4ynyavl_-h#z7y6Uq7t4%Gg*zp}O3 z4+u0StvqRUZp&l>k_j;9N&>c|j%#C^z%eb_(L3t`t_MnOLu>DCON~cx22S|z`~*h; zz?+%ESP%SzaQHx=AA$ztNmN z%Oz>@jQaj|mm=V3^9`l=$|tjzwSZB~(*=UfbjCctEPQ-^ z3wHs{;lCT#C<*^wtDMm35n&1ZbC2-<;aA_awZXWRT< zJO@2AbEh@bulj2&0cNnU<$(o21${~MK7$_HF1KAbW5cc*bufT!DOjxGA3JXK!G1^j_?ooUXio8ynR|EwuEMVjHgL28 zW+2{YOU-w-+-63ejMCuyh*wq9LfH`1JeDV!mg|QdffNQZu-vLPG zPS|6kmZ#%f>wYtk836llKLNE8_~$#~6QOmCSbm9n=GpJ^@?DH)vlkwP^R8Wjpxl`E zuXIV8o2(wtSKP6k(EnG>g8oiJ<2=9rajjIax5jdruPC*--45#4|MixDF$D_1w%ab& z3H)2xy2XPMBbHp^IorBF*%vT^%mhB#_&55o#-PslH_jr14K2*G80+>=IM=A=KiFoE zV}qeR?A_xNxW^zA3imON!}440m=An?vjd0+qk-)B6!_)5$eVJB1eRSQpA9-F=Y!$)RB?L@Cu0Z zQP^j$?Eh8<@Qu00>fLM-_Bvyb|K-16MI%&VOckErn^st8@9?NJePs@&P-O@oc?~H%)d~5~7v*1iH<*V4j zy4PVH-7ENjF$36t+ijjGjx_$Q^KJXXwiA_izoV_ce+S2#ceq+St)Gx*ab$q!F+M}N z#97utlz|z*SO@>)N%F)T$+><)GZuHM;h$gS^LY~gsx8#lx2x6~x=gzN@0!zRvPSp5 ztC@>W(a7F*b?nb|y<12650?Oz+xRznY!|I(v2?cfv})Tx;~rj`Hu1(z=I_Xhx5Z^A%2C z*Spu$+yBG0QvbGI0{^)ZU{tAXvQcEU9k{R!jn?fW0#on=m_#dM8I5?e19&s~!uqZ+ zYr3}n=0sWC%RB>Dgq{agsP@3HnFd_DPe0J?yZV#y&->s7o`5S@wVU1S%{T%YXa?I> z27JpqUSUShmJ|_;@E&|6|3+Wicky#@H0$*qsP%^))jEZ#qWzWR!-iKhzW=p4_Ul%E z9xMScLaTRaWx@ec&Tx6+x>se&i)+k#5`2?ufq=7LWV~` z8xLfLedj-jG8)Vcp^aG+(C-~tC;o5y4;v5*@Og19NkEqX|TwK&f#W7hHcp;IWmwu)~`Qfy#&5r0^to9=b*~g z(Rv=l7-d*h5N9QCBx4_m_t`4|E#7ZiYAx+K2v7q)4m9~ZW87FZ{$UB@p1X1HV4s>w z;jF+VY+{7NN4(>ne$vnrd}G$(zP9BsUG#nO?EJ-XzB<2vXQ};Wo`*~Ye3JHx^&h7- z3rB0U@<#Iczh9>H&-D`cxs?Dd-N-aLz`rx}j32N77x3yna&v)^8K`3)$46ho22ujd zK?45W2kEnHiQ}5!*8aCWfY2SrpCfo--2?x&*S7fFk#}rd-=2y;!8d%*bAs{kK=_ru zukr8WTn4BXo)|9TIL_i(Smj`A_2?1rWB%TsTOHS*w_XB2TmshIW&rE|u)Ma#Fa($Y zIUojH*t+u0C^7o%Q-h)+N(;OATd zfqx^x=l~bCj*;(&e-GkqU2P?e9`5%qD3f&%`}hCehp{Vk^eJ_ zZ~dGxI4?ZAyC9s8#uYpkv8`tB zoEPe&{tWdJ_$f*NT!LAweP{x#rm+gvyw#2hwGQ%}cNAHH!5ZcWFv(Sn-M}no#T9JT z?E%DnB1UL0gtLMJ;2Cp8T+2En)QI<5vG4@s{`;43P4_qw-{3p{nxCS)>-Vgez`R%j z!2zJnhy*7_EB2CoXolEp)ouS8q5$LovqWkhAn@ndhl4Y+~^Ezbn}O= zS&K0G`Rw6a75Ft&fS=WIzL*`|5l?aw!2i5h{`F_7m%zMG0%60!qY(^dLIYr3{Rd)= zU(m-Wo0?wdyU_oB4~E%?UI&4p=L56;7PhJBe`|W*jb|Z-7IeevvTkyd@bf4Eqbs}ukQX-ED76I!d&~&{{(0xKK&{__?AX``zQcAKy=ELx z${pf+jt$m;eLRu}{;*GPgmVRd%iUlBUtv!C|2#^&{*?6+m{&_6X4wiW?RYvF17JSz zPb?t(0bAwZ0^^^3kpqbR$C`tE`xHj8)dBp#cUXD9<2Bd?%v&YE1u%lY_4jZTSDaVN zvi@B468Jfn0Jz*x(KN>IW0UFE_lm@Z)o07MCYekE3a;(7`El1m`)4{mGLAFItLk4)TH f_=h>%r{G9ka0NVJt^oh>oi+Y1x!iu8zwQ44<2XtJ literal 0 HcmV?d00001 diff --git a/test_images/IMG17.dcm b/test_images/IMG17.dcm new file mode 100644 index 0000000000000000000000000000000000000000..c65d8364099fd2ea225a7eb6b982c51f8e3658d1 GIT binary patch literal 526122 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 z�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

Rr2MJssXTc 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG19.dcm b/test_images/IMG19.dcm new file mode 100644 index 0000000000000000000000000000000000000000..e4aee972b85269bc99d4c557180eef7d879cd544 GIT binary patch literal 526122 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
>{?b`Tb@{Yd5ybA` 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%0D1so|MwFE7%U{;-g!RR zA)BC8iIx}s?^KLri*zel|FbB=_`JscUsI8PbA9~&_WXf=pCww~&#?u96M%j;c#tcF z))(q;ldOG7jO!>>0Zgwdpc&+geO;RWa@AvAqimop@~V++8>z zoB(TpYr>uZsuX=Wzq~j?t9@-(9WL&;OL>Dops{)|?x-Qx}Wzevpg9?iC4TIF_J z@|LpF{;WCqmg@7LQtr>rV(iRm+wc4(gT;P-qaS;pOdsRkIX}E|rW};1Dl0K@{e-@IRy?pVUaJFQcCVL4ni%SpN`UjyP-(5iMvon5?06m4iGgL|V zf5ZRaZ;=_c0Qg?M4cmf^?mtujFDzW&+<7e7G&@_}5?7G_?_O0%Y@2S~=>HGpr{6)N zUsKm*Ev*Z(K7Am>-^Jw(h|J z+5`>4bB<{_re{2OVdhyc!XB9QXvSd2Mo8#3I5C?o03-k$0Ca=&X|+4g&HM2QgijD# z01trkXpDcy%#bUQ`^&Fc0vILeNAxsv-;AH0C5)Sy-&4Mjfsz38=?G+B;0Or-=FFvu zD_FN8U3{jl)(gJ^*TCoREIy9m7r9b!0Lui%$rV5X(5);YhR!L3X*iz9uY{k$(tz)a zZ{$0B#s1GyZ<{f6d`zm6dw0gQfU{(%494gTo>JVN%* zUz4@7Q?&xv^2LDS;e1NAd%A<7f3r&epQGHRb@Z#h%>4!Nt5(8FaPzO#d8Pq zx$k}NeXrj8_k8>@bLPw`d-ht-ddlAW(Q2-?b)?*Wt5F*lRx4DSlv@_#XGH+00dh64 zdyVZmxG@5Zc&rI{z#?*lV@&V>n%>rx{q!u`o9M^3oVJP_2WE_X{{{Pj|EQM*@2GyO z0bbiPKm))JQA6V@8X^VQf8!;pX26W`4}Q?f#tGj0Qlz#c@M9*_@8eR=UF$uJ3p~FUR8hN zr2U_(HmHBB*Ha(bwz|GJD4(hb(-`6Z3XS`@D;us^|5i-5(c0N(DZ>4-Eb8~d|5?h@ z51G}kQLpyq!9LM`B7fww*=xK<)Za=M@1On5ePzvSTez0`{V*}hjg9>@``?Gz6M1Jv z|5qs<%g@UePCu6Bu>Gh0kI_HIs{M9H{eusdRDNJHRnh(WKjrEj}vAdf$8y z=qGOCx(QYVCMW1^h(z)PNaWIbs3RFk552bHSfEHlG6JX;%c*5)EM%>Jp3#AMO zxj&;Gqy!gWCxi2dS^QSLo_hCo&0}p(nbC;Z44vgLdN_x94E%#fuw;(lI`+%KGuMV2 z!tY@Zy2$mAymL$dzu%nT31AB7|@GfnrP3+XlC-U*A`DDpt&Im+ya}qJP(@ z&g9l?|Ll!)fpp#EA=&(EH7Qc9moeKXIJI1zh6aTLHjhR3kxPBl~al4{EL8 z(F45eC<}UT<3Fza58Lm5Tb0AG2$sKnlLeUloA{qs0G^oi%#O)BNR{*|Udi9cPDl?@ zJ;Z{^`>NU5Ui{@Xzn%F5%Z~8jDcR-^p2Y;V{rEyKX3T^T9I&Qz#D4MsrYQF}QTBhN zRz;XAombdrHQ=ii0k~W%vMeGG;IeYtdabtQ+m5K;sm`g^sBS9X(9FaqXk^Fl^tALnkMN$t@(Me>e0T_?EIgJ2lfDlz} z(6sby@J)2jILE>}Mu4^VC+LEf-wz6GA@ToN1804WvcI))d~&D8*-vfazn}8#2WMYs z^$%A6!vF6qMeh6`=m+_Z+<|-WPb{y8yoKlggHiuK#Xj%IA3FQz$f8FUc4%6E@ZVYY zJ+3h>Sw7QjWa6d1#f1N@Yzo$!{-mqblm`RBHx63X*| zuPq)NrLk78C>wf?VgMgEo=#p-4bW?f09+^gf2m@CA7q#0b@`M^%=)xlp~|gs)t1$V zWtVa%wb(G>pI@HnpCiEZ6#Aq!v$bW!_-!3*2|*A24}QSHuwhxThIq*MnnVM_&jk1M zQvL-KSTOz)|HJ=fv@A#t1z_}}`d#(sh@ky}U;?}W*UmELFDxi%#6m_bt}S!i85RBL zlt2y<4QBg=Gr&JN5&Zu}bR4Wm{tsqg;~YF0&l|pl8HW8<*|yc3&q()k(w=^5Uhy4R zC0M|E!1mvBA{hVCX1`yK_*s`F>R?LOW?^mSW5K0zOl1Hk`h zC7@x7|J~gtdHuEcFo?`%!AttExl#`nf;@KY%?~x-7Ne^><&gCd*4s0 z`HlY){=I4_K7f%AlQ91$_TLpi{e|(7$r4%ta9LF)_E%nVW_E6Rl<+@))BbNKR`k5z zQTuE3!;xkHdqePFJUh6zFGO1~7K+)>SQT+AsjU0d=C5dG;gQk-qmv8M!!-)lYd?B`_r4U+V!~q!{4Tx?6ppMgeuGPAcy%{;BnVIyHa$_D%HLW5kNtpEYufaQcq> zmq!5EdSVyx96_&yg-k~-hqEs0e4-TV*srPfb0ACYwzE$ zUZGg_?{5uE7X+;8XB{PT{DiOV*PsP11NS;c|{JDGu`Tu>2OY_aL zmy(Bt2uA-K|K$G|n-_BcS^x3zcB{LwSRFIIA%Hd64d{868ns7 zoT_b|Hk7u40lcAY%$=ao2!}Bo=i`~dI!_*V;aCLzBcluE%ROduIHO_Ez}iLZev$pbqfn$n)FggMU`~qaJhx zss9V|b&561p4Br|RWDl~SpQIO+4hh6>go$sj=d}OKStYl*_ekFZMrV&oNXlw_kn!r zPc@RRpXvZE(HK3({SQ{pwe4ytd%XL8%_=}@e!#!0+ROzUZF_G#@O?gsdSF%p87AHS zTw_A=g7E)jQ)lc^A#bNqNduK>PxFcCiJA+M`2TrL{4?|4Inf(uF5IAplYj!Re61-<}p|x{f!uznLsa< zhjxJ~G~U!WfG>*ks~77<+b*u>tgq3kz)MyKlxHetx}kpU4$U5oWq<{2LqIH6f}S25 zpRvbQ(Y*~MQF+cg_dCAn9tY0Ahpj9<8_nOcXjTixEm<(v#^M1KQufyNo;%BaKl{>V zy+5{}900RrV(~#1_MfvGabSomhXS$wU#NL+W-*jKI)(dpRRFdf{4dr#mtz=K{aO>HO&$n(OPy#@xx^q?6SDvC7e{(d^%#7u%1r zrw6;P2L-UwzwJTux2pZXf}?-%N5lr`_b>txKvuz?*0>>=u6Z_}&`R5@6|8O7GrLXm zYiy+R+WQCfc_y0yzX)0e;NOLGZX~p@#q3-0IB}zp{G5oaai(Qx~;|~ ztfjc*=ZfdtlAfW}3Vx&dzYCi2f5!g10w|skyqhhJ`CvV~0CNAHIf-_(3SuNA=U7`g z0A>Q2u633!Q61n9jVF_5)3b#CC*=E&l}a0{(OGNedlaQ+174!-`MP_3msW5XTHRC5 zC@Reb)>}TH`vAS#wjE?(`C|`wh6P%T5HUb|2UyZj3f2qsWNeNx10zsXV~tBsc5em) zc*e{H*?|0tMU= z_K|1f-Z;l1&F9BcK!Jyi<#-s5`=|EDt$^19292w*yMAV))=$qp(K^&4f@P!DoZ+ZI zjPr9FqD8_-;=5RO&hGDp^*6d{J&pnSe4F3FJmUM{HG9p;{3f&K`cZz4`p3!#RQ`6< zd|!uXO#K|?uQgue*LC}PM~(Pjxoyt2nbqdX{Qsb=5_V;b@IOi3_e>}JK5X{M5$4iO-!vo+S4rDb@#taS9{6*Kw{}&%hUA)vdAvrnSQL5~D zc>otRS7y0da{+yl|FQgaUC9I3Ni%_*UF}kRuNdIEQgcHU13&}X%F`pjgL@1X!rTz* zz?#^e0G5US-8+AZ|JG-=N1T&>O>d@8yXVrIc}HbDBVehBrzY0xXA%#jBFKMT{~Osp zs)bxNi@qk-ZzO}zK1o=evM`dYI| z7JKB+$nu}BZH)BgtwR4b8u_zhdW2^EoFd1pzvj{XNU`W`o9foR+x8#C+ruZm=Z&mZ zjQ{gY|Bm^&$DIj zTdV)Im-Q#wXY^YEkOf>)Xx&XUGygH#|GiI*d(P=mfK~)l0Ckq~UGICMz;wQ?F?AX-pYs)(#?gv8}{rCbNBMJIxGi!aXo7PKDW$RB30Bztk zQCJmiFV!$jQw-pKsf*hhLy`gM^2*9i)o*jTczU$r0IzEwpXZI@^^&m3=>cq~oEP|~e_#>p*;*HSAA9I6d>Y6PY+x5{&FO!k``zb^iHKBl99+O(>?1lI z)Pj`xo2Vxa;A&uI1F?TkgwL~Rq5hpAAV22OGQ{|uOEd~XO>*r65m}| zXL~K&9S8(LSY^lgd7e-{*niGx^no>)k8cO=KpwBnhaeBUdSy|su4T2r^^HsOQ>X%K zd*6qz6>SAaa_ts#at)Y-E6|oan^}!tf!_)~_x*D%YMnfvE3f=1zb?Ng$9vwe6=eN; z<-6qX=T8+cme*E`)qRxtdsuaU9oh!e6Ut?ZrM24E81<^L>Qz^%^6!D{jO-sx_5X%q zP|GBP)XyIiI#K_Fg4rErd?$rF*3{Xdxnit^tZ%=+3ITcviCxJ)_LySj}bfPBJY$L-zkEWoE`o0bHOc z?JD_(#n&R?H7Ppkio$3^|$hLzf4yYS9LA=X;$mC^C{`}$#FV^qkqi(N$xKqe_^#z>yFwD zQk3HVhV_5%bLIhPF@Vuel#vR+E<);Ijg68=)4rOQbS>dOFZ$*0q?aoGKX>xE=IYp~ zY5yJjZ}~Ln8)E!!A2^bBvOmyA=cJXuzcT=623ljCW-ehHvElt<-xuZopQgCz$;pA5 z3;b@)18}E&G}dOkO7mt-&9^KY$^k6ic2Yf4Rlr+SkC$H+OBbhUHefQ{j{VX{*oX{) z{;>D%vF=m0`R?Pkg6L6e%=ixdjWeJa!UGMP2O7aYc*Uc37QiES7zcp8r>>9rJgJTK zDj`G%nd669^}JC-WcAN^-~!kEgCUR;F~O*mv(@!o@H|$?jCu#1p4W?~;(loZW7;UT zzun>yqaUnsYzMUzmk*Co>6C4p9xBWBj`IG!mF0d>eGv6;^wW#!)y6t@ z-hKd{zpH@x>oGuP3L=4y01`8Fjevas&xS|+?+zMeP$thNU!`61ziXUr|6(m$NE$I1NvL|UwW1b2%o*Z?(wYuC;Yn(*p+}V3E4l!|4{wkO;2^0W+uHS?UK)_ z`2T8Jb9a^eV7=UaY>n z+PeB{IjB6ictI<>_ZIUr+dH%0M310v&@bt+^k;gM@eiWWpP_th-@{|@x2!?I1<3NZ zIfL_yMB}Z{ZP~E<;NN3`JsS|2K+w+q@C!UYhAaKq>$+KE-%$WOY}f@3z-F=q{sV9J zNVprYNZ+T<$MFec3glZogBLS~ZL}>fPXzKoIE(?Fj4qy(Z(1{eZgQly^@09YyLk^S z$Gvcc(DQJB)kehsQ62u&-ag-jV_{hC2Cgv2m;uZ(+&gz^m2dyezYVW_ul%Zv_v@^! zUw)8Q`unh$Sw39#t~albsozxWuWtK9V@9Ut-^in+?sts-zg+77Ayxjrm3}MSzbb!x z$)rn?D)x7v{BtzCZ5RyT*kAm0%r9pDvSo9RhbQ>d8ld$(tRi(U#QvBAXb;8hf0MkF z{2(hkQ)*?9BH3N?t2E2rpY-i+v!Z{D$|3g;^2yfmFPr~ePM-6>XWjoZ`6gE z`X6KenEkVd5ULr7l1XVhwc`*~Ce2l>lYf`qoGdB*|D{Ii?xl#`y7E%MKTiY$pz_Ix zfNtA;TF*I?U`n{qF+d^!u!hF~Q3tTAl>ZdP04He_;F*oj8doJ}r^6Kgo2&@!7|qRa zp0wJMs*|{-}{CW7;AQcNf`&i(J0I(`R%!CKl;Q;XOakKUn@EPC{ z=l^W~Lq~%Z#{*pV%bj{39049+H!B_M95}|1DlkN+_fIQwVoX9hs& zTK#f-cmdA+4OML6U{$*;olH+M`L*BY0~BQ|iuU=~v}dxnj_)c<%#0t*%FDmR>OBe= zVa>S+&Y^wY?sdGm(ql2(^zvT5Fy-IFY%{9i-t zxSz5YME@QALjyQN0={ka;mv3{_Ik}k$4bx#_8J`jTSwV3G$yyKK{Awqy3VdSuaM4iiWZ*0YVEj9% z^$ZZ;f$c*_tzFeY+uY6#y@?G4aR6O2`F)mi(^*Ce~bqL+u$4@!1(~L=0TM( zn=1u5#`xz`<3F@1X|-e#;Wnp z^TQh9dGm_1I+oz)B+9|(oDCF%Tr-mukiB?oEb9r5uxEsZfxV1okQ?mAmC!1*ukX|6 zhk31Y%ox7U*|E)?vdI4SIW1~pUKA*qsl`x*WbEY;r#S;`D72-$SzI% zllQm%cNQ?_0LK0kxmT^uf1&E{Uyt=TfXM#AE{p-_qDWnTsqxMlnVjTb=Br8n&#%bj zeA&ava;l0hlY69&Hk_sYiDnY@v)*rcJ;r|Q#p=V8L`rENY9J#L!s;PZ0dFDH->Vvc zCzM|tE(WfX`!y1HODTYdRGoE!Jb=;i);7owEf%Q`tmkceNio0|s`ILytIx|m<+jDm znhmIzdH@=L-tU<(iCWnk2qdHB-GAse^he&IE*L*TzJDF-GmdsN01n_c;@9pd{_m;S-*82(J}=%Y zCu+ps7WD+JAH8zhWA!D@y8Bg#9^E#Loh#s2n^ z9(4rYSf=mV=MM(py5|DVivD+=W&dG-SpN^p-^v1j|K9&C{F6&SOE|jdcp~|~o_gAS8tsxJ z(wW)ES^;!$v0$-dzG(JD@;ll8T6NI}O8S)85V`^U zqy9M$@le(SyBb+D{^>&E=|>d@yjUK<*^1i~`KS4x%A_td7s!aZ zsBfuGt@>2wm-iRntKws2^#EqS@QNU0gJA;eM&o~WD~>9l|5#1Z%lsaOz`jJCiTS}c z$rjmvjZ*Zv>wjFwL+v|SpD3Vxf9yKwcYJ_Ipl8Um$3Xs%Gmr&<6YMKHj&6%OyL~qE zIFe=+?I}mlW@+xgUR}gzU<2a*{LYU2 zuas||-;{4(tfw`;pRd|W{XbLpY-`^(tbVuLzSuZ_OuqlQvL)v$s`Q}NnHrUSpDwML zEvHF){zKmX0$Ta+6j|rh<n0K?Jpb^m#T` zzPLtJ`zt0>g#WdrveExvsV;QCbirgN;kt|B@SgYI(LZq7u8DqU0I~n=bhUrA>HoF& zMt{sI=5>HqRP3R*B7BP``=;+_ALOfO1n@$|Zh8CcdD;JY6dk#{IVUQZbp~M7W?Pxz zr~{zoi0<+1uK9~Ni7O=Wf!0u45I2B7$RZAvqBu~q4!kY}aI5_P;fgXYnY^1kpB|%M zX|jH;zhon%0H$cIl&6Zls)y>1ZI9NS>PIvez>d}X<kUm0Bd5~VRi3M=}(SzVa{wzsu*Wbg77{U$d` z`FpL;JEZ+@$yUpb)p|dPH0?`T?Q40d+dG=Q+y1OotS!84I!s_LXhr+H58V3|+`!Qh z1&e<@>V@7uO!@T(8vksxPo5C|*BAc#3uT|@pQ{S#SIG{t|6PUuSogTtWqpe?3;JXrV0P0#zovI|DV}^*4F=C z7ty{A3J2^P{l-5`8S^Du`!kv{Du%(ob--FWuu||sw=Cbt7WSr%BzdNsScp8@J|i^YcTtqK*osC zYn#);zfo^rlGlMbE77odjzIZS`X^lA`8mnp*_IQ%!~WytvxaZrJMizw0O}vD;Jlyl zZavK&R}@(b`zqj#d$x8)b%#X-u~x#|H_Dq&7i)R|F&kcB2}~N-w&i{jBNaS?f4>8T zw3O|!uWajYRqm_C@i5*3`lee8RNA9zS$V%Q2Ut^ZJs1@(;Qnp>;R-7r_So|CT;4b< z9E{qB)7kh9$$TuY-`p#G4b8{pgEiyV=jEvCv#MKto>q=*uUX^fs!l6*&tKDc^79o* z9@8B4^I-Pp?5T97YW*Kj4edvbWu~k)*)>PAt>MiA#=j%kuJv&w0G~Ey0Z08C z``CY11Azzo!9@Q-|5{r6W0Z96*IHftp=6G1W8uG#Jb=IFA7mS)S+bqZ*j+eWVHN{m z_wo3_>FoGl;b*|VYk=Vavj1cOIw}6&Oa4inY?eNgP0Rb~&K52HocGV(Oxi0-`lVDl z_{V1l|DpJ?_+XxmC#Jo4Zma*^Y9p&7bOIYJ0rr_e2qi%T@MOjPrYR0{sd4}(X%6BI zlRoJZ!u<1!0$wHsFj6e=Mm8a@%Ih>6P}w%Ro~M35tGRDcJy-s!>{pCa>=y+8*H_r}k zt$xT5@N{qp`;AII=R2@lr~-43S;1$pF5tW9dt#NwzpvvTH4owu;O+P~;O=?d!he@$-QR2Zg~gxCe$~y@kJZ}sef8pP?`g)E zt;=t97xy%+|7iJ<_excc%NEUsr28xHcez&L$dis5-Ts7D``ko5lIR~%>)G)fu|He- zsQowoy&eD-j$RM?!~Zw-t%aTO9;#f|M9nVxwZ<9WuTi$!=4sJe3gE5$rEInI8&w|k zl?`UyKNNsR{yR#C)yMBQA84kY|3>uB-{p*K9{kC8UKUL2l2)|9ALgf|JeKSI7!-xC;-QD6#f(Wf6oE}2W+7T zz|G>t=apeRLmt2-YM-}~De0-rI>76NeU#g+*&z9MKbE^|6^Ci{M)e2Pwbc>T0@beN zh~jn4_CByV{|#}#$O6(+u<7x?`%$2ty~Z@CwuJ+SfiPo({te0k|L&1SqqF;t{|C;Q z4;&4E3Wz)($H58U*9yMH1L$MN{kd|~+jBkF+}TbN<9B7heSfg;PyB@3E2Ddeg@b>i z+ZNgQ2j#{;@et1p0@|?l;1BGf5Ac<&2CPKvjbnq^>u>N$C;}`tXR)H^6UPXRf1(Ax zWA1_{aLj{!oXcm04R`{ch%*NpoB6mB$3`Z{9PFxJ^nYhD{~Gy7Wr%+$o-OyQo~q`r z52*j9+}|;E-|D*JB-Q<0E6b1Xf30H5cVwGsO#A)HXkV*(lWAJ*tDRzhmkOKf$g0t= zZNuorc=FC%hhHCB-|>H{+gK66qXFITeS~X&TK)hGu%5=d-=k>5CygwboGhK~mX}3O z&9e2fX4&kSey&xq`bhtK-CrtzTKeC4e~$xL@@GJQ*RO(0u>Q-x<9TK(Kavv3b}jRV&4Ne4XpqtfpBw^ z(PxY}BWP6(0$~7{A~tYjy9(Znz}f9@OEZ8(?#0{eo>A=czk$}c4k`klCSr*^qcZ?7 z5b;v5Z%zQ;_66)ym{-gvuo0}n{qk(V!mdZ8g;?Pe?cY_t-?sT<`C-Lo<$Tpy)oW7! zmuu9|hg#?Rv~ua9zefFBA^U%x>Pc@^MERublk~UgCYtYey!zY6jm4A$ctSJKZ6fr0 zOuHjl*f6l{|E*}@1CWn8@GH z%qHi(n)p9C-!l8B{Qob7e}!_wNd6YbkpNVBh#BE5ca7 zwG;tlCctT`0k~cBj~puoxTeuJSt4Cf-rCEm)1Dv&Fj~LgL)q5(xkZm^WWA);1ly#3 zUGo91RlQJlEDz8O>igz{)E7E6Eg)GT5M%}EJP{V0-U>!s(@qbjXY;S|1s-jq=)r;h z=yO)vXmP53qk`A@J>%asfYkZm4OkNx|MnF44muw7kG&^;fGPkn*3!Nk=f?dSq=JKp z^V?d2e$)a_$oQzxylR{_=m^w?f93xUnl+IJvA5fDft4$ z%f;2@I@LAR%xdfU)p~)pbL%atH;OA1Tfa-Xf2>shB%%NEtWS1;MznmZnDeFbIDb^- z?`P_LyGe(V&&D#@mU*TxNBslYpxXAGJum?J-wFVg%U(9(f%JM50q7?}wz{$lBcyTP z(N#ZbypjybhUfDN|6Pmw^Gmb&($`gaxRT=kj{e#HyY|PU^c@9Y6~CVY|5O3F`XBsz z4xr9rpG`Fz$5QFI?18+8Jd-7gGx8m?ACnb?|C!P*2RHNocu7R^K(I4_v<1&?@5im= z3TeFmz&}TLW<J;OXgQB&bDl?8!0%NBFtqxl+*Nfzztw2qVd@Kb|KtF?HYm2;wLBfvV^H}Z3(pZQ z2-O;P-<~;k8T$mz7#Bd4DMp;ERyAe3$3?Pl~@l7MiDD}B$6O=djH(Gg8Uwd}n z-`{6Ho3Cvp5lH4+R#iTNZ^Sw6*U+~3JjS~%IoBpC7*RjY;4?<7mAmGdt<8K^-hqC8 zJ-D6Ug)u+%7b=QC^jO7q1}ELShq%U@9(X`JwXnW{+c%?`_6 zQ_b&6%4Lt0=A7R6m8}0uQk+{htv}I!`>ym=+c8jV>+kp2f7kue+fla>2?z$@417jJ zfNz3-=Dpcf6)w-I`saFK?A>IG?6iD-ssC=p9r@W=lD?qqKri9{cg?!L4zl<5_=*1o z15gF<^PnFE;MigZMF7D+6#!kOf@U=4Pe*2VX=FlQ;eS-VPc~=TSt}yWRDAw$X&9>i zJfp!+>;F(h#=o^ut5wL2!lP`=3gGe3cmT`<#EfE$iFiS}=wXclI$iev7-dQJNcKoK z6#8G&Jiu4Te`7X~r!_O_J;e@M6KG*oc66z)t2V3VR3-4@8Vm5IGC+gWA0qyb^(Rtf zn_+LjY=8xcyffC%GkKDkn;rYMv(}kZ6W9v?2aNf(4F}U$evpob@AUwT`mp5?}*cNIu2mhtC|nFkWnneH`}+`tj@eJ{aW_ zSis%`IO7;A9X@q5z{(&H&-cTp@cE2#`wwu8&uOOdXO8_7S@hGn27%AGI{1&uW=CPT zSDwbPmUw1Z7YKHLrH5 zQ9qZd=Zw|Zzsbt`t*ZI#Mo+@xUHI={7&q%$P^@m8EWA;B6{=0rmzrPSVnHdTEJ9kG8V0LB<_2U`8X$>MHUNMoDar>c#1~)Yp>Yot+>nQ_p zw$?;{L$w%}t96c7mULXBT{3q%hkmg)HU8&%F*x%!T$@Q*7URps>M!em*89o>IH2lW z%_#RRUr;+=bAK6Zo*;-!n_L;&H}5 zHr+E`&yIiCz>L7>F**R$<1={FFxH=|*iT0J!v$Q;d<7P)kv*mtOoLyz!S>d(lj2vm z(DSb-H`;j;>j(1+=p#aBZUOP&&RW3ucQ(K{ca*_OJZ!iBjk7x{XjJ&wNskHy2@*%%Y7fe@C-fy(j|MQJR1jKV@$v56TwyQ1%bce_2_7ulE~c^|943z|V*Nz(3aCIY24^H`Peo?{#liX=dWS zMZ4ni{1n9|`bhtOtqR@Y`kcBwul_*{&`;R1`+jeYw375pFFg}^McOC)0Q`Ua0J5T< z3v^p${q9u+;7Mtt^OX%eTvgKVG;T_6lLs(eF@W3j8=kKmz}yuV&CdY#Q<-u z+i7I?7RmwKS$5NWAfM&Os0x%(09bn}!(0<={If5t304kWibV#Kw&%pAqNmzQ#rzk< z%!!Me9bgW}@S>&<{cjH+4PgA+LqPvqSKu=^g9k65eWQ-h-amWj*`ATm3`ATUe1d=L z58GPq1jev#hZQ(JtUSknPq@Ms-#GI-@X6CNUkIE4YVB#*$2WH4NqN@r4mgXC_Z7e~ z-{i_hC|6@2-?mppj*v5&L*mXHYqkD2;;mxL2H5uCgYecsJ-;Kz5gnz@1Mh!z`TmO( zGm2Zwtz`YbuePWkQ-1jBdPKEg`G{h%cWMj?zW?>j5v4n1e@U-Pz83b+lO29vYkg$N zxf;(#ENTBi0Yv;AY1HjK^vvRP9e)H|G@yuG^2f3f7bkk1zZR4bK;*mAXvpQz~9OD z0RK-n{+|3n+_Y@5QqiHfE+3tBN(Tu4idhP!o9ao3*`WgL`_pdWGli$bsGmMUJ!_eC z)8Aft7cB#q@*TVYDk8D}+eq=>+?XmxzFm=k)5MTRN|o)B?3`|*%D?HV*1oJ60XRo& z{=2-de(i4cH}yZH0N$#GS1T(9aCrGw%~*V=)_v^Kv?lbBPR(c_eF+_j6`^-pdpZ(N z^^PObR^s$#XUd|VJE9Ku@LG)u&JbBYqumid7$6t{USVSos^4tms2^SiSHcQ|L+}BX zmsG#zZta_Mr=TdXY5NaaeUG-QwyI&}!G=+8rR|6%d&~yBGCpBC_E~8-TIgr?ec2Q8 z9XgxOr^atwjXmDLfA}Gw-&s`u^?ibW?%ke@#{%Kq_?zZea}^O6Gc`|R)brkIZdtto z|7Q0-S_$^a{J3I^auHeo=QQ8vA@y`^E7UKRyK1igmo&zItbE7usv~(?e}A1VpKg#$ zmi50-vuAxR@1M0k_E8^1k=kw><@9LxQ}3sb8}p8C#p^)7wZAn$=wSDB&bqR6^KlyY z_pBn@`zhA=rhM$Pvm2DNTwSYdj?6d69!PEy8oEk@ll^DpAJzHJ0D^y_bxZxM)*mL} zoNxg105Afmr@WNOjaQRRva|EwDmJ;C*4Y@J^_F7#XX7i~{mEiV=I#Ui9{U3`(n5~y znJw)T^_JZS{oR|^-}z8D(fXfwDAmB6Z9PR_j!?@?6)#Q}OP(#Aaio5s4)OrzlkI;? z9>CT59Y<>{z*vn1yds}j9A8~i&)Ifoy}V`w-k{2=%gdhSxS~|HcNO&wj{zbQNPhwK z*im{Why#^W=&?og-TpVd*;vHp(%U`v6xPTp*|BXad-Oke_sCwjBzS=HTKhW&h~hWn z;0XkaI5q|fICuCO;2+G}1K?=q-9bv&SAPn!?7!Q(+81yH!CKsVto&`G9TPz1;BA`? z%rdl5To-k2t}=$XJI)wZ-0f*rvG%ay;25_u_l?hEcH??%SbR_&V}%@92;T+|i;eTz z-v|HT9{d~iC;&JCudI{u{(n(bXi`2~?q1ziyy&?HtdB4#@{p*@-YL4V(`J3CS590gNk8R!Qr;)E}SvPz8j%I;-zw+od z=K){=_B;P=Z1DZTnmOlu>E}l^yWsDI|Bo6S6l1?V@1jxmD`+jN0ojeo)w&1I{YCvB z@qg^{(oG#;{QrEhzfciIKN^4;0K4k?>#553iDcF6c=_2qv;z3u`8C;~bg+2x^MAv? zv;XErqu=;9`r%1D|DH|!GpZQhA5M%K02lz<@2W^DfHqcU5r1rk;-kz2dWsalDQcxV zk_R;#*xSki+@|d91=9cLtA3-eY7_4$m##mpKdSetpVgXR@06F6zc0TicG8NaJ4yi% z8$wANG3e|-zAds*=_+0O-!al9db6!9z1j)@{9}1J57-D#9?UbZ7dD=;e~$he{al3& zHgH}MPXmi@oH;heyndk4+JrTQyqiny8O|HnH7`N!$3mk@e0qJbC zI8PUv$6kdQAXGp4s6&$z@DaM_JLRwEC*(C^ z{U=C2J|pX2XC2ZZP2Yc<>i%YG#kn7}63=1EY0(#nN)i9FhIcKW`?YO7`qdj&-bhCa z%#MFpAU@$(I0S^OqcJX%)W2_&XSQw(R zO3JzhCC`&au7egMD+>O-t)w>M^Ek>rf@ehWD4-$IU%QHjAJNFj*QEO|RHWn>WdZJK z>?{vpn0)@X#okxTiyI>bxHx-9YXZDk{JuI}9>8Vw=T(<#VtG_~Ou1S4lGyZud~I2V z<<(2*v0%w{r)1qge~iaN19+xvTm0yU?ukSXZ8zz!=zs9*%(23n`;U9F`R@+wcmvh*{gF()T&9t>Q zR*f;9#Ct>ib05AF^O7yE+pT58trj>Fts1xvTW#)OZzu@P#d(czvlj1d@vUR5B3hOn z?lQxglR4U-`q@wbXaN)e@txK3(Ya>NE^AeSKU4j^>QbLuKU*JE?^2cW{nPv^S&T92 zFSiQ)k7PS!BhxFBPqpI2C`FlODDuCE=KUR~Rp{0f?roEZ0?F=NhH8{?m8_NCl|7*vn>CfW{$svic207kuFc&4 zD>f^Di2-yF2iOC!o&Nby-#U{kirdTjdj_DjR10xUvQ)O8R^IHT+Jq14oFCqHxm_Jd!Kz~F=@Dt#ISPKXSpb~g1$$o^tE* z(&8VQ1**UL2bP@v88*7NPcc`}H0`;-)8%toe+S8#nuM)abM_S_7N?7&K$i zZP|@(vjFU1^xG4_8*mKJk#4YI`_HJ~E9BiiuG#g6NoDM(`u2^|$5hSQTmJuonqwo+ zh9`d!E{Okm^bZk$4*!OKyntWA`ojZ^CtOZfW&Pi-;;M@q7bm~TcFE^fZnAsveEw9n zT{=vw|NTuK(?!i0K=J>H{5!hY;yL^ycrnlq{_P7{`@2OzzvBSTBDxBAHsoRt=K4u$K%SU%FM z<@e?dp4)20sw852+%wPaW4W5I2&2$Gs2Y!OYOgsTMr)3m{$=;-bz#4~>OrroXViz) zyI0>74{N2Bo0_wIjaSvr6vh6xlJ&n_k^f8NfnTGZJfGII`9d>J{882)58Wel7?X|{ z5cB?m`am}<;4LEk_6v-ANB&wq0)5;FSyhVvDES$TZrQte_5)ROxLrCWds&g}!Nq*V z`uV5nfytS=60`r<_h;tshya5ApWpWn4M6UXm?P`|c2YZ>-#Aw*fbEdarTBmMVoLsE z_Q!OygjM>c%QEk(h&_l!_dD|Mr{p!r{we;6`#WB0F63A|1pcKaV)bSWfL3Q-)U)K3 zO;;V@J>sAS8->taaB-g{DRHdy=?OaR?waU_%{xXXy?@V z%$nS~95uv~qOom<%`+UubGn_(b-^x1BQZS~kLL(BqV*!?PwOqMPeK_HP2t)6JzvZ3 z<9>WSvj?a~+2hlPzK4rFk|?63{>2#gLyV-O^8VBEiN#Ijxzz%7FU|KgLUI2m>L03W z%AuVeRjTt~!)b$5xKK|2_Z_~{+12DBoQ}gNB zf$7%Co61?dDZXTObjC@=-C#7K>Q^go$@@_vkt@aRZTZ~PnmC@xwW&kG-bQ9u*L zlGEfVU8}nouE@-3@;a_c#;1Eq0esM`1G-S?AEEgGp2)V(_tLNbUiB9-z{d5b)qTqU zPN)V~rVH-DMS!Y}Y> zM6Sv2Vg_ij0Nx9~i#3tCn0toVV1PmS$*NFUs9d6YxmvMaRhi&>h5uda)vDK2v+~d8 zh@Y{F`Q4_x-y_*h*#+q>T7KeuZw%l!x0dzxcoNbzgUvHe22 zT{2wfV(uU3{#^NQ1|UNB^P|3XM&o}4aS!%?WMg>pNxGiKCiN5kU(x8vW3)EGYqHF5 zDsHlmTFf(lJ6~c=A5~NKkMICMzwsZVBWV}6O-nh@o-hEJfc2FZIZIVQFG=;^E#LnH z@xftgxk1Td>5u7^!vEWfcoG(t2#Yj+p<=YI=29_3Nse zD!;DLc)*V8KWs+1v&rsf^sJUI>7&dMMiV_8tJun4*<%O$pn!jg1=`xTDt#PVaO}@} z%?;R1*u%Cg@MV7T)vboXRlMR;5aTEqIOjDeHbdA`2N`VSDO^3ky;~1(2BX+Y+}~~C z-`v1ejCZaMV$E=722c*RjYGJ>cj$XJS8zXQipcs~?U;AWI>vt>-w_bU0=ZkBn2asf z-zp$pqXxW@#pU~OVLR1zZJj@!k0_2W_mSt{S-<{>`UUlaXR3Y6C5kSp`E|Ycm8u;Ea4`c3Qe~GEFs$GgPCqzv6$^ z?Zis0itvLR4WR{S8U9BBm>t6ha2~+bl(Y_9+QR=@`ZW%d0+^!fJfq*~4CP7=(cgC! z12`yMTRz-hl?j-nh|VbCe}tI5YhDyR${nj!6!$%{?yJ>-tNKH&4}3%UbWs$?$p=6w zI$w-6fd`_Wu{Uyr_V#Tt1Ak$=Kzmqz+ijzezeE5cw+9nA)=wl51pxk?Ddb;lBKU9F ze^3KDQO-uHk!+qa-tA9gDQ#atrma8B02Z;sRs_ucN6wRDc^1xK+?vT8nd7SFAAip% z^^^IvQR>mQdAp)0XO=fr^QzW&=laHaa^1h4uez)_KA$1$z<5!r{vMRg z*gd-=ovJl#Zj$!DO;)U-yx&ws0e4sCkJaowqXnv#s5bd4`Z0>$sCT??cKmY$JsdoT z{)ZLJ93BIJN4&DmPUdf_Jlo@>al7g0we+fQG9qngUCUJz|Idr%^V{W{9HDbj{o6sv zcTK+W@BCcLTK^KSxZ>}c_#Y&nXfMsZF-ZDJXL&pjV=vZFY;-q8{vVP)ds8uh(TV^bs{gNT z{4RMvc|1K*D*?WtDBu;d6u<@Y3HHu+R32blwLyJ)yQ!8fVPnj zV4H#+3ICG*L>AdffL?7s0K|mt1v$nU%HJ_4TRyOa6$*RjsveIZm|KXCF#&l0_we~j-aigWz0K{kFcLHk%r4?@% z{>Nv_WLu@jDc5(6`qFc<{*B}VWw{Sm&S`@t`djwj__yC5D!`t7*f{#SZ5`ORf9nVr z8lj~V?CGv5n}4RP{|oXvb`~DG=-Wf3Y*$MzN-ND*$n3x0spYOnS56LXe(u^oM&y(G z^Q^zWROG+KB&-C$_@6F%wj&xlB$LzL!v8Ar0RFC=_Js5R)k!_2-2A=Gc@prFU`uiU z=0<2BK$SNxVXc--9qKeye5s&9-gU-Np)0ZClRZ1KS|_u`3Fqs=(t1y&5oUe|UyZ zB4Xge=Rm!B3tVwUqo04llj{LM+QMQFvI!n1V}`J5@HarP^*Vcve|t8L27*;+lpf3j1&T&z@ni*JCc>D87v*Fw<~W*q3`Y z2ZMc7n)CcHHvfC1kAF#YTrbV|Jb&?Z@sIM#YOcCpy=OhKzCts?y;F`e2x zQg18~fHxv!kErA8p~NNZ>!B2h;(Bf0%(a!FE%9#uUu}`lRrGxbV+N zpoyBJ?Rw1!I!rTwye>cB3jMw#wT)3`w~tu#hhlNf`7}*;}EvwpxL(wjxgIf+h*-4lo^SD# zoEJ}p--6%48X%Nf{9Z7D*Z1k7vE7X4>YQ(oU!U(+>|SnC&8U`A?nIw@~?k z&V7rJf3AASSk;LX?UtS=fB$yX-_MZkFJ=9&S1;ePIhPH%r~eW4cRvKV=zi;3 z+c&>Q-`m3TiX-gnngOhWBU=EEtg4vyiJHxFigd?rvVt8|5xa8J{%?}pl`fWlq1C_o z7Jrq8eN4JSvhOVW-$Aw*+s_Cfm*mFOUt)jP3-iA`qYEz zNy+Pa4m7|hWivecpR0WxAAtpEFT8(ZBd+{&>_2LMX-URZ%>F&+0G)Ah9$;I={2yVVV*6Ic0P&(rj+$=vTf{wSZa!yjZo|v)Z`6L0&-T z`c`mLj#*D|)z z_+|kVKN$gP02x;14q@48&EqZ|;*gA@^*bfO|IoI0gteqX4YeJeLdW`*cyYZ+HD=mA?bEI?YQ` zeG{r*$@=fD*}l%IU#TuBH!QZ*Dqj~UIy6d^KUZjd-+QtHvnlC!$(owo|2BihW{cK}YJu^VuE+ix-)05=67dceaPQ|B>)drzT`*oA$HVH= z>&d!y*3m1=dY;hOCV4n*uczpt2-}}63HGyO;@RK#{PLD`i};f9jCwC>lLH` zI!c4=-&j@a@BAkJAs;OKf2~%3Iz2O)u9*CbiefTWI_iIEC#=8!cT^Og-?9ImP3`a8 zpV@(SiAlmk3PisMYp)A(`Y$YkAgUUB;qQUKSB z-C51yLah_R(<`Tx>Rce%`AtNqr_gvYj!AR1a)S)Llgbh{mwmu zK6?NjlLiBTDJykbFkS~rTKKo0i`qr`I>tADGYUwBajfU#905K&_6`iu<0Cd_tH>v| zf9>_k5iX7eNzS>GPd8_@?wUJ?Avm+~Z@uCSnP)$NA$&g2hP4HS91o(wt!EhU2np_v zy*#}+g7bq_{0#Hg!n2;%m3cGJn*d4Q?Vo>{842+r|g}t^4ik!vua6 zxd5Ww&IJ(d#?GxSZ+5s)^PH^zo;qH$b~o|AhU(gOQG~5a{%sTguZgp^PBrU(6aQ5I z5cebM=PH0-4)H%dGcy1!uV>h=(JMJa3)s(8baG(vt@!qpbX4+&`13h2z?G`g^Jqzr zY)07!{;~h|im?BY7lAPy8}+Cvwx=X`O0qpku49ssl;2^2_u2 zpYj2-`VpRg^e}4xP|b!4rGCZOcg77&g*6N-)$*o6KltPuwtv_``vZ6c9_7O<;dt;U zcq?nP1{RLq-|G9}gS0FzJir-!9otjx7Ot`-<^JrkfM;`vQ64pNJR_po*&`Z5>xBOkje6BA?O8ajs#=lPtFtr+9b}9Pi_sc6hQQHXB z{X8J+zi;-KeE$K8UOyz<|3mBiy)QrDcxl-6njSye-?c1O0Mz|i`G=Y(`iDjL=KQv8 zK7Acdh+IIArVgOjWAj#)FUzcUPs?XMU00*3zlZh@66cI)?4P`y4#*Q#*fIO>VIije$USH%Vz$6$^c{l`U>AGCP$@TXa%4F^8bHO7VRA|=nT~_JgMCL zP4datpQV`a>CKw7n%j-YzcHj0 zLyuPrj#vG`W=WDhkZ#eO#rbyezy(qP6U6iHXlC#)^R{xOs;W1vJJ#=N7RWzVjcOmw z3e=~#E#FT4h6u7(2_`2<4+9;>zr9dm*z{N5cBIzvfAHT^YkV@>SGQu(a;fUwYD2B@d6Pzf45@omk7=f=chnzF z7Wz+-O1xE({|mEr*=Fg9$v-rk+%r;;tYPttDogfK9o{7Ll@B!Y;GgBh1&%0-|<2e0N*qN(E7YuO)WE2%zTvcG*4=~Q(EIM zik}>#c05hdz&kW*>a=9_bY}WzjKw%k?*+>_4;Qv{~1`i)Xw*=^zIAJ;eHc~*P#J|~Pq8~EJjEuJkt<^I^r zDX1WrC)$NOcYMbA07n5}?#@#Fy)~|D>-_%wq~g@_B#reyMr(ZDr|91;)o$gy#WML7 z!v1j0?>$1bzjte#_^#Q#>DyY{YqC`MbdC5)G}qTn>Q7rYv;Nfl3~4G*$E4`T;hoY$ zZSft`!j3r)82IKLuh|b@I0|5|fX~)YZQ;d=nNODYI!xF{{jbzSz?$-*PfrTXWj&Al z>)sl%er47*{X(l?F#4bRKXQNQ|6gv*&;N->I_X*V(AbFW(pRz<6`kx?6vYPl_vuxt z|Gix6^F5~-dQZ`vM*VL@^Q`aTO4t2>f7|}xPuE05zQE{r?XUfQ{4nspxyDG0PFEv(5rY5JQE6TsSQ`xwZb&h~kFw)@rqS zSiM+1r8-IDg6}I=EKeyu%8$$kivhZ5^ZG#H2{;3@pdFBf@3`1g5N&;Qj2xehh=DajWDK|u>^YJ2 zm_G~T8FOfS+h@>j%k3+3=e+WB_^PmuH3#VDsf}B=gP({aiG6U7ZVf-B?}I%p-GUlm z5BCadfp{1t@XwL(FzEOHZ~-}6ynkE&z8dj+Xr2}yDDyYH+NB<^n%}GIrR%TDvBkmp zv$Fd~Wyk981+owKsb?&iZK=Hfr?MQ6Xr|9fk-sNZi?^5NxMj{M*ZiUT@kMR>@nxOQ z3QwR_>1V8icQiljU=9e(qkPE(5bNr%+~RQgtWRqM%RWLqmGwQEpD`2QWsT7qVYi!R zEnQhL>U%W9R=f1?(hFUi>VNiezyBwk{!;si|NTKLfNhXInLQ)?_b=wqNXj|0TV(&o z%Pv1I4KPw;fZ5Ez!cW@UF6;mzwAS?B!a{MBNP>XT~I zdab(F`e27tOI8<^MY&D!guKT7&D8A2=j#Th7Z7*j3>}!Ug0d@9Gl5&bTU@e`+{j^x6&LRXS2%onSEd2 zpRAeV=w=9>iD$5##p>E?0p)N3ya8%k8peCfSRj?Vj#e_(Iht>p0XW|56C4$q!sqa_ za(&~UbHGc%1a1|WnENK@=gdFo_bMMf701~|Yy56kY+Y_wEmxmW-=b{?&GoZv`Ig4} zU637-9hn`k2*8z^=lkw#@9d%U)1;?H`8*(hve5d~Zz+>}i2BzC@?gRLTIzFHFvp@D z$9A;J5v{QO#P(e20~@e8B4CdI9pET{Z5|AQ^}kHnvioJZHWc!^2;04zyf9Ec$JLGT z$&wmjzp(J%Ni*yX*X;jqiZPh|llVWmf3*Mqr0*Y$(oG(CBN>=JkUgQ%$pebHi|zA; zvU`%ZrDiS_`X@_?@20i`{pL>4ZzaTE+kaXDP6!5YHAGYkfq!c)@b4S|e%M+%?>cI) zofY%DO267Hs%ZyHr1v2bIqjD;5(pH*k+;9FV9oy~{oT88IUqY~y#L&gp|#(7&xFD&G%@HfuSa~rFzPkDB(&NGwk z2>gR&v#5P0?kV_#XXg2Na{DSAYs>FDg?X|2Xnv3n_F3bnhkXB``3ZSlOfB9lpQ?7# zsIMFAW0m*2Ripjamk)hRcDStn>GBC#;df%zG21phUF+68qWYWfG~37bdUcw{uW#H$ z|GKg^c>mZS@DFN1y(4-c+vvBhk2*Gbx*5O<01Xg~KyP>KZ?Gy0&s3K21@X;pI%^lj z^@t9_8Uv&~Zqf`JD`p4giz>dpd~tEUUzVmX%;JfTVt~MZVDf+TU)4o?)##kwoIRBH z)cws@?2@<39!=gA5-*gZc~~{ne-eX&eRC)FJ+L17pLQ@C@`*ivv_GmTlmMJS&Yv^k z39v!}mDuZxp^uff@t|TgkBA4(68?`;9N-lB1y?JAdrZzalEm_G133QzrSIoF#e-v*ck-p=2||o{RwdAqr=M% zUO`=OR^z`z^C_J1H=_mPfq$df`~na7teg?F`p#zOHooD#W()Hc-}g$W!5g9ZVVW4d z2jcDXa2E4}@03=Doxr^B)cF5hQ}K6|zt&Y-cSZhsYkkL^^9S++RQI!A)mLMEZd2@k z;krXLUGu)bubkiE+0n8JqvRDnqV3S^x%88yug3g5p_sqqffVdzifvKzN5wxiEXIE; zCT0A$FdmUCNB4~1Sn#eVRO`C;>Ww)xVAZW&THFe=UyLRI3yHHoYvnS1W)FEaorv$vbAx zs%C18EdR}7wHt-TO@vlrb{+v>HDt!5&CHh3DrQR83DLsgYk7WES6mYhSVO-GzYQM1 zp;8+UYP`WTjRQDWbwJbsAFb9Ls~EtV$%o1LX^-p-)&DZLJ0m?VQcmDb%@EKfe=l#8 z>sCWm5q5mNRQ-rn2wkzdzMQYzsdy&eUA+hlVEeI$wmo1H`vgY#B;rq?q=i`bTJ{(n z#!M@EZjZpaz%gzkg#AVgCzLs6Z@?-y9O%M?{D`)#4p#}Ue=Z?4lDB_8@ zW9KuS-LUfK`OIoOoplZDhb6}D<87cTBARck^Bi0^Q0o~!;2x_Gs~_0N-{*d8>+Q)K z{~$aRh=jyx%{nlG3F5VIK^Sa((pPWB=zx5UQ|4s2}@l83iI=g;S)m}sE6RR!C z#Wa5ADp~%cr2Ws3^}kD1q1R{Kvz^jYlCR~lPE*ByntZ5O{ITj;j{1B4>LJpcR{vrB z?aA7r8~vc(8i1IVV}c+(6u&>CuSbk>5bHDLfO;l`?>e>hny zJ639SK(SPDN2c9;$Iuqr{!_Bo`;^rC+A|2=h0}_a7q$V20;wmGS*N+cRIc7*$TG zF0Sv^Xz(AZN!5WG4|H<*ismw-8nBBn-ok+KhZO=n^gXt~42s&yAgq_s5O&atKHgdD zTZ3a2jSf^X_@IU#KOpR*dp;P9+(X3Ytjp2XabGZmac$)e#^Mz|i_c<@1!e7h=mxxP z>jz%h2Vf81N9&L!Fsg0;op0n?Y&>ne0;~2{9Gfr$w3q-UqP-ZsKpWD=T$wAyQ?_`( zH4yf-+yYhr{w7gBHdgoPA={7jADr)#zo?nMk10>B{!qVIzh0lHnO`TD#}x8?>LFEl=tKl_QS$yusgTVMT_dUGO9jybhv{KPgnj@?r9 z*0EvbiSFSkaFpYJFai8v{mb8e>cuE4o*kw8o1T0m{QpHc zz(-U`K?Go(CjK1(u&VcppGLo{0BA?N18aUqSgiw$dPf1A`NQsSEM2jY;-K3oW;#Mh ze_PdBf735_j-oaPiUW?24{&j_4&bZgnsl&Gf2$Z^y#A#U;8KkZelnX^BZ3|&7S+sP zk1001di`ECvD&HnOqsy3s%1Pu>qT^wjc?f`b>6To z(w(W}4jnt-Se}umLk&1OU>}{k^mRQ_fo~YkC=FDLJs{2*1RnR`1lS%Y!e#Aw($3;VtFe;+aTCGtnx%K25}ag$bmdZzACcd5Qm z_UuR5e6s$hsvh*JY_jUX#%D`u&dTHE@xP?3f1%p{7u09>R_`L_PtA|3{nro&F!IFx z7Yl}l1>MHAZ9E*{S5^SFbgm2Lcrfoc7x*72>vgu`RBy`q@25|wsl)oS1`gG~t15f; zRO9Vr_iS|DUL))lmwoM#-J9GjWrF&5{qO%qNXGMg*Rw=*h2>amkixu87a=it}DC^?!bIyvJo? zgJ~KOlox%c!Cx=+{pM#RNF01Ob(KO%tLW%*aqwn~0*{!xBiadCN(YCLCX-siKl z_Tye<*P_41`<$%pG>r(oSiRv{W&XCzu1a4@x=FKs+MMJ61KF)VE3=H(&;Qi@5_e|o z8Pz|oPIt_YzxL$m)Asfw=Z8JBHRBWWMgL}Rk7z(Yo&SL5c>hPGlGm4>XLh|VLO=e& z09}jN;ERpVw8GY<`SKcJw`j3{zDzbLxkkLyO~*U>_rGcV;ek(+1GCHWj;c>stT-{> zIQu;LLYcU;6$89S+%`#yd~Vtp0f7CwJKI_WXZ>4$v zc2c%vA92c`h5I8ET{vFR)A5QmzN9q=zS4-zCsYY^T5~kuA^P-O?cY$9fOn@`%i=#I ze{X_x-#OZ-2E0A{P??pTi#z2dURhtI5y2l-*Q*}5voe7ns-EHMd<*p|*8sYYf{8#H zc#4hJWYX!ApoU{WEPst-@PNj~-W&6voekW1ztIo&T5&wSZEPAdT+z%!jSiy;=WXJ@ zWixHJjb8BY8XxWi&)zB_p29X3wD~Tv%8s`44EFx5$x-yaa`^kkvhnXH@tyl~xQjDI zywJ~Pu5<2`doib4)msyUj}p4WD;xy=V{8UY;JOTt_$B90&Cg0=?9KD*@(qiDWlyc} zGok*Veq8f?rqxx&2+dA6N*VvtRrABV&`&A~d_wk7x?H+fQpje_k<70Qz(dlF+o`v) z)(i>&@1F`bpCN4A)l9}+)1cs^iF$40J;ee zebo2Kb!{Wh;D_Wmt^UR8KZ_K5|FczpExSMas~x3JItVXIXcYZU zStI>MxI0}OaEsK-T~g;es1*kb$z=bHf7*e~xzZK`IOgZL->PEXq0$bUN(F5vOTV{N z{UJj3QHt&zt1RD1y2c3k8Rs{vjUJWl|5*5cOIe4B`s8r&!(n2F8^r3DC%dIfD)#@7 z`2H&4f0Q=Hd`?jAch3CA{27f2?o?l*4AHV05j?3nUU9(F%IDPH=jQ84SK9g;4MqXh z)H)ZO*+<428UG+AqHCT(6U;k)4g#=*j-q=%=M0>)$L~2FI}5_#2oPc0%Pa7>ps-KP zuoZ)O$B42Q;G?nsw(+jh4;&kBV6deR%v^yzKQSBud%#kBZf)Yb;|k7Ln8`pdcLwf* z0gQR}@N8}epVKVFvzTLe0&@cQ7MWGJ)cAKk2CW}nzvufQ?@zsdA7%a5(Qd-9Yv1L!?%p5kijCx!W~Z z!FMUybmrFYrK`X=+iOOvU!`YeS2ykdLd8z`9NBrvc|sDIf)#}S*>U*4^?F!#hGtmm zSF|h6%lFj^;6F-{lZBrs58!U$b1ywB%t^};_p<_s{C~twiI|4XXSLrAh5PL_hwwhi zA^usIAKu)K6ZVhQyW@oIlQiSkNO>Bgr2wuKbHAcU%7@~C2UUG=Vsk|BQR0Ue8XG5V z>C@>S6alzjygyD%00W#W2Dn;l1q{l6RrD$kt~OVm=zw}bWr^>t&aFCDN0m1gsn%Os zUA+y2Sd&`a8bkC|XaDHGj!QeD&)L1lcnSM& z+l;qu94^v~{u3{-7O{tbvbX0BFTo)k?Gel1&VC7)GT!2jgFncv@m$0{?JdlXe~vP* zg#K~-l4s<;*gS5Rh$nZ>9hfBo{rDDcxA2#^LvQ9PD-BxRM?}8GD>X7pLu-r%uUzpv zP^-D@ugKq7#VO@!)q3?q^?Qozd{;eL9#ZU<6*556p`j==d+Qh%-){4=8JIX6rBE2x1B>WFlea)8nx9J(lNa2LJztR8yTbTdp zb%zW81BzveOY=js`O_>pN2>n>#Ze}yp7LVZZDvj$q&9QAz>d6P-5+x#oB;McyXP=@ z4BLr^_f{nDFxmTKg#6?6|1o09L-Y&nD@NH%p8wu@eV8mg$DFS92JiwtP!w>Qs{cld zAy^r7xcq@E8I$}zokvlhyR==cI)J~Z@(T@ciN<|>n;nzyQd}T=ajG(bJJ)UXjB2XJ z1+Q5BQMCY{=SRt-Tvk2N3OFpkd!%Qb0dcllAjPru@TfsYXnZUsmfsup(MJVNZ1-Ue zu3|3%o5|-!o7I334aZnZ7-bw|J8C2useA*xaV(>6u%@=R=Cq$$+Ta47j>sIJa48*#|l$5@*+0{`5XIg0)4<*8_C>_02DGPegR zfLdSY{_y?#t7hYm`Ca*@s_R;(>RmrvXKm9p-`CLUdyVXzQ>*)q(QiId{C}sies^TM zWsjz1x|3%2ohw;5`HiyH6J=+%l=i3Ek9B6?0Bk>2pNN!w(y05v`lIzhwHW}Mn+a^= z%mn;(Y&-gYU!8AD;p2AI{9h&e)?e12Rr`J``_J53tgq2adsma{{kG9Pout+OI%@P! zUaXb>H9aaBA*`&RJyht+l2okg}&2Ng?EEE^;l&&*VH{b z`{CFLuWk8xkGF%rwSlbuR`Q1aKla`PYOA?z|G)RX_H>!&sZf!G3WXw4DoQdYq(V_r z(SQsYGG@puQz@i@QWQ@zM8*t>WXe3xGns#%<2w4jSI_(ZujhT&de^&t{2pts`@XMn z?|tw6Jwip*u9oQ^-CmJ8O!}31@;-?S;T+TL{u`rX)fX(O+`)K-8wn1?x z-J$kmR`4hJlKjSejl64iDKi32rk*5V!B#-?<~-w63bwtZH8tbk%DeoYQEU`cJ*BlU zV_LuUN%=fI@~gtUzH9E_*YvJ@sBx$>a!sHxrO$dEp3o{U>i6}Ik06YO&LF`~nAdwP zao0J>&MA7ZJu}a-PuH0VkJ`VjpnSW~ZfLZV>=gK-H2=Ex++^4?J;b@ z0xkcV&P92C*$nCY#=pG2s{K^&w>>%kU8(pTN1yMX(^CFNKDVe>-k^M4adSQ}Ynk>) z-l=H6>hpOw6@QOV0rX|ulwLJ;qE(^|==b?EOmzfaXCJtKnD1A`zm$I~{?hWS0BGC_ z_f`P)ThVOwncvfIZO(fKzR(GuIECo=0XS?YkgQevgnrHASBLGbhyk|8-W)|-(msBq z^ceqFv-CH{;Y;zLXcX_L`{$nr|64DugZ{TEirM9*E#lRq(cu47So&3H8@H&30q738 zNywn+TDbc`J0dP&xd%#t;{3r}o#WB?jsw;G-~mU1@1Ago{i(#(y%8&uRc^=geXtp- z(cYg=3`TXFg<|p*I=~{h$7pP)?Wky-cyZhp&F?X6|9Dv7mHb?f9`FoZK@Leu ze zwmO>duUQV^b-m)~K<~<{EAr5$hKSu!JI_Q}cNqKW$$tqh3 ztX~XDXQ}sfY}vCg!(aWqYylcos{NXR{^t1pUCH`g&N?(Nq>p7!=GPT<%e$7}p|1Ph z>}*t=m6G}JzFU~(QkVFqs0plpZC3XwqUVSt``~?4Q=)obd47#E`+xQN zv36zVFGL4#9%|Rz%ch#q3ZD?$)tGliOMIa<9_t!>|FdA@aF8CbuX%jR0l2$nQ;u;Y z>y928zfxL6->PQmQrOPJFqZS!m(;(1=HUN#pVh+uZ$?*@8%sOJ8${Pt@P8^=>KO6> zqwwdQIcKpYD}0Kk6i@BJwHDj&3CfRw(<|23Hi&)*N5BNSf@|Fq;a+z{I;^x9e_slT zc$!q&j(p}o_ArWCfRABKU&8^WgZwjL4yR&;qUe%nPu2!FhsvKvsQgeZ@YVd>L>}l} zDglOIVGqu(%g<(2$eWA3i&cxSStI^}JkPsVDuT~WS~Ciba`904BIl!&Wpf>^IfAif zK5RcJ9EbxOgBsD&?nB=&jd72B`&Hv#DAptS*03+}2YXe$D|AQ$^q%~lkK#DotRnbd zpM$KEqj~Mwh!q|;BZh8R!L`mtdzU}fqj2u}>wO82wpl^>lNB)Ew|=2dc>k^!6f+6< z*B-_Hg?^o_a}qwMVAsrE#Hzdr|BCoE6T|)eWC1kCU-^Ff{;tWzNliL4oseCV9}Dx} zshpMD6|3dCqwvWi!T;XiUv|*FdxY7&K(;ga$KdIY1N+BTejh_#|4{CQdagP5Qq^9S z57gbzU;XGE*=gBp>9txf`4aTMFPO#gCEDsVo~at(EGhxkj_!h>}fHAp(( zbv$~y^nPg#eEbpV*zC=GX7K|opnI_v*}!M80PE#Lvf1fM=_uk$=_bX8;>!~^92#TXPfxHp6HecM&?{moh5=iuZD=K9{1j?PBq zJ-C0{l#6noqEr4Wk^g4NYxMV+Mg8|I?(}oa1KXx_M*L{h4(7i`RF}yALp;T)#Fd@! zBdRO+Y+ubXmG^hvN=m<(f3=QB_?Fji3Rbt}x9WCm3#4kv21pNZL|_J>%vL8xxn`$5 z4&yiwq;FVJ{x`z+Ym*I-2GF>I|D$UfMyJKU&|hbJ@c(g=CfCHfMaQ#G>V%2A|6JP^ z=_AQpRsd}jjU)OWUP0ce6%X78G`n|?X6|)HV?CJbt*Cuq#pe&=@6lMh-Y}zsD#-U5 zD?+(D{^*hGfc!{z#q|NI3Do=yF#%-_`eJeBp#uC!Mex&f0vO48oCFhj5EbC9=+<}- z{J=bPK&=fR6>vQ9z=F~{rL~g@$<53bZ^-zmQ+~cUqF56P@IroVzIlF5HjnD&(R7n- zRPjX8o#c@MYj(sf>}V9*YdabbURcPqmlU=F`hly+zR=M;PqShH>SnxrD8P$tE$>n-F~&3wN?L+?NT%# z4$zKKe-(<b_jt!-?<3sx)I)HM_le-Pj+LT(1AdMLxRtwm3Y*pjI5=7>UJxHy z>G?2=7(jZkvcdP`8Qv~!l{}k#khUOiT(7)!c`?1>H>s=?c1zwYAC>VC^UIGo9Lx=g9gGDlLjvr{ZTFSpUY+ zCQ*smbfXxfiZnIPU%1yea^x>x<1HXx95!hFe!L?%t#+}srfuvyFA#JBeR@}pb0#YF zB4(_d!*Lo^urKXj_?P;p)x4|#s0YvxR{yvuUYGT2ccS~xYsp8Tt4`Dx+wkY|{NZd~ zrmxx=aqDOj+WT2}-F~Qg2ZQ$`Q0{x+@q6Ikdx7?Tpuayq^7uW7^Sf~E)hSqPOIFtN ze)ZSaSP_>Vi9dx3%%CNxLx8G-)e}S=+O;x3FLDp}!2y0D5||I$Iu|x_2ARmEH5Wu} z5x>r_)z%>xu?t{7b8n9^gu0vsm+3DTcg@EsIE&+cM>#q#owxR_|65p=#Wd5=H+`*SjpY4Rg`nd~X|?k2 z>K|453HzGsvjaVT`X_VfJ-sx2A)AmNUVLA4E_W)=FBat&XIEn#Q=bUJCiESG98izu(7=T8kqXBDx zM!n*F*8s{+gwN<(yKsa-Xi*E;Zp0^UQ{n#7{^k3Pf1}^?fSRLS?-$LAH>1DyPIRYy zng6F7>Uys~Df+iw`bP3?>B_isGzI*hL-cOfs>F)d#)qud&5u%N=fD~NTCz2cg_Ass;Tv=jpf|Lx%#N5c5$k_q@73-Act2+rng z&Lu0jZZsnr8rQ||KLF;ZU;(b<=VtuFeN=>fUD_{ME8U$L0aJ_Z%T3EK6-O7fQ379} zJ3xzka<+0dH2s#jrTf7>n^gF}#;{na`-DgVtg={-d81I6kS8?X^<&4jfyo;?9`Bp6 z7d^Lk3|YW{EprI%SJ>3&j1(*L0l&tZFzZhkx!R{T*9u9=*E1n~6V6R%=<|2fEzc`I zY|EnmP5$5ii+|f5)JZk8{M>v}mt@>$tZ*#_ua^8O+7=Sp99 z_g1yvPDEp8B(KrWecLSO4hGQKnw0=~Ns-H#F`yC7V_eVL}hq!bPMvwFTfmv#7wPu8AoH^bP)qRTYt2mbqApCn| zTJv|Dpd6R1#7>OO-o*S5(dY9nu+SENU#p`0Y3+^>``5$!H>^beP5Iu4n%=Btw8H{W%pE&Cn~_g1wkoe%zMC$=Ym-O% zB%hYIVy&=^vrDMMxQ=Yo_Lb;gykD%;>a_gXKl`?-7BAcg8TOj`t8s2`7qWFivV5`D z<`j+svv!V6R>KuP#+i=g2qWNM_CWYu-YzJDkj1d4wM~$6;@mhrDM6zZ%(C`;$c zCt*=BhwB>6?n5pja0_{RGX($EQ5Ch=p4bA|)+oLY|F_T8j3zu*S2AY+#S&y&#jf;M z-e21PwnY6slCj`oT-qyZp8t?vT>M-#C2D)R_&J|P&hM<`OLDtoxUaVo?ajxwPb=+O zx-?$M`X18#Hm2JD?Ml7hA&kX+8I616ot0M(U1p>%3HhPw&z^qysNNR9h!+E>S^!1; z;s&k;(qmbH0~mpKRh%n#?RU ziNF67qhE2rLqu1zP~9#9aYM-bA4x9%V)B6M(0u~W59K;^toUhRUwD=s_4Nvw6DXkq^u%lybAnbbf6Kgp?yMHNeX&w8i?xCt&st_o z%vjf79aZQtmP2-4`;ujm#gQG-`REM9;+<1hjc*l;vJm100qwy;=q#A#T$P=w>^BK@zn722QoXk|n;K+k=)vH&_#_&;nBT>IxLDjnarSH?v)R=NL1aR1iH zajfduHvKT2k{y$8Kv(}?i$>)Q%Xbz_=;L}0eKNiT?>D0G+{C=ECqVzK(xIg}aZP+U z`To_&_^%&*2^LQy`c#Hl*mndP5Fa9cdw)lr8g;_C$Ez#-tMxvL{HwaZ`+ry|&{%HC zm>&oaorm@}8t&T+tgGTr+<&8GmO%Jd20-ecatUpyVLLziDL$~WzIGF`Yhz05#39!H zv;JKYpAkI({x3uUIDvR)2;BQREbR^aJ-VXqt0Sl@sfF=iMT5d3g!`)M9r32X{{#Qh zC;XazhdBev1u73<^+sG^f9e5l1n)ni1H4Qw@FMU(ob&jh=E7*7IHn8C-7v$cm0EzS zumTf_5}%?TaK+@zH_$7w+wEWdj0-HiwBEOX`9~UOyRI0ph!uQWCJqq(zweRck=JDClX88U3{H}=}V}$mF z`-_S0xy&PZO|Mq}!2;x2w28ro@foW4HAcfoRTe<6%QjdG(8v{^^(R`wNRPk^{sa6^ zBpTicoCnQcEI>H`)c^$iZ-q9{j0oYznsIdh?Uk$!|KGAwUHfbFXT^Q>ysn^&`gug# zXT$eTz{ZXO{kLKRPDhvP1TGy-$(A}};wZ}56(QO-A=p`AUDw*L>bI`DEr4E^h45N| z>JlLRMsqeC3milh@vT(<{mAU#1w0yw4l$h0fa^t%MrXwhnF&6NZ4%hOx-uJJ1`ObZ z(ubvWi1Cj|&(9{YPS{Ju$Hi;KY&niVjLjpXI=FHGCtI+hP?T^JRT0`m`wy74Q_Sz8cxwGZRp z_Cn{R=K+1%m(JWg!Q9>Z*C(YASjEtu^#6JDk*z9PMG%5@4YY4-eZC4txAi?=45B*x!bV-`8QJgDPCq>w8q|e55Cbxqd+bwCW@_sx5dY zbJ5_HjC+k*=KwTH?WGj?_XG`E6=NEe2JPYaj{N2EH>#lDv;XA%H>vo4%>mqlF534- zjZ4Fl_35tFfT*)isfw~c^P?xpa*W{TWO9I~6ZzlFESwwR16oN@@xEqGGz0z0nyS}{ zZKX87>eUQL*A=%F74mHbd~JOn!~moVYLf+!7N{srdO#;~3nznjt>*RxbFEdEa6HQ7 z6E&TqKcd<3Uaql<>r z1>cf4$}h{_X2sKa^qJa)QK>wDVpMTy;Yd+|*uNuVb8Y)IBT~HAoWRJFmlIaR(~VAh zVj)*OvqJ>1JmSO%lvfY7MHttSlQ~&chbAz+Jv}Y?9xYdjj+p;Exc|MSA*G+< zF7chL?X?=bzcK#*dz9eQz+_kazg0i+{!nA$e3EkjjxK}xr*UVEuj-A$bB#tT0Ad3k zz4lbQ67il~=~81jGypt|F7A<^8c#-*$Qmz09Nj&`&Wn3$YewCzbR48 zpBeMZpW6a(rcM6;MDV6L`V)!0wU**;;8|BFR80y0%Jf_@w59Xq)&wIs?vNPQY}$g*AXF zsDRJX8R-4en#t8k|MZOPg1l$3go@I)iqWhVvNjz8PRf7IdSnl!Tcmd-hcV||>jk+M z$gEX3GKV%AtJOgv_BH+-`-+8IEl^xtjS-9tWzw8S6C&-$g<0WWJ%43ytfK3EA+Wj! zVKc-7#;ktZKG+fo>pH4*I#mIf!>BUP+P!&z?2^t*`wOv!o|&f@^}@9okH1@0`lSU3 z{YJGdQs6_f65=jq8``7Z@h7D|Dz;L*zddz6yKt>jS6xOY4++8fnxwP-`OrBsJph!Ul&-+sjX zyE9g-^C{YI!()#hJ#xK?GE;$tYHXV8+s_9+YTu;S^hlqwnx)A97!dFP%KunA;ErHi z-rhC8VgMUgEI`l#ga6-wvwNoI%jk&G6_xIPwbJANGWg$m>1o8;%J?12|2~9hU@Qz^ zJeJ^auD1Fh3Fl$}o-bi-U$1Kpm0mNhg>5}D2MA0+SJ(JAa}e@fp)K^=itDcZ_hjCPh~sPC2)oGYBB-M;irxPyb`^ zd0nq4Yz&8pLH5Bu+wpd&{TC|D!-GyHreH?yh}`@_(YMY)`*01OjxQE3D~s<3t0jy5cc_26^&!zUlz}{$v)lu#HiM}IO@=O%l7DdI-c#M z@NZ@yJD?es?(E+b8{36k-y-Jrma+%v)vyA0VoLEmasNxjwZ+OsvwYL6J}Y{ERI%jO zaWAKV{>QkpgGztI{o+N@VNqR_zjcZJzX$!AkoF=$iblJ+Ya zUm=zk_BHD4h0I9x+!jHj+A*m{uJcvxIMTU{yN8(ZcM@Z=K?UzY`%~VpI{Q!0Gy_oc z|C+-T-mF=XT9vWXH|>zFo-XfU|NM`S2mOOkSTsX-2v_`8{{O3)+q2IyTWT9%tXusL zT>(SnFN}xlZL6zK==$0wm^Ubz5c3at0BJUQF8|+-pSB#aKdRr;R0Dcm;H5+*r(lmZ ziXM+fG9%z}a{qG}F=O!@W62ob!sEMnZ85U~u7Pd#&4ywDo-Gy@7Z9dZZ*K}MV+-jdb<2g&AF2Ua3Oho(f|EK5v|8+#$2628zPnwbBSw7n`_p%Q? zz1B^qaVHw*FXsE9$4$PuB1L|-8|1S)}DJ4^pC^y--r#LOSSJmN+*=!(xCX2 zs9&@t_^(IR-?vnSTtp3u=az-}q#7xT8iju0Uw9Yl<@c@o=@t7QjXjUcFb?gDtp8U> zr*qS7ureo7fi@cpa1M&})r;>7?$1%PJ%DF3gS#NC<2)-a}1X;O!^zyAD) z|K~FtjPLIc-%*{<5#a4QDxPnGi}wJL^6J(}?8|j!b>%`1b@>R&SJaG3uLlcYkVc&O7TA-^r_8{sQg8uLfGXlPR2){UU%U+i=*?glC!zU`A?$qQKFEPE_FlXbjDvYN*O=&|<|Q(3#| z`TPg!GJi%FT!PiUk*I$H5x`s`|JkKsrE=-S_?_suXzOT;O59%)Y1WPF{p9_-tS8}J`y|5dHSF2wKy@OpQVYrKS!za8FP8lTkv zTKrf8Faxj!*rZbb(}Yj%NCitCb&T(#yMA5P{`zNh{S}^R?tY(2wNDrRmvcb>B$)WI zT=!NL{JUR5u%?ctjP}5$bR~Vo#TLSBOKYrE%MqBC?vOc`R}Hj9S3O`yV!fdpe%4$$U3sy z79Ztz(<5-F{F!VIdW1Ddr%{X2oSIG{}f1~u6`CNJUh$FQld^CK1Je?loKoe;kn z4Fvg{V*#2_@&5u|XbApD)qbk@QQl9peKdnywP=d_J&KI^U=Xewr;7G8yC)fKJus@NG2j{{DI&h7IeqBM~-`q*K4tTek5_rDR zFV3L4C|6m8tFLd^3hQpk7Dx*e|5pUydhT}I<%7^*CsnEeeyUkqsRlTUN{rW-6SQLd zc-)h5^Js+wjKlv+3AlmLBpWcdlqJ_Cqtd&w`OFNuy69T`l0T4NmG{l-LD zo)9dABLph|<}CWWu85B(79;#SpW29+YBzFyv*;}UPI^15wI}puyP=qa+W%N_M=_xI zBHto!n;lNinN68>b{oEb4BmeR=zkL5e|#w`4F&!E@ci|nMxcM4=nYh#6Y#>SKGo_m zdsU);)t{?oG@##}-e~uDa$d?7z+HZ<^E*xzbM**zKf936+L`?->o=LX{u77+I>PHc z*Vl+w*AHz%y?(SQ`&S=@K>7dXc&MFOz3TfC-9P?hGkyQN=W_)1?R4djOMuj8oNzbhD8~XDIkqk)dWuIp^ z!tr#!PPLC~n>vjPVVnLov} zQnYr$n(PJhJp;~p7Z%_QEY8;We&Jud-+0$^Z+h;Tznc4}{$Gt5`{z)p`cS+^^6p<2 z|64EZjkn()zP~*dKow9^*pz!|U%8UaE7#U|ukt2&`|!+)pBa@kgDT#Idwo)W#Q+?o z$@^>btY9est_9Gnpzh=(Co}i@-I}*pDd3LEoP;s-3_U4o5q}?#sN{?9M*ourARC~y zg2tc@JjvYPPm+~cEpYc@LUC5HdGS(yTYgP`a^5t*kJUm3rEkzbq%90UU8yuPNEN~2 zv6>eYDuac#komU%H?oB^<@whJz2^I71M<0gZp;QhY~)L0R|Zfv!K^`hG~TT&`mule zXaS=}z4mJC3GF&F%>uS|A*||sp;Q`yy|&N8{9niL@q(R@H}@X>onV<{C9Lb)-;2%o zN(37t8!1~UYw0TgW>i;SnUvFsi!}8 zJNn;(xdDwB(^u4-7JU|P_ZLRLctUrsw$?S?7S=x)?|&P)z*D#nZFp7N^7Xxn^^JZp z1HEJaE_BP+%jO1eZ=0Z31M+3Hl?9NMR-Yy3bQIIIsW80VvHCsW0A4TjEh++M5&>LD zO!7m`RndX*n)HW%gl!g;z&C<@X@O%awqPO^0iBX2=`q=D`AO6RA5R^?;(Ts?4{<>I z{DEvu)(m}>dcgLu)}|FJARSOPz%v7cCn3y#g%cslyk1C>_g9^dlsj=_;osSOq03f4 z96*n38$2UOpOOub1u#m*ENl+~vky4+96!Bkf2(L*il4Lo#=m$={mOYdTOm%q{Mq_! z%q@bI(HZ%y_5awy={r7e?ZGkrro5&z6Z&NjbR63lF(lgnW&9hXrXC6J-y!{!>i(|u zU@GXx_)Q)aozY+C6bBTi<)>!Dsl8}OU$2Kj|1HF6H-meje@f}-($8`K_{Hc5c>e}b zL!$p$(P!vyBd9(-2<9pD%lm7tzcPPq7#|ub#=rfDetRr=bSg%bN78t;7YbHaldPQ<@IF&s~lJx)pB^>dzzwn+WqBP*DNRtg6@8j9$N$+cWAN-`g^n{mTv*_l~_Br3KC=D=ypM zHG`GGRU{x4P+Mng@i1yX=TQ^*KC3Iu#v)xxEU-p&Pc)p0;HzQ#50g2X1oGwkH9JuG ztf|p)Sbyx3Z>D zFYFniLa)?+W&Z*`tl9}z&eq#j7+tCqkhW$OP;9^!KzJ0gg1yk*t5JhM zF6y@CQt#ih^ljXWS$+qD{WbCbO|b%BbC=IXhZ6d=N%zy*UTrI0U!LEyd{jdsq?=88 zUWqGzgICf>a|FpWDX)rpyy%J>q5Njl)SyZ zZ|qwIb(YUH&ibaVhAe_@jyS)ztzb`G(OUC#EHkj{p|Y0g!S*Y2uRp~KY{wejanU|+ zm+izlzJCyt-3ITMl~(^2^>Z0VZ?E^`gX5>71Hpbl-O!<43qn7e#4{uNTtyT z*hV8f|9Um+vu#kx`-=%^zK?ByyMH(`kP z{j7g}AgcvlP_!;qfR`@Kf1y)wkNlqOr}RK_QD-c(0Pa#BR6ytdj05>rAxGX>NEW7C zai(KjuH?8y204!&%AWoqW^0ezr||T=EO|=QeOJes&X_e?)e;vD9XbJ`O$*RJ4S3_z8?(f}0;Xp;@F9gzO- z>YuGDs{kKJuKK@&t-r=+nt=W~{C_Rb;4YvRa1z>^Dgk!k6(id^p0BPWDcJ>I@$d=9 z|5bYtVgpA9Vq&^u^8U8n?hB?nEiMo$0u==uN*3Z8DuJFy|9_SY%}ub9H>n0#N z{QX00iUP*)_-Z;vU&eMlGXuILyVGU%h5Tx2&o8GMFfP7lmFaS^Fh3}tmi?9zB9IH^jMxHfaQ|`H>xP&k)z_8K1HxipOO=v~M5LtC}b>(5Gxobf(p4-jR#^e6U}( z3p$F<(`VvHK;IL}^;hTQC}01#Y+O(Ug5uYhjvjrI+4Q-3H=URr4C7ygO3U~2_w#zi zX;k{0MAgL#`3l*(X`kdrEb*=2ejNUP5^?`5a{p(Qb}l^`w~l8;9qH?nQ0rTt2;f^d z^!b%)zb@ck^ZeD{y947v{y^3JLFw~M-=G}@y-(i9BPuWejXjM<`+to`Spo4?y|Xhu z?J}}UEvYx&HTsDt;8fUVt4gmAVcxh8GyYryX!ftpAHs*Se~l~IzdrvDp<(Jx`SlZQtE&Rcs1#@EdI#ojZNRaD?u2y!-yP4n)*ba-^E@so zJgyCv3aB1|>JiYH`*JL?$Q{%LzeZiqY;4k0G6B7!ns`dQ1Bkz$Y=An1X=c!sp#M^O zhK*;%;H#1c(lzrPix-)7dR?&-7T}M3MJ&M6`Cilnr*sJWI=Pg3^_@@x8{^&N_Y?&P z37caP8dYq9a9}jqlbZo}Mo++u@h^lM|5YEVZyIxA4@SJKiT%GUi}eKY1KF1l0r-ev zf8r79IB35t9--bt;uu!_0-N`_+P0VjI1bP`J1%gf5p0PgfnY!M-)OVCU~XZHD2t%% zh$?+s)5&jsvS0dpIy39V>Pssz*ZTSVX|n!<$oS2q#(xdEd9RQj!u-AmD|K4qiTc&I zaV`qr38jr$$9uDQLex4c)6;WpBLBMZ?|Yef(hug}1zhfrw~^|n9$%q*v?6|umM~(h z9vkuIpN>C+>L13PMx(vId4Mw6vK5_RwezUjIV|c)Z{b()DyO4#N$YL`wgc{kc-Ifu;1aPG@4Am5#S#JXfr?fr#+ zqy9hR-_}CN*Qd4l6IIpF@tbmh)q2idDjJ|_J+*by0Uz>hUY zM{#^pyhZ7JV#-JHG`Eur7>zx+l6eA`p#rQzCU6tx1YKOLUjCyPg9S*65^-u#+@H73 zr_&+qytIb7+J~WIt0KU>y&>4DUm59*@PtN`{HhVESl^F@A$d*tOyS6k+q!{pE;Jcm zMz+)ge@>4amAjLG^hCWPjLHJIwph=ESslavUtT(#kF+>tEER)TzpKyV;K6N|LKI+I zV~x^WM(p4F(to4R$%2G$yRVr&zpPBikE)~ZZpn$v>+P4;&R)z04&tHOd*RE9jMbSL8 zcXjyCCf!eKds*|B)~|YT;oZJoXb+Vm#=pj&N0e1+k2Z}x#h~*49-W%UDlgTNG1U(* zvXnToSF}s?9XW@KD|286QU}zLvE7K;KG^{C{V?lKxd3JUR2eJ z>HoM6SE~ozxaP23O;ung?t~+F^ZF167}LVG?1Qo^!OPo5_?hm3l>@T|@i4P7{q{YU zHP9U4-74N+3?Qr-v@Z@csND4 zvIFvTvIs(#aA7ZQO-ys$`t%e zRzau_^KOk%{Z@=2k8DPuSVVbwvv~auk%6NV+o>uq(Ep^@bOyl!=&#P#`}WKz&FrhL z;?*Q+mzqzYg7nxtRHIR2&=x=pK-IdtQ`K@6qo{6lK(rS#ji0EjK6Mg$m%3o}hJUo> zJD&aL{GT&_&i$+Ichia$*bMx`0REyCfB*WtRqarV7^f{)WfC2_r{RBlVU=5P^+OEr zD;?~t?|~5RxGUh@Ho;a{pV9MRMXJx0v2}J)>#1u#u#_LK8m2g4_e!0{MdWE0QW2zz zfO)LT_6s$^??%Jo0$w?rnZS>s1gKBwmEivZtiU2V1fHBeoc*3ZMTfw5ic8U_Hm4%s zcYM}pI)uHHwacb5V`Dyjs=8MC1E?a%OjlU}c~@gD%-S{fg;vM#^2freabyoIYhkNl z#08X@fve-L{JlP-y$SPGK47lkPnrQ}Px9LOjG_zqW#L;IqkEYcv98O}yJjEe06L03 z8+bxEU(IHA?BMe-3lLM#F_hoacN7IRK_A(cpB?b&Ba?5Ei_^Ar@x3Kq17E*8)jn$! zb&8|VSiWY?1uHXW9n+(ekIC}gL_9Vg?Qb@HTAriQuTSYyG`~5~9#I;7K^@1s^!RBE z`ky1OI|Qvs`F^bxtG}I>vH#sF{NDSRqwZTG-5F!8TS$xL7ys}=k?=)Jg99pmXec?aw0P_Q}0WtjL5$@c-;|KkgJuoUA z0mv&G|55;ib44if|EgVZ9YA>1e87G@um#2N#=m)i@)?c*0z)yw@p)G*i;tilzRl1` z4xz_Fmfnyan5~x2MC04vU)Os1OrN;D z@gJ@;!)IE-;M?N0PXfodWAg6 zJmJ>SBlHLPEj|t}^At+JY?$ZO6$>y5O(02bOKxM;iBIx7iq*<%lwYJar6oGRtN9~D z0f*&Fvys{Q%uU-j{Ue!4UC_SE^uR4Zm@qDkNTmxMvSk5;YI{#d?e^r=I9uq|_l$l$ z68b~T9}w>E3U$J{@o)Pgd|FZPBYi?PL%O7ON>$+r|LSDmnmjQBSpnN6SpaX=^Ypr{ zhtve)UonE%g{+Am>zQL8?bortX7}!lMlw06mCj0gXB*_R@`gn(Dk}%G>dIAgTUe{S zL-{vytn24brS~VRCXZu*$D{dAf{i^}dKvbATIq+lLp%wO`xSZIAMyR0qq;@We0ca^ z(64%*ec1x`)f3W{{-H+P*}bZ|=U715Bk=+~GuEv{X}qapjs3pIsI>pK74*+$yRHDv|$Lc)0Va{2z>eIhwhALo1O$AI@o4^!?3<^<4pA|L^Rd*7W`}t?K>1VQW>g(YJFhgSjd)#_m8i2;06AKeZLi0`+0rOxqq`bM-zU{HAd2O zT-_mlrxNwqx_X< z0GAVou0*zKTKaPKY5qXbpxm(hF*QLu6kk!VdS5=4{s6V;6FMkcExSE!%gT-8SYh}8 zdRR3AFTul$vxn@SZGzadb8*71kmkSksKU`d^J`(>c-L=f0eVHh^ibVF&c^T0DSl!Nzaz_y%EOCp`P$j%d}{&9tKxoj^nDWa zFXm3HSL#bwzipz=xof}B({*#!^NOOU7*EHexE)fd_|Y7Htvu(IWZm7vs=v^!QDK}{ znWel?hy?8a?Rhlb6zOZT-`97xXDl6z_qc~zl8OZ}7oSM86gWdAoX_vhNDd!07o&NvUC-Uvs-&s+--w3ZNO z$@km)8|$_ZuE6qpA@UF2KV)yk`?Upj7xwJP&)Gq*8n!$3rzc$PdLp=w=(_S5I?gkU zs%@jGQOo$5xGkukgAI7F5`kWU1-P1sVAbTVWODjY_Bv6(X63EQpVFIR^WxKdL4JQe zE+3xnmv4|in+?o7Wb0GflX0)VdfoWc-ptj7TXPHTTl>^e)pJNQ|JUX7La;56Jhl9Pb?$;P0?uB_ z_Ee+$YSf@dVgkasbCk~P>3dcWmHE(o{$`cA5t`e-bJ9DxGubkopAOE}`w>Z zi|Fe0O0i+NXL&g5c->T7oVUyBr5%!2$no7q)^9QyzlXs7OXz>QmM)>M*G|zl^mY8L zW&=9>)QNt9yWN1N)f``S_&H!%%rDlj>YmUY&OSloLsq~_zekj_dSZ?mZTbnLFKB*Y zoln2B3&+rE-tW*`>Qxl&TNp!^!DzLH^^qX{EGk{kV4R;&@&Bh_4TfV6dg61o1@Er? zvHHI$-2czEruYAr-B9II9avCTEaz=x-ln3$_rXewi3#i4boG7x{VXs6y=v|+hTvyn zVS40G>bD*n{f_QjrLDc|Rpoue0km$YJBBMG&=nhf9r6E{c$2TVo6mAr8$_d{`thuI z>(U6Y|1hIZ-GWsScny4D1?tsCrjxVB@(IOyty`2ype7mtP zoZ1U}uR_1R>ztoHt>e^U#^GAnpt_ua@bB*i{M!mh4HReB=L4fRr_ghsyF7k ztWDa#qWeuI=9_-H-nA0*JLB&) zy;^g(UG3|NevJ|1Un57OO&zJdDZ=+?^KZQuEP<>*un{fTr#k!IQHef2q_fxWpr%^Z#^KwfWrzbk#*-$TsbwY}2%toCUP3H{4^8G9A8 z0F5b+H)Gw3vwf4ktLH7)>j8N9iEzd5;f&9rWsk($p99j5<_wf$Y>y@C%V$RL>Nz0) zv<_9Soupg1y_0$A@QxiwO zp#;2K^B$4qkm%FsnE1nZcl5vMjKi6*QFRI%OZDk@rBjlQX%D*6_A8=t^YZ%T=ZoP* zqvE@KF*WSZ5er^hg$Lm=;U@v0eZ9#@|0*bNaO~ZVF5OW*l z0ol^i#P_u+o)?ZC5r{De?ZUmWFAgAEAWctJ#Wi>OzEyh9#&i9kFzXCoRi~@sUv@w> z3swFh2H|KVAl{5a+McYMf2{O*)h?<1?&94!IVE|LI^TKeVcF8`wEW||MR6Q6`(G+* zmyamlRQ^Z#xblO=jC=&Wea=s!WFCHh65f9%-0OwX8?4SSwzO91;CM>Zf>nH1Wi79| z(dx|apUphZ!T1pM_vj4rtnG$be&YVF_6?{Hp2c|fXz^otczJ$X1V#HAXCWJcwHm>zZcO~2xy&CL!r~}d+ zH1hSiz#`25r4ot**ampzP(=c=1?m=j4IJQeEIwYOhv~(qUQ0;xL)a4>H()y z6LdRz^vy7W8KsX(hp-~errDl(C)S_ejrHe$XMWJZ#fHpX`yzjfI<~Q_8PGXjC!e1k zldVM0z~1Qw%oV%=7Tg(4Q1b;9E2|P#^K$GrH>)60xHgi-;p>BK#|@716|D>Zt_=`A z0~6PGw8^SyPx8*;v#uvFxA1=SzO9FI^X_CU?=Sz~gl&supOAVfok8ATRzv&OZy#B) zLba~X-&LMpt95UO=ifCs6uz{W^%b8^yJz2KC**JEjaXM@Oz~>5dHF;<|K##P#QkIP zL7;zRk|s}LVW)Ae6?;7o_FqSN?O3`YewP~Cdd%?KgsmLCMFq!&coJb>wSMa9ZC)qu z?>ax{`osXl0X#C~Su{EV&(}E8GoxMaILB0F1sX|?AopS1-h$Wv2;J{hxQA3fse3&c z!|fSau4Qe`(f2|N7=Z6Tm*`+5ir_i?T*Tw!u@gIhd{zDZdwGBJ3fsMHu%l;E4K#;& zQ{_}7wab6are)o;RkQoj{%P%W5!vrS^tx$^&D>J@PdX)7%-in*V zm*V~Fk?q?M8@+@G{5(d^A>27-`}QXGRzE*k^HA+)r9aqxaR7S-jWMA+AYP+MkH!C& zw+8k&js|vQ)X4Ww0{2>5@&neBnu_Xo0@3Wg#PyyCN!7Vls8--`QJqYCMtn{b^E#WqfcLEXmH>CF|C-xs0-M>FP)em~Zo@Z1Yq zfnXQJ+=TLAAsj~-{kA8z{~8I(1F8npodVnNcUNLM@y2~Qi}R=k{;(#emh3BL2Rs7{ zSeH29v*^h9rMMaWCC4%{?}nAi0!*Z9P_5*to zH@7!q5H6h^lm)Oa*Jpx%{%3VTn03D1xdnNC;aN;QY+7?KbTk%$G4kk6$XC{ALnu-3#g$U}Kl?%DJVrOM~O*qwZjTwE({DyF)6lU=zvv3{JTBUY={Qjox`~* z(<=3VXL2Xoam8e#9r+8lx)Zk8dTi`F6KiW7^cq`j;a_*q_aXRxNB`pe8Vkw-NTbnj zsesN8g(~4aQIXF=nS2ZT{wuWrFT?cS;C}a}E^xQ_&Up3G!Bhh)D!mJSI+48egLDbK zB{@AklWvul7Q2_nm#3FcFK1B_r?%^=-Gp0!HO0=KJRB=Zmv5v-;WN>2dIY z7m~}F|JH>Lf;-|ZHFMY%IP&Dem3+K;_CIraDQm7Ml0x7dU;T=05TdKx-27kfgjcKh z*DHE|b8L@ru4BvNH|3e0Z_TF6z1~snvMo)(y%kK`D{}{(x#9rvnXUMyu-_r+3Gbhu z)JZQ-SI#caRz(&44At*Edikyb;~!PN4CQZn@nk+Ly8~9VYw~_YXBGAzr21+R{nuV1 z{=cBqpfoXFBfglde-eE_w(oY3G>lA}YJHsRcW1w9KYy$K`mGTaJb`$B7$L@gsO$-h zKa8uYpV1gp)Y%zNe+RsO9b%7_U>~>Rz4~Ai+Hwp>7P2iGt-%YaqCg!%4~AKu1lv6u z3veAC?~Y29^1mDA|M~x|P5iSt=sS}65_jQq$BYeX%KY#W0)EqA{f5mfF{blK;$WvSUN9OotoO+4(;oX_QkQ)v? zL&XQ$bEmsut;gbJK7j-LiXD&^_+w4u=%nb?s8u{U&P)4H7cd_DiwE2ZS6xzSp1hdc zk29_pTk#BUu1pKI9N&3H+*ThBkk~tRPer zx#Pa9h%5Aj@h0G1tX)4lEVBZ^A~dd89_`y&pI7OTr4Uch_hbR28;DKpoE*gbhkKHr z$dKHcu9J<*68`6f`Ig10%K3VgLUo=^1X_uI(zI@sq>TPZwK;?ecfN_b;4%QgftT5 zPmEG~bz1JHYGJ7^pSOzVD_{ksa&mNlT? z_FC`z{`&s;xmko*n6zNA0oMR&bSVDUUqywg2$I*Za1eFr);{txwbPHO1Zet=VLF|8B{r%(#A-Dxb$n&k*xJkLvdr`pU4<_NabC z<2b$|+L?;Kd(epn;Yqu|`8C7G75?)3?Le5>oN%xE95Vj${Tess_2P#1(Z+W(bU3X> zZw??|61bzsoG`o-_N6c0=@nSus;EM-Xt@ZbBddZN|g>hFh5zlFOylMLKY?ri7{5^^cJhqBPxd}Vd5bCxn|FQ{s-JL>Z0p$Os9e2R19KuMug8GCHs5Ds_8z3#eMn@zdu8KrmV5dfc0Z^~}X&o8zqk02H}th{>p?&64I)8e=M zBl=o>Okc|nnB_h@zal@1z5y%di?ZvpL$eLCm(tPcA*?I*UGgxsLIaY0z?4ua+_`pM zYMd}EUoM=BYrFEsnFGZO!gQ7Kn-v7rFx2dX_q7-KfBA2Fa$$RWj@z<==w0b#(1E^& zd!gcW2HU%%<+lUnyI>Jou=#gO^oza8@Er@^AD`Tpypyb-9+^In*2zX>A7pLv>xucB z6+?@Aira;)ZsiZCm)w)JyAMjoa}Mv}=^x|gIU@eW;Qt}=t0$G(lzxjR#hv1} zqf_AAuM(4;1BX5o&#zwI+Qj^YeW^HYD)!vDTI~PaNNsk)v;Gw1o_nzHKXFeqo*w?1{#mqRc%x`y>BG z|9^Bj(5%3ET>Y+8M@*&@$KCV>8OVKYS-HBpAF`iS))tWNduk>SUNiP(E6lz^ZGbg@ zXBG6=+Mn_7PN4z&`m5PN?XduRp)B=9ubG7w7)7g~Ie(54uz;*!LYJ43L;}s?OXF|i z_Vl2eT*+16%BY=JidYYzLAqMDVqPkqE)FbTTE4h^V7Z{K_2^<7=C}VwZNR(qxqCi; z0!?5_elbj7Pq@H0*(|aH+h+f}^QhzY39AB7Rf=YQsav3Y4 zj!G^T^Se=ak829|bUj^DJnH=5s^ z=n!%-k21G!7&ugQzk2yP-`5#zdRD(@_Q@C9BOAZMu||hRkv)j~MezUj@Uj4|_3@~& zT?ln3J24h|qfpJK)-R>E&m-vghb;5`8fn^xj-ipL%@)9#qWzQh=iGysW-HG4-`nT^ z=l@=vK{nwUb%Wc@fN|f&%87l63Dg}(SJbh+uCT7Luk-TgmlgIk4w|9vwKmuM*p^r0 z1F->F0nZAN-!SSGH#!rjD8Su<_T%24PTcn*N}w`=-=hO8V1B@RH7iGLq6?$9qdnuh zQ&zJ1`Sva6rB@Y+!MAan>SxC%q!=l&+G#%v`y1>5!?KLB-@&>XrR77x#Q! z`TYhQMsG&36?<$6-o@Gv1=B~OLk>+YNN!?|&I8Fa$p=YH zRI*`Ok8LBg$_>*x{H&CIlf0Td!T&f1Z~rJ=`+r2?-#@)3{U~k8{O844-F#p^l^P#) z^*EuJR(w`8hV`FIZnRZ-9YkFSjn ziEG8LMps1biMMB>wD*TQtDC1f`gk3mJ;732?xUH0xX;4BJVw<5Xe`K2%Rh@hnl;+5 z*teJ&=yM)nVMJ*yzutJH1?2m4&_ADSe=jVKMw%6WjWU1Fc1C*&EWo2QFaR-4v6KHi z{{Mcip2+pNGKZmz%%Y-dDmlTUVBoRpFJvC;0fpw^H2g(bl=}mfS+f+@B&!D3Ur?t7p15HOX8O3 zffKO-6D#Wm%_x0a>X!VHJe*F=uFeNCr~Nc4+(t9MZSC?C%yn4mbWf z|ARjF5t)Md`JMS?`N8=bc*mhs4ZoURggTg|Pvc()(=%f)nD#Ej;${QN6bRk&>+ntq=)&Cbe}WXE4;LTJqlH zKS#p(KP|Q__hM$xb>*YWKNfow1M`#U>+vGIrY2d;oZe?q`rc-Hj$G=|rS(hm;sNpI z@ek26(aq5@boTp{Y}p7nbC}yB*58RcW2HaT+!*1;eL$vpyvB)rh;=}Z8+#Ug-rUkC zm6z}%+YI^stH=QVf$p~y^k0Q%>d0u*o^=%a9(_YU`fZ;dbU;1RI~sxFoh|=H|9>$5 zt2f96sLSkEXn{||RGxqb)Q*md9*dgB zx5w+!k8*5<185b&3Cvbmi`;kP^oR7V?4kUUq8@6%cxJiuDz9660$#{G1ed+XiJ1yh7;~FoTvv^+zS=C3hsxC7&flTAywO{lM}>*!ySc8rc?b zkPg|AaFIK*r?WSR-ZcVaZ<8!@-h+sgT7Nj#23Qtj8KNMx1rEtp$>ydfrMqGUzNU))UcB{L z#NgfG1G~bZRX->$ApdX8-`-vkg6sN(d}ryK!XDc3&C}_?^9J#Hr}X6X7FOQ)BwZnE zlI=&=g7dS9*%Ns3w?X`O#PH4XeOUASr2O>!9A-34z&72*yoR%gR(j-J^DcSMd{}-Z zyk#Nlp)_Qzt`Wtp#RII@Np6oCh!asjPb+U*o=BI}74rJoKItURvg}4 z>?$YJII=g^YaTD|Kdnz{Y=nHFBE(&|`#s^KPhsSkEy|FyX8C5;M#$)jO-nV~i zEPAY3dC;@wfBXLbU*8|BfO>>C#O8Wl;M_`&(4)BHJ5{c6RkyKq)pd3x=j*R4tos^X zt9k+Jxw>cW3oI7q_+R+f=D%hEdMw;~9*MlaM&7V#Kk zw!i{r4i7K(BS*Lr9Ry0nYVd&di?xUc-laFzu)GC4;9k7!j`S0GEWIurmUc;-GMDg+ zxpC=82G>UPfhWtU~Q zXAfmBWuJifU#QaCjP;Eh=k@YU@*VQMLI0Voc{~w}&qcTVI{%r~&t65hSV$IQ2{BBB z<=TQih@D~lm(s=O6XKn1%lj~&?<_K)P0RPtBfUw!Pc|%ljC1%7?B9pV_Y9u@H7w-A ztgz6IdA)t(Z=A-`S>Zj@_d4nm!p$A^ zj(&u3`DJDJ{fT_JcT zTb1yBi@(wTFVQb6pblZ`4>pKiF0$0@=^X3X-`M%>~ zVSc7pY}c*AI0v9CpjAI<0Deuq!PG5S6@hzJ@ZTBcsTJh969=46G`hHw3Cid_`3^e3 zTxKxMBNEso8WDZPEP?0ZMpUd#CL=hZvVPE2c(>O}%~10XCL{J+_Dp^@-GlqVi6@qC zD4&le-mv^GT%ad&hE}Ej{qL-Ou_}GV}KcUMu}Ad7FIUco;z+Y6$lLVJ*qa?FcW}g-v<+R(SmVVEbn!6PT;;Te3?!f{MH~ zvV*cqu`F*1NhA-y=UVKLcH2ELDt8le_!| z%)g3q`Bk1_r|J>O>{axJ%Zy^Zj`x|(dmy;K6sB`TxmI~H>!t3J_suRNpRqqH_^6+v z)>l|qsqB4>i0Oz@xip3~JnoD7(7}5{`e?3)=dX!gBOi2f#rJzYzq)wt!JP?R8{ExX zwOpR(r@QAYfH+>L`L*3Qvv>WdD}03ZfPX#G_|Rr%*nx3(3Gv-hGJZc|FQJry-LmClleR<1@6TA zUXu5Mi?5P@o4rhKZ5)iCJ#&g*OJ}E-k!^39M$9Idj!t+UjNo{-VXUn&h?&O6q8VHS zQH z$|j^glUK-?)ps}Z`sSjHJWsA~K5llz+5Ui<3m6evhK}2|pjA z=Pyc@B;O^grQ6bbU}E}VS`RhhdRE&h;e29G8sy5YHQeCkChhve>#xmVU@7JFhC99AVP<5bIe*dgy{pi@}!)S2)b=;lm^?TvF z(;4krP4pVr?w!nK-;5fX)zhi;4q6e;tXckoD*4N>0&R+o zil1TI-w3-e*)m*hv&TcCFSSvDg(A=`!i0`F6IH#WVPdg2l3 z3F*;P5)Dtsrw^y^r)y^W(2Z;+TK>wg`+f1~r?BpGf> zaMk#$%2(*u+#b#CmFh3O#{S-sob0#Qo1W<|+MZh*FlNmTg@5rw#e}NQ(Kr$QgO~Pq z_aN7BF}8dus^4!|feVO0G`~-(U-0Sy+kpYNCRO{hm$9X>|Nnn)J-`1N!T-}wY)EgE zrrhs7pllr7L8efBISA~v;STDWS2ttd7GC~bmf83h`faDJ(FP8vF<}3%@0ttfereNP zRtzaNpju63{}cfT|Iz@=0lF|Q4}}FBPgFRCEWnqje=9^eJ!rqKc^8ZDVa@8%5z%we z-to)S2405Go6RhtJE#xV8a6jF`e&eftwY}ZjpVTO>vTl64(s1ED6VBik@n@|u>z-} zob5{&>~i_dVnT6jv2SH-OHREpKP{P2v`tYLjc^TCApD5=L^oA>4sQluUzklIE;s;7 zuq_$94YPH#I$3MvH&3UB*xw}IuHlQ{Ue?#h! zI-xmq2lvOoH7=ru!4h=864{C7MHke{8O1xr3S{)!66<#@A5d;x-jF`%*JBqh$v;6+ zyp|PE&ShTmdm#R9{@+>5?0FRI-^c%dTxrYF!uXhYMS6G-ppvoyyuVf@>R%1s|0?<4 ziUYeqHM@mbvp1n$wmo35`dlMHuNs^339is_4B)Y(PpBfS zLk0bhfd19#D82yC)01dW$I-a4dMI2g61D%4@7IsEFrMU5{$~FF6DzP07GN7}eRo*k zIP!tFlZPFG2H%c5p*vIQ3+~RSaePO- z5t*$UE52_Ic3>7-;B9PoQsKUYwM5#{2k5tCNcvrR4*hT^(iP|C;>Th;{OGZjttaYv zUjC9An%9fD^c6aXPWdOWK2|4ixI?ic(f6i!+po~#9$i*R+#1jQ1xo(>Y%bc~edO*x z%T~v?H_zM9m%Ilv4o)C`xQwdfv-6?!C)^qzziz%OD8B$J(hJNV!#iX0JLqJ*kUHg0 z^6&F?h(?AL*A&z7_it0rSQmzW3|8u7@|YdUb(rUTCbnpFzEXZ%_FUR3y_dS+JXr+y zxvRqXAB6!tMYex(>BLgg(%bQA@%mKt4rWHr#^Angv>9u5uLIsbKxe-hn?Hd2u6)0& zZkXMtY^=P0b;hRbwCqGzxQ`HMh9rf-93c*+wnx((?Qxv z_}%suwCZm7?%66kFCg@XSWLFScHXb~b&Un1KX?VB-yS0HLE9H)f!Z?Wqy~6CfHHxy z0*V3-Vmla}=vXRKZzcz@gjJ|kq#xx=E~RLWfvB= zgSW$q1L&OJ89PuH4Sp@=(XN1Au!If+m*vOd&G$pm+nu<5@BE1TG;#>zVF@?!dmLP2 z3YO+7tibVfDc=r;zadJ%W%&d2Dw>PF{|zg0Y+rQb2qza87o*WA=25%9E*ZVu%AL#m zh?@iuU(2bpgLpH}D}fgYUE2$%e_h`1xr>J+t{ApQOU)DgNUdOG8Rc zN=xEX;@a_pV1FkveCxvZ>)`+Evu^iys3+L^u>)&H+eODk^P)QO`Sc8_U+TsRf)nU$@eoY-DKxOB!NwC)Wk42mbzUjUK!yZ+80lz6SQc zi3ZT;zm0gx5yVy0{l2%eFV;A^U;YjDWBax2iPzS8O`BWvzcs0vcWaOy^;hav+mTwX zb)fI?9zeY5R?y!`w$J_8{@p;o^9dM9kU2cgzvxWy?pbVSp1)Y0?B%upf7^fi`1#2P z_$KwbO~nA$zyasr4-5c<&a!HqII{b@{3V8yx(L^oI1Tcf|MPy2E2 z#FcDYnJLV1fyoCn6LnKss&AXwn%*Jb_;M1Ns>85iFAzDN1^mwm1AMEo2|Zg6Hx_H| z%{ZZ{j2G_P+KajDhTsEShYGlxtoQNNdu<*f2llnr?DW>}$=LZuXTQ!XJLjdB?$Pcm zfYPaqBRU4VKa$*<2KaxCx8>Z*8*)#fuV7Huz^=X6dJ4HWhjs1BTL}7*Q`m=|#2#cA zcQVqT10P`yG{XG!DSQc?@Bz{Lml%2Q!7Q^gL)lmG+E>7*ID@Rc30?2-Zu8aQnI)LH zU;+9g-t2l5`+ouBmNu#0Zg44aL*H<=C$WW_J9j1jU~IRe8TsGQ?Ma^I=4v*C8+bCu z@!x|6IE<{`H|Y^wxA|J*Kj-PC>fa*A&+It25eutRO8T9jR zSY6YskeuJMx%|KQFKx_Lm}|Ce|38Mk%m-MEn%oL6-~v4D>-andwDqoPHy)W|H-lO0 zHQ(g@;`N93qxE7DN`2`c6rZisZmDB=AuUP|vt$Y7y@5sr*Qb5-!4GgWs__8(1PMd1iA&b8>S|wD1N*!GDIOycG_ZKsL+- ztmRnP;AzyrSIF=`vfJ=(vvzLD{5c)n2jI=mNkr~+W)PYmZ9WJKyf>q2_v<218O z>t>F)lL*6P-n#u3cK=Vz&i9M1ox6IHiSQ!X2S?&bbf0B7^A+{%-qC$n=l;Ca>?P*( zJb-+{#kw`Sy@;B*l?dPM=$VmN{E=0bkCDC}(k^C2L}KzAe&N z6rcZn=G3^JT#v)i+S^l#&g-GwkLuU%8}GC9wZl>QbxjqkUwm$@ZhU}5;@s1}w1qHz z;rsO9sqxn0nuAdOw=lOui(J3^sl(kX8(o zEAriz2$Q)1jtp{CQ055PxQYhaE4USwYde;K^i%wV-iqIl7d(NPBHv}kpm`dL6Y1KJ zcUB$3+(E+|FE!?AuFe>@)0=lPr+5!$5jv7g7~gU6Aj>#1<3{uSNk$OP3cA+8qrQZm z{2rZqcV6B3QRk-J&!&fN3F35zqT27phJOR?KM);oGJ4=TaQ_I}z5A?l%{m*l`!Sec zc-L)R!`L#6Uizn5?(Vu6-{Dj^<5Kuy47eZ1D7{nQlC9AJ^YZ?ZTgfG=eXhCZ#9$R!l%?oZRd)dBuxHS$fc~`L zE%_V(JMBZB@L7yy9!X}<8+Zd>qK9jK`nSJ|N3aIHgFkItfmhJgT&4Nr=FsM=_yq&W z6~4Ao0&>7OnBZY@;~f|O3`{UP8T^|utJbwd2$t(SsB>87JIph-Q}^F=e;F>=VV0lb z&p$x_+_KpDqvNc5Pi~CUbSA+4(@bm50 zyOT9zVXb@Mu%YBQ?A=jx`{wI?$bqV!& z0O;G1Qgb#x`}=ysuNjABKcA%^e?R#*;yHc#Vyaq(%eO)>sBeEVyQX#06HM zCbtCbza;wbddF;x>Kae2?S%?ir{bGw@$YqQ7ik^S;@>r4qqLoWWZQ3_Dn?w!pEMZZe1UJ;Pw(laq;oOUDy%SYEt~H6dg}%m!zaNt2 zdn@^U3osJsWa5QWJHNp!f+uvppE0=onP>c3W*W4wei6nMf1515Wr+)Z6W@PcvWdQm z|Njhqdl#_ZUiAMh%c#83-H+|Q4DtK(I(Gu|voJRQqHYH>1JFv$BQOV^{bceL?j~~S zeCHRkTtrWv=)W4okFKH@qhW%dwRUJN)B31+TXS%8{^sqC{mJIHe|l1UXQ$(Q)}dU3`k+7R%vv({qb#Y616o3PYaTGt-jiK9Q{pwgpIB1g6#+l3ZpTK%83 zp1Fn6~+wbqRiquo^U!y;KZA*!2jE5M7 zI4zq@Yg6nCD4BuDKJ&M81cU+1RI_i;Z1ujhD|-fZV7&PLM7AzMT|N)$yOSUAXRt7Z z_Vx;&vcf`)c0IIlBa@8wX3m>unv1kHBW89Xh<_Mc`*<}%&M5lb)iMe@`zTq&@8TPL zt(s+bU*-$FrrV?4x^*r~zTYrr=vaY#VDtROb)Q&e@6StC|5s+2YnDHg&Hq~WN!`aX z*6%oSg4Sn#k#5}|@4TXOpU!1EUt|7{!%-S4kcD` zS%v$ni1QiW8&kcT;}O1}$$NP}(;9}FS-Lr;aRKk>T9hdITwh5*6}@SRmxkmr$;X}B(j6RJ33i{N=ge%exefLy_KS^Ljw z`|a~u0y4l7w2_hrnz@B9Bce7Aj6H-7cmT8+8ITF?q;G9Fp0_jP zKhb)w^*WhEUj?}XnWt}fw^zw6UXqajyLBGP2;bjyUekFi%hhE659$0RGkgqYrmp3f z#jDx*T(^6>UCEq&JEJM)>Gm#&AI(|KOel+^^oN1}>-oEp@54VVU7vyhMlz?!c-}GcCwzj{8v8XaZ#>zU zm$~mQY`#KNU>oKWIh*X^Td}tG4UDUJU=%344KG}5UW*F926Wzz7yd-+Pp$4S!Lp12 z-m=@SX!s);`F93+1?P}wcrtSZ9L<=(fs6(2#cTkJb^Cm`PEbD)rExdt{sTz_P|6nxh;9c^w6 zralW3$Q8k6+C;oR6~J;}d<%5`Pw~x$Q}S6}l*Ov?qP-V`*s*6AwHMPkS5CSMoG7%Deb_g%RWeZNRiF;I?>* z@_3X%VUhgT=BNSPmR4cQFe)wn;}aMYa9M{|yg{X6OI%QYz0CWrA>W)Au+ z_HYsG;VjG`@B-0+aYUU*^Es*V2Ug-8cPBN*HWp~^#O&8kHor&@`cAE*8ABuw+zS?+ z9si!nAGnh><`rLug&qbY+y-h#!4i+Qo^MTt4c?K;#rOY(2C00cB zq3S4gonyl`xx1nOwD{hI_tp0M|L@poe)`D0Cweb^N?|0i^^nv)#n?q`Cs4gv00X@dd8fgFEy0qysXT?Ue zaF;ErY~el7zL#PL-=GhCZfxV+N*~mxPNp=?7MLUx0Lo$tVGWJf7klkSF!}wqrPqcDaO!VLT%na zUf^+P0>=lfMBA_>OuK}uYb6)klDc!hXoH|WHJe&bTZ%SFUtn~h)<5Xi14y*UPsgM? zdqCz5aokYG4m)zt9)c~1Xr3gDUg!p!|`_Myt-9OY>=v`y#ys6Zx;b zew0uDhb!a>Il=#a$`1M#kF)pl=!54#{$nt~bzETxQHcGRk$Y46CYEn4*7{uQJ?1*T zyt!9%36OsUV|Q02$7u@Ke;72qj((ZDdY-w70d#M?kD|GszM5Z>6R{6@(gQ%5cHfBK zrd5uQRYMsAa8`W0&>%u0kTa9aOPc-H< zZ2z5=PI;XFm+&?p=a^ZOI`z69uLel_NUKpD=K8iJb$?MHZAAVnO5iLoVtnawe1NCH z$_PBmA$XSCQN!iUEKz2$=}~IdU1?th{k8Is&DXYs6T%vPh9AnCL$ybxU%KQ4Yr)J> ziw;l$xEK@2hyiC0(B35;umc=$Jl^LBW)1s@w~K$1KJgy(jV(wY;k#hw30UBMtmbH* z@kLl-k;Vp%!x~pNUZ3-W z z1bu9~;Qj1~w{Nzjana4d+u9#9rsHemTT3|{P-6YjUzT<3xiut0Rd{-GGJ$XB61Ub{ z!DS)`VG7R}%ij}Kwj)e*HhJWCQoa*d?!b>c7LTM4b!ER}SVjgY`Y-rTo|*TUH+WwOwl5 zqrxP$0?)bfNwXJ zXZa48(snwVz$7fx{ixLYK+?0I>ub!AwJ&{Z4>X$1Z#VnU*LGg>ZgPn~(^`a4wLM!K zx3(f)IH0vBqiheP5Air=9U20bZ^XJk1GXnu%d6Gr6u96G;sY|mM7EBr;sIB)|9-9Y zTJyIiHm_mF+8fP%C(O}fbx zUy1J){AZ7Hbiunvx<~4KCF-aT-p8@@#oj`+WjsFrU1XA+kL}-?IuZS;#at~%Mor}2 z^e+{czSTI0VU59!+irQbUWsySLD0hVlYfWInI$VV@L|Vm@WZ1pfD!eVDz&gIa}5t}oJe2Wn8sU; zxtq&^(}CFMW17D}8=S|S1J^fiA-8y3^ZDlcyqjogm|+l^MaQ*H#e4TnWxlW29=)sa z=g(nw!lM|Uye0Pj8?E=7cQj8R;xI4o+`AIQ??O!fdt~g)%BbcKi0VDdT}(pfze6^| zpF#a+QU6~gx<3!g7f=IlqXmYes81pHXmA*tDPNBc(wn|lvLjepW9(gEtxM@{i zrEgcYQQC)Bi2aDqk(^&yz&6sx;J>;AcEFq42P-p_I(>!SrVnYM4>NnznZyIPr>(74 zwU&bJ8vi1{pg)nM*oxrZTGme}wVyU*OGqw?tu}qqDu86DrzNZZjR0s%viL1l&UcF1 zFJN5IF~nvG84vg&IQa>Af|t-UFaaKWt)oeR%*>a24hm*@?H3|Fm&><3gc#zj>ent)F>3$f52!zCOg~Ao_;*xW;|!f?dx5! z;Tn`#$*r^8GAhGTj-D6ewcbzdiS8iL-{M}oUR!wAq}EE^>M7(b_V#a1J2{g$k-e=d zs^LT=f5EzKsgLyddmpk<@E<e$ppo}x-kVd1WBv{vcmgh)6RW#8C|m&^SdG6W8w=rA zf5bD|Uu_og6qYym^)`FAu+Vd`7TpeT!cL6?8$YKX;p)acji(raIA`p!85s$)^TZt{%tBR#Cvj2>(j-2 z(wxn6=bL8^v$(E}z3Hh0dK2~ApZ=wx@cN5*qt3rEl{R@1{q5VJH&>@lODicB!#0zV zTxloreZ0FG`>FY~rP40bregimLTx!J&G`S~zSw+upw1@AjJ2+_pU`N4Gm5DJoa@GU zg$JOQ2a_jsG?C1!Xs6?_z8%=vucN?M2bVpWPoxLfHiv!*dfeur@30$j0`rMq!79H1 zVjpICl5elV5K}8&a89BHh%heAIr=aLaSznOPZ*7REb|hah{E5$F@Wges*Uf$8*|ZH z_aVo<0n*=uY2KqW-{CAOeK9{@mAg0xntv{$`){H}?#27M5FLFyWxWSH=G+}x{9^U( z+joh7t=$jKEc>YG*wtdYT`SU3Us3S#w0b)=llrjs!qe_qGe9{u>sF?;6Z1O{-7orY zXBL@@;DVo{y0rakVIjnS!M=Rt9j0yMK1$0dx^Q}G`|W$N1bWfp2GRn5MPJis+U{Jm z_&FMri0_;XqPE8N=+l+fWUWR^rUmJJ+L~-*#&z8mEo!TDiT7v3*>i*g^iQKPW2G{8 zc=A`Z{jvVVwnQD+{^f^c496eHoMM|+3}8;&_fgJ2qObf|{F?KyRHKNdO(iz)73}g7 z^arkhUEc`HzDc7Os$dzoU{Rj-OCWQ0)Pb`PP6oU0q0wDF>S*G*s}ANOt~f7Ndm;A! z27ik(5^oupWf{)8FlYY~$Gh(=)t(Cw$zPnsnfd(hJU!nahxZF?mmwy?PQyUbsrWAY zRBFFJ*x#h$v=ZZRByVQ!T9cz{u4rWbX+BRb#|yu4RC9BVdr<6S&~-&bRW%@DTj)z-pqww<)HAYA;18{CrEptTKP^fY$<{f^Io)g?jxs`&mZ^Vbvaz;FIu3e=iUuqY#KzRCBmQVNTL z?gc^p*IDCtd+5H-Z^t748;at4{C$_D2kRGL&#%KMOS1GJ3i++-91CLi=c*!r@4_yR zfTNqMu@^^z{9Ul3`uOGDoc4A)Q@=63Uf9;;LpW<+yz9i)MA>pgT6^$kDH~6hYnSEs zQs69_Al5hd6aVh(7Wd2y7yM7lWr?piK@UZn+(C{mjuD%qOxRI{0{4+#E^`~~klD=QO5NK7hO0`?Q?4`k#( zMh}@Q=&XX~#yiKb(Sfb#&DfbyGe!rFK+pb)=R1!G_6_u5KZZ@7+R+5D^H(1Fe3cFV z7HC$zFV6qPu=Zc3Bo?hSz!G483BIMLQB9!s|2+P~Z1m|nKfy#)lW#N|N|~Jw@0Xr1kY0&Ln2YHwkbf|&bs%LJ zzh8Dv4OvUY@|PAN=Xg#TCGB8(Z~N{0O9?CwqBf$99tPt-fCoH37Ht94>+{&JQ&Fs2 z!vSV`r6sEO66>*56%RkwC-x-uA4_D5h-z?;e2dNSmmWYo$=Goo%Qh7s8Pm5XPknDR-zRWcyIR(&@RS^=IzQ597yp)3lv7Gd_7wkO+Hzl} zLVxhDop-Nz1Hr%B^$Zdvn3e%b%@nm}rcYn`eoh1RdQ8vI*XPW_Kf>qV7xeEy&uf%_ z^qICl5x-#FyVNrb`n~V=$le)?TkKU@omTooqJP)Y23q*93lX_`hpexmShL;nSJ$G> zt><9e+AdyX@eGRhX~So|(DQIKxZeY{(T^*Yw{GR#TV^f9 zuXlDF@76r0ypcz{FSmv5d|FFEy)Wk(1JR=n{^MbbfAxN?>carq|IFts?o+o5^|$ZV63|oZMN8P9_I)!pt{eSmU!c!w3el_c!ApN^?X-EP1>I5e@%f?+{BFC8 zC+a%eu4|(PZ0Bj+vHyA&dH}Yn%p05tQ{rEFXO;LDKibT&M6!hJ8Q2i}l(|FFGZ_5) znelRcD<$AIqlI#TxwSi>cL!F=V0YU29&o~s(YptOgaavqAF*Z+Ft8`vM8WQ?`7z62 zju^nvIY;^I3k#LFeR3Eb(Ny$GvYTS(jb8TRSya-orm7vEC8Z)0%6h6I%S<#`!m+AL zgY_l(Q`L)O)xK-g1hMntUp9zsmxs%i)Q0DaI?owbq*i|bll>8|=xzEyUP0AdSiMhZ zU=>l_23E^>BRw?l$~ubr&zVxs)^4uVM$?R10(z0Ff~M_g=l?IM43=EBeI)_4lb zcmjCnS8+f=^R%`+>~HI`UB&jKe}}*zekkxHf;Zq zu$|)$ErmRp>Lm4JJ;?y+!%0nt*S$aZ2}{ymX5136RjgLUf_#I}UHHFU#JXl{_1`WdPsX6XWdZ;D9x_!yxIllw?3=u$RK&+?aJ!LtIYkX`#4hucsO#18 zUa$1k{9`N4hg5u_x(8C0vG_3qQV=TjBMpEqXdU)d|--YZuYRmK$QLBIa}k}UD| zEp_d^T1ys4OhA7i3=o@KdjN^`$tG%rm3fLj)aSpW_syVwk1-Qh(-(XIjNlw&TTu$? z{zPaK`w73x1m06TyTo_Aml?O!x9_|z0a<)G>fNzlN8#^|$1==GuV6R&1bp9|^N4Rs zD=w|Hr~zB9im>zy_^rf-Z5{CvgMSep?=~&n_N4W<)ob%>{Hq1h`w&%})>u%Jtsb>n zg-K@>%UBt61ROgc^2M;3HNE++4sbldMwJ#YIv1ZkIYr4Zbbbw^b;-k1*{kLgZ*+Y; z`B-tI5?XZcOI*iuPn^VO%Doq)m);GZ#k&@ZzB5twa3AsIx|GWD6|!a8%+C~j8}ak) zEoH3?5VlQzP$GhA1k1cIgNP4jdvDInv>sl}0mMBF*X#UfQalg{xtaM+d$7?Daa4`zeIYjki zOH45Bw%Gaj`9Z&yKKQr&iSlSiTV!E_Xv-4)kDnPn&|=2o=bNaBN{%H}UE4a<2jWjH z5CvXq0&RDC+Qt1w6}o#@n%;Jv_vUEf(>Ldy_A(f;6ZK_oeWQD7xRmaAQ#ZL&b=6D*wI z@ALu$x8=Szq<8c<6y2CAFJcl(?>r)+j_fl7QB9LsqD8$=64tOD!!?OB#=~o4f5u1r ze}975i$sTxCo=vJd35tu8LeMxypCc#hd7zJ0jpJQL;D>I5v5vMj26%~ZL68q`na#{ zF{4@J1CI~>^^~=mBBqXonJXNt=^0hlW$pk+EXLBhcWiL+wW9*WwJkapeVq!~i5ZA_ zt-FhTa(QpAYec`^x=}qb?HS`|xUJ+R=!q0to}5MT9z~Q$N1ntxj^7i-U!Fzg@>zW1 z!V@xS*dh_NWblY{7kdEB0kkwN!|*~lU|JR6KJf_3wu1lVx!T6WHGf6#?n5y96e54l z2x)eII6Zfl2!!07n#vVr9Iul|Lzv~ix1ILyPe%#J_A)?!asW;vbLQEO?&QQQPX5cB zjhD!FIT^LML4^*{D$WZB1f$vxaV;mr+J_}<-_Zna5B7rtQIMq|Mog$! ziuP#KXy#~uXmR@o*8s%PYIAZ+t z<+e=F=Ujzj9po^+UEB3!pFL&pUyl(IYETV z6Ye37i~r%;SjaF{keoa8?zGEtUhcAJ8nK=y`k($6+i$r+CO_}$NlY9 z$`Qq@aIMG0qcDaa^$`||7I96MpjD0v{-b-M>+>w0tsI+Y@F~I|-g(Nbu%_Gmo_tx9)oP z)#4{!Q0sZUd#|G27tJDG4UuzsrW_x;?Ps=y9SZ){%3fd8YQtqU_watBSbUr(8$hznoF{)>O>qBhvxku(n^wIOVC0>VDNL{v(F>{rG_QTe;0`_!UMz&nSNP+h|=AloZ zqj5iez%kXx*8a4nb!p`)fxm|Tv@g+aEAzZTR*>V?ATKt*{;oCE;$~!w$BWzO{ix>n z2p(s)V0?6Wz++;2wg0PfU6H4rcZtUvG<&u94~2osHG^zzV;I2yp0^;}JIFoN3LtkZ ztBL3EL9XWBKDqaiQb=aRN~{fX6W zO~#_Lr(VV^1aFhq^%Bv)6Hsox6Fv;&5yeyR>fT}aBuo;&LoZ|IYWeM_EhS*5?2|@l^Iv5#;PLLac3YtLAqR%`!kVe6Z-bTpPB^|NM4Mj)=t$f8@M{cXD;N z=bFKDJb*+uMYQJ$U-@L=pyDN|5yXET3-z4oE0G(*w|emU-r8Ypax#9B;}eg(UR&=M z^hW>t_MXkjVLpbO&Z|NHpE?@MLo|vA;I7o8UR#*gC(vsMtK_WuekJzsaopik9PKLY zy#4>Lmp~X`C8BCuqWaHfzPk^}5PX|abR(G8>M~g1WU@*I;ti}xyDC;FR!Xl}>lys3 zljR0cB7#MO2oN!%q99G(9Q;RXC*JSg!H?UEJ=H3E_Goc&tCcsF=U#G%JQIB&`lHfa zTYQJu?5GOY7PaqjxxeU+@QmMc%{*baEEYY_mgn_ey_Q@N|3&m?jd$$PmX6P%{dcQn z7c>?Ih*eK)zvTRi)98Hnl>zkB;ybv%c|HT^**^=0z7x&%Of{PEF~&F@h0nGgrIY-L z;Jut7vBg|J(Fd8}ueXZ!mYJsnY@g!G5#u}2FL)2JfOm-|KZH%Whc*x$gA};)1RqHRue|f<_UOIIR~R7Y z@pu<;9h+O*-}LUq{|X-c4E|FRCDtzklt{$dWbq#e(ub4b;~No1F;~H@#B1+Dsr?Fu z?nm4|J^m>d8OP&QF2x(r-*1oV`QPv`Gj6x#uZWG`jXtDnX=ArBYWNnoU_6oKr?51) zzyT-W3k;yoV12Ai+F0-rB*eq@JTB8BA{>#(VAvpbQ>>boCWdUSX{kX~_(7g=t&8W> zyC@o0hKQ{$w%q?7=lZZkiRk4HTpP5;{<~j|-5@Vl5--7f&R4i0T#;x(o;q8Ka`B#A zqW5F}OHY3AFDFC+l$k$*{P2X&SdNWi5dW)y>kY}#K8krf$AJCkvHQ1Ia~fPiUEPSE zb|T(?-r$w&WzS;C<*X^eO7pkvemmmvS4&_8(6})Sa6DNg7c;BQh2)a?PL5}oN$fck z=Lp)|Y4kY_A|~i)l33VaS@aa!DGq~4`5_Si*Jv%>yI?B#4>n`*g7WO)o;hdY4#B@( zKpkHQ=Xg}H=J_uJMQvp7a7CCQR=ynJp4plw$TJlDmwS$t53Bf0E;atkU58)11MfVj z6N4GUuL^K+z5RZf`?H|DAl0Yz>IJjQ@x1HOr@seY*mYR_m&n_^kMY}QFuT{$%yx1S zbut9?za0!=rgO=l@VSylApdyPw&tH1?fT#Q%+4J)5R9KlZ}JJu6?-<3rn{&?91ESN$*g>v+4I;M(kw*r48oEnd4AJ0Iro966^5DcT@- zbba>9aUPjiowzHU5$`?74cfg^&+B!{y|{Od3G)0M>;%rb|2<>QmWEnz?ibVf=7LSXq zRJ)`vv9L+uin2ZEFZhpF9seP`-$EW!|_Lq;c#w)?O}j}Sav5e;M+u# z4{c6D_{T_MmFe?W72nL;#@kQ+w@aWO9IykqLC&|i2cGA-V15jKz|@XTa)e%CoXJqs z=fP}sHc9*B#YF78|BLche;2#!R<(an7ks)kD&F6ID|R>x5c^qTXu(;K<@Vs;V^kCR z1;I|diJU?HaO6|29OSA8%ALq7wf7Os%RTajSj{s<^_O^L7$Vz@vwMa5>B3*0DcVKP zJ1V^B8127S**j0XKYPah8_`@1HNP40*h5kJ*YQ3y-$L{>JZzTF#ue7rg#nxaaRBJ| zO&-QY%z2D&5+-ZU-1)a#d3)>MDuIowc{ZFAYnzG#&cgaUf(Gy%gRc{Xx*y-*my8+O zk(O%TQ?alrfcX6d{lQSNr16c@zb6V4Z4aKsgWo(ND2!^>Hi|P5Q*c?VtadxCzF1u` zFIRYmzr=sA8T==@80#C|9WKamUMFk4pMw8zRanOTya&&qe#!GiBLvy;?%iH;ZDo}B z<<9Amy>eBr=JlMvxi@xyCrb9``1f}Ze{n9qXYss_fs=cKaZ6`)6u&c>ZNeI7F)96= zs+8Qr->Td8wsr}8k`hQS`sygr&58RRN#=<<;5lZP@!eXJ`FTu%ETe45QPcdEm z{@V5j)Bdg%xv0&|7-k~Y*bLs>H|UBo7XL*f>+uJDVkmL>g3X{#ba}?0xbTU{^@#i~ zIkCZScqo2==k`3}HH+7%wM(uZqy_)Ek9a>(5#CSYdVad(DGUBH&$nj}qj{|rvHP17 zT{)2W%h_c3jfQ9c#K>OX<8&l?Y+XuL#*{ssH$87ru}@U|$NtNlpQLWv`?O2olaxSk z>3FlvnJ@QXJkZODLBGb>;qHz1@d?IYnT9aO^zL{I&N8P5>JsH&Gk|u~w)x-jAG`)> zqR6)G(OR;2|6)?q1pj`D?Z3po*!0Z7Q?x?xpK}&P9G^j?$wZ|uJ~ls^znoh>@Ytw| z5>N1)g+IK9l4p~Bb59J^Xix9eLnFt^3=}S?i<~Wxm->U>;o|Ei{$u> zU`)nA=zQPiYzZbdVgx0b(PBR%Ak6>!Bz4-}r(FVnPYH+v+nX)4e>Ho+E$Gsz9UZ(S zYbx*FeSnd~XVY%Y6xUhv1M%<`?ga3F2TKvQWiuEt5 zyhe1q`C`9CxYo8{w`PjM4pHl>i`Zv>2f0CUe&u{JPvHUg3HID02p7%Ct9Q?61wY*y zX7gUee|r40Kl!)(E~5av{_5y>NA(=XjP1W6qxUv!|6{z(Z^t_SX(doR;#I3$;bX`V7(qN>GT!Ms_yaGJD|jO<_XId#2OaFglg(X=7n!Q zA4e$M1)_O*N}=al=;wQC+-xsCmQTFd`?Eaj(r-+0ru*RAP&ItH76 z4R-1&`Ua<<0-hiycoQQAPN}klwyx$7$cPlt6&?uE;wR^`j=B|fpaO7ju~e8LSN1dd zKN>rT69qCvJOuF=i!8c~6vXSuk)FYG=6+mPRC%yiBe>u?JTmQlhYdV;?0jKH&rqJm z`_X&xPNMc@iQJp`_qt{n_pJP?VE^~veFQ!HH&cqk;DO7DtsHzq4fzB36BfQt1H% z>(Q)f$$x2c^Glmr+O+s8_!l>^-v$3}DR>M13)88n9Lo!wZ^~KRF8O7&s}_u74ecbCT6lbcK=*rD0ea9>Tb|~ zONIR_u>2Ph$m zZ&x!>UPB8$iAeU&_^#{ILmed$-5;D6%`N6i)GgTZ?7^l;4ko9?SFCvKY2pK_|0rvZ z2=e_DiPPf0WZrmf@gyESkND1g6s{3n9v@7{;@0>N$Aql6M@Vu7<(|Lzvm)EXwQ%%4~D^HFFw? ze7UA5i0QL6wC`$WECD0XDuFFfvd1xMXgE>pm+2q0-+D5=1osln9)d#Hn_RWc=|AX2 z`?n>FoW#>?)xlQcTd~JMO{}}D;2xq%^koJ+F&SKn_E`T|Y|kFM9rXF>`4V^cm?(E+ z28qmteLQ!r5_O%sD*Xh-2M9MMr?=ddcao7dG|FuN;#^X8N zgU3I#nse!AACJ5^1U}u2J&pPqMU7ta%aJ~AyL7*XxYz$ z|0&gYRY$2`Kt9{SST(Z*Y}vMJqkK`yB|;zqZRZ8Q!I!*Hz6G;+FJ4jeYWCo-c;2Et zODu2LM9hl**m7}P&QS1Qt`hXdf0!2k@h74-;?ozt$n|BiqG)^)ujLk_|107JZ9>-W z-teT6(|fS`qrv`f@t#f~i|TN4e2(CAAF}_9nMg@H1kZ4H`pAoKt|9Al6FR=jIe~rCF z)WvSzpcQ4Whwa|A2OrcY8W^>pjSeGth0MU0H}FKq=M1t^eE0B)7*715;5*0`;kkd$ z>J^Ij;dAJ-c&+3Ynme%_BliwxEbsZ0g!3!h2@9Odi0cCx)$=2w0SEK9J9}*mnaV7<1bKl^a(ntcP~;D9O2EM`pLAu`&pf(3pKM+`#a_Nw}|eS>Yr z2}TXnsL!|J7Zk6$=y(}GE3EZTK27QCi{AfB{KxV~6$H0AErfMM&>omNcG;n*LDe%5?H;82n?bZ@RxAF2<8xYwHn3tE-WyS*+lLk)_o3o*O>&I zw<6%1)bXBV%J4;@fwQ1A+kk( ztbeiip2H>h_m@|Y6TD6oL5Wr-x*yHr_Z7ji<9T)^kLL{L>bai2ef#&Xg#|Ar25@wx z_6MSfc4ZmJo*PgaMo7Qc#(q1aXNE6!Sr!y;^WHhifi~O*dwzP1F}o2EAUj@3L_$UC@|_VsKwRgWc%xVxx;{k3NrP z4^z}v2v3x=_+OUD5jDT$*xXY&!u#~@&Cl;mAKoB5o>M7-o5_zFj~coM?SDlT?>iiS zU;q)3@1yy*=d(}M-&Z)a{l8rTpNdF8=qk=fv2&Ar*!g2f+84CGlDa6D@0GWg)I z3j13T2k8s$Gm`hyQQPgOXqUkMR02Do1rEgX{|y=Lrd$z!?4~FxG;N#zp@_7R6KS$5#Juu)|WKQo!gha0M zedg^;6ilqne-7HMm&5+ zP_!O>g=WC1`{UV*WtG1u*4ma{_w=$A)ce1nc3O*FJpNejpuFJU{rsNzffl~x3;De; zOw9?g`q2m8o#PhG=idUJI}}DUyJrj*|M{x_!~DMASD8J#RWZI^?Aso(_i1e3?PvOA zCGbmhz>CZ%*420upI{XDxQlEd-#l_Vb6;Fcto#U~;yV%(Gk0)Jyy^Ja;yUOqR$CnV zHeEGALB6Wq#eGF~vDflMm?K<~9{=LmYrj3lGbU>2Idi7)NctQ~Ut=PL8OgIY_qi1j z%|jUda20;e6U^89Co-X)LHiGb+fF48@B{ih)`ihNSqZiGYL~#LzXYc8&Y_pc6u6(| zVN~+VEEB7-@7K~(eky9=$HdUK2RY6$RAv;=`i2i;f$bA;R&B8z3m!GD%3om3`*zM zJi}lV|3+=x&+rlLPd^_2RZn;~xdEeKfQi`5sq_&z%iuVoWxk8>EHa9ILUdptF||JQ zkvZSBy@o4RI2NHx(-Yu(?SpM20rARX%kxXVP`|r>BKhGC(Vr#uzt#|PK=C8;y?7ty z@%KcPtc@4H75sD<;~y?1&UYX7-fV~0>E9Shoc}be{(v^_+qiF+z$Y$&@p#P6H~u;q z#FN0&<5>wXF)#%$`c-^_7wAEI5Sw}=d?d^gdIUHSb4x=3J#DAHH7xOg8 zpT0}9eRu5=m@!M>4Sec1@C_!T4jv{}a67#QmtuL32Zj5gz_-C3>l?%~FrV1W0VDHf z5Q+2R<;x8P_0!_tJ(6K0`g3fuk(`si7cA3(?DEf(j{U%g_Bb%-tcw*iRXoXFnRRd()- M%98E-{%a-hpHXO28~^|S literal 0 HcmV?d00001 diff --git a/test_images/IMG2.dcm b/test_images/IMG2.dcm new file mode 100644 index 0000000000000000000000000000000000000000..b5c5b8a31ae70f9bcf6bf0c2214a72a44f94f405 GIT binary patch literal 526126 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�f3Ps{FLoSR2$9#6^=FdDDqh+4$RIkZaI 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 {GIa4+Io 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%0D^=PuN?uZ@sx04)VX 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 HyUPCuLlpJy literal 0 HcmV?d00001 diff --git a/test_images/IMG21.dcm b/test_images/IMG21.dcm new file mode 100644 index 0000000000000000000000000000000000000000..6af5f9865a7a019768b718680ec77e538720f1eb GIT binary patch literal 526122 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

NiXC7 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

  • 0okRub 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

    0GrVprf3MYFrdQ{x;%ob|X_4mJ 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°=+JN(9YL)?;SArIr{W^$Vj4^XGz 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

    c3emWf9aJ-|y~^bavW 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�_chV5&yw)7=17mzbZNk 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

    6RV~3D0R0( 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

    {EO9>Aw?Hc;jmnw#j~ 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

    Ey-NucdWoj9$ONDISRXfO~buz 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG27.dcm b/test_images/IMG27.dcm new file mode 100644 index 0000000000000000000000000000000000000000..7b76e90b24e7437eafe54010455f76a49e3b36f5 GIT binary patch literal 526126 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 *nwNmy0FvDJ%R2n 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

    ~q|= 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/Gv%h

    ccq)TJ;=H#0H^Zh3I;H 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

    @A)CDom|W+l>Rq!&^ZR3md5d8vCr{1a3LY0Z!a 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ⅇ>h;c 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

    |+c~WvJ`ki|8yWCKEP(GWEv>I|w2b}x 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
    t7vPdSp2tT<>pSLXyTzaM zq{Xz=k-H+di06L~`lQ%Z+Hys#LQ&%aEiv*cX^MZPfik`|x7H$_UN811o_Nu7{w&>= zDex4|;f?Y`v0r}ch#$OHokH%FlA$w&%8A1QfLFzTB?14H6Wmj7=G*ueQoymW`UdPT z;u{G!276m4&)}Tc-j@Z>R|S2aj;6me^KF=G_oYaI$Kw~=KOM|B{(2$?>_*5ug1)8T zf}s8lkpgdyEI2!7X9nMUqyM!4lm?)G*K(}yS0+iYYnpekG1{HCb)1s1hl9C4^Ag?~ z>GAqVD#srkFSK3YR7$n2N&uxNdBmU8u9PTMl*FQ*H0x4|g5&15|I9~P`>NIeImtr} zt)*VUz&}qoW8kCNtBPN;dx z$s$85K&jz)m^Ojq`pmmIIu`b($urm&9G@Q?{(43OuZ*3~8rxf^SvQ}V<{94|iST%2 zz?WkM5HlcZa9eWy#x!b(1b9=>f5zn5?+&8z_mKfu|GRR&BZ%J~i9?*=_#7K2jAPTk zI=L?i{x6R`u|MTD#bY7H5B8B;YI)jPREj`lpRqYpPYai%ESOWS^ z$X)0^djM%&38O7G>gAeswb%1IYyOue1r|6#gqJVjBhMEtR(Y0dj2bQC-*c`1YMgO> z#A;KfCl(OaD6fKRtIi z7;j`>?$7F7-o(SRYqfL^QQKx)m4AF!lNY^W*l*hIp?;U%_5)N`|06@Z?ys0vN|5r( z?B8Srz`ma{k=vWeTXxtJBpdgB#^yc~Tz!`S1^icE4O)o~>RfPs6|H zLH~n<^0F3!weyxPJY(zkieB!J2;9dNyyWG;R~R#KHwLjM1;<4A_C+t_C0rbN@PTQ) z!8Nf7?ujSxa6EwzL|SZ{;{L~_%$8{RlOqH6<)}5VBjW_FJ^XjM>(4CxtEHDO{fnia zSo&u@5a*<|I7EEQ7}{Bd+?I@ADTo&%cI4rx|d0DQs zw&Ga+Z4SAde_pplIbIHhOHFUgtm)5;ACLph%j}*bf=0&nS4S&v3bId%MrR}u+u&W1 z1IPgOBR(&7Ok9<9z?~ z+-ql~3i}nDlZeETxu?68IIjphfVM2Q2W(2YwoA0OjigEoXZ=)J$19v$c%+%CnUf<`fZ@GsW7y59de(=Nmh_kU0h0V(p)wSw+8{D8a`vV{m8C z-MK$&g7$Nhc2UL|e{FgG(3z0|+f!~$@cqhY{vQqc!T(Q3ww#+9u8$S5KQgAfl(>!` zNwA22@usij^ND%2e|0#xY+J?XkONW+N0Dv=D^y|1^wM0SltA_sh!}sdYABFB?hI%yc)dxE2r~K?((Y~tR(1pf2&(Z zN%7xwpBEV*;&|h*dlBu3-F`(h_jR$}-w}MXqIg}7ZPEJgjz|BVLR26#^75sB8ub5Ip7Dfu6`zh2d4EO@i2N~o(4C5y-N^VK&qFKy{)Gvt9Z4zX z#WhqIt)zugS?MNKI2Y^B#Q!Kw*+q$<1+eI6v}S6Zu|HGb`%$2LBHqBY`nlW*zOnw{ z=!usm9+v;mPja4|Y+dE>XU9KivF_sE`~%NQ1)s-fQQlB{?doF9=XE@>DDvH~q)xA{ePaD>-P1E$erY?R8ry z<$Er*!G9$}dx5g8M~Z&GexK843X}pON5l>M4~(PzO;FHe3nqR@+=@tI~<;8T@SmEtc}(GwnPE$%WebT$xNYZ5))wc z-qn!?zY`hownPe;8}P<>_UA<^yglB)fgH$*p1kBMZ!3-Fzvtom_u!chUAji)5N z&sz=dvy1+=kG!Rw@{$(Y7fOJ(cd_l3sw9xU_Rv&seZ2X1roazMfr;nT#9$E~6nSu0 zIn6Wi*Xvv>2Xi*GTXAX)A{C!P-e2T$c${+bHCHNCYIShMr{cS1jR&A>u>x4@>pOLh zh_AmZ2);4;|F5#^;A7GHH)LMGA7oy@$Aj(7(d4fUl3nf3-agx-`QMhfz(*1_V6N{c zGkf5!%rgF?%qzMsvf-3O2-%g4)rGH(1;D|0fVRJL89{uHXT!ggqHU#KgKKqW2Hl-*dj10#BoW90>o3*z#7#mrXCK#i3{}{>zu**l*E{r4Cxb zE?iG(9VqHy_+x=(#Ez>%{7$wDiR~@s`n4L(m01jr|;CHg$*dy`dZ^;e=f0$VT zA55fgZP1IxcGoiA;IlgTJ}q&9o2T{1k7oWLBZ%M1yA1v!Uc|d%F`SrjLM6aaQzQ^S zfR%q8lXUIBPb89uw^E5JMZmPJgASZQH(J668bJy2ltQJa^yP{alsei+$@{eaod3@h z_}fx|5q}SLi`qpl9dUmV$af`$dTNnRkt1?3siOv?2Ilu3qJi2-^&=*{4`o4y5@$S- zmnhmt)?3u~R^#f<%#0?!cz81qvXgE)B+Jc@r1&!LnMvx6_;XbyhK#Tn;C zFfjvbA399_R=bayK)f|5JG4tGoAj{Nm#+#AIhZlb!Q3EL5BNrs+p`|v&e-tRMyKB! zT)#7O0GRK?_?;F2JCpo!QjU+jcw*^gd5`InnOS^x{D)h!WAUn0|2;MQdSU|XOpFb% zF4jdy1FZx3!@Oa<0iQ{<(rW+PF53)ENXI^~g?>Y0aw~(O9TewRX~;LdAdO4g{Ckf2 zeXeJwKq&y<$!AZ;fBCXV6zyUd?iK%Vv~_Sr4pxGQ|ABe=TXf6Q^0{?2-?%PTM36ao z7a{R@=H!4x<^V7=a6`QI3$i+ZmHQu$FYwX$^;blbZw>z4FUhG?4G_ioK84Y}Y`1&NxsFZwqo+AVubxovZesWXS|pWW{8kS1 zmoy|D&rh0Ef|k-jsUXeC>6MlBl;RVmXY9`uI7AeXQ_Gq1s&*-yN4l~=9S@Hd|6K8? zwn75P&(0_kBiaaZw@9$AQB!qZr44nEpB(kI#UCqo#6NH2X2$QDVD;2!@efb?ieH@g z{(<0n?=;^RAKnsZej} zrYR1{{$i{MzN_ZRlUa8^L=2aqawHlHuqN18muBR?h(z|u6(UMxv;GezwvEJ+X zqyND_s{`1B_{7-l??_yqcX6?|$L=6_Q}j3J#ea8SQmlow(e3YvrvH)X|Ia0Mcznv9 znHfM2Mgsgv@c*uqKP9DIEl3pL=w&Oy{Z5f4%m<>)w#sLxCA3Oflt$otQML_vS-*h% zl@DC?zgLrfh-Cg;?@WPbp}@q6)kN?uyg9fMYqlC5{Hx5Z}3&y3A~cJw~)5$IZ9=JLEQ`Scas@%yBB z{eKeu|FTtg2LG=Q)_2E$xH@se$Kyj>JmKGW6>dljfc-;}AxIuQ2t5F3BV~NnwoN(= z{4dU`G$Nwbr(M<|HEID^XRgf1pDFNsP+(cBi%7T{j?^{WG;VJA}F?!%hmy%`()PVoOXnfLRipr19yZ^-^1pG^GVs;mVQ$NYKF>$L&-a`uFeor#P`$0CZ!8Nm zYw5n?DfAn?f{#TtIW1}QZs_((hQamny*g67hz!yx$GyP68ozH2@B4?)|IF<67TyIBTS49Kxm4kN(Crm7@&^abXU{VQ%Ap<0 zIyogDHp$OixNxV~?tLb=~-Mh=uE;$IEfyY!cPvig@1KO^tmRg}58Xm;NN zfM>rph+RJ&Sna+U;K=0|;kw|NSl>zU5w2hQ%cUP*^+T)fkG4NKDM)}*V*~J(0p2md zuHudWuAVFi-z~s=K<-I2fpNew3dpl6t6mwYh*hKqgg&R8%02BUEh(j?)B^vLM0}q6 zd$u}e3Oox1!o9U=<#N8Ot5@P*ewN!QBmO7eo=~7=U}@_VHMJN>6ZguQev5cU-qE@I za|Mw2_x&I45`raw6d>}4Tw!6*WVePe@kNh|8mto$oSuZ`2Oq)=-UCO+bUnxRO_z{Z|fH^@tp|*+-X)^M9D}%Nxd6BeZ2Yc)yU+0#Bm& zM~-kG)&%JZ_|9@>0fOx@?^&N;desUV=%5=_@-oX-?^0a5^4-5I+@wKgm~E&j2HtLM~?%{kJYYeSdX7b9ftdGa|r@9u94Cd;xrYMg%+<8N?sJ9^joL>>ju?k-l>? z*7t`?f4%hI68}3e&Gy@tYbV4$*gRSNto~y}!S@<#`D zLkS>NDkn{QN$ZdoAkWYJ^-KyF-T?AAc@^8^E)|+lwO8bVf z>VG2u;NSWG-K&epJU#$3{9L!&_x*x?#s-d$g})>C-<>$$Wm)z2NY?vZnHdASqWyV8 zAnzF7G#%ofcbTt`>`?!!`?&)<1C3co#3Yr5$SUw(`BhnHi*4mIsW_+16nG(1Kx}Ih zi2nMz@W0V9@~GDvI{@)xlnmLR51@RoHqhkEKmC7q;&%jq*?^42tNn?_^Y1mw5`Y!E z#s=^K(Es@J;GZbpDbe_E%<7=`W)|QDvHsEh9LyNn7&&ol^gc5OcxUkN{*fxqHbA<# z2Eo;U_#|k3+GcD+{cl_J10oY1+fREY@SO&EL zEbUe50Z$z6yX6Xe$K1sKYl28e59aatH|9VFkjfk)V*Vh#@kD=(EsB3vA%lN>6ulIEok+JC_cH}%3QQD0 z=NJE2#gjce+5X4|{Dsbx1M|Z!;9T1uDNy^L2te(BhS?^_VBLArb(4pWjXS82Mx0A8@WWF(iQ!0G|W7(|rKMe?|f4KA$NtQ{Y)C zK>TlL`Njjqe`P|i``__DbgI_AGNAK+7!z;>5Hs<8PZ-evbhcJH7*!rPBZv_Iknh?c zcJ?7MfVZ#L5B}Zxmz_VE=hND#(|T800NfdAG~<4zz)XQ3m;#fQcRT=#09l~DKlHzz zG`>GRgBAc<))4^Z0ho6$F!AqL0H{@86aVL3Va@_#^1A z!8=j_)Q4teBO0QVIhWV#}%Aca46b4*Ev&Qroi{3fLdSMzy3d3A4%YBI%0z0-q=5$fZjT@0X&!u*p&dz z0AN25?0$WDEPC+II$^Fe>L>bF&$j*Sv&)x6&Rwb38lB!fvl>`z9gCS}JLTmyE z2nd3V${+~HAcF7*5gBEWL9n|~L;+Dj+rJG6IBVP3+Bji<&wlD?a?uKUjZZQFj%&Y`Ms`HtIk@2&5l>$_cN^Id=aP~VqtKcrh)Shuig zWpQC?adC0e!uo}!g_ZiR(7HdV7z-`N((=ZQ%iLaE+_<=~aj7oWEv{QyT(`JsY5n4+ z^_v&gEv*~6{VUa7TBLCsM~t(?Yr$4 z@7aF-1($7H+O&RdzwW!bbN1Y>+rDSleYfwPt6J>W?N=cOb-Q+NKY#nhTX)?1lHJ>P zZry$5y|>)%RcYI{?$@nbT-vm_vTkL+D&w-9x9t{JmRFY6?N=rIzuUiGcktKI z{{6bSo0K|#lk1~ya((not{3;#a@{g5TuPmnmp4{h>gtYT3l^6a)^Au^S>90nvYa?$ zyDq7oyj{2Tnrp6o=tHl2$n{J6b@!`Y8oF~X+poK!+p+6_?)-D-cAi_}v31AXo-6lU zcJ9tS`*r*8zvqJ6RGh_4`*n-^@7Ps6d)eFt*WUjDmH(M_efw_x+y!$NKjiwkJrDW5 z8~5v;RbhARc3k)UKXBuo8?L?f0drT7|Ne`YZ(o@n-widI>lT)mR~AZGHg8;9w{fvV zWnumD^1{;kb(@#hZ?2$)_3M}RFS)to;sd%%?tkNT*Is|)(tWmG|B&k+`QV28x-#7V4s$zq zZ9Dhi?vid>wRZhNiDmsATz#{xVlS;*oIALCN}b=Xa?u5EG zSLNNV`~C;taNmbtbK}Cwx`X%jTcKy{xQct{F~8+xcyPD>7_xb#M0{oASpJ>Iko7A| zU#!twh13{)@p^HLv9x({Vg24ZZ@Ke0p7*HM+`|_Q0=WX9{*}1#x{tb2iw%vy14P(k@jU^UF_vXL<0m#ChUFTg^ZMgKDD&d0j z_Ef6x`l<7_?FW0*-zU#HxV!Dt^=In(yQi*Kw#;>R_;UCufPV%4C?43fJlEZ^Qhi-A zv^ZCzzvqJ6c6)Ao*aIH9G}qm^xMJwm&CL}PaJI3|4m51jTw!V3o*8JKT(EoB&U4qzt*w6GZa1v0KFC=iXU_p8 zS1T)<*DYJ98f(O*pL3xlU{zb30yc#+l{WSjJ zg~Mx>Yrc-T?#R7)l4FB0@436kXC>()cVvDCP`hatGSWp=F_9In#_9O=H3I~ z2IMvSTK%f_6_sL3{R`%ek-56)W%8KDzcJ;7Bf6uzHT4ez96sWnoWmb2W^_Mwiv3SH zgokIuKiZ#q$r9#i3|WG5Z|;3RtKX~#zEeFgjXrT0oerwN5Z8QzYiH z=YuV9-*h%-go(XqWbFX0@7!;i7=0c5$_04whZKf`f6F1x;idV}{@DNOe=!Ybh;K_~ zCqS!%sJ2$JOK|QtZ36qba()rS?>jq4EJG-D<`;asWNuc@cfJS2V2~`9_%s|mzy!e@ z=n%yqIjIs$qy~vuyO&AgqX+-yND94yBMbXS?nNs(H|{W3Aif+%dHVjb z0CMHLr7I0^0`X)B!j7nG@gF|;&X3Nl2D2XcR`mc#5*Z>U`X2N}!-J}6{0FsQC;0b_ z5b&dh_T1RbGVm<>`Mm2D^K{Ysgi|iOAlkh)oZ6(OoQY%k!Yf;&);9*NBqy)LzqKYV z_JI0do&)`{8p!cm)&H}6XFc$p>4E505dkW5#vOHFa4!Q8CNCHc>cAuDiFOs0!M~Uj z`elvRjEQrgXR1_oiqKt6S2iCN_LA>Zu50eXM3H~#eZftUpPry34 zHto%|S0b5v&IasT1L|p_2PZ!qAwXiyJ}k$v&6h9@rArKFU{ck=LD z8$Dl z3_g)j;!zkr^9a5fvN_A+TiFBRLo9{?uxH&#la(~Eg$73In+0GPsG7#Vwt`w${EH4z z676kXXBCEr}lSNyxS*U+6Z#k71Q>ca!t2Fpk9ej`jl@CZC6V3TdZ4Fbh8|g zc|7Zj_6Pl}GQtP;$#fi2!#AzBWCh}QFWeHg@O$Chnpzji zlf%3Y|L`3>Eh9{8YT_QckM=jUDZ&<{vlh0{wj~aAHfGD8eh9mKE5>q`=d1_5_8veQ zm2}U7R>H(0k{gL_Hb6rwF+o5uNh&d(I7mB(d4mvfDhkxzVwrFeWPWOSVzfKKe`5gB zs{iAY7{Zn1PUD~a!KCdIsj=p5EA{sP|C#%<4Kjv2p^mrp+Wxi-t3jVBWjPDj!mU@X zzxL6Z#hmrPH?IeRY7r;?#i7XLJaQc*1&hX$A+(IO0YIYp@kwk_iYvqA2JqZUF}F6m z0FLAnknb6(J;;?X7{K}%LV9_E{N#)v*>-S6ox!hh#lPX!hce_5@G1VOe{2KKKsZOV zKX<>>Lm)5X%c04G@(2%4%)Ehbo>b3r`szIpSq%o2cw`jhi0XaynlUq5C%%GodjaL+~J%Y8vezch~_IyYdXs{jmU0nLoPm3Y;IsY z+8;!wZgK?ZcZYG%O6|pMW<|+|yY?Ra6lMskaF0F`^XUoW**ow8;a`2^W-(?x@Qw9= zQiwe6i*zIxiB)PvWYhm52u=W9!I?QAxe0ALKPv`7e9AL_asUxw8Sb`xITQD2dGJq2 ztv-zvUPygXT4OqOvbFOKfenMxC#6`M6v!5U~ zXftl^i}}PPJ!uIgEXdWe&!}pMJ{&azy-seM^9c!a=lzy4gCe z#G-Z)wNc*(|J-FIfaiUvvul8y6IX__9nDTKX8OmzwI`Clb^&8yx#Xi&@s&q#c4yWD zUtbR(Wsx|sp#D`tgF=z3HU=T>y2&}XB8Ip{ev$6THaL!L&w2C8gLTr82f4@^=0$Aq z-40_l{on9^mwF#R;o$*!fqdm0>t_qiJ@rhBrt!}``-fJL3cQPYzQMll8jCHU?{EFh znNq?d=9f=%^eXladAIRkT;vt=rNpmqlxL}CJ@BPHfb8unZOUZi7pV+x)MnAgB6(jl z5z`R9k=tOIZ!v6m^9$7Vxwb4*Cnv&4%QyPnZ}XD@a-X{Hi+}EDBXA~b_?_B`OllQv zODxar8}SJKML$R( zS&rA@T8zQ~9AO{1gBaQXo}u;SgMIZsmcJnl|D+>tc>wH@dqch0qji)Ue5>n4FTKIM zA6M@6#S6&0M)3f^XJ!g%CApKEcVZ3Mi@6`1Q=2b`f6~iQ+Gy5{&;QtH&tlJdp!Go0 zOvs;CN?Fs{NUt(0V!bAAFqFG!cjBt;LBH0$c}2tPlcTYbX^vP24gZ9Q*;o=X$Ta@% zQrMOSu<^k)6=G1`Ca#V`|<-Z z<%DJ_sP(B4ceOF1>w~ql6%^7EH8$;`=E1OQ{$ihZi}`kO`UFNGR&Yr!_6wgJBHUi0 zx2cDmNqX7A@klO7m7dRC>ZDa-J!d-vzE-)P#asNma*Aw;Dy2<)BArN=k`@+F{*>t0 zr=$<=`Bq1Z7Gi?n*zx3QdFp=|z|_VA3zQ~0ISZN-N?pm3Lws9%ay($v_Ud=zQ35e# zA#pGM05&zUpR8oHM2g=d?cmT}!;ql81IfAt=S1S2_31|z-TPX>t8s>8VQp4X9O!$CRs!J8q-YtSfS zDUBS||Kgv#f<|I_4Fee7yaX+FVwfuy|6Rru+&QrDf53?MFpi}VU;L9ZX;Wg(tgSfb z+**ow+Nix96w^y+dGJ3s&iMI;KT-v+oVVVQV}e^tGj_9|h;110tONOp?UZd@QnTb? z3d?q6zq$m>VyxC4P->K6q$`+3#+1TX1T6&IaE0WlZzGX1Me@kE*d-3w3u415U{Kwy zb{3a}g6p7E79oW69HQPULh|x5lx%ZI^fp+PJb`M4-K7 z2v(BXpWha8zTbKNXkg;W1ojtwX205Ju*o#mTMbMpy3Hf#kL5%@rfuJ(N{QMeT6U{d zzGv6``arZWd~;#`?c&gxy|mt184@t?d! zxOfKN;SV{1Je|Q)i^~Qr1pFU3@<*7$`2ljuVa>@mJVraklAgJk6;VNzy~GvaZNC4g z@wbKMDxBQx+n|$}9QIB6+4d7Z_gi^{Srg9~A!3?0-`-6L`L+yVYn8;WV};@?OTz5V zYU=^yB{rh66B*=6#EL|vbeaQXgKz@h$Rmg8kU`G~3;vXHQ>l~1ka4iiNfUpZbg|PD zO1}Gsxne+`gnQ5YwEr`=#~rML_!!iwaS|y^MN7n$=p&SV3A(^kFiM#EpIv@v|D)@F z`aXzN_q!e-h6zRMdpD(t^5ku~ax>@V!rhEg`_A|z4z;D8j;^&N#CgfpCg-#Eez_h{ zdLkiU4H=6}#R3o^N~l^5+@RY?;kjqXC9BCgzHYSUWcfu;S~??-*Pi)DcQ-z1~KM9oR$?IijsS53be7U=?JB z0UEyLi)s9uA~mA~(9N~G{oDaSUh;!HK<+Y?bq%vwX7B`ZL|X7g|DaXL-(URXetc|K z|MHGs(u&6;_Rb2h6VStF0?1VhJ=f$dT20B_)Q#BmTYAtj|gQ7FOIIQ-yB?1*p~sKg?&%ZeEAIg9+^)KHT=sAT-yV-l0KncVFA9aA>YmB zcT`D}`g<>JaHrzFk}h5+=fe&7cI_AX%>FX<_dhM=4dy zi(2(BvfNTepNnT@n;0BoQ&e+D+>)BQwh&9QbW+83K>uS47(#CG6s&_SCLh|7Qn>;< z_7r(@6>D0A z${a9_+F!ie=Jaz|&vHe&`rjH`2kL2y2yJzAry?G~tzG74?Mn~fdusn7vyrVl&jNOk zcVq-SOk)hmQwGJO7(?dRQz!n#tTDwd_tCk*zqUj)uG}DcV*ZlG=zNVue22e(Vd2M%5gM5iT&crsKVh`!!Ec##0P(PE3 z`=UH)z?gTCPID%{Ui(26mT=ib1|XMK6QrBEfM-eu31KVC7U}R((BHVA;YR#(ZI0B2 za@6>uP?VzQ(_@Vde7`qo!8-eWjqNJHG2QWn_>;PmyXEeTZfkd1*#O5Cy0!0(xu(KS ztvj2F0Zu3e;5fEefDsbE^oF&g{j|=}p=TYBAl-I|aMMiVpW3J9`OaQNEs|Ta?9bY^ z(4A6}$Z_Imhps6pJF2A7UFwk+Bq~}kxNq13AGs^~z+TQ8LXlA8PUD}PgGPOa>~s^^ zVwReuM45uzl;qUNEA0;PFCU3s&P9IEA6vlE)t8`0`~?5hnV8;3e>dG8{1Yb1!IL}+ zI&)6wQKjYARzI)nHrBDeTj@4;Te@?K1C~boQ?gdVT*cc^%&?^x02^SjVw^IL4|4&Q za}Ny4F{0YMlXI|6c^o2AeTHz;rrN%(d>o!Vu>@m^SX2E?wNI*QL$IXc>?ecDv2u}Qt#m3Q0q>a znXLiw)WUjk<#lilU$OSc!77A%70>}br_9-{69KEbRV9tjizRv3rYDxH zIy0@!sm=)|(J;uI$Q8kSa=2GdT#K^c3yelmr&9;das{YO?%pw9%M_h*39-~=L1@y6 ze`+Lum@{d!%h#N-1N8obZ*xjLV-a}QvZm1k7D19a6rK#qM51wxaa6JDLfP|M3)R~S z_u&83LiQOo0w)#Qk`fdiRsTm97oXi-(4AlZ7j`?l?UjmIf;AOGi^94%9`i^hL0~|e`uc=RFAXYV2K7Z?K{X*gVLT`3BFOdpNFY zxpu|@w+bF$#t()+wnqBol1kWMVdMbt-wynPb))BbLd9HLDdzXenEDM&itntSfmqPz z-WpJ+ogEy?AINOO8fic>h%*ITF>T8dTQ->H2~&w$`9Q>iVHt>=wI{46v8Wxj<&Hez z9A%iq8mLn#%|m+`jmovi7HQNhm~6HHxe+RBU{xPgz0Hi@#?s{U=_&QeJiv14^nItils!3~&o)07jktCVF@10C;|y3l>Tv$pKge_y*Vn z&J!MAu}P~=!Do#R9S=TGy560iQxE?Duv zr}KQ|VhMz~A|UETy!a1OOk30q_tX+BgJW#y;Gb*naUX1PSIj$W9=w59J!<@ac=p7? z+i``Yh3eVm;sN^fm=W_>V~cf%5jnBqE|qt%ySwj*|BV$V_>W&t4bp1rVO?dT)HK>3 z8^rXCIWoYQqt(H=KA&h0=0UxfhXGoQ+Ou#A$H3~Xzw^t;q_(ND%N6pmrsP2jkku(H zgQXGw>q=KSL%{ri>xFuSt`dMMQLKKBm#r=Z)47kla*otSZy8JZjX%NN>~GUs5PO8n z6r6FmYNn<~|I07Q$8rhR)1SsaA@K&XV>f6rcM&D_(_fTHNcI504%qJWgdRNW^qhIL z`80fM>@K{iHT8W$^<~&#ZJn_mu(|sAgu*Aj0I`?L0@z*0wi*eZ9#a3yc-l<%BsH~f zC_8qFqfO0y_XxE#=VPnqw~KUa0PK9NeLVpzKP?2m;fK|Wpj&Rsk1XUUElQ^n zES{7eJz4Y>(uaJYrLa{OOA=YJS}7)2sxW5=u^X7LioBUSxCUEj*)O&JT>)&*(ZUDt z1JWFSLj4coL9TIQ^IBixg2a3`-$Cm_meB%`ZJJFW6UY!@1&|W$PQLPh`P*A!zA-}1 zWKNJp4&W2(h%}^#?#E{0j_&|~6R^9$8A!t#SXUPRX@&oFbxjV=#ILO$KdX)nV<@@8 z)%rrzGvgNg!$ECaseyH|WbA&qr|EulJBO?eE3o#%jGz7i*Dw*x#Q`V41IN!e;1*>C zA*W4ma1{?xDT+mn%p=EYn)$sp!SRK8=L%(j#gP@5H&AY10W=`8hb+1Zh~|e2)XVBr zHMP3RxUmStvetr@edheAQS9@knU#N2QD$^~O0!%vK4{JifaS-}i0uJx$b-XH3WlKXo8AXWT>HZZ0=C0bca%UUXYz>fI)?zv|mvfnhhs7yI( zR_g#NkzL}d@u`o9)EbDKtJR1Z3nO|znB^K|tGE3mC(g78;-gRlbiZ@|rXYXuPd=6= zvgkDqkVN_1ag# zpsZ+QZ3DG8a_j+*P!@8_8cv>NBy)mVKJG& z_QVHaT!Mdj2g_dEdnON9Kkbun0c}ZZ;ulb3<_m8A2w2TERLdhrO~#QJ6enJ+4v8Kn>9%99d^pLllc#dJ9w;*K@8whBg2U zz!hi@`oR@=%9;T9b2p7xf3i$?d%*-vyOx_`d#2>wC+H2Mhv@5CUE2YOr2UYucH zgE61&rM6&551Vwv0`;8fL6BZlIy*zlwESs5HDJs#dg+bys^4-G=ags-LB1u1ebDBN z5a@P(&v^h)&$=IL6Yd3NMSz&h`cXFz(s9rlzHiPrSeq)o@NESFDQFiL#q(tC0|neWgZ3izksS z=AwPYplf%W6W`e2Kf1Mjt80!dX<`=%I|lRyoE3D>2s+T2CeE}ak$Tn(Mch2PWz*``*8i2tAn40DfIdK2W;Y7gSMOPjQC_&lgW8vfg?JkLT?E9yzz)TH|O z;RSdH?Hap1_JG);H%=;Ksc+3q>p*XSaWQ}U0$w??`bRBm-_Sb^)ommh5&9z7my-x< zA=v%m9eg@x$2fp?(94-tK8yncfPL&akS?41d>A|c8{q5lj99!p_AR-aK?~y8nGJ9= zSrJ4&ko4dIyr{WF26E*+@qpfptP!GhObGECYB)EH+?uwnQfs`P7(J&yTTW0};-fJwT8{6P)o_TuyC ziYxcZU(xBbFRd2qnT<%ewh$%RmYbqntgHEhe=saR;{k*LWb$C2wO@CGw;7-CK$rtB zVde*X=j{O`$O1tMnB$0loH>Ao`gUd-HL4yvslgEYTCgE~zKAD?POj@n z7CXq*8%QG7K=XpJ2*9p5wI;NK8c|;KzMK#Sqs-Xg>Qi*5cf(wb-^foJgB;<3yN@^o zH|&4Rd|kA@sK?TvcEqB-{G-LOJ1(G&8F7^oNI1E$s``P%#T7XMgmp*rO0nEpC*8`wDO4TxOXHR?p#?EonAD~SQ z|FQJgCF<-iOh4Nd@SSAj*q~=HV)$V?41vFhF1F(N4-htX4WVQnw5hF8p z+@U0Axv(we0e62IJPoFC0K!;Ys>}FwSVLtryAIVQm+G(66uVr*n>!Etkm!vV*>W z>EVq$AAnyVBWU5p*R!>Gaumz&JBxtTTzYgwvz*%*@~&a`er7O1KkwKR@rmyh`B4|p0fw~ywFbm4h&sC3 zwSIiUce&c=TYbYwsfE}J{#Zk`R6;~1F=*P=*X3VzmWKot%*OSQ5k!ha6T?3=Z>#UCNRl z%u_i>?!~_d;W{V*H^)|sc!qCNt$w)f$4mibV8Pg@YI#~D)?Dw?=MY!we#R}fesU1A z+B4LS+Gw*MTfHgvoomUC9l2EYA-BdyS`Cz_4HG__#Pac*OJex)iaOa)& zx%gN2+hiQU7?;}lr}U=p0dO@VTM~H!l^rlu^QuK z6zyxT>?7IT8p`oJI}R&-yENeHEk{XKmpL-(u4o;{o>5h=I-bgtO@DY4?+|f6(^~v>5`|4V@vtl8zQkt*9+Ig#lO{ zXmkC<3M*!P5P66F=oec|p4cvjRnLHbe2(DXH3;%hSCW=P4QI^gJ~VNydzI$jTupI(~59K-r+Fu@0t26qt zlG@(Tgiteif;Mu{V*X_u&`vwlFpMzQhE2DQ)Nnhq0(*B7ep__lYQ;Y|RYy1$k+a73 zNI?$lMQl>X5o9u^ZB)gw;huX}bQ@wCG%@jl|D=r8Cr{6bN3E#ebe=vvs}JhlAtai& z;_y5n^T}-&;qjw4ttCL2kw$a1cGd+8gnGe5)-QH|sI#v~XCBn(@KIu&`vU`}Myff) zzy7|`4PuEG{A2r{T-twA9ZQ8rFazJhHq?roWDn64{4++3h}aYFGM6YffASK?pi&OP z-_IOh&cHr1DAE4p98XH_2mc8X{d`i>`N}tCQXWTYWnamejy5f_T}qGECGlYlcLOq( z?1EY@MqI7f{MNS{Tp?ZbJpGSk=@+_Qqkf&X@047zDMr8v|9pCg|BQ8TEAANiaK=sX zF9OL+Y&8x*LZ~UFP~XT8wn=oca)#d6tSwPfiON-v<+9sjoBYu$wG4Ho2IHzvfli8I|`k-FcA{UXML|FpqkaQ5q zZZhr2=~XRe)-$(`O*TzKK0BU((2-4so=V0novr{l}P#{pfR0C{jhfECBu)TNwb^7p*}-EDUv(chTnJ zC~{)BxVCo0Ctt#l6=Eo1piOC$8@OYvv<#UCcgS^g{tqS~9s}Z&GWQ z_D$1cq+*>-Oj9~_Fo#IEK7a5}Kll_Qb*Ck0e}743U18E+@&vnKTyY%if$gw}x;VCs z{lRCnZ^l-eT}}k=Sub(TRJ&hRRR4$lGXtphM;_7&8Gt(SpK+o6jEVTC*IG|_#iuqC zc9k`?N2n{mZpN-){5O3#_Cc~|7*B5YrjTzQ1F8wYc+OaR6&1)b>@JFwu1K{Q&nJ3r z8vP>PFr~lg%Z#$}GK~}&AeaI{!L>Rj@=Z!58~JZn;t0v}P&Qgc7dLFOOQ+AfI;5Rb5Uh3FqCY ztou3RuU%tbkhi*<-3_#yD@KXK{*+0q2k~va-g?mQ{yu#p=lap__J%s2^Mr9nIRKgD z!IjpAxic;~THk|y%BSx1sd~XHdMxZnxLlDjovX5W4je9ICS-H1g`QsPA^hHf?}V5= zA^6Q<0LC+Tcf7*__=k>%axAmQep6rbDFejcXDnd|M%OV@Y#-16$^*0qE(qI+ zdzcRWAGB(v*jlX?pZ5uV!esKB^<(9b-}Gev`-xSfSkBa&eo*_n+R2;!;SsQjHxUGK zW)IOf_KPe5Zga%CckgYieAoZ9x{(QTMjFV+BmHd|){DB^vz}?y#f~SfBSQ-a<(l?n z+>sLcjnqmSdnnn>7@z;t!v0zHD`s2kHw^d{V}41B8P;zO0#=}PZ^-yMwjx8Vr4%EFjEfB5chKyZg$ELo z)M~$ssW=wf_{ou^XoBPo6W|v%EQubZ3i;A^RjRbz!w2dq<ji4?~+KyuAT9b}ne zRtb#7Y7J-&of`5-MqG+at{XnZe>@`k(|(jytts`P z_N+*7&~NsswhiU8?!uY^^NM)`7;kuFW)ttm--=zTyY7?HM@W9;o{@&5U`6Ks*$>UG zC>UU&<}Mi7ZyW`yHHVC>NDzgLC73|&91Y~k!;x0bj711&^&ozWn|PvrI%aYQ&G8M9 zC};Q0OTQcRSWTrB*$KUPF?Rc>ZOHXf-X^ST&TTmM6se*@`BAX$jwVAK&k% z*5}s%57^5F^pKta44^+itEsbXoVHCU)Q7HFbe za*cmse9Bh;i2|Rmi`G)lWfmhdm&(1GOkO~mwF8u2bsF{ano{MjeA{mEf7h{YcOUW3 zuYR(wNs7!3;sK=1)A&#BAVg~fY=ItQQ3idZW>;gbEnKqF0{1jusoBFk7auPj+uz>e zy-CrUYIUvstm?@C^pBiLZSW@SBg4f%rF&QXZ_mk*)Lh1L^l2BI7A9dd+;ss1c=#?i z<~97?C#?W}2a-oe=Ps> z4oDP5ta$3_(;Hbk0K4jaIYAC!UeR8bvEn^B){b*nz}X}5FWZP<^nW|_1l*PFr`}7j z4{wnZwWYqj!3{Mrx92mV2k$rZyRIPO z895kF%isRWnxf+Z3#10_BX)IxPq~1(0G=)I*Wc+qa>Hkl-G~PVveR!vA)F^5&+5*p zV@u8aonHU^e&Lq!>WsQNqr%P@k1aC>_?q_vMPrL@rB!cV8(o=1()ZoFCpwXG@X_$E zWPm3mB^EZ<9OfxjO0P1zt0Q?nl+8xB}v*aqhBg4sI{zLMw`rP|!l|G_^!NG<6N zdJ7KnXr(yD@z2dIyv7w{z^)>Y&KP8`Rn94kUvy#283F1|-CX%Vn{O!Xe#VINt@T^Q z+q<3Jj`}>mJFkAf`26mI@oZah!nO(_jPLCgXEkf|uf6S}jot@ejBBh=#)BgvAUrkz z@m%xL%SAtmU~>sp_31&Ca)Y$w2+l3p)S|HAKe-x0OiCs%wFG)hUCJjq4qT&Okt;%? z$<%5{pLh`Uk!#AOUTt;)ZK(dIL=IQ`-0^pC;s3zV>ksp#rm%!OVQbAa z|Brs9FVbrF1%OpClhr|TVg1rpaW^}4PpDRlJn+v90Uo;i2Ab>{V(9y0?}JNH5i1_I zaYaA<Nz#DqF>$Avel)PDXEIns=!ShgO(9K@05x+Nb5SSh#1MALO51 zm_Bzz`-R=E@i)sa=`JoF*jb;u>hq%R!a6P*uXoh@jX_~1Z-VG9r;gLszQxDWo(^5R=vrOyur zM2WM->QHqZB_h*EEcmA^Y!h|3Ol4hC53l3`tbX50uI}3X}O|A@sG7l$%!NDQ9ivw z-qeqO%7q!=X};}$>j@K)2YpSx{IoQtKy7C*Q}n~Pk+yp|2bW05dnF3f>tO-}^<@jNJ9p0L-boBok?w>8t_ z;yz041JaN}MiAxH-Z_@|A=JcsG8?1fOrXE-P8~%*>-y~P+tNkq%Q656jb;x61o3L_c=*xeK|69B#3zUFfn0&KiW2Y@ zL}c`pE+mYQ`I6b_AT504OdCK%fOVgC=Z;tbBU+21L8(TDlv~*beT1Lvv+T&DEA2=- zT8+FwsXO}d?32IRn)=uxYDin-7ty}V2gb^$O!TkzyPDW~W_It0svp|U9sse{DD|N9 zAUO83Zzr-x_zfS@PkZsUIrxX)f%JUch?D0LP=JP=I&cglqH50(T ze?yt?W5&-}KjsMF2Id0v7x?7fYP9YD-)(MKMtVhbG&(kb3_vU`{C1sKFaUT-PKF2d z;RWnj5gQ3Z=G9utPh$XND^@@GghjL-G7qn9U|eL=`65w;gd>OErDUvE^k|y}aMl5o zDalAS-n@HyX(uu-{*iR6-)OB|@Dyix&^7L00fjpN3T_op9oKAMBBm`Vk9WVsy0qiKXSx7}=i8OpIJ$ zuM?L%Ol6sTk~atSA~hpqEwpG(s(pLx+gYi9fA5Emzw-_R*IYwsndtm_2MXy$W za6UcDuiiJleuC03B1mB>kxTC2XTRnm9K_$Q2~mPNHjHhdBoc0E_o{F zd?MH35mIDcOHb6hNT!nC@DBrkb@Qi3U>@E8LYOJ^4D2U*vBf1e8c@_>i7WfGQJldK z_{!8(gn%7Nu$|f2M>^~lY;~=FOR=3W9ryH^#hIQvydoOm5bEoEK7G=716`}#PRZmf zGn*DvI~s5weQZxMqFPP1E9HuH(H~2n+zlbMb20Qi`*>W-XW#GUI@tTquYTrTL-+$c z?|6D4mleHpI?#JoeQqsO^Stk-+Udt{2D>u=CXqw1BG?PXu40}haA#247c|=u)a-#s zZ>)V+@I*BT2LH@!iDx-Nw1*3{2@)pG!3#OdEXa$jf`ow+Bmt@6P!nX{8idT36nda9 z!3#OW3P+CA)*_B_f=JFqmN|?6fEpa@O=vZ+tS8-0P;Gf)Vy_f;%?cJnsk=DPS0rPXQ^xgl6T_66V zrv74>tQY-?9mEW2aBZ2Q*sB>9^YozyGe5?JgVgLGJA3|l zYUlJiHWv?!Z|@lq?QFnO>2g;2FD#9JZt(yb|BQ;ielOD5DM$)^3dSM>ECl)Fu~u>PkCvMua( zqD-!mgW51P01+I{PKXe$L6Ys{4E)Ol(fe8eYT=}o(MU~7^)>rqr~$Pn2W z88vWVX{2$VQTF&^OJMuMx$=>5(CMPz&-p4R=+|$f56KPGQzCWY49wY+_CY?i4~Su_ z@i{=`LTP56*gJKv#qK^mb^7vX17Q2}D+g!SOdhj%JBtCf75>jCp77}&c5l#18A`h) zt+9vnHRRXkXL3f{S2OO@c19EYcw`Q%X?eoK3m{%rXvmiZavi*r9`67qiPbKyD33F~ zK`e(_0lrrzUB744=Ibu9BhHXf>nQ_Z6C^*aWiU>Cy>D8%L_0RJ%r{4*7-?;Kj#|rk z;@{Ry<3BS1TEy}Sm=Fi#W$QqQG8kJ&>xOudM}6^zANTCo0`ae&hb`hc5KazS|MVK% zApR*yUjYo$ck~i-jfBQuNKezpVxJmMBN@b|pZpGg(rWs4zCPum^fB!f=Z>uR$<>zl z>mfX=!|xZIS!l*H*C#)-zRxMN`wkDhfRoD_IHOR{9-lq6!ndO=fGvf7-h8NZ$T^Oj zHHog!662GD7AkGl+};lcR`0hsM5o2db+>vDuhp+c=Nv@)AFYozjD8gF#BO2a3*OcH zl;c?#fKg*~vO^?$!_atmuu3{I3eq`X0OUE=fP6x}$Yh?16+gs^ULYs%9%&&j??!5o zR_a2H?E&fw7iis(XBY?!kOT5WO{g7yhq^v;FREROQ}+|XS$y!!e=5mfPP|eUH77Q> zMNf;=pfocl_|fs=wfN%^Xp7q(-k2r+V}HBOMv1g4eKE~LK|l8xCv);jT+v_A|D>dM zMc91hYcJ@H(KD>Q=#y_OT%TQNK7TyU8)xyE)ni5<2H05EJ-_+8sW{=nLjGml<;4Nu z|MapO_{|e)?dUpcqB~f(jER>%XBN{8M7njQ(QsquRFz(hSEN{K#1?~jlza<9!)Sgjg{!R`;0-W1W zW5z}moyaV)!wsAxyQHE7+S$B++l`G8$pa0_-F)SdD{x8vdgIvW&bI~sSTwm1S!~Syh1V-S%&c`DNoA8tY_uvIAe|i`jTE?OF@}RioQykMP z^liewW|e? zHGt^(runt|#dQk>efu&1`Ky;>0dTFxR;Hr;)!H&L=d5+)}pe^0X{U<6Mm$ z{1X=ZlZz}M1DH3tlTO}n47COLOkXhD2KrB}wL5n2Tu>U{oq6D&r*(FYI{wPi@|Tn? zaCTYwJk`Is^!@q84EOBrUHHGW(rzr<&?hyNCdR^XqMztL$0a=7`#3g;JdGIgR zthYXQSPaC172aIwy9cNTG5NF>qKI78qN0|%iZ*;#836wXY@y33q4gX1pC401%YlCU z0xSbLB5&3L&y;3sL@#9#=9-DU7xcH*lQ#!3WdQ3I29N{te!k5$->1*deqHeo`q{yI zQO)n&t9w8lSJs`giz#>m7}|eF-MOl}y8d?+8?3LEg7GF_j0<)eefs5CT$_zrI+E%n zB{^?vJ#>{ZfaswQBh`F6#|2*PoqUD^M6!DU)coNKVyG*FZoiR_=w?FHo{U4ZDBm~5 zk&>^hqWQFPwVc&u*nhOaktg4vKlpE>?j6fUQjtlH;7y+c*BpPUzM#HZ;k1DkfJQ>~%0V^r;Out~FUS>e19^(3)YP6(S5q(VVlOzC?~JKW z)X4_So?!ipVj0R>Sr=y>oF8aNC-3+irs0#G6Xo|MSewu0lRf?r$%YU(?;tJ+%A&vi7%CT=wp5tGkzWR}}j1Q|ti#SE@hN z@oIv2YKK&4tS8!m+&N~Bf8<C04rpK|SGq$2t-rO4V6}=?$bD zy6tQW;8_wvz*jG{U7^Z zJfck-{+TIYu8w>3lKzYNsr^MfWotFT25RK^I>Em-13ci0p)Da-P_ECx7!WQ8ihp9* zBN?lpA4W1ZwKJZjGJ>GrmHyL8|Fgn(ZlQfg+4+0Q=D(!Q&MSStt1@GdY@iV8!-t6FU&L7Ny|GbTd zr}B9skM%y@+_kgt|6|?Livg~!b9MxP%uCA}xYvmPt4IHTrFvBv$jm0c#K4nU)Pfq& zchu*&T5Z@^xtv#}Fn@6W?z*xrex!SR_k`|A-BY`#b=Kw_>F~wd(bVG}n6ZK($b|qUYV@Zt+F^1v*-Kd@e zJMQ#UR%H$tAo`tJ5Gwx7TV7Fmm2;&PsRgU*Uwwgw2PIiaQqBmmp5~~fuSWL$UG7;5 zD$)49kt1*A2pgz>@rj%M$6C;OfCFf|dbr`A{Nka6xuWY`E1`UPin#!-0oVlFhC{xf z2Vn|r20euND$TxcS6U2KhkzTYKt4+kLA)@8v|_s{egTkG(!y z3ZbVJPB#|Xuj!uHJ-hqy!s*2oPtAPs7xAzCzpiqne`F$M0C_y3TE&h+b_?=Opvx<_ z|6EA_$-?$4yI<2XXy3u{l!e) zZ|6IymrDQfTb+3~7hXTwm)&iwZh%@iLHu(~o@!9acfUL{2=RXMzCikeytFQ`Kx7s1 zuRo%1Lmz4zST?w14~;kv`e8(3&X2w1%%AsYGkuv+rWb=jW61N2nCN%SQvA1F{xAUV z=j53^_wV!m-t~ps^9+g&q)%>M5wZ=jyrt2Vj|Dw+jpIjOvg ztGgd6+unug+L*UJg;fC%?YyMWKkmyj0j(DN3(q!5S531efp zI$zd_51@_6edqq7S&<}br+K0doouIP4ks=v>pRI|^e$vbbW_4zh_vz8sO?qP51fcg%|w-~ae z%oS+ei+_Llju34O%Jn|}0K9|tx1Xpd$d^NXnil?H?lDjOX*Ju|S|6|iyeC6vJTs%F zH^6^17?EfcqKRB)cxKeOY z%?n&v_WNb!3v8_(T&Q&J{t^GYb?nsc`?{ADjz7`;ZTI=^-|P6-@%Wdz`ujrvr@N0A z&filQe`7JjtGk~oj`->Br^@<&MtK2GDb{#o%{tsr$Mt1<+?wYB7*S9tj|ayhnJ_Ja zc=q7|klna}c-bAp42xs0_Vt=l3?*jc0!q$YQuKEiAW{|`gB-yJNE0Yje<|0I(nuin zvy|x;Q3w9TIhYFm!F=?TdGSdJ9GruFt|{9X)`nV%x}Fj-&zmeA;_5GQB7}Gp_W4eJ=*X1H{#;f}1$#AsA5` z2v+2mOTm7u9Q<@@bYk7Ps5JlM3ys%RUu~;{w|9X5E9%%)^8{y9`je|Q;$OS&$YPFb zx_5N9?>F=t`xE-3`@8ku-Ty=PXQktRt1SLEmi7O_!ujJ1;SVaFxTd>r%_m$@)&%bh zduHlHv!K2l|NaQQf2KK*Kz6l)ifxAMCEf zw^p+Lb>3(Z^ShP40|OZsx52oppfVB6lzwnd!PP}(6!|s1%mvD6=A&oeZ|&%Rgdbe< zaNf^;wXd4>A0E)o=QG?bm&*`gd~%}aa)^H|9`^I|yF_5${*)~k(c=ooTdLn4+C8jL zy1V)W^j}!`q(9mDzpX3;e)SmqQv=8Q$l}jO72412_w*o-a7wJZe6Tiju8n!YA z7|C~3`3603rKZ;!j#mVuqnrVJ!dACpQ9$PUU);+wAhn3BF-6*41Rz6t^JGJa% z{d%y99(6tsENh==(P!sxSOQB#?N5lY!J+en-o?rwPji6Z7!PMNlRM~a`W>ke``Q4W zCsdhgqngEa)6C+6_oBK{f>zb(q{!hMgt zKZu=2w>}17lsOs$h<9})sON~LXReQTS+;e4ZG_;eX#vwWw1o@6uXdrDffQT^_twTR zw0s*;WBQbR7ywC8p7V)xA-(7+>yVk~XeUb3B2iZJ3_aMc;_+a$ab zw5%;@V;Ac=Wi{TT)~Ua*JjO?treQ7VS%vSH);iM5#`)&A)SS}$y5FohsNXM3^pEQJ z{krK|x4A#xY${)Xl4#+0DWEU26!1gr8$FuX6!htQ^(rGHGjk^94Rd6 zRL$l+v(oZ>uv;+s}E zPeobk6Y`aLs7)A)=R=&64mL=uEv>%{DA=D?)i1a2R~C*0~+jmOQtU>``5Mc4P`f@+11->R_f}E zBfbI5;Ow4Z@dyalM-cs>F*Ah3Y4aem1${ET;*q`-?T)rw?>YTzA2aq^Yovi&VFLP; zI>@k&78-z_SML)e9@v`l0nQw4{tK(+yw{T_1$=ua_~*G_v_GsL{2y9n?5J^gSNH#w zwSV?#(TnMPGVkhd0s0=Wya^0F?*ZP~59FR8c;VJ&0pNAD{Uh`pXpf%{MmV$xz-#OQ zI6&lU{}WR@$^%G2^fl+^gS3eH=nB!9F$Npaq)vunXchpz$wZ%VIU}mYXe^zPzt4qorRr>zL-D^w3 zv&Qs^nqmH2_fOqqFV64UA6m0e$M+}p3;p{3^nOc!e!sJh^ZGOU&HYM$a=)f*)jRdK zFJ{=UANqgk{&&q=|9SVx;*Q^}JYQ3G#8Zo19z4!gT|KUQomCRbd$CR&M=>?EE$DPu z3q31Kz!S~x=U&jCIY7J%co392r$KLuL|EMs$@n-%j>X^*liBiG7iCb^g83J1>gwF>*{?_-hYGKM*Zo_~J0IL1 z)vxUr`?LBT{qCBDy1c)t|K9!w`Umz8>Tl>D-aop3LjROH9$#mV=pWkuVBNi<;-251 zUEFZmUPhR&eC|;8!QYf^z*^NC%9D6*t%g0J<_NAWi+Jbg6D${6;_Yi!gMJyn)dO(N zzccXq`f`JJoC74>r+>t#)_=p6_;=JA$J3*+sgxJ3t8jv&NLo_{=kW-{zoFP-?AP&a ze_8Wj7I1T+*quSXxmPOy{ImDRc^LG+*5~1s#{;`xEMMydHE(d{h-~oR4sCyYeb6qt z#lKt;CeR8<48Ct248S`R&nlK%Kl+mD2D~ue`6KFK0T8a1XFR>04k1+ZHU=;(m<#U0 z0!WVdSMwWB=1`U*Ibw90AJ8Fk6!mi6K)(_W2>$Vh^#ZgBl?p#CCm}EdUMHxIo^+N> zPaj5rO|YZ2SJxKS_?_9)O7~n^^HMjIkN(2K<@;;@$mhD-ltq6`VfUQ=lK!6k{rczFk-C&m4%Bl>JCQ#XkqdL0LvVT7ofYN9;mUI_iuVqtp(pE$j_g zygd=f3g~jxP8$J>V7YpnH~g|niZ9L%UhDzh`;%46SQ1FrX*C1$?(V%K)55&vHk*AhIKtNgZU0dq347q$daGC!MqRTqerQq5EPR{-eWT1*A*))&Ep; z8H(J+wQYU z|7id8{<-~&`d9UD>wlyFNdLS2@74du`akMF+5c((SN-4g|Fi#J{r~R&zP|su|MUK{ z{U`d5_rFtd-_!qc@xkjV<%^3oo>o@E!}e!SX-Jib{f(e^uE?VZ@mpm$QkaWhEc)4Oh^yWgU-n@ zdXAUlAmY^sjAiV**oGM)rNZZNoNIOe5+jxJV5D^=kG%iy^y+C>Jh4LRotza8{?S?N z8alnOe{NX>rXd<(!`4m-+&!U})`v;(krV>dhB7e8NHAbuUA8{9kU(b-&J=;Ni&Om|<-l$JeoTIC?l@IBd9E-T9v3yM}+Q_~C=!?|-v@ zU-8E;RE|I1-`IbD<$pzgVfh9NWe?n;|3Bqxe6V(}y|h*ut}id-(n7=;g^YTKeQ^LD zwD{)@*X%hyr9NqwJ^=gc;EGrW;NRzt)y-&Q@Ne&cf5YubJvK*({`V}Fp0c2<$p0Bz zw7)ZyyoKN2^wGzMZ@~ZhLO;LM1F}!4xNrsRyHwY_6ZFhcTP@c}uoLj?`d+HLj21PE zoE%nC{iEgmzr8%A9eXvt44{Sw^B`G^U+v!J0>Ti6lY%3@0x56V4A6cRk-ca1H5|bH z%jp?G_}$q+KHI8akUx#@#=B~3?&Ux>&;pDN`T-njck^xNv<0BfM`A3Aw8)z)k(?`M z>K|l{T$=^p{4yE=CP0eewE3}AV!?0fGI#gD6oj^?Z_$pyzg_|Fq+co7+f`csVI@<~ zskORymk$2B?z{UVYlqqH{vrL7OW(h~|FuH>pY{LPcf)@g4jkr&Q-;%r^M(tD?e%$X zeeN1AAMQ0=J=|wJt{V1K$j%BsdpLDi9!@Ssm>Uis8R7QBWca7D5B{X=hj*5L@PhIq zp58yM|Dpbx;(>F@8n{dO1b2)r-(ZXWktem~8CAx$;oGx}3Kl`0wg~!po9l5^3!ePN@5b&t zp>mapS?fQs@V}*2`PhATR@Kn?SDxA9eg8ZUd{(vXlsb3=DEL3Mc+B~K(XZSbR`UGl z>X$dwu8N%%ml-}W&v$fw;{w(MUH^v@3@0XM&JMaOfOBRB>V0GT{8G*>>55-N=e_B% z0r&+4p0#F{1Pc-=aW9o)$vDaYuKvmEVmW9GB4ZhXYPCT0xIUwt00XFnktM=n6_83f ziiRNhCc;V0g&z z@ZpieqlQP<@z~)B!&8Q549~3N*>ya9cw&V;s$yI}eBW^2VumY*ON$Y9Robn?#$u0S z$~O3};cxr@-v4&l6z?g9d0EX9Jf*yX`}Et3d5-LF)BkDhX?;uW8F+ln2V6bw6M)Tm zTRy1I;d_P9{@HuGIAUG~z*b=PPc~E=%Yx#bPm#)41pOI*c_0XM>|t+4Dw5z@tFtG( z!v{Z}wR`tmz|8FWU#{@;%QwBScwl+NKNic0#RcFWO|@KXfFHJ{*Z{8w`=1p{OQJL+ zbYppEZz$jF@g?c_@nTsP0RJG~xd3eZpx=0eXdiH<QmnS_PCS zLnv24x7LF-p;XJ36(~XJL#vDW==0dRO0}GzG-D%#BbevPdGw%b=gbK%lx(oNf93cd ziszO_`Ebp`b+w;-saEfEUOG zpC4W`yl!~Y@V4O{!#js}4euG=H~iP({dK%|czcEa;_&L>=Y|&)A3USj;Yq{eE9H-j zoN#UBbx~Oc$CWMd-NV0?ckm}QkMJ8cZ}^&;QG9Hz8eCR$4oB9C;osCwmtU&cuE*5Q zLDmJ%E2Q|VIsWn$J^{ap&b-lXm*YS}ra zXpD?_tT#uI-CX!nXmY%Fp71@ju*@8vyv&#!Uv*ml#k-3YpYhWFN8^L|4V4C-0RQI{ z{+Fxn?)RWX4rFz??4j3}fA*AGDHZ?G>mpn92ixFZ-#@q)@8O783h=`%8~^-5BJWk? zcaPieA^Qu-+smTbQte}(siVTq`RoYdTYn(Cf5BZaD}uG`PKaMDz5nU1?++g>{s;9>syVv1^uJ!%|LgvCh0(30?;ljyeb(@z z;T6Mc3)$~1od4GF(c$C6Cx$;8{(AV^;eXcu-wuB_d~W!M;UDY!uZGXoy+0g&uj2i; z;a7_t-afo#c;oQ;;tV+98N~z-Dt}?uu%-NiV}`qyHSo{<-}Qf7*1((kmzLM@;94cv z(jQxPz$a?H>s7T^=n=&M_bItQw`z}MFPBxfRR4H)FdSAv@X!2Ud&fErV0>0@l>1iMs3u0C&y= zs@tbWT@4V_YYV6|kdl3^gIEaifLP~TF1RTJP*xjXWlAPUnlMV9-B+JGe;?h(thXEx zt>&&?WZfMD$Qe2x`;yr{-ZHbO!@m> zt~#++K@D8B;CDY+{b&9Egpxn!9ASYE*`QRO`BJPoP?Or4wi-EZ@-VwEp zdhOl4O+Q~d^)9Q`y{FVV{(H(J|NH*7HJ^X{a7Ov;KUkjp%L@A+9R7Ux_u&qO>4PSB zFSH*!S)8m)PMw@HIe&6N{hv44R_EL5?83>8$wiaxb+&D?WpY}@INs;H8=78lKtn`4A`}`E14(ceXj=iNBi@{EzcC@y5XN00Q&>hbnR1Xijjl?)c9Gw zk(c3X$HCDZ}es-BQ}a}1>01$b7l~$5zhepGc&lo zSgdqN916^$puIE=U94TJh7G ze|`*WA)<5N&uQEuM=}IwN|Ef~x}VktsMj_K187;2Q*uMbz;nDoKuUT6KY8%vA$9)4 zlSkI^@H!q=;XgRJ|KzI4<&)i$i;E9VpRBK3jwwsw_Qe8!U!KEf${zT@@Yb43cwzY$ zj~%WX?pe0L@^JT>75MCE2fU>A8r`qv1lQHv#23m|d4KH@dQ$P%1IiP)pvHZDwG7{e zx9%e6;NNRj203##fIUMWId`h{5BkBsGc@t$WN60@W&nR+p7G(Fkqig0_6Po#_Lk23 zJ$M7ahGM5Ps(#EoF;|I{vj69lime>M>e2r^18{n!Tc}*v1IRN`y#2>tN7P#d|7*%} zdtR;o{cO$KY#s3*y&nd^@^{WZ2xskd`e^_dK&H?;kV9e{ICpT%u=}Ycb{5tZZQfXY z$odJs0P_LP0OpsMm=nC9FtEPx!k$1`Rg2s4oqi*%Oc42C#GKvNst>Y*Pc8gtcW|pl z(V`INd?HK4Vy-!;ryklKa0Fw`m3hcP)XNpFX2~MS=shi5&Ny5JgC`mT;Pdi!$a8C^ z|GM({pI;v2M{6JcfwlMM%KlNc4*$lQh5u~-h5l~CLaparJ^aw{V>QF~>fznP?+$-i zdjGDa!_S%Ab8>B=9E3k+^2EtcOrAY??&O7&pQ+;ob^P??d3E*D$;&6NsQ;g>1{0SqyRARgV2f-n3w?9d zhy4l60OB987RB5kIrH@J33Z?M{`0EqV7=tgLQd8 z%Y#s@O79b!I%y}w3en3%>+9|32{^Qy769nSwsqGlotcur~Kw-3Kr^LL*c_A8VwOtuzoA5T-Z;Fx)(;v~(gGxRO>+|QWR67@H z4CeMCP29=l`q?r7>u#W5OA-8wdl4?igMYu(@G=DB8;P05xB8u&^!vjP#NnJnzMz~~ z9dm_dFt7cpEerOQbvyvkkETKTnPYaH5X*mKNzGODB;Skc$&t@?`xS<^*E2g$?tiX- zZ~s3^?;l!g@;k}{f86krnx%h#&FlZg@UO$2Cu=4f%ih0g^1#VsC(kU6{_4W~n`Sl7Z<#@nBlF( z1TQZZ_{quB%X)Z3@yQRAJ#awskUr8+ z%4`byA1lteJVsoLfYFxI84u6fSOxv0;*E&TtXdW2=LIc7Xv!qN83fH~s@`cE%Sado{5{uQ;W_n-bRb7vlJW7)R|BK{n(KbuVZOK5#R6Yp0@wn2lRj2gct`8GP=(PX~Z z>u0C(QUl=o)8YBcLH={8*FgMRsjaDZLH5qn7pZ-zZ&N>{eoFnC`XzOkuCVM>eHd*gr3)>~Ycwgfs)X3d?ARunJGEcR(k!=ejK12U~q zN~6^X*i683TsQn%?oc(r@=%)iEBrTNrD|6&bpR>;Kh-l7=W||%a(h1tNN$XO#{k6s zg=WY9&F8z>KV}>M8tFSGAncnhu;-HJRBkc*Z*Kwq8hzVY5+bc8!;}H-#iYHJR2?7% zK-@|epawY6d9ZKStg%CX+Bet=af-j}jckQ}oPW@nG&`hQY*pws-D;~xw;9sY{$2jx zZZ#HQe&2k*&bTRnwn{7#5otzQikd)C^En7IgIi`wPMTCVcPj$qQ5EQng^`JwWC}IQyd13Vi+xsWA^!T0DEx*06=raDMduvF=#shg(3>9^ru-;=QbSy0nSEdwC@%epJp)A<+v zt$x$avd*CnJF|viKHHZ5uS0JzAcx53T(F7j1oT|uC*bGChMF58F8h=JXhW@{Lby*1AA`9Vo zgIzaX;A(&@j;H|-`Fk?}Lz#XHO?KG1a$HUfSRPPyuDO3k0OD4yumaKn%W(GWjH-j{ zRE5pfhJ3!PiQ(UrV&ef0|8`~^+AXVSJYMg_t(|nWfq8y=uR^}Ozx%7_(tq@hPR#(A zk8)Xmtun1Mtz)rH)48;|Wd%$Xl>gIzw3a$iF*cXH*$$@j)S%mD9<@C?sOP;1&ffy9 zZyfb`kD$JNn*2F=8qs)TIQbyF{tX~=2~qxfqWQN{JMiNNQ^!&npgEs+zE{L6<5l)* zd-c7hUMsJy*UoDnA051oUY^$>zTC=d;x+W@dNsX@URkd=*5N$tMTYkitl;z1CqxTd zu`5sT8cT^TrlBv4AtGo=%u$^Dz|Xv+ZSa6q*nk_7!^uU~qE6_HplEuUaK zzXU&E<{tn>Tm2TZCYBK^EmZHjsV}-N&9u z&((y9u76((;B2Bpyu-i!b+~luYzHX=<83Qo3f9h?zzu5uD4z#+g@q91jf<)ZmrL#}TVdH%DQ&NCdXe^cVigpc2Ek?c<`?#-xe8;SQ1 zliM$zs*VR9h&P^1oPICfc^&wClQ{m%)Q_o?seJhOl3o=s-`wlu_3{RJS9lY=8@xH* zE#6%3R&Ta9%e$FNw{iJaZk^#x^(K1bxz|9ihu0aKAd67bEA18V&cKeG;92()OKgD+ zJVs2gh@8S?bb-#PY&b{(Dg}NeKe&xrA>{=o!c*E{vo1^?p)zqjeaK@I?cp<-sDaNB z+uTB3fNF$W@VRY|4b8ulBIn`&F##R2l8TPZ*Bjq==+|xH1NOb^ubmB9WOsga_R`)z zD?UT%=|0N6nt~wjuCpe~pnZX)^GVsS%Qfo`wl!4>i%=WvtLjJitjWFPq3U9@YzBzl zh4I9aSh(x({|mu?PK`SsiU zfBLtr4_N`{;f*WWEjm~3aPQCfqn$%jlblVk&mjxoK7oB6aZ7t;tt0s+;r~+Bjxkyx z-s)Wy98G}xCh_)Q{tRtWh!mPfc<50cK_RCl6b#5 z8T!6)w7(dS{5aaZ{QgHo_(xJH?;KED$7|_z^9FD~fwnYYq=%-i6->b>V}=Xlq9 z(|f~vhf6!W5BR&)d)<4*+vIKZp7b8}?)4UV^RN)tdskr%I>Q=jd6#(S!Um)f>_tV~ zlvsBcP4z$$=b1Dw7qrl{+(24V&7TwA4#+nUHY42-iswm%^)xXHHYLA639NKrGDrd-I`VwGB-;1WMixcXQ-*s!j ztbuuc^YkwA5MFiYR#^sHGiCu!_4kf7I=kfje)@L%EVja=Bf9DXtN9oHmEW*cY&kB= zIjL?$s({4?()+WqZ$rrxtzj1L>D2f2A$#^P9k)jlS>)C)M_peOSM+{P#D6~Cwn^&p z82byz>^+WN|0Zhw9^&=msndz*tAf|dy>T(_S9;Ha^j+RJ-a+qIFX5l<7xpjqi~0q) zbhdwif019rFT~$-{rvtJem+0+GyEgmcb~Th8}W+w6n0~QHwE_4)@$IEM>|kVaDZ3a zN~T~PYQr6=DdY&dQAb#hx`PW)0}h}}Y(b$|L|wuVx{9R-{=!_5N2w1S!sLJgiDS&f z-9jgWI)w&uW*dPht#e!LmH{^&U=xLecJtIOR@b*H{F@C(=KzFzS$R9#_SY=6WoLB8 zHEYq-MQJoU1PTw2A7()W;>*|hW~dZAJ&z1QXkCNo=}(I`(-cP+yya0^9iy6I>h@= z_4jt!)`Iy5SpeNf|50RM{$A0Ai|o^W#897p_huFJ+a9mqV*X}_6#c8C-RfNB%@ohd z78uJ_f3ptx8BO!(Owa6WI>kSQ_h(bvdw0zHQ`Gjg#q-ZWS$m26{;$ciQe{$&VBEt~ zQ&aQ7-da@tH_+%lC))obmEXJ6%l5i@Bk zKg1v8_wl=N^yboL75yy#O#dXdV5j%Iw-jqK&Kp1^ z(a5WS6$rdvc-8md0gs^v%%);!1bn1DHlQR`$A6HQc$a#lmC0L^W6=W}(kqZieuf&j zkg9-OI+o8QC%B!Q;5}%aL$L9hw4w9qtbk(x$_7e3720)XS}|`F4)=DnM|Kk zV~S1-l(iRoR0V*}jGH)MXF}JlE>qs$<}YauNL_sVsa3$z4>cd4L5zQ805pY7`M@0B ze>vV;ab82~LM!bOI$GwUc-;G^|2NF1y|;OMyY4=@q2B$+MFc{>Spd7YV*-vv)a3n) zW%}dee?$BmS9a(!AFFT2tb%U0Nxr(pVr$K4P_2b=u=aTW9>m6-`JSut4eLy58mm@} zsxEC^n2*qEFl9)rK&Uj_+i%C~^~!oRhi|*zUp>273ayvFas+#vJyKRfD^8D>Uop$0 zI8qvtR+jBBtGPz90IsjZA^=^lfq&`FnY)cD(J!g-%V7@Z3VQgDCkoTe(}ljfd#SYh z0H2zf%0h3?qb~1SvhsJQ9)a_}4fgk<@1IPa0Y7iz_4OuucY14J`Frv9XZR)k+I}l= zKFA;IkN2nev-}1AGXFmRetwp6-0MH!Kjg3US8&Tc{@wm!f02KeKi{A0&-N$#BY0$v zUj??{`Cof)dC$NF?((L2Be4SYy%J;#ej!7!6+Pf#Dhg*)bugN|Kr^a_i=hbqMji6o zbRXVHzG5)-3guA)_tQ13d_ZUVgo-2*?1=L!_3_FHs!vd}9}ETZc%}uYKS)S5lsoLp zZ;Jt#U69q4XO?d_^xHYHvm+~D`mAMmwYJPUTlU3N22&a=KVw~IVw1K*puE4HU9X{Y zd4i-yu0EEiAtV`9Z*5MqNo zOX0yg`B(Tig61XugZ>(Soxjn4)!**#@;~M{hz!~u>((f3sDL$$KI4h89ajC_%60+C6$J^q$XjX zx=KA&7pF^{pMOH8md-jjyuZe9;CY!;`fVNZyoev9m3)ZTAbvqG5YnHe; zu&jX4VD-U5zs3IY{PO#0^eck5oPf@=Spl63oog5AxpQRMfg(JYkgsQPbwG;I+@Wq@ z7e$IyigB2RoR04<<-J+wzxY8tY`8Mj_2Sj29H7ONg;;}mSoZbsf2;p@9NwYWxV)|z z$9I@^ae(ZD4*RdZk^g;PXCZ20Kd;35Z=lAi;or&vm>)H~8^Rsx+--`ijRBZWV3}Ik zSxsD#b!`U&&`zsu@DWmDrQfPfK=>Eq(k=4(S|_psILpTCQ9 z%UMChaawQ&KS7WY9N|&hu^H=N1~afF9eL(r{#pKSXol;(#V~=PXp9xf6aJq1jQYZ7 zP$CzmW}pZTq+(b$;KI}i;+B`0B5)g>!#z<0FQ!6R`GAGYEa{(U#C`<7vD3&SL_Z^8 zc&ejwikPi@`F~k*!@ueC%9>c_M2ubkwYbY!d&dRLmb)mx&b#XWOq-QDW9P|okM6fB z&CHfKe{ZpcuIYATpV|}LX8)>>Ehkn0RRgFgpjvIl0fhf~WOEmx?JCb<3Wxc0^V?zs zX7S9U8^TY;zpS9yL)}B3MC-@d0{1NPBv<48H!*AE?^Fq7zEqf!{}=anHb4k6U#r_4 z{*9MgpN6WiF5@$2qY-xk|6Pcttj?+wNRr*P%3zE5jT_3UyIi|vj^r!MLx`Q*8gUsK zQyuI*iZj|f(!0`XF~;JQeK#e{c@^hnjQeX9&6<`3Y6_`QjXZH>!K4kab^9{(Upvb~jqz zQR4lI;BPQFz2zu%-+O2Im-^Xo_Hq8ru>5uY8~&&MAwMHHJ-7gLUmTPV>IO}NoS;Ea zkKb*BjzM0~K4`;{7j))&!=Q3dDX7kW>j!m$YQbeeaUK~4KVd;$@t^Sj>0j&jBc7;= zUib^z!kgYYqK$FX4^&1KJVX`oYjhZ_ARBo-wrT*eN^N?N{~!){gE&BH;0W}Lvdj+o zG_jeA#<^$#%@SFO6XZPBfRpj;RoLcFEzs2ms{`LuddKT5Ubor+s}Yg~FhA}5w&7GO zOoz^={u)Pjh8wOZ`iRfVmY z5~{f{>#rEV=4P1Iu39piHKP?|nIf|kiWYSy%@R2arS;)fi}`cw2-3SW?x1y`d$>cG zH-Dg2BK*s@$o|-TIh`xvU3T9(%~j{3YhsUivEsjqy|(_yxQwpe`H7dQ?=6a6J_hu^ zOt)=5=5thr^$&pc&!PtR;ncHu*^g7-qx0t@x8E35eulRKoo^r5ujO|K`8VP9AMl^? zxB6e=@ACzPg0djFHi&K!bPEOtBZCpafS_M6Bp4T56HE#w1Xl;+gQ>xd!Q^0gaCy)p z=o<{>KEt?2&!An9%VSFfnZYka2|N6!u>mvC5;~(Rly9lpQ#G<>@#O9Gd=@pDLS)LG@Gk{GsMnl|Y;3vk-!P#Oa&-|-co&HI~e(7XcEk7W(aLRg)U9x49+1k=W6^1e#^P4I8r-*6@$ zFO)kDVEEUWk!8@Hp4!#Z^gme#3qtfyL_8` ztT>YC?(!J6M$Ah{qjxJL9i2EO->j0*oc8!Gc8~?oAq#M7KFRV8S}&?#lyB1fC}~() zU%I4BrTo9TooeGT@`!k6Q4RYMvwN#127!dvnBh}~y18q}^S_$>A$blnJDQPK8;Li) z9nb$b)jiwL+>fMA1N#lp`fl_dB8R`<%jcK%+r#(oC1QUy=KK5n6MlZYcO`s!8+>~Y z5PwB5CAcNHBe*lTEtnh35B?b}3+@l@3zqYHb?|twGFTAI31;v!k4uY#g~6@C^}&_c zjP}@oQdpAHf`h~ZoBg$Dh10PDef*|=X+Pob@K(V=dQc;9o_Cze!#BuF+{=5Oks8PQ zuTPEe*(d>f=@eR@Tud&r2XjM;B$LT6$p}E~$#jFs3i+yQS2w=d zaPc~upJ2IDVP6W1o2Mf5TZ~{VFCDEJ_tY6PZP2j*)c|M@m2_-f8_T1P1WhEBEiu+8 z{9Bx7c0}5g^3$pT&~9MDe-rG0=GG|#U|NOsD3-?m&&Mk-W@5AO@9KDk`!xCu$+~X0 z>ALuj?(J}{Xh>>^)^(aGm^Cqbl7ou8I^!AQ|Hd&E{tmT(W`PakHW4jt0si;@4F5LQ z%Q%4bYTE3}Hu(SEaR)h_PJH{Cj$!yWWmwU_&~I~Hj5}$5gJw7x6EGFo&W?D1;alub zKc)m22QXhD`!6q|YZl$>5n2n*@4LU|Ph?fBZ$z4(VcsfQ#rJJ5DeHL7A(9!DaVu)g zF3?|{D&Iwk*Fk?dkZ}XC@-}$?x%Aq$qvviCTK{5V{`IL>(EGlmTc-dud0o6o`2DxZ z?w#$IBVRYvzXepjkB>g)`^4`B@cMOw<}my|c=B<0`RQQ#!C+mmA$TEpDR?<}E!Y~o z%kfUIEqE{ZB-k5#6ucg644w&|4Ayg>H-b00-#YBWyx>}FKv(!fji3mzL^3$)e}k2I z3VU-CuiVtn@(+8jk#QVH#b8-7gZrrudYboqH$6jFk`c&-#ax(5qz)!`Q6YRUJpzMa zIc1ailKbF1_av^R%b_}5g5Tl27Eu4(6_zJv8`aej0J) zU;&z9KcoQ2cIX`x;%^(`8cju(|CiS`#m}^jQ=|Me`c3~&dwA#jr2;D3=prMRC$M-z zK5`67>XRAQ^KQh2|NHoNOy2CK#s7bu-fgj&{l_8zu>+ko{kB=n+I2xaaozb2`@yFg z@f~O)rgmXbyk&VHi{+~D4a;w6l8b)iL5wpAiCQ_*joeyM&9Ku1?L7+VW&`Biv-mMz zFaK|>L5$xXW0!1oC|1$oW=A@8MhwI_zw2_T#wzI!Q(Hh4?3eWQ*NA=p8;RfW{g;#J ze-e!Rp1g>jo{se1&j9-m#?^gq!25qlCFs^^OcwqYs(SW$=la$B4*n?rR{s(IZT~y} z5C80-Bq&vE-z^vvj0q+NHw3fs_jd=61kZu!9pL<%;9&4ukP1%=PY?5jiSUmg8RifF z5uOt!!-K&W!KcBVU|;Zaa3uIC_!wW`aszrKM}#lsEhXz4-E0^ zqY8dXUSPJ@hfG8v?->08uVS+vpl@&zR;(j&Kxt}(lc}$$40@QVfYHfz$%@1QKg9h3 z(-VCY^~eV7W4Dakn3>rbG`U@NTm^uO_#O8*<}Nm1Hb9ELbqgu)<2-gcRx|GAY`GL< z&GJ*`P8}xF?}cD_b5-?-SBfRd2k4RJ2ORq=%9)lAvb})nvCcFVv>CQQT|lNEC|1ZK znz;o`-a}89svLDV@0~`!*#!IT{%gEn_p!&AN+7S|?1BC#D`7Q->PZ|;{{IOk#x#sQ z5p46nx;udQzSz9+FMWT)wNv`63Lx!$O^>(Oz#d^0o7$;G^;S*cg#$UdaDK#z>hag` zZ_&1*H{(~DA|Q+2h~GLhVoiz%^jp3p-F+{y(-Sic=D(S^zc@Q`%%r~eQ*wQm zP~X=R?mU|w{xzuTn^5~dqnqap>hIcmS5lk%iua3miQn2EL#BR}|CWD%NdMxXTu>7) zJqV&o*AAI zo)w-OUchlK_TkrHXRsMw@NDpCu#~uAI#I;>c@P%h^u%tW zQ@@3MJ;veRU6xHz{kiQ1s5Pb@e9f)UJ9he^Y(^H(dJD?NeMEa& zw}yV>_l8}E`t*u%QGnC@oz*bBr+=GfXj4q30_4Q_f0BCR?ARBT<30U1Er3lyFdJY| zy?J$APFn_jm#Vz8+<;jH^To0PI$w&Zt8iAjg8o7L)~q${!lu1KG$B~?v5gB^%&4i( zHeXa{(mG5{b(aQjRXMKOOT1B$r8t|iylH>$c)rfP4#oD02-AnDj>ZaHU5I6rWr-}l z)7jN|R@O#VAty%vBKGD!l2JO*CGPEgoe7>7(gfE%g>N-Ksb=!qd0nnxnaGq0oI^iSUD^gmJLgV1;UK* z0G#2AU>98Abu7vASe4sQ6WRtcnH8z`%HHYh8Mk!2UAA4fI=-eFo`$?a56(y@@=8L#cJr2w*OZl2 zomaKKU*{FfdN>au4M4S<^|-Ia-?kU1asXluwvvj+{(n8)+@ts`wn}Y1q&>G;0EhbY zx-nfscsB;1>-Jd7BAPPb;s)t|SK$AjriwfVucq21Z0CQC0T`!u-rj71dG~a-&&AwU zd29boXXIoPWVba-=Q1#zhlVmBjt#}@<>9sKvUO_d7JU<9{`L8f;xZkw0JaN_`F~{u zaRGXtuD(F*zUtR=Q`8&S8GYEU;f@%0pZ@|9ZYpLreb=Zon6P=bWU}-F>7rC zvEb&6!x^R6IcF}r?|#fYpJG(UO@I~eOh#ya9jT(5P9FV1RJ6_D=QBF-^O0feOnuLC z^uD8BNxba@qVG5TU;PV$ONsP5qU%q?=if?{|9J2r>^*@eFA|pFC<%(|h8@H1VSDi1 zBJ2X%Cx^F%cZZ9^yTUuTbW1oboXXFXa9lV7n{Y+gJ8aE;bKwN_!pp*o!}G(;@C5AP z_uxeE3wGsMtjsvFs=fkeOqJB8 zshS6rO?CNIom)eTcHxq0=j^z77cn|Ruib7Hz*Sit9b^3Gfl{p%&7#%ZiB{NxdOWB4 z&21I9$D22>by0$MBpzCyA6Wn~fLtC~JGLCgGt~bx6MMFt>IU`yISd;U(27m#_YTRn zYMl4iO0vWGd-wTuzf%wM|4&m**(}yTO7jW+dzC;I!#hl;C!)DqoX&4?fwKw1yo>)G zXRxzXoAc6#_`f^6Fq_Y1N{tv`^%(WqJybZ;Tw$p>hJRCMG}YDWCd9%`GZN;licAc^ zDhA9l*tB7Xf1P6;}m?yp;o0|@_`2kX#on74H)d!-2Gnv7*+`+v>2gk807 zXM*pc#Cgf8%*~p}48ISONzmV!IlQ-kmep~U&xfh~vFC5*je_-Wievt4e>hcnkNWSR z@mB$ZW8nMq(D0@0N!@!VI2;rXYl7Z9Ft4Lecx5;zoFC2%ui>~cyghs{d@g(=e2w4F zay%a1gC$rJ-pAj?;XlJW!yB*yBRNLE4SHfba^M3ci5klBw@i3;_!%7IPAtwySV!Za zVsIXrfmewGrqM@G#Xrsek~+i%^dU4QQ<3t%p-y=N*~`UDDHzTtY(P#hBlT%=b8-cW z$0&9lERzh9dzo}_BbCAB5`JPAQNSI{KO+1Rtq3y zM`zHOyInFwiWL;WMyQ5A2cOav{;z$Cw4TJ^ZBGi#owV9gXGx4bI5w!~D9&?K0l&&a z$;YTxUG}39D@-;>M`+O-$TS2H-dk$Sxqpk`(I)JLcbV*VcGI~;`~nI6Sf_`jqMv#aM;&h zQv_6hXVw1dj_((>F2AqLfGDggWE0P&Uc?Dti03WoW9; z<@o-W6Gsx4(APhldHN5c`JYH$O6BYX6tiVS{TuO`+o|w74bR_+Oy4^1bMkzZ$nj63 zns*BoyubUU;rqA4#y6tne;Rxb?vDgV@%%-={;+T&9(_8Pp97xn3)hD)gwKSl!j<78 zTz)P5BK$c#6n+`*4nGM$3f~N0=C(J(SHtJSjp38w{ow+b!Tj)69)CkPiP)eg?4fPg zIqbnt&CmJBT89D}bd8@tas13RlE#Nz1n9cB+ zyHPZ+PW5GKNfuQB`{@*Zf;nbaQWH=i8DRmQpaQZRI}0b76Y^}F4ZIu#$rr0OM-ji_ zKr3FFil#-`H?8xpS^=y7D#iKGxpU{xn7_la7^S9oWRq3y1P2iQ6)7tJr&=DZ8tp$L zE#Fo07z5C1(2p2}CQwKN)RYk0-J~|iljW$)^J{Hr(qJxn{0ctFP@d7ezw-~mt+Z-e zlZI^}+TmZ9?Al+gp4Pd(1$SRt|9b5)bdNv5>otkjrBgWm8!>?SaYMN9ZTt1;x|o3e zYY~BPE?cVa)bQ?Nf3qICr&NGTIM+?#Y6GYc>%q~7OrUzkvF$#Tld6e=3fs?l1~8q(onfKwv@*#l|+wm*D> zcrB&h%Qu&j-6<zl&2!uP{nVEyaxQ}Dhg{5(7y=8FnM=SE(XLCJ5vC^Pb-WOOV%5PlWz4R?gE zV+WqYVr&T4Vl$S8^TM0LYh(5>IUEn8C`qPZYp{uI;X_muT+2IYKs~V^{D2<#1RV#X z=`<|rAMl>0Yp^RbNY0>BXg5m6I&9l~Silg}z>4GpjwU~1cJU&VfNt=h)01DY$M7xG zLRCuSOMK1L;6>B~cEhWxB1pL}vjEO3Di>x``(@pQfAIwA0XB*2)U&4ZCtX1JwK`43 z|EeqRO!TjOqrHOAWGhJ1JxxoLlCO1Yp1@Y9@(3kZDe4exz$3&_Gz(ml4Ye1DB5>iq z`Jet@{Xgcd<@F7_e`WmU&+R^^`gvzH>@j8$+`V+oc!T`^6c-dUdQ14B>E7u%BhUzT_2_J@}qVP~`!uigtTyM(y^w~Q+6+O-_T`$VDw_3*Rkl7F9R zK4+o&b;L8y2mMb|LH8E@^+(C{H}*z*|D@x_qyJ_Ytp6E*4}QNO^*CK(rSEw%bOG3J zhIThN9FC%QT{stZ{{jep55K+(G#?6sD2fswJ&Mi(^XEqwM8%>iQT3>7RFq4Vq6SgZ zD2MB%qe4-Btieeh^9|NwAIIn6cDTVho^uI2Vji5}mhdWG?}G4f@MZ8>upKL~jQYWW zR0>uOE+QxJEp^8$sSM~&HS*8&B+Ny%tWTf9vDD{O20cr^@O|_!jg2dVil%;NR=`H~ zE1SZ%QJemt!|X& zyUVl44u}irJQ^#IwXVc^$iup*uUv|sR)OLP*%YbE>O|1&Z|&-3Yx#fUzc}kdIRLSL z^$crvtKv@a727wg6qaB7|8911G5j0$wK5!T&C8#Pe*3R|!Zi8~|N3n!%kJf@g8F~1 zKxcdm|KFHTr%za#PovuT|1<;mzwmF~-7v36K=-k07sh8uXGT8XP12L47SD3{uLO#^ zQ7=D~Na`B8MP{I=wBb9f#JLs%UG1;s0cFGO&`v{A1RKS+!0j=h*$v7O=yurwv;Ju- zV6*yEW2X87S#o)Ji}dC9l{K`QbJuC8TeKgvW|!vhoYEt7Xi`)seE+@p{+~0-F%5Sm znqSDCIeqEyd6LziAS>1oZG0jXb1SKz-$I?w7gYEb@mipwJiyB8YqB7AxuoMBDAc#Wj#*g90#0Jm9Cm!Gx zmJ$;Tf@c&VPk37Bhd)w5v>GNdk*r`Fst*cK8StV1q<@<~*stmP{yV6FSD*wG^%7JD zeL@YRDufqO7toh{Kyj3S&rt#%U~j>pL_?*R8u}{y=n6UmE@D67=cu0>ioU-#`k+Lb8J=Z>F z1vOa#>gU&5HQ(gCzj%b=d(8opT)n6+#SO=q}y+Y ze`5g_56BwGMq9WD0Vp!}imuWn_< z8%+dy~6Cy z?^7Q0yYi^1U611T4?1pc^w;}e`R4_VsNJ88#=oALy>E#0OThL=;*lQ-Uxejv4c`tw z2!9AYy!?ex@#r$Ve66Te)FK_e=F2@42<@d&tj5JWS7vk^oAP0}IaUkrMOPS#8c>(ofwEyiG6Q?aIIcz!oJ^f@ z1A2{)qEEccOo2&$OaB~yH+9O_@p-B;i8KQnum^s#jvj%j^a(bj+96DRLx<4nSP5uL zHsCPP(cR2JXu+hQuc)4xM`YUrjB2-Dr}QZ9Q@pNP52-uG4J@8^`+3XP3#VF5;%&uZ zE1+v)$CWrYZD0T$`Oz$5@qH-@;%n_$YhB}RGiCGKG_SP(*Rx8OvRQz_zr0WxR*&qz z<^tJViju4c+5QE1F2lc~eT(_6w%7DKL%g#C&j0IwI^1=4Eo~u;2kE!`|48x-kHR-{ z`E+8b%1|}{|NmJFkdEBbC^sd*Spr!Bs{=L*pq!s^{&bXOXHDO-los(U)y>KKkBIlg zx|`40lkYj*tzi+k%j^liLa=_c*Gx^mb@4>)E+D*HG@x^(_&}8(vI>gi6jMkQ&|&?0 zvH>nTXu6Jgztax&io(ApL#qnIc88Qb5sPd?)xsPq+kXcAonf}`Bu;0ioWbm#w}HO6 zGpUU2K)!DlRWhsL#;?)Udnk1#v-<|qWB(@IycLW&>46aDD9%Qexrirtu2zrvegRYFbgT>SoS=ox$8C8U* zDZRpmtbwe!s&~^F0Ab(aHZeH6CIvuet0~r5v!(L5B)w1Pyb`aGiv{Qa{u{G$gn#i; z!@T^zE@@>JWerr}RaIl6zCY!E#2&Pcls#08*a)_IANs%YfAZLdfAio%w)u1O<>||Y zc*DE102cGxJ>C8FKeHfOc_XkiYrsV_URPXI_^(F<@}I=Nad?aRg>xa?4xwL%v=qk! z(zm&9*L}B+v+1u@TWeCr5RSoULbnr9%>r4>Jm(xprxU+Zt&s6@F?M6=HqlXiH~Q`s z4V)SSsA5YBp)f1IZF!*joELFHb%rXptem0Q0OR~Rufn@3kFAT`s*qJtrkxA4JEYHtg(>n!0@mYl|@I;A-9r!Tt$!36w! zV${GUOc&hl-4k1YVqSzAxQG14lXMBqqAsWdvrP(98~hD%z+(0iYfN|0$;5U#gs-F~ zFf*}-tk&&tfSw>yzE#?-up+!${3e^AYJ64i+g>qg{44HHXKBqA2pwgx^Nm1xPt=)? zJg;RB6-R3KMLnB#Emtm2m3)SHTb;TrD^Qf@P}Wb=3so(ojG!iiDWbHUt4r}5lj+J? z2@7cPC)&ke4Bz@|mmS7s7wocmeTQz{-`y^zqs#6d`m4v~z>V+WwXToxFOH)M1y#-~ zWB#9t0SwU=B`JCr_Fe36m-RopUDwTCxbN4#Ra0q%=PZ8Y*Ojelh6flNX8<%S?`~M( zNIqL7a47!o^1XJh^$hw3Os%u3eED+gDs?#?AwHMGb{^FXS6Kov0r3D^W!Aaldc=(f zsK>+|HZN9Dh-UuC3ag%6`J-%}OY^+%XD95!iB9a-{Y>IVs{DJB^L~a&+4-r7?~fL~ zFz)Mpg-V}2e@6Y+d279|;r(ry!u68>vwtDo_`QOgsk-@s`kTVU-dB*P-#|?MF^YX6 zIvq`~I9$IT*zbh@zLIEuFrL2!tiK_?JDa~cYU0n&hSe8>)nCBxvQcepKy!X_`Q4an zwYXPHY(;AxQ;Wy8!+Km9-4xAjM-=d7m+#0PekxXc#vpgEqdc1G7laZfqmG3 zH-abVHkeLzQ174_HNq$97+lNeXwS6K_m~-S1rrM@unURmg5IXK`96At#<6=z4wZrV z$q2s0{sAMCEtwe_C3htrKrOAEI3w{X7GNG6pf7&ev_SDWL%*0-T@KmxY;Yj;-+2Ui z4`JQmU+6auP>g$N@4h^8NxfkK^;sR77b7LN6gbvy49c{X<uqWo78 zzwCr`0((wVn@j^N&Ht_=C-)efwN;E^L%t9zCScKwiveT{?6Tq8;(9~3@UQDm6-cAs zq6G1O`Tteeo5s8s>7B)~O4^;E6}S9n@bCP&!@vIOwzLhfjGt8pxJW_wGL=?r-`Q*7 z-=Y{XZOi{j{qKbpxC#8LSF{~x&1ODGFSO@zHrmdVSrLoZEk~eeKnkyNgW~lMh=z~aG?gQS%ejd~MUZ#h?D2m_Z z!7Q@;2T}XVqrH!yM(5?2@t+9Kj!J_3`Y8CV@z9;|3;0byKZlp4xITj!leCa>u&xFfF{=41- zObzNq2je;91HQ)QJp=cdN44{C@*g!)=g}Ro5eqP$UZ@)M2Y$#tqC>F&`C<-mCuh75 z=SsW6%ljMmS4>ck+vKmcON^=oOU0`~xHW%ZYbh&6vM~VV?lif-Gw2uoRZA)j&$`Lf z#UX#8+2gV$rX=WDbjSi|1sCO&#Q3y7mGG~g0QIGdlc<7NKA{0R)uZ75I&dgd8}k?X zO$9JaD}HyrU&yu}hkx__c1<=({@*bI(>?U~CgA@bn8r1H3+g^rg_7{!3f7d%BmNT> zz~SFmzP=+vx-o$Ct#--Xs%wUSv#@5d^-U{=F|lSrshw>`#p=^{}z=# z`{?Z}$-MprOyWQ3m1P?5eEND$`j_BE`{GZZrDv}KwYww3>&e8uL>zu1JQD<#!Rxn! z>30YFdGP%q#PNgC^%}$PE1}`#hp+z{{u27pdGLhqh}~Za-vzbrh3`-ca3p??V(@|z zaqjOd?td1KI7AL%S9mlm&$Et-CPp)&dC{HGT(rU_Sc&v+gkbv)->88&5jg)`OO$P!pKM;e~+ zuZ(OuV`KWC&~Jyam5+S9|bQCdr~DXIt1N_Y5g z8slHQLK!!8rbz+NERa&X&nxlCkFeWGb5@V=FQ0F@skBcwR$yK~jeWfzO3h&U=#dRE1)0YU$sP<36sO4+r*5bAC;JEGxkyG zKa71a_v8EXsPuap)$c4kT~E~SrRe={q~3=K|CoxX^Xq{|w$nS`Z$z$tF}yh+b#*=H zwz~t(?`Tkq?EW%p__n~hzY8<)>gD3hUIX}gFJk@{u=tK>cZ%fOg46m@Rq%g0=>LK^ z;Y9z;1WTm`e{q->@8pn-6J z{OlX@98th9EUS9I#Qqz`_F0xd_51R<(rQ%KskNlT<~+#$rzvsgBR=IO%W-=V?khb|5rOiFs!OR)x2N!bEo&mp z`i=R!Sl{UZ=J!vv1-fijNys)97!hcQdPCH&(>gK35!smQRY7JquqiIk8eUKeR38QXZ;>HTUGHkD1g@uwZvy=QW6=*6g-@d) z?4ZWy2aa7-|860JxRt+8hs&w|U4hD%Ni0y6$YLxxf=Sc}G)5I@55pM4EyH-7+Hip5 zu!T3VOv|Y|97eZ*I*AK~$AXW8r^yLkjSZ{C9Kj#a0+;$D*@qzXcQP?(lGlcr<*9ft zk$32GT+KH!oerTo>>+Z5ipXc^5gy3Y@WbqUd^;SV0olNP#L_pw0^76N#rLK68HW?% zYQ=U~8Cwn}olrhf?kJ>r~FA68Wt@&KAL-;HN)241Y|K+lw} zC6@meuau7|!t*FspsqpTU$^TP%>~oDQ{O^GE?)!sA0aAl&FiV+*RXH4K(`qB#r|z| zS%e_u>lWkp4*h9ckhTKG2gGHD!-*e={lECX>Ju;J@lAPU%~XTa{9C&L74Oe$r}G zuic4Sr&-{CG*;uX*xET>Vei4-h0fBcIa_H9mb*7jVHLlYDXhddRiCq^y&TO37zfa~ zlt-w~dDWRoYc|%IE=|GB_?Bv%!@KLqCmThD!s{769saWtTiL^_88PijW?-E|_e*~! zdi|5$-j`s%pAz+7NOjBvD*O+5)u{7X&$QkUpE(%pJWDU%kLdmNslZ=Ej(>l64v}{q z7Dt?0K2blgwSi^02=b7MsFf6@2(Ryy!JnTvx z-)&U$Jcy@%75r|XV)y}~`A7J>gnD0f0^S9?-yfa^=g-6A=kdDbu`{j72wYFiz!dTV z-LXDJs2%>EYQs%fjN9og92RyW61XT#&?oeKa8Ga(pQR}i#KK??RZL@VsXz#_Bg6>V5sJ=j$AuL&*7d$upR~D&!F?A zSuJ%z<>j2EK44#pW*->UENopKXGuL8j(Lc4xOl)K0aFF-xAY)mf13Pk6ZsYEN$b(t zQT47d`1aVLHoTH@g31au;y>~=!oTBbX$zqJJFRZCDR!+V=%2+Tw!>8Wj%CW_i9|N& zUy=NfJv{2NTkmw3|Kq7m=-<0jzkvQ0XkyQMNvizjGRG%HPi<%B_B?@_o`I@Xjkx+6 zV(jOM+rOo5|1wnmX5hX8NUQ|*Pp3lf7%2TT{3$FLRphoRD1TYe3E09WIKvE3--)iB zj-b8{RRd+{<15DRdfYYyCNPCApXFfw9&E%cjv09I3H15Yq1Uekk^TL=ZUz|7iq3>h z91Sld&KQR#I2TQDdNhGJpc>hPB$~lqB7vvrE54q(gcf0q@DeHne z1$zli3!jDO=*YRztRAs{#oLO^EHfsLD2^uePX1puU-5v&1X@p;(x?g2Z9x4<&ekw= z<^JT8m0uFWYz2l@Q)JPEG(aIr4BwOhttL$Yb$kES!J=r@72y@D^KL8$tm$P#zB9#{k?dPVLuy#rDk>I2F;*ug@&Ml*=bsLIu#3SR;G4+UKwW z*OcRu|Nr;m-{N~AUY5r^eSIvCdaMV5)R}nr2jU5Zn={_X*b3_3WA^P%X5j7O_eV^_ z%19JU1c~+Frv&vu|KJRCjSyO$x`rcKu*9t*v1+EA46Y<;q=p*Qc z%GjEWUM91DlGuuNyaT=d2mD@%75Y8QCc`ij{4a>^=4TS|KzX>w*}R``c-0j=Tko(b zS;_`PEk)4-zYMmZ2F{^dI0p;x4cUPCeqUym9%Ww8LS_dyWUuiAJ%YRAjNmeQ1P3uQ zuq+*dA2Su<8Z1B-GeX|R0t`u1p*#2!^z<1q2hhA7)7xw(PRE6XGMyXM0Xh7eCo%O$ z_?KsF&x#rWZyta@>B(BsPZw@&iN)96UOKx{@wKaue2n5!x5|pJ##KQeUtgWq(W+Af zP#I65F5+C?LuGzXr6%WLRDfoz5QlF=zvJ)@?ZUCM3i_Yn-FbhD_U-@15z^K{pEnmy zyaWzChVR7iueDwtD<}Nd`#0lXtV+>_Me-f^9tZJGrexfVX1g@*OMHPE*jJf+^Gf`8 zOU6djv4`L*%lQA|m=A1%0i2}kYbf8j;s)Vg=vQ4uebCq&Yuy|FuXrn)SGXG6I*2n> zCO#*Y_Y)5=4&tnUo<(t=)`4mXlm&43*Eg=3Ae$Iw)n)oF)yL5i8)JH43tmwyz}5Ae zy|5l5Rhy|!uquyIkAHjC(o{ax`x*J!&tpEjUY?iiPF>r3$qZI>XX5^QLH{Onza8w^ zcPb}Q`&%a0OFG%LCHa_?qkX9PbpD+3r z&b|qL{&pO%KZyT+6!h&t*MBv93Xgs(m>$n_RKXzp790;ekbi(a;T_ZveU1$%KsSF4 zX8p8+8FV5l$flE^GSfcFaTE(v;m2tBFLUpsL0LKqZ^8;_9>5~{f-0afjGAEBGz52iL@EU@m=vzthQZA5}pO*>QA- zx7@oLC7`SqdWVUI-ezjxJ#c^#skZb)d8zI2rb+Y%m!%?TD|1q{f9RRa2Y48Dbuiy{ zHs87|vy^|+!EH8-_<(A|T-0y=-+aI6K9>FOiyavN?z?fQv$V&b__w`16+xJmXntS# zSD%UwtNv*Wt{bxkE+*pDzExSQ2G!iiZ^-|*U>?ttcs+-ITRXye8vVk*-EQc1nxCwh zW%| z%l~(Pnf2lP=pf<2Flf*xzuJH!;8ZGF5L6^gHGM^Qh7W8Y}CA^mSXcirU9jOWWBl!*% z;5zz)%VPoFrY~SrqHZFQ*veYE0q@R}og2u-F>^ zAx@(Gf7fEI#_^0oydm5WY?qC_Yt1PN_$&5}&*)aO7RDcRO|gy+RkYdBoIa_g;BEx> zR+hrJ?qzsn+nro}vP8Q777cJF5!tO7cY*mw`Lyf6x)8sX$manV$z9<6CVcf+@ZK}l z@7sbDMQ^IGu{sES#&$f*Mvj?$rzQA4g@5sX>6rESuPn6KnJU24Q$LVcXE+G0%;z8-=Z=5!m5n`2)(bBO!N_RG6V3osTSEubauSUCZ)1k(ZP zv+|@t8TYKqf5rXhlJh^nbiXTz{C`i>V7kQ<$wSGKpnn2AFOM z{(8?cx4RlUZrlMn_XKBw{_&{wUxkIqvUf+*???5`n&?rwbXt<}&mtN>E80u_Z&N&Y zZ)SCDBxARWIN-f-4Uf#l=bjJl&j!iILHb)f>snC1ff+#$GZplHuDwP7&{5_Bp5*t> zR2F?lFYiux$5%`X{GMr{8>ry9nSO(*)bT8&u6JK-1N!6tpJ$rD{_rfK{x0YM)2R)* zl^9?!xqwEfkiQWrydF;uc#&-51}c?C@h;0?YeFgn-^RMlq=%^ebWyA8G#T0oLvkePIFvV~*K{vz;A3gDN{q zu?|gPvKZ2AfwVr=do^Q4l;{7Zcx%retxe^T>w(YaM5(KIr=xg2SLKuT_IBy7sT+V*>&SpFQ51CumF$n86U#R ztsydd1k1b>)_*IQpNNki6e}vqLFRxc#bqw8aqLERP`5ULyR0C`dk3F$<_J0K>oZ57*aYGd`@#*CvQH;dxbA zpw*BUpMA?PYiGB%e<}fr1H=Ke@2ePy@)$N_Q14!QdJM)Vtzj4Mg3R_@%1(ae==52J zlKl_nU0h9v-=oC+ufhBe!TcMee{by;3_cp9yZ_^d~a_!e7;b#yLS+GKf|1! z2goAMV`k@kj@y|LI1j)67~Fnq@ILC?>&*Fok>fe;yOBq1!!|q(`e&ipUBNWr0l`@8 z(hKAvN}}uC5myg9i`JKdht#0Us6Q1#gRup-LzIN09K}{F!2)zaMaUtp z@WS2LqIoC*&FK+J2D|*n~zVyD|^4(4FDa!kG zWLX#ln#h;o49)V8V|{>Ai_9nzk(h2w}-oV7Hs+?+MjiuWM> zZ&K_7N3cH9p5FYqTmR<24Hpjm#sl2_4F86F-6MT3iyaLASH_X_VE&uNe?>4S{MW`t zDbxM$!2kW!9WSCH=VmU(hF#USxyP@b&ZWU_9Lfal-C z+R<>L>?zUJ_}PhE8V?t!3HLvr{Qqgu$0+w%;6IBlyxYj)J&3QJfri(Zd7Y{7JJ7uv z&FyN?I~u$VB?mW{iri6L8;8blGhBQ*JA$l)4J_sI-5g6``zx5}vjV+d75syO?!2@1 zO!t|Jz4$UHh)!@FuQ8oEf^}G%uTdY*Mf+sOp*utV7L^sLU#L z6Rj@d*;QAdT5{#wvdRBHfW~zNuO^hb{GO1Ijs=8}G^TYw`@i{iT{j<@zK?sX-7fpk zg1Gq}EaCv3DT{Y$@xPFxPobTOwBM2HZT{5^U_4e>8fs54FaIp$xQZElE=6WK>=WB( z6ZY*>3IFn@vI4EB@Lt7!>9=t%q^Rm!R!3H4p0VBk;9q>NK4)z(pLi6vN`1AO1FJN& zSq)bEr`iu4dLA(eMS%JqRMD@R{x~ZVUsmO&`a!$12Kw?@I`X{<+fDfPv`(~Aln+on zwf-s=Pz9=fOGD^{HCo7wpCcI+*wt<=^Sv6eP7&U`CPg zJCnUS@AZH5n}WSBf#6*!%l{Q)Iif4in?$GvHd-$jIsfLgazmv zC_#@w0eXWfQ5oEx_gWn`(2{)a@_xF{7dVQ&9(UqvT%lRy;~i^ zzWQj@QKe6)&t~X%pVHw!8{4}O^8(|0i3Wn;$vjAHnvC5gR>lGLxRN`4V@|A{DCPl5h7@oPV) zvQWG3_l|q*{3X=+RRMpW1*OToEdWnJ+>uiWEv-K_w|DY03I5-kdfrQj`A<-r`%*mD zZ!LAa6VdK#kjHNi=kE(LTa#}qiH>(1U;R3M{Yvs}C8)g(0uPj(5%2w7h&r4qL>rgG z1+D<)+5>bvmqxI=k8y-S%<}3_&0Z_^4y?_6E3hMQXL^q}@T{l7;p?+&NH(uInpope zP`!iN!311C!Mvb?)Cx8S_w}hxs6a*XX!3+JU@_TPhF{25%*IyL<~^QIF5(j=mCuA@ zG-6)JekPku@~itldQXrIXi9IuarQcUkItz3+4Fobdx@7!C8!5@8Vk^a89_fKUZkU{ zIlaN})A4c>oL&0{OZgK!)1I8N+Vb3go$2K8uk61VpL)L(O*PrCw0Yc^%D zJ@=~rC;k-$SSC<2X=`wAsRUyG@;Qn+#R{YZNr4dN>VW(e^7adRM28raRdF0@4tg zasJH$^kEgq3p4;n$|T5xm<}NIU$fnWa&@3-tt!{V&fD=bs3$9z4tE8(;gc|W%1 z)5tdLTBI+mq}hPOxAXSyy2F+8tnL{!+oBDxu>|$G2cO2(yF2_#{nIy~EVX*2|CJ2D z-h=xs8G;a>a2C|9I7u_r4-nSh2^g5gv!Y-2ya+{6v+YO5(9V^OUSCo59zI|m-CdETn` zJD#eHhkKFP9>ds4_aFG$b%BpQwiG`a;5R3L`BfgW!XzrJwjcI4YC5%(X2 z_1{HiZ8$ym{mAiUhnJGWD+ZRb!t=r;nZ6G|=`wWt9?ahegRjZ7zsywb$59y`A;;h7Q1^EL6s{>hCV-hAtN}>{vtne{Kmbr(Gljei{L9{ z5f8=t2VTOvzJa*@J~9;>sYTdLl|pf1|N1fdFQF2#b#!C&TJ&r5TeOSMaxJzk6E)y1 zG6+u)3k)YWc^uW_VYtOWm_{<#MD=quIKV?*f9ir0-acvqUyD10XE7%zmt2641$d08 zDleJE-l30BU0FYIR$?y}U^-ENx_C5yTQ%D@g-Mwio9JdrkMtk$fAjxhZkiobnKfb2 zfwIDy;L(ipui1dA2h#ok4ZyN`3ROR#ZUFffssHNpt-xi={h7b2$gM3|FWL$067DmW z7-coyAr}ldJfF(mojnjrWC0xKH;g-6$%pC|vjDoRh`~C6^$2;+$>9HHR_tYXf2+e& zjH1ryI^3quR-OAP=k~9|zuuqud3#5?{J-&UpD6u*hkmmRX7v;S=zdMe7^q5c3g5X{ zOjeB8nw(c@v{Gt2f;Qz`TgH0ZH16LPexQyg^ZdfTqJEpltvNpBvBR?4x>fvNmfohv z$rcL#rWVTrXnJ%N-iNdyd3j|Vr4K3U@5C*N48;xl;c@!&ovY6yhx<(->v<@n8WU?C zr`NA^asZQTK1>!MgEfs^FgKw4y-Ban52*{7hrQf8>@{b%jFWyB^tU5HHePWT^Ly&T z^jAdhMqfpTIrc`+QeiuYXu1t~fL!8e;eQJ%-vs!6Ydn4<5L6UJEg2pqYqy&{eb=Jo zO=SjOZMgn7{_EiVKL1Yo?xy+IGCTY#j_a7qxrzzBpZf>>U%>Za{|6=ue$MeF>|j6B zMt)^C!9DCN_6j|_PjNg?AM$=?kTgR@oQ^{H9J2@aP)U>@rEw%oWC0bz>)`h9Q-6FR zs4q_xa4s3js&pgH!TTSLl9|6mpGPmkXgU)WTtIfaJ;ZKfpTolOUgF!ymTu%5oEgsyFAWFSPE>Ur`=wpLegO~ieXA?rBN+BHEI=35 ziD@>%zt+9{j&*A)`oEO3Z$02r!o~HpH;ncT&>`!fz99ARNlDaRK&JGldRCc4aRB84 zHTzSQb;=K@^542#6a!q$dQ$|^n&;3=KHPKUu6NDx0fw44{v?)dhcet z^jUN-$6d_lpK1e~1yE&uHWfWfvFA7O{j0A3Vh}4uMGBm<@UqM50FpoMkHwq8H`|rx zb~acHOw&H3^V{z3Rbu>GC#dTv)E=EuLY3zi572ouPoY(!Y60!p(LClH^7oy1b?Fb? zi3zm}sj@`Ef7jUGXu{{+)G!xL^ku&1$BA?CPji@Mbv#*zDwd^quve*V-$tKriVW9{ z-Uo31x!|uk3jA+DQ+DY1kovxMaQ+9P52KS&q0I7`Ao?65^nBYB*%7n4lj=Q+!3;%rd z!`@hzd&uCuhP6qOXY5FB?HsEojZ|;xF^67x^#K9oWdbz&lD`z)mcu`T}MU zN3|v!_&b%tACwX@AxtsAQi7pJxfgY{Wo6?mNW638nF{}uSJl!J8cPxXJrc)nJw(6&6Y z<`C3Hqkb6vKLJi5)Y@84+W`4I!-pZse5GN>ky^pBS3StS-5>jZ z^&*Sws&A$SRxpQqN%;`B5&y4+jr!N%U!TUkW5d6qe3#u5^7USw9ZPc-$7+lL$TpZ7 zryZ3Cl1p5J9c#_|H~ee&zjokH>`p9PI(%#F+)&Q=Eo2<~@*Nb9>o2t9x@!G21K3_& z=iYL_(r+yWkXSX=<55;-qs+X_mYEl2?m+<q^qW>Bw|9h#en~m?Uj((Oz<3ElU z-cB}c1seVYH2s$B$aw*KaBKwmWBvYg+vhQLrzX4c6rj>J^r6rEE{GNA?)ULK(r;83 z&8?DOj-x752ih}h^s1OC4E8%?G0OQRQRQ>UQBJ~M>|!244b+0EaE!H7@*E1zhkvvo zA8;d4z&*qPkHkGnA5(|4A0?wQHH%ZDd!r}u{M)er2cvD+x0z%yhx4CmSb&eP8#AaW ztVyNPx6~fY#sWmavwlC`=UP;N#&CcH`v~vEdag$Yn3)=xYR=waN7zAl8T*FSO`e7Y zSeY1?sFpZJZTV7Ic3;qE(VBdOGBY;S*}C~1|5px3`?2c$t53+RzHtCmh}!kIUJlI2 zGsu@)2Eep6Y0~13)wtcMe^LO7v+guKycNjMx~muC|6#Ow;a_+a&h^`{;}9Z?;E*KD z7$$UIhoDn2RIa`>h-Q&1CFWaVr+oMu6a`&;Hu>Wx_d>435T+PzI0fc(GeN3CyM_jf9x zYI@toaeyL0X~F|}wJV4@Mq&qs#0v3X)TgJ&`ZXlyznQ&!%Q4?`Npc5MKANSbFxO%; zasRvM{y$Lh*P00*hrCXB=TdO#-9dG-;va|S!SH8C&%^kSM};%%Wp>W&m)R=wyv&`{ z*Iy0(%fYFO<5i!d+P4Q2z=H4_aKDvWo%Q7Ir<0xQ9MmU%PX(Xhy>E|q;?434gY@(L zO#gT9NAELlhxZP1H{SBz_rCH@pgx?z9FDJ0A>a45aqCtt?PHIjd_1Zw`*sxf&!Z~u zTkmu4J1^xI!A=bJ??y|=Bo}Zwlm73Zs%R_LD<3SR5n0EfR4ge6c?;FZ8;Ascq%NQ) zb&FT?x$fdqyc&HM9fApLq+a;G=zeY+N7caD(N|OoE~e7CC2`Dts*a|hJtl%xOgukM zci=SkJgrE7@Bu8q7N&(RM@bn$Z(w1j1#h9UVgU0&PEUT4SiyXdGKs_Vk}gDT?*jH( z<11Q&I8|$^FIb)UR`Vr>Z&l#hD@vuIM?EiMF`>cvu z>{GZ$>;GmGmBZ}}o>syE`f|?X|CMKvzJ56tL38?SGIJZE@bT0MEWrX?iCu8>SH#@K z%hVInfcIhZ8>I*+`j`LLW#s`CADAAZ?jP;pqFj;qp>>HU64Xq9W_Wn*IHvy4fna_( zY+n{&43=OBR^WOnAHU8h&$Q}|O!zAnPx;xDJeI6P-f9t(ZQca^A2HKEAKd?XxPNV! zc|P>?7xACN>FGZW?|vn?_!#u(&%89VNoLo~PMMW558*fO!-KXW>wht^|5x<%48-@J z&aCa%=nh^E3a5~>YsYkr!szF_n6o(twqFy>f5Gd#2dZE7o`Y|!W}5K5blTm)&vG(s z&wDR>FED}QE@lnh$a}gDq}|L+p8L_>H+vtlpAiE&^ z+l*($39d#!_}Am~BVS%TUOhHJq5@b_M|ee6m2%I*zVxR{SpAAWGyz;%LpCw$W2}(z zM3Zif3oS1GcL+1lcQH__XIs+Hon{%_OBZuN_O4%>_%3lV zJ9%HrP8MG$FQR+pMkd>BChq?*^)2(g>UiU+_{##L2mN+r=a0bs7f?rAl!$mD+_+0eK>=IXA&rE4Ej5^_r89Z0&WS z6Td(AoygZtVYvp zOcd}bjAj!3L0`}d-H9n7JNP66*f+$d9%wt3^tse3CIya!1Du=sj9lO?ObDt@SHNbf z0ou_$zL!{gGUrM)ecIDo=T*DBiQ5V1rt{lxO>MK7PxzPaYgpI(FnLSm%cTTZ{y@9T z*bER=q-du%^@mvPk92=ko~SBF{r{>8pvop*Lrqb#)aR=He}{SdYX~;qm&T4^->wT^ zh7*Sl`+Mr+bx%D<=RL9|`)e#o8{V3f)h%P5d+QS)wrLzbd&LeJUS2dW~hC)dnK}52$C) zU=3f1-#yR2f*mp|66tH9Ks$vK98dlmxfT2HxnE1n)ka` z2X*c~@&SkZvxCy`j@Iyx87PA5nEU;85Hj(j5t+&PWCQjxt>9ed5%q-u+!bv={qy-; zr)Qp@Sthe~W}VDZSh#J>4;TXrC`i}f8tNC@5KSDTc3})T$gg;ve(WK-hne9$m=mT+ zfgdw3=_RVDZ$k;Jo648k%PiHKnG{@x8DSgAyS89X@K$1gF~o|(zvi~65>S2k^6Fy# zF2+|5NZ2-AKx;wuU#e0Q-W3CAh1jmcmAEGFueyKhNf-XL%4+ePhJCC5aXSJi@+=o) zt~J`w)2z|atYOP?8}1FmZrvN+PsN1rWVaflHbubkWM>uZuW;CqHMtP}e;u!5_*eex z|FQNK;BuB%+x8yc8zRIYA+E%UhY%sI5QC6lK>~qLoZ{|Y+=~}04go?!a0mo^*z*d1mfw$+fPvZukGQ4$?2PMKW5(L&0YL|Al|^7cU+~ z`W@HI1ENZqekNWc&Mue>e})Z<=wLl8*;#05PU1W44E|+WNAPXhQDGI%PQ1~a@A^dH z=h0z&1CN}`YpCgS_Okdl%5fhEIUDnSGk>vfW* zR`{Gguq*yv#qoS%%pHm7j)QZ)ujZSYb=bH5QD%HiX3Ecn`A72K=X*27>SR{xgV}V? z?+TspVvCsZu{HbRt%|btwsIXk@)wXPe?uo-2N?b%Y8TZ$Tl+duz$;V$@2))$mTVjx zTBi*AU&5(f1Mk0PQp?+M07f#?C?x);dl zfS$H>v3;={x%3b)K7n~d>th+#Rc?M2zryx^FBD06PTdb9}8d%aCCl7zEl3Q+-&VLN|wHmF=oG`j=G5yi@$XSu1yX;sJ^0@T?_vb76OsP~HFwv1RMVOH zzBlE*&yAqd_oDoR`A_p}GP~j+l&g2b`oE6ecXfR2`NeP1`(9G|kUrldQ0R4{Ywu>% z^EvR{7RB5y^wQsoQtob)G8f?c_eb@!HnY7xLmBWms=w>u*Ls8gKjHaDm75duzfpRK z*W0Por}P68L@vSW?_2y`adYDN!A#TWz7d>uBRVSTsN~2 zYlHvZAisC92hZyMkDonJ;Pm3w{@8&ryykSWhvSO3!X&Or&0s$JdfkAs=+)Bq)CK#Z z9o&VCPjAP9!h|>VF5p@{i(KoUB|jXTsqX{>fR(a zIGJ;8$C*AtMQ}f!`**mFEm0zU!h38_?c#B=nb{mq9TP&_J8%)TfJ50cq<>*mEWj=K zqu5oUZT{`tCAqou1iVTVyf5+EG*-SlKRXpzKOeRK$n50*WByyPe%b=pW~k%zN7jv0 z0;pS+{geAo^CYZDTS;4&S5{9{c~sVe=)0b9WY}i5?0EIRHHdN*Sz=-_CIz=X!n1z z0C5Dqx5pHmUR)1vpQ-?1Rl@?rqgK9NwE|%S%nZ~3|Cy-)bNLk8VPX4l)DtobFq!P% zomrjIVa4+>EZ&vyp4)Q%#x~}A*7V)OuQ%r`^DpXUKg{a=+uT3me=WY&)o)qmQDuak zUV(poML%B4&&*E$sYC#~f&YDo0CvO@oJw5x*P1oh+2@?xUvi!3^t~XzJpW0)3G*v= zDV&Yo|55aQpA{N{wj;8d|M8`lN-go-my|y&_a)=Kojkcd-hTk~{T=D>zX0XmrTpH3 zsDEQ@LTje$KaSepz4o@D+W#_LdsEQny<55m_0UPw>h%0?7jGb=-+_340`IggnC$@W z*Pwdd6x`QmszyD2Hs+SLSb%Pz+IW93|NHP*F}^mJo?yQ#_jg=zY0snEa=jb(_bU#> z3QQt~IhyR^;o`^SF~eXRjzmN72U@jGoZ;6MrbN!hcdNwtUw!}AA5i_-9 zUhsM3E&Zqkdssvp*t7*UaUWPkBVY5 z&)(Rf^Or*FyYBV(DJSr+>P2h?*26MXkskM?XGa9#ZDYaz`DCLz^ZM>r zY$t+KvppZ@6FBi~0IOL=R48J#X#W=uFxjN4Rf^+J=++8U&(^a^XC99TPB845=i{-- z2Mz(>hl2l$LD|3zzx_A^r#h(Vmj74(XM{fuJf4J|I12nv;%{?**-gE;jBR}1qCe`s zvAa{?KfeFSPofi0>+f^z7}Ekcb=)X#6t8M;$z)==?cp5u1^atod9Gq+VZ+=w^3J<* zbMCXqVS>2(EO$NG@1E6 z#f?DzK(O2y?6)p92l?Ex1oicL(qNxbz0~Jy+nr7oI7Mzt0GGJ~y#J-}f#23PB?{<69x$w~UEN321UJJH{=oE*>rfT0 zSy_&Tc_M0t_h2`EhYsOYsui1Jp?;<-;9+=`>#4110s1o|?D_n~^jh_zE9lnT-b@Jm zjHvKn5a)~;^_g0DQJnBE3*gjdyFl&wQ1|Wi=>7`-;`AVE0rCd1dW@>&k5!lT;x%2- z-B;k>+OsU6`M+_57*j3Oov88jESKG!m8thj7!WIgeph`$zSpXM#UsK(q&mNk6eD35 zs&--w7SHK_;@><){~xo6?Us>?uwv%lap_e-4Z;4(O%l8 zPZS4}>vtGRfT-;!yB`srR^IMJk4iPD7Qj9s=ert1$~USB-v;FG$K?<_%)QL`8bqh> z)w#c;_TQJ@G$a2Jp#M-N*exMb{isj|mA|8_wWc(iShj}Vn&UwKx8?5i>s^dues#1x zo6zBNG%@gLsQpf1qIQ3#X1u@@{zu`_FM$=CR#~I+6sntkTYEB_a?@WdtUcXu9_Zx!w1}nV3_-}{>XhJry2FTU|^y1PJ%p2wF{{#Pe{Wkp9 zhBV{xtMi(zxuq5VJ7Y0Mzz=Q(!|(^DcRyGBwb&b${`Y7HZ^r^Or(bX`T}OwYNI09R zVK1N%S_OsBt|0m?@*L-qHl+(_7Cp_^!FGOAyJp?!y7_f`)@@%mr0(yv=VBe&!gD@P z*02Hg?m9XSCS&nF$HHunmf>+SoC%!8r!cAy@cCYc1vs!UhpCD`>hLWwKIIJ#hN*h2=zo_Rdooi?u6Zh=!Ez5JE2~Ldz(LvO^s{g zG4UGJzr@^lBL9oH?80?t6{(xG6KOmvSBcc3}hx4?Mt z7G?pd_b*{SEJl15VK1}^@p)+7#)GmyQ8U>O+>3v|nF&O5s(+ltllEt@=W!lqygeC% zJ3smz8_lH(uE>vBkFvh{bmRZv^|ec8cCiX#9k?F!6lx`1BkmAkkGPh{*u&096CnL~40?zvoZy3#LV%8#@Cw*mcUQ}?@9qIrNVgcMUXm2#ZtqLE&10KY_!38RT2cZW1 zi1=||c%%u~Z!=!|d&R%2!L?xhKeGGC@5O)21KR|TZC6)V3%MiLjCR8cfORCbzmerz zb29!<_;1A{opkTaAn`8-r@|6n0sc4PD5`!gu$?@+c#eyh2wcP?ywykj7X3cnXgMNg zZNfVEzrDzXF98is|5G=kLQ&poEVo#{Pz$Wh@RNudcPAe8-{Ie*^IZeIM)Jwe`#U^* zScbSgaRENkqfckK@>$0@8G(_ha4{Cp0t_bCm`WzFH=3cVnO^#Ju_IByvFus&PN_r(VLv#E zUD&(iHl~YxU+$gN1Fs>ExsKk2r|A*wM}~7CkxGx{0dhD|twnWzoQ57CV4}7*yV*zf5V?7x~;K)LQ!e6MnZbu#9 z-Q1KZ!M}RWQdCgW<;$4ie%Mq9T$O8*$C&#C?Gm ze^#;YJx-t68~k5P6<|;VeGvb~RB4Z=#00Al(H=y%NN?7Lbw_ssiG4uav&f#K z3z=a4O-&!>P+pXKJ=dO{DzDGf{xb^)fc|UXryn9l{jAUi@4T1^e|s|HssXCG6X|nl zj8EU6IekAd-)B55-@MxGsF6=4>Tk*peD?Pr%#55Ls1V%B^sbG{?U<1DV(Dhq|N5oI zaD8_b|A=O9A3U&CzCL8;ZNX=w4B@MS{n}y~o?Ol^W&U9S(`U;;x8BmXI z{+Vcl&VUDaftf+Wh<5hMb{sp1oabqjK|?t2-=PayLapoXy16kUBz%Nd0Vu9m%dpQnrN5T=h zkEmZR!Pvsw!3dx^_jMr#=mQ%#91X#yZ~>>F8h){uqmO7Fy~g*_MO-0fpTe}kLzx=( zBr(96R00N|Tpojh;bbNTeOYNnpYWz+Jm-`59L;o)o6rMa0|Rgb{f?ul1bj!Y!~SrG z^{9DVLO#(O7T_xOL|&zIKMKWR3@ZN+eq|XI*6Xmi2QXW?ec^q&0=I_+{5*F_zKsM+<>nTTGH70OD(NaH3I)C zf1N(jfpuqXz-cmCi;k?CgYg$9Vu|cTNIATC2uy@85A4U!gsOy-z)C`YvJ!#3geN(( zeaZgMhN0?5^l#sc@xSv>on4~ptrzbZ40(UfEvaJu8~l%3aqJ1b)w4-wRm}$y@_nq> zj~Kvff%Q0pgnu7xhA@*H`x-caUHHtL)!+<6rgOh~r}uTa zx7pWo8~V||%=bg>e-e@Z9q3aYqtmyBY1Rj#$>|1L|9WWi{C*_bV;& zg3j~n#H5_g`2O$U0~S-~8v*(kvF1-;23Jpd`R=Ck?t;=GrBUpheGy#W#+hPw6jg;D z|3JUKJ?eZ$0CoJ=*L%(DUedKyd7Mn3nf>Zu*?M5$ziWp7)_C~H{+nY1tN|GN>;D_^ zvuVZxwB?cJ4ZX1eqfzE;M-*^2anAe2=42=*Fw6Y4(yygfOc2@-8+Iz43QwX9{F0hS zBeMD_mA&Z{ypP?=R>S(u0_{DCeVi1yBRSBHOgfuJXHa`49o#@~ai7XJ<$F;(&Vm1U zicfMKbWVRJs_I5(uzkVz@p)g(l+ayK1g}z9&cvnZ`KIg{egbvC`njiIY3GAL_h?yJ z$L~6ERR!A<_Y7n`jLodPO7Q-yiI@nI>O^J`fq#2^?MV~MPTC0XZxmn#&^g1uEV7U8 z#0okDT>b%ET8Z#E;n~BhhaZoaAo+b)s+jkZ&>jd&xA};`ljw>2HXtv(6#Q?^nZ|rV zXMd}0Uzc-H`(`hoRdah5)ibDuwWiVXe;onX+o+#T5q>%v(Vs410n#JFQuqunkteKt zTd;q=YP{|QYHXKdzxTld8&Qo0_x5w@gS7+BdsWeqBK+9tO`axdeNo}p)2s3c&LMad zKYjDQnEw%MsNUXH5L`j@d&mdLI!?vst0lGeFq74EENZT=ne(w*?oYYrbG7-AM4eCO zS4ZuC1pR5Z!TUXmQvI_+OZ4>D6^n3V*Teg7M7PXen4C3~4xY2nx%^V;2Ku`&Bl|O^ zW_(}y7H;egI_XDMzNNeVLhyef^EoH6PsTIM?Kzb_f!mcH#`8_V_YH-ETN?zn#YeB6 z#s2#J@b0T-NEhW=fI9r7$oF@JM`$I25s({f47%H|Kyt6l|6BEI$;I5?_@Gs00aOx1 z9ANdpTdg5>A`Va+unug%47v-BC|*wIP(%8S55{6WT>79?i-vCmRs7wtWtWf(JcvH< zJMy0a>}R+$lY?$zx3HhlKfi`GtYH^nXNhmhWe#4^Ec%8%nx8b=&e}iQMq5JyzkGqrZ&`X*oaXk zJl095dy{2w=PLVl#=$9NsB=5S9OdxrEv+0%N{e=I7{_tJi8ks;9Zz+d98ez0)rIVXVsDSStB#{nXpw0 z>@{^lp#ZVo8`mOF@F*sNfBTKB0oZYP0N>^7%=y@YJ?S4O_V1Hlz?%CiKZH5e=P=!W zF|mKl`51{>?v-L+^7iLSZQ$^3W$pK5V%A}({@#NH?@I(+kDi`I=wxrl*PY5_%rYGTf8(Zw0YA7c>8;75Z1O|5^aiuYJ%0w1+*gQrMAau7jd@ zE3DH+bR6cW2W-nkk(=p9{GrqYeef6*PrDNToW%67$B2PyPz7{@fp(PKVPySE*RCk+H4D%5XLR$MbHr+qV-m6V4B`x|V)W+q-LXpT zY=4eSZc}^qzh?k9;jtysWO_+7FFFm|Z;r%-Nft#KUvp$Qo3h!%H5*Jl>LF{JmJkMN!7T{TW4~CY$B?s7wPvIN-svjl?xD(FxBqD%5Oa@s* z2iDMhUH&ChnNxE=GE4d(IDk=n&*AB<>dO(u4v?Y$i40%$xc*;!xR+cA zW+zEZ|8pf<|CbRo;udw{-_8Q{_09=X|8p|>pVNuUWt*y4NU^=>51*$86y4$D6XN6d zKmQE;#G^&gh)gqoEp}!OXBNE(9XS&F{Re0G_qfbx$AAIxAJYsxm;WsTV2)vLT`1?p zd%B4KWC6TCESf*#%+m21*TnT|WmCJD_)(*l+3;*vQfJ>JyWL%cH^c|)|2F`Y;y-M& zUO!mBU^M(IyuV#NG1n_H{(+pg43D!JoroNE*SVkedYA(wJK^`F9@y;PenaP*>-`U= z+wgBp_urX`6K~~K&rf6y-I9Ec`qMsmpj%jn?(6wxp$HnzL?JhVSsd?{2H^Xavft)F z=JlS(-khJK`f=~>MzwFTgWo~udsFoUrlYGXMa-|1h z+2&DA>;eMA2b-A(KAZjn)#2}r_8It%MUWAUN3wi{izr~8bTJstM|B(k=g)XT~6tE4tpoL5x{*mdSU6~sqBX|^5 zfs3-r;Jfq;e@AtoV`U~@{>4fj#iJ9$_C^J;8#52rW;)1cd|IawGj*aK@)Q$|XEP)8 zMl=vzN-xo$JdtBl3-mCb`mKcv*j;UdLUZbX=jG?;2j+A6rR*2pp2>jc!6HrL`?l9t zWLgW?Lxi99mcaiySP8YiW&kS4t=9+sjVnV#t_CRP|G0mMQ#JITUc{WLyUxS}^2g4u zY6;3_v4*e32FzXIGgHJK{#_(Q{2Y_PVoiqE7uVt>>_I$U)Wo$aqI|>%{Ql`^Qcg#` zWJjV(R2YC1J=ulB~C{j&gbBnsAlx||91?)rPNi|TY>&$1^gYC@c&^wlMw7T|h-$&g9=|ml zp-f>^35*T20CpFSr7F26J9*thkHDHt9o)ZkCG&4H)pn*bcv?0&0pPU51NL3Y)T#QO|ql?QA0GZd=3wIINE}@OXtI>)Rpca z+E|yl0Pms&T87@@Y9@nhUl?4-7aq=^gA$+zN`Ui;0P?xJmso_@!uVEsS4_X-#TrD z{?|x6BL6^ic)*1IhDX&>z!)?M~1F$p5YRzhVHdgPR-6xupC*q8jm4_4md(aZC7hkJ)RUNy=zEqc}6q zH+?37|DhmmKluMY@m_L$qd=h@olbTWzrp|YJ|EFc%|3<3*qlo>NRkjV9u{b*xo|_)(%-ouqGgr zFqEq2wp1yvExtq)FogcZbEpWsSo*fq8V+w3XSV=-@HH?2?~(Z{0vx~vaHdWOe2Ztzqx10@*o9$PHDpWTp&zNWJV69-6A{?K?62On z@EzaE>97Fx^ADrX>YMv3_&bR2Pfc%d#;N`v`#&YlNBvL0L@@ug`o3PSiZMo{xC81v~OpJR8^j8rP zN|nS~1^Sakh}T&cOmC0&&waC|@!tA>_a|^SR413KTl9#<(O5o*#Q&*gj{3!at^rs= z*V|zrD7gA`G^rZk`J}AhYjM&4r(3-q)*#Ly&N)1Byjoa-aYStw5&;~>8AV@)`-&y} zyO*NhrQePI-wZ(eEcT<8-8z2h55hddlt6C`@5(2GMN9D3*Q&|FzMq_l<}vO z-YRtm&r4Y4Gw}0EiE=+8&Rr|3`}ZclEzg~atI{F?!&{E6CNTX?^u5wthJmVGC5=jQBpfNfSch= zH>GM&3qx`$OhSn%;d@dCcnK}gRNgyw3|@lr;*7%Y$pJdS0^E%ncyRu^+>N<;xu)z8 zaxv=I>8uD@ck~IlaKY6F{t^s|X4P(A&-b z<)S)r-F%=oeEd16MUNtW6a%rs)A~6cOM zIF4g?PJ!J&s%EYJ+oK%w%I%m5|1bX^(+q>V_|G}OMfAL%$k~K_@+jkIM1DelupHI1 zi}MW&5K%%r((?@qmhzrzrm!9n&1sy|F`0tHY5dN0RfB6KP=%&ZmfxjT*%%5C}-*T?HzM&|z@GislrbHf&vfqRL zhSdDWWIJSa&Md$u%*r_xP0(QUzCV^`td|Hs8!iie~3nM7$9{6VU%!qYr#XeNWFHRsOiWN#@f-$rH*z8N+%!XAL}gCp@?LzkP#|@5?M00Yog& zjB713&)){@i+?+UA{y{os0qEN19qS*7GOA)%K2!YuVKBL#-!E8FW5d@H_xyLtlu z!4YZsL;n$a580)dFQZb%Svm4UYD8kC=`RESs?ubjIu|exNy_eq}2VoIuJ9!U9BI5V=Cc z0)e|Y^JEi-gZraUG@L-sjr;2b{yih{Kb~`lKE0@8Mhu`<%PNm~fjydod9?o9$2%Ed zEZ5vcXf{^B=@3o`v_fFq?|0)7I3dLuX=X}+|LHt_SE`ZE)wIa%kXy*4kKXyM^QYyP z<$uZ#Am==d*wf7aF;wY!;@=~vgRhMa=A+VRI^rKD6`zFS?-{V)7Hw-^qW@{+xszeL zTF~wGI(7fEiGasfT2+3=RxBn9n92nI=ZOA$qW8U;y4uDte-ZotmVX!fNv9Vb0HM>V zVm^F%Q*f*|_b;`A<_YoyF%>`+P}yq`_Gbk^gxfo8?IC&ug9Avl2p<^? zK`U&43c>#HfwPz#c0Tik>y@U!+uw!-sK;(Y8-n4Jm=y3L{=Y9O-z`A*pXvPnnwjCP zK>R4sKa)>r6JmiuZ~#v*CGCpJal`;Er~{l!RkSCSz>Anxo-5r1(=r$q;2m;+rF;*U z6x=CjOrc@nX*vRDFdzIr_6O*f`x`Sj_rdC~%j$@VUNC@qcU2@Y3)c95eO8PN@pvxQ z0_@t2sc_Z}6Wi}pYCVn08vVbX-=BehmA~4F);xDts&Y3`$DWeqmf`Kvsu$sb1N~kV zP2n%St;z)WxIn)-tCy4~`1d$;X@3U)hqB7e>0{q7tJcFfQuToDOD3c3nTda=lLY>~ zx6OaZ0L-N?_hC@!G?V1}MYT9j*>g1x5ci1}jLf}($8m-ZM0_ugvW|+2ze`7MSIphE_A5v~m z{L8*-XT^R@1ULVWSpzevcN|G<^IH=}Q+afSx>*JNj?Ev=$(2 zK=cck6WG<$3G_QD%r3&j_8aqyYHfiLe#-pA%LfCXC1}sHqH2(05#P(+g6`PDsnkJF zXXT|J5dF_3SICkumF{8=b-W6e+w+Yu-e8b z0bipZ;5w|th|1TQeVhpk@ElpipweIIgxZ{#<0~{*_tAH8J)PG_!N>NaCwMWFSO>9B z;FYjMMIKFfHNm9qB-NROheU8;-aUJ{0`+W0) zP8ssOO$#9ZZ~Pzo(YNLm4`L?qA}U7{c^&<{7x5o{F4lkY=H4z6B1#Ca7#vmH60!cu z=uceQ1gzVQywBkv#R^4d*0g(BPv!W#W;l;7I@NO%xlMIqhs;uF1LD~K6AoY&TE^wn z8FuEA4E$@gWJ;n2SVeh60}v-`wL#QqZtd(rEA6Z2>uV#fa)bo)=BPWN7MJ^EEY zC=JK^KSzaYcs2p!Q{vl!Ab)eb+9cxKuI!dwuKgR{?Rpe}zpspDC#*N9jGe&FeFNCN z>vdFrLrb5+qwNif27uA%%MHS??o%%qXWzSUCkC6@~D=0 zek*|DUked@f7q6Ij(GN>@9)TwI3>vWV!;Has-f>?6w-LbJGRFH453OlkEubo6+bDi z#eO7bFgvuuo`W-B0Z%U9UH%wNWH)Ai&j;OS@JT#GJoFtEk{(%a)C^d_=5T;tv%Bcy z>@qeVh14tb6zq(m;3pJD+c5{>87hGjU^w5U@_H9);2Sd@a6@(pc_;rT`m$T)U(B6M zr{;I$Z_bGxgwJqwh~KCOs`O3$9)9O?M)rG6z-zb`WSUa7T>QJYhST-rnXEsBMF@ZI z{6856qXPG?9S8GwKNjEsuBB>NssRKN!t<}}`y&zv51(S<^gFCZM5uN3Jdo2UJVOWYFij-P~9Z5=*;Cz@Q&nK_R^E^Y&UY6px2#J>zcaI;S8jQJh* zX~eB+fZXH7_lP4I!n4)~&*A^=>Xi%i=wkX;Oc1hS=uv2M?EX>pcT3Ip?C)_&kKzB%CIcQ@S(T3W>(Kv<#ruCt6yM^CzSlv8Q<7I3PIuc!a(=tbvb`FN_>P{M*rE|9=-=J*EXF_Fwdy1qA0G zcyG^L?b{Ivsux#Ksbc+YEx4`qo`phmlv-AoRP- zfHsLaC`;&y=s{2L3q)aBfNS7mcVY%xsqhGs0mq>PSj>dRHo51>Tesm`wKi|QXtWrb zZy9^l0I}<1%$L_|xDw0|W0s$6x#~Zw=1!$c_&489(Z6}O@u&DV7MM!S_#sx$o~$%i zSz3o;JbZmb195wJ{_yX~*Nc4dP_+ON7lb897@R_caXXg-IbNp}b?4R9t54;eoT2Nn z^u-IRewo0lIi0AAeQOsj{-X?F6qETL*?NSuD4d*uiq*#OVVvkc_N<2+(-O_yW? zv?5{oyhZ$tWXkTDQ~-|zv171W;@{&p|DUu1|B>lib5Y%=@3s?Au0~z3EMRDQ?&=u+KX_FYR1yEj9AJ+wc7fd(2Ir)j$C&fCRqk^3_vnwl?3Vn;`Syj`g~QpG z@(vW}_mlg-&Hf%!nZo&PaRZcZKbF>~p7$Vi|E}oUZlLPll<0pJ>Xrkr0RzzfDlM7F1}f6ls0_I{PDcn|jOtY3bW*Op{}FTh)5=@K0g=@k-}|?? zmH`O1FS34bPu4;-hlfwo!5VT)Tl};WfV%LwCZM+=Rv?}emL>B3K)ctq07d{Zf5As; zQGCUyKU#q>2JkiH7W-2V*qA)vL^_4*vzOTA)B=7fbwKT~Hx^)V`6cRr&CmmH&fX!H zu^-B7d@hCB23W{n*+=M$%8%$Je`ZqJt4u)Nv9ea>eeCLf-aY00`u%GB@2$b9MZ_cSJ-fhvI?w9g$?65}JCpPyjWLdUwF^#Oj}A{GJG(gJudo0kc#IZ4vI&)5 z#v4xfi_G6|-L8PB20Qh8AF2=^*9^%WmRpAR-#C9Z^Zn~F>1S8!O*eu5`|vx@GwY`( zY}d2J9`x!xRqBkI?;7S`{K^hr2a(y9!TfaQU>}gp^<4|?&#x!}zM<>q0cKt7gI{Z2 z`4WxWrLg0Dh;1K$FY868%enAdGhowufurBDZ(#vaPOq0^Nd z3DIf>5SpPT`0(y%ckC!?nZ1G&LaO+8R!Btq!T6a4I3qNsibw44>xBk6CJ(4KOg5+m zN8XP!FbX({&!+>k3ok+w^aDGf&4BAT8;-yOa*xs zo_0z;pT8xyZLS4%z;l@jHk$Pjd~r%K+bvQT3UU@S?_mB&VA^OF?8GzF@ z?K;zoR(W*suT=<@Pu_}Xe-$(d|Jo<D#zX9vB>bJcfvw+lliRy`bzt#j*6SzxAO!rk6VbxFk%Ly7!Or-X(8=8uT zYF4A$|H|BlxxV?m*>~#ed=C`=hr>19#(H~z%=6tseLC_lVXwR`ne+F3X-xSjG;Xhx z-A*C;e+6y(RM5YG-Mr2T0Dbhy%n5pq&!vXw=wlH7A+bQNb`?6MYU!4Ef{wt0=m=UP z(@SqbXTiJ7Mwo?0Y9ZCe)~JD>#2PO_jd2lkm^Lk}UHG1UfZg+5=>|9{HzxOM&C*Oy zVsCzEMN$NiDgg4#s=d<`d3C^1XOc6}Y6J%u_?LfD>78U-B~~95p|r7 z9Z*di_;7uP&kH*s2Ewxk3S_`tmHPaI1}#Iv%5Sgxm~~nCr?C6sBGht&z`xp`;TcY* z@H~~s#{a>F2mZ~0lGReD5EG34CkD`}$7ZORUf`T|1v}}Oe(Tx2b!GgE^mOe1{EQUu zBs&)8=BMNTnPeL`Q9a$8Z$$qeO8ijpSpn#W4YuF657#%qT5QTQCi1z7`IvSPlU(9a zvH{`MqsFV!Tg;m`s16vzZ)=2}mzHfL@3#X-u(0McnE%7c{a49PqpI{mzA3xV?n&4A zpXvCy6Z}70_@S^i-v808?)Ngi@0&6I>S4TESGeulSi?Q(Y1^4OKkntZ8ourCbOC&h zr(250+m+b=7tp^5@4tUm`+o@UKdAIB9e+EbrW*=6V>U-HaAH4{cM;c%b^n`tThZ6^ zMrS~D>xNFiI3PT@H3Yi`ofV?LZVaNG0os+<4Q3!RhsZKwR+yOA?#SzVEoy+RuoHG4 zdU5VhiJ$5U>_bXDMjla9>`!|-1f~$poW%}Bt1=DskEIu=1@t5a*b~ju9drY9BLg^; zUZ90cKmCfBKgWLOKT;L^iMrq#T%3^d7&*Ycr~$uYx8OtRk8VUq(9wKWZ=(eo#SS5_ z5dqwZRlb@CU=Oqz_5+;Gu1vZ7B9vQQb8n)O-3n~U5UT(P{Od#9@mU4XB-Yv_ev2zt zt)0N?1­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 z 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 B4jljh literal 0 HcmV?d00001 diff --git a/test_images/IMG29.dcm b/test_images/IMG29.dcm new file mode 100644 index 0000000000000000000000000000000000000000..ca4c6c6372ed08e3024bf69043f9f9c6b0e003ff GIT binary patch literal 526126 zcmeF4d9+^FS)cbcAqdB@{?WzI>3z;~f8OUR zPMtV*?5q3fEPeM3d+)RN{@&*u_TJ}wt-ZYej-Nhu_OhzNBWGUKK3;z>Yg6sqef+I| zQM^0~Sb2IZZ2Nq{%=4NMS56tYHnVVUx|8=&me@>;C=_%$G_U~Wd^6c#X*_r)w zbud3WKQ}u+dth$w?18-pXXfV?E^F&6*L6MDP%d|ws}irNYuEH^mbiar?y`1mTROF_ z9U$F7j<0V=Ph8PXKeTlE{!(3JGOLrJH2%7EvFxzu3D^X>*~z)?cBqs z??3&}(KAn+fB5v-qYuB~iKCC7K6++d-R=0%b!~oj?!fHg{NlR0$Az=6ZnKLEi*t2! z{qwYcUEA;i+P|(%Uv$^47aiYn(ebSp9nUV;a(;mp&ZW)^3;U}rb#&#>g4u8GZb zp8lfutZN^xb62)A?|SDKzh~*0C!c)B^rMu&e)f^mi{tNiUwxbNGYbogGbJns_s`Dn zpDj_D*}JeXGq-pC;KJU6b!uks-nsQ9H|HO^rk#K5d*1crQ}3C3^Ut?d0_O)~ZJJQ7t*T^r|+yfAI|)+AV{`4B{|- z_T2Fk8`}AHyjr_=ro^)TZK%FEUa9BiXQwx`Z>jyuOJ0^Q)|n3vXBM74wPCo+W$n(o zHeL6-yuI^FpLxqyzWqHji}M?n`>p61Ir8zI&mPYXDdrB&&g@;T^SxIO-{)i1nyXJ&?dyEi=k@L{u>WxFU)J{RtM*;J zbn42+*Zs)Z>653=TsZM?U4N#ozq;*P*f-?-@Nmasbh-TX*B}c^=T2UzHoX2=-Qm>9 zrONfW-*NKzIi7z+N(#$zg@?lH#%Otce=gyx%er-KZ*V*J#b)Qx?NehUXTpU zPS>};bn4Y@={;ZZj`z+@x2sE6T-N5Nr%MyCccAvJ_1wYfV(IwO#D!WN+Y-Fc5lhpW$oPA z>2`EIQjxlCM|)R`rrP#a)Gl4o&YpYd+_6&+pF4YEetLWL16SK++p7<O5LVNv%bojdUo%!VehIs_c_BJcbcABs&uozx4oUO+FaHaXScW4*Iw~c zaG!C9-Wr={q^|zI?LwSYln2CBE|LXhT5*J+*c1N%uPN@48^N z4_voQ?{&|T4zFPx{yWELg6o#qhW6_QvQ0s%8;0v}PHCJcg&L#l0FJLIt94bSE4%iJ z>WxWlCOvSe_ki|TI{jv~SV_FGmkR_%#E|SmgNUk}m&x{Sw;=mTM^v|9bix+s4uY(F^K{ z8wTDXePzB75ADVlYJ>29<+3lJt|0ZqGk7_qWOC0-s|TQ2mLLnJ{M-45L#(yT>9=!^ zvv3}7pTCrb4#3a9v2CvH#@geopZfpaC-$FwQcXSJU#m}DvPUFfETEo9UDOd1O>k++ z2s{DrAR=aQ}lV88Dl6*^*fr>d(s0hb`L-aY{CtD64LkeyknI~1%FTt)A|CP^=J?I zhhQzav4o}GShipO)c|+_T&EQ4VtvpfI2Li; z#2=W;I-qODJC{`#SucmnDLQd>*YMh|&UM;|QH^3`7S0JVFub?T(NNe{eIdqCT&oegDh zpno39wbbf}a0oe}O#82GB@aA>CUarUp-}$4E2UmvQ9oWkBY?~Tz&`)=6{ItkzY{IT z`uv@L%DZ-m2-u@Go>33=dwOhZsT0g6y2u@=?<@5?o78L41D|;hj9FCbVTLW-Xgj$E zSDkKCNs+T~5bx+9d7(*WQ?Bo3hNO4gr-q5S)=6fEbaKrdwNpBqz7I}J%EfuhNNowWJ7}BNe{qu@+RpL z#hI1-Lzonj!XwjIhSbS(Y_0q|+6VEniY`F|kdJaq?T9_~d`v35+ClHn)n6%bV{&SAA>HU9NAN=WeUfL=121gRZ}|@cVTxln&bXxvtuy?y(g!{$ zHG08#fHX2~3TO<`5Gntr(9(y0Ya(;#3)5IHICrj}Pwz>|-ak6adWU7(%(dKyvSnW% zK&_!Bi#E_dung-?dtUDEa&rGk4}9u9pyY>R|H2RJW{_z%xQYfq_B+R3lfR^bhtNe@ zX8<`zKADAo(u9BhLLOJu4X}7aS^o_~$}wYFe_5q=z3$YK_GtP23Le(HL_){R@( z%gZO%p{v98P<}zhQ4D8v7FYt26_2iz<*8@-^!!o4oBeS6edb%&H z6*mWIlP*kCie<>4OpP@_bb|Ju^yG!J_yf?N5jR=BZm|D8=Myp|(7WX>-iJK4hT2ir zXaMtaJRTh|EoD#>w%kKK0Ov_V-Q-+Npq`0_u%BoN^cyW$C%u`;OyTp%Q0WZM`VwzSldeU7w{v1Z22Qs>p=P+w41$Uxe?>OGM7kkrq3&Ro(Y z|FN0jpKII${z>xYJaG)IS;_yn z1>D0sr4@`j!DQQn&u57}wu>Ox6#-)UrM)f7}DGz=oW5A6}d3 z75HF}l-gJMmndip7xHUfNk+as>wV+{R&rNTOB;VF4T8g)=R(QYUWP04o6pqI1+bP{ zYxU#T*c$53X8UaW$`+t|e5N>06>vRgvE^8KYDbOLJNA(E_nc>3sTe(G3r%GU*f%}b zCL@Dm8J+CEG(8~oo$}5AG6~f(FCm?N3H< z8ENnuca!$cKdCIo)TXgEYLJ}ie0zWE5qnSjyo<5F`+Q0*BMffD>1@=|c}MFA|EZVl z<4COl&tv+TtDtRMB@K0Sqm1n5?_^BirIGqcsq{c-ga;$vZX-i4*JAauG?lF(7e0jcKJ}0F zj~3yWTB{w@bCfXA0WY@nukG?=ANfb(AtPQt$FcU3CB@lSzTq~+NR^&5(i^@)AJW`4 zfE21}k|Hwiwehq6vco+kB>YPi*3-L92hK&au)nsYcGCJ6qX)37 zAwmu#_i)Ar|1dD#WC!WwEG1A*j!iA;;a{prEB~gKR|%B3 z9}j`Ha3?IL`yA`%+aBx3UA6!5TTGo#>!OZxjj^QirjeU!;~gVJ1-x}YeSmGJ4bBVd z5vZp)t4`38o5~gu!$|`EoY&+iUvx*$?^V ziS>tjGzsN&PvM4%AFyWMvGu|=7wk)UC`7s=@m`eybpThSP;$@<#>M0^CD)N$OO(7= zan5!YqiO^K43<>0(X%!`t!n4qr(L8>npl2G?~wxcr6khv zney3x;gT@Pxz>6>d5`2P)v^3YE!RDk1APFbO#-E8%u49!DbyhHY)bE^9*HjCx@q_{ z_r?56MN%sH`7~|(V~C*c@egtg$GMUgkuz4AIH*Q zgk!ewZ^_=#T6>?ak8;iWazFB?9P(2)bEP-9F8_JQAoq^-Pd!N;&b8UHj;x_^l^WMQ+Qs!s!La@=h8iY?}J(AB~IrW(z=h9NUP6zj(6?*;Fik74X z(Gls9PP;Wu%WSK*SN>cD0QWGP|Gk!s1{xP64Yu2qFwS1QdD|C#VeRn@df6%0Z^XDF z-hgfFbz2+KJZa^p(*w$PXp)oIJC3sYMPktrdI-u}#>T^^`5^=jkw1ANxBDE+S;$sO zbDi=-m@Ipzl2O!%e_dN=AD?&_IdFH8A! zWMh){((VCdTG{Uw9b3)0$UR(i;-xqI!iaNb;h|H3+^Q8UEyukCCDZe{%DugtHA0GG zzbp;Omc__Dd8tWA^gPE#)ar{|m)4Y-XA8#nrM;$3KX7OErA*D>elIoU%5OaT=m0D> zq;DEV25uf^12Z$A7r^X*>_!t<$9VhNbk13p^s5unAMpz$owVu!KDlP<$@2o2Hr1bM z>)-{cb_;>XKJ-JOoBVUm969EQ5*QzIpHJyXYBh}VDZlJff@1*6c+V|osS#4E1k1SP z<5!>^xZ#~sYLUwX`YHOO(P|rpk?bo!Q zv(g{_NpWdP_M}zM*8>s;1zJ_)S>BKiGb~cq%>2CwM>~3NN&!DdfVe2WWqb7hNPx+aZDWNPp4ee4DE zqoW{;>s;k1{yQsxr;F*^YP+NDZhLE+X}1^YSa?~5Ytr4;cD4DoP}k8A{yHITw>;+% zWZES<>n4rIr6%$hjd=&FZnpberMi& ziHSB)(=m>5)zD&(ds``kwB&-W&N_F1_pIpUs{G>v+*GX34%9>T!FHtGU5sxZ_=n%5 z-Beb8t{rN}+R=7bw>V>-tN2N&t6GtS^@3)|K1N0*+Q0Vxz=}c+g9u! zYp2@DBL7gaeXJcW{eoROg?j!T2ha( zrm@ZN?hFR}WB(b?e5vT?A zAhqp5pmrv45bf`oa2~Z+F&tM*pz;TZ-^o${(1mbnyTB z`j4*IUm9SpG{Eh{NTD+cdKTVIw&^SGM@{5kvgwh&!cfjhr}i*UJO#A@`MCOAax*!% z`g@@J+Q>VblC1p8GEyYRUD^}%cij>0k$36huUf$4t{uV*DUibOuMC?9x{yeuk2C5X z80MZbri{zDb@bj|C111_rF8x&PwilfZJj))?%oNzkEY9C_)kk|U2j=$t#_9xYaZK5 z1*IKfOs_s~`RH1J*}t8|`;KBg^zRuwgI#ro)j(V7+Fhd&KxP4_ONT&z zClhM5*WF^%QqP)_V?7YGQ)<~u(RZ+1pHtv29$RB#m(?xxliJ$@NH!82d6!Z-LvFR! z%0Hi-Qbe^aHrvHs4L=YRk5_}|V!FKilUhuzLL_kq_~et6Gyt-4-_5q+>=TjB6VTeh#QH4f=(INn zmu(FHD|?Mx`u|eS3cl&`~WvYu2*vJ&O7Om z!!iG|)l1?!N9vl?O6l#o!5X9vq&H9aw>F(r>Jq(VnH*Uc*9_5Kh|+6kW`YvaPihqJ zZ`o=C(!d&jIpg|WV)~uMZdUGCGOPZ#7W223W`KXS0b_r+)_JVIb=X|jZyodmD}b5z z(^|)>$D@E7@CUE0GJM3fqUDe0h-aHG$N+3#9Q$V%$IW&i1+3nWfcpau;n>^-#d^dH6qkd=( zOM-tre*Ar?MZCYgO<>#3c1$Q6s95PxaP^rd2_L6NxdeXqi(iatz-RQ zM=m6ZRE+x{%$SCEbsc-!`j2Y)<0govG;Uc z#rvnnDWB4`=3`>Hd&<-IH~P={*!uL4!J98C34gmR+i<~Ln)S+RsY+D@xSnGneY$6r11)@%Rkx#{yDOIH3w`A;tL zT2A)7j~XY>_>d+(!Zk(wl|#8)eQoWN)+Ye8&9K8^zSbE@2daI*)zWv zGVNKJjV;zj!{^P#{`MgUq;@ZiJ8IR*BlkHc%j0@PQ*`3FL#JOqAMTl(?9sjPeOQP3 z+p0dd*Qb$+Bay64blyVEuo}5o3w4%C~mFJ&@Dds#yY0k_rAtI z&-kEGt}N<(@|QjMHwQg{C5F3k%uPRG{ckQlW-8`qb-&N`>-)>AJ>uwGxYtTk9;5y6 zwxvpk=&o}emFV^kLeRei#l#PxktpL$^N8F$2Q(QSPX{JL{7*NnYDgM_T)61ZF7V zpAEPQ zF+jTnnvXk@Dq4qYT5>pM^IEu-=3GllV*S-A@ZGh6Ik*z7VrtG@%s(0+q;m~TFy1k`II@hi>JP!EccFz_-E@stN4h@p%P1OTgVT;`VT%2;MzbLCI-M?pnOT!3qb2w z5`QJ0zk2nOZwlw~U_F~_cku3sF5p|zS$({_wwd}5|85X}$8rkNYW?y0hF%~# zsCSyYq6k>KwSf;=mM)2wMz5(6kYx#kUiZzRG$XIdZA$30lY=8=+I@3*2U+Bv?4^A6 z$NaOe2VjljVaqBdC8xPUddT;0_W;OY-n2j70Q@s^&!-&Azp3G#kv-ykHZ;MQf6s@1 zTTS0+zk46Ou52uGe!Gf&-qzzNK2%1JLVqa6J171o-gadVylc;+W3=?@4z&UKGiqqW z(7k_3hJLwcg%Pp6ZyJMIo;ZSWKiR|X!@gD@tswE+2L3z!_zE1!y{nd^1B?_nn&^O+ zU+Z+q59?txR=HE62QcPS;$qE|LaEm)kmiuDT*_#u@cyZV#K*>u`FCGmopKU8XuYW; zbW1pYyKaD4%f}u|wsziBoHak6-hsdDsR>MDtPkf`)PJ-Aw%^hIt7}iK;QeU5 z)*1d??ML4l`@;!q_=w=?M^mZ+NF)E8WeiY%yuZ^2oA0=vIY~$F=nLeoj`yPlAf2ay z$K(2r=4XY0UcP>Q>^t1=EShtc8tc!8aa!S7;siAZx`FFP42%L$f~9zkh~VWXU@g}m zc05)PIoI;T@0c@4k6jPPq|I92@JxxaA8mpBTb6fAIZ~mAFMr;hed}QPop7u%RypaBRmg}WaZb5Y#zM91nZ9cWHAN&aIZ|%414Njo^B=;aEyxoMATiXHv+`}tsYU0X zE1t(oXX6ZiJO7-4b@c?P$*+#!oc}rJhTV@Xw@m$f_Obj|wAa*j#h?`!18^k3l;pdv zXmvyl;x-KRw_Wr?JahbTW&>z*dc6DeJ&IS8FyfDI&v~@L%2`6bEx$4OC)zh&=qqy3 z0Qdlm^5r=}bbzyUK4IW09j-F#=ct`_-hI+D$H!GZNxw2J>F^v9@!wHCf$uI`7@lu9 zP;W83tKL?4q~2+GxZY-d*RV}=z-Oxm!dLhV^DyFmEIV8yangx&jU^RH^i0y}s~X8F z(UceJ$&YOIGRV(evDnc7M9A{!ImzZ~>@%rNqlG7bw1H#uG8|FGY6rc zEASs(VE_6l`;>h#{l*Ti(?=ty0a%;MK2H_0Iro=&0QCZ&&f1gCS%Rcjqo`B*HTL3N zpeJ~9kr4pvobIl-6CbH}l%J^Wc>QHNTJJ6SY{~!Hz7KN7e`Ha@AObdFioMutu7+Ln zn2PhE8vZ#O3zZdR(HU?{8Kf~?^a)4qO9gi@O?(196v&AOplz0aH2`)yd+cks(FXeK z{VM#2bpA>@d!)8Z(%>~j2T%rdJEO-+AND=leST8t53uToS`*njYR1^!hN>ZVv48C^ zy#VzrXQC6~mtMibLom^PM(q>t%YS+rKLE`j`Dg~l^|0}-&*hn+%<%EowS2NJu|@`7 zBUf|;_8l$Z3g3|Kd|^I)w`gBM#Jy7znuU#blsbwyQ!&8);{R~be!SjN#G8uH0w?M( zM{AqR&qnJ*eE5g`@E;kJSBdZRhGcU_19YmfImWuKF6kN|Izl-|wzXW`hkfoOe_=zS zIY(aD@p|mFx{FV)^dqkKRrs)KK1xMf}6Z()Ivu{Ja=V^uS1Hl6zdLa7N8|T;l@;)H0I=V;S zWlX^F07v_c`L)wh%lCpFfoz{3jE?9}?n5n_fRRGpItsbuwghJlz1w(S&qRNOeNs5S zNbF%Ljv_iT$T+~>K?nF-Cim6vnXnx%9dN4NTmIQ#VC~)`5+@aMgY@wqxl|LtCFhh& zDb<2|#eC-QJd%hk^3A)x1j4x+srbxBsZvi0Emvw~EzmgDgj!mw)D$Y^HC#snpfT8o zPSeB_;Er73to{Qfgkrdl)lUhD0i4If&dazlfxdtd|K&wJV*pnT_Wz3ddu{at&-3uE z-W|mbBm1%b>E-mT9v64z41b-kgH+xE=2#nZY^<5*nLx%7>1q3oPif0+9{t~acxi{{ ztQO{arx$%7?e6jERh~CS6Oa$hL9C%xl5c9lUbIf2Lueb_fP=<=I$>Ikh5Qh~IfLo6%o^A|Z+ z15lPyrLOQkNSURQR$Y+$85d}+^`>Eljg(%6T~maAuF8LOhu8J&JO7Rv#=;u`XyqN- zW1SzHJ^`PvX`f#k)WbhoVtv(}-|S$-i}k!W*1g%{zobX(d3yu;)e(#uI5JPfoH2Cx zXB>f5zw}hJr(Qt#*XBYn%KP|?*JROD>}&5O zQesKx73_H*mrBZ5cgsuMkrI(AB@6i>cO*_-M9Jh#Zdfu3pvJK874GI6e;t8y8T1pR-ky8NRn@cGpf9_cG+=d;R>$N*I4>ZFv3ie`V#rvDouHy|)*6iCy$o z(!2Iv>aQ-~Xv1LjwU*MsyqoLk9Y+lR=m3d^Hn@e?zQu~mK7E?rh1#qD;wslTqmMv3 zIp&JiKcfzQw|+yUGAGB5KJdL+5;em56Zh{J*v8T?4$n9-=g-p)GsDcFD}aa$c9l24 zyN~t_Cy)%%vW_quupF7hN@=Hpl) z-1|iPOK(A&pYi3TI`%$H`t~MB-A$`8V@XvDr z*natEuAh1TgTt?w!8&vQb9H@ohy+{_aA24lJT%b&FPa7zvnqWM!8X3K@{E=qO0#EL z?Xh`#4(IhkJmt!|+99&<{j}Of_S!LgQTxP;9=$04&?b-S0DN!lIn0H2|3avglEP@57{XD#kZd{X0lq)JMKy?bLYs2O^!`{Q zSbEO%x^y3aZ;23*c1(r zC(>MVqTOmBVmJ)ZQQwddZP=U0C+;t%`Gyg@W)UBj2R`OAN_fYin2 z$0}>3)2qJ0!}U9sl9dCpi!P9INvAYZ;CQ?=s!_2{-^5q${wu$eLGcWPn2FbTB(jsqJYmR3Xp0klo*MQ1{fb9nQ)>^ zk|IQVMQV{-%Y$XFbl-sEez&BB0_MfJ5)B}A_zjUPq{WeGbOHSPi&xHn5d~)s47pTO z!9PdHqHAoKeOD5d#{Q%nJSHB1aO^wm*-D@9<*dE{Db)yB>+2j~W&&ODVZ8 zF6bNYXV0Z?qD|=yH79*=Q?(CLZXa5y53N_^>Koe5TH$V&X}SFA7f7ju$|LUzVD3HZ z_n_Yqel!*R?q@Wl79Gh(x3Vn@jA5herJ&HdD5v3#{BQB7+_yT_N@DJ<&W&2 zt=}tuxPGzp-0;igOT+%z(g>%XT^Y2Nt@mfvcH|5DqLq~YNMWw@V|mA(MqWb(`Sqre z*IZY2mFAQN{gx2Etpog{Ey6!_QWNmrd*wwBR{M>=%6~@Eo&S>mycv^wIQpm6m4oXB z-gwhC_RHtxDHS=!#_5l9U&jaKUl#Bvyq-9~u|Mp+8o)UKKaKwJ3AoO z#{aZ6eP#cszrsKM3#)w`H-J&&XEh*e>-is#K#!gFt81bUY(*?GPYTj|KB*IrLi*Jf z(r?d%fBTFwC>!0NJy(lukHTzhnGhtp~yz_{=C+tGSUiDU{!EIVN6-HD$Mj zN^-Z1;h*!Km1;|(+)lgvlTyx*e6OmB;)SOKJl{xAY<0%au!!)_?Dy6|BRF!UzhTs# z@qgsmRrcsHXy+4>;2&weq3WSUrY8F4#O&HYy;U4Yfa6C!GG)eZdn z41)25KD%~Z_W87&5FfwZn9O>io0!#53;Uc<{F3M`{1fiaH-YA0{i5ssXUp%utGxM> zMfCaN9nzm@Z)$H?=Kf8!5Bp!(-dg{ks1)%79w`3V)+)mMbPdQFU}JZEANyb8ecDR?Ek)1amg0_; zH9VI~JmIJx?UQZ!w=by)|BWWd55w4Q*AY2-;M06W60*-H<>CkU>>p1GWORYL@XG|e z*>It}{)08LkL7=`?D}KH`CHrDYWu?W=HmX1wdM28b><5y#lw{j58zCZ&JRp6(q z2jX3aOYKf9hkui%6FcT#tq`_3Qu2@!XWA{>+_?{2!&J`d1H|8U9>Dnk&S9yu;tgqH z)Ld@k4?uvVcReI0a$$b zCkD_9i2dh`-al~!n>vot(S4jr)MKy2)6fI=?$k{G+9*i7&--|M_QtgY%qMQCbdu_K zU<;(5l3^EX&2xv$BHlT&{fXOUKKjmjC=Jg0Q3gFmEkb%ci9QbF6G293=m+Y`)4tnE zC!lZXb>3?_SM2kw-_eTrPZj;=%Cmn{d&|H-^gmJTzoB?vTK4zPR%AfrpXY%b17w!) zXl6dYX_3 zKN%roe8Jhj@DBasc|gVhxRw^tLT3B913lmtO^B|e7TlRnT7#yrX6gX!KNc0wTJF_< zuKw3M>KZ^D$0t1d%mC>_zbgl|(^46W-}zS-@CUT{`W}uO;&)*8S&!&A0@k1JYHQU} z`mHTKfT>vZgf`n!+F(!3^*PfI|EDXS$NImqEIgh+KK|<~8i4rw>-y315$>rdfj5G< z3h-c!7_hM_i1!8DJ<$N4(p&%p$fh*PW|)NESaN+}xY4@9f$|#uNgGeua^iVvOSuDi z`yIU}pE5Y6A8$B%Kw9ztwRn;T7ZNIyT-S$(RXl7NBX{Q?26G?pAAJ?(ka#0gTBNPl z<3?I}MX4dZ$MR}Az0*nH|hOu#j5zi|chr~mv0dM{izP%8g=B-n4b zvtIfD`2ED#&ILGf4|T5R&-x#}zkG|CKXLxhcX6?H5Npha7Xg#9Pye!)-r(52VYJba zJ(!NapLckuOB{tkUmLL*8&F&I4ylL%ZmzrTs+j+tVV%!Cg9mW3_+KjiA20IH*Z!$u zo~Qng)YXGU_+ohry9b|zr=C~`!8-zd*Z53bWBu^rL<2mp28hk=TEIPsNu(_Q=>GTs zQY>?^`baWqI2&6=S;(GaMw};Ad;u6VrF5GwY+xrL$IX=5XuVFYqGh84(h|z|zaBRE zX^GGJ>w#xoA5j4%C(4(UFb`{t25K!c>Ihqm9h!Dyv4%v$3>qNwfsO(Cj4w5aZ$M3` z3wPws_6N03f3t5prB8hp9y|Z&BfNLV`?aU~+>Erl4$AM$x>{dIMt3;c@7w$GUOv_l z@!LSo8z$<{9n}K%33rC;MDxzNpg-87JoJc`-|;?21iem-rvL9) zL|OW!+Rl|HaIC1myUy>eRI|gA0IYe6cY*H9M#+@To5ausyCxdo|EmGC!?GTRAks6D zNF)cMl&0`aUZt0-ecvPf2bkq+8KY3$i zIpb`-{AY9z{+)U6bt9sH6m<>bTixC{x9&UoNCyo>!A97WnmGXc|Evvi9biWOp&!ci zUev3$&7REIA3lcOxE5a;886eLCYHvUVgr4@t|M#MRp#Zm1OL@&@!O618SjJFymt%! z^R95{kL~aK_DG_A{C&6ZuNOfikkNj0Bb)r^y&jG=k{a!GdvUt2=)b4P=jq;kr3bM8 z=W3PDv1iHOQ>nHOt;L_v!*R|t#~d;4(eH(av3BG7=WDt42YHjju?7fB%A^(~c3cf$ z?q~%mjy|AF_N7+uGkPN>j!VhiWS*ngM=91mV=cXpdVu;GvqObX&Rc@{;a^=6E6dfy z1eRt^)d0lY`Z!$U4VrmQ&e82ioAP|~a7XKa*V9`G|B3$nT`yt}#sgXN&mE~l__wE4 z>PA|Hw#}LZw2Qik(E#W-u7({po|ngmhe$mF`B%Sa`6-bZPG{q>k$U~(_wnYJ0XzG8 z{AvR0ApIG^Gv)~YSv%C}@9{rWI>YDh7tNH7rpC^bPt_|0KHS`8Zgc*JU0uLY4a-A(crX{Yp`MfX=&T zdM@ovmujtC?h&m)X`J&OEBPml{Bt!7Lrm!ByyeP2oD#Dt@0Kh1q;xHzmUirW%c9&; zgU-L@6ZdQP9dp3r&bk{$wzRPJAG3d~>f_#6f5!eY`UmaK2N3;}Ld}$(;xA{>jP$0u zggu|bQNHy=oNaR+Em6Pk(Um1NfKUJHkI>Ub4_N=32W#vYy_Vm1?m`!HfARf|5)$u2 zTeP7obhA>(Q9nv@-qCposfT!D5l0GKp;d42FUI-(!nv~O_y9X=AK(A3;q2bpJ29;9 zJzg4NzOEXVpx3qz{2P<;-T3V|25Ynw&4om86>ngA;sbm_6oAya$%Rtv8M%-m_K`=) z!a8Q3>s-?-uslA)nJhq+@~wm;<>L~gW#muZ$s@Ni4Eb8^?zhW7j2NGz^RWSZ|EUpW zq^#7-c1Dk&Lr6{hKz-%UI^n5ne~}|cu#LGL#l{k`-B{@u`Ga=&b{>Eu=KFc}C;X!! zXnlN|-mj?@wXu)WEXM6H3XzT5LqOy1d(Q?+Ao}%WC+pJ9+|H)b% z0-;*Dhgt~@*Zo-L)c~fC7OT!nJA21m9fS_#Xk-;L}!s)nXP8=!B{4BUw)_vM`$ zL%sH%nE-6PqkpXXp)P5ocTca;E40YIl|cPiq(A;GwPCIuYb$%Oh~LeTemK@2*|#i8 zVuODD26O-;29A;O-a+0SKrZGCNvZXB7C<{oO~|L`;K+gZM3bNgoQH5cBAz$4*M76N zwpN_7P~;!3k$lGT?<&jB`~7&sC-$Ex;8^+or;Glhb#}4p#vB2y;Ty(-F!q;zef`cq zb$4^mw&=xuG8Wd}`B-4&L!R}eLut+-k;to7am>GGtpDhgny1G(b-D+$@wyP za4ox*P+voxgN(5XhzMU>AO6t-diwCss$cqmjh6A39BBI`FGWf{lQ}YNNvpi-&dBORlLV)|3F0u zJE~N4pH!;>{3iGgs4JQvwI!8lqtlUbo*6-NtUc17tHq%k*^uCs#Ht-)A44jVsXZ}2 zy&C-?TS^;zuPo0J5$~83YJl;1Y$#{pig+Db9p`30a;wdT0N1G* z7Z}aTcFI&cp}(?{k8)PV1Mx7h_R3sV)+23dAD$(^)>AY2cdakB-}wMn{n7)`JnZ`| zs5z~LcZ;_TK}H(bI^$^P+vPvj7y99n_kg&jhF+m8EGNC>+9-+KR^0Pet<0d`QIz3F z(>^x)kxyeE?Y`p$j5b8$aCb-X(JI~hr_LOE#xVfKEO(TDf2_v!AFmZXkCYBLR`%Xs z_Tc$`-s*e*a^!!cv;x-uwrA;vYkh$DVJqq9TT|Eho#;!cVO=%8b)o@k96;tnVhHSi zCDc!B6r{uhh|Ylc^sf|mZJ_4xF6fHRI{TI@+cHQ^Ol?Z;sLyXIeSJzD#{k+@R>>IW zaev9-FVfD2%s3LHFB=VDt->J`$~?Ly?50px!@q zWuMm5qvIZ?w)AG|uMCHDsM3GN2Y@Pw%D5k10Db^|xN`t^*3s5wdZ~G*Umw`9f9BhG zn=T{pS*eGGMg!;p(5Jl)=$5Q6NaXK5InSOp9^$RB^y{TCBSCDzii6!n_32{&9qo(T z+iPXd{blp-E*)@hvCq1FpYFeZ@Cz0z^|s1o8-0$dt)*t#~{q?ko6woZJ6JV4f9soAqnMY>i9N#lGr^alI zMYy`iwA7oizk{`Y_s#98_MY~1J<)TvynNUD@r-}o?ZKS?LZ!W<%Av2N+6ch!ApN8# z0P(h#lsz7lex-qYd~<7y_KRC9XOTUvRzDZr(9eWdn2o)c^sWoWrS%eG<0wHoEK8dY z#$5T4K_`P{#dTze6fD0D6JwF1DWUSbrQ%00&$nUUb7V)xDO< zufka^JoQ7XU}KO;y=&>WltxqVstW9_}|ODYC9wjA}t|LMW^KUrt?4&(kr zGO|y<&_}c>e6tdK%s+%13z`l&pqJ@g^@ASK#Z0W7V|rsHq0s=5NvY;+_T*T(jRvrc zcmVnUDIqz{Cr@MY;dZ4C2;b&_?3H_C4G`N(8I;6d*5PZD^Hqrt(uAM>|7*`i$N}D%AmMEN1BCo%&L5 z_=fhJg)+{$$_}Qt7tM_3-BIb$PHH*-!i2v3Ek&^J*LK{`cL(~!F9gfK^JT;t5YM_o zRu;zghkpA~U4!;@RFWKcB3XgY@AvY)Ud9=y@9njJZ$d~!{sR1CfA}x`NEo$?HnN6lB{fx|6kDl=;11qN zpF$6VzI2Ykr)04A)Z5iIc-s(3q#gRv3Hk!qXnrq)xiV+|=#Nf65fCE>zFCteWgwq; zf$;*YIO_|d0gMuyOZ0bmTqW%2qN9Ci8TE`B7M-PTq4e1rx!XUC>+|Mr*6q8}hZta6 zjR2l$U(~*$eNB7!5CPm*8i27s-|lyEng5;D7M~90+X(-(%X!Vb2ZqrBzK5PhAAub7 zvR(rzoCkI+Ywg(lv{Y8(uR>Zh0CF#-VF12Eci2_~(4U?$1$pHr8YF)uiL_E0N^<01 ziSIff$JUN}Qcj=yQv+BQ`))+<66uVbGO14r_gGPU06hR#jw8MC?4#Z69pij#iINBH zrlb#%B#5OS_%Hujcr{$cF7f=SpU2#TdZ*v)A7>kVn#gzh5#ej+88h>JxSf8-*YpQG zizh%lKVOW&Od=dL9J)&n2rq#de`fo9XLzhXWya^n_7i>J>BGCWpQvB@)fTb2`d9QT z9*A%4o~xSho4q`N%QLul*WQ6={dvBP-DU3|Y45BU;Ez-!aDI5Mk6-jf1F-Jrc#Q}w z)cuS~;63zbe#h@Xjb)_6H$tku`Ay{$Jw2B3>(-bL5T3`Z%YT^9k#gBJKW8-K*V*tE*nRcB&9JAurs2rZrjqp!O z{3Pl3jUYa!)5rX`)^#F&>P#s+E${4gbsyFr`uA1s_SAiOE}6G{%@ylQ z^I3U(jX`R}IWajaiuf6=qZHRW#@$bkFInj8B&&hNNdM*f_0XWR~thG%D4H#=K< z88M4@4kIv%^@o2*4*wkCV`mJHbVeI^{kxWR1ovV?2dO)qRmJ1d>nGaB|L}=>f3XAp z;htykeSU`(hTiF>+M6#QfVX>{uMxi!#XrC0aip{YGXN(m@9t`wJ{#YbRvrF3?U~il zKM47Le@ZxguI#G2odZGB85^wy?ro#C8JSb!kzUW9iR<*=Gvr;c=IhgiX9IZ_WAzD76a0~ zle5S1Ak}glsSWHOTd9_`t!e|G`N^9;ob{(AdIR)>`pw?6|I_cr6Z{Hj{C+uye`epX z^5K6xAE#GvYjKLdy|*abUMZa|$C^9-Vcf$EK0X5^>;F5ZhX&Eg;wz~opx%i+8saIL&06iJq6 zWHlN9YLMViCiTcSX_AAhY!~|llUYf_LOI{IBFgLbRFch1Aw)+xn`T zVpXXFt+2-V_K_E)fLX720C+4XniRsD+QG{?Q*n$eaO9Or){xUq6@OxhZPE} z{4@49Zpps0mE4!S+>;X3T1YGW8{wk?u*^jIkmIT!&iEUdtiXdQeDytLXAhK&6a7OA zt<#&wpJ#(>M&=#QH~RP20x1zYtB>Glzi-pg{`+JBF@pUE{n0J_YVpp}I`Yqo0@f7q zo1DIb%eQqnj+fkOUUbK{O3O-M-q(4&_~+^W`)c(6bRF%ht9WdV*ksiP-wSjnu0cQY z^cDTblMU#ixzZhns+{{Pu6U&08}_!EV|;h}>h}Kjb+vtc`=<6S?L+O`mbY(T1ET89-?A7qDrj}jY)k61{xMs$aNCwOb%(Rx=9YYLyLIfV}v-+!w8`Sv~S``ZtuKj+ka>MLqxIpH4`;-zTy0vM5c$eR~%7;!f(v{OVqO|I7|Jb}IjV>X-Z0V4oiL z-Fu7z_>0`Ufs;3R7?D7KqIBho?~wO>^VT1J+v{*e{OF9s1OF$gl-ujN_MdNS%)Y+c zZFPq;wR+&4?JL_iw?Ef@p#4buyX_ygUuwV7ezpBt`}Ou4?OzVtuh;&swO?#MSM2{} zrTMA)|99HoF3s>a+uvw^z5UQ7tpRw$N}lVEos$zSxiZ+T5e%p!Vi(m4GR+nFr;L=q znOMWHuO86m$%r(wPnyi=%RJZA1MIO$6@R%W_Cl{y3xGU1qeDGRflZ~Z)Vni`+!+hT z(?!~md2|3Inx9q_zE&Z6kCudgN}=|=JxuG~ z?Y!2Qaeu5YwZ(s7i}%md{=@{lF&~S|lQKl;)LGwOO4S*73h3{}3Lfc~|K7)ZpUfQWsaSz0fOrZRZ-C$SJMpaj z=Wf_9n5WISw0~dJ|7!bZ?Vq%NRF?k7 z+mDtP@O|wsmQV1Z(iChTth`@atB>AWalu#BI^;`t9FS3=`SQ_-!TPVkAn{TS&5|qy zO1k_@5@$GGxsfXy*X3U>_>8u2-p&y|?KxLXw~}|RVmlKT7%^lvkf(h5cyBa;-T<}~ zuA~j%# zX=;f0G2Vj`=_NIr?+=x#9``d+=WII+bG47+GjdN0ZmVyWcjhzpf5*@sYK#`pL#MTl zC1U%-xUmEL(+|W2&J61NOLf)-(L+WP>Xz=OIO}Jm0Q=7V#q(z^0#72CUz>7=O4lH2|}! zcvieCnU$f$Vf3W(>?iDmdSq0p)e8D*IoElQ->*zl4tfMR*LExMlPVW>#x?n8FP005*A_aemR}H|EzTKgsf@{y zc~=R+zgEa6htyWC@S)wb(Z4+N&r|=l&|bmPN3X>D*ZNa48O72`B*gk$EhGQ<@M-|+ z&IrCwtbLo;TFd^Rh^p z=7xXQ978Uvew_bfy)R?_w+?+r?r>`?hCXp){$OY2VxEAti+f61dFSWJ(g&<##*<-- z^-o#5+q>G&w@p)vQ=6uKzx`J2|5*F3_9tt6@2hJB;O#Z)_jr;1Q1N~LFtd1Q@G!C# z0qs*lz`ILXh29&pz{A+Kp zw6egcx^nFMyJ#=#Z;^7Ne{yidTSRCzF$fz^2I<#0;&03F1!!4*1B{jaZjPPi*+It> z@Q-MbUJWcd+Xer4{BX&dTi50|I)LBeC_Wm1YplBC%~|{FlbJv5{!0Gw`e`Y7{f)0g z4wjbrK-c-eKP&#U74)q-6ushzBDJu@Z3F#`{WI#X2Jr3Nj4n75X^)|WX#-j;V*&c{ z@XyFSI_D%z(CgkUeObVaxJ(zM7Ck0`@_)$65{#j0FSh#*jHl>KBa{in0YMNFcRo9 zz*=dv0u-YM*pDVag4G^U0e4tAG(ZSfqabnSRllI&vMNyf-F+4GRi5sr?iu|H{q~LC zh594CtG?0d8?F0Pk0bSv=?Y-^S1aV2qyKl593$y7)gMIvZrV+M83b0f^=K6M*7~Cn zoDIl)K-LB^wjQ)gTTFI-{=K4*C50bfpYn0 zRAMFnxd#8lE*JB&x{nW)-Df>D&s3bQ|HtYW9k5V6js{2+pxk3U)d;dL8POJ~oxS?u~^+(fDM?8Lx&|&C; zE9);cc3l$vruP63(XZ51jYJ*v@YQV2(>rd9b}%x~R}cTbe~0(xBJ;-D+DquSrOqCP zf1-a^4Hy&n%wX05>-pnX;2EJ4<-f=NmI?oQC(zGRglYkvDB^iy?vPPK`j7nhDLi$^ z6Mb2qWZ%O7;;=$^Pwnk434N#{^oMFrV9&rm{nPC~JIQT{Hgf0z-~;F(tZw4RwfBum_m%C3{s(L0Hxij=JzT9uTIf}YmUZZN z1Wn4L4fFvZ3+lPXr#Yhmaz$>TS^IA6-udQy*zWtTxrPB(uvlw@cIMz60X_jx!idDj`-tq=%rI01gc}@-+B=FGxNu6f_lKG3AlrA6RRsbrt+X~gJ*=!>tN~1^28hK^6rg61TC@WEV-3|1e0JXZo@ey~wDIz<-f)f(rYI*G zh&%IZ-^dj5>Ij(@Ttf8#kX>wyI>5MIo}~nPi*JBzXO0O8cRrwx1zHNk(^fSA;{o!o z{qJx4%c?)(pJ-0{5$_{$NLIn*mpJ;EAG2^iX^Zdgxt{*qC~=#Lkd+pFg2a5vdU&NkQ8Z>;(IAFjE(la(8m zr5FD70kG*AkL0=|e%OEg1X2$|vZ zS=NzLZEHM$?iZjD5(OCTOL{E6V_RM!U3kZL?;gHq;~l6CR{8@e-th^e?)d*)_ZNG4k3KT(DjT^+ z&)B9utBB8@`2_gyZ|BMT|D-o7^(-TLvGeMTJ$i)nY`#C7(SA1947zGS@50aw7*Z{$}i>OLpd(Ui~@1cn115`S=IVGieL^RcE$i8S3kgKeT*RJZ|=p@N%xf3 zd8A~HHHukx;jF-|m7iY&I5>DBGnEcWWd>kJ<y z&7mBY{R{c*Yw_KS25?5ePh$c6fo?}v;~ujp&d0ExYJc_Zk)r){c>qhr{$s=c3pE~a zr1b8#lFN9u5D3GafBKy9^o$C`M)OT*o5%bcx043Sk$W|R8o)Dn{`m6I2WlP5MYo54 zql;L3%P~qYmPQNt^qKy0X2~}WHO@?ZJb!Er`|^N4+$|92)dZYFBKb?7q&KuZYLLw2 zSx+K>Y;GtJ zfJaNmo-B>anh}2^Ltf!BPtt4U)ByPov}W)svuXi}mwL{_E9JPCeXc`)jv+)#9jlF3 ztmW7L@cTyFM4LF84x8u(M$fP>*hH*kRyL5&kv1h4Nz1$e_7n|(x6fJl*WRfmjME+O zv;JyC(vhBX(QEi6;h&Z{?}slCFG(Fhw4#p5J$)X5sKwaawFt)5*kfXU=)=QdG%Z`` zXAM8!tv1fL{?K~uGqfq@~$Ap?0xqqGxhlM#O%J&OCQJ*)RXE&X;!-Q z{2c*w{E(3dB7ELIM*rr%tPxl&?)j~sdx|XPpScq~%y&W?cT`T^6STL|?yfz&)dwmy z5o*?6_>C(UHOe z)j;ZbpCMJAh!GD|j~y$Uk7xC8t%7`{{^J2S#)6KOR;i5-K%Xng(FICBsge?kk#d=E zWG}je^Ia>LCidU&(^YwT#f<7B!Fj5xA2-{e) zJUa^6M8w)bX17hFZ=ij5gr0rI=(2WEtwU;N0ix~f1?MOo>2S6}{;7Lv&aVhl5AUHT zB8z-to2fsWaW(YoLGulUe^&kw89*!iGoq#x&lST*;AKv>|iQWL(#2ExUecuhB4?zUBqiQoyQ+v)YsC)GO`88kGq0bfFjt$~r@$ETA z$!`MeFaC)Rcpm6P@qeZw`-N(&{wdlXS)fmm&bw=+AJ6c-zv2Yf9l>$EQRloKXy>JShoYNZ9 zc4gI>_u|7QYgbi1#VuO%ixm6D&8lW`amdzbGi~jK0 zHmy1~P;Wx}Z#l8L$Q!Al&0p??Xs)_Ry__p+diYll{h?)_>c8ZEJR+%N7M!AS>_z@EyKUh5uuT=@vt>p*DVdbM*E00Tpg^(fv1+I z`LOD>?u_;B3tg&XL_SrhLB6l~AQSU{o z=?^#}NNj=zu^j4wO{O(Ud~}vRIX)XL&@<;rE$PXKy_O#x;Oqb#>ir)mMzZ$L-qQLr zUWf-y&t`U!bLc+S;b6b<;o(^gLw{)Z9XS}&uLsd1f2}{IKs)E>ib&q}v!~8cE*=az zjTSib?>a%|8vFVmzIpD(ce118^X~dj6mevjuR2}FL;!tdRxHwny4U-P{vWT^f2Rj) zt+kJZH|D2rwD132FgjbxF6JPQ4|0Rt-T;R@x{Dcq_;g zu{=C%9b_1*)@^BOrAC4;Mgg#uFk=i%YRN+%BFT=4sR1NHd6!bj*S}0`!C(GgGeq@$ z1p+1W<`Kp*OhHee57c$8{9#?Mnk9d`mZMdU`Slo}^ADGJCy?qq0QQt904)&yeY-x- z&G`#?Snp0O<-58GzFeK~(2uTSvjlQF?$0=%em~lSTHR5U>b>*a z4$~dffx91|hfS#xj%M*{h{pqnpCA5VrW4;;Hzn6d*~>w*I5vl@ z;h!Q?Zbp*K>_-ErgCYr`oSczzSl4%_wvI1gd6nmA0LQ2BkhIeH|CDO&?MZ6NG2{Ba z*ON1pxv~D*9*>+0)Mp|dxOTX&)|C2qZ|cYfi5ZQL{nz?K7`Bskcl!0Z;nZ(BkrjMC34T<7Su{*3%Fxp+)w5pp zP_>cu0+|E!dx8H0^+vCc)_XhNSLqzp@BaMCc%Jk6_HeD1hz4NYwAS90LV5tCN&K*S zGys-4F}jwBW98HDc58hT`^)3!{i>|7ex&9Cm+I*5`fi*D)V78K=jLMZ^)2}1TTlb& z*T;I8;8Y^)S_m5XCid}0lw0btaPT9DJ+N-A=SBzOMx zyd@AnB5}T>+lejomR#YB?xKdaiq<%;?|NSNr>@Kckctrn2xt5hJ%$!xgu)0s@x9L% zxEfDy9B$NZXaap@=?+yn%6Pl1a#rs@zpugXWAi2eV|}f+*54RPtFNA6q#f(6=f2YO zm&N!H^q75W8}#IzbzsJiUm3&4M_bPnv3S%(;Rj2aeA*lf%6cEx1JDM>ps>!YRK(io z9U+m6s<}u)If0F8K|x#nK#jrW()p)ZsdWDowI z8TkL|iV~n$>mOeqf}<52^T*P6Pe2RrdLh}5t{|1UQ{w92Uux4sj^E2#c!4oIfCJUT zJQKjXQQuhGqQLI3o_E-3Wm4V!hRS z={@?vXPNXjxEEA#AI4T)^#A9B56DIMXl>=9oWBqw8GvBWG~Q z`rg=S{Ac)Q^Zaa;gq9(GmQpJBnnUSix)9JILsX zD#s@q)c$;LW3Pu4swe%27;*Ewh|6(N>Wkt90RM6>)0Nz;dM0#WWJyvJ8m0V|~zy5jmfz<#~ z4gYxdWA6Z)Dc>-jbov4uQ@{AtT5hxqcY#FtbfhVx<4R28PNbe#GjRYqfd9tslq26p z*F*r8tgcYc#8cPaaGg6w1EAro3A|@h!{`$@N&ywOmJ~CiMRdEj=)SK!DBiNd3OC;= zf2L+wAFa31qFvb@tvKu45YZm5zR!CYq&%bWj+&zlU+jwY_9WP zTkC&+sNVZ=yi#k!jp2>(r9OHfvjDK}69HonAZMdD)C(!+P`z2?mF@$`mp*{}M+3l} z8(!1R)yIBMymR?%N#>hsyHK$fD*=fB540)JHGvu+y1=^l z&8b`6Ly{F$hcQV^&AJ_Ud9OU9zW7IiQqLG zfl?O!Xyy*ApI!l4$|qm2@r+OVD^>TGj6PPsU-!0pDWsvvt)K16v0wrC-}^grVm^nOJ}Ij@F<4R12a7?2GWPH^Da`x$=)j!rQQX{1&1d z)*|uy8vfEBdWqKYl)1HG-obSMXe(9#@STt2vdwjNrt}9RfDnDS`u1E|DMqKzZt|}! zyQ%u`Tk840kJej&?i*680phcFs~?KB>3RUNpR|tu>GwyYjzIf#%Yce^$(YgdPBtl57l_fe0|G$0OW#~(4*fQy#nPvkryAp7y#X% z2GG`a!Xa7X4R(bF6Hp+L^uiiaYy?(mBgHu%^&%U^dU!Na4 z&3rk}=5_n;=$r8a-ZnCgM;rdtoP1(&9Y@7;hfzo1&>Z0(k18{)q{sdf_47SA7NFf$ z|E3nyhi?Ggz`OvSh2s%EY2q(_@h(4R2zb&*KYu7jPv&_w0=XpuTGk zwT4>NPqZuif8Q%u14uR!KKA)J;)-YC1onskSdWDUxNGnLE|eTTQhJu(TkB5)l23m) z{7?dAM5m0O?&luTZe-B4K+bpmGfFOLls=CAl?FbQu8fc)!^8mk0Im>{QQ3xN=q6fq ztX=&8!M@jvdi$;&ED!pUJn=b*F7-r69}=hsWA?mXo4GdLO#f(+`y~~1eslZwdYklj zw!c(#|8RMtyh;AARy_K#dc*w3>m9VeSZ}BMm3lMvFV)89&)08H{Am3e#dj^gm-g$* zBY3(r$dlz0yrITmPnQ-rG}uhYalM>R=4Zv7vuM&!3gleRmDzS!W{!{lYEj2e7+L6k z17&yqU1daSc!n>@wWrXO2w z`FAESYk}05eZF6ffgb4j<1?7{p3?Lmske;3QhflduAYDAQ?EQ;fSxSA0jpAc8w0-= zb+~K~vjC5kAMn7?kGEIP5;LPsWD2|J5xJ#J9S{wWkv{%*{_*)KgS_Yi_Nkv*$w(VH zGm2O8h^>u9Id-5#UM!!?3A%pY@ebOL_s;ybZ=B9tf&5$J8>&>Tjdp|__#9Zw zFi*`G_u}r@Hb(ajluSM_jF!B!;>`~h_uo^$8u1hL{<)uPzfkX)|Bd#q+i%wAueN_) zd;g){LH|G6@3;Te{;>T)ZGYJQckTbrdOP)RR*GL}f4|nPs|midbjXLQysxR);K>?^ zS*p7nEqen=aKzj5DH>b^rH#8)@07#`S?8TZy!2_34z*R z7(;W~2lR`xlW1S`FL%Mia-%QvUN2W8Kp7*P&J3cF@cZ>;usMwCA1}FMUB4a&dc?6k zM*tR!_me}4#p(;*1bBL|OvVe5#!cn_e^cq&zf!um^RMl9yr2E(f{X=Z6rg+jMgpc) zm-4CYCpVk?zfylAh;=AvfG{p$vZwWxJiKlA#Rl@7?5cM1Oy=2Poa(Xa=i~L=-C5sg zpJT(OCR&DLd5&MZRFs*lzjfDSUK{k)-~O&jjN!qX)Dyu0o=Rh>}j0j(k(a?(eC! zW*;hh|IvEC{4cbBQNJ%%hT)#~5(`CUvRzAabmml$=D*emL(|oj|UVaOccQvxE z7weCI&G-P;*R`~2dnp4Z`4G4-9|8 z(SK)S9c3Vo^peWRo)JkbEwd4FP)Uy&XFq^SY)(B)KlR~K~ez!ZG9{$>mwzyoFf83TNzdi_v+cegHo z7f68{-wdUO`~DXV;D!cp>`!mR^qk?IXaGHwl*6$)iZkc}H*A1>a&LVAY=|QP*dnbE z9<5K2A{UgUcft%OGlhDT+#B7}>!0WF@DA9JC~TOP&XEOrhc{BuH%sjcipi&I6z|*W z*W`Y%o;d%)>)rk%D?)lrNW~TN|9h^EawP$MQ)UK)hQ%9zbPdzwwerjpz z!qg*EkJff!>fxy~Q%5V^&Z%2VJG`cJ#UGZB@E_a1tKX^lwbCX(TP1&gMFtn_R@?IZi{;=NiuN~Lh#a1D=uDNGEF}6Qrc8nV`X3uCrQsSB8o8v=ad-1rO^G5^N zC-gjJ@rec?HFJpckUHA+0mes+FQAts37rN1>JDZ~tUJ1!NQxGX?~LwIS8uBFdG_c2 z;-Arw{k7*B^@X}G{1cz>ZEh@Cec%6M?ySS6D%ZBp>h&17w}lB3f}ntisC0ugC@mm} z0V0B3Sg2U2V4)(4Euw5Ox7{7v&TY3ScGvei=k$K(@jbr3-krxfo_S{0teIJB-S>IL zdBx2tAD1yU-7EILe%lC_3<}y`NY-`h>Z|w{B;s!5m>vc4&qU8G$8LX? z^=7`QlY{%_(Kg_`N7N6LkBufrdqlfO<3am~XhJk4+B@1mIwYDE9T6SHc4Txoul8mC z1di?(b&0k@4m86?SQ|-@VH5noidAp%?e}60T*N#(g5TW}e_#kBA{O2KwT*IVQLVA1 zxhlU`bK73MS$S!G-zj(K)6ufLHPe-gr@Ll9%5u`$U$&Rg<^RDGlYX}+;Yec8`ogT` zfZjI;*s5|?>hPzk0G)+%eiXx$wI&%ZNg@x;9F1p~ep_?Q`o9hOyf@dqE$6*8vr}2> z{dgt4ByY{K!uY=d=4F45m1Ps6_SW6CSv}$3=r`7F1sLm=55~Erf$ma}1(pDv!T^5AXaNjEdFk=tg--<1rX{j!`K>y_8S78 zt6JOmx6dEW!oMm>6i{xTL7&#SSvm=g;Yj0F?`fZovM(U~2X0VYw(ZG~8!Sy?31B9` z9EHAf1CG=j3+#aPyk?irNwdt_&OWbmTr^jO7hAEiJ0~%-=D_1GLGs@XoA*YY&+5e3 z_D#^@eWOueep)mmIuLZ97|n~$j82bEj%I`QH+`hVOCDi7jle>9@9Vr2oynwQr1Dm%)PlO13kE95)VPkPqUO!Hi9qPlO$`*-YL5;8>o zB`IrLeA2Q;x9?JjDOg_WUE2&gMn}57+%XcLl{f~UsjYqG7;8RBF3HoF+gUg{ItG@2W7#2kF`>xiPLONfzeOb7f2|2;?m<6cJw zNumEnet7g}!zX=QXRaKzKdh1-x9Hz75aAU{sUdN>MsvTHOB z-=H^ApfPJ%euFpgB=N$fa88F;Ra zqiTemC#<|(>1A2t;a(d5!nNh4w5%;8-6ct0S?hWh?x*#>j|up9ZjW;!C5?2J+9b1# zfBSHfxgJOVnq`e~t@zF6AhHYS?oyFzTUQu>9hjqS_?%>fZ3W@~SlH90`2Xr)p*vzm zuQs{^)@3aP4R5l-W+tk1(Q1nE=# zeV>8tcpWQTo9U@)f9(x6fbp;MwAJok@#oA1G~}G5hwPO)E7i3zK3iEO^*F-pmhDx~ z7+Vr%6^wuDBT14LjBmZ^-j?;y-cB&wS!Nwvk_376k2Y9dxY_7a?3-I05LHeTRaXa`lv z{&(PCSP}9p1?>F`Nyes874TVQ0ITl{*Sg!Sx!e8m{wH#kJD_6}zmdxbHL+e z6dRYqsGjLpeHK;gK=a7&+J3hm;dr9)=yMIow`}sOAYCj2^ews?&rE3}&mUap*g%edo^~L*{hOV85?|mDwxew6$^}v4bXiT&l zxI8#IExHV?{Q#(aJNi8O4%8>{YVlfNyK&qiZW*`YZwvlf$6LqS#vS6$ard}y+%Mif z?iqK9JMp?>yj8p@lHkv5Yak1L&Xf^PD=%vb*F^tB(eqZL8iAz?$5;-O|AOo#z{* zg{^-1QkEY6RLBMH023?xFF*n}qPEdpzUprft3B?0ss#+q=aV?9^=%CpKb zA7k677ryNo`20N|G)sa6(0*s@G~!&eS)(YHDS4%6fU*~KU7C@ybakX9m%hnXrsQ6z zMNuxl)|;L{UeC!yd2gv;|F=5zqAiKy?G)`79Usk)7NDbV#hZT@JN}obCSE(vfHuy}YpqOy&O$He2~N%5}nZt;|Odc1eM7teNPn-uR7?-UP;yCDZUA|YDx z4fWzxkOCj$7rYq#4LNXIbPd0CI1IxOq696G0l!q(fZK^Yo`W552u!qM0$q^Vs*!Ql zo&0)P+|{_g@vmzOD?kYU(!}=u_2`}-!9uc(w8Ra_tZIMz`PR_EJFsV^V}yUP4a)Md zf1*qPRRAf6$#npV3CQBG_2v=ruW1f?HfXLYgF{uol33eTBuaa9zcPke^I1zD&AW|| z5VNrUFG6Z7Y8|w{k!#!CF+FnvK^o}4vw;G-t@Bm89Q+5_1kSCt&Cn72pNS=Q7Iw0_ z5&t*f-efc<&iiMbNyl2_~7`^`0)6s_~>{x+i~%U@!a^- z__TOFe{)4)R8OrcfR~})hONBddU7;T3 zk<0(r7}x{1H1}v)YTM@*>*l)`B!9Sz{-pU+-A`2pY7^_Ae0zBvs^-(myv_*>wHdZG zEZZ$l^xYoujX1Y9e4;bopkBa=0rUjzTQXDiIgPIVx*!dgfPdxx7`eI=+JstZcH`Li zw_MQPkPE0|LZ*P&)DTOxPhffBN8$ern8wrbMAR$4Ay@jJ^#K%Z3z(>FN82Y5PK0j% zRjqSNh^lx zrT?WHbgX8GJW|IMj9xRqRX@@eg*g0h_T~xnjh0v1uXA^nf6)BaDMGvIQxtdhiqVP_ zn#J%QoonE*l<%WC)&cAfMf2}R&CV6r*)J2@|1-IIJ@LZ#gWtaxPXBS3y^o`>qTiyr z`0;JyKA?U?JOSOlZ+r-tJ{gRk8($DFjxUZci?3w6D!w|tF1{hYp6$ALS$su&5$|3U zUmh>v`NH_j_;h5$@qBu(cw)Q*QlLG)Lo=*__2RnmukZseM0el~%qM?f7b1Qy>rT6(S5>@X8*1Ack~Eqj zjx=lZT?MF0LS+f6w}ATAtH!4>#|8^vWA+}3{=c-6|5MxZ5Ai+mfttTYe(()~YzXoo z$P68;t?DTV`+n7lIdTTt;WX~KqDqZH1lH7laCHFr^F~9}>JDhv9&2DBNT{)=VA&8J zB_Z@DJ-r#Sb~xzY6*;#fx@90dQ+MWzYq-^2QkiG+r;UGWZfgb44#{rKjoR8nc(au* zEV>58`dHuMt>N!SXr7s0t}OwC{2&c z7%00>Stf(P(M2N5(_=_O9>)&Ej=o5I=zxxC=XAF3iIatbi@ZGmN8;ILkZW zCr+cDcn0I8+<>l(oqCJ72GBVXvH*mCdH>SF!l5L(qXeohw*PPZ>(1-`SQ~o;?fcs< zw^Xpsw_OmPd&Gr*+yCwjAm3j$hqSi(OlmfD;~eG9yY9Ej$C%Rz_PVAR3Mg-4 z8-9Oh@P7^Qzd;oV)`TmeOYwgU|I*{O00Q$ayIu&z%O97+Rw!AEc+M2(5=DHF~JJm2LL*L&Z?^Dm+)mnKlwr!n#7P14RW31?lg^AH^%<&*LxRui|gw@8X~0I!Td~NtPtZFY%YW`$7C+{Bh-&74f_Ao5+Tj zkrNLhIj*TlffJDe`&Z<^j&KQ`VG--a5i;Pp=td#~2ND|`PNv~zQQhcUVgirDdN0Ca zIT9J5h|Ttlk*qaaY0~bpdldVZZy*`ol_PpG#;y~njep5pvvHE+Lbo>g1GWil;aTSf z?QisZt_h8jAJ+e_Sys)2s{GVpPCfhwA*JL2xGq56m}O1S6~X(^%+F z>buM|*(0>PvUJm#`>ZtsglBzTsMeoXwGj?v^VlQ_qjjkN*=X(Ns}n~89A{semi~+ z>)@~PQv8GS`2J(z5%!KJ$2%eenqvq21}}IAd4#9J2u>keaOGztb*hW6qXO|% z?0~6^*$~F4Jr<3#Zp869_9y&X6KgCLIg~%`E<=w0I}$JLA1r#wZOL_Q-Ydy&$)Nv2 zzxa1;K`w}qk^L_QpbZj7YfQMqw5oS)O?EU-HlxP@6M1go^2Tf-21<=ZmAF?L+zve+}=WG z@P8KgpM$JbZK*P6x90c%Gx!(sjd0uY!hVnjf7JGt0NUsHfa>2pn#Pon-5Ei~{(Q1}?j?WcGa`HI#G6;JzehYPo`-M044eI)_?h?}aQjvK zef(>@3V2>G*)Z88X`XDAY@2kbY@L(dN&jSUGK6hV(kp3)EZ8DxlWd)|<*_BQp-Ivx zX~5^!!bbQ3>)<8)g8PvxH^LB{3pa2)9N|Rb1RdfgWEH$m=HLxv8J@!VjU^h{ma2g~ zT1gGky;#2s=|Zp{cH1!Ut$g_q1yJU%#;ILJ7pps2Z}2Y*+;I}!V@YK*u_3R{*bdm& ze_I8@x}ItF2!EE#w#4-rMZ_e1T>+$;a@ml>kV`|5wEfW`TK7-ci|!icc%r{aXs*o& z=r`nHtJ8|~xFQOwQR#_XQFjXcn&i^Pyq*dA&m~h+^*@@EX6wXQ`R|Vy*FJBx_xpMH zWOzrft^FkjI)VQML}8EPF3NgQ-kiFV_4GSqkpQrifs`Uo1o zfGM#p$^aMu=7oE80~w1>*#QZl$_uR#Hk5Z2foabilRc^R#Jh9-;*`Ze1&+{mw^(KK zO0ps~THeG4c)mGzPg=@bumqg9BB@~Q)QC?=mbib1q*ai6dcHotqi=GoOOiyky|T`{ z#+)ny;Xl-(NT+OvEZYgY`FJ9IccVvtsk1S8eM6(Ew(^eNel4Y7TkAEwois8qmrGH32c*-J(HQqKK$*=;~vQv z-W!&T=H0Q$2%Zl}`XCj$^Qmo+3mYV>U<-T|ui(31jvqq`+yF~>9)8A5qKMn$d#n+E zMW&Esz#=@8y@^O}PsPA`(XZ4FK2LV?Rd}X{6B8JYTvLQ!)=#JrP;O9rMyUr^Eq|^Z zcR==#ynn}Z<$pEgE(cw2Gz*bc-(RyuSU3LVA4sE!ISw|1qp6C)s$#bv8bsX=)wxF< z{8h`NnPLw`)|lfC!Q(Lg^~xTB{14@&DS{}SqgBCr@hx4DUZG2aetBz%so3@u%_E@y~G$`o1}uyhG9{=?3ZtgY4nSI8eS% za&U4)GCMgoIWd`^oX+OQ6WMz}a$s_Jaum-FL@Mmb(UX&%kp?5N4?5x_G~ip;Ojb?m zBwyhXyc|CTN4ShA!QsRhhLB6NA^C(~;|V-WWx=_~fSE9qU8y>*8~w~RJjDu_i--wK zW9<4?w5;-N)GNfffr`MX*RylEdcp$#&UIpGS zBxzeR6O>6Zni-?69YVhNN%aJDS3va!QSGmM0HZzl8~Xk#{?!LezKhlZQ;nKtTz8&H z`)bn}wZ-?j0551iq=RrRoCp1`{FSiJy1XhK{LDN-(Eh>WuUZj~4O%L6s?`51Ax7Md z-jQIbPBukurz3nNV^jVHT6-Q*^bGjcw; zy?>|Tc0K&*;l%hCM9cB`Uy4>n1u?kx#P@cN_rnTbj4pmKegWP5Tf9cHE}nfew0(aN zFKs>%9M4Ght6+O>a!#@+xhT0bxiYyXSiy@{66A~8{tq5N zkO>VrMr#0xc~(3@7K~UveNLOCMO$X+r7!>oF(d8&SJ5v`FMS_!0gQP)dav}ov{tb9 ztI{Dv5`BbaM<+0GI+=!tfD_?gRZ3c^NIhEqy&Qn;{@VPVq=9{afPZ@j_5&mbbeE0z z@T~e;%#FC#Zdm)H*kl8!!_}eGzV3xzxl0BAqwoO+Fao+>=@PFXEbFdcMFJ>O%j`gi z5;`jHIDun;!J`lIAmCqqzhr7bvkGi_pJ)=Ae=)UsFX8dWaPF;$#g7O3N5^LnpSvFveh5#u z3LbuI{P^~G_M<@kOf>qT==!m zfU%s{*75qp1Xdyg?jbi|F8K-LVFWu+ja)>ZP$#eqHt+!Cn<{0@)u=L9Yw~qt&-RRy z>S@Hjs#mWhKr_(f5t6L7wANU8gp5d|Uw2zL*SxX)@4K(j&}+>itt+B_T|<~bVvl-%gf!Y#5`=!^^v1mM8@%dC5cH-Bib%cLi zRiz^9-xvq1V%vPaePTTi9)M**USG{}|I9TUHU(4 zwoC(4U`9YPM4KZ~nmZZ^ar(+Vcb2*0Mb1LiESD85J=hfsW;*$^SJruij$P|U9pTar zCfoj6Dsw-G>cF+PM9+?feVgP)hL5uJAOm9pg%4AFCz|e6!XxYy|uZKuIE9A2bmC#vXqd{H}>`4dCJ;n z`4HrR_H+dQbKx5H=j_Em%HC0xqE;%QO8MW0e{+1c0jkKirWeEScXX7W>$NQaTl@C@ zJ%SoFjd~;S(~cQ3oNE-?cR}~hgY7(?EVG?Jjp6~y36k}%c%W7e)T#{f?rh;nM#|#0 zrCnu~g9o6Q6>I>@f-1JH_pST&XdXb{(dhTj$U~4_ZwcUesxi=fl;%(_k93+a@0Bu~ zh3g$#66Ko?&dwyZe{1}=_&u<{ zCQSWS=;WcvE^v7VC$qrmdCAqF_g-}SOUVZy{fFe&Buevi&2;^A#!7lKGeenm@ zOMWC%;9=OuE8_)Z4o{=TpbPmytHfVmvD`^^&;qK3W+KVDM-AZvU#4zp5izQLvDp+6 z)Ea!Uy`?+N|A~Q@L{z*+{D|drRSFpYA!cLyU)H|0eXz}gKVbA*3XA_2ztWSrp_pI) z-|-)Kh_DipYml^_x5rOo=xQSEaSs>ecWr`9H@>tgMGG+44P7e>MpldShuR>~uSV+4 zW;Pnx?uBG2VC-A>SMeWYgZ%^JUos%%1nYg_zbY5>O!oh2+}i^|e8b8aI|88mm`<8` z|0W4wPe0&X3|>IGnK9#C9)WQ0eafeh-Ctz|^-3~8Qd`(m$K^gCWCGi`ijBMoR^D+(W{Mz)Hs`oEHz8V>n z#UK0!TL+Q>&K#6?;TWU7&zYye>km~ZdM(efBUdm6Ow6aU=XGLzThPDbV0`FXz|ePK zf6KTx*q=sD-vXlhcZ2;mVfpKV{SI*TW3l%SOpe1^UzA*)T!%gXLh@nqEtp>|-6(C5 zZj*LNd!&8S!RhdHOgb)|knYUic>cWYl#WVwNQb8V({3EwD%}*Rur~6dPWo-dI(QAM z;4$oooADto!>U+-S1_Aj+!K4FOVT*WlP}`eh!5U|O>zc|ahkyMs@0gW80t+ED=AY0GI#XuY-v zV0&LE*E6$pmIy%(h}DrFCN13q{a|KDma#Gt+<(x$KxB(K2QbtW=o>vlgnrLacc^xr zMptH;WRt~o&+$O?zj9M_&drb$ima&j=)VX5!g}!WgY_Sx0p|OReCvE$`;q~| zx@5QRZg_3{d(4}0xB7yA)&GqL^~b@gT#EjmP|+dE9@lD)&Ls89u8PZQ4w*-iW|k(g z&97OcO?J9wkTkV98}okFF5(DvyfgBIY-3-1ow>X!JEd>b(SfrTD6_jMd{-7 zg7m`lqRO_IXXmD8q^G8H(pl*~=^jXh9n*ek*R(B?U_2>IDg4)S#5f*ia}|A<6jnlc~;w6y36v)wApu)PPW}2(65m+d*nGKxuAXW z!-Riv4ayr)PNMLy84~h5l%1hD<8Dnsx`@LO=im;2nxW#?8-n?^jGmY!ts$}nbFc^3 zvMtZ#0qA^MGgmLi{y!EyW#r1|H-BeT3-88$u<3HU>l()}ZXQ#6|GM{0 zxhH+l7ZYKRCUB**VLC6vjvU3cYo@sGypUx!&6cBdviLR2cX^b~EYoq$@pY8PjGZNb z`G3t8W7;#$On|$2`B(Hi`Zj0r*>`X@pLCYvSGFA_d9<2|&@XROy26<+svzx&B|4ew zxs)#bAJkcsirVSq)80;Y-;dD-RN#)luRaN$e_6%f{}kkJ2>-Tqh3DIonBA#xb=RSt zpHALOeoR)u!rwCOo$i$G4Vq6(&jjg9(i_t|()-ef(#O+h(pS>A)A!SN)AxSg-cH|4 z|DL{({*CwVNUuvTOV2@09G@PJ+?a^`7=RpUjjyme_Q2=KyUEKi1oyxVT!|%cCK1DF zcmiFC3#>~f@t5)6u}&6~BRD-Cg&)u)UOoN=-tskK0#}hCxIbOQx=<~cVFla|E>6bg z8DELogjlWc?+h-FXt3LYEVVqAM7At9Dm7cYg)uafWc=HHH~yUyD}GpO8VUdEH()zM z5?=CK<7aMI_}BN!3YE67{`YJZpJ@J1E2K$YGzFuoBkaIPH{)G>c1xJ*%kk-sgI5s# z9q;?!K7UoyTc_Jn5WcP99pm?FTMd>PVUKzkbVJgdiBz45H>LB|{8a^s>ngN1$-f@| zRon+Jz)YW|K(O|057?d~!gyL2E0;mp@QU_Lzy>&ssOlw1)!|&BFsx1X zpe=YklhkO$RVznR>p6+1=}{SnwK1u4N>!Pu@2l>;{^$XKw>22vF z>9gs};C*HKUHVHJXGK;wTR+=0YmsfnV>2F`W(~9Y*@juYY>h0>e&WbC(x=kL(udP~ z(i_rCu?$Ybc9?W#A_{95(7A%JyoQM4}E!mN5gJxt4{t~}M9nqEW zfwRa?7>E_nnC>ILL?2S8bSrTT`2ho|T&^2^O11Fyuz`m#q9Z|vVmG}Q8C3wu`d2q$ zAyfBI64WsmvjKsR)n3hYS#3tDW{sYi2N3?XX`k)?%^87?%mn9*S2IS%Hdrf|-Lbqe zhg0n`9`LVBL#+eUf-%%Q(j1g^A!}P+=T?lq&#Vooya)#1=-=)CfLQzdvgExf1}NQL zTk{89FDc;T{md~zdjWn&c5n9z{uja_ZCAM)!vCh+M=?u^XUYQpS4)6k`J3IdFW_}| zECI~@1q(nDKzCBIN3(J32m*tUY%E|cuJCRRu7XH8RuZ}Aod*RkO z1m+Eee&uELW^QSn+tK*gVH*kmJB%^WdREH%lvXyQC!f-@NpmLrzNCpZ*#Xk(;`8k< z+6vI!t;z}W{pK2Vq>fdli|sk-H?K0)pDURGi*Y46z7gGY2Eddpq$B6oQGGgajE@fj zM_0yoRCxZM;#KjrI}?ka4AXZsT-?QI;fIqqlJAldkA1szSUNSGjeWl~y%#P2N%~{D zO15scF$iy-waK>2x@5hwf!XM6*KA6*2amh)H!&N_o>AGzY)IB8>zHkxZIG>rELa_B z@I(3$mcg^>gV+xX(<9Pd(t&Bmbn|q*w7?_y6kFg$A_X^a9&^bt7>_5=jy$0xc@IAD z2I>yy!39i?2VlcA#t!&_-h&Tg1)N4U!&qX18Rk^t(cBSt>d z3Off#_gp-T^}hKSkC&q@8Zqe&Tam`8yvu-o%?)K@wg8*T{qMmqsa{{v|EeeM{E(1+ z7#JMu0mp{rq1r!ng}t%{#QsZCY{FT0MuI7ad5elf*qA*N>4|bFY{!5KwuRuZNfvku z_JFj5vIJx&T2h2#1O9z{kQw@%y90>T*aQ8qOv7y}c#_Sc3`Kbc>Qbh=^{>Uh*3_wO z0R;TJ^L}{Gn0HoeGwzSrFX`r<*kc3m%DSK_wZgBg0^whJw+Z9cj@dB^^sD}F44Gsn zksCjUSU_9GRpYI(mVYKmqZPDVJ>Q9MRo~!=d~OQ!Y#JE@)7hr*TAqZmh6W-b#Nl{_ z3griDtZfBY0t9=)62N?bZG3r)mH^5bHM^iQR*sMMJC{ZFg4edt_-XXiuW?vH~q0BNx?E>Bdy2EQ}{(yZmgnlP@0Dj-xL6s8>45H*fckq8k1^?|U z_d`-k5x{LK_}8krvIhQ@62LfjpIxEdvcRvsx{ot?)H$(VC6>1WISpNjN4 zpX~&Y*@-jP7`lE=8du%#wnu~S$~+lc;QCEWd(ZTs^$9eJ=D?`U01We%(RgtF2!@|FP_dyjvR1F`_j3n~Xd-hi+j zeAVDN$_Eg~Z^l8ErM&;zvR|u4PvF|mqQ2+vF#c`nuze)i^Y>%)^*%SFN^#ZNy8OZ|52_IJ~7(;REQEy&*`J19E| zoL|g#Np@AXJi9r&GrK=~JbQ-iZ~8ixoIRA?o88V)muHKzv$J{GQQ6+e zg27o2zO6By!v}a1H)C5|h(~Y;@}@7py>S|)E0X8Q9J&-=}RJe;du6(-;w?4Q%g3Yf+?4MobUmxDIRV|f7P z03~lVheHR2fPamKnTNiW5r$DEmMb zo$W!-1I6?#TZDh**NS--`=^ZijW|8dlPuSldy3P=f9)&RSXN$+9VZZ zd597AyGFg=wZ0JMtDg)Oi>(5GkNCgSu{CCZ2um&L*p{53^uO@0m7)KY`1cwcwgQZI zF(=Z6@^;n3zc1rE7TtRY_hccw$TDXC9b|?+M5g-_WQV-Vs&j9$cQ3A1aaLvi%Zd?i ztIXK3pnn%0hamx`!5<$7rhD=IVP%#OMRdiWY`yl3b6-YS83JSA4fY^oKoa0URo=f7h z1M9mDztRuh>rfc~n~C?;u)fA_*u~4Rk3WspBi1*aIN$B@i`4F}ibcIOm>PlAzYmQ2 zA~JfOPF5r_-oEty9&mii(kIgu;J$v=GHZ{GKN4+!e0E`WefB{1T=r^Zdo%km`#k$T z`z_1zJdg9=vO0O4{HN?|_I{cD!2Vx&{3ctOy`R07J)J$6-IQILosk`r?Uzl?hG$)~ zMp>DClYWS2@c>fb6e0zqi7IZEu1b{f4PuU0W0f3>buxkMpskYnR1#;&H}HY?kfpc~ z88EYwCESEMflug0eiPBn!|(&PrdId^#{MRBq~ZbN7-eN@X=Ym!n~ituMZSP!sTq4m zbTm68tu;nwkBv~qe%M@RUt3;3U3!G8y?Gw>bC02cnYtlXu4CI0R6%fnZ16j}D_Nz$9^ zAIq7|0Q0lSPdXFaUkbu+WnIZ9SaJI4-&dc0f>+Og|6f7FyIA%Ez?#0xkr!n$svdp} z=%0iYpo-0%(BZQ|@F2!YJ@p+|4D#RIHC^rL>`rBOYZbxq$dIX=&jH|ne?C7Gi7=IK zRac?@%n4Nxs-|1xZ!5rjlC+6sfM=XNQP}`hq#NtfSDLSq3y$zR!%T8sOpSb!vHbcu z$iBCJNB>!5%)SZZzai+Kf$qPRzC1t1^~kmDgHD}FwEcM4_A6oD-+<|Bhy^|xhW|Js zd3UED;OB3V^~aw-0IhuzcKvd+`D@vyAUerc%~#LY$k)s_$Q$Ra@~!iB`BwQBd2{|+ z<}LC~^M>qik+)`Rnm6Lr#vGgF-)A3ZuVjy4GhCLPg>P^$Uc~m_`6c+He7{Q^R}- zY~VO#-^kd^=LK(-@b}@A-JmdtN6EV5YR8lP?ZmokB%qWn^fdM z_+P+m?!Ygb?{Ecx7>QP#o4f(e;a?O5)LLCZwr62O z)`5ykk`ypcDeYrT@2WC0)?P)@et+Qng59Rk6X!2KW*@HhPUKw;nX!{umFwQrXIrRS$d5+&?LX5o)S zA?_nj@Emf3W)PnkjMcIgnaOeTISj^=cmkKe2JAx~QwO+!H2x54=SpfD#?jYcqbQ2r zV4a*r@Z{6DJGKEFFOxnt$6`OK`dp)94@_)(i1~{N(hSglp+DFJdL{o;nOM@>J;3{p z%$|wN)QQZ8VT_AbFADM|_!o{a1`AO57q=kGRQT`Ark+2t3f5<4Y{_>h*IfEvHpymu z^Eu4(Q!4lumc165P-{P5&#c31|Mydw8{slkpBF=CwqkI_pZy%61jpKI# zd87HPEV0A*#3OuW8fPqvLL7kVXIoXie;8KUD9}3yyP{7;hbou68}GX>lOl`Nyh2%I z!GDmBR;`A3#-5CQcfMf&V?Ktl7c-#qn9SLaMmmTO6o>0xm4ORzKBuipvzO+i%}cAU z)Oq}_>~W0GE8BRCWU+0FZ0^Yw>|M$9d%w==)W=N({dZ&cuS>t}ov5e1n3|rq<6l63 zCo=n__s<6VH-Y`v$?01&?UYW&1OIFK8p!_>5xgF7_(x_J;m7|SOFqu)qUoEW=evVv zA%53Ou5_?YK|H3eO`;cpvNl zMFlsdQYa-e;0>~aZlMS1Y~q4_sb5}=I-w_7UFcZuKo2T}lISg%fQ#XOR3kW$S?ivm z;sCUnOEIUS=Z*{t&63l~cs1%Jqm6z&3pRo0g1a#}Yo|B*M9h#gN;U4m|2OAgPfmSW z%^t}5lMmnsfSBoE|10|E-)z8niCO5vTvHBUea>wR9M6@%$Nz&S(2NMr1JZ+^U-b$6 ztafgIXHxJC95XZ*pxT4o(V+{_Xo~;aR#n#w;lCs2C0|vYWyr7i7gzv0GpA=UcBi4q z7hvOG%r!4X>tD?CvzYC3@qiA;-kyfuRi&P?b%jGAu?uKZ<+boJh@-ASQp{psJs3oJ z0LuPR9z#EL{*H{<4i)^XifbCI(SGc0!H7G;D9+JQMrCQJ22wtNIzA~5BF;xlzb!HG zz}=Ag;w02pP!WNhc|N>i1?V{U3$Pz3o67l0`d(%F*vdCMZ5BWhKpkyl=gAlFTJxI6 z%FyV@+)!Visjwf{;r9#u6Ugzu6Ww2rwKpb_KYux#--*esg|3uWrom%pd0U6Zr%A?L5Cbzb#*yUyz@Jj5wLk9fBm7jD^qx3!;9- zBlsr!AbSa3V0m^<#S+*BZm>Ps1mBQ3v=m=pDr`hkVgetNA9OQkeKwM7KkR^hT*+o+ z2j$7P^c8%ZJf^u+Fb$5|kQeY3@qlHlDm0Z2!p*1={D{7R*D!|;Vk9g9lnWrV+qx3^ z^-6#8vTWCBB`B?_67cU>kbMBh>g>A-y^`F@0Z`smKSo}4z+)?$wTiM2EW7onEFNim za|dSC{5!HGv ztQ#_85F_S}Ej_u8o_zD6{Kh!m-LPUUIO1ptpw2t;^~{$j|ECAvA+|;%tXPs5WigW- zcxMo2I00K=XTD9fggfwSVuK|q><2Vvj%hB~uCxVU_FwZv&ujrW%I~psZ##9j*E~^; z+m6^7$59dbT%9;-L!X>usq24_4FArc|JVxpSCZG?6umi`h}v1$(|09L5oP-|X_)o` zW2ckV^8wMl?ZE!Nu=LkvPr}))fj8e1ZNEo;V16{(d_Jf@Kfg3zp5K>0oxhsDlYf;L z#hS&c#V`5y`Hy*>qNZ4@*nn-VA}@Z(zsx_$-^!n<$by^mYxAq~EBXAX`Qg|Oqmd{* z@@=pw)`23?-+7yjg1TPkQ(0Ik##@L!*^8;}0GgzFi?kw$Vrzcss= zKkbto2ob{CvOoy&RvZ1U1{9XW6Sjl7npW|lr|>(nS#1BSrd-z~E=xId%1`>|R|B4e zMmw3mImo#KD>_~=I(6q#S7m4Bo6Xd9nbEK>6t3AZ3`Ge>AxX5J+*st5w7GDsI?JBe zXR7JzkKFEC!DdH(VPAf64}N14j?~ePIcjxHeM;+2gkVm3;z2u_S)RlZ0 zQJD#nRyzBE{AMTKY0W&4mRF{)wSn%gSpai?VvC&(q?xMG&}Pd_eP)#-rvA`7BBPJN zFM6!bcXgUZBUz>MO6LD6^z)dA?!Syan=9hg$*1o@WzD|S++Iz7&1+QT6=?n;Wbt24 z{_byS8{%?D5W8QNJpuOX!s-n`S09icpPz-MUxq$^2)+Kd{KfqJ{FnUC#YRQrqGi#k z=vQoCbT7K`e|Ryum{#mnOf7aQ1{NKQ7RB1dula}h8~NY!SMulc=a3o?VkcaJHE>*h z7=FR7*aE%sw)rNoiC+*^xC=Yr3L=Ha;(c_56<^vVq(; z^+{6hl;(}`ZyUf}0_1JAM2^c&mwuO@?#(!rr*1#Mo}0RMZO%6-2S`-_gBTOze>Bhf zAr+L*(}7L3$;#ph`d_w#@b5UI@UQGz+3{lfgH&k3`M4sWCBL)@h})BExtdWQ%6!nw zFak91eN92yhz|%EVwMHg_>v6PVdnfiw>-NfeZuQLSm0+N0d{AP@xMt0H_AvBLm^Jy z)ry_|=@!6Du5x#5HrdXKq-*6T+4DL#T}$9Sjdop^pZOl>xn-h`>(9t9g$v$=vzIr}57#8g*BdRNF7pE!1FxzpFTfE9WelmWyf*b{klhh@eZ_UODQj4x zDr;W#n_Za!sts3%AxVHim3V-ALOL(p{-898xkasCZ%$Y9P=2a>{@|0@>bKva6(Xk~ zA+N;7{kl$L*3CJRwfdfnevR6&QipW^L-gQY1>SrRRW%3Dh36{xw6~KeZ34%>YkC5F z-&^Tg#P<$@je9J6lW5%<73}YhM}JCwAy)nUAoo2qd`Sc|oUo&Ytou*mu_Dzg1G zXIvK~hBep$+Aj~m9Xmsgj3-ZOpBJYT_mj^J0Q5W;mow=nP z9%Ui41T(JV(RWG$D6%FSQ21|NnYW=+fISVZQ)Q346`G|H-?Cq&|Hsk%lCa>JFI&c& zG4K5W|KX^h^@V>~`q~28{onJOCo)0nVj`$MtT++0F9PqE6qgm(6%Q8A6)zOe7cUj> z7vB^=6kir^70(p+7FQz~b}F_lHY-{c+px7NniT65s~1I)6h9#eo`Nq}%Qk zKhQK^jU0j~{{`ORL0G|g$fU8b0UKuDrO#7CG(VjN8_+0?()WoA-i;k28E_b}jNwEE zH=%RT+eo{sVFIR5-PnkA#ok5|-i|yxhK@lU=p6b5IUx&)(eB6$*1XXicVu2O$uR+E zRC~=Xd1u1E?EF9CU%bEL0E#866N6=R2gbEGGgn=J)lFJGWYq;+l>vR2Wvc2Ewq3_# z{44)cx>diSIVQc_mSX}dsK~b>RkAhPFjpEg`uk%2U(A(k&yl(k+rL2q1dT5{qU!q# z4W3iNx#rgYAOB&$T!`S z^k(b}^}3QE3u<4Pb-v%V1khdSjFvnH{Xdgyl1>-?TQUo_2mO7J4r1_ye`Seo%~dO! zKa%^?kRxU5DPHL81KC^EY%XWxZ_0geCP#QwR*%rHsJ^O&lrz+oUmAoZpiLcwWNkRN zN1lTufU?eoetk-MKs~JF=V)enZ5dS|Ym+wU%iNlXrE)3g|FKR(y5k;1XOHJV|Hef8 zW|1rZFr9qLq#-u)Zt!M{E1CV${Vl2IIgNb&uhT~4^zBO~-_vC3Y?^PMPs;blHa{2E z?*9BGZ1*4Y4T>JcZpE?1`Nh&=dGXicVX!T!?c=ul9#6EZhyBB-o7fdcj6+0G#EB?Z^MI)rZ8~6jafjuz0yMA81Sq3QQr(%lLZ-E| z?0x&=*8cL=%;7our<`rEK4OrhRR;b(*77d3X+02Sf@m!guLb06aK(}u@~3Z8eyOyD z7@}tEG1s6z^{p6hRTe1Yz6s~OC!CzFqX*}$^R*19;=!6c;6iAyJ*@r0bAUflKdwVt2J>klmohJc{ExR-kTb>IFHlG8YCjCnRrVJvbI%t3k6tIe?NH z%5`$)m#(56pYQbhru|;I_Z(Kl_`XgPn6CZEfq#O|9_vvfyBFDUchgzBK=*gSPd)CL*MkJeuR@^6R1e*@&NjrG1=F%B($J&0dX zd|Uif6y^G5L-4&Oh_7F^DLa>a$^m7+vP;>n+`8;u4lQ>o$FQeU*}7b}`~qolRdF$P z!llTM(~7yp$;C;<;Yfpt#n58wVjX;fPxCji1n#N$11DCZg}diF5^-pnmlYYXJUf#N zfdN?)Dh6JomiT<~gojZnkdqzsEIj75T-j;#C>l>La|`kVKci>J)l>=1BpT2*ZpeD$ z-w+R2N~eHbSxu~N^fo-u3Gl({(b zSJzY4dYxhblmVjlc%=kC=Z@I7yb9EMW^E~k1 zk}H)KRL>k$I(O$@H3S!%SMYDY=AYLMK<5|E(N|_n>q;aObUiv>Uzv}r9ufFXUzd*A z4hHaeY^Ia3%Nkd_`9_?-G6{QweN}4+|LU?LZ=oBu+j#Kbg}ZJ1Yuyt^h=f(Kd*be- zwWT4%06UHsV#M+Zm9Jmz&}V;M`O3->7+jeT?pEiVpimv|+#*R1^?vEdED|@VZg8^u z#RAFm7jLP2pLuouN+;|F^us)uF8&X&j&418zX|luy_pVL5p^@Y@Q@En&ZWb~v-I0o z9qqXXy*i#x>*8I{%5KQsB6qhrnL7s%rTc6C0-XIX`Km?zqCMJrW^n>m{EJ1MvH@DX zP1zBoj|Snx${uC6a))wed0cr?c}zK@9MAr7S(8fE+jm%U~QlVFxUM)rc0XK;}GAi5H%q&qWSQh8b*_r}@X!6fA)e zoKVRY&a?NB0jJPwsC~LtB}e#CuIy4Iz=7}^1E^@In|wlE(2a0`2e4*gKk5WGBp&br z{SHqeCt%xXmFRVtvpHaAG$SDoF7&*T1n|lslD6V!m5rr8#p{fANqAf8Vr%rOivL#3 z9#!thMiV=voIQ1olnjsra9ya@0~Y?}C(2qB{QnFUCjWzf>3^*Rqzpje zzY)JPr4kX}n|;EA|1|#tlFbTK5fU_{^}g}qeYN*U;|u@dxAlKJEX*UZFHZ;mTX2Tr zr<$|BCwES35@`0ThDNrOd5wRL1)!@CYAwgAk2=?YdA)1N;H%d2>XCZpE7N}I&Ounp z7joBj;a&=*jk#}Kxei%X!j$kY`6><24Zm$H`0v5hDhpU_q4c;Aulx&*nPhg^~G-xX=n3)26}15nFFip*K9;J-tkoCe35NT7T-i-^H=0g60uvmXoIIe9Q}N7aSm901C8GT9Y4C92)bvM zhlBXpV0_nd7aq?pm$NM@j|BHq%YDj2%0t;^BNNUj&*E`!?19eZHf7s#i*mj4$Ku1{ zU4%Y{3%G@9;Zvw$no53P%Vc#rhrL2}@P(`;vNs)syTS(k zLeI11tZlk8*%4**0$lJ(_=2Oj`$kN4X2}K?dR)7$_>5R?kFxwgNdn0L%L9A=lJly? zG;TC6-G5jS8tLt7A0n>>Cj3`DM)O5RmpW2QJGbNr>wj6FjreZa6^dKvY_>)6UyL@} zAL$~gWsRs`t)d`2^ZXCk@YVV~Kl;ig@pMdx0ElIhAF@LwvNRuA*@E-Ytd_kmU%4~q zC{IY{JWhf2A8WD>u`L9h~?S>E+nZ+D2_gu31zss7E*K+_? z|INhnf6JQ`gNl7&^Up7?z|(&P&%Q0l-w({6TAp4mC@(FSl~?``PcG6wwubuxQ}HqmM-psLT=9E2$EWf;kVx~067Gg=vL(#m3iyDls3@LBtm03^1g<4JXcF>l zb^L&*=uCQ9g$dXT3DAbTpx;=n>;d@C)5(3@mFkBktSI;rD+ruGZq!y}1-?k0_^J5M zLl|?7i)M{#gEXh4|D^w2A*db24a z$Fe~v5vs!bzFtcMOAWnaEb00+TZR7}$t%&S%fq=Ficd5^&b0^sy*US+i>j5yMTytc z9sB3tUuRyGYT>H>c#2mA-wS4F>{=~Mcyj%4ASMg(9M=dSTo??1_9Spa7Lr2p*? z_5^Xt-RQ%d(8{YGZ;f~uFWYPlE2CJA5PMF@3J4Z}ta!11jv9(_vR$KYF_r+T5S12k z7hy3A$`Kd(m7k^+VAP>dtCFd!i0eyLv$#KT*}Lj|2Jbfve*3!U4Z8Ym5%0h{nv3Y? z_d)z8R_vGn`p=>F{-bp6EUB!WgysKU+MN8pE6L}N$iy9q=3ffhzRcG|^ACgDzoK}g zcny2~>tZde{ORELGH`rnd4Ks>`Aqp7e~*^8mRFURluOHd%V*2KmA99dgZL{s>eljF zo?TMj%-*-k_sTao{$ciB&vr?91fIk2auj|+$8uZPf@bAf_y;TS3?3~W<5wRjZa@x< zDO!_3v^ti+2l=yb5trc&Ov`)Y3ncmb*`pO-V5h7VS;CLQ1x%-p*c$1|3KQ@b@&b;h zbK!8-D`=3!bPRcnF5-*vh4#b`XiSyxGvoyxj|6DNisCPl4|*(8bU+^9R<7+o5C2Afz`v~kpSzw5&pvxeZOb*C zweN#odtbOt%RS{(jer5Th@8S9jHvRg+EwtcxQsT%8fBg7yHo`*5u0awUN>j-H8vhA zjh6DgwT0eZmf!LU!cq1Toz3Gq9{s*pdu1g1jMPC%xuQF;4FuP+`P|dTnc}ML*Hx?2 zf+`9|ao+Ak-j~tXi`tJHSP^?&I$j)1&D&E%{5ON~+85sME_!;c%DNrH$&pzA`tK)e zCI|hykW>Fsx=FSt`F$T{>yyhr6%BhUEdSc@d?SeFA5mOTJdS3ri?!Yi^zVs|zXk-q zS$j9Q9>K=s4SbY8LKeb4 zR2sF+*CICf9(l=^5gF`350O`}W)7k|S^Y|#(8Jg{@&gWl@9aX?4r?Ly)V^E78~s!{V~tyGvO?*4E1Dk_Bki&iI$^c7#Xk z|4D1Q(}Uu<)haGY0gr81lg$xda|*UAjDL65k)@#Qf8_)@*03oOLAfTf{)PW-$%Z=z z`M(EqC}>6h7e1<3G5W(hwOIn=#qR{91e-wrg&}#WBk?gW12e<83yx1H`Y)?_J7%k{ zvK7xXtF>aeIIIT$um@1Zzd19XxAunDKD%(9x(Z{;vMgMcC0dY=?cm&w!eX8ewp(zP z;xU6?wmnE!r;heqv#hv&IiL;6Rr{p z)}iKyxgpyC$`)0ZPW2E_mbmh%T#;feq0W9919=PmK)w?N&uzORm=$E0%SC)UO*`lU>&9*h0)ikJST+_5>qnfA!_m9Iyh(2Lo1 zR0|BIkI)L(z`5yI`jJQJJ9HAhjcVrkaDh9qa!G4)0_rATvyRyf!~>>~7uWzV;P3DN z$I>NaQ?h~|Wj-7YiiUGnrNM+?`MuTp09o>i1Sry@QMU(ZOVGMNJW$a7M!(_)A(pE+ zj@MyzuBRSlEyz=@dXAbann}{8swPvMugd?c-;eA?)!Qp`K=|Ji{GUyXx<_U1YnD_| zZW$0zU}+#5*y!+_GAfJ^;m974HLCHX<2s=OPX_ zi5a3;|0n|xx}JcjEJ_-_k}4uSzZhsa)Q&b&Ei-Gg!O z%hjlBs~Any@W}oeNCw~x?(T3#VhfHHqU`}XtIxB++CaE>q+gO*R)99!iedoe$!o;r z1!zqg@%VuU=*;i#z&#$z-{6V_P>)Laj+S}mliG8h!|_MlQAn%I%_Jw|$vP2zE_RE~ z#`AxlD&Nk`@cGR2*WwKH4<$41M55#OvHng3`uCu+{*AN=J-aT+-pDotOGjb%KM&Wx z8R$O*>@P3w!Ulh(_^oI~1aH6cC@lYL%NNl0^=rD;jI0?~GrXop%{FY?)@)w0UQJQ+ zYxxWKUJIGf2#K&Bf14s5>LLMNFJHwf_!8MruV#~)hU{&`ao?8jV>#5+tWlF8J>D;$ zK)RfRg>gc8a5=5q4Nh?kp20e>1D_OcRx*gLAk%0MA_TvZCvZMB2zwKw>_c~fB!7(_ z0;h5{+htky6#YaelGBi+AHj2|LSP>8z+JF^w3f*FtSb0iyquhXJ;{n_9w+fD)CbO@ zD`JD_D>4GFM8oZkp3@4VAxAg#3iS+Be5M+st&Li9yowBKY=r^!_i4h6ux1cGgm-Z| z(gVRJaQ8vYE8G9otS_xcCx2AA^`Z9A9l*r@ZppVdrl0XLfA!50w5y$MI!j2i9N^>k#`odW-V9Qvs#2ynDtSuFk0N;((iE9hufzep>> zRsKU+KssxmiLN8aDV=}y>Z)hz^9@(3^Y^C$`n|`NLk}>mRgZ)Y)_x}U_ z+k?eD;8yk}>!~+*RBo1Jy{tX0_GV64V_EIkV|yUr-!c5a;;H6SIRILb$M&V{M4jh$ z*il-2aHmSG^5BZxSF}JJlr)j}eyu^!jXOS;W3(FaNOGd*5X1hg&ZgwHpUi3=Z$>pl zx+mf1Udv4XIc`j@@66<6Y~j1e^RJUO2OSI3SJRCvy8n%AUFvWTgJFM^`kngZ?e9%o zehJ?9--|DbRfzIU0{KhI>+tzsFSD8!HGOI()J&<_?RWfdRnrnguU)e$8vobwSMa<( zuN&~V0sr;RclZTQ;t_n#dmGejjAW?C-)dm~9ejk}%GHq(DbnDL@;-Qh>yQE$!WoJs zoDMtCsoWf%@Xuvhev1^i51ZuRqH9qWuM!(v3>UBueBc&z5%?HC;3E8hUUVORihPD~ zjPO7AqP+% zrJ_E{`czEHd1%JJm?YKzY7TS+YnxWSxdR<4mXY;&0OxG98yn7Iw$uu?vXG7QbIx3jFa?K3?x@zdor9I_Cf`MA~o5h=|7&3*W!8ZO>hI4X-+f4q-mb zq6%;~-cu)Fc|OwVx?Xca!nEXoqC>U}H7~R|qN^hVhcBz%)n)G7BmP3?r4B;wZ!jLV zK^+78aZVafW%?-2r%V!AgQ_A@pRox@ipiYUrP%)K5c5BpsP?N-O81+wtlGPbS^jOj zA(rn{>SHd!7Jh+Mx*C%=e>$Bu>yhPqZuTm1 z*!_Fsqu+-G|2h_YiKg#UGaBp*{hccI|AsZ|VC9#f|A+DuZ26T~2r2$R2Bx#h{*U1R zZpXrZ53HBSh_A2&zJoz{A8X=izV|DR&uV_=`=5eUytljyDR4Q_g%iue@CU|}L&~mX z4>c(_B8%`VvWowT6)>vUlpKKVto)^AcD(mbmcX${gsx z-PagMLVLC;FGzYlbs;f zR7>0Wf9Ze4o;GJb$U0T^zdq5CSoSh3mzm6rfObm&q25-q&)w4DkNQ#Q2wLCqG0jHr zk=_sN|2BO4Ze;&oj*rxrUslw63(imVjRQG{KjL4q&v)n_V*q@{K1bnK=WY}SEC*Sp zGuC@mSrM+wk}SLe`Vt-J5x0PT4O=Sc1Fui=bC53vJK_6 z?zyT4eNga5wWLO zhqE5+*imHqmUzpjP+7AoSvC8U-+LWV_7C&*i1!_duYG-SKXLiBK>y70Ts-qvLH3uR zccYqiHN9&F)(pY&Z-&N~#s4c_{a1MYA67WP2Z;bainf1&SFfV?Uqi<~2l|(mH@T)0E1xy)=7RPB6wGPE)41RtR?yhDUE=e!6O2#X`D|u}TSO~D~FMlyGLpsv&BK5M8HqdeA2sB%Ctfh&2|MXz&mFE-k z|Ac>a1Z>BrRW~I39|HO>WHzWLV31Nmj-`Pg^}4FltqYAV;UxS8+*kig0!Rj^`|lL+ zvILg27gr!YOF8qZmmk16RPBFjGhLS~oqq)XwJk4eZeNR@SFgbKOcmd{n(#{JqWe%= zN=Qy9PBD>ux%07_x^j2r|M%iL22~`0*7S6rPE|9FK(fw(_1G7`yFKHsk(LK9#9G3N zA6EUYbieR#F2MNL2-#ZDdm8cJ(W~c_y#ZC3i04zU=lV3%E1E zVCJM4iXAxn8RRc(J+DvdY!*$Sw(Y6tm#A4hC_a!bSWlw+>!Is*q({!_WW_$pYMZO1 zo$2hcJpCfwh8}+R(4Dgb9XQUe)bzcW|CG0)hHn8CJon;le_J#sMt?H#{Rhzg@0Fi| z^SU+l@!cEZ*_SmR68ZZZIDZkX{SZ3)CXT!u%$^Hsl^bvovHr!N_-11NOR?xL#D};A z?JoU(H?rVa@@J;W-4?Kf3xB>=XKA*o78E`XymlGYBPae^(eVMou5r_w8I?f6q{fb*#h92T{Rex^Ir1@wrSij~!$@mGbX zd^BrCdBUy-)M$%;tJZdi`LljfoIvke`&Th7k68Fu)JPqtH9N&91f600YrZsMJ}J)E zy@G#r|5D|da?jMKR`~Y{fb}`%5UlbAXbjgedG_m@t1>_sFed!2aiRCCdxd$+0Y6r? zsbxTS?#P8O&4+VNVk!?b%&fYExYFb>H)Y~Pd=~^T)i5Ijd%(u+&ygp= z7mne+E3d&7__{0NhhQC0cc^z@X8hdj(L88n5YhIZnI=}EKNgqiPNf9wVBhc*A zu{N|~#SmW0+w04jc?DvvD5BcIiCF#%Dr} z96IOU3j*q}>gFV>=ij2rXEM1nA7`79QFkJJI8@QQf*Stb_|_M~w?ACT^Xr86KLc<4 z9+3JX@%xV|cKf$j_-~=XZveYjpr@CBcv^6JKC{z6%k7@98yu0&5FwkiDPYO6TIyNPs%& zo5_Pn!3$YK;1IaLf$#wJ$qIUv{^uvs5p5g#1g)S$+PT;O!=lE~XRH{o7>PfF5!XuH z!oP5@@z#io+mm*aou^IFKxu#F{A=#Hn}cS9a)q_oTeNm?yvSX`HET7?RRt`jK*yQ^ zkgibgKlA^ME73pqoNfcoJMlZ}NGLD7Cy}fxD@?YkiHzdvyfvUg3}x%KlFbfX~ag4TukD z_qkiE*S;R(J6Hg|8eg3~BGp1_Yr}btfXO%?%YGo^CjVdfS6;R<>=o1K0rC`=9}W9A zm;A89U;xF%>RyVEQ+BudZm8Rj>vrt_YuvSk_>lYsjZ-6LitdrB`7M7nPxKk*1q%PF z>>doZ_kx$0jvX+T^HF@YKT>ui5=(iAJMerI@14ZjRP+{C8pgn-cRs3V!XD z;_2e^Vk4?{4n&Xt1ucCK8vZHt^V4YjN6_9kg4p?F0Ui%me;9hXFIu@dJl%G%b?tbz zY1x>npv`zS91s2=GJTFfHtddMm;tkQBiMfreg7D;;{@cz6lBMNaD6+&_KoCkCuG1; z}n zfCSiq6$QRd??eKOqCTh&@xX_$0WPSlA~HD{Mz^4iSXcZx))PLQbp*GL>rx+lCpN$# z^a)#=e&G*b>7GnveK>btu>j}5IbvgO&m*jH75XjNHLhNNU5t?Zz<_>vjLHp^$FDe` z`;EEcxE1^Vh=0Wqg>>P6D}KYdI&5nOdUy-aWsILa2>g<(*HrfS>FYG7{#7* zdM9uKen05OASsLxKWd*DDs{)2MuhZg@ZXjBtS%>F(Nw+C7x^Grr--HGi994*x4I_P zN&a6XfWFB#NH}v}#~;tndcJxMz5~+DmPC3dNDW`NU$q76M_|vK0=_k3+kyDO?34Ge zS}kP&soJ&+I^ZBYh12nSCbC!eUU~QWQ$>gLv#lNZahen2`a)Dd@?Y@+*L6A$XbB*x zrQfyJV1Gi4KwEx&C+@U*22XBD&xR{p#&^HMal9$!cWA9f0lsb-FDq`StYlX$bEx-~Tq^ek=3UsK*~o zjQwJ={9h&N*PLAa11cH)e?~C)}h)?C0uEh#auHamLZy$1mPQzk20lQ=Hp0u5?ubE>_N>4O9NMnS^~)L z(^!S-Y zJ?s0}{zIv8JD)25@8X86+`9|tpAYk`sNZi%OKku1S*LSjx@(_D|L%yW*^YGbJCB^& zSLno3kDR}W)b(FRjP2cGRk*gHAnt6u@LRCOFUH!JcYhx7`J>Umldul9p^B#k-uQRq z2`t4LUtZjS?6`sdH}n5~a`}HK)+c_rE%`%@I8M3#EvOYdnrz|QK=nCT2E+NCdc^qG zt^74b0!UtrMqccU^il1=Y2_*C{6qQ0kw}JpkpYK;{|QKqMnnVdBU52tc!0K44X#5( z;F8 zou#Gz$374D{*(U`|8}ZamsI^@hUxA<#}faafPXL&O`KVvJKZw+)enX*6y;t54S@{* z#(n;+M9|&}Z#s-VBj;_K|C_1E|3^paaGr0p)0QLk6Jtu1=hud3+9CCy`~T4yViW#F zavZ(K8JEC+!gM?yXKBO|oJD$FmTs`W0;k3cQMEQn@5&zqsw<~cIeoiy8ngc`%u=e#q7Qb)d!%q z{Ttlh_u#fKcw0c`eFqu1D*g+&egbj)9PS?iYU|bfiay{UbnrdK?4Luc=hG{2OxDkT z3_blP(#dx%EZzInzoQ{2fYh&e*Bt8JzTkTwvVqw(ldvESsp@|~?C=E{$B)%D)c88` zjDBPiLwMdSVvHTh`1dAin2zO`fMwW@`=|1E1o;1oTxA)RfGw&!RyWT4|5K=#j;B|+ zQ~7slo42y-;FQwFObxsdCUC1_8?u16m~nn9Q_s$1AE8;y3Ts=)6<%j%_*u*foPutm zR{lK{flHa1+B;Vd3vfRf;z4}xBUtHH-JI?kH9@O@!TI_-M^0zAPt1VvH+AKEiTZ#( zA!f#ep4eB54%Oi*2O?Xn=!wODm+Uk9@$PBofhN4lZer$Z@pv;{EB=o`{c{wViv22H zM1gsT7nvn*C-jSQQI#+hHb5-JJ%N!5?&8_!R(fm13X z^N(H!r>1yD|9>)ow3k^rlE?wV+s85bH(4;PR9JvGQ;%Bz@4ccu**|Z^Ju-mPh@37W z#+$%>PWn@SKb~A$9iVfBowd^qjL*f}o=FX0PoCi;qj}CmytGrv?868y$OzADzGa4U zv!P&mw9*v|5Y=5P2*!ZM4SEq*M^uB{KV>XYr+Wv@B?E9T(OJZHQ#sn{#Qk$JHsV@h z|2%7SPnf^k+4;IT{%a{6ZqLx?+ZLV6e9(V6+Lx!<$Ez0e{P#s0|4Ff9X>RFiknsze zzX7mie}escuKas>6VQJkvHv~UWREhr`xx@|C2(@LkpEu~{#VfBw>SQ}H*-GLf`MO& zLg*g+@4eNRQ!|`VJ&`WqsYDPns&^od*b!dNxnSqh;r{}B!Xv~8FM;#ls_PI5G{z3p zsVUWbS^Yc+{!2C|@IjvSCf4M~>LMKg>++nQ?HF3s)Ce2_ZK3B42BKM(HJX+SyxRG)<&e#Ya+-rps~LCM;APfxzNr5OV-HM12%!T#2nPZ!_T0R5J`aE7zs|IUOD-U~0h zB^UPynL&kkD$lke;8_~Qss7L}nA2;~lLE?>5G;T^pwCr55c_*ars#9616YaZ$|vtc zRB{M5z`aEGCl;8+r|rmR&f>mhRC^vH_HWH}-=ksvUZK~oA8P;e*wy26c>m4G{Fj6N z+X_$6>ytwXH-irO7ts7{$6WoV*s-f2-hV9m*)y2D`B}Mf^+rU%ZEUQ2lpQhO`JOga-0C?pb^YmB;x_tCt&2wdxAi z>Z)8@rhF`?n*AYrcz1!>TEr|&ck+6p@FTqcSYrRXidChd?6i4%Hr=axc`HqOh-^6`1vCDOOz--Q>7YN+L-aEo};*aDAPl? zC-T^aciEHoJBIwj8KRfKCj1RM@L`r={8+s%zJ3%8fVF}hz`oVRX&hmvntyWC=kjjT zPy#fiFW`;x-7o+rmk(e^fq}#T`SKI=1&oIU_>CDymlFeQ$JB#5ObvdV?!fcu58jt= zt3SI4u3h+yDGBE?Cu}$qf_}(7jRjatEwBxm;Ada~%mK!*LL&dS0vL!1HL$b(l1(u8 zHL@4~dUY|a#W&(}nylTt(bKJ$2=5q~z3U_OjOzcLBJMOjYiltN*m?8zsW~&=d0Xm% z+YyCY$3BF$=rIHy(%oErZj{5^uddt;?` z#}1spZ}3`G4LjP+%$-T*{}1-_9D(NNa(2BaF!OF~VQ)J9u7>w}i3wk86?>qAyNoFx z?eTyw`#FZaJ01hE9f;lMGkfRt>RRN~&A@+&=)5=4_B`_LDO_8hNc#)W z_yT_WcJ#Lwg8Xgp?_Hp1y$hm>N32G?H3izO<71$Dim7 z=u8&y2E9<%6wZbP*q0b!b0(t|3vV$c?O1k6=!+icYra{#0*2-`%6*BwJ&j*{a^?}_ z-mC`1nu<6es$MexvHDXjPdvxP&R{3Fxt?Tv!uG4*Pcx#TOFZ?88w-g4UVK(BR!YLZ zIu+;bIB&xp0XE{@wgvyE<0nS*?g{rITI{5lKadibPuJtQ@ytL@#*TO>E84C2Z2iB}=$!u3g7xb+U<4doRwwSUM){vd0N25}jm|I|XA$_1BZ@fR zV@+ogb}f*ec)!ZI#M$_JrT0qDAA}coui%5o>U(0_oz$uZP#w_N>{~X^vsZW?QTH;Q zwmQBZpNMUm2@|;^Tw$r^B`nfK#3PfjHo5Be z&;s7Tjv{-J-*hS0Eq}|5kaMvBlh{{yeWnG<1db@yr7z$mW`pLYvn)4-H|&L8#@RV;63VVM`L}*g=q;Q`<3-_)u(>G z@asS1vqWH2a%^uNitQ8+~-j0ZKf|%-m*}ulT-wxpNOx8!5 z{vEjfBcj9ih4M5|qfZU&$8Dc4zT&=wv{3&WRf~V;OJ0Eg>y)iy_xf~CK=B`wh{FE| z`>+4^T>U2W|8@T(2H<8`xve<+bgU5pB-|#S9>*FnLRg5f%JDZnn$FC7!zw1bu{nJD z=`fndfMheRVc488nFTNpi2Pqf4+HC>a1qGg3tMmy*A^0w+oRWwU(+aG20!L|hF&qa z*Z2@2|0b^o_Y@yk{7h?b~)&PBVQ~(Ym>sSi@7xTZLy?`iS1rw{ksA`(qntgr# z$`03SQ@7rhojqVF%%b=PID-W{0i zdp^3KmE~G^@dJtduY;W{q2TF)=l_~MyLZt4e?dO*BQv?~CpI_^d@Tl%yTb16fCt~G z`b%*CPWjzzCeKw=5tp)m&wgYSr(gw6VRx|Qa0}PtjXxzL_^td6w%|$j|9g z2KBY8tE#_-d-$UKJys%zeW*tk(Gkm_Z5T>4ur0P=A998>nGX0#_4??FdSC?K1fAYnv@vnU{KCu$sn`pVGiQxYf{@0#c%dn=eros8F&RDTm zw;zg|gkm?Qw<{vFfT0)*{LA|V z{(Y@G6pkm#5dTLK1&IGYVF3;&1G$`1{T;}{-$*z505&O>pU&+Jv0sqxCZ^72z zk59cCj_=RJ*2~DR_X3MM5Va4?_`Qv)f23+~7qf!?Mz(zl*k4FQF^z8gJ@C78>B*f7 zx40kopUX2IBFlJ)sQe$#Ji%NNiY^cxdGj$kL@R_q@3HaiHqchH5z05c1t3hmfC@Lh6%<55u# zW;)34>>2b|rh{xtPr#2=_u>6!WAUv3%D`&}%mmbkTK5mloAzF0r&@mKdHv1p_OV`I z)~^yU;XmaF5iO*dqR|21?jP2mW%~60F<;wHmT#9=--v6f@~&i64(Avu7!Pbm#2c2W z@>skVl^cC1p zd0ln(F#|vja16IqS-S`0miYa}Johks@M0{%B5peo%*@B%)8E!h+N00+Rv&Ek)|Goh z2c;)40x(-xlkry*>OXglFqa$v{`cUM68?_>`Ny;V&Zi#z0~0=X&z(Vj`eUvolk8?Q z=i`q2C;2*5{il=9UdHa&&%*nEPu;IKQ@+k9zFus_l&?Rt!*)HYemkO&xfs>YD=>d! znX`E_ng8$A&GD`MVbn@BE5ZKd@bOE@3-%-u-=3X*Cg58K;+dP{r}Nc6z#87czI`j; z5EhhYFg;`(^SFkwJLoXxakw||HfV6h!@ojvQ5Ids4VEX4wR$WfNzBATNPn1nXrL~0Xf zWENmk?)?U?;COO}-n`=H@|#$It2w&8(Kw7C3Mexx@FDVm-C+XXDqdQgOK0E)#cvC* z!jawy4{&<6W57^YfZyqxyn=lacVyRurtBN|RPJIF!DHDgjnECJ>Y@=sP9-OQwbpFEBmiUh;<CR(FPT?@wn)I&aVU zn!)~wswS-3130p)$p77gBO?6d1uJ#0=rK(g3jD7bTPKg15Rz_-7Ja{Y$W*e7d$2Xr zSgFDP#k6m`4qId4+^yXDzY&0+r|%1mlJUR0X8pT0fV0_|=^E6AvT|X^*0g330ca88 z(PX>Cb_MknoF^L>Du{?4;+yEkuep#JAg96WIqgsUhyNd!;eQLx+i0#m8P_gwaYulB z^ME7C0GtywjK^hjRDbv_g%2=?mo-RgF(-K?9aP{yxN5!`wwBt&+*K%Sjm*1PE5Etfa$(B5&OT2_pd6p z#Lq1){;l|9aUiOndrLo;I)K&v!0qj5{(dQUWX9h`sOVQ!HwFCzxpcz+zl`5M8N|&6 z_e1f*UGT=%^qPXkU(gDzB$B_0_c#!aZ6cWOPVarwa&vm`nzK9jM*P1iQASH{ZBiaW zR4|Xuyn~4cb|ya9g(=>DB3rlw|9oL)KNgdV96=Yt)!2jw$QNGb6Wlv^6}I3_F77H^ z59@OfS;+k`0iU8xZi1G0E{cRJ=`TEyOkf1LL77Qmm!bt61K&`K_~awvi<`^mFd^h1 zrkb`Z=gRLe-+WnV6uXE%!{o!=u#IaoALJ!srQ4W}u$*0krlJODKpo(L{6+c0*e#$R zT|u8RPwA}OoLn#Zf*&Q$-iu$|?(i*GD>7fs;ZhH*mOG;V$o_--5B5K*fKl%W#bDq+ zWeW1m4AKo%q zg+Pvf!=H+R$Or=Wz9Mc1l6*JOrS`c$2)Ga?^nBuS>k)P$bYiW_g>>au&1=>F1p{g) zo7Tr3rBDF<`}iMDO#WciEm=lm#vYu+f6v|5v`}%Bf&X;wac;>9R4ifoF5>Yad~fcZ zv?t$cOaRdH$7K}1uJ|`o@5@;)1dnFo%lLNy-^K(USNkLD7rBF#(6onC;6K!2op}ds zy|&$W&kP{60kQ_+_oHI!uCeYzG7) zx&FG~eh|#sFm!$8nir_4F9!X)lIM4UqpJnO|1%lEhi3{heg<) zh-3lxoI@;dJ!-_~!Tfvty$c@iM)HRT=uWCd^Tw$%(9t3y2q0|GWAFDWY7Dmtum7w-*y@de68O_x^YM8(jwnI1r3n4*t(T zBV#>6<#Fsz)(6y^^OxTL0dfbLhsgSbIMj zu5dY4U_M!pQ;)3WYNfZ}Rcdr&2M^z0i|LeR>$heAEx~?7cERn0I#915{`LI+Voq7y zf@7Hk{#5`R&c8#6I!=dyeuAohePYpN^s4`!>p;)SBD&X{^3xFhTITNp^uA9OUN3x7 z_`T4Yu9uUGPZo>pm$yH@@0U_H&~_aA>%GLJAE$fIr{4YmJYRjh|5#8o4y8?@<|$(T zebDf20VlscEZsL`=MRC!D~Z(Q`DPJA48Z5tqSN*>@cu5d!=Hs^e*kU4^`-0RE&3b( zUsO6DzVThU3^!p9zy9crI?vt zu}_I7ZYSs1sobaBsQd%RZp3 z@d>6_{DIc`e z_;-qRM84v`ZdILsD+A~W$96NBhP!iFVF|3JIHeM!#95>>OK0kFd(8eC$p-o@dT!c6 z?Lj(M`>S{6j4tI@odDX0^Sjz>BmS-bZ_YE-a`%p%b5Wf@2K zK-I@pYoSQnjrrbhsHks8tv_G$BpBNje_MxH+t1*A?*@P8 z6Ql2sx84K1wk@xXFa3ahxb7+4!tC&?OP7MG(@Mvd7E@=NS6Wy)kbkq;nd4Y2z}xI3 zTBqEYO9OmxQ!;~I>@c(ic3>#T??DXFj4EA2tVA!OgPr+|1IZQ+fJc-|JctdNR;Mrji+>f%>Q_{>w&y;Ny(25!$hRS} z%7*_Y1K1G@`xn;x8Pr>x!RsZVKaMc)9FJ7a$j^&gam?`@Xaf@dE76e8^u79K)zd%o z{Y~c#!~a|R3;nOmhVj4nABLqk5YI0Ye;7>gHvA5DZClkH$SYI@PUBaYkTFEDGtUq# zz(6ddyCEb^NO%I#A9dj92$e60s**cKkKya9`%ye; zd+O{5vbV-%WYnMI{Rg0_nTghCXPC9$x$iilxBc)^?^4H7hf+7D@b=^Spwdn}=O#Y;Q<#U}h(CTS71_CG z1MuD$exN0&uU)Ptiujmp;q%h3*ojSG6MEyT`|wHq$r*OX2JFM9p9DYfFgblS{Ql-> z11`pH{ZieUh-FWhfSL3q^r0X46OR2FvX>KxUq+GNtPfZD7545HqKN&m0Gq=}e88p<&nbQnGbR<^AfgWYEoVLf}chUa3pG=&GQYJ4RRA*mZNix zm@vq%~5uL-bmrSL5Wad3FCy{5RnHnFgQv1hLkxV8^3M z7ZDy7AkNeCN|q|DT-dJ4ea1JT_Y1s-1xS`rweAEE{b#L|06+f_YAkK z_$9WWMzDXz$Q?muZdbS(Ec^ER^31LH{wHv87OK0U$_{za|GP5m)=s+xx)YeIz!=c% zU(QsOp-M`39vj8GZI6$c%jX?NtZ@Q+JDK^nVg=5p?)OHnA+i55di`F{7ntrn8T22= zeBaygV{fsq-*1J6?1s0bcz>}3Dwk0ET2<;!7JdX#{3qomaAbSI`=5ix_I393+6>=6 zn|j*50x8>3XPQ6j7 z79RDB;z#rt{iC?5_#0~DbxWI;CNPilJU;(9a)dWClz+t@gI~iCP*N{{LsaqtyyP`R z5LcG&;QA-%lYT{^SRlq|#wTt`kMa&=2Fu9eZ$drr8ft-t)FG`1zE)kp>rW(ZnZb46f~V;-I0*~Z9%a$G>=y6|EWnlU4f~S?3@bM&f6noog3an$`UW-7fvAD% z6~BT9d^FoVcmX`oU4_49k%ThR=|way~EdNDtSx?52cVEQvOfmo7wB{ohInsKgI+y2=<0KeWD+) zjy-}q68E2nD*p)9tw;`}R8SH=KK!STdkH*@q`=SS61gLahBeh$Di4YcW z_DAqNEQI~rlE?fF-8V4$21aDrpqSVDTOqPi8#=MBSsW4Bp0!|WhHWz&pytoLBAxUS z=pO_Ax5L8hO~iFD*6AEn7oSu$r0PF2w<7ltQ~rA8=TW74G5=G(IW_;i;I1x&_kXnT z8asQfDr|tpeGjT!pA|ddpDzbxjll1M@_E$W3(U%xidN=Wy#HhL) z{a;6XtuD7k^#`D?WBH$@8Y2E~#O)iFzh}?AbMg7Z>8Z^zS>qili*LX$zFd5k{ljl7 zUJKiJB^uk?ihswqK2m%e`_rABdXHw8ft$hkqu7DxhzFi7Jx@jcdGd!VN++R9+7WBA zeQ94Nl3ooqA4aFJ5=&6P0(2n`7zBHG7|g>}@cH+^T>i7%4<*utXcAwiSFi)MfGw$9 zG|l!C{hYkuXEaOKW5b40Ic!tih#24vSWDFhi-}?e!dJe^(Hu|A(xUWU@d`R4`@sW# zMo-X_R8FtpyPVC$bk#uL!L3|PSLGB`7T?3UoI$r`_uTJQ&*E>F!v;;se1t4Ouz)>? z2Rnf2=>CcfK&0r=Q~V$G9;d%sB@3S*KOPF%;Q!?Tv;`te4NWjd@@;|t{;U=`L34sm zti+2rp2JzOuIKQA2_b>%O2%vkoZ{hxrO1*aM)q}Hd@Nxu`PFg6823~EKLl@Py>erY zp*z^O0@4-RB&%f~RKmYXc=7L!d9oYzGXC%XjemO_$Dqo80j}XNA}o(1&>dW0C1Ocu z5Jw!gK#NCjUPv6TwZHKFVS!`-!~X~SAMwBbKQbkEbdgOOnc1E#`7Aqq z_a)<4j&*vbs=)3ZJ5l$$G50Qd|H-gZ51{wmu+WPh*29TguSd`RJiPyR?CjT>8Q(`0 zA1-cy>h)BZx!+1%@&3!GvVX+Bew)LjAIyF_e*-7$qN#I7&qetE?eP9@5EpF8B#_?3 z*&miqAWz?jSiL#_s_CY^i;R9-cHI4qZn|5GSFv;OdCU|!tGEI#ZFzAqdv7h^av+MM zrF{N!s%&=<4>Y0!cOm@1#rXNZ!VLZelwS=Ke;(aPGpWaQU{+_Tv=%mHSZNmbt-vbW z%7l`SO23!ZCEsXC6>&GzJm(UT|o=5bK^LdM(7NmfWx?yEMPIwL|b^k=Qx(7eD->!=ZmKow`W3Nj=tcPSkRl{ zP>(7(MW@)B&31zJLWd9~`LviVVOR9eV%R8zg3f%k)JL zu-@D1m^Gi!e5Wq?m=Wr;BK{Bj*UP+RgAD(A82xAPZT6SxPefG{tV9DoaVG2I2G-@M z|H6MlNLuM)-s=_q%Uj+S2T>tRF>+uh@L%!&qG|#?@Q)Dz9KiK8@gM%*iii2X_zz86 zbi$|$)&knS`0p_QG9QD9d7ozb%CTTDWgz0(e;&6-AJ@~l#(iP;!g8%?57N2Dv(o$c zF7B`}3#Q>xzQKun?ohtR=mFR&>jfUh=h(y8hL~#`BJ#yl{_wa_si#LABAz`DOv;N1Jmy$8%E)Bf<=g8$jDj0f|r-wyNF zjLd&Y?$31l{hsTM;_ur0Tlux9`A^JvziY|-pU!yy-wKV<{2frdhG@Juv#@U~eN}2k z?QI^+`txXUTaX#M!^hS1)zlC_Z%GEdh$()%!vWT+c?8SgPJ11x`aMgnU>Yo4?{X_t zv>y_mAIbEPTI{uZ6Lp0{!TEf2G<(rqG_$xfdu~l)!p0ardn~Gh$1{a z21Z=#B0S+curAJhUgfcfhZAxFHKI%Or;Gd5Zcm=^4D82T-ZNNib#YORuo`Lp?^K)M z|BU}ds5_TO4Ady||Nk!yU`#pcNlgAA7GMRKQ(fgd#U)Vh^)>JHjMI5}Ej=37(>VqD zQ)J`4zNQa$`~;K@M-g+o!^Vi!(Z3PEIDT8FFPOLW#LMpq9+!gugJCAd@|zF9UW{iI zY|a1bG-UFl`e8nAXSC}gj?9@4azm~PXe1HGSS&#D|KfiRk;#!+zfTq2 zesh>jc|ZL=4Vm+G-0CS`Bk1)zftvqaWd17)?-#x)l&EUYVsF2fi}gU*dBoXk!Kv*) zE$yE2*X0K6p0yKwwtr@4%{)2tcsgnqQAL}NqOL>DPh`$Z;Rd^tIe$v!{5a4uBb%l1 zL+Ng!_#vf#64jp%s`n^PFHQyXlR^Ci@IIzEguS=>&~4D2OK+|ZLSZ+QIAlNKgGY-$ zv(IQ>y6{Hx9^FgrOPiFMm+BBld|Z46ebOa7=WHVJyO~e+4c4L+6}s)P0)L{4cqiFQ z0ZmbVssmHmq4aQe|9pVDUTtc8Q>ph~idykr=78J?-tT6XP;EMvHiirM30=dzaDn?* zZv~h6J({H(hyYH3(VR$DQ@i{Xxy;$6T}rJ>U%&z!QXF2aU;F_c@F^_m4RlZ(#dM&N z>=^hh-}FW7q3&FOpK=c~8*FECfa=^UFjR+S5kO>pX8&f{(GRR&ZwW@z1b{%loR5f( zN^fWdVoF%b{f+w*`i+Cl6V}APb7IA_yHEyFdVv3{umA_MQpI)nHgO-T&ih1u*nvPm z<-U{!ixW{3xQf3|IXB`FNODeg6#EerhMxC$I$QhaIpZ=mQwZqhJL@HFlZN(IoCqXH;qo7 zOYxQ8prM&a58WZm@m&i4HwetUPW@~NQ#)E$e+OQ!11*QZz>g}|FTY7tK9p&?H_<;k z8{a+-Kd-MJ32ufKw*c=wnXlK5szX~Y?U=UNjUJm`)F8Ji?pZv6I^-+xf@OB*`K9lsdtl2okvzRox18eh4-1Jel|J4ko@}j zx2XdhL+52@_6T^4sBs@`|0vdhH6HOI{*zZ1|Dpa(^FRE}qcBZ#?{;@@5t@vrth^8cv+TLJvP@gH14 zTd;U-)ypt|bMTFEY#yzc4qR)a;#|Vw#qG-Z#baR$(sTXaGxz=C8}a|1;BFDI%}LaB z-1TDws5cgu|Mzx3&P29uGwzuIBWXY0L3n59gpK9*pTfV9dGX+o0Abzb=W?D zw4-;-3NsS4XTa!x0JeK8a)^l_KhQs(>e4QF|09S?9%FZ(-nrRyqd$>N_#cNl{qOAU z)0)`-5VF-<$XcJL+wTK%|Fyx~OgOmDitWg)FGKUUHXPbynE%^Q);G<%{mz9sd!@RX zs^6|m;9SB4{=?{`?Z8~0yNQ_hp%Z`o>bL0*x`9br2gCe#hmF4n4Z&~B(3)SI0$)Cu zeMAQ0;Ro@zKkQkrVpovgve=wU3ob3Gs<(%Q=t?ZmpL}2s>TDMlZy^qN0$%Vs`VlWC zia5P^Jl13}jKQ8{3Om!MIGguB1Z!{#XK){}z)$1@Tfz^Xi?Zk$s)QwK5t~yJn2w5g z1sw$Mpm-zDrmF|9WNv zK*u$3@_zxDZOA*E{@;%Kty#JEZ&U<~Z-N1J5`ca$m@1S)N>~nj|IspdEAH{E!ah`<5sxL@d&}!Sa}<2uxv=c}Wj7_Bs4SozqkZ@^ZKKvv_Rsu3 z;)Fqbj`Mv(cO>t)Ri^*Z``=jg4&HwfUgu_J{MN}2%J0MOKCkB2N2fBUa4J)59-`Z4 zB~^ble=7c+@n4&Mzhjt!|8uDg@wwALv-duWt@UD3KwxGUg zu?d%^T$*vK4fl2-3h0Hc7|ULK3tr4t61rkU1F3Wjv9^RCKvB zdG^t;ihm&zScQUNi_*^U2IrOT!v^H>+%3@xZ9^PzHaY$MsC?JKW*q_kKY;tM2ctQP znm|`70yQ-sQ71f+Jq>%q0epz|;d->oOR*liQV;2Y65$hAjpMNZjo<-K!?rcga)4*~ zPH&?U@TbDAOa^g2;7Y13^Uwm-#{#TmpS1(11g@2P0_EszthO_t2k?8F0qFmo`Ve_u zL;(8##QmA?x$dG;U~SCEICOte_m5nlK8P3pvPRAbRTtQdchz5X;}d*cBT&~5|9>{e zu{-N5R=tQ7$s(k(=HpiA-(uCrqv<*6wSh1H`aTg~i~oU~=?!?~tLXx2%@M2qxBJ(O zxi@QBYt)=atY@ohN%K%6|M&Pq0W4?nzjpz-tFX^(jORQJ{6EXwy)F6lbS|P=T!+sO z8<6ht|20vaUgQ1A7Nq;)dr7y3QE595wZRflH#|eW(|w0$c0m00%q+EYxhG?158-*C z{vXe8zYVC}f@f&;jP4@u@*6h(*OtfuxL=DAfWNxWj6FYs`*(uESl&hSt2>l+*b=KU zo813GnC4Ygy_iUU2@|P)%XOqL?Ie2CSLHWFtGpXU3T|d3vatOUi!0Q zSE^~3P;;+E4Sgy;?`-h=4SRb}N89%R-Sq!t!f$`P{@%>g+LO9}e{}y(!kO>KY@R07 zpTU>kL1*t_^zdzrw*M)3|K_D@z(+3--Ia^cefR8or!4Mo4dxpc8?xJ8Jl0`Ft7C|eLkY|e8A5KnADJ~4{yVj|Dq2@A2Dvw0X* z!8)ZbpmZ_kbWiCe7|pflF&bT-O_%>!sD(elvhBgqKg_)0B3;7W=n`(iB!lXjFW>|( zWzN_{IDjh7>vdE_*OX5~2e~V+?}Uc=V`6~iR5Wv?2e3IKinY)Jyg>(rJppIKt!~2( zij80a?m`VXg^r5`%m#ainX5bGTEYTeNrq+w;H0=T5l9BWo-lcyiuVuyZ^UQ+Nzw_( zjfK|72tU;TQv9#}UxqMpVyAz|uZ!4rT$fRA#_Bu(Pk9FTAISZI471I!0zNkouFVN1 zFg`zgU*I62;g2|}WB|U`AZk&!g8$2zHe@%lTI9}TuI@L~P={!BoZ>cy1}miSH!t_itSD z7w{b;J{m*~^-^YHxKV>t1>oJ?| z5O($cke&U8z)u~IV(k%P|5srCKPdcMXb#_YGBNhrc>iTE|DTo`FzaVms$OTJg8!0k z|6Qt22N6F|_iKjce;c$jyV6TP3eM~+IJDEj{|KW0*Fpc4pk!Zk{T;=_9SYM4IG|bMu4(mAbm)d zNA$yzXj8N%-MOw^=>?OhH5f$=VINR=1uWsOWHgh>1EQm-e3-aGM+?ab1I)@)-UTfi1U&IF#hkw zx2|5RCy&ga_O}>p&L9?WR`^ivb(a$>yQ;OEBBb80cgFwg|A(_SLI)K7KjuS6xeId7=c@9Z^3(Gx@{i?nbgAut_rHKV^;vxX zYjA&G7Rq?qeTz2~zbtm3x^^)&?%zvoS>toE+WGBF`{+hL|G7l}cF=aJ8I1042IwD; zC8()+o=IEBqx~61hyU~V$TR8F-GvxASALOt{2bW&>&fE>f{)Hzi~+=dd$8Xc^fv|f z8*tf>$y)WeG{7FT!8&xt252$5g6aNXdh^WF_vcn*5IuNY8`7S?9eG{{tVwHL8609y zEW}oD14p1NdWSB?A)MDq)CHYi-Uv2uOOEg$uzWAJts$DFJy8DM$((>3=d%{Og|7<- z_yHY*7qYL(-pnx=h4!H%6Gq-ZNpuEL(Hzu;UC}f?P7W}>)P%_Z=VNhN7k{CW@*Fe5 z|H>`_i^%~-6k4DLygz>iIl$6@)+ zkrDsGyCol2!GdUywV%+RA_VV`=S4&y>H=Hc!NYu1XwShljODo0u*dF%;=em*;xPvP z_5OM{b6fTCBHA<4`$uh~-v5bznS>^s_pZbnAHx6~0LH|3oL598o>d&3_s22D--@LO z+(-Nq=j-)!sYE`T@$QpQ*I2npY|I&V;+<4yr`_TPa^%q=7D}MlH6|EBd4NtFjr%9a_HUcn6E(ytk5w9+OjqYS zRSnpc{)pUdxvz3f^JDS;*XKXTH)dANT=uZ}3(VguM62(h`ul}BzvIZRUqJOUmP-8{ zbl*0C`QMeQ`MGd;k1#eo`b+}$HivZdX16UK- zG^+^o#H;ru66lMM@04L)yr-Ih&uItpTM#)k%NT^#-0p(SkUu=J_z)35H&nZ)5ZAl` zuTdZ0JpwL&0o=yD%pa{q)nYj8M$W7&8D{uSSM7|G<7F0?_+A z?MM8p{tX-9#9iYDr|Lvb(1w+B7Wh9GR!+MUt6v`&UOrU;D>eQ=Me>r~@-<-r5+>4p z$-nyeV9xR`>i?&L3awW7f9u~v_^gdNUO7QI&P_nST@J2q<7WMT%KxRrP@Rzk~_@wekb#_&F#4ME>`Dm%@%{)Gnmg z_i4QU+wAQ99sB$BEzZGDevRgL54f@yO4ZcNccWf@K1}&@^uet|CHy?%;|8FAGI~Gj zelt=1w1y{tiizHb5Oj?&0q2rF#+F!d658<^UZt{ILY{)%Li3^MkytK-&Y;>>R@4>6X%eT#Zy;Z|DSc$egQ}oLr zHszXigictDt%%DnLD5i$YQRw_2w$LsU>&*<29N>Fho$^G^Td9|0(79K`5HkUDN;{q7=FVJ-`v@hPo32e9WBC8>w*ain7^Cpglny(E?nHVxbRu;4iSO z4`xb$W$3HN6*?ByEqp*7!1=(NF&XRua7oC(608qQ-e1js z=>E+RU5m1MX=lv9w%$Bqf8*o8zwy4$vwKDh5%?F`o2cSc8c9)4C5Vh=Ix_-XjpDKTUqu{`Ldu$bE_&c_^Q4uHT09RI@&qb=++A5l8+X z_>bLeV*a-ZNcS&KXZf%3--GjtT8FXDU~J7>Ou9ZD?;JZWh+MzDh-tI|9(l$8doA4? zkHwh<;=LZ{9M&Mc)@P0e(`TVJ+6PJpFc2lIaoTD2GOQ}596lLIM}@cvKY{l`)FzZLJ_8t=Fi-TU3l z+FJ$syP$}D5WmcFnN-TxV&dP8=ze!c`PYTH8PCxtun^{d3M_k}{8Z^2 zbVLnGPf(}doo>0oWEsZ&qO}!RZ4A=ugLl2Yf7jzu8yirM3_t`o&uRiKz`J~4Fo)fE zy*8mW@6meo-&Wj?SR(LmC80TwZOW$&fGs=}z45!uG20nM^WW(u`jrfz7rPkDbqNDlBmGXdNuw48ehPHYh@ z)o^}GGe0#i)_C-Tfdsvw7w1Sh0o+QkbFrf@R@{f~uP)WGxELqP?#ZWz{}22-amUpw z-!7UuQinPZ{m&BCP~bqsy3YUT@xvm76-fRs{9zy@P*lNvx)%1p=L{w4y$}4KzypbXqw@_F}BL=)?>E5trjrme~S=b6*jIeXZNoxKzCjle5hyJlRW#ms`t)3qkT7=ze}d_t%Y8e=TuwJ33|iVgaVp^Ro~J zuqC^2{T)o~#?*{9c=x${D7jjN-qXq0v zezQIM2KHl5^2Y2XltUAAFIu5l>_t!yjpH5UIa8TSQeA$7-h>5o1^<9f;XtfhZT1LR z3A=hLUDfUtxEDP^Z3;i;A0`IdhghtTf1F*Hr{>x*8T0}A0cY|n+5@O2JnFo`gNF@> z96)uf^ZdH=>xUBDC|>N_8|S}NA&=XQd6rC~{??k99YDqp?))wO8}Uxg{=AGT#F*9i z55&5@MSH?XRK`R>1^tofr`v1Vfpk6gGxb(aR`p_XooCj-f9nkYu4?hGH46M|`^~cjQ@W{_G91#uJlWqnhsw zF)fJRUM4UmL|Xro7w~=L5@X_r+GDef31DCTFFJ@PvzCs<`~QQzeWx*j{_$*guUYxi z*q`QGa{nRJ{a3(E-493gYL@#~fs^TQSML;CqtiJLtxOdidwY->--ciOmY$z(%=1|`;Vnt&Yid?aou@8&oTvQ7R*>YCR0L|nZgJcx}A~~4D&e(#$e`&g0p>7U=n0gKwb29hz<*Dq61W&f?`~?GZRieOK!3x< z%mVm^DrXmJn}e`;o#<|A%|63bHJ@cWmd@skYgNCB-B?5x(Xm`reh#}bqtuN4hI6P; zb}HtJAMg#|kDa})a4}thdomrcE;+#MsIPZmKKM6G2Vaugiv2;}!2=(N1-H_Zb_b4b z5A*)W{$p5jvc)+jJ4 zPAjO0I62n0>%Fq(!#2e2KvcTNTj@O_o`}Eh{dWZYI8QT&atO93)W6aF-;dR76+`?x zu`ta)kO8#TEjuRujsFw>_pklGU5)N@9`R5sysQl1!+f`@@Z;j~tm(tO?lG@*ncAVg!_+9=X@`$dW9+9 zqjQJmZpnR_+Z65DQTgl8{H{~zPPhMItjD|Hr(P!de-H1!9@VrXi%%6BQXxAL%zj^L z&Wx@jVYyeb7gudM;kShQdJr^Brry67oc}l?yZmI z1kI{~R0W9U4p{`yC5sR82?Gi+Jbij-XXUS89RoB?`D0J@5`x0@o_MLk0G*{3x_QZ{#j# zCO|(XgFZ-JJd0n?wPLhrh93-|k#NKSD!#&d%ZbUM>;02I6d92Pc#lf?y5LFttE~%u z(D{0H_!$3d6IB1q!)slLa!n>GVLw)NtbFf{l^^~-m;o_Rd6qZ`Wl*{=5EPNM`v2ZU zH^-nveFByI;OxlNCWwD`Llyr~;S&ogAG{b3%Y&F7%jm_qYT4vB{+0jl&9`Q+b3_2m z`OHgT0AGNcAIo=|ERpBsnZ~hJtXR4?&>gr=u|m8izK1wd9|=q6GY1fJAIGPu0Un1f z)q~pyG!AqQKP{5sbpsD4_qWA$F_?q%KorL6AvS)qu3 z+>_Y9D&zfcW#(QjGUHjq{?Cy2H(=J+7(C)tsD3)p<#!}m|6=|h$zDI}6Z<~`^EZ#G zUqhyPzl}ofuW*065?8B^y%%N7*itphm=pMfNmTFq;=x6~75`@7dp&08t_}J{yZB!Z z^skd$)+H*a$1{xO)de*H|Lw6IsmiCXS1Ifz{%@YyiiTj{*U27=|2A0^&=J;fSaC-p z^V8`X_?8OiE_4*%%Z$-)O9dGGULbf5Gd^x(N0CNkGSjI99L=sKFIRtCy#e?i592Y3 z38&rZ4XRgD#OmEd7t~ZN<0{kx7h~~;(P{iXvkMonTj)oqj^@ES)GB_1g?*mxiigoz zo(}6W0T!Sp(*n$4DoDx!n&sZja&Y&98JZy?@GtH~ec}RQcU)&;oBP`pqxaYMhx$LU zW042c0||DC$@PavY@Fd=jbY5xX_n#t0@(k(@HZ9w2R6JNdiP4CFDqdEAfa7r;3cU6 zye+Oom6#E8f&Z=PLw|%!=P*{SY@U1liGOq2O*72OPpSZPFKbbe@E`NdBGU=~|F1QG zVnel{&x~kd5ZT6SC}7S89Toh?wLo)*&-b;7gg(Sy zz$yP~4AlCH|Iq(VMPGC&Hm_E0RPHEdPp``L$nTXupDwhoVE+0PX5fdM^7#z0|64Hs ztJvXd3R>B>!Nh#(ST9o>Z;HPCkZjgZedhRW&9sb5(ZS@<#qEmPe?`qH+0=Z!{|E44 z$HIvBWIvwInX-8geBr@#*|aMEj>_gzynnmW2k7=mR*-xW0X zYGP9MpJHN}e|@|)a;Ie4CsQ9J$fC)Kg(4u~-~7RRx*02IA$6;>vkX}jL?oQ>u;yC# zF(ZLc0g3N)J#4|6cECqdB%lQ_4wwKo9;W+$0q>$d$9lKZ|C~82L#h84|8};CezTp3 z{{#Q(13U{YSumdeJpzz1@64-10jOT6J3QDEL;%+imCK!{93cMpTvJXEwk{B@O-N_w zSyj#^zM+JBzma&%m})eU)ag_l_5qLX|6>*2{+_Y?qN=;q?#S4ycrrh5&m*ULYvI*A zsnizzb_CkRV^^4y5h4b#2UzAuTWSU%{;mBP{hR&E{)zvIaEr^y{lBj2kefw~`K@f$ z$8q_4*w=e~qR*|fZvX4hrpWxihvv5yk@4Zh2T;gv!`|LcGKae^x&KtEVownZ_hDbm zC3O3~L_Mq_(>-^nIk4tn zgPj5*KmDI7fA$fG|H%K_@a*=yt}B(mQDgyop$NQ+e!_K`7qSp0;4ZqHenAh|jXeHH zri8s;ULTcDZ=!&mPy{|v{VOw$dZKZh0^2!+2%rmDKn>GEoD#Mh_HhH$0N23+j3tiv zf_~$ryl=jAHyPEI9Q6+{EU#c~A3_g&4z_nD5!gnBw~5CV(u+~fKgm>}9dj*mA5w)o zl65*7tM4R`nD1kqR|T)@L|<d@8`O}&g7lCYdD@>P!{jdb-abJ@xNpCFM=~a(c z-3C6oX85<)PyKH{Zio8Ed?Y5@Mf9)MLH^%Pg`{qd2q*HK|A~M15lC#O_GA;P8+XD0 z-bH>R-V)mVKRmw{ApRu=Al<6ix;VS|`^R(hmj67{Vbt7C!;&71Cl>!k0Zsx62EZuC zU#=@QYB0~WMZ% zK5X_@c>kNx#I>awb`&!*Udhnk4&HAHnjdFixvHtbN4qW&*Xigc2Y!05f`P zfL-wBt$B~A^2-p0-Y3=nykEXh^s5~*3W&&|8^}s9cBMD?9+Zx?VKdvKcQ_n&<1JW#4Tu4zQth0A9T*80(1K}U&tn%CGwq-QI|V#Q zXYh2sxjZc3#Y{A9hu-08a)AEDYI=g-q{HHIb_%-|-t`c63F*X6q4(uagq3N@WYF7S z0f$isd>RIMFKoX$kJt&=6(a+d6meGnts~p@r!LqGAh>^XV*P*e{$>Qm|H1!>|L6zm zn5}!ef8^lW;4@BTGVBH5-!8Sdq?lOW7Whw=A+7#+Uh;k3O01aoMbw`xhL1+~{{^uB zx5AUV_jmOAbODpjz_WwVqjx5le1|!J(Z8&iieAxg%%B}e8mIr+17I%EEwgqJ|EqtV zz~syKuschLr;VN0oCV~Og|&+~K+72Scum{o`Fn})!5qi?yu@qc%)0;A;jD^ZD)S?~(ns?&+-3#~z;TuvdGaTbzmwaDI5i2{OXgg!Bk@ z8+#5OXKz-@FrH-x@f7TalgD>q3dv1XpI5bE%J;?W?%6OuDSrYpsD912L-V&w;UKcm zn^}u5vnD?*{8-qKocu`C@eP@ucM9`zens&+5)5BPSKNBkxb}tzf00SK8xZwc_n%DN zZyJ7Z6tO@{xc?W~|7Sn4|N7PMQ}??Rwa^q$P%6JhHSBN{asQ+ne;GYHqha9tWOX|$ z_Tpb}FX|htM!(l&`;6kX0UNHa3e@HPunbMG9G$Z2pX`6A{KR?W0M-J{D^fOK^sgpR zok7F_?XW)Gi9*I;jdm|CV)odhbO^UE?Ep)0Gn(L^nRDd1pHHXn7i0k&F#&L2dKzv< z@%$a!$KEx^FzaL{n#XO)1M1d%N+s|d&VCD~guYI{!$Kwl)u$WaHqLw`tjAMu4b%Ai zDs~8XnSKC!0xx6E>TEhM*DJinbm0A{1FoHa4Sm+kT$|j-=`ZBb5H?Y1tX2)u#-#No%dyXXG z-+PU8{Hy;r3v#}J-OFkKj9Mc4|DOz?75APQ{zLEV-ezimUZoO#GT0FRX}(?{Je`>q zDp|caA0J8fAkH#ufY&4M2}>6dj@RAYbQ#uW1!w3)S1o{jct!wvd;Nb@?fZcC*we$T zUq)a!D4qa=IGZ}m0YpeMz`w6Eb})BP_h-jPbo<*GWERky^Hu3D{v-O|j_m4uzUAuN z7HEF&!TWd5?@QJHT{8cHOrzMJ)%R!i_jwWYe^B@W=C2cx`Q^p$iUX+9UroPXHGS<< ziQykFm+))jSL=OiQ~Pd#8g2v}*hH*A7qIV?tk0N_v4Y;10VrZ$hA%jcI$D2tuuqAC zPh@&`%hKyq6&KJ|r1$T++H;4dM~nxq_3kOh4?Kq+unrc$s({f!Q~>M=wAZIYW7?Wr>o&6)PL=%e4J5pYR#d{3!lZe(1Cr;pFY2}F6M%q!K~#i3oQ#@qXu3M2hcYEBP`9*+~&*$ zy^reH?);*m7}erOzqc{GIimcq_>b;jIe;|z!(2YHfryZulvfwjs{k}3HorC+a8C{S z!>Ar~#%EnZws<-o$E-4NANa3$!a(yM(O6HLp~%~M-9aehucrEUB^IY$ zhGspzGcMd8Q^wAG-Kap`uY!MbX7~Tlx>*AZC2+7Ae~kazlSvpkxz~yB=A|+3e;D5X z4bE~Jn2WgIqYShM{{0&^ERH&^CrcJ*AGi-|7qt$ff%N*Y1>^Xv%c-Tz1^dSM@_hE> zx(|q)jtCau^{o;Q|UZ-*})B`aa##dYQH%|x_z^PxOc;+^s z-w9$9=;2rf^Z!*O8vm zSg}4n@HDDd-*R^Iib-yjRwib%tpV&$7Nor(A zzz}q0f3HXI{)h7FW|;I!JupyShen2Do4w(Wd<^@!g{(*jZMe#4cknr9nyJe-o`-}-XV*v(p-V^B$K9CsT z1^R*}Q@8sos^EW?Hf37TZm2?{lLHRfcUqv=cJE7M^e6semTGf zU?CKMF#%A;t(irz{~KXXW{@r3z^d7X6&aWgB)j?(0>Zn8bqH*@-Xk^+-al}WEJpZ! zeQIQ@T7c7DMpUX;Zli@$|e?P_QUu5_R|DId;f6q55fPI#B>|b{Qwgq8U%-drv zq665Rp%eMWov46s#J9Q^S71HPERHkIG}(YShp-20o=;)}*0cbABNYoE127NtUxLoj zJ)Vbx`{>Dc#;cYo&F_i{E=B_#L9+ba1YWTf49V^&gZJg{cD&Z9kSd8&McAHDS3yTU zHM&IY74X%8e_6o!cz<*M(MCYQ<7R00PiI2m=j@sZUXjs7a`34r!ZCEZnMnCm-9OJjyOn}Ex0$f8!(B9-? z&DkU9@%(x0zTAz805|6L%5}AYHv$Czw+y5v3Zyf6+@`V4i%b_uV9l(AA&MMUJ z`<%%BQx$N{2%sg$B3B-hO+7pD-v%sQiT}Tk$XX4MM^iaUudRu4&n9w#c*I-j`N6-% znfj}a;5H&2#a{snulUJkpZIRy&rP+h|T%m7a zcND1Sz(3uQ&H8!`&F^>Q{^RJ2d%3t#X)4qCo+0|(h6?!YXn0n^{7r}5zMI*&tzi8I zF(JDVUGc5?zg11C=IiP&=>mL_8Nhn~e$@WnLp^%}{Q_;!{5?$#%znT7n8~>ac5w_I zFnqtPzkWZedW}}2QvdIzX@+s*cQyYigVrwAFjKDuq zWd%YF;JX+x_)P7D3Ig9nJz!Vt(IBP>Ok`5f$=R&K0n|P(VP}D#=nLG8?_mxxz(r&M z|0r)jbh8Ux&rf6)U_{Ms%se}csYg3v71w7zz-!rrpc(9kSfuayQu+agF%{%R>I$>5 zfnPBb;9#Pk>TEjr(^y}XKuZfd6$Y?V@Yk?_%h@HgUj7;OWE`8@fT^JFBQYNQ%kc!d z%mJ(dnho3i)qz#e2K3wilREoc@A^gSes!wW&+u;rP|V94sWK1kzx!#V3Ry>@;?rON z4#MJuH;ec^c(7RcfeEk2I*(&={YFF(&kDT6b9|nbBR%4^Q7{`fW8IF%pLx_Vi&zfJ z?)T6q%K$dTI>`M6{?*Gkt1K!2f&YpH_#*?*g73y^dD`pTZ^RjcqnK^7k{sYj;%u3- zux*tLpke`%F3{tR^A+tC9fO#UZzI_SZ^b=6zdx$pWkdkWh^o}^+lOZ*&mLg;KD#=d z@nZ%M-;mutRtfC(>CgW=5kVY81h@x2UF6Fn${oc1e`bNQqVZ}cD$D+Fo%#QX#8rF1 zbv#y8BKJRv2{UE5rTJ8u-bV4eHN4*nI#F(C{XKym#a%vR{%0{i^Pk0`)WPp%#{XcH zJNGf+KgXWEBbnoU74z_G)88`$3(y|rYaJ$Hse&)!|Nnsnc#>|wd3eXxME@_N`#GBW zS&Q;N==WX5w6Axm`Y*{;KZD8H?aYmupPYaF>>~anhL^Dq4w^_E8jx$0ZSWY}#C|Z6BbZ3CKb3$NifiGm z55{Z11Pj=N`JTH{0a5+@TKV^KGtTjFv_P*^mx+V6LH~F#Heh!YkS*Xqz9SC0jyk~B z>~{JS70^?dDbSfc$?j%;+L+S%rI(mVx*eapikRy;IDmWT2|RbxsR5 zf{2Ma?xz>=b`#d@9&rDcQ?nYuCsiW$KySi91=ZmVW6f8hg}_Q!fOOse#ZE%k7?kn1 zayb-?`sq!vMs~ZYi;Y@k?N18>~a@vS?nSGBwLrxA;m+Um9bC4e4M4v)^@0IIFwrI3B&<% z_h$cA0h1TE-WQdA`*y<;$^5GglGz_f+%SjVVi8tgS{4DQAsm*i1)mYoL*fto?wtDT z)Xzy=w#RNyr1`o8djj58O;uvAEK$5jpAR;-`?PB3$WHML!o*fHU6RWv97NLhzfrA?WE~7 z253wMur_{E{MXH%X*BPgkM{U*=LL!Xh$X^0grAQ{BHlGDLOe^mBmS)h+DX)%dc;6t zliipOayhlYn$i}`2fLQervf>^HtZUB1euWba6Od%d&2=dN*%B@9LRJk0rRl}+h7}; z!G(OmH+4FbQTo&U^a>HcLO6taR6s6c@1)*TK<;HX1$PMg1jXf({04Uwu7ru1O-|Of zunHFNnEaOc4f2oD4?HSYgA(`{eoLpuM$f8jpB2C~?J?nB|1Z-OlRnG>jEX}E7?U#V ztoHvRRmF&Qz--!n8Zp=$yd1=Qoa?)P29 z$ClKkZX*KNAKZy!<9xH18*tGd!FF>@KJBxK{l9rhO-W73(?9{<4d32VT1$T*)+E>FbODhVaT@ zgNy{t0{zrJoXxO|H{2%E4D5l*`EDltZk{^?J~_v<>4kXzH`v>EYxMrHzt0osP@Y5i z^KRjvg^pyuGXKNrhkcFO_b7Jjd%XN3^KduJBHjzgZP$hKAB_JWP3Aj-?0?gY_g|;x z7qq}H!iq0PA=9n8Q2hk+J{G`zbt>n|kK*?>rw{%LJnQyU7khxW79iC=AG`ZwzE8~g zk?{*}U5VR6(Q9;H4+g*tU|n7tdcIBn3;$OC!~ciYKk9~JUk!n=z6u~~iBV_N=G5mk z+7Q(M>VbMtlNe5IVm1?lFTw(>%kBb4QoZ|<&ftF3F`W%|3E#=j2yb>MYOxBJaq*3*i{qrLKCm$Yreu#h9 zxz#=~q34h5VktC$@_(DIUTu0PbAMUG=%(42^?Dqc@hwCgBQlQ^tI|~+m*nr)^mqx^ zfs#Ob;3s*_%B$0(y;!Hqnf`ShxlQ*B$JY5efmIc|8{?-#(WAe1Z)^8GYQZzCj(ObH zE29Hg-yhib@0$64W4@t&*|+99$`r(K|l;QudZ9L>U`3g})PKV>{JR&peVf|x*r_{a0*HM(yqwI~53fIk z?7{lqNc{c~eizjPY6Y|v#sGnTbrW_9%lfGo+Mdt60G^{c-v3NA|BcE0mow%2AI$pL zojHG3lKDT9`TiHFMSn`a??|TT-d9||v^(>#el6MUcOf5xu_vE+h@EWzi8}Ll~e-i#x|3+VsbpjOvsfrLx zg7w6(1u6>DM6pJ^d(;Ju06J1h=#%k)lVAaspxA%2*n~a(&Szi2-%1-%$s1eV9Y+6J zx*F;;`RfpBeeX~UX+;h>=#nn0~SlEx@2`-{3pQ5Jq4*KZOUi|7i@7&<7|Wk7nXX zb?Ig%AN4Mlr~*6-{vSpQd?mZC?8iQ#EefCJZ^|FS{$Tn1-B|A4WB~eO=K;w9SZj)3 zUG&H7mxu@2f|4eyJ${P&t@uU#FPOlX0BE0x+E_WHm>LjO^j55!bMTEfW$L)(@rB~bi3_fHG3GpysSRlimZp^|(%Q~tZ7 z`9F`2pJHK)!a}_Njntl=#P`3Lb^Ux-Xhl`-d{%s0v?|ZT`%l7a{TAUG*32t-X+G0S$=#|4Mg#{n8`M z-Q6kk{jI=ZQuEl+BmT_-?Dm%h)Jy--0we|?s(|(fr~}q_w_5GDjsMN>n}U1w!p;g4 z|IsI?njmV6Dh%V3^!+gnpiRaUsw1|S*xdyNQwf-iCip~@ND%?DkNxjrMA zW3YmWzrU6@qr>@JrW}0_BeD@u(bTLD;$)b>8Ds&qn1FHt-&tE`1iwixbQ-zT05s4q zp#|K7-2t8{9!s^MQSnQ@|HrVy51_%ikO@pXQwRKw&WzKT&C-M_;F(Nosg-+-402ai zPO1S|@$1B@PWX>HkR8B@@z?iT?@Ra(l*A4o`hVFa_mEfjpJoO&#P3X}-uMVvhXrt5SI{oveP&n!|4+Bp^q$EIq|CSvwXGGf|5x!zoxs1jhn>jk+GPL2`#X=I z34UMy9~}VB!_@!V?-=-x3TN23H7$TPp*ip9l#Fgzg2WVKSrFh6jX_JeSZc0 zUXRO~+@RN!B}`FJif{Zj0`KYDh;PhUeA~ivoJ9t=3)t6pM<0M3pIRO@$VPM4H9QI< z09k$G9Xp?`2dD6mAlcE0wV*i)W{Z_H=m$2S{DGp(7)#s&N?9+7_-8;Y1>EEn+Q~Fvb zlK+2D-4T`l7#M*5)cv={4s=8F+lspPm+X{t1^scmR1d7KQ@xT-!PzKha^;8F4Wl=T z-;?Qo9|G&w5-jR}MZ9`m^*kanuIc|HPOmWb@_1SR82~xJx;)n!U_EYGctL)S7#AGRq-t{fG4m4_fv^I1Is*;U4q|2pS^#+Z~hm0wddtF&Am+x zU~krdeE{11u>4^G^a1TNpCKYD9kH^0UW|$(m-c^m05IBAaVGxV3#28l3w>NC@{DVk zkZ}%Gz?l6Pcy%>L-7i*r!g{Rs3f{viBrB27;_bkH#hbeK-431|C5Lo4*Aw<-Q*t@7&Eozk3YN?_%s-^bcVvkrAtG3co)uPmF zsg~CIKcDC2^SjZ1&Lj7G$GPX;bMEK$92z-F)_`3b6 zeQnSW^92~M3+R(It*U;zkJY{{c`t7eLEFByVCxooZchSRtD^BlyS2UE8qYVUKQ_I# zfDB;be#Y*!{*?s&j|9*LSiE{qPb5VL|NScT%l@m`qwmcq(AST&@e}jOkq=rAW(kF1 zRE}sx=miYMGM5M3fjHf{NPs$X1`mL{dzvl?eaMA81y=Maq5xy5b2z{Ib}XNN!ivtI z2I6??Ab&d{!v zvG!vD#+ZRANhS5J}ZE%Y={L=x*ZOv&R7mW{LB1_cemmJ zC=HBt7!$LfkTJ%@3YOst>;(hxG+w|C$iWWA{f=epAU=9OkAweMIVIC6XB)|wcPDP5 zow6=EeqS{4ugC;+s)Ln$X638VeKZv;>(gl|*dIhjpg+iW%0oJUWg>$0zvlhwx7qn; z7^^_dpDa-OqG~&>#}PN>x7!S<`Xl7{g0(HkBl}ZrDdu|~SHHFXMtvzd{T^% z{@;Oqx&O}_17YTGX@1@u+d6`7A8qX1W9i%R7X9y*1OI)ymnNq7UD&SKWV;W(Njj70g8dsb=OEawbLb^B3>4ejN3TEqJyOxP z0DK;Sa-#aF?o)Rs@|Sph;(^HnlE1SrxOsr$zr+8BQ_%Vkk7!h(@QO;D^bkrH!9*E5 z`N2wn^a_;;G@oEFnaN|RP}mL|;B4lTe%_pbS9B+ngI9qCJb^yH_u(0>L3i*|;Q8hf z6>X9Su_+wj;mClahz4v+EO5yl&yfqgC$Yk{yT2fV>Wub|^cVYp*vhwCtF_)D(s}@F zNLTaE{1Q(i0UoY80_;m(_QF*r;QsaD^?%eZCJ(Sxy8~}-JJx`4-&6sJ|40BCq`sBT zDAj+d^-1J!{^*|?(I}hvw}#xVfqhwL!T)kRdl;PD-K-ra8<}bQ2`qA!RqHSG1ds{GZCo*7jzPY)I>N@*dTKlIQ3ttxtAk&Vt1MG2n1PzztYc6ZuYVkpcz3$@$55EgIj~ z^4Y<^XIkw2ui8L4XZIh<@%KRcUkIM4+uh!P@)4=UFzzYi z(H~9kJRh_EwAj+~BYuKWAh$Kp2y#01{j=NO=CCSf!f^JXpX80TkLdKd8$ITpAo8~s z9cQ%u?*sp0U;qDI@_sfUHurpUReaM+Tdz^|vK1QqetKUm4)zD((Jz4n*c<%sM6K^} ztn)3XecyrG!9D6deox%*25@jf_bjS@{zRw$#b*+KPTU4 zsj4sVGuQx+!pNS_bbu|W1^7GDfqqoqh-%>5>DIh_?QzzSF@W&CVf|%(l>xH<$^O*> zNcEqZu%q`A`|pWHwBMh$V!^+8K(hbZ4a;-%BjJq9H?a4Qt2fw)WgKke`5?dGBNjkv zg@O&`!2j|DYPr16>GV6{)7(j}(G1Y2j(7HlGHGqrz21mOjSrx7P#bCm*bOxO%AARs z%6`wZ@4KyM9t8f)o*uyc(g$QEtm!kUJ-nMUU7ycP7ag&s94MN+oSl!$bDmT5 zea<Wyr&)8(`TL|Xlqs1vGEsYdY||H7i@{XwMen-@+y5fdWkUCs)Vz#D25e7$ z&k(X)zSU!A(7y%xe=`_>mFRr&5OuGolJ!24yq`PKk2}DXcQN7fP-0zH`+kpgzAnf$ zgMWca+lzMl{P@U>p0X{-9x{9B-jN(0{r<3dM)<7-lmlFZqpb*T6aTl0V0q+=-Gc2M zDB}H_jA8i#(Qi~B*?^@Uzw&K%7kGDiva}k{z}D`F2k= z|NGy_pXg66fEj>h{{#*C`jG*t{Zl_K0V2$?RfC!S;ahdrX4cNC z{khf~F8OEF{Cq~u&$jfNxR4n?kFefE|1;G6EQIfWCfzTVC-QeYoo|NY;~q|&`!VKw ztOcWYB02r?`a6>G@)|uqhGN@pgnrwQHNHL(fQ9Jyc{bj`jP8}0hB7`MoZSdws|Z8HGk~?Ww7QG16UG0 zE>;JCS@VB_|7iP2mjx;dV*!pTw;=jsQG`(_-9So;`;l!CodV zav+%iAGZ2Z5pgIs&hzcA?%vEc+=mIrHxLJSzk5Y8Bep_5?hg9bqbtZ-#05SfcjtP z*E)?#z`O7Owq~7_UN2SxmplODe=-2kZ^47;59-BHq=DUZGet|=UcYl~)|UET{P$&j zo(U!|z|t7YDii_1f6;ltZ!l19g9=x?cqj;&AN`&CVHCvHcq-d2#bVp^|e^l z*0rVcXTg4|d^`BhyfSs5J<*k2Rtk6UKfnI>obC8wM*Z~a$jNiiyBG`~cRQVc&g7bw z9H8{llJO`=Q`?p^3Z^~74({_>&OO(wNRL<%-VWsq?F9boDh4R;FaBq<+40l9Uv>j@ zuAg;#&VC=sHOMzDbKZ;un%|QQ#e6?G&}jbw$U>*7PpYhojrbL{{-1&S-=%g9*8d3d zey$|%r)SmW-#))a{+_D%zZb~+>w}KFrHXVNPR{=_tncrj{pYq{Xa2?d^t8K!YWMp< z_>ow<7qQa+gQgoz_Rl1?sl);n?lBK5cQa~ZyQ%p-k6M|b`2LTR^)sUND*p36X#dgZ z=b&?;FA*s|-PFyo1C#*W=xyzKktjE3Rey4UlfS1dSRT!<95D-MC6J%|KlOi!?!&!iK@TMK$?nNoB{gRCL%Bp8PJ9pbP4re3Q4a#*6|c6YzLy0R}Zbum6VmpcAPDzLFTuGPP&0m3LvSqz`}$V95f^ z{AX)_Qo|Fp#}CjWF8Fu)S9)lqYlM#;R@QUvzYh)MDl2u*wzwCcjxVR6Z z-J>x3K}T%=qV0=MJU>3-X&cr0Hr2m(z%)$e^HceoYF#`3c?OBrckpj_L%jfd1RA|e zcB4_*eS5ErZq{3Hq(SbFN169L)^cf&8B*$aHqfVd8(Wt_%Ll-%{^1zr2eC zD9?D-MJ{ygqaqL11>05uT|~aq&XvVK6a3F&v){Mb!15Cl!0tEj3${cG=mA*Cp;zP? z_d+u30cfKrQHm5!9;jL1*8hyfjxeS;oueE?h11`<2GtI&Jy=_m*%CitE&YprAKOsz zcM)FZBdj;^|9i6jn=oC+k?+1F6*{N2{)~Rxv3(*DuGgt^8IFB>W%o52CpZ2v{jaQDMtWkLzCktp0y+AGkGaIl5tk+E!AUj1F{nZD^?4MZ9 zg$>VNk)eOQEI2dLY|W5SbTi1zHi`bXH{L$PjP4;WzulMkcU8yEFM6$LyyD%Kwb+pg z1^q!qj!@p+u_wmi4PTA^KMt*B*P`C6aOYzUMILo{dOdi(e=(roxXe z?!@(I|HnbU65x+i{I9_JKCk(AdR`nruiB4Wqv5wMr{eExbo$$di2gm@fA4OP;r}nJ zfJ@=K&t&r5i{!m8Qf2=y(&HT>f4`(6elWiOW8@4RiG{lwEccak5A14P2ZO#TDC!ON z^})q$tp1M0uZ>=;{~o+*Zl6d`2B5xw@SmLiWC0jQ_&OGa3}9yb8T)rzf=}sgwyI5! z!Xu`aa5?~&en6erV(Nh75p?niwJQb^wHQl}@;&j79;Yk7wsbFlg^J+O*f^)q+w3v& z0N!u6>2>-;x}h!x<2RVdsC~iLpf1YpC>vuRwXlzVMkH`cB*4Pm4`My^XGZv?bOc$k z^#WN&6PXYEGQY{gY!4!xFM*+*-B^QKz#Hk+(w{7#pVg)?8F&tzAU0+V~|31Oq>15{k@YKfQgl+>&O&)`=)uj|iU{h0G}d#y)(Mpf|}-~YHO@8?mxP2){Z z((|WIw#$LdJE(Tsg#J8FQtLX4{I+@R58JDfyRr-TznQ3igAAVqiDy5DG`NeZmuJ{s z?0$!upBH%jEIQ-w0S5jC=YgH|$*EZZRH}(%>x+1?*{W`f zuGU_c6%^O0;L}pq?+^QzieKvhG9$!k0IA*)(`Nr0@9)VG+Vt0`|KHJ*V{HF_`vPe1 zm&$+NrzcP(fcXSk6EcBe0SCg*O>AyM?()reNE2H>p^M?aTgy`qxFZ=7=h5B#UFsu- z(iQ1puF?wRLJk7)Blx>KmeDXQfc3cd$Lnfq_Y5Z7w(ZxqdGnnvJ9VqaVUD|aO8a}+B#tGM7?T=XD-hs$a5_K=Xn~tn?+P~7T*+*K^V!B9<$%}bb4PIuCk#wMt{g^H)u&yPYbV$KSX%?_e^vc8Dt@PvTlOm| z{vHMUZjU1Y{zBIOCPbnBK+WHtWVpQ2>fhd%dX<;x^E(KSelPUeB~<-Ohlc|(ihw6yAu!M(FL$P-EUx)&HgPusQGF54IYq8cnR2!{M zE$|=tJ(K|R8aGo5^j&HJmm~||7kFUY%kp$_O-^3}HI7tSmY(I4$!@YhF+qbk=%B`XJ|9FS z*LE0d^$_rX9k-*f>Sh0}UKxWdi}#;1(Ec|w$o_x9f993B+MS`f4$>=~%)@VXG5`wt z#s5l373*d)TPNPdvdGOn@IdZ^DVxP-cW|3CDKe~_nP*gFLkIEYtjoFQn#Fr4w|Wrc zh<2P_F#tP({!P&QZuSB(;-~%>{~Pg5w#Nq8fU9qQqcH$CWwW&rktgNKngbF1Tm6^G zf>sAQb>z2QOV)OPH~OeHnXKOj>YvmH!zul^aRm(XlV}>F&H4auHF{C;e)UG>JUb>`Kl)B?N={x7G>Wl!Q;6Yy<6 zz$ZS8IUfs9>3RVjv_2)n`0L6c* zfJC`jzDu%)_*aWZ0<46b`8tU2QR#kd2`vphip&ksf(WM=w978~-dF+2F%SM z-l1319!v&(mfnrSYHzZFzQuYO1)B8##lPI2*?(HcdW^AyJK6B_O90t_yUiA!TkGHK zA6J-qc0Fp(U;m-VkmWh* zDE1%6JFOe`8p#W82`B#>-U|K9<}fnhWUmQa^BGtNJF(|Rd|RhE=6tPkurr$3QL>)pnwtk6?QiYy zc+PJ!$Jqd>b`JfG2i6W@#_wYF9mx9qBh3Fadi|YAmFc6PKIngp%%6`NqngLV{Vk1W z`%5z1KW?o}-OgNUeg~25b7A*yVEta|{&)A1aM^34(-vi0iB&zIM=xsrJ}3A6QYKz( zf$m?j`;+zyO!?lI4EcYNL3m7SaO?NX_uUrlzZ!U53@nOr{qpegqEy|SC}0@CZuVLP zWLw);qW;$JW`0NE?vn##&yeVUbN?d&R^+`#2J%^jVbuS3Z}WkR50M<8Z~(ry#08ZL z<^?Gw%n7hBfKhahTFh(T+4*eCE)gVpzG)LT#t8AYjA&K$dsIb-24Ptc?I#4$#_ZE&=YJuA|!VqbH}y*Nu}{@az3kd-O9cn%nG(1zCYhG44r;@_&@pYNH{G8tAs|g)+bktR*jX2c|RMH+2d*+KrECH~i&vmVG%GVwbx$yEQ! z<(m1UJv5QuZ3dpkwOt=~O(Saj=h^_ONN%owNZfyWx_w#)U&P(1Mn8oK;~~LY=G5}16{=Z z&#LBp_UwKi#_)EchC5){zCzcWJzG6nx6&XnH z3MihsK6yNU(Qox`;qGMwOP?R@dHs1`GXh|IL77q*MP)#l8e)BMG5`_*jLp!||M3Kj zJaq7%ilEVW0DDm#`D$}e>maJ5|JGWP7{?5x-LGH(J||0JGio0$!~%E~^uIwT#P_KS zY;cWa14kh}7q5DQpGr@lcK024NmHndegMYh8?CRk=F)X^BzeFu@Vh(=J9`^hKxfjQ zX(MKXK2tx1S#8bwEp%|}$wZ)I(OTAim03Vmf7tg=e29PTMc22UaJ*sb{@s?~mDO0I zqgh=}ja2)~8>nT}|91YofQ-2Fi2gZ&r?a-B_g&*fr$?*1N70Aj{9*-|os`Gn#yYpb zkF~0s!~9$oz+|M+R$Tc#k%(J@b0ZtQ_(fCoXfF^aBUvFJ z@1gV#{>}Tf>%Sg^bHTTOW4Nzt5v>2Ksrs2p70F}ug^Bwg1oMAg<6iWO7Ul!||1GnA zmLN0duI3_ef2Y#vt_3f>De=3%x5rT1J_lX4C>bpF_V^dw?qBAav#EHu_kT~AuAcP# zn+rcU3!k3{pIzo3h=pP0HlXU>i4zcQ|p@!!HF;Av$QBuZIB7#X8$Imz`yzv;r={otbyQP zuOjxpm4QQvU~Wqm^E|pE%)(N7rd21uc_JL(an($;mC2LX1198FtfjZBPN?sa4_L=a z8VUN>!ES1KgG@z$b|T_N5o#X`oa))`*|6KXd==jMta-lIb7+i+{C$>VQ_}UB-!=A!inW zGDQ6Qjulw*`=L4J;-~5lM^6_dL@&C+iwy8@wrKgnfVuu-3FKbEzR$V^A6EaIg!TVZ zP|%<6ZI#X>RMZi=>VP{K=ue9jTfZdJcf5DF(T>a$A9b}WnlaO=Nvd$ zXfRhxD``2T-e@ZG?xae_Z((k2bbiMMh{P-B8J+K|oo6Edf^(nGSw<#CD(G#wZHQhz z8wubv2fF}m22zaxlx~1ixVH`cNcKho%tkUfwM=D0N^;TDd>% z0@;)G;15ow>bDOQ90TD@9NFhyi0%>T+Ta_aVuk1r=@K8_xIDs_$U*`p`*dfMrk z@SV9ITJFa7tqc^W>UlGLe8%p5!G9uu3v=vn3c^P#|LFl_>x&OC8kYVbYIcp29!8er2d$;?;WtC#T})T-uOS1cVhNpv1@LC&1H6p| z&;=JbgovQI0IOjEyarpcBOO5=p{wFXWJtcol{%apsSlc0({pT9>HzEpdLO+&ZlV(K zWb%O5q8G>&RBo9J&}{){~1V?nWz%K>1~DaYpMCz|hf*K(KtTctvPQqCGc@o$IxP0-q7IfoAZ!*!JS zzm|VNzZ~G2oU=U?{fzMH1If#|iX7ly<8@nEt)>nK&_Q%ipR>%f#SY3@=S(9Pm2HuF zN`QiYZHZwZb5CUVd7SYMpnnt4Zw7KJrW38^sy{ zr+{R7fDE8Kix!=k(<70Hdmv-p>KX<2|8i|Dtp8ic`x!zs=}gwtyf68s-=JgWk^A#S zV|??p=6lU?tmqqCZ_wjv12Fu2dnB6dLDq2#^!KH=_sjIUzKvPm4-n~}N96AfR`$YJ z|IZT}I1uiuFExM9w=bc(#k}7?!)woIeGFFiLTe5{Ge`T!{uhaAWV3OT(Gv}_d9!*A|i`U%PXC#qQRFTdcY$}1EbB36XFpV@@*3G5OY z37`ca{^K9GS3fd=)@Mf8Da;32sI?i{yU&m(y($*KH;I-$!bEiIq^82~-$X6oo0Sas zJ62O04`5BS|61HG#bne=;0c!RegUsxd+GqbpfB=icmRvg9px}O4}Ah7GY|aVjR$ZI z_S$}QY5q_Bj`|T~0e)P&6b7KHb_053Dyu#@|Hc620FwQi?DoS$N zO$nd}P%3Eb3O)&s{A%L=2eZC{grd8WbsDW#wBP*rFYCUn{YZo8#&`;yJ%Wn~Xu4nU zSw~{U``u;q%;)J_$)afNaDbWrY3Fb8uLU6f$Dl)Jf&}A*&Ml0UpGar$FT)omL>@sY z;xv#coVndVV*&I-@1I2uz|~kj=>rs9oycc2y|*32D*=iuDEJTKS^R?ey@2eUNUH)itgJX&d(d$9vvX?&f`pKIxI zIg6?vIjuEVmFKtr*`9%&`Vu_$;-KFyzpsG*JG=jY5AYvyfnH(zJDlL_j5$~FnI)8`eNJ9)$$Pki8UnZ zV3vTJ)`7Qv&$X!q+M0dBRO^z+!9eBK+W1#A)jn84LIkGSY-@P8k0 zjo!ru_!`)sNEC1cp44ktRXcRA+WjW=!+T+CEz^FFn9ISfb(jqJGkPPn$pSL|e-HH; zH^J6?pBUgGji>8BrxU=!^|^EdUb1!%QR@x))kVIsf204}0I~k{{}Tl_^VLl(x!FZ; zb=Ha+#6C1e&+I&9{;U>5Ki1^QWW!xR4uDt?39j{60r6+ElD%J0QKW&ZK6ZfE@5BI- z9USy`jxh`z?$0M(Mhsvw-+eXS?MzFp|B}lW)LQ*(_MiNh7EXEqti^X%|4-*Vb^;au zo@4Nz3ZQcKks|sxP6M(3&KRy&rVFeB>W;zxzqRWJ;HqeUwRKP&-@fQ^@!nzhA`N}6 zoNd|LYvQ?P-^c)~bH0JJa~k+Q*!|Au3jQ|-&35}9529y-{oSyPw&u)+^L_RH_54%k zt^Yq6+aa?(>;_gQ0FUB&q%XjxbQ!p}t0!}Q=hhZtmgGhCztvZ5%wodlRje!V{|Nlj zJ#3FN=XU`0=Z_HiKa^bE4_Yfz*?I&ODqq7!y$Tj<0ak23@V^4}eZQr<&%4M2S-^M6 z2Y8ZIek&2LW5{V4PX_FB?O)O@a1>qc{{%9&ZhemS->>5SmIrys^+|S*b-SfMj|eX~ z3>w4t=?g>?+pAONzW4@_8OjBvgt#sIU*QkTGSdDx@@Hgm!OH576bXNzmiKdw8mRsC z2uhBjua(#32HZ<2(ThmH2sprRHcx8aLyx3kWCGvRdW#;ZW9bKWE`5@k^!nb28mP0$ zkopUf@?-wLhYV=K{cTQfuqjvq?+_vQHhC5Qpn7P3Y^{M@uNUbqxOJ;X>k6c0PbLC9 ziG02n58xJJwI{*a_G`Rdzr2b8{*F4p)oV||n{CQ!O5|7ci~s&0WEJdM*LAU+!=Obo z+C|Imx_a4q&d#4QdS?BMxqr)nqutQQ_f?F1*zjnk-@LxKd*Qz zE|eQu71Qy9uK@oCqQ&%LoPcS}%j#vV{<0|rlK(5iX@66_VJn54q_YvIF;mueb?hAV zzwa-8g!i-ndVxr%>P_N3a)xf}B8P530{j$Il^lSMl*_sMtveQgXOgX)d#s%z<9s$p z$UW^OkK;7(1K~T*AO~FcsYI3In)3uTSUOn3t{nFaDFUE&ew~ za?E0nO*oI_Xc%1(|8@p*+Q1WJ{vBC+rnU;1KX=p{jfsu@s|lYnero@_SzUKyY1W8p zpWOT_oh^RJoS$XMXZbcO`PKHCFxj`G!4`wP>JR>9u3pCKe;3wo4W9dq`!`Yv_#+~J zd%igg=R()8!lI`m&+WGPR zWAPWeK)De7mwY}mg516i;>CZozRbTpzEe3Uj`Nwyjc9*u2<-tQ3h@s7T#@g-$_f8! zWeg+_a5fgeg)kQn>nO0Oh4 zr94ekWh1WF9as(9<1O_jRyvoQqCTyAku80w1JDDwhhOM6IKa~z-)@W|26$Kfd&~oP zvvx*pTyN#L1i0rX+N$N+nQ4hJ*V&Kald_vKmpj%58VS)pI~7wPAb%mZGHGuwc7 z8f8@KSp~E`QMtSDMYgNX+A}K*K)!jjdd~5y=h``I&)Yp>AH?_fNFJ-$QR`L=!0CAB z$DrYj{>uP5rEdnBUw>>0xZbJK{#)?-*s(}&N6W|VK34cx->?3+c4#x?g%Zp7Vmbrp z-Ry*X`E%DuVt;SfhSq;jf2zI`Eb@=x{_euEd=%FIUTn+T!T(E*CF%Bkb+bke+RatX z?@rXT+=m|9kSd@1(OipR{SRR4O+Wir;s2f{^0#u2KI8$vfPHW*l|kDQ%^HV4`!*Rv zhao=}X43U(RLOOtFJIEppsjl|I%FFP^^$*CsC-*!yPj>g|ii`2Dhh z!M~V~myn2H@_+j9{$vEn0mw9(MUc2+YW~CVi}?=spNwJguXG6im~WEEfU+t6f)c?x zqmfJr-JOiaJBXN$#LKz8^)i`2BgvR>O2RT+jpOnEpT+zCC+Poo6*c*Us^Cq)|4gC) zDe7a-@S&-aVGc{?CYc{2U)&58gar zbAX%+U^epctO`cx;CKW z=YMPK*H0(!cQ7?SXH_*nk5>4GEZTn=^l;(*n@E5*T!6FtqH{%K{BLmwe#Jg<754cf4_yF5wAmgKq-@N;`dNW^{Om@Er|kLLMCuO zW~5v}%=EL?AZmerNpFw;kTdmd7`{j7g#H$`|NE8x{|KvT9Nkhjt~#ZzhV^tMjA_05 zacr%HyDa9MRacu`G3f=a9#>0`oxjt}RfTgUvb} z+!(ztoj=TuGymT;tcCX5LRPQ9gXHH zFIWf{P!Li6{xALu8p>Z$5zLg^kytRNfx2@+#1OQb-oJef`c>aL+B&y||5x)D{qGEr zp_M1RF}K5bl$l4qBUVE^An{)w#|JR~VKnEr9^XjTKyG0?p2#&=BH!Vv$N;1g&@**Y z(iIKfLAzHZ|2yXx%;#FnZzp(+T*+bJ_DA?UXTdgZ0#=;`Y$U*Gz>~4Z*2gN44cL%Z zrt%r)s1Ka;3t9Kc+{j%t+ zckuqNA$#rK?muA{yxsj2k50t)Umu^h&3v2l+TX$tw%7NC)DXAGXZZnJJM^0#sC@IoQxJaTE;2DQu)qInf$wPPm+cMMpw-x?(qz>S6 zuHL8Zb;+6jHO$C^$jVn?NMDCX`7bjQhJ*fo*ivf|H@OQ5+lzduxmWU7=tEIt-P~HNMJLPKdEWjW=9s7Rhcod`#Qwjy%Ka;PU2aQl?izC)2NMPFKAZdV zqaYafnXlRboqg8Dw%w6TnA`Zj9eZibtN)C6rSh+!Ry^zfC;vzMXLBx&bFMbxTQya);K1CVETy$=416;y1Ya<-9&<;)B2 zbB%Iau9J`4lpI!FY(#|h95{ge`KOAZNWkvToT-B}UXMTUzVio(hczu`pP4zkq^3gC!_rUu-hW?+2W|_onl7utU-Dt;~o|K_sy#A00t_U|v`uFi!MxDVFvab&^m z^Z*F+w><0kcDmuL2m1dF8ct}f3zvOybANEMHhAj^{)_%MF4v=C*G~Hzuo^cAvk@%wEDA;n!AI1KP8_O);}4B$^(7>`6WUkkENTa z-$L$j0G!5b^7XBlm`e8EgG5c%qGIw;uHPkar|-f7%<4WEFaJ7Zz$4^J%)=k}2VCl+ z)ByBm`;08AJ;;|{5V?64GX)2?KOysS|5k4zCP#41-s4v?K6?*V+7*pc$pIMD_z)iF zsQS42d$rSQLuxN#J8xg%#R`DL#l(e~yrsHTETrZqNKpT4XInQT|8MjtJ@n0mvmfRR z*#8^QO*>S6a5(T_Sl>3f(1?Ke7R#>tf@vQW9q+zn#g}ZK>{s@2^7l9KVs0bTXg2Q~ z#J8Hj_Zi4{j2+*>e~|#m0Pf58^h{UhUCy~zZ;q(+f5+4Jd_D8n59L<$YZo~YY%I93 z5=gdW1&*~9h`b(Nep_qv9ib2Um=fcb3%&)jn_*DLQU*K7!%`z`FA zGqE)`;}=i@Yyh6czmiOD(k|crI!dSkNM|`+xsT|7s~+V4w&PdYj=$^kjqL$o6v(6R z%+deQ)t{~(kJeVM?@!&&*Wvz8#*%yh{6AWCmzWC^a6fgwOVN@0(PnSBr^o2_xd*oY z>+NOH{@3hMlRe%-?>|HDzlZP(Zp8P$fSz{;c5e=o-GjLQ+2q0Z zVHN+eb$x3evVQNcCVh+tm1h0VACC_kAJ1MiCHtmm{%B^kc=Ccof8qYbXDop1r6drw zZuS5a|4s&241XheKHBnbvG?7tynlWP;Hx=exWDLq?fzI3<|mppobS9M4Bc=nn*+%N zez`f2+#M^XWKO?HZ|{?;`QUG~m!!&nC-NfCCE9m3+hxejm*E4goLGV^;48Vtlc@v# zfK01n+MCb~?4i~V$pU(lEWpXl&!_^JSJ?n}@w=T()y9NIt?^L(r22;SFR19+p!N*fla-`_2_8`n|+K%M~i}pg-oKrRVrB~Xiuj)&_r9;# z4mpD87yEAN|HK@e7?7$2JBLRCq>N{oI()?@mA2K{;fM)HII=zh`f>etWh zU1?3Ne?8Ako?D&wsQ;J4dfWrg^k#g3%_|GoToPGjH|tj-38LR}+tKrp1jR1sVBTjs zQliKSF*A)EqpQg^I1Y=~$5#H>^*YwSIy>?FbO7<&YXK+ES^aMZLo@28fSKt3!u*x< zF4+%}Bt@QhCHkN-$Ah{u5nv@SbR_t{is+n-x+pJaShTr+)$_3p@+cUOT~w^2uS$vX zp7N~R%MP%Om%-8Ri{zV*{x*moMQ&O-Zd z`z8LZ1ThA@4o5qLergNj{a;#pzc!JMpRY6NZ(lOW?*{!3;Zxqpin;~<@6pBwjnQy) z|7mVY?C)jP@800J-aUzV7MJ078$S*y=*@w2k0t1|AWwPQ(>_` zX+KMs&~FmQ{)~LM3&|p0uJs$H2yG7cw;Bkt60aNVQ)Yw|uo^$yUo8IMEt);KJ>D1p zZn64<^uoibl{<_;G`5ktzGUgFz~`m*$8H}=4bd$6eTPSjBnfj+q(}KCktg8-Vn=j( z2$#8J95dF7YWfw!j?@SLhASQFho6pn8;4C$d*N@tKYeK{V~ zf0>Bf)YPXZM@nhNJTBVqq80r~cox)&C34i&(+)BB@~NY*9I1?fO_1yz3osYm@yyGQpFy4c)--@hQ( zUj(M=Yv6uaq(DEmRk2t<4{4q!Jk#WTI7V~Is<}1a9u-DiiDgicz-?+T_7TrL0#R7P!^>?ZP zrxQOppYEQ2MgK2AHT0TDfW4TAa5?_|Rq&-xQW3laSM_}ult*vTh_7|$QJw;To;}o zj9>8YeuXC}QM2G-C?4<6uRscEK zM|>+cil)!KU_Smtxo;lOpbBSWd8aaSEv$0AkrTk3bK0uGg6LeFC{Z%fS9!U#~Gs?&vD>??F7ux%8E}p6!mt z3uON8+ML^5sr6m5PioBi`3c=@7s4z3KG|#k##3E{n%|G``(K0aUzj|Abt+F_1)hC@ z+~D2mVzDea|F5?1rc>z5_VVpFnHjb-6D{U7k45_rMNck;_Sg4U`zIg2c>n5Uqifl; z|BFu7%J1Ml+Blk7To%-4@1WXvy*#3M!i!hMGVS0xc0qj@x1fL31e^&DuVgNIl3Ge`UfD6;n>)Y^oH&F}lJ1Qt%rygJ$ z+W#Wh(!a31j7_x^9Te6;vcAi6*WyEM(%tHwi_{oOFTm5Om{^pGspGMnzMwM0d7$^f z0nQ-@Xm4_W8jX4NqnQWz7QWqJssK;Lk~EXu3cmRNVgJO-{G6BCQ|&K*mI^ZS|EKVO zJS%(vy2YHq{;a7J(f$|WK~AhJ-LGQct2#|&#QGQa`CphoB|t$!c}47q0^j31N3e2F zA=lt?Vhv;2e-xiNfxo>gv?prkZHZ!N#VEn#IJ5v#3#--8(f>K?Al>uV59n-SzrzYH z$N7%r8cgDQnf&59f{|e775}zgMVwB z_k;mBpDevyEBt!~_9oq^@&(L+l-JyfZ!(i>k|{^__q6wy{Xa9`YjgH617IrORs5SB zG>#QKy|;_s_g(;evk>zMp8xA7+4{|}olQuY7i*0boY zZQ$@;qTBB@dimT%+`0!{zTSrMy9XxlULsh_P{lS33D65K;1xWCU6^RMI1{a2#oj%F zZhs53pQkhSq}Dsw6#G*rvld8_`JcZA-#$E6{n**VSbStaS;S2Kh{iVZpQxYu+++K{yu%~pe^8&#R$3$yA^zR$FO(@lWty;i^rn;9 zx^x5Cw)vxKHt;C=oZJfsxDeS7JHr5+K`iuQtolc&2iOpd-%1p)L8Ww0?5H)U0kAKi z8PxM&QD$L5-A^U(R3@d|L^i=1t(V9y9#`c6$p9J$%rt=Mjb$1y*3YO^jIV79|? z7e+8>E~t;5FSi~1M*?(oXYfA??=@2fb^~wgvZ}3IjTX;0?^x~8=`sMN5-#{pCWBVI z{9lUO(8uah z^#3~G{}c4wCGFj)`2CQs*oTwD`Uo{Y+p~iEf-!6U#C+;+t-)Iei=bzP=j7s)TXO(J zYVfZ<4&I})rBW}=Xp7a9gI z{Rol)6uZS*;8Aogt_lN*Y0RPWb@>&MqW~zXWC4+Mf zssJv40bHnlBm7QR?Pl!AjaXyq|73}%$CJq)-KqA>z0}Y5XJ0Ky@vq%ndf~_~k0K-G zQY`XQS$Umln8AN;v-ZncE|MXdJ@}57-_eTd#3CQmi^Vb+0@im2Yj+U+-yS_|R-1Wj z{n7IA+heJFt2EGOPYs|fN4EZ~d83BotFw^D&wHcg&3O{*K5~l;nV%Uj>Zd1dpKWXG z$Kn0lKs|yvKyn_ze?f5mdd@ljSU)~n>K$^fxf+p`u@;md;S$c|N@O9S_zn*{%{|I@%!|_*t z&J@oVh*!Uc95|Vd)!(9H)f_B<7Hq(R}-Ucd$LT7xO)dl5Z%IFbK_+b>Y_vr}t< z)|{%_-*B|MJ$S9Z5&d@h(H1cC&k9^|6fDjER~(9Lu^HW8GJZRcgVo?){j8m@|KFP< z8a0RnSd8b39}%=i_s3(1Cm*d}d;<6OQ_Ar@wlN6*YYCVE6!uUbKnq|!E=Bc$T*+KXaM9Zl8bYgqpOr6b_N@F+v*1~vv?YH{+ZFCzf)P~J3R)FVW z-#?L>`u{KhP7AY7k)87GdR}4x9>x24zqiUkkFGrN{_>pp2ykX4fY)F!+V~12z%igI zv%pHcBWE0`mUH%uy)L3Ta4mvDcR(T~fb=}Q%^xOek! zrhAL-V$+K{d4Ph);8hvm)`|KR-$3k($DSPP>)_p)9$MwS_{?IjTVE8kM#D#5gf%F~ z@pF9DPjKH(mY`A~wnC&p;R1?0SQdFRfGmIwo8N-#e78B7oTt07qL!u?z^-`nMI|7EUU7r9jH&Tu#GcauA@KTfU0;PhK!?HrK8XjpC97pk^kyc1r}{5dE&BX!A}6-9 zKC?Mu>i;Q70OMa)&be0~9vzPDcn&K_n=>o6MEwfdUD+M|UnGMoI$m$NC;Hv&OcMzZ zSy1plm`^_x?*Dcehndw8jWi6z3ejtiwie3;x1!blw@v`|fBIp`h-*2Nem({7d8al* zY=`-eQ+P#Xz$$!0D*@KylY4P(w!#0o39EcIs7u_V$iSdGmW=0^t#kg~^SO>RDED){ z%5{vq&`$p*SymSl``jM8e?xGq7o!9)2g10k9lST^DyjYL^lp`x{?2ILYxKr^0Xqm; zH)PFpqW>GxS?unvrE2@vep6eVj!~D@->;9N>(^zV-=0!dlwM0l+11nl_oOf1i_M{} zinWi~m^vB3`@%{qY8zo}s>U4cRF!_@Bf&8_4r^3|b9MVpQtP z%KsJP$%F6kUF_%|Bn4H`pZ7%0rUqu)0OxHuaBpOAIa}+d{F!=0n8E_!&Pt=wEa|%pzC)ZDu17>tyKRelVd)uPoRFx zj^Fl_7601*H^46UY985qr8$Zz)GxP&W3N8Zu2IFi8tOo|E7XR%==yu85|}uSGsx_18^o-_AB_$CxtH%=YDqdy^^3j zic~0^LwG>HTfx6Rg&jrpVf1B;E-r=5F_f8xM>l`dT#P>FKS6u{8y;mVn3SXG?mwsf z20g)Nk|X&G7=RaHRR2Xa#i#fHE7AvOFkIl@undkT*Lvyh$H)PkOdo*9u*Oy(dt!g& z=ey);Tc>Hh#`Vl>_%8h$d(a8^p!&f2E6f5KTYDF-eoypS!^??@(Y25ViFeRe)A7X8w;hnLWLXKaK>|N`hSJbb3_(`~0}d0!Zd?qMuHKwjc5= zEW+P2@$bai3$?yzin;Y}dVU`X;vXRT{~MzIH=_HmLZiIe7)buwd(BC7v3k2Th5l79 zFv)r<+W*eV(_fPH`86W_Pm$|8hq(3YRR3K^@A?z5{CDjhK*s;wM7jwP$L>|UmN z?HE9{biddDN`YkCs=w9kcIqs7cj4jks6_aK zMzNU5KGp;q9|-=n)MGz{=SxOW;s1&Rh$IsI%83#!3=a?=KzXCYNoQia2!_q@GnXe1 zU?x4gZl)vngw~PNP`pL|l#O6Rk0uM~Zt%Y}S-{(q=W{)|)Bho+`d6;)r_@xhLNs+z z?Eh=P|IXw9{e_sp=0s3`Pb_9Y>sci8y3G&h&SLh@ZESNI=Qa)_2k>j;03T5wUVn!O zz{cbN-hdxDjbA?gf2a39Ju~?S@Rv7 zdoLK!s$}s=z~$fLCx$Cv&#J zw6~peFF4Mtxh?Xq>{n193E(@*F}#9W0{+!fKZ{KLZ&%p2|G(^?Y{X>n?LMg*R=TZQ z`S<2KTKzxvOAo+(^&G6?&_Wo@-|es{{?s*^9ucqA)}_W}V8PYl;1DR`vW?se3zky}x!ZjeR;E9kn36>h7oF?{X}F-{A>dMn3!Z znO?Cu-K*YXeg6{Qe>3v_ob+)Hd2ssvd(pva2%2$8P}%AB=_I~-Rr%{&FEeS24^UWu zF#pl~MFJ=Tl6M=eU!KqGz;KG4zFx)%to~7}+XF=YKTLwhjt!wiPzL1lWB2E|_yT^L zunrye!M(LOqWL>~<{}(xEo_|wnwK@-X%40%_%*H9T1&tH?1VLSHI;yG5dZ6gOx+i| z=|%Xze~|<53Vu}+>@P-i^^fEP9RvP{cK@5+0sFMqrV8+6<^jKqWFFW2lnkJ|kkq$= z|C<}TDl58&0cZEK6x?x)k!#{BYXf0?n&{)w&(ied$rIit0#{pgGc z^Gi2I*T@}+|2}BELt&1sfSXaRy`bG&SAQPme)08-HDB;v_`y6bsOZRq>>tlyWL5ij zKcBZhtJ#%q3|k#8E`xS&3r=${3}F2Kbj8UWGy5QB{zr%J5BDD~!J`ywp!okDJ(U1* zZT32}FWSCbgKJ?`?Yz~oY`hnAi^_6Ea$O?ba_*h$RQ4%WM8_^D(qS@eW2%5Q;dcql0dKelU}h{nGYU2+%N|0=S{FNY2IsIf8HdPO33PqmgMYJDkHYil#V_jcB4{~jCm z_y*OgJ%~`I5tkb#V1YF8$wcp2Ny4-z8uHf0Q1{>17rh(o%qcytq7iwa6ZBC?9 zw*9_}_pkn!2WTPz(uptJoJbU*GJ$5_1eGE^|I^7Qa>Cc*_3QU5S>zIA6SV@g0QAT` ziWmd8^6;dL3WjGq%5y8E_(T)Um`- z?q?dnI3fV2(*@*j%o*JPY56?ASqJ||G-fuIYCKmznMnZk`t3vj`qZ97UvJ3@iS;k~ zt>brHYxn0~w5Aht^$^E^^!35M%&~QI_Lo@&{W+6P+&9C>e}~l=jn!GR9rSl}VlYuw ze^8!RgZ#XboWJtCnmV?_7&2cjVCu$YpulLm9_ z?BSFi!0S=JaZcBJT{CMp*6Q?%Ig#jJ|Hhuok-Y9pKXOim|101EyO?JAU~@$4ET&lW zC-eUX>eeR^t9}stugb*Q&FER*-Qz_ffEVGvo{3#>DZc;ru@I(p59?k5jWv%sAA7)B zEeCJ?bnB zH6Ga#37{m&tGIK1H^i<^5?%7SrB=Wecik8kA7Oo0LUlnPl$bGOs9W&&SMEO z0mpF0KPL-t>DD&Lzz69CwidDcpHkKLRQu21zaKL}egMwjr3dK3J^oExbuJ9*ePjgv z7fawNssj&#P3b}Jw4cDFevThCnOQ&=;YBS>4bVN{|CUPsU(`6Nu^BZ0FV%lZAJ7Gf z03Kc&$}F&R(4?cmc6@*FpKL!hX@>>K>}YFG%=;DpcAQy{6=wF|Dy*N~V59CMqv)Hg zzOtUnI(GfK!i(J>JeR$KlIZn<5?>2yL{8b?SABj6Yxvt>|9;m0E_^5Ji|pVb`{< z)zREa12HWAv&jI;0LW;{d>g|kzP)=I{qI>FC)kf&5d4e&NJpiMSpY`c%>o#RSN=2b ze>UGLS0U#!zZ{4^-XTS_M;EQB4qxYL1h19CfH9z|BnLyPk{ath+rR2 zPQY16f$vo_{swg~Mfb{kn0>ty+O8*=KMxc8>qq9#(ex4?4JwTMr`K=le$x9R6F)?f z7J%4~-|f9@YTy$0R}UB4KrBWpyPvbY^~B?i%Q1E%6O17m|C_&Ru%qdV1SzsaA0hkt z>Dv8f{`t3~|HJ=l`Mb&esrx+_@xKs9Sd|#yR?Xv@_f~a4N7MK4?N%>*q92m~H<$ST zr|kjw|3ATYdIzJS4&!$>l@mvCo$rSU_z-L0PF|e}{^wyc%x-_39KbChN^T$muw?U9 z@PA8%|68%yj&E$kEWkJF7uUD1FIs=Jc5H28?IW`F&DM2JY>=@MC`t}cbZAz)eLn`V zPS#_M$Q&Ct+K`o#-oL%McPP1U4^aKPEo;m*?i$T%4VHu3!s)5WJIEI4^IP|#z}JgR z$a{UZ9BV4IOV{E5|D0HxY?nQ3`+>@$rf$B!KaU@*CLWE%SIZv+#hE&=<=Be|)H{#`@ok0r=m`y;u3SAhQk@OY23 zm&39@iwd>RyZbS%b_?`>qsK#F{!maa{?F(>73O~n7_C0!tp5pq`y~8^;jq?kweF;b zV9D0a@Yd7e#8(C1CGxNS&p+8eHMP3bnLn}ABLk9KC*F;{1@+!DH%O~qPr+C7KOCQv zgMvx@3#R~^|0AZO?@KShNE+=2^?i{vu@qv37#~aqLO#7CYs@Fq?-%XKUr?%f9$FpB zoI&&hK7fAUuQb;r3-C(%A1umDz;A)(E9s^3I-Kf6A^;b{p1c5uayPNnL-3&v!#qo|2wo-qzk}4t!1bI+Lvg?>-cHf|F^SU+c)hyHf6!>>$V83R9cI2dIomkehOqH>F$L#G*agug zuD-0)g4-eif`Sefik>eLphWtEiXdbD_gL#UgSg*KME}yoSYLZBH2Sjh;lE=Ah-$kS z+RxK-lmj#iz|DF9`=8nUUuh9p(fOPAb~wa%13v4u2?x-NE2B+h6@s&muYdvgKG!K4 zzJu9x@G3Ga=jAn-U(Q7)eh zMYiPmk_W8DAC5LYml~*(U;yl^JHOSgB#2BXSEZo6$bvlfHdiNCs_a$tc{$EF^80^^ z#dRpSHKwO$rX11=urkv);ZVMX{m9m?Ox0^H3SpRB`pm+6)#Hx3J>;HTATKN7u zfd8@7`qt_C_Xm3Z{+5iOlgaps_=IZ^MOFtam=v?&i8DtY#Z(3GwL3QGD9R@3YY_W?A{-X)S zcr1WOgJ8ZO-@o=B+65o`cCr`tVl9h{f#|o62j9`(MRP~Do3UdRKqlh$;%_8?nNPug zvi?Q596&q>?{_fok&+qYUnRhDT!9hbE}gWuz$dwdZ?`MotZ?=7+W@hOV)u(|F*-lu z%VT9g+1KZy&HWqv8;6}m#?`qn0NZdylGmpNU^ReMK#@I}>SF}Zny1ycwiB_QoEl=6 z(BuwVt>v$~4N~=~uH~5!^I&a_`tfxBS(fPE(J=nER@#3~h5oCN1@AUSG*4}Q*xZ`= z6-^@6ziz+R9)@Ll56gROkF7xe#_<0u6Q^33zTZ81e99!C%ZLulBv#cQ{r?YogrCtq zsJ$gw>mT9uey6os>-pwS$^09I^>5W*7=LX55z_|yU2Ks6YEJdETXc2m0aAMxPhANh zKJ#B0A>!S9KAJoE0`}-wjOXp^ZLhK5-#uj&MZI#ycwmPaNUX5nUzrnY!wRC*{fm6J z`1@i$JcF7)5?5!ut__wmOf8|3@!iKmG z{Qrcy6!UPRv7*JI#lv6gr@MOR$A8gvLI3~i{9+6Ew`2njLGtWF?(1#j8*PVvQ@Xgi z#eZ1yjTF*0ZM}C`&b3BCpwxx$IZ1`nR7Oy&T5Eh z^v}2vAHex)o@X?EFrNFtZ_fLF@h{Rl5+JVz{XuikpIfH^9|`_XBja)cpQKfvs_fJN zx|bHjC|;2xT^kwh^uig~D0}msS^SRn49gV2VH{&eB={e?dea@|iP~WLe!oHO&vx)e zmsT9o&1nB?u>QsWJB^XVm_BLlLf!fbu=uy2mN!H%&Fij_nLee*dOZeFul5;PfB&Hl z*e)Rdg&8;#&viN#Ld((fV-6hG4n(Y$qw4?i)()-3TMxp6ZO*D)0R+m*C+A0f9}A#H zO-l{0z-R2ttz91eUo_gMD-2w4FLq-Eh;pCPE6;P;BeEbBKRtP^ce4-25${R|ZHGh^ zI{44=B2!{*Xa{IFg!4EOUf|so4;6Unw%=qlXnhoPGx@b&*%l#-CD18 z6j^|u(Mfq-~8rD{8}6Gnl%a51@6Q9_5%N@ z9I%VKzs{tpqVkolHJSSRY;6?1qW)DMPSw~+*#Eax*8lYt{;%TxTa8iV>U`1s7SaEK zc>j-4skRY1>Uv_*J(*M6uc}Xf6no%to_QZB@DbVn7vslnNyon>sroy=eE{8VR-<#h zxj**%zLVU)jqv`L0T)GY#$rzNuYvYg|LX&^D+?eQdg|$T`@y8Rj+Yuo=8Tp&`EA#-FNLKZ+bo+P`%s*Pi|1RfB zKSPD371n2A9W31aDE8Ej%uW*jqv)ReQ~ZjL(f_v)ySW|f?G{+vR?+hu1b+MqgRm->%X2yPIC2e={`4hO9DsOZQ@J?oHOq!{p+a z_a>e@>)18#DlU4kXuX2);@<}w<RgQt(fI1zU5SF;hG)J7 zc#Ebkc0iE;v5@B1^IoH1zFe^)0lb!8Kk+W^%cd=5y#5S6?HGQK$lcLk*{RG!u$P?n zCF4JlS9io?ve&nBe|F^e+6zz3iGlhG>+ueMpGm}SFYEey*Rb06Yrn6JqwoKx^>I{< z{S4IK!3whP&sD_!uH^o^jj>d&w_vQFZw+f75Bs+m-73FJwC`E?|HVN6KUt}lGsp5; zcOcbG|67!0Fn<7zrjy( z`ky@qtU3(KpNK_Ri)Ll3$XKfROZBobKqD9CA1DFzVwT~I#}WfPnqGkKlLdGPoj@Ax z(OjL==>Tw5`ypb0>yR~Z3|I1ZWKq8a>vukRls_V`>S3pBACq@Ps<1U#$ z{a8n-`LoZob!D5faz<9M|GwNimT8d>!9?xwf8KxAtgF9xu0eiQzORo9lO-X*=jZ%5;cdv$ZXe{FPMlmBx@iCRCtPO$>ad2pYg zIV6A{(>>VhxnNeO?YEGr@-P?S4sJ@;Ox%P&}Pnhe*XD`8u3vIlFRAa_v0R zoU`v1{iTa)B!JRjEYa4VfZ5Z@zHo;55cV631h5j)p6=#0Ipb)1^!?%3OuNHMZb81+ z*4#QfU~;vIe=`rpBTcUE`nYR+?U>ph!2hN7&tU)eZJdVJe;3;=$bl<~{$E8@`J=`L z&1+z+4{5!Ctt$R|c5e(TbrTWkF3{hC_nQa)&&OlE8J_A{nCgeB*wq#=0NveB!2TTu z%e^+ae~-0Jq;K7a%`50zX}|B~!GHSwM$?OTbASD36hJGWcmaCQBGygYUVlLCoH&3Q zKd(eS7zxxSDEKe;u(?nculf^?;{6r0)4=aqXzh7B*5Ru0os-tfGg4X zZ{qXc-+dAu|19!;&f@x>!mN<>(EoqNTKFDp${(r6n$r4L^8zBNpV6h^MkK&(NbEac z0DsolnGApz>!;Oc&;w*%?I>yhU!rDhD|B}J{~$v=Bnv2L>BCBLx`wkQGH-5EEKW0C zwGFmny+26o?-;HVR zRjj-n0IwD8FEXR^i)|kJydYbyuG9c)1(@d$?2GgG{K0)J{$Rb>{zbkNzaln4^uHNU z>tg}P08A$@=T@ZCx6!Cxk8-ZjWjriN)+-`xp;*Fe&q&N_p--y4s_tuWV-kLACF7MnOtLlrcY4rYk zu{MUOzn_5r{fHY~U*Z2|JpU`e|J7CY-&S<4TDkSZ)}N{U`!PLyRzydgg@tN|`eo=% z@d=SYJAYaIa~oa%|A4l-fL_)!$^HL;xYn=9SKXCazinz(zenZYi)gH!$y&GaNBrwQ z2Twt~62N7vo{-lmPO6Vm}srw7Uiu%DzeX^1s3ZuJhqrSpRc) zWvl)HX8SB=U6}pzIT3`NTHUSNn%{^0xAJdAupIkeB*p4i=ZpW2EKoXV1*k>MueFXZ zQb4x8)4NBUM&k#$%7^ItJg-IXotYC)|lrhlX4@((eU!CvP z&37@P;I~<_I+l`0+eG9iXIKls3PUFq`h4pRfOI8^`qicVw?DpYcNFO*_Uv!jBnb4b+m7dYx0R3*_ z-${GDSiyUM|La*@+p_XRyjXXg7Rz6BM|&j$rmXg?|6&EWdX4*q4Gda>{SpsU9$4oq z>wOLOzr9P$`m<`WSonpX7ymw&P2_9+`^a3TUSCQ8&$zrZ8b3C@xBox>i~jd0<>*Dq zERP*z#r;I&z>taoxSrgkZ-CWYg(3qY!Nj@v_u1Sl*Q7|m$bfR)g8q&VkgKT$H4fYU zB(DE4_+-v2EZc?=+hnfs`pAm%h|4D0$>m7be@2%IvZWJL;J>d9ggbI?yK=m z>)?Mp5x^N#slSE~a5vk1`2J7htDcXoISJ9r6B$ zg8!94g&caY?yc9L>=3y=C&yscPkMwc@TF{uTuNnKN(N$`II|8K|szmZ9x-)W3#{Ih-qb3m7_KZBf~ zSo;TE^mgIbH-4rUtlw|MzvRg3Bll%(+3{;5EPT7hZpB}FZrfFUG`{6|SfGbt9f*1L zyX&)P{PMS>_O%EGeH@=4&y}P2IrDFRPI3UIf+ni~w!}ZVk(fxP zfyWXO(QaBW@pQrf6j_kxa&5}l=N+Oy-hY{<5X(wgI~rT;C?xm^Ro=C-$KHS9KON5P z`D?^)Z~TOVkrh*T&ChVkx3$0aaBym3@&|S%s?x4)M`p-t;Qv>2{vY2snCyRhf6hY& z+<^UmIo`mNjfI)c^I~&K>#Ek*=~nkxdkLa{hr;ha4%fdl+5da=*og}DKZE^yiTgdt z^N-*OoP?%Yv-@-U+B`^h%MtYac52mubga0i`CWR}4Wk}*HFWT@=+4ysCRT3sZ_r<) zf#{##4~VRY)oq5bx;6HFP#n*{gMTY_+=_m8Do>vZ|B3h)ya%_j8Nw|1y7q<^ir>ml zPDQ`bJS~YxjuMXyFDd%PznfV_kwf|d#vRoE2jH>)p}AaZJ30aWjtqdlO!fRORlt7* z|NZFkvpu%c53&3wq4!s1^5;OV_(|wH1piOhPOYs^1;AzSzGKj%(f{IK2@w3t3fS3dUDk-PfB9oM zq#3-!$#Q1?{s8;)7tEy7`gg^;ULyg@ZP9^Q>mB?D_r(uZ6J{$iL9}?k^Q;-RJAtmd zu>cO@8(FuYwDLO#`@z4roqir7RFsQjJNGBzpNL=a8e-)akKadwJ|6UO@e4ZgA-Z2l zlmC%2%OVMfRoc{EyVLQt5^u%= z&g1v*e0AN|bzb{>eLu(XId<3t((dx}DLN?pi+iX-*m*@lZ9G1_3cDd&oX_t}9!K%b zC@di)SCkEyb|luj$jb1eblnm~R)zcyP3Z%8LVgDL-vj*LN=)@na)1xQL$ZwQpHjGf z9ddvV#|v;E+P@*#Z-&orIQi69QCV?nY0m`z3*i5qieIpz?F-*y{||wSyo~IA5Y4}W zUvDM$+f}(ka@*vVQ2`+Se|@GGJwWDx-F6^3_5KF~kPJ|#EP4MtVWJP5_7Hr4J=sCZ zn%@tdas$4uNpOgc>~dT8#=G^N^uPCcpgG;`I+GqcU;c8t9M z_h6lrm(+#tTA!5|4?ocylmn7)AFHCj`W~?!S}(7G*Cf7utVw)xKVR!<%!?1ip;-Vo zzyS1K%8^ocuXbFkok)Ov_?7DOTMeKy!FhBH83kujUUEx5sp`1YIb1eCd*nhVe#_b5 ze@tdRlfT-5|F5%cV2m@+A#2$`D`5W8|4Vakk^O&h{+s-vWbW;SAO9(IR7dRpoAC6# zO{ePC~Y84HTB_Nbr|At*JDd4D~ z_<$yWRRg86%+;Ms_nI*{e@IM1x?9mn$MGyFWEt2q5I#r82b~#U&9B!{9+7j4!V2;2 z%4F(yqMGv7{Hyuh>8CP{YUmQ?`5X-X7ZhJ(qT=?Md7g7bFSpWxNfvdx(>Snq!i&{NzuYv1o7Et)? zw5!uyD|ui~xOa5ydh0uJep>@ZfpxyoZnWr?^c-at^-OYqmZI?n^DO1(y8tvOR=j#R7$Y zeNWXlHs?1x1smZCe3C=>B{i9;D;!QW-0ByiNx|w0I+Sd}9Qa?7`90H}>fbN3&8hyq zHPIhY`=d@E@8#++q37HDV0_h8i8^gS^>$=0&OqD0Q(8)g+J0p{m{PkLkKkNtSD%6d zJVPAte00}mbP6~do|-Lg!c%=7tK)FtjQihQb<^ShD(d~4DLqyhT>H0=M?4&WAW%vw!rHja+WK%6eqU@G`1N_hDSc?Bv zv%qg50#J!5K*wb(WnaY4b8x1ZS%K~_lXhlIihs!g&CGE0&ogG#_eXwi&6R9|XX$2Q z|I4TwQOAq&`pY}px=y<`SgR$0uq@O^wNGUH`xT6RAu+W80^Pycbz8oAO)+TzGCa4;5~4iPjdSaNo%bt86j8UrvylGX8|*3jt~sBo z0n+eRKIIh9Rz3$vOvn;Vmm&2m0gQjk%#ak82XU!2@JgoM09Er2BLCuE-tTDmkmnhw zpSS#fs`wNBHP!DFWb}3T3Pyl;)dX}$k{`@}RRE}Wkm3P{V_E%PGA6SM)4Ff=cJSYn z`2Tb~$I2pg_WuJ3{%hqY(6xFn^ZKgL!)JN%SF-<4A-=y9KmVWf|7gyXii-IE*1`K9 zBl`CYEZ}xDRw=WpCKmhB@B4jv)n82BU(Le5;k^s#SamFU@XgV}il@u_r`$j3|LwV@ z+&NhQ`Y+#KfpgOK^0A9m3$51WX5T_ypfNPRA0rJe-mT||8936X=T=Md|J17|UNf~4 zBq3xeNSiB?XK$d+=v?T1%bN1-Tj>)FZ$P?SP30@WP~|0D8K=>oEAVKDx? z*9zN^8PU5qn)u(H^htQL_zm*_cSd@)he7R&52YSQ3oy?n*#`)f!|;NiU2BSS@W)I^9tq& zk^zBoJtORYvkAY4AE8UVmSsus3rz#smo<_NByQ0Mv@J&~ACETncbD8ViwT`B{D-6q zxu@@G9dElp*thI6e+Uae62P++Tk@-%hD9_B-L6_lb@+++UtPXuJ!C**@U0wxi&?ed zTvrdkZeU-QoFstq0F?_c2utFJl2Mt5GiBKW!T;ykCb<*w8ZTz&tl)BflKrB_`hORqRQKYgs*E;LP3jY5`c^Ef$$XkUlS#iDLH-gV|KsrxY{RVTd+2R*Jehx$ z@l-v6@Bd6>K=r~G`9*MmVa%HN{WxJ*^}EXdb7U@+0DjdJ|9S=4@8%ZP^T9K0PsrMc*ERmd_pSG(`FBF1 zS#~)FSQ(#ZJL0J~H*=0KR4p5Zc`=K;J$%Q>;>XBs&duCZ;|BFc~{=Xpi zVs3XTR=>plUsNd2uli0VRqTRwdK@19hv`&Rg!@sO0B6@YuTD0;G_m-#wZBp4 zIv^oh=!?F9fmrKr+2PXN_6-Qp!oT|eD5@`fN;6yM>s2I0q{XG-jep(e_mGVsS>j8f zUx$4Tk}QtRTupHO}ze5{l0bZNmnBR^r$WyWZ|0DyTeeqB-daoo>vX=GD z!tpzj>C+cE+LazEExA0JmAxANKaA*WwbE}`-4lo#eo>f(SLF?|sVnE-fw?_^2Vfcg ze@$+kMh3t>x!0)eu9JNwGX?zrGqaJponD~9*>Gn6p%u-Ss-_P0lb@hnwD+B|m4AwMvvl;kT zH}qquiFg>seJHEpZ>#mNe?;F||BZI9jP5i05$=t7ucoAF@F!o_y;^6@1dzr*2su2P zHBk&e{n^FDgnU^!4Y<_Iwhrj|gV6Rpxu$L*%H=!+X`m`#RW5Ym+yHz8pVIwnWoCOa z#BR%elx>Kn8VdjBk>ieR6@heWJTC15}n{J$!%CGVbV z^F3$C_C)yX^?uUk(&xgwv99O){jB+oe#;717X{|!t8nztkqt!;cE#>!P5k4E{Q7*B zN{H*}hW2A&cXD|SERMyeKMQ~9SH<1X{X?1dGX`1O2iv~~-2XDFf$xL?9Lbp`^Z;2# z#$fZ}AB7co5x=HCOO5>dTkyXW2Db`7&NSqCz1*AG3E2j80J#DCzd~jc_M<8Q6-jq) zysH3%<7#JX*1e*C>KG@ETNjS2s{cE%a&JxIT#?i2y{bKEUFDcyx}!rXq?oWiG(Rv3 z%o+TO<@rE!&~zN|Hzx?{P5`<>Sw94pc;X{3Ks&Ol# z2f-HfO7{P4EmL&M(n7Cf+2FsGL7I5A^nVpz^-_9~13n2kg{0s3ud`*wiG_c$GEff)z4JFB9-0zEBrO6(u18M{E<>yz1fGPq#|9cQp zL36`ZH`Jeg0w0wel3ASDHhXY_{|0pbyaoJk;8=qN@BnOb0rCG`$X9tQ-wyx%w}swl zs2{0O8Gs+^e4>0$;sg8<8=wg_z&p?ZXf}GP5*2?Bqxl~vR`@KJ^U41`9}Bl)@dI)Q zPKK|3pI=M{V1KG%J@?BQJ&yjl8c@t%xi*pW=O~@DuJI@dAUul&SSJgCw)VyM)Bm#n z_2|IAUc>XhoOz^5-EBaoYy@k0>3kny#mjpT=ocrj{LvZt{i6q{q=hVfNfpI2^nGN} zM8=XN*)GVPR#X5@UiEycplc=BUf8l>I_&*`nAomUxfX$cz zGIb07F9X@?p6kvS$^#bm!-HNKq_k#dspqGE2QDG|~U@=&S1BFXi=rl>o+V>en~^ zrL~2B&oi=hEWYmCr}Q-f|CT7a^tC{}|C({w@31#3DEzCJy8Nb{@QJR$0+4Stm3jKE z`Znoz_PPZAecoO|ujkf}G`sSurubLpp5}q8lDjcz*DA`t(U9x%t*Am$)qv&~%Kq)n zZ#fuWz;Jwiisp7sBtsuG!Q0IKo|`Gj_96cFLAE~izfPW+lzfWM;QjYev9$>F ztAgt`>Ny(cKFm(ecF2Cg43I&I{-208sE-~@@o(%aLq=HH2PAi8$0+irX;F$U*MU!7 z4EMheEcSZ-ldNGr+Z)5jCoxO(dGYYpIg@p^YPeV36>$U{vRxP0nRZFS&+{9 zvK~%RYJMJey?KBm1B&)p62wF^O+MQ?8$dEc$d34bU|-MlvqK7mRiRv?>L5)sNF^I( zLp3AXz61$ySz;Uc`v%s9@Azi=-s#~L(PdZz!fYy8!xAv|<5Hb~E&>175y4mffl)68 zP@msQ5Gxj>rosqDWVpneF_bOe!#L-{3D1Jstk6PW(fE;BvzZKfl8E!>{CJSWk>0AGdyd`<6OAgBUQZg<^HSZe zcarq*vn_FiesKX?{Ccde>D?qZlr5-gUwsGt_hEKp{8vEsG$r~uERc+fxc$O`X~5TZzcBHn;d};S=mFWs9IV$ zgc$(i(f^-f^{Zn0A@sj80Br%3$E|I9r)I64&-a6dyl7lz}n1@G7`-H{VJ)J z)6ARkWd1yd%o)k9-ZSC#*2`NX(PH+p#L?I_Ms2Y(FNR=T{2L zKrE{jGUhDeBAUJ0fnTQqh*w>tJb;?lEN^T>t}7>?HrHD7dk;odjN};3HC1yf1E3FC z+?z_8WUk4)Pye6Gv#(_L&K;h+9GibN3}7vLXc0cZ2e|f2?f~rdZRp$eMxj04ypM`C z$xRzeHOhSU<&#@{{+Gj6uYeI;kH)Hje)#*;eP#Wt@=q1@uC0?^5C5NVYW;6sZ@fFtK0JBCYl`RS7G!@w zWzb)T=%aFvx8pserR4>TSf8v4OBTtJzZcKEN5W`Ohb+{~W8EBM10E@P7jx7Vf1J&>Xn`3v^cbjJ^sl zk##W@+p8{hmGhXxTt*M@0fkS9(A3Uw)nk!y_ae%)jA%l>y{({l~v19X1_ zeN)K+eS7&6Cd=uHw%8O7=a?Qj8upX^Eg0o=@>Dz`h z)HT~X<~#oWx>tu+AkKLueM^_o5y*AHE%|khrw(v7`nyk}>1FX7|BaCjiU`UhSd;Im zZmn%$Y)2rUj^Y@}?{_HjLw!K|5J_BHQk}Z+S2OkL67_s`Px3`Cq5s#z=zmoJsRzh| zT>F9PU$@c!=cvL{bpM|~mRb$i|9MoXtR&m-apwJ8gS9%0;}j}a&%t(WMArIVrQ6}9 z-h?0U%HkN9>ORHa3(wL0>zcw?vVgzH-;ECJhb>$Ogh^}KQnv5kaewvyaYqex08^yi z2(^9}@^yqHa6c|1*z7#;D&4O~`VpEZQiXS|iww{NPxQmyPYmmRNdaAx1gM05Y=ng<{oj{8F7{s^ zopCJ@?j=~c2gCkt^Gh?u{?#5$(Qp5icfS$fT`YX3T2Q;b{26OMM+TdMq7itxp2Yh% z5q(t~TuMvZ`ZfxMerNqzJ4;)K2SAzs%4=}WUt~Ckg;O<=0IDMlnIY}3BhC6r@oyi3 z@UKJfEgy+0=cqvzs2k0CCuZ6x{itLbc#&z7%dZhV~T19JoKhw_^{+$Kn z>fmL-%=|Es7_ zeVVG@C$UKG#1pZ#dE0b&+_J%Q%wLZmgZkSg!HSc2+%r0)a&!n6E_ zj`qpZ7x-5P0ObHk0>}<Lne`tSaG#UTV zAz(Ycrz(&4hxd%hPs%@$-?=cXFqxT(PcRF(ad8~p|Mk=WeocI}4L-lih^9WA;Qvu1 zz~kgrJzx3?mp8N4`_cp80X&BPBm-y|Gk`AUbshh|5Bx92`hSRCE~DrG@?Q2PraS$X zSpfe3nOTXY+KruJ{0k%UU&SrqX>ayY7j#BHc1|-Sg(hB%A>%~z_mue~Tr1`m+D$k% z&kqSu-hXXf7;+;1S_j7Sd{){qG6UW9b8g8~WE-CXgWVf!n~e*9sZU-KKyttm!TjG5 zK-UBa@qzx32FeMPC6L+xj{Xb(mLPg3aRXiY(Ch1(WkD4rqB`&j|C%MD&(IQ1z8L@L zIUvjIC%%=D?(eF#vYbn~e%$Xz82_o%wDwPH0CZ0aqIeg9|2h1Y9l^i)weFWlfQI}k z?Ksr`(=z~CV8aat_a~w4#~}qqBn+TG==LABtsqAb(Hd zIFjoBy zQ%M1#P5C-z_O`=?eH~)quJsN4hhM;PKrwyw5UGgIt~Lyy7Pywpu6ccW53%*A=MO)E z`Mv#s@+Bx=u?)M!lF2el?8Gz1h5xYn{a24v#ge8D*vD9zsApF^s#g*L+z#D+4J%^& zk0D#?9`b*_DDIxb|IVSu%Kgkyeuz1Xk5EzlB<%ksDl5-tl`F%o=8=t65&R!P1;7Np z%WI&10qlPvznUrmCgq0b_QwA|CDH#2GQ%_5WtQWk?!oS;p6Gn@fB68cEp@5fRz-|@ zu#4*PxZ22z3();*Vd6(26QrN)vo>2d_N}=j0aEk}`#$U|h(|gGD12DI#qCt*Df3@B zH5-Wl3}<(H){l6-JbT8b`MK->%K+Oi;t9$C5K`lOd^g?J<6RR}o$o9yFL@FAU;IHw zihW(P9PnS+62`xxYmF29O9C|{K01$i8rQ;*{B5-sVgUYYiRWG**7vEjb2f0SjyaK@ zr9*426}KFfmsPLWofzP3WaG8ya`|Ue3#_@On)<1UADY!tmqXTnPkcAWA}P*ALY>Gj zcqARclm*ZWn_xN}0Q+YiBm>}>>`MCocgACM3(S9Gg8volqs82MFIO{vVg6k*02a`# zu0MKb2ei|z#G}4tO6^DN%-g6;8OE+`LDp(p@P9tX7^2p-@B_ZWo<5H(;3o8|EEYea zhdlk#|Fw_+ssNG&;4B^2APcpQ+=*}K-IT>6|AZ|ReNNRRmGC(O>H1tT@h>#K zzK6bpzLBJgtD7XdDj|6~kO6oZJwQvb-7hQLgI!gE{eK)?{clTV0PI4=-;u20R4OXw z;bmC{{-0pIUx5MKjpwCJ>5j})nq3?X{#R2)@HG{hyHfwBx(#&z*BtPNa@W((xhneq z=4{XG@96&{!2c?|YJJ%+>VmD>SoOnIEYMm^RwmGzW>0^VhiT-K$+}G^A`n_z&hADDmFc-1F`uG2%E-#ums^>)iUaVqMU;8{z(SdBcMyYwvMf3ff#_Euk0V$|C&OsZe)8P zB?lp^*5j8O3I6OKjg|1X*Y~%sH`4X(BM(w%(slJMor!0bUrnu%rh!aJs*aE0G0JZg zuMk(O!>Xz(xH-SEqJYBxP_+Me{Js;&890vU;SpQ#Kawn>&r7;yW@diP9F)C>4q&aw z7`utRBmS=*Knu|#OLDK~cBNwfb>{!gW1n^Vp^N}#iegtY*T!oOI*(Bcjo z!j5#lF0Gj(5@1h&e0}l*geU&5-a6+6m=`#XCmX{)xZRWLzgk$#)p>741gyWs4~$=- zSNN6BK4m4syFR7RUsCSV>a$8_NH$2@TZ$R~I^*wP`$auK)dO%a5_KhW0K3uya7N+j z!awkkoI(EYZA45q7Jn}`gX3R}H+3;J6|1PMcnnYLCOiNe@CpvavMQ85L(kB|;s48# zA@AmoM*_Ww&sM#g)xYs!ezz%!{(l$#-z)nc@;pXmcBKQjJAgX=ALv()EcXLZ{~y(m zcg2pBcB{@#8bfaTTDanIocG?4Ia$NkAOTLt>K};@ zus3pH7+p&~ENR1Rs88qsctiFxGJuc4YFq~Tg@5_~#3r9517Hl^s?N;+{Hf4{ioU0c zmC*8YnNVG%_uppn(oR4p?L}pJC2~`gseXQvyV9X_r_ztG0A>>bJdsJaor_hA-%|;2 z9bGFjg?0I>lNf&xdjb`8v!^~he&Xx0)Wd@>xuE~9 z)q&$cMk3$H0xhhlP&%CZ|WXJqPR z-h{;uXIDu72m6;Shtx&cacTTpPp7^=Yk#qS`!@V7 zg;5fkZ%d%SMh6Gn&{me3viBPCor}@`qouNd!cF1B|mxOZ1vLw9@L|e=Ppdhmy+ZhTvZoKoc1MK4^V) zZ&ck+6Rd&#xOODA)MVm?(~(dY!2ymX8$flPhrzL4FKLvyj0ivjvP54e1K=p|zZCti z4nWEPT7V3Ag8AQvU8g`Ra!j8_@&!MKs>9!k&d!iGd#l7p{#aw^c1131>o&(B;3@ zyVk9;q~#}+EiE6NaW5ae<$(EqdHh=vsFRPp^kNNr;VYB%UmgChDP9$kCi2}$gWLb8 zcN7;8a(&&*Ai5E#D%lbtdXuG}Jn-*NZ9joHgzbr)`OLMjd3s>`%pwEepY-oI2b<`h z#eV4j>p}lA*6Y(^MY8N$Qf<^HZu_}fY>xly?qbO4=7e)lffmok@US}+6rZhrp`>=e%ccjuq9N47F$HTzF_ zthLdTjj(60!1H%EQlJ+*&$vx_Y^vj9f5v_lBhcf@`@2%c>*~MQya;9& zk{y-?ivQICfx>??n1E^u#0nb1lkS57+yt)NuT$u^^z&bRTd#=MFU7xC(efeWq2;P? z*$%K|kS{=Ueg>k`?}sHF$92v6lvI!ppgw=Qf_ix;WdU?Y-%kMjb2w&D^LH^G)e-m& zdh-gGkY7(MT=wHZg`YG3)jWIueTO#UG9{ATMjL#(rpiBjQM*Xt{)8ABL`IY3o z5dW`91h5M|5N=`)=(qX3$lsq&WmQi)fK4r~EWV2W?+@_bj2xh|>G(ARAK()5Dpz3t zzsp)rhIw_NBj8)b8{ktP;y>8Cu#kwtzv#<1k0KMUKjnRX&CB`BQESNxzdac*tNp0e1A3Jk|!j3W-8udvH!rc_pWg3y=w+5 zJ0O^^89{k@5z-*6UU&K1+8)sBsyFqll4p?sSF%er={xLnOM%onHzI=vNE%ooNYAJK z4c9tI9w?UCfbXt40Obbw@hSe(3;?~dk*`zj~yp1FBZZ+@dydwrSvh7IMJd zkwVW0CkmA78|#Ssy{2MALc6uRu3M7EIqQA<0d-D3z&nx47of=-^1b#)4m3}$HRb(f zzXkrsu#R`*zgdiRau+=AEY??D-3B5To+{Zhb7E#qW+%GDY|K^z|2JbpZUq02!6W4X zSb`+@GS>oc-JkiPOaT3^&DRY3Aeoe*^pU8sdM$iTs_;yvm#LT2JMe#{cut zReRy7evT;Mt#|=718g^DfGwsEU=yO&^T>l8fHmwH;Og}yjc=_V`rqh_Teb_#0u;$p z?=AWI6bFnx;{pS77&{K|nbOn^xP~CrPaVh<;`T_X>Wr0ZI7`cu+nh{9;*bXrN z7s_=lB!He}x#Tl}`|=DxUQG2Z-jR2!OXq_F!2h-R1ylk5m~Tl{AZFXLEOtyCRqs+8SpUiLI|2RBEwb{3df+@FGeq%`hb^lQpdF?V#G{}A5PN0CksaQ$o;peg|l z!+Ws4WQWX=_=Zce1DOE68yaH@sDB&@pdNsV0LmNiDLsJ3=ike>AzJlDp*~1{iWt?A zOr~51E4`ntv?HkpJQv+G9b4dLnE#3R|4+aw=*0xkJktA=r%T5Hl@H*&9iJ07h$KYK#9e)iMM zt(m@=UtobpvIFJ$i=I)66uEC|lBmN(m2GalPy{YNP%A|5+VNX`>6y(;5q!U>9 zL-n1t2KvrEbjy;{(ox@B*SvaOEnT;ajWsp?Edg9{tt@~E^mCobySC?hHNfi7G%)oA z)2Gv%zx}v<2vYPmJgHA0Q8&Q>rs6pqhfSc)&S$_1N|*sKBlAtB3p}xyJ1ln{R{uKm z#|AD}vWu2uPrgeJfU)@}^EIhgdAhJ?aWoeFAH}ZNqIbjdZ(&Cc0sohP{u$tZ3VMGC z_CPQGw;%^#TXNN2VYbZ#Jb-PBm5SfeN$4uF)^{#!!UH%OUDyy!p2pt*%@*7Q((PF{ z)_hKv5mR>*AT)fc_fs3d(|c?SR0Z`$zwqzeeZ}{8NTiJ9jdj0}FRMKyfa8AUwZ40k zm1it^uIvVRDD+H!R>v@PxefTQLd2stwGS831MvR*!&Ct^F5FP~7x=%F{J%Hw{nvms zje|+4+J6kksYrln_y9j6+hQ&L|1sGA-z3>T+ZE^2QRQ=9t0vX|i^$!)mtRl)KOcq* z+z9^b=f2K9kUbIne?$k6u9T#H!}+*;n(LlWp#`RgGg{F?2MPg4_Jbrn{sKB@Gp(W(pp zqt@6o`gJMWzrvRP>iel2A9*ij>r1xT+L6>#q{F)1nF5jfYblVjemzEq{f5r`2@hgz zzJc+-51&u?m&c(#ns_!j0JreBEvpwYz-wak>ziBmYc;)Q#(1oV?oZd!XY~l%R<5&h z{#AG4`M1IVG>b_UKZ^W`lc*L@v%z$$2djA@_+N^p|9Z(QFo3&=16+Uv7zPJ80c+)p zlJ@k5{V=nCc2f3-Y;Wd9-p}q?j|N#s3_y|OHMy5^r9`Zj(Xsj*V$~JsR(T^#bys}U z7o+npLr#Vjp6R&1>l^IE3gD^fdALYeF^_Ro(@27Wv2ug&t=NP1*juAnKWV3WkEYCC=OVi$?ee8_ zdZg}=RM25e#LhP}?#AAnOYCm}RzN2{pYZQoePKWFFJxLXi?0X%D@NbmMvnc(qJUjdU&Hwl0UHT=N5_7?o@}$h% zt;vn)6wSWvZyevhJTv&K{Iryim!Sud8+&4?>iS6a82T+x(AkeDTk)ij3pmvC|v@YG5@!u^e6m< z%c*WXtk{ZffIpG%J`c`&0L*m(nd?L7h*bj)?g=|WS}}mEt^cc`{pJ0ygAAy_<6Y&aK7H;)ruS4=Am;=N&F1lDCC0wG zkz4!gQ znXTLzSvn8j>cgz+1em~CtnYmA{}cRw9g^WV^#5nrQwK6n=?|GRsTU)wS!q>Ooh zY=FvqDn;2luqN`OI(JHWK^@V>tI@UR;ggg0H)HbZ7{UIg{>HI3@!gGW>G_Zy#=2ic z*L~iX^7r>8=6DZLfCZ z?mvoO_zEO#rOesP0I!-Imwk!|;0g4NScuMFhYVOv_TNg54Y@CJ^~u-$Ha{HOJ%itA z7}+Q97aL)vo&istPYm!)eA6>Q|3zr6@!0++;JZ2<2~eZ-Px{(Fj|Xrf74ALhb+-*! zfa{1Q4k~O{cm&(^7`)*PL880ym_G|I&aPMAJl6+VCrca4CU=cc9(>09AEDj4-cf(y z-BQ4px=(#Sg?%42Iir|?`-UjbPdeNAyvi0b|KHm3_e27r-;w{+4i%Ws1F-+=^B&!%M@!v6^H|5*^#^&UZFGsYN-&n&8)O?q2YZ!dD zFR|uS$vGOSbT9FgPr?72_yN}P8D|g&918~+j|ZSMGdi;_vvYPtb}2OgL+}911Np-L z+Aa8BOBc{>*|m={1#EiZGy2sHBn$BKVoUV=dF;qX&`jSG3%C#6KY{&vI-GSpn(BIL zf*O`)=?3@|_@7J`;NfHeRwrxa6}pKXL+9F;m@Ix;{y=7dDGNw?QYaTwR$ZN@=ju|r zSvh)|q$$m6t!y8>D|ZzOlu`73@<9pd6hSa%Pl79@{e;X3uZt$-;;181jJA(dypV8Z~e>TSi@N+Uv$p5*99ihGv z>WZr_G1_6R*v&oAChGXplKX0LPLp?5v$w7$e^i++p}W0P1M9}LWP)~OXu8EAi>i#NucN{!{;ryq@X>+=@8i;q+0w zi&~2JumCpmS8;&(=z-Ia0B7I<_@<;+<~||-2cs$elkJt8fEBqSL4PoShjUNozM~58 zmi#}k0G=uA0{*9h|K@PfiRh*$nN|NWmv^DLPR0|co;7EoyRKrEU0wWtKhV>1WAQ$8 z+$eT>)8a1l0#yv43BId^c&`q}0;ml_l+~+h9HCwPc%+ww9-R$&kXG8*&+baR9eJ!g z`@+9x@i-v-<*BZ5J_+WoN+Zf>ol&* zstg_OJsrqSIf3@6aUXj(9^+^DzI2a=4PYz4k5$$GCB&*$kVP|`S5xfH5LcBfY%#w+A5Ni;n*Nm2K?4MgI%`>b+kxc^6v; zRf)Du2LBJSYRUpOVvX7Ko9nx3O}tLJWuJ)TKpG7(uS)g5o?#B4mDEHa@qup0$=i`P zXCpaf@8}nm{#VRX6TzBbryL5(Z-bS*$gvUr|1?}+H4NZXY=Qn^Sr%`*b*d zzx|UAR_DMD+7th;KppU(bOYIl&3Yc1z6{xzWbXC|{1e=P2e^t>KF-x?w*ClU$hUV1P-z;Sc{oQ55695Iy|rC+d; zgYl$3M;^ttg{kBdypQ+)4yHHWk>LL!Zao11ADi1Z_bK&%o$3FxAahJ+kIZBI>Ibk- z+#5zVe>--F>V5iQd27~BGxl^_n4xU{r7+o%>}2P&Sq7x24sM(7X6@+mkMeDuN%?`b ze(ZJcciRN&TRRG0)x%h*mmrVSrNoCBfH4*lz;<~^0&)6a?Be3?X`Z6rm=65QUl{!1 zfAMdblFEyeZ}>eO|5sn#)?h9wfc37G`34uVZmaqH{Xk+w?5(o{(L%CU(NZ8Pfg}kn z4ZU7ow^&o1)9dI}{krlns29Ms;C~`0S2VIgB3sn!ToE4k|Is|K8<6H3u=O9||4a1! z+5jWC5d5ErKG;AG(7Bm6GA)Pze8LofW6>N7z`s3!s}gVWYWe_Y@LO%jH!9r3e(g>^ z@6*L9?9jWhOxM6vrxEv?g#JI4p4I!J#ror?9)ka`G7_LFQ|&UP?^4@#1vTrP>2~)o ze1P%*R4BYmC!ldy0GbA_dVK48p*@|R;U0eC1Gdy97i0@a+X`v+6sXUqn16Y@KcWEk z3@Gv^8^BCJ{(spD?)arhfGhokfBEpl{DpmMd|_RO{QN#F4;-!VrLeF2!tXDeMG`>S zNY(g$&GKDY!!zi8@-4kT$J4ueCH=p@#-rLcng96`dDWFl55nf3%>6jThLrj+2DwLB7Gg`2OayFE#JaGYMUvC|xd82M@3|7ygCH zz`q%~9~1Z3FCcbc%%_i*9QZ5#^*FPANgB(Xcu(CD$~7geHBvJ8f7t(fg5Z;oUK_}= zQME+iH1+AlDp(3?CC#gX1$k|S@>nsgqUC|l=(WXuk@7sJw~lGD>RVRg#?kp-vz zjy1T}3aNe!-juueMOR>1Z2XM3&mRO$GPaLd2rL4kp%PErI+KM>PZKXvDmFA zk^`_G(qLb9aark?NQ^u20dy@^BL?s^_&=ghweTTP@C)-tzyO+oOwZg>ZojMT-SbEG zxxIA07Wdg>CGW-I@d`JcT4GthX#?!;palAf}zdm?7ugO1_-;EmR`pHBzz*LcOU{FBUTn3=l^ z^v{L)FHHP@Q*uY9kw8ub>{@jvG z7yxX!dsQ@TcJPI<&N-qZ-+e4?oD^SpPA;v$eUnRD=s2yb}9OQ z3O>pP;7pT=U7IBIyQf!qAE5CW5j}YUgmI%+@hkr4DVLtv_64=M* z3Ze#l>NenC6~K-z=-xe8)gf5ak5UUfnspRbjoR{v){0m{rVL8g99K0{vZjx9bM!ww z=U3A&qD~2?!|w0Glh>OyQ;y@l{8il4)137PRRG z)qJdg7w`n$gGb<0ynoY?2RE{l4}%GGM+#Id{gvr<^NAdGg#Uj_&C6u)U!(9vekq6; z3j=6J6hK}1W%IkkhvM?OrLG?K1_=MI>eb_fR%vSCRV+YQ^ZmlVGXd=ZkYymNz|lYX z{^S9yjXVhdpk+Wv0LL04?@$cDy5D*}FfMkWGl~@Guty@U+mk5!MZO7n{ySj%pNH-L zRlYTr`xE3+??`8qzQv=+sGL?@SA3W3pFPm}gNd7Tgge#8)87gnbrW4cR#E{l6N%as z>wi6~-=O#jofKMPKMlzL4p*C%X#acZ05%`?zl2}#s@y@$|J}g+pQhPQGPh-VGyi)Q zvEnxDQf0!cOT3tWe{eULV-TEGKJD)4h1qC|+1QP}*}>kM_5d2|q4UEQ*zdnG;IEuO zkMu4t&w1mz?+aer1%K2G*z-d~wN&-%iXHVPbDuBc-^@O>0z&(X;g`q1`MdD%^Txfd zS18#zIeg}?_;37+`-k`)LW)Qh7~!h_@s#w|;9r@NssN08_Xcg(V{6aDE|)AVF9G6P z>#ucsMEQk%9oGK7Zgl%HeHC4cd;I7QSZLSrTiw9l7T{kJKygo50GfQ#l+Q7UPjeL< z;T9?s=D@Eu(^q*7GUH-+*2#D*o-e6KAJ9KCW3rEBx6Acna{RrC{#PHsbzED;;VhtG zbgigK7Vy6dW9aQyi9UcAq51D%e{P~W$_JiK-^z7VtS?7z-GJxnY%GD6NPr)x z1R75SV29#Yc)e~cjGzkWhx}@~i;W{Awi5`c4pM|{YjRcYyQ8?dsBXdx{NO z28ai!zScea907>@fB6N(0#f|fO=Lh#&bX7enS=TPI`U}$g0*^iop0?f4IlQt^9AIW zw7)RC2g+jzsk9f;rWv(P$5Kb}EPcNYCyw$eqN5HG(J^HHUrCqr)pS<;hRI*8;ZN=H zp|qu=%3$oN%aN~h;r=(F{ST%$=x@waxR4m^`*=`l6y_mSz98#&Cbs`9&@b=b68_K5 zotNvD%j8yOPs=vUe!%>{12R7#>qmilO^Q*hNOOLK{vjNP^S2N7Yg_(aiguWfE*{Eb z#Z0|F%ky?~_t55{(TsLqmVdOlfX`S$_)_OX2DCu>TmW}|oPBvT?`Vy$8s5OaW)%wk zI?Tv*X&vtvpsjo%*SPgx-zV9iL+IZrIV1)C7yXU^gk2$9!G1u!m$`>}3D-&1Pg79q zqGxqp(n`GnTVpe+)<#)*t&yhU>W+-0-`wja9P64RD!P?ELf8B#v!h@Ux@G*E8#LoR z`r-YXi3FIyHQ`=f07(G(PSpXlHNWvu@Po_o5?l^5d5o(6kMRP|#R52;aVuofF&6)fNxIstbgUbhV~fR77(=|A-w89>8`PTh9IKVS#s{k7V9u8M}7@5r9rW>q+7Y zr=b};;RCckUi@B`yK?j81#sVAck&MXFK(ddV07;i9=F}Xwu8|-1`skJ@Gs`C8~||u z;a|*OuWBEl=65I#8QFlA0M_h!4`=jQ;%G9FJ;NP6fHFWHH2Qv+_(j=AS& zF{}FrDt^x5+kZgSZ)-9sCXh=pgZSts`2X+l|895yI)VQ-F#jX5uvAkunJlZ5kOm!K z1ewxj@xJU|d>aqKc7+?Mo_HIJ|IQ@#cRzOj5~RUH!~#ywbi8?9t8Zr|_>nLY5AaObyY)Gm{9$Fr;bfIT4=q zjm_`P^}U{!mqx#2ZP*6sqa)rg3&8f0Jpg|7PRR5r`1kI>2hbA4*W6+Q)Ik=g!b?2> z)C1^j4*3e6FZqt+WhDGncmT)Z5uRW2N68W70QDwU{O4>l=0@GZE?SQTpe*1ui3i|e zY63sWRmXevL4IIiBb|UJ7M~?vwJ%)td^`Y~!T*<~Ka-`VER{9j|8r`Cf1_*t&!wLt z18yfSxE}!8OeNqL@&I=(zDo|k35AA*kLUz+7WnT7{%eCrdE%n8kMVCl5S2Yfsx1O% z?#9&6B0AXp|K$mk6tESbYpMZMd{EZErhn8*@Ly|-2hjaQNE+0)xyAtm^g*xh!-~l7Re-GAhTYCRoKu6V0h0$0~XChyohwaZq z0?a}CYkuoW@P7-v+}h>-on4$gHd~$fUsq@L%e;cbAAknY+_(;)|Dc5V4<&nKDEeR1 zArC?$DCd7U8Dh#}4_zL3_DiuX*fWOoK;XeoqLbr`@ zvkr9-GX7igJ=6ijpUU<@byjf_*3&(3Yt2gVih2EvU7fQm(AiiC%S+2do%J)yYk&I^ z^csPF;a?HI{%H66;B1B%JU{fGd5maUZ=n!APwz&a}bR0XsOeWIRn>!}0yGuMrr-P*9%KMRMUwKlV7 z8?ZO;hxva=Kfs@vQu7M>eiicI6D9-w!toQcE8fC;Jsv(=g^r+)(?8&NJl;DM-z0x+ zM4=+{Yp>6bBnz+^TCyf+k%cdNT(*GXfnorf!y!$cvU}Zj?Ox0f*0iAVb9|)PT@j!h zU}XT=|EJ2I+6n$00g#_ik|Mkenn@HI-?qM)yyAKKH2OToygsRr@4h3J2C^WOLEuhh z`aCtLaOi~R|4by^m)QR26z0+k{oh3W4ukv8AoK58(4VEMw{mH7sw##P_iIX=uLhaE zeZc)_B*LiD9JA>|DYw-hVevf=tn(-s%KNOrF!7&j04@4i_j0OHQ8sQw6fINPox6(*- zuvYKh*s<8j4b>dbPP^MnHE%@Z_0A%}La-b4^zYFkU zE&-E0`6ga1Vcz)FWy+K+7q!O1wH~YW)Qb2Sw*0lKTT24Hiq~3??SxnN7VtlX-?Kp? zA*-VIo&8vi&)Sq<`w&>d34F4d{JP2ne1YHix&;5H@!U5`noIfH~|U z;a`)a)dzSfJ8J`#fP0a<{(XK7`?oP(s0WMh6|2MTS0}pvTM+*(Sbu`-wYT8|?_mSH z$MG)b)?>dO348sv_!#=`a%uq^V+A~qChSQTz;fyU4#kpf3M!S88|+`KS{gK_dI50u-Lb$h=b9dci*Kt6jTA6>we$7Ph>ryd*didk(aXsvR#sBSHl+1B2K(T#!^OR#~ z+=s3g?#)M{`><}?D`88(&yd`zf?uP3{vhU^+?;T9lid8%FovH?y~92W9_}U79(J+W!Th`Vcg28+J@jnE&Buh0*Mb z;Yfi)IgTbfa3%WTalFMNwrGFrCG9frLi1GbS8F%l6Ug@t4xX#$Swe)I(3$kCuIW`e z!W^AKsdGdyM1o5s)aivOsv2jK%b3lKI31=R+qrw1!4IIKhXWI5s)O1)c8C7 zuRh?G0D2D}mO8#vZE=eK=m2Q@U-)l=PF;XaJ&6^SwXXFsj)hvCvCfwS)O|*O;NR<| zTV7qu53jM$#R|qcsu#eaR88EAcV`^Gt-2-ep0EJbJ*y6~K9A_luYC-PwlMcp?mxLh^K0|X znOn01QL8(sSg(s_--PD>7aIR#B)~U`AK)uk|LgRteIfA#e8lxd?BaU#0$5Eg@Xf@# z`@>=XMfUqSg%e3x6OA7_-&{npCuBfa z8D8DswJ?Q*1w(t{OgzGW)V;RW58;Pyif5QKI zVgQ%sdgr#wJ)XTR+bR1KQ{LKVzCc4$uFV#fofm}Ztn{f=6nhZA-b}$DFJ_Qdy zo&Dm@9^Q%Gg{j5~jb*JC+DLm>Hop7|<+Z)fTjQs4Ae9&`@I0Q0KH7xd)U?kk|Fyb> zdfEIb4#Nwmb4Ge<*Sq@9w!3A3E{%2JUdPUfjIeF+_vm*QAiZ{~)qPFqc8~PhMA^i{ zrT-QG3;7^9wGXkBJ3!fN*0%i?9DAK&6=OX@a)vHX*H={jgqC{AYN-ZN^__|c)Zww3=`a+$UyY@(jJ2MQ#2AN^9|UJOk9E(JANFFV6O(|y zNG5@*514k6qJPUk{sMf<_ahBHBM*2Q*=rY3vwkrBYTt(ck0_Gm0WdsZVk^nWhRx|PZ)dM&65(^-5 z0R8;HzcYcw`klce|DYs3(c|9CuqUo!D;Br_0K z;`{%ZPKpN%!3i2~eGAiF&CXO=iWzbpF~*TxA}fz#(*4miKQz zW~uckJV)$*M{<820{g1{pU*F~I{D3J=g!Wx$^DXjh~6L7vzs#)WE$fATY|@D4EAYH z&^>@%Ivl_7SdOFF8R`;$HTz;Mv8&6t<@|MN9P6&oMk#8&2X(J~(t&=>quN>m=$^+UFo1jfmC2Q(8tpEFo_RWF=%;)!6op@|! zz~CC@J|g$OZ}tyne~rr2r1!@N4A^q*&qM($#B=zy!&`GSC7{u)Z&<3ixe7&RKd{DFGib};n$l;{?A7C=;x5;UBUm` zLi8I`IDbXnxrN?gC&25LpM} z@Zu9YCq96%{1sJ@?vI#)d4d=~dHdh~h^Sh0r{9kFHO3M3UkCT^NdKhSWInx9_^nW} z*n)nDmlf|~p3;lt{qCADfMNLfjwr23#iS;I{e$cG;63>rsrn4nREJfFuR~T&+EeNi^vM7ow+viQ|7?zUD;2wb?6;41N=XQ1W+F^)ssE|{uf{ke35I8 z1+WwOJEg_ZWC8qCY=&Jr67S*$mDMcUuIvT$)|J$;Ob7pW(Y5+HY=ezhvd5vp zY9aw%qZU9ufS$!Y=wbaVQvr`E>_ar`L2`i)!>830oGKSkmb7AM(d*luJh6FO0m|tU zuEp?G`76xFIm-nzh2a0H!E3a|@{dg5TF8Q`iPks59aqq#FGcVbM8G3fcbKmA*%&VE5uXR8PN7MRrO4iNyDRC*J>i zVQH)Q%^u;`nv^@3+`m;w^Qzfr=={+?QzP>$-nE<2Oqu{I{XYcUAIX13|BeNL55f-~ zq?%+5tX189Qub+Nm*219y-#I9=zl#cu9ues+T-d?XJ!!C*Xwja``^oFTZVVy0FWhJ zYY8B}9eUq$3YF8QjsU9cac-|HdPnok00Ql1{KmXq%`(D%eKUjq&HYdLfL4eQ7Vx0Vk)TQ-*Wm1spnHpaT!zas5# zIc)83*`O$d&bA`o=q$YZ^O57~@Te|l`lOOn`|@k5yGs}F-V^EHkE1_-yCa=c0n!Jp zu()Jrs(?Puw5ML=`RvZ@pGn~U3Ggp{;#nYK01Jr%?u17BC_ffG)&&%QN-uEb0WM%3 z;7(;t%37E0QT7U&e-atM>(KqnIX1%npTL5>oGgGY)C2uauGTsYX98>K$bvl?iX|S>|Y^UmWStss>i5e{EkAJ?*|XC|IZS^QbV?bUS~Jnxgqh4 zL-NPb<8V3Xubo)_%gCH~q3~fLLk*O=DBa7%->-?GZj0x?87p%T45=4Ul0S++6nCK# za3&U2rfi$CFX*i>nCR(GL{HBx)}-%eZzd=nfbV}*qW#tR>wbQvb?~)yNQ85V{r^no z&!e)HvoB;OWrk!Lk^TQTd*h^p^$kGh9s%|h`y0alGvMDF@crFSglI53#k(}vrtz#x z?_2L$;XLr4?&mn8N6YFL!u9xcU;A3fi2d1%7h^4NX6K$rY_c-i*2oi9g*F||1d3?| zo>pWjVf@RhC++TBy^sxI?OPW3e#-|*fE4Zjd(HkqOCjMtd;rq^&i_@PWX0j_0gz16 zA@^BAKG)S2lBO7g8%;Dzb8^kQw-a3&uB8Qe=RvGvpLf+dv11h zk_C7!`^fugWy1fZ|L^1f`rOaC-gK_)NZ-1uu=rQV1MWj)>Mr)`?qyxddcgobqI!Kk z{(v8e25bWVj}Z@i7fbeTa)k~hhh=A~0p7#!J(X<0MpUxBTUb;$yU?caul$O{1~`D4 z)*5J2`Tv#IuPB=EZw@a+`?^_x&Q=5G%IlGj&xao&EnkbX=KJ+PWuq`IJ(cf0{tA~(N+`+tV^zYMvsd+F!! zts|JDco)4B?!&k64!_LZVE=Bk{{q;*JT@zt{4+XN7wdmcc67Ez_8lg?9Z&C{Kk%xmK^7)-~?J?`M3;0x-^OolCEW{+F(|-%$8>R*>aF zYV+$6#`gbD`zr@nhuMNZhirez0ejZeTSNZ;mV5`zNZ*@J6>&+imIkctEF|hoEPzg| zqp%yRr|+M}0DVjMrR(Oka&*wo+FBC(Ij#eY-$=h!4Hl2E$%)nfPIo#0Gj`+{C`aXn2&~$4{%BD zE&72^CX4;b!jFZ)=|L)`eSEX6Jf@_Ik z4<^o4gmdzvTmR#*eha2=c_8*LMi7r_hO{{jq&$JHoXGyH z{$I?Qfy<`0MpZ4K4)JWq1a#gwH@DZNuo~=PYl~k}B7Faj1OBhpPtW)@toOqU;McZY z?KufrpTK{hUkqV4zDFtlm#XVeG zVEoGhXaSms!lh=ANpTXaz8arnH$IK#9X8+@VgQQ#9K^3akpKPQ|DE9fZIA(d_?(ZH zG@wWP@0ottYqQT}ccgmkGIrG}c2vXwrT^z52cEzOI6D7EzJFnLp$=N?BXWQaB0psX zUjAxj4azEj|7VH(e?k=SMRxH`Fo5q$E5c)6BA0z6c5Wj)SvBxwzfSb~L~7Y9QO&v$ z4S8r`SNhrAgv~qv8=x+zls{d1+1@{Q@e+4Wb-FaZy?fH}x)mHiY`{J~pREPbjeqHU zGyghZRq~)3cvg0gIlT}sov&O!A>9#1#{h(WNB10clr*Rqvzj=P>p{@KWR7yG%@1 zd(0ke?M`WR{nuX9j`R*rk?sAh$4CMw>L*(uwg3IxmVAN>kv)&1wZ^i`HR&g{(TzCa zT&&v+z}`Ty0(<2`o2ME(tb1#4-;!)7U-zTyDcb+;TD*72fRF-W0P?J>g31iWJwU=^ zsLv_}&5e+`+l{7z4QIW5ftxJ)=xwJEBDXw|GHZwf+T<} z|HvE?n-|h$&C3H|3E(sCQRa+5T{`EWYVvv9<>w%Ja$ZTM^!xcr$%N0Pp#O8wzb$ru zGva=yAopG^=3)Nzu!g!2*B@1SAk6}R>$TgbOAgq*MXKr8?)DEj|BfeWbVxj%xs@|ihXeod{mrY z7J&A^!RUcwiTFK)|K~QehB8*g(L=MFcg7yG&)LW|zHQxm2bb6M=^nNf5MIC3wl%x$ z4EMMN-TyF_@&F=f(pWxhd+X8&l-^Abp-s9!we029x8#U(_Wgx?(EY0WQSG0Yz~5oM z{5eMs{fg!kwgBW+bNo;8Y(FHLD(w`J5c1>L9mEa6qFG5ybrd?*n04O1v7a(}%TY_w z^6O@q5j-LNMeOsJJeE|jN5HmPOZ55S$kXY_fRnjiBVj|5oT^xEjC|;l=>I{;`N4RA z`@y)nzza0Zd@#1(=OqK+irZxmC2REEq!Y*u`2E)rVSWs|as_!N@&TyEHxcy^zt9K&;_y@ZGBmTci-TEx#!b4;TDHG^fn81zr3PvPZ?E~5S zf8x=aTs(@dU^`M1xTtVppX0O8$f0wx3j9jq3X&J9KeQ!a2_Wn{7NCA3n&so_ zKV|q!Iw`hTAD@34{Fh@v|02-8E7{HG5%YVLY>8j#o3>Z6Ia5$i-Y!-02cHNQVW}h;Pzgq@ zoLYUu#^_abQ&L32c1kdlDzNJ-6AM6-Q&kBZOiHWhLu>5S6q0p4mAs+xLn0Xe!5jSR z#AD1TBoSI7!H-9lPKW6YY(e!2`$RgK0vn z_?t|}>{Z!kvlVjvr~{Zq{*UH?Z9wa*tCWsK-2Oh-hPvGfBC*CK5Ono3|gCZl4tw-~~90iuTgt8)V0v zQD{~8jSPdE^QR^?0sC%2z4W&{_0qG(e>HB`<+|`H|DV}FZBS@bH%@S^Sii8@2!B~~ zj+PwFsWsBk6udU&ysqz$T#&p_Ua+`Y!|83!km@3)9*iLY6w>SX*6V$SzXO!|10oFC=-cc9<@0JMD^BXJ}8 ze`o6auOsj81^Cm`_*Dm#{=#I?+o+lt4f|ii?6d_$7QewZo6GSa98LAv>eaNED&X<_ zZWVH`5yw3}+cmp=b~Txu6*Dj68NLKt`-tSXAH=V(IPeIx#XRzEpXA=t*bVOU9XWcT zt&L^p^oQq4JJp9DWyA~RezvuvcW?U0*x}m8;-e$bI%{G7k@qL;#$g0T3?Qt2;Y-)$ z-LmiBQb5nrGve7%6O>y0k`c-f_TRt5eED;s|3eOl2?+h-|FWnR|JQeJ2>#szD5R5P zle>fQQ;=)Q0vdwmRliOlR2;xM+wwEyp;juchmCKkpnKBHA7kDt>idm;F#!E150WL*xv&k{tux6q z9Fp%0LhFGpX>{pm`|`#9B@vXrCv7e5uUn4s?U!J>IhXq(3mTy7TM&)wOfFtm>I^$l zkJC0e+Mums{2D>J*|?>*+^7fxTL73o--G(&+Nn z3vprlN0eO{3;fH+@5dVbzHT{?N{I9^epGp^|NV6#-v3kV3*-7U)xp2MPhZ*gf4k6$AKh{~R=ygulH`Xd-Y&;f}@4zQKcNMZE?zdy4*aijaG1g=gmu*=XeYm$kw z$^%p-pd`Rjt>`xR=b9!_jhmsd1@L`XQ6=uEP)5AHVnx@Y{!pEF4(arSJw-K^NqQ5$A3V zG8-qnUAcQYWCN&*PugAhx2I3&Zvg6Bf@b5o707Q5-VcD4A4)v_U@GzYfzs~e8Fovg zK^G)K=R_t*4zwa}*D*QT@hbcCYN|wVC6ci3`2_AbrnrPOe_iBDGv2Q=K8s;=_nt|v z?{?TR$M8MoQ0f0VmVYI3olYuVO}77P(Eldg)Bh;$h__!JfF>Mu>Gio2osuiT364TO zE`cd+q-N?Csw*2)^RuvcRdFc3!}W!O$&wgI=Fe074)gK+dEU=*r1K)!+9mjHcgeky zok`!14%s5we@te#%&YkRu0_L-NboPa{}AwgCc9)k=zpBQC$TS78SI@UylRJ<-FqK~ ze)1#I9VkYi!}~Y(vOR%%RJ@AyW$=Qg=)^(z{2xjx(MIv8J+^3PA=Tb`U6cJE_*d-D z{{IyJdaSW7jcsh32l#fJ3#p>}{_o7c@{%Cz{qO)9`|?2;|5~9Y;9t{|-D^C2l6vN@ ze9|sh0LlV75A7OOf2^<9Meqw~u--?9xr41R-yXR&XBf93xixJ3ep0rbKvsM#+=u>@Zr3vgoQvrM<_byxuZpc42T808Ak z{uq9M72tjmeDeYJ-ICl3%mg`sC_q0l_$#BoAHi>3n@oU9@mlRzRvZ2Q6CQxi(fE(R zVXw!FHIw+?TSNliMGjnzReJ=Uz+UvZ$YI^if!&_ST!D5;ci@fG$R18r(EC))Or&GI!63b=|_yx+Hke(B+MX#0-fQP}QIO+kO^1#U{}8{!1BnD!%rB!Vt?9W_ zb1iazWY;IYzq(BQypgGY-zI*ji^2Gj;9uJRQ2YRz3h@Ma-_MeLr#`>x@}FuP>l5wH zkOjuE9^w5MJ5D=W_h}D@B(Mz-(E#69-Ule(c@I91JY)|Mv+Bd{G8<-Upjj|||@ z|ME`m&Z>+f0=P2C0%`+(rTMjXy43pWx>waw(W~t>)TLKG{+c=XIer!MfzbRuC$CCx ze7e^l0j@;GH$z%EW}%v8`mR6VgRkE zBbf%)H-P{3a7=ZUQWQ{KCfDY^Ond+ZY~0riEvRIBoIKV&iDliBMEgq1K4xb9>(~R& z!1$N2n^%GVCt3-!VKq6VJs>>Z3bR z=`#~sWnIh7fx`V*;9I9AMIzp?@M$`OA$W8Q&C2SGO|{He9hFpnyw#Dhq8yh^;i1Csr*Um zZ}QrENxehVqP~t6>PE)j6Fg^S{JaP+Js5W`?o&MfqmT-f7>f?Q8ga2vr4j1bfa3t# z(~UP9$)@*BkLlGSeHQIcyv@BY%~iaD?{5q7>MkHDV}Nz%^*6ieEoS7s7djlw3%oI$125puk-F5f?T)`fEUGS)avM--S$_?!kToSU)(}`W#-or#QYf$gYfrmmQ#(fK>`A!!H}_O0lgr z-_)AQ#Q~guarh(9pP#NquSVX9tYxO-&#CpvNXC9&a{ZTK`R~KOca^NaoAGJT_+^oP zwXpZ|5&J8TEbLCN?>DHEn8PxOoWJL}Lyr*oKf#P2Pv9S&LWa~L5Y5$ZJfdxIEU z4MwNg@fv&PhcZ2-v1jAaz5DAPrps&;JJbvRF&W?(zs_rC)@xO&(B9_TSHM*t11a*` zOZS`hHU=+^Z8<%r|Nok0uN1B}sMFRi7W+^kN6q6R3hqyBN)T{Z8!?3r?1*mrzl`qh80VGFtuMNY7`PjWS zwq>sl=`l;dB#O=z;}((t)!}zzkvo&|1ytki+BN4wT4_eGdT4z0dXxUQ?vEA|?v9V> zR9r4^sCU*Y>(A1&EcmS55>px(`sTY{51d!)xYv_C^JsS0NxGtJ5IbMKSp!jxt zCD{Jn0R3CwvFos6H&X|&0|u~+d9B54cM{v4h@~(H8SoTZuMEDh-^hhu$;{$|I8Vv= zd*Z($wm6f@z;g5l+Q-ZTgFxvs;H(oGx>>-^YoncO+_m1Tzzu3)<=2MA*AMi*F!>xu zjigJ)NIdcr(ampDhdUjHK9%Ug#PB%Q4n;By#$z{}eMYl(Cf_uR45U$keCSWlu5K`a zT6ho?AIOK-!SW6?msbV8PuTB(gc-?M-wU4#`;kIOt&zn1wndIdu0-PE(-7Hc%kSFC zj0tD(@1^3mW<;mw;a8U-ucs)HzckG1Q2^#YGU)ZYFhKvHfFC`Mf8aXtf`McVA7RFn z({Pt$;p5`0k4XYM zDz;vEKbq-lD^}{$jNJ@(*}2%eq1MoBI$Ic&){XsH1mNGR05a4Y?)56%n;dcY|Iagj z6SD!w0F2e!C#ywJPHi#nS~*@d+lEyoNdnlSciO)oIGjTzz!ZFOssxm@6jmK`w|l5N zYX~-*!0xHtcas-dqkVLoEit^CREV8P`;`OT1Mug)3-43MXGJKo22o4Z38)IFZeRz< z52y|xEm@ujGC@9wOXfYpY#?d<4*n|tH?n~GF|X8m7{CYoSvMfron`~<#s(WPXk< zbm^Z3qGzy-XNH|ld`lhlZe@HBCEy(LC_chBwnE1AL3T{RPjP@5eUsCXzg=WFGy7~u z^Z!nLL@{)KTXKCj)7}3E?4u<3`f9@XO9ipNlGOTSr0ZW+q(KdQqKlE6`{79|iJ0`k zKU$vbz#AMp5Q+E==S>osfDHPM=dcL03;)LdSHu06h9-x4gvy3)(e@v9Jda-{}bc+kyVq@VFn2J4xhiDjxWTj0mgtl^@Eibo1qz)^QriSf@z@+oI9x zG?o5~K^X71y3hHq>bBQa-yQ^(-N*7e?WxuI4*K%w8+|HiMi zj}RWiw`q8%xj;Cc?&pAz7IE55m7Xz8!Q z-w>Za#;09$Guy$kop(oAdyW3wKlAz}TMvZyA`iA8C0@gV=)|`)#;&Ld8>ojocmnMA zgE_oG#llYZ4^zQhm)x9J(fzwX{~wWTWb1Tf#)B!;_uFcGIU=NmIBd6{!UJ8Gqprat6PSjN$wn`Q{tgV#~n3I{q!i`?nfP zOcME>(CAQmGJh^$xmESA((%7G+W#mv_C&@&PoC~G=z{K80*lDFIfCc^ZS2Dqj0NlU z;Vg6KyECn?QDv5a^9k6PHGQKIE0mjNw@*%jm<6D2Kqdq1o$z0V5jg}_{5}k|E1xn3 zC{E1W4abhZn-9Qge|g}9E|U|c-DBvEVcxLr(C_xp=l=}zf8FM;$$SuoZe2$f@LvK? zdsVJpvnkpv<+?KMWB+9_WMq3ke1IE}xlMWR@Gj)W?wUTiJ82TY?zoe86cm(WV1{`5W_)z#0aJ`+q*0A4l{#Noj z4>_<9oSvo@_s?*$NJ`Fj3!Gn}E7uP!S9t#iG5fUS*5+i%LWNBv@_YDJ_&PC;ZG7K& z^n7o81<%0uJK;BY0dK-g&bg6mxo>#~Vzgs_TaS&rs#+2*{=vmm)aQ9zFX`Sx9{WqBqV+WD|vJY&HWOW53&hyCrsrXqtaHY8e z3m^|?C<|{9_Du$;F1P{w|4E+8bFh_daS6;7xyDOE{>Xf~0pw9Ad;S5J6~cKtVZTcf>n$|7EC9{ zXGi!bEaFFIMK8!)-reZPyMjCL74v%i8A->ieov9tI30ig1<;?4C`a0a`?32AV(}LR z|5fpOsMmjY@}}1kCHXBORWvKhJyc1|h7T1aE_xcje^;`GH$@smzQXd!8~zpvyb%1W z=2y9Y>dgEea(EWnzZ0>)U;J6j_jv}-Ul}TX_mS84IzFi0*!~?E1-*$0Eo1F|Si#GT z%$hJoUwGM^fuOc5H5-k?39<4xkkSt^ceN7BtAq;nH!eI88 z${uToc#Xpw*a2>=?jT>01;2yt7%$TwpgcW-mX&qw=khsu!AnsAu&T_A(qE)q5a%%dHq!LtGT|`v#g^3*K1V$)D0!Y z_t(jf`0rBjlZ>pNmB|0W#C0^!OGnVA>d-B)|4megbcYp|WwhAHQ>0Fq70PW4+Im~( z)@Ve!?QW#TwwV+#{%`0n5J&*?3D|2f##~3V{}z^sSReVomtoXA|Hj%)66n>uZpNui zvkL#pYd39fn09u*aRS4?X@5Jn&@Z{5+MmB7{GWYteh8BUF-i0gnq8K(Dkk!RD=`yY zpHOdX!8`yNzt*SkJw)?6(t1YoCOSi^ZV1|CP#OypyDwuyj z>-0SA?B&tx-O%VWxZeZ7coD8sGrtz%TPxqizxcoAe{KpFe3C2dMMn1ixYXo~Z}(C& zcf>;f5_y1+V*|_}|8EzIDgjraaTei$emAf|H-?T<5!?*Mof{O~h%`ZKU5rmnRJ#QT zpN+roTEc_W1s9AKK)>BbUeISm0~R0wCV~51R0(}boNxu%E<@3KRY6Izgx|@KJ;Zs2 zkP}oIG^LXjXZ$Xe;QB4LiU-;5#1uK*sB5AhK+dFfn#3c{L?tge9rYc@84j)^NG~k zcft!3;DF#Q`<y)v7au0;U6ld7$$M?WEVP5(r{qTvUAp1pf^gAI32I9Ay5_ucRu!?i- z!Rxp+vYJ`?){=*?mGjSlF?7NYSr=(ihTPsqIcs08V=8iDE@xDCkDrM2SBq~(4S-q zOo9F6ia*H=32CYLsg37PQGfMdQN90W;;&ng#fzD*y&IXD599gY;&=3a<=N@7`@oNYJl>9uu3eY`Hkwh?a*(GMV~A_k&!rI zfBGwJpg(7uf2S5$ICs)DhJS}-X>#}8F)i(7?@bn%gfJpS==x3Ie=mRA z0uHc((YO?;um(yq?YXjeQXk<55oa+L{sDA zy2_fpWCmSA@1mYwh{6gX&C&~0ZKs@vw;{5H2?N22ZvJijhRA%$kyvbYOLFe)LpAXRQ zMZY9sIu2e?nmEW|&hZrW5Z9O=p07y1vtyQjcN>oPWCqsa8UkS`>g56|J+ux;yO zV^zmWMmWh~XAtU*^J~2%fU^MX+~v_ngJB=b;iS)kg)C@hA>Z&X+&U~9@`WW=0pL1+ zN&7qe+tH?<9o`IeCP8#wX@4gf{`J_ulMB-3F^z8azdQh%1F%>S0h9+YJ6GhGzex&X z|GJj6=-U=xe+^HdJD8JZmi9NlpW)b0ZdQRw+1Rs5EFIk5|A>BveS1n47cibto+qst ze&!+r`Vs9biU&Y_!HZ)1Rpx4HvnV65Nss}cUXZdFHpTrESCPJvUo$7*5b}Uh&{5|3 z&|86~-$(zSJxBn}3#NI2WP@&_FZf0Jf;J_Fo;30-$jOWKyO=p`f1)brS#;WZasa=l zKVZpdsc3GPZqn$ljQ->N{fgzA5L60&iY>4R1U!drT!^T6e8Mp@iiTnX&%zflk3IuE z(XQpFflVI&CwX`V$a_ui}wVwW)I9^ z3vrIs9I*%K@F~l2wtUZ(Y_L&FA zUrA3yFZu`k=NEdT-C_L_tO0pIl?U+-45BE0kF{`)n?yXThi`J%Rqrpa|2nk4`h9HX z^Kf$hvXk?F+F$4Q^Hck8G1tfE#BpcB`IPn32lS8T`ELOI2dPJ!1tV+#|FbdUbh>GM z)8raOPLG>JaI8RjJmw>?wN3)qHp9K+0WoQy^DF1S8=i+{_?U)p4f(*fuy5?#>1ZKW zTGuUxK6(FRi?pq2|3zy9BtzeBYw5G|R&d|@P5rN9H2 z6L}!(B&^VRcvCGjKIkwvUc6 z)^AVJ$pps<%p*{mD{O)mcneRkW`C%|*>bVu<$L76i1h?hS19EJKh54V&=V=Vr@i%_ zM;`eM`T^#lqx@@(zpZ%t4$>EVFWN^kK=$W)#^D|qz|~L|qGKEB3ecB+Hw8iK465CJ zjW11vYcf3dlZ1Oge|0(p=Z|J1()A;i0LphcLZ6ErWCv{|?!AW0pb;>DiZJH;5{{EG z{{~%e)`6*=#1-BmF4&V8+7pc*U3)sW`9G3%0k^@AS;f!^8eV8o1 zBy`>XBXS3p|22$2o&0X0^KbC^H{zZ}xQY%`_s+)h*@x%i5I)dPh-7>dpMbw_AbS50 z)lfeL{k+r(c|H-p%lJiav-V3Q!7lDlMD0%1`=52W0e}tUhPF~pCiLQAaZ{I+$J^)YuEOh@~(7%gO z_yRd!>hfjd%0`XDcMQvhW7FPFHpI|xBU0KwhI$*RF(%;{fzD+9gYt~8VW40o45Tx- zQMW(Cs4;fu2@tC{{cW;95$v9aoe&0rz_k&_!-F-2f`%W10lx-vRy)q3%s2B7h{lX`$_p{&HH zH{xZN1jt5LkHJ*D+=#D0zmL&G0+XX^WCHo=crC=tT+OgHp5hzE zP_x?~iBg{)WhG%4dGJCcr%yo?W{{r!)AE`ZY15v)Mv>#coOs_yp#LDu{}^6S<@-Fv zFWNyLzZ)zUkaer^iM|8kFH;Ns4f1a-p3h$R2XZsF_XU{4R-{N*zUfPBjIxnaWpnomBX!n8s z#dL<#++N1%g<`|DUQOeh#&&w!ebP8|SU0(0=r(NIHruWJ6r|G$g++x~XNk{voGE2w(`4ZMi^-<+e&ckeQ)gk!_9P%Nyw z=VLaQL%(osu>(8OeEsGb)ILsjXg|vYvRvVEF#N96dCWzxzlbeT9_=q1pb&dizzik+>3r1(tR+Q9cc;_kAIuTb7G}R2{g)JLKYcJu&`r7mo<=Wj0RNM~ z#QLB{ND@GqL2nTac$}D7a-!z<;SIb+R)J)|e(?KdM?(eTO9=V7)A^989qt_Z>lk+J(I z^OKK8ip(YNeh+8c%z0It*gjwwmGSM%#wf-NK4tiQwc#T#1=T&9*!whB`785zeouwp zPvk+B#Fsyc8i@0BMTuhNe1YD7m*2J=*{4|%k0SlX5(O+x9`OCl?sJx3_b!s8K3ZkuNINsRs2dwCDl znPwOmSdRZsohdQ}I$o$Zgqjs#^K?1ni`k0{sE?%(CH!Y)QCACN|Hc%IN0`(wjM`Q^ z-gv-&7ymXNs4;o7GQ=~|!|H{9_0TPfS6v;z{;K))S?Jd7%-*LE(a{S{%9rQaA`Fc~Z0HLzVD+~*+`GX)=tOYSvcRmI+{{#|X57NLo0$4uq zI^xq;L%GS0+eClxE?CJwVF&a8o44o?+Kzmmd1%6OSiFBE+`;ShTf*;P;5f{GEp>vI z(1>UFe*jdRLsNdr+VR*9tzghO$)8hi+^^vRhe7u?I%S}2}n zBcri1QtT}vpjYs6grd^^+mUk{sgAlqr?j82i58Rp*Z`0JLsS9X!C$Z#+4B_A=@g#E z2P5mqt`5`ZdmRyfMO&AE{tZDVmZkV(hLfG0KlFpYoSv=4{VRBE3VENx-NwNE2O$B* zkYW2iGrk`TvTc;{Q;laXyb8MxzlLgkvQcE~ZM$RfiS@nh>GX|lvAuO(aSD?Nwx7;f z6dtPHwA0Z3?{a0e(U?xt3;nJyr?6t{&2y(MLb!Z@Rs)m;-klXGkp3?IWz##}uVbwa z&};*<{>=lZ?w|j@e*fodB~cvy72A_7ke+ME2Y*%$O>yw=a{ncz%nRTm0J^HQ>`@ce zvkVzL7_15Zj`dp%#&B$Sj=eXW+x>LU#_4E8iaP!-Q*5B7T^8*M!0>3^< zgfWgxf%J6INzIai?zxwd0-8%FFP$`UgQs8Ea~=9rTwxtOwBDh*ur@lrH2#9NaQu2` z^afzR23ZErVynCi#;3zBb|YJ^GAnN?&QbYgef}is*WWMW z-@;q-ByATrWBCtb8O5_+g62O-ho4&Gc;?K&-;q0CpbP2mc)D|Ir?XWoduo^^yP?(V=C)mAZT8x~u=C^KEhH zw<}Q>v*Kt~)dJ1{iJD*07HMzYS*OPxl1*yLOXKdTJrlR5_KV>^mLFi2zx<1`{tf-* zkW*D)_&tdNy-D145Ko{U>(sj}59cWhCsY+cbF{zagVfT2T;Nf7YQB#vMMt1BUJ)_@ z_EQZ|nLM+%@b?|W1~`l_P!&NgALw0llxl+Z6AMU3J!4NB1zGpEut5Hx=Kfp!h?CLb zO|j^^qRsm;mu`2s!4tfW!+zKbgZLCy@gvuI58w0(xmL?PZ!> z`#Q;>BMtoy>&o`Ej9;y>_@6R>ihz^)jHjuA_J5JFm+LMsb{IA*Ubr{??Xas)#<`_c z)yG;HY!87kWBks;7mFA;YeG8Pu;=8-e}wISWxZX4L%(>vDiU*ouex|Ls_?7DNF*Da zpHN2_FLCd367d+vEGsL~z>jf9gi!GShj_Ez?Ow<3w$Lw`>YkVWYfn7~WB$_l_9>?M zU5rr@z{vo0`05Y;e=~>+b>V7CgMae_mWLP03-|=Ozdd^5DI|ol#V1fD7N&~)UGEMv zgH9*Ll!{2;3wWWnVUZrj6R;ZzunB*ZRRl@`EQO)&41E*I2nX0qMNNC+YqulyK+GPn zbp@NaIx+sqc>4Ck@qHryVK~5p(Mr*#(Z}%(<{>&z0xx0NXd$8m>4*(}2a0B5ML!3s zYk|a~;QVv=|0kR+X`rDifxhx!FdOJ^3(ncbz%J+pFPIJb4}j?JkrelmeVdAXlXLdR(BoZ@0>zO4_u_^422Qb?WcR#^KVvBp?f@ALC&B$5bp8iaJuZXEti{5)O|H*_$hPd{`d`2{ zn2GnVI{6Mi;L8{XD|smXQzDkBBTK0^jHAoa(p=177 z^8J7GR(t)u3e54h9qW2H=$}KJ|7_f~xa;WuWk~W4LB!uxfJV9dDL^X&$X} zI>@mFTjxfp)|#i#aBmzy#~1@B4)17-RGJfbpj$EOGX>~0R&5v-;`L6iw&=a#-#E3j ze>O0e6Dg1((C+RSNevxinAbapd|P8S_`ibl|7ahx0L1!bMoT9ejJPS{$lb8@?fyJ|z-e%>k$Cxa-I^a*vx8T_j;TXkrda@z0MB3p48>=7JT4u% zK)bw5%qF`s$OdjfF3<{e{~`Q+`|f4~X>I^j1=+HkOtnkI0yT%FOdfbQ^s3FPdo!mn@?D?+4=A^z&pyQ?kN@dEbEc5wd{dj1O6{%x?F5Bj0(g!Nn`oEjrACLmUzHPW@pxXTLm z6}uMx#rAcS7M;!ZG~C-+OnSJz{yUNX#L~b}ofzQ{B9DrJp(aSyqWmUh{0RRhC7c}~ z31C;KJfK!!Z!1<%e~wYa-_Y+QfZ$keL>XU3dVEDp{~L04 z%AxxwV8{2xi`NYwzF7TyB)}QGiV5icl<@kpX!U2Y&y|ss1#3dyh79~=M(t9alY#k zmc?{zl7dA2CXiu#mZ)EDI(=+|_0Oid?`>+Wlxe-03e089%TNpE|1sJAkNdv=9`d=Y zcfa>Fd0Vq!*$YAc$Mp6(jpuI}=x>9Ux->Y{sB)u3t7FPSv%Gc|%`^XR^`(eU&4?zj@Ymym52m0y>u#=l^rO;9u?dl^F4VeQ)1l^2T(0dN5xEuU=zNQyf_! zzo51lKZx-Jt5g<~$%36di0tciFz~kEO?NGEW%m+u>5}L_c0)T6#rkq`W`_HV*C=Bh_fvU=GAzCI-}RX-$HDFFYx)NKp*D@`>l{9OQ}zs%~_iu0ThF{Ma1C` zJQ-O*eGT|V1NwG#L6S`mq|F?@;V@BsAH?Uvhj~x*ci4VGe%qteKdS!u7IBSjG4B@hu^Ddm)kAkK&FY0e0ZQ9Rd24bLz&9X>&ur(=u-4*qC!8FUI9{ zta3P%gLYC=j7Z)(CZXN-l zN*%1F{nc&T>}f@gGmKDPV!e0*La2M zf6V?D2e4cqdHNcH>mi_jD##wh=%|E5&%>W2b!8#}4Y)?J|BguQXW?zbVUuU#vU+{J zJzgqil$zn6#0yX_G?J+QLGXV(@B=CrUA+M{LzwD<z9SnpHFj}Y^yW=w4v%9d!CKL-(Lq=R&qUk74;o?@ zWCKy3gPrQc%Fht_%ZcV~iQa!UsHA(9t^(uH^V7kX;)y>HNBoSxFIg_2d;diHuEtZ? zmQK2RA{B^BUPKnHK_V^Y{Q>HZqu3KI@g4M|5AP77^xu)Qn1uNZ4`HozW!rs7j}v(O z&mnu#@VQ}N@4t(O;zKO{<;a_lsO7($a34}k_0Ac{bWVpSvjLLrF?<>i;_cjp%zGYd zp%UKA+hh#vAc`;&A7oBg$u#J|1px_s_sTrGlIZlr$mNZcXfehUJxUu{N#uxXeVGR4>3NYZ+zb8MZ)kb7tU zO~+`h_`hQSHrlk!MY4=LxHD^Hsz;W3(M~1mH<|38%Gk_8ru4EQ)Oqpt4kF`lLUw8h!_cDLTQfMY5nQwpjJM5?~UMi19p|X80u(3v^xpbpvXHhoU1nL(ft>@)EYf*0^8e zDq#bh@G?>pJd3_y8AGk9JlTTwKS3<;P>>I-SfC_;tbk=mhxdZ*KT{d_H2rga2p6I< zUh*vKMc%DW1qq%zDSBC5X;rRMafZX@-$0bLK)P?zvz?#?utKPxi$DBi~I}H(r2UyZ^R3SJ-K5U7p zc=EgB0bIn9g+TO|=--opG%7*lZXq5zS?E`=+dZzK9y6NfK{DOIhd&19p-!dWA}OvB zAt=VTj)!46dR@=tf4U0gk;z@ zESXVc7388`VKViJSLjt%E$oF4aTjL>=%0feP{q$?`2P&5ee#Enl983oKjlsF+IjiB zKVbUXiL9-l#$-FlKNj~1e%rFIbxxPR7CTZbwG{e9GYrmW8AXn10gx<&8cVlVhjz31^+`w*vbC6>K+!h!+{jMs zPn9-?F_RUE_Y;S(^Xm-mTmC1JznBy--S2FCNu{1g2Y1U$YF^Je2!UAz%PPvM~VD-G*~pC&{gMPUG8uC&7)Q8AmW{&Yp#7dqn|a zdB8${IlfUWzY*9Tg)ibQA`-ok2kK&&k83LfKTtK0asWHvtC9X6#PeIgm`drjAQ$K> zFPGohU*uo*i!wLB94vp?0O9}#$Ock9>gpgHa3zvJS*qKS4%b7O=*aszy|GhLi94HG zxuoRYG{)yP4c&J+J{6e(wc*;m!O|);?N?+5-4A=N5p5Oi80`!P=pKD8IxzYo{(-*H z4rtLUWD}=Mn1fHT79GPsj8BV~eh8ZVJh%-r^Wbf4?lfrKnqaUdHbix-iU#n9+UVr` zY+pbWAt^TeBd~{@)Y|??CPB8~92>|>DuEB8GoHv=TtRdEl8;BLV1ty!{`i3y-bC0z z6Zl6(j_nTT-vOV$6xj7&P~-G5Y~v@czC^S>-&PFIMy?==ks4X_5b?gRhyuJsjG_qs z{y01l+lf02Ax}ClRgG`amFPO%3m;={&(rApIiP(emcP6y8%o^|@fjU?HfPV1OPapTMO)P8O; zt>g5Nu~HY~v-8=W&I&NQ)TB)@##(bMNNNA+*pgMiu(04*w8N+V8)^;pw%y@cpJe|l z^XFkOmmxruJI2WgvnLE|b~YzxWKYCU{NH~kY&*}s&@cSw1yeO(HHEo4$NmlbmJMwF zLP;z03TA)-RD=i3L{?7+UA584COLKA%zGbuI_?=c?3;|xp5~bq1Csw@Gl#nJlh@(;sDA4=!SH79&6!E>d7v| zW%D|C3%pCr5Z;g3Wq@vCA>3C_^uMf5Fd&b27w)-&qlj|_aZ|%tU)!>}IWVf}S1nqT2Io3M7;606LB z)Dik8<9n<|cJk+R5~vxuOdsL~%rA5nw9n_>&fss}U9bOo(BCOkIP|?g*)QntC*D`i zOYU98&#zt@3;5fKB>0v&J@yCafA%lvk1<52(M`)3%S^0coc0l}Z3Jq(85cD>)9e6^ zJKMwdG!7t1qR-MsWnmxP8D%qJn$mWK1IC`1pBsOdMEJM(H-zie<^Xh=|5i1i{Y}FQ zm+q7OkDX8Fm51TKkNU(%T2#+ufU*%E0{`lyQ;|E7HQ*)6Qn31D;onIFvjog9m;szM zME5RZd4+hpdM^v#hJMQnw7af##taPq#@DpANPv2?zZ{D*Ugx}i!oMwI{X)NTfK2F7^nZmX*emAph43;fK3D40VpeXUc`Si^yN_EgOYVHz< z!99WBT~&hTeeY-ysh-2WL(eU5V{pfaqOg zJpAp5DvlvGe~LV$C~UtWM~%krcoqp%6}zEev@%SfMYJwFpc3++25ZYBYihs^nsMef zd{=$0_Cey6_u{wA%l8*W);tLIRr7O(=-11>X=KnYyKF{OzUqZxR>|fkp^}cI)-z}6Ubl#unm-UZ({k;6}{&PV+|4Ov~Qhff0 zTu9K^aiX> zHqb)w{VDkW6b^6{7O)=~V6z2mh5?8LY+}vX&~MZRHKAYjF}me8Wp=!E#Ng6Vck=|< zH}kQ*aFKnf@~sWjW_VNJA(_C`ibjm~0u6L!*+t4o7@ACGKF z4bzV&d--=PgHP}cZpJp5Lsa5fDw>L*`$GwzQBUv^xyWhI{By~W$i{4^Z!nw5eV~6k z=%0_z@9n!W|CKO+X)ynSq0ju$c>T_JgFydP@V=R7(lV+_G|%*YwEyQp#BU6io6xWR zK3WWs|5j6&esLZo!@E#y_&4ny^Aw6H*hsZlzsZ1@m&zo7eVcjynli55M8k~bdaC2O zw@!b;xyAS7`?I`X=LIy)ZKxGbF#JpZi*H-zy|b~+M_}UDWG3b+xAbWivSJ>&o?8a>KBPVgbAd`qUA~?!4}w$zbM0P|OW0OhN#4f<0I&yc_*Bgd2+_ncSDvybt2#6sp9)2sF*E*S8Wtt zy0^)foeOT3;8ptsiExdWdNTO;SLD-nGm0ad!6asKwjE$}58VG2%a3^Pk_Pf7Pc$Ri{7-xd z@koGFU|PQXZ153z664y}Kfn7|xz9Vfyr zdcik}Qm60-8HR_bM0l1?CLt>PUyanFL+Jr#DXNa$|0V2cDKY1d!eT_oCl=0mzoON<>8@lsQuzPVb@; zG5?@&Z%oA`fs;$=@Eeo_Z8M3~Xy#Qh0LR{)40X@MupN5>cHjT8&eGVMNe|t7F@Tug z&*cEg`qzv_Wx&2TL3#ANB)~xQ|1{+E2yC_HL9DnqTdVWTG*g_if#nJ8Nj2H)Fw2kQ zJg_P_IisUxHd!wUL@kTj;xwrv8~g< z0R9ZB23Mf97ZP{-7L6XkJ6DGY!64B8GM<8d#0z?X%Ff7yX3@q-fF>~a)X|Ih7u0)r zIC+AtiQT=7?q7?~@f2Ri+d&1=?SLOVhzBA)(nj9IF#pp8kp#u`b7SdeMm|);Cn@}I zjLt^hR0{f;oG04&ISk_qkpDh5$y9O>yOSNzjqD(G_W7NR#SiFh{wf~7hvF}igV3EW zre8C|NDpQf3WdMm9xV^hZ?zQ5__Qdf@h=GTAL|#v=RXLK|3xA)?-1*MCqTb+|6yW& z```iN@%kD1H3m$BIGh_cg;Mi08CvbVMo(-Mn#FH;H*I5j-d_Ka1(*-Yw2;oB`KM}Q zJ-$eu$rQ#_YxGU#0Ii1Vm;?~^4aM4G`q81^FfP;>w#A+;N@%Ee$JsgUSjYVJ-{i{Q zsr|(T9Q#)-Uy$65O%wSc5=V4Dt z&&JR%th>eTu#>wc%f-wbBarnV)~2J4{U`SPyDT8XzF2{50m%Yo1U^Hx$eV$jewF-W z%N8ldK8gf14k`kk#t+aHKfp^wEtleNO71oHX3-lg2a$kx{fqPlY7-iYcS^lMj^G72 z2?sa;{#6+y?!O5MunB3f6}$FBJOOdxtmwM#%${+S`hW)HyM0I(j-=$iJ%$VzM`rJC zqVnI6Ws?fb6r}pMEqGmm1+B`N+I%EfVKL^qLJK+NpsIqBHjM+NO$oiKAkVY`il8q8) zYsPfGWPn4z8;3U9G{$0D-^QF9bxtz4(P{ETGf>xJ-1G}<%W<%gn&89w^;&e#(3v7G z`CZ%Jn0gHV!ntX6L$zs9v-E|1cNTlEv&C?)V@-kx|9?;9FR=|^o_y6J$sd^m&0l~& z)&Cpf?JA}FT@|pcvFoy<)3bMRa5o#?whBw2AsX3avpp|+N)G?_9R3mWdJ?+t?&;_` z>$zISk465B16cH5I^RVEWc^!CU>RZok8ve~(CyQ()ZPp-f~s+K^50Y=w%O>e1W+ze zUm^h$&@o?<4b(n}1mtC=x#j*fKVPU>s6Q-qHMajrB)|zY{hlBz*s!nI_13%cU>932 zAp>$UcjibkgKmUNkQXo$OW->FbIXw-_#8R8)3NTAkMk>BATQqjzGU()fv2Bl09TOcFof4fKod`O6V5K*~GJh&y15NP!#YN9@o}OT` zD0v4RIPVBPpCjV%0RDlh`0a~v-jc-r>f+ri&o|_SS)@Yhq(dGQWlKS%LMo&}HX?$x z_{%_r!q>>AooIYn`pd9e#uMY~Ks`cXGKG_|B!KZljqt)W^8`e#z%-!hafbjE)bpZ~Ey_n!ynlXwm@89Td(_8$WMd(k8d z@aD?vr|vSQg*6I2`&>dZFL&AL9hNMyLO^M>ZJ1Fe)_P2X&o5nyd&H z32=8`ci8;0CaLudwAj6u^_5rx=t-79lE}K(vrdeDae`Px&|(6XAEcb%NAdJYTF*qI zOvWB)iSF0fDHBM524pO#BYyU}ThZyT zfZlL`_T&%tgsrziXJ^4HcY->AmPGIyU|9?Vt2?mQ(}Mb{NRg-E3iV+Poul12t|{M9 z4hfJci16jWACLx3e+Mi7JEYK0ME^b`qBob^rOBLU0(Sm*yqA5cGpdJo;z9Cz&Ii?k ztLP}wAIVmNNZAW2~3%JjR|YmLLT#*478 z#bkoE*a%Fl|8<0oLmPz}fi53F`bRzSHS5Gkbcr&|+rTojG2TrJI{X_tW&68mpkwo< z_l@g2?QfoQeKOf$csCXxJnHO*FUbHq%H+)7um5EM*bG1q^SiVtC&76qOjZg1iUb-1 zuyuA-jti(7usFbVgmNwu&>WLq8xsJ)`0|=0k3?Gcdg)Tx}GvzR}C0Kb36gc2Iz$^XDH)u zBQ-(UnImMmcNGcH4J+VNdIOZhOEnD%a0m%-5=-DC*uG{AQ?I(sjPPx|${yGXGmtOf zJ7x_jK+oWj^b5NgE`}{UkF4BtbmvM&E^H;L^n2kI+)j2*7Wi{{I&oBmvpwdf!K8*IUNk5B6dPgj(k3-LwW^2Vqc^|Q*wt&uqf`A2k-uOL>ji!rFc9Z$ccC! z$6((-fgiC2udVS_v?fEa8hSq?U4zb(Q#_6Ao{m)X7o$($AM_2~3hQsr+#wgki%F8!V*TS#ZW!0Ay|b8rZPlyfgBy(+i<;l# zQAWxzEdNQoK7}R`_cyJq(J!1DZ#VoJ{%yTOx9w+$b~@8!fMXAdrG@kTJNaN|F-a5C z+kf9XVOui*W`+OTe1!7#8@}yY4F8G&xR^!k8YK<%`@{gMBOjL$x1Eb^ty!3b+!*Ff z&c>dUyVuU|D(4LbOG6ha0z{|X3hOEkVc+Iu+YU%W@$fR9?);K^$ z=1KncQB9_&)$oRh`hshAr z_s+i_lK|R7+x|Y(Cq9$7z5IV-_s-9!Ul6-WaRkW;w^djFR~ey>h6Q2Tni*&#(z0XV zc{gUIS9@nnPEShpeU9-P<8tyq*f%>tPuXk;=LIyBOOKc3Po96{{`THDf$W6RNC2w~ zcnK?Vav%X(W1*A{wn+liBY&$6^1LH&A z4q@sMdN^1<4q}13(f3+3f7mYg|90fTcI<;ANPwGx9q=p>fql##k}Xn)9{p449C#cV zkcK{ePg5H+JE-0^;dU8b@8g57Y%6Cm(q&RfR9%<1a>!(I1!( zcp0+}bYmv6w2>c}J#Y$nP!+=WhA(iJ)(6NJ@3)ExbyHr%d|sVHr9*$v*=vBGJ3xOv z?-DWoMP&MH4!r$G!Tu4t`mPGlZ}t7gADsjchHd0H2H-|l4EYYphJClcq2Hu|_B9r& zQKoTbo+vv~uUcdHF9P>(j0bWIqhk^g_V0Y}P;dDN7Tq`OyKB@QdT)#EuWBW`UXujM1gZ#@ z7E-gZ4BvV~@Tn(c(pGoY5z#5n&Dv`Yf)rc%hVgLbj*WAxwo&@Z8+;euqnKTnm=A^d?4 zAp?5Q`+5U>*<<$G!sPfiplYx+nL;hd`EQ7Spd`6}EvVHULB4(lc==^w1DZiIAKJPM zoc%Fu{vmkhl?%`f)VCu7_&An*3m8CGUd!PLh|+EF8pl6CJijmzz0COc>cbvd@mfCc z`=uar_Y4unJ>&~ahw0Zu>u1E9cbQCuy;K2S4to7wC8GZ=y^Z!##XFtY-b-XNG$5LB zU;G8UnhVHudWx#PG|b_*kvYTL5a~;a=KqX)v5xzs`TUl__%)O7I{wcMjUt{>F!Uoc zFSYm6`g?=EUf1#RucmJ7eQJA7!TgT~b9gTgaAuhsX3d%W*C-O|4bl2<5dfi8R=VNc zNe8FzwYQC*#A{+}h4jSeH@V;#fT~C8Gd6~y{ndj=ajo3oz~SFTVobtJt9Pk$0>^uNK* zKS-{?D$YLwFX1!P`=mna{{YfIr_1mLDu!25z4RgR{H@setC*u`IF^20x`OA%!+(?c z$CfiMXgB5@%fD3ZIjK?qAL`>I>hli{6zaH;=Ezkm1xZ0K>bUv9K!1 z5Zhv0!0llY!E8_$C3G@DBh8&xWXLD-1vIpOdrE= zV*JM}eIZIH7KTl`$7F!kIfOgTof!YNU9#n`i2Zv%=?aYR>(#E&b1Z8bBUjy6Uj}34DwC_dZ?cr7U*E_AZhY%m!#N2#GnX~H*%MtYIN0EEzD||6N55B<)^x^12P2juO z=Q|Vj(Oc(Bu$-DqowRh_xkg6LnIKCj0q=bhvWKpM`h8UEE}{GOdqnL%2qJe|f(YJ5 zvh?TBP2>flgk8uys7D091o=pRP^&AfZy|4g1vLw=P_;Xn4E`b1G4_amhEBq=^lvhw z$YEsGEan?)Ko_rjB46R%oQ;R0867?D1N$eCgB!vAYS3?g8}N&0UggzzPy3NkorKOl zll`WCl+Hd+dTELG?}q#Dh4Ft)aj1zv0`kZ`ZB&4*%}z^;`7bNih8e z{c2}JWW&=wh&+z>vFubMRh~QPu&*a$7J<|G=52NPmi8?49PAm`b8w?TOh4xFbBNan zalRhIz4q6i%L=LLY zPEdNkA$e*aQXN>3E;aqJ1Qs*e#r5|i1NO7*R|eW-w7WMU!h{~Ub5q>MxKnkfE7K18G4s9bMI1S;`=?)5Wf8Z7WcPw7tewx?r|b- zJ&C`)fGkk=-F--drD*Wsc>BkI>UFGBjD97Zx5m+Xt2gyVL&yXk$uf${yisU+b^CfE zVEUPer%rAvg1fXhxvx%mcU)IW>~Vep~o{ zM&|815?&G>2IH?1&Q5mU_h5fF5s>#lzLqse0mVb)8+{+&-|O`AE*|>T-{24OtNNb5 z2J}DRoy9&>hTms+T(4nqeTf{{Lk@s4{TiWj%kkvw>Du#@>@NmR*eKrZ;{QJ%m z;OxT~>TT4-vV!Cl6kCud@M&WGW3cgOSoyr7OjcaU-91fGmb zp#Nk~`UIc!lG2rGq`%F-?q|k>-GL02sc_s4XuSj20a~Q|UYDtv1ZpX(N2zAqS84S!`ic-5izKuxwiMz*oC^-7R&m;`gN2eEX_0d|K9rX$QJwgTV&cxDA|!F*j0M^Z$7 z4}Xaj^Y&e>pECR>a_t0?PQ8-l;ggr&s-qPN+06TSp<&3&jO6*vV-D|pbo5<@XC=LN zo*bVYu>Ehq{*QQEzaRs93%NeZ@^8qqa9Leu-Rarud0W3P(+_Th*vQb+cN#-u#<-%3 z8#pPEm<31%xY4EmCO?c**nY*)439BJMv(8L*ij3#MG4q{p1}JT)7z$<9daDL4K1b* z9dfkI^sBJqIDknFCj(5A8oCT`<~Oi7!{5vI|LxiAd)=!rtt&OO>yxwk?bjy$6|rAq zzwse3)f?@de@lf~C6+Z7&({aj@7dqC&so0q^toLBI+m1I~oLCo-5K zoIhNNdGDLyFMo+SaMy)ThJPbUSOzK33EO%D^K>T=B`g_8fiYO%E5PeM;)UDze}vxr zH&}keJNGs5xF3iirl!(AKa~Xq=>2goz5F~p_xCcZ2&W-xr#!to^e4UwpEwH3pT&G2 z{jljt`g-Ni2}{`1amJ8a)-M7pV}*6G=|@j$`yZUrb)l^Jx9* zbnuMA_`e_@dOyEUaZjs>upEf@S)-mwi$ZUNx`!%+BJ}cqjgFpa$n%}_x4Oc@0b+*w}NJ zH%()s&BmRLGlzeTCUy9HIv6Vxd2NrT&|1}*7eWG<4m7Q&_olf`2PTe?$2?^Y&892u zczbo)-`KS2RGrVx>9oHjz`sT8-@QiPZn(GWHH@1CQ1*|0n|-q1YI02b>bIB_(Dro5 z$tKA2jqtqrL~@&R=iJlN-8ZaD*E{|1-izNQ-m0f+x<7`0vjW^_Lw{@^8$FhL7~_x{ z5yk?ZA(lG^ra2x~*M|&&x{Nuo0C@xJ;v0ODao7!Odm-f*v_Cndlu* zGyGI|cz7WZf~)itFGxSZ=V99$BcCvvXP6m!%TYnpn)-qMMBRI1lMjKbYd*kv#Np?` z-8bN?`;>V^zh*g$W?x5k;VL|LTLYVZD|tpc`Lu)?hi8y=Gz?weg#3eo%<-8Je9s>={3H&J6SwUBh@3tBAFryk*nd;;Sa*g!V~Cm(vC<*Ib!=!X6^fqJV?!z zZW#~Cdos*#<2TFV-+*;ADKwB8%Iu*l{wlwZU*7){U+Pe=x_7Vl1!&)mr~gviEu`yp z?5y2H0AE2CH%0zd<~f)jR}#Q{J$jN3(U$M0XRW8M|Mt#F0{u6;z($9|y|WNBnzYW1 zFsFTN^qB}u_bL=w1<-dVg>)3p8uE>akjpgi>_GL>?(jP`_DdUt^G=Om2O}23_L(C zL4}|v&;}}krlCw$uGC#&1tQX3yDnHzw@3 z#3Q97*H8sk*ACpjN;F_5GT=p`J1xL{MWjO+Uc~`g1X%%H@B}C$;6hw7uM{&-&-G4w z$^Gj73v>$m1WO=!s8ApSUShN_M&oS*6=DMN2<*cqmIa{PAZbU$Rh5^fvF}w>u`s}2H z>BboTV{}z0(z1T|Mr~Sn9wJa_J)5a1#GPyrE#SF zOc&_AbV_B=-Uf^AjUXB@5eu&m5}^*7M>$2-FTC;Hc)%b$hHK!eKgDJ69`%NJo4jAh z4Stf$z*YWn|5tcG0lLjbM9g~itJ#f@AG61{edh<&K%!qSW=OD zo13^?WtIx$;O7V3shA1)*T^-NpXosGD@R=8?}x~jki0*CY*O)w0RDUDyh58-* zYT5gmHFZ8&KHc#4rwX0(7yASK%6`1Rn;xqTybSdAP&MyCI(l4=`-R@Cn#W^%VD&$T z?yts^5$2`+9r}f5V{?XRJwF=-(*1hkwnqEeNHNUYCmRFWQ}1k%<`>58e3An;bExSa z^G6j!3#gam(10Tjh5J`$|B}RzM&O~`h&FqMPg%*8vrJiK#3$y#PIsCFFimNkKsYiy zi3d0?Abl?uU~#nA9=4CkfVBSy+}~J$v*Zo`j*G;u+;M#UH{CA@VE%uTX1Z?u>df5d z=6Fw)4ZIx5*&1xghpYQXt5l>wBrCqW-@;!Ji`;>pUqI&G ztH_>~SoS5tIl>vj45kgmQb;xA(UTUd5*_0|z-Bfo6{djEBL zCpHe{4&C&3A|V_4nbG`@^mgZgAtm{+r}*62R#T;|0=6VxJms^80m!7b@mIlo3!L z?XNlU`eDiL!*bceh^SAOyiCE8xHFzGVdyt4X*kdt#|a#|w8a)fmgUh2Mj>>4F5pTM50llivAjSG#R82-%*s6Dh+nZdP?O z(u3ikEwS?y6RaFW1RKKpTH(9w4vQH}9AgvuD&kf2Uhvj>KY4kHWj~J$SWmy88-9jR z31mPgYTG7K>ADV$D8Iku2M9aj0Gd;LMUWY*toW5k1jzu^5N>DRvt$a~7tVukuo0fY zA>pY=fe)!7yh#3V0y(yMKyQ7l^XB|Djx=Iv8fgWtTSr>*?lHRT7Kb&Yg2n%e?6?;G ziREXyk=&vR=_hiJ&W1mxJIQwDFI^6|A0Hk}rOq?q7R<(15kEvGqWB)&`7edO4wmy& z?|s7cyM9ONccQK*TaW}6N>PM225{=r~zE&-$hO-@F~(%U*pi zop*(L-t9z#4+OnDFVN5P46DnXtuKu0$!lELJBLR5k!DRO#wGP5r zx-o{bfPdKl`ZFuQcz#R*2q(gU!+PTX4kKnSO9~i@^lEz5q3Zt@{e^D|!{%|&JIz#P zn0MD>UJNG#bmg%t*8VYTCmnTCHF(C0xo^A4yy<}lzI5;m?HQN^h~ZzK%?_|!VB-qX z`C9Dx>lxa!v$3I9s?$^C>GYs1j1VJy$1Bz;yn`fb)(p(b`<| zBmC83yLEg3MBo&j?} z`d0Y=K9Fr)!>m)ld#o1=5c*dK9s%nmruyN-*w@$TA#gvPL`vWpe1bVf1~6yN6m<0Z z@Gk7~&%@t_FR@%;xyW*X&tDToJd1~ZFOh`#>^qvM!T>Dy7m*>u!>{o96*7-rM8kK+ zi`Se^yfyJS6h+f#gxx0r^*2LT`Q}q-`j5f0;uQzUZ#=}6??y72Z(rD#?iaUFtV8im zxHHo0LM!Tk3&4onu9WN`0oyIW_Y&&dm8 zrlooMnosgIVnkLkRzDaAPvI+`j~y%izaL397JpVA@NXXR814=0!nVCLbVv&5oscA~ z=zWX?tOe+$I||K6F+mG4xbzWQYf7tBoV` zCmD+@4hv9?aBrUNMC^d6cm#$pCfgtb^wevzsB8EWaDYy%?;m6bFUN}Y$O{-ir+{PL zZSNt!7Pi1te=9QJ4lHvXXVAO2UFHZOdW+b z2b|$!aQG!!_y$$PDZ^Q)qc4di-iWwcN4jbC1=oYYwU(j$4Z?3Ykes6KX!0k}IPu{jT2S{nKDx&oDA-zz9v_JFX@Up!{x&0vPUN7MwoYlNO5g z?2YGHjKH3{Sqm{PV7kVQ9*qOZ4SlvPc9cd-DJ=aq`1@2XHlC>8vpoBTjDWUq{|PX_ zDOjNoczTmnfga3iPS=F=?oM?3VdMM}{eGixj`Bw_b1W-q{(~`hM>niF56ouL#~44E$SG5B+%N2yHd^ z!1%+nf^ud7VhJ!VFgJ*DRDeiY`O zkp$LlEwtCW z9P|-qwcB8C8Ju4Bnha2OU!`uAf(&5)bG8_OGj-NIWyy2ADKa)Je@d*u>9GJN2mjl~ z1Kc(q;9)s?a!UQ#?4J`hdnjW^TSi`4A+H#qIH2F+#|jWR;9V`M9#z9v^xXFd^%p># zS|3~y7wpI8tFsUD$XS#Hl$XYb*F?AHt&?v7QNyaE@l3`AJ{)U$QX+u!VgX*9R^2p~ zcN=@*+iPlkM+RyPQ0qYa%huTS+6`*?;s$jD_5_=(ZtueEY7Atcjw_hZ9Rhs56BA?G#>2dtl~BcrK!Pmq}bJ4Xtp=Iep;GJ5sSe4T#V__){fzS;Zh zffc)PfvfT@(U%6^Jov-WieoeL{iOH;*92jV4LV2AcLu-}wl;4K@CM<1(X`AK@Ll42 z!xX$f@I(;%^+e&m6I4IH0NLN^@crFjoO9oa4tI4@x#h0p!6xfGkY_S8iEon>!$0p%@9b$S9j{rYthrc?AU-&6J*|?)zBp1kVG8$LelM5)l=x1FN>%%!xEfKBG*FkOwYu*zp zYQJtSfOu`IEsI`9VZo+Y){1Wo&J{;#Kzg&>$}8j?{asd`|F!qIrYGra5G?@C@deQl z>D@iTPH@1~aKPmF1v?}nI4V~*h_2corQS6DDqj-brLz$)jbHo1pufnwiZ4BjB~pWZh3Uk4t}YRP+MG~^uvFJy+)(Y;OM@xQhA zlf2D4Hwbw!BmLjX-2UgI_n*%Q%5A~bfw84Vq`m9?ZR7ogfBrlB7tB}GRt5mwY@Qe0 zVBM&JX~j2Zyi#%i10Wg33FQ9je{{sBgZ_=fODAV8(skh|W`-OaZ}5Of!9KzNr2MiP z2{Xwzi+^x`Vi~uD5r$;Nn>eX@RBE?qkEOe9h(FjQQ-^%>~fO}!LgU|2K22Tj};CJJQ@v;rTyht+;D*J6h07b{cw&STcEig2nz2HlJAW6 z1-Yz0%JzkvVb0ARIl~O2>pKPz-+ZI&?%d;sZ2@mE5+OI}@9Wolg)s{(eAYUAHrvxF z4>K72-pSSR^-qY_-y&~8ekikgpU>Jz=M3zf`A}~g_*T|To01k-y7!l{`oA8Z|Ka@c z-L99i5$%68F|*le)xEliA8%fY^m>aM^rGX-7tqdEr#CFCxz+dfoINOl8v}rUtwPzM zSfKuE4=8VZ)dR~P^qHKb+ zjah7<9Z>ieS>lItHS({`ubo|KUklq`OQ7t1P>sE!w#N^Ur(`wJU);q# zz7wf6Q+0e-IFfgQ&r1w|uezR+)*Ko{iseG796+ytU{Orp8<}-{rqa|sW!Z6;xpALN z&mJ2LA@3tCT8Zidb%gdIUkYC%=pL8;o)Srzp3Ko=jya@z&-gw)nD|M&A7l}nd$bW-p_j%?xznC`$emU@-!7FCf%e@m7 zyeKHWHK@{_ekizqIvd{@f)nt~u?>j7J(2CP>|-bJZjsS=Rvsr_AP1nk@!#PEJb19p zRhZ$vum%=8WAtoT7tYr&FN1TG1DgYH#P=EJ=ea}$S;OnnaMp~x!TY(4@9mPv<|m@{ z|1Gl~uFv@XxPea({MEqMdb6{R*E+qWdcR65JQ)jrZv4DQGqdk|87uig-tPT!V*giU z^lWlav`Hc=*!^gK7=Sg~-3R^jj@rGnf3y7MX?s&Ip>(~d)<$Si#IhN*8u(QX$}X_i zku~1)+c>?B?!PO1en;?sW@6S;!v4Fb@3)JzZkE0u8W}eFG%Q-;hS)gsBFP(No*Pj> zX91NC6wAmz*snRk>U8mA3VzE1U|-xDf76Oy*e-uHk3?_by~=9|ndFU+_wwh+=r076xL|(Lw(j(VzJJ zpkD3IFZRH~et%g6ExJc9$?VP&EDHeqgK7|u))(jO!5&<3^Ik0juF4;L>+Un@Nxolw zU-Z)h@lq~I^zWcxe|(4h(dqMHDYcPfB<@q;i=)F6cr=IQ+K0L*ptAs9$pE5AKS1n= zDDdK6MatgZY1xJ%F!XBT{guxuKfmy8JYr!U(DJWH1x)7miKv-;=H2fM2YxJEc}hH| zXTzK4C(<%HazLLH6N7N~MLGQ{`bD%TRi~4-`2>Z2J%Gxu`46%P(qr!<4{8mMwGNac z-Vx#r0lp1%QvARRBE5V=;J6&`p7War`EUTMhw?4aof9=UC|A$wiv|=oVj4ZH?eM5V9|q5vB?Y~ zA_RPcOj`hsz)KLz*!RvcASICkfBDaSa0m>-JS1i!@MaP=zA=SbxrDgk9kCpEhktfv z@lDVB3?~Hn+r)4Abo~5}4u0q0LHR!S6B*;2k?6*l%zOA*@4mbhxpQx5R`Pf`BcgYP z*>B44yzD<2F8F%h>3t%{m!}0!4oB`BuW8*_*{es3ivQvOZ2;GDQtM+ER3wo8(NoZG zvybo-;0IY9|IQvQRG0P0F&kI4`@G*?=L)kxnD28~BGdOJQu%27)5~M~WAkku30*&) zDsP9m3aJu^w5=3B=ET%*e&X8uB*h08%me^4DMom8 z-uZbY?%T2D6T!s-YIQ9XEg5S=nal6D7Iogp;JdT3@QU#P&JV*r65gB^gpCRVsLR#k zAXI$I;l44bjX=+p-)`y}DWJE@LXb_gAsX6c1aem=I2%A404eClKk_yty*@JBzh`0r zpNn=sJDvb5R38_+V6W6+>+t`mu-Rsjf-N&9v{O>@6@gPCMRzCS_3L~~WbM2$bZnx6 zU&2PwpRlZIl*WE$zye+OhvdKd9FW zUE-Q%eUQ();idPrD3LZS)s>?QJ|DJtIDNirj^5Y#02S>c{;!?~1tMO{K!#x7*qZwO zmFNd;uQmGN0ZP%oRb4!1jrdjbw=W;a47Py$2M2yIx^?eZSNFtLygn?udo=Azoh`4% zFZ34rWrOks#J_yuoIzrOVq5>9_=6*~g4izBKuhRPDmM-PS|P;^$OzvLV9lTjDeoci z1*XRen30j+GlKD>qwjYP?l;c1NwmZk+21O*z=YI?c?2^vN9^gm+y3s}^6>@^Nkrh$ ztRwh;VlfZTYNC_l4_uI0!*d57Ph{W+1HX=6@UFq{kDgs4T(DI})F;L&I3|&T(}T!! zg3PPK1b%6Z2p!%+>2sLD?~^_m-1Cj1ujY?$l@U>VB3IG$zK?uwJcW7_@!Bv9U*nva zuW?L|1#(Ck<5A6 zvG=J&`d)~>wB2rD%MCMb2Kqrg?^*NTP5c+$ zo&5_3XvzEAVuJJxy+}{N7HW1Rz#jC<@|{Gf5x7#EAqQwHaE>>@Mx`f@i0#H#hnS;! zUA(?S;_;6N_Q@Z#mv$+?v>0G$czPfmpeB zp-W#|+rMl8BKR;EHQ?8MkF|8_x?erj>z5tsu4ebVJL9FpgOQ6eE_`R?1_l_B-nRGT za9S5+daf~m*w*W3o{-T#QaL){yBn~BT%eqw+vV-1`<0?52R^I(Ozu!(R)~CT5FNi= zH~`(Q9WW!704u>VLttD+HO3^xrr`m`2Dgsh*e$l>@m&p{&ZzfWdjHfLn~1;#y?c8v zWXA9Z^PT&31~yAj1b+=I03f)<6(g>=g-lFhho<=vUg+d;Jt&3bN}hd zX=-A5lQSN1NPZ89cmLT$CfChV-=DYkelzewVimVV-%k%y?KrSykiT+9_J5gG&>oLR zGc7j%%9+>qgXqfJgZpcPm@fnaUr)5}h2a0GjPN`ZHn=`)d0g6PyR^)@X~$JN&2QY# zkv~>&tq1@<0L)zWe<54%y`i0+QFqf@a=CWBa#9wb_MCEn#3)(vy;=dL85$kGXZrQB z)MRc-JtrQ_If?pBh)1w$?jb(yd^A=aQ;PI3VFcuDo!I_Y#sZobOJK9iV(EVqKqGm)0>xm3{l*4`Yj94~|8G0i67{eJDXXTO<;-G<0*p=@ zUmU67JAtRhcG@6)+0b5=K=T9C-yX}yU?1Ht?=Rc+lCeX3iC=l2UZn4218vB{x4J}$ z>i055zq(}Q#H&~nWPE!1(BOJnRi@GGupXi%;G*LDZHGJsy2_&1#zT|P%XkRpyu2`4B` z^l`}#EWk=IYo@pM50~GW+OYEYywv9W@H*>44oyB{pP6a>^U*k?Gf6CnLEPL>JKl+Oe=ofm~zE)Q#1NOPz z06Esy`~kim+N7@ens}Oc0z~`9N1q)LT+ax5&CYgFq5^zje4l8Ht>Xo3o^7*iyf3hO z;sJ*xLUe94;k@X^KhN0sh~BQ59d~B$qTaP(f;qhhv(3+%A}{yeJn*5+q1h@kX%5Xg zqvvLAfjOB;{Jng6*L0Ovj+~#9Oli!M<2+j-p^yLJe--l7bK2(RCN9Zv18uV`%Px?JQC)r6o=ch*}C!Rhw5tMbhXg|?2{d&+22Q+&h9w-j*tXQvokSnUy_Vyh8 zhW>wLWRJ9@CO|yF78YJgL^h3 z%}N?aE2O_qNkr=_xt})z-WwZ$&Dj8s{b|#q5#a!_pfzorkEj{AffL&HTI0SwUkq2t zwC(G+c+AM3BbL4~DE_&N8fy>8gG;3E#zjM16a3#3FJNkXXTQxUTInOX+}qo<{K6sV9m;8_U()P!)eQ@yK4*q4< zF8gLY`+3Q6USg47$h`fNGJAJyp8F5^E=Mo(_#Vi7=JR`}q-0xX1>_;IUfz|Jd!Fxn zdMy5H6YC>Z{?&}-ej{4{JK4ULW4_frEg0G@wcjXK|61{(SuYRUUpyDq;acr?a9kq* z<@eV)($EV^gBl;q(a7Oh1rLkhL0;Z)d$HWrcJN`cr0cHtrk-cqlyi-`w-1KOgj_ zSkdpyjG6c5?|reUH_Dm<=jTnLXY%FIU-bSWzQGE4vv^$e@!lCV*f-w6q4{FoNr}Oq z8CJM75raDuKYTR4!t(?F8Vljg@!a3pZSRPs@b+wP8~oP6e--UM5XAp1k%gZP{5;mg zw+0>x;;)Q_adPrIJnNb682^67Jg+zKgUnrgFqX;by?wLF$p+!6kM#bg_lvyc@O)(Z zzWDlAh4ZeA#db&Z-IJNcL7eaD?0qSAzrYX+PVITc&JO~&$m+0|HxI7xrJ>2WOJRc|4p%k?o8xxXe@wQ4S@Bsd^-rq z7YQO?OSne<8g3j5KwG}{sP8X9mA2o*%Y_qBR+0&Qt9^Vy$)nE}>154+_(G5Gq zpS~hqz@5>elVe8>>H1Sf2f^ZA{uZO{9Y1{lt+QsCRX=fWX@2!Ud4x@0XhR}VN)y;; zPdO}EBE53QnU&JN>!qX<(&Je7(_`(<%*HR{gHvN2>=Q}aKKf;Bwk`9Y6(hIHxdS>& z;QYuMd6W);&7qwkkX{Ne2bzv_J_s~caPb&ZZmjAC4GSns15*BjK$lG6Wm{w z?b=xVb7C_;6=^rp$DE&Ab7e+agK@r5oy|WqeTh}C?q}4m-tz`CBHC-#Md}uCGWBi50g)*!YI<*MDZN#;^1LvPj?7>DM9Y>t%xb zf5^6U_a_VB{~Jp*uZ0<4*_36YFyFoD(Tg({{E5!`XD$#vK&|@+0z`f7vEol*#yKTGzQEga?IU4;@tqeiCvA6O@WE^V`@TO~ zBX`U8W$$Z|m2U>>vCCv?Swr^F?vwjrl(GpuqYmMhr*ckRL>xdiur#KS9f(*H5!@uG z-aT@2THmrG>t z&GGQR-+L-H$EC6KC-%09SF&R7!@a+YkN^E>_4{M3%udbD2*=F~zFEilo@n`b3((I> zes_lrZVZE;m--wSPGrPf+&jXD{;u&pG&#%)_T4Ki+tQpf0wW`H)^E3Pr@ojy;PtWq zm;=hgq|4u3GEuA;^=do_Sk{;ljo~z|~@CZ_b{s;fCKy4rI7=S0q z0p$m959Q;f$S*XZ`N2i$RZ_ej(eIjIl(M0ovVwi| zy7oRb@vPdO^VYQDpH)|`GZwgJxcHRx1}%4fG^gKwfYq`1^xMRsmOm_9Ee{7Y>#X+e z5AQ}^)ca_0b8A?xeEIKLb-&t4`78f`Bkcva0?ouKq09i@IY?)Y(Anw#S;6up*=A*b zdZg@#SOfcqC3Xt-w~q}#L}14p?UHkQCq903*l%j?J|bx^2$r7C8?tZCT-pz0X3gkW z1Bb;PI5qb8wBEUi8D1K%{N~>6u@3IaSmJ&8n;VAsey^AJZPxs#6drPqJVzl}L z;i7AUeBOUME+srRBU`g$@jo0Z|FQf&6fO5y?0sg*-w^Dao3bCA8WHJd{az4mtlyX) z$5;ZOxNt8Ilm}qjHtzMRvv~c=Yw-BCxiNf(}Pc>P4-Ti zcptFvuO1W^4J&0iV*wOy(3JQDuMds?%2H4^@$Vi-g?{wB9OpT4PMxtASpLpgzyS0pQqhn}uZsJ^zZ$>w0DV?70E#=nHN1gz@Tm&&H5QP*d*`NZcIxex zQMi432lfum`Z@>pjtDng-i;+Znz_a=W@PbAu?^mqw{ibZJo;buew~rVKhGH6OTBLd z^LNF!xTH5D`u?Ea_~3q(=zBc;@8y~IhJ`Or5Ady<KnP z__;y;J;DBUsp&Zju)jsd%h!nQR=T}L^&9H-KpkRFbI+<7pWQEfb${N|7}Wc--p^9&S!sFapc3t81JTMDXY>O2 z)e~?Oz!XSe?JXOI+a@~T(X`UcM1Gd;?0&s}Jpl189@L7W0=$T#I({YYUN6VsT}1Q0 z9pUY3aWdT zEC3Hz>+|2M;=JKq-5_WC-gv+DD9?c9#x*|GGsvlBC^;=TRI?zdtHg^L9?4=|m_vh^ z&!;Z46HUG@+cjZU&t!izaBIYP4zdi%l|GB!^Of1ABcaxY*y4=CfjmZV{3G5_X!zEIHY%CW*A)3 zyS}p#ZVoS8lC^iQ%UY$^#hW-i-u=X+8`Jwt=I?wc9{z8FgD>Yf*Tru+Ge|x@@d=_A zu+kAJFXgyA`s|)?^OO0T7mfh=H>GqJq?|_wO*_PLUO(8c@jcqB`R$-yYpPn3>$WHi zP0$HI3Yv5y@hT&@I{l);Fj2!RZMHS}8zgsUeT^;+Y5ddfQX$ONJ z(XPf9P1?|}<~qOsQ)VfB?tgw^GXB^v>%~<+I0HveEBDp^)||6`O##`O#qlS< z6x(xJ)H^K}5lI^AZ{Wz=Y4D|jwXkI+5 zuv~AotVyaE=Scv8JJEAzaRXv4g`fpKYC`?y#h2L{Re z=5Jzt_l*6@capCN((jMHeY-iir zwiNZWuiCp|yjr=PA#I%{y+@+myXm*WyxQNnoz<7h1{R;`R!UrAo3!a=X~Cam>}62z z`{A-P(%K`!-$;l0LmQwh0DMc3-?p+2N*5JRc*hEf37ru8=&NCYJyPn$f{1r_@qfnx zwUE(^>Ogg&I<*+#)m!ENe~Nw67tRauuozqU0!B0|1_%RqU3T!iJXdp_nGwi$LJmzV zjBi8mb%nj-k@2pzeXb6N0gUs|>e}@E=&!ke`hr}M4=Q3)+8@bMYk=aybIBDFioBJ+ zvIIz^yiw^*#W}B`=~j)DjqKurybpL({O9wdDQ^mfZ|NA|k}v=|_NdMu*fY_9ab0W> z{BPZDTXme^h{1$NC-%SzLEE%gt#0QJ{`q`U<7bH^ z{wkKkPxFP1-$d8Fsn?6A`;%^#%VS}aTZ8+vlJ61GSG$CFJ{yZ{*j8$N`mCQtZ9h`DXFIcB9HDl%Phv;dSrT*i?Ud%j4LiG5- zyYtE`wq#5I&980X)#8iN{$+=*lGZ#wZS{COqfHXsDjf&%%R(0YTF`QV+L7Pav+fuF zRr+TA>&tK~pTPjW#|-kDrz2y)1BHK?f#W69mt%s9E4ujdEn((8;sx*(Smi)ZuBK@*a3VwV7-)m zY_$1)u>((!H#j@>V(jd)>`#k-Fg*;1^?XpY?H<9>&XL4z!vR~xZ`>?$GdkEBnLIYh z8CDzIJr>b^!Rn-Lo0wn55DxFQBN9D4CbE4>+U%@s=fv)~H2iQ`EZvLq%Pd_QC4~?~j{o&JC%ZT?E_YSU)=`5E^V};F6WbCQv{(BOYxi7xiZK=iCi3S{; z@{EbazgG07+*fVV^ml1_+lr&Yf3<4EHF@9%^tUQ4O2OQaJI)v1V>gi)|N+ZMn{-V`}b=~tz&Vco@D?3n^t}`@6x~5##g%+1Bh@U0N6L;T;G6t zm*pV(wR%j0jr4)^_!g1s+0kY9M{4;B{HD>Td9ctmF30OwV4+5T^RhI zoBxauTo^R5*6^|6fx}~e?-kpByVwI;<*to`{tdfrqj12c;e;{aldZ!M+vjiVq+$QF z3p@wC2WA=V6t=*J*rnr?o%74Ob^E6bSoOQ6G^}O2MRFV!j#?+$kM#_<%K5#+MMs7k zrl(w2=gq7KgZxK=`tIBms+$l|6P$OWzUO=*RJwz8Smb%G71s)PIFY4SF8@ zivN!V_1XZSU+F3zp#EzSaJAx5<(Hz7R!IMyo-vZA!@)a5CYcA!EC5Eq#e&+taNo}Y zuXo$OSff(X2YO2QCI^_w-1=L?#z$nRLiI=RHwwn^|bx%0px=7r_Nb5S0 zj6$_sOTQNS={Z`TE64+zY>advgEdm4t*BJ;>s2)s@>Fu8)*&D6&^ARnu|&8>O{K0= z`^ypPFzo>H;O${nirpl2;Eh1${+ygTofU+kotZ1ZDzg`a56+Ez@+Q%w)Oeq0d*3Q# z9`PpOg3<9&S$A+$_Bq-h%(8yR4kHqGTt7%&H-D^7Iy|klX12BRh_xf|HrCDozYTvF5>cVWAPZ z4{u-0i{NTg+ooaMHl)o;|La46YI?9*yjsOaDPHMAt+JJA-YWIs}kWakNNS`Bt%9rQCy<-4c0D7ZHUhx1= z|5Vy`&v58hVnLl2e*OCecE26~EPy5~>t7TUiV9z^_x}z5lplLvZExK~e?|GLhC~R& zyQyde_`&EXzf0uZsZU4O9Ts%3I>0T7KOYqBv}XFTY<+cnLp6QSt|1Yn8$>v4P&R{z zFPT-JD97aCIuU3WBuZ%$^~j>==U&n72ogpT=K;UqwtfXwfBsry+cqpHmG;KL9BxHg1|L`VsO4ja_7BT z->YNvjoEAJEn0?|u57DxX`FwvYUGo3j5mtr|7=)^Z=anP9^!2V-r~PCwm-A^E{Kov zx#-D*I?H71q#vFq4@nP|)zffKYsr>g_1E68y*bmEq1xECfw5Zr(FzS5H354eh0+50cgK&iEnLU$#Bg zf!Eaj+~Kp-FERjZ@yYbU=tNNF#L~Dc{k>{@TdiE@!l@_Glp?3>Xb|*z$9*fG7`Fz_ zTr6HQ22j89TtDL3XR{sJ2nll~mWU0oe2{W@5HTlq+8sf~LD4$A83dB`_~`lO@r!u- zQuddHl`+!268|zoX>z2Po-}&IQCR~by`&bYCr>rMqgtE+_02k9Usk9wFz3Im8nh0N zT#OB(_Y1=v7o49Fj9nH@L1f_S1>=Ml<=o6f_|A+)aD4Rck+BN)4-YVRh^1LE>@Q z0M7oG0V)+7Q2sw?mjk?yUm1WmTQ2HGO=hRHm+q7JCi#qsp*d@GdBgr{)8~g?dH)@&!e|qxk+v#1@hKtHRpzGvah!bkyeQOZb|8u0FQ4 zl>^y;)>r2!DfA7gz<-MkxF>FvUD3}OIYYTsqO?J=ca>A{O{5?E*O}66luZ0<2{;F) z*107zxLVM0U?t+w;l?dvG2tP&!p3UR(b)E^vd0&Uw+L?#+218kWTcUJ#F4S+KbP(F#3WeV z^y1*3_~bSDBSQK4q}a3Ln$2P-ux1yvt@_eVYG&GtJsDHfi`i;RT7>ho2m7XHzqGkI z*^jZA&i{iXL| zOxUtC1?Rzd;a_wkMOXoN0LBKux*Jz&pXVt;NXg=f1g;eS?ASyA9ts288Y$gB za=vyaX-b1~Aon&~fPPmR`0w7rc7o@SLnX6hN82AMMb4DXCgn(B*#c;P@voFBqoSU& zu?Jgl6{hfAckxqq@*XiG1Y0EPziV_XKEdg+QhAGLW+e8KXydCpKDZ$o`NpsTZx`{7 z0A2$A_>`a+-(c5p$YB`^*sq&aL}YKbd)OSzR6Ml9zVGd`Qs5Ccc zNBTidu#IUmQoDIhwlIJDrhY{_M_eT*(|$7TzFv55O6oX2bAA3S^Buk$%m0+b0XK+6 zM5>xgTG2kSuTF7a7SNh1o2vYS!oSQ=zm~_6t{h&To*9!b#^%@~r9=9S0hX_?HZ)d_ zzI-LVUjN6imfU46oX5;>^ZBhMOrW=43|RQb@5l0YrnIqu#S;e@5=lNG3~+y9(AP%h zC&dmm5~$?xD|%b&tNWWR06!G|=@mIaIrUyO2WOBtHI&lT(9e0LAK69^ihn(Trth?B zD`G%?a)l!T+O@_A;e}PAh1QCcqQl{Vy@KQ^(eZq9_Pk&czu?+n|CVgbBfc`@{5Rzf z9gUU1NF3iNL4)(|@u~4Bj)>pHNWSmjhi#%E^ zU<&)hUwf+ho}BDWEWYyJ?8W8NvLnKPC#AKXNW}j)dB6YLX}c3rxAoKVB?qFs?0F*q z=y*1DJq+Mme_9Bh<(&Ahl>Ap0v8NUy3b;q)_k}!rW_-5yciPYy09eW(zJGiDqy2Z4 z5Ojm>s)>wHK7j1tHSC=l1Fg7U;U4V|@>?umiOdKb8U{Z$mMI?Tm67Br@qgD10+j)y zJ`L-h)fSMg%QtIw89iST1T&C=V>O4qKpmAHQ%;fJLNL)OHM>55tf9mj8*r8Y$k0#V zPVOgt@dB(sba2%!lDB@W(#>M?jE~G57+jwa44)mj!85-+f6O0Xo)2%~UYGd%9kGh8 zi06K87q??10qbB^{$CP);2r(h!8bPjmD$6-zpVSaCOEh$IgsMgoIfu*id73H#|qgl zB^VKoT{GoE)60s~z!;n@QniKmz@Qr6-l(>t%|Nnvw{^MOV_Lv#>T7$%v*aM7R4R_y z7`dqrEHb7cY0{%gd)+B+KK3yHt|dp8T}D`~Z3gZ}k$6^WtWOE0M9%cB?PVBS6c z%K)x6**HU{FgGO$=>q??EuTI;KHkSmiDMm-+P~+&G@v7XU_};q{m=RNUD)SbMe)$? z;#|yQ1Js%(vH^ZS_?IzC`?E3vUccBUA|NL$86RNj@c5STqNYW5Z;aGl679HsX9Flb zw7p1IQjtM>)xMFDtDlRNkv62I(63AqFJjL)lKN`lF)rj+6gSJhkfGEfrLu%~s{M_* z%NS^Xb6TDe|5AtCD&~MjWSSJ1cxbl;O(cbasxXb=E##I^H$Rx@mOd&~TEq ztk$R*lOkFz&NXUEU1)hVckyT;lhz=e=r2q!oT}1#mfu(6-}`w2&%%Z)JHUHA$9Y8t(0_(2C+5df^0RqSK1Lw(QsdBlsfH&!n#%n ze8fHG^NFzg_^>Q1BV8Q-^}`EfUu_9q8Uy@y_UCJXZuL{lhNA~Be!>FyEOjmc9By&IIvDTV|l4n3`%VYC=)36GCwzhA~c@Z*n*J~=-6`ph7hw~N3(Une^)*q)u}{SEoME;a(TzV9H< z%$3vAe#dopGeeM7iVhD#_D`<+#7h2bVymOlrfB{0PAHGokbDUG%C@!+wn)Q2NLSuy#1MNuU4Y^Y1Fdt>zl;(@^ z0Olr2Gc>vl=~q+Me^}u4kMiGFLYYk5Q$K70tbmFJI1-4Z0~2Tmpy{;%z&_ev?DHMv zC4&C^I&fWMXXGT_y+`Ept4@Ul9I9G!ui~W9VPz|=v=-7Zc1SjUqiLoAzOv*!IMKQC8 zH;wm99%JK=j!r9%49~2SwsdV?E75plhS&~3n@h=_k&(# z#r@LmAlfVJk+K+|Qt-dc1dvCNBuiE{iafwb)~R8mr^3k-a+g|CYq=r-zYkk~9M{Bk zS@u{2a)S1a$S*!>!cC^@Eht&WVVF(_lv4aB@(b^r2f>{vbV*;ogKN}Gl-}j zRc2~^e|ii3FAvM?+6ZD@4Zzhp=1k$gq_xRp(}GA?p`3l?RV`O*)Nr=(hsXvo+_x~g zNY&1Agm&b=Rsam)=%J&A%pn>UZNm45*)|MBfqdj- z?jtR2AjdV7TU(CxA=;ICHr9tvs@Ap~^cX$Jb7gV9(l9c$JSlOJX9xXj?EaTC`hI&X zrF|nSt0h&_^U6nQ_0svG+OrMmHL9mwP`V#xsF{FBm)1YesFGPee%DCrUz|APBk{OK z#-;@mM$FjzV~qO$HYefX8waepO$*~+9w-Ko_udta&wL+8{Tu$_f%kUWe~Dao&g9=m zV#i1GUzpxy#hK{~#sgU?4E!Sn^e^pQ49}ii&O9xp1dcYHS_5ga*ZALTUH8csnG^$} zSf5>)Ew(6)T?j_b#lCt=L>D)RF?79oDeFqP_lXnk0+;#^A_zuktLP1l?q>9WFOQ7M zxE9|d<;%pd179e0pCe`sZV*diSlW?wxQ$yBvI@_TFH63*o_wtEt?r*hxwW3^XPqiN6c=@1g(~O{;-o^a>Eo=JyIJ0kW zjBT`g+6VND>;AEOWP`IHTXZ+A&kP@D`C#R111MK@hw}iIPO64~O44vo%W%9xTK>@Z zuFqvQ%jC2RBV}mH8Uy%kH2pE2Dg5i@w`ia?zmb8)3HS=W7j3i;4p94Zykzi??Z0@? zZ%e&9v6CUuUWbQC?}|-#Qy5@k=FqGcY1XTxcS`G*?r-q{`vonJM*vSCKcZi2k`y)n zk8AcGva1A_Rz|LsL)oI=l1GA#b1DBG7aBxaLx9NUSUeRTN*9AcPys)z zHJRtb*EHo5-aur%ZBWj2zqRM;o36zJqsW_$0m$2$iPyp*wYQAyRb9Ah`NVE9AvtiZ z@Gqu|0nCSAwRyFbwu0wLTW#)to?H2I#@^9lvrS#c|Gk<3&GqVvPW(H5&feQ?}#*xnlq%a7x-%6 zN@0Lw620cDVb^5D`oP4lM#V#3DH0<)gJrP|&Shqg3+?iRN5~c0U*6yxvM2VHG^CtV z=tMOdIO(^BmFd#tqC(y8ub5>YnKw0ggB}nEzSXF8#x%twAQ=3MAw32$R(t}A$V1-n zDU?U{si*iXo@9xvSK;5Y)=ZmQgi;^=yh0g7Htkfkp$)5r$~GwcbDta|tHRfohp)43AI&g3bH%(3#L8E=n0AQa@YXP6Z2q3Y*#k#29`(g#uH_*tJFNZTHXzR`kV5aP>SbK-X z+ubU?ymHseVq3h^TlB2+f$0@{hO>s6;1ZH+1~a?9`%1E`o(|gdaWBYH+Deb z-AI3n`#Tq~dsh5AS@(L$bkm2VD13{~ zLNQmozpj(FY3fST_gv|>47~En(p36-L$N={R<^>wQfwZUq~GhP5l(8V#l*;a)zccI z>v@(wfe5w?{FeOzrfm@zz_irITDEI-j&j+PFb-eu+b@>jEm;%oU$W-WPlNuOBNKZi zCbDL7D}RqZ*4`JfuHy&Zoy#wh^$kkXbB{O|pC`LeXK(`22 zipooL>L$JF8=c;4hsLK zpge^EQh_znQX7);u_7c zbX6J=ujaN!_3IOD2Xmtyl+{xERIga~s;?Zdaxk@3=0%(vfAHDp{+|S0&jkG^Wz1uA zWJr!``dS8n1;jl%-Sz!NHq0OcRK!pJ5lgcC0nW4tApD@^;A{a>HZQUmfHcdbG+Sn- z#e%LqTfEULPxHhqssbT!Fi3ZkqfSO&+4-*t46!y7p8hZ!)BURqf zkfV$u{mP}1r(`0z>O8fXQj3g=Dy}2_oNqRQ$O2((p7)-53QzJ{p&EuLgm|^?E39x_ zh^uRbB=c=Zuj@WVd|G4qQPgwBJ?mbjlWqF-G#mt!MOMF5$iY(HU1eHWDx=F+Wy8eLipc@D<7N(GNrNBzm3xRtJMs^f=frOaC7` z{9_Bi0A(5A&vTDB*Xu`0YOW7Cxsk%Vj2v)R@h9aj1|Y9x5~rG!H7$OacaaaFRKd!h z=H}Rci~g05&wsSIv3@w9e12^KegBUI$7dwIcUR&$CuUrGR50?9V1CK)fOot*IeaMn zJ1S#4$HfMK0cM5uCx$OZg!knD+MX4^*py|Zf&M8*sQzhQo4kPJi3p{#$-a_~{EEY} z*S)VWR%g{`+ymxh33Vtq;IC4)C-7wdxQ13Ywr5ES6W&WHte;O-|MOI>1MZ>r;)XPp zbK%T0@nlV;iMQT#65XqjAaz2-G{%IoLS{eHj_1f599uy&U}_zvO41v`MoGsz(I-lq1RVPJAOP&@cxcJ7SI1>a(+T) zx6SBgy3dY3FeMscY{vmBq|Hm$i=5))iv7_y;=e@$lp1w&aYjEDN-B|3WLEUr*QOK4 z%Bctkq4>s4hm(Ixr^F-aVoJ6GO=4dxi#wlRr6@deOnOU2?%o3%h%c^yH*@h>{91C) zS1VN;P(o9fFZ*?_O3(eCqXgE#ma%PMt||q&$wuT;zKdrn51(LOa#t~ueZqaKgyBa< z$1@WAKEi9jc3RDm{X$X$0eS_yfw7@vWXCUAZg#9K3pq&e`w}-U6HuzWzh%6#>SeE zi0~SbFF)sYhoM_Xj6z+(UkriIS+*eTFzRoj7E_kXOvYm4@8Pk(|uC_G~xOnuhx= zK`~A}kN>2zjq8qj1|@*QtW`aO+^soxb5zeKmtq3;ZSg7%src5?y7Bz>h~0NZ?C2LW z%jZYY6>}2@ni}r+n=!Rg9H>)2^V`n=dH{~w6$60(vJKoTU!VV?zqr7h+gX@F2G9b~ z#-wJH+FHU!D`kG-b@2fHl(m1^0NVdV0Epe`!GnLWj~75RU-ZKO%mRc1J{-&Lgz)+k z>EEeg0=|&>xy1Ka-(sK4XC0r2&nDr4A?eu<#|v0Cd@&|-0Z$KGu)6hm(E`VGv4G*3 z1B28mMM_iY{=&Mp8E7(*H|HA-mH8%+KmKR_|pb)R5$O7z_RnfeIdJ^|J z!n|YyH=IzZJnVl3%*N=KtaqESaw*j0)oK%Lwj?iRo`2)E^N% zADv&;xMw9i-eTD!_Q1#>-!+_8%>M3qEAE{53$wCam^Pl=SpjPWbxItqk31k#?3Ess z3Bb2k=-Y}D5Ix{-v9D!7s=`-clmE@?^+@I+HMl^}EA67Bp_T>msTS)dCIf^(_@?>+MRF;HNau-*W<0>Qnd9MFS;gzy% zs%Q9GkNn#}cHk$-V4; z7@*(h2bbU(MgYGR3zP$l?vbW6xt!r0wbCaHpf|7GZ=Tu~#T}f}s;su5Wi8uUZxHmu z0M7qm777@g~;-3`# z@+NZ0p~_{6xUX3*g=YSf(lS{dxubAjx!7K&wd9t&o?bO<_jxDBr1yTGWE%47=M|3J zEIVAXau@O2FYh8LDWEPOstvdm>414Bc-n#XrBs{#@asEPvyG`UB4WCHl8Q zPBeinlw!H1oiA$Xl*wWPJ4t zdGG78*b$R*=Z2XV!2Dp*uEZkQ{pfeTALutiKwq|4L5&WG!_uZ|STwMb-TJ!D@RZW2 zO_w9tB2XEZK}32nLg7OB7vH24&EmzUSSFui3F=Jol)S{VltS+-2Jp_pwAbXe%BP*H zlG1Y4zHAz5$6Zx^EFS7mtjC>lT0P11t<5N#h$&7XKkL6zEWHsy`Jssi-5JgQ{b>G| zGnWqZ9~kLax096Lg@2I?{^?JV%sKshJp+9Grp09ky#rG<#!x0WHmBO-Ka!)=U_WR9 zw7$14Sdwof{Obd>(EvPty?(U4$R`>A`elO;=KZuOdAH}*Xzx)SMpuem#~ZJs64~7{ z?{@DP+kgMCz)@j=srfrB*1=Xu!KyW@C*3x|{It9qa7QHN`p63-0%KwYxPqk!K(g5r zpRjVd&#TWPbIes#Bq|o#%NzhdtTCd%1^_@pS6TzNMqg#Zj~jxm6y; z0F8%9%~owgKGvh{aebx8#AfOB6B6UQKePK@jL-kQu)w_;_hD6NzeOVRp!W-lTI0>O z7oQ-r&Vh3Dym3J9D{XHSfE1v)@{%VwZhP7k`iRI&#Rilb+Q2_r;*EuVYFnd##sEOO zn>+v?)Yw0>{{JcV{;7Gp_u|a$S*yb#BWJ9OwR*-*)(yT#r^mMm3+xq~Pw6}Y)~Meh z>@YmnH%M%d?^&FdSm2$pB5sTwaa25o?J_%X*a8kvUO{1b_F!2A(2Hod)|)bcwzX*C zSKC1=Ui8cLNdr}&@9~TZJ(m%`rxPE(HhsKrc!4#2xQDyBO9r6-3g?CR;)RL_itzIF z#dBE*rP*Z&I6zxK+`|S9|DIF-D?8k6w5aN59p8B9r^eX+&I!i%*9I^a&~E|Y{eLtV z=SwZK6U*B&8XX<1RM?Ju;bztJIA5&eYn403S2(zf3m%gDcFY;RoI5TNgGm_=xH|a1 zC!;OrB$9You8#{ltQJ{8PLOF)EaH(#dyF1*-@Q6g?v+v{7!9aiRPqWL=xqAC zi1P?6dtEz%D_nyaN}82va^*Q}oGH{&2SydNz1Eb{YVBdKfqUde{DWVRs{Sqy9psDQ@&HQ5mtHSx-f@Al5J+u` ze*71&)N{EPi?V8D->mos)cwVG;Gd`;F+kt?Wgeh&0bl}H0qxJ%e~-yZmdxW=KkX+r z3x|ce<-!a@qs{sH-I&A$_Ur6`!{Z$unEUp~7~x)t1RkA{z*`b0zAMslVdRCmK|6#u z&=*P`Jw)E-+jyX9f3A_HdXppBqv@xTSNogu;$M8D36X=61+_I;VZD6q4z7t^?*$>| zCZkYVF)4;Yjrip(sl{yL6pu;c9HN$EVOw1D6!Bwy%vIgZ`Lfsqrv~2`Mr$v-mEXYV zhXsuJ>kHKH!gB$b(Yt!Mo;B`D8QW90Jp@WxTcevU1Kpahp5&J5wHC66#g%aeh|Vrda}|g-~5&a z)220LS>JW8urHQLBNm*UURYTe|D*vyg@5?L`2+GoKUTPtbn1V(Oa${}=MWYCxzD(q zJOp+`d7((=kypH8iK#1F;~r((V;PctTZOVy9<3wVR{H=xVJqI1*&3TzHtt*{J-bo* z_2~54?U~#6V)t&(*TUvA68jk!&A)bfpV43P=Bd2x+3+kX>-~KFeQkl#?Aio{fAxQH zf%buUI9~wt>kITp3-tjg0lAj`M^fzv{UFw7DNXps{qNczjs!Xv2+i+^0RI=yoW9}R z8$DAqmOrxV-D=myv8`v6*cD>YuNxb2+uXBnEP?%E`5zknaC~h3le6yaWr+gJP1I;k zEP>k-RX8D*!4B~qJ`)abO$`u5kCC4Urax;#vOuF!D+82_`@iJ5*hAzN;=J1Qr^rUa zkr2|diI%3ze4=_0jF19tT4nJ_G|2^|Vyiqz4IbrstzaAh^!KNfF-q%G z0=Y;zP?C_Fl@_5t`ky!;^8ob(Y9@gH@dVzJnLqy+#-9}AP7a#aj}+9~{MuOy`)*iT zwm8~!wZ!-Np5C^J^X;%8Ccx;x@$n=sj}35tyvK(kNq1zf$l2k51Ck0mfcb$Ukp4ox ziwmkZs~^2qNFXiy-b*>{d#{7mrv1%VES1g&aY&3gASLR5?F{afak$GXqQ|F#Ielxe z)KZX|Cy=)A->!;k@meVo*F3C$LmnY^zxA#|52Z6Zc^zr(Tu#w?FE)Y%O{V-Ga{GJNFyLGURKQtdG5ad;z|x zcX9N_ov{GsX1gad1Fnu_9hrFG_K~G^(m$fL;Tc&kKTbr8My0+mUg<@;8jcbds>PD2 z#UA*k z$?F`8ZF07}-YX-pZyNQm@jPlldQi>NEj8_F`OMpzT5HPcT`NRWt`lCKkT}jMLHidn zzyBK@`sarUJ|Eq%ZR~>j0#5s3s z8I%?(YXRwVvySvHtwr1Mx5)PIX8^2!wSBVyi~=svz4xJY>>+!@d3vsM$=7w)j%FVbIohVP1turYvm#B`#{R!QD=(!CA2m4qPxt zxK`II`7ZQp)7qbfqmsMAznE6O)pW%cB22A`go9Dii3#r`O(Daa3u}d<8b>VTfGPe; zZx+T#Zw_i!C2-+$>ZD5PwUSjzMOk##`2iK5)H_+aXf6*>d ztO*PN`ZtKxzjx+zoEN;$jn02I@xG_CcUiQ;E|Ch@TEB)8kt>_1FXW2V8rQGrzgNL| zu?2Xpdz3R6pez97OXeu+fjcXGSr*7*>3x~MdJ|uU(W=!J>Hg08FBTB@&FjY!aOTfP z)B6Wz_U@^P?QWQUF5k|6DrRr^r+118U}5k?A0W4^c*`iEU)S9yR>cY3yx^PS2RxJU zUC= z>qOOh_EST3=>;&0_SXVXcdJFT<7{dUUO-YdW5K_65Pq2%2E{O>KT@-Fv)-SDZ6%cY3-_mcPgiK zw`Ju{(5XD*rxbQ6ZPgkk65-yZrZ+$DsIrmDGh9_aa>o1QLeOt7srl)lIq8?L1^$k=WomogFZtiwmBVXuus=G3F~-h2?vBgX{-kg9kE4= z)?W^;t`yGQAU(cE;(gPj`ELpOzm(p2I{&W>Gf&D`--txejAxRYPqXa`p-Mw>07sx- z%+^`Y6;r6&)fuKJ4WphZX;YHQ7mz3X<=OnvzHUZcC@EiZT{PxbHvez`XWk#40JcAC z|16O=`Pa|5-9_>I_D_HJ&-|f{;bNKE7O%)au{T^?^Em0vvfb<*?0_|*-8W7|V3$~! zCuN4wb=@1JKgw5Pex5f;z8!zy<~;j|%pqik(5hh|zOhp)S0KqqZXr~iO0O4M#klMQ z-ndq%7CDuJTtQCC59c`|wfB^!^t{hi%1l@1OSgKKUo{ZV2jgJ5^lm+!R9Xi8r6Naa zfCMu#Nh^~JPcUCnaEC|yve_<$@%D@=N6UkIsh?LYDR1?x7u~*dY_n-W`>mPV^FTLJ z^I$ap%=E?%na#a+`k|GAa`0zlSZSy=KAQL5GiI!0h z(Z62P^QT6(0j&X>`8D@d7y14FjqWcl=tn;suxzl&3Lc+}r?-07;>b&XyO+MN^VJX9 zay3g!-miX?<<+MvCf{}9MQ)Z^!h2<0;OvYFJQ4l>AK`$1k0tQUaKKHOd$fN_vQgs9 z!y=uG4bZbCwd^Ae^tHGYMWP>85;Z4-PNa8hck?VuQl(uO|J4TEXS;zE zuurUiQu_STtlv97_Wry?Xzxrfu#%hKc3LfrWFPQkTL4a@hvj+74g0sAFO*h{zSzJO zzp)Cq0;!Ww&0+qeEq}7KJx?>Otw)_@K%)Iv{d|k5kJ{`p-jYkRI1 z5B>bi^_m=8y++Xr{kAv1vM!QmFBB)xlk~q^e@|9FvUShQaf5>-XO?1|=T2agu{*j2{g@sX5@+-EHT=7)L z&8{f47NWS5C%5#ZuuPn9n%Oj^lW8gb^h(s&VzA{WK22l2%%jR6@~o-0NihKFC(hoZ@mAR8T&gpF`$itB4hpLZcVI<2rs!1 z$zYYu-WS^*d)_a8ID60YF|Ci2Nea!ScJ^jAMf_Ap2MZLfDtkT?ir})}_qz~I1@6rRU7nT3z!_v+& z**#C45&3&4vF0D-n{j+I@|na3W+oDOP#9wSyj8e<#s*l201i;b>2L8R&XH{7yX3-S z@x@tDB7VeyDA8&FU7$qyX1~s`*YNJMOY1f~nQ#9+vIr=r3_M?KR|(qFtE4_{dE^_|7rzrrhJNuBmU!pmeH2- zsLoo*F&8lIkYEDmWz zlJ%}j2Z)D4T0;T&5W|JsN-3UY3DR?~DI4|*M{0VG`g8HDC@&mVuHp_k74>+rWmi!G z^Dzg}El2o7e=QX$Ya@;9(ysYr*{1dzf7oWWf#WfwGTwS%Z2p;Rxe!4dj~b;EJvoOoRl~7K)xzPS^6N5joiuE zr?g*DE?#L9{FmP`xomT26?VgD^+3E0_GJb$e)(6)&{9G}S31BnOxd%h$0 zqu2xUqo1zMdZOpYIypMJX{(G5FbB;qauild7nZDwauDPhQKBwhIIZOo(PFUDB44#> z1&e?2ETRhkq$}KekJ4Fe1z@v7|;=G}HGF zLHqAYGa?${^4Qx4M8onGZ#G(--cgs^GxB-$lFU$P7f#1n`9k^N2+K{$Y0+Z20vnl_ z)cWx|_sHnr)rmwumq@@*I}Ug#9Pou~Hzq!Dd@ORP+fKsm(E&SHVz1oYj zVwz`{{^yK%RGL5=dzIF^ILlsX;=;4|6L+#q!))E-f7ycldLAVZ^UjWNzdeuq$hk^F z3G5MblpnaOxWYEjlko0(_lR>VC9+Grb?eN&II8pavH2g$82^{@dv~n<3)ABJ<~l2Q zlCLF{OKc;a-+CR~dWQe%=R#~->$fCEIdWuBEQ@*X-!fK;&2dWr(mcPI<;Kp|apAuT0I z_Hg4C@1-|Mv0^mP*l4L!vI6NNS!MFy;|)BQRj20X@5%grA@M4{N3>I{1=br|tFr|v z5@J`N_Q4J1CNo$(^|2~n_*Ef4pR4?F zO@62~0L>d|<6iUhe)A#^{Q$~GD-iczG~4G7L;3GZbzN+LO(RM6SU=;IwyqwaUqpFB zzvnz_FBh`F0KJAB)tDiDu4lm&QzB)Y`&9H5^U?MW&TmXy>V?b_{Az5~$MgHOj1qh) zD^T$6&crDDDar51`LXwy*B#SHL24=8ab)V%FRfT`?CR=Eoa|YQ{ zOY>j0`0eMIf8|b&+{=IX#C(cbv}<9BDtBW5?xSU8k}6rRc4ze zx9{bA`5d&;>-J2^MR5aX%VMjDzieT8rNz5s3xBz)ZqOGPl92(vDa2Q1=0<8CjHmiY zMyQ_+2RsuFxIdcg^1MxOT;~sL9{YA!=edFa^`ZDFd~#F>EUjy~N;9kf)h(2!(B_`@ zcwt%mFMLkKh;j9&e9~~l-Qd$fDWb=mV(W=mGrm3`xVmZ0iW%)u;}HM{YB zuzyCPs&@wS*!vHs73T!|m&evSIt)85dVjs7tyxw+(Q?b!@DiA&Z>q1I$EO8QedzV_ z3(7{2=SgGVy2pN{@Vt4KAK+TRNE^@Smkis|9;5AO1@ZrfN%*2vzrO`))_?UDZ7-iU zHdh+>l_knjXzWnZQXE0=mj3rXQn<0lGpd(eS&WgUPezJ|Ct`I#-bcJB5vrRbw|7N; znVbH#?yc0vBFi@?l6_*v4))BL*2a-#-c2_mj4XqUW~CQ4Im)%to3Aq9JJd*D)!qJSeP&;wk=bjJThfVn`nV(j zxgf1udHx(J38XBI(&RvSD(iw2=0~k*L5`FY`-48v`d?|$h~NKc#P9cVKqqUob+xv= zB}3bPN~7oLReQdAmwu#Im1wUS$thhzFDf~t^QhgW4023-j5pH9#SY-BLNhZCaB1Ef zxT~A5^7YIY{$}KQUS|oMmx#fXtXZQa01KcE!MXSc9bz0jgO{uX-<7f~1T7zJdrDfU z#A;9jdyS*QKXnAnYH@My8Sp5o{S`}=z&kikKHSSbHKxvmZu68g+SO+LQwPg#E?|K* z`-U%=+jBy!qpK6&o1fABC(>f`Vg+20Ry;CXxm8lF8Gh9ssZvz?SQ^nsiNq+!_Obq; zve3?vsvWT>g7N4{+kdU)Wv!bWkT4-Em!hFztBQjKH~rP%Jct!$asU~MBh~J zRnOa#_ISynQJIp6>RtO2sbQ;Lrw>cIO3q<)`<>LB)k+X;+-*;<6iFSGnE%8`F6)V% zlsMKE-E8%*=B=Uc#1i;QX09=7{p$bn2e1TqcVLz9K-mFke6d*g<9X^5u}&F$Ch0uK zF(s#T@R4Y(yTrfvkt3?q+8vdP>Bv!p7v{C)VJ7P<+R44J&3QL*K*_j{?xQs1gug=s zZ0&I67Kz~=5Q}JL=JDPUYiWMk=HW#8ZcRM(oV>})s=cE!c2aL9`&?>h|Ih}MTD&0% z)iY}KhWZx0D;c1-jo-0X8)x+BIV($eUFov-=?ga*pzKZVuvI9LTBSIe|BH10{|5WX zz13U%r#DNdSI_$29+mA2$x3X~6D3`ox0m^^Jk&iU0p80ma;~Hg37(m;x@Y8cHFY&7YhTZo9ZW0ZfI&7>6!X|ZtzD4&LO9;qW2$+b^GPm0ncZ)!1u!jb2FC7Dkg__mhOn$xq7St=C$bQ>n$Te zVq0u_t$71nvjpOwTHsIk-X7SorrhCHXVmK4ZH=udPqFST{wL~XBU(neF26v8Ry%pW zEotP7dN8ARoka1*rLM5zMZx}Uv4-X+PV#7Me!jhMUhJm*y7eE@h(bmgkYt+8EPgjp31*`!hPf8%Dct z*Ue@-Ewh5I%G>G>#T)o>-W~Xle5HbK(>)v<%*qJYewoucHsfF$#uivLc5=-Z6#-zo z^eu=L|CChbsWV6)JmmZs?hreq^B(S|UhsrxWDwHPO5TIyHtjA$fJmbSl*PL1A#hK- zyUN0UJzqviM#P)nJ+t@D=qw^f_veKZ?~na|RcwKi!juyd8)e1rHokAIt8BEsEUnMx zzP(~!FO2Gb8$kXq4$v!T=j`E<5#&L6;+K2M*BAZp0_T;RCRSlzwZFJVf)}XGg`e) zr_tArC(F0V_m8GOHPSyP^Mzjy{(n8_H-mnWcM1PFGY0NX1pL&@dpkH78JC$bp9zPo z-Hj4pL95}#HFky@64rEhouf3|QTI?LHjiZs%56+RFF_O+f@J`HOhy9(>CL~c~V0=>!m_k555(}Q!*`K02FhJUR{Y)^Vc z8KNCtLsYzhc&B=mK2#p;WihN=%h&WDXZa;{+pBxIsw|kUpI7MFl7Qj^n4!4d|HSQC zwE}CN_!V!m!UueVY(li$8L@TeW^C}KaKO*=Ch;%2HwmALhj2|Sfiq(Z9GWq2))m+| z9O8PT;LPy=^*FzjpzvQMD2#$faKkUx{IAA00?@n)^}LufPwrv!S?>FULOdUo~2tH(<(i}lu*B3r%QJa;8TeNV5`yAAE!jij_ZP45}g%1N9dZ>7Pz7NP&uW54PJ z`%qaZh8M^7nP@H+;2bt05?sIZIY->3WXTn#@eZ!lal^j|5o>5Z)&js{#{0z|XZ=dP zQV9o~mboo=MF&0=Ti~T|z<=aj;%DLsGd^&0?BSUmGWJc{F|i)B1z6LTeB98xJWE^O zeX*xbF64uA&-)9HuqS${spI?2E6|egw^CONX7&*fY*`% z^97OMy6|7NyON;AK#jugzPGP)#u`$o|GF(;y5mjC~h!CY231YL89-@fjO=+60~M4fzKw&eQe@j z=LhR^5)1rZ-X8c`=DvJ6e@}-M9*IYAO~wgNipM-LF|!H5$>>-EYsac+>kX18k#$E5 ze7YK1Yu{RlWYKRL_q8D?xg0_Z$!oTS$gXxl&ytqA)VUmy6Q%HZ)Q)wn)(-YJOWb4k z*!(9%%iomQ{PPm)o1f^%y|MXOHD%v$1Mf#Mt8e){7tA@2&UP+dZtbsjws#7tmRHmk z-&ar5%k~d>6tX>Ah%Xr^eEaNTfOa=~B`xOVkvt-+$T;ACk>-DG7zx?1cbY^L+DigF zE?KEQMN5KFw2vF<-NZK1hwOM2Wce(was(O*=O98%H2o~g@T8T3;?HCZe0<&_JSZao zmt@@gu3&^&gHLCK;JJ(ud^7vl$d?8`GcqoALS_%{9^Tj@`f_+Ig0*5z`2IUqff(nP z=ensiIivSboFEg4S;}2D1l%c}M76C^7_XytA2l|2NA~@q%J7tL^Niqu{i%5yn!3#i z@*ht9ZtpCc6EpI^T~g`mQ|A74IcZVlbdafKgSM~!6k}ioB#kKP4%Bzc3$&X7LRd zc&D5t=8MP7jd%vy9!r0{STY+0_uFLN(=OTeOf3$J-*QgsaYJn#8kpuatNx9C7kgNtttbFSr=%CmFXGdFJ6TkWP=+1eG2jCMtx8PeuPlXp) z3+Ix=&^{j~I4P`gXyzLdBiKB;l_mXckZ65f#QitL{luG%?~Ox}B1A+;A{ zg;0@6tI%I+=Y~kzo)+)t0{Vjc>@oHh*535EdGOzBr1lBmzW?c_2LjUWd1s3#m$$;axj{1s2dW$`K+PFn=G(-ZEbyL>4UW!^PjFo~L;i_a0pAPP4YStQ&>zh;s{<%iX5oV~Sy+*@b-x31&{e@Ue#S}U!S zf!&tCeJsyw&+V3Ao9@91EbZxGQU zcyoHrZ%+T&Co((!?nKbOo2bBlh5`O75rTgS2mIYMe*PcRMqr&B)*k!Z6eYMR7WewZ z*e{7+zBzV!W5(aDpV(k+A_k{qJ2{9xA+{WAzAkAe=IklSvp#zqk>lhkC#j5QJS(<- zTOxNC$J5x6ZCCzZl>Zk_`@3>4zMuMmVEzxoMYqHcxFL~^owFW~HfBHGbyM*qPn0X0G%u;#4YGJf?$OoB@_OZ-#o)OF(n=9VqQJ@s!{wM3k4+a8p& zk=IX;FVRJn)tH|9=&q;9If%L<#>X z9sw(kFwgj}Gs^ZaljDwf;kU$tcy|zaLwXLb4t_74w%tK5+nXjUzAI&49$a4$)b5#n zuMC>m_T-9PLGne@-!ACUQ0=m| zRP0kH$VAl2jLN=eDtBZe&Xi)2Y#n*zd=JX%)#fesTSwFuIn0T5Z^`1D6j|OUu7^@y z@tKzyAT@cA*}eIBmL*VaqgIQ->d{CO|02~ZKqmP)Dr!dwXlgg|P!eTOLNPqX#>pb; zb1i?LrTCY5U<+A@bYpPNqG2RGvu8I4akL9=2-ZH7DElX3=|7Y9|6SpNZ^twE=db|d zhiDmmC%(YlX%YN!TI09IEB|18@^|D~Fnvk3J;CzT@ei)fe>M?M$~CJgoWCMD-xLnG zXtMd2<*F-ke180bZSf3fU7S8`=Z2l$pJ)1=Jm1-g4ib5IZQcSoDaYayc`0T7gGciW z{4Yzoaz!E|z053wa;6yNF4ipe-1t3bk+?NV4n2GBTz1y}^IYWinYo@6d4N4i_8fb; zc1Hg}E`in>OmA(QGW0>)t^cV;l26~C8b|Xu%N3p(*smswf3d6muk}|qEyuJn3#Cyq zu>hXUqwaH8$}@&YY=BY4j;|vQN8J6=;PWjR8T5Oxy2J|qJUs(^8TW7E74ZMt@ejTd z4)|hXgtvzYZVNtdOkCj7Ab59>yf>JAbB_1!$N9x!0T^LV@?098z+a%nPfP!TY_#?- z2);M2MhH$y++cmszA=ozT<4p^9GioEzl7$f;!0Xs6@x`&|7*$3Q|S-cBX{edm~Fi( zHMs!}s0|-$fXW)Zk9oLSUqQW)Pvj2LWq~qQ@n3GS#MIwGuKV-zDS=h44#KEeYgesA zD+Z=TziG|ev*t(J#Hv=HrO6ST8~(i3{GRxyyk!fbeIvy(-~n`!s~Z_0J^%yQG9XGw z+W?P%*xaVrV#X3)7asUfF#hSZ|34R>;Lbz@zZORLTG|3%3lDrLUczTH|L9#oH4!`* z;M!^1o4wt^H7$QuEx0Vd=VpIO2(>amYx~jaD2C2ok5~Qr=L0Yh?*d8_?+}0bgrpzP4 zEy4167V5oc*!K#(2+HXnHI@7`_8&_UNR3fz)Oq!0Xkayu8Yi{fz%iQ9l+N%ZzgC=_ zoENX8f?05iMh?9!y3t{Bqh0DW7T)sJM9a2B#}JVNv^o18zOW~sk-L6biW$czPcsa6 z#{OOxB;F7#zArxiClfRLeEfnt!UlIwz5rh)*cW`ClWk{wd)xecsbK5WQ*hRFhA*4b zPjFJuzAn84$4(ZV);uzN$;u0}{YF@5U08uJ07U=jbJ&sRV1@qnfBJ5fIqz-_PzROa zkcZrgT#yjC-DF(zYyWNWTVIY1Ql^$}tqrVO%D}T4;IVfjhluA{sheI6?ui2q9+;l& zv84O+vnqkqarJ{bRKr9j+OzE44c#!Gj9}lLmRT!~rlLCowe9;K>2ieLJoqQCrM9H9 z0jY9^<#9jr5Ctfwzz3FY+kp}tPssPPP6`j4vEL`y7cThS%(wYKdJh}@YM_$oCIJ^uZUPsM&=ROB@Yrj6S^=`_H@{Jq%rN44P z+Y7VhKNKWTEm1#2oBL>kd;M=pHBqbD<)nGFU8@i*}i#*3K)-DdrwJ&RMZg z{ap4Q#6P(Q*I2su?X&Z2JjE-6M8*{!9~R)Ng||%YfKQ~S?($gf-N7yRzbr?L6xtaS zuL~ZZyXxm-{hyuv!zT1UW#uU=&s=#?IOXhI!Pp|^A8k+je@Fa>QzzenQO3+7k^z*j zk}CuBtvu%0WiK&ZJP#T17QAn-C;#viK(OyBXUpJ9q5l1{gt@!SVY&SFn(ou$x9_hx zQ`@rzJ!B-H1`f@U;nhF2LLM+*Z8rMH*&e$G9&5qW_G+hS?=@V_mD+CDW0ckVETg43 zmS?=q>+$-*LoFvc^!<4b%i`I@2z$;lcwIQ)ocI8LlKy}%r>Ee?^z_lscX75$g5^Cq zzB>Q6r4|2@m0yn+K#ZT2xQ|$QUc7(M|FrPItJCYie8qjq%j`qP2cMR)O3prX{Zagn zF|LUx6XipS?um2JZ3KR#$Y{P1Z|NqR^gXRF`4aBncrZczz1An^NE6>)OIpvn2kMCv zc$88P8O@*HLVbc9*ygS$V!qy^qX>RGHu}npApAx~34SSK_1_vR?s)#4 z`G0vV`t^z9?+K=vHMA*b_r+t_70=-nY4bld_KQf|Kw+BoRUW2`Qt~Tv_S`sc-E!P~;val_ujWq!A*$`T#7ZhrJo)dwtpto2L=}t_I)= zo-hC{f1?ks7RK|5f1jH-Q3{n}nN7+2JJ4({t|HhW# z{x>)0ivQVO9?}v>ty9z5fAO!js8{HYx+Lz<5RTChnW2~!jo^_#_04nDb#tJ(Vwaq3 zqx_-Yq{}ts7_L)SeFDqyUN8sv0_9C9(!`#2nJB=93IE>={=XA!-x$xIHAYX3g(pUM zVa5}_XIfR@mf-&O%;3L0eTKJ(G4{s3KR;1`=Y>PgPp{%T!w=hY%`vh1j7EBW(((Q~ zN(uZE3GlgWBXyP0KD+aR^l6H2QLjwIJ@QkA%d%^Z)|0sg)nL z{BTI?{-J8sALM%#{neNvUJXDy>z}KSXddU#I1#K~f?l>FkUjFM-=5(dxto(?HQCZ+ z4)at$y^AH0YaoPjOxO45(|AvRVFoNeGyhp(U_-q7kEZ?q-OLig{_jpC@07&tkDbO4 zZOwRKzF72U87=hHp#RosmD0PC|5LH|8xsw9L)hY)@W$KHUSREB)*N!>0M``YPGX`4ldNk*MtV%#FLtj8O`i5qx4<0S+5E{pE(J!XCqMD5MskiE(8jOaktsa*t)M@TZ z4()ceT0I?1qW)60d**8-pyhfFB#C}4F|&$~5B@LC+@a40(RaqGzbhy{D{Xhi_i=V} zJpB*F-ZQW8uFU4!mk7XH!v|lFxA29GA-XZM2ye_7;*aLa3)9KpOSCWC$fLCt80>Oeqc)&@Wg{RYqPj ztp1Gt$0~*&?sKD)Y6&P>M!09x5%jH?*5)?$FN%v{@NYi;qroGe=e&#eDawf-jH@g` z6w3?M*>OfxaEFcr5;c|!vKSf2hW%&F(bF;x;QAo@Gnpsw;rQ_vr8WP?#QL!8Yr_S5 zbMCI-|L%+)-WxtRC4bk20r*zuHxo0wGt9wPx<4Gxf$x*}1>@IG*Ovnr1K>CSeq|rp z1;hn>N8VEY}$#QI@zYKvE zJX~FxuYYVx038|lsYS*{jTph;2C*&+47_Q>(LXiTQf&XWO)ra7gKN_)sqDa6%Mcmd zx12Gq>^<&{|MHRF_W*-@m1tcsyD7+hd%XNxvP$pXwB(I$4?w^Y;ql)GWhfBh0IZ6VQyPI`mjfHVyQXssIdf95 z%@>J}N{+LVcVFfbd^|IYf4uT@i+_(#a8(%M)Rf3tVr!>11igmf-sgSdxmq%n-~|tXs?(aJS0-QieHbphh>*{ zee&XG7vIb3BX0|n@MWTt!UB}Ss^CThi3t?{%QJ$MQAa8GM&h;p0EqU@kb|;N&dU<> z3}?F)$Noq1oZ-lkeC`?TZMyZUXE5vkEP+Zuy%0^HxHv{L(WByXZ~!{2Zkt0b=1Q&| zy3LiMQ@z!e4~Fn=EuTEaboIPxy+P$n^Vdi`miA02G+RZ?s{-y~)20KOs8 z`MvbwGe&r0IAQ%{(brB^{SA{nH@5fsL<`=NHHHpbym0Zv_yAwZnm?C^Gd3hn00SI1 z-GNA8|KI>(0IrA1Qw}cV8O6Sw=hO4tx0~Q z1N>)ez0dz=2~+|iuV}`apmW-EQH-9-07Fl0EezYE9-5C_gE6Y@ErTw91#NO6`>i}ct=>a%42tIDwTQlwB)vsB-+N(As zYVdC>FIpVAIAZav#S`KMd^~N1?ct15CMNL;qKQNlxQ3O-@c>K&?a-{FUn+-`+ z%C@9TmlLdm=2Y%VTiN&v7qkxA>NiD>&=(+O#(wpE{(o-?h<^11ZFP2-_P?5_4VpA* zLSL=Wux&Djy1a~QQQKc52k38cP08G)`maWF1iHB+&m?Os=QW3Yf2=4B2C>7~efDV4 zlM3E#5r|qm1gt%M1+4n-hQ|OmaP6Ad`j4*saOH@_D;B@DcwW4KUtWAa{eoAeCDHGZ z84D=W$UR3*9)P2h#@i^-zAtj{UFA?)V4~i0N<)PAy=(Pbs>7w*SeCAEY1P znTzKxew>j3HzsblIem+)4n})|D`{uQI{dc{z;hexsQ-dAWU*pg$?2&pD^j>lz7W&q zVqdW>$J@feE;J?T=GT^$Mv>3#@ z?RoMXpY}cLiCmuXz)xJfIH><>aQ`1GKePB@_HIrO;kHBqml=RDMc|*72P*;^1CaNY zdqaHU%Au061yC7^e5FzR`(Hb*M^;WDpXrVE$pu`oD$zO8KTF`jN?^iRElE+1-ikeR ztDY-oIj+8~YTcC6eGv~zz20MwxQY=2+I-8UWKqubgGb~ae@!n#VEyTDWA?v2@%?Xa z{A+_skbTVRFMHsh)`b)lml-C34 zi#8P`3^p+O2ma{+0RN1|1>26$CoV901j+&6pPoC;zzy9PH^e%>n=)qLD=SZ$@c;4b zzdh>-eIz{sd($pBCu0O$K@j}&l~6nYBaeQ6u>AnM8}k$!DN$nLpEp$^<<7Eec~HLa ztda%k1OIKQ$q(YcZ19sky!p&5fd?i5^-6mp{>43-TLv(XDdHMU2$Gg?~lfTv* zUG3<2ODyikfBlB#t3*F{kqz|!i~r)@@%YXLH2&BAK=9tad+|@J-`2tLvFYoBZN5kL zmf-&v7cW};PvZVpq}6{}epyePZ-Jb-+7Af!**dOZ^aeN<$i6`F4_Yg&G63%aH}Lk# ztxR#?Q6(n+m6g7LlBZnDNAeG>cIRBP1nyq~_yK5E{dbY51`d68ub7k@&`+$@i14wm zHS3j>T>I}C^`2kb0YnG&I%F4-qSm|5lVSV$b^IUma%%fs3!puMw9gsm%jjL_@`(Lo z62+r`fbV^?#?R)o@vooo|Ki1uG7jj9togNVT03A%Z2zWgj2yuKXPhBDi}WQrH=wIHhyUV zfPAi77xtjv(6InA03HDThhGNZnUPOfuE+dG4m~St7ULetz-0s^NN(k)%;k#vXY)D7 zEP;n60TE^dZ?r(w%w@gSqBUxOrixF}%MQi4dQZumJUL-ovp6cmUXcpVSuAfeheV@ZP?aQb4LAylgPeR|1^p?0#uH z!kqumv}C^Oke0xt$?75~t#*oMaa+sew`4#n_#Sb)q8m)G@A;zNv&935F&Fm)E46vt zMGmO_r=N`;K>U8^0e40|ZG6WAg8q&QvK@fmPXymSKfVKW`sDkcpWeUsXXT)mF4iud zw74s=fD6M3ZTW8q_F(}=0P`kCk`y1Y8ZI5kGCey@UP2Fr$Lm#Q$kQ|Cy`!-<=i1 zzOeGY=>hyfzA}1Udi~Bz1n{h>-GA!D0PBN)Mgf9<<^$1(;Ot`K3*es?z=7?55UtyzuwWZ7c^QyeV^vxJ+<}+zB?>& zUv)62%@TNYC7}I6Yiac_;~Sk8rPzNxSI=wN^y)doInIzSV~7G728?(Y_QX-+{@{IV zJt77`AHV1?{*4MaLy(!jdjGZm^z7jQY{{x2TZ8&56Zzkh|L07cuq9{c`9Cez-}yi5 z_T!&zxYPG z)o}5zRu43bbAGjQMYquav|eALHW2S&Tn($(C%OEq?=Kg)9+3V0!yBh}!1;ji!qGu3 zJ@{-V1=qCy@c`V;j?KsF_vq|Z`!D|K^=t3H^8lS$)X_!88HoTKi2tJBC`hq?&o+YW zC|};csf_KW{v_qBKW1Ad)S2C(%|Ye>oRO7YK8djjME z$NsP?2c9^1Y|kLAfAN28Fl;ZL_@{k;My$M}e2n+eD^OOj-yiGG?EkeB1Hc2UD?t0- z@r29=H2x?4Y0I$H&TIeMr^$bwo*Z&#x$$7B)A>1O2|O4H6zxT8ec2+J)QJr4M3cK8Hx9d31a`X{odNG-_x`Cy&&cT(l)U5 zZ`9v4z?}cnl|Vp0Gl@D2$gxOZyLO)cO2@Y@|BXnfe$d>~e=zzs=RG(jP+V)x!Lfh# zW@8VR?f$@hF`%8aFKlpz*NB({TLDA@jRBI*XkhTqN*|63D*oyHXJhRj$M4dT2jv^n z3SfNCh8)q)57tkd+6FKHZGTf-OVC+E_8~I<$9aat0hnJvPXl9sy9)5&02n~)kA#qh zQ4-P*&YGN`YL>u5l|a#4d~;m=UvAZ7+eJKQIRf*ICyIYiBmTAg&aZ(BYzM#q;_VgL zBmNKm@xoz%d*YuS0Ps%>0Q@tyXZ`;Fj0Zd^zC9ZwgJFmDNnzz5@n3%*n@_u6`+r=# z09F?R{oMJ!@bCNS3#^Xfn~^{FYaYT9K;y-=JYZ|s9s|?++kQaNZ=6gnXq$l}Rt~AH zHxf`raKz1l`0som+6SVKuYc{--mf3w z=wBGX8AYrwP_M)F4YdApmy+Op;kTE~$UlVj{-IjUL-jhezL79`3=YqqNRSt78<+w* z2IiNq9QYrji}3>B1mo?+Ke7LTei&o)|2yx`b^P!EwD|b@uJdnXk1+zS3WW7%v>);Q z+I-@O^dt~b9QZ#b?x7BZqudK$~9IACZzt=2*`;!1Mv6lz^hc9{fV56J+`T|DK zwEB%2&|)UePdQkA?dvlBUmc_~;>Wc(oEgA*;{vwTvE;7d#SGvRWA(v4qk4`H!W|(5 z{?~;Y@Con-jQqJ`5HWxH7@b=r1CamNRs6#|{TjG$!F%1GZ07T`1RgIEsQuT&r!8FD z4-+^JuK1S$+J3Oj&pF!u#@OxqmkVAM?DhMc_WXgx;@=hkJ$R1ZV^7QPm_Ge`TlBU7 z;Dv#HVt_UFFFC?<}Y{oGjsvjpx_0-{~~k5+PHW9>n&hk*Z& z{V(oe0R4X$z*KtxjKhuizxa2p9@_uKzdd=*=W|TIqxrP+%o8x`=SV;M`e6s+ex2{z zc}0!|WF=s|j>ij^&+j=);NeR^`wr6E|KC1y&d3e)n`!rpbz1-({cD?ms6Van{$l-$ zf9&>}Rs1^&*nT{}8%TT)WMko-*+;CvcE2f(AacB~<9)afGmD7<(jV~fB{7#UOW^S= z0jxjm0nmh%zo*Bin9YxlvWJ#mfuIaI)wA!MK>dHQPu@oM zYx!OC-^icieQ4{yW=8#edUua!EuP=~k&r;~4+r263@AaF)O}%d>H-@T35^Ci)4dZ2DgkH+S)RxwY7C*%dnO~EkpIMt=eCxL`z*_ z(2x-$hOoP}bwq2+h(THz+&Xwr>)_UrgNC(^95$k5(8v)f>!hO=tdFYB%T)&HjPq;X z{PjMcQOBihfo%Mm9kY>?8^!uU+33~g%Eqoce(V}+Za8Al$YI?(W{qsj_&Kw&;~O+7ag;X+OkkKZiBIFj9qv1+8eL8!Ps?1Z}9DnM}KSV=(RiQYO9X!mh}Oqpt8jKYz!p>p$`Q9kcF#bJZSyv%cittS|L9>#Z~Ha_|tI zaL`}xdB_Moi`M4x6Q~AS2MrlHQgRvc*D^fUdXnUv+33wT-|}Za+h&LD2X)Lgm6TF8 zX2Xuzj@jDd=Fiqxt@}EwNj*ld-F^JG$8WgWI^#QLojQ$Qvs9VZksY(vPHT^oWH;=- z=9Zgnq4Te(^|`WP-Pi2C?he~`AHTy7cj}lOs%`URYj3mF);o>gamy{Y=>84P->G$@ zu|wO|?{L-T;FcjnhPFsqMvZ74Jfc;q(lTtwkd{Hi29FvtY?L;&3>!A6lk{f2b?494 z+ia(8w%mTFLEjs_{SMpj^5Y$L{#hqUbnS5^dsM2mlGdP6Lx-SvowAjyXIs5{r!3PQ zX{IL`J-*CZM-2UT*KEm3V=8s%zRtK+SL-V2tg5FS)*`jkUsuUyRh1qzxV3xNY+o(U zDSer-Q(F$LwhZ~}rmodhQr1uVy6bv#W?TJu$M64q^PO6T4(>WbZbDBbIF+5RI^U2u zVb`ovwPn;$srb+l)%EAAwhS9O=&yIwU0YNKe_d~_N(>s++A?g$J+C}pRiEF~)66$k zcdzZbpY^>wgyjvioU-A=^?dVfUIb?yHYod&AW>(Ec5@znKjmGQ2wS(CUi9 z=#2Asnjc*lKW_C6^$hEe(G}KQeY}op9I^VU9bpgsOqSiaKSs%J`_iXOJ zhaUm_f8dWH-LrXg)IX&|t=(1o7I@5w5sZBV0CAGU~WB4p7qIu*zt2^>x^4>+?X{t7`M)9gS+>U z4A`5cK6?IG5^BcJFP$1XbkyKMqx1+~Q0XkEOedWy|Lan!mgd#AqFUlg-ShD(*ZNVP zY(3pe%7(V~$=27Bup=GnlWpKT6ex#kZG2T`kd`*Ao?*?6R?ap|ZCPdV?wzu6-$aw7 z>mRjGvz7$r5sK%|zNWhEkTo@R(2|!Mvf>SGnIoG^WjaYmndTQR=hxIZ>ymZVw6K1= zXuhbXZu<4Mg=MoBYS)%_w6sg$OC^B?gx&>(UT{3WFg@=K^n-t+-*dR2tS0b3w@S@h zF#t#T=mmvu(BHMf|02TvqS+!d@XvPe-$h#%(VQi-#jM4h?N8G#fiJrRK%TMJMaT#J z%;yuDvFL&SIcBo?SpBAKKMY{|Kle=d#|Nz(4z$>>E%PesIk2k3L&_xpoP(OW^NG0ACwK*&>J4 zw~y}mLc)LNiUl0Y;|0vE2?pp;F#!0dH30^|`r`?7)Lz?v?7krTu`2ta?FoQ?GJx||IRns7{J}4&1nfI|4(eD6{2P}>Q_TT2{_z2b1?Cs3vHy4g zkpUs6?+O3fF-Q1tuZls=gR(reOdtL zl%1#Duf{*^)}^*!|G%aZ_5ff3Gl21LKObDf0o<4GB-Xe;u5D`%0~qx_!UzvF(JzLEc&Qoxo zpxi8GFDC3i+xd430@q=^JuV2HX#bt{B@ouowiP^wWi?8SGB9V98|mQ0eR7OP_8DbH zn^8p%fKEdHJVJN$0J8lj|Cg)BS6=1+$N;v@066|917N${wc;bL+)ekfgeIbQ^Oe!g z9wQ&-;$D0Q?jgWh^dRCWKaK4_<=Qd;C4JQ{?QubSTr>+yz?iA=Z>t{`-F`9IhKB*78(4SbxvZ?nTfvgEV?VE<_Wpx1t*ivFGdr^jbrWdP^{;0%EK|JeVh zEg@R+?3plMOub=!FTMlYdhhoZ^Mp}tdk&_}7QrES5aIuuDSRc$bEGH7GPAx7Xn(@l zO9EgTtS~tr1{%Bu!i;_A{OvJgbMXM!TU%P^1B^;%)Hq*_EcXN;2lzE1oF0JD{zqQ` z|0Qi}R5?Ir0NfAQJ%AztFm`=cO9=nnbuaZDbKkyeF9j13ftZQ>Y~~2=9>(H$`vv^g z5rFM~;6Eao_8j5tg^*eEX`}7ldT*;(?+a2j8JF%{{?Fw(7+F zlnLwySMY>p1+#!Hy}cTu0j_Hf;Fs-YlJ?#MvnDcT{iiZ6tlQ3Xq2IRu;0iQQ##pkY z2PL-dVBZsEZ9fD5j>ydmW{uHnzyNhi;DSP6+>@_@mx2Gkq!<8e&((vE>YPBtHvXj)|6W51_F4R_ zoIhj|Tw^w<+a6e_jPY*j1OqrvZhRT% zW(MQV*t0hd_OZ%f5PXs;)_nv~ zv)=}E3n0Ed9N<`>#Py%?2ma{?6!@nv&;pg+r9~lFhI9AGmeRCjbq#Ol4($hkdG5>% z5c9yi_wuZs{50HSZQ-N6F}Ag31eR_6gWWjJ|6grwX}|kfNdo98ty#`~hXx1!(f2yP z1-guW(12ds-m(=e+qXB`L0L>joY4;6dkB$6B?x5;tU=#g`T;MX2!P0*-T+K~&u2a{ z0j++1XP9_DMhx(~fD2Slu!ydSb@zF>PA^S8XWScGxyQJ#@J-rUcyp1T&0J>7@8=GW z$cQ)ojdEuT@Syx3_^+*h9BXOMN;=g3EMG+l*cRdIyG6@5M~}UP1q}ShzP9*>0gQ^k zKMVk7z!Sfoyfv)9Ex)ZYJ^(!6Sb(fzL;zvY7ZrL3Xq>u{*|OOR*_dpN?CaTD+1PBA zY`JV`HZbe0Yw#Ryk0(FjsDg8H?p`XrCMV zWBG08jhw)HZC!2u9pM{&Mj)0SWcI8kc)*?jEU~CCfn8@juSLWQ1G5#g^|Q^howI$i zqqCE;v$9LF%QT&z9iJVL?UrqqeMej{N@HF2(OI}3^8MjoaE+y_saM4@cmret%n)GR z=yyaAUW@HN&*>7zKWp%l<^#}Qdo8id*0BDt0r&^+Avu=V68!;c^dqz22g-z` zDFOcNuW%mkZSOt&Rl(0!`95i32mjV#FNO8D9?qQkXPA^8zac*@ z-#gzrUo-EKf09kiuFQ_fcF8u*R?miI{VR{ZPi6P}=uCa(8!Rm@F#B*1HU7ag_>X&q z0hmBN9KgDl$sN*SU^#%=h?@exW(MzP+3RLm%gnMQ!lAE1FaS&ut%qM_-Dji<~*fU(k|)DbZ?rP-cO&TkJB4zV!AXPlD1E4q=nN<`K9@9^R@DB`OESH_Q^KO zR?CKG%P4m+pqd6&3{YnP%r)GR^ATbHxqFaqCIIKQ|9&<~vETSd638IDch->z`BLM# z_7B+SZ5%T*{*gA5y#eO%LFe|2z%2Y8-51Rt)+oluMJMe8&{Nj9HrB0|HA`5Rjrh>f zK)quEBf}fjz7>>=-)g$Ji9CFn6EF}{%XEl z+B@Bq{*w9?YZl)twk>{A>{x7GtWoqTQt@26GW|ZSmpZ3s^E2}86(@Y2-L8DVmQ_x0 zu<`-006gHlfb$Nt3G@^TMQdbu0%RX%#(&KO(Vx(f4swaO$V?D?NFM@oX)R$&Aa$3F zF%NC)EnAM@-|~;&FIrF9uQ%&SAha-a%BVLJ*#3v#iVX_XW;^(e=I(}e_wg%Ont=!{nWzu{p`r>k!&GF{FmkPq%G5RY0l#7 z#V?9uit~zVid%}iiaUzyi*t(oi*1V4iY1EIQ|KI@%r5<11?-_Ses8DHN%s7nMZSl20O zeYCDy-)QjA^+Xt!{VdjgW{dyHEq4OxU@K+_-@g?n37IO-%E?7Co2YM z=6}le&Nj(bRj;8T@&N`_F+jf=d}AKK1AvLl0X=lTw*N4hpQ3IDs7DbZLO?Fa09klq z3BF*j_q65Mw$VQ_4=S-R2abe4Z?jiS{gjTZ`er3$gG78buOUBKTB@^b0*OJ@_NhT$LGiECqiFFt^HeP zr)JZ$Rr6ExzvMqolhazo3B?1#{#(`brtts1(EqVG;5}`5wU|;oT3oBhVC$lP@oG9F zZ7K$MEI%+`DSux*gmzM&fED#E&Y|LfR$YS@0dtOH4|)W+Ei&$}&h*0oW;f?HVKMW8 zJ)*#Vuz~R(`@)B!Cc?(ozxerPQ}1{v80h7*p6|^+LlA6>~~$c)`E9~i&>u)bhP~${xcFl zHo%Xry_j|vQ0rJs)XU!b#g9IbSnKk>_ z#y`v0-KB&bv)$#mX`4y8CWCS_^(GQ4Y^vTt`pZ9 zTukk-jqAnn?QabHXVCN2J}WvCKEEx$Jpr~`gUkS7gKU+ob@n=~iC{V6e|w#d46r?v zGv3V=SW0Z3StINw+dz!1s3U$5Z*DOD!Cub_`QWjitp9NN>c7h-WIgi(^6B|j>4o%N z<@a7IKGB5ze^)%vDCaKcD;Lx>w|L+qWdUCl`lnR$hl*2*9~6rgkElIx+4M$!l6nTd zmHkl>#p-%*X!s2L52!qVrDtRTX?=)D0CuXqe|&xW0O8G$&j^MvBl@X9B@=RSED%;b z~=kU&po7?gxCe(faSbd$8=75uJ;PZQc`>#Ef7M zfPL0U=C(9uim-8xaDxMUj@V{R1>-R)Uf6%f$$@?BC~<)EY^*sNpa)L0{L}U~P+s~b z*|FJc*;r-%ddrXRQ5;%4F4TXbc%KO1ROB7#k6Q9R*Hn%Azg>cdgBy%~uH<^<8vkA`YCqdoQvwl9 z+Ui?7BERHcG}X2Qy+fyBGDDza&NRUQwqtmlv1IIr9tUeIEHr?BdjKGZb?5oKhq)sF z@NfSg{P&RUHv--AH$e7(6}`!Ku`>TZ&Y#P_lb%Z(E3fyu@_ZjE<|pTu$?`8MIgDAqL3HHxvOpF9vu;p2B4H4%n?2qLzT;6a&nWF3mSmpWx%w8*p^h55O6~{z5-C zzwP9{0Ac@UW-!MDv}f3VfdR~r_LS^F!2u!Vz<98LG3>~nxQu#oEwshI<1p8RdBAn% zGjkPxnZV~UQ@6i2_|-)0zwfU7CW+rAv0kA&p;u@knu2DcKi0cIGh6JBQYMbF9#cMi zeV8Nc7srGpBIE5i89cc4%lMDD+31g6cI4QD58MxjTwH%;{)ztARLkGpS^xaVe6Dn8 z>RKGA_I_{=`ae|8Z;rByFyBYWA5ad|)L)*!T;-?A0X(m1s(xQ79#Ixxi=u0BU)ode z3cQr>l`ouMm;FpRz@eJl1_=J$@4&r};31+DKS|^*Sc4CE5?Ihr8e8IvCq_K-aKvPZ zBIn>@q-DCPn+7$^i`4o-@HJVK)>}Z zEKcZEttsfI_o8jJ&9XJYO9=d>mg*+H3rGpMjZp0|3m^0to)G zqD=S$#Q)&GMVYzb*@o(|^Kv#mzcF7i-I3NVE>p%2-~R)l|C1ug`Y&GgDtnf_h5P|! zix{9^xv(;UZ_E3iEDzvi;eSeTXK_Taj`{^(nYL9sz~y>(XmYk+ww~G+XaU3nAlkt5 zCkIgX2DER&vzVdywQs|7A%$oG@N?SNM>Zi7|Arj>YcI>3NlDieb!E&4AJ^>cE!2To z*GsMs=5dy29b_F2|0?Ni`@R0_65u--jDm$O@o!DDg^y))!@PjrMBHeLWNo!x`3$yC zoQdN+;Q?4T%^GF~YoX%80MVW==s$M|!0`$AUZvXRp0NhL6PZ|811#Inu-Pm5+e_|f9W1!L~ z56Mvnb*->wq{jBBj~d^uHIApG&+6mqE3hxT3rg1Yhc5iOLf0RKH@dujJ0^VcfheD!Sm?E0*?vi1wBA77v1B-!+jG`&}4{<89GRqVfb zmHF?c7@)NrqW=NP2bSfV!v0g@0A~RoF8)w_tLRW%l{Qb!bX?vqzc%}^_@(XvVDBHl zpEd~Q_$J(+`!B&!fqnY{ZqIQ1A6#b-z}O5a8M|fzBy4ML&nxPNGM<7VTo1PQA#rms zCv8A3vGYUoyb91@7nsX zpg;69_<`fBg=nJn-5L(w@r~JP{Np2oBDUN6_o(|d1GrBRzCR=L(CfcN_#c_AtLXpX zY>eLESuH)BzNy^bYl{2dQ!n3l#RB&JmyospSZf_+_lK0jg#Q-h1LsjIz*O}Bc)H30 zP7`ljuPk6|@r>F52c(g@cv``0owlY0N^F=-5yGK|KSNlro%0O zJe{B0Xg2hD9ZpSOkh zLM?xb%J#ogJgEM@9~DcLgDd;rPx$YmcEHz#{byzWr-?PD6%&ioijCy~T#&}4Dfy4` zcl1Wly2>!n`seJQM*|8E0Pi2 zh5lva{r6HEz(VDmf_*KqD2D)<`$%T?4Vz+g#fG>iuv+mr6pgiFw4edld$c_3PX{u%vhKjzCUfv9ct##5aEh#mme3u{G01J*hASieBD{e!?i znrHmup@MMqj3ca%EIGu)((f=07rEH6_RO!oc5YO_uqdOOnfn*)Jwm*ZG3QD^?=-3yLlZVqq@ zFy}V|__sX{_%dVpe|v9X_rtE)*a=Kdf7AamyEya~Z=gRx#em{gjSTcezCk`weE^mh-}v1h{C>ZI#26&_0eJu5pXV@B@l<9n#{)bu z&mCS4=tmNkh*28yj~a^gz`rq!G?BCA4_fU>+5U4TpUrdEKwuvkMomTSq8pqmaPJtv zwg11>v-a{|MhSrV@bTK>KU)5y4ZtY3CK%h+G`4%6H83&&!2swOdQ53gZ8eZB#0l6u zmoolYH>z#f>xh}MY%}t~yxC(BEivK$^X@;r{syaO?g(Z7ch-nMTgv;tR`2^?B}+cN zisbPEX#L}jpGTF|zbhT1vHwmN{>lE$U%o4!f4X`G7K#nt&=Hg;WB8W(4xOP<0p3r0 zs14v(dKY*vaSWNiJ{8`{_c;e)Pay2S@7X?!{eSohZ^j5T`gt}pV8{)5foMw)xdzJF z;#xq8lxN+N=9iN0I~B2-5ziT!%sb{DOVMYDvxN2Mn)V9KKCY?uzCm9`JpXU*$(lml zlIt_J!8>{tHEs(~*E@TdtY?(s-x`BXp>;8_)f$IAajb9M@w&^}{-cYO3H*a{djH%0 z6F*}$!3H?u*S>)9&vhwJmTjpS_^00=-}PBL+cSGBJ3L=2eV%q#hVQK^ik~8Mzphq* zPlfQ0^e#}3Vvn?mdItZoSg2f99>6^1wBm003h#&^K9S9zTIB%VkQXprxxibBy^7w& z2 zF~F2!zv6{7CasX3NM{s_mMfN{%Fe?7P0AHKsT{%k>isuaeE{eQ{ECixMeh!sS$sqB z!nWzreEIy6>>I*An8((;{Sgjeix~j_-%ke4K)vU-_VFBkUKlWX00mZS&kQ;8ydhCr zeX}OpEElsZUV(AV@o+Zfn1W@^I`&C?ChE*}7`?!(3Dy&8oxNswGsTxntK0A9ACUmo z-uWNnI2gdOKrnvze4zpM`_a9c3(OSOnp*d23x&3#SvC5-W(~COV6C*SvyArJ%eSV2 z5?BB|H3KZ65}dKC_Mp$)5yyD!Pw-E_|5kYb%WBNO3$kVNBHfpMB#Zu81rY4rscBl>B}A4W!5*D8 z>~Ha3TmImD(9Kb`W^qj5-}=Bl>zVFK*0cvb!OjB?8^=5Hu z**PEU0d*d|KEe`&E}^mLfJ>qyw)Zu<(RgdH^)=Q*2c7fhEa4s7>KiHG8E@ZS0CTWo zZFR)T@$_$j517dR(fW`5w+FC{@c*OigY2&S0=@HpyJGiO<;i2k8QJHBDyqLxDe*!o}s zYL4x!N7M%k#1#1e*Re~ZS7;Zy$$slzXrA@X+G&k54_I5R$FUd8w_OGk9Ao_3&Vza^ zC=7uA99-ZtvBp_wO(**g{>cC=BOhSdY}ahz{FD6Iw40Fosw_7+o+K8SEQ|h(nBZ)A z|Er}#)IV?)jS2d){QsflaQ!c(7QkbR(M3zKgL?fxCk}W-qXj>x-otnRQ+1vTi|^}A zfT3xJ{1%Nb)>~J{(z^$u(N7K#pQP@q=;z>h57j#Wz18l2aIt{i_FcRk#su3}`*%!d zD#o)h=ObV{TWzlg8(YR4GjlDlX6*ZV>~D*I7{*g*2(=$Ng2liKWS{j1jj_G3PSp74 z%>S2q-hS=BCjszlEA2Xr>>jlU{@XG`;NQn!1?r5T%W<^hNp#41V~q=oQd{(y^|01V zTX}REi)brv?;l+IY(_PDYmQ)#k>e;D1Tc|L_ZxO(-e`B{?cV`a{J%kVUA9NQV_HsQ zeoPg*pBIiFudx51unY(6S=^o`$%p@;dI+p8`@e+x{aWoXajU+03U!mHhcLwcupg{UNW=# z*(vM&_5dswq~JZsFOFmh=I|NY%H7ur{JT8ou$;{!QM0a1w1w$!agO%b7Emsh&>|-G z`Y!&S4z_RmzmkA0wAnoB$=g_SJ$pM_?e~Fk_C!1Y;*I-=A3}quecN%^z&dE13LJZD z=%w|L5)tQue=`7F;A7#1$dseM-p)QBZ?3SFG`?(idGnX4Z`J>QsQTu=l--h_pMI$C z`c13yc0~VA$)4X`+*8^Aor}}bMfsxnH}!V#7;(g+8V8I~zzun3(^KEHLH1kHtU20O;kT9}_Yt)pI%4$K@uGb`N?8l6 z31Rzv?fMS5(*KpNw_kT=3D{4InhOlu?o->wIW;+R-BS{;&)z`v39=rz_KkUTjGDJb zh5bjT&@fMwK_>#ap_gn8FF*9ry6O_JLfA|*L|gp3KYeZa*&gRdv zG$s9Bp8m_S*^@N!KK~=a?mb$1RAc(>n)b{;&6Zb`FhW}v*1JCgG%Y3ne~;n{^$X}C z4`3IK8T3e%|9eOraG&_&Y55Y9^lgxV#ZS}*cxSebP;UF*Qw$JOi~wSe@)I$K2Y7yD z2ez^A)Dm)HUr5d#7Nx+ySs-M~7M3l?x*m|8r|_tvOnuh2OTMx-q1K7;3(*Ab&v)s% zx8=7s#J%|$T+`;7nKiL}?TeRywae&_xoa@2c=&Lv8|6kmrOW_zB*;2iU~LH9L({B@ z)6dTjnyFh;IafBOsY};-fr9|j%?f-KQ_xu4HoE_hQd><3N{@m*}#@%)QzX7tz z2W#Aqk*Skf@+Qs5;Xfg}{hW||r%*guUj5i&UD@yZvc>X+Qg>l|p=uOB-u}m<@I{z&Dp?Jsr55a%D|6h;)9rizb0Di#< z(hPi=C3!kafqA{pB|(@aOAQ$RvFxn0}no9zjDhSt^i2d8)dOq4<6+Adi?YgUN!7$aDHEIsJ9^B10;JuPoPJ|B+qH>6nz;7E-iq*cUPlr1NWzu!OuGN3hKZN1pZ8;7y+` zjx-aP6MP=)g&jfstn6Iy8^he|txMyT% zGdXn_bxVEozd$y>w$=4)_OG)5E@drfdmcyswn3q1fq(nyfnxM8@NW%A6GPk05XO1< zu0GPG*iY0S6D{pMDx2Fwh{Nk9`$y)VsYPGsJun-RFPPrcdw<0GlN7Z-ChHH5@2}qO zd!@Lz_)y;aE7@-PI@p!@{d)hWDa+qmIl!J80pJ3C@$3GauLfP24pZwPt^UvG=*g8Q z0RHI*IKH?vJ(6en_PVC;!uFp$MEL*aEx+&U2&wjDj8^0V`fG`p0WHa}s^$k|M-6ZU zTP#(U!rJ>h&Y%XDg!Fw3TZ6s9t0O?`4ZKf1v&MDsL0AqwvW^(%)(787+z)3q`YBUu zW&6?>ApzdQ;6FMDssKXccvvp_9{9-XF<+ItF#mA0+zh%Q3V}6kVq~(v1xEcLtTy}M~d%k7r zr(XPz3b{{c{*2H+P3WDVw!G)GbXM_Px-Ne}BLrWU{V~5H9bM!a3%r-`-&@}SysVg% zZqK`Gr0-v(9aZ`@9Yfxa{=iRHOOwSTzfuISOxj4j09O~{xfA^U@Br`$u>W8m=CUOG zEan5FHzZ?(`>Eskkr-23$x#PvL9YI_ggLX1Hp3YGv5#wkNv`7a`RXxl6ZH-HUDLJ@ zln>88{7CeLvskm@d_JS^ls&BbYF~ujw_gJZ1V)3e>l&k8&F9pO%P|j+z#c&K`L-U| z=5wTvb$x?(>NSo;7p>8?cAF1s`yU#}kt|aZ9c0Nz+46_h*1s-gKET^|-#YiNi5|9Y zX~XYk)ZZ4_|H1k?=k)Bs{4#m}SIG81rT?cD@xLLjf18EiT?xt1NF_nW3pB9fhkunz1u77^Ugmb ze?BjpeXH#MG%X)pT$FyBpQSN8&&YPo4^l7TPlW$IivN3Q{J+~}*(a)Pu%mhqFQS~` z+d9MJ@*x-t=yh?)OFG9?o$IH?^J$T^a(;rY>bzfk2Qc`_xeDh2jeYkP!XvN*0@1Z) zb_q+!@&-vWuh$4OpIUClKQcp-w!k4#U&pM$`8W=|*7y&EyXLJQQUBH;bH5oWaBo&2 zF5zru1@6Ol&Q-q%{hz(BVLZ0=++7pYC`Xa+G zj?pOh#WQ}5c3Zi?bNI8iPR0S-tka>vY_X+6XM-Q?J!3=Nx`u6a-Vcil&X%hDZbts& z-QOQ%Q?rZmV>IU1MT-0V#_yXN@8ezN?Ea*7yZht`OfU8>4oct857ijn$7fsVEx{c$ z+DDHn|JO^S|2|aAQ%uW0(YM2{%b!n|YP^uCiXk4=oNtD|AwS@CZJSb@UyLmFRWG7f z)e5+b?uM@q;s5&{$xniR{~Gb`x8U~z%$JrXh(wZ>CC3=Ufm&o{X|lzV5BVG6oQ-`h z$r|NcJF&0rRg8Y{jYn^v&h;8vgYJYCU>l{ZS2fCO``^|>^nMt@XP&*$`JaAzqaPd_ zxov$l<3AXnEwkH)kNWLgTgtE`+HY8z?+o!zhB6Gqu8d{EDg_h(R%_1WaIK5Xnf$;)B~9Oe=mLi=NXOi)kvRb zw`RZ0Pe}VJcQ934@_-lwCV5ZuH>+<5KCP={#RxIU`Po{+K7NQNxBo?+l3zR+p4Ra| zua7lv1jn!zT46r17KI1zHDlWB zZzQwb_ZuwaHQSN;Z9{7a&tpCNPh(*AJ->O`wew#YAov!|m$X4~$P^&01mW6Tv{ML|Ed)yQWp zd;y~F{(9?o*Q`_iT7E~`R<@o|d-#6GyZX}apJllpk@de`b4KzTQ}j=B=0DK;`@hLn z&>H~j3gL^*@c$PrUny2BdZZ5dx!H((owR{s{g-9^Cx`>4Y3$IC#Q@WV|If92zuptR zBfXn1mhY|6fQkHT2EaQZ2LPJg7Z}!a4%40v{D%CfJ+mE>B+tPS*n2ZV$jIt$@)_O~o<%!eM?Um*P4;OM4XX zpJ1p!b#QXv-;8bS8tqY+W&yK;=aj{7a1LO>3gxi2w?@gZ0fB#5f@NDR^el4RSR8Oo z#><|4U>Q9`gS%B_?fp~EcG2tR0_I@F+b98s+|F+w01hDA4#wER`ZC#O*)!Rh`5|dd zjpvQ!e?gJ@o7HH)f7b6q8rkb+VR^bN`GUpt{8_aW49R|;Et8K*qm|)bRJs3t`d>nC z0B=;RoVw-5Wglf9(y2EpdVv<>TTn$`!mT4)|CM@PT+{oW=vYMLhw3p;1TO z2Y@kwi330}F#vZTu>fn9O&~rn9unb6={pe8LdG=%fH-7mqy_ppHV|$EQa^3IFY`iM z+ie>_Ocz$#dgMBHT*z{rBd`|vI-H3mBb;BZ>pFLdIB#fYd#|8>F9(2cYQ&hP1_HH# z@~BCd3oP^N(j3k4;Gf<;^H=ttdW+0(oGH8kv;D?U=8hmee@i&&i%YulW?= z{*!7f-&fV|?^gBmn=JfauDso~`hv$w$`|}pUkGi{8vsvM`0uY6V5#!+V#i{OG(sc% z-Y!15JsqyIO;+ZBH-|n{OJSyO15B4k!PkV}QBQysirw@!@Kk*hbkJWJz}#dHp!Na4 zc8&kYci2+HphyNrTdI;zFf4KnHZ=ZY-ORvo;qe=TMmxt@?%_+!j9oJTIJSnM7t}1; zLE9fOpUbcuHo&NFi++wUOZhIWL2*`W1?S<+|6T;l&Swihy{;i@!Du#WqsEZCk?#7X zCR{_o7w+lncYYXA)A%}`Yyd59YiH+W>*Y(QkA&7IW%nlwtCKW;OZfjxsGTZb{SIOH zWkvtT7U%2TpA+?!kk;%c`bJPMeF5aL%Kslwc>v9Fzv5s;^?%4t&NfjWfX$WrXY9Xw z6$QMlFNc-or{Wd94)m_h{*Kximr-B9L-MCI9zg3~8NgnNeSdoZJO$Xc#{^c|4=5r+_Hn$AWxstzG=TcGUmrFmw9sBb;NR#+&+XA$pFLuKY;|_et>rGyxgu|F z@7Z?VnSNq@Ch)(s&;&D#%}&im=X0c|(l6xazbMPk+d7ZvcX}25f1qr@y=woPs65}a zVprMgZ{>T*`^Ww-kuR>VgFh_%_tX2o1N9cb{N?Gzb?LzT;%q;?AJk8K?@$i#DKW@H z`pwltI9H5-Pw=A9|A{!^ykd!BLvhLjia`bn?iy4em0RjJwgkt ze{AzLe55(TRwryuSfln#z`xD{Az6N@0oWCsTJFIH>@^eE|1$1fwmuG2!|=5az&_Wl z&*XCi{;g@&HME#@qZ=Hf1+hj18~C>+51#;CW;yhiH86t3=Lj?#{Nvj*cc#znf7t#& zKN)vM{`|UH@mI<_rU%kb6r)cS>K_nd?~=zqxyt^1rukFC|GjDvcw3nLZZR$m&UY66 ziT}Ij-Sh_FgBAW;Gy=##eHZxV;`Ma1-VXd__MF}in4C^gB=L;S`k>DJsrm{x%Rh?= zo|UIDS!euIEW>zW8>vshgW30$iNHUJyXGk(M?u^I{&`NMfUT}QdZRkn!V*Hh;ayqU z$lG2M__hyV7WUk>xAxEQx||EBf7|Ltpw*~mPmO;x$J)a-GnKcXBR&#c;QX{WqGRR+ zb4MI)^y5D;{p$#rozH*-T}y%Jkh^QdsEt~TGT`2I;=1s1?By63z^wqmB*7Jwg(E!L zKDEs~gzn*++8?d)4|>DO8T;Hi`tJxS=lU;ExuPo5QueyL0TBl-X2|9j^P zr$u#SH(CB=Gy+(w-T|0YbSpl{-_i)*=VZI-8zS2)Z)l(5DfJZSP<-EX;<%s7S^Z9a%;W z5$T4V_j#-Z_65wp>}LvQu>OS2@YWj7V3zz3wQgPWFIr{~lRaF;%w^AmYg;RQb~MW# zgSm!z%?-0Ne*d*+cRf)9mZ+s{X~#Ze)!f^*9P)3AX&>cs#{UA@d{q{(_6qF{a2!4Y zU*52P$+fUySQnT8opv6It;RR&b%bvlUvEQ)t>IWg_yP}rBR~RcwxAL7JMzctx91PS zhU+Vz4`iF?OQvVi&dSfdB*Z_cR{kqAa@QTQ&aW#=pDSPYuJDidK2@H;?ZS2={YA0* z2xS2G&IaU*rA72!a954~F<4^&wki&Iqgb;Tn7Zaa&wiV=+ z>{8BK{zb6_BZ)k$>+ns%*A)eHFE&m4<2s^AQ~cmf2=aqnt~G zPZ9Q?vY|KDEPIZ&JRD>F^zr{13TD@%LyE2^W7~7Hxogh&NBWefF4)`FBWUXja6IR8 z24Mb*0czAott~tQ|Mv7;hY?*G@zzXp0$A@+>8jDpzS_sPrkgLKysaLdu{i_lPmFKW z%pCI@S^f3i&HmY^*>U-r`hw@~!aaTS9~4qARNudAE405S+mE;Yp)mTOuuAst+~VEz zO#ZU`^ksF1L$cxdQo{f3`U27{2|m@@lPr=lrxR znQ$PKI`y|C`aKRCDThp9QQV+_`eX6hRa3G{OwjspMIg|*aV^UsY0&Ck@6Q5(O3f0r=>n1zl0Ks+_W zc8;$1STo4@;Q`E7S^8QFyySc!wHFyC>XC_f6#LCQ@QV+N%?exYz254wE{Qh72ljc% zdo$4rR@+U`&*&c5efWU){Z`bwdpD`4|CIbtjo;5WKfI-Tx9tA8`m)dYYUzJgJ~^>^ zXT8z$iQ<1o@TMo<{>6>yoc!)=BjJCn#tB|A?~}SIT9{wBZx#9n>$h1RQXG?hp*Di= zWmhT!_*Gh44Dqru{%^{k=vRKdT(2A<2KZ1{xm#ZgyHOm#dqQuh=fQ|#|8!^GEk8b6 zPq{#_%-hN2DnLK$?%!if`+3a(=19B-mxKX41^(?HwMF&J=m+aq{_y)LNo~bMJqMPp zIpCNH@7;Ur=nq};wy+;YuKRx2qu?y|9w-}{VhywYSz`nLMn925du!nTjtOc`Mdnd^ zQD?3pTYT5Bv-cduKHL95zwsaMch)rzBY5;bVtvQ?uGP>Q*L_5Owi|8nZw81ytj4mj zjSkz#@1Z4o1V(lz*UnDVNMTE-t~z!;_5B$r z%Z_cIr#!c~C!MF!J-(;W1P11dq(7$w{4aUhN-5{RaAtWaB@y$1LKra5ei2?)A&onKdOi zz#0>KeGVVl{{66joB_bQ8NkR7d4qrcXZG>`c0D37^9E(j0JiC|)z@%aKxduRY>!6x z3O+7su=X!~RZrSrOvg+WU5x`!P6(3xznpV`iKdY<9 z?t0lt*=S`C=GD>js^?FivPGp^~u@kcuM)BxR4v5tC6H%Yl3NIPf2R1Sr|o>bfqeYex!r2;mE&6?KG9y`v$-3PyQY zgti`kSp8s!V3P1M(V{qxGH5PWw^jPb5imQKGy;uN@LtQ&OCirX(n9*6+&ocx0F>nOJ`iAYQWBhu_S_}TsbtAsEW$x>So`d-4F^9L0 zpYO=udGmhyqUZW*t3NM$H`^e;UKzQw(_$K@`%WSM75V*l6_;vE-oy0H@4ota$I0^M zUsAh#DT}_IusU30`tsGEX+rPCMTcVEw2(&bAEWHw`m+C{G*(bU8N<2M^S7rwfWh(r zmMEXr2!TCQ=X@tI&Ut#LXa(g6&Jns_mj}=&$CXEymz4*Ut7x>KSCs)cUp~ii8gJwx zaRj}NA1#j3J4DCm&46#^ld?Vab`W0*#{Ro4BU%I876@CK`LOcHYGyydya*4}F%w94 zuOQggc>q`-asqh%w*S~^%mx$^|+Ef zK5E+a9r&ky!=H;@DAuyTzwLYEv269wXj`vn(>E7{);rdZ*q)p@ZG4XNm(e%&Hq3U( z&Q%_6WPY^1==}?QuX{{!sI2TX`QtCh=3Xt^d#v8Y+pE}JV|O1YoK93WE|pysr|(p5 zudjN(tIQyMfu{+j&!p$`_hi*q$wmwRM`eBUQu)J+i#gQpzodMBS^#_NJK&oXTc)-1 zL*ygunw9ya{7#J$@T_9|x8zqWC+mM#c}2NZ*+bm&v?7o{%I`R;Vt_l8YnZD0x~|x^ zcq@G`-KMXMJeci~ZJ^f1eigF)d}ab{I@UiTe%R6NoX!_`?wG)3Eot`!F!MTwh)kck z!04|t1+Gi#*Zg0{{bqNxftqzLz?mFgNf%ecDSRk$( z_-9|l{aF8Cfv{u7yzQ9L59XsyKk$#P+y1*hALU_#KI%t1QrWpp)joHXZ2pQu{s;Lt z(si=>Kb5V2Uf%t?Lh}>FE$Vr5tk_^*A%Ay$)AzUX0uUR-Qv6QicHgKLx-De=SJoRq`)6J9>G|vF9Ayf-3C;b5{~=<5yxgZaHSLpMB98c$ zGL65^e=63wN3H)KDy!JD{AD?ze55>F*XSS*;BIlw(Z%6nfIlktaFgu+6nO!Yw67TKU@>_BPb%+!g7ANsSl|yDUGNGq0%H!o zq*lixi_yiz^!+p~|Bb#FHX%DmW0Z{1SS1nfAVJzXBjRzp2N_Q$_i{q2<_hp{N#gBe z-=pO)#uV@t^Re-7lv1m~{!!ER{=LW6pR%lbThzDF>e#?@Z!wP9;-jn^-fBNF&PMsb zKc#%Ux1qKFe)BHWt_#i{xavC0#-k?8ZMwG-!P5ev1zuC#_#+{S-AuA ziFx1j+cZg|@Nccr_U;kpKTtoLcNB$B6!wX^kC3 z`Am7IB7h~;{`aA_eV{zS_+s~TKz?KPO=T38R}8RS_F{HzJ|X>4{{NCy3&2qI0cugZ z!EG7^=<~dh|5$vqMfR$`CVoTOOEE+T#r*S?tCeS!?}!18DVNpzK+|;QGlcX*bw@`l z3OGefaf4bMpO=sFk|LB7i*G2Ocyt<|Ud5Z}oY!Q((;ciNUjX}$|4(KB{xb(MnsI+g zgtiaM6KT5d5a=gw=$xO?4u?cU;F`cgV46AmM?HsSHjbS$FmCY(*cwa`8ettVXSk#_ z4*fw7(Glwf%Pwu*3jLy7*q=Cx-&%j$zaRQv`OPx4ZI7C>oU!4^HfqYU^qM1mO1S=z zG4*Bn8~=5^M17iNsLinU9Ob&ji>n!%C2z<6ql<3GiY%5R+0bXS);f+wvYtD(hZSIe zrPWHltfK6nX2)gsXY=OY%`eX9mc_p|WyPxc7Uz|+^l!@Bf4}Ns^IX-&f1wa|L~($y zPt3oYrr+pyPubt|l!1F$nZM=bo4-;v8~2vml#A<|9$ERBBKIqcQR<(wOMbbc@nyvT zE6ESIGdo@*03WaXAMgJUE=MX~FrZvmeSnuMMro9webnB#o;Ya_jT5$!V*9VD-G4!O z7YCMamt7i}N66ER z4a5SsWQVGKVGX^75EwW5`HoS4F@W(Oc~BU@JW7rb{A0cC{ksmRCvS5+X8cE8;lVk2 zqyEDCr?#U$+19qMUFX&ivxV*a%r=Jen=@Q8G{wJWia@_LGI+(TVD01_{}lnV^A_Y{ zD~}{C^IE2stGSkC*Mdt11H|#{w`bs7zx{ZhAvnhPw`QOdl;`T~w+|3sr8mQeuG#v7 zeaH4_vh8}^OFyhXrJ@a-Uj6;_t&TO+!u}hz=D(y?_FeP))E4(^_2gfw*iN4P?TVs# z!}cTj^DoPven5D-Lals%6uOR3Kc2nh@9(C!`F7D*+`m!$e}FuK>xIyF)t6^u#pm4{ zJsNk(Q(vs?C>#Bm&UR|CRIz^ALSuHXA#Y=(GIC?H)3YDvhiL@h4#Iz5L6h`7;$8K&@Du4*Vu4%pt@B0lhqGffg7DYXm$|>V5bvMS%)viC z01<%mh5X_H*jsW>AbSFi2b>YGM-TGtAw+G36`_WiXtRy%fOWv=w?AOCTf0I-&hCJAep>cOHkWMS$@zQvy6Lp^ep*&&K2u14McKOd_5Y@jKS{p-O+x

    @gY*F_tt-EU1Ve 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 z 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%0D54N`)Fbclcw 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG31.dcm b/test_images/IMG31.dcm new file mode 100644 index 0000000000000000000000000000000000000000..56bf37acf24fc1ad7a30e7bf036c0bc8474da0f2 GIT binary patch literal 526126 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 z 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

    9j|~07j@Mal{VDFmnhUl{(RY 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG4.dcm b/test_images/IMG4.dcm new file mode 100644 index 0000000000000000000000000000000000000000..60d4c750f61a801e9677cd8f0c300f4934a64119 GIT binary patch literal 526122 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 ?>6wbEO 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�Hi-KXb$E}rejj}?`<_hVfiAx90SdfSb(S&?Lofs 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¬oJzyPPVa(YaIU2zUdQz?Jv~_s+eH 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG5.dcm b/test_images/IMG5.dcm new file mode 100644 index 0000000000000000000000000000000000000000..3ea02c5ed73de724a2958a09598d454fba2b690a GIT binary patch literal 526122 zcmeF42fQ6sx%OwRHM0|1NT>lqNJ0Xkg_B0;oj~X$6p^lgcm)B0i(o@k#0n@_K&pif zilT@hh!p8XKtM!#q)6}ed;a^$%balU{jS%FqY0`KO_w-Ea88d0DHpcag8{0FkXT`A-dsdt{Y0TIaSIX5uoi$&3R<~ZR zGFCOtqhs^5$6TY%%hkNqv<>=KD^hMHwil?@T5ry3%BIt%tiQpQlg6$%aajMVsn(e` zdo^X+W;;!pI!vwTU-j3X1**-aPFa7-rfY4y{pM4rY_itWZMR?RJyX`&xWBHp?ppn; zaXn*K?3plbLVsOj%S}2}&xG;gCr;|GEBycOzkfCOueksI)v&i+b@E0h6Hf`_S_wQdFseJ>gjX(H-J@%ir&u+Wz zI&5p|AK0_ilnK52cLnw4xH03$PZ%R*S!q(wxJf-yl`#{?j~_F3;<%N@Ph3g6#!Q?z zcA)fT^G)ZeHs59c5AOEi{m1UO)`$20@Iia+eZYPLCDDyHt2v@lJzZ&yU1`F26mMX) zX7}DE4;xrjYLPy4Cu>cstDZ>{wjErJ=xR(?9fobP*}CfumUPzD-A)`Mwbb8W$!1-Z z9y_jQ*x>4Lt5ij_mFk|JJU--K*qkX&oD;>&;$$V6T04`p@_8KW4(X!87D0 z^mGNMvV*$yjgJZkR|C6yR+=CcpD?L={XyM56DN#)t3|`KM}6?tc2Bp&*p+(J;coMq zgS!2>jqYa96t!Oa)t)W9KA!cdTF=!AE9m|PP1|5VMR#wt$*{>&Hr{f*sXD%oj(4gR z#;?#l^T_TMh0z)H51a>Gn6}yEEp-oDtfMPzFnOBJYQ8>s-TttL{_b64aMkIx{h+q{ z_1d1W=CEq6{|-L_`2UAL#t*9o=&Zj=hkAyo_or>psiy6Jz^(_49aaqzSLABkuwi0? zSev)IHc|V=sc#2Y%Z(k|Rfg@~S{XlP(!?GepQPg}NSC`p>DfLy8^35 zVQHGm^}IB?+FWhP)r6kW)fQS4cBDh2tEt@!W$w)? z_kL<%wb?dkl63v0zUAE|fkmo?EB+VKvT!w63)_oyw-@TJc`wHolqFuEn!lP)3u_B# z&w}0U1#}+A7wn$T8LYj#B-M8}eG>S0mq3ef5WjFWWX1vmfcqBzy-TvUH~!}r=I8G+ z0gNzTcbzgWN6nOn1I!46yXEIq$$xkG^|ilG0{>nTuw^$E1IHkJNY}P6QZ1?ld+%*H zA?!b;y>6~BqK*Ceg>2Sr|KS2khxIr9VGQ=N*k^z#IERvW5C2}0>}zeG1pYlFVE@~; z7qqoV1l^$7b|2I)`W6#73b0S$QsAGG5hDy1W_Azg-wY7; z7E5pcf6;2FmX-^Qf7byz?EysY9}mE|4*YX1>gGCT2Kxo(i+N_?-?>6(3+yAf#VzN6 zdN1})Xve~RJkU4l)+d1(5&$b;0&E%`j=DjOtu^1^(Thjsz?t!BgxSaE9OHgywV0Nc z0fx*d?Yaa1&iNVr_UN4p@bv=!kqu<;{IdI?pC!f&TkpUvB<6@K*#Dqi?C~9ugYfZp z2J`l{qE7<6Phk5R5dhX1oPklJ%Pa!UhIY}lm}apo*2SFb z2sCphoWqrz|BGloBKpYn*~b9$a1MJZANY4^VuJ8Qyv`Q*rWLfzOZX))ojJiCh`0aw z((k)sp9KCj5-^_e;loB6!{FXFJ*=qhq~iea7ym8hW=0n^4C&hcMTPufZ{go)w{Jli zAPy51pXNkK+7EkgK%4F^xu};SOFjQ0l+C}#!i|U0{6yPASu3$?;$h%{=mN@0CR}1 z-^`ALc;L?mza4*#FJcK>|U?29g4))D_NWd+N zc*9Z5Kcg@DuF)rff1U)K&o`z(JV@?s-Hr8N0Ls}DFjnyLDPjD_QJ)j2;+s8Ke&T*U z`F1R@X!odN@Rkdx75h(2Kd_oxb{+h)xTV-+xB$CPDYAWS=FcOC*#AI1*Ef4{zS};u z%Lm{dYj2;&v4OE3_h!!VKC|6FuXp;c)F**|j0B7aP-M#oF0hjz+3|l^K-)&6$6kGl zA>*{2jStRP%nDID5EQr%27nR3Ka1CW9_P~za6Cv){sjJQi_Io+P2=C=et7?817`q? z|2PW-b1(eI7=+j32uuJonFY8`)WBK3E4&DA^^Fz$V>Gj`)_=4Fj5+k!8jk)43xGQq zp!ETa|L_3#HeT)hgYBq?lE#-Y%C;>vI09Sb{rDW-{l*srS-`e7n``nhM| z-ndWWnMlTrgp3r#PK5IMsY$gfIa3h<2P#M3iu+n|Gr)@#G>6c!H#AC-#eew z!FS|D!w=wyOTmYK|6c2>u}=bjs|1Wp+blF6AKX~y)0*uyO0wo<=C#&S2wp(ro%!<> zC;{SJhjE6*W^ef1j{Fy|Mv4O%1qA_GHx?KTPni|h?vU@d$DpWho{;LS7pj74Yv ze2$sO5dipi79jBNcH0l3r3=om{sX$!o~)knzkv1+68fF@CoVAh$q@K#W1syVcQ8tA z;X!5a8EbBDI}5>{QJ_80AG~2+qopBRuUkIe8$Hn8Pv6@K|5E+!EBDt+z?y6Zu$EgZ zt;7Kkx*%JiAI({KNp%#eU8#IdmO;+ z1^HllL7^V>&!q^!^ZEko#=kkinLk^4%fKx&;y_*CpO(>5Ba*vw%fct|)sa$*e@lz= zd@t1DHDttoOUd_#WCHR2Hp|dD?uvc?TR-+4?~}m)RRXp*Ey`?v(P9?ssX4&buf;#Q zj8uIQXE&Kjo;c#S`^-+xyXDwvB(hf9ySV*-C;7?=dQ99cLOZ9JBB544`v>cm%^$ z!nWVz`SW#W{tT$*?B@SKe?JbbS`*^v1j;8s&Yic@F9L3gL^uN9G|u`Tw8#vu}T&1pZP9fVaTEZH+xzTQQCp zfwpBvfVJ2jy0sk*HWPq8G~BFUESXV2mDg-reas9H-bB9dj@3z4@60 z@DDe-y@7Lk2!Vgb>0~_YdoJujB7KmxHfDncFagJ=8Yg*H_z*7@r6HaG;y9$ zVc)>Ku$U~pWB(UU+-I z_HFk`;D3`qi)~w|$hg@bu&uF+ynr&kpj_LAKtuUEm-vPgD&X za0Ro0YcXc1ueJY_3Wfq{;0Jba{%^@@DJ@IN2Vfbg{l>rN{4nPa8$a{&fA;GAoDUfQ zG6J;B=nsTBk_hYD?nNGyrrq4D)yMv~{_Z>8CxMVaXgY{Q$Bg!{?r5cPijG-JeayHFFTs9npr3lsYGcA^ zY4w#W*bo+9f0K9-c? zqgG1+sRfUkK`B9L_Oiqk{cJ_>b8rGzu@u^P&9Q;6L0hAL`@Z`m@IOhw_H1U`6Y)42 zYMnIZYEoRN-h2coRWuF+TG)2K6!(A_||Z6CFU6$C%#1{lG9 zw$VRA7JqcLoR+19|Iu2=2H*iOyN6LfXZ?ASm#2UHG@m_>hym>RbA2N=?$szW;*C%v z(CBxYz`v2(vQyv|dAP1Xt)=VOKP1^3|E!yl$Sr<*UXB(Azxj^23)qUiw!W5%xdYrEnPtr2kh5prO{@uol+Y7XL9^Y}uQMCzaVB`2tIq8ej&_b#1oy(Y9a%_s-0bNo)VT-!aL5)quV|v#JEp zauH6&a2L@POZLIeY-lM`h2y2 zwPUru{DVam0nFKr2=Ms*R!}?vY6hWZo4A@$88+H?Xvw&>Zd>f99C1llcj~lExO3MI z_J?=NP`9tg8J1W`*fOLZWYzi&K8Jc)qej}nH$D||WQ{$(Bd*^!S9n&%`^@+4c-IdsXX+ zGnfZ7m%M(gzn=u;szzvF*KMX{!3nh0c;?%wDw{ z>=ju1jA7d#+kBS|Ec0z|omyRUtA(!FWv#_v0-o^*Vd%Qi;FkC*#*;mLV+m~sQ%0Hn z03v`TW&5|6mA|UWX~ndAIxL--&QHHc7p9-3AEh(X$>|&E<7t~TBHdMet=dw#LFNIF z1E3YOgIcLQTIltN!|jV$YP7%}l-pvq@}1LeknOw$rHogkX?ffF2gmp-l#k=aKgV4! zXJN_1&j^`wX7pf-@)(719>84QW&~z6o$tF}OTfAfveER2S*<~Q8s#9*I%SQqrlEcI zDnWFhW9D`CqQll|&U3BSPvbg}Wj!{_xHZ&DePP)sX$0{d-g1jLjyry~B^@C&Pm*tc zboGa7Ogbq2JUx>7=TUiuyhdI-ua;NMtLF)M*}PDGK3$YPlm?`;s_k?Rv;ODn@=!d} zV~#QQkP3_MgqGODnfcB+YK&8oJ2&Pj?KQqb0@P`K=)KqHSXQpVcaL0X5$JBE|7sfT)v4(mErm6o8J)>mo|OrZ6FAJ=J*+E{QqZ2uYeCj+>gEcy}E zUDYb-+v(XfKJSzd$=}SU=kvAvH2*yRO#kQP6Z2>D)Li8g)5vsgwUuTFkoN-_w91R| zNej$L+=W{np1oT~`&@=QbIW}PK93sh18@iI^M2RTGKu9vU9536pJ~pBesc@jeu=j6 z?cSmP%mTEEb)-w3UdMwo{^8s{yEv;zpv4%v645=H>h0D-g9Bs1!Fq5=liPBT9;+sA9?>JmEAwMx~3YJ zPDyj+z496Pj{IUCP==JzWtp;US-y-fJz5`Hn(~MI?YvU{X<8zESGmIB-8(iK$tQp_ zuE;v_p|yO|D#je#LR!baF&eo6S`E@IrSKQr{)i$d5%GcNG$Sp`%vbU?z0b1qep&%% z#<(9>aqGY}@(Q*D|FiOaq67B-!hTqXVpgto70m&C#$Ygj zwJNj|&BIc=r12jNK;(+n#$L2CbULh<^^jJu)_Nhlq1T~cQ-d!FYFhFT|i@DgvbDJ)VN1~ z%mn6&u(UJlSRmCrfM%le#sb<*EuqQA4z-3>`m7N!_T7C76NLSb(yjGxBLP^zGp(K5aZkRx5islCopV0uh4CGF zYW-qAdS@$Qiy!(HXtl@6G4@!aY-7;7U=1V2`WZ+zC$Po-Kto`fx~z#|zbNTafq#3( z*6`l=H|i+O+E8JZ*ngR7- zyY{p*WmiB!J(nHlcCAfVI&bJa2DF< zc|UR0-k1R+a0Pw}S0ug%NBkT0_y$~y>+t07#OnRk<<&N6VE$#^u$)xxD$kZz%NwOr zFIX>8FI$hPm##*fCP{jzHLbpAoQw|bvu2`?cQfdTBDb3G)`dhfnV zc+G9Y($j*l|KQX2>z4VL@5BhCtlP`Ew41Bg(}>!s!))NYvlKWJl*ch&DSC|~?oIcR z%d*G#_g+3@{xiDae1Ky^e1dl?4rays3hbNV!H{(l+_8>^SUXrlYh42UvJRtt=%LGp z9=Q}6&swW(XrODd?t$3h`e(m&lk%VmyA`cM>+FMYR^SK=X$;a5+Rh%3!u($Q*VGbM zXWx?5+M4b6a`pYRPhLz>{_o1m!v6E+sq#vhzh1sxMazoffQ9N>$gk_U>bd0!JfNJw zt9e+Sl)kE2LrV(%JT1%>d@W<2tHL_SiB`G=lxz1H>qaN-3cNC?JbGgNvRy;F+2>lUQ-S*U<~T=;b2QKxK<{nYY}L6EPsX9oL$yZxBL0sS za6PvRybssExq@F7@U#8I=x_@4VE=t}>Ks!|(~Q4K>GgC|{z$n|=&$QH%01-@#s9CA z3H1i`#`Q+^%8CJ|%k#gdG+G-ZF1W4iT#n7hr|UFwxOCS8!0&h4nNPHsd;;ee*h_l? z(MZbphoxHVvSkn4c=TE9gHPEqn?z>7QsT~$9LHTVb^BUemAbe_)W*8&G)p5lO2jv7 z#y^s$x7fDKovLFc6G} zqurD+1F_~Dlzq^+I%jzCwZblj-@yESFlpr5AEzXkS)y8@+OK-Dx*(mN_muBnl;`VT zKcZ2;RW;s!KzX8USnpo%Cj38L_AkTAO65C>4d#;%(7(RBY+nw_`={^gd4MIm48T=J zb=O7-_kNqWXBco*^O-+=zwjOVgTKI<@oE`S3Td+y)}K8gqu@w;J)T`)X~+4LZR?;P z+!yXI)>-Tk;KQ*8ruWj~AJz@z8~<2*G$QcN8GT;Bzb6aO&-7(H&2Astybg-6F!=w` z+vp^iH=?ak)>5xq`+_IDMQzk$eY2kR)=t-H-45GEsnAZhz~j$mBCrx@Xz>pgz?{8& zBLysifAky7ung0_k@DQvs6JgSAn*Ur`4pkOzvBD;^_^uWjqsh3U&+UoMeA+q9pwLC zS4Nf}=1Y|!{B4<6*?@WLS2PZAcfL8@SMAV!YY6WRS+e`~Al@A^@~x~O83-&k$hU`M zzU1C|+hyad$B z*&mo$H*I;02aZs>)pcWlPmVF}j~y}((cad>Fs9uKy!zo?Y#AxxlNb2{k^-1Nod6m3Qemb8m`@d{G zs-C01v5YCp) zGX3)Jg@9SNwe+r+;B)gnTj(N~_xyjbiB6!AoPicuYpi4Tu0!iutqT03dFTl`hCa4B zX!Nt~<1GVljxpnNBSvX;liG|CU)h=t+I$6DM#thH&32NA0DSVkul1|bs`sb8^46N| z)4v{G_s9b{PNVyer=!w~>E3)=8C;K(Pw=VowfwtucRDd2S%%hA>ea;wPimIn$MXl$ zNs0iLS0<4+2Q96CJ|iN4eVhk0&avGs4rwo#MW*JpkXJBcD=qGYGkpeU8r9ql_>XNz z7*Wc&_pzumSOMvo4XguP+wu=7g?A1@$LKvjKdU~UzL^gwe=ZBws|wlu>z&K?`9MAW ze|9=2A0<{;qE7YRWzT$6Ix=ma_b(Ick0>j!VqNO5my7c$=}NsLs7DO2To?Ps|7g`t z6hI5$A4li3hy{!qg>k2jz`&2?WyUl5Ef?e8cWJ5l{wto?tXP&(-y96zsuMT@6e244ls8a|L!UF_c6dbn+L23_6W`Ew))`#xc7T&f{_=R zV#HF5HQ8%Mp7%uEl)&2zJ!Ty}37oqI+bwInal#qB@$V4|j{zG0W+JnS&%xS)wO|8q z;7mLyaV8M-lcyUki@i4Z~So%-wb)O!B%zyt5H7>$c85e5+mbJlcmRU@K3L8e`s%ru6mz!ZL-PhW8%! z$=VKr(LI+oAAnQvkDj|!;NLoG4Y!?i3ms|DE^`wR31=G@<{_Vp);kua9cVubnLd_y zuRrMLe<{81ZwEc|e_{Gf{+34m)|Fk~uD+<8nZKMKtX`;op03R&mD%f&$_X4+j>yNP z_0ylzqGgHtNA-F2-u3AE5{&^qlU}Pnqzu6FTF3wd{_!uk3Rk90#;V8ej6pvA_VHoe zdjV5kKpG2o<=6mZnnRFJSa^FCp5w%Rt^vzXcKD1fwvoSO&3DVo=2y4IJ;{3Hdc7y& ze|w3o4Tv>*f&K`6iMD%x-@Jf#9?KXx^e4>k{-V!~|3G>4r+XKSwj9AZ?4hQa*Q|rB z9)@li$ws>UU(Q1t%@Mt|n{(LqEWo%f`er?Y2W**O0c*DL54wzh+F|tD=JV;XIpdPg zrG(l&swb-J((U=X%IfW0f2N*X?^8C+YozO|h4dzX*YZ!xJj(UWQ=eKc&sU^%^(LT8 z@Yc_l5Az)T+k^7mR32%=+qi@}d(QEW;pv?Vg-ta!_kM}rlM7@DV z+i+Vdw99&IF7U`ZsD}+G!&+;x!jt9OW&Fe+ddFffzY1r90`Q?j}=~` zi$+lCaXQ}jxqtOWb$5CwpH-Hr52z2(%$|Ye;nXkPS?!cI%qx}K%R;jAL+Z=RoB7SO zp(22F@_uEz`t~u$jN$I_1?>x(@A_Rq?Adnetyu|r>(;jIluF?-DA@ooGEx4VbYQ_AU63q7`m+cUs3ao*1}P+$PhUN>jivKdw2-@n{N zUADG7;foE%`r9K1l}pQ4?@`|V)760Vghu}_EUVTZuRkD<{(Je0>CviA7pF7xLFLJ^ znDD*XYcB8+?gTz~C*fe$Y)kJk8s}`#w7_%g_p@e3Z+kOJ zSvTozTPJ7ozF{d9F8=xTu)sfK zfbB1d!A5XUcqd>sthYTLc&x=g@-&x5e1zPPnz_~XpFP}R{D)-OHn!W|Xwe=uyuAmgZN^@#q7zCeHcz9AZ59WftUQ(9jjYTz!+BYh0;uVo$jCNgMdZ;)h!(L*2$J4;VG zs&gMw);wW*Yd&}MfKG+~ZU&&Fu^Tp=@9?eGLf3YGp%uhBw3I9yu3`gr})$JW(%s-84=o~Qh&>{%aJKU<#4 zzto$)U#X5y$L8J3AIl&;`#VbbPs#v1o*&V>zz3z<(|np2_>KC5_0{FUe4p_Db&UW{ zRIT{^OX}Ne{uMFUi1yhFVI+Ws_8F}nxg#nH`yUdFyR#%Y3yx%qHA~9-sELI-UB90= za9m|yEIxfUpTRqDtozOE!gh;pegWMxfNcF+tM9%r=B-gMf>|MIKr3wj`To};U{=05 z{b5woU-VXsDte4Q5Bzh?R@P^Ew4I)`R)l`U2!3y`(iWXhv>5GVF+Q#D*2B;=O2vXs zT8C}BtV5w?V4gNu|2WV105x2}`cIaRad+qY{9X=b`tZxXEac)x38%|z#Ev(9pHpp= zmRFoVPyIz@|9?`xkoQOrRijhC{ANDAyjB+I;(vsm`Mag8p$K4$^nCU4bb%s(@7CY0 zACvvRPrnp!ynZQYW%(3bfvDf30LDLUVFb|lH$vHi_2+H_g~lbajXMqe2V(urS>_Md z(Mrv^1k0hd{^kwjMak$9%iogsbzFk;0=s+@@!RTKJB;(tq4U3TSW^Q1VQ2d0 z1pI3_D3FhJ5BuJF)yBU^eJB}z0=-Eod_LPES|srVr+; z%31Z5$_qB-apeR~t#+$c>*Ajb1AafFfcOG_Hvnzp_e7Zw4CbAsG>#*4VgH}|j{Ec- z8n=O7%hLQ|{99&@C0Gxxr5`LE7$ziTe<2tbnfoeyQXW=C!r+{5d;OsmMt^G^Y)K+x z9Dbr}2v%_gzQ3Z$!B>Rq4&@GL8HnU*6Q1;1HpIl;-*_ptpa0r(Bdz zPtR3D(&+r9@`L&b%>i1m3{bw{=heQ|y7DO;|2x0nu>h`T`%k-Aqop2`1k2#na`PHe z3lz5YKcvGM=2A0A`1@v8A4SsC)h?EAaDhDlYBc6s2B0@AX=64lL1+&>ZoiQ+fWWiA ztuNLQ_5}LvGr}i6n`3?Rg8q4IL{9_*1g34@VR176Yesc&g2#C2Dfc*M&g=oiF=qkM z*fuf^e?K%0jke9Rj@ur=BF2B{AsUMI61!4=wA&nGjSBYRTo$fnYZ!BS$^T(@J^K!% z*&inZ;4Hwh-PnI!&DuM;8ma7GEu7y_->PSSZqDCGPgW!J9^m=Q^?K5OA!YuT(6X4; z`qk%_yYjC!FYwLk$+THHyneO*LVaMFl6OzHR-dajR|bFxz$1Xm%E$27zd6YEKkPQG z@~oini;$1+9TeLNBXRE9SVh8?C{H*NRhR?VYZ)Njz&`Z`D+Is#{6M~?PS3?2erbRKm32}zxjpM5Ia&Y<$M-r z`drs)G_~k{!CJLY}Mf7W$#Q+;1KEbk=mf8(@S z-n2ZX*nbgu{-d>w(Au0D8+;<)so8#it}adk%X{mW>I;5;nw$vZBn{SPOSi(|7 zBV1$nU*>?|0T7Jlw2Sf0=git+4>5X)I)k~rMh$IUMn3!K)qf5GX636mk7s1JvUi`@ zuG{{5P8V8Xi_2c{A3aA|kGO+BYmYI=I=X}&@o#??tqa=(zR_A+c6$M6I2Mk@XId}c zj(@Jjm6`j-V*T{2VPDgBk83&aN9=F(Gx|mz5LRF|o}bMnKZj+WD6H;WomkDEZc4Xl zKHpXK!p*t$31!_pF-=$W|C#*J^15dJEF#N4Y6kx2uCFSoOxNhZ9o5&_4*$i2p&frQxWAb{e0t2J%5NQ3C5A*Zz_35QYr=8vXWo zX2w4f2nKLHW?9ZaYSAb@aVA^dHMjU_I9v}N7sk|K)*-eZ2yVHiT<(2 z%+4h4@;CI{-y$>o|5084fA0E* zGIx1i`GMcaYdAB%RIU{R{D+N?K;bG0RA;GZ0%MJFK+W+}2K`V^T*+~tVf7CdwX zjR5^F6Zs_DnD7fZ?saoVpx-)ZoiYdfV-YYb*KW&cwskLgPjEWl^eJPzEbeO`b>Fmo z>>e{7(GFXEG{uYUi#5yWv?ii)=%95TPOvTHXgsfq?gf^ycpSm|4g9l@5?D=p34UUR zEf)539cTT?wh@10@xecAfZq@P$7r!%-XrV({_4BcTj{j2wVEl9rqjOMhrnIG${0sl5u9};XeWcvu>U4i}2E7R*x+_{a{?jcg*Q> zAJJEwZ;ya}4)$iB>kQA%a{`Qi+mz5QW7S*12ewzk#R=G}U{tR9+Seoi-_@@P6-mUaI2WX|^67I(KpYe&-`o}#Xy>{L5v6OwL zxenA@vX&1F$(fD@kSS-nC#Y?BciS?xcY)Q%lcOJ5v*c|%LR&(I0{wgkuFVD3xj2`e zvmK$7OZu2=xF4rwqR_cexJE7z-+vAHK*Pz_GQ@>+Tu z(1ute5t=DKiA_iEXemXyqR##@=&}v)x z04vO3fF;#7T5kV@XoTkjXeIXB|1>WC44Q;ibZTsx# zqb(Df>XK+Z_QBt5lPP&W~x% zZ%Lm>i{~UCe^hgR^VQ~F&F(46?KSDFYT2}Q-a)_pF+x%QaQ*hz@?wA`6bZ~z-&a;E z%jd!AJJnOwed*PFUpcW}vpJ7_N#|a#B76T+>vt0&>g;#+T+PJ~{%^;Mp2Qj=WZ?gjXJR;CC05W$k zh6m7Ej=+1M--xz72`#aOr=)WTpg;7lH+RHd>O%AQg$CBqENYxJ5&QSNYxi5*3r4N` z!03;Dq@FFB6u?XSg|=z?>ATnD?2j#}p;KDC}kgbP-UVwbgLgc(9F z9RZjJT79Qnl=AtGryT>EX&Bch=JxEHu=?cTmJ<@k3y9c)nfl z_V{J})#j#V&*o%3$#-e~S-QLWLA6fWP0#(-LjOX-|FU}f=kgi>TvTuTeptT?zDgb` z{NG#sI^CTwE1#~HZBA{@Zbmli)|-|?^fvI#lk$g}SGb+7$6JA!^G9oGm)QwS6PpAN zu8-Aj(mT$&zp51LhC%VT)%duQ(=`b6uEe@D2U2a64J9B=Jp3%|fNuFU{M zmK!FaM0^_q-p2ZI4L+CbBHd5mc$5zxfcT&1eAiTF{)5$*t6%7s{x(e)q*d}w`SWF$ zdM%;<>ZYf8Pklf+Fdv*QRAjJQ`fC1qnM1k%!NULY^+Yj%Gk}kmEz4$kg5LN0+v==z zxtlwk{Di^qy-YvSau21`zf$XON-~h%4;|)Qy z6^z3G+za$*#46l)|}|5$1@!%gCs01Kl#ME;{eN@vpfP|>__xZ@7iy) zo*0$wKI0dyFxHLg&>Hl{wxG@W_13Z$`^LOA&-Mn6a16>Be;Wd3<+IJ)NYlM$8PiYE zi^x70+x^?y1MnQ6=#!aykFBUL&N2RBo3J2!M+{(3H2hJI&Jp#Z#kO_!iz)+bgQRJ$lH|6w(~S}q-`w|(rEAIS%o zW$S0^)0#gw$2Ze8w|B|1OkPcq{m-hS(#82)js7j7oZn)?{z~-<^)g!H37}odu6h0R z13fkLjdVsnqO4ipUhmOd)O^1g-5jKGfThcK^3eQ4y(j3U>L;2Jw5^^oTt=;o5lP#8 zV;;K?6L_T1_r`tNTk{lR1%fXq%;0oj4zQ38kRzJ{BZw8-( z|LAutKv)uVg)&AzC9FN6OW_ZMO}CA)HR8;$9Gq$X@Ku9J_+??9F{Iu;2KehZ%zYTK zx|uv!7yPp);(&In-)FJEcVC8&;C>JGh_bFNdez@>0N1en2idm!=wx`RXlJ_^@#X?s zbo~0r3=l`y2I2=}3t2#b{arr27oXaD!F!DGf&7U5SI|7)eXA2RXKzT_Jzb*Q-jTU3 zpHS}ZC-t7qqgr-tj@K`K{662C>U5N%gWselH2SxIy#ECi11zuieDnLiBjgRdP(D&V zp&7#GRzI&kk-nne3th1OLA^rrgXZF9@8*8}R_OUx|$O4{l;-*@RT0?%5Cc?{ey$hL29hCsTlbc}wFfg1ftv&BDWTEdRKoNd8s z7@ubH(37wuo(tp{-9Diig3r*I@F>xc;0ScbJmK1nZ6Ea&t*eys%p$x_^UPm|fLZx0 zOD_1;QZ&c97w7}?ynD?I;60p6DNxV9KZCE}!O4ZlM)>VHi$Tj%O#Xfv(;Ncp_p?tgRjmFm@Mw!B2SPnp5NviOS$ z`73J~uMvPn>etHW$_e?CdfM+iy&doadE@e2IY<$}7ZpRC+Kg*XuZQayp>@hVdC&Y( zIwFlr_g5$B8RLyKyCZ!k zRS#AZl<#{^zwmoTeqGP?e5X8GwyGbgk8YYy(>b!axlZ*EdH?I_mpqTE#^~){+m{y$ z(LeSd{I9AUz*1T-dII>ee6sBNY1Qib&9KGw3&C5|cgv5sy7`TA058`2>6gJzQy@gjW8zd3`20p$^ygMFC5n&_G9Z@2#Nf$<;D2|Hhoz2x7hut)5fwa)K*K0kN? z`NaR=f1I-YD`=!|r|R?7uc|ra^P^F;lk@0n$~e!u6edei2SW{J)N&05U? z^>@oJ^7Weedzj_~e>iMh{+>dB$OX}0`K z{y`aC|FB+58G!qmbDFiAOB4eZzh@;b z+r3MWZ=V1r<0${m6@;(TdOXe;TDrzRGI#XfMhdq1Mn687XA<_tKRp|H7kmHoxw)OE zFpPgkkD()I4?1G)vMoUS&>Ad@S-_(RttJHzpiQpV_-8%punxm6e>nnX<&uGNFc>2$ z$emtw_TLs986$1?QuI*7em?3xX_=i;oaHmE5$1W@4DfFTFh8(m50f`;I$lLT!GFZ~ zc>H+(W&^ft{h6uC75uKwh?7A+_Rm%xo9J2mc=sU0TmVj(-3R)|YVIBH_1U^QP&WFZ zYP@Foyp(p%m+5)__sH-6x!&kEpMJTcZhqJ--C3q{cJrvl_17p{Nx#6$Sukfeymjb9e{z&an0k+^zJ;O z!!={@{&ITRwG1p5n%}wh`wt%7He+?r!SDd zkxs8T8xv=`$N7w>ZtZKdT4V3g76i=-WZTb23(-z%AYOpCJ&Mm(=qd5&P#yP3na9c; z?>nDQoa`7MtTV$N#It~uK>rHD{#5-M&oR~YdbW4B^sBT){%ZbnUZWgbPA-?~*L>eB z>(sxj_ih&G?9iFNvqSUA`uK8X{!n$N=NSRyj`#(;3!f&NR^7`f0vbmlD*uQzASxDZ*Zq04_weUgpAIsTg@3Ks}KYu;1 zsy76FA`MB`RA1Du4Xv)Whi~t=#rc2FUx44n%7gL!jn#ccEP$`T!W+!&QNg1yq|xtn z7$Ek+tX?A0veystTZ`X%|ABwr0&Wk%du&ULert|($Cd(p2&)n(4@3w49p~G2L}}Ln zQ?TY|RDH~Q(AU2V1+!`?qa53dyv+s7<^ju=wb>x#PRZbbHtKRDMh(Wi`MqUopH1!P z1h{vWhJJSh5TE#wk#q7K7F!`_`NQ*v7x4ByO5n_2Xe8c$i+{(tp2P1fxox6n@*DAH z0q^gT<=x2LPs(l-_JZ=HXd2bS&2G394^pU>UpSx6(*zDffrE{(3 z{XL;y@L4l|G~HeuP<^(Vn6}FQA&wZSeE*{QUq<*}P557>i~j}m1kj{1Ax}!DROjng zgV)Oo$k!iPpHiivwT*zGF<&c|sxunqv>MML(nd=to$I@bIlO>}AbX-kKMC!pr2___vj^Hrg6- z?yQRK|NXv=^T4$IFnTPI9b62OEp^HoE(v$Ayi($spuaw`GAD1J_hssLj#e7m;CqIxrpL)_G)w!A%u!Hgw z6T8^9R}Yex(w%aT;Gbop<`4Q;MY+fDbchs;{WdS+v*8kFOOP-Nl1JY7Soi?+pe?&4 z?*5|(`447?*WrlZdcM7c^+#9m6ZsW3aBaNWi?ronKcylnh!WPt*6O3h=96HO)_zg8 z@7DwWdnT}_ZmAldmaOq_$-9hk4SreNTjm7%EBH8i#Qo}L0%2t1+;yWRV4QF4Mf_R} zrK~@2M9eug+KqHrz*#|~AFFR4)^ULAbuIQFmJp`LYxdl_8oi&UXX?DXNAqd6(wp`- z)v{Ulb7TGP#)c}hqkhNh8`b5S*T24U{ddaiKPcajhibmgG363@{ZA`S@24ktR<2K| zw{8~c9MRda^TlTWdMo{^@40EQbe?_(a7#TCc#@t7yhJnqmloO=*Z;E0{I6E8B@bYN zo&i{-ezfdXKBeCQzFZl=0s0+)v-E4gx0iM6>+5}+1v~q7_UiQS?9=?A-c4NbSh=}e zP)?K=FtyBEuFm`C#qw3@;51${gnz2spe2)i~xJcCd4=b{Ao$^8QB*Y7wHlOpbKVgn1KF_+&_EG5$j}8V zZih#J9(u7x+UnzlqEE4K7Dv#_u=+;3^{XxIZO(-o{(A(>%6pNc?Yw0Q>XEwuabzOC*exdh|nsI+`b-$Lot6LP?Utis*2>d2} z-lTWyK!-d~O`zfgSsxGZ#k&E8*BzWk@^1(l~eyz|x0 zADSQ4pDO$1v(n)76U`9XP>gbMby0de-&jV;{*S1KivgC^IjeW^Kfe16(32WLI3fQ) z&j}nSKjXNxR~}K$(r<(uR?pvD-fY?Vni$~uW{2jodNc9OBjvVox#EDM%75s|!58w6 z^B#Hed{6q8<_GrEDB_9L$HhBai3irvvZ0u58!cOF&wDg)VF$6=wqn1H^ebhn%R{9~g`rz2p9B zF&{l@*+;BTP1cvdzmM2Q#H(bi7$(5N1m10fBEx52l!(+eiT%TM4lNj>b9&?x?Hh}h^nRh`(sY%^^=?Qvr@PbBX}-LA-Y5Sc z-t$Wk?lWNdH-KGAM0G8NPSTA-ROYcfQa$tFve4PtB@&pUA3uGtiUDCEhF#x9N-Z{&lG@Z9ZA8#?iF~~*mm}&_418X z-)NB8!I%!agvN2yR^9p)nJP-UF0{zDs;#AOMo`NFffwXtdG_uhc; z|NT@UVQAVpos{lPL-H2+llkQQ3q7avhy0-8_{Z`S`AKE+AI`tmlY4jMdo`Z_bbc|v zmS-yqmgUR(Wp{bnCzPL*-^k|QrE$JL$?Jbv=&vg%c|%utFu$6H z=@&mv*9gPa>5F+%xlmcf&#LyHG*dh0b$-^_y>m^oNb_Z#J6HXBd8RyEekV3Mt9(_z zA-GkUSO%0k^Y`<%Ymu?OZ)d;jKYqaW6GoEN>_8~^qJ!6e#Z z&(P>MmaRcXeXOH_&JDr^=qJbhZB$1|_F3E5Ls_n5tu;@WQTj50W&q@99(BKjY~6=2 z0xW9wr8ntWTXfE{Y+WY2H{(C-zrD8T0nWjrAFlt1(YX@!QpWitJ}F`R#|R+y#@T0V zj>q}QOL<1YAa)x~9bIOmD zPy37C6Z+GnxA@617@*BOoYyJAfdb#GI z=H$+t{eIVZw)sLmclm>??+=Bi_sH^3R!)Ahp4ruuW2-LCo$HzvUr(azaajScx`%qNZG`D#cbE)i}Ts}d-?eM zjr>LBF}BMSa=(0+Sm85io3yMvhMN@`F^<5K1^80@o?*;}uovLBACo_|_fI_L_}_gO z_>b&A{mDM~9P~$T+rRTsG>e%(XqT-%n&z$E__qccx1icO+8gJ_dT4T3EY7fw+DC}% zpp$SzYXfK9HOq{?au0@m$5Mkov$T5$kKMf;o)slvdbW{uYv-dU+di;&;c-7S#~K0Z zsl&_?%z)0o0(=wqV`(Dy+udJ=RtnFh(B09QBoY%6Gebkbd#wEBf`2Dt#$U$oJ^?fSdZu_2A~r zW|SD<+|EgzwL7Obb2eWTe=Jzfu9m*3(T6{)O%JJMca>Ypb>&*|!S&@PEjMcYa?MWo zh4O{xi64#^LwuopR{qRK%bsPMvWnh2`eME@pO!zCH`2V~+r^br_?03(+pvvdf|xz* z5kyA;9vj5}cLv7M7J0tN{<**0bGHA1{&*LQ^~KqNuq>bw{V{5T4{Sw@Q)?Ug<#Md~ zKX?N)2R~Tzm^Emo;4IEF`d!jxXI<3Cod^1je{-d!OnX=VBY$}r=tP(6H%f?&i!HQZSS#5XrF!kQThh=>>Vxa@2Cj+&(&7x zGTHo7^XwXZO7?ZS z(0`B6|3@M0L2pj2HT=eslCYrE^L%u|6YzLhtH2P?@%kv`o<( z0oPM>y<7EC^+p;je_}4>3q}a<<7C0t76Ys${4)b+PR#(Ctf%~s(_6y7tT%|CRwX@A zJS1P8_bWp*uV`9xWizsKVCS69>77kF7byz(j@X0W4x*i}=y{>1#8i(eHhEO-drmFv z=w9a+M=T&uVP37xt9zbJ_XXD_-RY}hu?OYdT&DQpnDQ~P!I<*0GMpdG^W^jOwviXA z@9PPp^)+q~qX6wFLCm6}4~&0$ik_tZjC{5{`j7PwZ_oVBHb>D0+X|x}{lfA)8n7qH zaqAH%w{=19yw^I%Ip~}BM=jpVep@74uRwmQpR@YAfrnP1u5;Q-ZmjDJ-D~07}-8E18jh{p>J4wkM+kM{DNgPLvJ@d z758GbS9(;xqj`5;OL6g)vW-Q0Kc|*Cy33rhn*D_EO4j{lJ&*IkjOF^yre7t$Cd2i>q&V`E159>Uw=Y8H^UQ_-Z+qt2z zkM*Cd&&`#Kzq`6rzXx)n*oAk0wD@0J*+ZTIo=y1Qv>c%^!`Jn!(4N(Pnltc_-Y9Z! zI#RzQuwwmeye{`ldQ=6;mU6ebVqw52_tkyrT*8W+1^|-j;1zo9M zm+R)$>_VP79-@DqJX)kX|7dY}A!H(%jXZC+ju+)YT%!nRFTHEvj=Xn%Lpg$B;+xl&~Fy;jA`CK>iK}o0l%&%t1kO|)rt6N&`31b}&Fy<*^tOo;7 z+TMYC&3$Dr&1Vz&;~~=bi_Xv+`}ocy4eweKtVw8^;4)k&H= zzejpNV`q=%spTYP>s~BbHojli&SxPWAOCf|f$s$&`3d3V&qDW8Le10qnwu&UT=l(K)Z`r;&xT^ZsIzd4xMg|FQp*l>=NwbAc973H}ap%jOWjiM~^XUx(Td2NHm&;z# zec`XbRgdWYUeJBKs+L!(y`LCnc5&cb@(SkZGQwan!lGLEEfT+xnBO9pP46POU1J>Y zE3@g1BTMF=q{-=FanY{IV~`mH^&ST#4)7=d-WMETywjI08?=_+`5U%9-eV0wuh1a0 z1>~b6f#=Xcw8z$`eZ~*{^I{9bdg!HVLPvvLT)VY4@E_NVz2OVbTHmd8wtY5#&b&7m zAp9#!(0zdi=Ujnj?NA0>v(P6Yd9$$hkl({fU>S^Z$Mo)8Wn(ek*~pVr*n zXJ(-PIi2-_@c)vKgAYKSpd;%DY8DYvKT!X;p0D|A^OQ#9kLrB8^TEzMdd~l6%~g8W z&pq`w%Nlu^^mY0E8)(^3BkcQDXXuTd%cL#SS5waCcEH`}E6yhgT2id4N;$gXM+#JI!rkfXDT8;Q{giF6w-~ zGr04mrfH6?Hx-tXq5!fLkIJjRU;op)p1|Y!e4@*6+~@OJ@OSLv=*^^JhK_h)?yg@j zWQLD0uh`o{@?KhAqy z$`-)558pCyX)OblW(F9+Yb~PL7xty~5v-@2@8hj)V%taK+h>I)n@MIZ-0iOk$jrulYz!6KH-Y_2!0btY75C7&4F+k`IHa!+1eDKdF z?BH=H$NiKUtsK=>!pLpa+UeJ6b7ittD_@rv`>6CB8~%#0Ol16oQ1Gzw_n_ht9mPk+ z`hyHCJ`BL}tk$2`Kc6ouI(S7K(2;*UO5=39)u+kl|Ig;JW@}~PF6o@vd0*!hJ(;(M z-tv1z^ZDkR_0r|8^pxHLylEHxJ5@(&X3-|;$0_Bd^7_iR|1M9_DB`Pn253xo^q>46 z_J54H<#~-fETkF3N6Y^|L!)trSD#S~u!A_{06lZ?$Fxd0zCN*eT_X)=>Ak>rHmi3| z)_CLZG~!rm%<+x-8}%l#oqp+ImK#AK%cE29M_d%&(-6r8&}%st+q8Fh+Kt(H6g5lzy=F$F@gr z(W7nVhU4%#dtrUYbXbm7Q;baO3)z6M{(<^7wzRHVmjeB0r|o~#6!5RDdQ}jQI7N@GH}1d`FvB-3}9@B z{YQJS^VoN+J@(!E>=pQ}G-icS%1mvbC+jX%p8xo?RQ{3PuJdVSy6+R-jbf1ej4a~g z((*qE0r%|3b5^7~xjU&pD>qNx$)ZM7l!0J9CG3RR(WJIyH^c4E+c4OB#86InPrz)+qm@ zdbbzv{#aAq{|2)EtJOV1+;q(>dNxl~{{Q9b61`3ITFpPaSUj+kW)B~uJizg}r~X_s zy0b{<97P)I>&h=R2X=1jJk_~D-oP8p!OffEfc0g|A62H3Sqfw-!T*E0?|U?Iai``A z+^S~>Ztji@{8sBMx0O3|jLhc4x?gyJEa`x5=3p-Q1~2NY?`ek78~O0u>|M?rYc363bEcyKWNMVV z2PkI-iJGhd))Ghe!3Xy9?cMun6Wb1JnP>j8zO?4mykGNNU)OKyKA%1&gzciJ^|wOz zQ$j8F{8`y{a^hsfz&|z+4*>7@0c~OZY#|@+q67=Zne|y;)##=eA~Z{i?_u&4!9QCU(Bpd8G49=hu4b;C{^xo?d@i zo<))Oj?JImT^PB%TPVLxV}m!!qBA~t-Hhe>?l|pkom7WQ(G%P#I!S)(i zm<#9~*36)m>CCb-uNvzi7~8*B z*ndO_ctYO)9J0$h)L*Y}*3AC*H|I7_H_LT)(ir@wI#WAyb}m!~aJ^=7bGY90r&)iU zPc--IY2PK%5t{Y0oidRV((CEEyqiYXri+0dQrv%LIkfDrH-%g&R#{p;#agocla&Kp zRctU@eXZv2eJ@YfxZ50>JGiB0@?VxNOb2Kz{#%LzuBt9i8Pj>i68*ZaT*3h9s3 zi#8u^o@w^(T+{he=gQ6}I}3NtY$i0<>Rn+gE64Y`*zZwY{XyN`U0w7W``6CE|Fs&8 zyt-T^xm~8&L(F%&Qrp*ddEf!HnOPDV>`;b)F~b)$=lKU^JH3Bw@BC2ORqq`+Mf|&p zq5#kO58F?VV(&pZea&`odhDf_@ea@>>xl7dJzMatclKJl&>rvOsX)p{)E@q)^%gcT z`W-p6oInjxSLk+VKV{KyTQrW&8ZiK9wOoAnNQnM0R`HRL3w!wXUZmrHW4SHwexaoC zPcN~C2N?4871-m*kZ@T7vjs_U%b5`H;{LKW8`gw|HOUJ6Q|Wc-3%Bmcj&P@Y?!C%?r4pSzo!xQ}pD~ zPMzVME1RA5w!rVzyXy+`Df9W1`0Re&`EBz0Zx9Pzug@E`+@!T@H80}I@@rxLA}uh$ zua))tmAa``h-+ z$871W-&}=lmUlk`AT{4BGBg7i{~@=Kh4<1Ily7?}Wba;z`9SWCV0C)SJRj%B9`=KG zTLyF^{Cit^#`ip*9|quwH27eYJkIs1z4e^?o7L{=_nO&vLtaUUx=J`_K0Y&BnAh^0 z?DwPE_eXiXx6X)nZ`L<@j|Y6C_TJG&Kly;iWb4R*y;26q+h3*Luzqj7SN%C*=(_p^ z&Ac0@x9@G-Y}vf8IixwGxkGXHi_Oi-`)$;W)Uv&De+zf+ZEmgCEm!GXAG>Pg?yl-b z>D+vv&_kww8I948)X4jry6Q=4?WtmgMZ5T)Ec`S7XS9x;u4fIl&Zo-jpRD=${qnB) zM9tMbJP*hp&@YFcq~8wPKM$!7Xy)y_+I&fG7QV4QN&Iwj{Xo4*b8WL!XN%6}Vy5Ml z2{>CVd%ixeKBS(i$YKF`@UMyk{-8U)UCV81#cf*P!5iiM|3>!zSLK)GV&Na`U!t{N zbk{Ez3*0IWcv_swjL1g+seWA2{;Zxix+t%ff11`vcj(VAjj1z-= zux;yZ^gHtx_-BlnG3RCE^>3-Uad%X!rnB`N{!$(#6g&8B{^9if#)!Ws3)(7dCo1-<#e{p?{IN(}Y z+AH;cOZ}LB(RUM}@2Aa=ly4i?yiz}2&!%kLSDLMx-Rc*WyZ?#ubziC0PaEs~U4IbD z`GsGWWyAmj>id*Q`(!r*FmD(C>nZ|RQ*QtrsdDP?rFZI>|oVg zUw^;;jK(as&=raB#)RkWXyqCp8my!De^;F6WxE zvFGcZAK%y0IWLMGo-e2A_dAYJw(i>MlJq36eQSRV9@&QI^Oz@TFHO&q9x#E!xbo|zC+rC95aX5@g-Sv z<_Fv>2`~;wUhpQ#=GR^HUn$#urPeML@-Gn&{8DQ?1$Di~03H$tys792AK+E_OV^Zd zX=L!RykCA%BZKp#i!^6>6TM4-H?R@~IHQ9ULO>kGuXt-g;ftx^8> zc1P1Er;F1{@{8wIHvJgs=RJz0nW4jza4!hcx67l&%G=U|eKWw-@^gQqy*G#%ZWlw` z*R}kN622__C!Ie)ar$^+YSVga&FtSu$YNIhT&k7l>~B!yd#^GKgXAAvS1;eJ*1W1W zeeb78;XR5K4%IndFWYPG&nFfC&zqLZYbyINx@-A+^rYVkT9(%g{G0UVkbZi~Z*QS# zjIOnwxMg**&O%~_J<8AY%N`$BcKwcYpdL-yL$SgI^2CoUgEgyYi*#GHUiyFBoq60% zW!wJu8h1*A$`mRY%2=5*L_|WA1`?&Hq=`zCP*ItZ%=0|YWS&CiF(hOjlSqS9O8vga zK3(tD`}_NSo}S10xbJ(fz4qE`UF$rKbG*)LkWamTlsTG>-mk#tigVU7*Z~K_7g%j@ zM>Gm%x-mL|-7+lf!d1OP_Yh-%hI~&RqKvYSen6jF+*A3Ey|Cq4Fuok*YlPOOJc8vZ zPrz7UA+sSD^Uik0_Y9+@imG$4!EWYBz7Z4%KJ)MKcMuW$D>0GWXJza(Jy~JiSip3= zalZDO?Pjf;(+8&Qprjkk@BjhLa^M#V-*FG?9M$?-3Pi$2|Sp(fkuY_EF?fI>{qTt(oxa zQ}L_MkmVIjA6y?44rhlsqb$+l@C9mjN}%CO!4*MxdvJyS8=1Q9iH2Smzay~(>HQ*j z;AOzx?VR)K@KfgH&R|Z`HBU!fOxk^gM)LO2oLxgG46;M_O!|DJG4SRAW=D3QNR*!@GX`&))huw)ujxA02% zYS;qHr3yKR%ZQNt&OLvF7ob{*!zpiI2XO#p0yI|23u@HXFoKE($Qzgk&Zjbaa6V(Y zjdA;t2#eyZXZZYT);wtt#AGgR^%vl~93oa(pB`g+meTxY_1lxT_^xq+X@B{Disv~g zGTrWQYp<;K&!ki`WVlVssqB2`Gq_ll$*9XY8)G;Wb_%+^~NuT`u~l8vkA@WHy=MQaw4BU-MhoB zXD#GwZ*jWQv`ws}-~J4*tUrTp`whY440N)h^_s8y3xDlGW);O=fV|3LU6Ime(r1cq zi4U}`Lb|si!>W1Nha@ZVr}}@z{sK^_y8I$U;(!f|r!s@e4lHC8CX>CK1Pjb(Jh$?>?^CsrzjCHcF!5W=BR=H6 z>BoLIx*pA8?(ruN^)u$ zgA46ct4%ZQCMk6`f%e#09M>4`jf3>Pl5azX{{C-c0H?9Vqc+aESL0P@0~wYb187w3 zNR5of)hsj{TgS*&(_va)`wZ#E2=e#D60YjkV#JoyvkD(!UDc%08m^CruwNi$_YYu3 zUvu(l&r?TNK6s5e?6X1tH|QT_`i>%xtMOCkvv&?Z6|<5TD{FRj>M!}Wjsau=C=;*+ zsaFK>IJJJN@;i%1ekmF{EB`OXzC8&;tU%uTAlprtms>cv4okNR8T_llRbig!d;0yA zgDJFjXIAWwUcm@__tD`0%fxo?BCbhu{DsmIAg?y~tIClx0zbGNfB9*@93FJV@a`1; zOMuF$bndC^FY_jN7yHxvdf@Le?E8vfShYc)1V{bVp66wun}NqYCi&iiu+J?i{Fg)9 zuO~8jX|xi}U!U(Q!8hmQm^}0uQ=jqM*>@YC$O+SU;c4z#`d_sWstQz1;8wgMWlB^b zplu_Yo@#6ZEv-vPDX9MpyA&TZ2r8HT*JRhLKtO8f{EB;s9&uM-AWj&@X*QZr1)V2P0Dom!5=O6Cfh}C=;-(Ffv_FGb^t^kdf7SGBPi=75V%vVL^QCH^7y&e>Sx0G3L(K@hf_ru>TX@ zl|&{Fp#SrMxT0A9)#waK#y{h43M!zR)&HkBI=MURc@*{+(WR>< z@Acq{N?~8r#A;V|@C4RJCC+~&@vv9JFUTET%-$lYttdRvkX+@~aB0{EeV-S;$jF^! zq=GjyY^Ie)3#U8c>vWs>;U=d5~8TccK+U!(*GOyEsorRrKFnSHH@pe zhYY2Y!a#nGg=yDg1^h^j&}kTS8&=nF?4-NMVf6H`XC1@B^f7*exzB~pGr<4W{uT!m zFIW|j#f=^EgkiG*Oj{c-7$&9dvm;+7b%u5qEi@#X7T0H722k=VS$5}l+~Ux$PuO=l zbXXQ#pZV`$0Nu6lpT@4^Ktrc~YE(5!LbINU#_Yn)o{H^pPesh3PdZ;;pR~N6{kABN zeTRAf+M^nuH2$?VhdNAJzj<|>x|!PkR}(8(ZDTFju-$&y;8h~d`xbd! zg!MU!Z2}A+^e+M9s$etiC0kY%ZWjBqXn?YR@&R@s|LWoSM=GAB{I=!?pM_VB!z!CN z(-ds~H^?xS4z8xd?g{_2e>FXGvJ-799i0x}0@?XNR93v|)pX(h(~G<}nXy}jSx5~y zM^4xK`$_PB+WUx#hLvOv zYoW>Of@gIHx+EMz++ZO1{~*+T``)UOt*%!(&)DAx)-~TZjb2*U^&1pD;JtIEL zz-QH=G;hitxE8j$5^LjkY#!AG?gibJ9~A>g|I7Qg3L(ATh7YudZ72H{qxpyM1bU(C z2QpXb6UOx`{3p$o`Udt`f`#xA`HI59cGf~Z<~>dSkO9nJD$R3t*1!4wxl^c@yqNuO zQfG*kED3eeJJM4ok0!Bt&yZ@;<~(}aXS&KzZ)Y&=X8Ov`C>b=puJ@cCOdoBZcJgkF z@ZS;zu+g(Iv2k^kK4vS~z3Uyb$jp{^qw2=Qm{Z3(o60!VUjJR|8xQCy%ieRnVPzMX zHjwA9D1Ux_>o4`1RF4U*#Z`vBxt-~M(Ga`8t^XGmaaW>m6T$cz^o}xj-+AQ*7!RX)`~LFgR>$C%tO{7$ts_p`*Xan(0CIQZM@!o zJFYJibNUKUhg+99!_8oTsvvMjP#I5tsyD`a!fz22B0FCX{O6?e$L)0fIp(dV>+c5t zCGM{j=zk19{%*XCn>o{#;7S1~51=UT*P%*z794OJS;+0&=T@-& z%lUdJ%WY->`P#B#9jIT3sw9*LRQ6BS(t19nia?74%107Mszyq2Le&qh!@e5HSodI5 zK86Q|!;g#Mh~qHkkK{8p!@d)#4tzJbpLpOHD@bKPD>4G|1H}1af6ERE*B1Y` zzpPr&WG^jqrZXJ+owYC9Uz){m>y9?bG_>13XG2IfFT}su42FKOjlFA(qwkVryH|GX ze}fHR+-LVA%xc^(WB_ACy<;O_@4Jz+eHU`4;a+Fek#^jLQ2_CW#eRf;^ZoRVst9*E zexcrGk;@Vg^7a2_?Ec1dzze)iUKToU=L}vz<0$$x8=bQsdsFrF>#<0O;h*cNzKYqMUqAl33{rS-o=qQBzZ<0;EEfv2y&SeZbuI{m4e?mmwBoNrl# zbPvYccoECH5b}JCxw{+uoql1YeNXr>YjMp0yQR>+dHHPnpdTxDEM_(C-HCPHUVk*v zF;x*4MTQvP3^6Jy6a0s!; z@-Rl@^Z3{LK&SDqpYxk~Yp8ze=yioXeh-R~1JwFqmH3WNSSfG}uaCll)3DArF+x9M zovW9DDtK)+&!yb!<$Pa^t@8(Z`xHm*ge6rIsab)l2NoCDSeb{U8Y$IM?!dE}!nO6F zg0T~I488e#BHy-|QTvW3a*%PJ%~Kl9^LReECHRsR3BL87_fAtId>_x$dH$;MNL&9V zA?7O@`c0ebXIjEcBbj6hox;Df6AY3hZX^xX9c z=lNR~FRfQAf8YAdO7~YLi#(G#y%W6htgc&(T;B-fYC2NAI)(ldXr%SL9*PWhM;rCT z2AG8I--bR@EdOUD{!f0Z`d=2V^qS;b%%EAWCpqFA7`qtnI6JyEGd4g1&3P0otV7Bd zAjebCZ#~gv&oX28CRW@&?60Sb=v+SmGfWL1q~`Ak^|dwe0SfWi7Qt&^^AqOjUg>3J z-Hx?b-O5!y?1UcC-Z!fd~jCslnk%>rOM)l10R`5k^Z$!OZV2=RcTBb(9cs*%{6LbkNK z=20GlC**DQ4LXwx?Enj?gYpCzU?WdO9ToOrHGRUK(XjQqWJ@mPUW@zVsSlh^Ra6P2 zK>of}d6`d``#cj!h9seqHPh5i|C&82+}h^QZ_?@TYFf?EZZc}`n7?ahl$Mf|Iz4A+ zFf2H^cHiy3T~}lB|DSCE*r*x5YD_e{+In_6PSv=$yVWSzxZBgv=-6?#H_aI~zei8c zM$=eTY_8YoclFd2>9=*_a`U%3N}BEOR;N{ONv%a!l?s}Ti95Y7yryLOtD$QYb5_)O z4U($4{0I2U(Eky7=wr11WDs`@`M!*3m+M~Pqcb)0Mfy$gfGy`W|0(pI>e(}-;{CFT zuci;^pXjhXoOeD}#yI#!eR4m5d7cjL4)THj{r(bvJgWw5_FDx{5dUi&<&G9m0dN0*3*x;up^ES&?EHtY= zgPUIsDg@uKcFGa2E8NFO7^vP@Mj^bLn}RHD}+arzbl=PhHHf43OAB(S2J}Qkg&3 zVg44---b20nxF|g`aYTdk3s)tyv~C{k`n&Mz zAA|vF^T|7iBpky7c$3wHH?um}67LHt3<_gayvrGmhWVl@QPyZE{5KQUY8$kn4@y_= zWGIIUEyUD{y{lPIy z82k76j<)>li4QOuZl29E*~fLun~;q#g6|%Ib4bk5 zHE^F77Hs=ZWdMzb?o#8Y(Y3Xflrzyj$F9Z_e`f&U+(yKWx1HnfN16WDnT@Tj|FfQ_ zMF4ESRsC2bP;4N3-&U%&b+`+$N>>fm=sJ;j)5}GLZ{DCK5;PudJPMn33bwzhPrpY8 z%|JW%L<@Dp&RoFWD?wI$Jn43zp)Iktd(gDm(Q@A*#kp;OOY}-BPs2@4UZz=sB z!vL4y3ttQh{(@N!fRuT#O@Dlf_d!q#bpNBQ6;eL9p4{I~uBg5Ly#F3HNw46U@KSnk z6pGeUTVI*8v)+(XctFxBc{Ir~X*2W- zr$VD?DAP~YEl4tM@1zlKdrWib^V)P~Sq7Ff)UhVv#stP4#skjF)#vr8|4jV<9m9@Y ztzt?&mNfD<+G$klwMND?y^W6>KmFE`_S!ygd0h7dg?eRnbY{hO?8tN{2*m^QqV;WE zSzA*|E7aCZbV>Z2_z>@Q0~Nj<&@2;>pphv_ng{NWVf*hxo<|~gvOO0fq2h7z~pz3`oKlmKzR|Vlpm}Laa z(viNGFQK{W5&Nqc+=w6hoxjc>MBj`1STSdWpASo-cbJ73;P>R*YGJ>3rFQpqZ#%jF zecoArIoiJ{w#XCVGuQ`Ju}4a9MK_~G55Xw|$p2m974mXZ<6DfleQ)qpEoeaP-+u2U zDuYL3JygJEXo}a+6b6t5Pz!rNS%yQ{(ieMQCwhAm{6TmLjo^>$bOQS{dN(>uu5lWx zdOT0evIYNN<}P|Mf(t?BX1MPN<0lRMH9T;ZyEp7#bUy!~b%c}?GzQprn)R9X7ENBvy0j>t_&}&O88WFfe4DhIjqh}njx$*{{klZ6Zl)XVCw^rI0}gf8W5H9(xzXQO5edEuBiM$mJz z?5@5|ube%gSLOrQ(>2}~{#E6#2!O3Asal_pSebV+`L7@SM%ds}z`^KLZhs(>^(mOz zk8in*z0x*c2Ia#|;WKpL&(5s(OXELSd3$E`Ty#~mFnk?bwIFi+6S_#&|9U>9n&6Gd z^&zBM7O<*^eqmFepp$4t)xoXBZXJVF(UsWNOZeKgf-+eCkt%PA{Jrl#>X-7f` z{M%R?@Oa{scO&}sMeLP4VNKTk`kYFKPX5iH$mcVS!G05R1NFF@YD6_Elee1|oTEQr zF*}B*y}NDfX-;(71%)gxbq|D@vrRX zZ@B-8erOdWb@;PPzz^trp;!IU_Hy+1++#+rt{hkK8Z(`j({b$5s0b?%7m7|{xfBog zaQ>dKabKR)5YRpyu2JM*H>@Mue+bMljOQpjt`l_}z| z{nsIxhF!^$&}YCb&>q_i{dQK zoN?&#i?Eq%vgY2H_}h3F-8kFEPqHT789H)ZOAP!qtmVS^bopp9T$I8Z*@ zI{qlDb%LXI6DMDXg`kQb>HoK>H>gkSIycq&hy11fNWA_h{X3{@4gFKzw}j6t`4jwy zLHR;_j=^~9U*RDv@-Aat@h1L@*zbkWnNQL~2j=mv7RU&gzN&VXO| zlfnPT^d?&zEsx4Z&BMXW6aJcYj4#7xxs|9zEoLo!$cSy^o_~PpRH>_#57Z?s_+~pCrZTJAg7|s4z2ZMQ*6XAef!9Bq?zo`GJw}o{Lil(GN`rlQF zNQX$;Bx8ntNtn375G`BP>1e07O-t#0dq*gDT;V>YvlzN7#KHTIE+c-$(m|V>cqkkH!}c>u#Lg)3N7dPfBM?*Z2wV zvh(HF$@Z|dKEwyMU-(!3kKtc&fV-&>xq{VkUZj)XOJHys(lQdM>Ce^=DVmEuI*e9Y zhL8Cu4Id3^W?S3RdnKR8`q=rP0#3tXgT`0E>&@tq5t=j$x`*tYOt*y z7FxS|FHCX-jjvSzzUBWB&MO~bIX1#vct_du4&eX3pa@le$NUwb{{#OyZ2uDIuAjX< zMCn)K<>&S1`-6j4^adJ*cHB>f;0x~t>U!GyAHYwF-@QgR?jFp|*Sy=zX#a2cmUh8c zc)|OrZy;CbeeLfG?u8-pgpX3&^CkMfGx(nYI`6>$SM0AI_fkED|Efgar%+v=(XT*0 z{h;@=zlgZ!GvU`^NxJ=23fl#zuu{gbs`+l_4~PRQQ&Zdvn`RHlzl^y+`Kdq7&Xw5u zU%9bKa>D>u!<6CqS|F{6aunQaPLS*^?}xhlAr@^gLXP z-SH0A!zbXsHzPL?3u+19sQydKL49BL^-XyQBY0;l&$A(w6y^NZ-p<6+!~rBH=^25V z3oI#=G)lhgx6?JIdCZ@62sce-_}1};a$^AD*pAb0lXcm^>GPO`8%p%IMF0&8!h^Fc z>^;W;|2Yg`mdk~s=$>yZl?wz2AWTk#rsX zz#Hx5VV3T7;beM)-w}SH7@=2+{XPBOROXf=?)PChBJ4{HpfWRcg#ROa$6MqPKBrFj z305fW=q>RV2bJ*j^Mp@PKeQ)>|6=I>fHO8s;s0Uk1~f;=^#5dLAzb8__eyvk-GNqv z&fkN)#1__5p*+QZ3J>K~dZNwpxB9>M*OIqf)*3XJH@(A`wBVq|v$V!&MBPjqM zLc|WgCVF7q}9yeiAeGq;b79!4YFuI>^p zSo>^X^d-@b_3(9{6kC4+)5_b}#%K+54_!p=45jTH>pY1B(<^-9N?ggXf~J}@0_tYGMNTw$6|pON9-UG9 z-1(eUp)>wxSOCUe=Cx}abysHNSapx>v-@;+sS&WzaQAEWg2vswcOfs^--d9*xaDus zh<6NNOfOEbT0qtNYJP7;X3SiK?r-H^1^UMk^OKAS{e9U6vFB3|x}X2@-z(99Z*9~q zj+2Fw`I6a^QF1r-|7&s0`098WJ-RbQOVIzd(QO`;uwSG!|1z|{{;vWH8;FE!PK#<{ z_OZ#*wfx`;(7BXs;&ilD4?O3p!PUVLbbKHGHUDwHj(@wKm-R3=gZnqU+FmiQBrA^e z@V5rt_`b}{>&+Mhes!-awg3HsENK6h_{-zN{`{_*(*Gge|7s$O$Na-|&27Tmh9@|7 zI2nNY;IL)z9+Ca;y!ZT~*dQMGZ%p=}5iHP<_{Z@h~%N?qnQ z41=$S@tuqKR{3k|vE&Alt5J<+4_Kf-PgYO2S@5%8%YPpm;Bn$Vl0(D4Rfm~3Ae&N| zf9VM`M`!D;{^Mz ze?9}~I-N)3?#m*9W&@@7=_qlZ5U>B~5it&MoM`yhIkeeRv8SOil?~u*IeSmuoMi#^ ztX%fb_S)S48$o|ta%MBV*Zr*6#uJhKG3bl|DfIW@_b4**ieBwb;Wi(0T<1hx<8y3_ zl3^| z4E`8d{lEN7bm-{DdLO;exAoALlbDe=lo((gypbHKc;r?Pa7l2PAA8TSMp$_&fZE{0 zYxU07L0|tzYM$N!x61!j#w&Ox#Q=>smu3N%Axbv__V~rSjSj&D{E{$L3!)RR_{HeD z@tyY*oKVSsfo|xN$yWT~7b1Jv2KL+ro7}>8JkIt2brR}rk`0SqodNQK>#U&LqsN)8 z7jg*vt0Rc`(Pl~f#^*1FDQ?G;nL>^6Bhf;74G)UHi*qCkCT~s_NoGiniod7&=m8jD z6c)!g#&8MaE8A)_b_Nu7XVR zW$4!)=`hpIk|@hC8LnLx%Wy4ubel=5WZE|EPjiC(q?KNHb zPiFwry3-?mRrK}iT^7$x=LEzD zVh36Nxl_+qN9JRWU#rA-iLvgWV|4e-<|T0k&<}=pNp5>!^7g zC9@|#WxbuEpuTIoBHqE;+YRGG(KAt!3i!@=&C34&f%f_moxd2Jz5rY=M!PTP^;*uP z`gYBA)vOow1lF7v^}1LMSE&B43pQ#gV(n}E!G0TbYi;s=nf!yS<<->7?;WQCzc0DU z1Bq|FmxGqzYB^cAZ|H>k6ji++_?^LjV|@Sl;iu%wKEx9!2imU2OFo3gE*0GA7x&t* zqDNM*6fwk@$lkTgADTdH@el6}RtxG&e)4wedS9ll|55b6dihks%Kwvhw)y+LB3^Z` zv|kE#tQ7R*y4HCM@k&m4`S4Qc6zVT0e;NfviM2K7PG;cA|IW8$NJaU7A*QF*eKNoR z1+W4N!aY}lf7SkIoVD$TZ};+3HN)zS8l>$1JIPc`2?Kfz&5yF+Z}njfq@HZknd18nS_<>>6@|vWCeVLCoqJkJdS+eU-(q7d7J1HVhmu~BFzAX zSE1iDe;WPb1RZDbC1Ku$~7w5n-;+iDmuO&vy-ybbpvT%8jg* zNhXqS$NAzc#QfijSH-8|FIW+KWmG2GMfFcRJmy=#zpB;ufN9zE^TEF{zzXpHIXYkc zuGAU8`U9=m9lt#65jqC)&uq4)bsDGDXL#>l&;a?Ij1ek6!58tc@;|BYD z8t3k{emg!emigy0fUeW-SyydWuAdj8UHCUoKx1fpm*xQ*r7UDiHBR`%|q*>U#UI(y|O_Ahq05zB8owSEr~t8R~;pNW(R{fhYaW*dMEt;C8{ zJ(@cB#q_kDA5DsjV{tA5`5DRk*C6gc6aBxKbuR`-S4N7(zmLW&g|-c_X;q8565C%s zz@iibEJG^Q)5bbo=)9^7T+6=gY#TXhJd*l4eTGU9(cjF1D!V z9m))ar-|S#P3-g<2X)Ccb|9<2g6v=$ucz0Ns$L)54#QXZIy_88Viz=cIgYv(JNhJd z_L)D%o1J(zu`{v9yBxF?C9>ZW{wPkB{ENiyU&1oUOTFEz*Z>W%{u`w1_MF5IpACBW zgXy&WxYq#v|59)bbBV9_zxEE$54|A1|6t}QeUA43mbDOl>XxpgexU-j0FTkZ>}hI( zKf>}h+x&O%UlOaL58u^f|8-BnL_KYFQ z@*^u8J;mAvcOx~D68*P`ppYuen}#tTz%hZLKV2zgN1D|tX?3ViOTJmGl4{AgX+MkY z2`NIp=`mqJ$T1JVoyS#BP{`A*4-=?^qx?U?TptY{P}XRZXA_bu;MR=r!7n9iDFZG! z-x4z)g&wbrPm&MMI}De>D@VLNWB?Z=CVPkdRbc(fa40MPKIq>F{=e}X zbDf#sjFvVf@wSQxi~!%fUYY(|xF(tDXYi4q|Cx?rl`fbY%D|LXqhWGa_1OL?3B z6*<7K{2i>2aFjJfE)Q~06;zUXfM-GA2u5=Uc70ZK|D9MS6+m}DuGHpAYgLeaSpMqj z^E-J+RsZM2b}2_KQaA8_GR(_LCoQ8EtcBEwdaHM$-qB~#jjTPkHy%j_<~w+9IX0BK zg-(PCR&%~I1AGMb#Q+~--ziQwfjsL8KevC6H;gQh@N7P#$(mLFo8&oOFr8waf_b8n zY#lHB8bT%W+A9>>9>as##Lo6LU9RIydL7msVhkmACdVVvl7=KZ`#;kH(3R`H-58kO zcG}xn@48=S{pfCt^E4`A0F9}%wDF~BdZAcH>A8rbHR3u-o5o*z-JH%mXnA7-dsg(>@k8$w`kTD# zE%c|MiLa!x_p0D6zX~<-2dN*N0P<>s{-)#x9%QSDm7WOafZ}p~Jujv!%G<>M8Zj?% zo8KL;zam>r=Gk`lN0YCd#Q!nOR33`;GJ$%4jj+LS{~TUcS*jY_VSO(pHkZJos098i z!%Ok`Za`WuO_|o?Ls3_$)MX8%52C@* zf#{KV9V?K&9Jh|%wvf{(;`N|U zn2>1Fb3du>*b<2z^h8>2b=+ni{jIz2Lmbe+kf{b|&T4fKp$ zj89g8ZSn;yt0NxJtUs;iQ6tt6 zj6HJ_%j6tu0haSFr!Pu>?EeSoN_yO%O3uHAUxu|ptN9J-xYG=_YQQ|Dnr!#^kHHG> zP{A+|R#*uOTn+m)<36V|!oLQJ>MOE%@&DBSeGMxfNsUiNSV=3F=7YCNaW~DWb661W z!vnY|Iu{;*+kOadVbt42??vOI%i>}2<;h>-ys;N$3ul4;Njz1}|C^R#a`hxz$m>3- zT%fXn>LEB51{g=4Vjk-rT;aXOtN`hE)5nrAXOm0ISa#X6$Yyg&G9`<`zoa)U@usCr z&JE=z?K;9mz8o4%p7oBME6o`W3+4gq2&YqZW^MmO55O!QU9D}#hjz6Zu{6%@Zk&Z= z$Ju9$^<1^3SqY}~g>)M+^T_lh#L1@R_0w4Z!o55J{ddpKewSvgxE$Uw?=$}ip8srg zz#ycdJ6jKAd@Nd8ow-%Hznpicpr6Z9cUnBYD)~S%nQR|tM(1A|7mTmN-t5CH{JgA% z`v~jvPLHO*2347pHxSGeL3$_D^`by)V7(bl|wz{}8l(<9`N6%%(eW z3I7vsidTl(n@*fFAJ@=2928CnM_`dOrGn=+qJRa_sojIF{sUg;#Cxn={;J=ePQI5B zH-8LoqZbuvSsa#YPAAFFRo^Iu{e z&dg*dGr$g)`xpDadnbtq?4?HV2Ra2_g?(MvzYUIfoLuHK?kFR+4PD4!)^C|XbPLy% z30vt;<^=qV=khJvkBm!=}f=Fh3PlLh0Y{A z$O3kn-{OS&h6^`Ck`VOIvH*0CX)DDTOZVnB;oJV!QN{r2)l_wdjvws4b-czR3;T_Q z-RNuNEmo7Z&h&H)_m<}~HZaudr?{dJvGdc3&%B|29i&5=LOo@Brtsef9lQv=e*~?) z4XK%uIwB*H^j*=GxK=Vxa&%la&P3#|Ok5(4;(6%&qO68h1Q}ex+T2lm5P!5}^f}0@ zitOe9S;}pxr=L23ZpHRLfOb1a{wp_yxypj$+C5XR2NtE$o&R&=5 zzjj#vFQCQM{iAqlCIE4GpDrOp5es+?{g=U7rtmO$%o408dY7bb?*ka{7V>{xm>c*S zk+(A3#WJjtA^v<_M^#_a*54;(Tv;st=!G z9z%bun62R{u>U79fKR!yW^mJ#Fk&^-XNd+3!W!EWznFX|`9yqWlnY;FCRvxc=VO7> zd8*2_D7!KQ-(QxV>VcHwnFv#SOq{Zr--%4XeMpdcd&`!T{+Fyu!21%4h9{t{X50CCd(zaQ01R3zB0~* z=l>JhzIjxf^{y_X?x#=W#rKnmx{FGb)~tRx3XNL{-IgCKKr2?up4iP#t@)+7@5+Cd zB&t;${O?05+tKHvNRTP;(D`TR^Zh-Mv#+TBT}CzSc;f24{g3?4{=3BI8WRnyj;&oA zzxz4zbuFm5c^4k&OC)<29Xv{6XV*gRe+jao@2ilFR2T1>#M-o8pVkXn!5o0T-nhhT ziR|?Hf0}GTc4ptsAi5U^7vTpy4i~H^D)h7*x!C{6w!#9^xVJNJ4?^xom407Ah-G_vnq07FBJ94urgO8uRSX$9rdpF z>%(Vj=rdZAk>APpUzEbX*7VbAN?Hry5}2_PHNOuLg&YX~eji>OT~DolPHg|RL;@Oe zKQ*xlc7z3@hoi@%7oxe*qj8?(Ysuf^FQb`QRr7h43sMX)87prV*jKJ)0rtRv6x)9U z<7?K?F!oHOmq;9xrGwfSR(f+5rD0oapgm^!J5ST%efHC#TQVuxwVw{v_UeD*+&IB> zzo8(_1=4qtey1JNdNPd+L%*TvpM!tnE4yyHHoHUH?<}FebAYjf**lIyZA3Ma?itwo zHnw^i^3vRM68i1=n9nc#EBYs{kVjx~K-2zZ6a5l(sC&uCY|xp=g*teuHeC7sL0F8N z@bxv*N9%5>hun&Q*)vhuIAgMM@>g=q*T!d~6U;pukHpU^Ws0wX+w%-Fpp@d3UEd9PAQlO;HfR$UL`=d#Aw zM6CW{;C=wwvOE6shy3j3cO@Ip2Glq5A3*y*1dbkt1)jh=7{vP(sKWc!D+eZvW6|sc zNAfZXVfUA({$720OQo#sFZiaZ^a^|#bXN2q1AjLWt=xe3Q36aqMfE{1JfAFN4SF)? zz9pVR)^HmL`56!61@C(17(C_YWqx9jU^kp}8+A$DL3hadpwsC;+Me!-uTWR@CKbj5 z5@QmR>7=?Kv5bz2M_4)ec4`==df#|?;jv-VYqXb7~T` zXvsCKXU=aeShXjsoY#vkisn#DthnU!L4g68hHpSoD^)nt>Hqr<7O#5l{YE4(8@@&{SfC6Mz?pT1!UqW{HM|9G%} zC*DeCRs^XH=X7J=fy8Jq|8Sxfd9*wEe>ZC;)=xZ!N8OxEV+**ZH8ZSdCJrVtV<&Xr z9B1jR+y+k|2NC#T@U40yY85o0KV*Cgkwtkf>_A1;5oY~$X4c=OaWbCD-2a{Q{}@76 zV?%h9SYZC>PBMaxvBieci(y`zKY2y+{`ijQk#IZwK7lx(p7c!E;8ULKD(-9=mfy#q zUt4$n>dpO5CN_9qFos&D)6`ZJI*)Q`7|Q@C0wDa`CKfOaE(^e9)T{&-F_5%NPW9Sh z+2q^yruRD>o8;?gi+4%V^$Euth6#r&y>cv&^B;nLXYZ%&6?f-m&!q3f_S*>Ar|dp; zM|M{>4q^Z|hQ=%!5gP;J0NM3=CVEn0X6x>0RRD&6@q#_C>#_YeB?hy;O%0;HQ_%zJ zv#F}k?(o1UEJj8Bzd%P!1^u!Mj|J_*r=nNl0?CTR{hP;^#jB(Cc>D*5KD|a}yet*$ zS;5zBSjqe7$hn02!1`DK-$zfAiSEao^=Hvijj_D5Ak*r7eR=Bm%%ESh-o8ODo8#$k zCwkWjlsCk(znNHCf=b*!y(AsEZy>5)9-Kdh<^Lue(B5y0&EJGveQl1dN(Jlvyfc6p zK_3_)2Q!3gVmn+#4}-C=*%mCBlPNnO2b#YWNWK}px}RSE%e`gj>5SmNagY%!<)&~W zHOE!qB8|*wJflB?JMm!}@?K^>(LKl$ywA+xI$k|5ft~UwQS+avO^m4rD#d)_KFp-K zlT~+%vz1PiO;o~;)>Z{Bs76oKYA{117^hESapGhmH@?6iB7`?^?Ms+-`2bnZQN-uB zVkP|w0|Y7j--n0a4V?cNR*NP^nW(yW4)1Fa-c|;zfb7h*&QB(=FpThE^gPdHP_#X& z%FLiF%*nbqj-%4yD$c5IEs6#z9v~lJ1>ZA?*nbc1NgW)!!2ta@W-_vnKX{xq6qg_; zvKEDS!@nfe>3>O^^orrt=^-8M_L>YE&fR=KV*ytwV4pTgHwib(-cX&!&xQDR$S}V6 zJ3jsy7JxC5VOv-iQcZIkqosMx_B&m!d$GH7KXoQ!3o(FgW*4O+Cu#hP0fc|c1L!%J z-LKz0ANe{9C{GUkF>DbxUFNSAqlUK=aLM2XZe32z|?5RS}&S~IZt7{z&3J}8-Gn}Jx>1itE9w0_u z&+AO>Z)R%wY6NS^Nv>ukfxlQG@g?wGmJa*Hm{VVZbvJKkE6<+W_^+R(nQKvrE-Q~? z2MkSYV8*37kndp5Kr5=8FDKvm6cNy2cDYCHIPch0oNsQ5 z0W>E|YpbY-qbdTG4IF^}pFrK^DV{>HieFq1e^C@pVOx#_YOOfd;8lM!QMBNrLkn_`1gANhGBp?7(66jtAD;dqQ2aSqo{>WT5Kxeya;`_z3g7>_iwssR^6!smd~Q8He*w& zvz*D-R5JYM=*xRHd_UUA9F-?np|b}uv<^hk+EYVUoH%z*(65y+i}Kg6$l_bX)HYM$ zTam6B$5>@>y4S~h4UAP`hHXV=**rp2tv9yvQSVY}^KJ+8_u=(FfbPEw>{sSL@jEpC zdVddfHf`Boj_BYJqU&{uZ%jao&qeELjjW%D2HIME1;gFg{|m7H+az*&_xLU874#@} z!2+~!9rUo)*n5{T*-QC>^8vn$o5t;P`lJB>q7iyzjywsx)!9GGqq7;d|~0exYXeezN9YGPmz-?=et+Es?Yz65k}g zrbFM)iA#u`KjM8vzpd}R%jp16oG5=e`T*XFpHPB`UmfD_1xLME4+s9#u2Z$Y^B5Vky9OQ@Azw!JkO{uS4P%?-{=nl|HSwrcbHSZ-PGT$0wV? z9_xu7=E7U~173TbO8#DWCEdLD$^C6)hCyp;df%rX!G~PmE@G;}e|dDgkS_e+mik+K zpiSs6mfA}49IDZQw=J`nPO^?rM;M@p|AxPaIRh7y_pC*naV~L-jNt!qVt=z)>7WFD zRZXzpEWRS{A6>^B%eTo%-c3xi9G+EWas;jEg8CyJ*@i?ru-6JPD{EW4kxXr!s2R}? z>kFbDp`&28dEA-S6kf&OeNq;HW(9qO6v#^GMNLx!{~2#MGsA^(Nt(rwEca(pWtGB) zf3pcBYbL=a^OE1c%ePQ%Ok&6CI49{2@jAk>h@I{4h|(*EB}37L-}dih09}o{I>Wv0 z-mcC@;_qyb<^Xq$je%IhM#VV5#?ZLZe2HsPsCHFAW(^qXrSZkj#sK!b^mNqGu>ij3 zjb1KtP9LJ-$C39D@~skNAbZv#6Pm3*Ev3;}>y}8}>~I2oeu^dQCND{TK;-X1EdO#? z?emEXO0Ukwrc{@(fgo)_>SteGe@^91-|%v(0-wM?{gRs1&%%||;Iu$uD-a9RoR?B~ z|Ld85mOWSoeslXfy?*4(Z>6U9XkraKHHzx~et0YW5+l)+hZ4EG2F&bRPJiBz=sySFj%F|!eCfq!XyVZCJPw|?4xL;tOG+mUxr25jBO+{+=Xvr@o&(_2qQ zuq6?U?eq@3lInwwaO9Gw(jq&KYTcuAKR7A70=dI)IZLHrFVX(Otj6^b-tZOP zLGon%6YnHi5;K3A*@+E_pg&BX$_}jRbs%va9MIL9M|@z9x6}LF+e8mQ&o41=PMG;>%bL_K&BPV`wDL+JKw8#<%D3G-@+R}cJ38wAomBI=^^$w z_DDbM{??$s3i$5}vQ($=GnGVL$O|r|x@fxhsyE+j?iU0t&k_A=#*BnlSyN*fm4uDy zpIiamF8jY27wioiFZ(gJL{3ylDLMBCM&(X@YqbMkB&1-;8Di( z08xns%whZz@4pe%);Gk*qH0lpuKo++8WX{>##}mGHU5i<9R3khW5&ac^kCgf9^gf0 z1m{X_pi-MNgqr^=hE|W@5pet(@PCv{&tjh1N8C+E{&(T8LEwKhbr4d?Q zR#)OY0PWExUXZjoFWxY2_NW-bB-7rtzx64HcVXA$+~ME7au$HYkeI`vLrAjk(b2{k zb{_rx@3H{&-G+B#CA)IzYm3*}RU6XnPSOnE?!oR$pR|$DxY=g+X||a80LHNTq#Hvq zfMx#-|IP|f1Scn*Ub`e}dbR0EGZyL5`mn0@RsBalp7=7*z8iV}3}(=pQA5#}d6+x< zZL}$VEZI6)BH4%DUO&kH&ZeP%UxZ030eP>xBt!l6i*<_)VK{R}GET2iV0aP%bW zV&x@5^&NB9TjOWnmzwYLGu+XXTA$uj@qG@4ihAD@7w=6)&f}~)UW4peHP#@l2ujL; zsT!cGZDMR`Q zyJ!m_9vsTDO%o12aq%skXM)x&fo?Z$3@bOp-Ke6q{)_H+W zWCQ3s{+{=Qx54X0Y+*2Q%VXpqza)--mh-%kcmTA>{;(VO@H!&7V_1{e%?%z^K}h50j4)}c17 z!wuyo)uur&M0y$-#wB)MXImRb{Cn_kyp=|y?$7Xjp^svAi|)uaJ3?qTyzBFh@oe18 z%5r>Z-o9Bux?AnH*q<;{n%4UKdbAJ&f|&g-k1K{V0H@lRWAtX|6br@0lHD0 zqSo==SWv8$e9r_!!=6!(xN@>X@|on<)cf8Vy+HrG(b$oy8Xt*YJqsUTHY}j}5;4FC z_FE5H*_t!Zx9#ax_k8p^a|23}uUd~c`vTPfC5WdlBF~m1nCagE`kzIEZe=cB8?avo z)RzPC7Cn>hR6eZ~udCCgMv?PX+=<5wyvWPIJisPY;y+B~Kn~^#ogjzUBGrL&2^|fp z!7pu7_cxL&8&5Rj4?2C_MD8I7Uu3P1JYEMXat?ZBg3`=aT8h2mhr`gkMes?AkUg9S zI=%xV8)3W$=tKIZe~7xjy43YAV$Re|jyOmS;(V_hoydA8nsMcKr0o9^DLpSc|JIZp zAP+$IVA{VZ3}EMV`2N3w`&jSe7;}7{qsBi= z^geZzvr@QMKVQ{ss)E-ld1c29gp;=iMW`3JIT}Yb@Y}J6=awT`F3uR;6si-b>;=v6 zR?Y8n?EgdX{--HlP@O@#q)C(Z7aB-`|<$+j_r&S!k$G^6lxp-1rV@d0!{b_aG( z4*wS-+$?wPG4$*1^vaGg4zzKxzjZ!mE$QxU6m{Rm5js{QX=7^NuP37ZK3d~ddS9E~ zDNeVnX3SW>3)^2aK$P>>9B^g*W}q3>je8rI)Jjpqus!z&&BEG5oU$cfO};{Z?`Cnk zXb8FcIVpA+$`MmQz&s)V^VsIV0O}b!iZi_!6IV$yS!!|y+^5(dkVc@1>_4aik>NBCe7(|rE==k67`6)wM~48zug1WO=q>D zL0&ydlLCrJ4R{tiy7b^kG zq0+A**H#hxU;clwl$S5O3*p5Wed&7rCH*h_iw`UsSQ<;GDR;9I>uf!_$oAAOY{dh3 ziZMMGJb*p#MHN|J>7wXecxx8eRX1Pt`R>Pm&DXX~Ycvc5*ONeXS=g)r>jOMSSEh>i zZtLP%(NMU1EKg?;XXwk3BYA$SVT&Cp)*s3^IR@y)Q=G zTmSVIfMHtKWq0Q8%CK!{waA^afSTFxckG+JZ+z&^U}rOy6T*!%^{!(8V_WTUV{1`b z&F{^Zs`#}iOBP1*;l!E558g??2bCY{2C2Fa^?~Yz)?NwPk74UB2P0Z1YAm^-N@0d5 zW4teZF!?kcCdbB`qhmzw*P<7+3h*?L{VBe}N+QV1`Mne#m0z>Ub|xrE(k(pgnOm4?SBnSPW8+QVW~(W+mPt9)1`3a$#Pv@={>EEPo6A(w_EP zne_6Y>`wfFT4<(wh!M<5G-b82YvHmFf`VkO9wsB$%HP7CI$-Ec7*4qkvEFv<5!wIO zhP#3*=>M?`)Rp(z`ZI#Y%n|&6_}L<=e|}(f@e}@SjLcWeTRa9jMpG47h)n+-WcqIO zYI)aCTQrONSDwuCpCn${107xqyG7o=_{&-P(*N=UWWSgfAWje~Xfp;-9H1tgHad}k zxdEp=x^WQ)^n*vZYLDup4Rrgc6kQVaB$K~{k?qTssh79#Z{69owuhp6TA_I?_+QKn z!usJ);b5`=BbgCgpKeW$##N%4;ToQeI=jk$)0)9zfGxy)7W3Tur8Ghp;(#6D0E(T!MrNsp06&RwO-S1u*hD}GAE;BD*DAs$92Mo`WaYM9e{R_3a zWZW=r@0m8Vzl{^L$1DV$`CrWd4(E0)hGua<`U>4E!@n_reaeouJJKlWUhPgC9|+xs za3SBlZyaNHE!>-Zre~raU$OvH{htf2$$}5pJMk=C@#>pukliuTMy!yRRY z&wA{DF-Xx^FrACc^6F@MD(-({as?Itw?$8r1D_6#W+E-CVF-2cR}UX;JNWc`ct!nY zCV{sRDGrdFjo{2r62E#Q>P0T#YCM4M%x3$6Y}$AJGyYHBJ6QhGo)3Z^)yk9s^V0gI z&g*~E{iZEdRd*X`F;@hiudWtOQv|iurE%~ zy@?^paOd~JfS=QkVT5;vn&9`D6>t}9d?j_&zlUX`JkcjqOl;u!s57f-HhO_zb!ky7 zZ#;K6o9C+DN(=e_DbL5l&bl$$6g?h)g$MU!@+{SW$Eex(1g03sbJ2Q%!+25);5StQ zOyx{k&ABry+7ZbZ%5$DXMN&)ud2b-sDE;hwOE(AD*g#xhQYq<7Ya;z+sJGvSZXw@U zx2DxD{FKSG;YK>rq+4h(BsmMfAx*Ef>>2+PJ-J`o7yKDQYcXgcG zr{5Z<^d^Mc9j5Qd-ZdU@<7V%QNA+yXLsJAm&qWz$r6GzdE z-+_=b%(4507};TRetLg8dSeC_f~p5q4KM&4WyA-#BO1n5Kl+VG+kNB@YZHIJ#vjI7 zw41QP>roeHb#khavv|4H%$TKI91KaPmIOuO2#ci&T_qC_5kH^nZQ$OPQAfO#x`3QS z<#!RGuLJ&D!*GjXv{hW+_rax99p-1IUH71q|EM>W**M3&>xfg<2K@z@6IdRPo$1k;3~%yc=~?)wYhT-X`WQjR+rNzQ8DAfGv_ulb^+7quz}CXr758 z0AdfV6}U8I!_9;D`ydy>{|CeYdcowgumuj&Z{-xvN7m={=e3Gvm|2`zI>tPKwDby# zdgXk5`>nkW4f@NN!W|>IcJI31LWuE)^LHH|xX79z$LT{uoj#%e|4Iu$ICT7!W&*o9 zVcYDT^wsJP9Ybg=+%;>|9Dmv<82{Plb(C!vvVh&a+5L_I6a%m*pq@=On4o>)LFTK~ z;Azi7f<6ZOmg^Y`>eY#FJJ^|oG>k-#oC#hJ%ST1xpW@odnq>Wl)8+4)s5TWd^7mI0 zHP%XYXYr*I)bq!nNi$b}hYvO(OX}{o1eUOzpsI*Q!56oO2g0|h3Lb?gy9rrdA7l%j zq{i$XI{EgdCcbhC^QHKynwfO1oasmDNNLeqz>JP4&1>mbq3Bk0XOG0g^zdlHJ-kj| z&%9IxJmv58ix3fLibfxus%wyq93#0K1Cx zbsIaGh3~HK!h8S!?^b89%@{yGjV)~?#1(e8?kJ74jkkS5BWbyR;|BdLhPDc!JIF7s zpyu~I&_4kyPw4N&&ptfg4S2abks+JwHvz3zJ4{ALqXoo`8nU+3H}v>#7mXlZKL>7D z&aq!pYmxx-n!lHcI+V<*IeZtx0AGW2t?eTXv;gT*)NLekIukqL73QcfX8zg-ksmcB z7rll0omW|db3Ev&3aX_IRVO3u@1lN+mpP3o^h?|8eT$%g^uOgZ0E_j^fu`AN>+djSG>(>C74-@&U5p z{U}eX*r9BQ@jO?}3HlU!qaQY*{Qu5KM=!o(D*U;F8BYg^Pza4Tq`XSuUiM{ve!3nr zVu3URIDgbJfRkv42dDjQzsb7OkM3C0dhV4miXsheHjz7*#no(OT;apG<6jp8utVn z*is&R)&e|f&H7Xa=+122dG-rI|2|}B0s2}jq%^wlZwz43e?gc{oob)aQ z5pC(;_ltL!&fLd*&EkIxwwr^lK1Js5lGMC|B3$z%q6A&ZZ28`=SpSEa;Z%wDX43t) zG@ounCUFVlP=vek(f@P7L<1P3Cw;$eA=dXib0_-{nV&}Azdu+9pa<3bvi#+j$Trb6 z8k@<#HwIJ8->ew(`t5$?C1|r+;X9Zq+z|`lGCG_up(nv#eh}^r^F%xFmrjAsnQ-?o zus?|BHj%qpf#s$?N~%!Ozc{r;aMoY&fu6t`-Wd=!r-Ex&e1EcE@=a=iX22$=c_OOQ zQ00ew0LBBhSV075G<&;(|BlE=H`qa|zn3HnP@T0>@*$JgpV$AwzBbtd@&!;*9{a0G|r!nO4Z&)ymCp@@Vo9RLqRd+Qu!j<9WU*iGT9ob#k zJ?XB}4B%KwD7Wj9SEFlpR*ddb8a{pHZe%oK?nr%Bf7?ju2t&HQS>tVNV7{1MTdhWp z#MQ+9h9}`5t@YUcszb5qt56~yPCGS+GDmiob2G#v1 z=*rQ-Z^T`cphh7#R`)@;u?Jm#Gg7CthjoXJQ7<^mA45lhMXWaTJ=Mx@8@}Y7RzVw>BN-x zFPnWH*xp5M@;559Gw^<<)OIDjd>L_?48$$IgVony`P@v;<_Xbr@x|0|O-w$XY!g2a z)uYZ?Grv@&B{oq9xMg?@pYe=`;O$60R0-5GWdXcSOog?LxIX3ZWC57wH{_c~popOC zP0636FC7y!DK-4N>|okUFex^?NV**_ILUYDG6qRwCXED#B4Y`M57`p`8VkVjnRQ7s zZ0lNtW|!$R4zPWWopgl`@wQJt%_6Y4hmD2f3d6r%IbO7pOVX>jzxfXl!|RW2t9gG~JF_73_zH8q-v(uZY<^be7ftlm`LjWYx_kdd#ZPg6 zGOK?s<~*61qfmz9)t7KBsC$l8J_h=GsWv*2XzdO6Cot1_GyO`w$Af7_)sNZz7P&MJ z#WI${x;z*$fb_q9n*DEaKv_Iy_mm-iSeNc0V~NyOq_^;s{#!w}@Hb}umwP64v8#DLT1{N>n9XSQLqRS218$G{#WyDhB_}6uOlFTy zVX@6kSpbIr(LCJ+JpFY@!eqPxTO;U0EW{x&_n07GaGPJidjVwU0OPX!W%p~dOtU)8 zSxnIIFYnVlPt*7&nWnRx&u=+vy}Iy7lX+p+eNuZ2V-8P-Z9B#gl*Ws_XI${Fhymy- z)0|_v*>t(MN_Z9rXiu7-4DEKMcKt%V)dcB1?Q@J_zwKUaOpIH!U!&@x{`&1W*5&~i z{&VuAUQblVrmYEn=cgh(Hs8A+ujR`hMoQ*@Pig<-0X@5;%*-6kgPfd*--*v)t-nKe zuIb3ZQn(_4yeWcS0BmR;T_I3a5KQI8BFKu|U5-Rb8(qwdxx+-E79d$;k)ToN;jP2~ zo}@R(*=T$CK=3n}v;ow<-i2OK%uK$&{C>-h8G6J7!i=k#S5=T~YweNt6f+c|Pfcmo z@g6`wqYs(A|DwN?`rIez;MojGo{mg^gT^8grh-nL!iwPmB*FtAuRYZY6S4pE;t9Xz4e&<_Hlg1<1$hn?68F;~XiVa0qJp>7o9cslqNY!v$yZ=Y zeF}q4U@RwcHLGFb@6r63&--7wQeIdtUgcnuHtdSqeG!ds`&+a-{~pCzJ40UwO^kyWVlztm;M|21{DrbktCfQ5T!b2$buRuBhk zG%F^SBxW+hx_f^Rt-}vq zjeRf!B%MgDSa}mDQWRbIH=SAtMz{{?)0(!~k-qDY!i(@3cA-zEaqi*xt%Jd0Nn(IG zIqQ{C^WZx=W^_Q}@8AlR(H9cT;}_zceQy{yv>QW+BP@A6ek&}V*Xd2rAp9VB+;7J$ zgi?MnG-pZXCzZwSDM$|BEWXQdY6%yk?elwk6HnnG^a^f*8A=3M{mWTHqypD(mcPX= z%$kv2H}*1}Z?OQI`y;DB*KfMtsv4955dM!RYJ0zVIpC$A>8^HdC_idG_*Cu144&df zeEaXXt4zEn?@NA|JTcoeyHWESGh>B)hi5kvzKE&1d_B4&{vmFioRw^pd@3#%RU@L4 zt^-h{PkrBZVFirAGjJ9_PoAFYMXm@kP%T+EC5g%{%l1$E0cq=B(kRK3{x_UE9Lv%- z^gE62VuN;^y(a`4h9%pQUqee8Ck|)sIEQq7Dvf_T=l^vU(9o}M7P_6C;*c&M#&o@L zfUV|XcO<+!j5`~_RR!ygwK-eBom=0KzH4IzVO=Aw(M{U`?r(kK@x)bhn970AI3F$C zJ!Sig*QX&HT4`<-5~5Y$#v)gB>GGK?ULOA*pNyvx_uoL>Nh>VLxiG|RVg)~uDa!{Y z3WE0=kTJZ)$}yEJ}5>#?i{ZL)juC0 z(FcjsU5)N9&sHL3r<@}y@FZ2OXIS%enNPnTD*r}<^&-Jf^z?3p=kN%bP4y=z2Wu4N zJ};+Q=~JrVzhFjee)@aX@E-GDBR+U__z-q+ey?>3|I*;;x&@0~>TY!P4*$2{t(e~; zW-#lNvO8=+x99H1fA5G<7E`ez+`r_g+ zn%5+5mX}k2_pT%wvyG=a4(6^%N0wDl$GC8EeDagzRmq>C)zCL);HhGnKLuz?6aTuecrn7 zV7@%guTG&B@;C9Rcsk?*6axt84-o)kUXNk|r9Vjqd7-s=o_YrVHBy6Q2=m*ogIy4; ze);_Zwo0E5nlXIVxCm0=KU)i6iDO)re%F$~R~v9#oi#iap)jU{2UAyL`4-*@GC}X? z*uTbnxK>}CJ{v~W(p9oR@7V`ahtD?!8CORG;{o7Tc|YR*s_=ROo$@A#*ScQH*L#x3 zjmhBjPCEUpWqXcF^X=KWbeU*H2g&i^e==I|JFwIwM|V9my&`|=s@VhyAO@iMr>!~t zJzDdsB6h<9zF)S5vQCFG8!t(Z&0eP~*qEepyrb}2vUr^}W4>&USk_;#v^u3_cyKftWDDnWZZ0ByMbMp)CIU;(V9Gj6l!^+HQ} zb@W1~*2H6YR@^Q63)kSx1!ex5$%w0n3s{QzOojfI{K;=2wxes)JCbYdks-$av-Bf; zmKyDC$$Rwr?@sqV_2g3b?ul6QAL8@djt^#UM!pU_OW3cQZ??+RTScR<^+akRfj{O` z!}@8{i=_AiX-0v|I3gu!}AOguM<3oUw#ES zuqd7#&E!g*1=s)^pyUOVttr(1|Jebu6U0M3D}_;OGvn9(K+jhlBMb#upjSRxKCECx zd(PWC81$|7>B!wBfWFC}|4&8%j9sHR*d6{|Ux#fV%Ya}982i%xKJRd*z6KxbG4dXd zfyYmezDmgjKhx-$?UcBHJpekk8#VKv;~9Sd?XSqcDt_+9E>@?n*|2kIc5DBsN!@g7 z`c*cOmAv1e$9L`G2qN|5pTIbuW19+B*hxKl6A+;_J@zEx6k%nGg~}gbZ=fs!_4aCm z6sU#|VDT;wz|ee-O~wy5I&DNmYi!aaF5)@sh4-)2F~hhh<<1BnLHjF%-uTx(?=`Mk z@(rWO09+HFOV^53(Xr9k=+5|LWZMr!{F{N|PT;=`TxcDFH_6)hfGobBMUBbg=|I)b zTgZTs*bQxn?cElQi0=a1Eny37u^H4a_z)z(H^{F9xp5#l!!4Jcnls~qtmd9e3;&-|XdC?(xeTY$^XEZ)sbi3v zBe_S)(|aFZ#tz~YS`SdDSLD^`uZzAHGZX$b`Ui0Z^|(WdUJB#0h;goE<>ssD3_QBr zoO12U?Oj~L{nJ|S%KDN77)=adDU4|moI&-#t_HrF-+!4s&6AdKwdicnTsPPLj{l1Z z2>n97?E)j-UP7@0)uA~yShDSH&sr)7%bKa0$Cd=roWWNv3wCybB zj&cEq=d<`N?B=`D8`I~KesMi&%X^?vlrvk>nzD#(0SM(K{3}K-{LA}iZ@OdXt-(}R zRsmlU{S==;Tz>*Aeq8iad@a6>O2{RxFVYEXUh95IlRt?aKZs5PJ)-mD5y`Kpu6ajm zgCt)Oja*)Mf_$Kd(f^WiZD9aq@P;z9X}R=;WWS_U+>VZ68w(4fkK<_^HIfS1>sT$L z8|UnL1=#>*{n{hno+W@hn9}|&_;2YT{96K8|BL@0OAmp?gxAx-3176$c(; z6E-K|%lMq}E+SWDV>QO&68;^7mF+KUO#HtkSK6BMZ%8y|Id@)lSfh~L1L?$2jaAx@ zEcax&KbL#HcvW^f3_!>q4#tP_I1&Hf3huLd0?7xUERj3-^dx*l7qU9oCD9s)nZ#=qE%uGUxJBP8*Bo#Fe# zcZT=XtF^?pRP*~p;qGV*ezDiMw?klY*8fAmt&7eX}kbPsgbFbnkCe z9GZPcPr3ErUi^I|dPMkF{%mvRnbz~sDs>yk{V$j6qXxXwGH0H`eoN+IBe=mPybM#3 zGX9PyktLr|n|cCT_@1~wt4yfk&s9J2nw#AV^Va<0#`5uN6P{#a%X8)|T1C)g{WqiX z?$bgB z#51ucGFX~k9#~~wG|V?y0g?vVd?#A6Kc&ubJi7cr?%(p{M5?e}%#LA&u)gJPDp#L4 z;74Q%J&AmIf=!R=2(Xmw;zx``>>z%sU^@T%aEB z%MT#@@6YBV>$6u_keAO^s$O|U8#9{keorU}cs5o-@5_LHBg4|e7}4>@Px!R)qhI;Y z;NJ)h8arhB>dbu}Mz=JvuG*eVXpoACAQE(LsLK?3alc^#|Y(Jwjf zr%|a*&gP23nrJ)ODyr{Nb%!c`@8jN1M8+#N^dd~)De(Vha%OsV_AAi;Rq@jnkOd8U77yp-pI0VeMWOGbi_-{%D z&`*Vf;xek$E{xBNYN{((Jf7dF5B}Tbo7Vi2MZA`pz|O35y`*qo^g)aVEM1e%!cR7d z&rK|RRah2njECVh*cbG)L2h)W-;q`?+KXuaQFILHOSbPsRt&!l58xVb@lpI#G#M|3 z*on_ya>|-t_KJNKp$5R20M`FzGh#II{i)kYcYL*DsARY}ekFNk3!l+IxPcnK_ zxL=ErI0?~J;a@&JMPQYIAzy4w?no8xS7jJZCD>VGuC^i8!$)`y2D6R8d)ts)g5$Dv znJNN%(iP;%;;*w)(;57NtF<5JPEW)qq@IE^kZlh!U+zL@Jb;Fn&b8J{YR6ThvvS5S zREyo~&yNB9&I6J^K(QU6LGP6XD4JgaioZpnDWeT z$>tV!(lhqY#rnlZv#(*r8@TVP3R0D+GWZJU|3>JS8q77>|3870l$lqDxhC$}>VIrc zY5xYy%82N>a#yC|!G01cqE)6oC3apT?U!Wn=X51-&V0bXDtoN&_2>#;?Q!mp;_8wI z;?ZK#!cz-o*Z_LxoEaZWUQc(jimK5md}llZ{O<=!+Q8$r;-_L3dy_?9D@o&o%KsOm zDA_NaL~otZWH((MA4)Y)#puVV01CFEWovRZ?ZJLGBtRRkcNu+wejT3z+aFmt9gLns ze#3-hMLdoyrXzFNBtJ%A^pXIQ1NL9GLht)*^%%SZ!oKqUB>~mzs0Z0lpOD8iKmIzo zC;by=`vSUqD3bdn?!y~+=eNTC_vWe^gMD!{*a?z_ z<00JPw~!qdlTCO(T^)W;ZCCelJBm^9ePrKIj!;FQDz(O97pi{aP43rYyJpNlX245q zClUh~5Z%g^gd8BTe%ts)zx{wACqVBt&F@q*B!MJ=Hd&|v{UOHXc$MA@2q?{Vqd>1q zb6@j+cLW4oXkM-N0%m;VzaRfXoMn%GL0Gp8Fd|F-0H2x8M#tz=K5t)(-}U+G7|RJu z6n#gyVvmO9nU5}UC%yJ&{qG2@ey?d^Ai1g!;1!?7Onn6JpSt}HL=OWc@sZmS2k87|Z;Sh8Tke`GK0!y38%|`HjKA|X_}u+N{;{9_^oIq z-GtwdnowOkIbA`8{h*|4Tq}C9&?Kru{u-X&2URJB+R%d(hAQ>O2ZC6K1I1LBjuNu4w^&#<#Ke)FVn7V<1v{ z5_3qkRpXI%ok6j%ZL42;US0r4{Q~QkWDqZC3O{R}%jl-Lq|i~Cq0)1j{lbfRzhr|r zfi+;jyQAbrn2rrPQP2Eo>sddRn6p0b?=Xh`-4a0GY9GF(fPP=U?lbUzp)#CZIG?~; zEGPUek_wg#*5Z2QtMe7>J$KOWHf&n9eO^=MzUVS(Bf&u^2HmoPpF6AiN<+t7iu3vkIW_KY)|H2RamC# zf9iqqgV^M2QUuVxe`Nz4z@HdEJrMXqvVy#_1$t~@xxfL>kHpS-IBx830(OF>BTVH3?6@YbReC59>vnxhL^n#*VYOAcSWvM z!jpLw^#Rwy|8J%fd8@b&{>9g^VqRnop}yd_12_)-ODwCz{)6=|y>EY}(J!x{?EVg5 zzY~b+h!62sRB2vLPSV*(pFQ!rJ_0V~lT&8CVztYt@T-XQmG$3>>(bcE+G@&`m4j*h z1V2zd=XyS`yx{WW_`Swx3)!mOSdBmQ0=fd-k`-A+;EiH|zAoQppJB;83ddI-;Bc6} z{EYAMYg72-{h(i~f;_@Zna=xB@>BFRSqkF#X8ppwJb#t~0sXT3^}eixCc9*S>;Uam zt&pu@;U~n&Z23!rX{LL=OG509sUR%^t^-<1$6HziEEs>r;J+XL0qZ_1AyvN~&R0JC zAQ_Bjqc>ck(Q5qrNMl(0^(@G?k{r<0=+oZJpe#f6j;~dpwuL1&aa`fYLV3Jms_q)j zT@1Zq2lHw)SRBir)`eV5%}>9q9epD1E%s&Au5qj{eH&V4JsM{=96|Ye>h(DXy%?d< z_h7c|iOsLLx;*P%QBP3;d7oS4_?KQ1Kf#EHyeA{f0W={a8#-(8=Kc=$yZc$*T&`7L9zF@@1F-l;V}U<6pX8 z=vNM8U%CKSjXou^Fq%m%(lx>g*HId0F z`uCM9Lb(L_lv%XPi+E$qwAw-wMR$Gc+#-e>QCWVHOWk^rhn zw-&V3FKfW4Hv<+s&tbyPSP zpS#Xd*BZ8fe;sK?VDy)yK>S zdLWzhzwoc_4o|_xYhe3N&Q2{}UF=jWu(DLYY+Bj_KKVJbZZ`Ty9sg9nGZ#(%HQcm- zt`QGym9yi{%t3JgasI#nYy-$TZH%1wDQ5ucOEZsI^(5ZJ=g1`L#++?U7Vt8v=cO-& ze<5A?*K482_}71NYP~N!Ig%z{ddu9i)C!AyW>lMV{042jzEBqRh!17vugBu8$Ch~d?u)ArTLQS{cFfPH^pvI)5{nV4Yfcu#5ur-5uqkD6didBF7; z4RV)~$ME(~Bx`X);hX3Hj#!^$$&_ds*j3jbad}w*dM@8>8_H z#AG&dTru|p{)o)botF>cMda^l?p;k*6Q7%&Odp00#aqeroLJnaSRvbwehgv&^7A~! zXJ+xMldv2f!ULeyVYDvTRQTJksjmDz-N5Vt5W=nDn{Xej@uly*-+L?{8nL%ozBNI1 z81H8NC5vBJ6)rTpHLryP{SO*2_yIKY^$p=TV<~9N&_&cZ5@NLJTmGFAz-TpMbzVBh z-~&`N(C6&9ps{QjW(@1vbe;OI^9(^_ax8K(%{ioNK9_If+l2{r@D*ChbHMRj2 zcTuT&8BFeloJ-2ebI%85`;B8$UEbp4;;YPpab$`-hepBR)FWD5A64-=l6$Ore%byN$bfkwt5-avxM%SL zdUQ6=M!^ybM9Myf2foV8Q3da_=u^$a<;aBzAF>LV*u=hwx`UmC2}Icj z#m^?EuqxqL&ay_boE~>C77kz~k)`wz(<uk(|QTww96c0y= zJj!*`?=;7Mf*d@Q4y^lRk7qlx9>qTr3)sm@qHV~?R5uWH7Sifq-M0)P~NTDidSj&okUoD^!=tuvueoc}}_!i|3TbQd4tt4 z*51GQ$|U@?dH)Uq&8o5~}JQPPg^widliTPI@F^>hOe+i{!{B51bdBT%B7$ZAga6uF3xZCbACgA7gQ;+A7ptw#sc2f048A}zmdL@{k%AU)qNIace7UKNLXctcYY1{7gonH6Gt*1UV^*NXBI7I z*4M@2?2X^7KU+UgT!z*c`a3cYJMc`||H8ktR2ycdHIsT$tVS!p3ASG2yEaozkiY=0 zW~JF@@u3Op%AL2}AFBO=CqR20Nehv5c>v@C_$7M#M!bK&Nls+d`u7XJq^D;xyFQv#c#A0e%6KvBl#ffFxqADEZj(z&b86R_;u{;vScCrU-dsF>tEc(H4H+&h3g;(tosA{<&hTlrSn7g zAo~bZDgK{LTJ8p*Wn2QEC|w zr-;8~>5}Xd zSEfGq!sxg-O3uqO4Hm)y*5%hShuOS0)<##let%K;B>FGp&!ymhELf_Sd>6&h|AlEufx!G- z`>WX*asrKiX9n07Q1@^%d(Yi~|G<8O<`3uz`@NcwQ6gMu&YL3`>-wDcmo(|W#|Nn2 z3WzlREdffBO7H4CB?W8=1Ua$$8Tm?mT#yCfT=iYPHghBWV%Us#NdS+VxxbGO9H2H9 z<-3K~S?ljcX25f3e6Pu;RbPaERpUQ`hHFeT_y<<`m_djC4d{adSY@I+8sdBW{OfXS z{Z*K-@IQ*9XEBGCW1lwSnB&0y$*e+s@-7+BKbHbWFb9=wqsX*;0ICO29o-@PZ-G|Y z8?ThIhSeo>2@*i72fdnHLoeV>tTlZ#*pXK(px!u=AKkuxq2CffK7iIa`uE3oHoLHr zE}oAkMRf5RuyhUj|LgdeF-w_e`Cd{T6{RX;BvJ8Q(RB0 z-X!t3M{{w&@c-;Y1B60&z0=R5~lJCE^J zMgD6181B2I+8)JKW&dkC0MvH{^*xZjJ+Q@2Z=auz@q2o08$hxDZwou31iVkifA=tVZy+*2oulOsdX&e< zm|1tGcV~YpepVdD`aa{bGqP<|<~4(V{s8O!ig~B_zq*6S9(;*e`4M~fVb1l-XWFUM zr=5xf5C=Gp?O2#-C-86FI~vd$?8_^7FcP3S{wYPNccRU{&ixB>K-VmI?)g;T&!r>J zd9Y~Z0xBA4)C(_uX7+DeT92{?q<=0W-ggbveh(#6S(|rZ;bVH89!&@Dw%DrIbIoJ0 zf3&9QACo4@@8SoecM2m4?V}Uoi^%c6EFF;!1`lOPQ~G#3Sa__^g51GrL=P`!#w$xw zcK8EC{!gU-^%K?=of=h&?q$WH?S=oMzhD`W!AIm^5Aye<^yl<3JC*;(bBDU3V7u&t;kq_v%$-VKp$iUWU`ViA|{Lc{pq2GBv zt^u%}Zx#?Ff&Brp7F;c?Znb_d%<_P9Yr*i!dRGXy?hDAb<_~-Q8DUME@L_BTb^oda zaCFa@^!MvAKOj7ejb4Z7spF@5 z$GkxQYcr|?3N@qs>47sA=BIUC6vI^>i0-WF!3XnBoixh+t2nQ?pxD2-AiF%P&l*3c zGdoh|%?>cCF7nbJUl8mT*zD_AY0Ew;maRx5m& zu7!i>(zB@WPE?g|_(ghUvYGYEx+1wcqtBiDBM#trhM0;y7m`_GHzC)#J$}pI7T%=S z*ALN)`2D9L5!b_uJ_P>@a!>2WaIo*eeuU3ny?$I@C1#~Kt1B#;GrFC@|Iv72P6GSV z|F+7GV$>@W16+WN)tW5I-uM>&Uj+%U9}&@`@qKp7-p*Q(1N3TfPVwMk!>mE7JTd7B zX$skl(i`#tXnP1bIuB_$kIJplT%V%)_Vnq|-u+3r3BJD>mE|)l39azkY4`jWvEmY=r!}nhS|6hy@(Asxzqdl~y z*94f~2Qc??=%8L;Ub_Eu^v%hjzZVjrE1x`qNAZ941#F20;95ZCs2-AU?xmx?Srw50 z%2odyMxoV&HlpkL(o5$IxOtx(JJR_=zHnqleITB`mf+tEK$w#6?;5!CNWA7tlZMHT z=m+|Mt}EOVwU5Wf-(ts?u>#oX#O+VUcmGv<3Eum!3-^QF>CtC+|66kfbR;ESc6@R= zEBib~w}h7q7exoL{%2EG{J56t_dk>Me;nxFFWC++=*wE)wW3F;t9p*Q>e=yE$yLPJ z?t%|rKoqYdoA`fN2PCWlEQ?=EKrszx2`T2+mpr0HtR=En{0dCsC9uBd<->_B3B~+hv5PEd2tXD;E%;;vOB4d(#oQ$1{#v%UtXhuFaWI; zH;9=q4@UG;yqL8Ux`J2v{Kfno?-v`eRd27Lbh{;htO5J~Bn5)55A#)hLxQ}}?3E_- zQPysn@5Zvv0nfD~crZ&4I*`mf>NeTdwJOur$_hHnn2mSzv<7Nmsqd+Af! zYmF~SqN@>x^*u(m-uJhLM@vDEgC2dHeSx-l!kB5i>oeE>QaF_imlKfKld$CE`*(KN zGw@wFpCSlT;E{`&q2S;dyiBY#n~1GVwYb{&!BWeQK@na=c$C$5rm+DyNd0GmEvvHj(wzI35_kAMbzz zG)oSouXlCU^|~YeF6xZly1h^#+Bz81qn4XnfMP<(@A_)TvO`|WPdyyUo zCqKsu_*K#$^w&;ODt$)9o#`%8J9>iS?jp+=Yy+QL7~@q)vt@YwHiOo3Sn<^uG57V5Of~;+ zg&cMqpfw}k1?k(JM^!6}3mlhwWxJ3s@MCUI$e%Eu@7%<%qd4rU%xW{r1#sh zSpsP0swpe@!x1mlm#rAsiq5I{r1E zITWk;B(AxbUQRcXo2maf17^RDPU1(zQ{n<0zmLFbIFJ~Bl&p{E#rLtU@Yra-Xc$(? z#f3`L3Lc9G@Jej#!SV5Q0Tlo5w2K4C2cS)oD)<8=(Uc|BjnzW$q5|o+QS*2e9@-UP zQWnv-=zG=hZDfzuSKXSAiz+PD(L;3=?qROlf8|@s258E7AId#YxAM06m@6ymXz+h5 z|C@6czk*4;!`)ke$8~+40U!ymC-=Awe6K0hfQ^gF1DajDqj*ntN&0ebE2?H#nS;s~ zBd-Dma1Z~rLc|<=A^qb6qVt(+(%jPZvj3am3zRod=r?-xzN3WB{1?LydcIz+%XO9g$-zJb67biDbm9<5(J_X9F^*Pg;&(4l&6Z2IwE!N0k?yn5AkS@gzxi1BNU za!Cfgw$9gc%Yq;~0uKm$LFcI}^5*BZZ;W_7H$%{)j`9eUB%a>)K6Pf(9qB|a%MdE! zevjX0Jh*q%U%KD6|4^9bsB~)f1h)UB)PRl3&SPEPoAK<`hHI*ecU7!_oy^2#*p1Uc z|7%#J>ONJ0SttA({fax=9yQwK=W{K9YtwA`dyneX6ccESjFAM`i%iwEXgSrZL};Yy zVBqfLwRi@ZIG2JYAtl7rz2dig=|X=Q7*obwH`dGE5*-bbnVT$+-()?%>(K67z|~iD zJ-9X=7QYm~9={fkiLZ(4$HQ2u=T2(u-eA>_dBpCj5k2n*i#e7ny&-u9n|3}qQ)iMJ zcvQ57{=u_Y2Vh^AL&f9=Q2GvQ0{;dXG7|m&B=|k4@Im42==+$8A}pb6=nR%%11OJQ zQb1OVeVF=hZ-D!Qbbu#ZPg(m4e~o0TT)w*UPZbvGRH&$bTi%mb@F3V&Z?5VX9@}v*)dl=xc-*_Nigies0^_^~ zZsf7=11DO)chKc`Wp`%$fPz^I1s!50M#KL9;dU>O`3T z@%&e3Jg)*`Kfk7F7R+O<71A)R2i}#V`Z>C81AggpFwz?Q;w{O< zcqUf*@3;nYe{*Vi)0`3HJljK&aSy_Aro{{JXBHenVj!wtWp` z#^iWOyfXeQUW^nO6Wip=vOEpwyN*&ZtB(Ng@*8Z;Y zS47YJUbwdQm)BOc8j=$M{nGWp#t*aFEMIfkvOrQm_JL=&(IJ#r^BF06Zk8N0V2~8n zq?Q22zcKgEOMoDAN+>t>#Rp33l1M%X;nMfv(HP&|^H*XFp<>DS*Hzk|=h1Md1nt%P zj`VrFyic}~$4ER#@5=`0MTXmg=*w6UtigX06@>a5x`FlvE?em+sr zA!G+$j>Y{wYyNgXbDxI=un%7EHSrpH0{;R0|DrIe&^&rEYKXt^L2&cKhoHP*_z zkWZjF&%5ODz<&4w+N0&g06u4=S7ZNwkAx}DZ&m~SHMl2trR}oMv$Enb#XIo?KU^G> zT~C$NEqMDL%I!t<4zvxR`tcz|5*HFr`hre?)42z>`sMv^jxSc)-}+rB7y5<&W@vxo z-Mz}p`ahqjZ|~xV_<(QC4$H>D>+7KV z)j?8g`IRFJU>&nYm3!~=iRHZ7N#71<{vM4K=mO$}Y2~Dfg<2 z#f_=ny*8Zydw()og!f+f|CHLkTUY^vHLIf)(ZXnWbZ)c{5xVpEo-_E|EY?AP2ENe* ztND!dSKz-oo`*f@?R{|cXyJ5z@v_3(tno1&FX0jKS@GrZ6+HHc_lwukSNK<05zlZ` zJEYSJ>Z{hoQ(*vO(n0AGGGnK(s@Pws29%$|wth#vnLRl6EV>2^B{!*QGz7^qA?`?C zg}SM0oaJZLs>#y-J97r0`h9o#v85l_Qwzph6_%>~7qil1J0yS@mhi9KAoVTnOn#8^`Yx8&faph@&CCuh9!W=#$@B)USo|2NtQElTW5y^>Ed8&l z5%~ch;jG^wR#BO?QmC`aS-<=HC>LARn2rLLvV!+#uQN6+A5{5cMjv>+@M>E?_z&Dx zGdoBHvtVmIzaOw{+z9*HjE&vpgV0vOo{q3A_-7=5^|`;pnp{XW!i9cU{rXJ2*S{XD z0JDC}hVa}nKvxky7bJoITQce~NHZf|j6cXpjg#c0xRUd$8nB}FN-ESV60dn9$G=v2 zao&$Ifrc>8UQOp@Hx(bp^Rps*IeQfSKNf$H*7VU@zWbpc_CynXgU3idx@Aa#k9oF( zUIFdU`$wT)oOLcAl)0&Nl6`z)r0sYmA9e6jy9RGhSiZW3Rb>WNftRk~Th(#?E9}zm zU;$h4f0c)KJV7pBm-yD`$HLS2_g(i%XANs&1C8M{d&64}hy7oOEmJL> zhOe(b5r8?=_Vs7`3oPQ4=s6+*mEwl+{@DFLMoVB7H%CWC+xfOLKzAqdh;E2(g-aCE z+tLN;Gh9(8Vwg8!2b_)0*Lr?EkS0Gzirrh7RQR&6KdXx^VP*2wd}blnS)Gw6B4xiK z0X(G>SreYNZ>$5euaB{{1Kpr-uq#NFwK7qAESVL$HU zdcOU0?6)m^`yOcjnz@vhrPm`}m<}Qbpbt@?k@S8%g|(R)r}x9cWC08T^Y`s#&rw{&sMU$E)*8`kkb z@|X*hWQ33OF_v5YjOB&%f_%2Rnji-?Hoij1MU9tap+`XSK=zirtKwZJVZ&A;pL{Y= zyRrG5lm3_IUtC}mw(pMg`)n|G{6r-Fx@;Oa8chsImbtoi$qQHo&9oDb-#U1y*r`?u z-j2pPgyW9P@h{)MP;P!I>?=AYZLigHR0GrqX`;0#_r|}UV%L5HzGEVbTB*LktXu}K zSjNm;&+mN8>|D!ltOWzxu{e%Oo{V=!*G6@tb!5q~zIWk0xbyze4XoO^D4w5uo=(X= z&AMg>r?rS1DzbMa=)I@#QsJ9Iv#57;3|MVLw(orQoksMaAxvUCh`ohM;mvse8gTY! z)9K(ua5#rNfm`wI|HOLaXOV$$I#Ggch3?UH(a7l4==Eq?^h|U&Yl9sVHDvwYCy+?0 z^1X^|!Tsa^W{i(cUr+bQDrU2}`a_ZiL?WgXuE&RQJ=q2?P={S9>Ji-EzMdxV95jkG;3lD&!yYF*|Q zxd%`=Sv~M^*3LTte1??$68W+-$A4gX)woAbq~~ST$pAa8ID~#c_ZH!W^c}s0c%LnQ z=Zz|3T$zDmxifDjeUrX%6Z!zT4l`tBxi72w{FntOE1((DLHb|S8uAU;-{+{IYy{h` z!PX5(7aoEJ^bFTKn(xNE-ZwUke;@nTvS4={mi%nOTg`vM0}gn|tIHe00Gy>0ql?7=D$5g8YIXk*q~p5^ldzFI z7Uwf_Bj{Jn!AI2VJ~R+$SCs?~HFEb9WS7tZvTE&*rki z)e5Qyno&V`E8722s`!@_b{4AB1+)lOCxOA^;p6q0i{}*z(MmdOJkE8fi)JUf;ay22 zqXxb9&LabPLv#o$T>T!M-J4^F(TlfA)RxtRPKQtQBX^)RoyEUL77axIcYsfv0?S%J z<f$e!Wx+w{S`U+@^?SP6+JuiPh$ zf_(j-F*eKa&?)M_4*6FB4J|Kh1Ei~bd*b#%|J&ym@+ri%WCzIpmxo2Mm1cN0dvb^R zfPeG<_3#Vz1ym++2LG?Yx7X%3w2Ij8m7TG04uhXRs;wmvoSva7}=Eg{c>qq=fdE z5eWbFaxP$gZ>?v|7j&Ti8|lKfBt-ZN^1%BoJN#T|G7j~L(yM>e0??<0cx^_qpZgol z2TJ>m;Zp9O<&V!foR`i@pD>g7TM4ES2xsp1gnRQP%K(j-#>|pY`d^$&61D|%xE-Cp z`hfn~cxxVl!zrgzu|ILR&skUgqO1-0f3A2pxgUoYS21^ofd@sIWznmKeBWGW|A0pN z64ZXdqvCXRa{k{33!oP~pcDEk87BN25Uyn?Jeo!=?nDjpMZ^f zfAV7dZqx|>-UwVO?Tgo)cDOSJc$lI7WB*K)EVA>4wXR%^PAbFfIRW4(bgzO`Fn zY~gp&)$x&dM$e_9{>QWparK5G z)S1Qj*D6f1FxGIEU&E|Y?(4o>vsMdN|K>B(y|ZOmFZBP-to-tNu|jb*cHdoOKHh`Y zcsRElRS_TyKx+}GCiypXS~#DI&9=-n;oE)MgmbONtayNsFUIfpwO+H)F7zvpQ{Dhu z3hoC~;sL=1u+|F$_z#jn`0^$neCfG9CoCC-M(jV1e}69E-%);h`1QS( z3P!W``pm-KkR_<|_*?wz8-0f6Ho6)eWm_h&1-)0ozs5+Oe&OG;Q{3OVmksehKUg@6 ziueoQYO~4oQx3OnIQjmcqUQhQ^j>;E55oUHl+2Hw#gDRsvj<>}_Abd&R~uGbnVGYb z`MQajvz|>_xfVF@!OT*{Z+GzDj=8A$X#6|RPui+ER)loiCT8}0Fg=|-!s%oYynz%@ z4%s-)Yb4g>Ys~s3xdd3t?A!t>rZdNek#V?$xvD7jUYtiw3>x*ISClJ{> z939sitKt{Q-SMkY6Z-N@1)XoRI?sEB4~fptEDWbp$4T&X^_*-Bp1&?Eq-y_4exo8Y zzb@BtZF+lpK4KF5D2~uzYcWWNj^}CFidiZ_Eczg?6-;Xm@Mn*l@nY;dbl@;4ss;&_F#laMd z)jB}U(E8oDKVoQyaWD6T#ckp{H^aMr$nmfB1Lfz@_a09T=quU5#S`fN_$v5sTCA2; zrz5cHCge2|>a}U^4Cc<}=eQWt!myEGD?qP}h~3$?ZGnIx{Ws&*k$M%-@2nhS^&iE*J{z`@ z34@w=IzK%@ANZTG0LEn%vOh3uq+7%@8!jx}S<)&<6KJH{S-Gi7_>Nz3&AC4Xh`bZ4aTvR@RhTwK5OjjNM)bD2^XqZSI z;Y<9fvz+>oJ-n;N{zGQGc<)wzXF0NA1hef?EX_IWQ`d_&{MK2Z|5BoL#~^VUv9B8Q z_Ylr>S#ntN+xQij`=@yRmZ0@lqOliIQ#*z_{Q;o(z+CgR#Rqo;88;a$=qvcQ`g--H z^Z%pBlosh{@Qf3acgPaD4u=0I{Jsm`JNfR9AZ~XQe#c{o-kpNoKLFoAA0({o*#nRS z+vo&1gZ0&Ru##v;uDT9q)dx(eF7j9;)S;YhO=M{;eovVXmGFXm#`P{k&o71zy~{m% zo9#{R)NG`qWWc+~1KCQF4C>htAxD)VSr25(17NG)3_$TeRaR-gtbeTs*n&IR1?i@K z3~kvbPwQ6h-q+m89Y~S?6>L+F$%%v&Nag ziUO)f@XJW>+mqMh;nDM0L5cu|RT^vq*dkDmW@iKl@1aiE)k3ZsvIQW<8hnD9&0@1g zfc0bv|JolAXiQ5d`Y8Pm`}AM95}Nd`UJF~=XX&A5{}}%LeMYE%r=;;i>`%XF{CiK3 zJv!3o;a~UJ_*=BcXX^&0J;&8ed~lvo_8_QJ zUFv(FVI{I+Gd$yC^vlznsWKLa^SO7?mFjw}N_W{B^?9z`l}2c|{`}HARP|np-tI~N zPN9Db`9EKv|7VaNa1EaP_8?VKu{(aj+gKI6j5E>dK2_0+#}l_7kIwE4I$ou}PYvpW z7s3EuB971t1|T24DiNKN~}9kA`L3AN?Wj#&v2PXzb=ca6^D9ID zl4Su$k|#udRrNpk0bGBWM^hD%U&6J&#T|JWsVM0txNMqI11i^V9u=MI+R?CNkfTA!^R z&wA7U@s7L-=nuswu?d?NduIa}*TK2fs7fGL0q9X#ffJEZgOX3lmzsxkbbQYifU2BS zpQ+j`RcBiJOXCM!?>Zq#fx!KZedYa1o5`{@`t@jxgx-Hbf%f?Q-93TcXLOmR@2>f^ z-|tC!2#J3Ek4OOFUpiiYC5fV6+1-Y>OeppI(AkDf(!jqgRO^g=E;=WFr!a3hQL=oz zFW3V1{K@wx{O>L`8z4oUf!&<3KNmmwCv^V2AKg2dSei1pl>s0o_c)k5Io&IJEc+4( z&;zeeo8pYDK{gm&CC`$yi105DKs9DcC87X@oC9oQ{zR~XgF&A0uXXX%ajq$IPZp`8 z(QWyTx?o@vGyPrW?<{8VG-N9o-It}z^8Fx>_Zqi6WzV5bIEJ@`Q{>HjX2@J`L6*^lP=035>*e?%=Czv-r$6L=75pZ=7o({V#jV)|M&)8}a+9 z74o`est0Pv-ug((^5g(%eIUga6?d$g%OmGu_rh~=4QqlOPba|N70)Y1#ctW<$nMe1 z7G?kFKF9}X{6EYYz0RE4PQKI{EF|0c>d9!-yT`F&t@Z`T8(_}w+#qENJ4&e6CEXwV z+O}-%=dvvDo`8Bs0RloS5v-Su(V+J&Ka6|h)JU{lA)NhV_z(7ekN_bAz?c{3_pj(t zvLbi@EG+`|ErERY#(H?vKKnj()j?{6BmFwmL1{$PQB9*4A}H>=B%XB`QLufZ6hHZ+ z%q(U91|RMdu<9q6f#=Zs?RH{*%jy5vyts|Z{|~UKh#C54W>%rTKs=g(_&UVn@%44p~)ZO zFUZSD>HN7AzuyK{@t$9Jo@l_CXnpkz)(WBhUiItZP2A1`7T9G zxALdj{X&kr?{nK`0~nqSmgm6x)zfPO5?}@U)MZ%`;04C$RbDNEAuQzHO+Y4$W_t!k zr2cCk@SR$hP#%8qG<8>!6p;2;=6_w7z9NU_|7QQqxEu21l;-%<#;eB!5qZ_yeSJ%^Jp+KX%=TwHK`n@(Jz^A%KUG& z%LZ_DrqHid8Z0Rt>r-B!M$hYkIYS_L|E>L{>q1=1?AGz_5+_iU%l__C9;~opuBM+^c#96%pJWpIgsM$JU`vd-i*Yh#|(L#K4b9#`Lg^_*O65j5~3QG`j=^%t;gs8RId3~q-EJJvLcphe^&I_7F|uGe*w5(2KwKnieK#i z1nhU!32Kh^!jnIop5Gn$)>pw@InMmT^u4qy-+3d~x&`c=0jq6CH=p@b_Z^A;?~r@7 z#AT(+w1TBZ-1)1DwlwA2FE4ywm>oTfS8>nuI_hcXr;lOz*Fo2A#n13Hi2aVgjcEH7 zT;mLWWde6)0i1p<_+OiIp5^&fzYY`9NGxUF7u==y(6eGqqZkYIZBaMyxA}xB__g|) zssg?Knk+WeRY}h)bEpOPNc_Ju7F`SOqO!TG?2-Y>z>+UfHATwKs1HjRk#@>v(+&K) z?4xXYc0*P^`xSTaCGL+q07(ve?U?(J%Fl6@o@*g17KMrnP5KP*E$p9Je-$f`Z~wmJ%d4R{q=uoeM<$6 zkVZ$>UoW43f1PXPN~^B;sE>}i(EH~pu;q3Cq(w(?Kh?*3V{%cNWfx@kWs|ZE**0?j zB68>s0LNmM(kjX!l})cXRgc+HDd(<=T2*4sXhp0eumL(UyM*_8%sBa+6_1hyDsS`3 zT$3+Ci_JmzzsiiC2CAnrr{oJz|Nm#vcH_}8uP~eDAt#hyxD@=0G0X%bqmfmEnRoZX zi6i{!%hL*UCwrAzo8Qy9>T1^Qs+OISHO$USFK1PrIQ}zzdFB^hWd*(Y)IL3h3_J%6 zD|fgp*lh|^A6~d1I*qLR3;Eu8@R=q=|2DAlNv-U0B-hvAtSgbkBAG;^$l2>rkOwfV zNa}8*u56cXlK$TxY1@&U;}wMw(a`u-vVhm6XJ&WNLp91C1byX^DQiITN|3)aNAnb< zu~t%;%&2^bgj8JB+bWKcKTx**x?E~}1=2r7F3e@*p5@M|Ys(1k-Wym-8<8yAkOS%o zCMF>Lub53Gw7W6~8gnnSa=D^2t=PXG_fV@gYISf+j{4kfaXi&w9*k_Q%50cR9_XO# z+N^)Jj!Lkt+$poLdyvA~w05j&fS=9fQv0M+d?0<#G`jA}Ampp=QIP=2%jS%b`}}Lp zhRSr0p_u<)qu&}``mJ7$YRz@Y10h_qUecoxkNzgfVKEB57B-A9V>@`wjJV)W2+|!))bJuv6mTJ2*BGv`<7cXa)|Bb$<~ z$yUMymJ$PR#cUAf#9>a{MGA~*mJGPr*koKHvl%>?a^1u7ai3$Cwq?NkA@mcP%yz!GG^JdT_IQe>}8 z#$$C}IxpRtE=wOESMMNxqXrzeKf3k+`jtME4r5i?n(^aNb9nm{*6^A@)c-a#_%R^3 zBN%Q66Kw`Ry@oZvcH*l)h>U_~Kv_d1NkuYtj>}$0qHX2Z8YI`o)9@o)kL2jarq8!$ zK8yc5mSw%AxvZM^mT-j2U>rlDC*v2BhtnR}Yjo52GJ7biLl^b#uqJ0dyv;aFK@yKZ zrj6vfo@X@Xa-AQ;k<|a-ORjz$e~!`1ZrFjXwLOmjDpL41qo^*fqxtNMjEzQZF{AuF zc??3kq_sM%mxH10!5*#0+zKyA8Md0`b4^C9Hg~BSwt(V^(*9<6wQ?TxMf!8PzutjX zIF2#>h`Ok+!T%_DhuEW7*q!-yH?!$kY?x_u0X>#Z$~Q7T?#SfoELA((3n=Zc(GqSO z<~X%x7m_u4+H00Cg#PtBHv)nLkQC4-9%!kpl9=dqrIJn|94+=l^B^(p%az z3l;b3OD@pL!q8}XydqhcUYO0GmTo!S6nbTE;a%Jt2B3a^^I`TcV#5z(8^Qn4T-g-l z-)tn^dq@H0Jj)xfiET4>gZu_NbI(D9_h1Kml`AAKfkt!c|47cy7`Y<%M7msFzATM$ z{jUlxWezGMt1+lowx1BMh`-|gI$jn-GxpZvuAP`pOIu~XBAc>r)*e3eHWth_@IRWf zRmRx8VE=ZuJCFnq!eM5C|9;6Y;-jh2Je<+dT875I?fxJu74H|$1O7FKB?Y9(h1#I) z&1XHwgT4+j!4d9;pxseK`5K&0EZ!m6Bj2oji;^g|nuUIIW@9~QfBm=4_2b_o0c6wb zQ@ejMAU2>}udVG%R)MVm^8;&leTS|2;G57{=-d50K{iPO=)Co=rJz}nts^tf0~vF# zFsJcvowF@7fS%;QJwRpbh1{j7%s6##5&pI2?+e_!?aArs60GMNvWeNk?3t_ueP4U! zs2BF7_4VKVI~`N125(e8nj&24I4@?YRX&_|){MRC8KR1wpU`FRgY0=Q+!_4(B=ope zl2ZRbNh9?UnN4JCA^J-m|21&k?aXwoTBqs&b->!l-WAOE1st;n*=es*tMCokekU{2 zmB+FYj_?sVOn*+BXLn{jvoq6^k{jvm^=EPb-=l-?H8B7Fc>dfusO*3AcYCsds!|g; zjulbIfVO6=f$=k}p9isb&mqEbZ?ZA2!a4-x382+F@eSRP0%f~K*%|Df&BDL(S`Wv= z_#mA;UW>kn_ayu8FWF1ki)jC|_{JxQzwZThH)8=T9hjl+1=XbIp&z0??D2*h5d^PIMru(aifp|gp^kJ$1yJkm${^r?U@S&54RJ@YM zYP|};o#X@GiUhbDZSo{?XnJx=a!GtjbQdF}d1(A=9!fJSGU`fy>1*NNHmh(hE8csA zcV(?gIvD%5_pPyoUSr?fU*ql7)Iu~?5eMfTsk@ppj~essyL%0dTQJDatI@mrz;otZUG9kzU|Bk+2?`tglOMWG}DJh`Q zYrjkw0UH{P$O@N{3xU77-`RS$PX(nfGUCxE^k#QzqOsd^oAbtZOS zmF#X1E$wg2%Z_(8zamTaA1en>S)+}?yjJ{H3{L&Nq+t|cQokUrulXf2{dMN1YDCo6 zdlGu@d46{+kKzF@vF|nBmGvu~r?o^2`5aG>0rr(E+d!EBU!mhqOJ4+6<+G2;(<@_k zYrlGAu1RXA_j3);uwLQPbWyT0?nn;6*-=Do?uEqqx}dk+J4pUN`R`;Y9f@STCi)#K z11!S-*A59%na&6IW;O7C{6LrA=jiUck*HyZJkH;RZ|TIh*qbejHh8V1{afK1I0o%M zg)RW!MGcZ(oXu4D)XP}V^;kvWBrvD!sRBq+_3dKtI+N>v9x1G~bw(hWN5Z9FL9c&= zgjfd8U&V1Na+^TUHoydw`y;z6B4_Yx#%ne2%0nUvJ2#gAOBtsG*{q(*2`sHD8oefx za$j`4a)niQsahhf8Pb5Q5t?5a1j^SCyAvm9kLPj;T&Q){Ec;njj;P9s=>M0wYfp2g zLty}SkqvkY6#;i5C5M9lnaSD7@8bc{eTy3EZ{hI6cZJTX5#%Ld-d%}xzgnp{3$2x?&(u7Y1-7j>Oc)PJHeH%1$jlatS z5WYh)ql8gwZcBrJ=vp8@@PEq!Ykx@rZ}JZKN`n>PZz!ExkS`tsNkMPH`zeWO+h5t1 zn$^-w%DQ&V<^Ig_Ifa*^neolw|3z@G_>ER|(0X!{VBX)c>g`-?=WDZZcmV&HMcJRg zmiVAE%QQ1WO_?f6>ocROqTBc8e@l+Er(Gc{a#o4(q2t|o>t)%{?&<7-YCz^gNWa% zXBEBAI}=g-GCi8kXH~PCL20MtsJL%5f=Hp)iG46umkn+`n)h8 z>KFryPF2z#*$v1|VX^{$8S%jHK(B9Fx=&Qq%Z-;MUa zC9es(2mC9G`wFtIFO43;Ppa-F>dz>zzpVb?^_N~R`Rs({fO=tHNViW=oXSzX5dE`k zkdzSqwa%!xzq&ta9Y|Xm>awf~>rOC`uDPw&HP6gawx_Ltp!Ln%B@0SgICv*801 zUJYHa`vFCyGC$==CGBA(#2$jR?I5X1^#LLp&Pkp&msY|_WMxy;~n7tFED_+iA27N zZ2x02oYhuF-~l-T#@UteP=8k8-;w@?pxT;VkMj0wk7u;!v$=op1W40a=LK(oq=4D3 zGl+%%ux7efPV2;Pt1CnwGPIB4u{SdLaL%I%-(;KGNV6?1q#4cHYxMo!YXX9?3&vUK(HX zQK*-s`%}nnhtW$z zD2vyXq?Q262oh^lPY~%4b(-&j{#PEZHt_`4oK<0Vf3eFtRh5ry(*?}Uxo8UIwZF-$ zrOf`d%v1HCPzTC#IYQL`YA@J>I6x(4t@7l>Ry)#*d@O#-DEk(DbT(&F5&2LTsc;3@ zzn}R!Je@<$eNQTG3t8Xv+GKXzGk!1XPZaPn=7sgYRuhtSq)pnRGg(31quy~x^k*9? ziH5?2K2P5yo(P`eN9pX_84V-N;_kgde~4#E(mI<>k(a}%1GtxbqYly9XlvXo-7g!G zJ(*q4`pKQLuc)bQ%=Jj3sn`BK`8CQu|AEo}3VppCbgSCWn*Kxnivzry>-4u^1oL_J z9)H@q2z|d1`+t3IF?|irWg#hdP`1K*jPdKpjOC1Lmg{`wZ`Nf@%OQX2fPH6VD>kbh z;_4mb)mX&slmo2Z!ad1>n3k?hf1-+c72beD)6enOX!RpyY>dF`cQ@F-g_^)yVFOc; zTK6O~=$QH zg8c=0G=hy{eZQ>&_wWlSwah5#^uRj;>#+S1q(nF?%aCyWmJ81K(`b~efKWeeNh`@J zDWJXDTH=%1QrH-6jt3*BpXY8VcT;tnV_=(;m@8Y7Zs^WB_#HZm3g6+xa0#kB)5{3m2PYCq{1v}qppwpp+k>_ zSBz#Xo~94L$H{{Dw&(%mg*taBhedy~HocCIBY={!@< zf^1*7#P;+HB9&bklOh;YrD65_YO5j(lmnb#4}8O~JKm=p0IhPC@VnQa4kLJ1Fv%Mhcpb7)s zKlOc8MOL?5>mLc$j|KI|6W2L`-#-b~r>@MFMF;SCM*@SUFIfWt{pJS$mj$5Dmr$-} zfd}YWK);!QEPLU%l*exw;9oS(eIELpIl}I?M9K3f-(QIfm=V>_M@7C6$36qo3ghcM z>z35H{!sWX`X+u9`&;-|?*C(0amu(c{=1~lr#0|W-<3zdn&GWFKGy|8v@1)*7@hx9 z7j!p75@?NyBZ$CtMxS^lY4u4lNcjgU!TvvF*1pM~I?cbA+pj|X8W^j({uG$`!h*Wa z$|F^eO*yDyt6C3aUpB38tyQhtQ<--q89rczSvdcFQs}_CVI{=}CX9 ztH=bL%${$M1MTVIy*mCyJTGcM7r*1cza)TG4UnItb&g}NC3FcH!mmYR@Q>8R1Mnp1 zf0!r(+$0_sjbnBxhb{E%7yjjC4!$kbu}J&3Wxk(BMo|>q#VRXWdt|gh5t&tE(6_V>}#5jw=%Wm-&K~E^Sosh zl%?mAw>X~>-$<^-@3}{d@YpAdR0y+43oQxxs5@oQGTJEH%0{EI&X{vPnVyZ_LZzR@gXhpYp$ z3-OB(&kTFa4Zr|{Knd2BBM164q`a!`c&y8Jl?t6KPrPykGjMyi6oqdhw&MH>lb7#HB5HWDR4lJ ze(Qg)+GG4HpWS^c6nklh-FYtf-#dDR*#EYq66n8&Nb0Qg5qy=O;a7Z-vsCBJ1QxDq zSB`|Day59REd5{;*fa1AcV!*t^BEFAc~iktvJ|PX3Wgx`Z^m{|1)tYW{S3~a?m_C$ z`Zn_7eU8x@!A%%Jt+S}kg39%8jAT^2rZuChya4(CRV$>7A#Li&tbRcQU{kMi<}0xS zF5;Zug!wC5QRtWcS1z{je*-LF81iNot1BK6H)9omV?o@>JobQjAI4a_&%aP_+g?0C zTaW`{26{(Ut2MvbLBpIIXs&yfhpK`@L38I_mj012yZ-!|k$&1P32*}VKaG87a`#l9 zeF8r44zM)G6#{~VU*j(L>FkO7-z0#uc!lfTHz8e^7ZdR2ydSfGVAJapCC#r_r86+P z{k|Db(DqL0!z1RUaQxmWXw$LoSl@)p$#3x2$ z{|Eoh-BE73G`jG77&_vW!kJMkIsr^h4krfq2vX$aG)hmQi|A3&5affs+0y-5!`HoS z6akP2(ec)H%*V6n{?jh1Og`b6>5)Vt&cqIRo*p3gaz0;UxlBN+)ZlxIc}%VrqaZuL zQb4OLXirtxK}F=FYy$QBP@gXK0$G$>P0Ei@*A7KJ<@r-B!S`tY%}500N*e#FCzc=K z3#6?)B$CYPIZz?z9u1JE9dnyakw8@k>yCPpgtyTu9BsT-UlGSf{VEbSAZ^oE>3;usX|0{D`tGEu~KB~6t zdE~*%@We7WZ)LJQPNjlo03EBU()<5>P~{kaB!IF3^~w^V1HN+g`{)WfrA5>|R@r|0 zF@IHAx}Dj%811jz9@Vd`V5NS$`%&HNHX z&QF_V7iXtu-!m_-pu65g@H7lgec=W)OxZ5pFCGv& z+qsXOYzaw`F3hz#g}+3%$JFPhrx8W0pS_0;y#lY|gJ{tj**@7^qLy_SA^A1-%h6sn zw*{1eTbFTBoL*8v(bbB`3H3=76Of-@c>e}Z=}%buj{K?r$~Qb$cEnob#AoC|e4g6@ z>Y}=Y=ilO2-J8*t)UJ(WslZ=-ytR(mw8-z6`h!^dYV;)mzMyFQ2rR z=B{S1HsN3MRUQ>pR*Bs@;-~0V8!Y{veD85s7N_$IXR)2hs*Bo${tNg!J7@c+?&1I^ z=Mq5pKbvDt*EXN>~Xn`sO%7B|B3r6OH}L2cLtL^vHr{0ubM#B z`^aXOhifOZZXLQv*)8(>FGGj@M1L*ip$PZl__8dVUEC`FuX+{he{l@S0$HN6LtDWx z`h%gNX!LHxCi`V;IoDBC|E#9s_g1iVCVKxkwAG;WLv-w1^!GK`@Jq249zx&sNzRWi zVSSDx!L2seq$_IdZv02mP5iAw$LOu-gm@`_yE~DGA0WGC@vIRM?Io-_@H!p8`Z0IH zy4}jJ5b7O8P!`G|$d+Do7pf8M88>7!6^A@H+rSwP;tWrPKTk>brK4hpYz2{pHjI>V z@-$wG2Gn5m)Ms65tw@r}9&*3c${s5i3s|5hY`>I&VFO&-KA zb02_uD$2vE+Q1r&q%5kvktymIP=@t%1oyBlqpoPbtS{XcOW^-U*I9tgQJ!u4-PxT@ zAUFhR@CXuuTL=+?ySr?&AkLJ9XCFM$uM_Q&I?Vr^;v{|v`Re5aUR>}nBLpZ`h>}Lh` zsDE!Wu)HhT+}|gwYXZpLkv}oM3pt+Kq4Bo@>6?M|^@+xA*t~luUQt$T3olreYc&Lf zi(Dmu|M#@B_k8aE#((keMbih{*;k&4Ja8YS=SQ&z;@vCXJNb9|T=`s2S||^+1GIkJ zlmTwx1exjO+0-`j{COs0Ma8!gsgRBe8-oA-)wI}dcY=Q<_u24(YvBKvA_uNRZ!C=8 ztg6S5@wpV$9*grgCHd;VWR;jLqNiPaS|2)sRioEGp1);yHtb)Y-?XgEuUL)dx9Wqw z6WjkKR;iO~W@ANLPpEcLp6GKbTWpJ10kH_Q3gS~(5=k=wu75po|1Ii$Il_1G?Y#?{ z`q#IUr?3|hfCI_fJ%iZ5hv5G{B7w)i44y**oP!=aw0%)^Ve4_Oy;-7VQn((yk?8c* z&>QFB9odb3!lUWL{ZiGhJ*Yh&^MU7Yx7ycN>oebH*H%qb>nG@*_zumpScp|E`?s@| zmF`QiIuFG6e>Jm5uW29JX_GlO6EgH(tdoPVq<4awyw(}rAo9}~iE~)eh0!WvH{*vNA`LPr*qGp3NC7K`-$p8YMhw6# zZGEcR7Bg}c>;8=5u(ahcufqSdWVq*Y3nrE<=J{j`STuG~~Jl|LXs<8vLKh zN;-*5(j$=oN3pJqPHxiPuo~U^AI|G4Fm-jmofe|uvqD9*>sehDeWk97wpS)7C)EG0 zZ8!7$mq3!N+QjqM<2r7~REHn1?GEN;0XsCf-x6M+zh4jFhDeGv8X2?>x^J6CM(ol^ z3+um)1QdU~xGNsH;4nJ)|B?WulCO9H5>brbzUc2@+5N-|Sge8K8I&vdoz^Id@_a7$ zzI*Gt)ciSTN&wLxYanOP^W&?*e9oE3FH9iyRvWRxXRqcZN_!u;x8v7&{C_pN-)ydH z!RUgW<2qk-mO}yzujhid4yk9y2XGzz^+tol=!Woheeu@&*h^{@noLVwJAN>0a|&vG zK7>s?3GVMk``-r#{iK~qo~~+FSE>lj6*4Miv@q<#%9B*7sE2%~R>8uo(XGJu8L;_z ziA??ye$pmCY2JDSS*f>z^dp(Eae%l{$B~2eyY-tF@fa zsRmCsDziqGXH9KOUEqUE2l;;MMk)cvRJ$q5GA&q@yA@6jTw z^BLz272KO;sU%pG)pk^0zt&By6RLgNLt!7EBA=$L-@@~M2S@g6V(G>e-|H-o1+xq1 z_9i64B8~o^3QXz^k^S2nD3(#_yAmm=$5s0vykHJ6JOzHlukibS%JvbKfwe+<1*{hM z=OpjoyN##dUvRH}NE-dA`Wdwb%-LFz%_;4f%Hr8iC6E%@eoh;A_T=ndLN~NCh^-Q zYak7j023MuVS6mOv5glXn!aS^l#F|^s2upe@n7P71^Hq;UPEU98JZXiRG}x9{~6E zZ#x(4n{j#}*YsMn^*rF{6Xw2+uIH<#tEVRaeGu#Sb&#|zt3}&TG3#dp z&-!YqHnYpeU%~$E=>Ge$K|etE4`AJ?`}ORn$|N}jsVYd<8a@8b7*YEb9;zln&VLcJxLb?JIVER^?QrzfzT$m_pEQtiUAZh@z2Z@A2jc&;u4b*qyldu02? zY6>b-Z-h6FZ}|UGtf;Z9s7>kBaeCjA^z>hY86wxVUTS^7l)zW{{}uioW!lf-^!cB^ zHIYdpzlU#bzzXa|5bXn`4X_w%?Du^`T5q&&sD6mF+XY|B%jC^`0Ry=c8G12~FXm{p zT3+ppB+K$w^&0hS*a5@g<5M;kK&o-|izp|Jqeeo;7oseTUtR|0q;&EBAABlKNctGe zryIL9!*62s+Z)hcA|LSDMBdfHZqUk*Z#e18ob7SMRK_)N0CP7N=6m%&S{1Y~S9ndN z?oZGO7qa~pPfuUt{lBEK{?7sby}8lB|8HRecVYpY+`hlMq;)gCxm6nepXh&9W>~E2 zGuRgY{w2>Rt6dpTBK^^8!;!d7NnMF6Hj2Mh!1-pZXfeO`B(!U7tjSf7by%V0yjAnO zMw{+TCl>#2{QGK{e000ABF_}$7I_dhk-e4o z#1@FW=ve@Hr?SIucgwy?M?g7GqyU%0|A%v!ZO>8V$EnwHoOE z3wU>Oo0Wg&aa_pXRp{$MFzNTf|G0W^U7`8=>H%z@qeFi~$IAH|{bU}FnPQ_^H{N` z|HTtvW${*^_+qsAbi^j^tnaUn=Kp>0QO-e4>PcwUgJ7qda5QEeDmfPCcz=P;JrDM} z7gp@N^zk~l{aiH-QGol%16-YzF$%q~7At5+Dg#dk+yCsFt~HXG9{aZrZ2g#;p>0~* z@@W0m@~wGVeXYMy(Q_j2+=-R55-Z9~Ks|use{t5*7DNx1$Ls%EbsW-eW$cmj@KwG{ z)ckDx69;hyPluOW11mV0<9d^x0B6!?={Mvt?8RB@f@K+ieo=qDd6h=wlarII3%xJN z*wrgCFYg`z{?olr8IWmVMg_~{5PJyx6S<&=(29ya-f#A?*+xbLmTsb6GlXd#|6 zA~_f5erZ^f{*<4?rOx5lf5fr8k8Q8_|9n=C-haFQpU&T@WC586d>Ed9KeLYL%+h|V z^%6F?IXNqEe&YLgMMh)EPQwJkYE$Xw+K!Jq|A+O;{TJhWuYlaP?#h_I8hu@mze{L9Q^(FfDwE*Sj3^?wi7`Ha|B z0z~H*1Q)~?CgA^hSNVMW4q*WzzQ~UvF~oV1i3Rt0PPtHg0pUy~XHvw+bDFcP+?8?d z#Eh(UtM!S*JqUxdleYMeH^<%+kF{qY@8vzFzKo^X>k~X}?~$|C0{_o&{kKIUl#0=X z;fBkiA6zrh8RoDIM62`z{e9HqyaemN4etLeD=%>_8LfQQ7;`ELmu_kWmtak60T^3I zR$(%W^fJcNxFl%Oa=xSUug=Q#pX<51i+5Yy$Lq_H0aMhMp+UC>?IT&WTE(^>tgbFv)jH zvIW2B`<#hkZ!??oZm@kE6GJATan@nYjcN2sDuDDSECJ&@3-nK4eO6saZF2nPr@=mM zg_lgg&L0nh*#$Xp4%;bk>AO4A5@G!(MZBkDAFPAN#CYJ0U@zK#aKn_Wyz2Q#lm+pT zh<`1usrX!nGj0#IKCG^ZVEwITGymrmHuC_K0m%?DL*Qe41z#WwTF9IExr(E)t*qL# zJL{0f_aOQgN0zQd^m7-iu9KLlaxAfzL7i8qO|bUwJXX$m4gN*HmcU63|392az~$Kg z_u@I3qiVNyYA`t(^rrTwXWxg}M;62$n1|I|*lm#m;Q-cDs{O}<>@lEU{5v~!Ri3em zGblG2JCfIx%=&kGc^O7$jr5E`0&Ik>w=>sqSN>le);2eIR3ArQmuNt-zyCY_W5EZl z(fY9;3fdFxiv^Lr_x2wfLEc|De;7a{K*4|HPmv``6XinAN{Ro;2jU6H|DL_c89*|C zJkRl?4DH*CsPrz?mgxWc(D-K}!L|FXH@ldtdNsbfX_5ACb{41Fdmvt`XF7kwm-Z!@ zpD$sx?!{VhE~R~BOSP!+WNXTdQuSvIYKeZ1Jvxz9XD#XrthO$n3Y*WwO7(o|37t=q z9`&WZ(7s~E`?3w0^gScV`uh>Ny?^V>LuTUK-SfK-GLdTO?!#mOyn^oE5a#O4V5?nc zdzK~~}F1@(n@i^=~c z0Sa3P!h`yv;fow8TE4IgB|xe06Wu|2?EmO>pXo7xcoE!dk4uD?CNO8N@wwBr-@6rwF1!j?bCynmpb#|_n)SInI4$W zVGVpumyOrqt^32m?f9psYWn6+FOv7|AZd4Nb5xvEX++9e{I}3EQ}P+(&LUFIkSyZ( z{8CG({*RVRfAOKLY%7c6ZOF{ZP2eTh!bR4vpRD)ow))N6?=Riux+h_qoQ95CoFgz_ z*1mW1uzIak8j0^}SNixIOw4Uv&}gm8BIw8?+7D0*)M*`#-nTA9U(p6=g^geWTe2qh zgyH|3O5wd>2zr-x;(Z&UH%7C1^z&I&ou2ka5zPZq8?DlJWZ$B#rK_bl1A5KH|Ayo$ z9f=LHA-~yZrm>SnkOdp!$v75f@E&&7W%Z)nZM)s>TJ@1=*Z&|Zwae!MiF!%2e~Pap z*;iKP%bjFVPV|_$IsaY-uglcPzmhfRHFzH>@EYiU0XFsqSLJj5UPUTDgm2~*IKhWx z5DWnEdSi_M>KhdO%fpw}!t=iw5sQ65{;}9l`|@0k{M1{N%%5{uL1&>w&PI=%^KBl` zQSi#U_>R5Xhg2If2QYaOi-6C>^yH#p0ixTr>NXE6TFX|{7v`VI6{2<&NVk@7^+p0~ z)sIF0%kmd*atemB2iJZ&ubSy%-yii~_;1mQBe+&8!27mnY=B*m{VRZqxj|h)Z%`SH zEK2|TJm6x#7r7A*P`E?(RxE+S4@7@>L!^tm-*3yWO&lWf#Ak~H%Dz0F@@)Q34uEG& zX%JZ%?eDoQ@xRysC6>AjRVfG3kM1CHNblgP750A#65vv<>-E@e({jBZ@61S-x_)TZ zr_s1ybfyMnAL75-51lYeqiL)<*Xxvt)ODkStnq)jS!vetrGG~YTqfFQ?*3Bf;8EyC zdjrMm?=z_>a$T3I6Y(D(bnJgIvpGnyff3D5(DEsVx zZob1ZAZc4HlSg1PN7vJJcj|7%l-23$T{w>|*!%#FaxnN#_s-%gi62l&sZYT3Wd{%I zuZ;|vD`dt{@`dd7_YK#_>>wpTCN!Hh^a=9mG5DXgL#etnE;ud7H)qRSgkhYe)zS4E zf&T5uS@;Du%kPN0exIw*>O4ZGh}OThzxqEOKqY`t04srhhb3?;-|@TlwNwG02L3%$ zcH$C~ob}rk3e0CYG!b;$N4X%mTOAmk*9J2f+8ml6Cgla_P ziPdh_V;XIA@A(FA=i?}r;qz-@!|l>Y_bu3;6@mKP3id==Y;&La@Awb4Cr7qy*CjTEDIiA;xB&vXPNh;2m3W3~O^V{!%UM5l8@Ic?U8&+o@ly>nVwMB*^!^9a!`Oq!J^ZK;wpP_VZ3vu}mP- zm1Si{0^URWf6VP`*ym0fd73L_FQI>N=B%$Ci2Rs~{pzXMnB(4_EB;fgtE0gGLD*8G z*xw^~i7x^F;s1#M$N=;Po2oIQ{L+aT#jvln{;h`u0FtzQuS-|^p*5Rm~T%TJ_dPu~0AEFm$$!V7}sNW1X= z@=V!#w0^Pti|;>(k0+o=%5pAUpYf%H4dqNLam}0F4FC2kt$$VLa`kWEn%Otrj+2o9 zGJr?H?6y<@yo%QUj7ZyiOww48E;@pYp@p2#xpS=7XR+_qWm{D z^a^1A8#t|bZ(pJN&2CwQeQJGM*|sw4czr%Ou0h^NP&f)SJx_JoYxwdvZ?wC*WK1Ii z(y2z9-o7Aq^oq6$w^X-yc1w>RtxDtl_MHg-KdEom*2&fHk)UQq7*#VjY7HW2tMEv< zXIIq4LBCde7t3i4;(){GQnWz#_uY$-X`9u*9nP8Oh4 zu;$Wupm|es@JY3JvW1c#^eNK#b*_{?z>nD81@}*20X)U^dXq40M6##c|3O}$UhqU{|~(9F?d3!{UZ5RD}l;% zNs2}eQ+GvrHkGOKHX2YJ7#%KuO{TxvI=EjIT1SjIyh+uXbI>Gu>!l#MA!-d36)fPG3?BxGXXD`SArD z#%i7o?esaT$egk_vF?pATVvwXDksq?3Dh(nG)!EZKfZnuZa=`t0P!EK@BDg^AK!m6 z3(Z3n|H%}{${x=9R>%K%4jF%sQT2NwT757UNb=q$A_LlBYBruTD>2Z~i7 z|48sR61+UuuG)7HnKmm$Uvaud=vA_#kG(zYR#P%n)%=mD+Lo@?%=t>+3A=|G|67_h zcw*n4tqZHO+A|?z{O-|sOWgFWFW<c@A_jyxHQ?Z5dX-G4Oa`c(dYgC#H)X7Vh${n7^iVm>jz zb9sD0gZ~pjzxa2B{kc7RyH&l1hK>HW3uVE4$y5zH*Y_9CU&&wb^#wSu;~G@24ZD&7 z==<|(tpc960NFdC!}r4P>faCX-X1{D#Y2eW9L;tl_kP9W1MuYhh*$Sy+lTk;M-1n{ zzF(82btJFtj&xX)t3IsZ-=e>#y}cJc@V`BP!ENt#AB$)auLMX=V0osrDyR2M#{Qs=i^+S3`3nzt&Ml)A!0P= zaQ*c9J4edSv*Q15khCg!bbmq9en#fX6lAC^TaP3U=r*qZ(yR|7d+$ur_-cQvQte9h z49}TyZpV7_d}m@U>g`uQxnjfdwf9A#93U(p_}8LMU6C0sW&pW{jWK8osLSR+$Bn`! z-Hu4#8oYOUY!GwZ#r`*q_R?=|J@OLlU2DP!r5TFj(Y|K4X>%;YF+Id2pA%YVph?X9 zlOftWLhWBzrM>F39knErH(4}N^nbE`^#kewNNi~=lU4R)hT!?_f#_quSq`Gc_qQv1 z)cyL{jM>Y~KSKfxgi~FQ7x3-+cilgAXX`Fd?*jt+@%mK!Z}v~PezkC6dCM*r>4_A{iyZ;{p~(+lQ@SODv=3KjrK1=T^CmUz(r z|K|Y3SJ<=F%O~UM7yt3|i|im>&L3-_cm={5eBN(~B*^!PYhTS?{FcH>oOUWhiWDgL z?@55@s;t%Mea~gGF6Za`-QIV4>s<0u?Y(sw*Us3#U0lR}W>4J7>KF^-djR}@3HP6t z?7zWOtG&qeUmHaBN0)?6{+$){8mq@{laHeRUq-`x&}f*C!Q(Vwu}uDSm8$n$vGRRc zxSBAJ3zu~Tm#Q;kie|j4!{&m|8e5zm+-MOvb!Z^^@f+5xJ+VK!@JkSvRaVdfYUH- zZOVEtexG%dX6hb>pJ6ijm7aG0HYcOPM`C@T9RiIH z{u4jVGstddtJ`l#X7Cxu;{?z}keQp|?>mUxiF2_AFUL+fmChe)a_oO2qw6wO%lY5I zzg{Hy|A};zI}ZQfuoIaf`8X+ynoSR>aS!5E(Ff?M#rx` zLzAs0yH9Ss`Gqa=3$1mTh|UuE*2LJ=at7XI=8C$}@6_k-mTu%)8Us5=wGXORZ0!$c z*K?<}pI*RP{)PW9)T~zf%h*3v_LTW)sq@z-7zrTqqyI;;=2mMRUY&sbuiYbNjndgU zVIl6@cV`CldWDCt<`>!3&=`t#_Yy=_o~2h=t3D6SJ1b~4n`e5YpFQ~!IZ#fz7p0_r zfardG0Xc`BUGLd*)y?mgsfg!@PUZ-eRo76FW2S5Ek@Y;uAgs>Oea2ITo-6O>23Uf!h)D4#BNK=$o>iYGEh zrq)l+|2z#7h>ajCh<`8^f&P=Bja87IKzdU5rX$Tv)f8N>hsnte{+&1%{(oVU|8obc zVFdYJcXVE%g6?Z9fDiBmT-?Nd2eWEZh3?u>dpyP8^T+|ceaS!n2v3r}E3?OwxfUP4 z(YIi+X9!>L_Y`}ae0Ds9YPF=KWR-#AlqbWX6J z3yds1iGPcIt&QSuSRDNA++L@e3$3KzPP|+Fr&q~5o{}#rTeWA3wSC$EuE{dT*1F+D zvy=hW|E3Gb?tSyLwyh4pgKD=#e^Y#yMn9Bw3xa>MbL83mz@zoNv<2aatjilmta1l# z=RsTd=NU8gjm3olc>G1<+pkv%ptkq?<=igI?@Sg?_=1um7S;TX72v#f`v|nShW`QQ z_6fGHnAO2{5OdPfXB?ZIS!UySSHd^3D=Xos&RIx+%c)#AoS48sdLcZ}cmR|D=Yn{% z|ITgje=*V^9i>lUO+5~`_(l83YRA^0oS$g<`LIjfT%B%WUKW+wz_2SLD~rIzR-I(y zPXN=u0qG~h^-lx;C!n>D0QJ9w$?uJ)&&uB&8l>-nH^6GZJhvmhKYRXI6=;3XmTX%g z2X;UL?19WU83}Sc(qcy###*ca`vOPXi{i<-{r~m=Mm7|lAa;Y*ViiQQ8x71WV%sgc zyvT@rOK#m`^NT;C8Cp(4wo$WPbf!FR!{_Mp#E0SXz3}7o(!q1Ta=feLl zfE8}UEAQgjzpaS@TK{kE|C#*n`ceOq!~+6$ucJX~_VLN6<&T=i@C% zhoF&2&wX0RW2&?6A<}>GxA+(R#sTaDa0?oJ0N35T^?RxLxfzf90ce6{;e^w$YCdD7 zyv2%1Cpx>!|BYup1O5MD>tjV*;b-=Jx=AYmWaE0n#J=3$IM{NmTUThozdYGZy(VX! z4HTHqCQnY^Z}Va8H$E%t(=JyN!O%dorFnvbSk-TE?AIcdTD(sWp!gU4>1JsTf>!ea zohR`AzfSaT<3|6h@09@lFa9%~HgUal2h6lud4SdaX0R;Me5Q2%5&cdP8qS)1g5HWt z!b}qPNS6ewXcup^v|Tm_f$XmvE!*aI80VY1;pQ#0vNpd`!9F1N=kfLF`E`CiC=ZWO zvlrQFY``39C4f9YHl@7vyv8Ts`M0)O2|GV>Rq5h+?Qk5KL97?YTwrrJtPkpkw6!zn z%4Gj;N2cOIP4&-dXR1o@a1;>6O+SwTkpPiyqQ_M`Q{=_q>&>**e{3(lkK>QkKS zEjVXd`Kdv1jmBqXw|e!zHdJgX{Vj{b##SR%wNkSjNMQ^tsfvVC~Tt0mb_jVL41ZK z>o<8*@eJhLDqqtjD9>tjEzk7Z3tM+q|HIY0gR3Wd({4*2w+q0(`G2>9pf1s$-y-p^ z;O|7P`j+T|`QhJFutqbb!r9$+qJ0!A!2FSq8|~qI$(ccadIVVKBLg*RwIu5^cohFi zfZ`d~1E7AE0ciW{zj7-5ETBMLs7}=GHy7C4fI*EEGSjbvB(OqOf8eyR(yOUJ`xAbM zY1xPD-FR1#!?Pgqix3U49Jx!ISMBxI$PQK zg6SWmB)0}>DEl8x-ol2B7r@R6M-mTMgWvN7_QK=%iLQe|ivLp@2A~hX6?Hlcz>f0g zv6B8urO@2%q1F7Y-(byW29=C7f9Cea)(^AFoEn+dQt*X!!RgQ7=NGY^+IKJ--_D(O z^xhQ2D*?3U?JaDdkImV(Y$U+;@BsUNZr5mkZT;OqySYAlAP3CmcH5O`z!6B5li&e6 z^U3u&zJ)om9+C^fgT?R80-M}pAO2o^_1~2M$wnNEBnbLT1VGK77=iYG?E8ZA`2Aw_ z`&zy$uSTjAo51HH0g@FMKVWMf%gMI{%K@={Is(TQJ)bF?qvV(fw0HHzV(Bm|1DO|JB{c6Gdx)X8K$!ibMMT)i}sH#AeVJ@Y6q0qpVESP8O`cfH_pI5&1O;0hrjlRzd9#i)`k!0-I@)# z^kBn8@8{S@G}2`ZzhNxjKPysX0P?}upmM28AJEgQU(*G6^~Ud4Vt#7y^zv2TC$gs< zV0_QHmGSu}r_}hrK0ld5ul{#Y;;UEoUEX@7x{V9~zf0eHycjd{NI$;Wzh>;(9mx(} z{yy1_y?v(TvED)FdOE4km`Asf0Pd}LQT1Tz-Se?*-^c3t@Pk+Y(f;wb$_9MR8fzth z6B*{@oKDXfbZ%g#DLP-=*8~j^lG!kWK)0 z{^!ZxkpSkDr>fLilKa~0GYRkzs;xKW3=Y9&4fY3fKau}P0MBo-t(;L|Eyb2F^ON!M zUxEHV7`$#w7D0OYZvyJKYBt%w$lsLB4u9bVvGccXB*0D}KIs2GUV+`&Ph`LZ{Qif3 zi~p^WDl2mJhrvqsTF;ID{m$Qk#2TQQAl&T2m7_PuC&CHGlKX*2(< z;`H91@Y-Gvw!dyKOAhcs_ z&s<-KO^zXI4_fo(YuIA9XeoKNT;K5lQ1PkPJNiTIa{{yPgW zwW9j)v;g$&WuBb+-#@)mg#je~7dEg6?>2g9?@((^$HOQOYh6qA?^Mlq*~QBa$o`ui z37|xjg)hjjk%fzX@vmpoj(;;E0saHC(Fbo=bbX)3?VRH6yxw^9l&I?e`29S0%Fq&D zi6=nB_xOU+AvG4hZxN))?0nY%j>#ISv(fY6*Vk&GGcOc>jUU{{lXT4bg}P|l+F9m{z_71s>dDK75wM* z5+|6Gv;C94@vW_^jp6=xVdR?X{?Zeews z_wy_g;$C$B-&r@>i(fZhBmG&kHEUd*uYX!(t8ruj`l*)#^TEGNRS7V%LB4V#zA`KQ z_5PXvB0Ek-`ao8{=r<2&)&?);1wYEv%=jC@Yx>cQw%Ki1 zOW<$q(e07d$kq|)7-s;*^Pl>0wYjxwBEBGB+qBgDsq?i0+~fmhwMK?0L6(F=9z}lD zq19n9Xge6Ci}!#A(|sI^SwZnd4(FU^#*uya#J@TGbAov}xz!ZvV6*tm-)(ayoPJ_v zls1yS#rXZS21K{Fxu*xS&~2=dhaYW-Xn? z`tBgU|37H%?Z9`qf4Kgp zNC@jT)9cII4S2>)c`*6J4;etw`D*{d0QTY=&V^h2ir2SCH?GZESnyjMiKT+kU~O{$ zUyv`#i_VTt?oIO!Y6nfy!Se6)7%CCLcn@;xcjeo}Z1}qvE?tR4e!+I6k>BrgN|&6+ zL;)hZ+(TqQY=0&0oUGgv`hMOzsro6A|2x0U-%J*VwOi-&+-2~B>&OlGtUVY6txxUB zs$Bo!tQ0NLKBoA*#rk-Lcl?Fh_rLWQ8Nr^3^{$3<70NQhQPob-T6zG&`em*0SLp*3 z5y@Cd_b|IpXbU^{*V$M`_Ge=yCa2BJR{MG+L(m?9_R6t)rgrp#$dvIM`HDz^<#?Bz zTK{_b4g2nyI}f+#Y|n~C`a9N>wfy6_?&N4L{mD}m*`(9HMXO}!f(eK7ie zCp5a9{Dc0@;OofUx=bdE{R5{=x%_ zC(tACm0}zC&3Vt{aeqJG!@TEKFQD7p{JI;kO&_50??IwBdi?eKsri-QXK}@3|JQKM zp5W>aV%>;Vv*q>s+nL7BGH#n#j_CH~!frAUC{ zsV*5S@lG3~GV14g@A5YT8Ynd^gPL{k%GW=r7i(yvJ&RvZE}+NVSr#(?v7mpU2K{pE z*nfL;Jsk*K$u+(o={4%*}nbj`^yfGw(> zT4y6E)&HrVN=0QnS6Zr>TQ7%NwZZ@CeShiu8{OE?W#Yp3@#Q(oBbeSC^sf)zS0_eb zO@Ldv{@DYta02_fY>WiZ4%nvg2xk6|-hVxSdy_?Q2@*ix!jABZ4e;KM;OK(KU_6{U zk^l|*dA6Xvcm`sVi@V5xo-P-my*(rb7~3Eb{xE%6yjyVZZ64>g@PcrFe2Wq(-^>c2gOTk-EC?z>n4U$(V3Q@JA> zAHX%YT4f>{;uT&u=jRQyhR=P4AATlQa{5$?Xc?zk$@S=_6%Y&6+W*17 z(Qkcmoz5lgiB(;#(0ZotT5QWR@B;6RrdX-*0z`}J2V4yND*e`FR*BKV}9|c%JtLfK#dpb>m`IyH)aJvinA zB_mJzQ;i`?#j_5(Z@DRC!%JJJW> zme#YN)AeXhwO*8AJW9^JOm=V+3AEPNj%>T(nSZqJoxbP#E+)^%K3(?o)~?s;-+(>Y z*LP*ETRJybAG`*V+*u>*G@IUnbaaWoKq*k7|HcG=LhS!4_AdUN6|xcEyckCj{0HOF z%)xMv0TiScTipL6Bl0QVAKM|%=8?D2=J6R6IpKRme~|!XANk+!N-aRXL#a?+(W>xK zWK~`%vMSj@Lpa;|S)(3FRYmfmuvwrjgI^S2GZ*(uceUt+7f6-sI;vcl~e_7ar6{_pO zHFw6V{O7*!w|-jf&biXJ7ZzZ(g4%Qzuq#^+`aCAB8Y^~#e_4!~Ls~A=u+7Br%UX;f z`X~Q4uAp}{wSdZ5&t%UE(6&fyK5e*5qI z{{hxrn`2PMrV7!{tma-;`2QcG2IzXCMNW+{>tFV-#xD%O&XOmxwl0NF-pXw7&q#3` z(Apl%ThpIBKXU=p|88^h{BX{@?B6Qh9YN<`>AUzEdHx4*UajGE+Y&2agGTqS$~(ui z*%8eC!g7FYkpnV;btm}@wHuNlm;bx@iOFS#h%Tu1ePzGmIiK_YFoNu%XDMhkm2Roof4(QO z$n#kwfOggpR_-tRmTIj~Eds~C0p!O{%auEsYh@(hB3`>0-~MY{d8>D#oifGCN)@$) zoh7aNHCxPDF(+6LWM!&__4~OJ{gd(QgL2h{6NIJuTGl-~VB{bu4( z=3lA*t^V^{Mz9*qp-*;v>I;Jb*Y)xZ{>LC)mf*cc2E|iqip>(5k=*qkx1X$rR@bzC z(fSe7JT_`A(V7Y_a0VL3nQ%S)i~IaV0%+?i8MFwL2Fdza8oj?dI%#)S=`rl(!oH{b zwrq{77K0<%BTfFHC%`CxXKFC0v)g8-C3tk^2pZWO!sanLRb>SCwEPqKR0euAe2;Mg zBcb{MtSN|$74yjhRu+i=oYjJU&yBX6wn1d2>`SX_0VKdoFpYn4Mc;0=H<~Dbm7Je& zg{R;ctfcL^-fFTjl{fDa@RJotmtm-LU&Fq8jc}@_@H(_Paixv=2~`NIgDX zFkJ9IIV%u*qCZ=#^78(me{%h-WGEaUKD-`7D9H7h^4;<9N6!c4Mb`)a^Mdmnudgag z-28kp5A>-RRb7ZPatXDmKdM&6YkM8nCwV`{0FB<9j^s8I_zE)UoD|yvV@`t9LLJ2V zm=c-)Z)`$)e!Sl>MLpE!uNk51vG8am{Y|bwBYvs$bsg&Q3m=VNT3(vCl(By^e$3!^ z@@=+ExY6=;KDPNgVeulV%Nm@9BTS8r-xS7M*#EM8yAnv7Agf&MKRfIEQMl-{)#fmO zcj@i_6!UpcZ2h3MXzMLv&D&yoihtw%@_(%W|JSo0OCZn0HxM7eNVLz^tf4c={CSS< zpZ%CG{`1yi)L2}PT_onG=Xc59?T>0^)AI|-)8|-fiN4G26Y9LkY zXS4H%J%P(JK9Uv41=g5k6ReBWkO9d5WdJ*|&)<-%aTol5U(j#NU|sgGI5H^{0mIIN zHu2=Wf`2u8c`mpsen0Ua{3!!+Kl@OR7aaE_fbaD$S%)QNkiCcb>lyKL@d|hx%85vb z>@O@O#}OH#HKqNZ+CS@7md4-lkG?;*F0Xchvt0wy?fI#XM$0Yvn-}rSRak2;!t)2P z>a;S|4>G=~@L+v`_BTgFJ8>dh;LAz&p??2(ueDwCsc>?2PO0>F{pokknsh~~fnuAc zCf*!g^_(7aU_2SjVmU;;P;EO`S}&b2);pU z?b!abI+M9RJ5^g(>r_i337&5q-x||;p4@V0`#RGn@jub8zKZ#=+j*YaNsDq!$$~bI-*arWgUo*(e(5xg zJe`wwTKnXj4kdt{{fv3a5ONl@2Fxh3p3-w1t3JI3Vhu#LdUibLN&sa=q7TMf5}%c+ z=?9nw`R;UpZ}8_#+&iPaPkXlZ4%GpzE6D2`0{*rBokpYoKk@NY0xSia8V_c-Ajkh$^8J4g zYu&Bk{F_Yj`K{LI_=5Iee?>lHpT;qh{*(*FE?Bvd0&8()H$noKA($DVKfva@o(RK* z&y~(Z(D3wV(}L(8{_}kB9rQ-`hR+uaDgo5@BGWA_r)cYf`*4Ls`ut>c zxSuN4hyROz(OxWwo~~CS_?Pd<=lx#Kr}($NdIU1{n7-kyZuL%eFnZ}qu9dNVt2Ol7 zsQ=CWxsogS2(rJAt34bXtw-k9rc|SjLPuyP8c9pFigo0l68Fy}nG%hUZL0kmmYG`L zaL}?&gV*3+8&u7uC#+1K^#4I1+zj<10j%t`!q0wy{>cUGjH4ytigq7rJ0II|$E<(x zAR92pNKdzVYg%O3z3rd27jA!Ey;;3py;%LFx}y4ZwN_PC=fDAOBOb64nAY~UwkH;U z@&N4d6?-7vzGMQ1idP84dYaG);u5Z27>QpmVi&cl9|4&3#+D%6c=M2f&Q@0-< zsK4BLXKNbV%*?miAwJ7U!5R6rB2Q0fG9cB$W<4tn>~dUcD$S=*!bb0VX0^NgUpX5o z5Vj!V%_K0EB3n>CT0NyrW!2%o$^Wqm(8uN|nulQY(atK$jiDUpfAA1IOCIPWNPxSs z0&ZmWT!Q{TmEY||S#tpF3~YVyQSGhUt@d`+QLVeM>|K@C`3^%vmFQHuek{ZpUJmT8 ziH1I~>E5vyn%~*sdi2(W7uf$RXcymw@8=mO{fuF=FR1<8>#m~y_Z+qhnWcRRec<;c7Q7H^ zMrN*EuH70BmHqnkPRlUU^F|$9tN_>Ap?WMbp62O(Or#e-CMgqriKl)!gW?CYc&!L(2XO{Q&?VZ}&wbyMg+3rs@z@gO; zB*1K~b66c_1IYIE^{M|wx>`T}z)~fkM{rqI)B$}rGf!=&*43?Vm>K$m>PY5>o>x6f zjpe!EzdyRuV>k2A*riblwQ;zRzg)dPj8}~WYFitxRNrdxBz~d&t=u#E=RMDrIa1mS zMnwF@ncbsT!Pvs&tY5vagw!wK^++wG8P;+Ruay~zdLW!XoJz#6K>t^u-}*x<62f8p zX621XJu9z$(!>g%Cerx`-oShC99_XGQvaXCiZZ@*E}I^vUodasRix}ut%u>+^P!m% z|DW9YH~MGp&qxrv9_;)O@cDC)>f~@Y=l!kJY~sGRh3%{HGv_NYT(df}jX_4+Ie1N^ zh#5j=2FU{Upswf^Vl|h-G|VM3n`l+OeK?#X%)9v3)vUp6@ZUpykg0Ai`q@uL6MGx% z>b)1WVp?>UXM5bBr|F~3vj;!nXZ%DmdB1BvL<0D#_h$aKo2mG}+;r%!EZw7!Jo6Y>w8n_N7_cXTuSM>j1f$E?4I_olLUkxA$1LWe_tng0E0Ul{4sjd1-MxtB{N6~DNQ#1S_m(a136lu=eSeseS$;WV z`CM3vQbQR~HjhmYKso}BgQ0%WcQ#%BW}z?Bt;lI7{knN|E=C$$iBI50*6WjaekWq_ zEkK>u-#gpYkJDv)Tz8x9LEU4!hjw@G?%e%;_eb4*yFc#k!rYAy>VxWTeJVMjvTN6( zJRq7}4V_qhu{o24X7oNaxD6TL-tkXzf_tQuS|-Z|}}@!Qa7mPv$&-fEQ(^#*$Hz z&A{1F+ZvfuKU)c;zb_iyh@MApWsn(9YJX>Y%gL?Amqq9kkryOBV6BAj)eB_&9|+?#%@->3ffXG~B!nfm{0 z;e@}ZHhdw@qqSh~AOYPXhmEu(FIUTU&Zsdk5J6vDjGKx9-IUw*Uw; zA4OyY6|Utu;NA0cW=DhgZJJohZ^`;u2ecdATe(4f`2P4t*JsjS;rprLNF|q@9Fzny z0q;36%$S0403(9yHNL=|!2ex+FX98(A9-NT;5x{OWzqj7Cqe8LEiN*BB>p|xps%O5 zl>&wB7m1+6P}hrI|1W#%@q*yCd`Bcqq>H!tbg}*CX{1c{nIp?P-GA{Zc;7RsR4|^Z zowW>H>XE)ZT7#?Ss_l@^cW{l&+sM_qglDctBHRh{f3p25-rujOTw4p4KNNlcM*Y3+ zs@;RTw|1ZI-q1ayI{{g+Zg-XLI@~+7dt`UZ?my}^>l^SA44;I3Wk9%qI8APv>#%5O zYgSy1Vn8{d2Tc37ti&OWj&8BCtbzGAIk0BU7&nuhnh`ipgQ8Tw$RVsCu%=ZFUu2MS zXlSERl}5?08Pv!q^{rgmyml>L4;FR-rn6Jkt_R>%7{Tzuu0?gooDq*IO}VeZ_hMrY`KqoYI52{{j+WL?b;v z!CRF6L1u+K4THQCf6^b&`St_#?~gEo9q_mOuzI#NwsjTUdju=f%+%<)U@4jG^MU^{ z*y=mri9Hd&|IXkxzWlI!Z?*Ab;m69?&R5%~jw2ZyVn6s_p4X!PS4RSv8>A;tJ75R! ze;*lfHxOMko6wws@m%EvkxT`vMf>KlI#&EA(qAHdL3K2Gn7w!mTEhc^>!8`&$b^FL zd_FS3+ag=MFOH-6=WX=AIL}!V=|Owmmv5GTC;{vZBKKc_v$8Y4aCGba)@e+oIt~l} zCcOXl`wTm~4D{c|ReOMp-j|5~I6Y?}YW`lPBlR!g`&ZU4)^mdMUAm*X|Elk+FRc$} z+U5_j20pI0>R#CWLwDZpzV(yThb_%IOtq`M=SA3ptg%F)wLV>O>TNA_*=Rh3@k3=A zhKMyo#|~p=8rhN7X|+>wM9!gFs*wOQ@-DeTPqsKSMBP;~g`7YtSGM2XG~AyJ%ou^6 zy^#vWvE%nr0y($TPD4|4UdIv|)jp;AYpZS@h`zDQwB3QTDFd7z?P_yvEyK$EW#7Af zziQ1;onB4Z-j$X9Y~$}2<>_3UUi`Bov#jc!g5%MLpR;1NgXm9wK(eRwns`?9h9=TJ z1N`UHCf;H-khV~KiDqV|lZQD1N`Mi3awJ}W@i26`KzxBp$Jko20pbgk2b2zhsYUes zE1AZk@vrL)!QLC({dxDQ?!Dayx|etN(&gxA<|rcl~^4XFfA^V*{k$ z`|DI+y~sMcy72&<&e^o4)S8kD+dpW3QEgLQg@5IAaJFb;0R$Tb5Akmega137b7!!5 zDl%Z32Jf-$_2{qAXnwo2F3)vvE>kw|hY1A#>E@&r5I>+9LS_UcOL(n@0qlr>@qxa- zqyP6q8kj4*793+)@L%G8;!EsC3W(F-Ki;vV7I{<*ty_xSn^x&-J6FwaE`R!iMlpyUB311PAE1)wKDFLW%=c);WhGIV)!xs^}p{1qKN1HVaDtt=Ycc--s(ZjP_rKBngQbtSlV;x zGmg$|0sFqciZAdcaBnZJ z|71LXTXMd8C^pY$JkLbi$L{alihm`8>|fUJ^~yW-04f1i2H$20I@@hSA^^wsJxG1Q z75EygE3}>{_J1mX3Q~(59*nC0#aps{ip^cTbm897+WAcd?eX=6B?QGvmT>!=gJ|%= z@BKFadivj^a?5^8M!^5J`#pjpS%xD&Z|YkD^lw=GgPwHf;NiQDt8qE@{*@r#THoui z2Oc7d^Cb4$KS0Yj?WtKqCw4xf>;K#I{(6WNF?Br~z5icpEWZP>2Y012z=3pxo)&N5 zrrjsH&*B%jh91F(v;O3})3c&y;9k1cg#je%FIq?rsyA96wDD|hPc3wFT4d+;82l6t z{SWdC-+~1UrW47l9M5fZAFn}#>s{|+@UI5fjvmOjs_*S}K>{V_h3J6gw9!(qEG zqMhw_EVoEyekSwDtWyO%E9WKIj84{+^`wWX*1f+d_J|gd_}7zRr-Lq*i5dAXp_X^osb)tSqvpLa;CX-J3Ep=vV$KcQO|})<)332%p-HUQa{no0&uQ zSobsRz2mwYpzoLLj_oed?bm&Y`6Tz$xAXcf++JL7T0aNpTbS=RZzz33{>f23k0p5t z)_?GCj_Fm{o2R$uYwuH?)tZP-Uk^`;oj!)3*Rt{pKb{N5YQO*0!RBG~{rMHXg0YO3_*Q?+k^jy$S%AP`&j&Mf(>8>_`=`% z|9To$PA;lq{}=QZJD@NDU+=N@Ai1DApU$Jgc_Ix8qLm7{U(Sd7Q=g|kQr!0>fF4I} z4BzW_=9ug!W)G4`j!|S#4F&z1R!>(ek%4(F+F#voh3}1Al^eLd9o_#p{@dqRV{c7b zV`K5~{H^mEzMiAlE*hm4&V2?uXW$<{;vCBJ*NI6 zJbkW)rJFq*9i416ty80Nem*w4SuaKo%wsXDHTaY>&jEhF1plw&jkGJ}Fpg)|dSfKa z0jxLYRLY`Dh0&tmK=kV!ux4lmKK&6|=oduyeu#v7hi+i0o7Kh@dtoIqZ9RqJUyp>o z06SYA+`gu|f=ZRWSPyHkV$?U`ktL^OC7#`ws<0Vsr>w zs&{7PD9z?kP7LFAX0)e$c=fZ-%)62q5O0QcIaBc3M`%{-Ew#=54FgCd-fBoWyP3Os z22D~sVg_%eD`rE{LrsI>X%^Es7FW84`Lr?fn3#jy|ZHdD08dchAqC`-K={q za{`W{Ux;jceh{jaA3f{3G#kfgomy#O-ec6z{{E@)OHPlTz`R5~VHVokX_9A#A zSF6v&4|NlJ>&J?>AEqdiDG%ej^pwStHh%sJ{`bYGH|eAE)HR?>z8pWdKKAtGjwLKc z^_|5(p*=DipB~p2ogTWJ|T zLZ+ZtEgf%*d68xWn_HOdhtyaoZNmqY2C^Lev%WX7(0Kliom)F&>nG~nx({}r@1E6N zxO-l`X#EcI{VbxucK<(vE^xo41L&2kis!Kn=VdbdCrkw#)o?YZK{!!VJK*nlK(E2# zKM(Bd`!}cTX5xasX@6NQTK%~72B_N#)XvA+b>+H_vxfEm+xO2Y%DWPUJ)Y?Q=8gRI z3iOa4t3PaCjW6yC-Y3U?@d*0A?~e3V3Mju<<|vLs|35|tu$@7Q-GVkjDvbUX|DvyK zVlKE1|Cjw2&fj}qc)vP4u{tF{FkTQZi|~Ht0JukA&$k5E^E1>i=~9l9|d$)wE{gnd=)bw;iyGXG{Ng`e5|~86UCcS0@YUkoxud zkM);$0cH5s0hu{#7p*XBEqwFiXQeXj=k0%12awmre{rFk_;Iu zWwh1fd5iCD`pzHQ&sR@U8Teb)$QrD?Se@gVRkIeF;wMxM&(gY~br`i2_i?^Tc3b)h{W_wwllQgv?v}$a>@wmoOtCoj|AHj5xI<*?3y^-Db+7vlU-L4!(ys)QYQ4 z6AhWY*@JlvR%j$%;2Btm^XqxG^J&Qm%KzfuZ0_iPqmILPyarczKz&)ga`$>z|J%$U z{<_|SxvIA!b1#D9?aEc$h(0hY<5^sXNZ>Jag1?Kou(Q_xq&M7h=zk-WU*V^9qTsvm zwTIF6<^spR& zo+RJz`6hEz*>jKmtN#b~&D1v?a$*0zWm_YviPfG+<7+_wm0XLBN8l;!@-5IE zN`Qm3eqVQg*nOI4(U-`OeXtnh*6~N1t7FaSFc2VD7YAmx>#Ng4ZqHkL^ri+@ zR9a~=n68tv5P2BV{U=k1_iiLcdTXmCSP$R{I-|n zCSJk-;(?T%#QUY6LIyCj^C6jmKdX*tJ;@4OioDr5FRRwV)@}0} z((O3tSO3Q|VSkPA0XatLZ!`-s?E|7LGxEFSIx+)$130~KdY)5yc)Uuo{^a4j)kM}` zhFyOI!Y0CI?0cGu3uT#+`=QNMQL8H#%`H^xXY#04mpPEi-DLg9ugoQ!ouk^h^LS_P zdQA5p-C_Nv?)Ol4x9+p``t_T{`HzD2oyFfCpgxs~`Yl(d2iQ?eVE>{sJu$%jIA1ex zG|mx755affDfhD0^eq`*N^hx);G9>&KnJ$>uI{1Q@+KJfVw1F6R(X&%7{8$Tf9rGJ zo#(d?9=T-ohyCYD1o@Ew!GD;))<8S~@d3&V@;H&f-ebAk%J6^t3p`GoLH%zBVLd)0 zzqS8+k}29hC>8&~daxWG-qZBKZ4duF9iC6Q7vJOF^9}j!VG)zt0fj|~`n*^4d*97_ zO3>iH_#u@8S^)$5rsZ1>>f5ljMKz2`jMt*|ujQJUlW`q28&AO~U*uZ7hQ;;|?CjU! zZWFOD&AGAb(^7PMI|2EBB~x}E?A$}vualqE=ladY(-Uxi@P9HhVIJ(f&vf85@dOU* zUe{fy->>^!-0x@oCU#fvUItok$6Gj_^`ky=1=?|9F7|J~z`n-sZH~*7*pPO-GUL=* z6aD+o_TO< zEETxVww(m1kK2f!wr&b2(EGY!_;`Q5Gio!4)ZepeCUyRu#lyZ$P;{x6yJdouI>enD=>XpYFdjuEhh zAEEzW#`8N>eJ8769*)KCq~EZ1K1V*i$;!H&wRSZ;)4m{120fGbzjdV-kp=L#YVqn= zq5y}2&B@oatJ*0w&R1FntINK>$C9BdACKma1)%0G5x-zxY$wl0Pk{I1|2I~v=OF&u z-m{Scqmk;{@*R)%J&Y9C@mv4@%6wk^Uwm;vZ!jBOE&dDU#H_kLxlHlu1=&8UrgrP? zL;c^wf1VGT{ZuR=ALpA21Bll5`64wU2O<@e0P#V%Z|^Gs)ctW=*;Pt`rMyKKK-^;@gojYNr#tf#BbD`IhO(L0+o6UH2P&Prm{)GI%p*(*;0z zH7Ad)H~2T2`@rhB*3zvjS{GDDv!6ublo$SK0jP7+JtMD)TO(p-A!<+Sk7#!;Y7c0y zSRK=vvUM|kD1HTJy`pdK*6pobst>De@uPl1mXt9&J$zR1DMJ!X^HwgQ{qJ6jq*4A1 z1LfDX_iFEqhx|R_8Zs8UaSw#mo98qQTG_lQ_ckx`@pJJ11hLuYIXj;rq2>QZRuj21 zhM-3wy#dk}D3LwSkLOR%W^4f^ffChiJTmoguI!fe4Bf}OyY;)U-!A=b=uWIBAhEwB z=5r>N{Q>-)j0Jc+5_}EzWqfgM_}qESDD2iV)o)=5jN%B5U$!~+|8RUCaI}w+OL8lI zWv2s*ey0PS(L@2SqzA}+?IWsJT8p*L1b>NVxr(!%&HuOa_fqKppOXD^G;C`XP^@*I zD*uB0`2W@I#or$ZAj%8U6Rj2hi3=zdd{-EO8A02l`5z_&=xAyTjQ($k{$CAdURK3d8G3KKB1>NFLwUj z8A-m-hC~FPCu4ZJ?uGTZ`Yvq7ap>_>m}$|z%__0O>}Q}e-g+krWt#Xau#)Fsyze%i zF1i2aFp#zCSL%(r+jd`M67dgMiTcvC8tTS(o*9|e91iKc*j^mp-BGPWTT4|V_#QLk z+|;z%{~}$#c{=FjIk|Rn-^z?U^K3t6?atdirs`jv+1i{HyI5=QRz;5QcKA#?d_vsH z)H8!iKcvVL@jjE7hu;`)fH+sz&ktJeCRb>Y_8Mr#&)Z^MPGUB__%}z;yeV11V5DQK z^A5gQrS;oL9ILKt_Av&lY6Y;Z57m6;Ogz=6s83HhCd0R%uyvTp02cRSu;Mo(c6%fk zUl7JNrh9*PaK9z`{fk_mSL-e74mSN0X#eAo?gya%PX+DzfVbq6%X8g-Lxk`t^ud2R zZ(|j1%y(NKV6Qg2v3!n1dl{e71FWvwumPM5Wc`o&-zW#84UN2)_$WVeBTE41y)X!nm> zu+q%-{U_HupdYS; zoj=<7Yv*AsfhXVr>(=+zi<2udd-w14g|Nwouq2j1W7$8ruk!)lX}0KVAlxZ|PWP$N z+RmXifBY%d&%sSIVSn}sG%jeBpfbSB!I?R;R!_#B zkO`OtFpleaWama^x~^2;RFCWakx1X4x*K=jtqfBUhFh==x8yjCxLT9p{~fO42UtW;<6XKR5A%)W{iP4MGT>r3=vCbA zLlj{3>Zh%H(6$S}v(=ly%)DrSyQwb*|KAYLzx;pqMjwm&=<#G<8ILV-KhZCm-PH8r zyZ8VTA1o3=+$$;K6Bq-tn857c`^n+@C4N7r3T%MiaTUJH4uC;g;oF75M3t|t5SS5h_i1zn3@x<&Qj|yk-efgfCyF6AN^r8u|3G&YDH5|lmQ_e&-eGdy@ z2F~U+eb==fu6_agzZu4QRpXVhzpv5%+wlUtz>0F>yE(s^tZnv<{MYY1=4`|tstO7`I8 zu*aDicI(to=S#eX?l-GXi&yF)mZ zWpG#{d==h;4;oDT3k;bLpeJm0Vuq)*hhSy)#|!u+aYG|}CAz0~Kl)lNUG%jwL7%2J zg_ePN2(y45YlNJ0_!lJRvF(GHVeto!t_I0 zu>i)jKcp7xNPdH{gE=`vYEWyQtaq4-^FM@b5XbQ)XX_=-**p9%H+q}CY~w)x+US3e z)@(^TGgq8Rd!pDWa1c_YkG#Quab=w-Iy*=0(XG(=F|!=M?yOKBQ~wJ_^((45s_x14 zXl9PT3V(Z)Yj{1H{TMt0$AI?>(f7A-eedS^hd}3Put$MI<)lwm@@~+`QJku%vcfV9KglNwX~-C z5AgB{XzB3v=y*N&+5jcfCs+^qBLSk{6Aw%_U}5~q0i{JYdyGw>^Y?vNb^C*UJB6-` zw_zpry(ki?==xyMN1`=aIa*w8UNm^JbJfscGU;a${P%Qq(bwhwpg1@$$j@_rrpN{V zcdv!-`^e4b!z|*15dR*Txk$=^nUJUF^c~eYg&5VbFflv(T#W>{s=@!Cxjy%xWnbos zy^B@Z<{GMrhVbWlOs1SV!sN>$&4RbjdOQ0EPh`b^#Jc>F$Ic41!tX2A^ixeAnR|$) z*-z?D&`<}c!v4f^Ah5Q#3#Mvl?3?KSB@a3%Y8k9Pe?cQvOfzr*$Day@3{ z8@rr4b8DP&{s|tNCz08ov}a*Yi}N{qBbrmB?eGo$8|SasGkGANGb`7~jul--7L@0s z(Bk)Y25}891OFqa;OyVMluVv~gYauQcf#TR0@|-a0-OQ!zmof};d@yI&(3mW|9r^n zXTtn8#GB)pjNJ5WC0z&?N3o*w)k)VdpO z>m)^IQbz&=|IS<;3H}cxHg`CFx$)m3w&?k=fw1^!`sn=LZE^yX4LzMN>P5dYAb!G? z8~uM5-M{uB7toHuYa(sN^6J8%OT>$=A_s!mV#D{W_(+9<`d~F^Ef#?LDSK1Wj`*yEL1c&y*U128vUtMS;u|A1+3-QJI!>?=Xl zHO;LRf47tO`z-6j_113Iw!Y*R~I zmuLNKP_K?m*qEB2e%+nOAls+ARQIWR$NCM{+ici{pEjO-Yha_}^#0pR*qo7fkU-CX z{(Cr{TiNUO(jxHC`8Ovc$}xPl+%*gM@#ED=bHv zk~1?ebG$C-^sjf}>U~_#)t#?fcW)$@ua64ObIJ025=s6X65=Mdhsg(=8OC=MRUYRd z*S}Xk3@6yRiRY%PYq~a-=>;=4XMQ5b{}|WuX0F|pXnk}4)%@4+cNy`({o0-OTGei? zE3xe71Nr``|Ls(z_s@PyBjE-I5@$V(K3yv`_z#x7)e=apf5CqAdhr6p0*Iy$bC4^z zs)4m)M6u|chsR=C zMEbr+fUpJci&x(-L&&|{FP^|y^N|AXPvl4I_jp3_24w%fqu3W7s}{hloX0o%u4!#U zSBkf)ncG`Xmwh#x^4Ko_*8Mz*#b)GB4(+UpUhclrCKIKozD~@vsxdA z>)#3P^-f;Hkr^e{O0i;0+wn4v@cs4@Xrp=RA0cNR!F#2ybZVVls*F|IUniZxoU*Cz zvrnD+Tz_~b5{SE40qK01%GdDmuR`fXBKqYaZc3v0IVS@^qf*OiWpj6&!lVC8S@n}E=(77;~BB&SFI;1WZz$*>@?J)Jn#@l3#i88>edPaK}GP4$_R&JdD&f+=O z2N3i-_s@T`@6j+}?_wO62 z;NB75Z%wfHAI;}RaAaZDA~)Juw28ffu}FiUzo*lKPCua!AXP*qt4H)l0_2&ngh-22 z_C?p1=iOHi^^q99J5oWkdo1NqB!>IR6p3d?yo^I?&{ck4?xxg4Ae}|zZ7NG|GCRWgU^>p18yL*B7 zA9uH>MtEm@^b2(#tGB7&#ecLkC^2J2^xMNm{JVE`_q(j|yOBYE0_FCMO&20F#?R-m zapQCO|3W+!kHH?6W9?l_Hp2F-U;7U#M~pdD+&UplZ-se@%CGbavr^t3dgi#r1Fr@S zTbGNA^W^5}xl8w5@vq)qutDR;$VGjX&x5#BM!(Nvy_6p#3qC~$SL}btBy6h-WA)1f z(s@LwQ+kl3I^U}Mc|oCh7WMp-W-UI8C(e!8G8#t6I|C8#gkn?xL_O`?`csWtP)te}8vboGIG%IK* zN7dyjcqJ-i=9>+dyOS$x{ND~U+W&uSB*3L~1K*H2V13nGt)FB4$8Ht-ZcYTz`?na_ z-IQ+1>i->J^|DRc>E#}jPzNt>1(3C$N~TNosk49Q5ky{wXw&M2jsK? zrwM8O+y5i8dJD5wH}`D$Oe^uVcmR5=Jn}(wi(xTcczrZ@ksUp~UeF((VTm31S@+

    Z$dIW^nD=&P}KjO?B#XO>5+Lq`(_It;G(7M9_d`p2-tm+DXJiA3n`BTE01 zdg1y-V#_NbL(B=!6wCgN#xujuZc_G_dJF!09joI!Vndl8nI5F}AesJ*)jS zR<)fprf62M9f8zlZH`u-msP!bEqsU3ur8eW3s$|pFEeGVjMD~>M?NUk*PlvYd3q#( z&xqn7$iYw1u;S@e&dxKS{tY%QbMqEHXd-d%^4q%X-Or?#L2~@$`=#o^EFirO${yvX z_@9%bdyB}V6EZu{}4RsGPdiQ%B@?mvtQ(x z4Wxc?qf>M$Ml4g35z-h(a4+iKMtQc>|d85@gH;kQgv*}n>v z+>3Rm@4iQ+-$lrQJ+SX4;se}|d{6a&48}EJcA+&~RudWnRI-@;qs5^mcPmGD8CTco za>{eP|Mmv`b$i+N8P#L0&xyV1V=q0bhc*mA_8^@w73cmF@1d7QJH|25aU@8;~x?Du}2 z`)Q@}O)&3=Sye^?wKzqVz2?j!x2NPFti7Q~fauieZ>}vM`x^=q*q#{ig;jizXRXwXCcm@nU3{QB9<6a(ap?%;lusnOSYxD19E)5~VcP}zvFerbM%*`=m zSM5ZMWjwV%-_z}3PwIPqBDd=VYJ-M=b7f~R8~q&7!9_{Xm1}05qWN22z&BpPe|tZ_ zS5yEv6W|gySDMGZcd2n{yYw`AfNshP76TD0bFH^P??$)P-e|4Ei2hmqJ2;Q)iR*fl zuc-Z1kJqDq;oS?}Uf22|3j+Vq6QEZvG3+t4XTxO;*TXU<6J-?tn}C)+)F!vi(G_-e z;7aVOX+>dye_szKAJ2-#R*brW$$S;WZ z6wk&n#ZicVkJSAIFEIyjE$(;1yKx_tYF&~Ym~?Rh9e~cxCG+L1A!oEX>r-rfz)Do_ z+npjRWV?d)f#m#;g7*z2>(6Zvu>fmJ)CK0rizQjYP~JC$XPwHWp3$f8^jb5DoME*h zD@5PlZ+wdg`Ut<2vtx}8St%B1m-Ao2%GPqcjLl9e*x6Jcf^B^k zqCYZgg2OjOcPo3oKvFE_?`z)Gn0MJ@z|KPU-!Mi9QD7}zq!6;`i#7c<@Fr4 z*XLZ1zmP2{*GC>7X#b3F)|)S9{|e+AQM-?8urTkZuaxxaT*I}x85wXNzo3(NoW^xq z9@+KLgGiX4m_Mdfq&4JJ0sAW2-TyB#uUhbH?ovLVs9#g`{Ds+V*&Q(cGx79w&3-Q5 zN1niTtyB|-QI!U_m`LDn#u{tcHi5$9hp|6$AU|8B^k=uB9kIgll~+{C{cSB%#;pD*xV zXyZVAfy_W>oOQDt-NE<0?==wJ%7Czkd@ihjkO;~Hp9%CAmVz?0*xa-7!=otj0Gi;- z7*8B!al^L_9g}O5o$&%53F@xN8G!$9gi$`gO8FYB%4N+R@5(AQ64r(lI~eqjrlx-k z5$ADv)Ok4TrXR1^H7h!9iK_7axL&mc8_+ZMtFlscRo0yqB5Iy5SRwYZco`%|eCRrk zL7o`Bh~zCfhAuc$H5o``Hi?GHJCGE?8;HyqpZ$iTO9`Qmkw$7sD6cl_?Z{<=Rn%O#wx zeA?QL3(0Oc2N~dW4Xq<1>(RgML9WVuyiX~)n5+93pL&bqYs7h5Ar*a5%+o1iFxnJr z^J|YGqyKE|xd(~%-A&Ek>120J;di%IP?;#V3ExRKB)s*Tt`DWD*WL-y=5}}H=#4pQ z|NGnOW%74*qRh?wqPOx(&MmD{+B>~6`G(F4o$|G+&p#pnX8y-~g)YSRccjwdl)Nin zk?9v)UVR__zhL?W&I94W0Kz9I^6QpCVH*^dfwEu|_J0N2ez5-`JaU?-Y-3|E^S_-* z)cqpAKw5!sk*&5Zw6Cv+%nx?pO50@ z`jbdhJAO@jM79MZKcHbhU>&Z=v;DCG#t=E$9RII*XCsgReREx=1Zcu4l3`lIBVM%3 z)iHYgRzxza%9_@<{U!T*3;pmK=zkHLV=)@aJn`E&2ED^Zi$wqJY)+KaHqZ|k(SERfT$qWW)BWv z?9ZCy6*!Z~fHuxxuidt+`msbI=iq-FgFI9##tcm5oHj_z#nAFsH`aTa$&mE!JFCP> zUFWEpS@;b{_XHXHnED&hg%bNVpZNG|5dK>D|i6jgCqTtM=Q*;visP|oLxj={H65w=zmy)Ba0}dvMcJ8#l4!q zzQWE>koWb24-VvU#4znU+KkWH5#0L1&PXtO6~4z2Jirm(l>eSL@T=Kr=6Z7fhn5~p zD@*`f2-3{`a|S?>0pNrhXDK;lE%1LbRo3Hk>%Z>5`(J%u`22(Ihh{Hs{Y>b8KcgfF ziJ=^E>kZ>S2=rfqEE*2WursLt`*0M||2HrdOuaz9h!^4UI4o`P9}=MWAD=AnA6A0h zIMwV%Jlo*=boSYXe?KmApkx6B8wzv>BhW$!2@niG86YbNq!$t(><6ChH5RM-!y@B4qVQa@5ArL+3Uu(p7nW zbS?oV!U9Ia^#}61+e@NF?s-!J$Sqw}cC+|{b?4kDb5d91_78aOhiGK`SiGM9x%%xG zZ>GpS9EF>`$!_QS)c<-YA_}k&y(fcIF5J#L?n1x3392*fPN(4n#}>u%cX`YDX!&nJ z*ndDz;jOcB&Wb~kV0~fq;3?R@6+rRH)p^za0_M%OVf~K)@zd#neFhQnMdZlbKwiv2 z@SzsD6p2Yl_R2QiC?8hKYf*&eH$Ts7voa`Kl~2@i9`r5O;x%O88_2|rV<|cr1^TS} z*IQyu#D`q1XOWb5AP+A^9$uK^|12sGPiM2L=2~7`jD4U?eTi#ozR!o)J@4}8xjU`( zGkggRInr0;){I@PF@2}b^{{rp$gh*v^q_hsYJ#ZQwA=qkHd$XtfiAp5DW)7TPq8&R z!wO@wk=J4Gzwph^A+wC>-pS_dUweY@U0Q?c-;0uWsOss&%5+6Lmrfjr3hVxQfW9tR z;p+brnaZ;%*cIK8;aBK$ksO-5@b3q{1Mj{+bblc?;u#->CosGLE(pr=B}issr+_&EIG4G?dWx zqT2h*vV8A{Eme9pRp2+FU#zfD_foNQ+jebJZ+cuPY+0+PB$zajPvCU1uy2y62 zhioD;4&?bUi=gl($SAab!Y2A2Od3&q1s(YU_kQKdTb~@Wd6Z$w0CW2FFnkA+Udyl0 zeXyVFz`7QIGqq2pm)q&E0jp~6;R>4N6CIpB#8)WdKjFW1UEgr;BcAyko?>^z8ox$( zWXwRYb6Dg~$WhGxva6VR9|QQU#rr_;KME;0kn>uf_y5T+_dJMpew==p2a)Lwd`_O= zJonaIlccQGVs6JH_yWxDxD$;tgUJ7e>FDHKv}_AjraH|TK!N{OIsSVg1G<1lCv%+i zU;NAXV+(6P(5?gspFklWLQ2$cBXX!L2;E;tzp=qd_!zDvK0X8d4@LWrM*oZd&K!{p zS{#e_@UjQ`E6NYshtDUY{AD z+L__$(*r2yHkUxJmUF|uL(-VD_am!PdGIb8`b8wmW2};gK(>+XJMxvTPtaM!){L2{ z{7CLCdp7r(TQ}@Xdb{99#*SKCog34zWZA2-PCo-ZpP>1SKt{Y>U8nEP`X;An*e%HH zHLD%$oTC&F2W{cHQ^5YkR5dNZKem+UMiZtTO(FYv8*Y11CwD&mQ2O&;{R;Ngbg0 zaR>IJde9!C`hABY<70||xNgePyvBDQLr2B#rB&(W{XUZum!#jMYn8^9PU09djy`5F zbl~Xqpnd@td5&{^lwbBfj&)M$(e#^SwPX(Kzp!*e0=TwY@$AMRx*PZ#Ox@4P*#C3T z|K|FL=mP(R@4vuwVdWR^2+yF;26G4xVCa5%e-Q`lN7VlW{C~$&`)4mOGl0$h?}z-^ z5Zu%?edzYk>LC&8_>cUbumHj<7?nN6X9^jjhF0F0;Sh7U;B zBElEw{g~mctZ4bSZ1CN29SaE%Qb6nn3-BD)N1~nHuyOKZatXiHOzPJzL-XGbmLKHT z`LL9*{+0LLS&2(ZdzO}_z39@~G+@gPi&H?>1g%8`KVtaSy{W~miLJr_wET?`y5i-wb}sZN z%@Fc9?VG26!i+)loqDtCN94T?j->AGHL4!hr{ZyWwzl-dnMVKf3&@*alwD8m%z*5D zM_w1%k@Jjn%dq78zi_p~gK4g{mXCSM zqCdKj>$7#1m{Lp6qxBwb`9;m|7zp-dcy?cD&2RYul6Z&GKT5AM*Km5;9vl8+Vo5J1 zZzl<>g#MU7J3e{D^Pg_FmqOoA8DlVQ_-%DT2{P^&@?yE@+zzW<`~PVC#^w-xKT zG4HXO)>_)=%Ny0b<_PQ8Gt)sXZ1t-8yA{~qnV8r4bToUU{1J7GeX@zv$xI~2X+*Yv zb~?4p57B|JN>_vBDnF6ybTGLwPtpxb$*INe`I_rsXD+`{nJBKzOj?U?QUbik8R_p> z3|`+w3a-q%j6v#!)Zb=2O{>bTI_3hHC-gS&wD;flocqsc@{joCjQ2kes?4dm4*Wj` zM|c^DVs_H|+vz$Vx7C^?X{z6nw=Q>-Jl=+EWH#G^7i1-Hfj~`q#r#d3kA* z(g(~pYLhNW&Prw^8z*ZfY4S_MuMLfpp3FUbD(ReFo3_9rSxTQ}Yeu3rXg#il8O`q^ zwVr{^4JloeKA3z-PEQ+Fb*%Hkt`+|g{Zl)RXgC1va~hHB5uiH!cVWw`*JT0)#^c$- z?;pCpc&+gI71n_=z;|jjSp7GP%-@TN0gT}Bz}){omS^kTzk}-s?-xh01@6P&7dgUF z1sJ{n?-vz#b*bRH#iRN^EPrdBqSuLMt>2?F5+E!AwS8P2?Afr35H^fMN3& z*e~!O-xpO(gQ##mKAD?#%4h$md0uCgXhE-*|K`SdlJYI|%{VoEBk9e2wtvwJRd47h zB%%|S$HK?XYpvSVihu4{;&jo^EohG}I$%F)Szv@{y?eK8AY zEuLvaEw7RPCy{f`TKEmWs#-UC6RP`-F4{G013n!w6ZH{OVKJwZ-J!BBuK%{^X zy;aJuP_O?@x@Y=*a#}JtsU^)3VN-brDfb*yE*W0-wcn*?!uAZW6avjn>a$N<(U9oldz{ z&#jt0MoeH}&e_d-`k6oDpVsZI$Wh7yJRav0)xd-EJU--{{vs3CF5LF)QHDikoouQZ z@3bp$cu|$2##5^7ORa52kCje#Dbf3A*5hi(uxsejvRyWnUQJKXb7_4%FtPw8fSy_Z zJAcf%qIP)D*VjB}C*k#z2deuAu_t4EwetP+D7r0OpZ-VPlh4SMKM_{AEgiX?lQ|m1 zY)0SA!+HL%hMkj-nJ@Kux;2*Nk91v$U&Rh>PFych?Qv77XX#+3D?bOPH1<{3WO7;Y z-wtHRjXTo)=SV7ZPRa3ar>~;ZXK(?LttNLOV@zfY{LAel>K|ASIZ)gdeuBbpFbePD zh2;OwVRbuicpS$ynX~GNj&Alhp2CM0TE33|VEKjjPfMVvxQ*VMF$+WlDj!5)Fo~vM zc_Z|^v*hi3&>}~88_w5gWKUj^7X`bQ|0@+mzqjG}uj_rWAAinK3~L}{LLm*pQ{gdm zM4$IfdZg=PD=r25uKAcWVOHnL<(Eo3mtII)rH8=j&Z6RS2uIT+=UIc%{YFLfk4z+6 z@;s^ur(p%$n&Qhr(#H%cJ>KRAo88hff37F1XgI5=IcvyFfImRQ4`87Obpbz=kH|Vz zKCbLkJ&P`ZeXH*?O}I)8>ZM488?uw=GV}rxqBmT6tc_w0+drmq3p}b4>06Ko{N=Ip8^(Lem3y+?>4$d* z*>t@*CUvtJJm2TpL6O^|XHeN>t?}C6@UL7R>isi<5yz?wQ*X*+oazyoI`%d+vLc&b zH9uSBg_(uQi=OEFo#@cyT;An5>f0(UsvA__s7$JypS_F>wkM}~(q?6p*^9A$V|{V} zE&ix{4j)7huEo&5V>_Ms#8q@ZJBVI=Thj;qe*AH>LH;OM;ZRnHQ#72zIS5Ix6F&40 z8a7EDNrtA6rvq7KA0VmBxpp-e|7eUS;L6f!r9tUbW-1H=>xC}UZj~7ur;6I2j`#qk zF!_5S-?#(cX5T+MeuUqz-~r;LKz~F5!sajR{NhpZzhDm`4V)Y}4jbb_?A%>)pZ^Hf z_q6={Hs;vkm;$vTNbHB*AE@#f@gL8H4vdl<=krL+A+1$Ye&_N zt{qzISG%pccJ&fi^>URfs5)Il-f3r6jXge$75tFnNUd*Xu^vS03AAI4TgMa&kHI)Z zWc1l>L%TpW?aYy3MC&HdwPGU2G>lcQ98mLhCYR|1I+h(zCG3`!nIL^SU5nSE6W#|| zJ9Pdrm2E3CD%*3r1GgjSma%!|Tsq`8WiH;*%6U9HrLq~*k^f2mtZT6u8fAAgBWWC{ zY{`+?mB&0n`xBUj>wGUQqjnr~bmwwHQVWj6ENU|mjQ|)iXo3`pJZky7e#)5p9T|(k zcl5rhu{T4eK1zSqw%Ie;JC&cSht*E4?Nn>1b*Zjasbu58y_`v@896|!u&?m^Ss591 z6WSkUaSzKQeM30@Quz`X;k5KtEc_4XkTV}vIDwTAT{vA2Ls%)+%JyJ&Ov6L;6f-6- zq{8H8GR#lI#`%@(EIXJ)XOPdxIe9MqBw2yFKM|((j};s~@8;;fj%Y?#p4q>rfdAv* z8iQGdZd&~Xc7wqetUokizHbC8e=7Qa2q=u) zUy&a8j@v?$*CPW_X0Nn5+*c?U$dBV-;+-bLdvWC{k=B<{|g#kX=s)loV=fG#U$|w_~#o~)#@+TwUzby z;k7Dy6FnYJo!}Pa3r?Ve=dSqEJJNCH&B{g94z&|%57r*4-B`Q5_GfLAM*SMyPOkb`$ik=gsZR3I6z3Eh)EciFe2TLH9e91 zogK;GnT>v)j>mo+xqPEIzOj7M>E+MLdt`rP+cM#H3N>&YD$VIz_CfX+-G$6<#p4a%<)D%I}reVFa_`2feAGZ9%`Y-?PP3KdzI#LT%kS^h?@{ z^B)MptVy;%uXPGWTI|}{8X2G!ZoEPtoKj3&N4}8fX^k_jGLUuA(aStXa|A<9h<&S= zJ94FWq66Dc7UTtP=`)Y?u(`+9kPvjGt?Pu;o_&fb>nS@s@ z=7t*Q9}REo#rv)(tw5KKg-OfgjfQKn{Pv+DXC$~0hw5YJAoa_2a5q*=Uu@^SkrK-# zM=%TdQkdpJ_$1$ltr>G%k#+WXseftvbZ&Ap>qzadCtC!lt73(>1_Q?b`tUuoVHE!c zpVRmz(HhwGUPu8YK;-a6J+H6CCcBT=UmfqoGrq&uePuA`a}4_bNc6tnD*m1R)gLTI z)qbGA&iccm)~}`n2roe45!C8;o{zUq1T4G&N&w#*wt@^m#EarMYik~i1H@)FkeJn$ zmlH*fU!mUv-4Xwbs6goZz<=yl^cPVAud&%it&nG(@N*o>^zZ%9rOjD6)~T$64SZ*5 zcb{SIO+FG^I)JDA<9alT3 zx_{+Dd}(JOE$k_wPBb=eOx~!xo+_hvTD{`NT7T_deSlg3_S_1+Xk}V-EgO_0e;0fU zN6|s-Ojz=f$bc>RhE3U~QPX-sd1-m$>}GiXc$j=+x|w{K{gnNVkG~Uoe}6Ro$5`&f55^uoWm7D3Gr}ke1snL&j_eNHnoeigh#$R+qUrH~{tFSJ1 z&S&T7Q4{;t0LK&#&rrPE$2jJKM=uQ@nWroMwRE%*qN~5QfxO0FQ2wTmtu1@pt$cfV zbu6ekmC@A?t7B>x)!wMxRclr2j|AvWzx0;uD=M#LVoFV8p-OJ;5oZSW!D1T;OB%&d zR?63x{!yBdUY)c>_diVZ=-*V3>;_|Y5~nDN2|E2jj@f!$xb2Ca*bX-RbHm(ZdHSR- zSK6Mq!Ap2-f5r}ambmi6>1)X!RNOmTQ+*~1LjQ%At1YWk&N&dCu{XUx&xM~){2Tw` z)^Cl?N5KIK-5)wX;sn720{zAFb#_oh2!@dLb3!g-#*iP^6U{df{BO#BTmKjTf&FEz zeKo$ET1F7B2ENtrYJc$`(Z84t>@&q)3L8LMT}*rH`3L@$iNWr}lNa&A!mjs9DKnPU z@!=f^IT98?aDYO(nptUtQJbOzTxw#nT{;RM@!I^}*0+B_^mt(DN_sJDmHdZpiz9ef z8#eu~osb0PVjCqL#@}G%`#w}k{?sr8Kkz$A({vIUL9gObyckPYW^0ALRpCkinLsbr z)0R}2o=?W?V$i>Cc5n7f<+JKtwKW>GY_vk7w`$ka&a2&1`@NPmI<lhZ(&Yr4>XN&?rk^1$qWd-4xK6Yr0w=^R$v zraAr#+=m~q-ub`K@I{>8$AykBVt|EADC9xd0)1H3JHTcyCeARL@9hIC*_>@OXVenS zTetFyn0{z*A1MLC`Y)an;emahDYSnf0c8H+Jy2HI??BD21n}(jdTzvDYrfZ-BYlNp zUn$Tu{|h;xya>rr*aAw>LW;(96#qUaw{mNp<9{O_Z-nn|<>Zg#t@IFNu^o69V~@2e zT}E&F*+lzKLgw1_z)hLaF~@(w0LI`GJerwT|4im2_a=WO{n9z<`RRRh6l=#`-Xs=i z?rVEAN6hwg(%(=jg?7TPe-1r+>?+q0R1L09s(n~%X!Ilc|GnB{wcBd<)$XqCSUaP7 zU}bmadQJzmPN_Hk6`TClm{@2#=V+U)64QdC3#XAQV^^+WrwaOR>ruuLle?HW!m2?u?hrgT43Ec}1Ag+H^j{5hBN67JC%6`rML5%;I>_B?o?ZI@M zDV0|%L#jtqFQ}edJ+iuWwOTzC+3+lqVtFC}zat%<&pyo>V*{*T`2jz`bSC7kN&l=; z_6ri`LuAi=^iRHuEaJ0>ZR|%4k#p3{n~I#pb-`q0xC9QhFsH8_yYT|6;pf`N8IWzCeC~_P~8;{sRB;TD;S&fba*1Z1EksKl+`w2Xp#Elnnap zqHak4oxXhE=~Yq=ge*`31j-|d;?=A(|KR_vxuVLJ$T4ikx!v9{gFN0Fh|+c<(%-oB zc)COSRk9nMSk43Ay?L*G3Gwfzv;sQw>kism04{l>R&Bpoac4eyPqIZt^GW_C3^|V^8)-lgWCSWwf_lb_qtY#}( zuPDC<>*z^;iy_%SZu@h;DM)y#d?|gcFJ@**b9nv2yx-O3bh&#adkuzv7u%!!zkuF% zBj}9LuJTf4hw1~>KdY;tO`ob>Ry~Cor=R01Oe#;)CF90CL*OFh#+O;8@)uJOPv-mn zkDfV8IO~V$pYZ@SwYMW}7ExVmhxA2sOgS9S!(fhA{97x$J`%vn9CLM|E1+`-tOjnv zd3qH*e_6k*A>yv)7)DP4pY4W4b9?!)>|pf&Vb!~<8{%0#y*9hnw03m$MEZMwjKmwx zw`p@k^dPd1yuL~IPyg-oHuC=7!AtZgx#UB@ zk6X_i{W3+pc3J{m@gI#wZ!c+~Judd0(zgfn;xSEeNbjL&c33Dr(q$^;Josd=rnBWJ zEb@V%zcctRF}vUnB*4Epwi5k{&&V#O-`zE6{uj~oH-p}J==_QF8QuV!e;6K%%c@^j ztF;wspI1+>_Ne|<`KIz-WigR~VU_Q&xc7%a9M4{^g#&z+y+iK6ZbUGCq?hJ>e9t0q ze=}F$Ca%N1NSv2Bs@JhZo`8kS<9Zo~h^_@zEZCjL4lG8_JWs9jm{aUEko_wMjIsC` zuRzg-$7lN>@s7@}sBA-2^}y=0)zP)NwF$MgY7bV|toE+V%3j0r>Ce^CV_=L_W);`m z>3{=4{{X)6C4Sor>CkaqaynBE+ounwn-b5v6_5TXrl2%Q$0gU|CGUs6h)Ny1b;e;%9r+l8a4 z<3A$z1sa2qH~p`U)~^@X4t5{1puoQ@ATogq{3{=V4VV)gea|B2sS{Y!N-yk=_+DAS zvXOmfBi6UVyI0^o5FZjjZ(?{AtTHykSdHG7Xv*<)JAE6At}$HhCw%!g!q%p9_I`hS z!s;Y_20m_wq`$0TQqm%QChd=2xQumhE42g85W1ZDllf!~U5_nMW$m_P1#L}l=-rqZ zcOKY(fOY;2IW-^g|I2bW{O8A1+E%x(Zc&|#etNyyw>GCXwsv#%=E}Lm%*N*Ub~Q#W zp=;e(xTsgJN2P(QUyW(3UtJgyK>e?OEFuQ$u)arQYu`!5PAlqk2IbpeGWt4^!`~uX zBl{C?#4X5&1<0orv+e13a}63_^j{11M-hQoj=8okl{?cHuc3NrbxHLN^#0=N3Dp&< zdy^aR6_bei5iOitSq=Zd3^IgIqf_3E*?pYj&Ey0Rrdr?)kbfilf0S)8+p}=_HOkKES8%quVek34nxytXpF}FL{CDi`v>Ld?~OP0j#6u? zzt&AZOMXr^p0wPD}nd38w zsu@#@Nnc^p#<~tX1*dJvI|jhPWB$fO`2V@YnzzfpC-7b1UL1>R<&Uq#t@tnU1Hx7a zDNyhLU-!PB2s>d@d<@E%tzj;m`Rqux{v5l<8CqYA*0pi4_Cgi}GYG3cV*UE~g9QW= z@EwJZu>QZW3FHAr_@W-bt7i6pfqywd!4raa6ig}PrMEKvKzm4lz<;p!wtsViun7uI z-w}3WmBZ$EK4&BSc1ON$!CChL@4hoU5q4jfFSvE13S*U|il6^{@^9@HQz4RMm&ebs z`tKv7`%AXYDln(|xLyN<+3C>pCi6M0HsE!FGf7#xr3Fm}4Y!b^VHeGk*04*z-ewS!3`& z1#kcJSp9A3W7P-b4+4`t!F6+vXI&&flD!2wPr^5`l(`~D(f8^F(0>D(d;p$;uVCp{ z@cBctW0{J3C1{#c-3PmW^Xg*q6ZV2h>_sly}RN3dB z4BxJcvLZ7qiaw(u7nKdp^i@XoB%ZMmlNTq0_@kJ?erffq>eA|h>WCQ;~F;rwN4;wM|vNk!{` zhqpK~_tZ5?0Ck8yEq&1KKaM>Y)P|2*>0PRQ$W3(SVK zFZKh|>Tx50;y+$1vIL6>p-PF68inqUPkP%AKgGXb|HtxQ))M&dgU*ZCzi1D{D-8mT zMHYaM1OE}%3)}|>C>TTi(}gaN|3$rkpNVU-0Z101<^xCEvG_!MPkd8&1PY0%MNrfO zc#Vzm#s6UL?oH32Y(aLVPf)L(a@n(0V#hr*4#JP91>tX}=U-W_{XdR)-x0~#=}}~m zSs}VEzG&;_R>oHSok+q1R1m%g`(KBZx(ycfbFki5%U_kN_`NG&Z4@jbtu$3m&M%7l;&8pq2x8ms^%R4qE#`gs|1JC0>_$TrH zsZ2S$3;lmLUW461`C808x(luUBMhV`yrUDIgguy|aSlDUx8%C~1|xcxX<9ckJM9Rf z6r(}6{m7lzsXx=22IXO}AFXre_C^O*uYw)-+~i6{M^>MofN$f8?3>DM)rYEwR_Efc zJb@#BwQ?8T+22JPo{h!PpIAX(_NGM<69N0-i5Lb0=!0CXGMB73o}tszf2Z%@zrPe& zzb3!Dz15wG^hD_g?8bM{9OnL6sqbp>HmponP-ruCPihN^3kjeEjjLEx{zUXNy!{dFleLTf@C&-nf;qHA0*HI7D`gwvzK9-Z ze`)z!nJoUpquUn`=_d_uCSRxbmsa7oH~*J=*~;eLP*{ccPo*9oawO%OkOuZ=!zgvdW_BF14L&_rgjq$e8Sl^bqmE_XF?h zdZT#O6{+c5=RQ)?ZIs*m#mswsfo9NH?{9rTm3JNlepkze(cOA1$m^FigM++B4DbQs z@&AE)SHbL>*y!(*_uGcv_WQ#D4(E7x=g24K6As&O+^bZctgKr7wsH?qzYi*_R5LOZ zE0w)D!|`|wUd^7vSI`BkdNH$!#)Isevip$$3#k#_96!TX*gosCx7pdw*ch|97FWO; z9-^XXZ;nhqTr-8t1_}#Z{EKd{N8uq2KZ)4aU!pAV`t-%Z z?*IeXt@;wV)kCWttE*KPRyNA>nT{qS;W#A3&>Zdd^6``AMcd!UtjON5s>bE#srUIu z=|{Y~W2xBv0B$F{vUWjl#Mi_Inx!iz`+*ia<%i$j=wIl3SCH0YaL!g}AAMT&tAiVy;4GM-(NP@v| zi{r5|_T}5e#X#iFP>!L+e=!zl4L_f}e%UBM)b!TT7#cRb@PVp8bKtoy=R#tH)gS}# zDil_Jk*`~D4XucfI=(A-Lm>%5&V)x$-R>3~BI<+n4Y-AmRXG$gHnI%E+YnMBj<(1_ zQhF-^0{{K7kXA}oPn+i!pc5Y5thmuSZ3$DYvaJIi`{HlAuiOs)d_s0A69DePoAz?H zglzOX^P1Up$g7=6Z0vS$_FQ&h<@D+w)#IuQDko>pkR7N$D!hBa{>|C-&ov!=h6@HP z{=4yRt6j_ha-N;}D;scBPU~^b#Y%X&&nc(OBik3`jR0w7>hzz&|8^y;;12G+RsI>z z;5yVDt%xnq9gJ?vI}Zk*i#hH`!05l3aCQJO{dtueDrZ*qA`y!ycH4=b;nFa3p)ZlFqtk^4gU!gh#UnxIRbl zjoq?8@C{sy#WWYoX&l$ksRPadF+LyN1S7r|*q04Obi}LDhxdCcf@4#wn{#<%`NHhk z%3;-=s~>aJdy&;JABjASzD3WH@vu2uV-vEXCSwT{lEADV^CA22ORh(kmPN4q9hh}` zEjC}{Tn_0oG{3Ve9BWQ#RysU630vJv0K4@q>-~$`*3d%10K&dk3#qlljO$sw7QQgo z^!nhgTaN$n=;Pt&{iD(U^N<7j8S8vsoge+aLjT7r|Lft4=%25M`M6a=gp??3gAw@s zPRGWWoqPP-^XgD!KxdA!IKFy@kM{zDg#|!G&Cj9F^xdK*2M$dpNdsy>&4o%8>ZH&eQeDibw2PY@^+S%w_^2+`mc$E zH)WJMmA$cav@s&2P(pi;#@cT_+W!b|+f1YeKkT1%E^SjQA z6<*}cHOCUQV}%v#5yxH+y_JCfZ?RLF;Dvm&Jdn9n3$V;r%3dTYb{*Ki9F$&-#(fCA zy95sK6W;%o@k|Uy|8ECJIXn9*>&j8K!^3wM(~AaX^T`A3MMhtHa)SF;hL90hsl0}r za5PL|UbYvX{FOcKPHyv_K~BM;NR-pz153yle1quXwQP%!jCbQH zycjt-8_VEF{E$attxSWLk3inp^~b7VyAwNoQ7=c`_6a^zT#Z0~@B#1Jf3F``YbI>u z4>GMjuIz$;;%O%OET28aIlqjxaX6U=n{&-)@UAIHf{}dhBxJ!9woS1N{7qM*Qs*hM zLtZ3n&l#g(dnkbi!WmkXuP)t{9!D1M1X#84e;H+0L5upL?D;uacQG{-Yx{VZ!M`0WuVD0~FT zp+};>#oB|AR9XP>8!5N+)D+nFw=|X`uj>grS}*CIj-+DH3cD8QCF^a(zcJ|03BBQy zTcHJ40&m}DYgGOL-`tdnzJt&`n@~;HjSTv|Dx)f|qEq{Uk5{vC#Ln7Owxw!*1o%~p zn>*MwXR#t*84!NI=r*kc(AJGOKpWm~?tgTtG)mT-V_JbsS?dfl_6hSb`V+`iq(_dhFJoe4%Ofzcb_ z1CM4;A=h4E2Hu@u_(Cj&>0oy?BI=iuWiT$!cGwZ$+bP63e<}CiJWnH{a4!*sPszw{ z#C+X`$`|b6?wlRmgRkKlIKUaq*XWXcgyh(TY>9DXEDYl;Tjm}Xs~fD&(+{8oP%dig z2hR`PuN+V!221LlFc**sX5;{fM0ho$RCJ|H)nc4`JK}LmEKD}B5Kr!RU+nN z&2)h|x{ksF6>CZxQ|t#rHNG90^R8l%P}sRmc*UMyPT(2`>z_yL{|uyneL2GNFYx@o zDAy-Yyi(W(KGrX|tZy)EgUDGPm`j0)co@zh>unnA-@YUAgpI*R;J=Q+VE%C{9_#pz zEZK;D>i-Z^X3zxdE^2Ti-Vs)NXkqUcj|&b_up^PKT!`-rdEx!w9|d0sD?&ye_P@+u z))CxaPeN=hbD0~wtKbC6ijV=y>7o-^LN`96jOx|4jO%kxjwx*PH0mv@FSfFZavN=Y5Z6 zn-cLK!TzESHF8{B<6>O@R>b<{zpikfH}WOxXvX@CseVy2r`2qwU5(5cW9Or(?bkd-RmBM%;g{V!&_4@q(()Ae@5d-xbwoCNDE^nV38E+45OS_saGbl~hkTBCy^}!iR$PVCIH&oX|5-T`I-U%z zDe!?=$e)?~pU7ULdLwd#+Oy|@$Rsy=qFKW=jq_|&-m26uZI#ReF=qUTe>FzOeDy~R z*)o5;O z{L6Pj18e65%Ef;?3SU5R*5MH;zD+h?e_fm_A;S_W*nrP1D+|JI5Z7^q!{--q0Plwf zFfs>&4amcc8iuY9OHJRW9-EK`@)*5;vGwK}bxSr+w?nJyC35<#wVcr>)2f_iXx|>> z``pBOyMbBq`&ABv>(9bgZXoAm3AHgp(DW--?k4v2BCGP!@;hYYwI>391uJQN_GKNa z)dQ`OF5&kN{2S*tP94uibii!+=qDjRj(RyG*)2IDyKk+46xe|E{C;^H-n%w*z&HlG z9Ow^l!s9h2P-3(rM|Q$-hCX+5hrI*4P&1cLv!%XAu40Dfh@15x(&GDFxKkbspfo0{`{@ zS_XbnyCFOXkslB~fdOQ-9RvOk`rG^8gLn1d_`~`Sj23td9bMc8D#iam{2y-43-84h zQ2u$&GXH|*M9kB(3?2~s)CXEf2&GBHLwr|AjgX6eQ}6(9!xE|61;ytgi?BX7RW!@! zmA=Ye?XK_?1SbejVW8djg+Cy=5&KEyft<#zKQeeyGLMRZ)mZ_e^Ju(Xu*?qv z@h1|UIGJ1Jz?o?N{lNcR?0_y*`EOC_QMnxN*mGp(m5Kk4CNf|jkFg+PD*q1ypHG!P z;I)=`(I&zN*1+d~E;@4*`cV&@Gcl~27r~SG#I@x$;UBMMdOdHTSHRDeSEwYOgg4}M ze2Wi){a3ICp2OF84ZNa7_9)043uc|IG=Ou|&!QL5I{o!{Y?fbP0~Fd`w7b=1fIT;r zj`m+#AALQK^PP=MZJ^HUdt&%Ku=DrgIy{WjYmQem&0fVLa3K~C5@K7nX}sr=(kpcFdJG+E2afI_$C~koD;M^pm8`BkS6yVPxf-=cW1Wlr z$Y=Mz^=Ump(r_$*iNqF0l(%e`dW96)0yAFvWpny|1xzS`6vFz;GHm6aR`0|yX6=GHHW9@92VFO zYrT+lq4j-KmnZTK9|ii0ME0TAkH# zHtYRt>fdHoPOF@VZGU}b`Ra)3hSe*mr(KB7Y@XeV-dK^mp}&|#WdvarxOzet54&Ql zhbJMX=IT|5te4_(WVxyReZ{<=&aB5_@NMgiB8Kg%w|>T6VC`V3*Ok`;#XnPbybU^h z_q_J^SR!BZkvk`#^UVC6&$B0xmv}-poos{&m4m>-ao7Z>Cz$*he3b#QV(FkPQXg=lp&nC-YCLII6$DX*72;yed(beUN zbxy4O2Kw*d?j0#bhJ1N)Q4n<$KrnymWmQ!DEJRQ zXyouKLkf#Q`$5bvtJgyY#B&Az_uJgFpY*@4x{t8@e1_o-5c^>TC=J2_=nfORgRY@Brk9r5qnn)h zGmteV*S1o{T);-)e;DXk5l`8DS&F4Q44rpXrAp+vR6V@%C3>)3wuDu;cKO46I>meR zy!#Pz`4%jS9Z@*|{+H>0oy| zc=ANBti@}jY%Gsv=2gshQcctduitk}$vcL3*&9DPxP~oK!ugx)<{B4x$T7!T()&0Un{k=qVV$B7Bb<(C=tx_94d_$obg)$85WT0obiY zmS4wZk^iGNAmaaeOk=vS-S+IS?9`uksK0*(PyX9n^@QK5Jrdv)@-+I9k+3aHrb+fK zXLBx$=y0UmuAJ+TzvW5fR%?G*bI=FLwk20*Tdw<9B=?9?k94EtIM}lqR^%D~FCzbe zcNsuP0AtfigUA4mb?$9sz^el=9q(pqLpZMQz^lHWC9=&q$Deb0# zRPUTlSFTm*&N_`wZIk)G9{$Q{m2Fi4?y7q*qCkz zk2IW@+?8HgY6tqq^UDumEv(1-a*nqh^H? z12+95h#P?(dY&$!~HN9I$H2g5W+1Xns(An}y za{6j?+Wdozn`2-UgIKHfnYP!r{(vFavX_xv{~l5PIXNEnZtsqMJBs%o35xec@1LDV z0q-YTw=>@PS#<9>Cwm1sp?7N<9C74u;J%PRI zOS$SlBLP<8^;u+UtVeuvAL0+=kUgJqMpu* zV4|q}6*J<$j{acc;r%!IU*LZvQmZ%8Pw$_Z&c$a$srXipi`I}P@m$D|z_A=imK0ut zur7*ygbWDFUkr!5@N)&HXvSI3AdC5stLk0JNf(bic&Uy-e|3i4w%Hv0ms z^nK95JFo_)v(~m`t?kdVH-P&0VXUpF;@gXu*%f%rw;+@4Dj2J4)lLB|K}%DPZFg4j z;~?~25IC0C2C-@i`m_|rk{=B(_=+d0zBhFU2<{yUK8OdJT<@hbo7rHvI>e1HOc=-P}NB@t(LK(z& zbmp_>I!0_G?1wt)>l$9%x_@!*S(}ls2i4Ah5jj}aLW(1aJfOPXFEqcpyc767z2Ree z@>~M;cTTTLpQ8iwPfY1qOvi;UsMdZA6u0NtJtn^~VzEUGKyOX>`;^|=Z*qULIeKws z2hi*5mE`^OPWZpxF!AQpYr9h0i8sLtXa&N~B%^K(Vq&9+x!p(ajOFQx{d9I1xizoi zW1kC_%4C%~b>MxpzWsZhVeuLL{J+PuI2k|H#V~Ruz=>$0$3f3aWa#`hN`_&NaZ z*N&{=Sz!2CV*8Vb(%(P^Zzm#fvvc{jIXI8mre?;NAv+iuU@!c^pk@->cMER44tB>D zjmF}9Rcm25+fcSqNUrjc@dc%2SmqU>waWAHe}`B<^@Ial(ty z!p{<)Yr>V)t7&hh^^vkhTI|zl9)LB#;(pouU+sa=_|YLHEP%G~GrOjm3-u*k#y{sO zI}s!%f_+b?h92no7s@TOIZQRU00}S<3GfxZ&+EDVGdPEyNFZfM^d5_9M5n-S!ZFTd z+lDLhUg@8u#%Yt}MEp%M08tk*Kps#?fXGQv64>+F3c>J6HO)~F_NdY64bV|t!1_q+ z*cn9qkA=HlMF!whWJ`GPW%DwD$lePUpbYR;<9cE1|E~m)87Kh?Dd2mR1HJgfRQlXr z!1qi;_nY~@DV9t>j$Gee=vmQU=*`gO+TtM%LjO-hT3M}Vw_GQ8SnJ?t=E^_~sK;0;G-6E{w*{tS8tfnims8__EUZwI0OrRy%Hz%Pj2bI&Z z6KtOW|7w5H{{cQJXNxxjo9Bc6lhM(KpkIxi4+IfA5NW@O`kJNa==Z_=V<6^5G7G<_ zlIU=J<}dNyU9q+Y=Q?vFQs(+R$L(<>&hE$sa|Y}JGy=qK1#{gE8)8@1_cmy-V_EIZ ziTIxlLVJ?ub0RWmB$8q?wh5f)rkvMs_960P4u)QLXJ4C*?0q$_o;bUV4dR{V$PD7! zjLQ#1N?e6}8G%LgIg!zGIkKZ=%6|y$) z?+oCUa3C#!xg5c*tZ|rQ#dy#53G%3SH?Rt-AQY!v)>+Ep>2?*TOkRS zEALg>FFhc6kQm*_Tmt9;R00(E*RSNJe(4VKhN4fLt=)rXj0}V~x;ZOSPU?hetAD4G zkGD5_K(<`G9d6jDYyTvR_ei7x8W=b?XTy*&iaE##9j)Y z-aokp-MJ=C9GHX*9fuzw?1+u>V+aWu=okO%AVHLp1zYIKySF4de|5u>hStgaed$Kfg*ednVTYba>@);C4+qVm_FS zB=i0ptm@UuZ4|w`cM5kURKVU2!G>!rlzBl2qm$8bcfke@7Ppc8=^sQL8 z+oShq<@n#8cRWJX-$AVX&B>0t7@ek;ACb#A<(zqOcESooYYoe+tw>VGMlMd_8IS1L zV7|#r0Kc;jM|2MH_2sg6v5R)YQ)mR?GM?$rnY5x`@HR-uSGZ>XB2Kv(TXVdXebCs> z>`RG>IGxW7hnUF~was=obw;q+P~n|7A1b;BX`>rCH7BzfpR8h={lvbUw)!LYyyBn1 z2ENTbE={;*S0l5hBYzf~j+&1M} zo2$H0`GL}x^p09NIR!m20#p{A0QCX}?u{d<_51SrB;swm!R%*%nZZ0~x2y0D8l7&& zC%PdU#;~Th2mhzgZ}?i!ISKp+q67aCyNk{vVc|#Q&sRl%pgveYAqo5+5+LyJdxs*m zP6Pi3aWunn?JxfOf`2`LVOxv)z`8nLCLsQU0R;X#{w!{_f4Xt}MeS~pyH|Mb{jAT0 z_26FoYl;*cz^A8j^^Dr-OB{oIw4TBlK(c_){=xp6u>X#HVl3~RN`B-{bYp*jPOEL{ z&@?}Jg>L+(rax1weH=3(Uqkk;@u|D%vH31}E!NW;mzVup z4L1l~HI1X1f!5y{{l63XYkNNRFd2gLU;u5&^E(ikh{K_B*U6duYq(ED?^Qd$zDIlK8B-(Y-## zHY87}ads=;{3kp;ruL=yS7QQs^yf9-!7j*V0u)|8J0L_Kk0MfHCRF4?Ir&TcJ2Azn zOJBqPKSl zyvyi7@Bm}eZCLke!>#^{|EtIWoWM#9)*kUYV|d}$4~&O?4@pqW0xI-=aQ|QlAsw_9 z+)rj1vdjDyYircKy$2P9G5YOfl`h3Kv@36@Qco;Hi=BUe2dfzmenrL#oRrf#O@R{dWeL zbNIgyX>dDibP4|X<+8Owx;;DA!$;Q{|H3qUf5X5`Bc#n!e9nBntKj{=BaJ@A?{_l# zb__>pUXaX zq`<$hiRN-vC3xFw{8sOBTu$?7&e@pdGy?r{PpP4_T-t+fV7tH;d!q%T`lpB_bz&tC zW>xP7*S@yl31&yWMm*_qV$;)jcjN~}K43FeqKtDA>uyKta!!T)FGQ}4MYq1W3$0xs z+UM8Fz5jv#(OCa#|KR@OKWvBiypQ6s5+pwBzW>Sj_Q!WHnQaQ%d^+rC2X3b#iALrA z1mg+D=arCp?Cg!SIr$c+H{8YLnT@bUw>h{J3HwkR>kwk-FM&s zpYZ70(yG`bca&G9*TGSEKqewvSH_|mgoJ&K>(!Dozq(wZTiBaiu@>kMeKj(ZUrNjI zs#%M317@ls>uW!)0#daIWzY zWcMs3&Obi6h)&+q(uH(qTavz?{*LaSMQ^^B(EVAS`(=k7^J>>eJ0DhBOz-7Z$puKd z_W3oBjO_TO?D84;f1UYGng5npUXRo5_hNeeE=><*4fR1wJ2R&b_}>C;J2$IP<9BOz zNqKj=LH$CX$O*|9y1ky6+>tz-+?X7b9Gx_#YTzH)R?N%WpmGH9y7OQU>!OuDXBB?R z_BrdR2CrC1?!ZGi{^jY1!T_vNF;n+E@^tRv+m;ep{2Dg!3tH+!a_jA&`vlKF1KuCt ze~p#972M$evKRQwp5Uwtny@Q4R-)|3K9451?^rb6A>2O>PeBda{~o-5UGPut51x&j zY2Ei^RTsH@qgdni#Id3-BtUTe5in$DWE9>3Yhq;rJ^s5FbCtHhCbL=&6+Hj9z<2K8m94>Y#_#nrxOK{J)c@((bCb>4A+$^nuBH6a zFT$oiBc9h7tXmD~yElL@*fqom!s_|HzJ(cozw<7E)4p@{EY1jj%_*iuM8Z_|2OFrG&4Ps zdETeO+efi_tO0O6bz#L0L66KMkMBjM2lP(1Pv#{DB-K?yf^MUrl&mSybnGhL5kqZzWfXEi;0qTz? z!gv7^M$JDB1WrZ&_d?$mef^`4cl7IyNI=00mc{>Aj;b3Hujm*UG5SIVgwJ362YVfx8vG8g5Uol*u_)nbo53GY`)1b05iizfY*Ukv#(UShy41pO8chIB>N`alCK)x zZ1|ln!P_$neh>P_pNZ_4UmBd9&7{9MFaRfd9s*{X=CMPg2Mut`7TD@nqZ1dQxA#O> zZig*?Dy;bw9xs3eoXn$z*!E9jOTUwA{QL3xUBz}YEA}za{}8zW8)Vz!C)gZc#G6Qr zdFXSqg8E|j&mrc24BLFNhfZN%C-MIR_B9k=<+DT)8)uiJ?*`?}UB7zx@{Ib24WI{L zATmLZTg=5a&Zmz+@1U8##s_?db$4PkI`(ahxAX}7isxW+4CiPfZ?89>JBTB0PR#8l zJedp0m-;_)|1ZmJgbirR(Bj#8cjeE&PeJ zaK_e3Y^!jEl>n{z<(G#ie8}(jI34^R#{2pjpZl0T4u_MStR=N0F`F{^i0fse;1qL- zSniQsS)N&1fL8fWsYJx(cjBWRiA_vrZ@>TTL;RgQ;;x+eV9t7VdIe^sjnbWyH_4@$ z!HSMr81w7LvXTx1$L}>XNw!E9B=;w8BukPflgpBwu}05hjmvFiqW;oa4|E$VLdznOv8k$ubo{pWH{6M1J}B#0TjL$Pws!cW;1 z*1ZVy?ZGiW4gN3Zs2=5ZC*;Q(X#VAM@1JqMsEX7AFw*C2Fehn$i#>0Lj)&3guOs!p z!y5RL?N{uE)nVu|fc1&d{et#?j(6QxdWiSGf;3ozYy34G3f9gpg3ldFee;J{3|o}i zu(w;t;@+y;5mOy`IqE}(>(3P;!h?R{3m%go-KmpqfKn{J=pk*-9% z??kNrMNC?}pSAENtokn`KpAOm)c5DoiePPp@?E8MOOxSg-(c5o3f9fV4C~9fjCMRT z2+43T*ZuW|)!=9^CflYzqzACJ)?{s)(LNPcJp?xUYnR}iWYBs(JYX)2U`Hgt*<=AO0^1jG?`)n|lP}=WLNw>|<<-Id?)dUr zW?v!^j$ogncw2n%XMna-@N1vMy^HDp^)PXX@5-G(-<@>v=$k!`H^7W{{H;GS8XwiTdI_{TjKw=mt0%U{v3%>%AZHBcssyou!Fh;R zV*|`0^Y>{wrFF~R=e(`~{dN&Nj6G}P+ttje22L_J?kM`Lh?3W@_csT46HfmK+mrD7 zx4`*Fp!-8?`x>8XgA7;`IiaQSB-p<{&%IcJbl48|vleo1lk#cw_-jZ1_G3!Fqz9yz zq+7xBwudnc!&-bk?MdgqW<+=U;UztUE47$aupBzYe1c#34kySO32BSRVqbCrmrr-V z3b>xg-4XEj!}))8!>ja|AB&&rxn#w3YUHR>Md^9W7C97u)C@51Dl`|ZJ@_2P zD&HN8;RLw(BJeN&FBpID|Cj?Fet^*P!2`nbUp5+0cmu_JyjsYCjgcZV$!xhE`Lru2 z+nVFpj&FAEt#dMq{N%9PBbz5Qxae0lMD?FCpbtoH$>TtK*bE^n3TE9Qe|)u%83b^m+q!X4{EvXYSA9%It@PeH80|cc!YWnr@TcLWjob z=>FT7;dvXAxbMRPkPkZL`49eoinLBxEvuJ5EA7MdwNg4Mc_E*6rtc;EiW`FdUdV*G zT=VykExRW7Bu$7Vu0db_k4o#Yx`(4D%!$=6wt$M6^U3o0gJ1n~e#N)pbT#sg*Cx~O zKd`&S$qwj&gRxVlBzLEKmcPrsuk@vV=B}0ZL1>oUjCS4;HaUZpwtbH6JPe>5`TV3@;kAnYb;Z8{Mn+>0pTI`kMg z1!*-3RPW1c=dzCzK>wNO{TpH4AE5i&5O23j;cis%UdK^bMI_Gk<*CiJ|IOo*)yoJ% zE{OlAv@^b^B+wTkFOR%@JpjejLbDM&;60ebd7X$ovJGe(n(x~l0aG}?SBajyl6`{} zuu1k4y8jO3>U(%HPUAW|wcMTub^~_iUsOXEUH_dF|I>I2ek%1uKCVmTv}bucCVA|O=lJk+GQZs$$xirrPat<> zYv%NgFYQv=9nCTuZ|z=0cK0Rf+Acc>36zjk{9VpAQdX4{mpXGiAF;Y#NHx|Hgl0_$dL*)zc49cmmb`GJuE%7GA)J2^94~h1L%XKq)X3EG@(`IfZXi z_wUHIHE47ud3f#$U!G`P)~8=s_J#iM_;YI{MtBCoK2ZDn>4Fc)_+uh)%mI=cSnJ@N zvk~A<=06z;usyj5rxKC4l#awFH5>}o_hH-j?`;mOU=GaaSh{h4-7pl}{9Ek*bLq;z zMd@6Se;4?d15lR@YOS*U13CR6UfVCQ0anIlytmY&bX59M(uWz}&O2)l{;dSE=i+QK zA>Ltf`yt8mNo(ZvQZjxnMSe7AO^5z7*WC=j$I5fa^EoCvxjePBbNUfeKs%=MnFF|W z+Bp4{nL_3CnB;ZNXd7k*Y?Xdo8k&u$JXCprjF+^s0AJF}XzclD=p(@Hks$dx*8Mx> zkLe!pBX)(8`OW|}d&B#W&vAYT@w#2`;T^!^b72I|?>&}JYbnglefdWsG48{j9g0Wq zF#P%7!=|0@yBnX-PLL^_3A4BbjJ-g=zg}d!O=FvaN8$%$%mgql^OwtuaFOk%K9Abk zBIiD009N7qydD9WzV&fk(e3WTN(8;{#_HPg%+{Ra0=SG)Yy!w1iG8nZnZ=RpMkZq; zd?@3PrBC9=e2tpCx3OxrVBda|`32VVS$kJ}vr$OD)6T1Fg2j)q&K~DCe>m6h_jCIk z{=HwwAvF8{BM@)(&(pl;N$!1DY7HY=30;0xdH>S&==?p?&C{moWB6|_Os1q?r{9o0 zejQVLcO#m6IWnLdbAYZZjYsBR$#4Dzl52T*C=wJ< z5CK6YOU?{K&SA(|GLj@nMv??U1xXTAP(dUIktm=<#Q-88IVu7ok`zUh`>xv58UAzb zfBt))dS<3)rbBi0xAtCp?eN8UJ=_y00rxw5;QCAO$3wxubNIc1;C})5{{Rfs0qJ4q z&b?g#*3Xw51%#TvDFNaEsz!KQ0U+4EbX1 zq28Cw;6rPWjDF1klwxRcf!PY(OMG85K0_;zAufH~BOK|2zhw=4ZaH4D7RXn$)Ctc& zlbq*jc+XmxlXfL}ojB+@oj z05<;``tfbPpTZiLM~KH?&!%U)xBD&e`B@^L4see;Sicdx;_q?gomtLJryjeu|L#_# zhUiOTygUJ86{}U|>1oz>S2A%ssP63_EgkuhU0~jI4uSG7=`^Ut^KNt;H?MoZ$>xma zn%<1_-KyTe$fRf;CW7>4^2K6$@_)q#FUFJ4$Coc*&1VFMLy0E(&;y^J9N%8>(wAds zU>`>Ca|kFG(qF=lPsO(j`-37j6dSy+I0o@p35;6u@E*odK68PyakhIo@# z)81R_z*i1x-a0YO>sc~hDd?%TTV>nUAV$NU)S;?0CuCC&0*tElup=40fFcqmDtmp{#;2bkK zu3!(J<4g?mIwPw}P>-LYhwv}r0=eLIf5H3r@>zY31=!3A_=L~@Fe<&6-!WFg0Y3i& zu!6lr2BW_jn?;tbJ=-{ z-6h|153<{2X%IgRtMU=&_$@Z-D7mWo-bHt)d!PHE)0Ny&Zs$5yUkAhCOTsrs<42c)tBzQl4gtGv zPV`X-W^T%z;aR>snZKK|r@!5c|FB*_sJGZ4v;y{6d%Uy(S%CD^@;}P`a&vy=;2||( zKTWWELqOzwYMz&3_dbc+3WHjYeOk_0uHySbGL>&ruQY>u&EmX|#69M80&kh!(M0KW zsr6qIC_KB#3LVGpU&9C7Viiau`kc@HS2&@IjegZj>%BsxHj8~&BQUj}<5JKmJRbI! z+a2M4=RWQ|=e>=xe9OzkI#-RUX6>m9^_)i~h59X)tr@xNncm)pq0Jv_# zoS|z(5sN_G5^(=69(6w2!D{gT39G*XidzTttVr|{6-;Y*ymrHrUZ>2x*u1*lEz_>q zW?50(l~YqRu4#wbHPdz;k&jn)Reicr+~uV$1E|NV_Ob|BlM&=8zCxp%iT&z=|I~!P zdYt#k$f#%v@V|-KqmM^#!GCU2jps%`0sm6&bMR%yTHy}BSO4KAGWq)*Z!~oyXHl5vcyl8&ne6a>^d#&ho|W_qoMSa?<1C!w z7P$x2D&Nn!tR-`piAZ3!JIozI47mwTk=3gL_Ge(9zUN#n@rXO92Pv>4C%h$Ido0Y` zZXH<24e|m7oo)D|{&fG%#|tjP-!%p!;{0LvzxDs9C(x>X#Q4LwUWhm3TP84B`7;I( z=Ke~8xYy|}UW!j`15*|LJM&5v0zJ|^zt9{q0O8&aVgJA5Uw&SPGJmoF^8LEEz9(A@ zvjvI+#0jzm*^ct~f9Zd%;Q6YJoPj+WLk#c%`}1ul&fm$`mvMXIz9FLeoZoiv*Ud15 z6>(c&>lx|uU*lwS$FaY19U`}n_)Me&UBEiuAOiRuKd>LGupaw;1WT=q+X=LSN?6^= z=&)(rJM8L}4-WC6d(q9|we;TLGdhRg&&0}7P1!T#4%FxGlTAp;nrw*IdM{d?eeW7Z zZ=(@qA@84;81fyMWCnK;n(ifMI8{Fb-5pLIC%rSnnd)BidPYb4Kln?r8f&RDQJsZpGKx160fIsRCcS3`mg^&SepVdF?!69s26i(N5i}%vC>-ID5EfUo9-t z*Ld|GdG#4sfahWNO^6DHa}9=*d3%ulh_1{Me1csF(olbs8TFzw&!y_ELZDqcp)207 zh(oG_^&CovP?YdE6~jO9>B<}L@HX*TZvd5FvkruPmvhce=KgnX|47a62-wyfuJ{Mh zK9NhrYen1z@cj-b@}21%xt|>IgWhdAND^S`#W~V@-@BXL7!knC$Scw8Y)e`>Iu1)0 zAGyl9defVW?r@4{{`qdsIVG0iC;a>CUOO+5Dp2wLK_GuA_dCssREF{a&L=I_B0X1D z6-wvHTRqP!|K{#=`?$xj0ISdr$AN)$;D0zstpqNGe>+V7R~>*w{DyR^^O3ht_VP9n zz%;^87clEk4$eOVelZVyp(W^3)~zEP@w)wtBx+L3$1DpdB?F{xXogY<`Hg^`G|h zN70zP*{q$KZbi3(TNeDEaz1x%Gb!+@8|S^l&caLB{e6^s$ZHpU(cj7x;HWW^V&&kB6}V6fgdi2F4Opd)^>`+r3Q>fnEY-*xoh zmUzKn?%M(_aURvI6^QH`v%_90G6AY)-30Qsfb}o%_Ho1?gHW@pQg6E(zpQLRAJjh6 z?6sS)?Jcf-t~A>)Ju5XW*TJS7YT}`?minJM^0Z4=MsBI@Mm>62xNZf(q-uR^hGA)R z&IP>FOjH?MAny5)xMT?D+y_nKGQ0Ffm(^A!y=$>P`n z)ead4FqOfoj>QG?fT-WF*(dn?zQoRdLJYVaHgFv4pB1%6aZ`OP)h)bk9?qo#Imd_m zwAgR-VR-o+_XIn+Po-bHG@4%`zWX+v<2PAPOYkdQ(d@gpXWdC&6J`aZWB-F?L@L!d zw_Ci{IBz(sYd7)5ei+8DtR6qeTWSxM)7YcWS&jR#4?lA*ark>pF|qyQbY*2(A7;I! zAci@>3LOLUOzZU|n{=MY_f_Km4Y1y!u;U7W>L<-F#J<%5CF9?sdqcnBKV<*vWU(kg zieRV_Rv_M=1J9mGtkE3&cLx9Mh=$AHm2GmD(45?@t9*b(^j6)Ioc&WAAjF604}HHO z-u@%x>mGKI|Twq5zdZx7;e^ayIhWtII>(wY#v;1H8^4d@?KJ6ih8b z?Tz@`4Pt~-*n~@{1n~j4&&H}V-=-b@(&O>3v#K`VwI5&boVkdl>(P7rl)o_gVPuK- zH?LXJ{een^!}JKmyJwxP#C&PoH{2-EUIuTC+ml?+D(`-F1jvtfp9b#I!Oc%{oJWT% zOw@lRT9auQi~OBT;H%)j9rdCMz;`cD-3Lr}4z&OFcunbnW3UXW;M4!Rg7#KqBpc&T zJMde3ZnZ)M_=TRHdieNu)B|RU{)3m@3oFPR%Wv{+htxQ{=;cQ|d-g@ye@qcyY%K`}Zx^0JQ^);zmihAyaV7pgi7S)9B(5a*QHJQ-*bq%bEJ@B#bxBhDR8?eqA|&@7 zhzk_t92`E)3uJu`Pz$6?zyUbF!+CT^OE?B&n}_b8N`R_p4DFaT^f1%ep7t|DFTvH@ zdnJNhzPiEjhp^}83b(qO-c8M?d7J3{D4*vIr$3pX%^tNA(c(;U%@-ZSyY%Sg9!-AW z1?mJh!TMLiJibG7_$To3np*q-w%|eDhmO>I>56Hu7K^Dg^F1B^SDlIjKRM00ucnS= zr~4zkaY4}iw*eb42t7NGJNIxr1(ky)88#ZusooqTJ*-h zE<OX%VMC;rU>7|QkCA_9vFuPwIVTPinvJ{hquF;;ncMYGyHL%U}_ z&Zm+Z3*qsJ9L6TUz~lZQ{ws!E`Q9srFYQ3adKMbpCMrIvx)+>LWD}||cjTILg{O5X|t~=A++AxphL>d{fAM@w}8o&xq3-*r?_iu#}pQW#-I@Ry@`?dU*Obh{Hxjzj;OKz_V`;Qu>;{2FL!>g{bqeys`jTYz181TWed zAO8Zcm=$IH6d46g1o;`nHKbcI60goXNmvEtUutjcJfRo=^J_0 zS%cEG9REL`xVUzp{%O|^dHv)mA7Oo;6hBk{EXOa;Z){)cpXvW*7eZ~YBuF2`bI-@a zwgCU_@VlLZIHLskS0#@SEc_edtrysoJ$={z?$!T{0VHGJyuI;#SpcgbHVa_?llrgP z=vuJcV|_l>yS8c(j--I?(2FEY_* z0#=|LHEw@`wxf|BsJF?*zC&}UxbH)i&`FT_5ofc3S8D>Yp27M_>B|c8#QIYQK1^j~?`Xh4&Yr+NUlnqZvB? zW^}+*&KvOWV{wI@(auNoa_mASe38sR1+QY{c_yVTjGpD$?~hzW?SH~M;al%EKJe=!heWn{S1A#sr&lvU(v5!0QJAHYDhd^_ph`9t<8_XKMCfVh{kiDmN9&DYuVm9Qd{1Oz}=g> zmz=i58mRxmvP5XGD5=#oXG?cKFj^&O9x>K1-e9_{~G@r$Zx%{2@P5O!dX!?=|)(KMRW({1zioP?VE+q?Zd5NSbzvs z1$W4L7iL1yETWJkqKs`+11-b?EXAHA;j3-hrgk(oW-10C?=Pf_0myGj6BO=4^-uA? zIIZkJIxK*E+=JKv%|qAjD0$!}uLrw}Y@=dg50ies;n)K2U%&(a?Su zLpbZ1Sf?RWFsg8Wfi6MsrpzyHCssChlzm}SOhfLBu3sQHasowq$K>IGm+9R zs-g$+?EUC*I*AVYHM!4mK}CN8_-`LQ%%|LsIRA+IkNc?iuy?~Um>C40Vb2?(@nKRZK%q`UX@> ziM~wy|0B0G?coHsZ&NdnEr@9z$1+?bGok8)&rvPsV~3~_LOK2vd4vxAR)zCzg>_V)#3ytEpC^O=4}C$8IEC@cgXzXwj3wCXoFFdvg3gONT-D0d z=%&Dyf5SAdve=bsue<*f{nOO7bH91V3PcNeRX2kc}ld>fde)k~H|1un4 zB$`%t)^{rqk{Lgw)uc#!05NqYa%tVDRhtfuCbRB4!l^5h>wAJe)+b>7&ofV~Kfj+R zBk(SL?sM_}bh*K`gq#Psyui;+-V$n%%IqGhsso;2xjytS?dR z@DJSRNj|-%*ua$R#`r^YWF(u{i|k)3YCe8NJvz?M9Q5&Q0}(AyqaMWfcXQvRvwQ$q z=A+niC;D6TI?vUO*Sk!7_qf-F?vIi1zT$Z8eyp`>?liK zvK7$$B3Xb?BhXKa8bTgn7QiY2GE-w@lTK@)ZnlPn%m8UisqPW}bqM!1?>GUhR}79y z!S@PxIYDAzJ=77@6KIb>C=L+%$>8Z5X zNZ+ug1`Hoya#1qQ2(|qQg7j|A$Czl=YF3 z>E2v-z2iCyxr*C}L2i(bcoSRD7mL)BGwKN|s7(LBI66pP2FnS2*6CTVFT=RkfZ$O? z63;UE>OeG+eS#*kFV4}s`2Pr1;BSyT8n3U4W6hapPGsLT(E3#u)R)!W9@|g_-yfyM z?KTrB@_?59FTlsnB+l+y7edU<;tQl?C+wr<*-ypojB?4a=(zVtH(mLQB6EFT!!0Na7=5v)Tt?pc5{KNP9U zjJ+sv&N%-gW`B0V`*!BmPJYkH{+wH>0baF{$ku5_I;b=wsbR*>7DK__EMo8KH^u6 z_J`O10$(iWwRgume}L3k`05>T57P;@(fP+IhQ-)St#2ag^BlCpuR!@0Funwvu^9{S zH&x}&aJCNoa5LG(h13GQg%+uL@`27J(7%pnTSFGGCHS`vIO70e)sJCW4Brmw}tz6Cjw}SFSglVitokWLoCZ0*b(0PpZq^tfPFE3 z;Nwg?P`8ctIc$u=*AMKh!fTE|4HW8)`&-3RIqoO?SH62_r!nnc zTnPrCYH2A5EwII+f>YPDYe4C6*JI+gU97<7#5kXVfOb_7a#BR;dk}I(`SMljr^V%_0 z^jG4KJ-pgh7)&Q@S$*Oe)fCnzdvToVpNnn;O>R59Jpn$Q4xMf@vA9(C8bicvG6^%Kw{H#Qq zv}u`qDOTEfR~dd`Se1{ak4m|cEfD_0Lw4ZF;K+u*P74mD0)*;Hc5pg{7@!px_wfGf z{k{18o*;i4isvYDo~P(S+<=e%m_EDDLF<+14lLF|tXu)kDg$;z`~OM<)bw950M#d# z=Xos#kanr+JNf@CCf0IlIoi`-7i}8J z<#l)eL9xw24z~eV-$qX7VJf*wQo;2g9{mc@{}JbHXMt13o#^F>R`yH#Eu+I&0Y8&v z?C8DjPNkY$EWH}O=w)iwF5zP;p$qS$j(j*(zd6W0EynNfL{$>fmyw_R32jJ~Q%>X% zk-`G{jNV2~Ea5GpL$wUgw;WEplNGBeK{Z(A)mZJ~y|Mvj0j%r)UzNYm5=iS0?STDF znE)NK3MD{NPwbWU{p*18--~|34xmU=Nj1aAs{ihd`on0z_<;VC?D@l6V*ADr%u49C zEQtNx{-^Ka16k>})7(#KdQHgpYu1tc|48t!_ZRMVpm%Efm5cE!{?}3Q?(J$^m+HZD zB=Ib&njTE;&=frKGC24~{Qb_jukrZ%ieSa^2w#}&Z83_ASby6tI>~h zND7X6;J+@GbpZ^ZtlPuuOa|9Fhb1l*X1DjKr8H4VX6-l52T2GLk?~*&#wvoCGfEF-By!gJ8r3mJ`h;f7Yi`N|I}Z{4rwz` zJT@>D;Su=%Hf+`g@c$8Ke27S49oc}xq0+3 zEB778ch=(ncd&ZjXH_+3RmuWX4e&4h&uW3g+TXDMH_Y+N!`mSXAjI1d;$M8AHr)1Y z_)2e3(;4*l1QB(4-a@edaPOb6rpGWX|8MA*2M;lS@6UU2ZuhiD+HF}7`(4Z+JLoD2 zk~ML-Dd*4^)SCZq!2463bNDXJ7Dx#!5AGHFiwnpW$otFx*92|qol+06W{7kPeEcLn zf%mbWA5%ZH9p8UB?tUgT9fD`5%Be0_Ksy#`u5vhG$Y!ys2iv9rDnHo|_OQ|!?Up3R zyB|e2FV!+RnGiFK`kK$!|FsMn;0Y|XG8gSQ1L3~`hwa|}YFr##aJPHW+d==>C!n?> zy5A!pP&2WspvA3=mh|`esbgpT57;aCB)bJAF%fqnb9^!}DP$HAeJj|kcGF415@;5W z_Se!LB-(?h5T5or*{+j#lQ=wOQSQBl?ElNG^*zz^%&qthE3l4gSMBWG2L@1-d_X<$ z??*o+2GNwu^2FAfbFYYB`99_KO#6R0@Vn~16Z=<2FE{9t1qiEw4fP@Zt>-r@k5{jy z>Id{)-TS#X=a6TZnnvdH0sjCo{}zzHmdJl4x3$5ED$K`lqSe0_`v6PG+)G zdwNY?@+wBVqSv;G_M_t92$B6%G6;VWuMc5`8n-UP+SD|yws_aMFwGb{QGH2G_*u6R zC|`>OSb+^#&!hh#OZhjsrq$kiDAFUnGN_RrE9x*+?^{^2pR0g}f#x7`Ft$jw$kP9m-xT`8cWUu~A_A$P z;y=m*c(k>-vxBP512RIht=Jdj@KmY$c|`ZCIe-Rod*9a!2cotMKXYk ziP4KuBfK7Mt{41V7C^gjC>JK)t6jM&fZH6XUcYcwC$RzQaZbuyDlfvy!~{RV@+Lg2p<)5#;zm2hOCzYOY{Vt=9kVV*&?JgQca`ll?OCTgmePx&fU z23mel`|>F=uzCT-2GRv|KgAJN5un;uRSqhTUmCq)7EyOfvT=v0o*s$z*Nqt9dGyYd z{*mY|uEcgMz$%W9VF|6VQ0s}|>wx$O7>NV5_w#HP38=DAXC>~TKHx08iq1DX_MkRg z<7K9&%pv;!46ECVy~hgrCD?WR0BTD)bj8u!GbOQA0aU;=(J#E`-5$>8tiV33l#C#? z1ic|^oIjlz?m72I^2jMr_|H(+u^csLhu4Bxj(Pmj(U!3P@4^3jWDQEXHJuOm+~tAG z;MIiwMtrHOMH4_~v-)bI48G*1@%j<}uR`ft3L7{@9C8Eoe?8u1619JSV{hJf;+>Dt zsrHfC-bD?N{Brex^I9fMRlv!8f2QiG1}L-xmf;iUPiFh3`&&Gq|CGj0j)(n^;0&v< zX4}G5Tkt9+SpQk^^TN1w@msVWBHt?crQnB{zxQVjaBcWECXgI6Xx@h&mE0Ym*Rpm<+Ls0peT!r}p|45-cX)aEctpm~CtX4Zjc?uQi~ ziKY7p1t7cgm~(`8-XgFU4f%xX^R6rKscFWbcK$Ks+qA)=VERY&pI&Zy>b%wkRi1y5 z0lXBM&P?yt{?2H($oEwE{t3_MixrdS7ygrYUd=Ooj#s@LHxxa%uGc!4+joqLzn=Kx zrFi}%GIQPOC+q6}<7Z_y$PV=XKiDICA~P{Jk_W3p58qLgb9w2y;JqwfPn|h7eN+8; z`S5v8M0;DFU?u$!^fzUMAH0D^S%4~iNFlVz``Kx@H5CudIV$)W{43F;=%C+`9sD#Z_Jmofo5(BWvB>&JsSYcEq4@&!ts5Lo){x^qAR1WW5^34^T-Q=^@1WNW6)P&}637hqW8*i5e)ILp|HL0=oLo+=t>=UOZN2LO%^bhTRrd|O?l0_ zU|-QpSA59;y#L4K09VlsG}!AAxk@G4RVrbovg($z4%<@gG7PP2qW?rJA@*o25_>3? zKK2V;KxwIme}!oMDY^tU5z)893u=0o`Dm3f_{oc~o;-MJ;a{Cx+9g>GK(DHpL+7O30adqUJ1}c5e@j%8 zchNT0`?!uP-X06s8kMn+U(i28wZ#!EOj~9sry(nHl;3woGJEsM_v!Qcgn13G(7$z* z37u0=eTI<>SVAYq8Z!Gwok{L-uWGa$mTLA#*c5-wVnHQE?U z@DeKXVD#XItV``?p^SS=yn1=8%Xa+1o9s!m2*1CVu7Ul;|D)jkU(z=|6g_z!JY*Z5 z=M4An%bKdn8khPd|7W=`;a~heoc$Xr0Mhvl;r27k0EioyRj@dqJZCnA3c7AQUpWxd zI>3J=)_-Xcj*myuuEW?(#o=zgQUHysBc96gMicc#e{xv^Q zbzwgR9VFEv#k`{K3+O-MQmRMj&y`((2E2<2#g9>sSd{5x*S)2n{|2kE5Poc*((dK^(}3E?Kvp)8CZDc+pY`}E|0moftA9Eld48z`xw)tQtJz%A5KK*wZl~#e z#j#;cu{t{$HqV^Tu<@KRr?@yAP6ME|reU4=nj3Wls6kBls?TlN9bvY+4zjM`D z#=MFl^aL(|Renm(>KJ-O_Va2VkhNaLBNvgs`We;wEqJ-*{>}TD4G1#;HW66Z59j|R zkO{)K;=)?+b%aem_gA^!gr^~t|I zi~TSSAk_JVcY6k*UxzG17NU%tV68N-S&vul1bXJ(#ebc<{=Y0J59@xU_vyWh4H*7I z4ZwJT@&d90mLD)p&?17mJik!>GWmduaSxEM-yQJ(D#0_=!B_X-Q<5U6+=uob)eP`_ z{7hsz%C)%V&QLcmmB3p-|JUIEkmtclZ%5{`g3Hhg+B-TgvdY`U6o7bVGHU8@ss_GC z_sz^K&^FF8Y7EY~tG!<6|NqdJb2Ui3AQXZ_b{wC64Z{K0sW`J|5!+!Iiuc9*<@?n?p-yR22gMM=`a$X2n%$q9b1#l>PK2G0g?V>CnRtoZ|9L7N<6`Ii zHRJ^9(;Jdk5@m53e{py{Zxve^|UCreXd+9((f)(NAv_ z)`d(u*+{M5NfgJ<(O;v@{i$e;Q~ZH`N9MJUN4f1y9cCFm1J9onts6PWM5uS1b4=;U z$nhex99A*^X%JnVG5Uhn(8>QK6{IgR$NfeBnBUOv!u89^ESaOk|6icn{qE**+d3QZ zG(uoSyucvPKODc-l+{-swpk%qT}AK^v*L0(`-2YA64amd=4j$Q#@;k#-DTvGK815m zgNK|VU$qrgsbRo*wfZdruo_@f#*$S4vjK_#LQk()Uv>Yo12zrR7=T!S=Kc@Fw!Fc4 z>VDM%)w~sUz$SkQ_nOaPN67d?4j?X{jQD@ORhEodXaOt+NbUl%*kATQF@o@401sa! zz<&pHzxnvg1w`w0?=t+b@>lVWMgC>@k8p2?#RRenvJQ%|D)C)8Qq>4o=bB3m(2)es zd5^wf>HkNlc<#mkpVnP z-G(Me^e2Yx$BJs;e+9ORMxON2xi#q8JkIp*g3NQ8O&{-@1*gc5 zX~$sg$e|h()$coFZ^2$K-I&V z-JKUZqe}j=#Ph9!YQX(izMuUZv5K+UvEs46{k2$tigW@kMiq%gH`D1@5rk{%LP{{N z?zk&~|Gy8kD?UlbPwAD)G^FKP+!tsA`LKHfsQZ~im+=NNu2-4y*^LT|Mr0e7&|mRB zJRp}}E?R?YI3rRGu5rKr2bEEUBF*Ul_y8+k!#hpHKM7T@0h7E2F$t&_)8DsKHJ-vt zp!;vKztE5Ob4Leqc0Z%stJ`pbm)dLSzQ)?>3bu;yRRhM^1>dcGY!rny2KVLfT7Vj8 z(zoKqkxT4GZ1EMxhi*IA#j9vjTVbiMu21o}q%$ve5 z?=CIC_V@_XIuw=tlnQu>=OPJ{f9>~lNY1^ zSJWr}roBUQ^9-i{g}z^w!{UB>7Ulo41^QpP!2dTxryEY}zZsprKlVWEUg%He`KJ2m z{R{i{{_P&d3#0_vVLVBifU*KLIaFWVm)zp7;QuNr;6OeV?RF$xM*FO5-gq0VPC2fV z?bob*fD+&Z-^8_W9&`7j{jb8xe+#lsgSI$U@rp=&_TL`of8viJ3Ybd2Dm!d2SMVb9 z!)A~zz5{pcM9t_XD#km~lm0aRW+q6yLGS5j#JSg4cX>en$9_U=OYBbUCKh0BtV8U< z*oSzROehOmQOO4537;Sfp#HppRQonU^Dlts6aHhYcjd+Ygz+o?cY?2DoZ&&D$?rMO z>+~JuAW!fdeS$B8hmBaDKdCqDPWGVym35tA$|XT%9`I?MeCqHK{?)gd8dNFHmUj

    =LHEkaIf_Xr`d5c#4)9+T{M!uCYSclTjtnDy`pz#LYa8nt zs}V~X+d}{2Q}hAUr7LkIdH*DMNjlC%-Et4}e$~5wgZhhDP+26Fq8S?cl08t&BK5x% z*Jv>Oe-?IcL*zI-?Md)|C|ZfhODm~6T8+id>OT?9LGJF2NCj$=zhjs7pHW*%^U80c zi<%W@Ca!MfAdA{&>H({~^&sGwjkiqW4|cjMuy@)DSOY zj^_XnDYR*-bq&^DE!I_2qJigGVcNs12%NVNE44rIeJ1JzSE4kWqT+Ns)#KM$n-jq0 z>#WrS)UIs}__=n#2y0#vgOzXimmNs%{WUKiM*i~g*7s+-X6SpE3y>~Q3T=8kn)PVT zP`T~|>{DBCpvs$kK?ETD+l(Hu_mKOC`Tze}`x{z-CZJ6gKsumB`WE$vm4vb#vIgq@ z&&ie0?7zAJ{~t}vvz0I5U+*&+{d&K8x5ffw2lbo&YF$Cb1I+u22k1)-K&oKP;42AL zLHh$=qe}06YMmPKnzi|lRD(J}wy-hx)_$Y8$VzH2fM+?2*QpwOg?{2IZvS9f+d)wE zD}9|FD|0;S>Oi!!|0db1&tTLY$gF=4QhLz4`8M;NchOUJgRgTu`T>-k5nxn%Nj=Kc z;6I{im;#vJZ%Xd_Z+~p;pIDywH1T_5qhk4D2eBu$h=gy@p}GMkJOU1opE(`-!NgQD zR?YE>`9M`lurK^asQtYdApaO^R^DHA=HC&e$Wr}9jkzh}Bd81fo>~~q{p!N>p`|bi z?F^hBY$|@%9-Ep*AsnghM`$v2Ptm<8gR1dQRsh2}V5a%o_Z(aS+RB3Zw}_gfRj8{u{1(ws@SY)& zQ*LvU3ZD`N9N zr50M;FGgUw0gEHD;QtF^5i5g4)$fm|;z8Ap+KEu_(Y(CbI=e0WC+q)V93XoTG9-JH z?iE%B%m1stpgXnBo9GqZ$14oQA}d3n=s+r=_*p%kL%SCW{hGpFl22_Z7J9MM6!mWm zd76Wu>s-J?`C45swR#kJ3Cg^`1Vex%fPc=Yi zA@C*q7XqCn@lj1!`F%OM2ea*a68%m<^FI>z6D##y9w)yf^oQKmq5x&ajQQJ~U&DW> z?V0kY-((By%e=pS)9(pbqv=%t^x%xL;qQxs5>44?#u;f>98LcSwLjSaV*vUt>}UL6 z&|lz>MnpU{IlqGF`RBRdnHiGHJ4GE?FSn!Hfv<7IlqvB3N1~;P@9UvL%_H*99h)3`Fup~6>-b0G=f`ry z*3t!-fIj^jdHda{1Y4-$`vASLEmi9d`S3OP#(_ljRl!mY&O&jodshKG4(2uGSQ+U9 zeAiCZmxGu&CAD``;ldfHI2cXdp)-3GFGs_y2>X9Juq5)N^46gR5T?|-tC~NX@+nLU z{l@o&c}4x!5ny_ts(+N3v>bp{6NPz%oM6+iZaz3Rj*^|fK*diN>K*sc z+1!A$QqPahMcRRKe5uHC-T?hS^K~QWpjTIYJQmO*4D}`F!m`wXAGM`tU^ub;3i2O& zVF0(e>UF5|xf5*$TbskzOq7OG(T^i6^%4eELusoSeV4xvA*sV3{KH`%|w zpuR29Wf#7hur5_&BJ`UsC!HVxmY_8#{;eFfaz|UJ`#FOGI1Zm&3*?K@T9g|q0K$VY z0O|f=2e9S&jRAy;zvcYI5@Z$hKQVx6@R7ObknK1h&Ee6GL$>!{Rn94IPyuKaJIM-Q zh+}C3|I_Oy|3%d=+Otc2#M%?U7{6?X@qkP`UKZsE{#%Ghqyh}5De=(+)c>!r0WWbi zgnzw1L%O|F`%T|6Y}_^%HKvwB_C zS0!+L3gG#l;@#)sdWq4;l(`SC5|C&v$o z&l*27mM*q{j<`hP)4!fc|4}fkSYCQ^WN9<7c) zo8l#psu*9YpJ@PweT(*m{~Wxws&8Z$OdnJ?YkrQr{7*S~?ZRg>05k(!p5Jy6(cXe} z$Z1T3q2G=?g>B2u7w}rg;nf7W?1p$N%rOf1w3X4UD>9YH;Sod9HAhs4Rf^L#QhV|JrLW zk$X1gDhdDJ(D68uvrvR@_z!nADT$pkK)&z1_4VhYzIWos9Kt}j=dPd8#C(z%_Ctm6Faoxz4=xTa=zwod4 z9by+^3Hbei@hjr@#D5rH2>ho4|1ZD}$}k7~78YO|6}OLV~)i+`UhWpS0*nQNa_ay#Xv+u+xl>d9?ZuZY+ zcb5jKHOT_>f~RXH`9gknhSSIzW#ep=)zqAJeb-KVdKdb-%scvt<45eUWdfxR%3dk@ z&qa2j8WjWegBV~KIe;Zxt!-2rd;y+Qa}5u`y?Qfe@f|V&5BsAdpSdfXmz`}+l)mpv z?$=&Zu4Xpu`a@(%OGVP4=Kk%bK|yGWX0kl$@4piTaHZG6 z+Xnu-&_gf*FRn>;i%{>UplbJr+jn4vS7%KNrzQC*zFL7bRu9azzl(fXiRZ~uuVRgU zjRw$#RT*;IM7)z$xDH$KhI=8xkYHJWd$DeLKFbD#{}uklIa;9nFC+_5n0Y-Idr@tZl$Gqz$^e8Kn;vD;*phEWsWj67IYvQm5K0+>l1P#+@BBH;foa(KJQ zYrh3c*4|*60M>=oo&e%9ftov@vt~H2@8$DAzLOXrKXt{E zh$9kF*|a~Vlz*E;E9Fmh^zy073OokNa|HNT6|h+VSp!oAtrk%HUlsUS`KuxTJ!3l1 zuMS}0Gb8_3{x6IG5Z- zjtgM_G^bb?KS!D`RHkFfx6!UhHt33SBQXq6f6wcn*UX?^@p zC#*%+fFnEyN9e(-`wT5`Sr7#a1M>SqzitZwHW%mKx*uWNP;S*d=KamvhZ%p<2`xuZ zoabxD>nx<=t}@`A!YJkP`h1jqbD6|Bjr~h|9n*`ofyt^7!t{AGC zEP&zPR0Z4nQ~bXi_)OxR_arLcOxEL5>}N}^lp=sI$}ziVwlBFSP}d-w4wS3{ST4Zw zB~k$7`-Ojf)!=iOOIGy^pUpttZ8Pkk>~eXYsT7v6ApSouXPb}ns*76S(Z3xJhEtLI zS&OD7{CnU`t2!NPygYp*$6?je=(9;d?b;vI^Gu1-TUyG9tcwQUIshh_*LTbDWR4|FeRsq7oqUNj!8ozf+uDF|~e|MUeNFe^&*Mn0*-WE817Zkm?5X zf3pCJ7L+T9=W(5*ZAF9HkG`qMw&!PSFZjo7aK;Tul%US&V zMewfJTUCv+06%g2RM6@0BRY)s1-A(WHgUWtoLrqzmBD{Utm9;Qt!(d;IrIXoqGzKL z^95XHjg+Q-uchCIxgTBKwd}TWh+SXSyJMN`TmxODKi!#QLHgo=kl89W$eDlEWJ)>wDeNk=TeV6sBzm?Tk;%CVo^ z#K_mtFQ|6A=I4ri6e|<|YW$@5De>FD|Bd*;@#|yJ*!$$bM*A;g1IFT`Dq~TOgVwj0 z+>t~E;Ax`vl+l~avffHAa3T3^cB3JN)}DF|@OqV5|Akqb+HtQaC{uS(F8q(paBCWY z7=hFPeJS_<2-irK#EvxlMHK+*T++S(#W*{00J8yAIETmZ`I^6YiTvu%`1d1d7>Z!d zV*}1{Xh&bwI34FW!7X(;$i`XLPqV>v2>%IOha_y`Nchc6c+X5C`sp0+U^i32KWhZX(@Q(f8;{ELg4FOvVS5#YZq z9;p*npgA5>(;}vjquPS!=@NJ)^Z3SlL(CicZGxw8ZIyk7e&Ycl+D&6Hc3_zS%M2FB z0=>XF&bh1pXUE@_=KPv))aT5~f`Xjj(>%ZF{f2+j?fx_V+k;?rJ=nAY*|EX_qX;wq zA^xA{>{Wl$68!f>D_KU~b0d+-b39U!ye6Hf#=+38pXUAbyIBPB|IjL!rIi0S4xkzU zbp~oaNcgih)^-t{m?wigV;kPFa+Rw1S4Kv*QQaG|6-}@Z|HO@?Mr$l{A-mA8y^l3{ zo__5VeERZ>nL$8tvdyblA+M2NN=1D5h@YO!{&iUUgUko~jl6J4dczM=Kb$GjGy0N$ zme_y0pC&df=EN6>Pl$gZerx=t_|@?_kq^w5_F7xV?-08A%-7f%9mI_Kk{73|teR+6-1uH9*4)XkhiRBR8oy ziuZp8|1XihzQW@N;D1ZwmvaR8S4FL6e%Z`l@pfeb#on#fPm_0~>?t0|5g=W)fL0f% z`d?)Rq}5vok?QjFcrgIkN<{|h)z^Mq$^=>^Py)=QBIl4j5@kmg?b3MgZWiMhC|CaC z65kc^p9S~Ia2~}9Tp~A@lIN6F%8M=0v#6Fy^~DLi>n2>0k!T9q8+kC9&++i2DJZ8W zv4aDN2 z0rp)CK>T0+U!6hn{;~ocQDuIhvtkWVT3bFBtd zRe-7j`Vjll0|mP_Q#*>G16+?BK-XGJ22$GeIM#SSstbFQlYX8R+L7KtDx^`p%#Br>?)@J;x+SeGr>iZP` z%h%g2tbxYu@EDA(bEINK5QsSFX=! zuF_O&=Ffam?Z|&N=4&Q#(6^BPKBR;bew_z#O+cg!&b%pt1_mO-3 z8a~mEbAE>F;xlLb9Cg38&)5bSz#HhjZ?NO*)6OPh{+S^EeXPJ_)Vvp1W$Fu66?#q9 zq`H8LuzsceY3gn(e18(_vJ$_&N=@LGJgzf7C{+2vh~K!bt$Rbbp*j363t)WT5O2DF zcw0ZsW)#PkG(cmU&)GF$<>!E#7v|N~FR$~k>EDKb`F_*UmQz?X)9UwJB$o1yt-~??mrkYM-t~vfr0Q z(Dkw$iM|W{rUNS8k{z(G>U(ef1lec(mP*-ockxCb-g zUZ4ZK7IPUj!}V~$0OCQ0P@&0IPvU#}(W4t7Vw}mGsd#n;Y~k0TCSVjftwF5%0z~V* z@hE%o{Vy@)yF0xu_r)5;K8(f3cZ;7H-#q?AtPSjcoBu8yYSTggc7HdsKpOEJdzpr{ zmtDL&|#K9 zs(;7`)c3F0!S)4{3SfGo;{W`hRUBPRJ=|No9N5=Rpe4EAH9YE9SOD9(^(xxs-(>o4 zaK%pt)lEl(nBZbifps6&B{%k@6nNJJK+Q0b|1SgkuLJ&HB>q>eq;?K!fCbP#s>6wu zmcs#3QLB9`@&j{$Do1lfCr1u?4N+e7ru-m1;NlSd}LU?u(YS%NIjdlW34P1TBvn*$r3s#`Lyu)}u%max3|G(j1x_U#b zo^pW3$V2~4Q~S;L>$agk zvi?5Y zTV_C%VfNo9R;TtAy&h-)mYbFqkR7kknfUS?6E_CaPj)Aohf3Cm{2kG@QJ0FApQ!kM zz<-^b(;&aNpAGvkfJ)QcRQso;@~3Y6Me5&Uu{~6#en2hUa(d#v*W1XHWvq!8$&n#%&QQz;ssjtDt!_-9E42r>60jsr;OP4d@RO{vy(p zDPYa~UeqdN^H0)yTQAsQbP@_+ea>F0fh<560Vs2?x_U+LQt_3?Q^cdae^mc(v%o_; zpcuer|Jux8X(LvVCtD!=Yob{8!2e7C3#WIN=anlEtt4@jVW_+1mN;`dj(_ zmH{`Y6!3weDE~+3QSHlpLzHWk8}pTiv%l(Z$$uBtjsF|IWeF4sgz(`JMh2P{)CJ`b&u+Wm+ey|Ux`;O2HrIt zNZeoQUskw>`u|n`ubuve2Ke7ZT+)?C{%h4kvi~=)Z&yY3Kgy?eX1hfLl=D&+t7o2xA}d{zF*-#8(RzhbH<;K^`qx!H(q}MUz&@1nkv&x^r>dSQ_o^*$3TuDXn@a? zhfV^yHHh9HLkIkx7+?bxfy>Bq&Bi~yPFC;@>fYv1`LZOKelZ`bG#d^4T%;@dWKV3+ zi!gxe@QEZUfVIPLKlJxXoP8lIfM)+I=cf)J;a(LuDTD8-4KfrfFR09*RR_ryDB71@ z(4mPxQVlGBV9%vzQ^r&oKv83p;lned`=1Z=y`KV%yC?!tu5KJz z_KP6@ER6dXIDx7!(_(?_*~BEuaOh_xw2#^x^?1GxSmYKwyEs7te`|*KZcen*l&EMN zs^E02K~*xRZ(|EiQHS_C)}jL(VJ>RU8tSaK;qkv@cEC26-6HgZwmf?=yniOHM;w`o z%S0ku(S%oEH`bv4P4XW0YPfyrEbouD-jmhS9t6}2&|ip^r7l;+p9wJDLafwU_{Vk} ztzq3Yz+5qW@f1|)z0~Bk;$HIl$?>jkg?T^mU_-ywy#B6xn(}Yo!-ydHr)dGk0#tL{ zo#=ld{ZR?0Y-sZoWCH@(+e-=1-nF^md znAx@!3-C4kR9!&7k)OW7p}j=qjY^`qjUcAJOigP|CeBSqW%`myHk)At2k9?6MC3|fq@%U}rcO(&lA^`2KtEwG~*@b>XzB+-mpO@H<;sE3GrVEJW3-MMpWc35m z{H%sBv;?LBX5hKC7hnmllNf;1|3olV3t!zC-&zg(5JxxdNi4umWfXiS@v@1wC&|VAfFZ?&+SzEy>G}TxfL3ze{d>2QkhFuU7 zXu|tV2Z!jw_4*uz^xNS09Q1#Hs`?&Ratx7Ff9~0l=aWWRG+_U+;B2&`{ARrWQeuX+ zL;$aNx7^Hbf-?`?w_q)|1kbftUFBF`s`QttEMJruV74;8@wuSluMPJr&pir*`gx## zGu%@ZIKsA2uk|jq%PfHX3|G5hz$}3Idt(5W~;3;o)C zTXXBQ$50VG;S&M+)5qzM1+bi*EWp3-`wKmP_)|5&ssgGL=pO3Asl@xt3G2@qumJS} z{VVE(lo}5TG~coTiqq7f>(paOfo-@jGt zf!KBw!PlrtT>|qz=SO4rGYN1hdx526TIC1S>h(jbdX5P`b%<9>GrhME6a2(XFHzI7 z3w(b}RQmxwZ5o{RP5k{_@&c>bVc;|T+Gn8uTI6Y7--G=xM|l{_p0}US>3WO*Ex=;* z0U6~$lJatzC#Lw{CIE!Em;ctjeu@WFCu}xBmG`Q=lRlvTnNnc+K3NLs|6wM<^ndN# zY5ZUKF9-Kmo96SLJ0s&Q_L0TtXRt zSpX>snv1OZzs6v^IX^3c{Sy37QATBMsXM74udNE9M7YaeR7&|gR~KS{&CCkq^<)A1F(2@>lhPT*%GKOCRhLTr zE(`XHu*OvJr}e0umi4=;>aQaaXm#$97q8ou&X+GyfO%P2!O#L#3o9yfCme6fJ z(D;5b>o?pRa*QL}GnRvKjAH%22MbWuTP0Ah{sYa!7C+JS?TW#7+gC$<1n%} z)lat3teW1N{-=BCDwM%`8TZ#!wp)gL`G4t&)xiH={QvK~{~ny1&Z!g;S?)jqD2(Nv zjeR&p1;#XNP;YXiH{#kc1*)Ta(QQaS$VRGwcTw}Phb)yc)F)x3=kZONNvG~JRkgQa z<%|Z8`-m+Ifio#~#iBW3>{-d-w}BVjWP;2kzgVnJtVGO@eT`2ZhAudTopAP27koce zz?a|yjj1NsPxa4mJb!btf7R*SEl%BDHZoC~9=TL-~G27=lw;Qty|^G9NQ z?VPLZzRmWK%Bp^6S%k*|9nq%$TMdEKzY1J=MHI3CwPE=!gKTILI8WrSnmD4#DVm#- zA>a#LF#5}cus3#oo1k|7H4BS3z!0s zHNd~>e>I<{C3u^TD!(qkzxjVVW1V#(Uxt6ZC%rdQ0qwiJzhvc4_}8H*z;0RJR8^SI z7nGR&aku_Yj7QZ!&!YaR7ojm0=zC@aoS=SVEb+)pY(XXV^DfKumtx+le9l{806XCT zUts^gg##W5Vu3hTYc}|;WumLFcG}=W=7GNb#Fq!r1$I+Ma+Q5(+fhZ90le>_3g~yH z-|S;1#bnSwlASQt@!PL{44ZI*Syff2Cf-8dY6r4@iGknGha&YTGrXYkp#L}G);(bO zW7xiGf!-nV7ye}dH2Y#X|5-zHaE!|LIsxm*L*@HNL>aZ|ve%4_ZTx=)_w50K4FAPp zxXJ`-CvSOj`Ejv()#S!=$N~t5`b|6SnSDqd{8hF=*q5Eq{bU6!X3z|ARR&uRfU$q^ z|H@#lPmq}(1{27HfBzene+4U`9t*2LwEAOp8mOj7RYZ1`g=+2mp=#fnAl2rgC-R#r z3fmB`w*tkrQ3OH{UWiw)ddO@+t}+wv;dk(VEa;g!N5t_sRzdYcit}@05wydAY87NH zl(Q&8409iO{}W{XHWT|V2mdSa{o9xnl-aA~COPv#z1C(~R+T!=s`HzwN>ooKA6y=^ zDZgx4|K{9VdSD*>e{B@`Pw{;tc$_@9;nh~WeYZ89jB264yuTqL{4L}SvI$lZ5ZVA? zMR@PTDql|auLZxU4ndWO^3SS+RWz*H-!R?}WBv?xBY}JI{hw~P3v8V1Tw9LTV7weC z({qdaKYzKCi7j*{1v4g62k|tXm8=M<1l7!}ekeMIa&+BdS05f3&xt+J2bYzIrG68fM z_}|8^!CUzJw_pi&2Q>jd5&@)Qh303aSQVO7=^A*U?m^yZD7wG|IQfytTsDwR`{$GvXnvvCP%hgZ97HH?hMBZCL9{n)q?_--XayD79 zYZ36TUAHwe?f~rt^8!oTZoqhu0F29+T@>4wHBI*Y7V`_^p$#y_Pv6A=j0LDOxE|KIoF&X?C;)){n@r)0XFfeuO{!aF<=9` z@gTqBud=d23*EHLT_&_Hj?LBm%w#NT^WCA*%#*L@i|9#m1RAPVa{Iik0 z@D4Ej|AN1TSp5l5`aZMi>r$(qj`=^ol83s0l79v}au`mr4^HtJ9(*bIc^@yXjGwsw zTX6dMSer%sT}t3FsuSCh%icr{dww#I)2L23PcK|b=IegR@fo&53_uLG1o$if%5t*O zLuF5OybpkAP1jd1uDb5!;iU#h+cQl--d^|*(Qm)2`&Tmr<-e6Rd>Sl?jcdnF*~sQ( zE0+_$j04FTcxDg$U&sI7#-3VML6gJmy2?I@HPisr4LF4Cn#5ZTuwHd}ys`-u0;Ny> zUwb2p#cQ{;3PFDJan3fzE5ty)FrFIx--2yiq^ICCUlw(w!}4i2V^uY(&QUdwvH(&? z@^DVKiTSpn`z>T{?;@u5Zh{T2q;g=GJCXU}jaWmfBb5yh+7w$#{WBe}Jp5WpcMA^d zvlIFi4HqUFT}jmWHfvISXj<)-)v|RTu61G9q672t=J|zkv42?rV;{ndZVUOLeF&ea z7IF56)EO%KCwrjj8&c;g^O)lJz})zM+xyonfS7=3|55<%#rJ={ZTRoXOp^g%x-sXY z%wkrspPlc*f8o3MZ-@o#OH8tnVm6I{6LKGWpJoB<%7pm0?kZDSP4%mM z7yn@-(1_gL!MH!jvrfk@HRf}WPHR0=2m9~l$sarylrs1k8E)Q#`K5FuIYD+88AM^vWrpnRf z+l^Yk@#t|A!2d$Hal0k5ky~U&H0KP#4 zaSS`MhWa7x10p?5QEon%x;&)f0L$LV!^;AQ`N#MQ<9m7kP$N*qknSblZ}|fC=9>3b zeW9j+Jp=l+b6It8tQkPh5v_d0dl=5|^2eI-aS2WJH}5`P+d2!x#8oXUb>Dh>n}h8p zfd!}w!kcoa>bVjYph9r3CUF1f@c)fDn)6i&1gpY19cS+0!L_GhM$TJP#c%P7*NNz_ zFjYvM9glFPPjcksOY;u$!iWlB*9-CeN&bHs#sq^a+*Rle{{yrx9`xGVMG%MC)U1ejHSVpQ0 z9wTqCic}?&3%}GKM4o5&R){ zPxL>GYPL1>CSIj7sR@=RwZEK7qD)bbEWl4Z?+o}!MQoO|uA;mL)$*GKP#3@Adh_cR z;VaTtCNRti*!(?Nitzu!zbb}QqgMcXqKW0&1*8xNZcDbW8P}scKD#~Vy&U$^lUGf7 zSO5EgnEV&&E7UWj38T{bOM~GCu=@7sg`GLqwmd^4{CguTLCXN?wF3sAjH32QZwmux z7NEa1zf}ao>TpbtUGlLq_j6{-Tciy5Kpd~DIu6YgOT`)6Zbo|l+V`kHaA<#or?E)? zke}F&-CyL*2mj0P20QTtwY=F({ya?fSi8n(wvQNqy6x0WDvMAuK)?D*v@@MD{@P_T zA8MFpIS+gJ-`6 z*H}P|ttula6;>Z#hBMOiyQlEW*+8i>^kL55I`;nk%-?^<1e(GB`!dC73eiS)UQcs@ zg?~*4)=#TFEDtJ^sLUA*_BI9he*rZ@HN%E~Q$8%}H|}pXQvWp`r2mP_gmu62{i-?A zk*ow%2yBF=`dx+Nuj9;`fPQI{NyH#!umENG49D_0oMcAGex|TZYeE)}V{5gU5pGXbh8+VnzEwF=Ku!LR23t6Zd9M66_8>vD%z{K$aL?79hS2mtA zDMlq>l!=A&sF(de%)JM+lvTE_y{l>m+t_ApBe6kAqKJTG1Tla_K@5nfC@M&sQQL@$ zU9FT9F8v$nZAqD=`|8|qzA57H+ ziCU(uKw8J7Z`$yvk5vO}cELLquK74VxdH4}z59Xi(Ds4jVDf?J?D5~<3JwtX&+>e- zcM;`cNxZZKkt66bJR0^Jl}O_Ms3Z#xOlMRD^jG*D{=)p2x6*j8FF9laJ%`?f=t+|L4ODUZh9J+sJ{Num`4+FK`7OfG$*s z|D|vqHs4ZM|6F##1K5ENvI`z!PdvrG{Q>`x(7K>TA5;*lB)TQ>IZPS3EP;a*J3^y4u- ze%_8pz2)sde_V@O!3)Cs7)WW0Z9SIS#GBdo;Uf@zRwlLLoN6WZulA2QJu?4b|KS73 zaQ%P(e+ZIoEc$-{pAq^0**oux?5oCok$>2Z_}|4mcM%L=4Do;KA46uT*}W#KiB$=? z7dAkq_stcIIH8g@ECD0_*{v2l8Zx94mjAm{04>52a7wrMw+}!}X*>dZ<*qchYaQ8t zw_%gq&di{mxz}<{>E-zyQ`?3o&c6WcYXdxh6)+Q-u!vaTr|j50+3)70GzIbMJu7PM zpi>uSdK#MU5wdX(Ae--ACf%;1>*ePhUs5;t9i3@*q~`1d`pZtDN9763!J0_MZzF8~ z56Dhi4)31^x4#eE-v!Ut&wn@9$8x!w+c%|Z*Xxl3W3Z=}gZ&rr624#j6TL5+l67z+ zvBWp1C0!=P%oE-pecu=TJrEAip3iEDEpP_0he2SpIV-he%Kuvj z!*-70N68{D2D3Ghq^)89rz0n>1pPPjO)tk{IE{Pykj;BGx&6K204Jd7Pv-WyJa#(Q zkK^9+IC}AG$i(bOR07xk4NL7$NEW*%+gC6Ti^=*OM0T^^(cb6Pc-=vK2lFDGxbi)b zf@OI7CXxv@2@S9s{NGjBp>Sya_}oMor?aDLf}z^r-wd7x;J*&&w!>vqpPFYU{_U}; zr_H?cs_fA#iTtl-w{_+<`tbtgVmPbti5&k7_5Kg9eR})@FfFb#jUT$doB?F`kLT(I@S^UI_+i9Ce3tUhb!$(K z#hdh7pO>PH&gwiqNdP;7>j^m#U&U+~z?(>cyIHNP=*89;4?rzC_`X6N|AqK{9>oHf zg9R{^V+#Mx0eb@O`Xhep>e#DBxEg{Y?Ot`va$CUCrhINfZx{(b2Fd(iPWBT0txSAV~r|69Ps z^&sh5?!Sj;uE6d$ul+OT{p?8eum$yOz=~e$c_Jq#%LC5zz1hCj{aF>M=HCyz*9QG{!LRQl1M0%} zAArto2lky`-i5rsYr*tMtd(8=wqTl;y}j)2Wrx4@!~wQJb~XV2T|sky*ux;c;SEF$ z&qa3V3+M~l&*hPR9Ov*~#P{d^lX?CHJoh@TH{)FFakve-e-rPSOZYdZ!Cpf-^#87W zH>;m^1Nr(ex8b`uu|WQE5dSM7FLFfwp2PDyi73z*e)T1AzU5?vF3i82%jNom^}n*8 zl>l|H{N14qxi6|~T4UjwWfK{3ow?P7XK8I$MdR9O=4tl*)o5XH8+tBux*9yBfZARu zkloG@ANt;VLn@SON8c%{`Hz~Q#^CT8vRWs=a_!J<4WZEqYZJu37J&R;{hy&fB!F4_ z|MyzI{FxKcpXY(*Ls*^6rx>+Am6HCq7DD{nFL@xcVg;z1026TLS*Fv)e{g_^V8-=~ zAw_0Y#{Ye8L;=lh$}))kHMD_Tn-1WAE#1{;DHBJx0p0bR9Pt6%0h3uM>8Si$#Bs=nN#@&Crwm zi+Ux59(#L+n`c`c)YSt0@(3kDW4^s!yEZBIr$4_NSiJ%+--YMNy0>E@&%0#TILXXv zpU?2km+-E2kQVLH@2BHAxSV{&tMMVI|9f$q4(iW?8C=BW0xlPFs~?QuO#TmLwQfgF zH0F$)AhdPD|0WQxrN4c`zd6M_aNd5;y^&u|8ry=$tXHnZC(B@*K2Sz4m$hJiYGE`w ze-tu*C0Rg|>G9q(e{pUh=&lBGswci*pWUVwQvV;o-{$Bdr_9)GR;FpzSrb@-ohGe- z?SrT3CHzrN;trOs{ukdOIuIXn!CO(|E8f-f*)y{H<9X#gAgcom+0XYp#47&1*fe+ zUJtyVlkkG*cfSP7TyLGcKR7_(TWm)@kbEFmfVj?%(Ejl(r9|L9)-=1_8Hw~JIRG=s z@Hg^l?tz`pPe2YF4FhP$+T4IIW;Mq&q~#^pFPn-6=6+xn{A}hxw`CT{{YZcr=z#GY z&TyWNHLw6aXePim?40PnRiFK{KReq_82SL+$ETpPpP{<+P;&Zjq_^)Jjt9X1Z1nKk z=;tbU{w~B5Shw`~k_%z~+mw6>legE$bZq@mc>3;OUta@mF5_}FazIINE!e*)$%0|{ z)25U6`xLhS8+iXV(95<4nZp;*OY~5(3YwLEg`{~G{5QwOIE!8c9q~fU!$x=-J=zHL zn)zZ~zg{qV`Bmnyr;p!3HY4ui2-JJsYQX3Y;47mupdA6!{2>{tuqNRZIf!-8M{)#S zfC1q4OeBJ{$IU$6h~9sXOB|o#Q?<)iMdXrQJ-V}cXCpx`;7t3#8hUW_}2jy z4au~TJYggK_k#Wr;NNL*tLO^*I#Ypb8jA zyr1LQZ%)Xn$@437X^C%aHTa*HJaVzm!&1#qoLTYZkv`F%9r0*Z>!+R%+uy(C@*(Vp z!`Sopfd8A>@A7LIzugG*!9}*hU(x=V*MBc0fmqcaSn;3I{>q8gtb$Pv(I1vXSQN?t z=YQCb;4pA_0#?v8ydX~{{CD1r|KRs(^-QmuSyvxnW^1@U&bhaJ({$H^hAzE9xvj2h9H$j;4kRPyw=vt_4+*Dpl}fka3;qT z?7;ExK`nsUFvG>fhMl~-JDNiYa0q`7OncjmI^#-*p#LsQIXQnOC*K;unZ)JhzyoIC zpMMr!zAYUBy3##lm(ry?-Vp2mQ{=^?yk;WWY&g1qC}_8<)j-(r<(oTxTn_&4fEkR2 zAxr@O^N18aO^(o8;C~l-SDlIf|EH4P%-SBxgpxvODYeB-$O9NaKF|fsBKd{-!0+J` zEjY)D3Ga6K5Wm3zM80v1y+DYzzW%=8`cd<{8`$+5R^j4dKM*y#eZ}n^V8)%@KVp7) z4gNPHa(^1S`)oKtBQ&geb`{bjqfhbu+4s}l<<45rCtnNBU~Z4~LPi05W8Zh>9lG$p z7Z$~tpnd?@AHe@J-~?xK{RZUa6xQo_IEX$>a~SO>uEy8XXV$V64B_+h+|77!0-CZq zat`G$Rt*#tuS2@e#p^c;^xws={wVmLS!hwXKL22D1N)^3*f*Q4Is5Bm_OcV~>!jFU z)c)9ewrjF9?Th22IW=uX(03fH_f>ZN&D`&v4XzvdKP&-pADEW&W7 z|4c@NWf1s33ZK^``2RJWi(UDweXGHF9>n|l-sb*SAj`*UAG3c%YGmqBsRx$-xg#b4 zM%J(TKiGx+zpC*0${sU-dvR7XScfM$!;4u9`G0uw{2%ylp8kh45bd&h8G`E;*W<5` zd2cX*>|MeG*d7M-I&yhhnHj$vSJWf08bYkn46xf zl)pCrdcJDmboRjXg#YnmeosvLe`d-BSP28zkfH!}@d9WC*po_IIwDFnh=BD0!E?ys z+X;3*5I^8dj%jf62TC5sJO4GBxgLJNt*Ozu6uW)9k`K`S)9~|+Om_beIR2F&{}PUY z#KZoUJYeTz=i1?NEK=fr@IR9{;X-17Yl=U||932&gs)24Q2p}}y#P&T-rf4U?dK7_y=3pQdL=^C2ALJCy>E|?tmZ#-sH{I^MsS7g z;mxI>%-;Ow(CJIlFVFxa_d-wi!VUr2;CNGo~!Tgm84f*7&&}ozT%ywYIc^6r?>+l}b`5pf4(5=R4DaDn@RpT?&Hxwx`u|(AZoNU;4AB1s_WwoT(a3!(F52}#{Sp;cRKevf5mAf9r;9aft&7~+ zMbCg8$O8T~*Ejz-9)NCC0!_i@p8^jUyIKEFLmte-K3s$DDndh6W3O9zssylW=6>u# zS!M&YR)1{vdHCk{2APAv<~X8rqsh>j!Yq;J=}WmY+IjoZH^|vX%H%Lf2iYtQJ{YmzxbobgNNuEHZQ*+ z*CO`_@jL5yoauQS=)VCb+mm~g2nVr4BP%89Y^;hkw>|J*3H>t!?Xm_|ej=|9dsV$A z{zb8RS=5X3*xPYk#CtpRc82<3|Jn_{Mr4GItQ0te>s`tHnT^TGIEbI#_Nr2nUZ{>QO|F6K-RW0gF@ z;txD$nm&_~q4hI6DO(}ytU~9PR|M!y@YUjf2-&}%B5QhbPjmFY^U90_+W**jVCDq$ zCI&f(Na4LmqX+N?7UfQ6PV+JOx%m=209U~P?`I#3MHiR};-LhXk4^X{R%|5f|fAe{&0YK#O7;K-FI!tt=Iv>$O*Uyf52RCAC|n{*TK-Q#_G4*=XuEv{u})H3?x8bc);b@1verm#-+@l>EM4Mal=haC%BLI zyMfB0s%2fudY2tRx1q<-{MCs7G{y$#$8luohvWmULK~X_D5@GE0U{2r*WVlly?^>L z)%?N#l>mAKz0VpSX9YU@Pp+fIy)`JdpZ^xz*A8r+4rgzjczkC*sSo#@#65?De6wu# z=M`#X-$z>_rVeU_H$u-_<8vr08TohzB1H~@H$<+bRezmWRWkwYCDc7hm#bNeTd@dQ z^F6lZ9LhKwjCJHd)Gb@DVD9p^i5C=*H#_l7wSKHNio>|U*2Nzuzu!2#{-dY?AI&el z82vwrj$fDOm**F_g`)|J)&4Jr2dpGbM5+KuXA~pPfagX~y>;V1wYI0GZ*}>WSsVPsymYs(_>x0I% z&cGN%^u6^p=KorsC;M0XtFN{G|F`s=aUgPYDpR!}p2Tx~j(zk6efUe*#!H5C?pp z7?Yi4)Ku2gSyK}kHAa-{gMdyT_9pmw8D4B_Z$$fdDm$xeKv{P>jNDpUi_fTt7w|-?5xbHGcP*8LH^9q1J2UE$=9m^N{+%hjHF{k9Z;ebj1MV^ywqi~0F<`V8n%Yn44E~jn z`bo6O_4XSZux{5JYBAoHXLaGPti)M_N*OV#&%laHD~j6kt{pi#@m#BZdb3tHArH^w zF{g)`;}`V{)-gp!vrNMn;E%)^zAxl?mT{WQ^4IfMgYS_qeiOMqelz;-=Kl<`JsvCk zz3^MUYkpF0$J|&nNt2{O4~PBVLeywDdE~7?ztMkLdn>e#R;K&Po_KZv)6%XD2YnFh ze?EIn|9j~AY+r{y3oRe=AohAh_0;vD`D6jv5mtZTBSXGO5hu-&Q=|E;JJD`-A`<^b zE1g5EywD!lAG`-U7x^BQ{+H}upF!Y1SU^YueGB^{|LnP|Z^ZmRJ?+b=xSP0{|7Qpm z&w=RXtX!}oC1S9FO#1n4BUYgH54?xhAl}FOeEc|mpAYcp4TJd~gtWB#NY~A}U-a9x z(247MBro8XoKL;b*F}5ePRu=;tD3)=P9O&}4P*@3eim9^55Tzp@B>aKF0ha|;CIvm z*4m7JC4gCEW|3-9)@0YJ(ayqNf1`MJ^85SK+w;c60!APKri0f4lRv&h7IZ1u8UFtu zw!IO*D?z`$?|!_tFUZ$>))({#<2B-S5!rQj5h+}X_y0$_{v1Q+!29X^c{KG!-;`D_ zYgcw=+0`5^%N8@Ua3`{Ws+G1a?M41^wbF&iik0x?lfbH3wmmsZqw;p~Gy6wfuNP2j zAaViZ1<^I!nwjwTXE8(l{$|@2qj@W0R}6-gOyC-X2*L6}?@#-k48N+C-!ws&lL^2tP}+;=_;uM{pd83~R@G+s)&0EP=+n zr%`=#mgW7?qd*%Yhc&PXb+8{4lD1?_sAjVJ9_4kM+U3G!8A>5B*g)>Hh{iriQc1UY_Y>T)S-j6=WSke0eqa zp9K3=tGR>2bLIXHovvmM$snqg1DUlSEFkj-`aiS#LmC7R@D(8m+K~G<9{qnC@~RCO zvD0TQ@L!*2gqOS_x2^uy>aW7JDvA65@7TZi58aTuxy@PvQSHj3JuWvs>} z;86(``a3-Tf#_HrrJ3I;q@wE)mBBtL=HtKD!x9Kapby|MB=bDj{|iK2S|sjcXU1bT zO91PE?So?9CYeD`o;90Vplx!8=FZJ6$nBiJoGO3=r~?|EGJog50mj1t#vlV^08`m1 z4-*CWgpOd<*wgm95dY@X8%cIYRc4P>XP37}lg}>x3Y7LB(l?m8z!6jijKL51G984= zO5bPhPbYH!KO$#v3`}+~*d7S_`zFSJI)9CG>F+Z4t!H8Y;(r8|#WO_yccNp^1=tl2 zlJ9pAHHL4NRw?UPc6QmIvLR(X%HE~opgJ|ieQlO<{=7Tjtdt;~fCla>^JLW17Z^f?X>sfb0 z8ng!E&C%g?c&&3n>)|6k9$Vpb9`DGrJM#QvkOVc5Kvp7em(C{Q5l#T8%j(Jkn({tY z03L??ID*%lfjm4L$#Za$L{YP(By+N`p1_~+F@8PO|F>qHm#wqz{<44p4^K9Nq37@0hep z2lS4)w&wn|CKu%;a?OVGh`0_;>+X$Qweaajq+jWv{?D|%U9iH_@9xiJMPNaBp_LG~ zd|YjLG;xXth)k8d&=kbNs4~Z7OknnbdJO~LIe?@;>ta7v)u(O7) zCdTj?*;f7FJ=L&(q63K%K<{jH1h5|1o=qL_0*nX$yXV^E2IQvZek2EAMZOYQUw0)f z@F@CzGPb~I@IN6*0J}l1B!evn7VLGQ1ZV*E%_B1sU>>SkY#*dT4=}c(xWHVWzVzoC znf!p0;Qy~sANUJ%#BQhdcaM@UuoI@C)o;T3zZ^T?2_L7zo=-_}E_-K+rIWeU5B+~N zzJgiA{yrn_--5iJtC1;7N{YxTm{GcQ+0kYF%C0QCmac=}6A3&bMH(8AYjhm5#{OLT zF!SxoN><=Q91m8fqOCjf9V(%5W%&C4MYzb>J?CHa?4E$Ez;R+o=|6xc6GjL1L+S>2Y zU)WrIeGWBwR6C(5hdBmD3XegC^y1T6@wk2k`xR}Qe3#Y$T4($j8AfIqeaUq@ING6H z?jQ3@jbH8!WB7@g1P}7-hV~x~)0>spzy1Cv=l_zwHdn}vhEF@M#yZxnSpEaB0y?pS zBCck3i+!l&xSiO4?Ri!!uxYk%cVgXdKyPFHPhsu%gMs}O32-3i(1zcpJ5tAa;2n6L_S_--PN(4if3av=^#2LD zYjaQJ>g31fw_?`&9qful_<*g`UA*?#Z-xXSJ;_-sa_KQ^%DN|bBPiw z&vt^%wnTrABTKIWb3JZg#*evxGl&7a$YiSZWa-=p{`a9e=Q%X`eaQ!SEeycy_FhSQ z8u>nz>nC#&QRk5Tb~#uZ2V;1d$p7wS^&F3NaTB#aTaoGWLTM#D0Da3Y1pnKX-H#8j zWobjA08N=T+?bfdXLt&aVJ^@@GL7xZaVOHIBbchqxf%_Sb4N7L8o8MHVUCbF!}1#0 zf&R1o(8*5t(*JQ7jQ=9|%M$QE4T<8p>#gk1weFz5Imkae{daZL{cS+7em!ITU62+> zabJC~7}>hNAX)9G34Hd@MwK%;ukSvVgVAP8MiWh zUC#Cc+2!$k^?Bys%luv;C)DxT5f+2@``q|z1){lsGq6tjbGClM{` zHPQUyKQzAW5>clPT*pvLi+(& z#nqW}S&sLAf8spH=WfewpcBx?`NQc1G7Fq9BN8+n&2JWf=(i`pY-GY}GT4g2LTylB z2U`2cX#Q(9;jnD||73=kfn_WWY?O^mQTs{}=lF+k<{I z5@09@Iu8b*?$m}B`yQvl3HrcxoqBUM41PTM!p{?5*oOMvhC~quQuR}b%A)tM0os+F z%Cw;>Wvl5s(3~uQdZh<2xqRQ!-N*}i4IAW$lAp0379vAtkUeXr{V8DZAaEw?wO#^q zb~cH_Jm0!}Q}wn{I{OGjZ_Xo$%Uu9-naa0ZL~g=hJPQ{i!v^v#PD4lA2gp8vZ9r{p z-lZX*B-giI*GP$z!J6{fd$VFi_~|xar<=c@MF;gehSrYW!uBt5B9MK-+96e}{ITm_ zj!vK7^4ec`^;c;9SLoty@3vP{rSTTXlD+suzlVphPwSq|7yf{1&&eSFZjO=Q|9*bm zMM(KRg`&cB`9l6eddUvQi`Ok_54&7;O7`QyV9V&A9VcS?oOx#U*tILLyX!!9_zmcm zb=bSs{biau)8CnHb8iQV!?&;BFZ91U&qw2x5i1l2VGH;_vlhJ83T844ZhaeU#r(uZ zVBcybV-&_Nlps#&Gb>5G7`p#orT^<}tie0mS19uW$^j~&gAZms^ueD1Hg5-=OOa96 z{to})!;751u;^v=8TP|gaur+?Z}~{vmI;IhK~I7n#P)EXmGu96lL*aWNH%$nIonnt zI04DdY))ip&$H_z7waJjoXS#^tC?$t4R8i^K!@g+^0$GtdGz;tr}&5Bl9Jtt zGTcC&VHa$GO{E8xbtVp2jd??7lLu6tDVJ5~HB>0gQ4zR-{DXV38V=%9zev1ecIr5A z2iEjq>Fmu24j;U_(kNLi@P0IBbRn^a!Qi?Jh_&xoE3n*y7{y?+5~ikixd%ybUCLh= z$oD>xcho)-|1FUizEdMGYrnoK*y($6k1Mwyl5$HJyMDSaxqSa0nL*Yc>;YD*Cx4w5 zR`lv@!uz%5u%n5u{u6$_^+@FRLH;{*ZeEStUW%2rhI=+pVPM9e-$}2Z?7wRAH0UMR z1VeZTZg+QK7y$=CoVa1O0_hSk1SEF1mTy09LgF1T0!S4l@zZvC^2|3AO39p_L3ogdMK z$Stav@UM5YBdc*Po|8GCZ6T4fW6(y*Uzp&N4cN9}4u(OOen-y~sTKyF) zfOBF0&r_j4KUD)w!}mXwoZNo&{{0IXz)w;A`v5k;2qJWsfPZ6WdeCJ6(G%xPSoOKc z2D5^%;92+Z{D<)_yjc7mGGK4|{jFr?^>ugw_b5ArETApQ9-$B5zQh3cNVUM9GneQ` zDg?h{PRUv%&>-RxJMzizQm?!TFXa+gMK3gKZO|rG)RlEWoRN(FaFbQVZ*nX{LiGlH zV)_{PeINM42>kvJz$L~f{&EBOzZCv|3a_(E+M%G`-ktW>sln~$yjqW){RQnAusdw2 zkQn=?dka}o3eVT)XTG2BV#MF+-sTGx6@Ly-n2mpDc;U9f?f87gA?+U`&+E2A>%trP z6Z30x9daKMBOXfj?j88@E=7~KXD=NLs_ZA(1Z}TnV22&`zxcP(wsF$8eaS(66OZ?$ zJnH@q8&+>t>|jwFK0moYU|C%+*24-YmjYQVz*okz0~eX>aN^KK#JnftTkFobwBQV^ zKd#2#1Jc=8N9UPa0W2;&s-YeKGmiiH+kN=lx@i49Q+BaFKsx}|<8!V5?SXtUJ820K z(IHq=b|d~h(q;Z4IZz%e6W`IbQx=40AXYDOf5U$e>|a|#{6ES3uP?Cwd-A>gj`DxI zkeQ!-BKO*@{Ak|G{!DebcOZ;pi`*f(#<}XbzvfQKy^%XN|9$=xP``rXQSd&AeQ_^d zfJw-L8R?jVZSX2PwG>`y28)_W{Ac{%X%?mI>>B9EtH91q=-ioP{yYKl?k5j$Dw#kd z@CjZ)|DPHq-w?}x1Pt8^f^GoeXM;pDT~0s>sQV)l&<|9J|A8=o>#?})0=9@gAaBqw zcxNIBlZh%G$NY~UOLr{Gm#wAS*wLjsQVCFo?*EF4pbzOlkf##h*OIM~3L9Y{y|6x< zm061(A^VnmM^({vVA?Jr2cfTs>*hadqu`v&)?OZC&ZnNCN9k+p*iNyKBkLTEwd+vDcjn^m_>q96ok;hURh^ zU@l)sfUxZY=+bZ`>(R#XpPsp{%zm#te-dD1pmarqHg8wlI|Jwid1)7-{z>*u` zU1mMtPHA@)W0&sD-XB1=PBDJE@o4B(%=(^%7torZsr2l;5xH<+$*)B7AAv)UA_{2j zdq3E=^)Gg}v;x)|_yI6)yJP(w^k11g0Q0c9SHR&vK!5K{$AKH^{#B7|-$hIzUqa{M z3yAq`Pd)Gk`j5QHtirbw@{5@|unTp<4ao?aLtLU6^M+c|LFgpI?88vfx`P1R}4{F2QE(>VK5EXL)-v zc_*5hhrA0?;Yl5mYvt?NbFdAo9&x-h_3q8ZH;?|2Aa6 zD6Iea;D1u#Z-u`UCg%6d56|t*B*~}QQ9I?T##w}!co`oExgqwg!8nrly$uiJJH-F* z!Qwb5$-3&WwMLvlH`b_E;{P!fct2!eOYFLP@ENRS62Jm_6K^Q$m)kx+Gk*yCVHqrc z8UB9pKN<#LCa_)Mr*WB$h4}{icUx>r{o&DBQwCtCn-ca{fql6P_xHkI|7CG&G61#v zALUp?SCFOH1NUJAoJ9?AS;<>qc`7l$ThXAGf%Lv0tQ-FAW8na&!Uz6_9<~~I5Rc!0 z&b^BYfJZ?8Gk5^LBMWd}YK<-;v*3%8M)ViCnW~>2MEq)yW%L6zhi}3=7SogPd-?+H zh)k$R7m^NCAb(3VqCXZ$dpZdAr;6ZAq62lvNG_C=(2=|bh(DjY!sp0WTtOCdBm9O> zfd9WEi_S(OT}1ZXSUAJ$bQt}Bh~z|=ztKzc6;HxD*95H}nbDP52YZJ{pTQD%x42&q zXa5A;zDq{+Yp|(T`TG_Oz^Y&;gBu5MN{GF>jXKzGK!2naNOt=)Yr$ybE$CK^$ zJPhCp_<*sd(7)wcEsNa;(lcLPxqJwYkUbi)!17z=xkMtt8QbS@ZVwV+KLg3r5-Cw5 zS@>!{GXRwv4fr2j3HAQz7yIu~{LkMzA6=^dQ3+uEZxy6WT|T!dYtSC-{T=({F*Ni| z*imLlm*??D{Lgg@oR>#JToLgfGBA^s$^)P2sv7+_mS7b281Ot2AHX}Q|6lX}z`y*z z8`zisci~rRg#30UcoWWQ2-d=Ec-nAQ@9Cl@xp#Bd(+Th@cE@sf{(SI0j$JYm4qz?d z{amKP10H3^eM?+w)=cG7e=Vs@B(MXXf#Z1A?xk?l+((9jb;r&p&_A#<_}|F;y#QZZjP<{acY2T4?||H}N153}W@uK1 zkNt>$@I{W-`P>)4dUX4^1NN`=KMBi!A@cs(LjA%M`HuPLay@dtph-S~6`q~DEZ31+ z_p*x)0y(wewZ`1+Mc;;PaTP%ytAXRsdVjtQIczlWwjY>9v9l@*ydT4Vu04>buBc%`EAhgtOXnyO^b6B|h5UaWZ z|Nfp>+qYo(F97+^ay*{!e>2>=J^jBoQOWD1uG@(2Ukd{`A9j5*44`w$q#uwh{+mJm zFj)C$B*lF2_9X254VXnSIYc#y0GvdI@d~O7w*~hcn-gWgRDUN--KtPFK2BAa5L~$5o9`Nv<$Xw7Vd`Mas9Q#Po7W5 z3n2elH1|{dT>}GnAL*d}|CRWvUAnTKLs4&Rhf*sP?N_`d62J z0~xagy5HFza(^o{_CsR)$RjKGJr^P)mh=1F533u2-oKsc-nS#+)&2{S31=5}g8kRc z&(F2ZeM@b~XGJw~ry~Ix;S0Ql-J|7b-!DDtVR>3>qmFL^{$&D<+3nZBDqlgXoQ6~g zB*$J284yVK9(7)M6hA|`7DHI}VF?E!{F`AT9u*nBM;CnRbCEdLvcHeuyzI$QflKv- z|AW)n9h`h#b^tf~?~l;`bv90h@l3-L*&;E3kUw@HvunzU3I9vL|1Bv-Y1K~n^uoG# zmEv$cw3uA0?7q0>ec=hro*lCnq7K-VZi)>snGXMNQwPzWZ&@YDAg3bRpWy`l%8%+N zKZx^5I?%stDBj(hsRp{5*L+rV8Fc`w^Ucu;_WW2xyl)~qWfaF~B*B!V|IGt>Jaq%u z7CsvJmz9=vF7@o=ODGnzu8M2FCpD1$ZaVaQ5#a>}@*$zD=*O5^{)YVWpo;mEo$AkKp_7 zkzMc4%l%;$H;-}oF1pes{C8iD>FkV3a&fpjftLv289F5Spen8w+C zL4NXXWDM<1pwu_i~JYB`jg;vHOCWNdy8E#jyI9!1fYwy#{t+g?4phkTb;fKh)&)zwzlSvD>uY^x{qd z@%sJa7>*yny#I%}@2J9hdO_}ypGZ{bbGYP3MSJF2=UU<+T8eHt9E}z||K+7J0KIz$ z!E@`e_u6uJ&nfugUt<>S?dU>xcktWH&X+5M9#@;W%VWoj?l_bK<+r>qp07U47=ZVB z+uZmQ_@w!0*MaQsw%k_({cHTaS~}NyF#m%&#{viNnGFW%wr_<2-K#|3|P&5xLWomwEmDMj_)ehEpy(L()YoAnXC39n!$q zfgKODqk2*S^bS_romd0L0OcU!KYD<4V0|Jt+Kw)@;R3xmufgd4Yv54V;5}%Y`#g7B zes}r+O-EBK!vdHH_cudy6kY)5Lg@i82C#;G{U>&(S*kUX7tkEw3hc-&u>bSme`oCA zepu_@F{P&$T|vi@t@|W;cq#pWWaT$udACX2+Wff*$bdUQ`^Dh@40LHvy#MDQ4X#Hn zj3GWShA7)KEdOO-?nNx`b<_Zsl~hK8w1Y{EMXJ0)lyNzTUC8IGhWW2XclX7^SF5B7 z&udJ@zC+@~V%SV!VOBFY`{LIq#FOQ}&}< z!4G`mdTfpoCX|-Zy(m}mHkpK;^F??CPC;U|!#BS--~4+#a38|A--hYGgO$GybiWA7 zMf+-yxIC@x$~15J3F2_i6Tj2`w^rvjqW0S)?r&YP`N=zidMkSDAK;9#Qlx?P{aOIK z^Zz%P!_&N%ecCsm{r7>B)yD&AM}b=0DkawUEINNWzvXzae&1%h|E9vtNPs)|ZKs0$ zN0AEy3pEPQ=g-Oi3GZL++&e^vUL>NlGoFB#u@8H*-wt5cMBSgePS2B_H4k8)>*s32 z?W2i9Ehh@Sn4M)GPIq^pTY6IISO_kX~3SB{k!*Ta<-mZy@Y?g0(SdKy}AFTzQ0TcIOA(NxxOvHzIld5-+~#P zMBUFAxVaTdr-8@7zm|LC0lE&s_+1AzeH{OI&0E2lT(4jQnM`mkn&9If3;JJ!(RV-& z%5)B3jm^(?YPZ9H-*_w9Pmica-cIg)E-o_w#4Ba}nW;%E;>VRgVk(c2I zco=`+EG+H6lO0?K9Ib^<&xA)0!vb)IM)bcu3tzycc-qFmx2L5z`$Op9#W3*~(Ejfi ze_Ol*vAK3&d~nGmu(}lg;{8+^jl;Vzk>gJIeG8Di18B{I+DhE&iKYKHb|7MSjDt{|?&z1-xv}@%JUXB`<*em7w0ds-@`a#T+qj{YkL-GHmJ{ymDXR z{nz$a`&)+?=(pE^)&0fbKc*8qvA_(0=v%ZE@@8FugD^&;EY) z_!-Y{IFeuTPH=xSonFNMoyddPpnm~U;grJmg$4O;`SrQK=XTFMgFbtdDBilFXW3N) z*hLN4IqLeb{#$LvzvyZL^KZkY6?Wzrs{UR_+u0{T4JFUDW4KmAc<@EIJ2>`p=<#xm zF2a=n(G9d*GL-XS?~AIqChY0+@nJofd~e474`SB`#`kBJi+?8;$x-Y|SSdZ0;q_nr ze-L)aJgkupV9WS}wo-k*eOuV~1z6g1IfmgKu}Z3Cx`==C|6B>zK`HQGu^$+Zb;@LC zNKfT~&kxzr9PTxaysNcH>&|@l$p16{*Er1)NkSjS?@=FyvVW2dZTP+V69+t>v+9Et z@Nv<3xjpCwT7xX`2iY}?!TK2X$OtZ@*eTWl$^jmPajqjV_#zX*agx#+z-U9se0g?03{d36#eu%#lLD=b_Zg+fuPhr=O$I8DN#9P~D@B8zR z1y|x1n1GgD0M?APFG&*MX)=Glq1SlDgy>6Q@?($y)9^72E4c={;u5M3`-Ab8u#2*i zAJNR3c>b+T_ONTW^}GdSfK!RB?~e{;JMx&aw<2<&gbu!D z59aywD#+qs|MnEv7TNG2=duFMHYxp*ccAg_!0Nv#;eR-&H}dx=zv$q?k%b@g6Y|aT zYv>45lv@awoCvb!pkFT}i`5>wVo8l=#<_S8``$YDwp{FXeJ%)i1N;AaUJ;S1U;yPc zeSz=r`iIUhmjiKIU6x6Js2xx%#?H^=fzm?@qAOW{bC6Vn$g(lls5V+&?yvQ41)zP3 zm0B_v=l{w7|JArJf4`|%_;YUlDPTrmTN2eyi7D024Tex_n<_kVb0F(^Os?CuqeP=?&eF z^=ZPd)SH^FGm#u-DK8-g@OJLv{HFY|;9VW{5UkP8kR#9>W6&TIkpcG;JAMpC`ziZ1 zlK}R)u?A>QcC3}GyTS^Z5XCzW1W&`qmxHOFgU@{mxWAt)fJcx5BZv%WUH^tX|0wbF zTk){jHTyg`z{M%*Hx#>HkN+Zg|KmgoR)YUW`2R7HzY1g!A5I?eg!6qMZ+?$?Jx&#IvRDNWSWHar6EOW8 z=w6ZZ{c`?mp=)ECq4!Agwk_tq)kualSO@z4zd@cBBRQQdxL3ly{Rwv99y$LOVA!-oul0JI63$L>J&cw&$ec0HGw|d26t~=89<&wFhE2(%I|0x5rEqvVgSUWt--HYp4-Z&M zTz)E;J(Ygp+u~hY0y;;eEP8u^*zIR9xEzM%KZ9<6di|XF<)qLhp!D0~J>cZcdB=9> z`LnrnqoYuJBtk{B^bTnEJj{M=((jXrE?ku&_vdmZL-~{u{Jj((Lt7+NQ+T_c#9d5m@5jrRFl#-LX9z?&I zB!DZZu3rZJ9|LLg@vP2c^%f@Sx*GleBJBSoB7d9E-&-O->^H2>U+r&CV(lqC{$k($ zy=DYf1^a%k7J%J|wH3@3&LaMGxV|f_!HS^wkO0qu@-fNZFaGaH{6FyTw4X;gtC5A? zg*^+8=g+3{=ce2~xm9?oFT;uG9NNwq9!h}d6X5O-eJ3JBLu>Z=Wc*fBL6x(| ztUb;$f5g1#7y0Ha*W@uf6a4E@U;d6mIg_#I(dNn4sFD~!BUY~yGGPeOf!Rohi;$)= zr;v za&+?K?MNo?J8=ECi4HysqnOCM*eS=}T+Q%?HwCkH&^(d+B0cp^&e)T4jtoY#>>DDn zdcp~=KtA*V=^gOtHREv~v%<-ap%wXVcI(?83~mQDof&SnuAKv{uGu{fi zj^aj->V{iLO5O^^4B^X7rkC<;=fb zxF`XfN}yDTTughi7>O+^{sKGXJy_Z&_#ozNX8)ppSmFUg;Q+(=ZG-*aR_IhHE=Iki+e5Df;}2aQ%;5JnK)f=%hM7LpvwaaZ^-3^zb~?|4H{(vrH?+Qg z6_V zx_qrNX%JE%q(XMxXO**nwn*!VNZ^%tAr1roRw0;$XjW#(Z#%Xfo|s!qa5qQE2&Fxo zy7K!yQgle}$y~?$WBI=pu4KQi#{0YdA zi}4~jPrD6hRg>C*&$_$=L2`8QvvZ!9v-@Yv{M`}!S*_!YQ#*Y*CEUDOBbudX)Linz znSqma+c8^jYb1%;dgkVB0~h}dHveA2zcbaBZT12@i8NT8*tW5Hy#mkR8GHjzs%w>r;tT7mX}_bU~Q`5nTcWXsdt=S3`k>j2I6 zpO=0^BmTF8`eBIy+yeifobYenfAhj;$o)F`RpkC`z=9kA_S=JV<4xM*^8beHoO1MA zuiK1$b~xy_%J(R&{?)_`CgMwyF@$Dvr@Dhhx%XwaVy}CjhZ(w=&rcQ*Od-qr^|^6R zIr}yK)d^HBA>J?yS=E8htjC@=_HXT*T3@}N9W@jFGo1cW|L+3fSAwSfIFHJSVK?Ty z+H-!_!BieZIt(Q5M*L@Xk!up`5>ipL2KLLb9rpxd%8>7?vS+x0-rs`vzKN>7C-63Q zLIyd9&_1pHg4$AcatqI+aT_^NWOKFTSG9_xCy|4a+|9Y2mj%2U!wt)z`hx)_N_4|a4&Z6w&;RjumB!PR@?~CF9Yz<4-k3(3y|;^7pfQ5 zQ1`oY{sH3s@8Cx|4w28j3{Ppqv6QZ)E~hV)D>2BHJm;#n`h z|FhM}tfP>b*{j00q9kp`CtZpUat)Qnr@`*cLYB3;mLWZ&c1X)j{L7N$2i7S%+o>xV zfo~NZ$4ua(^H1j6!VZ_Se`m3G?nGx;DQ?!-2y6kf0j8r>maw|1q_^!>dFJ8T^IJQL=)PwgQPfYJ5Y=EXnhxJH{`(Y155_|6g$8U&c)FwA; zPL%6AH=bSw_QmcdJecZlBkRSW_Iq^kt0`u;7KFZz4!4KaH+;V@$>IBf%hz1KM=Jab zW{Y^m&&Y!xc^5nI$O$q@@(uWYI{8nQ68n3Z*u0kbTlfWE;eFpv66H&*C#(K`E|hUr z(TQBfp=Zy$3RkiMYifr=yLSe^Z;G^Uy zq5K)~Jh{hdc&t{@`OB%gM`C}t;{*RzzuJe)NVheA)zklSl>TwoZbuq*2VF)QtdufZ z(hkjf6`X259N-$HR%_1PRmn8CE0D4LxG!5LS1mlDu~x2BJi|wPRXpyB84qcL=k)=y zFP9+)8YAzVL$2Q@ayHG{Fylab?jYo&>*Me0oD%!EcVQ)$6jjTOrV?mWzB+qk3CDx% z6Jy3!ipm|G5;qnvfO}^#I!-UZci?C%_HJ~oF&bb`ph_U$xsyA<2-@O<8-o}BCnP{y zP=5*eHkT8pJAn-T{qVP2N%I(<`e}IACo$<~cEbNFZL+0W&OlPngc#y9<7t^@8HLzu%{WtI|l8d;m zf8DD1uR+S=AZJlx?9U(zKHZG}&yfNfxO@p-z4imBQnUWddwiRCg6|{C&`S7?SG|w_ zZ&~v4JqyQo>Tk^d($oJFt5pnxuoke0&yHMwr;0g)U^irzF;%-NTkoS?WsXHX@NE~M z%)&PtAn>o(zX3;mp0#`G?V;ahKHub}RBQAM9^1&{FysGbF2nf^#}UhQ!u#aH)l~g| z&kVT6)cyA(+wUQjI z@16)Vr%ImU~D1f33jvZq(R)h^7A+9AF%B;$C?CG$Qja zQ0MbA8AN*#o39J!uSD;TU#Yrz9FIW(KG2LfKxMLszd-j-$7gsIIfp&*@3jFZRwSuE zorGiVywh;BMm!^Pbj82bHg?@pN)_QRUkhUAC7-zL`6V>J_Vec)+6C6^evxFr`XmE> z1j$+Vo(;%?sIM)ex90bt{k6pQA4d*Eb&s$4iBAlVfzl`>(@sfh>RU8+BHNcm*|Vbt z|Fr`|zdAnVE<|4M9-OuMU%#u?mX^Ph2J^-5V`1pipTjp<4EuNj?QgAbmhpcx@xS3P zxG6|*vx0{g&MMTT>&KOJ{hUcRnDzLnhLIUQ2wzn%aAnnxwKQs%HtZd9Y1C}?m$&NQ znv#Y{iZNshJxSc4ThcI@PA``Lp{?A(<(Lm<>h0LkqFpN>V+P(IG9$x7CN&yzW|tG` zT0~^62hyiC&(!-b@K0Oa{+$98@wZOk|1v75<`V%J%%evn z3_{^b%hRx)0r*Cf2A%8{n5#hv^PFB5|~G9lbre_4p}L3_36 zt8L0_?1vtCl12fJz-Bv@D9V*YC|)V5l^dIDlwX%WgB|h+Xqd$AF?M_l$E`4ck?8-) z=#Kfsv6g_77dOWNwgzJ{Kf_tscD1+HoO)_Ic4i~|@E2g;KTZ5@tCGFJauuTg^+0eP zFuZHYZ^d$eIUxTokUTQQ{#KLe_jB>~JhwW>K3EDRsTyY%*1|jF6>ZI{K0`{(!PkE& z5xSG`*&l(`Z;yvz6H zi+%W>|-Y*LxW(-^^ZnhHL+aU%*)`m3aLZco*yiGM8^* z&9;3T?&B95!SAO0Hu@iVe-9ub)c%7DU19%^=DX*=$X!L<|I2u)??8WCm+;>f0m1yU`@ARf z`^jpJF@%)x-8@2iG)7+y1^o{r1+@L0QxqA#|0n^(fAD~E4gE)7JC*P1Y|v`pzd1PU z0{$<-r!o)x4@El!+E3SQtyz@{BC=EW^d|ihBMS6zMd5=}G!uN%Q z|BuNEkoSkYk@4Gk*chbVJtcvWgEIaa)pOFYoyd$k*5=#jPm%k}@$I)-lh@j9*&bi^ z2)5sVb-q8~jd_Z5e}v!W0pc|GrbG1K0rDgIcL%q|fcx2e*V#z&f%yJ^$lsN(onM^m zmiv_m@;#|0O#a^kWa%lY4Z2#fZ{4{EBLV7jt35vEs3~cYaz|c)cix8a}gu*+xFXqC{pG1pV}ukM!t z`2UZN`~9OtIh`}AOa$PsNlqRG>P|#1ngKjJbpUZrQWgQoum=HPC&f1|{~NN@ z*Mw}17^!O%^*~MdMXpOxn7g>eE<$xdZQ5jh-+A5`4UAjI{{+$ekD2GQ1>U@hT+FI}9NvEqvH#&nfzhCR1$f_t z1+XoC{~xjY*TE6y@%r(}Q)uU~n~2x93OE1Fl)~_afTZ>c01p2jbs2-wvFKaXY2b9(=wt2hEz)E2%AFq~E?j&J(uxXG{dt z_E-1&9nD2hqS+(FK8*JGa-QdJoWrX~9Q%RH=X+$`{qIcD+gg94|MIu-iM`F|+m0yo zrS9kL{H6Kr^7rPNt!c!?QG*nZP;H3NP<`c*CLCV###kGDt}(AMXZslli~j;dW|e23Ofcbq`6b}X>N}MIt~rri}P?k za`Zy0lJtKCR_6eI+4IQVnuGN}j5C~u58&3^5ySw`MHAXvY7#pCR;0mTWPtd0R=g76 z0p!CnSngY}TYXs(7c)-&YeIbvT07?Nb=FpqFr|#Vf_Wv9cGk#!0E-?JiRe6lkJ_eLf;F<}>EP{ryb)i9N&bGM(SY-u`#-d)>PE z2oKIkzT;e;;f#mt3*8HQ6kf>p&*$=Y)hyORc>mAcxi7dK$pxI2ZW6&nn z{>dgg@mG}h!nge<$21s&HKtM7);wvsOv{JIU(H@_-FiKkt@pe0%O!*ND;M11As>9U zJ3Wwa6nV+B;VQRs7RDoLp#4R^`d{Sf|Cj$-_5bfif1Qo3kUY*BvIe+WvaZj?rkcqa z-%7T<@e$W0WTQwgw~jKLhvalcVqGF%D3cLN$2eRMS1;aAAMFLiU|t5vr}F+*A9O$_ z9}h!2o!`maV=DlSg;wUMfV8Z@Ssux&Ccyk>U;zx`@?uf9+}8Q!`J=HN7lQ@sfbK|H z<2SLBB7$@$*1;6?%nEk+N9Z==VG$MkC3(f7n?>9w@6}grZE7>J?2e_%zdxD2H^TBK zlKZ!c{JwXQ1FsSDn~e6q9gZ-RNZ#%E0%yP!o<>SM4%44PeD8WtKLA_*Oy0x%p7tO^ zYuHIxG5I>nqlp^2h^&c!r*=6J+wK~XJ69R0VJ>YcvA_3`V~?WyC#KlO!+17Uf!+^^ z?}ZdI`meQbw{BVg`ylOAWX2jUR{0s>_y6yY7kF$f?_p=ZsP5U7Pu5E+E7_fM)($C7 znMEYv!I)en`*)bbulBc=&si&txn%lZ{71L)m`iHj5K*1`y0YlYWsKqy#9p3Nrj>axv_pke`|KbX8jrhh2atW*)zwxxUVB>4DGj zG>#tpR@(k{0J2KD0@BjCMb)s`&QJJ%AVq#|fC*F}5Aeo(1v105@#nz+?nLujHGWHq zAVnNt0=sM(JN^^A-}aV_PFLT+f30XWtKA5@M4c?!WICL)Qwu~JNmKUdX)qtx{&?ok z?}m;vf~I#}mM#02HQQIq?wUr~^}Ol(e-o{_2wpq|+*sjY-u}}d>1X^Jem7@o>I*a) z@Fm~)1MqK7&ok+G4yOM+`reC&@*ukVy~T4kCd=QxK1!pINcIEGrwpQ>IeXX1*$GbT zv7S=RA6Y%(-%5oh{8#^*dt9Bv-Ya@J^dgwQ_${CLJgaVpfQ@|mLbUq??EiZb1Bk32 zBmZ}DpIw~vbly@pqtLRjU13%JwER!Gt8=^MmcZf9NBa+8&)C`C{2y~iqmosdzcUy6 z{l>)aHted~VgAp;IC~=v+_lYq#{kOrvRcla8nx?jEASt(z`gA5_L6C}umduQkm*MA zkWRt+Uk0B(hi9ARUw!j#Rsxs^mm>_r?d&j^9SE zRDHAN7yWyJ|0>+yk29N@dI8>m9KVZ>z(aCJ=D*CJ3L5MMHVr*;TVeo1s2#fnEfRSE z(|AmjX#Ja2WA)2AcH)bm<1_ZXnKHj7bQZI__d@SQ#}MlST9aSjgl5>A09{hXI z_I3eqlFp?_hW;GZ-dw`vZ+Q5Q=hN6UI{8@b13tcfd9wg(wkuIcI{RI*xTbHECsXb z-{-McLEKY#3LfY3B-fsXL&yir^3f7l$MHU#LFT_LXJB8Sy%PHnvH27!v?r&1{|c~^ zy^=rA{E1-xX7mOAoAJFHCF|c_{t**!W`Px#a-SR-zs4HAqyOKo+iD-w?c&SQN7?IAbI@$ajAMML!ec|=7%!5=e--^lq4?TN@b z{i_3ynY*FquL8VZZ%Irotjz0r(+6lYGW9n6fL9{{mKPnBE2S5}q3j#0)@Pze#Q$I{ z#v8%Edc>|k6YwD|1qbWVzIytAcN8gWEmy}n+<_tzIqaUwg$iaHr; z6LyE5Bz=Ce{$uea^}u`%+__k2mUj*>#p^Z z*}CrK(0RY-y6*mvE&gpsqbMJ~qv$i*U{~-aw3s4FC>HGWdu=($}PtRKD|D##2 z{_uZ0gxyEYlKS8Ei0|YIhs=xb9p5@6qwC;pHTyq$Lb6p7_3o)3Jl>#-Ag=^hP zLwo{qG4{b?EOnY6!=H7D!T0Y#NT_qPep?{UU!kY4uWe2$BH{RJeO6Lz;m zwrxV5eaI)hfwa-v{~DV98BlL+pT}~pKZg&%e%|ka{V&qD)+Vtdf)#yQCC2%SVI1G^ zxbZ{%Bt^Xcu6#E={vNU$C;!Hjb>)B_0CRusHDF$VagM!`-q$zzJ)iahXS;^?+6kWV zJ=d)Hw_?i5l&+VL>%kDfO?H1>GnWrv_ z8z%8-QJ?GZs|;Zo5 zqG5f#RrAINMUh#`HF><0o;}+1Um?BJ=*H|`NzuD!xc+f^w=MBtY(igujI4Pzv3omu zDkE0%U8ARu9z*f}IF%9)Mx|VjkhOnZ#q} z{!BrhpTWHEm$CleVGi_1cz;d>$6eSlM*3Q_E1WLxR8MbN)p{qEQDdoq3>9=>u}5DeGb@h;-QNMObi%vS9Sj#gl+^yM9+ z#=k0iI^+M&%d0zznm8o$k&0?)W5@h%fK9q5z z`0h%94Efn=#LC7Rx=u}C^5gLTujSJ&!S85YPt0f6S8Fwgb%AmtyP+8?iK(dd_`Q!u z0$hnqy%=9%e{7Y8xmR+R=l@KG$Q*R~T=?X0_E6aW;Y+rf)Xrc=%pXZOu+yBGrTWjb zpjRLf)}jqR1v}9%$gVcqvfs^emz$g2DjzqCMUPj+xZ}R?gIi0a&eQU(lC=N!DaW7$ z?f*R*)L7hmVAqVCFOxnMQTE7{3tREyTr%_X&9Bubs9(TOw`-cG)hYVl zK&t3ZUxWPm6$ap>?M>+OPk7{2q=cD0&f2xY_ffv>!+ih8uo#}?{7uuoxjzJ7i>lb{!o zOLrnnu?t$>%ziIU_;IRt;NNJ{v1tEZT#iK+^d?&HG}-3k*)iJw>U(!^FxjvMVt2E0Zy#K!3)6BA%yR5OzShWe}_&Hr{B-&et%Kzxq7TuWJDSP6#tPiQH#%NhgbCy{5Y3zwrAi2 z{JH4*T%G)L`3~$MyH?HOzfAIG`~X8XX9GAt#?C+!umh%IS-Riuxxc;M_=_^8#{KzNj8!d3Z z-BZl?58WU5R}RYit?CW@o7ZS>FV~?OXZ;J`RcU2U@fFA(CxAVSG;9tWPe=g$|1)^@Ql!QB!s&(5!XO%qUV`s$9NzR3H{13`jgMn5MUIc1c%u5>cv4K0 zHlyTvQ1~u(_)R=pR2%tI4rEL{dH{v}@8fa5|K0nc>$19kHCmSK>rO830P4fy_2u#)TO04wQfdg|FGlyjfCpeQT%#+u_1bhu-dg*A>n$-V zA`i%XfM!e_h@9_E^x!gHe+KgW??{n`xz}@7<#(n&d^S7Gd=V!{+)4!C25iSc_yTT9 zIz?Z=D0Z5i!bY;c>=85*EAs*VTSM>!TJd!>(9U*uXQK+V^$3@1=w~`}^6?<3YZul{Cr#dwazk zu1~@L4tz(?)+t~zke`uEUvGY|_(Z$@>&K=`L_@=SCxc#{Z-1=dIi`mh)YV^jZb}I~Lxg>(7c@ ztK3=`>KW|Q-thbGiRGUP!eeTLd(!%!BiT(_0Qv_{W+y+$yonEq77t)YyJw>-xOmUl zzx=j2mpDQOWcxQ5K;*Dn!xHvv{0#{ZQSOZM#?H6v*LdoFr*XFR*thn%blOElcC$W! zz0-ep_P-P7|EJF~1Gg3E>ka*b2sE2uud?&(B- z&tqkKacx-9_eD46YU2ZF&i-+>w6#Fi0^E!rU=YzGeSvC~=qooIE?{?n(deFuSOHoB z&JLW(4qb_!dJ~+=%#{Fk33Gy|htq1zat+=q0@Qw)?$aJ{?<*bZ@S2Lr2cQSg2|GWd zldaD&BiDSqx3Rs=#(f{YVbzYYwTMCZ_a~%4g`? z*BKzLRdA*3`-%U!i2iIfG8-T~0@MI{ojIj zwfk>$Lo^N;tEJ?u#7Z{fm+Xu8?-YLH?#O`!MU8T=<}S!@%%2RB7qZ{ypfg6YpN5bb zbRGB~3>R=;4fziy;IyDI$qE?HbH^bIlmL&g+g@b%>jm5rJjjfV0m%7-<*Vn^b_elS zdsp2T9jzkkMPGn+uO06yAw6~kQ`-Md+c4W+FW_1bnbG+Moywcj;A9?P3yz?5Q#PZ}5nFYg{n(!|R zn1v3u!>5%|tB@u?6}E!|nB{L*ux~-FdBX1`Z^%z{4cReyL0knf?>7$a6FT3T-rxb| z{+s!4@6R2u9^S#;U%+{a{0CrV_GMSr>giVkJF_LS{{40A_3z;|yMB%144*)LETPBS z7KOj%U&(dKeSp1pHgf-bq`(D<2b_)uIDvg*y{O%#+p>!~fw|-0|HrdKZlKTH*F~SB z{q6P}I>-ui^?mrXLx+Xd4($3)a)8iuq0!vu;mrz$9~N)in|c0xe(ZdG|HJs?<=7rA z(fan;cR$Mjg7=5_@Bbg#UrBQ?I9LB)My~{D~T$xzaj7b~@Kf8epz}46Re`meKzbxP=eoHet{y+BK1Kz6gT=!jLOk+t*vQ3P} z9ZRgSSL_|J15p&k3MyhR*jv=7u{YG%#SWri13QRa5eq7cT`br&c8wZy|Nrsu?P+%0 zIs5K=&bgY%__5aPbF6QC&-*@aUy^)ItpFz?=>sfMb1oQwy$ZJG|E72;Hpi3jX~*H! zto7yfT+9R*-Z0Ip**|Bpn~rO$fsW(1w~j#$s9UTI%EX|=o|FX_qL+N{SoZ!~V50cM zogbtZUaLRd>)L$R9Usfrtk=W>7Drx~)h`3kZvO#DcpE(0SLaE%x>&ux;kEbj`yuX) zM<5M-+aDJo<=7Cva}s(AP95lCwDDz=(!fL67ii`<%)b%-M0m z$D=%dGk=v9&K2PQDrB7cU-S>>o*wqmoY$uiIWo<;#D9{#XKf0+kK(!<(upUgmEc(a0TZl`hBgGKgzpmqsExh;PUKzb*m1ojn~Upq(GipV*%aKq(?hR^uFp z5OKH(p3;fEJ6EIso$i^emgs-|0RMNj{6G4(RY2d?u$GI^r#BKW-4QGrTTQeyOsPo8 zcuPfcvI5$&F|UYREUV*srSd0H1i6CwgWZVc55Y4#lB>Bn_j0Vu)im=U^U(E~ivKVG zf6j?qa9X(eADhA(HsC7X+_89dXSHGdOuZ&nWV%J`1^6TTDcFxE@Yw&*|3(Gv5_mQ` zD2M$5FXz2?fSMQ4#&)~4&V3g2crsb+V4?mioL}^NPwa;SD;U(Xz{@hrHuc7{>z*_r4aSTQMy9jeF{aQvzJWaXp_q35!FiVLw5m zhc9xx$qGz~RLJ}^S3n6EkDq^SbbfBxM={SVh4h;ZIbv_W>%jaa9D|WmSMc9Rztg;p z@tw-*D}nXXSh0CDhcR320OS99|L#KjkKqa}1N;AJePGq9F6LTq&dxjnFTfx01NO$h zZ-hVSUlq+^9eZ#5Lj8~deUK41V*6Vyv>kg&O)v7}(blsS_TSd_1@A>y$#2VJWlzV) zS7bnZf$F&6-&g6Q{vFtV2wQqHFmI;sZ(sni0Nl%JfBFAE!sGw#=ge0U{}*uPP6*kB z`>QqhZ`(#eyg##Mu4ouf8~1s{RVcSyG2anCf;Lm|zXn%xFsn2g{BHz1TZgOXtoAkW z4tPaZK+`YMcmQJo7zZ#CxB#El4eW2pUf7Vc?8R<)qhr_V%jyIgZ*IlT(!RB_#9RQQ z0QQkSf!!tkQ(+n}fHT9+ZhTN@@mhNZ4+R_6)K5Zxe%Ue?&}`sD0K|U~AGB-ns`Hcw zTE$|(=-2!pAozFEz|`2(cF{8r&;5Km-w;kboU=58_bwi_$G-VNYVwD;XXjnxcGmYj z1CGs`8-+d{#$Tn+JT>#iH1EJ7upi(!UiTGwb;%_*o9Ku13VRX;FcOR_0j>e@`u|4q z9((=ABWI6vr}Akx*heV!gCAjYnCoZ!(Ws`{UkgYE24h>rS#`x^lY|Q^SyfjDPrxE`rG|vn~65oWR9LHJyuJz;A0rkXc z{pvaPi8*~cfotQx+o0>s?y*y?eY{s^_pFch-v+NhKN!G{?BYl8{Eq^S>our%*9QN3 z0b&8TOO*)j>Y~4koe{}=uq?f-QPsUSVl&wJh~k0wqS zze;8-g%7OBcU;zFWjlv)HLj%dS)JFuI?~#jZT*1rqyJ||R*HOohXJgHoZo_D1KzO~ zS9@5;Y)l1NroO(Om28o-+3DA_-!DZL#J7~bAlYHbF-vZ6X3fb2j0_Cq9oMqw^sG$+ z3(0mj0_b73TfAKEc(HEQdvaeA1Bh?T89U|T_P~-GYH@+2gI(_R2ep?AY6#QR`CcPM0<^Rih?Snk~1X5rk(Seyj zY-$F~I{p}5aewoTcG^+zoAqc0p4?&#lE*23W05ZJg8ff9K7sRFOJuZPpP%s#{rP$| z<^0Kgu)lBq;;e_=zVn)SiFo`8X=D^ezJDSA&E&bdkp^1+(f?LwSfOo~?-S7de`w+~ z`e_DmEiU2u-NP9^1ZUZti9cQIYpXf%{p|$ed*P+(&#^7H)1%&tQI%V85E(Z+{Q_dph~gtRE{{{xKT=|9Ez582Qmy07LO!SOFN+i(FSYYm}cw{}+p2 ztQUL8bx>MHnnu@W6(cdz3C#M4UE%)^VE^yZpndfQ%XVsa2ACYco{bB$dL;+Qyh$@A z=3!m!S74_QZIo_kgl9W8u3oCPt{-DEV1Lj&qS2O@APbBzMbFq7L@QH{X>PFEKa&Hs z1N?tMqj~N|Q_H(QhfgO1z)H4K@1ph->A`=z0YQW4Q2$%mZ>-!JSbKR-gFXBaK7c3C z>Sp5I$o{tHmHv3oQ)xA-;Q`Jv@L3y7xQ@T;t}6-1$epy8E|Rya|n+*<0P|r zJFwPMwLd4!#f-tHK=9%_*d`ee({Fr_0#uZh5roXIzGkUV21)T`}C^};+%)V|1U#;-B&#^35<6d`k|F-O< zo%q=sDKG%v(hE%9I+$nNpJfL}6S*UcPKpEw+b>!x3^sDYcgEHY2Tx z48S;zkDbD6F5`TiI(j=f9Y1Ux#=M_3s@q_T=85a^-3Y$eg`;z$nd};AkN@?s2zO@R z?gEe9iU`3~=mdMr^lh|DG`YK3BnSJ^N@1(fR(ZDA0PiqH`OvzOIKW6B|hu6gihigY~>7 z*bcfyfByT^_l6S`2@y8c8A&}D{14-|w!VzOIiT8fvida|erFe8d#0K>IWyW{<}^D# zz%|$jJ$b!W!qVK^13Pd2YEU(2J)nLE39u7;X%OfTVRo5GeVO?s@iDviM89@`e!#Pk z24)Bu2XK1$UEt%b#tJt2JwN-~-JkfExX>4F-J5Jc?U?-cM8NEb>FdoGS^zW|37oEx z09NKag4P|$H<*bNPk=n&#)g~Q6IZXC8HrXj-VQ#k8WhQPIW~TN#bgN(3t%Ykdm8kc zuP_yU|96Nsm}_VRFq!}6(2eHr(Vl*i$6v>rXnet}+|(qQIq+AwPHK^@J4mE2F%ADx z5ii5Hzi(t-7*KowNk_tO_>o>qy{ zY89Nvdu2W2_)9l#JflT|dhmH(!efDLyMmxw7&E(T^H0s|2t-lMgRPu3xVgXl=o+8r0}m?Pjxn&u#2YJp%4Mvx3FEN0@*X zLE-=-K+GdV!o|f@aDaJ1ay(q_dvTpf7j6Gv*nqx3b70ID&?ZnX>OC_iI34)-jL5>o zh69WSCpUm-J#r(sRi^Hmr|ZlDCvV?}1^fbN{(yJA0Dea!CDg4((*~ne&78lCcRmIF z?HM{H-L)R)bz^z&ok)+H8woNR36UPi`Uoc>8{WaouciM9N2UbW;olrTSxf4fqV+o= z3#>rY{x=K49{xq@$q8Hy|H_4taDMwEe3zL8*RtZ5f_$@l&Sia_<>5MO?+5exWR3Nm z0Q*<_Ynz=2J2)FV;aVi*L-2?bTl2QgV&2Cl)q|i(Mre0veZ*Fb7%9?9T!TGh_NX0f zcjR?;1~>%m{{-2k1F;s=V&Y$)QY1jpVnvr_U%OA$S9!F^0oksP6#T2Z+}EjeOLSWv z5Jq6f&vW4&&l5-QfyTGPhY>9CZy!q~f!^$I!rr&zv8~9MJfGtbY^>EM%geGd!E^Z; zT)Q@9MS}hy-E|BVx0b2id(lVa*9Gc&5p*1l^f2n^C$n zrCWpXKlA?n$h(H{H;zGu4R7^py;t|Fud8OMF2wKWOmFvwbD+!>>&|Vv_^r+EvCrQo zV10+?*c6UmXb`2M7-cJ1wYpZ>yuiQ1#`91r)EB?}-nfR0KKK zBH6*-T8q4-TgWzk5d1jZHr9XizY;+7f4ky-e=l|RqQk}oL|C?DrHzr6wTP6A*7vcj z;McMLx0=34fTHt#Ht2U%z1JOCGny)ZK`;RsmHC@m|Iz%h&iuJt(-A2B0B1-4&&(<= z%4c{rl@4})T#B{dlT3h_s^3*FS1Z@2)=$^dw^k+|cu3<5(5I$X>LTu`h0H)v|9hnG zjQ;2_0PTjG!OJ7~0N%kXHXVE48UXWvOHIDkKoDP$?>#f%<1;UvF_ZxM&7F2X2RinL zL<95$Jltq#tKsefv-af}!*MqVvO>>!9Oep61pn{w`nR}cr~dnRE*?T7YC}N(VE(Gx zU;tJVyv!?%5}M^V3>h&DO?nGxy18KjcjNVcnNRx!Pk|o3bRV|UiS~)z{uXS|Z3h!Q zmpObkRl&Z-$-}6!2v^ zlapW_FTy^y#A-F}U)cX#px;cEZ#()I{cJb7fDa-AxG$1b4`8HWTWc4InDrCKVFZz( z{tV82U!-Z)uf3M8qVHJ^Yi$H<=~kqsUB8?}sFYUscSd6CrI7`A4ok!GlRv2!VAiG* zK)X&4q1Dw(@S2{~FO2E%~+aKg*;^IFAEB3QX9iX)UYWTwV3;x54MTEWaVkt)=#CyId@3$lN zkKq7sqbtWYn70=HN$~q@V~tP1e!iFE5zs#goo{`gKg}M}TQ`Ptx}#wZPQ@{w_A-9o zz@ty_numGLidiveo}b#^jvw~@xCeAT5Bfht_fOB?qBlRXY!Uvpxk33naFj?Y_4%(j z>{9Fm0IM182x?D2nUG$P#QgPj&H;C*$oQGSw+wHjl3BiH`YBrz@e}pt_s9Q|%1pDd zJ<_q=+@CX%8un_`_8-yOwe@-3w;ol^RSgB%)`$1v3Y#G+-q&MisBu>Y|2=tT3$%Yf zUe^!L)p>Br2kHVi(|Y z+Y-@wwwY|TT7!3Ee#u|e0!Re=?=|kX?UA$ST5t+hR5#Yxm5SDO6=X!klNt$`M`Jfd ztNVyYJOFL~pU=96c~;J}0`mDXGBh8gn^$LSdS^Cxol0+3Wx?wF*LP!omxWTB-e=_2hdyvkQ(z^3PKpQN36#UhiEGWkS$T=^nQ|`sE_DqF!}9?sm`}$bQo< zRr||G^#`c0GB;o-JMm@^`V8EAS}&q928>*J0VIHtGM`Cw z%&uVe_%a?i6@Gvh@aR1X=C#J(MZj05AEP}ABTOs zN=2V}wU?v+&FQ(jkqy?@TVb0z-#d{Qk02S8FHiGX?_lkB!2D~dyW@7gBz>NR4i zl|Nq-v9JO;-N~Z=GxOVt01F}|@;50tW=EQ|h&4Eu;Cj~8=%k*0t1QE;lJR5Kg;^LU zaF~fzbbjvX`TryDlgk+Iyq|Zk*cws)tlqYI1{S|D`h6=rd;PFV_4{rJ3s?%7zf^<& zjqvS2f7KshpJnfg?}F#V0uoD%c8}LOGQizxbgFzpc6RQ? z?$1x{fwjmqx(n@pGuT-eD}Qb{KswnafA!nz_y5llXb2Y6?$}tJ8xKHM%AbE5`-`3z z*M;K;-|?A_jSv9wS z?m_sb!U60VXf!GjL8Aax2VTx=^a8#~U@dud*1(wwr$@}_SLu0U1Tc2KI^KT%Rt?G$ z5;Yf93nCRtcb%!Rm0tvv&w+b;>N?-gSs(WA_z2Y7)#G)1bnn3dCW3!s^=9kXtK?4p zkDjdMWdO=4WBc|4R63YT_!tPXv#%Y#%pP{CpFPJiNqBmY-U@JX+*J_Hy=f zY=HO;HU%|Ll5=n_=QKN3s`aYo{Ks=`?#h40*|+un5IlhP05l6vStl#1KkY|~ z)(>(ad5u1?7aT!XXlSh?{7 z+7n=IR@P`rIqae848g@Y)2?U$ufp8b9@Qu&gsom5Qr}d+U;n1HUTa^piWM(nXe7AN zM`h<}vr?TGpchb!z<8jOLxzH^`#|GobOf*`uYG~-%A4Nz#>MP@w=CLp5%6xGp!wj@ z>G~;O5Gx)|$W-rVuAg1{-UI(Hpy504!Z}^fd_lX0&43iBsTleMtHXW(?=`VMBX#4z zzY#&Dm-YPGGUfwZ!#SGQr>?ga=rue6LA!m;?JdwkuKXBnJ{_9hIUX}|W{G7g!PMmD zDfn0U)2f9TIgc6O`_A|_7O0m${Z7)?&q#osJ?(Sw6Jm}p^4)go9)e6AgycMzHB4Qv z>sna9_%E40YJYn(90UGSm3cPrwBkpmGKP08)*6E6fBotXw7%TGAG-BO?7N*o`#S8X zMUnW<`&^4>Hv{>izaR49EHv=r%-lF(vi2|9J^R@G8?;9Th;y+mmU9H}YJBy2e1S!G z#Wo0|&Fk7eZmrop@HoDL>^X#;ZJc^e@NWg19)G=7-yQrf`q?1<3MVB*ySoyF4<*tU zStzcvZtYccO-p>lSGn?$0KQVr;5ue?yHd+>9}M6ExQ5-4)aq(-C#QEo`y1sk%Bv+{ z4reEx)eopOr9EX|u;f-aOJOlSbya-9dN3aEn6c_jPVn2+y!H0=W%Z=`m#wv0d$2Eu zHQLgwIP23cMFwQ@q&qfw>8TAGhy=Kj*N#Jnen}l{y7lQV%dA^H;dZ}U1~jN4MY%IF z?dfj^KN+)ifSH+XH!y4SoT2j-7<~=&e?i?{dg+^8AC@pLEI~=(j6&;iGuP{F`1QS@ zKiR_OHf!JO(QtzH?G5@TVncNB4bJCuUYGy<>9k(ui^%rAS^XtCndn`z_vALoR`A^C z;P2FmNgU9+zQi%)IgtXHN>F3@KgKy+#Y$cRh6gu!e#ZIb`g-}rzcE*Rf5(#Pe?*h( zs{}ZT`$l5y_od%&41cBl%7?YKY)z!w?}=pn{ekP*9fa@Btz*Fdj`;ppfb}WymqAB# z#~SF3%(oxF_Edt5WH&v4_SzLGA=1t9%OMlc+AsQF1V_`Ceff0>@VB!q3;)mFj|9jk zxswz7>w(YgVJ3_X#}hGMCw*ThyI);dfm@8`(4pjcyA_c|2x3h-g zU3^Eo8xL&Dg-C(eS$?MPSew|tGg;#=wI6ykxt*LlH~8<$YvKX$=knNm>7(X~dME>o zvp7v@(S|v!0YmIh?Z?=TX{+wl$<>3^zY#?`tA4zmmOj#3vHvb)uNf1!C*JTz1~`G{ zbQpj!LF)nSOLG=hz#uSoCw%nv#&UM@l|8}c1ntJclL5R`qYKmZ*C}2zp*!vAXCGY; zr}{cU%U)nk&$80)OW1e^2%nAjYEA1aC|ULLapwXnH%kAI4;meN8#vQ;v7YBz&fGfw zQCR-g5kH64pNenOLN6VK?L**HF?$TlT;}1PUOl^b>cP-2X|z9HKXL7$W_PlmGD!<3 z*?;PPrGaN@yx%P6Un0{!!alhdzJ3|2dOqCW%;XDLJAEqYxFGVCtfw^ix7Np=Ov(At z?mv~azl3$ZoppYm<8Caqe{1bsk73U5CB)N3_zrOYBRTfP4(Ngom>ao2AG^#6f4%Sw z*b8b~_RECE3o}1V1KTO#-D|~Y1Q9CNPu|$z8PiT-bYV@L9N!TO0<0b{`~c#H)~hqL)I#G zP+2G0)7PbJ@g4fkNaN1%xobL}A$M_0VDzFkFp#O{9Luv3FCF_vBe$tct(7rg!qdGQx~0k5JLALP&z=sBAkY?aVm+_zro z9nS0*oR>Hco6we@hwqq!BeQz7MD#(}$J5v7ok&)1^83tjP!=RI5FdwUW~Pt$_gT-= z4&QnSr-Pr^S~b1z^QRI(j7br!T;sY_a=|_bUU8`DND6Nd7Xl|9IZL z0u{fXBfIYyZ*$Jieu~dk-vS!HSu@WDEhvzvB-h+U+ROu z=2@=W0a*7lvu?`ug|GmYzLM+S*!dr0z|90u_$fY$nUFtzZZdZ5M3TH6 ztr9ta9tvl1wJRDDnM_WPHoh{!^C^!f^Vj=k1bN1u>Cz4UXGNBMj`qI?X>?7a|E=~j zE7{B+y??=c>APl}MQ^{={_*~&)6YO`hU<{A)+IfIwB5S(WIbQKM>P?~Z$y7jvP4b- z+b3|#E*@%sE5YYwCv?I3-vm9iHU7V2$h>)h9MGZI;az#1c#dxOcUY`DGCQ~I>ma!B zQTKD%xy1ue-V+ItPs(o3XQ=_r`y0r&ztmW=b56$p{Mad(V@JLUU3R{E$J&$SrYq>m z6h`k~9*v*Ja_{S_Sg`LpmvsvMV}EIrxuRQ=ZTvJc`yj9zpNW?IB8@GtZ?_wEocPxx zVEu>lTg(ScUywHXmivqij?x`09m3R+N&t1P zRl|t{>N!spy%_}JGbl5Qu3bxLE@8>46M<^xMfjAN;0(?uj%BY`U<&Gb&F+5!iS#h& ze+`l0G`uVz_J_88>;k1yzI|yJZ~cbdH~G#H3DEA)&O2{KJOfXKi2+b zFConiX-(DIlquhTMtb)}uOEyyzX)bM2pO;w*MAuhH4idh?Ybm8!^u%w@=Ce?lX%~5 zgDGs>*sa08T0Xlq`_(N>a6MZgdj=pjy$2aAp$^!rUT<{;ckx$9z_zhk8{!w(H zc!2X=2K1Y!uJv!%uiqf6zI({e89R?d3F(@-4z7V~Cc2ZuQ&y*7zsTA!{Nim13-I2m z%_oKdnC;V#NX-N)CiVmWGJ1KuUXz6y@9yec@pVA6*Jvg5y8gg5`1W`K=9`Q^|_XbT?q8&&yH;H?0n4Vg!gh@o}Usx))6mX?negrnElWE>9cw}Guvk-Jekk3 zBG+L}UDDt_y}VsPeJDy#`IPz9`T&ix$^bmliS2xNmvdMiC(`*kvgEwhf~}M4N2}SZ z3-IUlhX0?1PyKdS^$=vaw*S&tdHU4m<$5p4epLC(kh% z|MPJByNdrsKQmq$$(i*Dl0|=z-j#{2B?NI!GPvWuJ z5!}k?gJn6uqDazJ8=Wuf_j;!OLk6%c{J_4dR#bS{UqRMjRLE?gCAe-*eO|xu9G^xm zXkD#DX7H%01HbZt_0{AB{h&2}Yi;TTj|bcK(tHq(e>>7ZU3PwhfA_38>GA+&z~Cm= zPFuh};r7S+1@^w#elqBwH&{>ZPh#x3ExJTotZDsf#tv3!5HI&H(m=hfoRGcG1#*9d z?iTsR9Q|xP1NQd#44wZH=kX-ke-hHbDxtqH1LRjo0AqH^JV-Y}XL^{ypj1knA#usz z-}CZN=PNVx11itr>5ELzFBl0BzeIYX%#8j20#?XP;6G7+J1U&V>N(HLjtc3oWWIH3 zuhsgg!FFBGg;@<}&7WwZmaiiTdbCE?)6^SPcVk6w3im%AZ~Fac)luNfe3aGL2g@Mm z<<-XjocCql8s}`k4Er8V1h89!+UVx&Gk2;uExxMg^J1Gun~80Y?Dg#LVjC1a@8{&z zMIVL_n|W^J?@?@!mB7CE*EXG(vy}gTchT>e`&SnRr1W!DvJzPf89=0EkRN6h?7Lp= zSC?3-JbR=VB2o0Vgo8#cpt3z^Q1Ex5y0MqPn1Zw)$ngL48bpWBmd$U_tzW`>|J@5Nw9+ z-N*tvh^JFU;#ZkSeJnk8t;q|RsnNLR(**zGMrL0StqxV!TNxmJy{#-z zUN}22UcbDfbQTb$=H%H&$XJ8&B|6$yFNp@95u3p5AajH4)$2?Vr+GOCc>2aSA=c#@ zb|bgDul@>al9ep7fM|5>`Dl5iP9g%)?^*)BI+;zrLzWZ2|E!#uzRsDz|MTEq-gF^S z(p*a8C(iRc7wnr&?W1b{lI0upn{8>AKc})igm3c$Y^t%X-CHl!i`7R|Z|yt4q=fHtw<|Al_=>;1msiLP!ijrP$M!JNX9R3^!3O*))3iw;;5bG%RebziO!*}J~-YRU&-{$!CK>LsFXjPvR|JwqYt~bwk{@hpr&PA2s z$pEbR@VeXKvGfJ7H(;WxB@0L!Kwjvyg@ut1dIIeY(Vh6vKJ1Lkkk3<9ovZz-YpQq1 z3fQbZz8-}?a0c>&`=RGY;8lCLv8eAPx^^-9_f+<+-fJ^g?O5p~(TkA*&I%X<@?HmT zMg!&n8G7#I++ogY`CwXanI1jk1ls+}q4k&JRjChXTm0b#zCY+sPQGIK|jKRAhn&dP<(m8c5D+RfLTD1Gg=LqJLviP z`Y?ZgI@52qhLf1xFdcb}PlNwa$i$0TA9H<-<%@o8|8@qT_%A(J!~GNU*YEdqld<$H zD?N3qcRjfJX>}EL=a{P1G-iFtoL(e-Pw6GV6-%*(MO`r&zdk{-~Lun~4< zrv$4(cXU-^&SmdrXSV%TMGiz$xnE-?6n;?lcC=Uav+pS=SQGtnC1>yu9?G@Zzv=C1 z*H7{P-ADhTpJj!Lj1=>ce9`)4rGsi&fAJT{jtX1ws`!e?RPBH+T+!pn{{MM3C7qr3 z;=YlR^!kbXB@ zCe*i(IU6ztUmH0xZKQ&JITap{L?qG)JBlu3troI?G-^PEYd6`d9WT<)nCHLQ$ z|Cy}gRjl)Pq^NZdL#XyUv3{aju(}Z++P*OQbCK9X=?--^nP~mEhR*xh7-_ybS3fmj zUfqp(<^3Ih?)VHF?+CbnyDu6jc#kxQ1Sm+4?XK=Fx+yFms4ln;?%m_jeePMk*4fei z^p&gNr8tc4}$9&Z`)w$Kv)eQAU^$GPY^{e%aWCtFI zZg&F6cx-{Yh_GM59<@iUnJe}SNKEitd|kuvd5=Z{ICtxVrk>X5TA~24yu;VqRW{+> zi-O|ftA!)Rw8rq2W5yh#jmLj!yaI3DvB>RyT)oWn*aUyS6Ms_`YR~#TJFaGu{FmsF^RO7~@~z$u>f1lvb)was z>CYU&bsjHT-{+&-%d7nDBiX^ltL1xrv^$o`E%f`ihwP*->_5?OZ*N%u`s+Iw^ZVv= zc70;$yF&5xg%S8uWC!1_W?tv|cm;f1snEuLdNJs^>5u*YFt*#1#BI*T-?JPj)^{S3 z{XahlwzF%A0jvo2(;I9Rw0kT7tADJritP~lU%ShSfKI&1_ZUTx2kc5r`Aq7=Cc-+_ zs1B%ZATMA=>I5%_1x!h|fIabC+4I1A1I)~kEJ+ZyBtq9%f3DZ5PpQ5D@xQ0`^lChQ*P;^+M`kPA-(|1=H^~64qOx-Sc1``QT^~l~{et~GTk!9iMJh)MsQvZkZ;tQgG+5r9 zT*W)N?i+&Scut)Aqc&fHcN+I!gYU7LP#>T^0AqrkSaE#-+Wp06pa;OmWCd0PbwYx8 z<@6qO<@med8*B;ORBf31?t}QN%h_JSM`$2nmq|!YX7N6kplOCr^_1_ zQ1V&A0?tG#41xvR#48^o{$?z|N}lx0mQ@F@L3(s>;o9-H1!a*51!0j7GKIw9^$~h# z_4|3=UYrc%5Ai)b)ErjbS##@LW4nP|%KwtF{5kUrW(Bj!;*A_q-e~LV$4f4P-aexN z@$Y*EkzGn9&qSTCG*Tv+7i@mhFOfhW6L%cVcRAO~*nd3!`u@%SISst0t5+m|UVl5T zX+=4U`7+k^ery%%oL=KSbF~hv@1xTHCNlU>#fyJ0F~31*)SY41_Iclu-&^Ao+!Xw0 zK8!o77mR--e)ma8i^E})(K3lxB~Lwmyl{fZ040F?DA@K>f@EK#yvXyh4T^p%JH71s z=rW(RgUwy=kMS^;uI$0!J{|tQ2}9rI$6TGVUapxd<|EogZHvrxjm~f5J+IFFd_uB$ zS7*(f*RUVl?LI6hXS6QQD&`RXzd^?@58CbZX6B#uJ$8HbSdA+gA3*T{8V@uQs0E-8 zU~vw6gLT3eU}m84#x0379*AdYIG)Ez9Y3wQRRgL=svj|7>cDzL{dPS!@qk0oW~1=} zj7J8jVeKD!E|x$d*=Dj>Ct!u(l{`BJ#;xbQqO#{Fc*oL3OKmM`6ZZ?|qk+Ys=vTkW zskOS*zsiDwy*w}e%?gP2Pp#ox_}s0vcQVMM{J#Zh<>W#;2M+;z=HRAkX%goY39#g3 z7NPDB{_RCD4~Lma>F#Cqubd+`Le5uDL~;mI$(RaYdyBW|^y!2jyZm0vYKeZMe)>l* zgbCQy-wgls^(isG^!(R;8jjq2j+}+RA^}FW)@)r`zh13bJwlZ4G&K2rWNciE$96Za z*5>@*2Hn~ZA5I?--;L|9|8IGA#9nBQC(*t4A~X8H3EW$y%V)CkQ-K=&9*tEZ_hGZ; zv9Eg!!gSjbAQ~(3pD}wqL~tI*i*h0oVS$Fpr(>eN{3Us%?0r?x9|mAw0H=hk z463aLh!;@Lzmh|bK-m8hu!lvF19}6^4OEhBz)sl%pV9gFmaRORvRbj)mx#dI)qM4~ z^@YR)XJ~b8?E|{aNPi4|uLQUXZGS%dy2t=+0dv>v6?`i=e3=ZK_lXDEUBmjiWY($i zMN(uz?uGHo#DjmCb*zJ;dDZk`>Cyj*5g0dE9%(Vn6t80C+t=q2c>bfD<#5h#9Je3j zme@06(XOBmp;^BqPjPm>p?s2`>}M|t*3AsEQfO{Gg?9f@0)%(yX^dsCAde=8cpiS6 zHDor?kLfh{B!Bni4f4(RGv6l@RWIV++2B8Yy_~lYzrU5fC!_oAu%0!0tEo?ZlC>UR z|FZ7Obk7U1&4yqJ-opgS(}>w@)u7)gzdKRkvn}`R`oBC^aw&G!w%7*`fxd_E|L=xe zP`_k{$^gXqGQ3U+AZnwlqRHdGYWuK?Z5pKe-dF;W0e)uq>(^O>`*=O-5%25x6Zvb$ zHnzWZzcVV70pDd!|6iYbY%#_4;L?RgLJ zxy!ibi!?rz;sKb4`)2;?0W|LGoB*SM`T&*qP6(0j+ZRCm%l_LPLF^2eToEmSW%wke z&31T{Pi5B(CTrsnrbEwBZCssFJzPy!uV0@+cHoc64cv)6Y(y|tfDvwWoqA3tU}n3v z?gb#t$~Ak|JcSf^r?CX4hj&{&E4KB#C+6SwxF?z~!ov8AEs)o0s|Tf#9Nr7}?*#XM z53i$jzoU^&&iJ*8`Bu>X9QSVqTSne8$KXb!f)Zd_@`vo%74M<4NQqLigJtw{Hu=Ez z`G^No4`6x%`0U&~YesXXnmN*Sgf79jLsh(!~WwvK#d!5M| z4&$8161#Bb*lSn>b!)Bq`07*m{+UGjM$iv>C>Gj2Xnk3~wLLpE_}_|nahHbk+4o~( z{DgPl#~II_*$2BZaVPhmdM7wv9`q{#GO?@ZAGt%cf8u;<_Oh4Do^-di``5T*SLJ_v zh+)3QqP9i*zXJYm;2aleZ2vN)_P<8Zcl{ZqqjE4S=FhB09t*ntsYQ_0{JPZ4m5DU< zeK}Uaj@lQ0?_*efhwwhVsOgsM&qeqSy?&h={EOkt2hj^;m6u)sXNAuP{_VFKkAOJ< zqTh@_^8&@c)q$%cwfpdG$HO(xLE~JB+5U3aOEtnb1TuxM*j>Qt{F z4)6d{;I4*WYwbGK>O2r;EI?1-g~)|#i51w#)7d&NVGDeTH^AAU=@?RS=|p>c?ePbM z?c(^z4k!-0V01cB*Pr&dwc)cli(**{G=hQd!M^(6Sb*$*VB`0@9}DJvB;`9u&pBKB(B~CIYY~JHRQLizCJN!$kt*@nGHC zN&y*w?{GJlJy|S)!uNfxJT~}uzefA5f;2j^(f-e1`>(}*HExyI|92hZ|LFX)vcZ4R z`mT{OG zYFF%l59u4&pT2?5(>HK6I)|PE!mO}=fWu4|J6!7P)*onXfHm)f!J}RHM#0MO2bC|f zvok?_deCFFZSv)lbzdrg#DCDQEuc)0Dd_7@U+u!h#lJql`S341&$noYT*U7&jepY0 zMg5Ss5|JE&G_s?aeGJXQ8H{AOpS+;=@lE`Qyg)O6Qyb_vCi3Tmk}!PHZm&PH4re3A zXy=0I!TZ$c`>*gN{26`SLGOYJ55$LXk6Rnh;E)cnJ>UIqSkjW)Pj-*p>iR=i8y9$cF6562;a!$Zihei%tr+%?|gm!VJ9a z4quyC(v{Tvz71p9jy-1W%D)2s%>{79vdRVdVFU34#?Mz6K;a5yU1evH5Md79R=Re_ z2XGVp6CT0?yf#<4k-} z+o3gm3ydFhWp_Ct;yAJaj_2oTXq>BH0dG?&ybbYyiPdcNhV>ED3V*;X!L8x1S0Dk# zk?r$1I@dXTMg;T)h%%?x4`lye3i_PmWmf@n2#jp$6STj++4pt@vL}EY^-?!%^sOxc zWc=~=i+|a7*m$z?mH?waB;s}#X!Dx~a!w<;=cGOTZ%Uv+4GQC-uzQIXxt+|N5d1o5 zbH?}2kw>#5k!1W@{BnP>Zm*IVdG;sxFMincD4C+c`4{{Z_8xy4W@DA1{X^|n=uG4B za3UuXIp;V1Q{ovlXHso%tzWu(Splrq|5BvqJxGoZIG3;B0K2!w(Bo^p%KlGhVUPLK zx!$6^C!XQ0!G2$UZa$g$FT}2x8%E!cEA|leHaFnM=?yE0?kcw?QO+t20u5AeF!`Vf|SPkiK5l0WQg>#ap-x=(on- z-e9XYG9lT3D}wGNz`Aij+D<7tkx< z<&Iyl8&6<{(C5`W)Cio+G|}m(5jqgO--fOIG{+NYRD0b8ZRr&v6VU5+Ay^cNSA$DC z+364X46W%@%^!d&r}J6K=X6lft%ld%uAMLTQvoP5cW$8Gd3%c4efwwR+P#Wgxw1i; z=)M50@0^dz8`Q`5X3o6~yd25^ri7iY-rfAY_DdQ^obzMemmX%HBU8pBfo^~Wlq@N8B+QjE=AT->ME&%Ym@{z= zub)7szbxV{_`sj*CF}mx8(7ijf#?gd$PP!dZw0nC=Kq%5+M54Pd0i76F9Iu^i~Z1( ztMwpNBV+j8m&i~wO8BHvKXsBiN(K=8yHjNWYJuzpvEKFq>Q(kA{(v^#-Lb`=pcUY4 z<$8#+Gh_y|vBKh8!`cj>u>Np=rDV`w*2;B_>~tl=5R?m9f z^mVKSOqnV`WNV1?E(>Q zCy-+KC(>`PJ+tiX9yl`^xdk%c<(qHkQ}sO*=5Z1CuS5_6l6F)i**<{XtB)~t1e*f?M6J`=7~7(!kXju2LrpGpFs>jDEfpX>TKYr8&3ZsXq^K3^fvx3*s#do9GW z{Q=GTR5s`ZG#60oVQzGV@?#0!rM!r*zzLG;vTJ(bQQ89;-k+a)B5(F1C*W|Rj~5Y3 z{;XqRI)@&CCGco9ZQY~(Bb@_(j-|Q>`}n4Y1v~|29&EUGnI@Db9tPXB zuJ~czqksNIF!majvsQF^eoqS`z>SYhU zjiYC(p`1UxO02lc8OQ-reW#z&=zQ3TIfBp|XlSmHr2 zfz$!Sixf>Qiq-w%IXWiRfXpBaApAfr?)!?@AZ$Q6Q1)w(pI0dr+;!@mE=Z(9@l=06 zEy*zKk42iOpPv8!4sQNgUK6XRAm86%M!6PQyY_V{@*%(5jLIuiK4TRaz#**bGvrh6 zi9Xl&Zw{{vz*;`DK4frV16~LF19m6!Yi!W@AbR_q2Vm~toXz{^j#i)C)4 z6Qj0-x9vpSxIa=L$3FBRI~@Ph9Ubp?%vN>57x0H_c=ab(z+UxmW(v`$xh0fY} z4j%9bn9vvRq#NUbrF*ayugQe9Qpj1p&i1|we2w8f&%vynzx^s4+rIptBM&NU?w{iw zNVndffv+jR*XP&{@58|#1f|!4AoaW6hRoD6`Y5KO{nhqz05R{YGI`Gm{LI`;51yRW zc`$J&gAM20hJi~n2lZWC&v7l%;R0sN0;zpe!Oty`a+-~TMw{_p)AZR|$l zXT6mRIdVUdlY)QO)uTvNKSQ}1>0vjZOW;(G<6Bv)(cotBIor$bKe7v}KGo-4xb|iN z*dKH~j;>(a-k_b377H}GqT~uH!joPK!zB&VMz|{4+_0jc6{DBL!wn58X2ZMGlk3IRFdT|LTjNdIaubFgX zzN@Iz1~)rjSzz7pIIuJpo}Jk|Wdis6FoTc5$A@74?a9piQC>B&@ii!8^y-`4BdXQx zB0aagCj-c#{`Z+YYbBmqIkve!&A~BK&;J+l-&Sv7uXF!JdGu21d|rp6*_(Dv_C)kd{82%)mc9%i zdoa((t}ixg@%)$9xEI^r06l`)xzS61tEZ@;0JMkUo!wc-;cQJZj-7o%)Y79f(-41hk5yt;< z69xPWOu&g>HzPMr2Jxcbo}Om=l)k=306gQf`Kw1@1wDmS>%as02J&H2J$t=V^$~Xb zbwtkwgXTTB8hZSk-?bfHzb&|@E#RE5Wg3aT2$KE;aQ6ng<6^E9N&_Rj0&#CEP>A1nrX)!s(%?64|FFaux- zR^6^3_5$qI;D1wg&K777I|VP>_yOVr&;}@dM2sP(lSsM(ZNz)}p>_7c`WOFua(jFB z-?qqr{?wqIMIPESczAwQEmv(-om$;fecWUS53XOU7ovagCHTedyCDxS3;!Chnkbkv zu7m&foI9mJx?QSq&6=}Qwi-7xeC63j4&>uj(};TK5hyoOLoc^hoBBxPK=7_SD1EjH z>Xiw3OevrQNYzs292u?1#6x3rdMa;n?y+ zkhWI%+V5vauEDNc1!ciTAgu>7eHHkhTA(Y;>;{f4QtR37^|TNzNJ23eOK_mAIIKY*PYNj+cbWs-u&JhZF3nhrq?=t zP|ZhF@WATAYHU^2tCATouKrbPGxq$|c=lcb3D3g@?m`v}hkPDmrR^njk zh9!nmDQn)Gm{Y@xKk;g2kx{ggH<#*JKPCRPu!;2A68(A`FXWKTi&-NC9$EqC@?7b~ zt0zGDAyddVXrISxZ>(NhJ&_F0O;3Xi!nmdxj<>*39z)i>gzsV!T;O4}`Z>HOoxG#> z&GbDA{2$4=+Tp_qN-~~Di7M834yq|ewH9dYP@hvxU5zGt<{HpH0QtLJljXNFh}s?b zzjcHD9_V}LPn+Mp5Z;@;@U=Yw`bXfS*$h^o&FGE_pA7$0kB7-8`d4rs)EAcDjt>Os zu@0h z+!aeZE}F;`1v?2_a?NZvoFkoOUKL1x{v*>E*IH8mWZJ! z7K@pYC0`CkeU0qFta;^tNAPbK4Rh(@@wX$H**{mHWj*xXT?VtT3Qx;kiJ(kKWH1ws zVk!8o`3{k9cfRmE`V`Pdxyhv6jGz zyx;62>m$b^Gn{oa*Dplr}}kuH{EhBhe4l+oZS{_8(*vzSaSW==Nj4PRe#Q+ z?3C^B5j=wJe+N>z56|d_H;NpcQ!LKlJQBd$kVC*7^Qpw13mHL9_n3!lh!{m$i#`FDTCyQvww9#|vQWR;z4P zuJsV)`~zr)9$bAp`8d~4_HM49uU-S$`&*vXTkNqBx0MFo-VmE$RV)POF3SC_2hLBs zv1>_m<`o-*|E(JS-yi0`J6CfT_TCQYA$i1xFbU<$7CiEMa#Kc;88j9Cz*XoUdUSPT z^Q6L<=qY+k&*Fb06CX%dJs_T8N z{64b7SC%}QMA0Ha2)crVKlbU zM7#w*B4#iF&NQ@swOXxu3jfN*R9_r}RyV(ITez32zb)6qcz^u4&UrB3YX$6q6X_1| z96cf~;#zrqV^wAs`7^jJs4k2@9=`OXh}Mq;C}?*t`JTcSiev~c2(!rE_V%hsp7Y>? zQ&+F!BkqPyG3W1_@bItpm|lR?MrGx`uK%O`y+*z!S1OVqGQyv(u2)9i&GMl6B+&mn zwqbvsF{UqjUm4Vkf3LJ1fg%AmWVgr^iyy#FG3)W{io8eM|7~Xgvk9Fox;psYoPF1i zT_@+<4Ld-~)A{nf*?}9NeVjY0oY|b`PlS6u1`C*`kpbIO$5hu77hJI3gUQ05*NYJo z_#?XUWg=qlpz9vM!>1*1MuTqg9z-Q4Ml?s`MmqSMOrhk+%gx1JdJT9>dtH`aVtQs6 z8I!vfq~D1)eiZ9^BC=-^-z^h)3Z6a|iTr4MXZbqS&%Z-Yf)o9&#cTK|kqps4EtLz~x2~%{ zu6|p+iS2v=l^2JxvgY@0$GW@r*7x>m)_xtXklh{@NB1wo6+Q%;dpyUr_}(^w1>m9_J$S@95yk=24_N&l9$;5->j~E4Y9<3rSLrOpOeBEM(H-cEM%`$+%U=@`(vI*tyaf2mfWYsj^94Os{tFqqx`7Cv%W!2O`l zyf{%@IDhzjd;vjx?CtOZQ4_D7oZEc4i@>b&H1)vS%skP#M2(c|7fMr zCu9(`VAoR;TdSHp-jDIqJ%{GKqu~PA^8O)w&INqF7D&Fwc%_jFWl?2A=ejy|-i&T%!5b4k1MUAP-2V)CLU*1m(WF?MWv9h=rwnN8|LnEI z_x0;XDg@uT9qp4{<*SPf$g_TSEY)?0QHl?pKtt6?|=VB4yc8c02?7gI`duf5vP!C z&MS_`CovMa^d=VI%=iQP5*4_Q{(%eE{pvyWpRffE0Glu2={AD@6c}|X-o=xdw@4FL zv9Fa0r-AeM{?b+0>Dfl#jk?>%?L(Xe{El0U{V9=w}>Jdy8s6|Rwro*!aa|CH>Z zpYzlD+@CeK%&>jC$xyftDKL@0)K7&g!6fiXP%|U$9C19iJe^vpV}V{+M8n= zuD~uFJ92AFgz#>n!b6DwY|2#+`wuG1?ov{_&%ywTXTN9~ z@t%mEdq@3WUJ<{w>>=;;Id`j{8!3^zqSe_I=MnRtqI!kM&<5-*D}Mgfc>X{Bd&Q=! zm=z1#&-L-j6dvF!fk!0z`j$il;xQ{Q=A>bas4C(7q>o@j&)iGJuQ$_G2$vakeIBY0jv* z2W#-!zQhTR=e%w~7ftH;iaz2iksov_Glkx+=B)eT5BREH4|F}&RQ`PeMjvgW0@s4- z^U=M*yj)(}-A-A?`>y1;2D#xZ-`nBy9(RNI3841{*z;RRlh5GLUp7@cY(TPa{67_( z`llS3D_${))BK^Y==(bzRlC!XQCKr0=udotU4orzGNSPbT*leh!@y1^$ybmQ=x^{y z?t&;U5ewN#Vi92qZ7W9WUpWy5p!e?t3@udf5m6B_O4&i z^~K(IH6tI?^acGs(#F2;7T>OSFKn%wk@*AB3g!XW2P|DYjQ=~~&su)1faC%FmVMH* z(f*=e@7-E_@)96@9{hVyR zH;4;7fEFKtU;dKD8*kT8IlPG1dVh$_n#Y>@fEQr%FL6xd_aqp+opC<^)m9J&^`hT8 zz4!Ut*Fg63}-(y==yAM|)mfNaL2A4A0$nT0+bVq=H^8}9OwdMo3yE-?&qf@en zf?an|!EtnX@UI0ByceIK&lWo&x+sWOd%0`d9AE|Z$!^&EpLhJYdV#a(-0Y}-MSTCS z|K>KfUBT%6udk<9!Uj>zuADxu!o!#Tkx+O(I=4pq6_l=b=ir#H4NY&q`-bn7NFk19nnV{G@sCk zU1;|Zvkq6`^&7(v_QZE}Dw=FG5$TWVB)(*|2{Pd3>WgaS`ZziWE`u-ZZus|C@ZUe9 z!Jh%+_kg~e!TfE+(I0>rJO-D4uHo{pfcDqGteAcc*6<3CKF4A8t+Vy62eCId-aPY+ zPba>Wk`g>$8bUK3Y%JS`lBwg-Dhc_~s9(Is6z~;dNxn z1kU2YCVqDh7QqN4#g#A+*}%oH5q*351QLJHYk6`b5tIk|1h9_lL^nM>Oza5&?h^rNUqJMoPtn=oV z#6q)&leM3#^8E2I|Eq}>{Ep~A*9Q6Oe`8A7N5OyDKcYN3#@(0wmEXz$UzI%?w8zT# zbCf0S)EwELu{T%Znx9B6*pJcv*RwAc_?M~j{a@q#?_Uu;@7kC3j2!SPWtH1JAXlh; zm0a(1a9tJsdmLV$vDD*i!hV>u;Q;9gqD`+B*N&G1SOvTu*Jx8-*^^z=y|Dm{A1}`i znzzA!w7;K{zGA5kUI+=XChyt_?SC*{or94CvVi_bpMLDgbvc`*K)-&dbP~6cXkB>5 z7QAPFcIH6z!oze9nTAZ^&FLh3XCnhnAxCf(5HSw)SzZ4XI{ZCw{Q{WQdN+gS6@I@A zD&wzr+Q1zk{c3o^MQGh4(C53-fo$p4FI&?v7i+3k-TJtGv3{h!6FcKrI+dO$FBg5&+uKZ@=Z^}$sa`qJOV=)1NXQM zn?SiT9Pi>4jeoFI7Mhh{q*1$H{OjpAt4I7R7px*EQOj5bRyv&9p#OgU!cVb6rbqj~ z&U+@I`} zX*#g61o{(?>dUTNhcio6k$nWyiy(7Its&lqb32Tkc?FW{B_ab$Ra?_NWE3)B)%vXZ z(|QB+^*GqNJu{|+xql8De-B>p2FQOBO>D>R0aO$0LYE;m`jSi}o~<=~>#z0eAbm95 zi1%VD#*%fXdg*#8aP+hKD|`*lz%)*-cBs1Je^|7drTPi^C{^`?YT9bfsw;KNqsdZS zlUjwb_#+l#uFlb5`#LoKDEtfeG!}=_=3W@eT^xD`Zy;7@jNoF<*KS6c-YFLd{!a$^ zS^&o)(`5fz2;x7|z)U79e4Xea>-dBjq}DJ_q_gi6c>Q*&Uc=*mG`^gJU`{)M|Ls}t zzG!o6d?T~FBCXTku@kh|D@494Sf72Vo)XT_Bfdj7%yvY*=c_g1Oyi5*b< zebF?<;`g~C1F~DQLzN%p@h|{;P4+EZE z0``lPJ6N3={Lg_j@K)l1`T>~E%r#$+-M9z)^Y`HS5M)8}f%O77Z_a!|=Zc#{Xf3jt zpjIGuYnZ@}NQ@(40wbvknYLP{>H`nBtExfn`StttO0D0)wV!PKcprj(XJ*|BKR*P_ zccJ^`SM^i%?Zgl-VFJkk^-lFR^`@YAvHIVMmc3QoQJq(v2-*i$7xVv^YHvJ_TUKjV zb5$Ln>IJeSo@@R;O&_W!xcw0xi504yVFRz>lia*My&hlxh{<~Ex3LV6$BwuTFUL4o zhVu~3^c{ob8O7hwiyGgv;O?%dIX*$Z{=Us%Y@4#eJsRF`yx&z`m@85`KQ51aI04-| z5(#@W@3s4P{L1+$Mx)oocaG?IJ;m`Rm0G|sf%yHy`m-Y=8KR?nPdo_Wtg^k$xVCqp z{eM(_i48F7d-VTD#P6H2pGPA{)&E7;d)w?CC2i_662VcHtMf~51^fJYZ*`D-H2&hp zkpF$axu~5BEXx6k9dBKT{XLWbW(4=bZ*SeGl_Tk9bLz|eu?&zs4kR%G-SWR-~@>th;?)ryx!F!jvOn8h^!V33UEk)il+gU>q+Jhj<$g#HStaA`70R zChZxjV?XKmH{P>-byoFYHD$dTQe{Z}5Rz!RMh@&ml=29$JOJDd!s57PGWxG+`~g=W z1FZia!gF@_PF1tEz)5I-JNV1|l>yoSR`*%kJQO?PZt|aB$5Uy2|GT_@sn)>yUCwv{ zI&(klDXS~`!uZ4b_4fDV*a)fZL=XG8JINte#Vc&@hc3MDENt!@h`JnrELfLE+(!ko z!F18x(cbayr@Bv^7Y0zILE?YDGkdgfP(L;3FV83+)<-9dpxURS`igE}?|+Z}{}%d{ z0j_6RQ+=w5+4zXE)*QYt{a`=O+S5b*@9(w1@lnJ8-=^2wp-2uHKx+Dx0p|6j!>83j zb_7_1Yqbez?TrL53s_H}_WNR>Jp0KBfyMwLN!s#cUXYzwQ#W?!0Z5$_$UHh8DR3}a zE1tl$IAd;D;u)dcXjCivU8`W;@u3#tdIsi+#-l|Di@ z5g)jt9$X(vSD{(!&#M=a5torkv^Q+NceOt6>OywxYUCL&Q!Q4_U(Hj^M5W9W{GXwk zgJULUV^32}Rn?Uf?_Q=3?E|p?CB2LP1oFp`G4TK%llwV?chOf1R6VLgs;jXVepoL< zzVbk9iqDvCvLK$rwV86X6?OQ>fpNPCS?6!nzgfP{5=~!_LGYB~6R?Yb%-_0z(%<9) zq=emsZo`&&7H*@RQ%&(CT~fZRx2o@~I#my1^Y6pDm{sA?mtz~QQL=o^-V)O*!QvL- zil$$WQ5Wn@*uk~J25|H ztI8Jdxj)^#Yr|NEAZP!AOr6B>k2K!*&;92W$Z9H0MZZ3qRT~E2%F3Ue-%%b73lR5q z^tDq@H+IV(;kMIKCq9@RV;)c>K&*c?h55X82a%K8*S{C9>(lHmYk|c7Dvbvq7Jp{5 z%Kyy>P!7lj=HzoTJ!Ansr7Q2>8wqdIv9{XIA2~7UdhQNOF>ZJw-fI zB|wg@?Caf#42&UA*9n%sdbM!%@71i;vS{x^(CMSAar70ul`5iRs~xM2K>WJs_64!w zr^kA4;a?WZpEJ$+W3p#?-hh!z+nS}dMC-TAIXM{3F0Snu zehE@wDEPk;Heh@}pMdqsRs){RYwSQ$=KQp={}fiu=j0%ob#yD9j63Q%>l3OOsqs4& z*1rRYcXnqVY^-$lQTKawGRJcTbiZ9&WMf{DIU0Y>ysYq6NRMmzn=V5WY{xsS`w52> zp#{BPmju!4@d3ojS3*PrC<7t^3R7rH0j*H^XgFzX(k^`e8LW6+{e`PA_IvdIw{?G! z1X*9ZCIsnPZLY0dlvd}z_P)q>)x)Qi3L?r5T~=Cu(eWFw@gTam7w@zGb98y^cVhrf z_s|A#%J(K<-;S~7?}`7!0Nq)>Pwnq)(Xz|(TMNK=f-+*kCLZ9F;3JVe=fFJ&aLZ}* z&Y@h7b6l=r0huhmEN7jrLgpaZRYYmfm7V?vEY^=YX07H$U%!k^FbXfmIDANNf@yL6 z9=%202Hl^-E7dJ;qGO&0*AIj1dwBgFL>5Q$^LDc3uE+Ov75N6&f$E_kVK6cDK~2BR zE1LTG>l?&h#JQeLeC>RG|B;x~K;$!uj z^)z@K*Tgp2xwRiT1jnJ<)#=KBtMLe=LzuRJk2z)7-XK0}^???@9Z_GKZ1Yb!#cRli zSz1RDljw!V{~A!+ztQ$i@JvU~Es&5#X-k%`9UT|v3OdO>_L<%q=V&d+n(jr`wKDBO z7@)B~wSV+~Z2kNU{$p3h^B+H7w0QJ+L40{txgT#|K1Y9lB!Kr3j75 zzs7!KfY%_py>oNr;&UljPaMZpk3@*>PflM?yl^+8M;AeVzJmYfaFD$gyG8H67}kg9 zq%Z3Olg%go`=G0>;kAxrJvfAYqZgWNJ0uHG)X&cU@PK?yG>`oy?H9ZX@7)3Bc@lo# zbNGKM_JFl2TVqw&b;g?1!~@MpHu{(>5;tYP4o6>4LwDPWpl|^9_vI6IfgS9L zFYF}t^|j#pQ8fDmbocF`{7R605#Q$=jMF&&2$Ij?I0G(n3ir?_U$3kZU``~l z_TSZXgua1Qi1nXNGV*_qqW{ITw~OcBd*K1)RbdOUN8=yV4)}TwdWlR&8~F|EaIJ=8 zUCmVeuzK-(-Tyztzx_dERw6yNmG@%juga|)S_W$VXi#VS*`KRF8thN_vwvJo0wI^P zllS7$WkKoe=m#_Tjo&3tWLdtU8(LrezcoK)m`VWScZ)V20C$zz-=iHzh-IKe@wsFe zEyDg;mtDI(n*S7hdKZJsGuVs!VaN7{WjKjktz|}l9Kb3BE0CN~tPD^BYzE@5f;E1I zKkjxgy*GP*t!5>jejd%O!+8Dxq@^8<599a)65u3cmdwRx4n{tl&sn_D@$c9q`(q0{ zLFLk~>lN#bi7%cG6L_VrTfZXLpeH=w5Uhby@cTL0(8*%A5+O7%`M$|9!+Xgd7>~6- ziOQqTvG}JZ(|C$0UcoBp)H=WJsCU7R8I8<25=qymiN*9}HSFox8_jP_#whDlJBk>M@GZrBm&HWD^80!gm=WCbz_q@4*IPk-qO=6Y)%==IBFZ*zLJ z0Qz8ukHpLM3f%ct&~hC}JRDpu({OqBNwNUU=65E@T8$6RsS#$B*~P>DQ7faZqu<59 znE;6ZY7rEFQ#=8B6|FVYo-o^Qb$G=7;AkK|s7ug6vVgt8=VpA5*~Lq-hZ70#Y^_DK z5^)`#TZ>zLz~>0;^S9vNH?xEH=DarN(Y-a|FIU`xcA& z2^`J}c&Vv5{DRCT{e2x%ybM>^sPzJ~Q*R^_asoW&B(Bq*AV@3!x1io$E9UvEhjd&O z>6&RR_G))_bFP9GogNx>|GcbiPyVvOaHKn7MknxhZ^-p1dAZT{(eff)%oi_TVtcXr zb32?f)njk?UskyI0^$iM7MJ`$ zt03P0(xq!FblIiYk(a|JuK-1NvWJfX8H=$;iWavva8Y!L5xnl~8mC4&HzpjwUJ;A4 zvkK>Te;EPPBM?o~W(4{Z-II14w&&EMoKa7-kh6l%M+%$`3pjy$dxJw~(XP?#7k!)B z0QMvB=mvhZ2ecthvcV(7&-2xZ1Ii1I{mSa)BtfgR%Ga=QyB|0{e3>QbG1`82b1`dLp*KZ(6G~JU|&RfEeKQ=znJzOaS@Mp!Z)Slff>a zf9B`wJbr#_gVtL_H(n!#@delFcyPNvwoYGgZw`i?)|}(93AgRo>l_X>f3TkzY}*>k z^_h>qe;X{BE4kvgPtN?eGD!RvG#AYu{3qTYzMq(1+XoO2K=i-2eMZ@lR}`j@&y@*u zM%Mfu|LV`F?O5b{^#6~U|KCc0Aidx{eLP(4a4ylWl*rG_^)m+0n_c|-<~SA^a0lM3 ztJv{f(A45s>s|cokFzImH;`g4(9DgqBWO2vlK4*!P^3VK2FNp``DFxV0_jcg)67EA zudpO%w>FGp7tUY+_&*OVdKx?Yu*tT-Mqt-IA$As5|CicBZ?DgJ>&aXfS+I5^RYa3rj?%ki2jtK$AWh`& z*&O2CSq4@!`siNV-xq0cDCci>GB`~Q+@Id|>c?26^4O|El_^6s0zhJ+5Kz%cF zPybTS+FHKVqtyo{@OwOhgYg57f(1OtVI}fYNPOTBN4psGm!+|EARF(tqGsWV=MDbd%@f~$mU%Bd-VTrLBEn9 zmVUH;Q15!@T4;5JBNTst-T>|B?&ys~j<-Xv*pKrbaJVJNOf1mOeyQhOlHIj7_%H{+ zt`c_g=?Qk695r9V7t}JcOYvWF2_gfu1j;9={WCS(eu2&#S&sAA45S?j4>*T!Kb_yl z!vprgUf%(IyeZ#m&7nC*;xqY&8-mj9(8Xt9w~TA1#J`UWFrN1y+zaCM$vZU8r?)L!cL{Dje4%Px;0A%zBmjxoSVK{~+sf2;XSsRQ@6-_-@p!hS~i+ICH18#oKQt zmFSQ57xiA5A_JWGzAk^qnXJ=jka#9%o!lSsFIJ1UPBsvP`*;{sw13bZNs-%Srxovk z&jt12{Uugq<=N$|%tEZp*EQJpxBtJcfGb|Em=eJ2l53WV;Ya{~CJR{nuiI!<;w+q&e$dv8*Zy)?VXi#(GTp!oO-o<(d zoM7gB+|Buptr`iiJJ?hA_ecBM(J(R~tU%Ns1lQP$GquZ^K7@Ta_Y;V#jYJ-`h*Ng2 z_94^wp6Z?Ir$~XG_5Sz;ht>DM20p|uFlFn*vWv_E zl(&mpr~IsqZtMka#Q)}?C-J)AzwEEV`nCVl6)e6$?f+DrFU6Tf%h&;6u|_7?GiY7# zwi~+ixF!ekGd1+ljS9n|J7ummjCcm=Yqs3U##WL8Y?oG5{Eh2~0*YA;~ zd<4R*lPYUj3C{tI%w=111X0+5M?kLCK9 zjjp8ls>#=#Tvv{08M&F%e!EzppH>7VG(hVln7#@%?s` zGUI1r$2{L-|Nj8?BL!pt!M^C%6B9O<9c~=JECAWRd3D;>$+7cR5BBR-WW7Dgp52do zD`2Om7C2qPSKxj2_BGe659sK@C#;ChnZMze@%xMZVrQ!P<)GPv_6AHop}j?twdBlE zI{?^=YH=itGGJ4%x<6dxI5g<7cqk76)dz6w2NvulsD`zNK$$J5XMR7P-X+$dRpDh#ubwBv~J~HQ(XnD>0K5(jHPGx*D;If`8xV#FET0ir)9z_TxLf=Xodr z_U8Attcg9hdN&NkUVB^(MGHolo78Pgsw?M>)4+BX7HL)}=G6f1_2{#{0s$?dNL-rE=SqFTL61 zWbx3*1s32P+k?Yf$eOx^NaF91rt9(7i+*K*b0FP8MW=^7CNC(KrO%4@;6L)f`)Z!- zwzhPLTu=hob>R|bgxL~QiKgnQ{1(8?9}W&z~LZdVd`-+jL|w)fq5 z)E*!%a1i@%%?8~v0Ox!fjb9f`i6=EtYWEgrzqz~IThTPd+Kk;_@E;ywg`YNmDtzn# zsMfOQka=px2AAht>;keky5BgwF*uKO5mF1Q$Mwt~0Q=vc-^S*Bc5m?5kF$#eutp)3 zicT=JW?BD%{R^CE+?n-o$0~e^Z@3*S))6d9f zwNZ?Sn2lpTj_7x0Vpx_|(-vS@563{fEH@FOc#hnQuc&&Rx~i*BiD5j$n%|0LJb=Gv zYtGhu4s$Mg^3JV6s4+}6y-hh)cc)+1-&K9bdD#D;4=Ugt zur8L20s=DVonRq>5J-T40ht8CJkLWI!zhG+paiOjR7EI?2-Q*$wW4%YimmM*;6Kra z-LLb$x93)=42wwapIsNe&?Lu`F{5P?9U#);UDw&O_cK!i@8t$RCU~Y&ctiS z?|*H0$?wnWy?l;+*&Mmr9G;p^>av)w#w;IR4$m6f2p|5>f3$PznQI@qesPrR0E2(g;j*!VSAN4eOC%zH?%+P1;VFZ8dK^ujy-^#< zm%4bRv-3(SsO*dI?0M#^4>?1C8Qt$s$KHH$-bL)+d)$>m zJF+2tFWp- z%-@9$5GT_QAP(UFF@Pt`YW&ow0Dm>y@KeLUUp#hOm;de(Vs9VHlfA%nmYE{oj-Y%_ zS~D9E`b7if0^*~l4BB6?xk8Y*{bu}EmFhCr9`}HGKXws)&iL8a98kyWs>R9wSC0ez zc)~k|TZ$OoJJ+rsd+>(&9Afkr46a_x6eG-j4Q{NHuX`Ey6} z|IcILzc^Wi*UbAjiy4-~f6>IMN5zvqNw&=I=KIC~e1BPh)t}+r_3T7;H~$&P?)I(mKHC#OD=NzKjjOFm16Wny(pe9>Z2x#JpBZKS#=+a8$GcDf)c~jg z(*OIYc^(cO{;M^M>EoJ5+!uS&pvonvB?$jKFAH$-th-piT7df0^$p)|-rp62$957< zZ-41<6v(EDu>p9%o98`WKloR>uX6vFhiR+P{iU%ARqC+>D*T=`n0>}D>Zan!C&Uu$ zb4D-JL;vh~T>BO~y4qj%C%^CiR~|Tq++rMqby0VJ>3kv<4I|I$43pfNYxB|_9lAd*c@4hYX_NXazxzEKg8unO-_`cHvfIIsy{sX)-j~-B4aomDQS7JYS#}Avrw|^_ zZ~olDLzcm|BN6>ND}ptc2k?-2XJ!IEbxs&ZgF}`3vhMa7lA~9FBX_VJd>=d1 z6tM#z8%w6fSpVOR6DM3h)RaF=Y|<-#oX7DewrhcAh@W zLEVi=|FW@QYVY!PVKS8i4i;6gaKuyihu*58ea43k(|OK(23<(6K4^+h9v)yOr|+%$ zgtaqXj|D06XG7Hdu&~)r=RN%6{qz_=qW{Ou=lb_k`}YT99}4e$3m|f^u1yi6eWjt%#PQ>5e5&XvQ!YAq^#Ma~8FasQ z;sJc%qX!GX3h4UP_gfe6N9I2DhVMF90u}*BShexhV+Hj4unE@aL?Dq3FK%BY@DBu@{h0jJ>*y)-Tc>b(w zd3m}Wh4A`O0&W;&eQ40GtN&N$FO@*8Ax5Cb|DA&d=r^HMtdA4Cad7{(dG=f9w%3hk zrY5RGJa*bbe%d?j?Vg7iUR`rFPUSY>oSGhvw(=ognGd~Wtl%@}eg4Y$6NL75r|t6{@qc#C)D0)}|4`AN1;G6I`62=K zUF;uXaRTTM#jUnW2boV9j{T~^$JeK;=I^G;{=I{VR}H32>{EC4$XS_=fR|o2|KalX zlur@3>%oJk{;N54QU80dL53ZOE*%R(#n!=Mp6I1>lr(XXEgq4guvvww*Jd{StoHjK zj^I^g!mk=Hsme#*{hF~`&BD^7#1>EsUOMj^mXDbN-u_)<6W(|DX|6{ZL`c`=%kRJS zU=PgxP=lzth)2fv<@W5Nr)t4F<#p5WDiG40ZBS+)AadyNGIwx2GS$`E&G(gCAiGOX?@3Q|hV-tRA-v8?c_a-L& z@mQKSj`g(XPbyztKIJaPj}v$maXyc~x}P|PxA%-R!1#cb<0Ky)8us$l7H-jgls5-W8fhLxS6V&m@=#@Xj3~2hiJiDOEsK0I#fvYKa+uZiL zd5+yQ)eJ(USh;EiS_j-?+&e4f?(?o$1zJAjgi|Q>{{!cfQTN#_8Ha1;^5n5oFP~St zVPce<=J)I8eVXi%!YV^kUs5^=jwQ~bFv2GGPkE`Qa?vk(5(Cg)Huk^MyxX&5SAJ=# ze*S#=yuL8J=N0oFbU=jp7|K!cgYsoCDShF4BLNn`V?4XKk}qLP%%6Si3H!GY>}LTW z{}}&c`|CGaKNqree*U$WM)C{9EIv-ZmWj>RHETamYq* zoyy}52*C#LKWh?pG101kDS6_5-didfCbd)sHRWXrS2m8ql;5iH@tPC4~peG z=lZpCpNt<}*7s7E7F%hum+1ePVc`Gs{W37BG-Lr-+q!={Z!v%$n@3(gJm%w5_w$#N z{r~j5+H>d3u-9RDBN7&1J-yq!3fqM>#sYd|*k>ccyx&$7YjD*G{kJIevjM9D_!eUW zzO9Ykn++oRZ{l8c=8v28|Jw0OpPkF6rf2MT#(VtUK{^uPPgdZ7TSJMv0AH~fnrt{h}g)z!6Imsa|{W=-R=)^h%gN9%vxEP4}I zfo9U@!+fghocgRGiG>iUc*V!gd$m7?tiQS0brb3D(PL{5Eu91=9NC|w8k=KREsN&j zZ$5V!Ks^q1Gr)WbI**AJo6C&(TshXW$|m)VX$;qorG4eR?$z`DSesaxYF~4_n|-1N z&{=^9_)Yp!2Vx{J>Eg20{FK}vCBJ-N^*s82bpPAmuX#*QR4rv(&S;NCHUf9$T zo_2YDoph9ly)3@6YOo*wj}=tQBLgVr5BFtQi>@vkG@GR;*C+aT+o1BzV`X17w)Uzy zC+ahc)ztc_QLIietH>YY6Y#InApVbYhypfuvfV$}QriFB=R5huQE@&y`J6wW@6go0 zpPyHAj%oev8Uxqy{#btYG&WFVpVk-tR|l-RG3D=PPuRbOVm}Lj!G(U`-m?C@B?VwR zg0liDgC9PKeA=wemk&FA$7le*bI2b5{;+}fj}3UitST2f&upbF57u6j@nvk3_lHom z?bZK#trR>Fz-j?k&T7ww$aRYXsxWTKkUExlfNT4oRqkSD@ezY%#nsldvq%h?4KmHZ z3bwlQX&4b3h+P+TK>hh@Iz>G-L-Yapae%n?#sRDZOGl@KP__map_I5dn~xl8bIqJD zJ0t5|pgHREt;a`%U(KNBJz~(mmCN#tXXl7{|8`Da|8Mt17g>PbmzbpYT-RUUm>EjwzP_>X=v5trtPcEwQkvkN6c!$&!0SgLw)cUr%U}$X2Q*9Mn`_rtSr6t zYF6zzEpx3>g=Z1Ln@9!wyz_B?FG{#LTt5LHSHEsrApFa-Rp*)o`0>GC9zR{nP8LMhhrsQionFaBX( ze?}HfB~TnF`^O^Pc|OMj<~(0Faod-N|Nqf^e{UbYrt&`y@0b*nBKo3$GJN6ve2k|8 zu4UMJ9(2O~E#C8=Zg7RRltq)%dkbW1I_g;^23`f>4Q=TCNL4Nqpnt0~X$9iNsfLCnR z2~Ez9hGhe&f%0NSJy(y%*N0?kzrD|jzf%ZhVIZGEYX4LH7U}?fM`y=EZ1rI3hOU49 z-|Mgd&U73g1{7Dh>pb^ahuq(vP4xezse^p|ytX|P){}2l5eu*!KL*f$#Y@nhj@&aB z{U^_VKDI8D>#0()|9&?k1o~a-WOYqeu$&YP`-)k)uN>z8>yr)m>ezrk8o%^NSm|jWC7&D;hyhT2}J*IvJD2{XCu^m&#Dg7{8?x|bHFL2 zLT7!4EJ2g*7R_veM|S%%0=QV+KrGQ^ZAfuOe1Jtb--5t*UO)fuzw`k10GsfacCeKJ zO+8-iQ~iUgAF8K3hkbgeqVi_^J_SZig9~+%K1z`c|LydGp^L6m|7-^q3qS*80qVv| zoABQ5Gp{H2XFmF0P7GkOnB0F|x*WK9&mR`>kf|0hD-M25+flPZ z#iRe}axYg02mD)o0IUG?n`@_%$a7@{Jl~pES*)@(^oQ~=TRtEQkPeWqUc~d;@a%uj z&Lcu?b|mk=Sw%=cb9glS;YiRQ{^J;7J^#NdU|t^w5Cb$db$NKX0oFkM<53lGR%ne7 z`;&9M2~Ct2`bRTKs3OfQ5(`~?h!ODbIDk4J_}>bkvVe}~T$gw8&h9qPd)ip&&rK!A zH|OW`lf8Mt*j(J|d@YX!*sLF9_aA$3^!}oJ_+KU9{a zrvz-bz(WU}SC4{p-9-PNp4y-lN3&u>|~I@n|b`6V1x&q~#><_W=n zodEPdm2u6ri@1lE%mAwcdTKAmuTVdDtJ@bI4naTHj0lsae4 z$~dCleO1!AHUBTdD28AU)(*hBC`Uvt^N=6TCdh!uf3&yRk+-WDy6>Q^TqxD@omU)2$H|Cs&b>|*}?U;wlWR_-oy^hZrC(?=)k|IL~1`1P^b@0#z(?rq0- zKW$GG&?VHbHGqGdt!N?tj|W_6YyI?ozug(&^}~N!Kuoi$z#@Ve!PtW)=y)%m>f z`tKj?|L*jZ-8k22048kPp`x92>{5kiVySA?>XV~3$pWZ`YqmdYffI`ZssP{zRRvKU zDBpIsIQF)09-#OiR(bRF<#~ILS&mRIJj>vgBhSC%?d~uaM-esf_h;sMOyT%nyrQ@w z%^;<)Xd>R9pND@aY$6Z*7cHg}#M4O2!BBIAQ+wuQnb(CHU*%%!FvV+Cn zF#uLX%+H3b1t{CuE&wdkJ?0svy8QM;{(m!jmHzqUZ(cXw&qL=mQ~3Q|-cJe4?_&UN zSG&}2Hp1hu{}cMZ9g;5G+u&cEPkq{n02iP0NyP^B5TqG+gec&e@%FEsKAKMq{y#Q( zftSwz@c+zNaq8=I%h}ggPmfqt*1F6X{Qu10TAk6(;Zo&Ry^D!`qTrnpAPRWMum&n1 zoQMAP?csUxU(Z|IJ+BSXF@WPU^6qYh|2qug!~AlB?%!wjcdbIv0Bca>AM*Xix=l-j zergBJqnM?fWSpG6*o-Jfpe6~ct_lGIC<~)H3V)J`r3K1}_)cUBu=BG2)&8XZHBBHE z&@0?+@O=5OviD8S|LcSPZ;e{>p|R6f%~4k2Uw)r|-|S!9fSoDs5BVPJy`eEhi4)AV ztZr@lZljMxBcAOhGrA;`zMVLRSmRZvP}QNv!3 zF|ZKwq4qhA*E`$QUa$bGfYcj_3#Eq^|A&8^%0;fRT81MJh+RBnnAj^u@%#KJf8QMa z?{gEWJ$;T<*5Ltz<}Stfp`PxyY(EYVQ`lUQ-Kty@T^6xgtMY(4__p6j^-uV( zBLMy}fOh>=4TweDZSY@|55arcd|&x}Lzb0Ac_U2EFy-;b5;lRQ`Npri_1exY}#y7L~to{q60G1+2Ok-ir!W zBTV(b(AW6s{r_`k0NSCyC^MAv`qiak{o;cxglP2?)ZQ6G~s{_R`0u7HGPHK4+M$%W1hP# zT`a#@m&aR*@7D(Sd(i>EAv^x>_fhpLXMicVwZ}QON5nfi3RWM!i|_rHZx8pY5W3fW z-mgcL3%&cCh3yPn>#8#W)8FVvCZt&basrng&V4<|It-gBpwbfZmjM(7@cw$E?6iK} zd^cYi-~WxN+xq3H;CjsA`$*w;j8*e_|I~ffx_IAxDFvsP|DQw7t>?ZXOy73M_Z#Ai zPnZ1{4Lof4`csAhTt5u+*CqzQ0rarjSM(WU0qospT9zq!BF^Ug%L3@eQ6FE2d#5z-&U^ zpH1<&bOq0H$?j}5K$V1L-BbO%E0@&_;lG{Gpi?$5466>rtz`d0Km9Ldq&zAuG#%9U zpfgf+ae92y66gT33n_vzfP2pIFCA62tpGAP$vIJ1O zOy704X9w;3eejy$DnGICV}nS~C4_Cvs> z;6Lx5-nZ31q5!oJZ0N=F*lGZIXnwgG>#a4+0+fB={U0>ZSG)cG&Ft;=^{M=S%doP` z<~ZVrIDgSTd%u>SwXedD4PY4_a#H**sQTXTgz)ctzi70~AZuV{Sw8F4xz$5mW>uG>6o(kv~s|;)m;1);mh>H%_{J&iX zG5f74q!dDb?`Ug_*b4kV{Nq5n?x63uKTG}}{_BlS6=4;z|E7ZY2ErtJD5IhWK+dtQ z12si5jB2efnHtCybgMWRLH%A_ z#}ncT9h)U^B(I#Ghj|E3Az1upHM-5c;({h2ru*k*eR>yXbk#q(PxTPHYf(B#jLf&- z8^HXx{%_Imyrux$eYn9RCl>qARA_x`@c-A-v3cWIW_^Dez3JC?8rTa0~BTR*0J&<&*yV5I(TV#&7Y?L9Fg6l z;h6u=OK*JdK0iea@b4&&v)8f!s{t&+@c@sbP5L==IL7{0mk{>fe#g)ZiO%NP1LiIn z{8#OxM}QiN6Y>3ZV=nTY`S5T4r%U?ZYJmCw2Te8Qn`UO)UrgoCw`TIsZyoynt~g-Z zS$8Soug1reFYjb8-~B2%J@VFj28s-=6mcrwvD#qO!Ln128lCSYv${S!nZS=8X4$=d zJdK$kPdelPo^a3rFCLH7j^C+O?UNyrweISAYmT2IHzf@A>wZy-5>_aIb{?+(_Iymn z&buXqE}~QO;Bgs%`+Lmo4;~(37v*k;^q2rku=hAZcA(>&uRVnG%@X>rM`8p1YmXl2 z=lyj+v1*G#zBm8h+!eFGQbN-}VhBZLeGkn7!~oJ$>j`2FL;ycI=k40@_63l0XTS={=hNX_tkpUNRSiCT@coRL zv~Aarn??!z;A8||bLa(n^5CBhc*6KH9j7MxRIyG6&tA2UHgDIH|>1xn%4{J-c#$ z;eRKBcXsbJ=k?0z^Sfy({{C{}|F4ercf(X?JbsRi)1~TXdyDt0^kZR95&!p!kK4lI zkKW(vv0C#;>45S8&l#=h17iU`Iu_sqqcp#Ca!(U)CYbF)QE})4)^>TA#WB+AD15^Mv{|_Hev*0rr0Mc0V%shvnq~i+y&1{?9hR z`|)>3UcVm$h&`|Xi}!r{^8f4wRiO8iWh(zC^QQ-juWpY3u}{^tKGk;rhW~arp!&0k z{T#2EjnveR@GqW_OKe9W?CL&qE}uU0g+4KTKYuZoFU_^=wGSK{xKs^ZGB3z25hZxBE9^ z0p#x&{~;Of{qX-iHzu*3e^CzC-In+7cAP%-FYa)sc~tio3B>+gR{^Br59fh>pSv01 z_)qzF6BnBLK?7(yGX5VYT3sZC#M!8(8vd&Q#-;oR{XaSP^8O!~{>(2A_mBNwHyPPS z&o{QdpS~vs!0oaC-^*G!J@&SF1|Sm`;FHS)vIFAxt0wDbO6UiN1N`c&y*G~r@Qa5^ zAbV=Rc<#M=9`&HV$Nx^Piob3>o7K3vCtfOEY%;EF8Qa5iHCL!CKJw=G0sPkoSs#Qt z9vPPA{^0*jDR1^i6%eT+u)i~!R8!$Y_5cX+%^Ze*T?LnnHGa$F`@T57{~Lq<&rjvw zD~F4jHHJau{r5bJ`fr=7`Shv3pEHo(r&w(?YW-3HpEue6_lyqsE2BKUbv)3uV*yON zwYT<5=KjlPrL{)m03zb`ih2T4q|Wa;+ud*NzEie<*HQ`8K11?=5D2yW^5TCLynOK; z#{at|-kOvlPn| z-x~aXcIq--JSvQtLpWAev`FBT<@{eu zSb!H#j^L`{u(ANqt5eQJEqop9P|R)uD9J58G7- z#qr%A{$chX%X0I+qtK%b?P`K&|JGLKvikw7}UM$cB|7>)oU|0w!1Fe{X?G&rJ*&R zU*zvL*W&9T*!Ap2x90!hI{e2PdKB;P$WR_z=y639j`rzcEL#wTVrbIwO|AgNk+!=uWRi-XKFaUenerS}y8-{njan|B1$N#_J&}x);5h zl)?Y+L@b(s`WP#k9S{SU6hv=O@rD8L|2*B!(24<6c?*%SSsZ`n97b6LDCPMV|BzeO z&!Zs!i2p1_F?_bbGtch@hJKfx<=JZuVi*4R%sU<8exJ%GQkUbiiUP_3vH(7x{0a7N z7c{d_n}+<@VgFS>$Nj4pfP8ULF%liL9EzNR%!>1O$?cvt9PBfb_x~UB^M&#LZyG&7 z_J#6y;`~3jm47cPKVLU}b=0Qy~fgETQS zOQ18>8s3~13s4pS&!`7*@!tf!rtQ=Td_MkNhss#JYkB7o%?>R7^VOj~=I%K~2qE8n z;UC9{XE;9m@9q0vF^7B1AyMt0&kz4>URqr}P}MYre|rPAQ}NYv4j(_)AAN}Zs1o4G z=Q;vEGI_v{O*Ozr#s<9U!2f@KR`!*%5>51!yP^U#D-W9E118tNOcMhkq^$o|sp9|n z|Ez_%d+pN`*XOy@=P+@|53zCpasI`s`oJ)}R>7nB^NtW(U?}SCK7CHi7KJ{iF9Q6O@ z^q+oeR^#>KgX|AxCa8%(R`Y`f3sAqA0Qjet#hAl?yInW!;(Ybrlxz6kY4>q{zr$(# zT_hd@Q2SH0AACajBK3S9?$NBm;@_j-KeoS}hI#ihbL$cR-IlfKcK*M4p!5yeMxDCi zfBstkGvzczt{SSV2Ki4spufFPkM%$GKyJoP<*rL=h$FKvI{)r5R>f{#zdc#MZ{F^| zP89Hgsl^=v|( zo4sI1QvX>8Rv>GUeaU*T2{MBo&lY$@OkijPzr*X8;;^PkJ zr~Nnk@L2n61|t0ToA-A{a3TDns%kr|UOMMq*YAIyzMuaxw)a9_N2m9G;hur#5AVEj zqR-Eb{`{F?0`Ho7fNQ5h;ObGi>upO1uzum9ovTdH6$@a^)-~ibGemz|9Yee7;|sh0 zMjgRU~&%@Etb@|6UFL;|*C0(SI5R zR&LgRpR;NQ)lPKNix0YnI!F1xc0%U+O+MakU^c)GAd7!G2=rI+-#O|G-fQf`&yU(d z`}^i7{}=A+Ilc2+#~HY3_6Pa>sXzVQsR?}hL?9hC-FrTnX&76Dv57*|1I(zhA_-G3&bwGVsy z|G+=RKm{c17yGlDj*t7_XU^$!r`Gq&C*+^_{w?MV{ND7RePJTfk4#OVDxhmd-M(tp zxIQ*La6CKp3PPZMXKFWB8-noLDqU~@l`pFS9_>Y$Ky^SN7moR52#3h6_c`J;ZqL7G z1!C~U0x|hBhv)O>5X~yY3jALbkpAy+Zd=^|gAmD7-?Yfj3atKT0;Ipy)Je#NtP&!#_~5atuR3A>7PIni9X|XA^C`YK7U09fO-%-| zN8sh-@nj6>fU4PH8piFO(_XqNd+ei;&d+z&KVJu3ldjl{%^{QrsB$O#^5F0d|M1%N z{B%6tE#0$BJ{2G<(DkgtvVz!u7A4EDwjdkfId&h%TwKI2BAKE9pJ4TW`~GGDbl}tj zuw8&V1!<@L?L@9B|FVIOMDQ zTd=+J!aok}XZOsY36}3l@sZ2fddhcxl@?Gh z5RDEBq52rBA8~!rU^NEdZ~T4Pg1?ZQf)}QtT;%}oe&%pr5yP^H7)1AUWF7xy{`md9 zVE>qm%tkfN_Zi+p1AzZ#a$o_?JP{W(6M#nOwrYPdCH6zabS|H8V!Nj^Z~>lyCr+#? z&b70}PWZ-d#k8V;^n9~3nzC`!(__`5f&8oAqJ}I+6S?={ERh0rnAa@3P&2j)fIa2}Ld5U!K3;(C@O9O6P;KK@H>>U0SpX~mJ&^yWlFIv~kzV-U z^yw3v&cOfg4AkKw7B(Z`?t}35*Mqy1HM?lE>+Z6FST*)9Yk&pR4Ft1!?|d~ZWAD%$ z>kt3@H{|Y&kFXxbk6get$Mc*$UiW%_`T!eo(ZTzdv&8??D&b$W9{Q{Pum5-Fp6x`g zY676Y=}Ht*InwEvJaPTg8Muv{f!!_GgunDW=of#h@rC?6Jx^PuQ0%`wx61**@p5*) z9Xdnq`S|Dg`F{5uHG!h~tb*S?qZt5a4##qdW& zI=(s{bwwm^tu1(8GwBFEe^m1uz|QhaX@@vEdv`6GQ&RvpE-x@bbL{O zqe6Sw4gEc?=eoxaThZh8_M(AUg8Q=#-rr9AVgbT?`M>5JQ3YiK@PPUou>q=H6Z~}q z|I<%@y5)2RPG`UwI9B$CXk0*cusy+D&q7n>~N_(uH$p&zn1U?$X(dX3v|w zF#h9gTrZJgc9&w_f+b59aCz?BC39ylnHLB1=gyxucmCX^^A^orx@hU_dCTTD)#%8z zUYDz1E_az1C60}2W4mjXxMcRcrW#kR+H-idlyu8Do=`2{ZA7)#zN_}yW6uMZ%v-u> z+VHAZ?Xqg^YOhr*kKF5kX;F*e)$lkop;~#sUVH4d@A4Ig?{~mn`z$};(8HG>ve)tz z!{ctdE+1aapF3~q+=cTO4v%{rxX(Z}cj1Bsi|j(%D2$27ESzv#)etL4WW zbKH}ke9~#B&Kq7G6}{9{yBs*YI=x!4a%{E7ZqxSJEyQE_ifOA3U3K7Y`>YyXjUK&f z&o+=-C6O?RnhM$42=(#PNt~(X>6M?R(m((^j2!{8_`Rm&UnK)ryl& zIPt7iryqCRvC|$)`J?9^wAaGHRI!SSbpkhr#|D9)1LC=(b1zTR<>M;RCD{i zHE-F%1qj~gYNvkNcAqx7s-i~m5iME1s;%ZOS$OEAYU94d^u=M?J}Y zvqLQ7Z&LKlu914){JGO6RTsqm+95BiFUFad_RlQ%^tNSg`)9<)QJEmXWf-G=SHM)Oh*}@R3-Ae>@M4){NOJY9HsLKKr}Bfc*nvzo`~4j`odNwdbgc;XY`eX}j;W z;=tVwi0h}v^?_>fg2nxuFYVtkFuJ<@(PNQ?RV#NtFxs&HE^&uFcV88`dKd4$>u}g3 z{=T>4q-tQ$@ekv8*r4NuJ58%b{#W=3fd4oA5j?PT!L({ry~S~EevIv;YU_FP`oeJdA9t3{Ub1LzTwfB`7l$nO zJ7wj34# zI9k3R%B*XnSP!z{F}|=-2VFtry$4*q_kf zTQAN`s3uh#tllQAzCI?nVnqC}8ylK{&#{p<%b8fMA34^KoWZg~(lXQoLp|^i>H&}r zLc!>y{vMw)0O*GU!2S5xANMC|VTiGzsYdj-bwm5h0Au1jtRag`T8)2>JSU@2Ug))l zP+ttyWvB-p`8|-@Jn<>|(ax{{*k>QKf`2eij>JEy{GZsrJ~l8vqFSeK0gUWh0b>Kz z;2#Tu&GM5`v@771vHjBF5AMPp#t*T<5E~Blz=O~Opm4%!WP@aNI-i~g_n=zz!weJS znz+;p&=w#)_CFjz3eZ0)(9bq1(2o}YuC*9Iv^E7Lb0jOE_bGc!ANziC7q42k2}4}) zAjrWZU%L&pum9Cwf_#;vyg*A5Oq`x60xT}aDDUGyrr3tM^> zathWz{3K^+0q}_jqQ@YEkds#Z|64wEb*Kj(y*-c?KFAcEARUBhk&7g-4VJ-nBAP4Y z?qUES*sJ1{&rA*e;TQ6(7lI~R6aA#gXad^bm;v_|`OFlE{?29~ouz97 za3qU#T=M80<)M}j^}w1v0G2@y2u=)(A5oqN1AS=WjQ^>pLAChjx=2ghkrt%tt&3{( z@Z`P);8pNHGVm`0j12sXWa@&(wrn|P@VzM&+XMzkKFXZbo=rQXtCiM?Tm=^lc?N4r z!qCy9sRxLyfe}6G#D8L>v*Bfd)b=9Lb3_Hef7<3CO>`xbpsy4EY1L1vrUw2=H$Koy z)Ne$!)@lY=H!ux~Et5#0wn*ZiJY7UV{~!EQTceG#QEGbGNvvBZVhN7_N2&k0e|r9CeQgVQjCvV4umw5CD5oXXwNI=C_4cZ~!db6B+T>!W zy^r)BNEDz?)&HPHoJ|V32TPy;9ow;l*c1Dp1H|$Tmcg5PUL7mqvDn2`qQApGI3+E2 zH68kUoj^X%@(hpf5fS~j97*E-o!_T8heU<#SwkuN1fEqo;QfWEVORLK@qNVR%gi3c%q0l4QXwmBOp04=5# z|KdwLvQK&$K-?Np?DQ{JwamE(Ww-)}IY6xWQGNUm>+AoKfoG%sSO}IRX2m^oh~l3J z0C?x0+Nu5JC+DY2xY#8#3JK zKd z5;N4YM@A25v!XrGub>E|i3`1M&ZWi%0b29m!L;C?6yS&)mI!Xd7T6GPVu&O_qA z<&*r0Pw=lswPfsn@UI83PFVHpt-hyq5Z~lL!!wUaNv=o2*Qc~(BYY8YYi($^>x{&F z+CK7wIcb4c`Sfmb0jVg@T=s=^9$GW-$Uw>?trf~GpU86J9~`9)>?~p1h7IBLgkgVHy$TaZOLq{&jjjYr1XK!W$yR$x_+ z8)a~()Su{Y??|cEPgIZWqaXi&R3LnO?@x zcc<>Dx!somtcU5XEm!Ry881BuTW@+TqwJf9ufz=1{E^WE;!n&eze=kTk2L$NO-d}N zBn5a>ck5e=P4JR_gGi89*3_GvQ-gv)?oH{UCHX=tKpo6EeSa{-QRbQuSRN6`ABb)3 z)ldEqyKsG=)`p1dJP7Ro?(aq_Z2_^I?MM65_T)h8=~Z%O9kQJ=1xN6MEt0*mg`A@W zX(doPXC4`nG}MZRTMr>#UTKMX|%A8y!rc-J>&Ff~($fA>T? zSWN9l4z8)?(BFE@Dcd5*^lD94>4F+_iXT!W#y~{kc+Kd63?TZ&KQV)h{&f~R_#YYQ zZ-WCy_ODY9kPGU;H+M7khtv{BT9TOyC7Op78B z2@+`ySQqai)Y7m6NRjuK)9fv+glv&`)^5m>@*aN6m0aUEdyhSi9}Y4!RL6&B4V&)IK-`vbS&|*p{E_+1tZQJ`rIB2FuJe* zOT++u?q3F=4BO(`0c?Mw|Jo4x9PDSiGZ$@>ak_eEUxh|#J0nmipiACj&PtJR!JhHFECeB5m_CNA28bqvT$>TBi z$S6MeR{wie{DU`Te9anJ3sQ1k^zumwQzDwzF@X5bXZXg1)?cR||642Ufz%ypV;G`?$bJQ;dSIpq}GS^vz^pZE5ts_8k2@I@}DiSJbFIag4~p2`?;@d zu`txWveZ?=*afKwTjHjpZDo%Vt~A@5NS?nGKR&|Z@l>=P}KnM_SQlN~5yRwJa~?H@}r~^&ja(p`4NVlzl7- zHqwGM^<;7m-)zj|ga3_U(*^+l&ftN6-u%s*zj*e4L~sGCdibZ@VJos!cec^qu&=VE$rGYq?qn9vT#0(V&5`=QyMz5iJ-i=dz+R^J4jyOSyEwx` zN3w=$@=))A)G&#Er3^_#))Ki&Uvh%T9&F31Lo>AX-n0O+)tQI-(~2yUUga9SI=B>>(uhOGPswACc-8SSPGTC%7>Wlx z)N%Jvs2`G)Qm(Xuek4dK78{@t+4@uI1P5!*+NEq#Ci))?rW7l+T^Zg<6mU&k6T=e+ zO1im8yFp*S8*d{`+6tb59pHxztLgE3wj0H_5dbWI(C_bl@ZLY({Lj0;(DbfLrYu{J zr!I=PqZqbspwrfIU*n9h(BN8=B6}c9kqK=@)_6_)b1m%x@>60r0`ihRgk0muXiM3r zj*oXt*75p7LB@va@X+jmPD6=SBu%M7hLu<)PV}c9RQ~)_qH|x#&2r2Oj>JS)Y9d=M zNYtnUwW+~Dhd9dDIuLh!vLy=9om&4>1NqbX3;_PI|9R$*w|@KPFMj!leSZ1N7y!0; z>RsEJ*1G&8^SH7&k*Ou3#^#*$p}y+yjxXJ#FYP_;mgE7B=q+lXH<9cp4`h!yQi*;` z6X*6VB_z)zYo*OG6cc=CqVFGDE2K`HqBJ2v$ec&ujXiNUcy%n&j#Q>BBKyj`cm+u* zi=44UO6ELU-l@Ao$~t9=3`%s*d*u~S$Yz{heJ|<~{doW2e|n_h?)i&(l&JWhf)uKH*krJDji6S7}XNsNIimNB88+B zAslyz1q(`bYD05UF4rstX}0{tb25SQPRcAbv7yEV!`xBr@5~-(%vj%s{hZ*@$Uo?x zR&5;rAd-6X%pbq^={rBy?#}}F_8;E=)kQTZ73^B0$&nWfQD6NI@eQJ=t*mEVy}Nb` zc%~1NBMmxs(_3m^8@)$t>VM(U5l}7wJf&<%$e< zXSoKB#D{y{Kk*L=O$B1`@;%1xPtCtcwMpoItb@rR|IGXG&aZsy2fhHafOrC4cHg|rlmyD z?;SWw&f(63ud(*Xk+W9+D483&??a;pM7$EE9HE&~Vvs$hNxh}yAm_?aG6U&SDifWg zQhJe6rH(X8rX>&7oLw30r5BONh5@vP6J^|oGo1y%o^yR75RH%JziBnInh^|u9WXW8 zhW=;P59^=UKbxxnhytMhByp$~fA1bpt04i% zMoOoWk@jMKryQr;iej#cTjdaxq*cnEWh#?O9%n>B>Lqo1GKDyE7D4^1Zp~P}N5=ZW zOm3njZGKq6i2p``{~6V+*kpi>qJ}x|&pW@?>0AH){tv4F@c^hH+Fx!FW8Bw0V-1Oa z`UUigdvj1HYJz1#d&F(F8l2Kv@$9|m14|-3d-7e!38Z6lJnThFfD>{AE!i#kT%;s(%66Qb=*OJ$h4{d?Nw6ei0NB->{Uw15riLPj(qZnGyXfmeEy?la_Ihl zuO4vhl@nLAi&o?ZZQ^PdWlPi|&&n{zTp7HjOs6CxO}?Q5DO75eKPBG#$Os?`O>fGS zX-X7Bd~&_hsNjr$@QIDgH4({KEdC86-iODJ4X|n8f2(SCY;&u5)q?n+9miY5ws~;E zW|4AAwAbGNU8_I;@7v3#L|)2WOloy7Y$3FJ?Y@0o%0Mb(bg?$y54W2?ifqpD-7V`Dp}Ix@D$Rx7HV zf*CfB+Ts`R6yU@@is2OQOP#PML^HMq3?nyKZ)(6*>r0(EPp$Od!7RNc10>$_tSu&W zG6#K=eQBR$U$5Eg_90`Ec9muFNw3Qb-F+MvEI-GQ5t31;8>w06_>Ys!p*uhLJ)nK> ziq>4!!pNsyO8jF5tGCo5$a6;hxS}Mg#C1dAE~aX z-X7jdYpmS9>R+o}0Mx-5i6B97%X`w5hF zdYIOMU3)`aZtIL|$b!iWrqv2dUiF%#rWVh8fNFYvFvjHvY9J?YO@`*~*3D<1;F1Sl z3Wx6SkLUq$%h-ee!P)^?P%j~uUKhQ{Z+BJp;7Ur3lBfi+pOVdW?#FQ_wUn0l=Sqir z(9W?N*in0u0&IxJJjYd#s2!eM09v*GH|a9~_}{FWU+q(!QC(79TYaaxyK3w4^~`!f zy=}d$o?mZKPpI#&zFmE|y0ki{Ixy^n4WowZ_e+OeKr+mO9l^cf9N2}`1X+J;2L8Kw z0rqLp;9g=MtakmJT0PsCc7u#y-^h#hue~o5bR!@?)7PY8tmtFY>KEASoE7taYoA#T z=Xovysi0Ovv4DRBJ|EnBGOjt=YW$QO<;K-0;Gc*95dhMoi^!R4Rn#g-8|RQSQz&&v ztD2p&Y~Y!cmX@rLS4^*@%K)U{SnW@4_Q86`0OSJyp7C2Q@I2a|jky2(u=<}_y|=of z+N54tpHe@+eqH^6`g8S7^;hZ}>TB!E>*v;o)${7L>hDxFHwhX*5BtUxCMh+ z|IGT&tM(4`|3@{deq8;A`akRY>&eZs=7{E;<^|0K@%e;imu717i~8T|m(&N>>(tkU zm#|~xlW|1w3m z{aX8Ci%+hl?GG;`18^Q29sF+`DBYskCGh;wYI=QseM`M%b3*g#=3~vR&H80YSrOaf zGP&H{Z^Ml}k+4UzQ$99n$&q6Ft>6hYT4NlG)*^hzTd## zHp1#-tODWDX zUL^&ksCUSdd!z@moFPSr8Sjc6p!c7+=LnqOiMwYsUh6zCJS zHK#NmYJStqEQgkh%C+V8Qnz*cv+|kpnsP#!Q-0N4+nmv?-&_%~foo%iU_oEQgFb54 z#Ti*muxb2f)X|#AOfmpx#CFGgsoQC}*n}BuZ?+Rlh`iby*cBXG2ECVi2R2|D)jiPH1;l-Hqq{VjVyO`m+OoTLOH3mFd<|3-w= z7s>)>lu%NL+s*?}`jkwrf^(%<93x+z?aJVuiGTLMmuw+NP+I2U4CSF!)v+A0Z$v(M z0DN}*uu))lz{hlD%;Bu#~g7s*^Jgu`?LxY zdGrgZEkl0HlDZ>%jS?)A@ypTcP@bcjV+eBXLGGTTLq6>QG=XC;`tz3!;DBV3L_eMY z+uu?qhsyf<^nkLWo)^vTcQPdZ8|g!y7DS_~;u zUO7LwT=OcYT(K1IWDQb3f)N=23{g60Vjo6uE?)E}8xX5w?avm~6RPX0zm2t zjB;i9Z25Va*&Y?h|9(5FH>EeS_r3NF?ICU3ex>|Nd3xC-7+_rUVfnu z($>JT=$<4J!D62}CZ1^#*Yex?W*nvK5o%06TAa+8M_NWONpgvp71{JT<@ilMifKlW zbf%IcOlj{MyD=?S)AmP0Xak6R%J5BTu!HYE{`*Mn&|UsEJs{$h5Jnn{z2kzEL6A<& zhbwY_;vbd}m7N8ERDpG*MHUg^=GL=N2ZB_u<(-sq%4FlH+fz18Nq(=ThD^N*=HUYU zeJui_^yqrm`umGF zA5!Ce@C?B{Z$4)u=if#$he~;{dq4|4bu{CyUSQPIdKZHrO`QOS8F{6}Bc(+BBPLUd z;0)!@JRNtW9wTMSqY}*-{?$!Lc1k9D$}_pS(jAG8WEC)@PDZDKL-0?u4hC@5pWgrG z)n3*6s*~y+n%_0AD8DT`wfnX^x7)V+v=_EtX{Yv%=$#S&vjYE5Z#Qm#U+ymtl&_a_ z%1@hl&6Da+MdV;n%pPLvXT%>4K>K40B>q8ghhsS|(eIJAI}AZBf6mj#UF?>T;VSrN1KnQr3Nq2XCz%v^{lS*qq4NK) zJ)kx>iX%oD>68}6ofI4+hf0N3BMhLVC>^o^=@PBv=pukhG^x}*N}hHw@+XVnzaq&Z zKxtOSyHe!}nFa(X&!iDrF|DsThoDo2t^d<67?0?IM;{BxhX#Mu)xN>iKe0yno zNqa)OtXS?hOVCz^t zG$SmD&Enq~1!I5WpPI=*`Xsi79+K}kW{*B*FYO`5gtN(%BHlK#&t7s0_b{!wDJ#+6 zjp1PQGg^uEj`hh!AA@Vo`ad}Khm3H|jdbdLG(RknQNf{=LH}2LKDhZEKSsEl!*RUj zg47D?ZDb{{`kj(OIVrJP;#}z%0}0C9S+aRM9j-))f1~0^r}ECHvaPggD|pUw_!Rq~ zNLyLIUkiXwt$#i_;`u(-{DJ@3f#416b(^|;sO;Td-QM1Qu|1=m*jDW};q#Z??!5zh zi+ewBUl6FjtMtM)IH!GDcmgjkH#E1^6YCdMd&d017GVSMoDh}(>xpK@H*troP5L67 z5vR#)*-CrNHYNvm`~be~g*COmjN&y?i*QFk{L^1B0C)8aSG#l>lj&HPtD@h$U>wcg zX@AFy^IS=*KT~D8AqIGG5&YMeF01p&24nM`jF8%#bI1vw$c!n>Ltb?;xk%xsdYIJ8 z7~G&_lP`He`R=ry`i9l?SnE?FkGe0V9&}S))}pgCvJ6n+y)%jqGO+ux_p$z`$DZ;2 zjr;f%qnn2J|DtOD`k-c?@`v)ucA&SQ_lwZ~x5nJxedXl#>+Pi8#=X*ef4jWJ^B>z@ z(B9mBwS8v$jk0c;)GVwosaA#uFgwuCv%|bSU`E&h*aKP~#`F^Z)QVQAyQy`y(Fh*r z)2o5iz&yRiS^u+-lI!p=wEsz&J)7m^7;8ynAFhdY$CnWV_4IObzv++#L{M7d6i>%i8~JSM-kU{kGk`eRs_CeYk8JGXS@=x3!;X&uZ^3FD)-CW7?0l zb9!6%KGv?+?p(HS_O9O;PXjEC=K^Pk7qHdpCxx*CX0FD+_@oBTOo~=&>pvDj;#{QL zR(dDCe#HV4hEb?Y;)M^}4W|pD!i!0cGJvOcH!Tvu{I#%V*>T781 z_06lDt9MnesIO|?U5*Lue@^e|y`Qwh+vCf!@=s;$_U!gw!Y8;meEv6H9BEO=q~xUx*hNe;mi9E9ZqI{VMwBDcvn69Ywu%45KF4g@0?LSE z59&pFqM!4!1LsNm*GcM7uD^8;B;M86ju#l!mJ{oaymFE#7X3(wh*oacS1ObtBnLke zeWvUo2Z?`jTdL?4#iS$`W%)EM`qFeALudhzLv~5#Pz!R-)%D^&Q9(WM0W#tb@@K^V zW`Tb&x>X;qdsH8&F0Vh=Twk8oZrQu2cTDe!_Wfm4xwm+b@XvL5gilk*8}^gDN?G(!@@Q&$M#FyPil~JqT36d`R$Bba9Nk-zR*hhb%%PuYaB^WA-%<4Vds-+7!;uT0AX;2cd0T0}j_5kG17 zJ3EJW&O81<|Li_q_pClx{Y(9|<~!x`cK6-|z0G?&g=PQVSOvU8xuvXV&x~!a_Df}I zd0q3~=B#pdyKC?Hy={B{92UV-o1?=1KOlUFZDJ+x{5}Kd384Ss8|MKN@uF3`M8;Z^ z0qBYB5wyQpr={5!iT7+bt+mbe6}jE$F-Dem6m|HgXT_&?%G5HwJkN+aa(pNH)e>M` z-j@@)m>+S#)c4+ZuvAh0|5jdy(*G@cAZK+G>G<4ow)povV+#^fIz%~g>G?dC6ObNl z0_9V^jl5ySrWB=2r>t?^D1Tm&PdE~{9qv0>hF3VBxOa~uMlF5np-v_9|k z^%Jij{Dc0v@xNz0)BnEu+s%Dp*&o$=O7Cm!7t5ELLz)YlEn}X4r}psnuy$@(1ot`Hovw8>h-qT)Hp3xjuzc!v5-l19+9>Dzmh959H`~V_=SQ|tg(h9&D0n^lt zJ^z!r^k@>RvR9|=?cqFYA5soyx<2WclRd|bwAuF^{wdG1a=DnzePjU4ihi|t`uA(% zUoGP5pkxQ`%jmNWF6nP6&qHPXZ+d{y96Ty%0c5;}vDL;?W<;j8dFp4z-BLW0m?sDO zNLl7n`j9E~Kh^c$eR-z~}7H)@ba#tB+S#*LOA(+h4V(_4e&OwLPF5*^Fq8Z)TL6%7S*!i2SeD zURu80Jf_*L`AKtE`C5BSL$4?t8CT3A2xsyN9G;T z_0$iJqqf%9ecl;FU+B{t(U2c(kNr#QWj6akE}_g0%k-~(mt#fR#6KgDqXL^clAQ7E zVEn7`(F^+X+5+rz#`9_a%MIug%IPFcnbD3w!u~fhJCycs)dTQ1VhH(kTT_0HMj# z9o`+)JXZUQa`giHDIaMGU>&&bNByBJDQTUQrRQLD;BO_!viBCJg+=KO6B0?^p1j`2- z@`d^j47h2t2rT3=x>~d)H*7}|G z!Oenr25`f6%XZUP_w$tUuT8J{LOr_~Qzo^)j7Y&R+Xu>J5&yfm+BIzdMSc8Z187xj z9h^gyk$FHj>;P*jPq`w2Gt+|sKruZarfG3%|7<;N$+<+olmAFzf5^P{RQ5IOpnX8^ z$;lb}lgAlVctIA<6luZ37U&OkJ86{_lrhpGQ{+&?C_#Uj~BUt)@Q7L%fP>H^xi5o^t{mi z%d7KZ_207Q{PMPTS#NZ2N&DO8j{4a8lKO~d`|^#leysVQ(%x21E$?XVs$WxoBi0GO zzq~uRVt8-s_NL}V^*h4;Ul8bD6s3v(c~LU>cY_141@r{0Rks=uOglr7Zx99dYJb{g zf6#lhg)3aoNGGhPbzuJ{hj7kOVT4GfZ^k*s8l-zYzx5Ru4R}K-A*J$w#DHI=D5C<% zj@lpeD^-bijyyvNGDat1LvIWDza#rEDFLi8p7cMMm3ph3u)yDq}xrIwH%~=u%xHGo7OT{(fwc~ zpSy9*FZf66Zyo-=9DoI2?0-Rc?JMIwzem?EX>Kmx4g7zp{Y<&Ad0D*i^OE{0u_Ew0 zWqdm|)&l<|@c+){r}gReE9(84qrz6$C{_iY(r#Y9R^L<|(VzVT{|ovNMI(TTe^&+T z1@NRW*vA&&lP83+{`sW6=xXBv*$Z$0=ZRxFlbCFg9zynIX@_Vl@w$n@jn>NYL7&^+F!;=ttXJM});zOXE6CfCo7 zHAF`L=R~>udIe{`WkisZSvPazt;+>RcsnjybY}OeD6o-bJ%mMsKib6(~QXSJpad zvm~AoAZ3Hinm9?JVa^#DE0XfUcd7YDXE>jr*}02l-4yaZ$-F;5=3z;m4x$q^|- zd?Ry-f21bcdpc<0xOa!Me2ptrmoSH4ltsu$NkuWxBCi6;Oi_3{6+ z^8E6-=I8aE^)?Y1{Bbj-9oBnX@80&#hya{czdwE(WN|<0hm8TZunq{WVJ#p$;7Via z!N#lrJU~6Q1i-s(POBhM4zd&fumtCmD_lX4b_0E}CjRYda*KUOQPhif7?x2L`Si8c zzbF;ogLMY`pg-RM$iApf{n7D;T3(%#&j`sMNT1UAKgsaW^}n_UvWNM_Zlr>dV??y) z>3xnFdptWwQTBF>Ov`oBSw>ov86oQM&y`MwkVK?Te98-aa*nzvmq??GqQ#2zlBdHz z3}AYGRZE|jZ{uKaf^0wpO{==Y71&Dj!vQ>-1OC~z3iQtp{BIj8cdw`psgG?gEw5^a zhxLDV`AGBXdfj?eJ-6Ake6$R-lf(WWALn0Le%Lh4F7^8LTVk#7J>{PE#NLcpDb$uP z)OW>OfOZPo-`@+v(h&cy1s4CDvpsqB@|S1olnk)XHuKiPh?rn0MlB+B3?UI`&TO;#H6;I-rpmo zv+U^9w6oFv=zeW)7=R~q^!-8q;#jqFeD$Bz+w1F^AD8#EceF2SFE3Au6@6>fFR0IL zjx9eb>&1J3rnl?ITR+}asxqW^n z!N1P}VF7@Ce?5?R0O%M0&I_isLR^5>b!-5iq31z3S711GKcC{i^99lmf&tcK1N*$g zf3h%AkRzAhj7mm}8FSG~N)W9?smZkf2FLzEvod8`Ed^ys{erxt>={k){Lq?!{~pPI z%@xN^q|0Or&$1`X;*F%RlfD~cs_ecIUQeXMJb&*jO2GWx1|B zq_=j0+aDWzvGXUUU``DbJ+EB{$Rma=ILxpNu5q2sXtkW1O6zmCrS>kG<%-{^SMD zcM^oxi5+0fK&*2v(NE0D68PjUe~p|E<@v9AK=!4#LAn+IJN=Q1i$D(Hn)ZE%f3e~- zHsXYJer(#<=vTRbH}Z&okcnkJr$1k}Yjr~P$?EL-!shbwtoEk%+ID6;zI?x)6w$x7 z85M8*9vO3gv*PU3c<;|=%I0O8W<`BVwOzfmd0}~HyE2{>D&YalEWKuYeSZ9c0PB8; z{bT>b06Y)mdINt~JoSIt06rg(aR82BEOf9M{C=Rt}8 zuD9)V^#C#fvofmMVDhq-IV`VK$o7e0WJIgq&z$|sSRk^Kw!bMkh8tuQJqdXsqX=I4 zuVi`X-2b)*62)Mjz6RH9qBR*nR)D$r_pBqsXu;e3rl(#4k^n}L2hQ+`q{t}A3P=!= zl2JJ%OT?@1J4DL`%G#Q-LbaLJuDVUVMh>p2_tkh{fw+E$72mnj;h$@134pN81CgxE z5uNkniJc?E_n#Nqf5Wiy-xqK6ctyCx0ucYq0f2tEK>MGlL(T^}3#k_X z;%P%#0qMOkhavj8lK2G?ix$++ zcWxg&2qtpo9PJL?Igj0(XvgE%;>OzEypOM$fj?q?#OT22vg&a$??1V|vHnnVO?gWD z+4h>S{x2^VG*78ZeRln#=Dc_t&_?YR?dpPzEi~?* zs|9E+=VSt-gfM2emvaK(AN@~{Ga_<2Qi1pHm?0C6DI?7IYxS!$;DL+}G5%clZNFLo zU|b)7EAoWcR_h~UsfS3XeC1~+lhoujzTxFji|u zZXBC@Yd@({Q;2x91=3{nUTzWT+Lx)}l{qmF7vy>OIv>B&RcQ6;A;riyc*v+2m`DG^ z3Hh1t@DV+v$Hq?oIwS2^+}Z@QSEC;rVB6}j>J9O0KOe3yh6uot$thGT#qYr+xy!m#&f{i^IdeLOjw%w; zAs%VbDir_76(w@SKbqV#YIV_{`XA{V%mC_rKK1#LSEAo)eI#Gxf_ql*aUS0|pXBox z{oh@4rX93pyv=>>0p|Nzox32S{)bm@3iN-Zerl}n{dIY1yyNc+@kYp4rokiX%hM%dxV(V`5}S{Il=)b_`$yz|rSZNwEYaM_tZ& z^#~RLnqDq&Uk%UaV9hTtaHjKG3Wvl(S zSX~Ah6ziX7{T5ZrW5wU))duyy#rocvf$}5T&$Yh@{eN=%<#^-I59&?oUE&#^UCYnn z$)8#6oWB0wFjfHkq&%*i*_=>cUwyrLZT-RKzAXOcgMR6QCH^-;Wqb^&#(iuj`S5WMgT(^B?SK&{exS< ze~t<0Prk-elM^^I*!oYt*IHz()B4w9Oz&Tf@0-6<`*-m?B+B$iq*@=zQ_`>;WDKwA zQ@{$w3;q&$A4)U02gEZyZhzC0X`jixq8R>{aR=LZj0$7KsK^(xM|y$qgs4vm^1ZZ! z$BtO-Vc@S+jqCWkCneSwnw+u#0tM_>S^_9_36#i zV(xF#!2jHKe!EpWJ)Qu#wLHE&r8zl%@8k2;Iq|%}CFS&XWbc&T$-N1^H-@Khd0D3% z6E?tv`mNP*!7@DmBmTAfMLV&FTq9tt(0C;EbbSDIh5LMZkP`G2v;)AobDCH_#zXLz zv;g$~yEp)`R7OeNFIUUIdURR@`u@%dsuM`bo{X=2C^twJICl<7IZ3@C{+-Vg{UTnO zqD0xlxBzF7J2jX4O5ui z9r}=3kVs7GbR|g-z-TkqT$h(RUjGyxNSnYbo;QxgQ~Gm4KkpFpXnVwOYCR@CcZv1+ zOG9t_JiTjYM7b;LL=4&434t;_pkcK@G3 z_b=>i8SngA)xNS^8Z-IR>o?Z#ZQdBa@-Zts|M~5Lhyl!q2;fgc|34+x`hKeVM0G-a zYV-8+*tU)tfS1M_L%!7>*WO=VSk@{}Xg*L+uHPH$iug^C&hIB4$i~V5*9e1tHarqq zXry3p+qLQP* zwRV;fJ<@=FSzW7)QDD!sT-AQ?toEVulJkI_{3t=lmzJl#C$^_CXm|pg%LsX-#m{-; zdc@}!1!ne+2-*?xdpt*lkA6tCf3U!={demvS#1f3a?qqzowI6bX^SF|1Lk?Z2WxWY z1dHrhom9O!Vs~fOz2;5LHsu2`yMI)?*LzX#wBFvmugC9w9Um6_DfJfhSL<7w>%#jd z_P?-Q6!@PR5x}2>|NrFX%)tLgs#WoBfXBtV!EbBN?)_Wu<*^R<4Z#%ODlaNyf+Mc4 z=hq*uP7WJ@dy9NDI>@)yXn5W|#->-YD85BGc8awoEp>M$k++IqJ2tkJ8KW#K)gYp8S$5=Wu0Or*pXa=>vtAL#kP6R7KU|#gA+2sHm9Km(bkIbd4$^n#Y4TkXjm-K+WtJP+|(f^{FPuX1jb6$@Qgwx-H`C5x0b8C;~ z=#r~LJY^zF=o;h(e$eJu`*d0z1|Xkop#Ik{?IdV zy4kB-UE274zc>mAbjR6DAjT{eri`Rq`SXr`8Lmg!;l&uz?&{~sR6`GC~* zju2zRsL2Q!m0fc#N9~~Y&*#IHByj7BJyDzZ*A@WNTAiIWuSQ8NpE}>`vQ09C_U2%T z{Y&Kk(Vb>6X4U@mu&7n1bCylrZtueJju?IJhz(|9*&{gv4hP|2UU^|Z`9S=8KJne* zUt0kEpVvUY_P)_R;{5YN@2`j%xf28VPp{4n+?*NO^O&#z4hT-zJ@n|d{pah&g!oD8 z85AVG-~?@IXW+#DvMBqB)n(P4)e-d%BI5st=FIZ(Qnx$CdY`uU?B1t)SH+XOuWr9u z?uh66wyh7ZV-B$VqRi@R|D~b-!T-ee=CXS^p*cPD|25UF@xG9)V&>p=?Jm8q_SPS` zJ$@nhqroTZwLdHGEZdg1Huu+$uYX*-W{@dbqg0qY9k+T z0PhpfLy!T)KJOXuT?5z`oAq%|T!46B_C5GdK7f@6^Kdc(qlQ(-r+S}HWQC2<#@ka4 zQid`zr2a^+fFrT3{Fw?#o3vr`D$xM*p!-ALlq| zfr(wlE=M4-+*xDbKl3|2GKW$if3r_1>UnI&v>KHgRs5?E~!vy}Nt&_uka&_4aFD z9P9Z1tzHyQ{yZmq`zF@?%?;hZtX+2Y%CA(YvyJOw1GfDr}3r{71w2(Iv zEL)9#un*p84R$}9R)FWtGdK9t8BkY2(0|VX*}L?hEKASj zk+?O|V(%LpkS98ZC9h-VNcp6ue2^m~A8MJ zc|-?x36%T0JNnev{7Zr}cB@u}$N$23xBqXegX&M#yEb2Fb}v_!AD3bAKEEfl-)x`T z8#%E3z^~)Cz26qAN||JFMuuyuGlKx0P?xAby?XQSKm;5 zy4o+E4jxrLR+hJ)Z=c>Y3Gr z)yrd@&fDYHx&EbkN6gv3p}Mqsb@j4HiJfp>FvhFm+-oBLlS0ShDeM|J+cTnuM^$H4 zFRtEG-Bhhp?-xG*sOGuNFPg*4zXbZL!18V}>$h)c{zC?~8F*Lk&UV-K&E=QPhRsR! z?)8uAyP9ju)Ij}`K>s#j1I!LvV4e2bnBm_po(=wbb#wLjdQMYEY17-6$1eum-+Rx% z9Rn8)e7tvm{7%rU`0cP;%Nxsr@~&p{=3nc*>z~E%3mzX_##~0~b98;q|Dp9k`_kaE z6~TN*#IuCQMvfDLzfOw1!@?5UIa2seK~@Mbx2dfI^Kph15&4{uwwLn(pk6CXJB*P5 z-Qb_OLB~rk!0}A{tMAbSNWox@k&@y}U@|~Tj@~CSlN^AQax}IY-G5u?pGOVUQ;B~h z5~lHUXg2WA@!v7B7Qa26XOkNo8OK5VJ1V3mP4+VB922h7^U3VS3lsI)`f^Fm10pSH zId-z7o(JcNf9C?og=dLO&Il~*6<+?cLPuW|`v06j{~2Kkyrz18%+cLbO$uN9(E6&;06$&V91_ zc2(7z)dxo2>+6ZlQ<^Wwn|z-aUjNSm{R5%RU(jyS`(kg;ft3T_iP-&d@eJ?I<;~6a zf-4TH$29Ag8w1&M`qux_{`}vpwzOB42b#^AgX8(X+o}`mt(rTVS40%yh4(k7Q&uI(*5wWNPhn z&o~-Uyq-bN9qQvjE7Ga>KqG5hv#Yx(I-C0jYatgcZD7 z$nzPYz0VI#{(|@o?$=izt?sU7*H5aisJ|Du-LpBfxwv^-^Zw=|v3;<4PxFrE?aiB; zS2WLSo*LVE%|-Dx{&SiGnrY21>(ABii<$e^#&&sqO?^{5qqA|dZ}ZR1S7Vjm>E+$w zt=}C_^fWP(cVc^Q`+?r_fx`ycfyee<*4|Q{P;P4;*Ss%c|3}vgnkD7?@z#H0|I6B? z@y-0-1Lcx(Ycsw%DBkr`)laLpY`)t(EBIvl_Lc3l-nV;i9Ow=E#=!i6BjR_$caNt9 z?kb-P2G}lsG4QOWZC(@a6a7WR4K525@`j?1xToRO^5ABkv=)5dp?_W&U$>VA$=`*ThSlqXml1Xtvn1(3$n z_bGL1G0;zH+B_LJ8JB#PZzP8m z1A2pum-v@m%+K$2B0uUB+@pneP*Ek1I=CW_O1N_w-=OGmp7El%N4P`xxZZ&XI>QA{JG`)_`aY#tvohaY%RA!kGvk@!r#DlY&)5H4KOww< zU1NRm4iRTq81ER|F;IPOJZ<#jdP=jZxghHP_4tL+5oJ=DRyHl0Mc$3#cS!GRZf>rO zUYQ^B6IaCi#Q6Hl;R&4_{?1l`cl&r+?6D%+XC!?pi1EDoZABTLF25{t~G9P;hk#VAYkE8RoS z2Fe29*B%qkjFdfdep{BHLJu^R6s z<+aTWed2v}c?DXTB`@)x)7T&~O z&3-Zaw{_V43nK!6{XaWa_ug5~E}w{B1v)(54YZ)XEaHFv-s~9f1gj(Fe`&l6{I=e; z1Ivdk8TP(``+B?eu4xa7rwM;oZViTbcQDn8K=BuwS2s@#Tjep$?%@?|6KG!0?9?3A zJU=+=r_Bas&+_D$o4B(4TlrMf`AgCMuavI_hkT)2SKd=zR-Rb4FTMB;qNg{T2A7;s zPl6W z<74lOQ#E$3{7t>hcdiLeG^<~{L+XDeRGfo;%XMyHaGEvs;G^@1UP>+9ed}YX|4ku- zGjbjNQ@1m+*m@v2xm|`xPU+a$cf=(A$;H08VT8p0V6Cs-G5(|k^6q-ps}qx+8Ih}< zBBFJC*ud|qepW55Us?aAKC1atGrc^iye%aD7lEpE!;9W9-o3X;Xl%9_5m(zhR^)9N z*7#QOy;XeA4m=Z^n-M7|MO1I?V1$8qQ`aBLZ-Y60Rel-Uufyi=#rctu>frY6?Z&;2 z_D&i2`M_@n&K!7N?-lK*!*=*Y@XoU4TVeZ;uMewtirN2PmN|j`h2a4#4m)7WSpR=( z)a^aZ-7%{_tKK*4@rBJ>o3Vk|&y-Q^G3~e8OM7Pxj32ga*qs9>58T{4uy=ENc6blt zqBg%Nca(1hhTmMC70kAG%na;M7DsGgR=iJWNm&`cEAZ0tzIYDlr%~%+!ExiGExdD- z)^FTz|I~Iu@Z9~8;>KW{b7LOzm%$~Ao6pooMRee@h$}1%4$!h9<}cUg3@rH9N=to@ z#@8}P?Jw@r{ztCZkPt@OBV{_&r3b)OvF}+&D7^zq*Sk-~&|ZWC zU=REQ*POrr$Xw1eA%`3p0mSC_Y2D3Zj*Gb8i>n)}&BI$C*Ss*S{T1aEfq`F?;UWFg zL+WS5935}o+jRBDTKvuX8{f0~Yycmyag>tmJoYMnA>j!cs1&S61_Aie2dmbEX z^^PC-$-vZM-yYatV0>?ju>EgqUfMjinHsEdtCvI+;wR0*K;!lC6v6A`U7*_zd}mz@mIkJ(en0HhP)pq#7nFXzN|UX=y7&X!mwKRDM`0PAuAaw7w9 z4Vg>3pLu5(z;*pFK>7yxHm=zb13y0AyhRl45A_S1UTD^<$`3>5PY9fe`I&)+8GZE6 zh}aukuz8>Y+|P_{)4=vdef>B!_Smo!v=Bf~Zg9dDp}`MqUl?!qn%8?p@AioKzj@%c zh}NGwa8>W$VomRo^6`k!?bxi_e6~I=p5NcP{#pII=Cft*{jkDeZ#v3zR{1zYNfE2lytpQ9{xvk;xO@;n5rgus^bQWdP5C zao6+l&IQ>(Ug&1*#J;%qEP1+Kc04jw7asuq;vbn%LX;Y)G5Vf=&@wB&LBIH)74pxSjU(OE zz~jU~(RyJkj}P5BF7_q_u3!P|g&F;PWv%NY2b{3R|fir z53J}tx&1(yTHY7F|DuSu-&CJp&xxmhu8C*+Ul(uw+otdPgU8L|j$baz%E`@#>Xk9` z_`14jj){oex0*I0bSopuFsuD-``zA!1D_kXdf=>qIRn4#-Pn6`@3@FBT;Dz?W(1c; zP1NVSO^{Y#+0TfQ!L^>uoWQsK%$9+A?u)lWEQ>j*QpSOScwdz?=Vz#h_;7}ZBN`k#pI zEPdq4ltv3XIkODQLFV!poRc4WLG@(l!bG z^q83KzbBrbpBhoG9V0S-TRergVW1&(xOhj~gZ52VqaUnb4`9(x>SKRwc*-ODT6CT8 z``3zy;F#coiE(v8Y!ibGrUyoLYEKCC|1#dxd4BJGvC{wRy*qlN2R0tKzxSNpH{!0( zFHOw*AJr@g`@h%RP(P+dsc69#1zgPSUPZP@2&A>z@vIQ_tx)yx4oi0GoB1s)W@?7 zrtJa)*jiW)-$oxM;~e@moKJ56m!n~>d zDN}jva-@x#^8e_w{27hG+S(p+Td(}tHS0uF{LA6_ZrDe8>O(wvY<#dV zEAX*#T*V`RA7BXd{(60XdPHE}ZJ>>x;E7qhVZi|-`<%e%_{g(U`@}&1E$!sq9`St6 zF})LePwibCPy1ZedwTD_Sh;gu*`wUjyu3NO*{50A9N6p@v+WW|AHVJKI z*Kx@EiGPmt_85O;2YDJ7*k8Ag|Frbg%*F=TPdU~4*Y;1@LMqWxNF1ekEcRgquD~;S zEz6TtWCU2`(ZvAhYPEOvn0Qx{YnR#Y^dx=eXyv|)pyt=JL$8zDyreUYIh^x%%+u#j z&);|va+K0!v>(f#h#!)L?q>!n-%_ciIWK1WKU*DLuiJdAIUr`a?ulR4-DtI5*V0Gx z;o~FoSp7us#QjEnj7$m4j1TOf`PUA;#~fgpp6uBLpM!oMrcWL5>!qgeQ<5 zzaAYU4!g_vey1;>d`wua{aNQHT0thbbY?)w(*p&|q)99zTc+iT8cdrtQ+n3il!+vF z63=nU_oHh?pnRzI?q=r2bJ_s*r#;m5Eqz8htp~p4c;b;wLo9C5p$4uAczP{62*Uwk`i+w%) z$$d2F@niRo58aQ|zg8fLzb0n?e;dEi$;J%-1Hl3Vef00zKDB*M``viE&yV9N{ma`6 z+vi7={`&UrcxTTo5f2<_Ul4xtb+LZ%Sz*h6JXQ)F6x#fd@||X{hy^~QSrrk0XUBF} z`0iUqEk0YOmmQi51OLyc*NIh#b7QXld%<9HqgFqR`Mb9U4=iop)mHH=;f?K!V*Y3>k{>?qTa)!4deQr%J{GZ#znd@@lQMh-vthsvbyC&G>9G=L3C!o8BpQ| z#0!iP&JKoYgQbowH#M{3$;0o*dgJ9`aj_>z_8n=M-cd*Y zCk|QVL)1@fi%}ze${G@bOeIpqu}9)x4iMQ|4I*3L6)EpabA#zlnS@OJ0+zKCO-6tfr~i#Gzjp}i{5e_)_;Y}E4) zQJ;I`|MyWVY!eu(#P>R33ykUGepKue!N7M}H_nU;4j9Y;(^vPCJV3la8wpk*KA6!% z<_R_r2D!bwE>;ho7H=V&SYJ^c9ZwptMo_Da@xUU;cwpLedT>)hMvx}GI_3zC2!MVy z5HV)r^Xh9nbz~*u{Nh&$)yDTKvMLL#iDu4WHE1E20!fuS$fY!rTdCx#a*jMdIv7A~ z(igN`M8XL6Jw1{b7XRSgYsuJhMOqJue^-3L)!O++{OSF);nE5~<0~OZ4jh1nKt862 zJRv2i|9OKaE71KVo=xLCYXg?XGrixc&WLrr-wf2;5NmMpbM^T7#IMK7=bJseVdm|L z?1Ol`Wo-Ttff82uVDW?f2V%XWq%vkI5#dxdtW$m$n z_6dQmF@cy}I81{paKTzNfXX zZO?1>4oyD2{YF_7{{Ka>KHw$w@}@4Ag~zc?X!#=p|93VUMs=R)MA!Fx<@_($aZ{+OgSJeB>JUe z0J)J7f}gb)>{WaJPZT7=1<{-h$4M?p2Ok)w$R`|jWfd|+ICF)(uloX8Xo+jK-#d#H$0eR<9I%Qr?~4E;$40} zjv4&ZVpaX?o1Zm%l-HE6g^pgQ{cyQE@c)DQ1QPY`@J<^!G1xu?nND8s9(kQo4yS|loA^N z3xKT`ZNY|t8?X|3v!3t*?1+^xHCm({khTExf}`4-$|><{ zT!2F0p zU0)p<{_^{q$3&Fu4}lqC`PlZ@^ThFTRlm}%u1DKDy9e$;KG+a5+WzRwI-=gc4o117 zkNjH$`9CT@h$r`c*pDnO59FWIo)OWvslgy1YpuA~gkYX2?cKpdGs}kp`$xsvpDUXm zHB-ty@zlVV!lw948CJ$NSJgW`<;3Py@x;!{W3BSyV2e#+ zeeay8=Xc|sf7_QI#IrjeZN|lO2R{nGV0_%I4g6C>Jd=CE4)|?9Mp?y^gue^SKM+U1 ziSLd`hhv+8@wDt1U)VtWYvtkdBWv21e*1Jd(xm?H&@YmaB(5;) zms+1a5Zz%{-7jk(lgf5-gy`o;+4oz!fHN|PdynimAn2u?AQKi&hP21Be`QCtwg@&h zOWwhKuSH<*8RsQ6x&5SsWLWN)Q6Rm0wS2~nunyq?Jb?5qiTkVnu?04ZXH+kWh~K55 zEvxeEz{^0$>PCUa^+TFRgtQY0$08mc63=QlxBz+QUuGE5#{xG0@W2LJS^?-$^ee0U z?+V@jlRoxuiHO{{;_Y5P2wY7FO}}5vyUmTe;bBuY{`J_%b4@ug;(X6;_G=D_&-XT8 z2?qFGL?$kdQf?^Y%0P2oJcBztVu|O3{y#A+hRx$?z9Y-in>W3{}?bpEo z4}|SO>*xvaFALCaA_cM{o>21QI;(qxC?a+M>mK-}a-xLHpUeoBdm!FIv`@LFSwDW8 z^bhgo<6|Ng!0!vO3OnBtU^D>qgMTp2TbyBrv<`E=NZT;wDS!9F^?Kcte@K@R0%TPT zr{3Zk(gymm7Gw#ej&mu^iT;$DR~zSpZWomBP&MqwfaH7$430n`DlIkV0OH-=3lFA z;(eR1Y8J(Na()pj{LqTyLW0|n%=<$x{w6e{J~4Vv+ZXAV36S*U0TH2YBnqHK0KV=I z1pOiq_2ba{-;KGrZwAkNCEmSpOO(HE-!h&Y<>74;ZNtW>+b@>0V%5(}nq6bn-$C&P zfvcPAn*V5SXhsKee;OYAhNX(9{NG()-+aBC&_1tyQrP*k;`!gx;=R6aiRbuV8ov&* zXG98r8tWI{5$pdSTjrGE5lehs^Q73`6YmB5=a}CB&%>jw_XXN-4;uxJqK-EQb9^`I z3k%2tzlq-9tt4wlO>Hr~K$|H6<{He2@EBf^_7FCWQBl~DMx>dpix4@!sDKk|e$83oYBPuoB7s#g#4MJuV5 zH^0+A)rQDi`mFh>y)al-$;-Vxr_3V9l>EqK0ND-v)0aeL86RipvLEbY$A+FkXT#GO ze<5$i0_0I`xx~7hE-TolgRgT>bwL;31K-4s(&ERTWX>PGkJUdtH2=n-XP#Ppzj}K7 ziq_2$@%wz}QKWP2)f)TfeQ*8F@ZFJnEC6MhsMtCo*=&QQo~M0@0(cI~7mI*AcmVf= zZoNHhel`D1F$?#F*uE4vyS=Yfi4)Y3cfHV(lLG&DM0|WkyqRnFW`lT+_Rx5W=bD)9 z|MytUH>dwJ?`^TpuW1&?TZYbW-dXmG)w^d#lz)q0nsdv=&E>H|_=WMiVex*?Nd4Sc zbF;Wi36J5|(b6ko1>P?4Jnws(+41(TJL304#>9PpA1K!|`BpH~=gX(V!?-algdfJ) z+xwOQJXl8yohMBDo_1>g%Y#?}9S^{PJ^>A1vKFG-hDW-I;T79H#Vg? zHQtf*>Ug)<_Aw*S{dTZ(0>*LCAaK5Rq1r(oF(pMLqy2LhK>Q=4YG|&AUztMA5UZjX z>(px;Bg4iEkW}|lB2#CXTRu_R)nev;B*p==l^x#E){cuD3|{RQ)7ocRYn<1f;!`V3 zK1q%scVeAhlo1$z?x8iHEEo^cPV^~$v^;)*`rhYFi7gZHn-b-Dj`#a)AMyXEg%`1P_!|FIUK8=O>9I!m?07@K zWx)r_%LZXd+|%3<&+p$HxIZ;4iY=nduQZ2+eK0IgI4<(t9{$L;gO6^EI$alYg#Qt> zlL2lGmbg1w!0e#-?^XkV_Kb$`&I3FbJPyu|jNYM_=qI*;h$z-^C+w=+Dbq-Th1q2qlI0N=S{ z-zzyQsBY@epWbUHk^hgo^A4Ay%DR46Raf;jM-)Xw5R@n?W>GQ6Q89h zSvY-1I>T(&5y3J~726Hct7ra1+Q3KG=l|C@K)`44`epHTCyY#8yHRfqslBaBjcQkG zXr!fSwUsrhIfAuGI9|{I;WLl2@oyg>*!wWIRLpU2EPkl>b8e|7F{Z0o9p|*@$EZVm zG!}9hk|^n1598Im*C}xGFVO(spbOUK{9mzf<6r1Ex0hVY_Sq9~JWSSKc#!OCv)soy z1Na_mIwzTx&#M)}hJdkQ%#r;ZoK2yJ#zKB;OYC8NzWoXI{T(`QY>IxRhu=+cYw-Um z^N&wU2D9Gh37pNz$-WC#Q}`0CK%ye`F_FVroW&#}1;eP)9l-AlM-xoTwbOTKuMOzI zh%wj(d}|()yd>8;hzqDLNS=$UgscH&@f{D*qsCV(XCqul(a`T0_3zNGzoCJ)X3VyP zyNu*)H^ z8{5)?9u1AHb%94#7CyxB!YGGP)V}(rb-M1V_qF!WHv{|Au^kCg6fk)HvhTvZ<)$Y1 zca4uEs0Q-XgdUzt3lCF2KPSE(XzVDhGK%QIa}O&54B~97B`<-&)2Z9px_EA~PrMJo$(hkkVCn|)`Aw++NQ%!U zFA+)mrEpi&JbnlaKTk!#FYy9q0Z*pC=mcVa_hDlT@o&*7@x=HR&Pg?VN%3p2FIF-P z?DwPYc@WP=aaM{_EXf&w{h%$tdcePHoOQj@d8!HuI>GwS{*QBsLjNYlQnAJ5?1J9Q@zW z0LG+oYQ%d4{Eqc-7}qeuLUP#4w%wzmF$&QFeN*GF?}**`?wapgg9OHJ{ud&_iUO3G zzwmFLUtYf%fb2$XI#<6@*fHu8-9R4vab$iiJai-c_A9KgWPczUU>wh<<{DrTvbq+_ z7lUE-_cHoz_Z+Ktp3DBQaNy{-EPs&x6m%)VzMP1fJpV}?e`Jn*A#Fg8v$3#%De!{| zdU+iM54k+)74H`>rxtPR_zWWU-9T>4%AQk_LyMOcFF?oqB{?jvA1y7kjlPJ-Cuh+w z@LVbY3dMVq+vCf5|DNar*8W|>FI=5ep^9Ka{242X4UaqJ_+K9_q@zjm_y~TtDsjVY zu>TXd^1aucQXF7Q;B;H?-PCj2?`&E;_8ee|`mRNWk zoJ+m>+I@lKFM_51faj~ccj)gYTW23v|JCQu4A_stfNa0(fQ0=BsouyhE%_b)Q>e)u z4gULqvtDHRhVW_}T44s*s6-aOPO%?-La(8V*SKgd{e>^3`oCYim^Fc3<~+`&ZtqNv ze@k+9+&G$ExFvccemgmY9zN&s-Jgi{9Ty)Q%`H404UBu@Pb{U|;0eiZ^cNnhj){$@i?l$zGrjg130H1^f~FnIH>c_MD*ZH@F^?3E{_0cPJr<4 zJcaDMV*9Rz2+T*j52+5~H~fBE|0Q{rL0OO~d93ksc#*m&s=nwqM!a`&9e%)L zu#`vWb<~x$&`TMyyd?=K9hB z{#IE&r3)mXmSBBP60gk?>qpD5z7@2Fe#IK${{janU$aL~I4*l%L6bTTpgr`C^@O!X z7{9~;Arc+A7d>b~kb%WkHZ*A>{kA@Nys zu$-CO_VqdX$76*DBK<><`Z36)@IM{7{|31a5dh7Hlk6+gCCqOg3AYXiF>qNwTYpsn zZh~K^0{GiJuQnaMqWIq+u-}#Vd~bepEbmOm`u~>Hz=!`Kxia}6-aZ~2^^E34d*l7L z!uS6rz5oqX6Wf12nZB%eXL5CXA~iEdN0-I7Qb%wOTVtYVjgoERtyuk|RWv7_knG1< zjv>2Nh034N_z*qf_oya58o#1b)IM5^?l>D3u9-Xunqnej5b!?$`>)Plv(O9kIro)0 z{u8b%aG)^DDO|fbfHb3Xf%1n`0U!;Kl0gvz_z^w$ea`;pGyYQ<=dp01k?6lKU|>Hm zQmQxl4(;K|*%j%dlNKTDX+yC$_OR%LdV7eUX3TTkbO4`HGEY)R=AQ}F@uvVC^$U4s`)%6<5 z9!rmwN5eYRnov5^_s06b-`2784QpYIv2~_D^_>lON52&CF9s<8PnAFBhO+jy_hO2A z9&&#BvL@G~tXT0&5W_#3w}W0!qO1p|BiR7wqDu)<^0}4uqLZFncwLH_B+#cw+}d*fb`Gf zm$rh5S1tBob?%GfnXCuYGy0x&fbRvflj2?J%lU2682q0O&o34qN^XnKiu%)&xDN9I zHYKX^J)$@p<}ia5J-;jrj$(fCXyyg4pknAy;t5mHBE4Cs;7Mi={|x#ch(3%Ch`(cf zkk!QCe&t%HqG5V7Hu3=aqM=4}UUNC?uR)|DfZ{=}{|!EXxQ?DX51{y8*n*D~asVEU zO}{gMZ#b^TVLYQf3Y|NOF_#~(4E>)XM$B3Ac=COPB;(pC+P~DAlR88!5QK)}CV%O|iWASpBg%l zmOl*)z$0t?3-zJuNA};AUOc~M&iAbk>@(JY_y4KzT49H%U-Wl6dfW@Yki$w6}#QW1VwDK{nx{WJfCP z$5TPnD{evdKVz@!qg$gn(aWqdJ`_E;5}Z%r`UfyNy}^G^wxMVQWkHrQ3hGg;3INwb zZV3mn_7nac^>FQyXGUmtgzA{K&HVsr!xH*aevoSmzvha+V2o91Fq&We6ughkweD>0 zi?#A+bV|QG*~I!OF*6$Xj>f?P&Y>%-*ACIlAo~HDEofHYSfFD@!klH!zPzMITk!ie zpU)V!?Fo3d&d{EcR!OCfW1S%MT3&7YEwz$V%d|e*T-MEeEy;S{XQI9Sdo_TsTvptc zIoNKGrCxc2tR2c&H~N(wD36wzQu(zsi;m!ZbtLWK-wED@emPY9$P#Fi1c>K{O*+6i zKgayeEPPmKfWOIV8h=5YY8W`eNwU~6Zx z;Y*Y2lcCIwpBxS0jQ6Hmr#1e{dU*P$wm-Ft9S5iso&|6=u`~oPkdHBDsqmU>nFFOdtmEL3|tW_1@97^y2$CI*Xcu<~jdx zU4o(@eaOXkf}8Y3Q_ama<#NVAvz9lpZOmhJs_D~}hWa1rfbF;f_Xem!PEr1WIFYg- z@&Z%`u_4d>E#;VV`OS$~eW8Ci<3F4`Vck20u~J3E0`Aj$L;|*=_gRB@2tChMvyS3b ztV~u9UMJ44*sr*sq5zTw<6j)W48T}4>SR&u+1vg*9uTyI&>r#uuI>@~^$nw6@A(}w zSU>9c=Bko;9m^6MWZl2%PwZ6$o%7$T0d(cQT0N6(7Gkvt#~Kko)7>$i{l4>q9;1MG zkDqvd_`bgp-uGy#d%vr_tb3#nqyeP=75npSajnyBtW#$tCCfc~#Q;t*uLPmcRR#N&D+@%`E435-TMXXV`YTP)IYHhI9R1@e3V*Zvp- z)&Rl&JNKu$Kh2@}3Ei=T->G@5L`oM%I7gxSA`xl5;qk{MWv$ z@;4*eNSFUdiP%q~M(I|LaWu1qu4C1n1HsjMR0lp7^sQ95d4aQp0sW5rOA@UY%KD;g!TuTj z0T*TsdepD_JOaCr&831a*gmQ)<<6Xe71#PZ$95yp2xscE2K!EwlWL$Yu5nkQTYD_iC>4r zf5UNRf}}|tQxZRf-;(z)>pzyy))A+7zx+1XyEJLWioC0%)lp@bdJC$47sb_+r(g(Y z74KjjuhYo$?_BJLrGF*r!%CvhL?4p@*pkY@Qt@T7{}=LZRn`%|oi#s>g)JP#v3syC z!0yZ$UPuMt7^(@6ji<3@=|#*E*oufiJ^BN7!4^;FET>?H`{nrWjFuXidqU0uDq5l$ zLRzKhw>)ESwj;amn4kVDFW?!#nm=XMFCMgk?`jT|&@W`qU^Fxq!u%jKuDmZj>&y7} z=9yT4IKl|@(9>iDw@5n2$Ke%S7_DFh#=o$#pt=RQ&O^wzucxShHqQ-^3`%x}p(2LcV(BcE2~TJMq^I3GByys(@E^T6R&{ zK(T>U#K1fU#x*{|zxsbD1}LWMsK2V+l*^X4y9$XH`xmnss^(0{x@u^Vfg~-B0u)xq*5A!>QZdpLwzwU3~7R&i_pMc2q46BS+pL8caU( zuhEO~Ga#}uzxiD9Wc(+(>(+@bh#zEb(NXySO<>}mC3hzcSfOtbb%0aicjJ?Zsy)aG zA#Z^H7svvhM0Bw$*C=dG;@W$n4|<@TLV@?@_=Iej=34>wm?BHZIvaliVC=1Kzn<$ zB>Ve;Em+3Ok?Ig1^!qw)u#5o#wtRsV`<0Hb&;Q#rK)8D2Ut<}pvAy&EIZ9!i!+(!S z&;)uFtbcjj0#^v@I(a^kkF3#?25_8LkJ9^|?W23IwPkA)?W>IsurD)6ZY#_x+`$@n zi^!1mLyl$R2P08)k*rU_dHbXTlGYDvBT1ChDHs%U2lyp*fbGEljOcMzHt9|m(WjYJv>mbb ze{i+yuea6bn-A z!!nMlIgj!%CV>6%`M4_5GWz#tdOnyt@DXv&cKH46xmTa(8ej@{raSL8OKwVPC*zn6 zJ&*Mbzh;HubLrinYEMOfz1bIVY(O&UXr3$go$r$@N{+M%|CUD26;d^j`M-6Bqxw+KyqBiKT_-;K3W>J3*Qv z+dYu#&#);ok-5I$UbFohVIPkKA=?z!VCDP#ZvXqTw>(nGq~Za}(apv>t_7`jL6KfyF zZ&V^`@g>(SPA*?u8cQ|G6X7sl69rg?PE(~$kze!GyXIH1P_J=f_U~ELW&j&Fy9Hq1 zBcMp1>WqivBP<=O>Sr;miTvuv#Ax1v?Yx1;`vlJPC3k5YW7QeW@FCILKPOug58Nw$ zHQGMvRJam9z;PbW4{%mczF~+YhYA4efPh|0o*zS0Kzm3>$lteDV18iyi>q2I1lrI?^@(xe&jMFA{cMNs}n+Py^TqYw@0S@U&syb*{3p=2D zUc&#snySFFnf>=l-d&^#`fZ=$w^TbGk*p#9KbjoioAHsXBlK?6i>TV zNt(cuE+&F`6n?-h)CJYZu7rIqXrEiln0DResx5118E%l75_aPz_<&RzKs9CfsAR7LmB0^^#Sun zad@RULK+dX2!E#Umyf7Doy`r$(UC*UQJ(}BAO;`}ASsB(stF#HvxcRx z(?eeFfoztX`Zx>?}+9X&W#?7U&A9flB$3si5ASGn&zP7YwCY{QUUNv+?f9R{iEsh z2!19WM@(Qwyn=azQJ* zi5BR{Z%;<|PGIl$_y8U9s)<(2j@~+Hj*oOTmCpAS8gthbhf)!QO{owS4<{{^oxN1F%iEH4eVM z8BbZq8Mj7r-~d9k@m~IxKGTs@)$8##gD}Q}UbUvNrMEtJRM6Rf$9HtcmHRORaL&Ir zwLUG0e}5i58}9>O6#Bb>owi8Mr|@ve(rjkTuPv@kH)P{W`&A?rSC*d02Bv$a?=t&l z3Ha=bbyhA=mP(R34C$YT1bYUI=K;CCPfR}o353IQEU4ShrX2e}5GzoQ6r(wh71+HRWa;jvgU6Z08Od?UC?ftJFyH6NxE}L=7O;ljvEcQqxF*c^O^&xW z`M=Xa^*XFz-FT0vZ=p8v&Aq^@v{8%X!}!r?N#Vli;rI<^_8kHG4+W3Ynd?+5nMUNV z72bcd__TO^G&x$u41iAY>NsVF;C9I^#P%-%hevQt%Ds=|JcUwO>rsr_7cd!VfN!XX zQZz6-@WqrmKZN<7{?TTr7U%D>6 zF>9UOm`zMK;6QhjbD`(Bt4lph_(GwT;8655@!(KoFh zgl&C;VH>TjLA;^81DU8u{8?oeBp=OQZMWV~`&C+Fg;O)^N#zpnooZ^O!C3 zLvdNUAZte!RFTv>E^vix4eNq)h-vlrHOji0hfEfVwqMcdgt6y%B-%7er z|Ff!adGu8LPEw8DpNCQ{xFvG{{?0lggQzCB0}tZ`IK@tAmm>d1!jT##2e3ZiN6bFB zllbDPAbBk#^*QG#{v!=K5`8e0-~KX>0<41Js57WEpJwfe6UqPgtSD(l#Yi0`*#_;P z`HyRI55V<>@_tlh+z(`LVg<90i~FUYrnhDLmd2I#tk_UGzjSVPWO_bbP+AiU=$McH zRQ#u|#01{ruLF0dI}w6&;Y%md?esTdfhQmbvKFC3prlpEb+wN=eOgAtqh!`LJJ@hZ zr|pq7M7a{c8X};;Qf|Fry&weWDE1Z1EcA}v4|+h~^6~Xvc-Q;<(KSH0a%(lCUzj!i zJ$}AYeP(^&Yt*CgYz-le5#G0b*AaYY%<9DpypNf`>p6n`4_RGT{)Y-+<6rUr+RPH^ zSvUimIVe68%P}1J?VMYYcagV=;PETA2F01hY3bnXw9*}H50oA(9RvP%&K^s%^dDH` zd3>uE^5s0B@jn?nIQFI40Kb7XW%x9whXcO=aG{0_LayUKwXS3!9*)?qQ8KA!>Rr(X7c2of!gTMY|{6qXJwabmj)6K$5 zKa$_RG&wgugPA`2N86wsx`W1~_*T+2{ztUFaAWjR{61XaVEPH{Ngcu`%pLw2>wg*R z23<{l;d&~JOLP~ynQVa82EGBy`b%;(oycE83+)G|UjsY&EZ3i6LGshZ!=(Y{!`Rgg zY!l;P{^Ll1A|Q(QrJP5adr6uHsCcOQpRK_DPv@%TPl;VA|1pr`Ri=00R%ws)2GBpP zbWug~ibpD{!N@Mi8m6ZeM{-{8arUZB_=0bDLLWj<$-L5%bY% zf|8h!{qroqF!$e*xVeN%RxPh(IW>CyuDQRFYz&yiTDKVSW(z@w=zl=Io`+wvw$V}b zo-yEkwZ|VD|2kW5#;?xUTq|S*!WHWik6hpf;hTEb?^zdUG<}z>6ZM%Z39JY7z0K=< zh5Vo!{Jv-XDgGB?fOQH@LH{{X6};K2;ryS1xQ~#Z*2sxG|M^&;C3Mf}UF@88$qp+W zP@0y#lD(77%{FDDvh%Y^>FMb}V(}}ncCt@B*m@(anhF1T&KnkCua_aoYr%>-0u-@- zp3|m&x!>`Lx9{2OD=g(~u&rpr2oUetzRIa7uP}yp4{{KtR0{c*_^A#GPSiC8@Ilc~Ce^|67eStfI#i;l?5yYpW zp9^t`B*2=GfWZUl8 zVh4N&>uzb3#q!>k@}M1p4$*&0zwxlSCJCRFF(251e({f-2k6h1#ihj&Fo3J@FKVIz)^Jr*^1Ov+ zMT@OWXA=iljHXj1plX3NC*bFN)5?aSK3e`!$o+qX?N`O0JPO5A#Db&;$Du>cFD@uP zn;w@f%1$nwQ`)99B=6vew;y0D?~&Cv^r><0QMUIW z4?o-sP@8y=FCEnr) zr0*;6xjZ?6Rd#D++m|jYt;-I}I;Ib%ozva27tjD7Wp%*+O!{kV0-ybJ{EGpo8dz~^ zb?DG6eH}@&f>i@6>$ZlR*q6LN4cq8Sc}cq}e!gUz#k-SpoNKm!56)~TuV!!z@dJIT zs-mCB?A=v-l8TwVk{WdHpGHMbPwanpDs%==$^R@fcjuC$pGl@}2(iE;VK)nj1$2lz zMKvS&I}77xu#z9q3HQf0M5U-hJ|{r=xJ??R(~52L8Y8VHur1wCzeR_sPG7V0R0BDaGoH!0e~T7ei5^;q7EqPr zDm23PjK)v7cchqry#BRV_=TK@H9&b}bluht{+4uszGWQ|#w3h%i0uar;O~00g?4?@ zYrcA3hxYT)gnvbPlyZ`J*SAAP-oXC1L*5jd z2WID#>J#xFpWcvOls=cPNUzMgWUpmWc6{0zk9iIF?*~>DW74KNy`fk^_2?1{RnNL* zNWMJ&RXm@AOin;Q=yPSOHP27TpP6sdc~9L%`oJYreK-nDA?xWbc&qRuY7zf_65szB zs&u}IH%8AygIJA3Ir{gbo0*|km55+>X7A5Mw~Zn<*o|EMm7L+r$t1G)$3+*w7be7y zqTN=qR`|tn(`dVBWb}319gNOkzgOr9REdmvOXd>)MnsYMLeXyE{{?>I-MD}JGh>z! zgWDxNAl)flfCun64B$`17;3-))^QXucd>tE0EOi*c@*1mJ>UvP<7@QU;`}dgBhB_z zXC=+_SN+peMo4Vu6GlPYUpjRjHI0`Q7lHq#*{4~r?38R=`e^!iIyL=!R+ZSy9;Le3 zF6nXPMLuEETnTk$RPClUz-!#&_t1r1s9oGIc`+UzZ5=&Ech}0f?KVDxB$@#P8IzRR zf(2pHX>_(V*8cqT#6Ym=*t`|U>Oj!ijZINN#Q_IlyHp8379`AqQGbQRYc(IuBM`&?44G7J z-yO5W1vGO&F)KZrz&GXh4h93$`L6ohs6OZ?`fk*ts=sw{VKGSuftX+7J>!p}G0{oX z{nd_JM3+#ZUjbIzlBNGLxBnej4^XRjGy~UbuC@4t~*Kd-_l))7&BD0+*zMHfW8u}ykm)+u{9+a~LgHc#89^U_nYDcKRFeM=8zPo=H!vQ(Sh zlQI09J2{_UlLlx-h0tqg_z$^DJs6J$aDahyKD~nq@Xho2l0#!tI4tAVXtpFurnOm4 zy_aP&NMpdirCi?%-xsEXC6|O-$LM$bdqR)-hh7^?{*KSg-~J;q0Bbm3g&)HxX%uvw zj@p&S#NEAob>2KB*Rdj1vA8Tpj%EUN=ZKy7FUzg@X`Tu21t^}uCaL}$Osivl$dqY* z@dUKQ6u5$Vh)M^j_E&S;$AOY>Kt+U>QFZ**tbK6;HN6vydsBb(D{;4rsNda!?%X#M z0X&dC{+CB&x4>#k@^rJn|CqP~_4>~cSkIVkLN3{G6NBZo$>sY!{eZwQC{q%0o0YL+Z7lfFfj;A;y$uZPV82 zm^97~%FfQN%kIf8%a*1`rJak{vsUgNtV^kyL2X?)iZp=YfCE9fI|PnJo>d{I+E~@G z59D*%HPy7Jws<0#SF~K+^W+Q2XI3BG<@o4DVp_Gx${$Q_{sdO~Zc|)SJT1L0t&%=K z{(mEtKX*~5Hw7K=1@Zqr(RRe^-(l^K1@U~m^-kpQZz4a~0Ax2zE=5P&6itX;pxeiI zes%X`eN;VaLPhXF;Qs?=4c|o7K;`6H;s&o!Q@AO5ldigF6Cc%WL?IjaONN}hs& zEGv#Fwxo}^<`?gQ|GpOVic^T^s~?9ve$5Zks%We6V3rf-T*Os5!!eSPo`B8^YbS^o zXdN-JBhB{tG`Ifps?_yVY7w+vv=R5?WjwM;*=!yg zWe=yrs9^q_yU>|$4&`{#spHWg@8(f}*SOd1__Pbr&&tVF)IUrrT!3V_ir+Z^$MRgw zSGL@iZb_XtquDZP^p~GY^7YE--~9dXi9ZeB3m7;4CH2Nj*(=c}!h`jM&hU@L0dxgM zfB6b^jT#3dRoA4?WUr+=%Q!Zwb!Gb82-lt2hRkQ~FIhEd4NjAJ+L~+9;ie_xmz+z?F($qDy*kj85Q4b?1^>d9BKZYhKI{o~e#S zwybx)r~FVc21Tlbf*D}nELrnrzQZ1FAU2j^`D@U@?*#gFUV)`;MKwaL^m;sz?bG|I zJvuBI8F!&m&v(oOO5#tWZ@}^+Sm_1v8ftWB^XyUl_`6{3HzX$|&%{IN;x!<;Gd>)q zGm;hl7DqK;1UJOzktutfs-H`#``>}Mf~x-i0=IY{^q&~DU~X}5>IrHj^{J&DOBTK% zeB^6T+8Nf=if_J*J$(+2(S|D;hSi+~))n>m5wB%EdO&eMdH1uxqdFQWtErj7n$fS> zl43v;;XR-6t~&f^w0d$Z)m160G6oHDAXmS8+A94yt(Vo$YOo!YT>=}MkS)o+$-agG z{6IFKR(4g|0^g_yO#dTBcp$&=Il5*fy1o@&P&4`$y^7ZF%+ViDQmUeEjC$e|YK3oE zUOjpZknMP8d9=h@mL+fc3tS-BCd;;E*OG3z4G6ckFgEmUeXqQU9|!Ck1(Nol1I!D= zPaHR}hw?}23ZyeLGR^e$O0SJskC(66+MxV?7~8-QG>$^C<9B-HG4rF3>2VXY_qT1~ zRog4Ap!dxPyq2%}eaJu9tMKQ-Z2I3kiw*k-%g{Bi4w2vgAy^gPmR~Nfy9T+fowEZ= zpO&5~&B#v6w$FAV-Zv5-V8?V^@m*@qdt?1Z6uT5VP>cFB93U!A1<75>Fm+%P18^=t zo~yKgGX#zgbOZSv*-PC7K1Lg;Z>B3{mm}prfcuTa`7~2VD`D5dz8+5<|82z=i#@Ts zd!~O$A4#u)=l+%12aS^K{Jt)Xw&zR}ZB3s&}cABJ!#^LiWd&BfsV9eU{O5f6a>pBlXu)q`O) zVNKws$r-FO+%&1j?7*qiP4#AeKtJ*f)5$dc67NRm(2JA%i6Te~Xf=>Iuy3u4qHbX8 z;Q({d4a(|ky%1G7YGl+$O&$F{Wz#GI#XiK3L%%P0ymA3TEKkA(ly3_7=9R6V zilrEUEN)6#7GF^^q{6>` zvM)$ph&DJ?xqew`bkJh<+mvCC4Po@F{Mk9`IMzMVJ~*;_oX~9ji)Z?XB?}bRStA@0pxV z4{=r&1AUr-(*tbJ!}@z(|8%UeJNU`Uo89+A2Mh+Ko(iFOcSSlsumSNj1 zAy;xLY+FJt@750g`?>a!W%DO`ZtHG+BYmJx#R(jn)bX|HzkGtg5&jtXx4)!wvv%~= zcuc}O)&^!x(p?%yjabkG{%>pV@01z7Uu(=fp4JG~%T;qdAa7r@`DE+u@rwfl{448s zM4<&azee$PM1ka8z6Wc4mA`gKo!IIEywL&RbvAMTbJAP0D@tQZZA%SGeXueGqW_DF zmw<8E5XrPWd@+TEF!TeNeR34Bx%Jq#PjZwi1|W9tO?5%yvc|tGS~rf-4uAAL@ZTFg zy%20@j{KHX#qWw{sZKPlCYHZGvujSr>%Ey6`v=9*#qWx7x<&d6x%a-s=g>NF@da%7 zL-7gB{_7l_673)Toml;Stlha^ax7S_m;4-mgl;$xZ@y7-BXPaT)cd}{9D$wq?H7~o z@cUz;S<$k%In4M>_ODORjP2nK)9EA9oZ8}5Q7hI4{elXk!`b5&(0>W50kny(j1G>f zfSTQ+I#d*0O$E_l@(R15YaXE%VOhL8%;Y?J1YAo*;XcN>2W&v`{&~5NKOtxSn%$#u zQAah+@>89k`YS4X*Xwuu_vF3L(2WPfepVDuOz%u@PmjmiaWdP3uA4WVb& z1pnLqyQ_mD0gm?x|HA%WWO*Mc?2euKDt-zK4+FvST3?3=^n;~pp89O8k}Ail6@Mun zoc*b^wDd#i!_raY{thRrG#Ohz7is;NtrLGA;ybitYsa@%GIQ=Qkh&+?@5vlNI9K#Z zY+trsn!t8nue#;hpffW0E`J~4A55e|sDRDiB}e`~%&4u$R+sHS_{Q197li+I#cpK% z-@@u2gSpe{+spZ0UuLx|rq5M_xNCGmRF?{XZ=>tTZ0-aTKMrfYMba~F8aHH3paZCV zUB?W#m+|J0hOSEHs;5^qCH>@jlUTM`l5i#);4)DMnhUg0(576#)lY=J*; zGbpY{#C%+IK2w**Q$5+T(26>WA%%H`m|s3GdYC=uP*ZgZ9YgyOEBuueLn|{6>5$|c z`f)XbXZ3*zs4hUgedLk%2j$}U^6>kz3Hjcv7li)N+?zdNSv{yW+(h+HC!RN?UU(B( z!)?&Jj}Q?#I(<9+F+Dr$m(?!4Tl%&%p!91tml@i>GQ!IFX{5WLua%P>0P0`)-3NFB zZO|PCSdZH1C!$ZO2;McvzwMdjQc`IKU}Re^gGG|O2G*)ijP&qdd-=H~Tj=&4wqrs5 z!!OAq3OOMbU<4UUW&(~;2vz>oKSCBDaDVd?ovo4T?4>oJ?S9}py819i(hNa!>b-z+ z;oSbc_Aq-0cR;T-cGduTl>PVIUNHcpUr|5vfx3ko3+oDFsB*m#|57-A2Z?_j4EF@F zi-}dwBf|6v?=Ob?k43wqbOoPAjIk*hv$qPjvo_i}g$oPUvpVXVh5qyv|D{lkNWpzk zSE>oBQZ4*2eMvr{0%tLH6k8|k!KhIdwLuF{Wk13-L4?YKZh;`F{^+d%3PfTnX~svyq1kM%j24K31~v)`&#(_ zGvxG6iT7pj^|nWXbLv4%(R z7k;Iy{?&z($fO=h&%~4Is&^wZ>RU0FYHHzUDl0CFUXDgkV^|X&a21({XX#GT4=wN= zN3Nax3D(gD4XRwHA_1zLa+F_~cLlYyqvIz-xH}c--Yc>BXEQ3xxCgC?-8ILmYhK?6 z?AHhXU@a>hbzoNT$n>%-CTFu>#fcT&O0Q?x6)RX@UQw2C#=BePn!F8+ufPWMe+)I_(w4&Eumn^C*}pNFxTl z7*^}`o!EQ~!;y6iNBdRbqi4dro+(~q{%}Cy<-&>4L2(6ldl1_GT~O;<(Eeamy}BpD z3T3O;CxeUIWp|eDs2El8T1C~0%S$(8m!~h`m(RktS0_-f0`^@VEl`)Kw~@nlK(cDn zj=)+UPSkD_(%l!Vt5>l61^svDV8sp;^Xr0*Q>U86#QfBWyEc};8Zo~Nk6smYnj@fE zK*a@D5II{;q~R4}^UJBgzaZX+6>e6+^Ov&T&*|j;>kzp+HW@(%;B0bs$I}UHaMUAO z7M(+MehQYqHgWv7<3EA_CG-h=D0-U;p#$I%rzIE0&8hCYBfbJ`9Fz2eMf7CO;Erg3 zZP67Y@#XhrR`D?A6qR7`J0}g}i(tvOgZ@MCs1Cwf9$Gk({z-pkwXFw$OoVh87@3k04p^txHwS$j}2c_fa3s9{zvvgj?aTU+f7hsR{ z5M~6m%Gp9&uCgZ@U=;D6Zs=0!5%&%20y{V@X-S9VX|S5Tav3d4nCyw7OyaDH1cbO$ zKzgu4W~Y{PBVK#zIFfj45!b0nYV~blL)Z@tz^`rn%Mk&gLwo5{{g(C){oEzF3<(Dhc4?t^?}|8=Q_EngkZ**$+#a7H?0#%XY8$0Q4VN(UN)oAEtf4 z=2CRTSLCx-p&``KLvvMD^WHe5v@MpUGtXATQ|scH*29ng@plcN9&|#!ItS~yJOMrS zLJDVcv?B4oDj*|xat&rpuD>&9XFc=&+Jd*?(O;u$qxbQ|pCK=J8?nJ%vFul~&y;vAef&E_ ze~pjhoKB)6z*|)KzZu`dIUbz6OUADSl>=KPJ5d9$j_lqo@pf@P@&gCQTM)-vj)mMS zdKCY@&j4$wLp$#jHtSs!sETem(*33+p5v?G4P=gsn=W`~n zbFSaT)shQ|z^lW8YMmx?7nBEdZG^eMJf!}7@+)@z=Hjiz6Upa)imrVP{7ZAUWfXgZ zVs#nQyooRI;4-{~?!`mWY3Y;M1*Kgp9-vptX{96^OU9;sj{kSKQ|-|Ge zHzN}8Y90rCHL04M9A6T(W=@d!rDRKT7(7eaa%lodqtUC!fOgxm&0h=OmTDbEQfb{G z3Ag63h6(mD>>GH#kz>!m5kFf_?YBAl_543q2_)=$)0t{Cbbe*)Fa2cBqR({2&R%$Q zw0F<}LEq}XN5~^$of}w_#$ID7U2AQkeQop2{ax)7M!PEOKXoYF9$n8YxQ?(*)q$(t zuO*T&6uY4=v+Cd_?)h^vzj%5!r1Vt9a}~Q(JXV^RElgL!=~b7$CeO{qFahX~=4_6baipC&UZJ=g ziR^@ByMqk;ad`I`EPoWUZ5|-AcW7J{i#~(i+pR$Sli=#==(Omts1XtPoBQ{MROjvVOrcaR1$k)3DHU4DWVd>I}mn*idSe>;sN&* z+xxN(uur1z*!J7=H@ftl{|p0Aro`4?XKHpLTMDKq(f}G0VOsbXua_=0 z^8L;7-n;&eczru)S@S22m^GvPgs{qUIR~iwv2WqlLPfNmxc}q1jcJpk|4pPxIschR znP&fK{mSvlrNx$M{nF(XA5}D}xR3e%zoxaQBZ=s2p(W;_a!*#-KxO_F&(b;}GsrfsT4~d>9+Fn1Zh*lOBu&ty^@y5cM!ra27!ZcRxOrv_y?fCqYxw>iC z(aY%Pvmv?*27Vm)Umx8cxzX^ixBWM49d^d=@Jh>$v8~x1O-xtvy z)slzeL+BsegIHgQSl|q1{OynT|4!67IyK&d-Z`V-0!s_`6HPe^)_*v-KcLVM{5RrR zBly5!@PIRj3*K6Irtn^2RNK$9o|AYomo>Uq@+}~$n%OBA1>(IFx@j-w2ddj01#?9KG%m6eR zI<~C2IREDO7X$DJE0-t+;0ge*@aBrYJ+MlB3s2JB@?_+ue{TI1vu_9Hw2J0e$eeS~ zeVJRgx_E!~Q>jnILlxailgRm>kiH7uSHt;bsdwdhb)s|H_Rb%xqX7!Uq`u6xh$>dp zcVZ5nz*ca8J(0(6^G}r5l1)>8z%lH-lv+6Tyossb89?m${G=AubmOVfd5G>*hY+J% z&z#$q(O;rk(f7pGUt#r{tI1AZ&;KXD))R$$n6>tBp)Fb0w8 z8sQjnfzL$+825v5T{`z27bjS^!;`ntFp_UC!uvlBPSqH+9|ZQb3IAdO2lD?2dTX9a zJ-v89>%ssu)oOo>inm1oDCnFj84#6s!NH9 zUPx{A8}u*Vwm25H)(+22E1+p@fd!1QdJ3y+kk(bzN&@O5x&!{#1I3?;z0zjcqoq?T zx>wv#acyafY$)B5+vZU~#Q?f<*XIyfoXQ-;%gY7b=*eq)J>bx|a?SioflS zRLTC!_DjB0TT({9QEsaz^q0{s$u@pv1%-4!S`&mLXdm0bU>BV)*AX|zf8ftvoosV< zAf$ND|3nsG`+~O6FU?rgb?W?$VRHa$ws5UJXI*KC1q#Xb>8(+%Lo_l%xURk&cd>VG zJy0dTdR@PxE4o*@TOk9u8#6oaLi)BQtMwe%?2ZKy_kRm(KMe_5OZ-hMd#D~~N^*O# zYudE*NJY1bttxgY9hhC4_9vS6Bh0dpd+Dyp*@tL=@L!XdT`hW7m*|0=_5g!5j_zLuo zCKh;FyfbmeC9H<{X51M6e;oFIe&Mg+`xwsX@SOV#|FZtVzqr7GIS)9BeJ)`&wI_)O z3`7S+R2iSe%!8NF0bern`h5BlY(w{fPDDDl%yS+);$>-_zqv$J)H``AYN{VDzDjqo z{mJ3=0{pRMRyQKMpI zc5ixK&H$7Jc#pf(AAaG^0PW%aujF}vw_pbCxgQxTH>XBQr$`ep|#Yh!%&W}xIk5d9-vz|M@Wp{K|3F!<}xDXXFf z;zRKMm&Uuq&l8n94cogO-@0e+E$q%r;YZ*Ci-^$`;=`!>pB#_CZ#a#*`0a={R-yM_ zpZI9j8J|VhtVN*uWca`AzYyOL#5ZEobDx)Zz`^(jC*TWQ&YEh^qNPR@mKQ2Thti+m z{-`beiuS_8`6fOdzh^FbNYzf2(6pLAsQk)WM*J}1eouk^#?(})UPJe21Y`Uy-a-+- zNwre;!)kDEs{em|yc7E1jN-uJwfF$FOFLA2SkafQtkTpQa?b#CudQv(yAlyDc811sJr9HG+1Bd~*=BEmGknS!~L-JWI!Nx}*Uvs}& z!p3JK|3Be-iv5eX&r2RF4oYj6_N_R%qC;r_v&bu_4;c|uQ=797|0QkJ za}A&@{Z7c@mi#673FEqn4(7;RWpMMPTS)a9@YY^t$y%M|5u3sJjwrrSlEx)>ivib^kTlyCCmz3#A>=XF^@v%SM+axa4)=z z1vEq}NiXSjBR*9`@D!>8t}WbKc(u@n=*1SyHE7BibR_0*IoZX%sX3gC{jbfaZVk@A z$t_PPq#DUNqx&d1No}D5?+_0wYLP})%b=hq-*6GS=zWR_ooJYU?=X*wZ+B7 zR_Pt|ZaBW8Q^i>o)k|&DtMDS;VN)%jG{8`F@_c-NPlyV>L^SdRtb^8fygm6Wo)9g7 z0f=h~^_D5G6(-D^jRud@(P+tIIlga%ODe4eg53-6=-puFgmhuv+QQGnE1|^FZ7XWV zY=&LNzrQWS{W~>)=19pG3ANJJL%wpO-|r}oqH_&18NyhEtI%tYg%IrVHSUdSeX6Us zk0AVui)r-r+?)2)=fO*p_php-nS}vSe>(h$<7GPI0|J>wc{4 zbzSyU>BmyX(s#@(KR#_s6`od~S7qLA$XiXMs}796=I>T#Z)B|odO<5!?Tke33=3Ec zuQUTtglSV!7xZ5ai)hT}DfvCkfnSSs>l^D~p(lXW>&eKEpnCo)Vs@2?t_>$!@gi39 zLa^T$B-O_g)f(lsf7b$acxOM*CafLGUau6^7w(S^0RNBSfiz2YOdf`{{}|P0KJWx$ z?FTU9uLe22Td418MlJ6h%-Z=p9-Z98Y`Xr*8}Sr8@_zAMtQYomd>rR;1Udglh(RnT z_Ba$v{R68C{t2D%6B)x_=m%I4-3qRc5+NEvKfCIP_S|4d6qqCH44Kp9LV!_39`f7q!od`Z<`DdaV zw3@OaEAqXhi{*(q8l$+3s-{&%u?w86KFpzz_D?^^+LW#%4mh=RN0y{J7CYxL#CEv` z&}xC|N%T2Uq2}ZxpCb;~7M}4wDiZiqQI+Bi4*34D7dr#5f^VGN@ zNE?90e--pMC;Qin2;6G8|9t#$Rs8nFTW?K|?^)S1%=Y~?I|^@cD410h&MJ7ktiODJ z%Uku_)0FLzA5azDp!|I`p6!rV{&nY^;#=xC~T9wWl|5mEX=(wEHLL@I4If!l4c@PCPGP*I@nA8%lNccX*vHpJB)E%qh; zH-JcEYij!+OMZZf>_E2hTJZi;)Qwp}t(i?YnSMeI(NZJgdU<}lQS>lTe%1a7|ML4~ z`5XMM1rz~PRzQ5>?3fq&Je3BSI6S&Ey_+0R)HBDE+kCx^C ze@QCgGc}>N(P503YOd9vaaOL0<@4{xxYx;Tz2Yxo0o57XJ#+lmMK9FMeX_040FM=S zNWV(wWi!zLjVc3uwsRT0n1 zWlXEZgtg-20oW4=_Q$N$)?ZR-|KGA55NvB^j&8Xx+qW|6&7394K_>_++KhhV-;CPY zVe|LJ0sftJ0GcBy{9FIX(wo2djD3}16wLXZ{WI&=UO@{Qx6%RD1$xwTjg0mVTEV(P zBW*h$G=Na=@A_WobH#0&!Z;^K6XPfF@p{7gU&`}59pL=SLI1Lx`)hvAL{|5zM3>)9 zS(DP*>|(0Mzo+JYC6T)MSnCuoKx|W9W;HZH6_74AAiE#_ zHLGtavV0=dYgfVp8nged#1R#v-V*CShPwS7iPlw%d%*kmidJL!Ta#P69NyU^kFASO z%jd5{m->Bqtc@;^?H9)u;_C726!0HW7jQ1KbN>#rRiDedm=Sa$a{^8zr*Lh&f*QeY z@l8aywn*x*`c-r0Ki^4rli{pp+K+5kTcU^e5g&PhnF7~wHV2~x8o?P9Cwzt6|8RVO zz2hcS?(9a5;Vbdqm??h>_Fw#8F-gV#g6$XP^^PL}jo3#T;0U4xC*TL%T4+W-U@faH z-AgsY;bZ~7BPww_XFUQYt}bB8=WW4A@6Wu4`s7FE!~4|(c?#%{z<#A%6KjryYNczj zr!?=LY&CeTD1sQ;o_JS9YBTmBesEyAYqncyN$DV}f$z`uPHPm^0YIyQsTX)3SlSZ2 zjtSf`F@R@~k#^j>x6pJ)#YaYuGv4kRTN53itsGr;6_6z{*r75jHD{HC+qyZ9EtCW- z80W%)rF?V5=p9D^B>&F%g{XhnJMihC6|4*XT^@kAf55-4s%+J*&x}hYSRzb<*Hcu#t9HjAFpS7)E4d!+XfD;f?vSOEJMTbH+AHRqLDxl%O% zArEK?6d$e4K9%t5=fX8q<*WL%i9`?fAqH?AT`SLKrdmVxsmu{JB6sasy)#api?@nj ziw=+0g8mj{)-EP)u2{b;=zh7quLJgLp#f^=wqMp?TfqNmd}{}Ke%%#sna>4!9W=GU ziakvi&nC%uI`@AY;nidHUSU0tpQ77{G4_ndC2tlNkXi4`>H$wi4@6Dl)A_t6>jNCX zH%{hnC6>P>dZj&C`wD7!>%}+5Tf^2Dvc|wbDrAoW)zScB0nP&26EGtXYf*gSQ1&@I z*8)f52V7kEI~s0kp)&OVV~JQi&s>9@=|K7*V=)1)wU*IN7-cc}8le9h@)_!(G7gN2 zg~<5^CZf=Jp zdEx|{^MA>4uuev_CEnI8Am6rA@+)lEjvG_f0ebX4!jdhgIDwdVs1q{!9V`5I_yF?y z756L0{ewlfMw8VxihZrJ;Q{HoN?%9N0_9kU^+Wisb&1AI<7jl3y?&3k$Je=6vw!&t zRbZUo6=p^=^4Ien!5oXt*;rlpZyS-fUWTNx1sj$Y1RTB&O0Ad>vJRh z!3waFQN^X?)>-F+?*HerV!$ETypvc9@C4%jC-Jy@yp+n~-b4V_()p($d4uDaY4jp9 z4!4O{P>Z1apE7`s0v^a23;B)(hD^W#Xof@beN-KIG`!}|)CYGj{DfZaNe=Q>;*2Zl z#c~s)H4R3lbrQD)&(fq7#qSx%UX0{W?$vK(XY7M%hNSba(!5oDZPs0iWG0AU3D&GKiy zMvq6}3cjwO0W_*cy178m3)Z&M50yd4%Z1B`F&_<%`*N?<^NF=?uqV@D{!5Aa4#qxr zhwDvCE-%)mhwPd3^<7U_%@K6lnv&b^;YeNqPkm?PtUBCXwSEiv?oVidt$D4Cpk!6C zf!au(w(3aU0vPKDSeUj**idA!3Jl<0ywN*|1RjZQSqU1SC-b)h^)#2mv@fB?=Upm$ zF2dRz4YQW@w|%$gzfW#`6!$mxHv?z@`VU3Ry#-}zMO+=1;spP6=J zsr=nY>~DJ946XNPR{D64PQI1V1{Yxczu}DDBO-7famUKc|80-F+y_wYpZtDB1FXArc8UdvAsn7> zjfn#^B?|CbVOF6Lvlo7h&R|{Psl*~~0q0Ax{9B_v_hby~FycQFqZyd9v&nF%Z9u=Y ztkEy#AEGZ}{`=(U*NkatfI8fbD%`cz+~X14>vQRpJ~Qo^UBb$Z-!hZC9g!EU3aWL1 zH4k$D5};LAdm|mszySWif6dW6i_Xf=MxD7I)v)@;zxcm7euzIQH=vk+D^EO6CCIYm zRnlnNWQn$nTCOG4#*7iNTW-^Zs1PwP}-rjy9$w; zMOgnC@iW}tZg4vHdwCD5|1H*k0lcq2o`B|=}3H1 zcjb_ezbn>%K5{Y>nfe(GupKff%cCfu{C`EH>+x8LTGcVgR+~K2)R|veNAH^3ip`6! z6z`*#&yK{P-lFohDz)aX;b{+yj*LDpJkA`YQ^1s1wc={~qrvLsHs3ja`TzCM3W}>W zfEfs12Z5~%v8T62S5cjJKlS-XGE?X{dh?x0tZxN*MaT6XuG<}3C#SxKRQ2t zja=vA;v5*si^++2xpl|@R%0ZZ!5AJT@_#6Zzmd9u(>c4wRO{Z$tfP70b$qNj%iUQ+ zum$JZILH6tobAD&T(JPN0O>As6TQ~_K(U0w+5Z^y+a+{i8B8U>{mclc%Zft7mBSVJmAr)1Nbhj{Zr8ZKH&LZDl_|&&=~J(~|$PeN^Yco%yyc zq}Z?h0PUq`!PYt!pd$$T<^e{IIm5pe|KV5NB~f_*_er+)(RoLhkbux7C?98>uol5n45?MpFtIS8|u=oM#_f~sjEjV&imB(7m3L4 z74^mQKNIvHp5sWhwDSJzgLvir^{Cjt*uSIg#(yLBzqs&Op;Oc;z8o+5Smx*Mh}}P& znS2#VulQKJ_-)Aq+)VteJ$=F}#kbPO^QCxX@XO*59>P(gDK0xt9F@-CzopU{qBZ_lEE`X@I)ijcRD;)gW4Nm@kO#PAxWr-z{XF zz}K=j(npJv^BjP>xT#a~0QS*pqXX~~pJDB@=h57saNimym(vmCAB?^-fHi-|f5-qx z-U9Zus)Ql~0sr<^C5>hPlIHN-c1;p3X*c@K4UFA@{<3W}HjH#(-Hh3ovF*35)iT9xV3+zabN&A=VSJ< z5hjFuZ^C)l%$D_;G{NRpGwk)R^#JtCIv4x?J}YqnMIVjPpxt~8y8fU6{9NOqO`rRn z^0oTA(gI;6A9H{(Dtce6UwC)CRYwvlkT%|fbE^U>s^Yiq&HWvWhSwa=7hrX7(u#aE1$d1*&3jH#lEJX-L#J?s^r-RULSaX;{e9L`IIz( zG;&qWZeMER?vGxf;!U&3-^Q=i9Pd}S+oOmo&El~Sh*Vde5y?S#!cV26(|6KC=<{(h zzI%V9M)O49g9ECoOqOS!_RM2S5wrR?A!{kIs-0k-AqJ>CfZ~9PN$AS7Dbu-DvA45g`%i!r)aHMFuGJoRFvj58cO9vSrkRejBK%D^XQ=0~LUuMO(3A*8@Z>hO(x|73BU;i`GT8 zs7h?j+D6Sd&)t(5(HiQ9XGCAdFJk}35JQ*^1K5S_RC;)RfDU+xnBbnw0^UI0uq7;c z$7C${zZf)&(I3fXuSIrVkpM*k&Hcqy>=URzz)^hTSn?ZxCNDc5{I}wW=THM!g1K}? z&mK#TN>I;zD9VZ*r&ApGnnPv$)f%(39_i{ipC2 z-$wfnV^p7xZ;M{zdc^Q${f&O-03~m>{?g8l)rKr#h(`t4FWWoYb4j=DmSj6fzHPes zz47el!klnXwv_=}M$$ij&)VT%io#bUIP_@gNlE7KLMt+O++xo%*#Et2s*&&FYwA}mW~P_5ov8BBAB-+j(q zLBBH6szz~Lurz>X1Z;;@`j%f(ck3?LANc`VbM7-Vz#(+-Tt$3-F7dT29>iK4b)%_y zM-5ffZ(dWY9J=#=&iOkM5bA$ib9Z)OabX?4`&0P-A1T!UO+qY_|vGdX^M62 z0b}`pw4DjumUG(ouk*al^STKcMMbh!R8(Url}KgZ4aN+{VC?JIcV^6BkbU3xt?U$8 zLW#&0QdHI`TOzce_xn8$|K~Q(=kvbLGtV<`=coI=?rS}-|M~wN$M4wht+!$F-ygt# zC#IflOjP_1y#HU<=aLWn1-*OUpf}PH_%`0-EW6il!r$Kp2Cxq{z(vdz-5LCUn*EsF zm!HXs*6O3^{VV>}{c+YJUSEIs0fYI698+4Y#r@_0ZOD}wgg@=V+K07)|Bu= z`#&T?;{BoZM1sij2wko|51pPoU?M+I-z*Q}RS89bzW+b?7vIJwJj2KURtm`eBNO4D zC4k>GBwc85&pjl>FV`SsS;z#xTdYh-PIZ%$ z=809Nt+4)oKo+!QhnZp09`svz8g)Stch){#6^YOWDe(<^=|%X3oq%tJ11JH8g0MQT z_>TQG59>dNk?)f&hc$gFm2zs)$fyfHx_*9he>x)vWc$eyF#4zM-xE#y=UUHfH!Awlt4)=;Wz=zWymnte`H z&MVnN`Ht91Gx4^cfp6kutcNc6|BuG@KZ?5K4s-#kAyp1WFV4vC%f`T0M87^j&pR}} zp1xoJa(}%6euo}B+Na_QGJt{L|6=-rY|32Wc|-tjM_!#mTxCV%;_6uP?{IZ)Knvf_ zHHxV}8SA+$`0og=BgP-ykvp>fEwTT9z(Y6@{Mr%ZNBXc^1JD+pW=`K#NPq48QLwgM z$nrR|?12q1xN&58OfjCA@I_o1Gqv;qPU3wgbImV=|NjF!U?^8_IDXn5`3l(~T!*Lv z2>i=R)%~k-=ogIaAagZj0iAgyYy|aD?EJ7{(@qauG;8y;>)rD{M|K^az9bDqM?}oM zm5?6q=etF|fUl27{rUex0;Ka%I(d%GN8mc0QJkgs#rbHpdnoUc1XMOC6~hnUz45)$ zbA#DyABp?0`o+4h@l|0R1k;MgeW$Lq%WB7ESLa89_TfnIb3vPxT{oijoi3y9kLg>J zi2Qe8mfr(R)A_PEfqga^nQ=#j{-NxIN66s)xYGaX{%=6X9BR)xqhUI-BU@D#KpP}M zr)p;!`_oFbCa4v9=|j*S6RhvyJ#Rq%+=RsW2njHsb7@mQli7OrFk5SB`e~kwUo0}| z#7yvJ{d`^7OX6R|%luR3uc-Pp+Vry8saWNw(bs<(U3M?a-=qro8&JO~^K52jJLfG~ zf%(X=bMgMY3Dek*%D>0!rx&A`Beq{b-6NgCzN#&qy_nsY{~EM>$Tu8E4}o#{uK4^1 z5c@j{J7o*-|2;DT&Zo=ZNxakb*`u|cK)&3+FGrlY`akji-~%ZVux^EapS?c%e>XCn zKB@3OH`^NjVrN$4Tk?CdVj5TH7S_qA$$i{@igWpZ^|#V@1=d!pU;myz*Fe%*b4ArQ z65vB(eRgu3Pp(C09%%)~dVy89)0-0-9!9P$&-{?iOmW<$u_x7??;)eFWL@m~p$+f= z*J>hH?7_+d@DDV`b!dub$f+EXAD7*T3^T$X8Ng!S+X?;ND?jjBnJ1v75T3&56BeHT zX09uS5(a{+r+8uF2+>hfy)SwaF2q#eD%e809q12EApS#w{Qtmzco>vS@jvu_e4CIA zetLK}(^#B3zSFm|Bz;rF8v zo@GaT#{O%8mYK&+oPzgj5q6hZK1*<)eP@=eqSmXkD@#x(8sx7{W>-FgR<%3W z(2CLC4WIo9D_}&uCw+QWq?^W`S?lcS+VN!lszoEZC$>X-hE-`CK+nINKXhtD0=K9= zT^ol#?{D=DLGlUo*ZnY`ONZTm(6jgJY(@I_Fz<)_#gC{6xIMp%=X3b~ ze$W0tpK0LV)>fe_&za;8{~3+?8T5 z*~7%~BCl5o5S0MI{!<=+oq@xb8F>ok02u=qjQ{U)`j%}1|DTur4#u(t>ob=ep9!py z^SQ4?9^3=^pJ(-~_Ae^@uZoNf{A>I7Q zXQk#3?_X$sb-ubkbba98zk>~kf1`n--hJ!tb!P{24sD$fo9tts9nT2vA1Dzc-YZ@L zQ|WhluOuIWJ;bx)zJE6ZNcdOlNB)n$)42tPLjnX3h%-$xEV?JV7U`SCE91P=yZB1K zgG@f~AK3PGcmuQtVpW5Og;dc-&ZB+2zmw$b^rQA4%6{3L zXdn4eJZ?XI4f!2)u^$F;oLX2o}uy1~Oj)kcga7lEK z*(ni|l6zVcv@9}XF1mg)pJG3&=XgJ-ecXjs`VkrO8r3-?$+HLrm^mIRDW66Dn%P(IDxtU zW&zN-4Gu7aECOS)ZKxXllGl%@*u*tl(}%$SRAj@cRC$jo2R3$UyjV_#qg~GaFbZ%x z|A!)_AAvJC$=Hs7m$P5S!Uwuy0d!?5!0Kpy(XJd2?VT$02ma*(dj9+?J+^YCrxNRp zJswC%2nqHZ&k+0S%@n~43E}g_Lg2p{Q}K7;KX4P635n7y5B~l5SIY?(it&%VElxSH3a^J5~P_sc6xOEeX@T(qZeNX@P9NOCNt@*_m$&^-`p6WR)6FHsPiMTo@B(qblKj4zJ_~I z*>fcLe<+{M)UNyUKVrRaPb}aF&bSrl`Vy5u+vK}uE$HJpGyl4N1~bcVpfdS)^-c2~ z=;ymW6Fd*3UbrjSz2oqLO-Euj)i0&%$M3=aK}6}hg8#Wx>`p?ij$+Q>DCCu1J?;9$ z0K)Sxhl#8o$M2iq`@`&hU+z&^|oi|EtNEX zgR9Z67+LIE{zyeo`^NV40~w3VxtveF8SP+KFj?B=aK`gFE@c-y1vlBF{@48Y>}J@D zxYzR^+&@^ph*#$)zrTO^Nb&%Nt_nPa3~+}BIszwZvSa}#^ap}PlE@Mnfh(~d3^^o; zav-qM%q4uT&+{|>z4#ALWb*z+=P&*L;rsIpLWTvRlf4t)I=+i%8;mH$0^+$o8j>O& z^?lOcf%{)_fVl0tMbtlXvb7A_qGg_{jm@Uym%?QqHR_Cf_}vyMHl( zsd2lME0v>&%H_p4WWUpVoC>qa^QWA&&l~)9zC=Q*#41yIk&>U==c&?NRpnQrMn%F=g)pB7nDL>riEOBK|+^Xe()x z1Tf1-J#U;pe1BT~Vk_)`e)QGai_ZOf!X+LfMt3B!^!LaBxDl)UclphE557YSlMR7mz8FxMKSj-xW8P-5UKG50(>H zonc6Tt9Z_}{J*Js_7&W7F~=oHj^WrLr^1EC^Nn``)hX{MIs%CMX1s^)_dajw|BG8I zR`?FgySqKY%jXV{zr}Ib&&k*SOPq%U5MLn=!j2G2Nsj#TodW;y*uOUqAbBN}PUind z>`x0IBtY0P$}-Q(zv5db>6K(w`1kxa=}7Xn(Vk5KD-~f$G$(-rCG7+zFed7KIs9lFGyRS>Hh|7bOPt& zgo{V82h1s+N~HZQ7{L4V^8bv8*e*oJ?57(HAgukU^NmPfWB|(g17E+!llDMuX!c%y z95s2@f%wDF{BO{^|5`GOZeoJR`QV@((aLXGhk0}XSRVWTyKD`<(_fe)dJTHAUjLY` zBR|!4BL8m>Ui~e(LT7S*-=KX@CXR3$6Z}pk0&qC>fQ#Z$Tsps!E}{#lSYC)1Py8F# zQ~!(pu>8YwVcvga0)_SuTfzMQKh(~yy+Ho|!P(?&PkNFcf|q3~arfJ~KG*Vd1n8d% z^5=r%?Q5`XHom0N^8~U4uBs$}^MO2rtI!!vg>^pEWxR3(duOrwiup>}F-T+a zAN=3AU#CjXhqjmZtNFD7R<52CHG}#A>_z3Fo$6i=JS3EegTTJ15)q*>14E(V)9sK1 z2{mzV(ws?ShV~CB@bB~idUoOM4=x|}e?k-MBL9ftgKA!-=2urV0zx~g537XIo(B%lGt|!oRcGlAsZ$z zD{5k~9Z~;f%ZJF!tq~1+kezZhSO0Q$fw7+tD}>ka<4qwx^#k)g`xP6LpWcVPXa|oa z*?V>bk%M+(Uq)0ax>A@g?EO{-u8IWs5$~ay2hX$HqniC|K4n!Za=TEIw<7-Z!-xR% z{n-MrwnxiZ#_z3=0BZm60Yr3d2fS!m-ihq_W$S-q(%ydgZRqeP@cutdPR(&}4)fxd zAP?@M`ow%(_A5GXwa+)B-eCwevG>84C*>ou#mWEsBNKZ5KqT%xW_It3Wh8nYU>d=6 za(^%7I2}Jg8~Ok@ajPx9!M=IN>;TYj{&C9w743TcoADq1%*X{W19$@@){b-lxSbgW z>r?;Nl0L(~Mk2qBULH~D-l1Hzm%->~`0-^<4LmH1RjZuxextvStEx9}O(a3!Utg?V z+8Q?3XK4P9Ii`X6;V>@y`HbXxj>QIh0ok@)F`bOBZ_00p`o7QmJdDg2`&YvJoacN6 zxK|5Y%(`8}t{6sc#liWW*%e4Qv2O>E@b>BLSI3L-xF=%&+N1gk?AqdUR^~O4sp5_e zoFr@1&>H_Bq82c$p1s8{QD{aeAkHi#V17mpSnL{0saj8 zKF%xY_k{8I9iEGn+wU`#S9$^>iV&7d*hC@8#Jw_8@1Zg@WI){VXW)OO3jeFoUt$Q; zZ2pSnHjL|M+~2Ef*GKz4$py8+>u7;~T>t&cIdqF}PvptjpSSV2JK#ok|9E!L4>10p zK!cY5B6yqzk-@tuSpw@I0jxRG5_J#i5sVu2RDZq#$cuZ;4qlPHnS2NnkppI`e8rAD zkVyN9@ap}u@2KMcBiV8Nz);HXiyYs`_49V}|I4SiAJLvM$$hM^C-oEuU$o}~P3Gf}g$Ij2@!Nm_CEAS7z`c-BG zY{tHy41fNFwb+0f!Y9ely9#cx27Lq;B3T#3ANJ>byX<7nKrL_lPw!t?|AF>q{vTBU z`U3m%?Y5(H=vDLp>_&I?OhIiEW4jvUuDr7;- zXK>Y*!@_)(T-NXM8!O-c#XoC*J$f=b@qZiF^V9ln^!mQOd;;I!7&Q89G{gPK1t&~g z!*MfuV*+~QNA}?lAoWZ9%FCnuHv#{fkiXj(kll?QVb{KZS?x1`$UH`iwEuP{$OEMU*p+D&Y-g5+X`kPa!xBzeC*LnZ? z-AoX_9MrGHfA#+_z5gluH~2t!{=B_D{APb5|C4H~WhZA7=>GKt8AmT5W4}T(-v;-( zm%m(>S@8ZEa;pWr$u%{%QWh1}f3dnsS7WZuT9kP?cXbfQMp$U8@JiqH1DM4G7}rRo z`Gd%T$M{~)vGxne1e#JDTz){!=ZNwv)@cMDz-z&JSpA~k%%BVTeI;7t5wyr`te1U?<)~J)b^s?`_%PL4KOp%YyjE8%1D6bIFv)G$8w8>9IpxdGI2T_@} zIr@Jf{e0Fz_XPgeg9F%gTCZR9rF4gO0RKvW=nQB*>N1s`Y7U{(g5Jium3YuU9|?{MOzjOZ3m0^Q+*gc`+8EP{~F!2 zc0h}LfR5{lBwB&boW%}aw%#k>DqBdUz@7Oc^@Gv=JW&f(iTdB_KWlvT0m%9z z_9r9I?)TpH$ot=uDu>t6{b$nqcYRpJnlLVr{t3GIPS*Yj(E0(ZGYj@H57}$pwLHHI z>+1T-0+gm^SlN%sJS=kodV&3ok<42V(cGG!{dvWbtn-)1k`GzqG3*BM|0L*tnd|yR zy&Jt4)}-EZ!^SF&1IttJ#oPk^uRvSq_Ydr={hcs=3--{hWC8ZcduB%?i<9P;*LMW< zYW~FjBlFMfAknW~U=%=m!Doe!D&kj>#VVE(>rKB!iAP|!*-8lf1cCxXBE%!`1Q7Ab9y8jy5*;QtWD?GAxz8Q=cRle!_u^O^Ss?RNLq&y( z_;1f)bXw1VtaaroTWtv}+PQGk5BUE*R_;WY`nP!5r)9g-SN}@7<7|x|uopVMIeu<5 z(7%)c!3;K_i^k~MP1(fU3Az31C+91Zt1~QLp1OhuK~P&zBP+2Z`6McTr_jfLb*hXX z%ihVS*Doj*#p^k~7)tbS)9fvBad%<@=r&9WxhH=SPQEt2zcE-oO05}4&`t1vO(MH+ zP4xdt$cSB-F?K}0HXZ;od#(OY9e$z;STBH?0ODWdoB3nb@86jR*giW0U&9XcBPII5 z8Wy+2JZ`$$csZCH@_}eLRb~?u0Hm^*Z<9^j?QB;eCBzT zl{9wf^+3G0n`K!rg=EDf-k<~szh8J0Lzaa1-{*?|6!UkjU2Xk;-ROmTBoVRW;Pck~ zg)d)?9ut4Bg4w@a->F!#ysvzptiP}6^;4tb=Y`5I_Y4g2KCIBYz|eU1;rA8(?f%;h z#BWUp-)$@X5)44xJKt-qDi*aS5}

    1EMdjlc+j?fAyDsL2J_OARr6KkpSOd3uN5R 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µj_G zoQE~um^y&%(d_7KSBV2U<5xeY<9-*K^YeI?64U@Szy=gR0k}>D(CetwzvA77g8w=^ zTHXHE=Nm-RitWYpv->JQ;A<_e7Z;EPkbSVao5UVL%N&?`kPUq1g@HFE)9_ui3X{vW zl7q{LecH<;kUPXEU&DpF(*@Hjc7Ys5e&T<5co!>RS${EqaepZSssK>_KM9vr@uRB4 z;N7YoDNrLUHj(;Ykmy5M$T!jDXT=(EK58(5@1~pHD~#g*D;+?Cn8Q(pD*P@^4(BSB zk@GpGF&9BI5pR>(TL<>Wg8#8(TIZm^F9+u<&;b^3c^Qabj|C7PSj|1E3R+7f@NM*A zssOs60EDo)T~IiCV1pa^)mTZeGwQ*vz$~P(&SrK){FRUUGvCu&PEuzElZ3q3*D#7T z*qsqnXLLqAY08Y{YGi53@mVqx|C}eb_ez04Ve~LpWgN1p_1%g*B8vm z6B}EX&(Z8{vHxa%*1aYx_-Rm)4UA=C1rC96eoXY=7)z1Z>0>>7W&wnL%kr!8Pe?cG zVjRI3LU6y-2EDe$$f^LSgSPc1XzGvlKMnuio%f**MEO?b)Pw-l|5;^Dpv>#NWg|0~ zgCE&|EPp%qpJ*NAzl->GF3A7MzE~bmHb(jX{Jgh^LSLZ&FJ@9+HKwQ53&r67E3jBi ze4Rw`zYZZ^s27&?>GWGzH+96kzo`SJ4Co%S0(yjHQsTk?=D6SJvzm|HZNPab!#mXZ ztbrX`k23fR^FfZp-Hz+TK7J>d0=^0xznSlQ)_n`0Z+!#G&wjE#7tjDbl=1?sjz;8) zcTyqVmpR*Iskh%w?aykb7xm{kh%IZ={nG&dla0#Y9r(Bg>;!Uv>i-vrj@9#9#J2#d z=}BbMQqmL$Sbv@3YT+$V{bd7;fd@zoyuNIJGKX2g=u;rG9C7Q`Xc}0@EGlE~#!8b7 zJ4{uQj^orNR-*1EYitUch;%;wg>kb0LcewdRXmUa->-j3eDANEUr_O*T%XM-&?{R^ zke}OR1B#$5j)-QBeH9xF)|$I>$&iNV!vBTn`#qR{4L2PMNiTNh%HVtrW)~8<_ht@Y zX7GO$WY6^beI}s-Sp2^R{4W9hLi{*=C)_*2g}F>Rr?^D5c@ zm-#<8+1G2#1v^3vbSdU>y)Ki%hS3|m5pA#!-_U;c4E+V$(wV9WDKdq9{t^#^DT#)m zIZSyt3pdICY{m00gbOaj7i@+fj)@eBY-Ycp@97;Z7y68KTh+&(c&M~H<@@CQoBH@y z&8<`?b=yCI6==(h@6XBoDQXC`K4SpFu`&OE^&7^m%1`&mIs_a+t5`XJAP;Dn0>uEe z$o9QPl-(cSKNI|S!_sJfGR^#wFD*$7EL)@)U56=inZdl!|D z&~wZ08~Vln6FUI&^WGj{cjVW=|8(|TJWK~x5;}la5w95jE&p%t)sStr&Csn|%o-T> z?VOukNaO(e3)$n6WV+5L3N#g4T%*b`fMovZ*`w~6wva=fo@H^4LF{%Y~gLLnHem^NT zK!@d&hcjiU6cjN}Uu}kp|cZ6t{_`hY>yGwr2kB5%(G#;8XWQ zs`2ZgL)=9*?E^}y@-7nSshB`_R81=S@1W&vChAwukLv#yg7P)@(Y_S4C*pr4_pE^Z zZy+Ohmgx*xVevyy?lN=6U!ne|9?ENky}Gxc=g%Sf+JYUpO?_Z?s-Nm$mm4`xIwzRs z>&50!r=F4yWCbht*U)@+ zf&LVvsjei*T9pB3LcjLd)-K!H)v74CSHDdL{8t~e|1YrtFM~#{XszZyi|wTX z821+}E0_qnvq{!sUy4k>f;%YpBg z_s_wR=+*!Jr7}MHg?7s$>bL2PR{fuuvyc~$9AWZp2$A8C}(0nmzAQgO0QH}U( zv_F64GL_h0#HC{rMC-6e74SCVz0KJB33LRE#{$fQ6DTU!N!9lk%mx0H?vSjklyX$_ z^n}%CBL93X_9Uv`6V6R01%&-dly|WJ&%gklKm$BToKQ0M4XpN6_=GVLq!UT)63Bdw1v31DY?fb zv6Hb(_{5p;lgq>b7s-)Vbk@>EGZA0?7>L&luB4~{vH<4)wLiE==3lu#^Z&|ADE5%n zpw|}S14UA=sau5pGUPa}N2mLFhqP{U^tRpZ8TX{Snk-}!a*$8Br<_UX@&kyI9(9h< zKRurAh$`U!4U=Fe1x0&w~}kie0#9Y_x>ySy$+6ZIC_b0%K|W+8RR-j z6Z3au`dKl$FwVx-qAv`Ed5wext)~wAQ@R9C!__XqO*UeWQ!ss?9q&3sZO^x8yT4Nb zkjIZ;O7gn^XEF)*oM1JqVlB*OSGW0Ke-*s&Wu|_upk^=ydq7qU9inbkm3`_gwZ0YM zzX2F*i4v!tyRslv-aj2bwZP;p2AwQlQFYuNVnl4sYN)jl7J>2=s-uSDd_I@mQu z1hN3)|FRK!jOq^60nm(9-x>9PI#Z5@Q|nrX+f;chUMy8CANbA)G6Vbzm-7Dd|JgXQ z^7Hpm|L4Edr!-CxB#le^b1272ao% z12p9?G5(h|kltqspJ7~#%dA8qKL~h$VzG|k|1Rgl7mRl1Kx0HI4#y;B=`V|962NbHM1}du0&t-7{!@uqm z{sYzB@NY~&mcUd)u>;fpr4$PP(f}q989z;iZ5(;PTd{cf$qw?AVQLdU#s7w#=iwtA zc^9d{y>}n|!hdq#|0iel2l#&&%|o-krAJC{ls%Hgk^*R2rS8eidyi)p!BQrXor`rR z7n06xMqT7i`v10~`aMJcK^D3sKB78rH1&~h;*T%D04C#!t25R6!PpPc6GT*s?U#e~ z)kOMR(EB!nbYuKt0NNj2v4FI{?XdrASh;wj|Fy9geqY?bBJuuR;+|=A2KIpg^}z~E zBnLBwX$@Ub`Cp>yunbi`Yl)KL`CMVV|26jGj9?4%VVUDOdjU;7 z!P8&>%UK&!*b(5t$R>K%o@9D`1@!-}KGs_j?@PPVuA8;d{+n`ZGyYe{jV5i1{pTd> zyafDjL<86SeN(Rj77+ZOnEwy7ZnFil2Eie;TeKi+V6lOiu;ITs`0qyEe=e+d5D|yi ze>L8l>`W0NhNnQdadh*`n#?2rFYN!jvAvu zynq?tngE(Q^et65{jisMpW6FC79i+{4zd8U1EvQG|CaUB84Av#RR+mA1a_hXmtO(@ zKcoLopaas*gZeURV6WTqiYwq^SE&#D5+$Glli!9>1vrjxU44KvxuiOv4}HtO##aG$ zlL`FB&jVy;y{rGe8M%OC=xZ10VAkKdzEZJO6Lqds5vWqH$CO8 z(UvrSqo5yg7W8psI)EZ*)79n2yq&UVcu%)^a#!Il<(Iq;tiH3(Dg!S*J36Q zk=GiCP5O*H;PWu@Yg8ztAP=yPKA9!-(9On97?=Oo|o>y-L|L=*yxRCnRKG-4KN3bl|SM_Tyyu3~RGyiXsd4znk0D7l?_UZrs zE}NM_IXb&#%|Ko$`Hj|Klzu>VV70PDCdfy(dG)B=ZDAvswun#ubt7GNu^Hy!nC z>b&d3>R$oNo<%mG2Q$DP0sl+za(RgWX5e$H{}cc6|LW}%>XpqG2S{Z2!kfkXHV0Te zfEHzoEeQX*Ur4k}yfOqfPb5Dv#*1XoZbVCifayfQS7OD;gP(L#;DaA?FTuZmVb{!? z#M;ex^+#C!iu=X;Z8yLaFapP~{Z$6=VSJZafU= zRl09;(h=33-FG&+%iM0n{ePf7>~%gwedx-o_k*WD&Ros?v6=Mnzl0W76%LS`SpYXU zlb52O6Wed+tjY>(KnGCFzZi93CfdMsKG`B}+eyXHPxJxSBDy*i%ZqKV?~pnX)~9g9I_K;Klg!=qfY3CxQ8BTRTaOr}rM zpyp5sHWA#bBWxv?T18Stjx+1I2K&K39a`ac+Vo_SjOKWh=SR{1Ghn|FQ9vzLaS1T@ zl+Ufpqxx-RJr3p`i&PVRSHK2L50G~^A0K20gnzRGvImM8Z1vmycG>W6`~LM|BH3c} zKkcif?0;1(OJQ>JLchGfYI1_CpV+^#{wy$oe@FRGv=Q?476FJ0s2}(-UPm#2S(_Zh zMc>7(3%wX#4FmWG6BN4AMR5cC55#WSyj0=e`gqKf2RT4plimEYMKso=vuQO0iMpZA zQ8mu^E~@-grBRP>$EL8=;oi2=*g=@~2>k0tEWlifQ7Lg`cc+QzYWip?=x>MB`-j?@Gr(-vo(}4(BJ3?Y5^=upw0lHF%R#m z5mxClB9qrq*cRX)U8faO38G9ZDdMJdH_@N87SDMFO`WS|xxY3zny4ZIcazY*^*&c7I+t=hne zL^e~<2Uk&LaEb|CPcR8=I@5nDlhf;l(wPIxwue0sJMo;a^V6J(ENS_i>-mn_@?DjN zvsI=BqY!6Tb}S3FO?}N7IBP}tJ_}<9)bIB>wtf|BU>@K8hoFC=kN*{{hvtzq>=8Bt z{BLA>&|LC=gURW=4SSV;(R6>I{~4@6ZLXIE$9akWvw^(&WaK`A0rX&93d4qZ%T*b^ z1K)4H-C})H1?2a|{tfS1+jf{O&}G9w1=jYn%(WZ@_O%<)>)^j03V`^35%4cdq*z4V z_{#Vz?l;z-mD@9NYli>8`xm%l_&4Tn-9^#>t)@^+AUp5pV%#$3|E~i79oPf88~DGD zUF=W1r0GA_!E5(W|}%6hG59 zRG)9CHOy@ycIR{W!SCcGpJw*!jnF`P!QRE!E9*0ZZ+#p;vH@9hUaFuZO~Gr`M`tQS1~xK7=T@rjvygd4hG`kt(1Q)Rebl6>6Osq7(hU zFfGKJvTnX#%76~*uT`|5Lw_N!uX`*PCtXe&fb|CHeN`g9-2gj&5ru6Q>cm%g$U%NB zV0A3ORrvQE)Ujf4?)mgI#FGn52?tOH(4qj<1qBu$8TV-iVD0QB)a!p;w^^V$Kz~^} z8{P+xb?G|jb~3ep!_og|F(Ijvo5Vds?ZGJWB1M?`^C${kgxN^v>5ke+1n>bI z;1#-o>f))Z5S{15QeL3eUva=D@V}G_fH|Ol5*d_{9HX&Xi-~VevtwX3DhOAR`)dWO zco)U>3FkX>n0L7K*;qS%$}^SeA{L|}$d56!ZIV;jm)q$m+2UR|2<5OsUNq#0T`qo*4QaU1=D#Wm8bEw11uU)@$J7zai*X z-ES#azou;|^Zf$4|HoARb!43i)mq7h_(W{$mLSqM4q&La$lvUOSpltl;{viE7X6mx zHB|xJ1>J8x{C^a@L^ViKzRP2Y^8XY6%J*mSS&3!*vT!}92u}3o|IQ_Oe`OVQ*d@yV z>Uw%!u`zgDh}OO;ydwNc_(vvyW(ZwHiR;HZ75A3{SOII5SOqL(3*V;rnWZ$lC!1%M zPnb8hpx?SZp67avv;7qneiQh1q!}nXqxp*s`Hq?qB@KiDd_;Bdt++=*g+gzJJ`Ft^ zz8Y@FH@_XEFZ93r@niwa0;mRLC6?h67{IR)kF}GR6{DO{T_$iQP>DX3dYeAf11}@O z9p+b|)x;x((WA8{i&I&u$g?hwFzzojn?E-V(C{v0-43bhrV9pqL4Pm&%O>aultYUL z)K#cy9-6?_8YTT+v>_;;K?ZUkdzjQC_m+bG=IPQ4$O!R{hBD zKfsTwgOXqq;&52i!&icG1L?l%yurlr?0FZ=JdcQ-NXZ$2}JwD(>MHye9? z>?87j3u~B_n#h|>QaeRn;v}m4UM#?TqV;#M0MDb%wI-VvkH`L*e88vl`X#^s)D=7( z&p(R!CPT0@A7BUOzzt5)|Cbkrza{o4*?pbyCRALVWhQ7ho~JpAObr;t5BUB*OiIqh zr@0yVA#yho<@1;=6PM8xgshxV;a^i(Q$&9t>%R$WzW@&~2@f!apQ(6&6|9R9@c#^v zv*7{EuImsw$0W&#XnONt0rLM>(s)+b(IHXxA?i2usF)!?;XdLIc z+0ZxCgbYAeGBFE?5YERrq5SLxu`LwO4)8Vj-aq0{6~H7kKxF}x2V4aHmvieb=7N1s zH$V#3jjCab;Qv|^TV9H`Wk0Gm=v$MBw%^6awj=Qz7i0`{X%~f{Hp?3UBa>fvH~^>Q2yWM zfE5S*BdDTF3fDLndylH$=ncBOB%BbD! z-?@YLwiuSuAFZx4I?3~(HYYK_E&2ja@Vwj6|L4N`hcb2HJ%3K%0PMgtQ2jZ3^cCh& zyU6`_M|GJ@c0U!F|5>OW&!Z{SL38b4IRKlBY%#sDdYvir^I`*r z^nej0ast_hGJNu()b?D%>UQUwQI1sgku`kw-vs=(| zH{ZBsyd{tYoXGb-oNs*+Tu}H|46qq(=q#Qj${Ny67n;3M1q7`k-rg1~Ne${CBLB`* zqqKI)&;|Gd^C{Ng<66g_h6oO^Ehl-YpNtxOccpct03HN4bPgB2ye&OE~L1O^M0)%}{49LcNElb=#4o{s1#{E&O8a0O9$@t%5^5{e= ze(Jb+=sP+_Hsl4r8ag%jbkY6yQx(0C>Yv3-Dp|?7S;e&v(GCU>33Q;Jr%>!s-qTg; z@ehIjmFRvWL4Gf?8of|Z`oIAu!3vH?Bk=qFL=k!EyIRGov|$41=UBUUnF`X9$UhlX zm*c3qEX6k!2LIPNZcxJ&#mlGT(<)}t95mry@mL-{|1CN`SCa9c%6C4VZ+|F`(^R9q z#TvA_{eZ_Ci#0Z2tRS!hf93lY`RXsM>&O1qbbo2z6~{_M;Dy~~;|ra2-uU0C{`MHZ?s&I2<#8aFxA z9Q1Ex3V4VaYKH$o=oYF}Q2a0K+mB@egIK^ke~|wd`b`bgnGyQMf`oiK8%>GLr0*qA z4PEtqm4qxnE#5<8&QmLL5$&mz7z79SGA?W_u8vu zuY37b0ET~gePLJ8ztz=P4nSFb#Q;|QCw8iOA*qGJz3BjYobdp=9_WI4PR-!#hUff^ z9Kh>jzc<7#&>>fq`rioMz|S%b=r_87+7peRBR*&X2Ux`n{u;cGM_~L?{S5zN|0#UG zuPMNa0IXA3Q$q{$_phV+og)fwk4GKX4YcE5A4lJg%x&OaYJCVhv^89?pbAJphL zME=Q~Yq0+1pnoB%$W(08Osv2ve&(W84&>c7peH8{iv1PxfqTjH&4>GcK&3@@KG9qJ zeis#g0x|t(^zAl5{ktBkNUmkQGlwi^dZvocAtTrkT`*hhJoSX_QTsAu$9^MkdlU5E zh}@2Z_*9Dd)m5d4NgAfkW_CXHH$->~$@fo&^^Ig7fDicoN09~6ROrQchBlE$A~UG| z=^DBT_J^YYEP(^`Vnu0>AMNj_zTZZmPF**e4IqzO8isHf{Lf>}#s8E2TZC`^OTPoQ zZ|ay70tO)b>+_ioVE$j;-#CEj9~Kkn@1z~57qT(&{Z68d-RQH8{ZC&2%UcQy zQ{P8_Yb-zubU@7m-og}sg5)CiFbUvTxCtKM2wr{zyl({G|8O#aQ(*uLSpi}I>){8- zsRUBhh`R2i0aOLo-$XmH%4?$gb)gEV6}9%6sdGIEE11j5ZcDA&9sJo4JW^#p0tnc< z;oow3^6rWNR8u1*AUo^Srhv)(=am)Bt-9Y1!4l<|6WG#X!_}G7wi| z>8OtB;%5PJGOZ-3`zcXMCGwLO$WK1UT%dz6xJCHmaUNOx#^Xz28wP|6gO`U^4d_b;nz&_$$mTgv+szkN->X{?*j% zY=xCf#V!t~_kJyPN*k~VW8v;i@&6Ce5%4u#mfNwHQ;GZsgMaM@F8uf93{J+josVWG zcd#?|5WIf|ud;+*r|iW4^YH)e{F&=pv1!#fd&$Z1-;MkP{(s=-CnA6c`8-)Tv&sNS z2UON17dGKnYW`N=_x@w~-iLtyVMGDbu>31vfWw#=^hdZq-G5Dq{%4~vPvRJaAF(Px z<^3A^M_pF4Vt`WU|G8Q9GeG|*KKmDL14eHiKJmJ6ZGK+9&f)^I5At@V4O;XN#1QsO zV#TULt_Jt$N@eRjY|=pLfRuw&RgEGM^≻eZAHDC31h^Uy5L+|AO}~aHkpQ%LU%8 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 MlCAe$e~l6N{~x9iCjbBd literal 0 HcmV?d00001 diff --git a/test_images/IMG7.dcm b/test_images/IMG7.dcm new file mode 100644 index 0000000000000000000000000000000000000000..c8824892261a7c43b8724ae5cc66d85880038e29 GIT binary patch literal 526122 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 z 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ⅆrKL7AbEyv zm-STml#8B^i~#>>*#S7l9$}~H0ZM`*Fo+#LzhobP5OY9EN4ro7@F8|HIZ^p)@*ii( z@ogve_>foA5023vo6;H_6~+H+cZAaX_70DE483jw{C^I|bXa=_F#HF29>ZUC;>xP> z-fAZm?S!oOK^mZT=~i!kHU9s3EX6b;m>uLiwSPb*vI&Fn;Pc7#eL)_ddNdll&{z?-zKq6EC^&HC@XacBJ4eDbx+idm1SjiVcyV;|@NF)UuZ9D7Sdi~YyzlnU{QEEGqfWcX)R5QU&A-cb`gXSGL zK^EU1ROYkSEc(jeM0u)8_^Yk4%H)+>y30WSS@$O@%eIqWdKI483=2@3-oF-Z8zO?< ztg-rTW7L5`aL%#(R>1uo1+W76-$Dj#9Q?nHkNsv`LrcFBpf>(Tv9Q&_Y3(<}`wxS0 zoPtBwChi?W&Ta_3MxF711E?}uNX_d;bjDfa^bUh)MbS;cw(5T;fxU^GS=Ds4Ilp!g zZ3Ny1fd5fEVhEP627KWgvikLz?)Pe>0Q12Uu|L=YX8Zk$-7LqH;6>~MAoV{l{XXrP z9Pkzy)9lpbohBOj16Hz$XhJ&~4CdKi1pm(w#~5-o)3g!jS_@_y!qw-I6a5IxzK(XE z*SSDM|2o&uhp41B@2}?m$pUE4V`TtjJ!A)kf9-_w7WKcYsde}*mJAJ`4e!D<&bA80 z|9d9~9{ywAA37S9-_aJ9U z}>^S6IZ8R;IH5SAN&4)A>Wr_0kngZ z_KI6cuk_5w%J46tZbaslu>#e=tSSO?fj)~`vx9BL09wa(6ZXyb2UT(E^cSMd9%SXO zHS?pgL>3lCLf(e;_L%7GRZyniEh2{1^A}Z#F@hGR*}GaA(*zpB&sL zB+4KE@Ax-PZhXP)fRHQ(qvy9wqxgR?1uTW{<28p!b-=>E@gDJfLw3MD^j-g_?{=64 z(EFrE8gmKoZ+t@*GB@w7?W`i*LpDI#M(kvEfHi z{;oy~fP{VM>g(``RjHQ=(E;M1qiHULszU37z`Cpmp|TuUnnVBnMyC_iq>tRY_!IH} z#jL*0RF}7QpQF}v2)!nwQJdd!-(>xbr0R5@yOiqlVXV%3XjA3j|5E>6gF|=5OFxT` zZ0qL%8sVQS@jNA1b6Wknf`<6M@u=m0#)=a=%tK9FMRie6I6x0m)r2==+2BC~==oWK&cDmKOpWhUcQ?`47%XlHy8TMQwyMAfUI+V| z_=NU=_&aWL?+GuzSI~RP%kFvJes?G~VmpfLMOac3U$F?f53BMnO7AJabu__Bos5-( zZ*+7{aW&`33~3(FI^K!-w%6Fy|?YO_ARh_G@v}@bO=c|I?m-!jx=4ppdB|PJPHy z#)N#UKa>uTfHL#D`aNLgK~(U6;XkkdvKPkN%^O?2f)qUI2x1ee``66BOjrXc073k( zS8CU2cF!1nfOfk!yBcE`#ua1(^hkSjU^lG-K-JTM`k@F&^U+#`CWcOjnxJN_h_nFr zn&Pg{O8EbRDE1UpKOqpef@x6^Dsn#{RxL{ps47CWH?-#O+U_&*%9_wo57dO1Br(9v z>~->Ldw;uMpeIcP^9_kLYq%{@1YSi8n1a@{$X(6xnY)(9Y++@}Ml_%wXd(G)dA>J^ zzz4JPyWo!%HFv}kXc|~qUk4KdF2Rbd2>$!Re0Neo*MOSB_0$o5f|AyX4ERfE*xRWq z_?zgr3f-;qP!``q1AHFTt2=%Z%G@|Seom^F3xY?@&Q@3P%OKSzXncx>_a4zeiP(1V ze~I0}is1W`p1G#x;r(Eq<;%2y_4fHfjdFayQ3DDi%bJZ4ho9FfdNJfHgh zhH|CPa~s4nbl`c_*;JkPuqm%|C!DsiG1y}@`5UacYr zF>!SQ*(@~K;O3ln5U*ths)=?vI7>#c1Po|A_HYfEmE@?e3*7Hv_B*h-9pPL}(fImd zg=f3#VEbQU8}?$ce|8_bPkI%+rrvX2SFfyh8V(R~r&Ck#1$M9^EJfpW(M{T~F4xnm-d_2}T zgq_3qaUPH$ZA|)LFiq5^4+^K^0mizG*Xyg@D{TKa{!JbHx9zaM*VS6AV(i5t0-;`0 z2V@Jx1_E0kn_-HEu2g?(I;SandROf4#Q_qmfPS;bCOl5|Kz|$TifUcf!hdn5qK*rF zMeM&gT$d>}Bgp-Kjty8r1h5kPZ{aiijViemc&t;gg3N^op`T5|0#sw=mEv<(7k(WM z)Bfenn&5|T$L2W$-KySpZ>QIq^)nKMxiZmyPL3j=ur1zy0{EW+{@1hSjef1!kehzHbXXQyXD+CI}*~@ViE#dKt$k-=ien1~I zuYP#G0#xl($KQX3_I(WXJ1@#(Qg=3$HS4iZGl<8xg18-c%U*bX)wfyqQeFIPFVHv? zpF19QupC~ofvn?wy!;X5x z`ZJM*^zet;#piWiiH<>>UFRRgtLngWX%9cKj)7n{vtOyd+1W{M?qzBb@A1ALBct&( z{Rnfxb{}48P5gaHpZ&}BDIZ@IB-X()_T-GC;Ssv#FW?@RnC)Ma^US~+pXK!r0OuFr z_t%N?hY)|YLJxf1orzUghwtCbXE7g3y};e-UURd1)w~zIIo|tTb#EJ=-dDsDzw#RD zU~x1HOuDObG0IC;Qkb%EP`(&aXL|9rOx1^=tnDv{Xazu+(Sg9iLvrA+xXrs z`Xh7JpAGK}Jr6>q&e_C&n*m@}K)5!oTi#gfSY9r{FUpUL0m!RL{-pqlVHo}cCSevt$k41nWycEr5B_C`WGl?)2T`_uORxeK1N?t2fN2B5vv4VN z20T3>vuXI%YtatG%KAy;lm9pT+uz#sF0*uE^!j@pdPnRq9uZgo;~HX1X5;i2V*vKI zIeASs`9rymg1kGU$@^yyj}1rJovJi8S+iS|_fzhF6`#^^YGfWpbMv_;BN}Z9qOQ`d zG7I0;mKEEOLztc-tNgzEo^)78!9t@o~bYrQ<)hxq*T)crkh9ylI9<)aFq zEo@+f`xhxX$N&Kx1ET42sEU3jbB~dU*fg$iB!{ z_V)gc8sGv{x4erwS_vM04iB6HAAS<`e>Ty?AZ*GgZryklefen=F^D>tM_~;#!E8TS zyI#&>s-VuoStg=nWF%U-!*Lxuup1uoCXq@j-fQ&($qUQ-Yj+M!Leh>On))@F=<5?K z)^_R_uE+8d15Lu3oPqz0Bffv+rt=be-?*<}lN+PPzJ~VqK6ZCK9PE9p?*R8@cRU$@ zQ|@1G5$_G}YwshknD;Ri!Sm_KT#gp1s9$y7%EGAAQ@NjxSe@^vb{tKe!D6bdda*;u zS+Yc@QTtcI`B#Gdul(8)?Gw5h3$TvaAO)h+BHx8`gx_U8pQ?Xt`mc5OTW7jBfYy89 z?acSekJ=%xFP|zKVBTLd1a=mye?Vs{CG=|0%#Dg$UupbVVUUT`^J(OL7g? zcPy5im&XeKLb32KYhlkNiwVN%Z>WEj%J__gU&%%)vaoBl4E4z6PM^1@!lpRQ61S zK{oT=^rm=~yuB!UPlEm%WcPnUb$;NaMEkEn#YsEVzme$9Yv800+*Dr7JMON8nRa8X z9pt%+IDg~&Hh{jlcu&pD(oR@i;Fh&mfl~jq_SFff*nb|6`~s#tA6wCnRoWVFxH#sa z{jWud_zVxYgJTYwx~2<7oNHKz10Ze_IMuYlOSb<2l{nY%!pC76+I_P> z_#BGuY|s1Ej#s0qz}Ngrqs?5$Zl2>Q;+3`ZLnNU>Y6m@s^{4^JMGWy6^~-m#0Zbsp zR5m(<69 zeU$%3yxRjo{o82&GtgdoqR&3Z*Rk#_tihLVDQ}H;%KMZkZZlT7r}G2PE?cijEOoib z2GruS?}|_OIaVFr<|K8T1)M=tiC%#@{)P&$9_??Xuli{+fOZL80s1%ay&rq6)u9sb zt59d~ul_t`;k4tQ_`eV+CEhr=R=0UyAy$|-PiXqT(68MD688L*rl>w&oBCgqYM^Rx zjQsxjgbm?OXi;^1cK%vbFeNz(@w|Fwd-eeT#{Ugv#sCay`ugAg-xz=}tN*vFHbm-~ z_1qTyTLrKt044JMzN!I&`F{yMT^7Wwft}5KyDomr?iM-`>dO?%Mv;w?VpL^p=kr+y@7F%fQUG>i!S9jBF3)OeMyL4OXglSZsr3j( zs+k(vi@rZAU6uGlS#@EQw!W_GHSp?qdC`!s!87~9_)}5q6LK%$*A7tccaQ16dCB*c zq!vi3|71{q%Kh8@lkSr_th~--0DeZPZ-)hlQw6k#yu%7SnyToA5(7NTYOjUYQ5H&Z zb1zWz4k((AzwW~SNs&@zd^7HKh@#bZ_z|-PKA_%p8veg6GlpvTRv=2Gx`$Wr6#BKM zlxd<~W!Ob+5H=8h{1*Q9P4F~vihiK;HTaAsey_(? zd_(3TI~s`af0F9Ix7?F%8W>p`?*KYWebm3waIyM)3NPaId!Y|B_x0JfZg*+|y6~9u zZcp!+mneSA8|&?I&k@ahz;o9F`O5e-^lLIyd(ns7%gxxcSlT;Sno7=CGJucJjc(8z zwu#lGoj>=Z2JB*8X$QH_u#sEH3O0-`j_gGP=;bQ_+5toiT4u+x&qY*sy0YG z#Oi?qUM(aGiIxu(%60r-_z#$a*$#`!jX~IX#P?PItNtI)$GzqMH37up4L#1#Z_$MP zt}B)mvDa^3^@_}{=)3+ez`Xrr)#Wn3-t`$pz6OWlkSr-t719${{m~h9viS4 z8?b>->^IoI3o7=+dXPb0N-ta&{K?bwl^(|@E+W#L%^|*dDpnc4^`$%7``%mW)%7lr zJ9?9Rb4}FaG-Q!8yGd9-2gpKQrq;(H|CGYbLtNRA)i;iw(;wV@M4sc}pRM5s*Fo)Q zs&6EF6^ov@yb@FBew;QEvb&$OZ9G3&|e2@*vILOs*weY zxB_0%o!4&N5RJJm?U}A=2;)Kj`&{>Dyjy$d1^PSoG@sZcy8W&?wTSLdxk>QPq;KGs9Ebxva0G?Bd?*02RX zwdUxEA6Q4GqbFS*Ntox_$axcc8l_Y0FY3g0;!(6)?0&ewm#nNMWSKrfXWBN|}ojrt??BHJbmj)mmLRIqWlF@V!;oqu%YzF}0-*yK1Z~O<<0z$pn z2mNG-448~D1MB}y2KvL;0L}eYHLxZC1^I&ikRNb> zfGZhu%EqhGjI?f{N1~ySKfUdRbfDaYL!T$3wGNLtn3b+< zKr2>XC%p6|YTl>ty(u0)C%NeCR3qobqpSArVC)%q#1?Yjv#6_igRk?k1anZRhEiQO znC_U8&K{6dn7_#fYp@-*DuSm`U}zIQbRl>eN_;Vl=iUWp|CA2jLy;Bi`uj1F|3;1t zSbzTb~g7@Vpx zxr&DLJU1X-`IxGla`5nuu%!KT;G}o%`}O>7u>f7M5s%SPxDkst2rJbQ9?=d}RJ;9- z=ADowUIXt~$+dsQyOs*xFpyWg*Ga=WyU9J_-gY1Na(cI@$nJ@4E)EYXf-+mozm;{X zQVmdxPo%itDcA&+aHE^c+v`0Se;*4_#VhJIa(03CR=nRWU`d_0hMv6B)A@9=W2;Wm zWAry3VwztWtQjk3$@WS4-%hXC5q`FOpmqZImfvTvTk3`IO;%!g7{D_i(0bH_J=Fr3 zueRt_YgWA9RIFUs0Y&}R*QRW?p}!Q-e;J|)^%YD1S7m`Z4C``x#>c-9Elg|vUNGtZ zah^$iL)wd6a|!kQs*)?j`Jep93yXaV-Lf0O9B``(`Zogz*nx0p-di{oQiVqSWWOn1 z*Um$R|CsOp6ZAhJT{pwE9%(GX7=YOoeYIz?N6HG=BZEf=JV5W9el}~Mcg<=aI)*|_ zusINUmZ?>1_>?~PEw%RaSkKRUvE6@B2(ID zC!E44`OkP?c^Tu0$7N7*4 zUsbJDi5rH3`- zzxi-p4{Ow(>st%{BXF3wbA|c|&Hic+{@ZcBmx%vAAVZK5TUw25XK6Z~D{y7qu~VO8 zAu}=;HL<&aI>>KPAV1)GuAr=DM-6xqi+BTd|05!lLA>_faG+sC7w@5#ZpBi6?`I3v zQ+0d;X3-P|w1&^_8RGkIi2pCRsmboA@b;kmci{8TJ}ggTq4V*siwD#tKU2_soJ?sp zsxuqH#}2uJyfX3i@%izamWJOSLp=W7XFbLed@|DkN?#aP@Df{I{+oHTyX&1 z6s;>ephHTQs#&!2ul5oshZQN$*K&NdDIe1PDx(3`f)4~00E+4}fIZvm*JgcX=DeC2 zu1X+P$QI;EG?PqbwZ{o>bVo*5B-$zC_BGdmxOx*%V~B*7DDfzA||n@R-s#=yWty= zxA}B5^;?m@{QpLdZFFk?%!Hgo;J*Q@crL6o9i6+!=o#5ZhI$^jpT$azg7MRCId7`> zqj%do;*BR`e1lrQxoG>7;q!y>JHug~`>6r?6sF%E)|uX)_3;}O>9@!TWI>0Xj@Gmf z9bmdYfwmUB;CIm4o7LNZXkFF&B|wq-cNc(pWdvq|$a$>1v3Q_bWCC-5{Y=y(WWf%o zws!=Tch&IvpP>CM#^b-q)xHnnYm!$uiMR6Tujx;J&@vFIT4JHU4qmMbe)J=J{WtjL zC201YVcB)S>{#NQZfIJA*x&0Bnf|MhYaD+>&PR^31NadXz)O*o(aO;m=yTsn#bhF` zsST*yjsH*1b6y9Jv%!BSe18u-sG^qjFoUXC(u(~5Ex39n>_B_!7F4mPsR(;v?oT+2 zIZr(}!$4m7O0MfSx_cfGZU2aUngjn)jpAf1#44WaG`ZIhwq`#Wi|?p~ehS6r9hh52 za`+oy|3BmZpY%$3kD;}GNbO}UFkT7^P!P^l29DMmHQ*VLpA0LVhWnl&I$P(~_wIX> zdnw)K&IIa1Zc#UO0R{OOUVjhj z{}K4)0W86%u>WPeM~ApIj1EEnTSa`X$y}Ppp$=86&X@LYOf^8hSgaU;*006hpi=|5N=>fNcG} zVvm4xn6)u$U=|?(>4txc1S}6ARv?eB_fX8hc!xz&LVtER(OG8xKZtxnruJKKue#s$ zSm*FY^YE-AfhP8~B^vL=DwZ z3wBbu(iQcpJshJQ967b~6aMW}yxelu+* zpU8JLHsF2mKN6(nqpIj*R_+8WKoM+9+*yL6p#J(wL^!# zIe$GBq#q_8I#0dBm%I~mu?z1J@$W%{xy!8Ith`erQGt<+IU!}K)gFmuF7B=J3dTprKZw5& zKj!_87pOpW=GR!sy<}Q{n|3X<-axY+h+Z$?>-F($;FuzKd4h!XBGYnaj*Qp;a?ut z)BxiFhRuKDUyu9uq5Ogl)9lOwSTrt7Y63_c{JVTtG-C08LjA8E6IdHVzu6brfCLMm z=QGbA#1^_<%lYe_leJMS5pXHn`S(fQ@4cbJ;cJmk`J4`*(JuFO*`0hchspf^Lf6kD z>R3Ef=3}wXogR1$Rq{MTtf&s25-7$$xIMgIy(i*-6ZyaD)grU>3za;7kDZbn^|Wo!T-x-40@3pER2q{7XRH3 z6+oI}aXNQ?BqkT~w-MWZ$%=m!WR!;Mt0OKK3?LiWR|HTJUV4OD)YphrHW2@Rj`rUl zFY7p8!x)Bu@)4+)4oJB{ygU-0-w-XaF&Ll0{X59kuf+Gy^y6IhG*ux2>O{=Zm!BTM zlg36nGugW~u|P3qSvl-k+Sbf-vCM1s{Q&9?)Wf7=Xub`%W6z7a}i27gU zOuJ$FKk~`!v-mhTz%DF64?dA6 z$OdO3BB_emj0p~XJ!#utapX-0HuO2?zDO_>CYJN4@Thl&kgZN4uRf+p+aI3;k z)v*dyz;%AmAp8qc^563O>bukQ-HbfjQ=CcoS1p44zrJgqF!@Zg-IN|`++GxL#n(&E^ptBFELIKwG25MIZMPCBz z9ohA(FkQh}-~;)Y_uq;8Cou8ibKb){)J+ycC4UJXv4A|^C*Xe-)@vi4TK##C6Y)#) zOY3am%-SujEYGrxnxQ^i@d~1Vj$rr(f7=>`!gc^u&9AC{s}YxsBM)#Wb`}lx6khlT zSVn3(oNEy?HKmWZ4VZj|NeX+>64JxmKIRk1=%u5t=Mffqx8IA|nf;gYqxCgInHh}@ zp5*6WTJYYNLkZ}{XFL`5f5iQrs)6R-LN8f-e0)c|M|_eu4-UA9O5bioQSDI}XA`gd z=@jBGUV}S4Mg31=`XzpcR|@?H;rfSBMKm#L7g6SNn5NXGR!mcVJG_VLANAiVezzI` zMF7eIB;a4Qs|n~g>=)**bjbHV1Nv)${-*S@HpC8S>W2=S@>j`^0V?ne`8lVwFh$;` z|A}?0>sDE}Y(DTk-zSw z0OKIyAv&`0{Mm?{CWQJk^>?g4#cdhN%o*CeN!=#{h?4oYA{}7@t?)AI++T@If1(y>BKUuf)mIuH6mh>pukVl2m>cx|jDoff&#XGX zEBMc;#Qmz;mv*m-1DdImgWt8+#+OVU83Kyd!2RFESCyvX=QtYLI*z^k{Rxg=m{su$ zcH|TAITEzLPsPk${HUUe{_ymd;rnf1{fBX5&Rx=$>bGeE>Uvl7c9;+ zUm4KuofARB73WE^mb0)J z5jTy~o;?EZvx<&`{R7;D{!>v!17Bl3Ra?55qa*cylf&CVt?GV+XX{S4eSqZagU()K z{Zg&1lg%Ej9lbQuU+Aw%uD_{2?Y}X(zS>~FG8{mWfc6*H&zk>{4>VXbtZI8T~d#sVaT{fm!i2ckgFmjw|1#Xan1=hyS=cjNrRyIBO?Z};ji)#ohyn~GvFhwvY0 zsG5}YV(6K0$4F~XzZ38OF*f;IeE(HE|2=Lt>HF_!X8h&?XQkW08;&0+=w(Fn)G z_Xn_Q4zLMQQdZ|4B7_m}f$BsU8OZ|t&I;?px^^5@(e1^1t^_St;kkG4+tq!(p99~Y z-|q&nJYFNNHiT|4of%hi=mxBahrJ48_zrdKCf-%kz|uRnV!wj^Gw5k+sh63Jm)!u% z*$$${z8E^`{|6P@4CsFu9U8sBry>`3Dm{Ou=^U zM){BNPS!z(x#~u}i$rWc@@{_$PRGL4yTbZ=^MB|4*uX^L2GpBD?(lGyn#1UVG ze|i6OJe$30A=Q{eLgj$2L$OD&N3iJ%fdw!|phzPt=g;HgU(adpoc*LLuswhZP|WFuDE$ zUQMs9_kuUd>+6;D!e{{Bq4gag*Yp?Nzls{ZWv=uWtf@u#l#$#v{Nrurp!mPzu3|z! zVlT6o#5>D+o5t#^jn7Ji(tHsQ-UGzm0j;O;jGIC0S7f#8P-D8C^`8@OoWn+vvF2(~&9*7`iL>m5+{E$7+}xA_I)10ZYd7QN9x(~4IM-4I z*3gE(Z|vKT&YZ0k_q5~hUw{vc=9xzF{WYHTJ`>Vg!rDvu%H4H%d=;2=U-BM>;VlPY z2VJOiEYB-c)pNq!lUi7m9pw1h5-HRo7h4nW-;Y(69zkCCUT!dxg1t>jmtezE@(VE-oT=?~V| z7FOCy@=b@apntHJO3v_tP#5qj&TVsP&1e040*F}vAxGGG%16G?Z@Ry#{e}M)KK>iS z1nR*Ds``4O9VT${h3b*mjUa4 zz)!{l;;hyQ)b@St6^dt$pY>ML6S5NgkMfGswR6)=&)TUC2dD+t|AmaedREao(7uYF z){)hp4aVPPWh~(KD*k2&_wDCc#qYC;Om`8HCZ%FHw-@ma!9`z(N#-Swe3y!YRm8D* zsW`q#4b27O+;6BeFV6bz3Fn;-va}zL_QF;dN>eZ<{+yfYo{4biZg|Ed&aY^1r|^=k z$O7!9LTx?&Q_?vLlUT?xmkicIEWiqU?{xfgPjKIvoS^E9TEN}gan4SlzXKRlp8XXt z+W`+8ihWC^-$?xbOL+c)C;}Vsb`PRixRMT>r3be@VBPjE({!>T}cq z(>1yGL$r#{=#+=iJBOhLmO#O4i1M%M$3*a+gIwDis1I#;wVHfT5lf&tW%b~6hPCA2 z)ehv*m0&uJv6lULcZOj9rg6>_R9QW8QV~zBqQW`}aoH_8fYkptnOy87nAl6iTT4NB zaa6(cLG@<@d-Le#+~V!I{%b0>D52koleF4(@ZHBKjgEF91{J;J`{9pTftM0cttfGSN{iOlg z^dE~SgcRlfr21(G?j(3$?YotQvuh%`@dl}p|K1PAlNU7IyyL%G#rVzOlbN7^sj~e{}FYu-AS42_|QlHLq4}SbtXfcuie|; z>+!eZ_2Lhy2>S$o@GNn_LpMS^kPW3zG5!wppYFut#8X;CK9g5$_q!bCq+vPllitH7NJ#7FZ7dFX5!b0^B3Jb(L&W z2wi(IcA+omQ1{+IP}Y^(OQ`4zVfm>*!4QtNpg)UWdGjYqdncI06)KOf(+M~YzWlw9 z_LsqQKVtK#?dhVCFrJx$HQr@HEzg1Qde)1E^dz8}g!e~{f2&T*5dX#p|7BzXVZ z)U{oX=D-H2CQ+ROn%FS_)T&>xAqrkMj+S6vGt$*Hui1r~qEjFB@mTCR=Aag(7U~GI z`o_TBhl1mlWYzAY@$UlTOVK9BaK0{FnPwl>ARDE{bgZ~^9-{;5x zt9z1|EES(gNw2rJoKC=<-WPoGzj~>_f3El$SYQg~gDi%zO+zO*j~__oO>p0JJ|<34 zM`aZJYmbDb% zfiII?5Tn%;8|ehv%d0qRShM`KpNDGv8i4%991Z*kpz8lb|KjsSVe+{-gGJ-g|AKjY z+I1@l_)pI>=Hcm2llmDj-4+|vjulZlHMAnyNaYKTKH|t{2OQ8MfKCyp&4Oo&@M#_Tf3_4^zr3Xkw zRmGI{N2&qq`XtmeTrrZH87->*`J7McRx~l)a4G2DdWbiZ{vSij#gjRE-E{Hq;;}?~ z;~nA;!2gS0c_ziAga2oM^Plvme7sBzS#EO5g<*s#P=aEpL=IZ9CVbw4RwU=%q{}{1Rl_Zq^jCszm5j`-N=cro3H8b6nE`U2c=#xBabsA)4A9;T zM5^Dv2NC~s;JmZX{5#OXG3)MjT(Xuq#b|ZGPFzA$y z_&T;^CK1ypEQNL_(ar^m9=dWa?To1XGt{{!3!vO$bE1#>^hGwI`qpz#P+@g|D$CKZ zmrAe~?FGCBjdC%sa0)h{Kj&$~-!$W_ozW`J#ae*$#V~;C#6$&%96I6u-zI~&g`Jkp zP-FQ77I+zcKO7S_-DND%*annpPaEz$!7Od_s?!8Q` z5QEjVK-qbZPJnUVL}mi)_a0*nbfVUC65Rw>(Gum!JU@p0nx7kf)ZMc6pA60Rzz2N;LcdvqgbaXrU|9j_Z}R`LV}?GV()ho5cBzW#@cS>quZArb+0%lC88D$(V;l9y*IDk$MNk0rK-I zYlpgq=7dtRhxNyi9&oZP*ySxmXLqSwONIZ}XZ48BEDriL|D&z5$1NDon5bW(#)*FA z(?9O@Cn`+Kno7p1I)XQ!gq~cBxcw0o{y(w9)H<~HkBLF&fzwGGQ&HpAkc~c#uX~J) z^dQi$zO&gVOy`L=li+7+(rX@uSFR^MZHcWoj6du|6r7ZbmMh>t1Gbadjboho<;EarGjwtZ6#x zX1BeCHAS#5KE6BHYUEo6O&xEA4}YHHIlimQPW85Z@aUEBaMy`%za+lB7cIkIPNc4A zG{;o%{}%qgCkR#K&Yh3F;HEcsY5!Ifx*7z;HIxX?2?T z=@B(KZxWYhfTcxYXlJO)T8!l#f#?4O1%r_@4)F(iD)TWB|`Z21oKmE{B(dYljcACiAe?VisGN{;#%fZu@mx)&IXM@C^Ni$$^{NOpTr~QV95G%ChuT|y#Aesg?J`ik9#^gZDvyev<3TqoGDHF z=>@nzyjRd0;$89DQ4!cIo+5q@RbU12!57@hc(vW4&T~G048!(S1AG-La1{&bvX;WJ zQ^c8bIF`Zy)=)`RoQcYFBRwLyBirEsQ;E2h2RDyv5w~W1+KSGFKNkAs(=Dr46~>_2 zes%gc^m%_>epel#9-}?JWC2vsqn!l|6N;o&0jPdE%l?c1rv@R~BSU(EScUw*<^`E0 z3cSCeO$=QAHt@&^J-~)ld24kPD*86>Ym8rC4f|#Zp5Q#Gef}T9?`!WL`TrzbmCXyW z9w5c^Ihwh{1u%M;29h*RW38SNALh}!=F;T(}GkqP*) zW90ufQ=4&|sg)t@wCm$v{-4A<44^}-k+Z|C9IujSW1_DUO-K|@)HwbL5&Lg`-`-jx z$&r5EI47w5gQ$J0GYdxAj(qgfcxdIPA5sVZC-v@`$Z7W^w|&vcgJ#@`eE)aUmu03d zB@y>0mK!PN zeZHT={|e3QBo^QSN_q)2|G{|EZ=5hV$xKG!W0ZrU&Up~p6a;FDNCj?E)vJTj!5qr+ zwIOe(Nq|xoG_Ozlf`|$92ZK}a@RO(^lt-@us=MR&-{(pufPQKF zhA!a04oYQVx{aSATdCbYN@4@lZ8$%c4h!|0lb6g}KaP4-S??pWJ_LJN1Px#x?0*U> z#mkDrIHUGH8^k@ksqlRphMxzk`xU$>1Fz}?8c9atoA=;3_o@6T1H(Gv=0%?^1W!9m zl(qu@{}HO|a*h>51~cFSn)=fbyOWD*;1erkqZ+7tyixpVY66nQ5Ag}+ag#Z9STm{{3Hv_eK9wZ5QITA{N;q~BomqPV zFNOzbr@0YK0!~dA;4=1AoCX7^2L7dl3vu#z775F1X}(use6q26P52f1YvAvNe;wig z%KQiT7m@=VUzI=E{y~KBB>c+)h;zq5T^j!HDXfd?3B&;u{};n%SnkibzECeDT4bWD zlSkHdn*Z1D*1IcjYe+W@(>$>7Crpa}>sp@R@hShof81vy7XPQ^ECFUs(bE-M4nkFe zdT;bh306|^hJ3&Ldtd>?Fy#03d}0A+o1TCRbq*~6{cYI4W^SY*tp79?U>Eh6yQtQ> zKm;JaZ=YS5=s!#*r**83v)L^X&y(n_M6>Y!KgY|*KLEA+SwYM3B;#2pMakG*rUUd8 zT=p#N^K-B|ii}iMSZpTzlBVEp;W$WTdOlRD^{m{IM4}hm5?(#Dzf#l|41rs|OtooY z?-F?^b-?e22dnn?JNW&2aI(>9fMsBkEfK+FkkAxVRpU^d%?q&ZPyFiOBV^aL?`ImU zO*dy8)pS481Cy8Dl)dnh;#A9Qqk5(`__G;ehW~0Hc{rZ6ANW`1zX_P_$_64X&)uMXC2A0B-qwLBH6>p2U@SwIe80Ox6ff}m-?n)W?0wv#Ht zH&9mcqN;qryS$hBqCMEzTx34if&Y@QsE=S)wY`B3qIL$J5weE*T$!Fl>K{(@g5MVZV?MOGa?k>`jIhGH|$xGk6rQl5I?mGO1) z+3^wahVkD}1H$el-c@l&WswrIc0x=6xbqMGL*Rc6asOP9zlvTH%?6r69c9gE*65bV z-{FkmPONP0fE(b*q5-MrxzVkp&WoLw<-6fum42%3)s$b^f|~qZiANan)z7Pbz5+h_ zE$$W))cvd4pOilOU3_i^-?}KPpo#+FUm1g3Ajgm=w3}Bp{2Tg&c*CMBK!8fKS;C>I z_5qfKMvLkL{-2)bkNNR`lsH8F|H-&z^!bCKR`~t*S{jzS^%*C)?F9eZsQvv3wx-Iz2Uvj!pJ5CoAjYbze-${9qn=#VP!x8A<(!9(r?@hFoV(>J@VO6^mv8%3^0GlA+9r zT{=V!T{HY}CHEodeS`N+y@6>R?H{0h2;bsrYQr5KXSzl{m_svkfDceSrZ_3_+XtzV zTuGd;f=DR?+-n8Oe`k379VW3(@HQ}uaS$2S%dml6L|3yxaeEM58cuWzv~Naf9ZvmF zZQ`{`Xo*e8C=B8n=JToU<6Xb)q(;{*&xDYgRA)4Yw_SGoc$d8{@vZTT@$>O*@nK8} zO6mPXy+UE%f4J-nl7gG20Ng=Kk~Ij&e#Xma61e8etwnQM%Wn&q126;&&@9p@Jc>1} z{jZFzn*JpW*v>w}zj=2}_^1xzg@5q?eYI#n)&J$du=Vn*viK=hy}V(ds0qvJwMpjl zZ4dvSjOQ!hV_%s?MHo6mVblm^=>x8BEWp^m{VepE4G{j#|LcD&gC8JQHq5XeczS`=fuF0Fa8`4F8H6g2(E+`EgypqWJ_HV9&01%QSv5fIwp~?Au?<0?F!SA`a>q zIvQ#a{)V|f`M=)Vs(a1b6;GV#etaX0 z@1WPnJ4e0#SlDA5x=2n_1v->f*OG3%(SGjfBrM=K$XkOan*<75p#g-+4bSl7=PCHK zl&twboxb!776$+Qz1iMYV#yEq=~>u7#QTg`_&y$gKIi+GV*_VQN54v9cP+~Q9z1JV zYX3Cxqd2}*`x7k$i(i74--!N0#0S~XAI73V9>7OFgqggDJ#ZY&(p-o)tqby1SF32e z6hGJEjAJ;o<5v@3t8dPu27|zg1HaCyefL64QO7_ zJnX|95c>u!;T71rB7;^uhx!zspJKwcj*oOn2M<8zJ~X!?HZVCzdb1IDS3;D1I_N75qPPcR8D}O>B#Z_fNugdg#dV zCt=usGW^LcR@hfmn`zdB=FF`@4^ZZLZnSc=ccepj5-Zf!vwWr2uzffGUjkOH-X7)W zs^astv$y=d?0`-AR>i+Ecbey~{{2GWIsyGckj?%`<)dGFZ|O*deNa7&_Qz6oLArtP zuZkh#-m(D+QNNI6*faE74Y1h+`>NNVzclL+px>ebWd@{0X62mecy|4B;Ult1%Kv5L zD(#W70>`;7>vCE>Ru&$ z{!lPI*jL>8VFR?o#$;-SR#S=i1-bVP9BZ)zi-`!P5%;SXe;9uu{4a$Q%)#2di3J$N zF$ncQ`=_c)`H6q37K?!4M*Pn*t~mp?YBK6%1fFsi|38FjAbI`DhwH@j*LlP`&fN%` zR{-5H1D2#P{G}3lz`j^VvW7=^b$_9ersF(Q`R#FPFizw9XEKp38qX8YAO97N{suX} zxl~xS@MEDj_?tqgD@S=nbBJgbQ#}=$hmw4OSnRhUnV|* zQbYpNP;H;{Zh0f)XW|dyXX7*DS78^+on>5^B1i|s$FT#dBmLV~mBj{P>>mF+HsBld z|5elhY1aH|R^eRsO>7jY8-5MMnx787YUN7-%mW@vQ^{jkx0ybQ`fbL44W9v2#x{t# z%l8*!t;_doil|Uv82nHCCq-@7krq6v-oF?Y!y*7p0u1mk-W=dR0d;`|u&yBafBV0L z=-fEE*nrL;jxJPNH)AfYDhF4U5j&)CN%4Pr;*n%rKb4XAE%!0~x>3Y*+4POXd4^0o3XLe0hx>YuU`t4`{TZsVnk^lc0t@b($;0hU= zyKsO<+#W_NFiWS3JJPEfpB#TBUOj$?da%0i|J7i(IrBWeVWo6Kt!j$eUL6Kmm0Jxm zQmtSE-Tgd3Gi-w<2IXY6?FAM6;j*JaYc6-|S8E24DdO6B8uywz5)R zCtrPosa2V&Mq5ujTLll4(%r!`eMNj-69ujTSXNj39=drB;KBZaS)@R5_?x<)dic>9 zSfN>1nzpcp40NtPR`UBY;{O@oU-SK6;W0D$eJRHxc)?8g{cD_MI8j6md}9_L|JnIT z3_$pOlk@$7YFCL|=S06}=Nz?w!+C{yhS8e z&Hb@L?-7SQ;ZGo6hdrMPj~nCXZQmlB^A^8<02e#$gy<*8j~yOMr9gG>kk^);z~AG? z<8N~QBj_^kz)iGn!Z3g+KdFi|{-*)uTbiW3^<}VAN=|08)D*DV_*w+jn%@VeXAG0Qg28;gH zYp?ybRQ;ch$El(~e<%N6%Kuq81MLK8=r;>soj1BCz`yYT;a}M}s}iuRp#6`KXZTYb zVE$Q{mWO_V$ET$F*MS8{(^oHIa=vRGnH~`w=GkStj8o{lMJ4~f=ie%$DGY%PH7gRaMZwuPL_6%%63^18& z*KCmAnYH^Ktp5)x{Mn3;jym? zY1BW^1W&JtzpvowRT)$Vv}sEB7%Y`y`~E}&6H)%w_!`5vJm)qv$)$MBWgPEgJH~_a z3D~0faDvY`mcmKi=e4SzcnlV=G0&$-McH8Q>RKww^Gv{wT#luMfmgvowjw5)4P%)F z_in~DKgG}dkYK4o_4^k#RH~wvWFMi=0Z?*fPGmiYR){OOz z-e)~2l8j*iJotde_Yku|PP5)tgZ(AG61aw5$~%!zByqSqIXA}RXIQNG>kf5f355!gL`ZWxXlw(M!@hN=z+!y^wrc%y*?eP07#GZas2)tb^d4`aB|p4 zrhgbf@JOLq7SWWz;2P{oWC83j4xq1M8pe2nte;siU2iFN`>hbp9QirY5A}5|5!f2O zZlWIZ2bh^`^&=v-YrY0>7wdh8BRBr;OXr-sfJsmuao+dfzXkaJg1lc1`gAtnDf;4l zdZJj>rS3LAs?`JL&)p~Amj~>p2A6mE{Te*>Ds}wdgO6A7r-S&Om`!rQLJF$s(vl<3fCV_g^Ns+G<*)(j8Y;d*_Z!V7%dyw|G4qv?uW*`or>O@_o z_Altnv*acEmj);Wpd9bPI@JGcTzhT&eGQmXZQjGa^euKLbJ>Imh|T%E9j_`KI^bdA zjrX~}PFMgPR-cQ0$aWxRHLC-oYG z$T5~+|L`gteLxL$l4kBfsg(u5rK%V;>kPI zN}pi8X%_Gz@V^@WGm)JYE-(qa1-v-mzFNtazmg@$2{*3*)@@fGRs2}aPyAoHzu~_! z_*W;9JiqF1gc_kCIAjatjcwM3I)J3OJw}{h{eJ2w)EwZFel#EjP&2>{?E(6QJM;eu zo?ZT5^#rQoPr$$BFclG)EwD&kO1)+0)Q6x7z!)(|8h%zbQhR}GE_uQ$*DKI#Ff~-R z$M7C}7t&2D2`rty+q)NhwR%GRU2Y&D^vHxPwszt0WW;}dXyS?Uml z5{>4C3#fkoCb8)mwCNwX9ftu-CYpX8Z+kM<7>_fA2w;Nuhxd3qdHgbV;35;nj(Us8 z2aX^s*pl2;a@3_?s7G5&_NgCA)JkxD0T%uxYF}EPJNLr=JO@_VfSFQo<_mCwBp|;4 zx0H?t{xh0N44!C<> z*n1(Ka|rx94fxWW!-l+f70CEM%^bi6c>hMe|LuW#GKM%N<{agEFQj`I_}r+dowCD^);!KC0Ta8UDG!zi<{DVglK? z*+d=fx@G-8!ha?z{iOT_bN`ezl!j0Q{AcyiZ$8)9xA}kFV^OuNfbee}{NnLKyJZFw zn1CV&i)N(%>B_SBkI@7`?EoVEPx;8CSOWQfd)JM0eDT4$ocKk*CWSvj3x|3z3ax$qpxVfsn=sVu7}8*9k{a~DAS zF(3as@rhkod&5}K#i$o*$pnzD^q5_wuH+kL3EuV|cxUM{7)Mr66#?al0`e09Y$q#N zi;VPke5CpUZ^vTri)zdWdl|<3qHh7(qd?}y`=6l(C@pv|!I78soD<7b9bC2MRs#0B z5x!p=FRGec;lD3hy7H4&VW*m(;rRBAaD3(Z-u795cGua87I%TO??d}r2EJF}?RUV< zXJRMb$E$9_PoIJxXfoF_?*EkU>--$SShAGG{mB0*_sF9gRtWw*9$m00k@^y@;ayb4MQDwK&?vj|j46oJpCOaKj=a7)E$5KiKR|BI zr8?^+to0RQwkxE#(#7vnyMLd0iy}-`EDv)UgS~6-S2w=N)qP7GaT_j{p6Abk#m+{) zHZ5E!7w9j_yHy3dI)qdI-+`~Q#Oo;#@o+!y&Qyb~r*THE?f>VF~r zuR8c|Yv?xyAPvA+f$*=Y+ywL+{sS&xF@W%|>rkd%%7Q9*Q~~JX|Al|? zf9(WdYN4)NkG6M12se}mzTU8J-F|wEurBLq@0z`D7XRok^{i$QE3xm_l<*soR-k^H z&j41z1opuHf5YSdg`NJL>3_fZ9N>38vD0w4_N9wzEm@WHD$jmnS-I&ie`AWqxkg3RMV7&{g=WLi~#3L!Bn94y~sVw zz~^Q#t$H6--)n#EwRrcF#2nl3`yX+v2R+)ScOlkep|1{{_TwDQ{9n(p4Zp34h3l~o zU3orb9E*Ye(%}Dj&U}VENKWFU0=$;Yys8kdD>o5;3N*h5v4XIwDZD<Y*2jKO$yJf@U*@S!@%T>-##@ znA1UjJ8GDpvBKtBck zKf(70{Xzlvw+JAC)$2M`hnxoOKj!;?_5Tb1nnfC90EJq;67${xvMrhka-;u_mx5R) zK)fuC;XWsW}H_uo!Du?#OeiDNWA_7(7~Jl{v4^nIAY1d#U*{QhgQ@q5tzSMlg& z#N@~D_lL-#Sw(>M-IV%y1sm}tk3B~I{sOlHclPD%fP)c0v)*Ivn$~#-&{25UVn()r4ueb%OL>g)=-l0S1aW6ZwmNKL8 z<)KTb2o+SliT%I#?!cq|_Tv0I&-FNiCcC@X8>kOfI!nApyae6A4ZIQVMCT*4 z&EHr-zcTSd4DvSWUxbMAF83Xy&Q!gC=Y0I{fOTpwu+^Y{ceH!-oyaTUdEicws;yr0 zli69f>ibppuNsPf3+C3h%OYFQ0HO-EYy7&a9i&0}A_weD(h3<52%^ zLvjF9!mm;Pvm878IiGE)7vOM}@N1o@q1)(Y!|L~C zb+v+z|4H}ANcu~QQakz?id9bh`zhA!ethN{ZYNkr%EMg)^H<=Px3LOm@&2d$_+K@3 z-C21zW9`Y#yVMa>qr$8Z5$a1QeQ8+3#fVtfQN{8J9&Qz0=P>c{7F4wAdlK}_r@{r_f=Gg5m*TI{)=(s=6@T*o!byC48-gA<{CS~0?LscI7(dKmyDd$zf$M` zJ;1?PEYnwfUyfCJ4>XJ;+W&~#Y$EvgusKrqmSA~ML-FdG7$lW{JFn+FSlvin&?kI7 z3;N4&q{RZ9B?h?%hLiG)m#`%xz_8*C?cS@}<4V*mk0LhM4}M#4!H}ETU+i#-QJ|53YKlqzi=j?7(XEZfG7g#ZuPyqhqrdqN) zKBGKA%rEr+hG#iVrTLevIPEjL$*%`$932$t9-aaA46Vw0o9D8r6~ccR@ZKcUCe$v} z8XF+|tJm)t)H==S)t+72J47`*^8A)17e+7okySI9HJ5Qe)fr#G`)}|$DvtXR3tp87 zxCHfSBmH{)Ze;7*)2a7Aa?CH0k!ws9={4499k}Zy*zhj!^DdFmq=U70le>(iXDe-e|xO8dI-xc505nXT)*zb%dtAuY2 zMUL`*hJk=;J`yW~!_ma>{}AQ;fN)&hn%=*>@Pbfm3Ds0%Bi|9lv?F(@2`7DsX< zU(vtxrt>@P?Kx4o1 zVA`R(8j4>h(Em6#pcDMR3Hd&Y_m%5YO`UYL|DxZJYc@ctnQ$ciFC#u*nRXp%L8az? zY1XgpCsG{$uRg$vyyky90L+q@@^7qODxaZSm3-El7uW&eKdC=g*cYp}DBOIyX%U&g zzxw}G^^+CuuN{B_{%>Ag)ubGTiC;&Kec*cI$>s^WK+RTM7bDbT!KIEge@e5?|X%Kp33<8IVfW@sWCiB zPUV6{}$P5Evx#cCeeQv(BGZa+ZJ0; z2a8aS6>T*>#(9Mp^ZkYkQ_BMeV7^!TZrEPCrncpT6|3@B?4bx}VEYMFCEl>zf6V)v z6$v_p)E^-c;rvQxGfK_=pV7Zpp34Dsz-|8b@ z7GQ^;3%H4;zQ-E-1x3)o=k{lXcc2cu3tT*PtPU2SbF4nIe=ef|K1D=Wo7Hs)_FW(S z_#ucmhY#Hc1CZaG&#?f%vWnj~Vi{)Rcj|+I8rT5sY_$Y$kexbC<$QnE>u=ytlQgU0 z`#YltHb#ZWM0EWVzIq=VcLY&%b)H#uKbpkR9H01GxEb7`2~kWMw97wv4`;#F7ViC; z&t*39^B!=qidbL)U+-}1a%{q3*#C7{gH*sfFo-f(n^DBes(IENzqX)%5Lae2TzVfY zySD$%<^PM52~__=DXv2wVgvOreFf{z1^(0U9&W?JqhP)fOlL7!lKp&d2+BH>q5T3c z`jZ!j5B0!@{}lcxvY2Y$CG5fWEm^-;>G-|NH17sn#cgyKYx>IToK;cm=?vlqMIf3$ z(2Vn$$kph=6=>-9QFf&oKq{wZDyWWeAMY-T8Wpzx=#)+zRDEoG*MQMf<_e|IGvh{J^-sJh3v9 zI&|LBB2@v9hTm0dAVn~%k61-NR>h-tqW57chD8GQyRMbK%tqL~ELxC$Y7vxJk@&ww z|F*ADdFrGFhQ1B0bKY`Wp~I;AU!H#_=u$24alHRM7@Yb5egpsidKvHyE5kYA*~#(C zpP~IUAl4j+VxN&N;FsB7t~C>R9^i-GW}P=@ouvnDs#w|VtLhu^oEwRb-v=`45X^?Z@7F}l&Yabx(`r~f6L{m}_|nYy;Kq2~I-oiN`mf;8R#A`Jo0VT33{=Dq zYno;oR(nb`!WW1t8sTvZg1;ZIVMp=l8}anocW4_7WIta^UjTAsWywNZp75Mv?=aL?rM6 z?{yDnks7N$7KU{_l1RVDW>nz1)Mm|wZ!7}+d1LRBRd_mbpGOs-+xHgC@g|?xSExy! zz%Tdn$(;rLm+}1fungBgyynfS`hN?S;3zZH@_3!yC!JN`P9EGaZ|m27E&wO5jo0tY z(GDJ?aR<^7C{I}LW8ny>M&OIuh5^7zZLTJzLLK8*Mt%4|Ea0g z<#s-&t$Y@{{ZHd_*#CXFrA=@775@JhE3GW+;byoaKDHQH|Jqm?HQ+&F2cv_TIYf?IsdQ3G$mWp`tGth^KjVkJ%o7Vi7i= zSA7d}eV?x{iRg2~0UChG;=}|0u$K1|k30?9TKG6r6`kpIOhxa|4gv|pLoW@aIRb7jM%T~u$?)m z3bnba6|iqhIAiTtIFJlVx$x)A)cVI`kAuj1YJR6uF;xz$+%Wnnx@Tn~p>MHcs#Tl= zi>rmTP$y0XzZ0<#uiX{SuR3a*bKZ}i2T~U}l8EFjl$syIIf$KRVtejkn_I&vu0@N} zNi+xSFCa@(mb_m(>M<%rw!ll$Q`>tJoZrCLUjW&=SXr9&t^Gf)@RvJ$T_ob%2Kra> zscyhJ9H9!Rkk{KC?yQ018(xD5Hp%~&g|oK7_e=R}M$S)r2HL!E#r#3MVA`7S5nw|| zun0o;Q`SvWca;50<7e8m>z}56sA@nv3Tg(BW{gzi*%P_1@NY=A|INn>=|OH^Jl~>y zvjT>Go75qFK)5vDtn)Jeod;yfFU!Mc7r!yxFQTs1=;*Y6X=>_Y4 zNEG`iUStahpN4Pg!0Ims`g735rbBynmSxTD3s)rz(1aZ%7BEL_FJ3$rxf(tN%Pt$< z!JL?B?5^>OH=VO=03yDjXJ7=jq6=)H8_{hVW?=n+Ivt6w1-rMw>srqC2#CxAAFq$+ ztxZNFC6`<*j$xe^PRWV8VkWs599_iO-m z>+|}WJECbGtvH`iWE|%cO?*N3Vg&B58cAu5*TV&fXy%}Pwt~T&#|Ec`jpszi2%)vy z;oT$;Pho<_e6MA=7E0i8rhWZLJzy;u`7q8VEB8CiwSU&fepcf1zsSmIB2OHxJ_Agk zHWr{i+DdYp-d_>9IYN=r6cSm0@`z|5;2B%T7J^Td~d5{!E7l+<*^0 zfb;ziwor{+|M&2cZ}_?a;*W!F?euX5TW}ftE4wW1Zy))l52*cJP6vRx&Oh)| z&f8$mv@V;UB?h1fHXq0=_Xz)r{pJ6wvWivbBmb7qzn^@e{J$NF9|EOa_?IO~^zoJr zg-wUcdp&4g@wK@cS0$O9RkP!C@A`vi`;b z6s;RB1Dm9C(u6^E{3z#G)c-vfudHlj2^fjA4c#YT_4bqfW)YI!vwkmUN4y1iihD#MwcrC;BAX%= zsd*iS_iszpdpFj4^61YI?Is!m|82;f3A>xY>Nj}P0)7Uo9?^Ho$aTE=Yk2LRFx~n- z{#E~53yW|k+?%@hH}KW%Pyw@0dvg-szsdLdVlcaSHt`tM^)4qaeh;*c#Y;|kg#WMM z8hNlA%9q#Tt1Z#Y1d#taoP8D8-+?x<6%T#|mfV7PzahAs;ToSM)*`Yw`l&qI)LF^GYgYczH2j0CHk))VH9X1>1*I`A2mi z+uSlCTvo&0iQbiv{omirGFYUc?@2L-?j;K;?LqI+CV)2#O%EkFXPq_l0j`IqZNszf z#1?kN2lQF4&!qd%eoP9gp-fM?u- z+IRqe8I9zJ1($~ZfA3qO*?6}e;J*Q$zbdguMKHLAcl9n2wsy7bilz7ylzoEl-|Dk} zdHuaul;iM`vm8gU1iP^VucFz_2$6D9&~TdGoEHe;@Nl z?qU(kL^h!HHTD@meWLen)C3NI|7foG2qKEbJh%2IR2FqR+^G!8|2|ZWSw!-hg?Ivd zE}|-6Fq676N56-0{LJi}?8MM*U?5X@4VN5$p2)}8nJ(Ct>73n7^pF>^I0?+(IfMWG z0zK{uS$WmwC13&a5kpk>wb-HH|21NrE3k}~Sg!-ky+S=#(0cL zO;5y<#TL^^ydK7Lj>lDpiTuubxy%~6h{rzz&p+a$|B`QWzDD;y!wTDruhA~Rs{UKc zZ%2vkTrZWI-091TPO8-rX3hJn`cL~+v_t*xi2~T3+<$HSWf33yrf^9u6Cx5H;lkqU zBA7+!LLd+Gma!JYQ}5$i7kGQ^FGfqYF4*IvO^p_}CW%a-{l)HQ zHbeecxxFl8} zzb__W=$Ez8dlvQ$|FV@j3i0eSLOGp(oUh!c;b6)De#GapkID?&|5M!>ci?fi@&2+0 z4*t3dQQ{)jMk$!>p-6;!ooV>%3(T3&u5zD%#PN9KdhqeCC<3EFX=50{A=K;i)a^_F zXHvb(`cbc@?x+T~IXUg0!hOl`E2=n3?fP{lROBX`^aVI+1SSrI)3Cz&!GL!$)0Qd| zUZV~1Mos)&fBI0iQaAV>{b)_GJGapVS8{eOBMu&EIeOYL{8$t-uVi$qlZ9bH1aHud5iZnk=rj2VY%Tfbk7a) zij#k6!~H&ibzOne$3goQFC8}OEN8cas6H3Dd1d5I@clBJ&h>k8Q}M~>L6IrX`E>Jp z9J#r&`#=2a-N^z3Hq72v@LktRTwhnu;s9CE;Ckq4=sN0uyI#sQ)C$cHRdouH z0epqe98oF68;5JsCE431$=^fqeG zZ-Cs>*n@S{>h1A={~oPqJ#*&%f-&TX>|}L!WyLG+--d{H2-qG=F7OC>g(+11)MhUA z#b^Rms$cS$!?5^TaUk<4qu;uy44f>Hzr<{4QkC_s*>Bj$+K-IuQ(O! zk%CD33%vSCa47sA;4Ht!N<<_1;1ada6Kh2B5|3X4`+ve-QV?@gKvgWPEszmx2uXDevuYJz|)B*swUareK%Ck3nL6 z&OU~oxP*5cW&-yKP$~TXj7^X6sivl?I1%N(BoRV)a(|!m>CR;KXEUOGbrikF4h?@s z%fyDU1Mruz%TyCSP3`wtCJ1JaevD4@8_(PsMi(JJd!Mx<&wmQ^AA{)&|EeX|-oNL# zU6baw_~@7VC;V$apvK-j_Z?>+YhE#{aem{s##!b6D^l;%i{8~?>|4{G=(QfVXtH16 z4TS~WTl`j;Jn?z+lln^%UzS(b-e21BCl`-buYlc8Jw_E##BZno2L^^+!Gscg1EaPp8joi1^j4{s%sRd3A!aFv#5c?o+}^rG%JfgR^AMF&Lhf#N=( zX%2b5Jh04^=!zMl(dg$e;dba+>GANYn$L;1UCKGsjn-y=q4Rj#B_OONK6*E=vW8bU z$gvGuFoQa~@zmRo$N%>xmT3h4uY?z#Or^jW?8X_;wUH@0vw775sQ=gD&6n`SyTSfd zKNDXVO!tA!Oz?C29mp({#Q#<%!&VN?(3HmwBHPynj8^7v4Y35nIhQ5G=|4o$k{_)H zbEzBshpU!7vJuQTfCV&x3-o~lNO2#_xlIOv3sD$f!CHM3PL7xVoc?IlKVE0{#(E-) zbL1Xggf*>3-KfB4kS{Vh{IS;*jbuc)Eu6sN8nuq>Aw!UnuDgG|Uc8ekoar?b#&YCR z&y$xw4MV?Aj2Fd9q(ghmq0nx>QVJPsJ`zjmapiV%E>q*h%t> zt(nC1HkAe6QEyp0@(VV0AkV9+#Q&ic-300K{l__uU~9g7g#Sz6|1?}*`~Pb0#|ppq ze?1YvvrGW*;!bw9!SJ=t%~PBIH;*noygWJoKA?Xn5rFpit_MmLAIrB1!Qu&G^2Lbf zrJdV;Kl1m+4fK45lI%YFSJ!_Y-%gkpwWwQrg=_M^v43OlvI2%%vG{<`n{N;9p~`+^ z-DVBM0fKB`@MwFiJ%=WI*;(h{eo`XUfg}}DHM+`mG{6Rw<=vTAmt7S4t=7j>KD{5k zJF{?h>|ONDxbJ_|kVG;;rR$MT8n1pga-{O{$nJI`l$ffaHQ zyRAO1@5loD%4&(RQcAH(MzTJ)qEI{FunWHZ6Xwq3V{Jc!4!D=f@bt{-6xh zVvf%pG^xbsF+6KiRQN2Y;E8z8MD+Ndd6qNy+3(0Q4F~BxP!j&3d%YKt?HaiAM@+;! zgL*a?Om!qbH<8-?A6cUdS<9n9O@BDVD`*n+nVEBinbq5Q&g^A=R%Y)hqK#?TgR!vg0a%A8@cyMZDuGnZ^BDwZ-%nmL2eUJ45Tmq!!#L45 z(ImFQfSRKKXjkC=c>mEHBhcx_Pz~`SJm6JqS7z+TC8nfa!~37-9J>&CY(QxrhYcHn z7J4pRk&I0J$SgF{_1@s{a3+X0V_x^GaFZ2qo$)-AW-PtP+2xFE<9#bbf7RFHr2t0B z0c0W*ScqDv7F?HgXo%ye!=A`4K#j@r^+4l$idg?3eFS^R_qC&ncm-<9Lo88Gtk?xq znc-N{!dMYa_IZG}xWT$nwXgjBSNITB1KnUHoyW5rB+6Wa=hv|kJFu3?e;vKEZXUO{ zvk8PJ`hM)ch}8`9IX-CKxatTc(?dt>=oOGJ$-f%p*KMr zypEUMfX99n%(TG<{7jbnZO}ZEIJyYjwF}Yw7UKGUiJI4A9G-snqQBh1DDkU$%+;c=e0>$k(|IRP~ z;a^h`r3Q@Q9JPzcULvCxiHshyW6~wGiQecEi}`z7YIT}mJ35lL*vmU_iz+abI*C=` z7b4Y|$uN$qH;4)%WfDtZr#{0rzK4c#1#8e8uJ5vYsZ<>Y#V!+3T@iGd_FUJU*t!0` z6~4$PI4(AYj-nxSdoJ|*2=bEYpTKmni`d96T;ZEo)>k<1c6<^gu`5~N8!4Ij_dlNd zJHCEq)u{VN^Z&nt7o5lYZ}-u^9N({9K-Y21@(OsbxHp{2>;v8q+?n4u-==k~-?j5k zMgH31QT4CzujttDqN-Ny32c+QwA)WF^EQ@cqo0kvtKw|+x1+K;5x`!zN^8bc;;nA{k7TpN1S^Zk1 zG@OSrfa*a~K0v8G{hr{?UfURk$=?_`g6c&=-w-2L4y!&oqTkv-!0*=M)b0xei8u(B5AS!I}2Zn?tNI5WZd;j8wzZ zha>lh{HkS-9t|BHRRiyzmt-i_SXjVvdcY7d^fqy7!&P#unT8XnD=y+Y)X z6}$RP#EJgNYfgtbE#cmpR%*KkY1e|*yt|uZPg4*LC1Rh-&_DenT75P$q0hlR4ib4( zAvdxUUUCmhs67PAqWEhLab8$|Ij&+euE-K1oZ3A8d-@4Kj%H?Gzvr0sFcJ>XCRUg% z|6G)pFJN$W>B72&)p?sMITRg5lhSMQ`IV!ZS=Ef$=}t(13rJT;1uIC$x`~pbyoLAI zjz4d6EXDi34`12H@BO_yZUgr%_5hv+qP2>37(VRhM9>>_|Ev4A6Y+mb)WF&xw!H5( zHM_GShwTTd{r-d_L%j99C>|)t$`|KW#I5Qb;h-?Dl!Mz8UuaJe%@5VSU)G&#K3m?~ zIK1#D{3{D+96-10XS+@Oz?i!Hv?&3m6$G|H3?K=YvId!%{h?j|RE2DOMm-3cKBS5S z^Z$l;J-09)@QC1f5`7z|2w$;~w2t7q1y@t{!J-Yb0*d}$33<*W$8leDvk-x8CMUa{ z{@Sq$Td->6gWBMQdiZO06l?ZnV(pgHh&PCp zW+r^mgn|iom<-)4o`IRcn&|Zbkz{q|&}<;WFG>Wt9K?PHGV`Du|L7INTMwbbYz!W( zR`eS@SN6z3eAaWUTjk;wfsgv=_1dpPJv7x=d5yu&1ibh`a$*J1;3~sL3Q{3=3U;EJ zoy}N*IasQR;Qm>(@TajQ13-;(@550aioh6N0E^YZeO7w((nS6yWAG)|TM2(yPaf`j zGJC0rS&Cy{27`d*u#{tD+LbL_Le%g9`ra{O4|(WmRKg78=uV_l6f5+Qs=~(HHjnt^ z2sYpgc=J5$&70_qPw|W=@$=oenjQGAJfJ%JANTF+Xc*DQ#Q($5|9&D1w*!uK17=VO z8(b8Bt9=AZ@>2nr`*>K`D58>uRQmtGPA#R_qwhF%5t-@tt3g!u4BEp6uFMteo26UWlJ9&zq9H0Iv{ZzDJe9eCoKClKtC+x7p$? z^s0F8xqmwyoa3SX@OF7b^ZANgO$p2kmQ}H)=|62je^>HyvA*uCx6z(NSSLaEM0^FN|IPHdzwXQ(O!b?I6JBX1sX5ql0@p#b~3 zR*H|rZ`Av2lTUQzk|LfY4M6W+M{$_c+u(nY^NlmqP2o)f|Aziu=zqtE+ODGGYF3jb z0%j(}Bd8=NwIzB|VX^vGHKK*jsu34Iu$vJ-=-WfR@T@tIro-kwL4Vf40 z#Q$UxjmA*?OULLo>V{LtJ|a#i82t(qq=_s8iz&hmuk#w-I5oRc%_UO)2xYl8wZGqb z?Z{vM0mq-hs?+og?b%~p^i_!i`hlVM`0L-`zZO+8waKxkCf9#~M;$`DUyD{Yk#(=V zIY!~Lo&;;nVbBAx4O#H%Q}`-Py!-ou9z)j7X{IZ8CL_#m+N1VLp88BK6sYqVr$~o3XT`c)eG7=Lcap zS9$)wsgUk~HTsp%4q}VnpItQSruIJh{;>wp}Eo8u} zJAN&p)Zu@~CC2?&A}7p3dz=(veUxBz6u=fl!#Bw=FGXp7!JF;9iSO6`-v{{qv=^oF z_ak=xdY9~9p-1@F>NSrg=30RDDqY_2-_ z&6E$jkKJnc&j(xT7upa?;XLVFbcVU#XQgGf$P#MM;yH;v>B7bG)W#!Cys&4sTV z;jcYa4%ktVmERIXF97A&!)g2&y(bZP13YU6eD5vtcdC1T72mI&xklk%JHc4QTsp&e zqpK_|6}w^epP>r8!|$)bT)L?;hp6Q5Z~+)VXX2t^ywc<34KqYyWB_xZfNG}qCV2iR z&Psf$IaZ(xcAz8Qd+~1P!ePD(KSt!yi+7bba+urdJhHpm`J@1!hB^of5Z$z-_O}r> zvk}T6W=1iwSzQ+u#zg-o(9F5wy7hD zt;(~hDyJOCt_$aHh5zr)(TNOTL!#Jv*Z|D{5)aU>-LeJp;kJ{fA_C3w*6-2;YeKZ3=Gr%-KB#5Eq$ISu=`}$eTKJfo$5A?eoW+MWIug5A%(5=QE z^jOsZ%WF%uOXUA-;2+@>MxuABvs1jIK7Bd4AaK?mG=w|bq*QR zNn%izN43Wk<2p_W9S`Mo#yR(x0#umH(RR4lCNh8@(F1fA^h+5^4Z3sj3Ci1+$Jgf| zrVC;5e5=0mdfMab7p!cXppm0LtUGhBmg-wJHUoyaHQLEb30j(gKhj8#JT;J=p$3n0z}t`9R|BP9UxvZ2k|Q$G=au;CWtQ4622){td`swnkt7 zHQW_0KAn}FJaP){YbV;GA_m*f>vd{iHQDbH6$lTB0Mdfz@@NF@@W)$;;^WjBpTjdR zL^)gp4|pF=aEvVd1{8vKdERlTf2kwiVLQ_KRl)T*rv~IeQ&KH+8QuO8+~5YbW;ga} zE@##Ru2YBatvN@{_UcAVJ{jAf3Z~z%A=SzAea$_460eJA%l`}gMSOeQkC`KNi2Ace zyK~QV@c6gM+W&$M^HOXk{khaj!~SPs1?ON9V_c!P&?JkXv%VYsDcX)ntGAdEoD;P+ z8!RmnFCHHiUlCt|e*0}KU#xm`FfspJ>{ABfv@=BRQ@vJRHt$!|4& zpo3plPIe|cz5fmq0Mhx$&c(T9p!J$UXSc%4yj2JzX}@=|-J+}UnZH?8}N^S4vpebdbj*Yk)q zx6?<`6UFP_NWJJ-^uK4B8eE$?o{Q-9<*D-<%d2E(#Z*Q=Xc5Up?O>`X`vrxYd+Xda zZd-3?cr=)+8d*fXToxc{er6YZ=WL?%t5}F?_{b;y9GoTqmm_AsNzL9yaQrg7cRUzt z2kTeWeG9bitKrtZem^Ku07M>yL2O51*g(a=d-#6!_iY5Fzo05O=z(caB8tG|>+#G} zQ2Xyt&67O(EgHZoy#JeI!r!3s;4r_hM-^N~)?zh0p&eaBUc|u;WW{?ICg-R5LYF}O z$1rg96@CK#_Y!4{<;*k_tOn=Tn4ep~PX=(#$^vX4qRIsOFBf^h8O}r~-fJJEh^s!Ni35%_V7RK$!-8__ii zY@<+ahxmhL{D|k+q(4(Y)j<%jhD7dLllh;YF#&X>vlIRQu-lK%>>#**2W@6PKKvLQ zE*Hv9Ee_4clENbvcMpy5d9S@!+)MCoxhLEM?hf}O_d|EByO_05)BV>u;LLWqIK`aQ zPJ)x@jBsu`L+}l~V1K!YzR!nC5Es8i6uc6a{4%;*Bhayx^&F*x^%OaVM&aY(=lm+! zCXuP(Z_p(=<1v2rnEn%KinmQ4nU06lwEjvc5RJgd2z=UdIQp-|2Q|T4516vJay9(y z1>%sE#0IlL{}}kRczl_t6Rf5(@+Nw~CSv?7k$Xfh z-&3uZ3_Va)MPCrDFUBUlij{er*W86Qc#){zsu2~_)Z#ol5vz=bx4aGu`34SAhTKY& z_q2(#S6y^1pOY2F3RER`a3j2w?uloxNiULb+>3@%o_fez(e<&`F!-zFUmHb_!BgHM zX8Ac%0QJiY?i~5*G2*C1p3AP z8~dKWDHcIHfCNVq|F=e122%#KSGX*I?dW6vU;4kM?Ma=}95CTcSvT$dXG&qxzF!u* z>%NA1tLxEs)AjWiVgCQ06VNRdF_>C!k%DCbgnNAnm5Tpu2hbSz*95S%SO6)KislW! z0lpQzCtaaHAu&5(RgcPq>W~FctYeRtl`-2PO(KzNGduKasH5|qbKhy_e(R0|{YSz7 zLL#}R;Bf0v{?dZ7`Y`2M{I5N>bAr*!-V#2?%-$t@@?^IM*1x`6#?9(Jbj~<$INhCm z&Yz*LLc2oiLd!z$gjR>ng$g-uI+@%#?(c3FY)3Bq*$&jT`^4p%0eTeeYY2YqSK`69 z&>s@;Vj1wIhhV4E!(XsF>2RiftRfaU8~!n}fCyq0-cvJsHMy!a{`_g*JD!9eXC~)Y z1uQp4S!)4PNKRJq9ekyB?;MUN?Sb!ag~~RV$A1hbZ-c-75boZNuAo~~_vL{SWBlF?oXTMC zwTQUnBJa?{PW=QEI018bjd!I91`V(ieX$U~hUdcNpP?(_OQMry#3t>@ue==1!Ty{d z#IMCC#y@0M;}mY~Oa@;yTDPK)p~CKu<&F<#@18wmX{W?%#G~vHwv3%!?sBcSQGNZ3 z7xwD9JDum8$sA*yUQRQozSGp{>Wp@#IxjeLowuAd&S@v3JBd27Q7C%fQzaH6SDco} zF(1l=I*!(PBk}YVy~=bc55WJg!2&Guy22vnxDmYnub~(5+fu$wpVBH%I>c&K8>_DT zI{5vr=zpEb{|WcaIhy(Y-*y4eu0UoHqz%XhD4!>7P%(gfyZFESzwj@`Uii<*EkceM zfOZX3%q?X=m^SI?`)*?ydc*Q}xf5Z1Io+81 zgLBMz7Zss_liWEE?q7k&jR}pSN_%){G@t5@P;zIebH!=uZgA6hqp&h5@Z9yVEOmMI zlB|xKyz&~N!?%b!n&5E@gJBQff7=_1j*!bsq_cI3*C5=5$%Do@6YB~h$T1XNY1GvU*k|25Ac@*pjv%_ zjXCF$yt{$?-F0nI6@mOu9H%_CICl;?7e>^@Y-ZNf>9L-MV zt=D4W^33Q1uF=>q6Bpd0c;`Fp7=Hn4egMt*1HKN2z6)h^N?`|jvx=6ZA+>j}x&2{q zswR$6T@*n((jLdT!q{#+eSf0EvR*l_zSomppIP2>L;_*&bvK9mvXjAC0jA5cT1~^! z|61Q#xq;_X{;v{PZUp=99~wjlKnE;=Hte!ING-%? z83|wTUIvfH;en;xuzTIvCl?c3m|_0OiuaPo@5w?g=R5h$Z`5QC)jUv z7CK&K_{B;xKZ^fO5fyxZA9xKF`5i1!3K;SCFy)chgx81{J5m?+9jtPtd)uAibqBXk zpjc;x0i5!4bDQv}DT%1d<6--dn{EtNGr`q=2CJ*d6!w8ZcK~7Pt{;yVJp@v!!i`sg z)vw6KzeUz76TbgAf7uTsUxVMD2LsU*uHEqIhj5Yn#OxWVB)&v$;1s+?EW9?EeeKdY z8{Ka{>g8w@#I-1Y=cv%VNNvw0=8&Xf@>Y3fm=1(PXNs;zk^2VRs)Nw>4Ooh|9}FXD z&KZuR%HS*5#Xr2l>oA&^&>xS2aqSh-9?LbJTUT+Pc`%n*ShdB}G;W2he9EI9gzFGV zMVNuKiJIxdp#Ew6{#f?@yc+$3&g|i_WO(;v33u7Ed1CA*c3F)vv14d#GFkmCvHP*K z=zTd*`>s;0`BbbL-TWJ<(cDSQQ!U)l8|JQbQaW2g^Fl9i%p__Y$tOHD^j2t3=oYgh z3ObFQiNt*6-9zxZ<6cS>Vr2zG)BvVpz2xWXFYNm~R#bJ?O>wURu|!9Be`W6hD=)A6 zhLesxKY9|MtBzl5TXU-9e~k&~fBFByU|0Ho3zYw%oX05N0gcz)-)8*E|I1QZAi+>gT%puhPWDKlIbQ$754RF2W$z;rEx}gWtmcPWNjB7Jxqw7Tytrf1y7Inlor2oHfXe{gOna~g{f%X7u>Ek^> zz4it)R$zMrYL8I;q)H*16t0>Y<^1LSb;$o`gl)**>ae;&>E^Nkn$Iu%i~EZ$Sly5@ zeDnDFIVnaE=Qpg&*9R8BqJGuxD0^qjMzOz;sR?6-{}49G)cq1@q1w|>Gf0xEmJ~B2 z9YVbhyFSwVEni?W{%s#KMF7G3(D?)$CKuQ8+0gya1a<(J;ofm8faw|301iOgE$!v? z@`KSykGOhWBJJuhfMR@_`T0Emgss=`4iNokaj!Zbfb2R>RwB4#p`||ld!fy==TMfW zKT*I`ZokQX!*4sk(Q7o{J?o~zzI5WX#=rt!MhiXkmI>0@=f1JM9M0E2WMC7kA9eE7> z%AL6HE+Y3u*rw^=c{;csghiVG>)FPPJ@J@AC=FMzH3it!U=ZA6J={eT()(Z~)UBxL zoSm?0>J@s%&kUZ$7MADTKY=wG#QU7fJH5pew7S@xQ_>{*^;WwVoWl72Nie!zKJq*JHoaG9 zFrV|{(0lw7+@g@V972z3?d+JO{P!2A||% z_bs=Ldmjbi@6hW^^egSJV^g|~16b4>bgC%&)%1_rAiXo)KchkaM9!ickJVm)I$C23 z+Vdqwpx;`7dT{~S195?d;J+F%hCHg6h7fI|e++ziD1mjM>ny?}4We z_&|Vu*#-H0s|M2lru*yBLcdk*>U)5H;Zh2K@Sn{0{~;`q)VV^Sv$KEI8)F%j0}#rk z7bJbj4u}oN`|G<{lWc&jfboCXGV6iRD~bObi?Mf*m$+zV=x_D_Dg?hy2In8b(Gg_l z_cD5E$?#|<;Qzd0cz@x)6rW~3@Gpygmm02A-U1lF@6IkXpsr47Cz*4R=>K`YH?uPq zpcC)laUy^b;Qt+>$NbK-&UvStI}OjCjEc{m!~w6N0$uYm6Q65O%W3$wCOmf$Zy@=@ zGGP8SDwAh%c3-?kxsh(F!oX~^3|YlIB4pPp711@gfZBcr{UR0@T>h`_b*{3 z>VnD)Wd9zEltp1E!)rN_Z;9o1pxnQJqA(I|@k#8*8X|^5+$W5W3c#V@#9Yt^H1Z^GvWGg;{A`JVI*R^%J51*P?47lEYFA6e9e99pq4a5 zEzz7J?NZXz?-l6H)l$ds1k?)cP4qTV!8_Q-{V)mX8!wQ3=oY;eZOc6HGqC*bX#9oa z3#q$^GaK*>Q&zr={tyk*-J3q<#J=VX$HO5mVo!g-zN`bOiS9t>0y^ zAI@5H$qfJELc)C>|9|5~hJLe}LGDj+fWGXV%G#;Q*v{PSkt!bwaZO$cC4;{eN6nAJ zwwv))6!b^XWm97bX3@Es1MI8Hy9l{?#dG>h(}$0d=e^7)nGFW;Ar_#!Qyk@gAI~=i z{@)EhA&s^-pVipVbD<@nv!O)i8Ru)KuDcYkF1E3f3_~(j^|R#N(}UXNQ~)<%kH{5X z7VibnU)*iwKI3kps$>?t@>y~Qby?F(!EGyiZ#F7%D&ud*`&G7&5es|`7yc<6f4OrXHgTz);!(SmYwwr3*-jRp!@Tp*^12K3DG6QY#usz`9Gw|pC zhP$H@e1bn8f~ug&VU?-eX$nG<6J2a13Ll9_Zi8B1itM|lnAb$Bn?SALcVsyGky$uK zHEkk07>oh``9TW`FtMEOGQ$BF#Z&Ey!T@H z>A|Xmwm&)6h#ed5Vi|sj{!M-0uk>mk#`E`~+v+OXNGLLaEN@*tg9A=Zxc^u4eP8a&cc5b^)JdADL|D*S)zcWR19QcwY*RC z*VfJDUU3!>G2SCu?2DgMt(|!-an+=CF61Y%e_^vc_-~E%8HlQ+830eB8g%s0-3GhV z*+0WhoTFGkTi*hhK4=P|_6buCKs`bgumeSWB#9j>-j>>K-qSMYIuCJk;85x{T$%mYIlWy`F}%wqHlf70-637q7NVouUQV{EF_Dz6P3On zk$|d^4dKD{F`d-xV-i==mDKD5*)Sb}EtB41(Z6;T3@QibR15 z>GA6!???BZ`>UIS9T^Xz=u~BGSKyP)$dL>GubPukcnyqhJGtP@?k#5@RYX0={e2sH z4_?-f6`~!Q`mk~ahsF^rt_$4`Rf7MgaOYuXhEPQk13g>9+VA6W^6yK?Sf!2hrOtnr z*8BM^oTB@PIFQSH^AD;On-cS4Ue1saV zIbC0eGZK+6#Sd4b#$`O-zX`dxztH?v;-5F6{8fukXMj4;65Qw=D$}W%M1zT}FEb6` z9bWMQ8o^*3FNx7aAnGX%wZtM!SB#{h-aR!;hd02xf zoS!BXtNzk@{A|!|GoRJ+nKd;(wXK| zaPATj4ug}IXNAg7X{DOhZJy3z{s8~-aLR?11Hr90mm$3VP`(euestrE+WJ;Wy8`I2 zok6ufu>8KTZ}|b+Az1Z*wK;0=Y=(4o8|MI#>bx=juP9ovh~d-lFHGAZCScJ(5cLPT zfO2=i{lpG}Dj>5O78@ugknShcTXdoC*&gNpLZK*+%ZoZcF7yf2c_BFU+t`BY{uvq0 zb!K8jL2W>wm*}tRb+VmHW#d%uY&}q_WeD_t+f`KBK@t95g)8fAN= z8|pdFxEI}rZX@!xE-Ozt=}g%4D4(n5L==S!+y|?fy$`7RDB_0PQ_do%lat0d2wxn= zis_3LcmfMOJoFSy@zYRt^2f>C-WrXgC@@2lAhx;%FA0b+X?_+YMe_oA+1N=hbzHdfStATZ8u>Oin*W z#rqn6%Fh$9g*Gsb+c5R9U{7^->T$~m_A~L7nji|4U3W zxC{e$BDx11VJ7I+#Q!Qh&j8rKHdsrXi2D+c*@2F5%4h$*v59-JZmA>BgJ|s(q8co9 zJ*h)N)5>e{JoSCspgw3>6dl@C#O5m&=QWxU4|Iq$q~dxRlY73R^WsBP{*RdDF)y~5 zJ;Dyq-}emF*cq7KK9ov@x3H{>VC=Ku>ZRPL$okFmRllCtbHi0VK>QKwdLo%)+)IUx+s?z@mVppM(3_qs$uU zHvJ?GK!?;p#RGv#sC@$?kK%t-02JY@Uqdk~?X+^Lppbk3ma6jp72#VJKv)kfK!AU- zmy&QBX(Zji-XOTQl=#-XW6eny&$8ZUMIN%K>Mu}EwQXn`ncb?+I`#tV?=B)n+ss6O zUG60}Ked3rd8JsZ#mMUZMLqw&@BuNs;-~;uQ17yN2hk5Zy7}BY&N9yTkI+Zt0LSqe z4MQa!0~?sfO38;x*wroQMeuMt>Fqy8N6KvG$9@_sAFCZL66sHj*cdj^4%`=Ist%e<@})h1R2TRHY`id*!a*sFMNhyK zCZaNyg%=+{x9bYl^0CI%Ij@zT0{@nro`~e|UEP`pCn!fWF&!I&Mz5edyutt9gcHeTXkW8Mu%el~VnuLo9gpg+ zlvmZx!SeN*f*^LFKIp34T7}zH7hHxv;M3SedNK3G zE60n*L-GC80hEj#CVOxO-C!H%_6qnf<33AH=T(sQ1ophAk1S!UJL_sPYw|v|<9nRZ zZfR6v?MPn8f4!Vsg-qDRoV>^Cyn0nu%@pq@5&tLD4gCgdcp4^A5AUlwJK<0Gm)}*^ z%?^1uTdDF=THpGT{$CA5_hVI!Wqk?%PjFtE1ukBqbJO<@k2rwvuc%)&0S)~8Uv1)t z`q%@hgUyMnwYz5pURR#J5ND*B->MR*$a(2(#0)I{7k(|%XZTOz0D&d2|IH5Quf`2b zVGQtZn3o?8;sUb)>OTlS!oR~~OTnGj5|{UBpzE(%XH6Vwj79x0l*$?7Tyjdf z{fN`%qtNbjqvQi`qX1UGuO-m$rTxG{SogfFuZsA)o7jhXaK&R-jmO>8?gpo!^E;X0 zoaP=RK-vQh{de@%t|d|J(TfW_a`Z zFyh8=@EhS*BhBf0tq9A_6nmGcpdW+c+>u|IP?CeFqiEz3TtV}Lv;&~J=*#;4st0kz zpW#8gYDKya^U{H|4u!E0nYh=fHEayB^7=DwG_^b}tUo0dKzug=JCKn+7tKcy2WW}9 zcO~4MTA-X{=2uXM6N`Nd!p37ox`X9Ju3k}?`b26B|A6)Hp~gq*<1})Rr^7j6Im^gU zyo?$+8w|;ps}I9=4A+ij<@n92v&H>|eZzl6o?E>UrNDoFpOLi2p1l$oA1z5w-$JVS zdos&sXUw6icXE6+HGi+t-;)Cy&=LK=Q*QlTx)$cRzHm3lyJ*WEE*K{8B|r9lMf_iR2}J;607Aa`f3pCZ4=TSO9Ga%5 z+Q8QSJ=^lL`UGwFQ0**Ul{j1V!qu@0+DqIrXNnChhL;C7J79P=gbVkU6EN)CZ~yHE z)T3-7fOY#D>z55s9IoHge;9p){}5_IDeUbh=;ia!%l`)+7NV`~$LclWs)-{R3(z%@ z4Uo-LZDe)c{ZmxnTn{}){r!u0ny}tneBBW zXXtqwvGRwUUe06W0#DOj@O3D?GlAOQAKhQQ%#ot(7x{UtOZ;TKLBhI(YYAT@Oi#EJ z|0GsAIzL>=Yvvwtrc+6_gi66`u#a|LRw{cwp`PX$GH-97%gL8${a59cTY$wEsG0o~ zoqh+lU>+Sn+E=6|D5wR8UqO74234yPS#Iru)t0KkQK)No(AiJIw=+`ncN^8b4-B9h zE42h@DauhE4Q~f?GEdM)H$2)A25=n=mX3Uhr20JU0xW z1lI6xb_M$|TAykCRoSn(6dK^&ScmwQcqk!HLXL$0#gD|FjpvE4j}?o}jGkm}aBV6u zwz`hnor=!cJ_86e-5w}9)2RP@7#ie6-H+YAsJQC$&x`F#$9u}a^-&jB5v;20Qp)f$ z?~40?HTXWOx&a7Q7mmKHBVWC?rdJ7XNt&OqFPjMSAAFPudKVY0BQer=x0N}ba}-XLH;j94`4BP z`vLg)ddGFEp@bC#8||E%XzM+&S(w2ol6`FwW&Pi4GStpy@$bE`TeQ)M} z6lK*F=9B!(pXsI;AO)YV`c#{MxJ34QIL*v}72ZIqg2uV7yPj&`uFMtK?R0c2d6mL7 zK|tl$ud(*=zVXiS=i~8&R}xMotW2ntu#Z_F56O$w3e!94zVFN;oAie>jarf_;m4?> zOBP*9zuRQ|bXm|Tg~{e#D6(vYf~Y+z$D!Ew@pI#vpatwh;h;^8xpx&I8TwE{1CRy)e$kADll1Nz@(=5+`3!X4W%tzG!Kei6&@Mo zk!9f^2jKfh&;cx)HyQ@8gR>h<1hSd>;^L7NyjS74fX@QN1T_1gBF~|{lMVkC`CAMi z_Fsz6CqJKz_7yIQyRq1y4K*kl(@Xy zw=&#a_UC!({|5T#?~dP6rr8c@lCypB^%trG)F;LNnL&T4KXkig{*ury1`${Sdp1P^*2O1# zAp9r)KmVTwpZ+-bZw!u$xTDa*SG!}$hrj0Jh6PNX3^M--EK#$vxusqLW+EaZ$XL#{{>Z&;TBw-sflS)d!bi(E0IyLVy$AOK0G1VuwEN z6Zr5^-ZSAfkxk^E(#PjAMPgk1SN4nC9UBzSp3pfVL&Ao5Z+c9p$KIhYy+XLK_oSQL z_0WkfyIZ~0;ipjV?hubIX8qcnA>lMXI4H`BQzpC`HmE6zdvma+{J2f>9*4R(1MdGz zv?H@DsxhO!W%Ly40sCU13VaN@4$*;=8a5D#?7-)i1g*Jw-Xb8YIXQ{mDCWDs$eYyf zy-(!v70O}@?v)$XBgU_ZC#fEJ|J3{(W1fDDzhq|RXXPqs+FeEvPzF6>E>%QrutmkG z04hL~-8uF`^y$b4Tr*8Nit@f@gZ_U}G#25dwfD~$UTt$Yf$YJDR1s`JefsvSI=rmyj2_6$P8jjRsX3Pu`5Ux{<{(f=+OVlRJH}r^8L+0xNg&)K~kjk zKExV2!3M+!bWf>)jrgq%KezT7fu@I<3aI_R%!iv#x7a@5{`$>4zP=m&?S7^fSj=Gh zzpR2;0gETB5+JBB4(k6xR02Lm?qXM{C3RKJ(ZDac5i)WIh_A0Y{m8Me!v+lS?U&d} zBhLB>uE)Mm8hW#CINjWXZZ59}ocukicb3tMJ(=uFX77aiED`o!;Ci;x-pS+q$Sb_a zRjKjF0&7Z=c0jGgwRw}?j!x9|lyJA<|L=Nbu;nHAOjE%2{|Eoq#OQoJ53k4CY{2K7 z9z0YeuI&X*&Qs010M;-g{9I&tbXBZD{5fVwd=#G^|D8F~rDJar16+=uj`xZG$c&jb zv0tfH-vBGF7=DSh@~s=9Km39BMz{hB*o##959BY#Xtn;W+r2oiDJ5L-fFc6hzgK%` zK1c3u7~FqtG#$IrCQ|9LB3cLKe=v;yD(wFte0v|=w^5XXN@Nk=gxAYc76w&y$Q)#j z{1(~6&gNI}{#(cqp2HtE=WltywjzEpentH{Qt^9ou&@0y((za2M>Ft~ctI8rTat=` z1!OAv(P`g`J&mT3d&`2}@ek2VYI5W;w2IBd`n9Mn+E3146uAdY{oQ~?7)USCU-T9~ zjZV>(Gn6M6|0&8RQ3`A+*C!P)N%615&!+vWSHswnY=v?gqjfnD7tZX1WU|+m6)4tw|9;7z%HhT)i-B#pvSEC}mMjgja^qh*$ zTGZSuWc{*WbsKWs%5in1g9`r{I4l=h6p!&1_1g!XbKpvodDVp{)lK*}?N8CHB3MPT zVzhQh2@o5Q1u({($StL?AFaXtOk$ELs1S<&Rg)y%-wjUxIEU(#x^auxe`CC4Z zDf;8t2K?XAhex#G5GUve6KKKncI0u=62%9q_-7~$P?LfK8jEF~LC*bbC=aatH#+UVg_F&uk5~IGo@aKac3ay)g?)3+@itIXo6h|V zmfe)z{KHs{E?iNo7S`+&aWd@+-WkpQyHFqJcV`9h-H%>5R!|96pfZ3D$n^;Sh45ib z@cykpeMkOY7Ulc{{OVa$?4kVBfC)ZXsX7@HpM;lh7jGL+A76kL_iC(4{Am0XJ?8J> zi&oMhx0zWLvB))0IfKCr}!DIaXJ%)?r^_}R3Z-J`}_3t3}xbX2_|-JB?B;- z_o}+f0=^9}B~aGS@`17eiu#3rF#-Lo_+Qsa%&j6Z+B5K-vyr8E{ra(Au(#Q<0A<<7 z<35uZQ_~rIFJ3cYc*2Z?X$b>}1)>Q{m;y8|wlR8|PRp;T1gz+;CA(YL$xGeNQ_cma zC)Ht_yhLoLY7px1YH9r(h~9Tvu0sY^i)KasPDS|#FxSm6%QE2Ks&8x(kKsQF`SSSk z{W@d~bjSi&wmc8NmBeIZTN z|H??~=Kx#D(_7xi_o6rics=fczDX1C1;`)aCz}Ji6tMW&OI*5XPAo>5` z)}Tuu$OIVv#r~!Fi&NOomI3%L{xkBfYhdBBJBP5cpSijHUc5J%&)wSl*_}Xq{RWwo zwA4?1PLyyU^hN0RP)VvPesl)HoExz}w)XGS-V0}$!=U+{*XXTTK`l>uZ-?89sSVqm z0VunNxP~pT!^#_~?^$YWIc#$!UcC!SVM->0%yFLt?aC?{{*(I*;1BqJDW=m6V*RR8 zeiLi=Rq&fGQU_Lj7KWXPT>ZxA820}7J9dfc)8Aw1;@^{bJ{;>Fe+b{)8^0CH!_IL< z>555!;ZNl82hhuv+4~GF{3&9K`FO^Hkq_bCQoDM!z$wP3kd z!sDsDA3=Bf`^>(YO6^VmXfG;nvqo>ir=N@T!lESLQ9lQFHJLiNf@;@<$eU<~4T!(D zhC4DfFA7K5itbm8*B;91E(1Hr0h5*HC)B3`@AB|k=k}Wze_D>@STEh8+jS4c!eyv1 zT8_Tojas0uqpM@zGgYHvv>+OL5pcOGTn)>#mO9_Rs2rTi>ph9DUPXoTM0$w2F(dsa zIvSSYV*~C}fcI_|z*K(QK~X)FH6T zQh)f!K|Y&$OlQ6wFO<+FVOYY5guV%N5;7&6k1vWBjL(gIM$WQqgdM@WZ`>hnIWjYS z-92taro|LTgMAWi!j9wE$CUni7ypq>Ob7eXgvej$@L1?ha#s2oKlQWO3@)3oVeH>L zztC@bzx2L<2k2I-mQ!`E;eUwF|0m=BwF_W3urB^D|1W()hjIea0lV~;L~ZfD>J(I`z<=>?T;Hnw4EcfY7yfm-;op8UJD|td zVVXdIf7RkzRAEYB4(k5xUzB&ROymG?J<`eQt^@x={NC8ZOvso)57kMc>xjD+idGhzTnv;Q&|t{n$RF3Nst3Zaea9Q=N>?HX^B- zyhBqEOM`xSf17_?3#)k~G}D>v4kKq@6R)D_AL;pIwR8Mm)a}+rdDD!HqwJhfk?eRW zCd>DsGB+OCiu(R{_+5~+mMZhF=r(Il{po|)pRq6#zW?gOd;w$SZA3bvh$8iF`8yw;NCyUk?6^hD$@V0GFsb^LO) z7?Unztoh~m?y9_6Zr}6EuZiJG?@z(c>0v|40|@DXWk}}d0mXt-`}dM9$PONR^IpDW zrdeV%k*NENm>2t-j-qu`5vQkq;Ru$gFV}4!^@|g*0AuJ$NWq!rr;m3cJEsnd?4_bX zmajNp%2E{NC)oha|Fc8yUv)v2A<<-Xs{^ROm8%1%I2j%uDa53&e8l!IMSq|M^0&x) z(MGYAv2Upgtib28KK^&ST0#%d-y|Vj!s+-2@weimE;W;nP%~s&Banbfprr8Q(_~P{g)=H$sbZ6{$zg3Ywmcmi1k=oQvMY6t3O4RK336U zo?gD*v_Dw^<^6)+tiN6Ra+X3vXz%wP&LX2d6pZu%_0sz^4NxAuHwYH~h3#If;lbQ% zDBtD%pZq`k%OVW$V}il_O;JQopCvrOZQY3gnvx5shOLrs)J{Rh-sQoq+Bc~AHCtc| zAi%#YL6QZK_qR$ReOK+R9Trm<3s6=t7plMgO9lG%>P=t(3G~)>V0Knd`lk-!%P-;8 z*J2H_dHdbrOknzn$s0R~=)aN_oO~7rc+wlLr*4k^Ib4-N{WqOUt5E(ONo@XH{LS!B@&vVF3 zB2yG1Au2-Vc^)dt5FwJGK^Y3a&%GY&J-yfO_rLzub&h@Zyx0ET&u~BY^L&F?%QS=1 z0?7Z{6y@6RJYAfD?f~yG?0Xr$%XF-2vE39CK|~XJO}?d;{tR<)mZ8gAPiJj2a5W1r zJPGw}S(N1cxotk&*YB~n(41|Hi{WRUOX!zSB;k$to^dyb&o|L=G8|>iQM~_JD(sy= zdmo~S!Qg)m@qc^&Pw?;pt64Fv)bFwbTK^#rrWiogd+G1TM>8{rrv<&QLz#PD2EA`? z_Sveygwa^+25R2@%Yv71Sg?<~j=+nyv zn2*=B1p_`r_RyG7?TR90a24v1A5iaH1tYpEcAfp1>(Kvn%kLOV%HAGF;vPo>)G)qp z{1@>~LP;tCg%Z4k4e$b~nEAONt_0Y>LAT&0DxvRl-u}WeH|H3@x366rH=~stM+R6p zI7iYyst%z1C@b&jS-izaZyq|LrPP{>fGAa)RasZYuPV0re*F#=EsFRD9@;Cuiz?6=8#JA>R-LHsV?uk2s`Uq0M^+6M}>9w>zpBLGQf7t-j1c)mLZx{YmLo_x)&t@t> z@f#WGLAHM>!C&|fl>SAW_G{c`aV-nX_ z+^Z`HKaQO^NTl!~dB8-bF1*J~kFU5!`!Ap6`i|aRbl9KJ)jbi`Q+)-}5=()Zm;q>B zYE7y<-JDVGXzvNuk^G?cbxOvXj^}qie9CU3{Ob7AkI>|^@R>TD6a{}4BKIle*a`lR zFxfR(C*AzlQQ_TX3Uv#bPFKYzOZYneAF6&cQRZGGI-gAJdx&TI7%tw$!)(O6oA)jUnf3L=S9{*N`Pd6ofMCez;#juN)wb1AHF`?#~&3NL@e|RUAH&b zS+@%B?OW>n1L-UJgZO6^_?ikkQJwc&jCWUv3P^8y2D-gje z&m=s6ryU#Lp2+_*CIk(K18ju;`CIk@-bOWYJ^cvT{Dbs2EWw&7Qu~umhYeWk%2-P2 z9yIMIHD@6?c2kT*s^|>wb9Wm0wMs#BY514-mkki^E!H;`i>{SMH5;f?Rm?i&WC3z; zeSWM*MUXlK{ErLpZ+%JP`$P0wgx>*7cLLeH(V_MtPv{&(0K&cT0Ad2#1QEabh&m7} zGzb5>y)D-^gAb^VrBUa-@NfLTp;i{a*uU^^`(NB%hX2<84EwsD?1lXf(Qj-*m<=fV zm%=dpfBXMa;`?iY|01BXH!7}iJhkJg2wbb9ABtLJ;ZK~~S>ZjDY#sg|9xoP3#8OwqHB&g=n(!*YloWCe*JtL9- z6XeiGIIj3^%pvwYLHFMl=3b`<^WEVGx1-JV>4aGd8p_4J5^L!%A^MQUH#4i)_OX!# zNY83ktgrf3IxK)`fMgGKRxB^Dx`3*LaX~DQz+?1S?S_#DhV&45(JE>p1(~mVfZF6T zEYFYh>ra6LP4F*)sqIYpN=|HY3gz%AW{JH=1@t)he;#~G0jy82$X^z~Vt+%v?182L z7vQ@pPhCO#Gj-vNEMwMSI@E+4c)s81duoDaa)#dsEx>(tXa5C`CUg9|@%!Vi$0tp= z8$X`8-&f>ae)pC7%2{`+;Zm#2y56yr6fBjG9?OUL0_T&zJ>CY#QO1<-70 z?F{iG7E<`n9$2A_X#e-Si=7RuX00x1&1}Mk)%>*nOwnpx>(+TIJ#L79Qvpej33P%ziT};x%l9k$w?jy8jb-S9*H_)( z4K7JhD4WuRx`B28)Xw6e{$EHog`W@|X79%4%d6|K`k#<)_tE`AYoY&jAK3}ZD8fpB zS%k3umxi2N`TSipE4x2NKCqgZYNMEt_nP-IKRxKB zU*&DWGEC<0tW3>1OlQV9ss}}}6q@b-EtS06O!S#dkIfCHb#*7+4|x`KS7_%k^*^Xe zTMMP8&urJ9+|^zNP*;@iGi9)*li&q2lJU)BmG&ZX{T%PLm$h|?iuEU8Vh{1gL|BOB zSe>%oIrkX+#WY^GB)RRC=pg^O*iNQYJso?ESsfYaK}`k=7-3#*e)8Yk(XPyb?ueGy z#ctj74l&R68p{6^{`;_v>VVN9CA_i#t8K|A>aS<X(i!bCA(W z*OwlTZ-~F5s~;lF@8FXDM$$HLJI7r9-$~eT;O-n75)ZlZ%+J=bm8rV zpNPi-tbhT0n(D;keAcJoBsVcT_#LoXnHr_zFXM5=`J7@ri}G7F4_N?teX{}jTl)az z$4=Jc-kJ^24NhZa^m{6Q#rSTf;=5Y}yZ?MiH|6ux01JWdgZ|vus{ zz_IM^J0)%%k4Y#nbR~=TD(62rpvjEEe<^9D2r~^>mUn(HQ1vazF=46Nu)ZQE= z@X0lZ@CQ@>8-;J|$mQ39$lvmQ#q%A(elL*UpD1Aj$3QHByn4F;`||&tK)Lk}w+8?E z>vhoIg4>k~$Og0_o~R4{i^Ejp3cR!7SojY!eqH{z6|k({@UQFteHh~P+wia7vMQnN zu;)qfDE`k3_FBL}*1)dyMCmjityL@X`(9kW2EpamHl4;Q2R3_RjfEMTP=tcihtVdi8>P)F(L;cIxm>S-2H;bFw zZATAMUM3F|2hC1wCMx)kSkdKK|E7SK1(4rUR;)}QAGmmhyg3W_KMS{=ihjXl>>uzr zd*8+AyFb86kC5xXj?YgYdx-CEj3#$IvoKG^{z4V=9CL9_kSjFDhE)OcQt}A%%JSvy z)zPBLz7TGBmNl?ym-PQBf_v+J!nzc~LV+;=RxL=&GiBy|$^y*t+Yxb;j7u4}kzAz; z(*X~oa&ExU48~(3_Vg^BxG&JFZ~=AD7U}|Z1N=+%Ckto_U-2Pg0CXOd2Nc3iSK*uK zf&OtU@!4qj#EtYp#F&;)1n37k04~Two=Xl^)(ZZLEFV)cB$a9TS=-I0@C_ zdolC-JN5y(M6S@;uN7_TohHI;#Wy#LY=0A7ig~D;w#Ht^;7x0?Q*c%Pcl6hlv2Z#+ zvWky!w(^7iD*WDsCiDmAB0g1X%Vuv_SE^91yx#h5ZO)}}0#X7g3&@=`R}v%GH-_JfEujiu~Jw{~oN}!Qkd?__MKG>dyTV>;CfpU4!^QT}|ykduQSR zRRP=c$X*=M6*r>>SP}nUkk?mluDrecx9}fw{r`^fLnQwj|H>1T`-lGDG6#8nq2D?I z!+t<10n$9ee?i{waIBj?%OEV+@W^|StC3F5<7E3!datv`(rSGF0j$7on1G$Zv5gA< zN}~QrL;)4)o?i|dnBbmrj-aJaf_`{``@n6+4DGXU`5B1l>U-7QXPw@BK5_rb#FYPs z{C_oKryb}!lQFAv293_j%)`^pMWCs68SK&c)VZNS`! z-<`c^5pppdY_n65U7Zf27H>i|v!c5VW$#I^47!;5WC(Bi17jtLxjzT1y}^IMXiF4l zPrG;MMZU?doU>E z4;(j`!IJ>~Z*tu(rg9ZUhuf2yLnY8ZhDo_sV-D)zNZgN9BFdpbO5snyYh?~_FU0FG zRZkjFt;_Q6x-6TZzjP0=qG^H%-|U5=1}TM8an5vDcVMWD%RyGYl<5Gw{A#gjyzYG7 zNxj%z@|IDkeOC};pJaO2X?T_UR75^NxjT_6Yc;T4gvdv#KTQEr%%d|P+?ypV$+>9* zx`)9Z%;%T_8#)Wd;Uro5ujrj`Qv;Yu=RtdTmO7jnH#Ux`3HAN*vA5$sk8hbUH(`82 z;e=`M{X2+}{_qRJJ{%+V$QPZ$M260+wFexxy&UMFej=lIocEWCdQU&*qhx}ksf&Hn zr?uK=2Hs&+a*$%t6J91S&h?!(t#W|EBs;^-bcFYKlgIWB?1JWqbi#&+ zKWGp3`(s=5h}Q!A7bhCY_6YfgVnehrts_(e*x$mp@Gk|h-7hg#5CdphA>#?m0$9u- zC9o!dr3>&MPvkK(vKIBv1m20>je2P3(w{%jNy)U-IP|q+@bnwW1h(FzYf;)CR6{*xX(EQ15J(Xz+uXIi#;v=7yi|sETV4&vy|bshOJ{5R+S zJ}?U-`00g>sfPxz2^ z4gXKE`&R^eGl(9Z2z}QZ>AW7yd+Ex%96;xuM^DW|5OI-y>$XJF^YG^%6ZtO$`P2Dk zdZ6;nkMG}1-%mPs0}7vK$njk#9UZyv(9t)HxjQ4M1Ijyn;T?BZID64NYBvOBWCi%N z&vS-r5q&J7Yi}+0FH6PYN$hw5Rq*2LH~YZ`u|%zXM4`~1iF%cM>{&p$;4c*#psj^de^-*c#)rAkZYnH z?!oW_Q3Zd9`Ad>h>o{3!x@uZWmNuMy2U$eNs0b7f?_9(T;8L<M>a|l1P&EMg9h+2HfEB1N zpu~Cg|5pD?`}Z82cnxavor&tF5#9F%7pCP`-meHi8GK)K!Q=4!leouFe5We^oxqT$ zQK$-_n!pgUhf(-e@q(%hN<-WNyD$*TB4(iv*VN+GRQp!{7dfDX$A z{*C`IOEBz*R=^%@?4L1+)(4a|urrjsK;UPQ%y`W*&h5w-d=kw$=#BTB!>rXPxcZv; zxy$LLFU0)xPVA=G2i$jLl4gCrohQ+0Zb9W=n69lsP9F4uTX~MH%mMfh-t>+$$t?i; zpM>w}iubIS)y?Nj!2+n0NQ}QGD>o*3`h;m<^Vkt6EipxsAokCWMgI#v{%6p7ix@C9 zvEJwCd%vfOG!vywzF1wqQnV9sUVbkJ>VhB9h@L|){w`|qrSv3feq0+YbXUHS>DU9u zd7X)Y$H`5yvvXK`;(%XZFGizS$b^@>&SzOj4sewmpcHe-|M5-+TG%GB&zPXI3PoS4 znDjFFsW#px3W=jW@HF#3UqpS>kvO6wbMv~RJ9v|fdIIeELSpK*)codu+)TvI0^DKEY3> zpvspM&!;Mw=A>rfT1CTR31me=O@LHFG43%UT9}ArC+x#LDuIP#1(+3HAH~8GL?hq9 z1f0gQb)aTY5ASb#uvw%p#!sp~sr}2Lz1Hq2;J(?D#ihz#ZTss1kzs3KG2vqY|4WSj!tLw)F%!2x2 z%kZ8wAy9P)vGzi};oq!*u1T~Dx)kDH5kZLfFbB|eW-H8!*kx&e&Hu~JB;ir*nW)~4 z9@xpu{W*;WcLdmf4@`bR-^E^ZzGc{HCyCpEshF3U)t8M~oq56BQ(ipSKM3D8fSuX? za^^eLn8ULHv<(j)zm1N*Zg7ZO$pNl;&#)%n_C8`FgX7HP47>>6*8m&Xg)_U0?%%mi zC1!6-NB67lv8;Tbe}mAA;PfgHz#T6om8G3T?wLU3KTNiJK;5saH^43Dj&--=*}rAd z!^$8&>&tl_#5W+ORT}Ird}|Z1NRK-W$Ph+h1(LZl=_4t{ywM{}2`EPfQ=auThqWgw&QmjcITK!c0CE!@hu|W{}65e%1ofrafM+0(i80_Fq3B{-qlz>L#!-7Il6&665u~6vH0fb zL{J!E9`D*%`&bKps>4_MSh$Dy)W>~#AcF|NEPxmQDWFXED79Zj`iQ3C^K)SF)&@-M zD&~Ke!wRH^%ZR6{dXnn=8mz!)-(4ISMQm6f~_k^69G&eV6{KR z|I+@K!vDWUjy{=nJtn|^#{j{G{tjS#5UYI(sF@Yqqd(Uu@)!Db^aTC=18z`Wz8{Y@ z%b{77t+5>;{=35l3jboq!Wp2()S0hWHm^%UvR&4tr~Zq7-If^f3;ALGA4UcGTaUGh zpyGecAbyNYT^WM$_y7XtD0op}(&(|mcw()a`KA%49*^wI?@E(f4L(J(r z##H5XOjjIEchB>#<8ERqTNdYQy7+qIcUxf>hm$}26B+JQa1&4nrD2^OAq6+bfMT2fVkz!fHyh=`O7X)0NlSOoUOFRW-|56738l6^mO<<-9(7)$|Y4Gv(n8FOb)- z0pGLG@3m)AcSdSlY3c22ga>T^hhCY8;9V?$=7bH$R(wa!vYF{)m6>>zGVUVY|3m*2 zo=W~%USCR{l!1>|7pwAk`F+IziU5RmWdX7dVg$lSz%l|^fSeq{zb<9v-c|`v1N}%~OP*C7-scRh9@Wfim|Ygv!I>A_k12W_~+c`HNDL0w{#>b&Q>?DaB&9)NXt8SDJB z-aloXnnG3R5%Z+|In{k)IfC}-)?9E^2*eSn_pc_aSux~{fd311J(l}-1=}Nu`)4vQ za}F`UaMoV;Ao3UXl>yi^x&dSeBf)xK{F15x>I72tzaP)3n!!l!`zo(gl6Uts$drE; z`Yj4DE+CNsO!VuC_z%&pD8T%@*^N*c9R9Cc6C(i404xv22gCH&c5}L)(rcx?*7oon zT!ca2hTq&8*~v_u6ioD4Ky;jy`@KQ7-`nlM#I6QlKfU`WlX%~9%JI#u#TLGSSJx!u zrhLx1FbJPIquoYmfHJWPr=k!j&4j1Yumpb)S)?H17{qRXFMNx4`~k zj$`olQV`wd(LIT~SNd&Zsp;O`5G(7y;W_T>&M@Z>_7bY#?r}0Y^YHdkU#p^OR$AIh z?baB!hcQo67!12(9*%?pk2|urgSL+5dOvM$rh-`U)ez- z{xt(wnSU0J>_h-L_??6Qa|Mr8g+S_{1W@k=79a}xH7}?X_4#4`OXM}*(~rA{N)bB@etm zh!B%ektv70slq!h$C>-wd*DWi00yCLv6-~;{Wfu;Xi(RyNWD$H?6!-yrt?aJDh0kK z@oH}X;lDOMWi;M>2L8J@cinwecMpE|AOh$E zmo_xOe}8V5Md*%Ac?~NtfKNIZ`!S4XY|8s60W+cAU*-A6_vwH0`u1BM+-d-Z@-Y6_ zt-8j3+ikk1aRE;->+cD$uD!>kAut7?_5gj7{QK9)cIP$X->yVowK@M=nYHjU{(m(+ zzN?wdvz>W7-f>R3Q;E@1MSnmoe1;jDCz%n}k7t|b9D|!5>i$WNaL7v<)Ya0lTCafoeZgLR zr_c`lighmp`<97Fx(S)|x3M&_x1;Rl!c6CmJj2uEA6H=7s=Xl#FpaWO5p30ph(N?=b!?Sl>USB)XeWibCLlx@#|8bZh?PX#uVTA=xMa` z^*pkMO1$r9;&Q~Di7}bazks?h6Nsce35>>L0c?_|VtXN4te$Lvm_76V#sMh)H~%l? zs}9{$T3@N)Wd~#lvT`5m42+Q-^M!%JBv=GlknHICGE+mDNwqy?T=KZ3Oex$AXL+5S zyQO+aM+EQ*eEtNOz=6yL>3|&=48y;Rie6sq!v-GvA9OrLVG8A z)zkZMB2QyQHWK}dTP=+BI!RW4kV;Y-R>A3L27fdB{_lL_v*7kJc$ZiK4&3m^g|9qL)#b+{0?;=G96P z2fRQA@H_Tqw!6SNO0KOP?QG(wcJnO>?rYG~qp89zK%y#o>d4m|4(;wO7ETtxX8+Y< zC5^?qzYG5Rg593HH?1$L`i&yDoP}!rLo#OR15M2%_Fvv#@xL+vRR_lsg$@fYjpP5W ztj>;Dxbd(ClVK3r^Xip(Z@Gi0Tqst2ufr}GqC<3tdA+IsWdp+dT6MsB0Tc^pzd@ls ztQiRXiYsgmfHVXh;QoC0y{pXK$m{loJ>Nq$;0(V19p2|OqJhms00&V7xl9CnnJ&Hs z%wOL`#;^&0y40D%PF%Ivv*B0j_w)FiJ+J_;5Orz(d0o!a0XlkW!{Tf~2jIc9w;=`? z#AKk9L=I(%-S?o?8wl3b-LL7fkCD&)3}1AFpC7!-p#OoF3Y)%?*}D7uT&%kDXg_9q z72$XDfcmNI0-K-7z5SS4KAtl=n4f-}dBpA``4bVJnb;PJQDEdf2 zl_q$Mo}n7d-MdWZy&0>=Y=r&1pZ%QKtA0}a_a;6;3jY#Z-seFE{~7=9VrP&XL^dO- zy>3I(ydMT+EOxL7xz7SrSZS#wW~OKGA8Mbo;X_&y|K!5MpQH*fo~Yq5}AU?U@sG2sDl3I~+h3kiq%FDaki9iu=tX z?raO6)Xpmf^SGTV>mnkJHhji&LBHvBtc&UZ(jynZ(jDTPuI)Cb51?V-)zxiMf_S$M zSZ@tF`{I>HgUYcSqgd<1z+pdDOcRu_MT5G4W`EYgPmg0|&j#Q9z_MZhG5bAPX>Wnu znV^3WlQD#1Sq4@8#PF*NQ26f^yv`V+gNZ!PI8e2aSYj~ivkR|3k?3JEpR^U#zjAO9 z!hh)dg=zEt=GXOiVqR~E4*h?@J5~{pk2hbhok3&=Pv-rugbUn4Z}3&-13!bhroPjZ{@)f(bL@2urwG3P zHk#oL+;cK#u_vF+_HJl|2cC%C*yhYd3v`(8=TEc)ol)x@!s4uE+J72$JbspQBZ$(L zQq9;*#BvCWbw82^&hHmzf}5YpLX65#Tb`*TsQaC1KiTm@rHCHCz*96JL!HU{>&ojS zpfJzn=OK=rgI?w-X4dzGD_iaVOkS*=vsGhyk=pYBJlq=Ye~wr-N;FWMbzdD;x-J!g z@%X_d;AKhhdnr4K`0T~=AofJu3Zm?&--30jZXH9vdUiC^-xz<3=oQb)_bU!igP7ko9=kB*>k!2eND zeU&?Uu|uG|4wHvH|7P?zCIa|OKQ9f_w}=SlFzSZMR6&Y>?W5HARQdm!sezTT8Fk=5 zOYyi2OgnxKHnbRLFo}PWjvYk-rJ`F|T@BnE@Gjl()jy%cXy_%wCQNlJ5e-&GtNSHu zt2v731>qbI%s3-hc$8q0YWZQ4#c zRlZ^F#7$O=_5;?Qu?xJv+|+J4XDREjJb6Gx(5!uY2NHMB0<|ld8^4xU-V|iHTK7BA zp-cm}P0;;`9n|dq_W1Zk9FvLf)!XxCfNMqmGr;{)qLh!Y0wb{u>ibi7kM;hj=U)~; z^}+Gr{2gM5x%ktsB5Oc}@`GVSI@5Xfo{{(B82bP4I5gDjsMHz20R;%`Ly$$mJ_B5?7Dc6@G68)9geAnQ9+xm5* zo|nQM%c@D`{LX$5Bj5n*xLaWWk5b7f<5O$$b$v?{)lH998`0tmF=8 z$)AR!N{+v-O~#%NZ#RkfA_qA}7y3)1RQXDR{ibmH*Zj`tQct1+7(mSWN}z|6`n@pT zyA*!34Vu?AM6`dS0xHU5Dw2_w#Rjy5_nQo6R@14l8jJNY$hqggNu(T!8;9m^AC+~( zzWVjlzo+OtO%MSn<2Oz(Tj2Yx253HCJb*gV`UqLDU4SS8dKg1}s`0*t}Q#p}c?f zGJHf{lZM%3iELPMq|AOo3NG|;3dunhQq&u`fo0|R4KmILww^u zxF1t*X+hPswU--Yet|zP%XGMDM34Kh*iSiwx!eF1$MwkFNE+r$yh?QWJyT(myC0)1 znNC+)GA7G5fd@F^{T|)SZYhoZMSP+QR2Mb`o#*S(465hkJ~kjFb=}e4DQrev=P;|X zC;03S+7^Jn9eB9&>?ZIR9CehHlapMs7O(d*dxgZar~E=zZ*44w_WtX{+F#9MW)a=? z!vgfi1`GrpvxrkxU@t!9f93wN4B`i51+4$yYXAMggK>l(V%fflT;{bu#42>h_fCN| z9EHDZfNd&4e3BdGk#T>9)6i=x06EK9IBAw++uB+!05 zssI$icD?H`tCL=xF=S#7oWjn@$Pv8xR?b+520NtrMF0kQpf_X)Q@ zb4J%X&ry{~iALeLml=iLdi+ysa`0JXsr|1Zb?b-}-O z#9d0y-*$TH*PsO00RG#-xSv1;Jb(_j96?Sl@2~z{DOeN%gp9v=bm8CX{bKrbCKL(C zN`##P>hDpOVE4}j5)=h!UZ37)Rw4k|(>Ttgv_iU94sOjy)of>U5j}zJn7_Y@TKWa@ zoO@^hFEbTn0En;R7a|7A0>4oV-`*JuFqGdVU^-UA3bcU@tjGDN!0{rLf|;-dQ&1KR zAwC+*UmuY(Y~XCJg#WLHcm4%LeocqyJNTF}tbp#+=8n;8F#^UfhFZHjdEDbfat+~P zzJQNy%J(=KHTO*?0bS>-#QrbC43;3*+ee+K7rV0_bw|+~G??$Qv%i}f1zlUL-;YrY zE=Fy#5o>S?PEfqZ8FI@DWF9k|+|D&Pt#6q&|0}F?8tTO*K>Taetu+66H&No_>;Y52 z_0X}k#j~sf#Z^INJy!k~^pN;GngQ@1UMD-hOQDb3;9PURfIr#IPU(4>yZCeD`^XPi$hTof z#N;=`3TR*Lrg(GNfu2~ux3F7t0V3^OKQRRzwFeGK>RlQ3#FaHv`3&`BPEYjhM@X@ z-gh~s=ydbPk^h&Y6Ec15H}uLWV#%3UFdrXZflMYp=zp9u5>FRY2KGHo>EFf6FG1qhn3NKflb9U7m z#FXe%-VN%lP1wb4BaG4q&SJQvt1y@Dz6&&{~4_Dt*{XjKEtxLvyg-k#_g;RpK zqzSK6Dv16~`(ypTLabq3m+Z$-Y*m2&#ec{RnAf-aCEAd%2S9d3Q$VHu*PN5G;P#Z0 znM}JVXR)#OlH1X_1^Un7%g2%{X&+8dXe=4s6nvS=q3a!RgYkI&b)`w<%-vYar zz4O?G-^mFwQX!M_v@q-F{b)T@`*+#N=a%0-`X_wx7!)F1vD8h;5F5elH6^2X70X`} z&y$76-fj=Q<(FaXlT*9?SliO5cXO20+oU){30U4>NO(FI# z3I2=W`;)-4{=_*s0bjTkHgGO>urqOg9WtNFAh`^lw>HrIkLkAUqVM-!@G?hbFMoBW-li_ST~&O&Rr)Xw!F4m z%uPd$=~Z_Zs?ha!ojmdp_6Pj69v}A^D}FY1VH7AIgbnBq-o-&HPUwq=@55i> z{)PW##L8*Wp^hV$N#T5o4;6mIvNcAhTr#LSWDBx?;Z}azqI~=PZ$uj_kjVba|C=%} zv=d>Luee`)qV@k;2e4RwQvhaz={y;^=hXCalBbnGp*NIW6Yi54{Q&;Qz~c+`wK)sg z)m#-lUDnLSbnhVf}fV$)`FUN&*gc40R+!y0@|p7jD5+zqFU zI~e8APwW+thZ(~)QFnG?qQLuf6@N{w{|D-C>NNfidys_HYLhl<5_b;sC&#+SHI94e z7maSG*Ju^H4Rs@e%YzMg$sOU94w$(<#PAR38ZSl+{{)%+I=HT3WT|aYthNKmud{v| z^P^7nA^52&+&&Yf`ZDT$OJMewk;iUlBF04+{R>>0M66pVz?HFZ^0=0BE0We;vyE8m zOQL6(s#hUE|C{)vx8VO~!2Yiz`rnRT<-Y$UdBjU}x4r<6co!B?J8@X1Dfx3W)Gh4M6nZW>Nr0lmRWPdYdoxWBkD^!#_JJtv`0>pogh-^+*!>1%Wg z&-;_Hix-*s@>SqXPU7(ogX8sq1vrQGxx;amITgdGHWv4C66I#2GEf->`(SdC<=Bf8 zRGd&2alTUWZVtjwpCJZ#9W6{J)_Oa<^alLoda_#e_r6WMF9u;dR$)!x{l^6>e@GAm z^yBv+EP&zx9YV+3FbH$G?@!b?rcgP1&v}krHO7OQG2E{W7}M+xoBU^*AH)Cu+5r6( z`hVSSvp+))AQADpWPh1@K$lHR6l#ji0%&)Ws_1-DyS>o6%?2GCyrs-djymVD09yn6 z*C8{}p`DC$=u(Z~8rgz+ST5~vqFDy2wQE0=mxHQmC+y)=xP>)D0^2!vCz#-#6m>^0 zw0=K18Hm(-xzm|1u-@Gt*x+ZW3%&<4a1svpAYObg-{L(o_+qS&Vyro)RQcb>cCwFT zl32Rv=Ts_hJKKrlsxgansh(g{AKTAf zbNoxPg3FP?N;6WOdo{u;w8Sb5z+Q~SGK{0!r#XI3yO87rSDG>-A1tiN%c|y{k9Sv} zl|G-i!i9^jN5nCJ+Snxg=uG&sFNyz;&<_}oZ`HJ~dd&SBi^je_>r6c>R{0Mtfadv2 z4{ZB+nFSEvZ(2aR#q>X_2IziaRWK9pPno~f0Cg!l)+5vaiCYz;sOuF2NF(?X5l&?$ z^QVm)fuiXa(+e^)x8xXkejVbTR&ao?fUNYs%Q-zjKK}t$au~k8Iq$tna6UEl^Lfte zOL+Wc)Cdpo9c@NAFgLIP;sWNu0_>!tXA@cgv4dYxDe=%wq-BmrJlVzLR2lx}y7fd5 z73sn(?!C>oItrah8s|?|j8=_Lh3Sg(DN`n|lMm!!PQ%|QK4SEoT=CMwTKq}AvW#!& z1{}kF{KgN&j^|O2Y$gj>2eJ<^x#|Wh={_;YwO~r!cA|rAM4iXE|@Pq0?+2PzGj%nANguU0K&TA-Ryv=dgc2q ztN&mBU+|7lZI88kgt@pW#YhQzE!J*yF^iz?eDz_^#sLlV{^RyDT=w3C+6JCYYl)iB~@&8I}z$tQ{bfC35 z8T)W@y(45_G2%NZaGQ~Hopp;bCFlUkzi+_*4y?cxINSmtwlrSnQj~qUm>Rt=u6FE= zXcBLbTi$&L+c%P4;}k@LGou5^*Nf24f1FtVYkbyxW?H^R)L9m!+Z;drE)XzdHp@~| zJj9vXEDz-x(zk2>$V#k7?a-Sqh?eyjF>9*CE04~_kGOR0a`ik4xvr=Ic9Q{Q#%I0) z{wJgQnE|t~0+q^s`T&1|SxW(PSrmm_B-Y12&STOLvl{+2yHEOGF@RF&SYEH#Ult(j z0TeSR&u`veQGzUh6v37Q$SR5d6T;OEAn&iK7@7_C7?&-Vu*gL$LW5{}6u5sdiKHHC z+zT-O$*KPBA#Z5~J2DIlHjI6XOOY8R@vng572tm;_T zyl=qP)N~HAf~VuhcH;jH|Fd8NzeSt4pS)IkTaJ2!{z0twJ{*1dUktzieE*Oj`k#hE za3!BA6I!#oPEPlh^Cm3YEF$HhSQjb(GEc+^zR5XG_q7QM@lhiDGb|G(M4WdOQg zV(uWTp&UZ^x5Ln%f#^RA=okKLMs7#SxEsCYOpD*nTDeXgEv<7kas|YW!I#V5YrjJ6 zUS1W{R|55wg5MP$pQn{ffFr3M%#);CdfJXZ(Wm z5*d6S5d02%fS+~p(v_0~cK9q=+fk~yiUl5cSwUDiJaHT`^b<_6T^rXn_F1%*w*vhC zO{{nfl6NF~!G9VZiOQxi9_4%1;cnL6P}Y>`*A+o%hNbQ2V;GSI&~7!#iuEHapxM#( zx9+11JbS?MYudN&E5E5c+UjhIr3-kL&u4i5Jyg!V zr?&PGy;>f+7XL&we1dpJ6YHeTwJCm@?yvQyu07%3I{VbkZ}`^#7VX>rrW8_zU;RST z2+6+-|2m`q%*1V)1tQyGl|{=Y^r_Tm+>nZ8Hl`51L+9UdCaGL!2Ea|;?+kE19(~VN z)Jr3%mzGE2_z#@OX6)$*KB@LR)FcGO{>90E@^NPC;p>;8^;rZ9Fo;S8+b_Y{614*s{| z?dQN{kEaf>i}?5~?AAQ~R?aKs&>#>m?=SQZcw_+vgZ?pmiaFS`&rs2qz+>g6TP3qQ z*}08h9Lb}kH>!pnxiE?&P5w!o)@PpHVt2CxiCKZHK^Xam|LZ!77%Wq;y?;W?>lsX0 zpzPmf9OopPe;BFne&-z|e?8B4ncVx@$%Y2-3iH?siM0*qInBC10+K-y{B z=RC9s6~KSx;Ckf-svFqu$jz~GlR1O8BTs<+n?dY!goxk*mBDLh34C7jWul^9%o+F+ z8-9lPe+M<48z}#t#ovrWTc5xj&z5wG9`)NsE5cLUBmO^z?{7&r(mUSpXjOV`+mZv^ z!rN@Z2XzTNm3F7s>?&35!}^^NA{JcJ>x38a;);!hdS%e!&@X&`V29&K|hY?u; zy59`&uRW0!OBLo!=xm4sX%EAqi6P3Us$qAvH)1Vbr4x3bLy$F8<$F}c!1fJPA7Onm zu4eE9^~thwq7bNp{-iRs{v)UW9cL9QW&s&s3A%OCyN ze=T;CY@!)w@HX7>75qjk_WpX!E$+5L(dl@_@Z%k+JHADxKM!_r1ChTvOLlY5Jw%&F zVV#bWFDOfhJi@@G5Gscc>kY4^IGBp)dO@W-%rGU zfAFsuzqK*Vm-)PZ z@Lo6ashR}-Kg53}G*sm{gmUx#LVwl3`wR7E6O;jnEzs^}_4#ZKd5wm|IGy1Gb})^(+yPgX6b_&S{e4FE zzYc7D3jhBjoy30=VW*_Ru9-j00{jb|Lcd~8&HM?yznHyH?Ps-qi~NOl>jc#8rVKV6 zaA>_0pBM)y+hIG0Y8HSh1$ri{Au1c_g0}fdW^?C`twpD_hq+~^sa9&*_IWCSnS&n3 z)$}gb$NxM24Q%Qq%!v#M?g?^U4|2ss6Ny(6pqX~N7DTL-Xo%btU8>xxr(|rvfm~e}i39{^Pgf6W#;=7r}Q`Z;tyLN`l2y5v!p9+v;9$Bh0BNNCwe}uE4(R zO*sUM(3f4prZEFzIn@D8s{REHs_m^Ndz_q_^p9i_Ke-v)Rwzr461}fS2k;gvbt8W3 z2HeCd*6*-KT)#L!dHwKE{IA&_TG?}n7?xo{?x3{u(7rFkHtlhqa+dL!4#e1+`&&Hd zJIwaq_}>t$s9l)1m_SGlt%C3!;y(O8WC!&Kdz4|{B8YGw@R0e>3HtMb%p^`*_iyhG zll2~_vR2W%kM8Oo3cpQ!vX_F~UJQVCE3E+b%W{;%4w#>>!nIYwyRw7usL5k$VF7CL zx#|!FXn)fNyiOB7>-a#^d4-z8r=Y$UDrxJ{X&l^RbR>(DhU(yQ_}G0|-`(VM9*C?? z{Mgt}Lw`xuSQ>www}~2#@2XOK+o_3;I62=_65`VcyKU!2$#a!lb2xsb{G)ZMNurAM z6}d~hW3j#>dPT~@zmCv%%ExC0UqWT3;4$)XTCcJgntyHh*QEIpc(Zy$uYH-9_X*6y zJ-Xv+!JUmk{rf5CUxN=_jOyqh6~HU_)VoZz@8SOlin8+Twzr4&^%3ILv#ZHH#_OAp zw@!a~fBkJ3mI6q#e@qV~OsnE&JN2paM-jd~PWQA~K(Z!M4_L(TB-k9!8O_Chd>QGa z{sbM}Ic$KY741c*P>ej~Z}OIp$N=i2g}6l)f0B&-Jy`vg_=s}gT9bg4FUh9rJSujw zS=`xpH#)DTk`gz{ZO*#5L9KXE^jm)jpP;DUi%)hJ4*wh#fQH^8_Y9AHiYj|A z_Mrd6d73`e0ibRRw&NBPsUBm0>IBrs*{}yA$T&ZMCpbqFcp{%;w- z*@!S>P!=IOVl_WKzoP%_D2+6SvmyKav~%G@*sUQex|G+vRBm~qFUJipK%W(cwq!oI47Rwb|~Ko;Oda)BnW0mDH4Nh1HXL{jSUe1+@l@(kMj zv=Q0f7UwX#e;gqG-+~1=M^2Un|L{e$w_iQBhzZ_5pi!vr{_0$yllLyV-FuZg*5Ner!KGtU#@rH7Vpn<^b+w4w!ZW*~zr9Yk1#$ zAW}P_vYh&-E9NK1Edj zrgs7jUv;$L>+sqU=Xqj@_nBekQ9Y>Pwt+(&M7LKj7=(??o9YPuKVq%@rI$#Kx@jDv^;~r6=|;^8N4e|8wB+b`Zb*Lp5t_&=DlWOZPL7l|2G~Ka!YUe1IzA z(#*dL{-u*!PBkMvtalyI|1%v7cX?l{$ch_)tI~M?X9Mm}n6*e>zvaU%mJbnZae%J< zf1zJJ0G9a+@5Ua;QiL3!#R2C375!_%LBmMAW~|Wj(g>x@tmptQhg%Cx|F6U=gF&q7 ze`5ZO`>Pc2d&>M(12FGz|0@QN&lmnx5wNO(E=fC7FUSPM2zKSH?LuF?iu0sC!N%NL zoo6ir{_DfBe&BqD7I`nnW*C?=|l36mYS(Sdjp?N(L3%iV4s z?_Idv`qZ0#0DmdK*B9{5FO!Lu3?fs_>o)wGR}%Ua`HRIj8=zQP47u%gE$&Y8u-3ccPzGS$T(P`Z0Qq>U21)@CvVTIJ>IRAdlmRGH zP}CoG6q=5>CcOJRzY4Q|vXhZqg8e(myBq=HFZmT>b;(mUqn92Q%r<%+{a+Lta1Q%A zmu$WUQM~-S&YY00OR9yM{?OPHT@&(+**Ryjor(g)oQOM7c3}O=Vo=2ilp|ZK#4}zX z0w{+%uq@q~y@}&bpa;4P)3Xkh=PqhSH=I0p@=jiL^j6Qso{oDJ{ZfB_DzEnki2aTV z;B@bCudLgi+Wi2s>q%IFi?B`=(A*^N@I8HTmpF{J+)t#Pg5(*CF3O3H;CC zc#r)56QYLv&H)&%>uyr-D>sE(##v7EE9Ot#$xq{xGlE&euc`Hn>DP7ovH2es*^38E z^!kaHbWcSJ=KB*ZfT@AQ7(khTA^`1hVEB*HPuUF5wLCh>E8;eCVq^e&v0+WYagD&k zTg^`yzM)_BKUo7=f{^u>m5?2^HMf)?+SRO*R&i9aD$&O@Ki0yE-m*|o+|vy7YX6!{l)buTb8oVv^I)cEk6*7bX~~y%ggCd zoU7kfCs2l~C_pOMCV0j^unr%yn{ZMp=S@M+GL*kx&^z-XHeeCez|~{}<6+cpQX8wl zb6ABx1ISOoq3B;cpjDvcv*oGny@goU^nb&%&@HQA5xo?E_W6W7>4BsgP#mCp=u>77 zKD}&%v;r^D+q{8@su7x>2pM#g4xoAPmLK~b^}u?}<@ti#zblzcdu&-vw9#1tUgdMF zTzx*VY9VGhbxw8YyqHbU8MP=x??86P&YPXv&=P3hAax==5B6mN>cA|%!n<8bW?uj; z$Y-cS6TH{R1I{oPV2Cr6`Ep-5-(n5^qEhq~lj4>}ANViC&5Zjx_MShJ&-5GKLVX5n z$nyuFVmXGdX-o&&Tj=h$;JvTHK1X2Pk~+Tg4~%nV=dkk*YiA*qrXPtjlhFzKElhye zfNkUvQ?Nsyxk<4kt|L9%5n|TQK=C~u`y1%^kZg7YF|wFHMgQ{oW&z&fHOG?QPQpS= z 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 kXZ4?z7XhZjvEx1iTo+63nOrl+Py zsqsCcrR$@6i(R1JPlQnXrf0BK$1643-Yf9CyC8#H6HL}(Ur%yvu}KmSj3r<29|_>T zFnzzr8l~Vqo`)jA7Up}pG8#i+|A(XT&jtT;K>wUJ^8bnE{RgW{|GCe$9;h7-b3Fzx zpp^hqkpma-{8-`uWAFgF9#6c6W)!-rXbbIGDMSxJ-v(!`bpv{#gYD069l%mxDf~Iu zFX$I{B0Cyg{3km|^cN29F-iho$3GA|z;mdx<%T?LDvo%w|ahJO0D0n3;~*@_#wMtRV3KBX9Z^je)6!(<8L#|40FG z7v>#Y`%3f|gp2jyzhFI_Al|{UPyFk(GwQb@zJ{)7|E%g^pYonO*Joj5()9$pHRvxj zKC$%^$t%yp36xa14jG2B!9S0YqiFxH#M$hoegO3n?RnE4fe+URTnPFvp34AEVnwT6 zu>tyk|77*2myMQyQXne>==Vz>EqiGCDwaa3>Rs8xo?0S5K7H->*xS+mYI4zTUjQGo zwpJnl9vLp+fA_gZ90r|P7a%JFW;H+MPO^~F-zW9G>VEx@@$g0ehgSsKvJ6>>C=dQU ze>@D)|A}E}ZFJ=q4sRpB&GtXUBQO;&;5p>B*cWIFeskBtwRfg{^w&hQT4kuNbyMGO z1p7BCP_%#gZmiMp{}%pZ#RtKnO`m`E*%c`0FZRDuK;AD3gZyaa?1^tc^y`gVnd`Ef zUsm+e_qYzP^hk()JA0)DSoHgOQ67)J*pBxx-xbLaNfkMxTqqgFi7|e-^H97tIE;pJuuN1$k<1S$mNH(fiTw zE$hF$js+0gKe2%pCva~(f6K!CyC9v`M^=FKK*j-s zf8&dG-YKgD8A~tLzev=o4yP}AzlHI6Wq}Bc<}bEEc)Pf?+9%rIil1-}s~df;PtrVJ zyOdjrY=wd664&MmN#Y9#AMv}|xPPzv-QL$8f%hH(s|iG3 z@V^;0fL=GzxIX%S75I57aFcCcY;N^`i^q#QUlsJ{mB&T~1pmqcErH-az5Z5dyb*dL z)%WHdxmk&5{-IsSM8AIj`1$hRjNxJrSw~xa zTkx;WiU(a9n#_zA@FA+(3hq^!O{4L*nf7pLGep}PO|GU^evONMH#0aQw)1yc4Tb{+o z9;-k4-t{!q?#2Nk6^gdk@>f1YN+j>E*#2_=^xD=NX$F9Chpzbjl6$P}|3UnQ_Bq-k z&>n#gY6KE}D>`5O9`9cKe#!yu0<(gX4X6j8a02mf=8t`T*Mwzg?YoN3T0GP1_(5G` L`#k?BBk=zL+lEZB literal 0 HcmV?d00001 diff --git a/test_images/IMG8.dcm b/test_images/IMG8.dcm new file mode 100644 index 0000000000000000000000000000000000000000..c1b76b8d5211b54dee7b38caa334becca33a3d1f GIT binary patch literal 526122 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 literal 0 HcmV?d00001 diff --git a/test_images/IMG9.dcm b/test_images/IMG9.dcm new file mode 100644 index 0000000000000000000000000000000000000000..b2903f2023f36fe0e483b6fbd6a5693801c62e09 GIT binary patch literal 526122 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:yhO%8Q(7LBCh#Yv=Tp$X>c0YVlLsulKL_ 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

    *Cf~Wd46ckA;i)If-ry2etM@XI+<72rV>^ z>o_NC0aoUFk^yMLjo-B4asX8T4=uQTLFdA%R%j#7cjiD=Tsae-B4TpycC#4v2(TyE z^z03^H|S1`X{;~D@5cOk8T(2MWUeLZm!Zb%iTK!o_&hP;5v+^+!g*r{5(gx=UFLg1 zezGY>%-k|Y%Kd+Uw~J)`#kmENI zuAqGu743bzeFMx}0bphO)SdM${_exfUW<461^M?&;lhto5i`g&Bhtc>ZO)TK#WTtju}MmEi_cVg8xI9f zdx7k;h%8>jmi>ur;f-MZd=!H#x$eLB4B%=8;gz4K_Go)>)gZU${$*2ivZMAKn3Xea zcH;jx_l083Ot*#a?bf)zsTm`}MTnYu(eju629sHL5A! z!Si6R-uRl4Cs|Td)-)`UxvAeoqv%6*|UJoQc^RzbkvTMg#EsvxB>; zpsRsgG58fD{3tkg1%f=pdP~=WKFIjnmCXG?wru{UKDoN7v0`Vwh3iLOc5Z147N(<| zyGbv?{Oi|=`~6+;@62^p7d#a7$M0pHm#Ejr!iu}uZsTW>?@#x=j1%Pl`ulYL6aB%y zsMI$n10e4H9TvbdcLkDb5Y+&zH|nncG5!zR5&Om0i}&cCiS2z(?1Hu-dO)#=(J#Bt zEA>9sRdpl(*nkp~iT|*%((PjbIywEMF|rz6FNVLl6~*an@P8HG`9mCb*mw+&^$xzU z!XvnUgv!xCW{zypj`!;SYDXo090B*=q~mwx{jUta*_ z4kYH^93QnS`Kuoh%kD_!+P3Uey(N#gTi0Si7NKJHkDy&0APit4|D`XD{lLZlU&)*4 zPgMb3-!?10%U${UaZc+{$#XjSyQj&My#oS{hL`kVr>jY*_VDUH2e$9vLJL(n|VixSjd02q6&@k5IvEMeA=DDBL-*4{9=*$9^w&s!3;P{VY z0iFf(H?U^lGPJje*n|&ymSK(4!Bjj=-MSr1u@oZ+g#!JqjA#Oe8s{Efw9 zVg5Z4fbXs5?cy!Tgtd3j@esA6NZ%Y;r^+@%|D^I4WAh zl3{hcwF2sX$-jn~B_7L)-!rT8>RpLBuLou4qC4Hh_v>m}b3b<7{t)lqVm{dER_#cS zVf|<~?w3jWzboc9LUB6`%she$wgfY8Cou3c^zbwARd=;+#4G&*JMd$$@$=Sc%+X7j z$JbE}bPe-&LhA~C{{|n|+nPw`U!0r#!@D)wOK?otz6E|Ai}nT8qoirg1_(DnYYrMdp#-!btp7VzliXT^W~zdGPHY^c$$ z|52aHcR2x;eG%WYYrfs3-p*gHQE_d}6d=r6S$oL4@<;v{-fz?>ms|?OjUk5K8O8fN z;@^JwAaTAkRX>}8=>3RQuY{2vPtIz8c);!)`;fmrtaWVb6zYJkq8{+s)<-bgFI#u> zy7^iUfvsW8!6)&EcD@%AcKpybiGMTZu9;C!>%)AV8-xwy6=Rv-%kr~1dAXa}31WJn}DE!0m^HVlIuAix|uYX@(SifKIM0V?4dR#8qe5Jmx{!2Xq*3qZa z!}tcG`VFx}$2R9~K3hLoe^!r%9XtXjS`1CiE&=;@YJYx3?0+0l&k3OHRHBV}xc>87 zza~rn5i!KtjMG5ur|axJTkGv+!y+|M+TH{E?=#Z&{(2mCeH&M7ALEyKq?ao>1>V0e zy;J(O7iSl>2e7GA!jSeMDjCkP9Dmos?z(c}AXxtXVEj1rl>sn;&sz(?6+UiFY8_4W z#k8=13B)X$VNtBtGFO|*O>g-v+7;M3;r`hAIf!{aVw|n~wF=3)D=Px*4|py1_(JZx z5e?uo>Ht1(Z1OGcgMRfTnZUv@%)$ID0QNl+wFm!Yp2vH6pJCG{o{{XK$L&|vn<+o|JUPR|1bJueWF0fJQ9V>@~y@DuedE| zU%Y?eKAvMDhQfz3CWSF*6}#v!V^Q#*C_v^P+id0Eq8tlRyY-vKj@1G6nppUW9i43g z-*I-~w7cH3%*qC#=9I+O>5L`D%pj-!Pu`fLpno@J-o&1FdxnB?qtDG@`d<+pzm5X9 zKx;U;z6C(`e66`q{+m4VRZrE)1rBJfNEC1my#c0bFW8>9{Wbd5);#_zIK`KptW$c@ z-Vg5VMCwY!_d4h|Yvy_$d)qI}*^I#}uLB;;J)S_O!D_tC@O|TYt^xVWv-j8R&6$Yf zr=*X?^YyLunf1@=6JP;9Ai8}M3pkef{HOZedLY^UPnz4KM&3pie@m>#3D}G$>j&z0 z>cyM;5|zA0E!1E>&uqu`F#H3E1`Y;&Kj!CXMxliTJPq5nA+-(X6MHX5yfheexu?+F z{B_sCHulZ>-!EY?e`mB`=34EwXdj~&u?oGYDVH&FzsEApLCk*#e!tzi0-G}u8)DC5 zdoH@}+7-!uFEX*=ScHAZLoR{}@FKeazu$Vb^*HS6ASx}Ufi)aQc4jp8+svPbRa?H& zd+dm|Apcv-Ju_DCFO0Wnx9{M!*rmHW_Q}=2=P_g4p<(6bZuREXFY)q;|I<$<3bXm8 zC5ZkPgoPGP8pMiie>~#1^@sYj%<5pld*c0MwaIPk@wFv+Re2AeAG?xQB>qm-ulk=D z%q8Ihl2BB0m^-`TV82K zt7Hs$W9!e*(N+h9Wp47T_CdA%713cSJkC6Gp!Wh`p>ir1?i)^J+bRb32&CLtwTa zm>CALwE*TC4`d8}#I2*b${M@#TaL|PAD3}9tAV+pU`yt&9W~GXHSEQGKPt2V*WSDD z$5UtkFLGVhByUL1vek%=-f8_A{B8`lKMy}Y61=+uN%kf-mXMj*m%!Cbem{dar#)dm zeR$0=WD6c>z0P~Q2+P_Z<>h&*0=8$QhJI@SQ~_Pjk&J-0!0h0{oMA7OK+oY5E@5_@ zPXy);P1(KRGVW0;zLpH?bM>RubB)zIKHoW(em|}OayO|#{47lLS+de)u8Y_3b?+%L zaJf$`JHPdO&hkY1iS<+G)(?9S#0LXm3qD)4=z;D2pWffm{NsnM#g!X`0pz*=N(LbN z7yXF<5`B~iBrA}Df9+s6kk>5x$(43(VAmpQQ4$AuzQMiElj#^sWYl6=9Zk_+xPL4_ zc)y%K*_egdlkX3QFynvn*@a z?4UEAdv>N)?jpFt($vm=(OS8^Lwj8NMY#KQJW~rG@3iNKI}tw*P9Db=Jj&nKz>mHB z7H0mA#2c>#8aLv6_5&+#!2b7UWz4U8?nbx&YkepF{+RmY`jYzQ`lkBg`lR|N^}g7E zH|ssHCVwZ!*aj;xZF3I1+WB+`IS>rph1L2gczTKa|0nf>aD}<4em|LW`HZST`{|E> zb8Lf+JA^p>AgsWlShUIHJ$?wIIScDkga5s_#xWpn5m0J;-50yspyT!%9Djwu)adPR zb7iixdW~~=pK6OAV86D)l0MtI93|ylw8r(hMs)*gp7s56@IJ*RTixroWQC6&d<<&e zndl!g5P|%ZY~kCj3SRXr5y{HbK~2C;t%ki+y|r#bk8ftT=~b9$Otsq%Zoz{Idqg%)h=y{5ucjq+<3zGuF(0=W*AMMG17S zJIkYQCE6F~$#-cDf}mmn{7*!9%!2Q=`=`CXJ(B+mF2!b9Rqto~>+rAjNw>eK|9X5i z0NH@{$b3YfZxI{(I~HLv<;?w?D~d%B^YR&g{OzN8hJU@~duSE40RE0fqTg5j_eh0? zmRbB;0kmA>^2SNkIrUzApA-2uFTj?^`;i~ly>;3Crg8g6Ahk*Wl>J#ga>!YwDy*>Ak85l;K zzX-9yqs?XDF1Lc@iB$G%i?=?#*_VAVU#-7K72qkH&zDU*058s`uKjJT!Ex}JV|mqu zWCNxppK&f~<|?iCsUqBy=Zt}yyFS7$iL;XVchAj-v0`>q{0u$g%?|S2|NCPs+SaIg zo3eMx6(}XWt@F?`27`TfBe!#byAYV?Fpkjn*}u&1NA~VFrAjjrYkL4{*~v^I~uEfi~dxWq{1ZqWzr`!`TwrZ_m=MMU#>*)>SnPtMoUPSBH zE1K^LpNKVyjYtF#i=%`Ki#)g;>2dxpZbb_l?4d*Po5zPV3>dM07e5U5ap_K zb@}hR{3X1na01V?*nn7o!UBrLhy_So6ph7bOZ2A#)5zbtEF(0t|LXrgY<%5l)D?F9 zwvILb19spZ{Qljb>~2&y*ZQ_Q*{VLwgMOVkCC2Ot&e2pFzCq(Ow}V`8Etd{Hp_g$XVKp*UY5*aIS=3TN4JbC*JS5p21|p z7HO^1vu*Q1c>d<~*m{Y2NIkCJq~4+4rQVfePx!!B^~td9IjA~3s<{>xU>)j$rv%e~ zU?0C*$?KiNyUo{gRdb2vtKffjRPWzmf!d6TOj(@m)6oD=A>()^cIQSuc{WgXR_iGE z_M=4HuEAM`aWluJ?Q2tCNM&To54q}BqOjadBP{iAWYw$qWwIo>w>K(v9;SW zUL!iVw+0~nz+A;`uE+l8v%vt~V63n0tj4ek%Rb=t12-l(8x7!ktiWu|x$Bv$U71y8 z0260M2k6$C^zT%lba$Z=xm`b|PuF|t6GeE?@67i<5hACRJ@}eAxh4OP1t|=nC;;(> zbAYobeyPF>6Hg8>wSVG1pV0STg#U8Z#ug<5ApZ6K$pBb|Q1btNey%oW?CnJU!M|6X z|9xi8wq*W`_0j?q`_Y#%i8ktAt1Y`3f7RG<0I|OaJ2;%mn!i2jb+G0)b+o@L$UNQE z(Ra-BzQj!IL7#TtDEGW@MX%i7Re#2f@l{DcJK_IdoA_NpMc(<lUt0vm8ncH7ju&W%_7lFy9@A?T*am+7q4MYmub!0`Xd_2il8yO63oeHc8|F`_@A$1HC@#s(<Mjs}F$~}m{#p;@3eAf;48VS7KWH9N?@*meOzFDPk_XHRlR@|!tAEv>twAX)ASf?P zw~K({(=x-wwzi=tX0aGi08&NNMSsv!^h7g&a(?~4-d7xk3y92a5B}JedHy99pzKE` zeoGBtRse-{Bk}mFe~F8->)|wt6r*4Wd2>tH+c!)sg>RycBgw6P0Bs6-51-Pac5@U^YvZ%gA_o@{;DYSGo}R@S90(0Yt$c!kdVF+z3D>if+fy6dEvcTakI?z@|& zJv`i1CwpwEYt03c4<>teL2J$SF<6!DT4(XvxA6Nf!jfNwliHX1d90KjKxD#pB~bfb zmSY((xf+_=1Xkm2f(ps%z<%Qc^_i+s(c3{_~)DF3fiIw44*~?-IRRi9gM{{tP8gCZa8OWw7m$|UC~Xz9YEAtv%>aIp#KZvi4EWnulLLj zXPJvy=--3ffsC8u7w@0_Nz@RH`$ef;eNvfWB&Fw1q$YnaJ%1MCOn2le-l8huXRU`@ zz3dP4S8T!7Sf^XaS6CVBS}r@A8KaaQr}hn-o*aeifp2DxoZrd%WpDP0jM+ID zw!!z(j`;k!K)Crg)pyyxid=Yr9yshj7%E!Azaj!qrSo0A4pqST{Adn-e)xa-fBQWB ze^`EOK(4^o2mcwD*oZtok7U%m-{-{|W}FK9x9-QPU+r;v{G=i)9AIeUsKyG_%Jpz& z`t8JW7n1?Bw$8nD&GP;UEo`a|F2%pQV!B?%`d?$j#Q*xeP4NA%p|PC=`rmK8)w++I z^IGVB_fvVh9?#7Dvo~m8e#EFA$}Zu~Xgh|wUr^ay&)v0*3e1qt$|HkO)gJ5Fm44w1 zx1S-3{~f-`9)I?ucoE-kZwgt8^>k|B1MqcLCR&%g6joqE@c3oV>aBmEAHG$uQuo$x zR!>)tSI<^|u0E|=_3ZUh^%_J0SJZ=G;&$`>n%?JYvDf`^c;Z#a0G=@#UwLJzmfuSFQkNqXN`m?b*kMv9rcfW)FMw_-?z=N+3 zva({*ZmBbq(|m*TH=ePFv0Y3*MDH6%obVF+C9c^T%NR}~b{_-&9J$0uawBb~V<-CO z?ToLw%6weAY+da8Q&fOt1Y`k=@@=ipIbKJ`b$zse_gn4u7gPrx#%iJ4;3q5d_%c|s zQP?TZv9O2vvD8iK0G?-_OaT4XVP~J_Yf%HvArATjbLK*_CawA#x&g>CQwJ#iOQosZ zz~lJ~KMl{yer2gmiifFI1pt*3MApN_j_nsi%^UgTL zB9`|E?xXvsMnd-QTI}*2gn@+ttkrn9aRa-29)|b7nQu_MS4YEsDl3g0s`Ww;j(P;e3@ch&aiud5(nHUQY-AX0Q zbuigExa_k#BcErMe0FB|3V6@CiKCyUQgBS`R{Y~MM9!|4v)Atn@c+-y&Zq6zi}~?f z(Xh>Bt4!>RF0nNEcdFSzdaHiEx|ieO>QB}CRipl1Jqj)G1Tuk}V^IcUd4AuVr+H6( zTm417I{SoQiMp@|KKKRln%^{6Yu*7@7+J4VUqzSHmzt}?`S&Hp*^pf0HgJu7saHA* zd-!`e^@C*I4nk);nzeZsk^`{|cWUkJwmlVn_U-d&cXfN1eu(loiZOeMvD})DJ}XkO z|68uqojc}Wgi?_!>is`#N-m|B)`CWx8PM_fGJ%o<=-+up_<(w#YqK^+seKw%iQnn!Ye@&38bxgOk?nxc68?^eMZ z{agL3=9fs^3_xN5wSUpC=Z`vWHNpQ~0|@?8S5(j+o8y0K06C*l|5L6>TNw84^?ED3 zCUzjWFQZe&Czdl-BrGY_5m5j{zE>s#$m&bKg{=GS5BuM{(Z5=}o)?RL2j1UKGxqp3 z!)AYtr#hONdttf{rh2o!T7_MHZO+I{+lDaYyWrQ`p>p4i1-KZGHyEw^D*T<*E{iZX zeU&`aS?WC2|EnzPU5rqT2IlTqhgbobKp24fcJ>k;jCXpc=Lcl5FJV>Nl&#b8Rej*3 z?}40GuvG8C0V-ZKH}7UX$+P-PJ?YtJUY#Z1pnr z_Vuatqjlfrp>T;8VX@z!27a%ewO+A443s}sPuo1Pxh65dr9=j6kU!WO#xT4-qMm^n zKLT%R#oy1#Tkb~`Z3WQJQ2@@TzTs8+@*N1%UJ5V1XD9Qw6o^W9q}h0{&#+(iSF*yl z%~&3af-;m?;RLFn22-VXD4yRP)wR0D_txWzdt)dqrnmI}j<9={nL%+ZjRgAhuCTod)_)hr9iabye4%Uo-3QmbZmd<6Uz+I}idT2P%TXv^ z$FlBqcKUgpOwR8T6u;f5?)!jx`Jcdxm*=_0`6|@Gzv%aNRI0*KonM8;y6a{z9}AGE zKwY3e?>HGhej&9%PlKyw>lAFjEO;e%{df;+2G9$9U9N=wQ~5bq){pEQwZl1=RxEvX1{!6xAV&of#3aEvq+c z;(vPm=qGBaR_cp?bEsxi{agf*$c(XM-THq6OVQaJ| zQsuB248Zu#pHv0-4fTa{{hjlD7?x;HCVR5V0Nk1A58(e|@PAHo&gLTZysQOYj5(&y zN%ha*PW_*&e~k=`0lLwAW`De37;*VsxN*UW_QE6lwqPaJBs+?U4DqiQ47->WZ{Mx> z6N$z9%l>_5`(hZSn3FIH|Gy~!qB3#68hzBi)Bq&+uO&!CGE)byg{ueiL4B-UuC=g$ zL`A9p>FNby-{(0Nu>)pA!e)a1TwBTdg#|>1UA6ICILsO+>TX2;V=1d1j2S z_tFo=GdcT;|1Yz#e`kLBdv0dDtUo((YXhPL$Ux?!s^?<%xO$+qM0+F|?Cn6-zMPTW zYCj=X{|fvs$oUQHFjp&-h6JQTuH9*3Hl67&zhe#TPu;ZKbtxyS4rAu+hZ`-KPSUq_niti-s;+5_?RXhgr$y-vHk6#eVt5`S0y#jKc4lnmZr9)I z#e5`HZHWRB%O(cs#<*ffUuRWuiJxO1;{VMOT7jSZpFY26f7$@mzxe-n%h)7s&i};% zM7M~3Df$xu7<)v0Ec%}jiFtx36|q;TWDKSY`zdOGmZ_+sv2uByW9564*rzBN^LG5d znSYs>{6-sBva$Z%w$Zm*vR(@8Pv)D<9vk+1cc1w?iK+jN_m4U^4|B!UVM}$8ud+T0 zbgz%6c!=uqBgpqZ)tb!eor9^xjXbQwQ_Rd? z$x58Hz~b&bPc}CL!{4KW$N6LpwPREE+(5Rk56pgtx~fmC7O%c&eAbw{8c?lN?OvTz z^-?8xMRO}Se6!~$s)F7?{r_$KyZV;;^LjnTY6R8GlUQ4PV`t^>_2_t3i+nvp2<_Ae7%O5YVa^O$#nqj)$6K)_9d`48p^#7A@7yh3W0RAWb zXY1fU(L~NDR_FhM|LA`5^eF$~{n{R@0kjA4|L#C61NqMuz;TelgbkIyCCV=r!012s z<*G9pse*Jw{Xe6iWfTA1TC7xJEznrHadKmy>Uh@tig@>yvd@ft9k1rwy^lOpg%5UC z$sT3WW`u05&>*MrT)vPoxI$Q(>XkpIN?`4EuxgITGL@K>?_p6HJpw@cN=H>Ji68W)Bw#=-vQqH zR)1>T-*~j~YU7K>oYgwjZ`lp?miiaX7JU6=x`Mq|Po!pWFDeFh=kLv|5*W|=w+D#f zzo0AcFe>zpz(!rgJKK%-CF+2F&_TRAjM@=(G-s$4@XXwA6?``vZ&r89UX=&wQH&xR|-3QtYg;YsC4)k+;xOVTXF1 z>L^e@h&6vpGSfy7YYyeMs{m33+>aURk@z>UK<090etdsaF8O{zzwo#6& zyj*=$|DNyi>W(eHp6~HyEV?`XK8Bh$4Kv7iQG5pfBbmD^;4@YvtG*3>>f@gA@czG| zA64yp(2quTxc`CFxGl-+GH0#&3j=V@#xwb@VqMI~z9c#@a*e*FZ&M3Y36S|)Cuqlv zR0xd(Gt;rM@cZqRsAD^iEcty{qh)#ZJk022u@GaymB(o8f@_n;pv&DxH?A35ejjr)wf1SOz&r#iKC=D2_BB|5L9Kr9kcnh7$91fgTCb~? z=f=MFb{N0|ojG$MO5lxXMw6H~6Q}_=8y_->+Q~bp1D?c6pe6s~Seh8X6~Ive%>oub zE{elmyYpEa5Y;=HRu})GU2KN|B)e@iA=WeZqkxtBW(RH4Q*Ceczf9apAP*yQ*>_iI z@RPc6`~Q{!h<)G1)j!tg2JcZFQUO#LfIEPuiobaB!r^nx+N9WmDF6N+YY?jy_EgwH zu^v$Y#DAEQqm|C9rO)rcP94^W#?g%xs}1XM*z3vI?o!j8J>PF8KK}<=ju6%Q{!}?^(eAbR22{GjrciKL4Gbeduh{M!7zjzM;2MTRQ|VW$mvFMH{dj zXQJ;~8k?{oulOleU@a`f99WV8%==AxT0P*p{&TfwwJ71k>y7)s{qNZY>6FIrSQqg? zqqo|knp6!X3os4qfv%=v_{-|C>e}kO>a6N_)w$J#YBH4suUB7Ib5c{hL;dUep^lcg z99_kJ1RtJ?$|$?;YK2BHZmVNC#r>KfeLVO75X|38544Yo9e&K?3o~M3T*O;xsh;PU zWYn~ddh-4qyO91ICALbwUmm5G&pT*E!=@bJXaaIA{l9g=RtpbeY_><+T$1d~vhB@@ z0&XJ~*|N1XD~(QKjABF0_NH&aG%$d7$XDLji2&Sx++2}+vYyLs0GD@WQ=jGxwfh1N z0sl+jZDavUg8#)jzGo3;WdDvAFY&xKpv>o>Sp16v5fJ|$O)LIC_%EKmc>jX`+^{dNleV*&L3uAu3DhV~=)*L(l(@b4?bS)u`k2gp0r9TIb-0!an1^#3VWSt6ox zPWf9bVRD|abGfa(EU)#NJ@R-ofQ(q8e&hYD`LPGvAnN{JY1~i0zvHMqyNQ_X0_^!M ze2X{X|F0th=-#<=b!LeXdV2i~2mfKN%TbSZQqLPb<3Qeh?Be|mEB&rVJ)XWbnf%e( zU~T~O*!k)2XxRSe{Ec>%C{zv*|6lx8*g{k;XKuKwwZduv?kHCDz(Mf#`{}NA2Gzm$ z&}X2hbu4&y6{3~D%QJ7sU;&nezuJ>%6qs9ssQYcM^guMK-SJZHti5vcuzFIpboFlI z?#7kue{vEPQ9o@Q&d)J)M7^ysWwjIf-{AV^_2uLO=cuo*4z7MstyZmAtz4~HZOo&G zRlmX-T#HqBw`$e%qATuBeb8m~-SzABA|PTmFtjQoXNQjUQPwvC^=nfVwLbT|*T|`4 z6((W@w%|GLzvT!dOX^w%R|y3FdhTTUT;1!f!T^j8%ny`kO7v@S!vbPWk`XA+GcptX zS@FLlJmnCq=@G4Y+lO;3*?x|WOnYI?Z)A+^qT<=B1PtPA>{a|JIg5LkF_&=2048&o z6L1}X)?hRC1lXiHiJgHL2lInCmiQ0vZv>zM5Z12GGgeImpoa^Kjf!r+5ATVe&ufeX z!Wn#B=6IR+Vz?*())&qL{$2lT^{?uiT43<6HPHLUUuVaVqOir^{%O#L+@o~Un1=Zkon9Z|`gYgpn!y?Zu68B%?+fFE%z4@4PN%TQDRqQ*~GMX!Sg*M{% z7Wn)V$QB-mJy?>_lC{g0Qq>bg%l}nji+(DSt)z%w_xX;jBWM($exe1*y?HlnXu-dK z!{-YAt?yY1OLQq~wx4h9*`C<`H9LrZKwP(B>vbv+R>F3=ZreVuOEM$e*SYTbfV$;d zI;!y{Skc?a7`t2HxoChlkvTrK`BHsn^+aP$@UI1M)@cWf|AT+4fSs+;sr;LHn;EQM zi~5)99P{&8H&ABycOzVFK$P=>p%PnIU1a|~eXr`9SS)J+!+OAQLLkC>%)S7=WHxM zxPWnkzRl;w`x_a!+TE&GV}Y!DHyW4|Odm?FZEp4s_?&ot(~gC*epNd#is*G!&UFlP z*T`io3c|T4|F_|vkFC$D|5$%oPpJP^4X^H`1JaT7LD;>q6Iqe1SrfTUW4p$|jawW2 zr~`PQ`djq{{{5h8{_4HPlZ}TO_crb!Hh3Hk^=V^9vIXl@yH!V2zo?GK4xC@zMm#W8 zJ&+vZaVP?pvqE46j&)HS+$U%Uu(m!w8xwtOO=jR=eyou;-!VH^;N1Z5T?e-RKZ7Z{1&|4h$btpTjFdZB$`d)4-P zR4q=|Iuo`c{#{F<3a}{O>>OBtZ>U_npV^YVfN$<(jjtgCcrJY4emuz1&86!FsRFR; zkEmaaSts`W&pN;X9sjRNAFn0;&E-YSbN&ZE$PmS;_rNYULpPqQp7>=g>!a% zzVWy5{%jyIxxiEdS^*TaCI&C4^V9!%{~yI7cB|+BqCYvubR0_#ApOX!{|}};V@JR% zC>B5~;O*k`mp{eG%xYy55M^u_<+j`!CG*xi2!IJ>TABpJVj+FQ2|Xdl?#vOS=EFEQgg z)B~)-GqR7Ys1Mr@TXpu9xheh=|I2HQ{>$u*=B57+`t?|u@6O~f1NZB7#}7MvFA0jy zV1?eTL?k~12>U=>zin`m1UgI#(al z_;F)rP`_nkb7G^78yht?ZR`dAUx*5To2onT?mJeqR1Y^ULKip_Yw?@L8B|YAL@#)= z(XJM%##NhETUWbO`&LJjFPubmQIl9;b9#%Nz-k`*knB!Y^cXC_cA#DUzag=}cG!g7 z_&bVg)V|65wUo*4MH9&w#zqzk5Fancmr<#+MB9s(*Lr$SDg+&IZLe`wZdrdN>SF_3 zFYKDhm8s;SM{(1%VPDYEooF*Gz_};>T?3?s7bRaMuy}vxtJMKn-5b9w`}bb&4`cAz zB0SbZ?=RPnj|`v4eRAQs@Up4+HQEmT6NwuQL;*~Mt-npQ;rolWf7SxX_dUdZ)IS+V z`v1B9z?j2NofV5lK5tknZVO$QPe z>_gr3-uyirmGBaDgEvqK=dVVh3T%P}IIKE_jKS^IOVwA^66gSXH|Hml=FWhg;l9|; zHDD#<@&E2Kz9YZ2m~&!pX9J&(n!ht@@&4LSxj-31#~?~dbUv+xXxDCpO~syuNBNG9 zq~m7?r!X(Ig6RL&Nqa2G8C}=25tUURwO8xy-+O6$*7gCc3_g9n;Qap!{FnUv zcP)V2Uj@=N2-*NGz>H)h%>U2U`BXC&C1MfJ@%e=f#Q*!d=mg)@1Y)uBTrGj45zgNo zuaf^C*unpjaNL=yK6I~`fcL+J%-{L2e^nbZ|EhpbQjcoo-`pK$m_Glm3Dv7w`M)83 zZTh44uL$z*bouK|Yy#KkdN%xCgiz&XK8eT!q`d~1Ue zhll?vWiW2Jhxv7Q4w;6-y9qFOthl{jQ%%?z)=+$ed3G z%h|6E5awT^3E73!fiuBGy>DT7|90T(L_F-aAbu(4wzYNB@CiJ!9U1?PsNR`CEN}yA-ihFUoeu6-YpmK>rLhv))jre!jUuMk`%hn8j~=i&>|i|4 z+kgmR3+(8jS|*h*Z{N z{OonO9udJdpnp7=vKzQ-AC3Rb*5|KSbtF{w!+=D%S1W%{RYq8rW9oROMmy^&yG$#U z1o8f<9L#vDzKDN!`$;q~80&pKRmkJov-Td?yG`%Q>@ac|wLnJ`Ihg^-%HZM5g89&3 z?OOOpW=kr8oj11=_q!I@Dxim1G4&YPlDp^yki9<^2mM(E;QBM!eEf9(|F{+2>a5ND zcK$n~-Bq;gR-GzVt|Cba@bE=O4`(nR)Ku zt?FOwzLns^V2Ni_^>}yLEYa-)<32lix=ctwYu8Z^8`?KoqbSiE(#$bOfMsQu?ge@97HV#7vxSD#Q4;nL63*!GbtoDE}oIyVD67c^R zYm2w5=V5iy-o(~F#`mvFlx=o$O*qu%9P1FREC}9RVU^X-(Kuc6T*lB*3V%vu5bqtE zpw~~#pRsgZm6iR4Gig1-o(fZNw89Y_bysuQ;WPMOl(YFM8o<4+v)ZG2cj@ihdr~d%iN(3NZ4u1|;)&>+kpf4DU;;;Wt z?p+38EMBtzQQ>_z&u1X#xD*=MC~6k}8T^;bK@c5PaSlFR3n1oGcjV_L`nUey^+$=| z3;qj#Dc2+B6Z3bg{KJcq``0!U4IoN@uTU}R-?6Jm5z^a=Qln-%90=-hWPJlJ!1j(Nxcj`|J@v3Z3`?dTG4cI-vblyHD>o?YpSM z?`iK!7rC9V7sXR$u9mo7ggPgK|KL4{&peJgU1qtugO7&6+wsPg$MON^vX;d;?<=(i z&TQjacj7x9l>eGDTpgYwr&c5A!&z;@%G~3y4aX3BztudXIgsAoPq4q2yLi08>fhg0 zA2*K0yRX(*o_?syH&(!FZNNQmH8!rUu5Ja@U!wZ$3H#p&3*fOKw|52qzXksfHQsAX z!&-qc)mGJ^R105HU0F@+)CGN7t^PvIE*xm~bKn9?ysxMFl9K?IKJH5*u0PC&=yoA42kEBEJ<>*THH+N|M zq~5;z6*x-%-yOiR21tKyHyT$57Edl_6MJWMklxJMJvTEsy9ZjgYUQdc2z*^~h`z3% zCAWirZ_k5wwf}EAej0gyw-U$df`a|T$g*V5bqMFYY-7wniT|*Ppj94_{D12GN)MuR zAS?aIXYY9IoT=9kZNppT@LC*)`1<(x#07p%u%8T|w{wr2DUnh}$Wc}Mx8LtDDqJ?J z_F|uldpX?acS6Ve-;O=F68zuMe1+WKjLeS3vG=Zx8OzTyV8~tK1~Y?yMqjGk=Gixf^?$Cm*ZU{`Zv>zhPUXGYoBE>uFCu_29nT>RN$Z zQ)(vUSl%-FcisPLjVBtDt7qzyVE?!Bt!1aLJFx**6UkkJO?Zti^fNJQmi*THj|DR$ z@u%kfhohyP*z*_gKOMUNBE38IZq@q_qW{C_^S3$kDEeH~rQ(yKS`}qG9$eof;^qB? zF_ii2Gxbc)(PYDA0Oq=kC$uKM+8(3}^PkbiY@lXp*8j~*RDCSDz~j*QR)@V=j)%jq0T*vOOgc@*a^=DZ ziuK#|P0bC#|IU26Txxk@5G#Mz#1_bxW&!=v!2w+1FfBjofUesyA0W0JqX9fGHGPSx zysly`OVl6ii{n_u!jp1S94YZ&E&qxl)m*!N*I)SuCc9$@ZV4hOgb4{{4Xm%#=ufLT6)Wf;)xSI=1O+(GS< zcva(n`M-zz&)5&3i~o5#NHiko2P);g;%FY8yEw14epm}o;)nFGNS>=8Nc4LIJ$g>- z|K$HOp#ylR0CZ#j1{@sOfpT>Y{ zAbsv`CeFXAqt&YYP2zi-z&B^^|4sVYPs{AGpS|pV4EPz&OtmwtJ-&ZSPwq{q_dUBk zr1!YqpY?vxp1r+L>lo&S^G<|1!%9T&e~CS#=ZRNu>DOch&cyF}sYI)}Cmu{6ml~Et zx_O3Oh{V5-%?fI!fR9eg?A;ly{Wv`RhMar4lMd$m*Cxxh1*lt|YZ?TyKF4qUwqpTi zqtn;-ns>2^XP4?VD*o2T?vDZCzizzTSb~b4PpVbO6Fgn5z|J<8kpVagmar4nVVlMd z9sHlxxTf*PMyncJZBXq^_0QGSgVl?44SB!%hR#Bx=qWsc9v|)vxCIpm)+USu_p8AL zR_44G#eQXllRZzZZ=MO%YwJ=oZLLn~_2sJ!RM&}e1Nxj zmbIdG0Ln@rcL}{1P3dyx*CTXPIH2B)2w-@}gD(Zbjj-vqb!|lchP!Wr+HX z`;GpW1OKc3)A&yXfcUo#zzSnOQN2OlA^M|1ss+x>HOBvoXpg7>$!*AAJi}a(za67I zE2EX(Y2x3AAnIV06PZNT`ip;mT>CeWtk#W1`Y58-gIU-5anHu|`21~qZ107=hxcCFzO3~C2y^91IKA^w z3*aI8GXsl$=iJtd&nqsQm^%|%(wKeRbR^ThfYFnl8ne{HJ& zevhIzicH?)*vc*O;SW*Y^9Gr|v#1e1gu0*|Uz%#W$!;blB75J7|w41n6?A5*U*Qnu-Bqdf3cV%GKcE| zVmVX4=d~v`NX#!=3i~QuRl}VeLz#fqBlg2F*1n2=57Doc2`5;PZ`~~5g{`I92eprG z@7rFs{U$3r-az&W3W6wH*f{haWM*ofi zmK6Xhf2!=ogIas!=jau)I%x>#H|E#+`+F=Z(Er^37f&n;hy}=R(VtzwQUUCFWEGGC~4t8E(X z%i0_Eo`V9gOncGR-pp+Md1jRi)cGX-qxzNTKXcLfU93YF|2}4ns;5c@%q)23uZ-Ae zwrfe`0=~QWp9QZuHRzv`ze|(rJDkH_o2ghxmr}bHrIU?&+%C-PzC^n|k}UNy{H)#l znrhus$OB%AqIXwgR@V5OOa{M~PGD=ZLf}lI`QWBmRGz#%@#%oJIZ5 z-x>o^{;U(avw9W3KO-H5=VhhfQT5;J)0!iDPDYd59zJ3}ZF{E z74EN)sNIU^IT_C`{$)clC-HCHuKr$bpy!XBbp-tu96=dV7(hla_}8|?#zsZ(TQFKP z28h+}&o{Xq8sIu8yvufWUK-Q>s&!&(j@HGfCu12?>j0PL^XFx>Yt{mPM84<|ux~HG zJD5pElE#(SVPUUikJa9~r`j6q8dVR$le_xQ85tE%b{dt+jNSK{`N{Q_YL|I<_Ts#9 zDE_&y2XQNEtt2pu7{6%EV7hr`?kCEaAEa1~XQXX*O_U_ZpWXyZ@xDuS-d~>|{4a<8 zqXN7#$Nx+N&pl+0U@l`{>)XUFJYUzJH63FaA^Y zpbbcNBU(UyCkK*8v~s>rR{cb8F^1ZRy7kklU)Ng^vpq_zZx{E8d}CH_T?hJa<=)rm zqt(kS8OV3+x|!f#C2%|%`sMVsS(sh9A8Rc~=5OcTU3+hCp9MD@*}}D*{QY2g#(Ho) zC*FVSYRc-q#<^q!4utjZ2>;)lV@LGAb5Q@kX^h1CpN+kEhgS@%$5UCbb$uimh7HK2 z90H#{0d+)gudd7ya4kST(3-k^$2bf=wl`y4 z)?3Gxihiwz_}3oj`@PS1&Uch*;HUuB74*k49YQ~VW7&Oinf99P;q4|}mX@a*>Cvc` zs(`Mjv>Vv0aIUYo!gq-Q?ttf*MRw0PM5|cK` z&pra`FCt3&LkIQNZCr~2a3^ckKB6Pm^vn$R_v-rpkyNbgMgIJ&p3(HD`%`P__L=SZ zdiUs^t+!u$hSt{j0=rL&duMC${{6WptkgN}QRbfim*?jGu-n)N{g;TBuNvQr4gF#~ znR8dW;+z&Y`p!Nb3or#eeWn51n^J|m3ktwW_^VMMEgd)YnC2AiWo8xQqOjNN*|Tna zbb#~ez82wt>6OZ zunK6ZY89$}udQCIrmx4=`?0s^#q%;TUT{wX=z|d>_Z~yZDd3;`4p~sQ<18 z$O!evc1~p9qAO8(mu@eL0_fV#Dd-HkI|`6mkoDE`^PcWo{uy(|uHd(V|2yz3kK;vd z!LnY49k`!efv>5lhVJwNSqdAV&(^~`BRy2{`ZH5Sfml$fRuf3p+uYy44s*~;s~x6h zAbVH4o2c{M8DF9WYh8>D%ywCIti{lihBM^eCDHdrear8y_!#@G=N}73%>J&}iTqbX zD_`Y*?Eh0im^_^^K&(LY2J3yNqvL;i{>ujJNHR6|2LGy+VfqE-`7iZQWo*1oQSFgy zPSj!a@6~H9wE!goP)+SxfDy3OHyT$}XVhB~rQL^0a}LqJD>rWCd$NbC-rt>mr)9n@ zh|jdre<+^aV+`^11w@4#(I@Wn)++5YSR=A_@2b70wU3~i)?ntEtTadFsy4t|QTGbx z?AieNXKY2mzcaQxo~Yj19#_S6t6{X7zk1J#oVj(2 z_T038g{$f312HO_1IYtSphw5*&2<@zsfo|W!e=Kpw`fkTr>&1* z`$FSVs(p9rWdGLtwhC|y*ueSpQ0+tA-|=Mp{$4FcH{t8aD$dZHqdBU14E?}1M32}7 zPU5;r@$Z^@>uvjU=GpsDy|b&SJ1 zI8m+m*Z&*+n>!rPnbYFm+wpe6zE!mIVoj{y6ZwN-8;Ljcfs69L%D$d{6o?-Ox~=3~ zn>x=`zcFVMSu@2l+Z z`8mEqKa)t+xujpu?DDoab!tX`RYCuc8KDt;ZmF|#-Mw9rUBTp@O4+@;jE`6E=wuWfImgSf z%WcO`mA_N~CD-b6%HvT>^L*bc_*Y|eeStPMBd)E;yJ=61ij0uV2h7K}zZQ9(saXO1 zW~-tX!0oN$=}bCn>u#<`Tc#~_jpyv>F72MG(-G`$y#6F~rMKxF@d{k>N+L}6X5FxP zAi0%uVAb~jQvEOSfAl|B1I5S5UbAP&0^iyLXYit+*x29N0l7jLyze7p{;u!$)uLZ} zp_)H}L#tzMZ)w=Ro_z&=Rz}xflkZOsw;tc-YWREa7x}C5-x_?ot^r$<`$uCl{yPg0 z{0D*Y$*};5|MmB-05amY4^b)ryexm)8)`u$9-x9vn}H=+Puiub#|^Pe%>gIMsl$^6gEtZ?qR!>{#!%b-=c z!_D3Fhq{1$JvV5d*uJCvxAs)M&(eEy_100$9sO3RNzo3-Cld=eOP$Tm>Zs4oy4Zxw z;>^A9az9!BBNmEUUDmnFW<`0pfOB0`_$+OL{%vOPG!_1TTHa$c+4Xh6-P#=E`B@)p zupS}F9KGW<*)DF??5#-97M5)g%I;x}Uh^F6azLAV{@SlAa z^KP*zeonp(UzZ&jVgvmC)lu)Hztc7BzWgrzm3~W)_c7D~oZG3PlK*=h?qEC#+c@ zS(-!t?`y?|TwaYJN?5e;Xax&?>*w|HV>m{m>6_6X!L60R^_rbSbgu*QH{e*GTWfra z|CKt}UlU#+`p07nR={eYS^PKa0FqfO8bGlFVzb)=*zAAS{Fw=iH4y)J(;c*(3+@n;{Qt^m>6fyL{bB4FJHCBv`(p6_Q2SE)ejLD_kt=}K z>^~dimijX1kXAr6I}Zz@Gn4Z>Jhtn>N<<(Qob9sLlDU%Sr!FRy@qViJWp@(s9~E#4 zFx3|yzZ@1|BjSKU%!n_q~k^$p7z-^1mgq|89++P$P76<3rT{U8(tflU)L~ zrc2m7FyDn(*ZUKykxxZ4`yt%Jol@oe+EqPgKhAeL@bCJhtoiqP;*TA%!i07mZ zy4}m(PKVPyxj%JYhjeOzqpDhgp^7mDvD6cw|4#7#3H76&q6khT4|qMg%4F7C45=5Y z_Jd1{Ve@_QN}|92ckmz1s%mYN@2sDn**gRT55od13AV+&F|C%vXC(6%_8YBW37)$w zpQM7n0v>;C#}16ev#$lxxzu_Q&ze6?o1X9qfyLSAnj~t4GLM{u}(4 zoPUrR6)=d52AKF?k8jUks}Jo+JT<>($5V?^b0FHmaz%RYa&7u@v229YMSZMHEI~d? z3y^w(*hSyB=qwvhqjF<)MZE`#?ER?y_G@{JZ|otk{|JAd=6idqvwMcSXNi8-{@62T zMU?B~srXwLA25i1+o!ZoZ=c%Ur#)Nyz}8dL)jQvuE&BYzLiH!{QP$@05n-XMer3vUhQ+e^#Qt zZvgqhry3Ke13a4JWVFBQSs^qPj~+?quO`~xVfCc?d-MpOl~4W^S-%sh`*F`t@$VS9 z+QuxPvH!H>E2oCFMA=Mqlzd5W9tE)Iq>f4%OYNy6Rk0&LxW)W%mL2GhJ`&G=Cp(y4(mE9nur|9GpN$n=mMd~+5UrZu@yw_I zFX374VJ5i?(`W1xdTnP_(4%;keVf0ie@u1ds(5i@_-N9qfI+f~{`?&#Uvzp^dyzf> z%r6C^hl79BKQWRFq3Ac#E&P8j@UkFS9SQcw5x1`jdRO6RT*nTK1LJypl^a)Y$ojo) zuLtA*6*?Bfs6gxB8t^rFhjG{rI~e}I@gJqH>zNB0{p-E6lLIu~Py8?X_5bRB)A5Lz zx>V{G3lQ|m021HG{KMyy6EWTw_Z}Gme;e~_9lWm}@0nOCI_VPRtY)K!-Sm7T5Az+} z%xr(080}S1{}kWYvwU~2@x3)*qkWmB#{Ta0q3*XD{PjBeYaQSEs0zTB>2} z7%-vwkeyWasjsYG0sp%*vdeeskPd@+tkuausQByq)&AT`&satL&&U-7r!pt)U=UjH zZgwuV)JMXl5(zktVpVRC-(e0JNn@zw`+UEA2ijG~Fzh1nLzi8I2V~@Z@5MOt->|RI zmh9_t4Lb#2OuzLbSPSp~<2Vj(m|X$9D(zWKXH~n&JWf5(->7&L|LzBHFM8nlL;!bI zkD#3l$D3RA9}5s}YIiVeg7j|AUeOSo&(HH@|N4I|N0frt3@e19dmC$8CEOniu`Enp z?QT3ja(xxN74hxjUu1je-Ph}QeyzY--$wt|`>eu$K5K3MuHJd&vcwLH^3MM+3m^lR zl_wVW8ggE;0ng2hzkFZB>;F{%vjWf#fMx$NZD3(T#ee%(8(=)|p|y*)C*HgFdi6}wFc>Zm+Z99(1Ms#)W`cQJ)Vc`H7p>1{p}8+;y-n?_6D7kPai_YZ3DRf zjvPC8`2X%?ueRoTR>K19$BsMaU;|d+nV#KzJo^Cp^Q_i0x!J#YIr;mA>Z$5aso?*R z8vbeP>De*xYifF*puYbA@&f&^0y9=~(fMx`*8H49z5hJ*j`gMWYpf?4h^BBOz0S8F{_@$dg1VQ&Jr*6_LoEeJ3S*h(t=E63P-uAzFl% z|MPiXKHpp4@9+El&w1SU+}F9zIoEYQ=ly!WU+?Af{si5kz2HBiRB)V#h-lAGe(M3K zH{xCRjN}d(VaGUU$Kxt{qkmU|{T&bCW`&}970Z-oty zX!XGIyzfl>Q5==nzuvz{(fY^Y1$V=_>R2#qZ-#AKuRfhz7fW-eZ z|5tl$-XnY{)zIR8FbeQdJrGNuNME9#@_^`r@Pd*fG_sJ6ADa@rx~uweeJc9-LHx4s z@|50cy|g!YR<98Ed#6SJ+{m75XUF=R`!XF+aJ;YfV}Wp&9!(2 z%Ar`-U(}+fU=6Bo1+DEK$SKOP3KDck1w{JY@$@73l6tpVNuxxSp0`hGx1kaO_RPvYks_FRZp z@Q3a$-9OdWQoHxrdXIW5YI(L`+o&E}kF1BG3EpCE-$nET+P>O~l>zprR_L2l2>hd3 zhch0p8_>To(S&bz8@!Ce*>-1~(v47$IV=CV@}Jd;M*rpivHyekU#J}eGat#$I^S9>P^aQ*gy=qU@vHzvjmf&7KK$f0t{mEazD}RcVUD~~fEWk5tpX%<-s^F)C zL*saZS%B2>7}v9kPbp5-iYQ2=-`c-Xpm0SH5}zR6f*d#2Q2V<$vc5Vv-;Aj24)Bbv z`AcLQzc&vs9&~R6rZ-~K$KL`Cpy!{X?Dk^CPcnju5f~Gg0Ph&tGL!$y{%4j?GJc81 ztCvJ&ymdW*^dNQ~qP+*54H#XpFn6JEpLq{z0DYpw{S(1UPQbBnuXn9}3HL9NPd`U} z6Fs2q*ZMn`(i*6dL|*^ZnXR6Wi2q~g<6HRoHR$g$6ZWrU{NE&E^KbHg^C3CPm)^fM zD%SgNgr$6xHLSlvHR$~P#pv?;HWIKswP1ULdh1i|8>Q_J9<|NZtmx@lml_#0_NRr8 z=dOfCeg{2TExo!SwJS1Vuc&noC-6G4f9e8dTbT~4H7=MOpmjjj&@ad*uhB*??O8Vw zE58*{j9u{uw&a!FjJBg9?|yjAbHw}~V&%SjiTqzp#%m8M2u@?x+V5En{6T7XE@eHB z)A8!}t9PttklkC2%HDr6x9GN?5dHKi%^Nz<=ibCNCl<7j^NNeC3$P1cFRQB$_iw7ullS|3$O!=2*3G z7=`bCbjy)p5bBiTr#ZG>K@F1qMif@yJ8uL>daAcPYXMx}yw)t(AI6%i2R3g|U%e61 zVJCn!(Q3=_JzW*#Paxfl-=oBpen@QP3RVQV4*&l}<^kMQUqTho46tk_&#IikDu5MQ z*$&Iq7HZ?80aE)X_fM6O+#r!ZIc~wfzW)m7iS@wrOsccC1KHYrEBov?V!e;?|7rZB zwx?tQ(&^1gAGJfge|-dFf>X&Mtl7pK{;y7;LBAX%9zf#p<#+b#17zhPyZ@yA$7-Ot zUc3q(OJbkaBRcyiIoX?t z{k_($$lEqlZ~m3-eXNyUv+|);(0;GNvz>(Xx&rIJE!zM0%^a+>^-gn7vma|jpUl%& zE=&EXk`wPd5-F2Sk1F3u^iGt9n`+hM0W#VAEtd7~m1*~gh0J)#^@9E&p~MOb{?$23 zd?Eltk;M5pe|2n=(rFFDM3{gT0o$VoHh{H`Mk9O%i+>Ai?%Y9i<2Kgyy$VbBb@ndQ zyS6)>9>KFQBjBz2*L3i|j~-!X*PpKsqND#7bPHUbir`-T$Lblpfv2lysrjwx_y4K- zN@n^lPd4F5GF}g(PdCHgup6Nq+1?4p)s3!?;F~&IQTCtNzK*#)rL?b)W;Zp_uamLHgt1|6zU}1pilo|0|KXm(Yjvb(?zj>N6lw zL^=l`nSQH%%<2tmt(MYT;`{pf$^DnCfl&kPVldpq(nJHzZZ0K22n zGuHpv^=d6%Th+TBT455%HrKx)sCV1A-P8o}5X}AQ|E~x8U#(^Ti(}EuZdvP3JD0RR_Jhkg?@%_UCK3Wfu zy8q}4$4{SWIii0Ps!!Lm;ATGr{WtM+{`evO|IIpef5-X{wANoMTTnfcXX{-5-}FW| z$Kw6JPPgBt|4egwGpxB0sa_h)dAu?!j+Lp{ns}J;S|gS5WglXOZ|~2aO7b7Y|;`@2nr7{U1tPZ7yD0zr03^ywP|9lR^BZ!~?d%8+TUFc=W+8 zaF~6;=plIN$CCRy8~%R^?>$ORaKrAH?yB7-nHN}f-^Q*#K&P;asO>qDeqP%$Q)p~G zqMnDoVMFVA@e0J*Ir z*}qg?WY)!qr(+kko_uLIQTD{jJ7Qt^>W88;%UL2>omx1BME(3*gWZM0tvV2(h` zKd1u=GnmdXW4MNK3BCCL3;%=FzQzE;#AB7!3|0YT#b4+Ax#sA?{5BsjCwgVcb{q=k z!+i#IK=eWJe8j&RAPiso9}Q5LfaBq4s4vRgA3K{I*V(%|zdo4?pGWWku15>}kvYB< zjO`!b|9#^Av-1Q+kx~~{zb4Q3XsUh|ZuVq_t?y(1KVY5DJDaVVUxS!cIl9>7f=o3) z&5h*%8QNSZShM9+604tfH^NZ&Ujp9iZOHC)i78 zc4To8tdbo|^kiIh)21w0k_gE__X>sdV21L4wy{7&)I=HGh^Ts`UyT+_c(qg74O&M36G%S zXcsijIKD%&ezEVv8G&>w(f_yGPb!+sqKL&9ym6+|I{m=XA57F3IiEzP1Q=tye6I{nr9lZXNRt2u*J)X(SM>;>q2 zYG(pi%~TTudvW>4U6Ueo^7XLfbon>#l`w3`{=oLNZ6}XOhL92Wxv|FnDo!=J? z;7lJkJHJ{1Xhv{dSi_23+j)im`)VNe6mk_Y{eS-#|G}fbQ=#V?q^bCE&acPXlWZva ztp7JlFRLji*KT{CdO+e|e;^US;6Lb(9*74NEszdDW>6gu$5#Ef4Epx#owKTk>MLPq zKj1lBhZcAp)c=d0zrp_BLlew_R4OmVj-1Ie67Iim@1|atjPGg0`+kP^_Xex|oYHc? zjgS%Tw+uXZjzy9U1i!H{{*H~;{~wG2ln9kJ#v`;qVXrw`DRoaGVy=3x9n^Xj{Cfp; zNti(Nhd#gp+=&%Hi(qe)onDduQ^h=yTBY^D`xx%dOq{ITD4}}6wE@oJey=4%@NeYy zr0!v4@pflsz_jjIdIT(hH}E?Uejok(FJ-OYW5N9Xcm$uPlkmlK5WSJS|MT_7ICj_W z=~TRQ@G-W=-`E80BmRwsl#Ga#igUI+Wls2tdeO}2qTE}#yNpz9f8j=j#mlrZKJNJ_ z>v9D14F6LzgaLT%*#5BnVW@1_5U;El%GNa+`$Z!3;4Mg2JkeqtUgrndtWX(?* zfn7)!X|XEa(-U0=BHWugCwjjQasPAZ^S3s+pDS4x_NC^{=C}BO zTe2eD;ovE@MoW_zoY+$nh}dkAFC|GWQF8TSR_P3Gl|+vSev9@H`=Vb-4=Wb`#fE9= zCOxzz^!%@$|o5e+A^95AGkRe?qMA@%pDk3l<^ve+csa z9PED*tip9a?fIeSp9(1}dY$n*4P&(F49OrrnM1y#H^oT~AfOD_EYl>L;sbu+Dk_W&o9K z?Yx%W)d5y&Wj(zrvsRe1e4Xhd_EQyTp1{rQU*ulAEyXdT!12r$|J#9Y^LFB2U%`0+ ztAl7Og2(f}^?}y<$Kp=|^OJbT3V_M{9*?hJl){+fQk<|Be0?1~7myfAjzn0dHI%i}`r>9_3%g1e0-$H>CA< z1f5%Hlw~;D?$OQ*)euns3Qy!J@c%GO;2mnT{?=~B{^v((qWzZ#7i%H6M^XK~U^A<^ zxOu4gHQk`zYo2Mo)GX25gk5v)suCj>i>ztK)FF{3eMe<1=r=Yu9}?m*>Iu;wd5`T6 z-g9n{FTRy)t&tvo;svETCZDS0Cl)A9k_R-e-iL`U%w3FXZIg5VvldXQ8mz<7!r6zz zRl%ncr*n0#y@>%_OtkYzzWFb~@M&m(BfFpJ?hOl=+1&)oKB8p-FV&CL_mUa7k*MHz z>PPDr>bIHk^CrJPPA8GQsVBS#t-3t%hRujLtjBjSKJHz_)>`@JI;QsgoxdGFaTfQB92wI2kb_P8XZ63znomphuWlA>&g1@!u-Z?_H39ViI`jm875(>fA|P2= z@_f9hOYsF>MJr6}j;WWeKHJ9CMz*q>2$!?-wDideEQjP~wZNwhB>UfB$H@{r8vyHWTZA449FJN16+MwK9dHs~NN%=Kq4v#OCz?ieDQZ z5Q`^{l~*PHqcOk8>j)$;HY{<2*h3{+4432M4_H-aWPNt@jedWry0JpV?=x84?kBAX zHYb5oGXp!p`wxHtT*`fa5-Glu8r~CN0EgfOe7d_wcRMWm1nSrq=~m7i~^tVPeaU9k1X_zsY*VtYqv8OKQjx(bJ-f zO7GF*#lKY%;@>O87ZBr_2^HO|UXcCBg@S)IO0m zxDfnbfZV-=1~{gBRK0a|2KLsxnsK~jzm^4Ut`4wzYqQK)XQjY&2nhbQkRmb?KdfcF zT0HHnHT2FCm;&>k)plo`0g9bP9Ok?f*EIt$0oy)?&DlWK1ey(8kH6IkzUyE1C@Wn9 zvJOc)`ToBdKv16QAMu_@VE)hR;NKMhKHhHgf_j;PS-=Ijf4NWAM3xby!ZFwn`t^oN zbiljGrWPpm0IB{$0BbZN&T*>VKj?l=XeiY8G#<1|2IP53$Y4q`Wd(ApUx?eoB$`KT2lg zHL*W6fVM80AkrC&rZmRF#d;~PZrUF|M|n2FFUyGBE4Q&>%DA5+2OU5Lhj33LuuQQ| zR@}=)3d0SS?4mP@sNg2B|Lw8=J5wL@1#*B_GQVZ@-m@@(Q&}hAaB6wv0K1ac+X@}9 zc6S(9{|EN|*RcL4$PE0so~=7SnS!;@5yvsQcM<=p`Q**mHXznGvi)T5L{4Om%{fcy z_b2`n9|=a|?^pq-U*J2zf9$+>=}$(_u_zIOjIo%H9`JwtBKIUd82+C*{*IcP&?lm_H=9iAl7?0ruj296q{iyR^blSSw5e+dR6Z) zt*w8WsGq9?UJU-vC+qwh=9iq-J-eiL z@&JDl7f39ypj~gjU|n61s)_80^*8I6YdWqwu|DmC)lceksKb7OnQ2#{1AavQ|6MG9 zhltHwJYn%$BLDXNnu<4kM{iO3K0ntC?@uP~GqisnzW;Ap-``_nn`5_?%E*)Qn;tS^ zGgU#cOR3lo^21b1H9(P4vF|(4MPUX?ZSgdGSF5K7p{DU0XvHJh(H#pBR~yp$|8pbP z;rp&`r~Ow`L{Al-F&qss1qt4PIQ?$?>`o5g+_n;67Z||p%-}x(i*-1&S3Uy=n8mg$ zeFE3%E(_kfbPM|xIf386{Rg@Wc9$bpupgY^me#kL4aU3)3}7;2>1;o7WISD;$OwS< zE`Aep6@vx;vBml_VtbIo=YD1S(R9(H8Ks~-K2>~wM^Ws%4eC^59>yX4K5kljHEY;K z{t5>Sd-JjONF z-M@s{&|hadvDJs8!1-h>|5WtFIv`(-V88Ep{eHfY zLs@mn;Q#LtfY^I+AC{k7Ky-$&xI_Zf39k5={y#a|KA;PMU$c{8I6=EwAX!U2o@6l9 z1>(O%{{4U0hp)uEaRL8#BvSR0OzCoH+G{$qSm}H1?)^NG?-PTuFXIz!wSSGJ{20$x z3!r_~<}8P%Uk6Ma*L#B4-=$66pVpt*pW6Rtb9S?6b3HjNXZ#dt)fz?OWc>Q5k#Tu> zu%-ki;umhJltyZUg4nAdGwe3k_Lx}4NMs~m3zH~gtXe)J8p6MwQ$GjW&{nH0g9Z@& zMga6ga*o<6SGGoAGAw;Jc%S(S9VYF!G`1!uN+#5i zP#3A$qQ4wV_biT{OXZ(94%=}Y@|+w`_orSf9Ntlmw_onkDv9hX*YFvo)2H50;xj(8 zjH1ud&CmCn>iJuh?W_v@!|}`oTDy6-Iivrh{{1k3zY`mJwXFjj#kJ)Be*Qv?e3$O( zecb!Z%Kc)J&6Ep1gfnXFcM}jAXoLUgSfMa$A4)3W&7HDx3G`Q zPEJ=b`9;a>i|GI9|Hsl7&Yxa?t|=V;ul*PQa)4C)3_%Cj^G|Ld3-|su${0iO2j57Unul_u~ir1=}zB zoqZM?p_B{<-D`u1nb^TM==F79vjF`cckHiA2k6hh_s)PBxUQ~pQY1F=7Q3ajR>D$A zrd-QIW0~}6qXU%k^r+RAE8j|-o~B1evi(j$X(TeTpEy~pf38xbHB7+Rnvr$!zcAm! zxS!}xg|g_$x6L;j&U+JxVeQUrzyo0ayRscZ74Sp+Y)C(gTf66Vze+ss479-UaQl<^ z{n_r0-N{r2EeZp89S!hG{WoU(EXYbC8q+`o#UdJ^_1z zzRk)YFCu3T5)b(X{{OA~{UUnc;rd&21K%1;FYeO8Q`xo>NQ9~tf_@QeL{KcK9ZK&Y z@gE(a%qLqYYFxo%G?Ba+Fo4~_{|qdHyipLg0RAXZCjf-@@nwvx=Ul{g18o)8py;m#nDV zssEb^lmUo#@7qX#8bBUU_IR9pXYlMPbf-9{I-4%E_Y;wQxMlx#Wqk$Dzkw+``^-7H zu`u?MTm^s5+SprqL#g?GoSOd${q>0V{*bz#XUGYxixg?63zzmxB~ZyyI`wkp{mPSQ zjSR|WV~rBMi%$^g)Xph$LAx>(t>I^Qg<|FWlz6pbSV{AUuvb4(reOrY?3%f?MY*QA zKk+Z;Rl|su!X(VMmo5SOGaqQ*mH`}0+~Z;DfoCGckD)6sLI<3U-8zl!4Ep&Ufe&Cs zz_P3x^bY8MmDT;`U2wi^@;quYMS*i)*-Ia;@nSnoPt%6ZnRyb zm3vAYHi#De-j)A5-qC^iyD)ckf+Ov58J!%R(KpHLhU zlKULdlBp;@*E+-i7N!%(?)`iF-($_U-!)q>7x*B2D7~D_^)R|Q8x<6Pg#kFX^l^}X zDL%l>!~=iL-$T2z*K<^dVyV*$Ty`J(wIcYmUzeE7T0HRu#HO}gZV+a!rHpM<)|2Uy zLyzPNy)*HcNUpLiFp{xg{Wi~h;CaZHN67xjq+x-X-ZqY590RIOtV_3=2A4*%nf010JGk?dLL>{$hM!S_DWid0|!UBSRz2M}rV$s4X z!WohmPb55kuX-c8Dt1u04|^z4G2>-+)pX@N@h<}~mK9%DNsk5gD$C)yj-$F|Ciee8 zA|A8a2;fb<2k`+u#T9!Rb-veq`wk6d-B19+PnvzL&yySrB~hF9TxzCcaDHr;*d zt*8N-3jWpx(RTFFe!0S*Q8^><*893vfE+>VyaM{b*S?CC)MqYHv#cy?MS=Ez0{C}j z<{iPm9mlOLiuSOBc?fvV2;$IEmk0>uTKY!&a zgJ&E6H~a6}L(ceJjO)n+O1+P$Eq;D{`FQ(93&hF?@nHlbI9Dd%Z~r%5D3>Yre-s_8 z_NtDp_vI-(0|RhXmg|t|XVK188zr;)-0qV;U75Qper=2|d|~eey8WF*)$cp3^Ep@l zkInhbNGiT|<0&g?MIJ@Gaw^(`eq~olE_O?%Yj=BjfV1=?pYc{xHK&)K+TC;$@BiEV2{qBhEKM>Ay0KG!K z4D-2zb%M9$v;K_7bO$4LDZKt{@P8`x0DEEQH^c*28wT*P?)y~y&)pr#3IYe=<=%;p z+hFhQHMj}*pTf2QY-$=hK!hX`DB2yhu%*~sG3>o%)VyC2s7`ZJ=Xt!$#jWTN@7mWg zeMd^~$z$a~Ue6J6i~W~9cxEho#zoJ>(J&T}$UseMAAljt{< z<;o+J{P+iv*64=3@8_i_VKjgpx3p^FKR$uAf8$#8Zw~(VVQqs$n5%m<$iJ0U4!%rI zaEadgNbEzP`bJ_{XAuYd3>B=K!TzUo#}flwqq}r>7;*n`bPqfnANL-lyC!qEJs8;o z{7=F9Pvmzz0as9THj7d3M< z-{79@vhGa4%+6W>4p5;#U&Gcs1c$nq8Bx{%{sv9(QvIu{SDi$h&e`>Av^Ll-f2*Ml zc893bcq>XZFX93Y;6{2|$qFd}mvW=V&k;~wrjQT@5T4axj*Ysap@ zo;}^h{(I=?xv&~aoHFIg&#UtcH$|JD*So*>uii$@*PEx9^YyWQMZNcabbdVrChP2U zrBNADB9)Fvo5(A&5?ifS5$R%GJrFb(b`Z%{#+3JH5Am5yq}JaUnU+k6jnC|{i?_VM zIZDC5*}$?DTtwof&E{Gl`VdQ z%sv9Lufp@+r#l0zui9M=+rKV4U>b7+b|W5mBE0`<*zGG+QLcsGa6Gkg_WRfOw|nw9 zkUs{d;fg=$n(w$p*9D7-m&$l#R*qPZ=l`+2VMZd|aZjwI#0cE$80R?#|DNfntEqh! zj$1~;vmKG(-ySW=2728x$~m`q5)fobRZl?a_P zbw;t*3SsTPTEPfFB6`W_iTHT)`tz>ZI|2OL|Htk=8GFAFGr0CL=j4|zZ|fvg~1KCPHYM#Y$lI%IP?(+;57zsdI3E{-0FU6fj&pxZ&hXj&P}X; zMg0FyQVnnt@zfu~5uSzj|DJftXz~ZA(I5LfVhNMLdsa?c6V$75#CSVgLOd@sQ`VqcO{ho*H8_(Z2z?8E%sRFocY$)T8!Yy%s~yspOCztp+B$0 z{$GLz@H4E>#f;;1^}_YZ)w@)tO~zIk$5sQR3fLI^7;x$goYi?(>n8r~0cIB<<9X@| zd4E>xwO-#Eo<#PigZ=aX+6<;|o#Cpj)pu22bw!S}mteSmiO&c5;#t&ZlNZFRPfYMX zbAZ8qjwo19%pm)sAL0jC?PJg1U|yYLPf+`RYxxu17x&`XO>18~f1`iN4ramO-8GYg>6cKfgY9?aWMluUf)2ZmSSc5Vuix)?N)$lLo2p;$ zL-c!>`Z(b*9_wA@EMpmtdi;O2pfS4SP@?(5y1YiwwHY5ZNW38P|9<|653l8UZh0z& zi})FSO5QPZU|0C9de`)(;TK-mzrDXx{{iYk&PO)vZ)BH~SY%Ix*jMfOoL@&s!Pj5;`bAYOmw@D%J@Rah*4;R8hv z{HOi*Y~zIq*Z_hukZ%@#<`9Ge2ID0{K(E-Kp4?8G1k7Zi? zCl?_4OP8-yOj#p6oUuBxGeC!$r|NTg2EQW@do|I&Z&96M<)6`iyJRj6`qyYT`+bfk zzI!^|p5|=UZH{c7ZPsU$7##}zNU8%YXIF&&%=|+2Tb8AZ-f6YF#})&I{Pg^-Omzq2HA>Q zzq1(2c{swgJw}4=9T>ZB_a5TxZxTtI{2|8}i;l_Ix@M+pX60^6okYHC&>l_{oh9nh zM@{Y`PTdm@9=+j6c(17^&g^0D+mVd+%?M?rylOP0`dg34>y~F1gnNWfBKp_olI!Qm z=wDb-u?qU~P#C~n&0+n!@B;qU%pfwnHT#Vvq;vF0u5OQ`_whAf!RFry`?nLwZR7*B zM!%shc(d-s_4lgZgVYh=P)6)5J~ePJ`p!lDQ&(8`y-sgzc=7-UX`0#%tc-~ zZuPC+Y|T`-|MhhH`VuSr{+#N+tDCAho_Dn>iSdXI>HGuOQ{J53jb~&G z@CNYz4WfTHqD`MB9`y>*fa$EWb~x*;k83Tl_)qU&=jw=m=ikfsW&2qQU9#)XG}4xhz@V@FQ((AYp=y|FdGaP+a4zG zJ0Hcrm44~{rNuARewmdp$RKjn^#7a-%+JeJe0Kq?zuiDwwZuAx%x+FR|D*8$xj?c1 z`aX8_7{NaGS~Vr&^@vIz<&|MQXVC5cr`3gY{QEW|{R&>{jcw)M!?3Zx(D}1Qsuw|< zufnsGmnxlW5~)6p8UIt7FEZ=r4g9;u`}M$0^n0AYIT1-V8?S#F`yU=Dmo%2_b5~Y; z9f{FeMdHHvWt52kh=1iXR}%AD>SC)zyz=L{kz@Pf1T}-4BXR#Cv0)E|i6noZrm^y1 z9@x2Eb{66qDey@1p0}bk&cZ%!gGVg>^)IXdviEoJQMh}2 zc@dueCf<3xt9UNatR-I%^vC-j!FP(Ta|ANd>Wjoq3gUxX$G5~-)m0qf0O#qyT}cli3gDG#^zU?aWR}xuX=w&1H1xL z`Zm`8Jp8Ehh^5?$NAT|?o1W%j^KY)xbV_k&#d26e#E~uf6j}yzQ1hY`~TgJi|V2e za>RefzqVX7m)^U2_Wpzc#Cu4VaPHRL&;23(t^c(TupI#WhT8GO0ZNolUO$3&5)tr~ zI2Y-e5uwLWYM-?J);O6D-H>iS%T%vb*VUVl?fW&l_DQ1tS2FI` zuW=ha;c;aCuA{!|c=|kdsQA68|6c!f=KgHeoCQKkkNsrUB5k5w$&dlWDru=jX_#Zd zaH3gO=9vKy)oPOPOJzNIfx=qD0>TW`9i{Jw(wJ)-_t*Nz))(&jpZNFF>;-H$z&=cL zD4%I3i>zmC&njaccI9=Yumh<0`(5v?-mk#^xp)F662rTJNXU6GfC;@f;Z8?V_h;^J zqqe{2g^Xke6zqfExE!D15;VovIQjy%^I7-j^UNk(AN-5`F)jYh{8@FE9zfA#iAdNF zIQb84vvEtUcIn38T^kutTV|Xy=8k)@(eCkyxX01+*usROOM~k{7Lezcr=@1e+5TUS zH%93DVF?*&y(sy=E5qzXefV9?-eds}>A!&oa3}tc@eQ?HYOccoI?M(51GT^3L;5ZT z{pXM^xsZ(DLqr08!HkL1>(5o+0H486@NX{AY@L;WnG-AHw=&pyIj#s|G+><;@#)y1 z4$#7Hg!jJ%_J1b!Klon-jj|NysvGR_J(25LRV@Ec*NoDqPo^$c4+F^mg$4M3-W$Y! zVGd#a$?2CFiMghJf2xDh{Wq(B%Kz05+JC!&X8o_AUYj1v9*dt>?oCZkJOH(TT2b4t zK1eNua~M|TK2PW@T)j};Qf~%BHQxFYSpSXqUzftc9_Ly7t846Uah{aXuW(cC;#A^a zzhs?{+nS0VZzuPE)BiW|-S4u-*9NU64TG1($NP?qDKo))ywq5f#I0nFC6aGc+f8fa z`C+We)ne@Rl~S+lD#6-ru^-PMwkY)}N_uRRc<_9!R-{%95DYBbqTjhd&IasLjnXAT zw-}OX=1)#;RL+>^Xi&TzIqjeH{)7g&7wjI=t`%}57X56t6Ul8a(0i5#olWlYIZSHx@UTmvN4KXPQNdBwlgLU!z$ zidAkK#Bx`%MEMW57vz4>*G`h>edf{)-Nf*~`pk1K0l)u~jP?^$qu&qnx(R)IInlpc(FJdID=gyt zJV|9g+*HqWG}3$}k-yK=r`N3X%g0RI% zN^DEwc*T}`ma-HKi&lNx_`b?t;D$k{9t1D`w|U21ZICMm_8XKPvly! z)5Fdv;1=EOnG<{)RsODxa}3%3^O-Sx9cO-)vpz=*@qAVhIEVea-~qTkjyiUA&>%w+ z{fYT|w`xge;y4P4V+8H~t%fLD;RA!H7Q^91T50u3LAo|xln$=F;)uA3;qttE2C@nD zks3RmS~)8J`{`=%cnyADohv;WIC>-3iiWWIXKrTy&ej=124De>UxYnFcs(~~CIcYelM77O ze($`XUMrto2;$$`XJ2Xgv(mYh53X`Nkrk^)Rx7g7$8}i#Cy?12u~l~bybfRBUgiM( z73)6-_SW^WT))K#l^vWWBJa=kHeqd#ra!%ZasL%!f4la-*xb%LW!Ak`yXb(#0%9#9 zyV_n^r~Eb1ZR1+SpHCLR7@Za?R!7EQ#kkRc$ggsl{&?w(6B#UWDca-hmQVEa#m!Lat7seV3yY~aD5`yjG_ zNAYS)e53i%0N*C#e=z93gm}uFD)y$pnie(r8Y3jC*BH^DSANkrgul`qoVDK_A9uK7IuW=WjLDQM~;_2(bgp+ zDx>mA=y@4^%n@a@!!sP&=m7a%I)jMrv5e1qz1y3;@BsFrK6G?*3p`4Fr!-mdU@efA zqu*-Zia9}lq?Y0q7{FQJ|0-sq{hAoy;@#QmcR;N(Z-%v46%FbCA6uHBKYy_--~=jbVaY=-$;TQz}~*WXf!~g zfm(K7`#YJv;uQ?`0ajy)@nZeW)uktiXUZ&!hVUBp{}=xQ{I=@X`afUI#Whm7AOAn` z{IGkYoo>eVGW$84Kd<%pt(35;q0DHS(mB8Lsp`ObDH+HQS{l>!9!uoGZ-g^;N`T27*4(|Um@PBIm;pVScvEkU#kD@p{Ud|qV?(gu) zVqqdF)`BNamngIv!*{GbOJA_!K@@)?(!L0&bxkZWQ22eZZiC!Ea_tpjGZQ^mTK!%! z2xm5=)22Pa8hF5h9Bl=Qyx+?IZD9Jx!TrC2l|K;vGnMU=)B^3v{(W0K?~e{RfO)T5 zaQvLT7pY#mrsY-t?5;($;Fyz|0lsDHYIwHx*xSvv{v+= zD03{VM^1N=yh^0K;MQ|QaWsYKlPh?xXR9@2LK!!YbHs{%b+5-nBZo00w%|46JB;95 z$E?I?eUiCeGj4@_@WoK{XnjzD((3e|3k3e+N2!tp41sUYQSXU^XHEi=a0Kt9xSe z^-MIa_`ef*y&N5IJD&fuWMbYXYBhu> zu_#YwO^_e^zZTVM$1vk(`{swuF#5aR-G8}%HEVp1XinfM7Mr1D#J0wNH;U&b%CcUa z(h{~A@6kCq(GfvqVs=WAd{@LOq1u`7c_r4~7{Py$e6Oh7M(X1wc>QqRAZ3teBz6$o zJ9FK-qj_Qeb8%hSwi&=N-0v3P`cz_l=V7~#0=sf`V}p~)1#XUJ*ol4S_V#K0fj!ta z2Hs>>i?`6AE5LPUGH>9MMERz1t!+WWRz$$|YW;>I8O;;W1Bb#UW}s8n!5$jt@Q$?O z#sb7;c)H)o96-T;8Hj9`^IRnrtMVNpwv4gyi^FXT-kJTZ;7nFX-RV-==>PGXYP8Po<(NeU_aS>?~qq zzCQ1P-fP4G%>!J}R-(Ox4p_dsQ2jor6*;MNwGyzzxdzdowF~}b1EZ1l;9vf47e6Bb zuHL&1k^eox{~mY&&H%KwU$Q(RRe}A?Q@vlah4}CBcU9eai|2GDZI6x|%GV3{!Jv|{S zd-eJg0nj5V=yx8K48Zx!<6Hb6iueCRVlKa+>L+=>?@`6}_J@)GIpM~`kT|>JY5lVr z-i^Is&DWZ@n@PlTeu4&AxxZa=G1kjy)u3G;#98>fIzWzX7yDQwbwJ^v9-VAoB7fnX zu}Ct5oD&8bv(lm8zfH$#da58fa5mAC)gVFZvcy! z3=-CF^}y!njD656`?ryRBe=4)0h@Bn+F0%~GE0MZeSYoq3j8gb&iq8N8jBy4eiV-* zT15I=JR1#3gfA>9evs99dh}X#&(#m}=|!)GA7s=@RfRg#Q7q#ahT><0NvM_7&S4np z5BZAU*dCDw_ulT^(;Q7dpfjlgn%rE$y&6$cs+{j&J|MA8wbVj*0zhFuo+m+wXe{8X)~WokuVN)XLuzs}u3X6BzvKKk*-KFo^#_4KU~l6tCZSrg^}k zN5ub}Sp0MVQYZL&PJSo;U!s4}0j_@#j61`@9!26mUcWJayBS&mA@-Kog^{=?@e}7zxia8my_2XD zd8q%L{u<-}9)&Sk^WaP;*Ijh|C9?owG7As~c##;?l`w#-@JF9xcF>dbR9>fEy80~g zt;}2762yyqBjIjp03!lfHC%sqHDo`lcLmj2_Nn0A=-*CYf9JOPcRg@3416yMHslA+ zD6*=+6-ZrytaSG+wR%Md_ubnT~2#=6c4CWQp8%6*>4*p99 zAow3j6u_#-Xu4$oQq^M>B+6mu(Ay)SJP4kKVp2Yr+qvmJ9<`87f z9Gg<1JjF*$q$rF~Yay1y?lZ?!c~k1bI^$a!i8G#`h;^#nWCYox9Ww$I-l?6)dm`WK zhxu!J@=XRkfm96Sb$Ei-O57Nww5mYeB>tBI{nNqy&T#aZAaq}N`cc@g9b4OM#45Q! zXX;rWygo;7%zNrb*9X}Yq`QuXv4e5oehW~&F?t~Qx1P{5U2lAAuDLVF*bBd5KYs6o zuGoydTf-AvB}X49W9l7cK9Vzpk_8AJ9X<76W;uJbxHor@{-Ijq)Ba7Yx53_ z$9WINJI$_`W0Cj7OPP;M;B$DSSK*P~K=kh=;(-s+Npbml(dwYq!WrW-E?08lAH~1+ zFe`>wFS|;M|BbNz_V7&h-}Sw<|2x6_XJY*~1@EhX!i7MX`TwaPW-M44&6X7f%>l>( z!q3C@qXQDx3zjo`ufzpP1z=X*j*l#OVO`0+&7?n@6- z@qZ&a;HR+v0kAI;?e{SZSsn-SCm`YL6TyCp^&M|(YI=Pg)BhstI~~&8hV;uEl_0Hx ze80@!F&Y?eT=FIZ4QhY|u*809q)u*H_CzB@zXb2`-%F-YJje_p@qUk3 zNaa=rqE7PtY>6d!1<&_8Mw{3Pcp6wd46D2gi2M{fU^jYw?gp;MVWq6kw-UZXZH;vr>rdah27`sWl<0`o3QO0qOYYFHx?1kO~4d?Y_xq*xmqt2=`Civ@Q~2W`K2HH{apPFt4C%KJz13wF&FfINeu9{X0hf=j7VlV zXI7aVPZIfD1l#jIF{rz+|8}5%m`KX&L<2w3U9_IJ+84=Agl}1_erC4%+xc+XL*oHK zzjI;j6*P`ao-sdH?y>f7B7cehZNa~Df3_hOI1zoKpS=+0+VOV+)>5n_Tec?eI`{CS z_z#Bl2#QW9^*f0G2H|=D@%O{>qb>4Y>GxOc|KOG6`?Imlj?XWXn754v&cSCn>%nYa z;Xaw~V1=WaEt|8U{NCFAtY9ksog-mp)UN5yXqwh}qH|C6XnhLW^)o*4=?LKjzxwumvQ@1Pnl^Qp3 z8Kg%e#OnKw5)9!cDnSr;$5tIVX1{nh~HEMg=gfm#DTJ$s|Nr2AL@;K zm;CSd6#rh^Z@n0HcM5ns8IS*PkhvAe)f3PrPY09YKT#`t^;xkK4v>x(YcoQ!04sR3 ze5-PdYl%+fX9^=I-*uk9RYfv~8C+HEG7H4-1@33UICetsd=56SF{p9G9M9qjXeDJI zYJl`87GcIjqEkQm45A6ta$)K52NFpL{xhGyc=ge@j+$rqY~oP`&3SUsr^X)j^}Vk6 z_HWOL_SYL2^a!GHtOHt)EXRV)&zm#*f1n@WV*O7xx59QtaVMz&GS1<>C_Rf1IeE9m zf4YI)kAM1l_o418-8Jgr*ncJ1y4+T+T&kMY`?f4Q*L zVIz^+Nj$%aE&IQ>H;Jx}qsaI@fG4+3e?M}$>$T{K5 z)5m&P>-@*S1lEHY>;V4v0{^qnHap=D>`tA)G3cJ1_=J3;@akkEof%*}ZPnISc5a^8 z0P$AtOMgFT4I4XA6>V--I{F z0Dh{wUp<3vKxX&l|Hc7RnQJ~U_)i4TT);AIOu!0YQLKG5s;`AKzPB-Xgv|Wkg1^@X z?aQ?&n*)rk0cO?*KjMFEi>%B9a)qp{@L8<5NRPj6UoYqQL@$&`Vep?C|HAnFKd6r{ z;A=HS&PjA&UgG})Z07&GqWS+J=%z)%t?VXM{b~Z^n|3l<4}RlTVx0Og);Vm%olN5H z$8a~+NTdqb(b=|BSM%1(f%m_{uUvicg0|ZFLHNKw+c|%B#a)3XWTs1oI~BQnlSP@bp&(s?xIfb zOf2yXP^e_u`_tTfY`%5SRt1N#iW=AHHbSu|-*t{QhaC=+44(YfsJ*C34+ZOq*8Wff zq=sOx550{&@r#dbV~rE}+<5=FBO`(7!=)eKx`f8p?N*leMZH|hI}xqn>S_qD6K&|| zB{JaIvEGB0KBMLcI#%lBcyD2C88c%qAAPQVcJxqLHzmwJ-#igVrDz=@oPX$D-h8e< zWMKY*%UB_51l>T_Z#AK_o`e5XEi6vn`3>q(Z=jdr*O&+R9ct13#C9sPfDf%M1gloK znc*sxdDa7o|H1h$@?*ULGk{so$9er)N11^5--6yh+n@zzfEuyB3@9_=wlFx+a!zR@ z0PBJybB09&I1^CxCleqK(CUl*ME*o;5FO7T{6FWo-%U?I>>CLv$7g?-g7LmN$o@5G z0IPmo|GVG*y)YUmGka3qle(UDxF;(bT#G!FiyLuQoA6_`!xXrHE2!8H(X;d(WD%dH z`foS%o;{E4GNLZOVx`XkB-si$qqk$gzPYPUk^@_o^?i4sr~85f3k`gY zOzsbPhRVK}Rq~W@qeCA>pI8icjEok0qrAqh#EypnD0xb+Qey`}GX_Q>#IVOZvm{qc zG(jmz^*!)m6tk?%i@*j=)5sbx3k zr|)hIK#7fK?kBpU{hT0w2x}x&)UFJWJDH>PWYh||N0~Eb#w%@V_6Cz_A?Ty~eLnKUtAv?=@#6`nT*^wCihYIn|r_Kla>l(AN7j9M|~d zqAa#{utun$+A;Ik=*DQrjI;ZE((dzV`z&*`EU{E3sY&B&IOdMM5rCDDp*@&4abol7 z{wD@z4E&L9fO|D}5$!OBVlOaxO}^D|{J*OA64}2?ss1?|{ND~2_%l}OE8T1AW257dx?$(_paLQT7DZ5|K6M#05f=%d49vGx-sUqAP8BP zBQ|KQrnv)S2cl?A5H!dD)B@tabn{Eaf7rih_Pta9#r}uyTj%3e^oIvI>Iqsi1~+u+ZH*KAFMZ#ufp?uAxI$MRbb zBzGFsIj*x=bx8d=#`T~0SNBo*^9}HSF;T!LS(Ro0JPikd#=6ae%K-LdzUu*W`MRY) z|G@Zx-oOU^O`B7BZpDg<|DdTva)Q?&xA@|bBIPs4@OPxmBgCa!vd&9$ZT*4FaEqU- zeLUu+e6pdp9tnh8cxomrd?s(wq)P{TzBOa$pW z;dNLSv^~DSVW9tL@(nxVbF9txDx5q%#R_~2?Z2LYEMg75yLMY{AS){PFC*`J(SEVi zY98zIlKq#nhZ}_fd33Z@o<;EQ_w{x0w)E^AYwyJU`DW22etyBf^58vMw=jykyS2A- zvu%IHfzJ;tJ20z%9(`i=hF2L4G5hDNN4ft3u>XJJ{eKredN$i-^aOjJndonJkL`Y= zKBBq|`=43tR{SRS=Q`gaYp^mfu|WB;GXT~G1v26=WLdJ+fSZ7i4dBjlwuD@S={=Cwn8v)E-?Z3Dd^L{%k0h0ra2JpA| z|4&~)i$4J7Qvq1;-$z3^1EApF+NSlmi*4IFhFR1ye!8=N=ODHNSk-JNG{VL$b8+s| zdM)qSm}6&k4(l8Z`oG^fx;nl7Jeu{NaDX4IJ$DETz}aWvE<#U8KJ>VV`3wd9UOW*n6#=SUV7kXVjmn5b}` zL&3k}URah_3j0caFg3u|ORdjLr!mdw{t5%<3``q1xqo+4HAfRwHYTbD@IIDceCCEb z{rf}wyBgqCWd5E9{m;`$<*W7a)oox`ErW`bAm#0vP$X7QpP7x$(>ZbQNE1 z|1?;!JUKbRg8wCnuW57VfXOclvW%EJTW%cZ$gQWML+n5r1`v!V(wE;_d^N&+x(+0GI4@H&Q0 zKBsg}rT>%@S1m?>Ml>z?=iy_xEY8;`xc6 z^vo9NZdx4mfN~XUttBXX!^-1R${dOg2!h3ba);U&ZM1d4gR5FA)v^CYHWO#?DxUFC zixk_I(upt>pT$mKNA>1rg^0Na&K}r&;6kj& zh~{g=KvP-fnjlLtn)9G7?UDE@)jyZv|6fE->H&HJSf8?A_q+8kt3|6z$=Z!;`D{VI zQ9vPl~PixP=&^ZazpVhgjb9Lvo&Rv~*JKyWv-}yo3$a(Hr0XECDpUlV)giXT)l360;^G-OYZM|ws-LQ?Y#C)GJwy}^=m$!U^33Z|AyG3 zAN7uFKGR=q;N*dw2Oeil$9bvyv1&^%R5>bEAe>XViw+QPu@4{B3-Q^Nrf`7pPO%kh zBUkrtH+6uxRVs_5$w%Y+Ys-@;{MZ*!k7a(OHugW3zYFrAZ=k-Rj&h)VrB5&f zE#aB7^CL4zmlN;T{%T{%2kh3)3j7M+?(3_cx?ab!M+DK9m@?;ks`<-jda?M=u5T2*1r)cXHnjJ7MX&c*2b6};bs zHM*Rdl)JG_PZ6j73KamKuV1dVuU<#iHwCk0^$W3MSB=aH8tj2>$4eQ2__ybWGykW7 zsyu--!ci z|9vM6zu5iM0;;Fn=v0 znw!b}{T;l&4eIacUO^V%F1SF4=Pds1cw_cz5={8W-k*E-HaGUS0so^1PV8UNJcYf| zW@!JFJ#~FJq`KcNak?;V|CYOp;aLCV_Oz{97`Gx(k+|$lOh7FW{Kvk?^u@o{e^671 zMrFL%o*+HHS7?zw5wx4fbIz%GyHTKPLwwWS$!%Q3EVT#l|BuJ38P7c}+WPH7k;plb zOr_rL#6!WeU4pVEg5TLVz?|%RxgPdwHj49l8@QDiuO z+52AeK!4|fPYygm74QkH61g+uZ%xE#zRfU3vCrn%)IsQ~Wa)0F(_d!)*{+St+On|@50Ltdm)oU8KH}bbd8~YRg6VVQ<;Zra1 zq5Yo&i@PK^OWeTDA@cut3sbn#N?bEhJU=%Kpv3T^1EL2+@*@A0{}=J%T$G2SWd5Q# z3u~8*Dx}Alnq&d+um9ihe_{!9eTe_%`CfK3k(J2(4`CMnd7Ya&kAVBXc4lX-gfZ0? z)u*c?tJA8Bs=KS-RCCrF)hE^8sh?#1xn6fTUFr5Elk!EnR2_wP^&q*wKY{*N@%q1m zuXPP${RcY!FUZr7|BL^1kh9IHfM1mQt*2oByAHhHpV*((Tu)TM=WFGLn^s0UqZAem zpzo?oM5f}MC;DaeZL0l6ak2CzzodqUPEd-yLeU()%D%!*wf-XCE&fLN^mx7Mq?NEg z8-u5v*tX+treohHgQto7za>ojP!M-Dt9jiD_ud|>nzgBn>dgjX?FyI~!us;=(SB#P zQ05QM(OP*iF8&!nu-OXk#^p=jO@8D^SnqYoyornvCmDdN(!K^k;zo zxBL6|?{5a0!+8R!iCTqg&5qY($4UDz{jKc;^ceI0zR&i9Rs;M1AN7mf^}0{jV^|a5 zIjrB(*hj7JBA`d>FUAJ*0Qv#W2U-iuZ4Hoh|C_gQ@~uDA0DATI{a%jqhQhZSJa5<8 zSeCO~M@0M^H!x$cA^)$7uCNl&2)^hqen9yBM_E90Lh^rBCzLfhWG8NZH)9mZROnU2 zhw-WlVe5wwi|B!R?{7iA)yLrfi}2aba0Kr4s;?})^0!dh-K;H*g=Te2%4y%eW6wAM}@~viL7HSie9y z3T6i_h!#RyVmzr>732QmIB`L(x)N4=1|>R@7-&8!yt?##Z9|}Tcr~dEUh|FY^`-@eZH~q^Is;(`_Bex3U9cN> za2^rLXM3;qp6CCw`R1FUp|$@aT(rsK(dk49Eh1}H7kXVilxpDHuw4V)9qJRR2jKE{$8(*` zbk$0nz4!sC08SSmBLLH|`rA?Sw*ztTtir@&foU`v>tE>p2^bK|MiLYpWeBr^KNJLYLDv6)lJn8>EicR^|$Kp)w|W7s+X%L ztNYOa_f^kTbJWx7GwT=Xk*rGb4G{haWB7Bp{x6C0J=LzW{u=gP{QrzN%bnea(7GR> zf!$`qJ}(VRHahlcboXh^{{5x#{g)g#yZ;P*T#rKTwEB@Ced+(~S()hia!8Lz)-o$U zMRK(1gZR~!$J-plzj`C6R$7(W!tIUg$MO_;&5@DoBHf8-%lp^E>VFOke-=HrP9nl~ z6nfw=X5a3KwRJtOW8vKAP}_VOym|__v5IGQwjs#jpe5Jpi+)+V-GcQA)L`>)^bpXk zz1KHrKKxrR-)lqzDAT^@%u3&xt368{VT53SE6>BVmcj?v7hGSC1~{B=xDS}$0pwd5 zybIs%BzlcL)B8JB*md(JeaNojPMk@b%D}_{%>y`I#yCXva$vtyD;mK}Cl57i;w0(~ zH9$CkS~d7D{+Gu^1C%G0I6(BZ`nP!eMdL*O7Pb+;a0T%HWbfwYy#A zZ|ww`+$c^vZ&iLD&Ou2Qxt{dh`IKlq_D4Q3&dA2ic zR%`L^%vt&NCd3V<;sGqj`|;Dof7nN&{-ype`!X{yeu!>e`{h zIfhGe)m&kL5AA;!{Hxm*Y~uk9k;#?$4#yDPo4wkpx}|!*TD{(?-koj7dIk}_mFq?8 zy8dnTV0C$QW_4C|P4yJ~f4lm|dMI7#uL1LKqFw)mV)-XL>mO~Vy5etFV1JP+3p;_l z*+#J6|FHA_qR7i=@PB0QAH64QwxZ?9GE%5ZQsm<_xElQB=dpWAGPbD}oC97?GgSx&`Va{J@vux^tBSF9Q{$B!HuEn$g{cUc2*@ zyesD?nF|oZ+I7!z(?hVMu>OL`_kH)r`X|cOe0XKGLNv=l;9xtVf7dZz?i*;OW6@4~ zzyi`^WEQWl#qxKXg;+`F6U{u$pUG7o2eQV07}HP>lt`fZPfS~xoQg#&lv6wGC>Qh> z{jK+wPE66J8B>o6qbQYv@_(@({QKnM?aL>8-aa2WMxImA*(>6^yhsm(>x6;xWCBSNccr|Myl_-z8G@GyK&%v0~q$Heh1+ zi}lsji^RWI1yf~ytrk`$J=h_{E`ck2KMQnMGvR#TX~Uh$}44gsa6q@ zskn(Z?i{nsvoV@ftczGJY(0M`k{4U=72K=F&?`_{l_#}A5TBX=J&k-;Vhq8)%){-QT=^j)u%YC%~+!}$9wq5+11 zheLZ;^uELQy&T4J0`re&p#gTpU)hHGptG1s|4;g_tA4Yre( zTtE4J*|%AowO|Nl3e*CwFOW)s!~jaPMt!N~NCl8jK^+?%A)jz$)zI0r`rfCF^$*wN7^D8bM+z%Or{8-4 z57pWKci^MGiY)3`z1MxE<*BYvvs?Ga*t#**b$IeCV^8B#>sJT=i3f|D)M&=Po@C^A05fDCSF+ zFCIXA1ew3H64f$UYkN3*tl|;AydEVnt$q=ixs+jFc=|H%x^xb*Hc_v|{J*$2FBp8QC9>I8FJL%_azB;G}@^|j0s$}i?budIk>{R;Z(PNI?DY`v1h@l&?o+pU8qvlo%S z=X!lsS)A7F-R#p$M*}>`og9LGn8qEO70fyfRtQ-u=&FTwZ*UHSOxszv=0U>`O58v3 zTc4<-nNdv?Cr{I76(7w^h)*e8P95QM$@9$9Om(%I!tt@nX?gV00p$O#X?E=YqW?kv z#s0PZN&Rc70Xm6$ay4+-|C`|dFVvpRP4~2mSVLji?ozCxv_7k-T!GK(N_2f>_4nke z@1q*^HBtozGc znx#Q+dhQwjbDa%m60OqOe*J?rTK=#p*I9%2lFy5t3FgfOq{^qv?=SiwGm@-UlIg2$ zvaQI~*Wer2t=!edougxHQQu+#;(bkv|328aAAnU!8+5+eS)}?}^>MOzzp95ZKHCus zU6^R-DfL7w|BtIH(G9y*Q>qcw(CXiv4?5jyF7&|oYFE60C#qrfLG|5a{}y9iVCqIVz&EQoVY70_xZiw?kIcruW&3h|*AOzdubyyCk^F6c@#v7? z-zt}^HelAU;!~n^)Bp>E*MoZ(vqIpv`M%e|1-=5hw*b5P=@an?ZtA^&23V!pzM0i* z-K^8h*SyTW6NnFN4G);aG3GfZ@Ov`on%>4ar}OuCHZ_1XL*@ar%Oc*9_ivx1`wP$V zh{Of+T=e_X;Z^)+&V|}srjXz9=gPe5tmS3~VFb_Qu--ep^O!q&W&fxBC;NBy_v!z< z8P=SO&$R}hGH>q#eE&DFM&?)_WDTX?)ECsBuaB%x#DDz@eX1_QNA=k>WC>nGKP=Wg zq`sx9tD|A(&h{Cc3y`@$iMK5U^2WpUcLn{2w^ebwVMnK9&#jCX+gVR@k=Dny{`V6g zJTnNbwOf(*mjk1dIcGZYf>qEhqCMHXWC2P&kA6pT0-4kAaa#XUv*&!BbmmbTly%AN z&t;ZjGHhcFKFjOd@w-9;G%fz;=R1w-oYv`AU#;e{rN1>|1b70$8XyWMi<{-8HtpL zWYJ#y`q+`M_~J9B;!mm3ZsdqW`m9ndx1i znS`yJN^WcxR{rtczk2h7kg9o(d41yl2JnAA+Xd)`^N6#ZNxjd3c-`yriPq}q@9WDa zHs^1>bs2m51gZgy0jLX7A7nI8gnN{FBE6IJ3yQ~}esEJes1vf@i#LB@C9-p1F|*o? z!8Z5`JCGmT57d3WjdvWvt52d0thjY`QBfb?K2IT7FB)M4@5$qmBk*4C@YHs-Ji}eiZ(|(PH=(AGLZQa$oC)RhOJdeOirys_MRtw~} zyxU0oa#+_5;r@Gf4y97&aQOdDWC85%uV?T29(L2V_vf5&>;aIsB(I%aq)u6et5`$e zs$f$&XAJMy3oOw_ZGHTJ5_@!y{{JBUGZSG&@IDgVkskc^=(C4`8Akhd*`d(dWM}I* z%V-!JWGMKr!2dk0Uoon4Fd6=Rs`skB>qqNFx?6VlVugu`-GA5LuJ^1L$LqhjI*}aU zWH|r4Rk!*p=>G#c;BTF(`ZzU{D^_ExO^FJeMLghFWC}iBFH?`M*Q+-pZg6mYYJGA2 z-TJ3+gC$`VCsA?nI$Udho}cJi9hrIq&+X*?d;@C?JWuzA^_xrJ1oom$tVzpZjJV|N zizLV*#kLZXXtEYvzaVyEP+OQEP}Y`a)A}frCI0MHQo*iuitSH5T-M6Ty2NXN-%0;v z@3sO#dlR*Igjm_i%^J-Ja?LLgEBiM1zqYme=Yjr9&;%FZ3mi>sYCY~|P9zV4brG57zj=I`*)arltpKmLER&d$ow4)`OYl^=Pc zaWWZWG=bPJG7=3DpI;U#{*}x44_-r_;2uBAPb=KticJNt?n^Twm%WH zFJR#xLE=V%jndiLi3MM2P?_lo6LGguuUKB6T&+Q^>~0FO1lApZ3L%q>_ilz-6zb2GM^5s$ot zJ9w%0dw!l`UczmB*Bj6Yw_xeN4Ytq4M|iaNes4Hyu&>*!*bHf2qelCV_K5qy`%5sN zC5RGk)9lgg*X-7eY2M?!qp2nshsD){67RLfCdO^R>PVCFs)CBHdo@exRZuRKqwPt$%lK!jAAa7ujchL#(|KsXS;AX1d|NlAX z%-L>B_Nb8T`;uMuUG`mM7m_VPh-ec+q=k@FS}5AICzK+EQnZ(3iAswl+yD8RtMm2w z|D4Btn|tQWnKLuzbuF*!bzSeF#5G#~Coi8*p3F0T@LGHG++Xo%&7J(tQ6^P=oH|Uk zdzn+vU7V?9-O1W&d)yN4Am@E%_*Ks!KUw3>*6XkuTcu3wKj^={xKZT({iywSM$c;z zfTm)|YLo%Hnz@$)yqaGw%RTbtir}q_NID_e1o?Vd0C9h|X+N_BN%U_u0P+7~`qizZ z*gxq-)_SCx)N9PynZ4n-N|$oFjmKmne8E&ATGsi}_RPQ?4?@*1QEKxnvx+GV|LT6!6(6npiVH(-$HCz z8>?-MagzVbm+0G;_m>3_{*5zAIDgp!W%Fhkbk!yP-t2)agCY+3BpoT?59R$;UsT76 zm_}*J8o`K9g2`XVb}tr6aqiv3m^1jfAB1l}Z7TG4Va3U-{A1~lz|V7N`=0?HFY&0> z?cIXMT#ujaP2Nz5t4|$#=Kqxen720kU-aDa?S_4+095@G?hWC}5p+wILiIsa28DLr zV~DrdKj8_*02=>qEP(1VvIRM?cTLd$%;p>q@-DK2?UUGnU(+Yk7t&{l#y$rBGkLEo zv1(_i22=$9my_ch#M^(xb1twtYh5tE(0{}Kk!g*W2L*$}{=wDAxW-SyA=pL=5))9MrEDHiaRvX9dMmXQmFxV}8}L~} zsc1JNT7A!b1V#H|vj6*G_7%m8RkI#<%>_}^u30(N@u0nKiHjn(U$V_iW}yx&Om{lKorspCDa)-^D7R?$uufi5IM6UsZmy zET$>4>Eh}zmYP=+N3P|p+H-Clxm|}>lLj!xuGFQkcXO%+I-ing`Mz-Tc=cFaww8B^ z_m#WS9S!rJ(>>&D#{w*Y|GSwepeM0@b8>-({9Fs}dvo87&Nyc(kI#WYd>rk-yUuRs zJLlI7{&Tq{-P&#^cdWY%op2%6TK$mxU%9{f<2t}N*YSV$Cj_qqvzYl)&wrfzltr5A z>|!KoIe>Y2^Z3dD4e{m`^qAs7yGqQno3BYMhw1$Fm#l_G{<1Jazirj=U!93?Uk48% ztI3^%4SOHouI*LO{VYiTn8$Jx_qX>u;~O1+EBCJ^qkbCP?@1p3A>Xlv_YUy21n=LJ z*U6p9{l&#;Q$B9>enYTv_el<~>|dKWKI>T1UV2m+fboRFhTSKdAdhdAe^nKg<*ULV zmQgu?riLi%kapOVSB1#B+Q3RY1=k<@6^LM}`=#Ohuf~gC?O*Ai=iFD22dtuFX)jhG zKN(JOSdMe)6XXPi*#CNeF5TKrP!pc*(O@%^w;zIW|I)wNFW_$?N6;!Ivf#%5>l2n` zO?XwU#bNoq^qE%alP$2G4Ou|hKAW4YYKXpVi|WjB>p6O+u&*ex26@YJ&a=J$6m{e~ zz<+7#$nOUKVw-1hCM9?^eL{J$7?;BS74WWgAER&WANtgnkhc$pzng^K^#I+glep5~ zB$I969KbL30zaB;V|6@J)G4Ev*R8~3ZRnA^iMW4s#`j;Jsrl z-yafnm&$nMD&RK<2+W7CSNyI?L-PBH&$nnlsr{M%7ve8Y14!_1EA;9763$P(dr}o% z1F~(tXgzX~mKprF1OMtxXoX$468n>f-)&I)9ZU6vy{nYb@@Drc!hKxjopV3I5{^gV zTiOj_O7>CxTj#9glbP+@=}hNyn&8|*ygw7nFT^&ibXGfSK>h}N{}$&H)PV=d0M5V( zsynEz+ZFsj>h1>r<4|0BeAi;#E0CYP%J+8MzlFH1f3VHZ?aw0W7LTm@l2wwFBU+T0 zuzlt`#1jeaNxYvZfGt)u{44HPq+qO(vHkM>>g5q1rFhi1ec``4eDO_O_s8f)z8#M? zj~ZA*)G%581+M*H@P}K##^H1>zlPri{I~E+_$P>?UuSz4ta$L|b-;?_f6t!FVA@-8 z<>$xSD;Jk8LLS)E5f-t_qYK~qE&r|CLVn`sldRt!5$A9H0!jT(_v@L4eAD}xI#{(r z-_<+{Wq}J)4{wlv2^@4@uOSO3Cs+C&zkTI+J zjLY%Ks}tWQz>B>}@_XUm@*iaYmi=24pr|jg0s1Co_w~)|J1$Q(W(bkjX=X>S_6spL z`fyMx{jPDoPZ5oK7RTiKe9=9Gy?~CT=M)dN1QT|?+iT*Vkt0O3D5ASaH zFAutu{+aDS z#`m9dd^fjS)UE6`b$e55dCL9HE$7{Z4lvHx|I7LAhLB4RCx#q{_pcMIK(jG{_|Ycf zU7g7!tqvgXZ}Fb6Zxv$wZ?$ASB0j(@fINfw_KVL_w5Uggdu9BxDT?})W!PHs>LODo z;v4Dg)V{aTO@3K$f&U)@6`hDniu*o1`1j~cE&(B(sEu{RHk6`5ewNrX#7Z>s$N7)o z8Qb|0%+pf%@s=DtKi8dA<4vb0t)A8Kg?C-)#_w4NfHHuD|1&$Fzjcpngm5l(ukr%L z{NfLF6vKbkf45Xske!fjNESe^Xt{tz0$O>oByq_Yy!;N%y$blhjWb{EKjSZF0<+$4 zeej-_yxPJF7>GnQ7!1xuFA?+=gEm=)uW20?fR4L~|*Kn1W7duCDDKaJ^?vg!k>+O5EUN#_T8 z+wR2sw+HDhz-&K|JQ{!A7qnCbtBUfqNl~My-(~=s4JZeW8=;rI9y>7r>}xuf`hJ9d zt^V7U-wim5O~kqqU!O&_P5pvZII>pYQ7^F6Iy$aZ`z-%y6Kg9p&ev1Y_QAEZjs(YMvf=MIDa+v}cm zUGHC%f1BJ@?mg%Ld$}#>?k(e9=H?(0@ZbYe?m76t0pwtin`0b3N%%@k7cA>?+aU+DAGbaeJB#YuUd2 zRxhG@_$CqM=kRYJwk<|9a#PTbbNbqUn$^g!1M~Tb0vx8xH^)BQ>Q5pz=4e*s%CpLaBXDCaWrfoA?F|9(9CD*rM6Std09&1#!B2d|;E8y;>9kA^>oYr`Jl zNmgtb%+%)G%xxb46EG26b^@6TseoR`cPT3?gOf@cM&|NcOE zqR(^}`F}5Wxl`KtKJ`3(Zo+?)3}Tvs2i>Zf;pep`hm<~2`HAhn$otCzX!3VcynJsg zz;&R#Q>O2~T_*PLoUsLM@w`$1h?y&siTK5~iK#CR_OoFF3T5gDQWdJ_FJbr-^y`1& z|DqO9y?e3%_9IT9Drcefx30nKCu{RqXQ3vMYtEP^bSoBU!e3gcKoLL>?3Ln^_E@fm zh<3`8y}t}w-v%|rOR)4myZib5F8=y{cba<>zPp3l92D1Zucoe7oBqgJ@Pbw72+&rE zt+HE<`x@Zqo4F0yt29-^%jg#<2KQHsE}?#CEuKPGbfq_*=s)0_6fW|B#k=t?ulaR? ziNV0&5B$rURLi6_wY8gU_VxebU*El9Ta1xz>o4OH70Zj?GiK13!o)_%7ARV*%+Xc9 zug4W9Hc*v*p}#)N^%S_f3+XQ4{jA>+9%(7LWLGMZ`$5EXJYWsKDp(lC`h>6foBenF zxA8YWlLhBs%N}H7O9eadp66f!M)MkFd54O@EgQFt-%xLrdqa8B`>V)5;l6cC-rr&a zQvm2ODFL(b+kE83s-Ln4eV)b}SjAA$!o~WcS84sWNDj7`$-r*iU zPf#f+#k)D<|K{)YH^A`C@b4um*vThyMNpi_Y6Sy8)^4!hESwwu5LS#jNA;r%;ZtM* zyMw#P0qO*P@C;UC4ac5Kd~p&BzYZS0J{Dc-pn}xb56~5+72u^u)a()U7-}A?@UM4k zQNQ?4Ayzeh%lXX$C<9PFAnk8?{QGdY*T2&Z{3T@nbAo-rF%*CwFhxGi6p+=#V1=-I z>izkL`hWiPcXX+bbJxOL|A_y;gV?|ssf)-+Dd6|(iX8*+aO&NA6Fou~u;zdKf|2Ucrv zYAP1+82BGd_2X-&l-t*x?XHFY{K)+P4bPMA1I+Q6KwQwz?MVjTk$#|_?)B`|k4^vg z<#%r)gr01@xo@yL#2w)Fa9d+7uEs)Kjjd?mUgzH8KJ0FG&%14z0r;DzDr|v_7psF# zrndi+-!-_E*zr@p8f!OdjcZMw(hLn#0bK0-G3M7)p{n6q?O(G*ll3drB~TcIn4i^b z4Ka;koP@J0*i#IjR>IYk&T?FpO}K)Zfc{BbrN`kS@8D`LLI?SitU>Txa36N53VFaT z|2cn||AhaR|DEp#C7Cc$Cuq%TQ}cu8gEg!=Gmg3QRf6Amc255pBL5cnyFA3*N!{HP zxI(0mYSFyVEkBp66Dky270|MNi~O~h#R0|&$Tx}|6E~;`LXR3-XuP5QmTFMEfU*W1 zR}r^32(f_TAf$sW#V64TWZpxa;&{5bzlQpGt6)$tl+3;{tp2~uWH{^R52^>(5!=5{ zu78pVyB)*3!&kyD!;|4v(e=^dXl?XpG(0LAy%shKzhKR_*7)7^R0h8xlRBJkU;y*9h40!s;&2iq+hTpo{Z3c!T%v)M5D}laBE!hvc@Ljavnd<#Jg8p1H6_0p5>F#-#y46AQ{n;>g z?eO_pkw={})%mH0msY;72tZ0a#Q-){$Ns;Pe4rA~Xa<@(vuWCorg&)fkD_b!0Cxj< z>i&}sSNJcKSz%ZHzamGBQ3GV-K0Cf;{}usQuhGT${~|A7+(5zxD*i77_8Voqx@HKq z!@D=;tfcvs>bEu)szJsA82hihq$80^H#T)B_NH!mAKiX`r%J-;-%dt>rOOcqKkfhJH)AE)_kx|QK)jVJX-P1h$hLdXD;SQQn#I~gFN20X!5^7! zlS*Np@JB4gXb|%_@8DTDjYgTsKjPKoYn6fPN3px2cgx>%XHYDEXK}v8_g38#W`%1# zs^9X2@{9H(gji0Xm_goB_a}R6Pdlbn2lcmjLn(r6R-i0^riklPs6mE4j2K{3Iv~Se z?`Ok~Ex`8O&J>o*gVLG5-VOc<8ijMh55m8~5>eOa)@XjT5ach5UXFG}-$bAC|MaLr z^fEl)yFBAxKEoa`BbEFq{t>?=pIVLJb!v#~i0!KJ{(qxa^dq`$H_|VD?7vJvx<8x# zmGH9aB-Tu%R`War6%(O^J97tr{oH5W7XKL-wn! z!sYEX?Mwb&k+nQ)e;9$jL zOn~k;R6`?uGK@JiQ`&bP`{=9)l@Q_XJ_`XDc%;d^nmG@&m6x$ zQw5yb)bJjn`sq-sYl=@F53*;Y+`9{mPe#Kx8Vuja?_0qAbnd;!ox|hv+=ck{N8KgF z3A5-MxCI+9hM!Sbiax{(o!NR45ln$e-08-s3Ra-4%ELETkn1tTD>dV~8&708o~;yX z{YL%*boH9pCM+u}G_{y9_!b44%FnbT%IW1lYzk0q zKRrp`G3oJZ<`Vqw6(%FS3!Z-?`nMf0_v^4jUsLJs>`(JwB%<#I=C^?GABZLYVJ^vO zx=PZlN>C=ONPk&{uqsOBmQ0%L&$QC6{C%40W%u9{ID&Q5`|EI41vw8N{HxYywK$6a zgnmP()Gf*NEq^W_FZ9d18|n@B#($|YE`%qWVgW@F7C|Ud5Kb&k&?DMgo9>rB=wiRI zX%KwQFE_7Wl4z?3_0DHu`qN}LOZ@=sZ)Y8?kwJMPnlZsUtg6wO3_pmvMDwE8K>O#Q zesi=gS`j@GEoFN!x;q*cRgU(CH-^XfCUXSaiI!gSkNRzccY~|Ke$3?k1SX{odfaQV zIRPCwTUilqNoFGaX1=Y1bcAH_-U{=L*Ma|Sj9-_Iun70*Q<23~UxccDLcU^ut)s4L z%~Etqr_$wNV%GXu@Dl4;J7#_G4DTXmaJ~N`uXq)f_Y~g$jHh>e8U@N*RJ8g!S)2^U3u%3%^-JROgb&dC-^y5wmf)&GW>YRL-`WT4-#|ujJ&3H! zK3XkUcBMS{&%?1aU#B8yYvN!hRQQfo7BsMEUSa>IYf@FQb-!GZnmDFnZZh z@74#sgTV1PEWyngM2~Ps@VD?klYZcP-MMTF+y_DS>P)P#1Pd^Qy%hrt=ed1AelLCx z=Gk+Y5ca2A-J3>-wK$jpAYXOq98|}4ux>+zU<&bb!Qd|cA5htbE5PutYLRS!&Dyp~ zu_8Y)L5c~rnzpT<(+uwJTC7P;u8x!RbiRm!^CkMYw$h9E1#1pyzS~=LcfW>JIOp|1 z;a-sb*8YA!IQ-h=syWcW6sDRt)SpU>f6%W=WPcBQ)|;$FbRx(F?i+{Kg=51h;iPb6 zI4m5>oU#sK?XYrKiN`Jp50U}o2>ST%QHd@`jCv_ota0wj`jzwBZ}Zl|y&_rJGvV4g zeH7su#`UOtx~zgQt$hn+_7euoRtV!sj9?g%<+zA{d(2ogae~G}=u;O5X#QW8s3@Ot z3;L7hqyGCO{YSd0|D@jm_3UYQ^j2g!LxQ!zS*B_|79I&JME#>_(bVXs=(?y$R5A*p z-@~86Z^M1zu5c?k!QyaGcxm`H7C@2GbKZp#AVf&l&O-ggwfHNz~dsGc0H}7A$o-#*OdP)*UG(aaZ5}o2^ z;2ie$J1;6j_iai zfjB#L`bdA9AM^|VdBDHnS`!7#@0$fMn~?AU=I@OGuz0{Cg3B|}eWLA?x<@QzTP#8| z{JvJ@tBV~_2Y{FW(*P(^(D{lR?2cynF{XU|gqF7$Il!G%_;*mZKTk(*IoP~*#O{5_ z>ie@P*Y5`tFy{ZF|7k@2v+@7R6`sKkEa2}6|DnGxdBkT*?HONDu^Uz@D$HmYqiss2spYBc6w`X8GlX=^v@`#0BjgB9-ul| zz&N7mlR+is>P(|UdqenQxB}*HJod1DSR%|9W)CAii!dw@R)GPi%LJD!?rjq;4Nr%i zhz@o|7a}KKAGuK+W?=!|qSGKuucF7SJd?K0kc?Eo60Cq1KIL6S=A`usTJig8-m^M# zPmm#~SIkyxk=Jj4kLX9-zZk{wmoR^_-L?HO{wCG{pGw5Bm+$2LU=jJtO}tu1-eFF< z`cBYwuC-^w^vg`B?d-n9-0D2ePfWDFgLu6eNKv1>VgSnkl&Pz$UiGm zHrckVj3r;H%wLS!D6Gki=m50lw={$5@>l1ba9tr2k(Z|qsDGNcBk!;5!t#oQ_tU=e z??QYM{U>?9{+G=#n;`FRs|`rq+nPw$?HIF-`VZL?=IMc(ZmA_ z$p9Y4%TFa%xH04Vd%*$9`wxK`c!0j(6K)f49=`Y-42*ogrU0bCNNaq~y|Dkwh_`Do zvEd(7r_H$@wFZ`{$fe8^{%u~jSpd}ze6EaBOc-#$R6V@zFtFDSOMi+vL+e2NLS{Km zr?-0uKBkw~1x;fM<`ewry`A3dKS3xD1?+JtxX#5itL^3eRS2$x=N!%V^9mWkr>w7g zj_vQ@NQPs3of`Xclz)qY2T%gN$NiPC3X@O-JQw~JwvL{SPDfSZHgWg3b9`02hG^lE zuo{zje};d36qVU=D#9z>HK@W%dZU;ha};J+m0!&eDU63WNbI(g?BD>n&5OVIn_R9i z)_yoWiZ7!@KAXPGuYwY}HcUe;v=_Vm>hQ6<_?G@8cY6qra+CiCKIU@X>jmQf<2+wF zsV}{5-ZJ+eXBujD*V#b?FqR0Q(f^@e_}A2|1pii{6Gj!8ix1SKe0A+K!UmXU?FjmZ z&;@)O+bH<|#vDP4;j1&qtHE=w%)|^@TObedzY7O=DMz!T>bMEg<>B>r;^WQli|rHk z_1j_wSpdxqv>c=zx3rR2gACRi^ZK?@uc-lre)R?DxAv&R`Adt`1`a?gc&s80I-hEe znr|%%pKnp`oWwzAqncmXEe1X-!#k)+Ux024xoQ%l}HxB7ZDQYF0%u<=#3N z06$0F{ZvproE*MHMv#tLQWf|+svdU)|5f9{aaR0gG$Ps^UKNfE?t|rd zobTjqc%&g*HBY$5-Hya-M?6(zie|puUzy0co(cU+>BWBs3vdM0_=|9cC%iiJU~EH! z)r`)gn?e0ZW|b5qgX`|^^E+`~`>6h(0RQti_W}MZ_?Utm@dD`o6%J7Sy?-+8{|~&` zJ9xaZ&L4EY&Bk-LCR#S`yn3brVCYxX-&O!I9Lgh0wI}_b_19_ke=9QT{@{K(vBd3Y zh`QrnRr}X$uqIfD+8jf3{}qv!g9#M=#sBMA^8Wvee^~3@#6v$YCw&V-f!uq%1r!BR@u0#hT zU1X?FG2KOF7bY)R(U2=ts%%AA{qqh3NGc6o)_YvkUD(CvR|ilYcH) z6Mh;#9o`(aCw^_rPjT40Pl*JkQ{}1_c)?CG;5ozr^U%AzPaQlzG4Lp^^0$dAe}~Kq z*?%87<_lc=^YAwh!d?VH6MrFGy7_HI|2aXwe7CZ7!=-R0teYK^F3Ge^iUNdF%WtiN zStz$XgVB1>J6EqGc za80@h8lO?9`{oC2;L!f@&-r=gz7d0}vVg1LE`i1Ajecz<}K$FKsoutxV-Si^t40rVZ$@n^&LFZUSD*u2gV&bNu7w3q z4X_&MmTq6Y`^7UDRqvfD@AAD`2{c*z!z%F2!T%t7fMcvS=l4RUx|&!CcF0 zHNwIugR%FZnE?YML>#QzXK-UtRj8Gy}|7W*gf zrCGSyh#fS^;Sk*Z2CkS1ut$@*CVnDA)XFtg*yC5e-TRqAl;!Pae!&{Ji6@CNzjj~s zn)%-Zhr*K4Atnutg}-YR4nVm&A?yN&cLtBK4*g2o;F925aKG9A7?$7!xo~6r-V*Z3 z1H}G0nJs;u`7$rSify7ouom9$-k@{v0X;K=I7iFajhi=C&+u>fHoq?XN{uXiVuEYq z0z$}ZQ+PHDmLoGtE^$)a%Hbop_8+BWZfGH3(WmM;; zT3U4?>-NM@W2lOB^#AooprjuZ6b*hw?Yoyu=!9P|XdX<$-aQWX*I@zo5NGEMi&6im z$!9q@d>D?f6KFpc1#uAn8SRYLM{}aSQI)7v)QJE4v-OU0MnTx!U+7JtH@qO*Xs#<3|ExEL*neV1r`XB=mmW*i z3D%~cU zV5$Sw2NB}`t7h=83P4GaD;kXtgZis}`1{GpL`4|DR4SAxlyvp4N{MQbqK2aP`0fk-v1JM5UaoiUJv`x6~ zDmr>J>w6Q(f5~~$S?t_L)-;A*->&omH)kS1M{ZBx{#P;`zeiC8J6M9!s03S50l1M` z!P97pi=g}a0L!gj6o>3z{b(MsKqvT{*?tSMNlk6+8!YjUqZ#W910)S_ZR~)mfTci- zrsfCKZjSN|?xb@39Gu=QbSgLUnsc2zNp&w^uc93HD|p7yMEgHbnYfFJ#f|Pza+5=D z!SuiWhHwQ{t5#7ia?ua40#Af*hVO=}h*~?r<>v|y;Max)b+JSxgR=00b;0&{Jl=aK z%1%)S%a(~19>?!LhQe$YJoA!Z8d>r^{zh0SMK`L)Sv6ji@x#c!e#9Lfo{jGXWB{KL|1|T~q-)`M=RtpfK?RE5u!oTGi#scU**(F6GHeW+k z0&xcyHHKD!C_Vs zDH@#3c$i=45o^VSn1*Eg^K_Rj>VZ*VL>531ylQ~50LITNQdfRnlzU3@n2=QoOg9EWLo+jgCjRIB z^;|vDG^4a@MkHbW|7y@4iT=y@{~}lt;a`0KdJQ|e#rb+2%K&6`O!aSFzlMGNmgZ0T zU+I7v{g>lw#bL8xHhoAjOiA8_`V7TLswz`nPpNyYh$To*Afzc=hyE6l@3NrxmJ2|MJW^?jUM`_~Rz+O){uhJd#g>%$# z;RY(f8TLdsFo$pMl-nLQ{xCVeu%F`FP#0WoSf|73$5H=%&)oLnO#a_Zr`hY|cf)w3 z4c}ZNyt=vo%5cSNE|VCc51G#Nm^TOX_x2hv!?7rl{y^3m+>T{;nd|;3aX~jPo3{xK zLoe)*n2Tm;nmeS2292V+aZ_4k4@O^L2il`r%NCsre+=IW9|>=#uGa!B&v(SNtHJjY zc&!Ea_orZ#KSNJ`l)Uoi;4Px!@l=@>k+XbGRPZd^pBprT`zt|gV|qJf`~^Uw>Dk55 z3xk$}n@1N$rC_%xUwaDK%FX4)&3~)bCG;DjExR`>q1!s5@GP4kJ%y}}RSuF)Cs_%t zAgr7tu@6>Z)cFbjvRA4Us5U9K!X}}Xr;d6%T~5>d7*?b$4B($AG>@YUDvh>p2=?wl zD(v3`9%`Sl;kxjbFh^9C+O31G5Qtz`W|e+B)EW<@tF8t zwvzGLut;#m>+de%in@=g^Cz&)lb96uC^r1k^nPkKlf4df>3xm{Z7v+az0{VaFq=uG z=}Wp(ilHQV+Z&Y8{1wN;7fx@*w`@u8@*g51$rWC~3bLPMx=Bmi^eN`W4sQyILhfa!n~0jLi^ zJU}f_-WA-BAp;nR2A~P{LptB8WZ|v(yB{bk%k#_fcXf^wWbm)4n^yPJajnAe|Hk_^ z1;Eg+$lvgPF#^y!!ij3hqJEvbJipjWox7};?2FkL*#W(q%g8}A0Zje>iX0kaJ-WeO z-b>H({cr(~rk+I^xQ7{Ep;LsZKaH92(VTg|b)3qey#O-+&!moGCHArA?-$GtJCQ2L zqk~WpKEU_+7P-PPCxRWUP884|FZ>pBMaF~BQ{dkL`Qo2ryi$L<&o=s_$sVsIFZ?YW|b@mG8ELI3sed!^}A48831E4L&|+`#PC zeN>k3#xDE;@7Na`l+FDeCZhoUqf7dh;D%^nyf5A!Z;3a?bGQ;Wa@|&mVlsm5RJNYM z3QR+-(k5)ewOs~Va1Orj5UBr-3}p|oMniK+rsDU% zyt>e>I9<3*7`O!M%IgjF2|FhYD|)bMzr4D&k{`im>d1>Fcd>AXTvJfclec2DzzhE+^h<#Qcvl=?AE%H-r5sOgNvPXs8?S zein@X`@}+((LuZ%dQrD%W%N}P#VzB9<3Hl2S+la1XN}4FH|`a`fP8V$>2X%2LForg@0`} z{l_v5W%%;>LcRHWtNNKOu=@&Ta(&@lY=x%&3HO!$!@b2VLcT1QCYYB1{pw@9ipoRy z-#JvnLbcA+1UiHNyHEtpfDN3?Iv{sr2_8$WXGX&3sh_a~$3giievUKy@8{Gv%uU)% ztnhMb9ot)2f(xlq`oY$!%{sAj+DIG$ss0(g(tHI_T;ggs0RMqg@T%n`U z+#T~DLsdS4>7PZz+nL(h6F%oV`sp7f4!Dh~)EJoQmR!TB^dTa+ov^{H@&3c8=vBl= zINnLv<3I2ob-al@vYy)CF!IE0Of#xZC*o1KiyzT5Y;((}3kD~{Ua_0iAgcpgiLCeI z*6}u2sj`t19SC=X@1tUQKiouSur1sYz7Q^=%H1tf(LPItvYn`4G*!wnU}6jr@L@d7 zCHR>}!Ejj1%Aj98e%dtM&uVYNoA7T)wjHZ4=5fm^b7wwk}QE9w+z5uT}M#Vued;~3o073bJsfJ`FLg{`u2*D zVT=E$9b83@(~C;ScI;t}uqktzKMe~+gQHiX>~ZgSN&J3%JT9KqHS4ylN3)h@bA0Df-<2dU;u)6-0 zy=!il&|fCwLzB6Dn%HN(K*hPg0=A+7b+^v&=!3`rh7j#H2jx{VIIIf(H6frM@qzrm z*8Nl`fc;bT-_`=M)dge$ObH+>W3hjNeR2L)^)oiWx_}GuO4hAp696o>m%XwxltnSc zf<-Haf6W*y0RO0emt&uXv&uLNGUaHoi9NuB;hc ztx?v>xK#XRG$bk)ou`*=XZU%zpKLW}R4~eqUgZ!rVJ+3{ekfbq@JspuI}@Qu8~7CG zd?ot7{H!$hHQv8Bs1b(rPrlSVt0{2hcjdti(L%OycV-#n*M&_(r0E0{FK9opb$V2> zf<0T+M6DL8XJ`*o%&V%XJ%wiF9m2n|0>io;MXw`UqnJR)lKqhdQZ3cy0w&!-S|c|H z`*xtGz6XQXD<()5~^4~tZEnJ4$FMl*3dM-LneeX6Rsej`9Syi*TWR1d39B)ph0eRJJK}q%3AW*ArB9MtMcx{-)s_+HkH5{mHP% zL&N##lO_?n%?S=L&1gP#Bp38+9jb4L9kmMO4l+^kPba7{Oynwhk-oOGuv@K}2Dq3y zew~aDRlcn4V*W35%8MGllGT5k!0`3N?+*t3*K=E|cq;nV8lRdCJ^=hT;yIV`BTYbo z4D!5;_ZRXNnG2^{`TGif+h&=DyuFa0`2NHSs1~73xk|$GY0{w1R%d6df}#{{$^aDk zCtGp+zwmzr7V8bX`CEZimAuHd*S&(djU&h$Bkx%%k%9XaHOjB4T9$%^*yWD#CZ@mfCx^dAKgF%HI%ieM zIupMUkBy7RJJGK=kaWpM|o-6{X0B>pIe8w>rHLzU%GxqG7;cL6oChW zVsHg@!taA}^q9^gVivQROxO!D`LwkB)|DgtUi84q@`XHY76Sr?D{0s}(Ct5>&uWo#M{APR@VPC1NHd#ZmCSqBqXI0Bu z6Bmo$j~<9-Q1^Q;IuaeELue8#!H%#Y-|#_ZBn?e>@(Q?BoOkgYTe)V&!vi*@UOWcP z`EBS*XLG%%^Gr(eUMNh4V+|%#Pa24#d;&ILHg)Cl#PS8H?C<58`iMO83G_#kVRK&& z?}JTR8k}T4%Occc>i;;ymG>>Y@k^}lwT0U8FR%b-SOIVwzNDtNmsiSSCRlA}7uUF^ zf5`i5&X3_q7&Qh^p43oVf_kXNbidGuMYM#k4MpetBfYFA9kQ9Xf2LS zDF2`O*9U{f{TuJ6s9(K676HfxC`fgZPl%k$GjqXPk>6=9@H(dmUB#ndZey-# zi+bzOb@GV+da#l_@*isQ9jL8;MBn|j^wB@#_w`FsRr`{;dc&y&*Uram-@rpO<9ZPXxzu|hT_JcRTocug zXU8vq{+Ht?xYa$*8NUaMA1(+-!*iDmk7k&`jc65$ zgw0_IoUk7~3vY9FiZGKYn_7$4);?35qddUyY5rE|H~S~d3g5}!mIIh=uz0{8Q}%FC z4Im`T8YrVMRGWV{DX{HwAkPj8WhvHyC+>VSH#RT1)m^ThkBH$a`iwoX8HqO%E1 zHTukdBq+gjkIwKj9r+Y$u)5xrR7+NcXT#of1Lche#ZSdw#OLD6vMOga%<7vpivJ&H zxa68lC9rNhG;W3Vr+TykOukJ;(Fvw7U948RxmVb&<~&1uc|TofmykDp?-WNp(g#m} z8@jP6V6r#4V>4>WT{3F&?!*BVQKi;GUowbjA*2%UJj#+jXoo*e|K)!hbir1yBZFH; zZ1yr886EtG!T(v5zbDcEeB-?j1F#YNZz78PoIbEqSb#5?``?=^au&0ymQwqA1;1Ah zMA^(gd4FNY7y!%C4YwuPrv{$AEy(Bx`UioI_OJ)i{hIQ(AzVOzj@Fms6$1AqGLb>S zjPLb8ucC?nMSsDJr%zaaLw}+HFb*Jz222NV8Tgk4P_07et4zgs{)^t;tbr_o*#23b=L0^3Q_NXs5 z;A6JuV5ZB)KT@l%6P>2B{iE=86s%8D9b83Z@+kGK;au_cx$eF2R7N{oJ8VWj%RDAb z??+#**}ht7%Vun9eOamRrS~_#F5C%;hHCkEWBCel%VzmnJe1(wP%BFzZ?BAAST>t! zw#0C*<7zLfE}8|-(u7FID~W z(N~~<54FEuWN2;R)}Ey=vIk5_3u=Cq~Q4!((rOdx?8H%=Udm@m2p1|K>Y|9_s|M z*jlwT<@d^)`)0gkKQJN>yga-% zMFR5o7V9S!KrsRKxPDvoe;M(=vHnT5Qc-{+mn3sBe=jSeJVTaDKbkgLH}!7nd#4n- znGtAh277$A&LbK8&p-<`A(I0P!>08I{hDT?smAIrXu+mwX)Un_-LZQ^GW>yho(6ME z7GN=X!4qsN`F}Os;Jes@Z^`lcI=T7AmZIJ;-D+Wwa|n0SI&4lZIfv_IK7F;>=q33F z8!#aFg{gGEqDbve1?LL9|HrH`d_NX{96GR;UP)Fb`H6b)r$iNRpzoPSFXGqu|4yFc zjbc{eX4FbwI7ggpC=pi>AcMDM zR2Vz-JoW5FnIs{l3*v{pX@LbQf@gJQQC;aMs*Q_%liO|9=JNdFn` zXgfaSV;I1DSmR=lcOSUl3HpEK(M{AGb9wi>e^KB5i0ro}7&a7H4v=_H;m4+KYW7xR zEQMm?f&BCaBTczabvMoQm-4SG2onBlf!=cLIg^;XFG$qCoSEoe__vtfqI_XrF}`K~ z3Hr?%*zW}W;sC3hvVLXN`&9)H@1R^DIcGa-Wh}}Flnuxt6esiOgxYrmoY+U{d??r5 z^lG=ivljf{K^8DE!vK!NGT%Vte?8w$H}==62Eu4nl=#6Ko2jn9JigX4T(G(cWld)GOKpZ_^{} z%TKXz4Vv1nbZ>Nojry5yXBAQZL{=s1Pi?;yxqm+IPw>9W{rJCGMJve%eICD!n$B=^ zUGJhtIz}hsW#o%*u+Ic+`zfa`R^oFvH`*b(0E0Hs3vuPFFXGGN$D^moX0M1pk2*v@ z;`JA0@IMtzTPNcDx_JIem~i_y>XNTf0TzO%SdK2XBI`?D1>U7<6o)PxDfU;~Z+W~h zW*nY*VflIE{|t}XPxo1FV3~k&_yYgoTuh%VgE5A7TfdXo!1@3cPsmm%_m_{i=L`GB z9N5v5XPe#7U&;dV^Z6=vNzgC$Qk{z-R;*XLus<`%8x@ZW#(AQ>fzK3=mzWCnD$3gx z^ha&=FQFoMJh&_TCoDyT-yvEQU5>}!j=x{bB!J1``snpIZ`PLh94d>V;XQN`glIgb z!0z_K=d^Wiael{Bj3R^X$W`}K>TahEF;-~u1R1Ibj=~S-ha3BbdkTVo>HkgTYmA?9{z80$ z|0Mgj$UrtB;Q@qwp})#0t@Kxw&DQ+-U;JCba9bGRWm z#l+oF>0{J{hoRQ4?p^KG;CEHFYAC~UWB2zG`+wkmNDQzWe*c7f9mjrw$Y4A%(!Q|>J5W;~tM{lxu? zzgHAs`dy0&ECM%d8oteH7`rb|FO=&q-EWbAMey?DiX#4ZVvuDLW*d^dwO{foW`ATE zWO-zTOlfpEI9KeVxFvZHwr)UndTgus%Y%yG|BvXKaDApX;sd&D-(=Fp<8(*7fi9>J zilEIXBg@kJI|1z78Fix0*F3HoJrrID|BhaZ4^baH7uAgB!O6c$T$eZ4>JRXjr)ScG zdk?wcPJBgouB!e-iX)u1bc)|eUG7qE9ku^b?g4!L{LHFSpE~E9qGWa_Pz&rJ8mNsr zK)t2EqXk&x-Ior7VPUT5is+K41hYs^P`h0de8eQy_V9m4@j73Ff6X1+famv6hi#;S za1v!|e>jBwuz`OvlV~beRSkEP^C{PEl?>{Id1KS$H?>-irv7&V?b6M4<;>;zlpkN4 z$^GSd%Y*g??4|g4C}{6b9x$06`$u8H3o&`{Po5uU`u~Jz`F}+K!oPkj?w1V^6JYkh zVt?xizL*IJ|61!?wFb@qwn^ZM{_U(S?pMXae82Fom`1CH+?*QfoOMU0>oL!=vA-(a z&pS#l^c_U-3HnE7ssOS9L-6d^@oqa11E|AT5rF22+Vr88*h+2E5nPKU@5iyHvW?BW zZ_Pw(&vS>77x+ZwuMn&K$qb-;u>X&y@Akh7N<=5&k*|n1lP?xTi*p(sPX4efU1FPw zjvs{SyWBfY?*1b)ME=Fr=SK5)6{?@_iT_^5w{IcuKZY)}1?<3|R0m3Wccbc({;(l6 zz{W61yVypPL#C-EYYl>IR1eFfAM@V_|C6###qUM?!f(P^QGU8r?v73|>tYVoh=tT6 z{-VomF0;TEq4FO=6|6{5hzek#U<=*83o?~uVO~9@Rz25jPI+O)*jDvR^nQxNZ5<2M z<@Bg=coxf>_ck`rFsl89e%S|kc~b_8(-+2NO*8{kDt@aoNKcVu9I_1-S7>jcU9o?X ziP&E{hE)Sq0nk68Uo}kC0#psiLwr`oza{u0d@h<9Js2*5Pdg0azd{eZ14Z!X{$b|r zlz|NxN=>9cwUKAhaqJ4;i{{7csPk_}^LKlElxM+Mkh@2Syfqpm&K4jX$i|Kp4 zuCPwUou7#ghk%gL_{W=_j&3nHo+ntN>oY0=RY3bD)~0!lO3psG++Uo3K>qJ2OfNX) zQ3Q=9w>#!GMh!kYeZ=n>mWeviY0#Q0>FVfBUhO<90QKkH90TFs5dVJ({+FN{TZ=ZV zBb?%B6ox+5W*gOk3vh&6=`VP~-AM#+H)u{gsPJPEbV+=FTYTJD;#}p(Lo*)E*8R|` z8f7y`Q=fke-qCd#-={2kBKnzkoaJr>yw?hMk+TAHtN%CY7T?hT&E^@hf@HmTMhkH{inuzLP zFwEc2sQ(`&nrurHd?Mj(?8YShWmpEM7M4k9@y6YK&VK4<{Brson{1QvFH^ zAWlHa+#>vMe4s@Ds@91Q(7y8VvJ=Jc+V_-9ZtSVz}x1^S?43xl-Wo;_buzntf32KC$azE zj!$IQgBrm~_XqI*iT7gqs9%kUqX`Ow-b^SQhN7c(SU;%Y-$H~V|Nkxg-?uOTm=<-+Q|0q-Si#tUp05N98$eD}bYnyRZ-wn&XlI?z& z@?m&6G34DrK@IRFp1m@*qcuLS51iOAti=te>Zdx7x+}fPu#vZVHQbYA3faMblGj_F zFORREBANSzc3A>j^}`~5q5o32M9mE=l!^ZpIT$0UNM9C9wn}Gf>L2~D%BB8FQ~-(w zZcE+kRPYw0HP5;mEcT~fFSjUp&v>w_%zrp%Znb||fWf@S>p-(6ood2}F@VCn(66mI z5rL+V*TM$0&BOr8Bl_@&)+3chvMZlge&&lEbe~3lU5tsl$8kCX!v#_MctLzOG2?!w zNalzpg!cyH{R!#M(fGDzz0mGd`aYqHV46E0YrV-mK(E+As(rIyiRYpN*+EQD0Y&&! zbpN-Z3ETtL@8Yr9%q6*-X@#p%2%Ur{Si-gq4Z;Inz4Vdvax#y-A$32hfL(}BkHTO@ zXjZF5uhY@e3k_+Z@EsJd=a~ll4jJ#$OvE3;{BMuBw$Gtktbx~;&y=q;{?B56tJa&( zP3m^?yu!EXfUQce{e)+A;#r;0<_5`!TTWol(vjrP^JVNsVmsv5EuuFDK+j340D6XU z20h232i>+u^_ayPNk_1bE(M_Ze!U;P4=I2&RbgZLA^&dl8B^)-dj{=e?jRQ&einM* zJh1B>>3w*D$siB#$g9lXY{&G#+NdJ)MdzXwXnl{xr{Y{$muCG%1kg18G%6O=4O;}u zSZ!=C6PIuFMo@7tW=c@fv8qADP*d=KZkdJ1pI%O*1hY$nYjK(G;JMGU(tM9?CtaY0>y_f=22z*;i zZ@Il;KdJo-|Av0y-4I_WgZ=_o0NDZgf6EbMGps6UiXYuhZkYwpJ(dZ`K9oS^`+!s1 zdm!C}bsW34dzJWu$Ah4)P42XYdkf<70yDGI7huw=z2@~4TAaMGf{u4M^7**;-%;;bG7E9 z4tpoP2X-a}$6t=P{&Md%*x(-c^2zvw*RTQ4padIXMlaiT}4 zbmtFuQR}J=$M-t(?+38rM`c#SIR+jU(x2Q6_F5}?{r@+uxud=xd2Wll4dIr@CthCB zd=j0D%Qr2)tbJ?9S^qu#0Hrx~qA_CZr75F~h2L5Np?c!a0zbBZ=(T*vpInsT+Y3>_L z;K}Xy&iT}7rcf4RP0oj5X_~sr-QV0S?`v|m!tQtI$CkqY%y;gg_jEE^l_k`Ye|GXw z9~gxP*zOMY8l+1w{i6rg=uB{XSRz^;y&a8=)`!oNMLx-=afrz9dpbw=(m8URD&qBy zR{q?An!OJh#Y=8?Q~|$bEWmj*2SFTv`fdMC_oILyk}jo@N8;-DxhD;arRK* zngm7$ga5Ah!m8|98mmz=ga1yjX8nl$2U1tB>dbV1@%Hd(=JE%pJ#VTr1_WOQYOS-_ zu&&u6Rtr!BVA@~d{8ILnzqjaLf7^Y+zcPlzddSPmddOBuudG|TZ9IT*ugxj}ccmV7 z>UwlX`2*3~Iezx^3b!qJiL`%;S!A~cf?uhFRR^#PK#Yg#02cj=1rQG)JJ2K(=L`SU zi2|Bp4~JnJH3>~C4QU2Rb3Th#Qr9_++_L0ZrIc(qt>^a4}qClIf8h0DJW#cy%+2TxGPUPfo|KD>V} z;{F=J4@CR-F%h%@-`No+=HWz@r{`9!|72OdaPcK*YkTo+%Fyxw}@Y7m4N$$n^EO{ zOHcoNG+Mo#YEE@#@mEB7Q=I;?fpn04!b;q?z|U>RzBh%p`GM~81ylj;GCjpL9Xe1+GZl_sGWeBbx8Udy)mvtTC~G$<{2B`)kEf`TClf{O7ui z_2|pqO?Xt*!rtUfCD7x3>psk+mnYMc{Mo^a;nPuf7~%oc;AVyWg8}{vFayV6fJT7n z9b5rRsO+u9*EeIXz~68`r{I3h6aUpA`+J!hz+dh;_cY#pBhg@Qu9uc*##*8iokec& z680gxR~x-R2PVwD?v+4s{3R>e9ZNf`-}$LOlrEkYbp4%RTHTFsM?thKEElc{@&yl| zQmN*b@w34ozY9}288)l~I;7&D!mwg|xeL3jt46CC7_Nk5RsV!k*#hO_rt7!JTliCd zfUswt+G>Sj^h^z)Bba};=s*#Jyu4WraRbS8P(=+EO;}EEuP1eZq6QsLN7OALUW`N% zO;{YFXhZjyJ&QrUW*21#`^pFc<}WQymu9YRc{-uDFjHd~6H~YQ@A;=u1*-%4_n-u| znl|BadIVPZE;Eq2@j2~C-|7zz`iJd^sb<6v#@)!T_EA)<9-pP-`V;!4x~7-#?Jfh` ziha=6~8{qkV}9;dhTHs;Mdvoe~2-_Or0#E6aYb5G!xnv=^8 zWd)#mPK=6dJkz4TVMd@Pj?VN}x$~WuVXYFzT%5Vq?!JMTp)9)gx%9VmfhGJ9J2DD% z^at(ri50}GOZBh1U^mdxH-rC|VE!-j#$p-UGOO^}^mX1l&U`$*`hOIi|E~`hj!gk% zk-ahi)d>|3nCeHr#Q`wA1OKnOfoz5`2v#phtbnYGA^~j{_3Qm8pD9UwZmv_=n+yJj zvVvW4zgc>(JHmMiYc>R=_r!nqB;xOrc?XIDhGP}_f?(-@H9@>%h6`+s9Z)Qw?7tz= zQSA)+wFYrBK9TFO8vU^ssv0U^=*4;i9?{%GL~IdrcyA-OTp7-fYQ#4%FQ#bp7n66s z<9c4eJlJXQv^S#foyv7^JKDZUtTA?oEbuwhATPiO?R5&%Rk)74{xcYWjaZ09ZN9Q*IZz!XtE;3?vt>j>`WE@NuzU#uzgvt)509-2AMu_z8EftllDY zi|FOeWe>~)iyKr7FLqD9S!kBmH-9c4uHy**#_uP}AsxkZL;ByauS`K)U!puPTVUs* zW19b0{GaFy6jSKlOF6o&6sC8e$;GM&=zSGruHu*JPE18C!-VE#{8VR+qXT|PW&?c{ zIOrleqmx>X>NZfWi?ZtyI)U@VbE3L*S$z_HM^Es!ps}AX z-4pfZ(@c~7o$P)d>i@P*1tNg5P8-&uUF19g%Xc{uUSDR)T?59CkpT>F+7lhjVgA$x zc)+zxpv%kZa+)-ACmjCsUQ1RpeUY`wO9c0aPepm+U+GO|%2QC6>UJu90LA}z-Xq>Y zm#$RjR&vkB1F4*>bN?=! zOGH|F0kEmSM&w`@RpfUs|QK!SgZ7Ayxa{?Mk1SvH{KU&OyWzs|BGeCtey zN?H0E@IRbBss8B`?j6{?o3U}d!K_v=?a3`^8^r=BE3mjg^Ma)K>CPTf1t}J2j)!ju z>b2%TEq>}_53Xg8e((l;uobEqwB&eqGhgU#rzdp~>hI|h{xBGuo1;sq7Ojt-2!{uQ z{mJR)@eDq!-)b~JRj|Z;=>8Z?|L19DQ!5#SijXbgvHQ843{z_guW&n?Z=RMDism`$XY36(uB!*qhT#pV^9KXZ{%tqtS z1PSt?L#!wL5b^%3^euEBcVH@&t>h_`B(*-%`&cZXxLw#auWs?Xp;Ga-9hbY9_?S$P=`T;DX(7nn#WDAnmA~_p7j?P23 zH1k6&WC6~}W)|kj!~#Cp7yh%++i)-OQYTbD`B>rPrr>(|vl<0=FcqODT~RktDcusr z*v`YOgz_Yl5I*C`+tGN=Pj~g3vu;33@~Zo(>aGpH4+pbq&=29{;J5V0==Q#VnR$v_ zu86w_#P?$ofHHx$&RD+RxiEewoq8z$>#_1|HaNhWu?-PfcXek3`k%FUk$q$dEvV@< zDICCOTpxMT`-vEfyLp`f;6Lg3D~0zTmHLiI{%c}Sm)^2vbh{s-^K}$HPV8S* za8;TZKwUqbz>g3lZQPL5C#k*8KyL+WE3{x*@tf)K-d^WX_SGao<>|`W6|D=ymIWl< z-2PVFFXqp(eyjam#$V?D6WgJD=BDXCqb3Vc@%S<{e1erwC>!QGqt8fy4}`(@CqI_TW9r0w@<~oXG$*X;dqZXd;nT zN9)69)0ap{RziA++v)Zk=#*xa@wdHO@W4%j-eH&MOjIzQ5%mgF!BMWsk??;1y3MfF zPoebv2`;}kGa|Fx&18S0xjH5~ci}VA#C>m2%ijdsKbBfzM}Fl)$UYw|v^`&iu%}bhg%|&tMvJJ&RMBo{R4A-(UjMKdVuBoJthi zhZ#hjnLg4GuD>iu)qD>z{Z{Q)=C4j4G3M&_5z-9hmVX=9FAbhy)o>?V%9{({La62c z#@;DAw;Uj`2V(N{JaK!rxAs?_FRNkC(j&4J*7IvU06MN-Nzb(?L9u}Gg*r>SrSmGl zYnn<}Gu6dlXw5+L{to{~9JxIa&~Is0()IuFE3iuA^}$RgfD{A!E9jH>kbbG^(PTO( ztE2eY5$q=hXoi}oX=bwfh@dl?puK3Q+l2RqKGVRehnxH!=`r4E6dixkleLq~t}x&2 z-Oebc@!sH!WG2v*OoaUdwZQIVa;2Ezu#Eg58(P7`Fm{FMC7DT%u%4-tm6`4~10HBT zJke;X%1@^k`G(qprV_)ZSu1D*fs|HpdPPKF@ zP(hx<v1Dl%Q2pP6DVoNHLvJj zR-z&GFX3P7ZAlk99QFI3&Q$ODbPe!d2TkiO-dE0YB87|5xo&B*_}%h(-A*C`%lu^p zj0rGq(D*;=6I6y^(S&h;7x8adf0D^)W|=a8@u^#!{N8j{-yG-<#wtxqm-L=P0XUKK z?Vn-#rExL~pdP>*z`xcuxS8K0`AhXcWeKVXw8r`g|Bd+FknG214maYn?aF@Fb2RA& z+VcOD)JLf{BzX#8{lPmFT?s@ zi+1OEEPp?)kg4Q<2c4G8_xTKrFQ>+@3{n4bGRfg4GJ$Vl1RSPEP2+j3h#_w$PuK}N z_&RmNUPK;K(^;(6{Wt3lbftRzLXe`rzi9X&e(gCwpTCS*K8^8vb-;ZM)Z>-lk2GON zEV*)i>0=Z2FR7K8_Qo(~Xcd}O`#1kCLP_?pvK3|{EH|*2|01tw*1&9u)hMI`)*3-twLt3w_#imV z|I#v-hmC!JT&M)9owu0u=Ye}>_dV`+e!_-c04;J`8q@N;p zx(248SMUjQ0uQ2~EPCpJMco!|iTc4O z<%;iz0sK4o(f^6;Eo24o_2`NVx}}{viAGha)|{XEWB~c$lzwriq72+dKTsa*`gHF$ zx3_Z#{J;7CQe4$@Q&-{pC*xb*r5fGX{h4d=82#@fK>4*CO>;N2!jC!vwGyD#;}ZUF zO8t@w+=X-~)Fb}ChT7Hy?+a%c$ChW-CdA5HE837ZznK4j3*}W;)q&{@o)<%y})q4d#L;k-X=iZ5^T`L>O zl9|T;25>(P`!FfP>klNdQ3RkpHFvm42K}lAG{XC9(s%>z(_AEJhlPLn{|WFX4XE&} zaQiZ|`;YW~|4eW`e2WNRMf6PABe;~zaJ*N7-o7in`b6waxK3V&*Bgdz@)hvkn_lAC z&UWWYY{ELG`!2#m6h$NUjq??~W7)_OW}^o7nIco!`x(xly*q$C=Mn+Dfev6X`9eKr z2tGvR@lkXv&GBTSJ1is1*2@Qb#PA)%>jDFMNo} zGcH~zPB!KB!oH#ZV*YQ8p!Sq~5JvT*h@l9tQ4$NFeBo05D#{}|nz*~fZdhcYXPR9} zVga)zW(A669+Q>OYwMMS{^Sg0K@=J2e~T#04k=T}4&F7D&DIG`XW|;Iu~dlJMjeTW zHl$Pdue-R;d$=U1;Fn9^1pdoqW;L|)a(LhI4Ua{y`4c(auZ{!Dvw%9lmGEnCI;G%vM!AtY z-6_g^uA(5n0nB?BddWt>2Cj8-kl{6A=34`Lm7k%L$aTpP2i)S)z{2=v; zgP9)9->CiVBd`CL8dn4GuLz(9_#ep%xVzB8k7lmq$KYRj$c1o|6P<-{`9;7_8LsAO zFjw20`EDVu$>JPmBHbi|odZn27)6xZh9fDeE(`wU|GRL_3;#XYZloVRAKIS}(=AYr zH6;GO+55~{LcE}gqR?rTIJu>KTiwCzAj@t2##OL1( zZ!j4PAmyWSfL?fb^#v>bZw&UWH%O}uXj2ZLXLjKe5l`5W_~EV8)y{5b8q=E&dK=QK z{5ONm;S%OWACG!O9q|qY{U+%b(EMITFGhBFm<{Ciw~{4Z<-Ui_9|}9Pf*L?qzW3GO zyQcduOwnsh8{6Uh<`gFqd3uC8Gdp$`*Umz+fTgei&+?4r)Dy2`R>a5YeyCS# zQnlKJU)sYu7VUyv*ybH%`whW+8RGqNAiolJpaQo`fy@$MQoSnHwP(Sgka7gB}YtFQo?)TdZL{kus7kmURp(;I@VqadmH3IB@b zty5S>FuS5>=ze1qWJxTSkY%yx!t9mu1g)5E`Ax$8E3eTzRKB2f`3At8?t(X|Ld3Y( z-_A7P5v;RSC%hBQ@6}Y?kHEQ=k88)5#CJw7v3gJo=5M@1oOM6isa34b)zH6`PP1N2 z-5O2@S8t{?&S7Pyd?>lIu@*pIH-$%a-Qvt`d6fAv|E6MQ@@=A8Jc=&BX-?=I;huUh zg)5v@@B>q*0Q|*ubS2uqJJNa46u#~kC6>DDAtQ%mP>qmtO>2Hzsa9nR*%YH$Wfw zH2vpAQ1SkMjGYC%Rb|@t_o^Mo?hZr*L_%7+TN;&AI#m!vK~zw%3&#%ZL>;?FMa95w z9d%6XR&2-b`mc-U+sw@O&iAr@oU>!?wbxqbx$gVA`=9D_^`dGQz<*CM30waybwq09 zvHpkY=KxvDUlw+bZ%STJ*2ysC+TSbr_l)r0F#iOZMd*C%Y|tP40LHsL``7}(7Z_{- zYyT!cBN^Cy4Ey`A_>lpgFXT9YB|u%_pBlkAg-Oxx@zk__HY6J=|KDk8kK{3RKba$W zH9=Q|%}$)ZORm?+^Xs2WfH^|{;o56P?%N+OrqfsNbH&9&dcKX4 zAGo);{ofP;nk(D??r0myga>5zcMvnYOBo|etOLUfDu7 z3i)ShHsSU0v&!=tq!`Z`Y5(lqtWWV$>HY82!*`LQedmeyU#EH(eEfBU`1+Cpjl~0) zOV0!%BtmVWin$r~_%T1Pnqv!oL6kK#&usU@zeDs5J&Ye8F98_01i<@dTfx=>vH)w| zlR_**ytjLRVG+O$=o^~K4?0sm(Yw?4()DFAPE~ininRJ|>I}3`>BZ8(@}sJtnpjz&zvT)U zNh3;c$+}u!nSpaPpYH<6kPnoB`=qMxMkW1}i*crWF|*XEwY_q;HWi+lNzZSgZp~?Y zxia%2he1kMR-j)WF57(zE$_a`;-m&MS@ z{-c*cb&_yv`83<=Uf|E0ro8^cwAVpm00&6_56rFqD*oaB?nd5OkGhE)Fm06hKquXq z@rCQuSNuj*d43(Ak#tSBR9oScrevGOHo>ct*E?Eh; zt5Ud$@_xTd`ll1?b2($Q2o4-Nv#l{C0j2r3dixQ9YKPw zw|^mUd$JCB#c_UQ4w*u(PO`Uv@AgI~A?GRJ{lgA$^bZ>V27m-$Qdli9qE7OQ&XY&* zUU>wH%8gp6is1LNoi!I|YfVxZqfE;7>Zi0vXJ(T=gXz$m(sXtlrV8 zy{#|lK2ZAqLNW5glljWp9xSGJi6Xr%<;nR>xjhpU4OA+oynd?`1*j*johmkUjl4(O z$W!>fvj2aIWEI4FNnanW>EDwypX89@H^nxk%Sv6#?`Y~^!^-PAgUO{C#krag&{0vz ztCA?$C2l2F-&Oc;DeX`F?hrBB&kJ`%SF1C`t+FKk(2Vd6(nnPx_^ImQMr!3QD12O4 zqPmq$r1`(l_r0O+^Bt8%^prdjmkI}-^$n7V{q@jlXAUp;ha30Sn*X)XGJY(1TY6{T ztZQ~hIxczq|Ki`d#R2_Q?>|U)&Y!LO@RL341q}M%etwt(5&)FD%8#4{;+E7cVq1`z zOiyyIysK*R7t8*iF0al2ZOyZD(xJ&K%6dLjntiIy8D#ere#zdar+5pYx{nyZ6!`$= zuGRlzaw*YQxOOhE^}iWFNA2HPuQQz(7J+@xTQhyGpYByht50a#PBYivjvACYB z$3rXESC*&}|B&)|rP0N=6a_d>>*09u`CH|0{XyLs7l`{Wkfu+S@zq=_={foQ-_)^= zj^-&Y_)^qVE9j@Vv2@G6$q0G+e^oBPNJdb|2~ z7K1~^HeHecOasGzV{mmo;;Q#zbF6^4KbMtxdfW8H#*7~;f?aMPF!4#U_ zb~t!P|AR!!0p0_D*6SR{K0+{ym)DfuGqD3DUx|2YAL=@E+2L z-}V;ZMa1J+OLm9Pfus29=$1{Nc6^~Ev^&PLMu2WuwtncB`# z-Ny0C(AYM4OwpP&UM1arRy0=KD6Y~Ex%|BBo z*Uuq~4|JRB;{yzqeZanDLg@Vy@E?4L$PhR_=%)h_o_?|ysSV^cW)?RUmZ`=Ys4V77 zqgu%v@&Ep++i04dudJjugn#(|WN{Yy8T6LUZY}IHHHcm(%nG8%&usYtCW|9b5x_KY ze0$FDf&X{Wr-%cR^M^;k*+JmHrx?Qpg@ST8c2RVGu%ziSP5)k2yiYX%gEceeD%FXt zE^kwQL4UJ*^w(OZ?hfsh{eNWqYBXDYSw<@UcfIt%w(0?XTe3xRV4P`&43o%i(GIAT(^8EIfRoN{0PI~_;>HW!?DgCx`L*LAHQ@zS?^`D!s8vY|R)%TO^809@Zu8G3~ zg>^iAjdR4K{h2!s`gz1VyNeaz1$6z5QEp4z=(dIjX+-wy+Y8*?9zJ{Gj7MVZ*jWUZ7b{ z%hdIILsjChQ75GzHAQrhA_Bc-`5%}6ZFW+=_P}J4^1J3H3x&&*gs3x;nUW0Wsbj+` z&6;{ha(-g8dyfCH^73viZ~U9eqdip;U{#^1xL~RrujS(ZUG(|S6iaTIW%A?1r6r}# z;vjW3Z}bB7EKuhLWhGA5RlOjO!$qW~p^@w6C~!JJmjn71O>(vI2C{Q_KkneV4=E0j{c^S8)P*Mlm4EnJ*W@_|6~Kxxn*xj0Cxrg>vRW!?N@7rL&p$iA)PF? zHCx%8H>wurNloNzt^U#@O2f;$R?bu>*=1smBgz|>E|eGW2zl|YP+iud`Hk(3ex+BYi>kqVH;l`)_x;B!usbG^ggzKgZxo_F@QS43P`aB zKIm=d=z&E`0p9lprqSK@4ES}}0%+P)uNr%{8vJRHZw+q_fW`*X;1>NI?06V?$RP^M z!FwWSf?VMd{)OP12-3iwL|(-c0RDMozQTEIB)gw3z|=EgdvJ#KVme=F*W5~~Cy7{3 zcL%B2AirmOX>QX)%5u3wRe-k?%bE#zh&m^3SGr!E6JE6)(rJ( z>ml2}mt^)#)oq`s9IX!(&)-5dzyDN!uUqBgpCD^*scODwDr=`GG@dUGaGi39Y-JRD5eJ$<3TH60w#ieeK zUye3b4F7QH|9$1@-aW@1oq;+^6ZVx(Bm&^Pw`pR$`^E1hpUD5$U-AE&(kVjPox;bS z;^TFN*%0%i8;B2$?`;1>5Jy|5yHRkDsjo@b51FH8*i6?=!5~h3W z9=uR^F6x;aFaJOKzg2c+IyreidP5%i31a_rGaDjIQ@h6}TMEzp^cr~pQzg+{4?y2G zasUTtb6v2rfxAiTGnt(1U?c+EfXsl-dTpMnJx9r_bDpYzu2((uN9jx1x5ZfXwW6XX%4}%DucjeoykADAIHJYWYmkWSBBQZc`4( z*7_@Ntem08RrQ0X|I_pd)fnBSc=Z9QSzD1EDf?>+W%u2ecNOgv$Ky83BZv#E?z$*5_gv~=4vb>_zqu% zC6pNkd)hyMy@79X7vUbf*U`P(CEwi9ggHVrx?2axDoB-8_HedcahB$!++Vy^J(EsT zg}^t82DDO!;34|!{X>ZFmDg=;BZk*f{+b!$1`Qn!*K0r+N>1@-|Ps;q=Q#A+UE1#Adl$(_57I)8% z)K$JK=JADM$i0=}K1|4`YhFvO?p{JK_&+fk8*iUnraob@n9o=875phrM{6r4W zg8&=A+8^wD?kCeqLGs>`T5lIVjP{c+ys0?JAY~2U>%Pheb zl5o9+bXPM_(L`+^^+0q6gy~QZKz~p=0=OrDCz2u$_z(W!1if_pN0e{%eso;CrS4>; zjLpNclVvsjwR}kBqsnKM11g=$_ZLTHGqvtIq!YDLMkjsZBh)9Vr2hldKOk0wW|sU? z)8#X|P?3SU>JxjZVg(N<@28@u;m^t{YbmyNi8TKf>PmBPu}N`NHdYhjpG_~4)jC2< zw7s-_J$(b%WbS1{p}(a(eoeHp(eriI>NeIn62Lxy-Ss+MHHpr#1>As7Bj4yZ-i=wK z8H@&O1&o6`bguCqxVfbXIEE#_@y*JEq(RHGu|Hej9DF}Vw*CkA;2*q)vjo4!zcoLS zfKPc3TPqyHuZL(MQVI_NGGiw_V%iv5A8CjLsI6C=wM6C+p3zMtLx-ft%0n2--?cpZ zQndpU)zkS#O%9t?tX;e%tD7xX|L@0DlhG#GMG?Ral<(10Okk)OpSpre2HdL74HF~< zrs(h5RQ{WG$r4Qq+eV!^uT+ou+q8OHsT0U9$`0OLxuMs{b|0Um8F$^ zD|f4p>%+y{vllei{7?1#8=c$|zouH_6SYcP<*XJq+*TTCj%HacRz!INbrE}4{=YwD zPh6^oXg%VWl#ei9a^dXc6-kCK6|rW5&>`v{QWLk-te_+1D;psxQYYu?%=g_>tiGF& zFht0pUk-V3lQbJ|Qv6jy4rO2I|GU$L@-4h3`M{)Jq5xzW+J8s94k=*nA1VRx3fLE5 z{~&Uqihd%1NC!TH1i%^y62NnR!97!dnFiic_#7YhTD@YV42IqjB1U9AK_|UE>s_?E9r+^@08fDRKWISrBLzT~ zaR$=Nq4^o~J?Mr%qkoN5*;a!zJMjGC!eUc(5#38!FkKZ7T$aq!-?5vbfZdc2bfC2K znd;@)OH%wpvHq|1_w1@YuFxvjE*T`9`?Gp)Tp||mUSThJ2>wvUM=$Y(on@0>mu_FY zxAc$l%*w@@K-{o0p**hCrPwX+(E61kdwV9c<8z`9<+@T$Dr=I>o9{}`s6jbA9smw{TM3`D(R^DvPZHv6$99`@=RrC^@@7FyjiJx_M4(Y zvy}h)r?kL%Q6*ZXek*tSF0N7JykCh(|6SEKTF!gV^!ZWKIgQ|_r@M>CcZvhvnv_qa20s$|KN9fD(LHdT*d0rWrJPghNM zP1lQ2-o2(y&Hj~V zOL6g{^i#!$S|-cmQan|1|8aF)8LoLHJ1Ix&D_LqSlGl~hb7*{wejcIRkzb-c)d~6~ zT~ROf_W5V_m2%EnW~($itfN*T=tJLQKfCtET`-t(@g8dI(cxEq}b-gWe^eo>RCh&p~f46lzmI1QE5+LA}=YH(^9X`)qJmd4Q zaO{Slze6_*d&|hY;QX@*_9XXF8;l^>=Hr> zKB{d+`d3w5j?+ZN35qLBQpbfqgu9>And4G*1pQ9aB|k5GU+60B|CJ&^H>mgDD)o{% zINeko2|h2?)ilCKmHU64`jt-9^q*67Za-??-&}n*6KB6h>lp7p*+1>1e>-Ts&J_P& zAaCM}(jJ$H0lcpW|5fr$Zmfvp1o;hLmEK=1x$vP@-o=V6siU0M<5`M=9UzT|?N9#A z&cd)~ehkjhPi{Q?xtosPBswWxPduoP?Eengqv=ISo%k2MZvPr}L(bK4{ZH`p5$6xq zK3o9&6IBgQ(so%QR)cPRQ@7WlO|Wlo3JL^QnN!2SC7uK zm9bV|D;+&bwvMal@toPazLi$yZd$<&bHATset5Id^}NpdCjN)^XPw*M1>=PuVE3Y1 zZ52CT&-ym_AWe@KmhUy$d=@OF++wc(9dd+E@==JueFECBZgF#fUJkqc;buF9Gn zKH+?yAmzAH^LpMh!Yy5R9&86*50(H|Q1x(fb-~+@{Iku2{D2p5hhRmVA)E&rfSh4> z5Tl-$s3E>{k3OdsZD5Z_cjH&dbixc49VL z{9uYI2pVew%=zjm(o+>Y8!Cg~QE7vv$^yGtmU&%Od2cDizAdZ#>*SWSVez+8@5<}y z=-9k6tgLyB**A*rBXuZo9EP*l1ScaZj9sP(^(WC;Fy@LyXzfWDuuco{A{ zFfj}LKTE!fbK=d@f2KXNUSirS)60`4aU30{Z|^Am5C2D7yAHq@#tLwr4-&v}e`J7j zg4T`xAqVXLLjv$Qdl4NKbmkAoCN5An$3Ojf7l}cE|Lb%750w7DOIFDr%6NkRkCR@f zcmEI}nR;IQc62kNo4;p$zy(|hj2{5}Qwc;Q&@;kd{!|X(8)TzKh%TYMwCB>oZ-tYT zQSnqfL{a=TNgK)htFm{B^~${}n`nk?>ze+Rn)0K?W$FPsMH$=M$4@K9KT8=v{gvJG zvii6kD&{{T{#e=JHM0NjRsG20ir&1JJeZ!Oj?_C8U(w2WQyqIcYHbo5r>_>Zt$5Cf zyg7RMUEqh?JA_Vo+fnkCE_mf?)n%_}fYBtc}s_b5%$X{>y3nnR>sA1AOZB%SiKBMx_%AJ+pG;QQzRUuv@`MpML z{u){ThsW0`qxck|vZJi-Hj)C}wOXmsJ+$zm`cfBF9afROd69I|3fUZID32ckI6!{RjU+>w|veN2n$Y z#|>w=oABR3QfaLE{Kx8^wlKL`{=Y$r0Jc$8!s$s8ua;ChKpS$ zQ&nQ8M|I*@o`98#BOIqpru)=;a%=VGZ>yP{`kWzs;kR!mIrgtzKJYYRN#}ZgSm%JP5n;WP*z&Pby zoT(lRb<{67Rwuz$nyc`OCXHSvUT~UnGyaynAPZp&^&09}>`<($Su4k>58G9;26{+N z|EL)+`zXq@Li0PeSDoln;sKw>2c*XrFD?JQvV&&2-={8a!-_4l1NE&x$hUB|Bt)Nh zk+jNA3o8qK73Z53zoXvtvn2tpQ|F1x_47gD{~7&%LQ%ivvLSX% z&Q>0J!{`?A=jqagUFA_j!_rZ6H$A5IXK;>?!CLK1%OU!`pwKV6Ij*m0NEbz)TM7Tm zHTi7)9RD3;KhzWYVGvdHudC;+^{bt~c!V@qm;bv4$le2f8vh(MumJb`Bm=O$&^ccB zp`dEnxyc2Z@Upj}5^aQ-bCQbiPxUXg{&WFgo?%-t6gv7=y&B*jNnj>m@1OGkiTL*s z(w+T`ynq!DA;bzGOQ^3tw^%tau#MDvLK&o$hnWC;of-g|N~Ec3d)W?} zG0;o3*=J`P>hF4#B*#P@<(%Z7iu%k}e)vhM5VBV|NzBBHL{kPRIsg@^mrn4-6Y~eoY zc{L(>C~l@%s$C@kT8aN(pLB>fiWUeFox~vOt>yl~gKwW7oZpWE=Lh+40)GB0`so5* zjU9w+0MKvTQv=|5z#ckB@PDlQe{nn`S*q@iee$kkE98~fDE>s)_slZzKUDgk$z?xEU(IfQrEkN{LdQcuuF&yUuem)`30ex4$`7s#sm zN!fglruSyQ7RQv2*F289B?0!W*{5=G>D25yRqfv*$I#TUh{4+ZtE2@$~okg@pKupM$v6f=}8v(`+mb>u}&o}=k{)hFC z1OWYPRpyV*cRU=O9~gl3rgf;j>qr3WYIocOZ{Pzv-RKVZukwB#u@{;ZOjrAfS)PC` zA{NM)uxF4sW*O%1<{(Io5b3OX`~$}QiscauKX@;L6yyDn8^mj70>}gIhij9OILI+1 zg(VO&%Qlw%fMf&M3t;xe&&?z^ny1~>WudonyJn{%rmbcb zK3_a7yGUpCv+T=Pl8MQE>iXAK`MPto4v9(QohCMgmL98|g3Y4yWe*>&e8NN?zM+x< zN2xaH0!e{0m0x_I{7suCw`unHUz8YqowWZ9t>Z4z-Ddyv2yBpR$zEFfgLM23vN2#7 z!~)OMRI_K}wu(r1&HMj6l3ty(75*1$Ut*EW3_}0o|A)N?IRL9?3--XemcW1FKWKm3 z0`>x0`|p}d0cQm5A?7nsSG-X1zaOG8%KxjSX{_CItK{lrtN7C#|MdN)r};45t9C;F zp1QX7@@1gc>1cv?1CKw*w|-|b5ZwYm|9~9-w)>F*&Je&mfc_t*>cNK#t<_28BxUQK zC4cLe$#${;Mrt0%XQizx-&Q8noLV!X=Hklwf~gv}RKspe*wvWc6>SRfe{K>DuOYz8kn_gArx_U995e{hFRWaBvI&9<-2G0^|6@3F)|Ga~`E$v?qsoCnx4)<6^I z$4~tGXn*)VNAnRk5}U@K&e{9(L1OT!Aki#4Kz6_+l7P(?hpiN31ZZ`1!udV^W^{Ux zFFfMNoV#^C9uwaO&cSDIIl%RpsUQKY{plw{3?T3?%jC^;2U{yAx05<7wNAUJ$J%gt z_uEE21i#8Q(S)J#*>igJ=Hz?je9en$X_n?-^$3{~UzF^f z4KDpz&T9J9yj%Ic{MXWiV$*D#A_w1Sb={-vp%deWqwOPRjpK=8mC~DYxSnCJpDv4Z zqB_d9QZKO;sw~|~(WTz1Asa7$z`kMx%ox60wTa84-88TGcxAwk)-mY#gN2Qr1^-mY zkoDF}SZOZIkZIRj>wj6{$mkz&mvlW@|2>7Y6^djuk2g>q(g^KKkMV$i$MLWOoDF~^ z0M9`Z7~?R5f5*S&2A>PkgWqHZQxkx9g3iR$|Fstm$H^x7sPIA5U-|z#>a2RmVqTTr znAD2D5&s{e`!Yt_-xx$LYOu3gW*XCZ3Pr!Yzuh(13S8$-FEydZy>>*Vd-yu&G^K&*$vUm^Ws(xN* zq)EU>#9t>LWHsgMDhJn0s(G+-Rk?5JkL*Kz`YUA=ys6m#dh*&`7)6?IKS65~osT#B z0P$dYQ|=>;^k|`Bbgrg~wNotlMopFfD$bwUEH6;6x3iT75|gdTbSufL_|Ck^AW@IOlL8~;cV z&}+onj~^I4df!aIKmRrN*OCAULClXV0?Q8{i`POnAQ{2ne}F9fLlyIUDe9EWO}7&( z>8|+S^XXm5?(rJo-?__p^atyD+Uh#60LYcZW4e#z0ug^?05$+|PJ8*N1ad6^^^fTP z!P<}n_zU;R?>rut>8d^4O#NFARvq6d@~!+sb@>g`o6^Ix1B#7GAC`_O*U~(Yw<`52 z3rp8zZPOFfzk5@8aK%rwUe>6G?*wJ}*Oz~GVme%1Y5ORjld~^Y!@AG+n1HOt3Cw+16~4p(c0FvX2oV1 z_Rpb>K?&I9r*UhY2_9h;=HR?*4B_n$m?3^aZVmY7xcD~AZoqKBAvzsjfukH)3id_7 zA}kH~W|)F)1YYM^xGx-;J$#m+-YDl$$auu+u^croK<2SO=gL)DvJv~B?>Uw~9svCR zcw-zJL;}$7h&zp}ZJ1|Xk%84nxX1c3{)x-9P4`g;;@9P;K3NsU*Jb->FRFIn8s&s- z6YZdSuvO7=+15>qBg#KiE~}YRb4q1U`2)@UzC>sAv10j;%cJ+c*y56CjqLXET9K?y zCUZ9zEDh`ffcvu%|8J*r8mY|1 zR|~6D|94=zty*8kK9sbKf0N&DfDj9|_mf5^L#b760pJ5@uj?~A7_Iwe&z~y* z-0jFb!1d4QfADWEU=IK`!T?zq7po%r+Gw(>bxu}h*Bgof6xChoQ%wWjMLk^3FU>A@ zsXShpDLZap@gG_XPsty1jH0iN# z`DT8C!GLsR0KP#Ya$pP8U?rec?Sn%ryFUO3$A`f*4)+`-qmGXKU_AIU!5sLv?ciu2 z$iuT|+X6oT-)08F@9>x-agM>G5ZDWNM!K0T`F&&txaZzE-odq-VfgB7r*J%^2v-RY zvBoFPfLtOXU{2ukiJOB@jX!3R5^vq6$jWtlVt`fyJVWS392$~EML=d%^vtsxyOt2$$>fg z>7u>cS_weSJ()G&zmK8Md?+_O>0f@e# zd*%2?idcJtSaSihf9L(X;*X#B|NayGcmR!h^gl-;=4bTd`SS+;+vp5ODktIj!h=y= z)!%NJdnGz&Z)*Z*CuJo}6K03y*rtA=kGvdv<@j%+>%j)-tGhK)+8^By_VMhy*Et?P zCIq_s36GHg++F_j6Lv62ckoDSP8o;r~@}v@eyzwJ`lLJw|=GT9%rWH>uoE zIkhsQ{0~KOUsb&5CskyeEC#Srd6-*CBg~UdxJ%q+iSkC4Dof-cWf3*i3dL@Q`%_(y zZUS#tJCm=-xmX zTGzM(^I*aFhn-`C`|PZ}U1`rXgy=c=FQs%Hq|>-HDZkO*{yf)+^Z~ix9pu>q01~VC zXD`qiSiL<5#yS>(_ci`4JvnPO_OZtI)xviCoFj5Iwn>mi_H=NS$N;1<_=o-D4Md(1 z5p?Wf*R@!0q`x1%mWjT2BkK@<0KJ$xDO&JX&GuN7y()=+RJJ7TpordT>FcrTBk@`K zO!1a-v1Vb-7B#=A>UX>1FZ#sy%Gr5OU4aiy-cx?qJZbM!r0H3uV}<-hn%p%{3;-S6 zOGrFLb*bBH645#8PWN8)TT~;T^M-K}f2zp9iBV_G`npY#t4Y#{?S!H*6A;|)s*TKl z>WT3y_L1FB&y40d{-?^@b#t_t>XWvT^)ggwyE8pH**N}HXD~wh!vE{&2zV0E-eA}L zz<7owu!B%<+~fWKpYU(XpP$$feA01A&W{d2oMU~RrSX4A;TiQa+%6fZyh*&0UDPA_ z?@3=}B^)HA4wrTxBaG7pw5NQTEp#u*ufD~nWXH>+@@#sLm_Pd08EEcOLByJPHP}LD8KLlCv<_Ko$OW=k zoZ0S(pFIG(<(6r%MLCM2{>Tt8V=P#ja6J1391pN21~JCG5obOCn!vmf39gJCqzPIR zzEA%xYVXmO)o#Od9;P1$7{ab5qXA6e58%_bGmKpL0oFm_;(i>E%y%2{mOGY9w*0Nb z9XSC1+#|~s+b_c8CC>W$!0r%Gj&8}gPhMWU69-Z@E;g}c)awz zv#-nx+`Z6n!1Z# zrWsSWsZZTS$~7D!&*2BEIXYJR49;~w9d*q6gNGgbw-)Z*?XI&lW)tD1tG;VS;fcci zQLW_QbO%-13>VwJHJu~>#rKLLjMVqT(PX~kRlD)L za;yHX{OQI%lXucQ?jvL+(m5B)A6>bj)}QNE(f`K2WA^Cf?Q;B6SFliQ{C z2lCi)0DjleCjz=z<-v~tpFl?NP2f17Ay~uw2LEQp<^!P6_+;;3C&2vaFv?s3;^#$m z;^QB$P*sEd?CAr<*5C+u)_ip1ly8T7hu9yU0;~bY4b053`UC2XaO44J4)Wm?&KLyU zfmv{tK2t|cv4eP@J-|J8BlrTmZ}4&itHKt6tpFke&ONFvN$cth^gj~771+Cq1-SDP z76AUi&SHHZsHXcjWeq;AULudEN^m3PgSN?vrRC+1Du>AXf0Sm(-cTHx9iomOuj#!v zWhb7OBuPhg^Zrnor_;4E>CHP?y8jrl{_)c14Yj0BJ`meG^j?B4-@o)Vfbbsjo@46x*+xfuG2@IHD_jm9T2LGS&&za)?$3h_j zK$N17J6ahuWblt!5jZZ zg#Bo?34&b!z5`pfHplN4aN~D_HO_DI0JCWJM?+fc(_=i$7>V*;d~q%TU;#>&(&pZr z_O4MS=(94TuvNe}gJ`mHiG>=yMk9}Hm7v8rGtScTian4`!RKeWU|$B@p8Hxych2(8 z{D3Plr{Jgg7IFdBz#Zr4mMusD`)A=VTj~zO{Hd@4{mpX*z~6ws3_bw*3$;+3kgcC; zh;~s2$L8uHusB;L|Nb}0tLc8lP0B}9_N_U(rc|?D<=RqHvHyQr^7x>1_(L+Pg<6(L_OEBOxbf+e}1 zU~tY9$kz#46>O3J0}H4po!>#&q8Cm_u>ovta&4#S7%xX{)rV>))!B{^{;ya6uWzD{ z#Xd&qJ6ntYW1V9~SXaaT@%EVmgt}no1KAs}F7B(3`HXD_X=wj`o`HKPpWWzys`ga{iA!fJh89BplzKKx7FzLOfMYuHh8_e< zpn{c7zMgeEuY#|@{DW2mA=aGuEn)Wb-%mAz275n~7b_C}*^;%-2eFK|oZ}hu0f55-}uyurfy0A8v?%zvs-R6=2iZ zNmU+;vfs6OKhJuWo+y7_IjUx4&AF9>%6}HG&MwpSzO0q?xN?79R}Rk~%G{Z#-c~0| z?+@1cqetgxA#=J`INd<#!_`o~sZN=#`2IPH*D!otV|Ng>#BWc>k`SYooc=t}!OPMyiDARtF`2UsZkYsiAp71|f(q}I*1?F*8 zy@_}N;qc%eD*#?^^y3Hk*UH~2`a=#dK0mC8TKdoV)zN>t0igfEe=~8I;ll0R>Us2W z+)iFe@_&0Mx9ZnqZd^Y)Lb}|!{Y>~`z8CZTI_4a}brYQ>2m9-eOqLIIhVYM^pyC1a zlN}VYemyk^KOz6!4YikIq`h^IUnv|Owb9h>qjUT}FTMU#vah?Za9SP;)sZ_fqE;o|)-tDnqUvH}-rX2HwK8ycWBg7(Me#bbt52{&imfoNF% zPQoscJ0t*%z|U>d8~4^X0sp}R&8NXXs}`xjBeM#41h3k!$Uf*(97 zKVoFO3NCFSbEZ7QZ%O|gYkj&LB>>S5@MrvUEc1?F zRe&~Yd(OjB$yjC&`}KJTd|F%Ex&h}%NwSg6cg**F-IfB@?MOD~3-WpULy!+}3+x4C zDBol@#W%rGuwJ&---tM06XDzQ*2oIL3$weJK?~uY8EpK=Ht3ozOS@)eWqTf1Y*GAH zIp41rzbWmay0HUm)~|`B{X1xe)IjO7$7Lx#DhuEx`IyQ69jV^-#|g>QIfPwIDiOaD>-K3+O-q}G3kTy+;xn`kdIbshb;)+e*ZIksq4I^;4Bqpglb z{2y=mG|deCIvSb$MfEAe6us=8ou77Br`&p;(r1A)p#NpcIF>3KjYr9!2h@R zA31>j$7jHq*^gieU{+xUP+zjHtFCF9yqSxlx8v5rKlT5;HMKEG7pp>giKJ4{*!Jhc z06I(aGck#p>27(PV;|kSDY}F11!xXn34r$JllB2P`_GdCJt?%8qK_{L|Lx=7Re`ip z+W#4GfG?9S=|}0q;{R`!J}uu}c}MdbzA3(@{J%?70dQr!t2~6eWZ$ZnXQ6nNWY%x; z2Op%YvF2jz^q&F$A@B#Waxj&8-*oy%E zy}HBmu-csw6s%xN1~`DVznL|B0PNwhhhN*u26y=DkzI7%MC+sd!97?<>$3%mAk(Y- z<9%Ka5@3`3n0%AtA&zM&!I>i6oEc#Lk7VG!;9Cj!2GN!oSOIXN zU_Y1_SVqDQxOcuk+(#rLM|1WdjKb9do9R_@eP99fU~48x;BHGsKYAbJV<9w_G&oG1 zKHk>c_?7A=cA{pt%_|Mnyr0c#y4GA(*{A%bSi!kk2d^pacef^@hJ7S zJwdqcuk}k``k}f0nku{!%cnmEz47UDO>H1kESX=2J@5Het@ZxyLOYhUaf*gT_uI49 zNb;e(EL`|S3++ohkXZoJWKH}T9hh9MN}K&OIjNhx*{zaQ>SJ=Kfm*G=As<01Nof-2cDfV-mH!X?Kdl^qhROmzH#@g@dFih5S(OJX_mpoeo|V>4ma4P&wu|1en`)?Y<^z&IX3 zM+7qAA7+58aIYQP0G5Je*`xotCt%(zoS)Xa_yz<1{jT4!<&HkLHfL|YW(&X)!dGSu zzpJj?ca(dIq(sxhx6B-P53Xg;DW7K_-%sW#+B3P0-pA5!q`xLurvnRp7qI(VX=|z9 zbY=qo&C)UI=6+K)r}#{9g|faYrQ4J*HbMB`rlxb{!BUIjZ>lT!L6-lWsula2*40YI zj9%6JnCbHWpR5(zPpIyo^-LbhO!3#DTGLH)eO>L5+d>F#A$x%SpnK>17xdT7kp-I2 zrS|;=34mU8k4$Q2o9lSY0q&)5o1vM-rFfny?ORFvPZs`9N_S5l(iF1UYw_PO_bAW- z%(@%v-TlC9?YjanWd8hT?r*@qBL<+~encK2O|1XHzcYZ^3yISUw`%_HlW{%y|Aq?x zeWhM@O0S9sYc2_X{jtI`-94%6>8ZPgG;FUc@{GT3IfLq-GbLEmRNYG$02#p}a{l1# z0PKNLdQL~N(Xs&O5D5NfN&g?2`~Qv=N29`WmHaeYrn1m;y1%pD-68ud+fkn1uF3*mq-eojYgdc&@!*rrg+q(6{#a?|_@J5pb#kPlo5C8z zFA&hpIrE)zvezcONMUVv$dv zlFj_U@{6nD74sBi0M}*wqtT6Fbbq+Z+)r0ZR__*k3l3oX*UFD*Pb~KqMgRw*KLT7I z2@rCC9Q6x%!2$nx30kP5$35wSY+&*6;seF2i$50sS~|UaSY@l4Un*aedz2o^Zq%{9 zR>!{ERk!yyt*aHuLCXJWtloh?%KyK=7@V_o2X zFRgnj1^Q?YW_8%BX4@Le8c6`wJR!V^5CS5ICpOd3sFF3+N9A!pm0qCU5Kk(H;#KwX9HtJwt)&~9OKX6CTi@p2 zXd=g^tcTG2uI4kYoz-jHdu{R1$S(h_}D5qN#^+TxPplf@HD z3(H4WcB=WHazpv^;!O4XtgY^lPidCN&9VVj>Hop%7SkhMrs?75Yh5zahMso4^mw}T z)*#`bl{WXerYkshE`DzM_|mnai{5RJ<1^&gfYjjqqx1L9(ydMOiM=IF1`8p~%WAK0 zpcd|6#SwOhPfqU8^r=b8VC)0dJ)90I-kaX9+Uwtvdz9(>cD7PXJqezSLRPQWs(GmOzvKMi+;V_b3Z{*8`}~3gVC8~;xB*gxjWu1h zcSDrSUa!FPtu?`O@V^^(#yspF1_1War`W)L%`zZV&y(wK{CmQ<5zX~+WcM-Q(fT?6 z_Y7k9-oOiBPl$V+kOOSp9&8ijQ?Lu{g>&`*ud@$w0FBQTu^(1|83Jc)8y`8y#@*l! z`#E50vG% zgZ#utX`;YE#jA=FN|VGEx2<`qGPAs_*g`!&c1pk0in>ufeEz0Y^*42k`dJ;~?$Pw{ zYo*tEX%*wg?xD3kNvpKK*7jc7kO|-Ti5}HE`wCl4bN^q}^9OFt+|4eC z1tJ5S`~RTYZ>#`p06KXy&jYDIPj9XprVr02GkA24f2IiFNkA?TA#@Kg zdJPvrz}czGkps zKQLXmM!*M%M0>95Gc(?;WBtC7j(n=39jQTGpwW*^FtUkXIK$7qbI6mm^`J6Xw#phYI|G~ele)e;$!jg>Z;xqOLTEB<8 z!(HTVIj4%dW!_}z3(hTP&C2XmtfRjMeg)(V76lv)9{`(K06)?C=zhlsm^d~>E8v&( z=4{{M;^HCV03%DI%2U-h{+deb@|a?h4cB>pD&OB#>fdpX4+RSM9Ws~0Ps~$dX?Tk zta4^%wbC=Xi}V-QEvPf?70JWG|FrA~)d0;(3(2Lz|DnPPzQSr9AxE;cZZ9CY1;`z$ zd-+!6z`tXD-RJK7^RM{FSK-_r&jj34*FRL+{d#pJxi~JQzo+p39_p^rGkr@{5;y3K znefGouW{1rLv$5AbWLsZd(=_a1`iUTCN8?JMG8>aPm^?-LJrJ=sOIo>$1=T_pbBs{UbpQ42`@1wELJe|!5vOpv)O)Cjj#{BM}7 zzfaPoni_XX@eJ|*xuvPn7GGB8SN_zrpLdiCR-^jBTU9S|nLGdwDF$$QQad>#{xIqx z&OKl2ll6>kPM!-DIApic=`0`u@ z;CR5gc>mAG$P330U=NN>F!_@ypwukX7vJcj^PF0^x-d|a)qY5R5&nlrDs7exPQQpx zP;WExqL}bW-UIj#@qc=zG0&6x1pkL8VFC1%l%wkz_P#p;?I+1b1Qi)DNp^%S3A}%N zifIC;7q-$2_silgny2unbpJh)*w4rVaC~}v_Iq)0d01t0)p1>^KJlk1({D5N^|~(G zExT4-q1$O4STmp%8fn$B@~wx#Ali6cdmY`6{(-9+>#RdobI1aKAE5o&=m3Bxij{1+ z;8n}#u~*SuNC40RYCwM#F_s0^Y2e>HKlssL1H5W4CFctMgU1fJV7~zQan9=_ZwKwp zxtr5C=C+eQi{{!8 zV;1et+~>N9Qhtgqz9K;;juug-P%CQl3hGlc(6*~s(*;p}gE2mH5Li+|8+ z&CMg%0{PqcZs!2~&$&NA5?Ep&1)Tkd&mZKoQMIs#bLS^J3;s|4fYDewJ|Dg}K=lO=2Ui49e&*S$9xqn0exwCWzouKb= zmf%Fm2J`>UVhvrDef?wM7JYwX^;mjDe28d zeFgRl1l!+tgF9^7KQJRYDY2^Y%QKbPcy18i2;}a!2A6- zb_9^Tpw{yEc2x%O#Pl!f8aPKDz)Onn$XEPa>2^(ye5$fjWtp-??~vU2NGs{ea&N77O}>`? zAF93tTdQAEDY;A&Qs#@993~DhRTv(wJJe72hKb%Ca?2kHfPGZm>;ZJ-pPm4C{qY5i z)3?mhk>={>M7{0~AU$+fJL}kQ7tT}%fNfRTzf#`+2h^keVNF<^Dg1v^oK$Wk{QtA` ztU5x!msOPUb5@opZ)&900J;Fb5D{S>fqzyg7({Q`P7iiHtJBs$+J{vL8!&ryhu=E+ z>+bx6y$}AWItBUmYNPkz3hUzE*s-qUTUpBi|JJ9*IamUjMiSaJNCMusHGn<96>v0I zfg^X$WHesQUeLf?5BT3fpCw^b57+qwe(++8xU?1Qmyz(??0GCHvn19TJ+ z27q)Y+6Vs0{NGF5zq7KvhG>@4mFb#vX10xN|D-g$6qQ$(uhG^O%GnG%DcJJaZI`xpjAzGn>Nx(SOr9mLr_{fPm0c;NpMS>Ol7 zuOuI*gT(*)W!tG^!q&;{%1by-_h*4vz%*%a_&;4hu=XAQL*u)XKmJX!Bj};*e1G}^ zIOiXq-*|Zt4%3n53;&b!+&zHkD9~B5_i@D^d&H3{03X-i2oK=OzCUEQGe(yDMKm~%$KKiNM)J6TiXZE{o}UTUpw{}ejDj@}E5 zpOuMDVt-2ruU3DCRU3R-tY{F3-Uq4ZW82MU0Dhf!cn+G;y4J47VPNS<1KtPc_Rx7x zW6^m`_5*l!fF&3ihWG%2EFf!${8?iB0l}c&i~>nO#UG#HUA{9!NBAD+OJjLssUxGX zRghzWom&n#R>0Z%nyu}@J$Kd{`rffU?0sJ2-h+Q6fTgVOv+r^E>#zskg7n))pF-}! z0Lb!jE+AEZt@Jl>{a>bTcZYtL;U67rg zM(Hy`{6*^d4gOas5_p>`$DdIJz=cs=)d1bA`Jqd-#uw!H>n&}~bUb?XVbfx@gMWP9 z?Sx~dW;#C?84!Gc*8c(j#Q*93!`yGO3tGw+Xe0g43{bjV*No>9$MpHe{|)}>1BCv!^>2Fu51@1Z8;GYgUyJ{X zG=+2j__5?4>b(#CYh{P0yC;un#_}1uJM>1FAq1oUi2!!d{lV4;{q~Q-`swrm=b`4; zeg5$MJN}RUpRpGIGZj(vln~EE=`Lw-XJMG8H@+VqF8lv^#c3WE3;01*($lj?igncg zqkZMV@)@Oji(@q#;%70G8x;9%qxE3+kL8a9!2YMUB*c|im5wH(hpa7)Wwej=kTnwV zYU4X-F;=JdHDmC*<_q>`fgGdWF$UYjX3St5loH^vR}!??CA@uwV5fafD!s(KvR59_ua_h_ z;Qf%E-I|O{UW;1@|GPyW6`oW-u8ZY=S}4nOxK?&^A-s`(G7p56%}gMA__WJ)Ka~NY z(+}L-5&(pSY&{rvEph8+!Ux^|h!%YvabN)iEC0X!=G^cg5Ie9(0UH4PgMMlpu>YrM3RnGT zV0>4i4Et;!RRGjgUQ(;%MO8_ksS2pYs!lpsTALmqO!Y%D;`cN24_*H0>qCz(Hliiu z`@;T-0wM>fv79eSf-ixr!u|Cw9+EzK|Jp*!=-23eb@0AN_+ORd|C?lNx_5R~@rTmS z@&JBP{-sp6bdM&+u3sFIU9E1>Oz1{8I3~neX)Fu}-GkR3?Gt#tH9q*Y#xcVL^_B#z zQm;#U`gjgQwH3g7;a&UvS*^y9aRLLV@_~RWdj&z0eQaT0R=eeaj{>@|0gxEpCs+~Y z1>o5l+4(XdmJSQyEc|_zD%3tYL&*9c#*SRca?-!`}U z`^xJ-Lfyd+l<)7B^nF#*T#$7uexyz@50(xq_pIDp=~>yhe0*{DY?yNYR%&j~#j^h| zPOeo{=@H?7e6m`T!p~8^;4d`m>j~BPo+*w??jM!<)c!RS{(B1fWc#z;I|==C@!MUv zL4Q_#bLQgKvgGNodG=RZA%yvtvjX>%2ztMc zRxSJTX=Dc60103#)!YEvz}gnf8F#FCzZOu7X0dvCerBoac!Pbf<_G2}j)*vd;9elj@?5`mIqM&o zj#Z`CVd(YyEZn0`9}C1!`w8V#{_G(gOb;Mt*3rqnyPlB~OrI~b zK1d?p2UIbm)6sZqe&+$zlN@O+9f^MICSMu(#rxzs@Epw+x=eXCKS{Gq&t_`MNt_-R z_l=eb9fS0V=K6N}2!;w^zAwc6K|kMYuilRTOZ;1ERO6G?3?M2TTI&3U>ATMm{`QKm zOkPw??Z_Per>8xVf8?{xPLTeepGN@k+mQhP^0D{n;LV2B?gAq4cmdq=%e_Cw zO7G9kJ%Gd%i6@TM`%D5EA_?3Lp*)1+zr@v~m%Bkg7 zO9M);78?|&WRIsaWdV@&i%p0fK&057dN5+2lo5?SVkJ5vjlQZQBzu-8o;}v5S-*9c z8FpX_e9kKvPg}q`xMkJb6NtnyYQeN4j+PNsJqwDAHumHk*#k+%XY7wNx3=E(@xoDI z#n%79>&6w4>*NU{$PgdPzH~fkY-AHSk{IyMem-B2jr8FAeQunQ&xPkmElVcOn{!4w zSS}dvcp!=T`zn3p;A!CsEj>Xycb2;s?yxz6k77w?ndum%WfaVfzbIaS=92c^DE%+@?+)Rm421W%A-p^D>J-#`k^BJ*J*ON z@qfR3OOL5{?9ZAGza-jJUHpDjJ)jv&+H!J*n{=6n>08%{BVC` z5p9f54MZCMA=lPAwyvZF{r`-AGGqG4`e#b!#juits{Nx$M z|As5NwtIGVIw<)#`cllm{QnT??8(yN)a_X7qxX$}Jb&)Wef}nNeTK1Mr|Y+x?Q$Pba&n!_#lsz|w+p%SzYE!{wdI zCzjR}+Z5-k)5p?uvTVSPvI<-1?~Lvz-b9VQwGVpP>kn*O`$Q zIa<&6g=o61X3G-u3XTu%Tu;Ms?f-Y~f%idjfi|COU>|{t82`Zv;5XdF*1ly`xI&ma zcMxkoY(_ZR+;S@TE4Z(YoK!sqfjQYyv(Er4C@_)07GPsdCF}c3^Uqhl?JNWY zdTY8;zW>JR0Gz7&?~u~(rMczb%UzW!-CVWe*U3k;WBRsM(lx^WMalpo{`Zos%O%MV z^8d|?Hc$=FFNH6ZeR{rDv#nk3jJ8)Xkc(}eb4Wz1mHF7 z?K;|`3}tHEMzshN^=)(tWr8p`g{Ax3 zc zivKTBufwB+TI_amfQbQud-OjWUVma8U!32=~N35Vrb1qbCe zz?hr^Oi^d0ZqYxZN8%Ck(5{pWxJxWx^K?b}RJL`gS9#k?@5<-pA>}(t8<%>i3vi~s zsmG^N4eE!uv!5?eiF)z>dvv#itV3+HCWZ=@pw z;77ir++og;zX~x|vnQ^`pX2_AsHv}=Z}8u%zW7}aS^P%|`}d`fYkM%gTaR9l@4sty zdDgfnyqCI^SC;pzw5{A*exNk3xVPp-7t5l@Lq zngQ^$^#4QBaR+J5b`Z*mi&MKx=T3U}Fuw!tk6l1to}iJzx#MbJ5((h{Sm$^Ez(0Kj z=q^B}3>|VN2tQY;&Sq7-yUu%W@sofWPt0BhOB%C&GXVP=$O2dw z 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 literal 0 HcmV?d00001

    fQ4PdHCS# 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

    pI>*vXP6O5xir6w@X`G0`jevP&xwYAVDNrI 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 z%0AgOJ4DU?t^JDtH-EO~H8Tu5OQuu%yNORpG>SZ1k6XLpb>=ezy5z3mSPL|*pV3?kAqLS2#Y?6 z*OLA>Vt=u3@1wtk7Cl8=eye>zyK4$-n_@~}C*E%i7m>alV0s6q3mcz>&6*0|aC1!# zE_qR|3sL2A`uz99%iPN>%7;<>{$3b?%H@~h4ou}6j<&5XxIUiTenq7l^ZZ+)VY?q+ z{~*fWHL3j7R9|MY_p!{w>0epB@;uSP=B%CbCR2T;)8W39H9NK;pLM23;78uSR4lB- zW)a0pj>lqD^=_5_(d*X;3t&VpmnXk3{$qltxj`*+XME5e95=~g3w?7#-qVq1>T|TP z0NRzhJWdk;eRo9r(RmblLoGnq9BqRUhxS7I5M725z4$w70gNl^VHG-H0VY$qzZDBG zih0P75(D&QTHqy23|?0Lj!a-2%HZROp8kfF{DhpTF;xL;rtR6*;aQB z=oze}umT>SN9iG^p0_W44GXY@9_-@^Q_%yzlK%@Tt(yGhxe2*%IfsXH{aFKaB{0|G zvwq~u zkL=PGc&Zy&|8F)|Szy|1zSaVW@~Gye=pe=W@iXH4z<#m^VGDfSXX18HhJRNYn+DRg zL@EGcg00whYxgg)0A|wW+WK1=5p$?m&&SRw6?=2DTxwT3cldmmSu{vPX5REysxiPIjWf`@K zE_Gk77~U?!zx<%Tv+FkK`(w2TYd$hWezUF%vn}WERdWARnen#;Q-10)d-iO&=0$9e z7CtL<;A(!QIH7bK(>;$Yzg6xJr+*_|Ee-JfZOHQ z9w5E45xlW{;NMxFD)yWf(umJ<{zpS>LF5|d0TBhrFs8^t?w~bClH-fWKe&IRim*3Y znuLCNz*Gf@nFLxYyA3;G0X8OI(gJLd=>dK#tp^i$9BUaaDX%DZh3DUu`6oxy2l*Tw zLZ73Xd=ZtzGAwFiW&{o9TYZl#Ve?9(%1cB~o5Gu%#+spbu|7#dSb%5A$}U5fF^bt> zkK~Waua|$GsQ|56EBMbu0IuO-4ZtZtG1D(%W3OJhpaHxx77H;g%m3%&p}b=ELA^JF z$iejk%<9cDo&6>LyW>wne`Y2c7C;TKbvuu_1^NHY8UADbx6gZRB@9P>FYG})7hXP) z9dSUd=T8xTpgvgu_ZkAy7J!OV$yYmN%$vVs#Qq)mo&Qz%54)+aPuz)!-xADkopGo; zp-0{$L%xyJzIf9E*$&|60sM5H$6@?GoK+leVVdUOu(aJ*atT&2#q)X~auyb3E>_tH zeNM)6+{m=&Ied>XXT^P^lQ+%n@w-vKWk%;Zqt0^o3}^vj@`EeCJJ(;FJ1y2ZPSf~| zi9CvPHH_=!5T-Y-M()2b*N!<;Z=v@;lr`xeB=&z8=D$j}+r7-ayO@gBe5zSZDqEpf zd6s&AOJe;TYhGQC2H<8mt>1Bi9}*Xw1~WL2koakQ|5o(0e8o!LyRzctb4&@}n#jL1 z7zyM=#$N{S6tlT4Wj4T@GN=y~a43PJ>ZWohaBglc5(EEHBNY8&xFcITFkByuo9{OU zkzGKrQ-s97=r>-suTOTNX?Dy|0R{f;HZqe4ULo*r)?bVN$Narres|fN?PW$1?-oL~YF-!1J=r^H39d6FwGXFAXwg>z8@uE!byH<1IB@>esXHJ7^^ zzp))>R2Cpz3(f&n9TKykWB~2waTcJfPi)Cmw?}rp?!nbJ3H&=bP~EBgQea%hO4LWS zEAA!yn^nw&k-sgQ|2c>&Eg1bkb$I?-dl0x!w}I{O?ZE*=d=T+KE%JTM3ZVEumdPh4 zXZQ~$Ob#sKfAMb=(B}Vn1Q3jg8I#<+^ZIrovUe?o`TXBCv!LRBA7XvChyY|&_U5_0 zd1lYdJ{$vg`52XwgFvm*0Gbim%i(wCJKG3bGC#|~#$o|xVdriJm1-)6g5_Xc%(?8~ z4JB9f?FPdrwq+eA5ZOBc+Es%?@vHauJ=T4k|1y=o!BxkM0Mt~DBOm!|&HFV&P?LU@ z+nB0SnX3P}DE=O%+Vmt7KKs(`lVjf1=cQ@oYgzYdG_mUg)UWEJ@2O9=x`~bgJ)k;`si_ap8`uub%I(nvZ_0d>gZbNH zz0iL!g?Ub)P2pAMg7jrF*ipH@xsPDS4$bNSs(@k+pmQJfjN(MqjtW2(05iGDtQS~! zJ^&AO2-n&c*ap`QZx4!$G@TphJn&e3GI(fn09h+Fz%qcnup<}2|DOvooGKRRUe))9 zt|xi^v`4ZOsqz;X_nJ(ZK*SI}j)@`S|CpM~YEHs~txF^#{~!2?8TaPI_RIgj<^VP( z3YW**if_uCUc~Rgwk!9w1G|B5albou!5)4)dADa@^%YL_naejbi*IQ+dL$OJlGbsY zndYnD-wDf;*>67Ynu+Ch)r}+Iip7O&chcGRR)+q$m9DIH`!wtL*wJ27 zUQ7f$wDc9~xcTJ$-SDi<@R4hPaJOUwi~!^S%%$b*%*|c7E0jIan{H6nI1W*fYaRYq#uwqux}_h{#a2YYJc9wY>>deHYcVN z#7ZLe21N!C`Ha?U4Wf=7!~pv;C*iA%2Y8UF;f=6|8`I@?8uPzjLqD}1vDDFY3I7>3 z^$@Bh*V7r;6&`SVs;C{vq)w)0@MZZfbW>q``TS;`0At)2 zoucli=GVGkO>P#edsJC(_Nx4^`Dx_-_cG(_Sybmg6$VoE|GjuH6K=Lc?cadueix9Z zu7QSqZDRkoiCiy71Ni^3_8xF^Rpt8jJM{$=R5}C*AqkL>N=WYwl0XUxA#?~eRFNW} zG!f}2Md>IANKrxQy<l@3we=_ZbRR-|O#ce|*6=E}y@LN1_-}%JX~KJ# za^+s&)()QW(#xa6_2chf7XOj_J3avW1jPHVmfr)OY5sp|d6{9L&aW*ma(;4uLu-=v zEC1IX82R7p+FPXK`!^rZ3?+R4<|`*R(6M({8cd5<@2eK@VR{GrzB!f}0XI=K{JqpV zo!;JyxWJq6qjXairA;OB9OuR~OJ~l}^FCRPz5h&=YOY z!FoJ;^7sz2r6tksi?*K_0nr|eyT9PyD`c;0*KJHC|6dNr3jdD;p#CiWtz2$2tT{>l zNeN(2c>ca1-}+ou=nCfL>sDR2p1Rdn5_`QR&oVK!@?|$Ot&FiB&r{tTnsEi)3oqpP z_pa=J;@{W-^?&33cIIk!aoU_aUe)zX*Nf2AgE@19>NxFw+8>RC)SmD4t>_}UeMV+# zYTeg^Ywb5T@o(<8$BbociSn{n%;vn`AIa@yDtupp>_3q@U(ZzB|4aCop1|w>Tk8Dm zL#OQtty^0gk+b{j_9Wt1ze^PRP<;G-u=GDeUi-P-AA?U_$-B=X&#uz_7j<{kE-Ztxr^-!;So45Z50^;Al2^JHdFCFE?fA?zVK42&NP z_dkKBco}-s57DF6ARcfCUV*2f3w^tvs&XbLQ61=1;->Gc`h~85FYp)WXrE~;YOKrdBCrdRlH&;br-9q9wqn`ahzGC;HdS}}7gkiQ2sVn^1%W~?adz3$FAC!k#) z%Q~OUS@KgWQ&=m`ULRtuM7qoW*Jjn4MWO|IF*3)^*#EZUO2KS&fKUSS4wHNA-h%U@ z-TPW-LZJ%Mq#P$T$ot@b5wi2=kOAg0Bk7U+zgPfD=Yrl~P2}O$E z5!8!$5pN!qvD4<#TTLO7dFJbglT|+!*aG-8d3|8K1)CISKE&DA5+C8_}`3CIkM60pUf}4 zkh>V^p~i7$*LS)$pu_yLwE^`H*YBz?kM4f~*5${jJM*(fjhMen$!k5f^+szuxX}B_ z~`BMt1*2c>9Oa)#5L$?@}3fHk~`~BR6Ia z@v-Z{LG}2H%uc*-1sD(`X2iZaxqLa9I7;MhTIa;Set$oS_Gkl%3>3R=;=hyot1huJ zXV@LMN5%g`Tci|T!>wfhBmziklL#Osek~3q-Y2rY=ok0$eP2_tpi~D@{tpGvzhLFD z-qZ}84F$NO`SWIP>ZM&p|FAcymOP7^i5KGy_$_fk!}0a)ixhB5_k~0T-9@F4ce*#m z3owu;{0PwkD|COIjDS7cYmybXb?cSp1w>-^CK~8vex>UhA8Cwf{JMTweLfvRZmsQ2 zB*5c%$o61uTD2olfQd}g7dVuC;$Izg2Uf1$J!|M}$%;D^f71y_0`?ah48pAQCH}4S zt?xNesEGrJ{;zdlB*+l|pJH9P9_8CXcR{Y`Pwjz%^vL~@@(WE!lt9*TjoC^(4~5aZnh2`pNZi zjvH5!mysFTS`)|P^9_A9y4Mcy+I&3HnqGE#HH&)!*Y+;fdf5R>(H->m+NE|!ZRPqN zME(4+KE81r@ug<^KS{)Y4>DT5-<*Z+zX=lP3+<7_uRcfC+61yzrm#Afhd+IuJ|25f z>+U1)uo+mZA83CJU3Cp?{@To38hI@8kq@K^$_jcHil=Y+ivNrMb-|GzteA;F*9dH{O5E_Q&UiKTdk z?4VxsOOgWEJ;+)?x8o7)P3?qn$NGrrqr+Z&zO>atUYT`#`k9ijC{-5n^qYbi7sLP?=!h-@&6b6ivY3TiTDx8i3is1 z7nFFE?{ZcsK%oQqF0?`XpN#bUQO0Wj!Nl5&f8!g}a$NJ;F8)*am(R=T6IDGOBt@22 z120^?$lsxSk$ejJ%WJ{^bZmr|)4}Kz@K+=lJ%EGxrR?OS-N61V_TAnGS>dZhI~~I} zW?xI|68EQ9-?;8n^z}DV_O}X>QN4-Su=cC=-l6O_<5Q}l4l)VqZ?&lH_^mHP_Mce0 z7_a{fdd$64@88&mi2r*l-T&Ff-y7rUzqMTJ_}1@QJ5tYPMKskfqn&Psg?c7YzGnD* z2fn|A+?MT;VaF4*`aO8s-q^VQhR5q1*7~Zg$H<6T1P?U-M)bcAE-aT+{tx=azgGJ0 zidU!Rj~G<~7tOwl)i0=37FRyk2JdUZa6I%{?>@lQeJugn$n2(DXUICTU?y6Ert z61%oW$Q^trJ8Oar;D zRT-4Z^P3nC_(43KXF|#6K)aJqtj9wdpfyLTmq-BZ0ZJl9d=27SQhF_+rQYW>&~I-D zBmYzDbz4@)XUM(I_T^_(BU3eHYz7S-fJ`il0&#v;MRuCZcc! zP`WPnx0`_6JNPejMH&-Y5afG@=mtHi@doo5d8&=;LzJ(}@tuvYW&$UNQLRR*W(Gs4 zHLw=4Mqey}(}{ch6updBq`v3Jk*WSjr}RDX?LSCF)nD7Ikt02$drN8n%pq?2VWKN~ z5?ei+T&jM{eGluv1S*6*jOU=k7BF6jDF0c8gF2|-3}e##@f!c zdhHgh`P;H`jq|h;py+oS#Co*Ltg$QGvns3@Hi?xf7n#61*$r)Xch<_trAJ%kBX#~t z?4MHWI`CRO30j(maGx{KX~n<(zi{<}?BKg2??*~4+&vhP^OqQbV*e}j!S4#C7!Q3q zojijhn3pkeS^$imPX>Vaj|5;7qh(>?Z!HqU&UU)AHqhrHP6600Li?F&XZ_F@h_FMMw4~l zmHhib4-*aPa~Z_dW zOqI_WRJdLd-T(F0BKlgaOU>>tQo*tpynhk+A4#0*i)8nogtvcY_lDH1co-_NBRxEq zr-J2Wt?j8^^Br>6cdw%Tti_!wnj+M^Ir(#Be`RG6B|7D{VqK4X;_v0|9Zs)3&PV|L zZ^ia!yr22NsoG!UidrRA$c454^#%VTI;PKm+C;dDEq5cfm5ET;FSIAOzfUYxt91qT)b8dBNB|FE12~131Dw{iX1ulA>sel0-3~G*bz=7{*4vXVyqr%=a>2HHwtxB zMKK0)?hsZ{FIH(XP!j`S<+ji_#X|& zkG)f!$C_*McJn%w_U+dz{+0GNto>|7vNETgcbDymcLQWk2inO+_Cj7B3I8LT4g(YQ%{iV-y4~9E*60Gmirx< zte3*8b|%ih(fw^={dPt^eW&#_S$<2XUiSoXL%ZOsGV@LjntcA?Uz@-Gl$4V>Q|kRi zpO5E1dAae(#nudC8M0hmuN_4-6r-UJ00-Th0b#oF!b zTbt7v{Zw)d-&tB2?6Xt{oGk^99@tTu3wNA3);jA|DQ%K9$m@9!M~j?v~Hx^ksiR{f31I; z0>oxlW>b(~W)XA;^BJx0MWf%8{h5K3F0g2KgYx@f(3*S$)Z)ilQfR;i%1KI_p0Ff<1R}xLI67)y=pBceQ4Y3t^ZDs!w*W-N> zPpk~m>Hi_dGiIrZ{z~H$f_!BIWfA)fMgEUX!&pXrnZ_`w%anUa0VbmleFT5tbIqQu zUCD|1L2CtMrqF61i}sMES`v({brMOt?4ceZ>g zD2ny5BjbBq!AdBC`14BgxW(}QPh+DPUCAR_0OWqY#Rn)&~(7ton_=g=?z z=AGy+7%%fEd&Ga)mYuV+@Vrqxt>dujUCAtlR}zdBl8e8#lRQh?M z-jlwbpCsG&E@a7XQ{#74V*c)F4r*QA`T%)rcd;f9CbI7jpno}PS8aq`x&jq_@5T0i z0^EOa_n)y2o{H?hF&X~Xw+?P?(t3dm`2ASxR^5>6YDo)5#7VJ{%m0^ycN&3TEP2uN ziytpsKiKq2u?{8&FWG-e0A>UlAt-*O0CH-5|Hc+516cpRKmUs)k*i12Ph_z?-?K|R zPpbPUvB>93mQslu*8V3Y%30E#NH^YD%A;(f$3sov0=szAFVgxmt1w~vfIyjTI08Rgs70J9o}{KiPI z5v-Q@&&(H%1zDR~IIH+i_PJIlz5na-jS;2F4MUJ5F6_Dosn+~|@eodDy*^ichaPnB z5FCYHhGQ1oFMCYUxXY{fKZ6{ngSl_?|KQ(Q$^TR3-g)Q&T=U=L|B*}LoeV!Om=C_Q zFO(}Y4lO9?_sq=y-IC38#{YS=@Av@qr1Y&&uKceCU}TQZ(JUULw$;I`$sGCLOho%R zngt+5N#|Z`AbK~eKBa?OU(S>BEAOit%&e%r8A4l;k#I}binYV=`cJQ4gQ0A8;}fi( z+sXES7>iODUjNJR`kzY9%5He5-fYjqEB!h#e=CCjmC*ZJ#Qoh%&fjP7{Y~p`VVV9k zR{zoMZle7@K~KC_sE55j_O4ATJX*ywn@AGh0DPv3p;~#@Obp-sJz-0W??7@!AZf1V;RdWUnXRcf9fD8K)HN zCuhK@-uM7Z7D9B0TVcUqy245Bk-s z!~grhXH#`fFTh%SQeu_g7>~9aQEm5a${aM||I=@;L^k&S!@_Sa-&%377zFb?qer)}x)cHE3 z@mXq0+>0Ffjm9g;{>N0B|Ff-`FBvMxMOF7C7vMBoh9gqm3le29RhWvFV+R@zX{q{!@FT?`m(;eiIw(y$ru$qX8nc3m^CQ=J)=J> zN(-PeK=gpr1s}_m^aAV+{_m*b|4KC4vMaxX{2(fr5k0I zaz2UX{6R*p?K~Fo^}&bhe-lO-3BY+IW8vSye?fXQ?2IL{O`!nUSLj&qp1G9SIrl;V zWA8A3XGf^mmBd=k;;CA}#9C?-(Z%ets!nEZj+Xqse5barL}Rp&6i;hMto~ywzFvAg z>8bVk+A}QpSJE>^Q0{NH#~Brcna_&2rE6s>$G=#cRlmN<^*@`KAJP9vl3-kb$ zLL1}&{D$o>bXIvk+wZXgY)ik;Gq4%_5Z}xi^a|dSQN4=Zb{~F#Gw}ngMl|rw^*`0l zCKmX4q~%@t^^ME3HjLcdbzwxfT7mW>y#xA;g8$UCQua4zIN77>23pkPe~R^QSjAiP z|BnOzmlM-=5>X}TAt?q5=aVOu{{=~9_^oW9$9GyJ{TfPow9WNn={(N$8MuCUK zA(nomn?a|7fA#!-??)fa>Rk^?l6UsZ`go}MT#@h^?HcB3?7Afq=| z(9EFN6=q@USqz>2N!Mh!|C;rq>Fza*_|dD;A4UHY^!1*I?7l+lsMfDq3-C5QN5;+9E@O5f^oIsq)g6@rpOh1fR-}R73U!!~dM_WT%FIHK;V_B10#e)8D z{i5{;|FO=iA&c-}u=wKT%YE2NHLlptl9%Vv@?TLUJ&+cZXaVslM^^$+lYcMNMjgZc zAELF`;XE$B1+gsZ<;tNzQX1`u`u>dRQCrcEXWvh0QY3~{88A1&<1-c`o5jENi|V|l z5HuG5yN3z^ zFF+06p~KSGiMC#~`z!4o=%I2O8NqK5qqPudIgd{mzoi&Ewv#lNXwe^VUvpgbUXm-vBu=au2N%%_d+KB z0XXgj zob6Z*Hxu*w!P-x1Th_l^?`~{EHQAd%|HD}RpKq*1r20$EZCVeu`VyUbC;2JM;obW% zmZwMY^`DKs{~{#+kJHg=D!l(C{8j_V@Bee_Wnx-SBG2#5=1s(=&LZDK34d1dxb6F%w-sw)7yXga4vE1X;nSltDW{y!ESbHTl1252Z=G zuU9I3-@62(u?I+Pyn=BFN)1Z;E(MDEN0SMP>-Ckoxq2|CaLe z){xzV@A|T8iUmDb(pzYapW^>h0x0n+){d7;jew_|iv(~yYth*A*r5s%)Zg9X-&nvq za(|%*-Xr!b_XJagCU~7l2KLB21WI!OIf^4dP2>^df6R(E&)G327trdZ^2`6L4=|&b zVug~0&j-Qz8~RkJS&q+G9eFu2`#XDlHv-%q552qqJG@nlwO|Z^mKvk0KQ^_Sq|b@F z(&C>kfNOK)rqFVwggM}TKG6YY49w@r=rPd7yLF4VlG;&oprjuMO` z$&)$=`RNSo0M8L`xgU0bUlDOVfXK?ZL|C4RujK~hfN$f6IgJQ`pVD)EulBlF0q3@U zhr~9YyZsUh@CbFAj;34t@97UTv;LdfNwxKm06xmP8UsG86K@8fXj5Mn{qYf7uUZ>= zY-noH`jD(I>&j2{Z@q0|&e)%!6;GMOIyXmP2lUy`Vb9v8(ldhd4l)Y*iyRy@2m9fi z{*9fzNCgG+<#Xa^XA}8%DY)5}wXTIPkqFxV^nfX)M0U{vZYSJm2>%xwK%qX~KVt}u za+G4)IdKZ^dZzjRI&XEGlLpHM7i`ks1_hes`F_lko%2En26HV}xuCH~iUOS}rV`}{0 zTz_99tl9pkY);7@L84$6EhFJu(+ZsDz{Su`fJ(G@X6+B}(d^=AV%Owx%2MVNigZ z(7gt>52otRYeWSPBHwKzeQEctWCxy2Rj@y!Bb-Scf#=cG)^0tD1h84vC)B!N z=OO{<2Rydkr+#;B9yNh3!sa^;eCz+$a_ly6DK*fRWG0y_R}CRiG@{@7(jILmQ7uts zpcn&WrgvGczrmZxNwhH2|_wp5epeh@R2h-Drc0laz!b? zRu%rw!`@&#Y$6e@pygU0!n#*}F$2i>AA1$J{oiZ=j%?Xcm9ZAyFZ$z`C@5bR|IVt+ zvrvi7^RV8+VdULk%slL3oLK59JjF#k!3FU4Y0Opm%)ATHFE!Q@U_CbRuaq#8qtxn? z&6Cd0iT_iQOQolA;6K?56Zo|j5c7LO*IQll=71CVyqB^>C{At$4hzy{Ayn}!J@zEGQcUVFHkY~ZMp^=Pd-J9=RJ_@pY5Rl z2SWoc$0BeMw0O<#7myJ4CL7>#>MQ&nf9%wxB3^U=klA{3AHt9 zcazz>Iq23)X2hs5{ptd)66?p8wVE|otmwv=4z7@^B)a}m^oxI2q5cDNg!=G*4z}!z z$sAs^6#pW)T(h7#I0(86?<@!_#|K^E^`a{}L+F4p?ptBIz64!kcg8G#k44NLV8#9) zt;KAm;Q#-o0q9eU9YQ2K%4`MKp=xCo&NMQOuZ5;{j`28W?{}Hulu8c2gb1J!75>ft zEBF`5>Q$RUSB>N|l1IBt>I4kn$t14eu5uaVB{{WGF)DtpKC z-5xx-XQ}ajDwhAvt2%!R;T5+dGuqqtl}5kH@3*jZUu!jL_MX%JL3Ni2ZnMK*(Ies+v`7pA~*+?^kz<#9r*#A5D@5{KgmPh_KS9y(pISODLGYh{i zazLR2dIEy=jJF^^xDS;G&V%$aOXt!#b|MzjbJ1iD2bbnmi~q^|LJN`R=YntTs%C8` zl1H1Sa)5Dy#tF#(?elI<|8%H8Du3z+&~9klkR6Du^Ei=jr*XB!{2oc|vE_&hdywAV zAFV%KAJjM$?*AZmzemaUt6@dHhR)u{pwADYPVM#7sh+@!I|A)RpiZ!@lg%~+r2fvB`HU2M=F+qs<2&e5(fane4 zGm>^}@#fu%Bae1}2f>B+i(+*N`F@V`s8k!#4yQk%coTDWkXtx>IiZ}QWw5w*|M{#2V^{}LU37NGl^@AD{rzgHU@P^t0< zMErlAsJ|Ihr~3{az7`^L?$^Bo^5%i~qmP6GP3rE^{ipU*RIoj%y;FNo`)%@A4{EIi z`j5ftKLnm8UcysFiJaTN#?{G*6Hg;TjEu;b z=C=ncjhN`uO5LQUSCp_q{?j~M;)UN9fY zMh(YGCSF4=Azp=|*%bPu1fU&aL;L_+kr#Lpy4UN?OR+ghtbLocHk);4l?btDjc=`isSaV~8M6VVa)i}BjGxo$tp0BluQ*qtP6V3O zYOI4V{*6!@jDO)$>VJF+{A;%=a(h<06d)Y`-MH{uk1UiS=#WbWEkU5?7HTmT4fYuD ze>z^QO_q*E8(=R+tSwW`U+cePD!mFF@xSf^n9Myh9`XBb4WKg%-xZ#o7=T0yl_NUT zAWxz*voXxzL^PQbk@d~%>&Y{mywv_zYV#|L$^W&&XwUbZbwaJ(ur0Jgyo-Blk{I7- z)j{)rt;lL_kdeQW*{7T~j^mH*y1(mvREYgXtv|iJe?pzV!y8vt{kGqz6ZaRSdXMnn9PKCnhiZ7g z$PbYKV*l&SKEIJ;i+p*v5<#cNPoXWw@)+ft>lN)l9xo+w%+ir^7b%E-hUGxNc|UIU zFEe5wIz?!d^e8mW`*{B{j{evIXV4en)aJeX0<(w%_zo7B_Y+aIdiw+Ib=vdDto$LC z*gn_+=0k%ICHCq#;x8sp8T2x|fObYUBg`mH%oc@Bv8HKBL0BGxj3)OApGP&OZ05U4;UKVtADE$gHFag|dz2 zNq-bg=5(ICwbj?>8BSxL)_*H9Ok=KzXNng_nMNys71t-D{m-v#1SPUxORSVYimcaA zS;#0u_nQ-}thN{m{hO|-wa?eysqI$3jXHnx;SslDEqaJ*Kfk2b$NuD{55xogM{Iv5 z!Tr~S?;i#Jr;^>*jmFG3hQlJVmuG7`{Qz}A}H zk@aCc+nrchcK;SZ+MV_PDR+h_%NOPPsdlFY!%?ZLX#JP} z|7&>whw()8V|2z?EGLe?(6LDTW#m$@@csNPxX(;NFEan^nL#AO1yuOlhqJWn4+Fva z^XG7H>wk}dlIV3!)j#K^6~MedvmngeNcW!90d~(!Xo5b#jMZA-+Ww|+^dzo&6x@Hk z+R?S=YUAk`_ey;PHU91IcR$+`jlVXg(2@6#&FzW%Sr3U*-G3r{=2)ywL#gcXB-QG_ z02ex;y_g=}ZzCgoj!Kprww`ZZiQQ>7wQbCRQQ9q76q)kZB0tMT?Uq$4e`q1oLuTh4 zZEPZ`SoRD4WA`gkxV$u*_wX1|Xr!N1A>a5}1Q)NO{NK1-WqFTG_P^uuZn>-U$#cAB zw&*L?__G?3*jMiNQ#Ruby^~RV+7unZ2jKsWrMw?PP)RqrYcOBroSf(V3;r_`X~1~0 z0xxR5&>Tf1)z@2ZVF7%9yG2e_KdiAQB9Z+7Ti{SUv0I~;ZPUFKlzBk+YtZV|hyy$f zO8f%(MANwUv-opvMglmzF}m?u{rvhUA_2Fny+YpXVpfDz;s4?R$i)QNN%RpeO6n{J|+)$G9M^feYbe=i{532lB(SeHH7$yO?qHM=}U)@H^>3 zwCaMLpd)9+@)vo+{o|lhr@=LkhCf^VvsnMdh1@@#F12lFt&IIY_P^EtB@5t3L1OA< zhkiNwSWbigLIpB%rGfDN4u8*i(R!ApBISHDu=fG|mtfDF0?PYvjTt<>xnN(bp7>Wo z)BB%VU&dlOPib}{5sma4!g*Hyn#?(7a@*C*Y)|WfSqWVGps%|@YhJ_ecUx_p`bX;D zt@ogR{JGeP@2#T#f81EDc_5YPHX@qr)z%a&d*7ql&vxMdAUw}j^S`$JF>3lwAkO!1 zWT{-(+OD;F>lyTgL+}`mX61_hRL4v#zxarL9ho->3l>WUE-Pfcm-7-;8%zehL3jRo zy@H^~=k5>x%{%RNa#}ahr34_&5M#l=9NYcI19dEp;@^m%g2RrS?`Wk~L4Bw|-bVuQ zKHg3I8*A+QHJ0lCS~it$;@wobDbh=Z0hVCr_%#&$ zUL=4s$OTvx31CURQ9q;Bqjo0}z&zH9HoDXU(@Uf^Y718UBDQUKH{dGYlUr1dF%0;m&zHom(7wiYy%W{9|ga30z2Q{7_ z{y82U&uEM6ueVZbg`89S{~BzoSKB`y19Sm$jCzds%xHrD5+zZ% zcqo^jqyv%s%M2Z{+O%eqojnWw)7jUoE;BsiAD9nizPGCfwc&qT+qQlaBI=CB33!R`#`Av< z8GpZTj74{>xAveO&B}22>)UU&Clhyi5PW7ZlK*2!pG&Cczhe96_y*5!?Lt-0C$Kjk zg6C>lW$}*%%)HrD*9~{`ud6?DZcw5{4rRW88! z_2KmgYIAEZ;B(rgLb!3FsRrU28p3Ly2H% zMMhudS!R*_##wC!uRospyQf2Qjn^4f;or=^pjHp06j$%RnAfTy9Vp0;^>zTiomE(- zz~{{zPURpg6H61~``;X?=`8vPY*o9b)`#BSFV=@P4r*M2?teFW;(d7jmT&Id{CabE z>jJp{@b)oO`{|8_d3?qF`%&5Jnf8~E{O7mVq6g(2t+U`XE4Q9*-oRQr2G7+@dfoPC z9mhWAijQqgOo)`M`yg9wdo}z3i33tw?q=ne`aL;MWM`8C6pmZ0bcyPduWGrA&f#5@ zq9X@H1~AKBkDnRH%Ky?J@gGk@BnW9h?i5b!`&`NIqlM(YQW+^sv;e;iJ#ub^pWAJ; zlm93G_g;=vPMP|lD(DLoi9Y$x(H8Se<>sgIC7{aUj>`2gooCHQw#Uf-Lls`pbF zXgRE}qp-yeL-SvVNA?uF0Nc|W;412^ze&`tgNzD4hrM;bTM$7wgb0Qc8- zt-nE4;1#I|_Ce%C5u%o;pV&&VMgW=1ugsf{;qd^-?Kk2`^G8N;Z1CTgJ;t4lXYFZ~ zRvy@?!sU^0u<-ZD?BV_*A-pj7FSzzK*bi?E-N=zrhk_t6C2picMzDMiZYKWK|J6p+ z`psQTrz>q@sex7em3j&N|IbPQ7jcihk29RrUCMr7^I10-mRxTMxtix5c9T zm-gJM4*h|6ore+cQ^U{nAQI@V^q_p5s+A|SrV;7?8)DXOq!-m6`$xj z*R~RRxMVbLxv+7vR>@IY?&ALnph}FW0c0yOL$M|XZ{ftn7N^diJ+ac~Sl>sAuzpxP z^ZFgF04)BkMbM!DVqDtMkx--n(Z>tz@jm{KHd5^W9+SP&5F>fCE@~fKnYpO}82w+g zjWYLGGQCGK0FtL*t@89b?Fn+nV+A~ec;LS@hqm@1uIiaq58^C7iS+-Ic8y5v@kswu ziNo5Oc&rmDFW?X&u|J6y;Ahlp8Pj?hJI-wA+^^`|dN(rO(RcxV3Dxgezo9msnxLm3 zciQ<`n|^wOTj3{Fq@(3pOTrw|-mE?Q&5C~`%LlSY{=X3`+-&mr34;HfEBqe?{}=g* z-SJ(xo7R1Ne7b@W2!ZZCo6k;;CypXv0qnLsDNb&up_P23=12}FX-x-%^ zy_{09R6D^x8wI>SI{78k7umcTVKAJLIEGF%K$$^CpYau%6$%iEz~h!ZE3@&)spK-A zi`{g0XhVOV+m={i=7Cl#bZicWhk$(XZ*2heCS^9Gx6H@X#%XOf^*1}T#0scZmS{gS zevJ&&`#+z!%qP0W*KVq9Tt5TL-x#FAt3kfp|1RQ1o8*q%&|JH9BE9Jb&}a4$xc`B~ zn4e6%-xPd*qlo!iliJfS;qyO;%Kq^N=V}K~5$tNX!E6vB z1u)uQKH@quV$2+%tTF9_+5oIIVfQHY|9Aj;a=ewQr}5X=|6Z)np;bLOZCTGziu@`egE?Rfs83!&#J_! zn2{WSH7Z--KO+I`fgW=uci55Z&)>+NSoTAo?YeGXZ+|uIfvEtl44`Eu z`F^5*Iy%#(U4Q91u=Y}Ihx+~XH5wZ4Q-)(;E7#rR+vP~v%LWk>RVAN>FO z@pmUAfuVS2ztUdN{vGndBx&T>#GK&cMo%C?GBA7ty~kf*M^UNtM#PhgE&QDiXRDk<&kCm7c2$kek)>voAB9pQ-FMD@0=@$Gd!k}|Kp3aLV=k~ddCOBHPxP--5`*Y z7=TcKe^vw7ftg%GB(oK_9Z9%&p-GWWLct=%gqG!~ye~A(*@gmmyjwZLSFIVlBmG}U zegBEf!Q7_p+2&T`S3*k%Kj$|Z9H%0P*AxGuKF`w6CF*Dl*HkjI#-AF2o3;M#q07gG z)cQKT{(5~XHR7&=_utLhxEnihof;IkHrHx>0`5Nu&)@Cs_hMT<8VayIz5F&L+iwDN zU<)Wg8(;H@?XBAzfd4P!{To2#i94zEvn^Wd1{JE~CyN9So-EqSyADSeMdkx6j}DMb zc`NE$D_84$5aZF&7Q%spLNV%Ha*rbOi+U+cbZlP>?Md}9@xLZ}SL2TM15C|s@gEDF zT6uW6sFw;jYG1vB(nkCXjwE!*qsozG#Ew9TUJb{(N6shskGH`0p@SJ+sH1U%sVc4o zz`6hf(E)ZK7U&TqfZ1dNJl1Nrr?pR^5>umlBO(($`79!@X% zmqmT>;=ZzlK5PM2u0oeRn$>MKlD-J*U`Jaq4pCpGW0N*nFH_0Cv;8yte`_%LrKORK z1^uG6jIYQw;<;Ea#Cb3+_6wEsH8h||44tDqdMr|tS<^>@c>Mu$u+!}T-AOM|y)ec! z*nu^Dz2mp>`6&mK{-5e`UQN4%)xM+@i3CbV@P%l6KkJ%Z`xg1W_tw{I>_??Pt$uf7 zAHKKoT%$LgIbUkdB;w>f#F?Fj=dUmFXty=~$j#B?4f-s<+RxRQX#- z)Zdd-`q`i8^?~3mxD0nxT37OQg-7NU)1otcPz>pne-C=H(K1HOw~>Oas$HV%qAQf+ z#bD(1SmYzMi!@Ohicu(lv><1f4j%UHP)b-Cx!n7R|6IqbMrxO$cpXPB`h#pSJ7N|6T<8kE0^X!ANNP@mom&#$%} zdDYfDjbjFYKT$Z2Y}Tugnh%4n1o4I62MF_# zxHIk`Jcx`mAU%l9(D}t87@c7ZXg>{k=43Fh7eD;pxLzZ96Nhbn)(D=pH35|gjOaB_ zLwY!d*&5lKNQ;b5uYaO`tl&Nd%CS3l=%&`+Uuz$!zgnM8e=lqO+=uLcC!W7QH#R5d z=lxXdeu{cOyW{73zC8rL@)G3CA>F;;|C_S5Cc^#Si}ZgMaVQ(L|J1V5&scI!ztTJ! z+kyW7*y5Mv%VHyvZqOMWSv-rKg8z1f{zT171B?i;BADlfkIR9J4c@3c5gYW&<^8r; z@4{6>b;4VXH!MB6l;A(W9m+kFH6qPBQs3DZq*&;Jf3Li(=TS-#TSTD%krP6Lq&dng zky;{8lregyTc}`(cd{RmIg$1WG)CFESj&7sa~x9D$D0o}Ths&%ZvUGEumM;22>7=)|J0>p>QDhOmN6ABAEb+aXBK&( z%-X$q3gSQfIWx~StO9s4cRCxsug!E8pSQ(=lDK|zE2YO~T5iejW%o|&cv>T9Chx4= zIu88XfyL*SQJR%Kjm^po)&{oDz=K^wYS-2V(Hm}6vO+H>-tS>nh0^~sjg^rUpKOlC zr~kXwD17|q!(%pKJ?)0&uNSc;z0mtNrQXL{-LF#%?8Nq5BGP|Ke~-OdJz9^`%Wij~ zRtI7I4*uhRbIpfWMlX*wEX5jAeCPFp;UXdAULA`; zju!nLsV8(Onncd`+vo}Dg`TcK#R4k+dyy5qDcKlH=okE>=KAFJT-bWNwGx?rAAgzudlxSm0Lsiq`1X_o2)qn|~!2=mCD|%c%<7tMNd6 z9-YDVt^Ey|b9dH>I=-G~HD_Z>lmo2()fe20S?g(89mwucYLer5Z*9Fzd2goKW_)Wz zP%l0o1O6|^vN*NEL3IAI)(h%`b@3c3;JZlE!FWg7_Ke5`9#Q^}f(sr4Hm|{lIij-u zn|Y|LqNXhW7yq;2rgIp_X6!2w0IM&h0{=Vydvmn|xq~{!tZJl%R)u?qe+T{U@!P`v zv$x3l+1sHCMSk%3;NLzV$MDoXgREiH)C|zSkU37T5IlkBtk2(A%X#eIn*I7VW>+!7 zS~&EwNCB+kT;!2-0o48{_n(MI;ql;;_zdtsw$4WJaI`(~8 z&!Rw%nkZKh9||Cf!xP27@i^i+(e>ifE&y)P1N53H39C743)g?=b;OUGT7Y*ENlF#L zV|cRnFBUzopKBLuU*i8(S$e<39eUN!mdN&UU#}~I<@!ntkuW;=^~iE>_d2?03gO+M zMd9+%LZVT4q$6Hd7Fw4xrGfSn()#b+qzzUo=ub}Id?Eq9LS?{Vt;4AZ^!wHbssdg> zMUXZTfJ-V0@G7T@jJ0Nd**Nf}ti^;YSK`aw zi*H0h5FXr%ZTA$ci)+8{e9kBT7L1gmMUTfNrbxV;K>eC8U~L!%wtGN*v`(0v9Ql6` zSeR4g&}`0mcFZ;cDDi)h0RDIWKbXF_pQk?d>0mCkOhc`dW-`9Q-wS0}_BA7R{N-I{ z8|u-KBs^y%-1$R1wNDcXY`4Fe|xsalg0GfvztR<}-;h=}X;-^+Er7(1ACxK3#x*FbMzum*D>Eww|Jw^U1xjSawByG8}aKNdO?d0TGn777r}Ah=I=5%UYv zt57~_F@Iu9`(HEwV{>v9uN-Vf(g+psuHo|~%23>AEY3z6p^gyBBo)!V;O1Ge z1w? z{l40Q+H1tn?Z#?K#=Ny9+@u5g_tTBWb(<^!W9rN!vwoOi_HW`6#S^ zXJc1P_b+LHo3D9a5G^i37sC1D6>v|!$vaoJTdv`eelq*-6uOLE4nl`=UptVc26^(8 zHeh`AFJ8!Izr6k&5&2&V@Xz3X5c17NpzzYJ+j&B}Gh^>7k{ws@FAY#f$t*fEEc`xa zlyCi1_7qz}c{KuHAL1s@#j9yH&n)Z#J5&(>TJW_#DE|-OyG2B8Zo@wDpDrHa-;rsX zRRSnh05yKOzm!XP>7!kbb&aasQ5#*qqu#smVLE(00{*rBeT|I&A>^F@ra7O;u^Rp7 zPHf-G+FA|dPwyUw)ISKVe+=ILO{g~gd*XjiK|)xKT+`F=F}>Bi8SXR>E~V@*(#4Rg zJo0ZO;P65BB-bX0kR!$}U+QHjl?VON*TrU{YT{KFWx;*n*xpgp$@4|MQ9aU>^y^HX z@v``jZErQOX8(cZE5yZ);8nbu=#He{;qhYEeRBBRF_a=`E)*i)7fK*?3X&rQ6{?u0 z6Y0X|p=9#`#*@D1Y9o0{$~?a7i)1yE+JF}{f7t9rM&K<~MX)8%=v&DHSdL$17CC?) zVmp9s4TIKXY`18KomCoL@>1gcsD8@5($vxyrLBpL`l+)01Z> z&{MeEVbCir7vkRxY~%kXb6@?MgBXR`*$XTFuP4BY|JM2P=|~mz&UElUnO{TvYf;>h zoQyZS4ye6RJE;Dv`j%w;814TM=r``C-CT%#xf+>ckG0k!yXP`=|CNy~w?Uhnfc0+} zQRZ9oenj{CyMF=SIg&h+uJ)~P|Fv5`AVOsiIMgQau?|;sRfo5U^vKDsW~oB#f3eGJ zEl~0`QqF(T0E~eX<&p49OmHM|k?#HuN~JpSH;Q{bbkQo*5Ukl^B}y~=R)rsiFCl%$R&kRC|CF#itVC!0YV+~jrUlkdIFLC zBa6f@;1$<_uBJc85$IWeY)+y>*biH4;0Ig+oxY4{;1}r>JQmG=3D&?5V+q(DPt651#c5F5u}c z;OWj}UfUtRSk-3+XdlP3*7`CX9505d*|~EPV=~U){y@t7S^$jOPOO3%7U}CG1)V|^ zM8MRGD}b%itbV`}#HgYPW2?O^({p=>D6+rNntwY_RVdj*qMC^?UVRDL^uA z)qJ&kmujHW0Q2RQp+!cJ5-VBI6^o%-d=Q!Aismh99Y;QkM&*K3{!9N6^9-dVY8>$~ z$Z=z}h#U}3FQrm;aSXl-*AA^IF$YqOU|L#N>I}>Gr4XSdj>xMhHADw0PbaUj{73Uw z+EEAbj$Y5ZNq;t^n$JWc0Zt<`bCuSftsBS(T(3QmUQ2tEqj6RHX{hxCsI}hOlkf-Z zh_3cp`zEr1)~ad(uH3o}4Q&;2f$R!!5piEDG`?7$UVnj1fOTqjQA2+e_!s;BEwXc9vD+wd$V zDOCXe|FeKba@`HN#))Lh-C1QBmr*;;4h0DQqXlHX&SqH(P-uelaLb%Bzd{{E>s%~= z)-&3zdZyO(vaYY2)_x;?NAP}U@V}7Xz}zM~`Dh_19sqN*z4*97KS;IDVPuQ{fleP^MEYNdW%+kl{Pu*XOo^r0MJt&W^pMAkekl>0=_l#)1vHk1$ zOT`Sc<&2Au)-Sz?tPl<@Z?{ia!GGlFaO)iFNHPlXBc7BGQgh7sdas@wU2Tl%%bT8E zsX-n)U9O-e(Bax%U)rK<5+3h;Bj;$*h$fh0>Mc5 zVU8>)3k8XVpi}*00^0IrRIoe?j2N4|F>BuJ79$Y~{-=Vd*#G6_b^u8QkkkOt4)BjH zfL_N6g5$vCoy5$20*T!5hBk?>qW2f12hU|5Io9tA9TWMTCy`GD{T^e?{~^f#=U~w^ zb1!4x62wQsH&4*GfZgyAh<~4mecSBkYnGGrz<2;HgNatoSRL~OXvVd4`8%h!TKzNB z`rEbfIXr(~gZpdyd%W?t#&lv#S8W|lK7W5IO+VA#5L@!0p#Kc;zbm+(hjh6J-~TGz z-zO?~5xGCVZ{0;is&!^gBx-Otv1;=3#JsrL<#y4KUB%&(g%ir5J3akY27~(kQ!7Wi z|9intJY(k4#1Ahfyka~C=@S_KAN-3}?-bhNS#npYk>C3oFQ67SWATl(wf>-WM}p;K z1WR|~nREtHkJ$4vhagirq)cJtu+qBs%-qB0#lCwp^T;q#ut+?iWzv`;o5b#~-6B~6 zj@BzUZtv)`=!*_8hMHc7G_PpB+?>!llS<2fp*C~h_6T~dpVxl2{T^bprl9?wNKNqb z$OhPgIE}C4r`fpueR_$kMn&dDP?@LE`EG2S)|g6Hkc+4X_A}x^nzaj9Z$rSa5rF#f z(%)PApE`h*e_ior1ZeS_#af-p`ZLCC^Gg04j{e;n{13&-d?npK&qaDQOC@+O*eD2C zRx{4NLKi$TTr%hSw@?XRV<#91wK|v;eJ2*PS&Z1s1p9%Bl+7yn-_AJV-z=KxoRywM zQUJG-1^kaGz%;HS{zrhxTd)9}#g!6W7lgmtyC1IJ8GGkls8>EmQs|(v(2znErW5`D zDJZ}pl}+Dn9!4+N*~1t{sqHAJ-QG~XMeGsd(qk)oD)mbVq|DNe(s#W)t?9%{J=Qg; z_O;rK`or~pM1g;qRqznlzY`kpTw_&a!*4dn!2OpezwC>6l@@^eli?yqfc`1O{!XUK z#4N0Uei?c=KR{&x?d^$Fj0Hhn zA3MJ?d^mkDUalSqz?fyX!~=Ki^}%jrg4{m{&U~aTo-bulFG*iPtsip#_#uLN@$Xe5 zQ~B3uV7r7KioJDt@_VmCS6jZletS5-**Wbe+BG7yW)Tbg@$PfM|0%=+ZHg7(G9o$u zil#OkFU=89kzW!AbUS^)cC9*t?pt5J{yDsWw;)fC0VS^a!u{p^^7P*9wa$z=!q(K7 z1Q)U{r4@pWv6}%!Fdj&)VJMo!)m^utH3u(2v+KXa^#woj$9&hpd63be5d|0GK1Y{# zddrSL%D9{C{LLBP28`T&1^+$SC;siBu?-y5Zb!)g=tKbJ-9M55v>Dhr(`ts-c0Ej- z^v)nGRH|Uwk;Zro1#mLiKkx7U9@(W^wO6IP z@2%9PUA1)w{K%MJE!ELjMXeYRouVM`<)U)gg8$$}Y_AT6wD~9YR~)25S6TNZPFP7g z`gF;>SIdq?U91!eQ?8s570Fyp!W`se3wqWnSRL#_90a?k@Ot0J$`^_tb&wv(u|v^< z-emUV3eK!!(a5v#Nw|dyxG&EpGK}#FiF^tjG83U#{=@Yn(c~KLDSd*sYkr1&powGy zJV{;PUhR=pW$>rlD`2r%Or?g?*gnN}6k6LV-H$-8*Jj)|2Nts_75)b@7W>~$ zg-cq6WCQR&9USd|9x{(nhX1emU%o%30PO+)2>)AvAnOKggsgpW*CWuhCCoB-7R8}r z#nNB!pHYSm6#6EG2*n8g!?XSNzn^7Avs0*@dJUgwf-CVvR97Oouphf7Nx z+#7#eWO4bfo1Z!nN72lacl@5E-okkFa*d$hv75smAB4CRjiG6onN&!sr4Cp0-T24b`}+Zb|Mns=j3TlXg}9F0&0CbewtO9&tv($f!Oak zbOpMWT;N~S4z6|8F2iG|&C4hrHGgq$K7TLX857(e?3)#6{;5ba=ieMNGfb@go%)o+ zS)HF{wb@}vJm-H0|9&o*EWT@Cnd=8}Yg08Ku^~iL8HV z(g4QZgE4Okh8DoJ^_EXybmsqu=ZpMo|2PJ4CifUv&3*z326aT?Xy_wb_U1OK);dxrH+qRwC4Ff@PFxpbpnjn z-UvBhEOTGLW-O3rY8`Y;v6@Uqueh^oSnaObtoozG{e7%)Q)TzNmDjr(&o?%vOXthY z1w@wjMO(b5-G%0O3|8bN*pmiPRnpj>KF9!nA?o)yGD`=w>+SF2RhrQH30|c+JGo1^j0H zfO>cR{96CoH>ye+{XkAEf9n0>UkN}8U@oBe*P3Kiim9wRt4(TwHa=DVe^1u^f%xPv zCSqQnV8O3?sGInR4!`UtzwO8a!9qA~Fyx+`A375Jp9KDIgw71FMrS7sZDnH^r?r5z zMA}0~{4anuSXaB~{jmY$@BhsI)w(A#S0#yY$QTb`0XPAfCw4V4?G`#!czb88p;aB4 zP|%pIoQP`5jBl*kkQgu=O1e zCz%KK2jNv3N1wl*-79rJho9*%yaU7O^YaZlP4>d}_hD9JKUR5A7Ja=FtLyr9>!3@H zR^)<6)XDuz?oX)#o~tF^x9H$OVW>zn0nyg+x67%e5Na9GJfaaq2k~Cvr?DAmLs0Hk z>lXihC;l^DIjuBI>XQ41S354}S}2-Xi-|3i2BgM^a~1WG^`!=}iALXdd>Ntl^1E~l z&=R2b@4oPVuM_zxcg&c2^0dd1&vOd)n$?K}x{gSIW_xoyvaf*u{m}eBN417Si3BYYlEq$+GDEV-zpP&r}|Y#j{%XFQ!~emnXK>Fpb8oal3nwW1j_eCN)8qZ zw#r^D08$CLzt^3Elzc1Me+NN%j8U=*nY?l|co6^VFnGnv_{32ln+|K6^zW6@m1)t4QY2n(7;TIhhY%9uO!pja>56SQaUc|Q5pJ;QmD zAFMn8`&L|k9+=h!sAM0FempbUYbpMfxWs?I$}VUwfD*tQXtOoH^t~i6cmh{Bz3b(! z57z!(JEy*4<3K8X--`x#6E?sb(FIqgLd;9V{oPKD`JL$F_ey&+{C;Pl0c=IS&lsq{ z45+}mbou-#(*F_In#Usl-`U!=Rd0QPsIrl);czxrbF6yFd=K7&sPNN52|DXqDcbn_ zmm zckgHb$`(rJk;Ow>A_3?{NR=-wmyWbtuW)ZQ2`!KBBYO}NtNTm z|MSUMz*)@$i0S`Tb1c~xkF>g|_;)_Jn(LDbbRx3O2=tq0F3w3|2L6! zYE|mO|E)5ohuzpAvwyB5X8wc!g@3tsK}SJCR=eMb{valjbxp}&V zKxw|qoD$LOsLPBB`V0Pp`OGBTK5|QrFLQDH1@*a_pL_~akkrp52jE~(KMSmH&1z|AND!2V{S=dCvky=&;+neaEdE{+<3%PAIqBZBVeu3mL zfjTSCAOT)M9PkFz1Kq9ucI~{{V5$Lq7;N_iDf<15{x_~(OMrDJ`&IZi{zsj^;NNaC zMgu1QcVkxTCqc_qXaSM`gY?41J2)uV_q8D3_rXi>AtJJ`91}@dIxvqYquZf0OIYRB z#2p9Lw+8>i8L7JcIv`#v;nwV*#4#H(pY#BY|F2Mh{~7;VGLI=xJ3XQO@wng6^#fu6 zm1&edL~F+E-(_i3XK$fao%zKM=ng$ho90)G+-;BcsxK9+eE`n3aEVa=%L z`QU%w3jag-MXbrN2_rDOPdQB6eXuGMQ-)<)GIsgI)q%zeaw-j4it zEgrzXH5Oq@nuR54UF!YZ(*9F>DC_2=?hCLW9RvqiOl6sE>GRo#yq{m;8T<&o|H18- zi4*MGdIa15I8Yp$x;{0%`g--$0My@Oc`LRsC4ccRb|THH=W2Wp&XfX# z2M6JWzX#_cO!^UvfLD&Ju3jDeT&cZqTXhAoYn6?H|9JmaV-$|n7{f#kd8Ai%(?+js z9^E4HM`VgnH)(*L0PFT>3kVf6Z%Ha(tg`eWa)y+z;{{L(id|CtM|*MXp$(4JS#;=y zd(4(`YZ#2pWA_4*touNVq<*cx%%<-9`##mTh)GnmuMF2y%%`b?=SxC@YA#6?8^Vvo*f0A zicQ*xQ?mig^t0;T5O~dJ=`C{=xYP$No<%^xZ8*BCa#`6oe6fT4a!x@?2XCUvtBt~@ zcQ#Qu*CGvDi75T@qsLJ!2hwH3?(IFCCms_<|0lCp?)J*zHF zfS&EO6#v#_lmGXx_`jKcQ}{m#N}yj>Z-Fse)(hFY>#JQG)o#c7_XB)?pF{Wi8l3++ ze*f<`R;OzBADV}^e$kqSXYa}OO2qi=%9=TawR0@d^00pgi@6pnYPJIwD70#_5E>+O(XzYKiaAH{sAQD3-M6Op;K9T$9%2F69 zSm$`981JMfUp>ZuN&<;3(8p+OpE5z2cc}{|Wm01Dv(n14(m@CPQi;O-V@>E?)dblY zZ{E+FBU`7_A9y%6{wLeNZvU0Yjg_F)N^qa={zCWF-B)4_*cRRGMyfUZ9-HmJ)_3q8 zY>Ex=QRKi+H@0oOgHLE|{rj~gwRf=GZO5vK)n6(g1xTlP`F}b|j$)nZlQt{O+S2lW zGkwJWFjnW);QzB#G=ZE=oQv$p`C0!`g%Ziv!Al1>L5@6jSuR>Wdky<#oR3xR8u+FC z361raTTWz*+WFSxuT`|okDY-YU~ZG~e?|W9P=f!-12~Gath_a>;{Uyv>Dk!N9;H4< zDw;+D2#OOEnUO9#gN_8VER6`-J+siZyo(HAPs8o19DozCTFycCx6+5NbC`uyJSH)& zJuCcc|2JC09suG0W@V-Vhc=CsMfDfz3-SDZjkw=i$^N^s@pE$i zuWa_9ro;-wk$;h@@@sj(NW8)?w~||-ieNll}of`Z#?PA$BhL*TSCEq_Uur_gDW@8VqWd3vU* z@UH~0?5HElIQC$@aQ}k#9Gj<-Ifg=xLDo2q`+SPuVGf%#ZEm$`Z#C~~K_&n12z43> z)iWMLiOilKQ}|s{|Ho%;tfu){BbfhzNJ^X49;+=T_GcHQ{zuqu0spr(e%qLb^go5p z68*9Ke+}usH`)H%vwn8MigYCCUqlSaTxdeS?mxHhqVn`~^vGw3K3}PIU2`8a$v&V@ z?OiK)Vs|2Oiwn^r4rA#Kn#G9xGdxXMI1)f=Ux*lc<=O`@@xf{cA~C#J^abx;#ZPMI z;y;o>ke&Mm!AjuXP5e71d3C1(P=6;(e-l=l;Qekuu6BWr#8}QSY%z{~4FGAy3lJ-m4c9z!WTb*U=eZ4v`pd zw&o(?Ur#ph?d@+N1MCX!zX0-2K#n_w+5pqK-^O<{mwFASqPIQTJcz5jfE@TGtU)6h z&(;sCzqkI`+OXQ=j=0}%b+)u#S$e;}*=W=jn^^HatDCDh9~nG7}a zbX?)0po8XMzi{}VyL{WB3&DTESfKy~VOk*fz#jKCB8_)}4RXpwNPF{@^`N$RqQ4G!n)Uw9ANGwE( zqc@8`@$O33*CnppM3yUA89=!pHF{cA4A6?KcQao4EVUyRUEC{)MLl*RUCc`j^1j#v zqBDE#P=JoS?jGZQf`2V{_Sy2tpf@si_^w*Lwnk}*XJk&!M0)1<3rcgopF#n&XQT7S+oEAI-T|K?W6 zFDMbY;-ItM#Y91kN4Z5J=-|dP%2u$SHE-{aD~Zax9D76T4$8)3p#{eNNCDLU$ABO$ zXVxZBlP?*7Y61EI|6v^vW;72ZS~bA4HsqPy1pe=W4p`}^Y>q#iz4I>L`8jhgGxu|5 zR=#t#nenpoo{F^oX`bPSp+IUca(|e(a1*BzFph9{$_oDw7zen``tk;==&NC>UPw~`gyIjCBD7a+5?dMPr&oP zD^}wLNC8_A_qPHOB(EY{UQeFs1Ui1+1NUFQbq^Kk#<1ceb!)+24jSNQ4!iR5ifoCr z7wbyP#j7QLf}j$crwvieBnn_T&My=rc7u2rBI8FJ7x$tv{x&IqI2WHmanKoQL&O&D zAN(t$C~uo>lOu!OoE^J+@yF#zk1e)`a;I{1xUzIWZ-@6xJ##gH_b@JLUu+AGA~uFd zMV^s7NNXmCvN;F0NF|||kwm;h=+8RP#=*p0A5OLQ<*C8&AQju@A>n_feM9@X_Hd$r zZtT7c4enShxu+A$u?rf&FR14>noOX>T5AypxGT@@c_P5CYJ8~Cms%k6>p#T@xJK>a z%F3lLzh{N~;J+6bF#gZ=Wc@#pFK^Z3ZiRiZr#?CyzI-95v|~nx3yO)N?~31W#NsUW^CeQnY|=D|Cy0xxbRuOt}B9Xa?e6xn?d})?#SW0zO%T!I&RAxM`)8E-7;u z{c{LUYIyCNwLPi&^&ujEpR9Vq-^{PyY#!HK5nKLSt!=^g-`jJr8(m1&-)>}&T1$3w z>i)e!M9}T+FSB|MC-3K#)@9U_`Fry!tjI&aPV8aIu8CobB~WB0H>U7;d0qIge+yD0 z|7!zS7Bk7o(+VhF#FU7P4j`8oi%K2dLHrjTKui_li$=<)d2<&(Q7{_}lg z|Huuo`>9!Yh1eIAH&SyrIz^5YmC-EXMRc^@#hkumGKzm^k(qd}4h4+Q!OBL`8)xGk zmG?sdyq2`mnPqc4J-A{&>H+LQMWA0br;^|MyVg*uwwy-ikC)pM=+|^d_idF7a5i}W zA4iWHN8h$vso4Ct*5_L@s0n@|Ho!NK1g|F!c#Fmh^+W5m`o*jV|5G={Se1^+{9 z57c(8|E+!msDFwa@H?^o-QDP-!}Ln6&k*;&Px}Gn#{Ka7UqR&00%Cu5fC|h4|3Aj- ze2bZA$9_zbk4&nC& ztDzmvQL2#R+$S1irEqT1XO!m6YLJpyNnAgsn{+JlN$8UHe>DRoqtLbgkFE0nx2vkw z_SrousHg}C1PQ$(C6ojRfdC1F-ULFE4gu-Cqk;$sNN-9>&2!y%o6X_ zHmu3N!8;?q;$`wc$-7|NQ7<;42P9if#6-RZVUdzK&-eAWHd^wPfY<_~8NkRvn8O;UW&rB}JQi!?JLKkU!Lx}D zQmvB9f^=Wg;`A`+4*vb7{2=MEN7uXNtkt-~vFJ6YV@a8XtOsy9=r-eW3#9+Pc=PrK z@ms z)|AkW(c%N&l|>zYzvExDiOU=ni5bg49m4oo7+?%I3qy!T$Gxl)x#*on>;IXFFDkui zkR?6~`C`sLIY|9KOd(?#2WT*xd}DbccT8{eK8iT^dEaON>6_o>D0`YaBrf3kB3WN3 zD+%N-UL#iuvVC$ghI|nnBR#WsZnn_Pch#CaJ8J?ij}LIq?v>2k+_-mD@Avp{KiNNx zRRI>o;=gzB;^2paM+et18{h)w1RX~vU~6y_8J^w#S9&Y-p5n|8bbmk$;M&f?osV{I zYOmM+12e?Nx1LA$Tz7~V86eSr$CO&7`lPeXv&M9)&&3m9J&^H?)KjR*a}ye8vVTN> z7@+VU9Qax&ilmJ64-P8Jf3#gJdWtu)_TN?9=`n-Ax10=V1fvJ=9*z0T$in_G}I(?2k3SFIfWH@cvNdB%Hv}yAGoj zQ((dISpUlZrD$>dlB@Cr_9g!RvDQ~x)7yV*AA#5R`{4gBR{gx8^D@~#Z*?zarO(TT z+W(n@TL(8YZ)^)Z{+sc-%HVJPtC?N866?;d*k8E+2EM;7$@{&P{L=||=fs$pD-Ae) zv`D&0eX%5>#Gdc+UC{4&(F>v*q#}<#fDT$fd;oqUW|Xrcp)f8c)R$uml;&Lc7h{p) z!D;XxjliqqIIRe+jQHm2PB}LB41iFS1+u_+hjeegBF2dk_7e zqpw?ficcn5Ml_o+j9QKF;zx~T5RR}twt5LPfX!JMzEWL`U3PvO~7V71Fifz#;z5sgOkz#L`x*4 z2oWEVq<$(%>GkD>;*5NgBTCBpX%!K=_V3zDW+kh5uA0n^-=Xc-LyL?;$^<^7AalpBJhFjCI*E@`FMQ@@TR zjm45kgIRyFLv;TzK=g;8zTuN-<6grp_lrhh@8hk^Q<;+Lgz&!&&Sq#J?|nr zg)@Ag9)?fi=P)9W&G>^`STCB(0$5;cA;+(U!#_#g=GS`jQ5F1V;{Usnzj^22epui_ zbh;CGy$+w?`h(ZW6I!bO&EAfz)_gt@gx?|!ZlM;?Waa^VvArg%0w39WU+YHX%L<@C z2GI9!UcWY_(%)65^tHR5wD>mypeJwxM&BCPrRReGE6Gur$Y>AFqxU=7Bk3aR#D6q^ zXaFV^b1Q%c=QSG}P};v6 z|LOyy<^Mb!xe~n-|4Y+*&sqfC`|6PwnFV+RcPc(I_E&a`?Fg?{wluzrwIRzPjiLCI8j1W1YwbiB{wY<8=Be zj5I2lMQt`)o6phJy;e3cD+7q(x{o@6c1f{Zo`g)J542YOH6v;vo=bU5!vKZ<@(kpu zl$5uBdO0$0NF66pmEwdsx!&^l08XVM;HuOEdy<&|Yf=g95B;@>0G^BOe-ZxNBk<>3 zhBxqPSfMw#j;g^wryAJDdbd+c>}@>3cXcl6%;?P4nbqE--ECjgTD0{LV{81-W2XM^ z96;y)FT>bOeQD8Oa=-9D4HT}0c6=VFyd3#t_HRaZP#kO&LV}TCUVaD@s1YPhO@8Pac$7|jKB)isdqr(E%>KRsFW}pqqgeCfZ@t@y8aZYz=IM59ctlaB^175VFzC#HAlw-U@k%K(lA+BGxj2SyzPxX5l#pPRWu^3 zQhtf(G#+RFY@PED-J%`n`3P&J{a#nLY_yMhqCPF3ok!cZSOS?tDE=$sdO<4s9M*k| z9L|}&n|r_NEl!mGTV!!=MHKgRnEZJDpE|f<@QuM8x(>e{KqG#j4aGI?}L>bGnH|FCl>jsjCn|Al{9AX|9g-8sOnB;;)3_33T!?_B6L@N9e=1~?xZ$C^5}*0#Bc z{7Cn_b6@qz;~I`A1_<`UjLlPUuilK!$e*|bOKSHa_Kig7V=)_GdvyK%koSA=-Cpp( zA=m&1!wK8-9Q*~0!X^R`e~mLOCSx6(MD$`Ks(;fYHqn_0gngZ>MdKY9?p|4oqob1-l0^Z1mO?*D~qU#Il;q=wXDSdN!G&U=$?ub zc+a%a`x%uh{n>AvnKK9H1Zg=gT1o7Z(gMVPN%tVqJ9uC3V;j`R?O|#2vO?kvYX7-@ zxKG~jOwUOFMSob+`;|rHv-J6Tc0~Z}Z_ZW|kOe->_Y+~`ud^=DHoeQJ-!@NwS7Nnq z_t&LzgkInD{bqfh!xD0g&uK zabFCe#n9;ga)%t`Gm7JM;jG{ovpDziR^T0s8kF%KzPmvB3R6|1Lc5P5IW!zeWIR<#zqG zT1T6~68DTO(|V?LX?t_*|6g`~%p8C_SO?+`w1GkQ-0s1>z4}Xl|4Rp#5G^_w-``{^ z$GnHyaVH}EKS0dra{T^N$Q}J3WX);aZSg!U3d)sRN-0NcM!D}D&t|y#P3&6H;CS~q z_vPqd&GRBJlR2l?%xXG%=5i&q2*S^UIV3ZkSOkBnR}gLJ~1oG_5FFK{mV1*{A}K{c%|gO z$NE=VROtrx-`SNuiLgPj$b2yIZe;YoP8PtKy=ST6uoZIwf7f4)?7wrU;dUOs=vTr1 zw+4^k1Kgg~8=u7o_`&{{$lyM|JHGp8Rs_0}N&vfd#&({i9{Ag20sS4_a|$Rh_ou3W zSz&i2urL0dYnr^X$bUJ&HGn5GA}?j0>>1?Amu@>+5=QS;#>X=j1QqTJKP4@LkOouX z6OXo1_VM8V9%S;yjPEHhk8^cW-(Nh>i}hkQf_1T7x6B+NXEh`@Nc%rLQTafP2fzy9 z3!*tkr?6^(K0>33yW;(Okvu?G0;(J)+h_~zW%acB;U4$ZrWN3vJU63ro}0g%nd^Ae zWH5auPjMe4zB3ri^^xPI@?3Y}{xgyNyV0JVhue;@f>n;4>9{s6TOPjC0$7q*fZ3XB z!3=xjlX+k3`qq){HSzfV8ma#j5x_gx9^liq-DP^qQ9X7hzT!(6GlvrQUy-U`-N7Tw z_aBev?}6S4_>4c!I#SOw)(#z`N;(v_!ShoD)+2VvgD_io{d_|lW9KRfp)0K~= z(uN(u|EFPqJ+QI1#Rd@n%W@C1H8y}J&K`Mvham*|h&YB)e_ij}hI3-3W+WOnV#i1#&`cQk9WfKvfDxG3!+Hnm49l^y>xI?rlyrz(csIF~FOs2)%P> zp3dFvwc0ne7HC~Ri~x)q;y;!b4%cSR(S@>RuE^KtO6?eDAjUy>`^TIa$V z6?au|@h<~Z4B-FH0njc;?Lg}rEj6?myyjT$au!v9zJ<-PDc7_equUyfM&svrcW(;o z>i3cV)yuF&jxM&-jyfF+z&QYkviPK3>uXbdd3zH9JdoEJuz|XPd6-6E^b}5mh2^{8 ze`)UJT&WE>>lC7wGg^zZ-)vt2{$C>o_$a)8AHV(gSo`m??n%AoOte=LXi5JulO z_wreKwVZE%iVx%%`{G^3F%MvU>VaNO9`MS&b9%oa3usHMw)?3E>TIsV(f;osraNo! z1T1hm)f``AUC_1h036nPU+*%!2frrvDwnUz;m9FSvXFR%>3LvyK{h zbY#ueo2_Tsr*?kP`4cgKCz1VD0e_lLyLXpkHMtl1tCICUgV|yesP{F3rT7J+MYA(j zF6ph;`)l`6M%n3jo2C(Ua zuC$h1^W9d5cZ;Tw>)V&KSlosU>Y3O>+gZNDuvY0VGF2E&D=A!>=NQyCtm3@rvaZYm zT5>oK;N0%B-Lb^=en>Uo)ydYpkQE$%-CrDE&K1~n#&w^-2XF-p{}yuuc3}OMOUMFz zm{nij#umJtT#!?#2mbr^0qq~L9@vX`*0*3J1v6FyUl5sM{NK%pn^iy5Nwols159SG zSvl8^+>BJ-Xo!Mnw2t<~0z^#4c}aJrdf`7ZuylX-=DWP}z1Q>qD(DwylaKol2yvwh zXZX6lulYQY@B05;v#i#?b8h0oLnccGP_llV0W{}uYw)l9H+DFYo=pbH3lBNNz02cw zyBqv}1#Q|j_GEx+W8}Mi6aC2vXn4RUkhT}&)t-g{M(Yw2@YtV>CFM$h>RHP7%(mQ+ zp6>!Tn*%fhjeiQy-2Ur(Sr0zggx86*!IeQ|0M~6?6&~A!U*`6akGH->ty??Y$+uK)8hvVdOe{-F2e{>R7?-F}$&yTIU2{YS|Po=7nMdDi(`s`ny!CST|t z(cN*l)?aWfJ{+q-cJLpsprh94UCAoZ7o-RAN;fyp3AROZW&xWupLO{BUd#u}V#H5M z|47})>Y!B{Ky)dQb58IpnsR2e2Iaq3mzR=nkSZN|9ijnvM*3BHikJ@m(-Ijc_fvY8 z|G*>ao+Y=N*}Wd+dHJ)QvPW1eEE3;f_#_-DXUHsGIr&rC23A)rUbGg-s?-BMrTY*w zx%TNj()$-Nz^z%I{r3JZ`pe)2JfAvXhY|_=I`aW;Vm;US2j8WR!?^x^WODwD+OM;9 zpBv5wzp%3lGl7q1P4InMZ-L@N8Fy9#PA%Yt!GA3JRT*KEh9fTcS3a%J7&8m^AhPmq z#5cde5C<9ak!g{aK}X3((c&@Dq?_*|Qw#TDfzl(qPOATW3;BN{c+d`64YbF%p9r8B zUTkRp2BEHOHtro=#wcO3gbMwmBLH&9{OAr=)LxHQ*9}d~U~#1J^&{V<=9nviBvT=6 zlbLLD$#wrXJP_>X)z&0(;1NED>Z{Ko$M`&^6V<;2j@x@E`PK0C0f_ZY@Br+`bN)2` zKWh}ZFYgmb0LcSfj;l@N7upjKV83-89>A#}{~w*-lLPed&1DbpX&d$zYf;_QOx{V3jE*8e3BJeJL+*(`kAA5KkG*x&Ptz~Q1N#h>wAEtstg?ChKV{k7onN&T(mc4Dp@C7FPxbpLr(>MN-EiFYFe2 zO7`oAlp%~1=wmbAa10eXtU2N;V6p0Bh5H(Qir!!w#iZIz;)p?SgWu>YX;IJ{22@us zd&T=JbxQW~xt5YQ+mdqYs3+1EH zFa90%L4)Vy9%3N)7w@7h*oq#pI{NWtSmLvYlW)mgT?=m!T3O!wj}Gni#b7LRV7$Ir zv91zmHIK6YWr4E)8~>kdH$Sn26}jq0^mADlP@Tf8z-dJPpCSTq2>oj;k|6ipI8L7$ zJ}7RmU(p(BPtHppi|Nch{xn$>7b55N>1o~T<5-KoY3Tj?5c5BX41g_p`bvL)gAK8S zw&S~Pc^+9SP%oer+g%@Uec0msk>BG1+@!rYa{tZFUphY_@;eJ};N8pz`T&xBdT-wT zlgu4G4PEiG$^vjYq~9SPL^ZT#it(0C;Ey3lCfvjPV)c6 zOFRHdE_GMsZe*I6iY}i~?);xb|E!j0=1eqbuTVNdq@%cql=gGA#eAN!?Q`W|IqV}F zcpn*Hu3=l|<9O?qjDdCB7yOC$NZe>9;yxOPd)=3ry6W*pEYvqVSN~l61F1P4wur7C zcFNO=mR~xHpR&nX_N7|k(@ATSMdXvRCG|YLzW8?@z&hPM@Zr4LU5_~JFPY6X9nI|) zJOGoJ%W*Mrz?1lY5$J!6-*#JS0ezVqfIqT+*!;aK@gM$rxDw=Tos&8r?_5DG(A!$u zQ4QQm0Isd2_iH{zzjdY^>*|x%niK!Y|5Z~~AKsExGVg~04rZK+Xh(Z+5~=4{FF9Az zFUZy|@Eav*$<&hn{;#vVjui-YMGJo#Bp!hb%$mOokHY_4v{?P$iY2aFDAtzYvvG__ z^LPO5nVUL8?ElONm=8^1IWTVCz4gS+0G0#S!r$;PSqCS8NwWREX=nOeOM2z;Y=!+?9p1PJsX)nZ?XNV^9=sKJK=!mIz6oV53}~~ zIsGLWCyxy6#J9;L-+|2EA5&jydhd^T{toNziu5=0M+65ikyeh|=**5sx5Ng5Tk#Zp zL?4L$9t4PFJ$R0ErT=?DW7fh-Jm2viJwZGuBZCoNqZ8!nB3tQiMo;0zwgn}Tp3zqH z+eQA*H@u^3fSCmpkAY~nFAdIuy4=hC#tky>IM#e3d1w?PuLk|k5e?XjIi2_PcPFdkmfq^U`{46G;S16hJiD`U=Pqi2zQj7w>$HBu?D~y{ zdbMMJ5oAfKN?3(@H2$5NX6D%%)c&}d9J!mZP1ks5q$g${nO7+Be~?}XDIAEX;2<~` z3tRkwgDy4&G{r|3vVa3u!A(kEDKk`35!W?VNFz3hs z$qLc}SP~9%?#*OyR4bybj7@Y8ezY@Sy2b+-L^ti0ZESUV6FiImnkf*TOMmJKy!(@J z7IT2D0p*{tU;W4M{w(Cb>wjuDLe>`&H5^DbcnYBQ+?thrv zpNo4_d#@p14#D=HO5}e5MyO*{x#h^se-WGre-IgF@W@2nvnqyI)(h{JxSJAN%%+Z* z(LYz^6k&}mA8GD&3n{+OU-m{)#L-)~DQhl}JO_sA0;p%n}A-uX3&{ONNKW`jZT zReTfX@y=p4T80{X+V8vYMYustBHFw7H)1cJ*dAM|bdL=XCTsSW*FX1d(C;(0-5wb} zwS|%W>DdBkWScN2<6*LZkM2Fsn&2Ce<8w1Bxh%^}jic*|zr_Yl2$`;8ARV%R1|IzSG`;T7XZq4r;x(buIZOOM?BeplflYNg`LuUssy7 z8fD`DYT#z!9Ee1I7W;n>#$S^U7Yxe*h2kI}7un=;+>Vw4xpaqajpv(dA8g9n>SAqSu;OgUH zj#NTihWp;cT7VaUvo+pnpJ@NTyjA%38~Ydgru>4X`&6%TM6qD5xH($JB}4&sK<2CW zugU$!qjgvTbXTx{FcyOI{>%_^r4Xh6_E-ShzyouDNxDMZ)O8tVVtugJ_ z+gF44ZucL=0KN(S?}GjR+*zBvz8Ssu^}pVqGOQapfjIGH)cXI>aHYQq#ELKIei}d1 zI?Ve?tqSoPecM-&lxjR8(GebBoai#9pOyB4X}<~HGq=U_m7CV%H4f)r7(oVb5^F;QjY@j8mE;e_mawnl zGd4ne_=!J?Q1Mwgh2gN+AhtF(lZXzgn}|XD1@R2n-(mo-5NkxeKgWCQJXiqhvKGTF z-2pk;kMzd$*YBUejLtW}|L)jwXORc|Md|_nVDKAi0$hc6=OcrM`!lEqen{{4#17xz zeUTWTwZOLQ{JecsdnGCXoZA}L`a0vu3RoWpOJ$Qgc9GF4ufgzkGaH7&2e5>`joO3&(k zmCfV&p9_K8r5OL-YbB0wwcM%zpvSMQfB%;UFdQNS7z0cdKxY20#ER{_b^Ih&3w-xvHJ zgdO0#KQjQf0N*>~71^E^ZVD^w0TBDk4S%y0(IBiU^sSL;t@pIwK>m+l_5KfWz$elF z??4Oq9V>u;t-CsF$sO5$AM=2BBKz+r(CM>Jm6WC?n`aleM4)R*4;>-rHA+*H-TpjbZ7XYg>D6D2&*lIfgcoujejlp?Zp@zDcow_CyhZ?=xilWO zFxODdR{qaGmw1*nKtJ04cl%cC{r3>}E&M;y`E6$hY zevMfroAp|~d%K^*N3a#K=EWJgrK^kI+1RwY#lL8FQy&m7nZKGfFj61XRdSr+XS}^6 zz4A0zk1ZfGM5pjNk-D)lWP-AV#eXDXP$y3P6E)GWYrTzdfHlTMQL6dIe;9q-^F)=| zeIi>K>ov1^HPLTNY=xW_nQWV5{o9t@yTN~SeqS4Y@V!@66NxOhZH>ny(mfV{Z7IoL zSCIpZ0O&`FkJV^|S->ljm33zKzxWN0W*z4NIY8EPT><_7vuuYkxBF21051$)AN-V6 z0X8GL^Es+IT-{rkH5?}~3*b9Qfvrq;2 z_}`e48M5Z2ITOg$Db_%4}f;JjyUSm7BEh*{VU?B3)W3wkVb7}oKtMLfbF|KIg z?Ei<5kGpe!EAm?RuVVi}^vBqv4UkG0W&kgaPM;c}TKpbWalqIN;@=8kZu$Yn!5hxG zcU6JR0~!ksk7w5LUBn$+Y1CRMt_P4Untpnj{)PAKU5<#1&v(8L1Li5^m^wRE0M3K~ z4hP*6*{nOhEWg02^j;5u_}?FyZ*`Du@VrGW#Ze^I*!mWDafNKUg=`=n=M4jHwBf9#L(NrQqrT_A=kv zW@UeK*U|Wo&0bPJdWBame}Sk@R3!dVk8HdE;R>&A8$B=AF2<-_L-)>4C6H;nT1wl4U;7{C0{ zXsFTqn{lrWuB0z%AAWHBhXcg6V?Xk*L3+FasR>k?wkuj3g{AQ*=-8RNPC&+4r$4wY ziEhlox~1`2uE2k5fNB57`R)Q$Z({#{gF4{% zQw`{^owZm4e4XAaz5U4=89SJF@VoxC)RX-X>wKToo7@{g|G${%|5n8Qv)-S`%-D}6 zE(XN0(k(JBcC*+uGM22sc;9A6Q!wMM(C;}SyRqmKVHaJ|y1hymqUO^_uQo|3rOI z9S>o=0WyqwzTcR^8$I4nwo3VKuc}3jz7s2>zV`|;pZ%VfETD7Pcawp5@LWOgG*S)`Ptr#-p}#typKwN4^s)~L@EKj z-Tr!egZ5Lc4O_p))3qbWT=*S1nwe!*m(xQX{2TqxinC__UXJyDIOEUxeg7#Hm5;Ug zZRB6!z9e6ye(^<6)$oSbSOwX80#Uff$&lX;JA4(SqMCgZ|5va7*bx6lE%Zcc|7Qk3 z^n|&Gk^lJq#J(Cq$^YPA{b4asI33UWhTtzN0W5_ceHCkgq{2zs6`!OC4TClP4C=*w zm@e2?D#sTP%!e0hZ~Ug7xiQr}E+Ef&XZS~5Vq_N>^z`ccRXiI!!|g3L5aGymSx`!@c+1BNSph)qYjqc}Ehd9WP8k;>6yW6L^T zqpKSE7sv4kYAYnhS28#}5w37#yE(e!cNc};H%RvWzW3f0Cl{YNR%DkKPE>oOd&F_% zcWL?B;K7za$JtVk`u&v(B|3}AOEf&7ViKxdNyyb{R27@yxc zp#MBH|Lc(c=aAz)+u&<>cYZ_V;D2G+&D;GkBjL8r8J+Dq^AZEtsr~cT%+`lm4})e` z1UCD}S*xioX(q690Fskx4vPBe#-Q?Mvg3|GA8_oIEYCQs&n5GMcVB~PUp+E9u_!Mo zS`1O#pTyg-uhO}+g0=Bi@!#0Pp!eWg+^KRq^|8ju6&2tJD zWKW*n2Jq?m+-)ZMeBs}f{??}d+ktfPzbEgu<|*t56YRr2D}&5HBd~UnzDaW>*TqY4 z3N}ltwQuXa?WfzvV(q_&oVUM#|8JxFKgVpqes=@%$JXw>+B=vvYFiQfNA|ln9Mt&VMVu&9LlOP@7G;MZHF8!Yd#2Y5-lN~7eTjH@ zhm!PRr)WL4G2A3Vo7Tw??g^%SI$@zmfA16h!zUNJz~gOC{+g@TbMi@fUS4ahG3QGr z25@Ni_U_x=ji~7SDl@uIpce24so{Jixqml+`wN-heI~KMbI}DB96ZtAyWj4AvG7=2fTXg739wpM*YI*{YL+sM{6ZO*8ocF&)k12&#lS0 zI}c3W0shw?j_gL~Z7`ov9_d%O4{m&w4NCu2W=DTb&P*5~=WN0pya(C7z}QzdE>8Rgi^B&&&a~3RvoZ#|{V&$N=KM7(@<`KR!V(w`Q9Pnil7J3t|z- zJ@+!lVdLR-69H%#ATfdJv3*FdM)y2C7v0=5!*!mMqr!OWVzZyiEP$ht@S@ojJy)bB zYtou+`0fz4eTK7uKZ%a8$2<7nlRf4{>H$zQnFN0w$;xHF8JXO=w>6_ZJFC9`6}*ph z|1hir_yShIUpgN`vft93MDFP6c#X%ABmNs^kWA_SPw#$eeyxX$xSQ<1&8Zi$;BY)U z0>yW1(2U41z`OY%-v|F{xmp3@L4=AouajdO*=5;!rD*lh`AeSqsnNN`nYhl8@x_$| z&`5HxB%ZvV*p2mHa=n-=F}i$;9v(cqM;#~J;ni~=(I0I?PRYJ#07`7%6`zEA>|1&+ z1L$k?bC@T0@I23wFM|GPKJLcHm$#~7M1G(X7wL4O2z;3L+jr;Y5M+M0mw+eUex`4203#GpE9-!(HYmlvmU9! zzaziKz9@-=FLdO{Tq)m0%32}+3&Yuer-IB$jB@S&c=n6|ME=VGWAR)p!yV#1*8(sH zI2C==5yAjv3k3gq1iXg+g9SKy5@<4}z6MM(4hAp>Xcl)rb7+@W1fa=tR8os+dr|!k z8>A1uZe>;XqAwRjLpd-qP>qx6s9 zG>G)7Hy1Gv_{IKvs0MicunNfIyv$!?X1uSoe3e zp?`ggp#>nzEDh4W%H1zSt6md?nUyEzldoh8eP6s5eO_GKyX=j=A5O@t{moW<;4u@x z@o~uiv(fThO~E6yWhU@^rz7zX1pj6M?}!cXNnWiCxIdq*1-kCgBAbXFuoF4i-yWH} zb$IJr>_s~IDOZU8 zEb5h<;;8N<`n3ndiC7H&#h`dfY`+-5Yb)19uq=^yU;Gu}s95PiX*2-w7%5(7CDu{e zzS@X_`6yn*m8b-;FM8bUy#uk^{@q)xe+U&E9_jyyi0;YE{`s%Lp9ZsyS$xbAW8T6V zSc&RR)B4X~-91fS$4J*TVQyu0_>((pb-vx+wEc4HxYqkymou7_oO=DNq80q>g>v4X z(m&aM>oNAONB_T!5oh*Ejd$g{V>b-oYvNM=cSL7TG+uRp=mFxwZ^Vs%e(x1U)I`<>g9$iA{W`Mf2;7w3FYx*GpI&KjViJ96Itz^n zl!%J6fHvT&USE4&sXh(7ABynic`{qv{(jmVD=_8;hd zs`o+Wi62jf>57b6rB5Weqf|*G+8Wdcqhi-lpCbyhL2%A%^nQ^iF3Mxpc)-Fn*&qCC zIqOI88X_y3=ogg@?!3E9keN6#hAmYC2wG!jdu7|`eWH^T{^M;Bdv3wM{8Ai~I7j&s zb5&o(`sfS++n2qO?}dM(_pWYiPJ%uO>k*_KLHN71pRz*gnHi^i|1gi@y__3QLAjnPM^{ zP4EA;WXFGzF{iCsR=ZxjMEfG?{YK4RE1=_J7g; z6qdjX=m8%hs`msV=EdGRNQ>VPGhUK4f1k(y|4Hh8-^DEPx5y1V03Bf|uqT$4UYXSz zoCih0j#!ox#Er7tPi~Rt%}9<0>^Xkp7JWB1y?0ScI{#NYSiE{w@vo0ie_5C(NS6T$ z|G|SgfyfJQL}w72#Tm9USN2^rk;q-o$am4_)2=X#d-Be^SU)&x90%jJMeW~=Mzsu& zE>`fHu#V3nEM^stc<{4Ih^>s5G<{7w>Y4dW%7^MqNp=4ZaDLkFDh7*V0c^v{jK9DG za2mNBbFe1xsnh}KW9=V|&42yiyMuoX78~=4F|&<%gc{GkXO=*#e|Yat-Gk}Jv*7<8 zbbzmr1^ActiS3V432f=s?VxQoftRlYgP{K|JQC1O|2+E9e973NP^xFs9A0*q`v^Quj z?z69v?>S!lmp>#LQ}{BkYZ2Ewi-_uH&_7lg+F#D)GaGPy5dUfLe-s?JGp*YmtKKnbCNQ&SJe8yO z>p#s%Sz@pnwg28=9>5X!|KDWp-$W{YU&6fqiAbyG38She;~jcK)j!gpk(NOv2p{l@-P8xTEymt(>i z#RDS8t4(6ee-->+#K?EeZ}G2RFEe|C=VAhDc_#xv|Cteh|LXy07@+(HrT^$h@=K(l$gJuE5*5 z1MhwM`u|;n!5qMS!T&L60lN?7{|xN^y?O6iz-x2FWO(4DkteYH4{N>H+K{;4RMz|Z z1)BeB`24=j?|dH_U%&1wN?!k*^3!iBFLmwmg#IDzyK_`akWR+#AbkpQkhP zXBF___>T-uM!ndMpDs8Hp7I*$RWhtWQ|Y-4+Ja!M>%{sCadobr-J($hr(#lBE;7Yr zI3yA`+CcV+XRjkhaz-?O$YNWSdj^rwT*O`-9mW!~UMY8p55ZTF?mfMVPrze}AqxL_ zGEIBEx~*|DlQLP8K3DHz@8q`N-{agHwuqgg?Qi~;QGc%y=89dmEFOR(@Z`=xz1GKi z?_nO$XNUpL!)gwDFcV;Z;(y;9{B_V8^BQwJcg4qZR)0ZO1D&t;CAj@ZjEMX30^Ua* zfJHj@wx_kf)0*7+7UO&e#+%a9*|g3lGpA(oJKDc>KefuI;j6lh`F|&{zodImEPj1g zRzNUO2#B2^8x&{ctVV+fUP@}3%YHDn|06^jx1$|q#f+})Q5Y^wz`Dg|zJyro$3veBPb@)Y` zC3GPE*f&SEYTeUXuzg|sgPmjfZGVaEf4O6>r?o$yB@gJxF4jF+KY#0QL#^1$hz%b~ zyy(yUYx>*wKhl4UT#^EToe+cV;36yuPz?U=$otY z?cXy`$tS8DE=J9<^GWR{=zwZ-vO z#0MFCHr7E|DE2dKQ+KF{Lt(vIBM0b_Z2FUDB+5&#k^k&@d!*0T4rO#Hf3m8a zcIpI1Su+34{B_J{<=@+oNb3zpu_$&-2Ll<~zGh$Wpgb=&C~F{o!3GIAqmJ^7_0YfX z7)Ic>qE%+aE`?n`4oMwU$A=fKejYq{i@$^a)W!8kBY?*LM0n!=#TK3$PN@CP1YQ|V z+XifH4Bu!0ZHz>|72SGQaMs{IT0oGm)}MDxETH<3=telQo=2X9&rAkzZ}zMYiZ6ia z_C=;Un_usTwHMZ*4ZHBWoCxdAga@tupOu2M4(lXzqYFk}9$C3{e(T?@nXLP_5pnc1Oc+ynJ5I^JRw7_?IVak+NT_KbcYGFSOsTHlPg8pl$0R9B|zt0YSHh7h}fS)D;cq4UyUf?&rySwHv z1K@tf#)EhOC$k#Z_U-StwrKqmPurK!Ehi1}zYMb7S?E^B-4M)gIE*yO2%8}f@5U}Z zj6IHDM{mt%#;U8;``sv9-ZSF&B6WaA@lB__TT4;f}0hu{%>x-RXXAW z2#Q6r^MK7)@NUjY)&n^DxS+f|0TmM{UeE{dG1$U+0Ls@bhA3Q$7MukBufYPh@~GF2 zoG;Ivtu#_so4pj#&G+eR?Q77VUgvzjT?eoJIWWzE+|${-dOy}4Y5;lw4#2yAJm1X# z`_s`;HiHFR?{p15AICi9kG2kOeZRF%`?mJj&QW0g$JG3Kj$im*EWO95`a6wm@o)C7 z?XSa{A9pb~?6+)Bk}tm2;1AUPn8vDK=OG)OXMM?S@GOmGd?$0>IrWJFBvUWAawNNn zxRS5Ifmm=08Zy$gl$|j&2mecN&M{&tI)pOOYXwWCXM2?2Cx?46V(&C$S><0$6UZ_NGwl`&H(1Y{nem zS%V)9UZMubv&;edH9T;{V9vpvRCxJiZ+m8UY&gsSxF4U;{p0{_(0Qr7BXxlGCj#&) zWBpLZmAOAlgCR4}to)IcshnxzDihn0t2PTv9Kd%O#rnc(B#&l;;M&pMY#tZZsBiu6 zUXRIl^?!Zr-n)ite~Eulow8XPQK_frOFgzMhsf;GrNx-X zyM;T#1EnRDY%MLrJIEbwVTfEI8i4l{Ro<)K&&AzSmn7F}SR$w_CQEzM_GkrRsz`i$ zYCm&d+Z?8{*Y+sfRM(Cy4{ypuLA=jOy+2!87>{bK9cNH1!e-4PpRH&4{Nt5y4uRU3 z46uB63iGsYW;Kw*nFTn744_~1=VunsN#Orwbe(=oTGlOx12Z#{9&dP2- zL~Aeu;K89^Nc_J-1n{p!05_x#&^PfyZGxQD{!iw=73rKCKOM9i?VH3{yaM@u8UH6S z<|E$<|Bmn4!UTnf=)1v-m~iy_Kj^Qc8XoZ7257zakb(PIq@4GDH~yo)$96Y^#|YrE zLp&yX*)0C>L~Q`;GmB~~-9J63 z9tZ2$SGrB}U17h`2=cV@B%B5K89bdQawq3hS$oyWtJVbC5DVZ4VuOd%8Y}Ayxu<4h`VD ztPS=FRs-Ir|8M3CzQJ$&A?5%*%ILV8I)GC;KWiV}o{P0W4sR{hdKn#bTgIRB&#be~Ow?A3plP5D1R8o!kb^t7wN=>Hef(G(*4<11*+@m=BHBj+QE zup&&iF?XEAwU)&jZ~^!~2hXVahlv1)elr1+{}=q)-lj+Pz9NM7$j?nb>)DhZVCLj% z$o1p#z?=@UtpH-}!&C#Dga)?#FbCjpJb^R#-W7p&=J-vB1ztJw_Q-Cn$6FsKj{AGo z{Jf03pJ&kkp2WZ7dLL7}Pm=97fB)P4?FaXP`)9}wy&XN^cC`N$2H&H4%yRwT_pWCy z`M0E(TBHJxB_AyhF+T zFo1~itl-O|MT~qP@`^>&0jiCqheTRxEk}OKPQJ@(&btd}3W zu1pmMXz*_9vNiax+5RFqv5(a3sAr_)w;w@&VydOa78>Qkuya|6HhRpbGFW^gT)K<}dp&?9TY@g5HV`&#Uh1}TxAtT_!;;l?nd`@o}p6R z`AG}H03Uxxwm0*8%mGU6BHL~Z(^bIAPnhh#;s7;=(aa(4b0zDaE{V@`8a;My)6(4e zb5sGk0152;<80zzE*PB+T;It7>3jMeZ%6gMVFAA_hOqyufaW8?zjeUY(@GWApN7-B&d@vk)Ki}&kNK~-&0+AQ~2!_R?_!loh zX#LL_dKW}kat;drUd8)<0NHOX6!BkYhousUvmcSr(Fz(4^Df@`KO+FPO$M+{zVk0$ zKXIIRUbLe41H5`IfXx4m#a}u=d0f01yQBYk7KwutORNIZI1BiEy!`rAR>A(z_Rrc&n-lvxjOVaB&t%J?1uz3I zz>e_aZ$`FjeW$ft`;7MQ+S580km>gfG5;s{bzkg!lwAHbd$09QV6~5}s0({PF`;kr zcOM*Z4XgjXe{gPpAu2!aLd1j%#w0`+3?eG#vZ12yn>`rKq%;71vWrsBe|q<1W&v*6yR+AV$v=YyuspneB@FNxqW*gl z2fU5<2b1UVJL0@ksqnr-@0IReSVGTZ0o=}7pxbrkVm0v3wpVWdv~^5t-qtK^%<;%T zD}Oiwr=am$ch;FdTBLhZ_vZ;T;v?8s7%ne=5D}aQ1-^HL7w${mM^h*{=~20sX9Y!O z9_#=b9wY;3ChbT?5-WR+8_NH8yMOLp-CLKuuto9peI4X~WAHRy;qRgaT+gWZ2$f+L#`Zsq_2GWUsvr9fYkq29 zh5;O(!L#FA=^E=ZW4yEgt=3qz8PDP_I1N^U;>hh-2f122U?MZxK;)-hcV(?8Q{uYU z_d%Ig&Zk0q?i@QrjtR>Y^3`JWVVDtUEt0JL=^l|3wun@=)k^R31cd#(m(0^xC)K;K zRJG6^`DeyNAv@K>v$~kF*~hxlI^{4c{uc3z2Uox1Nz6LV&lAvbFG1J18m)H?@UQ&0uE)Yd4$uOKT(5|} zRXfc9%G{w9ING@a*7MGM!Js{!ze0a_APi8}fop=9CkM0?a`Ova6rz zwQWuN8{DT)?)}ear#T~?SlTeDhAx6h*1_qv@g;L&-K?Fks*cb(O#^R+SK;*kE&`)gAR;t|${zXu)Q z=^_5FMgGq{xQ=>a}d-X&MGEn+U)?-35E6-~s6M*Xdu}f4jdPD?6W!)_*r1z-IlDgCCf}1ta zM7~1w?=tRXR&r_*=mA&+$)4OEHTK4bzYx5o-@n+KI@V0VeN46WNKUQFDIN!fJndE}|PfpxDsw3hOy8+KxTeW~fble^Z|B#bg}q z2-BwOs%w4~{tpHJ`_Y;$IL>WHEV19>`}-NT|Gn)wJG6@E|_FD_I-nPMF|fszV(>RQOs}{d=CuP>T`!KZEL!s|-C);y=K5({{*4kW!%U5xx>t2O%-p<*9DuQ`;`Vg^ zBZJ9g{9S~N_W)TyKP1v~D;WT*k?D0Y*4{b2|6v_~cK4fT|F=*D;4J0<&5s3eG%zP5fNOg?-nxR4+!FGzu)D| z=nai7F#1|6BlTvYdEY~%VLMP_PK;~aFNTdT2aH3vHw#E~$Ajt$wvT%ZTwf?*Ee6u4#`nAeJHdH|*){|_GGe@A{FvwzGA{PM_v$lv=|$@ORL zi7@$B!N2SL-9`T2!p!7Z2G8CnSlRp4{`%B|xsCYWIYZrW7F=*GS>j{R|5xb$7x^Pg z^uE(Qkr^e<`z={iv-lmCjWMo#cX&b zI(fkKJIN_EVi)Sg^eGj}3mOAArvdY+%X zUYN@N(KbZAJWzN~T~T!u-<97oaRhrVgPCvOoZWec3~Af!x7JBGC*A;i=jX6yo{V=2 z7v+o`?{RWRGy?tqixUA{mHGTM3I9bAF6cQ)%g&g^!;|83y^CS=ATo$=HGJF89ZIR3vcVdpyk$JMl~KV#hwZGY?j zO+f0LNIv|nXr7xeULF6d+IKi6g! zz!KnI%V*7DJC3Fu*U=j1=BLNL+QwJ{BD-*H`~9|h87W_OQF`pFXGiwuT7I64rE@O& z&QT!T*sJp{)xM^H|D9mNPow|OK=XGckPV3e-afKW>t=j^*D&L62W+`n*mQUBtKP}H zpVg`IIkop3apAN2uMF4v)FM2UsNebc{%%A=+>G4+v%&w*dY?o8f0Q-}hT^fuy=A-{6Hzgb(`aHfq$ryeX%^A&+dmiEDepy6)xiA;+eY|F21kd!mTD_ye zW;AH;(6CCdq_&`5F8;E%SS$}Ea@HS7WKWsuwcX0T5oz*(^1S?veo7rd<$dsOcBGQu zPew^&nWQ(V)a%{UHa^UADR#8Ak?r0mPa={%ybxBhuSQ(b!<-S+hXLF#`WM0fza%+8 zQ}F=4&|QMH0KPF?4d^s9fcFm8$KP`{albS0^E`CW2pl8HY|KWfV92$?g|EapJ1!f)4J<&jRinL`%FcbV0FDCt zr;r11Ikw)@XnR{z=jF5gkD~wgdq=@dPlEj$`MZfqpgVOw*txnrwtWnBz>fw0A}urj zr!w+30_#?pGAC_2w9^OC01jsaX0$hG_MP*36W0o+>zIsi86c9<{gI&VabM(r@UK*L zp3%vm|29})%24}n@NaDnEdZ^1kzAfTGk{kB|K`lCN*~Ms9Ie^M!p|H4-;4UP`b!hY z@zw*JK(DRFwKBavpLU!>>|MP=e$p?Ht)#boNMF*|;68Fc$GAV6SE#e|JiMwoKU<(* zT?Pm20{YGWG5VqoFqLn1!XL5=*@4s9n>E<}Yh=gPA6o~uf7M=}NX}j0|L)e zO}alIFYNEV?OEIJ<^CtA3wbSL;TY;cZ-Fkj$zbupFR1&mU4H>$LdW;!?tOje{a!fuM!R@&B6QY zH7LXf{c?nDO@tuViEbkYmL603Q(Bv&!iDKU*#!12yyL6S&@EgNT_O0-vyFeoEZ|kU zdw0LyeGjVvKE`UmJMnA3(4TFv0l)OwFu-T=``(TIe+|F+>#P&D?0mh=I&h8et&yU^8b!SvozCAJ9;wXZX-Tt)sK}y)n0hxpFkEKh-8e;9=*On zwj*3LyB<~i02$#86BOb-GE&ml9M$Zx_UCD={c#g^@1&vbAOBzM|H6M&0!-xY<3syj z`ERb?vZL(($oZNBl(~RmfJlB>Wc25;LkqzC+g0hsMrb{^QiWs>P}%tFqNh|3YG9*g|ozhQ-(smE|Cy*&@_%3j>r`M+jgYXPi})ZYQm?2c&v+GA7reDcT} zBS*8!-{)E9YX|DNTGQcnIQ^^4`1@058&>%}sn_lA*1sBya0N8~2k`x$&5Dpy25V6D zvomR{eglcMMr!w=$b_68gXK{gU_M-*MY)%Gi=pGC+_pdgO|kSi)sNM7G5b zSn;uF-||9qVXrGYB*#bDDqD!oT7jss|HC6>Ri`3urp8RLaKm$vh@nSF6Y{dZD;;R z{s;dP(E|=9;`|u#uss=_9uv78oCm{^a1H*$2ckcG5rl^$;xD28|NjSjH<1;x7PHEod!`Ri zbU4;(1ZEWaSs5lq3T>iQOt>j0gH-XU{BrYn5$HD=w_eA!1(RDCd6+winjkMoQEv~+ z1exMYq!s?7H$?&1>@dB z4WV>_>b3k}s|wHlx8L*eH04zN9N~%dHcvM#$XV6zSTlYvON2{;dNr|lR*DP8Qm1)a zW^Mm@xEkmmdaL8@{Rz3Ao00Q(3AX>`u)vLEd|x-%Z7>*I*k7c74YuBwupC}yZpb5K zi9ODkIh-7zQ`^63ZQFXCh}+(bHu35T)YH&5WB;#(OtnhwP0al>8(!~!5FiJX{vNdJ z2~hrv=CFd_$1@O=d;Odf773E_nr~J^+ddcl{}OcG@k8wE`&*1H3}7a}LU;g@x2w-C z^?%HpiT|(guSWlWt^GoKu*X4IG3v*+#es<(=^1oe2N+6OAPU^4V4ImaswJA&yRw`{k9iaS*wkX<+&&gH47J&oI;VWNg z$@e^qaBNyp%og_biKK@)GLe}^Bhz|Xib~+;c7M%^4rk%*otIevPgB=*9aaN96a3%I zTHyB*?YSC%&zQlN`^)yf)*IJ5kKg$h)P;M3zo)PnkHY>xru}Mb*H*7}-#eq+=)c~7 zb4~O(O+q$(lCgO!mhfj_f_VSMLLlglG*{eOcY+SLH2g8kiwGl19Qm)RD5WXaY;t?BK@+sm_>+iht7vv|E3t?t{b`gsH^ z#9!8%51-E~{iVqS{T!bE6Y>8YP1T>h2Afm)^Ns#3{r!mue+%1jr1xd?$km7`WwuFS z(Qzz_GoD3`_^-Y0FIlKZK&v}Bwpy@}^clm!mMHUTxq8+X4z44`{Z9QNwt`2iHDrxp zIY9)9Gw~YDBG!WvT@?Ah@jB|aQwx}Vcvt5%#;>mI^yp~(L3{A;`{IG<5y7=ue{`GD z4;r7K{f~FRGiAxL4f9(J43v(q$Fuj)>7G*Wi zQ&|moWxTjgQ3r6R{%!rg^cNazj0fNvqJQ6|7Qpww|MtlLtH}1a1^g@jUm50zKS8$G zETl)Ta|rVP@YX`DAAq>+822J+J&^C37+WKIT=!#FB-4Fh@;G>*G}pp>BkLpkBkiNz zmv#`WN9%9&{=!qq)gWtayxmv8HK%cJ^Zu+$9{h&^^2xOTBCp2{ZGY?kS^<0&_$KlH zd>`vx8=(2iY50YA&78*u-@&%Am2=Ysr)W8hZ#Wn|93$*T9bNzySIPb zUWYnPv+({I`@bDM;DyeIsSGiD@5{YKk?|wce?EkYko!^@?f^1D4&~i;&1;@C+qe z#&I-cHTL-ABhmA%-+64IJl=4naPTh!WD62)mn|!OSP3bbqSJpEHX1{#^g3A4EWSFw z6Q#jc{BH5#<*wm{><|9aifH;C8E<0ZejaD*;wvo4o<0WuX^4+8jw$=S7GBKGEy5lH;lU2U!PT8Ghv}iTu6F8XzyB z3GBdJ@2jW*c1v%8-WNIRhg6BVo4-dGF*7^=(>{>=-?LkjT7N*(-4)4W?fI$1p{<9x zEj*wPY9HcYkKz44f^ivnofv*;z{hiLb;Xd5SU zuO*QARwGyQFAG3EaE71wo*T4|gC+DDC`rACIzzOBSpVX_HqXdhpjr{YZ%5~s30(Vor=dr7Z|Wj$(fWPs7&3o1?_7lR7yozQ)w!?pqs~0c z3wu9V;frJa&xOzbP^x}yPrc7Qi2ohP$j}S;k-<~_gYo}8PUXKhS@Ux%vVRsCj<495 z8F^yX5hyAgm+q}`-N>&n!AIV)yWca!zZt5@$_b(xgqJ+~C=xpJ@#o{(JyR8Hhb<~bsLX~7E}yc*iR%R&&q4s4!1llH5}PZUxM7Jr$eh~ULpW{ zvKHV6i2y#>d$YF$KAjVo2|Ne&UB5!@pI@^Qz%R)C`qbckgX@R*AKN>V^S?`;$c@9% za#Lsb&fnWqjc$LnwOy;#x&h7GHRaZ1)NPLJ-x{6N+5dX~zRG;lYmh-!32k)Vyw7-l zH~zH(j02QMAiUrw_eCENHPQLSN}*#tVvIL|gJVI2a$meRTX_ME@Tto?Z{M1k=F%Cx zFjFWig~YB`&yNid4L|5NZYb(=OxQtN!VG}=#uD{>9!qO(U0o|iB>$(d4fn!BJTLg) zm%9HCfd99c`@0$0B#y4C_v_emjAm1!1vl!qj>(c=@k;q>^xkUq?*VJ6S*Lu9v=YOG z@*4T#^ZkrrWnD&kGx~#fF&_ypa!L+sb$dNg;t}FsOq86A9pSa~`@Nt2THnS6!yC~> z#H5(hhKcR&8M#|o2VP$$^3KunBj?osO5(>}iC&N=6p8QiYVhv9NO$)(tXi$G2R_&E zgFTBa;uYl%b%mOL9VStqael$_Xl_@K>%CL&mfp{p1uzZIq%lx z^>}p72eE|BPgl+<{Y7!)Up~dpSMp!wfo$^us5Iu7Z73!e8iLGmI) ztKS$vwlKkBLyU`GSMXkuR%i7etN$)G%nxX^|6pBP!7Vm_$$b3-jfD_Bz^b1|8D8;r%3uRUFHd7kNVRpXk2G6@l?cY1p|G&hlKg;|t{>5^nk7F+kAUcA3$6q$T zY2=r4R?WM0jk?Td_ejTdqbj zHQGicc4VfQDmz?$m}iLpWG>b*-Xq9L?t%SC?oMR2=jV#WJh^lACFu7mwxapuGYbAa zyEFsYGWahZ&6)Nt-?=~iZY-PZDea*cz*vG>OY#!u9C`r1)cs3$>)v&}ANAg**2^|% zeRIO`mon4)CFK8W%=TK&wdD$rP%5 zp+b7e|ArOh16gHp?!Gn}z+`Nnuh5>eu!i)F6kdaM@gCV8Mkw?b(q#v^AoYT(Zb;6M zN4=Uyga@m?2vM&+xkAiS5RnJo1iP%QUha2W&1Uny3 zjLQgG?m?W~lKdI5-r&FD<3YaH48Fv%UWn+-g=;w>tB`y3d61Rb8qqUswa5*ldA~#j zV#ma;i9D|Mm-jK;lXHXNw8OjlB=R)mJ=+tz!ECSuv|~acBF^Y^(!10}sH7t$yobMwcVi)#o<@>*kxAgT6a{ zX;=L|p8ca^;D!9?0iriswESrH@dT8l;H?P+II1{e9fq3{QK=(KpAbvmP zzw;B80`XS)GRI%-eS3~MpefR&pAj*CH3u;$JJgyl{p8Xf2VXuA`Zn#%1kCH;Gpw$Jpm=V%46AzmmymOYHOT zjPIk@gb8hXBk99eRzA*}pU#x_p0bVS*;>yQ`=wj?Uv{uP@n-m~zk`3y`q8JFHl?1y z2iP;M`-ScwvH$-cW9I>GMR|Swd*;l{x%S>EQbn;~uOKQG1jR;GP!TKGu=j4P*ih++ zAiX1qf>P|gM2#AaiAgjXO*BR&vE*C7S?tUu?f*UV+;h*FGyS}4?X~y2-~B#Q%ma9J zJ~#g)-$sgms>c5Px%O@C=bGlfU+aVjNW4x+%GPUp*hbjMWUqt}!R0V*G zD_^N)bytfg`@Nf5Tum* zpr0f7D7?4rj%a}O)eF*$q59lnq9C}tq8 z)V~G!{?uo2-WBmo^nWYq|Jzgrw2$KdtI7Tk60bj}`2Q)g|1Z`)&>SF77c)Jq&`d7} z=1*sPWDhCN;|<||vJ~S?%>sHuwMTXJ>WE~GDN_U|3iB3lWCO$+=- z3?QofG9Qrb|5nif4xIH9bAN{Fk2!#i`SAE*0c-v66e1?*ErB68q2B{9;6nA%ep`3FvVZ5w{$D7}KQ0ECqhEAlfq&wEYi4(68|ULR%kO2%`@2pV z;Co5`r?oYe{o6$qp}tZ(IVk^0l_NT9Ug*n<%HQ~wkzoo87y}U@H)gO;@PToGHMLTA z6wl0I%>WwQroj#SfG)RpFtnbKQD5}Xd&G;G0SgL4gcamGoB;+f{;-a=pzc4kMI}1m z9zJ^$Mh_|3ey(;hNgOasD&U@K|LWS+(aCzr z&nl}a{(q*_CUGbC{xjmNi!#sdSKt5RvP{RQmAb`(RIL8LGC**Fd;ZY|w*J-#@fwPO z{euG{60pA_-4Cj_;byh^ma@c6!~o6pj()&xWc}TzNR{7~LTF>XGG1v9eM7Gw5dr4~ zgwhA~q51I&+N}WRfqpYUcnhnpZ6rNG4Db+n-sB@v_q>D71y;#5GXBAK+=aEh@ej_e zlXzBM7Ytzz`PX$E?{M{f%u=M~7UfxE{rNjkzX2XVZ`uDd6#bi_y5Cn-HcBR{?%#R( zEtiM^<_P^0qy^rnHd91s9mW4PRQ^vhVSk!(L9UkS->rxNZdcn+@4iv3h)$aMXHs@> z_JQiibyOtTnX1MG);P2&hyz8e!K<qQF5@M6%e1)=yid2f>&x^(^QIi6vgw6gEHy zb~*fA;~&*v{s0w$I#6Ql*h@wOgl#4|;L$ktCSV$)iz|-|;ONCet?;ci0=j~8a4$xp znTz}3iUaR)E?fW5By8)uDiQ2_D6D@jh9k;>p8`9UIT5}-?iB0?18`1o5Bi<&V@`#S z;ef{465pTt1}LYk<+-vyalgj@jMH+ZG+$bqE&M;P zS)Qk8-0@JIQv{dNfvVIda@^5aD`-2UO zcvZ~g>o`F80OJ`<$oq%~1^OK;a%8jxP=a&5RJx|J2~WU03vg z(6`@8{2Tp&90OT1pReRzd_oH7H2n(TpD_T80O}>* zps)HwZju(ORj#V6m5fO?RQzwM^0*dD%S}*Ez+~Z{`2U)!3A3Jhf}5)yJgH33`_%{B zP3>S`EgcjG{94-J!2FNdFj<86Wd9lc*ScT;6oAnI{*8Iwf&Fp~{w;U_HJ~T#C;mHa z-1aQk!BxYoxs89UKMEGF9Lw!~z|w}AOUm9u&JwmZG&yHy0iUo@Wa65u%r@YP%!C-7 z#5EHsnY9P}fJ8 zXVyP@|GKH=9U+U-H zCF*aVs@D#({PxJv0Q3X45&m6aXeVib=28b_|5NvOCt;PE01a#YxjLY8d>rq?`nOvV z{s30Lp~ZKskSIXJ0hkAz9>60Dt2;&7o65i}AirEdc02|2kz@SuBKPV0ifEs$e%!M? z0F*zB!ptAXOKU9B(;h75r4L{~c_0VtSLh)I=qoP1OP<(z>aD3I_aKS~8*orI;PUWj?g-UQsl(~PU|(cu)nF(cX1I~HR<3`Vf;#FHa#3VW`j`)wi5 z?XvVORRNxwt)cPW59H70pXXbu&ck`i`@Tq3fbP?{kNs5tZ%n?sdV99dMu}Bk5%#CZ zV$2f*jL`VejjL0Vt&?e$ohxsu=j~*no{W>D3+qqIyF~bZOx{0LFm1hT@vZT}wJ~gD z^SBe z*6AOKC3*?qjqnQ01H2M51pj*%%)u-xQ-%LarNGF&p!PEP7)R*y31XlTb+6QID*RWH zAxXXZ|0hfTFBX%d|EFs9pN&)%s!sS{PqV^pDE6PL>fg63B6Pgk#LZHJ-DUq*$V+5S zxZ5=M$D7I_r}|H8wI<^KwlrW34BGc(U1|NTR|Dx-SlY8WfHur~bA<8iHs3I+hsDP4 z=a|Mb_&_&DFCE{w9}U!kbldefm)G#gIe1{-8o|n$`@rtAw^3$x3eU#J;YzI{xO(1k zP4>OP99IDPgNMLB+m&46`}E!W3aHUV{)73;9ARGM$(U1pcV-tWDc0~TN*^kezwJNl z!2RI)8~u0{%{6ZO{Pd-CXN~vzd)7tuULVW9RQ$hp?Lv+Cx>X~9$I1UcO!dFU=X(qP zZ8ZL83+4Y!RjZky41kB#W(HRq3IAIqQ!0C@2Ea%~0FD;=sWN?3(Fb*;JklBRNN<-1 z>Plev07iMl`f2spV3ug}ytl#+Z-D=$-Df)^Kd{5rd&$oIOznTTdfRs_>^peIu9FG0 zl~n(ZIyWB3_66b_3;(R!LF~Z10LH%~_zk^$$Nr3e@E(ld9>G|HXMm=N{hJH_jK%Au z%-k`026xH_-)E(Lw-O5c^NFWWF8<`_#QRb=m@UdJeGIHj{813sIdlz*ixft~*a|Iq_rFTnV>6|&`bn+=NvilXHj|DeOI*vN3p zr}Y{&_8N>dd}4S7w!p@@0vN|;0c)YjIijt9V8qvF9C2jO%|4(P&zVellm)Q`qtnOW zJn$M7{~cE3|J))Dd0K6TzM_ZKZ!}HS<2J93O*T&^RywE#*m&vAp0YJZ7A%1Nq(^F= zmK(H|Hja)3fwp&Gme!5U2j4{eje5uV{oc$F-!{|$CbKhW;}fieyNE1)-g1bPLD zEqES|V|7&z7yTpci?f4w>wLe%it`-!6v(!J;Li~?bWdOGX+Oc+b3C@~sA%IbG2rcr zyE5}S{jvM#Dmsggk1z25^SX^RUh}KUHA%I4s(wl4`&v@;08Y~Q|5PpF&*?SNgZF6O z&nwjf^rjf#Zp{jFhbjTzB~{o}eF4wqC**(8%-?&d`u`PDk!=h6kLnEN2}bbdLwjQH zQN)3B+cIpWQOGyoIutyu8D#S zdn5)43tsvT_y)mYW&n_DuLM@~HJF1y zuFqlC^7Zm+{t2(a$1!tp?Y<*h{1X3;o8rw7`CCmK;L!|?&pyR~$52*V0OnCqUYAtG-15%^Cw#=?kpTsg*{qgbu7%w(UJxFU+Z&m-_ zxXS*j0Wx0Jr>D?=q|i>^-yyPmBQ@S^zEpr`{V7{`Y1=~ahtF@%And-;@1DZQ7Jvg- zf+gSpn4qJg3}ci7f0NGMY^650mrj3NGueF9J~-J~xMwC1X8t1^n7qGc1qVP`XvTRiv0jXS+kD=G@W6U$-&y0e z+(E-kAs>_HxR+3Vj}+H%DY3(gb2I+}^#G^?c7eFzg}OB=gDRg^E=zt&PEsH4Q=0ed zWih}^+5aWgAF3y$ze>+l{@-wUg2OZ)^rxxZNGeRs={l9OsvDtyy zN9pxN|9>m_|MXIOtclw%?bsRTv}?EJ-~nP)a0Mt~0b}5Ug{=dtv})|Q``?Yz^3`qM zb`d*ggodwxeGCN-#%y~-Uj&}R#)2TO4&+dAgYiEb>60@7!8+F&{1EszHoYf%TX(Y; zxI;tu8l1Be7Mm-{jzVFa0oXI&?~bGLoY=-!#&^LH@PzwP%!-_k zsHyP}uWhPdYdbOb>6*LshxF)dLiSa*dw!*AzI>w^07pvk-7owpd1K4KU&Qld779&2ay!jy3MdT3PV7`*@3(Tv`27HXzZ@ReVLOp$EU|mE$WPR0bz2l76b;_^jspdr$LzJgS_|C#rv~9;11oPStquiTN(7 z{P}Cm1O2>agqWbJFz2afsEhjl=nv|lIiY82_P@_GUhr_`|Ka~r{mbeZYfKv~@gKI_ zYq7qrZ*TkWo`O&S*flI-a79D{1A|6`u^(75;&_E|9Cx?3V2$i!8!-(nrS&oUVR4N% zUQx^I=s4U1hzo@fnM(E~%o$t{I5ZZ0Br60mi%{DBACUmiXl>%Y4RasIFcbLh?FsqG zSUY%)nT)$C(a$^1TjHMkvJzo?xQ56-RaVISVccU&{c4>w0(h)y0PUUKm3@&Ns4-t} z=2caAIa*@?hAQ`ei9CS8iuf$c56-7#S$3x8|6C-SF-|_f!op_suYQu8oP1Y#uySza zkIFtjTMC?U|I9XbxV-SY)c5yuwa2s64zbXoaj{iy?+v4Uw({WxI3{5HyB8o>g8vPb zzkL8^!o5yhGf%9uk8p?{k7ylUKvP-yt>ppG2LS#-dvkFDwSkO(&k&CPj@>u*w=8sm z=K>4;Z&pDQ1ix4hfPb$c7SKdj*-04OPx|{b>5>_$k$%)lKOGLR?RW1TwL*9%ekx{& zcr85xbA|g2!GA-)Aef<>RQ^Oo0It-pz+8mPz;=NCA0}mXhPYwA^8b#myjnRW`7-IF zSsb3zsK5850iF<}FH!x^E}Hjyfbzj+=6j3%UsEP1Gk-p!Oz?9x0&q{|0e`MY@lkm# zU!3*MzEpqVksALG{)t<8oC!*R)@Tdw_HFE06F4srYYFCPskWD)0j%-;y~o42j|)3% z%o!;q{z6|^WkkOl$HDHyC0vE|J(`27K{s&CT!qmB+BgII)5pO0-)6zNH;lX6d<1XsrO za!P^=!!`aVt!<|<9~VmT&DH3? zvC0NoSF^pf$%kZLr6;B6)(rfdTk$|xMO;_T-v5+13=eP~A4*H1) zgcdL}G!fS@7f(mAQEx^6rm26VkKTv<_x%&UcaI=X16J^QwsN$@>siaUZ0%lzRr?X6 z7x0iG0ys@^mwxhsTmk41sWEagPEjAkEY1COVC4zT{q=FuOFcNtrT$-0O-JScSYG|2 zdSLogdXi>@n6BFYLsk3p+1g8r0lcb=upz1du&=!TkCYpHOuoMA|MbtkQw_Q9nit;r zKUA!=9{`?hk*q*LA{qeuY<=zaYeb?K&;)MVVfk!HX}{sYhs6V5!4d2QR*XgC-0Ir> zaiFC{sgYq$akS0c<7;)K%y!Sejv?0wA{^tt@Rk=0T1 z6(3jRczAVpjsH6=`Mxrv(z)_m<+u$}4luLK50DNxQLSx`&_7SM=qR<@uy3^DXxS0L z3q8PRNBSK9hZU^x9pN+nog)++5%{3@o64Uf#6E3=NcY8ug(fzK0@$Wd0LDMDI#_{G zg5W>q2x+zw^Nt6i13VY-s`@{U+^{zw7yut)OPy(d;h#ALy69Oh`IKkO`TdPq*9_n%${o4ipSZvKL-Ar-DF1K2^wRX5bf4`0?EP%B{Al5SN&cBC z034tmfcx}&->*pE2I}oOHUC^%?-_0XYxNZ0F9w()t+=>)o$CKTDEzOUEUI*^{6;oz zV1fQqrTob@y;Hd;%cXozm;dQj9X2dlb|_ve0X`Z3X-{J~)D-G7Hw} z%6yw8E89(orf1%9Irr1U2K4ul1%QGe{%=p;y#sgxp#TE^j{dRabdMv-! zpa52l3W9%n{~7n!QPsH~QhfA0De=;4kG{~z`U!o{(_yQK_JMtnZ{-mE{iuLo1^WW9 z#Xe%cJLPc=7Z-zn=3$~1P&dV7`X~Z8uI}Bswv~~Z{p;D}!0O$K;w};L=g9kiSU$jS zs=K6f(!(_W&&3)G+FLE)QB{I`OA6q5`2a&}Cu{uAKQvqPm8uB!`|OHrjqJg+-^%*G zQ~+=mkn!(V)OCF3KY!HJV^p0-@Rlu?@2qK!M(}FeX3HFUH`>2h0%Vmo5!8Ve{u}w` z23u2(Z#02L^Fu?W_#W`KUsM`&*fhf^MIZs<^QPszhf2cnJZ>^FFPQcrE%VG$@jls`hT8U z&0O^#*D3q=*rajtWTi{x9jWirW#LYd^*>I_If@59S+`htJXWoezQ6ESqh*77FVX)G zqVev--$&t>J_2^%YJk`92D}Zqzvs*IouL>&Cs}Nwe-W3D7~tl@aZ7msJBS0w_#=)_ z6ptJM`Uf2Yq$d!IkM*|~;LnW<{F4D})T8*lKT05&py9c;Q|#@a0{?r-DvvE907n*f z8yk-OwtWZNAenph`@lbp0P4+fY()+bufYv`Tj~a$@=-@0RK#LLQGTr?|sykKt8$?-ybWBRi{m2Z)urkfik8?=C0K!t(z8U z+f4gs58GAt^uE|>T0INx+SrRN`RuHEYimB+wqj|GFk{%!Fp%ebAwE+Ni%6aS(@)Om zqBZml*9%(N*F6D_1lT5*48s{XkCDo?n_sNcLn{O;l=u&pD0?T&X>rwj;vW5cxCR#M z80-Du18>E4j=}Quc}}jb>iJBFMVhh5GiWE}_K?*7;B1+y|LmS$sPX^rX&&%aivL|B z@BbB506$yReeWe#RSJxzfC43=Ok^CrImdu&#MCUX+r-g zvi^)Vy~Vmw*oM>vG)Gn7Qe*4{Q-P~-F23$ z6=R>O$oF2te&D~Mr%n{0xnh9ZX(8jMj1JPvhbI8`$pCN`0QhGFvHb(ozdZo&XT+Oj z;w;e*Km>phK#TzBSg4xb8hJZMmbtf{Kv-+5ep_`{LZL!B58>##yucwLCx49)sEG_ zCJT})l>a}u(zLQby>pQLOt*3;;(vr+-j)tJc2JV`wOkJn|DQ!1ZTu2u!W zbM;#;Rpf7mvN|T{{hQTRs_40?MgXp(deC)h2@6yQ{vAaD=P4uXHjNDFqxkU0nj5rJ z{Be|rG_jxABuuHxZ{fRPRkf=OuS z_8`CysE%*g7e*jf7U&9VXC^_DP&*Li!2!1E4uRvnF~Cww1>a_TO7N`UeAm``FtoK>s1{nke6ZS;cmi-sq@a z$yutTysF7!XBsO~G(jnf-c0qDA{F26|G;KwNg_(ipa zx$6JBN%6o-6#>{)BY?)M2k<9l0PU8&l3pc0au-FD7y}rskGAPH8upV);Zc|55OE?Y}&toQ>=#>|BCH*uN-H!1rEItUOQ)V zPXi1D?^s{MaaJ~*#SsDSDy(_%j~T$cWQ@We#(K#G_8C~q`Pq(V$8(G832x(hyaiWc z72q6;i2mF2H+z~-*Hbh@#ahJy&i!{L74v^|Rjr5Lr-x<}v#+yu%KclEf1kJ3IL|&( zc@L=e&ligO-dAf`8>3p!*C^BD#PmBwh~}uhysTxmsz>cy{V`dd3`+hid-4a(KRHO) zKT)j@^?$WSn!Z=}wCv4MvVpYT(t^>7jqyM_|BZ5x4$6&wP!ChE@II`4=?%no2PpP1 zTx#P6^?7Y6{Kq&wt90xZY>OA^dwMQPNYW2mg!!949V#vYMx7sV2`IIKp?=o&5CdLOKKds?@n3hd4Ij=$LtcE%4@8cbo6V|+1~a!fsH3plSA zEgai$eye(8s3ESo4)-sxjnU`4Mfiy=jZ)u}vF*MG`yRIaT!VE1+m+h}Uzk7Q8u*^4 z<~#H~xk5>dbYva-qMPh(nU%2quJReZDQJ+jWc$;9;veSY&Nq=>J0=~e>c73R`KtYW zkUY9K^L3To)m3A?E*IDf|A- z8Rm-JWarM8&pS~y2=1%8iT}_P z9s$sBUQpg!J=hnZ1`yHuU39)3^<2iQG9hCVi28*E=gGuUu5IWI_}MuQ$QCT#%kcxa z!_hz=XHPNAFQ9S1fF~IEVLwfgs zyt=P61Nckn5!pLgkNhQ7gS|vqz@xwdfh?_)-B#L^lXUxaHRTZxE4L+`+z0DNVQW4s1aVcpBfAKnb# zpbI!#*l(_vKh~NX%r3qXdr8q(z<=lNk-Y~8_^#Z0VU1-T2>dg8$-F_{&l1<+R2|0kuD>=ea%Hxrvr$UjxZmyVj@t-pTjM^*d#PxAfxs@l`ViuCkV@81FG zCu%8=7V3Yg?8f=3{+CtfCi^FgD|=R+mBk;R1^@qKMWCjspXnWG&Hjb@k2XtNwe7cm zU#i)L7>{V5;{fgvu*Hwpm^s*7!TddpvY#vl7^veD*N@&md*a~PUO-bt<(L=DGXO<& zAndmFf8ZbezojCD)D0{3zmH|~!!w-0D#Pdx{oop4;D5IwesGi&(!wGF&|Xi0rJ=P4 z(L5z1Kc0>e?XAoA(T@_G5DWnepal*pdP3*R12|jJe=>ji3i~G(OMj`fQFY&`2GFL8 z-RxDpPrvCBjpmrBT)m8K;PCWmJW(@zi{6t3nJ*xKdfM);fT+OQ!6#XBq>OXU3=?5tGHc-pinhpGM z;eWZ*|B)-L9c|rzw)N4%ZOQn~`W_yL$e!_U%!l2#2Y`QIC2R&@)?a4Y8=-c-z0erA z3@pZfX6GZ8=lcI8Zmso8?GGQoAdC>CZpil9E9^h)5WW50&i+8e4MJ;dCLOYk?wT>b z%qw!B<^p?I5rA{_&V3-pHTMqg&5`jWxI^a!SUHu?$r(V=`_D5C>u>Zk15;0F|B1?m zxJYV)>L2~|T*%Dqr{{E{MhE`B?i7sy9+ot#-n6m@aI(-pTpHj>%>jCq<^Y_M?V)&hFvRqbG$#sFTU-hg8i5Bf}PZ=f+@=c)&Ad3upzN#Gw%3=7ylj(4`vMhuuS zoQC3%Wo9mXo8KBcgrdwHt+jMkA2*;G2;H?rmppkEvyQX4G_F zI9CIsunyeAHXeh^JJ_hHj%AL*65HF4d+@RB2iQ|Fx~vA?;} zi#IC!w^|*l=-(BUA7t0gl-)l=uV*UKHC8=;ud1z|sSH@R?`YxS$6LKqk0WfM%om{1{44dpGXU%%1pb3xtPMg9G}eBM-3R}z#RHe92XLLK(oR>uPm}o@+Zrjb6Zhop}8O0F)iEKu$bsy*P^8wMQCx45Wu3_!vzyz{R8Fb zfA`=w^a8Afy{9cO2!sm)U+iz3aCCC|N{_EigSRR8x~&Hnj@Mgh0d zTu+_zC$hGh`=>r#pnUO>LjG)NfLYZ$)&KvGTi&u&bMfk$r~E^ z}3l+MoL|?m@Tjm3wc<1s?Zj-`^2H*d+3aI3}|Jo+u4A zN_~ze$@}lF*x#}G>s|aEs}Vv^*X><-s?sa@B7Wc-6kW1BGv<`i&l z-1+LfjVl+hp6kT_CR53M6;=yeBPg~4;H(^v`{b4L@Xkt~Ylc1S4Fu!(iEww^skH%n zz!Y3P`#47->h=)F2mh5Ko|lOaT*;HC;NDA~i>sp<{Yu``LMD@~KQ&W{A#5tO)nl`ZhWd?w^XP-bnSx3bF;1awC@DGxA(7PQK3wcO>(NN)#O5j!iVAl*l zWW?&HA=8-;V-0%27T(rB-VNgF{(Rqj;uclpqCbU0gjXXzf^hITdN0P z-{kqEv$8p<0W?$phl}4QD+g%r^yT#WthMa?-}6p|J(#08;fJd?=oTr&Eo(34SE(Y@ z_sSbRUZXFwsayB6`QT zeD}?}iY3eu3=r%B{u^3<-h+QEG&&iD34LrdWx(76(7OZs~0sUcrAQSo%DS)i->OE&V z&jN-5`SugY_rYJ_)t&;@fAwPB>Uw6IDPOa@qJNubH)Wq>d*^rMALdOo&%`Mm(?D6b@#GzfF4dy z(HOuR^Y;}2JX}%#q00RoroR!Y3Di;je`E4q`8t{tvS+p;ot&Pc4B*x)ab?R#+jcf^ z*;fuSte0&AiK_+v8JUKCwbd^pWJWEj9n``Ys}~lHwv6?2Mhkv+*wa9r<8T}a1Y%!} zPkZ@3F5Wqu#izhO|G9S7b4>RbQV9reAXu%1-usBG54-K_HV|rOJjeUR~BlFALt(>dvk+)+&4AucVrR!ck86J2U^2#x7IE5Uc<)G zKM?q5TdM(&3bZc}Tk;>Qbdu*WQX_vy>x}J$#f^k@uxy_mOd9QEWgK;um$XDa01-gemRjGK zHAe>egCpa=(e3?$3E%?O!y@JrzURqyl}9vA=ekqR<_Il#0Y^&*^id?>OvPuamFp{O zBsZ%H;Mrnxa)77kw;io4fF;#+qz(7ioX`U_9;~VvKL*J6zeCx7w<-(ZyxRV?AM=Iz z`S~{aE7_SE0W?o}q~O1K(UPsTjUjBU^HZ>pEJmEM6;UcIlSign0ay>)F9s*>Ps3Lr zkIn6!77g~D%jX$uag8#6*HX{_70UZrqMrZy`bPENE9awC zZH{t(CuAF_@@I2Z{-0W8iBkQ0hWd+sCj5Vt9Io2m^_u(l5_z|Sr2hx2#XTYXFHsaA zYJSo-Y2o(xt?}*ChhIw@FL@ylziKSN48T@_e;;u-;cBpy^?a$_o{G3_+yMW!{l+U5 zIhY5qRiX4t%wp|Ju3%eg_fZ#+`GCn11m}T${-Y&)7Bq$90C6Vv_Zmh3Z}m_7x6&~? z$QnPc2*BmaiHHo|xEC`3p91fG7vCG_Mz@(WltZB3{J?hX(@Eag2tAXrdN$qvnE{L^ z&_{9FJLA|LrzRgJUDcPnOsJow|LD5~)jCD=HqRDj2jsKVWcE`Hs9QDq|0d-E zoT>hRJ=6eSR>Zh-{x{i=gR=$kR>%L1M*sol=mrNF_;=31|Z|OmZeT`Di2Py+mu!`|-{cSrN{1T|c9)o!Pq7M>u z(%0aT!d}mJ@B-L2_I(~~yM2GN5Bi_aaUI+Xm^Zr3KU}Zy9?&ByJ@YFyqBjRY39G@6#eV0(VS1@YZj5-N0jUN%i4-s zUjJMD<{Q@@$Q$RkXMb0f#|?%5*-`+L!~!!4{NGqTp!$ns=j0ky{<&YCH~1eU9(bVc zIo14{p*TP{`MI=4TQs-purDYumB!FXaM&SG6u=B1Xw$)ihqu2kHSar=kh%q zK(667LNl1f{&$s(J)@j8w(Q2RInm#7lwi?vtADrsKJMk}7bi?X8?#`O|@87P`9D{|BY7K;6P-I{M%Y8yisA#!EZ1_L;zgxgM44t2w+wKwjz7K^8lP94}c0l zlZF2K^$WjW-CyePEJXlr(|FLs6!#yY`2Ps$!~Poo*IpH2>uPT*25@4&W&Tn&KskVS zD?YSSVJ(T)Sx18;+I65Mtg^YGkysfB_LvM@cA7Huy=$$int0-7wrTi zFsd2+HpxLZqDj&L^TYyIRGU<9Pu{8QR9P&`d#+j;(f=D{iJwxQ%MH@v?bRl&(W9T= z7ze?&ZTv5NfM9??x%Z9U0roNruqJq67mcq!O-lC>dAkF&mgpb&cQ1Y@@fi2VJYUhv zhy4x)aBn{~fSDVTas?9WsV z&{eYk$J7p0M4*vog;}0om+!CKP^thtrX0Y1)s|`R#=YbG*h;ejNaNecRoy~pwf9bT zjXi8f!|V&g0{Ftt5THea??7s(3y>DuSpi_xeIAZu4;%!co!tkAMk%*4KDkQsl8;Q^ z5%lw^y##5c2)LP)?C$n z9@5CaMztfMx>s*l9BaXmzF^$lpp!8*SHCo&vpu zw&$yQ|8M~~H_}}LgmXB~7>p8`!{DF!hB^mZwLwguuqK7aO z{Igx4+ap_u1)>p*DDWR@pI8BYwVB0nN=M#|{phJM3Q_6cpAo~Tlg7fnvumv@I1Xpw zXfRMP3V65HkE<}l#99=9M;_X?bBxeS9E~1M=NsWKunk8xi|~XTFSN?=_l)szY!93h z9kl+Z;*Wa;`Ihm2@WT4~mHMU=(r-2LZ*=ylvOF%*ynnw^_TPr`_qWuqJ50469#c-`==}6B@Q%+kLOGrFXQj>=__>z*f||>LovSp_c2_+qk8W&jPlw@3!%q z3wg}`gFg?ZJ<1QHme!hafo!q0@K3DX;{zQ**!cR8OJCV zbG%{>T@-g@cIIBn4!TLBGmomgtQ>&pNelJmJf&r>Y(F^w^Q+%g2Wo7{gV|P^6XxT* zy?pKPiM=>Gs^i5#La!0XrE(LCTi@-_3h*)drqo1U5M zf=2Woi|yDpO1SKGGbWr*2##s}p)5F}@#3R~`ZlVptHCz-^moQ)cnYWkw7pSfyU&%` z=Z8)Bj%%Zz3~wI|g7V;=Z2!3)EH{h23691Y%`L`d=#bzDpVRu@J^IA<>@R_8j*7*1 zPBcCKM!)Zdqnjbkk8mvK;~qB>vhniq2SNw%$^O41fAj}%PaCIuq!*;mr!AGcxm2@$ zbW!jBEBUvI^VH0t(R)w)}KhA zE#PiCOMk^07RjcbCq!)_T$Xisg9A2~lEDFSej=7xJq zbpsBSZJ{OOE8A8Q0RX4iIKBb@px?27tW#)z#;!O+-}cfB68?j&dEg%O8Es&J_o!-W z+kiZ4XTIl1;rCnh+nT}%fjkt1naLP*{~KQO8af(`1-jPLaqPLkN*ot|0CwQ)oQqf6 zea^v^(C5H4aP4LWzY_Q0zQH#U365(tqjMbHcV?5d49DR3{O3x|u#Ov;5v)=02FQ*e zD~O1R834~IVklVurs;vwYM*O_=eX?m%JDi&qdC6Kn@Z7bE3a-FjrhA?=pQPU|1rNo z>h6SWsj54?t2Xg~tiw3Ph!_F9P&5Bz)k~7kEBz~2x43#*{Iw8!?vHy655 z_GJA#A{bt~V|(=YG0u;fK$=S{kR9mpeLmW%z5k8{m_5u6V4mX!_Q@rrqTp6~0$6Oa ze^C@obOl{C`sPtx@t`6)YV@;>t$0{+KZ|%W_V0Nv{)?^sq)HC(-sD@kLU1Q>BV!Kd z>310@|DSq*UG>ZK7XGQvl4>T_FE)8qk+Pz3OGMF3`~4(Qw2!SW7Q zQ)bvK`GgD9Hm*=jpq?5R*1GnsTFyoJ4*9RMyR$=;2Q*%lKzA1^jB-cHXsxt=?5iy| z?UvYIjBj(D9ixdY;0w2Ow{TlKbAn&NnHN+A+hbF$rcvU7JGRE6Mr6^J-PpHUkJuy_ z^>vy_-0QHKP>Md-NC9 zjmW)o`>iUt6Zpkkf)C{^1U#%((o?Qcj(|L)UqmkIqN)ix$bBQj&$ ztm^UAPm`09-&A^6K9tXYhIH+j>fIitES$ws|7WRnm%h5ON>5nm-M~048to6_-P+66 z?C<;ySP#sj27&>Y@%M7s{znw$K0*lIM5^41yo}A;x>MWN)*qaj7kD+!VE|YEVn3{Y zLw*0R(Z7fQIB$SRVBp{52tYqG3v8=<+e6p7?LYC~R963TapY{hb}ce?!M<&|G0&3; z{%7>ho2H_%6I|z_q<;{6#JX0OzZ~~BRRh40i+hlvFZ^#O*sI+t?OI) zU8QgGTGC#qe^L>^xnlUS`jwYgSJ(KEEmRw(sjR@C^B$@O{kj<7A^8B;s~_+bX@E^N zHgu$VkA6}f@L5@7jS#;$JxH0Q;MTsfEu{5;d(FWQ)*rQw1||Y%KbyV40UQ8YXyvxF zw*9OF1A$`jR*nyb53rKe)hW@>$>j*FM2B$M>-wVQcs68~vOc1;F>lJ=bOi@tJvA z_NH1DnOCleV)fv?K|I&(+#lXi&#fzZ@=)XYOeIEtQ=B#UEVA;f6tOn zIZ4s&xyt-GUhUlY5A6=VX`{|mqt%0GW4^>TI4>E%Dj?V+kP+DD+xBY9x9E&Bg{K3A zIbwfA{~|BPRvEk7vatT4=WYM_6b!Ix#K7yr!~akC=g4q{GyNP@@F)V%Puh_GzZ|jr3`t`sC*8s=EuNf#eeNCHDQqY}38gPs`T7WDCFZk$6uwufL!z%L0u8JU0C_9jwaG zCu&yM1JyV5OVt5>SQ%pD^mm&SL3^2+=QR>wyZn9CkUKyXqV82>X-`=s>=GUTwh6r3 zA8?BW)%gCjek>NF*ufI~5cm(ZYefF*C#!3txU}463GA>v16yR!Zgp;-oV`GPEMUsE zpEVrA^9^D%*An`;u8oSQ+FH6=`|4(>&@}94zddjdrePt@Xb+w%upb1=z<&0890!C6 z!+!_6EcV@rSE6PbUM*J%@~x*LovB%9-6V`PiYVN{_CoS z+a399N*3Cw)=%-ipQ*yj1&Z{H*IbX?G|Kw|_5Gcs`fi7)>i?wby{Z&3S}}k{vJ*?H zLsk3Zb>;p&souY(iZTt*IJ0w=f488B{a+$q)BW2G(GPx0J4K5|(Hr|<+O3=QVfl^p z68{k;^fqj@zgqQu(zoNJKz5TArtc5@!vLj1#}=c%8x`v!b`Sc^0Koz5haLznur~Pj z-oLQ_!2#$1c)<0-vHesNZ>uX}OwJC9DYh#7e?}N>rTn|m(&WSBuec6~@f!-~KOx;b z7~inH-=hz_1T(-59t-GkMf>S2^f)e-A23MR?^$U7ks}N5m;U8nyF69S(@=@J*odUvMn@*|QId>}Vb+cT2Xdi`E`{2QQcv8n*b|W#7(|A3IzAZ7<<%6Jg)@5A=g% zqW|EZia#LT=#JPP80I}#H~Jeg0LS^y`1gLi8vVvTa|&-MrfDIZZ?7jn{u8x^J+mNr zhb<0!@E(0-y7IS1^~SrABJ(1k23|@9Tf@O`z~ND zs}#p5%mA>K&+lGS-;tTZJp%UnofE`psrBV49GYI2zLsvE-I9HnHOY_5hpFn{kDBqf ztJME3>g63T^v_bBM~m7t{i+XUYi5_IM`4+ef4@A$al-$jiW1GJUZv>&qNH6iqOwM1 zl3La&$|$*8s`e>q@$1y)ocC)>McWKy8|(22Kb}9@cByKO1oka+-~t7#3yZgl+WIl_ zJ*KN2Un?ePQ6QMgpJDxN>B;?JW)DX38ULUf%U@!cPi6-H=Y1^y-urKVz}0hl3# znL@#SbK$*}Z2k@f9^1+HZ>IG`6^T1EQIEw{dP>uZ902;@H0%eHpt{k!PdG~zve7<@C zzgAXRKY0K|q``Jbbu9rBkNWYG3t+A$&Cveihd4%Jw^+LCH8!R9G~m;HS)^) zz`t3E>*LQ+vFWh%lk`Bv{=Zhw|2Z1p@yC2){ffP${qInQ$0E)6I7xlHb+ucR`FmORp)!R( zmrWR5)P@<}&3acf7n9rrih zX{~O<*feaJt(#l7F;TW`vx5;4HqdC;S1o#&Vt+7DdtnUZTm9RH+cs0hr-lAd-+}3p zA;Jg1<2NfbWB|VXPu@T4jC`woW(ncXOk@1-Sa20Hjeve;5JzWhrn?=e9Dq6MlXE5D zxYJPeAbwT+$Gyi>Vhf%`xs*@a&%B%?@BlrdyL7f$MIJCU0I~jXz+jD;{IITL;GVUh)?;{x zxM3@ak2#v)NSWEeIv{Mdk!b(lzO;{oH}Cje!~h%(FrJ9gGyhjJoq^0*M*xlAP~RZg zxHBJFW7sc&yTG)UxCW3N@rHN~_S>lr0^WTGKCX|=RkH92Uju~m&a4G1SO@s&a+K&3 zb$@_I1FfTH+#x+vv%4kg(_4~lqTIgwjusm#ghX`ZdPR$tY+56nkx8*6^& z?>O&=w(MTPXw7cXVc~7jIF4KSsu(aQ94Z?+O+Lp+Ww-5ESa3dRSl9 zg7k>&1>(JyZyfo<{>Qfe4gYxj#QCuJEN~2d1`G2Hlk-gF?-n{YBMayyKr?KuCp1!s zyi;nN8T=f#_x;7)nj!t#@QL_Y?V`P`p?IQZ1wOl{z&^k}vi&^$4$Akty2t{WAl-4Y zo>YG^0DosovAw7);7ckWS5DAuzRSQ=>$`OmEUSpn1vN&_^U4w*tr0!6vW1T`FdF&Yt1WR z?|lZI0cYnsuAD!%Hxrlz{Cv%)u))UiE2xyf$cc@V!+Vtcvp1F3dA)l6+viv33zXZn zfyQ(7l$N_kz5Y)M|H~EsZ(n;sqk8M4Ob%BoS{8syRvZTET48ZaOI__SPGI$FJ3KKsQUAR<25-mwj> z-OFC`Gj0{K%?X}?Z3)1GOBrP_*{4neil5z^1Zpy z>WS^mB=k6x5kO`iI8?vM1l3}lF9k42-hV%709fEmjhb3m_hVi6%CgEn$x}&3`FM+@ z@8$^mWO_WNaey6FC8AIEkL*_Ehh3_Qa6i_ zNT44zA8>a?09qG|(T`_OO9gpW=UAw+t%o(^+rVXPNt-uLX!XXe+dY~agcI3=3Ba21 z7n+-WV*z7WXWLcQmV9GGg~i2hL5*-O*an6Sa^>BQ1A?FDOa3p|hwoY(w3%(W%;GT^2^{Io{d{+9C zYW~g6)=2c|wr2fYiSz*+M zSs?qs%wJure@xCz-m7$~Jf%#sQ`NhCzf|~W`Qd#P)v_(J4-nR!b>No>K*aq@{JT}V z6_+R|JqWjQ+Bl2ZU|(6Y(aJVjph`FU3X4W}NlwWi$;l0S1!N= zX@LHU_m!1I`sn#MfY@<7;&eL9j<$VT>=cv|rU!ovIR(MvoH}oyr(bJ`A~tJQ&Z~S{IX796oTlG)kvM*$e(TYS0xqn6S?!}NfE(0TJX*a(qckpj zi~45ub@i{SrA$+u*n3qYaw}B?zB4~C|4!pc_Q`&cUQ<*9b!>{ZiB&7xCtMH~9K6te zSqB#wqk-4p2EKQU+bWkm*uK=+erK%N&SSX)`#vh)y0;8VNw1kJf0~OTpU&9|5dk1a zhb!Dj=*Rv?{*T#=NG84mcVi`Pg@a{=1I#&WVMZ`BIer1#`FgD%zqlV9H!Xcw~FZ8n9s*5wLpzOFv|DksPkXx{Kl}i?8G$ex;sfcj;}g z>j<9nf340-^yA@|OW1rP+|hn}0TBU+WBqsZw_DK=_kn+F0Pw%Fd;muMp+Hz7{-@Cd zvdCi;E4fWr+*9`zI*4~>LbISbGuGPEw-#U>&(HPIV;^e>$6V|M5CzyrzsYIRXOAgQ z;&$a}(hEpU&|~BWT&k+6e^DinXDVHjcamfDTQAZtJhg}b!uM}gcU3LGLzD+RNS5O2 z+OKMx*Kbq5PW`VHE1Dzwf1COMS{5ULj!+-K!&$HFujwe|nCws>6l6p%AP5PpM|(E@ zL65aRNHr>KSDj;L>sG1&;~%xq5Dn~U4zb@I$1$7m2^@LfQh&rXag~fqf?3R1sD66k z;f#%C|B3(Mqk}GQ1%LPs0=d>F;0=7EP{JpG1IT(HBFOhFT$yb<_hy~XkvXdOv&IPq zfD5>{xFa(h_v9z!dmzpl_~$)KYvpAhn+{FiO`B$?We;bW#%&H&=HIV1>TjD`7iIrk zDBb^o`gfmJg{NFqKi0`F%zmSN{-)M2T=*ZQoUloX{?Av2=$+NWHSh2B8vAo`jjtJO#8S|^^SVslenz|Wfj3BI@F|oV6i~$-+ zvqWC)ReIm7uCpQ^q}9*xVDdPJ8uo(c%Q#FEAZYP0Q>we{2S}G`Y3>{ zi-i%y+ZH(9PQC#-e{fObl?;V4X(g33M4UNH9!$r=rk9r9Y+!u^-*Mlo+I_DvD+Gs@ z+c&H$4E7lZL>9pH>T_JIT!~A>J-vkf!?g6&D1gy*AE^&uW@V@3iDbVb0`REfy^Qo4 zt9Z|Hc>p&kUu1mNA%81BR=R)v`fckst^bqy0T(D&_p%#f zVjb^|Ilmfj<`}L8RO6|DzTgI8XC5!pLg%6fU@aZh>KaVhzix4fkKFwqq-e^6#na-?J3;e_wNcE!4Q5PxJE>`#&U`rT)Tqg?ci7!T)4MhUZHI z+*sX5b-(&4_y73HU!*G^kQIJeI&!$8ONR;bv`^YCnP}J|uxy$s{VL!1dtv8eu2FdXE;}9TP6;;P0#DtVk{sdfzD92*86pPs1nE) z$@rwLB0GzV9)L;0KJx+2lLyc}eJ>rD)s*YsS{}gPYc1=ys9&M^VHXPjKU3RjT>FJ; z0S(M|Q7w>ri!7iU)N8zh+9U1MNa0<)XT6nxdBEN-s4#B*pPJt&STIS>Jh6Vz#&JNY z5yKw#iH-H}w9OYj9*A?VfjI}(amKE_1W;%E_?*2l*@2<6HRrB}J zY@O_4)mvODdk?mg~5Am{UtLh`kUdhr*XN~=1p4lg5|0m10?4fwJW7o7& zNAKKfZMEGWK>PLLwf<~A;B{37Fq_0tqSf!IwtIu}+MZGry`RwL5j{pM_{TH%h&xnw z;2Cc4dq)Bz0$6?u)WZb-H~!nLaP$w)-&I4vKPq7Rg3q=U4>{^@?H~BxLf;M)9%pI1 z^f9u}FaS>>d?cQsE&8e~S)$+H^2%N;{C6GjGV&Kuz&)ihm>vBwc}t^;S^&os_Wv09 z1^1{D;7*mhD_L?=vQhPV%?7$usGlglAEV!XLiJ6J1e~DpBClr0Ylg^^H3ndP;r}1C zca#q>M)v=B#gG1=Ea1ykM>3NK&_mTCrzy*{lYCB40a{t?dxw>^wPHO;j+Sp5=uh;# zfiYS>F@9okR>Hv@>}jkx?$3Uq2aGV*1m-wD-o4p{K6mo&+;d>N%h}nVZ`PLHCu?Rc z?LjsZ{b<;KbB|R3(KXNy_P7Ul$T(*$cMQ6HH`eOGRK8x$YW#;zi90tR_%-nFXah%x znxWzOgLD=@XR83NiFb?-+*V_LPEV)H`uEJHs^0hhs`tA<8C{KQ`)WR?9*W?eCqHh! z(EoyZbT?7W&kgg7v)2?c_(+O>M3MPFT(*GdALBy?RoAHAmu#9msNDbG2!o4+!bg{m=r@BN!NUG~j<(f4&3%R{m{-`lueVm2?0VN{Ie@ zT!4H3eRYf#*hV&(Iso_TK04^W{4`dLnfN)_>o@QDsj=R=A9e^14gV_o{z3_OByf9K z{41q69+$s=qfp;d{CTuq83p)yU7N~vl`kr1Y81ewvi{4Z@+OJzN9ng8t)HnOtEoQhW111N9#hyE5BOp5vJGa1l>rQ3+=FKDY}8=$u>JlFCY|jEw%pqJ9(F(#;{|{o=iFF#dyN?Z`ycoR zQH;PLL*5yx~u7!U}=LQ0%!*E-Ed_n3GMnjX>;v)MJjS!|bMmo$PRBCBo8s=QVjREV+3~J*x~qC*Z%SWR zzyEdFFI3TGkTN!3mG$3FwLZFQ%-g*mfA{KV>ihdzW5+kEye$kqslMe&@+*&)B{Mo{vw`TqIiKCmX|>UkqXiq~ z(aKqC{71Ba?acrjZ#RuEu%4ZzK7jVZJLt!n6Z>N%Z!;mUMG*m@+GpV1cAl-Q^jU99 zZx%2IcrEz<-|8Ry6YU52U_a20_Si-}|5Omf{@eTaC}FTqM4*-Oa+xKK8B6vro)vfJ zehsUE-3pXD{t-;z=ToBJd}$R>;vb(s&<`7UEa1U9(-`sP0&&h@vCq*`9>)p)w`#7Y z%_`?q-l}v@zDNd%+=B?!c%*amHoPcjA)8r`4F$+3v?QAJSo1&wmUjQp;Orh=hWMo<4 z+OoPH516sKrmb5&I40&y8_wi+W&qF=_zyoBR2u&=(%vI+899f>Ae(@9YiZm}CKg}} z05yQfrl(ec;|<}dTitMtu4Wdo2i6<^zI(33*Wy=Ssri6=51e!F==$*Q`Oa|xdrN$O-IL=l1{37nZhw}W6RlM&G;r_GQ zKWZO~+Yhe2ly}I7XWyj#)9=&{#tQrQY8ftj@UTYyEUMm7-J`lJIXHQ#a;&0%FUqHU zS{h)e`rr;y`*nto)v1wcWE=h9-)-4mYcN5He(xDNz>1+{5F><|U)>eYny2XBC`GfJ z`4`rmIsTlB?;dw614jlyxmm)oKgatV6O5d|RYwp0U-rL^&~M96%|NujdjN?5Zdc&n zy^ps4k6lH8YT31sZ*J9-Wy_NJ)?C&Z4&U2;q#ur%t6IB^> zE!6_pESstE;`3DvbbRf*+9vg@s}Ep-YQ}QpC<+0&7-menbMnKkq@eJ$+-#qvEK-MLQ3@YxQpn8tUCqg75@_ zeah;B9M4$-t}IGzA8;QywIyc%b%g%a^d0BhMA-M3TyGmu{IKz^+C>&3hz)z~Z{ZYJ ziRFs=4NT^|3Nt|9-%loD{(jP})$f0FdYh^_ zH_pz`j1HCj5Y=>kQE~t675DG0-rH-`i}Ob9`&y;`O=WX!SR1N(4&AdyRrBW^Mf`@z z`^WzuUGxl7BmVsAI@P7{vFXPHNO?Ws;|}u zWp40)9{IN_CorFo8GxBWg8|3@Xsh+){$lUT3Lz)}vH-TzJxmfFZ_|?_3z%mV_iDuZ z?yaNDmtGJ0J$pjw3E(;KY{0wye^&tWD{I=z;$N+3>0;#_T`Bw@E{~wM*puohf2})E zmB5;5E`S5&_dhKLKmj}?&LC{P05dg9#L0>x ztyz0Y`J~-6C(z%OEp)5u0sUPbC-VX|5rVL=j$7Muf&DiB#J_bcZP|L>@pyZ%pnzB$ z)okd24|KpF_OOjt(Ba-P@P|FMZRJ0hv--zRH{MuJOu=^8y2Ad4Umca82XF(Or@4-e zBEVblOrS3=@3&C>6zZrll3?>Q%U`y|7bS?l02m3q$&K_3WXlE_ogL0TCbiE@f z@x)O6JU@69cH|iJY2f=0OlQmYKQtSnF~1usQ+sUwhkR?<{u5Nm=}Kw1<;v@>tN%gS zzx@>Z@2y$g*3GVv_E{{gf3Ifw#QIb9?+N*WqpRJjzftV}cT$Y&R^BM|_~BChlXUJ0@&Xw51OA=w zM?OA_@lRCH)*WP9A%O0NV}!gmc%bwY*ke_s|L0HGdm;eL7RHQ0RQhyp0F^|Y`)~Y% zdd_1`YAyXeLhLz4eSjT`CuQ`T@k;EMoZx3*^&j)1NB_T{r{k-U|7#||{!!Oe z>g{_>eE>Jg@^_X8f(J0T=mFfe^0Uf6DkGBZ#r4l<959u@$O0zsd#ozIZ<-EQ^mwW2 z0l$_Xq`u;hYk$*Nptm#<;38E6-LclR_NRP~Vt_}e9^fApV;+(ntXTm@DSvb)q0jYf zZM)rmTM7Tv38AH05AdE(Va2Qys1-u&jha?#3$4a6EaF(6V+FRHU<8z4EuCv;uiKW@ zwleVVZP?E~2k0}Sl&Ax{Fa)ZliIDEP8jRHSLcG9H#8N-_8aSgFz}B1Vh%56onqPP# z;j_oxvj%m~lZbDv^L>q6C0kelcq_+N*vox>?9Em!({}0M>5b~Y*(tj^dqVuZw<`WT zlK-TNuKjBRi>&`Ag#M&{UCsBkK)>Wun(g;;YC_^n#N{j&Y`{ig{33)KT~X|;KE zM$$H!uh{?J>RwU%on2J_J3=kYSP$>jEs}Na2gDM=0O6Th5rBA9K=}880ouP8`v4rp zDq#=h`u36CpQn~QRCa6!*;b<#<fCam6Hi8MZR1D*`;`v=vcuv7_zDu5i|FH4Acl3m3 z0t0~iSjaSv=!l;>UI3b(1>|=qmIKrWaGRdn0{H5%?5N) zvVkf)JSoM`eBk56_9Keiuldz)swZgN=rx)x=0R19yHb_FzSIoSztBkFF6#epT-%}6 ztoEf^))n~y`TF^vG_TC9iXpvO)C6r)_{NbvZ?8Tgf&NcSkoHdt=D*kS3ht<0Nlj~N z*9JNoT7R%*Jfo&j(2fJzMtcos*UbqFy<;cYJVd zu@Mo;(DueX=i(h#1Gm5+K0oW@{2ZTS#}#nj;T6FP!HBl!w&Ywuj@t-DbAD7#SCjg0VtNWS}Jz8 zX4YE+M5|;gw|FDo?Hi1Pw-&O$Q&vHth~O@z_Q<$Ety z1kQbcF>0#BzGDF4OmQC)iofv9oF> z_SL#^nyr0nc>sqeUnPST0enV%fXoIsTK&Ew^fzT?FW_FP1#o))`}}C-{(d5#@s}Dk zvZu6vQ(2B~iYI@qe!w%72e6JRM=i<*Dhe=PBTm~3Q{e-kenDZhc=`ia&;Wscj0}D6nwJIu{z&7EQ1&0wcy%}XihZav5)g8 zf-$TcxZ2=Pk8t3*w3Pb4D19z%r@V~cXIrXH!!3&7yqSNaS)C7%{=c;7_0Q{D)o)(^ zzAFEHpAX2VWnU>`@VPwwQNlkx{|_n_G)oLHLcaf=)n6v3CZAL;t+cLutvSAzsk+?7 zMdTkFZaYN#4eQN+uSJ#8E{$)uajOGwAA1KY1aky4xNYwtdv=7z8%$8_k6AQ23Tw8h zpgi*aocCkvZ~R+x$Cf1rG*kul`yC&IBmVE`zmX*9s3+R>UPVjro=a}-T#Q~OYvC5Pl&B^?BJg)PpTFpFK9g*I|yZ^6=Ky7wi?7<$jD{`a;bdR{Lf_ ze;a)Q{)VSeswd9sg?osI;x?L-<=*tq>i1u$te^Ipv2lvBIKPnn-$;2rz14d=z4qJM zhQfbZKUbN6i>3Zg)qKv)(wEiqH=@w~qxEj4tp8+L|9+bBYe~{Md9iYGrAcA`=gE4V zEK5SJE=#C%qu%R`Y%71qxMDq6XOFORwDiD#paA^CAU?|O>MiT1p0jz1JdV?ucawb$ zY}4Tz)evmTmS8z>7G$Bf{GXr1Oz0B3aDfR6bxVjRE(G- z=CEcl=NwTaOBNIab6RswYj(|%-8HAZ-~Y^^wqITEw|np1UHZqo6MANPx}Q^Z>Qp`T z90`{k%{;OdD)Zr(?ei+L0dLI?&6;PAmrtRCWSbh2y*ib8=^GCovEhY{qd=d~uQk7w zg;O3*-S{-}Lj$u%xA(PgwU-sjZ4GP*qyxG#$LO{PHQU!W>ihJH{G~7*_!o+Q8~?#W zjCWyEN9DizG%Jyj)ekfq`+BXumS4pBRsdBq?EIrN$>KeFmyXbu%+Kq*xzB<$KYgzv z8&x(*k5H`C4ejqPGB+n=FR;$n?)3V8hP?mkRQjTz!tyYdD zd((`%zwe3lZ@~9oRm=NN!TZld2R?!Iet%4_NSmgUlR@9cGBy5X@7L^oRmbH0!)U^}qnEYcM8Nln7%>THvl$4JvFHHs6=2VUkXQs#s z)fUyX`WU@H&V)%G4g=VOPO|Sa%687%<#qWB+0}HA`Ih)|6nTKAH7u*9&g;;)-;EGw zJ}bOQ4>K_H7G}au6u2^~^d7xm z79hN`5GDSh9Gy73W&t_=7k|++##~sE@V@>I;na9_gb?2t)e6BMWYJ_3oTpS)LOBO@ z0aeb#Gnt*EaE4NQIBOtF&|_4`z1`D&YLgX+CJ_X4y2E~9p9VEGMf|24$^ivHCLb|(KXF6~ijT6!Yg zGyOa{DQTO0RrfTW>uk8|Ks=1_U7yVd>kmHa44^o!$GAs!>=hh9@vJOIJP!Te<6G}h zzyD*&U@st!J%*9H4tR<#AL8M{VC35(&X*lCoG1B$p`s1Hq2`HBsx$(cnYa~a;aXYJhB8tRvtBiZWdk^lSo4Qkq-(I0z+-3SX% zAODI2Yyk!kb6k#cG7aryr`mVQHuR+%zzkLcdN>)DzMgK*RlkcGfZK@sRRwqre&8DJ zzd<*U2g-YA%jUP{-I@KDF>=q!WY*1t&8vkgdEQXkgg#jW zf1Xe%WJR`KzCY}Q_6&b&O*W}-jw;jiM zd8k(Rqs-rRu>WanV^RM5l)g@{Ok1Z5li|rqRQ@i4y&i!NR_rRzWA7t;2fz22jrcT} zX|ad!Z5yD`8&N=!0gG47|HX7QQqRPLO(pKw1#2N}iBCr#9(CJ@Y`eX^Gk^B?!k;Sz z<>zBIfGvUdwh}07@Jk>6|9_;JhO#=I=_l0dzBbu`@c6P+-W-iIK{FhIC%%h#`~cXv zwGn%M{qnGWg{_S9VEl)r)H`f5!`k{x%i0F}H~KXba0jXYrji4^3fr?eughNaCIT2= zwJ0ZgRs+ZJFfy}_2HyH}I!;q2(V0$+R;-_e+v0MFA2w345uTLxRug{7t@E>awHsbSJ zVGmT}Cl+F_Tj1Z;MwTWlfLXfOhb)?Ggmi{A*+V%*ugE0}=n6#LbLVgM>T&9yVP$_%l?b^e9hIruIBx(scC` zGk#9T`wwDFX%soWw}xdeRagQ0CRGPm19YC>Dwg-s$W;tsb{l_X8$9N1NxH+6k7VRd zAp#hUdeyRqC#&hvQut@!^V{+F*B`+MKA>)3 z2V%Ep)vn&o*lxX}2YJ9N>wc>HUGhV6eEL2^>JmFt#Kvhgev-rO}zkPpL8#4@fW$}L>llL*p*Dut(11TXw zx3x`se4P>FU+9+|(B}2L#Tv{Rq@t<{Nw@kWe~v!Eeg1UBD{@p_Sm*1!^2_BO)MI{1 z=5I{?O5TV(?dEj%J(2#+myyGHhJH>fFqd;mWy8uX`EvR2Y$i(03;6u2!T(iw{VC}F zw{Y(;l>aYSC!$08aB@h}I{7ml&u=?m1x4m2VevNm% zYTp;5zyA2wCw0L`jv`xq3+(lL*y{#0?a%z*J-*fDGrDZb(;IWbdEB=GSU(~V=MN>& zjKI;tFA@Ha9*KiU>oe~UjnC?z*Apv_$MVcjciLqBidu-zga(huJA8)L+Yk*E@ea(AhxgodOqxEh^+kSuf z8cS#j`bVPtzrwXTD!VWHIop7$|7Y@L!T(n1G#6B^qubx()N!v&<0m_ww^ZT+& zwqN->)Zek7|MDfVzr6pMrD3H;RQ>OsCh1Md5Gwy(Wdt3Ae%*V?$nvOjd~Y9Qe-u%v z{(AGP9^rn~+F`sNelDzr_Y^X^pl)ULHO=^!`fl$p+y~-yPafZ! z6+iQD&kJ_UUqt?X_8;N>*RSg+O1Pl^juF3@LlM@GvI*A0jU4mt*i^&hxH>)L`}Yp8q%}q8MV0bP33J?1Ua#`8b}?h z#;!~qN%P8A`Tghs2Vw!d_yuf$f0(zhfoYL$4Pk zCZH(5`BZTLojbj*C`q=eOL;{3%JN6$UfBiNvvh7)A4_~4s_n8^=pkIG$;|hAf$P?k zUQXre+)CfdJ=AUPPv@5Q<>&DCs`|f@{GWP$Oy=Hby#Hr-|Mgk#@A#yB@&%mrOu9#D zzOR_O#+{hI#+)~gOk-L1<&A`Jdo4fGI5+Awy5-@54;b_21bVmM*`4gw7$VoZ8M%kT zI@Sh9j{X(@dxa0p_BHyAcVjIqKrnqhEB~wK^<3zK@y>sy?*Eq-AmV-50W%W+_3`O* z^=xdi2(}n4h{4B@&76W|+x%~5L;gMRAJ)JzkDYo*_nma+=|uWJ&K zKu@mP?tJGs&f>s<;Q7=5-3;^6MRC%mchMRve!UA$VlxA?HCbrs25Arz9$2o#TN z^Q?cb;^A1`T7r0hG=1radYAUo=3~&xIjUGv&5NtumigJ(pI8axVfy`zF8_?xzX8Nc z`5()5A5YwOQfb>#!_wWv{-tzkvTc$lk1|#ch5PqnTnWR%zjb}1RnIwMH>L{ytxZ%eTTzw9vdxY^j#9YLbco7uk3RACo= zK6PGf4b6}ANc-82dhI`Z{{s8L3akM1z~c|2a_VyWHeFX^0DZZ7njLg%-D7p@CRZlQ zr{|{MrrVV+r4sN?#)E17t=j^I$_VqkZp+U ze`s^YoSC<(1mrh`D)~S8;$ZehVc=2>TG$eF;P24BvH`Y8$_B{V*n$MRu&r3V_DPyK6bwXvrQX^8NwL!=J109~mC&ADzh2hR za|~p~iU`GAM!%_1?VDx8+R?Y;=<=Pc-8_c4fBk$vdb2%}C)E3mM)f-l^iSoA)m58= z{!QrRynrh;ht3TLWe?CL(EYwt^M5@W(0H!+X()d!OK;L0X8rV~A{l zA5qTVoZq^C} z8T(S%*Fg(ZuZ=*Oa9DVCAzJ_SOyE6ucwqrn!BWUpX#2;A|MedAJ%6D=$jos)aY95Ro`mt^g)&tu*U6eLO^O*$t7r_8#5Ce{d4_*roc%Za=`9k_g-bGLF zC-V&%Pmd7;d`TAIBJ}@N*t%ABVqWP^tRdNqxbmg^io7>E;Kf-dGJ&U-2h$l$)wK4- z@?GAHeW5tCEl2;h4a)ync~iZhvUAGM$sa4GmK72EmH#)cBRU8!ARIzIahpOjw05x|( Zfe6+1h=n%31(g*bU{#5f0Spt2pauM!dpcRCz6v~HtK7s6< znZ0Ke$T9>^@R^CO1MY0#&yW`dMAh%`fmXJn*ViPX`j*tr9Y(;)1i3( z+06N`CJ)m=;xKB~`_#O?@o5H7pkFxGE6V8=bJfFp`Bhtp7|Dgbu)3{V`$3KQjY0e< zRI;h)Ru_>2>;n6bh+CCE^8U?uCh#u=+V2PM^-5TT`Zhq%%PLqUG<*0pw*Q&O#=MS6 zn;+TZ%NEs-0DNEHt9$DZd!I)y@CiiVn=d(MwtG5%wuo`7^D7G}Yw+uN5qd12A55UY zzqFZ9|Mj;Q=W-ZmKN|*cGrVJ0yuW%X45upa>ADWdHA#c?*z}KS&(i6{f_I<+%*F33 z4=5F2M(I7W0FRXSVpWif$paonC*Z}*2mXONfZw43b|(+GAN7DokZ10N1^9;XcObn% zpF)XRDO*%NlFndl7_DOC%4UhT3sv@j8tb8vD;kgzE@o^6z~0o#o1$^Ap(m9HpdUm1)- z`)av+HaV;2+p{jijQkze_Z&s1_E~iIew2*g&!~Q_tDUL({hC!=)@QAca=u4)7rp*p z!Q!jxPpdzv1KcI}fWEBsvmiYvT|0f5IiedTACfzA-meGaN}Jia?-l;qe(2X0z$4eZ z-WjppTz`zq*wXdki>fjdtc<8q(a%{-f8IDr>yi^A_5ka4sfb z#Jd7O7>q2TS;A`n3-9mM01Nbok2lvZEP(Bjztb^DQ<%+hFeEz_S5+a|VZ#dAJ;_b0xN19Y{7NGk7RE#7}j* zCcjTQvL48PrQ4Lw1@8;70ds4$KXK#^aa?0d|+MWk^Hp04>JO0WJBo+Fc}q~2V+&}jaB;nzv>R)EO{YuDGRY&v{-g2!QvRdc zjAKoWFpoBkNOJ+RSotiW*zDFZfZh|zztOL~Jl{nlyzq1KZ2e)Z7vm-8GG_PWv$UFD z;s4d`w*}9+(#~kJcNNm?^^JOE_`Jy~6c#}Hct73#GyeYX_p!GR9#B{SJ>%~TyA*%* z%IeHu-jgl>^Y~?Za8`wTYpG^QMznd9nUQBngenqy3G+Imwgb8rvJSo?+SfHf!oTJL z^rnt_HzNMA%-P6MDd#rS|1p z%6%APr{bbVk^f(ePg#*VviYnFx+j(8!)w)m1L!VaVs)TP={m7S{&IE}b4%Ys1sIMB zplrGruwr0kyo`TmwO#Ws?=Sqj{$H`NJhAIw74wSsJ6|pZ-T04L#^L|%^&RQUbILDU z;j@no?-|H4g6-E8O^X%S2ogSudL+9!?)h+P;?@_nisB#)JHTp5o+U+{b@0k#10`S!=55Bxo{ z|G8(3czwTX0qpA|4$-GK=9SpX*w=Bc!>_v#{7=9W53Hd$qIjPtpG$M1z<#i+0{y|M zg7@ncV_tT^Tm9L9eQJ5Yi^&39i9H|8IhHPXEKKCHx*n*2KP9`R_oSF*^1eH%p=$g|7E5xG&z5*{J(gBF)ie~4o2u!Zp@K_XW&^O*PgNt#=qHvbAa;5 zLa}+g5F@-9<-(maf6^b3H+&{Yf zV7Ub|FMrH-=gPcG#os2()%<{-&1Giz-d}l^aB9=)_SJ!`;WD2Ye-GxZ^D~*Hxqta5 zlpghangG+A#x*}1-LFOI{d6qde%4CgCMw*Det&mTe{&!sr}q-nE34${|6;6Z1j-XR zvey`PMX-3RHuC_FSH}nP^}pr)&40TwGF7uO1@?b6JYW+%ec?}qHFf)42Nh8G4`ttb z1k)DI2b0juo{;#uVZ(i&Z`xftrXUqa(f3Y=p0&-7)%}^dst>pp7PzTVLvpj^e zdmh&~NronKk`>a!)92EzrL!0rkJ1z9ZmNOA3#U>E_;_jQ@`>eDvfHzv^pf3_YO;4K zt5r9su3deT>XL03b$u$^6A27Q4J=h2X5RUbykY(v`RLxvFTc6GE8W4J0f-u(i1f|p zZ4tt|i~ma>utq4R@aqV{^NJinCX8JBom%owJ`TbmJQC+3_6)fOOa{m3R zTe61B2lQ_Jf$Z$V*}B;ky#E=j`;DM~8WGY{4;04j&Bgj<0n7ue!kgoVm$wpNn_%rv@A$uNp2r z4WK(#X9yAh735Q-=MLejY9_GitDmZCm>iTmh6->+nwCc574D%Y$b(pb+rj<}Dg$mK z2H2oHzq~{CeKv-i-_CH%wA!`Wizwg$W|r*0sxk-DC+JA#l{KRt_*U3x&-_Q`p&yyG z$)0CUaBoJfIDCC1yDCns-}l^uTTDR6SCn8YVZU!1QU7^o4^;yfsI-?APQtSn%-a}s z94&t>Bx(Ps1Q1R&zg7`|@!yiySF9bea`j>w?)0tqX>%OlEP(yEXAmi4AU&|~|7P;C zF@DyTK}V!GLu+?>k3hfsBZ!T-YnqQUm_aKd|IR3XXRx~W#;os`5x*F()a0t^!T(# zx=i{?ay{Pvzwiv_lBF6<{Am2k&x`Sk$J;a6<0$r2Wq`f9eSTots=hp0VF9#+@$GU|j3$#uZuT+@68u8OnF>fEIB)oZwaZ0iBV2k&H+mP1}}^ zVr1M~>kBF!U^W(D2D5>_EsbJbfSa-|pt~`B0H0(oS=VX@ROK0Dm5!vUbPSQfNEkqa z%G<0RFgou*XRz7y2XDaIQoA!dy%`u1-*=oZuPQcRzAv=ve(7(IBO1`_+M+Jb%pfd- z^5xR!BUd0_8-CyT49{ubsoVO94bQCS)Im>Czify6zwqyVL{bJYkN)Uh*Hl|UFm+-_#2e21oxks9GI+~yvDdVni0~khJNcy9#vYwMk6h> zCqn?|cfwZ{8KjM8mUsxM>C-#FOnFzS9Zqt1R*JX`2j z^l$br^w;v@jtc&7{=d_AQSTe**Kx`!825$Gw;l44tc+FKm@_*K zb@Mzbo2;ycO^vf5KW-bTXY@$;4$aTD!f3bM)YS-!p}HX9UD{t*0p0Hn;t#~8kEJ8n zDR7V-i9dFtH`r-pBmPu3kQiW%^n&y+=|I*665=1?{~dUW>5Pt3mA?P(1uyTudssfPWhVo``LtSv+PZ}Qf`Ol)NBc# z4xcalYrem+Zk!A6Mz{9Tt9oobKy^Q^gSUz(HsEYwWW>d#jelDNN7sSdun6}4dQDh2 zhZheJ+ZO(130i}+wZOAxC5!)SHBceYn>oE~i@dnLOL*6eKl72W6MEkGmv8qsS_u&P z^_=mp@3k$`8a}cI(g4f=)ECiuf_OA57qPlVL|JhvIaa4W|EHyy&zcd|A*6%~s zh8)dGKVQ;u;~aAETjKqryJUl0KMDe*Z1PS`u&^* zN1XyoJs8`gIe+qt1HykbCAZ)@tb<1+yUrV-1=cOx_h7%Faf&br0 z1TY))PiC86T3i~!m^(aMirHl!t!d^2Ft+j!41fkU#&EoQk<;C-b zXKjl9mECjSVrvijZXJcb*PreE^^7fozDs;xcEx)sBG5Bt28s^WsOg1bInw<*5=|Xc zzKy)!;n`DJi~LAxF8)ep_DbevE>&HI-o9T}s^ETf_0;NaWNPQrso~|kOMXiBI<>-! znb)C8-x>U!PR4hKQsdI==ze>qZPPy|^O9qdZgBrc@DYdNALRYLqJ(FZX*B&3{~Cuv zuQV(7r*@|bja@SV|Mj>P`t8p=uKix!3IQ8qZ$|UYGqC`t&aRMc ze;?S3$U8i~*+J-kdgS}|)_VLu!TN9Q8{ZhYNyR7X2cphEnj7exfR56ej#M$o+T`QL z)PChL_+;@Zqh1z3XG_R0*p$zX6#$>Fu$i{LW(9h$DyM}0p0%rHv7upe~*mC75`qWlgEuq>+tZkv6_YV;>#0Xj31 zg<5Iqu6Wlyqg_=$@^ezqUE!}+oPGE6uBTNEjaa}kd`iR*$`>l{78yP(ZAQ1zX^ZJtW;Q{UN!J zmEro6^?!xf^dz|9063$@jnqGD{~BxZL-IBoaBEZx|6a+{`Mem%_GliN8sYX-;jiMc z-mUu^qe<@s?o}Uu4c@;m9X4I{FV)Ws!0Nwi|AkUu2S>?G82$?(~J1(Q07x#PZjbQ^p#z}zt#mi6Fs7iijRkq zcIhSQhvWf{L?K$h44_3Yfk|k^H^Kz|Kv%$7PlXKd5v-VeVM{21W1; zs(=on9$*LzU>*9)y~C`*Q}e$0V&()7$o^Uu2iOw-rJPz+{_C&m-No;PF(Jm-wH;7} ze9W#@Ev>R}o=>Ps0>uZR7`UQ9-dA}#RsLyjXW?9XBfOjM3(3WNAzKD(Z1&3X&WgTU zu)kIU@md7h&&)x8<@=RA(0%!IdwdT&#brpr|f@AUXlN=ZvhJ23)|B6%)DctK!0Qe|G9qO|Hv8${W?0KU-*|kso4pd zpP(LL?hC3TclCn&zmBaPan3a;0M`NVj%7@Oa-DJtO3!~mCq|BJ~(?nflDGb-RwWFwxbYnq&ve3WdNPECJC1vm|D zSnC7d!QXM{)AFO4j}UEY_zpnK%c<$b9!TN+Q(ueuJk0E_4_buOJj_o`(CTUC~! z7GMVJPd3e;Clfe;YQQWuyf9*1$v+1^g;?Q0b-{Dm^;i9eWd}ST&ow#v7U5rr^5@&LI|>L^ZuQM8fyk#9$05AiO8Ggx z&-MATR$~9s>BQm10JM+1ynd1X>bq=Zw3j%5xq@tjEkN*pF#*{SWei;#*cARWlrDcy zvAX9O+1pt=di>r-KBha_z4<8rPh$ff#R~kXvMee-$^F3%1;-1{XD_gP{n^gyoG#;*rYkC@Ed54>b<~l zj9)*m@#_d6MzY>%{70VJpA?^{y#Fw2V{d>L--HIZ87iOnvbnYA*2ml*Xa9p&3+LLi zumHw?ux|N&S%H`bApB`fkbi{jf97=^ow0AMYef<%6sk~EpFs5}RV*OepxMfyT4)}? zxhMeB;aNjDyFLrHn^r=@I)?A}YoP-;XHZ-Zol9qDg#BVKS7_;shl1OKZ{7>d?<(xi z`KbQ~@@Nn2?n!7aAJz3v#?cdCA8LVCD2<>RZ~^$gi_tP3HZTsK@j_|k@=WZPRkZf(s-%~aV9ii=Kz#&cO~fUNnf02#ql!C4 z4D!vMS7iV1{G70CRLbH+RIcj!HvIQWAj;HIHt16w zarhmwKl)wzWuf&K>|Z%ZX?$WIwjg3cVl``0@4q#<)W=xe?`T$NZ^7ydvst5cL%Oky zXFkT`%=TG?75Exmb~P$~KBQ+;-^z>m*7 z)L4x1Yn!0Ybl(45GUF4_#dpPiXnvn#e{ldSYKs3g_b2*n*+Q6ETP2hg5dH)G`Ws9k zEP=Sd|F-V;*H$6oeXl|6^}*Mzag>%zY(T6H;0VU7MC*YZ#hIQ@U!~o#eD>j?`G@jn z3+Y?q-yYw-JZwgs!+0&MtQmrz^*PsB-vm~-J+qH4s>J{oajg$#ru9Bpe63HECA-rV zXr1)5^p&&?dEuM!7NL%s;qN`pM0zH@xq?QyqU95 zBvk0J{iJ=a*nssgb=Rtrcl>aXvR%?F`4dX;1?c`; zfO?@{_?K?fy~Z~S3!t&*5&7Hrw*{~oU>o33X&)8r)t*XRb(30l`b7Bf1eoYiL;`JU z{#@$5aihPEuI2q5?aQBrZ73{(c|d`Gq2G)^__sRvuVMeP1zvsFeqXDCXk~D(4K6Dn zCZK9XsR8~Sy47*CMeDeV)p;iHYo!6|jE3&#GZyDJn1Jno&X&%lH$CTj#<^Y%JK%d^ zZ3~;b3H982kO90Fm32Jx5Kci6*q`k}j48RKfoZrH1fOY8!@DVEn z97rbMKF08tj7H6pjaoUQ&atnMAipP+IUW|`R#mdd>gE@%(hx+Ja74F3t zqzhPeaL&=}!ImRF&wu^9Tk^fF*_`4&H5ZUl zpb@EYsQo>1^^C@Eck28P!~@+-Zc1}hyMh?u*v#JSUMv2%`bWBe{irMOWCirtwxFmC zD$p*@Z#xiKfM5IZ|NUcG07d<+sa0%W+d3>+8?;T$60||bl+E(7s%}v$53GULKLP$f zlRWE4e6qWL=v+DLC;KWpP@HAi16yD}=lec?!n`?^xqhJlIA0SM*H^C>a}N)N0Zc+` znT!^2A{<~}@_?tKNPJs2G?|qwm+nUluzYD}R)oDB4RAhoU=pgaYDN~7UN1E-pUp_T zJX<5bkQHWn(hukb)|U95+X?8+J5Y!aD4Lr%DoBy)+T&>VkE}Dxr0#ddH$a7XGU|F?&nTC&T|s}&89g;$n17kKrzgwV%))q_u1s}Q z{jN(SwmNe&=P@5MC+EL(emwR5hj4Blta1OD;C~9bU-#0V)5)yu)gk>kc_x{V97^Q> zbKR5pgX7`;{lKG8Z~pIIQqlkm-y-}wXRR?>XnY>Ek@JtrAMYbi<6 zf87f^>e$~Hm+EI58~VTOf|Gv_tx@&d!>PD>5FqKN+Wh#@Ig>@ss6`)>>2QKeBNZzBu` zUk#rXQGuQh8{oOXF?xl6TM~OW+m4O-&QW~#wYA#RofxZ{^COll{QJLfBduMUnsaNR zxrbjh`i-%`x*34uep>*)^7knIzdR$>-+^CjduHsqYroDzCthpAQM)2QJVpM$5zh>U z>&)S-kHPwF`Zqfoj9%x==#P8Gu$~JG5!NBtf1F=kAM>^X{jv`}`^p1u1>-*pdpmYfa9~ z)`0_jo9_bS{DS_#pO6zcgx){{m=iFV+|%du4Z4Rpfxly=z*VsT6X*+|Rf6`1&vs;F zI>I;3b!*HQKHrgm@h?wnl$x;%AIiBa6X+^IRR?*tptVI;3wfTQc);>_RD0c)pi17= z{M^1@x5laJY^=d41`oR<#1`oH^NQ@v@bzx{cUve~Hv4(KFPOi7kM%#{UrfKS0JKy;ope&r9;BP+q!|Z@sy42j_h*(SNDBU3E?7(lF65)5E<_BsT{H4i0zU(P}3{&5xq<@WO7!6WXnMfJWyzhBptia0>{cdX@% zq3-L*v`-K8mK|%A0ON=NZbI`p7WD7Ke4xwf9qF>s#F!q$&8_nf|^XmIqVsvtqsr^*&GH z`#TWdUrWaCLuxSIfOj>f-uLwC-kkpnDlN$QjmY0(HI_%qTa|w(J;iM9*=)18b_bW* zp!;2#Zp%F1?~><|iFEkiDEWzQkk@ndx3B5`zpVMQC5SlE3{;~pyuaDKYgO#2%me(o zUiC;0uJ1AGktxjdAsRgx&vSV#5*@+bYlC0wd66%RI6$j@y7#xRAKIIKByoWDa0JyYxoe45C0m7OcAyu)tz_PQSIYt# z)AsMal|?b1u)!70CQdV~&6<0Tsb2$nH z;9!nqT-}RxO_F_+g~`h4iRpW3e;A|J2hbXU*HamI4GPi>a)B$MNWE7+B>OfyxwcB^ zqRL?FW@M%%)3-%9${XdTC|1R;? z;%skL_ZvlK^f|2eJUHAea=1s=R`!^X?v}Pm>(aN9JLvMYRniddKb4B`k@();wWvS3 zeVH%XYXtAt_;Q?Y-XH$T*pJa``ylk&GU)lR4)#GtiIl&6`0k6ygq=<%svohx{I?@{ z`*A6E;sR0tjem9j7wTgLU|9qCetUksyWjxf_pJc_Tk!v#mAUY}QaSY-ot9Vt z*)&%pH04|$i3&Fd%eOa{H@vuTs`FK#U*}Gb^sLXMZvQ*<>lNeQwxIYNy+cPQ+t33Q zU{~;d4P8K{V*$=ZfjI?Kkt@0x|F1mYRFHoSo7Rb6P0_M7O0M*gbfnAL$SD81v9?p!#GyIq2)?JTn3w@M(TueldP&&HQaFz*gB; zH4{GVO@%7qUVGS&3!mZuLcQ|)t`cz` zR7Bv_J!M-QkqiIEy>9LQ<F@amX8X6U zZe87{dI10X5&NG|`4MgK$Lz4|UFP~N$NE0=iT#!HyNS6zn^Etl$bW-0W2WC-$z{o| zWc@y8jo7oP1KAqx@3rH5)<#H-XOCZxH+vLY07n4k_a3p@Cq}4|9~QvgzZkRnY>mT# zSe@f*=pTdk*%}`0?4Eu2FY&KRTPuL7tqBI8zpk*WzqfM+#(e$Tf35ZxOd$NKZJNBW zXHD4BIe*dx7GNDf3Z+!Y)ldd@f%n`72S1)U`Q2+6H(KLNS!F3Wl+UiwAJ;cRQmx26KjLI)U&1vnZGa3q%aKDvTznT#a{*e`v76@pI1-`_029h>=s-1;6{j}F0^CV|@G|R!eMS$emsxT4aoE88%7x4h zYQ@NWh?;>xc_U^8UCcT`@0Z8HAhuzYcftlp`O<%*U-%CGABdN)wD&gJj2_v9$dkDu z-!Z*CsA7CE0L>g!XKz^z;a{I)UawErGs3B&f2o2^@%`;;cF8#aeXipJeRFJP{eGvT z7sU^uBI=&@v>gbn`}pnerS-=z)~_yV{Z#8O^zX%5Y9F(z*H}2#K>DgYPLH2{%(lL= zGM&1Mr|In9pt@Q0uBWL$o|^) zR%g@aPG`~xjx#KKqyJ(A5#8&X^?p5L^-tH&kK@_;oJ9NdB?1{u45Ccn4DtbIg8tD| z1Wc^^L){w00QV%#(+gQ6a0oL37cd|AE_{hFzZkMxatO-CH~_qX_QFn;qE=Q&j8Cyk-?5{svPgYJ2#dc$?- z?m3DX*MBJw$)=I<8=jBLUuQ+%f!NqN*wweNus>0EwNZ7i>hXC04XdBfi)n?*sZ?6* ziDf;OqxuMy=2k5COl8{|751*Hwb$2v-XhNbHU7f_*oypXQD1zTutO*j zf3Xo+z$ToLgV6vNpurtXL@wRX=ej_?&!*0u&$9LiD_Y>%=(km{&9VAtrl5E0J>mI% zB@_c}0slG{)o(JHz-i?F&fw7r_=7v@{!+I-nV~n5{^`uLAswP_2JH{g8%XnkG#@~j zfGNxh%<)ohmJiJ`=AwL@Z-f5-U8M;t!FJ1DwqIb(=9eMR9;EK-9kmvO+C$WxUWPtQr5Z6tWBM+hum`SFO&;n~MRc zHeb2_K&Tmj_B8(O%Y|7*4b4EN;(z&P&A%7^g>>z&@9+`m8zKrRUbAiRUh!?N@H4mZ zcN+c1zkY*!zmHNeOdGNzhm!I8uDpFVkBr}Ls3%|KEr{(;L-GHJ?n@1@vFlfdRu9GZ zA4-p(x0wH5svLvrw|VwN`2dddv(l3=w%b7e6smnkmYUGr^U`$3v>DxfA4;xD4oEho zzyFKmfR06f?_cx%8o4ocJ)Z5;LeI9}(df~pu@yBx8m016-gMvimu>JXy4A?FMx`;@ zo7rfG;C;rD`8y5;tTXIhar-avZ1g*7R!_~fYEi#gzcFvFp!@Z0Kv)gg1J?rRnF6u@ z>U*{T?zdaiPC9?mo!{CIZ`++S(2*!W3TMN*l{l{TU_BR6cQYOJV>o!Me-?Evjo;$d z_k?9zWqW(GsX%|&ZgV&DgWwDLt4-HIN8F3~0K0?uD>;HWSb;0B04H)RH;@PTv91r5 zVLvB(r%%uq=vX|-gKP_^BpDC(ucK%5H9YrnsUhCx+wxhgJ$D9uXpVsK|40>TV|q@1 zN(}HE7T{SbQ^(OKXlt?okHTZOW3}MV=qGq=wsH1j`95Z}?TZ%JjhI{5U$4dmq6$#{ zU%cO5Q%L`NyCA$m?GQj2IKn7g6^#s9WOQsp9hZ;bnU!V&}v zF*lJlaU^f<68V4O-`a+b({(EOfCh5uP+i4Ft9VV2=l1B?4h z_t$(s#i}vm$FZz6t@?h)79c#n@>{C(72<_+KW_$5Q~?zhKsvxCe8=XnjwA8@SEGI( zjr!05ObGkt>ADRjAI})eQRi!g-_Hs6wi~t_p#!)(kRR#xpGWimd{6Uh-|Eao)MRg~ zj@z5DX&t2v@cOE6ZUp|DpbG8;1DHh?@C@$t!a|zohqX2Og?0OGT?yF$*9YoZT_G!d zwhi7-M^gW2d>r=teuv)WT7aSGfMeicvuhmS8qhz6YV1j<08Q}}&m^5-j$fri@%VR^ z?&tq(W{)cqsMVuxBrotGI^d;PfGZiVv+}jz`oAYSZAAB(6b|qrO4YOQfZt;Qj-w{v z>wE#LRcx2H&3~YJ;3}%xnr9!CZ!M3ZPv8J*-8$9q-x3R8@9Z3$IC!vavuh#8(SUHL zI6&{wvxU`&{G4or*t{zGtkrpc*V@UVIFs*+MAhLNpRNK>1fV&9!m$~MkHDNn&zY0x zvuy{&CiLBo9BdV=ZaB-|1}`toQ^zZfQ1cpB=kcb@@4tXPOC7Vbv)AeDdo;}d>HJ5u z)sv|6c?WH!IbGL!(AE2(>XFp@b*#QduJtA6_+FJQmt9F`!0+kRwgA?zil6ax_}R16 zku|+;N%u%w;`^UZ<|Y>o>;1_KC-;62R&Ho@ZTfaZ8Q*uNCtGm>$*4&L9MU&uG+{nr?`_t$-A z_k{W4Uf2fxt#3OV8`%5*8#4dQ04g?}6`cY7e(UyyJyc&V#{gP?t0Oam*5p?<;(v3_ z{1IGK)J-;`_K z6K1kK`onqfklWa%!N|^s1zb#A@@d`1$pv%;7?4h1M1uTd978_kWn}0p_G#M32yQsS3P3Ka*OP4$KXH zikiUD%uy?`V&Jvp1Gb~T)drwXN}#r)4qgmCe7!LqUf6aabOOJoTYGac2iXSUPoL(z zoH&4<)iZj|)qvvuLcjg9BN251RV~4q>}!3}_Qs4ux3VAF97DJ&K)&Cde)XB+{Eh(h zor?b3)f5IDk&aV#q75p@A!J2ADR<4rWY1@7(mi21s^5=!tI9s;DxXzWU~XRrG(UO& z1F-?CR_~_P`k}m8esZ>$Tx_TEH>Ia*^R;F&V`DswZFhYCSLs}Ge(mu6&nCBm{{51! zNrlK?D|_xi4rl=Q@53ezVCG++J;wd|yk9=b_||Bb-!}vBeIua$9=b177#&^so~_CH z|Bg|1F*e`;RPc7F_yvZAU?W%lTsYU?-~)ce&xc-6yw?#x{eA8K|Mhi$1@e7QzpoS6 zwl&mT0NvAn*?}%K3($u%+?BoBg8S9*|Bd)%9brP}ga26|aCbO@EA?b+1OLLad4W-{ zvuP{i=-wQ`5t$KgMZk7Mwm_d0ydv=LILtjB2GrQtCDei3&Nc%@<~%ZkSFry2&vk>y z1pdehArGW2SRH;+%>vv72N(zTRSPr`ruj_ir&9m&+;V4XR0lBczenXJbgD+RUbNrh z`|kw%)9Dm?72IIQN=q!jLh6P`=I!&k{LO3;`M_PWR?JnIS3U#XdrSOa2QcXTyS$@% ze`)rfG20S633tM+lstQVTY-ohLM3pV5G-95L$6o?&}Z0&2!Y19du$5-^3dk!iq16$ zC=lFlPCT$ZRUzpo<}AZGfuAoAG?CG`ICirGl!RlJd{ zhJBn!r^QCp`R`J>2H(FD)xDi+eb=|C?m}np#`N~T6&CpziNG^ zlkY#9THki1zofUZw!`|M|8aWzp2d(?7c3yy zr$%7-8jnJa`-t>y0qpm}Li|z#+=y@3qNX`r0Q%1+-?SZ{*bE%lZx`M_a2_7NhzK0# zhh;G09Xsf`-~jp?kNzEXzrV&mkBMSBfM?AF>R9{RiTkn%ooW_9c>t~Yr+UDaSUlw; zwIN@D^=oKN|wn6WbZ+C@de1fl1avfPY$_GW^N2>Sq8{KJVuB~?8lVEqN|sFzW`&RrrQ^{59wS$(gF0p0kb=YitnLdUz@nUbt`9$?0L*0gGp+fX*6m4>DKpT0g4f6zvQUj z_Z<;vq?!Y4$Y=CL^B#?VxeENBK;FAA@vt&t#&?1L-~jPA7=V3y!~>xNXsbg)c}_>M>wxMmfwU0*dHyhE2H>Jw18_-yf@5#M*F^+E+aeF zY(RUkqu$!e;Av%UE9~O!X5Gy|wwb*=vGAzBiUq6%$`&||&?}DpZ2`QmVs@inU3SDU zgimpG)c{+I^jslV7dhu2_Ql`hS_5f)iusNESamdN2j&0$xvlx+j-Y=-whgF&?o-~8 z-iY(dKQNo(YR=tybnUp1YRQxtROiB*?m#~L@XhyiT*SA@AREJ0N4uH8pJc2CA4A9FL&jf zbX*bvh?g`*4H!fwWIA)OCSwtI#2U-m8uz}{dACJ%kA+Yfd`*0HbgM|;@6;o`%a+$% zL9fW;+m@Tf3IDbTJ-HUU!9XrRjhK!Kpf17Z@qcFBn{{ilD#U$Bvvf@QIlTcdB*uIg zC2%3Qp9KD80cKJk@W;{``0lUD$7f$>d*zGr6<8O1JUPH0(5+Mx_&T*f&!Yy;Af8=; z-c$>z8=gcLkz<(|(23dV9}qoUOvj4Vs9wFDwL_1gU)UBXg6;9pVgSacxx6!c!myAP zRWzZ_8JBuhzTfeIb8=?!dc_#F?{{A@&-8cq|A^6*2Xr40_xMnx?&v|5L$*aZ1u=f3 zU;P3UtGElPR6VHzVjW@t;uWeb>`b?te@e&Yo#^VV&VJt!HMF4C=fN8KXX5*B0R21D-{%uF zn?qs#-*V-yq`&)6eE+h^7p(d^siyl4t}%Z{{)+pp3YlwqEP1@>zN~=Qru~Vr@8^Vk zGfyEu#;E&-q?jPb{-b!0C4Nyngl(V}R_V5n2 z%h5wN2a`I}aTRQJb)IcsqvFb3OxGcNx$eakbVLwWCD1MlQ2#ng4REef3gwpYv7=!j z<6!`|Fe~6vaue!Q`cB!FokCxEPYYx#%#3;)qQVe z8&m7^eLftte^prnEpSC5f%nk`pJH6^S6Qp_m;58vt@%L%q;UuyG2hjDh2bggb9=&-Txy#ebuR4x4(#->ed2Nms^eFT>vjpK^&kDQd z>sISD`^Q?H{B%SBT7$!D_lhNG-mw0wCP<&F2qk(AyW^<#ktNWx!oT)x$#3XTi~Bb~ zDODmzDfht#$Q!gVj8Crjy!3WKmT|v0QZpa(;cN^WU1j{;QDf zpG=R%*U9)zW`6&9eBxr(XjG-o3}Q2(f0t70(nskey12AYzfK+m{f98mr*pDO@;y17 z+wi-iP~ZmEynn>~R)ifnIy!WmD63%oSYs<}fybO~!}Es?sBaC{XPkGcF#vObZg@5+ z&8LI?^U(kHgzL7aqQ}?|ZylH|`grIW_wcZ~AH6*S|HYhN`+V&c@r3a8?^gcnTY&Yz zxi(t?-)~FZue$^|i>LFVIw18q&~IOzS2t%4z*JUUlPWum^JJSVG~4Dnf)@)gm-iJg zs$~asPuC~@>p3f~R$XI{U*bQsKwo!dDYr%wJ`pQ41r9Kk*?`v&r`=e$u-p zB|-GDI}F&3`3vlSpe3dazI5`uj$igtIim*Z z2>K{|p0%e}(p-8ebY*Vet>}H_YHQY5>_xV35G#4?jo#lCHRW;ilP;C#$)7$*{p3U} ziCo;<8?VBQE9Bd~3V*9&_QY{Az= z?-T#9jnMT}C5Bm_ue+*0`Y|^4XZ5vfK)>n%)FI?%tic0yf3EA898dj7C*}mao3<|P zQMwqPzmVE14`GY9lqv;sD3VFfz&;usZHFOXwSA1N)vwRVl89uX5BLpi1x*yp(Sr##PDFk|-GxW{?wyJq~)#t10sMa8C zz-(jBH&i?ztPB0RZ#E$agJg@^V!!&Aci>kXkJ5J=J^X(rUpg>5E}OyZiH7t? z8AGPO5!sPT$(1f9-d`84zYA;l9a251dRlcqqW`+;UG!CIgyz3l{!rF8yN9_GY|tE1z9Q~v)M%U;^B!XwL1Lb&0SZo9SOC?sd914+sPbQ15MLe-`p+l#pt_@O zH4bd{ZqFU_{`^R{VGoS=f(aCl&H6*>*B-J0dhF=>Ka2lP-xb}z)djo->V{`5H0OS6 zP;XsO3_v*m;a|UT9h8`(i2v`ZWoCBfQB>&!o@Il>4jc8hx4IwL_SN#0($#Xr;Ok^t zVokuGsn}mvTQ)z|4C{$!*pYrfXQKVz3Lm)}-#-&uFpC}$-_~tJf6!Op0H>sn(I0T@ z(kb|TbqKrz3owp~fa`g@fDVBTS)uYV)(Uwp8%CeXrl5Teohp{5Pxx|lr+kjiHK$Sw zbRre4r_#q}Yt{^ESXr);z-p)ECsFS{7)`KwULrSmE4}WAW=+tzXW=tiLr>Ia3jMA`^ryGvlbeBObsJGn zG4&Oe9vR5jz3}u=^(T(enorq)NWTwNeS3iXD_8~LS?c!Z@%?Clo+kl zJdP^=gG>Ec&+Fs#Ry6-ksDAe(S0^XX)45Nw2L1isW3JCQBL9)7O`BoorTnYQzbZgn z`R}nHF6eP2Z(;7Qac87!%$aN2|9A{a^9wH%-bka+wE@Dv`}`aU_AkQ%9K%uc#vf|V zzWu)Ot2w@A^F?G|SOMJ=x(ijnSQma`FXLa8e~~ZvcYFL_f4({sxD%091kpV|(%gk+ zH5Q;=p~?%is^MS1bT#(r%sIJ;?E3=hZ$_h%Di3IHtut>7+ujQCakk?s=vu{fvloH5O-@OkNE)+Bz|8d9 zv|H&gFuwpLU;(=G_0$7gjru%|xhFYTeWAQ-_CdBIE7UDdSE}iB2Wv>LinSQY50cS7 zkCiFMq7PmP-`$xymdz^bRWf=7Jw(;Z<+ZMX+vnZ#mFQu+C_6ptpDjb3@L1*x4lDP? z26)b}J-pEGs9zR9I$N*=-`6}oX@su8i$&^d}3y^m&# z@%mk;fjFBrm0x5XkItNj+vuY7Bj|4e_wQ5PgZkccs=tE;tV^BWg_Yja`JS9FpI@1^ zU`@qQSe(yFPhfjz5R08tI-u0Mv;uYhQ&`VyeVG3}^l>{P*%|b&1M`2Y?p`eV33%YG zK!2ZFw!aTvMw!22){2!NS%4TZ;-MZb#=pm&N1we*Xnnx}3i}XMaC)T&-+KUFw>!@z}y}9+H- zxPrby#=j#y>i~}b#0FFkbSM=-HxL8dfkm1H1DFUid6@oy?N9<2B&BpK`p3VMw!`aq zoq&1d0>)Akqz*w7Q3A>+cOS7<$eY<<5WOt@fabC`<(lNN8WROPL=-TWS?qVC4_-t+ zi^I{oH?OGy%U6D)v;FUhg>Rsj#U6R@ykY)2H8J}V?|#W_<10|icS1SWYytJ?GK*I% z;FwXWZedf7ZW!MA2&$PbL*biWezE*leEz`ffb24I9PejKli?qppU6sz zkFb{F+8|qo6vaZVNl?U=Y^S@9b(15sqDACAg zME;BD%5nvo-(IC2rKL(Qq}QdRVE%tf7BR#35H$ad>F!rY#(yC-UB}nZFR!nRpKu@j zehLO4A7V8~zDIGPEr7<1MqlLl^tjNM-?69tZ&b;n9Bjaboy9?{Sf_j(tm+kQN zvi0`+Vn4ka_jR?k^~3_~fI@Q;)_MZCpUMBp*rqA)fe-7}qHoOjt9q;0;gjO+#_rf9H1c?yidy`QMP;JQ}Si#2|kxh|Na4lf@`70rn9Ahh`&Ah;V^!v=i5@^qVG z8;0}hVf^0>WDg^b-v*5LuGx!DHICm6Wv@Rf@a;&ZZy^0VM>4~27Zm@LI=?-c z-8(+-nZHN}@GqHbu^Al?Kd8;{okG-qL}|xTr&6i(IP)}iVm+TvlljT{WNf#g)^Bxu z|J!7iFK0yUf)AGNr@8*dziy-FkM3)w5BYwL0W<%&7x=eNceEe)_oy=doo`ak&m&Z? zb>aJ@DxCuRKab}xKcSI#m%g1g(-y9byNZT#ytuB-5Hy>Lpf#y%`KY`zT3&a$055}=n@mnShu=0KADFXR z^(XWQx`jAk3h}`Nx`j=k;$<2d*kSazYs092g;fMkLhW8RPxF_vTfos^5cNTM0Vp`Q z);*{#n0AicjNUxJD!-!w`DWd3PuX-kxY(Y@j#) z`-AgsVen(hlKBeTfchP{w=X?+&Y@?={PNS(@Hc?1Y{i-< zXTkLsP|d%XmD8Jp{QclG7vwj>Z+?RD?*;dnhYft6b-Su$NIIbR53TOW+P!;W0eZj$ z-ldP)HkI$Fl2|Wa#B9kosPo?x)$bj0ep=JxLL#uuOU+B)r;pIxV~4b9`We3eVtoI$ zboE~|DKX3U0V2wy(3b}<(fl+Q-4;ODcLlhufa?Fk+gO2)d~(E@=KSXW#=Y(r|Mi?B z0*^-74Xy4qiarBl;Qz;wVeXCcCBzB~?&7!B5?tE?6u6O%kOlB<_;x)bbn98o8PBVW?QueS%DonM>A0YZUlKFmZ*Tnzm+?y zEArsFGWGE<9P6Chm+LC}RkH=XPuD{46w;1;LDE)Jrv$zH_R`(hnVL3j9ld2u<-QtEB~QvQoT&fE>fzNLh?BmiUh*h%q^}e8uau9^)@LoBgJ3K_a$X-L`>OeU z`<42ZR-xACj`XZ_>$GwDeyy|D5mfqihxuo$=ldvE?PO55B@v~3zi0b+zMp6P8v9ZK zR0pV0<8=(Cg@dvWgCJ?{1!Ibfcw8adgs=hy`mNvC0u|8)HS&9H&VL?|!S{k3ibs><$4R-nr4X`+CA=@K@BQF#ZrpIuuo zWD<|wV#UD2%g>ZICW2o+Kc3Y>y2AADAsg^BD~Kvz8blXHkGbqM5ghpRoT;#PCo5xTSqki{?%bH|E-xh^#OCJhSSUc{``=< znqQVR&2B~aShf5`=_NG(d1PBpV|MSxrR7R*Q|Eh9Iw);OU%%T?{f=ZU_g=}m$gG(Ma{)s(9~D zRC_2heXb>^d^WYeo56gIT1EfHe={OtY30VZkR3L_%s!sC{%_jmFBRvIvy0G+GX?gHDyS!|6BI^e4L6(0lw7{z? z_tMQmm|vEvmJ;>BWpaaSu$Fk+nnL&^d|)1t@$PiK7|0yB6)TIW5SWM>pjzRjhy`xS zM$tp?XZ-Me<>`3sG1!^i;pzj4#5X2(S7&k604VNn4MS*8oZbn2&bs^%Jo|+pyOM3j zaZN#8xIMdpdn2-qvPOLB=jHe5yZtt|-(Vj$rygk{`#b=$XERUXEV^?XPY1JovYqht zBeO%YG4$x2&g-wi^viTP?v;(i6yzYUSmGxYQ8Q~8FdX&C){FU(fWrV*7aMZWK8D*a~@VVy*k@A^dj zFQpUHBhy~#a_O73+5Lyp-J?62e*@O@dle&H>H4+Lf+ zrx)B`c0r%zN+DMW8EvW;{B30Zr=GRVvbT@l6UQrC5Nj1Fn;H0D15Kbi+W*<0e;#$( zW5@|^2G)a7g`Ev7%k%q8oBQjUS-A-dY$hga?DxnL#I+1-p)2lp+6MT(d%^VPdMOuh zCY@TQpaRV1|E*Z38C=ar>b|IJk?g}-0V|PnT9l@xo$tQ!2e}*ygLhR@HjkS zSD3)3tR{4IeiW-(uSy^BY2bA@wX^L&M@lcj$BEFdB?dnhmb^Pr{NP#?-xE*YogSn8 zunb#bA9gA4#~v56e$i{JraO#v44=UwbH^MBo<1;&FZJ3eV3JcSZDE@k8 zHGWAazLoM7n63D9Ha@$6nF=>!3+86?v-^1FU3&C3$k#&G@0agL71QPUozyq4P-#oG z-X^SpuxsTM)QzcRJEoz5ETXQzHIe@AY$H+mcB+o34yU@m7s~%K)pyWB4umJX!CF5( z@(-~sO|m(tj?0$cXEl%esr0|LbUd10+tQEJVO*c?pLR_v=^M#BH2=eh`=$Do@%>L? zug@Uz9t!%m0RO7^DHuSoe&zfE^|Jo;@vo5(BTC~&W5|E)RdlN{DfQpa*c*9Fs?W#v z=zeE_{(I`4q2tIRD$4g_#1^Z2O98Y7=q~<3NU(RICZhZJ8`b}|0OkNjylsGM19bmC zh4cUZdvtVx?D|Kl-(qG^u$I_wO)3Wa5d&Ox1e{2lv-CkoT5d4vVYD z^<%ZTLbe&gzcn0P8^31#&(~MCu?7C+4SMqJgXm3o5K+KYjHh|1lM7G)=3xis!7e|i zN6_AIfMw_}H6i_oIAD0`bfW(|s7kw+`r!FQ1GmFhKVfdrXsQASfSJ|uBl7#vzBeW3 zcQ&(vpQ(Jqs`U-oR!0Hr$2=F!aC@)TF=PgF2=5_pa0NZ?hR`|SYq|?erc$_XzASSE z9tC|f;oDb`727lG4F}JeH}DF6eNOpCBKuR(*{nS%h)S#2d|L6a2~$>P;zzqW&4w>zl2ryKBN!d#^fPJunoWpJWm923*Y`( zmgdXlD}(zs`KHWd+@CI}m*rE5@;@cQABe9%n>vTH*luRt!(u9X{zO;QH_7ugVlLla z)r0BYd02Hc^*#Gw1NsvE{E1&X27B=n`Okg%BR%y!0%-e-8Q8W2wDr zMqi)1(foEL-}eK(J?7NVzg5ycStM3xR-Z<{z4fOs)ZRL-RpS9Gscx)iPyvf{(DsZ=UyrBucPRYB?vHIO6Phq&ZQ<^|rt)x4MO4yuFhtb4rfGu8~>9c7A z)|ohl=yV}{0v@C?=yurZEV6?yml~jwFDy4DLjD96a0xSiR>TI3q88|R*nbmpUmFtt zZeQIN9=r;31>T@<*fXpw`W7o)+z*0|gFmlUTS?>!=E!bJRhUAkoR=jzUTER>4 z-n+o)JFwRHPek_5(othRo_-q2{q5xk$;f?Kdatd@yC5^e4T@YV~f z@<;snEYyk{Q0^z--=AgWofiL(z4rjut1901^S&oJ!44>jfFeyrR1oQ%P(lek5LyDE zNUu_)cL+!iy+i1|L+B8SARr(}M~d_!h#*M&-}inp?t}XIE1%c*N9EerdC%^9?Y-ui zd1ltEwTL`y-+L%Mmd~Ka;;!W1eu?bF$tc6}wB?PYU4EV3&6wTbOtjOp%+K{rxcmC_ z;klCXKQQnv`aC>DABb=9hK`E(C+6#$4&J{ZGxqIBcJB_Xtw8MWvlHBhUo?W*QXZv^ zV4mJ*;r+7{=R61|Gjabn_<}d{EsyHix@U==DTw)9%E*jEi1@!w&#W^Ur)lHP;>_dy zna&@G&)$H|-2>aZ3f6x}WBs-LX8dH)3uy75x)0j5BC#ro9GCqMql_KV<|vV6TQc9J zBi@7uIAZ<$T7 zKhX}Yju1_mS!a^}-?@M3m}37aW!}xVsHOTfMZ3jgn2cQDx#=5qFzCMtro9i*(?NXC zc>U4F(E#FIj7L|O4v3Ynz0n)xFQi7Jwbdoj>|P&j()I_6-q-$XC+4RF*5;0kQ*bVN z>6U&sV_$BD)m;zEd;>3FZRU}Fx$~p$HjFm)X7|U;8+ZiVUk-33eDwnIgD=H;^@D{U zMi1ekjQ{6QN#Vsg**UV$zc!)S+Buw2G_oJo$;I2ivI2mXl2{ua!Gd?7uZUk3G`$D4m2 z#7{~8omq%&cG>zIQI2KE@A(;{_iqXRpO==9XYmX+A~yI6WB#p;Ub_O{q#v^-Z%E{# zU;k%%ehu?Kj~P6-Aj|iwJx_PfBg=Pgc>j~M_Z?4O_IjO#J5$oy|1u*sTutWIuGs!n z(A&$=`X>7i{$*LG+*JfbDZC_iDLh5zjHJbU{V{_W@Q$kN-> z-{3m>96kyAznbN)e!oQ*oJKryHt-%)8wJqvm-Gk6Ev{XwMa>{*E)9`$MU%ER$Nt$f zd>5AgH~%e_Wi%gIT@c)-taU6s87iXT-pS!di;@F;3N5$eXua8rI&|DH+fw4)r>?}l zdyDyJul!5&Ta)H%x$Qa87FDy>YSp!C(FAig@xN%7L;xcp#)cO{1B^s>A50uzEE?b! z*#2A5?Kk!NHM0dwNsH5woku#8cZYS4?mp3-5%h}9~w=2B|=jojmPB5_d9Y)W*4*&ch#?jmhOTWv2od@iO$9^uT zeqq3S1HQ=Uql=+8Mq$s#5utmJ8Fk+y1OJTP?a0fUjWM+bkZyR&rPCl~u{=J4IVGm<>t$s6APD{AL>_~Uv+ZbkpH z#E=*NOYE;Aerkcf9zZJ%u_>`4vGB@M#`&$$>=NzMj`EcFQq1L=kF#Mz|H;cBMvYz z>~jy=1K;k<*4@5)L$`m=f@G#0MQ?!1kX`2xcOJU2u-E~xfJ0#7%M%OeA(nR(t%6fB zp3Tn88hGKrYvIe!(JJ0c4Dfx%4tTK{GvH?03(moh9!AF8)bt$wAZT2g0r}fCxJG1v;&RKlm#`IP?hJ3|)$k@4+{N*u3^p3#N??JZG zNb>mBp|A7KoN+y#%Uc7#2;cuMqjmfcTR+VNGvM7XM}%))IL@4Cf@SgdS7iNj6FkA4 z_8PbXyy8yALz<8N&u7u9(8Ju_E70HQwZ`sW1&2DNY3(=1|KaY*-F4~P|0XkeoWM+t z>vWdw%+dK;=N%aKZA55~f_1MC`bGZI4f|iT@%kO>!+ih5`m4`ZY5rIPrALe568j$x zpwC!iTDCS{%x9d-oSO*1oLH|_$z?wXu6P%=|6w$et=VfKJEQR)A3|#OMKjHSyo-o1 zfQo==B}IE|y1$7DI$EBKI=~n}*n`-qwV><&)mT4;@PGV2@0VO_H1G(!}+E`Xkol;zqqe)fa_S8z--ixY^}Baxh6HLw($H|`)ChsequrX z8VmNQ`M|Lo^HT~V0lUzedoj%JTC~#*)aWgYD)TJ!1Ps9rO{Nh8X=Vuz+ph>t7_Yb^r|gUFNu1l9<_HWWqm5UxBwk{~u{3 ze~8%GognTK+5@&Ehj1-$wj*3%LwXI(iVdC-{7yIUGXtNYjs0v|7fvCzunps9E`jY{ z2qZ7U?}8v}K_c_p!4xhb`|fGl<3{7bA$dv$W*+M5e!}2}6DdJWe9CHVgIp#KNh z{qLgz=7HsJLA-ASc7G+j{bkVsQ%~?3*xza35N1YtiXMPV(gtw_k;kbAJV2y!epvs5 z#QUz~i`l<#6d4xt_k4*SJ|~gm|DEx@dw1vz?+ogEuQMSt`8@(#JR5$tEj6?mA!NEI_PR|GwIz{hx#9t;|@~2ZR1w`rQvZ zbX1$o(MN-^Vr%0;-U=tUn&`w3c&@D7wy?zhg7q-@vham}eS39)$gdb+c!GEewt}pG zjL84jN6XU7OI)h7)q;_?iHA^q1-)i^tnJSD|2Km%vjJD7789KfL(`J?MRt(vG57kv zWpARpTK%HeE0P#ZQCEp|H9&MgG=p;lh=1dO=7^aUxDF+=HQ+K@DeNOSj#A!%^?8rJ z0fRf+(GLBm&Vt?jm^o-b&#cTqu|F(8Prx}TF5>SxvI2UEY8}@9DaO3q1YZ79GuOrG zy}#@I225ZN+R1JMNly-Z2J3$>p7j012ydXR;4oSOj;9^%BACJnWD;$RHdv1q_4NiW z2bMoa`@pM2;O@hYkAbxx&EHW(OzMN3s7=*#5*Ie?hp!NTO}4a)<2(?n|V8 zGxW(!=z#Z`%kU{8_%Ab#>95fTe?U_VVP2DCdFn0XC5Zp`7~Ax-jKVo3+p|JE^qW|oS`^1w z`g#C~^^4c&hSX`Sf7{|8y>9(hd>}rAXJ<_hBjW=`wAU%m63v8TeuEXNk(K#Mz^XQ=UtS9>?mxP7d=I@#ACTXC}5cJDEF+ zlDW4OEtoT5+oyv4&&t?6tAqJ9Xy@B~g57BCpBexEZ5YE9Wd5&#AM-qM!wu;f@Bpoj zgJ`q3oEFQu`}g$!Ep4V(!<#OGG0FVb?U{%9dmrqc!l+)~@4i8n@1aeO|16!aGqT5v z@UP3@WP4+0SBLX2iS3Z{7vq=7Rm*;)B=zfh*@=>lXoKSaZB)5nK$t+ zTsH7>o^mEOejmK~wOH0gM=U|ko{@%yiOlcKkv+NY9K4a=f&V`f#h)Df|Cknwp>X=8 z$lYHWcE2*c_htnD-^TVYL3YniK>fz5$&6w znGmm~=fM!#`Cq4{r@4trDKI8qPGcJUys=hS;yjG(uE`||%V{P^`XzeUh*tUr;#;+eMi zuY#RA0p9;?zu(i^cRiY5EA}l;DIE7!|6q2k{x(D@9)T}ji4_^#^ad)~kEa}uzi=H^ z9~L*T6XGJS~G7$gQrAXNl+bdtC^$UC_wL|v!?rK2!z;~&~&9ME~5ZAesn8^sf zuyvSNO>{uGet3M=-Cz3K_nDyi1zkmtfm} zAS>X>hKc`)Sm9^sO=wS|d&wCT!P^t1--c-2C=k0Xp8b+U_ofGPi=i7fXWuEXiU(NK zA-B`=a2-*{YhfFXQGQ<2A9)nIXB1I}P0<8vfc`xx!zi@NzQh22MLGIo$3_3#MD^CE z$Id2Td~uc`@cX&&_noQ7k^5u=)8irZPVgb^7#HyL+3DGQH&MoQX?^^Vu?|Op{Xa4P z*|zjGoSgZ)9!D=;$v1K&|I_(i=J|e~{(ZO5yLZj*42O}k|?fe-G{Q{qEpua};ilnHyty8tRdz6&$#A+8(4r0ZN#cSF7`u)NGEZBYdzbK9lNH##u zoda229eEf-%=$&fiKx-WRt5d@BTw-qe8QY~Cp#f8kFi{YE*M1CtJ0p)a?}8N1lq~6 zmGPN__iE#>_&_{`An31g_et4SNBK6sPjZ;u4$6ziwCCszWn`pp&`PoteJ0PKmT$-3 z-hp2E3pMo^KR}!&1`zyLJmBN#57NWyYCZpB_thui721C##QTVNIiphJ-e`b~6_fn& z!En8GY313An9dk1&_(E}8;JzmPR!@oejoLlj$G6|@l)UHEYRJ(dwutv?uZly8gXHzt1NhcX?XapJhb6nTX2`CqjNMw*GNE?+Nj( zCj;&8(!Mqk-u9I6>{%w5gGk$?6MO(Ku$}ODIKxGt`4?dNJR%0$6W`ki27fenxf}-n z?7)EyCf|n1{}!z=4zJ=S&b}Ls@C(j31CQc7EcLnE>nJ=7{e#nCA}7EVZUx6(*!^tS z`JrHcmkADK9^SoZ&07Y~es1>92;#rTum8UW+y4c#A0NQeN8(XD%UcbH@4rlMf&=MM zH2r`#$WPjWK8yqVzlbgz2lmaIK94VSB4c{}lo9==VGgew$n;ySJ3Zt2T+__o`91P{ zUWH%Zz;_=Fnza08`pEmu@G;Ua>Xnb!i^}Z?{$+}>2yPo2inmxTdSYDro}96Y2sm=R zbJ@740qP8S{ldf@_8>3(KD7T^p#L_s(l(Sz+i&Y(M!ig=a8CH+u0)O=C2DaN*{<`@ zA6}`C28i{qXnyQ_@Z&x`|Fi>St0Dzj&`%29|F#^h?T?>Q)?Ux1qM6YUTK_g9;#+9q zRj~YH(W*C+6}%a~x3h@0{6BHO)N!;yYE#P}>u*h$J`cAO{Vv|6bcWj%6N-!k@zDrs z1zQBff7*=`30RgG#YW>}0cXSNt{U$L{0htT4t~J=olQEYb)M-=O`htp-3J*pa4tru z-2zT~6gh&YGIH?QXn^p5S9&JG2JTIk@C>xs-%mtvGsXjafL_Cs!o+_H4$sH-zKOM; zkYyr}KQsMh<^_ktCRmM#`aH1i4``da80?S3ANV~j2(J=99EaUK2fc8A)64Kfc>Ake#|Tbze?Nwqs-;IOcUeZksgOr zV)gGP*0%}%{%6SVu}`1#cbp4DI*TuJH2D)7lI!zLX7L%vxa-3~|C`LivL~&5(=n#c zv-Iw{2Fq|5SvEhxE)0Q5r;pzPO)WWoT%;s59p5hdA}x`DSdL_hDkoZbQL4SxzK0tW z0|<(Pf7=2oA8=u8|8D4_`rL9gjzs+biHYG}SG{cpoP(=rf(^J44~CH+0@57O*Wj ztH0}hfjMcHBA&f1vs8^n3!II;v)AAa@POBQrs}^I{rTSSKZFe2=g|SH5xc*Jp0iVt z6~7j&{Cqh3(?s9ChUYyPo4XvIwMcY6+(G2gJq4S;4(z_(*!VBem-yX*f52OJOwAd% zW)6DUEJHio>RdewtYI4B_^*+Z|65w}Ugyj=i7z|}(|8u|;x*P^;rCS*x8BC`(;1hZ zia#Vvc_W^=GnRi(p1vOUoE=s$AxFD#{Xd~8t|KzJCGmzXa~+*P%j00OiY}v1!L*EF zbR#{Lwqop%>HBy3KMnRThU=fqaw_8{oDBAVP7j|oi1~f3=e6!lF#qA*Z+Bm%htG~= zSxnJ+n-;Vi(Y7bhNAzcKu%X1!67AFOCuc+6rf#>6%hHGEiF@nQ|E&)YtL|@ddg84s zEn)5@J*6Ge5~xqw?H;G6#eI(g2PKxEeAumdNEb zM7ft|#C&Dm(KEyPW8K4+<3C3iB>!)c@$Cb#ogV3nwNK)Dv6|pM+Ms0xg?_!CSpVck zc*b||thOR|%B*|m2_FgOlLd8~jE(%#Rl+}|f; zzrV>3N>+fLfw?5}Qo7}+>#fKOI*R_m>VUD7bR3N3AuPeWj21K>{e+L}JV;)^a^1a& z2R_m5M+W<>Jw7kDnV??SY|O^g^Y0psrM!R#Ls4Oodx-uvixw>YhLmlMbD z4*UVxwLinA{tB=E+aP%exLc9@`CS+#cPn(kR73%c3O)u_Ct~Z{hA9N`uY=@|&?NRx{D6DDiH>-M*8k6Q z*EzZC{P_3tqen#kdmMQZ&TtF40B4}7)+TG<3yffN92rO7?tOzE##@us_Y%JTp8ZE) z^}o{pE&B4`z?+{A?oWpAyBy1yK0A@;w^Gk+Wct0-y^$Fg*6dE#eSu8BEjtU4=ko^H zw3m?`dI%PGGsg6DH2*=wWvfS@Iy;h3+&>y1bsAkCW)O)`62cI}`o(+nKw1671(XW4 zffhVk;74rFjg23PEkB3)eu8YD`>^UqVf&q3)Shcz5&NIH@P0U+1N<1>uqM&%tFde6 z3#4A-2Pi3O3}wZ;iT*6n z2gU-j9q%AoU?DikaQwI(@Kla&Mhv`|dc6^DcONqGTE7AGM_&@#b#dnvJb@J$tzt~~ z=I(Rd&oOS@@^}OL(xdfM#tV=MTn!8O10#nm*MEP;5dRGQZ+Bz#ppOR30*Vf%-{2dx z#xG8W!1dVUFT(hz2Yrh%KgQN*fyMC&-lnbamoW8b$-?QCGJAcEK0_L4XaSR&Zc*gSFr)SHa;XRA?{E%Fqmx-Djg6*GIFnx_8{`IE}1q#3vYp z6&OmbZ%SNeG_`pK5@DO*tw_Wpv;@7?Z$erG*6xg^Rqzj;DZ7hxH|`z@vwgWcanBq? z1-GY-`v?$lI+3r-n925WW)hl~nK6G3Q+~hyT=eTZgPi`a_724xxSY7)x4_teMEmas zfxjR48JPY2#NDSNXZUxZ^it4#1svgJdKFF1v6;!ZnI8WCHI_-~Tl8gY{y=&cJVo^X zVpZw!;+)lqChkCc;NJXh%f8)c z7ub?9%;%?#;mfq^y-U`?1N2N7MGoS3dtV=LDRzHm;(V9%-;wscZ!>o1YheFI-gFG! z&xyRXqotinRP<2#PH)yTv}bNc^qZjPS^D=LNWbcDf&Noz@0+pHWhCDlX>mP(9KZGO zxR>XvFA8qV@JXyz9T0A44JOYcR-$jM$NDQdqC2ut>*YE2#eZx<@E=VOpI|l+yk=wj zZzK2P(FXm8!30+)8evP-tmBa``bB)j0Q~Rv9B7Gcc^~cCXjsIY^b1UX;PB&M-`{x3 zZ45oSL5&~__$2cEzgMQbPc&P8gZ}t8l?T~sgzz49#&@XUb@@h@l38&9nKzqJ_r?LE z=L@Z3HT4%QZoS2uOAV&hqT{RfTM3AtVEx8FEDK@1hdZVvK+TXyVcL}{LvRqbU`0x~ zEv->UG&)pv2yM8t7-agpB zli&dtku7{Xp1?Ep1Yr? z@9wO$_b&>X=O8n937)V9S%NEK(SJy;-ayXkp%2pJoHqp{l1#)h33)=FC%@o9Fn=)p zh<{3tp`{oRphH&A35-(oea7s)igC)8VvOPsdY&e)?^^twF%8>4sj>a1gZ~p5KW!Jr z^IML#{z+-?d!TzZ{U{b@T%QN%-#46Z_b1rYC2;FqVOpz$9Ov(KJP$qo)JIxu%JN5Z zTUTlX>oB&W^nN5D@={0KirrU&v>bI^dKE)vNIYMxp=pujKr($FbJ2@nLWIRnLYAr0!z> zOQQ$d)^YXlO6_{jVgs=c>X5-XB9+JD37kW8$Go7sh*&*G ze()sBLc4TlGe)Vqrt=y+U@3YGkLljmeXlzOI$%W4Ht2w3XcaIbcnv)Tp6Yq0=PR_1 ztqOjwWwfqD1bP`4XCuZFy@JfX*L%Op`1xx!E&iKh#fP#rJz2b8CD&(8a*5Z+HgAqy zUlSCMY?k4md2#SPH@W{`Wo+F?$qu{@R&hSP2hQU6n%=vy-@hhX@DZ{He^39SH((sU zq1V9W96yczKo`*~z@CR^(_`>7`UxCIf8@Pk`h(~>_z@$3J;69($G};ZW~}0;7=2(z z#_pP~|3_%FTgZDlw~6sNUz)uC^v3%?iE)#5A;W(u#`Kzq8N6=B>tC%I%lk?q{>$L? zKSxYu4F1(twDUWj*CNz@T4UyI>cv_S|JFnJT5Lo7I%`vmx0b)Qs+NOqF)QjtYw%xO zG1?+><9+6&1S3HI+0!mXTf$5ov8wb)?iKs*df{IN;1iq`>?gzlFMt7@g^#-| zPoC;88X$OYS$|@GL5&#l$iEW$04FaL-bzud6qh13jC(!$(VHX%}a={ z?vACkB_Q~>maXG__gH`No-dzm^?}Fpn|coN{cYQQf_L>nd3_$Qcz|*e%c6XhRtP8X zi1P<6PxNOi{FTFC0cSR?f;Z42a5o;}>-{?9t;|F;U=w-@-A!)5x5*FMixDgzA}079 z+Pl{5*%3>40;n)IU@Y;md(Z-J(KfgcZG-nQZqM=q_N904^8+R%gJv1p2#+GS_Yua_ zeVyf1Mih9W_g+TextX!|9%b*_^ecL+_chjD0n2Z&yiEV$`^Yc4jqA?p{W*77i~Rc$ zj0NDlV?XGfr5UexBpEuJV9U2=*@CeOR^eHT^v=Z@bJ3S*KISHxnRBOaMj`oZZ-06l z{*Jy(CowkQ=4h!|8G+`L+AD#3Zx7VlvSH#%IeW zlqP7syl91>zqGvdY#nPoT9mpsM{+ms;h!2|ZfyLTSnl(Q-#^3hFrMkL)cK0A(%F$Z zm)t24|Lh3|s9pp{0A}Ycmcd>eMt`y^iD_o^M?>8SUV2 z^spK@I>UNbSG4>t`k>VuKB1xuN>3!Hq)Ewe@qTk614EG04QT`VIiA3=)a!-R?sY_Z zAAkkC-LIFqsApnc%Dp=mGG@SMx^t4%ei%6}&v!rDGeggkv<>b|Uw3B{JQFY3-U8!# z?nehqOMihQ`rpZTyEBp{vzdsCkd%)|A-g!N_M;8sajab9;j8^&< zd*9;!3-nF63v^#g|GdliyP7e&DEK1+uBl=&@EE^LJ_%Rv7 z+cNIgX^hl$GdV*~!@l1c&|#GDFEB>eg#3LDKl~3M_{jkeG7rZC10Lr8?aaw>HrJfQ zd|Z1n6Xzz)vH_$2F2I;UGYwd9z|a9}Hsk-T&p1MBvbErV85uw5+u(Z|+V7|1Z^{7^ zF*4tu8P)U|#udARIOV1N&**G|e|ku7-ZQLc_MXquxA&ax4&4R1A2nHiD=~)mpJ3N#QR7?iEmvsr`vz0v_UP?9 zhmWl=$R98KMo1}_a@&0ELrj}H+&V%;tQzuO1S{wuKm zBC(wt;CZ`H!o_%cWTeop{W0EOs88R)?9KjJDeuxq^(dI_<;eBEXoK156A=8TEv#&P zvV66Zi2zLgFK7M3O!7Wq0u|Ft|Hi}zd{37)(h-d}1!E>Gg6F?4+SWO_jv)KPwm^GU zT5qxJerx@!d}WdEx(N4(^&0eNI}9O5#edGtJ=*gk3%N2eA!Vr$A315YgGbB@SqytM zlCeW~AYy$qWj?bRHNaj%jtcW$zb|*b-x-3HJEQYJr^7gw%Om}#5D|Q)+lvku(z5|} z@i3V3*$sBihY4Iq^z7N54|*nLmagH9-+uy8fyWq8YyhKnf0tQtmnElm14icF86Lhb zf4eiowzwVwvgaTQ|Dyr3@cUgx3?9gs!5{U1kC8xMVuq5Zh%i3JjHS0Q*Z8&lZ)N1b zhZrCDF-8}Eh`qmTW(PV3bZ0rH|542Bw=aJE7R>jxChZhMm>+O%F#l~({{?#PztQu% zo`;y7a~x3&=SZ(!PmYCl4#+h*=^sR6u)F`lKc(fh;bWd1ME<~I)X?*#f6=XsF{EZ$3FQ zhYlv&dq1@0W#|ASF2j%rIe=(vvG3Q-7Z$~?<;&OikA^NC;oe-UzK+g_=8k3%|D`wL zHI$vu-k0t0oLCHx&PJ&gYT5|X1F z;Suz@UxhhAmL)51C~K>+3}^VComn$RQ|mN9%X!^UxWKwu=$R8bUBv)D&qauqq(kP{bDrPskCzJMPI0m869O&`u2Q*mcGmB zA+dCKith8BbLlrVW9NNZ)2@f-?bT%XtboN`gryz9+cv-S?F;@Z_ebO>(_i!(8BBzx zT5d#h^g+dNiWyW}p|JzciVm0YYyX4)xq0T&c<9n8Wg82OR+yY@pe5-;JsR|12{$}|Hg|gkReOs_PliQM9KD;GXptRV zoOA1J@&3bRsr{*?)L-;NUu{rzo3=sa#M+PSl>C?Os84lE$K0Y=QufIS-%7)uNK z?c@qQ4)WgZ>GYof%R2*edd)|ia4F{NT#IqP*XMU7{Drxg`{R2Jb~F3uH^{yF9N6up zr#)ttrCUeb1WB4*`$hE|c?j}3v z19}S0NgMZW^cA{;{GiFm4cLelu*R-dT7vaI2 zKwpQw=+CzXqj&$P=j%Nkto{u|JvZ#m#l(Vlb&h7n-bEP0^EJN7iFm`?;WwGv>)8G2 z&u_o$%;6{g+k9X9Wa#sU1BCaB{ExQ{^hJGQ19F3S_STn6wh}iiO<;`{`eptHQN9=G z+x0rO|9Wb2J6iA;MLVRuNJ&znVjIeyMAi!bkx^wQY{CD|61W=Ce`lLL37fVFd}79i z0T}(N+`nSN^5RcE!vCuhCgayUhOaj0R|BX6wEZpi)e~}`ihla;Q}gYX#$$43&hyZ~ zKj(Wbk9Icp8oc_AgYn?IFSn1KFWk52kL{n4JEW$(Q`K4OGhRT|oBNF4$~cuIHG%)b z0@GrsAF3qHj}$M7U+0(sW(gmLmOq^c(q-s?+u)Kf&|i4U&O&6l?a%DhPjx=u{V{V{ z?@Tn{m)$=ztH|Q8fSqXtK2MGEr2AJH(wtc{BzK&-65op?s zJ|OnDIhA<8#%O>A#%p0cb*+AEc{D=ozi2PLppI}+6Xe`z?$XNQ+^e+ywRlVqzs8A- zRY_h@>_kPAm7#D^e;qYMo3$vV9ErBt9t$_R$q>4TsP9$q$a{$f^fHp=(w%J?H{`C) zAIT0{m@MHV$c1^eJ0Y=vWr>yTK)n1|IDqqtUE5&H-tx{hXdaDOw8jW*Q8%yF_CurX zdJXn8F5Ykq1jpDB{}(kGN1|Bt2kFrgmw@-G;8^08qsU~~v}YCan!ZC$&xb@be$~B|3{5A zHKJ>uo{@j)&l~g??-%#U^^JWG`r`@c@7G$|1ELw6>skC4Pb>V3>MYh?{I!bXL=O}L z5dDK_dsu_AokuzQk&o~y{@YQoIeVj9;}tPXjHs0`B`b^gkEGSMk`;|%1Zf`Rc`b5B z_dzZWZ!(-$q*T*1t$-N~Ba;8G?)mp+1={qCWuVQUq~DiW?AchnKg>Vxt@oe2heQPQ z0+xX>88f*E4lt_G0P{69VQu8g=lezjd|U&o3Hq{v)P*<~-)$7fJ7^n%e1FT%8yC{P zSN4e#6$TJ4kYj2A#}7A4RT*8FdR_@x+8E}zHw@-@JeaevdY2MMeu#F#3F+lBqR9++ zlz8AQw1pqsy`uXFEMN+H#4XL7w?9J%oCtn{RvG)go5|=n zk~-WLhP@g(atNAoA-+|7{@{P1#^!6&E52WrKl_Z%RRlmxXS{~A0hDDA<1fBe%-$M| z28jQbvs0g9)3zq+x8a?5Y`wA6I&xM2;)>2L&7Fgg+hJdzP5vYr9%10 z(b)V*Qn5&7#dRghzm^xcKQU@$(iqZ0_;y1m`5Lg?pP>T|BtJksa5nMG+h|SxQ@^iu z=I*S4CvbJ=b@~eq#bTaFi@to{L=9_z8GzwS8yKK zl;g+3hpWr*wd;NHf9d!*LOcd_fYG{ZK)-tB0XLs(_-yE=)TBkC%2)wPU-Foi&>UAI;ZG$pBhz9U!Gr#zs&~9QMU{K(ac)* zZ~}FC>d^YFv-01Xv&I%ds@9{|!Kp-SU%~T#iJ1S<4f@UXi?p>?B8*Y%qr8;{h(8dE zAG=d}Kp!$zWj^|muY*L`QgjR&V0&VpG5~wTng>uZ^M7r`|8?p0_!Iq~xZlM1|7rCX z_xk+N0KU2YfO``e2n(8y+F6BY>9KHt^QoWxn@He-jUM*<`d!to!Fv1kvz?>v4cde7 zTv7Py7C7a$l#nJ2S0FKwJC~@b#mcjQs4kAO4ZV8xF*KKbXkf zX#S5v=j=sR(l$JIYyLJOmN%3vg?Z_#J2m4Oe7UE$=Z)^;-P>XLCw52Cv*9O{dqFJz z1l^Z9_Yl`OhOyCCVU~oilGpPXD7p&0eFl+`L+Q=CCDGB6gB=w2 zW%By+wG_**jGeXx-}2)cV?#dnY*GL1_N7$q=|1U*K(81s3jXLA&6coi{oYc7H^E&`%i)=e+K% z-6!z}Ch7SBa}2G39@v=nfjzLrM}g)s=mKrO%ekx@0dV_#{_JIUEUoYR5=#`tThJ1> zY0oC~yIF&__%*QL>-4P6{YKIQe^o}{SiWZ&q7Fl0^DFb5rN~Sk%$Phg@!T2k>A%_Y z6{2|`c7M-!Cif7fxUzc|I%>D>W<)L*B%5gxGWcKbJPg-Ak#@Ze7zb(o&bMjZdxLko z37_p0r2GiD&)(R)jme)GN=(;z`U>~jdt?6b1A_ka^H=M-1pQ)MO<-+g&Hd2;IVT=k z*=lP$+}@gN89;bj>NURI{AeTdxc3D8_w{?f-xru+>|VIa7EP?lyM_^#jfv#63_uPL zCJ>)r%U?&c-f95LF+b968bGxUfKN$ZK%ja182oL1ZJYdsUx+n-#&aSc$L#dtJ_u+4PSgA=gJpm=blTVm9_$n zXOipp4w0D&$Vfbk7{xG377e3RdB5VAr3plN#s1U*SuYPX|MeNXE?m=c%+33+OmuiR z;@Zc;iw?uGt;n4m6HE>8ublDox43Wj*#2kaFKvH`as0LKpVmTIL1F^7i>ed92?v;y zh}!l|9N;4A=MW?+aamC+maWa$Z*eWg{n|A@Sk|+z@4DwkQoKu!$3`T6l=Wx=HhA|MmU;y8lKU{zKjDzFYd!B5cx`y&At5*2(DZ{X|nf?JBQ0}f#f zp*uQHGn(LpSlC4v8)tJe=Z>JS{8jh{Pjuhtet)dC-3+=Z1{!UbGv79aV7UDrwBBvj-2lw5#+YV{bZ4c<&V=25jM4XC=cdkC#4a{tM$|`UB zKZ>V+3$2}3!qZNpt`3FY?vCZ(gg4IUor@y3xiFWZH?jMb)Uo-{ZXD;-nUch<8(a%Q%=$|b_Em=civ+(a$ z>bmf+P4{TYLTLacL;UAxu>-f1rf7uRDH)S4cPLT3CBgdKJZlD?I61lcU+I3n+v&dDd7<+g zX5+jRrauag#aX$gCcgI(R`WGtd=D@}#tlur_F1t0*wU;nKKOJAVE0@?#GY(}@-jKa$=zku+Y%l6%F>0;!OWiLzAR3_Jd)3k$re6#|+aIeRP2thPzkbOeYTp?qN8`<2 zge)I~K9~(F_wN+-|6A>)ehbe}oKGvC7+_+5lQ#TE1{6)`f1{%59~BKS3~O=}7V`>X z0cHgcLzgblU^NI0!ma5@M(QjG_gD}g{CkF&S3AT;)YVE?+W2!HrOW#peTwDDma-Zi zsYC|%xi%ImR!a?Fd>~rD@q}f(i%{|<;R7pzj9LjK?%nSby@S`R102cLqGb7vy@J}+%=OT*BYW6Y7k^s$?} zI|o*K7M343c>V@w_hP|6=)8kQd6RjJKkW4De%Sed{~vVTXQYBZvGA!SjXP?f`7@=zHJJ{ct z*6vk!!)19>XY5IzKDmGLe8j!TcX6-ZslK9-6eFtEM9>~?6>aO6PaUM5-D~aU+|+Vy zd0wy|xv*~L#o{LBcM4zp9(|Bdv?31kO}fN1S2 z8dCUo`x^}hSh3LnX4IU@_j7DmYb#96y3z*-s;zA!f}&p>DV;-Bfl0yKtYpp)Bg*zuV(dFJX3jy(jeQQ@!r0EOAoYIYa8Gw$2ETt~d4nFu zFAz<5noPr|I=}5aLI1;BJD1b<<}8*o$U;69eR4L}pT)2LU32fL{GLMF{UOZ2bpR}X zRA(o=lHtsEHZN`Y({{epc^9t#43Uf5XxF=%a$bqumy?|eJ3Ew2&E0sDO?abWyqma} z^=IV%LCssoA5s(MOQ;c(>t}2~2sh4GTd~>l02zT>`SQ`r)_~WDt~Tn|t_Q*XdZy>j zOQ}}DgZw$jyN;3Do+s-6CVjQ8hl_6s%goqbKBcaSTvcSRyn44qyg6vKFOh(12Pp49 z`XG|2yg4S&aK6(1l;BEa`4G0a7rkcwy_dqj{Q_eD#l1^q{)F?Z0fPPXkj#j|QxGSe z6SQngJ)O(q*znt-ub0P)gsl}<3!W>UANffgmUf7)5bx0dk&;CJlrA+#GXGna5XlV6 zwIZ=W#XF-3@~p7`c&_4JCJ?C)6Ue&W!9rkT@rDVk)G&edX&o|q*!JO*u%{P-tgDC+ z{0i^jSy(|oIQPWxf+=ZTpACJm0!(~ue1#p+2cyskhk@LaI%7caiJfEd9}Z&{%|pn( zJ&@yDW4+hFvsj}ulE2kEtBqeqaEJBKD;w~;4m}mu<8MuT`{fvwYX~0x-1K3dtTTWt zo;RE5-ksR{n}}UrM2zoDBzO$V$&~jXtp0Z3YJC`Vu%C85BcSH@*y3L~z4ZnBI?416 zLn@m;2VX1(rUY3GkW5Z^y-erfm9);mi|jgKPwGi!=oz??9*t>BoaBYR`O$xg`I z3e=gB5lf!09J~k7B@@bso|rZ2xup%P>0B*-l^H#^nK`FegRIT{9uG$?jpO-|Gmo|$ zA#1T>@dT7-qu5HemaifLnb*Sk2A4&ZwxvbtASCiwmg8Uq=fbYdA-)s7{Q#`s zDMlOp6J7Vdgf94IX9ijj1~KyJQXqDDde#pI<-^eoD>9SLGUOW`0uOqj{zQwfOi}Urxf9lG+Ss%{gGZbsFI~w&8bg6SUJi>Ah zUX0o0o8px(N@=YN$D4_Scwg}!OdH`3?qeas1S%%r5s@BUpascNe4)j^9^!(;0XN0p zyZ%22{TUlfytgs_RtHo}u<{{|0owlOIB6LTc{0|frEXThdm4@IJPW-&8e6#~KJ;SL zoaj{tCv+j7ha)F;SKb|Tg~z|zi$$+f0?Ml^Ym|f7C-)JFzz@P zFR=GT)_x1(ALI9F{_blcd*d3me<^zBB6!G|=-g8%h3$Lh^=txPSsmmo2Xjt8-sJKH z|LMb9Xtz(l@9$f?Pj-;E7savfVfcR8;6EB52=)xOs|I5K-LCowPpjx{j;pEl`UfK; zKP4OK4D{GI^ylqp(0duD<#Kq;&tc$Ne_NEIbt;n}_*Y)E^J(F0@h-mO?Ps47l{IaD z>4D&1>GN)uG5RhuieC61h5wn}5y_R`msWwa1c-K*XomV;iK3MVp^2nkQwEBG`2c;{tE`@aE&%4FyTZdi~R%%^(UP)Ut zQ1Gv9izgfIpL#EkH`*Zxh}6k?-8%?r9YV&;3drn8Y}RJH?e?@8?FAb+5YDYnV9)5w z@CvSl4cq`TzYja@DD{u<`)Fgge}iqi2Osw#mWM(06JYuY*6u^@?<02qAil(}Ipc10 z$S+xL2NmPsqhiCY8^FfJaQ#cL_-DdDPT^Z01smBPGSVQxnd~8`M`GugLZ< z%wB(|?0>$1Y{>X$s{wp}zg6Ks-!nSEdZ=&RYJlv^Z{fcff%U0>V12c`e`mhiWexUk z=64+0Z5(fSGU(r~8G&pG%ANqM*}!(@UmFOeTW5~Kn~7V%`0=e(&f6 zJ-fnxzLQ6-gH}UlJ6a=*KppKF^H4%t-1p#3uIKw0zto!FH$u-Yh0c|) zq}4HePbpGPViRJ=%inJ$Dfn+SK-vBJuhe;;lF8VA1NwFQ_1+n+p6MRQLOG4*vuFvs`7ewy!8+i}=kA-)=eE(<$bwlCbtD-kVj!}WZ zNT)4@dIcMx1-8NZZrk)HI2ga+I9Sk`=z+1wwR5Om!`fB+UCzFX*wWTr&#~)Su4CIa zJ7-yOUb-9De`Vva5`KQtdcaJe zzitOi{6E&Ftc+z1kIY;C`^WqKPj47Ip5Gu`4NzDwZV>w)>;Da6f6k~j2lFRPjTV@S zo>L2B7k>u(mk*!Zv<9pPN*piP^Q=Mf7%gsXwd<)%f5ZQaCnR&M(4W1D1SoaUEbY;f zHt(xnSG==4)na;O$COOhwf)s1ST<2<&UuCY$b8NeDfTN~n)e${>$=POSmN!`fV<%r z>vP4AIn!c4x4dm(|&Ov zT68@a))Kr?`W^-U-aYt_?T=Ru zYKb-?;6A0Rx--JF1#i8Grsc?1%=Ha2J$ z_`uYRpf(3cSeJS{0x3TOoqh=VeqAJXVZLz?TVFk1ezbtnQo147cPkMZYd-Z~|6^~; zvyWuD6$|8*as;K$GnHkfI{Y+NT}gLutbEYXGTYJ^_1|k-{JXc_%=JRXBWQV_IMCmgY&KU-J11n zn|8eQxWh>9v>K=%3eR7bC)i_G{vo1+Zp)*E4`SR~d_QHiw4M{pmJSQTw%lp^5-=qDevHpH>?~vB|==q#yDF#vYjX?P2u>KdDoW)PV`?Av%Z>#%sEsCFszoAK+CXkU2%k)4Y8$G1#*B3t1QN|*O``A4|;PdO&r zPye2H_sR3My+2X^DVrQ1b%6fuFX>i#w z)a`CyVA%Lf&S-P-+~Pd8BIvetH!Xizt9naRKwV&cl_n9t+44Lk&@m!hk1TpL)+>@M zb8uTcRF9Te^k7`sFMi-!bVA8@u#l@G>7F6lw407Ro`_q<8ySpNT(Z#y%kg#O1|yK} zk!XZkegeAJK|9K#RwtUU^7v&H)>mcS5jlr&k0rQMjmjHV96YDwmc(3|F#I6C+BEVG z!N1qUj#t0^(ga%Q*!x0o-Y%Tqv%Q1gGG8yAP`*?U`f>a3_sZh=>L$ly-W*#n7OVdX zZJy83;&BDu{+`ImZVmnqr!8e$zQ+pV{h7r6tQGH;I!)$JpkY=+at3J z@Wp2!4lo<_Jrc`y2=@Op{tl;}x5OGQi)Kh(koB25O{_1rTvW^Bg8$T}Sk9S+`J5X~ zpd>~*3iH(>AP#(%HS9TFRX8p=_DC#RY+1Go|2dZOiu|C#Yh9Fne`ABil^C=IJ=hE< zmm9b^i;mhrey|M7(&N1b*IkBS^UTb5ar9m1-VpH%aX;@`k^JHv!D(=5+4W%x|IttS z0>N~)%f1(n@v7iItRcD~_|Dx6+2UWGk*`y4?tlN(6n+`Mkax^?i3U&~Yx$Q#8XPe~ z^uG-Le~SljAyTnx!*+H7|A*ok?TB7nk#FQ%=R5j@()P+gIDTxuEI@o4=_>{x?!y|j z@HsC`zc{4FThHGz`wjn7Ec}1{p4xVo^z%~>#QLil)C0l4GXt)I-G72?m0O5toks@D zQPkf$jrP_nT?DMJNnCtC_M0PfnX_JTU5IzeBJZKZS1vIh~QXIuaIQ~&B3DUp6fYzVswvZsh7fVa@2h;dFRq% zo|mTu|Gq^uLm}DkX1-2ziSHfM7dCTGzfg<+l+NvWkc6SMQtSl}yaDvT2>#9QJsBU! zQHVCd*Kz!npQ8&lLZ+N|$Z<$yR6fz?sY}XUC&DMPWdUjDFZ>$^6z!3&L;xxppmm6x zcs%ms8~XnLH7fp-&JgJ?X$vUpAN-5{Z#2S1f@f~vJz^QuB{u83sBwnzT7|K3}< z^k{TMu2M2Q*E53CFajl^uf=MQ`4kuRLj2n5dyqTFe#EmDfnrxI2E}44F}dKnuRict zJocOu94hs$)e^2Dvk?EW;X$gnP=13}|L3UxOKSwPeR1h|(Q1X!+#zr5nK>ip_;gWI z+B9{QvwT{#LFtsXG|?TFdI_XpOLYJFWHvYt>x-b@Sv+FuEWbKzRuRXng`}KANECFJb*4kAI>&y{Wk|JvWecA|4`Y4>B@JQ~cpzpnPb=no4htmZzk=RPgI zh|dq!{0)-xW|r4G70UevvD_)G$Lm;WlDbDUM6m61WMjGBeP#da?mjnn^1Z`QQmXmj z@@wJ+9z$#2U2y*A@%kSI{l^hG`Uz-X4M}jW*4;tBQGZ7xH11ci%haD=I%rll`uhIS z0pS5{&QHq$a&~!>xsNhnokyd8YWx4bMyNKv@O^E5*uS2?*@9EUVz&m(r=iDJq1KkC zKFx|B1=dHg?8W+?#C3MyEccJ*+_PCuqm9QF-i@jKWw=Lqj?v8V{KNEP*R3lhF4ntH z9vhy09xW^?qspt-L=$+#b?*@L2hHwNMq~56Z(%*C(el*&y*g5#XL$$9>z!N7MH7g? zEWxkq!F9#w#ed|xEWCKky65KV=nuE*>6S}vk?p)u-ZF1(*@9?)qgTCG)`DK&GVd3D z5KT~T=b3&ruWFxKoF`{hZRGm}_jyCt`}z{T?~>qqH<;V%*w{UG9Mf35jHdO?|u+$!gh_-KZl<2~wb z9@l2oUA!WA4~}E$OW)+IT&u`U%$yp5{Fue)xG_eJjFeUeV&Pw_Q20*{ zU$FpjUp_%}gXmW$6w@o8AsQf36gFe6e2Vjb^aW)6741u_V1B10-)|A>%$$v#!0^0$ zZGGYe@bzr>b_A^r$oko_$$gOrmE;mUs=e^KQA$vphdvBO0#s zQapsx5BV}~`8@C4_qy!$h)?rb9?kuHx3odnk7!BQ{HFMVXAvECbcCn)y#@aFbM_kJ zb2bKNWwJNbT1d?DY!5<$Y~?Uh%<`tpY4MBqpQxW!BKja~pw$Lhiw7Bg<~w_CSr+%^ z9Y00?Kf->FRZri_{*e<*$(SGWP-A<5U}sGoLT#0Gwk>P{>UK%=z{-tpw-sDqH_kf> z#G4I!GEqXaVb4S|^ab`s`>%{PNl)R(RS>6?)ppfjwv}w<&;PZSvs;O+<7Edt*SmOr z?yGdUubvSOQjxCMe~_ZPD*j zgIzgNN~-i0_JVP*3uCuzxr@*BYxwIs2TR#@e`y-a6y%15#ZKlOb6vhyw=SWB`4W zyq_6iZd=h_dnDX`ICU1gBGMu~%9lBDiz5flv#}}Oz=33Uoe1L3A_jOavEWPa1FvDZ zkh}bh7?Hh%v_#f?q*_Uf1jh%A+!wAr)}r4v7ta?nxz01hZ0P{4K=5A?{2Zx!#!3Vm zg_KBlSa7b7Otx31oRO*EKX?qTyxwE6`9Wv!UwH#^1n&`c?-^d7tHXdTZA##Id27#5 z@4BSKo~yLC=cerWE`G22p6z*-E9h4v6{`vEQw#ad{zm5%GP4!EQ_u8n3tayuN)@7vgK5^wCdsc!GGAj zHDHZI1GKUKoSV8#Jx3yxiPC!Weaig*+anvcIe_{CQGa{Bhi`Y-brDa;p- zzg1Sme7Gg3<+Wk@```ndhz(E&TtJUE$IH2&zV6o$8QcdJuqtP!MWB_opfLE4&58U+ z7eqpplj0wdn35Yyp_G)Q1iz8!T$MdRRivrKn&;)2Vo$7jcCgbv&oX#_^T)NpmMly_ zMEMk#;5pmT4x&_yM;8SDK1D2fW&Y=m-aW@sqV^fVe>8`8&vjlKrfz8q$9@gV;y2A1 zmLYm1ch7gsxAn|?fzlsdm6El037*{RokYKue>*(GbLh?d1o8f77|-B37~jvyWj4Z> z5yxx+S(vD?nbM21&zuM|e!@obRq_Uw-tQhxFSg^~yDv+$Lo$KV{@+&v_~lX)DWRNe z{!h{W-$uV2NXxG$U|Ybq$n9Ga>whqHybbJap+>%}qc###x>`N0G&#e9b2{yS$NzJf zz+rd+mmnX%X`({_!X1a@;SO0oIn%AAE_iU@_7d>2$r;wDM|ruW(eqn7ilQGAnr@H1|o_BXzkxSP%YVpDn3!?!Db_ zDcmQPMU#7ix7@SN@_x|*o@dE@6Yt`Y+#$HlS?w2WzgEiRS4z2ZUEZ=U`aQ#PxX&de zPsx0q_pz4LVMa0*hRJV;Uw9n#c`N;Uo?&@_+|c8&{2Rda7YE_-d9?p#NH4~+2v*;` zsAMqvkwEvlN12Om=!<^q$h%oWzjoSQKjroR(=QMW@GUgJRMh$! z*y}^V>qu%;wD$GH)Xv6V^FLa9R?Zp(Qy5O3z{a!>Y>(G}eB&GbmTZvcuoDlU4K7A6 zY=ytD7`2qzk{2trF4kn0LV5Nnm#%#r|J6@S$@Qw76HO2~QcDE8xob3q#|lq%rIPMD zdMvu3wtRNpJx4M(Wh{;o7mTzxE1s`}i@C^Uup6yahziDo|F#^_ZC>q@>$Ge<;E9f`iFC*^*5hUaJ%3#YkC`3wH*E`|R{ zyk!seTHX_TTklk;^uCte?Rwj+i|_0U(zDldQnEUp{ochggr`I&c&?a<4)J)4|Gszg zY`=v3L5sc+_+FiMy@QDDj6<70LcQMK)Tg6(u1tN#^5-jrGsqZ{2^CHr`=8Q!e@oqB zI#{mlNS0Do8X#QLdWs|_=f^TveW-gr_4^CY|MUM^|0#+6+3tThI2|#b`v?8`b<~xN z#L{Z#)S0!C*t%L^dA$9NhzcGH3%HdSz@y}byo9&-8`$CrFvyKLJ_H>wPa_4vd1TxA zR5p~3l8_duC9RQzvh4nkosL9B!pkm}m*TPLh?09to~L>wn99?0pH|c4yqu-HMdngY z@1VrHWKW?k|Lc9~?BKh7TI{mhdFR4^N|tZndfvS(d>!?FtJ%CuzF^)lzm_*o&o>Fz zDxb!Exob3l<%kZGzlh;Qsn7MB+PsWW3Lk7N|6TO-IRW0k_V|cjWd%kr`VR3K?9mWp z>IFD^T-CPU*!AM~YJk+DvQ(`BX7~EtJ?8nT!`OdISzli3|0(+a=cw;{#kc75Hzzf^ zKTLfaEP2}fD#OD6iNgBzQv<0dYq0!*NR=bNEs0&&gxrAR=sV=BFTZ2fhd0O%e*noj z7HL|a(1F9{D*&}bba+juxiQj zj@~s-@Y%t=_eoiEc2F1e)w6>4l-W{f{YAg=U0eD$M<&i7-v4W`{}?qmj`-i9^z>Mh z2%izZWIlK|zeBxyadP*?hp^=@WsHU`M7KVDVL$kHf3P2WUst78^^q)NnE$6yzrI-h z->rX-wp~YT-VaZHVQR{6U-%dE!GG0}$f$Y}|B22PVx4nkv8JtP7xc;b@PH@K0PnH9 z%IrE9;$!ScL~sSpaST}5Y9z1ZJ9VwJL`sy(;4d^yDhHVg-GZ;Ltlq>*O7BUHis9H@MBcd_qv`TE0Y; zIC>%P)4oBpl;^h3DLnTrgYT7h^1FE?Zxih5!xVb$+p`F4a09IT@$}?(p2Vl9!+UAb zISGzvcBkX_#=_^y;9tDw-GffI!z7ISC}%kk~WxDS6e6UjW3Y@)>>gv96BDH?Zvwz zLzmN1{0j4I_UpWf6&Xi6;eKeFk;DU*f-h9&d*nAZEv!89FG7OQNN~2p7)w@CA|qD(j%s;HaI*j(t`9DUc z?I&XF*dF5JupxhBwv4yY1P_uUbPRj9rB%t%pfeAg65C36Nqy=*TP4HFeLbzLMkJ?X zBvS7Ak+}T292wHKTGuHIU=~@nhf79sI4W@*hch>?Zx)j6TMG#m-zRuFRO5m*e&fV`{ zKqM(|Y)wb6d(Y@s-%b4g@1_0IEC2Qj97^nN;iew)<*P<28Y|YUw=e^7UTiJ3=^ph( z{DC0Ho}#N^?GJ+a-$9$e>*#<#!X|G*qK+khcxQTut=Z%U*k&G!ri3e1%1iLt?hi_4 zA1^J@I$AQs{KN({_-9vNxocgo>I5p#dEycGhJd!7sD$X z*+l!#p?)5u?dB!gaUY^z@5#h-Y`ziw;) zv#;bWR!3R0#L@JXzZHhzTYlQd?{5+Of4^tG23dbwAJ$E9rcAaq0~e{^5^6ge`izJMqT`dhgvd5%N}EtV(J zROQOiAS03sYQ)XXF}@90~Pn1p(fpWL=DTP4Jkv z@px%~tmk-ii*M$V`}^y;d48Tzx~86!?VMS$!l2qGSE*e0oVwaGVn@|Xt~rvIc^n(# z^B+kq-3IEP1pj7mnCG)2^|#FU{C@3z;oO?BEO~41EB@sHc@ys*ooX%Q+xb7&$S-A) ze#d;xU|kN->h!{Y>CtGc|9eUQ^bUXj3;6Y|jk4{9_4;q!l;>~FRb9C^=%1;%wptCm z&zwy}X+1IpN8?A{1Fw9g88PB^X2iJ$c{>^&umQfplGvBz&WVD^ko6t=SbJg<3K`Kx z#Su%=3q3x)a39HQkznb)XXICO)YXwW<+acl`OPyU$zc`IK|!%NE4+KBmSYFik@}Rz zduKbgIAzNlr-a_YbL)T56IACpp6zvoC$IBtky3BvIk_flbv$-dJz%_VFqVI9@_7!x z(q9VtAHd^(goxiw!~hO&Ms{+XcXRnNc1c;`)JV#h8VmkYXKDk_EE`@mX6f^8u@SPy zXn<&e;sNb`k4BH?&VOHWKi&J!`2u12!FG@!_QUPf4t+iUpgwzI`8_vUA)`0Nqnqt7 zQnmwq2FD^{jv4bP|L?;uxQ14y(L^9?cBr%trmmG+CENemBT_A0q)7dv#01NQ0I!J^ z_e|xd(B~O0bq~)JwXF@VD+~RJHsmg%EiI6q73@V%R4G$N%jR01RyxPM?g?UYEN|uA zEJe<&vgXW`u%1$-FYHyh>fW*L#vVM=`=yl8Gj4~cTRLYw3hUpT?2IEp`*qZYGoSyO z?Cnd5-R?y+U={R((f*9y5lojhsi%5(@7?<7xqn~$TSuvf`f|!r^2t(5_3Jl|l`)p= zSMcrgWj`I!`=5jIe{>gXDoc2OEV~*Y)<0apW9=BtW(ehsTw|M|`?B?8>Q8Air(|7Z z?R2b+JxHDN`T^PnZ=t109k45H&h{E~e9Z93Afm7zER;m}KlfJ~L?)H6AWtn6yW(%q zoGT+!zF}B%jwxl{qwwzDobOXSx0b?HzEM5d^CP34SEcX{b(dV1Hwup36Mo}a9?3K6 zsC(P@3a0Chp6zd#J!eD!kDoycn%cJtMR_Bb)QJ#}b#8Py_Uh5k^Y%HCM#rKa_~z%}ARw z#VK>YL?etPDtI(~5Vbjuo4sHoYmp^U68Vn&2P=^qOB?AA(v+0M2qR5uhoH>!-RF6( z1*N&KvKdLsS$RUfM0ilvJuf&d{QGRLjD*HB2yP3bb?^N5d4rSs-97gz4CV=?GlI?NCz<*DWMK`%>oQBjIgT&H)4#2$g)7m{qw&>}vF)f` z>A#nL4OIu0ufA>@dx)3rInfdR)|)6#tw#2JEO%dK8M&&vmd5bA*C4fF0&$sgOI@Wu=OWmd(KAcuA*(=UVMUw(F0eLBV@b4wqy#n zy@pEu`bvIq7F`hiqIBgc&Tbze|hpFT#+Wqv? z7(s8ZQTX>4fP7~wcFdNs#Ae69`nPPx>s}b_SHJ!8`Aft4tSX29gHqowPcQtZ)UhKe zb#$rwl@YhH<{ct!B{ey-zRRcB|7YU*zkjd3mcQyJ`dS{4h+jqh-BUckdJA``HEYRpsBLZ;ca#F!3%gN{M^ZYJ*ZIIT_(!b7iR+fl`Lrd7%@g&kMiwt=9jwV+vxWGa

    iapiCJoUVg#NkoZv2E*{)%3|QDh*rtLkUJOP*V=VXtDed$Nyrn=FDp91-Yo z-SiCYF7GIPr`;5GpBUu-6psG9ud6yBM*`)uT0pUXvjN2gx>cY{vJN}tGO|R&*+CCd zaibHTn{z!igGp*k;QAq>AL4$kg`+O*kCI&|q2KEzWCyIvQfRk`_j~=EQ4Vo{_GM58 ztO{tKs!~7^fujIhfM)D%oi2JURpgo{E*tO~eDfoAT*PTMM@5~{#zxRPxGvg-KKLHw z3TMSD@TNb;Tj#3e>ca;*bLP+$R1Dk>Cm2kwU?RDK`6zChn`xb33G84Q_UJkq`@cJKfUt&jA!|Y$rkp2R%`7D-Z zDcOjZur$w--J6B|d4!zhEpU{kxk|ZB@hkBpRK8Aeop{&yJJ`(hXb^hmi9|XTqaC9n ze*bHD&j;D$+u2-!dx*9#Bd60jtMAh+KcC!ZyvT=@5WVNJ!{P5|eypT?VUcl>IiZvsPZ1wzrp!5#HtR ztp(^2eP}27H~zoBvd__;GpGD#o9+AGWphgS53>P0B~0JhGROkdCNAp^`yYZgeGuDy zHNLeCtEsE6)s>aC8lWp~`|PZr@$XnnKdtrCBYIwVj`mjADSEzhO2Kl3{pU zSbKmT84533(*J`sxz1~u)!T#&|1RYCr1F1DHRMOw zyXW|;$5TmvGg#keb!75>HN;Dy01^2w)W?N@7o&N0_YLdXA1we(88wI zR4b=-w7O&6O?yN4>RI)$&z-QxBUy*lsFCaWyqKzu-msCz8T$QuZ8wbm;PK5bgTfbV zL+~WQ=i3T+Z+Tzpv!cuYF1-Bny^c|CJ0R>k_LuJu9l{le0;;oiUBUg`R0E7gTe~&W z0voXpw8FN~UJdI4w*T__wh{W@kBAl6W@{DQ7i2|I*tcac_VwA!(>C0D&!3I|up3<| zC>_9=YjFW9gQ^lb5k>HFtk!5a@NBxumJtoFX13HfM4wyG2Xj<(2CR8p^a9y|a$u?+ zk@VH^z4+Hf@taf)CD?&Oat%2XryKS3w=+3!ELLD97=04#tJ7u?xLx}DZCMr@EXQ-d zj5mJ+pT3f>SD+-m%7^^99zsh_N|0vyx!*fHZRKAiTlb$o_=CO}BSo{R`0f?+5#r;P<=2 z+D<~hRhD0zUsXQx`kv^aoS#r_y-)Voc(*^+^*4&cnh5{4)z0fU&ewWqKLlT(*YFz2 zW;CJp_BxozGOB#O&iaiX$1?STrJaz)9KrYdRlHlQ`GwCV#&7>G%M+}Qca^nfz5DQ< z_4q#@YX3X`B4-0b_NcESz=FM1FqgiXAH83{| z*&cZVXZp?Iw2}e+T0^gwd4cwp9t+P6JEyesw65NP@=f~6*4>eSD}%I?oxgTG+mLHiG_o~d>^Wk&d!}e?9nWDESluLoWA`tbB>o_jqc$r z^fRbt+9Upk8R!$EJ5l*MMD?PBiDtHpeuL9|iO+wFzib6+-(qx+hghY{iMBg~vGzo9 zs`AnFZp~Sj?-%y1ql8Ky#a6-J8%0Kv?6R-EP%m6tqqoJ@n)#=NVOs>Pvwu!DT+_VI zM0tFKYyS!SWIgY4I*Pxt{f$^J*%Lii) z3227csjz?xsTA%DgPDyMzJy%ZbJ+|L#RET-ZAVvJgQz`~gMFfr(R`|gK9ACPpSUhP z^F5d~{&4&R8sX=0oZA_1d`zxY?o7G~uER&)L}$^!EMG8*e1YnS=AjZi0m{{bI|mE# zD0X57w`q9yk?41Wu^#=v`gP>*dci8rqf@67ok~q|b%^b^&6P2k^NaX>)QAO~z&Vgg zzRpbRIw0OU{x*7rNdJ!L0_@e1MEcuBakL4Q?;HH-8m!st#5YS&)+fTzZs)JTaDzHCapM_0OWw30t*Th`` zw&I?}rZuz;533n6Io1#KSV;aGcx9K0@-`32&u!69c!U@Uv~P^&0-^qge;d^1l<_^*)||1D5JlIu83~ z=x>PSk>w8A1YzEca z3Z3v-VuP3Q)L(Hr`IcnlcE^7o46f@?iF+isT1?rlgq_$MlviX1&u+OLa^>*vKf)y5 zrzh!UDv*|-=gr_uvw`tVsCuVjX==p>(zml~yhXez`V0&7B=rjYvsrz0vPpgF+g*dU z|2A>Va&9m2u>^cgB{sVcwew=){Z9O??fB4VP4ZDUzg1Cbe$MilA4?yz)~{=6e{Y;? zrHua&(feA<*ILEZ{b4Q4%Dg7Ro<5Gj+O(s_cp$d+L$ZBw^fm8!3iU_lV3GYkLN-Bb zU1EqrztC+4pxFSi~&WrvfnzhzdR{OHaqwP=K^fMwSrnh@1(%&j9;VNyGrao&_mL-4-~;oqMyXDE#;#I>m-J{eokExrP8{SeGxDwX#O z!1IgXdLx^V>p9XX-)?JfOt11^L-P& zOCEno^b}c%iP5lV0NUh*(aFRnhwy$j!=2v)K`+CkUk3Nj63NVE28yP&+)G8>4a8)s z>Fo$B(}_Le{H-(ZFSSoK5@P?V@fGJ5R)v^Qb14J~#b(a#_*ReZks0=^wb?RgEwyT1 zO?{sOFr!yN~(ZF)Jz`OLKeNGl_BVB2~kSkPF za9q@i={Y^I1Ow?Nm<=C)7meV1)WYrJyp<;gw4F6hY@t;rS{u%I(#?jGa^!KNV zw@94-8Q6anZEp#9dWv}m^QfR5PyYOVBC+eS!rj2tX?T2})TciFp!Li9H_X&NO<7m2 z-x)kdS+b?F2jW(~wzk1qwIe{W9M zuj2jQh!WTW^vgPn{rg$=-i{!HXBW230qpM`{hK+OMfw~t@yOr@0{;Jn=l{$VFzZ1^J!Yls;CGK8o zh^D~{Rz&YJeQXm`NPmmsIE@Q&IX=oj_Xcj?!x=V^UtGuSbN>H=EW;}DcXOD(KY}jB zJECid?7M>aM&SKGX7p4<)!%{N8R7GP%4&Ju!RNn#eOd(Wr^EHf6Tb|G!~BJKrYF4Y zRIY!AjO{DC@0tC|^0`aGlf0yeSn)ST^;wwp)f8XTsyK3Y9?#LVY`L{tqufkes}vMn zudLB$=HD1wbUpiHIhOP%vJ>mj{vXETo(5M8X9o)Xdac0Y^gA8(yWZ!I(>-hz%>Ki^ zk{<~%f*GNi$A4z;|LZxr0-gg9c)$Pm86l0(l;*OMJCbMqF!Mt5@tUJR|444qn=iw% zw*qPAbY}mq%nZ2q|MD}A8~s&?@$6l+`|Rzt%Gw)&NrY#+Bfy%G{Dy76@h_jRU2RV5 zULn=D82ic!Xs&p3-lzF-N8a;!;73;A4w%ef{vMr$CRN}C{MGAO&EOjJ!L{5z$A@jE zyLc-qZT6+!rVh5CDOtF#p!Wv2`cRm`XuS9%;Cd1t4}^GtkHY>{ z5jYggjNtPC?7hy5Z4S!hn@cMb*qwcR$#2N}YhO904_MY-(9Z<+AMkJAnT6XO{{7qxf230SllLn*; zyn!Wn9Zv8*oZwTK_}9b+5xsRquE$RJ>dMU1K86~+R#fAh`2Vzb=D}Z8XPU>En(nUZ zKe}e7(=}5)TTlNvotR8|G8N;FAP6oX$|{?pf+8r05>!;Q)o6?&E)m={7(rCT2u4A+ zfJ+pN8h4Gcqv>>FI!UKvS5MbGpZnqUelc1xZKPdp-TM8$cfaSJ^FGhJocEj?Jw77y z5RJ_5kg&t(_zhz-{%~+I^ABi_joj(r%*FSGFvy<;^M4%6;@|G{&#^Lo)!_bzdB*n| zTYpRX^0#JrI5x@h@X~du<%{F9%uYY-agC?X=sg$gefl~0R-Zlm`ue5u;YE5z?IW!^ z0)Z^lYN1gi+BUWUEdcI7qUX!dwvh~=-N3cGrFJK#ly@fP*Jr1Hx6?0Ef6JQwK4N~B zz|1k2TU}1u^L%m7KA!jKb++0ct)Q2HEg-|A``KTM=+_TGvP+^X9)JZ<83FVNFjm+v+WFn_!NJY&FxTkF zE&T(hM_Mn6Url5HkKn%Wz}i>@n}fxtqtl)Z5Bzml;79R>SYB_k+5b&u+4!Sq@IQ`q z@SpN!jX#aQ@QM8YAF&nwJinjF@}JXp_h(uDOVMANh9yd8{n0R80k@ymD~bU&WHGpK@j@DBqR9TE3x zU~ADBimhbr7Us0U?0<)=*~UJgokTCK3i7#MjqY6$4(k(s{8e~!X-e++KD>Tfh5n+F z3-2lWi+_<_`2S4vB+uumGLe1)&#!0m^bWzliy9yckom!xA)HL$|C!dE7^D*=zb$fj zLiEpH1s~}BYa*L0%oTQPbkyZ(>uJe48JKn!?P8zyMQ)TCwZ66-Eyz(NN=r|<;tFj6 zEeCZ!_*Pmts?_N-c)s$CG$`-RBWj-j|Cv2Re31RlIz5DB#UGfsz{tb~Cxr!O1Z!u6 z2QE#7lUb0K=FRU;Ki1mJPrEUG_@j~Q=c1*b4_cqjf^G1FFv3q`?fxuQ@2|4_GQYo! zUPrh8eU1=O{HH8$WbfYv^I-jj+=b=Y+=0LE#@=`^Pgt9{{*s1a7sSg4_mfkuaZNrC z-aVyN*Q4!;^}%Uy0LaJg$J1Ba^VT(*M+6!>vG$5dOaE64z%~(I)OfX4wG(aPLcO=> zKQ{d;YhuIvb22J^9v=I8_;hT_XRjkH#JRS!9K#*GTlMm5=kMI;e`0{`vx=3~E-JN6A)z>ni#!4H{2hr}Zoo0!_dl~}+pWsU#OG#SS)Wb63`<&Pzn`d}=oP2rNw&Dytehjr2S zcjoRl#->`3dORi1pB~?YZ*q~ptDYyShws8SI-L2$^7Ag0+3WmW=0oBGIiBB0pAiyj zR|YlSFFT7wYSy@`F+t9g$JMyDjV&trVOzfAF(omS&54uzK}I0|H1Bmy-e6>E*~~1w zeiqufbO3iOFOb&P?Z&7!hFZ@1F-hQ(_B$Gyd@W zU}8{%nnQw*}yss~fF#O_<@doXOY@z8*lkVV!Hq7juh$jwpGBcjTdL zf@nTXC-mLl`>?7~=aTx(KKM3@jA1waSp4iRW(1U`tL*o&QO&sfp z;BRuWhmVgWpAyzPD;Cg~GNR~`h7WE^w(Zg|!cE}?dJ(@7ULdb}A|j-$v7_`OE5mJN%1p&_j(mqDOsB%~qSxcJ{)`u(pUb-}+j+1mF9n_hCx< zBG<*r`H#s^{8?(?^1Q{+Fs(6RbU#)G_bBhL;{9lRnV{zOY4J}CfTNsihM=Xhl)l05 zTK>EHIZxPsPg{*iWSo3iW@h};dykt2eOGa|Ljz`s6{zA8*`d*u1rU}R>z zh9QwhS{xZ`BYDVK;lC_{l079(ZkIWbJla}`3O_wAkp_-xFhn9~orA2s09in-?v8epv9VctjT@I=3J) zzp(L&ZU`sb7(^2xy()hTv&NA{=|{aZ>~TS^J3qB_ZmwjR8_ds$??gZTxNr|yJj~2T z=?d#&oE)C|K5FIl_0K-Po{Z+#$}i@F_l%47)=1%5I|?kzz|^P6vL&?LTArny#J|xP zcy*tYbz<84EAf&3HY2M3B$of$Xo1O%73kAxsnY$lJ!rO1AMMYUR=@lC?;Kz7fZz73 zj9=~}izo#hR^P80_^+w^q4D1sH+M^9d`!3;NkKyRY9ms3V07fkk^9@j0QX1t-4mu* z6J56?a(-6WVPxbNU5h0E!*eYXR18pdya?9XR}ztuia2X)mW0X~N)!8#2CWA6ssHO& z`=Is{0|y;O!srpN%m99!OOQTuMh!4Z9vd4*z{fryQchMaW9eXp5wQ=j4vq>Z9G?GE zqwS{WjZcc5a7sL;)ADyxmf7*&=VZ_9W^H!*8D=DgGA&VtDM1KVPs)9mkB>fl?tNgM zYSyCJOU`Y;S2@u9^y!(+N0}|Z`91V+)*N1PAGH8NvAn4XJ%Fk?+kyYKsdWXyL2K)Y z$+X-{wjEzYd;2_EsrnZ z_d{BXtB`xv$x0;xj^xS$juoVbKtzEt)?omV@7$RB)_4c_+SuFl8Vqd~Gwy~2yCWL> zj!1pDjA|nFY#-JvW5S@LQyU|j_&rD;nwlYBhiD!i2+ye~p2!yQ;vC#NXGisE@C&;- zn$N9@_KQ~D742`E!HtzUNh`?1wgX$%Y3-K*Xd{kLpW5&2VSCTi0^ecc%k0+%{aX{` z{QdO!t&5K|I(2B|rSLEAi>dYcjVe}eKlo=4ST_eqMyO1nvKQnLB&9>?`&|Q9#JjyJ z>^>oqiR35;=nLDE9MJ)h=$VNQEKAEj94UCB=`r7$_z$yCT$-z=#h&GxPDr7WD9+ge zt7>rfsmYN!@$dP{9A_$xCArEjQpK8E+_TURKWO)|M_ZV?a0X-33p=15&1#GgTfnc6 zqf^~-?7Tj>^9{oW#N6NmV+U-5Us*!ioii$~V62f09no%n9zKX)-Qr2G05-lQQr{Qe z(ew6Y=)usxk400t4sZc@GZPcNUK(Hiv|g%4^`zikA}-W$acyy{N7!oXw6^%B_EBlu zE2154NknvQwExdCx_@JQn{lZ#N@3*H>>}mGHs*gZfQT<0FY?8`7Jo59*$EW|_*{qn zXz2HUxjr5~=w~d5s4;>|dobFcID7xZsiwvMTN(ycSL)6r z9%;>~@$qksuXk_!{*|%)o(co3PZVTg>O!v{=C#IU8Cq5z&<MStzSt@X75jo;8p&e*|soQK4lJv$MuyMp=0Vgo#$-rp@* zzLTx>(GXvbjW8~jF5h=DmS@k6Gk~eNky7OY36v#}L+u3DkXn{rM&Rle|HT$w|G7L5 z9a+-rUDS=*1L!GHWt@z+!LBw=VBS1f)It!G;MfIy4G+Ko;#+UL@XMX}W8ogg9Ndfb z;d$PhbKC~UEymdr>s2Q9l-?KN<>6GH2Ns$f+iMH)-Yjya+F1OHcv*lNrxrQOo>%W) z|921ir^Pc|6Sik8$ldAFSe+h^b=fyH(!v-c>ymr$SNKO~*ayV3U2hq{j9<L)cn6*3U)bDHzh%24C62tJU6dx|3)^~7{M+Lb5x+JXe@*Pcby+sX2EZEN%QH8J z17^fyWW2C8cq@rwy5yuRQ|*9~#zJmsDy~*Wm1DKN^0vMFB8}R%K9Qr^#z<+!$n=x3 z62Rad;SHEU&0FZ*JI7!I{qW)h^*qd=*4HN&$zG}5u6&I)l;W!YNijQOJsgN61;z+;ky!AL zWv%`a|8PJpXyww;?B`thfL;!d6+-pZch7O`bdG`K(&4owA9yauSW}C`KlWJ^_T+$Ip`?p&+;(XO zxS6)3Rh2Du4cog!K8B?~>%_!>=Z6KZi*8tz-hd~A|G&=Pqwxt(C6@P`(4wF8=i^)I^|ywHE)NhNUb3`wsO6C>vaW{uOni z5~&8UptmHw5L_4m!5#Hz@&vRrf->c9q2Y_Z< ziCU_CS^-tJE&i(=%Z9R!pi;?w#BnhV zI;fWkv|T+*3H7)VgRE5SP|4*??jak9f8?_?5|Hu#QVM|Lzjx`0?1)xRW*zeo=^YQAp*YV(7nUbOSF9TpNbP@kwN92y)Q#@`YSImok z+E;rW)bOpR@yUldJ$=KMCl7!uVL0HajCpw>Ir0xCTXue|gfa0L_S`1hg>@v(1+B%J zx?Tj7l`699c$Go?SL9kLD*P8JxKb|Q-eBjgi}){Wi!?B;pRG;qHhjRLxb*F$?Lf;=>K`2f1lBgKTgbVe#U&xNITBT-;}WazA2OCpiI;P z+q79R4VoVdfG2AKc*MQr`su~VK{C5`-Hw*^?s;!t10_|Z^N|?sIo6c1&j$_rH8OKj zvSiPVj`(tT;A@E#Ka^O&>lqLCN;qIi_A_@7IfC>rDtE{ak|!o7w7E7pS8_f!Kl)DFTJjXTpky`6TH~h$Ay=s%ggH>zP1lO~aeZ=!9 z#~$g~9Mz2ZnjbHJU1sz7gUnj+i>%F$FEBP7KB38A92qX}m-jDA1n&ukqFoFBt-h}a zfL0q@mGj@r0G7Io_rE<7|F!nQ+qNGvglw6sq2;K)1}A*$eOx4GPLmCLYM5YtdIC2l z4)Dv2g#AUB;Qm+!rzaP7OnL^*E=J~*AmmZ>`wK!?6WetJiDjQYWR(XUg8VA!@PXcm zl34n&mGmle@qku%VOtwsO(y=e*b8&|3EJfqtyfEnYS6FsfW0C9!5igkb+>zD40(sT zP}hshDjj!~A&L_$i5T`>X&3!w>O?N6I-u@&_m&}ACat>W{`7?K4V5FJ<-Zb7?&jG0 zPi2J9?y4bMVe%DQ(A`OyNXwa>;c*g3P!?VSC# zqpa0M{QtFZ{?5-8ZSVkcWK2iiF5N4(_DHYb=vam`vXCEtQsV#DCS&B8jDi1ui6Om~ z{^J#qtaF;N0s|vGMBWSe$S{a0om9C3NR-Er+rmE)CH5lK^dW$W>IGAea9uG0SGD)A zy&|kMAJ=2sgI#o)7K-^q>TGpp#R)i9X3&BtEl$Lsya&$p4S5!&2hH5sNCoSqIYl{7 zqO|;Rg=K6te%;3-S~y}}{2QsY2J{BFlN?Yy?%m63f|Dq-{W&wzr;Go_90(7_Ze#v} zZzt1ZX5s!v<(WA;JX(YZ za!Dw1DgM#t@PPMKj#yWYt5=Ccd)O$6Z}vdNlo?Q zU#?>>&v6URv2LhGk8ux6yic_Hw9_OWxW2A8hVJlJxx@r7feE^(I!(BYQ_r3`uloLY8s) zJ0||X6_Ke&;tBjT{m5@5Z~XD(3S5@`Z~!C6^m)~e$fnZI^H@VK$TT3xGL-#+L>Di} z1xj}zKrXQC#VYPY@3V+P^(wlUvVeD<&J`_!WdYD$qa)x3ZFZ6GI{&?QujO8Po#%;5 z-V_#)Ke(#UUU=v2c`Cp4mhu8ymYI8TCvYYk_u`$So8bH`7idwimWGd_>4llh~@5-ky2VC z;NDu|e9Fm|cjF98?%7=B)4ZGixsKy_Jo}`Dj?TD`MX~rdHFFWJ3Oh5)%Z4z)&B^bY z5pl0H@nO;!)Gc6V6_N{m` zr31DW|9Xzj^`W0;bnwF=`CTck0kB9*Vu9PrqO&r2kv`;*zNE^T-7_BJf#HDZ=^eZ= zHs+SF0JCeq5>H@VGge@Be1Xx8m8rHBEBNT3LE9Ew;pKyVWL?=78HIAMQ}#;c3p>gv zXNoO;Ifj+5M)VBvrG5mta1p;~b-ZQq&vm8Wxz4yB$n3>`-NpM;BJoensj)>RVG`{9kryNxt-$|>d*rF{5ccM<}DO^WeSU=vo zwkT`=*klvZLo+{mervL|Ukf8Y6svzxvNV_z{ffkA&P$%p_?+iAg?K;norw9>Y%2Eu zacACBUh?fIjk*Ghzc>K~aISxN;lnBYU8z$84gN);?OeJ?R{zV$A80AD*p-md+FrWo3xf(yeM(aSVRc^;iIuOFP#Q(I5?br`S&9i(H=Im6k!2ur3F+|0xp; zrB4Bi!dP;V-h_Rf@`d-&-qsf4jpahFlyhVNpHS}`KS}@0 zgPGTjdE8D5KVJ|AI6G&IZCYaQ=y|wJ1~BI77yA#Kzywt%z#>OFQi z`f%4k_2`0lWe`*tohu8p5Gfjvl+Q(G2E`7T*7ySVMf>pWD`v+h+Pply&*#MIoRF9k z`DI3zkt*(p^)JqSChHvIDeh?zU!_vtZqEQEucDZ;!7`MsbeK;A_ho&1OdFuZKUcD4 zZ(>%6!U1JtJf#-^R-wfPTO?jo5qU@BUo>J#ne(wa<*seE}`6z9boM(9# z_U#o+Ps%)AmnSRx!Eo>E`L4+e$+TxyDTGg%A5|BZ-PTQsK(aT4o-FM=NK3l7Rx`OH0>wAmcUVC01 z@Eq|b{;6xEEh8TMulB3Ow0x5eJOF+R}+I-nUOv7g7_)1%x0udW^VqE z4f+fFdUD$THF^mqu=n5cQy;V~ZDd=p%{mfMK7iZ5t(iOUI{&>4wAuHm7%x?`b?2F4z=L^xBLf_+qk%4vDW?44|IpS%q(( zR9hg1#V7GJQBc_Cw~!^SMG`pi9DZ5c!~I-q@mzMaTv7-F|7dyc&OR|)x{+-pA6!_* zw_?5CqcprvF8mjkwFEj<0%paMxnX%2rH#yp1-M&mCpN@rq4P3AV$c3;ys!YDAWuhh8Xc1-m;7W2= zvVU0(D2-bFEz@fkAo1#dB^7%CIn@?6V{lv~?!3eU?ua+KwUNrF6B*c)9_VF>3eJfy zz&E9ct(oIjSV8W=S>e63f3Gwal1n#nEf_7oUPcllWv6&e>0j>8`Q`U>Cl--j-mmP@lvcS}5FSg<`O zW3iW{$K{FC@-yk}TbusZi&FbzV`(ur@gc$ekr@FnI_vv{G0^c9g|Uaz+(u&^FkaP4 z`)mC6T8hd)mS3cJRf1t~W+k zc7n&%+3H;G4!*=E5xkOg?pk-TB*g@x-7T*38QhzFT0<>IS$?0!IhLX7NMA;Tb1iSe zIozpOp|}CQu(Z67h%4S@{K7u*_{S&Ke^H;s&A99*V`V*+F+F#L4NgfcU}zKJ?;HEz zfaGG02vZDxGxpN<#Nf|R2Zeg99Tu$~o@^Nl|7~U{Elzv?y3}-gJ~}l3+U?gZY}@L} zEwZ6rQyR1r^b?s^yl;E~^8^U!`Mwza{oq8N=!B1sq<3%f zjx~^W7TIV6@n04{($Lz1%7j=IPkdEU4wx6K|CVsT<6(e*NWSpTqODfOKe#ZyD>F}w z4GS={u(GFQmTr_~)bTC;YpumBS5Y4ItYy1(~Rv8x`7J@t5Et!rZS zUz*s;_@G_CN?@Qgjqr7}Xt>KUF z`x@&(a=|uSAjY*0(F~0GWJVa-fHOTC`+e8QAG6LK9lP|RX7&KSF8zBu{bTy4A8O{D zU6_oOv*NLi4+jhk3)IY_CHKf*^|%)@N;28cqO>ZRURPI@JS)v5)%;d8U;HE2;IJ08 zqIy?G=|u~ur9R{auHoIegJsY{0Y_|C>A-)lx8Q!Rtf#^nl$3j!!{`z8KJ_>v`u&Tk zuUn(-Hz(ifu|!oi#Jc)wc+~lOc5Bc}ooL+?->b39mXh~q7oO&uJF*!opme{-sx?av zI`n`1xIjE_kAF2m&H7UKFI0#PB%4?jBM67ZFP)Pdw3YD#{yrS=MzV#UOfU64=^0p> z2==+L1deK=0{g~p*!4{*6k~d&$ZBB)sqOX1dvVm-%bbC<7qYmTbu9xd-omc?#W32I z>#)RmckwJz>N)ic5i8EQyLTv^&VH_DzxWqzmfrm`hnTOsQE&D(QdYjwG(39$)b!}v zv-0g|{mqH{-5oFBf_MXC;^Eia9h3t5M!%l8K5M>d>#r0C$Wdl@n(x?JM3fpPwf$v) zkDv5+Z%hq{?9%L_U+w>?CU+R=X3^i}Y|o`%kSG(qRl{QkoEZsTmwu|(;|07LE_gJO z{6J<9xIKC5m&AjenRxZ6=(@dfowCUtxd#%AMEYM`soyIvfg>feTqUMKS>fNSm3Jk5#&%kh8oNIGP77-~8?zof_msc%0mQ!b#IyPCL(7QT`jo(N(e(at2hO8p z^)8e?WBWVn{$pJO;#;{;FPQt?e*3A$5a{g^H#Ey1i9?bH#)dsMeS?c*w?5Tm2|g1m z;IVMPhV)&1Gq&t?k!dnl#)JdcvY_;0c0d-y#5_u>+NoS7H;#iKto ztT{LHc-)m*`fe6_QtwWt@5QnDr#3x%eH$H5d3j6AMfuD2@tvtjN&&l74fqDs6zx+n zK+0%aSH!1__I2Dx4S?@OJxb;(! z=!cWDvMyG@mgu$z!UK23Mz|pJ(N7KwFtZ?i)Q-^+_eiZWt6!kJwwNzXUVI>a)wQA# ztim4EJ5YL>`|<|jpNOLP_pP{J;oq}LhqKppabEb5D=3fqiz6s2>pquz$&=iJaxtFg zfY?jq@61SF$<>LKJk+57(b!5$lh;2tJbGCA0{Vv|?bEBbZJ#O5>y5a#yeva-ewBh> zZ3I|@S^)p>H@w=Rze9gp1Feqh#eT&Gk!5BSBq~_ndoKw@witD~Z!>myRy5dc(Pa+@ z@pr_Uy*F!5G#P`>#=>14DZesNfmz9386G)jRv~Qx83pMzil<&vON%QcU7WXgEp+s1 zJUsxU9h8HcI;(UfB`?0?IQTK+uNVIyMEvWCaBTZ{zoQ&|LOliai9lJvXa;e(zR~)` zOlL*IpPRgXW?tTy+F?x99U0Nbc#3hU6UOn`Yp32X)&b4lSsMlv%L>dY3aaHwN@*GR zl`SjfVZW99ZmnuS?XWE(6tuIgWZ742pFn+?N(_Mz5Xa0D%pY)YV%F!x3b?cJ zWEaMwT@fiKUy#wOucUA5;c&vui3-eXVuK@s3Ty!-9xQ@ov=(|z{HxhYlC}7eZ1p;_ zE>e(p*hrlx{(Jq0x(|1d1He6NpoizS%%ZO3YSHF-oXaBLwC5KxDY59YMCe~;?Am1o@1%F|M;XQXYT|@j;u$b+&4QdcJz0f^B&VQn!vaXY zjMAdJG@o{~*eJ}4Y4)k@m2>&SJt9db;|S`EtaUi@nb)J)y7j=1JJ&@IN@@(6q6 z6wxp0%a6sW4h=`pLsHR8%HBlhw$;8d z7@tBt$UVFPXBJCP4z7a& z3z)aA7A!diSFH|X3(Si%Ed|l8?a=m&iAs)fh1wfrhz|9qZ^D&rEKU529`DaJ-lG>` zBHulhh;t~Z8NH*U^=G9APn20QaU@D`Z;|JdytN8r%dL5tfZNpE1(K z+j}QUNImQlG&6J0xQvLHoB4Vd#n-YuTtHTM*tIC&``TBrJEo5Vn zQ0tYe%`eYozYIXBIm17qwx7y6Z$n+^3&>f#%{#YrcciOH?h7`sF3e+7s-WpM9+Eeoo~(!k86UkgsJ|yMkNd)NcjVo#N$lgi9GjCf z#^oK&i4eDzQa<91#I|)`ei+sO=hacIgHH$j%efp!LjMd0A?1NeX>3>8gF*S2wWe1cwcORN0KQZ6Fi-@ zM;edd`b5Vs3_@n++_AZb-yo`-*TQ4@wQ6We1%^PVwg`+==YkfFwA#FILix1{d<*YT ze8)Aig>Na>`5f?vzV#`v4qsV5G{`?DqxjAW%C8Idmq+WbN)E(5`Mo7p&Uwk1o*rvx zV&04y)%R$alV^Z(SwdxPf|rqSzaXl;TzUib#-b#99_Ef?@o znjNjlHt*{_`OiHoA|We?Kfcqgx4&<=?(q2f^J4KY+!p7%D^X5n>0h4l{8z=pIVt(l z!xJCDA{y9?-X)R>pU60rORQ7J>@D2auV=sk9-~i&YrG0Rutm7%dv5pNs2#c|d|YZk zM2LLlUrE#sP$QDxMn)f~#0NJP&^LOY=oX7}Z|)KtAJjw$W~49tE76lHk}I?&zQD^_ zzL)3#bBvKev?j<|+`(qQsJhRdIH^;-jJG{0s@3pk?^%vzW zPl?uVzoFvHJVYFMGF&32_2bF1V80me)$;7IAC`B(=Ev$Uc963u@5eZZ$Q}D!i7hz;@w^Qo|s` z7)7D)0V8~-K~{_Z?X3!W3-}r*bEHm6obTl5{fpzfwQv8P)`T7krKy^2F>NHza%>NfN zn&4Zp2JVesU7V=eyx?tW`W7ZO5k~qA`PL;|K$M_nyA$!URh35#u65tCmPjluOu50o z*^a!SCC0Cz)Xb_&G=n)ij%yS*8q4>i^2ui$0DgL zXAq;L%K+NwrTvwA5mm7Q`U~33c>4%eWz@iv$rt#W%rEq#SOee7@^ZGBe|%NYc6Is+ zz8s%=UNAO2z3dZ%v%`Y4A-U7QCgPyCQ9gluWl=4uY^&XnUznim0BqmF zU+o8#*wSPU@x97@gDi4pPEPLNqIl2u235?1`9hG7Pw-lnAH*JbGFV#^eY-OH_G^i) zEeI2w6Fi<0JA$l(!-BknVx1d%nJPIWAUw&Wm6bnZM6TbDfRhHjDJ${dYBOv+{=>M@YIPsqXq}RSn=S$ zP%Rs9o!lx*$N_aVzxXIv3%%{qt#>uBqiR4Mh14q1$hj6SS{?~ShSi^rSuc!nme|)G zFozf<5*ZkjY=JScoWGd(|AO=t(udBMZXb>xz(@jog71d~o=*nR6Uimmoc@Bl;&95?~5gpmtI6ZvW&)_r|9lb%eYdk3aG zhrGFr$z93pxiS|2`rv+jSZaA}{wosYo0k~>fB*cB2!l+>GBFv- zV{-L~p!?`>%ek@hSL8|GXkwFJ%2STXStG*~gTgb+*`>wbi+S)4?)CT4@@oH2Hdk|?sIH~z+&fKucDbe7Qg4gj`#s$;E8g>{J-(z%8K5pBQ2^pt6IZr({*q)s8$K~jV z#y^>zSS1<#e24e1QmTo$eqdu)=3<@INvU#!=ZiJ-v~a=5JoEK0LNX|9BB-d`e6o z2zI;LUDQ$&^w*oM4KlZhc> z7hoT3NDsoQ;Zf zq{IjINoi`dQOj{y0P6b||2y~ji{M>7Us_-MgLEVLWd*>9h5t_Hcg*+UtO2lZFQL9Y z_$ML`{*8n?tC$u*$vkr3>j&Tw7#XNh`4ua`H-HQJ#{S+vkvAfI%&s>z$ej}$Ul{$q zywUdf1&;*(52nv>MYv#1(7z$JUNYGOHUL$64(&d8fqP;bkU>C(PQTa$ z2W|5Z4i68^Pe#t#V4eINW*%FRIKV~G-`B(=SQ72eOdPjo`?SX6KQX_jCy)Qk#sZiT z+y98z7o%eXOlhKkN5@9^O00%&r-$LRXn(T}%{VmAfhYjwYNB-8-c@Ep|Nli;0Q_t7 zl-1AiPdB!KQ9u~*!^!wvsk<6@ry2mO=GB*uQ|`+aD9mdaR1BfPLgPVzDR4t5tCujA;9F62-eQ48iQXXEgr)%tQm` z`U8X5YtswByrZ`S(-YFS&xqvySq8>R7#)1iO|)QHIABq1|Cz!1@xlE`LHvo) z_0zJ4kv-)0oSq{`XV1m4C4Q3JgIjan!MP7#X4?^X*X_uXNFx7JO! z-PORyr3T6e)+ZJx;@^0H_}5k_wkXR%{A&xy956+VH(;z@-$d;2*Vo3|pPMM&;NXAH zH}UVdoL~5ZC97V}tem)7L*Oy^K%w`FZjW z?+jlYnZ5hPqF@{{nZ^A7LM#AERh%Z;c{kQvnth$N>}sH^fu;t;fBT;`5LEbAe~KWH z1&;Iv3TL37@jGq4z@EwUJvr9EAmweS(ZITpOGIn8fv+TZH)GIq5g}+gJb>#TsCAz~G!cD;B`x zi2?i|k;N;sby)fynU4f+VPSNU^A_us80YJ7-|=2o1Mj{DwDLhvMa{GU-~lawUOPaf z@y%OD8rFa2=s6@-0P}|Jz0E!+TF<;;jxgw#DBg@j2cOHR!i~ZCQQPc47H}MQ^N{ryWvQ>Be I2dxJFKURvaZU6uP literal 0 HcmV?d00001 diff --git a/test_images/IMG24.dcm b/test_images/IMG24.dcm new file mode 100644 index 0000000000000000000000000000000000000000..045753188c1934fc9a381feed30a468cb303ffad GIT binary patch literal 526122 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

  • )cytgZDgYz&;;QbNZ(x519KEl1pj{5`htDE1uoF&H#UHd zaW~-&lmU3I)+2sD`AMG9E?Il!;0{i{kD7@6uO0nI41TKemIvrc+&zpaAU%nR{S)OR z>(3+NeqL{cc;|7d|9?^2V#Q9Ls*R2gjd#=B-`+k9>PPjPCF{l`7YC+-ezYp# z#*07vS^56WqaDQm+eCXso5f>g13PEKvu%}k*eIDA9VGOxBTQoR!7PaNv%msYMsmP6 zd!aM>Dz=b_{kQu8{ee#KEFq2)j^@wv7bXA;AST#YoTIIH`cCneNu2F0{P)Q2OwUO+ zj9W$DsiQy~J*AxG*s2nEU*X!BK)Q!u`N6+C3!n|)JfY5cyw)-z{(qOQ{NCDtsE<|v zzeV`JOwrX3le4t;ciUpqvT1pq>VBTj-_1YEZ_BsHM`rVcf7?WOtF1Sz7<3r%wp(Po zjC`|PTLbWkq$24dHisO6T&ijCo6?Sh9T-*&i>#7G4|d6(0QSrB?Qga1=c;Uht*_7v>*{P>_scu{a&6dqd?472H6x?Mdp>ip z$uX=cc-^ZJ2u&>$npYgJ1 z!-%7Gc$YH^BWgB)1_1l;0sf*FjALt5v@utL-he5Y0l1EeQRO*f#HRwwLVuu#95E!r zh&Ev6uj@xzsQbtM=@+U!|1qB`{y(&sr5co0<*4G9?2a@}?-c&eQvE;OKdwr?j(-$e zFQboC{Wn&U4*p^O&iOkN7&-yeJ^GA})2E)5UU^V{&yrfZsA0T;IMpr6|6i57o1B*3k!_}V zS6h@9sqX*H{By0xbXVRmADUeu|KE4sR@+fO_`73U!7l*GmchU_1J^`O!JH)zc|a~4 zUked0=d)m+j_#o$g8i?{YCx%F5S$|0#*be^VuPNsl`LF3a!LgnyMq&KEa-LRKXZ{n>@!69L(G$YKw!l79@IP52Ex%&pgiE8bGMc>|7UNG$CYfL z(PRY#vZk(|Ko_8M9E%|?$@kdT;M>tZFc7}SY#*%)ni(~7d|u}n_~#D73#<(|8lz&X z4StP(|=Y6uaCXw=;ZyF1w^Ki zwZt}3^x%`)KJkAl{13`@$X-t$O?HiYM<1)B;M%HxT%_E^LE`_c9}?`pEBylhcO}ry z@&Jf=4AWj?w6ef6%6B{^&9_)N&tIdTQ~|I^8NjQPx08wKl`79&UaT+tuUovIf0zG~ z-@@h~X!YY-GO<0#7i(6B`N~M4<)6=6N;yN$!tB-<1O>q=2mFBlHCJ3AM+~go z{V?pkI15OPlRKBvu@ntrq}$)-OwCZZ;xKmBj@FID|FG%o&V;nRGMEgJcI2N#pJ~K=_JFD;?_Tqgr{t!`s0Z;?bq{6*>grEbOD5}>WIwRJ- zRrGJL7{G_=8_9w3Krx>mY8ym(^rWH}hgJ9=rhQ!r>^Q$8fiQv4-(XK&`Cj@xL{-jD zN_V~>^e>hc`6T){zCarGdgcG$OpZurW&g~Xd3|ZIY4JrK7e(<8(#wU=x@ZZuH zxP=)kXmU)!ng*O3`@!BK-Qb^VvF<>6K@58!)!+xNjh$t)%_c%`z(qL^WfW!b!!%Cshl(AKk-LwJsOyZgzGIb^~*s6 zI97oF5-N^8>ToWPmu)^(4cKW$oG~+V;Y!iP;m&wmLj5P74ENO66Ev|k1fL?>XGY-c zf@6wQa#1sG9pD&1YuT3L(k-%1>Nb6GaiUh9zFpnF{#`tm@00DM-hZt9cfLH-d$m&C zMwK=gsD;PCyig2Ux8AEqi;&_AnoqpIoKDDKx* zH8tx;=SMfhY5MPUC*gmW?B#SpvT^*PYX9loLG~XFfL*Wa0HYsW5V${{zis=b${p^f z^-1mjvxjkSKcAy z0eGYE|8lZ#dQA3m{=RxIEl}^TwAfIU7|-TS^WC${6#uuSq*9i9$zOChFW7Cpv7C<~63u*NGzcU*l@`2R_iJ%@%?ns9DyV;NNk1p~CUaU)a z-{S%LsTj6iv6kT*h_2vY`PkTeVgUSPm7NdOl%81$Pryq^v}Jl6GO@%OtYH{8#>>{- zV-c#FJPKxWoGIGQ+S>O$d+jq|f zWnZPACnv;PL;3d+syQY^Kj0q#UK=|Be}0GdTB;E}_P+ zfsTjPKq#M;((XX_stRHbk4KM0$o+K4jhFwdJq;OS$}Gg@3w%xQDoF z0BrT){^b8$@kI3>GXO@ZtHDEBH~n?ZCcZ^H;?d}dc!o6V%^Kw=lK$xs_5XfFxtGO7 z-=dLpz&6D@`8LwSbJN~JJGigc%{qodCkH$_u#99FjYtHn7R1*rEC}P7_v8_%HOg)8 zJ^Rkq#jn_gfJf^Qq%2r|%U+N{YXW2(xkO&k1|i>Iua$kVt$vR^`4)O+S~sybh;+hg|PPs$Yrq$ngMIYj|9IhXStAh2|hewXYui6EuKF z#dnH(%7~&v{D}MLyUDn63^raNiW}s@*1{YE=`sHC0GbN_TdT8N_jHaJmE9}Jyi(f@ivB;8>?j62rRx3voO)snk@xS;SN8jjeaX#fU;8Sd7!N@DxB19=bCp;X6&wn~tf=w`q z?GL#*@*aWl+b1Uq0A2%wcI3d(IBOO3j**Uru}<(+;A>!e(Gqw~d=Iq+oP|HbyPN|N zL4L6I_Vvld!b5mHsj&a6)^b1tz!K0JWF&$fhM9RJ@p`x}*a5h;*WuAei+jX4GkW;B za*K1RkFcvTxSNbO_a8}MM6nIcD!X9b?@9~aM>BZVsC7Z>w0+t$osss+_Eq)YWyM6T zIsH>Hu)Mz5I)6;PKW-KN=jrzj*{4NGLskEb(hQhy6~US&j}{q61DNq+{T&Ik?I-gO z|HuEQZ}y(T%2>tyr$_@#QEvX}+UimJNcH*hrq_>dj9!hmPJd1NWdpJuvvspw)8+A; zXovf=>t@9o7q3t-D_4S;<&{$cxFh0edK{+IZls|9$^@1rX`S0Gdb;x{nY zsJW_!x6`>EtIEMu;t9$8bX)l&duDrOMYcgYKR!zMe^Jc6v1UNstyus>06hoDRlcDY z2t5wmOVHUs@IP2wVY2-G*VH@V4pjiYUYn%|!@odnp(32dw*C3qCQ9ukHJ2euIm764dl<6 zKV&JOlTV--{0cJ0X8fDcBBjAwu3I%DoA*FJHW(QWa%*pZqgcnlX04gfO4P}MTs~#{ zZ+i&(!6(=>KH>Xta;&U5x-GWzAC89-7jUkRDq!Am6vc4?+g`ri{)YKN{X3W`1vZTv zs^*&M{MOMoV)==-tX$#gEyg>E9KZA~t=aW~o1>9)KUl--xd-uYFy6OgN_c$9*sQD*DIfIsf%8 zfbf6zaQ}-TihtqzpQ6v6r1;@;wYB8?w}{r#5!Z-rmABm~U7l{2ZJ+hd*2xB^c``S; zU)h4)b>wzJW@8}~j1vd69XF##2Ur`R2Y4Sw-$UQ?f@1j2|F4`a$evDE@bkY5*4{sVW~2$Zs!NsQ-7bVh#2F z?O*(o@2L5|3)G*rt+-lC>2BlS*<9D`a*shjNH_Ye8C>gOsld`3^?@gZm^}7_cd;29 z30XuMkwDue;~AMWifuD(pOC}A=sCV?gRr8uqh!jBJ1}nT;m96x&8N`=tcb;x5eY!b z?d!t;u;=y&I0|@yZJYChJS?vfW}EG52y+Kwf{urV8bH?*_?V6~a7Fe}tas2Z<_7Q< z$0=AJcUx)T0a}Hnqeh8UkvMi8|IEEeW&4eP{(FN1SXVGViQ_Rc9F@^`Boa2j$nYNL z%m*u(g@b}&!i{_ttvKQM2f0PI^HToqs)hUB2jkd9FK(^7H;{&$k)IZ5mO z+@}72-O7IDu;SkA@bqb6f1VisskFV`M)=$ zJ68B_Re5!w)OQ#?&z;7io8w^*Yzdm{9p7))k@LFWXu8DIFbwot!;RKEg1Y2s48=t~e(f9_A+i_i6rM=R< z(*x5#rNgvNUT=BK4fXz-zj*-g|2q2**bf?jXrTKpc@8qyg15uf@cq^W=s~a##;xzn z3P-Jx`)4#FIY;L+Oy2*V*=kvv^uc&q^bgtXe+&O>D+4%P>|~Ve|4>B$=>+P{a{)aQ zD8vAn1xOX(;g#R>4`l)8sRn4h=;vs8JXe)fcS{3&o;;W~Q4RKXN@N|U6##n`d#Mg! z|NO-4wsaR+|JEz`zim7i2G8N1W5tn@5Yfjg2s*(Q!uUu3(_a@{gKv((CoM(Dk5SLD z!eb#V@HEpXru zA&=%5I{t*MziqzpkIk?9?C1a=-RuE`VgDT&;LMzzvj%cx!d5rv2+r1e$C|CBwD0J2 zoaV?Mpl!5%cUC{fCfW{? zi;kKY>G%ltlejBvoEf7ZY`@Wu9k5LB-1jp4wNJqN%=Kzfp`Td*ZN+V-Ywge3`2yAb zeOIhg4lma#U&?!A9nyPb{pZUv{WW=2p1|tr{M%de{y$R&>~_`gh1G4%0l+z0pikuq zzy-(%5($7I>@1WVDZI>549=pE*OlyX*K5Q9^49Du0Of+i&1mz<*bv zc(^pwyS2BXUDcDnqw0}|DF3&5)-HWqGl0SFH>z3=`2S-S0dx+4`X9JH8o(I<&j%n1 zxVyB(KAJOdo_wdb<@;QterMm;UXI?6=cupB{lfpd$yMqAbVSiv6@Ztk4r@29|JATK zDnBQCNd1}GRO~<0Z*ixMTJA6S#Gb<%9SI7yp4WqvfMM(Zuy!r7;?KkBZNYi&*DYH? zJMeAh{OoJq&YpZP7(*t(I@XIgIa#uz!oOo@aCguTC%1)mB!3g>we5ue&iY<($L6R3 zHW*9IC$ZwL{WbSD=FKwD5#T>~0KCU}_|wKe@0ow|-8@52cL*^uec!;C<+$r>| z@ooGEtz^yw)_o7{gE8KY16Tsg?#%%m3-X=jnDx6#)xT{9{E#dFwSUcwzX8tadW&B)GtT7e--RHtlKI;64 z1bPC8zRnaTPZhR~RDA8v>hrrs<@DT#yW!>3XFPx>y|9{B$xmK%-yjxqO4B*+q|AW%9&#MCP{;WsQSp4huVz?@? zhH4$~Y5Cmjg>;1OQybl{FmKz|7zwiEAQ|S4t~WF9id?fP#TUl7Rv*4C@qZ2H8)-D;lI{r71o$4qF>?WCX4Zq(r zcAd2|KJg6bVC??IAq!|U8~N4%wy;F{9MK0mRPup;v=+K0cn7c(EUozo5dbrPp97yD zHqlyKbRVJr0R5hkKAwJ>zLs9Ajv0GM1FR+dQ-M&dKz*eDbXtqjUzGy@_v8eOe)nT? z_eI|o*qgn#Fv>&$I4AB0b=xjDX5)_R$&-@koCToz2iwoewVE?M9shIY zz@IW(@Dcfo2S8WA9Ce|5h*~E{rCVmZ3H>|C{`XG*5nmkrQ)l~2Z4=D{Wc`za zq@VT?vYi2R^*@n+A|Ay3r~`rnfPeV^AC>!9tjPZ>%Kx3K_{1D#0H=vxu?o;5$wB*33snfG3Zp0e>b%X~i zVpbod3Oi|i;XT1Wn!`*3i(^?t{>)#){y)uc0l%#xb04 zFarqqcP+vC8pqaRqWy*c!_p(tNvV3YrHvGwel5L9RdYKFQJjw7>cZ>*tH8^(} zEd%;P{uusG4*;_Nou%E*OowIHL+^3b&P(tbT7#p&2hf|0AX)$~#M%E1gqjYr zkGsnDA1^QYg7j|9lxdS~k$sllp=aaLzPfT)30Iow+OYQ6dpv(v0oWga0oYS;{J}P! z5jA=lVXnqC3h*wot}xEr3+|vjFW-CcPCghJ;5bBfLPn^m9=jR`mRKUX^7Ayxj)OV&-gsrv0h_3Kzww(kyA z$m~#g`tIz5{U-}Zziw96=&rx+2F^;`BZc{?vi~!blRH-2dYm3TQ2USKf4|BLSgNCa zU3)TWn2b)>&3bCT;vt^=$E;1Jdp#Q$CS+g9hjo2>MBRVQ30MzUwRPS#)e-zD2H+avudzDhHn z-xaZ2O?ANYsvaQw3DbE0%>5(x*I(MoeUAMc+fVe5jnxCks&4qNssLCbHgsKWr)XHb zv&Q#1q5qyl>uqK;^T$V$ zoeWtpqGjP3Yj$obnQSj~^_Kl_E*ye;aOWtQ`*(x$fL}NSzac&lEOzkTxgLB7`|ZY) zV~@lgR@XNe|7H$m0zMYs;w$E=tpRvv1C4Myo!{VeRC=uNe_py+eX`fe*33RmAJ*eb z6%*{DD79 zVoJ7K`i#0#U9Gs(6RP~3lsp&zTYdjumh`U{{UqCWuw>oVAC6D78~bnD&tI?o%lfy2 z6!||b5FTQ~Yac6PD2@E5heiESU9ZmPL|eY5V;ugjHf+%>vL zSRATj5dQ=7WB|au{rrYPyz%dhKJO9H+d}$ce^nS>`5XS7@pIPSQN!RbSOai8<^Zw^ z@Gkn!V-)3^8^y`MbXA?tPO3=WJR6>V7hf%Z<#Wwir2pA$=`rem=>SOY4?O)Hqy>qC z5cjt?Ko20W?+oDHiWr=$xa2a~{&VD^Y^<&ajl{5Cl9s(sozLD*cgp`#>>&@}a^ar} zpzrcl`8L_9x=S5(udx5kq|cEDd+WCC$UaiUU;BQJ&$7>HgNzn#t>HAxV^>)9D;>gN-Wu!};0l^>f|u{-FPO zhUeqWR~7slEIYcCkv8Iq;@Vf?9E^YXK%Fl*RvSEeB*7IR#Q5yvgMG39Y`hk*Po)L; zZ(X5(Yu$sM>Fo5l?6v&o;)L?-^1O2G^4`32)-ruaRcY5sDxcNdzdp%?_%A~1Qg!D~ z#ewGwU!ljf=lGxjm<#Mxzli~YeR%LNS^sIm|1|OC@ydW5CL1_YwfW0ytBCzCRZpCG z!qlr#mt=C8QHg#=@v^Yy^XT@ZUh$fWZ5$9U3cN zI7&RUn_8rt#l4E;jnOEKSSj{5P*;pkMD-v1pV~i|KV5*>m5C21)AE^uT30-Gm-f!IiRzQNS5^@OMf-L%YSSaI(I9RZF z)W>7zQ~kI7Gvmif+D?`_4plXs6#3u&H|r1n%^`^LQQPksHrRjOAvX{9eNJ4RBX*oq zI1?BIGoYP~2z9s2MrNihn6k&<&pK9!&yV&q*3g(iv+(+6;$6GT|KCqOz@h0e@|72- zZ>8U*t7L0sdG>TVURs%&z^r2YA?j!JTLYl~U;uEU`W!`jIgF}xY0v^ew|VT*ZTysxGFs(`!ZjroLw#{FDXAN#^qn> zT<;M2Z&Xz38CCxM5N{-F{EWQTH#Dc_9a*k@CF4Z4z`dhvL8?f+LlKMbYdYpQG7-PfOFjnH-;9n{A@*Oa06Hiq7f-+_G3jGciVM z1+ZR~^(PA$YJh{Kh8^0Av`z?oA78-IY(5#{`^LAeKQ$zLmS@H|G6pvQ1;$vgNoWg4 zrp!e7lp||!b?l#QpV1HgVZye6_`X!kga2F@-CWnPwea6VdTnbR#kE52Vrp$cWgqxA z=CSK|>2MUVYrNvaqqA%+iR9U*=QXm0aBL#rTn$%hEr+e=7~tNIjC`&Wta0T;2_2u0sek?z&y}HzN)vS=~)1kVS4Ro&Yf7yPRP~iXQLeCmP2e^}~ zJq$D{=g%2i^Mtb@Ut!ILhV#9}%G>L+S8pBAv||0C4m?y zK_yb{Dj*`>NIaYXjX*@ubACsOOV1D%r>kO+)pJMdcYGE5`b;bR{Y|rgFIFdjFKZt~ zJF5d$8_oXPT{8gQNncNni91H;%XipE$YMP%R_dZRmot2L^S1sCDjy)=9}Uo0R{Rj5 zYi0b0>OZpv>j_5^@%~-^v!(ooUi!9u<)PeDo37cptu!NXTWNrP;{RjPb(4pc_y0k? zyI&J)nW8J%SLkOIV9-zPe}8d*VxFG+;28jn3+o<*2;d1C#g}yD^ED<*YU87m;xWpv zJf|Gsv&jxxh5e~KEB7tmEV>up=c~(P9+yv11<=m&G+_Ys8bEN0e3&{%=yTe&T+h+#WL6a|{mrgJkSwz&|#U*T|(C8G$d`xBqYc46-<5 z`#E*3#+89N+gNl0nuTkGaX8+vju6zp;{S&z-Zx9@WWTOiDqAQ@jiV>WJ znNnA7Zy%kP>9HgK{Iyr)s0bXuGY9cV!riiVl5~_;EelS2O>> z`;m$8I`7yAa6TZ^1c%&TJE6a$;>v^5$I?f#jf;lmHRY@2<>lGM``N5?nQZ@!vPpkc zX1ZC@Hy#x|E31F2YTwq1-V?LlM-okji?y$eexAd0o%dqC3-Rtls>uIL$@+=%mk-r* z@PD@W^ZV+7{gm>6b7Tp>t$i5{OJ-{x;@+yZACN6m^x;o&%jhiGf4*s3dFHIv0|#&} z-_bv>_Z!yzF(=qmvAmv&Pn`Ta{2S#VYRJ6dfO}$!;NL5Q_t5nWmxpp^ZF2NXys0`8 zbW%Q|XSSIlqD|EScq7^WuazCVO4oIu_8jsX{>_CL3p9Xr02+~v`A>8Lr4taVfc{k) z;1;o>t26_;OWaND{}t6(Kap&nuBl4wkBf=rCglObe3FjxSzy}6-121`agH)!Ty-Qf6Au=|!laPxb8V60f@U{|Sy_uMyZzdZoY zeGN0>@C2~_#P!&ikw;by+tWr|6wB$(dXDrtR_7Q$nL46*w(DpBqthJTOgY5HY$;*v zX4G7XZ9G<<*T9Tf4p$d!y{#_Cg;NAh0RF9m*3f6#OZ$$J|353eJ$*l|X)f3wvL@;Y z-6;D>>t-LP`oK=Y;hMS*BR}w*5c~7ExHbUv;|Gxe0pVtDXi}dO+Q+P)=Zrr(%9h!LAvdMXMe){%>8%=`(Y`-YOo)#_%SkKj~+W(M-8^o z8o-b6Bj66fnrB^oE?*kd=1p5wnGCb$X$O(dczQ?Sa zN@etovk(n*t~<;7KVO#e2i2&gs!#bv%orCCYbj& zm7ds6pBwu>__yX@kB}!ooA5ZS2e`H78u!yRj8%QYvC#wZ8jAI{6aKp@=Q}m+n!F!1 zR0i-PVfP|sGV%Vg|L*(gcnH;gX8cq{SO?$>IR=PcJV4s;e)&zr~MS z|FBtwYaas~u@9&K{~+D?2P5F$=x0A$Pp>;d3;=7rs@`uY4RAtwbNY^Ae_zQ5csji| zy;>Q8ebSwT|Lw$R)~|FS8~}gEkq)p<><{e-8^9Cr`{W~R-?<7~e`Xt_4XlgJNH|Z& zbQy8pVHGv*Io(>&;7EfenJ}mM=BD&kGA2} zFMs#d>xYQ-PuJe3EBAMznD1eF<#1WfbH%S;6$0+ne7M=tEI-$Zc)V7?Vz%ub@~!Sq z=O^36>qgUc?;Pavi%3==nlsT!pdK+0pJ;P z|5_@_&{>!rs&iaiJ2JW}&eKmcBcZd-s7W?6?Vo%RHBsfyyNX_3pcvsu;UBi+dA~$M z!T$f^-}9gGi|_%4Yb0(}9_0=`f{5nsvO z0Eqz@$E!&5v{0^ZLVBGt{|^fJXUOkAINeL!eQRh#h19 zo&Rem{=dB#Oz&)DKB4GX&My~~&lKJBg_`+)qw4;jkXL$3vYtBeb%~Zp;;)g#UQgZn zo>c7X0BL{&gz!z z^OlJFpC`Rii`I@ODf`t`wf4IUZ%fkilh*NSS_5!|Fw;Z0q$@YxI~hJOAAA76!e4AZ z=-xt+f?gFLSsDMV0)qX=`rGp-lHhzIa|c-unEJmi;_O4Dr*75y95=+vllO%GE~-dq zp>D{7lmBR)(l0fC=WboWIGr1vKbiSQtxt%6GV_O+2o({ofUIW%yduyTX}wqF0o zIa~EqKSsaCiz*M`kwiJIY)Rgu{H(lGF~C2m2B<-Ck|F@lr9%`ea~BZf-F7~7bAzYgpPQLVhNXP{{JTN^kku8ZM&$}rc-ufIz8Du zj-!)>u|e|Y+sZlz@86c(3;;dg=k@#^`0t@l{T}^f0NK;^L9QeY^+ZGfn+gA|h5xR? z?OwW`Yis*Pm&IQtuZ#b8t?)lP9g_SKZ54ek+kLw-8i!ThKe@k9>x1|27=W{)%!df| z(P#(H1Q?{TIZt&@Z>a`omZ~CNuH7O}V|MbEwC&R5>*Rs7U;a_?mSQnKX(g}?h5x(r zPbE;}C2g&x0kHSn{lNZh+p!zSE?$5$M4;KTzVI0AAMhR;qFE&se#Eihkd7DgDERnD zk^NJn$Jnur-9#91-5admn8(gJ;_oOI=x-^8IZQFK3(~pi{PfSNn7Kgx=0+&;+&~xr z9o}3Q2lubDfBV12KWE_Q@Bw(bvlQm<&JqUn1g#Y?WM4R31JA-SY-^2wum;yAOW-I3 zIY)OGAwNkDqk(jA4`IHAyb%}+^OvZh?V!7{mac?xfcZGz=bB&U1`!)23cz3XAp?j8 zF#h>YyeYJvuYq$hHwag4tL`;gxL>}b;l3daO{;tAdyi%a+}{yH`-{ORY*FDqWdE*K z_0Lzu!g94$=9RsR=~-{({%_FAlz)>?dQ|ckRlR;FmVSX^c0UULt3>x|F5hS&o)z$5 z0S8sj>=BHTJ{T?h93p&-(_G(^s%~GC6pb5SZ4>l-n&JmH%7=bLTHs>g|H|4rQH%K8 zWKp_xm22;iU7Joy){lSEr-#e7_7MKJs$&14{?816zgT|P@;I-L{ohh39`HZ-57-Cw z-mDAE2Ab;lt;93B2(g28ZGWll7M&G;ki4XG>L&a*%Vwv;lQ?cI|Nl*S2h9De$Ntd) zWclg;2hy?qUKz!m(0SFJz~~V$T%71W#Xp`?6k(!t;6c&R@!`t;zoiJktEvHbCYw;) zUcO##Rt_riViWZO@0xF4)c|=GFxubuyME8%eQe0S?YHqCA_evjkOC|P8iXUz3C0}+ zc?XV&RSC5L$R)lbw$%2rjvHcs0sly~t-qsyRJt+Gt)VnlKiT?Y(u>jsnltxjRhrJy zHbq`@hYJ7LMmU3QrDq0(>Nu>wnYsOSkl;8yXb&jnzu&C7!Agxe)h0^ zB7GsA$>%_rvjq13`4;ky%-!T~c&s?ufEXWp*rV}C5IdkY$o@a$ z?zeTpH*1EY)Re#URE8SBoejgD%CQEg;Snv0> zjWh>np<;Psgm7DZGyooe83A12Fy+t3iR~XN&OcH6PLv)vR_H%Q&nM{F6yg6G#lRj= z58XM!|6J9Z$?EYB`s`34r*qW-)Up47;yUjS5dcR6@&B7C zUfA=0@DIyxq+d`UxB&mj3@{6r&fl$7Ik>$d4x?0+v|}_aelvMq_P?9f|7xyPIQC0& z)g*i`%gqRklrQhPUf2J)2FRWOu|FyST?@s004jp15@2H`@I}%huj=|wmR@ZhZ4tLs zrsX~P|4%2~(~;Rv`MC1^a$tG5`hYc44&eCwdVpu-0pKQP z#9+j{-snK$(PSXX5w@TgZB_Xs2zPa$kHQ}43hO)gKj=qa5aDz*&p8hN<*a{Ae%2hn zUlXpEF<4$b2IHU{#G@670NDOJ{>LbxH9QN@R-TvxUPtgu&}klX&KOPQ`{3)bjx)Qr zmFJ3i)sYV~Ls%i20?p!Ae6OATclAXlMJ*0Yze#I~{&y=sEPpOHEcef!R_)z&s{OxP z_Q!lg1G*~YCBQL zKYqn8ubn2FzgYh7U&MsZP#nBr)K@vMrSi4=YrVaWTL0_NB#FP#p5Q-p|1svV*Tyk? z-kcsBL{|^xU`$Q+iFC@<>|JPHs zUR!0CYX#7C<6f$Rdb{fVJwiARz5USxY|I02E)WJlHE_S`zw4pEJ{5txOGB~(@H^^( zK11HoXPW)+QGBiN|GZ*=xoQq3wX8Py2lv(h zw%K*B)-2XDLXa#l58|=pM8^Yb042zYBLK)g@}gNtk~sPZAXT8yY zf6zJLfjGUhfy{E`d_aNm&tuP4^z~9DZI2!-;n}kXDCZad-uZX%AEJW+Q)oB7iH(jy zuoMvQ`MjaSXD$6D`Kg-a>-W%t^%@BD1hyVt#JEJ&BaY-80PzII87&jy`<$6|ne`Fp zYR*ChfV(4-->hFdy3EhHPdq}0d!}E=6EPn6ibRTFe4h7D^-pKrg<~|IX_LHH(MR}y zrCd~eoJ~>f%{8k1y6b>UO$!x@P_R5iSq4<<--B|J4X88FlhvA zKX#rTpC{{gvVQps3jp~O^xg?#&zC6reWR>Dl|fh5nnb(CcP3A#-DLd-$^K(&e^k!# zL`B%C{-ydKyAAf~)Z^G)@B*;l*mRMG-0pwy?>@l(jQ7NE0R8U$(@fuj|KDG@ zK1eZ%Zqbb*UY2FL#EF#$9HSVsdO{Y31; zYe*&Nhjn71VA%~S+l{3|_FeTJo+0Vfw_yKwsJ6XTH#=FmvZ?X|mZ)OpYDwMpI*WC* zXRwow|KkQ?p9{JM{*RXWr9wK`4QS`OvH55Pw(w)yk0t>B*n3|iem@aXcmP>ZSPULUeWeu6 z)T7N=``j3D&di#bv*aAn%+_Zhqw4x|bCM;iX&sI$h2^tktv*$y&P%e_lZ5iaD!h-W zm;ir|s966|LjUo??MY(!r)Zl};olm-S^y0I{;yYz?ZV3bT~%ut4UZpAUP!yk`tK@R zdxm1|Uudnp6NIvXs^)DeOk?w5>0X};#FGO6@nL-r=KvaNFClqF=f9QzgZAJpgwKI~ zeE;T(8i4<9!YwQHTvBTn?JJ#hzwqBrtfYN*Q#vJS8xL3h<6UXMv5HLM|J(9|eCGOi z1z`MtXa3z8#q~gB0r3vV5)M~R=`DgArvE{?% zR^?Get77XSDwLs7R%F+z0+4%)4QGSr);(ZQ0&*So4=6X@!LKd6KZ*Bfc3^+eKBYTR za1?u);KPy?;(}P84P-y5cQyX8ZkBdiJ>+~9Niu6obXUA=XH_qqD64;IdaH704=IOs zyt09t>ln7I#KiEciHKpBK|Xe{j(b~Zkbp%r+vk0r8{1euUneq8hAhmJ!n^Tawyl9> zqse}6JHZs_vM+_6!T)DwV=etzY~M%+|1chq&y}0KIOmaROspdq5q?56fEX#cKr;d= zguFHZ*J#}X^1(mPz`uPFUUh`PKAtmxXlrW=o@3!%3(hm{apMZ>mJjlo>;nfx2ax-t z`oF90%s^#hR?oiH+P^;*=an7HXYGk1iKtXV)H55aW*;arCOW!weJXFX4`7^4_2QJ-C)()0Q8&lgKV%(cF)) zhuQ)5@t&^xr?RklmH%%mU!!lu|1YRDi*|{xS4^Un>b(0a2e>4iRrNqC1c$x{EwFHzcjsG_`g|k zz_WB6ohA2V%kYiy7{aWdFv|~I@M}bX5q>!{YXIA4Ua=32zJldi=b7)~BL&aL`_w|KCyD zCfQNxHpw#a> z;Kb19UvL9@xW)twom+W*V5 zQ}X@P`*XW;T=AhS?~7I65Agp)azt`zJXbw0&lgXht9W&(_H=KkU&lF;+LMLk6Xn@c z-+PuS`p(hcnc}rGD^7n(#r%o>fp|DS@jvr`$*@!zuw>;r`O z|6t`Z&aSN=b&M}a=BJwo``fDmaB2GIWMDi-_0Jzmca0YQ2W#6+mfz^d*RRinwl3fu zFwg7m4dR|@1EfFZDg*dW)j*uDv3#?(Bzjmi052*2f3G}%gES+vUoo}3t87-DteJqF zi(m5t@`>4E>1=#l{Caz-#Ie0XjPV<6zjZ!xQPJOO+Ed_NWvyc+q&d*A>(1EW|#t_H7{js8~DNi@}l&l_SN%+nhO94a#lTUH4=A@At6!j1Hf4?w{u{0PMdR4Hh2O5v~qR z4yrjra{$|KUUmG|5nrD1ex0HDelr$aGaHZ5`hINB$bJ7ht9J3)^zdwyqJQtJ=TxI| zwPJGCSA9Pgi2vWB*(i@C`z0r<3->FEQq9ne*SCfLRQSJ1e*1Ys`{{a>uAb-V`E1GY zx!P}*;`wI?*Hrv~`U%>=|FP9Z_HUxN?=1I2+5djp{*aAK z*Guk?UexFJ7sh(6sQ;hKay`-K3N`K-mi54 z`YH;rD1Tk^%|=P0Ve#bX+y~FGI_M6a$-+S+tZ`=$G;cJ|ctXypUC3z6$qp9UNL z0TZACt4QX}kxb*?=i?}Z@s1U=wFLdPlU#v&+qtu?JEfu%7#I7?uzA5k%zY3`{h5GkZr&m+;|4rh*7b|vuk#Ns8 zTfY|w{~&r+wVft*aDw6ijtHC}>>pD_369nyVuRDP=UEkppcdfX+OTML{6q4o{Qthf z|C;KxS0sz|y~oM^Q~yu>pBaE>|2m3iq&w7WXLPT8aB4ar`b39+eq0MC>EKSEJF>i=E;Tj&3-{dK(` z?7!cNt#4Hg;58EaD0(nOasPj6Om7zc=he20ddJ(T{_lD5|GU%)=*hHKzN}cHD&U`r za_eXoNzj~%e|qYGe=_6|S=zqTWmf7>9i z&gQIHKtK4glsPuVT$do{$hC3sYZVhi@`DC&Y@2Q$J(UX_E`PI&&SD)|zd9alA9+p` zkeWEO4(9~tN3Jd1w$--xoGY4$y=((n)dIVZ{byZkvLxs`uAU2f94A7e|(h(AoG8M&_8ZPo?x6XO$9LfO_4uvl0J1$ZNKO*ag=_s!v3$C z?U?=$U!(6GFFUzQHT!={VHB*gHL84nP|W74evoYrz)Zm3qrUzO-VoLf=JV76S_6Rp zt%QHa|No@3t3|8FqmyarYS}gw{-04*#~MIz>OhKb=3l-Um$I$fpBJu>UL9 z0c~Hci~#=WjJ%t!?N)U__*hpzLu0UpW&vcHbM>O~E_ccgI3`_~4K5~>ixiceTO3&Y zvFM?hzz<}vrh|01!z?)}LmCRn+|{7r1LH+TkO$-+iK)wm{X*LccmmRc{MgFOKm(w;{HmYh32%g*Pm^Ux=QmdYuo{v-e|lue?_A?@NXI%c>0xaFOi)*+M_q zpQea_>wR1SbfOS{RFy5DKHv~N8ZX?RCePty`2r_P6Wmi9rMWh%X&!QKMcQ}BvaDzN zVSHKikUlp;sOlhO!u?(OgVhem2fsuC@B|zQWFFv#|F8JB_YVUI+QZ#HVE-*tW!P4= z2E_mVC`|rXi{hcliRu8jjUoWuvRBealhNY;8%YP=sx#Y1@qhY$hl(Hadn@YzcR~uQ zB6vk4{?Z|>zdm)a>K>L=<4GLkgWCPk3-N`@06Z(*`(V;W9>CIk3*rB$a#?X)aY%8H zW&*ZSb>=aWVAijp8;0w_gWn7PHTsQh`}4LMb#D^A08>N@1pR>Indc)({)A&-peD#7 zY}j=%p7(E7jJ0z_oZ25ay)ogeUWke#`^5J=BhH_|YX%Kw64n>a{)KuMz8i_JZ?^iz ze_-uA!~Wy-o8P)df*Er7?_?H34!V=iHO1{~-MPh)=1Aw`6 z=0?1u|A7PWs(Fu5&c5F7_phQCJQm>Js7B9W@3}U<8_mQ$2!FBgJm)&u)1%?{t>w{y z?2Qg%BMKB49{1Qj0U7}<;8lN4Nq5c8RFrw7dj4IhHD{7yoV@>~LjU#R0854cE0Z;n zM)CI1LSg!BW&c0a${(yz>C2@9xrmw zJGO*8_p2*=!?yq0sX_yPjSBbt2br$IbBxSL@Oh!9I8)HTb?~1@j(n2eW}YN|kLU5C zb4r~%aZa!RE;g?)#8KcyzJ7m)<9=`e@Xt4*gXk6PnS92y?Y=dD{d}&N>xKP_(rZCL~~uB+~>&I!cf@E3m6C91Kq|y&$u4!|H}C1RW`>+ z+sOLws{RFcWxwQ+*88}pG?k6{uS5Mh3i^j^&-`)d@5`8 zwEWd8h5gyuE~?l+QGoNb5&dIz&&d_`iSkVr51{U!`T*($##Z%#hshH-Ui(dz?I#j& znrh(>jP8q@rdc)nXF&F|r1;tR^ynUaYIueJ7M1-6=eG5Z|Dg%6|3M>wZtH>HqkiRQ z#0kv&`5fqX?r%#~7PtcdbB9Lg+&-&)7|m=KSb{~u`v^eh49&nw#s7yg0c zdT4I%6(Rz@V#j!SFL-&@3Fd(2c|11$vHxvUeQ}ruym@|r>i#b&pDnK~uP++pbJMp~ z_j|Q|7blM>`adOkQPn>iMSl@SS-1LAS*wSX2e@2}pP1jp+UDs0x!TUI{Qp_n^OUOE zm+Ie>g%VqSY6A~b%*<87R0vP3_97EFO|xkZi5`#Jh-uSlcYs#^X^=h;PmY#|HMsjf z-G8b1saN@;2f(p)0{^WUu>ULL{l6b?tUd7>%p9=&WB`dRngz5`v|*sIeRAy+^(1bq zTD+fx|8B|wypjGxJ&BLgcqHnDc$$0!Ivvsf%N;!{pAF9hyG_nNuz|1_(LHKuH4a)p327VuUY>O7Kf_m_utEt$}YwE*`W0CWWLt?xmt7oAC(6%Hn}@~ zR`u>zh@)RE{C^-@b-QHtvI_rmWdARcafoGc!&uy#cBeB4=`)mUq%zbsst-Ylklt3JD@Fw>#x{)q-?T;beV zzd9QL`Jn=E_3UmctEk$MULJ81v?r8}S3 z_dHR}h8hs<8248Ef0?}h+Y|%*Hd(Cr%-zMkP0W;^O?2Onnk7`3Lu| z>2wzmWZKytWCa;A!fo^Ga=~-#DX(Bv_>XKMX?0!zf{;G5&=4U&@~DfYPY-y&^09$^ zWIx~^On_-iK96`e#0G6Y(Hp`3yZ(>pKP-bt9r(vb=lg>u$+QUe2mDUYhX?T}; zL9F}JRx293m_C`URuttqnrHU9y8hjfZ>rqiVy*P`7wLc{vOo7E!?Xs^9no^J{8_5j zeNyOuTyu78{Xzb0Mg6D)fcKxSeNLBEJWamBG-&|r|70=Tal*d)gp8C`rC$&|1O6z4 z9Uv`0Ht<9p^Qh?cxM#K2&H!ZqKhfyTRiynE;h*gPHmb|pO8mT;kV?-UqJ4q&`E1}_M8*!+tB2Kyf(Vn#Z?Z?JT>@?hJzF#h?A9{>)} z3+4%q5|Ar!<&V7#qt7uq>n3{vwv=Ybj`-2_3N+Y5z;lPK6QRIkXMR520*!i)kZWT+ zKIRP06!_}k|L7Q_5^u-#NM-=&F|H}Z`#?I{kJnb-ct2=H^CI@L7sR-P`hSlyn$Gs$ zcLEk-wq+d-{?T9DMee&Zo4m#&M{}(K*aP&}Z2_P2byN8P{@be#qgl3nex%l#ze4C= zTE3{r^1}2(Mf~R}>Ni)?cfVw?Uos`WMA_~Ogzp84`#&M3dY!C4-2eQ_=Lh?se@2D; z(`EaoY6JZfg?-lgJ49Gwh1_A4x4hSisu{0^c|gSi#wngSK6*FaAzizwwBIg!M@YLQ zKB&U~?!wI0^30i^6K4L{b`!mG{6BaFp&#&nbN=5yx30kY8}$MGcmiz{|7ZTsD0wc+ zv;y#INng#6?x^|y-L)p+FUghh6!HHJqJJr4e^_-b%mKjnH{&P52m1TU!h`YtI+{HK zs{g>h*GKXyA-igPZc-KCn~DQmt;*`Rqfayo`b~8KSfmK-UFrq4N_JJgx$u8c`E7A! zaeZ-Ju~D&BUej7cWVg8gjsQ^O%4SWE6#)0PZdeH(TMO8}fD!y^q~F*HxC)gu$e*nf zwij){D{Ns_jPYg57VLYld0>0FqJiMTaWVdzA@B*~-*E!)#6Bxm{$cx^e+bnu@Br)| zHaYkJA@Awv7gykwf{4|-9v@Z#{>`8n9mc56htL_;C5#nE!1s5A(MaTK%}HPa!~odP zUbgdGCoCr5-x#+?6j%|X_6T=Tm~)U&6?JF*CWk&_&$PYG=A7XJ+Ht7%ze;i zyb}C;O9C9JS#`~UE0QVhnO>t6e-`GqtM2ED^5ydMa%gd#YVMW_`Bx@?*58GyLAyTL zM)|I(s=_5#w?I`o_bCUsK)Jt*g?-pQwZ8tv=AWvK=s$74i52fZL^v8zWy#zn%d6wM zL*~wUeP7kt9Vi}fW$n1=^LUUd?fPn_Z5OR~|6X!d{Kx1fVQi2rW}C|Pd*+`RfMa){ zKWG4F0GQSHd$j-Wvrzkw_TV_~|AGI{{Qu6v>rgS4$(oyUd-QYMUEN+gXa>M`ib~|^ z4e<=c|2B?(7H*HwenVFH|6~C|r9Y?-oj=e9)&P$D;rsWj;(xq8KzwM9{Hk}A2e?jr z5r1_ipx#V)mb#ada z{*80~A{os4GX5>~L8{@{#L~hR7`8EB`2z{Isz_*vi-8DoYG(gfLVNoeqAwhPZ|4KR zKbU9Zbu<9~d1M=kCB!D;5i|1_u3ew?3+^2K3(-B8J=PhWh1CnvjaDN{kH3%AXQOL} z>j~*)U~Cxw@E!XJ!H*8QB_PqytqbdU5VQ+(mZ${aD*0XhTg4;RpBP}Fzvc(vKOjHg zpX=vUdJ3b{g4f}g9t^}R#Oxp50_M@*XaY2Th+Q}ag6^}I$NOPlKjNA9$MQS--$L1u z17y>F&NeJQDh8E*)-2O5<=^rxvklW*lFO4zHRo@hWgHh z7RXi;{Xb&`(x+6opDJ&e+5K$P{L<@djId99tX>_*>VVs-zGhn?y0@f%pe!d{!beD> zOcv6Hr46*wPA{#m{BZh$RvRB0T_^UitMKCLKS%1^1w2Ilu>8RjAO`UN2mc{=;Q2$2 z1A1n0i^~3k|AVB(UaH+1eI0ky3IH9Ym9|&y?Rx25@!47lVN*o_wQ`TnoeDr|fVoQd z{WRkz&qtmgJwP|>W|P>xM%%V*Sy%v<9-JY0RMvpm?dBpZ0nFS+j7ty zDt=m!b5j{*My_1HgKMQ6(F5!fDre&Zh$ z+U}yI93LZdf#v4xd5qMX=VIxohjw+p^Yk3oYYw@`UckS{$8od}F$i(cdVYad>VHqFy&!x1S=>@=8Y z>6^t_lk|yrw(|d*M5SsICd#v+;)1&< z!+E3n0DUO$YH6)gv|+rSe6Kg;`!7-!=4LVI_tIhc_r*K%(OQ;&Egmh-E}qKgYlQkq zkGHAt?-c=!ecxrv2k6K8TLzdt4&MI{Z|4CnRds&-IsIVNs8M60Xap|OrB@X}P;7|3 zVL?|L>7K}BM3G1geIeCu}>JA+C7dD8qi5BJW@ojGmx zTJL(xes|FF!M+5$A8ZKtV$}0qMkjn=jbOGg%J8pQ^NY=1FIjJ5f8Mb09{ZVI=b!)1 zPt*W-;4l2!`V zrL-r$4Rb7*w;yI*!gps3WAWKw^VM_*+{LGvzEz{!-VD)AUh}K|3&`gcxSxCHXKhvY z_gs2=_FR5h@!N7ld22bQ98%n!?WgJ%I{$V4ANVI%hju3l=(xWT4VqB^f3Nue_7$-2 z=t1!PnE{NxApS@H&)vj%b8FM0SL4R%>x%!=0i?{@rSnvk_-l0lX%syq4jiiY4VGHi zN>@SGALsr1SN7f>0N201u9UdHS4H=_$jlBPOR$l6a-5jvJ#_=RO%;c?s19nhGJr2? z7SNU2o>w=}JF}6+73v3mNSUY~&|O*)cwzRcX3=#L1B8CS{_Yvy)B$^}*kUpwunZ{Y zpe?blpc+)+BY5nA0xTnc^WVWfkF5^)3l@;Lx>v>k)mHM1amM?Pl{Xx8KYE{kpx*!N z3z!*r-8_Jo?iD}48gU12L@7MC5o{3GLg)LuL5{J)>s$lp=h`Hc2?+BFo@CiU6W#(E z82p>j;1C{RJ?&Xo^_T9YA3>E|5j&%2Yc$-?++t#@;QEc#*6sV7VGk5?O%6#L zS9P`x*>#$Ov}3$}G~=)MC;tydtpLyf^aC>k;Q12~v>))dSpP@QT>$|0VS*3^L|-(Q z)>v0)-dUXYP;El=bo|ToC3OIz14yH+N4hYcCiMS8_MbUXdsX;n9&nfg=otXS{@M6V z2T-qyPUIiopO^s1@2|i2*Jnqo_UA2m0KZpuWgGQDTubU}fvT_Os1obeL=~-C5p>h? zQ{`#bEte`66g`TSWjyHxX#6v$gK=$35h6lCJu)H~-5?~WOyk=Y(0_peZ0*erFa*dk6X4Nn@sa;`^xq@fRz2u`@Ne5#_xSxjqlEVv9p(d81jg^T=O3z#IFk^I2OZYy zAlBL(9bitd{YKw#cFR=u8BU?@msvKtVZ^k6YHZFZXteUuf zDk5F|%r#@@(f@cG0sjI0Ap^+Yz2PzN8N38K0EZ}_wHWswO%nJlurl8e%*R#QhFcLd z=o@F_${ZKqyAEg%{sDh67Z52}U30H*O2;dzd_wU}v2A&Kd0+XbVo?5E`jyls-v5Ql z|6MEe{~6T zgz+}oTI+v1+5Ps_b4T%6XJc(K!@3&%^upX;3i$G$(qy71pUTQj>dy-YK0dq&fB z!t6;mn!?G0_Er##XyG(|2r+A{~ZDBU*X!Ze-KVIu&+4Lk$-A` zxm*6rhT@tL(m$`t2e?%{m`2Y=55*^G7QhRt0lq>}fcLd3LJQ5&nqR(A9#Ht zZ*6U@2i8mY_c~56fJX!0KHoAH0q&IEP zUW?0-HtfIA&e#UkAe~ph0hT`Gyimt}1|sSjfNsH_3j^lZu(Iy$Wn|bMo3DsaSTj3c z=BwfgSJP*h6G@B?o}r%zGmkt=BHRPx0!+bp#y`56ehM6iYqhnv-vj>5IF2yllhosk zuIGy@JTt4wS7=q_2w_}#M0ExL{f9Alr?%wYk~usXJ$>*BZB z-`;@V%^2{jp*9q6aPKtBaycni72g&+%lc0(k13wf+LrT#`wO%Y{kuWl{~gKB$@usp z&GsE7ox88_!0J6irFXXxKCoVWWzVqhohuvPO}{}o3cpo_d~AISMeg|x7qk+(npNtZ znfC3)6@A4ZTPT8dy;i{JmW)Z)tn%z@WHZtWlYZ*7O_z;9dRG_iGpK&&`?28G`;G(H z0|3we$lm|$Yo7OK{@|0&1fnfkN~f%+>)TGKysb7Sx+VTDnX9hkeZ>GvXMNI-;#sPP z`mq-2zD(46z&~q%q5wkIf8zS&{D}B(P(30hX#by>AX{JIe?xtOHIs)bp88A`0hlHQ zuwS%&yq+om7O4L68hK(5C!3|GsS03n`E@zH>|TDUI^Z$+?%8-TdD{yA?snnt7)uZO z`QB0f{N%T-ADqB=!T!Mk;D|Bj@f~bE2()*A)wBJxHXss?&BDsMy2g<%k7+Pxdv5R7 zelctitl!_Fz@JWpQz~J|M;QO+q411zBpzrSn!D`FxLzsfWa^T9UR3GehZFtB$~wbm z9pw8H?g9HDj$oaPUl7;@Cg5+}0q5bsBvDE5Z$HBsP}B}wV=gfE;kj_#L`2{Pm;g<{ znNjJ;3V`ex+{0z&AFjz~$G2lO5HvmCB4--DMXtr3k-32H7wq${IwvqP>@_q~&!6e( ze%aCa7OEwAQ$0VfC^sxW&$r0BrFY5tPZIv8RnfnPH3P7h*8STnx?b2HDmzS6Z>V(f z)*7{agxzj`t;(Zv9xLBYC=C`K%=0=K`v&0(#503`O<|3yJ0fk}WD_^i_}@wT_nv6u z{gd}c-4off z)d&Ch1jGP5^WQN+zl)Bc1I0Du0NxP?T%v8I=v_q}#wRbU68IKH0Ehu5*_6C}`IqwP za%Xt}GqfJi`SOtlsE*5hZpZ;L^9|2GSOcS;5#cdmYrwd$TE_aJFhRd7Yp}bv^q`Q} zL+s1mLERU2be>$B^I%r<;NKh&VuH5ujtc&xco+%+M6ebv%!0Ky>Vvl(vVS~xy#n^1 z^E5Ak7Hb{sH_Q~Obb|eNm+#Qw1eIV+asBWf7$Q1g#suTM2JWpl+zr{?)x4%4$8ZJ& z{{pQ6+k~7S8UUW-U$_tUhpdC>ao|2@aGt9h%tD+|;2Kn%y#c;0_&lIKFaR9ksE7Rq z&KhkKw4c9ke~zE9Kx?hL@L{?jdow?=xW0H<+5fTSi^Y(9fht>OOZkKU85(g9D*ikx z`DLkUFOR@9ZVE%XZb_Xh6yJFz-Cck!%Ah5j}4 zyt(k-d9equv$Ee$MLQ-Fx@k9I%E00e=)xY!pL;}ftpb_W;PTVk50llai%X1WUJR;gZ z9w7gJzEs#1iUG_|#-(3pbBf2y&&t!vwaSNzFY@QIm()$8Q>6evKXE|tU$+qU3+)fq zJpy}&!TK>~7-vBX2lQL{Vud|R7PVk5@H_a6?SIGt2D^qAykxbjt)S-x+8ze`Xr%yJ z@cykU;1zrPAOe2_+s!DqF0f9qH(-qb{_EIvbQ1rcHHX=j)_GDdgaTOdUcdwF6Sd7f zKpDGZ@RE^u-xs_Q*W$qnu71GFU`?>V0JiSfcdpnO(Yo3p3PMgG(qG)^m0LQ55b?o`k$E&$TrD)6xS9{7fY9i zYL)pR#a#K4FUsyuO3oJt5OaD){U^>%=EpB+rYqh*y}iljZzsLFfktx2#abTpv$>C! zaZi#Ep0qVk8R0oqcZ*=RBP!GC{U8TjWhxlbY^AfMU?@Q+5=q(VPy z1?;AZs%KSic!M%5Giqx@KSZC#mr4OVsTklaWdi!8`(!I?ea5fL>&t%S+v*3ta$c%O zYIi9B^8cX*$kv{3+uyiH3Zul?By0cRUj|jnh_^ogP8e_CAN-;9?Vn;J5N?WbU!IY)kSj>d*< z_nLZ!^=AzM`iO&0$Jm3C21Cvn676?v!B}(mAUdmsyJ5~W_rQZzAMUq`_4odL9Nz_7 zeQ+LTLxw8{|J)~g0#rJMyJ`K8^0(i=w;T*0PMetJ|2i@3v-Vt;YR|;dI1iYai zyfstjm`BqqvN`z?#k?XfhiTsLhUGi?z-(=G{GY0oJ|_zQvy%sue|{kumYk*LWBXl=Yea)iYiRmt(5nX)zyol;o?iXd+13hl+UOv^zL)m6 zOKo25!)R18qw=$RXRBmm(&1Wjc-0F3TM9=VD&*rua7?2f)-k)71F--9n)h!8aKw;3 zaOP$!&bWiLI%{6I;)4Ne;;&qPhs1GSNQ0MAzBeoyIt^8eKT zf_nUZeiIFKq|a5qWIKE7YI`oudwNcg*8`#(_{p{VRR{c_cwoHN1)dn4tMve%Qx@=6 zc>p(PMWA=n1M;MNO?807%c2}s?2&J%^#FUTlDmDS0X+M^nXDMd58j}ez;?r<1*-uD zY-v2^JhJQwF#16T_5_qOu5493Vjcg+N)u~y9^8?9?4Gd?x`_ycG4J|Vt6ygVt&w>b zDjn-@Yadhqs79B-KYkp}3Y^#q;>YkRcGKCfCVED0j;x;}lvdd03-%c92PlUp}GK3IQ#`>OEJ#F1Pic_alqe+$1$>r z)-{OfTnmI}?yNX@efo5`lEAqN_{07U%!VIr-Y}-jZr+0tW&DG{;CFCOh=lk|{Mhji z>miQF3ZeFV9RIM=fe#!32z+QxF#ho>h$P_QaCO#RoKe6()}FJng$LCj*%}W9;QO>E z;Alng0yuL%$+f}_uskE8yVhRbBHK7`Q0)JUV*B!r^6YZI;t%R4^|Ww5F_|Fm|8mv+ zye9llPM(gRj=oTh3o~`G|9dOWH9#Y|T@}eQezD=5WW{@GRQIa>lhsG}lJlnKg*agc zu>hGsy6fFDt~8)$_hXh5uh>2d6t~)u9z4=Gbl_B(>KkP!w3{ zCX4Y8-krHK`v3LVpIL#=TKCs|3gVL3|IKx+`)W?!F3}0`qscYOOM?I3XkGL!$=gxu zNF*xzf0gjRm+ZfL08{-#+@BbrYk!FT+w+GDsQo1hNbN5=VSx1irczWez*edyzE=2u zPaQ$WY5Tl(ud;w=RqKJ>s<{{sC!N#2+4K1p<$L9w>eTpT@l`%wvm|%bcN!Fc*YpL; zeAjHoHHZgGw);lE@y=)poM78yUCnq5>KdFdu7bz!o|U%$WWkBF*T*=%f5`vg@dlsQ z`7uZP$$|UzRHz{bW($vv1!ImnTJu`_T7zRRU8&>9mT>_O5x;jO3@iRwp}hSUKu3cw?wLIRFa+Ao1Kbfp9sSBVX`Isv&vZ_N+>4(-!9&+E*G8O`4sKZB~{oz`~nUQ2cS zc_1B^os_SqS!7=pdzN#`HszyvyR4~Z{Z5wcpR5ev4O;X2eX0L#H1lV8bh{#4tmS#I z@V}QV-R2s>-J}54(+J*7KJN~)lS8C|_f(xOs{qp9YnYHjmp`fl_Yk(X7lMh5v;Ora zLI~ACc*D#CSWgHUq$=WC)F!?%xkGh!>nr}ZOg20nn8fi?(aF-*8|r;+r7IeQeb@b= zB|_F874JHJJoe&CHppuEfV^RkACD|8=BGR?QAe z*GoQ#+6w=fW&qC?{_%=-(4DByZwgh9uKwX#!94iqF}1(03r z-lU3oJ3>yp&rA^PAjksgjy2fUTF07uj0JG&D84z%=g8k||EYm$s>eQ0R}#Puw&cDJ zuGbb3oLe`;6fg)i!LBIwy{jK3+)Ma@GX?!Y8!gF<&IN?{XW#(XF>oF#$n$=!AgFnA zG{t*l&(3q2a~<8V&N26)>+0FRdNk0y&pF%n`<$@?a6DDRowWwr=jq(+#(bb=k>%xK zvi`Rh9r7E~_bTguz9IlusqW{G$p?x7einbGS*{a=f9ie?7Y9)Hv#YG#u2KSr%3nQ4 zcIrY!tgjFbF4t^W9$leFvlPL)NOJ_vmnVCU<_8|HJsctyIY=yWka%Rcn1RkY^v>T= z>~Wy7->srS@g2#XinI69)+pOOT{rnuS+?V38P~6}|M(Wc_JdZs066<+4M6tq?-Bmb zUm^H!yT)cqVSmMFsc42>YPUD)bg`C-g(@+4; z2jFdR*VwleHb~-L1QtLsV7*c7<`-guAtFfae~9$?s*Qi$0R3~c1I>@6N1wnW>@DyK z_TSZ(FaURfyYKtq@6fu==Lj2+7i4Rujd?YGxmAE<-T^d2QmQE`nkf7`Hsdv=v!cu5 z<&=lcZj-oBvo$Bd=F zMFZHgl{8lv0Uq;a3HIzy1yotR5(7ue`yYr0{bqm=35cqwH=ZxiZ|3)Rb5?BS9a0Gv|^#hy4{L!~yndf-IMD<;vgI2(%!vR*r;o5k&vCYbfU=aMV zcQDCuyvM)-fiLV)G0)I(J6mqoB(WMgK0v4jK=l*pgX`cuGXXvT9uIK?jubYt3Fm3O z6L4SW+@NxT*AEx@eE7-6ePQmGGr*xAG+q(+sipEno2HkhJ7pW>MR8#9P|;Hzzkgfa zo;SHo)KgN5RNr=(@?Qw`lU+OF5{J2b;}wsgXDA^t)!!9;D- zwAZI=OGUGzd*VgOV`-CY?W|4qrtZ??@#)b$QVJWY*1)s>ZU0gJ#w;vg4ZwPzY=4jN zfBp)*!CveIxKaThfa>Hfve(On z7i}%{JOAgLKQ_Lf_TbrmD1u(P4l;k_{@@6zg6RrI)R4M?0rHzJQ7_Op)MeoeaqjPH z+eVwJ8`$Gg01t?lZ%RH&E=(6?=N6ZikC%I@BlsFc`@B)9J$t?(I^f@A zzrla5s2NreEU_m%f2^Eibf{S47AzY7@DEpF3}EY;>oFL2G=np~+$l@r_s0S2DDJ!fPSy-*<|x{WR?^=mJeyYhVQi=z@+@V?A~-MeYfq!0IaP+l_!i3 zMm!=wvr$u5uyyuyv#I?mWKTKqon&+}kO`HV3DZt04RzYn5=58x~SRxd=rVFpLV zT>HxG7rI}tFWXa4#D3}036uGFj$Px^qvwN_=ZdU#c^{kYCOARK1YgGJwe`nSFgsc^ zFc*;Z!8xWQj^y;1g}^yrU;TdG9rnPh#0;$5>j;K*SPv2WI}%9uA^ZUJzV(r-5$SNo zU9;C?^anox?c>cJ57*%>aJ4zh+1=pR8UG;O-#*_w*A|fP9uaFxC63hUI*(_!=6e>8 z7H!l~b{nbxi?TuKjTQQ*%Ie=PwfUx^0Pn`{%DPY0jNdzIU#c3VZPX@e(5iPU$?kn8 zynZMv^^!FHgR<(^R^I+J{hV2O|1*T^Nzx2-13yca%&P&8tD*sC$X=eL|8xpGORroe zj(A3Tp-1#dR3>fG1!+UpPG0u;>0Zef>ae-9Y$mw_$Ns>kBY#%?ARhdB7T~|{{lf=g zAMARu(G}HP;AiFk z-zX1Y1+9;AVE*S~mijgQR#m`%$-m69Y^1*1j>5mY0gwp{77~5zaRPE|%RRyvQ32zi zoX5P!R*&C20-bE(9ex}ziw$HX;{h1ejQC7ANBtW8)&W$%^EweRdkBq$6XO0LiY%Wa zaG;B|jIiq{6mWp;c2#VMYl3$(8fWe60F%axb&T(TuY&i$1YD&#(H=5f$@(DHAY2LE zM?&=xSLu2I@Q?Q3XfT2CkH^BX91#J-e4fgKkPGk}B<_vx4>>|+If8$D4w%Z^=R9J- zKWyU7uW%k58&*Td!ARUGpOdeP*WDMu_~#yaPAF^rwUvG7ot`Rmt(bqGUsyz1Q*v7Q ztMcajw^IMpW&0aqO2Sg*Iq0xrQd94(EBOCvyZ1x;! z`0>K+*dz1Wx zrqQ3H<&v)H>xxgbSC;*dv`I2cbANg(5=X}X*BTK0v*#aJfOs98K-a&2z4C8K9e^*v zKJ7p7m^whO1JYJ3u&wxSo%q`154v|9v)^SGrpF~M;;mExynOVr?!=k$+J`G53jW>w z7psr=PaOdGb_}qGvL-z$Zvck`w|qXVddwE|vIHV?h)u2*26EvmddW#I|K1;#(t z-&MJcY>x74?Z25eMsx7wQ3iO|jC|CAU$;g;-Ee-s7F0a`1N#CqM7wPz*{AJ2R}4xT zs-uMKHU8~^cutcel8(T^PgEIr?}3r*Ef~FZ{G(8q73er1zJRNO0yi=f$>`@eaDe&4 z>=Pmou+EbBhXKujL^ik=T({W({Buvthaf(ve|#j=4RgZ17Ha!+%>qRF;r$#$RO=b6Ak+r^9 zwtKYD>zP3GzGD3gN56@HZKjP**zRq`>bILJvbA*;?cYj|nC-Hq(6W;_;xMUabin0W zXY-wCC3)HJq-)9lUq-zx7pcqcSjEdb%l@|&9;q$zTmn=&vxu>@k4S%4Qb6L4_$j#dOXrR-fks}%t+%4cSeshfLw47S6 z8bSmOYiRUaBfu8KkDBRyjB;~;QExT?0j|}>duJVR@Q?Km|BQcP{9#?Z@K^lcdR0EW z61;w}$@y|_U>+PWJI3nXkw4Tzhy(aBd{KV{N>5a)b;Yz-+DFJ`%^RI{C2e)kuF%kxqpv#=KO6hb-Cw_NJBufn{j((gnF$0NtiM?MWA~~3b8VFCgz*@x6~O;M zapFwHPQQ@{FiXrhL4MZF(H-%*ssVUTH2|#0xV$2fyJ*dZk>$Yh_2STCUjAP8tyXdF zEcMTZ^=IURZCgIZ3F?<|V-8@v{1pG7-|xq!Vw0^VZF7QV0FQo*I>lyU$J__h5j{r% z@OK0LiTM!+_uK%Y0N8%2bBXygt{Lx)d+e2G;B&rym7{T{a6z~VSj<1%m^bAKX7y( zeeX`h%=F_w^N^|b^AXmv|I(@dH?hbLjSw=$M_6BKdRroeEG;&-D*6B2<(u50z9gH(!*ov?OA$SwEXFa5@$ZfZj{92$ z@RRC4qJEzHOXokdzas>607D~iKUq73H3!et@xB%Z+@#3sInn_KMWf<9^v%qZ3b<17 z+4qvO(x?3BUv6g}>N( z*m48~V5LlSj1kIsW4s5v!UR?TjCgWhj(1t>hI&B90gQfE0^k|Yjo%(HK0jDCLvb#S z#$)L@OQW1|&e6j=c|R7{s>D99RSxgxEZ5LIU``Zzh}D3N5#!(1(br`R*(-2IF!qZc zcQ%qE@+pvICE<03z+$)`oR^sZ<^cW9X*#FKD`W)NZ2P%#XFHvv;E2xnqaH$xlWPyx z$oZgx%nGoQJ-DCdc{x*mqufXT2mjoKb{ZFh(!0|0vWfYj#aG2Ps{0>bUQ$H)Bz63o zB>Z1cW&U1~_1_}dKR#G<51+e{Ph*Tp$(jVf>|h+nKUHkJs8oqoUnpbs>10Y3^H55GYXyWhXGvskKfO{-~TN3A9%nqKr#VD|CzN&7f|LVwA1z8 zTlsaq{`@LRRMH~w%e03eNo-OW)>%_3UK9e z_u{zx)*Z6W|lJ zvNp0BB1Y&e0BDB?I7_Oe9PO(|{6M-Z4!Og8+V{d9Nboy+_suV6C63^`!*LxaHHY)v za!%nJb}Z2A{I!!+*eIQq?wyUyH!hwi*3e3SGs>@veiyDdDvJ|2J-Kdakf{R20I$d~Kj zVGU|uHx~K_ss49rO}@0&+1pV0$>xf&eW=lKQQRfkS2Z~97|bj~;(uQI&sD#8{U`zV z{|Q+B&wjHf=Msr6GOro@)2Y0lYMx$;c2@t5-&Xj4D7_=uEgluMR6cZ(;-M2%$#|5q z8@tMOd;X8_6ujs;Kir@C_2U__nIl655On~|1stS3%~AX>Rd0c7g#U9?PkC*0dpt%t zfP2-IjlRqa)Ft`sY|UaU&1JXZvB{T<;De z1nuv-H+R3ZcR;zqpp~pY_`kLGLbO$KrtE(=)c`-1-j@uEk5V?Yxw4@*DRz0h z@*(s`++Nn(xeu5U_OlPe5%~r8 z_65VJXQTur>`}w`#X9mnuoh5d8_ZZl-!g8)#&c^{YhF5TI0ir^AZp*azEBNl1;Fe0 z{wQD2?eWXL*gNq=*AqDZ4w}F}=Z#G_Ci!jrJ0=bv7|HzPJ^X}8nCp)6B^%EGyn6hC-q>X>e*m416V`v}oLj$-^Xx4FNV@X2VSpS6*Sc*(${UN1@}={Z zs!Z%J1yElRV99C_qlA${{L2i$&w#CZW;`eWk21zIW0KJZMuK;2d&Ib;YKD=G2f#)L zT$I1#0L1%(3ZVXtE`RvAY~1jLQWLSSPKm0<60p&S_W3k51g@4%_Hyt zn=}^wv3;Q`+FlEot8)e@_VW;JgLAlYo`Xcr5H1MkiVbQAC4GwusQgah3V z2Y`8)f*C^2EAY&$$ER%fZQEf1-y5zioU^&nylGZ4-vsM#)SK10V_1Jz{lS1;wbs`& z=>^&8`3}XiMSE3_9aUbgy59%WPm)=x`kz=um7Z4)@PqhAd9^cS(JoV^Z=a}l^qH*x z&ee#uXB#Tq+}Fm@ZG8KBd^_X-ZR^PZu)zTQCD?vP5g7lQ$>LpKYajh0?vM;jKUJ1( zt?ZTb<78yKQnZWk?^S=p+&|CKS+la%R_yix>PY@iAE73k0pJ+mzm2pP*@_ zIYBc3yJj7*rL@U9Q{KVG>=WGLI z>-kTm#Adn+B<5;nsiAw z(CRIHG!ytDbpze1I5IyzyDQzHQUKUID!+|$$Aq!$#yEa#Kt3bb8~T<}(^8{3*ime6 zz=7Eyj85Z_acX}To9A_Vm#y$``;XU;&38_KmAHt3d(I4Y%=J8sa;zpjbm)hRW_He> z(QSru^&hxLBe+5zbO!u$4WODc$6|x1)no%1{cUu;W;sv?m-#*6x&w27HOC`Bzpop= zKVTaMfJN;=*w^-54J^v1xig$08ispAhaftefphl_#BYHqjC%OU`9ESJaN?5MfWL&u z0Qb!*!5n4#&-plV%Xz`>;GgOzvVLtU>%T#IwrW?({DXW#@m(=Qb${!Y%NAo)V?&3} z3xs=Y%R}n*eTG)HcwIK<1lgY7s^YIn^oVM7$oN_9dmMvd&tgI2GQ-6f4|<i^YNTK3&!_js9TaAp7LA{_dRk(qaf zj=F!>?EUxFAI=DSBl}MeFuI$x*Vb3nNjFAqwFb|x6#ZK}dp><5IaMowuBE%PNY&BI z)HzlP;IOJc%C5q&S2?EAiCQSS0ukM_&EH(?u%%Q!dC%?ia~t7)Tm7d#YA3}I_7MKh zR8_$zwZCXJpo`>(ohmjsJ~}!cq6okf>IFDMv6`EcZ=W@o#s?X8#|CY8v8uL##F7{@;2%Wt+)BYpm$8o>wB2WH2QQsR zu6kkAFD={eURRkOp#k{k%6IVXUVM15L>w8p#2@jRohJh;ARAPmIP9Z`3>k>Rrn)0& z-8%>@W={q_!Ow19;lH)6175(+a|Pgry_z#ZG=S&9oA(u4|8tJ6{;hi>+*998xYEiX zSaCSf`9rQ^i#Y&pDXssztHjjApB2LR_QL){a%`^m~@P{jqX%D z>wH!DwuyR0-^(-KLm2fOHM&?5)w54eH@iCiS@XkDek%dueqbLS0Q>dLGvV=rT@|#g z(DP)ixA5OB*)@%2Vb@k)+dnGD7Dqe%)&ArCyXFT5Xj0jKG&>CN-{t;-UT_x?SN~G| z=QWDj>g+G6T^X&J9Hf=W+l!m#rynHe2>)wV`TsvCQaW1Ok&4?NAWvp@ ze*bf-(447n>MB(OZl4~b)m!(F2XJ2bW3g$mlhy;6rT#8m_>tmF-KGfbK zaV=~iuY+#pi#WR#^fd27+p-s!1dP}^Ir3*4j*Axt_C;`)?;}uyHyr?V7EYXIeSBQF)*`ehn|zDQ;4K zy*E_vKSS~Vs})(kH#szUTvfkoM3-qq->!PxUh;3B)A-w=vS6-Lp_c`ScD0Z5{Lb)$ z|B(G(k^x|W5Cd@aoBe{|2W+ZQe~#w4^ppPYo($D2`wpuAn4KUFJ}t)iIw^0NPJwd&sI$@%fgs)+oR;(vdT zwLU^KAP$j=87U87h^}XFh5sEYCBPaczPtk1iMw}2meQC zCe;hl{|n`LoGvXksg_0aqt{e}_=1%GY|7`ZdIV;eOrQ|j2KBzMmjVyEs*TI;#We+$rJMbzN87&Tu zu#ec*U+Xzuu<;Lmxkk7y;NNjF=lyw=YxBlAaAo}Wm0KwphdxUl+n=zP61t;f|3NnP z-1;Asb6z|T8!;36F`%34vR&scqaXYUdn=r;?}?)Z;U4k2zg-x>c|aJIZwxK~|2@-v zG^cJ(HZwm=k^c>~((i3rLGp}z#jJ69k8H^_jV4z5xgpswIW3;8Uf-8i6{u@ReKoiL zI@z>srDKWvIigK2iw@S^t4yEgv7idD@>KsZ$Hn>pS3uz@^_J*9I0 zRNE+O6!%K@NwvPF^8XKM_HW1d&%zG)Z>5b0Aaj3-(i^9)1RxUl-=V(#X(9l`6kG#H z4v(HklS}NHyUAEHyZzyLvP4<5|%>e#fxxq8!`5&bF#Hz>iN7_Z`#|PN4`b}Tp ztt#x}-R~ll?_O<2{@zjydx;B%==DAHn7(QIi%lj=^M9efDz_^Rdx99|mD;)L2E4Co zfS%Pibx}1}V}5dQdSkX(aZ0(cJX0}%9g7k9uxz&Y9`t)vpr8e<{#^$EPHa)Zo9B-( zdWac2{};43m@@jU{jokqCR)_hYS?HjA2yEo7As>@>*ijV%yy^y1$qGM&-%Wua}C^K zRbf30_Izx9`e^te_E{L?SV1d;@K@VK`x12=`7GDaC&7P%&XMD>C(o7PsKGPhH9tpX z*wP#Q+$Yd)X0W$mB>L}0E$fEWXAy#2-SDZZS^;CU6Y^-ydfIn^O6Nk|X}#G2JYkny#C*&zq>*cL%K>|44bV`h7m5o)NFf zl6WNDtnM-sljV|rn(@Ctb?5h~=47L&d-R@aQFqtabzckPAEd(p#y_>}#0C2)3IHpB ze=2|j-pvGI=Bsr9v4OsNKOO-1-(L~#&t?DfxOXyAHA<~C$L^-|a?P=QOUL$#q2Qm@ zKZwu406_!%`yGGlX#Yo#@F?sD5M}Tzz+Q^Sofdr)Z<`jve+PBk%+fjWIl_OT=;&R_ z(H*Axzmd9*{e|A4vhJ(~v{U5;>?ro!S}e9r<=un+Ar<;})BBhQ$u_ilZP)6RVVVoE zzqG`7#s0n$15jOfqGEt|)HaXSi`%L%>&xQmi&e2PwaNmnlugQiBM;zyRdYRF)QZmq zwf)r#0Nu-q03rVu@bA@u!iWZKR^E~Rwr%X0ksmCfk?y=CRt*+#yp6L3B_NXX;%tIX z&zbW&c9aj5j7fa(zAKoi)~vsWQ=V^BB2nOS?-!W-XM zcks^DniYJPh!Db+Ry^2n&#^G~81GggW;&~XM zM*2F+|F18L)=1WW)$EFNLb7!Hvi{nkivPQ>c!QKVu|GHfD{Tevk8u2-zD7+UYZS1W z5jnsX(*HeVe~*gZi8oZvy_0&AeXj5BcC7&ZTiO55)ZuKr;uoW;xy`JOw2$=6;L4k~ z7eEwX`$`Sq^JD#Y)$d*O8|A;Z{tvAfV2B>=rBClC6>+eRc$aE`7pX7ObfNzQ&AD7U zdP^&UO%?v1QnrSQt=XEZbyoUPc1&?e`EGeh*}5ECoRN>sZjb`N{)Zeu$oPS8<3Avd z@ei_G@e2dk*Ejx+JZxj|vU%MIHA+2-v3AzGVeT6&K&;QbaGCewjo3c#M)^7l56-|) z82gNP&=EXgM!Ib?|Eb=Xe~^TnR&QC7dnyk4IK&RDBWm1OH?`I;WeYQ__B#^V6(&zSu}{{{>p< zb8PWxHX(gmS){3|{F$nV@@*PR{gYGTYqX~2)yils(wyJ*)%W`XjbtMKME{8WZ6K>n z^xkv)uJfurG268wneyt5?t$sx)2{ZI~R9E-m~2 zn`~M-CizZPh?@%k_3S@Yxn=;+AF_Y{Dc1k-=cpzo3gA2gH9%by134giDPA}IF72!t zK;P(&KN?@INXajvzo!v z6?FuDr&w8Q0WJ0LBX=hB4zRF*@ejYI>A`NbE|e2lBgZ zb$KV2x^DHc{&@f1&;&#QKs_r1(d~-7KGxrBUD{V5@4z1I@7nh_yMPbRgEbQUu7Fg| z8#M4q&rxiqvjtrs*IWXYZR4@c+y(G%`^~lRY1{dbF$3$M%Q!a+_%&ZO{KQ^)k6DDf zgX-rwbym&v2z*n)L?i_C+s1P}pxqp2wlp)q2H-tt9&38e43;nla(pvhU;y?L);i!d zzr(zU5@F^O_J3{Vf=8rpr?+IY^P`GHk-sO)KbF19r}ExeE7h=0lMT60vE-XoQGS-n zG&;t6YCX%@ipBp%*1v7^w5nP+t86rxD>~Q^`C~4hG4JR;`9J&fK^343u>I5oxE9z9 z5aNF5{(%3DHS(va+U3()lj!Sci{!-gmzw>zifUO8Og@Yr74NXdptFC?7GpnD067lu zk5T-ezv?<5G7TsVqJUkb!1s-wj(aFK*+mtAi*$#d(F&le%l`jG^Yf-DUV5Tpb_Z4w z0OA0{g=Hf9WC836INp!_hZ)%L_lN2~UDMh2(FXbt5c=tgaJ^>!7V0lT4d5|i0CE6L z;*}JueO^@nmxuu_lyZAJxgf3O7Zi7vKa|&%oy&2>P5BMk+xp(UE;#7N>N7sEboQiq z%*J2n8P3c%djg=*UMRK`y=|LgbXYfpyftIgxOL5&@o#<4d{<%ssD99ZA_(}$I#Qhn znm{q=#XD!*v%x2>w+$HPUA(`p{>=cq!nIgG+iLslIcq;^rYofW7ZhHG@${xhnMKhw0X#66lfaT@7FpbW;4A8f- z_aGnK^P8V^xo{rPF+X}!{*C@M{%5hjz!+2k8vF1K`0pzHJv4eW?vj2j``=k}?blA{ z$5%({%%S+-!&2zu!~iFYEl0^;8YT5kG+>y}y?ez0w*2J#i2K6;WB`U#*xz%p;>YUa z`O_c$aMco>qR9Wd!v7b_FN~9aakRV)%{7khjE_*I#uKUlyhsdiv6#E9^xcAd$1-p9 zspbQIQw%7!%ZFz-r`xLz(6a#O0_R#F6f`r~zyS!dB50d5#SL}`-7)IKHS*nC!^hY1S5@S&ed6$bEb^@pa8;n zH#+?@_z*sK8&ilksonGpB-mYaZVd;~&;D3mEU_YVL~p(bwTCaorEmpVm_UBhzov z$Fe)}{nYPgZO!;ySPm#Z&3DY!O>e2@{7zOS$=%8*U7j>(mG9B&W`C9Z*&^x_^^E?k zaksPl@6E&k_yEQ~c0H(gSN6HC$10!sKj?or0N6PX zWx6x1ce!tJo^ot0vgI|KeUN&8->Ub7^~A%f;rRUZReS$;vHyVo_Fr53qcWOQ8Gx?J z$L}279k))uOxr8|Cl!#s7GJ0SU*Ai&fdBIqrJGpk^dn`vSuKHh0IMbLSs{KG;ho4I zDu0hE+K1ZrS}7wd%(F5A+o3}LXw4@+UEjpQ+K=)9?okc!u~HXfOQX!Tpv>~L5L-R zJjSW*D$0Ss;VCmR`R%dm2pzdE+cEwQ8=!pI(EH0)EI>UUuP{HD&R6CFXT7oMwz2$% zjTpm@!8@vD4;LG6t>81V7Vy}&jW=S$ypsNK{ zq~rqSN=~YfdW6t=gm8SA@JvP!FCVSHubvSj7%t?~4H3+b(mRjRc7!baQTl(ZxaK5P z6rU^nKd&wzpH%&Ys4YB9d6_lTBk`&DB-H^vE*6+324L3q+UX|QH~HwYN2ApnU0SYL z9#dSIU#tG<`zrcN9S{tF25>wubi=`Z*oL56tyEoY0v5puqnt6#_{4kmBWKrn&It7g z<~6v%Rlr6+b+4!Zs)C#kF#d`C5e;Jxj9Bo-Pye<8z-}|HZRtRL7~S@`t@Qb;ZM^qm zbn@8OWpq&01pe(&IGYLIfq!r84dsKX0axL;sHG4YHK(v&DQ&EWvCr>0Y|LFH3J_-ZzzX2o&#eIP{$UEM0BQyK6kY<+06yJM*}bu{pYN-` z#x(W3UN$~it86t^{(qTjjlCPAIeI@U1(Nv(m5%va0l4$m{|@y_?uo3TX9G|J&`Bum z6HSYkPv6rD04-(z`=oz~?^OTa&ooEpG2wrr6u?APF^!e&K3v<8`hA=>aBU?pLVDnE zJ%bnU61<|4@jgbFKS8LcEAnZw{AWoMT_9e3MisyxYdxSz+8;i}X;K8IMI+)3llxQ$ zc%QNW7mER=sbkZOboKnHB5u^b(VOL7<(oy%VqiW*eag13YJsVMBNxmHq0WDy7>xwR zIwKMMV~H4>j3SRL##B(Ej7rDMZNtDP_z$*?SG@ubmLIF{89~@U6aibXi=G8*6l2$d z9SgeMquwZRFJSxaoEO;P@5V>4k!BFvO5;E1iKe>t7S*S)(hd60HJM++r}zX_Oo0`A zowlhQAt29;XmteMxdM*Kxqwo56z|4X->63`5%Hv(7}v+S^9f!B{q~~x9qd24DsX}K z&*%Ke?8f&(ErV5Ei0W_^#3W$)&gquvZRv^G$@wnD!lGGuurhz=m6MC*Wc@!?w4ZLj z7s>a3Liit-ys0_At)rV%_w$0R|AxwJ-J>x|Hw!vaxu-o|JE--4^8g-zt-STW=egVG z=O?d*+&`FSGXtO>Hj-7mNVflNt#fg@YF$>1Cu#N1=JK$Ak?oN-NiK_K>D^TStR+v} zQ9rYQv;O~^s^2AXA0E522w4E^e@9`jdo(W2HG{gP@c+G()erG~TK(W-;r~(T|8s?X zRx}zT#2fv`iwjQF^JDc2wSlAb`e;34J4PFb=N)4eHvsu`L+AgQLjO2%$yDM0Nm>6- z)Pvj4OtPRvNS}y)Eo}sy#Pbvm5y;1F%1Z2Pmp0|;wk zqx#+D4@|fp23)}A^*-67buB2uyS9f>w|g9yCi!e_W8-N!9PrAuOM(9??nB;795>><})=vax{+ZxS`R{{lNOei~Q%_nk6|` zSkmmZB<|5&aE|XPN(44uMSJF|`R{8t?s@ELZEBmiChC2N)jGo4O5b^3t@G6^TQ&bp zaZj;QxwBUJyr*nZ&dUd7{nJNP^*2S^rSkpfX-@gTOgN*~t^)?~^yA|J!Jm z&6epel82+Eq7T%Y;~{a_>9WnNYjC{K&W80rQ3xNS-^>ig@*geKAFJnM^cUvzoTAM( z|71O452tD$XNUpL)&00g-^PPdMt_zHn4$eLx8M-H{;j%!&WT4U2k?SwHfC1!Thp~- z!=>r6`J=^GWtT?Jm%EjVii3(-`StPv_SS3w^-#y{GX7(N@X80%Pl&-NqY@0svH8?30k*cO6Ij>p*bEEs%Z&dEsT zT&=cwCuradz`v2nnFrjnN6r%b2YrnF2mfXQ=K{F{<_z{{6!V-SD@&vh_dL9nzwMT>@(OsRkoZs{b>DX z8(mp>W(JQIBk-K<7~voP9&3-~Ke^g?4g;LI1pY4*8^0=6oUcs4S^E4aeJ3Z#+ZYyY z7xzpaR2|R*@&Klb0jS_;miEd%$PX#oHfq%9ys}mKNYSa-M%BPqr(4JxPytWWpYdbM z$Rm$#+ZlWOj4%`=wuEu!ydfjp8@RIi2c3*y#(hA)af|J8$?H~LC#{uXN04v!4 zCMR#k!N>Qyy^ckIiD1XU8b<_ys1B@U@Iw4rK)%r*Y`S>`3&|duR(Y{j+JiaJdk-;v z@Xb{k=^PJTWXtXBg#Q8ptr}n;^AMcp*e5l=+!e0XEC`OR=Hacnr^QvEo4Atj)4IyM z%w07b+207-gX41ss2SV;fPXxHa)0gAJNM#r>ue|W`F}~>KKhmys_Or1trXQZ>zO{S z(L(*`6h)4nmG$37*8dExV~O=o6#3sE`a#uZyGr#_okxX^c>w(5yBqm%fOGt|@jQ17 zAo%z^w;td#<^mWXL=gKaA~r*H?JvvL?WSn>SGC^poylXeupMP#H%z~d$3zpQBUts* zv48Y9|Lp_(9FhMz{zDFME%8rB`6<7ShQ@Cs^M(Ho*|OO%c_(u<_xI`Avx?786KcWn z3BotXKT5GWR!curkICF0Q@w^RI8u*K&^y69_8%R967c#+X9?%%|8tb#RNpa1-F|c!gZ8me*vmBQ?4uc0!yOQ%;MY} z@5Bpgp?Blw!-VY5ak~)r=ZtvO$AQtDhes1wSD-z34|@Tlp}ucPzaPEhd*GQryvvLg z^b%)a+`}OD!R&+_q<=(itGU;6@faQ0xJuyB{G|06=gK*h+DXbY{eHBT9~ zZdpxTN#BnTiOy2)9sD;4^N#*I0!V&-&7V>I!vjrpL@Iz=3je!lKE&4XbICL6P0(4@ z35TSulV?=>bDzBbdxgpKDr*k@kEpQEO6Lbw3~*${21NS~)8CE~8?c(H?LWvrP5)U7 z?F`}m?8W%!@kB)cXY1blQQN(Ge1blExESDE`2@3~iSgd@|B2krmKQfo8ty7}1Y0M2 zEgw;?+32fsmvUZle9^QxIlnslK%=3(Mk`T1HhOM2o{qJ{CK>%$Nze6TtTDoES*@)- z>cLsi{sI5N_eaHI=^6Xp90x!j*gnz=pSeM(f|Yb+>=^Wu0O>vg-# zb8NSf0oPC=Q&%L$r9Z{KyUjx@I3eyVA1gcBg=S0VK^gVymPO(MzG9d ztUMb^A11Wt@7EjwuooY4`zQ)x1LjQjz`bN&yo2uso(SH6SvABS8g!4i6Xr_$L!7ZI zI>0~QpYgv*dUbkScBX3nJ}G`(uCJ<)6O|P{IA1nvoj$0HKe7KQsv&(w9X|#pqvNw= z{b#BMKhlifZt7??RXJ-`>R{y_dUVnGV}m8oZyRp>^ONizT!1nNet$g%;8*wwOOQ8! z1NsY7Q`BK>q1Fx@uA}TzTQ=G)o|n9=6$*OF{&!DbR)_slD*RLZL-r5P-&Ma<=GATW z&-2Jk!#cp7RIOJ={o?zR$7TP!D6Td-?VP+AeX6YGy|VvT$uB=uUOnDF(SFuBV}k)k z=_eI^MEqIld`uPb1ONE?sD2bcKtHee`FKTOu25H$7v%#ys0_nNi}8P)zNc-Y9&uCI z{%7_5T_gOH1-MwxCZykGR~Ijo%QqUUuHZw94T>M~ZSteluY8b3I>=-^($U5UHv+(b zF@h~&oEZbQ&er|@i3McT+B3%{Gg>`P!y~W`5{Q7)&x@EpI0gIfoG0Ap z?1()i5D3c{uUsG3!#+?o=D0A^ryl(W<6zq7x}^Q*^Va)jli)+JM=OfJP4EKO=yQXc z(Pvx}o?PHft`Z&K`i|DJ{-cyb|6Sg^cv9AXEp_@nw`{ISnA0_C-`Dyv7YhCE_w|CT z|6B2*sFfoBS4fFBk@{a%{eF&AwvVu6 zMvzbUR#m}as%(8t>;9diJ{i3gVOupC8NVtIyNmGugDlqL@!;qL)!s7m-yQ(yr#hFO zA5DIC{8I3|9@vy;&hI0OdgPT(p9q)PfFKI7DOK@Vsf))=w7LaJ(>SwWT6kx zl~Bj$s-A;|d}ak6DEuELFMy~&41nDS^8xRu{xd5rfFE(Ho=uR=pQXLemH+>c6vpZL zR`4oD>GhShQp&>kOsO}j00RE6N>z^LMNMwTs2@cY44-~`*OIwE*(dmQwv`M_!zbbx<%#3CNxDj+fj zpwS$|PtM1Df-;829GZ~XHYYXW!{+a4Hzz1Ys%${X|CJL8*k;92;q zJssym>~FzHAiP0m=|?=~72_ZK&+|5#`*l}(Np@d8MeBR#Wgo2)xnFr+(Juc$$GT6d zf1I_zVV6CLgoE$QLRbas9p4ltpAY8`qP=Ot^(})qv?%*kZx?-=34>q zcaRU>yJ}-5uoZ$;0PF$!`wCI#D6_Rd^#%uvUDj1)Oha@`{9f{A+AUi*`%d4)U0VHP zw6NDw>YwbN^}oCQ|Gd6`&=bu6CH~hz4E2Sw6PIZPz?Q;))9jpdqvTE1NK6+p=O|io zhOker{}5fraBZ&SrJj%HBNn5d+MY4h|FPl=IDn1c#Qk_guOHS!JiEgG4DI_KG35PX z=QD)=gT*c*^{#hoGos1y?)v_ok_T|PzSHT|_Iz?uIzQXDm{z`_*}#ve+snR5kT}0TW4fhTW~C^VYmPsa)yrT)tSQY4M*nKjtZL1f+rBz!dC%4h>nMA4(fpX zhnWk@3oq974YhyN425f5Qls-4XKr7|8i2Y+>jHZ^Fa+aWU6JYU)V3$%{ZbHe|`WP$qqtQK9PINaRYFI4|mMt{&a+onQ3bwBn2hyW7% zx8Ltdf8(F{KaAj7U;F@P{@ewiv#hskf9)giR~Vp=atjB_YCf+F_XN$4;k83*9ilVh zuaXbcrFdOc*!?QKI^HlECG5HHPw@ZA%Kcn*e*yRP-&FrJR|VoA#o>RW>V)f6ozN|7 z$R?*-C+{m`dY=6Bi)8)B==@#5J94r8r``v&!UZE`wU4ZFf5%nmA0riTg8T)0{&@f7 z0{Bfv;1pr~Ozrc0l>=xe5AJEjaOOw>m;tWW%79UJ zQ2uo>w|qcr1IFc7#nZ*0;)wk8?7?&!jT(?;tsQ)0Y(MK{g%z@F|LgdNF{mjeZw~(J zW0|qd80Qt^pYhD71{?MRKnJ$*S5+kdmJ*M^Xu(f#X3Z+Vs0RI<1Ng7!BEKGx42PM|Q1#A>)zyvl2K%(;Hlo8%DU-U)FBUor27Jx~FT^jQO7 z|EX@Q?+u>dIT&XzSb5*Cpk(|yKe-}vf&H2KmEseahq*5>8aW+UipO;LW|gBB>i#x2 zeLVX#f3WyLnZLElV-)?{uc+mBX(r~K@)O4;<7F`((FzietJn8F@!`=6vSK%Ae6JL( z5WS*tH}oe}zhIv%0Qw)~v*E!zx@RxIaX^&6agXiqqOG$$XET7`!Dqnw2D1LADR%a} zj(e!~-Bqt1uKE8LXkqBjg#TVz{U=MO#_L80X!c(VS%2dH?)k~A+@Cx0SI56s0%;?E z=yg>mo~0E4Tk7muW|yS9CZ8z#kN-~WkJW$ns#Jg7{^JMitIQ$x{~*1CssJhgKtGj1 z)B#}aLH@~l9C87~22PU#fLo@j9(#_Ma*Ez_xc1K+!9(;)_h^;)n|QJ+w;zy4H%k#+ z7+{9J*TL!NtWmK;`Cj>ydOUY7zbj@HWzjb8r&Y_>*N8z8gD&fS{6;cHs7LT%elR|; zsfu(n1e`}38BibK!`>Z~q8yx&K* ze&I799tH?Z2fMK+GbQha|D4O??%0b6I1iqH?*rFhUnuxq+yUzWc&a%=Z0|b(t0|edJed8bP->pJ_XE8t* zq1$zUAuF(+_B=wmd7iRclhqNcyW;CT z-!uPtTu127{is1l$Ns-mOXHJ-|FyHe>P~uDIxP80Go;A*oh(d`R5Wu(CsooZJG^qYB8%^Mzz4B%hk#ki&4d+`NAyE4pJ1r zs9+=+(?3OrBLj>uEN!sJyxX7iYr*CR&Ft}Mi{%mSssPZz*f;){jFe+H9UJqwHv;YX zTc=~?K&O?j&&#%)835K8V9wb6$gx z#??9&!Txs zoo|7AMSOx>zm-jEMa#Mh``uOVJwN?pwpLM;J+&^}TC)9Z%I?L(@>kzfrs(|SJX!yl z@*7`L52=3g{g0RLKSwLrE~+(FFN?=D`dG!9zVy`myXL1~#RByAas3{%f7wDUKs~+> z?(qSL0AT&Q{8bMy|JOM|{Qs>q=I>Wr`yQcSfZhlGk5zxG8{;)J!@iU7H9uXLjEb8@ z`$|EyTI~H}_pJebZp<&af9LGI|7zH|Vl>xX-N((RK@e|uLm{GAOrOg;hGK{AFg1H8a202l#W+o=D?BUKJ?W@Y~`QWoHD)dDwBr{_=9!TiFomhN4C468V37=?P9E1FMvzGip|4==Wl*3j8K$=Yh2v##@RsZ zzN_KD2AML@Z~xdFV%8w?5AGbFKyMSV1k>Q3vjEj7^S~F50DxG|4Bx|NWS@m=3Jie4 z@zsVsp$9-8_~)}Qo@0)12=B$>hiruZVzi|H ziu(;KZ!1RTX|_T-r$YZYMgMP6&F^!`smaUnhg!elHs!GXq}coKRLg#u#uzjHJm+^q z>GaU2gI+yE0A0x&`~c?xL&P6XpJ)IPKbXMrKWhRj09OO8uTeZ**@gwu9sA0Y=%lTu zY~Xg${c*eWN9F%oXHTY&X@$L&qM`Et1OCH|y#Igd-#pMp=P*!t{*R->H9M(mh5u{P zqmm;2i!e$={vcWTt#pT2U% zrrM7_>If1wnj#wC7=l}4?IWX`A0$~j_GuGB)pT62gifeqZhgS8jV)VJd zQGCwWHU6>M?#M~bA6&s2L^#0{`-e%mX8alJ1@>l~;bpKH|6FCL401$*Pk>6!&OQKV ziOLC80Om$wcFyM6N8oPpS+gqFZEi7ta%}wC_Wb2cmatnmQc*%<$g9{*i6 zCv|Z8T>4bDbg`6F|Dl@gGgB&HrDB%m(mk;l{gXB0=SgY*+mcSnkoaiL_rF;>d|6fe zE*m{6>pxgljHo}Ee=2^M^T#}WckA&wAK=?LfKcUw@(<{D9RQxb{Q&y{bOhlqFu(wf z?>ki2_LLOvR$_^c75-1H4T+vnhpj~Fzjb!Mx)W^`H;Q&&9RF*os9#v~Z%OO?|Ko8R ztpK>Oq7`pOBa#{F|1m)Ii8rLDCCjTj`H7199V|t@n=s$I;y=71W=MtAjkuq5PWI|v z+bWabRX=vpy`~o+y+830hRG+QVt{!*`-vY=`or|>2&sZGVuoR=LGT&@gT))SiY?p3 zg{nB7l$s*~fd3EvFBQK>>CNc}*(Sxo<=5)>G+Hx)-zm;2-q9MNWi~=%g^@$dAD`Z8 z0HmOvjbm(%ag8-K@BLW#V_eafI-J6gWBd8 z_~5Qc0t@)KCGQ>JB=`B%)>QN_s1Mat`cNh2L#2#Gxq4HqZxwZ5D@{vcqR55 zU;rx$BB_q$hnNAL4y@+5C(K|Ez+R4-EHHrYC0AzOgX`lgtiS?0IcnkRen($9556&T zVW`=l*H1^`zfXEv+Be%LKU+P%N0*Zo0iLLJ;rit7rL}ar{Qhy`fGagxUX}G9mD~|8 z&@8{ZEA8JP>;H~oO~Zvp&-JJ3AJl_?Y`;7982>1I7@%I$i`_TE!8bTZDYybCumGRn zFY8McPg3OXHLY+lLi_EY2ww-i_bkPk`IWZXg9F~vwx}o|GDS< z{oh>DS_rr!bM>mC#js~q;#Pwp4m zfHl6{Pk}X$=?Tt;PM|{|TtG)q`UlfJdI@&W#!2r=<~`a?1=C|DT~ zfE8tI1;l&Y^9)8n58$VQJ^SB`V8{Ke!@<9!WcK<49djy(Rfa*@x#Qg#0TwzB^M{vF-3zGx6e+GxL=J&{ji$Y{pO@@|mtSFDJ*H(U+) zH#hKClmnU@9Uc@u=j}U!5?~9g;8-6@p&suDo&>tU^^15bbq_3{JH%xj!9cxm9*)Iw z&SY-jaVma0Y0ZZn(-+c5v!wX4IIx@|^gmLzE#Jxa&bCn8e}X*!iLwoMC9foJDoV6$ z(mviJdRet(Z`W2=_3w}BHhGvv7=3=RR#g6jdp2T#`1^hI-!uNK^PTqx_rd-<3+OB# zww`exa)O~ka5Gu|J7xXn%KC39#I%=n?I5g7tQ{VG9B-C3Qhsf1;s4sCPyDSAK>RPv z0HE^c|3>N0_m?(e!`o_)L|Z50RsXkM>N|9;@+I4<2l#{P0d`fT|LNt-97SXXkuY61B!cn^Eo)d$ag*vZ=$Yt>;b@i))br- zSI&{#wG@7CsLq755AjU&KHnR&d|BtIz0luT-|5-uri-or#pSc=2YYsTc=1g(Gksel zV!Y5lO_Ac~lDCyJ+9DYnUm8Wq^*^V&_IAs^C*Au$Ie|zo!g4)<9O14Xv7P>lQ zcc)h-UErlQG|7cjeq=r{luZWM;phh>RY{Ey}+(l1b}WpbOkVw}LtRdqPR={3k51pmsuOOb$Y96py%B{?=3MdA z*N~-br@wM;0nNb^u-0I|e#G&-2lmC4flu=aT*5gRr{1@H8O|QA!N&pZ#y_tF4M3#O z8BgCKGZWm#-tag$dovR;0LLs~r4~XwY>mg(Lf;#GT<~Z*E9T!-nZHho{0~b%OyA3v zRn~v3R)k%q(OcyT<s2lGhGvb8(JEhm7V007_Ww#Xf2~!=dTFKo zS*;S!AN$X|A9DXjzdd)4S*m@o=HME2?+70Z@c-C*4{$50Y}@}-u5GJro3o9IA_`(a zKr#p_B9g?25pzOOF`;4x1u-iKilT^!q8Lz27*LEDKr!3q(AwR$Eo!&E@vFglo4&8_ zz2E=4{ePE!-mkuM&OWvGu3fuojXB30bFR6J^wt{TTWh4Z)abTdU_T?Cs$abSr|L3t zi4X%{-lD>PXU%rII9gGw|E(bWx5(~K$0r-dpNR)=Ug6&>fBpZ{?dw0neR!^`=HO0? zwoFb<*H!+nwN?PXFX;&hf)2=7?zR=%bf-~?HKZ;O+PiTSO{t_;)|0{71TGnyECj6tuK1ODuZj0;96 z{uDMI5M(48D~`SKo}ed02Ojxg-CV%>ALwuf!L|WRpdXm2^L{)z*2Va@7w4G%Y(K-N z8{y^&{09H*1-+aRnDjZ(p?gz(Kh!t&`WX<<>-co6n0+|UaWpV#YvQZ~Sw~wxvjl!) zTkz_(Xk48-+Wn2Z2bRDq1OE9g-om%#(_rASUX-@3~C z^-dp#si~;s$2g+ zb4gpNi`9eDoCj1nf6w^?{dl4sH3DJ%Mtq3+t@?#=8mfJ<0;vCNZG;1F<^os&EJjy( zvT^EX@t*2_j;#1{z<(E2x?LZwpB%0gc3VsTyFI-qStb5JT)6pS{CnlkfXDy)en#8OYC1dV8UH#ur{e#IDJ>1HArjLVqu9eZ&Hc|Gr`X&om5+2F6Vl`@f(bj&~{om>{Ni zO{MgXk`0(872v0I+k8YZQmcbJs_yU2%J)?bcw9atyIY;1-4%=o5+(qnC8vy+LET~$ zvKb-Zfmk?nqz0M11_XEn8)qO1k7-K*7Oas6kB=_EK62*xOe%|0@x?=DRcy2 zu3*5atKjgJ0sr>b_SnID@=kM-V82kyHqd!F9^o8(rg&{@3<3SYqM4P$0H_Bt7qE2- ze1~_K-v`|DJp-q~%JHmU;l1#GzM-=RJ`3B?5Ch=v!>c=@@l@+$SF{{{=;#{C8=jRkX%wT->Tkk@u31r4+3vU46JR*E3an zyG*oov{Ce)>P*nD@&2fOj``8Aca-;c&wt1Gp^nG?A3cvp!T-Z;Lp89i!Zvy?WC7v4 zyC`#Yzw&<1DB9S$^8Mf+ZoIwx>m5;x5B|~rsQvlBkNWy2 zUau7Zf0G=LuAFre{$ER-HST4=Z>+?o`nD}9Uf>u3#gH{a`|8fniLICHAqv1=+P8;h0UnPqbrwb4lyw@9w%^&KlcDq~LkSoH4pYV|_a;mz7b@hS#xf zk=HRZ{;AeR|7#)cPu}kstxLB;-l5p4ysP}CT(_3g+Lq7f{WOREsVXz9c`M5KeVja& zbWMiFlN9+spk5!}H8hDfkN&2bzauN(A1eNw>+4!^0I&7sIzO1cdAyZ9_w;x4@2DTV zhfe>F4C?rABY(f2y#Fie_c2*IcPrr@2F&kP8rd@&9*R09XQZoX_TR?Yg!HiF>*z)8 z$DbPi8~(TAzr~{SqMzb^>2g^+DU@%dZ>W0ex6!#mzI%EP6ehdr`#00sf@kne#)8#^ z+^IC!1Zs-OW`ueMTL{|)RvUJN&`Q^b(aO`Ee1ek5jn)cni+hv|^{XTpiujaj00kBs@>L8ReHAnFt@PhxR2MK+M$xdQ>Y=clBKpn>d z*}T&%-`~j=(3Lr4;K9AoiIp>xx0Y#dZ_m#0Y+=~Tr|};4^4rhU`wmzEum%yHHCw?t zp$C`)khh@9?s57-&bYG&Dy5R6MU$u zp97Og@!V()@%;zXMPgl{|5sY!?+lG8=K3(#kGZ~R|3v-H|GCN!3t*KW3xEPhG~gJ3 z{bU5F{pS%8fNKE#3|4`?Jrrd;p!xpKsbY3V`F#97-oK@u>!*42&uI0Z5$W2(*GBSA zdnWHikL$cx{f`+y8~rz4&OMY%2fHY99N`vh5?BZnqf!o}=(v zVSml4PdV!eGH02M`AhULsPAE~dBFzymTa4d2egt}vV)LMcCeSO7kQW+bdLrI{ZtVR zlnp(n>Ib}Ayt+95Gs*sA04_H(;cDPAr}f z?vH1)r!;=}-;p%$<5PGqeA?a_n*uh`?QEGqD6xhyYi8o89TZuoGm1G+GM#imU>1_2 z5Z=d`^0{>lpS`?0_;@oC+Y=N9A`j0T6G&AvaBs%n_k{nG|it&f3A8%+$8Ql zTOFd`(s+0&{x;eodQ#f^8x3o!$M+i1E2=Erw?hAp!Y4o2fUwecsPYBpY{qlY|DDlu z3}BTXE5Nh15ZD8-Z(Xp9Vt@L5yd|c8m|jQLzeUA&w~@XuK=pMCqy5yuqOs!Z#;RA| zIeA63i9705%_{~_XX5{Tj}~eLpdVBLux0js`iJDac+2PlVbN&ZQygkLedA_|>D{Y% zy$b)VR07tQ#J~S1F0iHGH=Mw{ft~}+bmhSR&cc5`d42M--E=j2DgqcNd&4TBhw0~v zhK6WzbVA%jxSy*y;9lu~6U6+-$orow7I3-Zg0<2&({HnOMaS~h@{eKxXO(M~=N8lR zC$c}KL&P4vQh1027~Mp>s8Ohbfl&v{1#18w24Q}+RVyPUV8>qB5xkW@clM!DhIxOk zBLwka#dWl{3RVPz9dV=%PD919QE08)tN?!sM+ugSv%`n;mk1gpx_W+XeLCGo%rX2t zM+Wnb8~iQs(zZ9&41K)tZP(R1uwvK^-fg?ZKK5W$jDOzcT46H{zMroP=ViO)dOzp$ zeZ9G=)-QNX;5Jk-!q%(=!rWS@=4Z4j(mLb^7dvYO=s%V}mNU!Giji9VWm8qqxgKnW zqQiG&1y<7fe)~uB)ve|!&Gy+w8GtX8i#t%`7SHdQzWk=!4_Rq8_&+&+d_8}$0M7XZ z24H4j-7k24Ud=1(l`x$(iqES0SAB zIhvWYgKUHq_5VK9FZs!vXnxXG^8cTwe@m{6J4P2O4o9EcT|d2awOWa-Y$POuW$G2z zmjCx^!uI`e{?Nsg9%iTlFaj(95d&Kz9f6)B=%qUf`>Y<`cX5P9jR3t8k5O$fokj+0 zX7F#KN1{=2SNVEs0nq`kk@|O`@PDp;Pn0^it!4!`)fhRr{H*+KRJOq{y{vrb|h?O4WjrT+<;GfmtW(k)!fI1IQ=32MQL%8YU<+ z$KjiW^9RRPB>Y{RU*tXT67bKr2#R0b$A_$gqXzdhwq-C^v8Az{sq+&o0N)5Z#UsZt z=mNgR=pK&OSlM@Tp?}+Ss8-8t$k$hg?_10Fb#L#}T>sbdW3zqIXQla%S59b(^24u5 z{oA?9`7crj`B_?1YE$7qkM34&2{Zjz;m7!QukWrxe&^~3*2${Apq=br$oIqV`Edk* z_csFw^*+3Vh#<`V>!DA&MRVvDsMEl{LVSyABRjr@UfD(XS&FT!a8N( z-fId3pHFVU=ntz6H>%Ljy5k#HcClq;0bl^G66~W#yD9qLU!I?J!ssk^wDPHUsAuy> z(F5_I`;8F1Dn7QJb+dAA)Y&5k?+)b;t};w;5>AC~uP#@}*^{Ku-xC#%Cxs$+RqvwgPK`d;%?z1~l_C$oeFAm2~bpI7(xJb!Wl%=I^`r{dRfzR_>>`(N1wp_Vpa`2LUWEz)QkY;2+|f}F0RfeWb@N~ z6iMR$$@~RWI3{&t|q z>xJist{?2Is^i7V6(;G$|) zkoydeQbol{QRjFidHx03=m|7V>fiao|0VJRla(9zV{$~=KRZWrLx-vwXtpfCK&=(L zM=>}*U9%Z_SLk;oAT|Im#CT)enP*$2!u#UI_%CSeL2&~;yc%0zpBgZLmt=gitsx{Z z8_?N*d@(3@{EXiRL7qzo7r+v@e;CiKQ=J!_BIF#`(Oy;-MbQIcuna5)uK;VV2@3W7 zd=sje0{+RO``dzgJicR_U=8?&oH@U(JEFSLOC7srUmm=FumyY-*sM*a1*pukW+cZ*R}Q>i9>ua7Z@4Bu0>BdVH{#z{SApC2VVmdz_99^&P*1xgbV=y`)pTpL%;eqRQJfRq+!m|L-n; z_}2Jlvu|0e_BHA-Rspxi5#^9aum^1Xq6HtK(f`aN48yT zdu2Ue7K8d!>$5HsEvL0d=BqE*S-Q6L4LD7`8>Ht%XUE&g*MCsW@SY&-kJ8WOVgNU2 zrJzTWEFG6#kX@HgE%uNGuy?td>H#k*-p*goK1+AgsIm$`J^)LA?}2r~0pRqEPy2kB zG#CKUWaIFmAcpY_FMvg3FL(?ttkB^>`QIJ#VC(o$XUK#1#M^t`Fo*&()a!tMcMLW% z!9RG#_b!)~+J2>1c|`&Ay?{AeDCX;t`2&4eEn)=D1@B8-ZT$jo4N~hq+52s4_%7HJ z5b7EDSP{;U@5duHD;c(Id~0G6xDQu`&-WSBV!poomt;_e)4LSUHe*B>%n+m&8|_NP|QPy*|sx{{;+y9BGww8@Hh_+PrW_k5)nyQ`+!(_{c>i5)!)uSiX7r3X8 z{+?8yyX65ct2#biAuc#k7T~F5`Sb>@3^6Xhx@cBzqZOf^DQ+pc6$jKMh=z=De2xcWbMHQNbi>0L8VjBL#DKUse(=ODr;F^YJ`u{`Li z+XNT^>xJ2CI=b*XR~G(jmH%H!uLrwe-nyi92zSb$m$w-_{@=Yg%=f{Z{l68;V7>Uu zw{{G{l>ov1#_Z*cjd~Dn-O-9h;5F7Fcn%MbeZ;y1HWi{Km_&$X?Ek?(=R_?wF@WoS zouS!W^?n1=d(s25ee)xV9aYcqKzU}Fm0gPtdE4x`G)Z65eWx4L6wURWFXex1k|mqO zdnw+Z*YJHqqi9`qt-L`Me|;+SgMZME@<+{&(eM5~W&n=i(f31ruhC7dujBrp_wkxA z_m6rXEJqjl$KmSn{k;6w>G}j}W6{0%y`h*c_-8K60Szlh`^O(73)Nq*dG?_qx|`yj z(dqikr49Q&pH;JgTAy@6G+nVdGj(^>wu`56gZ&tNZt=W=?*fHNlrt1h-XX0p8QK9jh*3 ztT1@CuJK0Ef@q><1wW#U@5}1)JYL>^Of~m=oMwODp(?>&Yh}0**@XQ3;?rWj`T~tB zPAFc^pOXr>t5_Etv!!B8@Q-h_KVtNQCTrP77uFznd~1HzwD6Jq&u>_PSuiniy%s2_ zWYz_YBhX^*ZY=;T;Xm>5%o_B%AhrPZr63FS&-Fay203Hwl)bo>ea?p{pYtcaW)5)3 zEI20s-iYY!(am$<8GOU=Eja?QOdbD08RQK4X4oC$pZ}M%Y}f|Qf{iQ6wX8=|W>K6u zX9$<#YV*I;H`^{u)K!Ys8$Sd=;8My=h?o%*}3j_%PEC zTwCK0+P^t~RRZz^b!~tdY<)B`?^bSaju=NDc}DbYBZ7*TjsG|P2gx#>5dT@-|C?t` zRbBhHWQ@B1p172vzr~`p)KjTRa%VJCo|+mx=I!^^_iZU0x6rq8&vL8$#Q5X@@cTSQ z>qi4wUwcsmSYNo4?C@@?#W-4>zAlzZdb6^6cMJLV3DfuJ=K*bWYNKxZ3E6?)t6Tdz z+G^_CGF#o$E>ITWH2uE6p+)p|bZfka`hvbK?stdcz)O!s>s58*!#m;$q)m*fz(7%=NA2I=qLpD5Q@a3Q&jA?Uxqmof=uL%l`L6B-y z-dIO32j?N@7xp@e_A}rRy&RuUhJaPWmeX(I=U`*Zr9lj6#!h%%zvK0QGh40TX+xv} zPHl5w1o&CkIT_LB_nU9UwM4lRSM1u#aj9LS$}o-yk8OjExOA$ zOZR_C_kV73aB_G2k>>b)+VHi|-%NI3jx=Oy)jZ#a8NT>_P+!M=(C_i|uKfY^uzohQ z08sCJMEz)fDE_?9N&uOFcJls%#9rT%wttWG>n((UI`_2#&|G+-{{JX-{~r}+=@%9L zU(q^6r)WjuBbHkHw^%exD*!znJ)z9SE{gp; zk*+gNeM7MTBa{nl6@3-Wj1QBqe@i1^iWtDf!vAGbgePch+#z1jG@X||mfa@{a78h; zm{goryrOErg<_WUkls>1C;;|EAm5QN$~nFn?-n>MLBr=Kytfe6CovXp(P|?X7;fH!JFA9k?4* z^*>h%(EQ}AUv*5Gx&E-&$uW1 z=Y42@&h_E(`40wQ)xf$S^+LTgCg*77oDZ~?#SR+#WV)?@p#T#92mB9d=p0RoS5N<- z)jyl6`{$dL_nN>ydt;5RsSdL0#FUSrJ?|`Oz3|ofFA!S z1|j^91%MaWPZ~!-E#q1He>8vl|K-I791Vak(8i27;$-s^a07Y*{y`MVC1^5w&F5j* zMwqP!=VYD3-v;|)ZSe2$&oRKi6@260s%EePjsj3D9k+mae|NqkHpM!F&(nwx_z!l7 ztBvL1HP!*q06>3p#r+4SFQsQ?hs*ajlzV6{=a%L3#fC*I#r+4%_fJy3=Mvfav0?y^ zOZS_vD)2bz5T6ny;)u%%{cWO#Xog}-W|LCy2lw~t9&mr-AAFnfI|i`s?>c_)ZZ_cR zJ~IMz|1iUcch)ln-88l*%KQI8eZG&8mtR-4u<&3o;0ypLu;z7ALqAopHC1)(7Fm<* z$#hP#a~yECwEjIR`LpIuA0jKai*kSiWCg(g*22G6EQ8@2{p9_v{d+Z0m{Bk3qQ?sP zSIW0fQVQG}iq)Ed)a(-%SRZt!aDNI|;&ZV!wnwmS-x}_I`WF-|KZ1G0L%b5 zqv7D_<+!c9(w4&itaL`Q)l!fD7K>Jh|0HD6FP;A0y>%7a>nhO&kg5f8fUW?9_is?C z9oyIhE@~J5N;3go6$_Xt4lq{erw`OP@x(dF zH%WWxNT*9h-lUjWtfX4NYl_?QYqUbZ-tsiAG{FXde~()5z$1Iwx+Y+a475c&SE?5AL10uN&yuyCHZmIYdUIB#oBryKEk{MzKdv>l5 z%AWfzq4aS*eNC@4yM2!{s|Jbl`)LL`>=F6iDT0D~6>BDM2^>Oc>=hLylRp2`pv`% zn9ti&KL3a+O20~8|4v~aP48ZL|EXg8H;C<1*LPOM^N+5&3Zg0!r@0?HQ5tu}-I$pV z++WP<3NikVwY{KYTqsU(rfkOqMO~LigW|^Gh4WMu%qpQ1WDTyC9k?NRGWk=|DBVAO zH@zhrt2|Po5w&8uf3c6c#oj563FJEpunvf)H)f1`#wd@>|M8O6*Q^ z2=@ooo~cu>py9cICtd*$fD@QWgMToO%EsJX))Qv-E({>V6FdU@*aBMwd~Cf!foFNQ zy|mSOI5!9n_Ji}~EWkJC4Kn?Gj849ZZ3M5vw_~yVm?OLD&=!ItvCnfD$Ux%J1G7hQ zaDIhI3H##f=}HU#XaA4t-%Q{Xdpk|@z!xSDCw-G^;|0?F{-B)ShWfj<^#7|hqL@k6N1mi-<@p&;tm#AEuZ#YI ze(QKJdE=ix-bC~u-O<16fbjAl-8ug{{#`fFRc!StjmuXx$_MLpjTX;?qZ`I=g?qFw zev<*9`}buHmqcZ9NV=kW>on1~`g@cuz5lHiom}~47yxlqcU`qMVgSqn_BZ6)b=PwP z#n*?55nUm*{x)&^`xWQkFYMng`*^K9_GmqKwrs=kvJeM}A?zWGvXkzTd#`&Q2G^GR zW&G2lb$h+)D8&$S)W`WlWd^Pl!()ZD}c;`ot0Y%1s`0c3LiU78NM<5<0z_~t01@4@UzxDBqef&B+1pH8`>_`Kv z;@U#$3h~J1+`JNu`(0QQZ}$4&)z6xrbL7Ah0`mEbO>=&ecVj>5xj@d6Pc!}; zq98q}D}L-Nja9%FU?o~;)z(Q`bLvOc`HvD$+d(UOr0U<$t~fiNs9x@?Rcm@)DgRHs z?^IQIydi6UT=I1MebhJlR$gE|p?|&TtqT2p~f;dI$RX8~DE& zfE7J!{ygRp`X4+1Wsv_J0oa0cQZDO!#j*<&`486^-DI%>1{)>{XjI|fz3^JdTXq%e zofb9Gx;1NN9o7Bg%6}RBw^($RuIWy?szd<2gmf!_^enK(*Hzcz(5jYaOvU%f=8?y{ zUuqw5{?&@t&lm1b67pF|U_T+B^%r|ooQyfw+zaMnTYK^9BEbUCrKz7{kgHW6@R2Gk z@7JRdLO*MUOi^#=J5&?Ag4F-#6$d<_>>oV>Z%~BzZt|l#gRHIj|IM@Jc`GRZdudMK z8^yB4%E|;zOm`9fJtHV|2L$ho*MNV#qP?e;b4EUBAeu(UawI^{9c%-B8C2M3;;Gqd zth3L)p7(nn82}J(%`YecU^rCygL;l(3j|U@F=q*?;p>jqIl3c#f6kv*vDeS@TC7^&_;rhA?SeC5GaJD!V14-Bd|u<~vwVJ3B)Z1OEQ3#TRDj~* zj6Ye)&87IyN_WpT%)iPn*F9=nHZK2GOf5DohUGV8FY1+ZRpH^dZi0OO9A*4p7Z3PL z+$26qRla}Hn!a19;_nk_#fNEBd0j8({Hgd2NT&kd^Zq>Az&{%~L81aMZq&p7jdfT6 zuXfJQwLs4Lk@Y`Wet&^h_!%e0yM^#>)t?-=wQ#E4Jt_G&qv*p^R#kZr>s%7 z^!odMbY^|z_rX7Zx6}1#CI3%VQ)^w*zVhWKDVo2!Qu*!{^3C|~6yv{6%Kmx6>8Xm8 zjuKxwP#l3OB04a2UVL52wgg26Yim^otK7M=3D$0Ui!)4+&hnx9x;!X;!D@jg>bO(H z0mel=;-BO5#0y{6__#ypr#9>f)dzhp7O+NonW{-n%TFj8m4}x*mQNMm=PTzO!~yy$ z0s#ALVWl8YWsRziG(4A4V(x2S=g5}da0DW3USoz0Zm06rFNd~CFmb3edjLu{?%scqN{s4{ z=eO>M-bdDtF$97cRg9$IW59KNfh>DF6SDFt#-B8=&jjyYkt=rgj$R=_UPh zkdS@8;-E=F`<+!K-#yCiPmwLSR$9zCiU&~m4pp81UefYdd&w&;xZ{c=EbasM!|1m% z!~L=);I0uH^wB3x);0f3EZ}ij`{Ba>iK@7~rQxTB3pF$FPw_Be9t$u{7T`uPf!UQ# z^l8#8)mm%Wi;4lZD~~MOl@Anu%~w}{(5adc(4rcPo`(jO%}kx8GB(Tzf(3BI4+??`HOF59xRyFlT#cGw84{=x4SJcy4Tg`9NLA1DE({Z(tOx`ZKUDwiDO~dv+eN zc@_`8m-DoR;+^*HRsgUpoHu9Axx)kay{^upZkfU?26zjbEgPR^?DHOL30yDRCa~_B zL-+J-tYc!60`{5Tv!!aW4oaUD`ghEiQOb2)eM_3oRf_zt zmKB(xYLEA{-IKIQ&Xn%AuGXe*(7HaGMnB2poTkyWi#Ar3p{H-C^9BDz`QX?Jfb(}& z`CJcB_weA`3IK|r^Z%~-VT@t{c($|DzRSf%-&LjBaQU*0g!p>h5BNs|Sg(rx!9V`L zujaKZ7qhzdCYt@fG-LfApBouDxE1vjMCAL5$1_{^0#)ivRt@jn!v1tc`cveauU4c_ zUhhO9e~{Sz-ii;HJ48OFV|5j6dBZ)h6~G2_Cww=o(O>~sosGM=o$l~3eac7Ddp=hl z@p57RBxMeV%L07caC+1<{#|^WbibDs``;@3-=tXaKJ|lrMl7JSdKxa1uUmXp4A8of z?Nw9q>!NwSTQ)P@Q{#~ObNs)t@2oVau}2J84@w%5H@IT72W(jr!2btEZABm``~f+5 zOddW+6dS=!m|5Y(kvou~+mUgacHHiCflJ9RL^iLJ?S=Wboe$OQzsjB0lWT#}TX8LX! z{ZXp_22s-}jUJXBw3o0S;{NS5VnBU8!Vet4-Tpu_k-ZU36%W3LF=-F)IY8I~=L7v5 zuf`&4o4*52(^74Hmr{mI&MsgQrVI`<5&d_FyV>Fo#d-Dk~l7FN`em9M(< ztdcnk98#P$ikMv zw!yv{Z%x-P&fosqXF{$W{F|5H_r2dX10Rk}Fe?YU=JV|5+&L$HYzG4BVFl(Vo~LAc zL%c-9#PPA9wkGBsSOar@u3CMKpQiHtC!`;z7i9zTqByH~xOlyIOTK?v(Y?4bzeB#i zW%|0*+-rq>s=B9&*}b29A&qCBLM=S` zaP$9Gs-amyD_P7aOzpW2NjrAtc@>6yB+Any$rIseI?jBOfh2 zfVDzcZN>R~DllO4!NP{CZf1q|4>Pc_u-pM#XJ%J;H9=xGctAJR35-xRz&DyB_=YUb z#j?c1WfRVk<$1s1$f!yDT|8Rq@bjt%m?RyL{!lk*96gx)tiG!wH81#Tb&wxg4l8%j zdcj*3yX7aUm(2dE1|(MXd{pPHjFu%ww7sQq&$!07HP&yCgDn7wJTjV$Con|Z44Ud3 z0F=AN&x&H5^*cfU^)Q8iRma%@`=HRPgmDhA0$2Dt9|7~GE&-chh0@k*NnTTO+7U@{T;m=a5W0F%dEG{;>=)_8 z>D4#aJm8#Pwj`SJYQHTz~KLJ@RZ! zp5Yz5r-SaLtv8kc8`4Dz;uWd`_*ON+ugUI=QAOZ6vH`=yM?P*iGa3-DC&WLePT_Z{ zD;O&U(IsM%IKb+vEqx{Xb3R{n<)_OA^e8_nI;kGuG_7>FzjSDLzgG%z-pU9EMT}$E zfITkb+&Te!z42OWY>a(d0xS2%E}q{$6*Tb(p9+eo7ji5B_H7m5)p%xnK9x5iGQj%= zb`W@hqXItPmIy?m3%Y*^k2xPR8N9spNh}p;udg)V_=5NG*|uBQfN=g;F)Wbt0L}pT zxI`M8>WYAQ@Nf0hmVj%=wX$U;-@27*ueyr)f0$mIotQT(#urZ)AF8)!r*hr$vf`0^ zj`}oo67!!T++QyScjIF8|4#Sx*knPxVtiP%tT_J$QG2QWpDWrtxKgI*A4f)s$RCz( z-e|O2Te9yr=JDpROaAi+q{gR}9tThFQ3?a_Y(JyFy}aK!s!4xa+354D$luw1&wpF1 zVT~p5k5zCNuq`!`hd1j0= zU@xTmRXPB((e2H^6Qh?rHY3_Kg2q$Owj3dZC;_y>vRyG0aO1!Db2vSS3y zhoiyiIaiP#bOz4YXC63=@sC!(k&X2w(eK(Gt{g|_`OT_oix%p{+$%j_b6_T9L-Llz zt;K7_$Hg+L&Du$;d3~P0nSHDkTV5CDuhm8t=WZ!D3&s8CCPyVN$LqyI)a4`7ET2x& z{r^;{@BO4KQJqE=*$!fej6L(lzaN8U0qld_(~*bAj623>$nJ-c3I}y85O@KRe=l+W zsZ#x45!)T08SS7SoO@fRssM5aEbD<(|81)J|8^RsL!$Tp1?qkOp7Z~o|LrPG?>f!K zNj2l@F{$t)#K4CtJ3mM&U;nC_2S4rj-FiOW+*h)GJw2PUovymI7VZG=;T_x;?hG*i z_lG^U0PN*aFMZxkQeS@(-d~XFFiQA8L3d`T965SN+&Z z;Pd3*w0m}#`U12o&neF<&(Qp`wCqzHC<`!G7GN8VQR;%d_LLbcW7ig-?(5lyO#pu& z0MCd2GvdIHH|PJb0QQ}DQ~P#D_@Ibhf%tV0X9d8$M>ry%VEkh_=oCnY5&Sb-_{-yf zUY-T&R2wQ&o%M} zcjC%fNg>Y<_jhMM*7E3?UYIsyle3eA{=16b6~8ZvvX#*Po%EO}|52L%tMd8Rs)mbs zT(cC*y{U}fqnhRWV!T#-s@CyNqV=Qhs`Y24&rrpKy*28n_aWyG-wat}B1T3GW5y`= zc;tULzQ+}s6Z<_z@&1lL>mwF5iv5hc!=yStuK6gp3k5AJv|I5r{;dRH56A<04!l>! zZO1&frF^d6|B3Z~w5OluR$ioDCqGKhd`PvpCnygvsH)zlGKiHF?Cq`T+k<0ov7%Vr z&^v)E4*Jcxc*b_v@38mx9m3~h(S2XJqn&lnvBU2R|6hrTjjv*l6T|_AD307RQ!TORXX!7Lb{l97KK`To($#N3&ko_E!Jte@oh*DJRxdn@+ezSulp zIonyjf0Cj$qW+tO{+Ct7^_JFq=#$KfmshvEl@<4|Dc|2&bADz^``uf7le{!K6J375 zKZ+6T-_<^hr@9TOD@|6NjC*?;`>cTWx*fnP5iRu8NFO7;>j~*j!}Lk(E7}jfpLoBK zaPQh5tU>7ig#y@A(l_pPB;0_h`v9rE%Tu1QB z6=qMsKbW_^*G~JGafPL|J@&h~V?5%W+!O8}=w~B_BeT;*S%u@p{@#%l`cRm^OblR{ za=^oMMo(*=Wh3c;7b_F+n0&}JVgRFL0j|)PdQdgNkEL&CD;DdhpXAr-Dmz6S;De%x z)(bsaGlPy6`=t9EGXq@{K=z7}+*qR=KZ>`*pE=3}Eo|n#RJ=OIwoe9+j`zVeXo4|w z3^Hu^eE75@YTF3@2cbSD`W=3MZM}yoqdNPx6#?ab#F<&cGyd`CDDRvP_;;NG*ySAD z9Ryop>tMd%&kb>cZI`{i*#Xb+?QAz}6F4p#mIfX4>)pew{FpH5n)N!BPovN)|= zp|(ctEp-X+P|j9W@OJsI?4$Iwbi1lUh*zM(f7ud%cSd^sw>iIUf)N(*2JYbsc-7!9 z?QcOG-qv$x@aI?tZvowSP8XhlCDDNo7=f`E|re7<|f0Ht|w~Dt>=li}Yy01(cCnMwcqXAK& zez2 z_*r|awz4Y+sHWusW&H1xhuKxLU+Hz}buHZ8KGgqU0bC74WIzWHG622*A3{GiYlt|| zd|i!kQvG((RX6%Ut}$zNMIAMBrBL+;a4j!_)Ri29h%L{ zo0Pw*^{cI2o1*N~XR1Hnq!^RGkgb_rmG+TRMHB#s4da<806%B6+w(a)04w(YSOYKt z{)o@Pv$2YYHNwrG@xspR;r)ZEW_8Yc;O7C8K5js!tqI;5MDl6o0h}AQfPJ9dXT|Kq zpaz7qKxxFrc*6oX7T_4$Ap0FW)~(6((RmtQhIav>wU~b&>CP*OtUrF=YhBX+L%scVr2iV) zmd1Af`Am=!*GmZHnwnK{ZLtPs1IE82eEKVgK1%lQa09NtXI7eRac68tI6~lJ zzKhNSnguY!V+Y+EdIG;A3$RdnA> zn_&Dmu28{m@E_0y(u{Cyfjuo;+}S?R3F<&w9sj{5U;$tP9M2p75f_l@1CMxKju9|v zMou*l?+w-nCV+;36=JiE3HHf|_Boq@@O+2~e2jqm@Hy;d^XIu{BH*8EH@pbm5&i%=%t0$FOud33AI^P46cj8X!>$|Bc zeZOsJ6m^X{O7(kDC@BPYhsox#TD^sy$jg%C^z?3px}w zz;PpC&&`~+;FGX3hAho;ogu9xWCesudL>fPtfRE zN%PJ=$T}Anmpj$^*S;)|l?t`4ask&Df63R&_skwqFS=G$1mONu&Gk6&d!vr=&)B!d zhL5!NZJ!MK!FUBttH#j~_f(=Vz?c2DWSsOJ$<)Q z#_v+qUEHN=pKXh`i@mjiXIbl28&cb*c8q%Zf3J-Hrs*^C{F9{g-K!eEkCG3?*mg-C zjeo24@ft;6O5}6EC$`8cb6XAKK2_8?H!fTWW}7D3;ERf5&eUI7yzE$y|6$( z_F$u`_IFdU|NlDDmewPjuWZP}ng@A;Y%#Stp0mT14fuD26|Omdt-rz%?EAN>qAzSj zxI#rFt__8JNsBc_(d+=aSXf+JRmKO}V?w@0rIgp>HvZ;=LXC7ep92`?EW*(>mXt6UTv4F9;cTqK;T@Um(6@1TM+mb=ryA^)3Oa{ zsprl0{o9e7EdWR12xbD|d5%I3fVJD1hkT&)i0RU2K2$fR`>VOZC+JSiZfG5S5lxP} zYjiy;#6ME48#At|2%ai+X|wdpv`KzmF}>_n+qbrA?Y?q|I?pXDE%2{-OU(>es5;fQ z8lP0H(w&+L_ApZzlv~|m{DWW6$X@>sj_{>MkePcOL3nhKWZrEr4ll5;XD^v{bUNn) z`47&HW)D)~3$`e>9atLv2k&@$D*;v^cs(438eRK$&o1)OI47S4-zMmLoCk3V_JQwZ zb`ZFZU(a6Z`r!GtiF^v)AHAR6YOT_pRO|OQt>8O4-&ego4k@21H?5shn^fDcHc@M{ zZ=C<6SIrgjZ;|GIhqRhkWT~fUJ&&8>Z=-#s`F$eh|64`F>Fd zHfE#32k|_N2Jl}Wedd|==y(z18V+DZnsLVXLIHFP%Bb{nyq;R~YZdqRi%!s-1LhmQ zB;EUT)O=waPhZ#i>4WWV*jNIx|DOH#&%oKzdyK)VYnrKRGEy}_J60Gqy1^;v$F6!+ zW$ubm>!{313s;-ii`q)=1@Cr6cCZNSwb$o4Kk{!lA5j3af_h4!JzEt)FUSJCBVF?G#ilWvg^b)r)soqE8nz5eqk}W+_iRGZIjxAC;gQV%sCNNp;2#FyZrb3^F}gjd zeQvM{#y{`jRrcAu&Wa&>sL6BG&hhwUygs(T@AdoqDfZ5`M&Q{vWmXgR!4?2p0_(>% zuyGXFOUM^;JVzZIEj$O($wPRLqY9!TSNpieck}8xv5Ma|X?OMX{4BjDJ0st_s42pl zRjyP!sWwC2|EcndqI3Qmt>pQPxEPgwcdK4|p6ki{Nwj+1zh`s1z38K`_DSFVZz!>&4)Zg zHGo}(PkU>uDm{X@%J%=uF4 zeFo|rCd&eRuI+iT|BGa)M<{F4G-cv>;F=+xBW{Pc*VpH;s*f!Ir5q#V>^KV9IL^%YhohLe zhvSBL!Au4VU>?u;8U5G?&Ntwn@5*to8gKzu_wdO1K5G28s;<*ET4}MX=J>swo|Nq- z=AWzH`o(fZv8?g6VYL^_$wl{km1-T|>s0G^z4HEZb$6Z-Gute=EdC-(6uC0j}@C0=PQNW5!m%N)yPo1+b4H`ebZ|cwj4ebdObD z#i;BgmEkA=7ilf!b4n-EhehM`i7bdcU0xo#=L!gm=(ZXtmhKUC~Vhx+_}O& z8jrI9-Nga+R^)$+DwDoYHsDE}5uFG|N)v1nJrWIxS5^)1E6OXsERC7<vO8>0z}_wGT8ms9m{I`9*O-@m`+f?Xug_y)>R%Y1>-<-xV(C0{D8kFB%-2 zIAjCy`*_#j_3`r|$_9^)6+o6B@qVMc_16yVkOKS%fy^b;0TBCG86+iyeuzs{=^s&%?fX3JEn%zD@@#W)Ey|2;i-<_piI|gvYPpAO2 z9`MiduuK1OuFx#tyQBpiD!Ux~KNc5WAFOcT@%#-r!Mg9~n)7ORV&pDyN3q2yGLGH& z&D~-n`gh!iB|!Tn7uZuA$9rVE&J%=5_pUPC#XXIRejML9kCDhsh_}^7u@_KP-S80ucb48IbipX7_HX*oe5l zrD}cJraPpA(+AQ{*$>&L`7=WQpUTd)Q);7YeQRUObBfmaYV!Rr%I{B*6~04vV1a!9 z*-4Td9?y+>DBt&*Ecj~5_jQg|i{@3{c0iT$qtf4fq+IC-17yRiSbfGHzz4uMtiVlk`$c=rBKZ)rrc4{ID4 zKi0u^!%WOEf*G9eC&vmkUf2Q9Pq#ym-r3hTE`*o%6<+9N=(N6IX z@j2oEA8JPFCB=V%dOWVGn7gB9`@LAzm{aHHI$vvkME#!QYX*R_#He5k z8321A`;Nc>z`Y*_|L@8)XQSYwZ8WlaX>Q5AnqR(wG`}y^$^Iz$HC_QP*jXyX*_!n} zL!9>(Rh;f68$#ueXZtm-@_=LmmwvDP&pg93rHagw3NTz8sY``tu5#U92Nn=&0PNGl zoFHqij{U=3BTC>NIalLXaunwexyRV~kOKhy*nn=jQ@bnwKTgWu`|8m4v|^KMG=eS_ zKWT{0kG9l`VW&w0_&_XRt~949VgQr$Gd=l8Rl!@U6Xk`)&E>$_v=&S*!h1l1H>D)Je-5^ZLV(IqR(4**}jN8Nu6|BL++}cFZ^#ksg!gmG&&&t0%o_!&}}_R=WzT3^%vu>BHrzkh2zE*1lLNc{j$(0$@+1?2jgjaolgf6vMa82@H}cmaN_Dw!eLZy51ZmpKFF44)Z3HozqdWOn1w_%#_O1U!Q{o2vxuT78}2e|F72?-49eM z!1lUUuBi&PbxHh#b*_Ej^{6i)OW?Z#*1g%L+qQ##+W`B0&-8K*(8zZjfCbo1%HM5@ z06tMZ@CDtc$x;Ka(tZ7~Vc#f@XT&>bPWgL^1726w=`Pg;O{n@!%u1s4+VmW)8vb$d zdO1jH)v#LU+UMo)a+&h@Vs@VAgR&1*%Q{fnb{ma&@`8+huO;48$buDE4|FsDhCq}f z=YW4JgU;W<&cQ!;_kJFQr~y0SUIEw#d~#ssWbilw`^^903xQGax%_ZMBOL6LnP*;O zJ%{1*^Be~(0B6gY+deqb=YL*Tw-neD>mXi9nOt8Rb@bdx^QWh49j~jh*7*#wMr^=DYkw}<#0{@>YRXM&s;#@ido&iN7DJF5rk!GEYUHQGV6JreJ-O5I+^ zKSZ(Yhf*Fl(|p6nHM^v*MjfxP%`lH}9B`P%`XibHJ6(MUc2-p&tNl>{@XJ8^Kl+xp zOKF>~tjS)wKU~v*UaSDu+L$-1H~Jlqh5HsPGw*Xm=lAhH&)M&X${+W42y+2k3FMxG z+v`5=t!&`bYQ2z86bH-^kE1X7jj9st9=#C_kJnLGkOj#{nq&Hk)(XM`j8*n&qAWr` ztBh2d6N2n0v?<@Rx`lbc27-)&bkWLXZt`u7Gz1-p}*k*Zkgb zJI}*1T)TwF_GTMkP6EP1WDhSe{yB5UH13G%42Lrwo9R2Ff?)sX=(nx3kpt2zwAy0t z>c`asw{0OjCJ1|EIZ5&tHBR@ zd9~GDqJH{3f_?e{*zc18@G7E=lbvLRP7>ZQDPr-a@m4 zH&jO8^mKR46vhgW6{HSmOFiC7e?bsAH+^V2scYcRxAb4=1cdKvU-I>2o z2WZuRXG5mIR>5_Fwl5qJ{%%XaV={HbDLxlhGQnC<1<@(I)ngQ&DGc8;pUeQTYR-PL zddD_Z6hxKZcIlw>a%E9FW;3&H`TO~ZV)OEO)l`nHU0-WgJ3{@HR>||MZ~BSmVNH?m zpIkBjca)30HQ6{hD!x^HeBT!Cmem@*J47v_pQPN55c3E9;Gb%L_x2#pb5}3MMx7%% znzViw#tY-k8D?7p{`3F#CyYa^fMbDn8Zm>V?Eg`@qTj01z(Z2`_SDFNb9%g*Uyvy< zlW3!eHpq0W#zwXWDolZpY=+fa5uQt zbO$v0eQ$Ve*bDb}?Z4*&x(2vgWdnAoEC7{Z)&X{x8gZ@e&+i-lCN=kC^((kTTEGM; z72jzs_8+2aR24M3$_Koq9MoN^J-bX9!VAO#zD|axJ7vA{JvCE(S>>&V)H*5-IIrBG zyu0X7+>0HyCwv zzoZJlUi3hB{-zR$&9A@?@NQT+uObuR7`}0}$M`qCiQ2g!+3SlE& zvm-?KSdE|blYk_CkUTotQp}&dxiZ(*u(>z7MwJwhW;T&`|@{*YO_jAv%B|p#NF{V1@VY!oO#Ox;Cu4?$5D`(jJusD56pw zOJ5g1VJ+gD^=Rwpo@l%Hjd(A4qlKDx@_ZEsTrT{dBNp&@(mZ`5osrGTA1$s|B(Sg4 zz#q%o%6-aJG()I$abv!AK1nM%eUMH}kI@`ADgR0>qj6uC<36InE>tcay!jQKMu-*`Q45 zKU3VJvyK$Dzyj=tumNxil)wX&U3yqb(;SVef6piWvi4uCoZIcP0LLhvf&rM1apeQ@ z!Fxdel8?+1u++YX+#g2@K`pS&_j`Ga6$oCTlkOtXAsyh@m>s;Mc*vpZ7W1%b0!!7A zHbft&dh1r*tBH!-eia=TMe+E!saU|X>NEMO`piyNk030-1&Rn3sZU5t^$KfItX;mU zXtu5T)x4#SfrpmMmDd!Fi)ndV^{d}6OR`z2bRQr@w3Qv8e<->boB+&+j>4`LCi_lC zpWM3rJ4mlr+Mx&FgHZ_TtbqAFo~!SAVaN7Ck@MoU{t>Q7Z_*FSrtbgs= zp0%O1Lu4zrDVr86sLFS*^s}m~AM3E(lRT_^|7%iR7K&@-NzZtU>g#?G^KTTbrK-QD zrP2=3jBcaftH%)ccdkZ^xnsaEf5E3m6VEY9Y$F1XG;_3d2z6wZ1?aFC z!(2CC&0q((Zvp+b41s0U?+$yo*8KRcaYw_EcpY~JCO|Y`uMZzU5pZU32WiKHq~zQu zRX0-y$yBqrp09F(Yx$$rs@q-_!b9_AG*f5`%@({SJxcRk+sdz^i^2Z`hejWC zBw+l9${Lh9;&|8Hn1x#*wEwp!r>@s^eXhrGv~H%3r{GM?wNrI5c@dS-fGnq@~R!+&a?6sHwm7Clud@sYBo z`_#@-w!fLG{ALw*Y6ag%_1&JSI(ytK^xrGqzd(6ceE+4%YKr{lsM>E;W%|~W75Gjl z8m*b6`&8&>B~Riw?kRd7zJU>7?`=yEvPwb8x0hfn1^kD1@Rxn|`24nq!G3g-QZz=r zBi2)&q2;CdpQ;h#%p#GdV~M&|sUO{5h-#r@WVQYyJpA&WyIIvhcgX@ACJ)T~s!(Nx zKli=h${Wk|yH&Rb;km%w-~_(%zJsX0yc!08RsjCNyX(Tx1Q<1JR0Q=AOJkkj1*+=E z)j$4Esxi4&Re}>$!?8eC|H^2?_=$LDjnJ1>6F|@4tCI7D|8o@wOieyZ_S7uFZ?eDU zf6+|gt!u~Dj+YwnS$V1E3Mb`b#VP6=HaqX0Kb!55{WYDcb?y3y3AC5pRj)LGxI80%5x`reh=`l)!He_#S%> zGX{=;=jbeJbDp?hsg*?OE_6Xk@! z)V{jHzG~)Y!H0R{&N>$gjP`TSFvH-V=bEeTDS~K9Xcq8=)oU3($p3-=|G8riwaDH;3 zY{6sd8a^&PJlj7XSZrTL8tIqS4p)8P9L*H!p;-by6?2Lsiy!in^B=P_vo*3g;>P<+ z6>lqy5d}DA23hccP<7)RA^%xO)A-vxa0BdhyW60doX$vIt zd0^SxpM7j*{4K@!saqftz!IQPfOOvBXuy`<@v>Et=>IP-~P2~mc^}N{g3FnE>vHyFI0IsJ2^G^ zje7cK@wn&!&F^WhsQ-QCYR}N@{sBTC^Lu;guDPl|*m%ZCxc4D91b&Twj|`6(qu;)T z$MzeH9PeY?_*m@~FYYI9_^9;YRh92&rokQ>HGXa22)vIG%oq&{gGVp;hjspESomc= zf1fPC6va{lgh%UoOV>&x~D1StHVB6a1vH~5XZ{J>?UmmS!plSJu<_oS_T$it< z(Z7{eu)RcCv7N*NK$r1H^lgR?u04Cs%A38uy}uvB{H@6mBakBi_gDbe4wwOinRmQq zBYhIKz%~F&;?K2*XJ(EomK@P61eLWLeVtlP8s9 zLGS-ap8xu!Z}Nxuta#=4k!ZNOYBU!gdscePP|e?_pC@&GLGg3^9dI8wAJ!kw4D$K$ zNC=+Vb^@daZ|~=Moz*-0eJloDy)Ra`h;JKEhF+3Ve4x&r?XuAizxSOB_s_Xou72PR!EW$wTX4n!kHcI5 zvO_!zC+nsk+XVLrK?mq7u6LwX3V1>_0Y7Q`Qo8NE!v92hpH~|;iKa!p8Le3T$KtNCnWEi(wT)}vmd}=x%TeWFTF2`9;+CSL zR&L5xI)MuD8B!gV*LiqlH6XEeUobUD9b;vwot5p3$3AW zPZrG|)R_A;OY=ziUDk<5 z@nfB7`g+tAeB0Va=wXy4%Gd$xFgH-_k*pF^f{l+vrr`+)J>h3X5 z?C>yI9%2p9?PJ)Am_^tI*iSL$IGc9=gZ_UP{ji?9%Na57ebHv{nR?JLj1??D=G_iAQ9Qso2Q7yFwc z|8t|NIM&o0!OrnV@nMQuUyudx+99J=DR{Yh2Hl|X{EE5-+?pPkwaV8ozE|hK)nx&8 zRbF6)+K1)6VgiR~Es?UkQ@Y@jc_&r7ch_3hm&yk8(7Yi!2w(-ABP1FCxz_6f{_*(c z21Ely@t$9g4ZsSZ9H0f#1IVv*{Ez=9ieRhP9uUvt_uDE~H9=Yaz11;c8};%#Rdb|1PWMQERv)kF+U{1h&s<%xH?+N^`2Wmg3$5XI zXuL|iAi5Qey6?HBc$$={fJSsBv%hs zfLCKJI>^TCFSYU6hDfuFe$?NqRngzOvO3{2gAMR|JnBF{cEvWN{r{liV~_@4dFUyqYV|eSw8>B)T`TkLPR;uy@Cb z1awh6Nd+lfpr=^h*{V@^S6bjIT1)0DRc}nwIZl!aw0txw+AN+M_fQSc)AC$T$&cNr zNZ=abpEW62LF}t!yY!*-7%5zgO+pOth-zKBPv&i|e0j_5+g{moV9GfV#W z7%6^X1s|&XsqW`4xf6uz!0{H~7Qc)I;5XxdyUrFc$@uWNVuXNy#s>TRZu1BBb(1ay z`hRKw{ZB}z8YJ7(MV`Zv1)jy$#_tYX)yL;}*pOdlT>t;|TR$udFn)18kiB!q>Ym~M z!`%rnK1lz2&K2$>_c>T^-xIU{dQ`yOHM64@$n|2b4?-EV3IG@At~))jsttZk9UhjG z1^BM&88}^8!KWL39i0`e5KoL7OZ|UL762P?w`x|$SMvj|l{J{I4EB#n&-B^!Sj}@; zRk6UWWeXwVG*P~pce5%;JcsB2>`nNr@AJh94M;{~=y-PKRnA|%* zsO@O;{0&?H-)=45^*O}yAy0s(r`iwvqa}JyFZH=>%ocEeFziS(@%Y2j$y#~i;A~#j zBtJACr&)R5ii}L7VLjF>=Zg!#0=Obx*cL@ErD|UKX z*neFX;2!Cy-8Hv=Lfj*6h@XhAijI$ZsjJ6piVROyjqje7=EoYIJylVU&34q*X|b=j z1qeRaHr_nYzw2WNyWk2Edyt^kVIM#&W5e|*UG=FWb+3Pvz5ib5zd-6R6-M^_{N|{( z036dkCRiMMrfvTR{r{=&50>H)MFCf;60eW$Ej4>YcEKh)uN(Y6*E%5GHo>ZkuetL$ zp6x-$P!J!yKBK|tcQ$}(Q9j9CB3ujL(bZi{U?=66j@InbSyBOiQuWEQ(IWK>dRkTA z&nqq%7|o9kP#n-t9{-uDGt~piVNVbPn4l@ z#?ab!iUvL|A1<#_?|{|Hdy8Jh+xb!XB6-uTvQN?}%AW5pE6|~ewLOcFOgvg#=q2C` zzO91&KS-xG5RPw4K=uICGqVTF;Y`Yu+Edc{c2#eL##%Z3?EJxO#q1(s|M!)hoF?>7m*V%dc>e-r{4Ps+Cy`d~>>2+Q zJ*yr}mqy2EZr{(U??1n)@83WCLinCX-{kdm;E;{t|8DexqW#Ez+nQCwdt(nQPwjx~(3yv|=3?#Z_nZIGJRMEokM$j? zB5-%_Z+mya2d6HuRNLd`|3%vV0Ohvc08wq`O;!`h0?GH$>emlY@NWe0YkaHD5czLa zu=(*iZh-IZ+1@>=z;`82+uj>w?+flXZmy1ZV#(&$sB848=6^O9Mibbq`NQTZ&Fh;F zH=pO3+^;rYXg6L3(*?T2Sxp{5w+6C41sO10q%8~f{epvYix&AMZ9rismuvHj=)j|In zZO>n_ebm3T>m0$v{~YmX;zeQ<)EE4FMEnBIooN0=UUVe4M>z{t!us2Py4UY{c*xbN zsaxwDo6(X869o0Shr&NyuiwmI{>{gnM?TQOte08~6fWJi&7$jfw6r4oeJ!jYa~m3%KB4xT_A2%Z@dqr|dnSIeTH}_+G0jnE z$!oA`_!#P5tk75OyQcLU;^b>mPjq5)3!XCkYhnX;)xXaw;z!6V+`D%(vV{hsr<*x! zE^fhpe0SnMp1`sKCsIF8+Kkq(r@$-$H2}SU^W$gOhzx`)dp}t}fa>Nqk+pC_^Q7kY znyY~Nxtp`|q|;`z+I*3W{i&?euQxy3{7Q2Ky1?b8Z#A!tS z6H^z6HK+C$Mlc^p=|2>E(~2^yQj|h$pyU*J799pTs(9B9z;5;G%H(}9Ui-bD|X=fGjW7tk+zE9<;;)nKrseW_)U{=8W2R?wM`}QOoZY!|! z)xHn*J=8j#YJvk>edG&n*PM$LgsU_jtN*0FWc^v{Wc~!-{HjFX)Bv;rE=OX>x^vYB`34!g zv%o{MHCxS|<|~cY8?&9-W>btTgZ&>5J#yrh!n@142-x`blvmpIb%`Y?;Y%bbdjK2k&^I-|B$q{3l zMbSn&5HZ`02*Lb)Jv{&7Xx0#ZzV*lEfz3h9XB!7J z7HHf~6n<5nHu5ZSh2wg6MYkS=O<+BdtlM)i27&#`CxvtzfK0hyuCi1^F$=R&rdk1y{6}S ze0{g0`5#nUu^r|6O7*_VQRw??vu#w_n3^6Ruly10?S$>^%Dy!~znQ*1y))Gs)b+L5 z;u#j@#rxLL_M-uaf5$u{>wJi2==jV0Zjl#R3!M1!l5O-KL(F$hG(0u`eb7S8F^-0q znUa>nBF?pVn)5E+!@oACyZhcs51fsh{W-q(HR*jLA=jqQ7V-0 z9Gl4h{4b-g{4ZP`*)QgkDd4qS?WG?een6ifw=z;Fa%e3wKz_`6fNS7@InV;;rXt-_ z)Css5d*Jn+Otv zjn83G|BOu8Er^<3+c$|?m_O`WljjV**t)p2H?np)o;P?Iez`9-?`|B@SevQ>chwK9 z55}`Lk$PI&fbIVH23@I_N@L1>Yws)x?uU`pvl$sXC-h#;lMFvvA6DOk=j`5Duj6Sv zsPSlH0T4eH>3>}FC^+EP&2i21@bLeRXx~-M`|$LAqO~|VJx8~0Xgy9&&&T=}#AC5K zc|D_HfDf>`VO{i;q0JK;FSFw3`gUf|AJFqgP9v@hwitntkAd3V0aLk|8YGJVbRS)rtcNl{p)gV<$mU-;S)jejumzN5`K9x{Prt$rqFM`tMP zE!wj=`ejyR9=KjZJ<|*!YlQ^=W}Od5CmBUdY8&RpX{-u-84mb3&z@8M4mbvVU_9LLVb;st*}GHybB(*H zi1k$>f=h$_Gx{!Mt<2$6#hb71wbs4l4xd7O(bdofo^4**+`l=7)r5C7zQ;4judMG- z|1WZf&LmHFcXD{P#yZ%Hc>cE3*WQb)!ef#5SN1;GJ9~ZU`W9sJU0Q#R82^aIw&)X= zHC}5hgl7MZ=67L$1JLd-WUbz7cqSHS)#A$d_VyuPadN8)6RnA!zZ0^4?Y<@YKGJtT zk^c3`VLXh8#UYK4HV&wNu>MP;2`?buPles$=ldPM`Zg>fYbIO>AFf<`v3h8AVKV!E z4Ca@w4CI-4qsi`H0Umv~8aXw7=B*U7;cBi_TyCH65v2vVSsHV$sV7 zdU=%~g%f0Yxj&ko$3=%obq}k0ehe$5w{kVIKj<$k5*;Iwq$61}v%HV&``a_R`^{VH zfpf^dJCy7X>#K>~NO|=)QD0(yVS7I(b9hD_AzGlk;kn_18U6qAy3)aKO9qL25*ed! zIbMJvZQQ%&WGL@eV}_0*FLVc_)mf|!cotjnljw^ds#Mz*svajQuo(V;DV0&=2!4ep z)=a?a{}b}>>b5`Nw6<*g4NQ<6fj>||q<`=6z4O#h!4`j_aTs;+PNpLE+GNh|-S=(e z>`Hx$Qy0I7%)v`rzhX7vrma<43%7b(7d5xUQ-4Kc%SK;geEqxiwdw=vi`5q-gJ3Cg zidU;|Q2!<|g#GJB*UzutRiCY~P-Cse9*xr)x02mc!@u~&X20gZ=1O?=*QKR>$nklp zxj0!oC$#P$gKu`Oxhz?W+mpY)3+P`RzyAGXEiKZTgmv&Ly2F2w&o`|87%Kx->YcOq zems5tHlNaa4#>Y9cAJa_bQ?UkSFL~TQSALMRwuEZXDCn0TYw1vs<6Q7l?9Rf*Wq#7 z5lh=jek0qu|7!HLa^GwWd0NXq>-)pz1&5BY(!AJkvGc^WBdJF&F#^ZGaDQ|^{f3d- z9y1J||1Zhz_*mr&)PTB{HGc8>DL*3ZJMtql#=WwMuh9g$vj43i{O=uo27Z7esI*|- zRpfZVa5RCU5yT3J)j*sA(~72MS+5(8H6Qv>jMLBYPUfIMNw znA9j@0^eq3*y+RppG6Othiz^&ffraY^d##=zFOI-a#v-Q>ZIz@_yZ;&1MdJ6HxVH` zpUfcFy_^D4j1ZoHbiAkbQLOn3d*>sQekgf3TZ6@I$)m5K0jx%)oUO37SL<7p=Z`!Q}LdFH_KJcaaLV)jclA8wr3*tfA~WB11Q8$Tg~@94&{Y$r5MX`J3Tqj7fQ z^2S|_=NfZ17if-d?u1`)pXLvm-vRY&g8q%jJUG5Nx%pqMy;|3|T78SKQfEi%7i@ti zVhGuauaMKbP3u#wOPlL7A8&kz3g<`Gm#aTTzVIf*6rSNXO~A)-D%#CS{H8PDfm>O@ zJB8nLJ)d{3EmE6Y-M#t=*79wSfB%b>&x8H}==^IS`9E2i!ZULA!P_$$?Ax#Ysr#=4 z`n9~(y_W&~spMRAZt-96D+1NxqStq9e&>Z5V6oqw5e2L9)W_GeB;Su9!}u7yesfjk zCDZeI(7zF*p4@`?_dGkClFxEWIH+R{{Jr_y{r;`@z^O=v-P=A`*0lvG@YaF-v8DAzF+*#Uom zHN>AGEBKStsQC{($Cb(x*pbtE=B?~fdAhPy^}cF<)(HL%J>VX+VOI`c4rb(mQ$YW5 z?HqyAiHiNX_DR+OjVC7m)A}5ZUp7A9Jgiw~&EQq7kFs+1n@D1-W)1CIpl_bOS*bO8 z8F>SHl0DRFUEe&JEZtMF+HWDx@DZ zBgrA?>3xK1i05$sTKdWBIkTPBcMFxf9v~x2(=m9akAs`AX%3MEB<9 zxgFa4!}$Cf@iiI#>#Xdvo`;@(x8d~mpy~K`T#U=A3%K4d64|(4;sB1HW9b$KD7u08 zcWl)kB0n-`ineFV`g%t&hCcN{^!HUJk@G(Wt4}{;W<{ipb0>KynMs9Ba?Q6sv%6=^ zTo0UzPxyOe;SFOnGR9$E-#aoHjrezia9Llb$X{UzSs*&0bHTmQ9~{SypQzwp4MEA_ ztV_jE89<9P-hfCcCDod+(>BD3PG&AYjPCy_=Jgk;Rr3;c!}JFXubfbsjkv&l)#a!a z5PyIia5H|vYo=QSCxf8l(Vb7Dy6BCyr|}95AyeSR-p#0!Kb*|GRmr*?**d2+3-Pv{ zSVQm~?1JsE43@wjHx*rAUm^wTV6T4@HaLV_yz^S)h|O=;+63;{zV$6KixzIp)A|B_ z#En|J;!zyS{~cI=@GZ98IO9z6_HV(@@Bs4vkk$w?_s(gqP2B%ijlqqn^}|@5^c;Ce zJ9Af`>3tQS=C$1S`C$JHq`or$blzVGr(K6Ga0}AkyuS5nt=ezN=YNVi>TAM_H8OhV zpl^m(*2m^wtTJomPWo(b`fd|6JnQ)S1TUG^ET2UBl9wgI^!n)s&=a4rNiw$4p;TlU!cx7gRq1cde5>9! z4G-e!pnOv6vDS<1nL-!6HD~KKG604)r#AK@(m1)kFCN1eutojY_pgY8VVbI@z9gw5_~d-`tX)Bd%QwVvAH)%nTl`z}bIg(&IM zJykfMA0EGvJg@iTl?T!Ke}>J!F+H~)dQ>9)diz}2yF4SU)QpX0}imM<#hfW+_$ zHVda`KA5$937OOY3mF3u`v zkKV+$H>V~uoYl}PE1e+NS692oYL7L3THU||1=BmtJ z*@QK%vlAPk}5#}P|djTqu=rse(U$UuGiky=jTWzx6g5v0rIIxZpXTVa`%c^(OPCf z(bl60hVdgkJi@9xtFyxMWY9kw-rE3ZstUb%PLJ zJl?;>n@_U7e+gFf?_B=^cKs2(o1$^djjX>9PP&r&xBwP93&fu^T{BVIU%)+07=Jq2rk%9mJx@B(3F+R;_!L|fZqsTSFK5u_Uch7ulJ#ZRXHwX9ZhQ_EJ zP`r8>duKytNnvI`J3EyA<^@{wy?BD08R3ptgpv0-zKm`03OK8xdnO)`^#R5Oow2S) zccoC6z-rXPkz=En)mu=h@<=p+8}KVlBbWSx_yxaQS%R3?_T&gnth`ZKs=9Oa;%bG+ z*te)2IvyS1HYDinSOhn>eFKy54qSz$a0y%>4wbjR2bn$O`EN+p&vm_Z;(cT5*VjM7 z69*5Y>fT3LwKo=I|A`#kO6x<^99^0y{;I737!z_1D8T=Y#hXLA+1lIESmA+1B{a;N3;weiC~Ay={5_RP9+-H$Ooh z(+wQGBhTo%zPfdFj_Pmn#9svUc#gW;0 zU!=dYB4h1%rQUOi1*=zP#yERCqcc}xK}1gsGuTS8AH{!vW~cx43u+VS8O(D8Fe~8+H zUv4bl*nmpI`@su`G=9+7xUqC&j>bdvv&sD%PTiizdoO`OzCnF~xq4rOQzp^=IanR% z;>9};+g@+}S-e;Kn208D4PJ^{xtj-SkAwObYR|L1z&mSs{IoWr)>}KJI=Fg2Yj>AJ z-+78(dk-0@3(V?LGD0<3loc zys)@)DrkT6nb8xY4>)r&3q`$Nsq$Ydz#L&&Kn+0OwJV0r5!5Qs78rwXdvo%bcf&I{ zf!X%q%EFaFWV$a`S&FAvE{R`!A9R6wb%pBK>cr}cJZW%1Z6j94903zti7sFq?E!S` zyQk+5O_**KT-?U#`B(^7!UccA_MTR2vEFYWb$GX-g3wXK5O3&xh?V`Xuubi~qxWJ~ z4!MqaMXdUdP<`)lymi;p${9%avytuRA@_ai&Mj?k#I-QOZNw@cYFFa_Ge45qoaRchP9WK{_(*U29S##C�VmuQTp7u3fSTsYk`3S!GBY5@+$ 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 cI|z^VUgW*pq5dx?MC*8Weo^$N&HU literal 0 HcmV?d00001 diff --git a/test_images/IMG18.dcm b/test_images/IMG18.dcm new file mode 100644 index 0000000000000000000000000000000000000000..8baa512c15c6e3044337f3016e6924e5280ae38e GIT binary patch literal 526122 zcmeFa2fQ5BmF-_~(#!)SryDES6uNLd?Ix|;@nj42Tjv3L^*xc0AG^TN6V{_vO{nuK(pJ&399Va-j$n#MGbY#K9i3@_uTwf1UX->W(+ku9qZ^y!s9iK~Mj7c4jm=|u-7%UxZJB81oOv@>n=yZM^O%u6%P5Pc%v&m&IdAT! zGuQ5^Z&602)^v>Ku03f|yS*3>+vX~eJ* zr9NZ+>^y23F?>YRs8XNs|Nr~TsMA03`^%{3zx&i)|L%3~fA_l2zkA)Z=vxjO&M#~Z z-+B1((fTcV)rwy*eB|iHu_K#@jTxr%GCXWk{jN22CYOpPZ@J~xd+xdYuDdjs(PlbJ zaWrLq8SNI$n%g#7ZCcOS(=+4((Z zY`ytbI{rkxUM3pZb4JfOyYA9+-mcs1RYu2aU8`u;_SK^>vH_oP3z1Y zvH0~JrK>rtarp2NjT$UtM>h={-K3$?ICA*##^#a3#tt7jR;wCEj%;qNakJ)}w$YlK z@3sBbyX@7x$>d#j-DUrscinr>);goJ=BB)(t(vN{)jW2@a0XuMXj1jtruS?eMfyg1 z&@Y)hFO8Z;k66D`)Vmrn)o|!Jd+yX}ouW0Psrt1e8#OHTuanNrRBhcntf^ zO5xwPyI=S9PjBC5{H`y`K8KrJ`+j-fh!;w%n_6#IR0_&YRFvoj7gVraIp6 zaKKJc>uSx|5gOtnMpvKTrdl&{MDyRjQBSSWHTe7MrfQ4ku}zI57k%eRZK~_JK)p zRnMBo^c0q+&g&Gd)ZAPRhK>IIWYn0((Ia)N(RzQB#&UI1nl=g-+VvV6DBK<8+MsJljR�T8b&k5|RWB{P?y9AmUiYZp@1eiF zqP|fd{p~J$JwQu;jkiJ7vw?c#y}nx4Pw#TX@79@W`86$P;M;x%Kz0wIx{LmI*V0YT zKs;z=?F#x2%6se4_-8v_vtLjB?XRV`mVVLTXh`*cNM!-Qe?Q^BUxoiZ)izjzep;{z z{i`E<+s|Li_is4^->x$N!tKY62 z`|EK&@TpmzpWR$`FWa#a5Jl%2pLe7nwM%eQSg1K*A_0B%`e z?A`y4eq$T_|65*fe$STJ0la^G;Yi@W?;`Z}srdfje}n!Ng>NhZ+u-p*zfsS2gBMwe zA=<(m0{r)`w&c-vrALb`Xo;*_&cJ``40Nh|b?~qtIe7Kp>A^P`tjF|@^uxCBd=Lqa z`P-+m2cQ*9!wSGZ{v1@Z45?xO6ac)wv5((hF>2I;Wf)RDYt&!j2EGwXufPB0neCJ< zR*P!z?eH-z-}0Mr20B&zzKfK*6)KMpYK>mdW@MS)8|B6uKHnI$uMd73zRrS%=g6I7 zfoS{pzVhfSSODSxFW{d&tOjBs8kPNNsw}{Y(NHaoiW3G`RsuWWZ-yOkq``Ms{M*`2 z^={z=|1E#;%^068-{ODg40MRvD?`>^xQEwU(d!`;8OiqGMmRjc3ZD5lYt0Q<&-VE1 zCS}=%MLOgpj$Lv{R{57^f_1}9QqQJ5SXtr|^Tw5%FUP)2>Y(Cf&)j%v0A(?&Vgq5dBF zAD*9V0NNmkA6~J5VX`S>qlr5Dv}j5+Sciz;+&$hh<$~3)Cud5*Z?b#ouf|r z)ty`HKnovOV$T2!e|h0xar}4Cny!^61?6>Z-d@$d)9POE|K{AhPfU+D2m6zvnbBI& zJS}Uf>S~s7Iw4X$jgW4PuO!qr>;F(~J#5i47y^DCW{<}w0)YRUHw@NRqqU5v{QkIT zm1wnSb$!ZeI`+!42PdZI8nCt4@k zDB3VuP+5T4!svM6wn<)`$bOJ;Ph{Z593E>x_Kzr^$UZ0rY;DbdSTshKWvpxf=${(R z5c+56v!>|vFj)-80Q@dz15prr>-&2WxO~3KjZ~q|6_&pan<9*MbX7%F^%!s zdqr*8SKmCS7NJTg)F4uY1mEGPapp!lEpj_6;EdboWr z{l}YIFXOfI_x6$~<@kPYVGDpS4q3jQ6(-5jg<2i-xM4!)c;S3bw0^W@v`w^?=2mPZ z4zRlH!74&*@bS&s79<<{0srWP%@yxQ<%0)U1u!2l;~!ahf6zZx&&G@MuPm#=^AXzK z^}$_bzdGtyc9Z480-y)@cY|zOH!K9K-)Luhv=7t|-p4}tTy<%&0xeeHTYm;zf9o;r z=k;nF>vaJqM!c)>!9Kp;N*XnH11c=>dY}+&Ka4LPCnQb~!lw)A>qeVK+ef=-p4kr3 z7P13tik(l^7Gs2VFl@Aw4;Uk!KvrOJ{1Y31ek=jHz;JCdN?T4)JOR=t=#xM{M;oR0 zI0n1{MR2gNjuq=vad|74RxAVlQTxC*bxK_;{G0E?|A~E!e>ebIA@+gyyXp+I)DitN z{-$N0fBhLSm-UDb%D26{Gw?+1A-WFHHdqHsb^JS5AGT{02B$@{h3z?7X6yf&;`r;y z+ixr6?-}hC?Gf!1ZLX+)rab@375c$3${pB+2Y~-kVhnHwtbqAHsBhN#x__T2jMRR%AkGO6(J$#O+;$d@+bW0IQP@Sr!2c8fhv)`G6Z4qoTL}nR4;JB@0~^RLOkU)z@zdZQ{Dau0%Cn;dp!1W* z!-EGaFj^=F^Q%;k;NP#{`fv>&i=&x=z$=F7nDGBTmEUex;U91ASx3F}OU(Ff4MY47 zs#)y+t$yPD{XTkVP(z6cID4q2|L?9~%O|y*fq&)ch7*wF`N}oXNC*g^@t~uHIs)aqw0Zws%V{Qb8Wuo-@E4CRr~OM zkUCtrn_T7f7D(6MN)})T;eRJ#ep|iTQjB0jasJubVzQ8mnoos}`8t(9*cg^jyU**D zDobGgj};hO;UDk6iayPme)xm!2#;19&>OH5a00d(s$*f*dI{mKV6vXqxr*LVF+%j? zvw_s>I1xWKAozc01&IfO<=~uhj?Jo8XyF1a5y3a+44_uIjs+E)v5o(?mIeO# z&zw8re(K}U@%jnbs9gnUa|_V$%hHRsLANF)etcS<8!ifzBQ%vttWMVGc6nG z**fZXGe_J2L{1PUM+*JJE3|@7^gL>FsK=#>4{gu&e#HB130DCBR`t>Otn#4`2F7p2 z&)UFPZNWC^3LKqmA>SMY02BvB9|piLbxkta4)Bkz>4*SqV*%hvR{X;AP!C}~V0&To z+ah$S&US|u8}N-m!2hmq{pKFszRMopO1AUZ*aMGdc&|sj^Lj+G#sT)gnLg|NX#aKm z^9)oG5eyPyK`R=-B~dr+G^O&P&M_<9UU#-?7Msh?DfHZSgd22&4$ry zrt6ve_JJPp@Y+xV03+bJt7h=jfeASGH&7^BNhod<^2ofS#E%#1S@8OJW3caB-S|bG zoCqE+;Ao$U9x(5EU$6`ILnhBUV8{p97TDWc<1^}QO@~$l)zZh0zc4WmbL{EV~VGXdA&LF_4e5RdGKp_arcX^z({I+k}8DM-e z5!Udhq^?X!qrV9lIjX^#C9rEV-r^&&q%I-54U&;-&G&qlEW~ z72n4%dp^z-RRB$?))J$yqIdD_*Z?>{9sTG7&03F+ZzgX$5xn}aMRviJ1L%de8yqJn zmZ%BXq`~@r)-?I%&iJh$TsjX31E7kTU%`8}bmT%}o~s|C z0IL4&@xedwKNSK*0AW@>N+1jRUdZSho#UkZP1iE5Qs-9ID^z^A0C_(cJA09>qgs%~ ziURRIHGI5-B002rANyjv;)+3A46=t{9^W7O0HI&HQwaE{4zP!QZwK|iZ6gjqG=%bL zKI7k6|IH|a<^ciuK3kw3dy0*8lmPSh8OKuim2E(H9qjRUZ^X6yqHoF>UOZfxU|Sg;Lnetf=tn&V#E4@R}O zKn=GA0PSD_1`zxyyc+!DV_94a;0~Sk(=c-8>aHX-Q@cZ*9!kI}LO(O}i2#C*XBJ>| zga1+57F!W2gkAT`aq;=KF=z)~!#Zk)_%!zkqr(W>!3C^R5~X;iLKh)1)B?c(f_>{H z%+qN&bQg1c125nmDt|dQflYzvU~xJBK5J~@Xp1uq=6%kw2O;;+z9klD$qoFEodJ6o zk2d@GFk{7|6Ta_-*WM2PZ_FG2*17D}7|Co&RDkyH(U0#3Cyu5A^QTe>T%iF36~LYP zn5zpaiNRNt2S*chRt{}ovY5a`VISol3t)whxZjZg8A57#$QxMi=RNRjPY?cCs2HMB z2~ThQ!~R)oUSO-h^I$jJIiQD-*+Djd7{E*?pd1T_y+GxlB7yk9J;cnF{w?Px*T)&f zUfMEnUR@&u@~r{{3&2bQs*lhg+qKw$|1ku7cl`K&^_K+Hhy1fWj_0i6`OQ7;k3vLX zUuFCgxIzH0kJoh{9@p>?g)=)3G>2L~*Xg*H zm;4`*J$3%n4!Bz1+JR^OqyEDbs1ab#zz*se0wW%_Vf@US8sSUb*zH9u!L!GD-rY<5Eo(L-Buo`?oGhdehU;4#!wprQm7#*E){2f0##nK}PJ z72<#Odbe!fat6W~a72lhF|zH6yf(~PH#hM3w2yK`fV%HFe2i9bkNo2}UoT)0BU zIzX>QR=~AC_WbaE{4I;C_`tn8@xlO{-$UE?EFYA7SM|6)$2f%rfP2r~Bi_drQ1j#Y zd;$IJ%Mnos7RNua0UrO~)(-JG*cP$~t{p~!V4>qcvuu`Qe$Io@Zz~rvoOB;^uMx6{ zp;t)I{$Nnp0xN*9CE|j*J>WIxlMDc7(;OgJ0rLQ_57)EhZ_63@&z^xWBi;NGtgUp^T+Wq`WQVtnTb!;p1HU2Z{5ud z0Ho@EeU%+>M~{%nvlTGk2d4r3ARf#+BS01*FM+4#0XH<&KVQKfyf zrBl^I#E;_7UZDp7UB8$SXuIH}SOG92z$yf-flszVNELzS1x&0I2eOXLQ<@pAp~tC} z0y$FO*U^eQhP%1}i!ex^$Y)?x=pKdz#1f(daOQf6HDD90_Zk0IPPiIy32Kc%xvd7< zd3`TE^R=+0#R9a{3%4NqKRyFNO~wWggNAG$BMa5Z9-g&+=CNsf^RCx2KJopoaH&VD z%#UxYk!U`^7e}8= z-EW3aX8<6P<9Y$_*cHF>dv)&*6M!4gC&cpx+$ms^G76KbZX~nRb#!$_0u%Jv&KibJ z;@199{03H^h+T2dA?G@X1kgde82`jhL;~0Xa{%;&9y*VnYe>&D&LR5@sJ>ah$^u}Q zLu5ckq9rfzA0uGN-GZ@X{F?#5EFDz_kB)vHMwER%z9(e!!q~)CFjhf-P^;J)ALO{y zoi4Btj)?L7VFU;K+yA@L24p%OulrqN8}zs;khwlApxyWn${b37RX+9!5r8!SY6w_M zchEYcz@xJRio0`4Bn8TOg1s{zihxZGhk=tyPCBR;XtHrtZtb~?W zV97=J|NWOcTMhpG-|XI_2d|Dt58ekP2Svcl6K=`~1?^^`er_w^IWZxgFtcEL_<=0| zek<@_$Hv6}|3VXm(6iN|;SA2mH-(Y3r_I79)i-6Jw*t{(FRc*g&g7j^EWI)Dmc zcl4tMfMfZt9##|r{`ow!bo+6>1x&!1h~WR-50Ksfjs%DTn3*(2`wkH*yH}PJ#l!O; z!>`2x)FTX@g^GfHvW=WYvnc-d(i&_3@F&jg3c6l&8|tNR!*^${BVACbX&kJ59W!th zsSE)BTvwL=`$%YcXGuE)j0b1*9My-I-yR-D5BlxXLk6GsJh~W%#=OxUSiiMBt5oic zhZV6$3Vec5Z3|GZ{|jnBKj8-allzD9yLLD5a{G3?I{ufao4avLSL99XJzL8h%?oCp z@TTezu&p`;?5rLkdq(?5KZ*{C4%KpCw4XW#?V|U#(L%?-`I=G4oWeD9oXJ8mIYcUm zh$;Bo5XU?F0RD&SJu8SjVsAh{Jw(s~r|Ubp`)IQ~H0lRcQ*<~t`muWaN>?PCy>OQj zY>Rsy+d^`VU`13&IRg-C0nE?3>b*w!d@LL>5cLmZb?(R~!o`TcjDPA8x!TSWENSDs z<@f%hGY~ui769b)I*by~N)+JeAAFnbdtBACQP>8?s{cB2#appZ_Y3|*M%(tnd;;u; z+@CY!jB@Ma?h%A$=DY8BuI>b3Yl<*Fx9ae}m3n~e9UTxI9337V6P+BL9-R|i5M3Ny z9$gjP7~K^;9{o0YH~KXCI%=r3sV!gYRvTCwUK>*zTN_nt((~@M_O-GW)xM1W6ulR{ z6g?R|6x|cu5?!gIoEDuJ9joIWpzcE3si)wEvL`bZ;n_++=pf`6#GHiAAVdOKr0HS+ z)Ae_XkU3Omh%@YYfsS>E^ZV-ed3H1VgI@n)-#v_T82ADeL+&wdyK9?_74BZK|55sG z%zhxBfn6j5fRp(OIQ9zH6-}Up1^gp4ELrR75jnoe{wbiJ@ezE5@sFk#viTv#2hEGK zf5uy=c4d6yyRaH?P;-6|Z)L#j-?2abALdWKpOFswt*=qbGevmcKz)986B>_*PKeHm zE{pDn9*tg!K8Z@)P$LCu(ohKC9(%$GA^C zI35vCj%Ua7wakrY#FO;8U)(uv6F0=Q_|w{(wWn%#*KVj?TsyUPaBbJx=C$=|Gi$?Y zU1TFZiC&KGjxLc+_@TJOy0SpbG@wrq_y4mhKt2Kc1o~IiGOc1GGxT?o-a(Ng2JfK1 z+}Q{PfM4BT{@z+5`*Sqnc+@-=&Lw||>!~bsj{%exGy$wJXSJ`6FixMgmRQe3;h#ug zu=eC?a144A2d|GMc0_D!}o=AsWCe zp>leK$-z1U@Su)553c*CCy4Rw>Sp2zv<2=a5+VfGLzoK@f6!?#)CrhLQEAmr_@AJ- zWr1RtsbUeHm4xT_@tKq8JOI|+_+R`w*GEOmvnAmS5dRtfM5S#P%~i7nFjEfQ6`pzhn@v#xAMiN^bzfr50$0zI{!h#n7z_am+a4dnT_gU>i&W*vFhL&fB8 zkKT%wsg0;@Al&_;c3d24#EtRiwVP^3)i$e*t}R=8Bf42p$M>W$ zUa zFxvqd@x$f4W=gHwT@m+{(Tma2wQ*wc7t~&?wTY+2yTzx+x5h8We~Ooumu^f}PG$?` zyCpvq#!pQyO0G$6On#HxoZK!1-=91oWdBYGe_mLBPB?#6%PU&*O7gOn-zBeA%PZAd zuX!VRJ9$6(F!>;PFL^V0BYC}g?^SL0s*dwi@?dgja)YeGk;(4KIqO!ylXr@ z&f>=vXKYp*p!nc!*@1o4lW>mk=jsEvz!Yf!GsI;^%R|@k590xs&e#VvfLMUOsCaqa zHwWmWGuc>K6Jm<-!nS7*f@*gT;f~4u^_i2znCOSNnz#t_5FKSX-s0MIuFy~Q1vZ>3 zY!$#)x+M|_`1mgW<%;8j0s~+SIP$kPg!i{?2tI=C?fvmOp3jT-4_Rr}FuLIR#I^M3 zAmfe?g2#rt;;{!uaGZ}7!0R^)E%W8?50`59lw$db^7XgWBE{xEh_8;{jXNc)B%8_; zAD^6?Tq5s$t#E#~{P|N3|t?AFduB zs{THz=MPrP1F{znR7ZPU+dZsT_v-(HVg=9YSg%wT;B{GqceK2wV?V2R?o582{7m0y zf#QZNc`m*v-Z>r^zfn88wqb1r@qufj;2g69f+6RlzcWbE+`YvO?>2qTGI={!W8|_y5JQAz{U?V`a>-tfdjc{_x zAs^_m6{1o6KlpDH`kgl$s!_3zhE56?+IwN`@`XXwq?IgYK)7r%N z5JlfnGBVjJ`AKrIeEJg=65mMP60Sku)0JO;R?nW%^QZLxY4Lij!SCe9KTJMLzSQ!U zwJEGMHIw zU3*zP=4fRn7APvW*B&U3Y@5nC#b<~6n|n4O+9&9D^%9RwI)7F|(HBQ6vY#b<&l1YV zD!vE^2j5l+25RkOp?{j9sG&OZ-SsJ4V@GaO1f%kp-7yZ#`0AX`p5VKUfF<|W5y^w? zfN!pL-TPbnH!JWX%n%?#bhd_0HkLSo>&P4%hf&?k!%buYA7s0b7B- zdUuLE{tgw>e@=P18Pe(>ueFcYlWO;B+*7*Tfyw#FEfwxx7bAaHXnRd~dr1g?Oy2r_ z`RT{??o&eKTf*;OlPq069h^>1H%xa=4^PiZuTJkwA5C9Q-%r0x8?w$>|7>J7DVvf_ z&clYtwVmBhx+8_0n;&5J~!}@cpcK!#%?P?Xm*5%L?45 z;TAYp#7P4dZy#7|fH` z9wzS&W2a_^h^wQ{nspEN5FH@&Q-AClMS7D=&~xS-IHDS+*W^9dtSk!oJ-Usd?>R#N zR~RV!!F^0d3;zT3SzKdV0InomiMY-|-L<`^GJr7wD`0f+e91-0clDR!34C?AzU~vl zwPtOI{9*dM7q)byVBe1gaJC*lVm-jMf9CzLdKfH977+k5aRyg0sAEmoLvQ)CS&H$` zi0+I25{*=b?N_yTYR%H}ZdPo+qGI}^q`obz@Qp`*MjrQhq5hfb*-I7bK1d>Y@nPwV zbgT5x^cU&9LizGS_qN&b*$vt2*;4uNe15)repG&8eoOvL{)ap-mM?l01B(87T)tSg zh>NfCFY=G_7xKIEi}Pdh9rM-l9{K0l{n;tmW?54fXV0X+N)JmnPghL`i97sRtl~wX z{@&ycX^A&UX}Co;VWI30(FAeGv(@)}LKfm;#VI>0Vu_NQ;yvO4@pH8!Yb)3O9Q{Ty z!S?#?V}<1&I_qtsWsNJsAmJZ63CTJt5mwdH2HJ7n7iU}f;>A_O>0*i01FU0 zq7V%bYmx0kE2LJ6`afs=Y^_~|!4-GpAJ|{;2#yNO1Y0b?cgYUmr(FYP>yEv5y)OvI zN6;6W&Qvi*>dGJL9jcO9Y_JPdwBm)pzccvMpwbz?Pvz|xecd(AM{C^vKy^8P zj>gvxtvyg{8_$c6kMD~U<=}Qmj*!p4u~O zW>d2~doVpc-6Nfs4o}-CUU*y4#y!G6k-{~}mC4nW9`SHxt%yd5PZsL8?5|v7`{arE zC-Knunc9z3ar8&!3=h-YizetSb%0S0m;XOjI1P zn!Nu4RYEL~9hfT1;7-V{`z5}x#_E~V{bg~n7Z)4p&z+Ql@+?|2fR)W7v z7+7+D3)UX2ngK8ZYz4qP-XN%d@B-cmaeo*sr~oXEGd&~47RA+m_#ATj?$Wz>rkeR_ zoiqxEXzXsNv46Yty$xzt*OpcO?!x%Zcm?I_c2cJ85@G0evF&^0WAE1TfY|-(is9R( zqtZ>%W98$EY+813c1QMAHa0&XzdcWiDaDV9TZ%7=;pH~vN#!l&tL2wv(hxT+-7uhG zdc*n+3mVpLnA0#<%Nh;i8+tb^tM{UYzm7NnqBeCv{(o@rC(vI1J?DXv8Y+8Ow{=0lYu}yJy@p$odF}Pg2 z+*>{z)YlriGz@7N-Y}w}v7tl5AIj&--HFAB{MmAA>~A5v~CFTYATyHT-g547!j^kL#^SB@>bcE&B{UL+rk1r zz5JK?w)vp^z3k#_tE_kSuDHmL)AiGlQXk^CI-BKT0Rr={>p*xVvUMIUJUVj+o>^}-kjHKsbKITR^KF^ALR}Bzn5=Vujo%Ga zulqo>d~Ju?gS8>?k*dfWpnTrp%I00JY#z%sil`TgHGh!|N;gh_nm(U4D-!=A+c3X8 z|2&^koLszG^eShUdzB{&%a?2UWqH1s{W-$#P33*%{d&AeSlv(CEK~lrc(!=A_+#;Y z@pkc^qJd|N8;cW*or?{Mjf$O${fk5O>ipu`;@0B9;*DbIa!5I>Y%GV$Hf&S=pgdN` zy|H|xe7SsGw&mIKUd0b*l|RvEZ&6MzJCtu|&%=t@MXTc8{J?x%{z>-hZ0oFB_L7u{ zUD63s3qF?rzhA!pW~l}DOEq{x9N|9cgFjV_)115+A079OudA(5`#>tl7SigN?QaFo zGk)RlsH~_eeH6n}5y%|Fm8F_am;WcjzlqSlg{;8FvH=@Z8GmvD&9WNoSRtCcuvG)%?04@k`uoYMmvGZ;J%^}J&QxDvZs|ub&)KA@yqX6Eqoxo<`-Py;Z z!|dPQ-}rYoOOH^p{dCqCu8}%WW7(soyZq6bnqzm1D)_clwBHyX7rz&e65l^jS+i@Z zJlj?JdrO7~GB^3|sakq?x23*}dr7s_vMueJTl z*5%S=$8vy>JGflF{B!YqaYJ!rF{9{IbS#>Ssl{rF<>wdc6f=vJie-x5OCxwKe_v|g z=Xq9iDMo0^4U2t>Gm7hr-zf6GLiXUP;&-wL9~W8KLka>+Vf}J}{%=z5P##pCQeGg7 zb7FaDxxZeoT{f3#`DAfsv7YqAOY#MInqQi&pDmT$ksd5F0YEG8O0cC)uI9QpuTZ$)((AUl92u&QjpEcyKP zg!}citS1hzj$(qjiWNr5TA(9Rb7k8c?!ds6GZ)}`f_|<#9Di}&ZyspR!1!>Kz#~`m z+m44N>-&@A;aY=e>vv?GY}G-tbAcWQ_5)mRtARYT1@QjZ1NL#A&m17kVs~X49ku9k z1NylKHkqw4nlpE?RQ~yzPt!ww|DAYjvRCqRDQ4GI%Z>8+&nZJcIz1qLDxH@7CYz97 zpZAvr_f*lX+`K$lsDH5H@4qRpk`4Htkhn_Ow=Cs@Zxim0DSle~s<@+gNXxBK{thZO zEk+89FXwOMg|z;a#MlQG-Q}tOoWCf=;L7~hQv1)#&(E*PAJ0F_yA_j*EsBGSpB1MS z#}&uw@7cxAi&Mll&MJOgEY!DnzIaS};w^gqd=ZHwtXJ-$sN;u<8?G!D>YK4F6kph; z>{I?u`_3)C$j{EF=dWi!$hu24{9!spbp{_OcR^jj4ONZeb;&PPnLJk&glDQ|=o;ld z-_tyT9fazkI(tO_*Z|M*Cz2=H;yMyX!L#T!gbv8eLb{Am544*8&X5%$=jZ#8q0z$4 zs2rxYfJ$se~x5a`43vO@jSl+Ytt^OL#Z~*R7 zhbJ)CW1QJ$;1%#7-ivkYW1nAVtBfr&ee~KGCf@_+$8(|g&DMQL)&y$M3 zMLDY+Rdy+B2Ux<}7#EjzJI-aj?Q1^|0uQS%` zYM{qXU;vDpmPp{+fq$c)N3I%w@#bdpAf9e9j_pI`Kl4GX6NC}MYy5}j`a1f@7oqes zQw^n$rBP$imA*u=jt>UOJME&{w?Z@Y-mh&CU$5CYYbA#&BX+%_VwCdVCQC^*yHZ*E zqq27S&+_Gkxi^YY@~vkJ@%PEA-do;K{#>4Rt8!}DuWVIjTD~qmlMe8h@PAG53*qrh zVgFjO_p7yBBMWe*jhtHc=cfL~Oq-UdyjjrhoT*i+l(DU8wxQ zbXkmFRP6t{;!+*!QrVxMiwPW~|7Xdn+$nDHtK!E(^ESn9`g?KlQc;xM%3e|gN0zIJ zjqF?=CLQ8NEfq>P7H^x)*FE8!%F582ks;{kr7@A+1gM*Wyj-0IwFG6tyxc|5&^rUjAhD|H zUlP6-3gItG(f?9b;BDE1_odPOQUCv-$3JP^pM=z?{8F#c`(G*^mMyqlar-TL#Eai9 zCVy}-sYr`A^SAP-SW!yBaZ(GPDPAdFR({|)*_Y4sO*$&;-?3~f)OJ(6v4*0KVfr4= z$u8U{oAX}Lp zX1Q#6d$DfuOulk{p(+S25EJ-9Ea(!cfoCfwIw+Z!bWCnnE!3;Ey=xt73)Np_ju6|k zLZ+4aPQq>IszUsQ9Yzlf{+|e+`GT%44&1?hox2aZcL)s4)yIJwy5^UWvN-x#>(OBJ zTQ3Oc=Wokhg}!+|J{qntIq&j)@UFMww-TW}5#4@BLsyVSTN z<`|)$x)biSNzcup!auYAR##`er=y9Q8^4NX?zK}j?@7w;Gh^=|`Tgm_{}j?qs_{KRsGmYKrkT;=grD%+J`Y2UYG4L&V$#Sgi%f@etYpIEFa>>nt8f2)|p zAB5k(idS^d5#|c5dzJf$gKRIof0J@2=?;hL)f)2bnee@oY6Pe0y&o(8aIhH4M195= zvR3Wn^#^E+S7oEFSG;hhn8)$@Em!IInZDaN?KMaFihkuQ#qPz&`F8oM*;>*D=c#(= zF0rDs)M?-Z)d$Q>{uci{9vR=GjzfQxBDl3!K!06}Hc=~83U;h)FqHwlgmKsSp$F1^ zoI2m&_stf#{)_|jcC&eM2xv1_e#4daNU`^K#2-dW@c*pkIIL$eJ7C;=^ANBkf1{w( zaNQi?F$TEa*aO=H+Xi1pw&FGTZ?8w}L9qEKPgeixH9nq~N_Sl%eiUf#tv$R_oS2_7 zM){~SRN1?OdUR|Tzo0zd?i$%wi0eM0`FIo4%hS=>OWBe62qCYVa5_gGc4?vJb|L;0 zMdI5Fof|8D-%qyTXyNl(Mfx8LyGi+x)c0G9OQgr$qx{_aV&U)U@iV>GL7sP*82AE3 z4TmaUaK7?`H!D|gqGE}edZ&lHc@H6Qp0*gL=;1fg^-k82?iA;LL+BhR-Z7_~uXueo zW&RHo`nOe7KTB&zmt&+ntXZxlYtmSDF58Ri4-<+vSB=3>6!q^eyU<5AVHu%+nk>&q zF@{p=kZuuVBv+26B0n8XUM_G}h zrH?iyuf+$)?c=kh20R}9L@Z#4wAp240ov(`IQz1AcHfN5T^7h2cB`%+SCRk5Dl?7R zR0=Ow+v6axLXUtt`)6dZj*;L|;^S~6j<>i?;229X-o8n{-I-jjn6Em|%=?||_aj%; z2oHa`p6*8(a)h=Oc>aKVo|`|?V>@)!CI`i=6ncD6?Ke@mzF$WjYRA^vDbx39JXId; zXJWXwt6F|wdR*E?b8Gg`2g!>Mlb1bAIBP8bposcRY3=(KyGUc-PFmgis?pg*(fVFm zd!{VIyG0_;9cjyFWC3m!2mhe>o0c#2zqRl;SV~-fp?IwDy|1!z*Qnm_!}8PeO=*Z1 ztCDAraznkdePtVt(6d(Mvx+8OsT5LV~fLOkAA3# z;TYMWOSSGY)d$?FJs&H6tIzJH&zmB9(pwQgJE3}>K4Eu#))uN6NXy4%r!FWilvTS# z`&}q5aD>>v&EhU!7t2dE7_IO9s($ffdG~zl>|RAge^Q;$xvCC2BH35HMLH&T#T&%$ zXl7JeyGUBVaN)7F@aroCdxyhg*SRt%vgQM*FRtpSTXx1k=D2OSeovPS4IZ zmd1azs&=X1`?0jK?ux1}l$ZRWw7T!<@n~rQhYJ-Oiv?_@%-+G`1Xl>}AIkzPBc2eI zpD50cr4e)xic76)r{`ZOdcRei`wGPi?-Zpffi}>LpWDi}%D5eMGs$tM&gD zRq-7sUtW_3{%bK%cHv}Y?|!cww+BUObgwqRil)(&~26|6P?U*f;-4euioW zuE}rB@5}GW?~ro%sTj=O`pgFv=|3+fvaBq@HnKGrt1|Hidj7dIjhn>&FVS+TRKp`x zW3;dA*-2ss_bM9cuNuX5r6ImAuJaqsFwg*SmrtS_vi>7!jWA#n!P>ygy@eo0o`?+hjA1l zfxrsvZ&IQSeP_-giUanJ?v2Js?_W*b_y$PPK1xyT)v9{wt9kWnX6^Hr^An2| z6j75S+esLS%SXhHj}^)f5m!D|ocKC<`^)rvd!c`K*@e@Dp4;WAztVn#m2>YdrC>QN zO9@|Z2w@9_ts`YC`YNJ+ShIK^QFY&^c{@e-M<_;ERbKtwvO~j)T6#4sr#U|#X->e^ z%GdRh!q`bH{#x0G-m(zKsBULSab(^(e@3e0N!fwfKG|N`zS#kK#&W1KlqY3pWEW(= z$j(wt^7+|QSxtsTnUxar}k2!%q}#oTA(TT;f1& zxvT!3t9(VQ?7;$As($6I%2b}4|0x@r9jh)S*C`utxZ(hMjEz=Tp{?WBYn#{JSNDLq zx&obbjp@?3`0OlWJy>h=_;9`L0X&n3D;%mk@C97^&<6wz+mZyOkyo}5j2`TV6(Wx= zzhm#uzO4PGU}4Go9=6r>YXri%Hoh()!snH*J6DvxGt`3Fs(U1~*K5X+vjXV-C{1Mj zddbIwe)pwDaiaQ!Y9IP^H>&n*@92?ehPrI8A3qb1(AYgux$Qfp_idDZmR^$`m9HVz zzHSvYZ?DL@P5Gw$M)d?cOXJ^8+TWU*?fY3dxM51e zG|lnr+VF`iz%Eq`e?{4#8G#)eeq3Hz+>w8w%v`JNwe&H~GQ2&#CA~FWsH&s~wcMZH zmEMuwrnPtK?~R)6b65IdIyl=SyCqBViQ)%Ws*Z57s)yb$n&j746_@x_-}Dx#47{>&*3aB;eSN>u#G6th*Ti3IL1qyhgw6fzixy0^&I? zNAY5Y$Wa(+9$Usf>uhUSyW}D7oA8UnHR4)e>3xk@8!UhoA3w65EA3c-+8?eiEWmZ( zUhh}|ug{EBtNzaS)6I|WwA=~H_n8}_YL)%fgMUu#wb~x))Hh8L?8(Y&KazA!&rRpZ zQ+}MEubesh+Iot8zm_I`nJ6|<_ChvK zHNG1ugSeL}3H!?etky6_Gk$+B*8iAl_WCs}CG?+O9G_p1CE0nJ-M^`N2d%FTKiw~W9yd(aQT5)ObhiG_(z2fB__zZ>*KDr7!vk5zeEapDIc)TpuVfwW@sy29KMH$Na>Hm$_I*W#rS-!>;TmY zqXe9$yxNe6w z`v%`$pZSRu@i<~Ec%&HNj26cb9!=N?Mi!&SV~0=UGg&Us8G2GP$DdwQ)TjCd%bMS0mWYV zLD?heuG(j4x}ugLns?k^|A(lT*r4ipzqC)|Gv?4(dM-;Yp2B>6!o7V&ws7D^sSnHl0KW=pZ`=k+qTmB2A1zBzCS@;aCeRT zja8LDM83RMv{eK>NmaOWm66{?Uh?Ofhxep-`}@-JUQ`Xw4T=t?Yc|i0`Cr8F*O#~d zG`&Zt`<}e=bYXr)VY0Jk-gnYt*J`1^XBVyQmySqhrhALY_f_P+lJvVlV&s1+){z2n zl4^?El^3WYcuKxgworb5RE2gB-!JW@z558~y@mR&I#!qJ6WVJw-|~9iRhEGD-DD+( zt2fw&>3->%vI1YHld>NvCiqh}EZ;|w$w&Ee`i*PI4xBD-bBNGBUGtIJX=Y-x*#6pz z1lE*A*g-1C6Uqr}sw~7pDG?tQpXINqr@+|setG}XG*9SK{oPER#J(TDU7J^XMt##p z$>ZBwQxQZ)Fk}Px>)F2kYu|006F0#AedWmrdd|0B+sE5i_->+%CXXB=y>1Nx?!#Y? zyZT(Se=RDOluzecIdd0uKP+?b<9^ONTqQ5z3I@w<*5-LXSO_e+nLoZiRQrT`-g0j$ zs>4oa`w{1FKzIu2%P&n--WVTly-*)Q5)2YHe=(jDvUw0LXC#pl>+3FTHK07Y^y&{5p z^DaVQQktc@j89XO-qF1>}F*F~MZJWL+|9`eDz!mBpvPaS(IVJv5_ZWCm7GShc54Nf5 zb67$^E=_{aaGM0?c33PS-`n-0c_7}w(_`fjfs27H%fB~_qq37c;Wx_ zs9I68PY;e>i*{4C|EhSU|FV2+k!6Ix=CDN>-4DfCUN!I*$L|0b4)ff`$B5L zcJlo2hwc@x2mk$r{(fTrL$rp^z|&((Y*)a(twB3|YJ1s$j(Vqywt#O;k#4Z3dKTT6 z{w*CNn{}nwz-sDR^lbiB-a)evdlg;9cv^`A3@%0$V~SN2*X$wv9B)urfbp^baDUeV5&`(Cd0sYFfgFyn zYOwQxDb`~G*Z@{Ptf9WZDqvv#SOzbQA8*NP_Nu>T3}FlE-11+Cj3wcd!xgAsxqx!k zu>9NW#+72UklFM6U5^j0HWmWpvv_tNwdK^AGq0CyUz7eavy2MAzyOA5uKB^bSML6` zZn_`VXw7E7M5FY9WNFQG-9FnYpDlHJBeCoe(!#G22VPhHZl*l_0?oo%P5yr+b>eLn z3qC}u-$JPZXDM2qFFXt^zE+O?5LL;4mR*tUoUN4oUW(rS^7&)sk$YKN!19Z10hkSZpqFBWap_$320u}~!A}-zUm(xjS+jDN(^0xr_$T&<_xG#p zKzAJl#t+}e*1#(qYb>ulmeZavkL9YRjUL+IXy-Bg3r>%Do;@4Q}gfV zzsjFh=aH{v^_G$a=vwqF28jpE6(3qxS%H0|aJH33dX+f9`lV(b=GV#Up#(5%>K1hz zJ}w!S{3=f3ja3)8t1>X24e0sSpr30-#+ErkTtTY>WOPC%z*x8H%XK$q!LE^OO~F`Z zjM-OU9Z(!?PdvIjo=_Zkm*bjMSVdyLB>{*3n%`)BCRkuRJ*?l=yXJgB{k1KyE=299 zM+RMbeNR4LJ-CDGNnri%J4Yu^@_a=7%p7N4X}BLfzJIFF|8BIOdV1Uzk5{h$5_R)< zI9XmE_3-SVd?!`JZ>KE(Xw}pGN|k&wg!KU$?IUFaHc$+(xANgXmfm-=@&H$=&&Ki6 z{{|NyDr)|*x^RD;U9Z`)}o5qV7YmUb>h1m@Q2Iq8ShSsVn)H*_8Ys^&fd4e?9*s|65*D zSAq^w{kw}9^pj28Qge?#FJ`Dx@ibKvzE=E2dCjMEtUJX5exrE;cSv0sm0T1@@jA78 zbrM z{xCm#5bhq~PM(d6d_R#t9c6q^ZthJ7^M613L2W>MPdroEzUwqTA5J=P4~^{C`LRV` zW&1W#CEg#D$2&+qf0)L3Dc(C+KK=(%!>^Faca41hPn6SJM_eE-9@U)OsY3q3?4WF- zdhb7$p09bbn~3ob6*dC{2gw~Pw1agcA07_=@xR0Yo#lg3>xt1F3oNhoSO%6(()Nt> zmGrlBwP(jlEd>4ef7Jedl^y6_?T`M)9fJb$1OBl%SdV3N522;CETuaPagU*8s-=zg z?OWNJS+ZbfNVEJ>S%SlqjcA|G%@0-&(S^Dz!JGL9>PGf^eTNlHn5}cvRfljJS zJVh$y@@3EBFWGz2Iv$tzzg_I=E-8Xzl1t(*YIAG1s4jR!rN`jwxpwpm^};+%Gd$1Q z_I=l3fwlu4MMf^Z-5x)9ar1$IV|#x_8%)A@H%&s%>NDwmeix# z=li-D?R5m(x`(KqtK}v1e+qY(0{JZ1a;{Xc74GHbJ5S>C8!PWm?7ukri3ui02Pp18 zpte%{WIS8hzFRadpBDPBOfSf8%C9a~sXBJFDqj}!KVAr*BhTNUjy$cUgzYc2>w0AZ zexaQI+VXtwt9oYteARrJ{6W>(O;+c;XO*`*MA7;hmAc?>?l`Sw6uwCk?xQqy=*|fvF=TBxvap0 z;sX!mPv!6AODh`KNeajfnwzkWx|&|1tjWlt$UhhVc}YD}?p6=M`(yz|CTGPT=?;n4 ztM}(9@ieS?xbp({38NmHs~ofd^8l{1J-yLy>u;2r8!#GzeQ-o?Rv%&mV?TI*yhcrdAdI_ON@#>YsRkhhaa+V zNAAJeihEXD@uO!H{GS?Ma{_u!Oi?xZ%h4X{;`@BOh32g>E}u)ft1|9_Y+-&|v4v*F z&eS~o+m**ZMv?!<>d`+?s#kmUN{+|qfmyv59hYWT~?Sg<9Fn5kBp5V?+3d3FG4T80SzD9!QKAw%^igA z!NPxkZ4E*@XusZ-MF9QmiMrUQT6$^kPSw8t4%Qg0JlGbPRS*p{RQLz^uz_Xt*Op;9 z?T@<9Bz15z-B0NH^wV@?_B~ZE<@wC~d->1vOJxJE%kNY+q@D7jyGj!|Px;UF%geM3 zEk_i~;z)r$(=R zeZa8UqdiC67r^krd_XX|VbGVrd6_4g)sx043RrQ{r zD%tN#|Nomj-{z{fe_FLXYbvw%X8If5-(zdl)Qk{PoN>3pXVjyy;c1O1qHKF$@C!17 z22b9e+8s1}viQBUgj_)4tO5~4N7;v7+QZoIC(qxz+7k=Fz9GX{ zR~M`?Iu8(Z$o4`!aRA@5Rb>H|)nC3b`#DR{Ri81os!X~deNM9>x6ZE1V%0S5nID^< zsfgg#{B89kTwNA(7iCL7RK4^Cno-a}QNSnaAUHaGK?(r(A-z*GgxV%M$JeVW_-E<` z&K-VyO{vR3p(V~k1qhvl-3uuAZ+ruIt*bv~fnHZ<@6H_ubty1SdzlbBvL}1k*92d} zCxuv)EtX{5{?Gh&IKN{oEI|FaucWQJ<9%Nz&`;eie%sZ$%+jT^EZPwHJCpz{1RjDq zpB06B`uL2h@J|m(>-~%xb3H@9OlT?6LfrVsFi; zn=i%xJYjtUWxUrF)<;PD8z-*6o3eWcsOn|e;+A}?eA)blY?6*aB6ke0X8=@=%x4z4HD8b)10}cFE&=0mnVG{nGN$OUa{y z_Fj5T-hdpwV+Qcvx3V4N8HfVdyQ@A08^hv!A1na$yAHtl1?K~ZCSWPn1hEBZ66Of( zOT|DRWgVueuJ{;b3EN~_W;bOG;sN_9OL&py7QUG;TWNvo%T~TstX>{3H83vA;tjE* zA?Y*n{@nNU26YYmRQDG>x%R301dZ4AGyms$`zmwi5bgzt1*k`Sj1$;7^M}z4i3qIh z5yyjGM}r{ROu-z0J^T)1&)5$v-#ViAc7Dm(NFHqu$Q%66pkPToO0c%R8on~tTi|6x z0cHSL@Zi(w4&|I3_u)ao54Ahih!_`vH5&W$ks2-k&s{v4Dg^-M?@Ax;JUL$R=2g*Z zwXbTo#B-!cKcasPYXjEQrp61OYbtSw;^9X*I|26NWGj@V{ zAI#K@0_Kqud3b&y-7>f{6Znd3XW ziWlGj#{WusJzlZqFQNgO<#RziT{-E;s{2~~DcL98JUc&sqBysFMv?yqs%Y(}Dp!`y z!aG^NA=3T(=lL@9o!AyH93slrRc+UPjD(sS4-B&!}i%XF1{C88*B= z_yT3b>_%O%0-c0L>U12p_md3(|G|e71Ay-?IwqgeUihPa2)_>gyH{2s;2#TM1(9fi z%Ky6RX9W=7&*wQSK1=cXU1Ug~1aC7fPG z0_R8%pu<3KWk$}B61cu%fc?~2@WK52>`8IUvy$K^`So{?H2yTYxWMOOP5WhZt-2D4;s%eZ1=^-^@SQ0k&og1`p&t zoKvzw`QJyvl6VAT-sct@fOU3kWz7}*v-q9fy6!0VuG&TQbL9^BcVtNZ&pl+V7&Qsm zlcnmdqQ4_5y$@gCtfQDc;75kYBCM%dKlj8rlDt$LrN3RW(@!L`N z*F9Aks}tn$BWeAK@_lWU*B&Sf&_Q>^cr5>EzDE90cC0x6Tj?dL=$Wm&RxjaZIbog5 znI`-Qo#y%h|9E?|XftVZaN=n&WKZlopR4kF2(8S~A&SR?lgYE5hZ4|jk)=V8>!u^X zFWTxawSTDn`2Vm^AH9N2I1AwVKR(mgt>+^{EWo$G4mc`sWWcud%%S)8_Iz9Z_mSSQ zre+b{p}fF;nzuYyodJ*6Jqm8gpI1h(pK2w~Q}=_7tN9Ao73bu8WhbPy^daS2?o~eU zn54UA1>96yu6CTdE^?n`JU{HtaUWa&{}2Bs8))y34@WKVdaxYu5BdYj?N8XUZa-`x z;Fq=lW|~1&@EG*S43Q`{z(@By(j^hU|GnRAYzHo8j0ZMmM!*(mGH^O~d9L&Kl@_5m z#Pa>C@qq0oJ|sTCuTQG__)S#w-&{osD^=Emj6W8DuAWr-9~6BQomSgO9X*d%-2asD z|A%Bfb?+aMudSXwKT=2BcICy2^FjNUs% zUpF0@DBbEjKHvDq;}bPlIpipQPAvfFC-Ubr_@q!1Xf&G>7}u;}apeHt(+Z{c;9as3 z{OuvNV!ZMKr>5^|uJo;%ExohuPIRj>f-mNO&bum-I$r&SW@~ofg7V~I=X~{SC-n_} zKoP*bstMRH`D?sdd_?W-==-{k=zc^1MnBfRUu6$adhqa`C*(-q7Qk$u%x|yCLYTMP zQeYSG5by*nL$DaU8y1*_HG|-pum+4sa|g!~9Lan4YKa0q|F77CU{mXPn#C=ESy;&T zaSu*>zdLi_y@P6J6oX?%0!k6sr-T0}jhcz_{M=Q3g7EKq#}F;BKX;PgC_@w{Wi^7py!wDr00pQ@_o6VnFy;@$mu z9M71?F7OSkMs%$r12Y5L1DJu)kG&uc!CE!yUV#Tn3z(q0Aa#)iI5)pRTHqs61Hab2 z(6-aufZ3WGIJMlWn2@iKEzn(t@2hlxUrPnJFK!#JU%Nlrwo(E5RdK(wwcy`6AUpsh z8_S><{5vZU*nn}3zs9>8{rwh=7_)fx4z-3@iogswUf9p|K#o`gQ{}IZNtXG)GX9tB zZLy-{_|34K@pJ8l*}n15HpFQ#fBN!p7cRO%Ter982g%{Sa^#5UKa&`X*Yk&BE z@Q!leieG8~Mym77b@1Xl7qj{7!Z4?`c-wOB%C}D8qk{>iYhYU8X$u3hJEQ)=9Kq;6F{vPjdn`D3P_xL94X=?%cL$m<;`5yNA93O^Z zrIOD@3mC6Hspn~i;uhI`SvS>39IHs+qWm(cfu-g~b}7$LO<)%ZC6B0M@L**E?ovh2 zEt+}NG1*160Ih02Rj=?SVIHr~wI>q50`#lUk6l0y1pVgY@B!o2{6ApV=mq-$;poKJ z5ME;o;E;|f%mKW=-|1CtLF8b@;X33H7dTE>vi%kG+UKND9(ROch`MJ6)bP%Pl&yqm~WJK&7a5)k>2-S zdQrMlIzeNfYI#@hFf)I!7P@VKxUNEFE5-k)080y#@O>hCdsT1);?U4|4vz=9)cczK za}-eLdAe|Pu!Zl&CV*AY$Y(60eL-cXD)Qhc)c?WriAus^{MS_h+bO>rJbO?CY?Jtg zMm0I|`9PKR`#9Myot*8OA5%EXJ^#V}zHZJ+vB7FRGhUiUxPySztt7QMYVCf_DISa%YATK4!M)dI}d{Q_FW zo2Wn7F0$yxI#~dZ04#v50KVD&pXx9p(`qo>0L&64`gyPfydUbtf~_#BL%z|+aaM^( z&=1oj26Y4ibFfw5sE#z2Ty+0OzdXcB{Pkiz#W8?$vY`$G^wWVC^i!$tsGS&|vmdT1 zh~|#b+%0xxasElN0ib{QqJ5m{V|Kr1{(*loh~uK2)!*l^+T1u-SL%hz_&t)mDcx_W ztY5xP(M!y~b$OQVr}ddScD54!p6nI&udjy-xPM^%7_L;Z z6(ABK3WALc)6C%$(&y8D>Oy{tctF2=R(_ax)y}%lz^Uc^x}RtEb>?1MzW;1h_kFAg^=2*isoUTapE;fen~n@v+f7HpAM?!qm*>3VU2_Jk z3A~_vb$q@741$^h^8e)d@yFoT-^`zfzc-T2=51-n3WN${vjMXL_BKc0xAE=$w{DX- zo-2&0Ps0DR3{(^}M32TlibfZ$nWhdRXQ#iD4cJz99e5`jt3GHQR1Gjn{mk#y-O1J~ zdgRMwbJ9MI>e$L!|L3}MEt-V(F~a^>J#z0J?$(Qk=RbReE6cHn5|{-vL3;8P z(WRjOixRX%5KhYS8uPT@@iH2zACXIB?ZLHC_EGeL$`^=M0I=;TLW79f<#74^$Vn)88)oT&w?%%z17P&bPEBz}h&H$3Eb(Q3gOW zTk!c|OMe?)hqeCJczI>M|FqAeUd-NGvbqKAFDURYPzn0dxL1>zn^ex zu8z_d{I`8Xz@+i*cme-zBzrapSz%BeYy*K0tM^byTV>xq?LgoMkUy9W28EjDPHHxLe0)VISP1_o4M+ zmHBU-*nWbm6mo;>O7&l{_GazMcwNo&dt9UJN!`z5k91bHbAE`r`i|AzyJi>f$nW2z zdX;N6e`VWzL>}e0XtXYy{YLZMX9y>r7YF*`|5pFt|HRPX--~N?K%H}Z=E~;sM!VTK zTLcS$U&Z4Fk8Q-k1+WI}g~t#02d$ljeDII|NBv(;?_xiUV;>8z47T|cj_jO*d53L5 zs0w61>jVB|GZb?K+k?Oe%u?t`jIRgpp*q>N4>r+XpJwD!69F&54i46g$X(M5b-$6- zHBV@`Vywx!@6mj5fS>Em=)cQcN%ELx1Z+`zB-%+VZ(xOR#)L|;By1I`t|1n^A6`}ljT z4?KWevi%JlBQO%a&63CR|Isfd(+AeUcc`1d4mk3+3gB*TTqn-4BRAW3&UT%baejTy z$q9xTePG)WzwL3T2{O;KeTNwgQ+D8cs`fprQvFYr>QChVb}}w~D}6(e|J%B^UN_w} zYohMS@qj8+ZdHzI<9sRA_iie^|6$E)+d#Z@VC8@Dv~?R0X7S;7LzOOe09+gYpedjc zYXF{DXI~7nU)=xO=duTjQHK?A<{b?C)9K6ELug`VE?qi_GniSx_pnX?kKmhNV_e%q z=Fzb`-rsh}pJY3QMF^1x48YvQwS?g}`CEA_>=*XVbCb{qLIl9?r#6|YCtFL-6WLAo zGZ`utu)FR%)U}M<<<=UE}N27vR)t zMgXINu>jY`|Ko2#D+;`$N9X2Tp$F!jr}HcxkF&rHtOSDnenK~6#_FL}L|YEq0?_X< zg-`KV99sDm*O#)^8WmQ6+`vD=!;-cR4{wfd>+EW6X8>L4M=sFJpYt5fG8W!f!%U8I zZ{~%H&prFXe1PEhK|kJqkhb*F|NoG8-f@#u)w=FfRV|_j0)l`z?G5kvt&Fk=EU=KDVVuuhNn{%yiv{l5OXtE+bH zs^0Hf?+SbEe8wU$hB&u(T<`kcS^b5B;qc;QnS43?^7i43RQJ20`F#7CME&NEzni*# zbCc`)llc6u3iE$tdu9Cne@Rx*d8vLoJLrecGJ-)9%+{Q~nkBpP|KbgFgIu=43n-LB z%dNqk--A|B4`S7=^;sQGd*UBSfu@H`^WNMeJ{bvM9x=!+T@McdiIp!vZ}`M9T$Rs- zd0OV)+>{e|6_`szJ8Z}Vw#izlmju3&?l@uX^_J-8=I16v!`-5wHnl0)Om9_Q*rgL^CrA(L?AT zXO@(WO3(h&u>Sww@6^kW_LoT^2aNymi@*)!2V`%7e|`th&c^R5o8wm?%g?pC$p}KH zR~0{aSovf5rP$WVC?VGGky~V@->YJqPJH_D?faWOo8P4R?-|imn@kWuwjKBfGg$Tbw(#ybiwBQ9xc3j7 zfgx~abX;8Ut=bm+ia_yi9-Rm+{DU@S0$7K$i+Zkz4#)p*_8~oyZ4*T_tI%kK+@bhB zYy;^)JN^gHS|PNjQ z66vw(n|ju<0#;X@*q8W_s14}2f&(A{7;EzXdezemzU2=h9W7q+Mcm6d*;~v~`$Nl; z^&{~;G5U-&)2reW|34!BllFk}%IM*}zrmD^q4%ef0BJmx!$@0xQ}C}0Sa*VEct6jZ z-w4g`Zw3Cz^Mf-eLGaUTG(kV}1~%(0%uK(B^>6IICl!7^65fA9wEr)&j_-!ej;ZTC zGgZB3Wj&AcQqN;?s(SsZy{w(nekLpO{UW)m$EVWehLdrv-wbT2L&@i1Lr1bPA5KnP z-g=M28_&2`dny%(zJXDWSG)6Bt*lf)0+b&>>~jr{;1exY9`&LtX2 z)iBWL)s!Z*Ao`UkSP9^tE7}KTkQ}Gx5`%1z&Ue}sW#MoI`Hq~yR*XhepYkK&wU1w6M|+%BCJgs}mxPi=tfyZ>qzH&016(A~p3!qr|m++g^e!B_ih z_TQEW&XyCbX|b!H$pL)qq*Cw758@pwQ_X_r0rmC2X6;lhDeMTP2z6kw=kW%DVxv%K z9ktB{lkw%TumQ%Hab>bpj7+PyIEL~2pM>|ny;q+7-{POoMELkMkOjzQH)OW9KYH6I zTlL=LUc_vi2_X96V9IKBKl&f$j~AG{PI3o{1XA~NW+DW~_ipK38q0rn^2%3C!Yp? zAQ+8FoXZ)pM)~#n@h!)c9c~mKe1k_MiANW^FNpxg#93M4$`>UJ_($4s{jx%cuE9x= z3q;#x88UYG1HIJt=Mx)!2JIe;4B{KLf5|uG3HS&5<;&nZWSA1eIwR~u;wV9Q68J~7 z`-zd@pTxI_w{XKrP2!DGA8Cupss($F{%f>S^NrM4U)J3M@dBHN$D1Qi-ey*b-*_S^rdkS=n}-4epg&rx6?ecV@wce>Px++m z1>NfX()G$=Wih`8ENtre|wDIG{A5DGA9aHC{?LOHa-rk#9UVl!E z>e!%v<7iQJA9@btsDVr0^Qo|he+!gp=Ytbajy5iy%pNeuUfDcIl?||;b3_>b;nl^Z zMLcaOgJ@@}|HVI2h&e`hBJFe89QIOw1Nxi0D6512UY9GEbdc8|V`M0tWq)kTXMtoR z#~4|{etZ+~5v!h6oin`t#2C^0)Fj_Hf9U@?kpSDov-+XYk(n7V>R#FXr8{l>g=7S; zIsQYUt{=;hKZyjmHPrzR9)4~x&MG0FOFrCEVJ25NC0`MZJ=l9kG3biKO=~GA^uY^ zKfTYgzDm~m-(Loqpp91E7iFeVTeLkse?7a(16WpNU73F&^M`Ti^`iE{aF_Fpe zGHf#bwoV<1hxhO7e`fIH*!{O9vy(UluO{v^FFnPu=(}*5%I(Nx9Wj5ka>ZiA33mj@IN;aU_q*E; z%rEJELhFEjm?l-EjU{2p&z)qGZ7~@;#+eyo_?_lP;%uKB^EvshB2wA`$PoNYC6C|$ z>Y<7{{HM(e674WBkY2XelAIr3Ohr_&-`LEYlK;C$W(V^(;<|R8taC8n{Kx>Mfjm$q zsDD=6V*%g;I5d9$7x$l@HGMudyl42Wp#T2ifyqDHEHVFO$9s-vj6a{K|8A-4`RMMp z`28N;zAkk z>i(4Zm!FCa@WkKy%i^Md}Jvn|XKn?E@27?oHG9Lu~C zatP5~*!|`W&>N-ER5w2K-@(6Xp1<1O=l-|;7iBPr2Kzoaa6i@lvMKgy>luwPr-vu6 zY}R`-_4+Bd%?Bducc_q@)#dUaSp0(kz3=+`VaCh=a&{p6 zSuBb)5YD+}C4gwOXn6#S8*oj|Q~z7_r~D209I9pzx|*1qGmSW#{2aY=`UCXXO)Y&| zmVbbCSdDwQT1kO=N1xr4f})>068&2I73-(csX2ehEMxvg5qu?2a>Foy*+Kv8tOayJ zyfJTSo)?*XL$}fRIgtQwNCCy)XElXe^X(541-NPW!BhtNBJ+Uo8?OH#{*eIUA2dAlQD1kc-;dv*=JntUQ0`h~MLvccMrVt8ye~XE zwvqry1vmZrGxE#fu~F+Ick$Z563n^uH=X_#{I>IZXZ3#H`&|FSgR^2o{vi1O!EnW_ zlY2q)y7sl*%Hzk5Z_LUxyQh}#W4nI$`B?tnOjV!TvSQD!8I>EyUKKIuK%!`%M3xQ8 zz}uIAvg;efUV7$c+RjD)bN#`$FUrV*B?6?i6rJY z58RPs!!?WsAZ@@XIvSe;y{`o0y;i)QKJI6VZ`zcP$UyWF_&xnB--Y;}W)*W)av`j1 zYNj7mh|P;A^y`a+F_=vN{x^*Tn3ccH69;%nqA^QnuJy~h-z698;_(|3mASUNs(nuL zrraM402^S#;rWA)_m}Ixws%1AXABt4JL5sL!TRN$$OAL^%;n=V<52F;cmvyx7yQIT ziqRX6D(p!u1lawYpnkXHkM5f|@}A)yyCoB8hsicS62J%nQe@M}j&&z?sCEa})b~~R zcxeB(eh-ED=FV~m17ygaB7WR<`*!DySoP&wx$1A7@$Ts}F z{7s$Nf#2r9-nFUlcUV^Q{rK>w!+V4NUgn={-0aZq)&08bqWdrDj!4G;mfb4d_u5O^ z2bw1}-_IPMJ)@O2&iGtA=n#D(610O|FlQA{X5FjT(a6*4ep&#YHTCt$6u>gfLETGx zYJOhDzm|jkdcNhldi~8YLaHERXh-CsZ;?poU$X(R2juQr?Zy7Zzbszc1%$hmhL?H3 z0630~ciID>pEjK7giXYKGxN|4KT(f-G%umnB9KS%iX^}m*f7s{=42xlaCmA3zOs2% zyIa;yZQyPr-s|%lg9@{EO3or zn^A`bLjTME88vH6MqK#;towo1Ft%?D&wMiYyjexYp7lnFViPO~?kgXCR{BFkSiZ=IHuAYU^Ln*-khN6zFbV_jg7H_5PgPC;vM${&iTN$g8kK|YvUbJxsm;%m6SO$`$oVUbZgipC@)(AB*O)?0YG+PU(OHa!MTVR`+kO{xX~}O_^^)fdm8Hl|42YKBpDU} z{z~p=Ne&_hSbq`&*fbti{$|G8^8C?yO_N$H&rBS!9dA2+Ze|2+HlEr2zWH7<1%40) zcXMWK?K^z`;K%*VvQFTkVd69MJ7a<41wsN${Z8P$GWoUt_56|PgFZpOqc6zf+d3Pw z$I;);|6`;&3gMM{0C!I$X>mBf5xrxxYRmzXPkSUIabDV>5(U-fW~N1F6)Oc+4+@G2 zKeQ!)k{8X76xQ}}pB@4B5a;LVBOiIbg@0IplE82Mg=$U*c7oCYDWPwscmwEXE3d46 z9dyDL`Hk-Ay|Mq2%=NoD$iIJhU!s0*8NI6cMEk*1owzC4e(PnMpA~#p>^{=YYG0n1 z--}bjpIkq+l`I+5>QC1uW}eM-&JW+nt3im!5nXcTskJTE_>8OoBWO}Q1mYi@$qSGv z;F52Z4q{o|i$%{lT#f(5v*{PB0aA?!F2IIVD6b@Km1Uwm;8m0W^p@*Qajw2E=|#`{ zPF_;pMb;eQd644^^Qg!Mcc|`HLh|Z!LV8dqj2Pgi**4BbH1Lqo7e^O2$F^&BZ|LsK zFLXevgT8G1xS|ADOB zHzT<|Yh*3Il{3P2Z{ORj+`J|$S8NazxJ}tJY_}?DmBwY2O)6aSO>qGDJ~G13UJ&Wa!~0*)>F zqI~yC0IdQ0qYNtcP|RQM;c?s((!!jE)zT&rKjuNB?~xNF$)f7)j~>l^?=>KzTlzUgnPv zKn@@uz$b(JMXpk@6_l6%&kXEh1v4JBoRHdVtmfss3cP*A^7RgAJ0Ka@kOA-max!-e z_kUE@^|~%qe#rLwLDu!zc69IPSIPMMMLd7+%}RcMX;;cBesj8?C+2@!vrY5Stkb<| za0q7=!Dx2wOA!B}4V3vO-zd4@ z8M1fqkHld9537y9N2mnAYD4$}i3?ztTN|uo0RNe(Tx=XBjs&1(aSwWFx$w`EpzrL{ zW2sF*54DP@a_Xuh$QC(+%!Di??0l}_^Wl25r}w~2pbaAlkOdpZ>e@XSm)kYVws*D1 zcb9iJbu;1zd~;@IEy{Y~KhONjA18m~#^KwCvy%yMZU5o@7x(s#7tod6W$vp#h<`>R z7C0kKOI++D5sdy}C$dW14zcPFk0d#+cTD8KPSN5RVXX8*L6&jQ?5x0{ok6 zqm%$m@@r9FYyj;~yYK?#g6tkmEms!dG6vp*H8njtx6ab52vTAH%LRSd{P^9eMp8C7 z5=G0LJHkhRmS!Ff`N4W3@Wd7Vl~tmfcFU8&y@7x1c&=<8%ag$!!aJ-vEc+?#4?Cg? z2$)yrn~g||RvaP|fZ9RW0`Pz>B7wg)dRB8t`^fI>?k(Lt-GcEeGaq0y{&{&f{pL^^(>XHp0{=2>S678vo-Nn;pa+BDKU~ z=EOVup5FfbO$MVO8NatB>*tTdCyh334s1{B9y?xZ{JHM9c>OL+<*5(G`hQmY?kv;u z{M4sgGb0SNXj?O8*|1g3S%JaAWYyY6wXJ(sxpu{H^>S-7i04AJQlRj!CjhS*oR)p0nEyM~-ADjEi&zQR=w{O6s+UOzKumN_DOxSQTRvDpq5n&GasyJJz z;HWj8&FJM?kvS<&sj(SJv3z*a2!!WUfK8+K);%vI3Mu<|Kowd_L`I5^ToXtQ|0RugVVF3)a}t2 zKN!v(eP{I3=JCld-y^x@-|jxy-5w9q3gb`2^S?^_gy!v|-7*rvn&_#yIiO8lMO7O; z*K1`ogAjN$`~a=S#<*5L;xA{|fjZhUua9=Y5z>Ra8gO4eH_qh~ zXV9iN1mQ&9(7<>Bh_-W_TG|%CwY5QI08|S^0#ubzB~xMB9&!Il8n0^lJ1+Eh>zyYIcN2eu1+jVDUKEPFp(;hZ{ z)p)z{F5R;2ud=%EPs8TEI(*e|rQy+om-m0%yC7b`*%=4rZ$pbPu1fQORTw`T5}xumh%x0fRj-hL*&Ng~t}&i3{?*7O<>9E0@s^_89GqZt!1i z(z1vyOp6R9fL?Xje&Js&ES^i>+lJcP`aH(`)&0~2uuWdYqW@tEFdIAqummCmA{?1T zpE=HZw|B}X_LRJ#J?(q2j&85)CTk-6Z8QOm4_iVSaD08LXJ*|%q$>O$AAtG6^RkZe z!<)OB4<{G!>D~E>1vFVJ{F3o~-5u?lnyb=>A4LLOm#QG&8LT=up#QNj_XQaX+W*A; zOCKWv;F9Q@!oMR3e-g9(wutYZtUs)H;&%%p0rrVce_p;vR!r-PF^2IZ6y6!-TDfvx z->;ghVFzemfd6Uk8ax0E`OuO8Ae{(@_*eU*#Vh{;CXf6@Z-Z$W6fDYLrx*ZIKzSgK z@_6HbTKxQi`1;MYyh4 zNgzgl7l@eRUyEHoKJU2}8%LP+Yjv<<*5&tCejruEr*eU7i$CZ8ORh-C64xU%O=uk77=V~RL4V@JJXB-vR##_U~N(%E8jqxyU-G=tzoH)$i9oSjyc|ShZ{VvdpCMNPCtwk7t^JO) zK>NZUcvW67=ZNSZv3F~L7XRS-au;|>>23N!yOkFJI2GC-c?wq&{k(3P`G9{NUEe&veR#Yx`zAyC2i^Wz zjeWiGw%y8Y+Z;6NkM7NHd&O|m;RS;a^q21cS9JDf(YkA8JYhwGQT+c%0P}blUHY4` z(aj^Hf;_t4ykF2tp5M-CYhm`0Q-hcHA zMQc73BmkP8=Z%k_S0n)JYsLh}a)13UQw9c$Dya(EYlAt-vfvADB{{%7&rhw~v0)%d4jliy74&)oKuRQ5eGjMHcy2y+~lEw4^SucM>j_ecP&S{VR* z8_bFvq($)tZR#l=jiAf@)!%ybt=Wy;E-FA#SrVWSd!2Ybnwn3}@{uv1dG-ELiCp|E zvE<>EePhf56v{2Yt4zXrL9AP>oDi=_9yXbV@8uozk-hblJPWC!1OeOJb6GI5A3o6| zZ62kf9+E=53=0W>G*~Oyz(JJ2HY+P#%4DQ*l4s8pqKz-QZF)oW7dmz{RnFK5>F<|KQH5Ie#R62 zgvv)(XEDmbKl)xzmp*SSdUJe?^5KEh<5+$G+9ocrVfu$3P;bG%w*)|k7ydy#+l+~v z^$8>Gu=%HcKe-gga3;(jDS?DAGE-V#t|klMTiBZTNB_H)2fq?4{%)V&YHoPjrjg?Z z^{(vA?fA?}H^7rk`_WSX0%~Y6uZR-5o+8vcuCa)TQb9{T4|ChTzw(GZNG&g4r z-*TdX4s7@vBtr`pZ=!18tw0IG^Dg9rD}BIn4g)sEmmK2P+I96ciP zV9#0g$`{(yYi~YJ&96mPk=ci3P`*D_7<^zhKXT4rB zG0sl5)~lLb+k4t=x>LLV(|xzwA*%$=9v|K9*lre&&1$3m=+DFNXI}T3!xILt&q~4P zWF#14T5V#B%g~Vkj5I7zGf2SZ1{pJ~8_T+JTTMog^U2BLLndsNBeYoY1BiRsZQ-BR z_2;>s4Qt!r2SYX#?;yk2>_kQ_<8=LCq~S>sEi`@c5+YFOkg-5=U@+f$o6Gs}PLj84Wl*eeV(su`E)c*ZyqK+nIG zw85BcmrOt;fOs$T!*Ri1X+Jmt_%SNSd%xj|YGB$xLX`Ib4B$C8zE5>;&`*YsmA;*S zB=aZpmaKp5f3pb1J4mAETuTfV{<*7)(_v8<$3z!XwVO8RAsZeDHYJvO(f=Zx_VC^l z2SA#Db2j$Vej#7^#}lw+Tl1+Y8;lepe`uNKzg}hpQy1|1%n0ndeYz)iukL=-?J_=L zJRGms{j~XYs)nr+*3%^#@T%c>xYOY5{`JY*)R`OnyBqwXGsqH;o_Q$*J-A%>J%}X87E2|J&ms{%yGbPe%7QgYK^GfC>Ju&8*T} zyMDK3dwlba(Yf*aIl~ur%h*#(Ga8WqXd{`iIuwluVnGa}wAS`R9ysoiAnIT+ChoB* zjPS{*!9d9aumqO}q2L3F0B%Go=fnA(OOKbIx;lI!j?Y%B5RQX?>T8RzLL&WFt|;B; zBdDftd`G`H!#yII`*RmrQ&D$}`L*d*70thWG6!}|zR&K7{BM&zSeWMTk-cYD zAMyXv`1-e(#DDRBBVbqo;vX5n%oTGDnTd|Ix-i$Am8-)5WDftX3;+f%Kc8x65b6^o zGEYTBB&yn9%U`R$Jb@Jv;Pcv(-)w60SCke{Ex#9%nKrT5=H)pq4EkaJJW(X~=HdSD z>MiUqHTd%2#MJq^HDluY!&OIbAHAY^Z~Mw_h0G^EG@Ad2@jdbSZQh>Ld^6d;i;{Cv z8dC0#Kb_I8y$`RQ;vcPAR=+G8ZAtD6`1M=Hy?Puyrmf63jBLg{n|#_&U`_lhE3~+$ z`~mzCwZ}#P{p9yjRS&+;UzRGEY~y^g>Idx=BSC73V)d?iSfnBWluLYO)5mGnkunPD zgN>nI(W8-WG8j34Ooj82D%>gWd84JN)fMsq~V=Ui|0j4UiUG{1v+l@mC?z~ z>RBCNmCV#QFu4FLWIoW&;}>*KZVzr=o2YFw`gMNkj}M=;k~9*Otu87Z(Zdx$5S(NBeWe2K;T(dTG9UbWptc-6Ur z0pM>i4rY`O763|E%bIxx+fLZ(+_a26VJjT}@8<>3E?fz6)qX2m3*;}%6P=&u3eVW7_uSsn{V(-jJyaDol{^%QS`VRqxxPPojw)sk#%Ub$N}&T&|B~?Lgh!? zpI6}C>gmv?PltPzLm(ZnqkJw}J<0*z(<`MX?JF(mEAoyUrIj-4|D4f}M$c)sZok;B znEI>-B_D9L@qy!I#|sh(d`xp}?)-bH=6qY`c&ENAoX68!Hr(f_+l>_{WXMv^zlS!Sh*d}G!4tty5O+KKsV{S$8}nE49J+09L;BdXT?Jfb#E) zc;o}$)X~NHX@QtOHvjwy@85Q!_nCJ|wMMxAmht<4v-gtzA%n*ZUpD+=){VOR49+z0(OOx$?Mz>6NaQl+xzEuC+DN$xuyap#|C{fCogb{;!EPo|{dX3SJ ze$v)OU*h*K{mm$Mq-z5(zS$hxv@Q#fQF9eG@rnjy{MYediEE<&ITHMXekyA&H9@`l zA1N>n2Ead_0sMi>p-_tj+$z4?DAToiTm?dETfl{n;7)obz zzLKGy3unQNlx5}!Dgk_gT;0|=le;T+!G4(qd01uX%!q|{apE^uHHT+T;PTx%-40nL zWHjC?zvvI!>zdC;hJP>Uzb(J|nZsKK{lOMlC2+@#BJir$>G2c9*DMkF>gJPqKf4C~ zyT%6CCHezDvMb3`1$1u4HM5DqsFp5_f=%Xb7LVDyvi{=!_zC3pNC0vW)(R#Vqxh>9 z=DK7StUcko*cQYJ{=FE0^%9xm2p?z0jVu5Uz3Zs!2|xnC28gSIYH+MP0Ncm~V}qg| z>A;`zf_I#c)P`Nm%JbXiLG%;zdqO@D^CxaIJC#`8(>tKQ&ftfGbHn{v+3y?4_`NLi z$S!X$&#K;|@rzQ~f7pGs-6yL{_nJ#H&vf%d{nn0lVqEHd(uV~S;LoB*-47Nyu4Dw? zY9UM+fF8mB7yqDvk*>X5_%E9Q9s$bmuYsT?(XUn&msHpR_pI{?zMbtu9xqw{ONRrr z`IZ@YReh7}ey>SC%}-MPfH4q=Eb~8o_S(ufdrQx(9HM*^w;-SALo2r6Rghg%Um^QA z9@!#?(xPWSD5n)AjCl>b_gNqh^mLNX?5Y9Vk6t?3p!sQYSv!dB_CUK__oDo!yN}$d6c%zC~%rnc|O z&Fe<{WuB?%N4qmN8K?TjN`tA zSJZ$fS_DBHg{<*v@(5Wn`k$G*G6r#?UvQZT2LS&>1+2Zzaa_6l6eYR5JMku>W&I_4 zY9If-FTEA^Pvp|FtcE)h)3gYeSF+(xM7q#6cfuX<9NEWlw8_SQo(^|TtJMM?&#JGu zLeAQ2^tsV9n|-oM@CsR*^{#f$Zl&=n#(R%X>9%gyX^tBGDf<7G;irZd4gWNlKR7iu zz=0F?uJw)ANsHC7Mm0Zb`Rti_|NCdY&mQ3bJ4QF7|H%e)PQc8ZGqwNG(#E*a*hK#D z{u}=T^CbbwCXoHZ1Yi%w0XCUP7GwGFL(ZRJ@jUkviM-&hGuJ zcX=}YHVF6sRCwT*huI-Vk2#U3gc{PQW@^KC=4U(F)Cd%?H}m zQm6S*-HF}$<4ZISx#9UeIR*x;A_S&0KI3hF_Y-X`#mp9vO9 zEx+wE&*zDg8NUZ*#{X{N0*fZPnaDr9lA0dq|FY4w0+0ag5&I4!v~_u%F)RMCam`4vCjJ2q9m?jJmL_<>Z0xFNp( zM~3@f(7Zl=|JBBi9RE+Mdw(^xeOE~pxnGW+8Nc7m`2Cri=ePv1yaR!1HnqOm3TeRl z*VDNzHU8DqN)1p5TlGwE0iqe%Y~lyBsefh4S_U!&ZE$i4$-;qeXj#Awi~yqRt?O^= zB9@l$m6`v~tRCm}VYkpTHa&Ot0sM>S`UdnPr)2qBG9x?%Xz;p2zr4BnqOz%zqlGf>g`;2(J)3b%~Ce?Y2-9+vIE zNP=DSc~L9?v=@Ru zN3OVe`eu!Re+Mt189C*P#~xpp=f=7yJLQhZ#X$-v0q~_7Pcaj~6?^mu=m$UoR8}uC zL9NdoqBXDwqzAda#$=e?TRsO@_M4e2zofTz|A*oJ`wTD7@Bg*bhIn9j#AvN%R%VYr z(5;@eeRhne=<@c+_Iu6F&4*HB(#qbf>$7BxzoPYMPBlAPlM$^3h5f7D!Gat?l!@ytxq*PvY$6BzgFDbRwS2(K8g@?Be+?01r{L8HMtre4|HBf3E5Y~aVgf>68 zrll$V#d&c9?o0kt{iLJNYofNw1UJOOS>0)2yO|B?v!0hr&iL0Ib+xyDYhJr2&__8HSu2_+}^ zUq2E^Rt~m1Gj7qyWHb>)-6>CS#|aDY3F4Or|I|ensYVB6{GcDSYY%{TSpc8SmV^PA zHRZ~R$bym-NFP`Bot0nfl-`}am-UYs%t#K{S2EY{&f!mnvywUf`Q}^gHCfsB`{9be zZa>(*sNJT$qFJhWcKpekK3HplTyt#z?Ry!k93IO6#H;P55<#4@SIb%%p|%t&jN`&T zcmnC5Qrs72+y@#M`!$C^`64^uJgi_aEenPbbG}E>o~Q#W%o4Enhx!&4A^x#nc;|)$ zQWkM#{GP}i@Ne7592o@ns68$=y+@@GcQ0?@7`|8Pfq(alfAOmgfK*c+a5hhmr&I`6 z>cTn5MPAY$sco`y)&P1%a)IU~58&P1x4OH#`%}g3q-1n&H$J0VoP6L@NBz-V@%_AE zxb5)0gJ1QxPJQtGGM>mTLC=8aH6j7l%sXm+8vDcZzbG47fZGNCpr1LVn`SJU^$XI$ ze$7}x0w4{P0HBVH}w3yIN7-tnSHo@07PrH701iCF=UPaFT*HUJS7 zq$ziS1yD0@x5<;+{y`f61||Bjp$lv89zQiZ341}j0NBWfDaHs zKxXhg+yEZ1b)Mmydt0Qw|ILGQg8pA-KFF_zD~&E49ot;cp4t7jyRUnGw`{8Wy}3QF zU7>w)^QF9$P**bs-A0Q3~mw4A?CGRcZd`~4v+;5$0Vi&FE5;f_NfQZ zccLDomn47@RBiz8u><7(#v-jtYYyA?LH@B>!|a%NAa~A4CMHN$@V~AEnAY+kg38<} zm^q$6R!t?c0rTHF@AYjO83gg*RfIc-mzpT(dSm@qXP}zB>{l{4Bd9Wp$s5pjEB^U~ zW<_G3ojN}+?w>T+D62yJE^GP@GggloJ*IhVyHPmeVEq29>vLOsb$exdR{N7?^UU*K z7~H!8y{r1FskOHm!EU0lMyUVQ>m0+V6h9!V@DDC!(~SB$r`W#e;!KVQ&6SS>yCw3D z{BgFAd46R2JS;x{WhdWjpO^L*RmC&R6VhKsFX_FrdCR@FbaV|f6_DHCP)yr)McUy)zRCR&ik*dn%!bCLCi(j%=1 zp4&R3Q%9>eYo=!Nv$_)!&)u-QAQs+H<0qw>+t*4TedT~S*AqB>kN4l` zW6d^pp6V818hZu%r}j?H8WmI>-!>@PAPix(e_08@j3z7??I{_6tEN(WhiCvBtlt{w zuFNRn<@e?3N0+btU`ybfUj-h(UT|&}puQWfhg{$&{-gbgGccEG-`=ZZ``_39(%|ec z|3T35=+yB0=IG1KciZa{A^Ks~^?XF||CRQd_K^0kH zr+sy+eGvaj86}c973;_aC0bPwq(Al&baTD3!D*xTjQSQyLkwO&JX`?#ggaFevj>TS zWbs&z)MLm~K<2-zUvikh3wlZ(@p3#e&m$%z? zM?$@#pj2)$LT z)*XVnJtu2;;Js4+6PqXRpHYde0Mpk8;GBLk*2n@V8KCAj6JYB7lLxSuIsjzam~m>AIoQJ zZ{gn~#B|}3G0bt=*=RzsqMQJEysKBV95%MTLfhl)RkByzPfnlNKC*si1=1>LfMw7= zSORa<03-4bPq#<(#0Ub{1#x64Ac2rJ;9owWuT85Rc}7pw`QpDk7gIg0Pf{rcgV4Xh zaXhuDl#u7}%tGHdu9Z^k~@pzPYD8qB|<+-?BTi z`%ZUoYPxJZ-o9I^{ZlH3{WfucFC-GY{_q)tkMw)}XGYg!{TpA#|28XnYTIc0J)(K{ zj~?DB_A9o(a{#IOGvj|zuD*xklT8Ryg^QMSDBTaw2meO>!9N=sla*_<`SF62FDw7w zHuyg@`v1(VPkUx&u01)U`G`oP1(8<&iV~n|rh{&)@4)+s#hC|Wtk1kAJa@=ke0as` zd2VQNq^fmTc*gJvcV_sZVN{qOd#9h{bY{~r&3 zJ{%{qzkIV+yL&2qY&gCxQU7_}y4_0MUF}iryPDsGJ+42&0QJ1BJ3~|tOP{gkrd9%( zU`7qaSOzg@G4?vj{m!!r|7v{j1{YS#f;-;%3i`^Q?<@mkkO*`gKj!$F-$y(_Tip4% zg@5|26{21R+j#$6dq?z`cLSQ0WgG+A#XmSN3xIu~nD50k?B7U2?ekugW5_Nn{_<;b zuAT|^$rkE~$%K$c%0wg2;zed_19!*rMyoogzs4{+y`pXJn{%}|QRUiX981%4? z(2n6HM+Wuh_AX4_l4oW1$_w)D$;n9A?q3l9;t&4?6_a52q96RrYRvM{SBIBQD;_Jq zEcvzbG{|(oo`O|@^J$eJ=K}D(&zz@@?DaEp0`7qwVMJhlJpVWKp5EVQuv%7wxhvWJ z_YT({y>E0yb94K}Zr$;(Gd>n&WuMu}`h8)0PqRTP#%!OlhwhVs8vU<1K2r(6D3-mJ zUUZy_Bu6Eq*l#&fO~(Ji38NP|!FU$=j`6}7F*f4c;Fo@^7DPFtA8XogOG|UUmOkx+ zB&3k-m;KJ!uK#U+zzj2+=(#aI`+_7Zl!JJgci~@&K#%#(9v3?6PVh5|f3pLS1RSsY zz-}n-0B3N2%1ikb&rRP1GM6*ilsbO$s>N$~p0uG~#lG(}`o`!B&8_Woy7zP!W&M_? zbT=d$=!h_Yr*tQ_dp8%3MzH~IO6BKchBplU*x#`K!eE^lCuX1Fxw3x5!dL*T1cPEpecb>8Xw*~vaH#;-G+ADi&_kY&^;^2(r``w*d z9}i@Gk2%eeS>Izg{&RO(R`s2oRee|Ku5AC(?AW|}w0|=GrW&SDWaJNRB(l)?B12p| zLK)vvsep#k+r^mGPG#JJPscOkSN=Nvo+JDg4$a1QTI#Hzhrb_Wi6zE8Eua-?4PD5U zY?bTtPJ4hk$Y#sxQ{>v>AH0Jebgg$lkHuTvWpVpr1jSR9lmI>j^*feZaKR< zxO;Z@jc$YSqRjA|**&`Lnq5ctCmR?qz=GlP23PjKAEZ$m6#RoiG%z0P`9T_DXJWtx%c69aVvaAm9%I=%po5BDN=w94?zuS1c zc~*70t$knfz8wGUXoXJ;Bwb7oD(9w;+|{*XW+pUeo*`+2eCFex|yUF;=pGu>~9DKX$2nl`#qaVT+S^#(^aRTthEYAzyGMU&E2M%&d;oeMMX%SUhe#QoL|FhxLvsVyWFj8y&_G|RM`bT_6d=u;!-59!|A{j%F= zyz=<`?(}xI=Iqo2x;Zn!-akBk`1!$)`;X~ABdi-=l)fn|f04DmFi75UA^{c!o%jjx zMPt2EOMJ=#@czxtaj^CiBLjBIm?sv1t&ctHADYW-BlINmR>*?k-PZ9gl5qgv*gg7x z?`(U8OR&`({qX$Nh zZ+FNjxHp+0%V$OJeX{+qUA5h*d0R3^*3U>|oH2%ElcE!SDb7k)GS1kv%pJYpqwp`L zYpmAj26Y?*j=>e9o3muj;7|O!r{n`i$>l+Z_5&w?z2eu3{Pr&0FUbESp8h|>1lnRiFLk2aMN`Z4%a_dR{@^S0;q z9y#kh(ZbZX?{o1OdR;PXY60*o$z@hf{w6tIFKaLEzSg}gmfphd^mqe)lhs}B?pEvm z)ciK9gnd8wzb-bw+~K*Y4f^%u+K~ak=p}-T9%jxz8S4usGGK?io0IRf*qO;*RxExi z*8iLr%$^X=erB}wZqes(1xKpv6`a(ZRkCB53&Wf>>r}!r^f&ApIYP!UHLTdMM3_l8 zKSw+Xj`{iz_tQG(8 z?)JFujiv0L_!Y9?lZ-lY@3lukmwo}I1pBc$8TVq@@rmXu1dB4Y z76{M+E+(yxR4dYs8ke)D5`t@@p~VF~()v|i!7@a@IIj2fvseK*BvY6T3qo!}&*(35 z$lhX;BLURvSOef#tqK~^?8fqycO1>J-hJ_xvij+%$8#^rIj+b%?~{A7^|}XoUvie- zYuR&WT#>WwGrgWlMrAa=hFpQ?xG<{(-;xzwUf#X2J34-zol+tA%1D5v#&7LD(!Qa2 zN2K8`i35IOcxmDQTMQ124X}G809GVk`~|@u7$oM0H-Kt#L;+^!d-NLP%$OFLfQ;G= zbHrgm|1*QmlcKw~%zmp{nYUJPK7Hd`r7dR1Y@e&_7Jbh~rLo27g|m&QTuHVpo04Li z?AaxD!BgWCyg2c|e+33$4KuI^uc@3|Vi|0e#Y=3@mA&wm>e(yFh-^d_zyo0OWfQ3P z#Xk7wSt1)e4{2bXK&1e2TOy~}Q75F%=ga!13^q)z_vbU?=l)@Qd(FY^C8-Vftz?D0 zzP+sdZM$-Jb^FU^^{nc<^@J;ff9Cs;8Mk&`!8S+~^Q9&AsL24(I2_|>W^95@5UGY! z8ps6H{-Os2fC-O;39E&t8nO^cn_{5!B4=`RX-VFJ9`$+26??&VNEl}ca2>QeQAPD6 z*XL}m#&zhmIvrGlUGBcFq|S#OU?C{)IHpz}n93~Pv3Z=&MfCC%N`_2Zw)cf;eUnyB zqF3~gHcDD4@wn4EkN^I9;-4(ZRYxa{)@?R!SMM%OHsGGg2HGMsJ+944fxqqc@Ahmr zZ;r{F;4ck7mpQ?Q4L>*dX@8aebAm6T|M;+p|1;;8+OZ&=xh&{l@_&^Ob0)~d)4x&1 z;#%3eOJ)>Zm>Sd1?wt`2z*ZAJ;S4t91-Q399c`iYsrR=_P`_7r!#@AJApyuXWaa^t zhuM5bMY~0j5KoGXxir`L=i`6*_%_Ua&<9X9fb;g@`A9~2y2v&+lDSUmeDJM4ulW;v zGh-qRrV@ZXG63I!eC!CWz_VxOBsElF0Ndx;tdSc3Hw~Vg*7m^}Bvak3ijqT~?$=P2)nr{}j|6CVS;Fyhbi zC?q4ds$w`kKrwFrJkFj@pP$lCdkC3L9Kaf_vqo?sse1%J*~Sn zS>GS+e%0RE+?IJ>cMm_4bs%0hoR>JjyZYY?x85o^C2wWhU=IDiRYp`r<%wt!-N(a) zg|JgJ^$w8<%pzPnQeyYSoS&0gGcO1WI57BTmY^#LfqM{7MOy3AP@@hDW7i4(_ldlq z*2w;O-8a&JyhEhIUK3WJH(-zO1R@c;WLDzoxyCCJ4gBXyfMt8jCbB^mqw5)#e-FMx zRKNW7(@4F!lEy&L_j>!qJHAqVC9(m(=lzU{G$2<>k4vH7JYb$Z_$T`SDSJ@wy570{ zqhkBNDZlO)V*8&w+OK(S`=M@bB0!sUPibeiC$z6=k7(c9Jdo;0$0cP4c9;ezDq``|tC1@3?nk??6zo4NvxHWd+=na%&m|Itb1Tj%59dDJKy~3C8O9y*SKpSGkUM2x zu^i+C$H6tc8&K?%K{iz$a@i^Lp(FtBL9%lb;8yP8KO0X;X+--KS12jQJ@J(4PF6}) zpdXCB*WA~>E;&H^#_IcHyJ6M|y1n~h)(W_|Ju_9_Mx)OTKNJRV@vt3kH#oX~O=gVY zk=rup*6T;kZRO^ag^AyOcJRAr@VaO84OzMCMlLL#;PSr{r#m}#`u4%Rnts~}&j;;f z67LY)Gq=E5vHJU1Reb+kTL~Z+*ncwrm^sJ?#qW1;zTGcZz)P@a?2PkzFN=@+#s5?Z z@TlPbF~KY|7x9WZ3&$*8IQ=vWTK^}ng>fu=5ML2dv_Id~_xc6dtDk@B;ee{m&SEf3$Q~_Fa2CFY|r=(q7!2n7@ubsHgcFn%+F0uTd-Ob4A;CHp_bpM@og1(%JFYC7}H~Wn4 z3I0DgeE0CU;a3K~@2}f`NpMNzdS39o^TZP0Cio`vhxnjYtscVdgIQ3yTNnVA?(FF6 zGozDV65V`OFuP+k{dN)FG~x1QjxlXj5+$N=UU?;UJ|ezZU6XN~a#B15P@LKTuD z@^?_a-#cd#AJ{+szh?#iZ~7lnsqp;P@P)=MvgFxfQYSY(MU@oscn8(b}?y)I5bw^~jvEGH@1!u8ampa8bL z^klBUa@osW!7acYEr4G03+O+ssf&?XQ~c9@VHR8)A>exAkh_rqut!Ou9RbT1-SP+8 zkqO9;v;x4jPr>h|NH2ZvJ^4i80$hdbyGIWJyn(wzj*&Zr1YI$noew4x-~;VblLxSS z@c;JqhIVeM1Kr!bC7(Xu+>j%$A6^|9@cQA_!)Fh!hz)RZw7(v}or2gsqpO+qLu}9} z7vqcw!FIvup~2`r(eC7&Z5i~Q9qhj-zPVGw|Cuic=Hc+z_h|V2^MCJ*(LE+ifH_6T zhCQ-Z>?0xA7EksZoM*L!2{ZT~b0uwrk8tY-%LnZXD* zH>$6lKSi*5-ke_W%!UNezdzOb6({uwkJmzg-Q(w{Wo5vU_=k6Bd2AS|eOm9wz3ci{ z56%kqZ%&ri2BSZW=C{wx%5d9{KM)=8gZ94md#UyHwPuCpdCBUK1!7%9wveKn#IqGW+AnNJ{yHmY5& zqJFQdOtrJ@*q(xZaP{cS7cBnIz3D?Jzq-B!vKZ(Wa*J2cqh}9!L=P)gzjE4h9sx(% zOZtOUl*iP4h;>?Yv){@AUgc3fD~{!Sr2zZn2G~7V^xnPClxM-6)y8uc^U7nMxRwnP z>@mse{LSch&95^8PVfE{x&NZ}8|?wz=ej#%13Wu6z;i|q#7lH_IKU;tzYMk<9Nd3T zkcx+In;;XreAkI3PtF?ACTv?`c$;VM;-LSDIeJl~!OV=k1ETjYiTCg6$X4xO*WiUcBE;{CQ%~_f#RFHWtBFjI z#?@&D9H?{EwcHB3BZ{=75x__0p$N$ zWlF!bM;DG3HruwV2LGFPpKi}>FKzE{&rU}07rXVl_1a~d9Y!}s|6enF=kTE62L`wH zAKt$pR^(>!*DVfG56bJp;M-Y!`kcuU+AQ*6_n;81OpUIY`MiJT=R70!=UKhuqOUpk zkZfZ9&~W%8qqPs8=yD_gs|qOvSYZUsPJKK#a*nK+NA*nK<2R(nE%mghOnhMS1J6sA z`+NQ=48T=Q(Es99rVhrP4^j9B=S!ly@};!_jP=O`D%YRmD;`)mz_JVH|FI8$BT@lI zW}Of+H@3*r{c`WJ{#%ms&+4Av9|JM2_ZNnJT4$uMsIcCfi=G5-&tr5vL>UZDyUd+jl)up_atWXk&x{9QWU*$z< zMcD?(6+hsQ@vk)DSXwQfAO?9Q>z}+o*8K%1NH6(>yhT1x+LeBAMUd!~tABihrGV`~ zKfM!XB(N^AeVNKd?-n`WJ6e$+lxzUyq8Cjs|4{-i$#~G?S}Z>G!asLjd`Q-BrUUoS z8Afr49*{G=d~AUCjV^31YG)@4@Dbe`+B4fXrb_s0yL*xuaC`gFM1V%4Ya;zN9aA@+2sONQ5q`+Ze1Jo7Q(+~F1{MHvE--vvmnsH2&kSqaf=a2(L%y6#> zr#K{e2G8of{hxsU)uQ=V=q;a({2#P=;a!GbR{xaeBLmdwB@d7lM*j5hY2~jmksvS$ zqX)p_YD6qJa6>E=6mg5G6Q^+ zTJTGCOLuE_zi4-B&u*?w+;7u~<_G;%>lX=tM^CF?{#l>Rw*iC7gR+^m#Tk)|P%#QJ z)#c(;4a%4YJEE9(q8+9RuEYgrfEal<__AH_E`mH$?OMzM-B?V7Gr^;)fHG^ynpwof zkQ3ftX@0LK#`kv`2R;z9r{VbPYmwrH~sS`sG|b-!NK^VaCwYw!@;abR_Dos8SUUfZtvI^v!G1$dkiwcGik?fX|s+q zrw5N@$sy4O&ZzZoeISqlkEX3DZroRG(mEPj4X>dqnTG1ImMdXJ0wM9<2vjF$WOe zpBVtu4RSpp=4@{p%WJ9rZ~MO(yfxbYyTjiM&lsK6e6xKZH6VZ8?cMz}zj?p=QoDY; zPjf|9hTeR_{=q+9J~MzAKga>J4qArMWDLr>`|5o35nE{-$0(jPMfLB^VYk~(n_h>!#QXh1wi3a3u?1g>Qa?$Rm z&-B83QWlBpdM(t_2hlH2Kw{BnUhNsLe1;3yPx{I+NEJ1F;a~3|c18704&-xXuZR}q z$}alJwbbL>o8W6f5WV}vhJRwvhYx_U#yXR8GTO)mV6H!Wotl>0 zL`Pe(^Tgo(wB+bMZDI*LDF{C$et~nc2it&ZK4->r_q2EkpPqeZC1-%`v`CC&V>29@ zzoQ~Ij*X0fMI1em4@YO;5tEI1fM;X|z=fF!OkIGB<8iz+F|U851Yix5#{~b6>MfJk z6(a$xXo%+5me+>Y)<<`%xxx8V%d-zH?yP{RZBW+08fgnVpjyNNu>Kzwm{u6E7-Rr7 z)AtPzI-P2+*)C{5(A+yZE!uyR;2+;# z;UDZfq8M?aK}@09iTE?0j`!ka%2P!XvH^6VsYD98SxqP=3jh2^I};xlmms}xQ%Dtc zQ%T@ETLy9R4Nz@99ny&YiGMU7wE|i7i=&YVWaOyj=_k6A9)lg_8uv`kWB~SuR}hR8 z@|~|@St*6(;<>zXtjF+(QS_qtU3x^wW7=>DG$ z|D3hG4@)iRd%9!Bj~*YBxZmC3f48>lW%lRmvbOKc;D6%@{%eh2#u{S=d=q2V&SYdU zKBxMX5ym(#?(aEbkFyH@r8U_@3$*9>;I|H0> z1;#w1{*l2x^?{l7ryo#n9arQk;$Od^z4v^2hL2CwE19NDzED~{@h-Lfd2;2^lMz&p zJ({~I{!r)14!oAF6ch1@^K_Lhw1{-6sv+Ki8Xx&3UqA|&!NEQGG_V2Yj$Si5AgcrX zqMg;X-P_u8+7GmglL@%S_^QkYIkGuqbnEci%m@77@ZjNF2A@bCz_CI6{4npsg8#!} zos;Q5CpgDGXO&*6Oq$QnOrGsxB^(gleN6Q8`Ki_Omfjok`rM%Yylm$`i1=sZ|AiCX zec|LAH~`zzChXwsumQKT!xWGR?6LYE6#!ugu>SLd`Tq*?-`u;ZcV)7GE(!~H{Xa|s z5cQ*?!HSUp_yDo~vH11;O}%v>+c>?oxv#&th0{>>^a*lf6<2V=mFvbfRB?D|rJG*p# zv1QQ#hD(3a9;>{!In5Dl+Fo#fei6MmMg^>W@`zkvpV1wow>Oux%ftt8ef!+@O<61O!&xI_G@jE9 z+Z*$QKAExei9`V&Hk>usvH!{-eQx}1`v?7p#u7m5vnnVVdpkt}um(61fqA^v3OsDW z6;6uoe^>9?VDmM>DYF5e7LBde2m93XfeWDd&&exRz*8nz2kl~>ImB$}|1&122l-S3 z$FFc^+Po0~!C4Y(P2S+9KuwfPHNTA~BoB2D_-YZ2$iLErVyLy6aC<>GRp6 z)0->XPbKSb?eRt3eeIXpKexZj8egY3?;I_f`2Df`wf-4D;=1@flZP{y2| zG>$9$gCa+0Y1Tqyjd3-<$Y=cfSq#?QgOvW=c&QI{3rIkcs;vMrB70?6cf zjvV1VbAKFBPsTgb@9+KTS>PDuE$8#p{bhX8$}4^W^?u0%ew*^vA_q8{Yr%e&4c~iy zR($T-k7kX)d)l|QZ^<0c^Sge=$2+_KX%B4xZm)NgRA!-&f|EW}-zNYu8*yra5-{2f803LAO z1n*}B)u0)s&pUhu{88)Yglta=kEl)CAFse+@o+ye773MsPD+a}?|rCub0om4CzixN zW-fsEH~UBZ&l(0~0jkf%vgju+N3L|$`gN5aG`Bf|#suIFOLBaCe^VI%Ln!>q75E-M zfcSUT&q2M<^q$p!@?h)aaonBxzFQ~mzhb*v=KF3t{(9zqexbdkeOPyM`-tRxpA*j? z5kInfi2E^47-3q$j5GB-`cHQ3C;}ynVkLzhD18QMB~b#Z#Fd_T#vGbP;?%Qne|E2Q3nMeZG09`J<;eNzBXe;|% zUwq*o>{vCF>kv!BD?oqgF;`Q^bFZSAc6>Mewyvbi!7`zui03K?XvKDY4zxg@lpo$3 zOh75CoK!x7{;9k!d5k>75+HBL-_2*TZ1z4eH344I91=_Lx9wMx1%6k%sJp&<-1z6I z0{zR>fa{Mw9tm*G@VUc34ptbf*S}yg{0Ot5Ch<9MW zU=rLO8x8*E-i^IGdLIowpAqEa;REaFZY+4PU2(xfg6TtoY4V834Q4Yhfb2mc0cH#D z9{xdH0Io{@-){Nt$mqQH_r8^D{ZFLIsgWyxe+IyepXI~<@%a-0Kmrv1Cq6GnuWBH8 z=7^L~^_NNjMo`V<1@WL9tD&L=;Jmniet)D2R)Nw*f5F_AdSEu^>WJ zOwq=wfUZIy3i%%W%#}<3;{%v7fu+(TWEe=L7hqTEM62SuEPlSjl0Xw{384Auu?W`d zx1=1S|N8VqILC1%+tnApe6Gop^tyb{dn5oo@*A##2SPcyq@RVJD7%!>(_aj!%x_}s zg*+f^!%F6QYgV27$YdT6 zF~Gxf{((XGf!RPgd4FX6R0c4!dWrTkzn@p@ek@44LbrN3n+7C)%(f_^sF z3VL{?0&4)M^_4>OoO{q~2)af1lG2ENBgyDf^{bHnx9p_OUQ)xO*XbQ=5L1DWXThED z#C$IH+-D)1@cwx=JZtQEt@(Ot<@v``PBLnG5j2@c%1@M-H!w5Aa*z+sp(e>b^M0#Pd&mUvRu% z_U;W=ABf0`{@p7IX_e5LH=jTp9Fq_XwUT>{p z?_UY4?WC zjy{rk0Po7$AU_$52FvuH9OTUj-`+dgcDo5avGfm`*x}3!+A({n$pc3?a$>O`9q-&5 zd)Frq{q?cs_n7E)R=i~c!$u6OC4@b}ikPmFBgVNN*@XPnd)Ch4J(Y>Drok2Q$6ez0 zzdj7$J@GG+O?XIr2!BroApT+fWd5!&VgHW}a;Mcl%*dgdv9%Jc{9mhkR`uVh1pxZB z_Von90LUUh>&yF#6QKQJ{roxK-}Qpliu8SR@38&>gAIn4r>6T?Qt9{o$@ZMl{WP_n z-rPO9dw#oZdusdX)cpEtb5G{`6CHy6o9*Xpf4Drl20mR;enui=QM53c9ovq);-OP! zAb)i<${8HRj83J2$e>lx??^`fYZ(`2;2Gje8K9Q{Z79x>M{JIAF+_jBEBHqOfcvGx z1(sd{|I7qn^&ldGt_3DuKpO9~@NJt{B_A#8RaEzjDDI8B@Hud0de0e!c_7!A?3^iwx{$~>AM+#5f&`+ive{OJEH!vf9=!<#i3PgP-tOp&$oCx^zT2mTpL zV2uq4pmnNNveE|nlFy}!7_n27IufVfqVGyyf&|YMJ&tJbkM8vxzu}c@$OY8a$|G0> z-#YfWnk{l9SwCd`JuH8C`>Fmz6o9={0C(*$G68JSyP_9`RwW5NapOwP_0g9h{*gXx z9?f;I4@5HO)qU9xpS(ihpF1e)sqjy0vK;ONdjNT-U0{rcdz~^bzK7`>0Tk=?T#)8d zUc`M9{oH7D{%Dov7tQ5uFWKN9Yp+N>faSYW!vC+ydchBCzc#vWc-inRkpRaG-#vJL z|C_-SctdNus?~z%`a`1GPl^oKI~tfweJb)W9~b}sQL)5d*85~|`O;vL%wVDfZl&32 zjmkiL!#=Qr#&?qkuts)a-!*gL{@|a=;oyoH$Y=CE9{gV&FC#U>s3P+B!$0}{;2+KJ zYDQQARR4$BrWU9tWnQs#A67bRfi!f%)CbN2Gn3>qxE3{pnSRfXRT1!Kl~f{fE9op&YhKX zQ{T&Gz&m{^{L3up8>p4rc%=BJ=dcR;ZXduT^LA^tcbJhw${c zCRUku%M6WrEfL-=Rt2*4DXY2J$J<{kH}G zXNQYWM}%3ye=i9@zTcxJ8UHIL-;WF+q5zMJX2u8a3TEWtTPqpnLxu!>wtnJfImTJk z#PHXQRxgiVdHIV0$o-8Fz!UKLk^4u~&)HW*64^G3)V-tkj{Zvq`(!PLPY*vkY(`&7 zo&SrI^>=LYe%9;W(H`5L6z+dX`_1OQV|=7`PDY)j#gdm>m70AK;d)^m^Tml8a+&F0j&#=VBz$ z=%;OP9QTLR;OS`5DCLwtC10>7yl1Vj;$r3XFV4>|RuNF-HyVGsDI0xWdRAA?3eWEv z9p7w``mcAim$xs--!HOK*hSqZx_2Z;^c~IV$pU)q@NKCcwb$^H!SnmqM6ZH3YJKC; znj6-=U;KPz<~%8!n_M7ja_*Or$oxKPbzK;X{1b`(9}(|>IYQ;ZlM|COr1nSu!wo<@ z8XuiM<^Sk^zk@GS?NMz2EbOf!ajr_O>;FsJo4|iM*8Bh8&vxHLl(mv%83tp>*v2x$ zVC*q=vTtLLEQyqmR4P%OijbX9GDNb4LJOx7Z6}rXI@Rg4owon$c|YfUK2yJb|8qL0 z-`tP+d_T*5U-xxg_xttUulIFFdNVuyV!z_(E5H4JaV!(LU-)0PTj^u%E^7am^k?U^ zjiQwp#UO6M?w{7=cLvuCg3SOnzE{@05})sk2Cmro|M=Fk@e$xHWX+#DD6ke|&D`NF z6KnRK*Z*<<>_l!qk<9-Y!;MClHD7OEz0fwX{)g@RQ}N;b$@Sd7dFNnWd*06my6Y&;-><&FTZlr9!ml%1H_(e23IS z$|5br`WXN87_Fl2Q+fu{xO4~Ye>48D_3^gxt2#fQ)eb5TNcj)axTAbcEu9wWKli6E z^xP3~p5ORg@d^5+Zs1@0V#FLx49@6B%E%QlY;e-inBMPdN2 z9eg2cfqxNwUfmxZ7T+5hz`lvSofr*Z-}nH*{|=G6heRu2=b!!Jjk~VP{y8k(zv&&S zMe+LKBk1nz{ZaS__n=$9zkEXLU+bCooWc3l9;W)J9BJe5oU123AN-#XPP2LNPtB44 zHyQw$zSR4Bezbqq{Ntm?X9q&vHHB3;)I_IR!4{q81M5fIMSteBXaH6QR{rbrGr|YH z(fZ5Y*9vf@-=rX4i@-I%#1_E+l*D50?ec!s8+@?K-1x@e%;D9e=d_D0bkIVJEp%LV z_I`JBY4b>G{!MDO9GxAn|6<*N{wp0qgXr_n3G^#kp(iLEn$jx3FQAtI9Qr$d;S)+` z+k*p$84x1}fSW*(e#5sO+!1{0jVn4;g8(D8CC;F4@UIMBkhgFiTmx(wW5d6PoY&h< z%`Rj<8ak^2{EL2F=y2rlKRKKHq@=xg_b$lf8a;?F?`Ua7j#K>{&ZadZzV*R_L9SE7 zclPivmUW>|KrUB&h92l4CH5*8<~%tzF@HwDvno%3SE^xgEhA!fmdJD1HCaFxjJ9oV z%JGg^01r05ZPra);QO*4{AtY!qZNlY#s7D0X928|ETD5j%hUwMiw(`K8~b*rp#9kR z0QTu(0JB4f`$iTYo8!RX|CB@kZci5A;lY35TR)$B0O8^B&|KmT5^HIC-|l_Be|+*b z?oI`V-wqxaF5Dc{uCma23q2f<&b;QLXnMbBZfw3f`ekatE#2wDXv6xz3$5T0OmTo? zK0&8)2Y7%v<<`suk;)h7Uh7}9fD$k-N}xM!05||NDF=YM!G?E*GPzUzUU%l)>JzQ# zb13=A{p40!xJ1{$Hrfp>y8_7UBHq`b_V4JGEyEk4!y~E85RDugOZFhob>p6&^5c zFt>kr@0wWmV2_=@us^5d{jBKOtkK;wx&YNWcIoiX3O%a(6#fs3Bs8i|WFPuhk|WEp z>h<~+=1cb<`~8%fUWN9r{jdDj8?kG03?G@eGk2Vk7STe;5&p;90A%~{f9cNmw|qQw zpcK^NnWGK|dJ)x0*tY~*WLExfop)8mjJ?b@4KHK&1oDBIOMC#zd;NgOcw08p7yP3E z=<$bV7-^_=1hXbCo7l5AtN)_GKL!1FX6?q(!)A0qb9uYkLZgMwZhzif82SHf^B=JR z&Q0F`dclZs@QQ@1=SqzW(x&nPiUk#84WJ|>v_GaY^;PH%Su@7JG^@?bZ=&DdrFrkE zE}}L7#fv`i57ib=F-idPzL*)>RR0e09|(+nUuz|L9u`|0Swrw9M* z2XDLQ?oa^*K@{5MV6N?@BKxzXF~08A5biJvR`1n`em!?AfC;+&+oJv`pn^u zzvk@7%?kC#890v~kNZ`~p-+wmo<)B+Xaj4WUfOG36}d(}N{_@c_}3304?qutGw_$O@NL;_`f~8{a?Xas3x?~Aem%OV zxi_BSvzyDCA7rKIwe9B75lEPm9#Tdqv!NogkAu zpj|@QTSoIn|KDrk;MfC4&&U4W{LME>8O{Qr&9zfIGl1EPWaqq6{r_z~}?(ibcLjK)*rpOrhz#|D`N zqM+_rL_I?)m|M4qJq@XI%3g}(Lg2+S8^BTg}%a% zuq41MQeFv-FVw3z2ZYmaqb}gD_(yRxuhM3yE17f9&G?u}MxedJ8R`|B!91cXVE30@ zfF)p5r(!o&1af}|IM7PjAN-l&6{CZa6?RWN03S#`(3;s7B0-RNwAHdi(S3IKl#7p;2$0Yo;=_FKQuB?c@LV6`C$Pd z&GiTt!j=1cTh>1Q0zP>r@21U{{&?Bd8mM{mj)_Nu|I_n3I}mLj>5m6u*MF!60Q!mb z6ZOaTxANv{9a7o%l-j4{Mb{1oAb+oDN3Lw5(&;YI3}$z;MHL10821AbYBo%^n)|yY+lDmeaDq@kBU0d7mzA0nO%4VM~%gPah5Wg);P+Z(Uw=+cLq4u z_>6p1PE6bOgWfr_v@^CAc&c2vVC!?GJvj*2Vmd99sMVIzm9(m3!wJ<#R6AzM=nnfA0Yp4|M&xr%KrnB zjdM-b|9>FSz*!yc3&qO+u^#Z3oB*U3{>wv9zCr!yME^OAAz&5kmK^{dN!80!)3+6a zlP$uB$OHaI;vc&o?VnYDNdFarLss{ogX8_5nqF@a&O@z44%RubbCLDRsBp@@MLWhi zU^mmv!z;)NFdK-NzW=fHK|L}btG_$|SX{MgXi_*22hoGo!&4qht?$eF`$hJn{XaNZ zV)%vO^O~92-RY*}bN@K9|G`vwy1Mz^s6X02G-31zNm0}V4QWS0nb6Xh!k~9>0Unh- zC26EgaZC%)D0C<4rED-J{_#?w%P!O5nYQE{;EQ{TbrD>0v#=&|_zfQ#mUbZvY{^H& zFg*u%_F9C3NY3Lo#^v}#Cw=1z@kXCGgY!i#ZG$)S1N@cWynped%2;F^#f5A|{41?# zkzR;jkn3!lRajm?k?s}Xo2Nt%=@WCwbqi__#r^ENz4bfwH7qtYHgY`8_{JWfjg^K6 z4u3HG_~@+A$7AsTUJ)PhtJ-I>PuTmKnWN293E-A+fE%+8;CKDy`_p z$;9Jeuizb`Ay6rd>b?gjEBCs{-Zfu z0Q{%&f7K14_S!sMydbM0IGd(@oyF=X0|1b>z)PsAfe7W2AV5^B5+q&QA!to8GE5^(`%qb;`7+) zqOqhVeUSFmj|=}Lf5D>IhU-*TjU32caJ`3|Ms7o|y^?P|-_aIs!7AU#GnSdJyF2PJ z$8c>hXVOdmbA@+gjJCqNnnTA!tzvC^EEYyyJ@X3rlRAahIzF`}+n2AwvAm=2s*lVq zT)nI{JOSo;qXY0HmQ5zeWvLH0J#_${j{JX9w8SIZU$jrRPc+Ak4jg_z+T@4hRr;sF zDuccI$Mo(Ds_y z{;c(VX|MAr3?B2l}n3P$(aALdOX8jchm(Tb8|8TI=@Wt8faohHccKP=9=3SBhKT7m( z*=DuTYqH|cx{zl3vIfY!u?6vuTvtv)Nl*zC4N9aa`na-iq}-Kzaj!zJ_g9*7KhEGP z`d3#oHa?dgV}Ie8@C;>gUCHOt7o0UXB=1CjaR9IKOnDC@ca}YqyU6L_3Zj~pm@l7B z&7eHar(ydwqx|(7b2BSSSUi9=!b^weA3mfa=#9-cvn${k&E3sj?XTNkwY~QJqcewp zOeQ(|f?he;dhquC^}X*W(mXqI4#`CxE0U{nUdhA9--Z5*?!9m7eS9GL|5cGtR1ia^ zW7Q+|D-y2H&s;x{4VL{>IzYwz)d;i<^qgDol4#(1x$hfOYv{hL|6Mma`is-2nH?wE zJy_e}AHo3&_f+^NKbO5eSC8~{4pt90oEhC7>*t{8K42cb|KRz559sEDtb|u&cIefP zT_k|40M|XPo0eP`0JcRu=*I@A+&|x;1@Mh)0C!5opZ6#4caQAed{?;jBeDJu98MkW z)vVKQ+kPjRo#)59^XNnQnXYnS15TZ0>QBsgI9?`5X~=O$zzN^+Cnqn3^Rlah1^T@g8#A9l|QIW zz=a%<90sld-@|6drr?eu*!U%!z=J!2Za$%rW65~Vm@~;W#5(! zPYeF;`aWXzQ546a9bhy|nlCP%a4Gpp*aBodyL{ zgIn}}eBb5&Iy_PNJE8-;GCTw1;`K-Bb71qM{eoWo{mTBre`yQI{L&qKkJao>NiCGe=_xN){A}q;vi(x$XNCZ{Kw(HGX2ceCEmw6A1nGy$ym0Ic7H(p9%MhW z0?Nwe@B;QbWalGRMjw_}_DbEc%MYM}Dp~-34c0VI2~R=8SKb@dG^Des$@60>UiP^H&M z`)~`+<~vb?$E>7o@d*0Hnf~>a^Ys^S-3!u7V_)K*bHNJu=bp-M5GtzCTRgm)@5QxR zg!96+=10im{>%PnO)z_MbFio14v}?lPF2nuk_SN5V6m^>FZwIq zr?yY4$o{{4RpR@7*#RI0&l@We^+s;h;r~;q0KR_Y|8l|42IlX5QRP-MFpyVO210w4p{N@$u8S{fDaMpZJAkhHklhwSS zpBx|#wExQdakU@vUmao9T=S-hS-si))e@(@JNW-ZcKca2yS(g>?4M=ZC9>-0#O9xx z&&99v?a}Xt`*q$QEB>GdU>9nEO5ex_kuR>1bNcu}6Ew(QWq$bpL63SuNhQuv@<5x= ztWpRh;=dBFO0PnlXy-hnr1+QSX$#60_l18o1n6B{iBj&xnF}HUbQZ6$V$nFy&X&E_ zdlYXno=;2O7fvRMoClCDFR0NGXGfxraqVn66V;0CAltbEF+)bqU6j#|77iqbgDa>- z_*aeI86NvDs@L|2t3f)~aTUBk&cU}xf3yHSvGn1^sRO;xXd>C+ze**5JGul-S0 z0xX(U!0QkHJ=rAp#ixAN;K0-a|3vR6$@t$Wbce@}EF92JmJZT=W^7va@n&akcJZ8( zI-fV@I5Re{xaU!S{&Br1OMp$=se7TzK@wf^#1XCTECPCsC9}DjpS!fbE={qow*}2 zx?dLwFc*OR%%;!RXsjB9c8}(d{~!Dl=_B&TE319MzdT^o*j0B<)cpyx9BuKD}HMKLkpl9N@qPUeqlHOG9HPp zM^I`(et?zY1Iu@m1of(aLg~Ec7+d9Bg(MqC%tamNiY|G8G%rp-?AR{g7p{S-%`oH& zF-;5V?Irt)GmN>AQWgZ*#)7ilvx`s3nXm<18ANZC=E!$BVcA5St5<^=0H?@Q{h0DO zt^j$S>3AK7mi-w2%on38UgA4O$sPD4mU(Au&hVJ`Iof(QK0o?PpRDOZ3wQ$Y_@Md0 ztK1iDsbqwFYIy7Dl2ilwY&-y0WKX~cga4N_-yCi}oEUy3wSXTCWxZ!G8cgl))ca6y zjrR{79LYB=6pR%MK4*p^IoQ2#^Sr(?+W&{LGtch9zh3`}=oPNZ!zbeL@72LK>H>9+ zmVll|ybj2}iCgDQl+)!Qce~W*-@yLI5fR%$u{2uE6 zWFc-83x}1D>}JLR(%H@EsQ3V=bhvwX!`!ZZIdxCj_t01Xxj@=d8Hxb7#LInA-7 z%fijE`&hx_UtY}`2h;5AGv3=zyIy;-*8PrU9u$u*y<$hR;-Dx~+AIqm$^=oBbE8cl zC*g`Q8s!@x1XO~!qI%xhAFcyQU<2HXPGoLb*nC%-eBl>QJA4jq!GErjUzD^){}w~E z?Owt3LA!u=%uh*EHEUYn8u<#pqX95lypt8DlRK!lcs9I|`5?1_mPNiJV-(;Np2-Y4 zvvNM}=NvOfw#av-f59oV@C)_GdUOBaM0^YOIo!c~(XKkuVyOfDw&7l*9g`vUqj-xi zYL;uSZ1--bG(Q<`mouKtdh+|@SGs?2$lxRW&-B{f8-u7q;o6~ncmD#N>;d4q*Uf{! znW6s=c6Isp&L=#7M*Oh+&F_IHaOnFR%YL~-c?0zUihei(QWxxz`6~z5GJ6SpG8w?< zreDhc)pOpKu|$ym+x{={4+=q~xj5wEfkLFQ{EyXs#2eNAkIL!?>Y1}k$=t|#vj5l- zg*_2jD@EO7R!8g=-UR;50&q`N@_O|4`Klj)Z>{r#b-*eE*AGui-Lsj!&6D|aOPItxMCO zUu^(NhXTO``l|HKw;&bjRziuYu?=r*U(KH@L9<+<5Uk!H1%n{8Vn5L{`l00t2I+$s zFFinQ0PKJZf29pE&K{A@4jAN}Dz zHAb*1ve5>d9kZA89N3!uDUT#P1P=#u>g>|SnCJLT#MkP7<-3^Yi7ohyjr#EX%LB4_ zu+7d0i|3giGMpIwcyw=SfZU%vk>|GWX!mQkPPz2mGLnCd2jIR`l>1`V0xUb&vVTJF zkx=nwk-F%p+)23&y%{*3_Q1K2V)#{I$nd1;v}otFkB>qP@0U5IAPiuR9&kM@6Tkk6ha>}POTz9r_jSNMS3VQ%z)@Xz-G=9GKzdnNU2Nb@cOOPpTdbKFJZEoSBi0UI-U`npd`MZ`K0tmyW_pyPF6`+5$*Z;X7k~#!*fTcH-GMS1Xv=~ zz>jZ_Z&n>0l6(9vwd5X*7vL+YDtCD50e`8tc<(Kdsp#E!;AVu5_lTrLl7Z`uIz+$? zW&{g2B`Wu>;Gb20q8_atNncrid^<+GK0%`bo)6dH&>8^k<{u;f@gERFn3c%iJ+c4K z&v~rSe`&BH{;f?q>wk%VuxM-^B%*zwf3Kb%Ob?gYGP5x!h^F!Zdz_w<0*QA0?diVFgw?}7P#~YEq(3;w~^yu1?cy8*C03mzpNTA@|%f&>;0_% z?!g1m{pSrH9sJv1rQs37=Zv1;EZrW{F4n%cd0Qg7Z*QI$eJ^|gS{QQxWja(Wa*=Kz z1?dc;mAfVT{f6(9o}8xyI#29yKjpD}z_Yzdsc7GzWqUxc zmAzbtmW&;3)jjSCU*J$$(nEO+QoXY8*&A4i?78BT9@}r^w^_%u2QJb7;dXe?>fke@ za169(JtbO)e>pCG=Qn<3&O|P47TRl0?Wd?7`%K_G^3T!-Y?;=O_dHYak2N+vz3>KQE6KKsGSZfL+rsDyCB# zaGm*5z3TbUHfw?k`=DP9zzjfr0jwCB8f|BG^8Pmo_8(4`#=Kbne;%xpJwG-X&B=}~ zC%1nH`Y%jW_tnicqx-|-p_t14&<;@kBS*xo)G1=2c;p<1lAh1J^LObIIz;-3Uq6*} zrM1FgVWl{QZP32*2w6)jAhNgyEyJDY0sR9%Sg|6J{;{7gRsNsbY0J>Iaus}m7bUYa zk31dgBlOq)d2X#SP;(I>a253obM@#4XsUzR;12YSR?yv%wPXBq2e^xOlczF&Y60|y zHsGJmysgoy(Gv3`m|yvYzjHsHnUcORubdxqNuQQ8OzYS`R79jUf^){aSqEi_;ZDP! z5Bu30;;>|m?2rloH?`kv-a5KC`@=qW_|s?r$p2?zWzHU)*?(8>$z--*hrcZ7+&;GL zQThDxpbV6QP+zIbc}sA4VK@Z8XaRs}G=Gt84ggoc6W|{p8a|-cU-a|pZ?ul(VJ$sA zp@(c7{NIrb;5X+T`S~kFpPm+k?HD<`V-Pwk@BgP903SREq_Y2%+>4&E3VO{*|ILD9 zVxGGO)vS9sHvKrg+uQ7vSpSE1a-NL;ZSsGoZ~%5U+Bu&#&*+&W&`-uMHU+$tyhu15 zo>eM?aG2?55AXwEDNr?ZM(Ukh(!05TTIzkWU+c%S8D+PmC=v#{C zJqV%|Q337xtMU^3m#xbg+}*a}CDOZEHEn1Is0)aH>-<91=*MWy*7R_dAAQ#zuT@O; zvhKtukXE>WXCVEp4(hr=dgPtqgT;Fmiw=mT0rjLJD< z)bbK%4Nk@!foS=t+?7_;^x@$?JMKE3S!b|#4C52=i^STe8nUBwr06-+f>=LUK#z`o z*t{bZz)x*IoHanJw@;1kNu}^5V*z}1@I>~L{C57IK6t$U-QHro*Mv@~K(|ro`q0RE zY5;8=>Lo9b`hZC48TtN(;PP#udeB}q0Pqmt3FN!V0a7;*=VD(iK_7wIzq$qTpNu2! zq7Jf7C;x9x1n@0+M~*(L@zDRtM%+1iHd!|RGyIe1gT9RhzUF+4;>#fKXydfYT7P8w z-qG&ohTol*m?wLho)|yhKKYFbAk+b*I{FUzOq~>}p~Azo=d~@?N}H@6+POPtX4;oG z=>1Z0P3>99{l7Z? zoX<2{G;>C8Oy;jX`4E4ds>0Df)!Yz)exD*p}wNmA{EIuHhY6 zMWz)stG6ScmEmaSatZHJ*U>iDs`HQWUz}mtP;XWBL{=C6;RJl4`JMe8WWx|N8mh;aK}x^l}v93f4E^YAqwHAY<#Z6B0Wg`4r?k#3HDSx>BOX=Z@}b zE^QxaFH0TpXJbE3X?{7}KK#%>mI1P!|GbXz&u2J*@*n(H{QqS^_sO{r z_}?t(UoQ9{BX7${fA%Mu9ZtmFBmWZ)K%|eT`x+USyA8Q38T^YnKRcv-SNR?k9(Ypx z5bSMwQs?>KDLr7nvKg6)&2zT3e>TbpriPoi(ogMvwS2R2(7#W3>0$8|?visi$SmUN zcVz$^0Q|!bs2H>{bya$Y_IHR*_PIp=Z;KZ2yTMBmvHAG$w$anU|M98&b7%8p^H8%) zv(o73JYi@;nNsxY`fz>zP&Bj*VnIKYRhlW^DVxC~6b+=MN1@J6dkW=nMbO88ZOK;hxohyc2L5`pVon_R@Zs6(w}dnX{v;=NB~? zW<}jejw(N7FEI2scRgIT!#unTSq?w6&M_n59W~H7*b8OxZqAhe^qsch0m}`K8E%-Y zk+){Qm}c1kD7Tl-?XN@$-pq^q%a$El=d(?A10e9C{Fmu*>kt;nzn$Yff!v zr|Rb;sp@(|^Nm#e-YpahjUwgrJc&1~0kuf&NHCAQ(|-i*DaWAYqGyrsD|mudrF_p3 z@5aK_b3qID=PW2rjT`*SVL0oBos5;cpoeg0auSSJqIc6{_<_1EcvvQQWmhk2`a=Ki z>Z9(AJ+5VrZVobwXL&92P?A=;30Jaiu=@lcf06y_NcPovs~KX}N=S-?*<=a1eT-{7LL0KO6YKOOo1%~S+=etdvy z_s$4)t{R!VYv}&$M50fPhkL8gI2mfxrertzlj8robK-(d|HtEx=Hpi;@ZIkHQ)B)c)+`&8l{rF$8 z8w>J(?evuVM(X-)*TofC>p;E3LxTJx68Sqi^KfEDd{W|m?1_TkkvM4WZH7jVZiN0m zDfnM8=m-C<@L4lGe|cItGd%2d(E+vzzrn|dx1YQq{=x&y57;yn{|@Z!-`_Mbzo!%T z|8V?&-x-j}anSI$!$q^l?;%=> z`;xl!it~{F?CXb3OPxQYKOQZ)fT%AiTfJf)_zraPYA%iz^0+FZ9)-$sVvef5F1@fH z%oCh}+=2y>%*=p#Mpa06q~5W(k*HR#b3NSA`P5pWhg|2p$yJ#no)!3KPT_BQE74pQ ziH=|Uoq~M4ntDCunY@+(T0lQ-o@^J+jxm4E8o&**2H?SXl$Pu) zfTzL%z7Z;WJW;^Q`WN+X50Y04mCgy>pBK;DnW6fvJN%m+H#N9BDe@ovfA^pf3}OL* z>B<1&9p8h0aBe&gdtk$yhwSthcn917{FCpCTonI!0Hy_FCv=?V_4%FkzmtQtO@mT0 zZ;4EDAFls&rOJucnKP!Ib<~SlgPQZuZ7N$-gvpy zb!kC6TpPf4p5JM<;9t!h4p4H>@o^8%->#h5IJOiu;)QGk$(P?OE5bvot-ljn_#^$$^00?siBZubc^jO~v4cC`(?=2R-$K8-mvba{g)`P6{;{cShikEX#4UHD z4_wWh@+63x+vFzSe%d>J5M!sO=-~J-ey~Yc*8%pX-0{G9p)JMDw1POoMa6 z38>AXJ-tnA6a4>FAF}em-;00bGIyf3!A`+Gc0QH7cI&+K+eTuO+YdLO@-e?2nuFTM z`{sK&z*f-!+~XWQ!2Vk`1ipfQ59v;HVP>v-eWInzL)d2So2UvS_&*g~*)&vQ2YJLNx7c|3pYb~Zb<1o=I4gYtcXcJhk1j(o=#uuVAK zRzW*iz6S^W2S@%>?T>1otb<%|O%&XZapSchj_C?wtoteH`vK8l(EpD~yVE-SWBbE{ z$TxHq0(n0(d)xP?CF=LB;Qqd>`@L`QgVg+=KHO_~|L}&<=bDq-gJTH(TUK&>zj=X347WKPPst`}-ol@d<)|`l8kYF9Inb zi#w_T6bE3RV6MUbH!B`pz#;+auF?~2E ztH-}NJZp4BWXMD9%iE>13TUUaFc^L}mjCCI3G|g5*9>}tw%_)S>QH`YDE89qz;jk; zf2+`~>jJ2TJ2yK3%!~hTuOPni|FpzGw^#=c;NR%J@8uPo0 z+@_KLx2D$6*^#hR=wUZLD)JDSC);lGuBFZL_wUgFz(0`;GMTAna7_Fe$H(5^E1!_+ zn}_!i3t$c3ra}5H!Tc-21K4|rxFc&1S$!}&z5tJ{bGF(5ehssvjAxSnvt@Y8nL+oN zu_U(3*pUBb1nV)F6b`UbuD?AMe{Su+KC6Ac7F}#!tp86Bemz)mI5R7`zc>8;s7?On z;q5~0f20P;R)N$J=$uBBupw1+|)$g^H#`A#mcAn*Fi~;`(y@W%`rR5l)pMxh2uP+WpWW`DllcO7~ z5&4e>uy(S_-XUr_Jq^{UUzg{^n-=7AK({~Vg5+Cz*jPv{fEcs{U=v$lf=w!j;9g-A8Yklp+7aKB{Po-0M;M>`|(enF>$|HY3Ie1|p>}?PofE+*U0gz9HFRLJs`LlgKu^Rwu5y=L`E5LqWr3;}AZJ4tT zO#5eqm+hZ(rp>ntjQwGHtmR*Fn+hE8-qH<})pVVdV8_IE;K6<}WBF(ydO9 zS5SP3P<#z$KzKJiAYez#qdka!GG%D#x#=_GaSlo+Dealar11)VX9oG}9PwE{9@wo} z;vL+8GaYUDKA21ALg`=VH$FixmHZ9(?{b6d@9ud{Cs@{4GFd1?as_|5ypng4uI??r2hsTA2}eXd|f2- ztD@t)JS~xhxNd%?ASL}dAqrGjJ-2cr+ z$2F(5ccy;BBJB!^;LK}2GP+~9QAf!uMD}CjBR|S_r38a+mBPFex1~!e{iR6dyK-M- zlx53bFo4#ozCN}E)P2jVtzVl@r4>v2Y6Vye-Wep7?+?@?|MXE7@{Im9!G1pn9Dwz# zcmcpa7BSHP{CKp*_~1eM0N@?`iu5o1qcz|~P?u=)2``$+mLDQb>C2camEN!Y1Fo1q z@Cc{+3dsq9s_UWu0nU$*s!*2!u_k{yIk$m90 z2b&D`>mM5*z#*a6v!mx<9~*v}Y zSN>H5(BJh1dX+m6;$Z-rSOCP-S^sler~hx#`TxcL#_0<&de+$@ZD#~kTmQE$fHgXV zuNPcz6@C7gVE^ol@0A(tPT?hMb-KBG5Ud?dod_X&es7%viy!O2V^+r%3jgc`#y&u` z8yI^7q7krTAlk~l@f^&_`^_>k{eQ#;!2e5w{uhQLoIi0`@9h4o;*a@uc<~*{{C{-t z^TBed?KeBm?%2_XnyV7Q*{xl=osqR1*EbiX^2gNB*NeNSEcy#!Pyy5cJt$G6Ltpt8 zK7p)-I-zxC9Te*~P#Kh}kBxV55OvkD&JW$I3xj)50S-XARjAdW;T~qZa#v{-&%bu8 z-U>7q@DD$DK@i>s^@V=%Pv#49TwfqNoU(dfU!)cQ@)Z1=DNy)F<`X;5viDA-Xrf0f z*XQPq zN_g6#M{)%FS5J-SDc(!!^9>wK{_nGeJ9yB>O3@TQJbYvF0GDX@PZf~IBS$u9{uG^H z)y&q9Qw89@WSl%2FTlftBL*Mrf28+JY~n*>`CpkjKbPn4!J%w-1ELDRffMgZ{{Q>K zBiQc(^qU8uRj+JE+T#(^mtQ#mL;x2=KNDNae(*mf zXR{;8ocw3SjWYJXkAL>^WRLRAg4RRg+k8Vt_v&ag`{nb-K_uBb)Zn51|D?#})xs~R z1Y*w5W_jl^v*SAW3BmkM=?(v_0ZuLv`heC#X$jlq3ieqcGGNXRe_xt$y&&J;GjV6{ zpZk|Z=2Mx8bw5uJCh~kXPVVp3!%IicH1~vWZ`-ca?%8hFp4ZGBofqv6>t7mH_De}n zRnY@BddYNX59)-r_+Gshi(3jE3 zPqb1Rt^A7K@Jm?)F9^1qpud;@V4p)f9vcAUFV_9V!sgx_$W!zVt6vc<*J8lxw*~O8 zHqoX9un)%2ma#hUWt8R&XXL*eka62j?k4`>aeOcTk!LzbHP>=h&SLD$zt_S8m@!|S zAFiRbF)!c~KArODFl(Ms{6Wiydlr{2o=$J^so>Y-Imi_@9o{^A$LL+nmhCC+CG8XK zMeRGAZANFrFYv;|0KXWDyE{ApKfu|8r}{tYEu3mVhek90VDNugB;;YCW%s>@`uB}Z zaC_wcVZq-x`d9Bjw7Pz+`hyeb0W41enm>F1UIF^aokt(8-T&|aP7UT>o%`Gs8NE@5 ze=2mYk(RcMtR)9v`yh(CL}=sxJr5xDJ+Vbtm9ux^7_ZOR&P-hHkofq>&7G9{yfA!* z=)F4tvL68TK(t-(4YRv5=7+aY z`;+cE5di@I`2L1zuNQr{$@TCGxZl|7h8KW1abw?Tuk>){h5KP^z;!*GIoe{( z%u!hYT*+q;>fAe5auA<`*Lkh@htn_@azpXYOx2TBGm*Q<)oBk+!x@&l5*MTrI9EB6 zX~TC64;>xbtlys4o*zB(miBASdq&rWx>m?Me?2iL>P$Zr4sb>CfM3?%wD*B{`OlcR zBKW^De!wF_%jmzR-q<6Bvw(ps|i%zJPkdx}Cgr zuU+In(f_r>U0xGCD@ES-Ddl|wR9jMj zTroR1|4Vyyc5vOlJ-c15UA+0-@a3UIeA#9FNs(i{QC|SG1PwqrN_j1L5DEg6ZBUe& z|M;BBvilw|6rc8c#jT%^p~S7G#~$tUzb`CWr=2ot**2YyF)gC?4LPHAR4;KH- zH*^1jaD!u#K{`1#zz)wk;46dw7qvegeI@GvSIYc6n@Tgc#^dyftU7scu=n6i{WtYK z72WuC!Tv|H+t>NA_;(2fgSAaV%}2!kzdv@tVVykFqYuKtJXU{s`uRnFpD{jv(M!mC zI0Ao(m?{6sFwkOv3v3yL-VqJp)j5aw-wMIvYQZ2Y0NH-=56Bf6uzV zO=7v7I$U>jO7pht-}avNpzPuJ&h}T$W69v&AQEwr$UE>Xiskp%(MU1zkESomj4naN z&=Zs)6>$|*!YhA~a>^6v3wkmShO@DJZ_NRZmp_&zz;*H*uH@jE@-3PbbL?~HEW9JjCffh~;j^P}HTz`uxHD4;WV?3D zX8F+(i4QK7b%389+>|xI^Wu4aYH-ou>HZgczsvf*HwXK-r`Fd6@sqLMPR(~#K3$jk zUzf&b#+pB6KN4Rw^NoJ~LVxiAwSVwm_5t6h0lX|409JQZ|HB73E0X{AcmPic<_rHs z09gaDXXHQlM<2%m*z&(6|EJ}CV0PzdH?L2A!+GIyhh}Uu)9Oou_9Z&}zc6>hE62XT zFUY&9*^S?xHA7XObp4D({{#5~9C84#5Bk*rj0ngl(EnZMK)x{JC1ZH6i9by|w?8RQ z;d|l0cO>#p<{z;?@c-`NYe$bZH?{Y+ugnh4w z0R7SzLQjfks%?uU5yn`N*zgK|Wri5HGM71#8}JR0M@C&y56&!Jil)Lj{FSddBXV5l zjeBu#v?332j{N6|YOR6u@iUOS`g`$w`3HKNb&nU1rT@{?kG-*(of@DAwQo%hz!lA@ zql-deD~8iPo_OVaUDkR@@*U`M*iQO6Yoxh zkQM)0@#z1eS=3|ukMsYE6X+vwr2uE6MROgQb9n#FF~Dnx{XZiWH|FIyH7ybUXRn?W zgBWUn5R*s$=ju&6&E&t<|JTmBn+2sWj|cPA`2F4({&Gw#iEZ=!YQg+c6VJ=BR44WE z$}KtZ{Q26zc)xCT2PaBFwj!QHdg>>H>ACveytCgT z2|0sSK!Uhe&KBO(N5=T)oqa|}Su*%1`d<>8IKVLS91egEphpiWPA|C+s6xJ0#w=07 zalEfuf{So%8~$MBUvwKd57<}w^LgwU1=-p?qL}lMz~Y^8a+Dl~Z=!+ViIgugFP!U{ zN`5UQc>>pZh8mYx*H;R@<;V1bS(GdAz0%%$Gt>D0ecH|`<6#^x?w$eq(4zU~O{oTc zd^5E@FdpRBrWWY0nkPq(40ntdxs3;4Ub6qLkL~%5SO6Ohw(q~9_fRbS4<-BN!{GzR zhmwi4f#0oynai>+?}8wQ+;{NLYeoM-wDo^#7cg@KIfEA96le;@3AmcNJLVUc|Iamb z;QwRu?SJ;?;y@c`RjpOPsZ5|ZAOHM+#R1mM-9i5WiEa?}KRtZy;7I9N;XW&;!q^fM zi{)4%?_SjD{?DISJfB|J-L-ZKU}e8mgOJ`vEUXqx9ujeXvIof^Mi($9$c{kbe^$ng z|Bqb(uqimU&khG4?>*7KJhuOrBKtoS{C{fj)9m;&J-fIaFdU4gHXF8kwVzED_hlme zH)@l`k=QNR`2D z=~8iQsIa_(Vx@FuTNDA%E&3^~lzdYkfNPP%Q2STlwKMxiuU)^xZN>6N9fsj9^1hO) z#{SF_AahvH|6sl^0b61ei((KSQdzZQU71<2Z{S~qF>dSueQScat*V@!Fl4D5qVW{QqJ@l$OX#wkk9(7Tui^O{7g+j?TBd2a>K)h z%Z%1&7Rws){oB{Hm$#d=>og0G4o-H^V#6Os?%Ws);1lsae`>Jb;JmB@_(dc?_@9?( z-z!7O#@aUx{*R9T@0v)@J@XxS2GPDE&(Y^A?pGYZb-$vY-%Iw(1IGBL8V~lrs{v;Q zp?4+z|GKo!?!4LnD+Yh-hLeD?EpunI@s0BNzs5hcOLvIYa$;ovS>Y|mM)%)0BTN2p z_{uUt`=S%ijRvrE7X?^0(tq)MV&_qI2U;O~fWL46R{4Qo;&{{xr+y%wO`;>N3fjCw zyfp>z0AQn_0i>7V8seWSK~u7tYMI_D{nZnL`C2@%H|IIro=EI(2P*{svxetp*Pn}< zJ=^EEdt|r2uQzj&`+LLa%EbQ1(PJb_<-qaIRl9Hitw{7%HEbzFuaeS5nIkPisZt`Z zP_&=5jER>ED3Rl%LW|MDG%u4w{p0AT^~KUBc#yn^nSdYpSDsiJ5Z{Sm zMlqK8HBaKaunPxb_MJO)D0zoo6mkOK4a}#ru^^ZH%Nd6c(6)9#@nX*LTYu&G(DyNS zXB_eg&efKHW4$CbWS$v*XY`%s@bNRo%}cU53050$LO!9AFF=V9V#-o zprxR`Kvf*Gf7ts^ZD5P||G@v5!T)ldOx7d6V$NjcE?M}~gFfr^|JStu+0SR+jOE-| z{%1y~IW)XruS5c7q=glN`o)6(#X1XsYD0zprSo3f1N3`X-Gdr`R1n3Jw|015t!{=F zp$*`d#QK*@&dhtNhY;)Fup00tiLsv4du#vrSo~iK@^6atzb{(YAc)u~8U7Cr9~u3w zIXBBPHfh#s9>`t}J2xA3b-##Mp|zIQ2=d_qV8DH+ks44Ank1C2Rfw$Bk0k1)WYJpq zmu|T1L#B+6Qx1SHXLUh0rR8m}dTITkO{LTsOwQe9{@`S;!xpHLk92>KgFx(}JTi zdwMXi_=_tu+i(Unze&j>|8RB$zACchwD$Gw&F!V_SDPzFH)Vav^20wR`}d>q0NfDI z(<6hA!~!@zwLtzHFW=ok;N|ha%?UlDV{aP#ACtJiO~KHf!DYqq_2**^?@3I+x;{h)soM$ut>VE> z;o_fo1poC2g8rFlpAj>2;Gb9r$6C<>R*UxW<%x%S&-AZM?C-OA1~7482 z8X{i~A^wYM#}rsp&biVg_e0wU>9kI({5Gb@G5ST0JVBg5%lrpz+@)#(X@QsbPnnOT zNA6<@lsABP#PHDo&^@?=^1rlyYzH;{lJ{Ic5ib`JgxG-4ej z<71T1`7M3c29O7;y*med<7|8Gm|wslm_P2w^=JV6=L$6fb@iG>pO`$PY_9sQ_>Rw0 zO3>p^MhHAm4=0sHR-L~ZaP?%8o-^ETw0E;^dq!f&A8J3=uG0Q$^v&d#OwNpaGiy$+ z8C)6Z^GN9M4TI11zma{x9}NCJ7POxcZ@ZPRHi;BFIex+0WB>0N%C3q&`1G;q#We3h zzkUIwKX|VLzEHpOUi??}4{8k)ao;kTx%1+Id~Mnx8b>r9&-_cGH&Y3i^|_k{`|O>y zUiiWPe+*z+dVWMa{+DD`^Et`K-#7hdzrNW)=j5~r-k+EMOLSg;b$jZag z`>SdX-g_z~Tdxql#~x`&d@BOKJT2p)q*@@m08h&p$Q9ZmJ*_&2taUhWV$fSOnLqaq z{w3P~M-%&dC|f|F9N#&HP_`c;N8Q*$v>&&8ymT zvX<h7B{wNt|*A6}yAK*jDJiTeq4i@XL+q)-n{-1~q#ytP`vFZ4+RseX^14JWPK^)H2>qNOc7t$`6@v4n zg7zi4okqFS^5F<%1FevIQTfP~N%%4ukNJOS`PK}@qN>4l*7^!v;ClQy&qVlPOg!Ea(-wT7LB6>0 zEO-OhXY~Mor$<7H30MDsjkSZ8*9QL|&Hc>(TYf(J!6thFZrIr*)1pOB%BS`I3kzUY zvY6hJo?o98%|`{7x|4-b_DM{epF(`@7`- z9?^}+M%q8J{E*~C9Fg3Dxrr>ClzzW9_Qsqb9?fQ2I00)1$pA)k5dW{4*rIn>e{RtK z^+aDDi0=R0)ckruc=E=>{f7TBT)x@0{cih_tonaRa{hlXeD84YXa@Moiu3cF$@ju5 zX9X}d0OLNal(P!1I_#K+)lEUOM}3CsIEvok2Ot2N1G~^Utw@cW2l9<87R9ZSV=} zVeyWGq4ygvtsWHq=^MRsMk~_7sL_7VXgpIsXN3dKE-tEF!kjWE@=$pub0?zZDa<3^ z@JYL>xI@ia{q^oV8=oTDi+UjWUS=Pt889l={;eL=uby|l-(Yyr@ZizwnjP8;+iTiy zWH*pe`{~gGktdTgFJFxAe|2ntk0%E3z+mgaQT?-e-$hQl!q}Plf<_(=z z{>C7HwLcta@L-(%Gw}J3eSz8mpdQR~6esXHH2}Q$;va9m8o)ZioAUqk+~+0H0EqwL zg*OtgO3owuXWgJ5pZr>B`TrgPd|7aKR^k~S4@Y}lBmII$~wp&?}mpG&rJwfcL> zRcRA>hs1+Q%|xxMxU#N5;z93HClt@U(X%;AwD6nfm;9pt=G@bNa{ns!56+SFV7DZ> zx;)>J|AVFsz00AHepTm(_yO0*HP9A@dH=_F0L&;P2N;=77E(nX850_aJW3x0pNsny z?;?)JTyS`AxC5F58W_JZM>VVP3uaGDgJ8zL;K4UFE6lXK*C#}4%&Bv`;MLq)e=436 zBB$WrT|kU#VpV~AynoaJST%HW+;I8q2RJ$Szqb8q`|H$`SgrYOs!OjGj`%O}K3^OB z-xd$Rrv@hv?(aX-dvR)kyf26Hf4flctf2mlLD8L^{3rge|DJqUBtMxv>d4}J>;upX zfUa-eFYkyOqCJomM?4*=IL7}r(bsR!ab~pql{)l`e7%4x<_bIx;2*1im3oOB{`PMl zGlSCirIzU3iDsM{+aKv~hTaa5%B;)7BZtyu-xWLQmiQZYj{L`7p_a(D;aTK1QRS3uhqF`j^Zfp~ zgJ%={|4ckD-%8|f(cpW-;QYPW^XFU5GYU_DE z*)Xok;eM5=1Lm|j&{5@IXs_z9%XIi>?Y~;S9>B8RLA27G9dGDg;Yy8}TsPPI-~l9q z_>b}VlSPa+@W;XL^WH2VvH*#Zh<`W`+P^+Y(aqd|Vy%BhFA^OK^8fhng4pp6Gt`lvx~|BV2y z6Rf-;=${uYdS>K1E9F@QgeSn&z>|V~Rt~Qg{IfP-a$5P@=wIizyT<2t>%@a;jd~{g z2Gx5-n(r6AeXnk0Xy#jV*8Db+_j}|w_VnDXL;sOM{qdb-e`Vx4JAhLYoI~Wx1>gY4 z{a1wpoD?7FnVGpevU|}r(GjMm|Eyg)+d^6VgX#0c+HygIRG*rYN+_HIc#R(V{fYWtAk4| z+UbRSC>{(}G(efGClQ)c#ua*%c}2N!1u!wzTj4a?$tAnW=H;$<(dh}2QYl-pK=l~C zZ%faY;A;NH{N)9IDa{wjo#=ryj}`z*(0stZRfEv~{}5XW{3HE;-{GJ9KP&{ZfX$08 zU+NhD%n+Egx;dCu*6ZzHQQo0?*%U~L#Q~29ER)4 zmr`1Xe3_?1^u)ZWdK&O=xv4x29#Hi_Cr5VNKD;se$Q_-0(oeR{LQl0%Hm5|UY?!}4Kx{oz} z_`ulL5B`fU_&uNSiIWfO?%(*!k&xTx&huiipB%2Sawq?npO6320EoI%QIqUEGXwu` z_&+{+|ARShNbgVRw0P=%9v!)UXsm&KqTg%J>%%)Bmi%G)e((HpP$WMZJsjZpNO=Ap z9eW5nAFbfXygNK+^J#84!z(*&08QcSNdM1;Q=Xa;g8wbzIbh8)u@a)98$_SFYU149 zRsFZe>c{_of9CzCk^gJQ_kYOnm$CkLj-Te@RBZie^Vw#*=J3&_;SAJuof3Y&a-JG= z@9Ge=Jf1l;%XiQX2-F|NcOV8jk@`d&^rFP4C8Y=W`#K@hP>x%sRlkN4F+7V2#Yozr^;xZg5p%(2u1i_$`Aa1~1HxK-Y(k zUo#*7ROE|8I@v|G88x`atyZV}ew7^*b$+`q+%^ z(D>{3?;?V`cbb9z`vW>}K6?OQ*CX>m``lpt;P8fhJD=Y^;Sl>|PS^t&&;LI8p5OM) z|6>wqd?@>uofq9=jqs_hV+j~VnHf!ku4qwuP@6Y?nPnb97 z8g7Sw-}~@1m_PMC(awx=PhRB!g?~H%YiB2!$yo=ySn7aW+5RYuaG!S2{7d$c+b})) zRq{^nO6>2ZSOQ;&G}>$M`u&^RX$K0!>3i2BQdXKV;E0AH5&-<;^*)xq4f`4WEY{Ua7Y_AK6l$$9Vk zpjg>|)BZmta{u$e|3{Pib4pNrbY$`y;>S2UT(7aw{$QDk8W$ONY%et?bFRin^$GM#-EbK zO*{u~ZUjI}9{Pt8qygwjng$in9MlBOfn9JS^_e|{hNzrFkJi2y<D!fsw`$`MUlwKI`Bj+CT2e}S+7~A>f#b7+}btnS-WBr5w zwX&Y%C$TC&pDe()!~?L%Lho+(Y?etr>CDj8B3TLibgch76aV{Ed;o77e5?P<-ivxy z2kUbq-|&g;5^S8=;s5m5$tB;F?tH?sH`=e~udvT|(5LS@PcrF*T%XyF8Dt*vUuO%8az|I2YhcA2~AE9HT;m=uI6Da&(=XYJAlvZA`nP( za(t^68tVZ$wv8=tUG98o_y^-53yNm&haqn>(#0~gYo&$J@EwDOZjDMvu zV+A$Z;Ec|($gdc8MeX5jcn+28_CWq2X8%w9#~D;db6(*la%kpZtRZk;pA_?^M&);W zD|hvGXHyPi3&8lm|i)&X5B>;3K>zH{{UX05COxFh)gY-&mFH9992z@I@CXvQ1OG+=*ZWWWm-in|uzNI*d8t8kNHFf|8}on6zg;Q#cMUDEJ8}Zh z3H~$p3O|#~|DF3QBL)u4F*mHj*DWIytMk)Rl! z0xOyayoinaS(YIpZTV6TbzP<W+JsD-0SiiSkfU}*H?9o98*)lulFMh2L#|qd!_;9bjTIZ*A zZ@xPjKKlB>1zy7X70l!RBKLYz5ga6O`AM*dEMN+;q8hdudi*+FW&A(^e96A8| zc)E+O`|gsT|F`k~z{F=0`@1aTI60dBfzc?y|6AkNI40O<=dYcjug^-4h&@mvh+eIm zKCK?!qqnXqf4ahtp2OSZd5psGl@ElxhMBP^-je+3Tf!@;S9)ML4LO0Y2xr?rdC03J zq4nAL{vVI@zc+r@%cB2(Inndv)83{J*K0+8jFiV4ffNpOoh* zdc`C7hmHzSz8B-lg|ZVolk=n)WD~qY30l7@Q40UiF;s?K0i8mZ&?)q;91}%cEe8Pi zNGJ~W#HjW5`T*b=+|%CrmwQ$9&V@Rujkd4+C+`=(y?Q&DJB*fls^!pI4s;?i2+1JE zU+7h?|NnCr3+$&2Y68kd=mo8S75c3l24jxSv5L7GHzVdh{pb8K{^<=m0{THoZb#{w z9Oj_7vATvF0R9CZ_mh9^8LbzZea?FR;3Lcy2k(7)-d~QvFN{e(!Lws_CPjDLaQK?x za--)pUrr@}BipCi-=?1Q&qiO2Ub$&BfK|d>|Bx8;W6=Sg2ra&GaBu(a-p}GQKQdIi zOQ-)I6utS*M7CZZX-N(n5*z%Fd4O^si(en0(Y~?_v=!6>^bf!XPLgts=0=~6$)Ngo?eq*Mi+RrB8mah+|ye)Ua zwm3Mt$5G)w2V^ei#xL;N-f8{aQt{`R*!~|*<;Bah^6G1;`+@iWO~V65?{D7MK9Jp- ze$srcxwBcN*)F-78_$>j&^nStdMWv(EP)cBJW;_b7QV>jOz4GAywu63&&W^^ul|aJ6hHDPDb&80MZgL^Gyv>&z5ZqQTmR3> z|Mb^`b&$w6cp`pG@Nf2y`u-@~1W%xu0Lp&%0J5+6@j#0RQ{Ia$u&uQ(KPaunzl>L2 zz&IHn-=MYQq0{RsRoBp7 z%{=G(l%)i$f3gAB%PN2$4xb*~(Y!R2b!~D>=C;$5E^$QgKP~rMC>8*jXb(pwePwXr z;Gg@S>isej|By~=MgJ#@_Wp2yGhzj^OP3itpug;UJ%UJg-y!XJFWTh>f0_Tg(R}<@ zZ7tT-Y!IBhFZ%zxB1NYJ>-hIscMtwo%4a?Pe6wo45&zf(|ECA=fr(FtkGw0GKPkP( z%XdiLzazeYBQqYVa+1fux?EQDQ{#&`1Ud0PRo%#zu%8q~Q#2UML z_`%WlQ}g@Qc53_G=6lWE@&2!qip|qH>8}Q0-i%Kf%7K26Nzeci8x3E%NR9|RpbjXe z4ydst$e2g?ZLRdPH6@-%md-2Y&vo(=kRZlI1)rs1v|^8<;syH)*J1VFVnHu;d#wOm z{(G}_^xCtwMX5)BKmd7epq~gLT#5YyKs>QRGJz_8h&&+o1F~AU(!bU>;B711mb5p& zKrEL=BcG51g3aP>^a>4J{a-F8ik$&DC3ck_8s}dgDQca4+GmEGKY5UzO1_iN78kDe zIjby%;zsla+Hg-WVn(b6SUVnoPY$miUDB+WYSM4W%CfWCS7$}}X{k1`W;oX$lZpD- ztOdF+mgv)icMrbN|4Q!Pma2ApMuJ`v*>!t-f?EY49OSZDA=@lqv0d_?zlDD} zfcAe$QuxG%;UweiAJ_j(kEVP@qURUKGG8O;2mhe6H~h22 zxc?R5VZ{0l>--o8ME@tR;gIMs)G#CF$R6J8$F)lS;(ee}FEu{a%&)HKH`^I4fJ1K| zqg!x-X}_L24a>LRX@1n)-uy?_{v4erh^*s~;z6|7D|&+3papbfa7|or z)eiqq9&%kCA;myJqE~8B<{)Lb8lN2WTzV!~j`44XFTWzIl*S^Eyg%qrPNe5dtJv0{ zWcn$U%dNVir-I}T|RqqcDNh8L%VUmu$N>e$Z>ZC1pSo*R0bhB1eyfC zKYagGO{*P?;UDBBu}aFLVr%pk={}bKjN364*3^yYkN8EqXU4D}j7*Bjx{6tZC-YQ5 zxwGT*;*)b&{BwLa^d*sA8Uj7AKlY{gfzQUfY7NpS^!{20v{rP>ONJ+mPRcHlTeruj zp4{c_Cz=zZS#BE5a^X}0`b<`!-xS{;JAz#?_*1{_uhM%*q!)YO?UBF72mkjb|L2rQ zPLN8Z9xs4&j~=WvR6pi(#RC@9{6#;ta*(C0iJ|&mc@xNxogQ2Hn(T}5&R89*bYA~e zf<|iQv+jQ7`FIEUlk&ghKj-{4{=XC({GH)f$X?d{v8(rMV*j5LOl~CWU^UK{QI%gIog67T<>!`}=y%sS1VCr@kf_6Nn1WnHK z#0tn4|44u6M%t0iz&kC0Rp?hMfX_u?(w-Wx-+~VDNE`aP zpnqc2e$TbgcgcOPDEnHZa3y!w{&)2{tJp`8;CTM2*X0g=#_Y?oW#n87{>vvq3{eaG zIi2l*<kR1MxX|4)c#?wsi1TXcL2 zKPLF6Rq#(9A}f-xET}Y~N57=L@*WO`1pv+~{!ybY-{(e|we!L&Z%HNtYXeRW{^3G% z)1RMA+}(Sme{rm>C&O*8%dCGamcZiC@HZMBJ6wPC*5=0c-?LJC(EcLc+8a{y`&-Eg zcAZbz=oj|kDjuZ-Iq8Wf6?MmBLH-P%3dT5jPN-e*Y zzD2QKaHV|l4(>DG}VxdoC`+rhKsILt@ zg2(~**OOo_F)M%JFs_iN9cIJKWGe{aU7&AjD{29ZPjAOKznS@SuD~oPWlo$|<`TUz}Ku;M}NH6_0`YawUBkALCi9=g9oix_2-;i2MpIq{+efv}Be} zjD9itbhApkPw@ZUc8B&4qc6uUm>S*aD~UsWU~p-y(T^nu=&`~6gLC_D?R_#{D|CPI z+)hYD{-La-du6agr5>ceRlDT^t^g>xs9ikH5mqxs6TqehL+Ia?|7ZR$_5axC>*!P; zxF=rvZG!!m1exp)Ld9IP@<~CaRd}e(?>BG&`~iQB{|93Gll4RFZI5{Rw+aV1D!4o+ zdiWO6J@8$E|25~gOGQ8N&pp=2?^O4IPr(7OVL0eJy+_Z12k77Ay|%wxVTbtsZ%(z; zcZ6TEHURt|nK`^X`+fel_pj0azYyWLSSI{=v*Fu@r;WbSJedrwx$U2u zLAzLcRrAr&r-xg0XjcP3^G9O)jMV~o_8`9GyRrvb#T!%_K4*YyWhImgEsk}|q8&7B z?}Y~oi4G3Luhb9DrSH14UMsZ(s9Fi>*`i54AZpYPT!n+RVf_-;E-hFC44*ydCk|;Z zc`aMJylVCoG{Zme0T=_UNPty=@FB2=AYKH=%$W4pvu=tEWyi?Kl>dy)dgf|1A`A)7 zb&OxVMh*#20slM$&h%TKLCp@>Ru|Ck%8ZLy=0#r)XN-M*YAUqnv*K(IuXHB)O^(m+ z#2e5MSD9}wVkfN`@6xWrFAwibU72OF58x--{z4bDvzv+0Ua>o$n@Yep2mhBu^S>ie z=_d!L4X*BA*ZV?fc9&p>s{5?T{cMo=%0$DFn{WX5fRQ`&fCVFA;>9(8;^MEZfRg|0 zhbjJ%ylVz$#|1fe#!I(VhxJL}3DnWxH?#n-xpMdbc|&joWHq+HU*rF&v~o@tK)_#P@eyVt_x+%Kr^x{m&bIdbE1` zvqb-P%5s(Ev+Lh`nv0XCy-7zku2@y>Lu*Fs%BCz`8k`xOmjxSsj~TtWQ-j>c@jt61}F6;XYEYX9yfu7AM{K6)Xx8Hu$swnj^MX3se8bT5vw1iG*frMT{lU@ZxL=ZtlMNo<$B1J(!5CrL=3DQw% zih_v8j*5!?;Pu$fJ?gO?@As}ZWl+XGOjq>R&WCD-nRVCckW@(U+P_hZ_&xoUwt|_J5Wf^c!0J|6uU{ovZ|QfA_)8 z%fZk5_|5wULFXo;FI-mH z!S81EueEdCNwG3M6~5WFMK)GBQ8{vh(bVFfwKwq{z(4jsjPS2nz+X-T4&NXBe`r{2 zhtz3KECF`^IX?KLcC-SUgEcw9|AzT)le7tcV2!*Zqfh)}*U%0>0 z%$QRxC^U( zZ`nUJJAR!xe6*P~`gF5(vr%(!GrieoxaHs-kp|az(5}Ni$3l0M4+$yl49-hlOKR&g znru>gm6}w~VJtCY9giHUrLbnjHKlPb62~9bD&@#BGJxpUCZ-;s!{3VuI8SL855_ah zFK`U7*6$`$k9d8tk(@#M87}~tGFWLm|AT2501m(pF!o0*0Q}e9p(0d9!e?OIz79*K z*7`W|s7x@nWAIea|MY_WqxDYzJKItAqpgMG!g+BS{l_!pvvasWz5UK-Ja@)6WCePf zXF$2ti=172;BR<)Mtk|q{686Bo#20V|HA&BgQJFCL6c$)LF8-WIX;~#KwBG9sRpEY&(%B zFt2}Q|2=~jhyNMN?51Y>Ym&K4Opm9`fV*dM@)~sz}yc29w3&0H32VihA{$;zvcfDy;-#gq?})@Nb`Sm;U1SyGOS6W-fw3;Y>&7jo;6uPO`2XC6&ug}<1NP1Qb8VBGBXcw1u%sH7AhWvKMp>K-*zaxGrD*?W~_t8WEe-Rw+7VUXRM$T`D_ka1qv2*l0zOp_5 zk$|xeU`A}s`N1n#G=2^rs8LzNYu%u3ogfa28vQ;qG5QY#HxEYtZ`iKO$Ex3~q6x0B z5ZFZ*?O!8;FaiEMWB7~W|J{kV9h2h?sXMEEv)bRfVS$r^$n!D+NZzlEvUc!}{UG8u z%U#xN@jr86&1C?y{y;miK)J4L9#=fj`ZptTyWIC<@t7V=kDU?w|D<;G|LTc3ot?Vd zWrXDynP6EzzZN zy*L#gd|N&?XCslyMp*)79hBBZ{`Di(>T-zhl}Th#?*e_RjKd??zG!15A1SPiIgvQl z|FREqTX!#O0i0S(&SB)AJwC|-tW|nAV})P=JD72`vLCen#e&@CFVx>}MG3z-vOr!D z@jvGNmQTVpTI=Ayn9Ew(F8hOai+W?Gj__*_l$BFGZQJy5oPWPoFlaVq*%shbJ?&f$ z?xJM_lXLK^wpBd^m=12M{-O=VH9QqQ%izU5#tz{EGRDyU8%F;hn?2?KIe2xmAo_o; z(UGI?HSZm+G_kPzMbl2!y9_>ly%&D>c@6H<9$HcZ( z!-F0p=!^tt0idVRs-VB-#5jJ27i|;`{4;{KMKmli{dICR*P-3l3sTQdp3y^zGj7n% z?ZX0CE4X*A0juW`_h%12bAr_WL;?O4|3utarSr&G|LhpLS+xH;x$j$||1XL!J}0## zUdQ-9_@5F6S--9K#wnQ@1{uCH7QueCL|*{yU$Y%)xmMBa-1Xv&Vmz20J0lSQ zRvS1z5yAPLgS&fXeC6fLw7MgFduuW-U+FEL=W|kj?d%e`yD}2E(9Q?N=J}Jk1`??mPXlgjXoh zLl>*bwbwx>X?9@#W(^0FO}~o;dHgqy0s%i+KBv9`+qQ!?pZ38c8Xx0=8~6 z{Kmom;r$=Gx(l3;(}-T^Yb!03=_VfLHbb;wZ#}8!csQ0W50b>f#^!U%Pw# z;Cjc{|LDz=f=$-_0smy<6PpKL?xW4B!B_wuqJQ!t`v1H(?#KE*jQykiH%b{ZQir4C z|6kHZF*nV3jQ_9I+74tDv#tpDU=8r;`4#_P?QhIdyM?iT{%8-cjt%w`ZfYhy-h4`S6B4HjR@A|54?0GL5MYIh?C$fdf$cSy5nDJem+@KeW8CL~QS z11aL5TuVa(m7YX`xgWI{pFz#kOll`(vvjoe2E*XgqrNlxhmIz;j-?Lr;3DxqwxD4& ze0Im*sEHn%KK46^)J~xd^bM$|RyDp)-9Rkg)tU4pb@3Oz z1!~WXY_RS3HPv1wG=49cG@b=tv=-5_NEMI zM9?Rw#=r|%FZkc6%`g3O|1*QH56{moK)-2r8ciPk&+r3-t24W7>HaTciQbS50A{0p zDH`hDtOPo@dsyd@_^xCCpOV~_`!h4==+^%?)<=vF3~`V-0|#gY%LNq+lnJz*&7dd$ zZ+2_VuN@?--Ovtdub=9J6XHfVI;OYy$AVX4=Mxp|k&}HFk@m7_gVj z03*n4!~*FR_5Wtc0DOP&|5%~`XSX>3tRi?%R{ecz_t3EG_cQ9xnrn9?+WO~={%_sC zwSP<2{rF?E!s!0&)jX%^G{+4;G{f~_f z?&}^{57fz74B$wFfFV5l+KH%2pk17!?gSq&1?O@$kp)H+TpyWS!*RwB77XWtf9mNd z!q~^B?X0S*-9vkf$9M+yq;0Z^JOL-5d(qzN@9K5z5n{RH(ux83Z`ss>XTfvRI&)li zJQgC)DF?il1<(cN3shzm_5-^CG5=>~Jb>M@v&@Zy&kfJW{Ic&i8;{l-&1+s5Je=6` zvi)C2B5!Q*e^2HBd?Q@2cyC5`e(--vJb(id#lAgy`I=yA+g9cs{el5NjE7#j`(EK) zyDuQ%F(x<@49_fp1N$^E@2 z(f|MHt(+ZypY8u-utnBpesxx7eq+Y}UmC7C+;wnWMs3%~Geq~}%^4XgY$74%d8ldB zlE@m^RpTI^g?{8jZHKgp+_K-%%isq_L34p_+g?;H>N_|I_foa{b@NBV{d$8M0>Hmy!CjQkl-2mk0^aBTiR89uE3d0zbHyJK~1x)A^D$~7hWm^?tx zPpr;0fQSNsf9C)!ivLsN=QHbPpXm8*g6Oq!4WkLuVhy}+;;Q^H0ti~c|C%Wu>w%RB z;TZHkyN$E|50;8!f3TNFjS64`z=PU1hY#7^=5PmKR`Oy>R{ z8}0vtcFk3GUHE?H{!EUR|3iPp;fc+%qdzoPHODk-CG+=3gJy7AtTtBt6910qY7OwL zK`U!PJ5G#jC@0`n3?R{Q`F7tfj)Dc08@%3J%cjNCC(f?c%@KO}pNnfK{nIHL8dnc+}3IUUHCi zQ1chQ<&5I^!aNA4H+&vERZ-8kvV!;GZup8df`I+x+Hq@Vr2ocbm|r?Pw7EF@0ROYu zb@W(s=x~|j056{mfafzFbwe^z9?tmR*OLplWN+*4Nu6&;A0Luv)|tWNXM!AZ=h1%H z@5c5^?)BmEv8d4KoB zVE%g<_apcJk&FZ^meIc>vpUNm!>h73`&Y70^A645hDQu99lVg4f9vPh!oShn>8-~P z=8-S-b+Loq<{0^Mi}?}E4%D(xXLENf1|kb)`sjhH zd&`!g4KSJ(4DIAP%28KSI^}>|Y=GiHEuq4-OlN=a9c@%A>j{8Z+M+!{IqH3%11RQM z8tL&_ayHL}CqzH-l(h2j24qJ#!Sc-{!cU|Oo?NX0N*2(J*pgTGj~kpioYS0;y=A_a z2*7_fw+y$-UZAUH{hx2f8vSJOe}9t+{t^ZAn~fK%yC>Yg4socc?HG~ zrl&mOmK%pvm{Bw{HPrhbw-&CesAhQuU|tKLvH|dSc1#50_KalSml1$-TMOW{tVeKe z=gRIoWBohYdTV^H|LDCoI{wW5euLYGk7wrJwavU{>E?;yQp34f^?&DBZs6ZoQe|{I ztIKsCkuZFNvf7ms(TlW{#2~52BcHJokmve_?@IHRCX^E>8%a`fDO-zKWE;2QOiD&F z#iMsec0srY-^mIUXW)D=M=h`%z$N8y2THcC{O26lh|<);=-RT)L4|YqU=4a@>=kep zzPnKX?f~XMGlzAeWbqFx@*DN!SIPzdTI!&d>-ohi;0x<216ZQE*>89cI<;bGF$XQu zX0a8tmb1h@Y!0679qwc=S!a8Jn)}Q+QwBgfkQBYek`?oRd0jhe09@KXXmDKi0^h&c zCo9ZuHJUW~?eO&MEWK90(|;)=(w~e4aC>~yZzezGvfgjIOLjN!+z~7u7K?d7vhvPJ zTx+Zew}=i!L!$GHd#m|tEKrT;XnDo|iI?jKY#xMxYVZ$R;M=bsi~Z8*$s2M%uuiZ( zCBM1@AQ4UQzk057{*P@0`L+SP!(>MO{8TZHYVoGAGu|5C|B1u^u8v282XJ~;BfYG1 zWB0wm|F;rfy*1Il&nNeP`S9{B{RM-6B>Mle?9RM&R{nVJ@X5hMGJm&--^MBzNCXG+ z?YwuR{>X?D_OBYIBu!~UeoA7INU>GY?{DZSBIbTlW-Ytq5jj(HBYDWaGN=|8#p+X$ zFFMd|%4}h-?*Fg0tTArxI7YiRZgB{us5y<_Ve`WSXh?R!C0j@q)6bS8@B^?dD(0rf zEq`5J@s8BD;ubIfJtg1JQr?Sxbw4!~myDQ{Rc?9o6Fo%_tG}t2sCHz&d@9eNEaNWb z1XNFtpPGFKGjTf4oepOT`SuwuL!z~lgK+5cdFpWuJ1=I~~x=E{sUZ!+4r zd38KjB^#J={e7aFAI+Mb2j_jQ{z){B93QOo z={XOSp{L0PCi>^PfGaM7|D!YRe^8tC&n~=ETitIq;rc20vXuYsL>j<9tTU~>6Y+n> zFxXiDJ^=sZ|5I1mNGpl~9L0bE$b~fip$EWOv}SI`7(W^OKbko}7bFMpl-%)a6IXR^ z@17O=|6AeO+mrkMTr$d%i;A6RAG z0Il}&*s*xP4mBnYKn#I9%39n-`=Inc-xw*e4sZ+@q^8$hYj zoktVTIwzPySEKzH1M?6SSo=iJu>lx2_aSTh#PMVXs( zPOJk~ARq@}dah<&QS*%4S!8n91^Z?^{|Bs7cPs&3WijG^`Z=_gbHx9g*cqS5eBaN7 z1ul&Dg#Q1=#MPZUg8%QuzWQ{cEuTuH^{<)x^M?Ks$;&>k86@^UrTO*n-r-7F_4DHy z6yIv%6RY@H3h5R_L5Nj8oUC&e& zLVCy7A(fy6Y>c&&oB;kTx%_Dn3SJ!v(BeRT(X@-=pITrM7YkvtfLbDF=yGFdWt~$# z_o8030K2{B=u$Ik0z-)&a7syx(}R{`Dm{EkDwG#%fqASA%8={yp5O)AU)GQ1FKV|` zZ-RTU$^F1LTt=muB$jk~ zfA`EWJEi$#RslY*S#fmo=<#Oz;jbfU%Vw73PlEf~qyKM??*D4`q&O_=fZx*jRYtH* z2`WF6@$9n_KS#Tb@n2(L=t0*7a9t3+e$FjRK+P`)z#G{A;NPg5nfNoKwLcb~`AAR- z{@ve?F+zNJ`~c?Gupjy6VHt9Ou>Xw!5*OUAWq`v{3M+oF%Ga#iVQSFr9>OcfhS(|X zxiwk9ho=;3%=|y_ziR%o78&t>Vg>7^l}0+nJlHn!uP>l?Ks)dm81s`M_?4AIj!een z7qe!{?eS>NP6Y6*iI*mB?A#OkAN=2!p1voM)_?TY$lA>F1{V$Q%+Ac`H?M1cJA7cc zY0~@LE^+=SiZluK5Q z6uqs#)8M?}rOh+VIgz!cN2iT`-<&sGYH(oWY*O}0{dQKSxHXdbaAJVZW*>lCvI@YT zV*9@<8u@cs&*F^MYR1x4`+?)~kFkPT4?qiG9RC}0fO-?gz^-QeAG@CMe?%O!A zhU*eDJ3sMrv@-ag9y}7~XWVc7T+43S+vaLk>K@PkcMKr2e6kbRe$oBxw?(EhUIjaa zIF7J#%9|5Sd`qx-e8vVqF6({qyZ9%Uc}B}T>*Z?4DjDt2*5^Nmd4I)yw9t9aARnG% z1%yN6`F}ZcrteF>!3Q#b>Y|BXP2Aggp!>ds_`fywKXd;!%*?-c557G7VrFHW*fh=W zvg-E|!)eL<-8j}iBe(4RMUD^pdW}HPja?&x@yP-@ueU7fQg^ zCk_Z#TY}64yH3swfGr2-W_P)N&kB@Rt2@&jiiNAhQh{oRq{;p6~+ zvG?ZQ-Ps4=Z|w-y4H?V2Cp0`4+qW5z1cm$^#C0I$6DC3#s40${CCPZ zbE1*;5~eJ~KjR4-C7y9ZZ1YocmV1z|6}&sofJ~$fQY*@0Eizijo?c}KX!mQ$7|$>d z!nPS9;CpO=0}^L=E;c{Wj7#GKd}3mv^F-$}vH!mto@MsWr}A!)6<8naKQI_JKg_-i zd&T?z)$rlr;=`$f)04AB?gmG#bXyukjikm=;?+FJjyMuO;D!-k(a(E)LgELo3FnNX zduph{zp@9;j0R}G!avyIYEopCyCd^h+2BxJB_2TnpE*PzIvON^bIPI}pbOo_XYr3j zgMK6!$u}b5s>EnvxrTch0pLEy0<~OV4Uq#*J)4?P5Q#MW z&E}>7&&~-y0s(=9z&1pJ!Ey+jBe+ z^gq)(A*%pA-I>T7p!X;C|AmZYzdbtBh&LDz6}*zoj~~p)A5j2f0FH{+=or>B*1zbV z6a0c+?0=$euEeuNqUH<2GpFY)NAy{jlPn?D`dlYhvll5lcfcQH>Jh2ukF!@v9nk-~ z#6#FF2fq8}?OAXM;{)snZjr>u3tT4?xU0BX;Hl}}r= z_d&aVS_u3m59}4Y>8b2L%4o(FS&Q(ViAkMrb)N2?9rS-QqpWvi1%RJs^nYIe+x_1U zwru{R`9iZ{^YZW~!~2HKaPr`t@z)r)VHPQI9JK?O#bXuwXdvW;Po;H`3O#tF3b`5| z#)8ZkHhv(^)cxX3nJFCOA$ulP?4tM=t7<>d1rEd^pDm$q4<5jaNas^&G8qf}QI@}0 zW29cx>Nlgc$>t@p2hPl*G2^Jb^Ko2(Gt3ntN~j*CeCvpHK-*|@)d2Kj6M!=A44a7k zLbdio)k-EPe?Yb{+Mr!VFF2n9G=kpJ?{F7&TReX?$C+qZYi)pkdTfQr&=LI=2Zs)?OrFVe$pKtqbkS(rY>a&7;DXE!nvzujz7xH4 zWAf5JmHj}U?wyiVfWFpwRp;v1uJ>ji&D)|mSvl9yFXG~h+W!?B#~OBB0OtUM1`aSI zme8nM2YJNwvu<}7gKO}_w+h4Dl}w}4f+~?s-XFRCj1+7X_Srpt{cf#x-zJ~Q>zfj7 z%^y32$0i8=w_jKNh;5^65EFavKg^LegvxC4k_(vx%ibFjN=lb=nYX=mBa4Y6PEjs1UJa%#72k*vgnXKetp;y{G? zu+9u5u8(D0cJUbhT!sE8lb?(sVh7I8e|PlcT^XI99W?SQ(E;*)StW3GaPQvRJ7;8n zPOg~|{9~)5uR(X#5D5O+!;|P7_(%UUb}%{k2mLDq>$@htaC5Zt{<$wRieVArf8_jt z|FzrlSc|mw{Zz-xckrHe04+oJ8`GTA+8i*O-|wEhzx#v#$6Eb=bv%K+vii>}-SZOl ze=hp}!B_!*$;y96_NNby9bVM@JTaN3`PJ~h6aWA9;2-@rwb6ff{nlDnKPW+>9T@?0 z+MHm2QEBG0XCs?jf$V`C*TF4G(z<1qY|X%PuU)jTa*4z(ihuPalEpj96+hYmNTE_J z>M0+I<~&NFjvS7hs};2@lwj^EGdc5)d&_C86pAiG{*A|hOYVh?YkP2yVl(#@GV@P+ zo-4&O_?HE}EA|NOF|wilr;hL;Wzz=EC^oRyL_6njhIS9w*BYR2;85;kPtr54Q|Ks$ zb_pH=ZT9KepD<1J81YxjKoZQpFe*x|%SKz&@?(5Q>yQ41t-$~O{r~K*G(58TbM}~d zD&v25jV>L%z4_kYvE&B5Hmd+Wxo{59of!#us`tL^1N5iP^ke{iH28lkajc_*|B8U& z$s5VT7B(sX+R^2D0(b-X{)H0}Sy#;ts=+tbKYYRL-+9rQ55xmFAy<(b=-fbO25uNU z?-cCrlK9__Z3KXsx{U2J_6NErEyVwvwm$eLTc{#PPyE8nqxI6#?b2T709G4peZ>Iv^z{ee3g$+*V(6A(D%MPXF0-aSnemK| zPyA@&_|B~EKf9MEw)%yj|FNtB(2KYBj^zGbJG`;^Msk0KS@(a*=APj<2d`wd_WFtZ z5&K&!I#>oM4WV{L%8)o@2$>UuNa3th%OQS{cACVHQ?sNv}`unm6};A^uQIxKbl>RStTOlAc%e)5|2^J6s{r2+`~S)0rhTyY`|jf1 z*&WugWiIO#nNL4A@?G|@-Z5Tw;UBb{_baB!1i%I`13<>$Dm;KKTEE^oH{=a4n`ftJ z_vB@*(>*NQt+?+@2Y%T=X|0J#`pF8R|?Ko z&7I$wd)yF~VO22j&rT!6|Cxyl6Jb-#Og)Vv)EdBgGFtrl{CfLk1;97PIIszJ$(kv5 z2mg=fPM4$yf0gXt`Q7Exzt4qRA5IUy(tB0n`xo@j8N4ujtogU*&}Ok@|1H~mV))qL z#r{Ew|A~HQ0O%7VOUA5}9W{=6Sgk7l)gG)vVfFymfF5j4vf-TzPy7svn%y^9dwUoQ z06ZZ-NMvaxBulNW%yC!mYz$q!wvo?p zNcsL{1&M#HA!@Q|?$&uK<7JOUk6o6$nr&P3qUH1fz%=jBk4D6Z50DRBK7cj=--;9XgZMxA zXI2j*ZjSz~6QB9AcFx=z@(tSGJ$Ugch{dym$1V$feTJS!($91i%y#1)-4cGpRE)tADv52lBI+glUkpGicn=RK z&mgBbh_bknwK~=K*aI*fY^DW3+hqgB{HYh{gc*$g!3y>e2&UHliVmeLzTv(60;5s7 z-*BBR?2Nuvd$?`Iw0tA?v*4&V}r{y!Gq zpIv|+h>Skp`&jQ)y>+t&(3gUiM{``1nZRblqUk`rF@4!Un^-1r^xwQbv*Q>I6f>-< zfn7a2dY64W*!{!Rzt>An-p7+OcT=+e!S<|N16N>SV9oCk{O=qV*e3TSa!2HTjbPQ> zo-zJmqHTiydAXL^d{Y;C2-x@>>nF?LhITd+5dg9XCWkv#N?FWAW>rGg9a=Z{)c+rQ z09pWY02V-b1B>z@-(eT91~3_b;{THqf10?d^PcXuv8_IzEQ@zd2=i-r#}E$|m=h_&*#_nL9ptu);ItlV}8cpr-UEa!!0p{qOTvX26m@ zuq=QitN)v@fNO56d(~Q$k4&rEkTy!tz7UDvjbqU|fJZc>ez7=1ZYj-A=r`nCL8uI>7SUHW|u_Ud@J$)t41%4wjX_CxcA_VsnsvCGWGTCEL{#bwVgz}^gL7G6_ zSc@?d#SWQE1W~20^Z-OG<*Jp%sEnZff!3@;q)>M0TWkQZLkS|AU%j5%nD<{=eq75! zgs7lJ)E2a3bI@+|9C(xgWE(vIzBMvX@3augUY7%kEsMRVlb!>=aHXyBU2%mx1A@5& zuSOv0>DmRDe(}lBduVj>?}_595Zvp1IVNcY6#Uw9dZ=)0dGwwvTfJ@RoUbKVe8D&6 z@%xjS-fhlZ^zJLLQ+fAHca=S(dv#w5AYrzHMMi^C-4vs-8CIc5}5Z|O)xX?=P`#&`73 zSRwcJGkM_a^iRw>vque2iof~u<}b}r@&Dg9n%g`)xGZ(~Wk&sOjsL`$zozdfGV--ThDb+aA)Z@X8eU!Tg{p9L8M_Wv&lBby7(!~5VV=BRpIS;L5KXd$Qi29R6OsRibbu^y zrG%@^^xw4|OQT>xXwO!JNqsIOh<|k|7%BXVgQ}yb*9Nd=j%QH=N~1maD|`$7xi>9E zqHQsVtg_Xr#e|?8&96U$x9>NiU0+)Z#g>9Q8Nznhm$X2380&rUC&J}8&M=BV`(z2Y zrs9s;4zxuM^Hn@g%6Y6r&b}nhPNEE3DWCCLSJ*SuO8){@-~i2D17p||J|UQy{^Hrz z&LiX5qP$x>>&Y%T*mihW^OMXq|3A&#(fy;#NAGHW6Mu7R|CLDQt+4>W{}+-0{E6PO zz3sYh?ff!P>~BObpB4R&jj#4MyAEt4`)GADWzCi?F97>r#Nw56t?@rb@23a}UmCAP+?VF$jQ)8Zd5o@fJCf__&P!}@3b53>S|?oA5Hw@Cb8uN=(%**w29 zu1DUV=*I(?lJ8c}wQq=SzAZUG^B39(%TFwy-`oRmR*U~N+Zt&9>(PUL+BF^r(3X)4 zK|R0MD93i00rb(J|FgmWC3)Q=dw(pSod2(eW$)aCDnzg|ChHoN}J96i#^ z%Glq!!T-*g{dYk-`)A$%)&5|)4>3s z0+uL_;Y{@*S5Xfw0FZ93k7Ix0-;5#ZgC3Rb#J`q1wUY&lBlwkaD^`c4FDKL)WjSz; z7Dh1ue8*D|$7P$-7UwU~$K+YCpHs1(tN=lZ2=1*JRe|>cj6O+Wf2F|CWXN|LJ%D zpXjaF+qwJB&L1YeGx6QT|4z@Cw(@PRn@GSP5dTKY)raax{eM>m#B&B4papArqZa?` z1o?0XWBhZH{dY^|<{qE(Hp+M4AN|W*Aw3B43Tm|=B7|svY;_`ljP7q0TYH~)_w4sI ztBvb9;%9~+zQ6C*43nLodtH*%05%JYtQPbyn^!V`VIq8r>0v0mmCFAs-9N_vR$(Uj zp)3H-v3=X*mqSxNantLQIq|~837tc_vlID$AyJk)+qr-L-CMPPZvWK5FNgogy5Bc9 zYbO3TGyea!+4b*z3uphC`-}cZ>V4`;hgx3*Aio}qN&^xFS12WDBrO1E0wEF11JDLA zdL{#~>y}of=r2h_`%(uG%iYw4M*2jA(rWxo>(=wtZpyQ5pl05qJQs8^x=-2m3emt7 zdiz=c;#Gtq|KcBP!T@^K)M`;XfU_ynn!}Qy6zucLw_IP}@jdOV{X;0LIHUXsZ4s`8 zZEUTd;LvgWU0mA&dW@c~-H5D}45#;Ad`#)~w*6sW@qW=hqTZg#xfSUH|6m_W3j5#n zBIJQR`akXWhU;du`J2ttO=tAZ(Z@z#Z4Mm%CHCh3NzUKR?H&MkhY7xrNZ^XS-MVLX z{*sxi-%BprDeZxc|FgR{njZYmjL&|0 zbn?~ln^_HLvmgokn~Wo}gISx?ydqd-to%9gv-iodd-#Rbg|OpU*|TN{ z>HiZ4*g96m4av%VQ?6M%EHY_gxtuv8_oXJ-6l=6KDD=Z;9K<%T{qg=Ql0l5Xl|qe+ z+7oj#3;6@-wTE+`YbIWvxUh3>_u#PVS2Fg0SMsdCk-7iV`d9R?$arjLwBqQR?DzS) z=>NYCHyUn`**}}Lx*z7&QWw9*0l)=vg*+hD>aQ^dwF3ODbcnL1^r$270?@W*^kDy! z3Bbsdu|qYE@+XH_hOt03D!9S&u2FNb1P(z&p^iF&;`*=VlF#G}buJRD^)E|k=@kB} zJh%gkr}U$v|DfHmHS{`t!2#lE4eiEyHg`_cjPnW#|7J7jU&$8Z5d`=SJA-fF80`tT zSWcm>ww}`AGTE1w>(|iFmca_fmZ8?>UOW?8@7$$gI%|!6@6%S#SJ^!0vaZP4Q0Eu= zi!ESrynlY3*Z)@kKL;yiuE}%FJ&6MDpE&@(ZY~(EGT1pQfIJiX-xYv9oA}gK!T)`0FVn{{2$~{0xW_3KP}kXp#2qm?~!>% zwT+IkR_{SO`3mDx@S$Gt#+rii$xL5zL9B=-Pj8W{B_yOyFF}{etXOy8< z355aRgiV6{tD~7u4eJp9Um+F%>w|-T^8Z!|dl17fT*GH&{hM2CFVGV4FH;x^;5zVs ze&VL&|6e!pn~B@A_Q$)D`Tvz;pW+F$FN#9^gR%~YoPk;}fNYNsYNqBcPLuP% zE{7-;m)ay~YM27Pq+hURkbErS>A{z_5_O|J`W5PSm_pl1PJ&-(ABfkNu%)mY@kSV6 z+#@1Zjm&ePcJvvwS9?<%N?4}lSv(bUt>g*&M{BJ7i^8-|fnK3baw#R#Vta@0)&I=@ z;ZRcSaXvfebKCy&{hwtIu!oZWb8Yivb^&=JF=okC^ z=a+f$EiQ=me>^tH^%?ztvh!T`(yaXTd^`HbzMuc>ZQOsn|Kea~^Vei#zrUHB`2V!5 z|FiON<-y5W7XZJF`MNa+NESfmd8%5J%Ngk@fllM4P0l5Hgz2FEBJ=mieYB?k@*YClSb1D@FIwk05~kI6)yTsG9Mg7HGp)$<#n`nE`NZZ>`=D-77oG zb$&bXV*K)>f=IMK7Jfzf(TeEw^6bHhF)};@5f29#FV{atH*OoGF)lwf$OdyWV{IQ9 zd;Io{GVatOeXE?s=-<4Q=i1<|`pL*3b9P+QchxqwXM}IH*!>TM19lJo8DEeA@G{sl zgk8em0@e~`*3tf%)pU3A01nN0lcW8Y3xBZw4;jJWe`;(08_h8Or{!O4M-SK!e#3hi zz^K6X!T*I>HRYLb+D)1J|IN;iyH{t<&lkh7wWTwwOgMmxzTc&|tqS9l-p$K5!_2mvGD06cK5C_^^YsCva_{cr{{i|mql3nIWE z-&;T0r7Z&&XbH#0|)j)aIw( z(3{nJbN9N=q|U!jJfC>^;X$O@4vd3*4@bhmgIcn_^&D*hUd#Ij|Jwxj%(`XH9npae za_tGRlyA%W{B!de?|)uw^Bsa@=I~+>;Qf;+>^>kw{x}@{BMz`yZ2!;Xs$FtypSrQS zC$oy!CyW&YVSzQ<_cQYS?pc@jo*?st)NHk&|8>DUIfvk%e4uIni+>qS4zm@ub2DYh(XEnX$jy(!byDb^1H>|J0v3JUJ_Wej{tL zzAE#7CO1FN>L0He9Fusg$Y;C`4mXNZ86J3a;8rUSIV)K!?ZY?VTi;UrFDjLe@f$00 zwLkP361Zg0&wg2Ys4xmg@rj5NH@xy!HZs~#76OIT0Db_ipxhdP>e64zvK|9*dMsiX zfO^z@ImfsFY#@tK5~YF)bs+Dstc!ulQsAy?M6rPWr^e#HSOAMf1lxPs8jG0>5Y65B_fJX*V$oxX*ftdi#_6((~Mx z`udFMZ+gkGLRSSA`_o%XV%w}XbI0KG!!w(^np>OCHLo2VGnz4)+}xRc0AH2){|^TL zAJ5+d(f^<9ZO}VD_+PH`ql{mDDEbU<+}S_i0Qu(=(Jx5_Dn_17X1~J zO^$A6{y$#*yv)j3kW9mqQpU!u?L9B(-ywH&Z6QVg$P!@He$0{Qu%G z7_BTF+eQyy?XxN&nL>L0Ox!@N)03IRQ`6aUy4wAvnX z%>D(#tmh3zH_6!I*}=(8SvMEdZkapn(CUBU|FX*#;RSR*dBcqQF`nN@)j9 zd?~1(o9mb*P*#d_637`cc7TRwr2mNc8+Rr*ckkeSQW#)`HvSL8p#P_|_@~9RkyiNk zuPrnhLZrf6AtDxfEpx+0XC?msRIH5qll`+~_chV`FSPi-BkcNeuiHPkKWA`tvj0{b zJ=^S?nLkT4>m~lTO!WU7WB;!enMVqdWmy29j&DS<_~kp~7HpXZ!aE{HUMEY)0q9=1 z10;<{hA06fj8Tq8BdU)+M!z6)oUawGUR2(>PGo4!mi@2Zw_c)8jV%sog9kVwo=#p2 zGmpgucv&`})Ny(?#zwGXlYS8&GfailEuGu0u#)4;` zJy5w>qV^ZYd%rGof3OC&3XXPa^*Gr-mPs6tn4WRJG5THCV^YdHWa8ga5_tp68DN}& z7(yNM+WV4A0FSH}58&MR8&@S4X#L=y{2}uHh&4{lr&UsmIk_IKUb?<&g1)Ehxp`Il zqyNoT1pPbYp5XuNApglk86KS2q%*lYDdYanC;xvzoBjX8`2R=ukBBYy<7Va2XPe!U z{j*|r{v9-{Wly%_lB-Q_Oxe*sV;EkY1?P)@JOI82?P>;bUzYzE???fk_jmSUcj?OzoqFl=Z#xeS!9;R%{qvY}nL_D8F`1q;73o-z$ z;V4^zl~?6v(W$qt#lX2R3%ytGth+go^^EG-iGM8sS>6`-TFhWy)VcIp*>`Y>alozm z*Y@8rIA^$5(EpLF0r-pN;L!oe0DRT(t7*rJ(M$Ja3~)jG)6XYYZFcYE?j4}Kk!e+^32?Wl|nYk8RFlX(+-%RtbBAncjBCs$gb~$ip zS}CvCPuxuw<2uj=e$&b8*vjbRf z%gBA{X3wPN)IlGG85r6;un=(oId9DAdR<&2%6+2rBTu-jsrr`BoGF80=gIhTJ#0U_ ze^vjjgZB;h$sPcgG-oF6^!m&Iy1H3&_;RlLMzqu2!T)Ws|5*umi{87t4|O){{57k8 zo*fJ+>qxsO014=3G(7s>Tp+Y0M)r>Z>-Y4UDjNsRLp6G2ed{<0aZ=U!`&cbg8m-AZm?-}0OH>`4C{^qxy z0Z~QP{@*ON#)so^oFAT9G5LSQ|HxR{AoypUkd0FgCCPWTO4g%AX#B!I=Xowx0Am*X zKQI=}L*#pK1>X4<3lMo!H+UY> zqMVBXn;z`9(Vw|MAXAqB3LwPl~Y4lz_pKzgWwC>e&TOiTshWl~YD_r4w%G3{lh3G~2S8Y!H{}un7yL84{G7&c{@Y<9{mLB*Q#avyQ zou1>cOrIvt9~;9ME*PJl_xKL9mESzy90Gn@y}x z+>^bAf6wpFMK@iWdH>f%L*17=fGv9;>VCDeedmwyV^0lQ(EMmarC)St0rL$$zT*Ni z1ZP&vO#D=we7l?p{+VTKZt$+*mwVzVpB(INlwWs?&fYf>hdo*ba2+rA@te}}M(KYT zz|sE|V^O?&;`g!PXSEgp_}?Yv%n$1K2?Ok(zrFGe=-)lBvvZ#v$3`b?Phru6b-!T+HDk*xhQE!uyz(M`=J%`(l#*_UZX@INK?|5|x^>T{&Pr_X0) z1S#PO7ygk8(P`w^NFBObxn~^MRYc?wYwOAIHq_4X#z82ovY>~hK0Q> z8r9q2s<5N1gA910R^{cMN-@m9x%&HHsm2}2J#r)ueF%Q}RSR1_(^4?jUq}R<;8aV1 z(rE>KgxvxHcn|+!k#H7eI!*?g!5SWvBcFhENBv|Oy?@%x^_IXj)E&NqpLhnAMu~8( znwVPftCo!1N9&0^kaM|oN^#sCt3{u|p0dv&m> zDqiyLk#qEVVOll-|62HtlM@3_$K$z!d$>Vw0HkmbohQqNRW^vYZ60)95Igz0}Q2JB$wAISgO~V9%hR zy#sb>t%6-s19E-mhchlq9B`-LeYxm;@(k9^9pIGB+Us|0EdW}9FTi0R@QpD*vlNN@ zfqmnD-22er|C!93`a)i}?yT9J65aoFe1Gu&XjTCq_HXRJG?>>+A59(I*vyXiKest4 zvw${AHukac|CLytoie0ez?vf`0Eu>&m(tScE@TkYXxAfcJa=b-VM~{OQo{9Cmk91% z{g134ccehdDt_c$;0Yw(Lq0&B!HZrrW%8%ylV3zRXw=rwi-k4J5@y7ZgO&YD6H*!+ zV7m&h*a|gLPQ4e+6|zpCR39ExfT17E1LvH0iTX(@(vzT zyK|m6FCMc$#lOf0`)YsLM=JmuNK1f{Y&kKIVn`8N*UA8TF3NzByh60kb&PsAzA{C` zKlg(<;2|Vt%lQ9q9K2(AP;*CfMs@){zgcy3)adEvO~d5|v*Z8Y*1IA*e_xdhwNGUf zVE5i_-QRW&i2Z+0bfow%ZCEzFw!Szo58rsbQF8dfKV#&ef9GIm{TBbM{=uGpZ;JPS zfABItpSFn2en^f3V!7`cRI!eSEB%r0<7(eV|M3D`{fqT~H;gC$kD#9&MYl|u*x}d! zyDa<<53qX>Ho=~$1D3|z-1&paJ3cZD!<--RPyRpn-=JlXo$_i70_+=&l+S26)&PuV zu7dbyyg~e5obkvX9FgQ(f>Cl!t!870*3uhW#^Cmn;BVy?b_gf&1Qac zaxwtc&a*hSUH!kWfa`gprrH!n_`|Obe7y!!HYtN3h};hY>y6przvs26_WF zgayXhztF#HBAS;>Je!E*mt+4=>-7HaIwQf0r3u-fR}n zfA{9inFF+Hc4R!Z-TjM*EeB6d7B3%KZ3h0uynZ3FuKa+2vHnIrz%c92jDm8q`^dLt z)D7#Cd_RuGax9*+z@7FYIztQ=%D@E&m{!lK3&El&S6^xES{sm1Qm>5wp1?DR!k54U z$ zZ42!Z>QbeezhgdxR+Q(?$@9o;Vqx*->fms3I#;j&ZEMAGn_67gQzW6sbCOWj0OE-cC#^bq?k$Es# z`hV46ZdQJI)5Nuj{ok1JJ4)OqUis1Sp7+YRj`_RGx2yM6#xI)R$RG20`F5Mw5KDH* z6K3a5#_sXSy*F0JZqfSs0DH!_I5c69{rBT`4}hgRFLz$ z{o$b*{U3}jXf}xbzeUynn`mA)Tr%VT?EVMt@d7xC<&EiRSt8NM8S;j#R1AP`@Fvj) z=zY#ZgR&nEx&2@sgqh{%%74Vb9fdanfXtw4)Q?Ctm_c8am5+?8^|&wJIyPWUK!kQI zl8gjv$)jn(5*Gd#{Y3soIan9tbwN5@#E6_sL+xLi+UaL#ZJ2KaEAb93jWq*9P%8J} zz4(`Z#xd=}=G?shwb=jHwD`XySOe<+RZ_p(v&SB5e_J#CbnO&!0nq#V=5M#4daqW_Tx@ScHKNjtOLwfg1y`{7E?~>V#Wzy)c&AFNR|JqmpbDBR6UmN}Z<~IKi zCfENr1|S~QtZICu4S7?`AXj7CQ~W!cr2P#3!9MfPK|k52poY0V;10=JJhHC0PW%kJ z1N#`nsEv`gaRdzc2kC^48*!vqqZj0f`~ZT$6y&Y z(_bk37e2wdY(kktAsL6zt7b&QkwF>KS87k4`ESk3#+IRsh}bVO6qbr*QX+i=cFlG2 z8rsG|#?RCi<)yjdPO$3}lLJ68`1A@iwDDEWQESEYMt6{ZvIMOUl z+JfB$+9?s%z~xBO%s3LK2|pR ze4Si*QnGNrm`wb)<^A^Y`qBP-=NeZl2RX-n9^}? za{Li;l3aj|lqe?{1*DY+xB36yO8oEB6Ti#q-#2#O6950Ri2{KCXM4-{zuR9i zk=SKNe`?Oj>R*$ZwVUmlKM$85zIO1I{;XF2i+^Mk3r;jDCE^Jw*1AQKu+-H&JbC01 z`=PvdBn8~FdM&zM?;GThw})Ov3zyx!sQrNCX{)+A1><3&QY?W_aA@{AXTk@t1m_ha zfjO*naBBPkbffLHM6^lxg!XqFV01VLf}F>tqb>0rMDt&=Q=M_}`WN!w35fS8Lvp(Z92@2G|~% z0eE+_&u}zYFXR8WXZFuk`MWvqK9u>t=XZb5;{WPsGiLv4^J4{o_d>c+aTr1CV2uCr zi^UC=@h-vC{GfYg&_5+Q_P}`GUyhA@Mc!?dUk?h?927LMzb}42dY?1V{)K-rkMFM+ zKpx<#u_Hb=v1Z3r#y~%-iq6V?j0kL#dt(8R14R5{$GktV9c4H$xIZINz>D+u?pW=+ z=FZF%CJwoGScCb*>?jTc*pABkas02C0owozfwO4${)uWllJP(A|H{ONI~R2iPu}0- zVb<#tU-?q@{(HH=Ry-mMYhnvAWtusY!qi7B1dQv%R(E1Ywpe=2aHjL z41*DVgN2|X=xjg1WJRA>?>AtOXzw zXcemuL4+~5-GizV9(+51IX;h+JWiBKk-5G1n>;NJ)imJz&8K)JBk0_pY^}a z=)AMLXSDz0(f`-P0(d&BfBv+;%J6{9!T3XSdGq>am*$OmCTlla4A&T(noNzE?R<57 z0C0?DhqRT2h&*v<>G8z1I<)|e5Mu=p&qg}L8z|y1`UaxZZXg7`$4CHLg;{CpGpr6r zq`AA%@iG39X>DqdOj&RVa;ME8_O%X>-HJGZFlWB$nSeSF3Ig#_knfs($kkdC+7p(E zF6Ub1pVo;EV;EdZ>$DoYv#V`*KM_rqF8Bxi*!1v|T%=vCUgcZLlQkTJq-TjI_$vO* zIKV~|!R4pfL-HYhKA0?@KvuQ4;7t(=(}G)`A~D`VKP+b*sgImUjpa^k78nY9u*yPi zDuRp@ZI%50V+IEfS8YydPLI_6-{#oN0Q^`pYxwItN%sH!Sp5HM^8e1>`C0$xUCIBM z*ZEsjuzn|Ry!;^piV$g9{ z^8fIqMd+5%+3ee+*N^p2u7Fw}>=)+E{@4DWnlZeuO|0Kx_K^FDtQXv~b2vMRniIrG z9UclRlWd#%>>ak*KY#n=@6hP}>*GP(8L$25)MVrQ?VnLd@&@-#t;+(Kn=8lB4f6fe z|3(PmI9s|~+IC?g|36Fy@B?Y%ah=1u+hktF=VDu3nJDXHz2*8p$!@HBG=FUVy}2x! z|DZ$xKH2Qt?2+~V-krUgHVppNzoK6rDE)wrRZ5HsC|AaL^%~#`SJo(7S`8{rk!JNT zsMRCKKgfpgVF2dhfn%i*dBu)o?F_g>s~pXa9D`5vB37|}F>*}(-~f1mKUoM_72W7} zc*GjwcZh%T0E|!KZG&+=3-qIhXyY?phKL2Vl*l0?&^qxCH}Gx61F--^&$6i_J`(76 zL_*&LJXLIz(x{yl0oQ5E!?=Ze+6x;P&*PWk1sH<3rz~50tCiKDH^BK^YwPIq;(MMr zBMMq9K0V?Wa9c$mv7fY@XfcNold*IdKPHZ|O5*>Y?7wAj@NiPR{}YD{vir;@l@_(+5j=H0FUe^D6Tle#wO*`L=R(ySn=*n|L3mW;u*5}X~0Q<(n zWB_ac#`_&}NAvF$RFR2G{@v~q=VXNJmDtFa1%KKLtoK)${#yOupSgnQ`{DpJKDqys z@}F;42%EemW9=Iy{?8o#@!DUk__NkR{8M9QDzF~e)2wpEu9P;Um zLw+b+GC#FEI^MvcVSv}C-gp6=1%p&3kYkMCADs`=srh$pBL_#MoM(dn7oz{aHnCr4 zUU$u8|A7CGrk5WM{(s(Ib+~i$N_Jy=Z^r%(3?Dy~*8_&L2WQ4oTYsVbk4Ev}Nme`% zyrb)}?T{0YDo;$$cUlUJ_$m2l1*8z^P=54owd1u4u;Z7Btm{{zosBC~mQ0{D8rcJx z$UV~SnZBnKq#1d}+lE^xUsO^XW02wai+h0CYDRlKX=`@C)CR#iG@s4^LD>`=P9eaYT}F(NXH`XoS&28Nj$GJXCQ2-^+cX zT7+xAmvyd=rxo&subdB`{QvkTFBKOWEYvfic9PdCRCcz$tzu&mHOt3>VEuQz@E!rG;+b`OFk7(S7vM=uciQoR7 z{93DqGRv2hy=#RZ@vr~Stbgzh{>Rz>SOn`Qd*C;jX9xP(S)3B^9af7S!7KxI1O@+F z2K&tNV?SXm03v|9r8b)d#qY?TAWuhU-y3`9lw>@g7EU=laXdy1$Q;54pk=n){?O*v z!eOk?2qz3+{@;(H|L@J;PMsOurLv~VXTq(Q<#;Ie|F5zZ`_@^B`O&QYGb`CxA5K>0 zAQd_qjvB9GR^&(g&(5ff zOmH=pIM}PU(^|O^eDN*l=8uEA@~bt57wI2*TF;(y(8^_H)%pGkr#nMXbhDBXPra}_ z<}#mi)qY$*G=x!M?hF^t&Wf||jQ$@sJ0{!g?ahyyeMfUL|Nl3G2mAkwO?q8+{k^o! z{{jCi^iItDpA9=NB$BoFLcNFgYrebxi3-#TKxlupI6eX~0_|haKpy^n(WQqbl6YiL zb!aeuZ*>3PqqT2peQx*kW3?Vu*{Zcq3bfKQ>C8F3mXP*CxK5UAt~eG=RLII7|a zB_9cg6UvVyhOHLUepm0H%VmPHsL`TY=*qR(^o%B|d6B--rHkr(zLgjBv?&Gep6EWv z2UC@O1UInS7&!^x7u$olw!f>fWh*@nkPG&Zy&U4dECU&!7|YTA>M?o;9P>;>znML7 ztG0ox0As^9v``Ko$97-_`nh^U|3xnJeEk5~h&Jm*Y}vo3f9Bw@VJ9QayCnPPht2Mz zbw}Ga-y7W8|8ufZuL=G?lGoc~sb0{V+P3-3Gz=`@`R^J09}+YjnH@gf6WjQKiJxU%%s(YQ{{A3rv!I?;`qpcs{-7OPi+?|f ze4~NmkpRvB|FbiO-(;>LkvmuWCVIemtTHrnq5gLVA+mf~cVx>j0D67r+GK~Zp(lta?65HE$9zNQ8Zc{Vm#_)>e=o=W z|5Vmbo8I}a&QH1*M(^L0k(G-w!+PcZFZ)Xkr!;pb7jye&rDn_E|FJxivxmnFF3(Dh z?*4;@SNrS7fp;X9gLh+3yQEBfs0~2B=MiHvl2-oVzuKK*RvSUBiPmvskVw8G(f9)L z0kVx;!6qU?-3BgTAy`6$fpN2p!N0zJ`RZs|IKgPPdB}`w8~+2j+yM>{x5_s5Fl>UC zz&GfBv^BE_Yn0Pb0OOn@o6_Kq8sj%&uzcG;wKFdaVwM!OuvVksf6#K2Rt0tdcoOT_ zJsk8t->cupPla!bZ?O)F* z7^pTE9s@Pvpazt+ZU2$XIX`CjkKv}xw#|vb|8ALmGP8Mh@bUidl9fvK@8z)q?n<8O z#l300)4MNZ{{ORy($8u)iTk1d4~s@UFHyEH zO#D2$|DSoiFLw6MvC-M7V|xCt75tX94-0@`t$uTT)cx89d?WtnBzC_{XR8kDgE&jr ztO2f`8k>N1fwsx3EBvtv;JSIwI-^)HtSqu;a*(HVPVL;)d93rH&fLzjo!@8Iv-2}L zcz9y@j09relM%>RKQ@rI4pss2P4xfn>8JT=>sbH4oHdE=i=VSh=NriYIxV=rE$F`} za{(tM{`Z>Unwg1tUve=wYIbcdYMyB>Y;GF9Z*YCP|7VTcfM6vC83B1(`ACX*1Cu^! z<;_@;vY{QRd}{ex0$K*SQreVQt}a~*dX;tXt!2yIxmQ^W+yTBp(nNjLM=h%jB3>)! z5KRxxj0hMFfDaZAf)^dxt~jIRQ!}C&+6>N`EBs@-^9@-;G7EPA-$w0VAW9Ptm2m_o zEt%TWyUsq=>xW6O`H6y3$5*$XuuF(j5SO4=XeSz2+e&t&eENoi-#{n0l)k9b8%w*&*V8uU1`xZ*!LarfEoYUzM0NM&(sV4B*QxCb$r=fkovt6}6zyECiy20Cr|23-~wgZ^R#sKSn?2RW1xx@%(m# zjdAuPqU#qV=J&eJDxFO_CwCt0ywrI*GYmhMs~4MiP0$W1OaGVlFPpzc04n-N_K*61 za_;f)#MI749hpPFf#{!m{;d(*lig27;fx&Y3qp<`76(i)Jvqngbhhix&HkJdnFlqa zw@r3F*)%I3+?$mNj*czAf7-w(fcVD~fB~2xRM_`FJ^((&?(ucbj|cJXWH;Rtd*|m9 zAMBjc-97lfKhgh>q=#SA|8~EL9rkkbwXFU>GZw%*vLfp(&DV!F4(`fIjo?cg(|0^g zeQ%y9wjAWv}Q(E7dJ4&MH7y? zUf>8M+yji2t_I^EM|&DgtY2PH0Y)dWH5Lo@vq^G`e^vj^(aMyLt~XXE zr)XF3JqN!TL#P-aF+=VRi+BbR4#xmj&O0oBqkVcH*aOA^{nmIOu?j~4?LE2KUh#SP zEI>a8y+Tj&pH|S5GOzJDEjpj5F&*L&KJDTNvkJ<0kTdia$~GkCL-{<-@l%%RD@ruA zzjt!ZZycN!{J%CU&Fzzsr+Jxu_L}CZj5xoPnQ52yF3jJxvHl;7|G!l4nC@epsh#^W zJBATI$G4DsR|0U&NK7@xPUW--F_7&&*iGtp6T+ z26Zh+pPuLfyND4VSTmobux@BM!t`{H>{+2=gF+-qjdnz`q; z(qR^`g>;R(r6Pd;tJDWz?_^@yzqYLBi)US@`F~H#*$u0{s$N&$kA<}Q_av>za!vJ4 zd7ISOVY5e!#|}T^?&5hF3HA}T?!N0r2o}MyqB*8f54U98@mWR%;|BG>R)ev_=lrhm zZ<`XMi3o%ovi+P{B_4(Ea`b`E@i=$Z(OKz+)f-dbl1LOE?1%vLlLah={+1X3^8j7j z?%DiUKaS39+R?sQz7dXnftB-}W(T0w$^dvr6^lGUC}d_JSRi-?5%{v&3qMZ;0{0KS zlA6d;mI)2exqwpd5nFRaTr;jIe8(KgcLtnuW!Y>2!Ztcn;+dQDa$v@Q?YytPy}E5O z=;t}CpQ<9ho4aSFfX8@$-x=rk$Yxj>a$MoZe4Z$yOFl7wKEJv+wEVeTT5HX3CH(hk z|EKz_JX|x*UQ$)ssq+7)%KzUko%+};%Qj4>Crc#P$pe!4X2iqot^5ZEa1>w*5IJy| zF}{&nUowC6-(kkhKI-uQLu=J!L~>NpKV3CT@-6c|`Q)rfpBEyt*22O!eZd3&X8$~k z*xy#cHGlN}v_`m!;)+*V{e=GB-@+2Scd!6|pJR(IHTqErSQnJJMa=f?Ero8b^xW+3 zeC48V@tw5y&sF)fPO?z)vT_1D&#nV%>Hv&(IDo5t!X`9o$2gtu(Zc`ht>=~hzfLQt zZv3zht$~9JArG z>}CIk5=}G?en27fdO;6WMW707!T~~KcfT+CU}ZvoQuBWh==p!f7uq%WBF|++gI~TK z5APVlp5AeQqX5VLRsd}oLOsOxIQjtF^XQ7KsQ>fnu{VyDSi=7~{zOMd&3!3;lF1IZ znux1rq#NVrP!Shl7i?WQYLv{d;oL>u^Nb-gg{Z&7H&s#OuD3FgdFR zwg+YqC`UvI;NSLx?g8EM&GK3KUBxLSo#y*X|9ib!rTtd*M7d3|iDv&y6ZWTyn_j9q z)xW6z@4IwZdal<0yHfto)vfmXVBHE>#QekpME-bxdqyG!XZ@(Lp{jQ?Rnr`)Ojrl0 zbQ>m5C9kEWX22{{yr<0L5$U4IfL1B|6Rm?+e7+R`m;egDac#vf>VP~0co}*2y~MBw z*7(OlcndqgE6fu13Sh8(Rs%Es$rUWE$l&$Xn(15Fzw)(c3C_H5+(9s5Vkub(l~m>woa3jc4)F5M*t@N{dvWZ5*;)xD|4|7BYL z_n!QxVqCRMd(rmsTK(s_0cavigOtg(}FqRv7&qyiN^o#LC7$ z=&^pr>*)RXRj)M)D!@M|1OG*B1MFj+GpA1;EWuU)tU3P|YQM7u>_e<>?7G4jhG51| zR6qs*Ccs{f?&qrg`XV~ZrDo$FAK$QjaucW$wo7CJ9ic?-0aV-5bM@@;xrW>st{mq^ z)PWKb8i}oh?-l5djjQ-;AMfwr3dcLPD2^f=L%8M;`w$8tp5F8Qh!bq(VRT(pQNB(7 zW&UDujpqLiRnGY!<^OxOpRaB#M;B}6k7-;Q|5ph8k7U2kK2BFmk4Tc_68W-5`7_&x z2k;uttOQv31NZP_&w;1Y4zuoz{~hE@-)wbF1}9r3^Q9YS$L2kYiN#XIsC;HRB3Z9B zk5=Jw&99?&yuS1M=zaKldwb9Ou_eGpFjw~w_5K@NhHqs1mSm(n>!_kElBUouf*ie`Po3pB2M3|96@8In`pC`8T+_RQ&(j z@{QtkMQW}}v)UZ^pBc`7TYezSl-{)FKnypE9Q*RYzxdLurZBw zwuSL4wlsVTEWl$Ux_y`f@EX08S5Zaz9(h`Pt~Dq6soHF9)&G4g{QtQ+O*2kb&mU0T z?&T)Y8@7h52fD@yFfqgdcKS>DM zLTl|^+WJ<#u=*xDC&RTG*8TZN;lER{Q~s3{fGv~(SX6x6)&A!E#(mWJV*$eRgMRaR zusuLp+mEXLf&YVd?}hCM^}snnJ`pQ|V+U5OxxjKd=AT=Krc$kn@x^*YpW@W~o_cO+k{R!U1%+US_WaBH0f9i{fEW?)Y4ql7ByqRV4J~*_NWzK8g2D&&Z;#^SX z%${{L>t*;%`~N_`e`6gSr4ujA^^5-p|EZokV`r}#F*H{LD*%Q=Nwk`W1whkl@`)gx z*T`p5)r4)p>th*s%tmfM*WcnSJpU2jANcnyTR4AG$0liQ18f1<$1|mjX|9j`z0t{a zbL{W@o2wXzm|*daqp)yXX(OF$Z)I>!|IW8!ow(YZJ1P+0>u7?X5f9+$`8*>a=KJFb zY!f;O|EuTw=f5dh_{qHLI|9jQ_@3i#E zWNlT#oTagkw+Gwc-#*{9ek1h^-y;Y{*UJ;=5ID~er%w9IsN@}TJtEb0RPSq zMsC1Nf^Q`kU~2&L4;H|xpdE$kc5*_xOuk65fwtkr9r;OFmvnRa|L?`#k5J7L{Rqhb zklnZ12lBCZ);g$iMhAo)*!FFr^Sx1g=UvT9oGvCXPx3%=b^2Q=e^;x*>QC8w*$Md# z#Si6s)sLEq*`=CWjO zbru+XSn^M!oF^%)=@G@f}PMX3$yq z@0%ZzFImi6zFDp%{I9R|e}1f%Yadp1E1%c7+^pF2B zzKOwE7c98b}y4ZjJq)T#0a(wz(_P*A?Tf69` zYPUYwdC9@*z`NKl_;-yz^LxC)N5lcK-Vc!goF0{+qb$zl$|?-1@gH`A_t}hm`+s5p zKMMVi`GG6TS1*-Zkao=%mH*#B$Mi@(E$f&5R`^enhtwBfXK9z4$&xV>5QKX!fb${X z-*o_F{ha%Q_iQY+^J<;(`*jB3X7Q6Nl2g(#b#3Lv^8c@A`{!pAv&t8$AF6ZJ|EH|_ zsUOp!)tid{Kgu`N7(lOL#IS*Mw&t-%2d^3Li~+_LBN02mXt2uf2$Q{dgiT-s;(5Yn z*w^zJYYD^=wiq!6!MlB!{XN#kxq#pVJhQ6riaBru*7?WdKs`0}RtL!8x$Xyz4V0l1 z+TY@p>52^!;_o=CNG#2jv0nu%VRzv7wkTlV_;+>@<v8A9}j=8s-q29%;I_v zUSNxakN5Gkq*48(%rIwyePT1GnODccEFw0p5!coC34EHp_}&@+p=el_PZLWhv&-|3zzSfBgHk>*9rjh zx0h^>tG-aZ$-hx0*a3%KHk z-@Jk)SX(&2|1-mWbNT+QltI`}b^c!~N7r4bIySjdWa_hgSTVZjS6r~=Z^2r^9 z&yGU2G3*(BtjtHBFSg(Tpg+7hjDCGp*eoZ@V*TGNA+$lq3H${4o>}0}c9ag#MH#_W zb!;P&`_e&qhhm)YKel)wzabkT{C7}D`i%Mm?orPKwEj;uqceU)0rvmS1GvtS3LtFX z#?lR^X>Q|tbp_B(t$(-9Ru6!|s{dyVfXlQ3z;^k;#goGST+C=LpM9_ajseU9upYJn)&sE`WCXgXB50Tx&K}7J>H5k>fdBQ1H}dpI^e1>iDO8f}vAQan(;Qmxc}v>K)LzZTc*zsc3J;{Siw+Q8JLfkU#>?gQXR z9z4K<@q;jAHgIC=Z$yJz9yOkyXWj#3^FF?WSMgb4FZ_(>{vLi?_w(Pe0>}Fv;f=q; zSN%rFHhRhAfo0HK2q%6F=ZAOCqvMZkJ&}Kd`BZzd5pieQdy)Dm!2wY|$Y%p3<|W|C zmWd;?6>zQ(3qUO5$^hpJ+*5>3!lCl{`0(TlsN?!rUG)t$N4C4J`J%NY^BI`$!}-JW zb9`6;A7@+V4zF^A1=@XmcobLIh_)rbo^sCu$D9SR6iNkA7}uQh;#+tREZgey%&|Xr z&;R-9yU|!>-$BO#)Cx0#dTaIXD#}Z@@ribSK$9$A>hx1{^y(^R>Rf+^s{xUz5f_R4^xvQ+bZuQ{Et%xV3vBJY?Mw? z{ZFP0;B<8d-9b?dokHja1k1+)_==G8BoF9pAl}~$V1nv~&S^cRTIbhw4R2M|<6+5W z>H%=6<^Wx*{QqOw+WE%Ct>v55u=dA7epyx35Y5WCt9+_>U;dv8JbXXveW24hPPcYs zZOgum@g5$LsL&pW5oPZgql2->d&V~3<3}D@Jcd1Z4BI|12Kj`?s}bfH7MsAUjz{?n z2%V=!t}&7e)vlKTHF!$$a$vo!1y@%r`3by#>MdbVO6D4`*TV5u-2wH zI(sbrt8}{WG-_{EZk?)E_rgZ~k4j&oAM85@Kq2sk4(>ktH$J3pY^TnHoh>dp^S7&u!Bi)`GpALRu?#}0fWc%`NI>I*; zSu8gP{;dy$`p2hSKj>&+d9e)g04vM;_m!qMy>)KV&bG-{kndktNA;$9p>39KDkEPi z|M6!v};-c~m&B6LfyuV$2S1zM2;FpyT6z}De#n_tMtygt$JqKO57@47F!)l`* z&J2>V0v62H?JL1*ga7ap{Km)lUHAcZ!DEo|$!9$F%vnQ`${$!<*xe9d1m9Ey%VVbKT8F~!eI%_ z3wU1XdwoTWMe`z#2weIZSDCZnE^tkWmqNwkvz!5&IhfDK9KoLn#>H=N?+CB4F3u$Q zRoDpXAKbsQepCC`L(JyHe6?b^a#qBy4#h*`*0{-vT zD#=Qk@%uyT`sAy0l<+^YSW61PJjI~={q*SMdg<(AG@H1G{4#6s1lPCEZoGcj0I&VA ztSrW%>LSu#Gxn_iv!~g9#QYs=wh(ndFbDL%POAG|O%`WEq4N((k!_JLt$1YZVh!cr zU(B`@|Ifq#TIzpvfpUQ405+Xn1>kuAYw1d0^T0k@fa@OI?Ev*-vMPY@mDPJk_`gzp z07oUuq~E1ys0-*FnqhfQ)>-k!QRP$B`1U;QgH`|gFZE?nEp~Z-@jY!ECByOidnN6zef+_GQ17=CxU1y1Y8$r|IS#2pMo~) z)y_S7yfVu1{egZ|^6>pc1J0fkYr6ulgX&NQ$lHP~;(k1Fu<7upe2y9bkj}9i%RW=H z9S{@w2Wx>o4k`~L)6X@cZpgYJRx-YiT0c;1)iKj2ItcA+<~!w6@?-UXzkIuVLOxo0 zKu5i22EZ|f|Mw&CZ%dHr+0|a)Gp~}BR z+TU`DD1K<&k+ib$c~uM%)`k~F(Jy}|Ju10DaRPk?dW+F7U!&hqJXrSXKj!@Q`;jGF zM%n)pTHkApz4>bVQvnQTu+QhGy}hjl*#dk&N<(MO1YBKF%trG6rzPK}5 z|Fg2a(#gq>3S`UV9nD!fqK*KJf1{s@A2WaKUD!s~0gwT71;EY9|KtBJlLoM2@@4XT zdU)Lh{6<9q^D6?{y1Z9wurJjMDx2XNReLGy&N+3~yJ-%atPy`2YRMT-n5Yu3}&@Sldq;+b^aEX`aFMV%Q_)&&kP06%RZB z3|p~tbPv9*1YjYC=osn!f%i89Fw3`{h`K*w1=|9AKi+>O;h(j_#tEHAC4WmtW_)|o+K0IG|Eof!4t7G&C5*(zgAL4WWmKQsRA z%|SP-6QjqtQYcgcTb8gAaVM=9V5hMLC`PdU#&4`rd;is>|DBTeEmkN$F2_{6YNp9T z?QZSesvnD6^UqcDbB-*)<!R|)XX1S zKwMxwoPHl5U}I(fwo&%%XjRd^(3&slsf^m+T3PZ~vRF1bpSKvKZD8?lo#jL69?8|x z@g~Z;tXBJf$M>Mzz8t;IwLw+_939aAb4{Ua5zYM%{G0V-G58L=e`tl+5U|g8t*F03 z^gmFzy`Z&U@@6_%M>JCSA69&vf1Mqxn#50(v79UUK@~hFYwjXl0Ge6A@O^J&|H1~K z1JVb8{NJYP9Y6+_EqcRn;s0SN05@b`WVdPt@RVxv_U7$Zt8JypZmKz% zFO{DZKPU$6A*<-so#{{=T#iR%nz+x5kMP5cH;)U(2(PjiV~D*x<`{(@XZ|#!4Ub{` zdv1VZg2-j@3C3RFpHE`}s2u2A<9{ik)M~mtJ=g`s;JuiQXIlX9Kd-)vSabz_$_(7G zzdvhhVE)h+mhjiq6q1p*M<O^pJzAWcza_>0Ty4`eGOt$OzZKJwih5rX|9?`ebJ6>c=pK!~ ziTbe#F$1`%|8oVf=loOm5B~R21blKH zw@WUU|DPoMuPWaRdW~T7_P}(og3tz*&|c%DEi9)#g@J#goruA40Ct1#idew@AO7D% z{(rF8%6YBb#mxH(|7(f=50(G@Av-1AL0sjt*8GY9o>qo%SNVU|Bqs;x+J9@EK4UBa z*vAfV_MY{yTk8+9pl>Vlag8kCyRDOx1JezJ|3`)YYgGYssw#lh`MZ5k`)94kJgGWZ zQCU_kTrN@^RIdO+4=}pDfO>eHw}|ju;RDBu%1`V8UI8D#C-Bi;0nCiDVTo9U@E?3C z_(0eb=bIzy4?AG{!FQoA!4b%lnd^fFqux=xz^~_lkwkk@dqcha5;gva6zoHdDxz`M z);LmdZLod5BYI*SqI)ZW)BwT$&9RMf{4H4LIH?Mx`VXs!GT7iB{}2Ca_g5QKwK zW7#pBuPjI0;Ge7Rj!U-B+$-#WEiV?G`)d2^Xpa4S$FKl?7vHgp{=@!zDBfCKOy=}_ z^}Yv zzqRD+VFH2w=G9Sphx%XY-<()EfIKGle@*sOwp)Hd(W{!+KC9hHt1#@S z?q3&HU9|#8pW;}p0MJ8Qw;KQCa9zjE&%i$;A@l*TXzV%$^!VuXi*0}p;9Km2JYE=^ zW{lVm?1A}0j3m4iOqI_#M_?ajp2_~i+peK6YCM5|)H2vH7y;S#m<|5>jc z47UgWwg4XQR{iMx2mZa*N2uZJ$x|}te@k)t1C;x}P2O)2>3@qQAnM(uPj+CwoV4~e z6#;yhf16#HZkSxCeK(f>XKfICwsC6~fWHU(l)A4q?l(FUz^Ta#7)w?bajjAWoH5~}=CMI`Sludq$Dp1I{Eg+ zH|6m5OMaPsGoI0Y}uvfBFkk#?Ql#@&Dj-{@K{G zb--5mA9(}Mt#!2?RshtatXTzg><@BK%=s>&dRr%JY9Qb002acwi!*8bzZC#x|G3uJ zynZ3+f0LB|KS>r~nz8_UYMY|<^8T2gsoy*5ek@aSoxnP0YNf&vk6A>_Ip8XV7Gt(= zoZBXVa2Sar1>0nf3d?FX@7DtVVf%fbjd*(m?j)mtcep1JzY%2_{jh-EI=2D&+Tt}M zik{_v$^)vIRj2mE_UlrcmnfD}?f*1w*C{i7dp0Edt+@Cz!vEjZQTtiN{}VN~8Qplg zumSe}sQ!cXpUU6xgW!U>{~HP`TZsMdq(1-WYYyC}>d&{Tdj5f^za@jRLsW}ATKFHR z*)Cs*ZI4RMk%!$#f2p7Ha##TSaiVxCf3X13^#}ZWCcsj{@WJ}-zR9w`;NPFHZqWFD zzX}_0Cje*v!T)&8aGH=@pDvvLm=9G%GNkxM_h)*#SMr|lzp(KCjIP4=wf<-SZ?)g} z=h|QgjDOF4wEDTBK5>}pC*BbLZHyMB=!aV@sJ#;(FOKxudoOpE28UQ1-x!O4iAf}z)S=y`{;S4uF^0u z{ay0kX`aj;(gHV9cbZ+K0UWGtXR+swIu@TXbB65s$y4x%>i`3wDuXptIZlq*$7M^z zv6>HwUV4V0b^xC+u!3Vi>wij3is>a~{RsecP{qL8rlV6;V zD@H2Ibbj>@Rh?|3?BAy4hxvasA}^Nqcc&_UuFn?9R!Rpa4@$HCvh|Ik*Q15xwPufQ zM!cf{Gk*BLSN=dDKp${4i~_!qyye!)n(eM{xJ=*kZL5=F^hM7*a z#s6=p_u%2_z~pq{WdqrmzS8CB%C~}$4_fj2c>S0UfE93sAYQ(&vh3ez<&WR|g8zsb ztQk0aXcl2!;8*Ag)=i%tu4w%zS{*=MQwHH2#Xu`2UnhT0&s2@YV~VwI zQ!UAd`R?Tx)xGVD+l6KUpP~LAyH%HzQ;Qku07CTd&GYmP zMvgaLV>81?9U!7$#5e-Li`aYc3OHvpdIMMZ75@#7UvhF$8)plE|F#0aPh+95Q?GxT zA3HvV{afkBPO$MV|4|5u@r@$r9Me3&1(^ zI#rI$3F26NROTM;WroGVX89Q7SRJ+aYIE(mbH0CQeB426eYWYg^?r=k2kTaV*wfk{ zu>pBMuOG3JMiTM=y7^UF{d@DWclGCL>GmG&&Duv-3zgRjeU}LT*GT(&PHX?XlYXE~ z`rWEr`%3Efed_%^em1II;o?ZZ_;)3sD}kLC01cl1J3;J!Te0T7)bINm#lD5q|331i zA1e;{XR=OqT;92^wi!_TRlUddOnW6$h5zxw((1xLUBKxC6zqRVp}&LX2QI4rP2Vr{ zyD ze0t^w=Mbu8+8u~^jc_fi$mhVuOD$`TCFHbj+xyXHscN2nrmfc`r8XO=?D z9Dv=x0L*p3zZFXC5r3Wk*a2*4Wd0i5H)rIyhP}BXw%rlqbI0bi>zt)MJ-#0W$dO(r z{ie?s>qR{Gucsn_arrG;{c9ho|L;_z+Q%#A99unI9IDP=7iiYs4fUwpOVR)N z$p_M_W=i}1yXLJ>{mbZv-#Y3w_XqF918n$yTLf3bgMf`||G%?7f1IM*w{J$#z zmeo;RtnYU3zfb^C0E~H80!FofRe|vTf&cYY-#ailCjBD&NENw56#=A0*Zj_OKV64U z6azgc{c?L@*=vQ;1BePB)c#;Y!T+(4)B?Hwhy3Subqz3i)IVuGAr!z}(xK|E@Qh-u z>$4ZK!_<#y*XrcD_@=vSj4tA>}0P}yw0ay)RY^+*IGQ(`J zix*)}5W=f`hEavjCj#J`{HnhVoPh0SGaI%4h3o<1I1ex8f0D*V=R#48X_O7;lSS-f|;LKJL`W0ABj)|6 z|B(Rz{~PBs^OK9y%3Z3oy<7W|_Newk)yc(%`JHt?iW%9ns!8pa4Ncb<-@RD=|L;<+ zu9OEKQ~UIYcFB5K^$zsg24D@0emo%hKb8MG2>-_``bGWgEe22|Z%YTr(k-$xH5X~D z7(l<`@%)}_<8=AtcyVm_KmMN{-P8bqRbqeqKi)t5KS*|E(E742OUSYW_W2F|t@k-{ zh`sr3-%tOKmFxPyHH6j^)RXj}^uz33>7&Mf_x%3!FliN^CX&|7`~S%PgK?^T zf(ym^RP`^lXto|(gKbVcpk0|DSE4-_`QUWKs@8!!R_??xMu?f7($T8A+ z6rP=T{Hi%N&jVlfqxduGY8v!6`7dX|Z2^oY5WypJV;(tHww(a~cv9O0Vt+U_89Vre z>wK^P&Zc4IYz?gZThBAP@U5IX*1+~Ed@t7p?m`BDW9K{gJda%;=()!nqxE~LlSgU> z(E8fODi+v0-@UF0K0>tt{q$Mv7go<3XBZIx=70(Sq8H~Yu>ihqafDnwGqtc%K5APw z?jg3>UcHlW?JN#VEowEn!!!vGo*t**1SYzrL7Jo>X;g zpWMEs-MRg2xvo6jjZ*)wkQ)7h;(&jopDN$=C*l7Ijs3U8e0S1#wzfspuf4nx&(G-o zOJ;yR0C0aIVAsD)7XJ5E2H`H*lEoGMcT0W}7hXP@KixSyFYi&$w&`EY)DetMmz4kC zN}PGk+5CT{n*TEofEqvg0CkwH01*3Q7eMn0V&%;J?fxtLJ9oey)(P0#9Dtux1fl*j z_qVU&hxNozx+c4&uV-)O1LXbJD9WN={zQ6G@*lH>C%uJ(hf0k|vcCzY?U2U0l*r-UIRQVJXt;?mJwl`2X}`N+OIQ4Vq=_n6cQZ}<%dUPWb#^L z3j#rbAyCzLPA~<6=GQ1^)H~OQ7X-;s6PM1x0YFu-d)o!i?=|zc$0yhCnLUb?NWo|`cQIE$QGhRC*Q{a090c@xs(3pHHACh9 zCn_5-NvPjh3g7{%0ve;&Q7&x5jQp@|VBh}V@xK{B9POOfnQMqG=4iOS*e1tV*a&O8 z#y|ERt8b;2yX*d~*kn4Oab?(|SBrIA_IK@{^*>tx>VF2Sp5Ys@&DY9nHRJU1_H^}~ zKD_){=Y#q;U7FMj*`e8W>BY$`G1beJv;Io>zeLOzp6e~<{<-##F;6!T6u{{JOD#No zf9d@}?f>>#N%wT+!2jJ^q3-(@?gi%9-!p%}e^*(U=d^Z5ll{a0TLCow**9tcu>;HiApZyY$^VTIQje7d z*(QB1dsX~@glYiiE{5i>rqeV7iVBF+bX=3<|Iz-()wrhzfEfUlK&Svw4UPH%{|EnU z8>;&G0?kf-MH$djR7LPn>jKpPZX)gfVP#uym+t&pKD>Oiy1M94q;b63p^h+m;c>m@|U}_htZ$yuglai9IOe zF&Kq;f_*0zU=d-UsL@WujQ3~UgK`iKrsHu`$eIh-F7O%l;63n$7X?q=ockkx?%531 z`vWCr^MN08lVCQWgCh;U$i7kY9C-rHjn}9oBFeACpk(i@kpP0$BO1_pd0h?-@ zq`81w$qK9|@4vX-bHo#S$GQ5vxE`E?(ceTVag^L8?t{_KarqUlE^)u_m^B{f^w9nA z=+tBKitRt2=M%mLR)NeA+$(|+LL5`uGqWh{zeSo%pty>jhbJt32I%ywg2G1m+-%qj`f&U zN6pQDH2bUYKTK;!?d{{{Z3 z0h%cWaF@`3qP}hCWNg|^+8+_XjO>H#+_wJGOWsc9s&9Q;usEy;X zSqZj{`3m44zQD1OjH}?8j}4Ep-rzXEk(GIw&jS4WSh3J>0Z<&a8fzZ-_g&|i^Zn!it>u{C@hyA~ z{(%1v1pw{OQ9w^wwA1rGs{UI_tA6d!zC$&qTUHNA{d-od|1zmjuj~JEs{CD5^Ked4 z$LjZ_R=*)8u(`%Gkv(JFUJj%W7vdWW5bJ-MC9oPc)&JmsvXt}FRr$i)ztxhZHKX`- zdF$@!3E6e>|6`;8_9<@6kI9x!Tgg$%7fz`Ce^=qPW3Bx!SF?QBI~styfdsDM_I;F@ z`&>PR7ycFhZ`eMW0IL0|`L!bGS31eUbQS*l>C84zjJ`y&etK{AbdCR!!vEU&Khl{} z6@F6X!W1zX&<~^c8epJ5X8#cda6O2I&;gBq_W+;+>SX0VXNdnlq&ZM0s!v(JWTCXB zYK!NynaTk?t69gtFFIBSxBo6p=FVz|YLlv?Dggdeyrg)oPwo4`v^gDIu#+}?g85-% z3s_CY__xOZ{df+T0p0_=$9Qv=$zA6>^1?IOr+^*QD8?@sv)3|bc0YX2(h1ZwXmDg; zjK`~>qG8#7kBmEPfqh&>0~3Hf<2}*H?C<@T?K8m+$3S)+w0MOCjt@)48ThfSgkybY z;*EP-06)fVL=50=U}hy|HFN~-Bqd<5B7woG{p}&!LY;HiE^`|l_#9TvXHGmrMB{Vd zcpRx4)%N)AoJx(buQt}oUYxVQS~*q&;jY}m5|9C6bM}TY0MB!kfwLmmzNTYTXn$q{ z-KAz+o=;Ntzn?1q4r$-t-nhMBwP&$bey?hOFH=1Fnz~Ybq}*SX{838PEv>)FXTPjR z6K9X>(7LVr!~6sP<^x0kumo(tDEUAl0IL7@l;3+=oxi%P`hOuQ>aVoACwvzz4q z*O3KSwYVZbFq=R9Uh8FS^(*{`iWgZxaPPUjQ4O@Dn8%6YDXS&fukhddTPy`^AM{%d zF#7$B8ek%Tp2Gid9qS>gNgkR`&t__V#7O1;<}1eKKdA%C&?HeN^uXENAN)J_Z}0C| zA4|Y_n<3E+j0nhG0N?-<_4(^H`{^020yb5;%KTCQUQAC^uJtiR0QY4=cX4kysQtJ0 zR4IT%RsXwKHLZME)c8Qv0C&|mbQ}l=0Q;yre#98SCwNrwPM6uQ*gEjjnIrE-G;ii; z{DYW=NBWU5X1`_qJ^U~}2KEmMg1i434`7E^@P_f5*Nkrzaz4k;Py@Udd4IG&`t!Jd z@4`AV`$&E_{24WZ=)ir!P}3Y^6FZx$5G@40IDV`c$BpiXoxrL@9uRv$Cnc}(Wm{wh zV_U@Pz~GOy!8~6GZy$62;6GOVIb+V!iiRT^DjghUfXXHY0rR$EQNhG9#kIG#V@<}7 z@$;xU;NLtie7x&79P<#>5H~r4Ko2oE0JS5;0r-v{if8_u|E}1+99L!S)7y`|p-PnY_4xyIs)>iRQ1y+*U$PZwjqLtgaEk8S1e{HyY zdKcj{Dt4U7clRD!fJPBqPRDk>j4|u}{d$8dSnCJ(e9kI>=l(JKAN`M2LD$f+9;hsT zuk<3V|J7UgA5kn=Y@E-Ny_>A1+MnCiy@b5K{XhM`(KkH<*fW4e$?F^a!2p;K=sD2i z^|{@&?!il%|8%=570#BTcv*5`x{I#(6XO3fG<)=!d|df)^-}u^bz@mU>i~UTUM&T1 zwc=b=q?7pvy{_`$PLkUR2H?1m@xlA#fz1z{EwJ6-)35{>vb91+AU4B_S)c-zYV;U$ z;Llz698KGoxpI%O&-QEoZw!Euz`q$lSPQUky&zb#--mI>%sC?e`D%QFb#TFdXT`Bs z?(lNr8b8f6$Z_8!A z&-p~W!)G`*t_t>!*~?f?Hd`nEZT>F)-CU%3#QB7>3%9Wf;8%ETm7n_uo3kq5nh;xc z&ID`c@24LrbpWt`$Bw0|WR@cuf+mE$d?E}j9^6%@~ziXBIe=_^6*84p$ zc~pA+nd(^al``Km)%Svq9FgBQ&qe3wku`6At}$B$qzafS0X*Y+iU77y{(CP~*FG!V zySw`H+d=e4&M(tg5f(SXul4RF^jR42s?po0AZXN z-(j?wZTnTT0GI&2bI$HX9JT9~%w{;R#$MS9VBdn_a2|Hio4K2{sMZ59ys*D-*V9xOXH0L$jT;7o$GKzsj{q+TA7|CGN_+*O`d z4N~-fTYF};LV0oiq40mXGEq-yEcVU@rt8Yz9VajKkZS+FR_1ztdAm^k!^>L*h#Vl= zx4l0dfSOf;$7tlU=I0*5|8ru!J!a$o1=Z?~PjAW|5dR;c`k!va8TrKQ%jEBMmVI5# z$6rO<-0O3D4gd_m**@n1(EAOKm0%1fa8az?my=KvE~QS|0?4D`2TgJ zA%4?ZGCe-KQO7h|+tS4@dB^OlWUToAZF(2wpUqi4VgPD@-~ccH&jbSfo(bqGAa?;p zFW6M|MUQAU)eChEz>Tth%cb)w=H&~6%`rmv$VEV;k%@dB@5*&*$u+2Uoz$dRD)C^c(;7Yv#+2 zo`aXzYdhL?yaLK?t*}?d66Xf?jsJK(_VVmoBNVISj(}jl*|1WvfqPJHKkvsr6C!>q zqPAt6dpX;l`LD(~G{h7VKb$QYlC`v10UagVKo$U|FjiOL@VXD+o0d<^u`Ol(bag?eyVEfMKS=$BA+;heT3;-`rJV1O1 z@3pr97csY|)9m-zpUoqOQ4`~i-}Z})K1QLj7DxjB_!n3Hfn-O^MhDn7{=qruhdGDW z1QpcQ#HSoTYsZ>PgQN!k)D=?$gpS2A@K=e3&GGS_U;_<+IYB6B@C1&TvqcYZUYt+! zdGl*{g_(e#yQ%=j<45osXEluPhNFP?@bmGABab~eH;%r+Ki7gjXH*&Bk74_u9Smbt zxr(ky;;j6>l?$#r8&-kOaNf4$d@@#N@_pwH8vWLQf-9Ic@h$!|_TL%6b@ChY?TZc6 z`SbJY$oA9iz1pi(Q;MNd|E^TWkGnJyPtIORUlu|y6#g$%#Qu#Gz)PjyQQcy`&ul;N zKcvPytl!F?d;f(3*3 zq9TL+m1SGI#y{CQV)Rbhum$jc$MAE`1ni&;-Y()6%O>;w5BxI+U{3s-3t$6?EBNM> zYX9Fy=d_MA%8y$=Cp%~7s~TstVv^3q;rW2gz57C?<=Z0N3qoht!tCZ)BR*~pHL<6y;8zo&4-k)O96Pa zy>NSSwPdxlRDiY0?X)h-7^%=*gjvQjqanCFegN#l0wPCDuAedIk;M4-XN-D}5ql0s z4cZ|Y0mqo;0^wmnR9FJCYWDx`oQr>J5P${nKm4XSfqgxm{=e#u)tZg|IV}Qq0u0%! z5-q#hhjoC7oIyS6J~1sA2RGO!Sij#Px^`Xy^tj{E5_%sUEc*P|0+{I=iy+HtAnF@P z3tK=xB4T^i?`xf<^9DuylBf@#$;s>ufF% z*F5ft@3DP;znAJ5|C*my99fRndXp!%|J)whe!1*h zETVO8E>|a-`?3eK{j=-S>B$!wp;J};^Rm>xkCpx3ayIrsx2t_(?Vs@bD1fmRfVBX! zg=+~JQ~_+N`j?YcOE{0Jf4d7!Z!7;dF4;eQA$vi-c7X7|c(H4~LiSMdtWY>nXzHiz zzq9p@)nNir$roOo->86nq};tJ{LdNr$75#tq8P9*+yO2C`l$t?0-%fjPA`4Ka2@B~ z%69%E*(5tfo_LfPKhtxmVIRb$EerJGx~pb_EC10>aupJ&ThY~n(Q;QHp^gHfRhvf zysX-j0g3_CDOmRt9{}F5@;rkL;v=vCp8xF_kWmyq#c{LuYAgVZ02@GOFl&LJ%KO?Y z*@iHVj2LiY_KzO~=l1>K30>J|%K!u5{hzY`YGYL|dw=j_jPVUd6OY_C11|10I2WkL zFPSa8e4Gnxz`oO-9t8V3gl+VSsrI|P<_v=E2ADIt{5{Sf#2j6B1dSuYHgTLB_nb^8 z>;uU6dpzRYY}>GEt^kVuC9n}=-H0~JvI4-dhfaZYbF_lRj{9lc`<{b-?ilwO9>?=W z6Y}~n_6@e`zOQrvAP?A2eGR_PA1uz%+@CL${hQYQsyev*T75UJRPJxO`cXb0_3v19 z{d+^v`e~|FeP4?BM;fj4{siIR9}D2DKZ>B0f0RM+4>O3Fz>I#XfYz7K+(hcvv6@R< z3je)SS^S=Ku!+f(^sVd_>Hpw=VQFm(Wiyh;6e(#Q>}UqW+WpqxuJgy9x;Gdvhkh7LZJ!dBP;kfp}PTO3$gD@>tCS9+GrQ z7ZdM#HhWn3e<9m6->vwz9NnJT-l=`NR%RMn_0l>ZAFB@WFy#PN(;Xy}XAWtW$o;iV zz(?TW>HpvnZjTr^Hm^5R4!hwh0=jnwR|Fkcg5cWzE5^ThHOf5wKEls~|4;z%gJ9ok zxG@2SeyV%p`W^NU{9{AH5?KASdQE%*cLpKYGHe2ts6noMC-tvp|8Y&QhOTFb^EJ*v zm8~LI%xA@Oa|A1!{4FZ`IVQ9T5}Em`MZkxFVoDw2UUqOBAc9UpFA$MewI2_e4{QsA4vzCD0Exz zV@yY%Z!>@NK4%870E4C64U!cYroEyHjvAot6#d@SN`(Ja}_)JGSC+_1h-k;An z6F@Zpp5HMA>L2)DRrP-(<vdJebGlH+?^-`{Nlpfae1GHx__-LK~_B`mM5jFG*23URQPQx(486`Txfidp(eK zQRl(K%g?Io+lRMbtG1H=?_Ir9u3WC8mB`1`_$LqO`W;3uSjDHC1sMH~<{3X$_Cjkm z|3wq_C}iB>Ij|^rQgdSV#-cP4q%ntwf>pZ@kNf@L<-myjotXd_04shK6ksXl@UollV&^!39o!e&4n zdvG-u)Av=v@XuP`gLnlz|5*3+HLe5sjsbiQz6QTm48Xr<2zWMwV-a&G>=-tPXTIuK zV?XB|@74H!?kWrqK6 zmzPz2)c1Gw>egaE&HTMw+pWU?wb`=Ss_6)+|0mZyE9a8u`#_#=gWAud?&1Gk=Z+3& zpAYYM+)oB@P;CL&mkL0-VA2C@o4N9$SIOuxuxDgQT6vu)-r*2{lL zuS^~i3*TJ$BL7GKA98eX0IUCV+5q$T<%H(3%BcNAOeHWs=WlC&pg*bxt^YgokNR)? zqyO(Hh2qI%RrMrXMEGB`SVcL>t+FN5ldzNWl9wokq4PKTf8+hZy01xiep>*lg2Ogo z2T=#sRcv#$x&XbQx~k)~z1BJ-nVN1X^pkhFBl|&>2lHuO)(P$N+U@p{)wzGeZFx=Ax&2=Cc)39_MDuR15c2O43q3FU zMkm=RxmNXb7ioMhuG;rERgpJVxVGL$ZjbHPa{$0U+i>kQSQY>V04JaW*!n`uBq{U< zDW3RFHTwOv^6%%G3AkHwar#5{p?Z-H6WZod4dR#SMd~=TkK*k0^!Z+j%{$kdt96Bu%06WVBY?C(DR#QmHp{vO1S(r?fIwI;x`hz3S$meMqN z|2L%oPF1zxEv>baAzBOY7Ucl%mHnNS?U7$ttXOTKSy|)T4_EtCTULXr`^(Q%iEyay zpsP5D_?QdI=z*)_t?lo_2jUkPCuX{gDG<%L3jYZb+`ZSaq&>bzB#fd#nyZ0O|HzQr z0xzDkP@Amf-Jy<`qeE|P-F$d2anU4}%fHeT~;Gf^k zYvw*&1uFr;ef*s30{){0h`($6bG^-HI2vqE@UkY#!2*DE?k*Z0)|#_4?wu3F&b#8v z*1=c7@qp1!-wi%Lb1lAUxilxdM7>s!~_=mOg(^b6i`NeBQ zFDnnenfUbA{|owE18n`zx}U$PQ*8lU0RaAo=p46GbUq_lB-=8dTh+g#)RSO(eu(Bm zY^chDR7ZA%6aZ%blK*4vPgp&(qOp4;gnavae7%){um)%&T&uNoW~ZwP`fVwI=L-L4 zwSJ>cV1G-`RR-XGS%HVLzIngmrgCX10OzVJ`(>I3v~@L4wO+Y>ahVhVTXt$XJL|rK zYvVld56V4e;KOFRj3CBJ_(fX+5C#6dh28K-Bg@#t14PK-a~%Otn-lntTDMe~0NKsB z2PvS#NCFAg(7;lm*FhBT8dop{=KOf|GUxaBtHk~dY8u_l7Qudy+}27p`Z-HBpFJyh z!~Crum`OO(k3|7@FdEM>;9XuJ^I*;b)+BrW{{CAPDi>-#eM`Bz1(W-fyIV_W zcFx~Ohx5AjpV;49d(wsSf98XQ|22!B zrBJ+(o~*yNpKQh0y8g#GztHM!2W$gS_2BcUdfgS5-=@rcY=oFEVb}k1T>COVE$^ zvE^X=;O*hp#Lmrcd@-KX_;>y8|M%3#Ngd*gEM18cZhia;Gch3 zfhJGUsucmBgKa|a8}lC90Umoc1G4}*GuA6I{%yPBK3Jc?${Fn--i(bS=QZD3dwTA? z?>C=^)6uy(vI5owd<{HO==tAMdB5I@{?}FqN8dUeX9zSDaEAxDb4$z zR;&LvWdo%C9V*6usmA9Es;KL(%GWF9_13D#ur)wD86!UM&SNqHkrA||uqMDfn04hZ z@&Eg3*2@R2rM33=ysGl~xHTo2nJ%tgoBiuv8~@RH%uJ^wchvlUj1;-9!l%*Rpf;YH z1-J@eHQA?oG*98zsBfNm1_1d2=KqoPw!PCuIfqOxIQH|A^3kSN36cOnz@Mp*pVpPWy=V2h}On@2h>Qf0qlEix+!~|HJZv z?-|qfcZ?W&4=~R@VB6IqwgrqD#uEGUh*1+7l06Y)&7Kpj&k?J=Rf8L1fLN_NJYD3; zK!ZI#EPz*oE8`~}KfC9b@#I_qdy)Bbzh9Vg=bMqQ_nGPxCvAtIKV~{kyBr)JxUWa)qLsy8d6Hng6#a`*&gXo2-Y}?!%f*bCoJp zme*XJPgJWmQKJ}?yUr)F{I&u9iRw3476BgYJy8lhGmaj>lWP2Pnn11#mMR-NuS& z=m2DvZ*>n#5K5r6|6l-(GCE9qY^^-PW6Cp719Y6`0&SQKNS9R(@CjXiIxi2;M;DKk zE2{?JVx^G&P#rD?(6!oDRX`VM9w1|z`%0~c)gU;q6>V_AXt7cRlH)P{FwpNfkrBhI z#(U%cJ*wcOY#@Vp6y*?95-&I2pApYLN5$Yc*g*JA;~#t&BjH7f3D_Hq;AM%C-7%kh zp7nbBe`0oyA?#2@2Kex$bQPEh;qHjejlz7rKDx7Cz6v1SC~toA$U1_#0g8jq5QamB zgQJ>Tm`3Y^wS*$zv*8^4jv0;Zo%iCr_~%}ye2eEbInK8(iT&X(+ir7oX8m}7t~tt% z?+#wzf=Ed zYX9yP2R$kKIQ>!i`5DswuT$TzPRR<%E1HitMwni+_V@TOTLB~8b-&K~k@trOyF)0E zKk>1ne|mr)pbj`sNu`@hvvfaIX7Q}#)wGLx5%tm9AA_{kPMKe;wKi@L{#j{&*?*mD z3lQp`F^lK75@^e?ypVf{YH8m3U-9pifTQZic|%74WC7g)Xf@fd(VC@jv)1N%I~}MM z07fYPzglreesZNL@E# zqLJbcCkXqqR9ShMaxBv|3$jYTN$Cats2IRKS((3*4=r!2u2e6;-tFnt0oq1YSCu!b zKk|mM=Xd}jJLi1BzLg}#v$?;kz_1HE0tbu@#u6jNb|XfV@o%0P%#&wEoYCS48Vlf# zJnnuI5k0=#kus0wRKY+y7QlAF`+mUv8586Sxb$k3G&pDp3M0jtI0$P{W zl|bX_D*x6?ESKDfuL`!!Na37)g+L03=Qp3{yYa(;e%O!o23Aq0{*WVLMo@Tp&dyr@ zoZ5g9UkL4C?cg<03GKdyjsNHG*`C_En%{F|oE87!FuotgHTIqj@6O#a-?If^Kk)DS z%Wv`k*b3(aodclqr?0w~E?Si3zsmEgPpjU_FHdSuRNs#&TH*Qz&HW+w|6sOnc2D}O zvh&x=)7>epZe?Za9+r1qN8^?a#&5mPF~G>#+_tIuvDc^XKQ*tO`?9fAFFF7otc=2= z(*1tc%Afy~wlFPuKkbu$C;Si8_P(l+&P%sXuB-7+_n%dy&Uc>etEu4y@3sYv1z1i9 zUPF}y5B~q4zxTK31mGVQ;BRX15C89>zlQ&xEQRuD&C2hoDycQZ0D2eq$dnY?0zoF<>?a+Rpy>0thdH;Qt1^9cJmWvj@QxzaN0Q-MN1q{9!%|y+N0at-K z8^ri0B4D#UV1z{EAK0+(u}2D@WbX)Oc;xsP1IpQ`&QKWhbPz;dQTVw=Z5z;v*Gy7u58ypJN6qZ z1ezU#@fzF>Tg^S=j&okVmqt7LV9AICI6t4O?>#Kew%$CTyLw37n;%~sUv6AITqRm( z_9CtM{m*ifVsL)Hl)vjV?q-Ssj92a7MH=Tg&aFy--8Hg3tIhGhbwAev zjF=r2gcgARr|ZWCijiF@%i7=DC~n?e>iIOSBk*eLpPFU+ttx@9O}1J%m9S(gLnV$_{*c<04wS59V4x>iTD5Kqo^1%`mq4cD!Bf4 z6=fRx37x3(*R&2z9!)!mm5`I{UEHs(i0erIn@636z7;2;HUa)`{m-Zm+*9k=bOU7O z)7rBcK_~#QsIj^dSE>TwL**JS)b?5H!sM8A9bNqwbPsOV|G~2j+EEJ07I}m)mW+FI21cHd;9MJH53GYg z;)sZjoq4k_#%Ho(j@hkwf8gIf5zki%4PZasx6T*d(L5lYv0vo=t&ejwuFSCx02Ag6 zZHGXrePoPqIw8>4wx@pE|8t($Mt*zzTMgk#fEVkX=mpZA0Cfw1U(vSs@B)7@$cH-h-O{!L+*=FZH|k#qt0&Y1L40&7D)c9+Pwp3^M6+Vr3T2=zh?f{0bCUrxjc*l<&>%kKk16}gbTJdN1V*7Hq zR{Q=)U4L&@-`_u0KNe@^Z)Z2E|NKpgJnz+tzn`QFq(hSj>gfN|R%fYyUnpkZzSg?n z|BPyTI23NiJ5jE^9yRXtyQSaPrc(R1QLb!jMbumA^ScWDhY6*BPy~IeI)8kj=zr-LHqyd z5w$fhA=vmVN*8q@r=+Q&~nbvw^6b=4vqyc!qe;le!uwE8^&tBqks`)#0T<&XBy}B zJi+;meydUDq9BA(i=}Wzkg*H?3yo}0&Oht`|G+q--TXgZZQcnC89|{5fE=&$%ldxy z`1}?7U|08ZOy(qxlkM+3?oq^vZ#_Gj^Y)lG{(0>A(69#gLot^CfBYT37yHSKBl-=P z`It{R;#o*BfbCrzx%ob?@rv!Bv5%F21z0ciHNpRT7BJCGT;GVTu(tfo@YRl1d>)_} z3&1{Ba>0M6dUGs*UFR+a*Jmt*9>AFsH*{6*Z-@M|{28grhibL&AF7=-@AtsAdQBE< zYQ-JUKSR|gcV)X}_onYj@tYxK`X*ttQ(gOay70S+qFr!LEw6iDc>WtckQkr-)~s|t zNep_c8u>fQ=kK6TZl|9+X-3cQl{A106KsV(E3|5v+dH2g#Gz6Cwiu|&@E)0So?2XVcGb$#|QaV zNgVSB`fV9pA%SgRKGdG#8P99GPE~*xN(p%&xjfxTRlv__2Ig)0y?Va1YP9~Vc>u?? z=W0J$y;?n2tzC^RhZHC019eAT1stQqW5gbv5o7dwgy27jCCM2v;_Z3($+%~Uak5?Kc-WfqSI6X4JJ{t(I-v{S0-tG0nAA%3;LU0BAXJ`U^hqZsN>T3po4+j5O z1T%DAAztAez=D-9pC{GrXd-xdqsS;>{Nn*V8yf7P7p$P~0Nq>(V-Wn||H;sI(B7_^ zHcK}TA>x7681K$<#@XZVxdNP3vjqdNH3a|8{c{!(ePCH_4;-I?eDk*8@}cT+OjvTx z7fgF2zVSWg^R@uoW!pL12}edFwBGj`Mc;C<>W|e^RR?wae!ktYeYSf37h3W6dUgG| zPub_&vT@nj>HYF^HwdNReGGnZzrtp zuF<`_V))&}<98C4cdEVrp<@3hsD9=I*_PYo`@U%P(CVLqvc2*S^-4Rvq_p3XZITXB z-+`T!FI-Fb?>n0@4Yd!PgMV8AY(QfH zoI9Z!in)SgWfT7(-v7E(i*r;{@Ota_$#&^LdHxrb1H>Btl--ptSe{Xx)xJjSfxW9v z&2LBrJf%EX-M~jn?MD3%eTeZC8{>!3<9IPLMIIew!Gl4AbVd!<0Yn*F5gQYIH%c6y zljz_4l@1y1lx=)7=8XU&!8XCKHh91Wq_cUkU$vHwT|j4d)gStW=i~DC$i-6)fR83B z;T&xTjPgLcy&Rf|^$sv@4&VqNA{Q7omSI_a3%JGxu$c*9ZRj_EO>`E(*?Kq-w!!Nh z+5*`B>y-2l?6cwb8-9R&L)9dUKxGs2|D3txEV$ zu$A-cSQT>}zC9kpjJm7tXUqHr@yXN6G1X<&v(=FHL+yJMRi@=1^4F#OT`Thqd>i@pEoxrBqbvf*-bVa>Yq9)oYmD!%d3$@S zcJCnN`S#P}J+$qrZ4cRl{l$2X);2}kROP&$(d?g|TK#X`?05O%%KfiV^i=on%cVZ7 znw_y^IeO0_@x|B8Rl{*4GAx{AO8I@i@d1I7RG|L3*FCP$|4 zWKXLqVNKN~%*x-$4o|L%$#68)L31~ zla&eiK(mehq^M{{YeceW`eQmx_zV7DuTzUMvZ5YfYIF7x4;GAc%S>5Cex$~|H zVLz*%JZI+5@ch_(+2V)dopP`0n(D)9*Y+#zL)GP?U;hy8~CQ8|Kl`wu}B_C?n)1n0{E;l05|G>tduWTTvT>Yq;^Alwf2X?|FzZ6 zx8 z4qH4cAzX_&;{d7}T=|O?fC2Eg%sGO8;Q7I>qj)nq+ijm+V;isr?92I@x5ex&-+8J8 zuz#I(*5IESapIz$QjGtSPbs$6jQ~|620@rwY3V3Ag;*Pul@C&JWiJK3tD@=P<3CailhT_#^fD z;d+ht4%D`vtOI-fPQUr|(NYv=hyip?%5>}OSk1H_T>JlP^0TtuX~*OYaSCP|qW&@a zx6>~iAk=#^0r1~Z?+=nynlsY>-yU24LjkZ22`+GhxjPsmsz1!wD`dKBedPPhQj9}05j-Wxn_wF^$J;cx-FIJ@&b}76N66 zJ0Dq*L0YwR;o^(p(Q@!1$D1d5T^gp&>0LM+8U5-ooYoc z&6F6ZHA&vdzs}B5PV`6BETyW2Izlnf#5(>*{|^S>+CNZFK7^mv2G**pBaHqv6d!

    wzgoRx_2T>#{kTiIyaj_9}KGcM_$z^rK- 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ᡙEN~X{>i7gzw-8< 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