@nubjs/nub-linux-x64 0.0.5 → 0.0.8

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 (375) hide show
  1. package/bin/nub +0 -0
  2. package/package.json +1 -1
  3. package/runtime/addons/nub-native.node +0 -0
  4. package/runtime/cache-evict.mjs +69 -0
  5. package/runtime/node_modules/@js-temporal/polyfill/CHANGELOG.md +453 -0
  6. package/runtime/node_modules/@js-temporal/polyfill/LICENSE +13 -0
  7. package/runtime/node_modules/@js-temporal/polyfill/README.md +90 -0
  8. package/runtime/node_modules/@js-temporal/polyfill/dist/index.cjs +2 -0
  9. package/runtime/node_modules/@js-temporal/polyfill/dist/index.cjs.map +1 -0
  10. package/runtime/node_modules/@js-temporal/polyfill/dist/index.esm.js +2 -0
  11. package/runtime/node_modules/@js-temporal/polyfill/dist/index.esm.js.map +1 -0
  12. package/runtime/node_modules/@js-temporal/polyfill/dist/index.umd.js +2 -0
  13. package/runtime/node_modules/@js-temporal/polyfill/dist/index.umd.js.map +1 -0
  14. package/runtime/node_modules/@js-temporal/polyfill/index.d.cts +1215 -0
  15. package/runtime/node_modules/@js-temporal/polyfill/index.d.ts +1215 -0
  16. package/runtime/node_modules/@js-temporal/polyfill/lib/assert.ts +8 -0
  17. package/runtime/node_modules/@js-temporal/polyfill/lib/bigintmath.ts +39 -0
  18. package/runtime/node_modules/@js-temporal/polyfill/lib/calendar.ts +2424 -0
  19. package/runtime/node_modules/@js-temporal/polyfill/lib/debug.ts +7 -0
  20. package/runtime/node_modules/@js-temporal/polyfill/lib/duration.ts +438 -0
  21. package/runtime/node_modules/@js-temporal/polyfill/lib/durationformat.d.ts +93 -0
  22. package/runtime/node_modules/@js-temporal/polyfill/lib/ecmascript.ts +4973 -0
  23. package/runtime/node_modules/@js-temporal/polyfill/lib/index.ts +34 -0
  24. package/runtime/node_modules/@js-temporal/polyfill/lib/init.ts +43 -0
  25. package/runtime/node_modules/@js-temporal/polyfill/lib/instant.ts +138 -0
  26. package/runtime/node_modules/@js-temporal/polyfill/lib/internaltypes.d.ts +242 -0
  27. package/runtime/node_modules/@js-temporal/polyfill/lib/intl.ts +758 -0
  28. package/runtime/node_modules/@js-temporal/polyfill/lib/intrinsicclass.ts +162 -0
  29. package/runtime/node_modules/@js-temporal/polyfill/lib/legacydate.ts +17 -0
  30. package/runtime/node_modules/@js-temporal/polyfill/lib/math.ts +96 -0
  31. package/runtime/node_modules/@js-temporal/polyfill/lib/now.ts +48 -0
  32. package/runtime/node_modules/@js-temporal/polyfill/lib/plaindate.ts +212 -0
  33. package/runtime/node_modules/@js-temporal/polyfill/lib/plaindatetime.ts +274 -0
  34. package/runtime/node_modules/@js-temporal/polyfill/lib/plainmonthday.ts +110 -0
  35. package/runtime/node_modules/@js-temporal/polyfill/lib/plaintime.ts +154 -0
  36. package/runtime/node_modules/@js-temporal/polyfill/lib/plainyearmonth.ts +157 -0
  37. package/runtime/node_modules/@js-temporal/polyfill/lib/regex.ts +59 -0
  38. package/runtime/node_modules/@js-temporal/polyfill/lib/slots.ts +341 -0
  39. package/runtime/node_modules/@js-temporal/polyfill/lib/temporal.ts +10 -0
  40. package/runtime/node_modules/@js-temporal/polyfill/lib/timeduration.ts +149 -0
  41. package/runtime/node_modules/@js-temporal/polyfill/lib/zoneddatetime.ts +492 -0
  42. package/runtime/node_modules/@js-temporal/polyfill/package.json +143 -0
  43. package/runtime/node_modules/@oxc-parser/binding-linux-x64-gnu/README.md +3 -0
  44. package/runtime/node_modules/@oxc-parser/binding-linux-x64-gnu/package.json +42 -0
  45. package/runtime/node_modules/@oxc-parser/binding-linux-x64-gnu/parser.linux-x64-gnu.node +0 -0
  46. package/runtime/node_modules/@oxc-project/runtime/CHANGELOG.md +88 -0
  47. package/runtime/node_modules/@oxc-project/runtime/LICENSE +22 -0
  48. package/runtime/node_modules/@oxc-project/runtime/README.md +5 -0
  49. package/runtime/node_modules/@oxc-project/runtime/package.json +1066 -0
  50. package/runtime/node_modules/@oxc-project/runtime/src/helpers/AwaitValue.js +4 -0
  51. package/runtime/node_modules/@oxc-project/runtime/src/helpers/OverloadYield.js +4 -0
  52. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecoratedDescriptor.js +9 -0
  53. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs.js +236 -0
  54. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs2203.js +184 -0
  55. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs2203R.js +191 -0
  56. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs2301.js +222 -0
  57. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs2305.js +133 -0
  58. package/runtime/node_modules/@oxc-project/runtime/src/helpers/applyDecs2311.js +124 -0
  59. package/runtime/node_modules/@oxc-project/runtime/src/helpers/arrayLikeToArray.js +6 -0
  60. package/runtime/node_modules/@oxc-project/runtime/src/helpers/arrayWithHoles.js +4 -0
  61. package/runtime/node_modules/@oxc-project/runtime/src/helpers/arrayWithoutHoles.js +5 -0
  62. package/runtime/node_modules/@oxc-project/runtime/src/helpers/assertClassBrand.js +5 -0
  63. package/runtime/node_modules/@oxc-project/runtime/src/helpers/assertThisInitialized.js +5 -0
  64. package/runtime/node_modules/@oxc-project/runtime/src/helpers/asyncGeneratorDelegate.js +24 -0
  65. package/runtime/node_modules/@oxc-project/runtime/src/helpers/asyncIterator.js +45 -0
  66. package/runtime/node_modules/@oxc-project/runtime/src/helpers/asyncToGenerator.js +26 -0
  67. package/runtime/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js +5 -0
  68. package/runtime/node_modules/@oxc-project/runtime/src/helpers/callSuper.js +7 -0
  69. package/runtime/node_modules/@oxc-project/runtime/src/helpers/checkInRHS.js +6 -0
  70. package/runtime/node_modules/@oxc-project/runtime/src/helpers/checkPrivateRedeclaration.js +4 -0
  71. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classApplyDescriptorDestructureSet.js +10 -0
  72. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classApplyDescriptorGet.js +4 -0
  73. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classApplyDescriptorSet.js +7 -0
  74. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classCallCheck.js +4 -0
  75. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classCheckPrivateStaticAccess.js +5 -0
  76. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classCheckPrivateStaticFieldDescriptor.js +4 -0
  77. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classExtractFieldDescriptor.js +5 -0
  78. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classNameTDZError.js +4 -0
  79. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldDestructureSet.js +7 -0
  80. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldGet.js +7 -0
  81. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldGet2.js +5 -0
  82. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldInitSpec.js +5 -0
  83. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldLooseBase.js +5 -0
  84. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldLooseKey.js +5 -0
  85. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldSet.js +7 -0
  86. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateFieldSet2.js +5 -0
  87. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateGetter.js +5 -0
  88. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateMethodGet.js +5 -0
  89. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateMethodInitSpec.js +5 -0
  90. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateMethodSet.js +4 -0
  91. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classPrivateSetter.js +5 -0
  92. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classStaticPrivateFieldDestructureSet.js +7 -0
  93. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classStaticPrivateFieldSpecGet.js +7 -0
  94. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classStaticPrivateFieldSpecSet.js +7 -0
  95. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classStaticPrivateMethodGet.js +5 -0
  96. package/runtime/node_modules/@oxc-project/runtime/src/helpers/classStaticPrivateMethodSet.js +4 -0
  97. package/runtime/node_modules/@oxc-project/runtime/src/helpers/construct.js +10 -0
  98. package/runtime/node_modules/@oxc-project/runtime/src/helpers/createClass.js +13 -0
  99. package/runtime/node_modules/@oxc-project/runtime/src/helpers/createForOfIteratorHelper.js +50 -0
  100. package/runtime/node_modules/@oxc-project/runtime/src/helpers/createForOfIteratorHelperLoose.js +19 -0
  101. package/runtime/node_modules/@oxc-project/runtime/src/helpers/createSuper.js +16 -0
  102. package/runtime/node_modules/@oxc-project/runtime/src/helpers/decorate.js +23 -0
  103. package/runtime/node_modules/@oxc-project/runtime/src/helpers/decorateMetadata.js +9 -0
  104. package/runtime/node_modules/@oxc-project/runtime/src/helpers/decorateParam.js +11 -0
  105. package/runtime/node_modules/@oxc-project/runtime/src/helpers/defaults.js +9 -0
  106. package/runtime/node_modules/@oxc-project/runtime/src/helpers/defineAccessor.js +8 -0
  107. package/runtime/node_modules/@oxc-project/runtime/src/helpers/defineEnumerableProperties.js +12 -0
  108. package/runtime/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js +10 -0
  109. package/runtime/node_modules/@oxc-project/runtime/src/helpers/dispose.js +28 -0
  110. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/AwaitValue.js +4 -0
  111. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/OverloadYield.js +4 -0
  112. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecoratedDescriptor.js +9 -0
  113. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs.js +236 -0
  114. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs2203.js +184 -0
  115. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs2203R.js +191 -0
  116. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs2301.js +222 -0
  117. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs2305.js +133 -0
  118. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/applyDecs2311.js +124 -0
  119. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/arrayLikeToArray.js +6 -0
  120. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/arrayWithHoles.js +4 -0
  121. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/arrayWithoutHoles.js +5 -0
  122. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/assertClassBrand.js +5 -0
  123. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/assertThisInitialized.js +5 -0
  124. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/asyncGeneratorDelegate.js +24 -0
  125. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/asyncIterator.js +45 -0
  126. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/asyncToGenerator.js +26 -0
  127. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/awaitAsyncGenerator.js +5 -0
  128. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/callSuper.js +7 -0
  129. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/checkInRHS.js +6 -0
  130. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/checkPrivateRedeclaration.js +4 -0
  131. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classApplyDescriptorDestructureSet.js +10 -0
  132. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classApplyDescriptorGet.js +4 -0
  133. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classApplyDescriptorSet.js +7 -0
  134. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classCallCheck.js +4 -0
  135. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classCheckPrivateStaticAccess.js +5 -0
  136. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +4 -0
  137. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classExtractFieldDescriptor.js +5 -0
  138. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classNameTDZError.js +4 -0
  139. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldDestructureSet.js +7 -0
  140. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldGet.js +7 -0
  141. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldGet2.js +5 -0
  142. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldInitSpec.js +5 -0
  143. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldLooseBase.js +5 -0
  144. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldLooseKey.js +5 -0
  145. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldSet.js +7 -0
  146. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateFieldSet2.js +5 -0
  147. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateGetter.js +5 -0
  148. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateMethodGet.js +5 -0
  149. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateMethodInitSpec.js +5 -0
  150. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateMethodSet.js +4 -0
  151. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classPrivateSetter.js +5 -0
  152. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classStaticPrivateFieldDestructureSet.js +7 -0
  153. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classStaticPrivateFieldSpecGet.js +7 -0
  154. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classStaticPrivateFieldSpecSet.js +7 -0
  155. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classStaticPrivateMethodGet.js +5 -0
  156. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/classStaticPrivateMethodSet.js +4 -0
  157. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/construct.js +10 -0
  158. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/createClass.js +13 -0
  159. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/createForOfIteratorHelper.js +50 -0
  160. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/createForOfIteratorHelperLoose.js +19 -0
  161. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/createSuper.js +16 -0
  162. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/decorate.js +21 -0
  163. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/decorateMetadata.js +7 -0
  164. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/decorateParam.js +9 -0
  165. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/defaults.js +9 -0
  166. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/defineAccessor.js +8 -0
  167. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/defineEnumerableProperties.js +12 -0
  168. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/defineProperty.js +10 -0
  169. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/dispose.js +28 -0
  170. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/extends.js +10 -0
  171. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/get.js +11 -0
  172. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/getPrototypeOf.js +6 -0
  173. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/identity.js +4 -0
  174. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/importDeferProxy.js +27 -0
  175. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/inherits.js +14 -0
  176. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/inheritsLoose.js +5 -0
  177. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/initializerDefineProperty.js +9 -0
  178. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/initializerWarningHelper.js +4 -0
  179. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/instanceof.js +4 -0
  180. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/interopRequireDefault.js +6 -0
  181. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/interopRequireWildcard.js +27 -0
  182. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/isNativeFunction.js +8 -0
  183. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/isNativeReflectConstruct.js +9 -0
  184. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/iterableToArray.js +4 -0
  185. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/iterableToArrayLimit.js +28 -0
  186. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/jsx.js +22 -0
  187. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/maybeArrayLike.js +9 -0
  188. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/newArrowCheck.js +4 -0
  189. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/nonIterableRest.js +4 -0
  190. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/nonIterableSpread.js +4 -0
  191. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/nullishReceiverError.js +4 -0
  192. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/objectDestructuringEmpty.js +4 -0
  193. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/objectSpread.js +14 -0
  194. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/objectSpread2.js +23 -0
  195. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/objectWithoutProperties.js +13 -0
  196. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/objectWithoutPropertiesLoose.js +10 -0
  197. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/package.json +3 -0
  198. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/possibleConstructorReturn.js +8 -0
  199. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/readOnlyError.js +4 -0
  200. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/regeneratorRuntime.js +304 -0
  201. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/set.js +22 -0
  202. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/setFunctionName.js +12 -0
  203. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/setPrototypeOf.js +6 -0
  204. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/skipFirstGeneratorNext.js +7 -0
  205. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/slicedToArray.js +8 -0
  206. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/superPropBase.js +6 -0
  207. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/superPropGet.js +9 -0
  208. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/superPropSet.js +6 -0
  209. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/taggedTemplateLiteral.js +8 -0
  210. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/taggedTemplateLiteralLoose.js +4 -0
  211. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/tdz.js +4 -0
  212. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/temporalRef.js +6 -0
  213. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/temporalUndefined.js +2 -0
  214. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/toArray.js +8 -0
  215. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/toConsumableArray.js +8 -0
  216. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/toPrimitive.js +12 -0
  217. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/toPropertyKey.js +7 -0
  218. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/toSetter.js +10 -0
  219. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/typeof.js +10 -0
  220. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/unsupportedIterableToArray.js +9 -0
  221. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/using.js +12 -0
  222. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/usingCtx.js +59 -0
  223. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/wrapAsyncGenerator.js +69 -0
  224. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/wrapNativeSuper.js +27 -0
  225. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/wrapRegExp.js +51 -0
  226. package/runtime/node_modules/@oxc-project/runtime/src/helpers/esm/writeOnlyError.js +4 -0
  227. package/runtime/node_modules/@oxc-project/runtime/src/helpers/extends.js +10 -0
  228. package/runtime/node_modules/@oxc-project/runtime/src/helpers/get.js +11 -0
  229. package/runtime/node_modules/@oxc-project/runtime/src/helpers/getPrototypeOf.js +6 -0
  230. package/runtime/node_modules/@oxc-project/runtime/src/helpers/identity.js +4 -0
  231. package/runtime/node_modules/@oxc-project/runtime/src/helpers/importDeferProxy.js +27 -0
  232. package/runtime/node_modules/@oxc-project/runtime/src/helpers/inherits.js +14 -0
  233. package/runtime/node_modules/@oxc-project/runtime/src/helpers/inheritsLoose.js +5 -0
  234. package/runtime/node_modules/@oxc-project/runtime/src/helpers/initializerDefineProperty.js +9 -0
  235. package/runtime/node_modules/@oxc-project/runtime/src/helpers/initializerWarningHelper.js +4 -0
  236. package/runtime/node_modules/@oxc-project/runtime/src/helpers/instanceof.js +4 -0
  237. package/runtime/node_modules/@oxc-project/runtime/src/helpers/interopRequireDefault.js +6 -0
  238. package/runtime/node_modules/@oxc-project/runtime/src/helpers/interopRequireWildcard.js +27 -0
  239. package/runtime/node_modules/@oxc-project/runtime/src/helpers/isNativeFunction.js +8 -0
  240. package/runtime/node_modules/@oxc-project/runtime/src/helpers/isNativeReflectConstruct.js +9 -0
  241. package/runtime/node_modules/@oxc-project/runtime/src/helpers/iterableToArray.js +4 -0
  242. package/runtime/node_modules/@oxc-project/runtime/src/helpers/iterableToArrayLimit.js +28 -0
  243. package/runtime/node_modules/@oxc-project/runtime/src/helpers/jsx.js +22 -0
  244. package/runtime/node_modules/@oxc-project/runtime/src/helpers/maybeArrayLike.js +9 -0
  245. package/runtime/node_modules/@oxc-project/runtime/src/helpers/newArrowCheck.js +4 -0
  246. package/runtime/node_modules/@oxc-project/runtime/src/helpers/nonIterableRest.js +4 -0
  247. package/runtime/node_modules/@oxc-project/runtime/src/helpers/nonIterableSpread.js +4 -0
  248. package/runtime/node_modules/@oxc-project/runtime/src/helpers/nullishReceiverError.js +4 -0
  249. package/runtime/node_modules/@oxc-project/runtime/src/helpers/objectDestructuringEmpty.js +4 -0
  250. package/runtime/node_modules/@oxc-project/runtime/src/helpers/objectSpread.js +14 -0
  251. package/runtime/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js +23 -0
  252. package/runtime/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js +13 -0
  253. package/runtime/node_modules/@oxc-project/runtime/src/helpers/objectWithoutPropertiesLoose.js +10 -0
  254. package/runtime/node_modules/@oxc-project/runtime/src/helpers/possibleConstructorReturn.js +8 -0
  255. package/runtime/node_modules/@oxc-project/runtime/src/helpers/readOnlyError.js +4 -0
  256. package/runtime/node_modules/@oxc-project/runtime/src/helpers/regeneratorRuntime.js +304 -0
  257. package/runtime/node_modules/@oxc-project/runtime/src/helpers/set.js +22 -0
  258. package/runtime/node_modules/@oxc-project/runtime/src/helpers/setFunctionName.js +12 -0
  259. package/runtime/node_modules/@oxc-project/runtime/src/helpers/setPrototypeOf.js +6 -0
  260. package/runtime/node_modules/@oxc-project/runtime/src/helpers/skipFirstGeneratorNext.js +7 -0
  261. package/runtime/node_modules/@oxc-project/runtime/src/helpers/slicedToArray.js +8 -0
  262. package/runtime/node_modules/@oxc-project/runtime/src/helpers/superPropBase.js +6 -0
  263. package/runtime/node_modules/@oxc-project/runtime/src/helpers/superPropGet.js +9 -0
  264. package/runtime/node_modules/@oxc-project/runtime/src/helpers/superPropSet.js +6 -0
  265. package/runtime/node_modules/@oxc-project/runtime/src/helpers/taggedTemplateLiteral.js +8 -0
  266. package/runtime/node_modules/@oxc-project/runtime/src/helpers/taggedTemplateLiteralLoose.js +4 -0
  267. package/runtime/node_modules/@oxc-project/runtime/src/helpers/tdz.js +4 -0
  268. package/runtime/node_modules/@oxc-project/runtime/src/helpers/temporalRef.js +6 -0
  269. package/runtime/node_modules/@oxc-project/runtime/src/helpers/temporalUndefined.js +2 -0
  270. package/runtime/node_modules/@oxc-project/runtime/src/helpers/toArray.js +8 -0
  271. package/runtime/node_modules/@oxc-project/runtime/src/helpers/toConsumableArray.js +8 -0
  272. package/runtime/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js +12 -0
  273. package/runtime/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js +7 -0
  274. package/runtime/node_modules/@oxc-project/runtime/src/helpers/toSetter.js +10 -0
  275. package/runtime/node_modules/@oxc-project/runtime/src/helpers/typeof.js +10 -0
  276. package/runtime/node_modules/@oxc-project/runtime/src/helpers/unsupportedIterableToArray.js +9 -0
  277. package/runtime/node_modules/@oxc-project/runtime/src/helpers/using.js +12 -0
  278. package/runtime/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js +59 -0
  279. package/runtime/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js +69 -0
  280. package/runtime/node_modules/@oxc-project/runtime/src/helpers/wrapNativeSuper.js +27 -0
  281. package/runtime/node_modules/@oxc-project/runtime/src/helpers/wrapRegExp.js +51 -0
  282. package/runtime/node_modules/@oxc-project/runtime/src/helpers/writeOnlyError.js +4 -0
  283. package/runtime/node_modules/@oxc-project/types/LICENSE +22 -0
  284. package/runtime/node_modules/@oxc-project/types/README.md +3 -0
  285. package/runtime/node_modules/@oxc-project/types/package.json +26 -0
  286. package/runtime/node_modules/@oxc-project/types/types.d.ts +1912 -0
  287. package/runtime/node_modules/@petamoriken/float16/LICENSE +21 -0
  288. package/runtime/node_modules/@petamoriken/float16/README.md +413 -0
  289. package/runtime/node_modules/@petamoriken/float16/browser/float16.js +1340 -0
  290. package/runtime/node_modules/@petamoriken/float16/browser/float16.mjs +1325 -0
  291. package/runtime/node_modules/@petamoriken/float16/index.d.ts +546 -0
  292. package/runtime/node_modules/@petamoriken/float16/index.v5.6.d.ts +546 -0
  293. package/runtime/node_modules/@petamoriken/float16/index.v5.7.d.ts +555 -0
  294. package/runtime/node_modules/@petamoriken/float16/inspect/node.cjs +25 -0
  295. package/runtime/node_modules/@petamoriken/float16/inspect/node.mjs +23 -0
  296. package/runtime/node_modules/@petamoriken/float16/lib/DataView.cjs +16 -0
  297. package/runtime/node_modules/@petamoriken/float16/lib/Float16Array.cjs +690 -0
  298. package/runtime/node_modules/@petamoriken/float16/lib/_util/arrayIterator.cjs +52 -0
  299. package/runtime/node_modules/@petamoriken/float16/lib/_util/brand.cjs +27 -0
  300. package/runtime/node_modules/@petamoriken/float16/lib/_util/converter.cjs +111 -0
  301. package/runtime/node_modules/@petamoriken/float16/lib/_util/is.cjs +78 -0
  302. package/runtime/node_modules/@petamoriken/float16/lib/_util/messages.cjs +18 -0
  303. package/runtime/node_modules/@petamoriken/float16/lib/_util/primordials.cjs +150 -0
  304. package/runtime/node_modules/@petamoriken/float16/lib/_util/spec.cjs +84 -0
  305. package/runtime/node_modules/@petamoriken/float16/lib/f16round.cjs +10 -0
  306. package/runtime/node_modules/@petamoriken/float16/lib/index.cjs +16 -0
  307. package/runtime/node_modules/@petamoriken/float16/lib/isTypedArray.cjs +11 -0
  308. package/runtime/node_modules/@petamoriken/float16/package.json +115 -0
  309. package/runtime/node_modules/@petamoriken/float16/src/DataView.mjs +35 -0
  310. package/runtime/node_modules/@petamoriken/float16/src/Float16Array.mjs +1194 -0
  311. package/runtime/node_modules/@petamoriken/float16/src/_util/arrayIterator.mjs +86 -0
  312. package/runtime/node_modules/@petamoriken/float16/src/_util/brand.mjs +31 -0
  313. package/runtime/node_modules/@petamoriken/float16/src/_util/converter.mjs +173 -0
  314. package/runtime/node_modules/@petamoriken/float16/src/_util/is.mjs +151 -0
  315. package/runtime/node_modules/@petamoriken/float16/src/_util/messages.mjs +22 -0
  316. package/runtime/node_modules/@petamoriken/float16/src/_util/primordials.mjs +254 -0
  317. package/runtime/node_modules/@petamoriken/float16/src/_util/spec.mjs +137 -0
  318. package/runtime/node_modules/@petamoriken/float16/src/f16round.mjs +10 -0
  319. package/runtime/node_modules/@petamoriken/float16/src/index.mjs +7 -0
  320. package/runtime/node_modules/@petamoriken/float16/src/isTypedArray.mjs +10 -0
  321. package/runtime/node_modules/jsbi/LICENSE +176 -0
  322. package/runtime/node_modules/jsbi/README.md +173 -0
  323. package/runtime/node_modules/jsbi/dist/jsbi-cjs.js +2 -0
  324. package/runtime/node_modules/jsbi/dist/jsbi-cjs.js.map +1 -0
  325. package/runtime/node_modules/jsbi/dist/jsbi-umd.js +2 -0
  326. package/runtime/node_modules/jsbi/dist/jsbi-umd.js.map +1 -0
  327. package/runtime/node_modules/jsbi/dist/jsbi.mjs +2 -0
  328. package/runtime/node_modules/jsbi/dist/jsbi.mjs.map +1 -0
  329. package/runtime/node_modules/jsbi/jsbi.d.ts +43 -0
  330. package/runtime/node_modules/jsbi/package.json +35 -0
  331. package/runtime/node_modules/oxc-parser/LICENSE +22 -0
  332. package/runtime/node_modules/oxc-parser/README.md +167 -0
  333. package/runtime/node_modules/oxc-parser/package.json +153 -0
  334. package/runtime/node_modules/oxc-parser/src-js/bindings.js +601 -0
  335. package/runtime/node_modules/oxc-parser/src-js/generated/constants.js +105 -0
  336. package/runtime/node_modules/oxc-parser/src-js/generated/deserialize/js.js +5862 -0
  337. package/runtime/node_modules/oxc-parser/src-js/generated/deserialize/js_range.js +6403 -0
  338. package/runtime/node_modules/oxc-parser/src-js/generated/deserialize/ts.js +6154 -0
  339. package/runtime/node_modules/oxc-parser/src-js/generated/deserialize/ts_range.js +6723 -0
  340. package/runtime/node_modules/oxc-parser/src-js/generated/lazy/constructors.js +13875 -0
  341. package/runtime/node_modules/oxc-parser/src-js/generated/lazy/type_ids.js +191 -0
  342. package/runtime/node_modules/oxc-parser/src-js/generated/lazy/walk.js +5810 -0
  343. package/runtime/node_modules/oxc-parser/src-js/generated/visit/keys.js +220 -0
  344. package/runtime/node_modules/oxc-parser/src-js/generated/visit/type_ids.js +177 -0
  345. package/runtime/node_modules/oxc-parser/src-js/generated/visit/visitor.d.ts +387 -0
  346. package/runtime/node_modules/oxc-parser/src-js/generated/visit/walk.js +2455 -0
  347. package/runtime/node_modules/oxc-parser/src-js/index.d.ts +312 -0
  348. package/runtime/node_modules/oxc-parser/src-js/index.js +108 -0
  349. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/common.js +301 -0
  350. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/eager.js +255 -0
  351. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/lazy-common.js +11 -0
  352. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/lazy.js +162 -0
  353. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/node-array.js +365 -0
  354. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/supported.js +52 -0
  355. package/runtime/node_modules/oxc-parser/src-js/raw-transfer/visitor.js +127 -0
  356. package/runtime/node_modules/oxc-parser/src-js/visit/index.js +41 -0
  357. package/runtime/node_modules/oxc-parser/src-js/visit/visitor.js +405 -0
  358. package/runtime/node_modules/oxc-parser/src-js/wasm.js +13 -0
  359. package/runtime/node_modules/oxc-parser/src-js/webcontainer-fallback.cjs +21 -0
  360. package/runtime/node_modules/oxc-parser/src-js/wrap.js +57 -0
  361. package/runtime/node_modules/urlpattern-polyfill/LICENSE +19 -0
  362. package/runtime/node_modules/urlpattern-polyfill/README.md +242 -0
  363. package/runtime/node_modules/urlpattern-polyfill/dist/index.d.ts +9 -0
  364. package/runtime/node_modules/urlpattern-polyfill/dist/types.d.ts +49 -0
  365. package/runtime/node_modules/urlpattern-polyfill/dist/urlpattern.cjs +1 -0
  366. package/runtime/node_modules/urlpattern-polyfill/dist/urlpattern.js +1 -0
  367. package/runtime/node_modules/urlpattern-polyfill/index.cjs +7 -0
  368. package/runtime/node_modules/urlpattern-polyfill/index.js +7 -0
  369. package/runtime/node_modules/urlpattern-polyfill/package.json +149 -0
  370. package/runtime/polyfills.mjs +73 -97
  371. package/runtime/preload-async-hooks.mjs +50 -0
  372. package/runtime/preload.mjs +274 -320
  373. package/runtime/transform-core.mjs +762 -0
  374. package/runtime/version.mjs +12 -0
  375. package/runtime/worker-polyfill.mjs +147 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsbi-cjs.js","sources":["../tsc-out/jsbi.mjs"],"sourcesContent":["// Copyright 2018 Google Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the “License”);\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n// <https://apache.org/licenses/LICENSE-2.0>.\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an “AS IS” BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nclass JSBI extends Array {\n constructor(length, sign) {\n super(length);\n this.sign = sign;\n // Explicitly set the prototype as per\n // https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work\n Object.setPrototypeOf(this, JSBI.prototype);\n if (length > JSBI.__kMaxLength) {\n throw new RangeError('Maximum BigInt size exceeded');\n }\n }\n static BigInt(arg) {\n if (typeof arg === 'number') {\n if (arg === 0)\n return JSBI.__zero();\n if (JSBI.__isOneDigitInt(arg)) {\n if (arg < 0) {\n return JSBI.__oneDigit(-arg, true);\n }\n return JSBI.__oneDigit(arg, false);\n }\n if (!Number.isFinite(arg) || Math.floor(arg) !== arg) {\n throw new RangeError('The number ' + arg + ' cannot be converted to ' +\n 'BigInt because it is not an integer');\n }\n return JSBI.__fromDouble(arg);\n }\n else if (typeof arg === 'string') {\n const result = JSBI.__fromString(arg);\n if (result === null) {\n throw new SyntaxError('Cannot convert ' + arg + ' to a BigInt');\n }\n return result;\n }\n else if (typeof arg === 'boolean') {\n if (arg === true) {\n return JSBI.__oneDigit(1, false);\n }\n return JSBI.__zero();\n }\n else if (typeof arg === 'object') {\n if (arg.constructor === JSBI)\n return arg;\n const primitive = JSBI.__toPrimitive(arg);\n return JSBI.BigInt(primitive);\n }\n throw new TypeError('Cannot convert ' + arg + ' to a BigInt');\n }\n toDebugString() {\n const result = ['BigInt['];\n for (const digit of this) {\n result.push((digit ? (digit >>> 0).toString(16) : digit) + ', ');\n }\n result.push(']');\n return result.join('');\n }\n toString(radix = 10) {\n if (radix < 2 || radix > 36) {\n throw new RangeError('toString() radix argument must be between 2 and 36');\n }\n if (this.length === 0)\n return '0';\n if ((radix & (radix - 1)) === 0) {\n return JSBI.__toStringBasePowerOfTwo(this, radix);\n }\n return JSBI.__toStringGeneric(this, radix, false);\n }\n valueOf() {\n throw new Error('Convert JSBI instances to native numbers using `toNumber`.');\n }\n // Equivalent of \"Number(my_bigint)\" in the native implementation.\n // TODO: add more tests\n static toNumber(x) {\n const xLength = x.length;\n if (xLength === 0)\n return 0;\n if (xLength === 1) {\n const value = x.__unsignedDigit(0);\n return x.sign ? -value : value;\n }\n const xMsd = x.__digit(xLength - 1);\n const msdLeadingZeros = JSBI.__clz30(xMsd);\n const xBitLength = xLength * 30 - msdLeadingZeros;\n if (xBitLength > 1024)\n return x.sign ? -Infinity : Infinity;\n let exponent = xBitLength - 1;\n let currentDigit = xMsd;\n let digitIndex = xLength - 1;\n const shift = msdLeadingZeros + 3;\n let mantissaHigh = (shift === 32) ? 0 : currentDigit << shift;\n mantissaHigh >>>= 12;\n const mantissaHighBitsUnset = shift - 12;\n let mantissaLow = (shift >= 12) ? 0 : (currentDigit << (20 + shift));\n let mantissaLowBitsUnset = 20 + shift;\n if (mantissaHighBitsUnset > 0 && digitIndex > 0) {\n digitIndex--;\n currentDigit = x.__digit(digitIndex);\n mantissaHigh |= (currentDigit >>> (30 - mantissaHighBitsUnset));\n mantissaLow = currentDigit << mantissaHighBitsUnset + 2;\n mantissaLowBitsUnset = mantissaHighBitsUnset + 2;\n }\n while (mantissaLowBitsUnset > 0 && digitIndex > 0) {\n digitIndex--;\n currentDigit = x.__digit(digitIndex);\n if (mantissaLowBitsUnset >= 30) {\n mantissaLow |= (currentDigit << (mantissaLowBitsUnset - 30));\n }\n else {\n mantissaLow |= (currentDigit >>> (30 - mantissaLowBitsUnset));\n }\n mantissaLowBitsUnset -= 30;\n }\n const rounding = JSBI.__decideRounding(x, mantissaLowBitsUnset, digitIndex, currentDigit);\n if (rounding === 1 || (rounding === 0 && (mantissaLow & 1) === 1)) {\n mantissaLow = (mantissaLow + 1) >>> 0;\n if (mantissaLow === 0) {\n // Incrementing mantissaLow overflowed.\n mantissaHigh++;\n if ((mantissaHigh >>> 20) !== 0) {\n // Incrementing mantissaHigh overflowed.\n mantissaHigh = 0;\n exponent++;\n if (exponent > 1023) {\n // Incrementing the exponent overflowed.\n return x.sign ? -Infinity : Infinity;\n }\n }\n }\n }\n const signBit = x.sign ? (1 << 31) : 0;\n exponent = (exponent + 0x3FF) << 20;\n JSBI.__kBitConversionInts[JSBI.__kBitConversionIntHigh] =\n signBit | exponent | mantissaHigh;\n JSBI.__kBitConversionInts[JSBI.__kBitConversionIntLow] = mantissaLow;\n return JSBI.__kBitConversionDouble[0];\n }\n // Operations.\n static unaryMinus(x) {\n if (x.length === 0)\n return x;\n const result = x.__copy();\n result.sign = !x.sign;\n return result;\n }\n static bitwiseNot(x) {\n if (x.sign) {\n // ~(-x) == ~(~(x-1)) == x-1\n return JSBI.__absoluteSubOne(x).__trim();\n }\n // ~x == -x-1 == -(x+1)\n return JSBI.__absoluteAddOne(x, true);\n }\n static exponentiate(x, y) {\n if (y.sign) {\n throw new RangeError('Exponent must be positive');\n }\n if (y.length === 0) {\n return JSBI.__oneDigit(1, false);\n }\n if (x.length === 0)\n return x;\n if (x.length === 1 && x.__digit(0) === 1) {\n // (-1) ** even_number == 1.\n if (x.sign && (y.__digit(0) & 1) === 0) {\n return JSBI.unaryMinus(x);\n }\n // (-1) ** odd_number == -1, 1 ** anything == 1.\n return x;\n }\n // For all bases >= 2, very large exponents would lead to unrepresentable\n // results.\n if (y.length > 1)\n throw new RangeError('BigInt too big');\n let expValue = y.__unsignedDigit(0);\n if (expValue === 1)\n return x;\n if (expValue >= JSBI.__kMaxLengthBits) {\n throw new RangeError('BigInt too big');\n }\n if (x.length === 1 && x.__digit(0) === 2) {\n // Fast path for 2^n.\n const neededDigits = 1 + ((expValue / 30) | 0);\n const sign = x.sign && ((expValue & 1) !== 0);\n const result = new JSBI(neededDigits, sign);\n result.__initializeDigits();\n // All bits are zero. Now set the n-th bit.\n const msd = 1 << (expValue % 30);\n result.__setDigit(neededDigits - 1, msd);\n return result;\n }\n let result = null;\n let runningSquare = x;\n // This implicitly sets the result's sign correctly.\n if ((expValue & 1) !== 0)\n result = x;\n expValue >>= 1;\n for (; expValue !== 0; expValue >>= 1) {\n runningSquare = JSBI.multiply(runningSquare, runningSquare);\n if ((expValue & 1) !== 0) {\n if (result === null) {\n result = runningSquare;\n }\n else {\n result = JSBI.multiply(result, runningSquare);\n }\n }\n }\n // TODO see if there's a way for tsc to infer this will always happen?\n return result;\n }\n static multiply(x, y) {\n if (x.length === 0)\n return x;\n if (y.length === 0)\n return y;\n let resultLength = x.length + y.length;\n if (x.__clzmsd() + y.__clzmsd() >= 30) {\n resultLength--;\n }\n const result = new JSBI(resultLength, x.sign !== y.sign);\n result.__initializeDigits();\n for (let i = 0; i < x.length; i++) {\n JSBI.__multiplyAccumulate(y, x.__digit(i), result, i);\n }\n return result.__trim();\n }\n static divide(x, y) {\n if (y.length === 0)\n throw new RangeError('Division by zero');\n if (JSBI.__absoluteCompare(x, y) < 0)\n return JSBI.__zero();\n const resultSign = x.sign !== y.sign;\n const divisor = y.__unsignedDigit(0);\n let quotient;\n if (y.length === 1 && divisor <= 0x7FFF) {\n if (divisor === 1) {\n return resultSign === x.sign ? x : JSBI.unaryMinus(x);\n }\n quotient = JSBI.__absoluteDivSmall(x, divisor, null);\n }\n else {\n quotient = JSBI.__absoluteDivLarge(x, y, true, false);\n }\n quotient.sign = resultSign;\n return quotient.__trim();\n }\n static remainder(x, y) {\n if (y.length === 0)\n throw new RangeError('Division by zero');\n if (JSBI.__absoluteCompare(x, y) < 0)\n return x;\n const divisor = y.__unsignedDigit(0);\n if (y.length === 1 && divisor <= 0x7FFF) {\n if (divisor === 1)\n return JSBI.__zero();\n const remainderDigit = JSBI.__absoluteModSmall(x, divisor);\n if (remainderDigit === 0)\n return JSBI.__zero();\n return JSBI.__oneDigit(remainderDigit, x.sign);\n }\n const remainder = JSBI.__absoluteDivLarge(x, y, false, true);\n remainder.sign = x.sign;\n return remainder.__trim();\n }\n static add(x, y) {\n const sign = x.sign;\n if (sign === y.sign) {\n // x + y == x + y\n // -x + -y == -(x + y)\n return JSBI.__absoluteAdd(x, y, sign);\n }\n // x + -y == x - y == -(y - x)\n // -x + y == y - x == -(x - y)\n if (JSBI.__absoluteCompare(x, y) >= 0) {\n return JSBI.__absoluteSub(x, y, sign);\n }\n return JSBI.__absoluteSub(y, x, !sign);\n }\n static subtract(x, y) {\n const sign = x.sign;\n if (sign !== y.sign) {\n // x - (-y) == x + y\n // (-x) - y == -(x + y)\n return JSBI.__absoluteAdd(x, y, sign);\n }\n // x - y == -(y - x)\n // (-x) - (-y) == y - x == -(x - y)\n if (JSBI.__absoluteCompare(x, y) >= 0) {\n return JSBI.__absoluteSub(x, y, sign);\n }\n return JSBI.__absoluteSub(y, x, !sign);\n }\n static leftShift(x, y) {\n if (y.length === 0 || x.length === 0)\n return x;\n if (y.sign)\n return JSBI.__rightShiftByAbsolute(x, y);\n return JSBI.__leftShiftByAbsolute(x, y);\n }\n static signedRightShift(x, y) {\n if (y.length === 0 || x.length === 0)\n return x;\n if (y.sign)\n return JSBI.__leftShiftByAbsolute(x, y);\n return JSBI.__rightShiftByAbsolute(x, y);\n }\n static unsignedRightShift() {\n throw new TypeError('BigInts have no unsigned right shift; use >> instead');\n }\n static lessThan(x, y) {\n return JSBI.__compareToBigInt(x, y) < 0;\n }\n static lessThanOrEqual(x, y) {\n return JSBI.__compareToBigInt(x, y) <= 0;\n }\n static greaterThan(x, y) {\n return JSBI.__compareToBigInt(x, y) > 0;\n }\n static greaterThanOrEqual(x, y) {\n return JSBI.__compareToBigInt(x, y) >= 0;\n }\n static equal(x, y) {\n if (x.sign !== y.sign)\n return false;\n if (x.length !== y.length)\n return false;\n for (let i = 0; i < x.length; i++) {\n if (x.__digit(i) !== y.__digit(i))\n return false;\n }\n return true;\n }\n static notEqual(x, y) {\n return !JSBI.equal(x, y);\n }\n static bitwiseAnd(x, y) {\n if (!x.sign && !y.sign) {\n return JSBI.__absoluteAnd(x, y).__trim();\n }\n else if (x.sign && y.sign) {\n const resultLength = Math.max(x.length, y.length) + 1;\n // (-x) & (-y) == ~(x-1) & ~(y-1) == ~((x-1) | (y-1))\n // == -(((x-1) | (y-1)) + 1)\n let result = JSBI.__absoluteSubOne(x, resultLength);\n const y1 = JSBI.__absoluteSubOne(y);\n result = JSBI.__absoluteOr(result, y1, result);\n return JSBI.__absoluteAddOne(result, true, result).__trim();\n }\n // Assume that x is the positive BigInt.\n if (x.sign) {\n [x, y] = [y, x];\n }\n // x & (-y) == x & ~(y-1) == x &~ (y-1)\n return JSBI.__absoluteAndNot(x, JSBI.__absoluteSubOne(y)).__trim();\n }\n static bitwiseXor(x, y) {\n if (!x.sign && !y.sign) {\n return JSBI.__absoluteXor(x, y).__trim();\n }\n else if (x.sign && y.sign) {\n // (-x) ^ (-y) == ~(x-1) ^ ~(y-1) == (x-1) ^ (y-1)\n const resultLength = Math.max(x.length, y.length);\n const result = JSBI.__absoluteSubOne(x, resultLength);\n const y1 = JSBI.__absoluteSubOne(y);\n return JSBI.__absoluteXor(result, y1, result).__trim();\n }\n const resultLength = Math.max(x.length, y.length) + 1;\n // Assume that x is the positive BigInt.\n if (x.sign) {\n [x, y] = [y, x];\n }\n // x ^ (-y) == x ^ ~(y-1) == ~(x ^ (y-1)) == -((x ^ (y-1)) + 1)\n let result = JSBI.__absoluteSubOne(y, resultLength);\n result = JSBI.__absoluteXor(result, x, result);\n return JSBI.__absoluteAddOne(result, true, result).__trim();\n }\n static bitwiseOr(x, y) {\n const resultLength = Math.max(x.length, y.length);\n if (!x.sign && !y.sign) {\n return JSBI.__absoluteOr(x, y).__trim();\n }\n else if (x.sign && y.sign) {\n // (-x) | (-y) == ~(x-1) | ~(y-1) == ~((x-1) & (y-1))\n // == -(((x-1) & (y-1)) + 1)\n let result = JSBI.__absoluteSubOne(x, resultLength);\n const y1 = JSBI.__absoluteSubOne(y);\n result = JSBI.__absoluteAnd(result, y1, result);\n return JSBI.__absoluteAddOne(result, true, result).__trim();\n }\n // Assume that x is the positive BigInt.\n if (x.sign) {\n [x, y] = [y, x];\n }\n // x | (-y) == x | ~(y-1) == ~((y-1) &~ x) == -(((y-1) ~& x) + 1)\n let result = JSBI.__absoluteSubOne(y, resultLength);\n result = JSBI.__absoluteAndNot(result, x, result);\n return JSBI.__absoluteAddOne(result, true, result).__trim();\n }\n static asIntN(n, x) {\n if (x.length === 0)\n return x;\n n = Math.floor(n);\n if (n < 0) {\n throw new RangeError('Invalid value: not (convertible to) a safe integer');\n }\n if (n === 0)\n return JSBI.__zero();\n // If {x} has less than {n} bits, return it directly.\n if (n >= JSBI.__kMaxLengthBits)\n return x;\n const neededLength = ((n + 29) / 30) | 0;\n if (x.length < neededLength)\n return x;\n const topDigit = x.__unsignedDigit(neededLength - 1);\n const compareDigit = 1 << ((n - 1) % 30);\n if (x.length === neededLength && topDigit < compareDigit)\n return x;\n // Otherwise truncate and simulate two's complement.\n const hasBit = (topDigit & compareDigit) === compareDigit;\n if (!hasBit)\n return JSBI.__truncateToNBits(n, x);\n if (!x.sign)\n return JSBI.__truncateAndSubFromPowerOfTwo(n, x, true);\n if ((topDigit & (compareDigit - 1)) === 0) {\n for (let i = neededLength - 2; i >= 0; i--) {\n if (x.__digit(i) !== 0) {\n return JSBI.__truncateAndSubFromPowerOfTwo(n, x, false);\n }\n }\n if (x.length === neededLength && topDigit === compareDigit)\n return x;\n return JSBI.__truncateToNBits(n, x);\n }\n return JSBI.__truncateAndSubFromPowerOfTwo(n, x, false);\n }\n static asUintN(n, x) {\n if (x.length === 0)\n return x;\n n = Math.floor(n);\n if (n < 0) {\n throw new RangeError('Invalid value: not (convertible to) a safe integer');\n }\n if (n === 0)\n return JSBI.__zero();\n // If {x} is negative, simulate two's complement representation.\n if (x.sign) {\n if (n > JSBI.__kMaxLengthBits) {\n throw new RangeError('BigInt too big');\n }\n return JSBI.__truncateAndSubFromPowerOfTwo(n, x, false);\n }\n // If {x} is positive and has up to {n} bits, return it directly.\n if (n >= JSBI.__kMaxLengthBits)\n return x;\n const neededLength = ((n + 29) / 30) | 0;\n if (x.length < neededLength)\n return x;\n const bitsInTopDigit = n % 30;\n if (x.length == neededLength) {\n if (bitsInTopDigit === 0)\n return x;\n const topDigit = x.__digit(neededLength - 1);\n if ((topDigit >>> bitsInTopDigit) === 0)\n return x;\n }\n // Otherwise, truncate.\n return JSBI.__truncateToNBits(n, x);\n }\n // Operators.\n static ADD(x, y) {\n x = JSBI.__toPrimitive(x);\n y = JSBI.__toPrimitive(y);\n if (typeof x === 'string') {\n if (typeof y !== 'string')\n y = y.toString();\n return x + y;\n }\n if (typeof y === 'string') {\n return x.toString() + y;\n }\n x = JSBI.__toNumeric(x);\n y = JSBI.__toNumeric(y);\n if (JSBI.__isBigInt(x) && JSBI.__isBigInt(y)) {\n return JSBI.add(x, y);\n }\n if (typeof x === 'number' && typeof y === 'number') {\n return x + y;\n }\n throw new TypeError('Cannot mix BigInt and other types, use explicit conversions');\n }\n static LT(x, y) {\n return JSBI.__compare(x, y, 0);\n }\n static LE(x, y) {\n return JSBI.__compare(x, y, 1);\n }\n static GT(x, y) {\n return JSBI.__compare(x, y, 2);\n }\n static GE(x, y) {\n return JSBI.__compare(x, y, 3);\n }\n static EQ(x, y) {\n while (true) {\n if (JSBI.__isBigInt(x)) {\n if (JSBI.__isBigInt(y))\n return JSBI.equal(x, y);\n return JSBI.EQ(y, x);\n }\n else if (typeof x === 'number') {\n if (JSBI.__isBigInt(y))\n return JSBI.__equalToNumber(y, x);\n if (typeof y !== 'object')\n return x == y;\n y = JSBI.__toPrimitive(y);\n }\n else if (typeof x === 'string') {\n if (JSBI.__isBigInt(y)) {\n x = JSBI.__fromString(x);\n if (x === null)\n return false;\n return JSBI.equal(x, y);\n }\n if (typeof y !== 'object')\n return x == y;\n y = JSBI.__toPrimitive(y);\n }\n else if (typeof x === 'boolean') {\n if (JSBI.__isBigInt(y))\n return JSBI.__equalToNumber(y, +x);\n if (typeof y !== 'object')\n return x == y;\n y = JSBI.__toPrimitive(y);\n }\n else if (typeof x === 'symbol') {\n if (JSBI.__isBigInt(y))\n return false;\n if (typeof y !== 'object')\n return x == y;\n y = JSBI.__toPrimitive(y);\n }\n else if (typeof x === 'object') {\n if (typeof y === 'object' && y.constructor !== JSBI)\n return x == y;\n x = JSBI.__toPrimitive(x);\n }\n else {\n return x == y;\n }\n }\n }\n static NE(x, y) {\n return !JSBI.EQ(x, y);\n }\n // DataView-related functionality.\n static DataViewGetBigInt64(dataview, byteOffset, littleEndian = false) {\n return JSBI.asIntN(64, JSBI.DataViewGetBigUint64(dataview, byteOffset, littleEndian));\n }\n static DataViewGetBigUint64(dataview, byteOffset, littleEndian = false) {\n const [h, l] = littleEndian ? [4, 0] : [0, 4];\n const high = dataview.getUint32(byteOffset + h, littleEndian);\n const low = dataview.getUint32(byteOffset + l, littleEndian);\n const result = new JSBI(3, false);\n result.__setDigit(0, low & 0x3FFFFFFF);\n result.__setDigit(1, ((high & 0xFFFFFFF) << 2) | (low >>> 30));\n result.__setDigit(2, high >>> 28);\n return result.__trim();\n }\n static DataViewSetBigInt64(dataview, byteOffset, value, littleEndian = false) {\n JSBI.DataViewSetBigUint64(dataview, byteOffset, value, littleEndian);\n }\n static DataViewSetBigUint64(dataview, byteOffset, value, littleEndian = false) {\n value = JSBI.asUintN(64, value);\n let high = 0;\n let low = 0;\n if (value.length > 0) {\n low = value.__digit(0);\n if (value.length > 1) {\n const d1 = value.__digit(1);\n low = low | d1 << 30;\n high = d1 >>> 2;\n if (value.length > 2) {\n high = high | (value.__digit(2) << 28);\n }\n }\n }\n const [h, l] = littleEndian ? [4, 0] : [0, 4];\n dataview.setUint32(byteOffset + h, high, littleEndian);\n dataview.setUint32(byteOffset + l, low, littleEndian);\n }\n // Helpers.\n static __zero() {\n return new JSBI(0, false);\n }\n static __oneDigit(value, sign) {\n const result = new JSBI(1, sign);\n result.__setDigit(0, value);\n return result;\n }\n __copy() {\n const result = new JSBI(this.length, this.sign);\n for (let i = 0; i < this.length; i++) {\n result[i] = this[i];\n }\n return result;\n }\n __trim() {\n let newLength = this.length;\n let last = this[newLength - 1];\n while (last === 0) {\n newLength--;\n last = this[newLength - 1];\n this.pop();\n }\n if (newLength === 0)\n this.sign = false;\n return this;\n }\n __initializeDigits() {\n for (let i = 0; i < this.length; i++) {\n this[i] = 0;\n }\n }\n static __decideRounding(x, mantissaBitsUnset, digitIndex, currentDigit) {\n if (mantissaBitsUnset > 0)\n return -1;\n let topUnconsumedBit;\n if (mantissaBitsUnset < 0) {\n topUnconsumedBit = -mantissaBitsUnset - 1;\n }\n else {\n // {currentDigit} fit the mantissa exactly; look at the next digit.\n if (digitIndex === 0)\n return -1;\n digitIndex--;\n currentDigit = x.__digit(digitIndex);\n topUnconsumedBit = 29;\n }\n // If the most significant remaining bit is 0, round down.\n let mask = 1 << topUnconsumedBit;\n if ((currentDigit & mask) === 0)\n return -1;\n // If any other remaining bit is set, round up.\n mask -= 1;\n if ((currentDigit & mask) !== 0)\n return 1;\n while (digitIndex > 0) {\n digitIndex--;\n if (x.__digit(digitIndex) !== 0)\n return 1;\n }\n return 0;\n }\n static __fromDouble(value) {\n const sign = value < 0;\n JSBI.__kBitConversionDouble[0] = value;\n const rawExponent = (JSBI.__kBitConversionInts[JSBI.__kBitConversionIntHigh] >>> 20) &\n 0x7FF;\n const exponent = rawExponent - 0x3FF;\n const digits = ((exponent / 30) | 0) + 1;\n const result = new JSBI(digits, sign);\n const kHiddenBit = 0x00100000;\n let mantissaHigh = (JSBI.__kBitConversionInts[JSBI.__kBitConversionIntHigh] & 0xFFFFF) |\n kHiddenBit;\n let mantissaLow = JSBI.__kBitConversionInts[JSBI.__kBitConversionIntLow];\n const kMantissaHighTopBit = 20;\n // 0-indexed position of most significant bit in most significant digit.\n const msdTopBit = exponent % 30;\n // Number of unused bits in the mantissa. We'll keep them shifted to the\n // left (i.e. most significant part).\n let remainingMantissaBits = 0;\n // Next digit under construction.\n let digit;\n // First, build the MSD by shifting the mantissa appropriately.\n if (msdTopBit < kMantissaHighTopBit) {\n const shift = kMantissaHighTopBit - msdTopBit;\n remainingMantissaBits = shift + 32;\n digit = mantissaHigh >>> shift;\n mantissaHigh = (mantissaHigh << (32 - shift)) | (mantissaLow >>> shift);\n mantissaLow = mantissaLow << (32 - shift);\n }\n else if (msdTopBit === kMantissaHighTopBit) {\n remainingMantissaBits = 32;\n digit = mantissaHigh;\n mantissaHigh = mantissaLow;\n mantissaLow = 0;\n }\n else {\n const shift = msdTopBit - kMantissaHighTopBit;\n remainingMantissaBits = 32 - shift;\n digit = (mantissaHigh << shift) | (mantissaLow >>> (32 - shift));\n mantissaHigh = mantissaLow << shift;\n mantissaLow = 0;\n }\n result.__setDigit(digits - 1, digit);\n // Then fill in the rest of the digits.\n for (let digitIndex = digits - 2; digitIndex >= 0; digitIndex--) {\n if (remainingMantissaBits > 0) {\n remainingMantissaBits -= 30;\n digit = mantissaHigh >>> 2;\n mantissaHigh = (mantissaHigh << 30) | (mantissaLow >>> 2);\n mantissaLow = (mantissaLow << 30);\n }\n else {\n digit = 0;\n }\n result.__setDigit(digitIndex, digit);\n }\n return result.__trim();\n }\n static __isWhitespace(c) {\n if (c <= 0x0D && c >= 0x09)\n return true;\n if (c <= 0x9F)\n return c === 0x20;\n if (c <= 0x01FFFF) {\n return c === 0xA0 || c === 0x1680;\n }\n if (c <= 0x02FFFF) {\n c &= 0x01FFFF;\n return c <= 0x0A || c === 0x28 || c === 0x29 || c === 0x2F ||\n c === 0x5F || c === 0x1000;\n }\n return c === 0xFEFF;\n }\n static __fromString(string, radix = 0) {\n let sign = 0;\n let leadingZero = false;\n const length = string.length;\n let cursor = 0;\n if (cursor === length)\n return JSBI.__zero();\n let current = string.charCodeAt(cursor);\n // Skip whitespace.\n while (JSBI.__isWhitespace(current)) {\n if (++cursor === length)\n return JSBI.__zero();\n current = string.charCodeAt(cursor);\n }\n // Detect radix.\n if (current === 0x2B) { // '+'\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n sign = 1;\n }\n else if (current === 0x2D) { // '-'\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n sign = -1;\n }\n if (radix === 0) {\n radix = 10;\n if (current === 0x30) { // '0'\n if (++cursor === length)\n return JSBI.__zero();\n current = string.charCodeAt(cursor);\n if (current === 0x58 || current === 0x78) { // 'X' or 'x'\n radix = 16;\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n }\n else if (current === 0x4F || current === 0x6F) { // 'O' or 'o'\n radix = 8;\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n }\n else if (current === 0x42 || current === 0x62) { // 'B' or 'b'\n radix = 2;\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n }\n else {\n leadingZero = true;\n }\n }\n }\n else if (radix === 16) {\n if (current === 0x30) { // '0'\n // Allow \"0x\" prefix.\n if (++cursor === length)\n return JSBI.__zero();\n current = string.charCodeAt(cursor);\n if (current === 0x58 || current === 0x78) { // 'X' or 'x'\n if (++cursor === length)\n return null;\n current = string.charCodeAt(cursor);\n }\n else {\n leadingZero = true;\n }\n }\n }\n if (sign !== 0 && radix !== 10)\n return null;\n // Skip leading zeros.\n while (current === 0x30) {\n leadingZero = true;\n if (++cursor === length)\n return JSBI.__zero();\n current = string.charCodeAt(cursor);\n }\n // Allocate result.\n const chars = length - cursor;\n let bitsPerChar = JSBI.__kMaxBitsPerChar[radix];\n let roundup = JSBI.__kBitsPerCharTableMultiplier - 1;\n if (chars > (1 << 30) / bitsPerChar)\n return null;\n const bitsMin = (bitsPerChar * chars + roundup) >>> JSBI.__kBitsPerCharTableShift;\n const resultLength = ((bitsMin + 29) / 30) | 0;\n const result = new JSBI(resultLength, false);\n // Parse.\n const limDigit = radix < 10 ? radix : 10;\n const limAlpha = radix > 10 ? radix - 10 : 0;\n if ((radix & (radix - 1)) === 0) {\n // Power-of-two radix.\n bitsPerChar >>= JSBI.__kBitsPerCharTableShift;\n const parts = [];\n const partsBits = [];\n let done = false;\n do {\n let part = 0;\n let bits = 0;\n while (true) {\n let d;\n if (((current - 48) >>> 0) < limDigit) {\n d = current - 48;\n }\n else if ((((current | 32) - 97) >>> 0) < limAlpha) {\n d = (current | 32) - 87;\n }\n else {\n done = true;\n break;\n }\n bits += bitsPerChar;\n part = (part << bitsPerChar) | d;\n if (++cursor === length) {\n done = true;\n break;\n }\n current = string.charCodeAt(cursor);\n if (bits + bitsPerChar > 30)\n break;\n }\n parts.push(part);\n partsBits.push(bits);\n } while (!done);\n JSBI.__fillFromParts(result, parts, partsBits);\n }\n else {\n result.__initializeDigits();\n let done = false;\n let charsSoFar = 0;\n do {\n let part = 0;\n let multiplier = 1;\n while (true) {\n let d;\n if (((current - 48) >>> 0) < limDigit) {\n d = current - 48;\n }\n else if ((((current | 32) - 97) >>> 0) < limAlpha) {\n d = (current | 32) - 87;\n }\n else {\n done = true;\n break;\n }\n const m = multiplier * radix;\n if (m > 0x3FFFFFFF)\n break;\n multiplier = m;\n part = part * radix + d;\n charsSoFar++;\n if (++cursor === length) {\n done = true;\n break;\n }\n current = string.charCodeAt(cursor);\n }\n roundup = JSBI.__kBitsPerCharTableMultiplier * 30 - 1;\n const digitsSoFar = (((bitsPerChar * charsSoFar + roundup) >>>\n JSBI.__kBitsPerCharTableShift) / 30) | 0;\n result.__inplaceMultiplyAdd(multiplier, part, digitsSoFar);\n } while (!done);\n }\n if (cursor !== length) {\n if (!JSBI.__isWhitespace(current))\n return null;\n for (cursor++; cursor < length; cursor++) {\n current = string.charCodeAt(cursor);\n if (!JSBI.__isWhitespace(current))\n return null;\n }\n }\n // Get result.\n result.sign = (sign === -1);\n return result.__trim();\n }\n static __fillFromParts(result, parts, partsBits) {\n let digitIndex = 0;\n let digit = 0;\n let bitsInDigit = 0;\n for (let i = parts.length - 1; i >= 0; i--) {\n const part = parts[i];\n const partBits = partsBits[i];\n digit |= (part << bitsInDigit);\n bitsInDigit += partBits;\n if (bitsInDigit === 30) {\n result.__setDigit(digitIndex++, digit);\n bitsInDigit = 0;\n digit = 0;\n }\n else if (bitsInDigit > 30) {\n result.__setDigit(digitIndex++, digit & 0x3FFFFFFF);\n bitsInDigit -= 30;\n digit = part >>> (partBits - bitsInDigit);\n }\n }\n if (digit !== 0) {\n if (digitIndex >= result.length)\n throw new Error('implementation bug');\n result.__setDigit(digitIndex++, digit);\n }\n for (; digitIndex < result.length; digitIndex++) {\n result.__setDigit(digitIndex, 0);\n }\n }\n static __toStringBasePowerOfTwo(x, radix) {\n const length = x.length;\n let bits = radix - 1;\n bits = ((bits >>> 1) & 0x55) + (bits & 0x55);\n bits = ((bits >>> 2) & 0x33) + (bits & 0x33);\n bits = ((bits >>> 4) & 0x0F) + (bits & 0x0F);\n const bitsPerChar = bits;\n const charMask = radix - 1;\n const msd = x.__digit(length - 1);\n const msdLeadingZeros = JSBI.__clz30(msd);\n const bitLength = length * 30 - msdLeadingZeros;\n let charsRequired = ((bitLength + bitsPerChar - 1) / bitsPerChar) | 0;\n if (x.sign)\n charsRequired++;\n if (charsRequired > (1 << 28))\n throw new Error('string too long');\n const result = new Array(charsRequired);\n let pos = charsRequired - 1;\n let digit = 0;\n let availableBits = 0;\n for (let i = 0; i < length - 1; i++) {\n const newDigit = x.__digit(i);\n const current = (digit | (newDigit << availableBits)) & charMask;\n result[pos--] = JSBI.__kConversionChars[current];\n const consumedBits = bitsPerChar - availableBits;\n digit = newDigit >>> consumedBits;\n availableBits = 30 - consumedBits;\n while (availableBits >= bitsPerChar) {\n result[pos--] = JSBI.__kConversionChars[digit & charMask];\n digit >>>= bitsPerChar;\n availableBits -= bitsPerChar;\n }\n }\n const current = (digit | (msd << availableBits)) & charMask;\n result[pos--] = JSBI.__kConversionChars[current];\n digit = msd >>> (bitsPerChar - availableBits);\n while (digit !== 0) {\n result[pos--] = JSBI.__kConversionChars[digit & charMask];\n digit >>>= bitsPerChar;\n }\n if (x.sign)\n result[pos--] = '-';\n if (pos !== -1)\n throw new Error('implementation bug');\n return result.join('');\n }\n static __toStringGeneric(x, radix, isRecursiveCall) {\n const length = x.length;\n if (length === 0)\n return '';\n if (length === 1) {\n let result = x.__unsignedDigit(0).toString(radix);\n if (isRecursiveCall === false && x.sign) {\n result = '-' + result;\n }\n return result;\n }\n const bitLength = length * 30 - JSBI.__clz30(x.__digit(length - 1));\n const maxBitsPerChar = JSBI.__kMaxBitsPerChar[radix];\n const minBitsPerChar = maxBitsPerChar - 1;\n let charsRequired = bitLength * JSBI.__kBitsPerCharTableMultiplier;\n charsRequired += minBitsPerChar - 1;\n charsRequired = (charsRequired / minBitsPerChar) | 0;\n const secondHalfChars = (charsRequired + 1) >> 1;\n // Divide-and-conquer: split by a power of {radix} that's approximately\n // the square root of {x}, then recurse.\n const conqueror = JSBI.exponentiate(JSBI.__oneDigit(radix, false), JSBI.__oneDigit(secondHalfChars, false));\n let quotient;\n let secondHalf;\n const divisor = conqueror.__unsignedDigit(0);\n if (conqueror.length === 1 && divisor <= 0x7FFF) {\n quotient = new JSBI(x.length, false);\n quotient.__initializeDigits();\n let remainder = 0;\n for (let i = x.length * 2 - 1; i >= 0; i--) {\n const input = (remainder << 15) | x.__halfDigit(i);\n quotient.__setHalfDigit(i, (input / divisor) | 0);\n remainder = (input % divisor) | 0;\n }\n secondHalf = remainder.toString(radix);\n }\n else {\n const divisionResult = JSBI.__absoluteDivLarge(x, conqueror, true, true);\n quotient = divisionResult.quotient;\n const remainder = divisionResult.remainder.__trim();\n secondHalf = JSBI.__toStringGeneric(remainder, radix, true);\n }\n quotient.__trim();\n let firstHalf = JSBI.__toStringGeneric(quotient, radix, true);\n while (secondHalf.length < secondHalfChars) {\n secondHalf = '0' + secondHalf;\n }\n if (isRecursiveCall === false && x.sign) {\n firstHalf = '-' + firstHalf;\n }\n return firstHalf + secondHalf;\n }\n static __unequalSign(leftNegative) {\n return leftNegative ? -1 : 1;\n }\n static __absoluteGreater(bothNegative) {\n return bothNegative ? -1 : 1;\n }\n static __absoluteLess(bothNegative) {\n return bothNegative ? 1 : -1;\n }\n static __compareToBigInt(x, y) {\n const xSign = x.sign;\n if (xSign !== y.sign)\n return JSBI.__unequalSign(xSign);\n const result = JSBI.__absoluteCompare(x, y);\n if (result > 0)\n return JSBI.__absoluteGreater(xSign);\n if (result < 0)\n return JSBI.__absoluteLess(xSign);\n return 0;\n }\n static __compareToNumber(x, y) {\n if (JSBI.__isOneDigitInt(y)) {\n const xSign = x.sign;\n const ySign = (y < 0);\n if (xSign !== ySign)\n return JSBI.__unequalSign(xSign);\n if (x.length === 0) {\n if (ySign)\n throw new Error('implementation bug');\n return y === 0 ? 0 : -1;\n }\n // Any multi-digit BigInt is bigger than an int32.\n if (x.length > 1)\n return JSBI.__absoluteGreater(xSign);\n const yAbs = Math.abs(y);\n const xDigit = x.__unsignedDigit(0);\n if (xDigit > yAbs)\n return JSBI.__absoluteGreater(xSign);\n if (xDigit < yAbs)\n return JSBI.__absoluteLess(xSign);\n return 0;\n }\n return JSBI.__compareToDouble(x, y);\n }\n static __compareToDouble(x, y) {\n if (y !== y)\n return y; // NaN.\n if (y === Infinity)\n return -1;\n if (y === -Infinity)\n return 1;\n const xSign = x.sign;\n const ySign = (y < 0);\n if (xSign !== ySign)\n return JSBI.__unequalSign(xSign);\n if (y === 0) {\n throw new Error('implementation bug: should be handled elsewhere');\n }\n if (x.length === 0)\n return -1;\n JSBI.__kBitConversionDouble[0] = y;\n const rawExponent = (JSBI.__kBitConversionInts[JSBI.__kBitConversionIntHigh] >>> 20) &\n 0x7FF;\n if (rawExponent === 0x7FF) {\n throw new Error('implementation bug: handled elsewhere');\n }\n const exponent = rawExponent - 0x3FF;\n if (exponent < 0) {\n // The absolute value of y is less than 1. Only 0n has an absolute\n // value smaller than that, but we've already covered that case.\n return JSBI.__absoluteGreater(xSign);\n }\n const xLength = x.length;\n let xMsd = x.__digit(xLength - 1);\n const msdLeadingZeros = JSBI.__clz30(xMsd);\n const xBitLength = xLength * 30 - msdLeadingZeros;\n const yBitLength = exponent + 1;\n if (xBitLength < yBitLength)\n return JSBI.__absoluteLess(xSign);\n if (xBitLength > yBitLength)\n return JSBI.__absoluteGreater(xSign);\n // Same sign, same bit length. Shift mantissa to align with x and compare\n // bit for bit.\n const kHiddenBit = 0x00100000;\n let mantissaHigh = (JSBI.__kBitConversionInts[JSBI.__kBitConversionIntHigh] & 0xFFFFF) |\n kHiddenBit;\n let mantissaLow = JSBI.__kBitConversionInts[JSBI.__kBitConversionIntLow];\n const kMantissaHighTopBit = 20;\n const msdTopBit = 29 - msdLeadingZeros;\n if (msdTopBit !== (((xBitLength - 1) % 30) | 0)) {\n throw new Error('implementation bug');\n }\n let compareMantissa; // Shifted chunk of mantissa.\n let remainingMantissaBits = 0;\n // First, compare most significant digit against beginning of mantissa.\n if (msdTopBit < kMantissaHighTopBit) {\n const shift = kMantissaHighTopBit - msdTopBit;\n remainingMantissaBits = shift + 32;\n compareMantissa = mantissaHigh >>> shift;\n mantissaHigh = (mantissaHigh << (32 - shift)) | (mantissaLow >>> shift);\n mantissaLow = mantissaLow << (32 - shift);\n }\n else if (msdTopBit === kMantissaHighTopBit) {\n remainingMantissaBits = 32;\n compareMantissa = mantissaHigh;\n mantissaHigh = mantissaLow;\n mantissaLow = 0;\n }\n else {\n const shift = msdTopBit - kMantissaHighTopBit;\n remainingMantissaBits = 32 - shift;\n compareMantissa =\n (mantissaHigh << shift) | (mantissaLow >>> (32 - shift));\n mantissaHigh = mantissaLow << shift;\n mantissaLow = 0;\n }\n xMsd = xMsd >>> 0;\n compareMantissa = compareMantissa >>> 0;\n if (xMsd > compareMantissa)\n return JSBI.__absoluteGreater(xSign);\n if (xMsd < compareMantissa)\n return JSBI.__absoluteLess(xSign);\n // Then, compare additional digits against remaining mantissa bits.\n for (let digitIndex = xLength - 2; digitIndex >= 0; digitIndex--) {\n if (remainingMantissaBits > 0) {\n remainingMantissaBits -= 30;\n compareMantissa = mantissaHigh >>> 2;\n mantissaHigh = (mantissaHigh << 30) | (mantissaLow >>> 2);\n mantissaLow = (mantissaLow << 30);\n }\n else {\n compareMantissa = 0;\n }\n const digit = x.__unsignedDigit(digitIndex);\n if (digit > compareMantissa)\n return JSBI.__absoluteGreater(xSign);\n if (digit < compareMantissa)\n return JSBI.__absoluteLess(xSign);\n }\n // Integer parts are equal; check whether {y} has a fractional part.\n if (mantissaHigh !== 0 || mantissaLow !== 0) {\n if (remainingMantissaBits === 0)\n throw new Error('implementation bug');\n return JSBI.__absoluteLess(xSign);\n }\n return 0;\n }\n static __equalToNumber(x, y) {\n if (JSBI.__isOneDigitInt(y)) {\n if (y === 0)\n return x.length === 0;\n // Any multi-digit BigInt is bigger than an int32.\n return (x.length === 1) && (x.sign === (y < 0)) &&\n (x.__unsignedDigit(0) === Math.abs(y));\n }\n return JSBI.__compareToDouble(x, y) === 0;\n }\n // Comparison operations, chosen such that \"op ^ 2\" reverses direction:\n // 0 - lessThan\n // 1 - lessThanOrEqual\n // 2 - greaterThan\n // 3 - greaterThanOrEqual\n static __comparisonResultToBool(result, op) {\n switch (op) {\n case 0: return result < 0;\n case 1: return result <= 0;\n case 2: return result > 0;\n case 3: return result >= 0;\n }\n }\n static __compare(x, y, op) {\n x = JSBI.__toPrimitive(x);\n y = JSBI.__toPrimitive(y);\n if (typeof x === 'string' && typeof y === 'string') {\n switch (op) {\n case 0: return x < y;\n case 1: return x <= y;\n case 2: return x > y;\n case 3: return x >= y;\n }\n }\n if (JSBI.__isBigInt(x) && typeof y === 'string') {\n y = JSBI.__fromString(y);\n if (y === null)\n return false;\n return JSBI.__comparisonResultToBool(JSBI.__compareToBigInt(x, y), op);\n }\n if (typeof x === 'string' && JSBI.__isBigInt(y)) {\n x = JSBI.__fromString(x);\n if (x === null)\n return false;\n return JSBI.__comparisonResultToBool(JSBI.__compareToBigInt(x, y), op);\n }\n x = JSBI.__toNumeric(x);\n y = JSBI.__toNumeric(y);\n if (JSBI.__isBigInt(x)) {\n if (JSBI.__isBigInt(y)) {\n return JSBI.__comparisonResultToBool(JSBI.__compareToBigInt(x, y), op);\n }\n if (typeof y !== 'number')\n throw new Error('implementation bug');\n return JSBI.__comparisonResultToBool(JSBI.__compareToNumber(x, y), op);\n }\n if (typeof x !== 'number')\n throw new Error('implementation bug');\n if (JSBI.__isBigInt(y)) {\n // Note that \"op ^ 2\" reverses the op's direction.\n return JSBI.__comparisonResultToBool(JSBI.__compareToNumber(y, x), (op ^ 2));\n }\n if (typeof y !== 'number')\n throw new Error('implementation bug');\n switch (op) {\n case 0: return x < y;\n case 1: return x <= y;\n case 2: return x > y;\n case 3: return x >= y;\n }\n }\n __clzmsd() {\n return JSBI.__clz30(this.__digit(this.length - 1));\n }\n static __absoluteAdd(x, y, resultSign) {\n if (x.length < y.length)\n return JSBI.__absoluteAdd(y, x, resultSign);\n if (x.length === 0)\n return x;\n if (y.length === 0)\n return x.sign === resultSign ? x : JSBI.unaryMinus(x);\n let resultLength = x.length;\n if (x.__clzmsd() === 0 || (y.length === x.length && y.__clzmsd() === 0)) {\n resultLength++;\n }\n const result = new JSBI(resultLength, resultSign);\n let carry = 0;\n let i = 0;\n for (; i < y.length; i++) {\n const r = x.__digit(i) + y.__digit(i) + carry;\n carry = r >>> 30;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n for (; i < x.length; i++) {\n const r = x.__digit(i) + carry;\n carry = r >>> 30;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n if (i < result.length) {\n result.__setDigit(i, carry);\n }\n return result.__trim();\n }\n static __absoluteSub(x, y, resultSign) {\n if (x.length === 0)\n return x;\n if (y.length === 0)\n return x.sign === resultSign ? x : JSBI.unaryMinus(x);\n const result = new JSBI(x.length, resultSign);\n let borrow = 0;\n let i = 0;\n for (; i < y.length; i++) {\n const r = x.__digit(i) - y.__digit(i) - borrow;\n borrow = (r >>> 30) & 1;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n for (; i < x.length; i++) {\n const r = x.__digit(i) - borrow;\n borrow = (r >>> 30) & 1;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n return result.__trim();\n }\n static __absoluteAddOne(x, sign, result = null) {\n const inputLength = x.length;\n if (result === null) {\n result = new JSBI(inputLength, sign);\n }\n else {\n result.sign = sign;\n }\n let carry = 1;\n for (let i = 0; i < inputLength; i++) {\n const r = x.__digit(i) + carry;\n carry = r >>> 30;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n if (carry !== 0) {\n result.__setDigitGrow(inputLength, 1);\n }\n return result;\n }\n static __absoluteSubOne(x, resultLength) {\n const length = x.length;\n resultLength = resultLength || length;\n const result = new JSBI(resultLength, false);\n let borrow = 1;\n for (let i = 0; i < length; i++) {\n const r = x.__digit(i) - borrow;\n borrow = (r >>> 30) & 1;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n if (borrow !== 0)\n throw new Error('implementation bug');\n for (let i = length; i < resultLength; i++) {\n result.__setDigit(i, 0);\n }\n return result;\n }\n static __absoluteAnd(x, y, result = null) {\n let xLength = x.length;\n let yLength = y.length;\n let numPairs = yLength;\n if (xLength < yLength) {\n numPairs = xLength;\n const tmp = x;\n const tmpLength = xLength;\n x = y;\n xLength = yLength;\n y = tmp;\n yLength = tmpLength;\n }\n let resultLength = numPairs;\n if (result === null) {\n result = new JSBI(resultLength, false);\n }\n else {\n resultLength = result.length;\n }\n let i = 0;\n for (; i < numPairs; i++) {\n result.__setDigit(i, x.__digit(i) & y.__digit(i));\n }\n for (; i < resultLength; i++) {\n result.__setDigit(i, 0);\n }\n return result;\n }\n static __absoluteAndNot(x, y, result = null) {\n const xLength = x.length;\n const yLength = y.length;\n let numPairs = yLength;\n if (xLength < yLength) {\n numPairs = xLength;\n }\n let resultLength = xLength;\n if (result === null) {\n result = new JSBI(resultLength, false);\n }\n else {\n resultLength = result.length;\n }\n let i = 0;\n for (; i < numPairs; i++) {\n result.__setDigit(i, x.__digit(i) & ~y.__digit(i));\n }\n for (; i < xLength; i++) {\n result.__setDigit(i, x.__digit(i));\n }\n for (; i < resultLength; i++) {\n result.__setDigit(i, 0);\n }\n return result;\n }\n static __absoluteOr(x, y, result = null) {\n let xLength = x.length;\n let yLength = y.length;\n let numPairs = yLength;\n if (xLength < yLength) {\n numPairs = xLength;\n const tmp = x;\n const tmpLength = xLength;\n x = y;\n xLength = yLength;\n y = tmp;\n yLength = tmpLength;\n }\n let resultLength = xLength;\n if (result === null) {\n result = new JSBI(resultLength, false);\n }\n else {\n resultLength = result.length;\n }\n let i = 0;\n for (; i < numPairs; i++) {\n result.__setDigit(i, x.__digit(i) | y.__digit(i));\n }\n for (; i < xLength; i++) {\n result.__setDigit(i, x.__digit(i));\n }\n for (; i < resultLength; i++) {\n result.__setDigit(i, 0);\n }\n return result;\n }\n static __absoluteXor(x, y, result = null) {\n let xLength = x.length;\n let yLength = y.length;\n let numPairs = yLength;\n if (xLength < yLength) {\n numPairs = xLength;\n const tmp = x;\n const tmpLength = xLength;\n x = y;\n xLength = yLength;\n y = tmp;\n yLength = tmpLength;\n }\n let resultLength = xLength;\n if (result === null) {\n result = new JSBI(resultLength, false);\n }\n else {\n resultLength = result.length;\n }\n let i = 0;\n for (; i < numPairs; i++) {\n result.__setDigit(i, x.__digit(i) ^ y.__digit(i));\n }\n for (; i < xLength; i++) {\n result.__setDigit(i, x.__digit(i));\n }\n for (; i < resultLength; i++) {\n result.__setDigit(i, 0);\n }\n return result;\n }\n static __absoluteCompare(x, y) {\n const diff = x.length - y.length;\n if (diff !== 0)\n return diff;\n let i = x.length - 1;\n while (i >= 0 && x.__digit(i) === y.__digit(i))\n i--;\n if (i < 0)\n return 0;\n return x.__unsignedDigit(i) > y.__unsignedDigit(i) ? 1 : -1;\n }\n static __multiplyAccumulate(multiplicand, multiplier, accumulator, accumulatorIndex) {\n if (multiplier === 0)\n return;\n const m2Low = multiplier & 0x7FFF;\n const m2High = multiplier >>> 15;\n let carry = 0;\n let high = 0;\n for (let i = 0; i < multiplicand.length; i++, accumulatorIndex++) {\n let acc = accumulator.__digit(accumulatorIndex);\n const m1 = multiplicand.__digit(i);\n const m1Low = m1 & 0x7FFF;\n const m1High = m1 >>> 15;\n const rLow = JSBI.__imul(m1Low, m2Low);\n const rMid1 = JSBI.__imul(m1Low, m2High);\n const rMid2 = JSBI.__imul(m1High, m2Low);\n const rHigh = JSBI.__imul(m1High, m2High);\n acc += high + rLow + carry;\n carry = acc >>> 30;\n acc &= 0x3FFFFFFF;\n acc += ((rMid1 & 0x7FFF) << 15) + ((rMid2 & 0x7FFF) << 15);\n carry += acc >>> 30;\n high = rHigh + (rMid1 >>> 15) + (rMid2 >>> 15);\n accumulator.__setDigit(accumulatorIndex, acc & 0x3FFFFFFF);\n }\n for (; carry !== 0 || high !== 0; accumulatorIndex++) {\n let acc = accumulator.__digit(accumulatorIndex);\n acc += carry + high;\n high = 0;\n carry = acc >>> 30;\n accumulator.__setDigit(accumulatorIndex, acc & 0x3FFFFFFF);\n }\n }\n static __internalMultiplyAdd(source, factor, summand, n, result) {\n let carry = summand;\n let high = 0;\n for (let i = 0; i < n; i++) {\n const digit = source.__digit(i);\n const rx = JSBI.__imul(digit & 0x7FFF, factor);\n const ry = JSBI.__imul(digit >>> 15, factor);\n const r = rx + ((ry & 0x7FFF) << 15) + high + carry;\n carry = r >>> 30;\n high = ry >>> 15;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n if (result.length > n) {\n result.__setDigit(n++, carry + high);\n while (n < result.length) {\n result.__setDigit(n++, 0);\n }\n }\n else {\n if (carry + high !== 0)\n throw new Error('implementation bug');\n }\n }\n __inplaceMultiplyAdd(multiplier, summand, length) {\n if (length > this.length)\n length = this.length;\n const mLow = multiplier & 0x7FFF;\n const mHigh = multiplier >>> 15;\n let carry = 0;\n let high = summand;\n for (let i = 0; i < length; i++) {\n const d = this.__digit(i);\n const dLow = d & 0x7FFF;\n const dHigh = d >>> 15;\n const pLow = JSBI.__imul(dLow, mLow);\n const pMid1 = JSBI.__imul(dLow, mHigh);\n const pMid2 = JSBI.__imul(dHigh, mLow);\n const pHigh = JSBI.__imul(dHigh, mHigh);\n let result = high + pLow + carry;\n carry = result >>> 30;\n result &= 0x3FFFFFFF;\n result += ((pMid1 & 0x7FFF) << 15) + ((pMid2 & 0x7FFF) << 15);\n carry += result >>> 30;\n high = pHigh + (pMid1 >>> 15) + (pMid2 >>> 15);\n this.__setDigit(i, result & 0x3FFFFFFF);\n }\n if (carry !== 0 || high !== 0) {\n throw new Error('implementation bug');\n }\n }\n static __absoluteDivSmall(x, divisor, quotient = null) {\n if (quotient === null)\n quotient = new JSBI(x.length, false);\n let remainder = 0;\n for (let i = x.length * 2 - 1; i >= 0; i -= 2) {\n let input = ((remainder << 15) | x.__halfDigit(i)) >>> 0;\n const upperHalf = (input / divisor) | 0;\n remainder = (input % divisor) | 0;\n input = ((remainder << 15) | x.__halfDigit(i - 1)) >>> 0;\n const lowerHalf = (input / divisor) | 0;\n remainder = (input % divisor) | 0;\n quotient.__setDigit(i >>> 1, (upperHalf << 15) | lowerHalf);\n }\n return quotient;\n }\n static __absoluteModSmall(x, divisor) {\n let remainder = 0;\n for (let i = x.length * 2 - 1; i >= 0; i--) {\n const input = ((remainder << 15) | x.__halfDigit(i)) >>> 0;\n remainder = (input % divisor) | 0;\n }\n return remainder;\n }\n static __absoluteDivLarge(dividend, divisor, wantQuotient, wantRemainder) {\n const n = divisor.__halfDigitLength();\n const n2 = divisor.length;\n const m = dividend.__halfDigitLength() - n;\n let q = null;\n if (wantQuotient) {\n q = new JSBI((m + 2) >>> 1, false);\n q.__initializeDigits();\n }\n const qhatv = new JSBI((n + 2) >>> 1, false);\n qhatv.__initializeDigits();\n // D1.\n const shift = JSBI.__clz15(divisor.__halfDigit(n - 1));\n if (shift > 0) {\n divisor = JSBI.__specialLeftShift(divisor, shift, 0 /* add no digits*/);\n }\n const u = JSBI.__specialLeftShift(dividend, shift, 1 /* add one digit */);\n // D2.\n const vn1 = divisor.__halfDigit(n - 1);\n let halfDigitBuffer = 0;\n for (let j = m; j >= 0; j--) {\n // D3.\n let qhat = 0x7FFF;\n const ujn = u.__halfDigit(j + n);\n if (ujn !== vn1) {\n const input = ((ujn << 15) | u.__halfDigit(j + n - 1)) >>> 0;\n qhat = (input / vn1) | 0;\n let rhat = (input % vn1) | 0;\n const vn2 = divisor.__halfDigit(n - 2);\n const ujn2 = u.__halfDigit(j + n - 2);\n while ((JSBI.__imul(qhat, vn2) >>> 0) > (((rhat << 16) | ujn2) >>> 0)) {\n qhat--;\n rhat += vn1;\n if (rhat > 0x7FFF)\n break;\n }\n }\n // D4.\n JSBI.__internalMultiplyAdd(divisor, qhat, 0, n2, qhatv);\n let c = u.__inplaceSub(qhatv, j, n + 1);\n if (c !== 0) {\n c = u.__inplaceAdd(divisor, j, n);\n u.__setHalfDigit(j + n, (u.__halfDigit(j + n) + c) & 0x7FFF);\n qhat--;\n }\n if (wantQuotient) {\n if (j & 1) {\n halfDigitBuffer = qhat << 15;\n }\n else {\n // TODO make this statically determinable\n q.__setDigit(j >>> 1, halfDigitBuffer | qhat);\n }\n }\n }\n if (wantRemainder) {\n u.__inplaceRightShift(shift);\n if (wantQuotient) {\n return { quotient: q, remainder: u };\n }\n return u;\n }\n if (wantQuotient)\n return q;\n // TODO find a way to make this statically unreachable?\n throw new Error('unreachable');\n }\n static __clz15(value) {\n return JSBI.__clz30(value) - 15;\n }\n // TODO: work on full digits, like __inplaceSub?\n __inplaceAdd(summand, startIndex, halfDigits) {\n let carry = 0;\n for (let i = 0; i < halfDigits; i++) {\n const sum = this.__halfDigit(startIndex + i) +\n summand.__halfDigit(i) +\n carry;\n carry = sum >>> 15;\n this.__setHalfDigit(startIndex + i, sum & 0x7FFF);\n }\n return carry;\n }\n __inplaceSub(subtrahend, startIndex, halfDigits) {\n const fullSteps = (halfDigits - 1) >>> 1;\n let borrow = 0;\n if (startIndex & 1) {\n // this: [..][..][..]\n // subtr.: [..][..]\n startIndex >>= 1;\n let current = this.__digit(startIndex);\n let r0 = current & 0x7FFF;\n let i = 0;\n for (; i < fullSteps; i++) {\n const sub = subtrahend.__digit(i);\n const r15 = (current >>> 15) - (sub & 0x7FFF) - borrow;\n borrow = (r15 >>> 15) & 1;\n this.__setDigit(startIndex + i, ((r15 & 0x7FFF) << 15) | (r0 & 0x7FFF));\n current = this.__digit(startIndex + i + 1);\n r0 = (current & 0x7FFF) - (sub >>> 15) - borrow;\n borrow = (r0 >>> 15) & 1;\n }\n // Unrolling the last iteration gives a 5% performance benefit!\n const sub = subtrahend.__digit(i);\n const r15 = (current >>> 15) - (sub & 0x7FFF) - borrow;\n borrow = (r15 >>> 15) & 1;\n this.__setDigit(startIndex + i, ((r15 & 0x7FFF) << 15) | (r0 & 0x7FFF));\n const subTop = sub >>> 15;\n if (startIndex + i + 1 >= this.length) {\n throw new RangeError('out of bounds');\n }\n if ((halfDigits & 1) === 0) {\n current = this.__digit(startIndex + i + 1);\n r0 = (current & 0x7FFF) - subTop - borrow;\n borrow = (r0 >>> 15) & 1;\n this.__setDigit(startIndex + subtrahend.length, (current & 0x3FFF8000) | (r0 & 0x7FFF));\n }\n }\n else {\n startIndex >>= 1;\n let i = 0;\n for (; i < subtrahend.length - 1; i++) {\n const current = this.__digit(startIndex + i);\n const sub = subtrahend.__digit(i);\n const r0 = (current & 0x7FFF) - (sub & 0x7FFF) - borrow;\n borrow = (r0 >>> 15) & 1;\n const r15 = (current >>> 15) - (sub >>> 15) - borrow;\n borrow = (r15 >>> 15) & 1;\n this.__setDigit(startIndex + i, ((r15 & 0x7FFF) << 15) | (r0 & 0x7FFF));\n }\n const current = this.__digit(startIndex + i);\n const sub = subtrahend.__digit(i);\n const r0 = (current & 0x7FFF) - (sub & 0x7FFF) - borrow;\n borrow = (r0 >>> 15) & 1;\n let r15 = 0;\n if ((halfDigits & 1) === 0) {\n r15 = (current >>> 15) - (sub >>> 15) - borrow;\n borrow = (r15 >>> 15) & 1;\n }\n this.__setDigit(startIndex + i, ((r15 & 0x7FFF) << 15) | (r0 & 0x7FFF));\n }\n return borrow;\n }\n __inplaceRightShift(shift) {\n if (shift === 0)\n return;\n let carry = this.__digit(0) >>> shift;\n const last = this.length - 1;\n for (let i = 0; i < last; i++) {\n const d = this.__digit(i + 1);\n this.__setDigit(i, ((d << (30 - shift)) & 0x3FFFFFFF) | carry);\n carry = d >>> shift;\n }\n this.__setDigit(last, carry);\n }\n static __specialLeftShift(x, shift, addDigit) {\n const n = x.length;\n const resultLength = n + addDigit;\n const result = new JSBI(resultLength, false);\n if (shift === 0) {\n for (let i = 0; i < n; i++)\n result.__setDigit(i, x.__digit(i));\n if (addDigit > 0)\n result.__setDigit(n, 0);\n return result;\n }\n let carry = 0;\n for (let i = 0; i < n; i++) {\n const d = x.__digit(i);\n result.__setDigit(i, ((d << shift) & 0x3FFFFFFF) | carry);\n carry = d >>> (30 - shift);\n }\n if (addDigit > 0) {\n result.__setDigit(n, carry);\n }\n return result;\n }\n static __leftShiftByAbsolute(x, y) {\n const shift = JSBI.__toShiftAmount(y);\n if (shift < 0)\n throw new RangeError('BigInt too big');\n const digitShift = (shift / 30) | 0;\n const bitsShift = shift % 30;\n const length = x.length;\n const grow = bitsShift !== 0 &&\n (x.__digit(length - 1) >>> (30 - bitsShift)) !== 0;\n const resultLength = length + digitShift + (grow ? 1 : 0);\n const result = new JSBI(resultLength, x.sign);\n if (bitsShift === 0) {\n let i = 0;\n for (; i < digitShift; i++)\n result.__setDigit(i, 0);\n for (; i < resultLength; i++) {\n result.__setDigit(i, x.__digit(i - digitShift));\n }\n }\n else {\n let carry = 0;\n for (let i = 0; i < digitShift; i++)\n result.__setDigit(i, 0);\n for (let i = 0; i < length; i++) {\n const d = x.__digit(i);\n result.__setDigit(i + digitShift, ((d << bitsShift) & 0x3FFFFFFF) | carry);\n carry = d >>> (30 - bitsShift);\n }\n if (grow) {\n result.__setDigit(length + digitShift, carry);\n }\n else {\n if (carry !== 0)\n throw new Error('implementation bug');\n }\n }\n return result.__trim();\n }\n static __rightShiftByAbsolute(x, y) {\n const length = x.length;\n const sign = x.sign;\n const shift = JSBI.__toShiftAmount(y);\n if (shift < 0)\n return JSBI.__rightShiftByMaximum(sign);\n const digitShift = (shift / 30) | 0;\n const bitsShift = shift % 30;\n let resultLength = length - digitShift;\n if (resultLength <= 0)\n return JSBI.__rightShiftByMaximum(sign);\n // For negative numbers, round down if any bit was shifted out (so that\n // e.g. -5n >> 1n == -3n and not -2n). Check now whether this will happen\n // and whether itc an cause overflow into a new digit. If we allocate the\n // result large enough up front, it avoids having to do grow it later.\n let mustRoundDown = false;\n if (sign) {\n const mask = (1 << bitsShift) - 1;\n if ((x.__digit(digitShift) & mask) !== 0) {\n mustRoundDown = true;\n }\n else {\n for (let i = 0; i < digitShift; i++) {\n if (x.__digit(i) !== 0) {\n mustRoundDown = true;\n break;\n }\n }\n }\n }\n // If bitsShift is non-zero, it frees up bits, preventing overflow.\n if (mustRoundDown && bitsShift === 0) {\n // Overflow cannot happen if the most significant digit has unset bits.\n const msd = x.__digit(length - 1);\n const roundingCanOverflow = ~msd === 0;\n if (roundingCanOverflow)\n resultLength++;\n }\n let result = new JSBI(resultLength, sign);\n if (bitsShift === 0) {\n // Zero out any overflow digit (see \"roundingCanOverflow\" above).\n result.__setDigit(resultLength - 1, 0);\n for (let i = digitShift; i < length; i++) {\n result.__setDigit(i - digitShift, x.__digit(i));\n }\n }\n else {\n let carry = x.__digit(digitShift) >>> bitsShift;\n const last = length - digitShift - 1;\n for (let i = 0; i < last; i++) {\n const d = x.__digit(i + digitShift + 1);\n result.__setDigit(i, ((d << (30 - bitsShift)) & 0x3FFFFFFF) | carry);\n carry = d >>> bitsShift;\n }\n result.__setDigit(last, carry);\n }\n if (mustRoundDown) {\n // Since the result is negative, rounding down means adding one to its\n // absolute value. This cannot overflow.\n result = JSBI.__absoluteAddOne(result, true, result);\n }\n return result.__trim();\n }\n static __rightShiftByMaximum(sign) {\n if (sign) {\n return JSBI.__oneDigit(1, true);\n }\n return JSBI.__zero();\n }\n static __toShiftAmount(x) {\n if (x.length > 1)\n return -1;\n const value = x.__unsignedDigit(0);\n if (value > JSBI.__kMaxLengthBits)\n return -1;\n return value;\n }\n static __toPrimitive(obj, hint = 'default') {\n if (typeof obj !== 'object')\n return obj;\n if (obj.constructor === JSBI)\n return obj;\n if (typeof Symbol !== 'undefined' &&\n typeof Symbol.toPrimitive === 'symbol') {\n if (obj[Symbol.toPrimitive]) {\n const primitive = obj[Symbol.toPrimitive](hint);\n if (typeof primitive !== 'object')\n return primitive;\n throw new TypeError('Cannot convert object to primitive value');\n }\n }\n const valueOf = obj.valueOf;\n if (valueOf) {\n const primitive = valueOf.call(obj);\n if (typeof primitive !== 'object')\n return primitive;\n }\n const toString = obj.toString;\n if (toString) {\n const primitive = toString.call(obj);\n if (typeof primitive !== 'object')\n return primitive;\n }\n throw new TypeError('Cannot convert object to primitive value');\n }\n static __toNumeric(value) {\n if (JSBI.__isBigInt(value))\n return value;\n return +value;\n }\n static __isBigInt(value) {\n return typeof value === 'object' && value !== null &&\n value.constructor === JSBI;\n }\n static __truncateToNBits(n, x) {\n const neededDigits = ((n + 29) / 30) | 0;\n const result = new JSBI(neededDigits, x.sign);\n const last = neededDigits - 1;\n for (let i = 0; i < last; i++) {\n result.__setDigit(i, x.__digit(i));\n }\n let msd = x.__digit(last);\n if ((n % 30) !== 0) {\n const drop = 32 - (n % 30);\n msd = (msd << drop) >>> drop;\n }\n result.__setDigit(last, msd);\n return result.__trim();\n }\n static __truncateAndSubFromPowerOfTwo(n, x, resultSign) {\n const neededDigits = ((n + 29) / 30) | 0;\n const result = new JSBI(neededDigits, resultSign);\n let i = 0;\n const last = neededDigits - 1;\n let borrow = 0;\n const limit = Math.min(last, x.length);\n for (; i < limit; i++) {\n const r = 0 - x.__digit(i) - borrow;\n borrow = (r >>> 30) & 1;\n result.__setDigit(i, r & 0x3FFFFFFF);\n }\n for (; i < last; i++) {\n result.__setDigit(i, (-borrow & 0x3FFFFFFF) | 0);\n }\n let msd = last < x.length ? x.__digit(last) : 0;\n const msdBitsConsumed = n % 30;\n let resultMsd;\n if (msdBitsConsumed === 0) {\n resultMsd = 0 - msd - borrow;\n resultMsd &= 0x3FFFFFFF;\n }\n else {\n const drop = 32 - msdBitsConsumed;\n msd = (msd << drop) >>> drop;\n const minuendMsd = 1 << (32 - drop);\n resultMsd = minuendMsd - msd - borrow;\n resultMsd &= (minuendMsd - 1);\n }\n result.__setDigit(last, resultMsd);\n return result.__trim();\n }\n // Digit helpers.\n __digit(i) {\n return this[i];\n }\n __unsignedDigit(i) {\n return this[i] >>> 0;\n }\n __setDigit(i, digit) {\n this[i] = digit | 0;\n }\n __setDigitGrow(i, digit) {\n this[i] = digit | 0;\n }\n __halfDigitLength() {\n const len = this.length;\n if (this.__unsignedDigit(len - 1) <= 0x7FFF)\n return len * 2 - 1;\n return len * 2;\n }\n __halfDigit(i) {\n return (this[i >>> 1] >>> ((i & 1) * 15)) & 0x7FFF;\n }\n __setHalfDigit(i, value) {\n const digitIndex = i >>> 1;\n const previous = this.__digit(digitIndex);\n const updated = (i & 1) ? (previous & 0x7FFF) | (value << 15) :\n (previous & 0x3FFF8000) | (value & 0x7FFF);\n this.__setDigit(digitIndex, updated);\n }\n static __digitPow(base, exponent) {\n let result = 1;\n while (exponent > 0) {\n if (exponent & 1)\n result *= base;\n exponent >>>= 1;\n base *= base;\n }\n return result;\n }\n static __detectBigEndian() {\n JSBI.__kBitConversionDouble[0] = -0.0;\n return JSBI.__kBitConversionInts[0] !== 0;\n }\n static __isOneDigitInt(x) {\n return (x & 0x3FFFFFFF) === x;\n }\n}\nJSBI.__kMaxLength = 1 << 25;\nJSBI.__kMaxLengthBits = JSBI.__kMaxLength << 5;\n// Lookup table for the maximum number of bits required per character of a\n// base-N string representation of a number. To increase accuracy, the array\n// value is the actual value multiplied by 32. To generate this table:\n//\n// for (let i = 0; i <= 36; i++) {\n// console.log(Math.ceil(Math.log2(i) * 32) + ',');\n// }\nJSBI.__kMaxBitsPerChar = [\n 0, 0, 32, 51, 64, 75, 83, 90, 96,\n 102, 107, 111, 115, 119, 122, 126, 128,\n 131, 134, 136, 139, 141, 143, 145, 147,\n 149, 151, 153, 154, 156, 158, 159, 160,\n 162, 163, 165, 166, // 33..36\n];\nJSBI.__kBitsPerCharTableShift = 5;\nJSBI.__kBitsPerCharTableMultiplier = 1 << JSBI.__kBitsPerCharTableShift;\nJSBI.__kConversionChars = '0123456789abcdefghijklmnopqrstuvwxyz'.split('');\nJSBI.__kBitConversionBuffer = new ArrayBuffer(8);\nJSBI.__kBitConversionDouble = new Float64Array(JSBI.__kBitConversionBuffer);\nJSBI.__kBitConversionInts = new Int32Array(JSBI.__kBitConversionBuffer);\nJSBI.__kBitConversionIntHigh = JSBI.__detectBigEndian() ? 0 : 1;\nJSBI.__kBitConversionIntLow = JSBI.__detectBigEndian() ? 1 : 0;\n// For IE11 compatibility.\n// Note that the custom replacements are tailored for JSBI's needs, and as\n// such are not reusable as general-purpose polyfills.\nJSBI.__clz30 = Math.clz32 ? function (x) {\n return Math.clz32(x) - 2;\n} : function (x) {\n if (x === 0)\n return 30;\n return 29 - (Math.log(x >>> 0) / Math.LN2 | 0) | 0;\n};\nJSBI.__imul = Math.imul || function (a, b) {\n return (a * b) | 0;\n};\nexport default JSBI;\n//# sourceMappingURL=jsbi.js.map"],"names":["JSBI","Array","constructor","length","sign","Object","setPrototypeOf","prototype","__kMaxLength","RangeError","BigInt","arg","_","Math","floor","t","Number","isFinite","__zero","__isOneDigitInt","__oneDigit","__fromDouble","result","__fromString","SyntaxError","primitive","__toPrimitive","TypeError","toDebugString","digit","push","toString","join","radix","__toStringBasePowerOfTwo","__toStringGeneric","valueOf","Error","toNumber","x","xLength","value","__unsignedDigit","xMsd","__digit","msdLeadingZeros","__clz30","xBitLength","Infinity","exponent","currentDigit","digitIndex","shift","mantissaHigh","mantissaHighBitsUnset","mantissaLow","mantissaLowBitsUnset","rounding","__decideRounding","signBit","__kBitConversionInts","__kBitConversionIntHigh","__kBitConversionIntLow","__kBitConversionDouble","unaryMinus","__copy","bitwiseNot","__absoluteSubOne","__trim","__absoluteAddOne","exponentiate","y","expValue","__kMaxLengthBits","neededDigits","__initializeDigits","msd","__setDigit","runningSquare","multiply","resultLength","__clzmsd","i","__multiplyAccumulate","divide","__absoluteCompare","resultSign","divisor","quotient","__absoluteDivSmall","__absoluteDivLarge","remainder","remainderDigit","__absoluteModSmall","add","__absoluteAdd","__absoluteSub","subtract","leftShift","__rightShiftByAbsolute","__leftShiftByAbsolute","signedRightShift","unsignedRightShift","lessThan","__compareToBigInt","lessThanOrEqual","greaterThan","greaterThanOrEqual","equal","notEqual","bitwiseAnd","max","__absoluteAnd","y1","__absoluteOr","__absoluteAndNot","bitwiseXor","__absoluteXor","bitwiseOr","asIntN","n","neededLength","topDigit","compareDigit","__truncateToNBits","__truncateAndSubFromPowerOfTwo","asUintN","bitsInTopDigit","ADD","__toNumeric","__isBigInt","LT","__compare","LE","GT","GE","EQ","__equalToNumber","NE","DataViewGetBigInt64","dataview","byteOffset","littleEndian","DataViewGetBigUint64","h","l","high","getUint32","low","DataViewSetBigInt64","DataViewSetBigUint64","d1","setUint32","newLength","last","pop","mantissaBitsUnset","topUnconsumedBit","mask","rawExponent","digits","kMantissaHighTopBit","msdTopBit","remainingMantissaBits","__isWhitespace","c","string","cursor","current","charCodeAt","chars","bitsPerChar","__kMaxBitsPerChar","roundup","__kBitsPerCharTableMultiplier","bitsMin","__kBitsPerCharTableShift","limDigit","limAlpha","parts","partsBits","done","part","bits","d","__fillFromParts","charsSoFar","multiplier","m","digitsSoFar","__inplaceMultiplyAdd","bitsInDigit","partBits","charMask","charsRequired","pos","availableBits","newDigit","__kConversionChars","consumedBits","isRecursiveCall","bitLength","maxBitsPerChar","minBitsPerChar","secondHalfChars","conqueror","secondHalf","input","__halfDigit","__setHalfDigit","divisionResult","firstHalf","__unequalSign","leftNegative","__absoluteGreater","bothNegative","__absoluteLess","xSign","__compareToNumber","ySign","yAbs","abs","xDigit","__compareToDouble","yBitLength","compareMantissa","__comparisonResultToBool","op","carry","r","borrow","inputLength","__setDigitGrow","yLength","numPairs","tmp","tmpLength","diff","multiplicand","accumulator","accumulatorIndex","m2Low","m2High","acc","m1","m1Low","m1High","rLow","__imul","rMid1","rMid2","rHigh","__internalMultiplyAdd","source","factor","summand","rx","ry","mLow","mHigh","dLow","dHigh","pLow","pMid1","pMid2","pHigh","upperHalf","lowerHalf","dividend","wantQuotient","wantRemainder","__halfDigitLength","n2","q","qhatv","__clz15","__specialLeftShift","u","vn1","halfDigitBuffer","qhat","j","ujn","rhat","vn2","ujn2","__inplaceSub","__inplaceAdd","__inplaceRightShift","startIndex","halfDigits","sum","subtrahend","r0","sub","r15","addDigit","__toShiftAmount","digitShift","bitsShift","grow","__rightShiftByMaximum","mustRoundDown","obj","hint","Symbol","toPrimitive","call","drop","min","limit","msdBitsConsumed","resultMsd","minuendMsd","len","previous","updated","__digitPow","base","__detectBigEndian","__kBitConversionBuffer","ArrayBuffer","Float64Array","Int32Array","clz32","log","LN2","imul","a","b"],"mappings":"aAYA,KAAM,CAAAA,IAAI,QAAS,CAAAC,KAAM,CACrBC,WAAWA,CAACC,CAAM,CAAEC,CAAI,CAAE,CAMtB,GALA,KAAK,CAACD,CAAM,CAAC,CACb,IAAI,CAACC,IAAI,CAAGA,CAAI,CAGhBC,MAAM,CAACC,cAAc,CAAC,IAAI,CAAEN,IAAI,CAACO,SAAS,CAAC,CACvCJ,CAAM,CAAGH,IAAI,CAACQ,YAAY,CAC1B,KAAM,IAAI,CAAAC,UAAU,CAAC,8BAA8B,EAG3D,MAAO,CAAAC,MAAMA,CAACC,CAAG,CAAE,KAAAC,CAAA,CAUkBC,IAAI,CAACC,KAAK,CAAAC,CAAA,CAAlCC,MAAM,CAACC,QAAQ,CATxB,GAAmB,QAAQ,EAAvB,MAAO,CAAAN,CAAgB,CAAE,CACzB,GAAY,CAAC,GAATA,CAAS,CACT,MAAO,CAAAX,IAAI,CAACkB,MAAM,EAAE,CACxB,GAAIlB,IAAI,CAACmB,eAAe,CAACR,CAAG,CAAC,OACf,EAAC,CAAPA,CAAO,CACAX,IAAI,CAACoB,UAAU,CAAC,CAACT,CAAG,GAAM,CAAC,CAE/BX,IAAI,CAACoB,UAAU,CAACT,CAAG,GAAO,CAAC,CAEtC,GAAI,CAACI,CAAA,CAAgBJ,CAAG,CAAC,EAAIC,CAAA,CAAWD,CAAG,CAAC,GAAKA,CAAG,CAChD,KAAM,IAAI,CAAAF,UAAU,CAAC,aAAa,CAAGE,CAAG,8DACC,CAAC,CAE9C,MAAO,CAAAX,IAAI,CAACqB,YAAY,CAACV,CAAG,EAE3B,GAAmB,QAAQ,EAAvB,MAAO,CAAAA,CAAgB,CAAE,CAC9B,KAAM,CAAAW,CAAM,CAAGtB,IAAI,CAACuB,YAAY,CAACZ,CAAG,CAAC,CACrC,GAAe,IAAI,GAAfW,CAAe,CACf,KAAM,IAAI,CAAAE,WAAW,CAAC,iBAAiB,CAAGb,CAAG,CAAG,cAAc,CAAC,CAEnE,MAAO,CAAAW,EAEN,GAAmB,SAAS,EAAxB,MAAO,CAAAX,CAAiB,OACzB,KAAAA,CAAY,CACLX,IAAI,CAACoB,UAAU,CAAC,CAAC,GAAO,CAAC,CAE7BpB,IAAI,CAACkB,MAAM,EAAE,CAEnB,GAAmB,QAAQ,EAAvB,MAAO,CAAAP,CAAgB,CAAE,CAC9B,GAAIA,CAAG,CAACT,WAAW,GAAKF,IAAI,CACxB,MAAO,CAAAW,CAAG,CACd,KAAM,CAAAc,CAAS,CAAGzB,IAAI,CAAC0B,aAAa,CAACf,CAAG,CAAC,CACzC,MAAO,CAAAX,IAAI,CAACU,MAAM,CAACe,CAAS,EAEhC,KAAM,IAAI,CAAAE,SAAS,CAAC,iBAAiB,CAAGhB,CAAG,CAAG,cAAc,EAEhEiB,aAAaA,CAAA,CAAG,CACZ,KAAM,CAAAN,CAAM,CAAG,CAAC,SAAS,CAAC,CAC1B,IAAK,KAAM,CAAAO,CAAK,GAAI,KAAI,CACpBP,CAAM,CAACQ,IAAI,CAAC,CAACD,CAAK,CAAG,CAACA,CAAK,GAAK,CAAC,EAAEE,QAAQ,CAAC,EAAE,CAAC,CAAGF,CAAK,EAAI,IAAI,CAAC,CAGpE,MADA,CAAAP,CAAM,CAACQ,IAAI,CAAC,GAAG,CAAC,CACTR,CAAM,CAACU,IAAI,CAAC,EAAE,EAEzBD,QAAQA,CAACE,CAAK,CAAG,EAAE,CAAE,CACjB,GAAY,CAAC,CAATA,CAAS,EAAY,EAAE,CAAVA,CAAU,CACvB,KAAM,IAAI,CAAAxB,UAAU,CAAC,oDAAoD,CAAC,CAC7E,MACmB,EAAC,GAAjB,IAAI,CAACN,MAAY,CACV,GAAG,CACgB,CAAC,GAA1B8B,CAAK,CAAIA,CAAK,CAAG,CAAE,CAAO,CACpBjC,IAAI,CAACkC,wBAAwB,CAAC,IAAI,CAAED,CAAK,CAAC,CAE9CjC,IAAI,CAACmC,iBAAiB,CAAC,IAAI,CAAEF,CAAK,GAAO,EAEpDG,OAAOA,CAAA,CAAG,CACN,KAAM,IAAI,CAAAC,KAAK,CAAC,4DAA4D,EAIhF,MAAO,CAAAC,QAAQA,CAACC,CAAC,CAAE,CACf,KAAM,CAAAC,CAAO,CAAGD,CAAC,CAACpC,MAAM,CACxB,GAAgB,CAAC,GAAbqC,CAAa,CACb,MAAO,EAAC,CACZ,GAAgB,CAAC,GAAbA,CAAa,CAAE,CACf,KAAM,CAAAC,CAAK,CAAGF,CAAC,CAACG,eAAe,CAAC,CAAC,CAAC,CAClC,MAAO,CAAAH,CAAC,CAACnC,IAAI,CAAG,CAACqC,CAAK,CAAGA,EAC5B,KACK,CAAAE,CAAI,CAAGJ,CAAC,CAACK,OAAO,CAACJ,CAAO,CAAG,CAAC,CAAC,CAC7BK,CAAe,CAAG7C,IAAI,CAAC8C,OAAO,CAACH,CAAI,CAAC,CACpCI,CAAU,CAAa,EAAE,CAAZP,CAAY,CAAGK,CAAe,CACjD,GAAiB,IAAI,CAAjBE,CAAiB,CACjB,MAAO,CAAAR,CAAC,CAACnC,IAAI,CAAG,CAAC4C,QAAQ,IAAW,CAAC,GACrC,CAAAC,CAAQ,CAAGF,CAAU,CAAG,CAAC,CACzBG,CAAY,CAAGP,CAAI,CACnBQ,CAAU,CAAGX,CAAO,CAAG,CAAC,CAC5B,KAAM,CAAAY,CAAK,CAAGP,CAAe,CAAG,CAAC,CACjC,GAAI,CAAAQ,CAAY,CAAc,EAAE,GAAZD,CAAY,CAAI,CAAC,CAAGF,CAAY,EAAIE,CAAK,CAC7DC,CAAY,IAAM,EAAE,CACpB,KAAM,CAAAC,CAAqB,CAAGF,CAAK,CAAG,EAAE,CAAC,GACrC,CAAAG,CAAW,CAAa,EAAE,EAAXH,CAAW,CAAI,CAAC,CAAIF,CAAY,EAAK,EAAE,CAAGE,CAAO,CAChEI,CAAoB,CAAG,EAAE,CAAGJ,CAAK,KACT,CAAC,CAAzBE,CAAyB,EAAiB,CAAC,CAAdH,CAAc,GAC3CA,CAAU,EAAE,CACZD,CAAY,CAAGX,CAAC,CAACK,OAAO,CAACO,CAAU,CAAC,CACpCE,CAAY,EAAKH,CAAY,GAAM,EAAE,CAAGI,CAAuB,CAC/DC,CAAW,CAAGL,CAAY,EAAII,CAAqB,CAAG,CAAC,CACvDE,CAAoB,CAAGF,CAAqB,CAAG,CAAC,EAEtB,CAAC,CAAxBE,CAAwB,EAAiB,CAAC,CAAdL,CAAc,EAC7CA,CAAU,EAAE,CACZD,CAAY,CAAGX,CAAC,CAACK,OAAO,CAACO,CAAU,CAAC,CAEhCI,CAAW,EADa,EAAE,EAA1BC,CAA0B,CACVN,CAAY,EAAKM,CAAoB,CAAG,EAAG,CAG3CN,CAAY,GAAM,EAAE,CAAGM,CAAqB,CAEhEA,CAAoB,EAAI,EAAE,CAE9B,KAAM,CAAAC,CAAQ,CAAGzD,IAAI,CAAC0D,gBAAgB,CAACnB,CAAC,CAAEiB,CAAoB,CAAEL,CAAU,CAAED,CAAY,CAAC,CACzF,IAAiB,CAAC,GAAdO,CAAc,EAAkB,CAAC,GAAdA,CAAc,EAA0B,CAAC,GAAR,CAAC,CAAfF,CAAe,CAAQ,IAC7DA,CAAW,CAAIA,CAAW,CAAG,CAAC,GAAM,CAAC,CACjB,CAAC,GAAjBA,CAAiB,GAEjBF,CAAY,EAAE,CACgB,CAAC,EAA1BA,CAAY,GAAK,EAAS,GAE3BA,CAAY,CAAG,CAAC,CAChBJ,CAAQ,EAAE,CACK,IAAI,CAAfA,CAAe,IAEf,MAAO,CAAAV,CAAC,CAACnC,IAAI,CAAG,CAAC4C,QAAQ,IAAW,CAKpD,KAAM,CAAAW,CAAO,CAAGpB,CAAC,CAACnC,IAAI,aAAe,CAAC,CAKtC,MAJA,CAAA6C,CAAQ,CAAIA,CAAQ,CAAG,IAAK,EAAK,EAAE,CACnCjD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC6D,uBAAuB,CAAC,CACnDF,CAAO,CAAGV,CAAQ,CAAGI,CAAY,CACrCrD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC8D,sBAAsB,CAAC,CAAGP,CAAW,CAC7DvD,IAAI,CAAC+D,sBAAsB,CAAC,CAAC,EAGxC,MAAO,CAAAC,UAAUA,CAACzB,CAAC,CAAE,CACjB,GAAiB,CAAC,GAAdA,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CACZ,KAAM,CAAAjB,CAAM,CAAGiB,CAAC,CAAC0B,MAAM,EAAE,CAEzB,MADA,CAAA3C,CAAM,CAAClB,IAAI,CAAG,CAACmC,CAAC,CAACnC,IAAI,CACdkB,EAEX,MAAO,CAAA4C,UAAUA,CAAC3B,CAAC,CAAE,OACb,CAAAA,CAAC,CAACnC,IAAI,CAECJ,IAAI,CAACmE,gBAAgB,CAAC5B,CAAC,CAAC,CAAC6B,MAAM,EAAE,CAGrCpE,IAAI,CAACqE,gBAAgB,CAAC9B,CAAC,GAAM,EAExC,MAAO,CAAA+B,YAAYA,CAAC/B,CAAC,CAAEgC,CAAC,CAAE,CACtB,GAAIA,CAAC,CAACnE,IAAI,CACN,KAAM,IAAI,CAAAK,UAAU,CAAC,2BAA2B,CAAC,CAErD,GAAiB,CAAC,GAAd8D,CAAC,CAACpE,MAAY,CACd,MAAO,CAAAH,IAAI,CAACoB,UAAU,CAAC,CAAC,GAAO,CAAC,CAEpC,GAAiB,CAAC,GAAdmB,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CACZ,GAAiB,CAAC,GAAdA,CAAC,CAACpC,MAAY,EAAqB,CAAC,GAAlBoC,CAAC,CAACK,OAAO,CAAC,CAAC,CAAO,OAEhC,CAAAL,CAAC,CAACnC,IAAI,EAA2B,CAAC,GAAR,CAAC,CAAhBmE,CAAC,CAAC3B,OAAO,CAAC,CAAC,CAAK,CAAO,CAC3B5C,IAAI,CAACgE,UAAU,CAACzB,CAAC,CAAC,CAGtBA,CAAC,CAIZ,GAAe,CAAC,CAAZgC,CAAC,CAACpE,MAAU,CACZ,KAAM,IAAI,CAAAM,UAAU,CAAC,gBAAgB,CAAC,CAC1C,GAAI,CAAA+D,CAAQ,CAAGD,CAAC,CAAC7B,eAAe,CAAC,CAAC,CAAC,CACnC,GAAiB,CAAC,GAAd8B,CAAc,CACd,MAAO,CAAAjC,CAAC,CACZ,GAAIiC,CAAQ,EAAIxE,IAAI,CAACyE,gBAAgB,CACjC,KAAM,IAAI,CAAAhE,UAAU,CAAC,gBAAgB,CAAC,CAE1C,GAAiB,CAAC,GAAd8B,CAAC,CAACpC,MAAY,EAAqB,CAAC,GAAlBoC,CAAC,CAACK,OAAO,CAAC,CAAC,CAAO,CAAE,MAEhC,CAAA8B,CAAY,CAAG,CAAC,EAAsB,CAAC,CAAlBF,CAAQ,CAAG,EAAO,CAAC,CACxCpE,CAAI,CAAGmC,CAAC,CAACnC,IAAI,EAAwB,CAAC,GAAR,CAAC,CAAZoE,CAAY,CAAQ,CACvClD,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC0E,CAAY,CAAEtE,CAAI,CAAC,CAC3CkB,CAAM,CAACqD,kBAAkB,EAAE,CAE3B,KAAM,CAAAC,CAAG,CAAG,CAAC,EAAKJ,CAAQ,CAAG,EAAG,CAEhC,MADA,CAAAlD,CAAM,CAACuD,UAAU,CAACH,CAAY,CAAG,CAAC,CAAEE,CAAG,CAAC,CACjCtD,EACV,GACG,CAAAA,CAAM,CAAG,IAAI,CACbwD,CAAa,CAAGvC,CAAC,CAKrB,IAHuB,CAAC,GAAR,CAAC,CAAZiC,CAAY,CAAO,GACpBlD,CAAM,CAAGiB,CAAC,EACdiC,CAAQ,GAAK,CAAC,CACM,CAAC,GAAdA,CAAc,CAAEA,CAAQ,GAAK,CAAC,CACjCM,CAAa,CAAG9E,IAAI,CAAC+E,QAAQ,CAACD,CAAa,CAAEA,CAAa,CAAC,CACpC,CAAC,GAAR,CAAC,CAAZN,CAAY,CAAO,GACL,IAAI,GAAflD,CAAe,CACfA,CAAM,CAAGwD,CAAa,CAGtBxD,CAAM,CAAGtB,IAAI,CAAC+E,QAAQ,CAACzD,CAAM,CAAEwD,CAAa,CAAC,EAKzD,MAAO,CAAAxD,EAEX,MAAO,CAAAyD,QAAQA,CAACxC,CAAC,CAAEgC,CAAC,CAAE,CAClB,GAAiB,CAAC,GAAdhC,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CACZ,GAAiB,CAAC,GAAdgC,CAAC,CAACpE,MAAY,CACd,MAAO,CAAAoE,CAAC,CACZ,GAAI,CAAAS,CAAY,CAAGzC,CAAC,CAACpC,MAAM,CAAGoE,CAAC,CAACpE,MAAM,CACH,EAAE,EAAjCoC,CAAC,CAAC0C,QAAQ,EAAE,CAAGV,CAAC,CAACU,QAAQ,EAAQ,EACjCD,CAAY,EAAE,CAElB,KAAM,CAAA1D,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,CAAEzC,CAAC,CAACnC,IAAI,GAAKmE,CAAC,CAACnE,IAAI,CAAC,CACxDkB,CAAM,CAACqD,kBAAkB,EAAE,CAC3B,IAAK,GAAI,CAAAO,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG3C,CAAC,CAACpC,MAAM,CAAE+E,CAAC,EAAE,CAC7BlF,IAAI,CAACmF,oBAAoB,CAACZ,CAAC,CAAEhC,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAE5D,CAAM,CAAE4D,CAAC,CAAC,CAEzD,MAAO,CAAA5D,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAgB,MAAMA,CAAC7C,CAAC,CAAEgC,CAAC,CAAE,CAChB,GAAiB,CAAC,GAAdA,CAAC,CAACpE,MAAY,CACd,KAAM,IAAI,CAAAM,UAAU,CAAC,kBAAkB,CAAC,CAC5C,GAAmC,CAAC,CAAhCT,IAAI,CAACqF,iBAAiB,CAAC9C,CAAC,CAAEgC,CAAC,CAAK,CAChC,MAAO,CAAAvE,IAAI,CAACkB,MAAM,EAAE,CAAC,KACnB,CAAAoE,CAAU,CAAG/C,CAAC,CAACnC,IAAI,GAAKmE,CAAC,CAACnE,IAAI,CAC9BmF,CAAO,CAAGhB,CAAC,CAAC7B,eAAe,CAAC,CAAC,CAAC,CACpC,GAAI,CAAA8C,CAAQ,CACZ,GAAiB,CAAC,GAAdjB,CAAC,CAACpE,MAAY,EAAe,KAAM,EAAjBoF,CAAiB,CAAE,CACrC,GAAgB,CAAC,GAAbA,CAAa,CACb,MAAO,CAAAD,CAAU,GAAK/C,CAAC,CAACnC,IAAI,CAAGmC,CAAC,CAAGvC,IAAI,CAACgE,UAAU,CAACzB,CAAC,CAAC,CAEzDiD,CAAQ,CAAGxF,IAAI,CAACyF,kBAAkB,CAAClD,CAAC,CAAEgD,CAAO,CAAE,IAAI,EACtD,IAEG,CAAAC,CAAQ,CAAGxF,IAAI,CAAC0F,kBAAkB,CAACnD,CAAC,CAAEgC,CAAC,MAAa,CAAC,CAGzD,MADA,CAAAiB,CAAQ,CAACpF,IAAI,CAAGkF,CAAU,CACnBE,CAAQ,CAACpB,MAAM,GAE1B,MAAO,CAAAuB,SAASA,CAACpD,CAAC,CAAEgC,CAAC,CAAE,CACnB,GAAiB,CAAC,GAAdA,CAAC,CAACpE,MAAY,CACd,KAAM,IAAI,CAAAM,UAAU,CAAC,kBAAkB,CAAC,CAC5C,GAAmC,CAAC,CAAhCT,IAAI,CAACqF,iBAAiB,CAAC9C,CAAC,CAAEgC,CAAC,CAAK,CAChC,MAAO,CAAAhC,CAAC,CACZ,KAAM,CAAAgD,CAAO,CAAGhB,CAAC,CAAC7B,eAAe,CAAC,CAAC,CAAC,CACpC,GAAiB,CAAC,GAAd6B,CAAC,CAACpE,MAAY,EAAe,KAAM,EAAjBoF,CAAiB,CAAE,CACrC,GAAgB,CAAC,GAAbA,CAAa,CACb,MAAO,CAAAvF,IAAI,CAACkB,MAAM,EAAE,CACxB,KAAM,CAAA0E,CAAc,CAAG5F,IAAI,CAAC6F,kBAAkB,CAACtD,CAAC,CAAEgD,CAAO,CAAC,CAAC,MACpC,EAAC,GAApBK,CAAoB,CACb5F,IAAI,CAACkB,MAAM,EAAE,CACjBlB,IAAI,CAACoB,UAAU,CAACwE,CAAc,CAAErD,CAAC,CAACnC,IAAI,EAEjD,KAAM,CAAAuF,CAAS,CAAG3F,IAAI,CAAC0F,kBAAkB,CAACnD,CAAC,CAAEgC,CAAC,MAAa,CAAC,CAE5D,MADA,CAAAoB,CAAS,CAACvF,IAAI,CAAGmC,CAAC,CAACnC,IAAI,CAChBuF,CAAS,CAACvB,MAAM,GAE3B,MAAO,CAAA0B,GAAGA,CAACvD,CAAC,CAAEgC,CAAC,CAAE,CACb,KAAM,CAAAnE,CAAI,CAAGmC,CAAC,CAACnC,IAAI,CAAC,MAChB,CAAAA,CAAI,GAAKmE,CAAC,CAACnE,IAAI,CAGRJ,IAAI,CAAC+F,aAAa,CAACxD,CAAC,CAAEgC,CAAC,CAAEnE,CAAI,CAAC,CAIL,CAAC,EAAjCJ,IAAI,CAACqF,iBAAiB,CAAC9C,CAAC,CAAEgC,CAAC,CAAM,CAC1BvE,IAAI,CAACgG,aAAa,CAACzD,CAAC,CAAEgC,CAAC,CAAEnE,CAAI,CAAC,CAElCJ,IAAI,CAACgG,aAAa,CAACzB,CAAC,CAAEhC,CAAC,CAAE,CAACnC,CAAI,EAEzC,MAAO,CAAA6F,QAAQA,CAAC1D,CAAC,CAAEgC,CAAC,CAAE,CAClB,KAAM,CAAAnE,CAAI,CAAGmC,CAAC,CAACnC,IAAI,CAAC,MAChB,CAAAA,CAAI,GAAKmE,CAAC,CAACnE,IAAI,CAOiB,CAAC,EAAjCJ,IAAI,CAACqF,iBAAiB,CAAC9C,CAAC,CAAEgC,CAAC,CAAM,CAC1BvE,IAAI,CAACgG,aAAa,CAACzD,CAAC,CAAEgC,CAAC,CAAEnE,CAAI,CAAC,CAElCJ,IAAI,CAACgG,aAAa,CAACzB,CAAC,CAAEhC,CAAC,CAAE,CAACnC,CAAI,CAAC,CAP3BJ,IAAI,CAAC+F,aAAa,CAACxD,CAAC,CAAEgC,CAAC,CAAEnE,CAAI,EAS5C,MAAO,CAAA8F,SAASA,CAAC3D,CAAC,CAAEgC,CAAC,CAAE,OACF,EAAC,GAAdA,CAAC,CAACpE,MAAY,EAAiB,CAAC,GAAdoC,CAAC,CAACpC,MAAY,CACzBoC,CAAC,CACRgC,CAAC,CAACnE,IAAI,CACCJ,IAAI,CAACmG,sBAAsB,CAAC5D,CAAC,CAAEgC,CAAC,CAAC,CACrCvE,IAAI,CAACoG,qBAAqB,CAAC7D,CAAC,CAAEgC,CAAC,EAE1C,MAAO,CAAA8B,gBAAgBA,CAAC9D,CAAC,CAAEgC,CAAC,CAAE,OACT,EAAC,GAAdA,CAAC,CAACpE,MAAY,EAAiB,CAAC,GAAdoC,CAAC,CAACpC,MAAY,CACzBoC,CAAC,CACRgC,CAAC,CAACnE,IAAI,CACCJ,IAAI,CAACoG,qBAAqB,CAAC7D,CAAC,CAAEgC,CAAC,CAAC,CACpCvE,IAAI,CAACmG,sBAAsB,CAAC5D,CAAC,CAAEgC,CAAC,EAE3C,MAAO,CAAA+B,kBAAkBA,CAAA,CAAG,CACxB,KAAM,IAAI,CAAA3E,SAAS,CAAC,sDAAsD,EAE9E,MAAO,CAAA4E,QAAQA,CAAChE,CAAC,CAAEgC,CAAC,CAAE,CAClB,MAAsC,EAAC,CAAhCvE,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,EAEtC,MAAO,CAAAkC,eAAeA,CAAClE,CAAC,CAAEgC,CAAC,CAAE,CACzB,MAAuC,EAAC,EAAjCvE,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,EAEtC,MAAO,CAAAmC,WAAWA,CAACnE,CAAC,CAAEgC,CAAC,CAAE,CACrB,MAAsC,EAAC,CAAhCvE,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,EAEtC,MAAO,CAAAoC,kBAAkBA,CAACpE,CAAC,CAAEgC,CAAC,CAAE,CAC5B,MAAuC,EAAC,EAAjCvE,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,EAEtC,MAAO,CAAAqC,KAAKA,CAACrE,CAAC,CAAEgC,CAAC,CAAE,CACf,GAAIhC,CAAC,CAACnC,IAAI,GAAKmE,CAAC,CAACnE,IAAI,CACjB,SACJ,GAAImC,CAAC,CAACpC,MAAM,GAAKoE,CAAC,CAACpE,MAAM,CACrB,SACJ,IAAK,GAAI,CAAA+E,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG3C,CAAC,CAACpC,MAAM,CAAE+E,CAAC,EAAE,CAC7B,GAAI3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,GAAKX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAC7B,SAER,SAEJ,MAAO,CAAA2B,QAAQA,CAACtE,CAAC,CAAEgC,CAAC,CAAE,CAClB,MAAO,CAACvE,IAAI,CAAC4G,KAAK,CAACrE,CAAC,CAAEgC,CAAC,EAE3B,MAAO,CAAAuC,UAAUA,CAACvE,CAAC,CAAEgC,CAAC,CAAE,KAAAxD,CAAA,CAKKF,IAAI,CAACkG,GAAG,CAJjC,GAAI,CAACxE,CAAC,CAACnC,IAAI,EAAI,CAACmE,CAAC,CAACnE,IAAI,CAClB,MAAO,CAAAJ,IAAI,CAACgH,aAAa,CAACzE,CAAC,CAAEgC,CAAC,CAAC,CAACH,MAAM,EAAE,CAEvC,GAAI7B,CAAC,CAACnC,IAAI,EAAImE,CAAC,CAACnE,IAAI,CAAE,CACvB,KAAM,CAAA4E,CAAY,CAAGjE,CAAA,CAASwB,CAAC,CAACpC,MAAM,CAAEoE,CAAC,CAACpE,MAAM,CAAC,CAAG,CAAC,CAGrD,GAAI,CAAAmB,CAAM,CAAGtB,IAAI,CAACmE,gBAAgB,CAAC5B,CAAC,CAAEyC,CAAY,CAAC,CACnD,KAAM,CAAAiC,CAAE,CAAGjH,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAC,CAEnC,MADA,CAAAjD,CAAM,CAAGtB,IAAI,CAACkH,YAAY,CAAC5F,CAAM,CAAE2F,CAAE,CAAE3F,CAAM,CAAC,CACvCtB,IAAI,CAACqE,gBAAgB,CAAC/C,CAAM,IAAQA,CAAM,CAAC,CAAC8C,MAAM,GAO7D,MAJI,CAAA7B,CAAC,CAACnC,IAAI,GACN,CAACmC,CAAC,CAAEgC,CAAC,CAAC,CAAG,CAACA,CAAC,CAAEhC,CAAC,CAAC,EAGZvC,IAAI,CAACmH,gBAAgB,CAAC5E,CAAC,CAAEvC,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAC,CAAC,CAACH,MAAM,GAEpE,MAAO,CAAAgD,UAAUA,CAAC7E,CAAC,CAAEgC,CAAC,CAAE,KAAAxD,CAAA,CAMKF,IAAI,CAACkG,GAAG,CALjC,GAAI,CAACxE,CAAC,CAACnC,IAAI,EAAI,CAACmE,CAAC,CAACnE,IAAI,CAClB,MAAO,CAAAJ,IAAI,CAACqH,aAAa,CAAC9E,CAAC,CAAEgC,CAAC,CAAC,CAACH,MAAM,EAAE,CAEvC,GAAI7B,CAAC,CAACnC,IAAI,EAAImE,CAAC,CAACnE,IAAI,CAAE,MAEjB,CAAA4E,CAAY,CAAGjE,CAAA,CAASwB,CAAC,CAACpC,MAAM,CAAEoE,CAAC,CAACpE,MAAM,CAAC,CAC3CmB,CAAM,CAAGtB,IAAI,CAACmE,gBAAgB,CAAC5B,CAAC,CAAEyC,CAAY,CAAC,CAC/CiC,CAAE,CAAGjH,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAC,CACnC,MAAO,CAAAvE,IAAI,CAACqH,aAAa,CAAC/F,CAAM,CAAE2F,CAAE,CAAE3F,CAAM,CAAC,CAAC8C,MAAM,GAExD,KAAM,CAAAY,CAAY,CAAGjE,CAAA,CAASwB,CAAC,CAACpC,MAAM,CAAEoE,CAAC,CAACpE,MAAM,CAAC,CAAG,CAAC,CAEjDoC,CAAC,CAACnC,IAAI,GACN,CAACmC,CAAC,CAAEgC,CAAC,CAAC,CAAG,CAACA,CAAC,CAAEhC,CAAC,CAAC,EAGnB,GAAI,CAAAjB,CAAM,CAAGtB,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAES,CAAY,CAAC,CAEnD,MADA,CAAA1D,CAAM,CAAGtB,IAAI,CAACqH,aAAa,CAAC/F,CAAM,CAAEiB,CAAC,CAAEjB,CAAM,CAAC,CACvCtB,IAAI,CAACqE,gBAAgB,CAAC/C,CAAM,IAAQA,CAAM,CAAC,CAAC8C,MAAM,GAE7D,MAAO,CAAAkD,SAASA,CAAC/E,CAAC,CAAEgC,CAAC,CAAE,KAAAxD,CAAA,CACEF,IAAI,CAACkG,GAAG,CAA7B,KAAM,CAAA/B,CAAY,CAAGjE,CAAA,CAASwB,CAAC,CAACpC,MAAM,CAAEoE,CAAC,CAACpE,MAAM,CAAC,CACjD,GAAI,CAACoC,CAAC,CAACnC,IAAI,EAAI,CAACmE,CAAC,CAACnE,IAAI,CAClB,MAAO,CAAAJ,IAAI,CAACkH,YAAY,CAAC3E,CAAC,CAAEgC,CAAC,CAAC,CAACH,MAAM,EAAE,CAEtC,GAAI7B,CAAC,CAACnC,IAAI,EAAImE,CAAC,CAACnE,IAAI,CAAE,CAGvB,GAAI,CAAAkB,CAAM,CAAGtB,IAAI,CAACmE,gBAAgB,CAAC5B,CAAC,CAAEyC,CAAY,CAAC,CACnD,KAAM,CAAAiC,CAAE,CAAGjH,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAC,CAEnC,MADA,CAAAjD,CAAM,CAAGtB,IAAI,CAACgH,aAAa,CAAC1F,CAAM,CAAE2F,CAAE,CAAE3F,CAAM,CAAC,CACxCtB,IAAI,CAACqE,gBAAgB,CAAC/C,CAAM,IAAQA,CAAM,CAAC,CAAC8C,MAAM,GAGzD7B,CAAC,CAACnC,IAAI,GACN,CAACmC,CAAC,CAAEgC,CAAC,CAAC,CAAG,CAACA,CAAC,CAAEhC,CAAC,CAAC,EAGnB,GAAI,CAAAjB,CAAM,CAAGtB,IAAI,CAACmE,gBAAgB,CAACI,CAAC,CAAES,CAAY,CAAC,CAEnD,MADA,CAAA1D,CAAM,CAAGtB,IAAI,CAACmH,gBAAgB,CAAC7F,CAAM,CAAEiB,CAAC,CAAEjB,CAAM,CAAC,CAC1CtB,IAAI,CAACqE,gBAAgB,CAAC/C,CAAM,IAAQA,CAAM,CAAC,CAAC8C,MAAM,GAE7D,MAAO,CAAAmD,MAAMA,CAACC,CAAC,CAAEjF,CAAC,CAAE,KAAA2C,CAAA,CAGZrE,IAAI,CAACC,KAAK,CAFd,GAAiB,CAAC,GAAdyB,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CAEZ,GADAiF,CAAC,CAAGtC,CAAA,CAAWsC,CAAC,CAAC,CACT,CAAC,CAALA,CAAK,CACL,KAAM,IAAI,CAAA/G,UAAU,CAAC,oDAAoD,CAAC,CAE9E,GAAU,CAAC,GAAP+G,CAAO,CACP,MAAO,CAAAxH,IAAI,CAACkB,MAAM,EAAE,CAExB,GAAIsG,CAAC,EAAIxH,IAAI,CAACyE,gBAAgB,CAC1B,MAAO,CAAAlC,CAAC,CACZ,KAAM,CAAAkF,CAAY,CAAqB,CAAC,CAAlB,CAACD,CAAC,CAAG,EAAE,EAAI,EAAO,CACxC,GAAIjF,CAAC,CAACpC,MAAM,CAAGsH,CAAY,CACvB,MAAO,CAAAlF,CAAC,CAAC,KACP,CAAAmF,CAAQ,CAAGnF,CAAC,CAACG,eAAe,CAAC+E,CAAY,CAAG,CAAC,CAAC,CAC9CE,CAAY,CAAG,CAAC,EAAK,CAACH,CAAC,CAAG,CAAC,EAAI,EAAG,CACxC,GAAIjF,CAAC,CAACpC,MAAM,GAAKsH,CAAY,EAAIC,CAAQ,CAAGC,CAAY,CACpD,MAAO,CAAApF,CAAC,CAGZ,GAAI,EADW,CAACmF,CAAQ,CAAGC,CAAY,IAAMA,CAAY,CAC9C,CACP,MAAO,CAAA3H,IAAI,CAAC4H,iBAAiB,CAACJ,CAAC,CAAEjF,CAAC,CAAC,CACvC,GAAI,CAACA,CAAC,CAACnC,IAAI,CACP,MAAO,CAAAJ,IAAI,CAAC6H,8BAA8B,CAACL,CAAC,CAAEjF,CAAC,GAAM,CAAC,CAC1D,GAAwC,CAAC,GAApCmF,CAAQ,CAAIC,CAAY,CAAG,CAAE,CAAO,CAAE,CACvC,IAAK,GAAI,CAAAzC,CAAC,CAAGuC,CAAY,CAAG,CAAC,CAAO,CAAC,EAANvC,CAAM,CAAEA,CAAC,EAAE,CACtC,GAAqB,CAAC,GAAlB3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAO,CAClB,MAAO,CAAAlF,IAAI,CAAC6H,8BAA8B,CAACL,CAAC,CAAEjF,CAAC,GAAO,CAAC,CAE9D,MACG,CAAAA,CAAC,CAACpC,MAAM,GAAKsH,CAAY,EAAIC,CAAQ,GAAKC,CAAY,CAC/CpF,CAAC,CACLvC,IAAI,CAAC4H,iBAAiB,CAACJ,CAAC,CAAEjF,CAAC,EAEtC,MAAO,CAAAvC,IAAI,CAAC6H,8BAA8B,CAACL,CAAC,CAAEjF,CAAC,GAAO,EAE1D,MAAO,CAAAuF,OAAOA,CAACN,CAAC,CAAEjF,CAAC,CAAE,KAAAxB,CAAA,CAGbF,IAAI,CAACC,KAAK,CAFd,GAAiB,CAAC,GAAdyB,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CAEZ,GADAiF,CAAC,CAAGzG,CAAA,CAAWyG,CAAC,CAAC,CACT,CAAC,CAALA,CAAK,CACL,KAAM,IAAI,CAAA/G,UAAU,CAAC,oDAAoD,CAAC,CAE9E,GAAU,CAAC,GAAP+G,CAAO,CACP,MAAO,CAAAxH,IAAI,CAACkB,MAAM,EAAE,CAExB,GAAIqB,CAAC,CAACnC,IAAI,CAAE,CACR,GAAIoH,CAAC,CAAGxH,IAAI,CAACyE,gBAAgB,CACzB,KAAM,IAAI,CAAAhE,UAAU,CAAC,gBAAgB,CAAC,CAE1C,MAAO,CAAAT,IAAI,CAAC6H,8BAA8B,CAACL,CAAC,CAAEjF,CAAC,GAAO,EAG1D,GAAIiF,CAAC,EAAIxH,IAAI,CAACyE,gBAAgB,CAC1B,MAAO,CAAAlC,CAAC,CACZ,KAAM,CAAAkF,CAAY,CAAqB,CAAC,CAAlB,CAACD,CAAC,CAAG,EAAE,EAAI,EAAO,CACxC,GAAIjF,CAAC,CAACpC,MAAM,CAAGsH,CAAY,CACvB,MAAO,CAAAlF,CAAC,CACZ,KAAM,CAAAwF,CAAc,CAAGP,CAAC,CAAG,EAAE,CAC7B,GAAIjF,CAAC,CAACpC,MAAM,EAAIsH,CAAY,CAAE,CAC1B,GAAuB,CAAC,GAApBM,CAAoB,CACpB,MAAO,CAAAxF,CAAC,CACZ,KAAM,CAAAmF,CAAQ,CAAGnF,CAAC,CAACK,OAAO,CAAC6E,CAAY,CAAG,CAAC,CAAC,CAC5C,GAAsC,CAAC,EAAlCC,CAAQ,GAAKK,CAAqB,CACnC,MAAO,CAAAxF,EAGf,MAAO,CAAAvC,IAAI,CAAC4H,iBAAiB,CAACJ,CAAC,CAAEjF,CAAC,EAGtC,MAAO,CAAAyF,GAAGA,CAACzF,CAAC,CAAEgC,CAAC,CAAE,CAGb,GAFAhC,CAAC,CAAGvC,IAAI,CAAC0B,aAAa,CAACa,CAAC,CAAC,CACzBgC,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,CAAC,CACR,QAAQ,EAArB,MAAO,CAAAhC,CAAc,CAGrB,MAFiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,GACrBA,CAAC,CAAGA,CAAC,CAACxC,QAAQ,EAAE,EACbQ,CAAC,CAAGgC,CAAC,CAEhB,GAAiB,QAAQ,EAArB,MAAO,CAAAA,CAAc,CACrB,MAAO,CAAAhC,CAAC,CAACR,QAAQ,EAAE,CAAGwC,CAAC,CAI3B,GAFAhC,CAAC,CAAGvC,IAAI,CAACiI,WAAW,CAAC1F,CAAC,CAAC,CACvBgC,CAAC,CAAGvE,IAAI,CAACiI,WAAW,CAAC1D,CAAC,CAAC,CACnBvE,IAAI,CAACkI,UAAU,CAAC3F,CAAC,CAAC,EAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CACxC,MAAO,CAAAvE,IAAI,CAAC8F,GAAG,CAACvD,CAAC,CAAEgC,CAAC,CAAC,CAEzB,GAAiB,QAAQ,EAArB,MAAO,CAAAhC,CAAc,EAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,CAC9C,MAAO,CAAAhC,CAAC,CAAGgC,CAAC,CAEhB,KAAM,IAAI,CAAA5C,SAAS,CAAC,6DAA6D,EAErF,MAAO,CAAAwG,EAAEA,CAAC5F,CAAC,CAAEgC,CAAC,CAAE,CACZ,MAAO,CAAAvE,IAAI,CAACoI,SAAS,CAAC7F,CAAC,CAAEgC,CAAC,CAAE,CAAC,EAEjC,MAAO,CAAA8D,EAAEA,CAAC9F,CAAC,CAAEgC,CAAC,CAAE,CACZ,MAAO,CAAAvE,IAAI,CAACoI,SAAS,CAAC7F,CAAC,CAAEgC,CAAC,CAAE,CAAC,EAEjC,MAAO,CAAA+D,EAAEA,CAAC/F,CAAC,CAAEgC,CAAC,CAAE,CACZ,MAAO,CAAAvE,IAAI,CAACoI,SAAS,CAAC7F,CAAC,CAAEgC,CAAC,CAAE,CAAC,EAEjC,MAAO,CAAAgE,EAAEA,CAAChG,CAAC,CAAEgC,CAAC,CAAE,CACZ,MAAO,CAAAvE,IAAI,CAACoI,SAAS,CAAC7F,CAAC,CAAEgC,CAAC,CAAE,CAAC,EAEjC,MAAO,CAAAiE,EAAEA,CAACjG,CAAC,CAAEgC,CAAC,CAAE,SAER,GAAIvE,IAAI,CAACkI,UAAU,CAAC3F,CAAC,CAAC,OACd,CAAAvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CACXvE,IAAI,CAAC4G,KAAK,CAACrE,CAAC,CAAEgC,CAAC,CAAC,CACpBvE,IAAI,CAACwI,EAAE,CAACjE,CAAC,CAAEhC,CAAC,CAAC,CAEnB,GAAiB,QAAQ,EAArB,MAAO,CAAAA,CAAc,CAAE,CAC5B,GAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CAClB,MAAO,CAAAvE,IAAI,CAACyI,eAAe,CAAClE,CAAC,CAAEhC,CAAC,CAAC,CACrC,GAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,CACrB,MAAO,CAAAhC,CAAC,EAAIgC,CAAC,CACjBA,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,EAC3B,IACI,IAAiB,QAAQ,EAArB,MAAO,CAAAhC,CAAc,CAAE,CAC5B,GAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,OAClB,CAAAhC,CAAC,CAAGvC,IAAI,CAACuB,YAAY,CAACgB,CAAC,CAAC,CACd,IAAI,GAAVA,CAAU,EAEPvC,IAAI,CAAC4G,KAAK,CAACrE,CAAC,CAAEgC,CAAC,CAAC,CAE3B,GAAiB,QAAQ,EAArB,MAAO,CAAAA,CAAc,CACrB,MAAO,CAAAhC,CAAC,EAAIgC,CAAC,CACjBA,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,EAC3B,IACI,IAAiB,SAAS,EAAtB,MAAO,CAAAhC,CAAe,CAAE,CAC7B,GAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CAClB,MAAO,CAAAvE,IAAI,CAACyI,eAAe,CAAClE,CAAC,CAAE,CAAChC,CAAC,CAAC,CACtC,GAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,CACrB,MAAO,CAAAhC,CAAC,EAAIgC,CAAC,CACjBA,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,EAC3B,IACI,IAAiB,QAAQ,EAArB,MAAO,CAAAhC,CAAc,CAAE,CAC5B,GAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CAClB,SACJ,GAAiB,QAAQ,EAArB,MAAO,CAAAA,CAAc,CACrB,MAAO,CAAAhC,CAAC,EAAIgC,CAAC,CACjBA,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,EAC3B,IACI,IAAiB,QAAQ,EAArB,MAAO,CAAAhC,CAAc,CAAE,CAC5B,GAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,EAAIA,CAAC,CAACrE,WAAW,GAAKF,IAAI,CAC/C,MAAO,CAAAuC,CAAC,EAAIgC,CAAC,CACjBhC,CAAC,CAAGvC,IAAI,CAAC0B,aAAa,CAACa,CAAC,EAC3B,IAEG,OAAO,CAAAA,CAAC,EAAIgC,CACf,EAGT,MAAO,CAAAmE,EAAEA,CAACnG,CAAC,CAAEgC,CAAC,CAAE,CACZ,MAAO,CAACvE,IAAI,CAACwI,EAAE,CAACjG,CAAC,CAAEgC,CAAC,EAGxB,MAAO,CAAAoE,mBAAmBA,CAACC,CAAQ,CAAEC,CAAU,CAAEC,CAAY,GAAQ,CAAE,CACnE,MAAO,CAAA9I,IAAI,CAACuH,MAAM,CAAC,EAAE,CAAEvH,IAAI,CAAC+I,oBAAoB,CAACH,CAAQ,CAAEC,CAAU,CAAEC,CAAY,CAAC,EAExF,MAAO,CAAAC,oBAAoBA,CAACH,CAAQ,CAAEC,CAAU,CAAEC,CAAY,GAAQ,CAAE,MAC9D,CAACE,CAAC,CAAEC,CAAC,CAAC,CAAGH,CAAY,CAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CACvCI,CAAI,CAAGN,CAAQ,CAACO,SAAS,CAACN,CAAU,CAAGG,CAAC,CAAEF,CAAY,CAAC,CACvDM,CAAG,CAAGR,CAAQ,CAACO,SAAS,CAACN,CAAU,CAAGI,CAAC,CAAEH,CAAY,CAAC,CACtDxH,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC,CAAC,GAAO,CAAC,CAIjC,MAHA,CAAAsB,CAAM,CAACuD,UAAU,CAAC,CAAC,CAAQ,UAAU,CAAhBuE,CAAgB,CAAC,CACtC9H,CAAM,CAACuD,UAAU,CAAC,CAAC,CAAG,CAAQ,SAAS,CAAhBqE,CAAgB,GAAK,CAAC,CAAKE,CAAG,GAAK,EAAG,CAAC,CAC9D9H,CAAM,CAACuD,UAAU,CAAC,CAAC,CAAEqE,CAAI,GAAK,EAAE,CAAC,CAC1B5H,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAiF,mBAAmBA,CAACT,CAAQ,CAAEC,CAAU,CAAEpG,CAAK,CAAEqG,CAAY,GAAQ,CAAE,CAC1E9I,IAAI,CAACsJ,oBAAoB,CAACV,CAAQ,CAAEC,CAAU,CAAEpG,CAAK,CAAEqG,CAAY,EAEvE,MAAO,CAAAQ,oBAAoBA,CAACV,CAAQ,CAAEC,CAAU,CAAEpG,CAAK,CAAEqG,CAAY,GAAQ,CAAE,CAC3ErG,CAAK,CAAGzC,IAAI,CAAC8H,OAAO,CAAC,EAAE,CAAErF,CAAK,CAAC,IAC3B,CAAAyG,CAAI,CAAG,CAAC,CACRE,CAAG,CAAG,CAAC,CACX,GAAmB,CAAC,CAAhB3G,CAAK,CAACtC,MAAU,GAChBiJ,CAAG,CAAG3G,CAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CACH,CAAC,CAAhBH,CAAK,CAACtC,MAAU,EAAE,CAClB,KAAM,CAAAoJ,CAAE,CAAG9G,CAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAC3BwG,CAAG,EAASG,CAAE,EAAI,EAAE,CACpBL,CAAI,CAAGK,CAAE,GAAK,CAAC,CACI,CAAC,CAAhB9G,CAAK,CAACtC,MAAU,GAChB+I,CAAI,EAAWzG,CAAK,CAACG,OAAO,CAAC,CAAC,CAAC,EAAI,EAAE,EAIjD,KAAM,CAACoG,CAAC,CAAEC,CAAC,CAAC,CAAGH,CAAY,CAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAC7CF,CAAQ,CAACY,SAAS,CAACX,CAAU,CAAGG,CAAC,CAAEE,CAAI,CAAEJ,CAAY,CAAC,CACtDF,CAAQ,CAACY,SAAS,CAACX,CAAU,CAAGI,CAAC,CAAEG,CAAG,CAAEN,CAAY,EAGxD,MAAO,CAAA5H,MAAMA,CAAA,CAAG,CACZ,MAAO,IAAI,CAAAlB,IAAI,CAAC,CAAC,GAAO,EAE5B,MAAO,CAAAoB,UAAUA,CAACqB,CAAK,CAAErC,CAAI,CAAE,CAC3B,KAAM,CAAAkB,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC,CAAC,CAAEI,CAAI,CAAC,CAEhC,MADA,CAAAkB,CAAM,CAACuD,UAAU,CAAC,CAAC,CAAEpC,CAAK,CAAC,CACpBnB,EAEX2C,MAAMA,CAAA,CAAG,CACL,KAAM,CAAA3C,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC,IAAI,CAACG,MAAM,CAAE,IAAI,CAACC,IAAI,CAAC,CAC/C,IAAK,GAAI,CAAA8E,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG,IAAI,CAAC/E,MAAM,CAAE+E,CAAC,EAAE,CAChC5D,CAAM,CAAC4D,CAAC,CAAC,CAAG,IAAI,CAACA,CAAC,CAAC,CAEvB,MAAO,CAAA5D,EAEX8C,MAAMA,CAAA,CAAG,IACD,CAAAqF,CAAS,CAAG,IAAI,CAACtJ,MAAM,CACvBuJ,CAAI,CAAG,IAAI,CAACD,CAAS,CAAG,CAAC,CAAC,MACd,CAAC,GAAVC,CAAU,EACbD,CAAS,EAAE,CACXC,CAAI,CAAG,IAAI,CAACD,CAAS,CAAG,CAAC,CAAC,CAC1B,IAAI,CAACE,GAAG,EAAE,CAId,MAFkB,EAAC,GAAfF,CAAe,GACf,IAAI,CAACrJ,IAAI,GAAQ,EACd,KAEXuE,kBAAkBA,CAAA,CAAG,CACjB,IAAK,GAAI,CAAAO,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG,IAAI,CAAC/E,MAAM,CAAE+E,CAAC,EAAE,CAChC,IAAI,CAACA,CAAC,CAAC,CAAG,EAGlB,MAAO,CAAAxB,gBAAgBA,CAACnB,CAAC,CAAEqH,CAAiB,CAAEzG,CAAU,CAAED,CAAY,CAAE,CACpE,GAAwB,CAAC,CAArB0G,CAAqB,CACrB,MAAO,CAAC,CAAC,CACb,GAAI,CAAAC,CAAgB,CACpB,GAAwB,CAAC,CAArBD,CAAqB,CACrBC,CAAgB,CAAG,CAACD,CAAiB,CAAG,CAAC,KAExC,CAED,GAAmB,CAAC,GAAhBzG,CAAgB,CAChB,MAAO,CAAC,CAAC,CACbA,CAAU,EAAE,CACZD,CAAY,CAAGX,CAAC,CAACK,OAAO,CAACO,CAAU,CAAC,CACpC0G,CAAgB,CAAG,GAGvB,GAAI,CAAAC,CAAI,CAAG,CAAC,EAAID,CAAgB,CAChC,GAA8B,CAAC,GAA1B3G,CAAY,CAAG4G,CAAI,CAAO,CAC3B,MAAO,CAAC,CAAC,CAGb,GADAA,CAAI,EAAI,CAAC,CACqB,CAAC,GAA1B5G,CAAY,CAAG4G,CAAI,CAAO,CAC3B,MAAO,EAAC,CAAC,KACO,CAAC,CAAd3G,CAAc,EAEjB,GADAA,CAAU,EAAE,CACkB,CAAC,GAA3BZ,CAAC,CAACK,OAAO,CAACO,CAAU,CAAO,CAC3B,MAAO,EAAC,CAEhB,MAAO,GAEX,MAAO,CAAA9B,YAAYA,CAACoB,CAAK,CAAE,CAEvBzC,IAAI,CAAC+D,sBAAsB,CAAC,CAAC,CAAC,CAAGtB,CAAK,MAChC,CAAAsH,CAAW,CACb,IAAK,CADY/J,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC6D,uBAAuB,CAAC,GAAK,EACxE,CACHZ,CAAQ,CAAG8G,CAAW,CAAG,IAAK,CAC9BC,CAAM,CAAG,CAAmB,CAAC,CAAlB/G,CAAQ,CAAG,EAAO,EAAI,CAAC,CAClC3B,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgK,CAAM,CANT,CAAC,CAATvH,CAMuB,CAAC,IAEjC,CAAAY,CAAY,CAA8D,OAAO,CAAjErD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC6D,uBAAuB,CAAW,CADlE,OAEL,CACVN,CAAW,CAAGvD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC8D,sBAAsB,CAAC,MAClE,CAAAmG,CAAmB,CAAG,EAAE,CAExBC,CAAS,CAAGjH,CAAQ,CAAG,EAAE,IAK3B,CAAApB,CAAK,CAFLsI,CAAqB,CAAG,CAAC,CAI7B,GAAID,CAAS,GAAsB,CAAE,CACjC,KAAM,CAAA9G,CAAK,CAAG6G,CAAmB,CAAGC,CAAS,CAC7CC,CAAqB,CAAG/G,CAAK,CAAG,EAAE,CAClCvB,CAAK,CAAGwB,CAAY,GAAKD,CAAK,CAC9BC,CAAY,CAAIA,CAAY,EAAK,EAAE,CAAGD,CAAM,CAAKG,CAAW,GAAKH,CAAM,CACvEG,CAAW,GAAmB,EAAE,CAAGH,EACtC,IACI,IAAI8G,CAAS,KAAwB,CACtCC,CAAqB,CAAG,EAAE,CAC1BtI,CAAK,CAAGwB,CAAY,CACpBA,CAAY,CAAGE,CAAW,CAC1BA,CAAW,CAAG,CAAC,KAEd,CACD,KAAM,CAAAH,CAAK,CAAG8G,CAAS,CAAGD,CAAmB,CAC7CE,CAAqB,CAAG,EAAE,CAAG/G,CAAK,CAClCvB,CAAK,CAAIwB,CAAY,EAAID,CAAK,CAAKG,CAAW,GAAM,EAAE,CAAGH,CAAO,CAChEC,CAAY,CAAGE,CAAW,EAAIH,CAAK,CACnCG,CAAW,CAAG,EAElBjC,CAAM,CAACuD,UAAU,CAACmF,CAAM,CAAG,CAAC,CAAEnI,CAAK,CAAC,CAEpC,IAAK,GAAI,CAAAsB,CAAU,CAAG6G,CAAM,CAAG,CAAC,CAAgB,CAAC,EAAf7G,CAAe,CAAEA,CAAU,EAAE,CAC/B,CAAC,CAAzBgH,CAAyB,EACzBA,CAAqB,EAAI,EAAE,CAC3BtI,CAAK,CAAGwB,CAAY,GAAK,CAAC,CAC1BA,CAAY,CAAIA,CAAY,EAAI,EAAE,CAAKE,CAAW,GAAK,CAAE,CACzDA,CAAW,GAAmB,EAAE,EAGhC1B,CAAK,CAAG,CAAC,CAEbP,CAAM,CAACuD,UAAU,CAAC1B,CAAU,CAAEtB,CAAK,CAAC,CAExC,MAAO,CAAAP,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAgG,cAAcA,CAACC,CAAC,CAAE,UACZ,EAAI,EAATA,CAAS,EAAS,CAAI,EAATA,CAAS,IAEjB,GAAI,EAATA,CAAS,CACI,EAAI,EAAVA,CAAU,CACZ,MAAQ,EAAbA,CAAa,CACA,GAAI,EAAVA,CAAU,EAAU,IAAM,EAAZA,CAAY,CAE5B,MAAQ,EAAbA,CAAa,EACbA,CAAC,EAAI,MAAQ,CACD,EAAI,EAATA,CAAS,EAAU,EAAI,EAAVA,CAAU,EAAU,EAAI,EAAVA,CAAU,EAAU,EAAI,EAAVA,CAAU,EAChD,EAAI,EAAVA,CAAU,EAAU,IAAM,EAAZA,CAAY,EAErB,KAAM,EAAZA,CAAY,EAEvB,MAAO,CAAA9I,YAAYA,CAAC+I,CAAM,CAAErI,CAAK,CAAG,CAAC,CAAE,CACnC,GAAI,CAAA7B,CAAI,CAAG,CAAC,CAEZ,KAAM,CAAAD,CAAM,CAAGmK,CAAM,CAACnK,MAAM,CAC5B,GAAI,CAAAoK,CAAM,CAAG,CAAC,CACd,GAAIA,CAAM,GAAKpK,CAAM,CACjB,MAAO,CAAAH,IAAI,CAACkB,MAAM,EAAE,CACxB,GAAI,CAAAsJ,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CAAC,KAEjCvK,IAAI,CAACoK,cAAc,CAACI,CAAO,CAAC,EAAE,CACjC,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,CAAAH,IAAI,CAACkB,MAAM,EAAE,CACxBsJ,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,EAGtC,GAAgB,EAAI,GAAhBC,CAAgB,CAAE,CAClB,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CACnCnK,CAAI,CAAG,EACV,IACI,IAAgB,EAAI,GAAhBoK,CAAgB,CAAE,CACvB,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CACnCnK,CAAI,CAAG,CAAC,EAEZ,GAAc,CAAC,GAAX6B,CAAW,EAEX,GADAA,CAAK,CAAG,EAAE,CACM,EAAI,GAAhBuI,CAAgB,CAAE,CAClB,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,CAAAH,IAAI,CAACkB,MAAM,EAAE,CAExB,GADAsJ,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CACnB,EAAI,GAAhBC,CAAgB,EAAgB,GAAI,GAAhBA,CAAgB,CAAE,CAEtC,GADAvI,CAAK,CAAG,EAAE,CACN,EAAEsI,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,EACrC,IACI,IAAgB,EAAI,GAAhBC,CAAgB,EAAgB,GAAI,GAAhBA,CAAgB,CAAE,CAE3C,GADAvI,CAAK,CAAG,CAAC,CACL,EAAEsI,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,EACrC,IACI,IAAgB,EAAI,GAAhBC,CAAgB,EAAgB,EAAI,GAAhBA,CAAgB,CAAE,CAE3C,GADAvI,CAAK,CAAG,CAAC,CACL,EAAEsI,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,GAKzC,KAEA,IAAc,EAAE,GAAZtI,CAAY,EACD,EAAI,GAAhBuI,CAAgB,CAAE,CAElB,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,CAAAH,IAAI,CAACkB,MAAM,EAAE,CAExB,GADAsJ,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CACnB,EAAI,GAAhBC,CAAgB,EAAgB,GAAI,GAAhBA,CAAgB,CAAE,CACtC,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,KAAI,CACfqK,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,GAO9C,GAAa,CAAC,EAAVnK,CAAU,EAAc,EAAE,GAAZ6B,CAAY,CAC1B,MAAO,KAAI,CAAC,KAEG,EAAI,GAAhBuI,CAAgB,EAAE,CAErB,GAAI,EAAED,CAAM,GAAKpK,CAAM,CACnB,MAAO,CAAAH,IAAI,CAACkB,MAAM,EAAE,CACxBsJ,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,EAGtC,KAAM,CAAAG,CAAK,CAAGvK,CAAM,CAAGoK,CAAM,CAAC,GAC1B,CAAAI,CAAW,CAAG3K,IAAI,CAAC4K,iBAAiB,CAAC3I,CAAK,CAAC,CAC3C4I,CAAO,CAAG7K,IAAI,CAAC8K,6BAA6B,CAAG,CAAC,CACpD,GAAIJ,CAAK,CAAG,WAAYC,CAAW,CAC/B,MAAO,KAAI,CAAC,KACV,CAAAI,CAAO,CAAIJ,CAAW,CAAGD,CAAK,CAAGG,CAAO,GAAM7K,IAAI,CAACgL,wBAAwB,CAE3E1J,CAAM,CAAG,GAAI,CAAAtB,IAAI,CADsB,CAAC,CAAxB,CAAC+K,CAAO,CAAG,EAAE,EAAI,EAAO,GACH,CAAC,CAEtCE,CAAQ,CAAW,EAAE,CAAVhJ,CAAU,CAAGA,CAAK,CAAG,EAAE,CAClCiJ,CAAQ,CAAW,EAAE,CAAVjJ,CAAU,CAAGA,CAAK,CAAG,EAAE,CAAG,CAAC,CAC5C,GAA8B,CAAC,GAA1BA,CAAK,CAAIA,CAAK,CAAG,CAAE,CAAO,CAAE,CAE7B0I,CAAW,GAAK3K,IAAI,CAACgL,wBAAwB,MACvC,CAAAG,CAAK,CAAG,EAAE,CACVC,CAAS,CAAG,EAAE,CACpB,GAAI,CAAAC,CAAI,GAAQ,CAChB,EAAG,IACK,CAAAC,CAAI,CAAG,CAAC,CACRC,CAAI,CAAG,CAAC,QACC,CACT,GAAI,CAAAC,CAAC,CACL,GAAMhB,CAAO,CAAG,EAAE,GAAM,CAAC,CAAIS,CAAQ,CACjCO,CAAC,CAAGhB,CAAO,CAAG,EAAE,KAEf,IAAM,CAAW,EAAE,CAAZA,CAAY,EAAI,EAAE,GAAM,CAAC,CAAIU,CAAQ,CAC7CM,CAAC,CAAG,CAAW,EAAE,CAAZhB,CAAY,EAAI,EAAE,KAEtB,CACDa,CAAI,GAAO,CACX,MAIJ,GAFAE,CAAI,EAAIZ,CAAW,CACnBW,CAAI,CAAIA,CAAI,EAAIX,CAAW,CAAIa,CAAC,CAC5B,EAAEjB,CAAM,GAAKpK,CAAM,CAAE,CACrBkL,CAAI,GAAO,CACX,MAGJ,GADAb,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CACV,EAAE,CAAvBgB,CAAI,CAAGZ,CAAgB,CACvB,MAERQ,CAAK,CAACrJ,IAAI,CAACwJ,CAAI,CAAC,CAChBF,CAAS,CAACtJ,IAAI,CAACyJ,CAAI,EACtB,MAAQ,CAACF,CAAI,EACdrL,IAAI,CAACyL,eAAe,CAACnK,CAAM,CAAE6J,CAAK,CAAEC,CAAS,EAChD,IACI,CACD9J,CAAM,CAACqD,kBAAkB,EAAE,IACvB,CAAA0G,CAAI,GAAQ,CACZK,CAAU,CAAG,CAAC,CAClB,EAAG,IACK,CAAAJ,CAAI,CAAG,CAAC,CACRK,CAAU,CAAG,CAAC,QACL,CACT,GAAI,CAAAH,CAAC,CACL,GAAMhB,CAAO,CAAG,EAAE,GAAM,CAAC,CAAIS,CAAQ,CACjCO,CAAC,CAAGhB,CAAO,CAAG,EAAE,KAEf,IAAM,CAAW,EAAE,CAAZA,CAAY,EAAI,EAAE,GAAM,CAAC,CAAIU,CAAQ,CAC7CM,CAAC,CAAG,CAAW,EAAE,CAAZhB,CAAY,EAAI,EAAE,KAEtB,CACDa,CAAI,GAAO,CACX,MAEJ,KAAM,CAAAO,CAAC,CAAGD,CAAU,CAAG1J,CAAK,CAC5B,GAAQ,UAAU,CAAd2J,CAAc,CACd,MAIJ,GAHAD,CAAU,CAAGC,CAAC,CACdN,CAAI,CAAGA,CAAI,CAAGrJ,CAAK,CAAGuJ,CAAC,CACvBE,CAAU,EAAE,CACR,EAAEnB,CAAM,GAAKpK,CAAM,CAAE,CACrBkL,CAAI,GAAO,CACX,MAEJb,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,EAEtCM,CAAO,CAAwC,EAAE,CAAvC7K,IAAI,CAAC8K,6BAAkC,CAAG,CAAC,CACrD,KAAM,CAAAe,CAAW,CAC0B,CAAC,CADvB,CAAElB,CAAW,CAAGe,CAAU,CAAGb,CAAO,GACrD7K,IAAI,CAACgL,wBAAwB,EAAI,EAAO,CAC5C1J,CAAM,CAACwK,oBAAoB,CAACH,CAAU,CAAEL,CAAI,CAAEO,CAAW,EAC5D,MAAQ,CAACR,CAAI,EAElB,GAAId,CAAM,GAAKpK,CAAM,CAAE,CACnB,GAAI,CAACH,IAAI,CAACoK,cAAc,CAACI,CAAO,CAAC,CAC7B,MAAO,KAAI,CACf,IAAKD,CAAM,EAAE,CAAEA,CAAM,CAAGpK,CAAM,CAAEoK,CAAM,EAAE,CAEpC,GADAC,CAAO,CAAGF,CAAM,CAACG,UAAU,CAACF,CAAM,CAAC,CAC/B,CAACvK,IAAI,CAACoK,cAAc,CAACI,CAAO,CAAC,CAC7B,MAAO,MAKnB,MADA,CAAAlJ,CAAM,CAAClB,IAAI,CAAa,CAAC,CAAC,EAAXA,CAAY,CACpBkB,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAqH,eAAeA,CAACnK,CAAM,CAAE6J,CAAK,CAAEC,CAAS,CAAE,IACzC,CAAAjI,CAAU,CAAG,CAAC,CACdtB,CAAK,CAAG,CAAC,CACTkK,CAAW,CAAG,CAAC,CACnB,IAAK,GAAI,CAAA7G,CAAC,CAAGiG,CAAK,CAAChL,MAAM,CAAG,CAAC,CAAO,CAAC,EAAN+E,CAAM,CAAEA,CAAC,EAAE,CAAE,MAClC,CAAAoG,CAAI,CAAGH,CAAK,CAACjG,CAAC,CAAC,CACf8G,CAAQ,CAAGZ,CAAS,CAAClG,CAAC,CAAC,CAC7BrD,CAAK,EAAKyJ,CAAI,EAAIS,CAAY,CAC9BA,CAAW,EAAIC,CAAQ,CACH,EAAE,GAAlBD,CAAkB,EAClBzK,CAAM,CAACuD,UAAU,CAAC1B,CAAU,EAAE,CAAEtB,CAAK,CAAC,CACtCkK,CAAW,CAAG,CAAC,CACflK,CAAK,CAAG,CAAC,EAEU,EAAE,CAAhBkK,CAAgB,GACrBzK,CAAM,CAACuD,UAAU,CAAC1B,CAAU,EAAE,CAAU,UAAU,CAAlBtB,CAAkB,CAAC,CACnDkK,CAAW,EAAI,EAAE,CACjBlK,CAAK,CAAGyJ,CAAI,GAAMU,CAAQ,CAAGD,CAAY,EAGjD,GAAc,CAAC,GAAXlK,CAAW,CAAE,CACb,GAAIsB,CAAU,EAAI7B,CAAM,CAACnB,MAAM,CAC3B,KAAM,IAAI,CAAAkC,KAAK,CAAC,oBAAoB,CAAC,CACzCf,CAAM,CAACuD,UAAU,CAAC1B,CAAU,EAAE,CAAEtB,CAAK,EAEzC,KAAOsB,CAAU,CAAG7B,CAAM,CAACnB,MAAM,CAAEgD,CAAU,EAAE,CAC3C7B,CAAM,CAACuD,UAAU,CAAC1B,CAAU,CAAE,CAAC,EAGvC,MAAO,CAAAjB,wBAAwBA,CAACK,CAAC,CAAEN,CAAK,CAAE,CACtC,KAAM,CAAA9B,CAAM,CAAGoC,CAAC,CAACpC,MAAM,CACvB,GAAI,CAAAoL,CAAI,CAAGtJ,CAAK,CAAG,CAAC,CACpBsJ,CAAI,CAAG,CAAgB,EAAI,CAAlBA,CAAI,GAAK,CAAS,GAAY,EAAI,CAAXA,CAAW,CAAC,CAC5CA,CAAI,CAAG,CAAgB,EAAI,CAAlBA,CAAI,GAAK,CAAS,GAAY,EAAI,CAAXA,CAAW,CAAC,CAC5CA,CAAI,CAAG,CAAgB,EAAI,CAAlBA,CAAI,GAAK,CAAS,GAAY,EAAI,CAAXA,CAAW,CAAC,MACtC,CAAAZ,CAAW,CAAGY,CAAI,CAClBU,CAAQ,CAAGhK,CAAK,CAAG,CAAC,CACpB2C,CAAG,CAAGrC,CAAC,CAACK,OAAO,CAACzC,CAAM,CAAG,CAAC,CAAC,CAC3B0C,CAAe,CAAG7C,IAAI,CAAC8C,OAAO,CAAC8B,CAAG,CAAC,CAEzC,GAAI,CAAAsH,CAAa,CAAmD,CAAC,CAAhD,CADM,EAAE,CAAX/L,CAAW,CAAG0C,CAAe,CACb8H,CAAW,CAAG,CAAC,EAAIA,CAAgB,CAGrE,GAFIpI,CAAC,CAACnC,IAAI,EACN8L,CAAa,EAAE,CACf,UAAAA,CAAyB,CACzB,KAAM,IAAI,CAAA7J,KAAK,CAAC,iBAAiB,CAAC,CACtC,KAAM,CAAAf,CAAM,CAAOrB,KAAK,CAACiM,CAAa,CAAC,CAAC,GACpC,CAAAC,CAAG,CAAGD,CAAa,CAAG,CAAC,CACvBrK,CAAK,CAAG,CAAC,CACTuK,CAAa,CAAG,CAAC,CACrB,IAAK,GAAI,CAAAlH,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG/E,CAAM,CAAG,CAAC,CAAE+E,CAAC,EAAE,CAAE,MAC3B,CAAAmH,CAAQ,CAAG9J,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CACvBsF,CAAO,CAAG,CAAC3I,CAAK,CAAIwK,CAAQ,EAAID,CAAc,EAAIH,CAAQ,CAChE3K,CAAM,CAAC6K,CAAG,EAAE,CAAC,CAAGnM,IAAI,CAACsM,kBAAkB,CAAC9B,CAAO,CAAC,CAChD,KAAM,CAAA+B,CAAY,CAAG5B,CAAW,CAAGyB,CAAa,CAAC,IACjDvK,CAAK,CAAGwK,CAAQ,GAAKE,CAAY,CACjCH,CAAa,CAAG,EAAE,CAAGG,CAAY,CAC1BH,CAAa,EAAIzB,CAAW,EAC/BrJ,CAAM,CAAC6K,CAAG,EAAE,CAAC,CAAGnM,IAAI,CAACsM,kBAAkB,CAACzK,CAAK,CAAGoK,CAAQ,CAAC,CACzDpK,CAAK,IAAM8I,CAAW,CACtByB,CAAa,EAAIzB,EAGzB,KAAM,CAAAH,CAAO,CAAG,CAAC3I,CAAK,CAAI+C,CAAG,EAAIwH,CAAc,EAAIH,CAAQ,CAAC,IAC5D3K,CAAM,CAAC6K,CAAG,EAAE,CAAC,CAAGnM,IAAI,CAACsM,kBAAkB,CAAC9B,CAAO,CAAC,CAChD3I,CAAK,CAAG+C,CAAG,GAAM+F,CAAW,CAAGyB,CAAc,CAC5B,CAAC,GAAXvK,CAAW,EACdP,CAAM,CAAC6K,CAAG,EAAE,CAAC,CAAGnM,IAAI,CAACsM,kBAAkB,CAACzK,CAAK,CAAGoK,CAAQ,CAAC,CACzDpK,CAAK,IAAM8I,CAAW,CAI1B,GAFIpI,CAAC,CAACnC,IAAI,GACNkB,CAAM,CAAC6K,CAAG,EAAE,CAAC,CAAG,GAAG,EACX,CAAC,CAAC,EAAVA,CAAU,CACV,KAAM,IAAI,CAAA9J,KAAK,CAAC,oBAAoB,CAAC,CACzC,MAAO,CAAAf,CAAM,CAACU,IAAI,CAAC,EAAE,EAEzB,MAAO,CAAAG,iBAAiBA,CAACI,CAAC,CAAEN,CAAK,CAAEuK,CAAe,CAAE,CAChD,KAAM,CAAArM,CAAM,CAAGoC,CAAC,CAACpC,MAAM,CACvB,GAAe,CAAC,GAAZA,CAAY,CACZ,MAAO,EAAE,CACb,GAAe,CAAC,GAAZA,CAAY,CAAE,CACd,GAAI,CAAAmB,CAAM,CAAGiB,CAAC,CAACG,eAAe,CAAC,CAAC,CAAC,CAACX,QAAQ,CAACE,CAAK,CAAC,CAIjD,MAHI,KAAAuK,CAAyB,EAAIjK,CAAC,CAACnC,IAAI,GACnCkB,CAAM,CAAG,GAAG,CAAGA,CAAM,EAElBA,EACV,KACK,CAAAmL,CAAS,CAAY,EAAE,CAAXtM,CAAW,CAAGH,IAAI,CAAC8C,OAAO,CAACP,CAAC,CAACK,OAAO,CAACzC,CAAM,CAAG,CAAC,CAAC,CAAC,CAC7DuM,CAAc,CAAG1M,IAAI,CAAC4K,iBAAiB,CAAC3I,CAAK,CAAC,CAC9C0K,CAAc,CAAGD,CAAc,CAAG,CAAC,CACzC,GAAI,CAAAR,CAAa,CAAGO,CAAS,CAAGzM,IAAI,CAAC8K,6BAA6B,CAClEoB,CAAa,EAAIS,CAAc,CAAG,CAAC,CACnCT,CAAa,CAAsC,CAAC,CAAnCA,CAAa,CAAGS,CAAmB,MAC9C,CAAAC,CAAe,CAAIV,CAAa,CAAG,CAAC,EAAK,CAAC,CAG1CW,CAAS,CAAG7M,IAAI,CAACsE,YAAY,CAACtE,IAAI,CAACoB,UAAU,CAACa,CAAK,GAAO,CAAC,CAAEjC,IAAI,CAACoB,UAAU,CAACwL,CAAe,GAAO,CAAC,CAAC,IACvG,CAAApH,CAAQ,CACRsH,CAAU,CACd,KAAM,CAAAvH,CAAO,CAAGsH,CAAS,CAACnK,eAAe,CAAC,CAAC,CAAC,CAC5C,GAAyB,CAAC,GAAtBmK,CAAS,CAAC1M,MAAY,EAAe,KAAM,EAAjBoF,CAAiB,CAAE,CAC7CC,CAAQ,CAAG,GAAI,CAAAxF,IAAI,CAACuC,CAAC,CAACpC,MAAM,GAAO,CAAC,CACpCqF,CAAQ,CAACb,kBAAkB,EAAE,CAC7B,GAAI,CAAAgB,CAAS,CAAG,CAAC,CACjB,IAAK,GAAI,CAAAT,CAAC,CAAc,CAAC,CAAZ3C,CAAC,CAACpC,MAAU,CAAG,CAAC,CAAO,CAAC,EAAN+E,CAAM,CAAEA,CAAC,EAAE,CAAE,CACxC,KAAM,CAAA6H,CAAK,CAAIpH,CAAS,EAAI,EAAE,CAAIpD,CAAC,CAACyK,WAAW,CAAC9H,CAAC,CAAC,CAClDM,CAAQ,CAACyH,cAAc,CAAC/H,CAAC,CAAsB,CAAC,CAApB6H,CAAK,CAAGxH,CAAY,CAAC,CACjDI,CAAS,CAAuB,CAAC,CAApBoH,CAAK,CAAGxH,EAEzBuH,CAAU,CAAGnH,CAAS,CAAC5D,QAAQ,CAACE,CAAK,EACxC,IACI,CACD,KAAM,CAAAiL,CAAc,CAAGlN,IAAI,CAAC0F,kBAAkB,CAACnD,CAAC,CAAEsK,CAAS,MAAY,CAAC,CACxErH,CAAQ,CAAG0H,CAAc,CAAC1H,QAAQ,CAClC,KAAM,CAAAG,CAAS,CAAGuH,CAAc,CAACvH,SAAS,CAACvB,MAAM,EAAE,CACnD0I,CAAU,CAAG9M,IAAI,CAACmC,iBAAiB,CAACwD,CAAS,CAAE1D,CAAK,GAAM,EAE9DuD,CAAQ,CAACpB,MAAM,EAAE,CACjB,GAAI,CAAA+I,CAAS,CAAGnN,IAAI,CAACmC,iBAAiB,CAACqD,CAAQ,CAAEvD,CAAK,GAAM,CAAC,CAAC,KACvD6K,CAAU,CAAC3M,MAAM,CAAGyM,CAAe,EACtCE,CAAU,CAAG,GAAG,CAAGA,CAAU,CAKjC,MAHI,KAAAN,CAAyB,EAAIjK,CAAC,CAACnC,IAAI,GACnC+M,CAAS,CAAG,GAAG,CAAGA,CAAS,EAExBA,CAAS,CAAGL,EAEvB,MAAO,CAAAM,aAAaA,CAACC,CAAY,CAAE,CAC/B,MAAO,CAAAA,CAAY,CAAG,CAAC,CAAC,CAAG,EAE/B,MAAO,CAAAC,iBAAiBA,CAACC,CAAY,CAAE,CACnC,MAAO,CAAAA,CAAY,CAAG,CAAC,CAAC,CAAG,EAE/B,MAAO,CAAAC,cAAcA,CAACD,CAAY,CAAE,CAChC,MAAO,CAAAA,CAAY,CAAG,CAAC,CAAG,CAAC,EAE/B,MAAO,CAAA/G,iBAAiBA,CAACjE,CAAC,CAAEgC,CAAC,CAAE,CAC3B,KAAM,CAAAkJ,CAAK,CAAGlL,CAAC,CAACnC,IAAI,CACpB,GAAIqN,CAAK,GAAKlJ,CAAC,CAACnE,IAAI,CAChB,MAAO,CAAAJ,IAAI,CAACoN,aAAa,CAACK,CAAK,CAAC,CACpC,KAAM,CAAAnM,CAAM,CAAGtB,IAAI,CAACqF,iBAAiB,CAAC9C,CAAC,CAAEgC,CAAC,CAAC,CAAC,MAC/B,EAAC,CAAVjD,CAAU,CACHtB,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CAC3B,CAAC,CAAVnM,CAAU,CACHtB,IAAI,CAACwN,cAAc,CAACC,CAAK,CAAC,CAC9B,EAEX,MAAO,CAAAC,iBAAiBA,CAACnL,CAAC,CAAEgC,CAAC,CAAE,CAC3B,GAAIvE,IAAI,CAACmB,eAAe,CAACoD,CAAC,CAAC,CAAE,MACnB,CAAAkJ,CAAK,CAAGlL,CAAC,CAACnC,IAAI,CACduN,CAAK,CAAQ,CAAC,CAALpJ,CAAM,CACrB,GAAIkJ,CAAK,GAAKE,CAAK,CACf,MAAO,CAAA3N,IAAI,CAACoN,aAAa,CAACK,CAAK,CAAC,CACpC,GAAiB,CAAC,GAAdlL,CAAC,CAACpC,MAAY,CAAE,CAChB,GAAIwN,CAAK,CACL,KAAM,IAAI,CAAAtL,KAAK,CAAC,oBAAoB,CAAC,CACzC,MAAa,EAAC,GAAPkC,CAAO,CAAG,CAAC,CAAG,CAAC,EAG1B,GAAe,CAAC,CAAZhC,CAAC,CAACpC,MAAU,CACZ,MAAO,CAAAH,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CAAC,KACnC,CAAAG,CAAI,CAAG/M,IAAI,CAACgN,GAAG,CAACtJ,CAAC,CAAC,CAClBuJ,CAAM,CAAGvL,CAAC,CAACG,eAAe,CAAC,CAAC,CAAC,OAC/B,CAAAoL,CAAM,CAAGF,CAAI,CACN5N,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CACpCK,CAAM,CAAGF,CAAI,CACN5N,IAAI,CAACwN,cAAc,CAACC,CAAK,CAAC,CAC9B,EAEX,MAAO,CAAAzN,IAAI,CAAC+N,iBAAiB,CAACxL,CAAC,CAAEgC,CAAC,EAEtC,MAAO,CAAAwJ,iBAAiBA,CAACxL,CAAC,CAAEgC,CAAC,CAAE,CAC3B,GAAIA,CAAC,GAAKA,CAAC,CACP,MAAO,CAAAA,CAAC,CACZ,GAAIA,CAAC,MAAa,CACd,MAAO,CAAC,CAAC,CACb,GAAIA,CAAC,GAAK,CAACvB,QAAQ,CACf,MAAO,EAAC,CAAC,KACP,CAAAyK,CAAK,CAAGlL,CAAC,CAACnC,IAAI,CAEpB,GAAIqN,CAAK,GADU,CAAC,CAALlJ,CACI,CACf,MAAO,CAAAvE,IAAI,CAACoN,aAAa,CAACK,CAAK,CAAC,CACpC,GAAU,CAAC,GAAPlJ,CAAO,CACP,KAAM,IAAI,CAAAlC,KAAK,CAAC,iDAAiD,CAAC,CAEtE,GAAiB,CAAC,GAAdE,CAAC,CAACpC,MAAY,CACd,MAAO,CAAC,CAAC,CACbH,IAAI,CAAC+D,sBAAsB,CAAC,CAAC,CAAC,CAAGQ,CAAC,CAClC,KAAM,CAAAwF,CAAW,CACb,IAAK,CADY/J,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC6D,uBAAuB,CAAC,GAAK,EACxE,CACT,GAAoB,IAAK,EAArBkG,CAAqB,CACrB,KAAM,IAAI,CAAA1H,KAAK,CAAC,uCAAuC,CAAC,CAE5D,KAAM,CAAAY,CAAQ,CAAG8G,CAAW,CAAG,IAAK,CACpC,GAAe,CAAC,CAAZ9G,CAAY,CAGZ,MAAO,CAAAjD,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CAExC,KAAM,CAAAjL,CAAO,CAAGD,CAAC,CAACpC,MAAM,CACxB,GAAI,CAAAwC,CAAI,CAAGJ,CAAC,CAACK,OAAO,CAACJ,CAAO,CAAG,CAAC,CAAC,CAAC,KAC5B,CAAAK,CAAe,CAAG7C,IAAI,CAAC8C,OAAO,CAACH,CAAI,CAAC,CACpCI,CAAU,CAAa,EAAE,CAAZP,CAAY,CAAGK,CAAe,CAC3CmL,CAAU,CAAG/K,CAAQ,CAAG,CAAC,CAC/B,GAAIF,CAAU,CAAGiL,CAAU,CACvB,MAAO,CAAAhO,IAAI,CAACwN,cAAc,CAACC,CAAK,CAAC,CACrC,GAAI1K,CAAU,CAAGiL,CAAU,CACvB,MAAO,CAAAhO,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CAAC,GAIrC,CAAApK,CAAY,CAAG,QAA2D,OAAO,CAAjErD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC6D,uBAAuB,CAC5D,CACVN,CAAW,CAAGvD,IAAI,CAAC4D,oBAAoB,CAAC5D,IAAI,CAAC8D,sBAAsB,CAAC,MAClE,CAAAmG,CAAmB,CAAG,EAAE,CACxBC,CAAS,CAAG,EAAE,CAAGrH,CAAe,CACtC,GAAIqH,CAAS,IAAgC,CAAC,CAA1B,CAACnH,CAAU,CAAG,CAAC,EAAI,EAAO,CAAC,CAC3C,KAAM,IAAI,CAAAV,KAAK,CAAC,oBAAoB,CAAC,CACxC,GACG,CAAA4L,CAAe,CACf9D,CAAqB,CAAG,CAAC,CAE7B,GAAI,GAAAD,CAA+B,CAAE,CACjC,KAAM,CAAA9G,CAAK,CAAG6G,CAAmB,CAAGC,CAAS,CAC7CC,CAAqB,CAAG/G,CAAK,CAAG,EAAE,CAClC6K,CAAe,CAAG5K,CAAY,GAAKD,CAAK,CACxCC,CAAY,CAAIA,CAAY,EAAK,EAAE,CAAGD,CAAM,CAAKG,CAAW,GAAKH,CAAM,CACvEG,CAAW,GAAmB,EAAE,CAAGH,EACtC,IACI,IAAI,KAAA8G,CAAiC,CACtCC,CAAqB,CAAG,EAAE,CAC1B8D,CAAe,CAAG5K,CAAY,CAC9BA,CAAY,CAAGE,CAAW,CAC1BA,CAAW,CAAG,CAAC,KAEd,CACD,KAAM,CAAAH,CAAK,CAAG8G,CAAS,CAAGD,CAAmB,CAC7CE,CAAqB,CAAG,EAAE,CAAG/G,CAAK,CAClC6K,CAAe,CACV5K,CAAY,EAAID,CAAK,CAAKG,CAAW,GAAM,EAAE,CAAGH,CAAO,CAC5DC,CAAY,CAAGE,CAAW,EAAIH,CAAK,CACnCG,CAAW,CAAG,EAIlB,GAFAZ,CAAI,IAAY,CAAC,CACjBsL,CAAe,IAAuB,CAAC,CACnCtL,CAAI,CAAGsL,CAAe,CACtB,MAAO,CAAAjO,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CACxC,GAAI9K,CAAI,CAAGsL,CAAe,CACtB,MAAO,CAAAjO,IAAI,CAACwN,cAAc,CAACC,CAAK,CAAC,CAErC,IAAK,GAAI,CAAAtK,CAAU,CAAGX,CAAO,CAAG,CAAC,CAAgB,CAAC,EAAfW,CAAe,CAAEA,CAAU,EAAE,CAAE,CAClC,CAAC,CAAzBgH,CAAyB,EACzBA,CAAqB,EAAI,EAAE,CAC3B8D,CAAe,CAAG5K,CAAY,GAAK,CAAC,CACpCA,CAAY,CAAIA,CAAY,EAAI,EAAE,CAAKE,CAAW,GAAK,CAAE,CACzDA,CAAW,GAAmB,EAAE,EAGhC0K,CAAe,CAAG,CAAC,CAEvB,KAAM,CAAApM,CAAK,CAAGU,CAAC,CAACG,eAAe,CAACS,CAAU,CAAC,CAC3C,GAAItB,CAAK,CAAGoM,CAAe,CACvB,MAAO,CAAAjO,IAAI,CAACsN,iBAAiB,CAACG,CAAK,CAAC,CACxC,GAAI5L,CAAK,CAAGoM,CAAe,CACvB,MAAO,CAAAjO,IAAI,CAACwN,cAAc,CAACC,CAAK,EAGxC,GAAqB,CAAC,GAAlBpK,CAAkB,EAAoB,CAAC,GAAjBE,CAAiB,CAAE,CACzC,GAA8B,CAAC,GAA3B4G,CAA2B,CAC3B,KAAM,IAAI,CAAA9H,KAAK,CAAC,oBAAoB,CAAC,CACzC,MAAO,CAAArC,IAAI,CAACwN,cAAc,CAACC,CAAK,EAEpC,MAAO,GAEX,MAAO,CAAAhF,eAAeA,CAAClG,CAAC,CAAEgC,CAAC,CAAE,KAAAxD,CAAA,CAMSF,IAAI,CAACgN,GAAG,OALtC,CAAA7N,IAAI,CAACmB,eAAe,CAACoD,CAAC,CAAC,CACb,CAAC,GAAPA,CAAO,CACa,CAAC,GAAdhC,CAAC,CAACpC,MAAY,CAEJ,CAAC,GAAdoC,CAAC,CAACpC,MAAY,EAAMoC,CAAC,CAACnC,IAAI,GAAU,CAAC,CAALmE,CAAO,EAC1ChC,CAAC,CAACG,eAAe,CAAC,CAAC,CAAC,GAAK3B,CAAA,CAASwD,CAAC,CAAE,CAEN,CAAC,GAAlCvE,IAAI,CAAC+N,iBAAiB,CAACxL,CAAC,CAAEgC,CAAC,EAOtC,MAAO,CAAA2J,wBAAwBA,CAAC5M,CAAM,CAAE6M,CAAE,CAAE,OAE/B,EAAC,GADFA,CAAE,CACkB,CAAC,CAAV7M,CAAU,CACpB,CAAC,GAFF6M,CAAE,CAEmB,CAAC,EAAX7M,CAAW,CACrB,CAAC,GAHF6M,CAAE,CAGkB,CAAC,CAAV7M,CAAU,CACpB,CAAC,GAJF6M,CAAE,CAImB,CAAC,EAAX7M,CAAW,QAGlC,MAAO,CAAA8G,SAASA,CAAC7F,CAAC,CAAEgC,CAAC,CAAE4J,CAAE,CAAE,CAGvB,GAFA5L,CAAC,CAAGvC,IAAI,CAAC0B,aAAa,CAACa,CAAC,CAAC,CACzBgC,CAAC,CAAGvE,IAAI,CAAC0B,aAAa,CAAC6C,CAAC,CAAC,CACR,QAAQ,EAArB,MAAO,CAAAhC,CAAc,EAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,CAC9C,OAAQ4J,CAAE,EACN,IAAK,EAAC,CAAE,MAAO,CAAA5L,CAAC,CAAGgC,CAAC,CACpB,IAAK,EAAC,CAAE,MAAO,CAAAhC,CAAC,EAAIgC,CAAC,CACrB,IAAK,EAAC,CAAE,MAAO,CAAAhC,CAAC,CAAGgC,CAAC,CACpB,IAAK,EAAC,CAAE,MAAO,CAAAhC,CAAC,EAAIgC,EAG5B,GAAIvE,IAAI,CAACkI,UAAU,CAAC3F,CAAC,CAAC,EAAiB,QAAQ,EAArB,MAAO,CAAAgC,CAAc,OAC3C,CAAAA,CAAC,CAAGvE,IAAI,CAACuB,YAAY,CAACgD,CAAC,CAAC,CACd,IAAI,GAAVA,CAAU,EAEPvE,IAAI,CAACkO,wBAAwB,CAAClO,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,CAAC,CAAE4J,CAAE,CAAC,CAE1E,GAAiB,QAAQ,EAArB,MAAO,CAAA5L,CAAc,EAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,OAC3C,CAAAhC,CAAC,CAAGvC,IAAI,CAACuB,YAAY,CAACgB,CAAC,CAAC,CACd,IAAI,GAAVA,CAAU,EAEPvC,IAAI,CAACkO,wBAAwB,CAAClO,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,CAAC,CAAE4J,CAAE,CAAC,CAI1E,GAFA5L,CAAC,CAAGvC,IAAI,CAACiI,WAAW,CAAC1F,CAAC,CAAC,CACvBgC,CAAC,CAAGvE,IAAI,CAACiI,WAAW,CAAC1D,CAAC,CAAC,CACnBvE,IAAI,CAACkI,UAAU,CAAC3F,CAAC,CAAC,CAAE,CACpB,GAAIvC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CAClB,MAAO,CAAAvE,IAAI,CAACkO,wBAAwB,CAAClO,IAAI,CAACwG,iBAAiB,CAACjE,CAAC,CAAEgC,CAAC,CAAC,CAAE4J,CAAE,CAAC,CAE1E,GAAiB,QAAQ,EAArB,MAAO,CAAA5J,CAAc,CACrB,KAAM,IAAI,CAAAlC,KAAK,CAAC,oBAAoB,CAAC,CACzC,MAAO,CAAArC,IAAI,CAACkO,wBAAwB,CAAClO,IAAI,CAAC0N,iBAAiB,CAACnL,CAAC,CAAEgC,CAAC,CAAC,CAAE4J,CAAE,EAEzE,GAAiB,QAAQ,EAArB,MAAO,CAAA5L,CAAc,CACrB,KAAM,IAAI,CAAAF,KAAK,CAAC,oBAAoB,CAAC,CACzC,GAAIrC,IAAI,CAACkI,UAAU,CAAC3D,CAAC,CAAC,CAElB,MAAO,CAAAvE,IAAI,CAACkO,wBAAwB,CAAClO,IAAI,CAAC0N,iBAAiB,CAACnJ,CAAC,CAAEhC,CAAC,CAAC,CAAQ,CAAC,CAAN4L,EAAQ,CAEhF,GAAiB,QAAQ,EAArB,MAAO,CAAA5J,CAAc,CACrB,KAAM,IAAI,CAAAlC,KAAK,CAAC,oBAAoB,CAAC,CAAC,MAEjC,EAAC,GADF8L,CAAE,CACS5L,CAAC,CAAGgC,CAAC,CACf,CAAC,GAFF4J,CAAE,CAES5L,CAAC,EAAIgC,CAAC,CAChB,CAAC,GAHF4J,CAAE,CAGS5L,CAAC,CAAGgC,CAAC,CACf,CAAC,GAJF4J,CAAE,CAIS5L,CAAC,EAAIgC,CAAC,QAG7BU,QAAQA,CAAA,CAAG,CACP,MAAO,CAAAjF,IAAI,CAAC8C,OAAO,CAAC,IAAI,CAACF,OAAO,CAAC,IAAI,CAACzC,MAAM,CAAG,CAAC,CAAC,EAErD,MAAO,CAAA4F,aAAaA,CAACxD,CAAC,CAAEgC,CAAC,CAAEe,CAAU,CAAE,CACnC,GAAI/C,CAAC,CAACpC,MAAM,CAAGoE,CAAC,CAACpE,MAAM,CACnB,MAAO,CAAAH,IAAI,CAAC+F,aAAa,CAACxB,CAAC,CAAEhC,CAAC,CAAE+C,CAAU,CAAC,CAC/C,GAAiB,CAAC,GAAd/C,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CACZ,GAAiB,CAAC,GAAdgC,CAAC,CAACpE,MAAY,CACd,MAAO,CAAAoC,CAAC,CAACnC,IAAI,GAAKkF,CAAU,CAAG/C,CAAC,CAAGvC,IAAI,CAACgE,UAAU,CAACzB,CAAC,CAAC,CACzD,GAAI,CAAAyC,CAAY,CAAGzC,CAAC,CAACpC,MAAM,CAAC,CACP,CAAC,GAAlBoC,CAAC,CAAC0C,QAAQ,EAAQ,EAAKV,CAAC,CAACpE,MAAM,GAAKoC,CAAC,CAACpC,MAAM,EAAqB,CAAC,GAAlBoE,CAAC,CAACU,QAAQ,EAAS,GACnED,CAAY,EAAE,CAElB,KAAM,CAAA1D,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,CAAEM,CAAU,CAAC,CAAC,GAC9C,CAAA8I,CAAK,CAAG,CAAC,CACTlJ,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGX,CAAC,CAACpE,MAAM,CAAE+E,CAAC,EAAE,CAAE,CACtB,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAGkJ,CAAK,CAC7CA,CAAK,CAAGC,CAAC,GAAK,EAAE,CAChB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,KAAOnJ,CAAC,CAAG3C,CAAC,CAACpC,MAAM,CAAE+E,CAAC,EAAE,CAAE,CACtB,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGkJ,CAAK,CAC9BA,CAAK,CAAGC,CAAC,GAAK,EAAE,CAChB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAKvC,MAHI,CAAAnJ,CAAC,CAAG5D,CAAM,CAACnB,MAAM,EACjBmB,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAEkJ,CAAK,CAAC,CAExB9M,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAA4B,aAAaA,CAACzD,CAAC,CAAEgC,CAAC,CAAEe,CAAU,CAAE,CACnC,GAAiB,CAAC,GAAd/C,CAAC,CAACpC,MAAY,CACd,MAAO,CAAAoC,CAAC,CACZ,GAAiB,CAAC,GAAdgC,CAAC,CAACpE,MAAY,CACd,MAAO,CAAAoC,CAAC,CAACnC,IAAI,GAAKkF,CAAU,CAAG/C,CAAC,CAAGvC,IAAI,CAACgE,UAAU,CAACzB,CAAC,CAAC,CACzD,KAAM,CAAAjB,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACuC,CAAC,CAACpC,MAAM,CAAEmF,CAAU,CAAC,CAAC,GAC1C,CAAAgJ,CAAM,CAAG,CAAC,CACVpJ,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGX,CAAC,CAACpE,MAAM,CAAE+E,CAAC,EAAE,CAAE,CACtB,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAGoJ,CAAM,CAC9CA,CAAM,CAAgB,CAAC,CAAbD,CAAC,GAAK,EAAO,CACvB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,KAAOnJ,CAAC,CAAG3C,CAAC,CAACpC,MAAM,CAAE+E,CAAC,EAAE,CAAE,CACtB,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGoJ,CAAM,CAC/BA,CAAM,CAAgB,CAAC,CAAbD,CAAC,GAAK,EAAO,CACvB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,MAAO,CAAA/M,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAC,gBAAgBA,CAAC9B,CAAC,CAAEnC,CAAI,CAAEkB,CAAM,CAAG,IAAI,CAAE,CAC5C,KAAM,CAAAiN,CAAW,CAAGhM,CAAC,CAACpC,MAAM,CACb,IAAI,GAAfmB,CAAe,CACfA,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACuO,CAAW,CAAEnO,CAAI,CAAC,CAGpCkB,CAAM,CAAClB,IAAI,CAAGA,CAAI,CAEtB,GAAI,CAAAgO,CAAK,CAAG,CAAC,CACb,IAAK,GAAI,CAAAlJ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGqJ,CAAW,CAAErJ,CAAC,EAAE,CAAE,CAClC,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGkJ,CAAK,CAC9BA,CAAK,CAAGC,CAAC,GAAK,EAAE,CAChB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAKvC,MAHc,EAAC,EAAXD,CAAW,EACX9M,CAAM,CAACkN,cAAc,CAACD,CAAW,CAAE,CAAC,CAAC,CAElCjN,EAEX,MAAO,CAAA6C,gBAAgBA,CAAC5B,CAAC,CAAEyC,CAAY,CAAE,CACrC,KAAM,CAAA7E,CAAM,CAAGoC,CAAC,CAACpC,MAAM,CACvB6E,CAAY,CAAGA,CAAY,EAAI7E,CAAM,CACrC,KAAM,CAAAmB,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,GAAO,CAAC,CAC5C,GAAI,CAAAsJ,CAAM,CAAG,CAAC,CACd,IAAK,GAAI,CAAApJ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG/E,CAAM,CAAE+E,CAAC,EAAE,CAAE,CAC7B,KAAM,CAAAmJ,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGoJ,CAAM,CAC/BA,CAAM,CAAgB,CAAC,CAAbD,CAAC,GAAK,EAAO,CACvB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,GAAe,CAAC,EAAZC,CAAY,CACZ,KAAM,IAAI,CAAAjM,KAAK,CAAC,oBAAoB,CAAC,CACzC,IAAK,GAAI,CAAA6C,CAAC,CAAG/E,CAAM,CAAE+E,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACtC5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAE3B,MAAO,CAAA5D,EAEX,MAAO,CAAA0F,aAAaA,CAACzE,CAAC,CAAEgC,CAAC,CAAEjD,CAAM,CAAG,IAAI,CAAE,IAClC,CAAAkB,CAAO,CAAGD,CAAC,CAACpC,MAAM,CAClBsO,CAAO,CAAGlK,CAAC,CAACpE,MAAM,CAClBuO,CAAQ,CAAGD,CAAO,CACtB,GAAIjM,CAAO,CAAGiM,CAAO,CAAE,CACnBC,CAAQ,CAAGlM,CAAO,MACZ,CAAAmM,CAAG,CAAGpM,CAAC,CACPqM,CAAS,CAAGpM,CAAO,CACzBD,CAAC,CAAGgC,CAAC,CACL/B,CAAO,CAAGiM,CAAO,CACjBlK,CAAC,CAAGoK,CAAG,CACPF,CAAO,CAAGG,EAEd,GAAI,CAAA5J,CAAY,CAAG0J,CAAQ,CACZ,IAAI,GAAfpN,CAAe,CACfA,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,GAAO,CAAC,CAGtCA,CAAY,CAAG1D,CAAM,CAACnB,MAAM,CAEhC,GAAI,CAAA+E,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGwJ,CAAQ,CAAExJ,CAAC,EAAE,CACpB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAC,CAErD,KAAOA,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACxB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAE3B,MAAO,CAAA5D,EAEX,MAAO,CAAA6F,gBAAgBA,CAAC5E,CAAC,CAAEgC,CAAC,CAAEjD,CAAM,CAAG,IAAI,CAAE,MACnC,CAAAkB,CAAO,CAAGD,CAAC,CAACpC,MAAM,CAClBsO,CAAO,CAAGlK,CAAC,CAACpE,MAAM,CACxB,GAAI,CAAAuO,CAAQ,CAAGD,CAAO,CAClBjM,CAAO,CAAGiM,CAAO,GACjBC,CAAQ,CAAGlM,CAAO,EAEtB,GAAI,CAAAwC,CAAY,CAAGxC,CAAO,CACX,IAAI,GAAflB,CAAe,CACfA,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,GAAO,CAAC,CAGtCA,CAAY,CAAG1D,CAAM,CAACnB,MAAM,CAEhC,GAAI,CAAA+E,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGwJ,CAAQ,CAAExJ,CAAC,EAAE,CACpB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAG,CAACX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAC,CAEtD,KAAOA,CAAC,CAAG1C,CAAO,CAAE0C,CAAC,EAAE,CACnB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAC,CAEtC,KAAOA,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACxB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAE3B,MAAO,CAAA5D,EAEX,MAAO,CAAA4F,YAAYA,CAAC3E,CAAC,CAAEgC,CAAC,CAAEjD,CAAM,CAAG,IAAI,CAAE,IACjC,CAAAkB,CAAO,CAAGD,CAAC,CAACpC,MAAM,CAClBsO,CAAO,CAAGlK,CAAC,CAACpE,MAAM,CAClBuO,CAAQ,CAAGD,CAAO,CACtB,GAAIjM,CAAO,CAAGiM,CAAO,CAAE,CACnBC,CAAQ,CAAGlM,CAAO,MACZ,CAAAmM,CAAG,CAAGpM,CAAC,CACPqM,CAAS,CAAGpM,CAAO,CACzBD,CAAC,CAAGgC,CAAC,CACL/B,CAAO,CAAGiM,CAAO,CACjBlK,CAAC,CAAGoK,CAAG,CACPF,CAAO,CAAGG,EAEd,GAAI,CAAA5J,CAAY,CAAGxC,CAAO,CACX,IAAI,GAAflB,CAAe,CACfA,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,GAAO,CAAC,CAGtCA,CAAY,CAAG1D,CAAM,CAACnB,MAAM,CAEhC,GAAI,CAAA+E,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGwJ,CAAQ,CAAExJ,CAAC,EAAE,CACpB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAC,CAErD,KAAOA,CAAC,CAAG1C,CAAO,CAAE0C,CAAC,EAAE,CACnB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAC,CAEtC,KAAOA,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACxB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAE3B,MAAO,CAAA5D,EAEX,MAAO,CAAA+F,aAAaA,CAAC9E,CAAC,CAAEgC,CAAC,CAAEjD,CAAM,CAAG,IAAI,CAAE,IAClC,CAAAkB,CAAO,CAAGD,CAAC,CAACpC,MAAM,CAClBsO,CAAO,CAAGlK,CAAC,CAACpE,MAAM,CAClBuO,CAAQ,CAAGD,CAAO,CACtB,GAAIjM,CAAO,CAAGiM,CAAO,CAAE,CACnBC,CAAQ,CAAGlM,CAAO,MACZ,CAAAmM,CAAG,CAAGpM,CAAC,CACPqM,CAAS,CAAGpM,CAAO,CACzBD,CAAC,CAAGgC,CAAC,CACL/B,CAAO,CAAGiM,CAAO,CACjBlK,CAAC,CAAGoK,CAAG,CACPF,CAAO,CAAGG,EAEd,GAAI,CAAA5J,CAAY,CAAGxC,CAAO,CACX,IAAI,GAAflB,CAAe,CACfA,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,GAAO,CAAC,CAGtCA,CAAY,CAAG1D,CAAM,CAACnB,MAAM,CAEhC,GAAI,CAAA+E,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGwJ,CAAQ,CAAExJ,CAAC,EAAE,CACpB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,CAAC,CAErD,KAAOA,CAAC,CAAG1C,CAAO,CAAE0C,CAAC,EAAE,CACnB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAC,CAEtC,KAAOA,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACxB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAE3B,MAAO,CAAA5D,EAEX,MAAO,CAAA+D,iBAAiBA,CAAC9C,CAAC,CAAEgC,CAAC,CAAE,CAC3B,KAAM,CAAAsK,CAAI,CAAGtM,CAAC,CAACpC,MAAM,CAAGoE,CAAC,CAACpE,MAAM,CAChC,GAAa,CAAC,EAAV0O,CAAU,CACV,MAAO,CAAAA,CAAI,CACf,GAAI,CAAA3J,CAAC,CAAG3C,CAAC,CAACpC,MAAM,CAAG,CAAC,CAAC,KACT,CAAC,EAAN+E,CAAM,EAAI3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,GAAKX,CAAC,CAAC3B,OAAO,CAACsC,CAAC,CAAC,EAC1CA,CAAC,EAAE,CAAC,MACA,EAAC,CAALA,CAAK,CACE,CAAC,CACL3C,CAAC,CAACG,eAAe,CAACwC,CAAC,CAAC,CAAGX,CAAC,CAAC7B,eAAe,CAACwC,CAAC,CAAC,CAAG,CAAC,CAAG,CAAC,EAE9D,MAAO,CAAAC,oBAAoBA,CAAC2J,CAAY,CAAEnD,CAAU,CAAEoD,CAAW,CAAEC,CAAgB,CAAE,CACjF,GAAmB,CAAC,GAAhBrD,CAAgB,CAChB,OAAO,KACL,CAAAsD,CAAK,CAAgB,KAAM,CAAnBtD,CAAmB,CAC3BuD,CAAM,CAAGvD,CAAU,GAAK,EAAE,IAC5B,CAAAyC,CAAK,CAAG,CAAC,CACTlF,CAAI,CAAG,CAAC,CACZ,IAAK,GACG,CAAAiG,CAAG,CADFjK,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG4J,CAAY,CAAC3O,MAAM,CAAE+E,CAAC,EAAE,CAAE8J,CAAgB,EAAE,CAAE,CAC1DG,CAAG,CAAGJ,CAAW,CAACnM,OAAO,CAACoM,CAAgB,CAAC,MACzC,CAAAI,CAAE,CAAGN,CAAY,CAAClM,OAAO,CAACsC,CAAC,CAAC,CAC5BmK,CAAK,CAAQ,KAAM,CAAXD,CAAW,CACnBE,CAAM,CAAGF,CAAE,GAAK,EAAE,CAClBG,CAAI,CAAGvP,IAAI,CAACwP,MAAM,CAACH,CAAK,CAAEJ,CAAK,CAAC,CAChCQ,CAAK,CAAGzP,IAAI,CAACwP,MAAM,CAACH,CAAK,CAAEH,CAAM,CAAC,CAClCQ,CAAK,CAAG1P,IAAI,CAACwP,MAAM,CAACF,CAAM,CAAEL,CAAK,CAAC,CAClCU,CAAK,CAAG3P,IAAI,CAACwP,MAAM,CAACF,CAAM,CAAEJ,CAAM,CAAC,CACzCC,CAAG,EAAIjG,CAAI,CAAGqG,CAAI,CAAGnB,CAAK,CAC1BA,CAAK,CAAGe,CAAG,GAAK,EAAE,CAClBA,CAAG,EAAI,UAAU,CACjBA,CAAG,EAAI,CAAC,CAAS,KAAM,CAAdM,CAAc,GAAK,EAAE,GAAK,CAAS,KAAM,CAAdC,CAAc,GAAK,EAAE,CAAC,CAC1DtB,CAAK,EAAIe,CAAG,GAAK,EAAE,CACnBjG,CAAI,CAAGyG,CAAK,EAAIF,CAAK,GAAK,EAAE,CAAC,EAAIC,CAAK,GAAK,EAAE,CAAC,CAC9CX,CAAW,CAAClK,UAAU,CAACmK,CAAgB,CAAQ,UAAU,CAAhBG,CAAgB,EAE7D,KAAiB,CAAC,EAAXf,CAAW,EAAa,CAAC,GAAVlF,CAAU,CAAE8F,CAAgB,EAAE,CAAE,CAClD,GAAI,CAAAG,CAAG,CAAGJ,CAAW,CAACnM,OAAO,CAACoM,CAAgB,CAAC,CAC/CG,CAAG,EAAIf,CAAK,CAAGlF,CAAI,CACnBA,CAAI,CAAG,CAAC,CACRkF,CAAK,CAAGe,CAAG,GAAK,EAAE,CAClBJ,CAAW,CAAClK,UAAU,CAACmK,CAAgB,CAAQ,UAAU,CAAhBG,CAAgB,GAGjE,MAAO,CAAAS,qBAAqBA,CAACC,CAAM,CAAEC,CAAM,CAAEC,CAAO,CAAEvI,CAAC,CAAElG,CAAM,CAAE,IACzD,CAAA8M,CAAK,CAAG2B,CAAO,CACf7G,CAAI,CAAG,CAAC,CACZ,IAAK,GAAI,CAAAhE,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGsC,CAAC,CAAEtC,CAAC,EAAE,CAAE,MAClB,CAAArD,CAAK,CAAGgO,CAAM,CAACjN,OAAO,CAACsC,CAAC,CAAC,CACzB8K,CAAE,CAAGhQ,IAAI,CAACwP,MAAM,CAAS,KAAM,CAAd3N,CAAc,CAAEiO,CAAM,CAAC,CACxCG,CAAE,CAAGjQ,IAAI,CAACwP,MAAM,CAAC3N,CAAK,GAAK,EAAE,CAAEiO,CAAM,CAAC,CACtCzB,CAAC,CAAG2B,CAAE,EAAI,CAAM,KAAM,CAAXC,CAAW,GAAK,EAAE,CAAC,CAAG/G,CAAI,CAAGkF,CAAK,CACnDA,CAAK,CAAGC,CAAC,GAAK,EAAE,CAChBnF,CAAI,CAAG+G,CAAE,GAAK,EAAE,CAChB3O,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,GAAI/M,CAAM,CAACnB,MAAM,CAAGqH,CAAC,KACjBlG,CAAM,CAACuD,UAAU,CAAC2C,CAAC,EAAE,CAAE4G,CAAK,CAAGlF,CAAI,CAAC,CAC7B1B,CAAC,CAAGlG,CAAM,CAACnB,MAAM,EACpBmB,CAAM,CAACuD,UAAU,CAAC2C,CAAC,EAAE,CAAE,CAAC,CAAC,CAAC,IAI9B,IAAqB,CAAC,GAAlB4G,CAAK,CAAGlF,CAAU,CAClB,KAAM,IAAI,CAAA7G,KAAK,CAAC,oBAAoB,EAGhDyJ,oBAAoBA,CAACH,CAAU,CAAEoE,CAAO,CAAE5P,CAAM,CAAE,CAC1CA,CAAM,CAAG,IAAI,CAACA,MAAM,GACpBA,CAAM,CAAG,IAAI,CAACA,MAAM,OAClB,CAAA+P,CAAI,CAAgB,KAAM,CAAnBvE,CAAmB,CAC1BwE,CAAK,CAAGxE,CAAU,GAAK,EAAE,IAC3B,CAAAyC,CAAK,CAAG,CAAC,CACTlF,CAAI,CAAG6G,CAAO,CAClB,IAAK,GAAI,CAAA7K,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG/E,CAAM,CAAE+E,CAAC,EAAE,CAAE,MACvB,CAAAsG,CAAC,CAAG,IAAI,CAAC5I,OAAO,CAACsC,CAAC,CAAC,CACnBkL,CAAI,CAAO,KAAM,CAAV5E,CAAU,CACjB6E,CAAK,CAAG7E,CAAC,GAAK,EAAE,CAChB8E,CAAI,CAAGtQ,IAAI,CAACwP,MAAM,CAACY,CAAI,CAAEF,CAAI,CAAC,CAC9BK,CAAK,CAAGvQ,IAAI,CAACwP,MAAM,CAACY,CAAI,CAAED,CAAK,CAAC,CAChCK,CAAK,CAAGxQ,IAAI,CAACwP,MAAM,CAACa,CAAK,CAAEH,CAAI,CAAC,CAChCO,CAAK,CAAGzQ,IAAI,CAACwP,MAAM,CAACa,CAAK,CAAEF,CAAK,CAAC,CACvC,GAAI,CAAA7O,CAAM,CAAG4H,CAAI,CAAGoH,CAAI,CAAGlC,CAAK,CAChCA,CAAK,CAAG9M,CAAM,GAAK,EAAE,CACrBA,CAAM,EAAI,UAAU,CACpBA,CAAM,EAAI,CAAC,CAAS,KAAM,CAAdiP,CAAc,GAAK,EAAE,GAAK,CAAS,KAAM,CAAdC,CAAc,GAAK,EAAE,CAAC,CAC7DpC,CAAK,EAAI9M,CAAM,GAAK,EAAE,CACtB4H,CAAI,CAAGuH,CAAK,EAAIF,CAAK,GAAK,EAAE,CAAC,EAAIC,CAAK,GAAK,EAAE,CAAC,CAC9C,IAAI,CAAC3L,UAAU,CAACK,CAAC,CAAW,UAAU,CAAnB5D,CAAmB,EAE1C,GAAc,CAAC,EAAX8M,CAAW,EAAa,CAAC,GAAVlF,CAAU,CACzB,KAAM,IAAI,CAAA7G,KAAK,CAAC,oBAAoB,EAG5C,MAAO,CAAAoD,kBAAkBA,CAAClD,CAAC,CAAEgD,CAAO,CAAEC,CAAQ,CAAG,IAAI,CAAE,CAClC,IAAI,GAAjBA,CAAiB,GACjBA,CAAQ,CAAG,GAAI,CAAAxF,IAAI,CAACuC,CAAC,CAACpC,MAAM,GAAO,CAAC,EACxC,GAAI,CAAAwF,CAAS,CAAG,CAAC,CACjB,IAAK,GACG,CAAAoH,CAAK,CADJ7H,CAAC,CAAc,CAAC,CAAZ3C,CAAC,CAACpC,MAAU,CAAG,CAAC,CAAO,CAAC,EAAN+E,CAAM,CAAEA,CAAC,EAAI,CAAC,CAAE,CACvC6H,CAAK,CAAG,CAAEpH,CAAS,EAAI,EAAE,CAAIpD,CAAC,CAACyK,WAAW,CAAC9H,CAAC,CAAC,IAAM,CAAC,CACxD,KAAM,CAAAwL,CAAS,CAAuB,CAAC,CAApB3D,CAAK,CAAGxH,CAAY,CACvCI,CAAS,CAAuB,CAAC,CAApBoH,CAAK,CAAGxH,CAAY,CACjCwH,CAAK,CAAG,CAAEpH,CAAS,EAAI,EAAE,CAAIpD,CAAC,CAACyK,WAAW,CAAC9H,CAAC,CAAG,CAAC,CAAC,IAAM,CAAC,CACxD,KAAM,CAAAyL,CAAS,CAAuB,CAAC,CAApB5D,CAAK,CAAGxH,CAAY,CACvCI,CAAS,CAAuB,CAAC,CAApBoH,CAAK,CAAGxH,CAAY,CACjCC,CAAQ,CAACX,UAAU,CAACK,CAAC,GAAK,CAAC,CAAGwL,CAAS,EAAI,EAAE,CAAIC,CAAS,EAE9D,MAAO,CAAAnL,EAEX,MAAO,CAAAK,kBAAkBA,CAACtD,CAAC,CAAEgD,CAAO,CAAE,CAClC,GAAI,CAAAI,CAAS,CAAG,CAAC,CACjB,IAAK,GAAI,CAAAT,CAAC,CAAc,CAAC,CAAZ3C,CAAC,CAACpC,MAAU,CAAG,CAAC,CAAO,CAAC,EAAN+E,CAAM,CAAEA,CAAC,EAAE,CAAE,CACxC,KAAM,CAAA6H,CAAK,CAAG,CAAEpH,CAAS,EAAI,EAAE,CAAIpD,CAAC,CAACyK,WAAW,CAAC9H,CAAC,CAAC,IAAM,CAAC,CAC1DS,CAAS,CAAuB,CAAC,CAApBoH,CAAK,CAAGxH,EAEzB,MAAO,CAAAI,EAEX,MAAO,CAAAD,kBAAkBA,CAACkL,CAAQ,CAAErL,CAAO,CAAEsL,CAAY,CAAEC,CAAa,CAAE,MAChE,CAAAtJ,CAAC,CAAGjC,CAAO,CAACwL,iBAAiB,EAAE,CAC/BC,CAAE,CAAGzL,CAAO,CAACpF,MAAM,CACnByL,CAAC,CAAGgF,CAAQ,CAACG,iBAAiB,EAAE,CAAGvJ,CAAC,CAC1C,GAAI,CAAAyJ,CAAC,CAAG,IAAI,CACRJ,CAAY,GACZI,CAAC,CAAG,GAAI,CAAAjR,IAAI,CAAE4L,CAAC,CAAG,CAAC,GAAM,CAAC,GAAO,CAAC,CAClCqF,CAAC,CAACtM,kBAAkB,EAAE,EAE1B,KAAM,CAAAuM,CAAK,CAAG,GAAI,CAAAlR,IAAI,CAAEwH,CAAC,CAAG,CAAC,GAAM,CAAC,GAAO,CAAC,CAC5C0J,CAAK,CAACvM,kBAAkB,EAAE,CAE1B,KAAM,CAAAvB,CAAK,CAAGpD,IAAI,CAACmR,OAAO,CAAC5L,CAAO,CAACyH,WAAW,CAACxF,CAAC,CAAG,CAAC,CAAC,CAAC,CAC1C,CAAC,CAATpE,CAAS,GACTmC,CAAO,CAAGvF,IAAI,CAACoR,kBAAkB,CAAC7L,CAAO,CAAEnC,CAAK,CAAE,EAAqB,OAErE,CAAAiO,CAAC,CAAGrR,IAAI,CAACoR,kBAAkB,CAACR,CAAQ,CAAExN,CAAK,CAAE,EAAsB,CAEnEkO,CAAG,CAAG/L,CAAO,CAACyH,WAAW,CAACxF,CAAC,CAAG,CAAC,CAAC,CACtC,GAAI,CAAA+J,CAAe,CAAG,CAAC,CACvB,IAAK,GAEG,CAAAC,CAAI,CAFHC,CAAC,CAAG7F,CAAC,CAAO,CAAC,EAAN6F,CAAM,CAAEA,CAAC,EAAE,CAAE,CAErBD,CAAI,CAAG,KAAM,CACjB,KAAM,CAAAE,CAAG,CAAGL,CAAC,CAACrE,WAAW,CAACyE,CAAC,CAAGjK,CAAC,CAAC,CAChC,GAAIkK,CAAG,GAAKJ,CAAG,CAAE,CACb,KAAM,CAAAvE,CAAK,CAAG,CAAE2E,CAAG,EAAI,EAAE,CAAIL,CAAC,CAACrE,WAAW,CAACyE,CAAC,CAAGjK,CAAC,CAAG,CAAC,CAAC,IAAM,CAAC,CAC5DgK,CAAI,CAAmB,CAAC,CAAhBzE,CAAK,CAAGuE,CAAQ,CACxB,GAAI,CAAAK,CAAI,CAAmB,CAAC,CAAhB5E,CAAK,CAAGuE,CAAQ,CAAC,KACvB,CAAAM,CAAG,CAAGrM,CAAO,CAACyH,WAAW,CAACxF,CAAC,CAAG,CAAC,CAAC,CAChCqK,CAAI,CAAGR,CAAC,CAACrE,WAAW,CAACyE,CAAC,CAAGjK,CAAC,CAAG,CAAC,CAAC,MAC7BxH,IAAI,CAACwP,MAAM,CAACgC,CAAI,CAAEI,CAAG,CAAC,GAAK,CAAC,CAAK,CAAED,CAAI,EAAI,EAAE,CAAIE,CAAI,IAAM,CAAE,GACjEL,CAAI,EAAE,CACNG,CAAI,EAAIL,CAAG,GACA,KAAM,CAAbK,CAAa,MAKzB3R,IAAI,CAAC4P,qBAAqB,CAACrK,CAAO,CAAEiM,CAAI,CAAE,CAAC,CAAER,CAAE,CAAEE,CAAK,CAAC,CACvD,GAAI,CAAA7G,CAAC,CAAGgH,CAAC,CAACS,YAAY,CAACZ,CAAK,CAAEO,CAAC,CAAEjK,CAAC,CAAG,CAAC,CAAC,CAC7B,CAAC,GAAP6C,CAAO,GACPA,CAAC,CAAGgH,CAAC,CAACU,YAAY,CAACxM,CAAO,CAAEkM,CAAC,CAAEjK,CAAC,CAAC,CACjC6J,CAAC,CAACpE,cAAc,CAACwE,CAAC,CAAGjK,CAAC,CAA+B,KAAM,CAAlC6J,CAAC,CAACrE,WAAW,CAACyE,CAAC,CAAGjK,CAAC,CAAC,CAAG6C,CAAW,CAAC,CAC5DmH,CAAI,EAAE,EAENX,CAAY,GACJ,CAAC,CAALY,CAAK,CACLF,CAAe,CAAGC,CAAI,EAAI,EAAE,CAI5BP,CAAC,CAACpM,UAAU,CAAC4M,CAAC,GAAK,CAAC,CAAEF,CAAe,CAAGC,CAAI,CAAC,EAIzD,GAAIV,CAAa,OACb,CAAAO,CAAC,CAACW,mBAAmB,CAAC5O,CAAK,CAAC,CACxByN,CAAY,CACL,CAAErL,QAAQ,CAAEyL,CAAC,CAAEtL,SAAS,CAAE0L,EAAG,CAEjCA,CAAC,CAEZ,GAAIR,CAAY,CACZ,MAAO,CAAAI,CAAC,CAEZ,KAAM,IAAI,CAAA5O,KAAK,CAAC,aAAa,EAEjC,MAAO,CAAA8O,OAAOA,CAAC1O,CAAK,CAAE,CAClB,MAAO,CAAAzC,IAAI,CAAC8C,OAAO,CAACL,CAAK,CAAC,CAAG,GAGjCsP,YAAYA,CAAChC,CAAO,CAAEkC,CAAU,CAAEC,CAAU,CAAE,CAC1C,GAAI,CAAA9D,CAAK,CAAG,CAAC,CACb,IAAK,GAAI,CAAAlJ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGgN,CAAU,CAAEhN,CAAC,EAAE,CAAE,CACjC,KAAM,CAAAiN,CAAG,CAAG,IAAI,CAACnF,WAAW,CAACiF,CAAU,CAAG/M,CAAC,CAAC,CACxC6K,CAAO,CAAC/C,WAAW,CAAC9H,CAAC,CAAC,CACtBkJ,CAAK,CACTA,CAAK,CAAG+D,CAAG,GAAK,EAAE,CAClB,IAAI,CAAClF,cAAc,CAACgF,CAAU,CAAG/M,CAAC,CAAQ,KAAM,CAAZiN,CAAY,EAEpD,MAAO,CAAA/D,EAEX0D,YAAYA,CAACM,CAAU,CAAEH,CAAU,CAAEC,CAAU,CAAE,CAE7C,GAAI,CAAA5D,CAAM,CAAG,CAAC,CACd,GAAiB,CAAC,CAAd2D,CAAc,CAAE,CAGhBA,CAAU,GAAK,CAAC,IACZ,CAAAzH,CAAO,CAAG,IAAI,CAAC5H,OAAO,CAACqP,CAAU,CAAC,CAClCI,CAAE,CAAa,KAAM,CAAhB7H,CAAgB,CACrBtF,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CATOgN,CAAU,CAAG,CAAC,GAAM,CASf,CAAEhN,CAAC,EAAE,CAAE,MACjB,CAAAoN,CAAG,CAAGF,CAAU,CAACxP,OAAO,CAACsC,CAAC,CAAC,CAC3BqN,CAAG,CAAG,CAAC/H,CAAO,GAAK,EAAE,GAAW,KAAM,CAAZ8H,CAAY,CAAC,CAAGhE,CAAM,CACtDA,CAAM,CAAkB,CAAC,CAAfiE,CAAG,GAAK,EAAO,CACzB,IAAI,CAAC1N,UAAU,CAACoN,CAAU,CAAG/M,CAAC,CAAG,CAAO,KAAM,CAAZqN,CAAY,GAAK,EAAE,CAAU,KAAM,CAAXF,CAAY,CAAC,CACvE7H,CAAO,CAAG,IAAI,CAAC5H,OAAO,CAACqP,CAAU,CAAG/M,CAAC,CAAG,CAAC,CAAC,CAC1CmN,CAAE,CAAG,CAAW,KAAM,CAAhB7H,CAAgB,GAAK8H,CAAG,GAAK,EAAE,CAAC,CAAGhE,CAAM,CAC/CA,CAAM,CAAiB,CAAC,CAAd+D,CAAE,GAAK,GACpB,KAEK,CAAAC,CAAG,CAAGF,CAAU,CAACxP,OAAO,CAACsC,CAAC,CAAC,CAC3BqN,CAAG,CAAG,CAAC/H,CAAO,GAAK,EAAE,GAAW,KAAM,CAAZ8H,CAAY,CAAC,CAAGhE,CAAM,CACtDA,CAAM,CAAkB,CAAC,CAAfiE,CAAG,GAAK,EAAO,CACzB,IAAI,CAAC1N,UAAU,CAACoN,CAAU,CAAG/M,CAAC,CAAG,CAAO,KAAM,CAAZqN,CAAY,GAAK,EAAE,CAAU,KAAM,CAAXF,CAAY,CAAC,CAEvE,GAAIJ,CAAU,CAAG/M,CAAC,CAAG,CAAC,EAAI,IAAI,CAAC/E,MAAM,CACjC,KAAM,IAAI,CAAAM,UAAU,CAAC,eAAe,CAAC,CAEhB,CAAC,GAAR,CAAC,CAAdyR,CAAc,CAAO,GACtB1H,CAAO,CAAG,IAAI,CAAC5H,OAAO,CAACqP,CAAU,CAAG/M,CAAC,CAAG,CAAC,CAAC,CAC1CmN,CAAE,CAAG,CAAW,KAAM,CAAhB7H,CAAgB,GANX8H,CAAG,GAAK,EAAE,CAMW,CAAGhE,CAAM,CACzCA,CAAM,CAAiB,CAAC,CAAd+D,CAAE,GAAK,EAAO,CACxB,IAAI,CAACxN,UAAU,CAACoN,CAAU,CAAGG,CAAU,CAACjS,MAAM,CAAa,UAAU,CAApBqK,CAAoB,CAAU,KAAM,CAAX6H,CAAY,CAAC,EAE9F,IACI,CACDJ,CAAU,GAAK,CAAC,CAChB,GAAI,CAAA/M,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGkN,CAAU,CAACjS,MAAM,CAAG,CAAC,CAAE+E,CAAC,EAAE,CAAE,MAC7B,CAAAsF,CAAO,CAAG,IAAI,CAAC5H,OAAO,CAACqP,CAAU,CAAG/M,CAAC,CAAC,CACtCoN,CAAG,CAAGF,CAAU,CAACxP,OAAO,CAACsC,CAAC,CAAC,CAC3BmN,CAAE,CAAG,CAAW,KAAM,CAAhB7H,CAAgB,GAAW,KAAM,CAAZ8H,CAAY,CAAC,CAAGhE,CAAM,CACvDA,CAAM,CAAiB,CAAC,CAAd+D,CAAE,GAAK,EAAO,CACxB,KAAM,CAAAE,CAAG,CAAG,CAAC/H,CAAO,GAAK,EAAE,GAAK8H,CAAG,GAAK,EAAE,CAAC,CAAGhE,CAAM,CACpDA,CAAM,CAAkB,CAAC,CAAfiE,CAAG,GAAK,EAAO,CACzB,IAAI,CAAC1N,UAAU,CAACoN,CAAU,CAAG/M,CAAC,CAAG,CAAO,KAAM,CAAZqN,CAAY,GAAK,EAAE,CAAU,KAAM,CAAXF,CAAY,EACzE,KACK,CAAA7H,CAAO,CAAG,IAAI,CAAC5H,OAAO,CAACqP,CAAU,CAAG/M,CAAC,CAAC,CACtCoN,CAAG,CAAGF,CAAU,CAACxP,OAAO,CAACsC,CAAC,CAAC,CAC3BmN,CAAE,CAAG,CAAW,KAAM,CAAhB7H,CAAgB,GAAW,KAAM,CAAZ8H,CAAY,CAAC,CAAGhE,CAAM,CACvDA,CAAM,CAAiB,CAAC,CAAd+D,CAAE,GAAK,EAAO,CACxB,GAAI,CAAAE,CAAG,CAAG,CAAC,CACc,CAAC,GAAR,CAAC,CAAdL,CAAc,CAAO,GACtBK,CAAG,CAAG,CAAC/H,CAAO,GAAK,EAAE,GAAK8H,CAAG,GAAK,EAAE,CAAC,CAAGhE,CAAM,CAC9CA,CAAM,CAAkB,CAAC,CAAfiE,CAAG,GAAK,EAAO,EAE7B,IAAI,CAAC1N,UAAU,CAACoN,CAAU,CAAG/M,CAAC,CAAG,CAAO,KAAM,CAAZqN,CAAY,GAAK,EAAE,CAAU,KAAM,CAAXF,CAAY,EAE1E,MAAO,CAAA/D,EAEX0D,mBAAmBA,CAAC5O,CAAK,CAAE,CACvB,GAAc,CAAC,GAAXA,CAAW,CACX,OACJ,GAAI,CAAAgL,CAAK,CAAG,IAAI,CAACxL,OAAO,CAAC,CAAC,CAAC,GAAKQ,CAAK,CACrC,KAAM,CAAAsG,CAAI,CAAG,IAAI,CAACvJ,MAAM,CAAG,CAAC,CAC5B,IAAK,GAAI,CAAA+E,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGwE,CAAI,CAAExE,CAAC,EAAE,CAAE,CAC3B,KAAM,CAAAsG,CAAC,CAAG,IAAI,CAAC5I,OAAO,CAACsC,CAAC,CAAG,CAAC,CAAC,CAC7B,IAAI,CAACL,UAAU,CAACK,CAAC,CAAyB,UAAU,CAA/BsG,CAAC,EAAK,EAAE,CAAGpI,CAAoB,CAAIgL,CAAK,CAAC,CAC9DA,CAAK,CAAG5C,CAAC,GAAKpI,EAElB,IAAI,CAACyB,UAAU,CAAC6E,CAAI,CAAE0E,CAAK,EAE/B,MAAO,CAAAgD,kBAAkBA,CAAC7O,CAAC,CAAEa,CAAK,CAAEoP,CAAQ,CAAE,MACpC,CAAAhL,CAAC,CAAGjF,CAAC,CAACpC,MAAM,CAEZmB,CAAM,CAAG,GAAI,CAAAtB,IAAI,CADFwH,CAAC,CAAGgL,CAAQ,GACU,CAAC,CAC5C,GAAc,CAAC,GAAXpP,CAAW,CAAE,CACb,IAAK,GAAI,CAAA8B,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGsC,CAAC,CAAEtC,CAAC,EAAE,CACtB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAC,CAGtC,MAFe,EAAC,CAAZsN,CAAY,EACZlR,CAAM,CAACuD,UAAU,CAAC2C,CAAC,CAAE,CAAC,CAAC,CACpBlG,EAEX,GAAI,CAAA8M,CAAK,CAAG,CAAC,CACb,IAAK,GAAI,CAAAlJ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGsC,CAAC,CAAEtC,CAAC,EAAE,CAAE,CACxB,KAAM,CAAAsG,CAAC,CAAGjJ,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CACtB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAkB,UAAU,CAAxBsG,CAAC,EAAIpI,CAAmB,CAAIgL,CAAK,CAAC,CACzDA,CAAK,CAAG5C,CAAC,GAAM,EAAE,CAAGpI,EAKxB,MAHe,EAAC,CAAZoP,CAAY,EACZlR,CAAM,CAACuD,UAAU,CAAC2C,CAAC,CAAE4G,CAAK,CAAC,CAExB9M,EAEX,MAAO,CAAA8E,qBAAqBA,CAAC7D,CAAC,CAAEgC,CAAC,CAAE,CAC/B,KAAM,CAAAnB,CAAK,CAAGpD,IAAI,CAACyS,eAAe,CAAClO,CAAC,CAAC,CACrC,GAAY,CAAC,CAATnB,CAAS,CACT,KAAM,IAAI,CAAA3C,UAAU,CAAC,gBAAgB,CAAC,CAAC,KACrC,CAAAiS,CAAU,CAAkB,CAAC,CAAftP,CAAK,CAAG,EAAO,CAC7BuP,CAAS,CAAGvP,CAAK,CAAG,EAAE,CACtBjD,CAAM,CAAGoC,CAAC,CAACpC,MAAM,CACjByS,CAAI,CAAiB,CAAC,GAAfD,CAAe,EACyB,CAAC,EAAjDpQ,CAAC,CAACK,OAAO,CAACzC,CAAM,CAAG,CAAC,CAAC,GAAM,EAAE,CAAGwS,CAAiB,CAChD3N,CAAY,CAAG7E,CAAM,CAAGuS,CAAU,EAAIE,CAAI,CAAG,CAAC,CAAG,CAAC,CAAC,CACnDtR,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,CAAEzC,CAAC,CAACnC,IAAI,CAAC,CAC7C,GAAkB,CAAC,GAAfuS,CAAe,CAAE,CACjB,GAAI,CAAAzN,CAAC,CAAG,CAAC,CACT,KAAOA,CAAC,CAAGwN,CAAU,CAAExN,CAAC,EAAE,CACtB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAC3B,KAAOA,CAAC,CAAGF,CAAY,CAAEE,CAAC,EAAE,CACxB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAGwN,CAAU,CAAC,EAErD,IACI,CACD,GAAI,CAAAtE,CAAK,CAAG,CAAC,CACb,IAAK,GAAI,CAAAlJ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGwN,CAAU,CAAExN,CAAC,EAAE,CAC/B5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE,CAAC,CAAC,CAC3B,IAAK,GAAI,CAAAA,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAG/E,CAAM,CAAE+E,CAAC,EAAE,CAAE,CAC7B,KAAM,CAAAsG,CAAC,CAAGjJ,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CACtB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAGwN,CAAU,CAAsB,UAAU,CAA5BlH,CAAC,EAAImH,CAAuB,CAAIvE,CAAK,CAAC,CAC1EA,CAAK,CAAG5C,CAAC,GAAM,EAAE,CAAGmH,EAExB,GAAIC,CAAI,CACJtR,CAAM,CAACuD,UAAU,CAAC1E,CAAM,CAAGuS,CAAU,CAAEtE,CAAK,CAAC,KAG7C,IAAc,CAAC,GAAXA,CAAW,CACX,KAAM,IAAI,CAAA/L,KAAK,CAAC,oBAAoB,EAGhD,MAAO,CAAAf,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAA+B,sBAAsBA,CAAC5D,CAAC,CAAEgC,CAAC,CAAE,MAC1B,CAAApE,CAAM,CAAGoC,CAAC,CAACpC,MAAM,CACjBC,CAAI,CAAGmC,CAAC,CAACnC,IAAI,CACbgD,CAAK,CAAGpD,IAAI,CAACyS,eAAe,CAAClO,CAAC,CAAC,CACrC,GAAY,CAAC,CAATnB,CAAS,CACT,MAAO,CAAApD,IAAI,CAAC6S,qBAAqB,CAACzS,CAAI,CAAC,CAAC,KACtC,CAAAsS,CAAU,CAAkB,CAAC,CAAftP,CAAK,CAAG,EAAO,CAC7BuP,CAAS,CAAGvP,CAAK,CAAG,EAAE,CAC5B,GAAI,CAAA4B,CAAY,CAAG7E,CAAM,CAAGuS,CAAU,CACtC,GAAoB,CAAC,EAAjB1N,CAAiB,CACjB,MAAO,CAAAhF,IAAI,CAAC6S,qBAAqB,CAACzS,CAAI,CAAC,CAK3C,GAAI,CAAA0S,CAAa,GAAQ,CACzB,GAAI1S,CAAI,CAAE,CAEN,GAAuC,CAAC,GAAnCmC,CAAC,CAACK,OAAO,CAAC8P,CAAU,CAAC,CADb,CAAC,CAAC,EAAIC,CAAS,EAAI,CACC,CAAO,CACpCG,CAAa,GAAO,KAGpB,KAAK,GAAI,CAAA5N,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGwN,CAAU,CAAExN,CAAC,EAAE,CAC/B,GAAqB,CAAC,GAAlB3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAO,CAAE,CACpB4N,CAAa,GAAO,CACpB,OAMhB,GAAIA,CAAa,EAAkB,CAAC,GAAfH,CAAe,CAAE,MAE5B,CAAA/N,CAAG,CAAGrC,CAAC,CAACK,OAAO,CAACzC,CAAM,CAAG,CAAC,CAAC,CACI,CAAC,EAAV,CAACyE,CAAS,EAElCI,CAAY,GAEpB,GAAI,CAAA1D,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAACgF,CAAY,CAAE5E,CAAI,CAAC,CACzC,GAAkB,CAAC,GAAfuS,CAAe,CAAE,CAEjBrR,CAAM,CAACuD,UAAU,CAACG,CAAY,CAAG,CAAC,CAAE,CAAC,CAAC,CACtC,IAAK,GAAI,CAAAE,CAAC,CAAGwN,CAAU,CAAExN,CAAC,CAAG/E,CAAM,CAAE+E,CAAC,EAAE,CACpC5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAGwN,CAAU,CAAEnQ,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,EAErD,IACI,CACD,GAAI,CAAAkJ,CAAK,CAAG7L,CAAC,CAACK,OAAO,CAAC8P,CAAU,CAAC,GAAKC,CAAS,CAC/C,KAAM,CAAAjJ,CAAI,CAAGvJ,CAAM,CAAGuS,CAAU,CAAG,CAAC,CACpC,IAAK,GAAI,CAAAxN,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGwE,CAAI,CAAExE,CAAC,EAAE,CAAE,CAC3B,KAAM,CAAAsG,CAAC,CAAGjJ,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAGwN,CAAU,CAAG,CAAC,CAAC,CACvCpR,CAAM,CAACuD,UAAU,CAACK,CAAC,CAA6B,UAAU,CAAnCsG,CAAC,EAAK,EAAE,CAAGmH,CAAwB,CAAIvE,CAAK,CAAC,CACpEA,CAAK,CAAG5C,CAAC,GAAKmH,EAElBrR,CAAM,CAACuD,UAAU,CAAC6E,CAAI,CAAE0E,CAAK,EAOjC,MALI,CAAA0E,CAAa,GAGbxR,CAAM,CAAGtB,IAAI,CAACqE,gBAAgB,CAAC/C,CAAM,IAAQA,CAAM,CAAC,EAEjDA,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAyO,qBAAqBA,CAACzS,CAAI,CAAE,OAC3B,CAAAA,CAAI,CACGJ,IAAI,CAACoB,UAAU,CAAC,CAAC,GAAM,CAAC,CAE5BpB,IAAI,CAACkB,MAAM,GAEtB,MAAO,CAAAuR,eAAeA,CAAClQ,CAAC,CAAE,CACtB,GAAe,CAAC,CAAZA,CAAC,CAACpC,MAAU,CACZ,MAAO,CAAC,CAAC,CACb,KAAM,CAAAsC,CAAK,CAAGF,CAAC,CAACG,eAAe,CAAC,CAAC,CAAC,CAAC,MAC/B,CAAAD,CAAK,CAAGzC,IAAI,CAACyE,gBAAgB,CACtB,CAAC,CAAC,CACNhC,EAEX,MAAO,CAAAf,aAAaA,CAACqR,CAAG,CAAEC,CAAI,CAAG,SAAS,CAAE,CACxC,GAAmB,QAAQ,EAAvB,MAAO,CAAAD,CAAgB,CACvB,MAAO,CAAAA,CAAG,CACd,GAAIA,CAAG,CAAC7S,WAAW,GAAKF,IAAI,CACxB,MAAO,CAAA+S,CAAG,CACd,GAAsB,WAAW,EAA7B,MAAO,CAAAE,MAAsB,EACC,QAAQ,EAAtC,MAAO,CAAAA,MAAM,CAACC,WAAwB,EAClCH,CAAG,CAACE,MAAM,CAACC,WAAW,CAAC,CAAE,CACzB,KAAM,CAAAzR,CAAS,CAAGsR,CAAG,CAACE,MAAM,CAACC,WAAW,CAAC,CAACF,CAAI,CAAC,CAC/C,GAAyB,QAAQ,EAA7B,MAAO,CAAAvR,CAAsB,CAC7B,MAAO,CAAAA,CAAS,CACpB,KAAM,IAAI,CAAAE,SAAS,CAAC,0CAA0C,EAGtE,KAAM,CAAAS,CAAO,CAAG2Q,CAAG,CAAC3Q,OAAO,CAC3B,GAAIA,CAAO,CAAE,CACT,KAAM,CAAAX,CAAS,CAAGW,CAAO,CAAC+Q,IAAI,CAACJ,CAAG,CAAC,CACnC,GAAyB,QAAQ,EAA7B,MAAO,CAAAtR,CAAsB,CAC7B,MAAO,CAAAA,EAEf,KAAM,CAAAM,CAAQ,CAAGgR,CAAG,CAAChR,QAAQ,CAC7B,GAAIA,CAAQ,CAAE,CACV,KAAM,CAAAN,CAAS,CAAGM,CAAQ,CAACoR,IAAI,CAACJ,CAAG,CAAC,CACpC,GAAyB,QAAQ,EAA7B,MAAO,CAAAtR,CAAsB,CAC7B,MAAO,CAAAA,EAEf,KAAM,IAAI,CAAAE,SAAS,CAAC,0CAA0C,EAElE,MAAO,CAAAsG,WAAWA,CAACxF,CAAK,CAAE,OAClB,CAAAzC,IAAI,CAACkI,UAAU,CAACzF,CAAK,CAAC,CACfA,CAAK,CACT,CAACA,EAEZ,MAAO,CAAAyF,UAAUA,CAACzF,CAAK,CAAE,CACrB,MAAwB,QAAQ,EAAzB,MAAO,CAAAA,CAAkB,EAAc,IAAI,GAAdA,CAAc,EAC9CA,CAAK,CAACvC,WAAW,GAAKF,KAE9B,MAAO,CAAA4H,iBAAiBA,CAACJ,CAAC,CAAEjF,CAAC,CAAE,MACrB,CAAAmC,CAAY,CAAqB,CAAC,CAAlB,CAAC8C,CAAC,CAAG,EAAE,EAAI,EAAO,CAClClG,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC0E,CAAY,CAAEnC,CAAC,CAACnC,IAAI,CAAC,CACvCsJ,CAAI,CAAGhF,CAAY,CAAG,CAAC,CAC7B,IAAK,GAAI,CAAAQ,CAAC,CAAG,CAAC,CAAEA,CAAC,CAAGwE,CAAI,CAAExE,CAAC,EAAE,CACzB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAE3C,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAC,CAEtC,GAAI,CAAAN,CAAG,CAAGrC,CAAC,CAACK,OAAO,CAAC8G,CAAI,CAAC,CACzB,GAAiB,CAAC,EAAblC,CAAC,CAAG,EAAS,CAAE,CAChB,KAAM,CAAA4L,CAAI,CAAG,EAAE,CAAI5L,CAAC,CAAG,EAAG,CAC1B5C,CAAG,CAAIA,CAAG,EAAIwO,CAAI,GAAMA,EAG5B,MADA,CAAA9R,CAAM,CAACuD,UAAU,CAAC6E,CAAI,CAAE9E,CAAG,CAAC,CACrBtD,CAAM,CAAC8C,MAAM,GAExB,MAAO,CAAAyD,8BAA8BA,CAACL,CAAC,CAAEjF,CAAC,CAAE+C,CAAU,CAAE,KAAAkC,CAAA,CAMtC3G,IAAI,CAACwS,GAAG,MALhB,CAAA3O,CAAY,CAAqB,CAAC,CAAlB,CAAC8C,CAAC,CAAG,EAAE,EAAI,EAAO,CAClClG,CAAM,CAAG,GAAI,CAAAtB,IAAI,CAAC0E,CAAY,CAAEY,CAAU,CAAC,CACjD,GAAI,CAAAJ,CAAC,CAAG,CAAC,CACT,KAAM,CAAAwE,CAAI,CAAGhF,CAAY,CAAG,CAAC,CAC7B,GAAI,CAAA4J,CAAM,CAAG,CAAC,CAEd,IADA,KAAM,CAAAgF,CAAK,CAAG9L,CAAA,CAASkC,CAAI,CAAEnH,CAAC,CAACpC,MAAM,CAAE,CAChC+E,CAAC,CAAGoO,CAAK,CAAEpO,CAAC,EAAE,CAAE,CACnB,KAAM,CAAAmJ,CAAC,CAAG,CAAC,CAAG9L,CAAC,CAACK,OAAO,CAACsC,CAAC,CAAC,CAAGoJ,CAAM,CACnCA,CAAM,CAAgB,CAAC,CAAbD,CAAC,GAAK,EAAO,CACvB/M,CAAM,CAACuD,UAAU,CAACK,CAAC,CAAM,UAAU,CAAdmJ,CAAc,EAEvC,KAAOnJ,CAAC,CAAGwE,CAAI,CAAExE,CAAC,EAAE,CAChB5D,CAAM,CAACuD,UAAU,CAACK,CAAC,CAA2B,CAAC,CAAf,UAAU,CAApB,CAACoJ,CAAwB,CAAC,CAEpD,GAAI,CAAA1J,CAAG,CAAG8E,CAAI,CAAGnH,CAAC,CAACpC,MAAM,CAAGoC,CAAC,CAACK,OAAO,CAAC8G,CAAI,CAAC,CAAG,CAAC,CAC/C,KAAM,CAAA6J,CAAe,CAAG/L,CAAC,CAAG,EAAE,CAC9B,GAAI,CAAAgM,CAAS,CACb,GAAwB,CAAC,EAArBD,CAAqB,CACrBC,CAAS,CAAG,CAAC,CAAG5O,CAAG,CAAG0J,CAAM,CAC5BkF,CAAS,EAAI,UAAU,KAEtB,CACD,KAAM,CAAAJ,CAAI,CAAG,EAAE,CAAGG,CAAe,CACjC3O,CAAG,CAAIA,CAAG,EAAIwO,CAAI,GAAMA,CAAI,CAC5B,KAAM,CAAAK,CAAU,CAAG,CAAC,EAAK,EAAE,CAAGL,CAAK,CACnCI,CAAS,CAAGC,CAAU,CAAG7O,CAAG,CAAG0J,CAAM,CACrCkF,CAAS,EAAKC,CAAU,CAAG,EAG/B,MADA,CAAAnS,CAAM,CAACuD,UAAU,CAAC6E,CAAI,CAAE8J,CAAS,CAAC,CAC3BlS,CAAM,CAAC8C,MAAM,GAGxBxB,OAAOA,CAACsC,CAAC,CAAE,CACP,MAAO,KAAI,CAACA,CAAC,EAEjBxC,eAAeA,CAACwC,CAAC,CAAE,CACf,MAAO,KAAI,CAACA,CAAC,CAAC,GAAK,EAEvBL,UAAUA,CAACK,CAAC,CAAErD,CAAK,CAAE,CACjB,IAAI,CAACqD,CAAC,CAAC,CAAW,CAAC,CAATrD,EAEd2M,cAAcA,CAACtJ,CAAC,CAAErD,CAAK,CAAE,CACrB,IAAI,CAACqD,CAAC,CAAC,CAAW,CAAC,CAATrD,EAEdkP,iBAAiBA,CAAA,CAAG,CAChB,KAAM,CAAA2C,CAAG,CAAG,IAAI,CAACvT,MAAM,CAAC,MACa,MAAM,EAAvC,IAAI,CAACuC,eAAe,CAACgR,CAAG,CAAG,CAAC,CAAW,CAC1B,CAAC,CAAPA,CAAO,CAAG,CAAC,CACT,CAAC,CAAPA,EAEX1G,WAAWA,CAAC9H,CAAC,CAAE,CACX,MAA4C,MAAM,CAA1C,IAAI,CAACA,CAAC,GAAK,CAAC,CAAC,GAAgB,EAAE,EAAP,CAAC,CAALA,CAAK,EAErC+H,cAAcA,CAAC/H,CAAC,CAAEzC,CAAK,CAAE,MACf,CAAAU,CAAU,CAAG+B,CAAC,GAAK,CAAC,CACpByO,CAAQ,CAAG,IAAI,CAAC/Q,OAAO,CAACO,CAAU,CAAC,CACnCyQ,CAAO,CAAQ,CAAC,CAAL1O,CAAK,CAAgB,KAAM,CAAjByO,CAAiB,CAAKlR,CAAK,EAAI,EAAG,CAC7C,UAAU,CAArBkR,CAAqB,CAAa,KAAM,CAAdlR,CAAe,CAC9C,IAAI,CAACoC,UAAU,CAAC1B,CAAU,CAAEyQ,CAAO,EAEvC,MAAO,CAAAC,UAAUA,CAACC,CAAI,CAAE7Q,CAAQ,CAAE,CAC9B,GAAI,CAAA3B,CAAM,CAAG,CAAC,CAAC,KACG,CAAC,CAAZ2B,CAAY,EACA,CAAC,CAAZA,CAAY,GACZ3B,CAAM,EAAIwS,CAAI,EAClB7Q,CAAQ,IAAM,CAAC,CACf6Q,CAAI,EAAIA,CAAI,CAEhB,MAAO,CAAAxS,EAEX,MAAO,CAAAyS,iBAAiBA,CAAA,CAAG,CAEvB,MADA,CAAA/T,IAAI,CAAC+D,sBAAsB,CAAC,CAAC,CAAC,CAAG,CAAC,CAAG,CACG,CAAC,GAAlC/D,IAAI,CAAC4D,oBAAoB,CAAC,CAAC,EAEtC,MAAO,CAAAzC,eAAeA,CAACoB,CAAC,CAAE,CACtB,MAAO,CAAK,UAAU,CAAdA,CAAc,IAAMA,EAEpC,CACAvC,IAAI,CAACQ,YAAY,SAAU,CAC3BR,IAAI,CAACyE,gBAAgB,CAAGzE,IAAI,CAACQ,YAAY,EAAI,CAAC,CAQ9CR,IAAI,CAAC4K,iBAAiB,CAAG,CACrB,CAAC,CAAE,CAAC,CAAE,EAAE,CAAE,EAAE,CAAE,EAAE,CAAE,EAAE,CAAE,EAAE,CAAE,EAAE,CAAE,EAAE,CAChC,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CACtC,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CACtC,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CACtC,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,GAAG,CACrB,CACD5K,IAAI,CAACgL,wBAAwB,CAAG,CAAC,CACjChL,IAAI,CAAC8K,6BAA6B,CAAG,CAAC,EAAI9K,IAAI,CAACgL,wBAAwB,CACvEhL,IAAI,CAACsM,kBAAkB,kJAAmD,CAC1EtM,IAAI,CAACgU,sBAAsB,CAAG,GAAI,CAAAC,WAAW,CAAC,CAAC,CAAC,CAChDjU,IAAI,CAAC+D,sBAAsB,CAAG,GAAI,CAAAmQ,YAAY,CAAClU,IAAI,CAACgU,sBAAsB,CAAC,CAC3EhU,IAAI,CAAC4D,oBAAoB,CAAG,GAAI,CAAAuQ,UAAU,CAACnU,IAAI,CAACgU,sBAAsB,CAAC,CACvEhU,IAAI,CAAC6D,uBAAuB,CAAG7D,IAAI,CAAC+T,iBAAiB,EAAE,CAAG,CAAC,CAAG,CAAC,CAC/D/T,IAAI,CAAC8D,sBAAsB,CAAG9D,IAAI,CAAC+T,iBAAiB,EAAE,CAAG,CAAC,CAAG,CAAC,CAI9D/T,IAAI,CAAC8C,OAAO,CAAGjC,IAAI,CAACuT,KAAK,CAAG,SAAU7R,CAAC,CAAE,CACrC,MAAO,CAAA1B,IAAI,CAACuT,KAAK,CAAC7R,CAAC,CAAC,CAAG,CAC3B,CAAC,CAAG,SAAUA,CAAC,CAAE,OACH,EAAC,GAAPA,CAAO,CACA,EAAE,CACoC,CAAC,CAA3C,EAAE,EAAmC,CAAC,CAAhC1B,IAAI,CAACwT,GAAG,CAAC9R,CAAC,GAAK,CAAC,CAAC,CAAG1B,IAAI,CAACyT,GAAO,CACjD,CAAC,CACDtU,IAAI,CAACwP,MAAM,CAAG3O,IAAI,CAAC0T,IAAI,EAAI,SAAUC,CAAC,CAAEC,CAAC,CAAE,CACvC,MAAiB,EAAC,CAAVD,CAAC,CAAGC,CAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ (function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self,e.JSBI=t())})(this,function(){"use strict";var e=Math.imul,t=Math.clz32;function i(t,i){(null==i||i>t.length)&&(i=t.length);for(var _=0,o=Array(i);_<i;_++)o[_]=t[_];return o}function _(e){if(Array.isArray(e))return e}function n(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function o(i,t,_){return t=r(t),v(i,b()?Reflect.construct(t,_||[],r(i).constructor):t.apply(i,_))}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(i,t,e){if(b())return Reflect.construct.apply(null,arguments);var _=[null];_.push.apply(_,t);var n=new(i.bind.apply(i,_));return e&&y(n,e.prototype),n}function a(i,e){for(var _,n=0;n<e.length;n++)_=e[n],_.enumerable=_.enumerable||!1,_.configurable=!0,"value"in _&&(_.writable=!0),Object.defineProperty(i,D(_.key),_)}function s(i,e,_){return e&&a(i.prototype,e),_&&a(i,_),Object.defineProperty(i,"prototype",{writable:!1}),i}function u(i,_){var e="undefined"!=typeof Symbol&&i[Symbol.iterator]||i["@@iterator"];if(!e){if(Array.isArray(i)||(e=B(i))||_&&i&&"number"==typeof i.length){e&&(i=e);var l=0,g=function(){};return{s:g,n:function(){return l>=i.length?{done:!0}:{done:!1,value:i[l++]}},e:function(e){throw e},f:g}}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 s,d=!0,h=!1;return{s:function(){e=e.call(i)},n:function(){var t=e.next();return d=t.done,t},e:function(e){h=!0,s=e},f:function(){try{d||null==e.return||e.return()}finally{if(h)throw s}}}}function r(e){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},r(e)}function d(i,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");i.prototype=Object.create(t&&t.prototype,{constructor:{value:i,writable:!0,configurable:!0}}),Object.defineProperty(i,"prototype",{writable:!1}),t&&y(i,t)}function h(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function m(_,g){var l=null==_?null:"undefined"!=typeof Symbol&&_[Symbol.iterator]||_["@@iterator"];if(null!=l){var s,d,r,h,b=[],a=!0,m=!1;try{if(r=(l=l.call(_)).next,0===g){if(Object(l)!==l)return;a=!1}else for(;!(a=(s=r.call(l)).done)&&(b.push(s.value),b.length!==g);a=!0);}catch(e){m=!0,d=e}finally{try{if(!a&&null!=l.return&&(h=l.return(),Object(h)!==h))return}finally{if(m)throw d}}return b}}function c(){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 v(i,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return n(i)}function y(i,t){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,t){return i.__proto__=t,i},y(i,t)}function f(t,i){return _(t)||m(t,i)||B(t,i)||c()}function k(_,t){if("object"!=typeof _||!_)return _;var n=_[Symbol.toPrimitive];if(void 0!==n){var e=n.call(_,t||"default");if("object"!=typeof e)return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(_)}function D(e){var t=k(e,"string");return"symbol"==typeof t?t:t+""}function p(e){"@babel/helpers - typeof";return p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(e)}function B(e,_){if(e){if("string"==typeof e)return i(e,_);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,_):void 0}}function S(e){var i="function"==typeof Map?new Map:void 0;return S=function(e){function t(){return g(e,arguments,r(this).constructor)}if(null===e||!h(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==i){if(i.has(e))return i.get(e);i.set(e,t)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),y(t,e)},S(e)}var C=function(e){var t=Math.abs,i=Math.max,_=Math.floor;function g(e,t){var i;if(l(this,g),i=o(this,g,[e]),i.sign=t,Object.setPrototypeOf(i,g.prototype),e>g.__kMaxLength)throw new RangeError("Maximum BigInt size exceeded");return i}return d(g,e),s(g,[{key:"toDebugString",value:function e(){var t,i=["BigInt["],_=u(this);try{for(_.s();!(t=_.n()).done;){var n=t.value;i.push((n?(n>>>0).toString(16):n)+", ")}}catch(e){_.e(e)}finally{_.f()}return i.push("]"),i.join("")}},{key:"toString",value:function e(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:10;if(2>t||36<t)throw new RangeError("toString() radix argument must be between 2 and 36");return 0===this.length?"0":0==(t&t-1)?g.__toStringBasePowerOfTwo(this,t):g.__toStringGeneric(this,t,!1)}},{key:"valueOf",value:function e(){throw new Error("Convert JSBI instances to native numbers using `toNumber`.")}},{key:"__copy",value:function e(){for(var t=new g(this.length,this.sign),_=0;_<this.length;_++)t[_]=this[_];return t}},{key:"__trim",value:function e(){for(var t=this.length,i=this[t-1];0===i;)t--,i=this[t-1],this.pop();return 0===t&&(this.sign=!1),this}},{key:"__initializeDigits",value:function e(){for(var t=0;t<this.length;t++)this[t]=0}},{key:"__clzmsd",value:function e(){return g.__clz30(this.__digit(this.length-1))}},{key:"__inplaceMultiplyAdd",value:function n(e,t,_){_>this.length&&(_=this.length);for(var o=32767&e,l=e>>>15,a=0,s=t,u=0;u<_;u++){var r=this.__digit(u),h=32767&r,b=r>>>15,m=g.__imul(h,o),c=g.__imul(h,l),v=g.__imul(b,o),y=g.__imul(b,l),f=s+m+a;a=f>>>30,f&=1073741823,f+=((32767&c)<<15)+((32767&v)<<15),a+=f>>>30,s=y+(c>>>15)+(v>>>15),this.__setDigit(u,1073741823&f)}if(0!==a||0!==s)throw new Error("implementation bug")}},{key:"__inplaceAdd",value:function n(e,t,_){for(var o,l=0,g=0;g<_;g++)o=this.__halfDigit(t+g)+e.__halfDigit(g)+l,l=o>>>15,this.__setHalfDigit(t+g,32767&o);return l}},{key:"__inplaceSub",value:function n(e,t,_){var o=_-1>>>1,l=0;if(1&t){t>>=1;for(var g=this.__digit(t),a=32767&g,s=0;s<o;s++){var u=e.__digit(s),r=(g>>>15)-(32767&u)-l;l=1&r>>>15,this.__setDigit(t+s,(32767&r)<<15|32767&a),g=this.__digit(t+s+1),a=(32767&g)-(u>>>15)-l,l=1&a>>>15}var d=e.__digit(s),h=(g>>>15)-(32767&d)-l;l=1&h>>>15,this.__setDigit(t+s,(32767&h)<<15|32767&a);var b=d>>>15;if(t+s+1>=this.length)throw new RangeError("out of bounds");0==(1&_)&&(g=this.__digit(t+s+1),a=(32767&g)-b-l,l=1&a>>>15,this.__setDigit(t+e.length,1073709056&g|32767&a))}else{t>>=1;for(var m=0;m<e.length-1;m++){var c=this.__digit(t+m),v=e.__digit(m),y=(32767&c)-(32767&v)-l;l=1&y>>>15;var f=(c>>>15)-(v>>>15)-l;l=1&f>>>15,this.__setDigit(t+m,(32767&f)<<15|32767&y)}var k=this.__digit(t+m),D=e.__digit(m),p=(32767&k)-(32767&D)-l;l=1&p>>>15;var B=0;0==(1&_)&&(B=(k>>>15)-(D>>>15)-l,l=1&B>>>15),this.__setDigit(t+m,(32767&B)<<15|32767&p)}return l}},{key:"__inplaceRightShift",value:function t(e){if(0!==e){for(var _,n=this.__digit(0)>>>e,o=this.length-1,l=0;l<o;l++)_=this.__digit(l+1),this.__setDigit(l,1073741823&_<<30-e|n),n=_>>>e;this.__setDigit(o,n)}}},{key:"__digit",value:function t(e){return this[e]}},{key:"__unsignedDigit",value:function t(e){return this[e]>>>0}},{key:"__setDigit",value:function i(e,t){this[e]=0|t}},{key:"__setDigitGrow",value:function i(e,t){this[e]=0|t}},{key:"__halfDigitLength",value:function e(){var t=this.length;return 32767>=this.__unsignedDigit(t-1)?2*t-1:2*t}},{key:"__halfDigit",value:function t(e){return 32767&this[e>>>1]>>>15*(1&e)}},{key:"__setHalfDigit",value:function i(e,t){var _=e>>>1,n=this.__digit(_),o=1&e?32767&n|t<<15:1073709056&n|32767&t;this.__setDigit(_,o)}}],[{key:"BigInt",value:function t(e){var i=Number.isFinite;if("number"==typeof e){if(0===e)return g.__zero();if(g.__isOneDigitInt(e))return 0>e?g.__oneDigit(-e,!0):g.__oneDigit(e,!1);if(!i(e)||_(e)!==e)throw new RangeError("The number "+e+" cannot be converted to BigInt because it is not an integer");return g.__fromDouble(e)}if("string"==typeof e){var n=g.__fromString(e);if(null===n)throw new SyntaxError("Cannot convert "+e+" to a BigInt");return n}if("boolean"==typeof e)return!0===e?g.__oneDigit(1,!1):g.__zero();if("object"===p(e)){if(e.constructor===g)return e;var o=g.__toPrimitive(e);return g.BigInt(o)}throw new TypeError("Cannot convert "+e+" to a BigInt")}},{key:"toNumber",value:function t(e){var i=e.length;if(0===i)return 0;if(1===i){var _=e.__unsignedDigit(0);return e.sign?-_:_}var n=e.__digit(i-1),o=g.__clz30(n),l=30*i-o;if(1024<l)return e.sign?-Infinity:1/0;var a=l-1,s=n,u=i-1,r=o+3,d=32===r?0:s<<r;d>>>=12;var h=r-12,b=12<=r?0:s<<20+r,m=20+r;for(0<h&&0<u&&(u--,s=e.__digit(u),d|=s>>>30-h,b=s<<h+2,m=h+2);0<m&&0<u;)u--,s=e.__digit(u),b|=30<=m?s<<m-30:s>>>30-m,m-=30;var c=g.__decideRounding(e,m,u,s);if((1===c||0===c&&1==(1&b))&&(b=b+1>>>0,0===b&&(d++,0!=d>>>20&&(d=0,a++,1023<a))))return e.sign?-Infinity:1/0;var v=e.sign?-2147483648:0;return a=a+1023<<20,g.__kBitConversionInts[g.__kBitConversionIntHigh]=v|a|d,g.__kBitConversionInts[g.__kBitConversionIntLow]=b,g.__kBitConversionDouble[0]}},{key:"unaryMinus",value:function t(e){if(0===e.length)return e;var i=e.__copy();return i.sign=!e.sign,i}},{key:"bitwiseNot",value:function t(e){return e.sign?g.__absoluteSubOne(e).__trim():g.__absoluteAddOne(e,!0)}},{key:"exponentiate",value:function i(e,t){if(t.sign)throw new RangeError("Exponent must be positive");if(0===t.length)return g.__oneDigit(1,!1);if(0===e.length)return e;if(1===e.length&&1===e.__digit(0))return e.sign&&0==(1&t.__digit(0))?g.unaryMinus(e):e;if(1<t.length)throw new RangeError("BigInt too big");var _=t.__unsignedDigit(0);if(1===_)return e;if(_>=g.__kMaxLengthBits)throw new RangeError("BigInt too big");if(1===e.length&&2===e.__digit(0)){var n=1+(0|_/30),o=e.sign&&0!=(1&_),l=new g(n,o);l.__initializeDigits();var a=1<<_%30;return l.__setDigit(n-1,a),l}var s=null,u=e;for(0!=(1&_)&&(s=e),_>>=1;0!==_;_>>=1)u=g.multiply(u,u),0!=(1&_)&&(null===s?s=u:s=g.multiply(s,u));return s}},{key:"multiply",value:function _(e,t){if(0===e.length)return e;if(0===t.length)return t;var n=e.length+t.length;30<=e.__clzmsd()+t.__clzmsd()&&n--;var o=new g(n,e.sign!==t.sign);o.__initializeDigits();for(var l=0;l<e.length;l++)g.__multiplyAccumulate(t,e.__digit(l),o,l);return o.__trim()}},{key:"divide",value:function i(e,t){if(0===t.length)throw new RangeError("Division by zero");if(0>g.__absoluteCompare(e,t))return g.__zero();var _,n=e.sign!==t.sign,o=t.__unsignedDigit(0);if(1===t.length&&32767>=o){if(1===o)return n===e.sign?e:g.unaryMinus(e);_=g.__absoluteDivSmall(e,o,null)}else _=g.__absoluteDivLarge(e,t,!0,!1);return _.sign=n,_.__trim()}},{key:"remainder",value:function i(e,t){if(0===t.length)throw new RangeError("Division by zero");if(0>g.__absoluteCompare(e,t))return e;var _=t.__unsignedDigit(0);if(1===t.length&&32767>=_){if(1===_)return g.__zero();var n=g.__absoluteModSmall(e,_);return 0===n?g.__zero():g.__oneDigit(n,e.sign)}var i=g.__absoluteDivLarge(e,t,!1,!0);return i.sign=e.sign,i.__trim()}},{key:"add",value:function i(e,t){var _=e.sign;return _===t.sign?g.__absoluteAdd(e,t,_):0<=g.__absoluteCompare(e,t)?g.__absoluteSub(e,t,_):g.__absoluteSub(t,e,!_)}},{key:"subtract",value:function i(e,t){var _=e.sign;return _===t.sign?0<=g.__absoluteCompare(e,t)?g.__absoluteSub(e,t,_):g.__absoluteSub(t,e,!_):g.__absoluteAdd(e,t,_)}},{key:"leftShift",value:function i(e,t){return 0===t.length||0===e.length?e:t.sign?g.__rightShiftByAbsolute(e,t):g.__leftShiftByAbsolute(e,t)}},{key:"signedRightShift",value:function i(e,t){return 0===t.length||0===e.length?e:t.sign?g.__leftShiftByAbsolute(e,t):g.__rightShiftByAbsolute(e,t)}},{key:"unsignedRightShift",value:function e(){throw new TypeError("BigInts have no unsigned right shift; use >> instead")}},{key:"lessThan",value:function i(e,t){return 0>g.__compareToBigInt(e,t)}},{key:"lessThanOrEqual",value:function i(e,t){return 0>=g.__compareToBigInt(e,t)}},{key:"greaterThan",value:function i(e,t){return 0<g.__compareToBigInt(e,t)}},{key:"greaterThanOrEqual",value:function i(e,t){return 0<=g.__compareToBigInt(e,t)}},{key:"equal",value:function _(e,t){if(e.sign!==t.sign)return!1;if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(e.__digit(n)!==t.__digit(n))return!1;return!0}},{key:"notEqual",value:function i(e,t){return!g.equal(e,t)}},{key:"bitwiseAnd",value:function _(e,t){if(!e.sign&&!t.sign)return g.__absoluteAnd(e,t).__trim();if(e.sign&&t.sign){var n=i(e.length,t.length)+1,o=g.__absoluteSubOne(e,n),l=g.__absoluteSubOne(t);return o=g.__absoluteOr(o,l,o),g.__absoluteAddOne(o,!0,o).__trim()}if(e.sign){var a=[t,e];e=a[0],t=a[1]}return g.__absoluteAndNot(e,g.__absoluteSubOne(t)).__trim()}},{key:"bitwiseXor",value:function _(e,t){if(!e.sign&&!t.sign)return g.__absoluteXor(e,t).__trim();if(e.sign&&t.sign){var n=i(e.length,t.length),o=g.__absoluteSubOne(e,n),l=g.__absoluteSubOne(t);return g.__absoluteXor(o,l,o).__trim()}var a=i(e.length,t.length)+1;if(e.sign){var s=[t,e];e=s[0],t=s[1]}var u=g.__absoluteSubOne(t,a);return u=g.__absoluteXor(u,e,u),g.__absoluteAddOne(u,!0,u).__trim()}},{key:"bitwiseOr",value:function _(e,t){var n=i(e.length,t.length);if(!e.sign&&!t.sign)return g.__absoluteOr(e,t).__trim();if(e.sign&&t.sign){var o=g.__absoluteSubOne(e,n),l=g.__absoluteSubOne(t);return o=g.__absoluteAnd(o,l,o),g.__absoluteAddOne(o,!0,o).__trim()}if(e.sign){var a=[t,e];e=a[0],t=a[1]}var s=g.__absoluteSubOne(t,n);return s=g.__absoluteAndNot(s,e,s),g.__absoluteAddOne(s,!0,s).__trim()}},{key:"asIntN",value:function o(e,t){if(0===t.length)return t;if(e=_(e),0>e)throw new RangeError("Invalid value: not (convertible to) a safe integer");if(0===e)return g.__zero();if(e>=g.__kMaxLengthBits)return t;var l=0|(e+29)/30;if(t.length<l)return t;var a=t.__unsignedDigit(l-1),s=1<<(e-1)%30;if(t.length===l&&a<s)return t;var u=(a&s)===s;if(!u)return g.__truncateToNBits(e,t);if(!t.sign)return g.__truncateAndSubFromPowerOfTwo(e,t,!0);if(0==(a&s-1)){for(var r=l-2;0<=r;r--)if(0!==t.__digit(r))return g.__truncateAndSubFromPowerOfTwo(e,t,!1);return t.length===l&&a===s?t:g.__truncateToNBits(e,t)}return g.__truncateAndSubFromPowerOfTwo(e,t,!1)}},{key:"asUintN",value:function i(e,t){if(0===t.length)return t;if(e=_(e),0>e)throw new RangeError("Invalid value: not (convertible to) a safe integer");if(0===e)return g.__zero();if(t.sign){if(e>g.__kMaxLengthBits)throw new RangeError("BigInt too big");return g.__truncateAndSubFromPowerOfTwo(e,t,!1)}if(e>=g.__kMaxLengthBits)return t;var o=0|(e+29)/30;if(t.length<o)return t;var l=e%30;if(t.length==o){if(0===l)return t;var a=t.__digit(o-1);if(0==a>>>l)return t}return g.__truncateToNBits(e,t)}},{key:"ADD",value:function i(e,t){if(e=g.__toPrimitive(e),t=g.__toPrimitive(t),"string"==typeof e)return"string"!=typeof t&&(t=t.toString()),e+t;if("string"==typeof t)return e.toString()+t;if(e=g.__toNumeric(e),t=g.__toNumeric(t),g.__isBigInt(e)&&g.__isBigInt(t))return g.add(e,t);if("number"==typeof e&&"number"==typeof t)return e+t;throw new TypeError("Cannot mix BigInt and other types, use explicit conversions")}},{key:"LT",value:function i(e,t){return g.__compare(e,t,0)}},{key:"LE",value:function i(e,t){return g.__compare(e,t,1)}},{key:"GT",value:function i(e,t){return g.__compare(e,t,2)}},{key:"GE",value:function i(e,t){return g.__compare(e,t,3)}},{key:"EQ",value:function i(e,t){for(;!0;){if(g.__isBigInt(e))return g.__isBigInt(t)?g.equal(e,t):g.EQ(t,e);if("number"==typeof e){if(g.__isBigInt(t))return g.__equalToNumber(t,e);if("object"!==p(t))return e==t;t=g.__toPrimitive(t)}else if("string"==typeof e){if(g.__isBigInt(t))return e=g.__fromString(e),null!==e&&g.equal(e,t);if("object"!==p(t))return e==t;t=g.__toPrimitive(t)}else if("boolean"==typeof e){if(g.__isBigInt(t))return g.__equalToNumber(t,+e);if("object"!==p(t))return e==t;t=g.__toPrimitive(t)}else if("symbol"===p(e)){if(g.__isBigInt(t))return!1;if("object"!==p(t))return e==t;t=g.__toPrimitive(t)}else if("object"===p(e)){if("object"===p(t)&&t.constructor!==g)return e==t;e=g.__toPrimitive(e)}else return e==t}}},{key:"NE",value:function i(e,t){return!g.EQ(e,t)}},{key:"DataViewGetBigInt64",value:function i(e,t){var _=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];return g.asIntN(64,g.DataViewGetBigUint64(e,t,_))}},{key:"DataViewGetBigUint64",value:function i(e,t){var _=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2],n=_?[4,0]:[0,4],o=f(n,2),a=o[0],s=o[1],l=e.getUint32(t+a,_),u=e.getUint32(t+s,_),r=new g(3,!1);return r.__setDigit(0,1073741823&u),r.__setDigit(1,(268435455&l)<<2|u>>>30),r.__setDigit(2,l>>>28),r.__trim()}},{key:"DataViewSetBigInt64",value:function _(e,t,i){var n=!!(3<arguments.length&&void 0!==arguments[3])&&arguments[3];g.DataViewSetBigUint64(e,t,i,n)}},{key:"DataViewSetBigUint64",value:function _(e,t,i){var n=!!(3<arguments.length&&void 0!==arguments[3])&&arguments[3];i=g.asUintN(64,i);var o=0,a=0;if(0<i.length&&(a=i.__digit(0),1<i.length)){var s=i.__digit(1);a|=s<<30,o=s>>>2,2<i.length&&(o|=i.__digit(2)<<28)}var u=n?[4,0]:[0,4],r=f(u,2),d=r[0],h=r[1];e.setUint32(t+d,o,n),e.setUint32(t+h,a,n)}},{key:"__zero",value:function e(){return new g(0,!1)}},{key:"__oneDigit",value:function i(e,t){var _=new g(1,t);return _.__setDigit(0,e),_}},{key:"__decideRounding",value:function n(e,t,i,_){if(0<t)return-1;var o;if(0>t)o=-t-1;else{if(0===i)return-1;i--,_=e.__digit(i),o=29}var l=1<<o;if(0==(_&l))return-1;if(l-=1,0!=(_&l))return 1;for(;0<i;)if(i--,0!==e.__digit(i))return 1;return 0}},{key:"__fromDouble",value:function t(e){var i=0>e;g.__kBitConversionDouble[0]=e;var _,n=2047&g.__kBitConversionInts[g.__kBitConversionIntHigh]>>>20,o=n-1023,l=(0|o/30)+1,a=new g(l,i),s=1048576,u=1048575&g.__kBitConversionInts[g.__kBitConversionIntHigh]|s,r=g.__kBitConversionInts[g.__kBitConversionIntLow],d=20,h=o%30,b=0;if(h<d){var m=d-h;b=m+32,_=u>>>m,u=u<<32-m|r>>>m,r<<=32-m}else if(h===d)b=32,_=u,u=r,r=0;else{var c=h-d;b=32-c,_=u<<c|r>>>32-c,u=r<<c,r=0}a.__setDigit(l-1,_);for(var v=l-2;0<=v;v--)0<b?(b-=30,_=u>>>2,u=u<<30|r>>>2,r<<=30):_=0,a.__setDigit(v,_);return a.__trim()}},{key:"__isWhitespace",value:function t(e){return!!(13>=e&&9<=e)||(159>=e?32==e:131071>=e?160==e||5760==e:196607>=e?(e&=131071,10>=e||40==e||41==e||47==e||95==e||4096==e):65279==e)}},{key:"__fromString",value:function t(e){var i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,_=0,n=e.length,o=0;if(o===n)return g.__zero();for(var l=e.charCodeAt(o);g.__isWhitespace(l);){if(++o===n)return g.__zero();l=e.charCodeAt(o)}if(43===l){if(++o===n)return null;l=e.charCodeAt(o),_=1}else if(45===l){if(++o===n)return null;l=e.charCodeAt(o),_=-1}if(0===i){if(i=10,48===l){if(++o===n)return g.__zero();if(l=e.charCodeAt(o),88===l||120===l){if(i=16,++o===n)return null;l=e.charCodeAt(o)}else if(79===l||111===l){if(i=8,++o===n)return null;l=e.charCodeAt(o)}else if(66===l||98===l){if(i=2,++o===n)return null;l=e.charCodeAt(o)}}}else if(16===i&&48===l){if(++o===n)return g.__zero();if(l=e.charCodeAt(o),88===l||120===l){if(++o===n)return null;l=e.charCodeAt(o)}}if(0!==_&&10!==i)return null;for(;48===l;){if(++o===n)return g.__zero();l=e.charCodeAt(o)}var a=n-o,s=g.__kMaxBitsPerChar[i],u=g.__kBitsPerCharTableMultiplier-1;if(a>1073741824/s)return null;var r=s*a+u>>>g.__kBitsPerCharTableShift,h=0|(r+29)/30,b=new g(h,!1),c=10>i?i:10,v=10<i?i-10:0;if(0==(i&i-1)){s>>=g.__kBitsPerCharTableShift;var y=[],f=[],k=!1;do{for(var D,p=0,B=0;!0;){if(D=void 0,l-48>>>0<c)D=l-48;else if((32|l)-97>>>0<v)D=(32|l)-87;else{k=!0;break}if(B+=s,p=p<<s|D,++o===n){k=!0;break}if(l=e.charCodeAt(o),30<B+s)break}y.push(p),f.push(B)}while(!k);g.__fillFromParts(b,y,f)}else{b.__initializeDigits();var S=!1,C=0;do{for(var I,A=0,T=1;!0;){if(I=void 0,l-48>>>0<c)I=l-48;else if((32|l)-97>>>0<v)I=(32|l)-87;else{S=!0;break}var P=T*i;if(1073741823<P)break;if(T=P,A=A*i+I,C++,++o===n){S=!0;break}l=e.charCodeAt(o)}u=30*g.__kBitsPerCharTableMultiplier-1;var O=0|(s*C+u>>>g.__kBitsPerCharTableShift)/30;b.__inplaceMultiplyAdd(T,A,O)}while(!S)}if(o!==n){if(!g.__isWhitespace(l))return null;for(o++;o<n;o++)if(l=e.charCodeAt(o),!g.__isWhitespace(l))return null}return b.sign=-1===_,b.__trim()}},{key:"__fillFromParts",value:function n(e,t,_){for(var o=0,l=0,g=0,a=t.length-1;0<=a;a--){var s=t[a],u=_[a];l|=s<<g,g+=u,30===g?(e.__setDigit(o++,l),g=0,l=0):30<g&&(e.__setDigit(o++,1073741823&l),g-=30,l=s>>>u-g)}if(0!==l){if(o>=e.length)throw new Error("implementation bug");e.__setDigit(o++,l)}for(;o<e.length;o++)e.__setDigit(o,0)}},{key:"__toStringBasePowerOfTwo",value:function _(e,t){var n=e.length,o=t-1;o=(85&o>>>1)+(85&o),o=(51&o>>>2)+(51&o),o=(15&o>>>4)+(15&o);var l=o,a=t-1,s=e.__digit(n-1),u=g.__clz30(s),r=30*n-u,d=0|(r+l-1)/l;if(e.sign&&d++,268435456<d)throw new Error("string too long");for(var h=Array(d),b=d-1,m=0,c=0,v=0;v<n-1;v++){var y=e.__digit(v),f=(m|y<<c)&a;h[b--]=g.__kConversionChars[f];var k=l-c;for(m=y>>>k,c=30-k;c>=l;)h[b--]=g.__kConversionChars[m&a],m>>>=l,c-=l}var D=(m|s<<c)&a;for(h[b--]=g.__kConversionChars[D],m=s>>>l-c;0!==m;)h[b--]=g.__kConversionChars[m&a],m>>>=l;if(e.sign&&(h[b--]="-"),-1!==b)throw new Error("implementation bug");return h.join("")}},{key:"__toStringGeneric",value:function n(e,t,_){var o=e.length;if(0===o)return"";if(1===o){var l=e.__unsignedDigit(0).toString(t);return!1===_&&e.sign&&(l="-"+l),l}var a=30*o-g.__clz30(e.__digit(o-1)),s=g.__kMaxBitsPerChar[t],u=s-1,r=a*g.__kBitsPerCharTableMultiplier;r+=u-1,r=0|r/u;var d,h,b=r+1>>1,m=g.exponentiate(g.__oneDigit(t,!1),g.__oneDigit(b,!1)),c=m.__unsignedDigit(0);if(1===m.length&&32767>=c){d=new g(e.length,!1),d.__initializeDigits();for(var v,y=0,f=2*e.length-1;0<=f;f--)v=y<<15|e.__halfDigit(f),d.__setHalfDigit(f,0|v/c),y=0|v%c;h=y.toString(t)}else{var k=g.__absoluteDivLarge(e,m,!0,!0);d=k.quotient;var D=k.remainder.__trim();h=g.__toStringGeneric(D,t,!0)}d.__trim();for(var p=g.__toStringGeneric(d,t,!0);h.length<b;)h="0"+h;return!1===_&&e.sign&&(p="-"+p),p+h}},{key:"__unequalSign",value:function t(e){return e?-1:1}},{key:"__absoluteGreater",value:function t(e){return e?-1:1}},{key:"__absoluteLess",value:function t(e){return e?1:-1}},{key:"__compareToBigInt",value:function i(e,t){var _=e.sign;if(_!==t.sign)return g.__unequalSign(_);var n=g.__absoluteCompare(e,t);return 0<n?g.__absoluteGreater(_):0>n?g.__absoluteLess(_):0}},{key:"__compareToNumber",value:function _(e,i){if(g.__isOneDigitInt(i)){var n=e.sign,o=0>i;if(n!==o)return g.__unequalSign(n);if(0===e.length){if(o)throw new Error("implementation bug");return 0===i?0:-1}if(1<e.length)return g.__absoluteGreater(n);var l=t(i),a=e.__unsignedDigit(0);return a>l?g.__absoluteGreater(n):a<l?g.__absoluteLess(n):0}return g.__compareToDouble(e,i)}},{key:"__compareToDouble",value:function i(e,t){if(t!==t)return t;if(t===1/0)return-1;if(t===-Infinity)return 1;var _=e.sign,n=0>t;if(_!==n)return g.__unequalSign(_);if(0===t)throw new Error("implementation bug: should be handled elsewhere");if(0===e.length)return-1;g.__kBitConversionDouble[0]=t;var o=2047&g.__kBitConversionInts[g.__kBitConversionIntHigh]>>>20;if(2047==o)throw new Error("implementation bug: handled elsewhere");var l=o-1023;if(0>l)return g.__absoluteGreater(_);var a=e.length,s=e.__digit(a-1),u=g.__clz30(s),r=30*a-u,d=l+1;if(r<d)return g.__absoluteLess(_);if(r>d)return g.__absoluteGreater(_);var h=1048576,b=1048576|1048575&g.__kBitConversionInts[g.__kBitConversionIntHigh],m=g.__kBitConversionInts[g.__kBitConversionIntLow],c=20,v=29-u;if(v!==(0|(r-1)%30))throw new Error("implementation bug");var y,f=0;if(v<c){var k=c-v;f=k+32,y=b>>>k,b=b<<32-k|m>>>k,m<<=32-k}else if(v===c)f=32,y=b,b=m,m=0;else{var D=v-c;f=32-D,y=b<<D|m>>>32-D,b=m<<D,m=0}if(s>>>=0,y>>>=0,s>y)return g.__absoluteGreater(_);if(s<y)return g.__absoluteLess(_);for(var p=a-2;0<=p;p--){0<f?(f-=30,y=b>>>2,b=b<<30|m>>>2,m<<=30):y=0;var B=e.__unsignedDigit(p);if(B>y)return g.__absoluteGreater(_);if(B<y)return g.__absoluteLess(_)}if(0!==b||0!==m){if(0===f)throw new Error("implementation bug");return g.__absoluteLess(_)}return 0}},{key:"__equalToNumber",value:function _(e,i){return g.__isOneDigitInt(i)?0===i?0===e.length:1===e.length&&e.sign===0>i&&e.__unsignedDigit(0)===t(i):0===g.__compareToDouble(e,i)}},{key:"__comparisonResultToBool",value:function i(e,t){return 0===t?0>e:1===t?0>=e:2===t?0<e:3===t?0<=e:void 0}},{key:"__compare",value:function _(e,t,i){if(e=g.__toPrimitive(e),t=g.__toPrimitive(t),"string"==typeof e&&"string"==typeof t)switch(i){case 0:return e<t;case 1:return e<=t;case 2:return e>t;case 3:return e>=t}if(g.__isBigInt(e)&&"string"==typeof t)return t=g.__fromString(t),null!==t&&g.__comparisonResultToBool(g.__compareToBigInt(e,t),i);if("string"==typeof e&&g.__isBigInt(t))return e=g.__fromString(e),null!==e&&g.__comparisonResultToBool(g.__compareToBigInt(e,t),i);if(e=g.__toNumeric(e),t=g.__toNumeric(t),g.__isBigInt(e)){if(g.__isBigInt(t))return g.__comparisonResultToBool(g.__compareToBigInt(e,t),i);if("number"!=typeof t)throw new Error("implementation bug");return g.__comparisonResultToBool(g.__compareToNumber(e,t),i)}if("number"!=typeof e)throw new Error("implementation bug");if(g.__isBigInt(t))return g.__comparisonResultToBool(g.__compareToNumber(t,e),2^i);if("number"!=typeof t)throw new Error("implementation bug");return 0===i?e<t:1===i?e<=t:2===i?e>t:3===i?e>=t:void 0}},{key:"__absoluteAdd",value:function n(e,t,_){if(e.length<t.length)return g.__absoluteAdd(t,e,_);if(0===e.length)return e;if(0===t.length)return e.sign===_?e:g.unaryMinus(e);var o=e.length;(0===e.__clzmsd()||t.length===e.length&&0===t.__clzmsd())&&o++;for(var l,a=new g(o,_),s=0,u=0;u<t.length;u++)l=e.__digit(u)+t.__digit(u)+s,s=l>>>30,a.__setDigit(u,1073741823&l);for(;u<e.length;u++){var d=e.__digit(u)+s;s=d>>>30,a.__setDigit(u,1073741823&d)}return u<a.length&&a.__setDigit(u,s),a.__trim()}},{key:"__absoluteSub",value:function n(e,t,_){if(0===e.length)return e;if(0===t.length)return e.sign===_?e:g.unaryMinus(e);for(var o,l=new g(e.length,_),a=0,s=0;s<t.length;s++)o=e.__digit(s)-t.__digit(s)-a,a=1&o>>>30,l.__setDigit(s,1073741823&o);for(;s<e.length;s++){var u=e.__digit(s)-a;a=1&u>>>30,l.__setDigit(s,1073741823&u)}return l.__trim()}},{key:"__absoluteAddOne",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,o=e.length;null===n?n=new g(o,t):n.sign=t;for(var l,a=1,s=0;s<o;s++)l=e.__digit(s)+a,a=l>>>30,n.__setDigit(s,1073741823&l);return 0!==a&&n.__setDigitGrow(o,1),n}},{key:"__absoluteSubOne",value:function _(e,t){var n=e.length;t=t||n;for(var o,l=new g(t,!1),a=1,s=0;s<n;s++)o=e.__digit(s)-a,a=1&o>>>30,l.__setDigit(s,1073741823&o);if(0!==a)throw new Error("implementation bug");for(var u=n;u<t;u++)l.__setDigit(u,0);return l}},{key:"__absoluteAnd",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,o=e.length,l=t.length,a=l;if(o<l){a=o;var s=e,u=o;e=t,o=l,t=s,l=u}var r=a;null===n?n=new g(r,!1):r=n.length;for(var d=0;d<a;d++)n.__setDigit(d,e.__digit(d)&t.__digit(d));for(;d<r;d++)n.__setDigit(d,0);return n}},{key:"__absoluteAndNot",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,o=e.length,l=t.length,a=l;o<l&&(a=o);var s=o;null===n?n=new g(s,!1):s=n.length;for(var u=0;u<a;u++)n.__setDigit(u,e.__digit(u)&~t.__digit(u));for(;u<o;u++)n.__setDigit(u,e.__digit(u));for(;u<s;u++)n.__setDigit(u,0);return n}},{key:"__absoluteOr",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,o=e.length,l=t.length,a=l;if(o<l){a=o;var s=e,u=o;e=t,o=l,t=s,l=u}var r=o;null===n?n=new g(r,!1):r=n.length;for(var d=0;d<a;d++)n.__setDigit(d,e.__digit(d)|t.__digit(d));for(;d<o;d++)n.__setDigit(d,e.__digit(d));for(;d<r;d++)n.__setDigit(d,0);return n}},{key:"__absoluteXor",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,o=e.length,l=t.length,a=l;if(o<l){a=o;var s=e,u=o;e=t,o=l,t=s,l=u}var r=o;null===n?n=new g(r,!1):r=n.length;for(var d=0;d<a;d++)n.__setDigit(d,e.__digit(d)^t.__digit(d));for(;d<o;d++)n.__setDigit(d,e.__digit(d));for(;d<r;d++)n.__setDigit(d,0);return n}},{key:"__absoluteCompare",value:function _(e,t){var n=e.length-t.length;if(0!=n)return n;for(var o=e.length-1;0<=o&&e.__digit(o)===t.__digit(o);)o--;return 0>o?0:e.__unsignedDigit(o)>t.__unsignedDigit(o)?1:-1}},{key:"__multiplyAccumulate",value:function o(e,t,_,n){if(0!==t){for(var l=32767&t,a=t>>>15,s=0,u=0,r=0;r<e.length;r++,n++){var d=_.__digit(n),h=e.__digit(r),b=32767&h,m=h>>>15,c=g.__imul(b,l),v=g.__imul(b,a),y=g.__imul(m,l),f=g.__imul(m,a);d+=u+c+s,s=d>>>30,d&=1073741823,d+=((32767&v)<<15)+((32767&y)<<15),s+=d>>>30,u=f+(v>>>15)+(y>>>15),_.__setDigit(n,1073741823&d)}for(;0!==s||0!==u;n++){var k=_.__digit(n);k+=s+u,u=0,s=k>>>30,_.__setDigit(n,1073741823&k)}}}},{key:"__internalMultiplyAdd",value:function a(e,t,_,o,l){for(var s=_,u=0,d=0;d<o;d++){var h=e.__digit(d),b=g.__imul(32767&h,t),m=g.__imul(h>>>15,t),c=b+((32767&m)<<15)+u+s;s=c>>>30,u=m>>>15,l.__setDigit(d,1073741823&c)}if(l.length>o)for(l.__setDigit(o++,s+u);o<l.length;)l.__setDigit(o++,0);else if(0!==s+u)throw new Error("implementation bug")}},{key:"__absoluteDivSmall",value:function _(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;null===n&&(n=new g(e.length,!1));for(var o=0,l=2*e.length-1;0<=l;l-=2){var a=(o<<15|e.__halfDigit(l))>>>0,s=0|a/t;o=0|a%t,a=(o<<15|e.__halfDigit(l-1))>>>0;var u=0|a/t;o=0|a%t,n.__setDigit(l>>>1,s<<15|u)}return n}},{key:"__absoluteModSmall",value:function _(e,t){for(var n,o=0,l=2*e.length-1;0<=l;l--)n=(o<<15|e.__halfDigit(l))>>>0,o=0|n%t;return o}},{key:"__absoluteDivLarge",value:function o(e,t,i,_){var l=t.__halfDigitLength(),n=t.length,a=e.__halfDigitLength()-l,s=null;i&&(s=new g(a+2>>>1,!1),s.__initializeDigits());var r=new g(l+2>>>1,!1);r.__initializeDigits();var d=g.__clz15(t.__halfDigit(l-1));0<d&&(t=g.__specialLeftShift(t,d,0));for(var h=g.__specialLeftShift(e,d,1),u=t.__halfDigit(l-1),b=0,m=a;0<=m;m--){var v=32767,y=h.__halfDigit(m+l);if(y!==u){var f=(y<<15|h.__halfDigit(m+l-1))>>>0;v=0|f/u;for(var k=0|f%u,D=t.__halfDigit(l-2),p=h.__halfDigit(m+l-2);g.__imul(v,D)>>>0>(k<<16|p)>>>0&&(v--,k+=u,!(32767<k)););}g.__internalMultiplyAdd(t,v,0,n,r);var B=h.__inplaceSub(r,m,l+1);0!==B&&(B=h.__inplaceAdd(t,m,l),h.__setHalfDigit(m+l,32767&h.__halfDigit(m+l)+B),v--),i&&(1&m?b=v<<15:s.__setDigit(m>>>1,b|v))}if(_)return h.__inplaceRightShift(d),i?{quotient:s,remainder:h}:h;if(i)return s;throw new Error("unreachable")}},{key:"__clz15",value:function t(e){return g.__clz30(e)-15}},{key:"__specialLeftShift",value:function o(e,t,_){var l=e.length,n=l+_,a=new g(n,!1);if(0===t){for(var s=0;s<l;s++)a.__setDigit(s,e.__digit(s));return 0<_&&a.__setDigit(l,0),a}for(var u,r=0,h=0;h<l;h++)u=e.__digit(h),a.__setDigit(h,1073741823&u<<t|r),r=u>>>30-t;return 0<_&&a.__setDigit(l,r),a}},{key:"__leftShiftByAbsolute",value:function _(e,t){var n=g.__toShiftAmount(t);if(0>n)throw new RangeError("BigInt too big");var o=0|n/30,l=n%30,a=e.length,s=0!==l&&0!=e.__digit(a-1)>>>30-l,u=a+o+(s?1:0),r=new g(u,e.sign);if(0===l){for(var h=0;h<o;h++)r.__setDigit(h,0);for(;h<u;h++)r.__setDigit(h,e.__digit(h-o))}else{for(var b=0,m=0;m<o;m++)r.__setDigit(m,0);for(var c,v=0;v<a;v++)c=e.__digit(v),r.__setDigit(v+o,1073741823&c<<l|b),b=c>>>30-l;if(s)r.__setDigit(a+o,b);else if(0!==b)throw new Error("implementation bug")}return r.__trim()}},{key:"__rightShiftByAbsolute",value:function _(e,t){var n=e.length,o=e.sign,l=g.__toShiftAmount(t);if(0>l)return g.__rightShiftByMaximum(o);var a=0|l/30,s=l%30,u=n-a;if(0>=u)return g.__rightShiftByMaximum(o);var r=!1;if(o){var h=(1<<s)-1;if(0!=(e.__digit(a)&h))r=!0;else for(var b=0;b<a;b++)if(0!==e.__digit(b)){r=!0;break}}if(r&&0===s){var m=e.__digit(n-1),c=0==~m;c&&u++}var v=new g(u,o);if(0===s){v.__setDigit(u-1,0);for(var y=a;y<n;y++)v.__setDigit(y-a,e.__digit(y))}else{for(var f,k=e.__digit(a)>>>s,D=n-a-1,p=0;p<D;p++)f=e.__digit(p+a+1),v.__setDigit(p,1073741823&f<<30-s|k),k=f>>>s;v.__setDigit(D,k)}return r&&(v=g.__absoluteAddOne(v,!0,v)),v.__trim()}},{key:"__rightShiftByMaximum",value:function t(e){return e?g.__oneDigit(1,!0):g.__zero()}},{key:"__toShiftAmount",value:function t(e){if(1<e.length)return-1;var i=e.__unsignedDigit(0);return i>g.__kMaxLengthBits?-1:i}},{key:"__toPrimitive",value:function t(e){var i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"default";if("object"!==p(e))return e;if(e.constructor===g)return e;if("undefined"!=typeof Symbol&&"symbol"===p(Symbol.toPrimitive)&&e[Symbol.toPrimitive]){var _=e[Symbol.toPrimitive](i);if("object"!==p(_))return _;throw new TypeError("Cannot convert object to primitive value")}var n=e.valueOf;if(n){var o=n.call(e);if("object"!==p(o))return o}var l=e.toString;if(l){var a=l.call(e);if("object"!==p(a))return a}throw new TypeError("Cannot convert object to primitive value")}},{key:"__toNumeric",value:function t(e){return g.__isBigInt(e)?e:+e}},{key:"__isBigInt",value:function t(e){return"object"===p(e)&&null!==e&&e.constructor===g}},{key:"__truncateToNBits",value:function _(e,t){for(var n=0|(e+29)/30,o=new g(n,t.sign),l=n-1,a=0;a<l;a++)o.__setDigit(a,t.__digit(a));var s=t.__digit(l);if(0!=e%30){var u=32-e%30;s=s<<u>>>u}return o.__setDigit(l,s),o.__trim()}},{key:"__truncateAndSubFromPowerOfTwo",value:function n(e,t,_){for(var o=Math.min,l,a=0|(e+29)/30,s=new g(a,_),u=0,d=a-1,h=0,b=o(d,t.length);u<b;u++)l=0-t.__digit(u)-h,h=1&l>>>30,s.__setDigit(u,1073741823&l);for(;u<d;u++)s.__setDigit(u,0|1073741823&-h);var m,c=d<t.length?t.__digit(d):0,v=e%30;if(0===v)m=0-c-h,m&=1073741823;else{var y=32-v;c=c<<y>>>y;var f=1<<32-y;m=f-c-h,m&=f-1}return s.__setDigit(d,m),s.__trim()}},{key:"__digitPow",value:function i(e,t){for(var _=1;0<t;)1&t&&(_*=e),t>>>=1,e*=e;return _}},{key:"__detectBigEndian",value:function e(){return g.__kBitConversionDouble[0]=-0,0!==g.__kBitConversionInts[0]}},{key:"__isOneDigitInt",value:function t(e){return(1073741823&e)===e}}])}(S(Array));return C.__kMaxLength=33554432,C.__kMaxLengthBits=C.__kMaxLength<<5,C.__kMaxBitsPerChar=[0,0,32,51,64,75,83,90,96,102,107,111,115,119,122,126,128,131,134,136,139,141,143,145,147,149,151,153,154,156,158,159,160,162,163,165,166],C.__kBitsPerCharTableShift=5,C.__kBitsPerCharTableMultiplier=1<<C.__kBitsPerCharTableShift,C.__kConversionChars=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],C.__kBitConversionBuffer=new ArrayBuffer(8),C.__kBitConversionDouble=new Float64Array(C.__kBitConversionBuffer),C.__kBitConversionInts=new Int32Array(C.__kBitConversionBuffer),C.__kBitConversionIntHigh=C.__detectBigEndian()?0:1,C.__kBitConversionIntLow=C.__detectBigEndian()?1:0,C.__clz30=t?function(e){return t(e)-2}:function(e){var t=Math.LN2,i=Math.log;return 0===e?30:0|29-(0|i(e>>>0)/t)},C.__imul=e||function(e,t){return 0|e*t},C});
2
+ //# sourceMappingURL=jsbi-umd.js.map