@famibee/skynovel 1.65.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/README.md +3 -3
  2. package/dist/Button.js +131 -163
  3. package/dist/Button.js.map +1 -1
  4. package/dist/CallStack.js +19 -22
  5. package/dist/CallStack.js.map +1 -1
  6. package/dist/CmnInterface.js +91 -0
  7. package/dist/CmnInterface.js.map +1 -0
  8. package/dist/CmnLib.js +94 -0
  9. package/dist/CmnLib.js.map +1 -0
  10. package/dist/Config.js +26 -0
  11. package/dist/Config.js.map +1 -0
  12. package/dist/ConfigBase.js +152 -0
  13. package/dist/ConfigBase.js.map +1 -0
  14. package/dist/DebugMng.js +89 -102
  15. package/dist/DebugMng.js.map +1 -1
  16. package/dist/EventListenerCtn.js +21 -0
  17. package/dist/EventListenerCtn.js.map +1 -0
  18. package/dist/EventMng.js +1435 -1577
  19. package/dist/EventMng.js.map +1 -1
  20. package/dist/Grammar.js +194 -0
  21. package/dist/Grammar.js.map +1 -0
  22. package/dist/GrpLayer.js +163 -195
  23. package/dist/GrpLayer.js.map +1 -1
  24. package/dist/Layer.js +260 -0
  25. package/dist/Layer.js.map +1 -0
  26. package/dist/LayerMng.js +810 -991
  27. package/dist/LayerMng.js.map +1 -1
  28. package/dist/Main.js +144 -393
  29. package/dist/Main.js.map +1 -1
  30. package/dist/PropParser.js +936 -834
  31. package/dist/PropParser.js.map +1 -1
  32. package/dist/Reading.js +918 -786
  33. package/dist/Reading.js.map +1 -1
  34. package/dist/RubySpliter.js +59 -92
  35. package/dist/RubySpliter.js.map +1 -1
  36. package/dist/ScriptIterator.js +805 -1034
  37. package/dist/ScriptIterator.js.map +1 -1
  38. package/dist/SndBuf.js +1097 -1332
  39. package/dist/SndBuf.js.map +1 -1
  40. package/dist/SoundMng.js +124 -135
  41. package/dist/SoundMng.js.map +1 -1
  42. package/dist/SpritesMng.js +220 -232
  43. package/dist/SpritesMng.js.map +1 -1
  44. package/dist/SysBase.js +1729 -0
  45. package/dist/SysBase.js.map +1 -0
  46. package/dist/TxtLayer.js +1212 -1397
  47. package/dist/TxtLayer.js.map +1 -1
  48. package/dist/Variable.js +398 -466
  49. package/dist/Variable.js.map +1 -1
  50. package/dist/chunk.js +18 -0
  51. package/dist/gamepad.js +723 -511
  52. package/dist/gamepad.js.map +1 -1
  53. package/dist/pixi.js +13422 -0
  54. package/dist/pixi.js.map +1 -0
  55. package/dist/platform.js +424 -369
  56. package/dist/platform.js.map +1 -1
  57. package/dist/sn/AnalyzeTagArg.d.ts +1 -1
  58. package/dist/sn/AnalyzeTagArg.d.ts.map +1 -1
  59. package/dist/sn/CmnInterface.d.ts +3 -1
  60. package/dist/sn/CmnInterface.d.ts.map +1 -1
  61. package/dist/sn/CmnLib.d.ts.map +1 -1
  62. package/dist/sn/CmnTween.d.ts +3 -3
  63. package/dist/sn/CmnTween.d.ts.map +1 -1
  64. package/dist/sn/EventMng.d.ts.map +1 -1
  65. package/dist/sn/Grammar.d.ts +1 -1
  66. package/dist/sn/Grammar.d.ts.map +1 -1
  67. package/dist/sn/PropParser.d.ts +2 -2
  68. package/dist/sn/PropParser.d.ts.map +1 -1
  69. package/dist/sn/Reading.d.ts +6 -0
  70. package/dist/sn/Reading.d.ts.map +1 -1
  71. package/dist/sn/ScriptIterator.d.ts.map +1 -1
  72. package/dist/sn/SndBuf.d.ts +27 -16
  73. package/dist/sn/SndBuf.d.ts.map +1 -1
  74. package/dist/sn/SoundMng.d.ts +4 -1
  75. package/dist/sn/SoundMng.d.ts.map +1 -1
  76. package/dist/sn/SysBase.d.ts.map +1 -1
  77. package/dist/sn/TxtStage.d.ts +2 -1
  78. package/dist/sn/TxtStage.d.ts.map +1 -1
  79. package/dist/test/ValTest.d.ts +1 -1
  80. package/dist/test/ValTest.d.ts.map +1 -1
  81. package/dist/web.js +653 -8
  82. package/dist/web.js.map +1 -1
  83. package/dist_app/Button.js +131 -163
  84. package/dist_app/Button.js.map +1 -1
  85. package/dist_app/CallStack.js +19 -22
  86. package/dist_app/CallStack.js.map +1 -1
  87. package/dist_app/CmnInterface.js +91 -0
  88. package/dist_app/CmnInterface.js.map +1 -0
  89. package/dist_app/CmnLib.js +94 -0
  90. package/dist_app/CmnLib.js.map +1 -0
  91. package/dist_app/Config.js +26 -0
  92. package/dist_app/Config.js.map +1 -0
  93. package/dist_app/ConfigBase.js +152 -0
  94. package/dist_app/ConfigBase.js.map +1 -0
  95. package/dist_app/DebugMng.js +92 -0
  96. package/dist_app/DebugMng.js.map +1 -0
  97. package/dist_app/EventListenerCtn.js +21 -0
  98. package/dist_app/EventListenerCtn.js.map +1 -0
  99. package/dist_app/EventMng.js +1435 -1577
  100. package/dist_app/EventMng.js.map +1 -1
  101. package/dist_app/Grammar.js +194 -0
  102. package/dist_app/Grammar.js.map +1 -0
  103. package/dist_app/GrpLayer.js +163 -195
  104. package/dist_app/GrpLayer.js.map +1 -1
  105. package/dist_app/Layer.js +260 -0
  106. package/dist_app/Layer.js.map +1 -0
  107. package/dist_app/LayerMng.js +810 -991
  108. package/dist_app/LayerMng.js.map +1 -1
  109. package/dist_app/Main.js +144 -392
  110. package/dist_app/Main.js.map +1 -1
  111. package/dist_app/PropParser.js +936 -834
  112. package/dist_app/PropParser.js.map +1 -1
  113. package/dist_app/Reading.js +918 -786
  114. package/dist_app/Reading.js.map +1 -1
  115. package/dist_app/RubySpliter.js +59 -92
  116. package/dist_app/RubySpliter.js.map +1 -1
  117. package/dist_app/ScriptIterator.js +805 -1033
  118. package/dist_app/ScriptIterator.js.map +1 -1
  119. package/dist_app/SndBuf.js +1097 -1332
  120. package/dist_app/SndBuf.js.map +1 -1
  121. package/dist_app/SoundMng.js +124 -135
  122. package/dist_app/SoundMng.js.map +1 -1
  123. package/dist_app/SpritesMng.js +220 -231
  124. package/dist_app/SpritesMng.js.map +1 -1
  125. package/dist_app/SysBase.js +1729 -0
  126. package/dist_app/SysBase.js.map +1 -0
  127. package/dist_app/TxtLayer.js +1212 -1396
  128. package/dist_app/TxtLayer.js.map +1 -1
  129. package/dist_app/Variable.js +398 -466
  130. package/dist_app/Variable.js.map +1 -1
  131. package/dist_app/app.js +211 -8
  132. package/dist_app/app.js.map +1 -1
  133. package/dist_app/appMain.js +20 -21
  134. package/dist_app/appMain.js.map +1 -1
  135. package/dist_app/chunk.js +18 -0
  136. package/dist_app/gamepad.js +723 -511
  137. package/dist_app/gamepad.js.map +1 -1
  138. package/dist_app/pixi.js +11181 -0
  139. package/dist_app/pixi.js.map +1 -0
  140. package/dist_app/platform.js +424 -369
  141. package/dist_app/platform.js.map +1 -1
  142. package/dist_app/preload.js +2 -2
  143. package/dist_app/preload.js.map +1 -1
  144. package/dist_app/sn/AnalyzeTagArg.d.ts +1 -1
  145. package/dist_app/sn/AnalyzeTagArg.d.ts.map +1 -1
  146. package/dist_app/sn/CmnInterface.d.ts +3 -1
  147. package/dist_app/sn/CmnInterface.d.ts.map +1 -1
  148. package/dist_app/sn/CmnLib.d.ts.map +1 -1
  149. package/dist_app/sn/CmnTween.d.ts +3 -3
  150. package/dist_app/sn/CmnTween.d.ts.map +1 -1
  151. package/dist_app/sn/EventMng.d.ts.map +1 -1
  152. package/dist_app/sn/Grammar.d.ts +1 -1
  153. package/dist_app/sn/Grammar.d.ts.map +1 -1
  154. package/dist_app/sn/PropParser.d.ts +2 -2
  155. package/dist_app/sn/PropParser.d.ts.map +1 -1
  156. package/dist_app/sn/Reading.d.ts +6 -0
  157. package/dist_app/sn/Reading.d.ts.map +1 -1
  158. package/dist_app/sn/ScriptIterator.d.ts.map +1 -1
  159. package/dist_app/sn/SndBuf.d.ts +27 -16
  160. package/dist_app/sn/SndBuf.d.ts.map +1 -1
  161. package/dist_app/sn/SoundMng.d.ts +4 -1
  162. package/dist_app/sn/SoundMng.d.ts.map +1 -1
  163. package/dist_app/sn/SysBase.d.ts.map +1 -1
  164. package/dist_app/sn/TxtStage.d.ts +2 -1
  165. package/dist_app/sn/TxtStage.d.ts.map +1 -1
  166. package/dist_app/test/ValTest.d.ts +1 -1
  167. package/dist_app/test/ValTest.d.ts.map +1 -1
  168. package/package.json +23 -13
  169. package/dist/CmnTween.js +0 -1005
  170. package/dist/CmnTween.js.map +0 -1
  171. package/dist/web2.js +0 -21644
  172. package/dist/web2.js.map +0 -1
  173. package/dist_app/CmnTween.js +0 -1005
  174. package/dist_app/CmnTween.js.map +0 -1
  175. package/dist_app/app2.js +0 -18547
  176. package/dist_app/app2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"gamepad.js","sources":["../node_modules/gamepad.js/gamepad.js"],"sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.gamepad=e():t.gamepad=e()}(this,(()=>(()=>{var t={944:function(t){var e;e=()=>(()=>{\"use strict\";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};function n(t){return n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},n(t)}function r(t,e){var n=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(!n){if(Array.isArray(t)||(n=i(t))||e&&t&&\"number\"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,u=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return u=t.done,t},e:function(t){s=!0,a=t},f:function(){try{u||null==n.return||n.return()}finally{if(s)throw a}}}}function o(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(null!=n){var r,o,i,a,u=[],s=!0,l=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);s=!0);}catch(t){l=!0,o=t}finally{try{if(!s&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}(t,e)||i(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return a(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(t,e):void 0}}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function u(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}t.d(e,{default:()=>s});var s=function(){function t(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];u(this,t),this.strict=e,this.defaults=new Map,this.validators=new Map,this.types=new Map,this.optional=new Set,this.required=new Set}var e,i;return e=t,(i=[{key:\"allowExtra\",value:function(){return this.strict=!1,this}},{key:\"setDefaults\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.defaults.set(r,i)})),this}},{key:\"setValidators\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.validators.set(r,i)})),this}},{key:\"setTypes\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.types.set(r,i)})),this}},{key:\"setOptional\",value:function(t){var e=this;return t.forEach((function(t){return e.optional.add(t)})),this}},{key:\"setRequired\",value:function(t){var e=this;return t.forEach((function(t){return e.required.add(t)})),this}},{key:\"resolve\",value:function(t){return this.validate(Object.assign(this.getDefaults(),t))}},{key:\"getDefaults\",value:function(){var t,e={},n=r(this.defaults);try{for(n.s();!(t=n.n()).done;){var i=o(t.value,2),a=i[0],u=i[1];e[a]=u}}catch(t){n.e(t)}finally{n.f()}return e}},{key:\"validate\",value:function(t){for(var e in t)this.validators.has(e)&&(t[e]=this.validators.get(e)(t[e]));for(var n in t){if(!this.optionExists(n))throw new Error('Unkown option \"'.concat(n,'\".'));this.checkType(n,t[n])}var o,i=r(this.required.values());try{for(i.s();!(o=i.n()).done;){var a=o.value;if(void 0===t[a])throw new Error('Option \"'.concat(a,'\" is required.'))}}catch(t){i.e(t)}finally{i.f()}return t}},{key:\"checkType\",value:function(t,e){if(this.types.has(t)){var r=this.types.get(t),o=n(e);if(o!==r)throw new Error('Wrong value for option \"'.concat(t,'\": expected type \"').concat(r,'\", got \"').concat(o,'\".'))}}},{key:\"optionExists\",value:function(t){return!this.strict||this.defaults.has(t)||this.validators.has(t)||this.optional.has(t)||this.required.has(t)||this.types.has(t)}}])&&function(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,\"value\"in o&&(o.writable=!0),Object.defineProperty(t,(i=function(t,e){if(\"object\"!==n(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,\"string\");if(\"object\"!==n(o))return o;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(o.key),\"symbol\"===n(i)?i:String(i)),o)}var i}(e.prototype,i),Object.defineProperty(e,\"prototype\",{writable:!1}),t}();return e.default})(),t.exports=e()},162:function(t){t.exports=(()=>{\"use strict\";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};t.d(e,{default:()=>n});var n=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this._events={},this.on=this.addEventListener,this.off=this.removeEventListener}var e;return(e=[{key:\"emit\",value:function(t,e){if(Object.prototype.hasOwnProperty.call(this._events,t))for(var n=this._events[t],r={type:t,detail:e},o=n.length,i=0;i<o;i++)this.handle(n[i],r)}},{key:\"handle\",value:function(t,e){t(e)}},{key:\"addEventListener\",value:function(t,e){Object.prototype.hasOwnProperty.call(this._events,t)||(this._events[t]=[]),this._events[t].indexOf(e)<0&&this._events[t].push(e)}},{key:\"removeEventListener\",value:function(t,e){if(Object.prototype.hasOwnProperty.call(this._events,t)){var n=this._events[t],r=n.indexOf(e);r>=0&&n.splice(r,1),0===n.length&&delete this._events[t]}}}])&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(t.prototype,e),t}();return e.default})()}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r].call(i.exports,i,i.exports,n),i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var r={};return(()=>{\"use strict\";n.r(r),n.d(r,{GamepadHandler:()=>h,GamepadListener:()=>A});var t=n(162),e=n.n(t),o=n(944),i=n.n(o);function a(t){return a=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},a(t)}function u(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,p(r.key),r)}}function l(t,e){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},l(t,e)}function c(t,e){if(e&&(\"object\"===a(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return function(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}(t)}function f(t){return f=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},f(t)}function p(t){var e=function(t,e){if(\"object\"!==a(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==a(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===a(e)?e:String(e)}var d,y,v,h=function(t){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&l(t,e)}(p,t);var e,n,r,o,i,a=(o=p,i=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=f(o);if(i){var n=f(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return c(this,t)});function p(t,e){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return u(this,p),(n=a.call(this)).index=t,n.gamepad=e,n.options=n.constructor.resolveOptions(r),n.axes=new Array(e.axes.length).fill(null),n.buttons=new Array(e.buttons.length).fill(null),n.initAxes(),n.initButtons(),n}return e=p,r=[{key:\"resolveOptions\",value:function(t){var e,n,r,o,i=t.axis,a=t.button;return{axis:this.optionResolver.resolve(null!==(e=null!==(n=null!=i?i:a)&&void 0!==n?n:t)&&void 0!==e?e:{}),button:this.optionResolver.resolve(null!==(r=null!==(o=null!=a?a:i)&&void 0!==o?o:t)&&void 0!==r?r:{})}}}],(n=[{key:\"initAxes\",value:function(){for(var t=this.axes.length,e=0;e<t;e++)this.axes[e]=this.resolveAxisValue(e)}},{key:\"initButtons\",value:function(){for(var t=this.buttons.length,e=0;e<t;e++)this.buttons[e]=this.resolveButtonValue(e)}},{key:\"update\",value:function(t){this.gamepad=t,this.updateAxis(),this.updateButtons()}},{key:\"updateAxis\",value:function(){for(var t=this.axes.length,e=0;e<t;e++)this.setAxisValue(e,this.resolveAxisValue(e))}},{key:\"updateButtons\",value:function(){for(var t=this.buttons.length,e=0;e<t;e++)this.setButtonValue(e,this.resolveButtonValue(e))}},{key:\"setAxisValue\",value:function(t,e){this.axes[t]!==e&&(this.axes[t]=e,this.emit(\"axis\",{gamepad:this.gamepad,index:this.index,axis:t,value:e}))}},{key:\"setButtonValue\",value:function(t,e){this.buttons[t]!==e&&(this.buttons[t]=e,this.emit(\"button\",{gamepad:this.gamepad,index:this.index,button:t,pressed:this.gamepad.buttons[t].pressed,value:e}))}},{key:\"resolveAxisValue\",value:function(t){var e=this.options.axis,n=e.deadZone,r=e.analog,o=e.precision,i=this.gamepad.axes[t];return n&&i<n&&i>-n?0:r?o?Math.round(i*o)/o:i:i>0?1:i<0?-1:0}},{key:\"resolveButtonValue\",value:function(t){var e=this.options.button,n=e.deadZone,r=e.analog,o=e.precision,i=this.gamepad.buttons[t].value;return n>0&&i<n&&i>-n?0:r?o?Math.round(i*o)/o:i:0===i?0:1}}])&&s(e.prototype,n),r&&s(e,r),Object.defineProperty(e,\"prototype\",{writable:!1}),p}(e());function b(t){return b=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},b(t)}function m(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,g(r.key),r)}}function g(t){var e=function(t,e){if(\"object\"!==b(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==b(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===b(e)?e:String(e)}d=h,y=\"optionResolver\",v=(new(i())).setDefaults({analog:!0,deadZone:0,precision:0}).setTypes({analog:\"boolean\",deadZone:\"number\",precision:\"number\"}).setValidators({deadZone:function(t){return Math.max(Math.min(t,1),0)},precision:function(t){return t>0?Math.pow(10,t):0}}),(y=p(y))in d?Object.defineProperty(d,y,{value:v,enumerable:!0,configurable:!0,writable:!0}):d[y]=v;var w=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this.callback=e,this.frame=null,this.update=this.update.bind(this)}var e,n;return e=t,(n=[{key:\"setCallback\",value:function(t){this.callback=t}},{key:\"start\",value:function(){this.frame||(this.frame=window.requestAnimationFrame(this.update))}},{key:\"stop\",value:function(){this.frame&&(window.cancelAnimationFrame(this.frame),this.frame=null)}},{key:\"update\",value:function(){this.frame=window.requestAnimationFrame(this.update),this.callback()}}])&&m(e.prototype,n),Object.defineProperty(e,\"prototype\",{writable:!1}),t}();function x(t){return x=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},x(t)}function O(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function j(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,k(r.key),r)}}function k(t){var e=function(t,e){if(\"object\"!==x(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==x(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===x(e)?e:String(e)}function S(t,e){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},S(t,e)}function P(t,e){if(e&&(\"object\"===x(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return E(t)}function E(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function _(t){return _=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_(t)}var A=function(t){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&S(t,e)}(a,t);var e,n,r,o,i=(r=a,o=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=_(r);if(o){var n=_(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return P(this,t)});function a(){var t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(O(this,a),t=i.call(this),\"function\"!=typeof navigator.getGamepads)throw new Error(\"This browser does not support gamepad API.\");return t.options=e,t.onAxis=t.onAxis.bind(E(t)),t.update=t.update.bind(E(t)),t.start=t.start.bind(E(t)),t.stop=t.stop.bind(E(t)),t.discover=t.discover.bind(E(t)),t.onButton=t.onButton.bind(E(t)),t.handlers=new Array(4).fill(null),t.loop=new w(t.update),window.addEventListener(\"error\",t.stop),t}return e=a,(n=[{key:\"start\",value:function(){this.loop.start()}},{key:\"stop\",value:function(){this.loop.stop()}},{key:\"update\",value:function(){var t=navigator.getGamepads();this.discover(t[0],0),this.discover(t[1],1),this.discover(t[2],2),this.discover(t[3],3)}},{key:\"discover\",value:function(t,e){t?(null===this.handlers[e]&&this.registerHandler(e,t),this.handlers[e].update(t)):this.handlers[e]&&this.removeGamepad(e)}},{key:\"registerHandler\",value:function(t,e){var n=new h(t,e,this.options);this.handlers[t]=n,n.addEventListener(\"axis\",this.onAxis),n.addEventListener(\"button\",this.onButton),this.emit(\"gamepad:connected\",{index:t,gamepad:e}),this.emit(\"gamepad:\".concat(t,\":connected\"),{index:t,gamepad:e})}},{key:\"removeGamepad\",value:function(t){var e=this.handlers[t];e.removeEventListener(\"axis\",this.onAxis),e.removeEventListener(\"button\",this.onButton),this.handlers[t]=null,this.emit(\"gamepad:disconnected\",{index:t}),this.emit(\"gamepad:\".concat(t,\":disconnected\"),{index:t})}},{key:\"onAxis\",value:function(t){var e=t.detail.index;this.emit(\"gamepad:axis\",t.detail),this.emit(\"gamepad:\".concat(e,\":axis\"),t.detail),this.emit(\"gamepad:\".concat(e,\":axis:\").concat(t.detail.axis),t.detail)}},{key:\"onButton\",value:function(t){var e=t.detail.index;this.emit(\"gamepad:button\",t.detail),this.emit(\"gamepad:\".concat(e,\":button\"),t.detail),this.emit(\"gamepad:\".concat(e,\":button:\").concat(t.detail.button),t.detail)}}])&&j(e.prototype,n),Object.defineProperty(e,\"prototype\",{writable:!1}),a}(e())})(),r})()));"],"names":["t","e","module","this","n","r","i","o","a","u","s","l","h","A","p","c","f","d","y","v","b","m","g","w","x","O","j","k","S","P","E","_"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"gamepad.js","names":["e","t","r","n","o","a","u","s","i","p"],"sources":["../node_modules/gamepad.js/gamepad.js"],"sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.gamepad=e():t.gamepad=e()}(this,(()=>(()=>{var t={944:function(t){var e;e=()=>(()=>{\"use strict\";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};function n(t){return n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},n(t)}function r(t,e){var n=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(!n){if(Array.isArray(t)||(n=i(t))||e&&t&&\"number\"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,u=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return u=t.done,t},e:function(t){s=!0,a=t},f:function(){try{u||null==n.return||n.return()}finally{if(s)throw a}}}}function o(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(null!=n){var r,o,i,a,u=[],s=!0,l=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);s=!0);}catch(t){l=!0,o=t}finally{try{if(!s&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}(t,e)||i(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return a(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(t,e):void 0}}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function u(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}t.d(e,{default:()=>s});var s=function(){function t(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];u(this,t),this.strict=e,this.defaults=new Map,this.validators=new Map,this.types=new Map,this.optional=new Set,this.required=new Set}var e,i;return e=t,(i=[{key:\"allowExtra\",value:function(){return this.strict=!1,this}},{key:\"setDefaults\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.defaults.set(r,i)})),this}},{key:\"setValidators\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.validators.set(r,i)})),this}},{key:\"setTypes\",value:function(t){var e=this;return Object.entries(t).forEach((function(t){var n=o(t,2),r=n[0],i=n[1];return e.types.set(r,i)})),this}},{key:\"setOptional\",value:function(t){var e=this;return t.forEach((function(t){return e.optional.add(t)})),this}},{key:\"setRequired\",value:function(t){var e=this;return t.forEach((function(t){return e.required.add(t)})),this}},{key:\"resolve\",value:function(t){return this.validate(Object.assign(this.getDefaults(),t))}},{key:\"getDefaults\",value:function(){var t,e={},n=r(this.defaults);try{for(n.s();!(t=n.n()).done;){var i=o(t.value,2),a=i[0],u=i[1];e[a]=u}}catch(t){n.e(t)}finally{n.f()}return e}},{key:\"validate\",value:function(t){for(var e in t)this.validators.has(e)&&(t[e]=this.validators.get(e)(t[e]));for(var n in t){if(!this.optionExists(n))throw new Error('Unkown option \"'.concat(n,'\".'));this.checkType(n,t[n])}var o,i=r(this.required.values());try{for(i.s();!(o=i.n()).done;){var a=o.value;if(void 0===t[a])throw new Error('Option \"'.concat(a,'\" is required.'))}}catch(t){i.e(t)}finally{i.f()}return t}},{key:\"checkType\",value:function(t,e){if(this.types.has(t)){var r=this.types.get(t),o=n(e);if(o!==r)throw new Error('Wrong value for option \"'.concat(t,'\": expected type \"').concat(r,'\", got \"').concat(o,'\".'))}}},{key:\"optionExists\",value:function(t){return!this.strict||this.defaults.has(t)||this.validators.has(t)||this.optional.has(t)||this.required.has(t)||this.types.has(t)}}])&&function(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,\"value\"in o&&(o.writable=!0),Object.defineProperty(t,(i=function(t,e){if(\"object\"!==n(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,\"string\");if(\"object\"!==n(o))return o;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(o.key),\"symbol\"===n(i)?i:String(i)),o)}var i}(e.prototype,i),Object.defineProperty(e,\"prototype\",{writable:!1}),t}();return e.default})(),t.exports=e()},162:function(t){t.exports=(()=>{\"use strict\";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};t.d(e,{default:()=>n});var n=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this._events={},this.on=this.addEventListener,this.off=this.removeEventListener}var e;return(e=[{key:\"emit\",value:function(t,e){if(Object.prototype.hasOwnProperty.call(this._events,t))for(var n=this._events[t],r={type:t,detail:e},o=n.length,i=0;i<o;i++)this.handle(n[i],r)}},{key:\"handle\",value:function(t,e){t(e)}},{key:\"addEventListener\",value:function(t,e){Object.prototype.hasOwnProperty.call(this._events,t)||(this._events[t]=[]),this._events[t].indexOf(e)<0&&this._events[t].push(e)}},{key:\"removeEventListener\",value:function(t,e){if(Object.prototype.hasOwnProperty.call(this._events,t)){var n=this._events[t],r=n.indexOf(e);r>=0&&n.splice(r,1),0===n.length&&delete this._events[t]}}}])&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(t.prototype,e),t}();return e.default})()}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r].call(i.exports,i,i.exports,n),i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var r={};return(()=>{\"use strict\";n.r(r),n.d(r,{GamepadHandler:()=>h,GamepadListener:()=>A});var t=n(162),e=n.n(t),o=n(944),i=n.n(o);function a(t){return a=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},a(t)}function u(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,p(r.key),r)}}function l(t,e){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},l(t,e)}function c(t,e){if(e&&(\"object\"===a(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return function(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}(t)}function f(t){return f=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},f(t)}function p(t){var e=function(t,e){if(\"object\"!==a(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==a(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===a(e)?e:String(e)}var d,y,v,h=function(t){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&l(t,e)}(p,t);var e,n,r,o,i,a=(o=p,i=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=f(o);if(i){var n=f(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return c(this,t)});function p(t,e){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return u(this,p),(n=a.call(this)).index=t,n.gamepad=e,n.options=n.constructor.resolveOptions(r),n.axes=new Array(e.axes.length).fill(null),n.buttons=new Array(e.buttons.length).fill(null),n.initAxes(),n.initButtons(),n}return e=p,r=[{key:\"resolveOptions\",value:function(t){var e,n,r,o,i=t.axis,a=t.button;return{axis:this.optionResolver.resolve(null!==(e=null!==(n=null!=i?i:a)&&void 0!==n?n:t)&&void 0!==e?e:{}),button:this.optionResolver.resolve(null!==(r=null!==(o=null!=a?a:i)&&void 0!==o?o:t)&&void 0!==r?r:{})}}}],(n=[{key:\"initAxes\",value:function(){for(var t=this.axes.length,e=0;e<t;e++)this.axes[e]=this.resolveAxisValue(e)}},{key:\"initButtons\",value:function(){for(var t=this.buttons.length,e=0;e<t;e++)this.buttons[e]=this.resolveButtonValue(e)}},{key:\"update\",value:function(t){this.gamepad=t,this.updateAxis(),this.updateButtons()}},{key:\"updateAxis\",value:function(){for(var t=this.axes.length,e=0;e<t;e++)this.setAxisValue(e,this.resolveAxisValue(e))}},{key:\"updateButtons\",value:function(){for(var t=this.buttons.length,e=0;e<t;e++)this.setButtonValue(e,this.resolveButtonValue(e))}},{key:\"setAxisValue\",value:function(t,e){this.axes[t]!==e&&(this.axes[t]=e,this.emit(\"axis\",{gamepad:this.gamepad,index:this.index,axis:t,value:e}))}},{key:\"setButtonValue\",value:function(t,e){this.buttons[t]!==e&&(this.buttons[t]=e,this.emit(\"button\",{gamepad:this.gamepad,index:this.index,button:t,pressed:this.gamepad.buttons[t].pressed,value:e}))}},{key:\"resolveAxisValue\",value:function(t){var e=this.options.axis,n=e.deadZone,r=e.analog,o=e.precision,i=this.gamepad.axes[t];return n&&i<n&&i>-n?0:r?o?Math.round(i*o)/o:i:i>0?1:i<0?-1:0}},{key:\"resolveButtonValue\",value:function(t){var e=this.options.button,n=e.deadZone,r=e.analog,o=e.precision,i=this.gamepad.buttons[t].value;return n>0&&i<n&&i>-n?0:r?o?Math.round(i*o)/o:i:0===i?0:1}}])&&s(e.prototype,n),r&&s(e,r),Object.defineProperty(e,\"prototype\",{writable:!1}),p}(e());function b(t){return b=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},b(t)}function m(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,g(r.key),r)}}function g(t){var e=function(t,e){if(\"object\"!==b(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==b(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===b(e)?e:String(e)}d=h,y=\"optionResolver\",v=(new(i())).setDefaults({analog:!0,deadZone:0,precision:0}).setTypes({analog:\"boolean\",deadZone:\"number\",precision:\"number\"}).setValidators({deadZone:function(t){return Math.max(Math.min(t,1),0)},precision:function(t){return t>0?Math.pow(10,t):0}}),(y=p(y))in d?Object.defineProperty(d,y,{value:v,enumerable:!0,configurable:!0,writable:!0}):d[y]=v;var w=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this.callback=e,this.frame=null,this.update=this.update.bind(this)}var e,n;return e=t,(n=[{key:\"setCallback\",value:function(t){this.callback=t}},{key:\"start\",value:function(){this.frame||(this.frame=window.requestAnimationFrame(this.update))}},{key:\"stop\",value:function(){this.frame&&(window.cancelAnimationFrame(this.frame),this.frame=null)}},{key:\"update\",value:function(){this.frame=window.requestAnimationFrame(this.update),this.callback()}}])&&m(e.prototype,n),Object.defineProperty(e,\"prototype\",{writable:!1}),t}();function x(t){return x=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},x(t)}function O(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function j(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,k(r.key),r)}}function k(t){var e=function(t,e){if(\"object\"!==x(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,\"string\");if(\"object\"!==x(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===x(e)?e:String(e)}function S(t,e){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},S(t,e)}function P(t,e){if(e&&(\"object\"===x(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return E(t)}function E(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function _(t){return _=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_(t)}var A=function(t){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&S(t,e)}(a,t);var e,n,r,o,i=(r=a,o=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=_(r);if(o){var n=_(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return P(this,t)});function a(){var t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(O(this,a),t=i.call(this),\"function\"!=typeof navigator.getGamepads)throw new Error(\"This browser does not support gamepad API.\");return t.options=e,t.onAxis=t.onAxis.bind(E(t)),t.update=t.update.bind(E(t)),t.start=t.start.bind(E(t)),t.stop=t.stop.bind(E(t)),t.discover=t.discover.bind(E(t)),t.onButton=t.onButton.bind(E(t)),t.handlers=new Array(4).fill(null),t.loop=new w(t.update),window.addEventListener(\"error\",t.stop),t}return e=a,(n=[{key:\"start\",value:function(){this.loop.start()}},{key:\"stop\",value:function(){this.loop.stop()}},{key:\"update\",value:function(){var t=navigator.getGamepads();this.discover(t[0],0),this.discover(t[1],1),this.discover(t[2],2),this.discover(t[3],3)}},{key:\"discover\",value:function(t,e){t?(null===this.handlers[e]&&this.registerHandler(e,t),this.handlers[e].update(t)):this.handlers[e]&&this.removeGamepad(e)}},{key:\"registerHandler\",value:function(t,e){var n=new h(t,e,this.options);this.handlers[t]=n,n.addEventListener(\"axis\",this.onAxis),n.addEventListener(\"button\",this.onButton),this.emit(\"gamepad:connected\",{index:t,gamepad:e}),this.emit(\"gamepad:\".concat(t,\":connected\"),{index:t,gamepad:e})}},{key:\"removeGamepad\",value:function(t){var e=this.handlers[t];e.removeEventListener(\"axis\",this.onAxis),e.removeEventListener(\"button\",this.onButton),this.handlers[t]=null,this.emit(\"gamepad:disconnected\",{index:t}),this.emit(\"gamepad:\".concat(t,\":disconnected\"),{index:t})}},{key:\"onAxis\",value:function(t){var e=t.detail.index;this.emit(\"gamepad:axis\",t.detail),this.emit(\"gamepad:\".concat(e,\":axis\"),t.detail),this.emit(\"gamepad:\".concat(e,\":axis:\").concat(t.detail.axis),t.detail)}},{key:\"onButton\",value:function(t){var e=t.detail.index;this.emit(\"gamepad:button\",t.detail),this.emit(\"gamepad:\".concat(e,\":button\"),t.detail),this.emit(\"gamepad:\".concat(e,\":button:\").concat(t.detail.button),t.detail)}}])&&j(e.prototype,n),Object.defineProperty(e,\"prototype\",{writable:!1}),a}(e())})(),r})()));"],"x_google_ignoreList":[0],"mappings":";;AAAA,EAAC,SAAS,GAAE,GAAE;AAAC,EAAU,OAAO,KAAjB,YAAoC,OAAO,KAAjB,WAAwB,EAAO,UAAQ,GAAG,GAAa,OAAO,UAAnB,cAA2B,OAAO,MAAI,OAAO,EAAE,EAAC,EAAE,GAAW,OAAO,KAAjB,WAAyB,EAAQ,UAAQ,GAAG,GAAC,EAAE,UAAQ,GAAG;qBAAiB;EAAC,IAAI,IAAE;GAAC,KAAI,SAAS,GAAE;AAA6uJ,MAAE,wBAA7tJ;KAAc,IAAIC,IAAE;MAAC,IAAG,GAAE,MAAI;AAAC,YAAI,IAAIC,KAAKC,EAAE,GAAE,EAAEA,GAAED,EAAE,IAAE,CAACD,EAAE,EAAED,GAAEE,EAAE,IAAE,OAAO,eAAeF,GAAEE,GAAE;QAAC,YAAW,CAAC;QAAE,KAAIC,EAAED;QAAG,CAAC;;MAAE,IAAG,GAAE,MAAI,OAAO,UAAU,eAAe,KAAKD,GAAED,EAAE;MAAC,EAACA,IAAE,EAAE;KAAC,SAASG,EAAE,GAAE;AAAC,aAAO,IAAc,OAAO,UAAnB,cAAqC,OAAO,OAAO,YAAxB,WAAiC,SAAS,GAAE;AAAC,cAAO,OAAOF;UAAG,SAAS,GAAE;AAAC,cAAOA,KAAe,OAAO,UAAnB,cAA2BA,EAAE,gBAAc,UAAQA,MAAI,OAAO,YAAU,WAAS,OAAOA;SAAGE,EAAEF,EAAE;;KAAC,SAASC,EAAE,GAAE,GAAE;MAAC,IAAIC,IAAe,OAAO,SAApB,OAA4BF,EAAE,OAAO,aAAWA,EAAE;AAAc,UAAG,CAACE,GAAE;AAAC,WAAG,MAAM,QAAQF,EAAE,KAAG,IAAE,EAAEA,EAAE,KAAGD,KAAGC,KAAa,OAAOA,EAAE,UAAnB,UAA0B;AAAC,cAAI,IAAEE;QAAG,IAAID,IAAE,GAAEE,IAAE,WAAU;AAAG,eAAM;SAAC,GAAEA;SAAE,GAAE,WAAU;AAAC,iBAAOF,KAAGD,EAAE,SAAO,EAAC,MAAK,CAAC,GAAE,GAAC;WAAC,MAAK,CAAC;WAAE,OAAMA,EAAE;WAAK;;SAAE,GAAE,SAAS,GAAE;AAAC,gBAAMA;;SAAG,GAAEG;SAAE;;AAAC,aAAU,UAAU,wIAAwI;;MAAC,IAAIC,GAAEC,IAAE,CAAC,GAAEC,IAAE,CAAC;AAAE,aAAM;OAAC,GAAE,WAAU;AAAC,YAAEJ,EAAE,KAAKF,EAAE;;OAAE,GAAE,WAAU;QAAC,IAAIA,IAAEE,EAAE,MAAM;AAAC,eAAO,IAAEF,EAAE,MAAKA;;OAAG,GAAE,SAAS,GAAE;AAAC,YAAE,CAAC,GAAE,IAAEA;;OAAG,GAAE,WAAU;AAAC,YAAG;AAAC,cAASE,EAAE,UAAR,QAAgBA,EAAE,QAAQ;kBAAQ;AAAC,aAAGI,EAAE,OAAMF;;;OAAI;;KAAC,SAAS,EAAE,GAAE,GAAE;AAAC,aAAO,SAAS,GAAE;AAAC,WAAG,MAAM,QAAQJ,EAAE,CAAC,QAAOA;QAAGA,EAAE,IAAE,SAAS,GAAE,GAAE;OAAC,IAAIE,IAAQF,KAAN,OAAQ,OAAkB,OAAO,SAApB,OAA4BA,EAAE,OAAO,aAAWA,EAAE;AAAc,WAASE,KAAN,MAAQ;QAAC,IAAID,GAAEE,GAAEI,GAAEH,GAAEC,IAAE,EAAE,EAACC,IAAE,CAAC,GAAE,IAAE,CAAC;AAAE,YAAG;AAAC,aAAG,KAAG,IAAEJ,EAAE,KAAKF,EAAE,EAAE,MAASD,MAAJ,GAAM;AAAC,cAAG,OAAOG,EAAE,KAAGA,EAAE;AAAO,cAAE,CAAC;eAAO,QAAK,EAAE,KAAG,IAAEK,EAAE,KAAKL,EAAE,EAAE,UAAQG,EAAE,KAAKJ,EAAE,MAAM,EAACI,EAAE,WAASN,IAAG,IAAE,CAAC;iBAAUC,GAAE;AAAC,aAAE,CAAC,GAAE,IAAEA;kBAAS;AAAC,aAAG;AAAC,cAAG,CAACM,KAASJ,EAAE,UAAR,SAAiB,IAAEA,EAAE,QAAQ,EAAC,OAAOE,EAAE,KAAGA,GAAG;mBAAc;AAAC,cAAG,EAAE,OAAMD;;;AAAG,eAAOE;;QAAIL,GAAED,EAAE,IAAE,EAAEC,GAAED,EAAE,IAAE,WAAU;AAAC,aAAU,UAAU,4IAA4I;SAAG;;KAAC,SAAS,EAAE,GAAE,GAAE;AAAC,UAAGC,GAAE;AAAC,WAAa,OAAOA,KAAjB,SAAmB,QAAO,EAAEA,GAAED,EAAE;OAAC,IAAIG,IAAE,OAAO,UAAU,SAAS,KAAKF,EAAE,CAAC,MAAM,GAAE,GAAG;AAAC,cAAiBE,MAAX,YAAcF,EAAE,gBAAc,IAAEA,EAAE,YAAY,OAAcE,MAAR,SAAmBA,MAAR,QAAU,MAAM,KAAKF,EAAE,GAAeE,MAAd,eAAiB,2CAA2C,KAAKA,EAAE,GAAC,EAAEF,GAAED,EAAE,GAAC,KAAK;;;KAAG,SAAS,EAAE,GAAE,GAAE;AAAC,OAAOA,KAAN,QAASA,IAAEC,EAAE,YAAU,IAAEA,EAAE;AAAQ,WAAI,IAAIE,IAAE,GAAED,IAAM,MAAMF,EAAE,EAACG,IAAEH,GAAE,IAAI,GAAEG,KAAGF,EAAEE;AAAG,aAAOD;;KAAE,SAAS,EAAE,GAAE,GAAE;AAAC,UAAG,EAAED,aAAaD,GAAG,OAAU,UAAU,oCAAoC;;AAAC,OAAE,EAAEA,GAAE,EAAC,eAAY,GAAE,CAAC;KAAC,IAAI,IAAE,WAAU;MAAC,SAASC,IAAG;OAAC,IAAID,IAAE,EAAE,UAAU,SAAO,KAAY,UAAU,OAAnB,KAAK,MAAmB,UAAU;AAAG,SAAE,MAAKC,EAAE,EAAC,KAAK,SAAOD,GAAE,KAAK,2BAAS,IAAI,KAAG,EAAC,KAAK,6BAAW,IAAI,KAAG,EAAC,KAAK,wBAAM,IAAI,KAAG,EAAC,KAAK,2BAAS,IAAI,KAAG,EAAC,KAAK,2BAAS,IAAI,KAAG;;MAAC,IAAIA,GAAEQ;AAAE,aAAO,IAAEP,IAAG,IAAE;OAAC;QAAC,KAAI;QAAa,OAAM,WAAU;AAAC,gBAAO,KAAK,SAAO,CAAC,GAAE;;QAAM;OAAC;QAAC,KAAI;QAAc,OAAM,SAAS,GAAE;SAAC,IAAID,IAAE;AAAK,gBAAO,OAAO,QAAQC,EAAE,CAAC,SAAS,SAAS,GAAE;UAAC,IAAIE,IAAE,EAAEF,GAAE,EAAE,EAACC,IAAEC,EAAE,IAAGK,IAAEL,EAAE;AAAG,iBAAOH,EAAE,SAAS,IAAIE,GAAEM,EAAE;YAAG,EAAC;;QAAM;OAAC;QAAC,KAAI;QAAgB,OAAM,SAAS,GAAE;SAAC,IAAIR,IAAE;AAAK,gBAAO,OAAO,QAAQC,EAAE,CAAC,SAAS,SAAS,GAAE;UAAC,IAAIE,IAAE,EAAEF,GAAE,EAAE,EAACC,IAAEC,EAAE,IAAGK,IAAEL,EAAE;AAAG,iBAAOH,EAAE,WAAW,IAAIE,GAAEM,EAAE;YAAG,EAAC;;QAAM;OAAC;QAAC,KAAI;QAAW,OAAM,SAAS,GAAE;SAAC,IAAIR,IAAE;AAAK,gBAAO,OAAO,QAAQC,EAAE,CAAC,SAAS,SAAS,GAAE;UAAC,IAAIE,IAAE,EAAEF,GAAE,EAAE,EAACC,IAAEC,EAAE,IAAGK,IAAEL,EAAE;AAAG,iBAAOH,EAAE,MAAM,IAAIE,GAAEM,EAAE;YAAG,EAAC;;QAAM;OAAC;QAAC,KAAI;QAAc,OAAM,SAAS,GAAE;SAAC,IAAIR,IAAE;AAAK,gBAAOC,EAAE,SAAS,SAAS,GAAE;AAAC,iBAAOD,EAAE,SAAS,IAAIC,EAAE;YAAG,EAAC;;QAAM;OAAC;QAAC,KAAI;QAAc,OAAM,SAAS,GAAE;SAAC,IAAID,IAAE;AAAK,gBAAOC,EAAE,SAAS,SAAS,GAAE;AAAC,iBAAOD,EAAE,SAAS,IAAIC,EAAE;YAAG,EAAC;;QAAM;OAAC;QAAC,KAAI;QAAU,OAAM,SAAS,GAAE;AAAC,gBAAO,KAAK,SAAS,OAAO,OAAO,KAAK,aAAa,EAACA,EAAE,CAAC;;QAAE;OAAC;QAAC,KAAI;QAAc,OAAM,WAAU;SAAC,IAAIA,GAAED,IAAE,EAAE,EAACG,IAAED,EAAE,KAAK,SAAS;AAAC,aAAG;AAAC,eAAIC,EAAE,GAAG,EAAC,EAAE,IAAEA,EAAE,GAAG,EAAE,OAAM;WAAC,IAAIK,IAAE,EAAEP,EAAE,OAAM,EAAE,EAACI,IAAEG,EAAE;AAAU,aAAEH,KAAPG,EAAE;;kBAAiBP,GAAE;AAAC,YAAE,EAAEA,EAAE;mBAAQ;AAAC,YAAE,GAAG;;AAAC,gBAAOD;;QAAG;OAAC;QAAC,KAAI;QAAW,OAAM,SAAS,GAAE;AAAC,cAAI,IAAIA,KAAKC,EAAE,MAAK,WAAW,IAAID,EAAE,KAAG,EAAEA,KAAG,KAAK,WAAW,IAAIA,EAAE,CAACC,EAAED,GAAG;AAAE,cAAI,IAAIG,KAAKF,GAAE;AAAC,cAAG,CAAC,KAAK,aAAaE,EAAE,CAAC,OAAU,MAAM,kBAAyBA,MAAQ;AAAC,eAAK,UAAUA,GAAEF,EAAEE,GAAG;;SAAC,IAAIC,GAAEI,IAAEN,EAAE,KAAK,SAAS,QAAQ,CAAC;AAAC,aAAG;AAAC,eAAIM,EAAE,GAAG,EAAC,EAAE,IAAEA,EAAE,GAAG,EAAE,OAAM;WAAC,IAAIH,IAAED,EAAE;AAAM,eAAYH,EAAEI,OAAX,KAAK,EAAS,OAAU,MAAM,WAAkBA,kBAAoB;;kBAAQJ,GAAE;AAAC,YAAE,EAAEA,EAAE;mBAAQ;AAAC,YAAE,GAAG;;AAAC,gBAAOA;;QAAG;OAAC;QAAC,KAAI;QAAY,OAAM,SAAS,GAAE,GAAE;AAAC,aAAG,KAAK,MAAM,IAAIA,EAAE,EAAC;UAAC,IAAIC,IAAE,KAAK,MAAM,IAAID,EAAE,EAACG,IAAED,EAAEH,EAAE;AAAC,cAAGI,MAAIF,EAAE,OAAU,MAAM,2BAAkCD,sBAA+BC,YAAqBE,MAAQ;;;QAAG;OAAC;QAAC,KAAI;QAAe,OAAM,SAAS,GAAE;AAAC,gBAAM,CAAC,KAAK,UAAQ,KAAK,SAAS,IAAIH,EAAE,IAAE,KAAK,WAAW,IAAIA,EAAE,IAAE,KAAK,SAAS,IAAIA,EAAE,IAAE,KAAK,SAAS,IAAIA,EAAE,IAAE,KAAK,MAAM,IAAIA,EAAE;;QAAE;OAAC,KAAG,SAAS,GAAE,GAAE;AAAC,YAAI,IAAIC,IAAE,GAAEA,IAAEF,EAAE,QAAO,KAAI;QAAC,IAAII,IAAEJ,EAAEE;AAAG,UAAE,aAAWE,EAAE,cAAY,CAAC,GAAE,EAAE,eAAa,CAAC,GAAE,WAAUA,MAAI,EAAE,WAAS,CAAC,IAAG,OAAO,eAAeH,IAAG,IAAE,SAAS,GAAE,GAAE;AAAC,aAAcE,EAAEF,EAAE,KAAf,YAAwBA,MAAP,KAAS,QAAOA;SAAE,IAAIC,IAAED,EAAE,OAAO;AAAa,aAAYC,MAAT,KAAK,GAAM;UAAC,IAAIE,IAAEF,EAAE,KAAKD,GAAE,SAAS;AAAC,cAAcE,EAAEC,EAAE,KAAf,SAAgB,QAAOA;AAAE,gBAAU,UAAU,+CAA+C;;AAAC,gBAAO,OAAOH,EAAE;UAAEG,EAAE,IAAI,EAAYD,EAAEK,EAAE,KAAf,WAAgBA,IAAE,OAAOA,EAAE,GAAEJ,EAAE;;OAAC,IAAII;QAAGR,EAAE,WAAUQ,EAAE,EAAC,OAAO,eAAeR,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACC;QAAI;AAAC,YAAOD,EAAE;QAAW,GAAc;;GAAE,KAAI,SAAS,GAAE;AAAC,MAAE,iBAAa;KAAc,IAAIC,IAAE;MAAC,IAAG,GAAE,MAAI;AAAC,YAAI,IAAIC,KAAKC,EAAE,GAAE,EAAEA,GAAED,EAAE,IAAE,CAACD,EAAE,EAAED,GAAEE,EAAE,IAAE,OAAO,eAAeF,GAAEE,GAAE;QAAC,YAAW,CAAC;QAAE,KAAIC,EAAED;QAAG,CAAC;;MAAE,IAAG,GAAE,MAAI,OAAO,UAAU,eAAe,KAAKD,GAAED,EAAE;MAAC,EAACA,IAAE,EAAE;AAAC,OAAE,EAAEA,GAAE,EAAC,eAAYG,GAAE,CAAC;KAAC,IAAIA,IAAE,WAAU;MAAC,SAASF,IAAG;AAAC,QAAC,SAAS,GAAE,GAAE;AAAC,YAAG,EAAEA,aAAaD,GAAG,OAAU,UAAU,oCAAoC;UAAE,MAAKC,EAAE,EAAC,KAAK,UAAQ,EAAE,EAAC,KAAK,KAAG,KAAK,kBAAiB,KAAK,MAAI,KAAK;;MAAoB,IAAID;AAAE,cAAO,IAAE;OAAC;QAAC,KAAI;QAAO,OAAM,SAAS,GAAE,GAAE;AAAC,aAAG,OAAO,UAAU,eAAe,KAAK,KAAK,SAAQC,EAAE,CAAC,MAAI,IAAIE,IAAE,KAAK,QAAQF,IAAGC,IAAE;UAAC,MAAKD;UAAE,QAAOD;UAAE,EAAC,IAAEG,EAAE,QAAO,IAAE,GAAE,IAAE,GAAE,IAAI,MAAK,OAAOA,EAAE,IAAGD,EAAE;;QAAE;OAAC;QAAC,KAAI;QAAS,OAAM,SAAS,GAAE,GAAE;AAAC,WAAEF,EAAE;;QAAE;OAAC;QAAC,KAAI;QAAmB,OAAM,SAAS,GAAE,GAAE;AAAC,gBAAO,UAAU,eAAe,KAAK,KAAK,SAAQC,EAAE,KAAG,KAAK,QAAQA,KAAG,EAAE,GAAE,KAAK,QAAQA,GAAG,QAAQD,EAAE,GAAC,KAAG,KAAK,QAAQC,GAAG,KAAKD,EAAE;;QAAE;OAAC;QAAC,KAAI;QAAsB,OAAM,SAAS,GAAE,GAAE;AAAC,aAAG,OAAO,UAAU,eAAe,KAAK,KAAK,SAAQC,EAAE,EAAC;UAAC,IAAIE,IAAE,KAAK,QAAQF,IAAGC,IAAEC,EAAE,QAAQH,EAAE;AAAC,eAAG,KAAGG,EAAE,OAAOD,GAAE,EAAE,EAAKC,EAAE,WAAN,KAAc,OAAO,KAAK,QAAQF;;;QAAK;OAAC,KAAG,SAAS,GAAE,GAAE;AAAC,YAAI,IAAIE,IAAE,GAAEA,IAAEH,EAAE,QAAO,KAAI;QAAC,IAAIE,IAAEF,EAAEG;AAAG,UAAE,aAAWD,EAAE,cAAY,CAAC,GAAE,EAAE,eAAa,CAAC,GAAE,WAAUA,MAAI,EAAE,WAAS,CAAC,IAAG,OAAO,eAAeD,GAAEC,EAAE,KAAIA,EAAE;;QAAGD,EAAE,WAAUD,EAAE,EAACC;QAAI;AAAC,YAAOD,EAAE;QAAW;;GAAE,EAAC,IAAE,EAAE;EAAC,SAAS,EAAE,GAAE;GAAC,IAAI,IAAE,EAAEE;AAAG,OAAY,MAAT,KAAK,EAAM,QAAO,EAAE;GAAQ,IAAI,IAAE,EAAEA,KAAG,EAAC,SAAQ,EAAE,EAAC;AAAC,UAAO,EAAEA,GAAG,KAAK,EAAE,SAAQ,GAAE,EAAE,SAAQ,EAAE,EAAC,EAAE;;AAAQ,IAAE,KAAE,MAAG;GAAC,IAAIF,IAAEC,KAAGA,EAAE,mBAAeA,EAAE,gBAAYA;AAAE,UAAO,EAAE,EAAED,GAAE,EAAC,GAAEA,GAAE,CAAC,EAACA;KAAG,EAAE,KAAG,GAAE,MAAI;AAAC,QAAI,IAAIE,KAAKF,EAAE,GAAE,EAAEA,GAAEE,EAAE,IAAE,CAAC,EAAE,EAAED,GAAEC,EAAE,IAAE,OAAO,eAAeD,GAAEC,GAAE;IAAC,YAAW,CAAC;IAAE,KAAIF,EAAEE;IAAG,CAAC;KAAE,EAAE,KAAG,GAAE,MAAI,OAAO,UAAU,eAAe,KAAKD,GAAED,EAAE,EAAC,EAAE,KAAE,MAAG;AAAC,GAAa,OAAO,SAApB,OAA4B,OAAO,eAAa,OAAO,eAAeC,GAAE,OAAO,aAAY,EAAC,OAAM,UAAS,CAAC,EAAC,OAAO,eAAeA,GAAE,cAAa,EAAC,OAAM,CAAC,GAAE,CAAC;;EAAE,IAAI,IAAE,EAAE;AAAC,gBAAW;AAAc,KAAE,EAAE,EAAE,EAAC,EAAE,EAAE,GAAE;IAAC,sBAAmB;IAAE,uBAAoB;IAAE,CAAC;GAAC,IAAIA,IAAE,EAAE,IAAI,EAACD,IAAE,EAAE,EAAEC,EAAE,EAAC,IAAE,EAAE,IAAI,EAAC,IAAE,EAAE,EAAE,EAAE;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,IAAc,OAAO,UAAnB,cAAqC,OAAO,OAAO,YAAxB,WAAiC,SAAS,GAAE;AAAC,YAAO,OAAOA;QAAG,SAAS,GAAE;AAAC,YAAOA,KAAe,OAAO,UAAnB,cAA2BA,EAAE,gBAAc,UAAQA,MAAI,OAAO,YAAU,WAAS,OAAOA;OAAG,EAAEA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAG,EAAEA,aAAaD,GAAG,OAAU,UAAU,oCAAoC;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,SAAI,IAAIG,IAAE,GAAEA,IAAEH,EAAE,QAAO,KAAI;KAAC,IAAIE,IAAEF,EAAEG;AAAG,OAAE,aAAWD,EAAE,cAAY,CAAC,GAAE,EAAE,eAAa,CAAC,GAAE,WAAUA,MAAI,EAAE,WAAS,CAAC,IAAG,OAAO,eAAeD,GAAE,EAAEC,EAAE,IAAI,EAACA,EAAE;;;GAAE,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,IAAE,OAAO,iBAAe,OAAO,eAAe,MAAM,GAAC,SAAS,GAAE,GAAE;AAAC,YAAO,EAAE,YAAUF,GAAEC;OAAG,EAAEA,GAAED,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAGA,MAAe,EAAEA,EAAE,KAAf,YAA6B,OAAOA,KAAnB,YAAsB,QAAOA;AAAE,QAAYA,MAAT,KAAK,EAAM,OAAU,UAAU,2DAA2D;AAAC,WAAO,SAAS,GAAE;AAAC,SAAYC,MAAT,KAAK,EAAM,OAAU,eAAe,4DAA4D;AAAC,YAAOA;MAAGA,EAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,IAAE,OAAO,iBAAe,OAAO,eAAe,MAAM,GAAC,SAAS,GAAE;AAAC,YAAOA,EAAE,aAAW,OAAO,eAAeA,EAAE;OAAE,EAAEA,EAAE;;GAAC,SAAS,EAAE,GAAE;IAAC,IAAID,IAAE,SAAS,GAAE,GAAE;AAAC,SAAc,EAAEC,EAAE,KAAf,YAAwBA,MAAP,KAAS,QAAOA;KAAE,IAAIE,IAAEF,EAAE,OAAO;AAAa,SAAYE,MAAT,KAAK,GAAM;MAAC,IAAID,IAAEC,EAAE,KAAKF,GAAE,SAAS;AAAC,UAAc,EAAEC,EAAE,KAAf,SAAgB,QAAOA;AAAE,YAAU,UAAU,+CAA+C;;AAAC,YAAO,OAAOD,EAAE;MAAEA,EAAE;AAAC,WAAiB,EAAED,EAAE,KAAf,WAAgBA,IAAE,OAAOA,EAAE;;GAAC,IAAI,GAAE,GAAE,GAAE,IAAE,SAAS,GAAE;AAAC,KAAC,SAAS,GAAE,GAAE;AAAC,SAAe,OAAOA,KAAnB,cAA6BA,MAAP,KAAS,OAAU,UAAU,qDAAqD;AAAC,OAAE,YAAU,OAAO,OAAOA,KAAGA,EAAE,WAAU,EAAC,aAAY;MAAC,OAAMC;MAAE,UAAS,CAAC;MAAE,cAAa,CAAC;MAAE,EAAC,CAAC,EAAC,OAAO,eAAeA,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACD,KAAG,EAAEC,GAAED,EAAE;OAAES,GAAER,EAAE;IAAC,IAAID,GAAEG,GAAED,GAAEE,GAAEI,GAAEH,KAAG,IAAEI,GAAE,IAAE,WAAU;AAA6D,SAA5C,OAAO,UAApB,OAA6B,CAAC,QAAQ,aAAsB,QAAQ,UAAU,KAAK,QAAM,CAAC;AAAE,SAAe,OAAO,SAAnB,WAAyB,QAAM,CAAC;AAAE,SAAG;AAAC,aAAO,QAAQ,UAAU,QAAQ,KAAK,QAAQ,UAAU,SAAQ,EAAE,GAAE,WAAU,IAAI,CAAC,EAAC,CAAC;aAAU;AAAC,aAAM,CAAC;;OAAK,EAAC,WAAU;KAAC,IAAIR,GAAED,IAAE,EAAEI,EAAE;AAAC,SAAGI,GAAE;MAAC,IAAIL,IAAE,EAAE,KAAK,CAAC;AAAY,UAAE,QAAQ,UAAUH,GAAE,WAAUG,EAAE;WAAM,KAAEH,EAAE,MAAM,MAAK,UAAU;AAAC,YAAO,EAAE,MAAKC,EAAE;;IAAG,SAASQ,EAAE,GAAE,GAAE;KAAC,IAAIN,GAAED,IAAE,UAAU,SAAO,KAAY,UAAU,OAAnB,KAAK,IAAiB,UAAU,KAAG,EAAE;AAAC,YAAO,EAAE,MAAKO,EAAE,EAAC,CAAC,IAAEJ,EAAE,KAAK,KAAK,EAAE,QAAMJ,GAAE,EAAE,UAAQD,GAAE,EAAE,UAAQG,EAAE,YAAY,eAAeD,EAAE,EAAC,EAAE,OAAS,MAAMF,EAAE,KAAK,OAAO,CAAC,KAAK,KAAK,EAAC,EAAE,UAAY,MAAMA,EAAE,QAAQ,OAAO,CAAC,KAAK,KAAK,EAACG,EAAE,UAAU,EAACA,EAAE,aAAa,EAACA;;AAAE,WAAO,IAAEM,GAAE,IAAE,CAAC;KAAC,KAAI;KAAiB,OAAM,SAAS,GAAE;MAAC,IAAYD,IAAEP,EAAE,MAAKI,IAAEJ,EAAE;AAAO,aAAM;OAAC,MAAK,KAAK,eAAe,QAAkCO,KAAIH,KAAiBJ,KAAiB,EAAE,CAAC;OAAC,QAAO,KAAK,eAAe,QAAkCI,KAAIG,KAAiBP,KAAiB,EAAE,CAAC;OAAC;;KAAE,CAAC,GAAE,IAAE;KAAC;MAAC,KAAI;MAAW,OAAM,WAAU;AAAC,YAAI,IAAIA,IAAE,KAAK,KAAK,QAAOD,IAAE,GAAEA,IAAEC,GAAE,IAAI,MAAK,KAAKD,KAAG,KAAK,iBAAiBA,EAAE;;MAAE;KAAC;MAAC,KAAI;MAAc,OAAM,WAAU;AAAC,YAAI,IAAIC,IAAE,KAAK,QAAQ,QAAOD,IAAE,GAAEA,IAAEC,GAAE,IAAI,MAAK,QAAQD,KAAG,KAAK,mBAAmBA,EAAE;;MAAE;KAAC;MAAC,KAAI;MAAS,OAAM,SAAS,GAAE;AAAC,YAAK,UAAQC,GAAE,KAAK,YAAY,EAAC,KAAK,eAAe;;MAAE;KAAC;MAAC,KAAI;MAAa,OAAM,WAAU;AAAC,YAAI,IAAIA,IAAE,KAAK,KAAK,QAAOD,IAAE,GAAEA,IAAEC,GAAE,IAAI,MAAK,aAAaD,GAAE,KAAK,iBAAiBA,EAAE,CAAC;;MAAE;KAAC;MAAC,KAAI;MAAgB,OAAM,WAAU;AAAC,YAAI,IAAIC,IAAE,KAAK,QAAQ,QAAOD,IAAE,GAAEA,IAAEC,GAAE,IAAI,MAAK,eAAeD,GAAE,KAAK,mBAAmBA,EAAE,CAAC;;MAAE;KAAC;MAAC,KAAI;MAAe,OAAM,SAAS,GAAE,GAAE;AAAC,YAAK,KAAKC,OAAKD,MAAI,KAAK,KAAKC,KAAGD,GAAE,KAAK,KAAK,QAAO;QAAC,SAAQ,KAAK;QAAQ,OAAM,KAAK;QAAM,MAAKC;QAAE,OAAMD;QAAE,CAAC;;MAAG;KAAC;MAAC,KAAI;MAAiB,OAAM,SAAS,GAAE,GAAE;AAAC,YAAK,QAAQC,OAAKD,MAAI,KAAK,QAAQC,KAAGD,GAAE,KAAK,KAAK,UAAS;QAAC,SAAQ,KAAK;QAAQ,OAAM,KAAK;QAAM,QAAOC;QAAE,SAAQ,KAAK,QAAQ,QAAQA,GAAG;QAAQ,OAAMD;QAAE,CAAC;;MAAG;KAAC;MAAC,KAAI;MAAmB,OAAM,SAAS,GAAE;OAAC,IAAIA,IAAE,KAAK,QAAQ,MAAKG,IAAEH,EAAE,UAASE,IAAEF,EAAE,QAAOI,IAAEJ,EAAE,WAAUQ,IAAE,KAAK,QAAQ,KAAKP;AAAG,cAAOE,KAAGK,IAAEL,KAAGK,IAAE,CAACL,IAAE,IAAED,IAAEE,IAAE,KAAK,MAAMI,IAAEJ,EAAE,GAACA,IAAEI,IAAEA,IAAE,IAAE,IAAEA,IAAE,IAAE,KAAG;;MAAG;KAAC;MAAC,KAAI;MAAqB,OAAM,SAAS,GAAE;OAAC,IAAIR,IAAE,KAAK,QAAQ,QAAOG,IAAEH,EAAE,UAASE,IAAEF,EAAE,QAAOI,IAAEJ,EAAE,WAAUQ,IAAE,KAAK,QAAQ,QAAQP,GAAG;AAAM,cAAOE,IAAE,KAAGK,IAAEL,KAAGK,IAAE,CAACL,IAAE,IAAED,IAAEE,IAAE,KAAK,MAAMI,IAAEJ,EAAE,GAACA,IAAEI,IAAMA,MAAJ,IAAM,IAAE;;MAAG;KAAC,KAAG,EAAER,EAAE,WAAUG,EAAE,EAACD,KAAG,EAAEF,GAAEE,EAAE,EAAC,OAAO,eAAeF,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACS;KAAGT,GAAG,CAAC;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,IAAc,OAAO,UAAnB,cAAqC,OAAO,OAAO,YAAxB,WAAiC,SAAS,GAAE;AAAC,YAAO,OAAOC;QAAG,SAAS,GAAE;AAAC,YAAOA,KAAe,OAAO,UAAnB,cAA2BA,EAAE,gBAAc,UAAQA,MAAI,OAAO,YAAU,WAAS,OAAOA;OAAG,EAAEA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,SAAI,IAAIE,IAAE,GAAEA,IAAEH,EAAE,QAAO,KAAI;KAAC,IAAIE,IAAEF,EAAEG;AAAG,OAAE,aAAWD,EAAE,cAAY,CAAC,GAAE,EAAE,eAAa,CAAC,GAAE,WAAUA,MAAI,EAAE,WAAS,CAAC,IAAG,OAAO,eAAeD,GAAE,EAAEC,EAAE,IAAI,EAACA,EAAE;;;GAAE,SAAS,EAAE,GAAE;IAAC,IAAIF,IAAE,SAAS,GAAE,GAAE;AAAC,SAAc,EAAEC,EAAE,KAAf,YAAwBA,MAAP,KAAS,QAAOA;KAAE,IAAIE,IAAEF,EAAE,OAAO;AAAa,SAAYE,MAAT,KAAK,GAAM;MAAC,IAAID,IAAEC,EAAE,KAAKF,GAAE,SAAS;AAAC,UAAc,EAAEC,EAAE,KAAf,SAAgB,QAAOA;AAAE,YAAU,UAAU,+CAA+C;;AAAC,YAAO,OAAOD,EAAE;MAAEA,EAAE;AAAC,WAAiB,EAAED,EAAE,KAAf,WAAgBA,IAAE,OAAOA,EAAE;;AAAC,OAAE,GAAE,IAAE,kBAAiB,IAAG,KAAI,GAAG,GAAC,CAAE,YAAY;IAAC,QAAO,CAAC;IAAE,UAAS;IAAE,WAAU;IAAE,CAAC,CAAC,SAAS;IAAC,QAAO;IAAU,UAAS;IAAS,WAAU;IAAS,CAAC,CAAC,cAAc;IAAC,UAAS,SAAS,GAAE;AAAC,YAAO,KAAK,IAAI,KAAK,IAAIC,GAAE,EAAE,EAAC,EAAE;;IAAE,WAAU,SAAS,GAAE;AAAC,YAAOA,IAAE,IAAW,MAAGA,IAAG;;IAAG,CAAC,GAAE,IAAE,EAAE,EAAE,KAAI,IAAE,OAAO,eAAe,GAAE,GAAE;IAAC,OAAM;IAAE,YAAW,CAAC;IAAE,cAAa,CAAC;IAAE,UAAS,CAAC;IAAE,CAAC,GAAC,EAAE,KAAG;GAAE,IAAI,IAAE,WAAU;IAAC,SAASA,EAAE,GAAE;AAAC,MAAC,SAAS,GAAE,GAAE;AAAC,UAAG,EAAEA,aAAaD,GAAG,OAAU,UAAU,oCAAoC;QAAE,MAAKC,EAAE,EAAC,KAAK,WAASD,GAAE,KAAK,QAAM,MAAK,KAAK,SAAO,KAAK,OAAO,KAAK,KAAK;;IAAC,IAAIA,GAAEG;AAAE,WAAO,IAAEF,IAAG,IAAE;KAAC;MAAC,KAAI;MAAc,OAAM,SAAS,GAAE;AAAC,YAAK,WAASA;;MAAG;KAAC;MAAC,KAAI;MAAQ,OAAM,WAAU;AAAC,OAAa,KAAK,UAAM,OAAO,sBAAsB,KAAK,OAAO;;MAAG;KAAC;MAAC,KAAI;MAAO,OAAM,WAAU;AAAC,OAAqD,KAAK,WAA7C,OAAO,qBAAqB,KAAK,MAAM,EAAY;;MAAO;KAAC;MAAC,KAAI;MAAS,OAAM,WAAU;AAAC,YAAK,QAAM,OAAO,sBAAsB,KAAK,OAAO,EAAC,KAAK,UAAU;;MAAE;KAAC,KAAG,EAAED,EAAE,WAAUG,EAAE,EAAC,OAAO,eAAeH,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACC;MAAI;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,IAAc,OAAO,UAAnB,cAAqC,OAAO,OAAO,YAAxB,WAAiC,SAAS,GAAE;AAAC,YAAO,OAAOA;QAAG,SAAS,GAAE;AAAC,YAAOA,KAAe,OAAO,UAAnB,cAA2BA,EAAE,gBAAc,UAAQA,MAAI,OAAO,YAAU,WAAS,OAAOA;OAAG,EAAEA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAG,EAAEA,aAAaD,GAAG,OAAU,UAAU,oCAAoC;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,SAAI,IAAIG,IAAE,GAAEA,IAAEH,EAAE,QAAO,KAAI;KAAC,IAAIE,IAAEF,EAAEG;AAAG,OAAE,aAAWD,EAAE,cAAY,CAAC,GAAE,EAAE,eAAa,CAAC,GAAE,WAAUA,MAAI,EAAE,WAAS,CAAC,IAAG,OAAO,eAAeD,GAAE,EAAEC,EAAE,IAAI,EAACA,EAAE;;;GAAE,SAAS,EAAE,GAAE;IAAC,IAAIF,IAAE,SAAS,GAAE,GAAE;AAAC,SAAc,EAAEC,EAAE,KAAf,YAAwBA,MAAP,KAAS,QAAOA;KAAE,IAAIE,IAAEF,EAAE,OAAO;AAAa,SAAYE,MAAT,KAAK,GAAM;MAAC,IAAID,IAAEC,EAAE,KAAKF,GAAE,SAAS;AAAC,UAAc,EAAEC,EAAE,KAAf,SAAgB,QAAOA;AAAE,YAAU,UAAU,+CAA+C;;AAAC,YAAO,OAAOD,EAAE;MAAEA,EAAE;AAAC,WAAiB,EAAED,EAAE,KAAf,WAAgBA,IAAE,OAAOA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,IAAE,OAAO,iBAAe,OAAO,eAAe,MAAM,GAAC,SAAS,GAAE,GAAE;AAAC,YAAO,EAAE,YAAUA,GAAEC;OAAG,EAAEA,GAAED,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAGA,MAAe,EAAEA,EAAE,KAAf,YAA6B,OAAOA,KAAnB,YAAsB,QAAOA;AAAE,QAAYA,MAAT,KAAK,EAAM,OAAU,UAAU,2DAA2D;AAAC,WAAO,EAAEC,EAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,QAAYA,MAAT,KAAK,EAAM,OAAU,eAAe,4DAA4D;AAAC,WAAOA;;GAAE,SAAS,EAAE,GAAE;AAAC,WAAO,IAAE,OAAO,iBAAe,OAAO,eAAe,MAAM,GAAC,SAAS,GAAE;AAAC,YAAOA,EAAE,aAAW,OAAO,eAAeA,EAAE;OAAE,EAAEA,EAAE;;GAAC,IAAI,IAAE,SAAS,GAAE;AAAC,KAAC,SAAS,GAAE,GAAE;AAAC,SAAe,OAAOD,KAAnB,cAA6BA,MAAP,KAAS,OAAU,UAAU,qDAAqD;AAAC,OAAE,YAAU,OAAO,OAAOA,KAAGA,EAAE,WAAU,EAAC,aAAY;MAAC,OAAMC;MAAE,UAAS,CAAC;MAAE,cAAa,CAAC;MAAE,EAAC,CAAC,EAAC,OAAO,eAAeA,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACD,KAAG,EAAEC,GAAED,EAAE;OAAEK,GAAEJ,EAAE;IAAC,IAAID,GAAEG,GAAED,GAAEE,GAAEI,KAAG,IAAEH,GAAE,IAAE,WAAU;AAA6D,SAA5C,OAAO,UAApB,OAA6B,CAAC,QAAQ,aAAsB,QAAQ,UAAU,KAAK,QAAM,CAAC;AAAE,SAAe,OAAO,SAAnB,WAAyB,QAAM,CAAC;AAAE,SAAG;AAAC,aAAO,QAAQ,UAAU,QAAQ,KAAK,QAAQ,UAAU,SAAQ,EAAE,GAAE,WAAU,IAAI,CAAC,EAAC,CAAC;aAAU;AAAC,aAAM,CAAC;;OAAK,EAAC,WAAU;KAAC,IAAIJ,GAAED,IAAE,EAAEE,EAAE;AAAC,SAAGE,GAAE;MAAC,IAAID,IAAE,EAAE,KAAK,CAAC;AAAY,UAAE,QAAQ,UAAUH,GAAE,WAAUG,EAAE;WAAM,KAAEH,EAAE,MAAM,MAAK,UAAU;AAAC,YAAO,EAAE,MAAKC,EAAE;;IAAG,SAASI,IAAG;KAAC,IAAIJ,GAAED,IAAE,UAAU,SAAO,KAAY,UAAU,OAAnB,KAAK,IAAiB,UAAU,KAAG,EAAE;AAAC,SAAG,EAAE,MAAKK,EAAE,EAAC,IAAEG,EAAE,KAAK,KAAK,EAAa,OAAO,UAAU,eAA7B,WAAyC,OAAU,MAAM,6CAA6C;AAAC,YAAO,EAAE,UAAQR,GAAE,EAAE,SAAOC,EAAE,OAAO,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,SAAOA,EAAE,OAAO,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,QAAMA,EAAE,MAAM,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,OAAKA,EAAE,KAAK,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,WAASA,EAAE,SAAS,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,WAASA,EAAE,SAAS,KAAK,EAAEA,EAAE,CAAC,EAAC,EAAE,WAAS;;;;;MAAY,CAAC,KAAK,KAAK,EAAC,EAAE,OAAK,IAAI,EAAEA,EAAE,OAAO,EAAC,OAAO,iBAAiB,SAAQA,EAAE,KAAK,EAACA;;AAAE,WAAO,IAAEI,IAAG,IAAE;KAAC;MAAC,KAAI;MAAQ,OAAM,WAAU;AAAC,YAAK,KAAK,OAAO;;MAAE;KAAC;MAAC,KAAI;MAAO,OAAM,WAAU;AAAC,YAAK,KAAK,MAAM;;MAAE;KAAC;MAAC,KAAI;MAAS,OAAM,WAAU;OAAC,IAAIJ,IAAE,UAAU,aAAa;AAAC,YAAK,SAASA,EAAE,IAAG,EAAE,EAAC,KAAK,SAASA,EAAE,IAAG,EAAE,EAAC,KAAK,SAASA,EAAE,IAAG,EAAE,EAAC,KAAK,SAASA,EAAE,IAAG,EAAE;;MAAE;KAAC;MAAC,KAAI;MAAW,OAAM,SAAS,GAAE,GAAE;AAAC,YAAU,KAAK,SAASD,OAArB,QAAyB,KAAK,gBAAgBA,GAAEC,EAAE,EAAC,KAAK,SAASD,GAAG,OAAOC,EAAE,IAAE,KAAK,SAASD,MAAI,KAAK,cAAcA,EAAE;;MAAE;KAAC;MAAC,KAAI;MAAkB,OAAM,SAAS,GAAE,GAAE;OAAC,IAAIG,IAAE,IAAI,EAAEF,GAAED,GAAE,KAAK,QAAQ;AAAC,YAAK,SAASC,KAAGE,GAAEA,EAAE,iBAAiB,QAAO,KAAK,OAAO,EAACA,EAAE,iBAAiB,UAAS,KAAK,SAAS,EAAC,KAAK,KAAK,qBAAoB;QAAC,OAAMF;QAAE,SAAQD;QAAE,CAAC,EAAC,KAAK,KAAK,WAAkBC,eAAgB;QAAC,OAAMA;QAAE,SAAQD;QAAE,CAAC;;MAAE;KAAC;MAAC,KAAI;MAAgB,OAAM,SAAS,GAAE;OAAC,IAAIA,IAAE,KAAK,SAASC;AAAG,SAAE,oBAAoB,QAAO,KAAK,OAAO,EAACD,EAAE,oBAAoB,UAAS,KAAK,SAAS,EAAC,KAAK,SAASC,KAAG,MAAK,KAAK,KAAK,wBAAuB,EAAC,OAAMA,GAAE,CAAC,EAAC,KAAK,KAAK,WAAkBA,kBAAmB,EAAC,OAAMA,GAAE,CAAC;;MAAE;KAAC;MAAC,KAAI;MAAS,OAAM,SAAS,GAAE;OAAC,IAAID,IAAEC,EAAE,OAAO;AAAM,YAAK,KAAK,gBAAeA,EAAE,OAAO,EAAC,KAAK,KAAK,WAAkBD,UAAWC,EAAE,OAAO,EAAC,KAAK,KAAK,WAAkBD,UAAmBC,EAAE,OAAO,QAAMA,EAAE,OAAO;;MAAE;KAAC;MAAC,KAAI;MAAW,OAAM,SAAS,GAAE;OAAC,IAAID,IAAEC,EAAE,OAAO;AAAM,YAAK,KAAK,kBAAiBA,EAAE,OAAO,EAAC,KAAK,KAAK,WAAkBD,YAAaC,EAAE,OAAO,EAAC,KAAK,KAAK,WAAkBD,YAAqBC,EAAE,OAAO,UAAQA,EAAE,OAAO;;MAAE;KAAC,KAAG,EAAED,EAAE,WAAUG,EAAE,EAAC,OAAO,eAAeH,GAAE,aAAY,EAAC,UAAS,CAAC,GAAE,CAAC,EAACK;KAAGL,GAAG,CAAC;MAAI,EAAC;KAAK,EAAE"}