Full Code of gokulkrishh/qrcodescan.in for AI

master 7418a18ef48e cached
24 files
3.4 MB
895.5k tokens
15 symbols
1 requests
Download .txt
Showing preview only (3,582K chars total). Download the full file or copy to clipboard to get everything.
Repository: gokulkrishh/qrcodescan.in
Branch: master
Commit: 7418a18ef48e
Files: 24
Total size: 3.4 MB

Directory structure:
gitextract_rj_io85i/

├── .editorconfig
├── .github/
│   ├── FUNDING.yml
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   └── workflows/
│       └── deploy.yml
├── .gitignore
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── package.json
├── public/
│   ├── CNAME
│   ├── ads.txt
│   ├── decoder.js
│   ├── index.html
│   ├── manifest.json
│   ├── robots.txt
│   └── sitemap.xml
├── rollup.config.js
└── src/
    ├── css/
    │   └── styles.css
    └── js/
        ├── index.js
        ├── snackbar.js
        ├── utils.js
        └── vendor/
            └── qrscan.js

================================================
FILE CONTENTS
================================================

================================================
FILE: .editorconfig
================================================
root = true

[*]
indent_style = tab
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.json]
indent_style = space
indent_size = 2

================================================
FILE: .github/FUNDING.yml
================================================
github: [gokulkrishh]


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
 - OS: [e.g. iOS]
 - Browser [e.g. chrome, safari]
 - Version [e.g. 22]

**Smartphone (please complete the following information):**
 - Device: [e.g. iPhone6]
 - OS: [e.g. iOS8.1]
 - Browser [e.g. stock browser, safari]
 - Version [e.g. 22]

**Additional context**
Add any other context about the problem here.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.


================================================
FILE: .github/workflows/deploy.yml
================================================
name: github pages

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-20.04
    steps:
      - uses: actions/checkout@v2

      - name: Setup Node
        uses: actions/setup-node@v2.1.2
        with:
          node-version: "12.x"

      - name: Cache dependencies
        uses: actions/cache@v2
        with:
          path: ~/.npm
          key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
          restore-keys: |
            ${{ runner.os }}-node-

      - run: npm ci
      - run: npm run build

      - name: Deploy
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: ./public

================================================
FILE: .gitignore
================================================
logs
*.log
npm-debug.log*
node_modules
.DS_Store
dist
.env
public/bundle.js
public/bundle.css
public/service-worker.js
public/service-worker.js.map
public/workbox-*.js


================================================
FILE: .prettierignore
================================================
*.json
/dist
app/decoder.js

================================================
FILE: .prettierrc
================================================
{
	"printWidth": 140,
	"singleQuote": true,
	"parser": "babel"
}


================================================
FILE: LICENSE
================================================
The MIT License (MIT)

Copyright (c) 2016 code-kotis

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.


================================================
FILE: README.md
================================================
### <p align="center"><img width="150px" height="150px" src="https://raw.githubusercontent.com/code-kotis/qr-code-scanner/master/app/images/touch/android-chrome-192x192.png"></p>

# [QR Code Scanner](https://qrcodescan.in)

*QR Code Scanner - a simple, fast and useful progressive web application*

### [Live](https://qrcodescan.in)

## Features

  - App Shell
  - Offline
  - Secure via https
  - Responsive
  - Add to home screen & Splash screen
  - Supported Browser (Mobile & Desktop) - Google Chrome, Firefox, Safari, Opera, Microsoft Edge and now supports iOS as well.

## Installation

1. Clone this repo

  ```bash
  git clone https://github.com/code-kotis/qr-code-scanner
  ```

2. Installation

  ```bash
  npm install
  ```

3. Run

  ```bash
  npm run start
  ```

4. Build

  ```bash
  npm run build
  ```

### Contributions

If you find a bug, please file an issue. PR's are most welcome ;)

#### MIT Licensed


================================================
FILE: package.json
================================================
{
	"name": "qr-code-scanner",
	"description": "QR Code Scanner is the fastest and most user-friendly progressive web application.",
	"version": "1.0.2",
	"scripts": {
		"build": "NODE_ENV=production rollup -c",
		"watch": "rollup -c -w",
		"start": "npm-run-all --parallel serve watch",
		"serve": "rollup -c && serve public",
		"precommit": "lint-staged",
		"pretty": "prettier --write 'src'"
	},
	"lint-staged": {
		"*.{js,css,html}": [
			"npm run pretty",
			"git add"
		]
	},
	"engines": {
		"node": ">=14.0.0"
	},
	"devDependencies": {
		"cross-env": "^7.0.3",
		"gh-pages": "^3.2.1",
		"husky": "^6.0.0",
		"lint-staged": "^11.0.0",
		"npm-run-all": "^4.1.5",
		"prettier": "^2.3.1",
		"rollup": "^2.52.1",
		"rollup-plugin-css-only": "^3.1.0",
		"rollup-plugin-delete": "^2.0.0",
		"rollup-plugin-sizes": "^1.0.4",
		"rollup-plugin-terser": "^7.0.2",
		"rollup-plugin-workbox": "^6.1.1",
		"serve": "^12.0.0"
	}
}


================================================
FILE: public/CNAME
================================================
qrcodescan.in


================================================
FILE: public/ads.txt
================================================
google.com, pub-8317178183177647, DIRECT, f08c47fec0942fa0

================================================
FILE: public/decoder.js
================================================
// The main barcode scanning processing function.
// Compiled from zbar.sf.net using emscripten.
//
// Copyright (C) 2013 Yury Delendik
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

self.onmessage = function(imgData) {
  postMessage(zbarProcessImageData(imgData.data));
};

function zbarProcessImageData(imgData) {
  var result = [];
  var Module = {};
  Module['imageWidth'] = imgData.width;
  Module['imageHeight'] = imgData.height;
  Module['getImageData'] = function(grayData) {
    var d = imgData.data;
    for (var i = 0, j = 0; i < d.length; i += 4, j++) {
      grayData[j] = (d[i] * 66 + d[i + 1] * 129 + d[i + 2] * 25 + 4096) >> 8;
    }
  };
  Module['outputResult'] = function(symbol, addon, data) {
    result.push([symbol, addon, data]);
  };

  /* EMSCRIPTEN_CODE */
  // The Module object: Our interface to the outside world. We import
  // and export values on it, and do the work to get that through
  // closure compiler if necessary. There are various ways Module can be used:
  // 1. Not defined. We create it here
  // 2. A function parameter, function(Module) { ..generated code.. }
  // 3. pre-run appended it, var Module = {}; ..generated code..
  // 4. External script tag defines var Module.
  // We need to do an eval in order to handle the closure compiler
  // case, where this code here is minified but Module was defined
  // elsewhere (e.g. case 4 above). We also need to check if Module
  // already exists (e.g. case 3 above).
  // Note that if you want to run closure, and also to use Module
  // after the generated code, you will need to define   var Module = {};
  // before the code. Then that object will be used in the code, and you
  // can continue to use Module afterwards as well.
  var Module;
  if (!Module) Module = (typeof Module !== 'undefined' ? Module : null) || {};

  // Sometimes an existing Module object exists with properties
  // meant to overwrite the default module functionality. Here
  // we collect those properties and reapply _after_ we configure
  // the current environment's defaults to avoid having to be so
  // defensive during initialization.
  var moduleOverrides = {};
  for (var key in Module) {
    if (Module.hasOwnProperty(key)) {
      moduleOverrides[key] = Module[key];
    }
  }

  // The environment setup code below is customized to use Module.
  // *** Environment setup code ***
  var ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function';
  var ENVIRONMENT_IS_WEB = typeof window === 'object';
  var ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';
  var ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;

  if (ENVIRONMENT_IS_NODE) {
    // Expose functionality in the same simple way that the shells work
    // Note that we pollute the global namespace here, otherwise we break in 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);
      // The path is absolute if the normalized version is the same as the resolved.
      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) {
      return Module['read'](filename, true);
    };

    Module['load'] = function load(f) {
      globalEval(read(f));
    };

    Module['thisProgram'] = process['argv'][1].replace(/\\/g, '/');
    Module['arguments'] = process['argv'].slice(2);

    if (typeof module !== 'undefined') {
      module['exports'] = Module;
    }

    process['on']('uncaughtException', function(ex) {
      // suppress ExitStatus exceptions from showing an error
      if (!(ex instanceof ExitStatus)) {
        throw ex;
      }
    });
  } else if (ENVIRONMENT_IS_SHELL) {
    if (!Module['print']) Module['print'] = print;
    if (typeof printErr != 'undefined') Module['printErr'] = printErr; // not present in v8 or older sm

    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;
    }

    this['Module'] = Module;
  } 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 {
      // Probably a worker, and without console.log. We can do very little here...
      var TRY_USE_DUMP = false;
      if (!Module['print'])
        Module['print'] =
          TRY_USE_DUMP && typeof dump !== 'undefined'
            ? function(x) {
                dump(x);
              }
            : function(x) {
                // self.postMessage(x); // enable this if you want stdout to be sent as messages
              };
    }

    if (ENVIRONMENT_IS_WEB) {
      window['Module'] = Module;
    } else {
      Module['load'] = importScripts;
    }
  } else {
    // Unreachable because SHELL is dependant on the others
    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';
  }

  // *** Environment setup code ***

  // Closure helpers
  Module.print = Module['print'];
  Module.printErr = Module['printErr'];

  // Callbacks
  Module['preRun'] = [];
  Module['postRun'] = [];

  // Merge back in the overrides
  for (var key in moduleOverrides) {
    if (moduleOverrides.hasOwnProperty(key)) {
      Module[key] = moduleOverrides[key];
    }
  }

  // === Preamble library stuff ===

  // Documentation for the public APIs defined in this file must be updated in:
  //    site/source/docs/api_reference/preamble.js.rst
  // A prebuilt local version of the documentation is available at:
  //    site/build/text/docs/api_reference/preamble.js.txt
  // You can also build docs locally as HTML or other formats in site/
  // An online HTML version (which may be of a different version of Emscripten)
  //    is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html

  //========================================
  // Runtime code shared with compiler
  //========================================

  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; // A pointer
          } 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,
    getAlignSize: function(type, size, vararg) {
      // we align i64s and doubles on 64-bit boundaries, unlike x86
      if (!vararg && (type == 'i64' || type == 'double')) return 8;
      if (!type) return Math.min(size, 8); // align structures internally to 64 bits
      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 < Runtime.functionPointers.length; i++) {
        if (!Runtime.functionPointers[i]) {
          Runtime.functionPointers[i] = func;
          return 2 * (1 + i);
        }
      }
      throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.';
    },
    removeFunction: function(index) {
      Runtime.functionPointers[(index - 2) / 2] = null;
    },
    getAsmConst: function(code, numArgs) {
      // code is a constant string on the heap, so we can cache these
      if (!Runtime.asmConstCache) Runtime.asmConstCache = {};
      var func = Runtime.asmConstCache[code];
      if (func) return func;
      var args = [];
      for (var i = 0; i < numArgs; i++) {
        args.push(String.fromCharCode(36) + i); // $0, $1 etc
      }
      var source = Pointer_stringify(code);
      if (source[0] === '"') {
        // tolerate EM_ASM("..code..") even though EM_ASM(..code..) is correct
        if (source.indexOf('"', 1) === source.length - 1) {
          source = source.substr(1, source.length - 2);
        } else {
          // something invalid happened, e.g. EM_ASM("..code($0)..", input)
          abort(
            'invalid EM_ASM input |' +
              source +
              '|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)'
          );
        }
      }
      try {
        // Module is the only 'upvar', which we provide directly. We also provide FS for legacy support.
        var evalled = eval('(function(Module, FS) { return function(' + args.join(',') + '){ ' + source + ' } })')(
          Module,
          typeof FS !== 'undefined' ? FS : null
        );
      } catch (e) {
        Module.printErr(
          'error in executing inline EM_ASM code: ' +
            e +
            ' on: \n\n' +
            source +
            '\n\nwith args |' +
            args +
            '| (make sure to use the right one out of EM_ASM, EM_ASM_ARGS, etc.)'
        );
        throw e;
      }
      return (Runtime.asmConstCache[code] = evalled);
    },
    warnOnce: function(text) {
      if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {};
      if (!Runtime.warnOnce.shown[text]) {
        Runtime.warnOnce.shown[text] = 1;
        Module.printErr(text);
      }
    },
    funcWrappers: {},
    getFuncWrapper: function(func, sig) {
      assert(sig);
      if (!Runtime.funcWrappers[sig]) {
        Runtime.funcWrappers[sig] = {};
      }
      var sigCache = Runtime.funcWrappers[sig];
      if (!sigCache[func]) {
        sigCache[func] = function dynCall_wrapper() {
          return Runtime.dynCall(sig, func, arguments);
        };
      }
      return sigCache[func];
    },
    UTF8Processor: function() {
      var buffer = [];
      var needed = 0;
      this.processCChar = function(code) {
        code = code & 0xff;

        if (buffer.length == 0) {
          if ((code & 0x80) == 0x00) {
            // 0xxxxxxx
            return String.fromCharCode(code);
          }
          buffer.push(code);
          if ((code & 0xe0) == 0xc0) {
            // 110xxxxx
            needed = 1;
          } else if ((code & 0xf0) == 0xe0) {
            // 1110xxxx
            needed = 2;
          } else {
            // 11110xxx
            needed = 3;
          }
          return '';
        }

        if (needed) {
          buffer.push(code);
          needed--;
          if (needed > 0) return '';
        }

        var c1 = buffer[0];
        var c2 = buffer[1];
        var c3 = buffer[2];
        var c4 = buffer[3];
        var ret;
        if (buffer.length == 2) {
          ret = String.fromCharCode(((c1 & 0x1f) << 6) | (c2 & 0x3f));
        } else if (buffer.length == 3) {
          ret = String.fromCharCode(((c1 & 0x0f) << 12) | ((c2 & 0x3f) << 6) | (c3 & 0x3f));
        } else {
          // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
          var codePoint = ((c1 & 0x07) << 18) | ((c2 & 0x3f) << 12) | ((c3 & 0x3f) << 6) | (c4 & 0x3f);
          ret = String.fromCharCode((((codePoint - 0x10000) / 0x400) | 0) + 0xd800, ((codePoint - 0x10000) % 0x400) + 0xdc00);
        }
        buffer.length = 0;
        return ret;
      };
      this.processJSString = function processJSString(string) {
        /* TODO: use TextEncoder when present,
        var encoder = new TextEncoder();
        encoder['encoding'] = "utf-8";
        var utf8Array = encoder['encode'](aMsg.data);
      */
        string = unescape(encodeURIComponent(string));
        var ret = [];
        for (var i = 0; i < string.length; i++) {
          ret.push(string.charCodeAt(i));
        }
        return ret;
      };
    },
    getCompilerSetting: function(name) {
      throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work';
    },
    stackAlloc: function(size) {
      var ret = STACKTOP;
      STACKTOP = (STACKTOP + size) | 0;
      STACKTOP = (STACKTOP + 15) & -16;
      return ret;
    },
    staticAlloc: function(size) {
      var ret = STATICTOP;
      STATICTOP = (STATICTOP + size) | 0;
      STATICTOP = (STATICTOP + 15) & -16;
      return ret;
    },
    dynamicAlloc: function(size) {
      var ret = DYNAMICTOP;
      DYNAMICTOP = (DYNAMICTOP + size) | 0;
      DYNAMICTOP = (DYNAMICTOP + 15) & -16;
      if (DYNAMICTOP >= TOTAL_MEMORY) enlargeMemory();
      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.0 : +(low >>> 0) + +(high | 0) * 4294967296.0;
      return ret;
    },
    GLOBAL_BASE: 8,
    QUANTUM_SIZE: 4,
    __dummy__: 0
  };

  Module['Runtime'] = Runtime;

  //========================================
  // Runtime essentials
  //========================================

  var __THREW__ = 0; // Used in checking for thrown exceptions.

  var ABORT = false; // whether we are quitting the application. no code should run after this. set in exit() and abort()
  var EXITSTATUS = 0;

  var undef = 0;
  // tempInt is used for 32-bit signed values or smaller. tempBigInt is used
  // for 32-bit unsigned values or more than 32 bits. TODO: audit all uses of tempInt
  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;

  // Returns the C function with a specified identifier (for C++, you need to do manual name mangling)
  function getCFunc(ident) {
    var func = Module['_' + ident]; // closure exported function
    if (!func) {
      try {
        func = eval('_' + ident); // explicit lookup
      } catch (e) {}
    }
    assert(func, 'Cannot call unknown function ' + ident + ' (perhaps LLVM optimizations or closure removed it?)');
    return func;
  }

  var cwrap, ccall;
  (function() {
    var stack = 0;
    var JSfuncs = {
      stackSave: function() {
        stack = Runtime.stackSave();
      },
      stackRestore: function() {
        Runtime.stackRestore(stack);
      },
      // type conversion from js to c
      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) {
          // null string
          // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0'
          ret = Runtime.stackAlloc((str.length << 2) + 1);
          writeStringToMemory(str, ret);
        }
        return ret;
      }
    };
    // For fast lookup of conversion functions
    var toC = { string: JSfuncs['stringToC'], array: JSfuncs['arrayToC'] };

    // C calling interface.
    ccall = function ccallFunc(ident, returnType, argTypes, args) {
      var func = getCFunc(ident);
      var cArgs = [];
      if (args) {
        for (var i = 0; i < args.length; i++) {
          var converter = toC[argTypes[i]];
          if (converter) {
            if (stack === 0) stack = Runtime.stackSave();
            cArgs[i] = converter(args[i]);
          } else {
            cArgs[i] = args[i];
          }
        }
      }
      var ret = func.apply(null, cArgs);
      if (returnType === 'string') ret = Pointer_stringify(ret);
      if (stack !== 0) JSfuncs['stackRestore']();
      return ret;
    };

    var sourceRegex = /^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;
    function parseJSFunc(jsfunc) {
      // Match the body and the return value of a javascript function source
      var parsed = jsfunc
        .toString()
        .match(sourceRegex)
        .slice(1);
      return { arguments: parsed[0], body: parsed[1], returnValue: parsed[2] };
    }
    var JSsource = {};
    for (var fun in JSfuncs) {
      if (JSfuncs.hasOwnProperty(fun)) {
        // Elements of toCsource are arrays of three items:
        // the code, and the return value
        JSsource[fun] = parseJSFunc(JSfuncs[fun]);
      }
    }

    cwrap = function cwrap(ident, returnType, argTypes) {
      argTypes = argTypes || [];
      var cfunc = getCFunc(ident);
      // When the function takes numbers and returns a number, we can just return
      // the original function
      var numericArgs = argTypes.every(function(type) {
        return type === 'number';
      });
      var numericRet = returnType !== 'string';
      if (numericRet && numericArgs) {
        return cfunc;
      }
      // Creation of the arguments list (["$1","$2",...,"$nargs"])
      var argNames = argTypes.map(function(x, i) {
        return '$' + i;
      });
      var funcstr = '(function(' + argNames.join(',') + ') {';
      var nargs = argTypes.length;
      if (!numericArgs) {
        // Generate the code needed to convert the arguments from javascript
        // values to pointers
        funcstr += JSsource['stackSave'].body + ';';
        for (var i = 0; i < nargs; i++) {
          var arg = argNames[i],
            type = argTypes[i];
          if (type === 'number') continue;
          var convertCode = JSsource[type + 'ToC']; // [code, return]
          funcstr += 'var ' + convertCode.arguments + ' = ' + arg + ';';
          funcstr += convertCode.body + ';';
          funcstr += arg + '=' + convertCode.returnValue + ';';
        }
      }

      // When the code is compressed, the name of cfunc is not literally 'cfunc' anymore
      var cfuncname = parseJSFunc(function() {
        return cfunc;
      }).returnValue;
      // Call the function
      funcstr += 'var ret = ' + cfuncname + '(' + argNames.join(',') + ');';
      if (!numericRet) {
        // Return type can only by 'string' or 'number'
        // Convert the result to a string
        var strgfy = parseJSFunc(function() {
          return Pointer_stringify;
        }).returnValue;
        funcstr += 'ret = ' + strgfy + '(ret);';
      }
      if (!numericArgs) {
        // If we had a stack, restore it
        funcstr += JSsource['stackRestore'].body + ';';
      }
      funcstr += 'return ret})';
      return eval(funcstr);
    };
  })();
  Module['cwrap'] = cwrap;
  Module['ccall'] = ccall;

  function setValue(ptr, value, type, noSafe) {
    type = type || 'i8';
    if (type.charAt(type.length - 1) === '*') type = 'i32'; // pointers are 32-bit
    switch (type) {
      case 'i1':
        HEAP8[ptr >> 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.0
            ? tempDouble > 0.0
              ? (Math_min(+Math_floor(tempDouble / 4294967296.0), 4294967295.0) | 0) >>> 0
              : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296.0) >>> 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'; // pointers are 32-bit
    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; // Tries to use _malloc()
  var ALLOC_STACK = 1; // Lives for the duration of the current function call
  var ALLOC_STATIC = 2; // Cannot be freed
  var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk
  var ALLOC_NONE = 4; // Do not allocate
  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;

  // allocate(): This is for internal use. You can use it yourself as well, but the interface
  //             is a little tricky (see docs right below). The reason is that it is optimized
  //             for multiple syntaxes to save space in generated code. So you should
  //             normally not use allocate(), and instead allocate memory using _malloc(),
  //             initialize it with setValue(), and so forth.
  // @slab: An array of data, or a number. If a number, then the size of the block to allocate,
  //        in *bytes* (note that this is sometimes confusing: the next parameter does not
  //        affect this!)
  // @types: Either an array of types, one for each byte (or 0 if no type at that position),
  //         or a single type which is used for the entire block. This only matters if there
  //         is initial data - if @slab is a number, then this does not matter at all and is
  //         ignored.
  // @allocator: How to allocate memory, see ALLOC_*
  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 < stop; ptr += 4) {
        HEAP32[ptr >> 2] = 0;
      }
      stop = ret + size;
      while (ptr < stop) {
        HEAP8[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 < size) {
      var curr = slab[i];

      if (typeof curr === 'function') {
        curr = Runtime.getFunctionIndex(curr);
      }

      type = singleType || types[i];
      if (type === 0) {
        i++;
        continue;
      }

      if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later

      setValue(ret + i, curr, type);

      // no need to look up size unless type changes, so cache it
      if (previousType !== type) {
        typeSize = Runtime.getNativeTypeSize(type);
        previousType = type;
      }
      i += typeSize;
    }

    return ret;
  }
  Module['allocate'] = allocate;

  function Pointer_stringify(ptr, /* optional */ length) {
    if (length === 0) return '';
    // TODO: use TextDecoder
    // Find the length, and check for UTF while doing so
    var hasUtf = false;
    var t;
    var i = 0;
    while (1) {
      t = HEAPU8[(ptr + i) >> 0];
      if (t >= 128) hasUtf = true;
      else if (t == 0 && !length) break;
      i++;
      if (length && i == length) break;
    }
    if (!length) length = i;

    var ret = '';

    if (!hasUtf) {
      var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack
      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;
    }

    var utf8 = new Runtime.UTF8Processor();
    for (i = 0; i < length; i++) {
      t = HEAPU8[(ptr + i) >> 0];
      ret += utf8.processCChar(t);
    }
    return ret;
  }
  Module['Pointer_stringify'] = Pointer_stringify;

  function UTF16ToString(ptr) {
    var i = 0;

    var str = '';
    while (1) {
      var codeUnit = HEAP16[(ptr + i * 2) >> 1];
      if (codeUnit == 0) return str;
      ++i;
      // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through.
      str += String.fromCharCode(codeUnit);
    }
  }
  Module['UTF16ToString'] = UTF16ToString;

  function stringToUTF16(str, outPtr) {
    for (var i = 0; i < str.length; ++i) {
      // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP.
      var codeUnit = str.charCodeAt(i); // possibly a lead surrogate
      HEAP16[(outPtr + i * 2) >> 1] = codeUnit;
    }
    // Null-terminate the pointer to the HEAP.
    HEAP16[(outPtr + str.length * 2) >> 1] = 0;
  }
  Module['stringToUTF16'] = stringToUTF16;

  function UTF32ToString(ptr) {
    var i = 0;

    var str = '';
    while (1) {
      var utf32 = HEAP32[(ptr + i * 4) >> 2];
      if (utf32 == 0) return str;
      ++i;
      // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing.
      if (utf32 >= 0x10000) {
        var ch = utf32 - 0x10000;
        str += String.fromCharCode(0xd800 | (ch >> 10), 0xdc00 | (ch & 0x3ff));
      } else {
        str += String.fromCharCode(utf32);
      }
    }
  }
  Module['UTF32ToString'] = UTF32ToString;

  function stringToUTF32(str, outPtr) {
    var iChar = 0;
    for (var iCodeUnit = 0; iCodeUnit < str.length; ++iCodeUnit) {
      // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap.
      var codeUnit = str.charCodeAt(iCodeUnit); // possibly a lead surrogate
      if (codeUnit >= 0xd800 && codeUnit <= 0xdfff) {
        var trailSurrogate = str.charCodeAt(++iCodeUnit);
        codeUnit = (0x10000 + ((codeUnit & 0x3ff) << 10)) | (trailSurrogate & 0x3ff);
      }
      HEAP32[(outPtr + iChar * 4) >> 2] = codeUnit;
      ++iChar;
    }
    // Null-terminate the pointer to the HEAP.
    HEAP32[(outPtr + iChar * 4) >> 2] = 0;
  }
  Module['stringToUTF32'] = stringToUTF32;

  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);
        }
        // otherwise, libcxxabi failed, we can try ours which may return a partial result
      } catch (e) {
        // failure when using libcxxabi, we can try ours which may return a partial result
      } finally {
        if (buf) _free(buf);
        if (status) _free(status);
        if (ret) _free(ret);
      }
    }
    var i = 3;
    // params, etc.
    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) {
      //return;
      if (x) Module.print(x);
      Module.print(func);
      var pre = '';
      for (var a = 0; a < i; a++) pre += ' ';
      Module.print(pre + '^');
    }
    function parseNested() {
      i++;
      if (func[i] === 'K') i++; // ignore const
      var parts = [];
      while (func[i] !== 'E') {
        if (func[i] === 'S') {
          // substitution
          i++;
          var next = func.indexOf('_', i);
          var num = func.substring(i, next) || 0;
          parts.push(subs[num] || '?');
          i = next + 1;
          continue;
        }
        if (func[i] === 'C') {
          // constructor
          parts.push(parts[parts.length - 1]);
          i += 2;
          continue;
        }
        var size = parseInt(func.substr(i));
        var pre = size.toString().length;
        if (!size || !pre) {
          i--;
          break;
        } // counter i++ below us
        var curr = func.substr(i + pre, size);
        parts.push(curr);
        subs.push(curr);
        i += pre + size;
      }
      i++; // skip E
      return parts;
    }
    function parse(rawList, limit, allowVoid) {
      // main parser
      limit = limit || Infinity;
      var ret = '',
        list = [];
      function flushList() {
        return '(' + list.join(', ') + ')';
      }
      var name;
      if (func[i] === 'N') {
        // namespaced N-E
        name = parseNested().join('::');
        limit--;
        if (limit === 0) return rawList ? [name] : name;
      } else {
        // not namespaced
        if (func[i] === 'K' || (first && func[i] === 'L')) i++; // ignore const and first 'L'
        var size = parseInt(func.substr(i));
        if (size) {
          var pre = size.toString().length;
          name = func.substr(i + pre, size);
          i += pre + size;
        }
      }
      first = false;
      if (func[i] === 'I') {
        i++;
        var iList = parse(true);
        var iRet = parse(true, 1, true);
        ret += iRet[0] + ' ' + name + '<' + iList.join(', ') + '>';
      } else {
        ret = name;
      }
      paramLoop: while (i < func.length && limit-- > 0) {
        //dump('paramLoop');
        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; // pointer
            case 'R':
              list.push(parse(true, 1, true)[0] + '&');
              break; // reference
            case 'L': {
              // literal
              i++; // skip basic type
              var end = func.indexOf('E', i);
              var size = end - i;
              list.push(func.substr(i, size));
              i += size + 2; // size + 'EE'
              break;
            }
            case 'A': {
              // array
              var size = parseInt(func.substr(i));
              i += size.toString().length;
              if (func[i] !== '_') throw '?';
              i++; // skip _
              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 = []; // avoid (void)
      if (rawList) {
        if (ret) {
          list.push(ret + '?');
        }
        return list;
      } else {
        return ret + flushList();
      }
    }
    var final = func;
    try {
      // Special-case the entry point, since its name differs from other name mangling.
      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; // C function
      if (func[2] !== 'Z') return func;
      switch (func[3]) {
        case 'n':
          return 'operator new()';
        case 'd':
          return 'operator delete()';
      }
      final = parse();
    } catch (e) {
      final += '?';
    }
    if (final.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 final;
  }

  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) {
      // IE10+ special cases: It does have callstack info, but it is only populated if an Error object is thrown,
      // so try that as a special-case.
      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;

  // Memory management

  var PAGE_SIZE = 4096;
  function alignMemoryPage(x) {
    return (x + 4095) & -4096;
  }

  var HEAP;
  var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;

  var STATIC_BASE = 0,
    STATICTOP = 0,
    staticSealed = false; // static area
  var STACK_BASE = 0,
    STACKTOP = 0,
    STACK_MAX = 0; // stack area
  var DYNAMIC_BASE = 0,
    DYNAMICTOP = 0; // dynamic area handled by sbrk

  function enlargeMemory() {
    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 ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.'
    );
  }

  var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880;
  var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216;
  var FAST_MEMORY = Module['FAST_MEMORY'] || 2097152;

  var totalMemory = 64 * 1024;
  while (totalMemory < TOTAL_MEMORY || totalMemory < 2 * TOTAL_STACK) {
    if (totalMemory < 16 * 1024 * 1024) {
      totalMemory *= 2;
    } else {
      totalMemory += 16 * 1024 * 1024;
    }
  }
  if (totalMemory !== TOTAL_MEMORY) {
    Module.printErr('increasing TOTAL_MEMORY to ' + totalMemory + ' to be compliant with the asm.js spec');
    TOTAL_MEMORY = totalMemory;
  }

  // Initialize the runtime's memory
  // check for full engine support (use string 'subarray' to avoid closure compiler confusion)
  assert(
    typeof Int32Array !== 'undefined' &&
      typeof Float64Array !== 'undefined' &&
      !!new Int32Array(1)['subarray'] &&
      !!new Int32Array(1)['set'],
    'JS engine does not provide full typed array support'
  );

  var buffer = new ArrayBuffer(TOTAL_MEMORY);
  HEAP8 = new Int8Array(buffer);
  HEAP16 = new Int16Array(buffer);
  HEAP32 = new Int32Array(buffer);
  HEAPU8 = new Uint8Array(buffer);
  HEAPU16 = new Uint16Array(buffer);
  HEAPU32 = new Uint32Array(buffer);
  HEAPF32 = new Float32Array(buffer);
  HEAPF64 = new Float64Array(buffer);

  // Endianness check (note: assumes compiler arch was little-endian)
  HEAP32[0] = 255;
  assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system');

  Module['HEAP'] = HEAP;
  Module['buffer'] = buffer;
  Module['HEAP8'] = HEAP8;
  Module['HEAP16'] = HEAP16;
  Module['HEAP32'] = HEAP32;
  Module['HEAPU8'] = HEAPU8;
  Module['HEAPU16'] = HEAPU16;
  Module['HEAPU32'] = HEAPU32;
  Module['HEAPF32'] = HEAPF32;
  Module['HEAPF64'] = HEAPF64;

  function callRuntimeCallbacks(callbacks) {
    while (callbacks.length > 0) {
      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__ = []; // functions called before the runtime is initialized
  var __ATINIT__ = []; // functions called during startup
  var __ATMAIN__ = []; // functions called when main() is to be run
  var __ATEXIT__ = []; // functions called during shutdown
  var __ATPOSTRUN__ = []; // functions called after the runtime has exited

  var runtimeInitialized = false;
  var runtimeExited = false;

  function preRun() {
    // compatibility - merge in anything from Module['preRun'] at this time
    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() {
    // compatibility - merge in anything from Module['postRun'] at this time
    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'] = Module.addOnPreRun = addOnPreRun;

  function addOnInit(cb) {
    __ATINIT__.unshift(cb);
  }
  Module['addOnInit'] = Module.addOnInit = addOnInit;

  function addOnPreMain(cb) {
    __ATMAIN__.unshift(cb);
  }
  Module['addOnPreMain'] = Module.addOnPreMain = addOnPreMain;

  function addOnExit(cb) {
    __ATEXIT__.unshift(cb);
  }
  Module['addOnExit'] = Module.addOnExit = addOnExit;

  function addOnPostRun(cb) {
    __ATPOSTRUN__.unshift(cb);
  }
  Module['addOnPostRun'] = Module.addOnPostRun = addOnPostRun;

  // Tools

  function intArrayFromString(stringy, dontAddNull, length /* optional */) {
    var ret = new Runtime.UTF8Processor().processJSString(stringy);
    if (length) {
      ret.length = length;
    }
    if (!dontAddNull) {
      ret.push(0);
    }
    return ret;
  }
  Module['intArrayFromString'] = intArrayFromString;

  function intArrayToString(array) {
    var ret = [];
    for (var i = 0; i < array.length; i++) {
      var chr = array[i];
      if (chr > 0xff) {
        chr &= 0xff;
      }
      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 < array.length) {
      var chr = array[i];
      HEAP8[(buffer + i) >> 0] = chr;
      i = i + 1;
    }
  }
  Module['writeStringToMemory'] = writeStringToMemory;

  function writeArrayToMemory(array, buffer) {
    for (var i = 0; i < array.length; i++) {
      HEAP8[(buffer + i) >> 0] = array[i];
    }
  }
  Module['writeArrayToMemory'] = writeArrayToMemory;

  function writeAsciiToMemory(str, buffer, dontAddNull) {
    for (var i = 0; i < str.length; i++) {
      HEAP8[(buffer + i) >> 0] = str.charCodeAt(i);
    }
    if (!dontAddNull) HEAP8[(buffer + str.length) >> 0] = 0;
  }
  Module['writeAsciiToMemory'] = writeAsciiToMemory;

  function unSign(value, bits, ignore) {
    if (value >= 0) {
      return value;
    }
    return bits <= 32
      ? 2 * Math.abs(1 << (bits - 1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts
      : Math.pow(2, bits) + value;
  }
  function reSign(value, bits, ignore) {
    if (value <= 0) {
      return value;
    }
    var half =
      bits <= 32
        ? Math.abs(1 << (bits - 1)) // abs is needed if bits == 32
        : Math.pow(2, bits - 1);
    if (value >= half && (bits <= 32 || value > half)) {
      // for huge values, we can hit the precision limit and always get true here. so don't do that
      // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors
      // TODO: In i64 mode 1, resign the two parts separately and safely
      value = -2 * half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts
    }
    return value;
  }

  // check for imul support, and also for correctness ( https://bugs.webkit.org/show_bug.cgi?id=126345 )
  if (!Math['imul'] || Math['imul'](0xffffffff, 5) !== -5)
    Math['imul'] = function imul(a, b) {
      var ah = a >>> 16;
      var al = a & 0xffff;
      var bh = b >>> 16;
      var bl = b & 0xffff;
      return (al * bl + ((ah * bl + al * bh) << 16)) | 0;
    };
  Math.imul = Math['imul'];

  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;

  // A counter of dependencies for calling run(). If we need to
  // do asynchronous work before running, increment this and
  // decrement it. Incrementing must happen in a place like
  // PRE_RUN_ADDITIONS (used by emcc to add file preloading).
  // Note that you can add dependencies in preRun, even though
  // it happens right before run - run will be postponed until
  // the dependencies are met.
  var runDependencies = 0;
  var runDependencyWatcher = null;
  var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled

  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(); // can add another dependenciesFulfilled
      }
    }
  }
  Module['removeRunDependency'] = removeRunDependency;

  Module['preloadedImages'] = {}; // maps url to image data
  Module['preloadedAudios'] = {}; // maps url to audio data

  var memoryInitializer = null;

  // === Body ===

  STATIC_BASE = 8;

  STATICTOP = STATIC_BASE + 134416;
  /* global initializers */ __ATINIT__.push();

  /* memory initializer */ allocate(
    [
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      46,
      46,
      47,
      116,
      101,
      109,
      112,
      108,
      97,
      116,
      101,
      115,
      47,
      122,
      98,
      97,
      114,
      45,
      109,
      97,
      105,
      110,
      46,
      99,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      109,
      97,
      105,
      110,
      0,
      0,
      0,
      0,
      122,
      105,
      109,
      97,
      103,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      99,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      101,
      114,
      114,
      111,
      114,
      95,
      115,
      112,
      101,
      119,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      122,
      98,
      97,
      114,
      32,
      37,
      115,
      32,
      105,
      110,
      32,
      37,
      115,
      40,
      41,
      58,
      10,
      32,
      32,
      32,
      32,
      37,
      115,
      58,
      32,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      101,
      114,
      114,
      111,
      114,
      95,
      115,
      116,
      114,
      105,
      110,
      103,
      0,
      0,
      0,
      0,
      0,
      0,
      184,
      2,
      0,
      0,
      200,
      2,
      0,
      0,
      208,
      2,
      0,
      0,
      216,
      2,
      0,
      0,
      224,
      2,
      0,
      0,
      0,
      0,
      0,
      0,
      136,
      2,
      0,
      0,
      152,
      2,
      0,
      0,
      160,
      2,
      0,
      0,
      168,
      2,
      0,
      0,
      16,
      1,
      0,
      0,
      0,
      0,
      0,
      0,
      60,
      117,
      110,
      107,
      110,
      111,
      119,
      110,
      62,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      128,
      1,
      0,
      0,
      144,
      1,
      0,
      0,
      160,
      1,
      0,
      0,
      184,
      1,
      0,
      0,
      208,
      1,
      0,
      0,
      224,
      1,
      0,
      0,
      240,
      1,
      0,
      0,
      0,
      2,
      0,
      0,
      24,
      2,
      0,
      0,
      48,
      2,
      0,
      0,
      72,
      2,
      0,
      0,
      96,
      2,
      0,
      0,
      120,
      2,
      0,
      0,
      0,
      0,
      0,
      0,
      60,
      63,
      62,
      0,
      0,
      0,
      0,
      0,
      37,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      120,
      0,
      0,
      0,
      0,
      0,
      0,
      58,
      32,
      37,
      115,
      32,
      40,
      37,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      111,
      117,
      116,
      32,
      111,
      102,
      32,
      109,
      101,
      109,
      111,
      114,
      121,
      0,
      0,
      0,
      105,
      110,
      116,
      101,
      114,
      110,
      97,
      108,
      32,
      108,
      105,
      98,
      114,
      97,
      114,
      121,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      117,
      110,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      101,
      100,
      32,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      0,
      0,
      0,
      0,
      0,
      105,
      110,
      118,
      97,
      108,
      105,
      100,
      32,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      0,
      115,
      121,
      115,
      116,
      101,
      109,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      0,
      108,
      111,
      99,
      107,
      105,
      110,
      103,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      97,
      108,
      108,
      32,
      114,
      101,
      115,
      111,
      117,
      114,
      99,
      101,
      115,
      32,
      98,
      117,
      115,
      121,
      0,
      0,
      0,
      0,
      0,
      0,
      88,
      49,
      49,
      32,
      100,
      105,
      115,
      112,
      108,
      97,
      121,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      88,
      49,
      49,
      32,
      112,
      114,
      111,
      116,
      111,
      99,
      111,
      108,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      105,
      115,
      32,
      99,
      108,
      111,
      115,
      101,
      100,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      32,
      115,
      121,
      115,
      116,
      101,
      109,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      0,
      117,
      110,
      107,
      110,
      111,
      119,
      110,
      32,
      101,
      114,
      114,
      111,
      114,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      118,
      105,
      100,
      101,
      111,
      0,
      0,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      0,
      0,
      105,
      109,
      97,
      103,
      101,
      32,
      115,
      99,
      97,
      110,
      110,
      101,
      114,
      0,
      0,
      0,
      70,
      65,
      84,
      65,
      76,
      32,
      69,
      82,
      82,
      79,
      82,
      0,
      0,
      0,
      0,
      0,
      69,
      82,
      82,
      79,
      82,
      0,
      0,
      0,
      79,
      75,
      0,
      0,
      0,
      0,
      0,
      0,
      87,
      65,
      82,
      78,
      73,
      78,
      71,
      0,
      78,
      79,
      84,
      69,
      0,
      0,
      0,
      0,
      105,
      109,
      103,
      45,
      62,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      105,
      109,
      97,
      103,
      101,
      46,
      99,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      105,
      109,
      97,
      103,
      101,
      95,
      102,
      114,
      101,
      101,
      95,
      100,
      97,
      116,
      97,
      0,
      0,
      0,
      0,
      37,
      115,
      46,
      37,
      46,
      52,
      115,
      46,
      122,
      105,
      109,
      103,
      0,
      0,
      0,
      0,
      37,
      115,
      46,
      37,
      48,
      56,
      120,
      46,
      122,
      105,
      109,
      103,
      0,
      0,
      0,
      0,
      110,
      32,
      60,
      32,
      108,
      101,
      110,
      32,
      45,
      32,
      49,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      105,
      109,
      97,
      103,
      101,
      95,
      119,
      114,
      105,
      116,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      100,
      117,
      109,
      112,
      105,
      110,
      103,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      116,
      111,
      32,
      37,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      119,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      69,
      82,
      82,
      79,
      82,
      32,
      111,
      112,
      101,
      110,
      105,
      110,
      103,
      32,
      37,
      115,
      58,
      32,
      37,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      69,
      82,
      82,
      79,
      82,
      32,
      119,
      114,
      105,
      116,
      105,
      110,
      103,
      32,
      37,
      115,
      58,
      32,
      37,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      105,
      110,
      103,
      58,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      37,
      100,
      120,
      37,
      100,
      32,
      64,
      37,
      112,
      10,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      95,
      105,
      109,
      97,
      103,
      101,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      37,
      115,
      58,
      32,
      37,
      115,
      32,
      40,
      37,
      100,
      32,
      112,
      116,
      115,
      41,
      32,
      40,
      100,
      105,
      114,
      61,
      37,
      100,
      41,
      32,
      40,
      113,
      61,
      37,
      100,
      41,
      32,
      40,
      37,
      115,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      117,
      110,
      99,
      101,
      114,
      116,
      97,
      105,
      110,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      100,
      117,
      112,
      108,
      105,
      99,
      97,
      116,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      101,
      119,
      0,
      0,
      0,
      0,
      0,
      117,
      110,
      107,
      110,
      111,
      119,
      110,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      0,
      0,
      0,
      0,
      33,
      112,
      114,
      111,
      99,
      45,
      62,
      119,
      97,
      105,
      116,
      95,
      104,
      101,
      97,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      46,
      99,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      100,
      101,
      115,
      116,
      114,
      111,
      121,
      0,
      0,
      33,
      112,
      114,
      111,
      99,
      45,
      62,
      119,
      97,
      105,
      116,
      95,
      116,
      97,
      105,
      108,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      33,
      112,
      114,
      111,
      99,
      45,
      62,
      119,
      97,
      105,
      116,
      95,
      110,
      101,
      120,
      116,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      105,
      110,
      105,
      116,
      0,
      0,
      0,
      0,
      0,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      105,
      110,
      103,
      32,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      114,
      101,
      115,
      111,
      117,
      114,
      99,
      101,
      115,
      0,
      0,
      0,
      0,
      0,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      105,
      110,
      103,
      32,
      118,
      105,
      100,
      101,
      111,
      32,
      114,
      101,
      115,
      111,
      117,
      114,
      99,
      101,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      112,
      97,
      119,
      110,
      105,
      110,
      103,
      32,
      118,
      105,
      100,
      101,
      111,
      32,
      116,
      104,
      114,
      101,
      97,
      100,
      0,
      0,
      0,
      115,
      112,
      97,
      119,
      110,
      105,
      110,
      103,
      32,
      105,
      110,
      112,
      117,
      116,
      32,
      116,
      104,
      114,
      101,
      97,
      100,
      0,
      0,
      0,
      87,
      65,
      82,
      78,
      73,
      78,
      71,
      58,
      32,
      110,
      111,
      32,
      99,
      111,
      109,
      112,
      97,
      116,
      105,
      98,
      108,
      101,
      32,
      105,
      110,
      112,
      117,
      116,
      32,
      116,
      111,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      10,
      46,
      46,
      46,
      116,
      114,
      121,
      105,
      110,
      103,
      32,
      97,
      103,
      97,
      105,
      110,
      32,
      119,
      105,
      116,
      104,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      100,
      105,
      115,
      97,
      98,
      108,
      101,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      69,
      82,
      82,
      79,
      82,
      58,
      32,
      110,
      111,
      32,
      99,
      111,
      109,
      112,
      97,
      116,
      105,
      98,
      108,
      101,
      32,
      37,
      115,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      10,
      0,
      0,
      0,
      0,
      0,
      118,
      105,
      100,
      101,
      111,
      32,
      105,
      110,
      112,
      117,
      116,
      0,
      0,
      0,
      0,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      0,
      0,
      0,
      110,
      111,
      32,
      99,
      111,
      109,
      112,
      97,
      116,
      105,
      98,
      108,
      101,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      117,
      115,
      101,
      114,
      95,
      119,
      97,
      105,
      116,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      100,
      105,
      115,
      112,
      108,
      97,
      121,
      32,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      110,
      111,
      116,
      32,
      97,
      118,
      97,
      105,
      108,
      97,
      98,
      108,
      101,
      32,
      102,
      111,
      114,
      32,
      105,
      110,
      112,
      117,
      116,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      115,
      101,
      116,
      95,
      97,
      99,
      116,
      105,
      118,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      118,
      105,
      100,
      101,
      111,
      32,
      105,
      110,
      112,
      117,
      116,
      32,
      110,
      111,
      116,
      32,
      105,
      110,
      105,
      116,
      105,
      97,
      108,
      105,
      122,
      101,
      100,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      32,
      98,
      97,
      114,
      99,
      111,
      100,
      101,
      32,
      114,
      101,
      97,
      100,
      101,
      114,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      108,
      101,
      97,
      110,
      117,
      112,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      100,
      115,
      116,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      111,
      112,
      121,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      69,
      65,
      78,
      45,
      50,
      0,
      0,
      0,
      69,
      65,
      78,
      45,
      53,
      0,
      0,
      0,
      69,
      65,
      78,
      45,
      56,
      0,
      0,
      0,
      85,
      80,
      67,
      45,
      69,
      0,
      0,
      0,
      73,
      83,
      66,
      78,
      45,
      49,
      48,
      0,
      85,
      80,
      67,
      45,
      65,
      0,
      0,
      0,
      69,
      65,
      78,
      45,
      49,
      51,
      0,
      0,
      73,
      83,
      66,
      78,
      45,
      49,
      51,
      0,
      67,
      79,
      77,
      80,
      79,
      83,
      73,
      84,
      69,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      73,
      50,
      47,
      53,
      0,
      0,
      0,
      0,
      68,
      97,
      116,
      97,
      66,
      97,
      114,
      0,
      68,
      97,
      116,
      97,
      66,
      97,
      114,
      45,
      69,
      120,
      112,
      0,
      0,
      0,
      0,
      0,
      67,
      111,
      100,
      97,
      98,
      97,
      114,
      0,
      67,
      79,
      68,
      69,
      45,
      51,
      57,
      0,
      67,
      79,
      68,
      69,
      45,
      57,
      51,
      0,
      67,
      79,
      68,
      69,
      45,
      49,
      50,
      56,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      80,
      68,
      70,
      52,
      49,
      55,
      0,
      0,
      81,
      82,
      45,
      67,
      111,
      100,
      101,
      0,
      85,
      78,
      75,
      78,
      79,
      87,
      78,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      1,
      16,
      17,
      255,
      17,
      22,
      12,
      5,
      6,
      8,
      255,
      4,
      3,
      7,
      18,
      255,
      255,
      255,
      255,
      255,
      255,
      255,
      2,
      255,
      0,
      18,
      12,
      11,
      29,
      10,
      0,
      103,
      48,
      32,
      62,
      61,
      32,
      48,
      32,
      38,
      38,
      32,
      103,
      49,
      32,
      62,
      61,
      32,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      115,
      121,
      109,
      98,
      111,
      108,
      46,
      99,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      103,
      101,
      116,
      95,
      115,
      121,
      109,
      98,
      111,
      108,
      95,
      104,
      97,
      115,
      104,
      0,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      99,
      108,
      111,
      115,
      101,
      100,
      32,
      99,
      97,
      109,
      101,
      114,
      97,
      32,
      40,
      102,
      100,
      61,
      37,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      111,
      112,
      101,
      110,
      0,
      47,
      100,
      101,
      118,
      47,
      118,
      105,
      100,
      101,
      111,
      48,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      103,
      101,
      116,
      95,
      102,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      118,
      105,
      100,
      101,
      111,
      32,
      100,
      101,
      118,
      105,
      99,
      101,
      32,
      110,
      111,
      116,
      32,
      111,
      112,
      101,
      110,
      101,
      100,
      0,
      118,
      105,
      100,
      101,
      111,
      32,
      100,
      114,
      105,
      118,
      101,
      114,
      32,
      100,
      111,
      101,
      115,
      32,
      110,
      111,
      116,
      32,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      32,
      112,
      111,
      108,
      108,
      105,
      110,
      103,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      95,
      115,
      105,
      122,
      101,
      0,
      97,
      108,
      114,
      101,
      97,
      100,
      121,
      32,
      105,
      110,
      105,
      116,
      105,
      97,
      108,
      105,
      122,
      101,
      100,
      44,
      32,
      117,
      110,
      97,
      98,
      108,
      101,
      32,
      116,
      111,
      32,
      114,
      101,
      115,
      105,
      122,
      101,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      32,
      115,
      105,
      122,
      101,
      58,
      32,
      37,
      100,
      32,
      120,
      32,
      37,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      95,
      105,
      110,
      116,
      101,
      114,
      102,
      97,
      99,
      101,
      0,
      0,
      0,
      0,
      100,
      101,
      118,
      105,
      99,
      101,
      32,
      97,
      108,
      114,
      101,
      97,
      100,
      121,
      32,
      111,
      112,
      101,
      110,
      101,
      100,
      44,
      32,
      117,
      110,
      97,
      98,
      108,
      101,
      32,
      116,
      111,
      32,
      99,
      104,
      97,
      110,
      103,
      101,
      32,
      105,
      110,
      116,
      101,
      114,
      102,
      97,
      99,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      32,
      105,
      110,
      116,
      101,
      114,
      102,
      97,
      99,
      101,
      32,
      118,
      101,
      114,
      115,
      105,
      111,
      110,
      32,
      37,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      95,
      105,
      111,
      109,
      111,
      100,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      100,
      101,
      118,
      105,
      99,
      101,
      32,
      97,
      108,
      114,
      101,
      97,
      100,
      121,
      32,
      111,
      112,
      101,
      110,
      101,
      100,
      44,
      32,
      117,
      110,
      97,
      98,
      108,
      101,
      32,
      116,
      111,
      32,
      99,
      104,
      97,
      110,
      103,
      101,
      32,
      105,
      111,
      109,
      111,
      100,
      101,
      0,
      0,
      105,
      110,
      118,
      97,
      108,
      105,
      100,
      32,
      105,
      111,
      109,
      111,
      100,
      101,
      32,
      114,
      101,
      113,
      117,
      101,
      115,
      116,
      101,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      105,
      110,
      105,
      116,
      0,
      97,
      108,
      114,
      101,
      97,
      100,
      121,
      32,
      105,
      110,
      105,
      116,
      105,
      97,
      108,
      105,
      122,
      101,
      100,
      44,
      32,
      114,
      101,
      45,
      105,
      110,
      105,
      116,
      32,
      117,
      110,
      105,
      109,
      112,
      108,
      101,
      109,
      101,
      110,
      116,
      101,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      101,
      110,
      97,
      98,
      108,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      105,
      109,
      103,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      118,
      105,
      100,
      101,
      111,
      46,
      99,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      110,
      101,
      120,
      116,
      95,
      105,
      109,
      97,
      103,
      101,
      0,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      118,
      100,
      111,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      95,
      115,
      104,
      97,
      100,
      111,
      119,
      0,
      0,
      0,
      0,
      0,
      0,
      105,
      109,
      103,
      45,
      62,
      115,
      114,
      99,
      105,
      100,
      120,
      32,
      61,
      61,
      32,
      45,
      49,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      118,
      100,
      111,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      0,
      0,
      0,
      0,
      118,
      105,
      100,
      101,
      111,
      95,
      105,
      110,
      105,
      116,
      95,
      105,
      109,
      97,
      103,
      101,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      33,
      118,
      100,
      111,
      45,
      62,
      98,
      117,
      102,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      117,
      110,
      97,
      98,
      108,
      101,
      32,
      116,
      111,
      32,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      101,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      98,
      117,
      102,
      102,
      101,
      114,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      112,
      114,
      101,
      45,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      101,
      100,
      32,
      37,
      100,
      32,
      37,
      115,
      32,
      98,
      117,
      102,
      102,
      101,
      114,
      115,
      32,
      115,
      105,
      122,
      101,
      61,
      48,
      120,
      37,
      108,
      120,
      10,
      0,
      0,
      0,
      0,
      0,
      82,
      69,
      65,
      68,
      0,
      0,
      0,
      0,
      85,
      83,
      69,
      82,
      80,
      84,
      82,
      0,
      37,
      115,
      58,
      32,
      32,
      32,
      32,
      32,
      91,
      37,
      48,
      50,
      100,
      93,
      32,
      64,
      37,
      48,
      56,
      108,
      120,
      10,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      108,
      101,
      97,
      110,
      117,
      112,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      95,
      105,
      109,
      97,
      103,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      105,
      109,
      103,
      45,
      62,
      115,
      114,
      99,
      105,
      100,
      120,
      32,
      62,
      61,
      32,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      108,
      101,
      97,
      110,
      117,
      112,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      111,
      112,
      101,
      110,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      99,
      108,
      111,
      115,
      101,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      115,
      101,
      116,
      95,
      115,
      105,
      122,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      105,
      110,
      118,
      97,
      108,
      105,
      100,
      97,
      116,
      101,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      116,
      32,
      99,
      111,
      109,
      112,
      105,
      108,
      101,
      100,
      32,
      119,
      105,
      116,
      104,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      119,
      105,
      110,
      100,
      111,
      119,
      95,
      97,
      116,
      116,
      97,
      99,
      104,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      116,
      32,
      99,
      111,
      109,
      112,
      105,
      108,
      101,
      100,
      32,
      119,
      105,
      116,
      104,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      119,
      105,
      110,
      100,
      111,
      119,
      32,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      45,
      62,
      108,
      111,
      99,
      107,
      95,
      108,
      101,
      118,
      101,
      108,
      32,
      62,
      32,
      48,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      47,
      108,
      111,
      99,
      107,
      46,
      99,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      117,
      110,
      108,
      111,
      99,
      107,
      0,
      0,
      119,
      32,
      61,
      61,
      32,
      119,
      97,
      105,
      116,
      101,
      114,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      119,
      97,
      105,
      116,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      45,
      62,
      108,
      111,
      99,
      107,
      95,
      108,
      101,
      118,
      101,
      108,
      32,
      61,
      61,
      32,
      49,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      95,
      105,
      110,
      105,
      116,
      0,
      0,
      0,
      0,
      102,
      97,
      105,
      108,
      101,
      100,
      32,
      116,
      111,
      32,
      111,
      112,
      101,
      110,
      32,
      112,
      105,
      112,
      101,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      91,
      37,
      100,
      93,
      32,
      102,
      100,
      61,
      37,
      100,
      32,
      110,
      61,
      37,
      100,
      10,
      0,
      0,
      0,
      0,
      114,
      101,
      109,
      111,
      118,
      101,
      95,
      112,
      111,
      108,
      108,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      107,
      105,
      99,
      107,
      105,
      110,
      103,
      32,
      37,
      100,
      32,
      102,
      100,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      95,
      107,
      105,
      99,
      107,
      95,
      104,
      97,
      110,
      100,
      108,
      101,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      45,
      62,
      116,
      104,
      114,
      101,
      97,
      100,
      101,
      100,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      47,
      112,
      111,
      115,
      105,
      120,
      46,
      99,
      0,
      0,
      37,
      115,
      58,
      32,
      91,
      37,
      100,
      93,
      32,
      102,
      100,
      61,
      37,
      100,
      32,
      104,
      97,
      110,
      100,
      108,
      101,
      114,
      61,
      37,
      112,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      97,
      100,
      100,
      95,
      112,
      111,
      108,
      108,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      116,
      97,
      116,
      101,
      45,
      62,
      107,
      105,
      99,
      107,
      95,
      102,
      100,
      115,
      91,
      49,
      93,
      32,
      62,
      61,
      32,
      48,
      0,
      122,
      98,
      97,
      114,
      47,
      112,
      114,
      111,
      99,
      101,
      115,
      115,
      111,
      114,
      47,
      112,
      111,
      115,
      105,
      120,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      112,
      45,
      62,
      110,
      117,
      109,
      0,
      0,
      112,
      114,
      111,
      99,
      95,
      112,
      111,
      108,
      108,
      95,
      105,
      110,
      112,
      117,
      116,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      33,
      114,
      99,
      0,
      0,
      0,
      0,
      0,
      116,
      105,
      109,
      101,
      111,
      117,
      116,
      32,
      62,
      32,
      48,
      0,
      0,
      0,
      0,
      0,
      112,
      114,
      111,
      99,
      95,
      115,
      108,
      101,
      101,
      112,
      0,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      118,
      105,
      100,
      101,
      111,
      95,
      111,
      112,
      101,
      110,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      116,
      32,
      99,
      111,
      109,
      112,
      105,
      108,
      101,
      100,
      32,
      119,
      105,
      116,
      104,
      32,
      118,
      105,
      100,
      101,
      111,
      32,
      105,
      110,
      112,
      117,
      116,
      32,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      0,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      52,
      50,
      50,
      80,
      73,
      52,
      50,
      48,
      89,
      85,
      49,
      50,
      89,
      86,
      49,
      50,
      52,
      49,
      49,
      80,
      78,
      86,
      49,
      50,
      78,
      86,
      50,
      49,
      89,
      85,
      89,
      86,
      85,
      89,
      86,
      89,
      89,
      85,
      89,
      50,
      89,
      85,
      86,
      52,
      82,
      71,
      66,
      51,
      3,
      0,
      0,
      0,
      66,
      71,
      82,
      51,
      82,
      71,
      66,
      52,
      66,
      71,
      82,
      52,
      82,
      71,
      66,
      80,
      82,
      71,
      66,
      79,
      82,
      71,
      66,
      82,
      82,
      71,
      66,
      81,
      89,
      85,
      86,
      57,
      89,
      86,
      85,
      57,
      71,
      82,
      69,
      89,
      89,
      56,
      48,
      48,
      89,
      56,
      32,
      32,
      89,
      56,
      0,
      0,
      82,
      71,
      66,
      49,
      82,
      52,
      52,
      52,
      66,
      65,
      56,
      49,
      89,
      52,
      49,
      80,
      89,
      52,
      52,
      52,
      89,
      85,
      86,
      79,
      72,
      77,
      49,
      50,
      72,
      73,
      50,
      52,
      74,
      80,
      69,
      71,
      77,
      74,
      80,
      71,
      77,
      80,
      69,
      71,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      8,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      24,
      0,
      0,
      0,
      3,
      0,
      0,
      0,
      32,
      0,
      0,
      0,
      4,
      0,
      0,
      0,
      8,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      48,
      0,
      0,
      0,
      5,
      0,
      0,
      0,
      64,
      0,
      0,
      0,
      3,
      0,
      0,
      0,
      128,
      0,
      0,
      0,
      4,
      0,
      0,
      0,
      40,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      24,
      0,
      0,
      0,
      6,
      0,
      0,
      0,
      52,
      0,
      0,
      0,
      6,
      0,
      0,
      0,
      20,
      0,
      0,
      0,
      7,
      0,
      0,
      0,
      144,
      0,
      0,
      0,
      8,
      0,
      0,
      0,
      18,
      0,
      0,
      0,
      6,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      112,
      0,
      0,
      0,
      9,
      0,
      0,
      0,
      160,
      0,
      0,
      0,
      9,
      0,
      0,
      0,
      144,
      0,
      0,
      0,
      10,
      0,
      0,
      0,
      120,
      0,
      0,
      0,
      11,
      0,
      0,
      0,
      152,
      0,
      0,
      0,
      9,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      8,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      24,
      0,
      0,
      0,
      3,
      0,
      0,
      0,
      32,
      0,
      0,
      0,
      4,
      0,
      0,
      0,
      8,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      255,
      255,
      255,
      255,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      115,
      104,
      97,
      114,
      101,
      100,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      58,
      32,
      37,
      52,
      46,
      52,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      98,
      101,
      115,
      116,
      95,
      102,
      111,
      114,
      109,
      97,
      116,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      102,
      114,
      111,
      109,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      116,
      111,
      0,
      0,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      61,
      37,
      100,
      0,
      0,
      89,
      56,
      48,
      48,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      110,
      101,
      103,
      111,
      116,
      105,
      97,
      116,
      101,
      95,
      102,
      111,
      114,
      109,
      97,
      116,
      0,
      0,
      0,
      105,
      109,
      97,
      103,
      101,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      32,
      108,
      105,
      115,
      116,
      32,
      105,
      115,
      32,
      110,
      111,
      116,
      32,
      115,
      111,
      114,
      116,
      101,
      100,
      33,
      63,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      32,
      105,
      110,
      112,
      117,
      116,
      32,
      111,
      114,
      32,
      111,
      117,
      116,
      112,
      117,
      116,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      115,
      32,
      97,
      118,
      97,
      105,
      108,
      97,
      98,
      108,
      101,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      45,
      62,
      32,
      63,
      32,
      40,
      117,
      110,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      101,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      45,
      62,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      40,
      37,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      110,
      111,
      32,
      115,
      117,
      112,
      112,
      111,
      114,
      116,
      101,
      100,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      115,
      32,
      97,
      118,
      97,
      105,
      108,
      97,
      98,
      108,
      101,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      115,
      101,
      116,
      116,
      105,
      110,
      103,
      32,
      98,
      101,
      115,
      116,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      32,
      37,
      46,
      52,
      115,
      40,
      37,
      48,
      56,
      120,
      41,
      32,
      40,
      37,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      101,
      114,
      114,
      45,
      62,
      109,
      97,
      103,
      105,
      99,
      32,
      61,
      61,
      32,
      69,
      82,
      82,
      73,
      78,
      70,
      79,
      95,
      77,
      65,
      71,
      73,
      67,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      101,
      114,
      114,
      111,
      114,
      46,
      104,
      0,
      0,
      101,
      114,
      114,
      95,
      99,
      97,
      112,
      116,
      117,
      114,
      101,
      0,
      0,
      0,
      0,
      0,
      69,
      82,
      82,
      79,
      82,
      58,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      102,
      111,
      114,
      109,
      97,
      116,
      32,
      108,
      105,
      115,
      116,
      32,
      105,
      115,
      32,
      110,
      111,
      116,
      32,
      115,
      111,
      114,
      116,
      101,
      100,
      33,
      63,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      32,
      62,
      61,
      32,
      40,
      115,
      114,
      99,
      45,
      62,
      119,
      105,
      100,
      116,
      104,
      32,
      42,
      32,
      115,
      114,
      99,
      45,
      62,
      104,
      101,
      105,
      103,
      104,
      116,
      32,
      42,
      32,
      115,
      114,
      99,
      102,
      109,
      116,
      45,
      62,
      112,
      46,
      114,
      103,
      98,
      46,
      98,
      112,
      112,
      41,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      46,
      99,
      0,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      114,
      103,
      98,
      95,
      114,
      101,
      115,
      97,
      109,
      112,
      108,
      101,
      0,
      0,
      0,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      114,
      103,
      98,
      95,
      116,
      111,
      95,
      121,
      117,
      118,
      0,
      0,
      0,
      0,
      0,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      114,
      103,
      98,
      95,
      116,
      111,
      95,
      121,
      117,
      118,
      112,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      32,
      62,
      61,
      32,
      40,
      115,
      114,
      99,
      45,
      62,
      119,
      105,
      100,
      116,
      104,
      32,
      42,
      32,
      115,
      114,
      99,
      45,
      62,
      104,
      101,
      105,
      103,
      104,
      116,
      32,
      43,
      32,
      117,
      118,
      112,
      95,
      115,
      105,
      122,
      101,
      40,
      115,
      114,
      99,
      44,
      32,
      115,
      114,
      99,
      102,
      109,
      116,
      41,
      32,
      42,
      32,
      50,
      41,
      0,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      121,
      117,
      118,
      95,
      116,
      111,
      95,
      114,
      103,
      98,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      102,
      109,
      116,
      45,
      62,
      112,
      46,
      121,
      117,
      118,
      46,
      120,
      115,
      117,
      98,
      50,
      32,
      61,
      61,
      32,
      49,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      32,
      62,
      61,
      32,
      115,
      114,
      99,
      110,
      32,
      43,
      32,
      50,
      32,
      42,
      32,
      115,
      114,
      99,
      109,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      121,
      117,
      118,
      112,
      95,
      116,
      111,
      95,
      114,
      103,
      98,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      32,
      62,
      61,
      32,
      115,
      114,
      99,
      110,
      32,
      43,
      32,
      50,
      32,
      42,
      32,
      115,
      114,
      99,
      110,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      121,
      117,
      118,
      95,
      112,
      97,
      99,
      107,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      114,
      99,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      32,
      62,
      61,
      32,
      115,
      114,
      99,
      45,
      62,
      119,
      105,
      100,
      116,
      104,
      32,
      42,
      32,
      115,
      114,
      99,
      45,
      62,
      104,
      101,
      105,
      103,
      104,
      116,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      99,
      111,
      110,
      118,
      101,
      114,
      116,
      95,
      117,
      118,
      112,
      95,
      97,
      112,
      112,
      101,
      110,
      100,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      100,
      115,
      116,
      61,
      37,
      100,
      120,
      37,
      100,
      32,
      40,
      37,
      108,
      120,
      41,
      32,
      37,
      108,
      120,
      32,
      115,
      114,
      99,
      61,
      37,
      100,
      120,
      37,
      100,
      32,
      37,
      108,
      120,
      10,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      82,
      71,
      66,
      52,
      3,
      0,
      0,
      0,
      4,
      8,
      16,
      24,
      66,
      71,
      82,
      49,
      3,
      0,
      0,
      0,
      1,
      160,
      163,
      198,
      52,
      50,
      50,
      80,
      1,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      89,
      56,
      48,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      89,
      85,
      89,
      50,
      2,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      74,
      80,
      69,
      71,
      5,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      89,
      86,
      89,
      85,
      2,
      0,
      0,
      0,
      1,
      0,
      1,
      0,
      89,
      56,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      78,
      86,
      50,
      49,
      4,
      0,
      0,
      0,
      1,
      1,
      1,
      0,
      78,
      86,
      49,
      50,
      4,
      0,
      0,
      0,
      1,
      1,
      0,
      0,
      66,
      71,
      82,
      51,
      3,
      0,
      0,
      0,
      3,
      16,
      8,
      0,
      89,
      86,
      85,
      57,
      1,
      0,
      0,
      0,
      2,
      2,
      1,
      0,
      82,
      71,
      66,
      79,
      3,
      0,
      0,
      0,
      2,
      106,
      101,
      96,
      82,
      71,
      66,
      81,
      3,
      0,
      0,
      0,
      2,
      98,
      109,
      104,
      71,
      82,
      69,
      89,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      3,
      0,
      0,
      0,
      3,
      0,
      0,
      0,
      4,
      16,
      8,
      0,
      89,
      56,
      32,
      32,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      73,
      52,
      50,
      48,
      1,
      0,
      0,
      0,
      1,
      1,
      0,
      0,
      82,
      71,
      66,
      49,
      3,
      0,
      0,
      0,
      1,
      165,
      162,
      192,
      89,
      85,
      49,
      50,
      1,
      0,
      0,
      0,
      1,
      1,
      0,
      0,
      89,
      86,
      49,
      50,
      1,
      0,
      0,
      0,
      1,
      1,
      1,
      0,
      82,
      71,
      66,
      51,
      3,
      0,
      0,
      0,
      3,
      0,
      8,
      16,
      82,
      52,
      52,
      52,
      3,
      0,
      0,
      0,
      2,
      136,
      132,
      128,
      66,
      71,
      82,
      52,
      3,
      0,
      0,
      0,
      4,
      16,
      8,
      0,
      89,
      85,
      86,
      57,
      1,
      0,
      0,
      0,
      2,
      2,
      0,
      0,
      77,
      74,
      80,
      71,
      5,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      52,
      49,
      49,
      80,
      1,
      0,
      0,
      0,
      2,
      0,
      0,
      0,
      82,
      71,
      66,
      80,
      3,
      0,
      0,
      0,
      2,
      107,
      69,
      96,
      82,
      71,
      66,
      82,
      3,
      0,
      0,
      0,
      2,
      99,
      77,
      104,
      89,
      85,
      89,
      86,
      2,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      85,
      89,
      86,
      89,
      2,
      0,
      0,
      0,
      1,
      0,
      2,
      0,
      0,
      0,
      0,
      0,
      115,
      121,
      109,
      45,
      62,
      100,
      97,
      116,
      97,
      95,
      97,
      108,
      108,
      111,
      99,
      0,
      122,
      98,
      97,
      114,
      47,
      105,
      109,
      103,
      95,
      115,
      99,
      97,
      110,
      110,
      101,
      114,
      46,
      99,
      0,
      0,
      0,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      105,
      109,
      97,
      103,
      101,
      95,
      115,
      99,
      97,
      110,
      110,
      101,
      114,
      95,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      95,
      115,
      121,
      109,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      115,
      121,
      109,
      45,
      62,
      100,
      97,
      116,
      97,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      105,
      115,
      99,
      110,
      45,
      62,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      91,
      105,
      93,
      46,
      110,
      115,
      121,
      109,
      115,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      105,
      109,
      97,
      103,
      101,
      95,
      115,
      99,
      97,
      110,
      110,
      101,
      114,
      95,
      97,
      108,
      108,
      111,
      99,
      95,
      115,
      121,
      109,
      0,
      0,
      0,
      33,
      115,
      121,
      109,
      45,
      62,
      115,
      121,
      109,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      99,
      120,
      49,
      32,
      60,
      61,
      32,
      119,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      95,
      115,
      99,
      97,
      110,
      95,
      105,
      109,
      97,
      103,
      101,
      0,
      99,
      121,
      49,
      32,
      60,
      61,
      32,
      104,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      98,
      111,
      114,
      100,
      101,
      114,
      32,
      60,
      61,
      32,
      104,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      105,
      109,
      103,
      95,
      120,
      43,
      58,
      32,
      37,
      48,
      52,
      100,
      44,
      37,
      48,
      52,
      100,
      32,
      64,
      37,
      112,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      112,
      32,
      61,
      61,
      32,
      100,
      97,
      116,
      97,
      32,
      43,
      32,
      120,
      32,
      43,
      32,
      121,
      32,
      42,
      32,
      40,
      105,
      110,
      116,
      112,
      116,
      114,
      95,
      116,
      41,
      119,
      0,
      37,
      115,
      58,
      32,
      105,
      109,
      103,
      95,
      120,
      45,
      58,
      32,
      37,
      48,
      52,
      100,
      44,
      37,
      48,
      52,
      100,
      32,
      64,
      37,
      112,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      98,
      111,
      114,
      100,
      101,
      114,
      32,
      60,
      61,
      32,
      119,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      105,
      109,
      103,
      95,
      121,
      43,
      58,
      32,
      37,
      48,
      52,
      100,
      44,
      37,
      48,
      52,
      100,
      32,
      64,
      37,
      112,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      105,
      109,
      103,
      95,
      121,
      45,
      58,
      32,
      37,
      48,
      52,
      100,
      44,
      37,
      48,
      52,
      100,
      32,
      64,
      37,
      112,
      10,
      0,
      0,
      0,
      0,
      0,
      0,
      101,
      97,
      110,
      0,
      0,
      0,
      0,
      0,
      97,
      100,
      100,
      111,
      110,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      115,
      121,
      109,
      98,
      111,
      108,
      32,
      115,
      101,
      116,
      115,
      32,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      101,
      100,
      32,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      100,
      117,
      109,
      112,
      95,
      115,
      116,
      97,
      116,
      115,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      32,
      32,
      32,
      32,
      115,
      99,
      97,
      110,
      110,
      101,
      114,
      32,
      115,
      121,
      109,
      115,
      32,
      105,
      110,
      32,
      117,
      115,
      101,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      9,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      100,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      10,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      32,
      32,
      32,
      32,
      105,
      109,
      97,
      103,
      101,
      32,
      115,
      121,
      109,
      115,
      32,
      105,
      110,
      32,
      117,
      115,
      101,
      32,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      9,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      100,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      10,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      115,
      121,
      109,
      98,
      111,
      108,
      115,
      32,
      97,
      108,
      108,
      111,
      99,
      97,
      116,
      101,
      100,
      32,
      32,
      32,
      32,
      32,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      32,
      32,
      32,
      32,
      32,
      114,
      101,
      99,
      121,
      99,
      108,
      101,
      100,
      91,
      37,
      100,
      93,
      32,
      32,
      32,
      32,
      32,
      32,
      32,
      32,
      61,
      32,
      37,
      45,
      52,
      100,
      10,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      112,
      97,
      114,
      116,
      105,
      97,
      108,
      32,
      115,
      121,
      109,
      98,
      111,
      108,
      32,
      64,
      40,
      37,
      100,
      44,
      37,
      100,
      41,
      10,
      0,
      0,
      0,
      0,
      115,
      121,
      109,
      98,
      111,
      108,
      95,
      104,
      97,
      110,
      100,
      108,
      101,
      114,
      0,
      0,
      37,
      115,
      58,
      32,
      100,
      117,
      112,
      32,
      115,
      121,
      109,
      98,
      111,
      108,
      32,
      64,
      40,
      37,
      100,
      44,
      37,
      100,
      41,
      58,
      32,
      100,
      117,
      112,
      32,
      37,
      115,
      58,
      32,
      37,
      46,
      50,
      48,
      115,
      10,
      0,
      37,
      115,
      58,
      32,
      110,
      101,
      119,
      32,
      115,
      121,
      109,
      98,
      111,
      108,
      32,
      64,
      40,
      37,
      100,
      44,
      37,
      100,
      41,
      58,
      32,
      37,
      115,
      58,
      32,
      37,
      46,
      50,
      48,
      115,
      10,
      0,
      0,
      0,
      0,
      0,
      108,
      105,
      110,
      101,
      0,
      0,
      0,
      0,
      113,
      114,
      95,
      104,
      97,
      110,
      100,
      108,
      101,
      114,
      0,
      0,
      0,
      0,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      109,
      97,
      120,
      32,
      102,
      105,
      110,
      100,
      101,
      114,
      32,
      108,
      105,
      110,
      101,
      115,
      32,
      61,
      32,
      37,
      100,
      120,
      37,
      100,
      10,
      0,
      0,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      113,
      114,
      95,
      100,
      101,
      115,
      116,
      114,
      111,
      121,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      37,
      115,
      58,
      32,
      37,
      100,
      120,
      37,
      100,
      32,
      102,
      105,
      110,
      100,
      101,
      114,
      115,
      44,
      32,
      37,
      100,
      32,
      99,
      101,
      110,
      116,
      101,
      114,
      115,
      58,
      10,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      113,
      114,
      95,
      100,
      101,
      99,
      111,
      100,
      101,
      0,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      2,
      2,
      1,
      2,
      2,
      4,
      1,
      2,
      4,
      4,
      2,
      4,
      4,
      4,
      2,
      4,
      6,
      5,
      2,
      4,
      6,
      6,
      2,
      5,
      8,
      8,
      4,
      5,
      8,
      8,
      4,
      5,
      8,
      11,
      4,
      8,
      10,
      11,
      4,
      9,
      12,
      16,
      4,
      9,
      16,
      16,
      6,
      10,
      12,
      18,
      6,
      10,
      17,
      16,
      6,
      11,
      16,
      19,
      6,
      13,
      18,
      21,
      7,
      14,
      21,
      25,
      8,
      16,
      20,
      25,
      8,
      17,
      23,
      25,
      9,
      17,
      23,
      34,
      9,
      18,
      25,
      30,
      10,
      20,
      27,
      32,
      12,
      21,
      29,
      35,
      12,
      23,
      34,
      37,
      12,
      25,
      34,
      40,
      13,
      26,
      35,
      42,
      14,
      28,
      38,
      45,
      15,
      29,
      40,
      48,
      16,
      31,
      43,
      51,
      17,
      33,
      45,
      54,
      18,
      35,
      48,
      57,
      19,
      37,
      51,
      60,
      19,
      38,
      53,
      63,
      20,
      40,
      56,
      66,
      21,
      43,
      59,
      70,
      22,
      45,
      62,
      74,
      24,
      47,
      65,
      77,
      25,
      49,
      68,
      81,
      7,
      10,
      13,
      17,
      10,
      16,
      22,
      28,
      26,
      26,
      26,
      22,
      24,
      22,
      22,
      26,
      24,
      18,
      22,
      15,
      26,
      18,
      22,
      24,
      30,
      24,
      20,
      24,
      18,
      16,
      24,
      28,
      28,
      28,
      28,
      30,
      24,
      20,
      18,
      18,
      26,
      24,
      28,
      24,
      30,
      26,
      28,
      28,
      26,
      28,
      30,
      30,
      22,
      20,
      24,
      20,
      18,
      26,
      16,
      20,
      30,
      28,
      24,
      22,
      26,
      28,
      26,
      30,
      28,
      30,
      30,
      0,
      0,
      4,
      19,
      55,
      15,
      28,
      37,
      12,
      51,
      39,
      59,
      62,
      10,
      24,
      22,
      41,
      31,
      44,
      7,
      65,
      47,
      33,
      67,
      67,
      48,
      32,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      67,
      10,
      9,
      8,
      8,
      12,
      11,
      16,
      10,
      14,
      13,
      16,
      12,
      0,
      0,
      0,
      0,
      48,
      49,
      50,
      51,
      52,
      53,
      54,
      55,
      56,
      57,
      65,
      66,
      67,
      68,
      69,
      70,
      71,
      72,
      73,
      74,
      75,
      76,
      77,
      78,
      79,
      80,
      81,
      82,
      83,
      84,
      85,
      86,
      87,
      88,
      89,
      90,
      32,
      36,
      37,
      42,
      43,
      45,
      46,
      47,
      58,
      0,
      0,
      0,
      16,
      18,
      20,
      22,
      24,
      26,
      28,
      20,
      22,
      24,
      24,
      26,
      28,
      28,
      22,
      24,
      24,
      26,
      26,
      28,
      28,
      24,
      24,
      26,
      26,
      26,
      28,
      28,
      24,
      26,
      26,
      26,
      28,
      28,
      0,
      0,
      0,
      0,
      0,
      0,
      65,
      0,
      4,
      1,
      1,
      0,
      0,
      1,
      64,
      16,
      4,
      0,
      0,
      16,
      0,
      0,
      16,
      1,
      17,
      0,
      16,
      0,
      16,
      0,
      0,
      17,
      1,
      0,
      0,
      16,
      0,
      0,
      132,
      0,
      66,
      0,
      4,
      0,
      64,
      0,
      128,
      16,
      2,
      0,
      0,
      16,
      0,
      0,
      0,
      108,
      0,
      0,
      0,
      68,
      0,
      0,
      0,
      56,
      0,
      0,
      0,
      16,
      0,
      0,
      0,
      0,
      1,
      1,
      4,
      0,
      3,
      1,
      2,
      0,
      2,
      1,
      0,
      2,
      1,
      2,
      148,
      124,
      0,
      0,
      188,
      133,
      0,
      0,
      153,
      154,
      0,
      0,
      211,
      164,
      0,
      0,
      246,
      187,
      0,
      0,
      98,
      199,
      0,
      0,
      71,
      216,
      0,
      0,
      13,
      230,
      0,
      0,
      40,
      249,
      0,
      0,
      120,
      11,
      1,
      0,
      93,
      20,
      1,
      0,
      23,
      42,
      1,
      0,
      50,
      53,
      1,
      0,
      166,
      73,
      1,
      0,
      131,
      86,
      1,
      0,
      201,
      104,
      1,
      0,
      236,
      119,
      1,
      0,
      196,
      142,
      1,
      0,
      225,
      145,
      1,
      0,
      171,
      175,
      1,
      0,
      142,
      176,
      1,
      0,
      26,
      204,
      1,
      0,
      63,
      211,
      1,
      0,
      117,
      237,
      1,
      0,
      80,
      242,
      1,
      0,
      213,
      9,
      2,
      0,
      240,
      22,
      2,
      0,
      186,
      40,
      2,
      0,
      159,
      55,
      2,
      0,
      11,
      75,
      2,
      0,
      46,
      84,
      2,
      0,
      100,
      106,
      2,
      0,
      65,
      117,
      2,
      0,
      105,
      140,
      2,
      0,
      85,
      84,
      70,
      45,
      56,
      0,
      0,
      0,
      73,
      83,
      79,
      56,
      56,
      53,
      57,
      45,
      49,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      83,
      74,
      73,
      83,
      0,
      0,
      0,
      0,
      73,
      83,
      79,
      56,
      56,
      53,
      57,
      45,
      37,
      105,
      0,
      0,
      0,
      0,
      0,
      0,
      67,
      80,
      52,
      51,
      55,
      0,
      0,
      0,
      110,
      101,
      120,
      116,
      32,
      62,
      32,
      115,
      121,
      109,
      115,
      45,
      62,
      100,
      97,
      116,
      97,
      108,
      101,
      110,
      0,
      0,
      0,
      0,
      122,
      98,
      97,
      114,
      47,
      113,
      114,
      99,
      111,
      100,
      101,
      47,
      113,
      114,
      100,
      101,
      99,
      116,
      120,
      116,
      46,
      99,
      0,
      0,
      113,
      114,
      95,
      99,
      111,
      100,
      101,
      95,
      100,
      97,
      116,
      97,
      95,
      108,
      105,
      115,
      116,
      95,
      101,
      120,
      116,
      114,
      97,
      99,
      116,
      95,
      116,
      101,
      120,
      116,
      0,
      0,
      114,
      99,
      32,
      62,
      61,
      32,
      48,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      114,
      101,
      102,
      99,
      110,
      116,
      46,
      104,
      0,
      95,
      122,
      98,
      97,
      114,
      95,
      114,
      101,
      102,
      99,
      110,
      116,
      0,
      0,
      0,
      0,
      87,
      65,
      82,
      78,
      73,
      78,
      71,
      58,
      32,
      37,
      115,
      58,
      37,
      100,
      58,
      32,
      37,
      115,
      58,
      32,
      65,
      115,
      115,
      101,
      114,
      116,
      105,
      111,
      110,
      32,
      34,
      37,
      115,
      34,
      32,
      102,
      97,
      105,
      108,
      101,
      100,
      46,
      10,
      9,
      108,
      111,
      99,
      107,
      61,
      37,
      100,
      32,
      114,
      101,
      113,
      61,
      37,
      100,
      10,
      0,
      0,
      0,
      0,
      0,
      46,
      47,
      122,
      98,
      97,
      114,
      47,
      100,
      101,
      99,
      111,
      100,
      101,
      114,
      46,
      104,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      114,
      101,
      108,
      101,
      97,
      115,
      101,
      95,
      108,
      111,
      99,
      107,
      0,
      0,
      0,
      0,
      100,
      99,
      111,
      100,
      101,
      45,
      62,
      108,
      111,
      99,
      107,
      32,
      61,
      61,
      32,
      114,
      101,
      113,
      0,
      0,
      0,
      0,
      0,
      0,
      255,
      0,
      1,
      4,
      2,
      8,
      5,
      10,
      3,
      14,
      9,
      7,
      6,
      13,
      11,
      12,
      1,
      2,
      4,
      8,
      3,
      6,
      12,
      11,
      5,
      10,
      7,
      14,
      15,
      13,
      9,
      1,
      2,
      4,
      8,
      3,
      6,
      12,
      11,
      5,
      10,
      7,
      14,
      15,
      13,
      9,
      1,
      0,
      11,
      2,
      8,
      16,
      10,
      4,
      8,
      9,
      117,
      116,
      102,
      56,
      0,
      0,
      200,
      119,
      99,
      104,
      97,
      114,
      116,
      0,
      0,
      198,
      117,
      99,
      115,
      50,
      0,
      117,
      99,
      115,
      50,
      98,
      101,
      0,
      0,
      196,
      117,
      99,
      115,
      50,
      108,
      101,
      0,
      0,
      197,
      117,
      116,
      102,
      49,
      54,
      0,
      117,
      116,
      102,
      49,
      54,
      98,
      101,
      0,
      0,
      194,
      117,
      116,
      102,
      49,
      54,
      108,
      101,
      0,
      0,
      193,
      117,
      99,
      115,
      52,
      0,
      117,
      99,
      115,
      52,
      98,
      101,
      0,
      117,
      116,
      102,
      51,
      50,
      0,
      117,
      116,
      102,
      51,
      50,
      98,
      101,
      0,
      0,
      192,
      117,
      99,
      115,
      52,
      108,
      101,
      0,
      117,
      116,
      102,
      51,
      50,
      108,
      101,
      0,
      0,
      195,
      97,
      115,
      99,
      105,
      105,
      0,
      117,
      115,
      97,
      115,
      99,
      105,
      105,
      0,
      105,
      115,
      111,
      54,
      52,
      54,
      0,
      105,
      115,
      111,
      54,
      52,
      54,
      117,
      115,
      0,
      0,
      199,
      101,
      117,
      99,
      106,
      112,
      0,
      0,
      208,
      115,
      104,
      105,
      102,
      116,
      106,
      105,
      115,
      0,
      115,
      106,
      105,
      115,
      0,
      0,
      209,
      103,
      98,
      49,
      56,
      48,
      51,
      48,
      0,
      0,
      216,
      103,
      98,
      107,
      0,
      0,
      217,
      103,
      98,
      50,
      51,
      49,
      50,
      0,
      0,
      218,
      98,
      105,
      103,
      53,
      0,
      98,
      105,
      103,
      102,
      105,
      118,
      101,
      0,
      99,
      112,
      57,
      53,
      48,
      0,
      98,
      105,
      103,
      53,
      104,
      107,
      115,
      99,
      115,
      0,
      0,
      224,
      101,
      117,
      99,
      107,
      114,
      0,
      107,
      115,
      99,
      53,
      54,
      48,
      49,
      0,
      107,
      115,
      120,
      49,
      48,
      48,
      49,
      0,
      99,
      112,
      57,
      52,
      57,
      0,
      0,
      232,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      0,
      108,
      97,
      116,
      105,
      110,
      49,
      0,
      0,
      128,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      50,
      0,
      0,
      32,
      0,
      84,
      0,
      137,
      18,
      0,
      32,
      1,
      6,
      0,
      0,
      152,
      65,
      134,
      26,
      127,
      0,
      48,
      72,
      32,
      0,
      88,
      32,
      201,
      18,
      0,
      36,
      17,
      198,
      35,
      0,
      156,
      81,
      198,
      26,
      128,
      80,
      66,
      136,
      32,
      90,
      0,
      0,
      192,
      4,
      0,
      16,
      113,
      1,
      0,
      29,
      0,
      112,
      2,
      0,
      41,
      0,
      0,
      192,
      7,
      33,
      48,
      1,
      5,
      0,
      0,
      88,
      1,
      0,
      0,
      94,
      208,
      1,
      128,
      29,
      0,
      0,
      128,
      6,
      0,
      91,
      0,
      0,
      0,
      5,
      0,
      20,
      129,
      1,
      0,
      30,
      0,
      128,
      2,
      0,
      42,
      0,
      0,
      0,
      8,
      34,
      52,
      17,
      5,
      0,
      0,
      92,
      1,
      0,
      0,
      95,
      212,
      1,
      192,
      29,
      0,
      0,
      144,
      70,
      36,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      51,
      0,
      0,
      32,
      0,
      212,
      0,
      9,
      0,
      0,
      4,
      48,
      3,
      0,
      0,
      244,
      64,
      70,
      11,
      63,
      0,
      16,
      64,
      32,
      0,
      216,
      0,
      0,
      0,
      0,
      0,
      64,
      3,
      0,
      0,
      248,
      80,
      134,
      11,
      64,
      0,
      16,
      128,
      32,
      0,
      0,
      0,
      64,
      0,
      0,
      108,
      144,
      1,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      0,
      0,
      188,
      0,
      0,
      0,
      43,
      0,
      0,
      0,
      0,
      0,
      200,
      33,
      6,
      0,
      0,
      0,
      0,
      64,
      0,
      0,
      112,
      160,
      1,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      1,
      0,
      0,
      0,
      0,
      0,
      192,
      0,
      0,
      0,
      44,
      0,
      0,
      0,
      0,
      0,
      204,
      49,
      70,
      36,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      52,
      0,
      0,
      32,
      0,
      84,
      48,
      4,
      23,
      0,
      220,
      96,
      4,
      0,
      0,
      152,
      49,
      66,
      12,
      108,
      0,
      48,
      8,
      0,
      0,
      88,
      32,
      73,
      23,
      0,
      224,
      112,
      196,
      35,
      0,
      156,
      65,
      130,
      12,
      109,
      72,
      65,
      200,
      20,
      17,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      14,
      29,
      0,
      112,
      2,
      0,
      37,
      0,
      0,
      64,
      14,
      33,
      56,
      65,
      69,
      16,
      0,
      0,
      0,
      0,
      0,
      0,
      224,
      1,
      0,
      0,
      0,
      184,
      1,
      7,
      0,
      18,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      15,
      30,
      0,
      128,
      2,
      0,
      38,
      0,
      0,
      128,
      14,
      34,
      60,
      81,
      133,
      16,
      0,
      0,
      0,
      0,
      0,
      0,
      228,
      1,
      0,
      0,
      0,
      188,
      17,
      71,
      36,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      53,
      0,
      0,
      32,
      0,
      136,
      51,
      14,
      57,
      229,
      152,
      115,
      14,
      58,
      233,
      168,
      179,
      14,
      59,
      237,
      0,
      224,
      206,
      59,
      240,
      196,
      35,
      207,
      60,
      244,
      212,
      99,
      207,
      61,
      248,
      228,
      163,
      207,
      62,
      252,
      244,
      227,
      207,
      63,
      0,
      5,
      36,
      208,
      64,
      4,
      21,
      100,
      208,
      65,
      8,
      37,
      164,
      208,
      66,
      12,
      53,
      228,
      208,
      67,
      16,
      69,
      36,
      209,
      68,
      20,
      85,
      100,
      209,
      69,
      24,
      101,
      164,
      209,
      70,
      28,
      117,
      228,
      209,
      71,
      32,
      133,
      36,
      210,
      72,
      36,
      149,
      100,
      210,
      73,
      40,
      165,
      164,
      210,
      74,
      44,
      181,
      228,
      210,
      75,
      53,
      194,
      20,
      147,
      76,
      51,
      209,
      84,
      147,
      77,
      55,
      225,
      148,
      147,
      78,
      59,
      13,
      192,
      83,
      79,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      54,
      0,
      0,
      32,
      0,
      4,
      16,
      64,
      0,
      0,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      115,
      1,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      0,
      93,
      1,
      4,
      16,
      64,
      93,
      1,
      216,
      117,
      23,
      94,
      121,
      233,
      181,
      23,
      95,
      125,
      249,
      245,
      23,
      96,
      129,
      9,
      54,
      24,
      97,
      133,
      25,
      118,
      24,
      98,
      137,
      41,
      182,
      24,
      99,
      141,
      57,
      246,
      88,
      0,
      1,
      4,
      16,
      64,
      0,
      144,
      69,
      38,
      217,
      100,
      148,
      85,
      102,
      217,
      101,
      152,
      101,
      166,
      217,
      102,
      156,
      117,
      230,
      217,
      103,
      160,
      133,
      38,
      90,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      55,
      0,
      0,
      32,
      0,
      144,
      88,
      34,
      0,
      51,
      210,
      8,
      0,
      0,
      0,
      0,
      160,
      9,
      0,
      0,
      0,
      16,
      128,
      136,
      0,
      0,
      0,
      0,
      0,
      155,
      112,
      210,
      9,
      0,
      158,
      124,
      2,
      10,
      0,
      161,
      0,
      32,
      202,
      40,
      164,
      148,
      98,
      202,
      41,
      168,
      164,
      162,
      202,
      42,
      172,
      180,
      226,
      202,
      43,
      176,
      196,
      34,
      203,
      44,
      180,
      212,
      18,
      128,
      45,
      183,
      224,
      146,
      139,
      46,
      187,
      240,
      210,
      139,
      47,
      191,
      0,
      19,
      140,
      48,
      195,
      16,
      83,
      140,
      49,
      199,
      32,
      147,
      140,
      50,
      203,
      48,
      211,
      140,
      51,
      207,
      64,
      19,
      141,
      52,
      211,
      80,
      83,
      141,
      53,
      215,
      96,
      147,
      141,
      54,
      219,
      112,
      211,
      141,
      55,
      223,
      128,
      19,
      78,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      56,
      0,
      0,
      32,
      0,
      4,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      240,
      0,
      0,
      0,
      0,
      0,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      1,
      4,
      16,
      192,
      136,
      83,
      81,
      85,
      149,
      85,
      87,
      97,
      149,
      149,
      86,
      91,
      113,
      213,
      149,
      87,
      95,
      129,
      21,
      150,
      88,
      99,
      145,
      85,
      150,
      89,
      103,
      161,
      149,
      150,
      90,
      107,
      177,
      213,
      86,
      0,
      1,
      120,
      248,
      97,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      57,
      0,
      0,
      80,
      45,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      244,
      64,
      6,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      46,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      248,
      80,
      6,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      48,
      0,
      0,
      32,
      0,
      84,
      48,
      66,
      12,
      57,
      220,
      16,
      4,
      0,
      70,
      132,
      96,
      6,
      27,
      131,
      0,
      0,
      135,
      20,
      0,
      88,
      64,
      130,
      12,
      58,
      224,
      32,
      4,
      0,
      71,
      136,
      112,
      70,
      27,
      132,
      136,
      24,
      199,
      20,
      17,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      14,
      29,
      0,
      112,
      2,
      0,
      37,
      0,
      0,
      0,
      0,
      0,
      56,
      65,
      5,
      0,
      0,
      0,
      0,
      128,
      27,
      0,
      224,
      1,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      18,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      15,
      30,
      0,
      128,
      2,
      0,
      38,
      0,
      0,
      0,
      0,
      0,
      60,
      81,
      5,
      0,
      0,
      0,
      0,
      192,
      27,
      0,
      228,
      1,
      0,
      0,
      0,
      0,
      0,
      192,
      16,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      49,
      0,
      116,
      105,
      115,
      54,
      50,
      48,
      0,
      0,
      32,
      0,
      188,
      6,
      91,
      108,
      178,
      205,
      70,
      91,
      109,
      182,
      221,
      134,
      91,
      110,
      186,
      237,
      198,
      91,
      111,
      190,
      253,
      6,
      92,
      112,
      194,
      13,
      71,
      92,
      113,
      198,
      29,
      135,
      92,
      114,
      202,
      45,
      199,
      92,
      115,
      206,
      61,
      7,
      93,
      116,
      210,
      77,
      71,
      93,
      117,
      214,
      93,
      135,
      93,
      118,
      218,
      109,
      199,
      93,
      119,
      222,
      125,
      7,
      94,
      120,
      226,
      141,
      71,
      94,
      121,
      230,
      157,
      135,
      94,
      0,
      1,
      4,
      16,
      64,
      122,
      234,
      173,
      199,
      94,
      123,
      238,
      189,
      7,
      95,
      124,
      242,
      205,
      71,
      95,
      125,
      246,
      221,
      135,
      95,
      126,
      250,
      237,
      199,
      95,
      127,
      254,
      253,
      7,
      96,
      128,
      2,
      14,
      72,
      96,
      129,
      1,
      4,
      16,
      64,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      51,
      0,
      0,
      32,
      0,
      160,
      8,
      0,
      0,
      0,
      164,
      8,
      0,
      0,
      13,
      0,
      192,
      5,
      0,
      0,
      0,
      0,
      192,
      2,
      0,
      0,
      0,
      0,
      0,
      39,
      2,
      0,
      0,
      0,
      16,
      0,
      208,
      5,
      0,
      0,
      0,
      0,
      128,
      3,
      21,
      236,
      16,
      193,
      5,
      0,
      0,
      112,
      194,
      8,
      29,
      0,
      240,
      71,
      9,
      49,
      4,
      145,
      131,
      17,
      102,
      48,
      225,
      4,
      0,
      84,
      0,
      0,
      0,
      0,
      120,
      40,
      1,
      6,
      28,
      0,
      4,
      50,
      8,
      0,
      22,
      240,
      32,
      1,
      6,
      0,
      0,
      128,
      2,
      9,
      30,
      0,
      0,
      136,
      9,
      50,
      8,
      161,
      195,
      17,
      103,
      52,
      241,
      4,
      0,
      85,
      0,
      0,
      0,
      0,
      121,
      44,
      17,
      70,
      28,
      0,
      8,
      66,
      72,
      137,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      52,
      0,
      0,
      32,
      0,
      24,
      120,
      32,
      0,
      27,
      112,
      128,
      32,
      0,
      20,
      2,
      96,
      97,
      130,
      26,
      2,
      0,
      128,
      31,
      10,
      46,
      248,
      2,
      12,
      12,
      54,
      8,
      128,
      131,
      21,
      62,
      120,
      33,
      132,
      27,
      98,
      152,
      97,
      132,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      122,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      128,
      132,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      7,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      123,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      132,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      208,
      7,
      0,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      53,
      0,
      108,
      97,
      116,
      105,
      110,
      57,
      0,
      0,
      36,
      51,
      2,
      96,
      6,
      0,
      103,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      131,
      0,
      0,
      0,
      0,
      132,
      0,
      0,
      0,
      0,
      88,
      100,
      225,
      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,
      105,
      115,
      111,
      56,
      56,
      53,
      57,
      49,
      54,
      0,
      0,
      32,
      0,
      84,
      96,
      129,
      18,
      51,
      166,
      104,
      6,
      0,
      103,
      0,
      160,
      8,
      0,
      127,
      0,
      0,
      72,
      32,
      0,
      0,
      208,
      193,
      18,
      131,
      160,
      8,
      0,
      0,
      132,
      120,
      176,
      8,
      0,
      88,
      100,
      225,
      135,
      32,
      0,
      0,
      0,
      192,
      4,
      0,
      92,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      33
    ],
    'i8',
    ALLOC_NONE,
    Runtime.GLOBAL_BASE
  );
  /* memory initializer */ allocate(
    [
      48,
      1,
      0,
      0,
      0,
      88,
      1,
      0,
      24,
      118,
      0,
      0,
      0,
      0,
      0,
      156,
      192,
      8,
      0,
      0,
      0,
      0,
      0,
      5,
      0,
      96,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      34,
      52,
      1,
      0,
      0,
      0,
      92,
      1,
      64,
      24,
      119,
      0,
      0,
      0,
      0,
      0,
      160,
      208,
      8,
      0,
      99,
      112,
      49,
      50,
      53,
      48,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      48,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      0,
      41,
      182,
      168,
      226,
      138,
      1,
      184,
      104,
      198,
      139,
      96,
      168,
      49,
      200,
      31,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      1,
      216,
      120,
      6,
      140,
      97,
      172,
      65,
      8,
      32,
      0,
      60,
      2,
      137,
      18,
      0,
      84,
      0,
      0,
      0,
      0,
      0,
      64,
      6,
      0,
      0,
      0,
      0,
      64,
      32,
      0,
      0,
      32,
      201,
      18,
      0,
      0,
      0,
      0,
      0,
      0,
      88,
      80,
      6,
      0,
      72,
      80,
      146,
      132,
      32,
      90,
      0,
      0,
      192,
      4,
      0,
      16,
      113,
      1,
      0,
      29,
      0,
      112,
      2,
      0,
      41,
      0,
      0,
      192,
      7,
      33,
      48,
      1,
      5,
      0,
      0,
      88,
      1,
      0,
      0,
      94,
      208,
      1,
      128,
      29,
      0,
      0,
      128,
      6,
      0,
      91,
      0,
      0,
      0,
      5,
      0,
      20,
      129,
      1,
      0,
      30,
      0,
      128,
      2,
      0,
      42,
      0,
      0,
      0,
      8,
      34,
      52,
      17,
      5,
      0,
      0,
      92,
      1,
      0,
      0,
      95,
      212,
      1,
      192,
      29,
      0,
      0,
      144,
      70,
      36,
      99,
      112,
      49,
      50,
      53,
      49,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      49,
      0,
      0,
      0,
      227,
      144,
      99,
      162,
      76,
      41,
      182,
      168,
      226,
      138,
      51,
      186,
      168,
      206,
      139,
      235,
      180,
      195,
      206,
      59,
      49,
      145,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      1,
      216,
      136,
      19,
      140,
      57,
      237,
      164,
      83,
      79,
      0,
      184,
      195,
      83,
      58,
      0,
      248,
      4,
      0,
      0,
      226,
      0,
      80,
      14,
      0,
      0,
      0,
      0,
      0,
      58,
      0,
      0,
      112,
      78,
      77,
      63,
      1,
      0,
      0,
      0,
      48,
      213,
      56,
      19,
      0,
      55,
      153,
      67,
      147,
      77,
      240,
      196,
      35,
      207,
      60,
      244,
      212,
      99,
      207,
      61,
      248,
      228,
      163,
      207,
      62,
      252,
      244,
      227,
      207,
      63,
      0,
      5,
      36,
      208,
      64,
      4,
      21,
      100,
      208,
      65,
      8,
      37,
      164,
      208,
      66,
      12,
      53,
      228,
      208,
      67,
      16,
      69,
      36,
      209,
      68,
      20,
      85,
      100,
      209,
      69,
      24,
      101,
      164,
      209,
      70,
      28,
      117,
      228,
      209,
      71,
      32,
      133,
      36,
      210,
      72,
      36,
      149,
      100,
      210,
      73,
      40,
      165,
      164,
      210,
      74,
      44,
      181,
      228,
      210,
      75,
      99,
      112,
      49,
      50,
      53,
      50,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      50,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      142,
      184,
      104,
      198,
      139,
      88,
      4,
      48,
      72,
      0,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      147,
      216,
      120,
      6,
      140,
      89,
      4,
      64,
      136,
      31,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      99,
      112,
      49,
      50,
      53,
      51,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      51,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      1,
      184,
      24,
      192,
      139,
      1,
      4,
      16,
      64,
      0,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      1,
      216,
      24,
      0,
      140,
      1,
      4,
      16,
      64,
      0,
      0,
      112,
      210,
      9,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      16,
      0,
      0,
      0,
      0,
      0,
      128,
      136,
      0,
      0,
      0,
      0,
      0,
      155,
      0,
      0,
      0,
      0,
      158,
      124,
      2,
      10,
      0,
      161,
      0,
      32,
      202,
      40,
      164,
      148,
      98,
      202,
      41,
      168,
      164,
      162,
      202,
      42,
      172,
      180,
      226,
      202,
      43,
      176,
      196,
      34,
      203,
      44,
      180,
      212,
      18,
      128,
      45,
      183,
      224,
      146,
      139,
      46,
      187,
      240,
      210,
      139,
      47,
      191,
      0,
      19,
      140,
      48,
      195,
      16,
      83,
      140,
      49,
      199,
      32,
      147,
      140,
      50,
      203,
      48,
      211,
      140,
      51,
      207,
      64,
      19,
      141,
      52,
      211,
      80,
      83,
      141,
      53,
      215,
      96,
      147,
      141,
      54,
      219,
      112,
      211,
      141,
      55,
      223,
      128,
      19,
      78,
      0,
      99,
      112,
      49,
      50,
      53,
      52,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      52,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      142,
      184,
      104,
      198,
      139,
      88,
      4,
      16,
      64,
      0,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      147,
      216,
      120,
      6,
      140,
      89,
      4,
      16,
      128,
      31,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      45,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      244,
      64,
      6,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      46,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      248,
      80,
      6,
      0,
      99,
      112,
      49,
      50,
      53,
      53,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      53,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      142,
      184,
      24,
      192,
      139,
      1,
      4,
      16,
      64,
      0,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      147,
      216,
      24,
      0,
      140,
      1,
      4,
      16,
      64,
      0,
      0,
      0,
      0,
      0,
      0,
      49,
      2,
      0,
      0,
      0,
      0,
      0,
      192,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      240,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      64,
      5,
      37,
      212,
      80,
      68,
      21,
      101,
      212,
      81,
      72,
      37,
      21,
      128,
      82,
      75,
      49,
      213,
      148,
      83,
      79,
      65,
      21,
      149,
      84,
      110,
      189,
      5,
      87,
      92,
      114,
      5,
      16,
      64,
      0,
      1,
      4,
      16,
      64,
      0,
      83,
      81,
      85,
      149,
      85,
      87,
      97,
      149,
      149,
      86,
      91,
      113,
      213,
      149,
      87,
      95,
      129,
      21,
      150,
      88,
      99,
      145,
      85,
      150,
      89,
      103,
      161,
      149,
      150,
      90,
      107,
      177,
      213,
      86,
      0,
      1,
      120,
      248,
      97,
      0,
      99,
      112,
      49,
      50,
      53,
      54,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      54,
      0,
      0,
      0,
      51,
      146,
      102,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      142,
      184,
      56,
      218,
      139,
      88,
      148,
      134,
      154,
      105,
      170,
      145,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      169,
      217,
      120,
      26,
      140,
      89,
      112,
      216,
      225,
      106,
      0,
      204,
      5,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      26,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      64,
      23,
      0,
      0,
      0,
      0,
      64,
      93,
      173,
      217,
      117,
      23,
      94,
      121,
      233,
      181,
      23,
      95,
      125,
      249,
      245,
      23,
      96,
      129,
      9,
      54,
      24,
      97,
      133,
      25,
      118,
      24,
      98,
      137,
      41,
      182,
      24,
      0,
      140,
      53,
      230,
      216,
      99,
      144,
      69,
      38,
      217,
      100,
      0,
      80,
      6,
      64,
      101,
      150,
      93,
      134,
      25,
      0,
      0,
      0,
      0,
      0,
      0,
      153,
      105,
      6,
      0,
      0,
      155,
      113,
      214,
      153,
      103,
      0,
      124,
      6,
      26,
      0,
      161,
      1,
      32,
      26,
      0,
      0,
      120,
      248,
      161,
      107,
      99,
      112,
      49,
      50,
      53,
      55,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      55,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      0,
      41,
      182,
      168,
      226,
      138,
      1,
      184,
      24,
      192,
      139,
      1,
      16,
      240,
      136,
      2,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      1,
      216,
      24,
      0,
      140,
      1,
      24,
      32,
      73,
      0,
      0,
      4,
      0,
      0,
      0,
      0,
      4,
      0,
      0,
      0,
      13,
      0,
      192,
      5,
      0,
      0,
      0,
      0,
      192,
      2,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      16,
      0,
      208,
      5,
      0,
      0,
      0,
      0,
      128,
      3,
      21,
      236,
      16,
      193,
      5,
      0,
      0,
      112,
      194,
      8,
      29,
      0,
      240,
      71,
      9,
      49,
      4,
      145,
      131,
      17,
      102,
      48,
      225,
      4,
      0,
      84,
      0,
      0,
      0,
      0,
      120,
      40,
      1,
      6,
      28,
      0,
      4,
      50,
      8,
      0,
      22,
      240,
      32,
      1,
      6,
      0,
      0,
      128,
      2,
      9,
      30,
      0,
      0,
      136,
      9,
      50,
      8,
      161,
      195,
      17,
      103,
      52,
      241,
      4,
      0,
      85,
      0,
      0,
      0,
      0,
      121,
      44,
      17,
      70,
      28,
      0,
      8,
      66,
      72,
      36,
      99,
      112,
      49,
      50,
      53,
      56,
      0,
      119,
      105,
      110,
      100,
      111,
      119,
      115,
      49,
      50,
      53,
      56,
      0,
      0,
      0,
      51,
      6,
      96,
      98,
      33,
      41,
      182,
      168,
      226,
      138,
      142,
      184,
      24,
      192,
      139,
      88,
      4,
      16,
      64,
      0,
      1,
      144,
      88,
      226,
      137,
      40,
      178,
      8,
      98,
      136,
      147,
      216,
      24,
      0,
      140,
      89,
      4,
      16,
      128,
      31,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      192,
      4,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      149,
      0,
      0,
      0,
      0,
      33,
      0,
      128,
      9,
      0,
      0,
      24,
      2,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      32,
      114,
      9,
      0,
      0,
      0,
      0,
      0,
      5,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      150,
      0,
      0,
      0,
      0,
      34,
      0,
      144,
      9,
      0,
      0,
      28,
      2,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      36,
      34,
      35,
      0,
      107,
      111,
      105,
      56,
      114,
      0,
      0,
      0,
      62,
      254,
      8,
      100,
      144,
      66,
      14,
      73,
      100,
      145,
      70,
      30,
      137,
      164,
      153,
      103,
      162,
      153,
      166,
      154,
      107,
      178,
      217,
      38,
      143,
      110,
      222,
      136,
      99,
      142,
      58,
      238,
      40,
      64,
      143,
      7,
      32,
      144,
      192,
      3,
      73,
      42,
      185,
      36,
      76,
      76,
      54,
      233,
      228,
      147,
      80,
      70,
      41,
      229,
      148,
      84,
      86,
      105,
      229,
      149,
      88,
      102,
      169,
      165,
      56,
      91,
      114,
      217,
      165,
      151,
      95,
      130,
      25,
      166,
      152,
      99,
      146,
      89,
      102,
      1,
      46,
      65,
      20,
      145,
      73,
      20,
      85,
      68,
      210,
      68,
      37,
      97,
      148,
      145,
      70,
      27,
      113,
      212,
      145,
      71,
      31,
      189,
      4,
      82,
      72,
      34,
      141,
      100,
      145,
      68,
      44,
      173,
      116,
      17,
      74,
      45,
      165,
      116,
      146,
      74,
      14,
      193,
      19,
      143,
      65,
      244,
      212,
      67,
      208,
      60,
      5,
      225,
      147,
      143,
      62,
      251,
      240,
      211,
      143,
      63,
      255,
      60,
      4,
      80,
      64,
      2,
      13,
      100,
      143,
      60,
      12,
      45,
      116,
      15,
      66,
      13,
      37,
      116,
      144,
      66,
      107,
      111,
      105,
      56,
      117,
      0,
      0,
      0,
      62,
      254,
      8,
      100,
      144,
      66,
      14,
      73,
      100,
      145,
      70,
      30,
      137,
      164,
      153,
      103,
      162,
      153,
      166,
      154,
      107,
      178,
      217,
      38,
      143,
      110,
      222,
      136,
      99,
      142,
      58,
      238,
      40,
      64,
      143,
      7,
      32,
      144,
      192,
      3,
      73,
      42,
      185,
      36,
      76,
      51,
      53,
      89,
      147,
      77,
      80,
      70,
      41,
      229,
      148,
      84,
      254,
      100,
      229,
      149,
      88,
      102,
      169,
      165,
      56,
      229,
      112,
      121,
      14,
      58,
      95,
      130,
      25,
      166,
      152,
      99,
      250,
      84,
      102,
      1,
      46,
      65,
      20,
      145,
      73,
      20,
      85,
      68,
      210,
      68,
      37,
      97,
      148,
      145,
      70,
      27,
      113,
      212,
      145,
      71,
      31,
      189,
      4,
      82,
      72,
      34,
      141,
      100,
      145,
      68,
      44,
      173,
      116,
      17,
      74,
      45,
      165,
      116,
      146,
      74,
      14,
      193,
      19,
      143,
      65,
      244,
      212,
      67,
      208,
      60,
      5,
      225,
      147,
      143,
      62,
      251,
      240,
      211,
      143,
      63,
      255,
      60,
      4,
      80,
      64,
      2,
      13,
      100,
      143,
      60,
      12,
      45,
      116,
      15,
      66,
      13,
      37,
      116,
      144,
      66,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      48,
      1,
      48,
      2,
      48,
      12,
      255,
      14,
      255,
      251,
      48,
      26,
      255,
      27,
      255,
      31,
      255,
      1,
      255,
      155,
      48,
      156,
      48,
      180,
      0,
      64,
      255,
      168,
      0,
      62,
      255,
      227,
      255,
      63,
      255,
      253,
      48,
      254,
      48,
      157,
      48,
      158,
      48,
      3,
      48,
      221,
      78,
      5,
      48,
      6,
      48,
      7,
      48,
      252,
      48,
      21,
      32,
      16,
      32,
      15,
      255,
      92,
      0,
      28,
      48,
      22,
      32,
      92,
      255,
      38,
      32,
      37,
      32,
      24,
      32,
      25,
      32,
      28,
      32,
      29,
      32,
      8,
      255,
      9,
      255,
      20,
      48,
      21,
      48,
      59,
      255,
      61,
      255,
      91,
      255,
      93,
      255,
      8,
      48,
      9,
      48,
      10,
      48,
      11,
      48,
      12,
      48,
      13,
      48,
      14,
      48,
      15,
      48,
      16,
      48,
      17,
      48,
      11,
      255,
      18,
      34,
      177,
      0,
      215,
      0,
      247,
      0,
      29,
      255,
      96,
      34,
      28,
      255,
      30,
      255,
      102,
      34,
      103,
      34,
      30,
      34,
      52,
      34,
      66,
      38,
      64,
      38,
      176,
      0,
      50,
      32,
      51,
      32,
      3,
      33,
      229,
      255,
      4,
      255,
      162,
      0,
      163,
      0,
      5,
      255,
      3,
      255,
      6,
      255,
      10,
      255,
      32,
      255,
      167,
      0,
      6,
      38,
      5,
      38,
      203,
      37,
      207,
      37,
      206,
      37,
      199,
      37,
      198,
      37,
      161,
      37,
      160,
      37,
      179,
      37,
      178,
      37,
      189,
      37,
      188,
      37,
      59,
      32,
      18,
      48,
      146,
      33,
      144,
      33,
      145,
      33,
      147,
      33,
      19,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      8,
      34,
      11,
      34,
      134,
      34,
      135,
      34,
      130,
      34,
      131,
      34,
      42,
      34,
      41,
      34,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      39,
      34,
      40,
      34,
      172,
      0,
      210,
      33,
      212,
      33,
      0,
      34,
      3,
      34,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      32,
      34,
      165,
      34,
      18,
      35,
      2,
      34,
      7,
      34,
      97,
      34,
      82,
      34,
      106,
      34,
      107,
      34,
      26,
      34,
      61,
      34,
      29,
      34,
      53,
      34,
      43,
      34,
      44,
      34,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      43,
      33,
      48,
      32,
      111,
      38,
      109,
      38,
      106,
      38,
      32,
      32,
      33,
      32,
      182,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      239,
      37,
      0,
      0,
      0,
      0,
      0,
      0,
      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,
      255,
      17,
      255,
      18,
      255,
      19,
      255,
      20,
      255,
      21,
      255,
      22,
      255,
      23,
      255,
      24,
      255,
      25,
      255,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      33,
      255,
      34,
      255,
      35,
      255,
      36,
      255,
      37,
      255,
      38,
      255,
      39,
      255,
      40,
      255,
      41,
      255,
      42,
      255,
      43,
      255,
      44,
      255,
      45,
      255,
      46,
      255,
      47,
      255,
      48,
      255,
      49,
      255,
      50,
      255,
      51,
      255,
      52,
      255,
      53,
      255,
      54,
      255,
      55,
      255,
      56,
      255,
      57,
      255,
      58,
      255,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      65,
      255,
      66,
      255,
      67,
      255,
      68,
      255,
      69,
      255,
      70,
      255,
      71,
      255,
      72,
      255,
      73,
      255,
      74,
      255,
      75,
      255,
      76,
      255,
      77,
      255,
      78,
      255,
      79,
      255,
      80,
      255,
      81,
      255,
      82,
      255,
      83,
      255,
      84,
      255,
      85,
      255,
      86,
      255,
      87,
      255,
      88,
      255,
      89,
      255,
      90,
      255,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      65,
      48,
      66,
      48,
      67,
      48,
      68,
      48,
      69,
      48,
      70,
      48,
      71,
      48,
      72,
      48,
      73,
      48,
      74,
      48,
      75,
      48,
      76,
      48,
      77,
      48,
      78,
      48,
      79,
      48,
      80,
      48,
      81,
      48,
      82,
      48,
      83,
      48,
      84,
      48,
      85,
      48,
      86,
      48,
      87,
      48,
      88,
      48,
      89,
      48,
      90,
      48,
      91,
      48,
      92,
      48,
      93,
      48,
      94,
      48,
      95,
      48,
      96,
      48,
      97,
      48,
      98,
      48,
      99,
      48,
      100,
      48,
      101,
      48,
      102,
      48,
      103,
      48,
      104,
      48,
      105,
      48,
      106,
      48,
      107,
      48,
      108,
      48,
      109,
      48,
      110,
      48,
      111,
      48,
      112,
      48,
      113,
      48,
      114,
      48,
      115,
      48,
      116,
      48,
      117,
      48,
      118,
      48,
      119,
      48,
      120,
      48,
      121,
      48,
      122,
      48,
      123,
      48,
      124,
      48,
      125,
      48,
      126,
      48,
      127,
      48,
      128,
      48,
      129,
      48,
      130,
      48,
      131,
      48,
      132,
      48,
      133,
      48,
      134,
      48,
      135,
      48,
      136,
      48,
      137,
      48,
      138,
      48,
      139,
      48,
      140,
      48,
      141,
      48,
      142,
      48,
      143,
      48,
      144,
      48,
      145,
      48,
      146,
      48,
      147,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      161,
      48,
      162,
      48,
      163,
      48,
      164,
      48,
      165,
      48,
      166,
      48,
      167,
      48,
      168,
      48,
      169,
      48,
      170,
      48,
      171,
      48,
      172,
      48,
      173,
      48,
      174,
      48,
      175,
      48,
      176,
      48,
      177,
      48,
      178,
      48,
      179,
      48,
      180,
      48,
      181,
      48,
      182,
      48,
      183,
      48,
      184,
      48,
      185,
      48,
      186,
      48,
      187,
      48,
      188,
      48,
      189,
      48,
      190,
      48,
      191,
      48,
      192,
      48,
      193,
      48,
      194,
      48,
      195,
      48,
      196,
      48,
      197,
      48,
      198,
      48,
      199,
      48,
      200,
      48,
      201,
      48,
      202,
      48,
      203,
      48,
      204,
      48,
      205,
      48,
      206,
      48,
      207,
      48,
      208,
      48,
      209,
      48,
      210,
      48,
      211,
      48,
      212,
      48,
      213,
      48,
      214,
      48,
      215,
      48,
      216,
      48,
      217,
      48,
      218,
      48,
      219,
      48,
      220,
      48,
      221,
      48,
      222,
      48,
      223,
      48,
      224,
      48,
      225,
      48,
      226,
      48,
      227,
      48,
      228,
      48,
      229,
      48,
      230,
      48,
      231,
      48,
      232,
      48,
      233,
      48,
      234,
      48,
      235,
      48,
      236,
      48,
      237,
      48,
      238,
      48,
      239,
      48,
      240,
      48,
      241,
      48,
      242,
      48,
      243,
      48,
      244,
      48,
      245,
      48,
      246,
      48,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      145,
      3,
      146,
      3,
      147,
      3,
      148,
      3,
      149,
      3,
      150,
      3,
      151,
      3,
      152,
      3,
      153,
      3,
      154,
      3,
      155,
      3,
      156,
      3,
      157,
      3,
      158,
      3,
      159,
      3,
      160,
      3,
      161,
      3,
      163,
      3,
      164,
      3,
      165,
      3,
      166,
      3,
      167,
      3,
      168,
      3,
      169,
      3,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      177,
      3,
      178,
      3,
      179,
      3,
      180,
      3,
      181,
      3,
      182,
      3,
      183,
      3,
      184,
      3,
      185,
      3,
      186,
      3,
      187,
      3,
      188,
      3,
      189,
      3,
      190,
      3,
      191,
      3,
      192,
      3,
      193,
      3,
      195,
      3,
      196,
      3,
      197,
      3,
      198,
      3,
      199,
      3,
      200,
      3,
      201,
      3,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      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,
      4,
      17,
      4,
      18,
      4,
      19,
      4,
      20,
      4,
      21,
      4,
      1,
      4,
      22,
      4,
      23,
      4,
      24,
      4,
      25,
      4,
      26,
      4,
      27,
      4,
      28,
      4,
      29,
      4,
      30,
      4,
      31,
      4,
      32,
      4,
      33,
      4,
      34,
      4,
      35,
      4,
      36,
      4,
      37,
      4,
      38,
      4,
      39,
      4,
      40,
      4,
      41,
      4,
      42,
      4,
      43,
      4,
      44,
      4,
      45,
      4,
      46,
      4,
      47,
      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,
      0,
      0,
      0,
      0,
      48,
      4,
      49,
      4,
      50,
      4,
      51,
      4,
      52,
      4,
      53,
      4,
      81,
      4,
      54,
      4,
      55,
      4,
      56,
      4,
      57,
      4,
      58,
      4,
      59,
      4,
      60,
      4,
      61,
      4,
      62,
      4,
      63,
      4,
      64,
      4,
      65,
      4,
      66,
      4,
      67,
      4,
      68,
      4,
      69,
      4,
      70,
      4,
      71,
      4,
      72,
      4,
      73,
      4,
      74,
      4,
      75,
      4,
      76,
      4,
      77,
      4,
      78,
      4,
      79,
      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,
      0,
      37,
      2,
      37,
      12,
      37,
      16,
      37,
      24,
      37,
      20,
      37,
      28,
      37,
      44,
      37,
      36,
      37,
      52,
      37,
      60,
      37,
      1,
      37,
      3,
      37,
      15,
      37,
      19,
      37,
      27,
      37,
      23,
      37,
      35,
      37,
      51,
      37,
      43,
      37,
      59,
      37,
      75,
      37,
      32,
      37,
      47,
      37,
      40,
      37,
      55,
      37,
      63,
      37,
      29,
      37,
      48,
      37,
      37,
      37,
      56,
      37,
      66,
      37
    ],
    'i8',
    ALLOC_NONE,
    Runtime.GLOBAL_BASE + 10240
  );
  /* memory initializer */ allocate(
    [
      156,
      78,
      22,
      85,
      3,
      90,
      63,
      150,
      192,
      84,
      27,
      97,
      40,
      99,
      246,
      89,
      34,
      144,
      117,
      132,
      28,
      131,
      80,
      122,
      170,
      96,
      225,
      99,
      37,
      110,
      237,
      101,
      102,
      132,
      166,
      130,
      245,
      155,
      147,
      104,
      39,
      87,
      161,
      101,
      113,
      98,
      155,
      91,
      208,
      89,
      123,
      134,
      244,
      152,
      98,
      125,
      190,
      125,
      142,
      155,
      22,
      98,
      159,
      124,
      183,
      136,
      137,
      91,
      181,
      94,
      9,
      99,
      151,
      102,
      72,
      104,
      199,
      149,
      141,
      151,
      79,
      103,
      229,
      78,
      10,
      79,
      77,
      79,
      157,
      79,
      73,
      80,
      242,
      86,
      55,
      89,
      212,
      89,
      1,
      90,
      9,
      92,
      223,
      96,
      15,
      97,
      112,
      97,
      19,
      102,
      5,
      105,
      186,
      112,
      79,
      117,
      112,
      117,
      251,
      121,
      173,
      125,
      239,
      125,
      195,
      128,
      14,
      132,
      99,
      136,
      2,
      139,
      85,
      144,
      122,
      144,
      59,
      83,
      149,
      78,
      165,
      78,
      223,
      87,
      178,
      128,
      193,
      144,
      239,
      120,
      0,
      78,
      241,
      88,
      162,
      110,
      56,
      144,
      50,
      122,
      40,
      131,
      139,
      130,
      47,
      156,
      65,
      81,
      112,
      83,
      189,
      84,
      225,
      84,
      224,
      86,
      251,
      89,
      21,
      95,
      242,
      152,
      235,
      109,
      228,
      128,
      45,
      133,
      98,
      150,
      112,
      150,
      160,
      150,
      251,
      151,
      11,
      84,
      243,
      83,
      135,
      91,
      207,
      112,
      189,
      127,
      194,
      143,
      232,
      150,
      111,
      83,
      92,
      157,
      186,
      122,
      17,
      78,
      147,
      120,
      252,
      129,
      38,
      110,
      24,
      86,
      4,
      85,
      29,
      107,
      26,
      133,
      59,
      156,
      229,
      89,
      169,
      83,
      102,
      109,
      220,
      116,
      143,
      149,
      66,
      86,
      145,
      78,
      75,
      144,
      242,
      150,
      79,
      131,
      12,
      153,
      225,
      83,
      182,
      85,
      48,
      91,
      113,
      95,
      32,
      102,
      243,
      102,
      4,
      104,
      56,
      108,
      243,
      108,
      41,
      109,
      91,
      116,
      200,
      118,
      78,
      122,
      52,
      152,
      241,
      130,
      91,
      136,
      96,
      138,
      237,
      146,
      178,
      109,
      171,
      117,
      202,
      118,
      197,
      153,
      166,
      96,
      1,
      139,
      138,
      141,
      178,
      149,
      142,
      105,
      173,
      83,
      134,
      81,
      18,
      87,
      48,
      88,
      68,
      89,
      180,
      91,
      246,
      94,
      40,
      96,
      169,
      99,
      244,
      99,
      191,
      108,
      20,
      111,
      142,
      112,
      20,
      113,
      89,
      113,
      213,
      113,
      63,
      115,
      1,
      126,
      118,
      130,
      209,
      130,
      151,
      133,
      96,
      144,
      91,
      146,
      27,
      157,
      105,
      88,
      188,
      101,
      90,
      108,
      37,
      117,
      249,
      81,
      46,
      89,
      101,
      89,
      128,
      95,
      220,
      95,
      188,
      98,
      250,
      101,
      42,
      106,
      39,
      107,
      180,
      107,
      139,
      115,
      193,
      127,
      86,
      137,
      44,
      157,
      14,
      157,
      196,
      158,
      161,
      92,
      150,
      108,
      123,
      131,
      4,
      81,
      75,
      92,
      182,
      97,
      198,
      129,
      118,
      104,
      97,
      114,
      89,
      78,
      250,
      79,
      120,
      83,
      105,
      96,
      41,
      110,
      79,
      122,
      243,
      151,
      11,
      78,
      22,
      83,
      238,
      78,
      85,
      79,
      61,
      79,
      161,
      79,
      115,
      79,
      160,
      82,
      239,
      83,
      9,
      86,
      15,
      89,
      193,
      90,
      182,
      91,
      225,
      91,
      209,
      121,
      135,
      102,
      156,
      103,
      182,
      103,
      76,
      107,
      179,
      108,
      107,
      112,
      194,
      115,
      141,
      121,
      190,
      121,
      60,
      122,
      135,
      123,
      177,
      130,
      219,
      130,
      4,
      131,
      119,
      131,
      239,
      131,
      211,
      131,
      102,
      135,
      178,
      138,
      41,
      86,
      168,
      140,
      230,
      143,
      78,
      144,
      30,
      151,
      138,
      134,
      196,
      79,
      232,
      92,
      17,
      98,
      89,
      114,
      59,
      117,
      229,
      129,
      189,
      130,
      254,
      134,
      192,
      140,
      197,
      150,
      19,
      153,
      213,
      153,
      203,
      78,
      26,
      79,
      227,
      137,
      222,
      86,
      74,
      88,
      202,
      88,
      251,
      94,
      235,
      95,
      42,
      96,
      148,
      96,
      98,
      96,
      208,
      97,
      18,
      98,
      208,
      98,
      57,
      101,
      65,
      155,
      102,
      102,
      176,
      104,
      119,
      109,
      112,
      112,
      76,
      117,
      134,
      118,
      117,
      125,
      165,
      130,
      249,
      135,
      139,
      149,
      142,
      150,
      157,
      140,
      241,
      81,
      190,
      82,
      22,
      89,
      179,
      84,
      179,
      91,
      22,
      93,
      104,
      97,
      130,
      105,
      175,
      109,
      141,
      120,
      203,
      132,
      87,
      136,
      114,
      138,
      167,
      147,
      184,
      154,
      108,
      109,
      168,
      153,
      217,
      134,
      163,
      87,
      255,
      103,
      206,
      134,
      14,
      146,
      131,
      82,
      135,
      86,
      4,
      84,
      211,
      94,
      225,
      98,
      185,
      100,
      60,
      104,
      56,
      104,
      187,
      107,
      114,
      115,
      186,
      120,
      107,
      122,
      154,
      137,
      210,
      137,
      107,
      141,
      3,
      143,
      237,
      144,
      163,
      149,
      148,
      150,
      105,
      151,
      102,
      91,
      179,
      92,
      125,
      105,
      77,
      152,
      78,
      152,
      155,
      99,
      32,
      123,
      43,
      106,
      127,
      106,
      182,
      104,
      13,
      156,
      95,
      111,
      114,
      82,
      157,
      85,
      112,
      96,
      236,
      98,
      59,
      109,
      7,
      110,
      209,
      110,
      91,
      132,
      16,
      137,
      68,
      143,
      20,
      78,
      57,
      156,
      246,
      83,
      27,
      105,
      58,
      106,
      132,
      151,
      42,
      104,
      92,
      81,
      195,
      122,
      178,
      132,
      220,
      145,
      140,
      147,
      91,
      86,
      40,
      157,
      34,
      104,
      5,
      131,
      49,
      132,
      165,
      124,
      8,
      82,
      197,
      130,
      230,
      116,
      126,
      78,
      131,
      79,
      160,
      81,
      210,
      91,
      10,
      82,
      216,
      82,
      231,
      82,
      251,
      93,
      154,
      85,
      42,
      88,
      230,
      89,
      140,
      91,
      152,
     
Download .txt
gitextract_rj_io85i/

├── .editorconfig
├── .github/
│   ├── FUNDING.yml
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   └── workflows/
│       └── deploy.yml
├── .gitignore
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── package.json
├── public/
│   ├── CNAME
│   ├── ads.txt
│   ├── decoder.js
│   ├── index.html
│   ├── manifest.json
│   ├── robots.txt
│   └── sitemap.xml
├── rollup.config.js
└── src/
    ├── css/
    │   └── styles.css
    └── js/
        ├── index.js
        ├── snackbar.js
        ├── utils.js
        └── vendor/
            └── qrscan.js
Download .txt
SYMBOL INDEX (15 symbols across 3 files)

FILE: public/decoder.js
  function zbarProcessImageData (line 24) | function zbarProcessImageData(imgData) {

FILE: src/js/index.js
  function setCameraOverlay (line 68) | function setCameraOverlay() {
  function createFrame (line 72) | function createFrame() {
  function openInBrowser (line 85) | function openInBrowser() {
  function scan (line 98) | function scan(forSelectedPhotos = false) {
  function hideDialog (line 124) | function hideDialog() {
  function selectFromPhoto (line 138) | function selectFromPhoto() {
  function showInfo (line 175) | function showInfo() {
  function closeInfoDialog (line 180) | function closeInfoDialog() {

FILE: src/js/vendor/qrscan.js
  function setPhotoSourceToScan (line 16) | function setPhotoSourceToScan(forSelectedPhotos) {
  function setCanvasProperties (line 50) | function setCanvasProperties() {
  function startCapture (line 55) | function startCapture(constraints) {
  function showErrorMsg (line 127) | function showErrorMsg() {
  function onDecoderMessage (line 143) | function onDecoderMessage(event) {
  function newDecoderFrame (line 159) | function newDecoderFrame() {
Condensed preview — 24 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (3,786K chars).
[
  {
    "path": ".editorconfig",
    "chars": 191,
    "preview": "root = true\n\n[*]\nindent_style = tab\nindent_size = 2\nend_of_line = lf\ncharset = utf-8\ntrim_trailing_whitespace = true\nins"
  },
  {
    "path": ".github/FUNDING.yml",
    "chars": 22,
    "preview": "github: [gokulkrishh]\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 834,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n**Describe the b"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 595,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n**Is your fea"
  },
  {
    "path": ".github/workflows/deploy.yml",
    "chars": 710,
    "preview": "name: github pages\n\non:\n  push:\n    branches:\n      - main\n\njobs:\n  deploy:\n    runs-on: ubuntu-20.04\n    steps:\n      -"
  },
  {
    "path": ".gitignore",
    "chars": 168,
    "preview": "logs\n*.log\nnpm-debug.log*\nnode_modules\n.DS_Store\ndist\n.env\npublic/bundle.js\npublic/bundle.css\npublic/service-worker.js\np"
  },
  {
    "path": ".prettierignore",
    "chars": 27,
    "preview": "*.json\n/dist\napp/decoder.js"
  },
  {
    "path": ".prettierrc",
    "chars": 65,
    "preview": "{\n\t\"printWidth\": 140,\n\t\"singleQuote\": true,\n\t\"parser\": \"babel\"\n}\n"
  },
  {
    "path": "LICENSE",
    "chars": 1077,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2016 code-kotis\n\nPermission is hereby granted, free of charge, to any person obtain"
  },
  {
    "path": "README.md",
    "chars": 924,
    "preview": "### <p align=\"center\"><img width=\"150px\" height=\"150px\" src=\"https://raw.githubusercontent.com/code-kotis/qr-code-scanne"
  },
  {
    "path": "package.json",
    "chars": 922,
    "preview": "{\n\t\"name\": \"qr-code-scanner\",\n\t\"description\": \"QR Code Scanner is the fastest and most user-friendly progressive web app"
  },
  {
    "path": "public/CNAME",
    "chars": 14,
    "preview": "qrcodescan.in\n"
  },
  {
    "path": "public/ads.txt",
    "chars": 58,
    "preview": "google.com, pub-8317178183177647, DIRECT, f08c47fec0942fa0"
  },
  {
    "path": "public/decoder.js",
    "chars": 3540781,
    "preview": "// The main barcode scanning processing function.\n// Compiled from zbar.sf.net using emscripten.\n//\n// Copyright (C) 201"
  },
  {
    "path": "public/index.html",
    "chars": 9247,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <title>QR Code Scanner</title>\n    <meta http-e"
  },
  {
    "path": "public/manifest.json",
    "chars": 953,
    "preview": "{\n  \"short_name\": \"QR Scanner\",\n  \"name\": \"QR Code Scanner\",\n  \"description\": \"Easily scan a QR code. This is a simple, "
  },
  {
    "path": "public/robots.txt",
    "chars": 164,
    "preview": "User-agent: Googlebot\nDisallow: /nogooglebot/\n\nUser-agent: *\nAllow: /\n\nSitemap: https://www.qrcodescan.in/sitemap.xml\nSi"
  },
  {
    "path": "public/sitemap.xml",
    "chars": 394,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" xmlns:news=\"http://ww"
  },
  {
    "path": "rollup.config.js",
    "chars": 1029,
    "preview": "import { terser } from 'rollup-plugin-terser';\nimport del from 'rollup-plugin-delete';\nimport { generateSW } from 'rollu"
  },
  {
    "path": "src/css/styles.css",
    "chars": 7843,
    "preview": "html,\nbody,\np,\nol,\nul,\nli,\ndl,\ndt,\ndd,\nblockquote,\nfigure,\nfieldset,\nlegend,\ntextarea,\npre,\niframe,\nhr,\nh1,\nh2,\nh3,\nh4,\n"
  },
  {
    "path": "src/js/index.js",
    "chars": 6148,
    "preview": "import QRReader from './vendor/qrscan.js';\nimport snackbar from './snackbar.js';\nimport { isURL, hasProtocolInUrl } from"
  },
  {
    "path": "src/js/snackbar.js",
    "chars": 547,
    "preview": "var snackbar = {};\nvar snackBarElement = document.querySelector('.app__snackbar');\nvar snackbarMsg = null;\n\n//To show no"
  },
  {
    "path": "src/js/utils.js",
    "chars": 694,
    "preview": "export const isURL = (url = '') => {\n  if (!url || typeof url !== 'string') {\n    return false;\n  }\n\n  const protocol = "
  },
  {
    "path": "src/js/vendor/qrscan.js",
    "chars": 4598,
    "preview": "import snackbar from '../snackbar.js';\n\nvar QRReader = {};\n\nQRReader.active = false;\nQRReader.webcam = null;\nQRReader.ca"
  }
]

About this extraction

This page contains the full source code of the gokulkrishh/qrcodescan.in GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 24 files (3.4 MB), approximately 895.5k tokens, and a symbol index with 15 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!