packages/miew-cli/dist/miew-cli.min.js.map

Summary

Maintainability
Test Coverage
{"version":3,"file":"miew-cli.min.js","sources":["../../../node_modules/@babel/runtime/helpers/typeof.js","../../../node_modules/@babel/runtime/helpers/classCallCheck.js","../../../node_modules/@babel/runtime/helpers/createClass.js","../src/MiewCLIParser.js","../src/MiewCLIHelp.js","../src/EventDispatcher.js","../src/logger.js","../../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../../node_modules/@babel/runtime/helpers/inherits.js","../../../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../../../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../../../node_modules/@babel/runtime/helpers/isNativeFunction.js","../../../node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","../../../node_modules/@babel/runtime/helpers/construct.js","../../../node_modules/@babel/runtime/helpers/wrapNativeSuper.js","../../../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../../../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../../../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../../../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../../../node_modules/@babel/runtime/helpers/nonIterableRest.js","../../../node_modules/@babel/runtime/helpers/slicedToArray.js","../src/utils.js","../src/Miew-cli.js"],"sourcesContent":["function _typeof(obj) {\n  \"@babel/helpers - typeof\";\n\n  return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n    return typeof obj;\n  } : function (obj) {\n    return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n  }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\n\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n}\n\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperties(target, props) {\n  for (var i = 0; i < props.length; i++) {\n    var descriptor = props[i];\n    descriptor.enumerable = descriptor.enumerable || false;\n    descriptor.configurable = true;\n    if (\"value\" in descriptor) descriptor.writable = true;\n    Object.defineProperty(target, descriptor.key, descriptor);\n  }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n  if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n  if (staticProps) _defineProperties(Constructor, staticProps);\n  Object.defineProperty(Constructor, \"prototype\", {\n    writable: false\n  });\n  return Constructor;\n}\n\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/* eslint-disable */\r\n// DO NOT EDIT! Automatically generated from .jison\r\n/* parser generated by jison 0.4.18 */\r\n/*\r\n  Returns a Parser object of the following structure:\r\n\r\n  Parser: {\r\n    yy: {}\r\n  }\r\n\r\n  Parser.prototype: {\r\n    yy: {},\r\n    trace: function(),\r\n    symbols_: {associative list: name ==> number},\r\n    terminals_: {associative list: number ==> name},\r\n    productions_: [...],\r\n    performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$),\r\n    table: [...],\r\n    defaultActions: {...},\r\n    parseError: function(str, hash),\r\n    parse: function(input),\r\n\r\n    lexer: {\r\n        EOF: 1,\r\n        parseError: function(str, hash),\r\n        setInput: function(input),\r\n        input: function(),\r\n        unput: function(str),\r\n        more: function(),\r\n        less: function(n),\r\n        pastInput: function(),\r\n        upcomingInput: function(),\r\n        showPosition: function(),\r\n        test_match: function(regex_match_array, rule_index),\r\n        next: function(),\r\n        lex: function(),\r\n        begin: function(condition),\r\n        popState: function(),\r\n        _currentRules: function(),\r\n        topState: function(),\r\n        pushState: function(condition),\r\n\r\n        options: {\r\n            ranges: boolean           (optional: true ==> token location info will include a .range[] member)\r\n            flex: boolean             (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match)\r\n            backtrack_lexer: boolean  (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code)\r\n        },\r\n\r\n        performAction: function(yy, yy_, $avoiding_name_collisions, YY_START),\r\n        rules: [...],\r\n        conditions: {associative list: name ==> set},\r\n    }\r\n  }\r\n\r\n\r\n  token location info (@$, _$, etc.): {\r\n    first_line: n,\r\n    last_line: n,\r\n    first_column: n,\r\n    last_column: n,\r\n    range: [start_number, end_number]       (where the numbers are indexes into the input string, regular zero-based)\r\n  }\r\n\r\n\r\n  the parseError function receives a 'hash' object with these members for lexer and parser errors: {\r\n    text:        (matched text)\r\n    token:       (the produced terminal token, if any)\r\n    line:        (yylineno)\r\n  }\r\n  while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: {\r\n    loc:         (yylloc)\r\n    expected:    (string describing the set of expected tokens)\r\n    recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error)\r\n  }\r\n*/\r\nvar parser = (function () {\r\n  var o = function (k, v, o, l) {\r\n      for (o = o || {}, l = k.length; l--; o[k[l]] = v);\r\n      return o\r\n    },\r\n    $V0 = [1, 60],\r\n    $V1 = [1, 62],\r\n    $V2 = [1, 63],\r\n    $V3 = [1, 65],\r\n    $V4 = [1, 66],\r\n    $V5 = [1, 67],\r\n    $V6 = [1, 68],\r\n    $V7 = [1, 69],\r\n    $V8 = [1, 80],\r\n    $V9 = [1, 72],\r\n    $Va = [1, 73],\r\n    $Vb = [1, 74],\r\n    $Vc = [1, 75],\r\n    $Vd = [1, 99],\r\n    $Ve = [1, 76],\r\n    $Vf = [1, 100],\r\n    $Vg = [1, 79],\r\n    $Vh = [1, 51],\r\n    $Vi = [1, 81],\r\n    $Vj = [1, 82],\r\n    $Vk = [1, 84],\r\n    $Vl = [1, 83],\r\n    $Vm = [1, 85],\r\n    $Vn = [1, 96],\r\n    $Vo = [1, 97],\r\n    $Vp = [1, 98],\r\n    $Vq = [1, 86],\r\n    $Vr = [1, 87],\r\n    $Vs = [1, 64],\r\n    $Vt = [1, 70],\r\n    $Vu = [1, 71],\r\n    $Vv = [1, 77],\r\n    $Vw = [1, 78],\r\n    $Vx = [1, 53],\r\n    $Vy = [1, 54],\r\n    $Vz = [1, 55],\r\n    $VA = [1, 61],\r\n    $VB = [1, 88],\r\n    $VC = [1, 89],\r\n    $VD = [1, 90],\r\n    $VE = [1, 91],\r\n    $VF = [1, 92],\r\n    $VG = [1, 93],\r\n    $VH = [1, 94],\r\n    $VI = [1, 95],\r\n    $VJ = [1, 101],\r\n    $VK = [1, 102],\r\n    $VL = [1, 103],\r\n    $VM = [1, 104],\r\n    $VN = [1, 105],\r\n    $VO = [1, 56],\r\n    $VP = [1, 57],\r\n    $VQ = [1, 58],\r\n    $VR = [1, 59],\r\n    $VS = [1, 115],\r\n    $VT = [1, 111],\r\n    $VU = [1, 114],\r\n    $VV = [1, 112],\r\n    $VW = [1, 113],\r\n    $VX = [1, 118],\r\n    $VY = [1, 117],\r\n    $VZ = [1, 134],\r\n    $V_ = [1, 149],\r\n    $V$ = [1, 150],\r\n    $V01 = [1, 157],\r\n    $V11 = [\r\n      5, 6, 7, 9, 13, 14, 15, 17, 18, 19, 20, 23, 25, 26, 27, 30, 33, 34, 35,\r\n      37, 38, 41, 43, 45, 46, 49, 52, 54, 55, 56, 58, 59, 62, 64, 65, 66, 70,\r\n      72, 74, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,\r\n      96, 97, 98, 99, 101\r\n    ],\r\n    $V21 = [\r\n      5, 6, 7, 9, 13, 14, 15, 17, 18, 19, 20, 23, 25, 26, 27, 30, 33, 34, 35,\r\n      37, 38, 41, 43, 45, 46, 49, 52, 54, 55, 56, 58, 59, 62, 64, 65, 66, 70,\r\n      71, 72, 74, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,\r\n      95, 96, 97, 98, 99, 101\r\n    ],\r\n    $V31 = [\r\n      5, 6, 7, 9, 13, 15, 17, 18, 19, 20, 23, 25, 26, 27, 30, 33, 34, 37, 38,\r\n      41, 43, 45, 46, 49, 52, 54, 55, 56, 58, 59, 62, 64, 65, 66, 70, 72, 82,\r\n      83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95\r\n    ],\r\n    $V41 = [5, 70, 72],\r\n    $V51 = [5, 74],\r\n    $V61 = [71, 101]\r\n  var parser = {\r\n    trace: function trace() {},\r\n    yy: {},\r\n    symbols_: {\r\n      error: 2,\r\n      Program: 3,\r\n      Command: 4,\r\n      EOF: 5,\r\n      RESET: 6,\r\n      BUILD: 7,\r\n      ALL: 8,\r\n      HELP: 9,\r\n      Path: 10,\r\n      MOTM: 11,\r\n      OneArgCommand: 12,\r\n      GET: 13,\r\n      STRING: 14,\r\n      SET: 15,\r\n      Value: 16,\r\n      SET_SAVE: 17,\r\n      SET_RESTORE: 18,\r\n      SET_RESET: 19,\r\n      PRESET: 20,\r\n      AddRepresentation: 21,\r\n      EditRepresentation: 22,\r\n      REMOVE: 23,\r\n      RepresentationReference: 24,\r\n      HIDE: 25,\r\n      SHOW: 26,\r\n      LIST: 27,\r\n      EXPAND_KEY: 28,\r\n      SELECTOR_KEY: 29,\r\n      SELECT: 30,\r\n      AS: 31,\r\n      WordAll: 32,\r\n      SELECTOR: 33,\r\n      WITHIN: 34,\r\n      NUMBER: 35,\r\n      OF: 36,\r\n      MATERIAL: 37,\r\n      IDENTIFIER: 38,\r\n      ModeCMD: 39,\r\n      ColorCMD: 40,\r\n      VIEW: 41,\r\n      BASE_64: 42,\r\n      UNIT: 43,\r\n      DSSP: 44,\r\n      SCALE: 45,\r\n      ROTATE: 46,\r\n      AxesList: 47,\r\n      TRANSLATE: 48,\r\n      CENTER: 49,\r\n      GetURLBranch: 50,\r\n      Screenshot: 51,\r\n      LINE: 52,\r\n      ArgList: 53,\r\n      LISTOBJ: 54,\r\n      REMOVEOBJ: 55,\r\n      URL: 56,\r\n      VIEW_KEY: 57,\r\n      SCREENSHOT: 58,\r\n      LOAD: 59,\r\n      Url: 60,\r\n      FILE_KEY: 61,\r\n      ADD: 62,\r\n      Description: 63,\r\n      REP: 64,\r\n      MODE: 65,\r\n      COLOR: 66,\r\n      Descriptor: 67,\r\n      RepresentationOwnProperty: 68,\r\n      RepresentationOwnPropertyOpts: 69,\r\n      DESC_KEY: 70,\r\n      '=': 71,\r\n      DESC_KEY_OPTS: 72,\r\n      AxesArg: 73,\r\n      DESC_KEY_AXES: 74,\r\n      Arg: 75,\r\n      PathWoDescKey: 76,\r\n      HEX: 77,\r\n      BOOL: 78,\r\n      Word: 79,\r\n      CommandSetWoDESC_KEY: 80,\r\n      DescKeys: 81,\r\n      CLEAR: 82,\r\n      FILE_LIST: 83,\r\n      FILE_REGISTER: 84,\r\n      FILE_DELETE: 85,\r\n      PRESET_ADD: 86,\r\n      PRESET_DELETE: 87,\r\n      PRESET_UPDATE: 88,\r\n      PRESET_RENAME: 89,\r\n      PRESET_OPEN: 90,\r\n      CREATE_SCENARIO: 91,\r\n      RESET_SCENARIO: 92,\r\n      DELETE_SCENARIO: 93,\r\n      ADD_SCENARIO_ITEM: 94,\r\n      LIST_SCENARIO: 95,\r\n      PDB_KEY: 96,\r\n      DELAY_KEY: 97,\r\n      PRST_KEY: 98,\r\n      DESCRIPTION_KEY: 99,\r\n      CommandSet: 100,\r\n      '.': 101,\r\n      PresetPath: 102,\r\n      '/': 103,\r\n      HexOrNumber: 104,\r\n      $accept: 0,\r\n      $end: 1\r\n    },\r\n    terminals_: {\r\n      2: 'error',\r\n      5: 'EOF',\r\n      6: 'RESET',\r\n      7: 'BUILD',\r\n      8: 'ALL',\r\n      9: 'HELP',\r\n      11: 'MOTM',\r\n      13: 'GET',\r\n      14: 'STRING',\r\n      15: 'SET',\r\n      17: 'SET_SAVE',\r\n      18: 'SET_RESTORE',\r\n      19: 'SET_RESET',\r\n      20: 'PRESET',\r\n      23: 'REMOVE',\r\n      25: 'HIDE',\r\n      26: 'SHOW',\r\n      27: 'LIST',\r\n      28: 'EXPAND_KEY',\r\n      29: 'SELECTOR_KEY',\r\n      30: 'SELECT',\r\n      31: 'AS',\r\n      33: 'SELECTOR',\r\n      34: 'WITHIN',\r\n      35: 'NUMBER',\r\n      36: 'OF',\r\n      37: 'MATERIAL',\r\n      38: 'IDENTIFIER',\r\n      41: 'VIEW',\r\n      42: 'BASE_64',\r\n      43: 'UNIT',\r\n      44: 'DSSP',\r\n      45: 'SCALE',\r\n      46: 'ROTATE',\r\n      48: 'TRANSLATE',\r\n      49: 'CENTER',\r\n      52: 'LINE',\r\n      54: 'LISTOBJ',\r\n      55: 'REMOVEOBJ',\r\n      56: 'URL',\r\n      57: 'VIEW_KEY',\r\n      58: 'SCREENSHOT',\r\n      59: 'LOAD',\r\n      61: 'FILE_KEY',\r\n      62: 'ADD',\r\n      64: 'REP',\r\n      65: 'MODE',\r\n      66: 'COLOR',\r\n      70: 'DESC_KEY',\r\n      71: '=',\r\n      72: 'DESC_KEY_OPTS',\r\n      74: 'DESC_KEY_AXES',\r\n      77: 'HEX',\r\n      78: 'BOOL',\r\n      82: 'CLEAR',\r\n      83: 'FILE_LIST',\r\n      84: 'FILE_REGISTER',\r\n      85: 'FILE_DELETE',\r\n      86: 'PRESET_ADD',\r\n      87: 'PRESET_DELETE',\r\n      88: 'PRESET_UPDATE',\r\n      89: 'PRESET_RENAME',\r\n      90: 'PRESET_OPEN',\r\n      91: 'CREATE_SCENARIO',\r\n      92: 'RESET_SCENARIO',\r\n      93: 'DELETE_SCENARIO',\r\n      94: 'ADD_SCENARIO_ITEM',\r\n      95: 'LIST_SCENARIO',\r\n      96: 'PDB_KEY',\r\n      97: 'DELAY_KEY',\r\n      98: 'PRST_KEY',\r\n      99: 'DESCRIPTION_KEY',\r\n      101: '.',\r\n      103: '/'\r\n    },\r\n    productions_: [\r\n      0,\r\n      [3, 2],\r\n      [3, 1],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 3],\r\n      [4, 3],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 4],\r\n      [4, 2],\r\n      [4, 6],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 2],\r\n      [4, 1],\r\n      [4, 1],\r\n      [4, 3],\r\n      [4, 3],\r\n      [4, 4],\r\n      [4, 4],\r\n      [4, 1],\r\n      [4, 2],\r\n      [50, 1],\r\n      [50, 2],\r\n      [50, 2],\r\n      [50, 3],\r\n      [50, 3],\r\n      [51, 1],\r\n      [51, 2],\r\n      [51, 3],\r\n      [12, 2],\r\n      [12, 2],\r\n      [12, 2],\r\n      [21, 1],\r\n      [21, 2],\r\n      [21, 2],\r\n      [21, 3],\r\n      [22, 2],\r\n      [22, 3],\r\n      [39, 2],\r\n      [39, 3],\r\n      [40, 2],\r\n      [40, 3],\r\n      [24, 1],\r\n      [24, 1],\r\n      [63, 1],\r\n      [63, 2],\r\n      [63, 3],\r\n      [63, 4],\r\n      [67, 1],\r\n      [67, 1],\r\n      [67, 2],\r\n      [68, 3],\r\n      [69, 3],\r\n      [47, 1],\r\n      [47, 2],\r\n      [73, 2],\r\n      [53, 1],\r\n      [53, 2],\r\n      [75, 3],\r\n      [16, 1],\r\n      [16, 1],\r\n      [16, 1],\r\n      [16, 1],\r\n      [16, 1],\r\n      [79, 1],\r\n      [79, 1],\r\n      [32, 1],\r\n      [32, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [80, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [81, 1],\r\n      [100, 1],\r\n      [100, 1],\r\n      [76, 1],\r\n      [76, 3],\r\n      [76, 3],\r\n      [10, 1],\r\n      [10, 1],\r\n      [10, 3],\r\n      [10, 3],\r\n      [10, 3],\r\n      [60, 1],\r\n      [102, 1],\r\n      [102, 3],\r\n      [104, 1],\r\n      [104, 1]\r\n    ],\r\n    performAction: function anonymous(\r\n      yytext,\r\n      yyleng,\r\n      yylineno,\r\n      yy,\r\n      yystate /* action[1] */,\r\n      $$ /* vstack */,\r\n      _$ /* lstack */\r\n    ) {\r\n      /* this == yyval */\r\n\r\n      var $0 = $$.length - 1\r\n      switch (yystate) {\r\n        case 1:\r\n          return $$[$0 - 1]\r\n          break\r\n        case 3:\r\n          this.$ = yy.miew.reset(false)\r\n          yy.ClearContext()\r\n          yy.miew.resetReps('empty')\r\n          break\r\n        case 4:\r\n          this.$ = yy.miew.rebuild()\r\n          break\r\n        case 5:\r\n          this.$ = yy.miew.rebuildAll()\r\n          yy.miew.rebuild()\r\n          break\r\n        case 6:\r\n          this.$ = yy.echo(yy.utils.help().toString())\r\n          break\r\n        case 7:\r\n          this.$ = yy.echo(yy.utils.help($$[$0]).toString())\r\n          break\r\n        case 8:\r\n          this.$ = yy.miew.motm()\r\n          break\r\n        case 10:\r\n        case 11:\r\n          this.$ = yy.utils.propagateProp($$[$0])\r\n          yy.echo(yy.miew.get($$[$0]).toString())\r\n          break\r\n        case 12:\r\n        case 13:\r\n          this.$ = yy.miew.set(\r\n            $$[$0 - 1],\r\n            yy.utils.propagateProp($$[$0 - 1], $$[$0])\r\n          )\r\n          break\r\n        case 14:\r\n          this.$ = yy.miew.saveSettings()\r\n          break\r\n        case 15:\r\n          this.$ = yy.miew.restoreSettings()\r\n          break\r\n        case 16:\r\n          this.$ = yy.miew.resetSettings()\r\n          break\r\n        case 17:\r\n          this.$ = yy.miew.resetReps()\r\n          break\r\n        case 18:\r\n          this.$ = yy.miew.applyPreset($$[$0])\r\n          break\r\n        case 21:\r\n          this.$ = yy.miew.repRemove($$[$0])\r\n          yy.representations.remove($$[$0])\r\n          break\r\n        case 22:\r\n          this.$ = yy.miew.repHide($$[$0])\r\n          break\r\n        case 23:\r\n          this.$ = yy.miew.repHide($$[$0], false)\r\n          break\r\n        case 24:\r\n          this.$ = yy.echo(\r\n            yy.utils.listRep(yy.miew, yy.representations, $$[$0], '-e')\r\n          )\r\n          break\r\n        case 25:\r\n          this.$ = yy.echo(yy.utils.list(yy.miew, yy.representations))\r\n          break\r\n        case 26:\r\n          this.$ = yy.echo(yy.utils.list(yy.miew, yy.representations, $$[$0]))\r\n          break\r\n        case 27:\r\n          this.$ = yy.echo(yy.utils.listSelector(yy.miew, yy.Context))\r\n          break\r\n        case 28:\r\n          this.$ = yy.miew.select(\r\n            yy.utils.checkArg($$[$0 - 1].toLowerCase(), $$[$0], true)\r\n          )\r\n          break\r\n        case 29:\r\n          this.$ = yy.Context[$$[$0].toLowerCase()] = yy.utils.checkArg(\r\n            $$[$0 - 3].toLowerCase(),\r\n            $$[$0 - 2],\r\n            true\r\n          )\r\n          yy.miew.select(yy.Context[$$[$0].toLowerCase()])\r\n          break\r\n        case 30:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            selector: yy.utils.checkArg($$[$0 - 1].toLowerCase(), $$[$0])\r\n          })\r\n          break\r\n        case 31:\r\n          this.$ = yy.Context[$$[$0].toLowerCase()] = yy.miew.within(\r\n            yy.utils.checkArg('select', $$[$0 - 2], true),\r\n            Number($$[$0 - 4])\r\n          )\r\n          break\r\n        case 32:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            material: yy.utils.checkArg(\r\n              $$[$0 - 1].toLowerCase(),\r\n              $$[$0].toUpperCase()\r\n            )\r\n          })\r\n          break\r\n        case 35:\r\n          this.$ = yy.echo(yy.miew.view())\r\n          break\r\n        case 36:\r\n        case 37:\r\n          this.$ = yy.miew.view($$[$0])\r\n          break\r\n        case 38:\r\n          this.$ = yy.echo(yy.miew.changeUnit())\r\n          break\r\n        case 39:\r\n          this.$ = yy.echo(yy.miew.changeUnit($$[$0]))\r\n          break\r\n        case 40:\r\n          this.$ = yy.miew.dssp()\r\n          break\r\n        case 41:\r\n          this.$ = yy.miew.scale($$[$0])\r\n          break\r\n        case 42:\r\n          for (var i = 0, n = $$[$0].length; i < n; i++) {\r\n            yy.miew.rotate(\r\n              ($$[$0][i]['x'] * Math.PI) / 180.0,\r\n              ($$[$0][i]['y'] * Math.PI) / 180.0,\r\n              ($$[$0][i]['z'] * Math.PI) / 180.0\r\n            )\r\n          }\r\n          break\r\n        case 43:\r\n          for (var i = 0, n = $$[$0].length; i < n; i++) {\r\n            yy.miew.translate(\r\n              $$[$0][i]['x'] || 0,\r\n              $$[$0][i]['y'] || 0,\r\n              $$[$0][i]['z'] || 0\r\n            )\r\n          }\r\n          break\r\n        case 44:\r\n          this.$ = yy.miew.center()\r\n          break\r\n        case 45:\r\n          this.$ = yy.miew.center($$[$0])\r\n          break\r\n        case 48:\r\n        case 49:\r\n          this.$ = yy.miew.addObject(\r\n            { type: 'line', params: [$$[$0 - 1], $$[$0]] },\r\n            true\r\n          )\r\n          break\r\n        case 50:\r\n        case 51:\r\n          this.$ = yy.miew.addObject(\r\n            {\r\n              type: 'line',\r\n              params: [$$[$0 - 2], $$[$0 - 1]],\r\n              opts: $$[$0].toJSO(yy.utils, 'objects', 'line')\r\n            },\r\n            true\r\n          )\r\n          break\r\n        case 52:\r\n          this.$ = yy.echo(yy.utils.listObjs(yy.miew))\r\n          break\r\n        case 53:\r\n          this.$ = yy.miew.removeObject($$[$0])\r\n          break\r\n        case 54:\r\n          this.$ = yy.echo(yy.miew.getURL({ view: false, settings: false }))\r\n          break\r\n        case 55:\r\n          this.$ = yy.echo(yy.miew.getURL({ view: false, settings: true }))\r\n          break\r\n        case 56:\r\n          this.$ = yy.echo(yy.miew.getURL({ view: true, settings: false }))\r\n          break\r\n        case 57:\r\n        case 58:\r\n          this.$ = yy.echo(yy.miew.getURL({ view: true, settings: true }))\r\n          break\r\n        case 59:\r\n          this.$ = yy.miew.screenshotSave()\r\n          break\r\n        case 60:\r\n          this.$ = yy.miew.screenshotSave('', Number($$[$0]))\r\n          break\r\n        case 61:\r\n          this.$ = yy.miew.screenshotSave(\r\n            '',\r\n            Number($$[$0 - 1]),\r\n            Number($$[$0])\r\n          )\r\n          break\r\n        case 62:\r\n        case 63:\r\n        case 64:\r\n          this.$ = yy.utils.load(yy.miew, $$[$0])\r\n          yy.representations.clear()\r\n          break\r\n        case 65:\r\n          this.$ = yy.echo(yy.representations.add(yy.miew.repAdd()))\r\n          break\r\n        case 66:\r\n          this.$ = yy.echo(yy.representations.add($$[$0], yy.miew.repAdd()))\r\n          break\r\n        case 67:\r\n          this.$ = yy.echo(yy.representations.add(yy.miew.repAdd($$[$0])))\r\n          break\r\n        case 68:\r\n          this.$ = yy.echo(\r\n            yy.representations.add($$[$0 - 1], yy.miew.repAdd($$[$0]))\r\n          )\r\n          break\r\n        case 69:\r\n          this.$ = yy.miew.rep($$[$0])\r\n          yy.miew.repCurrent($$[$0])\r\n          break\r\n        case 70:\r\n          this.$ = yy.miew.rep($$[$0 - 1], $$[$0])\r\n          yy.miew.repCurrent($$[$0 - 1])\r\n          break\r\n        case 71:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            mode: yy.utils.checkArg(\r\n              $$[$0 - 1].toLowerCase(),\r\n              $$[$0].toUpperCase()\r\n            )\r\n          })\r\n          break\r\n        case 72:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            mode: new Array(\r\n              yy.utils.checkArg(\r\n                $$[$0 - 2].toLowerCase(),\r\n                $$[$0 - 1].toUpperCase()\r\n              ),\r\n              $$[$0].toJSO(yy.utils, $$[$0 - 2], $$[$0 - 1].toUpperCase())\r\n            )\r\n          })\r\n          break\r\n        case 73:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            colorer: yy.utils.checkArg(\r\n              $$[$0 - 1].toLowerCase(),\r\n              $$[$0].toUpperCase()\r\n            )\r\n          })\r\n          break\r\n        case 74:\r\n          this.$ = yy.miew.rep(yy.miew.repCurrent(), {\r\n            colorer: new Array(\r\n              yy.utils.checkArg(\r\n                $$[$0 - 2].toLowerCase(),\r\n                $$[$0 - 1].toUpperCase()\r\n              ),\r\n              $$[$0].toJSO(yy.utils, $$[$0 - 2], $$[$0 - 1].toUpperCase())\r\n            )\r\n          })\r\n          break\r\n        case 75:\r\n          this.$ = Number(yy.representations.get($$[$0]))\r\n          break\r\n        case 76:\r\n        case 92:\r\n          this.$ = Number($$[$0])\r\n          break\r\n        case 77:\r\n          this.$ = $$[$0]\r\n          break\r\n        case 78:\r\n          this.$ = yy.assign($$[$0 - 1], $$[$0])\r\n          break\r\n        case 79:\r\n          this.$ = yy.assign($$[$0 - 2], $$[$0 - 1], $$[$0])\r\n          break\r\n        case 80:\r\n          this.$ = yy.assign($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0])\r\n          break\r\n        case 81:\r\n        case 82:\r\n          this.$ = yy.CreateObjectPair($$[$0].key, $$[$0].val)\r\n          break\r\n        case 83:\r\n          this.$ = yy.CreateObjectPair(\r\n            $$[$0 - 1].key,\r\n            new Array(\r\n              $$[$0 - 1].val,\r\n              $$[$0].toJSO(yy.utils, $$[$0 - 1].key, $$[$0 - 1].val)\r\n            )\r\n          )\r\n          break\r\n        case 84:\r\n        case 85:\r\n          this.$ = Object.create({\r\n            key: yy.keyRemap($$[$0 - 2]),\r\n            val: yy.utils.checkArg($$[$0 - 2], $$[$0])\r\n          })\r\n          break\r\n        case 86:\r\n          this.$ = [$$[$0]]\r\n          break\r\n        case 87:\r\n          this.$ = $$[$0 - 1].concat($$[$0])\r\n          break\r\n        case 88:\r\n          this.$ = yy.CreateObjectPair($$[$0 - 1].toLowerCase(), Number($$[$0]))\r\n          break\r\n        case 89:\r\n          this.$ = new yy.ArgList($$[$0])\r\n          break\r\n        case 90:\r\n          this.$ = $$[$0 - 1].append($$[$0])\r\n          break\r\n        case 91:\r\n          this.$ = new yy.Arg($$[$0 - 2], $$[$0])\r\n          break\r\n        case 93:\r\n          this.$ = parseInt($$[$0])\r\n          break\r\n        case 94:\r\n          this.$ = JSON.parse($$[$0])\r\n          break\r\n        case 95:\r\n        case 96:\r\n          this.$ = String($$[$0])\r\n          break\r\n        case 157:\r\n        case 158:\r\n        case 161:\r\n        case 162:\r\n        case 163:\r\n          this.$ = $$[$0 - 2] + $$[$0 - 1] + $$[$0] //cause of could be color word in path;\r\n          break\r\n        case 166:\r\n          this.$ = $$[$0 - 2] = $$[$0 - 2] + $$[$0 - 1] + $$[$0]\r\n          break\r\n      }\r\n    },\r\n    table: [\r\n      {\r\n        3: 1,\r\n        4: 2,\r\n        5: [1, 3],\r\n        6: [1, 4],\r\n        7: [1, 5],\r\n        9: [1, 6],\r\n        11: [1, 7],\r\n        12: 8,\r\n        13: [1, 9],\r\n        15: [1, 10],\r\n        17: [1, 11],\r\n        18: [1, 12],\r\n        19: [1, 13],\r\n        20: [1, 14],\r\n        21: 15,\r\n        22: 16,\r\n        23: [1, 17],\r\n        25: [1, 18],\r\n        26: [1, 19],\r\n        27: [1, 20],\r\n        30: [1, 21],\r\n        33: [1, 22],\r\n        34: [1, 23],\r\n        37: [1, 24],\r\n        39: 25,\r\n        40: 26,\r\n        41: [1, 27],\r\n        43: [1, 28],\r\n        44: [1, 29],\r\n        45: [1, 30],\r\n        46: [1, 31],\r\n        48: [1, 32],\r\n        49: [1, 33],\r\n        50: 34,\r\n        51: 35,\r\n        52: [1, 36],\r\n        54: [1, 37],\r\n        55: [1, 38],\r\n        56: [1, 44],\r\n        58: [1, 45],\r\n        59: [1, 39],\r\n        62: [1, 40],\r\n        64: [1, 41],\r\n        65: [1, 42],\r\n        66: [1, 43]\r\n      },\r\n      { 1: [3] },\r\n      { 5: [1, 46] },\r\n      { 1: [2, 2] },\r\n      { 5: [2, 3] },\r\n      { 5: [2, 4], 8: [1, 47] },\r\n      {\r\n        5: [2, 6],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        10: 48,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 49,\r\n        80: 52,\r\n        81: 50,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 5: [2, 8] },\r\n      { 5: [2, 9] },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        10: 106,\r\n        13: $V3,\r\n        14: [1, 107],\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 49,\r\n        80: 52,\r\n        81: 50,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        10: 108,\r\n        13: $V3,\r\n        14: [1, 109],\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 49,\r\n        80: 52,\r\n        81: 50,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 5: [2, 14] },\r\n      { 5: [2, 15] },\r\n      { 5: [2, 16] },\r\n      { 5: [2, 17], 14: $VS, 16: 110, 35: $VT, 38: $VU, 77: $VV, 78: $VW },\r\n      { 5: [2, 19] },\r\n      { 5: [2, 20] },\r\n      { 24: 116, 35: $VX, 38: $VY },\r\n      { 24: 119, 35: $VX, 38: $VY },\r\n      { 24: 120, 35: $VX, 38: $VY },\r\n      { 5: [2, 25], 24: 121, 28: [1, 122], 29: [1, 123], 35: $VX, 38: $VY },\r\n      { 14: [1, 124] },\r\n      { 14: [1, 125] },\r\n      { 35: [1, 126] },\r\n      { 38: [1, 127] },\r\n      { 5: [2, 33] },\r\n      { 5: [2, 34] },\r\n      { 5: [2, 35], 14: [1, 128], 42: [1, 129] },\r\n      { 5: [2, 38], 35: [1, 130] },\r\n      { 5: [2, 40] },\r\n      { 35: [1, 131] },\r\n      { 47: 132, 73: 133, 74: $VZ },\r\n      { 47: 135, 73: 133, 74: $VZ },\r\n      { 5: [2, 44], 14: [1, 136] },\r\n      { 5: [2, 46] },\r\n      { 5: [2, 47] },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        10: 138,\r\n        13: $V3,\r\n        14: [1, 137],\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 49,\r\n        80: 52,\r\n        81: 50,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 5: [2, 52] },\r\n      { 35: [1, 139] },\r\n      { 14: [1, 143], 38: [1, 141], 60: 140, 61: [1, 142] },\r\n      {\r\n        5: [2, 65],\r\n        38: [1, 144],\r\n        63: 145,\r\n        67: 146,\r\n        68: 147,\r\n        69: 148,\r\n        70: $V_,\r\n        72: $V$\r\n      },\r\n      { 24: 151, 35: $VX, 38: $VY },\r\n      { 38: [1, 152] },\r\n      { 38: [1, 153] },\r\n      { 5: [2, 54], 29: [1, 154], 57: [1, 155] },\r\n      { 5: [2, 59], 35: [1, 156] },\r\n      { 1: [2, 1] },\r\n      { 5: [2, 5] },\r\n      { 5: [2, 7], 101: $V01 },\r\n      o($V11, [2, 159]),\r\n      o($V11, [2, 160]),\r\n      o($V21, [2, 97]),\r\n      o($V21, [2, 98]),\r\n      o($V11, [2, 147]),\r\n      o($V11, [2, 148]),\r\n      o($V11, [2, 149]),\r\n      o($V11, [2, 150]),\r\n      o($V11, [2, 151]),\r\n      o($V11, [2, 152]),\r\n      o($V11, [2, 153]),\r\n      o($V21, [2, 101]),\r\n      o($V21, [2, 102]),\r\n      o($V21, [2, 103]),\r\n      o($V21, [2, 104]),\r\n      o($V21, [2, 105]),\r\n      o($V21, [2, 106]),\r\n      o($V21, [2, 107]),\r\n      o($V21, [2, 108]),\r\n      o($V21, [2, 109]),\r\n      o($V21, [2, 110]),\r\n      o($V21, [2, 111]),\r\n      o($V21, [2, 112]),\r\n      o($V21, [2, 113]),\r\n      o($V21, [2, 114]),\r\n      o($V21, [2, 115]),\r\n      o($V21, [2, 116]),\r\n      o($V21, [2, 117]),\r\n      o($V21, [2, 118]),\r\n      o($V21, [2, 119]),\r\n      o($V21, [2, 120]),\r\n      o($V21, [2, 121]),\r\n      o($V21, [2, 122]),\r\n      o($V21, [2, 123]),\r\n      o($V21, [2, 124]),\r\n      o($V21, [2, 125]),\r\n      o($V21, [2, 126]),\r\n      o($V21, [2, 127]),\r\n      o($V21, [2, 128]),\r\n      o($V21, [2, 129]),\r\n      o($V21, [2, 130]),\r\n      o($V21, [2, 131]),\r\n      o($V21, [2, 132]),\r\n      o($V21, [2, 133]),\r\n      o($V21, [2, 134]),\r\n      o($V21, [2, 135]),\r\n      o($V21, [2, 136]),\r\n      o($V21, [2, 137]),\r\n      o($V21, [2, 138]),\r\n      o($V21, [2, 139]),\r\n      o($V21, [2, 140]),\r\n      o($V21, [2, 141]),\r\n      o($V21, [2, 142]),\r\n      o($V21, [2, 143]),\r\n      o($V21, [2, 144]),\r\n      o($V21, [2, 145]),\r\n      o($V21, [2, 146]),\r\n      { 5: [2, 10], 101: $V01 },\r\n      { 5: [2, 11] },\r\n      { 14: $VS, 16: 158, 35: $VT, 38: $VU, 77: $VV, 78: $VW, 101: $V01 },\r\n      { 14: $VS, 16: 159, 35: $VT, 38: $VU, 77: $VV, 78: $VW },\r\n      { 5: [2, 18] },\r\n      o($V31, [2, 92]),\r\n      o($V31, [2, 93]),\r\n      o($V31, [2, 94]),\r\n      o($V31, [2, 95]),\r\n      o($V31, [2, 96]),\r\n      { 5: [2, 21] },\r\n      o($V41, [2, 75]),\r\n      o($V41, [2, 76]),\r\n      { 5: [2, 22] },\r\n      { 5: [2, 23] },\r\n      { 5: [2, 24] },\r\n      { 5: [2, 26] },\r\n      { 5: [2, 27] },\r\n      { 5: [2, 28], 31: [1, 160] },\r\n      { 5: [2, 30] },\r\n      { 36: [1, 161] },\r\n      { 5: [2, 32] },\r\n      { 5: [2, 36] },\r\n      { 5: [2, 37] },\r\n      { 5: [2, 39] },\r\n      { 5: [2, 41] },\r\n      { 5: [2, 42], 73: 162, 74: $VZ },\r\n      o($V51, [2, 86]),\r\n      { 35: [1, 163] },\r\n      { 5: [2, 43], 73: 162, 74: $VZ },\r\n      { 5: [2, 45] },\r\n      { 14: [1, 164] },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        10: 165,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 49,\r\n        80: 52,\r\n        81: 50,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR,\r\n        101: $V01\r\n      },\r\n      { 5: [2, 53] },\r\n      { 5: [2, 62] },\r\n      { 5: [2, 63] },\r\n      { 5: [2, 64] },\r\n      { 5: [2, 164] },\r\n      { 5: [2, 66], 63: 166, 67: 146, 68: 147, 69: 148, 70: $V_, 72: $V$ },\r\n      { 5: [2, 67] },\r\n      { 5: [2, 77], 67: 167, 68: 147, 69: 148, 70: $V_, 72: $V$ },\r\n      o($V41, [2, 81]),\r\n      o($V41, [2, 82], {\r\n        80: 52,\r\n        53: 168,\r\n        75: 169,\r\n        76: 170,\r\n        79: 171,\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      }),\r\n      { 71: [1, 172] },\r\n      { 71: [1, 173] },\r\n      { 5: [2, 69], 63: 174, 67: 146, 68: 147, 69: 148, 70: $V_, 72: $V$ },\r\n      {\r\n        5: [2, 71],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        53: 175,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 169,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      {\r\n        5: [2, 73],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        53: 176,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 169,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      { 5: [2, 55], 57: [1, 177] },\r\n      { 5: [2, 56], 29: [1, 178] },\r\n      { 5: [2, 60], 35: [1, 179] },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        35: [1, 181],\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 180,\r\n        80: 52,\r\n        81: 182,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 5: [2, 12] },\r\n      { 5: [2, 13] },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        32: 183,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 184,\r\n        80: 52,\r\n        81: 185,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 14: [1, 186] },\r\n      o($V51, [2, 87]),\r\n      o($V51, [2, 88]),\r\n      {\r\n        5: [2, 48],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        53: 187,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 169,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      {\r\n        5: [2, 49],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        53: 188,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 169,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        101: $V01\r\n      },\r\n      { 5: [2, 68] },\r\n      { 5: [2, 78], 67: 189, 68: 147, 69: 148, 70: $V_, 72: $V$ },\r\n      o($V41, [2, 83], {\r\n        80: 52,\r\n        76: 170,\r\n        79: 171,\r\n        75: 190,\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      }),\r\n      o($V31, [2, 89]),\r\n      { 71: [1, 191], 101: [1, 192] },\r\n      o($V61, [2, 156]),\r\n      { 14: $VS, 16: 193, 35: $VT, 38: $VU, 77: $VV, 78: $VW },\r\n      { 14: $VS, 16: 194, 35: $VT, 38: $VU, 77: $VV, 78: $VW },\r\n      { 5: [2, 70] },\r\n      {\r\n        5: [2, 72],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 190,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      {\r\n        5: [2, 74],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 190,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      { 5: [2, 57] },\r\n      { 5: [2, 58] },\r\n      { 5: [2, 61] },\r\n      o($V11, [2, 161]),\r\n      o($V11, [2, 162]),\r\n      o($V11, [2, 163]),\r\n      { 5: [2, 29] },\r\n      { 5: [2, 99] },\r\n      { 5: [2, 100] },\r\n      { 31: [1, 195] },\r\n      {\r\n        5: [2, 50],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 190,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      {\r\n        5: [2, 51],\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        75: 190,\r\n        76: 170,\r\n        79: 171,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      { 5: [2, 79], 67: 196, 68: 147, 69: 148, 70: $V_, 72: $V$ },\r\n      o($V31, [2, 90]),\r\n      { 14: $VS, 16: 197, 35: $VT, 38: $VU, 77: $VV, 78: $VW },\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        35: [1, 199],\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        79: 198,\r\n        80: 52,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN\r\n      },\r\n      o($V41, [2, 84]),\r\n      o($V31, [2, 85]),\r\n      {\r\n        6: $V0,\r\n        7: $V1,\r\n        9: $V2,\r\n        13: $V3,\r\n        15: $V4,\r\n        17: $V5,\r\n        18: $V6,\r\n        19: $V7,\r\n        20: $V8,\r\n        23: $V9,\r\n        25: $Va,\r\n        26: $Vb,\r\n        27: $Vc,\r\n        30: $Vd,\r\n        32: 200,\r\n        33: $Ve,\r\n        34: $Vf,\r\n        37: $Vg,\r\n        38: $Vh,\r\n        41: $Vi,\r\n        43: $Vj,\r\n        45: $Vk,\r\n        46: $Vl,\r\n        49: $Vm,\r\n        52: $Vn,\r\n        54: $Vo,\r\n        55: $Vp,\r\n        56: $Vq,\r\n        58: $Vr,\r\n        59: $Vs,\r\n        62: $Vt,\r\n        64: $Vu,\r\n        65: $Vv,\r\n        66: $Vw,\r\n        70: $Vx,\r\n        72: $Vy,\r\n        74: $Vz,\r\n        79: 184,\r\n        80: 52,\r\n        81: 185,\r\n        82: $VA,\r\n        83: $VB,\r\n        84: $VC,\r\n        85: $VD,\r\n        86: $VE,\r\n        87: $VF,\r\n        88: $VG,\r\n        89: $VH,\r\n        90: $VI,\r\n        91: $VJ,\r\n        92: $VK,\r\n        93: $VL,\r\n        94: $VM,\r\n        95: $VN,\r\n        96: $VO,\r\n        97: $VP,\r\n        98: $VQ,\r\n        99: $VR\r\n      },\r\n      { 5: [2, 80] },\r\n      o($V31, [2, 91]),\r\n      o($V61, [2, 157]),\r\n      o($V61, [2, 158]),\r\n      { 5: [2, 31] }\r\n    ],\r\n    defaultActions: {\r\n      3: [2, 2],\r\n      4: [2, 3],\r\n      7: [2, 8],\r\n      8: [2, 9],\r\n      11: [2, 14],\r\n      12: [2, 15],\r\n      13: [2, 16],\r\n      15: [2, 19],\r\n      16: [2, 20],\r\n      25: [2, 33],\r\n      26: [2, 34],\r\n      29: [2, 40],\r\n      34: [2, 46],\r\n      35: [2, 47],\r\n      37: [2, 52],\r\n      46: [2, 1],\r\n      47: [2, 5],\r\n      107: [2, 11],\r\n      110: [2, 18],\r\n      116: [2, 21],\r\n      119: [2, 22],\r\n      120: [2, 23],\r\n      121: [2, 24],\r\n      122: [2, 26],\r\n      123: [2, 27],\r\n      125: [2, 30],\r\n      127: [2, 32],\r\n      128: [2, 36],\r\n      129: [2, 37],\r\n      130: [2, 39],\r\n      131: [2, 41],\r\n      136: [2, 45],\r\n      139: [2, 53],\r\n      140: [2, 62],\r\n      141: [2, 63],\r\n      142: [2, 64],\r\n      143: [2, 164],\r\n      145: [2, 67],\r\n      158: [2, 12],\r\n      159: [2, 13],\r\n      166: [2, 68],\r\n      174: [2, 70],\r\n      177: [2, 57],\r\n      178: [2, 58],\r\n      179: [2, 61],\r\n      183: [2, 29],\r\n      184: [2, 99],\r\n      185: [2, 100],\r\n      196: [2, 80],\r\n      200: [2, 31]\r\n    },\r\n    parseError: function parseError(str, hash) {\r\n      if (hash.recoverable) {\r\n        this.trace(str)\r\n      } else {\r\n        var error = new Error(str)\r\n        error.hash = hash\r\n        throw error\r\n      }\r\n    },\r\n    parse: function parse(input) {\r\n      var self = this,\r\n        stack = [0],\r\n        tstack = [],\r\n        vstack = [null],\r\n        lstack = [],\r\n        table = this.table,\r\n        yytext = '',\r\n        yylineno = 0,\r\n        yyleng = 0,\r\n        recovering = 0,\r\n        TERROR = 2,\r\n        EOF = 1\r\n      var args = lstack.slice.call(arguments, 1)\r\n      var lexer = Object.create(this.lexer)\r\n      var sharedState = { yy: {} }\r\n      for (var k in this.yy) {\r\n        if (Object.hasOwn(this.yy, k)) {\r\n          sharedState.yy[k] = this.yy[k]\r\n        }\r\n      }\r\n      lexer.setInput(input, sharedState.yy)\r\n      sharedState.yy.lexer = lexer\r\n      sharedState.yy.parser = this\r\n      if (typeof lexer.yylloc == 'undefined') {\r\n        lexer.yylloc = {}\r\n      }\r\n      var yyloc = lexer.yylloc\r\n      lstack.push(yyloc)\r\n      var ranges = lexer.options && lexer.options.ranges\r\n      if (typeof sharedState.yy.parseError === 'function') {\r\n        this.parseError = sharedState.yy.parseError\r\n      } else {\r\n        this.parseError = Object.getPrototypeOf(this).parseError\r\n      }\r\n      function popStack(n) {\r\n        stack.length = stack.length - 2 * n\r\n        vstack.length = vstack.length - n\r\n        lstack.length = lstack.length - n\r\n      }\r\n      function lex() {\r\n        var token\r\n        token = tstack.pop() || lexer.lex() || EOF\r\n        if (typeof token !== 'number') {\r\n          if (token instanceof Array) {\r\n            tstack = token\r\n            token = tstack.pop()\r\n          }\r\n          token = self.symbols_[token] || token\r\n        }\r\n        return token\r\n      }\r\n      var symbol,\r\n        preErrorSymbol,\r\n        state,\r\n        action,\r\n        a,\r\n        r,\r\n        yyval = {},\r\n        p,\r\n        len,\r\n        newState,\r\n        expected\r\n      while (true) {\r\n        state = stack[stack.length - 1]\r\n        if (this.defaultActions[state]) {\r\n          action = this.defaultActions[state]\r\n        } else {\r\n          if (symbol === null || typeof symbol == 'undefined') {\r\n            symbol = lex()\r\n          }\r\n          action = table[state] && table[state][symbol]\r\n        }\r\n        if (typeof action === 'undefined' || !action.length || !action[0]) {\r\n          var errStr = ''\r\n          expected = []\r\n          for (p in table[state]) {\r\n            if (this.terminals_[p] && p > TERROR) {\r\n              expected.push(\"'\" + this.terminals_[p] + \"'\")\r\n            }\r\n          }\r\n          if (lexer.showPosition) {\r\n            errStr =\r\n              'Parse error on line ' +\r\n              (yylineno + 1) +\r\n              ':\\n' +\r\n              lexer.showPosition() +\r\n              '\\nExpecting ' +\r\n              expected.join(', ') +\r\n              \", got '\" +\r\n              (this.terminals_[symbol] || symbol) +\r\n              \"'\"\r\n          } else {\r\n            errStr =\r\n              'Parse error on line ' +\r\n              (yylineno + 1) +\r\n              ': Unexpected ' +\r\n              (symbol == EOF\r\n                ? 'end of input'\r\n                : \"'\" + (this.terminals_[symbol] || symbol) + \"'\")\r\n          }\r\n          this.parseError(errStr, {\r\n            text: lexer.match,\r\n            token: this.terminals_[symbol] || symbol,\r\n            line: lexer.yylineno,\r\n            loc: yyloc,\r\n            expected: expected\r\n          })\r\n        }\r\n        if (action[0] instanceof Array && action.length > 1) {\r\n          throw new Error(\r\n            'Parse Error: multiple actions possible at state: ' +\r\n              state +\r\n              ', token: ' +\r\n              symbol\r\n          )\r\n        }\r\n        switch (action[0]) {\r\n          case 1:\r\n            stack.push(symbol)\r\n            vstack.push(lexer.yytext)\r\n            lstack.push(lexer.yylloc)\r\n            stack.push(action[1])\r\n            symbol = null\r\n            if (!preErrorSymbol) {\r\n              yyleng = lexer.yyleng\r\n              yytext = lexer.yytext\r\n              yylineno = lexer.yylineno\r\n              yyloc = lexer.yylloc\r\n              if (recovering > 0) {\r\n                recovering--\r\n              }\r\n            } else {\r\n              symbol = preErrorSymbol\r\n              preErrorSymbol = null\r\n            }\r\n            break\r\n          case 2:\r\n            len = this.productions_[action[1]][1]\r\n            yyval.$ = vstack[vstack.length - len]\r\n            yyval._$ = {\r\n              first_line: lstack[lstack.length - (len || 1)].first_line,\r\n              last_line: lstack[lstack.length - 1].last_line,\r\n              first_column: lstack[lstack.length - (len || 1)].first_column,\r\n              last_column: lstack[lstack.length - 1].last_column\r\n            }\r\n            if (ranges) {\r\n              yyval._$.range = [\r\n                lstack[lstack.length - (len || 1)].range[0],\r\n                lstack[lstack.length - 1].range[1]\r\n              ]\r\n            }\r\n            r = this.performAction.apply(\r\n              yyval,\r\n              [\r\n                yytext,\r\n                yyleng,\r\n                yylineno,\r\n                sharedState.yy,\r\n                action[1],\r\n                vstack,\r\n                lstack\r\n              ].concat(args)\r\n            )\r\n            if (typeof r !== 'undefined') {\r\n              return r\r\n            }\r\n            if (len) {\r\n              stack = stack.slice(0, -1 * len * 2)\r\n              vstack = vstack.slice(0, -1 * len)\r\n              lstack = lstack.slice(0, -1 * len)\r\n            }\r\n            stack.push(this.productions_[action[1]][0])\r\n            vstack.push(yyval.$)\r\n            lstack.push(yyval._$)\r\n            newState = table[stack[stack.length - 2]][stack[stack.length - 1]]\r\n            stack.push(newState)\r\n            break\r\n          case 3:\r\n            return true\r\n        }\r\n      }\r\n      return true\r\n    }\r\n  }\r\n\r\n  /* generated by jison-lex 0.3.4 */\r\n  var lexer = (function () {\r\n    var lexer = {\r\n      EOF: 1,\r\n\r\n      parseError: function parseError(str, hash) {\r\n        if (this.yy.parser) {\r\n          this.yy.parser.parseError(str, hash)\r\n        } else {\r\n          throw new Error(str)\r\n        }\r\n      },\r\n\r\n      // resets the lexer, sets new input\r\n      setInput: function (input, yy) {\r\n        this.yy = yy || this.yy || {}\r\n        this._input = input\r\n        this._more = this._backtrack = this.done = false\r\n        this.yylineno = this.yyleng = 0\r\n        this.yytext = this.matched = this.match = ''\r\n        this.conditionStack = ['INITIAL']\r\n        this.yylloc = {\r\n          first_line: 1,\r\n          first_column: 0,\r\n          last_line: 1,\r\n          last_column: 0\r\n        }\r\n        if (this.options.ranges) {\r\n          this.yylloc.range = [0, 0]\r\n        }\r\n        this.offset = 0\r\n        return this\r\n      },\r\n\r\n      // consumes and returns one char from the input\r\n      input: function () {\r\n        var ch = this._input[0]\r\n        this.yytext += ch\r\n        this.yyleng++\r\n        this.offset++\r\n        this.match += ch\r\n        this.matched += ch\r\n        var lines = ch.match(/(?:\\r\\n?|\\n).*/g)\r\n        if (lines) {\r\n          this.yylineno++\r\n          this.yylloc.last_line++\r\n        } else {\r\n          this.yylloc.last_column++\r\n        }\r\n        if (this.options.ranges) {\r\n          this.yylloc.range[1]++\r\n        }\r\n\r\n        this._input = this._input.slice(1)\r\n        return ch\r\n      },\r\n\r\n      // unshifts one char (or a string) into the input\r\n      unput: function (ch) {\r\n        var len = ch.length\r\n        var lines = ch.split(/(?:\\r\\n?|\\n)/g)\r\n\r\n        this._input = ch + this._input\r\n        this.yytext = this.yytext.substr(0, this.yytext.length - len)\r\n        //this.yyleng -= len;\r\n        this.offset -= len\r\n        var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g)\r\n        this.match = this.match.substr(0, this.match.length - 1)\r\n        this.matched = this.matched.substr(0, this.matched.length - 1)\r\n\r\n        if (lines.length - 1) {\r\n          this.yylineno -= lines.length - 1\r\n        }\r\n        var r = this.yylloc.range\r\n\r\n        this.yylloc = {\r\n          first_line: this.yylloc.first_line,\r\n          last_line: this.yylineno + 1,\r\n          first_column: this.yylloc.first_column,\r\n          last_column: lines\r\n            ? (lines.length === oldLines.length\r\n                ? this.yylloc.first_column\r\n                : 0) +\r\n              oldLines[oldLines.length - lines.length].length -\r\n              lines[0].length\r\n            : this.yylloc.first_column - len\r\n        }\r\n\r\n        if (this.options.ranges) {\r\n          this.yylloc.range = [r[0], r[0] + this.yyleng - len]\r\n        }\r\n        this.yyleng = this.yytext.length\r\n        return this\r\n      },\r\n\r\n      // When called from action, caches matched text and appends it on next action\r\n      more: function () {\r\n        this._more = true\r\n        return this\r\n      },\r\n\r\n      // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\r\n      reject: function () {\r\n        if (this.options.backtrack_lexer) {\r\n          this._backtrack = true\r\n        } else {\r\n          return this.parseError(\r\n            'Lexical error on line ' +\r\n              (this.yylineno + 1) +\r\n              '. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n' +\r\n              this.showPosition(),\r\n            {\r\n              text: '',\r\n              token: null,\r\n              line: this.yylineno\r\n            }\r\n          )\r\n        }\r\n        return this\r\n      },\r\n\r\n      // retain first n characters of the match\r\n      less: function (n) {\r\n        this.unput(this.match.slice(n))\r\n      },\r\n\r\n      // displays already matched input, i.e. for error messages\r\n      pastInput: function () {\r\n        var past = this.matched.substr(\r\n          0,\r\n          this.matched.length - this.match.length\r\n        )\r\n        return (\r\n          (past.length > 20 ? '...' : '') + past.substr(-20).replace(/\\n/g, '')\r\n        )\r\n      },\r\n\r\n      // displays upcoming input, i.e. for error messages\r\n      upcomingInput: function () {\r\n        var next = this.match\r\n        if (next.length < 20) {\r\n          next += this._input.substr(0, 20 - next.length)\r\n        }\r\n        return (next.substr(0, 20) + (next.length > 20 ? '...' : '')).replace(\r\n          /\\n/g,\r\n          ''\r\n        )\r\n      },\r\n\r\n      // displays the character position where the lexing error occurred, i.e. for error messages\r\n      showPosition: function () {\r\n        var pre = this.pastInput()\r\n        var c = new Array(pre.length + 1).join('-')\r\n        return pre + this.upcomingInput() + '\\n' + c + '^'\r\n      },\r\n\r\n      // test the lexed token: return FALSE when not a match, otherwise return token\r\n      test_match: function (match, indexed_rule) {\r\n        var token, lines, backup\r\n\r\n        if (this.options.backtrack_lexer) {\r\n          // save context\r\n          backup = {\r\n            yylineno: this.yylineno,\r\n            yylloc: {\r\n              first_line: this.yylloc.first_line,\r\n              last_line: this.last_line,\r\n              first_column: this.yylloc.first_column,\r\n              last_column: this.yylloc.last_column\r\n            },\r\n            yytext: this.yytext,\r\n            match: this.match,\r\n            matches: this.matches,\r\n            matched: this.matched,\r\n            yyleng: this.yyleng,\r\n            offset: this.offset,\r\n            _more: this._more,\r\n            _input: this._input,\r\n            yy: this.yy,\r\n            conditionStack: this.conditionStack.slice(0),\r\n            done: this.done\r\n          }\r\n          if (this.options.ranges) {\r\n            backup.yylloc.range = this.yylloc.range.slice(0)\r\n          }\r\n        }\r\n\r\n        lines = match[0].match(/(?:\\r\\n?|\\n).*/g)\r\n        if (lines) {\r\n          this.yylineno += lines.length\r\n        }\r\n        this.yylloc = {\r\n          first_line: this.yylloc.last_line,\r\n          last_line: this.yylineno + 1,\r\n          first_column: this.yylloc.last_column,\r\n          last_column: lines\r\n            ? lines[lines.length - 1].length -\r\n              lines[lines.length - 1].match(/\\r?\\n?/)[0].length\r\n            : this.yylloc.last_column + match[0].length\r\n        }\r\n        this.yytext += match[0]\r\n        this.match += match[0]\r\n        this.matches = match\r\n        this.yyleng = this.yytext.length\r\n        if (this.options.ranges) {\r\n          this.yylloc.range = [this.offset, (this.offset += this.yyleng)]\r\n        }\r\n        this._more = false\r\n        this._backtrack = false\r\n        this._input = this._input.slice(match[0].length)\r\n        this.matched += match[0]\r\n        token = this.performAction.call(\r\n          this,\r\n          this.yy,\r\n          this,\r\n          indexed_rule,\r\n          this.conditionStack[this.conditionStack.length - 1]\r\n        )\r\n        if (this.done && this._input) {\r\n          this.done = false\r\n        }\r\n        if (token) {\r\n          return token\r\n        } else if (this._backtrack) {\r\n          // recover context\r\n          for (var k in backup) {\r\n            this[k] = backup[k]\r\n          }\r\n          return false // rule action called reject() implying the next rule should be tested instead.\r\n        }\r\n        return false\r\n      },\r\n\r\n      // return next match in input\r\n      next: function () {\r\n        if (this.done) {\r\n          return this.EOF\r\n        }\r\n        if (!this._input) {\r\n          this.done = true\r\n        }\r\n\r\n        var token, match, tempMatch, index\r\n        if (!this._more) {\r\n          this.yytext = ''\r\n          this.match = ''\r\n        }\r\n        var rules = this._currentRules()\r\n        for (var i = 0; i < rules.length; i++) {\r\n          tempMatch = this._input.match(this.rules[rules[i]])\r\n          if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\r\n            match = tempMatch\r\n            index = i\r\n            if (this.options.backtrack_lexer) {\r\n              token = this.test_match(tempMatch, rules[i])\r\n              if (token !== false) {\r\n                return token\r\n              } else if (this._backtrack) {\r\n                match = false\r\n                continue // rule action called reject() implying a rule MISmatch.\r\n              } else {\r\n                // else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)\r\n                return false\r\n              }\r\n            } else if (!this.options.flex) {\r\n              break\r\n            }\r\n          }\r\n        }\r\n        if (match) {\r\n          token = this.test_match(match, rules[index])\r\n          if (token !== false) {\r\n            return token\r\n          }\r\n          // else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)\r\n          return false\r\n        }\r\n        if (this._input === '') {\r\n          return this.EOF\r\n        } else {\r\n          return this.parseError(\r\n            'Lexical error on line ' +\r\n              (this.yylineno + 1) +\r\n              '. Unrecognized text.\\n' +\r\n              this.showPosition(),\r\n            {\r\n              text: '',\r\n              token: null,\r\n              line: this.yylineno\r\n            }\r\n          )\r\n        }\r\n      },\r\n\r\n      // return next match that has a token\r\n      lex: function lex() {\r\n        var r = this.next()\r\n        if (r) {\r\n          return r\r\n        } else {\r\n          return this.lex()\r\n        }\r\n      },\r\n\r\n      // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\r\n      begin: function begin(condition) {\r\n        this.conditionStack.push(condition)\r\n      },\r\n\r\n      // pop the previously active lexer condition state off the condition stack\r\n      popState: function popState() {\r\n        var n = this.conditionStack.length - 1\r\n        if (n > 0) {\r\n          return this.conditionStack.pop()\r\n        } else {\r\n          return this.conditionStack[0]\r\n        }\r\n      },\r\n\r\n      // produce the lexer rule set which is active for the currently active lexer condition state\r\n      _currentRules: function _currentRules() {\r\n        if (\r\n          this.conditionStack.length &&\r\n          this.conditionStack[this.conditionStack.length - 1]\r\n        ) {\r\n          return this.conditions[\r\n            this.conditionStack[this.conditionStack.length - 1]\r\n          ].rules\r\n        } else {\r\n          return this.conditions['INITIAL'].rules\r\n        }\r\n      },\r\n\r\n      // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\r\n      topState: function topState(n) {\r\n        n = this.conditionStack.length - 1 - Math.abs(n || 0)\r\n        if (n >= 0) {\r\n          return this.conditionStack[n]\r\n        } else {\r\n          return 'INITIAL'\r\n        }\r\n      },\r\n\r\n      // alias for begin(condition)\r\n      pushState: function pushState(condition) {\r\n        this.begin(condition)\r\n      },\r\n\r\n      // return the number of states currently on the stack\r\n      stateStackSize: function stateStackSize() {\r\n        return this.conditionStack.length\r\n      },\r\n      options: { 'case-insensitive': true },\r\n      performAction: function anonymous(\r\n        yy,\r\n        yy_,\r\n        $avoiding_name_collisions,\r\n        YY_START\r\n      ) {\r\n        var YYSTATE = YY_START\r\n        switch ($avoiding_name_collisions) {\r\n          case 0 /* ignore whitespace */:\r\n            break\r\n          case 1:\r\n            return ''\r\n            break\r\n          case 2:\r\n            return ''\r\n            break\r\n          case 3:\r\n            return 42\r\n            break\r\n          case 4:\r\n            return 35\r\n            break\r\n          case 5:\r\n            return 77\r\n            break\r\n          case 6:\r\n            return 78\r\n            break\r\n          case 7:\r\n            return 78\r\n            break\r\n          case 8:\r\n            return 8\r\n            break\r\n          case 9:\r\n            return 6\r\n            break\r\n          case 10:\r\n            return 82\r\n            break\r\n          case 11:\r\n            return 7\r\n            break\r\n          case 12:\r\n            return 9\r\n            break\r\n          case 13:\r\n            return 59\r\n            break\r\n          case 14:\r\n            return 13\r\n            break\r\n          case 15:\r\n            return 15\r\n            break\r\n          case 16:\r\n            return 17\r\n            break\r\n          case 17:\r\n            return 18\r\n            break\r\n          case 18:\r\n            return 19\r\n            break\r\n          case 19:\r\n            return 20\r\n            break\r\n          case 20:\r\n            return 11\r\n            break\r\n          case 21:\r\n            return 62\r\n            break\r\n          case 22:\r\n            return 64\r\n            break\r\n          case 23:\r\n            return 23\r\n            break\r\n          case 24:\r\n            return 25\r\n            break\r\n          case 25:\r\n            return 26\r\n            break\r\n          case 26:\r\n            return 27\r\n            break\r\n          case 27:\r\n            return 30\r\n            break\r\n          case 28:\r\n            return 34\r\n            break\r\n          case 29:\r\n            return 33\r\n            break\r\n          case 30:\r\n            return 65\r\n            break\r\n          case 31:\r\n            return 66\r\n            break\r\n          case 32:\r\n            return 37\r\n            break\r\n          case 33:\r\n            return 41\r\n            break\r\n          case 34:\r\n            return 43\r\n            break\r\n          case 35:\r\n            return 52\r\n            break\r\n          case 36:\r\n            return 54\r\n            break\r\n          case 37:\r\n            return 55\r\n            break\r\n          case 38:\r\n            return 46\r\n            break\r\n          case 39:\r\n            return 48\r\n            break\r\n          case 40:\r\n            return 45\r\n            break\r\n          case 41:\r\n            return 49\r\n            break\r\n          case 42:\r\n            return 56\r\n            break\r\n          case 43:\r\n            return 58\r\n            break\r\n          case 44:\r\n            return 44\r\n            break\r\n          case 45:\r\n            return 83\r\n            break\r\n          case 46:\r\n            return 84\r\n            break\r\n          case 47:\r\n            return 85\r\n            break\r\n          case 48:\r\n            return 86\r\n            break\r\n          case 49:\r\n            return 87\r\n            break\r\n          case 50:\r\n            return 88\r\n            break\r\n          case 51:\r\n            return 89\r\n            break\r\n          case 52:\r\n            return 90\r\n            break\r\n          case 53:\r\n            return 91\r\n            break\r\n          case 54:\r\n            return 92\r\n            break\r\n          case 55:\r\n            return 93\r\n            break\r\n          case 56:\r\n            return 94\r\n            break\r\n          case 57:\r\n            return 95\r\n            break\r\n          case 58:\r\n            return 70\r\n            break\r\n          case 59:\r\n            return 70\r\n            break\r\n          case 60:\r\n            return 72\r\n            break\r\n          case 61:\r\n            return 72\r\n            break\r\n          case 62:\r\n            return 74\r\n            break\r\n          case 63:\r\n            return 74\r\n            break\r\n          case 64:\r\n            return 74\r\n            break\r\n          case 65:\r\n            return 31\r\n            break\r\n          case 66:\r\n            return 36\r\n            break\r\n          case 67:\r\n            return 96\r\n            break\r\n          case 68:\r\n            return 97\r\n            break\r\n          case 69:\r\n            return 98\r\n            break\r\n          case 70:\r\n            return 99\r\n            break\r\n          case 71:\r\n            yy_.yytext = yy.utils.unquoteString(yy_.yytext)\r\n            return 14\r\n            break\r\n          case 72:\r\n            return 38\r\n            break\r\n          case 73:\r\n            return 5\r\n            break\r\n          case 74:\r\n            return 101\r\n            break\r\n          case 75:\r\n            return 103\r\n            break\r\n          case 76:\r\n            return '\\\\'\r\n            break\r\n          case 77:\r\n            return 28\r\n            break\r\n          case 78:\r\n            return 61\r\n            break\r\n          case 79:\r\n            return 29\r\n            break\r\n          case 80:\r\n            return 57\r\n            break\r\n          case 81:\r\n            return 71\r\n            break\r\n        }\r\n      },\r\n      rules: [\r\n        /^(?:\\s+)/i,\r\n        /^(?:[#].*)/i,\r\n        /^(?:\\/\\/.*)/i,\r\n        /^(?:([_A-Z0-9\\/\\+]+==))/i,\r\n        /^(?:-?[0-9]+(\\.[0-9]+)?\\b)/i,\r\n        /^(?:0[xX][0-9A-F]+\\b)/i,\r\n        /^(?:false\\b)/i,\r\n        /^(?:true\\b)/i,\r\n        /^(?:all\\b)/i,\r\n        /^(?:reset\\b)/i,\r\n        /^(?:clear\\b)/i,\r\n        /^(?:build\\b)/i,\r\n        /^(?:help\\b)/i,\r\n        /^(?:load\\b)/i,\r\n        /^(?:get\\b)/i,\r\n        /^(?:set\\b)/i,\r\n        /^(?:set_save\\b)/i,\r\n        /^(?:set_restore\\b)/i,\r\n        /^(?:set_reset\\b)/i,\r\n        /^(?:preset\\b)/i,\r\n        /^(?:motm\\b)/i,\r\n        /^(?:add\\b)/i,\r\n        /^(?:rep\\b)/i,\r\n        /^(?:remove\\b)/i,\r\n        /^(?:hide\\b)/i,\r\n        /^(?:show\\b)/i,\r\n        /^(?:list\\b)/i,\r\n        /^(?:select\\b)/i,\r\n        /^(?:within\\b)/i,\r\n        /^(?:selector\\b)/i,\r\n        /^(?:mode\\b)/i,\r\n        /^(?:color\\b)/i,\r\n        /^(?:material\\b)/i,\r\n        /^(?:view\\b)/i,\r\n        /^(?:unit\\b)/i,\r\n        /^(?:line\\b)/i,\r\n        /^(?:listobj\\b)/i,\r\n        /^(?:removeobj\\b)/i,\r\n        /^(?:rotate\\b)/i,\r\n        /^(?:translate\\b)/i,\r\n        /^(?:scale\\b)/i,\r\n        /^(?:center\\b)/i,\r\n        /^(?:url\\b)/i,\r\n        /^(?:screenshot\\b)/i,\r\n        /^(?:dssp\\b)/i,\r\n        /^(?:file_list\\b)/i,\r\n        /^(?:file_register\\b)/i,\r\n        /^(?:file_delete\\b)/i,\r\n        /^(?:preset_add\\b)/i,\r\n        /^(?:preset_delete\\b)/i,\r\n        /^(?:preset_update\\b)/i,\r\n        /^(?:preset_rename\\b)/i,\r\n        /^(?:preset_open\\b)/i,\r\n        /^(?:create_scenario\\b)/i,\r\n        /^(?:reset_scenario\\b)/i,\r\n        /^(?:delete_scenario\\b)/i,\r\n        /^(?:add_scenario_item\\b)/i,\r\n        /^(?:list_scenario\\b)/i,\r\n        /^(?:s\\b)/i,\r\n        /^(?:mt\\b)/i,\r\n        /^(?:m\\b)/i,\r\n        /^(?:c\\b)/i,\r\n        /^(?:x\\b)/i,\r\n        /^(?:y\\b)/i,\r\n        /^(?:z\\b)/i,\r\n        /^(?:as\\b)/i,\r\n        /^(?:of\\b)/i,\r\n        /^(?:pdb\\b)/i,\r\n        /^(?:delay\\b)/i,\r\n        /^(?:prst\\b)/i,\r\n        /^(?:desc\\b)/i,\r\n        /^(?:((?:\"(?:\\\\.|[^\\\\\"])*\"|'(?:\\\\.|[^\\\\'])*')))/i,\r\n        /^(?:([_A-Z0-9]+))/i,\r\n        /^(?:$)/i,\r\n        /^(?:\\.)/i,\r\n        /^(?:\\/)/i,\r\n        /^(?:\\\\)/i,\r\n        /^(?:-e\\b)/i,\r\n        /^(?:-f\\b)/i,\r\n        /^(?:-s\\b)/i,\r\n        /^(?:-v\\b)/i,\r\n        /^(?:=)/i\r\n      ],\r\n      conditions: {\r\n        INITIAL: {\r\n          rules: [\r\n            0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,\r\n            19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,\r\n            36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,\r\n            53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,\r\n            70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81\r\n          ],\r\n          inclusive: true\r\n        }\r\n      }\r\n    }\r\n    return lexer\r\n  })()\r\n  parser.lexer = lexer\r\n  function Parser() {\r\n    this.yy = {}\r\n  }\r\n  Parser.prototype = parser\r\n  parser.Parser = Parser\r\n  return new Parser()\r\n})()\r\n\r\nmodule.exports = { parser: parser }\r\n","// import palettes from '../gfx/palettes' // TODO actualy, does nothing\r\n// import settings from '../settings'\r\n\r\nconst modeIdDesc = {\r\n  $help: [\r\n    'Rendering mode shortcut',\r\n    '    BS - balls and sticks mode',\r\n    '    LN - lines mode',\r\n    '    LC - licorice mode',\r\n    '    VW - van der waals mode',\r\n    '    TR - trace mode',\r\n    '    TU - tube mode',\r\n    '    CA - cartoon mode',\r\n    '    SA - isosurface mode',\r\n    '    QS - quick surface mode',\r\n    '    SE - solvent excluded mode',\r\n    '    TX - text mode'\r\n  ],\r\n  BS: {\r\n    $help: [\r\n      '   Balls and sticks',\r\n      '      aromrad = <number> #aromatic radius',\r\n      '      atom = <number>    #atom radius',\r\n      '      bond = <number>    #bond radius',\r\n      '      multibond = <bool> #use multibond',\r\n      '      showarom = <bool>  #show aromatic',\r\n      '      space = <number>   #space value\\n'\r\n    ]\r\n  },\r\n  CA: {\r\n    $help: [\r\n      '   Cartoon',\r\n      '      arrow = <number>   #arrow size',\r\n      '      depth = <number>   #depth of surface',\r\n      '      heightSegmentsRatio = <number>',\r\n      '      radius = <number>  #tube radius',\r\n      '      tension = <number> #',\r\n      '      width = <number>  #secondary width\\n'\r\n    ]\r\n  },\r\n  LN: {\r\n    $help: [\r\n      '   Lines',\r\n      '      atom = <number>    #atom radius',\r\n      '      chunkarom = <number>',\r\n      '      multibond = <bool> #use multibond',\r\n      '      showarom = <bool>  #show aromatic',\r\n      '      offsarom = <number>\\n'\r\n    ]\r\n  },\r\n  LC: {\r\n    $help: [\r\n      '   Licorice',\r\n      '      aromrad = <number> #aromatic radius',\r\n      '      bond = <number>    #bond radius',\r\n      '      multibond = <bool> #use multibond',\r\n      '      showarom = <bool>  #show aromatic',\r\n      '      space = <number>   #space value\\n'\r\n    ]\r\n  },\r\n  VW: {\r\n    $help: ['   Van der Waals', '      nothing\\n']\r\n  },\r\n  TR: {\r\n    $help: ['   Trace', '      radius = <number>  #tube radius\\n']\r\n  },\r\n  TU: {\r\n    $help: [\r\n      '   Tube',\r\n      '      heightSegmentsRatio = <number>',\r\n      '      radius = <number>  #tube radius',\r\n      '      tension = <number> \\n'\r\n    ]\r\n  },\r\n  SA: {\r\n    $help: ['   Surface', '      zClip = <bool> #clip z plane\\n']\r\n  },\r\n  QS: {\r\n    $help: [\r\n      '   Quick surface',\r\n      '      isoValue = <number>',\r\n      '      scale = <number>',\r\n      '      wireframe = <bool>',\r\n      '      zClip = <bool> #clip z plane\\n'\r\n    ]\r\n  },\r\n  SE: {\r\n    $help: [\r\n      '   Solvent excluded surface',\r\n      '      zClip = <bool> #clip z plane\\n'\r\n    ]\r\n  },\r\n  TX: {\r\n    $help: [\r\n      '   Text mode',\r\n      '      template = <format string> string that can include \"{{ id }}\"',\r\n      '          it will be replaced by value, id can be one of next:',\r\n      '          serial, name, type, sequence, residue, chain, hetatm, water\\n',\r\n      '      horizontalAlign = <string> {\"left\", \"right\", \"center\"}',\r\n      '      verticalAlign = <string> {\"top\", \"bottom\", \"middle\"}',\r\n      '      dx = <number> #offset along x',\r\n      '      dy = <number> #offset along y',\r\n      '      dz = <number> #offset along z',\r\n      '      fg = <string> #text color modificator',\r\n      '           could be keyword, named color or hex',\r\n      '      fg = <string> #back color modificator',\r\n      '           could be keyword, named color or hex',\r\n      '      showBg = <bool> #if set show background',\r\n      '           plate under text'\r\n    ]\r\n  }\r\n}\r\n\r\nconst colorDesc = {\r\n  $help: [\r\n    'Coloring mode shortcut',\r\n    '    EL - color by element',\r\n    '    CH - color by chain',\r\n    '    SQ - color by sequence',\r\n    '    RT - color by residue type',\r\n    '    SS - color by secondary structure',\r\n    '    UN - uniform'\r\n  ],\r\n  UN: {\r\n    $help: [\r\n      'Parameters of coloring modes customization',\r\n      '   Uniform',\r\n      '      color = <number|color> #RGB->HEX->dec\\n'\r\n    ]\r\n    // color: {\r\n    //   $help: Object.keys(palettes.get(settings.now.palette).namedColors)\r\n    //     .sort()\r\n    //     .join('\\n')\r\n    // }\r\n  }\r\n}\r\n\r\nconst materialDesc = {\r\n  $help: [\r\n    'Material shortcut',\r\n    '    DF - diffuse',\r\n    '    TR - transparent',\r\n    '    SF - soft plastic',\r\n    '    PL - glossy plastic',\r\n    '    ME - metal',\r\n    '    GL - glass'\r\n  ]\r\n}\r\n\r\nconst addRepDesc = {\r\n  $help: [\r\n    'Short (packed) representation description as a set of variables',\r\n    '    s=<EXPRESSION>',\r\n    '        selector property',\r\n    '    m=<MODE_ID>[!<PARAMETER>:<VALUE>[,...]]',\r\n    '        render mode property',\r\n    '    c=<COLORER_ID>[!<PARAMETER>:<VALUE>[,...]]',\r\n    '        color mode property',\r\n    '    mt=<MATERIAL_ID>',\r\n    '        material property'\r\n  ],\r\n  s: {\r\n    $help:\r\n      'Selection expression string as it is in menu->representations->selection'\r\n  },\r\n  m: modeIdDesc,\r\n  c: colorDesc,\r\n  mt: materialDesc\r\n}\r\n\r\nconst setGetParameterDesc = {\r\n  $help: [\r\n    'Parameters of rendering modes customization: modes',\r\n    'Parameters of colorer customization: colorers',\r\n    'Autobuild: autobuild = (<number>|<bool>)'\r\n  ],\r\n  modes: modeIdDesc,\r\n  colorers: colorDesc\r\n}\r\n\r\nconst help = {\r\n  $help: [\r\n    'help (<cmd name>| <path to property>)',\r\n    'You can get detailed information about command options',\r\n    '   using \"help cmd.opt.opt.[...]\"\\n',\r\n    '   you can use one line comments',\r\n    '   everything started from (#|//) will be skipped',\r\n    '   Example: >build //some comment\\n',\r\n    'List of available commands:'\r\n  ],\r\n  reset: {\r\n    $help: [\r\n      'Reload current object, delete all representations',\r\n      '    Nothing will work until load new object'\r\n    ]\r\n  },\r\n  load: {\r\n    $help: [\r\n      'load (<PDBID>|<URL>|-f [<*.NC FILE URL STRING>])',\r\n      '    Load new pdb object from selected source'\r\n    ],\r\n    PDBID: {\r\n      $help: 'pdb id in remote molecule database'\r\n    },\r\n    URL: {\r\n      $help: 'url to source file'\r\n    },\r\n    f: {\r\n      $help: [\r\n        'open file system dialog to fetch local file',\r\n        'optionally you can determine trajectory file',\r\n        'via URL for *.top model'\r\n      ]\r\n    }\r\n  },\r\n  clear: {\r\n    $help: 'No args. Clear terminal'\r\n  },\r\n  add: {\r\n    $help: [\r\n      'add [<REP_NAME>] [<DESCRIPTION>]',\r\n      '    Add new item to representation set with',\r\n      '    default or <DESCRIPTION> params'\r\n    ],\r\n    REP_NAME: {\r\n      $help: 'Identifier string [_,a-z,A-Z,0-9] can not start from digit'\r\n    },\r\n    DESCRIPTION: addRepDesc\r\n  },\r\n  rep: {\r\n    $help: [\r\n      'rep [<REP_NAME>|<REP_INDEX>] [<DESCRIPTION>]',\r\n      '    set current representation by name or index',\r\n      '    edit current representation by <DESCRIPTION>'\r\n    ],\r\n    REP_NAME: {\r\n      $help: [\r\n        'Identifier string [_,a-z,A-Z,0-9] can not start from digit',\r\n        'Must be declared before'\r\n      ]\r\n    },\r\n    REP_INDEX: {\r\n      $help: 'Index of available representation'\r\n    },\r\n    DESCRIPTION: addRepDesc\r\n  },\r\n  remove: {\r\n    $help: [\r\n      'remove (<REP_NAME>|<REP_INDEX>)',\r\n      'Remove representation by name or index'\r\n    ],\r\n    REP_NAME: {\r\n      $help: [\r\n        'Identifier string [_,a-z,A-Z,0-9] can not start from digit',\r\n        'Must be declared before'\r\n      ]\r\n    },\r\n    REP_INDEX: {\r\n      $help: 'Index of available representation'\r\n    }\r\n  },\r\n  selector: {\r\n    $help: [\r\n      'selector <EXPRESSION>',\r\n      '   set selector from EXPRESSION to current representation'\r\n    ],\r\n    EXPRESSION: {\r\n      $help:\r\n        'Selection expression string as it is in menu->representations->selection'\r\n    }\r\n  },\r\n  mode: {\r\n    $help: [\r\n      'mode <MODE_ID> [<PARAMETER>=<VALUE>...]',\r\n      '   set rendering mode and apply parameters to current representation'\r\n    ],\r\n    MODE_ID: modeIdDesc\r\n  },\r\n  color: {\r\n    $help: [\r\n      'color <COLORER_ID> [<PARAMETER>=<VALUE>...]',\r\n      '   set colorer and apply parameters to current representation'\r\n    ],\r\n    COLORER_ID: colorDesc\r\n  },\r\n  material: {\r\n    $help: [\r\n      'material <MATERIAL_ID>',\r\n      '   set material to current representation'\r\n    ],\r\n    MATERIAL_ID: materialDesc\r\n  },\r\n  build: {\r\n    $help: 'build help str',\r\n    add: {\r\n      $help: 'build.add',\r\n      new: {\r\n        $help: [\r\n          'add.new',\r\n          'add.new new line 1',\r\n          'add.new new line 2',\r\n          'add.new new line 3'\r\n        ]\r\n      }\r\n    },\r\n    del: {\r\n      $help: 'build.del'\r\n    }\r\n  },\r\n  list: {\r\n    $help: [\r\n      'list [-e|-s|<REP_NAME>|<REP_INDEX>]',\r\n      'Print representations if no args print list of representations',\r\n      '    -e expand list and show all representations',\r\n      '    -s show all user-registered selectors',\r\n      '    <REP_NAME>|<REP_INDEX> show only current representation'\r\n    ]\r\n  },\r\n  hide: {\r\n    $help: [\r\n      'hide (<REP_NAME>|<REP_INDEX>)',\r\n      'Hide representation referenced in args'\r\n    ]\r\n  },\r\n  show: {\r\n    $help: [\r\n      'show (<REP_NAME>|<REP_INDEX>)',\r\n      'Show representation referenced in args'\r\n    ]\r\n  },\r\n  get: {\r\n    $help: [\r\n      'get <PARAMETER>',\r\n      'Print <PARAMETER> value',\r\n      '    <PARAMETER> - path to option use get.PARAMETER to get more info'\r\n    ],\r\n    PARAMETER: setGetParameterDesc\r\n  },\r\n  set: {\r\n    $help: [\r\n      'set <PARAMETER> <VALUE>',\r\n      'Set <PARAMETER> with <VALUE>',\r\n      '    <PARAMETER> - path to option use set.PARAMETER to get more info'\r\n    ],\r\n    PARAMETER: setGetParameterDesc\r\n  },\r\n  set_save: {\r\n    $help: ['set_save', 'Save current settings to cookie']\r\n  },\r\n  set_restore: {\r\n    $help: ['set_restore', 'Load and apply settings from cookie']\r\n  },\r\n  set_reset: {\r\n    $help: ['set_reset', 'Reset current settings to the defaults']\r\n  },\r\n  preset: {\r\n    $help: [\r\n      'preset [<PRESET>]',\r\n      'Reset current representation or set preset to <PRESET>'\r\n    ],\r\n    PRESET: {\r\n      $help: ['default', 'wire', 'small', 'macro']\r\n    }\r\n  },\r\n  unit: {\r\n    $help: [\r\n      'unit [<unit_id>]',\r\n      'Change current biological structure view. Zero <unit_id> value means asymmetric unit,',\r\n      'positive values set an assembly with corresponding number.',\r\n      'Being called with no parameters command prints current unit information.'\r\n    ]\r\n  },\r\n  view: {\r\n    $help: [\r\n      'view [<ENCODED_VIEW>]',\r\n      'Get current encoded view or set if ENCODED_VIEW placed as argument'\r\n    ],\r\n    ENCODED_VIEW: {\r\n      $help: ['encoded view matrix string (binary code)']\r\n    }\r\n  },\r\n  rotate: {\r\n    $help: [\r\n      'rotate (x|y|z) [<DEGREES>] [(x|y|z) [<DEGREES>]]...',\r\n      'Rotate scene'\r\n    ]\r\n  },\r\n  scale: {\r\n    $help: ['scale <SCALE>', 'Scale scene']\r\n  },\r\n  select: {\r\n    $help: [\r\n      'select <SELECTOR_STRING> [as <SELECTOR_NAME>]',\r\n      'Select atoms using selector defined in SELECTOR_STRING',\r\n      '    and if SELECTOR_NAME is defined register it in viewer',\r\n      '    you can use it later as a complex selector'\r\n    ]\r\n  },\r\n  within: {\r\n    $help: [\r\n      'within <DISTANCE> of <SELECTOR_STRING> as <SELECTOR_NAME>',\r\n      'Build within named selector',\r\n      '    DISTANCE        <number>',\r\n      '    SELECTOR_STRING <string(selection language)>',\r\n      '    SELECTOR_NAME   <identifier>'\r\n    ]\r\n  },\r\n  url: {\r\n    $help: [\r\n      'url [-s] [-v]',\r\n      'Report URL encoded scene',\r\n      '    if -s set that include settings in the URL',\r\n      '    if -v set that include view in the URL'\r\n    ]\r\n  },\r\n  screenshot: {\r\n    $help: [\r\n      'screenshot [<WIDTH> [<HEIGHT>]]',\r\n      'Make a screenshot of the scene',\r\n      '    WIDTH  <number> in pixels',\r\n      '    HEIGHT <number> in pixels, equal to WIDTH by default'\r\n    ]\r\n  },\r\n  line: {\r\n    $help: [\r\n      'line <first_atom_path> <second_atom_path> [<PARAMETER>=<VALUE>]',\r\n      'Draw dashed line between two specified atoms'\r\n    ]\r\n  },\r\n  removeobj: {\r\n    $help: [\r\n      'removeobj <id>',\r\n      'Remove scene object by its index. Indices could be obtained by <listobj> command'\r\n    ]\r\n  },\r\n  listobj: {\r\n    $help: ['listobj', 'Display the list of all existing scene objects']\r\n  }\r\n}\r\n\r\nexport default help\r\n","/**\r\n * This class introduces the simplest event system.\r\n */\r\n\r\nimport { remove, find, forEach, omitBy } from 'lodash'\r\n\r\nfunction isUndefOrEqual(param, value) {\r\n  return !param || param === value\r\n}\r\n\r\n/**\r\n * Creates empty dispatcher.\r\n *\r\n * @exports EventDispatcher\r\n * @constructor\r\n */\r\nfunction EventDispatcher() {\r\n  this._handlers = {}\r\n}\r\n\r\n/**\r\n * Binds callback on specific event type. Optional `context` parameter\r\n * could be used as 'this' for the `callback`.\r\n * @param {string}   type       Event name.\r\n * @param {function} callback   Callback function.\r\n * @param {Object}   [context] 'This' object for the callback.\r\n */\r\nEventDispatcher.prototype.addEventListener = function (\r\n  type,\r\n  callback,\r\n  context\r\n) {\r\n  let handlers = this._handlers[type]\r\n\r\n  if (!handlers) {\r\n    this._handlers[type] = []\r\n    handlers = this._handlers[type]\r\n  }\r\n\r\n  const params = [callback, context]\r\n  function _checkPar(par) {\r\n    return par[0] === params[0] && par[1] === params[1]\r\n  }\r\n\r\n  if (find(handlers, _checkPar) === undefined) {\r\n    handlers.push(params)\r\n  }\r\n}\r\n\r\n/**\r\n * Removes a previously-bound callback function from an object.\r\n * If no `context` is specified, all versions of the `callback` with different\r\n * contexts will be removed.\r\n * If no `callback` is specified, all callbacks of the `type` will be removed.\r\n * If no `type` is specified, callbacks for all events will be removed.\r\n * @param {?string}  [type]      Event type.\r\n * @param {function} [callback]  Callback function.\r\n * @param {Object}   [context]  'This' object for the callback.\r\n */\r\nEventDispatcher.prototype.removeEventListener = function (\r\n  type,\r\n  callback,\r\n  context\r\n) {\r\n  const self = this\r\n  forEach(self._handlers, (handler, ev) => {\r\n    remove(\r\n      handler,\r\n      (values) =>\r\n        isUndefOrEqual(type, ev) &&\r\n        isUndefOrEqual(callback, values[0]) &&\r\n        isUndefOrEqual(context, values[1] || self)\r\n    )\r\n  })\r\n\r\n  this._handlers = omitBy(self._handlers, (handler) => handler.length === 0)\r\n}\r\n\r\n/**\r\n * Makes all the callbacks for the specific `event` to trigger.\r\n * @param {Object} event      Event.\r\n * @param {string} event.type Type of the event.\r\n */\r\nEventDispatcher.prototype.dispatchEvent = function (event) {\r\n  const self = this\r\n\r\n  forEach(this._handlers[event.type], (callback) => {\r\n    const context = callback[1] || self\r\n    callback[0].apply(context, [event])\r\n  })\r\n}\r\n\r\nexport default EventDispatcher\r\n","/**\r\n * This module contains class for logging.\r\n * Returns an instance of a logger that have already been created.\r\n * Allows users to log messages for five different levels,\r\n * enable console output and catch signal on each message.\r\n */\r\nimport { findKey, isNumber } from 'lodash'\r\nimport EventDispatcher from './EventDispatcher'\r\n\r\nconst priorities = {\r\n  debug: 0,\r\n  info: 1,\r\n  report: 2,\r\n  warn: 3,\r\n  error: 4\r\n}\r\n\r\n/**\r\n * Create new Logger.\r\n *\r\n * @exports Logger\r\n * @extends EventDispatcher\r\n * @constructor\r\n */\r\nfunction Logger() {\r\n  EventDispatcher.call(this)\r\n  /** Boolean flag that toggles output to browser console.\r\n   * @type {boolean}\r\n   */\r\n  this.console = false\r\n  this._priority = priorities.warn\r\n}\r\n\r\nLogger.prototype = Object.create(EventDispatcher.prototype)\r\nLogger.prototype.constructor = Logger\r\n\r\n/**\r\n * Create new clean instance of the logger.\r\n * @returns {Logger}\r\n */\r\nLogger.prototype.instantiate = function () {\r\n  return new Logger()\r\n}\r\n\r\nfunction verify(number) {\r\n  if (!isNumber(number)) {\r\n    throw new Error('Wrong log level specified!')\r\n  }\r\n  return number\r\n}\r\n\r\n/**\r\n * @property {string} current threshold for signals and console output.\r\n * @name Logger#level\r\n */\r\nObject.defineProperty(Logger.prototype, 'level', {\r\n  get() {\r\n    return findKey(priorities, (value) => value === this._priority)\r\n  },\r\n  set(level) {\r\n    this._priority = verify(priorities[level])\r\n  }\r\n})\r\n\r\n/**\r\n * Returns the list of all possible level values.\r\n * @returns {Array}\r\n */\r\nLogger.prototype.levels = function () {\r\n  return Object.keys(priorities)\r\n}\r\n\r\n/**\r\n * Add new message with specified level.\r\n * @param {string} level - level of the message, must be one of the\r\n * {'debug' | 'info' | 'report' | 'warn' | 'error'}\r\n * @param {string} message\r\n */\r\nLogger.prototype.message = function (level, message) {\r\n  const priority = verify(priorities[level])\r\n  this._message(priority, message)\r\n}\r\n\r\n/**\r\n * Shortcut for message('debug', ...);\r\n * @param message\r\n */\r\nLogger.prototype.debug = function (message) {\r\n  this._message(priorities.debug, message)\r\n}\r\n\r\n/**\r\n * Shortcut for message('info', ...);\r\n * @param message\r\n */\r\nLogger.prototype.info = function (message) {\r\n  this._message(priorities.info, message)\r\n}\r\n\r\n/**\r\n * Shortcut for message('report', ...);\r\n * @param message\r\n */\r\nLogger.prototype.report = function (message) {\r\n  this._message(priorities.report, message)\r\n}\r\n\r\n/**\r\n * Shortcut for message('warn', ...);\r\n * @param message\r\n */\r\nLogger.prototype.warn = function (message) {\r\n  this._message(priorities.warn, message)\r\n}\r\n\r\n/**\r\n * Shortcut for message('error', ...);\r\n * @param message\r\n */\r\nLogger.prototype.error = function (message) {\r\n  this._message(priorities.error, message)\r\n}\r\n\r\n/**\r\n * Add new message with specified priority.\r\n * @param {number} priority - priority of the message\r\n * @param {string} message\r\n * @private\r\n */\r\nLogger.prototype._message = function (priority, message) {\r\n  if (priority < this._priority) {\r\n    return\r\n  }\r\n  const level = findKey(priorities, (value) => value === priority)\r\n  message = String(message)\r\n  if (this.console) {\r\n    const output = `miew:${level}: ${message}`\r\n    if (level === 'error') {\r\n      console.error(output) // NOSONAR\r\n    } else if (level === 'warn') {\r\n      console.warn(output) // NOSONAR\r\n    } else {\r\n      console.log(output) // NOSONAR\r\n    }\r\n  }\r\n  this.dispatchEvent({ type: 'message', level, message })\r\n}\r\n\r\nexport default new Logger()\r\n","function _setPrototypeOf(o, p) {\n  module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n    o.__proto__ = p;\n    return o;\n  }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inherits(subClass, superClass) {\n  if (typeof superClass !== \"function\" && superClass !== null) {\n    throw new TypeError(\"Super expression must either be null or a function\");\n  }\n\n  Object.defineProperty(subClass, \"prototype\", {\n    value: Object.create(superClass && superClass.prototype, {\n      constructor: {\n        value: subClass,\n        writable: true,\n        configurable: true\n      }\n    }),\n    writable: false\n  });\n  if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n  if (self === void 0) {\n    throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n  }\n\n  return self;\n}\n\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"@babel/runtime/helpers/typeof\")[\"default\"];\n\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\n\nfunction _possibleConstructorReturn(self, call) {\n  if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n    return call;\n  } else if (call !== void 0) {\n    throw new TypeError(\"Derived constructors may only return object or undefined\");\n  }\n\n  return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n    return o.__proto__ || Object.getPrototypeOf(o);\n  }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeFunction(fn) {\n  return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nmodule.exports = _isNativeFunction, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n  if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n  if (Reflect.construct.sham) return false;\n  if (typeof Proxy === \"function\") return true;\n\n  try {\n    Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n    return true;\n  } catch (e) {\n    return false;\n  }\n}\n\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\n\nfunction _construct(Parent, args, Class) {\n  if (isNativeReflectConstruct()) {\n    module.exports = _construct = Reflect.construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  } else {\n    module.exports = _construct = function _construct(Parent, args, Class) {\n      var a = [null];\n      a.push.apply(a, args);\n      var Constructor = Function.bind.apply(Parent, a);\n      var instance = new Constructor();\n      if (Class) setPrototypeOf(instance, Class.prototype);\n      return instance;\n    }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  }\n\n  return _construct.apply(null, arguments);\n}\n\nmodule.exports = _construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nvar setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeFunction = require(\"./isNativeFunction.js\");\n\nvar construct = require(\"./construct.js\");\n\nfunction _wrapNativeSuper(Class) {\n  var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n  module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n    if (Class === null || !isNativeFunction(Class)) return Class;\n\n    if (typeof Class !== \"function\") {\n      throw new TypeError(\"Super expression must either be null or a function\");\n    }\n\n    if (typeof _cache !== \"undefined\") {\n      if (_cache.has(Class)) return _cache.get(Class);\n\n      _cache.set(Class, Wrapper);\n    }\n\n    function Wrapper() {\n      return construct(Class, arguments, getPrototypeOf(this).constructor);\n    }\n\n    Wrapper.prototype = Object.create(Class.prototype, {\n      constructor: {\n        value: Wrapper,\n        enumerable: false,\n        writable: true,\n        configurable: true\n      }\n    });\n    return setPrototypeOf(Wrapper, Class);\n  }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  return _wrapNativeSuper(Class);\n}\n\nmodule.exports = _wrapNativeSuper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n  if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n  var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n  if (_i == null) return;\n  var _arr = [];\n  var _n = true;\n  var _d = false;\n\n  var _s, _e;\n\n  try {\n    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n      _arr.push(_s.value);\n\n      if (i && _arr.length === i) break;\n    }\n  } catch (err) {\n    _d = true;\n    _e = err;\n  } finally {\n    try {\n      if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n    } finally {\n      if (_d) throw _e;\n    }\n  }\n\n  return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n  if (len == null || len > arr.length) len = arr.length;\n\n  for (var i = 0, arr2 = new Array(len); i < len; i++) {\n    arr2[i] = arr[i];\n  }\n\n  return arr2;\n}\n\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n  if (!o) return;\n  if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n  var n = Object.prototype.toString.call(o).slice(8, -1);\n  if (n === \"Object\" && o.constructor) n = o.constructor.name;\n  if (n === \"Map\" || n === \"Set\") return Array.from(o);\n  if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n  throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableRest = require(\"./nonIterableRest.js\");\n\nfunction _slicedToArray(arr, i) {\n  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import logger from './logger'\r\nimport {\r\n  assign,\r\n  isPlainObject,\r\n  forIn,\r\n  isEqual,\r\n  isEmpty,\r\n  isString\r\n} from 'lodash'\r\n\r\nconst browserType = {\r\n  DEFAULT: 0,\r\n  SAFARI: 1\r\n}\r\n// ----------------------------------------------------------------------------\r\n// Query string\r\n\r\n/**\r\n * Escape only dangerous chars in a query string component, use a plus instead of a space.\r\n *\r\n * [RFC 3986](https://tools.ietf.org/html/rfc3986) allows the following chars in the query (see 3.4):\r\n *\r\n *       A-Z a-z 0-9 - _ . ~ ! $ & ' ( ) * + , ; = : @ / ?\r\n *\r\n * For query string elements we need to escape ampersand, equal sign, and plus,\r\n * but encodeURIComponent() function encodes anything except for the following:\r\n *\r\n *       A-Z a-z 0-9 - _ . ~ ! ' ( ) *\r\n *\r\n * @param {string} text - key or value to encode\r\n * @param {string} excludeExp - regexp for symbols to exclude from encoding\r\n * @returns {string} encoded string\r\n */\r\nfunction encodeQueryComponent(text, excludeExp) {\r\n  const encode = (code) => String.fromCharCode(parseInt(code.substr(1), 16))\r\n  return encodeURIComponent(text)\r\n    .replace(excludeExp, encode)\r\n    .replace(/%20/g, '+')\r\n}\r\n\r\n/**\r\n * Unescape dangerous chars in a query string component.\r\n *\r\n * @param {string} text - encoded key or value\r\n * @returns {string} decoded string\r\n * @see {@link encodeQueryComponent}\r\n */\r\nfunction decodeQueryComponent(text) {\r\n  return decodeURIComponent(text.replace(/\\+/g, ' '))\r\n}\r\n\r\n/**\r\n * Parse URL and extract an array of parameters.\r\n * @param {string?} url - URL or query string to parse\r\n * @returns {Array} array of (key, value) pairs.\r\n */\r\nfunction getUrlParameters(url) {\r\n  url = url || window.location.search\r\n\r\n  const query = url.substring(url.indexOf('?') + 1)\r\n  const search = /([^&=]+)=?([^&]*)/g\r\n  const result = []\r\n  let match\r\n\r\n  while ((match = search.exec(query)) !== null) {\r\n    // eslint-disable-line no-cond-assign\r\n    result.push([\r\n      decodeQueryComponent(match[1]),\r\n      decodeQueryComponent(match[2])\r\n    ])\r\n  }\r\n\r\n  return result\r\n}\r\n\r\n/**\r\n * Parse URL and extract an array of parameters as a hash.\r\n * @param {string?} url - URL or query string to parse\r\n * @returns {Object}\r\n */\r\nfunction getUrlParametersAsDict(url) {\r\n  const result = {}\r\n  const a = getUrlParameters(url)\r\n  for (let i = 0; i < a.length; ++i) {\r\n    const [key, value] = a[i]\r\n    result[key] = value\r\n  }\r\n  return result\r\n}\r\n\r\nfunction resolveURL(str) {\r\n  if (typeof URL !== 'undefined') {\r\n    try {\r\n      if (typeof window !== 'undefined') {\r\n        return new URL(str, window.location).href\r\n      }\r\n      return new URL(str).href\r\n    } catch (error) {\r\n      // IE 11 has a URL object with no constructor available so just try a different approach instead\r\n    }\r\n  }\r\n  if (typeof document !== 'undefined') {\r\n    const anchor = document.createElement('a')\r\n    anchor.href = str\r\n    return anchor.href\r\n  }\r\n  return str\r\n}\r\n\r\n/**\r\n * Generates regular expression object that includes all symbols\r\n * listed in the argument\r\n * @param symbolStr {string} - String containing characters list.\r\n * @returns {RegExp} - Regular expression.\r\n */\r\nfunction generateRegExp(symbolStr) {\r\n  const symbolList = []\r\n\r\n  for (let i = 0, n = symbolStr.length; i < n; ++i) {\r\n    symbolList[symbolList.length] = symbolStr[i].charCodeAt(0).toString(16)\r\n  }\r\n\r\n  const listStr = symbolList.join('|')\r\n\r\n  return new RegExp(`%(?:${listStr})`, 'gi')\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Create HTML element\r\n\r\nfunction createElement(tag, attrs, content) {\r\n  const element = document.createElement(tag)\r\n  let i\r\n  let n\r\n  if (attrs) {\r\n    const keys = Object.keys(attrs)\r\n    for (i = 0, n = keys.length; i < n; ++i) {\r\n      const key = keys[i]\r\n      element.setAttribute(key, attrs[key])\r\n    }\r\n  }\r\n  if (content) {\r\n    if (!(content instanceof Array)) {\r\n      content = [content]\r\n    }\r\n    for (i = 0, n = content.length; i < n; ++i) {\r\n      const child = content[i]\r\n      if (typeof child === 'string') {\r\n        element.appendChild(document.createTextNode(child))\r\n      } else if (child instanceof HTMLElement) {\r\n        element.appendChild(child)\r\n      }\r\n    }\r\n  }\r\n  return element\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Easy inheritance\r\n\r\n/**\r\n * Derive the class from the base.\r\n * @param cls {function} - Class (constructor) to derive.\r\n * @param base {function} - Class (constructor) to derive from.\r\n * @param members {object=} - Optional instance members to add.\r\n * @param statics {object=} - Optional static class members to add.\r\n * @returns {function} Original class.\r\n */\r\nfunction deriveClass(cls, base, members, statics) {\r\n  cls.prototype = assign(\r\n    Object.create(base.prototype),\r\n    { constructor: cls },\r\n    members\r\n  )\r\n  if (statics) {\r\n    assign(cls, statics)\r\n  }\r\n  return cls\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Deep prototyping\r\n\r\nfunction deriveDeep(obj, needZeroOwnProperties) {\r\n  let res = obj\r\n  let i\r\n  let n\r\n  if (obj instanceof Array) {\r\n    res = new Array(obj.length)\r\n    for (i = 0, n = obj.length; i < n; ++i) {\r\n      res[i] = deriveDeep(obj[i])\r\n    }\r\n  } else if (obj instanceof Object) {\r\n    res = Object.create(obj)\r\n    const keys = Object.keys(obj)\r\n    for (i = 0, n = keys.length; i < n; ++i) {\r\n      const key = keys[i]\r\n      const value = obj[key]\r\n      const copy = deriveDeep(value)\r\n      if (copy !== value) {\r\n        res[key] = copy\r\n      }\r\n    }\r\n    if (needZeroOwnProperties && Object.keys(res).length > 0) {\r\n      res = Object.create(res)\r\n    }\r\n  }\r\n  return res\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Colors\r\n\r\nfunction hexColor(color) {\r\n  const hex = `0000000${color.toString(16)}`.substr(-6)\r\n  return `#${hex}`\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Debug tracing\r\n\r\nfunction DebugTracer(namespace) {\r\n  let enabled = false\r\n\r\n  this.enable = function (on) {\r\n    enabled = on\r\n  }\r\n\r\n  let indent = 0\r\n  const methods = Object.keys(namespace)\r\n\r\n  function wrap(method_, name_) {\r\n    return function (...args) {\r\n      const spaces = DebugTracer.spaces.substr(0, indent * 2)\r\n      if (enabled) {\r\n        logger.debug(`${spaces + name_} {`)\r\n      }\r\n      indent++\r\n      const result = method_.apply(this, args) // eslint-disable-line no-invalid-this\r\n      indent--\r\n      if (enabled) {\r\n        logger.debug(`${spaces}} // ${name_}`)\r\n      }\r\n      return result\r\n    }\r\n  }\r\n\r\n  for (let i = 0, n = methods.length; i < n; ++i) {\r\n    const name = methods[i]\r\n    const method = namespace[name]\r\n    if (method instanceof Function && name !== 'constructor') {\r\n      namespace[name] = wrap(method, name)\r\n    }\r\n  }\r\n}\r\n\r\nDebugTracer.spaces =\r\n  '                                                                                          '\r\n\r\nclass OutOfMemoryError extends Error {\r\n  constructor(message) {\r\n    super()\r\n    this.name = 'OutOfMemoryError'\r\n    this.message = message\r\n  }\r\n}\r\n\r\nfunction allocateTyped(TypedArrayName, size) {\r\n  let result = null\r\n  try {\r\n    result = new TypedArrayName(size)\r\n  } catch (e) {\r\n    if (e instanceof RangeError) {\r\n      throw new OutOfMemoryError(e.message)\r\n    } else {\r\n      throw e\r\n    }\r\n  }\r\n  return result\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Float array conversion\r\n\r\nfunction bytesToBase64(/** ArrayBuffer */ buffer) {\r\n  const bytes = new Uint8Array(buffer)\r\n  let binary = ''\r\n  for (let i = 0; i < bytes.byteLength; i++) {\r\n    binary += String.fromCharCode(bytes[i])\r\n  }\r\n  return window.btoa(binary)\r\n}\r\n\r\nfunction bytesFromBase64(/** string */ str) {\r\n  const binary = window.atob(str)\r\n  const bytes = new Uint8Array(binary.length)\r\n  for (let i = 0; i < bytes.length; ++i) {\r\n    bytes[i] = binary[i].charCodeAt(0)\r\n  }\r\n  return bytes.buffer\r\n}\r\n\r\nfunction arrayToBase64(/** number[] */ array, /** function */ TypedArrayClass) {\r\n  return bytesToBase64(new TypedArrayClass(array).buffer)\r\n}\r\n\r\nfunction arrayFromBase64(/** string */ str, /** function */ TypedArrayClass) {\r\n  return Array.prototype.slice.call(new TypedArrayClass(bytesFromBase64(str)))\r\n}\r\n\r\n// NOTE: this is 1-level comparison\r\nfunction compareOptionsWithDefaults(opts, defOpts) {\r\n  const optsStr = []\r\n  if (defOpts && opts) {\r\n    const keys = Object.keys(opts)\r\n    for (let p = 0; p < keys.length; ++p) {\r\n      const key = keys[p]\r\n      const value = opts[key]\r\n      // TODO add processing for tree structure\r\n      if (\r\n        !(value instanceof Object) &&\r\n        typeof defOpts[key] !== 'undefined' &&\r\n        defOpts[key] !== value\r\n      ) {\r\n        optsStr.push(`${key}:${value}`)\r\n      }\r\n    }\r\n    if (optsStr.length > 0) {\r\n      return `!${optsStr.join()}`\r\n    }\r\n  }\r\n  return ''\r\n}\r\n\r\nfunction isAlmostPlainObject(o) {\r\n  if (isPlainObject(o)) {\r\n    return true\r\n  }\r\n  const proto = o && Object.getPrototypeOf(o)\r\n  return (\r\n    !!proto &&\r\n    !Object.hasOwn(proto, 'constructor') &&\r\n    isAlmostPlainObject(proto)\r\n  )\r\n}\r\n\r\n/**\r\n * Build an object that contains properties (and subproperties) of `src` different from those\r\n * in `dst`. Objects are parsed recursively, other values (including arrays) are compared for\r\n * equality using `isEqual()`.\r\n * @param {!object} src - a new object to compare, may contain changed or new properties\r\n * @param {!object} dst - an old reference object\r\n */\r\nfunction objectsDiff(src, dst) {\r\n  const diff = {}\r\n  forIn(src, (srcValue, key) => {\r\n    const dstValue = dst[key]\r\n    if (isAlmostPlainObject(srcValue) && isAlmostPlainObject(dstValue)) {\r\n      const deepDiff = objectsDiff(srcValue, dstValue)\r\n      if (!isEmpty(deepDiff)) {\r\n        diff[key] = deepDiff\r\n      }\r\n    } else if (!isEqual(srcValue, dstValue)) {\r\n      diff[key] = srcValue\r\n    }\r\n  })\r\n  return diff\r\n}\r\n\r\nfunction forInRecursive(object, callback) {\r\n  function iterateThrough(obj, prefix) {\r\n    forIn(obj, (value, key) => {\r\n      const newPref = prefix + (prefix.length > 0 ? '.' : '')\r\n      if (value instanceof Object) {\r\n        iterateThrough(value, newPref + key)\r\n      } else if (value !== undefined) {\r\n        callback(value, newPref + key)\r\n      }\r\n    })\r\n  }\r\n  iterateThrough(object, '')\r\n}\r\n\r\nfunction enquoteString(value) {\r\n  if (isString(value)) {\r\n    return `\"${value.replace(/\"/g, '\\\\\"')}\"`\r\n  }\r\n  return value\r\n}\r\n\r\nfunction unquoteString(value) {\r\n  if (!isString(value)) {\r\n    return value\r\n  }\r\n  if (value[0] === '\"' && value[value.length - 1] === '\"') {\r\n    value = value.slice(1, value.length - 1)\r\n    return value.replace(/\\\\\"/g, '\"')\r\n  }\r\n  if (value[0] === \"'\" && value[value.length - 1] === \"'\") {\r\n    value = value.slice(1, value.length - 1)\r\n    return value.replace(/\\\\'/g, \"'\")\r\n  }\r\n  throw new SyntaxError(\"Incorrect string format, can't unqute it\")\r\n}\r\n\r\nfunction getFileExtension(fileName) {\r\n  return fileName.slice(Math.max(0, fileName.lastIndexOf('.')) || Infinity)\r\n}\r\n\r\nfunction splitFileName(fileName) {\r\n  const ext = getFileExtension(fileName)\r\n  const name = fileName.slice(0, fileName.length - ext.length)\r\n  return [name, ext]\r\n}\r\n\r\nfunction dataUrlToBlob(url) {\r\n  const parts = url.split(/[:;,]/)\r\n  const partsCount = parts.length\r\n  if (partsCount >= 3 && parts[partsCount - 2] === 'base64') {\r\n    return new Blob([bytesFromBase64(parts[partsCount - 1])])\r\n  }\r\n  return null\r\n}\r\n\r\nfunction getBrowser() {\r\n  if (\r\n    navigator.vendor &&\r\n    navigator.vendor.indexOf('Apple') > -1 &&\r\n    navigator.userAgent &&\r\n    navigator.userAgent.indexOf('CriOS') === -1 &&\r\n    navigator.userAgent.indexOf('FxiOS') === -1\r\n  ) {\r\n    return browserType.SAFARI\r\n  }\r\n  return browserType.DEFAULT\r\n}\r\n\r\nfunction shotOpen(url) {\r\n  if (typeof window !== 'undefined') {\r\n    window\r\n      .open()\r\n      .document.write(`<body style=\"margin:0\"><img src=\"${url}\" /></body>`)\r\n  }\r\n}\r\n\r\nfunction shotDownload(dataUrl, filename) {\r\n  if (!dataUrl || dataUrl.substr(0, 5) !== 'data:') {\r\n    return\r\n  }\r\n  if (!filename) {\r\n    filename = ['screenshot-', +new Date(), '.png'].join('')\r\n  }\r\n  if (\r\n    typeof window !== 'undefined' &&\r\n    window.navigator &&\r\n    window.navigator.msSaveBlob\r\n  ) {\r\n    window.navigator.msSaveBlob(dataUrlToBlob(dataUrl), filename)\r\n  } else if (typeof document !== 'undefined') {\r\n    const link = document.createElement('a')\r\n    link.download = filename\r\n    link.innerHTML = 'download'\r\n    link.href = window.URL.createObjectURL(dataUrlToBlob(dataUrl))\r\n    document.body.appendChild(link)\r\n    link.click()\r\n    document.body.removeChild(link)\r\n  }\r\n}\r\n\r\nfunction download(data, filename, type) {\r\n  const blobData = new Blob([data])\r\n\r\n  if (!filename) {\r\n    filename = ['data', +new Date()].join('')\r\n  }\r\n\r\n  if (!type) {\r\n    filename += blobData.type || '.bin'\r\n  } else {\r\n    filename += `.${type}`\r\n  }\r\n\r\n  if (\r\n    typeof window !== 'undefined' &&\r\n    window.navigator &&\r\n    window.navigator.msSaveBlob\r\n  ) {\r\n    window.navigator.msSaveBlob(blobData, filename)\r\n  } else if (typeof document !== 'undefined') {\r\n    const link = document.createElement('a')\r\n    link.download = filename\r\n    link.innerHTML = 'download'\r\n    link.href = window.URL.createObjectURL(blobData)\r\n    document.body.appendChild(link)\r\n    link.click()\r\n    document.body.removeChild(link)\r\n  }\r\n}\r\n\r\nfunction copySubArrays(src, dst, indices, itemSize) {\r\n  for (let i = 0, n = indices.length; i < n; ++i) {\r\n    for (let j = 0; j < itemSize; ++j) {\r\n      dst[i * itemSize + j] = src[indices[i] * itemSize + j]\r\n    }\r\n  }\r\n}\r\n\r\nfunction shallowCloneNode(node) {\r\n  const newNode = node.cloneNode(true)\r\n  newNode.worldPos = node.worldPos\r\n  // .style property is readonly, so \"newNode.style = node.style;\" won't work (and we don't need it, right?)\r\n  return newNode\r\n}\r\n\r\nconst unquotedStringRE = /^[a-zA-Z0-9_]*$/\r\nconst enquoteHelper = ['\"', '', '\"']\r\n\r\n// verify and correct if needed selctor identifier\r\nfunction correctSelectorIdentifier(value) {\r\n  if (unquotedStringRE.test(value)) {\r\n    return value\r\n  }\r\n  // quote incorrect identifier\r\n  enquoteHelper[1] = value\r\n  return enquoteHelper.join('')\r\n}\r\n\r\n/**\r\n * Concatenates two TypedArray. Doesn't check null refs o type equality\r\n * Attention! It must be use very rarely because requires memory reallocation every time. Use MergeTypedArraysUnsafe to\r\n * unite array of subarrays.\r\n * @param{TypedArray} first  - destination array\r\n * @param{TypedArray} second - source array\r\n * @returns{TypedArray} resulting concatenated array\r\n */\r\nfunction concatTypedArraysUnsafe(first, second) {\r\n  const result = new first.constructor(first.length + second.length)\r\n  result.set(first)\r\n  result.set(second, first.length)\r\n  return result\r\n}\r\n\r\n/**\r\n * Merges array of TypedArray into TypedArray. Doesn't check null refs o type equality\r\n * @param{array} array  - source array of subarrays\r\n * @returns{TypedArray} resulting merged array\r\n */\r\nfunction mergeTypedArraysUnsafe(array) {\r\n  if (array.length <= 0) {\r\n    return null\r\n  }\r\n  // count the size\r\n  const size = array.reduce((acc, cur) => acc + cur.length, 0)\r\n  // create combined array\r\n  const result = new array[0].constructor(size)\r\n  for (let i = 0, start = 0; i < array.length; i++) {\r\n    const count = array[i].length\r\n    result.set(array[i], start)\r\n    start += count\r\n  }\r\n  return result\r\n}\r\n\r\n// ----------------------------------------------------------------------------\r\n// Exports\r\n\r\nexport default {\r\n  browserType,\r\n  encodeQueryComponent,\r\n  decodeQueryComponent,\r\n  getUrlParameters,\r\n  getUrlParametersAsDict,\r\n  resolveURL,\r\n  generateRegExp,\r\n  createElement,\r\n  deriveClass,\r\n  deriveDeep,\r\n  hexColor,\r\n  DebugTracer,\r\n  OutOfMemoryError,\r\n  allocateTyped,\r\n  bytesFromBase64,\r\n  bytesToBase64,\r\n  arrayFromBase64,\r\n  arrayToBase64,\r\n  compareOptionsWithDefaults,\r\n  objectsDiff,\r\n  forInRecursive,\r\n  enquoteString,\r\n  unquoteString,\r\n  getBrowser,\r\n  shotOpen,\r\n  shotDownload,\r\n  copySubArrays,\r\n  shallowCloneNode,\r\n  correctSelectorIdentifier,\r\n  getFileExtension,\r\n  splitFileName,\r\n  download,\r\n  concatTypedArraysUnsafe,\r\n  mergeTypedArraysUnsafe\r\n}\r\n","import { Miew } from 'miew'\r\nimport { parser as parsercli } from './MiewCLIParser'\r\nimport clihelp from './MiewCLIHelp'\r\nimport logger from './logger'\r\nimport { slice, sortBy, get, keys, isUndefined, set, assign } from 'lodash'\r\nimport utils from './utils'\r\n\r\nconst {\r\n  chem: { selectors },\r\n  modes,\r\n  colorers,\r\n  materials,\r\n  palettes,\r\n  options,\r\n  settings\r\n} = Miew\r\n\r\nfunction None() {}\r\n\r\nconst NULL = (function () {\r\n  const obj = new None()\r\n  return function () {\r\n    return obj\r\n  }\r\n})()\r\n\r\nclass RepresentationMap {\r\n  constructor() {\r\n    this.representationMap = {}\r\n    this.representationID = {}\r\n  }\r\n\r\n  get(strId) {\r\n    return (\r\n      this.representationMap[strId] ||\r\n      this.representationID[strId] ||\r\n      '<no name>'\r\n    )\r\n  }\r\n\r\n  add(strId, index) {\r\n    if (strId === -1) {\r\n      return 'Can not create representation: there is no data'\r\n    }\r\n\r\n    if (index !== undefined) {\r\n      if (!Object.hasOwn(this.representationMap, strId)) {\r\n        this.representationMap[strId.toString()] = index\r\n        this.representationID[index] = strId.toString()\r\n      } else {\r\n        return 'This name has already existed, registered without name'\r\n      }\r\n    }\r\n    return `Representation ${strId} successfully added`\r\n  }\r\n\r\n  remove(index) {\r\n    if (index && Object.hasOwn(this.representationID, index)) {\r\n      delete this.representationMap[this.representationID[index]]\r\n      delete this.representationID[index]\r\n    }\r\n\r\n    const sortedKeys = Object.keys(this.representationID).sort()\r\n    for (const i in sortedKeys) {\r\n      if (Object.hasOwn(sortedKeys, i)) {\r\n        const id = sortedKeys[i]\r\n        if (id > index) {\r\n          this.representationID[id - 1] = this.representationID[id]\r\n          this.representationMap[this.representationID[id]] -= 1\r\n          delete this.representationID[id]\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  clear() {\r\n    this.representationMap = {}\r\n    this.representationID = {}\r\n  }\r\n}\r\n\r\nconst representationsStorage = new RepresentationMap()\r\n\r\nfunction keyRemap(key) {\r\n  const keys = {\r\n    s: 'selector',\r\n    m: 'mode',\r\n    c: 'colorer',\r\n    mt: 'material',\r\n    mode: 'modes',\r\n    color: 'colorers',\r\n    colorer: 'colorers',\r\n    select: 'selector',\r\n    material: 'materials',\r\n    selector: 'selector'\r\n  }\r\n  const ans = keys[key]\r\n  return ans === undefined ? key : ans\r\n}\r\n\r\nclass CLIUtils {\r\n  list(miew, repMap, key) {\r\n    let ret = ''\r\n    if (miew && repMap !== undefined) {\r\n      if (key === undefined || key === '-e') {\r\n        const count = miew.repCount()\r\n\r\n        for (let i = 0; i < count; i++) {\r\n          ret += this.listRep(miew, repMap, i, key)\r\n        }\r\n      }\r\n    }\r\n    return ret\r\n  }\r\n\r\n  listRep(miew, repMap, repIndex, key) {\r\n    let ret = ''\r\n    const rep = miew.repGet(repIndex)\r\n    if (!rep) {\r\n      logger.warn(`Rep ${repIndex} does not exist!`)\r\n      return ret\r\n    }\r\n    const index = repIndex\r\n    const repName = repMap.get(index)\r\n\r\n    const { mode, colorer } = rep\r\n    const selectionStr = rep.selectorString\r\n    const material = rep.materialPreset\r\n\r\n    ret += `#${index} : ${mode.name}${\r\n      repName === '<no name>' ? '' : `, ${repName}`\r\n    }\\n`\r\n\r\n    if (key !== undefined) {\r\n      ret += `    selection : \"${selectionStr}\"\\n`\r\n      ret += `    mode      : (${mode.id}), ${mode.name}\\n`\r\n      ret += `    colorer   : (${colorer.id}), ${colorer.name}\\n`\r\n      ret += `    material  : (${material.id}), ${material.name}\\n`\r\n    }\r\n\r\n    return ret\r\n  }\r\n\r\n  listSelector(miew, context) {\r\n    let ret = ''\r\n\r\n    for (const k in context) {\r\n      if (Object.hasOwn(context, k)) {\r\n        ret += `${k} : \"${context[k]}\"\\n`\r\n      }\r\n    }\r\n\r\n    return ret\r\n  }\r\n\r\n  listObjs(miew) {\r\n    const objs = miew._objects\r\n\r\n    if (!objs || !Array.isArray(objs) || objs.length === 0) {\r\n      return 'There are no objects on the scene'\r\n    }\r\n\r\n    const strList = []\r\n    for (let i = 0, n = objs.length; i < n; ++i) {\r\n      strList[i] = `${i}: ${objs[i].toString()}`\r\n    }\r\n\r\n    return strList.join('\\n')\r\n  }\r\n\r\n  joinHelpStr(helpData) {\r\n    if (helpData instanceof Array) {\r\n      return helpData.join('\\n')\r\n    }\r\n    return helpData\r\n  }\r\n\r\n  help(path) {\r\n    if (isUndefined(path)) {\r\n      return `${this.joinHelpStr(clihelp.$help)}\\n${slice(\r\n        sortBy(keys(clihelp)),\r\n        1\r\n      ).join(', ')}\\n`\r\n    }\r\n\r\n    const helpItem = get(clihelp, path)\r\n    return isUndefined(helpItem)\r\n      ? this.help()\r\n      : `${this.joinHelpStr(helpItem.$help)}\\n`\r\n  }\r\n\r\n  load(miew, arg) {\r\n    if (miew === undefined || arg === undefined || arg === '-f') {\r\n      return\r\n    }\r\n    miew.awaitWhileCMDisInProcess()\r\n    const finish = () => miew.finishAwaitingCMDInProcess()\r\n    miew.load(arg).then(finish, finish)\r\n  }\r\n\r\n  checkArg(key, arg, modificate) {\r\n    if (key !== undefined && arg !== undefined) {\r\n      if (keyRemap(key) === 'selector') {\r\n        const res = selectors.parse(arg)\r\n\r\n        if (res.error !== undefined) {\r\n          const selExc = { message: res.error }\r\n          throw selExc\r\n        }\r\n\r\n        if (modificate !== undefined && modificate) {\r\n          return res.selector\r\n        }\r\n        return arg\r\n      }\r\n\r\n      const modificators = {\r\n        colorers,\r\n        modes,\r\n        materials\r\n      }\r\n\r\n      let modificator = key\r\n      let temp\r\n      while (modificator !== temp) {\r\n        temp = modificator\r\n        modificator = keyRemap(temp)\r\n      }\r\n\r\n      if (modificators[modificator].get(arg) === undefined) {\r\n        const exc = { message: `${arg} is not existed in ${modificator}` }\r\n        throw exc\r\n      }\r\n      return arg\r\n    }\r\n    return NULL\r\n  }\r\n\r\n  propagateProp(path, arg) {\r\n    if (path !== undefined) {\r\n      let argExc = {}\r\n      const adapter = options.adapters[typeof get(settings.defaults, path)]\r\n      if (adapter === undefined) {\r\n        const pathExc = { message: `${path} is not existed` }\r\n        throw pathExc\r\n      }\r\n\r\n      if (\r\n        (path.endsWith('.color') ||\r\n          path.endsWith('.baseColor') ||\r\n          path.endsWith('.EL.carbon')) &&\r\n        typeof arg !== 'number'\r\n      ) {\r\n        arg = palettes.get(settings.now.palette).getNamedColor(arg)\r\n      }\r\n\r\n      if (path.endsWith('.fg') || path.endsWith('.bg')) {\r\n        if (typeof arg !== 'number') {\r\n          const val = palettes\r\n            .get(settings.now.palette)\r\n            .getNamedColor(arg, true)\r\n          if (val !== undefined) {\r\n            arg = `0x${val.toString(16)}`\r\n          }\r\n        } else {\r\n          arg = `0x${arg.toString(16)}`\r\n        }\r\n      }\r\n\r\n      if (path.endsWith('.template')) {\r\n        arg = arg.replace(/\\\\n/g, '\\n') // NOSONAR\r\n      }\r\n\r\n      if (\r\n        arg !== undefined &&\r\n        adapter(arg) !== arg &&\r\n        adapter(arg) !== arg > 0\r\n      ) {\r\n        argExc = {\r\n          message: `${path} must be a \"${typeof get(settings.defaults, path)}\"`\r\n        }\r\n        throw argExc\r\n      }\r\n    }\r\n    return arg\r\n  }\r\n\r\n  unquoteString(value) {\r\n    return utils.unquoteString(value)\r\n  }\r\n}\r\n// repIndexOrRepMap could be RepresentationMap or index\r\n\r\nconst utilFunctions = new CLIUtils()\r\n\r\nfunction CreateObjectPair(a, b) {\r\n  const obj = {}\r\n  obj[a] = b\r\n  return obj\r\n}\r\n\r\nfunction ArgList(arg) {\r\n  if (arg instanceof this.constructor) {\r\n    return arg\r\n  }\r\n  if (arg instanceof Array) {\r\n    this._values = arg.slice(0)\r\n  } else if (arg) {\r\n    this._values = [arg]\r\n  } else {\r\n    this._values = []\r\n  }\r\n}\r\n\r\nArgList.prototype.append = function (value) {\r\n  const values = this._values\r\n  values[values.length] = value\r\n  return this\r\n}\r\n\r\nArgList.prototype.remove = function (value) {\r\n  const values = this._values\r\n  const index = values.indexOf(value)\r\n  if (index >= 0) {\r\n    values.splice(index, 1)\r\n  }\r\n  return this\r\n}\r\n\r\nArgList.prototype.toJSO = function (cliUtils, cmd, arg) {\r\n  const res = {}\r\n\r\n  const list = this._values\r\n  for (let i = 0, n = list.length; i < n; ++i) {\r\n    set(\r\n      res,\r\n      list[i].id,\r\n      cliUtils.propagateProp(\r\n        `${keyRemap(cmd)}.${arg}.${list[i].id}`,\r\n        list[i].val\r\n      )\r\n    )\r\n  }\r\n\r\n  return res\r\n}\r\n\r\nfunction Arg(_id, _val) {\r\n  this.id = _id\r\n  this.val = _val\r\n}\r\n\r\nconst cliutils = Object.create({})\r\n\r\ncliutils.Arg = Arg\r\ncliutils.ArgList = ArgList\r\n\r\ncliutils.miew = null\r\ncliutils.echo = null\r\ncliutils.representations = representationsStorage\r\ncliutils.utils = utilFunctions\r\n\r\ncliutils.assign = assign\r\ncliutils.CreateObjectPair = CreateObjectPair\r\ncliutils.keyRemap = keyRemap\r\ncliutils.Context = selectors.Context\r\ncliutils.ClearContext = selectors.ClearContext\r\n\r\ncliutils.NULL = NULL\r\n\r\ncliutils.notimplemented = function () {\r\n  return this.NULL\r\n}\r\n\r\nparsercli.yy = cliutils\r\n// workaround for incorrect JISON parser generator for AMD module\r\nparsercli.yy.parseError = parsercli.parseError\r\n\r\nexport const getMiewWithCli = (miewInstance) => {\r\n  const obj = Object.create(miewInstance)\r\n\r\n  obj.script = function (script, _printCallback, _errorCallback) {\r\n    parsercli.yy.miew = obj\r\n    parsercli.yy.echo = _printCallback\r\n    parsercli.yy.error = _errorCallback\r\n    if (obj.cmdQueue === undefined) {\r\n      obj.cmdQueue = []\r\n    }\r\n    if (obj.commandInAction === undefined) {\r\n      obj.commandInAction = false\r\n    }\r\n\r\n    obj.cmdQueue = obj.cmdQueue.concat(script.split('\\n'))\r\n  }\r\n\r\n  obj.awaitWhileCMDisInProcess = function () {\r\n    obj.commandInAction = true\r\n  }\r\n\r\n  obj.finishAwaitingCMDInProcess = function () {\r\n    obj.commandInAction = false\r\n  }\r\n\r\n  obj.isScriptingCommandAvailable = function () {\r\n    return (\r\n      obj.commandInAction !== undefined &&\r\n      !obj.commandInAction &&\r\n      obj.cmdQueue !== undefined &&\r\n      obj.cmdQueue.length > 0\r\n    )\r\n  }\r\n\r\n  obj.callNextCmd = function () {\r\n    if (obj.isScriptingCommandAvailable()) {\r\n      const cmd = obj.cmdQueue.shift()\r\n      const res = {}\r\n      res.success = false\r\n      try {\r\n        parsercli.parse(cmd)\r\n        res.success = true\r\n      } catch (e) {\r\n        res.error = e.message\r\n        parsercli.yy.error(res.error)\r\n        obj.finishAwaitingCMDInProcess()\r\n      }\r\n      return res\r\n    }\r\n    return ''\r\n  }\r\n\r\n  obj._onUpdate = function () {\r\n    if (\r\n      obj.isScriptingCommandAvailable !== undefined &&\r\n      obj.isScriptingCommandAvailable() &&\r\n      !obj._building\r\n    ) {\r\n      obj.callNextCmd()\r\n    }\r\n\r\n    obj._objectControls.update()\r\n\r\n    obj._forEachComplexVisual((visual) => {\r\n      visual.getComplex().update()\r\n    })\r\n\r\n    if (\r\n      settings.now.autobuild &&\r\n      !obj._loading.length &&\r\n      !obj._building &&\r\n      obj._needRebuild()\r\n    ) {\r\n      obj.rebuild()\r\n    }\r\n\r\n    if (!obj._loading.length && !obj._building && !obj._needRebuild()) {\r\n      obj._updateView()\r\n    }\r\n\r\n    obj._updateFog()\r\n\r\n    if (obj._gfx.renderer.xr.enabled) {\r\n      obj.webVR.updateMoleculeScale()\r\n    }\r\n  }\r\n\r\n  return obj\r\n}\r\n"],"names":["_typeof_1","commonjsHelpers.createCommonjsModule","module","_typeof","obj","exports","Symbol","iterator","constructor","prototype","__esModule","commonjsHelpers.getDefaultExportFromCjs","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","protoProps","staticProps","parser","o","k","v","l","$V0","$V1","$V2","$V3","$V4","$V5","$V6","$V7","$V8","$V9","$Va","$Vb","$Vc","$Vd","$Ve","$Vf","$Vg","$Vh","$Vi","$Vj","$Vk","$Vl","$Vm","$Vn","$Vo","$Vp","$Vq","$Vr","$Vs","$Vt","$Vu","$Vv","$Vw","$Vx","$Vy","$Vz","$VA","$VB","$VC","$VD","$VE","$VF","$VG","$VH","$VI","$VJ","$VK","$VL","$VM","$VN","$VO","$VP","$VQ","$VR","$VS","$VT","$VU","$VV","$VW","$VX","$VY","$VZ","$V_","$V$","$V01","$V11","$V21","$V31","$V41","$V51","$V61","trace","yy","symbols_","error","Program","Command","EOF","RESET","BUILD","ALL","HELP","Path","MOTM","OneArgCommand","GET","STRING","SET","Value","SET_SAVE","SET_RESTORE","SET_RESET","PRESET","AddRepresentation","EditRepresentation","REMOVE","RepresentationReference","HIDE","SHOW","LIST","EXPAND_KEY","SELECTOR_KEY","SELECT","AS","WordAll","SELECTOR","WITHIN","NUMBER","OF","MATERIAL","IDENTIFIER","ModeCMD","ColorCMD","VIEW","BASE_64","UNIT","DSSP","SCALE","ROTATE","AxesList","TRANSLATE","CENTER","GetURLBranch","Screenshot","LINE","ArgList","LISTOBJ","REMOVEOBJ","URL","VIEW_KEY","SCREENSHOT","LOAD","Url","FILE_KEY","ADD","Description","REP","MODE","COLOR","Descriptor","RepresentationOwnProperty","RepresentationOwnPropertyOpts","DESC_KEY","DESC_KEY_OPTS","AxesArg","DESC_KEY_AXES","Arg","PathWoDescKey","HEX","BOOL","Word","CommandSetWoDESC_KEY","DescKeys","CLEAR","FILE_LIST","FILE_REGISTER","FILE_DELETE","PRESET_ADD","PRESET_DELETE","PRESET_UPDATE","PRESET_RENAME","PRESET_OPEN","CREATE_SCENARIO","RESET_SCENARIO","DELETE_SCENARIO","ADD_SCENARIO_ITEM","LIST_SCENARIO","PDB_KEY","DELAY_KEY","PRST_KEY","DESCRIPTION_KEY","CommandSet","PresetPath","HexOrNumber","$accept","$end","terminals_","productions_","performAction","yytext","yyleng","yylineno","yystate","$$","_$","$0","$","miew","reset","ClearContext","resetReps","rebuild","rebuildAll","echo","utils","help","toString","motm","propagateProp","get","set","saveSettings","restoreSettings","resetSettings","applyPreset","repRemove","representations","remove","repHide","listRep","list","listSelector","Context","select","checkArg","toLowerCase","rep","repCurrent","selector","within","Number","material","toUpperCase","view","changeUnit","dssp","scale","n","rotate","Math","PI","translate","center","addObject","type","params","opts","toJSO","listObjs","removeObject","getURL","settings","screenshotSave","load","clear","add","repAdd","mode","Array","colorer","assign","CreateObjectPair","val","create","keyRemap","concat","append","parseInt","JSON","parse","String","table","defaultActions","parseError","str","hash","recoverable","Error","input","self","this","stack","tstack","vstack","lstack","TERROR","args","slice","call","arguments","lexer","sharedState","hasOwn","setInput","yylloc","yyloc","push","ranges","options","lex","token","pop","getPrototypeOf","symbol","state","action","r","p","len","newState","expected","yyval","errStr","showPosition","join","text","match","line","loc","first_line","last_line","first_column","last_column","range","apply","_input","_more","_backtrack","done","matched","conditionStack","offset","ch","unput","lines","split","substr","oldLines","more","reject","backtrack_lexer","less","pastInput","past","replace","upcomingInput","next","pre","c","test_match","indexed_rule","backup","matches","tempMatch","index","rules","_currentRules","flex","begin","condition","popState","conditions","topState","abs","pushState","stateStackSize","yy_","$avoiding_name_collisions","YY_START","unquoteString","INITIAL","inclusive","Parser","MiewCLIParser","modeIdDesc","$help","BS","CA","LN","LC","VW","TR","TU","SA","QS","SE","TX","colorDesc","UN","materialDesc","addRepDesc","s","m","mt","setGetParameterDesc","modes","colorers","PDBID","f","REP_NAME","DESCRIPTION","REP_INDEX","EXPRESSION","MODE_ID","color","COLORER_ID","MATERIAL_ID","build","del","hide","show","PARAMETER","set_save","set_restore","set_reset","preset","unit","ENCODED_VIEW","url","screenshot","removeobj","listobj","isUndefOrEqual","param","value","EventDispatcher","_handlers","addEventListener","callback","context","handlers","undefined","find","par","removeEventListener","forEach","handler","ev","values","omitBy","dispatchEvent","event","priorities","debug","info","report","warn","Logger","console","_priority","verify","number","isNumber","instantiate","findKey","_this","level","levels","keys","message","priority","_message","setPrototypeOf","_setPrototypeOf","__proto__","subClass","superClass","assertThisInitialized","ReferenceError","possibleConstructorReturn","require$$0","_getPrototypeOf","isNativeFunction","fn","Function","indexOf","isNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_construct","Parent","Class","a","bind","wrapNativeSuper","_wrapNativeSuper","_cache","Map","has","Wrapper","arrayWithHoles","arr","isArray","iterableToArrayLimit","_i","_s","_e","_arr","_n","_d","err","arrayLikeToArray","arr2","unsupportedIterableToArray","minLen","name","from","test","nonIterableRest","browserType","DEFAULT","SAFARI","decodeQueryComponent","decodeURIComponent","getUrlParameters","query","window","location","search","substring","result","exec","DebugTracer","namespace","enabled","enable","on","indent","methods","wrap","method_","name_","spaces","logger","method","OutOfMemoryError","bytesToBase64","buffer","bytes","Uint8Array","binary","byteLength","fromCharCode","btoa","bytesFromBase64","atob","charCodeAt","isAlmostPlainObject","isPlainObject","proto","getFileExtension","fileName","max","lastIndexOf","Infinity","dataUrlToBlob","parts","partsCount","Blob","unquotedStringRE","enquoteHelper","encodeQueryComponent","excludeExp","encodeURIComponent","code","getUrlParametersAsDict","resolveURL","href","document","anchor","createElement","generateRegExp","symbolStr","symbolList","listStr","RegExp","tag","attrs","content","element","setAttribute","child","appendChild","createTextNode","HTMLElement","deriveClass","cls","base","members","statics","deriveDeep","needZeroOwnProperties","res","copy","hexColor","hex","allocateTyped","TypedArrayName","size","RangeError","arrayFromBase64","TypedArrayClass","arrayToBase64","array","compareOptionsWithDefaults","defOpts","optsStr","objectsDiff","src","dst","diff","forIn","srcValue","dstValue","deepDiff","isEmpty","isEqual","forInRecursive","object","iterateThrough","prefix","newPref","enquoteString","isString","SyntaxError","getBrowser","navigator","vendor","userAgent","shotOpen","open","write","shotDownload","dataUrl","filename","Date","msSaveBlob","link","download","innerHTML","createObjectURL","body","click","removeChild","copySubArrays","indices","itemSize","j","shallowCloneNode","node","newNode","cloneNode","worldPos","correctSelectorIdentifier","splitFileName","ext","data","blobData","concatTypedArraysUnsafe","first","second","mergeTypedArraysUnsafe","reduce","acc","cur","start","count","selectors","Miew","chem","materials","palettes","None","NULL","representationsStorage","representationMap","representationID","strId","sortedKeys","sort","id","ans","CLIUtils","repMap","ret","repCount","repIndex","repGet","repName","selectionStr","selectorString","materialPreset","objs","_objects","strList","helpData","path","isUndefined","joinHelpStr","clihelp","sortBy","helpItem","arg","awaitWhileCMDisInProcess","finish","finishAwaitingCMDInProcess","then","modificate","temp","modificators","modificator","adapter","adapters","defaults","endsWith","now","palette","getNamedColor","utilFunctions","_values","splice","cliUtils","cmd","cliutils","_id","_val","b","notimplemented","parsercli","miewInstance","script","_printCallback","_errorCallback","cmdQueue","commandInAction","isScriptingCommandAvailable","callNextCmd","shift","success","_onUpdate","_building","_objectControls","update","_forEachComplexVisual","visual","getComplex","autobuild","_loading","_needRebuild","_updateView","_updateFog","_gfx","renderer","xr","webVR","updateMoleculeScale"],"mappings":"uWAEA,IAAIA,EAAYC,GAAqC,SAAUC,GAC/D,SAASC,EAAQC,GAGf,OAAQF,EAAOG,QAAUF,EAAU,mBAAqBG,QAAU,iBAAmBA,OAAOC,SAAW,SAAUH,GAC/G,cAAcA,GACZ,SAAUA,GACZ,OAAOA,GAAO,mBAAqBE,QAAUF,EAAII,cAAgBF,QAAUF,IAAQE,OAAOG,UAAY,gBAAkBL,GACvHF,EAAOG,QAAQK,YAAa,EAAMR,EAAOG,QAAiB,QAAIH,EAAOG,QAAUF,EAAQC,GAG5FF,EAAOG,QAAUF,EAASD,EAAOG,QAAQK,YAAa,EAAMR,EAAOG,QAAiB,QAAIH,EAAOG,aAGnEM,EAAwCX,KCJxCW,EAVPV,GAAqC,SAAUC,GAOpEA,EAAOG,QANP,SAAyBO,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIC,UAAU,sCAIUZ,EAAOG,QAAQK,YAAa,EAAMR,EAAOG,QAAiB,QAAIH,EAAOG,cCgB3EM,EAvBVV,GAAqC,SAAUC,GACjE,SAASa,EAAkBC,EAAQC,GACjC,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CACrC,IAAIE,EAAaH,EAAMC,GACvBE,EAAWC,WAAaD,EAAWC,aAAc,EACjDD,EAAWE,cAAe,EACtB,UAAWF,IAAYA,EAAWG,UAAW,GACjDC,OAAOC,eAAeT,EAAQI,EAAWM,IAAKN,IAalDlB,EAAOG,QATP,SAAsBQ,EAAac,EAAYC,GAM7C,OALID,GAAYZ,EAAkBF,EAAYJ,UAAWkB,GACrDC,GAAab,EAAkBF,EAAae,GAChDJ,OAAOC,eAAeZ,EAAa,YAAa,CAC9CU,UAAU,IAELV,GAGsBX,EAAOG,QAAQK,YAAa,EAAMR,EAAOG,QAAiB,QAAIH,EAAOG,YCqDhGwB,EAAU,eACRC,EAAI,SAAUC,EAAGC,EAAGF,EAAGG,OAClBH,EAAIA,GAAK,GAAIG,EAAIF,EAAEZ,OAAQc,IAAKH,EAAEC,EAAEE,IAAMD,UACxCF,GAETI,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,KACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,EAAM,CAAC,EAAG,IACVC,GAAM,CAAC,EAAG,IACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAM,CAAC,EAAG,KACVC,GAAO,CAAC,EAAG,KACXC,GAAO,CACL,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,KAElBC,GAAO,CACL,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,KAEtBC,GAAO,CACL,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GACpE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAElDC,GAAO,CAAC,EAAG,GAAI,IACfC,GAAO,CAAC,EAAG,IACXC,GAAO,CAAC,GAAI,KACV3E,GAAS,CACX4E,MAAO,aACPC,GAAI,GACJC,SAAU,CACRC,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,IAAK,EACLC,MAAO,EACPC,MAAO,EACPC,IAAK,EACLC,KAAM,EACNC,KAAM,GACNC,KAAM,GACNC,cAAe,GACfC,IAAK,GACLC,OAAQ,GACRC,IAAK,GACLC,MAAO,GACPC,SAAU,GACVC,YAAa,GACbC,UAAW,GACXC,OAAQ,GACRC,kBAAmB,GACnBC,mBAAoB,GACpBC,OAAQ,GACRC,wBAAyB,GACzBC,KAAM,GACNC,KAAM,GACNC,KAAM,GACNC,WAAY,GACZC,aAAc,GACdC,OAAQ,GACRC,GAAI,GACJC,QAAS,GACTC,SAAU,GACVC,OAAQ,GACRC,OAAQ,GACRC,GAAI,GACJC,SAAU,GACVC,WAAY,GACZC,QAAS,GACTC,SAAU,GACVC,KAAM,GACNC,QAAS,GACTC,KAAM,GACNC,KAAM,GACNC,MAAO,GACPC,OAAQ,GACRC,SAAU,GACVC,UAAW,GACXC,OAAQ,GACRC,aAAc,GACdC,WAAY,GACZC,KAAM,GACNC,QAAS,GACTC,QAAS,GACTC,UAAW,GACXC,IAAK,GACLC,SAAU,GACVC,WAAY,GACZC,KAAM,GACNC,IAAK,GACLC,SAAU,GACVC,IAAK,GACLC,YAAa,GACbC,IAAK,GACLC,KAAM,GACNC,MAAO,GACPC,WAAY,GACZC,0BAA2B,GAC3BC,8BAA+B,GAC/BC,SAAU,OACL,GACLC,cAAe,GACfC,QAAS,GACTC,cAAe,GACfC,IAAK,GACLC,cAAe,GACfC,IAAK,GACLC,KAAM,GACNC,KAAM,GACNC,qBAAsB,GACtBC,SAAU,GACVC,MAAO,GACPC,UAAW,GACXC,cAAe,GACfC,YAAa,GACbC,WAAY,GACZC,cAAe,GACfC,cAAe,GACfC,cAAe,GACfC,YAAa,GACbC,gBAAiB,GACjBC,eAAgB,GAChBC,gBAAiB,GACjBC,kBAAmB,GACnBC,cAAe,GACfC,QAAS,GACTC,UAAW,GACXC,SAAU,GACVC,gBAAiB,GACjBC,WAAY,QACP,IACLC,WAAY,QACP,IACLC,YAAa,IACbC,QAAS,EACTC,KAAM,GAERC,WAAY,GACP,UACA,QACA,UACA,UACA,QACA,UACC,UACA,SACA,YACA,SACA,cACA,iBACA,eACA,YACA,YACA,UACA,UACA,UACA,gBACA,kBACA,YACA,QACA,cACA,YACA,YACA,QACA,cACA,gBACA,UACA,aACA,UACA,UACA,WACA,YACA,eACA,YACA,UACA,aACA,eACA,SACA,cACA,gBACA,UACA,cACA,SACA,SACA,UACA,WACA,cACA,OACA,mBACA,mBACA,SACA,UACA,WACA,eACA,mBACA,iBACA,gBACA,mBACA,mBACA,mBACA,iBACA,qBACA,oBACA,qBACA,uBACA,mBACA,aACA,eACA,cACA,sBACC,QACA,KAEPC,aAAc,CACZ,EACA,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,EAAG,GACJ,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,GAAI,GACL,CAAC,G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OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,KAEV,GAAK,CAAC,IACN,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,IACT,GAAK,CAAC,EAAG,IACT,GAAK,CAAC,EAAG,KAAO,CAAC,EAAG,KACpB,GACK,CAAC,EAAG,KACJrQ,IACAC,IACAC,KACC,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,MACA,MACA,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GAAK,CAAC,EAAG,IACT,GAAK,CAAC,EAAG,IACT,GACKrD,IACAC,IACAC,KACC,OACAC,KACA,CAAC,EAAG,QACJC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,MACA,MACA,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GACKrD,IACAC,IACAC,KACC,OACAC,KACA,CAAC,EAAG,QACJC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,MACA,MACA,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAASC,MAAS,OAASC,MAASC,MAASC,MAASC,IAC/D,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,IAAM,OAASC,MAASC,IACxB,IAAM,OAASD,MAASC,IACxB,IAAM,OAASD,MAASC,IACxB,GAAK,CAAC,EAAG,OAAS,OAAS,CAAC,EAAG,QAAU,CAAC,EAAG,QAAUD,MAASC,IAChE,IAAM,CAAC,EAAG,MACV,IAAM,CAAC,EAAG,MACV,IAAM,CAAC,EAAG,MACV,IAAM,CAAC,EAAG,MACV,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,QAAU,CAAC,EAAG,MACpC,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GAAK,CAAC,EAAG,KACT,IAAM,CAAC,EAAG,MACV,IAAM,OAAS,OAASC,IACxB,IAAM,OAAS,OAASA,IACxB,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GACK7D,IACAC,IACAC,KACC,OACAC,KACA,CAAC,EAAG,QACJC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,MACA,MACA,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GAAK,CAAC,EAAG,KACT,IAAM,CAAC,EAAG,MACV,IAAM,CAAC,EAAG,QAAU,CAAC,EAAG,QAAU,OAAS,CAAC,EAAG,MAC/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K,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GAAK,CAAC,EAAG,KACT,IAAM,CAAC,EAAG,MACV,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAAS,OAASP,IAC3BjE,EAAEyE,GAAM,CAAC,EAAG,KACZ,IAAM,CAAC,EAAG,MACV,GAAK,CAAC,EAAG,OAAS,OAASR,IAC3B,GAAK,CAAC,EAAG,KACT,IAAM,CAAC,EAAG,MACV,GACK7D,IACAC,IACAC,KACC,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,MACA,MACA,MACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,OACCW,IAEP,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,MACT,GAAK,CAAC,EAAG,OAAS,OAAS,OAAS,OAAS,OAASF,MAASC,IAC/D,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAAS,OAAS,OAAS,OAASD,MAASC,IACtDnE,EAAEwE,GAAM,CAAC,EAAG,KACZxE,EAAEwE,GAAM,CAAC,EAAG,IAAK,IACX,MACA,OACA,OACA,OACA,MACDpE,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,IAAM,CAAC,EAAG,MACV,IAAM,CAAC,EAAG,MACV,GAAK,CAAC,EAAG,OAAS,OAAS,OAAS,OAAS,OAASa,MAASC,IAC/D,GACK,CAAC,EAAG,MACJ/D,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GACK,CAAC,EAAG,MACJjD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GAAK,CAAC,EAAG,OAAS,CAAC,EAAG,MACtB,GACKjD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,CAAC,EAAG,QACJC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,MACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GACKrD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,MACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,IAAM,CAAC,EAAG,MACVzD,EAAEyE,GAAM,CAAC,EAAG,KACZzE,EAAEyE,GAAM,CAAC,EAAG,KACZ,GACK,CAAC,EAAG,MACJrE,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GACK,CAAC,EAAG,MACJjD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,MACCe,IAEP,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,OAAS,OAAS,OAAS,OAASF,MAASC,IACtDnE,EAAEwE,GAAM,CAAC,EAAG,IAAK,IACX,MACA,OACA,OACA,MACDpE,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAENrD,EAAEuE,GAAM,CAAC,EAAG,KACZ,IAAM,CAAC,EAAG,SAAW,CAAC,EAAG,MACzBvE,EAAE0E,GAAM,CAAC,EAAG,MACZ,IAAMhB,MAAS,OAASC,MAASC,MAASC,MAASC,IACnD,IAAMJ,MAAS,OAASC,MAASC,MAASC,MAASC,IACnD,GAAK,CAAC,EAAG,KACT,GACK,CAAC,EAAG,MACJ1D,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GACK,CAAC,EAAG,MACJjD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACTrD,EAAEqE,GAAM,CAAC,EAAG,MACZrE,EAAEqE,GAAM,CAAC,EAAG,MACZrE,EAAEqE,GAAM,CAAC,EAAG,MACZ,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,KACT,GAAK,CAAC,EAAG,MACT,IAAM,CAAC,EAAG,MACV,GACK,CAAC,EAAG,MACJjE,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GACK,CAAC,EAAG,MACJjD,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,OACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAEN,GAAK,CAAC,EAAG,OAAS,OAAS,OAAS,OAASa,MAASC,IACtDnE,EAAEuE,GAAM,CAAC,EAAG,KACZ,IAAMb,MAAS,OAASC,MAASC,MAASC,MAASC,IACnD,GACK1D,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,CAAC,EAAG,QACJC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,MACAI,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,GAENrD,EAAEwE,GAAM,CAAC,EAAG,KACZxE,EAAEuE,GAAM,CAAC,EAAG,KACZ,GACKnE,IACAC,IACAC,KACCC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACA,OACA,MACA,OACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,IAEN,GAAK,CAAC,EAAG,KACTzD,EAAEuE,GAAM,CAAC,EAAG,KACZvE,EAAE0E,GAAM,CAAC,EAAG,MACZ1E,EAAE0E,GAAM,CAAC,EAAG,MACZ,GAAK,CAAC,EAAG,MAEXgM,eAAgB,GACX,CAAC,EAAG,KACJ,CAAC,EAAG,KACJ,CAAC,EAAG,KACJ,CAAC,EAAG,MACH,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,OACJ,CAAC,EAAG,MACJ,CAAC,EAAG,OACH,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,SACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,QACJ,CAAC,EAAG,SACJ,CAAC,EAAG,QACJ,CAAC,EAAG,KAEXC,WAAY,SAAoBC,EAAKC,OAC/BA,EAAKC,YAEF,KACDhM,EAAQ,IAAIiM,MAAMH,SACtB9L,EAAM+L,KAAOA,EACP/L,OAJDH,MAAMiM,IAOfL,MAAO,SAAeS,OAChBC,EAAOC,KACTC,EAAQ,CAAC,GACTC,EAAS,GACTC,EAAS,CAAC,MACVC,EAAS,GACTb,EAAQS,KAAKT,MACblF,EAAS,GACTE,EAAW,EACXD,EAAS,EAET+F,EAAS,EACTtM,EAAM,EACJuM,EAAOF,EAAOG,MAAMC,KAAKC,UAAW,GACpCC,EAAQlS,OAAOuQ,OAAOiB,KAAKU,OAC3BC,EAAc,CAAEjN,GAAI,QACnB,IAAI3E,KAAKiR,KAAKtM,GACblF,OAAOoS,OAAOZ,KAAKtM,GAAI3E,KACzB4R,EAAYjN,GAAG3E,GAAKiR,KAAKtM,GAAG3E,IAGhC2R,EAAMG,SAASf,EAAOa,EAAYjN,IAClCiN,EAAYjN,GAAGgN,MAAQA,EACvBC,EAAYjN,GAAG7E,OAASmR,UACG,IAAhBU,EAAMI,SACfJ,EAAMI,OAAS,QAEbC,EAAQL,EAAMI,OAClBV,EAAOY,KAAKD,OACRE,EAASP,EAAMQ,SAAWR,EAAMQ,QAAQD,gBAWnCE,QACHC,QAEiB,iBADrBA,EAAQlB,EAAOmB,OAASX,EAAMS,OAASpN,KAEjCqN,aAAiB1C,QAEnB0C,GADAlB,EAASkB,GACMC,OAEjBD,EAAQrB,EAAKpM,SAASyN,IAAUA,GAE3BA,EApBgC,mBAA9BT,EAAYjN,GAAG+L,gBACnBA,WAAakB,EAAYjN,GAAG+L,gBAE5BA,WAAajR,OAAO8S,eAAetB,MAAMP,mBAmB5C8B,EAEFC,EACAC,EAEAC,EAEAC,EACAC,EACAC,EACAC,EAJAC,EAAQ,KAKG,IACXP,EAAQvB,EAAMA,EAAM9R,OAAS,GACzB6R,KAAKR,eAAegC,GACtBC,EAASzB,KAAKR,eAAegC,IAEzBD,MAAAA,IACFA,EAASJ,KAEXM,EAASlC,EAAMiC,IAAUjC,EAAMiC,GAAOD,SAElB,IAAXE,IAA2BA,EAAOtT,SAAWsT,EAAO,GAAI,KAC7DO,EAAS,OAERL,KADLG,EAAW,GACDvC,EAAMiC,GACVxB,KAAK9F,WAAWyH,IAAMA,EAAItB,GAC5ByB,EAASd,KAAK,IAAMhB,KAAK9F,WAAWyH,GAAK,KAI3CK,EADEtB,EAAMuB,aAEN,wBACC1H,EAAW,GACZ,MACAmG,EAAMuB,eACN,eACAH,EAASI,KAAK,MACd,WACClC,KAAK9F,WAAWqH,IAAWA,GAC5B,IAGA,wBACChH,EAAW,GACZ,iBACCgH,GAAUxN,EACP,eACA,KAAOiM,KAAK9F,WAAWqH,IAAWA,GAAU,UAE/C9B,WAAWuC,EAAQ,CACtBG,KAAMzB,EAAM0B,MACZhB,MAAOpB,KAAK9F,WAAWqH,IAAWA,EAClCc,KAAM3B,EAAMnG,SACZ+H,IAAKvB,EACLe,SAAUA,OAGVL,EAAO,aAAc/C,OAAS+C,EAAOtT,OAAS,QAC1C,IAAI0R,MACR,oDACE2B,EACA,YACAD,UAGEE,EAAO,SACR,EACHxB,EAAMe,KAAKO,GACXpB,EAAOa,KAAKN,EAAMrG,QAClB+F,EAAOY,KAAKN,EAAMI,QAClBb,EAAMe,KAAKS,EAAO,IAClBF,EAAS,KAEPjH,EAASoG,EAAMpG,OACfD,EAASqG,EAAMrG,OACfE,EAAWmG,EAAMnG,SACjBwG,EAAQL,EAAMI,kBASb,KACHc,EAAM5B,KAAK7F,aAAasH,EAAO,IAAI,GACnCM,EAAMnH,EAAIuF,EAAOA,EAAOhS,OAASyT,GACjCG,EAAMrH,GAAK,CACT6H,WAAYnC,EAAOA,EAAOjS,QAAUyT,GAAO,IAAIW,WAC/CC,UAAWpC,EAAOA,EAAOjS,OAAS,GAAGqU,UACrCC,aAAcrC,EAAOA,EAAOjS,QAAUyT,GAAO,IAAIa,aACjDC,YAAatC,EAAOA,EAAOjS,OAAS,GAAGuU,aAErCzB,IACFc,EAAMrH,GAAGiI,MAAQ,CACfvC,EAAOA,EAAOjS,QAAUyT,GAAO,IAAIe,MAAM,GACzCvC,EAAOA,EAAOjS,OAAS,GAAGwU,MAAM,UAenB,KAZjBjB,EAAI1B,KAAK5F,cAAcwI,MACrBb,EACA,CACE1H,EACAC,EACAC,EACAoG,EAAYjN,GACZ+N,EAAO,GACPtB,EACAC,GACAnB,OAAOqB,YAGFoB,EAELE,IACF3B,EAAQA,EAAMM,MAAM,GAAI,EAAIqB,EAAM,GAClCzB,EAASA,EAAOI,MAAM,GAAI,EAAIqB,GAC9BxB,EAASA,EAAOG,MAAM,GAAI,EAAIqB,IAEhC3B,EAAMe,KAAKhB,KAAK7F,aAAasH,EAAO,IAAI,IACxCtB,EAAOa,KAAKe,EAAMnH,GAClBwF,EAAOY,KAAKe,EAAMrH,IAClBmH,EAAWtC,EAAMU,EAAMA,EAAM9R,OAAS,IAAI8R,EAAMA,EAAM9R,OAAS,IAC/D8R,EAAMe,KAAKa,cAER,SACI,UAGN,IAKPnB,GACU,CACV3M,IAAK,EAEL0L,WAAY,SAAoBC,EAAKC,OAC/BK,KAAKtM,GAAG7E,aAGJ,IAAIgR,MAAMH,QAFXhM,GAAG7E,OAAO4Q,WAAWC,EAAKC,IAOnCkB,SAAU,SAAUf,EAAOpM,eACpBA,GAAKA,GAAMsM,KAAKtM,IAAM,QACtBmP,OAAS/C,OACTgD,MAAQ9C,KAAK+C,WAAa/C,KAAKgD,MAAO,OACtCzI,SAAWyF,KAAK1F,OAAS,OACzBD,OAAS2F,KAAKiD,QAAUjD,KAAKoC,MAAQ,QACrCc,eAAiB,CAAC,gBAClBpC,OAAS,CACZyB,WAAY,EACZE,aAAc,EACdD,UAAW,EACXE,YAAa,GAEX1C,KAAKkB,QAAQD,cACVH,OAAO6B,MAAQ,CAAC,EAAG,SAErBQ,OAAS,EACPnD,MAITF,MAAO,eACDsD,EAAKpD,KAAK6C,OAAO,eAChBxI,QAAU+I,OACV9I,cACA6I,cACAf,OAASgB,OACTH,SAAWG,EACJA,EAAGhB,MAAM,yBAEd7H,gBACAuG,OAAO0B,kBAEP1B,OAAO4B,cAEV1C,KAAKkB,QAAQD,aACVH,OAAO6B,MAAM,UAGfE,OAAS7C,KAAK6C,OAAOtC,MAAM,GACzB6C,GAITC,MAAO,SAAUD,OACXxB,EAAMwB,EAAGjV,OACTmV,EAAQF,EAAGG,MAAM,sBAEhBV,OAASO,EAAKpD,KAAK6C,YACnBxI,OAAS2F,KAAK3F,OAAOmJ,OAAO,EAAGxD,KAAK3F,OAAOlM,OAASyT,QAEpDuB,QAAUvB,MACX6B,EAAWzD,KAAKoC,MAAMmB,MAAM,sBAC3BnB,MAAQpC,KAAKoC,MAAMoB,OAAO,EAAGxD,KAAKoC,MAAMjU,OAAS,QACjD8U,QAAUjD,KAAKiD,QAAQO,OAAO,EAAGxD,KAAKiD,QAAQ9U,OAAS,GAExDmV,EAAMnV,OAAS,SACZoM,UAAY+I,EAAMnV,OAAS,OAE9BuT,EAAI1B,KAAKc,OAAO6B,kBAEf7B,OAAS,CACZyB,WAAYvC,KAAKc,OAAOyB,WACxBC,UAAWxC,KAAKzF,SAAW,EAC3BkI,aAAczC,KAAKc,OAAO2B,aAC1BC,YAAaY,GACRA,EAAMnV,SAAWsV,EAAStV,OACvB6R,KAAKc,OAAO2B,aACZ,GACJgB,EAASA,EAAStV,OAASmV,EAAMnV,QAAQA,OACzCmV,EAAM,GAAGnV,OACT6R,KAAKc,OAAO2B,aAAeb,GAG7B5B,KAAKkB,QAAQD,cACVH,OAAO6B,MAAQ,CAACjB,EAAE,GAAIA,EAAE,GAAK1B,KAAK1F,OAASsH,SAE7CtH,OAAS0F,KAAK3F,OAAOlM,OACnB6R,MAIT0D,KAAM,uBACCZ,OAAQ,EACN9C,MAIT2D,OAAQ,kBACF3D,KAAKkB,QAAQ0C,sBACVb,YAAa,EAcb/C,MAZEA,KAAKP,WACV,0BACGO,KAAKzF,SAAW,GACjB,mIACAyF,KAAKiC,eACP,CACEE,KAAM,GACNf,MAAO,KACPiB,KAAMrC,KAAKzF,YAQnBsJ,KAAM,SAAUxG,QACTgG,MAAMrD,KAAKoC,MAAM7B,MAAMlD,KAI9ByG,UAAW,eACLC,EAAO/D,KAAKiD,QAAQO,OACtB,EACAxD,KAAKiD,QAAQ9U,OAAS6R,KAAKoC,MAAMjU,eAGhC4V,EAAK5V,OAAS,GAAK,MAAQ,IAAM4V,EAAKP,QAAQ,IAAIQ,QAAQ,MAAO,KAKtEC,cAAe,eACTC,EAAOlE,KAAKoC,aACZ8B,EAAK/V,OAAS,KAChB+V,GAAQlE,KAAK6C,OAAOW,OAAO,EAAG,GAAKU,EAAK/V,UAElC+V,EAAKV,OAAO,EAAG,KAAOU,EAAK/V,OAAS,GAAK,MAAQ,KAAK6V,QAC5D,MACA,KAKJ/B,aAAc,eACRkC,EAAMnE,KAAK8D,YACXM,EAAI,IAAI1F,MAAMyF,EAAIhW,OAAS,GAAG+T,KAAK,YAChCiC,EAAMnE,KAAKiE,gBAAkB,KAAOG,EAAI,KAIjDC,WAAY,SAAUjC,EAAOkC,OACvBlD,EAAOkC,EAAOiB,KAEdvE,KAAKkB,QAAQ0C,kBAEfW,EAAS,CACPhK,SAAUyF,KAAKzF,SACfuG,OAAQ,CACNyB,WAAYvC,KAAKc,OAAOyB,WACxBC,UAAWxC,KAAKwC,UAChBC,aAAczC,KAAKc,OAAO2B,aAC1BC,YAAa1C,KAAKc,OAAO4B,aAE3BrI,OAAQ2F,KAAK3F,OACb+H,MAAOpC,KAAKoC,MACZoC,QAASxE,KAAKwE,QACdvB,QAASjD,KAAKiD,QACd3I,OAAQ0F,KAAK1F,OACb6I,OAAQnD,KAAKmD,OACbL,MAAO9C,KAAK8C,MACZD,OAAQ7C,KAAK6C,OACbnP,GAAIsM,KAAKtM,GACTwP,eAAgBlD,KAAKkD,eAAe3C,MAAM,GAC1CyC,KAAMhD,KAAKgD,MAEThD,KAAKkB,QAAQD,SACfsD,EAAOzD,OAAO6B,MAAQ3C,KAAKc,OAAO6B,MAAMpC,MAAM,MAIlD+C,EAAQlB,EAAM,GAAGA,MAAM,2BAEhB7H,UAAY+I,EAAMnV,aAEpB2S,OAAS,CACZyB,WAAYvC,KAAKc,OAAO0B,UACxBA,UAAWxC,KAAKzF,SAAW,EAC3BkI,aAAczC,KAAKc,OAAO4B,YAC1BA,YAAaY,EACTA,EAAMA,EAAMnV,OAAS,GAAGA,OACxBmV,EAAMA,EAAMnV,OAAS,GAAGiU,MAAM,UAAU,GAAGjU,OAC3C6R,KAAKc,OAAO4B,YAAcN,EAAM,GAAGjU,aAEpCkM,QAAU+H,EAAM,QAChBA,OAASA,EAAM,QACfoC,QAAUpC,OACV9H,OAAS0F,KAAK3F,OAAOlM,OACtB6R,KAAKkB,QAAQD,cACVH,OAAO6B,MAAQ,CAAC3C,KAAKmD,OAASnD,KAAKmD,QAAUnD,KAAK1F,cAEpDwI,OAAQ,OACRC,YAAa,OACbF,OAAS7C,KAAK6C,OAAOtC,MAAM6B,EAAM,GAAGjU,aACpC8U,SAAWb,EAAM,GACtBhB,EAAQpB,KAAK5F,cAAcoG,KACzBR,KACAA,KAAKtM,GACLsM,KACAsE,EACAtE,KAAKkD,eAAelD,KAAKkD,eAAe/U,OAAS,IAE/C6R,KAAKgD,MAAQhD,KAAK6C,cACfG,MAAO,GAEV5B,SACKA,EACF,GAAIpB,KAAK+C,WAAY,KAErB,IAAIhU,KAAKwV,OACPxV,GAAKwV,EAAOxV,UAEZ,SAEF,GAITmV,KAAM,cACAlE,KAAKgD,YACAhD,KAAKjM,QAMVqN,EAAOgB,EAAOqC,EAAWC,EAJxB1E,KAAK6C,cACHG,MAAO,GAIThD,KAAK8C,aACHzI,OAAS,QACT+H,MAAQ,YAEXuC,EAAQ3E,KAAK4E,gBACR1W,EAAI,EAAGA,EAAIyW,EAAMxW,OAAQD,QAChCuW,EAAYzE,KAAK6C,OAAOT,MAAMpC,KAAK2E,MAAMA,EAAMzW,SAC5BkU,GAASqC,EAAU,GAAGtW,OAASiU,EAAM,GAAGjU,QAAS,IAClEiU,EAAQqC,EACRC,EAAQxW,EACJ8R,KAAKkB,QAAQ0C,gBAAiB,KAElB,KADdxC,EAAQpB,KAAKqE,WAAWI,EAAWE,EAAMzW,YAEhCkT,EACF,GAAIpB,KAAK+C,WAAY,CAC1BX,GAAQ,kBAID,EAEJ,IAAKpC,KAAKkB,QAAQ2D,kBAKzBzC,GAEY,KADdhB,EAAQpB,KAAKqE,WAAWjC,EAAOuC,EAAMD,MAE5BtD,EAKS,KAAhBpB,KAAK6C,OACA7C,KAAKjM,IAELiM,KAAKP,WACV,0BACGO,KAAKzF,SAAW,GACjB,yBACAyF,KAAKiC,eACP,CACEE,KAAM,GACNf,MAAO,KACPiB,KAAMrC,KAAKzF,YAOnB4G,IAAK,eACCO,EAAI1B,KAAKkE,cACTxC,GAGK1B,KAAKmB,OAKhB2D,MAAO,SAAeC,QACf7B,eAAelC,KAAK+D,IAI3BC,SAAU,kBACAhF,KAAKkD,eAAe/U,OAAS,EAC7B,EACC6R,KAAKkD,eAAe7B,MAEpBrB,KAAKkD,eAAe,IAK/B0B,cAAe,kBAEX5E,KAAKkD,eAAe/U,QACpB6R,KAAKkD,eAAelD,KAAKkD,eAAe/U,OAAS,GAE1C6R,KAAKiF,WACVjF,KAAKkD,eAAelD,KAAKkD,eAAe/U,OAAS,IACjDwW,MAEK3E,KAAKiF,WAAL,QAA2BN,OAKtCO,SAAU,SAAkB7H,UAC1BA,EAAI2C,KAAKkD,eAAe/U,OAAS,EAAIoP,KAAK4H,IAAI9H,GAAK,KAC1C,EACA2C,KAAKkD,eAAe7F,GAEpB,WAKX+H,UAAW,SAAmBL,QACvBD,MAAMC,IAIbM,eAAgB,kBACPrF,KAAKkD,eAAe/U,QAE7B+S,QAAS,qBAAsB,GAC/B9G,cAAe,SACb1G,EACA4R,EACAC,EACAC,UAGQD,QACD,aAEA,OAGA,QACI,QAEJ,SACI,QAEJ,SACI,QAEJ,SACI,QAEJ,OAGA,SACI,QAEJ,SACI,OAEJ,SACI,OAEJ,UACI,QAEJ,UACI,OAEJ,UACI,OAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,QAGA,UACI,QAEJ,QAGA,UACI,QAEJ,QAGA,QAGA,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACHD,EAAIjL,OAAS3G,EAAG0H,MAAMqK,cAAcH,EAAIjL,QACjC,QAEJ,UACI,QAEJ,UACI,OAEJ,UACI,SAEJ,UACI,SAEJ,SACI,UAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,QAEJ,UACI,KAIbsK,MAAO,CACL,YACA,cACA,eACA,2BACA,8BACA,yBACA,gBACA,eACA,cACA,gBACA,gBACA,gBACA,eACA,eACA,cACA,cACA,mBACA,sBACA,oBACA,iBACA,eACA,cACA,cACA,iBACA,eACA,eACA,eACA,iBACA,iBACA,mBACA,eACA,gBACA,mBACA,eACA,eACA,eACA,kBACA,oBACA,iBACA,oBACA,gBACA,iBACA,cACA,qBACA,eACA,oBACA,wBACA,sBACA,qBACA,wBACA,wBACA,wBACA,sBACA,0BACA,yBACA,0BACA,4BACA,wBACA,YACA,aACA,YACA,YACA,YACA,YACA,YACA,aACA,aACA,cACA,gBACA,eACA,eACA,kDACA,qBACA,UACA,WACA,WACA,WACA,aACA,aACA,aACA,aACA,WAEFM,WAAY,CACVS,QAAS,CACPf,MAAO,CACL,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAC9D,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAChE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAChE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAChE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAE9CgB,WAAW,cAOVC,UACFlS,GAAK,UAFZ7E,GAAO6R,MAAQA,GAIfkF,GAAOnY,UAAYoB,GACnBA,GAAO+W,OAASA,GACT,IAAIA,GA9gGC,GAihGVC,EAAgB,CAAEhX,OAAQA,GCzlGxBiX,EAAa,CACjBC,MAAO,CACL,0BACA,iCACA,sBACA,yBACA,8BACA,sBACA,qBACA,wBACA,2BACA,8BACA,iCACA,sBAEFC,GAAI,CACFD,MAAO,CACL,sBACA,4CACA,wCACA,wCACA,0CACA,0CACA,4CAGJE,GAAI,CACFF,MAAO,CACL,aACA,uCACA,6CACA,uCACA,wCACA,6BACA,+CAGJG,GAAI,CACFH,MAAO,CACL,WACA,wCACA,6BACA,0CACA,0CACA,gCAGJI,GAAI,CACFJ,MAAO,CACL,cACA,4CACA,wCACA,0CACA,0CACA,4CAGJK,GAAI,CACFL,MAAO,CAAC,mBAAoB,oBAE9BM,GAAI,CACFN,MAAO,CAAC,WAAY,4CAEtBO,GAAI,CACFP,MAAO,CACL,UACA,uCACA,wCACA,gCAGJQ,GAAI,CACFR,MAAO,CAAC,aAAc,yCAExBS,GAAI,CACFT,MAAO,CACL,mBACA,4BACA,yBACA,2BACA,yCAGJU,GAAI,CACFV,MAAO,CACL,8BACA,yCAGJW,GAAI,CACFX,MAAO,CACL,eACA,sEACA,iEACA,0EACA,+DACA,6DACA,sCACA,sCACA,sCACA,8CACA,kDACA,8CACA,kDACA,gDACA,iCAKAY,EAAY,CAChBZ,MAAO,CACL,yBACA,4BACA,0BACA,6BACA,iCACA,wCACA,oBAEFa,GAAI,CACFb,MAAO,CACL,6CACA,aACA,mDAUAc,EAAe,CACnBd,MAAO,CACL,oBACA,mBACA,uBACA,wBACA,0BACA,iBACA,mBAIEe,EAAa,CACjBf,MAAO,CACL,kEACA,qBACA,4BACA,8CACA,+BACA,iDACA,8BACA,uBACA,6BAEFgB,EAAG,CACDhB,MACE,4EAEJiB,EAAGlB,EACH1B,EAAGuC,EACHM,GAAIJ,GAGAK,EAAsB,CAC1BnB,MAAO,CACL,qDACA,gDACA,4CAEFoB,MAAOrB,EACPsB,SAAUT,GAGNtL,EAAO,CACX0K,MAAO,CACL,wCACA,yDACA,sCACA,mCACA,oDACA,sCACA,+BAEFjL,MAAO,CACLiL,MAAO,CACL,oDACA,gDAGJ1H,KAAM,CACJ0H,MAAO,CACL,mDACA,gDAEFsB,MAAO,CACLtB,MAAO,sCAET7O,IAAK,CACH6O,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"}