@lombard.finance/sdk 2.5.2 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/README.md +428 -399
  2. package/dist/ccip.cjs +2 -0
  3. package/dist/ccip.cjs.map +1 -0
  4. package/dist/ccip.js +147 -0
  5. package/dist/ccip.js.map +1 -0
  6. package/dist/index.cjs +1 -1
  7. package/dist/index.cjs.map +1 -1
  8. package/dist/index.js +68 -8269
  9. package/dist/index.js.map +1 -1
  10. package/dist/index2.cjs +53 -0
  11. package/dist/index2.cjs.map +1 -0
  12. package/dist/index2.js +21672 -0
  13. package/dist/index2.js.map +1 -0
  14. package/package.json +5 -5
  15. package/src/{sdk → api-functions}/generateDepositBtcAddress/generateDepositBtcAddress.stories.tsx +15 -14
  16. package/src/{sdk → api-functions}/generateDepositBtcAddress/generateDepositBtcAddress.ts +18 -8
  17. package/src/{sdk → api-functions}/getDepositBtcAddress/getDepositBtcAddress.stories.tsx +15 -14
  18. package/src/{sdk → api-functions}/getDepositBtcAddress/getDepositBtcAddress.ts +16 -7
  19. package/src/{sdk → api-functions}/getDepositBtcAddress/getDepositBtcAddresses.stories.tsx +15 -14
  20. package/src/{sdk → api-functions}/getDepositsByAddress/getDepositsByAddress.stories.tsx +13 -12
  21. package/src/{sdk → api-functions}/getDepositsByAddress/getDepositsByAddress.ts +8 -8
  22. package/src/{sdk → api-functions}/getLBTCExchangeRate/getLBTCExchangeRate.stories.tsx +16 -10
  23. package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.ts +71 -0
  24. package/src/api-functions/getNetworkFeeSignature/getNetworkFeeSignature.stories.tsx +56 -0
  25. package/src/{sdk → api-functions}/getNetworkFeeSignature/getNetworkFeeSignature.ts +11 -5
  26. package/src/{sdk → api-functions}/getPointsByAddress/getPointsByAddress.stories.tsx +14 -13
  27. package/src/{sdk → api-functions}/getPointsByAddress/getPointsByAddress.ts +7 -4
  28. package/src/{sdk → api-functions}/getUnstakesByAddress/getUnstakesByAddress.stories.tsx +14 -13
  29. package/src/{sdk → api-functions}/getUnstakesByAddress/getUnstakesByAddress.ts +14 -9
  30. package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.stories.tsx +61 -0
  31. package/src/{sdk → api-functions}/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts +10 -6
  32. package/src/{sdk → api-functions}/index.ts +0 -3
  33. package/src/{sdk → api-functions}/setReferral/setReferral.ts +3 -3
  34. package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.stories.tsx +56 -0
  35. package/src/{sdk → api-functions}/storeNetworkFeeSignature/storeNetworkFeeSignature.ts +9 -7
  36. package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.stories.tsx +56 -0
  37. package/src/{sdk → api-functions}/storeStakeAndBakeSignature/storeStakeAndBakeSignature.ts +8 -6
  38. package/src/clients/public-client.ts +32 -0
  39. package/src/clients/rpc-url-config.ts +20 -0
  40. package/src/clients/wallet-client.ts +33 -0
  41. package/src/{sdk/apiConfig.ts → common/api-config.ts} +2 -2
  42. package/src/common/blockchain-identifier.ts +107 -0
  43. package/src/common/chains.ts +72 -0
  44. package/src/common/parameters.ts +51 -0
  45. package/src/contract-functions/approveLBTC/approveLBTC.stories.tsx +76 -0
  46. package/src/contract-functions/approveLBTC/approveLBTC.ts +64 -0
  47. package/src/{web3Sdk → contract-functions}/claimLBTC/claimLBTC.stories.tsx +22 -30
  48. package/src/contract-functions/claimLBTC/claimLBTC.ts +89 -0
  49. package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.stories.tsx +50 -0
  50. package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.ts +121 -0
  51. package/src/{web3Sdk → contract-functions}/getLBTCMintingFee/getLBTCMintingFee.stories.tsx +15 -11
  52. package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.tsx +34 -0
  53. package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.stories.tsx +49 -0
  54. package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.ts +30 -0
  55. package/src/{web3Sdk → contract-functions}/getPermitNonce/getPermitNonce.stories.tsx +12 -22
  56. package/src/contract-functions/getPermitNonce/getPermitNonce.ts +39 -0
  57. package/src/{web3Sdk → contract-functions}/getShareValue/getShareValue.stories.tsx +11 -6
  58. package/src/contract-functions/getShareValue/getShareValue.ts +58 -0
  59. package/src/{web3Sdk → contract-functions}/getSharesByAddress/getSharesByAddress.stories.tsx +13 -8
  60. package/src/{web3Sdk → contract-functions}/getSharesByAddress/getSharesByAddress.ts +29 -28
  61. package/src/{web3Sdk → contract-functions}/getStakeAndBakeFee/getStakeAndBakeFee.stories.tsx +16 -16
  62. package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.tsx +61 -0
  63. package/src/{web3Sdk → contract-functions}/index.ts +8 -7
  64. package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestinationAddr.ts +32 -0
  65. package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestionationAddr.stories.tsx +63 -0
  66. package/src/contract-functions/signNetworkFee/signNetworkFee.stories.tsx +91 -0
  67. package/src/contract-functions/signNetworkFee/signNetworkFee.ts +98 -0
  68. package/src/contract-functions/signStakeAndBake/index.ts +1 -0
  69. package/src/{web3Sdk → contract-functions}/signStakeAndBake/signStakeAndBake.stories.tsx +27 -40
  70. package/src/contract-functions/signStakeAndBake/signStakeAndBake.ts +140 -0
  71. package/src/contract-functions/unstakeLBTC/unstakeLBTC.stories.tsx +80 -0
  72. package/src/contract-functions/unstakeLBTC/unstakeLBTC.ts +65 -0
  73. package/src/index.ts +35 -10
  74. package/src/rewards/index.ts +26 -0
  75. package/src/rewards/lib/claim-reward.stories.tsx +82 -0
  76. package/src/rewards/lib/claim-reward.ts +84 -0
  77. package/src/rewards/lib/get-reward-balances.stories.tsx +64 -0
  78. package/src/rewards/lib/get-reward-balances.ts +81 -0
  79. package/src/rewards/lib/get-reward-signing-data.stories.tsx +76 -0
  80. package/src/rewards/lib/get-reward-signing-data.ts +52 -0
  81. package/src/rewards/lib/get-reward-withdrawal-fee.stories.tsx +61 -0
  82. package/src/rewards/lib/get-reward-withdrawal-fee.ts +37 -0
  83. package/src/rewards/lib/get-reward-withdrawals.stories.tsx +60 -0
  84. package/src/rewards/lib/get-reward-withdrawals.ts +92 -0
  85. package/src/rewards/lib/reward-tokens.ts +7 -0
  86. package/src/stories/components/Button/Button.css +10 -0
  87. package/src/stories/components/Button/Button.tsx +15 -4
  88. package/src/stories/components/CodeBlock/CodeBlock.tsx +1 -0
  89. package/src/stories/components/ConnectButton/connect-button.tsx +100 -0
  90. package/src/stories/components/ConnectButton/index.ts +1 -0
  91. package/src/stories/components/decorators/function-type.tsx +63 -0
  92. package/src/stories/components/decorators/index.ts +2 -0
  93. package/src/stories/components/decorators/wagmi-decorator.tsx +79 -0
  94. package/src/stories/components/error-block.tsx +21 -0
  95. package/src/stories/constants.ts +3 -0
  96. package/src/stories/hooks/useConnection.ts +72 -0
  97. package/src/stories/hooks/useQuery.ts +2 -2
  98. package/src/tokens/abi/LBTC_ABI.json +1761 -0
  99. package/src/tokens/abi/LBTC_BASCULE_ABI.json +850 -0
  100. package/src/tokens/lbtc-addresses.ts +54 -0
  101. package/src/tokens/lbtc-contract.ts +89 -0
  102. package/src/tokens/tokens.ts +111 -0
  103. package/src/utils/env.ts +12 -0
  104. package/src/utils/hex.ts +2 -2
  105. package/src/utils/numbers.ts +5 -0
  106. package/src/{common/utils/convertSatoshi.ts → utils/satoshi.ts} +3 -3
  107. package/src/utils/time.ts +12 -0
  108. package/src/vaults/abi/VEDA_VAULT_BASE_ASSET_ABI.json +296 -0
  109. package/src/vaults/abi/VEDA_VAULT_BORING_WITHDRAW_QUEUE_ABI.json +502 -0
  110. package/src/vaults/abi/VEDA_VAULT_SPENDER_ABI.json +408 -0
  111. package/src/vaults/abi/VEDA_VAULT_TELLER_ABI.json +700 -0
  112. package/src/vaults/index.ts +144 -36
  113. package/src/vaults/lib/cancel-withdraw.stories.tsx +79 -0
  114. package/src/vaults/lib/deposit.stories.tsx +81 -0
  115. package/src/vaults/lib/deposit.ts +151 -0
  116. package/src/vaults/lib/get-vault-deposits.stories.tsx +15 -9
  117. package/src/vaults/lib/get-vault-deposits.ts +45 -22
  118. package/src/vaults/lib/get-vault-points.stories.tsx +13 -6
  119. package/src/vaults/lib/get-vault-points.ts +14 -10
  120. package/src/vaults/lib/get-vault-withdrawals.stories.tsx +15 -8
  121. package/src/vaults/lib/get-vault-withdrawals.ts +72 -38
  122. package/src/vaults/lib/withdraw.stories.tsx +81 -0
  123. package/src/vaults/lib/withdraw.ts +224 -0
  124. package/src/common/const.ts +0 -5
  125. package/src/common/types/internalTypes.ts +0 -10
  126. package/src/common/types/types.ts +0 -57
  127. package/src/common/utils/isValidChain.ts +0 -5
  128. package/src/provider/Provider.ts +0 -171
  129. package/src/provider/ReadProvider.ts +0 -126
  130. package/src/provider/index.ts +0 -2
  131. package/src/provider/rpcUrlConfig.ts +0 -19
  132. package/src/provider/types.ts +0 -58
  133. package/src/provider/utils/getMaxPriorityFeePerGas.ts +0 -25
  134. package/src/sdk/getLBTCExchangeRate/getLBTCExchangeRate.ts +0 -65
  135. package/src/sdk/getNetworkFeeSignature/getNetworkFeeSignature.stories.tsx +0 -85
  136. package/src/sdk/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.stories.tsx +0 -86
  137. package/src/sdk/internalTypes.ts +0 -18
  138. package/src/sdk/storeNetworkFeeSignature/storeNetworkFeeSignature.stories.tsx +0 -86
  139. package/src/sdk/storeStakeAndBakeSignature/storeStakeAndBakeSignature.stories.tsx +0 -116
  140. package/src/sdk/utils/getChainIdByName.ts +0 -48
  141. package/src/sdk/utils/getChainNameById.ts +0 -41
  142. package/src/stories/const.ts +0 -1
  143. package/src/stories/hooks/useConnect.ts +0 -47
  144. package/src/stories/utils/connectInjectedWallet.ts +0 -12
  145. package/src/stories/utils/fromCamelCase.ts +0 -16
  146. package/src/stories/utils/getMetaTitle.ts +0 -7
  147. package/src/stories/utils/getWalletInfo.ts +0 -31
  148. package/src/web3Sdk/abi/BASCULE.json +0 -850
  149. package/src/web3Sdk/abi/IERC20.json +0 -222
  150. package/src/web3Sdk/abi/LBTC.json +0 -1761
  151. package/src/web3Sdk/abi/STAKE_AND_BAKE.json +0 -15
  152. package/src/web3Sdk/abi/index.ts +0 -6
  153. package/src/web3Sdk/approveLBTC/approveLBTC.stories.tsx +0 -77
  154. package/src/web3Sdk/approveLBTC/approveLBTC.ts +0 -48
  155. package/src/web3Sdk/claimLBTC/claimLBTC.ts +0 -86
  156. package/src/web3Sdk/const.ts +0 -2
  157. package/src/web3Sdk/getBasculeDepositStatus/getBasculeDepositStatus.stories.tsx +0 -89
  158. package/src/web3Sdk/getBasculeDepositStatus/getBasculeDepositStatus.ts +0 -75
  159. package/src/web3Sdk/getBasculeDepositStatus/utils/const.ts +0 -8
  160. package/src/web3Sdk/getBasculeDepositStatus/utils/throwBasculeDepositStatusError.ts +0 -21
  161. package/src/web3Sdk/getLBTCMintingFee/getLBTCMintingFee.tsx +0 -41
  162. package/src/web3Sdk/getLBTCTotalSupply/getLBTCTotalSupply.stories.tsx +0 -60
  163. package/src/web3Sdk/getLBTCTotalSupply/getLBTCTotalSupply.ts +0 -26
  164. package/src/web3Sdk/getPermitNonce/getPermitNonce.ts +0 -47
  165. package/src/web3Sdk/getShareValue/getShareValue.ts +0 -58
  166. package/src/web3Sdk/getStakeAndBakeFee/getStakeAndBakeFee.tsx +0 -48
  167. package/src/web3Sdk/lbtcAddressConfig.ts +0 -96
  168. package/src/web3Sdk/signLbtcDestionationAddr/signLbtcDestinationAddr.ts +0 -23
  169. package/src/web3Sdk/signLbtcDestionationAddr/signLbtcDestionationAddr.stories.tsx +0 -97
  170. package/src/web3Sdk/signNetworkFee/signNetworkFee.stories.tsx +0 -91
  171. package/src/web3Sdk/signNetworkFee/signNetworkFee.ts +0 -92
  172. package/src/web3Sdk/signStakeAndBake/contracts.ts +0 -80
  173. package/src/web3Sdk/signStakeAndBake/getTypedData.ts +0 -78
  174. package/src/web3Sdk/signStakeAndBake/index.ts +0 -3
  175. package/src/web3Sdk/signStakeAndBake/signStakeAndBake.ts +0 -105
  176. package/src/web3Sdk/signStakeAndBake/utils.ts +0 -23
  177. package/src/web3Sdk/types.ts +0 -16
  178. package/src/web3Sdk/unstakeLBTC/unstakeLBTC.stories.tsx +0 -77
  179. package/src/web3Sdk/unstakeLBTC/unstakeLBTC.ts +0 -51
  180. package/src/web3Sdk/utils/chainIdToEnv.ts +0 -12
  181. package/src/web3Sdk/utils/getBasculeTokenContract.ts +0 -21
  182. package/src/web3Sdk/utils/getGasMultiplier.ts +0 -20
  183. package/src/web3Sdk/utils/getLbtcTokenContract.ts +0 -36
  184. package/src/web3Sdk/utils/getRpcUrlConfigFromChain.ts +0 -34
  185. package/src/web3Sdk/utils/getTokenABI.ts +0 -12
  186. /package/src/{sdk → api-functions}/generateDepositBtcAddress/index.ts +0 -0
  187. /package/src/{sdk → api-functions}/getDepositBtcAddress/index.ts +0 -0
  188. /package/src/{sdk → api-functions}/getDepositsByAddress/index.ts +0 -0
  189. /package/src/{sdk → api-functions}/getLBTCExchangeRate/index.ts +0 -0
  190. /package/src/{sdk → api-functions}/getNetworkFeeSignature/index.ts +0 -0
  191. /package/src/{sdk → api-functions}/getPointsByAddress/index.ts +0 -0
  192. /package/src/{sdk → api-functions}/getUnstakesByAddress/index.ts +0 -0
  193. /package/src/{sdk → api-functions}/getUserStakeAndBakeSignature/index.ts +0 -0
  194. /package/src/{sdk → api-functions}/setReferral/index.ts +0 -0
  195. /package/src/{sdk → api-functions}/storeNetworkFeeSignature/index.ts +0 -0
  196. /package/src/{sdk → api-functions}/storeStakeAndBakeSignature/index.ts +0 -0
  197. /package/src/{sdk/const.ts → common/constants.ts} +0 -0
  198. /package/src/{web3Sdk → contract-functions}/approveLBTC/index.ts +0 -0
  199. /package/src/{web3Sdk → contract-functions}/claimLBTC/index.ts +0 -0
  200. /package/src/{web3Sdk → contract-functions}/getBasculeDepositStatus/index.ts +0 -0
  201. /package/src/{web3Sdk → contract-functions}/getLBTCMintingFee/index.ts +0 -0
  202. /package/src/{web3Sdk → contract-functions}/getLBTCTotalSupply/index.ts +0 -0
  203. /package/src/{web3Sdk → contract-functions}/getPermitNonce/index.ts +0 -0
  204. /package/src/{web3Sdk → contract-functions}/getShareValue/index.ts +0 -0
  205. /package/src/{web3Sdk → contract-functions}/getSharesByAddress/index.ts +0 -0
  206. /package/src/{web3Sdk → contract-functions}/getStakeAndBakeFee/index.ts +0 -0
  207. /package/src/{web3Sdk → contract-functions}/signLbtcDestionationAddr/index.ts +0 -0
  208. /package/src/{web3Sdk → contract-functions}/signNetworkFee/getTypedData.ts +0 -0
  209. /package/src/{web3Sdk → contract-functions}/signNetworkFee/index.ts +0 -0
  210. /package/src/{web3Sdk → contract-functions}/unstakeLBTC/index.ts +0 -0
  211. /package/src/{common/utils/getErrorMessage.ts → utils/err.ts} +0 -0
@@ -0,0 +1,53 @@
1
+ "use strict";const pe=require("axios"),s2=require("bitcoinjs-lib"),re=require("bignumber.js");function ze(p){return typeof p=="string"?p:(u=>{var v;return!!(u&&typeof u=="object"&&"data"in u&&u.data&&typeof u.data=="object"&&"message"in u.data&&((v=u==null?void 0:u.data)!=null&&v.message)&&typeof u.data.message=="string")})(p)?p.data.message:p instanceof Error?Du(p):Fu(p)}function Du(p){return p.response?p.response.data.message:p.message}function Fu(p){return p&&typeof p=="object"&&"message"in p&&typeof p.message=="string"?p.message:"Unknown error"}const Lo="0123456789abcdefABCDEF";Lo.split("").map(p=>p.codePointAt(0));Array(256).fill(!0).map((p,m)=>{const u=String.fromCodePoint(m),v=Lo.indexOf(u);return v<0?void 0:v<16?v:v-6});new TextEncoder;new TextDecoder("ascii");function zu(p,m){const u=Math.min(p.length,m.length);for(let v=0;v<u;++v)if(p[v]!==m[v])return p[v]<m[v]?-1:1;return p.length===m.length?0:p.length>m.length?1:-1}const gs=0,Dr=1,ws=2,Ts=3,K2=4,vs=5,As=6,xs=7,Hu={[gs.toString()]:"Expected Private",[Dr.toString()]:"Expected Point",[ws.toString()]:"Expected Tweak",[Ts.toString()]:"Expected Hash",[K2.toString()]:"Expected Signature",[vs.toString()]:"Expected Extra Data (32 bytes)",[As.toString()]:"Expected Parity (1 | 0)",[xs.toString()]:"Bad Recovery Id"};function Xe(p){const m=Hu[p.toString()]||`Unknow error code: ${p}`;throw new TypeError(m)}const Vu=Object.freeze(Object.defineProperty({__proto__:null,ERROR_BAD_EXTRA_DATA:vs,ERROR_BAD_HASH:Ts,ERROR_BAD_PARITY:As,ERROR_BAD_POINT:Dr,ERROR_BAD_PRIVATE:gs,ERROR_BAD_RECOVERY_ID:xs,ERROR_BAD_SIGNATURE:K2,ERROR_BAD_TWEAK:ws,throwError:Xe},Symbol.toStringTag,{value:"Module"})),Xn=32,In=33,Qn=65,d2=32,Do=32,Fo=32,zo=32,Fr=64,Ho=new Uint8Array(32),Rr=new Uint8Array([255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,186,174,220,230,175,72,160,59,191,210,94,140,208,54,65,65]),ju=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,69,81,35,25,80,183,95,196,64,45,161,114,47,201,186,238]);function Mt(p){return p instanceof Uint8Array}function P2(p,m){for(let u=0;u<32;++u)if(p[u]!==m[u])return p[u]<m[u]?-1:1;return 0}function Da(p){return P2(p,Ho)===0}function Vo(p){return Mt(p)&&p.length===Xn&&P2(p,Ho)>0&&P2(p,Rr)<0}function qu(p){return Mt(p)&&(p.length===In||p.length===Qn||p.length===d2)}function jo(p){return Mt(p)&&p.length===d2}function Gu(p){return Mt(p)&&(p.length===In||p.length===Qn)}function Wu(p){return Mt(p)&&p.length===In}function Zu(p){return Mt(p)&&p.length===Do&&P2(p,Rr)<0}function Yu(p){return Mt(p)&&p.length===Fo}function Ku(p){return p===void 0||Mt(p)&&p.length===zo}function Xu(p){return Mt(p)&&p.length===64&&P2(p.subarray(0,32),Rr)<0&&P2(p.subarray(32,64),Rr)<0}function Qu(p){return Mt(p)&&p.length===64&&P2(p.subarray(0,32),ju)<0}function Ju(p){p!==0&&p!==1&&Xe(As)}function l2(p){Vo(p)||Xe(gs)}function k2(p){qu(p)||Xe(Dr)}function Nr(p){jo(p)||Xe(Dr)}function an(p){Zu(p)||Xe(ws)}function sn(p){Yu(p)||Xe(Ts)}function Es(p){Ku(p)||Xe(vs)}function Ps(p){Xu(p)||Xe(K2)}function _u(p){p()||Xe(K2)}function $u(p){Da(p.subarray(0,32))&&Xe(K2),Da(p.subarray(32,64))&&Xe(K2)}function ec(p){Qu(p)||Xe(xs)}function tc(){const p=new Uint8Array(4);if(typeof crypto>"u")throw new Error("The crypto object is unavailable. This may occur if your environment does not support the Web Cryptography API.");return crypto.getRandomValues(p),p}function nc(){const p=tc();return(p[0]<<3*8)+(p[1]<<2*8)+(p[2]<<1*8)+p[3]}const rc=Object.freeze(Object.defineProperty({__proto__:null,generateInt32:nc},Symbol.toStringTag,{value:"Module"}));var Ye,qt=new Uint8Array(123);for(var e2=25;e2>=0;--e2)qt[48+e2]=52+e2,qt[65+e2]=e2,qt[97+e2]=26+e2;qt[43]=62;qt[47]=63;function pt(p,m,u){for(var v,t,l=0,B=m,M=u.length,U=m+(M*3>>2)-(u[M-2]=="=")-(u[M-1]=="=");l<M;l+=4)v=qt[u.charCodeAt(l+1)],t=qt[u.charCodeAt(l+2)],p[B++]=qt[u.charCodeAt(l)]<<2|v>>4,B<U&&(p[B++]=v<<4|t>>2),B<U&&(p[B++]=t<<6|qt[u.charCodeAt(l+3)])}function ac(p){pt(Ye,655360,"AQAAAAQAAAAEAAAAAgAAAAEAAAAEAAAABAAAAAM="),pt(Ye,655716,"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"),pt(Ye,689368,"BgAAAAAAAAAG"),pt(Ye,689392,"BgAAAAAAAAByZXQASW52YWxpZCBmbGFncwBzZWxmIHRlc3QgZmFpbGVkAEZvciB0aGlzIHNhbXBsZSwgdGhpcyA2My1ieXRlIHN0cmluZyB3aWxsIGJlIHVzZWQgYXMgaW5wdXQgZGF0YQAoZmxhZ3MgJiBTRUNQMjU2SzFfRkxBR1NfVFlQRV9NQVNLKSA9PSBTRUNQMjU2SzFfRkxBR1NfVFlQRV9DT01QUkVTU0lPTgBzZWNrZXkgIT0gTlVMTAB4b25seV9wdWJrZXkgIT0gTlVMTABvdXRwdXRfcHVia2V5ICE9IE5VTEwAaW50ZXJuYWxfcHVia2V5ICE9IE5VTEwAb3V0cHV0ICE9IE5VTEwAaW5wdXQgIT0gTlVMTABwdWJub25jZXMgIT0gTlVMTABrZXlwYWlyICE9IE5VTEwAc2lnaW4gIT0gTlVMTABvdXRwdXRsZW4gIT0gTlVMTABzaWcgIT0gTlVMTABzaWduYXR1cmUgIT0gTlVMTABwdWJub25jZSAhPSBOVUxMAHJlY2lkICE9IE5VTEwAcHVibm9uY2VzW2ldICE9IE5VTEwAb3V0cHV0NjQgIT0gTlVMTABpbnB1dDY0ICE9IE5VTEwAc2lnNjQgIT0gTlVMTABzZWNrZXkzMiAhPSBOVUxMAHR3ZWFrZWRfcHVia2V5MzIgIT0gTlVMTABvdXRwdXQzMiAhPSBOVUxMAGlucHV0MzIgIT0gTlVMTAB0d2VhazMyICE9IE5VTEwAbXNnaGFzaDMyICE9IE5VTEwAcmVjaWQgPj0gMCAmJiByZWNpZCA8PSAzAG4gPj0gMQBtc2cgIT0gTlVMTCB8fCBtc2dsZW4gPT0gMABydXN0c2VjcDI1NmsxX3YwXzhfMV9lY211bHRfZ2VuX2NvbnRleHRfaXNfYnVpbHQoJmN0eC0+ZWNtdWx0X2dlbl9jdHgpACFydXN0c2VjcDI1NmsxX3YwXzhfMV9mZV9pc196ZXJvKCZnZS0+eCkAKm91dHB1dGxlbiA+PSAoKGZsYWdzICYgU0VDUDI1NksxX0ZMQUdTX0JJVF9DT01QUkVTU0lPTikgPyAzM3UgOiA2NXUpAAAAAAAABgAAAAAAAAAEAAAAAAAAAAE="),pt(Ye,690288,"8Ip4y7ruCCsFKuBwjzL6HlDFxCGqdyul27QGoupr40JBQTbQjF7SP+6AIr2ac7sq6/////////8="),pt(Ye,690353,"AQAAAAAAAMFOd6qZAPI0AAEAAAAAAACYF/gWW4ECAJ+VjeLcsg0A/JsCBwuHDgBcKQZaxboLANz5fma+eQAAuNQQ+4/QBwDEmUFVaIoEALQX/agIEQ4AwL9P2lVGDACjJnfaOkg="),pt(Ye,690464,"L/z///7///8="),pt(Ye,690497,"AQAAAAAAAM/K2i3i9scngA=="),pt(Ye,690576,"w+S/Cql/VG8oiA4B1n5D5A=="),pt(Ye,690608,"LFaxPajNZddtNHQHxQooiv7///////////////////8xsNtFmiCT6H/K6HEUiqo9FeuEkuSQbOjNa9SnIdKGMHF/xIqutHEVxgb1nawIEiLE5L8KqX9UbyiIDgHWfkPkcr0jG3yWAt94ZoEg6iIuElpkEogCHCal4DBcwEytY1NCSVAwMzQwL25vbmNl"),pt(Ye,690752,"MIQK")}function ge(){throw new Error("abort")}function sc(p){var m=new ArrayBuffer(720896),u=new Int8Array(m),v=new Int16Array(m),t=new Int32Array(m),l=new Uint8Array(m),B=new Uint16Array(m),M=Math.imul,U=Math.clz32,F=p["./rand.js"],W=F.generateInt32,G=p["./validate_error.js"],q=G.throwError,D=655360,n0=690820,Q=655584,J=690949,a0=690885,o0=690917,c0=690788,p0=655649,v0=655681,h0=690981,f0=691052,w0=691056,i0=0;function F0(i,r){i=i|0,r=r|0;var a=0,e=0,n=0;n=D-128|0,D=n,i=t[i>>2];t:{e:{n:{r:{if(a=t[r+24>>2],!(a&16)){if(a&32)break r;i=t[i>>2],a=(i|0)>=0,i=S0(a?i:0-i|0,a?0:0-((i>>31)+((i|0)!=0)|0)|0,a,r);break n}for(i=t[i>>2],a=0;e=i&15,u[(a+n|0)+127|0]=e+(e>>>0<10?48:87),a=a-1|0,e=i>>>0>15,i=i>>>4|0,!!e;);if(a+128>>>0>=129)break e;i=N0(r,1,2,(a+n|0)+128|0,0-a|0);break n}for(i=t[i>>2],a=0;e=i&15,u[(a+n|0)+127|0]=e+(e>>>0<10?48:55),a=a-1|0,e=i>>>0>15,i=i>>>4|0,!!e;);if(a+128>>>0>=129)break t;i=N0(r,1,2,(a+n|0)+128|0,0-a|0)}return D=n+128|0,i|0}ge()}ge()}function S0(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0;if(y=D-48|0,D=y,c=39,!(!r&i>>>0<1e4))for(;;){g=(y+9|0)+c|0,w=g-4|0,s=i,f=0,b=0;t:{e:{if(!r){i=(s>>>0)/1e4|0;break e}if(o=51-U(r)|0,n=0-o|0,d=o&63,i=d&31,d>>>0>=32?d=r>>>i|0:(f=r>>>i|0,d=((1<<i)-1&r)<<32-i|s>>>i),n=n&63,i=n&31,n>>>0>=32?(n=s<<i,i=0):(n=(1<<i)-1&s>>>32-i|r<<i,i=s<<i),o)for(;T=f<<1|d>>>31,h=d<<1|n>>>31,A=0-(T+(h>>>0>9999)|0)>>31,f=A&1e4,d=h-f|0,f=T-(f>>>0>h>>>0)|0,n=n<<1|i>>>31,i=i<<1|b,b=A&1,o=o-1|0,!!o;);i0=n<<1|i>>>31,i=i<<1|b;break t}i0=0}if(d=i0,n=I0(i,d,55536,0)+s|0,f=((n&65535)>>>0)/100|0,o=(f<<1)+655718|0,o=l[o|0]|l[o+1|0]<<8,u[w|0]=o,u[w+1|0]=o>>>8,o=g-2|0,n=((M(f,-100)+n&65535)<<1)+655718|0,n=l[n|0]|l[n+1|0]<<8,u[o|0]=n,u[o+1|0]=n>>>8,c=c-4|0,s=!r&s>>>0>99999999|(r|0)!=0,r=d,!s)break}i>>>0>99&&(c=c-2|0,r=c+(y+9|0)|0,d=i,i=((i&65535)>>>0)/100|0,s=((d+M(i,-100)&65535)<<1)+655718|0,s=l[s|0]|l[s+1|0]<<8,u[r|0]=s,u[r+1|0]=s>>>8);t:{if(i>>>0>=10){c=c-2|0,r=c+(y+9|0)|0,i=(i<<1)+655718|0,i=l[i|0]|l[i+1|0]<<8,u[r|0]=i,u[r+1|0]=i>>>8;break t}c=c-1|0,u[c+(y+9|0)|0]=i+48}return i=N0(e,a,0,(y+9|0)+c|0,39-c|0),D=y+48|0,i}function N0(i,r,a,e,n){var s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0;f=655716;t:{if(r){s=t[i+24>>2],r=s&1,y=r?43:1114112,o=r+n|0;break t}s=t[i+24>>2],y=45,o=n+1|0}t:{if(!(s&4)){f=0;break t}e:{if(!a||(c=a&3,!c))break e;for(r=655716;d=d+(u[r|0]>-65)|0,r=r+1|0,c=c-1|0,!!c;);}o=o+d|0}t:{e:{if(!t[i+8>>2]){if(r=1,o=t[i>>2],i=t[i+4>>2],yr(o,i,y,f,a))break e;break t}n:{r:{a:{s:{if(c=t[i+12>>2],c>>>0>o>>>0){if(s&8)break n;switch(s=c-o|0,o=s,r=l[i+32|0],r=(r|0)==3?1:r,r-1|0){case 1:break a;case 0:break s;default:break r}}if(r=1,o=t[i>>2],i=t[i+4>>2],yr(o,i,y,f,a))break e;break t}o=0,r=s;break r}r=s>>>1|0,o=s+1>>>1|0}r=r+1|0,s=t[i+4>>2],d=t[i+28>>2],c=t[i>>2];r:{for(;;){if(r=r-1|0,!r)break r;if(O0[t[s+16>>2]](c,d)|0)break}return 1}if(r=1,(d|0)==1114112||yr(c,s,y,f,a)||O0[t[s+12>>2]](c,e,n)|0)break e;r=0;r:{for(;;){if(i=o,(i|0)==(r|0))break r;if(r=r+1|0,!!(O0[t[s+16>>2]](c,d)|0))break}i=r-1|0}r=i>>>0<o>>>0;break e}if(b=t[i+28>>2],t[i+28>>2]=48,h=l[i+32|0],r=1,u[i+32|0]=1,s=t[i>>2],d=t[i+4>>2],yr(s,d,y,f,a))break e;r=(c-o|0)+1|0;n:{for(;;){if(r=r-1|0,!r)break n;if(O0[t[d+16>>2]](s,48)|0)break}return 1}if(r=1,O0[t[d+12>>2]](s,e,n)|0)break e;return u[i+32|0]=h,t[i+28>>2]=b,0}return r}return O0[t[i+12>>2]](o,e,n)|0}function W0(i,r){i=i|0,r=r|0;var a=0,e=0,n=0;n=D-128|0,D=n,i=t[i>>2];t:{e:{n:{r:{if(a=t[r+24>>2],!(a&16)){if(a&32)break r;i=S0(t[i>>2],0,1,r);break n}for(i=t[i>>2],a=0;e=i&15,u[(a+n|0)+127|0]=e+(e>>>0<10?48:87),a=a-1|0,e=i>>>0>15,i=i>>>4|0,!!e;);if(a+128>>>0>=129)break e;i=N0(r,1,2,(a+n|0)+128|0,0-a|0);break n}for(i=t[i>>2],a=0;e=i&15,u[(a+n|0)+127|0]=e+(e>>>0<10?48:55),a=a-1|0,e=i>>>0>15,i=i>>>4|0,!!e;);if(a+128>>>0>=129)break t;i=N0(r,1,2,(a+n|0)+128|0,0-a|0)}return D=n+128|0,i|0}ge()}ge()}function P0(i){}function A0(i){var r=0,a=0,e=0,n=0,s=0;e=D-32|0,D=e,r=i+16|0,n=t[r+4>>2],a=e+8|0,s=a+16|0,t[s>>2]=t[r>>2],t[s+4>>2]=n,r=i+8|0,n=t[r+4>>2],a=a+8|0,t[a>>2]=t[r>>2],t[a+4>>2]=n,r=t[i+4>>2],t[e+8>>2]=t[i>>2],t[e+12>>2]=r,ge()}function T0(){var i=0,r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0;X=D-32|0,D=X;t:{if(l[690756]){M0=t[172762];break t}for(t[X>>2]=192,t[X+4>>2]=192,i=D-144|0,D=i,t[i+104>>2]=0,t[i+108>>2]=0,t[i+32>>2]=528734635,t[i+36>>2]=1541459225,t[i+24>>2]=1359893119,t[i+28>>2]=-1694144372,t[i+16>>2]=1013904242,t[i+20>>2]=-1521486534,t[i+8>>2]=1779033703,t[i+12>>2]=-1150833019,r=i+8|0,z0(r,689435,63),ye(r,i+112|0);n=l[(i+112|0)+e|0]-l[e+690288|0]|0,!!(!n&&(r=(e|0)!=31,e=e+1|0,r)););n&&mr(689418,0),t[163880]=0,t[163881]=0,t[163878]=1,t[163879]=0,r=t[172349],t[163892]=t[172348],t[163893]=r,r=t[172559],t[163890]=t[172558],t[163891]=r,r=t[172595],t[163858]=t[172594],t[163859]=r,r=t[172597],t[163860]=t[172596],t[163861]=r,r=t[172599],t[163862]=t[172598],t[163863]=r,r=t[172601],t[163864]=t[172600],t[163865]=r,r=t[172603],t[163866]=t[172602],t[163867]=r,t[163882]=0,t[163883]=0,t[163884]=0,t[163885]=0,t[163886]=0,t[163887]=0,t[163888]=0,t[163876]=629725529,t[163877]=243653,t[163874]=632307772,t[163875]=3389866,t[163872]=1459808328,t[163873]=3272439,t[163870]=-1430362568,t[163871]=3896727,t[163868]=82779140,t[163869]=3682156,t[163856]=0,t[163857]=0,t[163850]=1,t[163851]=0,t[163854]=0,t[163855]=0,t[163852]=0,t[163853]=0,t[163894]=0,t[163848]=1,D=i+144|0,M0=655392,E0=690756,k0=W()|0,t[E0>>2]=k0,E0=690760,k0=W()|0,t[E0>>2]=k0,E0=690764,k0=W()|0,t[E0>>2]=k0,E0=690768,k0=W()|0,t[E0>>2]=k0,E0=690772,k0=W()|0,t[E0>>2]=k0,E0=690776,k0=W()|0,t[E0>>2]=k0,E0=690780,k0=W()|0,t[E0>>2]=k0,E0=690784,k0=W()|0,t[E0>>2]=k0,w=D-720|0,D=w,t[163848]&&(i=l[690760]|l[690761]<<8|(l[690762]<<16|l[690763]<<24),h=w+336|0,g=h+32|0,t[g>>2]=l[690756]|l[690757]<<8|(l[690758]<<16|l[690759]<<24),t[g+4>>2]=i,i=l[690768]|l[690769]<<8|(l[690770]<<16|l[690771]<<24),y=h+40|0,t[y>>2]=l[690764]|l[690765]<<8|(l[690766]<<16|l[690767]<<24),t[y+4>>2]=i,i=l[690776]|l[690777]<<8|(l[690778]<<16|l[690779]<<24),c=w+384|0,t[c>>2]=l[690772]|l[690773]<<8|(l[690774]<<16|l[690775]<<24),t[c+4>>2]=i,i=l[690784]|l[690785]<<8|(l[690786]<<16|l[690787]<<24),d=w+392|0,t[d>>2]=l[690780]|l[690781]<<8|(l[690782]<<16|l[690783]<<24),t[d+4>>2]=i,n=t[163850],s=n<<8&16711680|n<<24,a=n>>>8|0,r=t[163851],e=(a|r<<24)&65280,n=n>>>24|0,s=s|(e|(n|r<<8)&255),i=r,e=(a|(i&255)<<24)&-16777216,e=e|(n|(i&16777215)<<8)&16711680,f=h+24|0,t[f>>2]=i>>>8&65280|i>>>24|e,t[f+4>>2]=s,n=t[163852],s=n<<8&16711680|n<<24,r=t[163853],e=(r<<24|n>>>8)&65280,s=s|(e|(r<<8|n>>>24)&255),i=r,e=((i&255)<<24|n>>>8)&-16777216,e=e|((i&16777215)<<8|n>>>24)&16711680,b=h+16|0,t[b>>2]=i>>>8&65280|i>>>24|e,t[b+4>>2]=s,n=t[163856],s=n<<8&16711680|n<<24,r=t[163857],e=(r<<24|n>>>8)&65280,s=s|(e|(r<<8|n>>>24)&255),i=r,e=((i&255)<<24|n>>>8)&-16777216,e=e|((i&16777215)<<8|n>>>24)&16711680,a=w,t[a+336>>2]=i>>>8&65280|i>>>24|e,t[a+340>>2]=s,n=t[163854],s=n<<8&16711680|n<<24,r=t[163855],e=(r<<24|n>>>8)&65280,s=s|(e|(r<<8|n>>>24)&255),i=r,e=((i&255)<<24|n>>>8)&-16777216,e=e|((i&16777215)<<8|n>>>24)&16711680,t[a+344>>2]=i>>>8&65280|i>>>24|e,t[a+348>>2]=s,s0=a+408|0,vi(s0,h,64),t[d>>2]=0,t[d+4>>2]=0,t[c>>2]=0,t[c+4>>2]=0,t[y>>2]=0,t[y+4>>2]=0,t[g>>2]=0,t[g+4>>2]=0,t[f>>2]=0,t[f+4>>2]=0,t[b>>2]=0,t[b+4>>2]=0,t[a+344>>2]=0,t[a+348>>2]=0,t[a+336>>2]=0,t[a+340>>2]=0,_=a+480|0,ya(s0,_),r=l[a+497|0],i=r>>>24|0,e=l[a+498|0]|r<<8,r=i,x0=_+16|0,n=l[x0|0],i=n>>>16|0,e=n<<16|e,n=i|r,r=l[a+495|0],i=r>>>8|0,e=e|r<<24,b=l[a+492|0],n=l[a+494|0]|(i|n)|l[a+493|0]<<8|(b&15)<<16,r=l[a+484|0],i=r>>>24|0,o=l[a+485|0]|r<<8,r=i,s=l[a+483|0],i=s>>>16|0,o=s<<16|o,s=i|r,r=l[a+482|0],i=r>>>8|0,h=r<<24|o,g=l[a+481|0]|(i|s)|l[a+480|0]<<8,r=l[a+491|0],i=r>>>28|0,o=r<<4|b>>>4,r=i,s=l[a+490|0],i=s>>>20|0,o=s<<12|o,s=i|r,r=l[a+489|0],i=r>>>12|0,o=r<<20|o,s=i|s,r=l[a+488|0],i=r>>>4|0,y=r<<28|o,c=i|s|l[a+487|0]<<4|l[a+486|0]<<12,C0=_+24|0,r=l[C0|0],i=r>>>28|0,d=l[a+505|0],o=r<<4|d>>>4,r=i,s=l[a+503|0],i=s>>>20|0,o=s<<12|o,s=i|r,r=l[a+502|0],i=r>>>12|0,o=r<<20|o,s=i|s,r=l[a+501|0],i=r>>>4|0,f=r<<28|o,C=i|s|l[a+500|0]<<4|l[a+499|0]<<12,b=C,r=l[a+510|0],i=r>>>24|0,o=l[a+511|0]|r<<8,r=i,s=l[a+509|0],i=s>>>16|0,o=s<<16|o,s=i|r,r=l[a+508|0],i=r>>>8|0,j=a+520|0,u0=j+32|0,r=o|r<<24,d=l[a+507|0]|(i|s)|l[a+506|0]<<8|(d&15)<<16,i=!(h|(y|(e|(r|f)))|(g|(c|(n|(d|b)))))|(e&f&y)==-1&(n&b&c)==1048575&((h|0)==-1&(g|0)==65535)&((d|0)==1048574&r>>>0>4294966318|d>>>0>1048574),s=i-1|0,b=s&h,t[u0>>2]=b,o=g,g=0-!i|0,o=o&g,t[u0+4>>2]=o,d0=j+24|0,R=s&y,t[d0>>2]=R,N=c&g,t[d0+4>>2]=N,l0=j+16|0,E=e&s,t[l0>>2]=E,T=n&g,t[l0+4>>2]=T,b0=j+8|0,I=s&f,t[b0>>2]=I,A=g&C,t[b0+4>>2]=A,s=r&s|i,t[a+520>>2]=s,i=d&g,C=i,t[a+524>>2]=i,h=a+128|0,Z=s<<1,L=i<<1|s>>>31,P(h,Z,L,0,0,R,N,0,0),g=a+192|0,n=I<<1,e=A<<1|I>>>31,P(g,n,e,0,0,E,T,0,0),c=a+320|0,P(c,b,o,0,0,b,o,0,0),d=a+304|0,P(d,t[a+320>>2],t[a+324>>2],0,0,15632,16,0,0),r=b,i=o<<1|r>>>31,$=a+80|0,g0=r<<1,z=i,P($,g0,i,0,0,s,C,0,0),e0=a+176|0,P(e0,n,e,0,0,R,N,0,0),t0=a+240|0,P(t0,E,T,0,0,E,T,0,0),y=a+288|0,i=c+8|0,P(y,t[i>>2],t[i+4>>2],0,0,64028672,65536,0,0),P(a,s,C,0,0,s,C,0,0),R0=a+160|0,P(R0,g0,z,0,0,I,A,0,0),Y=a+208|0,P(Y,E<<1,T<<1|E>>>31,0,0,R,N,0,0),c=t[a+132>>2],i=c+t[a+196>>2]|0,s=t[a+128>>2],n=t[a+192>>2],r=s+n|0,e=t[a+304>>2],C=r+e|0,n=r>>>0<n>>>0?i+1|0:i,i=n+t[a+308>>2]|0,e=e>>>0>C>>>0?i+1|0:i,f=(n|0)==(e|0)&r>>>0>C>>>0|e>>>0<n>>>0,i=d+8|0,b=t[i>>2],o=t[i+4>>2],s=(n|0)==(c|0)&r>>>0<s>>>0|n>>>0<c>>>0,n=g+8|0,r=t[n>>2],i=h+8|0,d=r+t[i>>2]|0,i=t[i+4>>2]+t[n+4>>2]|0,i=r>>>0>d>>>0?i+1|0:i,r=s+d|0,i=(r>>>0<d>>>0?i+1|0:i)+o|0,n=r,r=r+b|0,i=n>>>0>r>>>0?i+1|0:i,n=r,r=r+f|0,i=n>>>0>r>>>0?i+1|0:i,h=e,b=r<<12|e>>>20,n=i,s=i<<12|r>>>20,r0=t[a+176>>2],r=t[a+240>>2],f=r0+r|0,K=t[a+180>>2],i=K+t[a+244>>2]|0,i=r>>>0>f>>>0?i+1|0:i,r=t[a+80>>2],o=r+f|0,c=i,i=i+t[a+84>>2]|0,i=r>>>0>o>>>0?i+1|0:i,r=t[a+288>>2],e=r+o|0,d=i,i=i+t[a+292>>2]|0,r=r>>>0>e>>>0?i+1|0:i,i=r+s|0,H=a+16|0,b=e+b|0,s=b>>>0<e>>>0?i+1|0:i,S=(r|0)==(s|0)&e>>>0>b>>>0|r>>>0>s>>>0,V=(r|0)==(d|0)&o>>>0>e>>>0|r>>>0<d>>>0,i=y+8|0,x=t[i>>2],k=t[i+4>>2],g=(c|0)==(d|0)&o>>>0<f>>>0|c>>>0>d>>>0,i=$+8|0,y=t[i>>2],d=t[i+4>>2],o=(c|0)==(K|0)&f>>>0<r0>>>0|c>>>0<K>>>0,e=t0+8|0,r=t[e>>2],i=e0+8|0,f=r+t[i>>2]|0,i=t[i+4>>2]+t[e+4>>2]|0,i=r>>>0>f>>>0?i+1|0:i,r=o+f|0,i=(r>>>0<f>>>0?i+1|0:i)+d|0,e=r,r=r+y|0,i=e>>>0>r>>>0?i+1|0:i,e=r,r=r+g|0,i=(e>>>0>r>>>0?i+1|0:i)+k|0,e=r,r=r+x|0,i=e>>>0>r>>>0?i+1|0:i,e=r+V|0,i=e>>>0<r>>>0?i+1|0:i,n=n>>>20|0,r=e+n|0,i=n>>>0>r>>>0?i+1|0:i,n=r,r=r+S|0,i=n>>>0>r>>>0?i+1|0:i,n=s,o=r<<12|n>>>20,e=i,f=i<<12|r>>>20,x=t[a+164>>2],i=x+t[a+212>>2]|0,y=t[a+160>>2],r=t[a+208>>2],s=y+r|0,d=s,o=s+o|0,r=r>>>0>s>>>0?i+1|0:i,i=r+f|0,c=o<<4&-16,s=o>>>0<s>>>0?i+1|0:i,f=(s<<4|o>>>28)&16777215,g=n,P(H,c|n>>>16&15,f,0,0,977,1,0,0),S=t[a+20>>2],i=S+t[a+4>>2]|0,V=t[a+16>>2],n=t[a>>2],f=V+n|0,t[a+560>>2]=f,n=n>>>0>f>>>0?i+1|0:i,t[a+564>>2]=n&1048575,$=a+112|0,P($,Z,L,0,0,I,A,0,0),e0=a+224|0,P(e0,g0,z,0,0,E,T,0,0),t0=a+272|0,P(t0,R,N,0,0,R,N,0,0),r0=a- -64|0,k=r0,c=(r|0)==(s|0)&o>>>0<d>>>0|r>>>0>s>>>0,d=(r|0)==(x|0)&d>>>0<y>>>0|r>>>0<x>>>0,o=Y+8|0,r=t[o>>2],i=R0+8|0,y=r+t[i>>2]|0,i=t[i+4>>2]+t[o+4>>2]|0,i=r>>>0>y>>>0?i+1|0:i,o=d+y|0,i=o>>>0<y>>>0?i+1|0:i,e=e>>>20|0,r=o+e|0,i=e>>>0>r>>>0?i+1|0:i,e=r,r=r+c|0,i=e>>>0>r>>>0?i+1|0:i,d=r<<12|s>>>20,o=i,s=i<<12|r>>>20,K=t[a+224>>2],r=t[a+272>>2],x=K+r|0,Y=t[a+228>>2],i=Y+t[a+276>>2]|0,e=r>>>0>x>>>0?i+1|0:i,i=e+s|0,y=d+x|0,i=y>>>0<x>>>0?i+1|0:i,d=i,P(k,y,i&1048575,0,0,15632,16,0,0),f=(n|0)==(S|0)&f>>>0<V>>>0|n>>>0<S>>>0,s=a+8|0,r=t[s>>2],i=H+8|0,c=r+t[i>>2]|0,i=t[i+4>>2]+t[s+4>>2]|0,i=r>>>0>c>>>0?i+1|0:i,r=c+f|0,i=r>>>0<c>>>0?i+1|0:i,c=r<<12|n>>>20,s=i,f=i<<12|r>>>20,S=t[a+64>>2],r=t[a+112>>2],k=S+r|0,H=t[a+68>>2],i=H+t[a+116>>2]|0,n=r>>>0>k>>>0?i+1|0:i,i=n+f|0,c=c+k|0,i=c>>>0<k>>>0?i+1|0:i,t[a+568>>2]=c,f=i,t[a+572>>2]=i&1048575,V=a+96|0,P(V,Z,L,0,0,E,T,0,0),Z=a+144|0,P(Z,I,A,0,0,I,A,0,0),I=a+256|0,P(I,g0,z,0,0,R,N,0,0),E=a+48|0,T=(e|0)==(d|0)&y>>>0<x>>>0|e>>>0>d>>>0,y=(e|0)==(Y|0)&x>>>0<K>>>0|e>>>0<Y>>>0,e=t0+8|0,r=t[e>>2],i=e0+8|0,A=r+t[i>>2]|0,i=t[i+4>>2]+t[e+4>>2]|0,i=r>>>0>A>>>0?i+1|0:i,e=y+A|0,i=e>>>0<A>>>0?i+1|0:i,o=o>>>20|0,r=o+e|0,i=o>>>0>r>>>0?i+1|0:i,e=r,r=r+T|0,i=e>>>0>r>>>0?i+1|0:i,A=r<<12|d>>>20,o=t[a+256>>2],d=A+o|0,e=i,L=i<<12|r>>>20,i=L+t[a+260>>2]|0,y=o>>>0>d>>>0?i+1|0:i,P(E,d,y,0,0,15632,16,0,0),o=a,c=(n|0)==(f|0)&c>>>0<k>>>0|n>>>0>f>>>0,a=(n|0)==(H|0)&k>>>0<S>>>0|n>>>0<H>>>0,n=$+8|0,r=t[n>>2],i=r0+8|0,T=r+t[i>>2]|0,i=t[i+4>>2]+t[n+4>>2]|0,i=r>>>0>T>>>0?i+1|0:i,n=a+T|0,i=n>>>0<T>>>0?i+1|0:i,s=s>>>20|0,r=s+n|0,i=s>>>0>r>>>0?i+1|0:i,n=r,r=r+c|0,i=n>>>0>r>>>0?i+1|0:i,a=r<<12|f>>>20,n=i,s=i<<12|r>>>20,x=t[o+96>>2],r=t[o+144>>2],c=x+r|0,z=t[o+100>>2],i=z+t[o+148>>2]|0,i=r>>>0>c>>>0?i+1|0:i,r=t[o+48>>2],f=r+c|0,T=i,i=i+t[o+52>>2]|0,r=r>>>0>f>>>0?i+1|0:i,i=r+s|0,a=a+f|0,i=a>>>0<f>>>0?i+1|0:i,t[o+576>>2]=a,s=i,t[o+580>>2]=i&1048575,k=o+32|0,A=(y|0)==(L|0)&d>>>0<A>>>0|y>>>0<L>>>0,i=I+8|0,y=t[i>>2],i=t[i+4>>2],e=e>>>20|0,d=e,e=e+y|0,i=d>>>0>e>>>0?i+1|0:i,d=e,e=e+A|0,i=d>>>0>e>>>0?i+1|0:i,P(k,e,i,0,0,64028672,65536,0,0),e=o,A=(r|0)==(s|0)&a>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(T|0)&c>>>0>f>>>0|r>>>0<T>>>0,i=E+8|0,d=t[i>>2],f=t[i+4>>2],a=(T|0)==(z|0)&c>>>0<x>>>0|T>>>0<z>>>0,o=Z+8|0,r=t[o>>2],i=V+8|0,c=r+t[i>>2]|0,i=t[i+4>>2]+t[o+4>>2]|0,i=r>>>0>c>>>0?i+1|0:i,r=a+c|0,i=(r>>>0<c>>>0?i+1|0:i)+f|0,o=r,r=r+d|0,i=o>>>0>r>>>0?i+1|0:i,o=r+y|0,i=o>>>0<r>>>0?i+1|0:i,n=n>>>20|0,r=o+n|0,i=n>>>0>r>>>0?i+1|0:i,n=r,r=r+A|0,i=n>>>0>r>>>0?i+1|0:i,f=r<<12|s>>>20,n=i,s=i<<12|r>>>20,c=t[e+32>>2],r=C&-2,o=c+r|0,y=t[e+36>>2],i=y+(h&1048575)|0,a=r>>>0>o>>>0?i+1|0:i,i=a+s|0,s=o+f|0,i=s>>>0<o>>>0?i+1|0:i,t[e+584>>2]=s,r=i,t[e+588>>2]=i&1048575,d=g&65535,f=(i|0)==(a|0)&o>>>0>s>>>0|i>>>0<a>>>0,e=(a|0)==(y|0)&o>>>0<c>>>0|a>>>0<y>>>0,i=k+8|0,s=e+t[i>>2]|0,i=t[i+4>>2],i=e>>>0>s>>>0?i+1|0:i,n=n>>>20|0,e=n,n=s+n|0,i=e>>>0>n>>>0?i+1|0:i,e=n,n=n+f|0,i=e>>>0>n>>>0?i+1|0:i,r=n<<12|r>>>20,e=r+b|0,i=d+(i<<12|n>>>20)|0,t[w+592>>2]=e,t[w+596>>2]=r>>>0>e>>>0?i+1|0:i,E=w+560|0,U0(655432,655432,E),U0(655472,655472,E),U0(655472,655472,j),U0(655512,655512,j),t[b0>>2]=0,t[b0+4>>2]=0,t[l0>>2]=0,t[l0+4>>2]=0,t[d0>>2]=0,t[d0+4>>2]=0,t[u0>>2]=0,t[u0+4>>2]=0,t[w+520>>2]=0,t[w+524>>2]=0,ya(s0,_),x=w+688|0,ie(x,_,0),r=x+24|0,c=t[r>>2],n=x+16|0,y=t[n>>2],e=x+8|0,h=t[e>>2],g=t[w+688>>2],d=c|(y|(h|g)),o=t[r+4>>2],b=t[n+4>>2],f=t[e+4>>2],a=t[w+692>>2],s=o|(b|(f|a)),i=d|s?-1:0,k=i&c,t[r>>2]=k,A=i&o,t[r+4>>2]=A,T=i&y,t[n>>2]=T,C=i&b,t[n+4>>2]=C,h=i&h,t[e>>2]=h,y=i&f,t[e+4>>2]=y,s=!(s|d)|i&g,t[w+688>>2]=s,o=i&a,t[w+692>>2]=o,me(s0,68),t[C0>>2]=0,t[C0+4>>2]=0,t[x0>>2]=0,t[x0+4>>2]=0,t[w+488>>2]=0,t[w+492>>2]=0,t[w+480>>2]=0,t[w+484>>2]=0,gn(655392,E,x),i=h|T|k|s|(y|C|A|o)?-1:0,c=s^-1,a=c-801750718|0,s=i,b=o^-1,o=b-((c>>>0<801750718)+1076732275|0)|0,i=i&o,d=i,f=a&s,t[163850]=f,t[163851]=i,y=y^-1,i=y,g=h^-1,h=g+((o|0)==(b|0)&a>>>0<c>>>0|o>>>0<b>>>0)|0,a=h-1354194885|0,b=a&s,t[e>>2]=b,i=h>>>0<g>>>0?i+1|0:i,c=i-((h>>>0<1354194885)+1162945305|0)|0,o=c&s,t[e+4>>2]=o,t[163852]=b,t[163853]=o,o=(i|0)==(c|0)&a>>>0<h>>>0|i>>>0>c>>>0,b=o+((i|0)==(y|0)&h>>>0<g>>>0|i>>>0<y>>>0)|0,g=T^-1,h=g+b|0,y=C^-1,i=y+(o>>>0>b>>>0)|0,a=h-2|0,b=a&s,t[n>>2]=b,i=h>>>0<g>>>0?i+1|0:i,c=i-(h>>>0<2)|0,o=c&s,t[n+4>>2]=o,t[163854]=b,t[163855]=o,o=(i|0)==(c|0)&a>>>0<h>>>0|i>>>0>c>>>0,a=o+((i|0)==(y|0)&h>>>0<g>>>0|i>>>0<y>>>0)|0,i=a>>>0<o>>>0,b=a-k|0,o=b-2&s,t[r>>2]=o,i=(i-((a>>>0<k>>>0)+A|0)|0)-(b>>>0<2)&s,t[r+4>>2]=i,t[163856]=o,t[163857]=i,t[w+688>>2]=f,t[w+692>>2]=d,Ze(655432,E,128),t[r>>2]=0,t[r+4>>2]=0,t[n>>2]=0,t[n+4>>2]=0,t[e>>2]=0,t[e+4>>2]=0,t[w+688>>2]=0,t[w+692>>2]=0,me(E,124)),D=w+720|0,u[690757]=0,u[690758]=0,u[690759]=0,u[690760]=0,u[690761]=0,u[690762]=0,u[690763]=0,u[690764]=0,u[690756]=1,u[690765]=0,u[690766]=0,u[690767]=0,u[690768]=0,u[690769]=0,u[690770]=0,u[690771]=0,u[690772]=0,u[690773]=0,u[690774]=0,u[690775]=0,u[690776]=0,u[690777]=0,u[690778]=0,u[690779]=0,u[690780]=0,u[690780]=0,u[690781]=0,u[690782]=0,u[690783]=0,u[690784]=0,u[690785]=0,u[690786]=0,u[690787]=0,t[X+4>>2]=1,t[172762]=655392}return D=X+32|0,M0}function D0(){T0()}function j0(i){i=i|0;var r=0,a=0;r=D+-64|0,D=r;t:{if((i|0)!=32){a=r+56|0,t[a>>2]=0,t[a+4>>2]=0,a=r+48|0,t[a>>2]=0,t[a+4>>2]=0,a=r+40|0,t[a>>2]=0,t[a+4>>2]=0,a=r+32|0,t[a>>2]=0,t[a+4>>2]=0,a=r+24|0,t[a>>2]=0,t[a+4>>2]=0,a=r+16|0,t[a>>2]=0,t[a+4>>2]=0,a=r+8|0,t[a>>2]=0,t[a+4>>2]=0,t[r>>2]=0,t[r+4>>2]=0,i=Jt(t[172688],r,690820,i);break t}i=r+56|0,t[i>>2]=0,t[i+4>>2]=0,i=r+48|0,t[i>>2]=0,t[i+4>>2]=0,i=r+40|0,t[i>>2]=0,t[i+4>>2]=0,i=r+32|0,t[i>>2]=0,t[i+4>>2]=0,i=r+24|0,t[i>>2]=0,t[i+4>>2]=0,i=r+16|0,t[i>>2]=0,t[i+4>>2]=0,i=r+8|0,t[i>>2]=0,t[i+4>>2]=0,t[r>>2]=0,t[r+4>>2]=0,i=Tn(t[172688],r,690820)}return D=r- -64|0,(i|0)==1|0}function B0(i,r,a){i=i|0,r=r|0,a=a|0;var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0;s=D-272|0,D=s,e=s+200|0,z=e+56|0,t[z>>2]=0,t[z+4>>2]=0,f=e+48|0,t[f>>2]=0,t[f+4>>2]=0,A=e+40|0,t[A>>2]=0,t[A+4>>2]=0,E=e+32|0,t[E>>2]=0,t[E+4>>2]=0,x=e+24|0,t[x>>2]=0,t[x+4>>2]=0,k=e+16|0,t[k>>2]=0,t[k+4>>2]=0,L=e+8|0,t[L>>2]=0,t[L+4>>2]=0,t[s+200>>2]=0,t[s+204>>2]=0;t:{e:{if((Jt(t[172688],e,690820,i)|0)==1){if(C=s+200|0,w=C+15|0,e=w,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),y=s- -64|0,S=y+8|0,t[S>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[S+4>>2]=i,g=C+23|0,e=g,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),R=y+16|0,t[R>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[R+4>>2]=i,b=C+31|0,e=b,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),N=y+24|0,t[N>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[N+4>>2]=i,h=C+39|0,e=h,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),H=y+32|0,t[H>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[H+4>>2]=i,o=C+47|0,e=o,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),n=y+40|0,t[n>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[n+4>>2]=i,e=C+55|0,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),c=y+48|0,t[c>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[c+4>>2]=i,d=y+56|0,y=C+63|0,u[d|0]=l[y|0],u[s+2|0]=l[s+202|0],v[s>>1]=B[s+200>>1],i=l[s+211|0]|l[s+212|0]<<8|(l[s+213|0]<<16|l[s+214|0]<<24),t[s+64>>2]=l[s+207|0]|l[s+208|0]<<8|(l[s+209|0]<<16|l[s+210|0]<<24),t[s+68>>2]=i,i=l[s+203|0]|l[s+204|0]<<8|(l[s+205|0]<<16|l[s+206|0]<<24),u[s+63|0]=l[d|0],T=t[c+4>>2],I=s+55|0,d=t[c>>2],u[I|0]=d,u[I+1|0]=d>>>8,u[I+2|0]=d>>>16,u[I+3|0]=d>>>24,u[I+4|0]=T,u[I+5|0]=T>>>8,u[I+6|0]=T>>>16,u[I+7|0]=T>>>24,c=t[n+4>>2],T=s+47|0,d=t[n>>2],u[T|0]=d,u[T+1|0]=d>>>8,u[T+2|0]=d>>>16,u[T+3|0]=d>>>24,u[T+4|0]=c,u[T+5|0]=c>>>8,u[T+6|0]=c>>>16,u[T+7|0]=c>>>24,c=t[H+4>>2],n=s+39|0,d=t[H>>2],u[n|0]=d,u[n+1|0]=d>>>8,u[n+2|0]=d>>>16,u[n+3|0]=d>>>24,u[n+4|0]=c,u[n+5|0]=c>>>8,u[n+6|0]=c>>>16,u[n+7|0]=c>>>24,c=t[N+4>>2],n=s+31|0,d=t[N>>2],u[n|0]=d,u[n+1|0]=d>>>8,u[n+2|0]=d>>>16,u[n+3|0]=d>>>24,u[n+4|0]=c,u[n+5|0]=c>>>8,u[n+6|0]=c>>>16,u[n+7|0]=c>>>24,c=t[R+4>>2],n=s+23|0,d=t[R>>2],u[n|0]=d,u[n+1|0]=d>>>8,u[n+2|0]=d>>>16,u[n+3|0]=d>>>24,u[n+4|0]=c,u[n+5|0]=c>>>8,u[n+6|0]=c>>>16,u[n+7|0]=c>>>24,c=t[S+4>>2],n=s+15|0,d=t[S>>2],u[n|0]=d,u[n+1|0]=d>>>8,u[n+2|0]=d>>>16,u[n+3|0]=d>>>24,u[n+4|0]=c,u[n+5|0]=c>>>8,u[n+6|0]=c>>>16,u[n+7|0]=c>>>24,u[s+3|0]=i,u[s+4|0]=i>>>8,u[s+5|0]=i>>>16,u[s+6|0]=i>>>24,d=t[s+68>>2],i=t[s+64>>2],u[s+7|0]=i,u[s+8|0]=i>>>8,u[s+9|0]=i>>>16,u[s+10|0]=i>>>24,u[s+11|0]=d,u[s+12|0]=d>>>8,u[s+13|0]=d>>>16,u[s+14|0]=d>>>24,t[z>>2]=0,t[z+4>>2]=0,t[f>>2]=0,t[f+4>>2]=0,t[A>>2]=0,t[A+4>>2]=0,t[E>>2]=0,t[E+4>>2]=0,t[x>>2]=0,t[x+4>>2]=0,t[k>>2]=0,t[k+4>>2]=0,t[L>>2]=0,t[L+4>>2]=0,t[s+200>>2]=0,t[s+204>>2]=0,T=0,(Jt(t[172688],C,655584,r)|0)==1){i=l[w+4|0]|l[w+5|0]<<8|(l[w+6|0]<<16|l[w+7|0]<<24),r=s+128|0,d=r+8|0,t[d>>2]=l[w|0]|l[w+1|0]<<8|(l[w+2|0]<<16|l[w+3|0]<<24),t[d+4>>2]=i,i=l[g+4|0]|l[g+5|0]<<8|(l[g+6|0]<<16|l[g+7|0]<<24),w=r+16|0,t[w>>2]=l[g|0]|l[g+1|0]<<8|(l[g+2|0]<<16|l[g+3|0]<<24),t[w+4>>2]=i,i=l[b+4|0]|l[b+5|0]<<8|(l[b+6|0]<<16|l[b+7|0]<<24),g=r+24|0,t[g>>2]=l[b|0]|l[b+1|0]<<8|(l[b+2|0]<<16|l[b+3|0]<<24),t[g+4>>2]=i,i=l[h+4|0]|l[h+5|0]<<8|(l[h+6|0]<<16|l[h+7|0]<<24),b=r+32|0,t[b>>2]=l[h|0]|l[h+1|0]<<8|(l[h+2|0]<<16|l[h+3|0]<<24),t[b+4>>2]=i,i=l[o+4|0]|l[o+5|0]<<8|(l[o+6|0]<<16|l[o+7|0]<<24),h=r+40|0,t[h>>2]=l[o|0]|l[o+1|0]<<8|(l[o+2|0]<<16|l[o+3|0]<<24),t[h+4>>2]=i,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),o=r+48|0,t[o>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[o+4>>2]=i,r=r+56|0,u[r|0]=l[y|0],u[s+66|0]=l[s+202|0],v[s+64>>1]=B[s+200>>1],i=l[s+211|0]|l[s+212|0]<<8|(l[s+213|0]<<16|l[s+214|0]<<24),t[s+128>>2]=l[s+207|0]|l[s+208|0]<<8|(l[s+209|0]<<16|l[s+210|0]<<24),t[s+132>>2]=i,i=l[s+203|0]|l[s+204|0]<<8|(l[s+205|0]<<16|l[s+206|0]<<24),c=s- -64|0,u[c+63|0]=l[r|0],e=t[o+4>>2],y=c+55|0,r=t[o>>2],u[y|0]=r,u[y+1|0]=r>>>8,u[y+2|0]=r>>>16,u[y+3|0]=r>>>24,u[y+4|0]=e,u[y+5|0]=e>>>8,u[y+6|0]=e>>>16,u[y+7|0]=e>>>24,e=t[h+4>>2],o=c+47|0,r=t[h>>2],u[o|0]=r,u[o+1|0]=r>>>8,u[o+2|0]=r>>>16,u[o+3|0]=r>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,e=t[b+4>>2],o=c+39|0,r=t[b>>2],u[o|0]=r,u[o+1|0]=r>>>8,u[o+2|0]=r>>>16,u[o+3|0]=r>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,e=t[g+4>>2],o=c+31|0,r=t[g>>2],u[o|0]=r,u[o+1|0]=r>>>8,u[o+2|0]=r>>>16,u[o+3|0]=r>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,e=t[w+4>>2],o=c+23|0,r=t[w>>2],u[o|0]=r,u[o+1|0]=r>>>8,u[o+2|0]=r>>>16,u[o+3|0]=r>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,e=t[d+4>>2],o=c+15|0,r=t[d>>2],u[o|0]=r,u[o+1|0]=r>>>8,u[o+2|0]=r>>>16,u[o+3|0]=r>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,u[s+67|0]=i,u[s+68|0]=i>>>8,u[s+69|0]=i>>>16,u[s+70|0]=i>>>24,r=t[s+132>>2],i=t[s+128>>2],u[s+71|0]=i,u[s+72|0]=i>>>8,u[s+73|0]=i>>>16,u[s+74|0]=i>>>24,u[s+75|0]=r,u[s+76|0]=r>>>8,u[s+77|0]=r>>>16,u[s+78|0]=r>>>24,f=s+200|0,i=f+56|0,t[i>>2]=0,t[i+4>>2]=0,i=f+48|0,t[i>>2]=0,t[i+4>>2]=0,i=f+40|0,t[i>>2]=0,t[i+4>>2]=0,i=f+32|0,t[i>>2]=0,t[i+4>>2]=0,i=f+24|0,t[i>>2]=0,t[i+4>>2]=0,i=f+16|0,t[i>>2]=0,t[i+4>>2]=0,i=f+8|0,t[i>>2]=0,t[i+4>>2]=0,t[s+200>>2]=0,t[s+204>>2]=0,t[s+196>>2]=c,t[s+192>>2]=s,A=t[172688],x=s+192|0,k=2,c=D-224|0,D=c;n:{if(!f){O0[t[A+168>>2]](689778,t[A+172>>2]),i=0;break n}if(u[f|0]=0,u[f+1|0]=0,u[f+2|0]=0,u[f+3|0]=0,u[f+4|0]=0,u[f+5|0]=0,u[f+6|0]=0,u[f+7|0]=0,i=f+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=f+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,!x){O0[t[A+168>>2]](689682,t[A+172>>2]),i=0;break n}for(t[c+216>>2]=1,me(c+96|0,120),L=A+172|0;;){if(n=t[x>>2],!n){O0[t[A+168>>2]](689809,t[A+172>>2]),i=0;break n}if(t[c+88>>2]=0,r=l[n+60|0]|l[n+61|0]<<8|(l[n+62|0]<<16|l[n+63|0]<<24),b=r>>>16|0,i=c,e=l[n+56|0]|l[n+57|0]<<8|(l[n+58|0]<<16|l[n+59|0]<<24),t[i+80>>2]=(r&65535)<<16|e>>>16,t[i+84>>2]=b,o=l[n+36|0]|l[n+37|0]<<8|(l[n+38|0]<<16|l[n+39|0]<<24),t[i+48>>2]=l[n+32|0]|l[n+33|0]<<8|(l[n+34|0]<<16|l[n+35|0]<<24),t[i+52>>2]=o&1048575,b=e<<4&1048560,r=l[n+52|0]|l[n+53|0]<<8|(l[n+54|0]<<16|l[n+55|0]<<24),d=r>>>28|0,e=l[n+48|0]|l[n+49|0]<<8|(l[n+50|0]<<16|l[n+51|0]<<24),t[i+72>>2]=(r&268435455)<<4|e>>>28,t[i+76>>2]=d|b,b=r<<24|e>>>8,g=e<<24&-16777216,e=l[n+40|0]|l[n+41|0]<<8|(l[n+42|0]<<16|l[n+43|0]<<24),r=l[n+44|0]|l[n+45|0]<<8|(l[n+46|0]<<16|l[n+47|0]<<24),t[i+64>>2]=r>>>8|g,t[i+68>>2]=b&1048575,E=r<<12|e>>>20,t[i+56>>2]=e<<12&-4096|o>>>20,t[i+60>>2]=E&1048575,e=l[n+12|0]|l[n+13|0]<<8|(l[n+14|0]<<16|l[n+15|0]<<24),y=e,r=l[n+8|0]|l[n+9|0]<<8|(l[n+10|0]<<16|l[n+11|0]<<24),E=e<<12|r>>>20,h=r<<12&-4096,w=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),r=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),e=r,S=e>>>20|h,t[i+16>>2]=S,R=E&1048575,t[i+20>>2]=R,t[i+8>>2]=w,N=e&1048575,t[i+12>>2]=N,r=l[n+24|0]|l[n+25|0]<<8|(l[n+26|0]<<16|l[n+27|0]<<24),g=r,e=l[n+28|0]|l[n+29|0]<<8|(l[n+30|0]<<16|l[n+31|0]<<24),o=(e&65535)<<16|r>>>16,t[i+40>>2]=o,h=e>>>16|0,t[i+44>>2]=h,r=l[n+16|0]|l[n+17|0]<<8|(l[n+18|0]<<16|l[n+19|0]<<24),e=l[n+20|0]|l[n+21|0]<<8|(l[n+22|0]<<16|l[n+23|0]<<24),d=e<<24|r>>>8,n=r<<24&-16777216|y>>>8,t[i+24>>2]=n,y=d&1048575,t[i+28>>2]=y,b=g<<4&1048560,r=(e&268435455)<<4|r>>>28,t[i+32>>2]=r,i=e>>>28|b,t[c+36>>2]=i,w|S|o|n|r|(R|N|h|y|i)||O0[t[A+168>>2]](690116,t[L>>2]),x=x+4|0,i=c+96|0,ki(i,i,c+8|0),k=k-1|0,!k)break}if(i=0,t[c+216>>2])break n;i=c+8|0,Lt(i,c+96|0),ct(f,i),i=1}if(D=c+224|0,!i)break t;if(t[s+264>>2]=a,i=z2(t[172688],s+264|0,s+200|0,(a|0)==33?258:2),t[s+268>>2]=i,(i|0)!=1)break e;T=1;break t}q(1);break t}q(1);break t}t[s+136>>2]=0,A0(s+128|0),ge()}return D=s+272|0,T|0}function X0(i,r){i=i|0,r=r|0;var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0;o=D-208|0,D=o,a=o+136|0,e=a+56|0,t[e>>2]=0,t[e+4>>2]=0,e=a+48|0,t[e>>2]=0,t[e+4>>2]=0,e=a+40|0,t[e>>2]=0,t[e+4>>2]=0,e=a+32|0,t[e>>2]=0,t[e+4>>2]=0,e=a+24|0,t[e>>2]=0,t[e+4>>2]=0,e=a+16|0,t[e>>2]=0,t[e+4>>2]=0,e=a+8|0,t[e>>2]=0,t[e+4>>2]=0,t[o+136>>2]=0,t[o+140>>2]=0;t:{if((Jt(t[172688],a,690820,i)|0)==1){f=o+136|0,a=f+15|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),e=o+72|0,g=e+8|0,t[g>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[g+4>>2]=i,a=f+23|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),b=e+16|0,t[b>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[b+4>>2]=i,a=f+31|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),h=e+24|0,t[h>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[h+4>>2]=i,a=f+39|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),y=e+32|0,t[y>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[y+4>>2]=i,a=f+47|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),c=e+40|0,t[c>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[c+4>>2]=i,d=f+55|0,i=l[d+4|0]|l[d+5|0]<<8|(l[d+6|0]<<16|l[d+7|0]<<24),a=e+48|0,t[a>>2]=l[d|0]|l[d+1|0]<<8|(l[d+2|0]<<16|l[d+3|0]<<24),t[a+4>>2]=i,e=e+56|0,u[e|0]=l[f+63|0],u[o+10|0]=l[o+138|0],v[o+8>>1]=B[o+136>>1],i=l[o+147|0]|l[o+148|0]<<8|(l[o+149|0]<<16|l[o+150|0]<<24),t[o+72>>2]=l[o+143|0]|l[o+144|0]<<8|(l[o+145|0]<<16|l[o+146|0]<<24),t[o+76>>2]=i,f=l[o+139|0]|l[o+140|0]<<8|(l[o+141|0]<<16|l[o+142|0]<<24),n=o+8|0,u[n+63|0]=l[e|0],e=t[a+4>>2],d=n+55|0,i=t[a>>2],u[d|0]=i,u[d+1|0]=i>>>8,u[d+2|0]=i>>>16,u[d+3|0]=i>>>24,u[d+4|0]=e,u[d+5|0]=e>>>8,u[d+6|0]=e>>>16,u[d+7|0]=e>>>24,e=t[c+4>>2],a=n+47|0,i=t[c>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=t[y+4>>2],a=n+39|0,i=t[y>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=t[h+4>>2],a=n+31|0,i=t[h>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=t[b+4>>2],a=n+23|0,i=t[b>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=t[g+4>>2],a=n+15|0,i=t[g>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,u[o+11|0]=f,u[o+12|0]=f>>>8,u[o+13|0]=f>>>16,u[o+14|0]=f>>>24,e=t[o+76>>2],i=t[o+72>>2],u[o+15|0]=i,u[o+16|0]=i>>>8,u[o+17|0]=i>>>16,u[o+18|0]=i>>>24,u[o+19|0]=e,u[o+20|0]=e>>>8,u[o+21|0]=e>>>16,u[o+22|0]=e>>>24,w=T0(),s=D-288|0,D=s;e:{if(!n){O0[t[w+168>>2]](689638,t[w+172>>2]);break e}if(i=l[n+60|0]|l[n+61|0]<<8|(l[n+62|0]<<16|l[n+63|0]<<24),b=i>>>16|0,c=s+72|0,e=l[n+56|0]|l[n+57|0]<<8|(l[n+58|0]<<16|l[n+59|0]<<24),t[c>>2]=(i&65535)<<16|e>>>16,t[c+4>>2]=b,c=e<<4&1048560,i=l[n+52|0]|l[n+53|0]<<8|(l[n+54|0]<<16|l[n+55|0]<<24),d=i>>>28|0,y=s- -64|0,e=l[n+48|0]|l[n+49|0]<<8|(l[n+50|0]<<16|l[n+51|0]<<24),t[y>>2]=(i&268435455)<<4|e>>>28,t[y+4>>2]=c|d,b=i<<24|e>>>8,y=e<<24&-16777216,e=l[n+40|0]|l[n+41|0]<<8|(l[n+42|0]<<16|l[n+43|0]<<24),h=s+56|0,i=l[n+44|0]|l[n+45|0]<<8|(l[n+46|0]<<16|l[n+47|0]<<24),t[h>>2]=i>>>8|y,t[h+4>>2]=b&1048575,b=i<<12|e>>>20,y=e<<12&-4096,a=l[n+32|0]|l[n+33|0]<<8|(l[n+34|0]<<16|l[n+35|0]<<24),i=l[n+36|0]|l[n+37|0]<<8|(l[n+38|0]<<16|l[n+39|0]<<24),h=s+48|0,t[h>>2]=i>>>20|y,t[h+4>>2]=b&1048575,t[s+80>>2]=0,t[s+40>>2]=a,t[s+44>>2]=i&1048575,a=l[n+12|0]|l[n+13|0]<<8|(l[n+14|0]<<16|l[n+15|0]<<24),f=a,e=l[n+8|0]|l[n+9|0]<<8|(l[n+10|0]<<16|l[n+11|0]<<24),b=a<<12|e>>>20,y=e<<12&-4096,g=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),e=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),a=e,i=s,T=a>>>20|y,t[i+8>>2]=T,A=b&1048575,t[i+12>>2]=A,t[i>>2]=g,x=a&1048575,t[i+4>>2]=x,e=l[n+24|0]|l[n+25|0]<<8|(l[n+26|0]<<16|l[n+27|0]<<24),b=e,a=l[n+28|0]|l[n+29|0]<<8|(l[n+30|0]<<16|l[n+31|0]<<24),c=(a&65535)<<16|e>>>16,t[i+32>>2]=c,y=a>>>16|0,t[i+36>>2]=y,e=l[n+16|0]|l[n+17|0]<<8|(l[n+18|0]<<16|l[n+19|0]<<24),a=l[n+20|0]|l[n+21|0]<<8|(l[n+22|0]<<16|l[n+23|0]<<24),d=a<<24|e>>>8,E=e<<24&-16777216|f>>>8,t[i+16>>2]=E,f=d&1048575,t[i+20>>2]=f,h=b<<4&1048560,e=(a&268435455)<<4|e>>>28,t[i+24>>2]=e,i=a>>>28|h,t[s+28>>2]=i,!(g|T|c|E|e|(A|x|y|f|i))){O0[t[w+168>>2]](690116,t[w+172>>2]),i=n+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0;break e}if(u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,i=n+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=n+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,t[s+92>>2]=0,ie(s+96|0,690949,s+92|0),t[s+92>>2]||(a=s+8|0,e=t[a+4>>2],c=s+160|0,i=c+8|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+16|0,e=t[a+4>>2],i=c+16|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+24|0,e=t[a+4>>2],i=c+24|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+32|0,e=t[a+4>>2],i=c+32|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+48|0,e=t[a+4>>2],i=c+48|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+56|0,e=t[a+4>>2],i=c+56|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s- -64|0,e=t[a+4>>2],i=c- -64|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,a=s+72|0,e=t[a+4>>2],i=c+72|0,t[i>>2]=t[a>>2],t[i+4>>2]=e,t[s+280>>2]=0,i=t[s+4>>2],t[s+160>>2]=t[s>>2],t[s+164>>2]=i,i=t[s+44>>2],t[s+200>>2]=t[s+40>>2],t[s+204>>2]=i,i=s+248|0,t[i>>2]=0,t[i+4>>2]=0,i=s+256|0,t[i>>2]=0,t[i+4>>2]=0,i=s+264|0,t[i>>2]=0,t[i+4>>2]=0,i=s+272|0,t[i>>2]=0,t[i+4>>2]=0,e=s+128|0,i=e+16|0,t[i>>2]=0,t[i+4>>2]=0,i=e+24|0,t[i>>2]=0,t[i+4>>2]=0,t[s+240>>2]=1,t[s+244>>2]=0,t[s+136>>2]=0,t[s+140>>2]=0,t[s+128>>2]=1,t[s+132>>2]=0,h2(c,c,e,s+96|0),t[s+280>>2]))break e;Lt(s,s+160|0),ct(n,s),k=1}if(D=s+288|0,!k||(t[o+204>>2]=r,i=z2(t[172688],o+204|0,o+8|0,(r|0)==33?258:2),t[o+72>>2]=i,C=1,(i|0)==1))break t;t[o+144>>2]=0,A0(o+136|0),ge()}q(1)}return D=o+208|0,C|0}function se(){var i=0,r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0;o=D-208|0,D=o,a=o+136|0,A=a+56|0,t[A>>2]=0,t[A+4>>2]=0,x=a+48|0,t[x>>2]=0,t[x+4>>2]=0,h=a+40|0,t[h>>2]=0,t[h+4>>2]=0,E=a+32|0,t[E>>2]=0,t[E+4>>2]=0,s=a+24|0,t[s>>2]=0,t[s+4>>2]=0,T=a+16|0,t[T>>2]=0,t[T+4>>2]=0,w=a+8|0,t[w>>2]=0,t[w+4>>2]=0,t[o+136>>2]=0,t[o+140>>2]=0;t:{e:{if((Tn(t[172688],a,690885)|0)==1){d=o+136|0,r=d+15|0,i=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),a=o+72|0,k=a+8|0,t[k>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[k+4>>2]=i,r=d+23|0,i=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),y=a+16|0,t[y>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[y+4>>2]=i,r=d+31|0,i=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),b=a+24|0,t[b>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[b+4>>2]=i,r=d+39|0,i=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),f=a+32|0,t[f>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[f+4>>2]=i,r=d+47|0,i=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=a+40|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=i,c=d+55|0,i=l[c+4|0]|l[c+5|0]<<8|(l[c+6|0]<<16|l[c+7|0]<<24),r=a+48|0,t[r>>2]=l[c|0]|l[c+1|0]<<8|(l[c+2|0]<<16|l[c+3|0]<<24),t[r+4>>2]=i,a=a+56|0,u[a|0]=l[d+63|0],u[o+10|0]=l[o+138|0],v[o+8>>1]=B[o+136>>1],i=l[o+147|0]|l[o+148|0]<<8|(l[o+149|0]<<16|l[o+150|0]<<24),t[o+72>>2]=l[o+143|0]|l[o+144|0]<<8|(l[o+145|0]<<16|l[o+146|0]<<24),t[o+76>>2]=i,i=l[o+139|0]|l[o+140|0]<<8|(l[o+141|0]<<16|l[o+142|0]<<24),e=o+8|0,u[e+63|0]=l[a|0],c=t[r+4>>2],g=e+55|0,a=t[r>>2],u[g|0]=a,u[g+1|0]=a>>>8,u[g+2|0]=a>>>16,u[g+3|0]=a>>>24,u[g+4|0]=c,u[g+5|0]=c>>>8,u[g+6|0]=c>>>16,u[g+7|0]=c>>>24,r=t[n+4>>2],c=e+47|0,a=t[n>>2],u[c|0]=a,u[c+1|0]=a>>>8,u[c+2|0]=a>>>16,u[c+3|0]=a>>>24,u[c+4|0]=r,u[c+5|0]=r>>>8,u[c+6|0]=r>>>16,u[c+7|0]=r>>>24,r=t[f+4>>2],n=e+39|0,a=t[f>>2],u[n|0]=a,u[n+1|0]=a>>>8,u[n+2|0]=a>>>16,u[n+3|0]=a>>>24,u[n+4|0]=r,u[n+5|0]=r>>>8,u[n+6|0]=r>>>16,u[n+7|0]=r>>>24,r=t[b+4>>2],n=e+31|0,a=t[b>>2],u[n|0]=a,u[n+1|0]=a>>>8,u[n+2|0]=a>>>16,u[n+3|0]=a>>>24,u[n+4|0]=r,u[n+5|0]=r>>>8,u[n+6|0]=r>>>16,u[n+7|0]=r>>>24,r=t[y+4>>2],n=e+23|0,a=t[y>>2],u[n|0]=a,u[n+1|0]=a>>>8,u[n+2|0]=a>>>16,u[n+3|0]=a>>>24,u[n+4|0]=r,u[n+5|0]=r>>>8,u[n+6|0]=r>>>16,u[n+7|0]=r>>>24,r=t[k+4>>2],n=e+15|0,a=t[k>>2],u[n|0]=a,u[n+1|0]=a>>>8,u[n+2|0]=a>>>16,u[n+3|0]=a>>>24,u[n+4|0]=r,u[n+5|0]=r>>>8,u[n+6|0]=r>>>16,u[n+7|0]=r>>>24,u[o+11|0]=i,u[o+12|0]=i>>>8,u[o+13|0]=i>>>16,u[o+14|0]=i>>>24,a=t[o+76>>2],i=t[o+72>>2],u[o+15|0]=i,u[o+16|0]=i>>>8,u[o+17|0]=i>>>16,u[o+18|0]=i>>>24,u[o+19|0]=a,u[o+20|0]=a>>>8,u[o+21|0]=a>>>16,u[o+22|0]=a>>>24,t[A>>2]=0,t[A+4>>2]=0,t[x>>2]=0,t[x+4>>2]=0,t[h>>2]=0,t[h+4>>2]=0,t[E>>2]=0,t[E+4>>2]=0,t[s>>2]=0,t[s+4>>2]=0,t[T>>2]=0,t[T+4>>2]=0,t[w>>2]=0,t[w+4>>2]=0,t[o+136>>2]=0,t[o+140>>2]=0,h=T0(),g=0,s=D-288|0,D=s;n:{if(!d){O0[t[h+168>>2]](689607,t[h+172>>2]);break n}if(u[d|0]=0,u[d+1|0]=0,u[d+2|0]=0,u[d+3|0]=0,u[d+4|0]=0,u[d+5|0]=0,u[d+6|0]=0,u[d+7|0]=0,i=d+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=d+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,!e){O0[t[h+168>>2]](689629,t[h+172>>2]);break n}if(i=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),y=i>>>16|0,n=s+72|0,a=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),t[n>>2]=(i&65535)<<16|a>>>16,t[n+4>>2]=y,n=a<<4&1048560,i=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),T=i>>>28|0,f=s- -64|0,a=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),t[f>>2]=(i&268435455)<<4|a>>>28,t[f+4>>2]=n|T,y=i<<24|a>>>8,f=a<<24&-16777216,a=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),b=s+56|0,i=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),t[b>>2]=i>>>8|f,t[b+4>>2]=y&1048575,y=i<<12|a>>>20,f=a<<12&-4096,r=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),i=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),b=s+48|0,t[b>>2]=i>>>20|f,t[b+4>>2]=y&1048575,t[s+80>>2]=0,t[s+40>>2]=r,t[s+44>>2]=i&1048575,r=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),w=r,a=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),y=r<<12|a>>>20,f=a<<12&-4096,k=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),a=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),r=a,i=s,c=r>>>20|f,t[i+8>>2]=c,A=y&1048575,t[i+12>>2]=A,t[i>>2]=k,x=r&1048575,t[i+4>>2]=x,a=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),y=a,r=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),n=(r&65535)<<16|a>>>16,t[i+32>>2]=n,f=r>>>16|0,t[i+36>>2]=f,a=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),r=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),T=r<<24|a>>>8,E=a<<24&-16777216|w>>>8,t[i+16>>2]=E,w=T&1048575,t[i+20>>2]=w,b=y<<4&1048560,a=(r&268435455)<<4|a>>>28,t[i+24>>2]=a,i=r>>>28|b,t[s+28>>2]=i,!(c|k|n|E|a|(A|x|f|w|i))){O0[t[h+168>>2]](690116,t[h+172>>2]);break n}if(t[s+92>>2]=0,ie(s+96|0,690949,s+92|0),t[s+92>>2]||(r=s+8|0,a=t[r+4>>2],n=s+160|0,i=n+8|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+16|0,a=t[r+4>>2],i=n+16|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+24|0,a=t[r+4>>2],i=n+24|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+32|0,a=t[r+4>>2],i=n+32|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+48|0,a=t[r+4>>2],i=n+48|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+56|0,a=t[r+4>>2],i=n+56|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s- -64|0,a=t[r+4>>2],i=n- -64|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,r=s+72|0,a=t[r+4>>2],i=n+72|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,t[s+280>>2]=0,i=t[s+4>>2],t[s+160>>2]=t[s>>2],t[s+164>>2]=i,i=t[s+44>>2],t[s+200>>2]=t[s+40>>2],t[s+204>>2]=i,i=s+248|0,t[i>>2]=0,t[i+4>>2]=0,i=s+256|0,t[i>>2]=0,t[i+4>>2]=0,i=s+264|0,t[i>>2]=0,t[i+4>>2]=0,i=s+272|0,t[i>>2]=0,t[i+4>>2]=0,a=s+128|0,i=a+16|0,t[i>>2]=0,t[i+4>>2]=0,i=a+24|0,t[i>>2]=0,t[i+4>>2]=0,t[s+240>>2]=1,t[s+244>>2]=0,t[s+136>>2]=0,t[s+140>>2]=0,t[s+128>>2]=1,t[s+132>>2]=0,h2(n,n,a,s+96|0),t[s+280>>2]))break n;Lt(s,s+160|0),ct(d,s),g=1}if(D=s+288|0,g){if(t[o+132>>2]=0,i=Bi(T0(),o+8|0,o+132|0,o+136|0),t[o+204>>2]=i,(i|0)!=1||(i=ma(t[172688],o+8|0),t[o+204>>2]=i,(i|0)!=1))break t;i=t[o+132>>2];break e}i=-1;break e}q(1)}return D=o+208|0,i|0}t[o+80>>2]=0,A0(o+72|0),ge()}function he(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0;e=D-192|0,D=e,a=e+128|0,f=a+56|0,t[f>>2]=0,t[f+4>>2]=0,y=a+48|0,t[y>>2]=0,t[y+4>>2]=0,c=a+40|0,t[c>>2]=0,t[c+4>>2]=0,g=a+32|0,t[g>>2]=0,t[g+4>>2]=0,E=a+24|0,t[E>>2]=0,t[E+4>>2]=0,k=a+16|0,t[k>>2]=0,t[k+4>>2]=0,x=a+8|0,t[x>>2]=0,t[x+4>>2]=0,t[e+128>>2]=0,t[e+132>>2]=0;t:{if((Tn(t[172688],a,690885)|0)==1){if(a=e+128|0,r=a+15|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),s=e- -64|0,b=s+8|0,t[b>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[b+4>>2]=n,r=a+23|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),w=s+16|0,t[w>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[w+4>>2]=n,r=a+31|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),h=s+24|0,t[h>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[h+4>>2]=n,r=a+39|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),T=s+32|0,t[T>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[T+4>>2]=n,r=a+47|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),A=s+40|0,t[A>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[A+4>>2]=n,r=a+55|0,n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),d=s+48|0,t[d>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[d+4>>2]=n,r=s+56|0,u[r|0]=l[a+63|0],u[e+2|0]=l[e+130|0],v[e>>1]=B[e+128>>1],s=l[e+139|0]|l[e+140|0]<<8|(l[e+141|0]<<16|l[e+142|0]<<24),t[e+64>>2]=l[e+135|0]|l[e+136|0]<<8|(l[e+137|0]<<16|l[e+138|0]<<24),t[e+68>>2]=s,s=l[e+131|0]|l[e+132|0]<<8|(l[e+133|0]<<16|l[e+134|0]<<24),u[e+63|0]=l[r|0],n=t[d+4>>2],r=e+55|0,d=t[d>>2],u[r|0]=d,u[r+1|0]=d>>>8,u[r+2|0]=d>>>16,u[r+3|0]=d>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,n=t[A+4>>2],r=e+47|0,A=t[A>>2],u[r|0]=A,u[r+1|0]=A>>>8,u[r+2|0]=A>>>16,u[r+3|0]=A>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,n=t[T+4>>2],r=e+39|0,T=t[T>>2],u[r|0]=T,u[r+1|0]=T>>>8,u[r+2|0]=T>>>16,u[r+3|0]=T>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,n=t[h+4>>2],r=e+31|0,h=t[h>>2],u[r|0]=h,u[r+1|0]=h>>>8,u[r+2|0]=h>>>16,u[r+3|0]=h>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,n=t[w+4>>2],r=e+23|0,w=t[w>>2],u[r|0]=w,u[r+1|0]=w>>>8,u[r+2|0]=w>>>16,u[r+3|0]=w>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,n=t[b+4>>2],r=e+15|0,b=t[b>>2],u[r|0]=b,u[r+1|0]=b>>>8,u[r+2|0]=b>>>16,u[r+3|0]=b>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,u[e+3|0]=s,u[e+4|0]=s>>>8,u[e+5|0]=s>>>16,u[e+6|0]=s>>>24,r=t[e+68>>2],s=t[e+64>>2],u[e+7|0]=s,u[e+8|0]=s>>>8,u[e+9|0]=s>>>16,u[e+10|0]=s>>>24,u[e+11|0]=r,u[e+12|0]=r>>>8,u[e+13|0]=r>>>16,u[e+14|0]=r>>>24,t[f>>2]=0,t[f+4>>2]=0,t[y>>2]=0,t[y+4>>2]=0,t[c>>2]=0,t[c+4>>2]=0,t[g>>2]=0,t[g+4>>2]=0,t[E>>2]=0,t[E+4>>2]=0,t[k>>2]=0,t[k+4>>2]=0,t[x>>2]=0,t[x+4>>2]=0,t[e+128>>2]=0,t[e+132>>2]=0,(Tn(t[172688],a,690917)|0)==1){x=T0(),o=D-288|0,D=o;e:{if(!e){O0[t[x+168>>2]](689629,t[x+172>>2]);break e}if(s=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),a=s>>>16|0,n=o+72|0,r=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),t[n>>2]=(s&65535)<<16|r>>>16,t[n+4>>2]=a,f=r<<4&1048560,s=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),a=s>>>28|0,n=o- -64|0,r=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),t[n>>2]=(s&268435455)<<4|r>>>28,t[n+4>>2]=a|f,a=s<<24|r>>>8,f=r<<24&-16777216,r=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),n=o+56|0,s=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),t[n>>2]=s>>>8|f,t[n+4>>2]=a&1048575,s=(s<<12|r>>>20)&1048575,f=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),n=o+48|0,y=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),t[n>>2]=r<<12&-4096|y>>>20,t[n+4>>2]=s,t[o+40>>2]=f,t[o+44>>2]=y&1048575,a=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),n=a,s=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),a=a<<12|s>>>20,f=s<<12&-4096,s=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),r=o,c=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),b=c>>>20|f,t[r+8>>2]=b,w=a&1048575,t[r+12>>2]=w,f=s,t[r>>2]=s,h=c&1048575,t[r+4>>2]=h,s=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),a=s>>>16|0,y=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),E=(s&65535)<<16|y>>>16,t[r+32>>2]=E,g=a,t[r+36>>2]=a,a=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),s=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),A=(a<<24|s>>>8)&1048575,n=s<<24&-16777216|n>>>8,t[r+16>>2]=n,T=A,t[r+20>>2]=T,y=y<<4&1048560,r=a,a=r>>>28|0,r=(r&268435455)<<4|s>>>28,t[o+24>>2]=r,a=a|y,t[o+28>>2]=a,!(f|b|E|n|r|(w|h|g|T|a))){O0[t[x+168>>2]](690116,t[x+172>>2]);break e}if(t[o+92>>2]=0,ie(o+96|0,690949,o+92|0),t[o+92>>2]||(r=o+8|0,s=t[r+4>>2],a=o+160|0,n=a+8|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+16|0,s=t[r+4>>2],n=a+16|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+24|0,s=t[r+4>>2],n=a+24|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+32|0,s=t[r+4>>2],n=a+32|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+48|0,s=t[r+4>>2],n=a+48|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+56|0,s=t[r+4>>2],n=a+56|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o- -64|0,s=t[r+4>>2],n=a- -64|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,r=o+72|0,s=t[r+4>>2],n=a+72|0,t[n>>2]=t[r>>2],t[n+4>>2]=s,t[o+280>>2]=0,r=t[o+4>>2],t[o+160>>2]=t[o>>2],t[o+164>>2]=r,r=t[o+44>>2],t[o+200>>2]=t[o+40>>2],t[o+204>>2]=r,r=o+248|0,t[r>>2]=0,t[r+4>>2]=0,r=o+256|0,t[r>>2]=0,t[r+4>>2]=0,r=o+264|0,t[r>>2]=0,t[r+4>>2]=0,r=o+272|0,t[r>>2]=0,t[r+4>>2]=0,r=o+128|0,s=r+16|0,t[s>>2]=0,t[s+4>>2]=0,s=r+24|0,t[s>>2]=0,t[s+4>>2]=0,t[o+240>>2]=1,t[o+244>>2]=0,t[o+136>>2]=0,t[o+140>>2]=0,t[o+128>>2]=1,t[o+132>>2]=0,h2(a,a,r,o+96|0),t[o+280>>2])||(Lt(o,o+160|0),s=t[o+8>>2],n=t[o+12>>2],f=t[o+4>>2],c=t[o+32>>2],y=t[o+36>>2],E=y,a=t[o>>2],r=I0(y>>>16|0,0,977,1),T=a+r|0,a=f+i0|0,g=r>>>0>T>>>0?a+1|0:a,a=n,r=g>>>20|0,n=r,r=r+s|0,n=n>>>0>r>>>0?a+1|0:a,x=n&1048575,k=t[o+24>>2],b=t[o+28>>2],a=t[o+20>>2],s=n>>>20|0,y=s+t[o+16>>2]|0,f=s>>>0>y>>>0?a+1|0:a,a=b,s=f>>>20|0,d=s,s=s+k|0,a=d>>>0>s>>>0?a+1|0:a,b=a&1048575,f=f&1048575,k=(r&y&s)==-1&(n&f&a)==1048575,n=a,a=E&65535,n=n>>>20|0,h=n+c|0,a=n>>>0>h>>>0?a+1|0:a,n=a,w=g&1048575,k&((h|0)==-1&(a|0)==65535)&((w|0)==1048574&T>>>0>4294966318|w>>>0>1048574)|a>>>16&&(a=w+1|0,T=T+977|0,a=T>>>0<977?a+1|0:a,w=a&1048575,c=a,a=x,c=c>>>20|0,r=r+c|0,a=c>>>0>r>>>0?a+1|0:a,x=a&1048575,c=a,a=f,c=c>>>20|0,y=c+y|0,a=c>>>0>y>>>0?a+1|0:a,f=a&1048575,c=a,a=b,c=c>>>20|0,s=s+c|0,a=c>>>0>s>>>0?a+1|0:a,b=a&1048575,c=a,a=n,n=h,h=(c>>>20|0)+h|0,n=(n>>>0>h>>>0?a+1|0:a)&65535),t[o+32>>2]=h,t[o+36>>2]=n,t[o+24>>2]=s,t[o+28>>2]=b,t[o+16>>2]=y,t[o+20>>2]=f,t[o+8>>2]=r,t[o+12>>2]=x,t[o>>2]=T,t[o+4>>2]=w,E=t[o+48>>2],k=t[o+52>>2],d=t[o+44>>2],c=t[o+72>>2],A=t[o+76>>2],R=A,a=t[o+40>>2],g=I0(A>>>16|0,0,977,1),A=a+g|0,a=d+i0|0,I=g>>>0>A>>>0?a+1|0:a,a=k,g=I>>>20|0,E=g+E|0,d=g>>>0>E>>>0?a+1|0:a,N=d&1048575,S=c,L=R&65535,g=t[o+64>>2],C=t[o+68>>2],a=t[o+60>>2],c=d>>>20|0,k=c+t[o+56>>2]|0,R=c>>>0>k>>>0?a+1|0:a,a=C,c=R>>>20|0,C=c,c=c+g|0,g=C>>>0>c>>>0?a+1|0:a,a=L,C=g>>>20|0,L=C,C=S+C|0,a=L>>>0>C>>>0?a+1|0:a,S=R&1048575,I=I&1048575,(k&E&c)==-1&(d&S&g)==1048575&((C|0)==-1&(a|0)==65535)&((I|0)==1048574&A>>>0>4294966318|I>>>0>1048574)|a>>>16&&(a=I+1|0,A=A+977|0,a=A>>>0<977?a+1|0:a,I=a&1048575,d=a,a=N,d=d>>>20|0,E=d+E|0,a=d>>>0>E>>>0?a+1|0:a,N=a&1048575,d=a,a=S,d=d>>>20|0,k=d+k|0,a=d>>>0>k>>>0?a+1|0:a,S=a&1048575,d=a,a=g,d=d>>>20|0,c=c+d|0,g=d>>>0>c>>>0?a+1|0:a),t[o+56>>2]=k,t[o+60>>2]=S,t[o+48>>2]=E,t[o+52>>2]=N,t[o+40>>2]=A,t[o+44>>2]=I,t[o+64>>2]=c,t[o+68>>2]=g&1048575,l[690917]!=(n>>>8&255))||l[690918]!=(n&255)||l[690919]!=(((n&16777215)<<8|h>>>24)&255)||l[690920]!=(((n&65535)<<16|h>>>16)&255)||l[690921]!=(((n&255)<<24|h>>>8)&255)||l[690922]!=(h&255)||l[690923]!=(b>>>12|0)||l[690924]!=(b>>>4&255)||l[690925]!=(((b&268435455)<<4|s>>>28)&255)||l[690926]!=(((b&1048575)<<12|s>>>20)&255)||l[690927]!=(((b&4095)<<20|s>>>12)&255)||l[690928]!=(((b&15)<<28|s>>>4)&255)||l[690929]!=((s<<4|f>>>16)&255)||(a=f,l[690930]!=(a>>>8&255))||l[690931]!=(a&255)||l[690932]!=(((f&16777215)<<8|y>>>24)&255)||l[690933]!=(((f&65535)<<16|y>>>16)&255)||l[690934]!=(((f&255)<<24|y>>>8)&255)||l[690935]!=(y&255)||l[690936]!=(x>>>12|0)||l[690937]!=(x>>>4&255)||l[690938]!=(((x&268435455)<<4|r>>>28)&255)||l[690939]!=(((x&1048575)<<12|r>>>20)&255)||l[690940]!=(((x&4095)<<20|r>>>12)&255)||l[690941]!=(((x&15)<<28|r>>>4)&255)||l[690942]!=((r<<4|w>>>16)&255)||(a=w,l[690943]!=(a>>>8&255))||l[690944]!=(a&255)||l[690945]!=(((w&16777215)<<8|T>>>24)&255)||l[690946]!=(((w&65535)<<16|T>>>16)&255)||l[690947]!=(((w&255)<<24|T>>>8)&255)||l[690948]!=(T&255))break e;z=(A&1)==(i|0)}D=o+288|0;break t}q(1);break t}q(1)}return D=e+192|0,z|0}function Re(i,r){i=i|0,r=r|0;var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0;e=D-208|0,D=e,a=e+136|0,s=a+56|0,t[s>>2]=0,t[s+4>>2]=0,s=a+48|0,t[s>>2]=0,t[s+4>>2]=0,s=a+40|0,t[s>>2]=0,t[s+4>>2]=0,s=a+32|0,t[s>>2]=0,t[s+4>>2]=0,s=a+24|0,t[s>>2]=0,t[s+4>>2]=0,s=a+16|0,t[s>>2]=0,t[s+4>>2]=0,s=a+8|0,t[s>>2]=0,t[s+4>>2]=0,t[e+136>>2]=0,t[e+140>>2]=0;t:{if((Jt(t[172688],a,690820,i)|0)==1){if(a=e+136|0,i=a+15|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),s=e+72|0,o=s+8|0,t[o>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[o+4>>2]=n,i=a+23|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),c=s+16|0,t[c>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[c+4>>2]=n,i=a+31|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),d=s+24|0,t[d>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[d+4>>2]=n,i=a+39|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),f=s+32|0,t[f>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[f+4>>2]=n,i=a+47|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),y=s+40|0,t[y>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[y+4>>2]=n,i=a+55|0,n=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),b=s+48|0,t[b>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[b+4>>2]=n,n=s+56|0,u[n|0]=l[a+63|0],u[e+10|0]=l[e+138|0],v[e+8>>1]=B[e+136>>1],i=l[e+147|0]|l[e+148|0]<<8|(l[e+149|0]<<16|l[e+150|0]<<24),t[e+72>>2]=l[e+143|0]|l[e+144|0]<<8|(l[e+145|0]<<16|l[e+146|0]<<24),t[e+76>>2]=i,s=l[e+139|0]|l[e+140|0]<<8|(l[e+141|0]<<16|l[e+142|0]<<24),i=e+8|0,u[i+63|0]=l[n|0],n=t[b+4>>2],a=i+55|0,b=t[b>>2],u[a|0]=b,u[a+1|0]=b>>>8,u[a+2|0]=b>>>16,u[a+3|0]=b>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[y+4>>2],a=i+47|0,y=t[y>>2],u[a|0]=y,u[a+1|0]=y>>>8,u[a+2|0]=y>>>16,u[a+3|0]=y>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[f+4>>2],a=i+39|0,f=t[f>>2],u[a|0]=f,u[a+1|0]=f>>>8,u[a+2|0]=f>>>16,u[a+3|0]=f>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[d+4>>2],a=i+31|0,d=t[d>>2],u[a|0]=d,u[a+1|0]=d>>>8,u[a+2|0]=d>>>16,u[a+3|0]=d>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[c+4>>2],a=i+23|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[o+4>>2],a=i+15|0,o=t[o>>2],u[a|0]=o,u[a+1|0]=o>>>8,u[a+2|0]=o>>>16,u[a+3|0]=o>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,u[e+11|0]=s,u[e+12|0]=s>>>8,u[e+13|0]=s>>>16,u[e+14|0]=s>>>24,a=t[e+76>>2],s=t[e+72>>2],u[e+15|0]=s,u[e+16|0]=s>>>8,u[e+17|0]=s>>>16,u[e+18|0]=s>>>24,u[e+19|0]=a,u[e+20|0]=a>>>8,u[e+21|0]=a>>>16,u[e+22|0]=a>>>24,t[e+204>>2]=r,i=z2(t[172688],e+204|0,i,(r|0)==33?258:2),t[e+72>>2]=i,(i|0)==1)break t;t[e+144>>2]=0,A0(e+136|0),ge()}q(1)}D=e+208|0}function xe(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0;a=D-96|0,D=a,r=a+56|0,t[r>>2]=0,t[r+4>>2]=0,r=a+48|0,t[r>>2]=0,t[r+4>>2]=0,r=a+40|0,t[r>>2]=0,t[r+4>>2]=0,r=a+32|0,t[r>>2]=0,t[r+4>>2]=0,r=a+24|0,t[r>>2]=0,t[r+4>>2]=0,r=a+16|0,t[r>>2]=0,t[r+4>>2]=0,r=a+8|0,t[r>>2]=0,t[r+4>>2]=0,t[a>>2]=0,t[a+4>>2]=0,n=T0(),e=D-256|0,D=e;t:{if(!a){O0[t[n+168>>2]](689638,t[n+172>>2]),r=0;break t}if(u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,r=a+56|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+48|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+40|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+32|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+24|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+16|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=a+8|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,!t[n>>2]){O0[t[n+168>>2]](690045,t[n+172>>2]),r=0;break t}d=e+8|0,o=e+128|0,ie(d,690788,o),f=t[e+32>>2],y=t[e+24>>2],s=t[e+16>>2],b=t[e+8>>2],h=t[e+36>>2],g=t[e+28>>2],w=t[e+20>>2],T=t[e+12>>2],c=t[e+128>>2]|!(f|(y|(s|b))|(h|(g|(w|T)))),r=c?0:-1,t[e+32>>2]=r&f,t[e+36>>2]=r&h,t[e+24>>2]=r&y,t[e+28>>2]=r&g,t[e+16>>2]=r&s,t[e+20>>2]=r&w,s=(c|0)!=0,t[e+8>>2]=s|r&b,t[e+12>>2]=r&T,gn(n,o,d),r=e+40|0,Lt(r,o),ct(a,r),t[e+128>>2]=s,r=t[e+128>>2]-1|0,u[a|0]=r&l[a|0],u[a+1|0]=l[a+1|0]&r,u[a+2|0]=l[a+2|0]&r,u[a+3|0]=l[a+3|0]&r,u[a+4|0]=l[a+4|0]&r,u[a+5|0]=l[a+5|0]&r,u[a+6|0]=l[a+6|0]&r,u[a+7|0]=l[a+7|0]&r,u[a+8|0]=l[a+8|0]&r,u[a+9|0]=l[a+9|0]&r,u[a+10|0]=l[a+10|0]&r,u[a+11|0]=l[a+11|0]&r,u[a+12|0]=l[a+12|0]&r,u[a+13|0]=l[a+13|0]&r,u[a+14|0]=l[a+14|0]&r,u[a+15|0]=l[a+15|0]&r,u[a+16|0]=l[a+16|0]&r,u[a+17|0]=l[a+17|0]&r,u[a+18|0]=l[a+18|0]&r,u[a+19|0]=l[a+19|0]&r,u[a+20|0]=l[a+20|0]&r,u[a+21|0]=l[a+21|0]&r,u[a+22|0]=l[a+22|0]&r,u[a+23|0]=l[a+23|0]&r,u[a+24|0]=l[a+24|0]&r,u[a+25|0]=l[a+25|0]&r,u[a+26|0]=l[a+26|0]&r,u[a+27|0]=l[a+27|0]&r,u[a+28|0]=l[a+28|0]&r,u[a+29|0]=l[a+29|0]&r,u[a+30|0]=l[a+30|0]&r,u[a+31|0]=l[a+31|0]&r,u[a+32|0]=l[a+32|0]&r,u[a+33|0]=l[a+33|0]&r,u[a+34|0]=l[a+34|0]&r,u[a+35|0]=l[a+35|0]&r,u[a+36|0]=l[a+36|0]&r,u[a+37|0]=l[a+37|0]&r,u[a+38|0]=l[a+38|0]&r,u[a+39|0]=l[a+39|0]&r,u[a+40|0]=l[a+40|0]&r,u[a+41|0]=l[a+41|0]&r,u[a+42|0]=l[a+42|0]&r,u[a+43|0]=l[a+43|0]&r,u[a+44|0]=l[a+44|0]&r,u[a+45|0]=l[a+45|0]&r,u[a+46|0]=l[a+46|0]&r,u[a+47|0]=l[a+47|0]&r,u[a+48|0]=l[a+48|0]&r,u[a+49|0]=l[a+49|0]&r,u[a+50|0]=l[a+50|0]&r,u[a+51|0]=l[a+51|0]&r,u[a+52|0]=l[a+52|0]&r,u[a+53|0]=l[a+53|0]&r,u[a+54|0]=l[a+54|0]&r,u[a+55|0]=l[a+55|0]&r,u[a+56|0]=l[a+56|0]&r,u[a+57|0]=l[a+57|0]&r,u[a+58|0]=l[a+58|0]&r,u[a+59|0]=l[a+59|0]&r,u[a+60|0]=l[a+60|0]&r,u[a+61|0]=l[a+61|0]&r,u[a+62|0]=l[a+62|0]&r,u[a+63|0]=l[a+63|0]&r,r=!c}D=e+256|0;t:{if(r){if(t[a+64>>2]=i,i=z2(t[172688],a- -64|0,a,(i|0)==33?258:2),t[a+68>>2]=i,(i|0)!=1)break t;A=1}return D=a+96|0,A|0}t[a+80>>2]=0,A0(a+72|0),ge()}function ut(){var i=0,r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0;e=D-304|0,D=e,a=e+200|0,me(a,96);t:{e:{n:{if((Ii(T0(),a)|0)==1){u[e+10|0]=l[e+202|0],v[e+8>>1]=B[e+200>>1],a=l[e+203|0]|l[e+204|0]<<8|(l[e+205|0]<<16|l[e+206|0]<<24),i=e+104|0,s=e+200|0,Ze(i,s|7,89),r=e+8|0,Ze(r|7,i,89),u[e+11|0]=a,u[e+12|0]=a>>>8,u[e+13|0]=a>>>16,u[e+14|0]=a>>>24,a=e+256|0,t[a>>2]=0,t[a+4>>2]=0,a=e+248|0,t[a>>2]=0,t[a+4>>2]=0,a=e+240|0,t[a>>2]=0,t[a+4>>2]=0,a=e+232|0,t[a>>2]=0,t[a+4>>2]=0,a=e+224|0,t[a>>2]=0,t[a+4>>2]=0,a=e+216|0,t[a>>2]=0,t[a+4>>2]=0,a=e+208|0,t[a>>2]=0,t[a+4>>2]=0,t[e+200>>2]=0,t[e+204>>2]=0,t[e+196>>2]=0,y=T0(),T=e+196|0,a=D-96|0,D=a;r:{if(!s){O0[t[y+168>>2]](689638,t[y+172>>2]),i=0;break r}if(u[s|0]=0,u[s+1|0]=0,u[s+2|0]=0,u[s+3|0]=0,u[s+4|0]=0,u[s+5|0]=0,u[s+6|0]=0,u[s+7|0]=0,i=s+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=s+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,!r){O0[t[y+168>>2]](689700,t[y+172>>2]),i=0;break r}if(b=l[r+92|0]|l[r+93|0]<<8|(l[r+94|0]<<16|l[r+95|0]<<24),i=b>>>16|0,o=a+80|0,c=l[r+88|0]|l[r+89|0]<<8|(l[r+90|0]<<16|l[r+91|0]<<24),b=(b&65535)<<16|c>>>16,t[o>>2]=b,N=i,t[o+4>>2]=i,f=c<<4&1048560,n=l[r+84|0]|l[r+85|0]<<8|(l[r+86|0]<<16|l[r+87|0]<<24),i=n>>>28|0,o=a+72|0,c=l[r+80|0]|l[r+81|0]<<8|(l[r+82|0]<<16|l[r+83|0]<<24),h=(n&268435455)<<4|c>>>28,t[o>>2]=h,A=i|f,t[o+4>>2]=A,i=n<<24|c>>>8,d=c<<24&-16777216,c=l[r+72|0]|l[r+73|0]<<8|(l[r+74|0]<<16|l[r+75|0]<<24),f=a+8|0,o=f+56|0,n=l[r+76|0]|l[r+77|0]<<8|(l[r+78|0]<<16|l[r+79|0]<<24),g=n>>>8|d,t[o>>2]=g,x=i&1048575,t[o+4>>2]=x,i=c,n=n<<12|i>>>20,c=l[r+64|0]|l[r+65|0]<<8|(l[r+66|0]<<16|l[r+67|0]<<24),o=f+48|0,d=l[r+68|0]|l[r+69|0]<<8|(l[r+70|0]<<16|l[r+71|0]<<24),w=i<<12&-4096|d>>>20,t[o>>2]=w,E=n&1048575,t[o+4>>2]=E,t[a+88>>2]=0,t[a+48>>2]=c,k=d&1048575,t[a+52>>2]=k,i=l[r+44|0]|l[r+45|0]<<8|(l[r+46|0]<<16|l[r+47|0]<<24),o=i,n=l[r+40|0]|l[r+41|0]<<8|(l[r+42|0]<<16|l[r+43|0]<<24),d=(i<<12|n>>>20)&1048575,i=l[r+32|0]|l[r+33|0]<<8|(l[r+34|0]<<16|l[r+35|0]<<24),f=n<<12&-4096,n=l[r+36|0]|l[r+37|0]<<8|(l[r+38|0]<<16|l[r+39|0]<<24),C=f|n>>>20,t[a+16>>2]=C,L=d,t[a+20>>2]=d,f=i,t[a+8>>2]=i,I=n&1048575,t[a+12>>2]=I,n=l[r+60|0]|l[r+61|0]<<8|(l[r+62|0]<<16|l[r+63|0]<<24),i=n>>>16|0,d=l[r+56|0]|l[r+57|0]<<8|(l[r+58|0]<<16|l[r+59|0]<<24),S=(n&65535)<<16|d>>>16,t[a+40>>2]=S,z=i,t[a+44>>2]=i,n=l[r+48|0]|l[r+49|0]<<8|(l[r+50|0]<<16|l[r+51|0]<<24),i=l[r+52|0]|l[r+53|0]<<8|(l[r+54|0]<<16|l[r+55|0]<<24),r=i,R=(i<<24|n>>>8)&1048575,o=n<<24&-16777216|o>>>8,t[a+24>>2]=o,t[a+28>>2]=R,d=d<<4&1048560,i=i>>>28|0,n=(r&268435455)<<4|n>>>28,t[a+32>>2]=n,i=i|d,t[a+36>>2]=i,!(f|C|S|o|n|(L|I|z|R|i))){O0[t[y+168>>2]](690116,t[y+172>>2]),i=0;break r}c&1&&(t[a+80>>2]=-4-b,t[a+84>>2]=262143-((b>>>0>4294967292)+N|0),t[a+72>>2]=-4-h,t[a+76>>2]=4194303-((h>>>0>4294967292)+A|0),t[a+64>>2]=-4-g,t[a+68>>2]=4194303-((g>>>0>4294967292)+x|0),t[a+56>>2]=-4-w,t[a+60>>2]=4194303-((w>>>0>4294967292)+E|0),t[a+48>>2]=-3908-c,t[a+52>>2]=4194299-((c>>>0>4294963388)+k|0),H=1),T&&(t[T>>2]=H),ct(s,a+8|0),i=1}if(D=a+96|0,t[e+300>>2]=i,(i|0)==1)break n;break t}q(0);break e}if(a=ma(t[172688],e+200|0),t[e+300>>2]=a,i=1,(a|0)==1)break e;break t}return D=e+304|0,i|0}t[e+112>>2]=0,A0(e+104|0),ge()}function _e(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0;e=D-272|0,D=e,r=e+8|0,n=r+56|0,t[n>>2]=0,t[n+4>>2]=0,a=r+48|0,t[a>>2]=0,t[a+4>>2]=0,s=r+40|0,t[s>>2]=0,t[s+4>>2]=0,o=r+32|0,t[o>>2]=0,t[o+4>>2]=0,c=r+24|0,t[c>>2]=0,t[c+4>>2]=0,d=r+16|0,t[d>>2]=0,t[d+4>>2]=0,f=r+8|0,t[f>>2]=0,t[f+4>>2]=0,t[e+8>>2]=0,t[e+12>>2]=0,t[e+76>>2]=0,r=e+208|0,y=r+56|0,t[y>>2]=0,t[y+4>>2]=0,b=r+48|0,t[b>>2]=0,t[b+4>>2]=0,h=r+40|0,t[h>>2]=0,t[h+4>>2]=0,g=r+32|0,t[g>>2]=0,t[g+4>>2]=0,w=r+24|0,t[w>>2]=0,t[w+4>>2]=0,T=r+16|0,t[T>>2]=0,t[T+4>>2]=0,A=r+8|0,t[A>>2]=0,t[A+4>>2]=0,t[e+208>>2]=0,t[e+212>>2]=0;t:{e:{if((Jt(t[172688],r,690820,i)|0)==1){if(r=e+208|0,i=r+15|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),n=e+144|0,s=n+8|0,t[s>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[s+4>>2]=a,i=r+23|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),o=n+16|0,t[o>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[o+4>>2]=a,i=r+31|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),c=n+24|0,t[c>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[c+4>>2]=a,i=r+39|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),d=n+32|0,t[d>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[d+4>>2]=a,i=r+47|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),f=n+40|0,t[f>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[f+4>>2]=a,i=r+55|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),y=n+48|0,t[y>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[y+4>>2]=a,a=n+56|0,u[a|0]=l[r+63|0],u[e+82|0]=l[e+210|0],v[e+80>>1]=B[e+208>>1],i=l[e+219|0]|l[e+220|0]<<8|(l[e+221|0]<<16|l[e+222|0]<<24),t[e+144>>2]=l[e+215|0]|l[e+216|0]<<8|(l[e+217|0]<<16|l[e+218|0]<<24),t[e+148>>2]=i,n=l[e+211|0]|l[e+212|0]<<8|(l[e+213|0]<<16|l[e+214|0]<<24),i=e+80|0,u[i+63|0]=l[a|0],a=t[y+4>>2],r=i+55|0,y=t[y>>2],u[r|0]=y,u[r+1|0]=y>>>8,u[r+2|0]=y>>>16,u[r+3|0]=y>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,a=t[f+4>>2],r=i+47|0,f=t[f>>2],u[r|0]=f,u[r+1|0]=f>>>8,u[r+2|0]=f>>>16,u[r+3|0]=f>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,a=t[d+4>>2],r=i+39|0,d=t[d>>2],u[r|0]=d,u[r+1|0]=d>>>8,u[r+2|0]=d>>>16,u[r+3|0]=d>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,a=t[c+4>>2],r=i+31|0,c=t[c>>2],u[r|0]=c,u[r+1|0]=c>>>8,u[r+2|0]=c>>>16,u[r+3|0]=c>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,a=t[o+4>>2],r=i+23|0,o=t[o>>2],u[r|0]=o,u[r+1|0]=o>>>8,u[r+2|0]=o>>>16,u[r+3|0]=o>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,a=t[s+4>>2],r=i+15|0,s=t[s>>2],u[r|0]=s,u[r+1|0]=s>>>8,u[r+2|0]=s>>>16,u[r+3|0]=s>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,u[e+83|0]=n,u[e+84|0]=n>>>8,u[e+85|0]=n>>>16,u[e+86|0]=n>>>24,r=t[e+148>>2],n=t[e+144>>2],u[e+87|0]=n,u[e+88|0]=n>>>8,u[e+89|0]=n>>>16,u[e+90|0]=n>>>24,u[e+91|0]=r,u[e+92|0]=r>>>8,u[e+93|0]=r>>>16,u[e+94|0]=r>>>24,i=Bi(T0(),e+8|0,e+76|0,i),t[e+144>>2]=i,(i|0)!=1)break t;i=e+8|0,n=i+8|0,a=t[n+4>>2],r=e+208|0,s=r+8|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=i+16|0,a=t[n+4>>2],s=r+16|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=i+24|0,a=t[n+4>>2],s=r+24|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=i+32|0,a=t[n+4>>2],s=r+32|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=i+40|0,a=t[n+4>>2],s=r+40|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=i+48|0,a=t[n+4>>2],s=r+48|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,i=i+56|0,n=t[i+4>>2],r=r+56|0,t[r>>2]=t[i>>2],t[r+4>>2]=n;break e}q(1),i=t[n+4>>2],t[y>>2]=t[n>>2],t[y+4>>2]=i,i=t[a+4>>2],t[b>>2]=t[a>>2],t[b+4>>2]=i,i=t[s+4>>2],t[h>>2]=t[s>>2],t[h+4>>2]=i,i=t[o+4>>2],t[g>>2]=t[o>>2],t[g+4>>2]=i,i=t[c+4>>2],t[w>>2]=t[c>>2],t[w+4>>2]=i,i=t[d+4>>2],t[T>>2]=t[d>>2],t[T+4>>2]=i,i=t[f+4>>2],t[A>>2]=t[f>>2],t[A+4>>2]=i}if(i=t[e+12>>2],t[e+208>>2]=t[e+8>>2],t[e+212>>2]=i,r=e+208|0,n=r+56|0,a=t[n+4>>2],i=e+80|0,s=i+56|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=r+48|0,a=t[n+4>>2],s=i+48|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=r+40|0,a=t[n+4>>2],s=i+40|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=r+32|0,a=t[n+4>>2],s=i+32|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=r+24|0,a=t[n+4>>2],s=i+24|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,n=r+16|0,a=t[n+4>>2],s=i+16|0,t[s>>2]=t[n>>2],t[s+4>>2]=a,r=r+8|0,n=t[r+4>>2],a=i+8|0,t[a>>2]=t[r>>2],t[a+4>>2]=n,r=t[e+212>>2],t[e+80>>2]=t[e+208>>2],t[e+84>>2]=r,i=ma(t[172688],i),t[e+8>>2]=i,(i|0)!=1)break t;return D=e+272|0,1}t[e+216>>2]=0,A0(e+208|0),ge()}function mn(i,r){i=i|0,r=r|0;var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0;s=D-208|0,D=s,a=s+136|0,n=a+56|0,t[n>>2]=0,t[n+4>>2]=0,n=a+48|0,t[n>>2]=0,t[n+4>>2]=0,n=a+40|0,t[n>>2]=0,t[n+4>>2]=0,n=a+32|0,t[n>>2]=0,t[n+4>>2]=0,n=a+24|0,t[n>>2]=0,t[n+4>>2]=0,n=a+16|0,t[n>>2]=0,t[n+4>>2]=0,n=a+8|0,t[n>>2]=0,t[n+4>>2]=0,t[s+136>>2]=0,t[s+140>>2]=0;t:{if((Jt(t[172688],a,690820,i)|0)==1){y=s+136|0,a=y+15|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),n=s+72|0,g=n+8|0,t[g>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[g+4>>2]=i,a=y+23|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),h=n+16|0,t[h>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[h+4>>2]=i,a=y+31|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),f=n+24|0,t[f>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[f+4>>2]=i,a=y+39|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),c=n+32|0,t[c>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[c+4>>2]=i,a=y+47|0,i=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),b=n+40|0,t[b>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[b+4>>2]=i,d=y+55|0,i=l[d+4|0]|l[d+5|0]<<8|(l[d+6|0]<<16|l[d+7|0]<<24),a=n+48|0,t[a>>2]=l[d|0]|l[d+1|0]<<8|(l[d+2|0]<<16|l[d+3|0]<<24),t[a+4>>2]=i,n=n+56|0,u[n|0]=l[y+63|0],u[s+10|0]=l[s+138|0],v[s+8>>1]=B[s+136>>1],i=l[s+147|0]|l[s+148|0]<<8|(l[s+149|0]<<16|l[s+150|0]<<24),t[s+72>>2]=l[s+143|0]|l[s+144|0]<<8|(l[s+145|0]<<16|l[s+146|0]<<24),t[s+76>>2]=i,y=l[s+139|0]|l[s+140|0]<<8|(l[s+141|0]<<16|l[s+142|0]<<24),e=s+8|0,u[e+63|0]=l[n|0],n=t[a+4>>2],d=e+55|0,i=t[a>>2],u[d|0]=i,u[d+1|0]=i>>>8,u[d+2|0]=i>>>16,u[d+3|0]=i>>>24,u[d+4|0]=n,u[d+5|0]=n>>>8,u[d+6|0]=n>>>16,u[d+7|0]=n>>>24,n=t[b+4>>2],a=e+47|0,i=t[b>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[c+4>>2],a=e+39|0,i=t[c>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[f+4>>2],a=e+31|0,i=t[f>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[h+4>>2],a=e+23|0,i=t[h>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,n=t[g+4>>2],a=e+15|0,i=t[g>>2],u[a|0]=i,u[a+1|0]=i>>>8,u[a+2|0]=i>>>16,u[a+3|0]=i>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,u[s+11|0]=y,u[s+12|0]=y>>>8,u[s+13|0]=y>>>16,u[s+14|0]=y>>>24,n=t[s+76>>2],i=t[s+72>>2],u[s+15|0]=i,u[s+16|0]=i>>>8,u[s+17|0]=i>>>16,u[s+18|0]=i>>>24,u[s+19|0]=n,u[s+20|0]=n>>>8,u[s+21|0]=n>>>16,u[s+22|0]=n>>>24,w=T0(),o=D-288|0,D=o,t[o+4>>2]=0;e:{if(!e){O0[t[w+168>>2]](689638,t[w+172>>2]);break e}if(ie(o+8|0,690949,o+4|0),t[o+4>>2]){u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,i=e+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0;break e}if(i=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),d=i>>>16|0,b=o+112|0,n=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),t[b>>2]=(i&65535)<<16|n>>>16,t[b+4>>2]=d,b=n<<4&1048560,i=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),d=i>>>28|0,c=o+104|0,n=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),t[c>>2]=(i&268435455)<<4|n>>>28,t[c+4>>2]=d|b,d=i<<24|n>>>8,c=n<<24&-16777216,n=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),f=o+40|0,h=f+56|0,i=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),t[h>>2]=i>>>8|c,t[h+4>>2]=d&1048575,h=i<<12|n>>>20,c=n<<12&-4096,a=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),i=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),f=f+48|0,t[f>>2]=i>>>20|c,t[f+4>>2]=h&1048575,t[o+120>>2]=0,t[o+80>>2]=a,t[o+84>>2]=i&1048575,a=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),y=a,n=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),d=a<<12|n>>>20,c=n<<12&-4096,g=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),n=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),a=n,i=o,T=a>>>20|c,t[i+48>>2]=T,A=d&1048575,t[i+52>>2]=A,t[i+40>>2]=g,x=a&1048575,t[i+44>>2]=x,n=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),h=n,a=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),b=(a&65535)<<16|n>>>16,t[i+72>>2]=b,c=a>>>16|0,t[i+76>>2]=c,n=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),a=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),d=a<<24|n>>>8,E=n<<24&-16777216|y>>>8,t[i+56>>2]=E,y=d&1048575,t[i+60>>2]=y,f=h<<4&1048560,n=(a&268435455)<<4|n>>>28,t[i+64>>2]=n,i=a>>>28|f,t[o+68>>2]=i,!(g|T|b|E|n|(A|x|c|y|i))){O0[t[w+168>>2]](690116,t[w+172>>2]),i=e+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0;break e}if(u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,i=e+56|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+48|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+40|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+32|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+24|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+16|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,i=e+8|0,u[i|0]=0,u[i+1|0]=0,u[i+2|0]=0,u[i+3|0]=0,u[i+4|0]=0,u[i+5|0]=0,u[i+6|0]=0,u[i+7|0]=0,!(t[o+32>>2]|(t[o+24>>2]|(t[o+16>>2]|t[o+8>>2]))|(t[o+36>>2]|(t[o+28>>2]|(t[o+20>>2]|t[o+12>>2])))))break e;b=o+256|0,i=b+24|0,t[i>>2]=0,t[i+4>>2]=0,i=b+16|0,t[i>>2]=0,t[i+4>>2]=0,i=b+8|0,t[i>>2]=0,t[i+4>>2]=0,c=o+40|0,a=c+8|0,n=t[a+4>>2],f=o+128|0,i=f+8|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+16|0,n=t[a+4>>2],i=f+16|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+24|0,n=t[a+4>>2],i=f+24|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+32|0,n=t[a+4>>2],i=f+32|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+48|0,n=t[a+4>>2],i=f+48|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+56|0,n=t[a+4>>2],i=f+56|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c- -64|0,n=t[a+4>>2],i=f- -64|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,a=c+72|0,n=t[a+4>>2],i=f+72|0,t[i>>2]=t[a>>2],t[i+4>>2]=n,t[o+256>>2]=0,t[o+260>>2]=0,t[o+248>>2]=0,i=t[o+44>>2],t[o+128>>2]=t[o+40>>2],t[o+132>>2]=i,i=t[o+84>>2],t[o+168>>2]=t[o+80>>2],t[o+172>>2]=i,i=o+240|0,t[i>>2]=0,t[i+4>>2]=0,i=o+232|0,t[i>>2]=0,t[i+4>>2]=0,i=o+224|0,t[i>>2]=0,t[i+4>>2]=0,i=o+216|0,t[i>>2]=0,t[i+4>>2]=0,t[o+208>>2]=1,t[o+212>>2]=0,h2(f,f,o+8|0,b),Lt(c,f),ct(e,c),k=1}if(D=o+288|0,!k||(t[s+204>>2]=r,i=z2(t[172688],s+204|0,s+8|0,(r|0)==33?258:2),t[s+72>>2]=i,C=1,(i|0)==1))break t;t[s+144>>2]=0,A0(s+136|0),ge()}q(1)}return D=s+208|0,C|0}function Ut(){return(Pi()|0)==1|0}function Xt(){var i=0,r=0;if(i=D-32|0,D=i,r=Ei(t[172688],690949),t[i+4>>2]=r,(r|0)==1)return r=Pi(),D=i+32|0,(r|0)==1|0;t[i+16>>2]=0,A0(i+8|0),ge()}function bn(){var i=0,r=0;if(i=D-32|0,D=i,r=Ei(t[172688],690788),t[i+4>>2]=r,(r|0)==1){D=i+32|0;return}t[i+16>>2]=0,A0(i+8|0),ge()}function y2(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0;e=D-96|0,D=e,r=e+56|0,t[r>>2]=0,t[r+4>>2]=0,r=e+48|0,t[r>>2]=0,t[r+4>>2]=0,r=e+40|0,t[r>>2]=0,t[r+4>>2]=0,r=e+32|0,t[r>>2]=0,t[r+4>>2]=0,r=e+24|0,t[r>>2]=0,t[r+4>>2]=0,r=e+16|0,t[r>>2]=0,t[r+4>>2]=0,r=e+8|0,t[r>>2]=0,t[r+4>>2]=0,t[e>>2]=0,t[e+4>>2]=0,a=T0(),s=t[172560],i=i?655681:0,r=D+-64|0,D=r;t:{if(!t[a>>2]){O0[t[a+168>>2]](690045,t[a+172>>2]),i=0;break t}if(!e){O0[t[a+168>>2]](689760,t[a+172>>2]),i=0;break t}n=r+32|0,i=Ai(a,n,r,0,s,i),o=n+24|0,s=t[o+4>>2],a=e+24|0,o=t[o>>2],u[a|0]=o,u[a+1|0]=o>>>8,u[a+2|0]=o>>>16,u[a+3|0]=o>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24,o=n+16|0,s=t[o+4>>2],a=e+16|0,o=t[o>>2],u[a|0]=o,u[a+1|0]=o>>>8,u[a+2|0]=o>>>16,u[a+3|0]=o>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24,n=n+8|0,s=t[n+4>>2],a=e+8|0,n=t[n>>2],u[a|0]=n,u[a+1|0]=n>>>8,u[a+2|0]=n>>>16,u[a+3|0]=n>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24,a=t[r+36>>2],s=t[r+32>>2],u[e|0]=s,u[e+1|0]=s>>>8,u[e+2|0]=s>>>16,u[e+3|0]=s>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[r+4>>2],s=t[r>>2],u[e+32|0]=s,u[e+33|0]=s>>>8,u[e+34|0]=s>>>16,u[e+35|0]=s>>>24,u[e+36|0]=a,u[e+37|0]=a>>>8,u[e+38|0]=a>>>16,u[e+39|0]=a>>>24,n=r+8|0,s=t[n+4>>2],a=e+40|0,n=t[n>>2],u[a|0]=n,u[a+1|0]=n>>>8,u[a+2|0]=n>>>16,u[a+3|0]=n>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24,n=r+16|0,s=t[n+4>>2],a=e+48|0,n=t[n>>2],u[a|0]=n,u[a+1|0]=n>>>8,u[a+2|0]=n>>>16,u[a+3|0]=n>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24,n=r+24|0,s=t[n+4>>2],a=e+56|0,n=t[n>>2],u[a|0]=n,u[a+1|0]=n>>>8,u[a+2|0]=n>>>16,u[a+3|0]=n>>>24,u[a+4|0]=s,u[a+5|0]=s>>>8,u[a+6|0]=s>>>16,u[a+7|0]=s>>>24}D=r- -64|0,t[e+68>>2]=i;t:{e:{if((i|0)==1){r=t[172688],i=D+-64|0,D=i;n:{if(!e){O0[t[r+168>>2]](689748,t[r+172>>2]),r=0;break n}r=e+24|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),a=i+32|0,n=a+24|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=e+16|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=a+16|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=e+8|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=a+8|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=e+40|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=i+8|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=e+48|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=i+16|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=e+56|0,s=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=i+24|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=s,r=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),t[i+32>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[i+36>>2]=r,r=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),t[i>>2]=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),t[i+4>>2]=r,_t(690981,a),_t(691013,i),r=1}if(D=i- -64|0,t[e+68>>2]=r,(r|0)==1)break e;break t}break t}D=e+96|0;return}t[e+80>>2]=0,A0(e+72|0),ge()}function Ot(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0;d=D-112|0,D=d,s=d+16|0,me(s,65),r=T0(),e=t[172560],i=i?655681:0,a=D-80|0,D=a;t:{if(!t[r>>2]){O0[t[r+168>>2]](690045,t[r+172>>2]),i=0;break t}if(!s){O0[t[r+168>>2]](689760,t[r+172>>2]),i=0;break t}n=a+48|0,c=a+16|0,i=Ai(r,n,c,a+12|0,e,i),r=t[a+52>>2],e=t[a+48>>2],u[s|0]=e,u[s+1|0]=e>>>8,u[s+2|0]=e>>>16,u[s+3|0]=e>>>24,u[s+4|0]=r,u[s+5|0]=r>>>8,u[s+6|0]=r>>>16,u[s+7|0]=r>>>24,o=n+8|0,e=t[o+4>>2],r=s+8|0,o=t[o>>2],u[r|0]=o,u[r+1|0]=o>>>8,u[r+2|0]=o>>>16,u[r+3|0]=o>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,o=n+16|0,e=t[o+4>>2],r=s+16|0,o=t[o>>2],u[r|0]=o,u[r+1|0]=o>>>8,u[r+2|0]=o>>>16,u[r+3|0]=o>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,n=n+24|0,e=t[n+4>>2],r=s+24|0,n=t[n>>2],u[r|0]=n,u[r+1|0]=n>>>8,u[r+2|0]=n>>>16,u[r+3|0]=n>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,r=t[a+20>>2],e=t[a+16>>2],u[s+32|0]=e,u[s+33|0]=e>>>8,u[s+34|0]=e>>>16,u[s+35|0]=e>>>24,u[s+36|0]=r,u[s+37|0]=r>>>8,u[s+38|0]=r>>>16,u[s+39|0]=r>>>24,n=c+8|0,e=t[n+4>>2],r=s+40|0,n=t[n>>2],u[r|0]=n,u[r+1|0]=n>>>8,u[r+2|0]=n>>>16,u[r+3|0]=n>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,n=c+16|0,e=t[n+4>>2],r=s+48|0,n=t[n>>2],u[r|0]=n,u[r+1|0]=n>>>8,u[r+2|0]=n>>>16,u[r+3|0]=n>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,n=c+24|0,e=t[n+4>>2],r=s+56|0,n=t[n>>2],u[r|0]=n,u[r+1|0]=n>>>8,u[r+2|0]=n>>>16,u[r+3|0]=n>>>24,u[r+4|0]=e,u[r+5|0]=e>>>8,u[r+6|0]=e>>>16,u[r+7|0]=e>>>24,u[s+64|0]=t[a+12>>2]}if(D=a+80|0,t[d+84>>2]=i,(i|0)==1){t[d+12>>2]=0,a=t[172688],e=d+12|0,s=D+-64|0,D=s,i=d+16|0;t:{if(!i){O0[t[a+168>>2]](689748,t[a+172>>2]);break t}if(!e){O0[t[a+168>>2]](689795,t[a+172>>2]);break t}a=i+24|0,n=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),r=s+32|0,c=r+24|0,t[c>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[c+4>>2]=n,a=i+16|0,n=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),c=r+16|0,t[c>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[c+4>>2]=n,a=i+8|0,n=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),c=r+8|0,t[c>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[c+4>>2]=n,a=i+56|0,n=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),c=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),a=i+48|0,o=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),f=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),a=i+40|0,y=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),a=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),b=l[i+32|0]|l[i+33|0]<<8|(l[i+34|0]<<16|l[i+35|0]<<24),h=l[i+36|0]|l[i+37|0]<<8|(l[i+38|0]<<16|l[i+39|0]<<24),g=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),w=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),t[e>>2]=l[i+64|0],i=s+8|0,t[i>>2]=y,t[i+4>>2]=a,i=s+16|0,t[i>>2]=o,t[i+4>>2]=f,i=s+24|0,t[i>>2]=n,t[i+4>>2]=c,t[s+32>>2]=g,t[s+36>>2]=w,t[s>>2]=b,t[s+4>>2]=h,_t(690981,r),_t(691013,s)}return D=s- -64|0,D=d+112|0,t[d+12>>2]}t[d+96>>2]=0,A0(d+88|0),ge()}function m2(i){i=i|0;var r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0;a=D-128|0,D=a,c=me(a,96),a=Ii(T0(),c),t[c+100>>2]=a;t:{e:{if((a|0)==1){T=T0(),z=i?655681:0,r=D-640|0,D=r,i=r+88|0,t[i>>2]=0,t[i+4>>2]=0,i=r+80|0,t[i>>2]=0,t[i+4>>2]=0,t[r+72>>2]=0,t[r+76>>2]=0,t[r+64>>2]=0,t[r+68>>2]=0;n:{if(!t[T>>2]){O0[t[T+168>>2]](690045,t[T+172>>2]);break n}if(!c){O0[t[T+168>>2]](689700,t[T+172>>2]);break n}x=r+472|0,R=D-16|0,D=R,E=l[c+40|0]|l[c+41|0]<<8|(l[c+42|0]<<16|l[c+43|0]<<24),o=l[c+44|0]|l[c+45|0]<<8|(l[c+46|0]<<16|l[c+47|0]<<24),y=l[c+48|0]|l[c+49|0]<<8|(l[c+50|0]<<16|l[c+51|0]<<24),s=l[c+52|0]|l[c+53|0]<<8|(l[c+54|0]<<16|l[c+55|0]<<24),k=l[c+72|0]|l[c+73|0]<<8|(l[c+74|0]<<16|l[c+75|0]<<24),h=l[c+76|0]|l[c+77|0]<<8|(l[c+78|0]<<16|l[c+79|0]<<24),d=l[c+80|0]|l[c+81|0]<<8|(l[c+82|0]<<16|l[c+83|0]<<24),e=l[c+84|0]|l[c+85|0]<<8|(l[c+86|0]<<16|l[c+87|0]<<24),A=l[c+32|0]|l[c+33|0]<<8|(l[c+34|0]<<16|l[c+35|0]<<24),g=l[c+36|0]|l[c+37|0]<<8|(l[c+38|0]<<16|l[c+39|0]<<24),b=l[c+56|0]|l[c+57|0]<<8|(l[c+58|0]<<16|l[c+59|0]<<24),n=l[c+60|0]|l[c+61|0]<<8|(l[c+62|0]<<16|l[c+63|0]<<24),S=l[c+64|0]|l[c+65|0]<<8|(l[c+66|0]<<16|l[c+67|0]<<24),w=l[c+68|0]|l[c+69|0]<<8|(l[c+70|0]<<16|l[c+71|0]<<24),f=l[c+88|0]|l[c+89|0]<<8|(l[c+90|0]<<16|l[c+91|0]<<24),C=l[c+92|0]|l[c+93|0]<<8|(l[c+94|0]<<16|l[c+95|0]<<24),a=r+192|0,t[a+80>>2]=0,I=a+72|0,t[I>>2]=(C&65535)<<16|f>>>16,t[I+4>>2]=C>>>16,t[a+40>>2]=S,t[a+44>>2]=w&1048575,I=(n&65535)<<16|b>>>16,t[a+32>>2]=I,S=n>>>16|0,t[a+36>>2]=S,t[a>>2]=A,C=g&1048575,t[a+4>>2]=C,N=a- -64|0,t[N>>2]=(e&268435455)<<4|d>>>28,t[N+4>>2]=f<<4&1048560|e>>>28,i=e<<24|d>>>8,f=a+56|0,e=h,t[f>>2]=d<<24&-16777216|e>>>8,t[f+4>>2]=i&1048575,i=e<<12,e=k,d=(i|e>>>20)&1048575,h=a+48|0,t[h>>2]=e<<12&-4096|w>>>20,t[h+4>>2]=d,e=b<<4&1048560,n=s,i=n>>>28|0,s=(n&268435455)<<4|y>>>28,t[a+24>>2]=s,e=i|e,t[a+28>>2]=e,i=n<<24|y>>>8,n=o,o=y<<24&-16777216|n>>>8,t[a+16>>2]=o,y=i&1048575,t[a+20>>2]=y,i=n<<12,n=E,h=(i|n>>>20)&1048575,n=n<<12&-4096|g>>>20,t[a+8>>2]=n,i=h,t[a+12>>2]=i;r:{a:{if(!(n|A|I|o|s|(i|C|S|y|e))){if(O0[t[T+168>>2]](690116,t[T+172>>2]),Ze(a,690376,88),x)break a;break r}if(L=1,!x||(ie(x,c,R+12|0),!(t[R+12>>2]|!(t[x+24>>2]|(t[x+16>>2]|(t[x+8>>2]|t[x>>2]))|(t[x+28>>2]|(t[x+20>>2]|(t[x+12>>2]|t[x+4>>2])))))))break r;O0[t[T+168>>2]](689400,t[T+172>>2]),Ze(a,690376,88)}L=0,i=t[172569],a=x+24|0,t[a>>2]=t[172568],t[a+4>>2]=i,i=t[172567],a=x+16|0,t[a>>2]=t[172566],t[a+4>>2]=i,i=t[172565],a=x+8|0,t[a>>2]=t[172564],t[a+4>>2]=i,i=t[172563],t[x>>2]=t[172562],t[x+4>>2]=i}D=R+16|0;r:{if(!(u[r+232|0]&1)){E=t[r+472>>2],h=t[r+476>>2],d=t[r+480>>2],a=t[r+484>>2],e=t[r+488>>2],s=t[r+492>>2],k=t[r+496>>2],y=t[r+500>>2];break r}g=t[r+496>>2],w=t[r+488>>2],e=t[r+480>>2],i=t[r+472>>2],A=t[r+500>>2],k=t[r+492>>2],s=t[r+484>>2],a=t[r+476>>2],o=g|(w|(e|i))|(A|(k|(s|a)))?-1:0,i=i^-1,y=i-801750718|0,E=o&y,t[r+472>>2]=E,a=a^-1,n=a-((i>>>0<801750718)+1076732275|0)|0,h=n&o,t[r+476>>2]=h,i=(a|0)==(n|0)&i>>>0>y>>>0|a>>>0>n>>>0,y=e^-1,e=i+y|0,s=s^-1,i=s,f=e-1354194885|0,d=f&o,t[r+480>>2]=d,i=e>>>0<y>>>0?i+1|0:i,b=i-((e>>>0<1354194885)+1162945305|0)|0,a=b&o,t[r+484>>2]=a,n=(i|0)==(s|0)&e>>>0<y>>>0|i>>>0<s>>>0,y=(i|0)==(b|0)&e>>>0>f>>>0|i>>>0>b>>>0,e=n+y|0,i=e>>>0<y>>>0,b=w^-1,y=b+e|0,w=k^-1,i=w+i|0,f=y-2|0,e=f&o,t[r+488>>2]=e,i=y>>>0<b>>>0?i+1|0:i,k=i-(y>>>0<2)|0,s=k&o,t[r+492>>2]=s,n=(i|0)==(w|0)&y>>>0<b>>>0|i>>>0<w>>>0,y=(i|0)==(k|0)&f>>>0<y>>>0|i>>>0>k>>>0,n=n+y|0,i=n>>>0<y>>>0,y=n-g|0,k=y-2&o,t[r+496>>2]=k,y=(i-((n>>>0<g>>>0)+A|0)|0)-(y>>>0<2)&o,t[r+500>>2]=y}u[r+31|0]=E,u[r+30|0]=(h&255)<<24|E>>>8,u[r+29|0]=(h&65535)<<16|E>>>16,u[r+28|0]=(h&16777215)<<8|E>>>24,u[r+27|0]=h,u[r+26|0]=h>>>8,u[r+25|0]=h>>>16,u[r+24|0]=h>>>24,u[r+23|0]=d,u[r+22|0]=(a&255)<<24|d>>>8,u[r+21|0]=(a&65535)<<16|d>>>16,u[r+20|0]=(a&16777215)<<8|d>>>24,u[r+19|0]=a,u[r+18|0]=a>>>8,u[r+17|0]=a>>>16,u[r+16|0]=a>>>24,u[r+15|0]=e,u[r+14|0]=(s&255)<<24|e>>>8,u[r+13|0]=(s&65535)<<16|e>>>16,u[r+12|0]=(s&16777215)<<8|e>>>24,u[r+11|0]=s,u[r+10|0]=s>>>8,u[r+9|0]=s>>>16,u[r+8|0]=s>>>24,u[r+7|0]=k,u[r+6|0]=(y&255)<<24|k>>>8,u[r+5|0]=(y&65535)<<16|k>>>16,u[r+4|0]=(y&16777215)<<8|k>>>24,u[r+3|0]=y,u[r+2|0]=y>>>8,u[r+1|0]=y>>>16,u[r|0]=y>>>24,a=t[r+228>>2],n=t[r+224>>2],u[r+37|0]=n,i=t[r+212>>2],e=t[r+208>>2],u[r+50|0]=e,u[r+36|0]=(a&255)<<24|n>>>8,u[r+35|0]=(a&65535)<<16|n>>>16,u[r+34|0]=(a&16777215)<<8|n>>>24,u[r+33|0]=a,u[r+32|0]=a>>>8,a=t[r+220>>2],n=t[r+216>>2],u[r+43|0]=(a&15)<<28|n>>>4,u[r+42|0]=(a&4095)<<20|n>>>12,u[r+41|0]=(a&1048575)<<12|n>>>20,u[r+40|0]=(a&268435455)<<4|n>>>28,u[r+39|0]=a>>>4,u[r+38|0]=a>>>12,u[r+49|0]=(i&255)<<24|e>>>8,u[r+48|0]=(i&65535)<<16|e>>>16,u[r+47|0]=(i&16777215)<<8|e>>>24,u[r+46|0]=i,u[r+45|0]=i>>>8,u[r+44|0]=i>>>16&15|n<<4,i=t[r+196>>2],e=t[r+192>>2],u[r+63|0]=e,a=t[r+204>>2],n=t[r+200>>2],u[r+56|0]=(a&15)<<28|n>>>4,u[r+55|0]=(a&4095)<<20|n>>>12,u[r+54|0]=(a&1048575)<<12|n>>>20,u[r+53|0]=(a&268435455)<<4|n>>>28,u[r+52|0]=a>>>4,u[r+51|0]=a>>>12,u[r+62|0]=(i&255)<<24|e>>>8,u[r+61|0]=(i&65535)<<16|e>>>16,u[r+60|0]=(i&16777215)<<8|e>>>24,u[r+59|0]=i,u[r+58|0]=i>>>8,u[r+57|0]=i>>>16&15|n<<4,i=r- -64|0,a=Si(i,655649,32,r,r+32|0,690736,13,z),n=r+408|0,ie(n,i,0),i=L&(a|0)!=0,a=t[r+432>>2],s=t[r+424>>2],e=t[r+416>>2],o=t[r+408>>2],y=t[r+436>>2],g=t[r+428>>2],h=t[r+420>>2],d=t[r+412>>2],N=i&(a|(s|(e|o))|(y|(g|(h|d))))!=0,R=!N,i=R-1|0,k=i&a,t[r+432>>2]=k,a=0-!R|0,y=a&y,t[r+436>>2]=y,C=i&s,t[r+424>>2]=C,S=a&g,t[r+428>>2]=S,I=i&e,t[r+416>>2]=I,x=a&h,t[r+420>>2]=x,E=i&o|R,t[r+408>>2]=E,h=a&d,t[r+412>>2]=h,i=r+280|0,gn(T,i,n),Lt(r+104|0,i),i=r+152|0,n=t[i>>2],o=t[i+4>>2],s=t[r+148>>2],i=r+176|0,d=t[i>>2],e=t[i+4>>2],w=e,i=t[r+144>>2],a=I0(e>>>16|0,0,977,1),e=i+a|0,i=s+i0|0,f=a>>>0>e>>>0?i+1|0:i,i=o,a=f>>>20|0,s=a,a=a+n|0,s=s>>>0>a>>>0?i+1|0:i,g=s&1048575,i=r+168|0,A=t[i>>2],T=t[i+4>>2],i=r+160|0,o=t[i>>2],i=t[i+4>>2],n=s>>>20|0,b=n,n=n+o|0,b=b>>>0>n>>>0?i+1|0:i,i=T,o=b>>>20|0,T=o,o=o+A|0,i=T>>>0>o>>>0?i+1|0:i,A=i&1048575,b=b&1048575,T=(a&n&o)==-1&(s&b&i)==1048575,s=i,i=w&65535,s=s>>>20|0,w=s+d|0,i=s>>>0>w>>>0?i+1|0:i,d=i,s=f&1048575,T&((w|0)==-1&(i|0)==65535)&((s|0)==1048574&e>>>0>4294966318|s>>>0>1048574)|i>>>16&&(i=s+1|0,e=e+977|0,i=e>>>0<977?i+1|0:i,s=i&1048575,f=i,i=g,f=f>>>20|0,a=a+f|0,i=f>>>0>a>>>0?i+1|0:i,g=i&1048575,f=i,i=b,f=f>>>20|0,n=n+f|0,i=f>>>0>n>>>0?i+1|0:i,b=i&1048575,f=i,i=A,f=f>>>20|0,o=o+f|0,i=f>>>0>o>>>0?i+1|0:i,A=i&1048575,f=i,i=d,d=w,w=(f>>>20|0)+w|0,d=(d>>>0>w>>>0?i+1|0:i)&65535),t[r+176>>2]=w,t[r+180>>2]=d,t[r+168>>2]=o,t[r+172>>2]=A,t[r+160>>2]=n,t[r+164>>2]=b,t[r+152>>2]=a,t[r+156>>2]=g,t[r+144>>2]=e,t[r+148>>2]=s,e&1&&(n=E|I|C|k|(h|x|S|y)?-1:0,i=E^-1,o=i-801750718|0,E=n&o,t[r+408>>2]=E,a=h^-1,e=a-((i>>>0<801750718)+1076732275|0)|0,h=e&n,t[r+412>>2]=h,i=(a|0)==(e|0)&i>>>0>o>>>0|a>>>0>e>>>0,o=I^-1,e=i+o|0,s=x^-1,i=s,g=e-1354194885|0,I=g&n,t[r+416>>2]=I,i=e>>>0<o>>>0?i+1|0:i,d=i-((e>>>0<1354194885)+1162945305|0)|0,x=d&n,t[r+420>>2]=x,a=(i|0)==(s|0)&e>>>0<o>>>0|i>>>0<s>>>0,o=(i|0)==(d|0)&e>>>0>g>>>0|i>>>0>d>>>0,e=a+o|0,s=S^-1,i=s+(e>>>0<o>>>0)|0,o=C^-1,e=o+e|0,g=e-2|0,C=g&n,t[r+424>>2]=C,i=e>>>0<o>>>0?i+1|0:i,d=i-(e>>>0<2)|0,S=d&n,t[r+428>>2]=S,a=(i|0)==(s|0)&e>>>0<o>>>0|i>>>0<s>>>0,e=(i|0)==(d|0)&e>>>0>g>>>0|i>>>0>d>>>0,a=a+e|0,i=a>>>0<e>>>0,e=a-k|0,o=e-2|0,y=(i-((a>>>0<k>>>0)+y|0)|0)-(e>>>0<2)&n,k=n&o,t[r+432>>2]=k,t[r+436>>2]=y),n=t[r+112>>2],e=t[r+116>>2],s=t[r+108>>2],w=t[r+136>>2],o=t[r+140>>2],f=o,i=t[r+104>>2],a=I0(o>>>16|0,0,977,1),o=i+a|0,i=s+i0|0,A=a>>>0>o>>>0?i+1|0:i,i=e,a=A>>>20|0,e=a+n|0,d=a>>>0>e>>>0?i+1|0:i,s=d&1048575,g=t[r+128>>2],T=t[r+132>>2],i=t[r+124>>2],a=d>>>20|0,n=a+t[r+120>>2]|0,b=a>>>0>n>>>0?i+1|0:i,i=T,a=b>>>20|0,T=a,a=a+g|0,i=T>>>0>a>>>0?i+1|0:i,g=i&1048575,b=b&1048575,T=(e&n&a)==-1&(d&b&i)==1048575,d=i,i=f&65535,d=d>>>20|0,w=d+w|0,i=d>>>0>w>>>0?i+1|0:i,d=i,A=A&1048575,T&((w|0)==-1&(i|0)==65535)&((A|0)==1048574&o>>>0>4294966318|A>>>0>1048574)|i>>>16&&(i=A+1|0,o=o+977|0,i=o>>>0<977?i+1|0:i,A=i&1048575,f=i,i=s,f=f>>>20|0,e=e+f|0,i=f>>>0>e>>>0?i+1|0:i,s=i&1048575,f=i,i=b,f=f>>>20|0,n=n+f|0,i=f>>>0>n>>>0?i+1|0:i,b=i&1048575,f=i,i=g,f=f>>>20|0,a=a+f|0,i=f>>>0>a>>>0?i+1|0:i,g=i&1048575,f=i,i=d,d=w,w=(f>>>20|0)+w|0,d=(d>>>0>w>>>0?i+1|0:i)&65535),t[r+136>>2]=w,t[r+140>>2]=d,t[r+128>>2]=a,t[r+132>>2]=g,t[r+120>>2]=n,t[r+124>>2]=b,t[r+112>>2]=e,t[r+116>>2]=s,t[r+104>>2]=o,t[r+108>>2]=A,br(690981,r+104|0),t[r+600>>2]=64,t[r+604>>2]=0,t[r+528>>2]=-1862921884,t[r+532>>2]=870954602,t[r+520>>2]=-1748470448,t[r+524>>2]=3983205,t[r+512>>2]=292000018,t[r+516>>2]=-782074353,t[r+504>>2]=-1662207471,t[r+508>>2]=596792193,i=r+504|0,z0(i,690981,32),z0(i,r+32|0,32),z0(i,655649,32),a=i,i=r+608|0,ye(a,i),f=r+440|0,ie(f,i,0),T=r+472|0,xt(f,f,T),a=t[r+440>>2],d=a+E|0,i=h+t[r+444>>2]|0,s=a>>>0>d>>>0?i+1|0:i,e=(h|0)==(s|0)&d>>>0<E>>>0|s>>>0<h>>>0,a=t[r+448>>2],n=e+a|0,i=t[r+452>>2],a=a>>>0>n>>>0?i+1|0:i,i=a+x|0,e=!a&e>>>0>n>>>0,h=n+I|0,o=h>>>0<I>>>0?i+1|0:i,n=(a|0)==(o|0)&n>>>0>h>>>0|a>>>0>o>>>0,a=e+n|0,i=a>>>0<n>>>0,b=a,a=t[r+456>>2],n=b+a|0,e=i,i=i+t[r+460>>2]|0,a=a>>>0>n>>>0?i+1|0:i,i=a+S|0,g=n,w=n+C|0,i=w>>>0<C>>>0?i+1|0:i,E=y,b=(a|0)==(e|0)&n>>>0<b>>>0|a>>>0<e>>>0,n=i,y=w,e=(a|0)==(i|0)&y>>>0<g>>>0|i>>>0<a>>>0,a=b+e|0,i=a>>>0<e>>>0,A=a,e=t[r+464>>2],a=a+e|0,g=i,i=i+t[r+468>>2]|0,e=a>>>0<e>>>0?i+1|0:i,i=e+E|0,b=a,a=a+k|0,E=b>>>0>a>>>0?i+1|0:i,w=a,A=((e|0)==(E|0)&b>>>0>a>>>0|e>>>0>E>>>0)+((e|0)==(g|0)&b>>>0<A>>>0|e>>>0<g>>>0)|0,e=(n|0)==-1,g=e&y>>>0<4294967294|(n|0)!=-1|(a&E)!=-1,i=(o|0)==-1162945306,b=(g|(i&h>>>0<2940772411|o>>>0<3132021990))^-1,g=A+(b&((s|0)==-1076732276&d>>>0>3493216576|s>>>0>3218235020)|(b&(i&h>>>0>2940772411|o>>>0>3132021990)|(y|0)==-1&e&(g^-1)))|0,e=I0(g,0,801750719,1076732275),b=e+d|0,i=s+i0|0,t[r+440>>2]=b,i=e>>>0>b>>>0?i+1|0:i,t[r+444>>2]=i,d=(i|0)==(s|0)&d>>>0>b>>>0|i>>>0<s>>>0,s=I0(g,0,1354194884,1162945305),a=s+h|0,i=o+i0|0,i=a>>>0<s>>>0?i+1|0:i,s=a,a=i,d=s+d|0,i=d>>>0<s>>>0?i+1|0:i,t[r+448>>2]=d,t[r+452>>2]=i,e=(a|0)==(o|0)&s>>>0<h>>>0|a>>>0<o>>>0,o=(i|0)==(a|0)&s>>>0>d>>>0|i>>>0<a>>>0,a=e+o|0,s=a,o=a>>>0<o>>>0,i=n,h=y+g|0,a=h>>>0<g>>>0?i+1|0:i,i=a+o|0,o=h,s=s+o|0,i=o>>>0>s>>>0?i+1|0:i,t[r+456>>2]=s,t[r+460>>2]=i,e=(a|0)==(n|0)&o>>>0<y>>>0|a>>>0<n>>>0,n=(i|0)==(a|0)&s>>>0<o>>>0|i>>>0<a>>>0,a=e+n|0,i=E+(a>>>0<n>>>0)|0,a=a+w|0,i=a>>>0<w>>>0?i+1|0:i,t[r+464>>2]=a,t[r+468>>2]=i,_t(691013,f),t[r+504>>2]=R,i=t[r+504>>2]-1|0,u[690981]=i&l[690981],u[690982]=l[690982]&i,u[690983]=l[690983]&i,u[690984]=l[690984]&i,u[690985]=l[690985]&i,u[690986]=l[690986]&i,u[690987]=l[690987]&i,u[690988]=l[690988]&i,u[690989]=l[690989]&i,u[690990]=l[690990]&i,u[690991]=l[690991]&i,u[690992]=l[690992]&i,u[690993]=l[690993]&i,u[690994]=l[690994]&i,u[690995]=l[690995]&i,u[690996]=l[690996]&i,u[690997]=l[690997]&i,u[690998]=l[690998]&i,u[690999]=l[690999]&i,u[691e3]=l[691e3]&i,u[691001]=l[691001]&i,u[691002]=l[691002]&i,u[691003]=l[691003]&i,u[691004]=l[691004]&i,u[691005]=l[691005]&i,u[691006]=l[691006]&i,u[691007]=l[691007]&i,u[691008]=l[691008]&i,u[691009]=l[691009]&i,u[691010]=l[691010]&i,u[691011]=l[691011]&i,u[691012]=l[691012]&i,u[691013]=l[691013]&i,u[691014]=l[691014]&i,u[691015]=l[691015]&i,u[691016]=l[691016]&i,u[691017]=l[691017]&i,u[691018]=l[691018]&i,u[691019]=l[691019]&i,u[691020]=l[691020]&i,u[691021]=l[691021]&i,u[691022]=l[691022]&i,u[691023]=l[691023]&i,u[691024]=l[691024]&i,u[691025]=l[691025]&i,u[691026]=l[691026]&i,u[691027]=l[691027]&i,u[691028]=l[691028]&i,u[691029]=l[691029]&i,u[691030]=l[691030]&i,u[691031]=l[691031]&i,u[691032]=l[691032]&i,u[691033]=l[691033]&i,u[691034]=l[691034]&i,u[691035]=l[691035]&i,u[691036]=l[691036]&i,u[691037]=l[691037]&i,u[691038]=l[691038]&i,u[691039]=l[691039]&i,u[691040]=l[691040]&i,u[691041]=l[691041]&i,u[691042]=l[691042]&i,u[691043]=l[691043]&i,u[691044]=l[691044]&i,i=r+408|0,a=i+24|0,t[a>>2]=0,t[a+4>>2]=0,a=i+16|0,t[a>>2]=0,t[a+4>>2]=0,i=i+8|0,t[i>>2]=0,t[i+4>>2]=0,t[r+408>>2]=0,t[r+412>>2]=0,i=T+24|0,t[i>>2]=0,t[i+4>>2]=0,i=T+16|0,t[i>>2]=0,t[i+4>>2]=0,i=T+8|0,t[i>>2]=0,t[i+4>>2]=0,t[r+472>>2]=0,t[r+476>>2]=0,i=r+24|0,t[i>>2]=0,t[i+4>>2]=0,i=r+16|0,t[i>>2]=0,t[i+4>>2]=0,t[r+8>>2]=0,t[r+12>>2]=0,t[r>>2]=0,t[r+4>>2]=0}if(D=r+640|0,t[c+100>>2]=N,N)break e;break t}break t}D=c+128|0;return}t[c+112>>2]=0,A0(c+104|0),ge()}function b2(i,r){i=i|0,r=r|0;var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0;s=D-192|0,D=s,n=s+128|0,o=n+56|0,t[o>>2]=0,t[o+4>>2]=0,c=n+48|0,t[c>>2]=0,t[c+4>>2]=0,d=n+40|0,t[d>>2]=0,t[d+4>>2]=0,h=n+32|0,t[h>>2]=0,t[h+4>>2]=0,f=n+24|0,t[f>>2]=0,t[f+4>>2]=0,b=n+16|0,t[b>>2]=0,t[b+4>>2]=0,x=n+8|0,t[x>>2]=0,t[x+4>>2]=0,t[s+128>>2]=0,t[s+132>>2]=0;t:{if((Jt(t[172688],n,690820,i)|0)==1){n=s+128|0,i=n+15|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),e=s- -64|0,y=e+8|0,t[y>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[y+4>>2]=a,i=n+23|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),w=e+16|0,t[w>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[w+4>>2]=a,i=n+31|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),A=e+24|0,t[A>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[A+4>>2]=a,i=n+39|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),T=e+32|0,t[T>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[T+4>>2]=a,i=n+47|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),g=e+40|0,t[g>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[g+4>>2]=a,i=n+55|0,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),E=e+48|0,t[E>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[E+4>>2]=a,e=e+56|0,u[e|0]=l[n+63|0],u[s+2|0]=l[s+130|0],v[s>>1]=B[s+128>>1],i=l[s+139|0]|l[s+140|0]<<8|(l[s+141|0]<<16|l[s+142|0]<<24),t[s+64>>2]=l[s+135|0]|l[s+136|0]<<8|(l[s+137|0]<<16|l[s+138|0]<<24),t[s+68>>2]=i,i=l[s+131|0]|l[s+132|0]<<8|(l[s+133|0]<<16|l[s+134|0]<<24),u[s+63|0]=l[e|0],a=t[E+4>>2],e=s+55|0,E=t[E>>2],u[e|0]=E,u[e+1|0]=E>>>8,u[e+2|0]=E>>>16,u[e+3|0]=E>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[g+4>>2],e=s+47|0,g=t[g>>2],u[e|0]=g,u[e+1|0]=g>>>8,u[e+2|0]=g>>>16,u[e+3|0]=g>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[T+4>>2],e=s+39|0,T=t[T>>2],u[e|0]=T,u[e+1|0]=T>>>8,u[e+2|0]=T>>>16,u[e+3|0]=T>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[A+4>>2],e=s+31|0,A=t[A>>2],u[e|0]=A,u[e+1|0]=A>>>8,u[e+2|0]=A>>>16,u[e+3|0]=A>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[w+4>>2],e=s+23|0,w=t[w>>2],u[e|0]=w,u[e+1|0]=w>>>8,u[e+2|0]=w>>>16,u[e+3|0]=w>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,a=t[y+4>>2],e=s+15|0,y=t[y>>2],u[e|0]=y,u[e+1|0]=y>>>8,u[e+2|0]=y>>>16,u[e+3|0]=y>>>24,u[e+4|0]=a,u[e+5|0]=a>>>8,u[e+6|0]=a>>>16,u[e+7|0]=a>>>24,u[s+3|0]=i,u[s+4|0]=i>>>8,u[s+5|0]=i>>>16,u[s+6|0]=i>>>24,i=t[s+68>>2],e=t[s+64>>2],u[s+7|0]=e,u[s+8|0]=e>>>8,u[s+9|0]=e>>>16,u[s+10|0]=e>>>24,u[s+11|0]=i,u[s+12|0]=i>>>8,u[s+13|0]=i>>>16,u[s+14|0]=i>>>24,t[o>>2]=0,t[o+4>>2]=0,t[c>>2]=0,t[c+4>>2]=0,t[d>>2]=0,t[d+4>>2]=0,t[h>>2]=0,t[h+4>>2]=0,t[f>>2]=0,t[f+4>>2]=0,t[b>>2]=0,t[b+4>>2]=0,t[x>>2]=0,t[x+4>>2]=0,t[s+128>>2]=0,t[s+132>>2]=0,e=0,o=t[172688],a=0,i=D-80|0,D=i,t[i+12>>2]=0;e:{if(!n){O0[t[o+168>>2]](689748,t[o+172>>2]);break e}if(a=i+12|0,ie(i+48|0,690981,a),o=t[i+12>>2],ie(i+16|0,691013,a),!(o|t[i+12>>2])){a=t[i+52>>2],o=t[i+48>>2],u[n|0]=o,u[n+1|0]=o>>>8,u[n+2|0]=o>>>16,u[n+3|0]=o>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,a=t[i+20>>2],o=t[i+16>>2],u[n+32|0]=o,u[n+33|0]=o>>>8,u[n+34|0]=o>>>16,u[n+35|0]=o>>>24,u[n+36|0]=a,u[n+37|0]=a>>>8,u[n+38|0]=a>>>16,u[n+39|0]=a>>>24,d=i+48|0,c=d+24|0,o=t[c+4>>2],a=n+24|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=o,u[a+5|0]=o>>>8,u[a+6|0]=o>>>16,u[a+7|0]=o>>>24,c=d+16|0,o=t[c+4>>2],a=n+16|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=o,u[a+5|0]=o>>>8,u[a+6|0]=o>>>16,u[a+7|0]=o>>>24,c=d+8|0,o=t[c+4>>2],a=n+8|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=o,u[a+5|0]=o>>>8,u[a+6|0]=o>>>16,u[a+7|0]=o>>>24,d=i+16|0,c=d+8|0,o=t[c+4>>2],a=n+40|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=o,u[a+5|0]=o>>>8,u[a+6|0]=o>>>16,u[a+7|0]=o>>>24,c=d+16|0,o=t[c+4>>2],a=n+48|0,c=t[c>>2],u[a|0]=c,u[a+1|0]=c>>>8,u[a+2|0]=c>>>16,u[a+3|0]=c>>>24,u[a+4|0]=o,u[a+5|0]=o>>>8,u[a+6|0]=o>>>16,u[a+7|0]=o>>>24,o=d+24|0,a=t[o+4>>2],n=n+56|0,o=t[o>>2],u[n|0]=o,u[n+1|0]=o>>>8,u[n+2|0]=o>>>16,u[n+3|0]=o>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,a=1;break e}u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,a=n+56|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,a=n+48|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,a=n+40|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,a=n+32|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,a=n+24|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,a=n+16|0,u[a|0]=0,u[a+1|0]=0,u[a+2|0]=0,u[a+3|0]=0,u[a+4|0]=0,u[a+5|0]=0,u[a+6|0]=0,u[a+7|0]=0,n=n+8|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,a=0}if(D=i+80|0,!a){q(4);break t}if(!r)e:{if(i=t[172688],a=s+128|0,!a){O0[t[i+168>>2]](689716,t[i+172>>2]);break e}r=l[a+60|0]|l[a+61|0]<<8|(l[a+62|0]<<16|l[a+63|0]<<24),h=r,r=r>>>31|0,e=r^-1,f=l[a+44|0]|l[a+45|0]<<8|(l[a+46|0]<<16|l[a+47|0]<<24),n=(f|0)==1566010995,b=l[a+40|0]|l[a+41|0]<<8|(l[a+42|0]<<16|l[a+43|0]<<24),y=l[a+48|0]|l[a+49|0]<<8|(l[a+50|0]<<16|l[a+51|0]<<24),w=l[a+52|0]|l[a+53|0]<<8|(l[a+54|0]<<16|l[a+55|0]<<24),i=l[a+56|0]|l[a+57|0]<<8|(l[a+58|0]<<16|l[a+59|0]<<24),e=(e&(n&b>>>0<1470386205|f>>>0<1566010995)|(e&(y&w)!=-1|((h|0)==2147483647&(i|0)!=-1|h>>>0<2147483647)))^-1,x=l[a+36|0]|l[a+37|0]<<8|(l[a+38|0]<<16|l[a+39|0]<<24),A=l[a+32|0]|l[a+33|0]<<8|(l[a+34|0]<<16|l[a+35|0]<<24),r=e&((x|0)==-538366138&A>>>0>1746608288|x>>>0>3756601158)|(e&(n&b>>>0>1470386205|f>>>0>1566010995)|r),a&&(r&&(r=A^-1,n=r-801750718|0,g=n,e=x^-1,c=e-((r>>>0<801750718)+1076732275|0)|0,n=(e|0)==(c|0)&r>>>0>n>>>0|e>>>0>c>>>0,T=b^-1,r=n+T|0,e=f^-1,o=r>>>0<n>>>0?e+1|0:e,n=r-1354194885|0,E=n,k=y^-1,e=(e|0)==(o|0)&r>>>0<T>>>0|e>>>0>o>>>0,T=o-((r>>>0<1354194885)+1162945305|0)|0,n=(T|0)==(o|0)&r>>>0>n>>>0|o>>>0>T>>>0,r=e+n|0,d=w^-1,e=d+(r>>>0<n>>>0)|0,n=r+k|0,e=n>>>0<r>>>0?e+1|0:e,o=n-2|0,C=o,r=b|A|y|i|(f|x|w|h)?-1:0,w=(e|0)==(d|0)&n>>>0<k>>>0|e>>>0<d>>>0,d=e-(n>>>0<2)|0,e=(d|0)==(e|0)&n>>>0>o>>>0|e>>>0>d>>>0,n=w+e|0,o=e>>>0>n>>>0,e=i,f=n-e|0,i=f-2&r,h=r&(o-((e>>>0>n>>>0)+h|0)|0)-(f>>>0<2),e=r,y=e&C,w=e&d,A=e&g,x=e&c,b=e&E,f=e&T),o=a+8|0,T=l[o|0]|l[o+1|0]<<8|(l[o+2|0]<<16|l[o+3|0]<<24),e=l[o+4|0]|l[o+5|0]<<8|(l[o+6|0]<<16|l[o+7|0]<<24),c=a+16|0,g=l[c|0]|l[c+1|0]<<8|(l[c+2|0]<<16|l[c+3|0]<<24),r=l[c+4|0]|l[c+5|0]<<8|(l[c+6|0]<<16|l[c+7|0]<<24),E=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),n=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),d=a+24|0,k=l[d+4|0]|l[d+5|0]<<8|(l[d+6|0]<<16|l[d+7|0]<<24),C=l[d|0]|l[d+1|0]<<8|(l[d+2|0]<<16|l[d+3|0]<<24),u[d|0]=C,u[d+1|0]=C>>>8,u[d+2|0]=C>>>16,u[d+3|0]=C>>>24,u[d+4|0]=k,u[d+5|0]=k>>>8,u[d+6|0]=k>>>16,u[d+7|0]=k>>>24,u[c|0]=g,u[c+1|0]=g>>>8,u[c+2|0]=g>>>16,u[c+3|0]=g>>>24,u[c+4|0]=r,u[c+5|0]=r>>>8,u[c+6|0]=r>>>16,u[c+7|0]=r>>>24,u[o|0]=T,u[o+1|0]=T>>>8,u[o+2|0]=T>>>16,u[o+3|0]=T>>>24,u[o+4|0]=e,u[o+5|0]=e>>>8,u[o+6|0]=e>>>16,u[o+7|0]=e>>>24,u[a|0]=E,u[a+1|0]=E>>>8,u[a+2|0]=E>>>16,u[a+3|0]=E>>>24,u[a+4|0]=n,u[a+5|0]=n>>>8,u[a+6|0]=n>>>16,u[a+7|0]=n>>>24,u[a+56|0]=i,u[a+57|0]=i>>>8,u[a+58|0]=i>>>16,u[a+59|0]=i>>>24,u[a+60|0]=h,u[a+61|0]=h>>>8,u[a+62|0]=h>>>16,u[a+63|0]=h>>>24,u[a+48|0]=y,u[a+49|0]=y>>>8,u[a+50|0]=y>>>16,u[a+51|0]=y>>>24,u[a+52|0]=w,u[a+53|0]=w>>>8,u[a+54|0]=w>>>16,u[a+55|0]=w>>>24,u[a+40|0]=b,u[a+41|0]=b>>>8,u[a+42|0]=b>>>16,u[a+43|0]=b>>>24,u[a+44|0]=f,u[a+45|0]=f>>>8,u[a+46|0]=f>>>16,u[a+47|0]=f>>>24,u[a+32|0]=A,u[a+33|0]=A>>>8,u[a+34|0]=A>>>16,u[a+35|0]=A>>>24,u[a+36|0]=x,u[a+37|0]=x>>>8,u[a+38|0]=x>>>16,u[a+39|0]=x>>>24)}g=T0(),i=0,r=D-464|0,D=r,e=s+128|0;e:{if(!e){O0[t[g+168>>2]](689748,t[g+172>>2]);break e}if(!s){O0[t[g+168>>2]](689638,t[g+172>>2]);break e}if(ie(r+8|0,655649,0),n=e+24|0,o=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),a=r+40|0,c=a+24|0,t[c>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[c+4>>2]=o,n=e+16|0,o=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),c=a+16|0,t[c>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[c+4>>2]=o,n=e+8|0,o=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),a=a+8|0,t[a>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[a+4>>2]=o,n=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),t[r+40>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[r+44>>2]=n,o=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),I=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),n=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),d=n>>>31|0,y=d^-1,a=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),b=(a|0)==1566010995,c=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),x=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),f=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),h=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),e=(y&(b&c>>>0<1470386205|a>>>0<1566010995)|(y&(x&f)!=-1|((n|0)==2147483647&(h|0)!=-1|n>>>0<2147483647)))^-1,((o|0)==-538366138&I>>>0>1746608288|o>>>0>3756601158)&e|(e&(b&c>>>0>1470386205|a>>>0>1566010995)|d))break e;if(e=l[s+12|0]|l[s+13|0]<<8|(l[s+14|0]<<16|l[s+15|0]<<24),b=e,d=l[s+8|0]|l[s+9|0]<<8|(l[s+10|0]<<16|l[s+11|0]<<24),y=(e<<12|d>>>20)&1048575,w=l[s+4|0]|l[s+5|0]<<8|(l[s+6|0]<<16|l[s+7|0]<<24),E=w,S=d<<12&-4096|w>>>20,R=y,d=l[s+16|0]|l[s+17|0]<<8|(l[s+18|0]<<16|l[s+19|0]<<24),k=d,e=l[s+20|0]|l[s+21|0]<<8|(l[s+22|0]<<16|l[s+23|0]<<24),T=e,y=(e<<24|d>>>8)&1048575,N=d<<24&-16777216|b>>>8,L=y,b=l[s+28|0]|l[s+29|0]<<8|(l[s+30|0]<<16|l[s+31|0]<<24),e=b>>>16|0,d=l[s+24|0]|l[s+25|0]<<8|(l[s+26|0]<<16|l[s+27|0]<<24),y=(b&65535)<<16|d>>>16,w=e,b=d<<4&1048560,d=T,e=d>>>28|0,z=(d&268435455)<<4|k>>>28,H=l[s|0]|l[s+1|0]<<8|(l[s+2|0]<<16|l[s+3|0]<<24),V=e|b,j=E&1048575,!(z|(N|(y|(S|H)))|(V|(L|(w|(R|j)))))){O0[t[g+168>>2]](690116,t[g+172>>2]);break e}if(b=t[r+64>>2],A=t[r+56>>2],Z=t[r+48>>2],Y=t[r+40>>2],d=t[r+68>>2],E=t[r+60>>2],T=t[r+52>>2],g=t[r+44>>2],!(b|(A|(Z|Y))|(d|(E|(T|g))))||!(c|I|x|h|(a|o|f|n))||(k=l[s+48|0]|l[s+49|0]<<8|(l[s+50|0]<<16|l[s+51|0]<<24),C=l[s+52|0]|l[s+53|0]<<8|(l[s+54|0]<<16|l[s+55|0]<<24),K=l[s+56|0]|l[s+57|0]<<8|(l[s+58|0]<<16|l[s+59|0]<<24),_=l[s+60|0]|l[s+61|0]<<8|(l[s+62|0]<<16|l[s+63|0]<<24),$=l[s+40|0]|l[s+41|0]<<8|(l[s+42|0]<<16|l[s+43|0]<<24),e0=l[s+44|0]|l[s+45|0]<<8|(l[s+46|0]<<16|l[s+47|0]<<24),t0=l[s+32|0]|l[s+33|0]<<8|(l[s+34|0]<<16|l[s+35|0]<<24),X=l[s+36|0]|l[s+37|0]<<8|(l[s+38|0]<<16|l[s+39|0]<<24),t[r+232>>2]=n>>>24,t[r+236>>2]=0,t[r+200>>2]=I,t[r+204>>2]=o&1073741823,e=n<<6|h>>>26,n=f,t[r+224>>2]=h<<6|n>>>26,t[r+228>>2]=e&1073741823,e=n<<4|x>>>28,t[r+216>>2]=x<<4|a>>>28,t[r+220>>2]=e&1073741823,a=a<<2|c>>>30,t[r+208>>2]=c<<2|o>>>30,t[r+212>>2]=a&1073741823,h=r+200|0,fa(h,690320),a=t[r+232>>2]<<24,c=t[r+228>>2],e=c>>>6|0,o=t[r+224>>2],t[r+456>>2]=(c&63)<<26|o>>>6,t[r+460>>2]=a|e,a=o<<26,c=t[r+220>>2],e=c>>>4|0,o=t[r+216>>2],t[r+448>>2]=(c&15)<<28|o>>>4,t[r+452>>2]=a|e,a=o<<28,c=t[r+212>>2],e=c>>>2|0,o=t[r+208>>2],t[r+440>>2]=(c&3)<<30|o>>>2,t[r+444>>2]=a|e,a=t[r+204>>2],e=o<<30,t[r+432>>2]=t[r+200>>2],t[r+436>>2]=a|e,o=r+400|0,e=r+432|0,xt(o,e,r+8|0),c=r+368|0,xt(c,e,r+40|0),e=r+288|0,t[e>>2]=0,t[e+4>>2]=0,n=_,e=n>>>16|0,a=r+272|0,t[a>>2]=(n&65535)<<16|K>>>16,t[a+4>>2]=e,f=K<<4&1048560,n=C,e=n>>>28|0,a=r+264|0,t[a>>2]=(n&268435455)<<4|k>>>28,t[a+4>>2]=e|f,e=n<<24|k>>>8,a=r+256|0,n=e0,t[a>>2]=k<<24&-16777216|n>>>8,t[a+4>>2]=e&1048575,e=n<<12,n=$,f=(e|n>>>20)&1048575,a=r+248|0,t[a>>2]=n<<12&-4096|X>>>20,t[a+4>>2]=f,e=r+296|0,t[e>>2]=0,t[e+4>>2]=0,e=r+304|0,t[e>>2]=0,t[e+4>>2]=0,e=r+312|0,t[e>>2]=0,t[e+4>>2]=0,t[r+280>>2]=1,t[r+284>>2]=0,t[r+240>>2]=t0,t[r+244>>2]=X&1048575,t[r+232>>2]=y,t[r+236>>2]=w,t[r+224>>2]=z,t[r+228>>2]=V,t[r+216>>2]=N,t[r+220>>2]=L,t[r+208>>2]=S,t[r+212>>2]=R,t[r+200>>2]=H,t[r+204>>2]=j,t[r+320>>2]=0,h2(r+72|0,h,c,o),t[r+192>>2])||(i=d,e=i>>>16|0,t[r+360>>2]=(i&65535)<<16|b>>>16,t[r+364>>2]=e,n=Y,t[r+328>>2]=n,d=g&1048575,t[r+332>>2]=d,a=i,i=E,e=b<<4&1048560|i>>>28,x=e,y=(i&268435455)<<4|A>>>28,t[r+352>>2]=y,t[r+356>>2]=e,e=i<<24|A>>>8,i=T,h=A<<24&-16777216|i>>>8,t[r+344>>2]=h,o=e&1048575,t[r+348>>2]=o,e=i<<12,i=Z,c=(e|i>>>20)&1048575,f=i<<12&-4096|g>>>20,t[r+336>>2]=f,t[r+340>>2]=c,i=1,Ti(r+328|0,r+72|0)))break e;if(a|!a&b>>>0>65535){i=0;break e}if(y|x){i=0;break e}if(o|!o&h>>>0>21319971){i=0;break e}n:{if(o|(h|0)!=21319971)break n;if((c|0)==103691&f>>>0>1979466754|c>>>0>103691){i=0;break e}if((f|0)!=1979466754|(c|0)!=103691)break n;if(i=0,(d|0)==893298&n>>>0>801749741|d>>>0>893298)break e}t[r+360>>2]=-1,t[r+364>>2]=65535,t[r+352>>2]=-1,t[r+356>>2]=1048575,e=o+1048575|0,i=h-21319972|0,e=i>>>0<4273647324?e+1|0:e,t[r+344>>2]=i,t[r+348>>2]=e,e=c+944884|0,a=f-1979466755|0,e=a>>>0<2315500541?e+1|0:e,t[r+336>>2]=a,t[r+340>>2]=e,o=d+155276|0,i=n-801750719|0,o=i>>>0<3493216577?o+1|0:o,t[r+328>>2]=i,t[r+332>>2]=o,i=(Ti(r+328|0,r+72|0)|0)!=0}D=r+464|0,e=i;break t}q(1)}return D=s+192|0,e|0}function Qt(i,r){i=i|0,r=r|0;var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0;y=D-176|0,D=y,c=y+8|0,me(c,65),a=t[172688],s=D-80|0,D=s,t[s+12>>2]=0;t:{if(!c){O0[t[a+168>>2]](689748,t[a+172>>2]);break t}if(r>>>0>=4){O0[t[a+168>>2]](689986,t[a+172>>2]);break t}if(a=s+12|0,ie(s+48|0,690981,a),e=t[s+12>>2],ie(s+16|0,691013,a),!(e|t[s+12>>2])){a=t[s+52>>2],e=t[s+48>>2],u[c|0]=e,u[c+1|0]=e>>>8,u[c+2|0]=e>>>16,u[c+3|0]=e>>>24,u[c+4|0]=a,u[c+5|0]=a>>>8,u[c+6|0]=a>>>16,u[c+7|0]=a>>>24,a=t[s+20>>2],e=t[s+16>>2],u[c+32|0]=e,u[c+33|0]=e>>>8,u[c+34|0]=e>>>16,u[c+35|0]=e>>>24,u[c+36|0]=a,u[c+37|0]=a>>>8,u[c+38|0]=a>>>16,u[c+39|0]=a>>>24,u[c+64|0]=r,e=s+48|0,r=e+24|0,a=t[r+4>>2],n=c+24|0,r=t[r>>2],u[n|0]=r,u[n+1|0]=r>>>8,u[n+2|0]=r>>>16,u[n+3|0]=r>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,r=e+16|0,a=t[r+4>>2],n=c+16|0,r=t[r>>2],u[n|0]=r,u[n+1|0]=r>>>8,u[n+2|0]=r>>>16,u[n+3|0]=r>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,r=e+8|0,e=t[r+4>>2],a=c+8|0,r=t[r>>2],u[a|0]=r,u[a+1|0]=r>>>8,u[a+2|0]=r>>>16,u[a+3|0]=r>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=s+16|0,r=e+8|0,a=t[r+4>>2],n=c+40|0,r=t[r>>2],u[n|0]=r,u[n+1|0]=r>>>8,u[n+2|0]=r>>>16,u[n+3|0]=r>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,r=e+16|0,a=t[r+4>>2],n=c+48|0,r=t[r>>2],u[n|0]=r,u[n+1|0]=r>>>8,u[n+2|0]=r>>>16,u[n+3|0]=r>>>24,u[n+4|0]=a,u[n+5|0]=a>>>8,u[n+6|0]=a>>>16,u[n+7|0]=a>>>24,r=e+24|0,e=t[r+4>>2],a=c+56|0,r=t[r>>2],u[a|0]=r,u[a+1|0]=r>>>8,u[a+2|0]=r>>>16,u[a+3|0]=r>>>24,u[a+4|0]=e,u[a+5|0]=e>>>8,u[a+6|0]=e>>>16,u[a+7|0]=e>>>24,e=1;break t}e=0,me(c,65)}D=s+80|0;t:{e:{if(!e){q(4);break e}r=y+136|0,t[r>>2]=0,t[r+4>>2]=0,r=y+128|0,t[r>>2]=0,t[r+4>>2]=0,r=y+120|0,t[r>>2]=0,t[r+4>>2]=0,r=y+112|0,t[r>>2]=0,t[r+4>>2]=0,r=y+104|0,t[r>>2]=0,t[r+4>>2]=0,r=y+96|0,t[r>>2]=0,t[r+4>>2]=0,r=y+88|0,t[r>>2]=0,t[r+4>>2]=0,t[y+80>>2]=0,t[y+84>>2]=0,a=T0(),h=y+80|0,e=D-640|0,D=e,r=y+8|0;n:{r:{if(!r){O0[t[a+168>>2]](689760,t[a+172>>2]);break r}if(!h){O0[t[a+168>>2]](689638,t[a+172>>2]);break r}s=r+40|0,n=l[s+4|0]|l[s+5|0]<<8|(l[s+6|0]<<16|l[s+7|0]<<24),a=e+48|0,t[a>>2]=l[s|0]|l[s+1|0]<<8|(l[s+2|0]<<16|l[s+3|0]<<24),t[a+4>>2]=n,s=r+48|0,n=l[s+4|0]|l[s+5|0]<<8|(l[s+6|0]<<16|l[s+7|0]<<24),a=e+56|0,t[a>>2]=l[s|0]|l[s+1|0]<<8|(l[s+2|0]<<16|l[s+3|0]<<24),t[a+4>>2]=n,s=r+56|0,n=l[s+4|0]|l[s+5|0]<<8|(l[s+6|0]<<16|l[s+7|0]<<24),a=e- -64|0,t[a>>2]=l[s|0]|l[s+1|0]<<8|(l[s+2|0]<<16|l[s+3|0]<<24),t[a+4>>2]=n,a=l[r+36|0]|l[r+37|0]<<8|(l[r+38|0]<<16|l[r+39|0]<<24),t[e+40>>2]=l[r+32|0]|l[r+33|0]<<8|(l[r+34|0]<<16|l[r+35|0]<<24),t[e+44>>2]=a,x=l[r+64|0],b=l[r+24|0]|l[r+25|0]<<8|(l[r+26|0]<<16|l[r+27|0]<<24),a=l[r+28|0]|l[r+29|0]<<8|(l[r+30|0]<<16|l[r+31|0]<<24),w=l[r+16|0]|l[r+17|0]<<8|(l[r+18|0]<<16|l[r+19|0]<<24),c=l[r+20|0]|l[r+21|0]<<8|(l[r+22|0]<<16|l[r+23|0]<<24),E=l[r+8|0]|l[r+9|0]<<8|(l[r+10|0]<<16|l[r+11|0]<<24),s=l[r+12|0]|l[r+13|0]<<8|(l[r+14|0]<<16|l[r+15|0]<<24),k=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),n=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),ie(e+8|0,655649,0);a:{if(!(b|(w|(E|k))|(a|(c|(n|s))))||!(t[e+64>>2]|(t[e+56>>2]|(t[e+48>>2]|t[e+40>>2]))|(t[e+68>>2]|(t[e+60>>2]|(t[e+52>>2]|t[e+44>>2])))))break a;if(r=e,t[r+632>>2]=(a&65535)<<16|b>>>16,t[r+636>>2]=a>>>16,t[r+600>>2]=k,R=n&1048575,t[r+604>>2]=R,T=b<<4,f=T&1044480,o=f|(T&4080|c>>>28),N=o,I=(c&268435455)<<4|w>>>28,t[r+624>>2]=I,t[r+628>>2]=o,T=c<<24|w>>>8,C=T&983040,A=T&65280,g=w<<24&-16777216|s>>>8,t[r+616>>2]=g,S=C|(A|T&255),t[r+620>>2]=S,o=s<<12|E>>>20,C=o&1044480,A=o&4080,r=E<<12,T=r&-268435456,f=o&15,d=r&267386880,d=T|(d|(r&1044480|n>>>20)),t[e+608>>2]=d,f=C|(f|A),t[e+612>>2]=f,x&2){if(a|!a&b>>>0>65535||N|I||S|!S&g>>>0>21319971)break a;s:{if(S|(g|0)!=21319971)break s;if((f|0)==103691&d>>>0>1979466754|f>>>0>103691)break a;if((d|0)!=1979466754|(f|0)!=103691)break s;if((R|0)==893298&k>>>0>801749741|R>>>0>893298)break a}t[e+632>>2]=-1,t[e+636>>2]=65535,t[e+624>>2]=-1,t[e+628>>2]=1048575,o=S+1048575|0,r=g-21319972|0,o=r>>>0<4273647324?o+1|0:o,t[e+616>>2]=r,t[e+620>>2]=o,r=f+944884|0,d=d-1979466755|0,r=d>>>0<2315500541?r+1|0:r,t[e+608>>2]=d,t[e+612>>2]=r,o=R+155276|0,r=k-801750719|0,o=r>>>0<3493216577?o+1|0:o,t[e+600>>2]=r,t[e+604>>2]=o}if(!pa(e+512|0,e+600|0,x&1)||(f=e+512|0,d=f+8|0,o=t[d+4>>2],g=e+384|0,r=g+8|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+16|0,o=t[d+4>>2],r=g+16|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+24|0,o=t[d+4>>2],r=g+24|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+32|0,o=t[d+4>>2],r=g+32|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+48|0,o=t[d+4>>2],r=g+48|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+56|0,o=t[d+4>>2],r=g+56|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f- -64|0,o=t[d+4>>2],r=g- -64|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,d=f+72|0,o=t[d+4>>2],r=g+72|0,t[r>>2]=t[d>>2],t[r+4>>2]=o,t[e+504>>2]=t[e+592>>2],r=t[e+516>>2],t[e+384>>2]=t[e+512>>2],t[e+388>>2]=r,r=t[e+556>>2],t[e+424>>2]=t[e+552>>2],t[e+428>>2]=r,r=e+472|0,t[r>>2]=0,t[r+4>>2]=0,r=e+480|0,t[r>>2]=0,t[r+4>>2]=0,r=e+488|0,t[r>>2]=0,t[r+4>>2]=0,r=e+496|0,t[r>>2]=0,t[r+4>>2]=0,t[e+464>>2]=1,t[e+468>>2]=0,t[e+104>>2]=a>>>24,t[e+108>>2]=0,a=a<<6|b>>>26,r=c,t[e+96>>2]=b<<6|r>>>26,t[e+100>>2]=a&1073741823,c=r<<4|w>>>28,a=e,r=s,t[a+88>>2]=w<<4|r>>>28,t[a+92>>2]=c&1073741823,t[a+80>>2]=E<<2|n>>>30,t[a+84>>2]=(r<<2|E>>>30)&1073741823,t[a+72>>2]=k,t[a+76>>2]=n&1073741823,T=a+72|0,fa(T,690320),c=t[a+104>>2]<<24,n=t[a+100>>2],r=n>>>6|0,s=t[a+96>>2],t[a+376>>2]=(n&63)<<26|s>>>6,t[a+380>>2]=r|c,s=s<<26,r=t[a+92>>2],o=r>>>4|0,n=t[a+88>>2],t[a+368>>2]=(r&15)<<28|n>>>4,t[a+372>>2]=o|s,c=n<<28,n=t[a+84>>2],r=n>>>2|0,s=t[a+80>>2],t[a+360>>2]=(n&3)<<30|s>>>2,t[a+364>>2]=r|c,c=t[a+76>>2],o=s<<30,t[a+352>>2]=t[a+72>>2],t[a+356>>2]=o|c,f=a+320|0,d=a+352|0,xt(f,d,a+8|0),I=t[a+344>>2],k=t[a+336>>2],b=t[a+328>>2],n=t[a+320>>2],E=t[a+348>>2],w=t[a+340>>2],o=t[a+332>>2],c=t[a+324>>2],r=I|(k|(b|n))|(E|(w|(o|c)))?-1:0,A=n^-1,s=A-801750718|0,t[a+320>>2]=r&s,n=r,c=c^-1,r=c-((A>>>0<801750718)+1076732275|0)|0,t[a+324>>2]=n&r,r=(r|0)==(c|0)&s>>>0<A>>>0|r>>>0<c>>>0,b=b^-1,x=r+b|0,C=o^-1,o=C,o=r>>>0>x>>>0?o+1|0:o,r=x-1354194885|0,t[a+328>>2]=r&n,A=o-((x>>>0<1354194885)+1162945305|0)|0,t[a+332>>2]=A&n,c=k^-1,r=(o|0)==(A|0)&r>>>0<x>>>0|o>>>0>A>>>0,b=r+((o|0)==(C|0)&b>>>0>x>>>0|o>>>0<C>>>0)|0,w=w^-1,r=w+(r>>>0>b>>>0)|0,o=c+b|0,r=o>>>0<b>>>0?r+1|0:r,s=o-2|0,t[a+336>>2]=s&n,b=r-(o>>>0<2)|0,t[a+340>>2]=b&n,N=(r|0)==(w|0)&o>>>0<c>>>0|r>>>0<w>>>0,r=(r|0)==(b|0)&o>>>0>s>>>0|r>>>0>b>>>0,a=N+r|0,o=r>>>0>a>>>0,r=a-I|0,t[e+344>>2]=r-2&n,t[e+348>>2]=(o-((a>>>0<I>>>0)+E|0)|0)-(r>>>0<2)&n,a=e+288|0,xt(a,d,e+40|0),r=e+160|0,h2(r,g,a,f),Ci(T,r),t[e+280>>2]))break a;ct(h,e+72|0),r=1;break n}u[h|0]=0,u[h+1|0]=0,u[h+2|0]=0,u[h+3|0]=0,u[h+4|0]=0,u[h+5|0]=0,u[h+6|0]=0,u[h+7|0]=0,r=h+56|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+48|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+40|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+32|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+24|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+16|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,r=h+8|0,u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0}r=0}if(D=e+640|0,!r)break e;if(t[y+144>>2]=i,i=z2(t[172688],y+144|0,y+80|0,(i|0)==33?258:2),t[y+148>>2]=i,(i|0)!=1)break t;L=1}return D=y+176|0,L|0}t[y+160>>2]=0,A0(y+152|0),ge()}function Nu(){var i=0,r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0;e=D-192|0,D=e,i=e+128|0,a=i+56|0,t[a>>2]=0,t[a+4>>2]=0,a=i+48|0,t[a>>2]=0,t[a+4>>2]=0,a=i+40|0,t[a>>2]=0,t[a+4>>2]=0,a=i+32|0,t[a>>2]=0,t[a+4>>2]=0,a=i+24|0,t[a>>2]=0,t[a+4>>2]=0,a=i+16|0,t[a>>2]=0,t[a+4>>2]=0,a=i+8|0,t[a>>2]=0,t[a+4>>2]=0,t[e+128>>2]=0,t[e+132>>2]=0;t:{if((Tn(t[172688],i,690885)|0)==1){a=e+128|0,i=a+15|0,o=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),n=e- -64|0,s=n+8|0,t[s>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[s+4>>2]=o,i=a+23|0,r=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),o=n+16|0,t[o>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[o+4>>2]=r,i=a+31|0,f=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),r=n+24|0,t[r>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[r+4>>2]=f,i=a+39|0,c=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),f=n+32|0,t[f>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[f+4>>2]=c,i=a+47|0,b=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),c=n+40|0,t[c>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[c+4>>2]=b,i=a+55|0,y=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),b=n+48|0,t[b>>2]=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),t[b+4>>2]=y,i=n+56|0,u[i|0]=l[a+63|0],u[e+2|0]=l[e+130|0],v[e>>1]=B[e+128>>1],a=l[e+139|0]|l[e+140|0]<<8|(l[e+141|0]<<16|l[e+142|0]<<24),t[e+64>>2]=l[e+135|0]|l[e+136|0]<<8|(l[e+137|0]<<16|l[e+138|0]<<24),t[e+68>>2]=a,a=l[e+131|0]|l[e+132|0]<<8|(l[e+133|0]<<16|l[e+134|0]<<24),u[e+63|0]=l[i|0],n=t[b+4>>2],i=e+55|0,b=t[b>>2],u[i|0]=b,u[i+1|0]=b>>>8,u[i+2|0]=b>>>16,u[i+3|0]=b>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,n=t[c+4>>2],i=e+47|0,c=t[c>>2],u[i|0]=c,u[i+1|0]=c>>>8,u[i+2|0]=c>>>16,u[i+3|0]=c>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,n=t[f+4>>2],i=e+39|0,f=t[f>>2],u[i|0]=f,u[i+1|0]=f>>>8,u[i+2|0]=f>>>16,u[i+3|0]=f>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,n=t[r+4>>2],i=e+31|0,r=t[r>>2],u[i|0]=r,u[i+1|0]=r>>>8,u[i+2|0]=r>>>16,u[i+3|0]=r>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,n=t[o+4>>2],i=e+23|0,o=t[o>>2],u[i|0]=o,u[i+1|0]=o>>>8,u[i+2|0]=o>>>16,u[i+3|0]=o>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,n=t[s+4>>2],i=e+15|0,s=t[s>>2],u[i|0]=s,u[i+1|0]=s>>>8,u[i+2|0]=s>>>16,u[i+3|0]=s>>>24,u[i+4|0]=n,u[i+5|0]=n>>>8,u[i+6|0]=n>>>16,u[i+7|0]=n>>>24,u[e+3|0]=a,u[e+4|0]=a>>>8,u[e+5|0]=a>>>16,u[e+6|0]=a>>>24,i=t[e+68>>2],a=t[e+64>>2],u[e+7|0]=a,u[e+8|0]=a>>>8,u[e+9|0]=a>>>16,u[e+10|0]=a>>>24,u[e+11|0]=i,u[e+12|0]=i>>>8,u[e+13|0]=i>>>16,u[e+14|0]=i>>>24,A=T0(),r=D-496|0,D=r;e:{if(!e){O0[t[A+168>>2]](689638,t[A+172>>2]);break e}if(!hn(r+136|0,690981)||(ie(r+464|0,691013,r+12|0),t[r+12>>2]))break e;if(a=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),o=a,y=a>>>20|0,s=y,i=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),h=i,S=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),a=S,i=i<<12|a>>>20,x=a<<12,R=s|x&-4096,b=i,N=i&1048575,L=h>>>8|0,f=L,i=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),c=i,C=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),a=C,i=i<<24|a>>>8,z=f|a<<24&-16777216,a=i,H=i&1048575,s=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),f=s,w=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),E=(s&65535)<<16|w>>>16,T=s>>>16|0,s=c>>>28|0,d=(c&268435455)<<4|C>>>28,k=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),n=w,i=n<<4,V=s|i&1048560,g=o&1048575,!(d|(z|(E|(k|R)))|(V|(H|(T|(g|N)))))){O0[t[A+168>>2]](690116,t[A+172>>2]);break e}if(w=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),A=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),I=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),Z=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),Y=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),K=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),X=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),j=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),u[r+34|0]=L,u[r+21|0]=E,u[r+38|0]=(b&1048575)<<12|x>>>20,u[r+37|0]=(b&268435455)<<4|x>>>28,u[r+36|0]=b>>>4,u[r+35|0]=b>>>12,u[r+30|0]=a,u[r+29|0]=a>>>8,u[r+22|0]=i>>>12,u[r+47|0]=k,u[r+46|0]=(o&255)<<24|k>>>8,u[r+45|0]=(o&65535)<<16|k>>>16,u[r+44|0]=(o&16777215)<<8|k>>>24,u[r+43|0]=o,u[r+42|0]=o>>>8,u[r+41|0]=y<<4|g>>>16,u[r+40|0]=o>>>24,u[r+39|0]=S,u[r+33|0]=h>>>16,u[r+32|0]=h>>>24,u[r+31|0]=C,i=c,u[r+27|0]=i,u[r+26|0]=i>>>8,u[r+25|0]=i>>>16,u[r+24|0]=i>>>24,u[r+23|0]=n,i=f,u[r+20|0]=(i&16777215)<<8|n>>>24,u[r+19|0]=i,u[r+18|0]=i>>>8,u[r+17|0]=i>>>16,u[r+16|0]=i>>>24,u[r+28|0]=a>>>16&15|d<<4,t[r+400>>2]=64,t[r+404>>2]=0,t[r+328>>2]=-1862921884,t[r+332>>2]=870954602,t[r+320>>2]=-1748470448,t[r+324>>2]=3983205,t[r+312>>2]=292000018,t[r+316>>2]=-782074353,t[r+304>>2]=-1662207471,t[r+308>>2]=596792193,o=r+304|0,z0(o,690981,32),z0(o,r+16|0,32),z0(o,655649,32),c=r+48|0,ye(o,c),x=r+432|0,ie(x,c,0),a=A,i=a>>>16|0,f=r+176|0,n=f+72|0,t[n>>2]=(a&65535)<<16|w>>>16,t[n+4>>2]=i,s=w<<4&1048560,a=Z,i=a>>>28|0,n=f- -64|0,t[n>>2]=(a&268435455)<<4|I>>>28,t[n+4>>2]=i|s,i=a<<24|I>>>8,n=f+56|0,a=K,t[n>>2]=I<<24&-16777216|a>>>8,t[n+4>>2]=i&1048575,i=a<<12,a=Y,s=(i|a>>>20)&1048575,n=f+48|0,t[n>>2]=a<<12&-4096|j>>>20,t[n+4>>2]=s,t[r+296>>2]=0,t[r+256>>2]=1,t[r+260>>2]=0,t[r+216>>2]=X,t[r+220>>2]=j&1048575,t[r+208>>2]=E,t[r+212>>2]=T,t[r+200>>2]=d,t[r+204>>2]=V,t[r+192>>2]=z,t[r+196>>2]=H,t[r+184>>2]=R,t[r+188>>2]=N,t[r+176>>2]=k,t[r+180>>2]=g,b=t[r+456>>2],g=t[r+448>>2],h=t[r+440>>2],i=t[r+432>>2],E=t[r+460>>2],w=t[r+452>>2],d=t[r+444>>2],a=t[r+436>>2],n=b|(g|(h|i))|(E|(w|(d|a)))?-1:0,i=i^-1,T=i-801750718|0,t[r+432>>2]=n&T,s=a^-1,y=s-((i>>>0<801750718)+1076732275|0)|0,t[r+436>>2]=y&n,i=(s|0)==(y|0)&i>>>0>T>>>0|s>>>0>y>>>0,y=h^-1,s=i+y|0,h=d^-1,i=h,T=s-1354194885|0,t[r+440>>2]=T&n,i=s>>>0<y>>>0?i+1|0:i,d=i-((s>>>0<1354194885)+1162945305|0)|0,t[r+444>>2]=d&n,A=g^-1,a=(i|0)==(h|0)&s>>>0<y>>>0|i>>>0<h>>>0,y=(i|0)==(d|0)&s>>>0>T>>>0|i>>>0>d>>>0,s=a+y|0,g=w^-1,i=g+(s>>>0<y>>>0)|0,a=s,s=s+A|0,i=a>>>0>s>>>0?i+1|0:i,h=s-2|0,t[r+448>>2]=h&n,y=i-(s>>>0<2)|0,t[r+452>>2]=y&n,a=(i|0)==(g|0)&s>>>0<A>>>0|i>>>0<g>>>0,s=(i|0)==(y|0)&s>>>0>h>>>0|i>>>0>y>>>0,a=a+s|0,i=a>>>0<s>>>0,s=a-b|0,t[r+456>>2]=s-2&n,t[r+460>>2]=(i-((a>>>0<b>>>0)+E|0)|0)-(s>>>0<2)&n,i=r+288|0,t[i>>2]=0,t[i+4>>2]=0,i=r+280|0,t[i>>2]=0,t[i+4>>2]=0,i=r+272|0,t[i>>2]=0,t[i+4>>2]=0,i=r+264|0,t[i>>2]=0,t[i+4>>2]=0,h2(o,f,x,r+464|0),Ci(c,o),t[r+128>>2]||(s=t[r+92>>2],n=r+48|0,i=n+72|0,d=t[i>>2],o=t[i+4>>2],g=o,i=t[r+88>>2],a=I0(o>>>16|0,0,977,1),f=i+a|0,i=s+i0|0,c=a>>>0>f>>>0?i+1|0:i,i=n+48|0,s=t[i>>2],i=t[i+4>>2],a=c>>>20|0,o=a,a=a+s|0,o=o>>>0>a>>>0?i+1|0:i,b=o&1048575,i=n- -64|0,y=t[i>>2],w=t[i+4>>2],i=n+56|0,s=t[i>>2],i=t[i+4>>2],n=o>>>20|0,s=n+s|0,h=n>>>0>s>>>0?i+1|0:i,i=w,n=h>>>20|0,w=n,n=n+y|0,i=w>>>0>n>>>0?i+1|0:i,y=i&1048575,h=h&1048575,w=(a&s&n)==-1&(o&h&i)==1048575,o=i,i=g&65535,o=o>>>20|0,d=o+d|0,o=o>>>0>d>>>0?i+1|0:i,i=c&1048575,g=i,c=d,w&((c|0)==-1&(o|0)==65535)&((i|0)==1048574&f>>>0>4294966318|i>>>0>1048574)|o>>>16&&(i=g+1|0,f=f+977|0,i=f>>>0<977?i+1|0:i,g=i&1048575,d=i,i=b,d=d>>>20|0,a=a+d|0,i=d>>>0>a>>>0?i+1|0:i,b=i&1048575,d=i,i=h,d=d>>>20|0,s=s+d|0,i=d>>>0>s>>>0?i+1|0:i,h=i&1048575,d=i,i=y,d=d>>>20|0,n=n+d|0,i=d>>>0>n>>>0?i+1|0:i,y=i&1048575,d=i,i=o,o=c,c=(d>>>20|0)+c|0,o=(o>>>0>c>>>0?i+1|0:i)&65535),t[r+120>>2]=c,t[r+124>>2]=o,t[r+112>>2]=n,t[r+116>>2]=y,t[r+104>>2]=s,t[r+108>>2]=h,t[r+96>>2]=a,t[r+100>>2]=b,t[r+88>>2]=f,t[r+92>>2]=g,f&1)||(i=t[r+48>>2],a=t[r+136>>2],n=i-a|0,o=t[r+52>>2]-(t[r+140>>2]+(i>>>0<a>>>0)|0)|0,i=t[r+80>>2],s=t[r+168>>2],a=(i-s|0)-4|0,i=(t[r+84>>2]-(t[r+172>>2]+(i>>>0<s>>>0)|0)|0)+262143|0,s=a>>>0<4294967292?i+1|0:i,f=I0(s>>>16|0,0,977,1),n=f+n|0,i=o+i0|0,i=(n>>>0<f>>>0?i+1|0:i)+4194299|0,n=n-3908|0,i=n>>>0<4294963388?i+1|0:i,o=i&1048575,g=o,h=n^976,w=o^1,((h|0)!=-1|(w|0)!=1048575)&(n|o)!=0))break e;y=a,E=s&65535,a=t[r+72>>2],s=t[r+160>>2],b=a-s|0,d=t[r+76>>2]-(t[r+164>>2]+(a>>>0<s>>>0)|0)|0,a=t[r+64>>2],s=t[r+152>>2],f=a-s|0,c=t[r+68>>2]-(t[r+156>>2]+(a>>>0<s>>>0)|0)|0,a=i>>>20|0,x=t[r+144>>2],T=a-x|0,s=T+t[r+56>>2]|0,i=t[r+60>>2]-(t[r+148>>2]+(a>>>0<x>>>0)|0)|0,i=(s>>>0<T>>>0?i+1|0:i)+4194303|0,a=s-4|0,s=a>>>0<4294967292?i+1|0:i,i=c,o=s>>>20|0,c=o,o=o+f|0,i=(c>>>0>o>>>0?i+1|0:i)+4194303|0,o=o-4|0,f=o>>>0<4294967292?i+1|0:i,i=d,c=f>>>20|0,d=c,c=c+b|0,i=(d>>>0>c>>>0?i+1|0:i)+4194303|0,c=c-4|0,b=c>>>0<4294967292?i+1|0:i,i=E,d=b>>>20|0,y=d+y|0,i=d>>>0>y>>>0?i+1|0:i,(a&h&o&c&y)==-1?d=(s&w&f&b&(i^983040))==1048575:d=0,d?(a=0,i=0):(a=c|(o|(a|n))|y,i=b&1048575|(f&1048575|(s&1048575|g))|i),_=!(i|a)}D=r+496|0;break t}q(1)}return D=e+192|0,_|0}function yr(i,r,a,e,n){var s=0;t:{e:{if((a|0)!=1114112&&(s=1,O0[t[r+16>>2]](i,a)|0))break e;if(e)break t;s=0}return s}return O0[t[r+12>>2]](i,e,n)|0}function mr(i,r){i=i|0,r=r|0;var a=0;if(l[i|0])for(r=i+1|0,i=0;a=i+r|0,i=i+1|0,!!l[a|0];);ge()}function z0(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0,V0=0,q0=0,Z0=0,Y0=0,K0=0,Q0=0,J0=0,_0=0,$0=0,ee=0,ae=0,oe=0,ce=0,de=0,Ne=0,Ue=0,Oe=0,je=0,$e=0,et=0,dt=0,lt=0,Et=0,$t=0,g2=0,w2=0;if(e=t[i+100>>2],n=t[i+96>>2],c=n+a|0,e=c>>>0<a>>>0?e+1|0:e,t[i+96>>2]=c,t[i+100>>2]=e,e=n&63,ae=64-e|0,ae>>>0<=a>>>0)for($t=i+32|0;Ze(e+$t|0,r,ae),n=l[i+67|0],e=l[i+65|0]<<16|l[i+64|0]<<24,r0=n|(e|l[i+66|0]<<8),f=l[i+39|0],c=l[i+37|0]<<16|l[i+36|0]<<24,b=f|(c|l[i+38|0]<<8),S=l[i+59|0],R=l[i+57|0]<<16|l[i+56|0]<<24,C=S|(R|l[i+58|0]<<8),o=l[i+51|0],x=l[i+49|0]<<16|l[i+48|0]<<24,w=o|(x|l[i+50|0]<<8),h=l[i+43|0],y=l[i+41|0]<<16|l[i+40|0]<<24,g=h|(y|l[i+42|0]<<8),$0=(n<<25|r0>>>7)^(r0<<14|e>>>18)^r0>>>3,T=l[i+63|0],n=l[i+61|0]<<16|l[i+60|0]<<24,I=T|(n|l[i+62|0]<<8),k=l[i+71|0],A=l[i+69|0]<<16|l[i+68|0]<<24,b0=k|(A|l[i+70|0]<<8),e=l[i+32|0]|l[i+33|0]<<8|(l[i+34|0]<<16|l[i+35|0]<<24),q0=e<<8&16711680|e<<24|(e>>>8&65280|e>>>24),d=b0+(q0+((f<<25|b>>>7)^(b<<14|c>>>18)^b>>>3)|0)|0,c=l[i+89|0]<<16|l[i+88|0]<<24,e=c|l[i+90|0]<<8,N=l[i+91|0],z=e|N,s=d+((z<<15|c>>>17)^((z<<13|c>>>19)^e>>>10))|0,Z0=(S<<25|C>>>7)^(C<<14|R>>>18)^C>>>3,S=l[i+55|0],R=l[i+53|0]<<16|l[i+52|0]<<24,E=S|(R|l[i+54|0]<<8),X=l[i+83|0],V=l[i+81|0]<<16|l[i+80|0]<<24,g0=X|(V|l[i+82|0]<<8),d=(o<<25|w>>>7)^(w<<14|x>>>18)^w>>>3,L=l[i+47|0],x=l[i+45|0]<<16|l[i+44|0]<<24,Y0=L|(x|l[i+46|0]<<8),_=l[i+75|0],$=l[i+73|0]<<16|l[i+72|0]<<24,x0=_|($|l[i+74|0]<<8),e0=l[i+95|0],f=l[i+93|0]<<16|l[i+92|0]<<24,e=f|l[i+94|0]<<8,H=e0|e,o=(x0+(((h<<25|g>>>7)^(g<<14|y>>>18)^g>>>3)+b|0)|0)+((H<<15|f>>>17)^((H<<13|f>>>19)^e>>>10))|0,y=(g0+(d+Y0|0)|0)+(O(o,15)^O(o,13)^o>>>10)|0,h=((Z0+E|0)+z|0)+(O(y,15)^O(y,13)^y>>>10)|0,e=(($0+I|0)+s|0)+(O(h,15)^O(h,13)^h>>>10)|0,$e=(((k<<25|b0>>>7)^(b0<<14|A>>>18)^b0>>>3)+r0|0)+o|0,$0=(((T<<25|I>>>7)^(I<<14|n>>>18)^I>>>3)+C|0)+H|0,Z0=((S<<25|E>>>7)^(E<<14|R>>>18)^E>>>3)+w|0,S=l[i+87|0],R=l[i+85|0]<<16|l[i+84|0]<<24,ee=S|(R|l[i+86|0]<<8),d=((L<<25|Y0>>>7)^(Y0<<14|x>>>18)^Y0>>>3)+g|0,t0=l[i+79|0],x=l[i+77|0]<<16|l[i+76|0]<<24,C0=t0|(x|l[i+78|0]<<8),T=(d+C0|0)+(O(s,15)^O(s,13)^s>>>10)|0,A=(Z0+ee|0)+(O(T,15)^O(T,13)^T>>>10)|0,k=$0+(O(A,15)^O(A,13)^A>>>10)|0,n=$e+(O(k,15)^O(k,13)^k>>>10)|0,j=n+((O(s,25)^O(s,14)^s>>>3)+H|0)|0,d=(((N<<25|z>>>7)^(z<<14|c>>>18)^z>>>3)+ee|0)+k|0,N=((((_<<25|x0>>>7)^(x0<<14|$>>>18)^x0>>>3)+b0|0)+T|0)+(O(e,15)^O(e,13)^e>>>10)|0,L=((((X<<25|g0>>>7)^(g0<<14|V>>>18)^g0>>>3)+C0|0)+A|0)+(O(N,15)^O(N,13)^N>>>10)|0,V=d+(O(L,15)^O(L,13)^L>>>10)|0,c=j+(O(V,15)^O(V,13)^V>>>10)|0,s0=c+((O(e,25)^O(e,14)^e>>>3)+k|0)|0,j=((O(h,25)^O(h,14)^h>>>3)+A|0)+V|0,Z=((O(y,25)^O(y,14)^y>>>3)+T|0)+L|0,Y=((O(o,25)^O(o,14)^o>>>3)+s|0)+N|0,X=((((t0<<25|C0>>>7)^(C0<<14|x>>>18)^C0>>>3)+x0|0)+y|0)+(O(n,15)^O(n,13)^n>>>10)|0,$=((((S<<25|ee>>>7)^(ee<<14|R>>>18)^ee>>>3)+g0|0)+h|0)+(O(X,15)^O(X,13)^X>>>10)|0,_=((((e0<<25|H>>>7)^(H<<14|f>>>18)^H>>>3)+z|0)+e|0)+(O($,15)^O($,13)^$>>>10)|0,e0=Y+(O(_,15)^O(_,13)^_>>>10)|0,t0=Z+(O(e0,15)^O(e0,13)^e0>>>10)|0,j=j+(O(t0,15)^O(t0,13)^t0>>>10)|0,f=s0+(O(j,15)^O(j,13)^j>>>10)|0,R=f+((O(_,25)^O(_,14)^_>>>3)+V|0)|0,S=((O($,25)^O($,14)^$>>>3)+L|0)+j|0,x=((O(X,25)^O(X,14)^X>>>3)+N|0)+t0|0,u0=((O(n,25)^O(n,14)^n>>>3)+e|0)+e0|0,Y=((O(k,25)^O(k,14)^k>>>3)+h|0)+_|0,Z=((O(A,25)^O(A,14)^A>>>3)+y|0)+$|0,s0=(((O(T,25)^O(T,14)^T>>>3)+o|0)+X|0)+(O(c,15)^O(c,13)^c>>>10)|0,Z=Z+(O(s0,15)^O(s0,13)^s0>>>10)|0,Y=Y+(O(Z,15)^O(Z,13)^Z>>>10)|0,u0=u0+(O(Y,15)^O(Y,13)^Y>>>10)|0,M0=x+(O(u0,15)^O(u0,13)^u0>>>10)|0,R0=S+(O(M0,15)^O(M0,13)^M0>>>10)|0,R=R+(O(R0,15)^O(R0,13)^R0>>>10)|0,S=((O(c,25)^O(c,14)^c>>>3)+_|0)+u0|0,x=((O(V,25)^O(V,14)^V>>>3)+$|0)+Y|0,d0=((O(L,25)^O(L,14)^L>>>3)+X|0)+Z|0,E0=(((O(N,25)^O(N,14)^N>>>3)+n|0)+s0|0)+(O(f,15)^O(f,13)^f>>>10)|0,d0=d0+(O(E0,15)^O(E0,13)^E0>>>10)|0,k0=x+(O(d0,15)^O(d0,13)^d0>>>10)|0,S=S+(O(k0,15)^O(k0,13)^k0>>>10)|0,x=S+((O(f,25)^O(f,14)^f>>>3)+Y|0)|0,K=((O(j,25)^O(j,14)^j>>>3)+Z|0)+k0|0,l0=((O(t0,25)^O(t0,14)^t0>>>3)+s0|0)+d0|0,V0=(((O(e0,25)^O(e0,14)^e0>>>3)+c|0)+E0|0)+(O(R,15)^O(R,13)^R>>>10)|0,oe=l0+(O(V0,15)^O(V0,13)^V0>>>10)|0,ce=K+(O(oe,15)^O(oe,13)^oe>>>10)|0,de=x+(O(ce,15)^O(ce,13)^ce>>>10)|0,x=de+((O(R,25)^O(R,14)^R>>>3)+k0|0)|0,K=((O(R0,25)^O(R0,14)^R0>>>3)+d0|0)+ce|0,K0=((O(M0,25)^O(M0,14)^M0>>>3)+E0|0)+oe|0,Q0=((O(u0,25)^O(u0,14)^u0>>>3)+f|0)+V0|0,J0=((O(Y,25)^O(Y,14)^Y>>>3)+j|0)+R|0,_0=((O(Z,25)^O(Z,14)^Z>>>3)+t0|0)+R0|0,l0=(((O(s0,25)^O(s0,14)^s0>>>3)+e0|0)+M0|0)+(O(S,15)^O(S,13)^S>>>10)|0,_0=_0+(O(l0,15)^O(l0,13)^l0>>>10)|0,J0=J0+(O(_0,15)^O(_0,13)^_0>>>10)|0,Q0=Q0+(O(J0,15)^O(J0,13)^J0>>>10)|0,K0=K0+(O(Q0,15)^O(Q0,13)^Q0>>>10)|0,et=K+(O(K0,15)^O(K0,13)^K0>>>10)|0,dt=x+(O(et,15)^O(et,13)^et>>>10)|0,$e=t[i+12>>2],$0=t[i+28>>2],K=t[i+16>>2],x=$0+(O(K,26)^O(K,21)^O(K,7))|0,Ne=t[i+20>>2],lt=t[i+24>>2],Ue=(q0+(x+((Ne^lt)&K^lt)|0)|0)+1116352408|0,x=Ue+$e|0,q0=t[i+4>>2],d=g+Ne|0,Et=t[i+8>>2],Oe=(((lt+(x&(K^Ne)^Ne)|0)+b|0)+(O(x,26)^O(x,21)^O(x,7))|0)+1899447441|0,g=Et+Oe|0,je=((d+(g&(x^K)^K)|0)+(O(g,26)^O(g,21)^O(g,7))|0)-1245643825|0,b=q0+je|0,d=w+x|0,Z0=(((K+Y0|0)+(b&(g^x)^x)|0)+(O(b,26)^O(b,21)^O(b,7))|0)-373957723|0,x=t[i>>2],w=Z0+x|0,Y0=((d+(w&(b^g)^g)|0)+(O(w,26)^O(w,21)^O(w,7))|0)+961987163|0,d=g+E|0,g=((Et&(x|q0)|x&q0)+(O(x,30)^O(x,19)^O(x,10))|0)+Ue|0,E=g+Y0|0,Ue=((d+(E&(b^w)^b)|0)+(O(E,26)^O(E,21)^O(E,7))|0)+1508970993|0,d=b+C|0,b=(((g|x)&q0|g&x)+(O(g,30)^O(g,19)^O(g,10))|0)+Oe|0,C=b+Ue|0,Oe=((d+(C&(w^E)^w)|0)+(O(C,26)^O(C,21)^O(C,7))|0)-1841331548|0,d=w+I|0,w=(((b|g)&x|b&g)+(O(b,30)^O(b,19)^O(b,10))|0)+je|0,I=w+Oe|0,je=((d+(I&(E^C)^E)|0)+(O(I,26)^O(I,21)^O(I,7))|0)-1424204075|0,d=E+r0|0,g=(((b|w)&g|b&w)+(O(w,30)^O(w,19)^O(w,10))|0)+Z0|0,E=g+je|0,r0=((d+(E&(C^I)^C)|0)+(O(E,26)^O(E,21)^O(E,7))|0)-670586216|0,d=C+b0|0,b=(((g|w)&b|g&w)+(O(g,30)^O(g,19)^O(g,10))|0)+Y0|0,C=b+r0|0,b0=((d+(C&(E^I)^I)|0)+(O(C,26)^O(C,21)^O(C,7))|0)+310598401|0,d=I+x0|0,w=(((b|g)&w|b&g)+(O(b,30)^O(b,19)^O(b,10))|0)+Ue|0,I=w+b0|0,x0=((d+(I&(E^C)^E)|0)+(O(I,26)^O(I,21)^O(I,7))|0)+607225278|0,d=E+C0|0,g=(((b|w)&g|b&w)+(O(w,30)^O(w,19)^O(w,10))|0)+Oe|0,E=g+x0|0,C0=((d+(E&(C^I)^C)|0)+(O(E,26)^O(E,21)^O(E,7))|0)+1426881987|0,d=C+g0|0,b=(((g|w)&b|g&w)+(O(g,30)^O(g,19)^O(g,10))|0)+je|0,C=b+C0|0,g0=((d+(C&(E^I)^I)|0)+(O(C,26)^O(C,21)^O(C,7))|0)+1925078388|0,d=I+ee|0,w=(((b|g)&w|b&g)+(O(b,30)^O(b,19)^O(b,10))|0)+r0|0,I=w+g0|0,r0=((d+(I&(E^C)^E)|0)+(O(I,26)^O(I,21)^O(I,7))|0)-2132889090|0,d=E+z|0,g=(((b|w)&g|b&w)+(O(w,30)^O(w,19)^O(w,10))|0)+b0|0,z=g+r0|0,E=((d+(z&(C^I)^C)|0)+(O(z,26)^O(z,21)^O(z,7))|0)-1680079193|0,d=C+H|0,b=(((g|w)&b|g&w)+(O(g,30)^O(g,19)^O(g,10))|0)+x0|0,H=b+E|0,C=((d+(H&(I^z)^I)|0)+(O(H,26)^O(H,21)^O(H,7))|0)-1046744716|0,d=s+I|0,s=(((b|g)&w|b&g)+(O(b,30)^O(b,19)^O(b,10))|0)+C0|0,w=s+C|0,I=((d+(w&(z^H)^z)|0)+(O(w,26)^O(w,21)^O(w,7))|0)-459576895|0,d=o+z|0,o=(((s|b)&g|s&b)+(O(s,30)^O(s,19)^O(s,10))|0)+g0|0,g=o+I|0,z=((d+(g&(w^H)^H)|0)+(O(g,26)^O(g,21)^O(g,7))|0)-272742522|0,d=T+H|0,T=(((s|o)&b|s&o)+(O(o,30)^O(o,19)^O(o,10))|0)+r0|0,b=T+z|0,H=((d+(b&(g^w)^w)|0)+(O(b,26)^O(b,21)^O(b,7))|0)+264347078|0,d=y+w|0,s=(((o|T)&s|o&T)+(O(T,30)^O(T,19)^O(T,10))|0)+E|0,w=s+H|0,E=((d+(w&(b^g)^g)|0)+(O(w,26)^O(w,21)^O(w,7))|0)+604807628|0,d=g+A|0,o=(((s|T)&o|s&T)+(O(s,30)^O(s,19)^O(s,10))|0)+C|0,A=o+E|0,g=((d+(A&(b^w)^b)|0)+(O(A,26)^O(A,21)^O(A,7))|0)+770255983|0,d=b+h|0,y=(((s|o)&T|s&o)+(O(o,30)^O(o,19)^O(o,10))|0)+I|0,h=y+g|0,b=((d+(h&(w^A)^w)|0)+(O(h,26)^O(h,21)^O(h,7))|0)+1249150122|0,s=(((o|y)&s|o&y)+(O(y,30)^O(y,19)^O(y,10))|0)+z|0,T=s+b|0,k=(((w+k|0)+(T&(h^A)^A)|0)+(O(T,26)^O(T,21)^O(T,7))|0)+1555081692|0,d=e+A|0,e=(((s|y)&o|s&y)+(O(s,30)^O(s,19)^O(s,10))|0)+H|0,o=e+k|0,A=((d+(o&(h^T)^h)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+1996064986|0,d=n+h|0,n=(((e|s)&y|e&s)+(O(e,30)^O(e,19)^O(e,10))|0)+E|0,y=n+A|0,w=((d+(y&(o^T)^T)|0)+(O(y,26)^O(y,21)^O(y,7))|0)-1740746414|0,s=(((e|n)&s|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+g|0,h=s+w|0,T=(((T+N|0)+(h&(o^y)^o)|0)+(O(h,26)^O(h,21)^O(h,7))|0)-1473132947|0,d=o+X|0,e=(((n|s)&e|n&s)+(O(s,30)^O(s,19)^O(s,10))|0)+b|0,o=e+T|0,N=((d+(o&(y^h)^y)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-1341970488|0,d=y+L|0,n=(((e|s)&n|e&s)+(O(e,30)^O(e,19)^O(e,10))|0)+k|0,y=n+N|0,k=((d+(y&(o^h)^h)|0)+(O(y,26)^O(y,21)^O(y,7))|0)-1084653625|0,d=h+$|0,s=(((e|n)&s|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+A|0,h=s+k|0,A=((d+(h&(o^y)^o)|0)+(O(h,26)^O(h,21)^O(h,7))|0)-958395405|0,d=o+V|0,e=(((n|s)&e|n&s)+(O(s,30)^O(s,19)^O(s,10))|0)+w|0,o=e+A|0,L=((d+(o&(y^h)^y)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-710438585|0,d=y+_|0,n=(((e|s)&n|e&s)+(O(e,30)^O(e,19)^O(e,10))|0)+T|0,y=n+L|0,T=((d+(y&(o^h)^h)|0)+(O(y,26)^O(y,21)^O(y,7))|0)+113926993|0,d=c+h|0,c=(((e|n)&s|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+N|0,s=c+T|0,h=((d+(s&(o^y)^o)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+338241895|0,d=o+e0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+k|0,o=e+h|0,k=((d+(o&(s^y)^y)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+666307205|0,d=y+s0|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+A|0,y=n+k|0,A=((d+(y&(s^o)^s)|0)+(O(y,26)^O(y,21)^O(y,7))|0)+773529912|0,d=s+t0|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+L|0,s=c+A|0,N=((d+(s&(o^y)^o)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+1294757372|0,d=o+Z|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+T|0,o=e+N|0,T=((d+(o&(s^y)^y)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+1396182291|0,d=y+j|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+h|0,y=n+T|0,h=((d+(y&(s^o)^s)|0)+(O(y,26)^O(y,21)^O(y,7))|0)+1695183700|0,d=s+Y|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+k|0,s=c+h|0,k=((d+(s&(o^y)^o)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+1986661051|0,d=o+f|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+A|0,f=e+k|0,A=((d+(f&(s^y)^y)|0)+(O(f,26)^O(f,21)^O(f,7))|0)-2117940946|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+N|0,o=n+A|0,y=(((y+u0|0)+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-1838011259|0,d=s+E0|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+T|0,s=c+y|0,T=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)-1564481375|0,d=f+M0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+h|0,f=e+T|0,h=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)-1474664885|0,d=o+d0|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+k|0,o=n+h|0,k=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-1035236496|0,d=s+R0|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+A|0,s=c+k|0,A=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)-949202525|0,d=f+k0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+y|0,f=e+A|0,y=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)-778901479|0,d=o+R|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+T|0,o=n+y|0,T=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-694614492|0,d=s+S|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+h|0,s=c+T|0,h=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)-200395387|0,d=f+V0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+k|0,f=e+h|0,k=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)+275423344|0,d=o+l0|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+A|0,o=n+k|0,A=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+430227734|0,d=s+oe|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+y|0,s=c+A|0,y=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+506948616|0,d=f+_0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+T|0,f=e+y|0,N=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)+659060556|0,d=o+ce|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+h|0,o=n+N|0,h=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+883997877|0,d=s+J0|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+k|0,s=c+h|0,k=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+958139571|0,d=f+de|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+A|0,f=e+k|0,L=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)+1322822218|0,d=o+Q0|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+y|0,o=n+L|0,V=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+1537002063|0,T=(((O(E0,25)^O(E0,14)^E0>>>3)+u0|0)+l0|0)+(O(de,15)^O(de,13)^de>>>10)|0,d=T+s|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+N|0,s=c+V|0,N=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)+1747873779|0,d=f+K0|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+h|0,f=e+N|0,h=((d+(f&(s^o)^o)|0)+(O(f,26)^O(f,21)^O(f,7))|0)+1955562222|0,A=((O(k0,25)^O(k0,14)^k0>>>3)+R0|0)+J0|0,y=(((O(d0,25)^O(d0,14)^d0>>>3)+M0|0)+_0|0)+(O(T,15)^O(T,13)^T>>>10)|0,A=A+(O(y,15)^O(y,13)^y>>>10)|0,d=o+y|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+k|0,o=n+h|0,k=((d+(o&(s^f)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)+2024104815|0,d=s+et|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+L|0,s=c+k|0,L=((d+(s&(o^f)^f)|0)+(O(s,26)^O(s,21)^O(s,7))|0)-2067236844|0,e=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+V|0,y=e+L|0,V=(((f+A|0)+(y&(s^o)^o)|0)+(O(y,26)^O(y,21)^O(y,7))|0)-1933114872|0,d=o+dt|0,n=(((e|c)&n|e&c)+(O(e,30)^O(e,19)^O(e,10))|0)+N|0,o=n+V|0,N=((d+(o&(s^y)^s)|0)+(O(o,26)^O(o,21)^O(o,7))|0)-1866530822|0,c=(((e|n)&c|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+h|0,h=N+c|0,t[i+28>>2]=h+$0,f=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+k|0,e=((n&(f|c)|c&f)+(O(f,30)^O(f,19)^O(f,10))|0)+L|0,n=(((e|f)&c|e&f)+(O(e,30)^O(e,19)^O(e,10))|0)+V|0,c=(((n|e)&f|e&n)+(O(n,30)^O(n,19)^O(n,10))|0)+N|0,t[i+12>>2]=c+$e,Z0=f,d=s,s=(((O(S,25)^O(S,14)^S>>>3)+R|0)+Q0|0)+(O(A,15)^O(A,13)^A>>>10)|0,f=(((d+s|0)+(h&(o^y)^y)|0)+(O(h,26)^O(h,21)^O(h,7))|0)-1538233109|0,R=Z0+f|0,t[i+24>>2]=R+lt,f=(((n|c)&e|n&c)+(O(c,30)^O(c,19)^O(c,10))|0)+f|0,t[i+8>>2]=f+Et,d=e,e=((((((S+(O(V0,25)^O(V0,14)^V0>>>3)|0)+T|0)+(O(dt,15)^O(dt,13)^dt>>>10)|0)+y|0)+(R&(o^h)^o)|0)+(O(R,26)^O(R,21)^O(R,7))|0)-1090935817|0,S=d+e|0,t[i+20>>2]=S+Ne,e=(((c|f)&n|c&f)+(O(f,30)^O(f,19)^O(f,10))|0)+e|0,t[i+4>>2]=e+q0,d=n+K|0,n=((((((V0+(O(l0,25)^O(l0,14)^l0>>>3)|0)+K0|0)+(O(s,15)^O(s,13)^s>>>10)|0)+o|0)+(S&(h^R)^h)|0)+(O(S,26)^O(S,21)^O(S,7))|0)-965641998|0,t[i+16>>2]=d+n,g2=i,w2=((x+((e|f)&c|e&f)|0)+(O(e,30)^O(e,19)^O(e,10))|0)+n|0,t[g2>>2]=w2,r=r+ae|0,a=a-ae|0,ae=64,e=0,a>>>0>63;);a&&Ze((i+e|0)+32|0,r,a)}function ye(i,r){var a=0,e=0,n=0;e=D-16|0,D=e,a=t[i+100>>2],n=t[i+96>>2],u[e+11|0]=(a&536870911)<<3|n>>>29,u[e+10|0]=a>>>5,u[e+9|0]=a>>>13,u[e+8|0]=a>>>21,u[e+15|0]=n<<3,u[e+14|0]=n>>>5,u[e+13|0]=n>>>13,u[e+12|0]=n>>>21,z0(i,690512,(55-n&63)+1|0),z0(i,e+8|0,8),a=t[i>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r|0]=a,u[r+1|0]=a>>>8,u[r+2|0]=a>>>16,u[r+3|0]=a>>>24,t[i>>2]=0,a=t[i+4>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,t[i+4>>2]=0,a=t[i+8>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+8|0]=a,u[r+9|0]=a>>>8,u[r+10|0]=a>>>16,u[r+11|0]=a>>>24,t[i+8>>2]=0,a=t[i+12>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+12|0]=a,u[r+13|0]=a>>>8,u[r+14|0]=a>>>16,u[r+15|0]=a>>>24,t[i+12>>2]=0,a=t[i+16>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+16|0]=a,u[r+17|0]=a>>>8,u[r+18|0]=a>>>16,u[r+19|0]=a>>>24,t[i+16>>2]=0,a=t[i+20>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+20|0]=a,u[r+21|0]=a>>>8,u[r+22|0]=a>>>16,u[r+23|0]=a>>>24,t[i+20>>2]=0,a=t[i+24>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+24|0]=a,u[r+25|0]=a>>>8,u[r+26|0]=a>>>16,u[r+27|0]=a>>>24,t[i+24>>2]=0,a=t[i+28>>2],a=a<<8&16711680|a<<24|(a>>>8&65280|a>>>24),u[r+28|0]=a,u[r+29|0]=a>>>8,u[r+30|0]=a>>>16,u[r+31|0]=a>>>24,t[i+28>>2]=0,D=e+16|0}function Jt(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0;o=D-880|0,D=o;t:{if(!r){O0[t[i+168>>2]](689638,t[i+172>>2]),i=0;break t}if(u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,n=r+56|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+48|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+40|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+32|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+24|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+16|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,n=r+8|0,u[n|0]=0,u[n+1|0]=0,u[n+2|0]=0,u[n+3|0]=0,u[n+4|0]=0,u[n+5|0]=0,u[n+6|0]=0,u[n+7|0]=0,!a){O0[t[i+168>>2]](689668,t[i+172>>2]),i=0;break t}i=0;e:{if((e|0)!=65){if((e|0)!=33||(l[a|0]&254)!=2)break t;if(!hn(o+840|0,a+1|0)){e=0;break e}e=(pa(o+672|0,o+840|0,l[a|0]==3)|0)!=0;break e}if(e=l[a|0],e>>>0>7||!(1<<e&208))break t;if(e=0,!hn(o+800|0,a+1|0)||!hn(o+760|0,a+33|0)||(c=o+800|0,s=c+8|0,n=t[s+4>>2],d=o+672|0,e=d+8|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=c+16|0,n=t[s+4>>2],e=d+16|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=c+24|0,n=t[s+4>>2],e=d+24|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=c+32|0,n=t[s+4>>2],e=d+32|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=o+760|0,n=s+8|0,e=t[n+4>>2],k=o+720|0,t[k>>2]=t[n>>2],t[k+4>>2]=e,n=s+16|0,e=t[n+4>>2],w=o+728|0,t[w>>2]=t[n>>2],t[w+4>>2]=e,n=s+24|0,e=t[n+4>>2],c=o+736|0,t[c>>2]=t[n>>2],t[c+4>>2]=e,n=s+32|0,e=t[n+4>>2],R=o+744|0,t[R>>2]=t[n>>2],t[R+4>>2]=e,t[o+752>>2]=0,e=t[o+804>>2],t[o+672>>2]=t[o+800>>2],t[o+676>>2]=e,e=t[o+764>>2],t[o+712>>2]=t[o+760>>2],t[o+716>>2]=e,a=l[a|0],(a&254)==6&&(e=0,(u[o+760|0]&1)==((a|0)!=7|0))))break e;a=t[o+716>>2],V=a,f=t[o+712>>2],e=f,a=a<<1|e>>>31,T=o+96|0,y=t[c>>2],b=t[c+4>>2],N=e<<1,Z=a,P(T,y,b,0,0,N,a,0,0),a=t[k+4>>2],L=a,z=t[k>>2],n=z,a=a<<1|n>>>31,h=o+160|0,g=t[w>>2],w=t[w+4>>2],n=n<<1,s=a,P(h,g,w,0,0,n,a,0,0),k=o+288|0,e=t[R>>2],a=t[R+4>>2],P(k,e,a,0,0,e,a,0,0),c=o+272|0,P(c,t[o+288>>2],t[o+292>>2],0,0,15632,16,0,0),a=a<<1|e>>>31,X=o+128|0,x=e<<1,R=a,P(X,x,a,0,0,f,V,0,0),_=o+144|0,P(_,y,b,0,0,n,s,0,0),$=o+224|0,P($,g,w,0,0,g,w,0,0),A=o+256|0,a=k+8|0,P(A,t[a>>2],t[a+4>>2],0,0,64028672,65536,0,0),b0=o+112|0,P(b0,f,V,0,0,f,V,0,0),Y=o+192|0,P(Y,x,R,0,0,z,L,0,0),r0=o+240|0,P(r0,y,b,0,0,g<<1,w<<1|g>>>31,0,0),V=t[o+100>>2],a=V+t[o+164>>2]|0,d=t[o+96>>2],e=t[o+160>>2],s=d+e|0,n=t[o+272>>2],s0=s+n|0,e=e>>>0>s>>>0?a+1|0:a,a=e+t[o+276>>2]|0,n=n>>>0>s0>>>0?a+1|0:a,f=(e|0)==(n|0)&s>>>0>s0>>>0|e>>>0>n>>>0,a=c+8|0,k=t[a>>2],c=t[a+4>>2],d=(e|0)==(V|0)&s>>>0<d>>>0|e>>>0<V>>>0,s=h+8|0,e=t[s>>2],a=T+8|0,h=e+t[a>>2]|0,a=t[a+4>>2]+t[s+4>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=d+h|0,a=(e>>>0<h>>>0?a+1|0:a)+c|0,s=e,e=e+k|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+f|0,a=s>>>0>e>>>0?a+1|0:a,u0=n,k=e<<12|n>>>20,s=a,d=a<<12|e>>>20,I=t[o+144>>2],e=t[o+224>>2],h=I+e|0,K=t[o+148>>2],a=K+t[o+228>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=t[o+128>>2],f=e+h|0,T=a,a=a+t[o+132>>2]|0,a=e>>>0>f>>>0?a+1|0:a,e=t[o+256>>2],c=e+f|0,n=a,a=a+t[o+260>>2]|0,e=e>>>0>c>>>0?a+1|0:a,a=e+d|0,g0=o+32|0,j=g0,k=c+k|0,d=k>>>0<c>>>0?a+1|0:a,H=(e|0)==(d|0)&c>>>0>k>>>0|e>>>0>d>>>0,S=(e|0)==(n|0)&c>>>0<f>>>0|e>>>0<n>>>0,a=A+8|0,E=t[a>>2],C=t[a+4>>2],V=(n|0)==(T|0)&f>>>0<h>>>0|n>>>0<T>>>0,a=X+8|0,A=t[a>>2],f=t[a+4>>2],c=(T|0)==(K|0)&h>>>0<I>>>0|T>>>0<K>>>0,n=$+8|0,e=t[n>>2],a=_+8|0,h=e+t[a>>2]|0,a=t[a+4>>2]+t[n+4>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=c+h|0,a=(e>>>0<h>>>0?a+1|0:a)+f|0,n=e,e=e+A|0,a=n>>>0>e>>>0?a+1|0:a,n=e,e=e+V|0,a=(n>>>0>e>>>0?a+1|0:a)+C|0,n=e,e=e+E|0,a=n>>>0>e>>>0?a+1|0:a,n=e+S|0,a=n>>>0<e>>>0?a+1|0:a,s=s>>>20|0,e=n+s|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+H|0,a=s>>>0>e>>>0?a+1|0:a,n=d,c=e<<12|n>>>20,s=a,d=a<<12|e>>>20,E=t[o+192>>2],e=t[o+240>>2],f=E+e|0,S=t[o+196>>2],a=S+t[o+244>>2]|0,e=e>>>0>f>>>0?a+1|0:a,a=e+d|0,c=c+f|0,a=c>>>0<f>>>0?a+1|0:a,T=c<<4&-16,d=a,h=(a<<4|c>>>28)&16777215,V=n,P(j,T|n>>>16&15,h,0,0,977,1,0,0),x0=o+16|0,P(x0,z,L,0,0,N,Z,0,0),C=o+208|0,P(C,x,R,0,0,g,w,0,0),A=o+320|0,P(A,y,b,0,0,y,b,0,0),C0=o+80|0,T=C0,h=(e|0)==(a|0)&c>>>0<f>>>0|e>>>0>a>>>0,c=(e|0)==(S|0)&f>>>0<E>>>0|e>>>0<S>>>0,n=r0+8|0,e=t[n>>2],a=Y+8|0,f=e+t[a>>2]|0,a=t[a+4>>2]+t[n+4>>2]|0,a=e>>>0>f>>>0?a+1|0:a,n=c+f|0,a=n>>>0<f>>>0?a+1|0:a,s=s>>>20|0,e=n+s|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+h|0,a=s>>>0>e>>>0?a+1|0:a,d=e<<12|d>>>20,n=a,f=a<<12|e>>>20,E=t[o+212>>2],a=E+t[o+324>>2]|0,h=t[o+208>>2],e=t[o+320>>2],s=h+e|0,c=s,d=s+d|0,e=e>>>0>s>>>0?a+1|0:a,a=e+f|0,s=s>>>0>d>>>0?a+1|0:a,P(T,d,s&1048575,0,0,15632,16,0,0),P(o,g,w,0,0,N,Z,0,0),M0=o+176|0,P(M0,z,L,0,0,z,L,0,0),f=o+304|0,P(f,x,R,0,0,y,b,0,0),R0=o- -64|0,b=R0,w=(e|0)==(s|0)&c>>>0>d>>>0|e>>>0>s>>>0,c=(e|0)==(E|0)&c>>>0<h>>>0|e>>>0<E>>>0,d=A+8|0,e=t[d>>2],a=C+8|0,y=e+t[a>>2]|0,a=t[a+4>>2]+t[d+4>>2]|0,a=e>>>0>y>>>0?a+1|0:a,d=c+y|0,a=d>>>0<y>>>0?a+1|0:a,n=n>>>20|0,e=n+d|0,a=n>>>0>e>>>0?a+1|0:a,n=e,e=e+w|0,a=n>>>0>e>>>0?a+1|0:a,d=e<<12|s>>>20,s=t[o+304>>2],w=d+s|0,n=a,e=a<<12|e>>>20,a=e+t[o+308>>2]|0,a=s>>>0>w>>>0?a+1|0:a,P(b,w,a,0,0,15632,16,0,0),E0=o+48|0,c=E0,d=(a|0)==(e|0)&d>>>0>w>>>0|a>>>0<e>>>0,a=f+8|0,s=t[a>>2],a=t[a+4>>2],n=n>>>20|0,e=n+s|0,a=n>>>0>e>>>0?a+1|0:a,s=e,e=e+d|0,a=s>>>0>e>>>0?a+1|0:a,P(c,e,a,0,0,64028672,65536,0,0),a=t[o+676>>2],g=a,b=t[o+672>>2],e=b,a=a<<1|e>>>31,f=o+432|0,A=t[o+696>>2],T=t[o+700>>2],H=e<<1,j=a,P(f,A,T,0,0,H,a,0,0),a=t[o+684>>2],l0=a,d0=t[o+680>>2],n=d0,a=a<<1|n>>>31,y=o+496|0,E=t[o+688>>2],x=t[o+692>>2],n=n<<1,s=a,P(y,E,x,0,0,n,a,0,0),w=o+624|0,e=t[o+704>>2],a=t[o+708>>2],P(w,e,a,0,0,e,a,0,0),c=o+608|0,P(c,t[o+624>>2],t[o+628>>2],0,0,15632,16,0,0),a=a<<1|e>>>31,z=o+464|0,r0=e<<1,S=a,P(z,r0,a,0,0,b,g,0,0),K=o+480|0,P(K,A,T,0,0,n,s,0,0),X=o+560|0,P(X,E,x,0,0,E,x,0,0),h=o+592|0,a=w+8|0,P(h,t[a>>2],t[a+4>>2],0,0,64028672,65536,0,0),k0=o+448|0,P(k0,b,g,0,0,b,g,0,0),e0=o+528|0,P(e0,r0,S,0,0,d0,l0,0,0),t0=o+576|0,P(t0,A,T,0,0,E<<1,x<<1|E>>>31,0,0),g=t[o+436>>2],a=g+t[o+500>>2]|0,d=t[o+432>>2],e=t[o+496>>2],n=d+e|0,s=t[o+608>>2],Z=n+s|0,e=e>>>0>n>>>0?a+1|0:a,a=e+t[o+612>>2]|0,s=s>>>0>Z>>>0?a+1|0:a,b=(e|0)==(s|0)&n>>>0>Z>>>0|e>>>0>s>>>0,a=c+8|0,w=t[a>>2],c=t[a+4>>2],d=(e|0)==(g|0)&n>>>0<d>>>0|e>>>0<g>>>0,n=y+8|0,e=t[n>>2],a=f+8|0,y=e+t[a>>2]|0,a=t[a+4>>2]+t[n+4>>2]|0,a=e>>>0>y>>>0?a+1|0:a,e=d+y|0,a=(e>>>0<y>>>0?a+1|0:a)+c|0,n=e,e=e+w|0,a=n>>>0>e>>>0?a+1|0:a,n=e,e=e+b|0,a=n>>>0>e>>>0?a+1|0:a,N=s,w=e<<12|s>>>20,n=a,d=a<<12|e>>>20,_=t[o+480>>2],e=t[o+560>>2],b=_+e|0,L=t[o+484>>2],a=L+t[o+564>>2]|0,a=e>>>0>b>>>0?a+1|0:a,e=t[o+464>>2],c=e+b|0,f=a,a=a+t[o+468>>2]|0,a=e>>>0>c>>>0?a+1|0:a,e=t[o+592>>2],s=e+c|0,y=a,a=a+t[o+596>>2]|0,e=e>>>0>s>>>0?a+1|0:a,a=e+d|0,$=o+368|0,w=s+w|0,d=w>>>0<s>>>0?a+1|0:a,Y=(e|0)==(d|0)&s>>>0>w>>>0|e>>>0>d>>>0,I=(e|0)==(y|0)&s>>>0<c>>>0|e>>>0<y>>>0,a=h+8|0,C=t[a>>2],R=t[a+4>>2],g=(f|0)==(y|0)&c>>>0<b>>>0|f>>>0>y>>>0,a=z+8|0,h=t[a>>2],y=t[a+4>>2],c=(f|0)==(L|0)&b>>>0<_>>>0|f>>>0<L>>>0,s=X+8|0,e=t[s>>2],a=K+8|0,b=e+t[a>>2]|0,a=t[a+4>>2]+t[s+4>>2]|0,a=e>>>0>b>>>0?a+1|0:a,e=c+b|0,a=(e>>>0<b>>>0?a+1|0:a)+y|0,s=e,e=e+h|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+g|0,a=(s>>>0>e>>>0?a+1|0:a)+R|0,s=e,e=e+C|0,a=s>>>0>e>>>0?a+1|0:a,s=e+I|0,a=s>>>0<e>>>0?a+1|0:a,n=n>>>20|0,e=n+s|0,a=n>>>0>e>>>0?a+1|0:a,s=e,e=e+Y|0,a=s>>>0>e>>>0?a+1|0:a,n=d,c=e<<12|n>>>20,s=a,b=a<<12|e>>>20,I=t[o+532>>2],a=I+t[o+580>>2]|0,g=t[o+528>>2],e=t[o+576>>2],d=g+e|0,f=d,c=d+c|0,e=e>>>0>d>>>0?a+1|0:a,a=e+b|0,y=c<<4&-16,d=c>>>0<d>>>0?a+1|0:a,b=(d<<4|c>>>28)&16777215,R=n,P($,y|n>>>16&15,b,0,0,977,1,0,0),b=t[o+372>>2],a=b+t[o+452>>2]|0,Y=t[o+368>>2],n=t[o+448>>2],y=Y+n|0,t[o+840>>2]=y,n=n>>>0>y>>>0?a+1|0:a,t[o+844>>2]=n&1048575,L=o+352|0,P(L,d0,l0,0,0,H,j,0,0),z=o+544|0,P(z,r0,S,0,0,E,x,0,0),K=o+656|0,P(K,A,T,0,0,A,T,0,0),X=o+416|0,C=X,h=(e|0)==(d|0)&c>>>0<f>>>0|e>>>0>d>>>0,f=(e|0)==(I|0)&f>>>0<g>>>0|e>>>0<I>>>0,c=t0+8|0,e=t[c>>2],a=e0+8|0,g=e+t[a>>2]|0,a=t[a+4>>2]+t[c+4>>2]|0,a=e>>>0>g>>>0?a+1|0:a,c=f+g|0,a=c>>>0<g>>>0?a+1|0:a,s=s>>>20|0,e=s+c|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+h|0,a=s>>>0>e>>>0?a+1|0:a,f=e<<12|d>>>20,c=a,d=a<<12|e>>>20,e0=t[o+548>>2],a=e0+t[o+660>>2]|0,_=t[o+544>>2],s=t[o+656>>2],e=_+s|0,I=e,g=e+f|0,s=e>>>0<s>>>0?a+1|0:a,a=s+d|0,f=g>>>0<e>>>0?a+1|0:a,P(C,g,f&1048575,0,0,15632,16,0,0),y=(n|0)==(b|0)&y>>>0<Y>>>0|n>>>0<b>>>0,d=k0+8|0,e=t[d>>2],a=$+8|0,h=e+t[a>>2]|0,a=t[a+4>>2]+t[d+4>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=y+h|0,a=e>>>0<h>>>0?a+1|0:a,h=e<<12|n>>>20,d=a,y=a<<12|e>>>20,$=t[o+416>>2],e=t[o+352>>2],C=$+e|0,t0=t[o+420>>2],a=t0+t[o+356>>2]|0,n=e>>>0>C>>>0?a+1|0:a,a=n+y|0,h=h+C|0,a=h>>>0<C>>>0?a+1|0:a,t[o+848>>2]=h,y=a,t[o+852>>2]=a&1048575,Y=o+336|0,P(Y,E,x,0,0,H,j,0,0),j=o+512|0,P(j,d0,l0,0,0,d0,l0,0,0),H=o+640|0,P(H,r0,S,0,0,A,T,0,0),E=o+400|0,A=E,x=(s|0)==(f|0)&g>>>0<I>>>0|s>>>0>f>>>0,g=(s|0)==(e0|0)&I>>>0<_>>>0|s>>>0<e0>>>0,s=K+8|0,e=t[s>>2],a=z+8|0,T=e+t[a>>2]|0,a=t[a+4>>2]+t[s+4>>2]|0,a=e>>>0>T>>>0?a+1|0:a,s=g+T|0,a=s>>>0<T>>>0?a+1|0:a,c=c>>>20|0,e=s+c|0,a=c>>>0>e>>>0?a+1|0:a,s=e,e=e+x|0,a=s>>>0>e>>>0?a+1|0:a,T=e<<12|f>>>20,c=t[o+640>>2],f=T+c|0,s=a,I=a<<12|e>>>20,a=I+t[o+644>>2]|0,g=c>>>0>f>>>0?a+1|0:a,P(A,f,g,0,0,15632,16,0,0),h=(n|0)==(y|0)&h>>>0<C>>>0|n>>>0>y>>>0,b=(n|0)==(t0|0)&C>>>0<$>>>0|n>>>0<t0>>>0,n=L+8|0,e=t[n>>2],a=X+8|0,x=e+t[a>>2]|0,a=t[a+4>>2]+t[n+4>>2]|0,a=e>>>0>x>>>0?a+1|0:a,n=b+x|0,a=n>>>0<x>>>0?a+1|0:a,d=d>>>20|0,e=n+d|0,a=d>>>0>e>>>0?a+1|0:a,n=e,e=e+h|0,a=n>>>0>e>>>0?a+1|0:a,b=e<<12|y>>>20,n=a,d=a<<12|e>>>20,C=t[o+336>>2],e=t[o+512>>2],h=C+e|0,S=t[o+340>>2],a=S+t[o+516>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=t[o+400>>2],y=e+h|0,x=a,a=a+t[o+404>>2]|0,e=e>>>0>y>>>0?a+1|0:a,a=e+d|0,b=b+y|0,a=b>>>0<y>>>0?a+1|0:a,t[o+856>>2]=b,d=a,t[o+860>>2]=a&1048575,A=o+384|0,T=(g|0)==(I|0)&f>>>0<T>>>0|g>>>0<I>>>0,a=H+8|0,g=t[a>>2],a=t[a+4>>2],s=s>>>20|0,c=s,s=s+g|0,a=c>>>0>s>>>0?a+1|0:a,c=s,s=s+T|0,a=c>>>0>s>>>0?a+1|0:a,P(A,s,a,0,0,64028672,65536,0,0),T=(e|0)==(d|0)&b>>>0<y>>>0|e>>>0>d>>>0,g=(e|0)==(x|0)&y>>>0<h>>>0|e>>>0<x>>>0,a=E+8|0,f=t[a>>2],y=t[a+4>>2],b=(x|0)==(S|0)&h>>>0<C>>>0|x>>>0<S>>>0,c=j+8|0,e=t[c>>2],a=Y+8|0,h=e+t[a>>2]|0,a=t[a+4>>2]+t[c+4>>2]|0,a=e>>>0>h>>>0?a+1|0:a,e=b+h|0,a=(e>>>0<h>>>0?a+1|0:a)+y|0,s=e,e=e+f|0,a=s>>>0>e>>>0?a+1|0:a,c=e+g|0,a=c>>>0<e>>>0?a+1|0:a,n=n>>>20|0,e=n+c|0,a=n>>>0>e>>>0?a+1|0:a,s=e,e=e+T|0,a=s>>>0>e>>>0?a+1|0:a,c=e<<12|d>>>20,n=a,y=a<<12|e>>>20,h=t[o+384>>2],d=Z&-2,e=h+d|0,g=t[o+388>>2],a=g+(N&1048575)|0,b=e>>>0<d>>>0?a+1|0:a,a=b+y|0,s=c,c=e,d=s+e|0,t[o+864>>2]=d,e=e>>>0>d>>>0?a+1|0:a,t[o+868>>2]=e&1048575,f=R&65535,y=(e|0)==(b|0)&c>>>0>d>>>0|e>>>0<b>>>0,s=(b|0)==(g|0)&c>>>0<h>>>0|b>>>0<g>>>0,a=A+8|0,d=s+t[a>>2]|0,a=t[a+4>>2],a=s>>>0>d>>>0?a+1|0:a,n=n>>>20|0,s=n,n=n+d|0,a=s>>>0>n>>>0?a+1|0:a,s=n,n=n+y|0,a=s>>>0>n>>>0?a+1|0:a,e=n<<12|e>>>20,s=e+w|0,a=f+(a<<12|n>>>20)|0,t[o+872>>2]=s,t[o+876>>2]=e>>>0>s>>>0?a+1|0:a,a=b0+8|0,c=t[a>>2],d=t[a+4>>2],a=g0+8|0,K=t[a>>2],n=t[a+4>>2],s=t[o+112>>2],e=t[o+116>>2],g=t[o+32>>2],e0=t[o+36>>2],a=x0+8|0,C=t[a>>2],A=t[a+4>>2],a=C0+8|0,X=t[a>>2],N=t[a+4>>2],E=t[o+16>>2],h=t[o+20>>2],_=t[o+80>>2],t0=t[o+84>>2],a=M0+8|0,T=t[a>>2],x=t[a+4>>2],a=o+8|0,$=t[a>>2],Z=t[a+4>>2],I=t[o+176>>2],f=t[o+180>>2],j=t[o>>2],L=t[o+4>>2],a=R0+8|0,b=t[a>>2],w=t[a+4>>2],H=t[o+64>>2],y=t[o+68>>2],Y=t[o+48>>2],z=t[o+52>>2],a=E0+8|0,r0=t[a>>2],R=t[a+4>>2],a=o+840|0,U0(a,a,o+672|0),a=e+e0|0,e=s+g|0,s=e>>>0<s>>>0?a+1|0:a,S=e,e=(e0|0)==(s|0)&e>>>0<g>>>0|s>>>0<e0>>>0,a=n+d|0,n=c+K|0,a=n>>>0<K>>>0?a+1|0:a,e=e+n|0,a=e>>>0<n>>>0?a+1|0:a,g=s,c=e<<12|s>>>20,n=a,d=a<<12|e>>>20,a=h+t0|0,s=E+_|0,e=s>>>0<E>>>0?a+1|0:a,a=e+d|0,E=s+c|0,d=E>>>0<s>>>0?a+1|0:a,c=(e|0)==(d|0)&s>>>0>E>>>0|e>>>0>d>>>0,e=(e|0)==(t0|0)&s>>>0<_>>>0|e>>>0<t0>>>0,a=A+N|0,s=C+X|0,a=s>>>0<X>>>0?a+1|0:a,C=s,s=e+s|0,a=C>>>0>s>>>0?a+1|0:a,n=n>>>20|0,e=n+s|0,a=n>>>0>e>>>0?a+1|0:a,s=e,e=e+c|0,a=s>>>0>e>>>0?a+1|0:a,h=d,N=e<<12|d>>>20,s=a,c=a<<12|e>>>20,a=f+L|0,e=I+j|0,n=e>>>0<I>>>0?a+1|0:a,a=y+n|0,y=e,d=e+H|0,e=d>>>0<H>>>0?a+1|0:a,a=e+c|0,f=d,c=d+N|0,d=d>>>0>c>>>0?a+1|0:a,C=c,N=(e|0)==(d|0)&c>>>0<f>>>0|e>>>0>d>>>0,a=n,f=(a|0)==(e|0)&f>>>0<y>>>0|a>>>0>e>>>0,n=b,e=w,c=(a|0)==(L|0)&y>>>0<j>>>0|a>>>0<L>>>0,a=x+Z|0,w=T+$|0,a=w>>>0<$>>>0?a+1|0:a,c=c+w|0,a=(c>>>0<w>>>0?a+1|0:a)+e|0,e=n+c|0,a=e>>>0<c>>>0?a+1|0:a,n=e+f|0,a=n>>>0<e>>>0?a+1|0:a,s=s>>>20|0,e=n+s|0,a=s>>>0>e>>>0?a+1|0:a,s=e,e=e+N|0,a=s>>>0>e>>>0?a+1|0:a,f=d,d=e<<12|d>>>20,n=a,s=a<<12|e>>>20,e=s0&-2,A=e+Y|0,a=z+(u0&1048575)|0,e=e>>>0>A>>>0?a+1|0:a,a=e+s|0,s=d+A|0,a=s>>>0<A>>>0?a+1|0:a,u0=s,d=a,I=t[o+864>>2],j=t[o+868>>2],H=t[o+856>>2],Z=t[o+860>>2],N=t[o+848>>2],y=t[o+852>>2],c=t[o+844>>2],w=t[o+872>>2],s=t[o+876>>2],s0=s,a=t[o+840>>2],s=I0(s>>>16|0,0,977,1),b=a+s|0,a=c+i0|0,a=s>>>0>b>>>0?a+1|0:a,s=b+7|0,a=s>>>0<7?a+1|0:a,T=s,c=a,a=y,s=c>>>20|0,y=s,s=s+N|0,a=y>>>0>s>>>0?a+1|0:a,x=s,y=a,a=Z,s=y>>>20|0,b=s,s=s+H|0,a=b>>>0>s>>>0?a+1|0:a,Z=s,b=a,a=j,s=b>>>20|0,j=s,s=s+I|0,a=j>>>0>s>>>0?a+1|0:a,N=s,s=a,H=T-S|0,S=(c&1048575)-((g&1048575)+(T>>>0<S>>>0)|0)|0,s0=s0&65535,T=V&65535,g=(e|0)==(d|0)&A>>>0>u0>>>0|e>>>0>d>>>0,e=(e|0)==(z|0)&A>>>0<Y>>>0|e>>>0<z>>>0,c=e+r0|0,a=R,a=e>>>0>c>>>0?a+1|0:a,n=n>>>20|0,e=n+c|0,a=n>>>0>e>>>0?a+1|0:a,n=e,e=e+g|0,a=n>>>0>e>>>0?a+1|0:a,n=e<<12|d>>>20,c=n+k|0,a=T+(a<<12|e>>>20)|0,a=n>>>0>c>>>0?a+1|0:a,n=w-c|0,a=s0-((c>>>0>w>>>0)+a|0)|0,c=s>>>20|0,e=n+c|0,a=(c>>>0>e>>>0?a+1|0:a)+262143|0,e=e-4|0,w=e>>>0<4294967292?a+1|0:a,n=I0(w>>>16|0,0,977,1),c=n+H|0,a=S+i0|0,a=(n>>>0>c>>>0?a+1|0:a)+4194299|0,n=c-3908|0,a=n>>>0<4294963388?a+1|0:a,V=n^976,c=a&1048575,A=c^1,((V|0)!=-1|(A|0)!=1048575)&(n|c)!=0?e=0:(T=N-u0|0,R=(s&1048575)-((d&1048575)+(N>>>0<u0>>>0)|0)|0,g=Z-C|0,k=(b&1048575)-((f&1048575)+(C>>>0>Z>>>0)|0)|0,n=a,a=(y&1048575)-((h&1048575)+(x>>>0<E>>>0)|0)|0,n=n>>>20|0,s=n,n=n+(x-E|0)|0,a=(s>>>0>n>>>0?a+1|0:a)+4194303|0,c=n-4|0,d=c>>>0<4294967292?a+1|0:a,a=k,n=d>>>20|0,s=n,n=n+g|0,a=(s>>>0>n>>>0?a+1|0:a)+4194303|0,s=n-4|0,n=s>>>0<4294967292?a+1|0:a,a=R,k=n>>>20|0,f=k,k=T+k|0,a=(f>>>0>k>>>0?a+1|0:a)+4194303|0,k=k-4|0,a=k>>>0<4294967292?a+1|0:a,c=k&(c&V&s),d=a&(d&A&n),n=e,e=a,a=w&65535,e=e>>>20|0,s=e,e=e+n|0,a=s>>>0>e>>>0?a+1|0:a,e=(e&c)==-1&(d&(a^983040))==1048575)}if(!e)break t;ct(r,o+672|0),i=1}return D=o+880|0,i}function hn(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0;return n=i,a=l[r+30|0],i=a>>>24|0,e=l[r+31|0]|a<<8,a=i,s=l[r+29|0],i=s>>>16|0,s=s<<16|e,e=i|a,a=l[r+28|0],i=a>>>8|0,a=a<<24|s,i=l[r+27|0]|(i|e)|l[r+26|0]<<8|(l[r+25|0]&15)<<16,s=i,g=a,t[n>>2]=a,t[n+4>>2]=i,a=l[r+24|0],i=a>>>28|0,o=a<<4|l[r+25|0]>>>4,a=i,e=l[r+23|0],i=e>>>20|0,e=e<<12|o,o=i|a,a=l[r+22|0],i=a>>>12|0,e=a<<20|e,o=i|o,a=l[r+21|0],i=a>>>4|0,a=a<<28|e,e=i|o|l[r+20|0]<<4,i=l[r+19|0]<<12,o=a,t[n+8>>2]=a,y=i|e,t[n+12>>2]=y,a=l[r+17|0],i=a>>>24|0,d=l[r+18|0]|a<<8,a=i,e=l[r+16|0],i=e>>>16|0,e=e<<16|d,d=i|a,a=l[r+15|0],i=a>>>8|0,a=a<<24|e,e=l[r+14|0]|(i|d)|l[r+13|0]<<8,i=(l[r+12|0]&15)<<16,d=a,t[n+16>>2]=a,b=i|e,t[n+20>>2]=b,a=l[r+11|0],i=a>>>28|0,c=a<<4|l[r+12|0]>>>4,a=i,e=l[r+10|0],i=e>>>20|0,e=e<<12|c,c=i|a,a=l[r+9|0],i=a>>>12|0,e=a<<20|e,c=i|c,a=l[r+8|0],i=a>>>4|0,a=a<<28|e,e=i|c|l[r+7|0]<<4,i=l[r+6|0]<<12,c=a,t[n+24>>2]=a,h=i|e,t[n+28>>2]=h,a=l[r+4|0],i=a>>>24|0,f=l[r+5|0]|a<<8,a=i,e=l[r+3|0],i=e>>>16|0,e=e<<16|f,f=i|a,a=l[r+2|0],i=a>>>8|0,a=a<<24|e,e=l[r+1|0]|(i|f),i=l[r|0]<<8,t[n+32>>2]=a,i=i|e,t[n+36>>2]=i,(o&d&c)!=-1|(y&b&h)!=1048575|((a|0)!=-1|(i|0)!=65535)|((s|0)==1048574&g>>>0<4294966319|s>>>0<1048574)}function pa(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0;for(o=D-7616|0,D=o,s=r+32|0,n=t[s+4>>2],e=i+32|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=r+24|0,n=t[s+4>>2],e=i+24|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=r+16|0,n=t[s+4>>2],e=i+16|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,s=r+8|0,n=t[s+4>>2],e=i+8|0,t[e>>2]=t[s>>2],t[e+4>>2]=n,e=t[r+4>>2],t[i>>2]=t[r>>2],t[i+4>>2]=e,e=o+7096|0,Ve(e,r),d0=o+7056|0,U0(d0,r,e),t[i+80>>2]=0,e=t[o+7060>>2],n=t[o+7056>>2]+7|0,r=n>>>0<7?e+1|0:e,e=n,t[o+7056>>2]=e,t[o+7060>>2]=r,g=o+6848|0,I=t[o+7080>>2],x=t[o+7084>>2],V=e<<1,c=e,S=r<<1|e>>>31,P(g,I,x,0,0,V,S,0,0),e=t[o+7068>>2],u0=e,X=t[o+7064>>2],s=X,e=e<<1|s>>>31,h=o+6880|0,N=t[o+7072>>2],E=t[o+7076>>2],s=s<<1,d=e,P(h,N,E,0,0,s,e,0,0),f=o+7008|0,n=t[o+7088>>2],e=t[o+7092>>2],P(f,n,e,0,0,n,e,0,0),y=o+6992|0,P(y,t[o+7008>>2],t[o+7012>>2],0,0,15632,16,0,0),e=e<<1|n>>>31,Y=o+6800|0,R=n<<1,C=e,P(Y,R,e,0,0,c,r,0,0),t0=o+6864|0,P(t0,I,x,0,0,s,d,0,0),Z=o+6944|0,P(Z,N,E,0,0,N,E,0,0),w=o+6976|0,e=f+8|0,P(w,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),s0=o+6720|0,P(s0,c,r,0,0,c,r,0,0),r0=o+6912|0,P(r0,R,C,0,0,X,u0,0,0),$=o+6960|0,P($,I,x,0,0,N<<1,E<<1|N>>>31,0,0),A=t[o+6852>>2],e=A+t[o+6884>>2]|0,d=t[o+6848>>2],n=t[o+6880>>2],r=d+n|0,s=t[o+6992>>2],T=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+6996>>2]|0,s=s>>>0>T>>>0?e+1|0:e,f=(n|0)==(s|0)&r>>>0>T>>>0|n>>>0>s>>>0,e=y+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(A|0)&r>>>0<d>>>0|n>>>0<A>>>0,e=h+8|0,n=t[e>>2],r=g+8|0,y=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>y>>>0?e+1|0:e,r=d+y|0,e=(r>>>0<y>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,A=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,K=t[o+6864>>2],r=t[o+6944>>2],f=K+r|0,_=t[o+6868>>2],e=_+t[o+6948>>2]|0,e=r>>>0>f>>>0?e+1|0:e,r=t[o+6800>>2],c=r+f|0,h=e,e=e+t[o+6804>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+6976>>2],s=r+c|0,y=e,e=e+t[o+6980>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,e0=o+6736|0,j=e0,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(y|0)&s>>>0<c>>>0|r>>>0<y>>>0,r=w+8|0,k=t[r>>2],z=t[r+4>>2],g=(y|0)==(h|0)&c>>>0<f>>>0|y>>>0<h>>>0,r=Y+8|0,w=t[r>>2],y=t[r+4>>2],c=(h|0)==(_|0)&f>>>0<K>>>0|h>>>0<_>>>0,e=Z+8|0,s=t[e>>2],r=t0+8|0,f=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>f>>>0?e+1|0:e,r=c+f|0,e=(r>>>0<f>>>0?e+1|0:e)+y|0,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+g|0,e=(s>>>0>r>>>0?e+1|0:e)+z|0,s=r,r=r+k|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,w=t[o+6912>>2],r=t[o+6960>>2],y=w+r|0,k=t[o+6916>>2],e=k+t[o+6964>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+d|0,c=c+y|0,e=c>>>0<y>>>0?e+1|0:e,h=c<<4&-16,d=e,f=(e<<4|c>>>28)&16777215,g=n,P(j,h|n>>>16&15,f,0,0,977,1,0,0),H=t[o+6740>>2],e=H+t[o+6724>>2]|0,L=t[o+6736>>2],n=t[o+6720>>2],f=L+n|0,t[o+7576>>2]=f,n=n>>>0>f>>>0?e+1|0:e,t[o+7580>>2]=n&1048575,Y=o+6832|0,P(Y,X,u0,0,0,V,S,0,0),t0=o+6928|0,P(t0,R,C,0,0,N,E,0,0),Z=o+7040|0,P(Z,I,x,0,0,I,x,0,0),K=o+6784|0,z=K,h=(r|0)==(d|0)&c>>>0<y>>>0|r>>>0>d>>>0,y=(r|0)==(k|0)&y>>>0<w>>>0|r>>>0<k>>>0,e=$+8|0,c=t[e>>2],r=r0+8|0,w=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>w>>>0?e+1|0:e,c=y+w|0,e=c>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=s+c|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+h|0,e=s>>>0>r>>>0?e+1|0:e,y=r<<12|d>>>20,c=e,d=e<<12|r>>>20,$=t[o+6932>>2],e=$+t[o+7044>>2]|0,j=t[o+6928>>2],s=t[o+7040>>2],r=j+s|0,k=r,w=r+y|0,s=r>>>0<s>>>0?e+1|0:e,e=s+d|0,y=w>>>0<r>>>0?e+1|0:e,P(z,w,y&1048575,0,0,15632,16,0,0),f=(n|0)==(H|0)&f>>>0<L>>>0|n>>>0<H>>>0,e=s0+8|0,d=t[e>>2],r=e0+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,r=f+h|0,e=r>>>0<h>>>0?e+1|0:e,h=r<<12|n>>>20,d=e,f=e<<12|r>>>20,H=t[o+6784>>2],r=t[o+6832>>2],z=H+r|0,e0=t[o+6788>>2],e=e0+t[o+6836>>2]|0,n=r>>>0>z>>>0?e+1|0:e,e=n+f|0,h=h+z|0,e=h>>>0<z>>>0?e+1|0:e,t[o+7584>>2]=h,f=e,t[o+7588>>2]=e&1048575,L=o+6816|0,P(L,N,E,0,0,V,S,0,0),S=o+6896|0,P(S,X,u0,0,0,X,u0,0,0),V=o+7024|0,P(V,R,C,0,0,I,x,0,0),N=o+6768|0,I=N,E=(s|0)==(y|0)&w>>>0<k>>>0|s>>>0>y>>>0,w=(s|0)==($|0)&k>>>0<j>>>0|s>>>0<$>>>0,e=Z+8|0,s=t[e>>2],r=t0+8|0,x=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>x>>>0?e+1|0:e,s=w+x|0,e=s>>>0<x>>>0?e+1|0:e,c=c>>>20|0,r=s+c|0,e=c>>>0>r>>>0?e+1|0:e,s=r,r=r+E|0,e=s>>>0>r>>>0?e+1|0:e,x=r<<12|y>>>20,c=t[o+7024>>2],y=x+c|0,s=e,k=e<<12|r>>>20,e=k+t[o+7028>>2]|0,w=c>>>0>y>>>0?e+1|0:e,P(I,y,w,0,0,15632,16,0,0),h=(n|0)==(f|0)&h>>>0<z>>>0|n>>>0>f>>>0,c=(n|0)==(e0|0)&z>>>0<H>>>0|n>>>0<e0>>>0,e=Y+8|0,n=t[e>>2],r=K+8|0,E=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>E>>>0?e+1|0:e,n=c+E|0,e=n>>>0<E>>>0?e+1|0:e,d=d>>>20|0,r=n+d|0,e=d>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|f>>>20,n=e,d=e<<12|r>>>20,z=t[o+6816>>2],r=t[o+6896>>2],h=z+r|0,C=t[o+6820>>2],e=C+t[o+6900>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+6768>>2],f=r+h|0,E=e,e=e+t[o+6772>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+d|0,c=c+f|0,e=c>>>0<f>>>0?e+1|0:e,t[o+7592>>2]=c,d=e,t[o+7596>>2]=e&1048575,I=o+6752|0,x=(w|0)==(k|0)&y>>>0<x>>>0|w>>>0<k>>>0,e=V+8|0,w=t[e>>2],e=t[e+4>>2],s=s>>>20|0,y=s,s=s+w|0,e=y>>>0>s>>>0?e+1|0:e,y=s,s=s+x|0,e=y>>>0>s>>>0?e+1|0:e,P(I,s,e,0,0,64028672,65536,0,0),x=(r|0)==(d|0)&c>>>0<f>>>0|r>>>0>d>>>0,w=(r|0)==(E|0)&f>>>0<h>>>0|r>>>0<E>>>0,r=N+8|0,y=t[r>>2],f=t[r+4>>2],c=(E|0)==(C|0)&h>>>0<z>>>0|E>>>0<C>>>0,e=S+8|0,s=t[e>>2],r=L+8|0,h=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>h>>>0?e+1|0:e,r=c+h|0,e=(r>>>0<h>>>0?e+1|0:e)+f|0,s=r,r=r+y|0,e=s>>>0>r>>>0?e+1|0:e,s=r+w|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+x|0,e=n>>>0>r>>>0?e+1|0:e,f=r<<12|d>>>20,n=e,s=e<<12|r>>>20,h=t[o+6752>>2],r=T&-2,d=h+r|0,w=t[o+6756>>2],e=w+(A&1048575)|0,c=r>>>0>d>>>0?e+1|0:e,e=c+s|0,s=d+f|0,e=s>>>0<d>>>0?e+1|0:e,t[o+7600>>2]=s,r=e,t[o+7604>>2]=e&1048575,y=g&65535,f=(e|0)==(c|0)&s>>>0<d>>>0|e>>>0<c>>>0,s=(c|0)==(w|0)&d>>>0<h>>>0|c>>>0<w>>>0,e=I+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+b|0,e=y+(e<<12|n>>>20)|0,t[o+7608>>2]=s,t[o+7612>>2]=r>>>0>s>>>0?e+1|0:e,u0=o+7576|0,U0(u0,u0,d0),r=t[o+7580>>2],A=r,g=t[o+7576>>2],c=g,e=r<<1|c>>>31,h=o+6448|0,N=t[o+7600>>2],z=t[o+7604>>2],k=c<<1,R=e,P(h,N,z,0,0,k,e,0,0),r=t[o+7588>>2],g0=r,b0=t[o+7584>>2],n=b0,e=r<<1|n>>>31,y=o+6656|0,V=t[o+7592>>2],I=t[o+7596>>2],n=n<<1,s=e,P(y,V,I,0,0,n,e,0,0),f=o+6608|0,d=t[o+7608>>2],r=t[o+7612>>2],P(f,d,r,0,0,d,r,0,0),b=o+6592|0,P(b,t[o+6608>>2],t[o+6612>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,e0=o+6560|0,H=d<<1,S=e,P(e0,H,e,0,0,c,A,0,0),Y=o+6464|0,P(Y,N,z,0,0,n,s,0,0),t0=o+6640|0,P(t0,V,I,0,0,V,I,0,0),w=o+6576|0,r=f+8|0,P(w,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),s0=o+6704|0,P(s0,c,A,0,0,c,A,0,0),r0=o+6544|0,P(r0,H,e,0,0,b0,g0,0,0),Z=o+6480|0,P(Z,N,z,0,0,V<<1,I<<1|V>>>31,0,0),g=t[o+6452>>2],e=g+t[o+6660>>2]|0,d=t[o+6448>>2],n=t[o+6656>>2],r=d+n|0,s=t[o+6592>>2],x=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+6596>>2]|0,s=s>>>0>x>>>0?e+1|0:e,f=(n|0)==(s|0)&r>>>0>x>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(g|0)&r>>>0<d>>>0|n>>>0<g>>>0,e=y+8|0,n=t[e>>2],r=h+8|0,y=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>y>>>0?e+1|0:e,r=d+y|0,e=(r>>>0<y>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,E=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,K=t[o+6464>>2],r=t[o+6640>>2],f=K+r|0,$=t[o+6468>>2],e=$+t[o+6644>>2]|0,e=r>>>0>f>>>0?e+1|0:e,r=t[o+6560>>2],c=r+f|0,h=e,e=e+t[o+6564>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+6576>>2],s=r+c|0,y=e,e=e+t[o+6580>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,j=o+6384|0,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,L=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,C=(r|0)==(y|0)&s>>>0<c>>>0|r>>>0<y>>>0,r=w+8|0,T=t[r>>2],A=t[r+4>>2],g=(y|0)==(h|0)&c>>>0<f>>>0|y>>>0<h>>>0,r=e0+8|0,w=t[r>>2],y=t[r+4>>2],c=(h|0)==($|0)&f>>>0<K>>>0|h>>>0<$>>>0,e=t0+8|0,s=t[e>>2],r=Y+8|0,f=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>f>>>0?e+1|0:e,r=c+f|0,e=(r>>>0<f>>>0?e+1|0:e)+y|0,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+g|0,e=(s>>>0>r>>>0?e+1|0:e)+A|0,s=r,r=r+T|0,e=s>>>0>r>>>0?e+1|0:e,s=r+C|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+L|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,w=t[o+6544>>2],r=t[o+6480>>2],f=w+r|0,g=t[o+6548>>2],e=g+t[o+6484>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+d|0,c=c+f|0,e=c>>>0<f>>>0?e+1|0:e,h=c<<4&-16,d=e,y=(e<<4|c>>>28)&16777215,T=n,P(j,h|n>>>16&15,y,0,0,977,1,0,0),$=o+6688|0,P($,b0,g0,0,0,k,R,0,0),e0=o+6528|0,P(e0,H,S,0,0,V,I,0,0),Y=o+6496|0,P(Y,N,z,0,0,N,z,0,0),t0=o+6432|0,h=t0,y=(r|0)==(e|0)&c>>>0<f>>>0|r>>>0>e>>>0,c=(r|0)==(g|0)&f>>>0<w>>>0|r>>>0<g>>>0,e=Z+8|0,n=t[e>>2],r=r0+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=n>>>0<f>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+y|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,c=e,n=e<<12|r>>>20,Z=t[o+6528>>2],r=t[o+6496>>2],C=Z+r|0,X=t[o+6532>>2],e=X+t[o+6500>>2]|0,s=r>>>0>C>>>0?e+1|0:e,e=s+n|0,A=d+C|0,e=A>>>0<C>>>0?e+1|0:e,y=e,P(h,A,e&1048575,0,0,15632,16,0,0),d=t[o+6384>>2],r=t[o+6704>>2],g=d+r|0,f=t[o+6388>>2],e=f+t[o+6708>>2]|0,l0=o+7536|0,_=l0+8|0,n=r>>>0>g>>>0?e+1|0:e,f=(f|0)==(n|0)&d>>>0>g>>>0|n>>>0<f>>>0,e=s0+8|0,d=t[e>>2],r=j+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,r=f+h|0,e=r>>>0<h>>>0?e+1|0:e,w=n,h=r<<12|n>>>20,d=e,f=e<<12|r>>>20,r0=t[o+6436>>2],e=r0+t[o+6692>>2]|0,K=t[o+6432>>2],n=t[o+6688>>2],r=K+n|0,L=r,h=r+h|0,n=r>>>0<n>>>0?e+1|0:e,e=n+f|0,t[_>>2]=h,f=h>>>0<r>>>0?e+1|0:e,t[_+4>>2]=f&1048575,j=o+6624|0,P(j,V,I,0,0,k,R,0,0),R=o+6672|0,P(R,b0,g0,0,0,b0,g0,0,0),k=o+6512|0,P(k,H,S,0,0,N,z,0,0),S=o+6416|0,I=(s|0)==(y|0)&A>>>0<C>>>0|s>>>0>y>>>0,A=(s|0)==(X|0)&C>>>0<Z>>>0|s>>>0<X>>>0,e=Y+8|0,s=t[e>>2],r=e0+8|0,N=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>N>>>0?e+1|0:e,s=A+N|0,e=s>>>0<N>>>0?e+1|0:e,c=c>>>20|0,r=s+c|0,e=c>>>0>r>>>0?e+1|0:e,s=r,r=r+I|0,e=s>>>0>r>>>0?e+1|0:e,V=r<<12|y>>>20,c=t[o+6512>>2],y=V+c|0,s=e,Z=e<<12|r>>>20,e=Z+t[o+6516>>2]|0,A=c>>>0>y>>>0?e+1|0:e,P(S,y,A,0,0,15632,16,0,0),H=l0+16|0,N=H,h=(n|0)==(f|0)&h>>>0<L>>>0|n>>>0>f>>>0,c=(n|0)==(r0|0)&L>>>0<K>>>0|n>>>0<r0>>>0,e=$+8|0,n=t[e>>2],r=t0+8|0,I=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=c+I|0,e=n>>>0<I>>>0?e+1|0:e,d=d>>>20|0,r=n+d|0,e=d>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|f>>>20,n=e,z=e<<12|r>>>20,C=t[o+6624>>2],r=t[o+6672>>2],f=C+r|0,L=t[o+6628>>2],e=L+t[o+6676>>2]|0,I=r>>>0>f>>>0?e+1|0:e,e=I+t[o+6420>>2]|0,r=t[o+6416>>2],d=r+f|0,h=d,c=d+c|0,r=r>>>0>d>>>0?e+1|0:e,e=r+z|0,t[N>>2]=c,d=c>>>0<d>>>0?e+1|0:e,t[N+4>>2]=d&1048575,N=o+6400|0,z=(A|0)==(Z|0)&y>>>0<V>>>0|A>>>0<Z>>>0,e=k+8|0,A=t[e>>2],e=t[e+4>>2],s=s>>>20|0,y=s,s=s+A|0,e=y>>>0>s>>>0?e+1|0:e,A=s,s=s+z|0,e=A>>>0>s>>>0?e+1|0:e,P(N,s,e,0,0,64028672,65536,0,0),V=l0+24|0,z=(r|0)==(d|0)&c>>>0<h>>>0|r>>>0>d>>>0,A=(r|0)==(I|0)&f>>>0>h>>>0|r>>>0<I>>>0,r=S+8|0,h=t[r>>2],y=t[r+4>>2],c=(I|0)==(L|0)&f>>>0<C>>>0|I>>>0<L>>>0,e=R+8|0,s=t[e>>2],r=j+8|0,f=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>f>>>0?e+1|0:e,r=c+f|0,e=(r>>>0<f>>>0?e+1|0:e)+y|0,s=r,r=r+h|0,e=s>>>0>r>>>0?e+1|0:e,s=r+A|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+z|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,f=e<<12|r>>>20,h=t[o+6400>>2],s=x&-2,r=h+s|0,x=t[o+6404>>2],e=x+(E&1048575)|0,c=r>>>0<s>>>0?e+1|0:e,e=c+f|0,s=d,d=r,s=s+r|0,t[V>>2]=s,r=r>>>0>s>>>0?e+1|0:e,t[V+4>>2]=r&1048575,E=l0+32|0,A=E,y=T&65535,f=(r|0)==(c|0)&s>>>0<d>>>0|r>>>0<c>>>0,s=(c|0)==(x|0)&d>>>0<h>>>0|c>>>0<x>>>0,e=N+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+b|0,e=y+(e<<12|n>>>20)|0,t[A>>2]=s,t[A+4>>2]=r>>>0>s>>>0?e+1|0:e,t[o+7536>>2]=g,t[o+7540>>2]=w&1048575,U0(l0,l0,d0),r=t[o+7540>>2],S=r,C=t[o+7536>>2],c=C,e=r<<1|c>>>31,T=o+6224|0,h=t[V>>2],y=t[V+4>>2],I=c<<1,z=e,P(T,h,y,0,0,I,e,0,0),r=t[_+4>>2],d0=r,X=t[_>>2],n=X,e=r<<1|n>>>31,A=o+6320|0,g=t[H>>2],f=t[H+4>>2],n=n<<1,s=e,P(A,g,f,0,0,n,e,0,0),w=o+6208|0,d=t[E>>2],r=t[E+4>>2],P(w,d,r,0,0,d,r,0,0),b=o+6192|0,P(b,t[o+6208>>2],t[o+6212>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,s0=o+6160|0,N=d<<1,x=e,P(s0,N,e,0,0,c,S,0,0),r0=o+6240|0,P(r0,h,y,0,0,n,s,0,0),$=o+6304|0,P($,g,f,0,0,g,f,0,0),V=o+6176|0,r=w+8|0,P(V,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+6368|0,P(e0,c,S,0,0,c,S,0,0),Y=o+6144|0,P(Y,N,e,0,0,X,d0,0,0),t0=o+6256|0,P(t0,h,y,0,0,g<<1,f<<1|g>>>31,0,0),C=t[o+6228>>2],e=C+t[o+6324>>2]|0,d=t[o+6224>>2],n=t[o+6320>>2],r=d+n|0,s=t[o+6192>>2],E=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+6196>>2]|0,s=s>>>0>E>>>0?e+1|0:e,w=(n|0)==(s|0)&r>>>0>E>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(C|0)&r>>>0<d>>>0|n>>>0<C>>>0,e=A+8|0,n=t[e>>2],r=T+8|0,A=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,r=d+A|0,e=(r>>>0<A>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+w|0,e=n>>>0>r>>>0?e+1|0:e,T=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,Z=t[o+6240>>2],r=t[o+6304>>2],w=Z+r|0,_=t[o+6244>>2],e=_+t[o+6308>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+6160>>2],c=r+w|0,C=e,e=e+t[o+6164>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+6176>>2],s=r+c|0,A=e,e=e+t[o+6180>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,K=o+6128|0,j=K,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&s>>>0<c>>>0|r>>>0<A>>>0,r=V+8|0,R=t[r>>2],k=t[r+4>>2],S=(A|0)==(C|0)&c>>>0<w>>>0|A>>>0<C>>>0,r=s0+8|0,V=t[r>>2],A=t[r+4>>2],c=(C|0)==(_|0)&w>>>0<Z>>>0|C>>>0<_>>>0,e=$+8|0,s=t[e>>2],r=r0+8|0,w=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>w>>>0?e+1|0:e,r=c+w|0,e=(r>>>0<w>>>0?e+1|0:e)+A|0,s=r,r=r+V|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+S|0,e=(s>>>0>r>>>0?e+1|0:e)+k|0,s=r,r=r+R|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,A=e<<12|r>>>20,R=t[o+6148>>2],e=R+t[o+6260>>2]|0,k=t[o+6144>>2],r=t[o+6256>>2],d=k+r|0,w=d,c=d+c|0,r=r>>>0>d>>>0?e+1|0:e,e=r+A|0,V=c<<4&-16,d=c>>>0<d>>>0?e+1|0:e,C=(d<<4|c>>>28)&16777215,A=n,P(j,V|n>>>16&15,C,0,0,977,1,0,0),j=o+6352|0,P(j,X,d0,0,0,I,z,0,0),L=o+6096|0,P(L,N,x,0,0,g,f,0,0),S=o+6272|0,P(S,h,y,0,0,h,y,0,0),V=o+6080|0,C=(r|0)==(d|0)&c>>>0<w>>>0|r>>>0>d>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,C=t[o+6096>>2],r=t[o+6272>>2],c=C+r|0,H=t[o+6100>>2],e=H+t[o+6276>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(V,d,e&1048575,0,0,15632,16,0,0),R=o+6288|0,P(R,g,f,0,0,I,z,0,0),k=o+6336|0,P(k,X,d0,0,0,X,d0,0,0),w=o+6032|0,P(w,N,x,0,0,h,y,0,0),I=o+6016|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(H|0)&c>>>0<C>>>0|r>>>0<H>>>0,e=S+8|0,d=t[e>>2],r=L+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+6032>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+6036>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+5952|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+6128>>2],r=t[o+6368>>2],c=n+r|0,d=t[o+6132>>2],e=d+t[o+6372>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,s=e<<12|r>>>20,y=t[o+6080>>2],r=t[o+6352>>2],f=y+r|0,w=t[o+6084>>2],e=w+t[o+6356>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+s|0,d=d+f|0,s=d>>>0<f>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=V+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+6288>>2],r=t[o+6336>>2],h=S+r|0,j=t[o+6292>>2],e=j+t[o+6340>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+6016>>2],y=r+h|0,x=e,e=e+t[o+6020>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+5936|0,V=L,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,h=r<<12|f>>>20,n=e,x=e<<12|r>>>20,j=t[o+5956>>2],e=j+(T&1048575)|0,S=t[o+5952>>2],r=E&-2,f=S+r|0,T=f,h=f+h|0,r=r>>>0>f>>>0?e+1|0:e,e=r+x|0,f=h>>>0<f>>>0?e+1|0:e,x=f&1048575,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,z=c<<1,N=e,P(V,h,x,0,0,z,e,0,0),e=w&1048575,X=e,R=o+5968|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+5872|0,C=k,I=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=I+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(C,n,e,0,0,n,e,0,0),b=o+5856|0,P(b,t[o+5872>>2],t[o+5876>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+5824|0,C=r<<1,I=e,P(s0,C,e,0,0,g,K,0,0),r0=o+5920|0,P(r0,h,x,0,0,c,y,0,0),$=o+5984|0,P($,s,E,0,0,s,E,0,0),S=o+5840|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+6112|0,P(e0,g,K,0,0,g,K,0,0),Y=o+5808|0,P(Y,C,e,0,0,V,X,0,0),t0=o+5888|0,y=x,f=E,x=s,P(t0,h,y,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+5936>>2],n=t[o+5968>>2],r=d+n|0,g=t[o+5940>>2],e=g+t[o+5972>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+5856>>2],E=n+r|0,s=e,e=e+t[o+5860>>2]|0,n=n>>>0>E>>>0?e+1|0:e,w=(s|0)==(n|0)&r>>>0>E>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(g|0)&r>>>0<d>>>0|s>>>0<g>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,g=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>g>>>0?e+1|0:e,r=d+g|0,e=(r>>>0<g>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,T=n,b=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+5920>>2],r=t[o+5984>>2],g=Z+r|0,_=t[o+5924>>2],e=_+t[o+5988>>2]|0,e=r>>>0>g>>>0?e+1|0:e,r=t[o+5824>>2],w=r+g|0,n=e,e=e+t[o+5828>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+5840>>2],c=r+w|0,A=e,e=e+t[o+5844>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+d|0,K=o+5712|0,j=K,b=c+b|0,d=b>>>0<c>>>0?e+1|0:e,H=(r|0)==(d|0)&c>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&c>>>0<w>>>0|r>>>0<A>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(A|0)&g>>>0>w>>>0|n>>>0>A>>>0,r=s0+8|0,A=t[r>>2],w=t[r+4>>2],c=(n|0)==(_|0)&g>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,g=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>g>>>0?e+1|0:e,r=c+g|0,e=(r>>>0<g>>>0?e+1|0:e)+w|0,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+5808>>2],r=t[o+5888>>2],w=k+r|0,R=t[o+5812>>2],e=R+t[o+5892>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,S=c<<4&-16,d=e,g=(e<<4|c>>>28)&16777215,A=n,P(j,S|n>>>16&15,g,0,0,977,1,0,0),j=o+6048|0,P(j,V,X,0,0,z,N,0,0),H=o+5792|0,P(H,C,I,0,0,x,f,0,0),L=o+5904|0,P(L,h,y,0,0,h,y,0,0),S=o+5776|0,g=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+g|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,g=t[o+5792>>2],r=t[o+5904>>2],c=g+r|0,Z=t[o+5796>>2],e=Z+t[o+5908>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(S,d,e&1048575,0,0,15632,16,0,0),R=o+6e3|0,P(R,x,f,0,0,z,N,0,0),k=o+6064|0,P(k,V,X,0,0,V,X,0,0),w=o+5760|0,P(w,h,y,0,0,C,I,0,0),I=o+5744|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(Z|0)&c>>>0<g>>>0|r>>>0<Z>>>0,e=L+8|0,d=t[e>>2],r=H+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+5760>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+5764>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+5728|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+5712>>2],r=t[o+6112>>2],c=n+r|0,d=t[o+5716>>2],e=d+t[o+6116>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,s=e<<12|r>>>20,y=t[o+5776>>2],r=t[o+6048>>2],f=y+r|0,w=t[o+5780>>2],e=w+t[o+6052>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+s|0,d=d+f|0,s=d>>>0<f>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=S+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+6e3>>2],r=t[o+6064>>2],h=S+r|0,j=t[o+6004>>2],e=j+t[o+6068>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+5744>>2],y=r+h|0,x=e,e=e+t[o+5748>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+5632|0,V=L,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,h=r<<12|f>>>20,n=e,x=e<<12|r>>>20,j=t[o+5732>>2],e=j+(T&1048575)|0,S=t[o+5728>>2],r=E&-2,f=S+r|0,T=f,h=f+h|0,r=r>>>0>f>>>0?e+1|0:e,e=r+x|0,f=h>>>0<f>>>0?e+1|0:e,C=f&1048575,E=C,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,I=c<<1,z=e,P(V,h,E,0,0,I,e,0,0),e=w&1048575,X=e,R=o+5584|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+5536|0,x=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=x+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(k,n,e,0,0,n,e,0,0),b=o+5520|0,P(b,t[o+5536>>2],t[o+5540>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+5488|0,N=r<<1,x=e,P(s0,N,e,0,0,g,K,0,0),r0=o+5568|0,P(r0,h,C,0,0,c,y,0,0),$=o+5680|0,P($,s,E,0,0,s,E,0,0),S=o+5504|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+5648|0,P(e0,g,K,0,0,g,K,0,0),Y=o+5472|0,P(Y,N,e,0,0,V,X,0,0),t0=o+5552|0,A=h,g=C,f=E,E=s,P(t0,h,g,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+5632>>2],n=t[o+5584>>2],r=d+n|0,h=t[o+5636>>2],e=h+t[o+5588>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+5520>>2],w=n+r|0,s=e,e=e+t[o+5524>>2]|0,n=n>>>0>w>>>0?e+1|0:e,y=(s|0)==(n|0)&r>>>0>w>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(h|0)&r>>>0<d>>>0|s>>>0<h>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,h=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>h>>>0?e+1|0:e,r=d+h|0,e=(r>>>0<h>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+y|0,e=s>>>0>r>>>0?e+1|0:e,h=n,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+5568>>2],r=t[o+5680>>2],T=Z+r|0,_=t[o+5572>>2],e=_+t[o+5684>>2]|0,e=r>>>0>T>>>0?e+1|0:e,r=t[o+5488>>2],y=r+T|0,n=e,e=e+t[o+5492>>2]|0,e=r>>>0>y>>>0?e+1|0:e,r=t[o+5504>>2],b=r+y|0,C=e,e=e+t[o+5508>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+d|0,K=o+5376|0,j=K,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,H=(r|0)==(c|0)&d>>>0<b>>>0|r>>>0>c>>>0,L=(r|0)==(C|0)&y>>>0>b>>>0|r>>>0<C>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(C|0)&y>>>0<T>>>0|n>>>0>C>>>0,r=s0+8|0,C=t[r>>2],y=t[r+4>>2],b=(n|0)==(_|0)&T>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,r=b+T|0,e=(r>>>0<T>>>0?e+1|0:e)+y|0,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=c,b=r<<12|n>>>20,s=e,c=e<<12|r>>>20,k=t[o+5472>>2],r=t[o+5552>>2],T=k+r|0,Z=t[o+5476>>2],e=Z+t[o+5556>>2]|0,r=r>>>0>T>>>0?e+1|0:e,e=r+c|0,b=b+T|0,e=b>>>0<T>>>0?e+1|0:e,S=b<<4&-16,c=e,C=(e<<4|b>>>28)&16777215,y=n,P(j,S|n>>>16&15,C,0,0,977,1,0,0),j=o+5616|0,P(j,V,X,0,0,I,z,0,0),H=o+5456|0,P(H,N,x,0,0,E,f,0,0),L=o+5696|0,P(L,A,g,0,0,A,g,0,0),R=o+5440|0,S=R,C=(r|0)==(e|0)&b>>>0<T>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&T>>>0<k>>>0|r>>>0<Z>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=n>>>0<T>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|c>>>20,n=e,s=e<<12|r>>>20,C=t[o+5456>>2],r=t[o+5696>>2],b=C+r|0,Z=t[o+5460>>2],e=Z+t[o+5700>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+s|0,c=c+b|0,e=c>>>0<b>>>0?e+1|0:e,s=e,P(S,c,e&1048575,0,0,15632,16,0,0),k=o+5600|0,P(k,E,f,0,0,I,z,0,0),S=o+5664|0,P(S,V,X,0,0,V,X,0,0),T=o+5424|0,P(T,A,g,0,0,N,x,0,0),E=o+5408|0,g=E,f=(r|0)==(e|0)&c>>>0<b>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&b>>>0<C>>>0|r>>>0<Z>>>0,e=L+8|0,c=t[e>>2],r=H+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,s=t[o+5424>>2],f=c+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+5428>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(g,f,e,0,0,15632,16,0,0),C=o+5392|0,b=C,c=(r|0)==(e|0)&c>>>0>f>>>0|r>>>0>e>>>0,r=T+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+c|0,e=n>>>0>r>>>0?e+1|0:e,P(b,r,e,0,0,64028672,65536,0,0),n=t[o+5376>>2],r=t[o+5648>>2],f=n+r|0,c=t[o+5380>>2],e=c+t[o+5652>>2]|0,Z=o+7496|0,H=Z+8|0,A=H,s=r>>>0>f>>>0?e+1|0:e,c=(c|0)==(s|0)&n>>>0>f>>>0|s>>>0<c>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,b=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,r=c+b|0,e=r>>>0<b>>>0?e+1|0:e,b=s,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,T=t[o+5440>>2],r=t[o+5616>>2],g=T+r|0,I=t[o+5444>>2],e=I+t[o+5620>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[A>>2]=c,s=e,t[A+4>>2]=e&1048575,L=Z+16|0,x=L,A=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,g=(r|0)==(I|0)&g>>>0<T>>>0|r>>>0<I>>>0,e=j+8|0,c=t[e>>2],r=R+8|0,T=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>T>>>0?e+1|0:e,c=g+T|0,e=c>>>0<T>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,N=t[o+5600>>2],r=t[o+5664>>2],A=N+r|0,R=t[o+5604>>2],e=R+t[o+5668>>2]|0,e=r>>>0>A>>>0?e+1|0:e,r=t[o+5408>>2],g=r+A|0,T=e,e=e+t[o+5412>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[x>>2]=c,s=e,t[x+4>>2]=e&1048575,V=Z+24|0,z=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,I=(r|0)==(T|0)&g>>>0<A>>>0|r>>>0<T>>>0,r=E+8|0,x=t[r>>2],E=t[r+4>>2],g=(T|0)==(R|0)&A>>>0<N>>>0|T>>>0<R>>>0,e=S+8|0,c=t[e>>2],r=k+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,r=g+A|0,e=(r>>>0<A>>>0?e+1|0:e)+E|0,c=r,r=r+x|0,e=c>>>0>r>>>0?e+1|0:e,c=r+I|0,e=c>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+z|0,e=n>>>0>r>>>0?e+1|0:e,g=r<<12|s>>>20,n=e,c=e<<12|r>>>20,A=t[o+5392>>2],s=w&-2,r=A+s|0,x=t[o+5396>>2],e=x+(h&1048575)|0,w=r>>>0<s>>>0?e+1|0:e,e=w+c|0,h=r,s=r+g|0,t[V>>2]=s,r=r>>>0>s>>>0?e+1|0:e,t[V+4>>2]=r&1048575,E=Z+32|0,T=E,c=d,g=y&65535,y=(r|0)==(w|0)&s>>>0<h>>>0|r>>>0<w>>>0,s=(w|0)==(x|0)&h>>>0<A>>>0|w>>>0<x>>>0,e=C+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+c|0,e=g+(e<<12|n>>>20)|0,t[T>>2]=s,t[T+4>>2]=r>>>0>s>>>0?e+1|0:e,t[o+7496>>2]=f,t[o+7500>>2]=b&1048575,U0(Z,Z,l0),r=t[o+7500>>2],S=r,C=t[o+7496>>2],c=C,e=r<<1|c>>>31,T=o+5216|0,h=t[V>>2],y=t[V+4>>2],I=c<<1,z=e,P(T,h,y,0,0,I,e,0,0),r=t[H+4>>2],d0=r,X=t[H>>2],n=X,e=r<<1|n>>>31,A=o+5312|0,g=t[L>>2],f=t[L+4>>2],n=n<<1,s=e,P(A,g,f,0,0,n,e,0,0),w=o+5200|0,d=t[E>>2],r=t[E+4>>2],P(w,d,r,0,0,d,r,0,0),b=o+5184|0,P(b,t[o+5200>>2],t[o+5204>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,s0=o+5152|0,N=d<<1,x=e,P(s0,N,e,0,0,c,S,0,0),r0=o+5232|0,P(r0,h,y,0,0,n,s,0,0),$=o+5296|0,P($,g,f,0,0,g,f,0,0),V=o+5168|0,r=w+8|0,P(V,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+5360|0,P(e0,c,S,0,0,c,S,0,0),Y=o+5136|0,P(Y,N,e,0,0,X,d0,0,0),t0=o+5248|0,P(t0,h,y,0,0,g<<1,f<<1|g>>>31,0,0),C=t[o+5220>>2],e=C+t[o+5316>>2]|0,d=t[o+5216>>2],n=t[o+5312>>2],r=d+n|0,s=t[o+5184>>2],E=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+5188>>2]|0,s=s>>>0>E>>>0?e+1|0:e,w=(n|0)==(s|0)&r>>>0>E>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(C|0)&r>>>0<d>>>0|n>>>0<C>>>0,e=A+8|0,n=t[e>>2],r=T+8|0,A=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,r=d+A|0,e=(r>>>0<A>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+w|0,e=n>>>0>r>>>0?e+1|0:e,T=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,Z=t[o+5232>>2],r=t[o+5296>>2],w=Z+r|0,_=t[o+5236>>2],e=_+t[o+5300>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+5152>>2],c=r+w|0,C=e,e=e+t[o+5156>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+5168>>2],s=r+c|0,A=e,e=e+t[o+5172>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,K=o+5120|0,j=K,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&s>>>0<c>>>0|r>>>0<A>>>0,r=V+8|0,R=t[r>>2],k=t[r+4>>2],S=(A|0)==(C|0)&c>>>0<w>>>0|A>>>0<C>>>0,r=s0+8|0,V=t[r>>2],A=t[r+4>>2],c=(C|0)==(_|0)&w>>>0<Z>>>0|C>>>0<_>>>0,e=$+8|0,s=t[e>>2],r=r0+8|0,w=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>w>>>0?e+1|0:e,r=c+w|0,e=(r>>>0<w>>>0?e+1|0:e)+A|0,s=r,r=r+V|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+S|0,e=(s>>>0>r>>>0?e+1|0:e)+k|0,s=r,r=r+R|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+5136>>2],r=t[o+5248>>2],w=k+r|0,R=t[o+5140>>2],e=R+t[o+5252>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,V=c<<4&-16,d=e,C=(e<<4|c>>>28)&16777215,A=n,P(j,V|n>>>16&15,C,0,0,977,1,0,0),j=o+5344|0,P(j,X,d0,0,0,I,z,0,0),L=o+5088|0,P(L,N,x,0,0,g,f,0,0),S=o+5264|0,P(S,h,y,0,0,h,y,0,0),V=o+5072|0,C=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,C=t[o+5088>>2],r=t[o+5264>>2],c=C+r|0,H=t[o+5092>>2],e=H+t[o+5268>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(V,d,e&1048575,0,0,15632,16,0,0),R=o+5280|0,P(R,g,f,0,0,I,z,0,0),k=o+5328|0,P(k,X,d0,0,0,X,d0,0,0),w=o+5024|0,P(w,N,x,0,0,h,y,0,0),I=o+5008|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(H|0)&c>>>0<C>>>0|r>>>0<H>>>0,e=S+8|0,d=t[e>>2],r=L+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+5024>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+5028>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+4944|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+5120>>2],r=t[o+5360>>2],c=n+r|0,d=t[o+5124>>2],e=d+t[o+5364>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,s=e<<12|r>>>20,y=t[o+5072>>2],r=t[o+5344>>2],f=y+r|0,w=t[o+5076>>2],e=w+t[o+5348>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+s|0,d=d+f|0,s=d>>>0<f>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=V+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+5280>>2],r=t[o+5328>>2],h=S+r|0,j=t[o+5284>>2],e=j+t[o+5332>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+5008>>2],y=r+h|0,x=e,e=e+t[o+5012>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+4928|0,V=L,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,h=r<<12|f>>>20,n=e,x=e<<12|r>>>20,j=t[o+4948>>2],e=j+(T&1048575)|0,S=t[o+4944>>2],r=E&-2,f=S+r|0,T=f,h=f+h|0,r=r>>>0>f>>>0?e+1|0:e,e=r+x|0,f=h>>>0<f>>>0?e+1|0:e,x=f&1048575,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,z=c<<1,N=e,P(V,h,x,0,0,z,e,0,0),e=w&1048575,X=e,R=o+4960|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+4864|0,C=k,I=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=I+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(C,n,e,0,0,n,e,0,0),b=o+4848|0,P(b,t[o+4864>>2],t[o+4868>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+4816|0,C=r<<1,I=e,P(s0,C,e,0,0,g,K,0,0),r0=o+4912|0,P(r0,h,x,0,0,c,y,0,0),$=o+4976|0,P($,s,E,0,0,s,E,0,0),S=o+4832|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+5104|0,P(e0,g,K,0,0,g,K,0,0),Y=o+4800|0,P(Y,C,e,0,0,V,X,0,0),t0=o+4880|0,y=x,f=E,x=s,P(t0,h,y,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+4928>>2],n=t[o+4960>>2],r=d+n|0,g=t[o+4932>>2],e=g+t[o+4964>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+4848>>2],E=n+r|0,s=e,e=e+t[o+4852>>2]|0,n=n>>>0>E>>>0?e+1|0:e,w=(s|0)==(n|0)&r>>>0>E>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(g|0)&r>>>0<d>>>0|s>>>0<g>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,g=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>g>>>0?e+1|0:e,r=d+g|0,e=(r>>>0<g>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,T=n,b=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+4912>>2],r=t[o+4976>>2],g=Z+r|0,_=t[o+4916>>2],e=_+t[o+4980>>2]|0,e=r>>>0>g>>>0?e+1|0:e,r=t[o+4816>>2],w=r+g|0,n=e,e=e+t[o+4820>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+4832>>2],c=r+w|0,A=e,e=e+t[o+4836>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+d|0,K=o+4704|0,j=K,b=c+b|0,d=b>>>0<c>>>0?e+1|0:e,H=(r|0)==(d|0)&c>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&c>>>0<w>>>0|r>>>0<A>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(A|0)&g>>>0>w>>>0|n>>>0>A>>>0,r=s0+8|0,A=t[r>>2],w=t[r+4>>2],c=(n|0)==(_|0)&g>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,g=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>g>>>0?e+1|0:e,r=c+g|0,e=(r>>>0<g>>>0?e+1|0:e)+w|0,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+4800>>2],r=t[o+4880>>2],w=k+r|0,R=t[o+4804>>2],e=R+t[o+4884>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,S=c<<4&-16,d=e,g=(e<<4|c>>>28)&16777215,A=n,P(j,S|n>>>16&15,g,0,0,977,1,0,0),j=o+5040|0,P(j,V,X,0,0,z,N,0,0),H=o+4784|0,P(H,C,I,0,0,x,f,0,0),L=o+4896|0,P(L,h,y,0,0,h,y,0,0),S=o+4768|0,g=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+g|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,g=t[o+4784>>2],r=t[o+4896>>2],c=g+r|0,Z=t[o+4788>>2],e=Z+t[o+4900>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(S,d,e&1048575,0,0,15632,16,0,0),R=o+4992|0,P(R,x,f,0,0,z,N,0,0),k=o+5056|0,P(k,V,X,0,0,V,X,0,0),w=o+4752|0,P(w,h,y,0,0,C,I,0,0),I=o+4736|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(Z|0)&c>>>0<g>>>0|r>>>0<Z>>>0,e=L+8|0,d=t[e>>2],r=H+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+4752>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+4756>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+4720|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+4704>>2],r=t[o+5104>>2],c=n+r|0,d=t[o+4708>>2],e=d+t[o+5108>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,h=e<<12|r>>>20,w=t[o+4772>>2],e=w+t[o+5044>>2]|0,y=t[o+4768>>2],r=t[o+5040>>2],s=y+r|0,f=s,d=s+d|0,r=r>>>0>s>>>0?e+1|0:e,e=r+h|0,s=d>>>0<s>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=S+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+4992>>2],r=t[o+5056>>2],h=S+r|0,j=t[o+4996>>2],e=j+t[o+5060>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+4736>>2],y=r+h|0,x=e,e=e+t[o+4740>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+4624|0,V=L,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,x=r<<12|f>>>20,n=e,h=e<<12|r>>>20,j=t[o+4724>>2],e=j+(T&1048575)|0,S=t[o+4720>>2],f=E&-2,r=S+f|0,T=r,r=r>>>0<f>>>0?e+1|0:e,e=r+h|0,h=T+x|0,f=h>>>0<T>>>0?e+1|0:e,C=f&1048575,E=C,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,I=c<<1,z=e,P(V,h,E,0,0,I,e,0,0),e=w&1048575,X=e,R=o+4576|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+4528|0,x=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=x+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(k,n,e,0,0,n,e,0,0),b=o+4512|0,P(b,t[o+4528>>2],t[o+4532>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+4480|0,N=r<<1,x=e,P(s0,N,e,0,0,g,K,0,0),r0=o+4560|0,P(r0,h,C,0,0,c,y,0,0),$=o+4672|0,P($,s,E,0,0,s,E,0,0),S=o+4496|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+4640|0,P(e0,g,K,0,0,g,K,0,0),Y=o+4464|0,P(Y,N,e,0,0,V,X,0,0),t0=o+4544|0,A=h,g=C,f=E,E=s,P(t0,h,g,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+4624>>2],n=t[o+4576>>2],r=d+n|0,h=t[o+4628>>2],e=h+t[o+4580>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+4512>>2],w=n+r|0,s=e,e=e+t[o+4516>>2]|0,n=n>>>0>w>>>0?e+1|0:e,y=(s|0)==(n|0)&r>>>0>w>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(h|0)&r>>>0<d>>>0|s>>>0<h>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,h=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>h>>>0?e+1|0:e,r=d+h|0,e=(r>>>0<h>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+y|0,e=s>>>0>r>>>0?e+1|0:e,h=n,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+4560>>2],r=t[o+4672>>2],T=Z+r|0,_=t[o+4564>>2],e=_+t[o+4676>>2]|0,e=r>>>0>T>>>0?e+1|0:e,r=t[o+4480>>2],y=r+T|0,n=e,e=e+t[o+4484>>2]|0,e=r>>>0>y>>>0?e+1|0:e,r=t[o+4496>>2],b=r+y|0,C=e,e=e+t[o+4500>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+d|0,K=o+4368|0,j=K,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,H=(r|0)==(c|0)&d>>>0<b>>>0|r>>>0>c>>>0,L=(r|0)==(C|0)&y>>>0>b>>>0|r>>>0<C>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(C|0)&y>>>0<T>>>0|n>>>0>C>>>0,r=s0+8|0,C=t[r>>2],y=t[r+4>>2],b=(n|0)==(_|0)&T>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,r=b+T|0,e=(r>>>0<T>>>0?e+1|0:e)+y|0,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=c,b=r<<12|n>>>20,s=e,c=e<<12|r>>>20,k=t[o+4464>>2],r=t[o+4544>>2],T=k+r|0,Z=t[o+4468>>2],e=Z+t[o+4548>>2]|0,r=r>>>0>T>>>0?e+1|0:e,e=r+c|0,b=b+T|0,e=b>>>0<T>>>0?e+1|0:e,S=b<<4&-16,c=e,C=(e<<4|b>>>28)&16777215,y=n,P(j,S|n>>>16&15,C,0,0,977,1,0,0),j=o+4608|0,P(j,V,X,0,0,I,z,0,0),H=o+4448|0,P(H,N,x,0,0,E,f,0,0),L=o+4688|0,P(L,A,g,0,0,A,g,0,0),R=o+4432|0,S=R,C=(r|0)==(e|0)&b>>>0<T>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&T>>>0<k>>>0|r>>>0<Z>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=n>>>0<T>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|c>>>20,n=e,s=e<<12|r>>>20,C=t[o+4448>>2],r=t[o+4688>>2],b=C+r|0,Z=t[o+4452>>2],e=Z+t[o+4692>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+s|0,c=c+b|0,e=c>>>0<b>>>0?e+1|0:e,s=e,P(S,c,e&1048575,0,0,15632,16,0,0),k=o+4592|0,P(k,E,f,0,0,I,z,0,0),S=o+4656|0,P(S,V,X,0,0,V,X,0,0),T=o+4416|0,P(T,A,g,0,0,N,x,0,0),E=o+4400|0,g=E,f=(r|0)==(e|0)&c>>>0<b>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&b>>>0<C>>>0|r>>>0<Z>>>0,e=L+8|0,c=t[e>>2],r=H+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,s=t[o+4416>>2],f=c+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+4420>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(g,f,e,0,0,15632,16,0,0),C=o+4384|0,b=C,c=(r|0)==(e|0)&c>>>0>f>>>0|r>>>0>e>>>0,r=T+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+c|0,e=n>>>0>r>>>0?e+1|0:e,P(b,r,e,0,0,64028672,65536,0,0),n=t[o+4368>>2],r=t[o+4640>>2],f=n+r|0,c=t[o+4372>>2],e=c+t[o+4644>>2]|0,Z=o+7456|0,H=Z+8|0,x=H,s=r>>>0>f>>>0?e+1|0:e,c=(c|0)==(s|0)&n>>>0>f>>>0|s>>>0<c>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,b=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,r=c+b|0,e=r>>>0<b>>>0?e+1|0:e,b=s,c=r<<12|s>>>20,n=e,A=e<<12|r>>>20,I=t[o+4436>>2],e=I+t[o+4612>>2]|0,T=t[o+4432>>2],r=t[o+4608>>2],s=T+r|0,g=s,c=s+c|0,r=r>>>0>s>>>0?e+1|0:e,e=r+A|0,t[x>>2]=c,s=c>>>0<s>>>0?e+1|0:e,t[x+4>>2]=s&1048575,L=Z+16|0,x=L,A=(r|0)==(s|0)&c>>>0<g>>>0|r>>>0>s>>>0,g=(r|0)==(I|0)&g>>>0<T>>>0|r>>>0<I>>>0,e=j+8|0,c=t[e>>2],r=R+8|0,T=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>T>>>0?e+1|0:e,c=g+T|0,e=c>>>0<T>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,N=t[o+4592>>2],r=t[o+4656>>2],A=N+r|0,R=t[o+4596>>2],e=R+t[o+4660>>2]|0,e=r>>>0>A>>>0?e+1|0:e,r=t[o+4400>>2],g=r+A|0,T=e,e=e+t[o+4404>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[x>>2]=c,s=e,t[x+4>>2]=e&1048575,V=Z+24|0,z=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,I=(r|0)==(T|0)&g>>>0<A>>>0|r>>>0<T>>>0,r=E+8|0,x=t[r>>2],E=t[r+4>>2],g=(T|0)==(R|0)&A>>>0<N>>>0|T>>>0<R>>>0,e=S+8|0,c=t[e>>2],r=k+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,r=g+A|0,e=(r>>>0<A>>>0?e+1|0:e)+E|0,c=r,r=r+x|0,e=c>>>0>r>>>0?e+1|0:e,c=r+I|0,e=c>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+z|0,e=n>>>0>r>>>0?e+1|0:e,g=r<<12|s>>>20,n=e,c=e<<12|r>>>20,A=t[o+4384>>2],s=w&-2,r=A+s|0,x=t[o+4388>>2],e=x+(h&1048575)|0,w=r>>>0<s>>>0?e+1|0:e,e=w+c|0,h=r,s=r+g|0,t[V>>2]=s,r=r>>>0>s>>>0?e+1|0:e,t[V+4>>2]=r&1048575,E=Z+32|0,T=E,c=d,g=y&65535,y=(r|0)==(w|0)&s>>>0<h>>>0|r>>>0<w>>>0,s=(w|0)==(x|0)&h>>>0<A>>>0|w>>>0<x>>>0,e=C+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+c|0,e=g+(e<<12|n>>>20)|0,t[T>>2]=s,t[T+4>>2]=r>>>0>s>>>0?e+1|0:e,t[o+7456>>2]=f,t[o+7460>>2]=b&1048575,U0(Z,Z,l0),r=t[o+7460>>2],S=r,C=t[o+7456>>2],c=C,e=r<<1|c>>>31,T=o+4208|0,h=t[V>>2],y=t[V+4>>2],I=c<<1,z=e,P(T,h,y,0,0,I,e,0,0),r=t[H+4>>2],d0=r,X=t[H>>2],n=X,e=r<<1|n>>>31,A=o+4304|0,g=t[L>>2],f=t[L+4>>2],n=n<<1,s=e,P(A,g,f,0,0,n,e,0,0),w=o+4192|0,d=t[E>>2],r=t[E+4>>2],P(w,d,r,0,0,d,r,0,0),b=o+4176|0,P(b,t[o+4192>>2],t[o+4196>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,s0=o+4144|0,N=d<<1,x=e,P(s0,N,e,0,0,c,S,0,0),r0=o+4224|0,P(r0,h,y,0,0,n,s,0,0),$=o+4288|0,P($,g,f,0,0,g,f,0,0),V=o+4160|0,r=w+8|0,P(V,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+4352|0,P(e0,c,S,0,0,c,S,0,0),Y=o+4128|0,P(Y,N,e,0,0,X,d0,0,0),t0=o+4240|0,P(t0,h,y,0,0,g<<1,f<<1|g>>>31,0,0),C=t[o+4212>>2],e=C+t[o+4308>>2]|0,d=t[o+4208>>2],n=t[o+4304>>2],r=d+n|0,s=t[o+4176>>2],E=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+4180>>2]|0,s=s>>>0>E>>>0?e+1|0:e,w=(n|0)==(s|0)&r>>>0>E>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(C|0)&r>>>0<d>>>0|n>>>0<C>>>0,e=A+8|0,n=t[e>>2],r=T+8|0,A=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,r=d+A|0,e=(r>>>0<A>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+w|0,e=n>>>0>r>>>0?e+1|0:e,T=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,Z=t[o+4224>>2],r=t[o+4288>>2],w=Z+r|0,_=t[o+4228>>2],e=_+t[o+4292>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+4144>>2],c=r+w|0,C=e,e=e+t[o+4148>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+4160>>2],s=r+c|0,A=e,e=e+t[o+4164>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,K=o+4112|0,j=K,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&s>>>0<c>>>0|r>>>0<A>>>0,r=V+8|0,R=t[r>>2],k=t[r+4>>2],S=(A|0)==(C|0)&c>>>0<w>>>0|A>>>0<C>>>0,r=s0+8|0,V=t[r>>2],A=t[r+4>>2],c=(C|0)==(_|0)&w>>>0<Z>>>0|C>>>0<_>>>0,e=$+8|0,s=t[e>>2],r=r0+8|0,w=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>w>>>0?e+1|0:e,r=c+w|0,e=(r>>>0<w>>>0?e+1|0:e)+A|0,s=r,r=r+V|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+S|0,e=(s>>>0>r>>>0?e+1|0:e)+k|0,s=r,r=r+R|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+4128>>2],r=t[o+4240>>2],w=k+r|0,R=t[o+4132>>2],e=R+t[o+4244>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,V=c<<4&-16,d=e,C=(e<<4|c>>>28)&16777215,A=n,P(j,V|n>>>16&15,C,0,0,977,1,0,0),j=o+4336|0,P(j,X,d0,0,0,I,z,0,0),L=o+4080|0,P(L,N,x,0,0,g,f,0,0),S=o+4256|0,P(S,h,y,0,0,h,y,0,0),V=o+4064|0,C=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,C=t[o+4080>>2],r=t[o+4256>>2],c=C+r|0,H=t[o+4084>>2],e=H+t[o+4260>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(V,d,e&1048575,0,0,15632,16,0,0),R=o+4272|0,P(R,g,f,0,0,I,z,0,0),k=o+4320|0,P(k,X,d0,0,0,X,d0,0,0),w=o+4016|0,P(w,N,x,0,0,h,y,0,0),I=o+4e3|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(H|0)&c>>>0<C>>>0|r>>>0<H>>>0,e=S+8|0,d=t[e>>2],r=L+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+4016>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+4020>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+3936|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+4112>>2],r=t[o+4352>>2],c=n+r|0,d=t[o+4116>>2],e=d+t[o+4356>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,s=e<<12|r>>>20,y=t[o+4064>>2],r=t[o+4336>>2],f=y+r|0,w=t[o+4068>>2],e=w+t[o+4340>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+s|0,d=d+f|0,s=d>>>0<f>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=V+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+4272>>2],r=t[o+4320>>2],h=S+r|0,j=t[o+4276>>2],e=j+t[o+4324>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+4e3>>2],y=r+h|0,x=e,e=e+t[o+4004>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+3920|0,V=L,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,h=r<<12|f>>>20,n=e,x=e<<12|r>>>20,j=t[o+3940>>2],e=j+(T&1048575)|0,S=t[o+3936>>2],r=E&-2,f=S+r|0,T=f,h=f+h|0,r=r>>>0>f>>>0?e+1|0:e,e=r+x|0,f=h>>>0<f>>>0?e+1|0:e,C=f&1048575,E=C,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,I=c<<1,z=e,P(V,h,E,0,0,I,e,0,0),e=w&1048575,X=e,R=o+3952|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+3856|0,x=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=x+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(k,n,e,0,0,n,e,0,0),b=o+3840|0,P(b,t[o+3856>>2],t[o+3860>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+3808|0,N=r<<1,x=e,P(s0,N,e,0,0,g,K,0,0),r0=o+3904|0,P(r0,h,C,0,0,c,y,0,0),$=o+3968|0,P($,s,E,0,0,s,E,0,0),S=o+3824|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+4096|0,P(e0,g,K,0,0,g,K,0,0),Y=o+3792|0,P(Y,N,e,0,0,V,X,0,0),t0=o+3872|0,A=h,g=C,f=E,E=s,P(t0,h,g,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+3920>>2],n=t[o+3952>>2],r=d+n|0,h=t[o+3924>>2],e=h+t[o+3956>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+3840>>2],w=n+r|0,s=e,e=e+t[o+3844>>2]|0,n=n>>>0>w>>>0?e+1|0:e,y=(s|0)==(n|0)&r>>>0>w>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(h|0)&r>>>0<d>>>0|s>>>0<h>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,h=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>h>>>0?e+1|0:e,r=d+h|0,e=(r>>>0<h>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+y|0,e=s>>>0>r>>>0?e+1|0:e,h=n,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+3904>>2],r=t[o+3968>>2],T=Z+r|0,_=t[o+3908>>2],e=_+t[o+3972>>2]|0,e=r>>>0>T>>>0?e+1|0:e,r=t[o+3808>>2],y=r+T|0,n=e,e=e+t[o+3812>>2]|0,e=r>>>0>y>>>0?e+1|0:e,r=t[o+3824>>2],b=r+y|0,C=e,e=e+t[o+3828>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+d|0,K=o+3696|0,j=K,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,H=(r|0)==(c|0)&d>>>0<b>>>0|r>>>0>c>>>0,L=(r|0)==(C|0)&y>>>0>b>>>0|r>>>0<C>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(C|0)&y>>>0<T>>>0|n>>>0>C>>>0,r=s0+8|0,C=t[r>>2],y=t[r+4>>2],b=(n|0)==(_|0)&T>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,r=b+T|0,e=(r>>>0<T>>>0?e+1|0:e)+y|0,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=c,b=r<<12|n>>>20,s=e,c=e<<12|r>>>20,k=t[o+3792>>2],r=t[o+3872>>2],T=k+r|0,Z=t[o+3796>>2],e=Z+t[o+3876>>2]|0,r=r>>>0>T>>>0?e+1|0:e,e=r+c|0,b=b+T|0,e=b>>>0<T>>>0?e+1|0:e,S=b<<4&-16,c=e,C=(e<<4|b>>>28)&16777215,y=n,P(j,S|n>>>16&15,C,0,0,977,1,0,0),j=o+4032|0,P(j,V,X,0,0,I,z,0,0),H=o+3776|0,P(H,N,x,0,0,E,f,0,0),L=o+3888|0,P(L,A,g,0,0,A,g,0,0),R=o+3760|0,S=R,C=(r|0)==(e|0)&b>>>0<T>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&T>>>0<k>>>0|r>>>0<Z>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=n>>>0<T>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|c>>>20,n=e,s=e<<12|r>>>20,C=t[o+3776>>2],r=t[o+3888>>2],b=C+r|0,Z=t[o+3780>>2],e=Z+t[o+3892>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+s|0,c=c+b|0,e=c>>>0<b>>>0?e+1|0:e,s=e,P(S,c,e&1048575,0,0,15632,16,0,0),k=o+3984|0,P(k,E,f,0,0,I,z,0,0),S=o+4048|0,P(S,V,X,0,0,V,X,0,0),T=o+3744|0,P(T,A,g,0,0,N,x,0,0),E=o+3728|0,g=E,f=(r|0)==(e|0)&c>>>0<b>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&b>>>0<C>>>0|r>>>0<Z>>>0,e=L+8|0,c=t[e>>2],r=H+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,s=t[o+3744>>2],f=c+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+3748>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(g,f,e,0,0,15632,16,0,0),C=o+3712|0,b=C,c=(r|0)==(e|0)&c>>>0>f>>>0|r>>>0>e>>>0,r=T+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+c|0,e=n>>>0>r>>>0?e+1|0:e,P(b,r,e,0,0,64028672,65536,0,0),n=t[o+3696>>2],r=t[o+4096>>2],f=n+r|0,c=t[o+3700>>2],e=c+t[o+4100>>2]|0,Z=o+7416|0,H=Z+8|0,x=H,s=r>>>0>f>>>0?e+1|0:e,c=(c|0)==(s|0)&n>>>0>f>>>0|s>>>0<c>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,b=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,r=c+b|0,e=r>>>0<b>>>0?e+1|0:e,b=s,c=r<<12|s>>>20,n=e,A=e<<12|r>>>20,I=t[o+3764>>2],e=I+t[o+4036>>2]|0,T=t[o+3760>>2],r=t[o+4032>>2],s=T+r|0,g=s,c=s+c|0,r=r>>>0>s>>>0?e+1|0:e,e=r+A|0,t[x>>2]=c,s=c>>>0<s>>>0?e+1|0:e,t[x+4>>2]=s&1048575,L=Z+16|0,x=L,A=(r|0)==(s|0)&c>>>0<g>>>0|r>>>0>s>>>0,g=(r|0)==(I|0)&g>>>0<T>>>0|r>>>0<I>>>0,e=j+8|0,c=t[e>>2],r=R+8|0,T=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>T>>>0?e+1|0:e,c=g+T|0,e=c>>>0<T>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,N=t[o+3984>>2],r=t[o+4048>>2],A=N+r|0,R=t[o+3988>>2],e=R+t[o+4052>>2]|0,e=r>>>0>A>>>0?e+1|0:e,r=t[o+3728>>2],g=r+A|0,T=e,e=e+t[o+3732>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[x>>2]=c,s=e,t[x+4>>2]=e&1048575,V=Z+24|0,z=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,I=(r|0)==(T|0)&g>>>0<A>>>0|r>>>0<T>>>0,r=E+8|0,x=t[r>>2],E=t[r+4>>2],g=(T|0)==(R|0)&A>>>0<N>>>0|T>>>0<R>>>0,e=S+8|0,c=t[e>>2],r=k+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,r=g+A|0,e=(r>>>0<A>>>0?e+1|0:e)+E|0,c=r,r=r+x|0,e=c>>>0>r>>>0?e+1|0:e,c=r+I|0,e=c>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+z|0,e=n>>>0>r>>>0?e+1|0:e,g=r<<12|s>>>20,n=e,c=e<<12|r>>>20,A=t[o+3712>>2],s=w&-2,r=A+s|0,E=t[o+3716>>2],e=E+(h&1048575)|0,w=r>>>0<s>>>0?e+1|0:e,e=w+c|0,h=r,s=r+g|0,t[V>>2]=s,r=r>>>0>s>>>0?e+1|0:e,t[V+4>>2]=r&1048575,T=Z+32|0,c=d,g=y&65535,y=(r|0)==(w|0)&s>>>0<h>>>0|r>>>0<w>>>0,s=(w|0)==(E|0)&h>>>0<A>>>0|w>>>0<E>>>0,e=C+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+c|0,e=g+(e<<12|n>>>20)|0,t[T>>2]=s,t[T+4>>2]=r>>>0>s>>>0?e+1|0:e,t[o+7416>>2]=f,t[o+7420>>2]=b&1048575,U0(Z,Z,u0),f=t[T+4>>2],e=o+7376|0,r=e+32|0,n=t[T>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[V+4>>2],r=e+24|0,b=t[V>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[L+4>>2],r=e+16|0,c=t[L>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[H+4>>2],r=e+8|0,d=t[H>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7420>>2],s=t[o+7416>>2],t[o+7376>>2]=s,t[o+7380>>2]=h,r=11;T=s,e=h<<1|s>>>31,L=o+3664|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+3584|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+3520|0,P(x,n,f,0,0,n,f,0,0),E=o+3504|0,P(E,t[o+3520>>2],t[o+3524>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+3472|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+3632|0,P(_,b,y,0,0,s,d,0,0),s0=o+3568|0,P(s0,c,g,0,0,c,g,0,0),R=o+3488|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+3680|0,P(r0,T,h,0,0,T,h,0,0),$=o+3456|0,P($,S,z,0,0,N,w,0,0),e0=o+3536|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+3668>>2],e=T+t[o+3588>>2]|0,c=t[o+3664>>2],s=t[o+3584>>2],n=c+s|0,d=t[o+3504>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+3508>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+3632>>2],n=t[o+3568>>2],T=Y+n|0,u0=t[o+3636>>2],e=u0+t[o+3572>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+3472>>2],b=n+T|0,k=e,e=e+t[o+3476>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=t[o+3488>>2],d=n+b|0,E=e,e=e+t[o+3492>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+3440|0,f=d+f|0,c=f>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>f>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<b>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&b>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],b=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,b=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+3460>>2],e=Y+t[o+3540>>2]|0,L=t[o+3456>>2],n=t[o+3536>>2],c=L+n|0,T=c,b=c+b|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=b<<4&-16,c=b>>>0<c>>>0?e+1|0:e,k=(c<<4|b>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+3616|0,P(Z,N,A,0,0,C,V,0,0),K=o+3424|0,P(K,S,z,0,0,I,g,0,0),j=o+3648|0,P(j,h,y,0,0,h,y,0,0),H=o+3408|0,R=H,k=(n|0)==(c|0)&b>>>0<T>>>0|n>>>0>c>>>0,b=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=b+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+3428>>2],e=Y+t[o+3652>>2]|0,T=t[o+3424>>2],n=t[o+3648>>2],d=T+n|0,b=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+3552|0,P(L,I,g,0,0,C,V,0,0),R=o+3600|0,P(R,N,A,0,0,N,A,0,0),g=o+3392|0,P(g,S,z,0,0,h,y,0,0),z=o+3376|0,h=z,y=(n|0)==(d|0)&c>>>0<b>>>0|n>>>0>d>>>0,b=(n|0)==(Y|0)&b>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+3392>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+3396>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+3360|0,b=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(b,n,e,0,0,64028672,65536,0,0),s=t[o+3440>>2],n=t[o+3680>>2],h=s+n|0,c=t[o+3444>>2],e=c+t[o+3684>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,b=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=c+b|0,e=n>>>0<b>>>0?e+1|0:e,T=d,c=n<<12|d>>>20,s=e,d=e<<12|n>>>20,y=t[o+3408>>2],n=t[o+3616>>2],b=y+n|0,A=t[o+3412>>2],e=A+t[o+3620>>2]|0,n=n>>>0>b>>>0?e+1|0:e,e=n+d|0,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<b>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&y>>>0>b>>>0|n>>>0<A>>>0,b=Z+8|0,n=t[b>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[b+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,b=y+A|0,e=b>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+b|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,b=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+3552>>2],n=t[o+3600>>2],g=S+n|0,H=t[o+3556>>2],e=H+t[o+3604>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+3376>>2],y=n+g|0,I=e,e=e+t[o+3380>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=y+b|0,b=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(b|0)&c>>>0<y>>>0|n>>>0>b>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=b,I=n<<12|b>>>20,s=e,y=e<<12|n>>>20,N=t[o+3360>>2],b=N+(x&-2)|0,z=t[o+3364>>2],e=z+(w&1048575)|0,e=b>>>0<N>>>0?e+1|0:e,x=b,b=b+I|0,n=e,e=e+y|0,w=f,I=E&65535,y=b>>>0<x>>>0?e+1|0:e,E=(n|0)==(y|0)&b>>>0<x>>>0|n>>>0>y>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,f=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>f>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,f=n<<12|y>>>20,s=f+w|0,e=I+(e<<12|n>>>20)|0,n=s,f=n>>>0<f>>>0?e+1|0:e,y=y&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(r=o+7376|0,x=r+32|0,t[x>>2]=n,t[x+4>>2]=f,E=r+24|0,t[E>>2]=b,t[E+4>>2]=y,T=r+16|0,t[T>>2]=c,t[T+4>>2]=g,A=r+8|0,t[A>>2]=d,t[A+4>>2]=w,t[o+7376>>2]=s,t[o+7380>>2]=h,U0(r,r,o+7416|0),f=t[x+4>>2],e=o+7336|0,r=e+32|0,n=t[x>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[E+4>>2],r=e+24|0,b=t[E>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[T+4>>2],r=e+16|0,c=t[T>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[A+4>>2],r=e+8|0,d=t[A>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7380>>2],s=t[o+7376>>2],t[o+7336>>2]=s,t[o+7340>>2]=h,r=22;T=s,e=h<<1|s>>>31,L=o+3328|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+3248|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+3184|0,P(x,n,f,0,0,n,f,0,0),E=o+3168|0,P(E,t[o+3184>>2],t[o+3188>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+3136|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+3296|0,P(_,b,y,0,0,s,d,0,0),s0=o+3232|0,P(s0,c,g,0,0,c,g,0,0),R=o+3152|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+3344|0,P(r0,T,h,0,0,T,h,0,0),$=o+3120|0,P($,S,z,0,0,N,w,0,0),e0=o+3200|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+3332>>2],e=T+t[o+3252>>2]|0,c=t[o+3328>>2],s=t[o+3248>>2],n=c+s|0,d=t[o+3168>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+3172>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,b=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+3296>>2],n=t[o+3232>>2],T=Y+n|0,u0=t[o+3300>>2],e=u0+t[o+3236>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+3136>>2],f=n+T|0,k=e,e=e+t[o+3140>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=t[o+3152>>2],d=n+f|0,E=e,e=e+t[o+3156>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+3104|0,b=d+b|0,c=b>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>b>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<f>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&f>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],f=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=f+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,f=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+3124>>2],e=Y+t[o+3204>>2]|0,L=t[o+3120>>2],n=t[o+3200>>2],c=L+n|0,T=c,f=c+f|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=f<<4&-16,c=f>>>0<c>>>0?e+1|0:e,k=(c<<4|f>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+3280|0,P(Z,N,A,0,0,C,V,0,0),K=o+3088|0,P(K,S,z,0,0,I,g,0,0),j=o+3312|0,P(j,h,y,0,0,h,y,0,0),H=o+3072|0,R=H,k=(n|0)==(c|0)&f>>>0<T>>>0|n>>>0>c>>>0,f=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=f+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+3092>>2],e=Y+t[o+3316>>2]|0,T=t[o+3088>>2],n=t[o+3312>>2],d=T+n|0,f=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+3216|0,P(L,I,g,0,0,C,V,0,0),R=o+3264|0,P(R,N,A,0,0,N,A,0,0),g=o+3056|0,P(g,S,z,0,0,h,y,0,0),z=o+3040|0,h=z,y=(n|0)==(d|0)&c>>>0<f>>>0|n>>>0>d>>>0,f=(n|0)==(Y|0)&f>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=f+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+3056>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+3060>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+3024|0,f=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(f,n,e,0,0,64028672,65536,0,0),s=t[o+3104>>2],n=t[o+3344>>2],h=s+n|0,c=t[o+3108>>2],e=c+t[o+3348>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=n>>>0<f>>>0?e+1|0:e,T=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,y=t[o+3072>>2],n=t[o+3280>>2],d=y+n|0,A=t[o+3076>>2],e=A+t[o+3284>>2]|0,e=n>>>0>d>>>0?e+1|0:e,n=f,f=d,d=n+d|0,n=e,e=e+c|0,c=d>>>0<f>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<f>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&f>>>0<y>>>0|n>>>0<A>>>0,f=Z+8|0,n=t[f>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[f+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,f=y+A|0,e=f>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,f=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+3216>>2],n=t[o+3264>>2],g=S+n|0,H=t[o+3220>>2],e=H+t[o+3268>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+3040>>2],y=n+g|0,I=e,e=e+t[o+3044>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=f+y|0,f=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(f|0)&c>>>0<y>>>0|n>>>0>f>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=f,y=n<<12|f>>>20,s=e,f=e<<12|n>>>20,N=t[o+3024>>2],x=N+(x&-2)|0,z=t[o+3028>>2],e=z+(w&1048575)|0,n=x>>>0<N>>>0?e+1|0:e,e=n+f|0,w=b,I=E&65535,y=y+x|0,f=y>>>0<x>>>0?e+1|0:e,b=y,E=(n|0)==(f|0)&y>>>0<x>>>0|n>>>0>f>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,y=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>y>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,s=f,y=n<<12|s>>>20,f=y+w|0,e=I+(e<<12|n>>>20)|0,n=f,f=n>>>0<y>>>0?e+1|0:e,y=s&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(r=o+7336|0,x=r+32|0,t[x>>2]=n,t[x+4>>2]=f,E=r+24|0,t[E>>2]=b,t[E+4>>2]=y,T=r+16|0,t[T>>2]=c,t[T+4>>2]=g,A=r+8|0,t[A>>2]=d,t[A+4>>2]=w,t[o+7336>>2]=s,t[o+7340>>2]=h,U0(r,r,o+7376|0),f=t[x+4>>2],e=o+7296|0,r=e+32|0,n=t[x>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[E+4>>2],r=e+24|0,b=t[E>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[T+4>>2],r=e+16|0,c=t[T>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[A+4>>2],r=e+8|0,d=t[A>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7340>>2],s=t[o+7336>>2],t[o+7296>>2]=s,t[o+7300>>2]=h,r=44;T=s,e=h<<1|s>>>31,L=o+2992|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+2912|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+2848|0,P(x,n,f,0,0,n,f,0,0),E=o+2832|0,P(E,t[o+2848>>2],t[o+2852>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+2800|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+2960|0,P(_,b,y,0,0,s,d,0,0),s0=o+2896|0,P(s0,c,g,0,0,c,g,0,0),R=o+2816|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+3008|0,P(r0,T,h,0,0,T,h,0,0),$=o+2784|0,P($,S,z,0,0,N,w,0,0),e0=o+2864|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+2996>>2],e=T+t[o+2916>>2]|0,c=t[o+2992>>2],s=t[o+2912>>2],n=c+s|0,d=t[o+2832>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+2836>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+2960>>2],n=t[o+2896>>2],T=Y+n|0,u0=t[o+2964>>2],e=u0+t[o+2900>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+2800>>2],b=n+T|0,k=e,e=e+t[o+2804>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=t[o+2816>>2],d=n+b|0,E=e,e=e+t[o+2820>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+2768|0,f=d+f|0,c=f>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>f>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<b>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&b>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],b=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,b=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+2788>>2],e=Y+t[o+2868>>2]|0,L=t[o+2784>>2],n=t[o+2864>>2],c=L+n|0,T=c,b=c+b|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=b<<4&-16,c=b>>>0<c>>>0?e+1|0:e,k=(c<<4|b>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+2944|0,P(Z,N,A,0,0,C,V,0,0),K=o+2752|0,P(K,S,z,0,0,I,g,0,0),j=o+2976|0,P(j,h,y,0,0,h,y,0,0),H=o+2736|0,R=H,k=(n|0)==(c|0)&b>>>0<T>>>0|n>>>0>c>>>0,b=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=b+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+2756>>2],e=Y+t[o+2980>>2]|0,T=t[o+2752>>2],n=t[o+2976>>2],d=T+n|0,b=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+2880|0,P(L,I,g,0,0,C,V,0,0),R=o+2928|0,P(R,N,A,0,0,N,A,0,0),g=o+2720|0,P(g,S,z,0,0,h,y,0,0),z=o+2704|0,h=z,y=(n|0)==(d|0)&c>>>0<b>>>0|n>>>0>d>>>0,b=(n|0)==(Y|0)&b>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+2720>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+2724>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+2688|0,b=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(b,n,e,0,0,64028672,65536,0,0),s=t[o+2768>>2],n=t[o+3008>>2],h=s+n|0,c=t[o+2772>>2],e=c+t[o+3012>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,b=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=c+b|0,e=n>>>0<b>>>0?e+1|0:e,T=d,c=n<<12|d>>>20,s=e,d=e<<12|n>>>20,y=t[o+2736>>2],n=t[o+2944>>2],b=y+n|0,A=t[o+2740>>2],e=A+t[o+2948>>2]|0,n=n>>>0>b>>>0?e+1|0:e,e=n+d|0,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<b>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&y>>>0>b>>>0|n>>>0<A>>>0,b=Z+8|0,n=t[b>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[b+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,b=y+A|0,e=b>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+b|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,b=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+2880>>2],n=t[o+2928>>2],g=S+n|0,H=t[o+2884>>2],e=H+t[o+2932>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+2704>>2],y=n+g|0,I=e,e=e+t[o+2708>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=y+b|0,b=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(b|0)&c>>>0<y>>>0|n>>>0>b>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=b,I=n<<12|b>>>20,s=e,y=e<<12|n>>>20,N=t[o+2688>>2],b=N+(x&-2)|0,z=t[o+2692>>2],e=z+(w&1048575)|0,e=b>>>0<N>>>0?e+1|0:e,x=b,b=b+I|0,n=e,e=e+y|0,w=f,I=E&65535,y=b>>>0<x>>>0?e+1|0:e,E=(n|0)==(y|0)&b>>>0<x>>>0|n>>>0>y>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,f=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>f>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,f=n<<12|y>>>20,s=f+w|0,e=I+(e<<12|n>>>20)|0,n=s,f=n>>>0<f>>>0?e+1|0:e,y=y&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(r=o+7296|0,x=r+32|0,t[x>>2]=n,t[x+4>>2]=f,E=r+24|0,t[E>>2]=b,t[E+4>>2]=y,T=r+16|0,t[T>>2]=c,t[T+4>>2]=g,A=r+8|0,t[A>>2]=d,t[A+4>>2]=w,t[o+7296>>2]=s,t[o+7300>>2]=h,U0(r,r,o+7336|0),f=t[x+4>>2],e=o+7256|0,r=e+32|0,n=t[x>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[E+4>>2],r=e+24|0,b=t[E>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[T+4>>2],r=e+16|0,c=t[T>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[A+4>>2],r=e+8|0,d=t[A>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7300>>2],s=t[o+7296>>2],t[o+7256>>2]=s,t[o+7260>>2]=h,r=88;T=s,e=h<<1|s>>>31,L=o+2656|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+2576|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+2512|0,P(x,n,f,0,0,n,f,0,0),E=o+2496|0,P(E,t[o+2512>>2],t[o+2516>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+2464|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+2624|0,P(_,b,y,0,0,s,d,0,0),s0=o+2560|0,P(s0,c,g,0,0,c,g,0,0),R=o+2480|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+2672|0,P(r0,T,h,0,0,T,h,0,0),$=o+2448|0,P($,S,z,0,0,N,w,0,0),e0=o+2528|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+2660>>2],e=T+t[o+2580>>2]|0,c=t[o+2656>>2],s=t[o+2576>>2],n=c+s|0,d=t[o+2496>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+2500>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,b=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+2624>>2],n=t[o+2560>>2],T=Y+n|0,u0=t[o+2628>>2],e=u0+t[o+2564>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+2464>>2],f=n+T|0,k=e,e=e+t[o+2468>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=t[o+2480>>2],d=n+f|0,E=e,e=e+t[o+2484>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+2432|0,b=d+b|0,c=b>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>b>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<f>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&f>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],f=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=f+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,f=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+2452>>2],e=Y+t[o+2532>>2]|0,L=t[o+2448>>2],n=t[o+2528>>2],c=L+n|0,T=c,f=c+f|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=f<<4&-16,c=f>>>0<c>>>0?e+1|0:e,k=(c<<4|f>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+2608|0,P(Z,N,A,0,0,C,V,0,0),K=o+2416|0,P(K,S,z,0,0,I,g,0,0),j=o+2640|0,P(j,h,y,0,0,h,y,0,0),H=o+2400|0,R=H,k=(n|0)==(c|0)&f>>>0<T>>>0|n>>>0>c>>>0,f=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=f+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+2420>>2],e=Y+t[o+2644>>2]|0,T=t[o+2416>>2],n=t[o+2640>>2],d=T+n|0,f=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+2544|0,P(L,I,g,0,0,C,V,0,0),R=o+2592|0,P(R,N,A,0,0,N,A,0,0),g=o+2384|0,P(g,S,z,0,0,h,y,0,0),z=o+2368|0,h=z,y=(n|0)==(d|0)&c>>>0<f>>>0|n>>>0>d>>>0,f=(n|0)==(Y|0)&f>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=f+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+2384>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+2388>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+2352|0,f=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(f,n,e,0,0,64028672,65536,0,0),s=t[o+2432>>2],n=t[o+2672>>2],h=s+n|0,c=t[o+2436>>2],e=c+t[o+2676>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=n>>>0<f>>>0?e+1|0:e,T=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,y=t[o+2400>>2],n=t[o+2608>>2],d=y+n|0,A=t[o+2404>>2],e=A+t[o+2612>>2]|0,e=n>>>0>d>>>0?e+1|0:e,n=f,f=d,d=n+d|0,n=e,e=e+c|0,c=d>>>0<f>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<f>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&f>>>0<y>>>0|n>>>0<A>>>0,f=Z+8|0,n=t[f>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[f+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,f=y+A|0,e=f>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,f=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+2544>>2],n=t[o+2592>>2],g=S+n|0,H=t[o+2548>>2],e=H+t[o+2596>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+2368>>2],y=n+g|0,I=e,e=e+t[o+2372>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=f+y|0,f=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(f|0)&c>>>0<y>>>0|n>>>0>f>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=f,y=n<<12|f>>>20,s=e,f=e<<12|n>>>20,N=t[o+2352>>2],x=N+(x&-2)|0,z=t[o+2356>>2],e=z+(w&1048575)|0,n=x>>>0<N>>>0?e+1|0:e,e=n+f|0,w=b,I=E&65535,y=y+x|0,f=y>>>0<x>>>0?e+1|0:e,b=y,E=(n|0)==(f|0)&y>>>0<x>>>0|n>>>0>f>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,y=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>y>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,s=f,y=n<<12|s>>>20,f=y+w|0,e=I+(e<<12|n>>>20)|0,n=f,f=n>>>0<y>>>0?e+1|0:e,y=s&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(r=o+7256|0,x=r+32|0,t[x>>2]=n,t[x+4>>2]=f,E=r+24|0,t[E>>2]=b,t[E+4>>2]=y,T=r+16|0,t[T>>2]=c,t[T+4>>2]=g,A=r+8|0,t[A>>2]=d,t[A+4>>2]=w,t[o+7256>>2]=s,t[o+7260>>2]=h,U0(r,r,o+7296|0),f=t[x+4>>2],e=o+7216|0,r=e+32|0,n=t[x>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[E+4>>2],r=e+24|0,b=t[E>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[T+4>>2],r=e+16|0,c=t[T>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[A+4>>2],r=e+8|0,d=t[A>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7260>>2],s=t[o+7256>>2],t[o+7216>>2]=s,t[o+7220>>2]=h,r=44;T=s,e=h<<1|s>>>31,L=o+2320|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+2240|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+2176|0,P(x,n,f,0,0,n,f,0,0),E=o+2160|0,P(E,t[o+2176>>2],t[o+2180>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+2128|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+2288|0,P(_,b,y,0,0,s,d,0,0),s0=o+2224|0,P(s0,c,g,0,0,c,g,0,0),R=o+2144|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+2336|0,P(r0,T,h,0,0,T,h,0,0),$=o+2112|0,P($,S,z,0,0,N,w,0,0),e0=o+2192|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+2324>>2],e=T+t[o+2244>>2]|0,c=t[o+2320>>2],s=t[o+2240>>2],n=c+s|0,d=t[o+2160>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+2164>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+2288>>2],n=t[o+2224>>2],T=Y+n|0,u0=t[o+2292>>2],e=u0+t[o+2228>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+2128>>2],b=n+T|0,k=e,e=e+t[o+2132>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=t[o+2144>>2],d=n+b|0,E=e,e=e+t[o+2148>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+2096|0,f=d+f|0,c=f>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>f>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<b>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&b>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],b=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,b=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+2116>>2],e=Y+t[o+2196>>2]|0,L=t[o+2112>>2],n=t[o+2192>>2],c=L+n|0,T=c,b=c+b|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=b<<4&-16,c=b>>>0<c>>>0?e+1|0:e,k=(c<<4|b>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+2272|0,P(Z,N,A,0,0,C,V,0,0),K=o+2080|0,P(K,S,z,0,0,I,g,0,0),j=o+2304|0,P(j,h,y,0,0,h,y,0,0),H=o+2064|0,R=H,k=(n|0)==(c|0)&b>>>0<T>>>0|n>>>0>c>>>0,b=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=b+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+2084>>2],e=Y+t[o+2308>>2]|0,T=t[o+2080>>2],n=t[o+2304>>2],d=T+n|0,b=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+2208|0,P(L,I,g,0,0,C,V,0,0),R=o+2256|0,P(R,N,A,0,0,N,A,0,0),g=o+2048|0,P(g,S,z,0,0,h,y,0,0),z=o+2032|0,h=z,y=(n|0)==(d|0)&c>>>0<b>>>0|n>>>0>d>>>0,b=(n|0)==(Y|0)&b>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+2048>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+2052>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+2016|0,b=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(b,n,e,0,0,64028672,65536,0,0),s=t[o+2096>>2],n=t[o+2336>>2],h=s+n|0,c=t[o+2100>>2],e=c+t[o+2340>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,b=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=c+b|0,e=n>>>0<b>>>0?e+1|0:e,T=d,c=n<<12|d>>>20,s=e,d=e<<12|n>>>20,y=t[o+2064>>2],n=t[o+2272>>2],b=y+n|0,A=t[o+2068>>2],e=A+t[o+2276>>2]|0,n=n>>>0>b>>>0?e+1|0:e,e=n+d|0,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<b>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&y>>>0>b>>>0|n>>>0<A>>>0,b=Z+8|0,n=t[b>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[b+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,b=y+A|0,e=b>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+b|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,b=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+2208>>2],n=t[o+2256>>2],g=S+n|0,H=t[o+2212>>2],e=H+t[o+2260>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+2032>>2],y=n+g|0,I=e,e=e+t[o+2036>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=y+b|0,b=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(b|0)&c>>>0<y>>>0|n>>>0>b>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=b,I=n<<12|b>>>20,s=e,y=e<<12|n>>>20,N=t[o+2016>>2],b=N+(x&-2)|0,z=t[o+2020>>2],e=z+(w&1048575)|0,e=b>>>0<N>>>0?e+1|0:e,x=b,b=b+I|0,n=e,e=e+y|0,w=f,I=E&65535,y=b>>>0<x>>>0?e+1|0:e,E=(n|0)==(y|0)&b>>>0<x>>>0|n>>>0>y>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,f=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>f>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,f=n<<12|y>>>20,s=f+w|0,e=I+(e<<12|n>>>20)|0,n=s,f=n>>>0<f>>>0?e+1|0:e,y=y&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(e=o+7216|0,N=e+32|0,t[N>>2]=n,t[N+4>>2]=f,r=e+24|0,t[r>>2]=b,t[r+4>>2]=y,f=e+16|0,t[f>>2]=c,t[f+4>>2]=g,x=e+8|0,t[x>>2]=d,t[x+4>>2]=w,t[o+7216>>2]=s,t[o+7220>>2]=h,U0(e,e,o+7336|0),h=t[r>>2],s=h,y=t[r+4>>2],n=y,r=t[o+7220>>2],C=r,E=t[o+7216>>2],c=E,e=r<<1|c>>>31,T=o+1856|0,I=c<<1,z=e,P(T,s,n,0,0,I,e,0,0),r=t[x+4>>2],u0=r,X=t[x>>2],n=X,e=r<<1|n>>>31,A=o+1952|0,g=t[f>>2],f=t[f+4>>2],n=n<<1,s=e,P(A,g,f,0,0,n,e,0,0),w=o+1840|0,d=t[N>>2],r=t[N+4>>2],P(w,d,r,0,0,d,r,0,0),b=o+1824|0,P(b,t[o+1840>>2],t[o+1844>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,s0=o+1792|0,N=d<<1,x=e,P(s0,N,e,0,0,c,C,0,0),r0=o+1872|0,P(r0,h,y,0,0,n,s,0,0),$=o+1936|0,P($,g,f,0,0,g,f,0,0),V=o+1808|0,r=w+8|0,P(V,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+2e3|0,P(e0,c,C,0,0,c,C,0,0),Y=o+1776|0,P(Y,N,e,0,0,X,u0,0,0),t0=o+1888|0,P(t0,h,y,0,0,g<<1,f<<1|g>>>31,0,0),C=t[o+1860>>2],e=C+t[o+1956>>2]|0,d=t[o+1856>>2],n=t[o+1952>>2],r=d+n|0,s=t[o+1824>>2],E=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+1828>>2]|0,s=s>>>0>E>>>0?e+1|0:e,w=(n|0)==(s|0)&r>>>0>E>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(C|0)&r>>>0<d>>>0|n>>>0<C>>>0,e=A+8|0,n=t[e>>2],r=T+8|0,A=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,r=d+A|0,e=(r>>>0<A>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+w|0,e=n>>>0>r>>>0?e+1|0:e,T=s,b=r<<12|s>>>20,n=e,d=e<<12|r>>>20,Z=t[o+1872>>2],r=t[o+1936>>2],w=Z+r|0,_=t[o+1876>>2],e=_+t[o+1940>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+1792>>2],c=r+w|0,C=e,e=e+t[o+1796>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+1808>>2],s=r+c|0,A=e,e=e+t[o+1812>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,K=o+1760|0,j=K,b=s+b|0,d=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(d|0)&s>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&s>>>0<c>>>0|r>>>0<A>>>0,r=V+8|0,R=t[r>>2],k=t[r+4>>2],S=(A|0)==(C|0)&c>>>0<w>>>0|A>>>0<C>>>0,r=s0+8|0,V=t[r>>2],A=t[r+4>>2],c=(C|0)==(_|0)&w>>>0<Z>>>0|C>>>0<_>>>0,e=$+8|0,s=t[e>>2],r=r0+8|0,w=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>w>>>0?e+1|0:e,r=c+w|0,e=(r>>>0<w>>>0?e+1|0:e)+A|0,s=r,r=r+V|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+S|0,e=(s>>>0>r>>>0?e+1|0:e)+k|0,s=r,r=r+R|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+1776>>2],r=t[o+1888>>2],w=k+r|0,R=t[o+1780>>2],e=R+t[o+1892>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,V=c<<4&-16,d=e,C=(e<<4|c>>>28)&16777215,A=n,P(j,V|n>>>16&15,C,0,0,977,1,0,0),j=o+1984|0,P(j,X,u0,0,0,I,z,0,0),L=o+1728|0,P(L,N,x,0,0,g,f,0,0),S=o+1904|0,P(S,h,y,0,0,h,y,0,0),V=o+1712|0,C=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,w=e<<12|r>>>20,H=t[o+1732>>2],e=H+t[o+1908>>2]|0,C=t[o+1728>>2],r=t[o+1904>>2],s=C+r|0,c=s,d=s+d|0,r=r>>>0>s>>>0?e+1|0:e,e=r+w|0,s=s>>>0>d>>>0?e+1|0:e,P(V,d,s&1048575,0,0,15632,16,0,0),R=o+1920|0,P(R,g,f,0,0,I,z,0,0),k=o+1968|0,P(k,X,u0,0,0,X,u0,0,0),w=o+1664|0,P(w,N,x,0,0,h,y,0,0),I=o+1648|0,y=I,f=(r|0)==(s|0)&c>>>0>d>>>0|r>>>0>s>>>0,c=(r|0)==(H|0)&c>>>0<C>>>0|r>>>0<H>>>0,e=S+8|0,d=t[e>>2],r=L+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+1664>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+1668>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+1584|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+1760>>2],r=t[o+2e3>>2],c=n+r|0,d=t[o+1764>>2],e=d+t[o+2004>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,h=e<<12|r>>>20,w=t[o+1716>>2],e=w+t[o+1988>>2]|0,y=t[o+1712>>2],r=t[o+1984>>2],s=y+r|0,f=s,d=s+d|0,r=r>>>0>s>>>0?e+1|0:e,e=r+h|0,s=d>>>0<s>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=V+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+1920>>2],r=t[o+1968>>2],h=S+r|0,j=t[o+1924>>2],e=j+t[o+1972>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+1648>>2],y=r+h|0,x=e,e=e+t[o+1652>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+1568|0,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,x=r<<12|f>>>20,n=e,h=e<<12|r>>>20,j=t[o+1588>>2],e=j+(T&1048575)|0,S=t[o+1584>>2],f=E&-2,r=S+f|0,T=r,r=r>>>0<f>>>0?e+1|0:e,e=r+h|0,h=T+x|0,f=h>>>0<T>>>0?e+1|0:e,x=f&1048575,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,z=c<<1,N=e,P(L,h,x,0,0,z,e,0,0),e=w&1048575,X=e,R=o+1600|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+1504|0,I=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=I+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(k,n,e,0,0,n,e,0,0),b=o+1488|0,P(b,t[o+1504>>2],t[o+1508>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+1456|0,C=r<<1,I=e,P(s0,C,e,0,0,g,K,0,0),r0=o+1552|0,P(r0,h,x,0,0,c,y,0,0),$=o+1616|0,P($,s,E,0,0,s,E,0,0),S=o+1472|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+1744|0,P(e0,g,K,0,0,g,K,0,0),Y=o+1440|0,P(Y,C,e,0,0,V,X,0,0),t0=o+1520|0,y=x,f=E,x=s,P(t0,h,y,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+1568>>2],n=t[o+1600>>2],r=d+n|0,g=t[o+1572>>2],e=g+t[o+1604>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+1488>>2],E=n+r|0,s=e,e=e+t[o+1492>>2]|0,n=n>>>0>E>>>0?e+1|0:e,w=(s|0)==(n|0)&r>>>0>E>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(g|0)&r>>>0<d>>>0|s>>>0<g>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,g=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>g>>>0?e+1|0:e,r=d+g|0,e=(r>>>0<g>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,T=n,b=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+1552>>2],r=t[o+1616>>2],g=Z+r|0,_=t[o+1556>>2],e=_+t[o+1620>>2]|0,e=r>>>0>g>>>0?e+1|0:e,r=t[o+1456>>2],w=r+g|0,n=e,e=e+t[o+1460>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+1472>>2],c=r+w|0,A=e,e=e+t[o+1476>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+d|0,K=o+1344|0,j=K,b=c+b|0,d=b>>>0<c>>>0?e+1|0:e,H=(r|0)==(d|0)&c>>>0>b>>>0|r>>>0>d>>>0,L=(r|0)==(A|0)&c>>>0<w>>>0|r>>>0<A>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(A|0)&g>>>0>w>>>0|n>>>0>A>>>0,r=s0+8|0,A=t[r>>2],w=t[r+4>>2],c=(n|0)==(_|0)&g>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,g=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>g>>>0?e+1|0:e,r=c+g|0,e=(r>>>0<g>>>0?e+1|0:e)+w|0,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=d,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,k=t[o+1440>>2],r=t[o+1520>>2],w=k+r|0,R=t[o+1444>>2],e=R+t[o+1524>>2]|0,r=r>>>0>w>>>0?e+1|0:e,e=r+d|0,c=c+w|0,e=c>>>0<w>>>0?e+1|0:e,S=c<<4&-16,d=e,g=(e<<4|c>>>28)&16777215,A=n,P(j,S|n>>>16&15,g,0,0,977,1,0,0),j=o+1680|0,P(j,V,X,0,0,z,N,0,0),H=o+1424|0,P(H,C,I,0,0,x,f,0,0),L=o+1536|0,P(L,h,y,0,0,h,y,0,0),S=o+1408|0,g=(r|0)==(e|0)&c>>>0<w>>>0|r>>>0>e>>>0,c=(r|0)==(R|0)&w>>>0<k>>>0|r>>>0<R>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,n=c+w|0,e=n>>>0<w>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+g|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,n=e,s=e<<12|r>>>20,g=t[o+1424>>2],r=t[o+1536>>2],c=g+r|0,Z=t[o+1428>>2],e=Z+t[o+1540>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+s|0,d=c+d|0,e=d>>>0<c>>>0?e+1|0:e,s=e,P(S,d,e&1048575,0,0,15632,16,0,0),R=o+1632|0,P(R,x,f,0,0,z,N,0,0),k=o+1696|0,P(k,V,X,0,0,V,X,0,0),w=o+1392|0,P(w,h,y,0,0,C,I,0,0),I=o+1376|0,y=I,f=(r|0)==(e|0)&c>>>0>d>>>0|r>>>0>e>>>0,c=(r|0)==(Z|0)&c>>>0<g>>>0|r>>>0<Z>>>0,e=L+8|0,d=t[e>>2],r=H+8|0,h=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>h>>>0?e+1|0:e,d=c+h|0,e=d>>>0<h>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|s>>>20,s=t[o+1392>>2],f=d+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+1396>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(y,f,e,0,0,15632,16,0,0),H=o+1360|0,c=H,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=w+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+d|0,e=n>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),n=t[o+1344>>2],r=t[o+1744>>2],c=n+r|0,d=t[o+1348>>2],e=d+t[o+1748>>2]|0,s=r>>>0>c>>>0?e+1|0:e,d=(d|0)==(s|0)&n>>>0>c>>>0|s>>>0<d>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,f=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,r=d+f|0,e=r>>>0<f>>>0?e+1|0:e,g=s,d=r<<12|s>>>20,n=e,s=e<<12|r>>>20,y=t[o+1408>>2],r=t[o+1680>>2],f=y+r|0,w=t[o+1412>>2],e=w+t[o+1684>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+s|0,d=d+f|0,s=d>>>0<f>>>0?e+1|0:e,h=(r|0)==(s|0)&d>>>0<f>>>0|r>>>0>s>>>0,y=(r|0)==(w|0)&f>>>0<y>>>0|r>>>0<w>>>0,e=j+8|0,f=t[e>>2],r=S+8|0,w=f+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=f>>>0>w>>>0?e+1|0:e,f=y+w|0,e=f>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+f|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+h|0,e=n>>>0>r>>>0?e+1|0:e,w=s,f=r<<12|s>>>20,n=e,s=e<<12|r>>>20,S=t[o+1632>>2],r=t[o+1696>>2],h=S+r|0,j=t[o+1636>>2],e=j+t[o+1700>>2]|0,e=r>>>0>h>>>0?e+1|0:e,r=t[o+1376>>2],y=r+h|0,x=e,e=e+t[o+1380>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+s|0,L=o+1264|0,s=f+y|0,f=s>>>0<y>>>0?e+1|0:e,C=(r|0)==(f|0)&s>>>0<y>>>0|r>>>0>f>>>0,N=(r|0)==(x|0)&y>>>0<h>>>0|r>>>0<x>>>0,r=I+8|0,z=t[r>>2],I=t[r+4>>2],h=(x|0)==(j|0)&h>>>0<S>>>0|x>>>0<j>>>0,e=k+8|0,y=t[e>>2],r=R+8|0,x=y+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=y>>>0>x>>>0?e+1|0:e,r=h+x|0,e=(r>>>0<x>>>0?e+1|0:e)+I|0,h=r,r=r+z|0,e=h>>>0>r>>>0?e+1|0:e,y=r+N|0,e=y>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+y|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,y=f,h=r<<12|f>>>20,n=e,x=e<<12|r>>>20,j=t[o+1364>>2],e=j+(T&1048575)|0,S=t[o+1360>>2],r=E&-2,f=S+r|0,T=f,h=f+h|0,r=r>>>0>f>>>0?e+1|0:e,e=r+x|0,f=h>>>0<f>>>0?e+1|0:e,C=f&1048575,E=C,e=g&1048575,K=e,g=c,e=e<<1|c>>>31,I=c<<1,z=e,P(L,h,E,0,0,I,e,0,0),e=w&1048575,X=e,R=o+1216|0,E=y&1048575,c=d<<1,V=d,y=e<<1|d>>>31,P(R,s,E,0,0,c,y,0,0),k=o+1168|0,x=A&65535,A=(r|0)==(f|0)&h>>>0<T>>>0|r>>>0>f>>>0,w=(r|0)==(j|0)&T>>>0<S>>>0|r>>>0<j>>>0,r=H+8|0,d=w+t[r>>2]|0,e=t[r+4>>2],e=d>>>0<w>>>0?e+1|0:e,n=n>>>20|0,r=n+d|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,d=r<<12|f>>>20,n=d+b|0,e=x+(e<<12|r>>>20)|0,e=n>>>0<d>>>0?e+1|0:e,P(k,n,e,0,0,n,e,0,0),b=o+1152|0,P(b,t[o+1168>>2],t[o+1172>>2],0,0,15632,16,0,0),r=n,e=e<<1|r>>>31,s0=o+1120|0,N=r<<1,x=e,P(s0,N,e,0,0,g,K,0,0),r0=o+1200|0,P(r0,h,C,0,0,c,y,0,0),$=o+1312|0,P($,s,E,0,0,s,E,0,0),S=o+1136|0,r=k+8|0,P(S,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),e0=o+1280|0,P(e0,g,K,0,0,g,K,0,0),Y=o+1104|0,P(Y,N,e,0,0,V,X,0,0),t0=o+1184|0,A=h,g=C,f=E,E=s,P(t0,h,g,0,0,s<<1,f<<1|s>>>31,0,0),d=t[o+1264>>2],n=t[o+1216>>2],r=d+n|0,h=t[o+1268>>2],e=h+t[o+1220>>2]|0,e=r>>>0<n>>>0?e+1|0:e,n=t[o+1152>>2],w=n+r|0,s=e,e=e+t[o+1156>>2]|0,n=n>>>0>w>>>0?e+1|0:e,y=(s|0)==(n|0)&r>>>0>w>>>0|n>>>0<s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(s|0)==(h|0)&r>>>0<d>>>0|s>>>0<h>>>0,e=R+8|0,s=t[e>>2],r=L+8|0,h=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>h>>>0?e+1|0:e,r=d+h|0,e=(r>>>0<h>>>0?e+1|0:e)+c|0,s=r,r=r+b|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+y|0,e=s>>>0>r>>>0?e+1|0:e,h=n,c=r<<12|n>>>20,s=e,d=e<<12|r>>>20,Z=t[o+1200>>2],r=t[o+1312>>2],T=Z+r|0,_=t[o+1204>>2],e=_+t[o+1316>>2]|0,e=r>>>0>T>>>0?e+1|0:e,r=t[o+1120>>2],y=r+T|0,n=e,e=e+t[o+1124>>2]|0,e=r>>>0>y>>>0?e+1|0:e,r=t[o+1136>>2],b=r+y|0,C=e,e=e+t[o+1140>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+d|0,K=o+1008|0,j=K,d=c+b|0,c=d>>>0<b>>>0?e+1|0:e,H=(r|0)==(c|0)&d>>>0<b>>>0|r>>>0>c>>>0,L=(r|0)==(C|0)&y>>>0>b>>>0|r>>>0<C>>>0,r=S+8|0,R=t[r>>2],k=t[r+4>>2],S=(n|0)==(C|0)&y>>>0<T>>>0|n>>>0>C>>>0,r=s0+8|0,C=t[r>>2],y=t[r+4>>2],b=(n|0)==(_|0)&T>>>0<Z>>>0|n>>>0<_>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,r=b+T|0,e=(r>>>0<T>>>0?e+1|0:e)+y|0,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+S|0,e=(n>>>0>r>>>0?e+1|0:e)+k|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+L|0,e=n>>>0<r>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=c,b=r<<12|n>>>20,s=e,c=e<<12|r>>>20,k=t[o+1104>>2],r=t[o+1184>>2],T=k+r|0,Z=t[o+1108>>2],e=Z+t[o+1188>>2]|0,r=r>>>0>T>>>0?e+1|0:e,e=r+c|0,b=b+T|0,e=b>>>0<T>>>0?e+1|0:e,S=b<<4&-16,c=e,C=(e<<4|b>>>28)&16777215,y=n,P(j,S|n>>>16&15,C,0,0,977,1,0,0),j=o+1248|0,P(j,V,X,0,0,I,z,0,0),H=o+1088|0,P(H,N,x,0,0,E,f,0,0),L=o+1328|0,P(L,A,g,0,0,A,g,0,0),R=o+1072|0,S=R,C=(r|0)==(e|0)&b>>>0<T>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&T>>>0<k>>>0|r>>>0<Z>>>0,e=t0+8|0,n=t[e>>2],r=Y+8|0,T=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=b+T|0,e=n>>>0<T>>>0?e+1|0:e,s=s>>>20|0,r=n+s|0,e=s>>>0>r>>>0?e+1|0:e,n=r,r=r+C|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|c>>>20,n=e,s=e<<12|r>>>20,C=t[o+1088>>2],r=t[o+1328>>2],b=C+r|0,Z=t[o+1092>>2],e=Z+t[o+1332>>2]|0,r=r>>>0>b>>>0?e+1|0:e,e=r+s|0,c=c+b|0,e=c>>>0<b>>>0?e+1|0:e,s=e,P(S,c,e&1048575,0,0,15632,16,0,0),k=o+1232|0,P(k,E,f,0,0,I,z,0,0),S=o+1296|0,P(S,V,X,0,0,V,X,0,0),T=o+1056|0,P(T,A,g,0,0,N,x,0,0),E=o+1040|0,g=E,f=(r|0)==(e|0)&c>>>0<b>>>0|r>>>0>e>>>0,b=(r|0)==(Z|0)&b>>>0<C>>>0|r>>>0<Z>>>0,e=L+8|0,c=t[e>>2],r=H+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,c=b+A|0,e=c>>>0<A>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,s=t[o+1056>>2],f=c+s|0,n=e,r=e<<12|r>>>20,e=r+t[o+1060>>2]|0,e=s>>>0>f>>>0?e+1|0:e,P(g,f,e,0,0,15632,16,0,0),C=o+1024|0,b=C,c=(r|0)==(e|0)&c>>>0>f>>>0|r>>>0>e>>>0,r=T+8|0,s=t[r>>2],e=t[r+4>>2],n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+c|0,e=n>>>0>r>>>0?e+1|0:e,P(b,r,e,0,0,64028672,65536,0,0),n=t[o+1008>>2],r=t[o+1280>>2],f=n+r|0,c=t[o+1012>>2],e=c+t[o+1284>>2]|0,Z=o+7176|0,H=Z+8|0,A=H,s=r>>>0>f>>>0?e+1|0:e,c=(c|0)==(s|0)&n>>>0>f>>>0|s>>>0<c>>>0,e=e0+8|0,n=t[e>>2],r=K+8|0,b=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,r=c+b|0,e=r>>>0<b>>>0?e+1|0:e,b=s,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,T=t[o+1072>>2],r=t[o+1248>>2],g=T+r|0,I=t[o+1076>>2],e=I+t[o+1252>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[A>>2]=c,s=e,t[A+4>>2]=e&1048575,L=Z+16|0,x=L,A=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,g=(r|0)==(I|0)&g>>>0<T>>>0|r>>>0<I>>>0,e=j+8|0,c=t[e>>2],r=R+8|0,T=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>T>>>0?e+1|0:e,c=g+T|0,e=c>>>0<T>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+A|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|s>>>20,n=e,s=e<<12|r>>>20,N=t[o+1232>>2],r=t[o+1296>>2],A=N+r|0,R=t[o+1236>>2],e=R+t[o+1300>>2]|0,e=r>>>0>A>>>0?e+1|0:e,r=t[o+1040>>2],g=r+A|0,T=e,e=e+t[o+1044>>2]|0,r=r>>>0>g>>>0?e+1|0:e,e=r+s|0,c=c+g|0,e=c>>>0<g>>>0?e+1|0:e,t[x>>2]=c,s=e,t[x+4>>2]=e&1048575,V=Z+24|0,z=(r|0)==(e|0)&c>>>0<g>>>0|r>>>0>e>>>0,I=(r|0)==(T|0)&g>>>0<A>>>0|r>>>0<T>>>0,r=E+8|0,x=t[r>>2],E=t[r+4>>2],g=(T|0)==(R|0)&A>>>0<N>>>0|T>>>0<R>>>0,e=S+8|0,c=t[e>>2],r=k+8|0,A=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>A>>>0?e+1|0:e,r=g+A|0,e=(r>>>0<A>>>0?e+1|0:e)+E|0,c=r,r=r+x|0,e=c>>>0>r>>>0?e+1|0:e,c=r+I|0,e=c>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+z|0,e=n>>>0>r>>>0?e+1|0:e,g=r<<12|s>>>20,n=e,c=e<<12|r>>>20,A=t[o+1024>>2],s=w&-2,r=A+s|0,E=t[o+1028>>2],e=E+(h&1048575)|0,w=r>>>0<s>>>0?e+1|0:e,e=w+c|0,h=r,s=r+g|0,e=r>>>0>s>>>0?e+1|0:e,t[V>>2]=s,r=e,t[V+4>>2]=e&1048575,T=Z+32|0,c=d,g=y&65535,y=(e|0)==(w|0)&s>>>0<h>>>0|e>>>0<w>>>0,s=(w|0)==(E|0)&h>>>0<A>>>0|w>>>0<E>>>0,e=C+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+c|0,e=g+(e<<12|n>>>20)|0,t[T>>2]=s,t[T+4>>2]=r>>>0>s>>>0?e+1|0:e,t[o+7176>>2]=f,t[o+7180>>2]=b&1048575,U0(Z,Z,o+7536|0),f=t[T+4>>2],e=o+7136|0,r=e+32|0,n=t[T>>2],t[r>>2]=n,t[r+4>>2]=f,y=t[V+4>>2],r=e+24|0,b=t[V>>2],t[r>>2]=b,t[r+4>>2]=y,g=t[L+4>>2],r=e+16|0,c=t[L>>2],t[r>>2]=c,t[r+4>>2]=g,w=t[H+4>>2],r=e+8|0,d=t[H>>2],t[r>>2]=d,t[r+4>>2]=w,h=t[o+7180>>2],s=t[o+7176>>2],t[o+7136>>2]=s,t[o+7140>>2]=h,r=23;T=s,e=h<<1|s>>>31,L=o+976|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+896|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+832|0,P(x,n,f,0,0,n,f,0,0),E=o+816|0,P(E,t[o+832>>2],t[o+836>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+784|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+944|0,P(_,b,y,0,0,s,d,0,0),s0=o+880|0,P(s0,c,g,0,0,c,g,0,0),R=o+800|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+992|0,P(r0,T,h,0,0,T,h,0,0),$=o+768|0,P($,S,z,0,0,N,w,0,0),e0=o+848|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+980>>2],e=T+t[o+900>>2]|0,c=t[o+976>>2],s=t[o+896>>2],n=c+s|0,d=t[o+816>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+820>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,b=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+944>>2],n=t[o+880>>2],T=Y+n|0,u0=t[o+948>>2],e=u0+t[o+884>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+784>>2],f=n+T|0,k=e,e=e+t[o+788>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=t[o+800>>2],d=n+f|0,E=e,e=e+t[o+804>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+752|0,b=d+b|0,c=b>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>b>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<f>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&f>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],f=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=f+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,f=n<<12|s>>>20,d=e,E=e<<12|n>>>20,Y=t[o+772>>2],e=Y+t[o+852>>2]|0,L=t[o+768>>2],n=t[o+848>>2],c=L+n|0,T=c,f=c+f|0,n=n>>>0>c>>>0?e+1|0:e,e=n+E|0,R=f<<4&-16,c=f>>>0<c>>>0?e+1|0:e,k=(c<<4|f>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+928|0,P(Z,N,A,0,0,C,V,0,0),K=o+736|0,P(K,S,z,0,0,I,g,0,0),j=o+960|0,P(j,h,y,0,0,h,y,0,0),H=o+720|0,R=H,k=(n|0)==(c|0)&f>>>0<T>>>0|n>>>0>c>>>0,f=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=f+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,d=e<<12|n>>>20,T=t[o+736>>2],n=t[o+960>>2],f=T+n|0,k=t[o+740>>2],e=k+t[o+964>>2]|0,n=n>>>0>f>>>0?e+1|0:e,e=n+d|0,c=c+f|0,e=c>>>0<f>>>0?e+1|0:e,d=e,P(R,c,e&1048575,0,0,15632,16,0,0),L=o+864|0,P(L,I,g,0,0,C,V,0,0),R=o+912|0,P(R,N,A,0,0,N,A,0,0),g=o+704|0,P(g,S,z,0,0,h,y,0,0),z=o+688|0,h=z,y=(e|0)==(n|0)&c>>>0<f>>>0|e>>>0<n>>>0,f=(n|0)==(k|0)&f>>>0<T>>>0|n>>>0<k>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=f+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+704>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+708>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+672|0,f=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(f,n,e,0,0,64028672,65536,0,0),s=t[o+752>>2],n=t[o+992>>2],h=s+n|0,c=t[o+756>>2],e=c+t[o+996>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=n>>>0<f>>>0?e+1|0:e,T=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,y=t[o+720>>2],n=t[o+928>>2],d=y+n|0,A=t[o+724>>2],e=A+t[o+932>>2]|0,e=n>>>0>d>>>0?e+1|0:e,n=f,f=d,d=n+d|0,n=e,e=e+c|0,c=d>>>0<f>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<f>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&f>>>0<y>>>0|n>>>0<A>>>0,f=Z+8|0,n=t[f>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[f+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,f=y+A|0,e=f>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,f=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+864>>2],n=t[o+912>>2],g=S+n|0,H=t[o+868>>2],e=H+t[o+916>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+688>>2],y=n+g|0,I=e,e=e+t[o+692>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=f+y|0,f=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(f|0)&c>>>0<y>>>0|n>>>0>f>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=f,y=n<<12|f>>>20,s=e,f=e<<12|n>>>20,N=t[o+672>>2],x=N+(x&-2)|0,z=t[o+676>>2],e=z+(w&1048575)|0,n=x>>>0<N>>>0?e+1|0:e,e=n+f|0,w=b,I=E&65535,y=y+x|0,f=y>>>0<x>>>0?e+1|0:e,b=y,E=(n|0)==(f|0)&y>>>0<x>>>0|n>>>0>f>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,y=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>y>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,s=f,y=n<<12|s>>>20,f=y+w|0,e=I+(e<<12|n>>>20)|0,n=f,f=n>>>0<y>>>0?e+1|0:e,y=s&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);for(t[o+7168>>2]=n,t[o+7172>>2]=f,t[o+7160>>2]=b,t[o+7164>>2]=y,t[o+7152>>2]=c,t[o+7156>>2]=g,t[o+7144>>2]=d,t[o+7148>>2]=w,t[o+7136>>2]=s,t[o+7140>>2]=h,r=o+7136|0,U0(r,r,o+7376|0),r=6,n=t[o+7168>>2],f=t[o+7172>>2],b=t[o+7160>>2],y=t[o+7164>>2],c=t[o+7152>>2],g=t[o+7156>>2],d=t[o+7144>>2],w=t[o+7148>>2],s=t[o+7136>>2],h=t[o+7140>>2];T=s,e=h<<1|s>>>31,L=o+640|0,C=s<<1,V=e,P(L,b,y,0,0,C,e,0,0),k=o+560|0,s=d<<1,A=w,N=d,d=w<<1|d>>>31,P(k,c,g,0,0,s,d,0,0),x=o+496|0,P(x,n,f,0,0,n,f,0,0),E=o+480|0,P(E,t[o+496>>2],t[o+500>>2],0,0,15632,16,0,0),e=f<<1|n>>>31,X=o+448|0,S=n<<1,z=e,P(X,S,e,0,0,T,h,0,0),_=o+608|0,P(_,b,y,0,0,s,d,0,0),s0=o+544|0,P(s0,c,g,0,0,c,g,0,0),R=o+464|0,e=x+8|0,P(R,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),r0=o+656|0,P(r0,T,h,0,0,T,h,0,0),$=o+432|0,P($,S,z,0,0,N,w,0,0),e0=o+512|0,h=b,I=c,P(e0,b,y,0,0,c<<1,g<<1|c>>>31,0,0),T=t[o+644>>2],e=T+t[o+564>>2]|0,c=t[o+640>>2],s=t[o+560>>2],n=c+s|0,d=t[o+480>>2],x=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+484>>2]|0,d=d>>>0>x>>>0?e+1|0:e,w=(s|0)==(d|0)&n>>>0>x>>>0|s>>>0>d>>>0,e=E+8|0,f=t[e>>2],b=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=k+8|0,n=t[s>>2],e=L+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=c+T|0,e=(n>>>0<T>>>0?e+1|0:e)+b|0,s=n,n=n+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,w=d,b=n<<12|d>>>20,s=e,c=e<<12|n>>>20,Y=t[o+608>>2],n=t[o+544>>2],T=Y+n|0,u0=t[o+612>>2],e=u0+t[o+548>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=t[o+448>>2],f=n+T|0,k=e,e=e+t[o+452>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=t[o+464>>2],d=n+f|0,E=e,e=e+t[o+468>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,t0=o+416|0,b=d+b|0,c=b>>>0<d>>>0?e+1|0:e,Z=(n|0)==(c|0)&d>>>0>b>>>0|n>>>0>c>>>0,K=(n|0)==(E|0)&d>>>0<f>>>0|n>>>0<E>>>0,e=R+8|0,j=t[e>>2],H=t[e+4>>2],L=(E|0)==(k|0)&f>>>0<T>>>0|E>>>0<k>>>0,e=X+8|0,R=t[e>>2],E=t[e+4>>2],f=(k|0)==(u0|0)&T>>>0<Y>>>0|k>>>0<u0>>>0,d=s0+8|0,n=t[d>>2],e=_+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,n=f+T|0,e=(n>>>0<T>>>0?e+1|0:e)+E|0,d=n,n=n+R|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+L|0,e=(d>>>0>n>>>0?e+1|0:e)+H|0,d=n,n=n+j|0,e=d>>>0>n>>>0?e+1|0:e,d=n+K|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+Z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,f=n<<12|s>>>20,d=e,c=e<<12|n>>>20,L=t[o+432>>2],n=t[o+512>>2],T=L+n|0,Y=t[o+436>>2],e=Y+t[o+516>>2]|0,n=n>>>0>T>>>0?e+1|0:e,e=n+c|0,f=f+T|0,e=f>>>0<T>>>0?e+1|0:e,R=f<<4&-16,c=e,k=(e<<4|f>>>28)&16777215,E=s,P(t0,R|s>>>16&15,k,0,0,977,1,0,0),Z=o+592|0,P(Z,N,A,0,0,C,V,0,0),K=o+400|0,P(K,S,z,0,0,I,g,0,0),j=o+624|0,P(j,h,y,0,0,h,y,0,0),H=o+384|0,R=H,k=(n|0)==(e|0)&f>>>0<T>>>0|n>>>0>e>>>0,f=(n|0)==(Y|0)&T>>>0<L>>>0|n>>>0<Y>>>0,s=e0+8|0,n=t[s>>2],e=$+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,s=f+T|0,e=s>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=s+d|0,e=d>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|c>>>20,s=e,k=e<<12|n>>>20,Y=t[o+404>>2],e=Y+t[o+628>>2]|0,T=t[o+400>>2],n=t[o+624>>2],d=T+n|0,f=d,c=d+c|0,n=n>>>0>d>>>0?e+1|0:e,e=n+k|0,d=c>>>0<d>>>0?e+1|0:e,P(R,c,d&1048575,0,0,15632,16,0,0),L=o+528|0,P(L,I,g,0,0,C,V,0,0),R=o+576|0,P(R,N,A,0,0,N,A,0,0),g=o+368|0,P(g,S,z,0,0,h,y,0,0),z=o+352|0,h=z,y=(n|0)==(d|0)&c>>>0<f>>>0|n>>>0>d>>>0,f=(n|0)==(Y|0)&f>>>0<T>>>0|n>>>0<Y>>>0,c=j+8|0,n=t[c>>2],e=K+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,c=f+A|0,e=c>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+c|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,c=n<<12|d>>>20,d=t[o+368>>2],y=c+d|0,s=e,n=e<<12|n>>>20,e=n+t[o+372>>2]|0,e=d>>>0>y>>>0?e+1|0:e,P(h,y,e,0,0,15632,16,0,0),k=o+336|0,f=k,c=(e|0)==(n|0)&c>>>0>y>>>0|e>>>0<n>>>0,e=g+8|0,d=t[e>>2],e=t[e+4>>2],s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+c|0,e=s>>>0>n>>>0?e+1|0:e,P(f,n,e,0,0,64028672,65536,0,0),s=t[o+416>>2],n=t[o+656>>2],h=s+n|0,c=t[o+420>>2],e=c+t[o+660>>2]|0,d=n>>>0>h>>>0?e+1|0:e,c=(c|0)==(d|0)&s>>>0>h>>>0|c>>>0>d>>>0,s=r0+8|0,n=t[s>>2],e=t0+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=n>>>0<f>>>0?e+1|0:e,T=d,f=n<<12|d>>>20,s=e,c=e<<12|n>>>20,y=t[o+384>>2],n=t[o+592>>2],d=y+n|0,A=t[o+388>>2],e=A+t[o+596>>2]|0,e=n>>>0>d>>>0?e+1|0:e,n=f,f=d,d=n+d|0,n=e,e=e+c|0,c=d>>>0<f>>>0?e+1|0:e,g=(n|0)==(c|0)&d>>>0<f>>>0|n>>>0>c>>>0,y=(n|0)==(A|0)&f>>>0<y>>>0|n>>>0<A>>>0,f=Z+8|0,n=t[f>>2],e=H+8|0,A=n+t[e>>2]|0,e=t[e+4>>2]+t[f+4>>2]|0,e=n>>>0>A>>>0?e+1|0:e,f=y+A|0,e=f>>>0<A>>>0?e+1|0:e,s=s>>>20|0,n=s+f|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+g|0,e=s>>>0>n>>>0?e+1|0:e,A=c,f=n<<12|c>>>20,s=e,c=e<<12|n>>>20,S=t[o+528>>2],n=t[o+576>>2],g=S+n|0,H=t[o+532>>2],e=H+t[o+580>>2]|0,e=n>>>0>g>>>0?e+1|0:e,n=t[o+352>>2],y=n+g|0,I=e,e=e+t[o+356>>2]|0,n=n>>>0>y>>>0?e+1|0:e,e=n+c|0,c=f+y|0,f=c>>>0<y>>>0?e+1|0:e,V=(n|0)==(f|0)&c>>>0<y>>>0|n>>>0>f>>>0,C=(n|0)==(I|0)&y>>>0<g>>>0|n>>>0<I>>>0,e=z+8|0,N=t[e>>2],z=t[e+4>>2],g=(I|0)==(H|0)&g>>>0<S>>>0|I>>>0<H>>>0,y=R+8|0,n=t[y>>2],e=L+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,n=g+I|0,e=(n>>>0<I>>>0?e+1|0:e)+z|0,g=n,n=n+N|0,e=g>>>0>n>>>0?e+1|0:e,y=n+C|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+V|0,e=s>>>0>n>>>0?e+1|0:e,g=f,y=n<<12|f>>>20,s=e,f=e<<12|n>>>20,N=t[o+336>>2],x=N+(x&-2)|0,z=t[o+340>>2],e=z+(w&1048575)|0,n=x>>>0<N>>>0?e+1|0:e,e=n+f|0,w=b,I=E&65535,y=y+x|0,f=y>>>0<x>>>0?e+1|0:e,b=y,E=(n|0)==(f|0)&y>>>0<x>>>0|n>>>0>f>>>0,n=(n|0)==(z|0)&x>>>0<N>>>0|n>>>0<z>>>0,e=k+8|0,y=n+t[e>>2]|0,e=t[e+4>>2],e=n>>>0>y>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+E|0,e=s>>>0>n>>>0?e+1|0:e,s=f,y=n<<12|s>>>20,f=y+w|0,e=I+(e<<12|n>>>20)|0,n=f,f=n>>>0<y>>>0?e+1|0:e,y=s&1048575,g=g&1048575,w=A&1048575,s=h,h=T&1048575,r=r-1|0,!!r;);t[o+7168>>2]=n,t[o+7172>>2]=f,t[o+7160>>2]=b,t[o+7164>>2]=y,t[o+7152>>2]=c,t[o+7156>>2]=g,t[o+7144>>2]=d,t[o+7148>>2]=w,t[o+7136>>2]=s,t[o+7140>>2]=h,s0=o+7136|0,U0(s0,s0,o+7576|0),r=t[o+7140>>2],A=r,w=t[o+7136>>2],c=w,e=r<<1|c>>>31,h=o- -64|0,I=t[o+7160>>2],x=t[o+7164>>2],V=c<<1,S=e,P(h,I,x,0,0,V,e,0,0),r=t[o+7148>>2],X=r,_=t[o+7144>>2],n=_,e=r<<1|n>>>31,y=o+272|0,N=t[o+7152>>2],E=t[o+7156>>2],n=n<<1,s=e,P(y,N,E,0,0,n,e,0,0),f=o+224|0,d=t[o+7168>>2],r=t[o+7172>>2],P(f,d,r,0,0,d,r,0,0),b=o+208|0,P(b,t[o+224>>2],t[o+228>>2],0,0,15632,16,0,0),e=r<<1|d>>>31,t0=o+176|0,R=d<<1,C=e,P(t0,R,e,0,0,c,A,0,0),Z=o+80|0,P(Z,I,x,0,0,n,s,0,0),K=o+256|0,P(K,N,E,0,0,N,E,0,0),g=o+192|0,r=f+8|0,P(g,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),r0=o+320|0,P(r0,c,A,0,0,c,A,0,0),$=o+160|0,P($,R,e,0,0,_,X,0,0),e0=o+96|0,P(e0,I,x,0,0,N<<1,E<<1|N>>>31,0,0),w=t[o+68>>2],e=w+t[o+276>>2]|0,d=t[o+64>>2],n=t[o+272>>2],r=d+n|0,s=t[o+208>>2],T=r+s|0,n=r>>>0<n>>>0?e+1|0:e,e=n+t[o+212>>2]|0,s=s>>>0>T>>>0?e+1|0:e,f=(n|0)==(s|0)&r>>>0>T>>>0|n>>>0>s>>>0,e=b+8|0,b=t[e>>2],c=t[e+4>>2],d=(n|0)==(w|0)&r>>>0<d>>>0|n>>>0<w>>>0,e=y+8|0,n=t[e>>2],r=h+8|0,y=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>y>>>0?e+1|0:e,r=d+y|0,e=(r>>>0<y>>>0?e+1|0:e)+c|0,n=r,r=r+b|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+f|0,e=n>>>0>r>>>0?e+1|0:e,A=s,c=r<<12|s>>>20,n=e,d=e<<12|r>>>20,j=t[o+80>>2],r=t[o+256>>2],y=j+r|0,Y=t[o+84>>2],e=Y+t[o+260>>2]|0,e=r>>>0>y>>>0?e+1|0:e,r=t[o+176>>2],f=r+y|0,w=e,e=e+t[o+180>>2]|0,e=r>>>0>f>>>0?e+1|0:e,r=t[o+192>>2],s=r+f|0,h=e,e=e+t[o+196>>2]|0,r=r>>>0>s>>>0?e+1|0:e,e=r+d|0,d=o,b=s+c|0,c=b>>>0<s>>>0?e+1|0:e,H=(r|0)==(c|0)&s>>>0>b>>>0|r>>>0>c>>>0,L=(r|0)==(h|0)&s>>>0<f>>>0|r>>>0<h>>>0,r=g+8|0,k=t[r>>2],z=t[r+4>>2],o=(h|0)==(w|0)&f>>>0<y>>>0|h>>>0<w>>>0,r=t0+8|0,g=t[r>>2],h=t[r+4>>2],f=(w|0)==(Y|0)&y>>>0<j>>>0|w>>>0<Y>>>0,e=K+8|0,s=t[e>>2],r=Z+8|0,y=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>y>>>0?e+1|0:e,r=f+y|0,e=(r>>>0<y>>>0?e+1|0:e)+h|0,s=r,r=r+g|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+o|0,e=(s>>>0>r>>>0?e+1|0:e)+z|0,s=r,r=r+k|0,e=s>>>0>r>>>0?e+1|0:e,s=r+L|0,e=s>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+s|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=n>>>0>r>>>0?e+1|0:e,n=c,y=r<<12|n>>>20,s=e,f=e<<12|r>>>20,g=t[d+160>>2],r=t[d+96>>2],c=g+r|0,k=t[d+164>>2],e=k+t[d+100>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+f|0,h=c,c=c+y|0,w=c<<4&-16,f=c>>>0<h>>>0?e+1|0:e,y=(f<<4|c>>>28)&16777215,o=n,P(d,w|n>>>16&15,y,0,0,977,1,0,0),H=t[d+4>>2],e=H+t[d+324>>2]|0,L=t[d>>2],n=t[d+320>>2],y=L+n|0,t[d+7136>>2]=y,n=n>>>0>y>>>0?e+1|0:e,t[d+7140>>2]=n&1048575,Y=d+304|0,P(Y,_,X,0,0,V,S,0,0),t0=d+144|0,P(t0,R,C,0,0,N,E,0,0),Z=d+112|0,P(Z,I,x,0,0,I,x,0,0),K=d+48|0,z=K,w=(r|0)==(f|0)&c>>>0<h>>>0|r>>>0>f>>>0,h=(r|0)==(k|0)&h>>>0<g>>>0|r>>>0<k>>>0,e=e0+8|0,c=t[e>>2],r=$+8|0,g=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>g>>>0?e+1|0:e,c=h+g|0,e=c>>>0<g>>>0?e+1|0:e,s=s>>>20|0,r=s+c|0,e=s>>>0>r>>>0?e+1|0:e,s=r,r=r+w|0,e=s>>>0>r>>>0?e+1|0:e,h=r<<12|f>>>20,c=e,f=e<<12|r>>>20,$=t[d+148>>2],e=$+t[d+116>>2]|0,j=t[d+144>>2],s=t[d+112>>2],r=j+s|0,k=r,g=r+h|0,s=r>>>0<s>>>0?e+1|0:e,e=s+f|0,h=g>>>0<r>>>0?e+1|0:e,P(z,g,h&1048575,0,0,15632,16,0,0),f=d,y=(n|0)==(H|0)&y>>>0<L>>>0|n>>>0<H>>>0,e=r0+8|0,d=t[e>>2],r=f+8|0,w=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>w>>>0?e+1|0:e,r=y+w|0,e=r>>>0<w>>>0?e+1|0:e,w=r<<12|n>>>20,d=e,y=e<<12|r>>>20,H=t[f+48>>2],r=t[f+304>>2],z=H+r|0,e0=t[f+52>>2],e=e0+t[f+308>>2]|0,n=r>>>0>z>>>0?e+1|0:e,e=n+y|0,w=w+z|0,e=w>>>0<z>>>0?e+1|0:e,t[f+7144>>2]=w,y=e,t[f+7148>>2]=e&1048575,L=f+240|0,P(L,N,E,0,0,V,S,0,0),S=f+288|0,P(S,_,X,0,0,_,X,0,0),V=f+128|0,P(V,R,C,0,0,I,x,0,0),N=f+32|0,I=N,E=(s|0)==(h|0)&g>>>0<k>>>0|s>>>0>h>>>0,g=(s|0)==($|0)&k>>>0<j>>>0|s>>>0<$>>>0,e=Z+8|0,s=t[e>>2],r=t0+8|0,x=s+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=s>>>0>x>>>0?e+1|0:e,s=g+x|0,e=s>>>0<x>>>0?e+1|0:e,c=c>>>20|0,r=s+c|0,e=c>>>0>r>>>0?e+1|0:e,s=r,r=r+E|0,e=s>>>0>r>>>0?e+1|0:e,x=r<<12|h>>>20,c=t[f+128>>2],h=x+c|0,s=e,k=e<<12|r>>>20,e=k+t[f+132>>2]|0,g=c>>>0>h>>>0?e+1|0:e,P(I,h,g,0,0,15632,16,0,0),c=f,w=(n|0)==(y|0)&w>>>0<z>>>0|n>>>0>y>>>0,f=(n|0)==(e0|0)&z>>>0<H>>>0|n>>>0<e0>>>0,e=Y+8|0,n=t[e>>2],r=K+8|0,E=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>E>>>0?e+1|0:e,n=f+E|0,e=n>>>0<E>>>0?e+1|0:e,d=d>>>20|0,r=n+d|0,e=d>>>0>r>>>0?e+1|0:e,n=r,r=r+w|0,e=n>>>0>r>>>0?e+1|0:e,f=r<<12|y>>>20,n=e,d=e<<12|r>>>20,z=t[c+240>>2],r=t[c+288>>2],w=z+r|0,C=t[c+244>>2],e=C+t[c+292>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[c+32>>2],y=r+w|0,E=e,e=e+t[c+36>>2]|0,r=r>>>0>y>>>0?e+1|0:e,e=r+d|0,f=f+y|0,e=f>>>0<y>>>0?e+1|0:e,t[c+7152>>2]=f,d=e,t[c+7156>>2]=e&1048575,I=c+16|0,x=(g|0)==(k|0)&h>>>0<x>>>0|g>>>0<k>>>0,e=V+8|0,g=t[e>>2],e=t[e+4>>2],s=s>>>20|0,h=s,s=s+g|0,e=h>>>0>s>>>0?e+1|0:e,h=s,s=s+x|0,e=h>>>0>s>>>0?e+1|0:e,P(I,s,e,0,0,64028672,65536,0,0),s=c,x=(r|0)==(d|0)&f>>>0<y>>>0|r>>>0>d>>>0,g=(r|0)==(E|0)&y>>>0<w>>>0|r>>>0<E>>>0,r=N+8|0,h=t[r>>2],y=t[r+4>>2],f=(E|0)==(C|0)&w>>>0<z>>>0|E>>>0<C>>>0,e=S+8|0,c=t[e>>2],r=L+8|0,w=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>w>>>0?e+1|0:e,r=f+w|0,e=(r>>>0<w>>>0?e+1|0:e)+y|0,c=r,r=r+h|0,e=c>>>0>r>>>0?e+1|0:e,c=r+g|0,e=c>>>0<r>>>0?e+1|0:e,n=n>>>20|0,r=n+c|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+x|0,e=n>>>0>r>>>0?e+1|0:e,c=r<<12|d>>>20,n=e,y=e<<12|r>>>20,w=t[s+16>>2],d=T&-2,r=w+d|0,g=t[s+20>>2],e=g+(A&1048575)|0,f=r>>>0<d>>>0?e+1|0:e,e=f+y|0,d=c,c=r,d=d+r|0,t[s+7160>>2]=d,r=r>>>0>d>>>0?e+1|0:e,t[s+7164>>2]=r&1048575,A=s,h=o&65535,y=(r|0)==(f|0)&c>>>0>d>>>0|r>>>0<f>>>0,s=(f|0)==(g|0)&c>>>0<w>>>0|f>>>0<g>>>0,e=I+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,n=n>>>20|0,s=n,n=n+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+y|0,e=s>>>0>n>>>0?e+1|0:e,r=n<<12|r>>>20,s=r+b|0,e=h+(e<<12|n>>>20)|0,t[A+7168>>2]=s,t[A+7172>>2]=r>>>0>s>>>0?e+1|0:e,r=i+40|0,Ve(r,s0),Ve(s0,r),e=t[A+7080>>2],r=t[A+7160>>2],E=e-r|0,T=t[A+7084>>2]-(t[A+7164>>2]+(r>>>0>e>>>0)|0)|0,e=t[A+7072>>2],r=t[A+7152>>2],o=e-r|0,g=t[A+7076>>2]-(t[A+7156>>2]+(r>>>0>e>>>0)|0)|0,e=t[A+7064>>2],r=t[A+7144>>2],f=e-r|0,b=t[A+7068>>2]-(t[A+7148>>2]+(r>>>0>e>>>0)|0)|0,e=t[A+7056>>2],r=t[A+7136>>2],c=e-r|0,s=t[A+7060>>2]-(t[A+7140>>2]+(r>>>0>e>>>0)|0)|0,n=t[A+7088>>2],e=t[A+7168>>2],r=(n-e|0)-4|0,e=(t[A+7092>>2]-(t[A+7172>>2]+(e>>>0>n>>>0)|0)|0)+262143|0,d=r>>>0<4294967292?e+1|0:e,n=I0(d>>>16|0,0,977,1),c=n+c|0,e=s+i0|0,e=(n>>>0>c>>>0?e+1|0:e)+4194299|0,n=c-3908|0,e=n>>>0<4294963388?e+1|0:e,w=n,h=e,e=b,n=h>>>20|0,s=n,n=n+f|0,e=(s>>>0>n>>>0?e+1|0:e)+4194303|0,n=n-4|0,e=n>>>0<4294967292?e+1|0:e,y=n,f=e,e=g,n=f>>>20|0,s=n,n=n+o|0,e=(s>>>0>n>>>0?e+1|0:e)+4194303|0,n=n-4|0,e=n>>>0<4294967292?e+1|0:e,b=n,c=e,e=T,n=c>>>20|0,s=n,n=n+E|0,e=(s>>>0>n>>>0?e+1|0:e)+4194303|0,s=n-4|0,n=s>>>0<4294967292?e+1|0:e,g=d&65535,d=s,e=g,s=n>>>20|0,T=s,s=r+s|0,e=T>>>0>s>>>0?e+1|0:e;t:{if(s|(d|(y|w|b))|(e|(f|h|c|n)&1048575)&&(r=0,(y&(w^976)&b&d&s)!=-1?e=1:e=(f&(h^1)&c&n&(e^983040))!=1048575,e)||(r=i+48|0,b=t[r>>2],d=t[r+4>>2],n=t[i+44>>2],r=i+72|0,y=t[r>>2],r=t[r+4>>2],T=r,e=t[i+40>>2],r=I0(r>>>16|0,0,977,1),c=e+r|0,e=n+i0|0,g=r>>>0>c>>>0?e+1|0:e,e=d,r=g>>>20|0,d=r+b|0,r=r>>>0>d>>>0?e+1|0:e,w=r&1048575,e=i- -64|0,h=t[e>>2],f=t[e+4>>2],e=i+56|0,s=t[e>>2],e=t[e+4>>2],b=r>>>20|0,n=s+b|0,b=b>>>0>n>>>0?e+1|0:e,e=f,s=b>>>20|0,f=s,s=s+h|0,e=f>>>0>s>>>0?e+1|0:e,h=e&1048575,f=b&1048575,o=(n&d&s)==-1&(r&f&e)==1048575,r=e,e=T&65535,r=r>>>20|0,b=r+y|0,e=r>>>0>b>>>0?e+1|0:e,y=e,g=g&1048575,o&((b|0)==-1&(e|0)==65535)&((g|0)==1048574&c>>>0>4294966318|g>>>0>1048574)|e>>>16&&(e=g+1|0,c=c+977|0,e=c>>>0<977?e+1|0:e,g=e&1048575,r=e,e=w,r=r>>>20|0,d=r+d|0,e=r>>>0>d>>>0?e+1|0:e,w=e&1048575,r=e,e=f,r=r>>>20|0,n=r+n|0,e=r>>>0>n>>>0?e+1|0:e,f=e&1048575,r=e,e=h,r=r>>>20|0,s=r+s|0,e=r>>>0>s>>>0?e+1|0:e,h=e&1048575,r=e,e=y,T=b,b=(r>>>20|0)+b|0,y=(T>>>0>b>>>0?e+1|0:e)&65535),t[i+72>>2]=b,t[i+76>>2]=y,t[i+64>>2]=s,t[i+68>>2]=h,t[i+56>>2]=n,t[i+60>>2]=f,t[i+48>>2]=d,t[i+52>>2]=w,t[i+40>>2]=c,t[i+44>>2]=g,r=1,(c&1)==(a|0)))break t;t[i+72>>2]=-4-b,t[i+76>>2]=262143-((b>>>0>4294967292)+y|0),t[i+64>>2]=-4-s,t[i+68>>2]=4194303-((s>>>0>4294967292)+h|0),t[i+56>>2]=-4-n,t[i+60>>2]=4194303-((n>>>0>4294967292)+f|0),t[i+48>>2]=-4-d,t[i+52>>2]=4194303-((d>>>0>4294967292)+w|0),t[i+40>>2]=-3908-c,t[i+44>>2]=4194299-((c>>>0>4294963388)+g|0)}return D=A+7616|0,r}function U0(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0,V0=0,q0=0,Z0=0,Y0=0,K0=0,Q0=0,J0=0,_0=0,$0=0,ee=0,ae=0,oe=0,ce=0,de=0;e=D-496|0,D=e,k=e- -64|0,Y=t[a+24>>2],K=t[a+28>>2],X=t[r>>2],_=t[r+4>>2],P(k,Y,K,0,0,X,_,0,0),I=e+208|0,$=t[a+16>>2],e0=t[a+20>>2],t0=t[r+8>>2],r0=t[r+12>>2],P(I,$,e0,0,0,t0,r0,0,0),A=e+320|0,s0=t[a+8>>2],u0=t[a+12>>2],d0=t[r+16>>2],l0=t[r+20>>2],P(A,s0,u0,0,0,d0,l0,0,0),y=e+400|0,b0=t[a>>2],g0=t[a+4>>2],x0=t[r+24>>2],C0=t[r+28>>2],P(y,b0,g0,0,0,x0,C0,0,0),n=e+480|0,M0=t[a+32>>2],R0=t[a+36>>2],E0=t[r+32>>2],N=t[r+36>>2],P(n,M0,R0,0,0,E0,N,0,0),f=e+464|0,P(f,t[e+480>>2],t[e+484>>2],0,0,15632,16,0,0),C=e+80|0,P(C,M0,R0,0,0,X,_,0,0),k0=e+144|0,P(k0,Y,K,0,0,t0,r0,0,0),V0=e+272|0,P(V0,$,e0,0,0,d0,l0,0,0),q0=e+368|0,P(q0,s0,u0,0,0,x0,C0,0,0),z=e+432|0,P(z,b0,g0,0,0,E0,N,0,0),T=e+448|0,r=n+8|0,P(T,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),Z0=e+96|0,P(Z0,b0,g0,0,0,X,_,0,0),Y0=e+224|0,P(Y0,M0,R0,0,0,t0,r0,0,0),K0=e+160|0,P(K0,Y,K,0,0,d0,l0,0,0),Q0=e+288|0,P(Q0,$,e0,0,0,x0,C0,0,0),V=e+384|0,P(V,s0,u0,0,0,E0,N,0,0),w=t[e+208>>2],a=t[e+64>>2],E=w+a|0,x=t[e+212>>2],r=x+t[e+68>>2]|0,r=a>>>0>E>>>0?r+1|0:r,a=t[e+320>>2],d=a+E|0,n=r,r=r+t[e+324>>2]|0,c=a>>>0>d>>>0?r+1|0:r,r=c+t[e+404>>2]|0,a=t[e+400>>2],o=a+d|0,s=t[e+464>>2],J0=o+s|0,a=a>>>0>o>>>0?r+1|0:r,r=a+t[e+468>>2]|0,s=s>>>0>J0>>>0?r+1|0:r,h=(a|0)==(s|0)&o>>>0>J0>>>0|a>>>0>s>>>0,r=f+8|0,_0=t[r>>2],H=t[r+4>>2],b=(a|0)==(c|0)&d>>>0>o>>>0|a>>>0<c>>>0,r=y+8|0,g=t[r>>2],y=t[r+4>>2],f=(n|0)==(c|0)&d>>>0<E>>>0|n>>>0>c>>>0,r=A+8|0,c=t[r>>2],d=t[r+4>>2],o=(n|0)==(x|0)&w>>>0>E>>>0|n>>>0<x>>>0,n=k+8|0,a=t[n>>2],r=I+8|0,E=a+t[r>>2]|0,r=t[r+4>>2]+t[n+4>>2]|0,r=a>>>0>E>>>0?r+1|0:r,a=o+E|0,r=(a>>>0<E>>>0?r+1|0:r)+d|0,n=a,a=a+c|0,r=n>>>0>a>>>0?r+1|0:r,n=a,a=a+f|0,r=(n>>>0>a>>>0?r+1|0:r)+y|0,n=a,a=a+g|0,r=n>>>0>a>>>0?r+1|0:r,n=a,a=a+b|0,r=(n>>>0>a>>>0?r+1|0:r)+H|0,n=a,a=a+_0|0,r=n>>>0>a>>>0?r+1|0:r,n=a,a=a+h|0,r=n>>>0>a>>>0?r+1|0:r,_0=s,E=a<<12|s>>>20,n=r,o=r<<12|a>>>20,S=t[e+272>>2],a=t[e+144>>2],y=S+a|0,j=t[e+276>>2],r=j+t[e+148>>2]|0,r=a>>>0>y>>>0?r+1|0:r,a=t[e+368>>2],f=a+y|0,h=r,r=r+t[e+372>>2]|0,r=a>>>0>f>>>0?r+1|0:r,a=t[e+432>>2],c=a+f|0,H=r,r=r+t[e+436>>2]|0,r=a>>>0>c>>>0?r+1|0:r,a=t[e+80>>2],d=a+c|0,b=r,r=r+t[e+84>>2]|0,r=a>>>0>d>>>0?r+1|0:r,a=t[e+448>>2],s=a+d|0,g=r,r=r+t[e+452>>2]|0,a=a>>>0>s>>>0?r+1|0:r,r=a+o|0,E=s+E|0,o=E>>>0<s>>>0?r+1|0:r,L=(a|0)==(o|0)&s>>>0>E>>>0|a>>>0>o>>>0,R=(a|0)==(g|0)&s>>>0<d>>>0|a>>>0<g>>>0,r=T+8|0,x=t[r>>2],k=t[r+4>>2],I=(b|0)==(g|0)&d>>>0<c>>>0|b>>>0>g>>>0,r=C+8|0,A=t[r>>2],C=t[r+4>>2],T=(b|0)==(H|0)&c>>>0<f>>>0|b>>>0<H>>>0,r=z+8|0,w=t[r>>2],b=t[r+4>>2],g=(h|0)==(H|0)&y>>>0>f>>>0|h>>>0>H>>>0,r=q0+8|0,f=t[r>>2],c=t[r+4>>2],d=(h|0)==(j|0)&y>>>0<S>>>0|h>>>0<j>>>0,s=k0+8|0,a=t[s>>2],r=V0+8|0,y=a+t[r>>2]|0,r=t[r+4>>2]+t[s+4>>2]|0,r=a>>>0>y>>>0?r+1|0:r,a=d+y|0,r=(a>>>0<y>>>0?r+1|0:r)+c|0,s=a,a=a+f|0,r=s>>>0>a>>>0?r+1|0:r,s=a,a=a+g|0,r=(s>>>0>a>>>0?r+1|0:r)+b|0,s=a,a=a+w|0,r=s>>>0>a>>>0?r+1|0:r,s=a,a=a+T|0,r=(s>>>0>a>>>0?r+1|0:r)+C|0,s=a,a=a+A|0,r=s>>>0>a>>>0?r+1|0:r,s=a,a=a+I|0,r=(s>>>0>a>>>0?r+1|0:r)+k|0,s=a,a=a+x|0,r=s>>>0>a>>>0?r+1|0:r,s=a+R|0,r=s>>>0<a>>>0?r+1|0:r,n=n>>>20|0,a=n+s|0,r=n>>>0>a>>>0?r+1|0:r,n=a,a=a+L|0,r=n>>>0>a>>>0?r+1|0:r,n=o,d=a<<12|n>>>20,s=r,o=r<<12|a>>>20,R=t[e+288>>2],a=t[e+160>>2],b=R+a|0,S=t[e+292>>2],r=S+t[e+164>>2]|0,r=a>>>0>b>>>0?r+1|0:r,a=t[e+384>>2],g=a+b|0,w=r,r=r+t[e+388>>2]|0,r=a>>>0>g>>>0?r+1|0:r,a=t[e+224>>2],y=a+g|0,h=r,r=r+t[e+228>>2]|0,a=a>>>0>y>>>0?r+1|0:r,r=a+o|0,d=d+y|0,r=d>>>0<y>>>0?r+1|0:r,f=d<<4&-16,o=r,c=(r<<4|d>>>28)&16777215,H=n,P(e,f|n>>>16&15,c,0,0,977,1,0,0),L=t[e+4>>2],r=L+t[e+100>>2]|0,c=i,x=t[e>>2],i=t[e+96>>2],f=x+i|0,t[c>>2]=f,n=i>>>0>f>>>0?r+1|0:r,t[c+4>>2]=n&1048575,ae=e+112|0,P(ae,s0,u0,0,0,X,_,0,0),oe=e+240|0,P(oe,b0,g0,0,0,t0,r0,0,0),ce=e+336|0,P(ce,M0,R0,0,0,d0,l0,0,0),Z=e+176|0,P(Z,Y,K,0,0,x0,C0,0,0),z=e+304|0,P(z,$,e0,0,0,E0,N,0,0),de=e+48|0,k=de,I=(a|0)==(o|0)&d>>>0<y>>>0|a>>>0>o>>>0,A=(a|0)==(h|0)&y>>>0<g>>>0|a>>>0<h>>>0,i=Y0+8|0,C=t[i>>2],T=t[i+4>>2],h=(h|0)==(w|0)&b>>>0>g>>>0|h>>>0<w>>>0,i=V+8|0,g=t[i>>2],y=t[i+4>>2],d=(w|0)==(S|0)&b>>>0<R>>>0|w>>>0<S>>>0,r=K0+8|0,a=t[r>>2],i=Q0+8|0,b=a+t[i>>2]|0,r=t[i+4>>2]+t[r+4>>2]|0,r=a>>>0>b>>>0?r+1|0:r,i=d+b|0,r=(i>>>0<b>>>0?r+1|0:r)+y|0,a=i,i=i+g|0,r=a>>>0>i>>>0?r+1|0:r,a=i,i=i+h|0,r=(a>>>0>i>>>0?r+1|0:r)+T|0,a=i,i=i+C|0,r=a>>>0>i>>>0?r+1|0:r,a=i+A|0,r=a>>>0<i>>>0?r+1|0:r,s=s>>>20|0,i=a+s|0,r=s>>>0>i>>>0?r+1|0:r,a=i,i=i+I|0,r=a>>>0>i>>>0?r+1|0:r,s=i<<12|o>>>20,d=r,a=r<<12|i>>>20,V=t[e+304>>2],i=t[e+176>>2],w=V+i|0,$0=t[e+308>>2],r=$0+t[e+180>>2]|0,r=i>>>0>w>>>0?r+1|0:r,i=t[e+336>>2],h=i+w|0,T=r,r=r+t[e+340>>2]|0,o=i>>>0>h>>>0?r+1|0:r,r=o+a|0,b=s+h|0,r=b>>>0<h>>>0?r+1|0:r,y=r,P(k,b,r&1048575,0,0,15632,16,0,0),s=(n|0)==(L|0)&f>>>0<x>>>0|n>>>0<L>>>0,r=Z0+8|0,a=t[r>>2],i=e+8|0,f=a+t[i>>2]|0,r=t[i+4>>2]+t[r+4>>2]|0,r=a>>>0>f>>>0?r+1|0:r,i=s+f|0,r=i>>>0<f>>>0?r+1|0:r,g=i<<12|n>>>20,s=r,f=r<<12|i>>>20,j=t[e+240>>2],i=t[e+112>>2],A=j+i|0,ee=t[e+244>>2],r=ee+t[e+116>>2]|0,R=i>>>0>A>>>0?r+1|0:r,r=R+t[e+52>>2]|0,a=t[e+48>>2],i=a+A|0,I=i,g=i+g|0,n=i>>>0<a>>>0?r+1|0:r,r=n+f|0,t[c+8>>2]=g,f=g>>>0<i>>>0?r+1|0:r,t[c+12>>2]=f&1048575,k0=e+128|0,P(k0,$,e0,0,0,X,_,0,0),V0=e+256|0,P(V0,s0,u0,0,0,t0,r0,0,0),q0=e+352|0,P(q0,b0,g0,0,0,d0,l0,0,0),Z0=e+416|0,P(Z0,M0,R0,0,0,x0,C0,0,0),Y0=e+192|0,P(Y0,Y,K,0,0,E0,N,0,0),K0=e+32|0,S=K0,Q0=t[e+416>>2],i=t[e+192>>2],C=Q0+i|0,N=t[e+420>>2],r=N+t[e+196>>2]|0,a=i>>>0>C>>>0?r+1|0:r,L=(o|0)==(y|0)&b>>>0<h>>>0|o>>>0>y>>>0,x=(o|0)==(T|0)&h>>>0<w>>>0|o>>>0<T>>>0,i=ce+8|0,k=t[i>>2],h=t[i+4>>2],b=(T|0)==($0|0)&w>>>0<V>>>0|T>>>0<$0>>>0,r=Z+8|0,o=t[r>>2],i=z+8|0,w=o+t[i>>2]|0,r=t[i+4>>2]+t[r+4>>2]|0,r=o>>>0>w>>>0?r+1|0:r,i=b+w|0,r=(i>>>0<w>>>0?r+1|0:r)+h|0,o=i,i=i+k|0,r=o>>>0>i>>>0?r+1|0:r,o=i+x|0,r=o>>>0<i>>>0?r+1|0:r,d=d>>>20|0,i=d+o|0,r=d>>>0>i>>>0?r+1|0:r,o=i,i=i+L|0,r=o>>>0>i>>>0?r+1|0:r,d=i<<12|y>>>20,y=d+C|0,o=r,r=a+(r<<12|i>>>20)|0,T=d>>>0>y>>>0?r+1|0:r,P(S,y,T,0,0,15632,16,0,0),d=c,z=t[e+256>>2],i=t[e+128>>2],w=z+i|0,Z=t[e+260>>2],r=Z+t[e+132>>2]|0,r=i>>>0>w>>>0?r+1|0:r,i=t[e+352>>2],h=i+w|0,x=r,r=r+t[e+356>>2]|0,r=i>>>0>h>>>0?r+1|0:r,i=t[e+32>>2],b=i+h|0,k=r,r=r+t[e+36>>2]|0,i=i>>>0>b>>>0?r+1|0:r,V=(n|0)==(f|0)&g>>>0<I>>>0|n>>>0>f>>>0,S=(n|0)==(R|0)&A>>>0>I>>>0|n>>>0<R>>>0,r=de+8|0,L=t[r>>2],I=t[r+4>>2],g=(R|0)==(ee|0)&A>>>0<j>>>0|R>>>0<ee>>>0,c=ae+8|0,n=t[c>>2],r=oe+8|0,A=n+t[r>>2]|0,r=t[r+4>>2]+t[c+4>>2]|0,r=n>>>0>A>>>0?r+1|0:r,n=g+A|0,r=(n>>>0<A>>>0?r+1|0:r)+I|0,c=n,n=n+L|0,r=c>>>0>n>>>0?r+1|0:r,c=n+S|0,r=c>>>0<n>>>0?r+1|0:r,s=s>>>20|0,n=s+c|0,r=s>>>0>n>>>0?r+1|0:r,s=n,n=n+V|0,r=s>>>0>n>>>0?r+1|0:r,c=n<<12|f>>>20,f=c+b|0,s=r,r=i+(r<<12|n>>>20)|0,t[d+16>>2]=f,c=c>>>0>f>>>0?r+1|0:r,t[d+20>>2]=c&1048575,A=e+16|0,g=(a|0)==(T|0)&y>>>0<C>>>0|a>>>0>T>>>0,y=(a|0)==(N|0)&C>>>0<Q0>>>0|a>>>0<N>>>0,n=Y0+8|0,a=t[n>>2],r=Z0+8|0,T=a+t[r>>2]|0,r=t[r+4>>2]+t[n+4>>2]|0,r=a>>>0>T>>>0?r+1|0:r,n=y+T|0,r=n>>>0<T>>>0?r+1|0:r,o=o>>>20|0,a=n+o|0,r=o>>>0>a>>>0?r+1|0:r,n=a,a=a+g|0,r=n>>>0>a>>>0?r+1|0:r,P(A,a,r,0,0,64028672,65536,0,0),n=d,C=(i|0)==(c|0)&f>>>0<b>>>0|i>>>0>c>>>0,T=(i|0)==(k|0)&b>>>0<h>>>0|i>>>0<k>>>0,i=K0+8|0,b=t[i>>2],g=t[i+4>>2],y=(x|0)==(k|0)&h>>>0<w>>>0|x>>>0>k>>>0,i=q0+8|0,f=t[i>>2],d=t[i+4>>2],o=(x|0)==(Z|0)&w>>>0<z>>>0|x>>>0<Z>>>0,r=k0+8|0,a=t[r>>2],i=V0+8|0,h=a+t[i>>2]|0,r=t[i+4>>2]+t[r+4>>2]|0,r=a>>>0>h>>>0?r+1|0:r,i=o+h|0,r=(i>>>0<h>>>0?r+1|0:r)+d|0,a=i,i=i+f|0,r=a>>>0>i>>>0?r+1|0:r,a=i,i=i+y|0,r=(a>>>0>i>>>0?r+1|0:r)+g|0,a=i,i=i+b|0,r=a>>>0>i>>>0?r+1|0:r,a=i+T|0,r=a>>>0<i>>>0?r+1|0:r,s=s>>>20|0,i=a+s|0,r=s>>>0>i>>>0?r+1|0:r,a=i,i=i+C|0,r=a>>>0>i>>>0?r+1|0:r,s=i<<12|c>>>20,a=r,o=r<<12|i>>>20,b=t[e+20>>2],r=b+(_0&1048575)|0,g=t[e+16>>2],i=J0+g|0,c=i>>>0<J0>>>0?r+1|0:r,r=c+o|0,d=i,s=i+s|0,t[n+24>>2]=s,i=i>>>0>s>>>0?r+1|0:r,t[n+28>>2]=i&1048575,o=n,y=H&65535,f=(i|0)==(c|0)&s>>>0<d>>>0|i>>>0<c>>>0,n=(c|0)==(b|0)&d>>>0<g>>>0|c>>>0<b>>>0,r=A+8|0,s=n+t[r>>2]|0,r=t[r+4>>2],r=n>>>0>s>>>0?r+1|0:r,a=a>>>20|0,n=a,a=a+s|0,r=n>>>0>a>>>0?r+1|0:r,n=a,a=a+f|0,r=n>>>0>a>>>0?r+1|0:r,i=a<<12|i>>>20,n=i+E|0,r=y+(r<<12|a>>>20)|0,t[o+32>>2]=n,t[o+36>>2]=i>>>0>n>>>0?r+1|0:r,D=e+496|0}function ct(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0;e=r- -64|0,b=t[e>>2],d=t[e+4>>2],e=r+56|0,o=t[e>>2],x=t[e+4>>2],e=r+48|0,E=t[e>>2],h=t[e+4>>2],e=r+72|0,w=t[e>>2],s=t[e+4>>2],C=t[r+40>>2],S=t[r+44>>2],k=t[r+24>>2],g=t[r+28>>2],c=t[r+16>>2],A=t[r+20>>2],a=t[r+8>>2],f=t[r+12>>2],y=t[r+4>>2],I=t[r+32>>2],n=t[r+36>>2],N=n,r=t[r>>2],e=I0(n>>>16|0,0,977,1),n=r+e|0,r=y+i0|0,y=e>>>0>n>>>0?r+1|0:r,r=f,e=y>>>20|0,f=e,e=a+e|0,f=f>>>0>e>>>0?r+1|0:r,r=A,a=f>>>20|0,T=a,a=a+c|0,A=T>>>0>a>>>0?r+1|0:r,r=g,c=A>>>20|0,g=c,c=c+k|0,k=g>>>0>c>>>0?r+1|0:r,L=f&1048575,r=y&1048575,T=r,g=e,y=a,R=A&1048575,a=(e&a&c)==-1&(R&f&k)==1048575,r=N&65535,e=k>>>20|0,f=e,e=e+I|0,r=f>>>0>e>>>0?r+1|0:r,I=e,f=r,e=I0(a&((e|0)==-1&(r|0)==65535)&((T|0)==1048574&n>>>0>4294966318|T>>>0>1048574)|r>>>16,0,977,1),n=e+n|0,r=T+i0|0,a=e>>>0>n>>>0?r+1|0:r,r=L,e=a>>>20|0,A=e+g|0,e=e>>>0>A>>>0?r+1|0:r,u[i|0]=n,u[i+1|0]=n>>>8,u[i+2|0]=n>>>16,u[i+3|0]=n>>>24,r=a&1048575|A<<20,u[i+4|0]=r,u[i+5|0]=r>>>8,u[i+6|0]=r>>>16,u[i+7|0]=r>>>24,g=w,T=s&65535,w=b,b=o,a=I0(s>>>16|0,0,977,1),n=a+C|0,r=S+i0|0,C=a>>>0>n>>>0?r+1|0:r,r=h,a=C>>>20|0,s=a,a=a+E|0,o=s>>>0>a>>>0?r+1|0:r,r=x,s=o>>>20|0,b=s+b|0,h=s>>>0>b>>>0?r+1|0:r,r=d,s=h>>>20|0,d=s,s=s+w|0,x=d>>>0>s>>>0?r+1|0:r,r=T,d=x>>>20|0,w=d,d=d+g|0,r=w>>>0>d>>>0?r+1|0:r,E=d,d=r,S=o&1048575,r=C&1048575,T=n,w=a,g=h&1048575,n=I0((b&a&s)==-1&(g&o&x)==1048575&((E|0)==-1&(d|0)==65535)&((r|0)==1048574&n>>>0>4294966318|r>>>0>1048574)|d>>>16,0,977,1),a=T+n|0,r=r+i0|0,o=a>>>0<n>>>0?r+1|0:r,r=S,n=o>>>20|0,h=n+w|0,n=n>>>0>h>>>0?r+1|0:r,u[i+32|0]=a,u[i+33|0]=a>>>8,u[i+34|0]=a>>>16,u[i+35|0]=a>>>24,r=o&1048575|h<<20,u[i+36|0]=r,u[i+37|0]=r>>>8,u[i+38|0]=r>>>16,u[i+39|0]=r>>>24,o=(e&4095)<<20|A>>>12,w=e>>>12&255,r=R,a=(e>>>20|0)+y|0,e=a>>>0<y>>>0?r+1|0:r,y=a,r=a<<8,a=i,u[a+8|0]=o,u[a+9|0]=o>>>8,u[a+10|0]=o>>>16,u[a+11|0]=o>>>24,r=r|w,u[a+12|0]=r,u[a+13|0]=r>>>8,u[a+14|0]=r>>>16,u[a+15|0]=r>>>24,o=(n&4095)<<20|h>>>12,h=n>>>12&255,r=g,a=(n>>>20|0)+b|0,n=a>>>0<b>>>0?r+1|0:r,b=a,r=a<<8,a=i,u[a+40|0]=o,u[a+41|0]=o>>>8,u[a+42|0]=o>>>16,u[a+43|0]=o>>>24,r=r|h,u[a+44|0]=r,u[a+45|0]=r>>>8,u[a+46|0]=r>>>16,u[a+47|0]=r>>>24,y=((e&16777215)<<8|y>>>24)&268435455,r=k&1048575,e=e>>>20|0,a=e+c|0,e=e>>>0>a>>>0?r+1|0:r,r=e<<28|a>>>4,c=a<<28,a=i,c=c|y,u[a+16|0]=c,u[a+17|0]=c>>>8,u[a+18|0]=c>>>16,u[a+19|0]=c>>>24,u[a+20|0]=r,u[a+21|0]=r>>>8,u[a+22|0]=r>>>16,u[a+23|0]=r>>>24,c=((n&16777215)<<8|b>>>24)&268435455,r=x&1048575,n=n>>>20|0,a=n+s|0,n=n>>>0>a>>>0?r+1|0:r,r=n<<28|a>>>4,s=a<<28,a=i,s=s|c,u[a+48|0]=s,u[a+49|0]=s>>>8,u[a+50|0]=s>>>16,u[a+51|0]=s>>>24,u[a+52|0]=r,u[a+53|0]=r>>>8,u[a+54|0]=r>>>16,u[a+55|0]=r>>>24,a=e>>>4&65535,r=f,e=(e>>>20|0)+I|0,r=(e>>>0<I>>>0?r+1|0:r)<<16|e>>>16,s=e<<16,e=i,a=a|s,u[e+24|0]=a,u[e+25|0]=a>>>8,u[e+26|0]=a>>>16,u[e+27|0]=a>>>24,u[e+28|0]=r,u[e+29|0]=r>>>8,u[e+30|0]=r>>>16,u[e+31|0]=r>>>24,a=n>>>4&65535,r=d,e=(n>>>20|0)+E|0,r=(e>>>0<E>>>0?r+1|0:r)<<16|e>>>16,e=e<<16|a,u[i+56|0]=e,u[i+57|0]=e>>>8,u[i+58|0]=e>>>16,u[i+59|0]=e>>>24,u[i+60|0]=r,u[i+61|0]=r>>>8,u[i+62|0]=r>>>16,u[i+63|0]=r>>>24}function z2(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0;d=D-96|0,D=d;t:{if(!r){O0[t[i+168>>2]](689730,t[i+172>>2]);break t}if(s=t[r>>2],z=e&256,s>>>0<(z?33:65)>>>0){O0[t[i+168>>2]](690157,t[i+172>>2]);break t}if(t[r>>2]=0,S=me(690820,s),!a){O0[t[i+168>>2]](689638,t[i+172>>2]);break t}if((e&255)!=2){O0[t[i+168>>2]](689499,t[i+172>>2]);break t}if(t[d+88>>2]=0,e=l[a+12|0]|l[a+13|0]<<8|(l[a+14|0]<<16|l[a+15|0]<<24),o=e,s=l[a+8|0]|l[a+9|0]<<8|(l[a+10|0]<<16|l[a+11|0]<<24),c=(e<<12|s>>>20)&1048575,f=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),n=f,s=s<<12&-4096|n>>>20,C=c,c=l[a+16|0]|l[a+17|0]<<8|(l[a+18|0]<<16|l[a+19|0]<<24),b=c,e=l[a+20|0]|l[a+21|0]<<8|(l[a+22|0]<<16|l[a+23|0]<<24),f=e,h=(e<<24|c>>>8)&1048575,A=c<<24&-16777216|o>>>8,R=h,y=h,c=l[a+28|0]|l[a+29|0]<<8|(l[a+30|0]<<16|l[a+31|0]<<24),e=c>>>16|0,o=l[a+24|0]|l[a+25|0]<<8|(l[a+26|0]<<16|l[a+27|0]<<24),c=(c&65535)<<16|o>>>16,x=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),T=A|(c|(x|s)),N=e,E=n&1048575,n=y|(e|(E|C)),y=o<<4&1048560,o=f,e=o>>>28|0,h=(o&268435455)<<4|b>>>28,f=T|h,T=e|y,!(f|(n|T))){O0[t[i+168>>2]](690116,t[i+172>>2]);break t}o=l[a+52|0]|l[a+53|0]<<8|(l[a+54|0]<<16|l[a+55|0]<<24),e=o>>>28|0,i=l[a+48|0]|l[a+49|0]<<8|(l[a+50|0]<<16|l[a+51|0]<<24),f=(o&268435455)<<4|i>>>28,b=e,e=l[a+56|0]|l[a+57|0]<<8|(l[a+58|0]<<16|l[a+59|0]<<24),H=e,g=l[a+60|0]|l[a+61|0]<<8|(l[a+62|0]<<16|l[a+63|0]<<24),V=e<<4&1048560,n=l[a+40|0]|l[a+41|0]<<8|(l[a+42|0]<<16|l[a+43|0]<<24),y=l[a+44|0]|l[a+45|0]<<8|(l[a+46|0]<<16|l[a+47|0]<<24),k=y>>>8|0,e=o<<24|i>>>8,j=i<<24&-16777216,Z=e&1048575,o=l[a+32|0]|l[a+33|0]<<8|(l[a+34|0]<<16|l[a+35|0]<<24),i=l[a+36|0]|l[a+37|0]<<8|(l[a+38|0]<<16|l[a+39|0]<<24),w=i,a=i>>>20|0,i=n,e=y<<12|i>>>20,y=i<<12&-4096,L=e&1048575,I=w&1048575;e:{if((E|0)==1048574&x>>>0<4294966319|E>>>0<1048574||(s&A&h)!=-1|(C&R&T)!=1048575||(c|0)!=-1|(N|0)!=65535)break e;i=E+1|0,x=x+977|0,i=x>>>0<977?i+1|0:i,E=i&1048575,n=i>>>20|0,i=C,s=n+s|0,i=s>>>0<n>>>0?i+1|0:i,C=i&1048575,e=R,i=i>>>20|0,A=i+A|0,e=i>>>0>A>>>0?e+1|0:e,R=e&1048575,n=e>>>20|0,i=T,h=n+h|0,i=h>>>0<n>>>0?i+1|0:i,T=i&1048575,n=i>>>20|0,i=N,e=c,c=n+c|0,N=(e>>>0>c>>>0?i+1|0:i)&65535}n=f,w=b|V,b=k|j,k=Z,y=a|y,i=g,e=i>>>16|0,f=(i&65535)<<16|H>>>16,g=e,a=d,t[a+40>>2]=c,t[a+44>>2]=N,t[a+32>>2]=h,t[a+36>>2]=T,t[a+24>>2]=A,t[a+28>>2]=R,t[a+16>>2]=s,t[a+20>>2]=C,t[a+8>>2]=x,t[a+12>>2]=E;e:{if((I|0)==1048574&o>>>0<4294966319|I>>>0<1048574||(y&b&n)!=-1|(L&k&w)!=1048575||(f|0)!=-1|(g|0)!=65535)break e;e=I+1|0,o=o+977|0,e=o>>>0<977?e+1|0:e,I=e&1048575,i=L,e=e>>>20|0,y=e+y|0,i=e>>>0>y>>>0?i+1|0:i,L=i&1048575,s=i>>>20|0,e=k,b=s+b|0,e=b>>>0<s>>>0?e+1|0:e,k=e&1048575,s=e>>>20|0,e=w,n=n+s|0,e=n>>>0<s>>>0?e+1|0:e,w=e&1048575,i=g,g=f,f=(e>>>20|0)+f|0,g=(g>>>0>f>>>0?i+1|0:i)&65535}t[a+80>>2]=f,t[d+84>>2]=g,t[d+72>>2]=n,t[d+76>>2]=w,t[d+64>>2]=b,t[d+68>>2]=k,t[d+56>>2]=y,t[d+60>>2]=L,t[d+48>>2]=o,t[d+52>>2]=I,br(S+1|0,d+8|0);e:{if(z){u[S|0]=o&1?3:2,i=33;break e}u[S|0]=4,br(S+33|0,d+48|0),i=65}t[r>>2]=i,w=1}return D=d+96|0,w}function br(i,r){u[i|0]=t[r+36>>2]>>>8,u[i+1|0]=t[r+36>>2],u[i+2|0]=(t[r+36>>2]&16777215)<<8|t[r+32>>2]>>>24,u[i+3|0]=(t[r+36>>2]&65535)<<16|t[r+32>>2]>>>16,u[i+4|0]=(t[r+36>>2]&255)<<24|t[r+32>>2]>>>8,u[i+5|0]=t[r+32>>2],u[i+6|0]=t[r+28>>2]>>>12,u[i+7|0]=t[r+28>>2]>>>4,u[i+8|0]=(t[r+28>>2]&268435455)<<4|t[r+24>>2]>>>28,u[i+9|0]=(t[r+28>>2]&1048575)<<12|t[r+24>>2]>>>20,u[i+10|0]=(t[r+28>>2]&4095)<<20|t[r+24>>2]>>>12,u[i+11|0]=(t[r+28>>2]&15)<<28|t[r+24>>2]>>>4,u[i+12|0]=B[r+22>>1]&15|t[r+24>>2]<<4,u[i+13|0]=t[r+20>>2]>>>8,u[i+14|0]=t[r+20>>2],u[i+15|0]=(t[r+20>>2]&16777215)<<8|t[r+16>>2]>>>24,u[i+16|0]=(t[r+20>>2]&65535)<<16|t[r+16>>2]>>>16,u[i+17|0]=(t[r+20>>2]&255)<<24|t[r+16>>2]>>>8,u[i+18|0]=t[r+16>>2],u[i+19|0]=t[r+12>>2]>>>12,u[i+20|0]=t[r+12>>2]>>>4,u[i+21|0]=(t[r+12>>2]&268435455)<<4|t[r+8>>2]>>>28,u[i+22|0]=(t[r+12>>2]&1048575)<<12|t[r+8>>2]>>>20,u[i+23|0]=(t[r+12>>2]&4095)<<20|t[r+8>>2]>>>12,u[i+24|0]=(t[r+12>>2]&15)<<28|t[r+8>>2]>>>4,u[i+25|0]=B[r+6>>1]&15|t[r+8>>2]<<4,u[i+26|0]=t[r+4>>2]>>>8,u[i+27|0]=t[r+4>>2],u[i+28|0]=(t[r+4>>2]&16777215)<<8|t[r>>2]>>>24,u[i+29|0]=(t[r+4>>2]&65535)<<16|t[r>>2]>>>16,u[i+30|0]=(t[r+4>>2]&255)<<24|t[r>>2]>>>8,u[i+31|0]=t[r>>2]}function ie(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0;o=i,e=r,r=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),s=r<<8&16711680,h=r<<24|s,n=r>>>8|0,i=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),s=(n|i<<24)&65280,r=r>>>24|0,s=h|(s|(r|i<<8)&255),n=(r|(i&16777215)<<8)&16711680|(n|(i&255)<<24)&-16777216,d=i>>>8&65280|i>>>24|n,t[o>>2]=d,t[o+4>>2]=s,r=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),c=r<<8&16711680|r<<24,i=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),n=(i<<24|r>>>8)&65280,h=c|(n|(i<<8|r>>>24)&255),n=((i&255)<<24|r>>>8)&-16777216,c=n|((i&16777215)<<8|r>>>24)&16711680,T=i>>>8&65280|i>>>24|c,t[o+8>>2]=T,f=h,t[o+12>>2]=f,r=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),c=r<<8&16711680,g=r<<24|c,i=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),c=(i<<24|r>>>8)&65280,c=g|(c|(i<<8|r>>>24)&255),n=((i&255)<<24|r>>>8)&-16777216,n=n|((i&16777215)<<8|r>>>24)&16711680,w=i>>>8&65280|i>>>24|n,t[o+16>>2]=w,g=c,t[o+20>>2]=c,i=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),r=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),c=r<<8&16711680|r<<24,h=c|((i<<8|r>>>24)&255|(i<<24|r>>>8)&65280),e=((i&255)<<24|r>>>8)&-16777216,y=e|((i&16777215)<<8|r>>>24)&16711680,c=i>>>8&65280,r=i>>>24|0,i=h,e=(g|0)==-1,c=r|c|y,r=e&w>>>0<4294967294|(g|0)!=-1|(i&c)!=-1,n=(f|0)==-1162945306,i=(r|(n&T>>>0<2940772411|f>>>0<3132021990))^-1,y=i&((s|0)==-1076732276&d>>>0>3493216576|s>>>0>3218235020)|(i&(n&T>>>0>2940772411|f>>>0>3132021990)|(w|0)==-1&e&(r^-1)),b=I0(y,0,801750719,1076732275),n=i0,e=n+s|0,i=d+b|0,e=i>>>0<b>>>0?e+1|0:e,t[o>>2]=i,t[o+4>>2]=e,r=o,e=(e|0)==(n|0)&i>>>0<b>>>0|e>>>0<n>>>0,b=I0(y,0,1354194884,1162945305),s=i0,d=s+f|0,o=b+T|0,i=o>>>0<b>>>0?d+1|0:d,e=e+o|0,n=e>>>0<o>>>0?i+1|0:i,t[r+8>>2]=e,t[r+12>>2]=n,f=(i|0)==(s|0)&o>>>0<b>>>0|i>>>0<s>>>0,i=(i|0)==(n|0)&e>>>0<o>>>0|i>>>0>n>>>0,s=f+i|0,n=g,e=i>>>0>s>>>0,o=y+w|0,i=o>>>0<w>>>0?n+1|0:n,d=e+i|0,n=o,s=n+s|0,d=n>>>0>s>>>0?d+1|0:d,t[r+16>>2]=s,t[r+20>>2]=d,e=r,o=c,r=!i&n>>>0<y>>>0,i=(i|0)==(d|0)&n>>>0>s>>>0|i>>>0>d>>>0,s=r+i|0,r=(i>>>0>s>>>0)+h|0,i=s+o|0,r=i>>>0<s>>>0?r+1|0:r,t[e+24>>2]=i,t[e+28>>2]=r,a&&(t[a>>2]=y)}function _t(i,r){u[i|0]=l[r+31|0],u[i+1|0]=B[r+30>>1],u[i+2|0]=t[r+28>>2]>>>8,u[i+3|0]=t[r+28>>2],u[i+4|0]=(t[r+28>>2]&16777215)<<8|t[r+24>>2]>>>24,u[i+5|0]=(t[r+28>>2]&65535)<<16|t[r+24>>2]>>>16,u[i+6|0]=(t[r+28>>2]&255)<<24|t[r+24>>2]>>>8,u[i+7|0]=t[r+24>>2],u[i+8|0]=l[r+23|0],u[i+9|0]=B[r+22>>1],u[i+10|0]=t[r+20>>2]>>>8,u[i+11|0]=t[r+20>>2],u[i+12|0]=(t[r+20>>2]&16777215)<<8|t[r+16>>2]>>>24,u[i+13|0]=(t[r+20>>2]&65535)<<16|t[r+16>>2]>>>16,u[i+14|0]=(t[r+20>>2]&255)<<24|t[r+16>>2]>>>8,u[i+15|0]=t[r+16>>2],u[i+16|0]=l[r+15|0],u[i+17|0]=B[r+14>>1],u[i+18|0]=t[r+12>>2]>>>8,u[i+19|0]=t[r+12>>2],u[i+20|0]=(t[r+12>>2]&16777215)<<8|t[r+8>>2]>>>24,u[i+21|0]=(t[r+12>>2]&65535)<<16|t[r+8>>2]>>>16,u[i+22|0]=(t[r+12>>2]&255)<<24|t[r+8>>2]>>>8,u[i+23|0]=t[r+8>>2],u[i+24|0]=l[r+7|0],u[i+25|0]=B[r+6>>1],u[i+26|0]=t[r+4>>2]>>>8,u[i+27|0]=t[r+4>>2],u[i+28|0]=(t[r+4>>2]&16777215)<<8|t[r>>2]>>>24,u[i+29|0]=(t[r+4>>2]&65535)<<16|t[r>>2]>>>16,u[i+30|0]=(t[r+4>>2]&255)<<24|t[r>>2]>>>8,u[i+31|0]=t[r>>2]}function fa(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0;for(o=D-320|0,D=o,a=o+280|0,e=a+32|0,t[e>>2]=0,t[e+4>>2]=0,e=a+24|0,t[e>>2]=0,t[e+4>>2]=0,e=a+16|0,t[e>>2]=0,t[e+4>>2]=0,a=a+8|0,t[a>>2]=0,t[a+4>>2]=0,t[o+280>>2]=0,t[o+284>>2]=0,a=o+240|0,e=a+32|0,t[e>>2]=0,t[e+4>>2]=0,e=a+24|0,t[e>>2]=0,t[e+4>>2]=0,a=a+16|0,t[a>>2]=0,t[a+4>>2]=0,t[o+248>>2]=0,t[o+252>>2]=0,t[o+240>>2]=1,t[o+244>>2]=0,e=r+32|0,n=t[e+4>>2],a=o+200|0,s=a+32|0,t[s>>2]=t[e>>2],t[s+4>>2]=n,e=r+24|0,n=t[e+4>>2],s=a+24|0,t[s>>2]=t[e>>2],t[s+4>>2]=n,e=r+16|0,n=t[e+4>>2],s=a+16|0,t[s>>2]=t[e>>2],t[s+4>>2]=n,e=r+8|0,n=t[e+4>>2],a=a+8|0,t[a>>2]=t[e>>2],t[a+4>>2]=n,a=t[r+4>>2],t[o+200>>2]=t[r>>2],t[o+204>>2]=a,e=i+32|0,n=t[e+4>>2],a=o+160|0,Z=a+32|0,t[Z>>2]=t[e>>2],t[Z+4>>2]=n,e=i+24|0,n=t[e+4>>2],s=a+24|0,t[s>>2]=t[e>>2],t[s+4>>2]=n,e=i+16|0,n=t[e+4>>2],s=a+16|0,t[s>>2]=t[e>>2],t[s+4>>2]=n,e=i+8|0,n=t[e+4>>2],a=a+8|0,t[a>>2]=t[e>>2],t[a+4>>2]=n,a=t[i+4>>2],t[o+160>>2]=t[i>>2],t[o+164>>2]=a,N=5,S=-1,L=-1;;){a=S,C=t[o+160>>2],A=t[o+164>>2],e=Ri(C,A|-1073741824),S=a-e|0,L=L-(i0+(a>>>0<e>>>0)|0)|0,a=e&31,(e&63)>>>0>=32?(d=0,w=1<<a):(d=1<<a,w=d-1&1>>>32-a),V=t[o+200>>2],z=t[o+204>>2],s=e;t:{if((e|0)==62){c=0,s=0,g=1,b=0,I=0,E=0;break t}for(e=s&31,(s&63)>>>0>=32?(n=A>>>e|0,e=0):(n=((1<<e)-1&A)<<32-e|C>>>e,e=A>>>e|0),h=62-s|0,g=1,b=0,I=0,E=0,y=V,f=z,c=0,s=0;;){e:{if((L|0)<0){a=I0(n,e,n,e),x=a-2|0,R=i0-(a>>>0<2)|0,k=0-y|0,a=0-(((y|0)!=0)+f|0)|0,y=I0(x,R,I0(k,a,n,e),i0),L=0-(((S|0)!=0)+L|0)|0,S=0-S|0,f=S+1|0,T=64-((f|0)>(h|0)?h:f)|0,f=T&31,(T&63)>>>0>=32?f=-1>>>f|0:f=(1<<f)-1<<32-f|-1>>>f,Y=f&y&63,T=0-I|0,x=0-(((I|0)!=0)+E|0)|0,R=0-d|0,X=0-(((d|0)!=0)+w|0)|0,y=n,f=e;break e}T=(y<<1)+2|0,a=f,x=T&8,T=x+y|0,T=0-I0(T,T>>>0<x>>>0?a+1|0:a,n,e)|0,a=S+1|0,x=64-((a|0)>(h|0)?h:a)|0,a=x&31,(x&63)>>>0>=32?a=-1>>>a|0:a=(1<<a)-1<<32-a|-1>>>a,Y=a&T&15,R=c,X=s,T=g,x=b,k=n,a=e,c=d,s=w,g=I,b=E}if(d=S,e=I0(y,f,Y,0)+k|0,a=i0+a|0,n=e>>>0<k>>>0?a+1|0:a,a=h&31,(h&63)>>>0>=32?(w=0,a=-1<<a):(w=-1<<a,a=w|(1<<a)-1&-1>>>32-a),k=Ri(e|w,a|n),S=d-k|0,L=L-(i0+(d>>>0<k>>>0)|0)|0,d=k&31,(k&63)>>>0>=32?(I=0,E=g<<d):(I=g<<d,E=(1<<d)-1&g>>>32-d|b<<d),d=k&31,(k&63)>>>0>=32?(a=c<<d,d=0):(a=(1<<d)-1&c>>>32-d|s<<d,d=c<<d),w=a,j=k&31,(k&63)>>>0>=32?(a=0,n=n>>>j|0):(a=n>>>j|0,n=((1<<j)-1&n)<<32-j|e>>>j),e=a,g=I0(g,b,Y,0)+T|0,a=i0+x|0,b=g>>>0<T>>>0?a+1|0:a,c=I0(c,s,Y,0)+R|0,a=i0+X|0,s=c>>>0<R>>>0?a+1|0:a,h=h-k|0,!h)break}}if(t[o+152>>2]=g,t[o+156>>2]=b,t[o+144>>2]=c,t[o+148>>2]=s,t[o+136>>2]=I,t[o+140>>2]=E,t[o+128>>2]=d,t[o+132>>2]=w,Mi(o+280|0,o+240|0,o+128|0,r),R=w,a=w>>31,w=a,y=a,a=z>>31,f=o+112|0,k=d,e=a,P(f,d,R,y,y,V,z,a,a),X=I,a=E>>31,I=a,d=a,a=A>>31,y=o+80|0,j=E,n=a,P(y,X,E,d,d,C,A,a,a),a=s>>31,d=o+96|0,Y=c,l0=s,e0=a,P(d,c,s,a,a,V,z,e,e),a=b>>31,h=o- -64|0,V=g,z=b,t0=a,P(h,g,b,a,a,C,A,n,n),c=t[o+80>>2],n=t[o+112>>2],e=c+n|0,s=t[o+84>>2],a=s+t[o+116>>2]|0,a=e>>>0<n>>>0?a+1|0:a,n=e,e=a,s=(s|0)==(a|0)&n>>>0<c>>>0|a>>>0<s>>>0,a=f+8|0,c=t[a>>2],f=y+8|0,n=c+t[f>>2]|0,a=t[f+4>>2]+t[a+4>>2]|0,a=n>>>0<c>>>0?a+1|0:a,c=n,n=n+s|0,s=c>>>0>n>>>0?a+1|0:a,c=s<<2|n>>>30,n=n<<2|e>>>30,e=c,b=t[o+64>>2],f=t[o+96>>2],c=b+f|0,y=t[o+68>>2],a=y+t[o+100>>2]|0,a=c>>>0<f>>>0?a+1|0:a,f=c,c=a,y=(y|0)==(a|0)&f>>>0<b>>>0|a>>>0<y>>>0,a=d+8|0,b=t[a>>2],d=h+8|0,f=b+t[d>>2]|0,a=t[d+4>>2]+t[a+4>>2]|0,a=f>>>0<b>>>0?a+1|0:a,d=f,f=y+f|0,b=d>>>0>f>>>0?a+1|0:a,d=b<<2|f>>>30,y=f<<2|c>>>30,f=d,r0=(N|0)<2,!r0)for(a=s>>31,s=s>>30,d=a,T=b>>30,x=b>>31,H=N-1|0,h=o+160|0,b=o+200|0;g=b+8|0,A=t[g>>2],a=t[g+4>>2],C=a,a=a>>31,c=a,P(o,A,C,a,a,k,R,w,w),s0=o+32|0,E=h+8|0,_=t[E>>2],a=t[E+4>>2],K=a,a=a>>31,P(s0,_,K,a,a,X,j,I,I),u0=o+16|0,P(u0,A,C,c,c,Y,l0,e0,e0),d0=o+48|0,P(d0,_,K,a,a,V,z,t0,t0),c=t[o>>2],b0=c,K=t[o+4>>2],a=K+e|0,A=n+c|0,n=A>>>0<n>>>0?a+1|0:a,a=n+t[o+36>>2]|0,e=t[o+32>>2],c=e+A|0,C=c,t[b>>2]=c,e=e>>>0>c>>>0?a+1|0:a,t[b+4>>2]=e&1073741823,c=t[o+16>>2],g0=c,$=t[o+20>>2],a=$+f|0,b=c+y|0,y=b>>>0<y>>>0?a+1|0:a,a=y+t[o+52>>2]|0,c=t[o+48>>2],f=c+b|0,_=f,t[h>>2]=f,c=c>>>0>f>>>0?a+1|0:a,t[h+4>>2]=c&1073741823,f=(e|0)==(n|0)&A>>>0>C>>>0|e>>>0<n>>>0,a=s0+8|0,h=t[a>>2],C=t[a+4>>2],A=(n|0)==(K|0)&A>>>0<b0>>>0|n>>>0<K>>>0,a=o+8|0,n=t[a>>2]+s|0,a=t[a+4>>2]+d|0,a=n>>>0<s>>>0?a+1|0:a,d=n,n=n+A|0,a=(d>>>0>n>>>0?a+1|0:a)+C|0,d=n,n=n+h|0,a=d>>>0>n>>>0?a+1|0:a,d=n,n=n+f|0,f=d>>>0>n>>>0?a+1|0:a,a=f>>31,s=f>>30,d=a,h=(c|0)==(y|0)&b>>>0>_>>>0|c>>>0<y>>>0,a=d0+8|0,A=t[a>>2],C=t[a+4>>2],b=(y|0)==($|0)&b>>>0<g0>>>0|y>>>0<$>>>0,a=u0+8|0,y=t[a>>2]+T|0,a=t[a+4>>2]+x|0,a=y>>>0<T>>>0?a+1|0:a,x=y,y=y+b|0,a=(x>>>0>y>>>0?a+1|0:a)+C|0,b=y,y=y+A|0,a=b>>>0>y>>>0?a+1|0:a,b=y,y=y+h|0,b=b>>>0>y>>>0?a+1|0:a,a=b>>31,T=b>>30,x=a,f=f<<2|n>>>30,n=n<<2|e>>>30,e=f,b=b<<2|y>>>30,y=y<<2|c>>>30,f=b,b=g,h=E,H=H-1|0,!!H;);d=N-1|0,a=d<<3,s=a+(o+160|0)|0,t[s>>2]=y,t[s+4>>2]=f,a=(o+200|0)+a|0,t[a>>2]=n,t[a+4>>2]=e;t:{if(!(t[o+164>>2]|t[o+160>>2])){if(r0)break t;b=d&3;e:{if(N-2>>>0<3){c=0,s=0,a=1;break e}for(a=d&-4,H=0,c=0,s=0,h=Z;w=h-8|0,g=h-16|0,I=h-24|0,c=t[h>>2]|(t[w>>2]|(t[g>>2]|(t[I>>2]|c))),s=t[h+4>>2]|(t[w+4>>2]|(t[g+4>>2]|(t[I+4>>2]|s))),h=h+32|0,H=H+4|0,(a|0)!=(H|0););a=H+1|0}if(b)for(h=(o+160|0)+(a<<3)|0;c=t[h>>2]|c,s=t[h+4>>2]|s,h=h+8|0,b=b-1|0,!!b;);if(!(s|c))break t}if(a=f>>31,s=a^y,c=a^f,a=(N>>31)-(N>>>0<2)>>31,s=a|s,c=a|c,a=e>>31,s|a^n|(c|a^e))continue;c=(N<<3)-16|0,a=c+(o+200|0)|0,w=t[a+4>>2],t[a>>2]=t[a>>2],t[a+4>>2]=n<<30|w,a=(o+160|0)+c|0,s=t[a+4>>2],t[a>>2]=t[a>>2],t[a+4>>2]=y<<30|s,N=d;continue}break}a=e>>31,e=a,b=o+280|0,a=b+32|0,d=t[a>>2],a=t[a+4>>2],w=a,a=a>>31,n=a,f=t[r>>2],g=a&f,s=g+t[o+280>>2]|0,y=t[r+4>>2],a=t[o+284>>2]+(y&a)|0,a=s>>>0<g>>>0?a+1|0:a,s=e^s,L=s-e|0,s=(a^e)-((e>>>0>s>>>0)+e|0)|0,c=i,h=f,I=y,i=t[r+32>>2],A=i,f=i&n,i=f+d|0,C=t[r+36>>2],a=w+(C&n)|0,a=i>>>0<f>>>0?a+1|0:a,i=i^e,g=i-e|0,S=(a^e)-((i>>>0<e>>>0)+e|0)|0,i=t[r+24>>2],V=i,y=i&n,f=b+24|0,i=y+t[f>>2]|0,z=t[r+28>>2],a=t[f+4>>2]+(z&n)|0,a=i>>>0<y>>>0?a+1|0:a,i=i^e,w=i-e|0,x=(a^e)-((i>>>0<e>>>0)+e|0)|0,i=t[r+16>>2],N=i,d=i&n,y=b+16|0,i=d+t[y>>2]|0,k=t[r+20>>2],a=t[y+4>>2]+(k&n)|0,a=i>>>0<d>>>0?a+1|0:a,i=i^e,d=i-e|0,T=(a^e)-((i>>>0<e>>>0)+e|0)|0,R=t[r+8>>2],E=R&n,b=b+8|0,i=E+t[b>>2]|0,Z=t[r+12>>2],a=t[b+4>>2]+(Z&n)|0,a=i>>>0<E>>>0?a+1|0:a,i=i^e,r=i-e|0,a=((a^e)-((i>>>0<e>>>0)+e|0)|0)+(s>>31)|0,i=s>>30,n=i+r|0,E=i>>>0>n>>>0?a+1|0:a,a=(E>>31)+T|0,i=E>>30,d=i+d|0,T=i>>>0>d>>>0?a+1|0:a,a=(T>>31)+x|0,i=T>>30,w=i+w|0,x=i>>>0>w>>>0?a+1|0:a,a=(x>>31)+S|0,i=x>>30,g=i+g|0,S=i>>>0>g>>>0?a+1|0:a,i=S>>31,a=(i&I)+(s&1073741823)|0,e=i,r=(e&h)+L|0,i=r>>>0<L>>>0?a+1|0:a,a=i&1073741823,h=a,t[c>>2]=r,t[c+4>>2]=a,a=(e&Z)+(E&1073741823)|0,s=n,n=(e&R)+n|0,a=(i>>31)+(s>>>0>n>>>0?a+1|0:a)|0,i=i>>30,s=i,i=i+n|0,a=s>>>0>i>>>0?a+1|0:a,n=i,t[b>>2]=n,i=a,a=a&1073741823,t[b+4>>2]=a,s=c+8|0,t[s>>2]=n,t[s+4>>2]=a,a=(e&k)+(T&1073741823)|0,n=(e&N)+d|0,a=(i>>31)+(n>>>0<d>>>0?a+1|0:a)|0,i=i>>30,d=i,i=i+n|0,a=d>>>0>i>>>0?a+1|0:a,n=i,t[y>>2]=n,i=a,a=a&1073741823,t[y+4>>2]=a,s=c+16|0,t[s>>2]=n,t[s+4>>2]=a,a=(e&z)+(x&1073741823)|0,n=(e&V)+w|0,a=(i>>31)+(n>>>0<w>>>0?a+1|0:a)|0,i=i>>30,d=i,i=i+n|0,a=d>>>0>i>>>0?a+1|0:a,n=i,t[f>>2]=n,i=a,a=a&1073741823,t[f+4>>2]=a,s=c+24|0,t[s>>2]=n,t[s+4>>2]=a,s=c+32|0,a=(e&C)+S|0,e=(e&A)+g|0,a=(i>>31)+(e>>>0<g>>>0?a+1|0:a)|0,i=i>>30,n=i,i=i+e|0,a=n>>>0>i>>>0?a+1|0:a,t[s>>2]=i,t[s+4>>2]=a,t[o+280>>2]=r,t[o+284>>2]=h,D=o+320|0}function xt(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0;s=D-288|0,D=s,ba(s+224|0,r,a),e=s+208|0,S=t[s+256>>2],x=t[s+260>>2],P(e,S,x,0,0,801750719,1076732275,0,0),E=s+176|0,j=t[s+264>>2],N=t[s+268>>2],P(E,j,N,0,0,801750719,1076732275,0,0),b=s+192|0,P(b,S,x,0,0,1354194884,1162945305,0,0),I=s+144|0,Z=t[s+272>>2],z=t[s+276>>2],P(I,Z,z,0,0,801750719,1076732275,0,0),A=s+160|0,P(A,j,N,0,0,1354194884,1162945305,0,0),H=s+112|0,R=t[s+280>>2],V=t[s+284>>2],P(H,R,V,0,0,801750719,1076732275,0,0),L=s+128|0,P(L,Z,z,0,0,1354194884,1162945305,0,0),Y=s+96|0,P(Y,R,V,0,0,1354194884,1162945305,0,0),n=t[s+224>>2],a=t[s+208>>2],g=n+a|0,d=t[s+228>>2],r=d+t[s+212>>2]|0,k=a>>>0>g>>>0?r+1|0:r,n=(d|0)==(k|0)&n>>>0>g>>>0|d>>>0>k>>>0,y=t[s+232>>2],r=e+8|0,a=t[r>>2],e=y+a|0,h=t[s+236>>2],r=h+t[r+4>>2]|0,r=a>>>0>e>>>0?r+1|0:r,a=e+n|0,n=a>>>0<e>>>0?r+1|0:r,r=n+t[s+180>>2]|0,d=a,a=t[s+176>>2],e=d+a|0,o=t[s+192>>2],w=e+o|0,a=a>>>0>e>>>0?r+1|0:r,r=a+t[s+196>>2]|0,T=o>>>0>w>>>0?r+1|0:r,f=(a|0)==(T|0)&e>>>0>w>>>0|a>>>0>T>>>0,c=(a|0)==(n|0)&e>>>0<d>>>0|a>>>0<n>>>0,o=(n|0)==(h|0)&d>>>0<y>>>0|n>>>0<h>>>0,a=t[s+240>>2],h=a,e=b+8|0,n=t[e>>2],r=E+8|0,y=n+t[r>>2]|0,r=t[r+4>>2]+t[e+4>>2]|0,C=t[s+244>>2],r=C+(n>>>0>y>>>0?r+1|0:r)|0,a=a+y|0,r=a>>>0<y>>>0?r+1|0:r,e=a,a=a+o|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+c|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+f|0,r=e>>>0>a>>>0?r+1|0:r,f=a,a=t[s+144>>2],c=f+a|0,e=r,r=r+t[s+148>>2]|0,r=a>>>0>c>>>0?r+1|0:r,a=t[s+160>>2],o=a+c|0,n=r,r=r+t[s+164>>2]|0,a=a>>>0>o>>>0?r+1|0:r,r=x+a|0,d=o+S|0,x=d>>>0<S>>>0?r+1|0:r,E=d,b=(a|0)==(x|0)&d>>>0<o>>>0|a>>>0>x>>>0,y=(a|0)==(n|0)&o>>>0<c>>>0|a>>>0<n>>>0,c=(e|0)==(n|0)&c>>>0<f>>>0|e>>>0>n>>>0,o=(e|0)==(C|0)&f>>>0<h>>>0|e>>>0<C>>>0,a=t[s+248>>2],C=a,e=A+8|0,n=t[e>>2],r=I+8|0,f=n+t[r>>2]|0,r=t[r+4>>2]+t[e+4>>2]|0,S=t[s+252>>2],r=S+(n>>>0>f>>>0?r+1|0:r)|0,a=a+f|0,r=a>>>0<f>>>0?r+1|0:r,e=a,a=a+o|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+c|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+y|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+b|0,r=e>>>0>a>>>0?r+1|0:r,f=a,a=t[s+112>>2],c=f+a|0,e=r,r=r+t[s+116>>2]|0,r=a>>>0>c>>>0?r+1|0:r,a=t[s+128>>2],o=a+c|0,n=r,r=r+t[s+132>>2]|0,a=a>>>0>o>>>0?r+1|0:r,r=N+a|0,N=s+80|0,A=N,d=o+j|0,I=d>>>0<j>>>0?r+1|0:r,b=d,h=(a|0)==(I|0)&d>>>0<o>>>0|a>>>0>I>>>0,y=(a|0)==(n|0)&o>>>0<c>>>0|a>>>0<n>>>0,o=(e|0)==(n|0)&c>>>0<f>>>0|e>>>0>n>>>0,d=(e|0)==(S|0)&f>>>0<C>>>0|e>>>0<S>>>0,r=H+8|0,e=t[r>>2],n=t[r+4>>2],c=t[s+96>>2],r=L+8|0,a=t[r>>2],C=c+a|0,f=t[s+100>>2],r=f+t[r+4>>2]|0,r=(a>>>0>C>>>0?r+1|0:r)+n|0,a=e+C|0,r=a>>>0<C>>>0?r+1|0:r,e=a,a=a+d|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+o|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+y|0,r=e>>>0>a>>>0?r+1|0:r,n=a+h|0,a=n>>>0<a>>>0?r+1|0:r,r=z+a|0,e=n,n=e+Z|0,r=n>>>0<Z>>>0?r+1|0:r,L=n,y=r,P(A,n,r,0,0,801750719,1076732275,0,0),z=s+48|0,o=z,d=(r|0)==(a|0)&e>>>0>n>>>0|r>>>0<a>>>0,n=(a|0)==(f|0)&e>>>0<c>>>0|a>>>0<f>>>0,r=Y+8|0,a=t[r>>2],e=a+R|0,r=V+t[r+4>>2]|0,r=a>>>0>e>>>0?r+1|0:r,a=e+n|0,r=a>>>0<e>>>0?r+1|0:r,e=a,a=a+d|0,r=e>>>0>a>>>0?r+1|0:r,C=a,A=r,P(o,a,r,0,0,801750719,1076732275,0,0),S=s- -64|0,P(S,L,y,0,0,1354194884,1162945305,0,0),H=s+32|0,P(H,a,r,0,0,1354194884,1162945305,0,0),a=t[s+80>>2],h=a+g|0,r=k+t[s+84>>2]|0,d=a>>>0>h>>>0?r+1|0:r,n=(k|0)==(d|0)&h>>>0<g>>>0|d>>>0<k>>>0,r=N+8|0,a=t[r>>2],e=a+w|0,r=T+t[r+4>>2]|0,r=a>>>0>e>>>0?r+1|0:r,a=e+n|0,n=a>>>0<e>>>0?r+1|0:r,r=n+t[s+52>>2]|0,c=a,a=t[s+48>>2],e=c+a|0,o=t[s+64>>2],g=e+o|0,a=a>>>0>e>>>0?r+1|0:r,r=a+t[s+68>>2]|0,R=(A|0)==(V|0)&C>>>0<R>>>0|A>>>0<V>>>0,Y=R?801750719:0,N=R?1076732275:0,o=o>>>0>g>>>0?r+1|0:r,k=(a|0)==(o|0)&e>>>0>g>>>0|a>>>0>o>>>0,f=(a|0)==(n|0)&e>>>0<c>>>0|a>>>0<n>>>0,c=(n|0)==(T|0)&c>>>0<w>>>0|n>>>0<T>>>0,r=z+8|0,e=t[r>>2],n=t[r+4>>2],r=S+8|0,a=t[r>>2],w=a+E|0,r=x+t[r+4>>2]|0,r=(a>>>0>w>>>0?r+1|0:r)+n|0,a=e+w|0,r=a>>>0<w>>>0?r+1|0:r,e=a,a=a+c|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+f|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+k|0,e=e>>>0>a>>>0?r+1|0:r,r=e+N|0,T=a,a=a+Y|0,r=T>>>0>a>>>0?r+1|0:r,f=a,a=t[s+32>>2],c=f+a|0,n=r,r=r+t[s+36>>2]|0,a=a>>>0>c>>>0?r+1|0:r,r=y+a|0,w=c+L|0,y=w>>>0<L>>>0?r+1|0:r,L=(a|0)==(y|0)&c>>>0>w>>>0|a>>>0>y>>>0,k=(a|0)==(n|0)&c>>>0<f>>>0|a>>>0<n>>>0,c=(e|0)==(n|0)&f>>>0<T>>>0|e>>>0>n>>>0,n=(e|0)==(x|0)&T>>>0<E>>>0|e>>>0<x>>>0,r=H+8|0,a=t[r>>2],e=a+b|0,r=I+t[r+4>>2]|0,r=a>>>0>e>>>0?r+1|0:r,a=e+n|0,r=a>>>0<e>>>0?r+1|0:r,e=a,a=a+c|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+k|0,r=e>>>0>a>>>0?r+1|0:r,e=a,a=a+L|0,r=e>>>0>a>>>0?r+1|0:r,c=a,a=R?1354194884:0,e=c+a|0,n=r,r=r+(R?1162945305:0)|0,a=a>>>0>e>>>0?r+1|0:r,r=A+a|0,x=s+16|0,E=e+C|0,f=E>>>0<C>>>0?r+1|0:r,T=(a|0)==(f|0)&e>>>0>E>>>0|a>>>0>f>>>0,a=(a|0)==(n|0)&e>>>0<c>>>0|a>>>0<n>>>0,n=R+((n|0)==(I|0)&c>>>0<b>>>0|n>>>0<I>>>0)|0,r=R>>>0>n>>>0,a=a+n|0,r=a>>>0<n>>>0?r+1|0:r,b=a+T|0,r=b>>>0<a>>>0?r+1|0:r,T=r,P(x,b,r,0,0,801750719,1076732275,0,0),P(s,b,r,0,0,1354194884,1162945305,0,0),a=t[s+16>>2],A=a,k=t[s+20>>2],r=k+d|0,n=a+h|0,d=n>>>0<h>>>0?r+1|0:r,a=t[s>>2],c=a,I=t[s+4>>2],r=I+o|0,e=a+g|0,a=e>>>0<g>>>0?r+1|0:r,o=e,e=(d|0)==(k|0)&n>>>0<A>>>0|d>>>0<k>>>0,r=x+8|0,g=e+t[r>>2]|0,r=t[r+4>>2],r=(e>>>0>g>>>0?r+1|0:r)+a|0,e=o+g|0,h=e>>>0<g>>>0?r+1|0:r,g=e,e=(a|0)==(h|0)&e>>>0<o>>>0|a>>>0>h>>>0,a=(a|0)==(I|0)&o>>>0<c>>>0|a>>>0<I>>>0,r=s+8|0,o=a+t[r>>2]|0,r=t[r+4>>2],r=a>>>0>o>>>0?r+1|0:r,c=e+o|0,o=c>>>0<o>>>0?r+1|0:r,r=y+T|0,e=b+w|0,a=e>>>0<w>>>0?r+1|0:r,r=a+o|0,A=(a|0)==(T|0)&e>>>0<b>>>0|a>>>0<T>>>0,y=e,c=e+c|0,e=c>>>0<e>>>0?r+1|0:r,r=y,y=c,o=(a|0)==(e|0)&r>>>0>c>>>0|a>>>0>e>>>0,a=A+o|0,o=a>>>0<o>>>0,r=f+o|0,f=a+E|0,r=f>>>0<E>>>0?r+1|0:r,E=(e|0)==-1,c=r,b=E&y>>>0<4294967294|(e|0)!=-1|(r&f)!=-1,w=(h|0)==-1162945306,r=(b|(w&g>>>0<2940772411|h>>>0<3132021990))^-1,b=(r&((d|0)==-1076732276&n>>>0>3493216576|d>>>0>3218235020)|(r&(w&g>>>0>2940772411|h>>>0>3132021990)|(y|0)==-1&E&(b^-1)))+((o|0)==(c|0)&a>>>0>f>>>0|o>>>0>c>>>0)|0,a=I0(b,0,801750719,1076732275),o=a+n|0,r=d+i0|0,t[i>>2]=o,r=a>>>0>o>>>0?r+1|0:r,t[i+4>>2]=r,a=i,d=(r|0)==(d|0)&n>>>0>o>>>0|r>>>0<d>>>0,i=I0(b,0,1354194884,1162945305),n=i+g|0,r=h+i0|0,r=i>>>0>n>>>0?r+1|0:r,i=r,d=n+d|0,r=d>>>0<n>>>0?r+1|0:r,t[a+8>>2]=d,t[a+12>>2]=r,A=(i|0)==(h|0)&n>>>0<g>>>0|i>>>0<h>>>0,i=(i|0)==(r|0)&n>>>0>d>>>0|i>>>0>r>>>0,o=A+i|0,d=i>>>0>o>>>0,r=e,n=y+b|0,i=n>>>0<b>>>0?r+1|0:r,r=i+d|0,d=n+o|0,r=d>>>0<n>>>0?r+1|0:r,t[a+16>>2]=d,t[a+20>>2]=r,e=(i|0)==(e|0)&n>>>0<y>>>0|i>>>0<e>>>0,i=(i|0)==(r|0)&n>>>0>d>>>0|i>>>0>r>>>0,n=e+i|0,r=c+(i>>>0>n>>>0)|0,i=n+f|0,r=i>>>0<f>>>0?r+1|0:r,t[a+24>>2]=i,t[a+28>>2]=r,D=s+288|0}function h2(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0,V0=0,q0=0,Z0=0,Y0=0,K0=0,Q0=0,J0=0,_0=0,$0=0,ee=0,ae=0,oe=0,ce=0,de=0;y=D-3808|0,D=y,n=y+3696|0,t[n>>2]=0,t[n+4>>2]=0,n=y+3704|0,t[n>>2]=0,t[n+4>>2]=0,n=y+3712|0,t[n>>2]=0,t[n+4>>2]=0,t[y+3688>>2]=0,t[y+3692>>2]=0,t[y+3680>>2]=1,t[y+3684>>2]=0;t:{if(!(!t[r+120>>2]&&t[a+24>>2]|(t[a+16>>2]|(t[a+8>>2]|t[a>>2]))|(t[a+28>>2]|(t[a+20>>2]|(t[a+12>>2]|t[a+4>>2]))))){a=0,r=0;break t}s=D-128|0,D=s,c=s- -64|0,ba(c,a,690640),t[s+56>>2]=0,t[s+60>>2]=0,d=((t[s+108>>2]>>>31|0)-1>>>8^-1)&1,o=t[s+112>>2],g=d+o|0,n=t[s+116>>2],t[s+32>>2]=g,n=o>>>0>g>>>0?n+1|0:n,t[s+36>>2]=n,d=!n&d>>>0>g>>>0,o=t[s+120>>2],g=d+o|0,n=t[s+124>>2],t[s+40>>2]=g,n=o>>>0>g>>>0?n+1|0:n,t[s+44>>2]=n,t[s+48>>2]=!n&d>>>0>g>>>0,t[s+52>>2]=0,ba(c,a,690672),t[s+24>>2]=0,t[s+28>>2]=0,d=((t[s+108>>2]>>>31|0)-1>>>8^-1)&1,o=t[s+112>>2],c=d+o|0,n=t[s+116>>2],t[s>>2]=c,n=o>>>0>c>>>0?n+1|0:n,t[s+4>>2]=n,o=!n&c>>>0<d>>>0,E=s,s=t[s+120>>2],d=o+s|0,n=t[E+124>>2],t[E+8>>2]=d,n=s>>>0>d>>>0?n+1|0:n,t[E+12>>2]=n,t[E+16>>2]=!n&o>>>0>d>>>0,t[E+20>>2]=0,n=E+32|0,xt(n,n,690576),xt(E,E,690608),d=t[E>>2],o=t[E+32>>2],s=d+o|0,c=t[E+4>>2],n=c+t[E+36>>2]|0,k=s>>>0<o>>>0?n+1|0:n,h=s,g=(c|0)==(k|0)&s>>>0<d>>>0|c>>>0>k>>>0,s=t[E+40>>2],d=g+s|0,n=t[E+44>>2],c=t[E+8>>2],o=c+d|0,s=s>>>0>d>>>0?n+1|0:n,n=s+t[E+12>>2]|0,f=!s&d>>>0<g>>>0,x=o>>>0<c>>>0?n+1|0:n,A=o,s=(s|0)==(x|0)&d>>>0>o>>>0|s>>>0>x>>>0,o=f+s|0,f=s>>>0>o>>>0,n=f+t[E+52>>2]|0,s=t[E+48>>2],g=s+o|0,c=t[E+16>>2],d=g+c|0,s=s>>>0>g>>>0?n+1|0:n,n=s+t[E+20>>2]|0,o=(s|0)==(f|0)&o>>>0>g>>>0|s>>>0<f>>>0,c=c>>>0>d>>>0?n+1|0:n,C=d,s=(s|0)==(c|0)&g>>>0>d>>>0|s>>>0>c>>>0,o=o+s|0,g=s>>>0>o>>>0,n=g+t[E+60>>2]|0,s=t[E+56>>2],d=s+o|0,f=t[E+24>>2],w=d+f|0,s=s>>>0>d>>>0?n+1|0:n,n=s+t[E+28>>2]|0,T=f>>>0>w>>>0?n+1|0:n,f=((s|0)==(g|0)&o>>>0>d>>>0|s>>>0<g>>>0)+((s|0)==(T|0)&d>>>0>w>>>0|s>>>0>T>>>0)|0,o=(c|0)==-1,s=o&C>>>0<4294967294|(c|0)!=-1|(w&T)!=-1,d=(x|0)==-1162945306,n=(s|(d&A>>>0<2940772411|x>>>0<3132021990))^-1,R=f+(n&((k|0)==-1076732276&h>>>0>3493216576|k>>>0>3218235020)|(n&(d&A>>>0>2940772411|x>>>0>3132021990)|(C|0)==-1&o&(s^-1)))|0,o=I0(R,0,801750719,1076732275),s=o+h|0,n=k+i0|0,f=y+3720|0,t[f>>2]=s,g=s>>>0<o>>>0?n+1|0:n,t[f+4>>2]=g,d=f,o=I0(R,0,1354194884,1162945305),b=o+A|0,n=x+i0|0,s=(g|0)==(k|0)&s>>>0<h>>>0|g>>>0<k>>>0,f=b+s|0,n=o>>>0>b>>>0?n+1|0:n,o=n,t[d+8>>2]=f,h=s>>>0>f>>>0?n+1|0:n,t[d+12>>2]=h,n=c,g=C+R|0,s=g>>>0<C>>>0?n+1|0:n,n=(o|0)==(x|0)&b>>>0<A>>>0|o>>>0<x>>>0,o=(o|0)==(h|0)&f>>>0<b>>>0|o>>>0>h>>>0,f=n+o|0,n=(o>>>0>f>>>0)+s|0,o=f+g|0,n=o>>>0<f>>>0?n+1|0:n,t[d+16>>2]=o,t[d+20>>2]=n,A=d,c=(s|0)==(c|0)&g>>>0<C>>>0|s>>>0<c>>>0,s=(n|0)==(s|0)&o>>>0<g>>>0|n>>>0<s>>>0,o=c+s|0,n=T+(s>>>0>o>>>0)|0,s=o+w|0,n=s>>>0<w>>>0?n+1|0:n,t[d+24>>2]=s,t[d+28>>2]=n,d=y+2560|0,xt(d,A,690704),N=t[d+24>>2],w=t[d+16>>2],g=t[d+8>>2],s=t[d>>2],h=t[d+28>>2],f=t[d+20>>2],b=t[d+12>>2],c=t[d+4>>2],n=N|(w|(g|s))|(h|(f|(b|c)))?-1:0,C=s^-1,o=C-801750718|0,R=n&o,t[d>>2]=R,s=n,c=c^-1,n=c-((C>>>0<801750718)+1076732275|0)|0,T=s&n,t[d+4>>2]=T,o=(n|0)==(c|0)&o>>>0<C>>>0|n>>>0<c>>>0,g=g^-1,k=o+g|0,C=b^-1,n=C,c=k-1354194885|0,x=c&s,t[d+8>>2]=x,n=o>>>0>k>>>0?n+1|0:n,b=n-((k>>>0<1354194885)+1162945305|0)|0,o=b&s,t[d+12>>2]=o,c=(n|0)==(b|0)&c>>>0<k>>>0|n>>>0>b>>>0,g=c+((n|0)==(C|0)&g>>>0>k>>>0|n>>>0<C>>>0)|0,C=w^-1,Z=C+g|0,w=f^-1,n=w+(c>>>0>g>>>0)|0,n=C>>>0>Z>>>0?n+1|0:n,b=n-(Z>>>0<2)|0,g=b&s,k=g,c=Z-2|0,f=c&s,t[d+16>>2]=f,t[d+20>>2]=g,c=(n|0)==(b|0)&c>>>0<Z>>>0|n>>>0>b>>>0,g=c+((n|0)==(w|0)&C>>>0>Z>>>0|n>>>0<w>>>0)|0,n=c>>>0>g>>>0,c=g-N|0,Z=c-2&s,t[d+24>>2]=Z,b=(n-((g>>>0<N>>>0)+h|0)|0)-(c>>>0<2)&s,t[d+28>>2]=b,s=t[a>>2],c=s,g=t[a+4>>2],n=g+T|0,s=s+R|0,n=s>>>0<R>>>0?n+1|0:n,T=s,t[d>>2]=s,C=n,t[d+4>>2]=n,n=o,h=(g|0)==(C|0)&s>>>0<c>>>0|g>>>0>C>>>0,s=h+x|0,o=s>>>0<x>>>0?n+1|0:n,n=o+t[a+12>>2]|0,c=s,g=t[a+8>>2],s=s+g|0,w=s,t[d+8>>2]=s,x=s>>>0<g>>>0?n+1|0:n,t[d+12>>2]=x,L=t[a+16>>2],f=L+f|0,N=t[a+20>>2],n=N+k|0,s=f>>>0<L>>>0?n+1|0:n,n=!o&c>>>0<h>>>0,o=(o|0)==(x|0)&c>>>0>w>>>0|o>>>0>x>>>0,c=n+o|0,n=(o>>>0>c>>>0)+s|0,o=c+f|0,n=o>>>0<c>>>0?n+1|0:n,k=o,t[d+16>>2]=o,c=n,t[d+20>>2]=n,o=t[a+24>>2],h=o,R=t[a+28>>2],n=R+b|0,o=o+Z|0,a=o>>>0<Z>>>0?n+1|0:n,g=o,n=(s|0)==(N|0)&f>>>0<L>>>0|s>>>0<N>>>0,s=(s|0)==(c|0)&f>>>0>k>>>0|s>>>0>c>>>0,f=n+s|0,n=(s>>>0>f>>>0)+a|0,b=o+f|0,n=b>>>0<f>>>0?n+1|0:n,o=d,f=n,g=((a|0)==(R|0)&h>>>0>g>>>0|a>>>0<R>>>0)+((a|0)==(n|0)&b>>>0<g>>>0|a>>>0>n>>>0)|0,s=(c|0)==-1,n=s&k>>>0<4294967294|(c|0)!=-1|(n&b)!=-1,d=(x|0)==-1162945306,a=(n|(d&w>>>0<2940772411|x>>>0<3132021990))^-1,R=g+(a&((C|0)==-1076732276&T>>>0>3493216576|C>>>0>3218235020)|(a&(d&w>>>0>2940772411|x>>>0>3132021990)|(k|0)==-1&s&(n^-1)))|0,s=I0(R,0,801750719,1076732275),a=s+T|0,n=C+i0|0,t[o>>2]=a,d=a>>>0<s>>>0?n+1|0:n,t[o+4>>2]=d,s=I0(R,0,1354194884,1162945305),h=s+w|0,n=x+i0|0,a=(d|0)==(C|0)&a>>>0<T>>>0|d>>>0<C>>>0,g=h+a|0,n=s>>>0>h>>>0?n+1|0:n,s=n,t[o+8>>2]=g,T=a>>>0>g>>>0?n+1|0:n,t[o+12>>2]=T,n=c,d=k+R|0,a=d>>>0<k>>>0?n+1|0:n,n=(s|0)==(x|0)&w>>>0>h>>>0|s>>>0<x>>>0,s=(s|0)==(T|0)&h>>>0>g>>>0|s>>>0>T>>>0,g=n+s|0,n=(s>>>0>g>>>0)+a|0,s=d+g|0,n=s>>>0<g>>>0?n+1|0:n,t[o+16>>2]=s,t[o+20>>2]=n,c=(a|0)==(c|0)&d>>>0<k>>>0|a>>>0<c>>>0,a=(a|0)==(n|0)&s>>>0<d>>>0|a>>>0>n>>>0,s=c+a|0,n=f+(a>>>0>s>>>0)|0,a=s+b|0,n=a>>>0<b>>>0?n+1|0:n,t[o+24>>2]=a,t[o+28>>2]=n,D=E+128|0,ce=y,de=hr(y+496|0,o,5),t[ce+1528>>2]=de,oe=hr(y+1012|0,A,5),t[y+1532>>2]=oe,q0=t[y+1528>>2],s0=y+3088|0,Ze(s0,r,128),a=y+1536|0,C0=y+2240|0,V0=y+3680|0,h=0,T=0,b=0,c=0,x=D-720|0,D=x;e:{if(t[s0+120>>2]){t[x+672>>2]=1,me(x+552|0,120),d=0,o=0;break e}wn(x+552|0,s0),r=x+664|0,b=t[r>>2],c=t[r+4>>2],r=x+648|0,S=t[r>>2],I=t[r+4>>2],r=x+640|0,H=t[r>>2],z=t[r+4>>2],h=t[x+632>>2],T=t[x+636>>2],r=x+656|0,d=t[r>>2],o=t[r+4>>2]}for(K=x+552|0,s=K+8|0,n=t[s+4>>2],x0=x+336|0,r=x0+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+16|0,n=t[s+4>>2],r=x0+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+24|0,n=t[s+4>>2],r=x0+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+32|0,n=t[s+4>>2],r=x0+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+48|0,n=t[s+4>>2],r=x0+48|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+56|0,n=t[s+4>>2],r=x0+56|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K- -64|0,n=t[s+4>>2],r=x0- -64|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+72|0,n=t[s+4>>2],r=x0+72|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,t[x+416>>2]=0,r=t[x+556>>2],t[x+336>>2]=t[x+552>>2],t[x+340>>2]=r,r=t[x+596>>2],t[x+376>>2]=t[x+592>>2],t[x+380>>2]=r,j=x+304|0,Y=h<<1,$=T<<1|h>>>31,P(j,d,o,0,0,Y,$,0,0),V=x+224|0,s=S,r=I,g=H<<1,f=z<<1|H>>>31,P(V,s,r,0,0,g,f,0,0),w=x+160|0,n=c,P(w,b,n,0,0,b,n,0,0),C=x+144|0,P(C,t[x+160>>2],t[x+164>>2],0,0,15632,16,0,0),c=b,n=n<<1|c>>>31,l0=x+112|0,b0=c<<1,Z=n,P(l0,b0,n,0,0,h,T,0,0),g0=x+272|0,P(g0,d,o,0,0,g,f,0,0),e0=x+208|0,P(e0,s,r,0,0,s,r,0,0),R=x+128|0,n=w+8|0,P(R,t[n>>2],t[n+4>>2],0,0,64028672,65536,0,0),k0=x+320|0,P(k0,h,T,0,0,h,T,0,0),M0=x+96|0,P(M0,b0,Z,0,0,H,z,0,0),k=r,L=s,n=r<<1|s>>>31,R0=x+176|0,S=d,I=o,P(R0,d,o,0,0,s<<1,n,0,0),f=t[x+304>>2],s=t[x+224>>2],r=f+s|0,X=t[x+308>>2],n=X+t[x+228>>2]|0,n=r>>>0<s>>>0?n+1|0:n,s=t[x+144>>2],N=s+r|0,o=n,n=n+t[x+148>>2]|0,g=s>>>0>N>>>0?n+1|0:n,u0=t[x+272>>2],s=t[x+208>>2],w=u0+s|0,d0=t[x+276>>2],n=d0+t[x+212>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=t[x+112>>2],A=s+w|0,c=n,n=n+t[x+116>>2]|0,n=s>>>0>A>>>0?n+1|0:n,s=t[x+128>>2],h=s+A|0,d=n,n=n+t[x+132>>2]|0,s=s>>>0>h>>>0?n+1|0:n,E=(o|0)==(g|0)&r>>>0>N>>>0|o>>>0>g>>>0,n=C+8|0,b=t[n>>2],T=t[n+4>>2],f=(o|0)==(X|0)&r>>>0<f>>>0|o>>>0<X>>>0,n=V+8|0,o=t[n>>2],r=j+8|0,C=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>C>>>0?n+1|0:n,r=f+C|0,n=(r>>>0<C>>>0?n+1|0:n)+T|0,o=r,r=r+b|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+E|0,n=o>>>0>r>>>0?n+1|0:n,C=g,g=r<<12|g>>>20,T=g+h|0,o=n,n=s+(n<<12|r>>>20)|0,g=T>>>0<g>>>0?n+1|0:n,E0=x+80|0,X=E0,t0=t[x+96>>2],r=t[x+176>>2],b=t0+r|0,_=t[x+100>>2],n=_+t[x+180>>2]|0,r=r>>>0>b>>>0?n+1|0:n,j=(s|0)==(g|0)&h>>>0>T>>>0|s>>>0>g>>>0,V=(s|0)==(d|0)&h>>>0<A>>>0|s>>>0<d>>>0,n=R+8|0,R=t[n>>2],E=t[n+4>>2],A=(c|0)==(d|0)&w>>>0>A>>>0|c>>>0>d>>>0,n=l0+8|0,h=t[n>>2],f=t[n+4>>2],c=(c|0)==(d0|0)&w>>>0<u0>>>0|c>>>0<d0>>>0,d=e0+8|0,s=t[d>>2],n=g0+8|0,w=s+t[n>>2]|0,n=t[n+4>>2]+t[d+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=c+w|0,n=(s>>>0<w>>>0?n+1|0:n)+f|0,c=s,s=s+h|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+A|0,n=(c>>>0>s>>>0?n+1|0:n)+E|0,c=s,s=s+R|0,n=c>>>0>s>>>0?n+1|0:n,d=s+V|0,n=d>>>0<s>>>0?n+1|0:n,o=o>>>20|0,s=o+d|0,n=o>>>0>s>>>0?n+1|0:n,o=s,s=s+j|0,o=o>>>0>s>>>0?n+1|0:n,d=o<<12|s>>>20,n=s<<12,s=g,g=n|s>>>20,c=g+b|0,n=r+d|0,g=c>>>0<g>>>0?n+1|0:n,d=c,n=g<<4|d>>>28,f=d<<4&-16,c=n&16777215,E=s,P(X,f|s>>>16&15,c,0,0,977,1,0,0),f=x,V=t[f+80>>2],s=t[f+320>>2],h=V+s|0,r0=t[f+84>>2],n=r0+t[f+324>>2]|0,t[f+424>>2]=h,c=s>>>0>h>>>0?n+1|0:n,t[f+428>>2]=c&1048575,l0=f+256|0,P(l0,H,z,0,0,Y,$,0,0),g0=f- -64|0,P(g0,b0,Z,0,0,L,k,0,0),e0=f+288|0,P(e0,S,I,0,0,S,I,0,0),u0=f+48|0,x=u0,X=t[f+64>>2],s=t[f+288>>2],R=X+s|0,d0=t[f+68>>2],n=d0+t[f+292>>2]|0,s=s>>>0>R>>>0?n+1|0:n,w=R,A=(r|0)==(g|0)&d>>>0<b>>>0|r>>>0>g>>>0,b=(r|0)==(_|0)&b>>>0<t0>>>0|r>>>0<_>>>0,n=R0+8|0,d=t[n>>2],r=M0+8|0,j=d+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=d>>>0>j>>>0?n+1|0:n,d=b+j|0,n=d>>>0<j>>>0?n+1|0:n,o=o>>>20|0,r=o+d|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+A|0,n=o>>>0>r>>>0?n+1|0:n,o=r<<12|g>>>20,w=o+w|0,d=n,n=s+(n<<12|r>>>20)|0,b=o>>>0>w>>>0?n+1|0:n,P(x,w,b&1048575,0,0,15632,16,0,0),j=t[f+48>>2],r=t[f+256>>2],x=j+r|0,t0=t[f+52>>2],n=t0+t[f+260>>2]|0,r=r>>>0>x>>>0?n+1|0:n,A=x,h=(c|0)==(r0|0)&h>>>0<V>>>0|c>>>0<r0>>>0,g=k0+8|0,o=t[g>>2],n=E0+8|0,V=o+t[n>>2]|0,n=t[n+4>>2]+t[g+4>>2]|0,n=o>>>0>V>>>0?n+1|0:n,o=h+V|0,n=o>>>0<V>>>0?n+1|0:n,c=o<<12|c>>>20,A=c+A|0,g=n,n=r+(n<<12|o>>>20)|0,t[f+432>>2]=A,h=c>>>0>A>>>0?n+1|0:n,t[f+436>>2]=h&1048575,V=f+192|0,P(V,L,k,0,0,Y,$,0,0),Y=f+240|0,P(Y,H,z,0,0,H,z,0,0),H=f+32|0,P(H,b0,Z,0,0,S,I,0,0),L=f+16|0,k=L,w=(s|0)==(b|0)&w>>>0<R>>>0|s>>>0>b>>>0,c=(s|0)==(d0|0)&R>>>0<X>>>0|s>>>0<d0>>>0,o=e0+8|0,s=t[o>>2],n=g0+8|0,I=s+t[n>>2]|0,n=t[n+4>>2]+t[o+4>>2]|0,n=s>>>0>I>>>0?n+1|0:n,o=c+I|0,n=o>>>0<I>>>0?n+1|0:n,d=d>>>20|0,s=o+d|0,n=d>>>0>s>>>0?n+1|0:n,o=s,s=s+w|0,n=o>>>0>s>>>0?n+1|0:n,R=s<<12|b>>>20,o=t[f+32>>2],b=R+o|0,c=n,$=n<<12|s>>>20,n=$+t[f+36>>2]|0,I=o>>>0>b>>>0?n+1|0:n,P(k,b,I,0,0,15632,16,0,0),z=t[f+192>>2],s=t[f+240>>2],k=z+s|0,Z=t[f+196>>2],n=Z+t[f+244>>2]|0,n=s>>>0>k>>>0?n+1|0:n,s=t[f+16>>2],w=s+k|0,d=n,n=n+t[f+20>>2]|0,s=s>>>0>w>>>0?n+1|0:n,S=(r|0)==(h|0)&A>>>0<x>>>0|r>>>0>h>>>0,A=(r|0)==(t0|0)&x>>>0<j>>>0|r>>>0<t0>>>0,n=l0+8|0,o=t[n>>2],r=u0+8|0,x=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>x>>>0?n+1|0:n,o=A+x|0,n=o>>>0<x>>>0?n+1|0:n,g=g>>>20|0,r=o+g|0,n=g>>>0>r>>>0?n+1|0:n,o=r,r=r+S|0,n=o>>>0>r>>>0?n+1|0:n,g=r<<12|h>>>20,h=g+w|0,o=n,n=s+(n<<12|r>>>20)|0,t[f+440>>2]=h,g=h>>>0<g>>>0?n+1|0:n,t[f+444>>2]=g&1048575,r=f,A=(I|0)==($|0)&b>>>0<R>>>0|I>>>0<$>>>0,n=H+8|0,b=t[n>>2],n=t[n+4>>2],c=c>>>20|0,f=c,c=c+b|0,n=f>>>0>c>>>0?n+1|0:n,f=c,c=c+A|0,n=f>>>0>c>>>0?n+1|0:n,P(r,c,n,0,0,64028672,65536,0,0),c=r,I=t[r>>2],r=N&-2,f=I+r|0,S=t[c+4>>2],n=S+(C&1048575)|0,r=r>>>0>f>>>0?n+1|0:n,C=(s|0)==(g|0)&w>>>0>h>>>0|s>>>0>g>>>0,w=(s|0)==(d|0)&w>>>0<k>>>0|s>>>0<d>>>0,n=L+8|0,A=t[n>>2],b=t[n+4>>2],h=(d|0)==(Z|0)&k>>>0<z>>>0|d>>>0<Z>>>0,d=Y+8|0,s=t[d>>2],n=V+8|0,k=s+t[n>>2]|0,n=t[n+4>>2]+t[d+4>>2]|0,n=s>>>0>k>>>0?n+1|0:n,s=h+k|0,n=(s>>>0<k>>>0?n+1|0:n)+b|0,d=s,s=s+A|0,n=d>>>0>s>>>0?n+1|0:n,d=s+w|0,n=d>>>0<s>>>0?n+1|0:n,o=o>>>20|0,s=o+d|0,n=o>>>0>s>>>0?n+1|0:n,o=s,s=s+C|0,n=o>>>0>s>>>0?n+1|0:n,g=s<<12|g>>>20,d=g+f|0,o=n,n=r+(n<<12|s>>>20)|0,t[c+448>>2]=d,s=d>>>0<g>>>0?n+1|0:n,t[c+452>>2]=s&1048575,b=E&65535,h=(r|0)==(s|0)&f>>>0>d>>>0|r>>>0>s>>>0,g=(r|0)==(S|0)&f>>>0<I>>>0|r>>>0<S>>>0,r=c+8|0,d=g+t[r>>2]|0,n=t[r+4>>2],n=d>>>0<g>>>0?n+1|0:n,o=o>>>20|0,r=o+d|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+h|0,n=o>>>0>r>>>0?n+1|0:n,s=r<<12|s>>>20,o=s+T|0,n=b+(n<<12|r>>>20)|0,t[c+456>>2]=o,t[c+460>>2]=s>>>0>o>>>0?n+1|0:n,r=c+680|0,k=c+424|0,g=K+80|0,U0(r,k,g),U0(a,s0,k),U0(a+40|0,s0+40|0,r),s=t[s0+120>>2],t[a+80>>2]=s,n=a+8|0,r=t[n+4>>2],C=k+8|0,t[C>>2]=t[n>>2],t[C+4>>2]=r,n=a+16|0,r=t[n+4>>2],E=k+16|0,t[E>>2]=t[n>>2],t[E+4>>2]=r,n=a+24|0,r=t[n+4>>2],w=k+24|0,t[w>>2]=t[n>>2],t[w+4>>2]=r,n=a+32|0,r=t[n+4>>2],A=k+32|0,t[A>>2]=t[n>>2],t[A+4>>2]=r,n=a+48|0,r=t[n+4>>2],b=k+48|0,t[b>>2]=t[n>>2],t[b+4>>2]=r,n=a+56|0,r=t[n+4>>2],h=k+56|0,t[h>>2]=t[n>>2],t[h+4>>2]=r,n=a- -64|0,r=t[n+4>>2],T=k- -64|0,t[T>>2]=t[n>>2],t[T+4>>2]=r,n=a+72|0,r=t[n+4>>2],f=k+72|0,t[f>>2]=t[n>>2],t[f+4>>2]=r,t[c+544>>2]=s,r=t[a+4>>2],t[c+424>>2]=t[a>>2],t[c+428>>2]=r,r=t[a+44>>2],t[c+464>>2]=t[a+40>>2],t[c+468>>2]=r,s=s0+112|0,n=t[s+4>>2],r=k+112|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=s0+104|0,n=t[s+4>>2],r=k+104|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=s0+96|0,n=t[s+4>>2],r=k+96|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=s0+88|0,n=t[s+4>>2],r=k+88|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,d=t[s0+80>>2],o=t[s0+84>>2],r=t[c+636>>2],t[C0>>2]=t[c+632>>2],t[C0+4>>2]=r,s=K+88|0,n=t[s+4>>2],r=C0+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+96|0,n=t[s+4>>2],r=C0+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+104|0,n=t[s+4>>2],r=C0+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+112|0,n=t[s+4>>2],r=C0+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,t[c+504>>2]=d,t[c+508>>2]=o,Dt(k,k,x0,C0+40|0),t[a+168>>2]=0,r=t[c+428>>2],t[a+88>>2]=t[c+424>>2],t[a+92>>2]=r,n=t[C+4>>2],r=a+96|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+104|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+112|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+120|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+128|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+136|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+144|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+152|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+160|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,Dt(k,k,x0,C0+80|0),t[a+256>>2]=0,r=t[c+428>>2],t[a+176>>2]=t[c+424>>2],t[a+180>>2]=r,n=t[C+4>>2],r=a+184|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+192|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+200|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+208|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+216|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+224|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+232|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+240|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+248|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,Dt(k,k,x0,C0+120|0),t[a+344>>2]=0,r=t[c+428>>2],t[a+264>>2]=t[c+424>>2],t[a+268>>2]=r,n=t[C+4>>2],r=a+272|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+280|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+288|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+296|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+304|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+312|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+320|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+328|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+336|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,Dt(k,k,x0,C0+160|0),t[a+432>>2]=0,r=t[c+428>>2],t[a+352>>2]=t[c+424>>2],t[a+356>>2]=r,n=t[C+4>>2],r=a+360|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+368|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+376|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+384|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+392|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+400|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+408|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+416|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+424|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,Dt(k,k,x0,C0+200|0),t[a+520>>2]=0,r=t[c+428>>2],t[a+440>>2]=t[c+424>>2],t[a+444>>2]=r,n=t[C+4>>2],r=a+448|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+456|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+464|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+472|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+480|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+488|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+496|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+504|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+512|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,R=C0+240|0,Dt(k,k,x0,R),t[a+608>>2]=0,r=t[c+428>>2],t[a+528>>2]=t[c+424>>2],t[a+532>>2]=r,n=t[C+4>>2],r=a+536|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+544|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+552|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+560|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+568|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+576|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+584|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+592|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+600|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,o=C0+280|0,Dt(k,k,x0,o),t[a+696>>2]=0,r=t[c+428>>2],t[a+616>>2]=t[c+424>>2],t[a+620>>2]=r,n=t[C+4>>2],r=a+624|0,t[r>>2]=t[C>>2],t[r+4>>2]=n,n=t[E+4>>2],r=a+632|0,t[r>>2]=t[E>>2],t[r+4>>2]=n,n=t[w+4>>2],r=a+640|0,t[r>>2]=t[w>>2],t[r+4>>2]=n,n=t[A+4>>2],r=a+648|0,t[r>>2]=t[A>>2],t[r+4>>2]=n,n=t[c+468>>2],r=a+656|0,t[r>>2]=t[c+464>>2],t[r+4>>2]=n,n=t[b+4>>2],r=a+664|0,t[r>>2]=t[b>>2],t[r+4>>2]=n,n=t[h+4>>2],r=a+672|0,t[r>>2]=t[h>>2],t[r+4>>2]=n,n=t[T+4>>2],r=a+680|0,t[r>>2]=t[T>>2],t[r+4>>2]=n,n=t[f+4>>2],r=a+688|0,t[r>>2]=t[f>>2],t[r+4>>2]=n,U0(V0,k+80|0,g),D=c+720|0,b=D-928|0,D=b,d=a+616|0,c=d+72|0,s=t[c>>2],g=t[d+44>>2],n=t[d+40>>2],T=t[c+4>>2],r=I0(T>>>16|0,0,977,1),f=n+r|0,n=g+i0|0,t[d+40>>2]=f,n=r>>>0>f>>>0?n+1|0:n,t[d+44>>2]=n&1048575,h=d+48|0,f=t[h>>2],r=n,n=t[h+4>>2],r=r>>>20|0,g=r,r=r+f|0,n=g>>>0>r>>>0?n+1|0:n,t[h>>2]=r,t[h+4>>2]=n&1048575,h=d+56|0,f=t[h>>2],r=n,n=t[h+4>>2],r=r>>>20|0,g=r,r=r+f|0,n=g>>>0>r>>>0?n+1|0:n,t[h>>2]=r,t[h+4>>2]=n&1048575,f=d- -64|0,g=t[f>>2],r=n,n=t[f+4>>2],r=r>>>20|0,d=r,r=r+g|0,n=d>>>0>r>>>0?n+1|0:n,t[f>>2]=r,t[f+4>>2]=n&1048575,d=c,r=n,n=T&65535,r=r>>>20|0,c=r,r=r+s|0,n=c>>>0>r>>>0?n+1|0:n,t[d>>2]=r,t[d+4>>2]=n,s=o+8|0,n=t[s+4>>2],d0=b+808|0,r=d0+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=o+16|0,n=t[s+4>>2],r=d0+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=o+24|0,n=t[s+4>>2],r=d0+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=o+32|0,n=t[s+4>>2],r=d0+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,r=t[o+4>>2],t[b+808>>2]=t[o>>2],t[b+812>>2]=r,V0=6,_=a+528|0,s=_+8|0,n=t[s+4>>2],r0=b+680|0,r=r0+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+16|0,n=t[s+4>>2],r=r0+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+24|0,n=t[s+4>>2],r=r0+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+32|0,n=t[s+4>>2],r=r0+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+48|0,n=t[s+4>>2],r=r0+48|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+56|0,n=t[s+4>>2],r=r0+56|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_- -64|0,n=t[s+4>>2],r=r0- -64|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=_+72|0,n=t[s+4>>2],r=r0+72|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,r=t[_+4>>2],t[b+680>>2]=t[_>>2],t[b+684>>2]=r,r=t[_+44>>2],t[b+720>>2]=t[_+40>>2],t[b+724>>2]=r,A=t[b+840>>2],c=t[b+844>>2],s=t[b+824>>2],g=t[b+828>>2],Y=t[b+816>>2],x=t[b+820>>2],d=t[b+832>>2],o=t[b+836>>2],h=t[b+808>>2],T=t[b+812>>2],t[b+800>>2]=0,L=b+440|0,$=h<<1,b0=T<<1|h>>>31,P(L,d,o,0,0,$,b0,0,0),N=b+504|0,r=g,g=Y<<1,f=x<<1|Y>>>31,P(N,s,r,0,0,g,f,0,0),C=b+632|0,n=c,P(C,A,n,0,0,A,n,0,0),E=b+616|0,P(E,t[b+632>>2],t[b+636>>2],0,0,15632,16,0,0),c=A,n=n<<1|c>>>31,l0=b+472|0,V=c<<1,H=n,P(l0,V,n,0,0,h,T,0,0),g0=b+488|0,P(g0,d,o,0,0,g,f,0,0),e0=b+568|0,P(e0,s,r,0,0,s,r,0,0),A=b+600|0,n=C+8|0,P(A,t[n>>2],t[n+4>>2],0,0,64028672,65536,0,0),M0=b+456|0,P(M0,h,T,0,0,h,T,0,0),R0=b+536|0,P(R0,V,H,0,0,Y,x,0,0),I=r,Z=s,n=r<<1|s>>>31,E0=b+584|0,z=d,S=o,P(E0,d,o,0,0,s<<1,n,0,0),d=t[b+440>>2],s=t[b+504>>2],r=d+s|0,T=t[b+444>>2],n=T+t[b+508>>2]|0,n=r>>>0<s>>>0?n+1|0:n,s=t[b+616>>2],k=s+r|0,o=n,n=n+t[b+620>>2]|0,s=s>>>0>k>>>0?n+1|0:n,f=(o|0)==(s|0)&r>>>0>k>>>0|s>>>0<o>>>0,n=E+8|0,g=t[n>>2],c=t[n+4>>2],d=(o|0)==(T|0)&r>>>0<d>>>0|o>>>0<T>>>0,n=N+8|0,o=t[n>>2],r=L+8|0,T=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>T>>>0?n+1|0:n,r=d+T|0,n=(r>>>0<T>>>0?n+1|0:n)+c|0,o=r,r=r+g|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+f|0,n=o>>>0>r>>>0?n+1|0:n,C=s,g=r<<12|s>>>20,d=n,c=n<<12|r>>>20,u0=t[b+488>>2],r=t[b+568>>2],h=u0+r|0,t0=t[b+492>>2],n=t0+t[b+572>>2]|0,n=r>>>0>h>>>0?n+1|0:n,r=t[b+472>>2],T=r+h|0,o=n,n=n+t[b+476>>2]|0,n=r>>>0>T>>>0?n+1|0:n,r=t[b+600>>2],f=r+T|0,s=n,n=n+t[b+604>>2]|0,r=r>>>0>f>>>0?n+1|0:n,n=r+c|0,X=b+376|0,j=X,g=f+g|0,c=g>>>0<f>>>0?n+1|0:n,L=(r|0)==(c|0)&f>>>0>g>>>0|r>>>0>c>>>0,N=(r|0)==(s|0)&f>>>0<T>>>0|r>>>0<s>>>0,r=A+8|0,E=t[r>>2],w=t[r+4>>2],A=(s|0)==(o|0)&h>>>0>T>>>0|s>>>0<o>>>0,r=l0+8|0,T=t[r>>2],f=t[r+4>>2],o=(o|0)==(t0|0)&h>>>0<u0>>>0|o>>>0<t0>>>0,n=e0+8|0,s=t[n>>2],r=g0+8|0,h=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>h>>>0?n+1|0:n,r=o+h|0,n=(r>>>0<h>>>0?n+1|0:n)+f|0,s=r,r=r+T|0,n=s>>>0>r>>>0?n+1|0:n,s=r,r=r+A|0,n=(s>>>0>r>>>0?n+1|0:n)+w|0,s=r,r=r+E|0,n=s>>>0>r>>>0?n+1|0:n,s=r+N|0,n=s>>>0<r>>>0?n+1|0:n,o=d>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+L|0,n=s>>>0>r>>>0?n+1|0:n,s=c,c=r<<12|s>>>20,o=n,f=n<<12|r>>>20,L=t[b+540>>2],n=L+t[b+588>>2]|0,w=t[b+536>>2],r=t[b+584>>2],d=w+r|0,h=d,c=d+c|0,r=r>>>0>d>>>0?n+1|0:n,n=r+f|0,T=c<<4&-16,d=c>>>0<d>>>0?n+1|0:n,f=(d<<4|c>>>28)&16777215,E=s,P(j,T|s>>>16&15,f,0,0,977,1,0,0),f=b,j=t[f+376>>2],s=t[f+456>>2],T=j+s|0,k0=t[f+380>>2],n=k0+t[f+460>>2]|0,t[f+888>>2]=T,s=s>>>0>T>>>0?n+1|0:n,t[f+892>>2]=s&1048575,t0=f+360|0,P(t0,Y,x,0,0,$,b0,0,0),l0=f+552|0,P(l0,V,H,0,0,Z,I,0,0),g0=f+664|0,P(g0,z,S,0,0,z,S,0,0),e0=f+424|0,N=e0,A=(r|0)==(d|0)&c>>>0<h>>>0|r>>>0>d>>>0,h=(r|0)==(L|0)&w>>>0>h>>>0|r>>>0<L>>>0,n=E0+8|0,c=t[n>>2],r=R0+8|0,w=c+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=c>>>0>w>>>0?n+1|0:n,c=w+h|0,n=c>>>0<w>>>0?n+1|0:n,o=o>>>20|0,r=o+c|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+A|0,n=o>>>0>r>>>0?n+1|0:n,h=r<<12|d>>>20,c=n,o=n<<12|r>>>20,u0=t[f+552>>2],r=t[f+664>>2],L=u0+r|0,R0=t[f+556>>2],n=R0+t[f+668>>2]|0,d=r>>>0>L>>>0?n+1|0:n,n=d+o|0,w=h+L|0,n=w>>>0<L>>>0?n+1|0:n,h=n,P(N,w,n&1048575,0,0,15632,16,0,0),T=(s|0)==(k0|0)&T>>>0<j>>>0|s>>>0<k0>>>0,n=M0+8|0,o=t[n>>2],r=X+8|0,A=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>A>>>0?n+1|0:n,r=T+A|0,n=r>>>0<A>>>0?n+1|0:n,A=r<<12|s>>>20,o=n,T=n<<12|r>>>20,X=t[f+424>>2],r=t[f+360>>2],N=X+r|0,E0=t[f+428>>2],n=E0+t[f+364>>2]|0,s=r>>>0>N>>>0?n+1|0:n,n=s+T|0,A=A+N|0,n=A>>>0<N>>>0?n+1|0:n,t[f+896>>2]=A,T=n,t[f+900>>2]=n&1048575,j=f+344|0,P(j,Z,I,0,0,$,b0,0,0),$=f+520|0,P($,Y,x,0,0,Y,x,0,0),Y=f+648|0,P(Y,V,H,0,0,z,S,0,0),Z=f+408|0,z=Z,I=(d|0)==(h|0)&w>>>0<L>>>0|d>>>0>h>>>0,w=(d|0)==(R0|0)&L>>>0<u0>>>0|d>>>0<R0>>>0,n=g0+8|0,d=t[n>>2],r=l0+8|0,S=d+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=d>>>0>S>>>0?n+1|0:n,d=w+S|0,n=d>>>0<S>>>0?n+1|0:n,c=c>>>20|0,r=c+d|0,n=c>>>0>r>>>0?n+1|0:n,c=r,r=r+I|0,n=c>>>0>r>>>0?n+1|0:n,S=r<<12|h>>>20,c=t[f+648>>2],h=S+c|0,d=n,L=n<<12|r>>>20,n=L+t[f+652>>2]|0,I=c>>>0>h>>>0?n+1|0:n,P(z,h,I,0,0,15632,16,0,0),c=f,A=(s|0)==(T|0)&A>>>0<N>>>0|s>>>0>T>>>0,f=(s|0)==(E0|0)&N>>>0<X>>>0|s>>>0<E0>>>0,n=t0+8|0,s=t[n>>2],r=e0+8|0,w=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=f+w|0,n=s>>>0<w>>>0?n+1|0:n,o=o>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+A|0,n=s>>>0>r>>>0?n+1|0:n,T=r<<12|T>>>20,o=n,f=n<<12|r>>>20,x=t[c+344>>2],r=t[c+520>>2],w=x+r|0,N=t[c+348>>2],n=N+t[c+524>>2]|0,n=r>>>0>w>>>0?n+1|0:n,r=t[c+408>>2],A=r+w|0,s=n,n=n+t[c+412>>2]|0,r=r>>>0>A>>>0?n+1|0:n,n=r+f|0,T=T+A|0,n=T>>>0<A>>>0?n+1|0:n,t[c+904>>2]=T,f=n,t[c+908>>2]=n&1048575,z=c+392|0,S=(I|0)==(L|0)&h>>>0<S>>>0|I>>>0<L>>>0,n=Y+8|0,I=t[n>>2],n=t[n+4>>2],d=d>>>20|0,h=d,d=d+I|0,n=h>>>0>d>>>0?n+1|0:n,h=d,d=d+S|0,n=h>>>0>d>>>0?n+1|0:n,P(z,d,n,0,0,64028672,65536,0,0),d=c,I=(r|0)==(f|0)&T>>>0<A>>>0|r>>>0>f>>>0,A=(r|0)==(s|0)&w>>>0>A>>>0|r>>>0<s>>>0,r=Z+8|0,h=t[r>>2],T=t[r+4>>2],c=(s|0)==(N|0)&w>>>0<x>>>0|s>>>0<N>>>0,n=$+8|0,s=t[n>>2],r=j+8|0,w=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,r=c+w|0,n=(r>>>0<w>>>0?n+1|0:n)+T|0,s=r,r=r+h|0,n=s>>>0>r>>>0?n+1|0:n,s=r+A|0,n=s>>>0<r>>>0?n+1|0:n,o=o>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+I|0,n=s>>>0>r>>>0?n+1|0:n,c=r<<12|f>>>20,o=n,T=n<<12|r>>>20,A=t[d+396>>2],n=A+(C&1048575)|0,h=t[d+392>>2],s=k&-2,r=h+s|0,f=r,c=r+c|0,s=r>>>0<s>>>0?n+1|0:n,n=s+T|0,t[d+912>>2]=c,r=r>>>0>c>>>0?n+1|0:n,t[d+916>>2]=r&1048575,T=E&65535,c=(r|0)==(s|0)&f>>>0>c>>>0|r>>>0<s>>>0,s=(s|0)==(A|0)&f>>>0<h>>>0|s>>>0<A>>>0,n=z+8|0,d=s+t[n>>2]|0,n=t[n+4>>2],n=s>>>0>d>>>0?n+1|0:n,o=o>>>20|0,s=o+d|0,n=o>>>0>s>>>0?n+1|0:n,o=s,s=s+c|0,n=o>>>0>s>>>0?n+1|0:n,r=s<<12|r>>>20,o=r+g|0,n=T+(n<<12|s>>>20)|0,t[b+920>>2]=o,t[b+924>>2]=r>>>0>o>>>0?n+1|0:n,n=b+848|0,r=b+888|0,U0(n,r,d0),U0(_,r0,r),s0=r0+40|0,U0(_+40|0,s0,n),t[_+80>>2]=0,$=R,K=a+440|0;k0=b+808|0,U0(k0,k0,$),s=K+32|0,n=t[s+4>>2],_=b+680|0,r=_+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+24|0,n=t[s+4>>2],r=_+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+16|0,n=t[s+4>>2],r=_+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+8|0,n=t[s+4>>2],r=_+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,M0=K+40|0,r=t[M0+4>>2],t[s0>>2]=t[M0>>2],t[s0+4>>2]=r,s=K+48|0,n=t[s+4>>2],r=s0+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+56|0,n=t[s+4>>2],r=s0+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K- -64|0,n=t[s+4>>2],r=s0+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=K+72|0,n=t[s+4>>2],r=s0+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,r=t[K+4>>2],t[b+680>>2]=t[K>>2],t[b+684>>2]=r,t[b+800>>2]=0,r=t[b+812>>2],E=r,w=t[b+808>>2],c=w,n=r<<1|c>>>31,h=b+72|0,z=t[b+832>>2],S=t[b+836>>2],L=c<<1,Z=n,P(h,z,S,0,0,L,n,0,0),r=t[b+820>>2],r0=r,d0=t[b+816>>2],s=d0,n=r<<1|s>>>31,T=b+280|0,R=t[b+824>>2],I=t[b+828>>2],s=s<<1,o=n,P(T,R,I,0,0,s,n,0,0),f=b+232|0,d=t[b+840>>2],r=t[b+844>>2],P(f,d,r,0,0,d,r,0,0),g=b+216|0,P(g,t[b+232>>2],t[b+236>>2],0,0,15632,16,0,0),n=r<<1|d>>>31,e0=b+184|0,Y=d<<1,N=n,P(e0,Y,n,0,0,c,E,0,0),u0=b+88|0,P(u0,z,S,0,0,s,o,0,0),X=b+264|0,P(X,R,I,0,0,R,I,0,0),A=b+200|0,r=f+8|0,P(A,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),E0=b+328|0,P(E0,c,E,0,0,c,E,0,0),t0=b+168|0,P(t0,Y,n,0,0,d0,r0,0,0),l0=b+104|0,P(l0,z,S,0,0,R<<1,I<<1|R>>>31,0,0),d=t[b+72>>2],s=t[b+280>>2],r=d+s|0,w=t[b+76>>2],n=w+t[b+284>>2]|0,n=r>>>0<s>>>0?n+1|0:n,s=t[b+216>>2],k=s+r|0,o=n,n=n+t[b+220>>2]|0,s=s>>>0>k>>>0?n+1|0:n,f=(o|0)==(s|0)&r>>>0>k>>>0|s>>>0<o>>>0,n=g+8|0,g=t[n>>2],c=t[n+4>>2],d=(o|0)==(w|0)&r>>>0<d>>>0|o>>>0<w>>>0,n=T+8|0,o=t[n>>2],r=h+8|0,T=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>T>>>0?n+1|0:n,r=d+T|0,n=(r>>>0<T>>>0?n+1|0:n)+c|0,o=r,r=r+g|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+f|0,n=o>>>0>r>>>0?n+1|0:n,C=s,g=r<<12|s>>>20,d=n,c=n<<12|r>>>20,j=t[b+88>>2],r=t[b+264>>2],h=j+r|0,g0=t[b+92>>2],n=g0+t[b+268>>2]|0,n=r>>>0>h>>>0?n+1|0:n,r=t[b+184>>2],T=r+h|0,o=n,n=n+t[b+188>>2]|0,n=r>>>0>T>>>0?n+1|0:n,r=t[b+200>>2],f=r+T|0,s=n,n=n+t[b+204>>2]|0,r=r>>>0>f>>>0?n+1|0:n,n=r+c|0,V=b+8|0,g=f+g|0,c=g>>>0<f>>>0?n+1|0:n,H=(r|0)==(c|0)&f>>>0>g>>>0|r>>>0>c>>>0,x=(r|0)==(s|0)&f>>>0<T>>>0|r>>>0<s>>>0,r=A+8|0,E=t[r>>2],w=t[r+4>>2],A=(s|0)==(o|0)&h>>>0>T>>>0|s>>>0<o>>>0,r=e0+8|0,T=t[r>>2],f=t[r+4>>2],o=(o|0)==(g0|0)&h>>>0<j>>>0|o>>>0<g0>>>0,n=X+8|0,s=t[n>>2],r=u0+8|0,h=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>h>>>0?n+1|0:n,r=o+h|0,n=(r>>>0<h>>>0?n+1|0:n)+f|0,s=r,r=r+T|0,n=s>>>0>r>>>0?n+1|0:n,s=r,r=r+A|0,n=(s>>>0>r>>>0?n+1|0:n)+w|0,s=r,r=r+E|0,n=s>>>0>r>>>0?n+1|0:n,s=r+x|0,n=s>>>0<r>>>0?n+1|0:n,o=d>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+H|0,n=s>>>0>r>>>0?n+1|0:n,s=c,c=r<<12|s>>>20,o=n,f=n<<12|r>>>20,H=t[b+172>>2],n=H+t[b+108>>2]|0,w=t[b+168>>2],r=t[b+104>>2],d=w+r|0,h=d,c=d+c|0,r=r>>>0>d>>>0?n+1|0:n,n=r+f|0,T=c<<4&-16,d=c>>>0<d>>>0?n+1|0:n,f=(d<<4|c>>>28)&16777215,E=s,P(V,T|s>>>16&15,f,0,0,977,1,0,0),f=b,b0=t[f+8>>2],s=t[f+328>>2],T=b0+s|0,R0=t[f+12>>2],n=R0+t[f+332>>2]|0,t[f+888>>2]=T,s=s>>>0>T>>>0?n+1|0:n,t[f+892>>2]=s&1048575,g0=f+312|0,P(g0,d0,r0,0,0,L,Z,0,0),e0=f+152|0,P(e0,Y,N,0,0,R,I,0,0),u0=f+120|0,P(u0,z,S,0,0,z,S,0,0),X=f+56|0,x=X,A=(r|0)==(d|0)&c>>>0<h>>>0|r>>>0>d>>>0,h=(r|0)==(H|0)&w>>>0>h>>>0|r>>>0<H>>>0,n=l0+8|0,c=t[n>>2],r=t0+8|0,w=c+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=c>>>0>w>>>0?n+1|0:n,c=w+h|0,n=c>>>0<w>>>0?n+1|0:n,o=o>>>20|0,r=o+c|0,n=o>>>0>r>>>0?n+1|0:n,o=r,r=r+A|0,n=o>>>0>r>>>0?n+1|0:n,A=r<<12|d>>>20,c=n,h=n<<12|r>>>20,t0=t[f+156>>2],n=t0+t[f+124>>2]|0,j=t[f+152>>2],o=t[f+120>>2],r=j+o|0,H=r,w=r+A|0,d=r>>>0<o>>>0?n+1|0:n,n=d+h|0,h=w>>>0<r>>>0?n+1|0:n,P(x,w,h&1048575,0,0,15632,16,0,0),T=(s|0)==(R0|0)&T>>>0<b0>>>0|s>>>0<R0>>>0,n=E0+8|0,o=t[n>>2],r=V+8|0,A=o+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=o>>>0>A>>>0?n+1|0:n,r=T+A|0,n=r>>>0<A>>>0?n+1|0:n,A=r<<12|s>>>20,o=n,T=n<<12|r>>>20,V=t[f+56>>2],r=t[f+312>>2],x=V+r|0,l0=t[f+60>>2],n=l0+t[f+316>>2]|0,s=r>>>0>x>>>0?n+1|0:n,n=s+T|0,A=A+x|0,n=A>>>0<x>>>0?n+1|0:n,t[f+896>>2]=A,T=n,t[f+900>>2]=n&1048575,b0=f+248|0,P(b0,R,I,0,0,L,Z,0,0),Z=f+296|0,P(Z,d0,r0,0,0,d0,r0,0,0),L=f+136|0,P(L,Y,N,0,0,z,S,0,0),R=f+40|0,I=(d|0)==(h|0)&w>>>0<H>>>0|d>>>0>h>>>0,w=(d|0)==(t0|0)&H>>>0<j>>>0|d>>>0<t0>>>0,n=u0+8|0,d=t[n>>2],r=e0+8|0,S=d+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=d>>>0>S>>>0?n+1|0:n,d=w+S|0,n=d>>>0<S>>>0?n+1|0:n,c=c>>>20|0,r=c+d|0,n=c>>>0>r>>>0?n+1|0:n,c=r,r=r+I|0,n=c>>>0>r>>>0?n+1|0:n,S=r<<12|h>>>20,c=t[f+136>>2],h=S+c|0,d=n,H=n<<12|r>>>20,n=H+t[f+140>>2]|0,I=c>>>0>h>>>0?n+1|0:n,P(R,h,I,0,0,15632,16,0,0),c=f,A=(s|0)==(T|0)&A>>>0<x>>>0|s>>>0>T>>>0,f=(s|0)==(l0|0)&x>>>0<V>>>0|s>>>0<l0>>>0,n=g0+8|0,s=t[n>>2],r=X+8|0,w=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=f+w|0,n=s>>>0<w>>>0?n+1|0:n,o=o>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+A|0,n=s>>>0>r>>>0?n+1|0:n,T=r<<12|T>>>20,o=n,f=n<<12|r>>>20,x=t[c+248>>2],r=t[c+296>>2],w=x+r|0,N=t[c+252>>2],n=N+t[c+300>>2]|0,n=r>>>0>w>>>0?n+1|0:n,r=t[c+40>>2],A=r+w|0,s=n,n=n+t[c+44>>2]|0,r=r>>>0>A>>>0?n+1|0:n,n=r+f|0,T=T+A|0,n=T>>>0<A>>>0?n+1|0:n,t[c+904>>2]=T,f=n,t[c+908>>2]=n&1048575,z=c+24|0,S=(I|0)==(H|0)&h>>>0<S>>>0|I>>>0<H>>>0,n=L+8|0,I=t[n>>2],n=t[n+4>>2],d=d>>>20|0,h=d,d=d+I|0,n=h>>>0>d>>>0?n+1|0:n,h=d,d=d+S|0,n=h>>>0>d>>>0?n+1|0:n,P(z,d,n,0,0,64028672,65536,0,0),d=c,I=(r|0)==(f|0)&T>>>0<A>>>0|r>>>0>f>>>0,A=(r|0)==(s|0)&w>>>0>A>>>0|r>>>0<s>>>0,r=R+8|0,h=t[r>>2],T=t[r+4>>2],c=(s|0)==(N|0)&w>>>0<x>>>0|s>>>0<N>>>0,n=Z+8|0,s=t[n>>2],r=b0+8|0,w=s+t[r>>2]|0,n=t[r+4>>2]+t[n+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,r=c+w|0,n=(r>>>0<w>>>0?n+1|0:n)+T|0,s=r,r=r+h|0,n=s>>>0>r>>>0?n+1|0:n,s=r+A|0,n=s>>>0<r>>>0?n+1|0:n,o=o>>>20|0,r=s+o|0,n=o>>>0>r>>>0?n+1|0:n,s=r,r=r+I|0,n=s>>>0>r>>>0?n+1|0:n,T=r<<12|f>>>20,o=n,c=n<<12|r>>>20,h=t[d+24>>2],r=k&-2,f=h+r|0,A=t[d+28>>2],n=A+(C&1048575)|0,s=r>>>0>f>>>0?n+1|0:n,n=s+c|0,c=f+T|0,n=c>>>0<f>>>0?n+1|0:n,t[d+912>>2]=c,r=n,t[d+916>>2]=n&1048575,T=E&65535,c=(n|0)==(s|0)&f>>>0>c>>>0|n>>>0<s>>>0,s=(s|0)==(A|0)&f>>>0<h>>>0|s>>>0<A>>>0,n=z+8|0,d=s+t[n>>2]|0,n=t[n+4>>2],n=s>>>0>d>>>0?n+1|0:n,o=o>>>20|0,s=o+d|0,n=o>>>0>s>>>0?n+1|0:n,o=s,s=s+c|0,n=o>>>0>s>>>0?n+1|0:n,r=s<<12|r>>>20,o=r+g|0,n=T+(n<<12|s>>>20)|0,t[b+920>>2]=o,t[b+924>>2]=r>>>0>o>>>0?n+1|0:n,n=b+848|0,r=b+888|0,U0(n,r,k0),U0(K,_,r),U0(M0,s0,n),t[K+80>>2]=0,K=K-88|0,$=$-40|0,V0=V0-1|0,!!V0;);for(D=b+928|0,r=0,K=(q0|0)>0?q0:0;u0=y- -64|0,Z0=t[a>>2],Y0=t[a+4>>2],P(u0,Z0,Y0,0,0,-431719958,28934,0,0),X=y+416|0,n=a+8|0,K0=t[n>>2],Q0=t[n+4>>2],P(X,K0,Q0,0,0,-375590839,799796,0,0),j=y+336|0,n=a+16|0,J0=t[n>>2],_0=t[n+4>>2],P(j,J0,_0,0,0,1486445587,479535,0,0),z=y+256|0,n=a+24|0,$0=t[n>>2],ee=t[n+4>>2],P(z,$0,ee,0,0,1905590766,617512,0,0),s=y+176|0,n=a+32|0,ae=t[n>>2],x0=t[n+4>>2],P(s,ae,x0,0,0,1781228924,31465,0,0),k=y+160|0,P(k,t[y+176>>2]&-4,t[y+180>>2],0,0,15632,16,0,0),_=y+80|0,P(_,Z0,Y0,0,0,1781228924,31465,0,0),V0=y+432|0,P(V0,K0,Q0,0,0,-431719958,28934,0,0),k0=y+352|0,P(k0,J0,_0,0,0,-375590839,799796,0,0),M0=y+272|0,P(M0,$0,ee,0,0,1486445587,479535,0,0),R0=y+192|0,P(R0,ae,x0,0,0,1905590766,617512,0,0),V=y+144|0,n=s+8|0,P(V,t[n>>2],t[n+4>>2],0,0,64028672,65536,0,0),r0=y+96|0,P(r0,Z0,Y0,0,0,1905590766,617512,0,0),d0=y+448|0,P(d0,K0,Q0,0,0,1781228924,31465,0,0),E0=y+368|0,P(E0,J0,_0,0,0,-431719958,28934,0,0),t0=y+288|0,P(t0,$0,ee,0,0,-375590839,799796,0,0),l0=y+208|0,P(l0,ae,x0,0,0,1486445587,479535,0,0),g0=t[y+432>>2],s=t[y+80>>2],R=g0+s|0,q0=t[y+436>>2],n=q0+t[y+84>>2]|0,n=s>>>0>R>>>0?n+1|0:n,s=t[y+352>>2],S=s+R|0,N=n,n=n+t[y+356>>2]|0,n=s>>>0>S>>>0?n+1|0:n,s=t[y+272>>2],I=s+S|0,h=n,n=n+t[y+276>>2]|0,n=s>>>0>I>>>0?n+1|0:n,s=t[y+192>>2],C=s+I|0,T=n,n=n+t[y+196>>2]|0,n=s>>>0>C>>>0?n+1|0:n,s=t[y+144>>2],E=s+C|0,f=n,n=n+t[y+148>>2]|0,o=s>>>0>E>>>0?n+1|0:n,b0=t[y+416>>2],s=t[y+64>>2],w=b0+s|0,e0=t[y+420>>2],n=e0+t[y+68>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=t[y+336>>2],A=s+w|0,c=n,n=n+t[y+340>>2]|0,d=s>>>0>A>>>0?n+1|0:n,n=d+t[y+260>>2]|0,s=t[y+256>>2],b=s+A|0,g=t[y+160>>2],Z=b+g|0,s=s>>>0>b>>>0?n+1|0:n,n=s+t[y+164>>2]|0,g=g>>>0>Z>>>0?n+1|0:n,$=(s|0)==(g|0)&b>>>0>Z>>>0|s>>>0>g>>>0,n=k+8|0,Y=t[n>>2],H=t[n+4>>2],L=(s|0)==(d|0)&b>>>0<A>>>0|s>>>0<d>>>0,n=z+8|0,x=t[n>>2],z=t[n+4>>2],k=(c|0)==(d|0)&w>>>0>A>>>0|c>>>0>d>>>0,n=j+8|0,A=t[n>>2],b=t[n+4>>2],c=(c|0)==(e0|0)&w>>>0<b0>>>0|c>>>0<e0>>>0,d=u0+8|0,s=t[d>>2],n=X+8|0,w=s+t[n>>2]|0,n=t[n+4>>2]+t[d+4>>2]|0,n=s>>>0>w>>>0?n+1|0:n,s=c+w|0,n=(s>>>0<w>>>0?n+1|0:n)+b|0,c=s,s=s+A|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+k|0,n=(c>>>0>s>>>0?n+1|0:n)+z|0,c=s,s=s+x|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+L|0,n=(c>>>0>s>>>0?n+1|0:n)+H|0,c=s,s=s+Y|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+$|0,n=c>>>0>s>>>0?n+1|0:n,k=g,c=s<<12|g>>>20,b=c+E|0,d=n,n=o+(n<<12|s>>>20)|0,A=c>>>0>b>>>0?n+1|0:n,e0=t[y+368>>2],s=t[y+448>>2],x=e0+s|0,s0=t[y+372>>2],n=s0+t[y+452>>2]|0,n=s>>>0>x>>>0?n+1|0:n,s=t[y+288>>2],z=s+x|0,g=n,n=n+t[y+292>>2]|0,n=s>>>0>z>>>0?n+1|0:n,s=t[y+208>>2],w=s+z|0,c=n,n=n+t[y+212>>2]|0,s=s>>>0>w>>>0?n+1|0:n,u0=(o|0)==(A|0)&b>>>0<E>>>0|o>>>0>A>>>0,X=(o|0)==(f|0)&E>>>0<C>>>0|o>>>0<f>>>0,n=V+8|0,j=t[n>>2],V=t[n+4>>2],b0=(f|0)==(T|0)&C>>>0<I>>>0|f>>>0<T>>>0,n=R0+8|0,$=t[n>>2],Y=t[n+4>>2],H=(h|0)==(T|0)&I>>>0<S>>>0|h>>>0>T>>>0,n=M0+8|0,L=t[n>>2],I=t[n+4>>2],C=(h|0)==(N|0)&S>>>0<R>>>0|h>>>0<N>>>0,n=k0+8|0,E=t[n>>2],h=t[n+4>>2],T=(N|0)==(q0|0)&R>>>0<g0>>>0|N>>>0<q0>>>0,f=_+8|0,o=t[f>>2],n=V0+8|0,S=o+t[n>>2]|0,n=t[n+4>>2]+t[f+4>>2]|0,n=o>>>0>S>>>0?n+1|0:n,o=T+S|0,n=(o>>>0<S>>>0?n+1|0:n)+h|0,f=o,o=o+E|0,n=f>>>0>o>>>0?n+1|0:n,f=o,o=o+C|0,n=(f>>>0>o>>>0?n+1|0:n)+I|0,f=o,o=o+L|0,n=f>>>0>o>>>0?n+1|0:n,f=o,o=o+H|0,n=(f>>>0>o>>>0?n+1|0:n)+Y|0,f=o,o=o+$|0,n=f>>>0>o>>>0?n+1|0:n,f=o,o=o+b0|0,n=(f>>>0>o>>>0?n+1|0:n)+V|0,f=o,o=o+j|0,n=f>>>0>o>>>0?n+1|0:n,f=o+X|0,n=f>>>0<o>>>0?n+1|0:n,d=d>>>20|0,o=f+d|0,n=d>>>0>o>>>0?n+1|0:n,d=o,o=o+u0|0,d=d>>>0>o>>>0?n+1|0:n,f=d<<12|o>>>20,n=o<<12,o=A,T=n|o>>>20,A=T+w|0,n=s+f|0,h=T>>>0>A>>>0?n+1|0:n,f=A,n=h<<4|f>>>28,T=f<<4&-16,f=n&16777215,C=o,P(y,T|o>>>16&15,f,0,0,977,1,0,0),X=t[y+4>>2],n=X+t[y+100>>2]|0,C0=(y+2240|0)+r|0,f=C0,j=t[y>>2],o=t[y+96>>2],E=j+o|0,t[f>>2]=E,T=o>>>0>E>>>0?n+1|0:n,t[f+4>>2]=T&1048575,V0=y+112|0,P(V0,Z0,Y0,0,0,1486445587,479535,0,0),k0=y+464|0,P(k0,K0,Q0,0,0,1905590766,617512,0,0),M0=y+384|0,P(M0,J0,_0,0,0,1781228924,31465,0,0),V=y+304|0,P(V,$0,ee,0,0,-431719958,28934,0,0),b0=y+224|0,P(b0,ae,x0,0,0,-375590839,799796,0,0),R0=y+48|0,Y=R0,$=t[y+304>>2],o=t[y+384>>2],S=$+o|0,q0=t[y+308>>2],n=q0+t[y+388>>2]|0,n=o>>>0>S>>>0?n+1|0:n,o=t[y+224>>2],I=o+S|0,f=n,n=n+t[y+228>>2]|0,o=o>>>0>I>>>0?n+1|0:n,H=(s|0)==(h|0)&w>>>0>A>>>0|s>>>0>h>>>0,L=(s|0)==(c|0)&w>>>0<z>>>0|s>>>0<c>>>0,n=l0+8|0,N=t[n>>2],R=t[n+4>>2],z=(c|0)==(g|0)&x>>>0>z>>>0|c>>>0<g>>>0,n=t0+8|0,w=t[n>>2],A=t[n+4>>2],g=(g|0)==(s0|0)&x>>>0<e0>>>0|g>>>0<s0>>>0,c=d0+8|0,s=t[c>>2],n=E0+8|0,x=s+t[n>>2]|0,n=t[n+4>>2]+t[c+4>>2]|0,n=s>>>0>x>>>0?n+1|0:n,s=g+x|0,n=(s>>>0<x>>>0?n+1|0:n)+A|0,c=s,s=s+w|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+z|0,n=(c>>>0>s>>>0?n+1|0:n)+R|0,c=s,s=s+N|0,n=c>>>0>s>>>0?n+1|0:n,c=s+L|0,n=c>>>0<s>>>0?n+1|0:n,d=d>>>20|0,s=c+d|0,n=d>>>0>s>>>0?n+1|0:n,c=s,s=s+H|0,n=c>>>0>s>>>0?n+1|0:n,d=s<<12|h>>>20,w=d+I|0,g=n,n=o+(n<<12|s>>>20)|0,A=d>>>0>w>>>0?n+1|0:n,P(Y,w,A&1048575,0,0,15632,16,0,0),x=C0+8|0,E0=t[y+464>>2],s=t[y+112>>2],L=E0+s|0,_=t[y+468>>2],n=_+t[y+116>>2]|0,n=s>>>0>L>>>0?n+1|0:n,s=t[y+48>>2],N=s+L|0,H=n,n=n+t[y+52>>2]|0,d=s>>>0>N>>>0?n+1|0:n,h=(T|0)==(X|0)&E>>>0<j>>>0|T>>>0<X>>>0,c=r0+8|0,s=t[c>>2],n=y+8|0,E=s+t[n>>2]|0,n=t[n+4>>2]+t[c+4>>2]|0,n=s>>>0>E>>>0?n+1|0:n,s=h+E|0,n=s>>>0<E>>>0?n+1|0:n,T=s<<12|T>>>20,E=T+N|0,c=n,n=d+(n<<12|s>>>20)|0,t[x>>2]=E,h=T>>>0>E>>>0?n+1|0:n,t[x+4>>2]=h&1048575,t0=y+128|0,P(t0,Z0,Y0,0,0,-375590839,799796,0,0),l0=y+480|0,P(l0,K0,Q0,0,0,1486445587,479535,0,0),g0=y+400|0,P(g0,J0,_0,0,0,1905590766,617512,0,0),e0=y+320|0,P(e0,$0,ee,0,0,1781228924,31465,0,0),u0=y+240|0,P(u0,ae,x0,0,0,-431719958,28934,0,0),X=y+32|0,Y=X,j=t[y+240>>2],s=t[y+320>>2],R=j+s|0,r0=t[y+244>>2],n=r0+t[y+324>>2]|0,s=s>>>0>R>>>0?n+1|0:n,x=(o|0)==(A|0)&w>>>0<I>>>0|o>>>0>A>>>0,z=(o|0)==(f|0)&I>>>0<S>>>0|o>>>0<f>>>0,n=b0+8|0,I=t[n>>2],w=t[n+4>>2],T=(f|0)==(q0|0)&S>>>0<$>>>0|f>>>0<q0>>>0,f=M0+8|0,o=t[f>>2],n=V+8|0,S=o+t[n>>2]|0,n=t[n+4>>2]+t[f+4>>2]|0,n=o>>>0>S>>>0?n+1|0:n,o=T+S|0,n=(o>>>0<S>>>0?n+1|0:n)+w|0,f=o,o=o+I|0,n=f>>>0>o>>>0?n+1|0:n,f=o+z|0,n=f>>>0<o>>>0?n+1|0:n,g=g>>>20|0,o=f+g|0,n=g>>>0>o>>>0?n+1|0:n,f=o,o=o+x|0,n=f>>>0>o>>>0?n+1|0:n,g=o<<12|A>>>20,w=g+R|0,T=n,n=s+(n<<12|o>>>20)|0,x=w>>>0<g>>>0?n+1|0:n,P(Y,w,x,0,0,15632,16,0,0),d0=C0+16|0,V=t[y+480>>2],o=t[y+128>>2],z=V+o|0,M0=t[y+484>>2],n=M0+t[y+132>>2]|0,n=o>>>0>z>>>0?n+1|0:n,o=t[y+400>>2],S=o+z|0,f=n,n=n+t[y+404>>2]|0,n=o>>>0>S>>>0?n+1|0:n,o=t[y+32>>2],I=o+S|0,g=n,n=n+t[y+36>>2]|0,o=o>>>0>I>>>0?n+1|0:n,b0=(d|0)==(h|0)&E>>>0<N>>>0|d>>>0>h>>>0,$=(d|0)==(H|0)&L>>>0>N>>>0|d>>>0<H>>>0,n=R0+8|0,Y=t[n>>2],N=t[n+4>>2],E=(H|0)==(_|0)&L>>>0<E0>>>0|H>>>0<_>>>0,A=V0+8|0,d=t[A>>2],n=k0+8|0,L=d+t[n>>2]|0,n=t[n+4>>2]+t[A+4>>2]|0,n=d>>>0>L>>>0?n+1|0:n,d=E+L|0,n=(d>>>0<L>>>0?n+1|0:n)+N|0,A=d,d=d+Y|0,n=A>>>0>d>>>0?n+1|0:n,A=d+$|0,n=A>>>0<d>>>0?n+1|0:n,c=c>>>20|0,d=c+A|0,n=c>>>0>d>>>0?n+1|0:n,c=d,d=d+b0|0,n=c>>>0>d>>>0?n+1|0:n,h=d<<12|h>>>20,A=h+I|0,c=n,n=o+(n<<12|d>>>20)|0,t[d0>>2]=A,h=h>>>0>A>>>0?n+1|0:n,t[d0+4>>2]=h&1048575,L=y+16|0,N=L,E=(s|0)==(x|0)&w>>>0<R>>>0|s>>>0>x>>>0,w=(s|0)==(r0|0)&R>>>0<j>>>0|s>>>0<r0>>>0,d=e0+8|0,s=t[d>>2],n=u0+8|0,x=s+t[n>>2]|0,n=t[n+4>>2]+t[d+4>>2]|0,n=s>>>0>x>>>0?n+1|0:n,d=w+x|0,n=d>>>0<x>>>0?n+1|0:n,T=T>>>20|0,s=d+T|0,n=T>>>0>s>>>0?n+1|0:n,d=s,s=s+E|0,n=d>>>0>s>>>0?n+1|0:n,P(N,s,n,0,0,64028672,65536,0,0),Y=C0+24|0,H=t[y+20>>2],n=H+(k&1048575)|0,N=t[y+16>>2],d=Z+N|0,s=d>>>0<Z>>>0?n+1|0:n,T=d,R=(o|0)==(h|0)&A>>>0<I>>>0|o>>>0>h>>>0,x=(o|0)==(g|0)&I>>>0<S>>>0|o>>>0<g>>>0,n=X+8|0,I=t[n>>2],k=t[n+4>>2],E=(f|0)==(g|0)&S>>>0<z>>>0|f>>>0>g>>>0,n=g0+8|0,w=t[n>>2],A=t[n+4>>2],g=(f|0)==(M0|0)&z>>>0<V>>>0|f>>>0<M0>>>0,d=t0+8|0,o=t[d>>2],n=l0+8|0,f=o+t[n>>2]|0,n=t[n+4>>2]+t[d+4>>2]|0,n=o>>>0>f>>>0?n+1|0:n,o=f+g|0,n=(o>>>0<f>>>0?n+1|0:n)+A|0,d=o,o=o+w|0,n=d>>>0>o>>>0?n+1|0:n,d=o,o=o+E|0,n=(d>>>0>o>>>0?n+1|0:n)+k|0,d=o,o=o+I|0,n=d>>>0>o>>>0?n+1|0:n,d=o+x|0,n=d>>>0<o>>>0?n+1|0:n,c=c>>>20|0,o=c+d|0,n=c>>>0>o>>>0?n+1|0:n,c=o,o=o+R|0,n=c>>>0>o>>>0?n+1|0:n,g=o<<12|h>>>20,c=g+T|0,d=n,n=s+(n<<12|o>>>20)|0,t[Y>>2]=c,o=c>>>0<g>>>0?n+1|0:n,t[Y+4>>2]=o&1048575,h=C0+32|0,f=C&65535,g=(s|0)==(o|0)&c>>>0<T>>>0|s>>>0>o>>>0,s=(s|0)==(H|0)&T>>>0<N>>>0|s>>>0<H>>>0,n=L+8|0,c=s+t[n>>2]|0,n=t[n+4>>2],n=s>>>0>c>>>0?n+1|0:n,d=d>>>20|0,s=c+d|0,n=d>>>0>s>>>0?n+1|0:n,c=s,s=s+g|0,n=c>>>0>s>>>0?n+1|0:n,o=s<<12|o>>>20,d=o+b|0,n=f+(n<<12|s>>>20)|0,t[h>>2]=d,t[h+4>>2]=o>>>0>d>>>0?n+1|0:n,a=a+88|0,r=r+40|0,(r|0)!=320;);a=(K|0)<(oe|0)?oe:K,r=1}t:{if(!e){h=0,g=0;break t}o=y+3648|0,n=o+24|0,t[n>>2]=0,t[n+4>>2]=0,s=y+3616|0,n=s+24|0,t[n>>2]=0,t[n+4>>2]=0,t[y+3664>>2]=0,t[y+3668>>2]=0,t[y+3632>>2]=0,t[y+3636>>2]=0,n=t[e+4>>2],t[y+3648>>2]=t[e>>2],t[y+3652>>2]=n,n=t[e+12>>2],t[y+3656>>2]=t[e+8>>2],t[y+3660>>2]=n,n=t[e+20>>2],t[y+3616>>2]=t[e+16>>2],t[y+3620>>2]=n,n=t[e+28>>2],t[y+3624>>2]=t[e+24>>2],t[y+3628>>2]=n,h=hr(y+3088|0,o,4),g=hr(y+2560|0,s,4),a=(a|0)<(h|0)?h:a,a=(a|0)<(g|0)?g:a}t[i+120>>2]=1,w=me(i,120);t:{if((a|0)<=0)break t;i=a-1|0;e:{if(!r)for(i=i<<2,e=i+(y+3088|0)|0,i=(y+2560|0)+i|0,b=1;;){n:{if(b){t[w+120>>2]=1,me(w,120);break n}wn(w,w)}n:{if((a|0)>(h|0)||(n=t[e>>2],!n))break n;r=y+3720|0,gr(r,655920,n),wr(w,w,r,y+3680|0)}r=a-1|0;n:{if((a|0)>(g|0)||(n=t[i>>2],!n))break n;a=y+3720|0,gr(a,656176,n),wr(w,w,a,y+3680|0)}if((r|0)<=0)break e;e=e-4|0,i=i-4|0,b=t[w+120>>2],a=r}for(A=y+3760|0,e=((a<<2)+y|0)+1008|0,r=i<<2,i=r+(y+3088|0)|0,b=(y+2560|0)+r|0,c=t[y+1532>>2],d=t[y+1528>>2],n=1;;){n:{if(n){t[w+120>>2]=1,me(w,120);break n}wn(w,w)}n:{if((a|0)>(d|0)||(r=t[e-516>>2],!r))break n;r:{if((r|0)<=0){Ze(y+3720|0,(y+1536|0)+M((r^-1)/2|0,88)|0,88),r=t[y+3760>>2],n=-3908-r|0,r=4194299-(t[y+3764>>2]+(r>>>0>4294963388)|0)|0,t[y+3760>>2]=n,t[y+3764>>2]=r,r=t[y+3768>>2],n=-4-r|0,r=4194303-(t[y+3772>>2]+(r>>>0>4294967292)|0)|0,t[y+3768>>2]=n,t[y+3772>>2]=r,r=t[y+3776>>2],n=-4-r|0,r=4194303-(t[y+3780>>2]+(r>>>0>4294967292)|0)|0,t[y+3776>>2]=n,t[y+3780>>2]=r,r=t[y+3784>>2],n=-4-r|0,r=4194303-(t[y+3788>>2]+(r>>>0>4294967292)|0)|0,t[y+3784>>2]=n,t[y+3788>>2]=r,r=t[y+3792>>2],n=-4-r|0,r=262143-(t[y+3796>>2]+(r>>>0>4294967292)|0)|0,t[y+3792>>2]=n,t[y+3796>>2]=r;break r}Ze(y+3720|0,(y+1536|0)+M(r-1>>>1|0,88)|0,88)}Dt(w,w,y+3720|0,0)}n:{if((a|0)>(c|0)||(r=t[e>>2],!r))break n;r:{if((r|0)<=0){o=(r^-1)/2|0,f=(y+1536|0)+M(o,88)|0,r=t[f+44>>2],t[A>>2]=t[f+40>>2],t[A+4>>2]=r,s=f+48|0,n=t[s+4>>2],r=A+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+56|0,n=t[s+4>>2],r=A+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f- -64|0,n=t[s+4>>2],r=A+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+72|0,n=t[s+4>>2],r=A+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,f=(y+2240|0)+M(o,40)|0,s=f+8|0,n=t[s+4>>2],o=y+3720|0,r=o+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+16|0,n=t[s+4>>2],r=o+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+24|0,n=t[s+4>>2],r=o+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+32|0,n=t[s+4>>2],r=o+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,t[y+3800>>2]=0,r=t[f+4>>2],t[y+3720>>2]=t[f>>2],t[y+3724>>2]=r,r=t[y+3760>>2],n=-3908-r|0,r=4194299-(t[y+3764>>2]+(r>>>0>4294963388)|0)|0,t[y+3760>>2]=n,t[y+3764>>2]=r,r=t[y+3768>>2],n=-4-r|0,r=4194303-(t[y+3772>>2]+(r>>>0>4294967292)|0)|0,t[y+3768>>2]=n,t[y+3772>>2]=r,r=t[y+3776>>2],n=-4-r|0,r=4194303-(t[y+3780>>2]+(r>>>0>4294967292)|0)|0,t[y+3776>>2]=n,t[y+3780>>2]=r,r=t[y+3784>>2],n=-4-r|0,r=4194303-(t[y+3788>>2]+(r>>>0>4294967292)|0)|0,t[y+3784>>2]=n,t[y+3788>>2]=r,r=t[y+3792>>2],n=-4-r|0,r=262143-(t[y+3796>>2]+(r>>>0>4294967292)|0)|0,t[y+3792>>2]=n,t[y+3796>>2]=r;break r}n=r-1>>>1|0,T=(y+1536|0)+M(n,88)|0,r=t[T+44>>2],t[A>>2]=t[T+40>>2],t[A+4>>2]=r,f=(y+2240|0)+M(n,40)|0,s=f+8|0,n=t[s+4>>2],o=y+3720|0,r=o+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+16|0,n=t[s+4>>2],r=o+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+24|0,n=t[s+4>>2],r=o+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=f+32|0,n=t[s+4>>2],r=o+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=T+48|0,n=t[s+4>>2],r=A+8|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=T+56|0,n=t[s+4>>2],r=A+16|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=T- -64|0,n=t[s+4>>2],r=A+24|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,s=T+72|0,n=t[s+4>>2],r=A+32|0,t[r>>2]=t[s>>2],t[r+4>>2]=n,t[y+3800>>2]=0,r=t[f+4>>2],t[y+3720>>2]=t[f>>2],t[y+3724>>2]=r}Dt(w,w,y+3720|0,0)}n:{if((a|0)>(h|0)||(n=t[i>>2],!n))break n;r=y+3720|0,gr(r,655920,n),wr(w,w,r,y+3680|0)}r=a-1|0;n:{if((a|0)>(g|0)||(n=t[b>>2],!n))break n;a=y+3720|0,gr(a,656176,n),wr(w,w,a,y+3680|0)}if((r|0)<=0)break e;i=i-4|0,b=b-4|0,e=e-4|0,n=t[w+120>>2],a=r}}if(t[w+120>>2])break t;i=w+80|0,U0(i,i,y+3680|0)}D=y+3808|0}function Ti(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0;d=D-48|0,D=d,e=d+8|0,Ve(e,r+80|0),U0(e,e,i),s=t[r+24>>2],n=t[r+28>>2],f=t[r+16>>2],o=t[r+20>>2],e=t[r+8>>2],b=t[r+12>>2],a=t[r>>2],c=t[r+4>>2],h=t[r+32>>2],r=t[r+36>>2],g=r,i=a,a=I0(r>>>16|0,0,977,1),r=i+a|0,i=c+i0|0,i=r>>>0<a>>>0?i+1|0:i,a=r,c=i,i=b,r=c>>>20|0,y=r,r=r+e|0,b=y>>>0>r>>>0?i+1|0:i,i=o,e=b>>>20|0,f=e+f|0,o=e>>>0>f>>>0?i+1|0:i,i=n,e=o>>>20|0,s=e+s|0,e=e>>>0>s>>>0?i+1|0:i,i=t[d+8>>2],n=a-i|0,w=(c&1048575)-(t[d+12>>2]+(i>>>0>a>>>0)|0)|0,i=t[d+40>>2],c=h-i|0,i=(g&65535)-(t[d+44>>2]+(i>>>0>h>>>0)|0)|0,a=e>>>20|0,y=a,a=a+c|0,i=(y>>>0>a>>>0?i+1|0:i)+262143|0,y=n,a=a-4|0,h=a>>>0<4294967292?i+1|0:i,n=I0(h>>>16|0,0,977,1),c=y+n|0,i=w+i0|0,i=(c>>>0<n>>>0?i+1|0:i)+4194299|0,c=c-3908|0,i=c>>>0<4294963388?i+1|0:i,n=i&1048575,T=n,g=c^976,w=n^1,D=d+48|0;t:{if(c|n&&(n=0,(g|0)!=-1|(w|0)!=1048575))break t;n=a,h=h&65535,a=t[d+32>>2],A=s-a|0,y=(e&1048575)-(t[d+36>>2]+(a>>>0>s>>>0)|0)|0,e=t[d+24>>2],s=f-e|0,f=(o&1048575)-(t[d+28>>2]+(e>>>0>f>>>0)|0)|0,e=i,i=b&1048575,e=e>>>20|0,a=e,e=r+e|0,i=a>>>0>e>>>0?i+1|0:i,a=t[d+16>>2],r=(e-a|0)-4|0,i=(i-(t[d+20>>2]+(e>>>0<a>>>0)|0)|0)+4194303|0,e=r>>>0<4294967292?i+1|0:i,i=f,a=e>>>20|0,o=a,a=a+s|0,i=(o>>>0>a>>>0?i+1|0:i)+4194303|0,a=a-4|0,f=a>>>0<4294967292?i+1|0:i,i=y,s=f>>>20|0,o=s,s=s+A|0,i=(o>>>0>s>>>0?i+1|0:i)+4194303|0,s=s-4|0,b=s>>>0<4294967292?i+1|0:i,i=h,o=b>>>20|0,y=o,o=n+o|0,i=y>>>0>o>>>0?i+1|0:i,(r&g&a&s&o)==-1?n=(e&w&f&b&(i^983040))==1048575:n=0,n?(r=0,i=0):(r=s|(a|(r|c))|o,i=b&1048575|(f&1048575|(e&1048575|T))|i),n=!(i|r)}return n}function Uu(i,r,a,e,n,s){i=i|0,r=r|0,a=a|0,e=e|0,n=n|0,s=s|0;var o=0,c=0,d=0,f=0,y=0,b=0,h=0;for(o=D-224|0,D=o,ie(o+8|0,r,0),r=a+16|0,c=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),d=o+112|0,f=d+16|0,t[f>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[f+4>>2]=c,r=a+24|0,c=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),d=d+24|0,t[d>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[d+4>>2]=c,r=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),t[o+112>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[o+116>>2]=r,r=a+8|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),t[o+120>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[o+124>>2]=a,r=t[o+12>>2],f=t[o+8>>2],u[o+175|0]=f,a=t[o+20>>2],y=t[o+16>>2],u[o+167|0]=y,c=t[o+28>>2],b=t[o+24>>2],u[o+159|0]=b,d=t[o+36>>2],h=t[o+32>>2],u[o+151|0]=h,u[o+174|0]=(r&255)<<24|f>>>8,u[o+173|0]=(r&65535)<<16|f>>>16,u[o+172|0]=(r&16777215)<<8|f>>>24,u[o+171|0]=r,u[o+170|0]=r>>>8,u[o+169|0]=r>>>16,u[o+168|0]=r>>>24,u[o+166|0]=(a&255)<<24|y>>>8,u[o+165|0]=(a&65535)<<16|y>>>16,u[o+164|0]=(a&16777215)<<8|y>>>24,u[o+163|0]=a,u[o+162|0]=a>>>8,u[o+161|0]=a>>>16,u[o+160|0]=a>>>24,u[o+158|0]=(c&255)<<24|b>>>8,u[o+157|0]=(c&65535)<<16|b>>>16,u[o+156|0]=(c&16777215)<<8|b>>>24,u[o+155|0]=c,u[o+154|0]=c>>>8,u[o+153|0]=c>>>16,u[o+152|0]=c>>>24,u[o+150|0]=(d&255)<<24|h>>>8,u[o+149|0]=(d&65535)<<16|h>>>16,u[o+148|0]=(d&16777215)<<8|h>>>24,u[o+147|0]=d,u[o+146|0]=d>>>8,u[o+145|0]=d>>>16,u[o+144|0]=d>>>24,n?(r=n+24|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),c=o+200|0,t[c>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[c+4>>2]=a,r=n+16|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),c=o+192|0,t[c>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[c+4>>2]=a,r=n+8|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),c=o+184|0,t[c>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[c+4>>2]=a,r=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),t[o+176>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[o+180>>2]=r,a=96):a=64,e&&(n=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),r=(o+112|0)+a|0,c=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),u[r|0]=c,u[r+1|0]=c>>>8,u[r+2|0]=c>>>16,u[r+3|0]=c>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,e=e+8|0,n=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),r=r+8|0,e=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),u[r|0]=e,u[r+1|0]=e>>>8,u[r+2|0]=e>>>16,u[r+3|0]=e>>>24,u[r+4|0]=n,u[r+5|0]=n>>>8,u[r+6|0]=n>>>16,u[r+7|0]=n>>>24,a=a|16),r=o+112|0,vi(o+40|0,r,a),a=0,me(r,112);ya(o+40|0,i),a=a+1|0,s>>>0>=a>>>0;);return D=o+224|0,1}function vi(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0;for(e=D-272|0,D=e,t[i>>2]=16843009,t[i+4>>2]=16843009,t[i+32>>2]=0,t[i+36>>2]=0,o=i+24|0,t[o>>2]=16843009,t[o+4>>2]=16843009,o=i+16|0,t[o>>2]=16843009,t[o+4>>2]=16843009,o=i+8|0,t[o>>2]=16843009,t[o+4>>2]=16843009,o=i+40|0,t[o>>2]=0,t[o+4>>2]=0,o=i+48|0,t[o>>2]=0,t[o+4>>2]=0,o=i+56|0,t[o>>2]=0,t[o+4>>2]=0,o=e+128|0,t[o>>2]=528734635,t[o+4>>2]=1541459225,o=e+120|0,t[o>>2]=1359893119,t[o+4>>2]=-1694144372,o=e+112|0,t[o>>2]=1013904242,t[o+4>>2]=-1521486534,o=e+200|0,t[o>>2]=0,t[o+4>>2]=0,o=e+208|0,n=o+56|0,t[n>>2]=0,t[n+4>>2]=0,n=o+48|0,t[n>>2]=0,t[n+4>>2]=0,n=o+40|0,t[n>>2]=0,t[n+4>>2]=0,n=o+32|0,t[n>>2]=0,t[n+4>>2]=0,n=o+24|0,t[n>>2]=0,t[n+4>>2]=0,o=o+16|0,t[o>>2]=0,t[o+4>>2]=0,t[e+104>>2]=1779033703,t[e+108>>2]=-1150833019,t[e+216>>2]=0,t[e+220>>2]=0,t[e+208>>2]=0,t[e+212>>2]=0,o=i+32|0,d=e+104|0,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^92,c=s+1|0,u[c|0]=l[c|0]^92,c=s+2|0,u[c|0]=l[c|0]^92,s=s+3|0,u[s|0]=l[s|0]^92,n=n+4|0,(n|0)!=64;);for(z0(d,e+208|0,64),t[e+96>>2]=0,t[e+100>>2]=0,t[e+24>>2]=528734635,t[e+28>>2]=1541459225,t[e+16>>2]=1359893119,t[e+20>>2]=-1694144372,t[e+8>>2]=1013904242,t[e+12>>2]=-1521486534,t[e>>2]=1779033703,t[e+4>>2]=-1150833019,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^106,c=s+1|0,u[c|0]=l[c|0]^106,c=s+2|0,u[c|0]=l[c|0]^106,s=s+3|0,u[s|0]=l[s|0]^106,n=n+4|0,(n|0)!=64;);for(s=e+208|0,z0(e,s,64),z0(e,i,32),z0(e,690368,1),z0(e,r,a),ye(e,s),z0(d,s,32),ye(d,o),n=e+248|0,t[n>>2]=0,t[n+4>>2]=0,n=e+256|0,t[n>>2]=0,t[n+4>>2]=0,n=e+264|0,t[n>>2]=0,t[n+4>>2]=0,n=o+24|0,c=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),f=s+24|0,t[f>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[f+4>>2]=c,n=o+16|0,c=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),s=s+16|0,t[s>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[s+4>>2]=c,t[e+200>>2]=0,t[e+204>>2]=0,t[e+128>>2]=528734635,t[e+132>>2]=1541459225,t[e+120>>2]=1359893119,t[e+124>>2]=-1694144372,t[e+112>>2]=1013904242,t[e+116>>2]=-1521486534,t[e+104>>2]=1779033703,t[e+108>>2]=-1150833019,t[e+240>>2]=0,t[e+244>>2]=0,n=o+8|0,s=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),t[e+216>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[e+220>>2]=s,n=l[o+4|0]|l[o+5|0]<<8|(l[o+6|0]<<16|l[o+7|0]<<24),t[e+208>>2]=l[o|0]|l[o+1|0]<<8|(l[o+2|0]<<16|l[o+3|0]<<24),t[e+212>>2]=n,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^92,c=s+1|0,u[c|0]=l[c|0]^92,c=s+2|0,u[c|0]=l[c|0]^92,s=s+3|0,u[s|0]=l[s|0]^92,n=n+4|0,(n|0)!=64;);for(z0(d,e+208|0,64),t[e+96>>2]=0,t[e+100>>2]=0,t[e+24>>2]=528734635,t[e+28>>2]=1541459225,t[e+16>>2]=1359893119,t[e+20>>2]=-1694144372,t[e+8>>2]=1013904242,t[e+12>>2]=-1521486534,t[e>>2]=1779033703,t[e+4>>2]=-1150833019,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^106,c=s+1|0,u[c|0]=l[c|0]^106,c=s+2|0,u[c|0]=l[c|0]^106,s=s+3|0,u[s|0]=l[s|0]^106,n=n+4|0,(n|0)!=64;);for(s=e+208|0,z0(e,s,64),z0(e,i,32),ye(e,s),z0(d,s,32),ye(d,i),n=e+248|0,t[n>>2]=0,t[n+4>>2]=0,n=e+256|0,t[n>>2]=0,t[n+4>>2]=0,n=e+264|0,t[n>>2]=0,t[n+4>>2]=0,n=o+24|0,c=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),f=s+24|0,t[f>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[f+4>>2]=c,n=o+16|0,c=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),s=s+16|0,t[s>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[s+4>>2]=c,t[e+200>>2]=0,t[e+204>>2]=0,t[e+128>>2]=528734635,t[e+132>>2]=1541459225,t[e+120>>2]=1359893119,t[e+124>>2]=-1694144372,t[e+112>>2]=1013904242,t[e+116>>2]=-1521486534,t[e+104>>2]=1779033703,t[e+108>>2]=-1150833019,t[e+240>>2]=0,t[e+244>>2]=0,n=o+8|0,s=l[n+4|0]|l[n+5|0]<<8|(l[n+6|0]<<16|l[n+7|0]<<24),t[e+216>>2]=l[n|0]|l[n+1|0]<<8|(l[n+2|0]<<16|l[n+3|0]<<24),t[e+220>>2]=s,n=l[o+4|0]|l[o+5|0]<<8|(l[o+6|0]<<16|l[o+7|0]<<24),t[e+208>>2]=l[o|0]|l[o+1|0]<<8|(l[o+2|0]<<16|l[o+3|0]<<24),t[e+212>>2]=n,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^92,c=s+1|0,u[c|0]=l[c|0]^92,c=s+2|0,u[c|0]=l[c|0]^92,s=s+3|0,u[s|0]=l[s|0]^92,n=n+4|0,(n|0)!=64;);for(z0(d,e+208|0,64),t[e+96>>2]=0,t[e+100>>2]=0,t[e+24>>2]=528734635,t[e+28>>2]=1541459225,t[e+16>>2]=1359893119,t[e+20>>2]=-1694144372,t[e+8>>2]=1013904242,t[e+12>>2]=-1521486534,t[e>>2]=1779033703,t[e+4>>2]=-1150833019,n=0;s=(e+208|0)+n|0,u[s|0]=l[s|0]^106,c=s+1|0,u[c|0]=l[c|0]^106,c=s+2|0,u[c|0]=l[c|0]^106,s=s+3|0,u[s|0]=l[s|0]^106,n=n+4|0,(n|0)!=64;);for(n=e+208|0,z0(e,n,64),z0(e,i,32),z0(e,690369,1),z0(e,r,a),ye(e,n),z0(d,n,32),ye(d,o),r=e+248|0,t[r>>2]=0,t[r+4>>2]=0,r=e+256|0,t[r>>2]=0,t[r+4>>2]=0,r=e+264|0,t[r>>2]=0,t[r+4>>2]=0,r=o+24|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),s=n+24|0,t[s>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[s+4>>2]=a,r=o+16|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),n=n+16|0,t[n>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[n+4>>2]=a,t[e+200>>2]=0,t[e+204>>2]=0,t[e+128>>2]=528734635,t[e+132>>2]=1541459225,t[e+120>>2]=1359893119,t[e+124>>2]=-1694144372,t[e+112>>2]=1013904242,t[e+116>>2]=-1521486534,t[e+104>>2]=1779033703,t[e+108>>2]=-1150833019,t[e+240>>2]=0,t[e+244>>2]=0,r=o+8|0,a=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),t[e+216>>2]=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),t[e+220>>2]=a,r=l[o+4|0]|l[o+5|0]<<8|(l[o+6|0]<<16|l[o+7|0]<<24),t[e+208>>2]=l[o|0]|l[o+1|0]<<8|(l[o+2|0]<<16|l[o+3|0]<<24),t[e+212>>2]=r,n=0;r=(e+208|0)+n|0,u[r|0]=l[r|0]^92,a=r+1|0,u[a|0]=l[a|0]^92,a=r+2|0,u[a|0]=l[a|0]^92,r=r+3|0,u[r|0]=l[r|0]^92,n=n+4|0,(n|0)!=64;);for(z0(d,e+208|0,64),t[e+96>>2]=0,t[e+100>>2]=0,t[e+24>>2]=528734635,t[e+28>>2]=1541459225,t[e+16>>2]=1359893119,t[e+20>>2]=-1694144372,t[e+8>>2]=1013904242,t[e+12>>2]=-1521486534,t[e>>2]=1779033703,t[e+4>>2]=-1150833019,n=0;r=(e+208|0)+n|0,u[r|0]=l[r|0]^106,a=r+1|0,u[a|0]=l[a|0]^106,a=r+2|0,u[a|0]=l[a|0]^106,r=r+3|0,u[r|0]=l[r|0]^106,n=n+4|0,(n|0)!=64;);r=e+208|0,z0(e,r,64),z0(e,i,32),ye(e,r),z0(d,r,32),ye(d,i),t[i+64>>2]=0,D=e+272|0}function ya(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0;if(n=D-272|0,D=n,t[i+64>>2]){for(a=n+208|0,e=a+40|0,t[e>>2]=0,t[e+4>>2]=0,e=a+48|0,t[e>>2]=0,t[e+4>>2]=0,a=a+56|0,t[a>>2]=0,t[a+4>>2]=0,a=n+200|0,t[a>>2]=0,t[a+4>>2]=0,a=n+128|0,t[a>>2]=528734635,t[a+4>>2]=1541459225,a=n+120|0,t[a>>2]=1359893119,t[a+4>>2]=-1694144372,a=n+112|0,t[a>>2]=1013904242,t[a+4>>2]=-1521486534,a=i+56|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),o=n+232|0,t[o>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[o+4>>2]=e,a=i+48|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),o=n+224|0,t[o>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[o+4>>2]=e,t[n+104>>2]=1779033703,t[n+108>>2]=-1150833019,t[n+240>>2]=0,t[n+244>>2]=0,a=i+40|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),t[n+216>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[n+220>>2]=e,a=l[i+36|0]|l[i+37|0]<<8|(l[i+38|0]<<16|l[i+39|0]<<24),t[n+208>>2]=l[i+32|0]|l[i+33|0]<<8|(l[i+34|0]<<16|l[i+35|0]<<24),t[n+212>>2]=a,a=i+32|0,o=n+104|0,e=0;s=(n+208|0)+e|0,u[s|0]=l[s|0]^92,c=s+1|0,u[c|0]=l[c|0]^92,c=s+2|0,u[c|0]=l[c|0]^92,s=s+3|0,u[s|0]=l[s|0]^92,e=e+4|0,(e|0)!=64;);for(z0(o,n+208|0,64),t[n+96>>2]=0,t[n+100>>2]=0,t[n+24>>2]=528734635,t[n+28>>2]=1541459225,t[n+16>>2]=1359893119,t[n+20>>2]=-1694144372,t[n+8>>2]=1013904242,t[n+12>>2]=-1521486534,t[n>>2]=1779033703,t[n+4>>2]=-1150833019,e=0;s=(n+208|0)+e|0,u[s|0]=l[s|0]^106,c=s+1|0,u[c|0]=l[c|0]^106,c=s+2|0,u[c|0]=l[c|0]^106,s=s+3|0,u[s|0]=l[s|0]^106,e=e+4|0,(e|0)!=64;);for(s=n+208|0,z0(n,s,64),z0(n,i,32),z0(n,690370,1),ye(n,s),z0(o,s,32),ye(o,a),e=n+248|0,t[e>>2]=0,t[e+4>>2]=0,e=n+256|0,t[e>>2]=0,t[e+4>>2]=0,e=n+264|0,t[e>>2]=0,t[e+4>>2]=0,e=a+24|0,c=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),d=s+24|0,t[d>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[d+4>>2]=c,e=a+16|0,c=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),s=s+16|0,t[s>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[s+4>>2]=c,t[n+200>>2]=0,t[n+204>>2]=0,t[n+128>>2]=528734635,t[n+132>>2]=1541459225,t[n+120>>2]=1359893119,t[n+124>>2]=-1694144372,t[n+112>>2]=1013904242,t[n+116>>2]=-1521486534,t[n+104>>2]=1779033703,t[n+108>>2]=-1150833019,t[n+240>>2]=0,t[n+244>>2]=0,e=a+8|0,s=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),t[n+216>>2]=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),t[n+220>>2]=s,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),t[n+208>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[n+212>>2]=e,e=0;a=(n+208|0)+e|0,u[a|0]=l[a|0]^92,s=a+1|0,u[s|0]=l[s|0]^92,s=a+2|0,u[s|0]=l[s|0]^92,a=a+3|0,u[a|0]=l[a|0]^92,e=e+4|0,(e|0)!=64;);for(z0(o,n+208|0,64),t[n+96>>2]=0,t[n+100>>2]=0,t[n+24>>2]=528734635,t[n+28>>2]=1541459225,t[n+16>>2]=1359893119,t[n+20>>2]=-1694144372,t[n+8>>2]=1013904242,t[n+12>>2]=-1521486534,t[n>>2]=1779033703,t[n+4>>2]=-1150833019,e=0;a=(n+208|0)+e|0,u[a|0]=l[a|0]^106,s=a+1|0,u[s|0]=l[s|0]^106,s=a+2|0,u[s|0]=l[s|0]^106,a=a+3|0,u[a|0]=l[a|0]^106,e=e+4|0,(e|0)!=64;);a=n+208|0,z0(n,a,64),z0(n,i,32),ye(n,a),z0(o,a,32),ye(o,i)}for(a=n+208|0,e=a+40|0,t[e>>2]=0,t[e+4>>2]=0,e=a+48|0,t[e>>2]=0,t[e+4>>2]=0,a=a+56|0,t[a>>2]=0,t[a+4>>2]=0,a=n+200|0,t[a>>2]=0,t[a+4>>2]=0,a=n+128|0,t[a>>2]=528734635,t[a+4>>2]=1541459225,a=n+120|0,t[a>>2]=1359893119,t[a+4>>2]=-1694144372,a=n+112|0,t[a>>2]=1013904242,t[a+4>>2]=-1521486534,a=i+56|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),o=n+232|0,t[o>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[o+4>>2]=e,a=i+48|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),o=n+224|0,t[o>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[o+4>>2]=e,t[n+104>>2]=1779033703,t[n+108>>2]=-1150833019,t[n+240>>2]=0,t[n+244>>2]=0,a=i+40|0,e=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),t[n+216>>2]=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),t[n+220>>2]=e,a=l[i+36|0]|l[i+37|0]<<8|(l[i+38|0]<<16|l[i+39|0]<<24),t[n+208>>2]=l[i+32|0]|l[i+33|0]<<8|(l[i+34|0]<<16|l[i+35|0]<<24),t[n+212>>2]=a,o=n+104|0,e=0;a=(n+208|0)+e|0,u[a|0]=l[a|0]^92,s=a+1|0,u[s|0]=l[s|0]^92,s=a+2|0,u[s|0]=l[s|0]^92,a=a+3|0,u[a|0]=l[a|0]^92,e=e+4|0,(e|0)!=64;);for(z0(o,n+208|0,64),t[n+96>>2]=0,t[n+100>>2]=0,t[n+24>>2]=528734635,t[n+28>>2]=1541459225,t[n+16>>2]=1359893119,t[n+20>>2]=-1694144372,t[n+8>>2]=1013904242,t[n+12>>2]=-1521486534,t[n>>2]=1779033703,t[n+4>>2]=-1150833019,e=0;a=(n+208|0)+e|0,u[a|0]=l[a|0]^106,s=a+1|0,u[s|0]=l[s|0]^106,s=a+2|0,u[s|0]=l[s|0]^106,a=a+3|0,u[a|0]=l[a|0]^106,e=e+4|0,(e|0)!=64;);a=n+208|0,z0(n,a,64),z0(n,i,32),ye(n,a),z0(o,a,32),ye(o,i),a=i+24|0,o=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),e=r+24|0,a=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),u[e|0]=a,u[e+1|0]=a>>>8,u[e+2|0]=a>>>16,u[e+3|0]=a>>>24,u[e+4|0]=o,u[e+5|0]=o>>>8,u[e+6|0]=o>>>16,u[e+7|0]=o>>>24,a=i+16|0,o=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),e=r+16|0,a=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),u[e|0]=a,u[e+1|0]=a>>>8,u[e+2|0]=a>>>16,u[e+3|0]=a>>>24,u[e+4|0]=o,u[e+5|0]=o>>>8,u[e+6|0]=o>>>16,u[e+7|0]=o>>>24,a=i+8|0,o=l[a+4|0]|l[a+5|0]<<8|(l[a+6|0]<<16|l[a+7|0]<<24),e=r+8|0,a=l[a|0]|l[a+1|0]<<8|(l[a+2|0]<<16|l[a+3|0]<<24),u[e|0]=a,u[e+1|0]=a>>>8,u[e+2|0]=a>>>16,u[e+3|0]=a>>>24,u[e+4|0]=o,u[e+5|0]=o>>>8,u[e+6|0]=o>>>16,u[e+7|0]=o>>>24,a=l[i+4|0]|l[i+5|0]<<8|(l[i+6|0]<<16|l[i+7|0]<<24),e=l[i|0]|l[i+1|0]<<8|(l[i+2|0]<<16|l[i+3|0]<<24),u[r|0]=e,u[r+1|0]=e>>>8,u[r+2|0]=e>>>16,u[r+3|0]=e>>>24,u[r+4|0]=a,u[r+5|0]=a>>>8,u[r+6|0]=a>>>16,u[r+7|0]=a>>>24,t[i+64>>2]=1,D=n+272|0}function Ai(i,r,a,e,n,s){var o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0;b=D-464|0,D=b,o=r+24|0,t[o>>2]=0,t[o+4>>2]=0,o=r+16|0,t[o>>2]=0,t[o+4>>2]=0,o=r+8|0,t[o>>2]=0,t[o+4>>2]=0,t[r>>2]=0,t[r+4>>2]=0,o=a+24|0,t[o>>2]=0,t[o+4>>2]=0,o=a+16|0,t[o>>2]=0,t[o+4>>2]=0,o=a+8|0,t[o>>2]=0,t[o+4>>2]=0,t[a>>2]=0,t[a+4>>2]=0,e&&(t[e>>2]=0),ie(b+96|0,690788,b+256|0),w=t[b+120>>2],g=t[b+112>>2],y=t[b+104>>2],h=t[b+96>>2],E=t[b+124>>2],A=t[b+116>>2],d=t[b+108>>2],T=t[b+100>>2],c=t[b+256>>2]|!(w|(g|(y|h))|(E|(A|(d|T)))),o=c?0:-1,t[b+120>>2]=o&w,t[b+124>>2]=o&E,t[b+112>>2]=o&g,t[b+116>>2]=o&A,t[b+104>>2]=o&y,t[b+108>>2]=o&d,t[b+96>>2]=o&h|(c|0)!=0,t[b+100>>2]=o&T,ie(b+32|0,655649,0),Y=!c,V=n||4;t:{if(!(O0[V|0](b,655649,690788,0,s,0)|0))break t;for(n=1;;){j=n,ie(b- -64|0,b,b+256|0);e:{if(t[b+256>>2]|!(t[b+88>>2]|(t[b+80>>2]|(t[b+72>>2]|t[b+64>>2]))|(t[b+92>>2]|(t[b+84>>2]|(t[b+76>>2]|t[b+68>>2]))))||(t[b+132>>2]=0,n=b+256|0,gn(i,n,b- -64|0),Lt(b+168|0,n),o=b,A=t[o+232>>2],E=t[o+236>>2],w=t[o+224>>2],T=t[o+228>>2],y=t[o+216>>2],d=t[o+220>>2],f=t[o+212>>2],h=t[o+240>>2],g=t[o+244>>2],C=g,n=t[o+208>>2],g=I0(g>>>16|0,0,977,1),c=n+g|0,n=f+i0|0,g=c>>>0<g>>>0?n+1|0:n,n=d,f=g>>>20|0,x=f,f=y+f|0,d=x>>>0>f>>>0?n+1|0:n,n=T,y=d>>>20|0,T=y,y=y+w|0,w=T>>>0>y>>>0?n+1|0:n,n=E,T=w>>>20|0,x=T,T=A+T|0,n=x>>>0>T>>>0?n+1|0:n,I=y,A=n,Z=w&1048575,w=(T&(y&f))==-1&(n&(Z&d))==1048575,n=C&65535,y=A>>>20|0,x=y,y=y+h|0,E=x>>>0>y>>>0?n+1|0:n,n=g&1048575,S=y,y=I0(w&((y|0)==-1&(E|0)==65535)&((n|0)==1048574&c>>>0>4294966318|n>>>0>1048574)|E>>>16,0,977,1)+c|0,n=i0+n|0,H=y,t[o+208>>2]=y,w=c>>>0>y>>>0?n+1|0:n,t[o+212>>2]=w&1048575,C=t[o+192>>2],x=t[o+196>>2],g=t[o+184>>2],R=t[o+188>>2],h=t[o+176>>2],k=t[o+180>>2],L=t[o+172>>2],z=t[o+200>>2],y=t[o+204>>2],K=y,n=t[o+168>>2],c=I0(y>>>16|0,0,977,1),y=n+c|0,n=L+i0|0,L=c>>>0>y>>>0?n+1|0:n,n=k,c=L>>>20|0,k=c,c=c+h|0,k=k>>>0>c>>>0?n+1|0:n,n=R,h=k>>>20|0,R=h,h=h+g|0,N=R>>>0>h>>>0?n+1|0:n,n=x,g=N>>>20|0,C=g+C|0,n=g>>>0>C>>>0?n+1|0:n,g=k&1048575,R=h,x=n,N=N&1048575,h=(c&h&C)==-1&(n&(k&N))==1048575,n=K&65535,o=x>>>20|0,k=o,o=o+z|0,k=k>>>0>o>>>0?n+1|0:n,n=L&1048575,z=o,o=I0(h&((o|0)==-1&(k|0)==65535)&((n|0)==1048574&y>>>0>4294966318|n>>>0>1048574)|k>>>16,0,977,1)+y|0,n=i0+n|0,n=o>>>0<y>>>0?n+1|0:n,y=o,o=n,n=g,h=o>>>20|0,g=h,h=c+h|0,n=g>>>0>h>>>0?n+1|0:n,t[b+176>>2]=h,c=n,t[b+180>>2]=n&1048575,n=d&1048575,w=w>>>20|0,f=f+w|0,n=w>>>0>f>>>0?n+1|0:n,t[b+216>>2]=f,t[b+220>>2]=n&1048575,f=n,n=Z,f=(f>>>20|0)+I|0,n=f>>>0<I>>>0?n+1|0:n,t[b+224>>2]=f,I=n,t[b+228>>2]=n&1048575,d=b,f=C,x=x&1048575,n=N,C=c,g=(c>>>20|0)+R|0,c=g>>>0<R>>>0?n+1|0:n,n=x,w=c>>>20|0,x=w,w=f+w|0,n=x>>>0>w>>>0?n+1|0:n,t[d+192>>2]=w,f=n,t[d+196>>2]=n&1048575,n=A&1048575,A=I>>>20|0,T=A+T|0,n=A>>>0>T>>>0?n+1|0:n,t[d+232>>2]=T,T=n,t[d+236>>2]=n&1048575,n=k,A=f,x=(f>>>20|0)+z|0,n=x>>>0<z>>>0?n+1|0:n,t[d+200>>2]=x,f=n,t[d+204>>2]=n&65535,n=E,T=(T>>>20|0)+S|0,n=T>>>0<S>>>0?n+1|0:n,t[d+240>>2]=T,t[d+244>>2]=n&65535,T=g,t[d+184>>2]=g,n=c&1048575,t[d+188>>2]=n,t[d+168>>2]=y,g=o&1048575,t[d+172>>2]=g,u[d+415|0]=y,u[d+414|0]=(o&255)<<24|y>>>8,u[d+413|0]=(o&65535)<<16|y>>>16,u[d+412|0]=(o&16777215)<<8|y>>>24,u[d+411|0]=o,u[d+410|0]=o>>>8,o=h>>>28|0,u[d+409|0]=h<<4|g>>>16,u[d+408|0]=(C&15)<<28|h>>>4,u[d+407|0]=(C&4095)<<20|h>>>12,u[d+406|0]=(C&1048575)<<12|h>>>20,u[d+405|0]=o|(C&268435455)<<4,u[d+404|0]=C>>>4,u[d+403|0]=C>>>12,u[d+402|0]=T,u[d+401|0]=(c&255)<<24|T>>>8,u[d+400|0]=(c&65535)<<16|T>>>16,u[d+399|0]=(c&16777215)<<8|T>>>24,u[d+398|0]=c,u[d+397|0]=c>>>8,o=w>>>28|0,u[d+396|0]=w<<4|n>>>16,u[d+395|0]=(A&15)<<28|w>>>4,u[d+394|0]=(A&4095)<<20|w>>>12,u[d+393|0]=(A&1048575)<<12|w>>>20,u[d+392|0]=o|(A&268435455)<<4,u[d+391|0]=A>>>4,u[d+390|0]=A>>>12,u[d+389|0]=x,u[d+388|0]=(f&255)<<24|x>>>8,u[d+387|0]=(f&65535)<<16|x>>>16,u[d+386|0]=(f&16777215)<<8|x>>>24,u[d+385|0]=f,u[d+384|0]=f>>>8,ie(r,d+384|0,d+132|0),e&&(t[e>>2]=H&1|t[d+132>>2]<<1),I=d+136|0,xt(I,r,d+96|0),c=t[d+32>>2],f=t[d+136>>2],T=c+f|0,o=t[d+36>>2],n=o+t[d+140>>2]|0,y=f>>>0>T>>>0?n+1|0:n,E=(o|0)==(y|0)&c>>>0>T>>>0|o>>>0>y>>>0,c=t[d+144>>2],o=E+c|0,n=t[d+148>>2],n=o>>>0<c>>>0?n+1|0:n,f=o,o=t[d+40>>2],g=f+o|0,c=n,n=n+t[d+44>>2]|0,h=o>>>0>g>>>0?n+1|0:n,k=t[d+48>>2],o=t[d+152>>2],w=k+o|0,C=t[d+52>>2],n=C+t[d+156>>2]|0,o=o>>>0>w>>>0?n+1|0:n,A=w,n=!c&f>>>0<E>>>0,f=(c|0)==(h|0)&f>>>0>g>>>0|c>>>0>h>>>0,c=n+f|0,n=(c>>>0<f>>>0)+o|0,w=c+w|0,f=w>>>0<c>>>0?n+1|0:n,S=t[d+56>>2],c=t[d+160>>2],E=S+c|0,x=t[d+60>>2],n=x+t[d+164>>2]|0,c=c>>>0>E>>>0?n+1|0:n,n=(o|0)==(C|0)&A>>>0<k>>>0|o>>>0<C>>>0,A=(o|0)==(f|0)&w>>>0<A>>>0|o>>>0>f>>>0,o=n+A|0,n=(o>>>0<A>>>0)+c|0,A=o,o=o+E|0,n=A>>>0>o>>>0?n+1|0:n,A=o,o=d,C=n,x=((c|0)==(x|0)&E>>>0<S>>>0|c>>>0<x>>>0)+((c|0)==(n|0)&A>>>0<E>>>0|n>>>0<c>>>0)|0,c=(f|0)==-1,d=c&w>>>0<4294967294|(f|0)!=-1|(A&n)!=-1,n=(h|0)==-1162945306,E=(d|(n&g>>>0<2940772411|h>>>0<3132021990))^-1,k=x+(E&((y|0)==-1076732276&T>>>0>3493216576|y>>>0>3218235020)|(E&(n&g>>>0>2940772411|h>>>0>3132021990)|(w|0)==-1&c&(d^-1)))|0,d=I0(k,0,801750719,1076732275),c=d+T|0,n=y+i0|0,x=c,t[o+136>>2]=c,d=c>>>0<d>>>0?n+1|0:n,t[o+140>>2]=d,c=o,o=I0(k,0,1354194884,1162945305),E=o+g|0,n=h+i0|0,d=(d|0)==(y|0)&T>>>0>x>>>0|d>>>0<y>>>0,y=E+d|0,n=o>>>0>E>>>0?n+1|0:n,o=n,x=y,t[c+144>>2]=y,d=d>>>0>y>>>0?n+1|0:n,t[c+148>>2]=d,y=c,n=f,T=w+k|0,c=T>>>0<k>>>0?n+1|0:n,n=(o|0)==(h|0)&g>>>0>E>>>0|o>>>0<h>>>0,h=(o|0)==(d|0)&E>>>0>x>>>0|o>>>0>d>>>0,o=n+h|0,n=(o>>>0<h>>>0)+c|0,x=o,o=o+T|0,n=x>>>0>o>>>0?n+1|0:n,t[y+152>>2]=o,t[y+156>>2]=n,f=(c|0)==(f|0)&w>>>0>T>>>0|c>>>0<f>>>0,c=(n|0)==(c|0)&o>>>0<T>>>0|n>>>0<c>>>0,o=f+c|0,n=C+(o>>>0<c>>>0)|0,o=o+A|0,n=o>>>0<A>>>0?n+1|0:n,t[y+160>>2]=o,t[y+164>>2]=n,o=t[y+88>>2],c=t[y+92>>2],t[y+456>>2]=c>>>24,t[y+460>>2]=0,c=c<<6|o>>>26,f=t[y+80>>2],h=t[y+84>>2],t[y+448>>2]=o<<6|h>>>26,t[y+452>>2]=c&1073741823,o=f,c=h<<4|o>>>28,f=t[y+72>>2],h=t[y+76>>2],t[y+440>>2]=o<<4|h>>>28,t[y+444>>2]=c&1073741823,o=f,c=h<<2|o>>>30,f=t[b+64>>2],y=t[b+68>>2],t[b+432>>2]=o<<2|y>>>30,t[b+436>>2]=c&1073741823,t[b+424>>2]=f,t[b+428>>2]=y&1073741823,xi(b+424|0,690320),c=t[b+456>>2]<<24,y=t[b+452>>2],n=y>>>6|0,f=t[b+448>>2],t[a+24>>2]=(y&63)<<26|f>>>6,t[a+28>>2]=n|c,c=f<<26,y=t[b+444>>2],n=y>>>4|0,f=t[b+440>>2],t[a+16>>2]=(y&15)<<28|f>>>4,t[a+20>>2]=n|c,c=f<<28,y=t[b+436>>2],n=y>>>2|0,f=t[b+432>>2],t[a+8>>2]=(y&3)<<30|f>>>2,t[a+12>>2]=n|c,c=t[b+428>>2],n=f<<30,t[a>>2]=t[b+424>>2],t[a+4>>2]=n|c,xt(a,a,I),n=t[a+28>>2],E=n,n=n>>>31|0,o=n^-1,d=t[a+12>>2],f=(d|0)==1566010995,g=t[a+8>>2],x=t[a+16>>2],k=t[a+20>>2],C=t[a+24>>2],o=(o&(f&g>>>0<1470386205|d>>>0<1566010995)|((x&k)!=-1&o|((E|0)==2147483647&(C|0)!=-1|E>>>0<2147483647)))^-1,c=t[a+4>>2],h=t[a>>2],A=o&((c|0)==-538366138&h>>>0>1746608288|c>>>0>3756601158)|(o&(f&g>>>0>1470386205|d>>>0>1566010995)|n),T=A?-801750718:0,y=A?-1:0,f=y^h,o=T+f|0,I=A?-1076732276:0,n=I+(c^y)|0,h=x|C|g|h|(E|k|d|c)?-1:0,R=o&h,t[a>>2]=R,f=o>>>0<f>>>0?n+1|0:n,z=h&f,t[a+4>>2]=z,c=a,S=A?-1162945306:0,n=S+(d^y)|0,w=(f|0)==(I|0)&o>>>0<T>>>0|f>>>0<I>>>0,H=A?-1354194885:0,o=y^g,g=H+o|0,f=w+g|0,n=o>>>0>g>>>0?n+1|0:n,o=n,T=f,I=f&h,t[c+8>>2]=I,w=f>>>0<w>>>0?n+1|0:n,L=h&w,t[c+12>>2]=L,f=c,N=A?-2:0,c=y^x,d=N+c|0,x=A?-1:0,n=x+(y^k)|0,c=c>>>0>d>>>0?n+1|0:n,n=(o|0)==(S|0)&g>>>0<H>>>0|o>>>0<S>>>0,g=(o|0)==(w|0)&g>>>0>T>>>0|o>>>0>w>>>0,o=n+g|0,n=(o>>>0<g>>>0)+c|0,T=o,o=o+d|0,n=T>>>0>o>>>0?n+1|0:n,g=o&h,t[f+16>>2]=g,w=n&h,t[f+20>>2]=w,f=(c|0)==(x|0)&d>>>0<N>>>0|c>>>0<x>>>0,c=(n|0)==(c|0)&o>>>0<d>>>0|n>>>0<c>>>0,o=f+c|0,n=o>>>0<c>>>0,c=y^C,f=c-A|0,o=f+o|0,n=n+((y^E)-(c>>>0<A>>>0)|0)|0,n=o>>>0<f>>>0?n+1|0:n,o=o&h,t[a+24>>2]=o,n=n&h,t[a+28>>2]=n,e&&(t[e>>2]=t[e>>2]^A),!(I|R|g|o|(L|z|w|n)))||!(t[r+24>>2]|(t[r+16>>2]|(t[r+8>>2]|t[r>>2]))|(t[r+28>>2]|(t[r+20>>2]|(t[r+12>>2]|t[r+4>>2])))))break e;f=1;break t}if(n=j+1|0,f=0,!(O0[V|0](b,655649,690788,0,s,j)|0))break}}return o=f&Y,s=!o,i=s-1|0,n=0-!s|0,c=n&t[r+4>>2],t[r>>2]=i&t[r>>2],t[r+4>>2]=c,c=t[r+12>>2]&n,t[r+8>>2]=t[r+8>>2]&i,t[r+12>>2]=c,c=t[r+20>>2]&n,t[r+16>>2]=t[r+16>>2]&i,t[r+20>>2]=c,c=t[r+28>>2]&n,t[r+24>>2]=t[r+24>>2]&i,t[r+28>>2]=c,r=t[a+4>>2]&n,t[a>>2]=t[a>>2]&i,t[a+4>>2]=r,r=t[a+12>>2]&n,t[a+8>>2]=t[a+8>>2]&i,t[a+12>>2]=r,r=t[a+20>>2]&n,t[a+16>>2]=t[a+16>>2]&i,t[a+20>>2]=r,r=t[a+28>>2]&n,t[a+24>>2]=t[a+24>>2]&i,t[a+28>>2]=r,e&&(t[b+256>>2]=s,t[e>>2]=t[e>>2]&t[b+256>>2]-1),D=b+464|0,o}function gn(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0;for(s=D-128|0,D=s,z=Ze(r,i+40|0,128),o=t[i+8>>2],f=t[a>>2],C=o+f|0,r=t[i+12>>2],e=r+t[a+4>>2]|0,c=f>>>0>C>>>0?e+1|0:e,d=(r|0)==(c|0)&o>>>0>C>>>0|r>>>0>c>>>0,o=t[a+8>>2],e=d+o|0,r=t[a+12>>2],r=e>>>0<o>>>0?r+1|0:r,o=e,e=i+16|0,f=t[e>>2],k=o+f|0,e=r+t[e+4>>2]|0,d=!r&o>>>0<d>>>0,f=f>>>0>k>>>0?e+1|0:e,o=(r|0)==(f|0)&o>>>0>k>>>0|r>>>0>f>>>0,e=d+o|0,r=e>>>0<o>>>0,g=e,e=t[a+16>>2],d=g+e|0,o=r,r=r+t[a+20>>2]|0,e=e>>>0>d>>>0?r+1|0:r,r=i+24|0,x=t[r>>2],b=x+d|0,r=e+t[r+4>>2]|0,g=(e|0)==(o|0)&d>>>0<g>>>0|e>>>0<o>>>0,o=b>>>0<x>>>0?r+1|0:r,r=d,d=b,b=(e|0)==(o|0)&r>>>0>d>>>0|e>>>0>o>>>0,e=g+b|0,r=e>>>0<b>>>0,x=e,g=t[a+24>>2],b=e+g|0,e=r,r=r+t[a+28>>2]|0,r=b>>>0<g>>>0?r+1|0:r,i=i+32|0,g=t[i>>2],a=g+b|0,i=r+t[i+4>>2]|0,I=a>>>0<g>>>0?i+1|0:i,g=a,x=((r|0)==(e|0)&b>>>0<x>>>0|r>>>0<e>>>0)+((r|0)==(I|0)&a>>>0<b>>>0|r>>>0>I>>>0)|0,r=(o|0)==-1,a=r&d>>>0<4294967294|(o|0)!=-1|(a&I)!=-1,i=(f|0)==-1162945306,e=(a|(i&k>>>0<2940772411|f>>>0<3132021990))^-1,b=x+(e&((c|0)==-1076732276&C>>>0>3493216576|c>>>0>3218235020)|(e&(i&k>>>0>2940772411|f>>>0>3132021990)|(d|0)==-1&r&(a^-1)))|0,i=I0(b,0,801750719,1076732275),a=i+C|0,r=c+i0|0,t[s+8>>2]=a,r=i>>>0>a>>>0?r+1|0:r,t[s+12>>2]=r,i=s,c=(r|0)==(c|0)&a>>>0<C>>>0|r>>>0<c>>>0,e=I0(b,0,1354194884,1162945305),a=e+k|0,r=f+i0|0,r=a>>>0<e>>>0?r+1|0:r,c=a+c|0,e=c>>>0<a>>>0?r+1|0:r,t[i+16>>2]=c,t[i+20>>2]=e,e=(r|0)==(e|0)&a>>>0>c>>>0|r>>>0>e>>>0,a=e+((r|0)==(f|0)&a>>>0<k>>>0|r>>>0<f>>>0)|0,r=a>>>0<e>>>0,e=a,f=r,r=o,c=d+b|0,a=c>>>0<d>>>0?r+1|0:r,r=a+f|0,x=e,e=c,c=x+e|0,t[i+24>>2]=c,r=e>>>0>c>>>0?r+1|0:r,t[i+28>>2]=r,i=(a|0)==(o|0)&e>>>0<d>>>0|a>>>0<o>>>0,a=(r|0)==(a|0)&e>>>0>c>>>0|r>>>0<a>>>0,r=i+a|0,e=I+(r>>>0<a>>>0)|0,i=r+g|0,e=i>>>0<g>>>0?e+1|0:e,t[s+32>>2]=i,t[s+36>>2]=e,a=0,k=0,o=0,C=0,b=0,g=0,f=0,c=0,x=0,d=0,I=0;t[s+120>>2]=0,r=(s+8|0)+(H>>>2&1073741816)|0,i=t[r>>2],e=t[r+4>>2],n=V&62,r=n&31,n>>>0>=32?i=e>>>r|0:i=((1<<r)-1&e)<<32-r|i>>>r,h=i&3,w=(h|0)==1,n=S+656432|0,i=n+248|0,r=n+184|0,e=n+120|0,y=n+56|0,T=(h|0)==2,A=(h|0)==3,a=A?t[i>>2]:T?t[r>>2]:w?t[e>>2]:h?a:t[y>>2],r=A?t[i+4>>2]:T?t[r+4>>2]:w?t[e+4>>2]:h?k:t[y+4>>2],k=r,i=r>>>16|0,t[s+112>>2]=(r&65535)<<16|a>>>16,t[s+116>>2]=i,i=n+224|0,r=n+160|0,e=n+96|0,y=n+32|0,j=A?t[i>>2]:T?t[r>>2]:w?t[e>>2]:h?j:t[y>>2],f=A?t[i+4>>2]:T?t[r+4>>2]:w?t[e+4>>2]:h?f:t[y+4>>2],t[s+80>>2]=j,t[s+84>>2]=f&1048575,i=n+216|0,r=n+152|0,e=n+88|0,y=n+24|0,c=A?t[i>>2]:T?t[r>>2]:w?t[e>>2]:h?c:t[y>>2],i=A?t[i+4>>2]:T?t[r+4>>2]:w?t[e+4>>2]:h?x:t[y+4>>2],x=i,e=i>>>16|0,t[s+72>>2]=(i&65535)<<16|c>>>16,t[s+76>>2]=e,i=n+192|0,r=n+128|0,e=n- -64|0,Z=A?t[i>>2]:T?t[r>>2]:w?t[e>>2]:h?Z:t[n>>2],R=A?t[i+4>>2]:T?t[r+4>>2]:w?t[e+4>>2]:h?R:t[n+4>>2],t[s+40>>2]=Z,t[s+44>>2]=R&1048575,e=a<<4&1048560,i=n+240|0,r=n+176|0,y=n+112|0,E=n+48|0,o=A?t[i>>2]:T?t[r>>2]:w?t[y>>2]:h?o:t[E>>2],r=A?t[i+4>>2]:T?t[r+4>>2]:w?t[y+4>>2]:h?C:t[E+4>>2],C=r,i=r>>>28|0,t[s+104>>2]=(r&268435455)<<4|o>>>28,t[s+108>>2]=i|e,e=n+232|0,y=n+168|0,E=n+104|0,i=n+40|0,b=A?t[e>>2]:T?t[y>>2]:w?t[E>>2]:h?b:t[i>>2],g=A?t[e+4>>2]:T?t[y+4>>2]:w?t[E+4>>2]:h?g:t[i+4>>2],t[s+96>>2]=o<<24&-16777216|g>>>8,t[s+100>>2]=(r<<24|o>>>8)&1048575,t[s+88>>2]=b<<12&-4096|f>>>20,t[s+92>>2]=(g<<12|b>>>20)&1048575,i=n+208|0,r=n+144|0,y=n+80|0,E=n+16|0,d=A?t[i>>2]:T?t[r>>2]:w?t[y>>2]:h?d:t[E>>2],i=A?t[i+4>>2]:T?t[r+4>>2]:w?t[y+4>>2]:h?I:t[E+4>>2],I=i,r=i>>>28|0,t[s+64>>2]=(i&268435455)<<4|d>>>28,t[s+68>>2]=r|c<<4&1048560,r=d<<24&-16777216,i=n+200|0,y=n+136|0,E=n+72|0,n=n+8|0,N=A?t[i>>2]:T?t[y>>2]:w?t[E>>2]:h?N:t[n>>2],L=A?t[i+4>>2]:T?t[y+4>>2]:w?t[E+4>>2]:h?L:t[n+4>>2],t[s+56>>2]=L>>>8|r,t[s+60>>2]=(I<<24|d>>>8)&1048575,t[s+48>>2]=N<<12&-4096|R>>>20,t[s+52>>2]=(L<<12|N>>>20)&1048575,ki(z,z,s+40|0),V=V+2|0,H=H+1|0,S=S+256|0,(S|0)!=32768;);D=s+128|0}function Lt(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0;o=D-80|0,D=o,t[i+80>>2]=t[r+120>>2],g=r+104|0,b=t[g>>2],h=t[g+4>>2],w=r+96|0,c=t[w>>2],y=t[w+4>>2],T=r+88|0,s=t[T>>2],d=t[T+4>>2],f=t[r+84>>2],A=r+112|0,x=t[A>>2],n=t[A+4>>2],I=n,a=t[r+80>>2],e=I0(n>>>16|0,0,977,1),n=a+e|0,a=f+i0|0,f=e>>>0>n>>>0?a+1|0:a,a=d,e=f>>>20|0,d=e,e=e+s|0,d=d>>>0>e>>>0?a+1|0:a,a=y,s=d>>>20|0,y=s,s=s+c|0,y=y>>>0>s>>>0?a+1|0:a,a=h,c=y>>>20|0,h=c,c=c+b|0,b=h>>>0>c>>>0?a+1|0:a,S=d&1048575,a=f&1048575,k=n,E=a,h=e,f=s,C=y&1048575,s=(e&s&c)==-1&(C&d&b)==1048575,a=I&65535,e=b>>>20|0,n=e,e=e+x|0,a=n>>>0>e>>>0?a+1|0:a,d=e,n=a,s=I0(s&((e|0)==-1&(a|0)==65535)&((E|0)==1048574&k>>>0>4294966318|E>>>0>1048574)|a>>>16,0,977,1),e=s+k|0,a=E+i0|0,a=e>>>0<s>>>0?a+1|0:a,s=e,x=a,a=S,e=x>>>20|0,y=e+h|0,e=e>>>0>y>>>0?a+1|0:a,t[o+40>>2]=s,t[o+44>>2]=y<<20&1072693248|x&1048575,a=C,h=f,s=e,f=(e>>>20|0)+f|0,e=h>>>0>f>>>0?a+1|0:a,x=f<<10&1073740800,a=s>>>10|0,t[o+48>>2]=(s&1023)<<22|y>>>10,t[o+52>>2]=x|a&1023,a=b&1048575,s=e,e=e>>>20|0,c=e+c|0,e=e>>>0>c>>>0?a+1|0:a,t[o+56>>2]=(s&1048575)<<12|f>>>20,t[o+60>>2]=c&1073741823,a=n,n=(e>>>20|0)+d|0,a=n>>>0<d>>>0?a+1|0:a,t[o+72>>2]=a>>>8&255,t[o+76>>2]=0,a=a<<22|n>>>10,t[o+64>>2]=((e&1073741823)<<2|c>>>30)&4194303|n<<22&-4194304,t[o+68>>2]=a&1073741823,d=o+40|0,xi(d,690464),e=t[o+44>>2],n=e,t[r+80>>2]=t[o+40>>2],t[r+84>>2]=e&1048575,s=t[o+72>>2]<<8,b=t[o+68>>2],a=b>>>22|0,c=t[o+64>>2],t[A>>2]=(b&4194303)<<10|c>>>22,t[A+4>>2]=a|s,e=c,a=b<<30|e>>>2,c=e<<30&-1073741824,e=t[o+56>>2],s=t[o+60>>2],t[g>>2]=s|c,t[g+4>>2]=a&1048575,a=s<<20|e>>>12,c=e<<20&-1048576,e=t[o+48>>2],s=t[o+52>>2],t[w>>2]=s>>>10|c,t[w+4>>2]=a&1048575,s=(s<<10|e>>>22)&1048575,t[T>>2]=e<<10&-1024|n>>>20,t[T+4>>2]=s,a=r+80|0,Ve(d,a),U0(o,a,d),U0(r,r,d),a=r+40|0,U0(a,a,o),t[A>>2]=0,t[A+4>>2]=0,t[g>>2]=0,t[g+4>>2]=0,t[w>>2]=0,t[w+4>>2]=0,t[T>>2]=0,t[T+4>>2]=0,t[r+80>>2]=1,t[r+84>>2]=0,a=t[r+4>>2],t[i>>2]=t[r>>2],t[i+4>>2]=a,a=r+8|0,e=t[a+4>>2],n=i+8|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=r+16|0,e=t[a+4>>2],n=i+16|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=r+24|0,e=t[a+4>>2],n=i+24|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=r+32|0,e=t[a+4>>2],n=i+32|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=t[r+44>>2],t[i+40>>2]=t[r+40>>2],t[i+44>>2]=a,a=r+48|0,e=t[a+4>>2],n=i+48|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=r+56|0,e=t[a+4>>2],n=i+56|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,a=r- -64|0,e=t[a+4>>2],n=i- -64|0,t[n>>2]=t[a>>2],t[n+4>>2]=e,r=r+72|0,a=t[r+4>>2],i=i+72|0,t[i>>2]=t[r>>2],t[i+4>>2]=a,D=o+80|0}function xi(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0;for(c=D-432|0,D=c,e=c+392|0,a=e+32|0,t[a>>2]=0,t[a+4>>2]=0,a=e+24|0,t[a>>2]=0,t[a+4>>2]=0,a=e+16|0,t[a>>2]=0,t[a+4>>2]=0,e=e+8|0,t[e>>2]=0,t[e+4>>2]=0,t[c+392>>2]=0,t[c+396>>2]=0,e=c+352|0,a=e+32|0,t[a>>2]=0,t[a+4>>2]=0,a=e+24|0,t[a>>2]=0,t[a+4>>2]=0,e=e+16|0,t[e>>2]=0,t[e+4>>2]=0,t[c+360>>2]=0,t[c+364>>2]=0,t[c+352>>2]=1,t[c+356>>2]=0,_=i,d0=t[i+32>>2],b0=t[i+36>>2],C=t[i+24>>2],s0=t[i+28>>2],z=t[i+16>>2],j=t[i+20>>2],S=t[i+8>>2],$=t[i+12>>2],e=t[i>>2],f=t[i+4>>2],l0=t[r+32>>2],R=t[r+36>>2],Z=t[r+24>>2],Y=t[r+28>>2],H=t[r+16>>2],K=t[r+20>>2],N=t[r+8>>2],X=t[r+12>>2],a=t[r>>2],b=t[r+4>>2],g0=-1,I=-1;;){for(s=8,n=0,e0=59,o=0,w=0,d=e,i=f,h=a,k=b,y=0,T=0,A=8,g=0;E=i,i=d&1,V=0-i|0,t0=0-i|0,L=t0,r0=I,i=I>>31,x=i,i=i^h,I=i-x&V,d=I+d|0,i=E+(L&(x^k)-((i>>>0<x>>>0)+x|0))|0,u0=d,d=d>>>0<I>>>0?i+1|0:i,E=x&L,i=(d&E)+k|0,k=h,I=x&V,h=(I&u0)+h|0,k=k>>>0>h>>>0?i+1|0:i,i=o^x,L=i-x&V,A=L+A|0,i=g+((w^x)-((i>>>0<x>>>0)+x|0)&t0)|0,g=A>>>0<L>>>0?i+1|0:i,i=(g&E)+w|0,w=o,o=(A&I)+o|0,i=(w>>>0>o>>>0?i+1|0:i)<<1|o>>>31,o=o<<1,w=i,L=I,i=s^x,I=(i-x&V)+y|0,i=((n^x)-((i>>>0<x>>>0)+x|0)&t0)+T|0,T=y>>>0>I>>>0?i+1|0:i,i=(T&E)+n|0,n=s,y=I,s=(L&y)+s|0,i=(n>>>0>s>>>0?i+1|0:i)<<1|s>>>31,s=s<<1,n=i,i=L^g0,g0=i-1|0,I=(E^r0)-!i|0,i=d>>>1|0,d=(d&1)<<31|u0>>>1,e0=e0-1|0,!!e0;);if(t[c+344>>2]=A,t[c+348>>2]=g,t[c+336>>2]=y,t[c+340>>2]=T,t[c+328>>2]=o,t[c+332>>2]=w,t[c+320>>2]=s,t[c+324>>2]=n,Mi(c+392|0,c+352|0,c+320|0,r),i=b>>31,u0=c+304|0,d=n>>31,h=a,k=i,P(u0,s,n,d,d,a,b,i,i),i=f>>31,L=c+272|0,a=w>>31,E=e,x=i,P(L,o,w,a,a,e,f,i,i),i=T>>31,V=c+288|0,r0=y,e=i,P(V,y,T,i,i,h,b,k,k),i=g>>31,b=c+256|0,y=i,P(b,A,g,i,i,E,f,x,x),i=X>>31,h=c+240|0,f=i,P(h,s,n,d,d,N,X,i,i),k=c+208|0,E=$,i=E>>31,P(k,o,w,a,a,S,E,i,i),E=c+224|0,P(E,r0,T,e,e,N,X,f,f),x=c+192|0,P(x,A,g,y,y,S,$,i,i),i=K>>31,S=c+176|0,f=i,P(S,s,n,d,d,H,K,i,i),$=c+144|0,i=j>>31,P($,o,w,a,a,z,j,i,i),X=c+160|0,P(X,r0,T,e,e,H,K,f,f),K=c+128|0,P(K,A,g,y,y,z,j,i,i),i=Y>>31,z=c+112|0,f=i,P(z,s,n,d,d,Z,Y,i,i),j=c+80|0,N=s0,i=N>>31,P(j,o,w,a,a,C,N,i,i),t0=c+96|0,P(t0,r0,T,e,e,Z,Y,f,f),Y=c- -64|0,P(Y,A,g,y,y,C,N,i,i),i=R>>31,C=c+48|0,f=d,d=i,P(C,s,n,f,f,l0,R,i,i),s0=c+16|0,n=b0,i=n>>31,P(s0,o,w,a,a,d0,n,i,i),e0=c+32|0,P(e0,r0,T,e,e,l0,R,d,d),P(c,A,g,y,y,d0,n,i,i),s=t[c+272>>2],a=t[c+304>>2],e=s+a|0,d=t[c+276>>2],i=d+t[c+308>>2]|0,i=a>>>0>e>>>0?i+1|0:i,a=e,e=i,d=(d|0)==(i|0)&a>>>0<s>>>0|i>>>0<d>>>0,i=u0+8|0,s=t[i>>2],n=L+8|0,a=s+t[n>>2]|0,i=t[n+4>>2]+t[i+4>>2]|0,i=a>>>0<s>>>0?i+1|0:i,d=a+d|0,a=d>>>0<a>>>0?i+1|0:i,s=a<<2|d>>>30,n=d<<2|e>>>30,y=t[c+208>>2],d=t[c+240>>2],e=y+d|0,o=t[c+212>>2],i=o+t[c+244>>2]|0,d=e>>>0<d>>>0?i+1|0:i,i=d+s|0,s=e,n=e+n|0,e=e>>>0>n>>>0?i+1|0:i,i=d,d=n,w=(e|0)==(i|0)&n>>>0<s>>>0|i>>>0>e>>>0,n=(i|0)==(o|0)&s>>>0<y>>>0|i>>>0<o>>>0,i=h+8|0,o=t[i>>2],y=k+8|0,s=o+t[y>>2]|0,i=t[y+4>>2]+t[i+4>>2]|0,i=s>>>0<o>>>0?i+1|0:i,o=s,s=n+s|0,i=(a>>31)+(o>>>0>s>>>0?i+1|0:i)|0,a=a>>30,n=a,a=a+s|0,i=n>>>0>a>>>0?i+1|0:i,s=a+w|0,a=s>>>0<a>>>0?i+1|0:i,n=a<<2|s>>>30,w=e,y=s<<2|e>>>30,g=t[c+144>>2],s=t[c+176>>2],e=g+s|0,o=t[c+148>>2],i=o+t[c+180>>2]|0,s=e>>>0<s>>>0?i+1|0:i,i=s+n|0,n=e,N=e+y|0,e=e>>>0>N>>>0?i+1|0:i,y=(s|0)==(e|0)&n>>>0>N>>>0|e>>>0<s>>>0,n=(s|0)==(o|0)&n>>>0<g>>>0|s>>>0<o>>>0,i=S+8|0,o=t[i>>2],T=$+8|0,s=o+t[T>>2]|0,i=t[T+4>>2]+t[i+4>>2]|0,i=s>>>0<o>>>0?i+1|0:i,o=s,s=n+s|0,i=(a>>31)+(o>>>0>s>>>0?i+1|0:i)|0,a=a>>30,n=a,a=a+s|0,i=n>>>0>a>>>0?i+1|0:i,s=a+y|0,a=s>>>0<a>>>0?i+1|0:i,n=a<<2|s>>>30,y=e,T=s<<2|e>>>30,A=t[c+80>>2],s=t[c+112>>2],e=A+s|0,o=t[c+84>>2],i=o+t[c+116>>2]|0,s=e>>>0<s>>>0?i+1|0:i,i=s+n|0,n=e,H=e+T|0,e=e>>>0>H>>>0?i+1|0:i,T=(s|0)==(e|0)&n>>>0>H>>>0|e>>>0<s>>>0,n=(s|0)==(o|0)&n>>>0<A>>>0|s>>>0<o>>>0,i=z+8|0,o=t[i>>2],g=j+8|0,s=o+t[g>>2]|0,i=t[g+4>>2]+t[i+4>>2]|0,i=s>>>0<o>>>0?i+1|0:i,o=s,s=n+s|0,i=(a>>31)+(o>>>0>s>>>0?i+1|0:i)|0,a=a>>30,n=a,a=a+s|0,i=n>>>0>a>>>0?i+1|0:i,s=a+T|0,a=s>>>0<a>>>0?i+1|0:i,n=a<<2|s>>>30,T=e,g=s<<2|e>>>30,f=t[c+16>>2],s=t[c+48>>2],e=f+s|0,o=t[c+20>>2],i=o+t[c+52>>2]|0,s=e>>>0<s>>>0?i+1|0:i,i=s+n|0,n=e,Z=e+g|0,e=e>>>0>Z>>>0?i+1|0:i,g=(s|0)==(e|0)&n>>>0>Z>>>0|e>>>0<s>>>0,n=(s|0)==(o|0)&n>>>0<f>>>0|s>>>0<o>>>0,i=C+8|0,o=t[i>>2],A=s0+8|0,s=o+t[A>>2]|0,i=t[A+4>>2]+t[i+4>>2]|0,i=s>>>0<o>>>0?i+1|0:i,o=s,s=n+s|0,i=(a>>31)+(o>>>0>s>>>0?i+1|0:i)|0,a=a>>30,n=a,a=a+s|0,i=n>>>0>a>>>0?i+1|0:i,n=a,a=a+g|0,s=(n>>>0>a>>>0?i+1|0:i)<<2|a>>>30,g=e,l0=a<<2|e>>>30,R=s,n=t[c+256>>2],a=t[c+288>>2],e=n+a|0,s=t[c+260>>2],i=s+t[c+292>>2]|0,i=a>>>0>e>>>0?i+1|0:i,a=e,e=i,s=(s|0)==(i|0)&a>>>0<n>>>0|i>>>0<s>>>0,i=V+8|0,n=t[i>>2],o=b+8|0,a=n+t[o>>2]|0,i=t[o+4>>2]+t[i+4>>2]|0,i=a>>>0<n>>>0?i+1|0:i,s=a+s|0,a=s>>>0<a>>>0?i+1|0:i,n=a<<2|s>>>30,o=s<<2|e>>>30,b=t[c+192>>2],s=t[c+224>>2],e=b+s|0,A=t[c+196>>2],i=A+t[c+228>>2]|0,s=e>>>0<s>>>0?i+1|0:i,i=s+n|0,n=e,o=e+o|0,e=e>>>0>o>>>0?i+1|0:i,i=s,s=o,f=(e|0)==(i|0)&n>>>0>s>>>0|i>>>0>e>>>0,o=(i|0)==(A|0)&n>>>0<b>>>0|i>>>0<A>>>0,i=E+8|0,A=t[i>>2],b=x+8|0,n=A+t[b>>2]|0,i=t[b+4>>2]+t[i+4>>2]|0,i=n>>>0<A>>>0?i+1|0:i,k=n,n=n+o|0,i=(a>>31)+(k>>>0>n>>>0?i+1|0:i)|0,a=a>>30,o=a,a=a+n|0,i=o>>>0>a>>>0?i+1|0:i,n=a+f|0,a=n>>>0<a>>>0?i+1|0:i,o=a<<2|n>>>30,A=e,b=n<<2|e>>>30,C=t[c+128>>2],n=t[c+160>>2],e=C+n|0,f=t[c+132>>2],i=f+t[c+164>>2]|0,n=e>>>0<n>>>0?i+1|0:i,i=n+o|0,o=e,S=e+b|0,e=e>>>0>S>>>0?i+1|0:i,b=(n|0)==(e|0)&o>>>0>S>>>0|e>>>0<n>>>0,o=(n|0)==(f|0)&o>>>0<C>>>0|n>>>0<f>>>0,i=X+8|0,f=t[i>>2],h=K+8|0,n=f+t[h>>2]|0,i=t[h+4>>2]+t[i+4>>2]|0,i=n>>>0<f>>>0?i+1|0:i,f=n,n=n+o|0,i=(a>>31)+(f>>>0>n>>>0?i+1|0:i)|0,a=a>>30,o=a,a=a+n|0,i=o>>>0>a>>>0?i+1|0:i,n=a+b|0,a=n>>>0<a>>>0?i+1|0:i,o=a<<2|n>>>30,f=e,h=n<<2|e>>>30,k=t[c+64>>2],n=t[c+96>>2],e=k+n|0,b=t[c+68>>2],i=b+t[c+100>>2]|0,n=e>>>0<n>>>0?i+1|0:i,i=n+o|0,o=e,z=e+h|0,e=e>>>0>z>>>0?i+1|0:i,h=(n|0)==(e|0)&o>>>0>z>>>0|e>>>0<n>>>0,o=(n|0)==(b|0)&o>>>0<k>>>0|n>>>0<b>>>0,i=t0+8|0,b=t[i>>2],C=Y+8|0,n=b+t[C>>2]|0,i=t[C+4>>2]+t[i+4>>2]|0,i=n>>>0<b>>>0?i+1|0:i,k=n,n=n+o|0,i=(a>>31)+(k>>>0>n>>>0?i+1|0:i)|0,a=a>>30,o=a,a=a+n|0,i=o>>>0>a>>>0?i+1|0:i,n=a+h|0,a=n>>>0<a>>>0?i+1|0:i,o=a<<2|n>>>30,b=e,C=n<<2|e>>>30,E=t[c>>2],n=t[c+32>>2],e=E+n|0,h=t[c+4>>2],i=h+t[c+36>>2]|0,n=e>>>0<n>>>0?i+1|0:i,i=n+o|0,o=e,C=e+C|0,e=e>>>0>C>>>0?i+1|0:i,k=(n|0)==(e|0)&o>>>0>C>>>0|e>>>0<n>>>0,o=(n|0)==(h|0)&o>>>0<E>>>0|n>>>0<h>>>0,i=e0+8|0,h=t[i>>2],E=c+8|0,n=h+t[E>>2]|0,i=t[E+4>>2]+t[i+4>>2]|0,i=n>>>0<h>>>0?i+1|0:i,h=n,n=n+o|0,i=(a>>31)+(h>>>0>n>>>0?i+1|0:i)|0,a=a>>30,o=a,a=a+n|0,i=o>>>0>a>>>0?i+1|0:i,n=a,a=a+k|0,n=(n>>>0>a>>>0?i+1|0:i)<<2|a>>>30,d0=a<<2|e>>>30,b0=n,s0=e&1073741823,Y=g&1073741823,j=b&1073741823,K=T&1073741823,$=f&1073741823,X=y&1073741823,e=s,f=A&1073741823,a=d,b=w&1073741823,x0=x0+1|0,(x0|0)==10)break}i=R>>31,e=i,w=c+392|0,d=w+32|0,T=t[d>>2],i=t[d+4>>2],f=i,i=i>>31,a=i,n=t[r>>2],g=i&n,s=g+t[c+392>>2]|0,o=t[r+4>>2],i=t[c+396>>2]+(o&i)|0,i=s>>>0<g>>>0?i+1|0:i,s=e^s,C=s-e|0,s=(i^e)-((e>>>0>s>>>0)+e|0)|0,g=n,A=o,i=t[r+32>>2],z=i,o=i&a,n=o+T|0,S=t[r+36>>2],i=f+(S&a)|0,i=n>>>0<o>>>0?i+1|0:i,n=e^n,T=n-e|0,h=(i^e)-((e>>>0>n>>>0)+e|0)|0,i=t[r+24>>2],Z=i,y=i&a,n=w+24|0,o=y+t[n>>2]|0,H=t[r+28>>2],i=t[n+4>>2]+(H&a)|0,i=o>>>0<y>>>0?i+1|0:i,o=e^o,b=o-e|0,N=(i^e)-((e>>>0>o>>>0)+e|0)|0,i=t[r+16>>2],k=i,f=i&a,o=w+16|0,y=f+t[o>>2]|0,I=t[r+20>>2],i=t[o+4>>2]+(I&a)|0,i=f>>>0>y>>>0?i+1|0:i,y=e^y,R=y-e|0,y=(i^e)-((e>>>0>y>>>0)+e|0)|0,E=t[r+8>>2],f=E&a,i=w+8|0,w=f+t[i>>2]|0,x=t[r+12>>2],i=t[i+4>>2]+(x&a)|0,r=e^w,a=r-e|0,i=((e^(f>>>0>w>>>0?i+1|0:i))-((r>>>0<e>>>0)+e|0)|0)+(s>>31)|0,r=s>>30,a=r+a|0,f=r>>>0>a>>>0?i+1|0:i,i=(f>>31)+y|0,r=f>>30,w=r+R|0,R=r>>>0>w>>>0?i+1|0:i,i=(R>>31)+N|0,r=R>>30,y=r+b|0,b=r>>>0>y>>>0?i+1|0:i,i=(b>>31)+h|0,r=b>>30,T=r+T|0,h=r>>>0>T>>>0?i+1|0:i,r=h>>31,i=(r&A)+(s&1073741823)|0,e=r,r=(e&g)+C|0,i=r>>>0<C>>>0?i+1|0:i,t[_>>2]=r,r=i,t[_+4>>2]=i&1073741823,g=_+8|0,i=(e&x)+(f&1073741823)|0,s=a,a=(e&E)+a|0,i=(r>>31)+(s>>>0>a>>>0?i+1|0:i)|0,r=r>>30,s=r,r=r+a|0,i=s>>>0>r>>>0?i+1|0:i,t[g>>2]=r,r=i,t[g+4>>2]=i&1073741823,i=(e&I)+(R&1073741823)|0,a=(e&k)+w|0,i=(r>>31)+(a>>>0<w>>>0?i+1|0:i)|0,r=r>>30,s=r,r=r+a|0,i=s>>>0>r>>>0?i+1|0:i,a=r,t[o>>2]=a,r=i,i=i&1073741823,t[o+4>>2]=i,s=_+16|0,t[s>>2]=a,t[s+4>>2]=i,i=(e&H)+(b&1073741823)|0,a=(e&Z)+y|0,i=(r>>31)+(a>>>0<y>>>0?i+1|0:i)|0,r=r>>30,s=r,r=r+a|0,i=s>>>0>r>>>0?i+1|0:i,a=r,t[n>>2]=a,r=i,i=i&1073741823,t[n+4>>2]=i,s=_+24|0,t[s>>2]=a,t[s+4>>2]=i,i=(e&S)+h|0,e=(e&z)+T|0,i=(r>>31)+(e>>>0<T>>>0?i+1|0:i)|0,r=r>>30,a=r,r=r+e|0,i=a>>>0>r>>>0?i+1|0:i,t[d>>2]=r,t[d+4>>2]=i,e=_+32|0,t[e>>2]=r,t[e+4>>2]=i,D=c+432|0}function Ei(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0;n=D-48|0,D=n;t:{if(!r){O0[t[i+168>>2]](689571,t[i+172>>2]),i=0;break t}w=n+8|0,ie(w,r,n+44|0),d=t[n+32>>2],a=t[n+24>>2],c=t[n+16>>2],e=t[n+8>>2],b=t[n+36>>2],f=t[n+28>>2],s=t[n+20>>2],o=t[n+12>>2],T=t[n+44>>2]|!(d|(a|(c|e))|(b|(f|(s|o)))),i=T?0:-1,d=i&d,h=i&a,y=i&c,e=i&e,b=i&b,A=i&f,g=i&s,a=i&o,c=d|(h|(y|e))|(b|(A|(g|a)))?-1:0,e=e^-1,o=e-801750718|0,t[n+8>>2]=c&o,a=a^-1,s=a-((e>>>0<801750718)+1076732275|0)|0,t[n+12>>2]=s&c,i=(a|0)==(s|0)&e>>>0>o>>>0|a>>>0>s>>>0,s=y^-1,e=i+s|0,o=g^-1,a=o,g=e-1354194885|0,t[n+16>>2]=g&c,a=e>>>0<s>>>0?a+1|0:a,f=a-((e>>>0<1354194885)+1162945305|0)|0,t[n+20>>2]=f&c,h=h^-1,i=(a|0)==(o|0)&e>>>0<s>>>0|a>>>0<o>>>0,s=(a|0)==(f|0)&e>>>0>g>>>0|a>>>0>f>>>0,a=i+s|0,y=A^-1,e=y+(a>>>0<s>>>0)|0,i=a,a=a+h|0,e=i>>>0>a>>>0?e+1|0:e,o=a-2|0,t[n+24>>2]=o&c,s=e-(a>>>0<2)|0,t[n+28>>2]=s&c,i=(e|0)==(y|0)&a>>>0<h>>>0|e>>>0<y>>>0,a=(e|0)==(s|0)&a>>>0>o>>>0|e>>>0>s>>>0,i=i+a|0,e=i>>>0<a>>>0,a=i-d|0,t[n+32>>2]=a-2&c,t[n+36>>2]=(e-((i>>>0<d>>>0)+b|0)|0)-(a>>>0<2)&c,_t(r,w),i=!T}return D=n+48|0,i}function Pi(){var i=0,r=0,a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0;return n=D-80|0,D=n,N=n+8|0,i=n+48|0,ie(N,690788,i),j=t[n+48>>2],C=t[n+32>>2],L=t[n+36>>2],I=t[n+24>>2],z=t[n+28>>2],S=t[n+8>>2],H=t[n+12>>2],R=t[n+16>>2],V=t[n+20>>2],t[n+44>>2]=0,ie(i,690949,n+44|0),e=t[n+52>>2],i=e+H|0,a=t[n+48>>2],E=a+S|0,T=E>>>0<S>>>0?i+1|0:i,s=t[n+60>>2],i=s+V|0,f=i+1|0,y=i,i=t[n+56>>2],r=i+R|0,o=r>>>0<R>>>0?f:y,s=(o|0)==(s|0)&i>>>0>r>>>0|o>>>0<s>>>0,i=(e|0)==(T|0)&a>>>0>E>>>0|e>>>0>T>>>0,x=i+r|0,g=x>>>0<i>>>0?o+1|0:o,a=(g|0)==(o|0)&r>>>0>x>>>0|o>>>0>g>>>0,s=s+a|0,r=t[n+68>>2],i=r+z|0,f=i+1|0,y=i,i=t[n+64>>2],o=i+I|0,c=o>>>0<I>>>0?f:y,a=c+(a>>>0>s>>>0)|0,A=o+s|0,s=A>>>0<s>>>0?a+1|0:a,e=(s|0)==(c|0)&o>>>0>A>>>0|s>>>0<c>>>0,d=e+((r|0)==(c|0)&i>>>0>o>>>0|r>>>0>c>>>0)|0,i=s,o=(i|0)==-1,w=t[n+76>>2],a=w+L|0,r=t[n+72>>2],h=r+C|0,b=h>>>0<C>>>0?a+1|0:a,a=b+(e>>>0>d>>>0)|0,f=a+1|0,y=a,a=d+h|0,k=a>>>0<d>>>0?f:y,e=o&A>>>0<4294967294|(i|0)!=-1|(k&a)!=-1,c=(g|0)==-1162945306,d=(e|(c&x>>>0<2940772411|g>>>0<3132021990))^-1,e=(((b|0)==(w|0)&r>>>0>h>>>0|b>>>0<w>>>0)+((b|0)==(k|0)&a>>>0<h>>>0|b>>>0>k>>>0)|0)+(d&((T|0)==-1076732276&E>>>0>3493216576|T>>>0>3218235020)|(d&(c&x>>>0>2940772411|g>>>0>3132021990)|(A|0)==-1&o&(e^-1)))|0,h=e+A|0,h>>>0<A>>>0&&(i=i+1|0),c=I0(e,0,1354194884,1162945305),o=g+i0|0,r=I0(e,0,801750719,1076732275),f=r+E|0,w=c+x|0,e=T+i0|0,d=r>>>0>f>>>0?e+1|0:e,e=(d|0)==(T|0)&E>>>0>f>>>0|d>>>0<T>>>0,b=w+e|0,r=c>>>0>w>>>0?o+1|0:o,c=e>>>0>b>>>0?r+1|0:r,e=(r|0)==(c|0)&b>>>0<w>>>0|r>>>0>c>>>0,r=e+((r|0)==(g|0)&w>>>0<x>>>0|r>>>0<g>>>0)|0,y=(i|0)==(s|0)&h>>>0<A>>>0|i>>>0<s>>>0,e=(r>>>0<e>>>0)+i|0,s=r,r=r+h|0,o=s>>>0>r>>>0?e+1|0:e,i=(o|0)==(i|0)&r>>>0<h>>>0|i>>>0>o>>>0,s=y+i|0,i=k+(i>>>0>s>>>0)|0,s=a+s|0,e=s>>>0<a>>>0?i+1|0:i,i=n,s|(b|f|r)|(e|(c|d|o))?y=t[i+44>>2]|(j|!(C|(I|(S|R))|(L|(z|(H|V))))):y=1,n=!y,a=0-n|0,t[i+32>>2]=s&a,t[i+36>>2]=a&e,t[i+24>>2]=r&a,t[i+28>>2]=a&o,t[i+16>>2]=a&b,t[i+20>>2]=a&c,t[i+8>>2]=a&f,t[i+12>>2]=a&d,_t(690788,N),D=i+80|0,n}function ki(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0,V0=0,q0=0,Z0=0,Y0=0,K0=0,Q0=0,J0=0,_0=0,$0=0,ee=0,ae=0,oe=0,ce=0,de=0,Ne=0,Ue=0,Oe=0,je=0,$e=0,et=0,dt=0,lt=0,Et=0,$t=0,g2=0,w2=0,Tr=0,vr=0,ha=0;s=D-1744|0,D=s,T=s+1704|0,$e=r+80|0,Ve(T,$e),$=s+1664|0,C=$+8|0,o=C,e=r+8|0,H=t[e>>2],k=t[e+4>>2],c=t[r+4>>2],e=r+32|0,b=t[e>>2],f=t[e+4>>2],d=f,n=t[r>>2],f=I0(d>>>16|0,0,977,1),n=n+f|0,e=c+i0|0,c=n>>>0<f>>>0?e+1|0:e,e=k,f=c>>>20|0,N=f+H|0,e=f>>>0>N>>>0?e+1|0:e,t[o>>2]=N,dt=e&1048575,t[o+4>>2]=dt,H=$+16|0,f=H,o=r+16|0,k=t[o>>2],g=t[o+4>>2],o=e,e=g,o=o>>>20|0,L=o+k|0,e=o>>>0>L>>>0?e+1|0:e,t[f>>2]=L,lt=e&1048575,t[f+4>>2]=lt,k=$+24|0,f=k,o=r+24|0,g=t[o>>2],M0=t[o+4>>2],o=e,e=M0,o=o>>>20|0,V=o+g|0,e=o>>>0>V>>>0?e+1|0:e,t[f>>2]=V,Et=e&1048575,t[f+4>>2]=Et,g=$+32|0,f=g,o=e,e=d&65535,o=o>>>20|0,x0=o+b|0,e=o>>>0>x0>>>0?e+1|0:e,t[f>>2]=x0,J0=e,t[f+4>>2]=e,Y0=n,t[s+1664>>2]=n,$t=c&1048575,t[s+1668>>2]=$t,U0(s+1624|0,a,T),e=r- -64|0,S=t[e>>2],A=t[e+4>>2],e=r+56|0,I=t[e>>2],X=t[e+4>>2],e=r+48|0,r0=t[e>>2],l0=t[e+4>>2],e=r+72|0,g0=t[e>>2],M0=t[e+4>>2],e0=t[r+40>>2],z=t[r+44>>2],e=s+1584|0,U0(e,a+40|0,T),U0(e,e,$e),_=t[s+1636>>2],e=_+t[C+4>>2]|0,ce=s+1544|0,Ne=ce+8|0,n=Ne,_0=t[s+1632>>2],b=t[C>>2],f=_0+b|0,t[n>>2]=f,T=f>>>0<b>>>0?e+1|0:e,t[n+4>>2]=T,Y=t[s+1644>>2],e=Y+t[H+4>>2]|0,Ue=ce+16|0,c=Ue,$0=t[s+1640>>2],n=t[H>>2],b=$0+n|0,t[c>>2]=b,n=n>>>0>b>>>0?e+1|0:e,t[c+4>>2]=n,K=t[s+1652>>2],e=K+t[k+4>>2]|0,Oe=ce+24|0,C=Oe,s0=t[s+1648>>2],c=t[k>>2],o=s0+c|0,t[C>>2]=o,c=o>>>0<c>>>0?e+1|0:e,t[C+4>>2]=c,R0=t[s+1660>>2],e=R0+t[g+4>>2]|0,ae=ce+32|0,H=ae,t0=t[s+1656>>2],k=t[g>>2],C=t0+k|0,t[H>>2]=C,g=k>>>0>C>>>0?e+1|0:e,t[H+4>>2]=g,V0=t[s+1628>>2],e=V0+t[s+1668>>2]|0,Z=t[s+1624>>2],k=t[s+1664>>2],H=Z+k|0,t[s+1544>>2]=H,k=k>>>0>H>>>0?e+1|0:e,t[s+1548>>2]=k,Q0=s+1232|0,h=H<<1,y=k<<1|H>>>31,P(Q0,o,c,0,0,h,y,0,0),u0=s+1312|0,R=f<<1,x=T,w=f,T=T<<1|f>>>31,P(u0,b,n,0,0,R,T,0,0),E=s+1168|0,e=g,P(E,C,e,0,0,C,e,0,0),q0=s+1152|0,P(q0,t[s+1168>>2],t[s+1172>>2],0,0,15632,16,0,0),b0=s+1120|0,f=C<<1,g=e<<1|C>>>31,P(b0,f,g,0,0,H,k,0,0),C0=s+1216|0,P(C0,o,c,0,0,R,T,0,0),Z0=s+1328|0,P(Z0,b,n,0,0,b,n,0,0),E0=s+1136|0,e=E+8|0,P(E0,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),ee=s+1248|0,P(ee,H,k,0,0,H,k,0,0),k0=s+1104|0,P(k0,f,g,0,0,w,x,0,0),d0=n,H=b,e=n<<1|b>>>31,K0=s+1200|0,R=o,E=c,P(K0,o,c,0,0,b<<1,e,0,0),T=t[s+1232>>2],n=t[s+1312>>2],b=T+n|0,o=t[s+1236>>2],e=o+t[s+1316>>2]|0,n=n>>>0>b>>>0?e+1|0:e,e=n+t[s+1156>>2]|0,c=b,C=t[s+1152>>2],b=c+C|0,j=b,b=b>>>0<C>>>0?e+1|0:e,C=(n|0)==(b|0)&c>>>0>j>>>0|n>>>0>b>>>0,e=q0+8|0,k=t[e>>2],d=t[e+4>>2],o=(n|0)==(o|0)&c>>>0<T>>>0|n>>>0<o>>>0,e=u0+8|0,T=t[e>>2],n=Q0+8|0,c=T+t[n>>2]|0,n=t[n+4>>2]+t[e+4>>2]|0,e=c>>>0<T>>>0?n+1|0:n,n=o+c|0,e=(n>>>0<c>>>0?e+1|0:e)+d|0,o=n,n=n+k|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+C|0,c=o>>>0>n>>>0?e+1|0:e,o=c<<12|n>>>20,u0=b,b=n<<12|b>>>20,Q0=o,oe=t[s+1216>>2],o=t[s+1328>>2],n=oe+o|0,q0=t[s+1220>>2],e=q0+t[s+1332>>2]|0,o=n>>>0<o>>>0?e+1|0:e,C=n,T=t[s+1120>>2],e=n+T|0,n=o+t[s+1124>>2]|0,T=e>>>0<T>>>0?n+1|0:n,k=e,d=t[s+1136>>2],n=e+d|0,e=T+t[s+1140>>2]|0,e=n>>>0<d>>>0?e+1|0:e,d=n,n=e,e=e+Q0|0,je=s+1088|0,Q0=d+b|0,b=Q0>>>0<d>>>0?e+1|0:e,de=(n|0)==(b|0)&d>>>0>Q0>>>0|n>>>0>b>>>0,d=(n|0)==(T|0)&d>>>0<k>>>0|n>>>0<T>>>0,e=E0+8|0,E0=t[e>>2],et=t[e+4>>2],T=(o|0)==(T|0)&k>>>0<C>>>0|o>>>0>T>>>0,e=b0+8|0,k=t[e>>2],b0=t[e+4>>2],C=(o|0)==(q0|0)&C>>>0<oe>>>0|o>>>0<q0>>>0,e=Z0+8|0,q0=t[e>>2],n=C0+8|0,o=q0+t[n>>2]|0,n=t[n+4>>2]+t[e+4>>2]|0,e=o>>>0<q0>>>0?n+1|0:n,n=o+C|0,e=(n>>>0<o>>>0?e+1|0:e)+b0|0,o=n,n=n+k|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+T|0,e=(o>>>0>n>>>0?e+1|0:e)+et|0,o=n+E0|0,n=o>>>0<n>>>0?e+1|0:e,e=o+d|0,n=e>>>0<o>>>0?n+1|0:n,o=e,e=n,c=c>>>20|0,n=o+c|0,e=c>>>0>n>>>0?e+1|0:e,o=n,n=n+de|0,c=o>>>0>n>>>0?e+1|0:e,T=c<<12|n>>>20,o=b,n=n<<12|o>>>20,b=T,d=t[s+1104>>2],T=t[s+1200>>2],C=d+T|0,k=t[s+1108>>2],e=k+t[s+1204>>2]|0,T=T>>>0>C>>>0?e+1|0:e,e=n+C|0,n=b+T|0,b=e>>>0<C>>>0?n+1|0:n,n=e,e=b<<4|e>>>28,b0=n<<4&-16,q0=o,P(je,b0|o>>>16&15,e&16777215,0,0,977,1,0,0),b0=s+1280|0,P(b0,w,x,0,0,h,y,0,0),C0=s+1072|0,P(C0,f,g,0,0,H,d0,0,0),Z0=s+1184|0,P(Z0,R,E,0,0,R,E,0,0),de=s+1056|0,E0=de,oe=(b|0)==(T|0)&n>>>0<C>>>0|b>>>0<T>>>0,o=(T|0)==(k|0)&d>>>0>C>>>0|T>>>0<k>>>0,e=K0+8|0,T=t[e>>2],C=k0+8|0,n=T+t[C>>2]|0,e=t[C+4>>2]+t[e+4>>2]|0,e=n>>>0<T>>>0?e+1|0:e,d=n,n=n+o|0,e=d>>>0>n>>>0?e+1|0:e,c=c>>>20|0,o=c,c=n+c|0,n=o>>>0>c>>>0?e+1|0:e,e=c+oe|0,n=e>>>0<c>>>0?n+1|0:n,o=n<<12|e>>>20,c=e<<12|b>>>20,T=o,k=t[s+1072>>2],o=t[s+1184>>2],b=k+o|0,C=t[s+1076>>2],e=C+t[s+1188>>2]|0,e=o>>>0>b>>>0?e+1|0:e,o=b,b=e,e=e+T|0,c=o+c|0,e=c>>>0<o>>>0?e+1|0:e,T=c,c=e,P(E0,T,e&1048575,0,0,15632,16,0,0),d=s+1264|0,P(d,H,d0,0,0,h,y,0,0),y=s+1296|0,P(y,w,x,0,0,w,x,0,0),H=s+1040|0,P(H,f,g,0,0,R,E,0,0),h=s+1024|0,f=h,T=(e|0)==(b|0)&o>>>0>T>>>0|e>>>0<b>>>0,o=(b|0)==(C|0)&o>>>0<k>>>0|b>>>0<C>>>0,e=Z0+8|0,C=t[e>>2],k=C0+8|0,b=C+t[k>>2]|0,e=t[k+4>>2]+t[e+4>>2]|0,e=b>>>0<C>>>0?e+1|0:e,g=b,b=o+b|0,e=g>>>0>b>>>0?e+1|0:e,n=n>>>20|0,o=n,n=n+b|0,e=o>>>0>n>>>0?e+1|0:e,b=n+T|0,n=b>>>0<n>>>0?e+1|0:e,o=n<<12|b>>>20,T=b<<12|c>>>20,C=t[s+1040>>2],b=T+C|0,c=o,e=o+t[s+1044>>2]|0,e=b>>>0<C>>>0?e+1|0:e,P(f,b,e,0,0,15632,16,0,0),w=s+1008|0,o=w,b=(e|0)==(c|0)&b>>>0<T>>>0|e>>>0<c>>>0,e=H+8|0,c=t[e>>2],e=t[e+4>>2],n=n>>>20|0,f=n,n=n+c|0,e=f>>>0>n>>>0?e+1|0:e,c=n,n=n+b|0,e=c>>>0>n>>>0?e+1|0:e,P(o,n,e,0,0,64028672,65536,0,0),E0=t[s+1608>>2],Z0=t[s+1612>>2],k0=t[s+1600>>2],et=t[s+1604>>2],oe=t[s+1584>>2],g2=t[s+1588>>2],H=t[s+1616>>2],k=t[s+1620>>2],K0=t[s+1592>>2],w2=t[s+1596>>2],t[s+1416>>2]=-4-t0,t[s+1420>>2]=262143-((t0>>>0>4294967292)+R0|0),t[s+1408>>2]=-4-s0,t[s+1412>>2]=4194303-((s0>>>0>4294967292)+K|0),t[s+1400>>2]=-4-$0,t[s+1404>>2]=4194303-(($0>>>0>4294967292)+Y|0),t[s+1392>>2]=-4-_0,t[s+1396>>2]=4194303-((_0>>>0>4294967292)+_|0),t[s+1384>>2]=-3908-Z,t[s+1388>>2]=4194299-((Z>>>0>4294963388)+V0|0),e=ee+8|0,x=t[e>>2],R=t[e+4>>2],e=je+8|0,c=t[e>>2],s0=t[e+4>>2],b=t[s+1248>>2],e=t[s+1252>>2],o=t[s+1088>>2],n=t[s+1092>>2],T=b0+8|0,t0=t[T>>2],Z=t[T+4>>2],T=de+8|0,f=t[T>>2],_=t[T+4>>2],C=t[s+1280>>2],Y=t[s+1284>>2],g=t[s+1056>>2],T=t[s+1060>>2],y=y+8|0,ee=t[y>>2],je=t[y+4>>2],d=d+8|0,V0=t[d>>2],de=t[d+4>>2],d=t[s+1296>>2],Tr=t[s+1300>>2],b0=t[s+1264>>2],K=t[s+1268>>2],y=h+8|0,d0=t[y>>2],_0=t[y+4>>2],y=t[s+1024>>2],h=t[s+1028>>2],C0=t[s+1008>>2],R0=t[s+1012>>2],w=w+8|0,vr=t[w>>2],$0=t[w+4>>2],ha=s+1384|0,U0(s+1504|0,$,ha),e=e+n|0,E=o+b|0,b=E>>>0<b>>>0?e+1|0:e,o=(n|0)==(b|0)&o>>>0>E>>>0|n>>>0>b>>>0,n=R+s0|0,e=c,c=c+x|0,e=e>>>0>c>>>0?n+1|0:n,n=o+c|0,c=n>>>0<c>>>0?e+1|0:e,e=c<<12|n>>>20,$=b,b=n<<12|b>>>20,w=e,e=T+Y|0,o=g+C|0,n=o>>>0<C>>>0?e+1|0:e,e=n+w|0,R=o+b|0,b=R>>>0<o>>>0?e+1|0:e,C=(n|0)==(b|0)&o>>>0>R>>>0|n>>>0>b>>>0,T=(n|0)==(T|0)&o>>>0<g>>>0|n>>>0<T>>>0,e=Z+_|0,o=f+t0|0,n=o>>>0<f>>>0?e+1|0:e,e=o+T|0,n=e>>>0<o>>>0?n+1|0:n,o=e,e=n,c=c>>>20|0,n=o+c|0,e=c>>>0>n>>>0?e+1|0:e,o=n,n=n+C|0,T=o>>>0>n>>>0?e+1|0:e,c=T<<12|n>>>20,s0=b,b=n<<12|b>>>20,e=K+Tr|0,w=d+b0|0,f=w>>>0<d>>>0?e+1|0:e,n=f+h|0,h=y+w|0,C=h>>>0<y>>>0?n+1|0:n,e=C+c|0,x=b+h|0,b=x>>>0<h>>>0?e+1|0:e,c=H,o=k,y=g0,g0=M0&65535,n=I0(M0>>>16|0,0,977,1),k=n+e0|0,e=z+i0|0,t0=n>>>0>k>>>0?e+1|0:e,e=l0,n=t0>>>20|0,H=n+r0|0,Z=n>>>0>H>>>0?e+1|0:e,e=X,n=Z>>>20|0,g=n+I|0,_=n>>>0>g>>>0?e+1|0:e,n=A,e=g0,d=_>>>20|0,A=d,d=d+S|0,Y=A>>>0>d>>>0?n+1|0:n,n=Y>>>20|0,M0=n+y|0,y=n>>>0>M0>>>0?e+1|0:e,e=y+o|0,o=c+M0|0,c=o>>>0<M0>>>0?e+1|0:e,A=t[s+1528>>2],I=t[s+1532>>2],S=(b|0)==(C|0)&h>>>0>x>>>0|b>>>0<C>>>0,C=(f|0)==(C|0)&h>>>0<w>>>0|f>>>0>C>>>0,h=(f|0)==(K|0)&w>>>0<b0>>>0|f>>>0<K>>>0,e=de+je|0,f=V0+ee|0,n=f>>>0<V0>>>0?e+1|0:e,e=f,f=f+h|0,e=(e>>>0>f>>>0?n+1|0:n)+_0|0,n=f+d0|0,e=n>>>0<f>>>0?e+1|0:e,f=n,n=n+C|0,e=f>>>0>n>>>0?e+1|0:e,T=T>>>20|0,n=n+T|0,e=T>>>0>n>>>0?e+1|0:e,f=n,n=n+S|0,T=f>>>0>n>>>0?e+1|0:e,e=n,n=T<<12|e>>>20,S=b,b=e<<12|b>>>20,h=n,f=j&-2,n=f+C0|0,e=R0+(u0&1048575)|0,f=n>>>0<f>>>0?e+1|0:e,e=f+h|0,C=n,X=n+b|0,b=n>>>0>X>>>0?e+1|0:e,e=I+(b&1048575)|0,h=A+X|0,w=h>>>0<X>>>0?e+1|0:e,e=t[s+1524>>2]+(S&1048575)|0,n=x,x=t[s+1520>>2]+x|0,S=n>>>0>x>>>0?e+1|0:e,e=t[s+1516>>2]+(s0&1048575)|0,n=R,R=t[s+1512>>2]+R|0,A=n>>>0>R>>>0?e+1|0:e,n=t[s+1508>>2]+($&1048575)|0,e=E,E=t[s+1504>>2]+E|0,I=e>>>0>E>>>0?n+1|0:n,e=t[s+1540>>2]+(q0&65535)|0,n=t[s+1536>>2]+Q0|0,e=n>>>0<Q0>>>0?e+1|0:e,Q0=n,r0=e,X=(f|0)==(b|0)&C>>>0>X>>>0|f>>>0>b>>>0,f=(f|0)==(R0|0)&C>>>0<C0>>>0|f>>>0<R0>>>0,n=f+vr|0,e=$0,e=n>>>0<f>>>0?e+1|0:e,T=T>>>20|0,f=T,T=n+T|0,n=f>>>0>T>>>0?e+1|0:e,e=T,T=T+X|0,e=(e>>>0>T>>>0?n+1|0:n)<<12|T>>>20,n=T<<12|b>>>20,b=n+Q0|0,e=e+r0|0,T=n>>>0>b>>>0?e+1|0:e,f=I0(T>>>16|0,0,977,1),n=f+E|0,e=I+i0|0,X=n,r0=n>>>0<f>>>0?e+1|0:e,e=A,n=r0>>>20|0,l0=n+R|0,g0=n>>>0>l0>>>0?e+1|0:e,n=S,e=w,f=g0>>>20|0,e0=f+x|0,z=f>>>0>e0>>>0?n+1|0:n,n=z>>>20|0,d0=n+h|0,f=n>>>0>d0>>>0?e+1|0:e,e=T&65535,n=f>>>20|0,j=n+b|0,u0=n>>>0>j>>>0?e+1|0:e,R0=M0<<1,V0=y<<1|M0>>>31,b0=b,C0=T,M0=o,ee=c&65535,n=Z0,Z0=Y&1048575,e=n+Z0|0,q0=d+E0|0,T=q0>>>0<E0>>>0?e+1|0:e,E0=_&1048575,e=E0+et|0,_0=g+k0|0,C=_0>>>0<k0>>>0?e+1|0:e,k0=Z&1048575,n=k0+w2|0,o=H,$0=o+K0|0,H=$0>>>0<K0>>>0?n+1|0:n,K0=t0&1048575,e=K0+g2|0,y=k,k=y+oe|0,b=k>>>0<oe>>>0?e+1|0:e,Q0=c,c=I0(c>>>16|0,0,977,1),n=c+k|0,e=b+i0|0,e=n>>>0<c>>>0?e+1|0:e,c=n,$=e,e=H,n=$>>>20|0,s0=n+$0|0,t0=n>>>0>s0>>>0?e+1|0:e,e=C,n=t0>>>20|0,Z=n+_0|0,_=n>>>0>Z>>>0?e+1|0:e,n=T,e=ee,Y=_>>>20|0,K=Y,Y=Y+q0|0,n=K>>>0>Y>>>0?n+1|0:n,K=n>>>20|0,ee=K,K=K+M0|0,e=ee>>>0>K>>>0?e+1|0:e,K|(Y|(c|s0|Z))|(e|($|t0|_|n)&1048575)?(s0&(c^976)&Z&Y&K)==-1?n=(t0&($^1)&_&n&(e^983040))==1048575:n=0:n=1,e=n,d0|(X|l0|e0)|j|((g0|r0|z|f)&1048575|u0)?(l0&(X^976)&e0&d0&j)==-1?n=(g0&(r0^1)&z&f&(u0^983040))==1048575:n=0:n=1,j=e&n,t[s+1376>>2]=j?R0:b0,t[s+1380>>2]=j?V0:C0,t[s+1368>>2]=j?d<<1:h,t[s+1372>>2]=j?Z0<<1|d>>>31:w,t[s+1360>>2]=j?g<<1:x,t[s+1364>>2]=j?E0<<1|g>>>31:S,t[s+1352>>2]=j?o<<1:R,t[s+1356>>2]=j?k0<<1|o>>>31:A,t[s+1344>>2]=j?y<<1:E,t[s+1348>>2]=j?K0<<1|y>>>31:I,e=t[s+1420>>2]+J0|0,n=t[s+1416>>2]+x0|0,e=n>>>0<x0>>>0?e+1|0:e,d=j?n:M0,t[s+1416>>2]=d,y=j?e:Q0,t[s+1420>>2]=y,e=t[s+1412>>2]+Et|0,n=t[s+1408>>2]+V|0,e=n>>>0<V>>>0?e+1|0:e,d0=j?n:q0,t[s+1408>>2]=d0,u0=j?e:T,t[s+1412>>2]=u0,e=t[s+1404>>2]+lt|0,n=t[s+1400>>2]+L|0,e=n>>>0<L>>>0?e+1|0:e,c=j?n:_0,t[s+1400>>2]=c,o=j?e:C,t[s+1404>>2]=o,e=t[s+1396>>2]+dt|0,n=t[s+1392>>2]+N|0,e=n>>>0<N>>>0?e+1|0:e,n=j?n:$0,t[s+1392>>2]=n,f=j?e:H,t[s+1396>>2]=f,e=t[s+1388>>2]+$t|0,g=t[s+1384>>2]+Y0|0,e=g>>>0<Y0>>>0?e+1|0:e,g=j?g:k,t[s+1384>>2]=g,e=j?e:b,h=e,t[s+1388>>2]=e,w=s+896|0,L=g<<1,N=e<<1|g>>>31,P(w,L,N,0,0,d0,u0,0,0),X=f,V=n,n=f<<1|n>>>31,x=s+944|0,f=V<<1,P(x,f,n,0,0,c,o,0,0),S=s+832|0,P(S,d,y,0,0,d,y,0,0),R=s+816|0,P(R,t[s+832>>2],t[s+836>>2],0,0,15632,16,0,0),E=s+784|0,A=d<<1,x0=y<<1|d>>>31,P(E,A,x0,0,0,g,e,0,0),I=s+880|0,P(I,f,n,0,0,d0,u0,0,0),e0=s+928|0,P(e0,c,o,0,0,c,o,0,0),z=s+800|0,e=S+8|0,P(z,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),s0=s+992|0,P(s0,g,h,0,0,g,h,0,0),$=s+768|0,P($,A,x0,0,0,V,X,0,0),r0=o,Y0=c,n=o<<1|c>>>31,t0=s+864|0,P(t0,c<<1,n,0,0,d0,u0,0,0),g=t[s+896>>2],c=t[s+944>>2],n=g+c|0,f=t[s+900>>2],e=f+t[s+948>>2]|0,c=n>>>0<c>>>0?e+1|0:e,e=c+t[s+820>>2]|0,o=n,d=t[s+816>>2],n=n+d|0,l0=n,n=n>>>0<d>>>0?e+1|0:e,d=(c|0)==(n|0)&o>>>0>l0>>>0|n>>>0<c>>>0,e=R+8|0,y=t[e>>2],h=t[e+4>>2],o=(c|0)==(f|0)&o>>>0<g>>>0|c>>>0<f>>>0,e=x+8|0,f=t[e>>2],g=w+8|0,c=f+t[g>>2]|0,e=t[g+4>>2]+t[e+4>>2]|0,e=c>>>0<f>>>0?e+1|0:e,f=c,c=o+c|0,e=(f>>>0>c>>>0?e+1|0:e)+h|0,o=c,c=c+y|0,e=o>>>0>c>>>0?e+1|0:e,o=c,c=c+d|0,o=o>>>0>c>>>0?e+1|0:e,f=o<<12|c>>>20,g0=n,c=c<<12|n>>>20,g=f,S=t[s+880>>2],f=t[s+928>>2],e=S+f|0,x=t[s+884>>2],n=x+t[s+932>>2]|0,d=e>>>0<f>>>0?n+1|0:n,y=e,f=t[s+784>>2],n=e+f|0,e=d+t[s+788>>2]|0,e=n>>>0<f>>>0?e+1|0:e,h=n,w=t[s+800>>2],n=n+w|0,f=e,e=e+t[s+804>>2]|0,e=n>>>0<w>>>0?e+1|0:e,w=n,n=e+g|0,Z=s+752|0,R=Z,g=c+w|0,c=g>>>0<w>>>0?n+1|0:n,_=(e|0)==(c|0)&g>>>0<w>>>0|e>>>0>c>>>0,w=(e|0)==(f|0)&h>>>0>w>>>0|e>>>0<f>>>0,e=z+8|0,z=t[e>>2],Y=t[e+4>>2],f=(d|0)==(f|0)&y>>>0>h>>>0|d>>>0>f>>>0,e=E+8|0,h=t[e>>2],E=t[e+4>>2],d=(d|0)==(x|0)&y>>>0<S>>>0|d>>>0<x>>>0,e=e0+8|0,y=t[e>>2],x=I+8|0,n=y+t[x>>2]|0,e=t[x+4>>2]+t[e+4>>2]|0,e=n>>>0<y>>>0?e+1|0:e,y=n,n=n+d|0,e=(y>>>0>n>>>0?e+1|0:e)+E|0,d=n,n=n+h|0,e=d>>>0>n>>>0?e+1|0:e,f=n+f|0,n=(f>>>0<n>>>0?e+1|0:e)+Y|0,e=f,f=f+z|0,e=e>>>0>f>>>0?n+1|0:n,n=f+w|0,e=n>>>0<f>>>0?e+1|0:e,o=o>>>20|0,n=n+o|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+_|0,o=o>>>0>n>>>0?e+1|0:e,f=o<<12|n>>>20,y=n<<12|c>>>20,e=f,E=t[s+768>>2],f=t[s+864>>2],d=E+f|0,w=t[s+772>>2],n=w+t[s+868>>2]|0,f=d>>>0<f>>>0?n+1|0:n,e=f+e|0,y=d+y|0,n=y>>>0<d>>>0?e+1|0:e,h=y,e=n<<4|y>>>28,e0=c,P(R,c>>>16&15|y<<4&-16,e&16777215,0,0,977,1,0,0),x=t[s+756>>2],e=x+t[s+996>>2]|0,I=t[s+752>>2],c=t[s+992>>2],y=I+c|0,S=y,t[s+1464>>2]=y,c=c>>>0>y>>>0?e+1|0:e,R=c&1048575,t[s+1468>>2]=R,_=s+976|0,P(_,L,N,0,0,V,X,0,0),Y=s+720|0,P(Y,A,x0,0,0,Y0,r0,0,0),K=s+848|0,P(K,d0,u0,0,0,d0,u0,0,0),J0=s+704|0,h=(n|0)==(f|0)&d>>>0>h>>>0|n>>>0<f>>>0,d=(f|0)==(w|0)&d>>>0<E>>>0|f>>>0<w>>>0,e=t0+8|0,w=t[e>>2],E=$+8|0,f=w+t[E>>2]|0,e=t[E+4>>2]+t[e+4>>2]|0,e=f>>>0<w>>>0?e+1|0:e,w=f,f=d+f|0,e=w>>>0>f>>>0?e+1|0:e,o=o>>>20|0,d=o,o=o+f|0,e=d>>>0>o>>>0?e+1|0:e,f=o,o=o+h|0,f=f>>>0>o>>>0?e+1|0:e,d=f<<12|o>>>20,n=o<<12|n>>>20,o=d,t0=t[s+720>>2],d=t[s+848>>2],E=t0+d|0,$=t[s+724>>2],e=$+t[s+852>>2]|0,d=d>>>0>E>>>0?e+1|0:e,e=d+o|0,n=n+E|0,e=n>>>0<E>>>0?e+1|0:e,z=n,o=e,P(J0,n,e&1048575,0,0,15632,16,0,0),y=(c|0)==(x|0)&y>>>0<I>>>0|c>>>0<x>>>0,e=s0+8|0,h=t[e>>2],w=Z+8|0,n=h+t[w>>2]|0,e=t[w+4>>2]+t[e+4>>2]|0,e=n>>>0<h>>>0?e+1|0:e,h=n,n=n+y|0,y=h>>>0>n>>>0?e+1|0:e,h=y<<12|n>>>20,c=n<<12|c>>>20,e=h,Z=t[s+704>>2],h=t[s+976>>2],I=Z+h|0,s0=t[s+708>>2],n=s0+t[s+980>>2]|0,h=h>>>0>I>>>0?n+1|0:n,e=h+e|0,n=c+I|0,e=n>>>0<I>>>0?e+1|0:e,w=n,t[s+1472>>2]=n,c=e,x=e&1048575,t[s+1476>>2]=x,R0=s+912|0,P(R0,L,N,0,0,Y0,r0,0,0),Y0=s+960|0,P(Y0,V,X,0,0,V,X,0,0),X=s+656|0,P(X,A,x0,0,0,d0,u0,0,0),x0=s+640|0,A=x0,N=(o|0)==(d|0)&E>>>0>z>>>0|o>>>0<d>>>0,d=(d|0)==($|0)&E>>>0<t0>>>0|d>>>0<$>>>0,e=K+8|0,E=t[e>>2],L=Y+8|0,n=E+t[L>>2]|0,e=t[L+4>>2]+t[e+4>>2]|0,e=n>>>0<E>>>0?e+1|0:e,E=n,n=n+d|0,e=E>>>0>n>>>0?e+1|0:e,d=n,f=f>>>20|0,n=f,f=d+f|0,e=n>>>0>f>>>0?e+1|0:e,n=f+N|0,f=n>>>0<f>>>0?e+1|0:e,e=f<<12|n>>>20,r0=n<<12|o>>>20,d=t[s+656>>2],o=r0+d|0,L=e,e=e+t[s+660>>2]|0,N=o,E=o>>>0<d>>>0?e+1|0:e,P(A,o,E,0,0,15632,16,0,0),A=(c|0)==(h|0)&w>>>0<I>>>0|c>>>0<h>>>0,o=(h|0)==(s0|0)&I>>>0<Z>>>0|h>>>0<s0>>>0,e=_+8|0,d=t[e>>2],h=J0+8|0,n=d+t[h>>2]|0,e=t[h+4>>2]+t[e+4>>2]|0,e=n>>>0<d>>>0?e+1|0:e,d=n,n=n+o|0,e=d>>>0>n>>>0?e+1|0:e,o=n,d=y>>>20|0,o=o+d|0,e=d>>>0>o>>>0?e+1|0:e,n=o+A|0,o=n>>>0<o>>>0?e+1|0:e,e=o<<12|n>>>20,c=n<<12|c>>>20,y=e,z=t[s+912>>2],d=t[s+960>>2],n=z+d|0,V=t[s+916>>2],e=V+t[s+964>>2]|0,e=n>>>0<d>>>0?e+1|0:e,I=n,n=t[s+640>>2],A=I+n|0,h=e,e=e+t[s+644>>2]|0,n=n>>>0>A>>>0?e+1|0:e,e=n+y|0,d=c+A|0,e=d>>>0<A>>>0?e+1|0:e,t[s+1480>>2]=d,c=e,y=e&1048575,t[s+1484>>2]=y,d0=s+576|0,E=(E|0)==(L|0)&N>>>0<r0>>>0|E>>>0<L>>>0,e=X+8|0,N=t[e>>2],e=t[e+4>>2],f=f>>>20|0,L=f,f=f+N|0,e=L>>>0>f>>>0?e+1|0:e,N=f,f=f+E|0,e=N>>>0>f>>>0?e+1|0:e,P(d0,f,e,0,0,64028672,65536,0,0),E=(n|0)==(c|0)&d>>>0<A>>>0|n>>>0>c>>>0,A=(n|0)==(h|0)&A>>>0<I>>>0|n>>>0<h>>>0,e=x0+8|0,N=t[e>>2],L=t[e+4>>2],h=(h|0)==(V|0)&I>>>0<z>>>0|h>>>0<V>>>0,e=Y0+8|0,n=t[e>>2],I=R0+8|0,f=n+t[I>>2]|0,e=t[I+4>>2]+t[e+4>>2]|0,n=n>>>0>f>>>0?e+1|0:e,e=f,f=f+h|0,e=(e>>>0>f>>>0?n+1|0:n)+L|0,n=f+N|0,e=n>>>0<f>>>0?e+1|0:e,f=n,n=n+A|0,e=f>>>0>n>>>0?e+1|0:e,o=o>>>20|0,n=o+n|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+E|0,o=o>>>0>n>>>0?e+1|0:e,e=n,n=o<<12|e>>>20,c=e<<12|c>>>20,f=n,E=t[s+576>>2],A=E+(l0&-2)|0,I=t[s+580>>2],e=I+(g0&1048575)|0,n=A>>>0<E>>>0?e+1|0:e,e=n+f|0,c=c+A|0,e=c>>>0<A>>>0?e+1|0:e,t[s+1488>>2]=c,f=e,h=e&1048575,t[s+1492>>2]=h,N=e0&65535,L=(e|0)==(n|0)&c>>>0<A>>>0|e>>>0<n>>>0,A=(n|0)==(I|0)&A>>>0<E>>>0|n>>>0<I>>>0,n=d0+8|0,e=A+t[n>>2]|0,n=t[n+4>>2],n=e>>>0<A>>>0?n+1|0:n,A=e,e=n,o=o>>>20|0,n=o+A|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+L|0,e=N+((o>>>0>n>>>0?e+1|0:e)<<12|n>>>20)|0,n=n<<12|f>>>20,o=n+g|0,t[s+1496>>2]=o,n=n>>>0>o>>>0?e+1|0:e,t[s+1500>>2]=n,e=t[s+1544>>2],f=-5862-e|0,e=6291449-(t[s+1548>>2]+(e>>>0>4294961434)|0)|0,t[s+1424>>2]=f,t[s+1428>>2]=e,e=t[Ne>>2],f=-6-e|0,e=6291455-(t[Ne+4>>2]+(e>>>0>4294967290)|0)|0,t[s+1432>>2]=f,t[s+1436>>2]=e,e=t[Ue>>2],f=-6-e|0,e=6291455-(t[Ue+4>>2]+(e>>>0>4294967290)|0)|0,t[s+1440>>2]=f,t[s+1444>>2]=e,e=t[Oe>>2],f=-6-e|0,e=6291455-(t[Oe+4>>2]+(e>>>0>4294967290)|0)|0,t[s+1448>>2]=f,t[s+1452>>2]=e,e=t[ae>>2],f=-6-e|0,e=393215-(t[ae+4>>2]+(e>>>0>4294967290)|0)|0,t[s+1456>>2]=f,t[s+1460>>2]=e,A=R,e=A<<1|S>>>31,Y0=s+528|0,f=h,R=S<<1,h=e,P(Y0,c,f,0,0,R,e,0,0),X=s+592|0,g=d,d=y,N=w<<1,I=x,E=x<<1|w>>>31,P(X,g,d,0,0,N,E,0,0),L=s+496|0,P(L,o,n,0,0,o,n,0,0),r0=s+480|0,P(r0,t[s+496>>2],t[s+500>>2],0,0,15632,16,0,0),l0=s+448|0,y=o<<1,x=n<<1|o>>>31,P(l0,y,x,0,0,S,A,0,0),g0=s+544|0,P(g0,c,f,0,0,N,E,0,0),e0=s+608|0,P(e0,g,d,0,0,g,d,0,0),z=s+464|0,e=L+8|0,P(z,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),d0=s+736|0,P(d0,S,A,0,0,S,A,0,0),u0=s+432|0,P(u0,y,x,0,0,w,I,0,0),$=s+512|0,N=c,L=f,V=d,S=g,P($,c,f,0,0,g<<1,d<<1|g>>>31,0,0),g=t[s+528>>2],c=t[s+592>>2],n=g+c|0,f=t[s+532>>2],e=f+t[s+596>>2]|0,e=n>>>0<c>>>0?e+1|0:e,o=n,d=t[s+480>>2],c=n+d|0,n=e+t[s+484>>2]|0,x0=c,c=c>>>0<d>>>0?n+1|0:n,d=(e|0)==(c|0)&o>>>0>x0>>>0|e>>>0>c>>>0,n=r0+8|0,A=t[n>>2],E=t[n+4>>2],o=(e|0)==(f|0)&o>>>0<g>>>0|e>>>0<f>>>0,e=X+8|0,f=t[e>>2],g=Y0+8|0,n=f+t[g>>2]|0,e=t[g+4>>2]+t[e+4>>2]|0,e=n>>>0<f>>>0?e+1|0:e,o=n+o|0,n=(o>>>0<n>>>0?e+1|0:e)+E|0,e=o,o=o+A|0,e=e>>>0>o>>>0?n+1|0:n,n=o+d|0,o=n>>>0<o>>>0?e+1|0:e,e=o<<12|n>>>20,Y0=c,X=n<<12|c>>>20,s0=e,t0=t[s+544>>2],c=t[s+608>>2],n=t0+c|0,r0=t[s+548>>2],e=r0+t[s+612>>2]|0,e=n>>>0<c>>>0?e+1|0:e,d=n,n=t[s+448>>2],c=d+n|0,g=e,e=e+t[s+452>>2]|0,e=n>>>0>c>>>0?e+1|0:e,A=c,f=t[s+464>>2],c=c+f|0,n=e,e=e+t[s+468>>2]|0,f=c>>>0<f>>>0?e+1|0:e,e=f+s0|0,s0=s+416|0,E=c,X=c+X|0,c=c>>>0>X>>>0?e+1|0:e,e=f,f=X,X=(c|0)==(e|0)&E>>>0>f>>>0|e>>>0>c>>>0,E=(e|0)==(n|0)&A>>>0>E>>>0|e>>>0<n>>>0,e=z+8|0,z=t[e>>2],Z=t[e+4>>2],A=(n|0)==(g|0)&d>>>0>A>>>0|n>>>0<g>>>0,e=l0+8|0,l0=t[e>>2],_=t[e+4>>2],d=(g|0)==(r0|0)&d>>>0<t0>>>0|g>>>0<r0>>>0,e=e0+8|0,n=t[e>>2],r0=g0+8|0,g=n+t[r0>>2]|0,e=t[r0+4>>2]+t[e+4>>2]|0,n=n>>>0>g>>>0?e+1|0:e,e=g,g=d+g|0,e=(e>>>0>g>>>0?n+1|0:n)+_|0,n=g+l0|0,e=n>>>0<g>>>0?e+1|0:e,d=n,n=n+A|0,e=(d>>>0>n>>>0?e+1|0:e)+Z|0,d=n,n=n+z|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+E|0,e=d>>>0>n>>>0?e+1|0:e,g=n,o=o>>>20|0,n=o,o=o+g|0,e=n>>>0>o>>>0?e+1|0:e,n=o+X|0,o=n>>>0<o>>>0?e+1|0:e,e=o<<12|n>>>20,g=c,c=n<<12|c>>>20,X=e,r0=t[s+432>>2],n=t[s+512>>2],d=r0+n|0,E=t[s+436>>2],e=E+t[s+516>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+X|0,A=c+d|0,e=A>>>0<d>>>0?e+1|0:e,l0=A<<4&-16,X=g,c=e,P(s0,l0|g>>>16&15,(e<<4|A>>>28)&16777215,0,0,977,1,0,0),t0=s+672|0,P(t0,w,I,0,0,R,h,0,0),l0=s+400|0,P(l0,y,x,0,0,S,V,0,0),g0=s+560|0,P(g0,N,L,0,0,N,L,0,0),J0=s+384|0,e0=J0,A=(n|0)==(e|0)&d>>>0>A>>>0|n>>>0>e>>>0,d=(n|0)==(E|0)&d>>>0<r0>>>0|n>>>0<E>>>0,e=$+8|0,n=t[e>>2],E=u0+8|0,g=n+t[E>>2]|0,e=t[E+4>>2]+t[e+4>>2]|0,n=n>>>0>g>>>0?e+1|0:e,e=d+g|0,n=e>>>0<g>>>0?n+1|0:n,g=e,e=n,o=o>>>20|0,n=o+g|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+A|0,o=o>>>0>n>>>0?e+1|0:e,g=o<<12|n>>>20,c=n<<12|c>>>20,d=g,E=t[s+400>>2],g=t[s+560>>2],n=E+g|0,A=t[s+404>>2],e=A+t[s+564>>2]|0,e=n>>>0<g>>>0?e+1|0:e,g=n,n=e+d|0,c=c+g|0,n=c>>>0<g>>>0?n+1|0:n,d=c,c=n,P(e0,d,n&1048575,0,0,15632,16,0,0),u0=s+624|0,P(u0,S,V,0,0,R,h,0,0),$=s+688|0,P($,w,I,0,0,w,I,0,0),h=s+368|0,P(h,y,x,0,0,N,L,0,0),R0=s+352|0,y=R0,d=(e|0)==(n|0)&d>>>0<g>>>0|e>>>0>n>>>0,g=(e|0)==(A|0)&g>>>0<E>>>0|e>>>0<A>>>0,e=g0+8|0,w=t[e>>2],x=l0+8|0,n=w+t[x>>2]|0,e=t[x+4>>2]+t[e+4>>2]|0,e=n>>>0<w>>>0?e+1|0:e,w=n,n=n+g|0,e=w>>>0>n>>>0?e+1|0:e,g=n,o=o>>>20|0,n=o,o=o+g|0,e=n>>>0>o>>>0?e+1|0:e,n=o+d|0,o=n>>>0<o>>>0?e+1|0:e,e=o<<12|n>>>20,g=n<<12|c>>>20,d=t[s+368>>2],c=g+d|0,n=e,e=e+t[s+372>>2]|0,e=c>>>0<d>>>0?e+1|0:e,P(y,c,e,0,0,15632,16,0,0),k0=s+336|0,d=k0,g=(e|0)==(n|0)&c>>>0<g>>>0|e>>>0<n>>>0,e=h+8|0,y=t[e>>2],e=t[e+4>>2],c=o>>>20|0,n=c+y|0,e=c>>>0>n>>>0?e+1|0:e,o=n,n=n+g|0,e=o>>>0>n>>>0?e+1|0:e,P(d,n,e,0,0,64028672,65536,0,0),e=s+1424|0,U0(e,e,s+1464|0),e=t[s+1348>>2],A=e,E=t[s+1344>>2],o=E,e=e<<1|o>>>31,I=s- -64|0,n=t[s+1368>>2],c=t[s+1372>>2],x=o<<1,w=e,P(I,n,c,0,0,x,e,0,0),e=t[s+1356>>2],g0=e,e0=t[s+1352>>2],d=e0,e=e<<1|d>>>31,l0=s+272|0,o=t[s+1360>>2],g=t[s+1364>>2],R=d<<1,y=e,P(l0,o,g,0,0,R,e,0,0),N=s+224|0,e=t[s+1376>>2],d=t[s+1380>>2],P(N,e,d,0,0,e,d,0,0),z=s+208|0,P(z,t[s+224>>2],t[s+228>>2],0,0,15632,16,0,0),h=d<<1,d=e,e=h|e>>>31,Z=s+176|0,h=d<<1,S=e,P(Z,h,e,0,0,E,A,0,0),_=s+80|0,P(_,n,c,0,0,R,y,0,0),Y=s+256|0,P(Y,o,g,0,0,o,g,0,0),K=s+192|0,e=N+8|0,P(K,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),V0=s+320|0,P(V0,E,A,0,0,E,A,0,0),b0=s+160|0,P(b0,h,S,0,0,e0,g0,0,0),C0=s+96|0,N=n,L=c,V=g,R=o,P(C0,n,c,0,0,o<<1,g<<1|o>>>31,0,0),y=t[s+64>>2],c=t[s+272>>2],n=y+c|0,d=t[s+68>>2],e=d+t[s+276>>2]|0,e=n>>>0<c>>>0?e+1|0:e,o=n,n=t[s+208>>2],g=o+n|0,c=e,e=e+t[s+212>>2]|0,n=n>>>0>g>>>0?e+1|0:e,r0=g,g=(c|0)==(n|0)&g>>>0<o>>>0|n>>>0<c>>>0,e=z+8|0,A=t[e>>2],E=t[e+4>>2],o=(c|0)==(d|0)&o>>>0<y>>>0|c>>>0<d>>>0,e=l0+8|0,d=t[e>>2],y=I+8|0,c=d+t[y>>2]|0,e=t[y+4>>2]+t[e+4>>2]|0,e=c>>>0<d>>>0?e+1|0:e,d=c,c=o+c|0,e=(d>>>0>c>>>0?e+1|0:e)+E|0,o=c,c=c+A|0,e=o>>>0>c>>>0?e+1|0:e,o=c,c=c+g|0,o=o>>>0>c>>>0?e+1|0:e,g=o<<12|c>>>20,l0=n,c=c<<12|n>>>20,Z0=t[s+80>>2],d=t[s+256>>2],n=Z0+d|0,z=t[s+84>>2],e=z+t[s+260>>2]|0,e=n>>>0<d>>>0?e+1|0:e,A=n,y=t[s+176>>2],n=n+y|0,d=e,e=e+t[s+180>>2]|0,e=n>>>0<y>>>0?e+1|0:e,E=n,I=t[s+192>>2],n=n+I|0,y=e,e=e+t[s+196>>2]|0,e=n>>>0<I>>>0?e+1|0:e,I=n,n=e,e=e+g|0,g=c+I|0,c=g>>>0<I>>>0?e+1|0:e,E0=(n|0)==(c|0)&g>>>0<I>>>0|n>>>0>c>>>0,I=(n|0)==(y|0)&E>>>0>I>>>0|n>>>0<y>>>0,e=K+8|0,K=t[e>>2],K0=t[e+4>>2],y=(d|0)==(y|0)&A>>>0>E>>>0|d>>>0>y>>>0,e=Z+8|0,E=t[e>>2],Z=t[e+4>>2],d=(d|0)==(z|0)&A>>>0<Z0>>>0|d>>>0<z>>>0,e=Y+8|0,A=t[e>>2],z=_+8|0,n=A+t[z>>2]|0,e=t[z+4>>2]+t[e+4>>2]|0,e=n>>>0<A>>>0?e+1|0:e,A=n,n=n+d|0,e=(A>>>0>n>>>0?e+1|0:e)+Z|0,d=n+E|0,n=d>>>0<n>>>0?e+1|0:e,e=d,d=d+y|0,e=(e>>>0>d>>>0?n+1|0:n)+K0|0,n=d+K|0,e=n>>>0<d>>>0?e+1|0:e,d=n,n=n+I|0,e=d>>>0>n>>>0?e+1|0:e,o=o>>>20|0,n=o+n|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+E0|0,o=o>>>0>n>>>0?e+1|0:e,e=n,y=o<<12|e>>>20,n=c,A=e<<12|n>>>20,z=t[s+160>>2],d=t[s+96>>2],c=z+d|0,I=t[s+164>>2],e=I+t[s+100>>2]|0,d=c>>>0<d>>>0?e+1|0:e,e=d+y|0,y=c,A=c+A|0,e=c>>>0>A>>>0?e+1|0:e,Z=A<<4&-16,E=n,c=e,P(s,Z|n>>>16&15,(e<<4|A>>>28)&16777215,0,0,977,1,0,0),Y=s+304|0,P(Y,e0,g0,0,0,x,w,0,0),Z=s+144|0,P(Z,h,S,0,0,R,V,0,0),_=s+112|0,P(_,N,L,0,0,N,L,0,0),K=s+48|0,A=(e|0)==(d|0)&y>>>0>A>>>0|e>>>0<d>>>0,y=(d|0)==(I|0)&y>>>0<z>>>0|d>>>0<I>>>0,e=C0+8|0,I=t[e>>2],n=b0+8|0,d=I+t[n>>2]|0,n=t[n+4>>2]+t[e+4>>2]|0,e=d>>>0<I>>>0?n+1|0:n,n=d+y|0,e=n>>>0<d>>>0?e+1|0:e,o=o>>>20|0,n=n+o|0,e=o>>>0>n>>>0?e+1|0:e,o=n,n=n+A|0,o=o>>>0>n>>>0?e+1|0:e,d=o<<12|n>>>20,c=n<<12|c>>>20,e=d,I=t[s+144>>2],y=t[s+112>>2],d=I+y|0,A=t[s+148>>2],n=A+t[s+116>>2]|0,n=d>>>0<y>>>0?n+1|0:n,e=n+e|0,c=c+d|0,e=c>>>0<d>>>0?e+1|0:e,y=c,c=e,P(K,y,e&1048575,0,0,15632,16,0,0),z=s+240|0,P(z,R,V,0,0,x,w,0,0),b0=s+288|0,P(b0,e0,g0,0,0,e0,g0,0,0),w=s+128|0,P(w,h,S,0,0,N,L,0,0),e0=s+32|0,h=e0,y=(e|0)==(n|0)&d>>>0>y>>>0|e>>>0<n>>>0,d=(n|0)==(A|0)&d>>>0<I>>>0|n>>>0<A>>>0,e=_+8|0,x=t[e>>2],S=Z+8|0,n=x+t[S>>2]|0,e=t[S+4>>2]+t[e+4>>2]|0,e=n>>>0<x>>>0?e+1|0:e,A=n,n=n+d|0,e=A>>>0>n>>>0?e+1|0:e,o=o>>>20|0,d=o,o=n+o|0,n=d>>>0>o>>>0?e+1|0:e,e=o+y|0,n=e>>>0<o>>>0?n+1|0:n,d=n<<12|e>>>20,y=e<<12|c>>>20,x=t[s+128>>2],c=y+x|0,o=d,e=o+t[s+132>>2]|0,e=c>>>0<x>>>0?e+1|0:e,P(h,c,e,0,0,15632,16,0,0),C0=s+16|0,d=C0,o=(e|0)==(o|0)&c>>>0<y>>>0|e>>>0<o>>>0,e=w+8|0,c=t[e>>2],e=t[e+4>>2],n=n>>>20|0,c=n+c|0,n=n>>>0>c>>>0?e+1|0:e,e=o+c|0,n=e>>>0<c>>>0?n+1|0:n,P(d,e,n,0,0,64028672,65536,0,0),U0(i+80|0,$e,ha),$e=t[r+120>>2],c=i,i=t[s+1424>>2],A=i,e=t[s+1428>>2],I=e,o=i,d=e,w=t[s>>2],i=t[s+320>>2],n=w+i|0,h=t[s+4>>2],e=h+t[s+324>>2]|0,i=i>>>0>n>>>0?e+1|0:e,e=d+(i&1048575)|0,o=n+o|0,e=o>>>0<n>>>0?e+1|0:e,t[c>>2]=o,d=e,t[c+4>>2]=e,Z=c+8|0,N=Z,e=t[s+1432>>2],S=e,y=t[s+1436>>2],R=y,y=(i|0)==(h|0)&n>>>0<w>>>0|i>>>0<h>>>0,e=V0+8|0,h=t[e>>2],w=s+8|0,n=h+t[w>>2]|0,e=t[w+4>>2]+t[e+4>>2]|0,e=n>>>0<h>>>0?e+1|0:e,h=n,n=n+y|0,y=h>>>0>n>>>0?e+1|0:e,h=y<<12|n>>>20,i=n<<12|i>>>20,n=h,V0=t[s+48>>2],h=t[s+304>>2],w=V0+h|0,V=t[s+52>>2],e=V+t[s+308>>2]|0,h=h>>>0>w>>>0?e+1|0:e,n=h+n|0,e=i+w|0,i=e>>>0<w>>>0?n+1|0:n,x=e,n=S+e|0,e=R+(i&1048575)|0,t[N>>2]=n,e=n>>>0<x>>>0?e+1|0:e,t[N+4>>2]=e,N=e<<1,e=n,n=N|e>>>31,N=e<<1,e=n+R|0,n=S+N|0,e=n>>>0<N>>>0?e+1|0:e,t[Ne>>2]=n,t[Ne+4>>2]=e,_=c+16|0,e=t[s+1440>>2],N=e,n=t[s+1444>>2],L=n,x=(i|0)==(h|0)&w>>>0>x>>>0|i>>>0<h>>>0,h=(h|0)==(V|0)&w>>>0<V0>>>0|h>>>0<V>>>0,e=Y+8|0,w=t[e>>2],S=K+8|0,n=w+t[S>>2]|0,e=t[S+4>>2]+t[e+4>>2]|0,e=n>>>0<w>>>0?e+1|0:e,w=n,n=n+h|0,e=w>>>0>n>>>0?e+1|0:e,h=n,y=y>>>20|0,n=y,y=y+h|0,e=n>>>0>y>>>0?e+1|0:e,n=y+x|0,y=n>>>0<y>>>0?e+1|0:e,e=y<<12|n>>>20,w=n<<12|i>>>20,Y=e,K=t[s+240>>2],n=t[s+288>>2],i=K+n|0,V=t[s+244>>2],e=V+t[s+292>>2]|0,e=i>>>0<n>>>0?e+1|0:e,x=i,n=t[s+32>>2],i=i+n|0,h=e,e=e+t[s+36>>2]|0,n=i>>>0<n>>>0?e+1|0:e,e=n+Y|0,S=i,w=i+w|0,i=i>>>0>w>>>0?e+1|0:e,e=L+(i&1048575)|0,R=w,w=N+w|0,t[_>>2]=w,e=w>>>0<R>>>0?e+1|0:e,t[_+4>>2]=e,e=(e<<1|w>>>31)+L|0,w=w<<1,L=w,w=w+N|0,e=L>>>0>w>>>0?e+1|0:e,t[Ue>>2]=w,t[Ue+4>>2]=e,Y=c+24|0,e=t[s+1448>>2],w=t[s+1452>>2],N=e,L=w,w=(i|0)==(n|0)&S>>>0>R>>>0|i>>>0<n>>>0,S=(n|0)==(h|0)&x>>>0>S>>>0|n>>>0<h>>>0,e=e0+8|0,R=t[e>>2],e0=t[e+4>>2],x=(h|0)==(V|0)&x>>>0<K>>>0|h>>>0<V>>>0,e=b0+8|0,n=t[e>>2],V=z+8|0,h=n+t[V>>2]|0,e=t[V+4>>2]+t[e+4>>2]|0,n=n>>>0>h>>>0?e+1|0:e,e=h,h=h+x|0,e=(e>>>0>h>>>0?n+1|0:n)+e0|0,n=h+R|0,e=n>>>0<h>>>0?e+1|0:e,h=n,n=n+S|0,e=h>>>0>n>>>0?e+1|0:e,y=y>>>20|0,n=y+n|0,e=y>>>0>n>>>0?e+1|0:e,y=n,n=n+w|0,y=y>>>0>n>>>0?e+1|0:e,e=n,n=y<<12|e>>>20,x=e<<12|i>>>20,e0=t[s+16>>2],h=r0&-2,i=e0+h|0,V=t[s+20>>2],e=V+(l0&1048575)|0,h=i>>>0<h>>>0?e+1|0:e,e=h+n|0,w=i,x=i+x|0,i=i>>>0>x>>>0?e+1|0:e,e=L+(i&1048575)|0,n=x+N|0,e=n>>>0<x>>>0?e+1|0:e,t[Y>>2]=n,t[Y+4>>2]=e,S=n<<1,n=(e<<1|n>>>31)+L|0,e=S+N|0,n=e>>>0<S>>>0?n+1|0:n,t[Oe>>2]=e,t[Oe+4>>2]=n,K=c+32|0,L=K,e=t[s+1456>>2],n=t[s+1460>>2],S=e,R=n,N=g,E=E&65535,x=(i|0)==(h|0)&w>>>0>x>>>0|i>>>0<h>>>0,g=(h|0)==(V|0)&w>>>0<e0>>>0|h>>>0<V>>>0,e=C0+8|0,n=g+t[e>>2]|0,e=t[e+4>>2],e=n>>>0<g>>>0?e+1|0:e,y=y>>>20|0,g=n+y|0,n=y>>>0>g>>>0?e+1|0:e,e=g,g=g+x|0,e=(e>>>0>g>>>0?n+1|0:n)<<12|g>>>20,n=g<<12|i>>>20,i=n+N|0,e=e+E|0,e=(i>>>0<n>>>0?e+1|0:e)+R|0,n=i,i=i+S|0,e=n>>>0>i>>>0?e+1|0:e,t[L>>2]=i,t[L+4>>2]=e,e=(e<<1|i>>>31)+R|0,i=i<<1,n=i,i=i+S|0,e=n>>>0>i>>>0?e+1|0:e,t[ae>>2]=i,t[ae+4>>2]=e,g=s,e=(d<<1|o>>>31)+I|0,i=o<<1,n=i,i=i+A|0,e=n>>>0>i>>>0?e+1|0:e,t[s+1544>>2]=i,t[s+1548>>2]=e,i=d0+8|0,h=t[i>>2],oe=t[i+4>>2],i=s0+8|0,dt=t[i>>2],lt=t[i+4>>2],i=t[s+736>>2],e=t[s+740>>2],w=t[s+416>>2],o=t[s+420>>2],n=t0+8|0,Et=t[n>>2],$t=t[n+4>>2],n=J0+8|0,x=t[n>>2],ee=t[n+4>>2],z=t[s+672>>2],je=t[s+676>>2],d0=t[s+384>>2],s=t[s+388>>2],n=$+8|0,de=t[n>>2],et=t[n+4>>2],n=u0+8|0,V0=t[n>>2],g2=t[n+4>>2],b0=t[g+688>>2],w2=t[g+692>>2],C0=t[g+624>>2],J0=t[g+628>>2],n=R0+8|0,S=t[n>>2],R=t[n+4>>2],Z0=t[g+352>>2],Tr=t[g+356>>2],E0=t[g+336>>2],R0=t[g+340>>2],n=k0+8|0,vr=t[n>>2],A=t[n+4>>2],u0=c+104|0,E=t[u0>>2],I=t[u0+4>>2],$=c+96|0,N=t[$>>2],L=t[$+4>>2],s0=c+88|0,V=t[s0>>2],r0=t[s0+4>>2],t0=c+112|0,l0=t[t0>>2],d=t[t0+4>>2],g0=t[c+80>>2],e0=t[c+84>>2],U0(ce,ce,g+1344|0),y=t[g+1544>>2],k0=t[g+1548>>2],e=e+o|0,n=i+w|0,i=n>>>0<i>>>0?e+1|0:e,K0=y,e=n,y=j?k:e,k=K0+y|0,n=k0+(j?b:i&1048575)|0,ce=8388599-((k>>>0>4294959480)+(y>>>0>k>>>0?n+1|0:n)|0)|0,k0=-7816-k|0,n=k0&1,K0=0-n|0,y=0-n|0,o=(i|0)==(o|0)&e>>>0<w>>>0|i>>>0<o>>>0,e=oe+lt|0,b=h+dt|0,n=b>>>0<h>>>0?e+1|0:e,e=o+b|0,n=e>>>0<b>>>0?n+1|0:n,o=n<<12|e>>>20,i=e<<12|i>>>20,k=o,e=s+je|0,o=z+d0|0,b=o>>>0<z>>>0?e+1|0:e,e=b+k|0,k=i+o|0,i=k>>>0<o>>>0?e+1|0:e,z=k,k=(b|0)==(i|0)&k>>>0<o>>>0|i>>>0<b>>>0,o=(s|0)==(b|0)&o>>>0<d0>>>0|s>>>0>b>>>0,e=ee+$t|0,b=x+Et|0,e=b>>>0<x>>>0?e+1|0:e,h=b,b=o+b|0,e=h>>>0>b>>>0?e+1|0:e,n=n>>>20|0,b=n+b|0,n=n>>>0>b>>>0?e+1|0:e,e=b+k|0,o=e>>>0<b>>>0?n+1|0:n,b=o<<12|e>>>20,d0=i,i=e<<12|i>>>20,e=J0+w2|0,h=b0+C0|0,n=h>>>0<b0>>>0?e+1|0:e,e=Tr+n|0,s=h+Z0|0,k=s>>>0<Z0>>>0?e+1|0:e,e=k+b|0,w=i+s|0,b=w>>>0<s>>>0?e+1|0:e,i=x0&-2,x=i+E0|0,e=R0+(Y0&1048575)|0,i=i>>>0>x>>>0?e+1|0:e,x0=(b|0)==(k|0)&s>>>0>w>>>0|b>>>0<k>>>0,s=(n|0)==(k|0)&s>>>0<h>>>0|n>>>0>k>>>0,h=(n|0)==(J0|0)&h>>>0<C0>>>0|n>>>0<J0>>>0,n=et+g2|0,k=V0+de|0,e=k>>>0<V0>>>0?n+1|0:n,n=h+k|0,e=(n>>>0<k>>>0?e+1|0:e)+R|0,h=n,n=n+S|0,e=h>>>0>n>>>0?e+1|0:e,h=n,n=n+s|0,e=h>>>0>n>>>0?e+1|0:e,o=o>>>20|0,h=o,o=n+o|0,n=h>>>0>o>>>0?e+1|0:e,e=o+x0|0,n=e>>>0<o>>>0?n+1|0:n,o=e,e=i+(n<<12|e>>>20)|0,h=b,o=o<<12|b>>>20,b=o+x|0,k=b,b=o>>>0>b>>>0?e+1|0:e,S=c+72|0,o=y,e=o>>>16|0,s=(o&65535)<<16|K0>>>16,y=e,R=t[ae>>2],ae=t[ae+4>>2],x0=X&65535,Y0=(i|0)==(b|0)&x>>>0>k>>>0|i>>>0>b>>>0,x=(i|0)==(R0|0)&x>>>0<E0>>>0|i>>>0<R0>>>0,i=vr+x|0,e=A,e=i>>>0<x>>>0?e+1|0:e,n=n>>>20|0,i=i+n|0,n=n>>>0>i>>>0?e+1|0:e,e=i,i=i+Y0|0,n=(e>>>0>i>>>0?n+1|0:n)<<12|i>>>20,x=b,b=i<<12|b>>>20,i=b+f|0,e=n+x0|0,e=i>>>0<b>>>0?e+1|0:e,n=j?M0:i,i=n+R|0,e=ae+(j?Q0:e)|0,e=(y-((i>>>0>s>>>0)+(i>>>0<n>>>0?e+1|0:e)|0)|0)+524287|0,i=(s-i|0)-8|0,n=i>>>0<4294967288?e+1|0:e,e=n>>>1|0,s=(n&1)<<31|i>>>1,t[S>>2]=s,f=e,t[S+4>>2]=e,R=c- -64|0,y=R,M0=i<<19&524288,b=(o&4095)<<20|K0>>>12,i=o>>>12|0,o=j?q0:k,n=o+t[Oe>>2]|0,e=t[Oe+4>>2]+(j?T:x&1048575)|0,e=(i-((n>>>0>b>>>0)+(n>>>0<o>>>0?e+1|0:e)|0)|0)+8388607|0,o=(b-n|0)-8|0,T=o>>>0<4294967288?e+1|0:e,n=(T>>>1|0)+M0|0,k=(T&1)<<31|o>>>1,e=k,n=e>>>0>e>>>0?n+1|0:n,t[y>>2]=e,M0=n,t[y+4>>2]=n,x=c+56|0,y=x,A=o<<19&524288,o=j?_0:w,n=o+t[Ue>>2]|0,e=t[Ue+4>>2]+(j?C:h&1048575)|0,e=(i-((n>>>0>b>>>0)+(n>>>0<o>>>0?e+1|0:e)|0)|0)+8388607|0,n=(b-n|0)-8|0,o=n>>>0<4294967288?e+1|0:e,e=(o>>>1|0)+A|0,T=(o&1)<<31|n>>>1,e=T>>>0>T>>>0?e+1|0:e,t[y>>2]=T,C=e,t[y+4>>2]=e,w=c+48|0,h=n<<19&524288,o=b,y=i,e=j?$0:z,i=e+t[Ne>>2]|0,n=t[Ne+4>>2]+(j?H:d0&1048575)|0,e=(y-((i>>>0>o>>>0)+(i>>>0<e>>>0?n+1|0:n)|0)|0)+8388607|0,i=(o-i|0)-8|0,b=i>>>0<4294967288?e+1|0:e,e=(b>>>1|0)+h|0,H=(b&1)<<31|i>>>1,n=H,e=n>>>0>n>>>0?e+1|0:e,t[w>>2]=n,h=e,t[w+4>>2]=e,b=i<<19&524288,e=(y&1048574)+ce|0,i=(o&-977)+k0|0,e=i>>>0<k0>>>0?e+1|0:e,i=(e&1)<<31|i>>>1,e=(e>>>1|0)+b|0,b=i,e=i>>>0<i>>>0?e+1|0:e,t[c+40>>2]=i,t[c+44>>2]=e,r=t[r+120>>2],o=r>>31,i=r-1|0,A=i,n=0-(((r|0)!=0)+o|0)|0,y=o-!r|0,o=n&t[a+4>>2]|y&t[c+4>>2],r=0-r|0,t[c>>2]=r&t[a>>2]|i&t[c>>2],t[c+4>>2]=o,o=t[a+12>>2]&n|t[Z+4>>2]&y,t[Z>>2]=t[a+8>>2]&r|t[Z>>2]&i,t[Z+4>>2]=o,o=t[a+20>>2]&n|t[_+4>>2]&y,t[_>>2]=t[a+16>>2]&r|t[_>>2]&i,t[_+4>>2]=o,o=t[a+28>>2]&n|t[Y+4>>2]&y,t[Y>>2]=t[a+24>>2]&r|t[Y>>2]&i,t[Y+4>>2]=o,o=t[a+36>>2]&n|t[K+4>>2]&y,t[K>>2]=t[a+32>>2]&r|t[K>>2]&i,t[K+4>>2]=o,e=t[a+44>>2]&n|e&y,t[c+40>>2]=t[a+40>>2]&r|i&b,t[c+44>>2]=e,e=a+48|0,b=t[e>>2],e=t[e+4>>2]&n|y&h,t[w>>2]=r&b|i&H,t[w+4>>2]=e,e=a+56|0,b=t[e>>2],e=t[e+4>>2]&n|y&C,t[x>>2]=r&b|i&T,t[x+4>>2]=e,e=a- -64|0,b=t[e>>2],e=t[e+4>>2]&n|y&M0,t[R>>2]=r&b|i&k,t[R+4>>2]=e,a=a+72|0,e=t[a>>2],a=t[a+4>>2]&n|f&y,t[S>>2]=r&e|i&s,t[S+4>>2]=a,a=y&t[c+84>>2],t[c+80>>2]=t[c+80>>2]&i|r&1,t[c+84>>2]=a,r=t[s0+4>>2]&y,t[s0>>2]=t[s0>>2]&i,t[s0+4>>2]=r,r=t[$+4>>2]&y,t[$>>2]=t[$>>2]&i,t[$+4>>2]=r,r=t[u0+4>>2]&y,t[u0>>2]=t[u0>>2]&i,t[u0+4>>2]=r,k=t[t0>>2],s=t[t0+4>>2],C=c,h=d&65535,r=I0(d>>>16|0,0,977,1),i=r+g0|0,e=e0+i0|0,r=i>>>0<r>>>0?e+1|0:e,a=r>>>20|0,e=r0,n=a,a=a+V|0,b=n>>>0>a>>>0?e+1|0:e,e=L,n=b>>>20|0,c=n+N|0,o=n>>>0>c>>>0?e+1|0:e,e=I,n=o>>>20|0,T=n+E|0,f=n>>>0>T>>>0?e+1|0:e,n=h,H=f>>>20|0,e=H+l0|0,n=H>>>0>e>>>0?n+1|0:n,e|(T|(i|a|c))|(n|(r|b|o|f)&1048575)?(a&(i^976)&c&T&e)==-1?i=(b&(r^1)&o&f&(n^983040))==1048575:i=0:i=1,t[C+120>>2]=i&($e^-1),t[t0>>2]=A&k,t[t0+4>>2]=s&y,D=g+1744|0}function Ve(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0;n=D-336|0,D=n,a=t[r+4>>2],k=a,T=t[r>>2],e=T,a=a<<1|e>>>31,y=n- -64|0,w=t[r+24>>2],g=t[r+28>>2],L=e<<1,j=a,P(y,w,g,0,0,L,a,0,0),a=t[r+12>>2],$=a,Z=t[r+8>>2],e=Z,a=a<<1|e>>>31,d=n+272|0,E=t[r+16>>2],h=t[r+20>>2],e=e<<1,s=a,P(d,E,h,0,0,e,a,0,0),c=n+224|0,o=t[r+32>>2],r=t[r+36>>2],P(c,o,r,0,0,o,r,0,0),f=n+208|0,P(f,t[n+224>>2],t[n+228>>2],0,0,15632,16,0,0),a=r<<1|o>>>31,Y=n+176|0,I=o<<1,K=a,P(Y,I,a,0,0,T,k,0,0),X=n+80|0,P(X,w,g,0,0,e,s,0,0),_=n+256|0,P(_,E,h,0,0,E,h,0,0),b=n+192|0,r=c+8|0,P(b,t[r>>2],t[r+4>>2],0,0,64028672,65536,0,0),t0=n+320|0,P(t0,T,k,0,0,T,k,0,0),z=n+160|0,P(z,I,a,0,0,Z,$,0,0),H=n+96|0,P(H,w,g,0,0,E<<1,h<<1|E>>>31,0,0),T=t[n+68>>2],a=T+t[n+276>>2]|0,o=t[n+64>>2],r=t[n+272>>2],e=o+r|0,s=t[n+208>>2],e0=e+s|0,r=r>>>0>e>>>0?a+1|0:a,a=r+t[n+212>>2]|0,s=s>>>0>e0>>>0?a+1|0:a,c=(r|0)==(s|0)&e>>>0>e0>>>0|r>>>0>s>>>0,a=f+8|0,f=t[a>>2],R=t[a+4>>2],o=(r|0)==(T|0)&e>>>0<o>>>0|r>>>0<T>>>0,a=d+8|0,e=t[a>>2],r=y+8|0,d=e+t[r>>2]|0,a=t[r+4>>2]+t[a+4>>2]|0,a=e>>>0>d>>>0?a+1|0:a,r=o+d|0,a=(r>>>0<d>>>0?a+1|0:a)+R|0,e=r,r=r+f|0,a=e>>>0>r>>>0?a+1|0:a,e=r,r=r+c|0,a=e>>>0>r>>>0?a+1|0:a,k=s,R=r<<12|s>>>20,e=a,o=a<<12|r>>>20,C=t[n+80>>2],r=t[n+256>>2],c=C+r|0,V=t[n+84>>2],a=V+t[n+260>>2]|0,a=r>>>0>c>>>0?a+1|0:a,r=t[n+176>>2],f=r+c|0,y=a,a=a+t[n+180>>2]|0,a=r>>>0>f>>>0?a+1|0:a,r=t[n+192>>2],s=r+f|0,d=a,a=a+t[n+196>>2]|0,r=r>>>0>s>>>0?a+1|0:a,a=r+o|0,R=s+R|0,o=R>>>0<s>>>0?a+1|0:a,S=(r|0)==(o|0)&s>>>0>R>>>0|r>>>0>o>>>0,N=(r|0)==(d|0)&s>>>0<f>>>0|r>>>0<d>>>0,r=b+8|0,x=t[r>>2],A=t[r+4>>2],T=(d|0)==(y|0)&c>>>0>f>>>0|d>>>0<y>>>0,r=Y+8|0,b=t[r>>2],d=t[r+4>>2],f=(y|0)==(V|0)&c>>>0<C>>>0|y>>>0<V>>>0,a=_+8|0,s=t[a>>2],r=X+8|0,c=s+t[r>>2]|0,a=t[r+4>>2]+t[a+4>>2]|0,a=s>>>0>c>>>0?a+1|0:a,r=c+f|0,a=(r>>>0<c>>>0?a+1|0:a)+d|0,s=r,r=r+b|0,a=s>>>0>r>>>0?a+1|0:a,s=r,r=r+T|0,a=(s>>>0>r>>>0?a+1|0:a)+A|0,s=r,r=r+x|0,a=s>>>0>r>>>0?a+1|0:a,s=r+N|0,a=s>>>0<r>>>0?a+1|0:a,e=e>>>20|0,r=e+s|0,a=e>>>0>r>>>0?a+1|0:a,e=r,r=r+S|0,a=e>>>0>r>>>0?a+1|0:a,e=o,c=r<<12|e>>>20,s=a,f=a<<12|r>>>20,x=t[n+160>>2],r=t[n+96>>2],o=x+r|0,C=t[n+164>>2],a=C+t[n+100>>2]|0,r=r>>>0>o>>>0?a+1|0:a,a=r+f|0,b=o,o=o+c|0,c=o<<4&-16,d=o>>>0<b>>>0?a+1|0:a,f=(d<<4|o>>>28)&16777215,T=e,P(n,c|e>>>16&15,f,0,0,977,1,0,0),S=t[n+4>>2],a=S+t[n+324>>2]|0,f=i,N=t[n>>2],i=t[n+320>>2],y=N+i|0,t[f>>2]=y,c=i>>>0>y>>>0?a+1|0:a,t[f+4>>2]=c&1048575,V=n+304|0,P(V,Z,$,0,0,L,j,0,0),Y=n+144|0,P(Y,I,K,0,0,E,h,0,0),X=n+112|0,P(X,w,g,0,0,w,g,0,0),_=n+48|0,A=_,o=(r|0)==(d|0)&o>>>0<b>>>0|r>>>0>d>>>0,e=(r|0)==(C|0)&b>>>0<x>>>0|r>>>0<C>>>0,a=H+8|0,r=t[a>>2],i=z+8|0,b=r+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=r>>>0>b>>>0?a+1|0:a,r=e+b|0,a=r>>>0<b>>>0?a+1|0:a,e=s>>>20|0,i=r+e|0,a=e>>>0>i>>>0?a+1|0:a,r=i,i=i+o|0,a=r>>>0>i>>>0?a+1|0:a,d=i<<12|d>>>20,o=a,s=a<<12|i>>>20,z=t[n+148>>2],a=z+t[n+116>>2]|0,C=t[n+144>>2],r=t[n+112>>2],i=C+r|0,x=i,b=i+d|0,e=i>>>0<r>>>0?a+1|0:a,a=e+s|0,d=b>>>0<i>>>0?a+1|0:a,P(A,b,d&1048575,0,0,15632,16,0,0),s=(c|0)==(S|0)&y>>>0<N>>>0|c>>>0<S>>>0,a=t0+8|0,r=t[a>>2],i=n+8|0,y=r+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=r>>>0>y>>>0?a+1|0:a,i=s+y|0,a=i>>>0<y>>>0?a+1|0:a,y=i<<12|c>>>20,s=a,c=a<<12|i>>>20,S=t[n+48>>2],i=t[n+304>>2],A=S+i|0,H=t[n+52>>2],a=H+t[n+308>>2]|0,r=i>>>0>A>>>0?a+1|0:a,a=r+c|0,y=y+A|0,a=y>>>0<A>>>0?a+1|0:a,t[f+8>>2]=y,c=a,t[f+12>>2]=a&1048575,N=n+240|0,P(N,E,h,0,0,L,j,0,0),j=n+288|0,P(j,Z,$,0,0,Z,$,0,0),L=n+128|0,P(L,I,K,0,0,w,g,0,0),K=n+32|0,g=K,h=(e|0)==(d|0)&b>>>0<x>>>0|e>>>0>d>>>0,b=(e|0)==(z|0)&x>>>0<C>>>0|e>>>0<z>>>0,a=X+8|0,e=t[a>>2],i=Y+8|0,w=e+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=e>>>0>w>>>0?a+1|0:a,e=b+w|0,a=e>>>0<w>>>0?a+1|0:a,o=o>>>20|0,i=e+o|0,a=o>>>0>i>>>0?a+1|0:a,e=i,i=i+h|0,a=e>>>0>i>>>0?a+1|0:a,E=i<<12|d>>>20,o=t[n+128>>2],d=E+o|0,e=a,I=a<<12|i>>>20,a=I+t[n+132>>2]|0,b=o>>>0>d>>>0?a+1|0:a,P(g,d,b,0,0,15632,16,0,0),o=f,y=(r|0)==(c|0)&y>>>0<A>>>0|r>>>0>c>>>0,f=(r|0)==(H|0)&A>>>0<S>>>0|r>>>0<H>>>0,a=V+8|0,r=t[a>>2],i=_+8|0,h=r+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=r>>>0>h>>>0?a+1|0:a,r=f+h|0,a=r>>>0<h>>>0?a+1|0:a,s=s>>>20|0,i=r+s|0,a=s>>>0>i>>>0?a+1|0:a,r=i,i=i+y|0,a=r>>>0>i>>>0?a+1|0:a,f=i<<12|c>>>20,r=a,g=a<<12|i>>>20,A=t[n+240>>2],i=t[n+288>>2],c=A+i|0,x=t[n+244>>2],a=x+t[n+292>>2]|0,h=i>>>0>c>>>0?a+1|0:a,a=h+t[n+36>>2]|0,i=t[n+32>>2],s=i+c|0,y=s,f=s+f|0,i=i>>>0>s>>>0?a+1|0:a,a=i+g|0,t[o+16>>2]=f,s=f>>>0<s>>>0?a+1|0:a,t[o+20>>2]=s&1048575,w=n+16|0,g=(b|0)==(I|0)&d>>>0<E>>>0|b>>>0<I>>>0,a=L+8|0,b=t[a>>2],a=t[a+4>>2],e=e>>>20|0,d=e,e=e+b|0,a=d>>>0>e>>>0?a+1|0:a,d=e,e=e+g|0,a=d>>>0>e>>>0?a+1|0:a,P(w,e,a,0,0,64028672,65536,0,0),e=o,g=(i|0)==(s|0)&f>>>0<y>>>0|i>>>0>s>>>0,b=(i|0)==(h|0)&c>>>0>y>>>0|i>>>0<h>>>0,i=K+8|0,y=t[i>>2],d=t[i+4>>2],f=(h|0)==(x|0)&c>>>0<A>>>0|h>>>0<x>>>0,a=j+8|0,o=t[a>>2],i=N+8|0,c=o+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=c>>>0<o>>>0?a+1|0:a,i=c+f|0,a=(i>>>0<c>>>0?a+1|0:a)+d|0,o=i,i=i+y|0,a=o>>>0>i>>>0?a+1|0:a,o=i+b|0,a=o>>>0<i>>>0?a+1|0:a,r=r>>>20|0,i=r+o|0,a=r>>>0>i>>>0?a+1|0:a,r=i,i=i+g|0,a=r>>>0>i>>>0?a+1|0:a,o=i<<12|s>>>20,r=a,s=a<<12|i>>>20,b=t[n+16>>2],i=e0&-2,f=b+i|0,a=k&1048575,k=t[n+20>>2],a=a+k|0,c=i>>>0>f>>>0?a+1|0:a,a=c+s|0,s=o+f|0,a=s>>>0<f>>>0?a+1|0:a,t[e+24>>2]=s,i=a,t[e+28>>2]=a&1048575,o=e,y=T&65535,d=(a|0)==(c|0)&s>>>0<f>>>0|a>>>0<c>>>0,e=(c|0)==(k|0)&f>>>0<b>>>0|c>>>0<k>>>0,a=w+8|0,s=e+t[a>>2]|0,a=t[a+4>>2],a=e>>>0>s>>>0?a+1|0:a,r=r>>>20|0,e=r,r=r+s|0,a=e>>>0>r>>>0?a+1|0:a,e=r,r=r+d|0,a=e>>>0>r>>>0?a+1|0:a,i=r<<12|i>>>20,e=i+R|0,a=y+(a<<12|r>>>20)|0,t[o+32>>2]=e,t[o+36>>2]=i>>>0>e>>>0?a+1|0:a,D=n+336|0}function wn(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0,V0=0,q0=0,Z0=0,Y0=0,K0=0,Q0=0,J0=0,_0=0,$0=0,ee=0;n=D-464|0,D=n,t[i+120>>2]=t[r+120>>2],a=r+40|0,U0(i+80|0,r+80|0,a),Ve(n+384|0,a),X=n+424|0,Ve(X,r),T=t[n+388>>2],A=t[n+384>>2],t[n+344>>2]=-3908-A,t[n+348>>2]=4194299-((A>>>0>4294963388)+T|0),g=t[n+396>>2],k=t[n+392>>2],t[n+352>>2]=-4-k,t[n+356>>2]=4194303-((k>>>0>4294967292)+g|0),I=t[n+404>>2],E=t[n+400>>2],t[n+360>>2]=-4-E,t[n+364>>2]=4194303-((E>>>0>4294967292)+I|0),y=t[n+412>>2],c=t[n+408>>2],t[n+368>>2]=-4-c,t[n+372>>2]=4194303-((c>>>0>4294967292)+y|0),o=I0(t[n+456>>2],t[n+460>>2],3,0),s=i0,C=I0(t[n+424>>2],t[n+428>>2],3,0),f=i0,a=C&1,e=0-a|0,h=e,b=0-a|0,a=(b>>>16|0)+s|0,e=(b&65535)<<16|e>>>16,s=e+o|0,a=e>>>0>s>>>0?a+1|0:a,t[n+456>>2]=(a&1)<<31|s>>>1,t[n+460>>2]=a>>>1,d=s<<19&524288,o=b>>>12|0,h=(b&4095)<<20|h>>>12,e=I0(t[n+448>>2],t[n+452>>2],3,0),s=h+e|0,a=o+i0|0,e=e>>>0>s>>>0?a+1|0:a,a=(e>>>1|0)+d|0,b=(e&1)<<31|s>>>1,a=b>>>0>b>>>0?a+1|0:a,t[n+448>>2]=b,t[n+452>>2]=a,b=s<<19&524288,s=I0(t[n+440>>2],t[n+444>>2],3,0)+h|0,e=i0+o|0,e=s>>>0<h>>>0?e+1|0:e,a=(e>>>1|0)+b|0,d=(e&1)<<31|s>>>1,a=d>>>0>d>>>0?a+1|0:a,t[n+440>>2]=d,t[n+444>>2]=a,d=s<<19&524288,e=I0(t[n+432>>2],t[n+436>>2],3,0),b=e+h|0,a=o+i0|0,s=e>>>0>b>>>0?a+1|0:a,a=(s>>>1|0)+d|0,S=(s&1)<<31|b>>>1,e=S,a=e>>>0>e>>>0?a+1|0:a,t[n+432>>2]=e,t[n+436>>2]=a,b=b<<19&524288,a=(o&1048574)+f|0,s=(h&-977)+C|0,a=s>>>0<C>>>0?a+1|0:a,s=(a&1)<<31|s>>>1,a=(a>>>1|0)+b|0,e=s,a=e>>>0<e>>>0?a+1|0:a,t[n+424>>2]=e,t[n+428>>2]=a,f=t[n+420>>2],d=t[n+416>>2],t[n+376>>2]=-4-d,t[n+380>>2]=262143-((d>>>0>4294967292)+f|0),_=n+344|0,U0(_,_,r),Ve(i,X),r=t[n+376>>2],V0=r,a=t[n+380>>2],q0=a,a=t[i+36>>2]+(a<<1|r>>>31)|0,r=r<<1,e=r,r=r+t[i+32>>2]|0,a=e>>>0>r>>>0?a+1|0:a,r0=r,t[i+32>>2]=r,j=a,t[i+36>>2]=a,o=i,s=t[i+24>>2],i=t[n+368>>2],Z0=i,r=t[n+372>>2],Y0=r,a=t[o+28>>2]+(r<<1|i>>>31)|0,i=i<<1,r=i,i=i+s|0,a=r>>>0>i>>>0?a+1|0:a,s0=i,t[o+24>>2]=i,$=a,t[o+28>>2]=a,i=t[n+360>>2],K0=i,r=t[n+364>>2],Q0=r,a=t[o+20>>2]+(r<<1|i>>>31)|0,i=i<<1,r=i,i=i+t[o+16>>2]|0,a=r>>>0>i>>>0?a+1|0:a,u0=i,t[o+16>>2]=i,e0=a,t[o+20>>2]=a,i=t[n+352>>2],J0=i,r=t[n+356>>2],_0=r,e=t[o+12>>2]+(r<<1|i>>>31)|0,i=i<<1,r=i,i=i+t[o+8>>2]|0,e=r>>>0>i>>>0?e+1|0:e,d0=i,t[o+8>>2]=i,C=e,t[o+12>>2]=e,i=t[n+344>>2],$0=i,r=t[n+348>>2],ee=r,a=t[o+4>>2]+(r<<1|i>>>31)|0,i=i<<1,r=i,i=i+t[o>>2]|0,a=r>>>0>i>>>0?a+1|0:a,l0=i,t[o>>2]=i,S=a,t[o+4>>2]=a,N=n+104|0,b=c,s=y,H=A<<1,L=T<<1|A>>>31,P(N,c,s,0,0,H,L,0,0),x=n+168|0,r=E,i=I,h=k<<1,c=g<<1|k>>>31,P(x,r,i,0,0,h,c,0,0),E=n+328|0,P(E,d,f,0,0,d,f,0,0),w=n+312|0,P(w,t[n+328>>2],t[n+332>>2],0,0,15632,16,0,0),e=d,a=f<<1|e>>>31,b0=n+136|0,Z=e<<1,I=a,P(b0,Z,a,0,0,A,T,0,0),g0=n+152|0,P(g0,b,s,0,0,h,c,0,0),x0=n+232|0,P(x0,r,i,0,0,r,i,0,0),z=n+296|0,a=E+8|0,P(z,t[a>>2],t[a+4>>2],0,0,64028672,65536,0,0),C0=n+120|0,P(C0,A,T,0,0,A,T,0,0),M0=n+200|0,P(M0,Z,I,0,0,k,g,0,0),d=i,E=r,a=i<<1|r>>>31,R0=n+248|0,y=b,f=s,P(R0,y,s,0,0,r<<1,a,0,0),T=t[n+108>>2],a=T+t[n+172>>2]|0,s=t[n+104>>2],i=t[n+168>>2],e=s+i|0,r=t[n+312>>2],A=e+r|0,i=i>>>0>e>>>0?a+1|0:a,a=i+t[n+316>>2]|0,r=r>>>0>A>>>0?a+1|0:a,c=(i|0)==(r|0)&e>>>0>A>>>0|i>>>0>r>>>0,a=w+8|0,h=t[a>>2],b=t[a+4>>2],s=(i|0)==(T|0)&e>>>0<s>>>0|i>>>0<T>>>0,a=x+8|0,e=t[a>>2],i=N+8|0,T=e+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=e>>>0>T>>>0?a+1|0:a,i=s+T|0,a=(i>>>0<T>>>0?a+1|0:a)+b|0,e=i,i=i+h|0,e=e>>>0>i>>>0?a+1|0:a,a=i,i=i+c|0,e=a>>>0>i>>>0?e+1|0:e,T=r,b=i<<12|r>>>20,r=e<<12|i>>>20,E0=t[n+152>>2],i=t[n+232>>2],c=E0+i|0,t0=t[n+156>>2],a=t0+t[n+236>>2]|0,a=i>>>0>c>>>0?a+1|0:a,i=t[n+136>>2],h=i+c|0,x=a,a=a+t[n+140>>2]|0,a=i>>>0>h>>>0?a+1|0:a,i=t[n+296>>2],s=i+h|0,w=a,a=a+t[n+300>>2]|0,i=i>>>0>s>>>0?a+1|0:a,a=i+r|0,k0=n+40|0,b=s+b|0,r=b>>>0<s>>>0?a+1|0:a,V=(i|0)==(r|0)&s>>>0>b>>>0|i>>>0>r>>>0,R=(i|0)==(w|0)&s>>>0<h>>>0|i>>>0<w>>>0,i=z+8|0,Y=t[i>>2],K=t[i+4>>2],N=(w|0)==(x|0)&c>>>0>h>>>0|w>>>0<x>>>0,i=b0+8|0,z=t[i>>2],w=t[i+4>>2],h=(x|0)==(t0|0)&c>>>0<E0>>>0|x>>>0<t0>>>0,a=x0+8|0,s=t[a>>2],i=g0+8|0,c=s+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=s>>>0>c>>>0?a+1|0:a,i=c+h|0,a=(i>>>0<c>>>0?a+1|0:a)+w|0,s=i,i=i+z|0,a=s>>>0>i>>>0?a+1|0:a,s=i,i=i+N|0,a=(s>>>0>i>>>0?a+1|0:a)+K|0,s=i,i=i+Y|0,a=s>>>0>i>>>0?a+1|0:a,s=i+R|0,a=s>>>0<i>>>0?a+1|0:a,e=e>>>20|0,i=e+s|0,a=e>>>0>i>>>0?a+1|0:a,e=i,i=i+V|0,a=e>>>0>i>>>0?a+1|0:a,c=i<<12|r>>>20,e=a,h=a<<12|i>>>20,V=t[n+204>>2],a=V+t[n+252>>2]|0,R=t[n+200>>2],i=t[n+248>>2],s=R+i|0,w=s,c=s+c|0,i=i>>>0>s>>>0?a+1|0:a,a=i+h|0,s=c>>>0<s>>>0?a+1|0:a,a=s<<4|c>>>28,x=c<<4&-16,h=r,P(k0,x|r>>>16&15,a&16777215,0,0,977,1,0,0),Y=n+24|0,P(Y,k,g,0,0,H,L,0,0),K=n+216|0,P(K,Z,I,0,0,E,d,0,0),N=n+280|0,P(N,y,f,0,0,y,f,0,0),z=n+88|0,x=(i|0)==(s|0)&c>>>0<w>>>0|i>>>0>s>>>0,c=(i|0)==(V|0)&w>>>0<R>>>0|i>>>0<V>>>0,a=R0+8|0,r=t[a>>2],i=M0+8|0,w=r+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=r>>>0>w>>>0?a+1|0:a,i=e,r=c+w|0,a=r>>>0<w>>>0?a+1|0:a,i=i>>>20|0,e=i,i=i+r|0,a=e>>>0>i>>>0?a+1|0:a,r=i,i=i+x|0,r=r>>>0>i>>>0?a+1|0:a,e=r<<12|i>>>20,c=i<<12|s>>>20,s=e,x=t[n+216>>2],i=t[n+280>>2],e=x+i|0,R=t[n+220>>2],a=R+t[n+284>>2]|0,i=i>>>0>e>>>0?a+1|0:a,a=i+s|0,s=c,c=e,e=s+e|0,s=e>>>0<c>>>0?a+1|0:a,P(z,e,s&1048575,0,0,15632,16,0,0),w=n+8|0,P(w,E,d,0,0,H,L,0,0),H=n+184|0,P(H,k,g,0,0,k,g,0,0),g=n+264|0,P(g,Z,I,0,0,y,f,0,0),I=n+72|0,f=I,d=(i|0)==(s|0)&e>>>0<c>>>0|i>>>0>s>>>0,c=(i|0)==(R|0)&c>>>0<x>>>0|i>>>0<R>>>0,e=N+8|0,a=t[e>>2],i=K+8|0,y=a+t[i>>2]|0,e=t[i+4>>2]+t[e+4>>2]|0,a=a>>>0>y>>>0?e+1|0:e,e=c+y|0,a=e>>>0<y>>>0?a+1|0:a,r=r>>>20|0,i=r+e|0,a=r>>>0>i>>>0?a+1|0:a,r=i,i=i+d|0,a=r>>>0>i>>>0?a+1|0:a,d=i<<12|s>>>20,s=t[n+264>>2],y=d+s|0,r=a,i=a<<12|i>>>20,e=i+t[n+268>>2]|0,e=s>>>0>y>>>0?e+1|0:e,P(f,y,e,0,0,15632,16,0,0),E=n+56|0,c=E,s=(i|0)==(e|0)&d>>>0>y>>>0|i>>>0>e>>>0,i=g+8|0,e=t[i>>2],a=t[i+4>>2],r=r>>>20|0,i=r+e|0,a=r>>>0>i>>>0?a+1|0:a,r=i,i=i+s|0,a=r>>>0>i>>>0?a+1|0:a,P(c,i,a,0,0,64028672,65536,0,0),i=n,e=j+q0|0,r=r0+V0|0,e=r>>>0<r0>>>0?e+1|0:e,t[i+376>>2]=r,t[i+380>>2]=e,a=$+Y0|0,r=s0+Z0|0,a=r>>>0<s0>>>0?a+1|0:a,t[i+368>>2]=r,t[i+372>>2]=a,a=e0+Q0|0,r=u0+K0|0,a=r>>>0<u0>>>0?a+1|0:a,t[i+360>>2]=r,t[i+364>>2]=a,a=C+_0|0,r=d0+J0|0,a=r>>>0<d0>>>0?a+1|0:a,t[i+352>>2]=r,t[i+356>>2]=a,d=i,a=S+ee|0,i=l0+$0|0,a=i>>>0<l0>>>0?a+1|0:a,t[n+344>>2]=i,t[n+348>>2]=a,U0(o+40|0,_,X),c=o,o=t[o+40>>2],a=t[c+44>>2],s=t[n+40>>2],r=t[n+120>>2],i=s+r|0,f=t[n+44>>2],e=f+t[n+124>>2]|0,r=i>>>0<r>>>0?e+1|0:e,a=a+(r&1048575)|0,e=i+o|0,a=e>>>0<i>>>0?a+1|0:a,t[c+40>>2]=-5862-e,t[c+44>>2]=6291449-((e>>>0>4294961434)+a|0),a=c+48|0,g=a,y=t[a>>2],n=t[a+4>>2],s=(r|0)==(f|0)&i>>>0<s>>>0|r>>>0<f>>>0,a=C0+8|0,e=t[a>>2],i=k0+8|0,o=e+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,e=e>>>0>o>>>0?a+1|0:a,i=s+o|0,e=i>>>0<o>>>0?e+1|0:e,o=i<<12|r>>>20,s=e<<12|i>>>20,f=t[d+88>>2],i=t[d+24>>2],r=f+i|0,C=t[d+92>>2],a=C+t[d+28>>2]|0,a=i>>>0>r>>>0?a+1|0:a,i=o,o=r,r=i+r|0,i=a,a=a+s|0,s=r>>>0<o>>>0?a+1|0:a,a=n+(s&1048575)|0,y=r+y|0,a=y>>>0<r>>>0?a+1|0:a,t[g>>2]=-6-y,t[g+4>>2]=6291455-((y>>>0>4294967290)+a|0),a=c+56|0,S=a,g=t[a>>2],y=t[a+4>>2],n=(i|0)==(s|0)&r>>>0<o>>>0|i>>>0>s>>>0,o=(i|0)==(C|0)&o>>>0<f>>>0|i>>>0<C>>>0,a=Y+8|0,r=t[a>>2],i=z+8|0,f=r+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=r>>>0>f>>>0?a+1|0:a,r=o+f|0,a=r>>>0<f>>>0?a+1|0:a,e=e>>>20|0,i=r+e|0,a=e>>>0>i>>>0?a+1|0:a,r=i,i=i+n|0,a=r>>>0>i>>>0?a+1|0:a,s=i<<12|s>>>20,r=a,e=a<<12|i>>>20,j=t[d+8>>2],i=t[d+184>>2],n=j+i|0,L=t[d+12>>2],a=L+t[d+188>>2]|0,a=i>>>0>n>>>0?a+1|0:a,i=t[d+72>>2],o=i+n|0,f=a,a=a+t[d+76>>2]|0,i=i>>>0>o>>>0?a+1|0:a,a=i+e|0,s=s+o|0,e=s>>>0<o>>>0?a+1|0:a,a=y+(e&1048575)|0,g=s+g|0,a=g>>>0<s>>>0?a+1|0:a,t[S>>2]=-6-g,t[S+4>>2]=6291455-((g>>>0>4294967290)+a|0),a=c- -64|0,k=a,$=t[a>>2],e0=t[a+4>>2],C=(i|0)==(e|0)&s>>>0<o>>>0|i>>>0>e>>>0,S=(i|0)==(f|0)&n>>>0>o>>>0|i>>>0<f>>>0,i=I+8|0,g=t[i>>2],y=t[i+4>>2],o=(f|0)==(L|0)&n>>>0<j>>>0|f>>>0<L>>>0,a=H+8|0,s=t[a>>2],i=w+8|0,n=s+t[i>>2]|0,a=t[i+4>>2]+t[a+4>>2]|0,a=n>>>0<s>>>0?a+1|0:a,i=n+o|0,a=(i>>>0<n>>>0?a+1|0:a)+y|0,s=i,i=i+g|0,a=s>>>0>i>>>0?a+1|0:a,s=i+S|0,a=s>>>0<i>>>0?a+1|0:a,r=r>>>20|0,i=r+s|0,a=r>>>0>i>>>0?a+1|0:a,r=i,i=i+C|0,a=r>>>0>i>>>0?a+1|0:a,s=i<<12|e>>>20,r=a,n=a<<12|i>>>20,f=t[d+56>>2],e=A&-2,i=f+e|0,y=t[d+60>>2],a=y+(T&1048575)|0,o=i>>>0<e>>>0?a+1|0:a,a=o+n|0,e=s,s=i,e=e+i|0,i=e>>>0<i>>>0?a+1|0:a,a=e0+(i&1048575)|0,n=e+$|0,a=n>>>0<e>>>0?a+1|0:a,t[k>>2]=-6-n,t[k+4>>2]=6291455-((n>>>0>4294967290)+a|0),a=c+72|0,A=a,T=t[a>>2],c=t[a+4>>2],h=h&65535,n=(i|0)==(o|0)&e>>>0<s>>>0|i>>>0<o>>>0,e=(o|0)==(y|0)&s>>>0<f>>>0|o>>>0<y>>>0,a=E+8|0,s=e+t[a>>2]|0,a=t[a+4>>2],a=e>>>0>s>>>0?a+1|0:a,r=r>>>20|0,e=r,r=r+s|0,a=e>>>0>r>>>0?a+1|0:a,e=r,r=r+n|0,a=e>>>0>r>>>0?a+1|0:a,i=r<<12|i>>>20,s=i+b|0,e=h+(a<<12|r>>>20)|0,a=(i>>>0>s>>>0?e+1|0:e)+c|0,i=s+T|0,a=i>>>0<s>>>0?a+1|0:a,t[A>>2]=-6-i,t[A+4>>2]=393215-((i>>>0>4294967290)+a|0),D=d+464|0}function Ci(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0;c=D-80|0,D=c;t:{if(t[r+120>>2]){t[i+80>>2]=1,me(i,80);break t}b=r+88|0,n=t[b>>2],o=t[b+4>>2],s=t[r+84>>2],e=r+112|0,w=t[e>>2],d=t[e+4>>2],T=d,e=t[r+80>>2],a=I0(d>>>16|0,0,977,1),y=e+a|0,s=s+i0|0,e=o,f=a>>>0>y>>>0?s+1|0:s,a=f>>>20|0,o=a,a=a+n|0,o=o>>>0>a>>>0?e+1|0:e,A=o&1048575,s=r+104|0,g=t[s>>2],x=t[s+4>>2],s=r+96|0,d=t[s>>2],n=t[s+4>>2],s=o>>>20|0,d=s+d|0,n=s>>>0>d>>>0?n+1|0:n,e=x,h=n,n=n>>>20|0,s=n+g|0,e=n>>>0>s>>>0?e+1|0:e,g=e&1048575,x=r+80|0,n=d,h=h&1048575,E=(a&n&s)==-1&(o&h&e)==1048575,o=e>>>20|0,e=T&65535,d=o+w|0,o=d>>>0<o>>>0?e+1|0:e,e=f&1048575,w=e,E&((d|0)==-1&(o|0)==65535)&((e|0)==1048574&y>>>0>4294966318|e>>>0>1048574)|o>>>16&&(e=w+1|0,y=y+977|0,e=y>>>0<977?e+1|0:e,w=e&1048575,f=e,e=A,f=f>>>20|0,a=a+f|0,e=f>>>0>a>>>0?e+1|0:e,A=e&1048575,f=n,T=e>>>20|0,n=h,e=f+T|0,n=e>>>0<T>>>0?n+1|0:n,h=n&1048575,f=n,n=e,e=g,f=f>>>20|0,s=s+f|0,e=f>>>0>s>>>0?e+1|0:e,g=e&1048575,f=e,e=o,o=d,d=(f>>>20|0)+d|0,o=(o>>>0>d>>>0?e+1|0:e)&65535),t[c+72>>2]=o>>>8,t[c+76>>2]=0,e=o<<22|d>>>10,t[c+64>>2]=d<<22&-4194304|((g&1073741823)<<2|s>>>30),t[c+68>>2]=e&1073741823|g>>>30,t[c+56>>2]=(h&1048575)<<12|n>>>20,t[c+60>>2]=s&1073741823|h>>>20,n=n<<10&1073740800,t[c+48>>2]=(A&1023)<<22|a>>>10,t[c+52>>2]=A>>>10|n,t[c+40>>2]=y,t[c+44>>2]=w|a<<20&1072693248,y=c+40|0,fa(y,690464),s=t[c+44>>2],n=s,t[r+80>>2]=t[c+40>>2],t[r+84>>2]=n&1048575,s=t[c+72>>2]<<8,d=t[c+68>>2],e=d>>>22|0,o=t[c+64>>2],t[r+112>>2]=(d&4194303)<<10|o>>>22,t[r+116>>2]=e|s,a=o,e=d<<30|a>>>2,o=a<<30&-1073741824,a=t[c+56>>2],s=t[c+60>>2],t[r+104>>2]=s|o,t[r+108>>2]=e&1048575,s=s<<20|a>>>12,o=a<<20&-1048576,d=s&1048575,a=t[c+48>>2],s=t[c+52>>2],t[r+96>>2]=s>>>10|o,t[r+100>>2]=d,e=s<<10|a>>>22,t[r+88>>2]=a<<10&-1024|n>>>20,t[r+92>>2]=e&1048575,Ve(y,x),U0(c,x,y),U0(r,r,y),a=r+40|0,U0(a,a,c),t[b>>2]=0,t[b+4>>2]=0,a=b+8|0,t[a>>2]=0,t[a+4>>2]=0,a=b+16|0,t[a>>2]=0,t[a+4>>2]=0,a=b+24|0,t[a>>2]=0,t[a+4>>2]=0,t[i+80>>2]=0,t[r+80>>2]=1,t[r+84>>2]=0,a=t[r+4>>2],t[i>>2]=t[r>>2],t[i+4>>2]=a,a=r+8|0,s=t[a+4>>2],n=i+8|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+16|0,s=t[a+4>>2],n=i+16|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+24|0,s=t[a+4>>2],n=i+24|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+32|0,s=t[a+4>>2],n=i+32|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+72|0,s=t[a+4>>2],n=i+72|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r- -64|0,s=t[a+4>>2],n=i- -64|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+56|0,s=t[a+4>>2],n=i+56|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=r+48|0,s=t[a+4>>2],n=i+48|0,t[n>>2]=t[a>>2],t[n+4>>2]=s,a=t[r+44>>2],t[i+40>>2]=t[r+40>>2],t[i+44>>2]=a}D=c+80|0}function Tn(i,r,a){var e=0,n=0;n=D-128|0,D=n;t:{if(!r){O0[t[i+168>>2]](689638,t[i+172>>2]),i=0;break t}if(u[r|0]=0,u[r+1|0]=0,u[r+2|0]=0,u[r+3|0]=0,u[r+4|0]=0,u[r+5|0]=0,u[r+6|0]=0,u[r+7|0]=0,e=r+56|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+48|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+40|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+32|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+24|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+16|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,e=r+8|0,u[e|0]=0,u[e+1|0]=0,u[e+2|0]=0,u[e+3|0]=0,u[e+4|0]=0,u[e+5|0]=0,u[e+6|0]=0,u[e+7|0]=0,!a){O0[t[i+168>>2]](689936,t[i+172>>2]),i=0;break t}if(i=0,!hn(n,a)||(i=0,!pa(n+40|0,n,0)))break t;ct(r,n+40|0),i=1}return D=n+128|0,i}function ma(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0;e=D-96|0,D=e,u[690885]=0,u[690886]=0,u[690887]=0,u[690888]=0,u[690889]=0,u[690890]=0,u[690891]=0,u[690892]=0,u[690909]=0,u[690910]=0,u[690911]=0,u[690912]=0,u[690913]=0,u[690914]=0,u[690915]=0,u[690916]=0,u[690901]=0,u[690902]=0,u[690903]=0,u[690904]=0,u[690905]=0,u[690906]=0,u[690907]=0,u[690908]=0,u[690893]=0,u[690894]=0,u[690895]=0,u[690896]=0,u[690897]=0,u[690898]=0,u[690899]=0,u[690900]=0;t:{if(!r){O0[t[i+168>>2]](689638,t[i+172>>2]);break t}if(s=l[r+60|0]|l[r+61|0]<<8|(l[r+62|0]<<16|l[r+63|0]<<24),d=s>>>16|0,n=e+80|0,a=l[r+56|0]|l[r+57|0]<<8|(l[r+58|0]<<16|l[r+59|0]<<24),t[n>>2]=(s&65535)<<16|a>>>16,t[n+4>>2]=d,c=a<<4&1048560,n=l[r+52|0]|l[r+53|0]<<8|(l[r+54|0]<<16|l[r+55|0]<<24),a=n>>>28|0,o=e+72|0,s=l[r+48|0]|l[r+49|0]<<8|(l[r+50|0]<<16|l[r+51|0]<<24),t[o>>2]=(n&268435455)<<4|s>>>28,t[o+4>>2]=a|c,a=s,d=n<<24|a>>>8,s=l[r+40|0]|l[r+41|0]<<8|(l[r+42|0]<<16|l[r+43|0]<<24),c=e- -64|0,n=l[r+44|0]|l[r+45|0]<<8|(l[r+46|0]<<16|l[r+47|0]<<24),t[c>>2]=a<<24&-16777216|n>>>8,t[c+4>>2]=d&1048575,a=s,n=(n<<12|a>>>20)&1048575,c=l[r+32|0]|l[r+33|0]<<8|(l[r+34|0]<<16|l[r+35|0]<<24),o=e+56|0,f=l[r+36|0]|l[r+37|0]<<8|(l[r+38|0]<<16|l[r+39|0]<<24),t[o>>2]=a<<12&-4096|f>>>20,t[o+4>>2]=n,t[e+88>>2]=0,t[e+48>>2]=c,t[e+52>>2]=f&1048575,s=l[r+12|0]|l[r+13|0]<<8|(l[r+14|0]<<16|l[r+15|0]<<24),a=l[r+8|0]|l[r+9|0]<<8|(l[r+10|0]<<16|l[r+11|0]<<24),d=s<<12|a>>>20,n=a<<12&-4096,a=l[r|0]|l[r+1|0]<<8|(l[r+2|0]<<16|l[r+3|0]<<24),f=l[r+4|0]|l[r+5|0]<<8|(l[r+6|0]<<16|l[r+7|0]<<24),y=f>>>20|n,t[e+16>>2]=y,b=d&1048575,t[e+20>>2]=b,n=a,t[e+8>>2]=a,h=f&1048575,t[e+12>>2]=h,o=l[r+28|0]|l[r+29|0]<<8|(l[r+30|0]<<16|l[r+31|0]<<24),a=o>>>16|0,c=l[r+24|0]|l[r+25|0]<<8|(l[r+26|0]<<16|l[r+27|0]<<24),f=(o&65535)<<16|c>>>16,t[e+40>>2]=f,o=a,t[e+44>>2]=a,a=l[r+16|0]|l[r+17|0]<<8|(l[r+18|0]<<16|l[r+19|0]<<24),w=a,g=l[r+20|0]|l[r+21|0]<<8|(l[r+22|0]<<16|l[r+23|0]<<24),r=a,a=g<<24|r>>>8,s=r<<24&-16777216|s>>>8,t[e+24>>2]=s,d=a&1048575,t[e+28>>2]=d,r=g,a=r>>>28|0,r=(r&268435455)<<4|w>>>28,t[e+32>>2]=r,a=a|c<<4&1048560,t[e+36>>2]=a,!(n|y|f|s|r|(b|h|o|d|a))){O0[t[i+168>>2]](690116,t[i+172>>2]);break t}br(690885,e+8|0),T=1}return D=e+96|0,T}function Bi(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0;n=D-96|0,D=n;t:{if(!r){O0[t[i+168>>2]](689586,t[i+172>>2]),i=0;break t}if(!e){O0[t[i+168>>2]](689638,t[i+172>>2]),i=0;break t}if(b=l[e+60|0]|l[e+61|0]<<8|(l[e+62|0]<<16|l[e+63|0]<<24),s=b>>>16|0,o=n+80|0,c=l[e+56|0]|l[e+57|0]<<8|(l[e+58|0]<<16|l[e+59|0]<<24),b=(b&65535)<<16|c>>>16,t[o>>2]=b,N=s,t[o+4>>2]=s,y=c<<4&1048560,d=l[e+52|0]|l[e+53|0]<<8|(l[e+54|0]<<16|l[e+55|0]<<24),s=d>>>28|0,o=n+72|0,c=l[e+48|0]|l[e+49|0]<<8|(l[e+50|0]<<16|l[e+51|0]<<24),g=(d&268435455)<<4|c>>>28,t[o>>2]=g,A=s|y,t[o+4>>2]=A,s=d<<24|c>>>8,y=c<<24&-16777216,c=l[e+40|0]|l[e+41|0]<<8|(l[e+42|0]<<16|l[e+43|0]<<24),o=n- -64|0,d=l[e+44|0]|l[e+45|0]<<8|(l[e+46|0]<<16|l[e+47|0]<<24),w=d>>>8|y,t[o>>2]=w,x=s&1048575,t[o+4>>2]=x,s=c,y=d<<12|s>>>20,c=l[e+32|0]|l[e+33|0]<<8|(l[e+34|0]<<16|l[e+35|0]<<24),o=n+56|0,f=l[e+36|0]|l[e+37|0]<<8|(l[e+38|0]<<16|l[e+39|0]<<24),T=s<<12&-4096|f>>>20,t[o>>2]=T,E=y&1048575,t[o+4>>2]=E,t[n+88>>2]=0,t[n+48>>2]=c,k=f&1048575,t[n+52>>2]=k,s=l[e+12|0]|l[e+13|0]<<8|(l[e+14|0]<<16|l[e+15|0]<<24),o=s,d=l[e+8|0]|l[e+9|0]<<8|(l[e+10|0]<<16|l[e+11|0]<<24),f=(s<<12|d>>>20)&1048575,s=l[e|0]|l[e+1|0]<<8|(l[e+2|0]<<16|l[e+3|0]<<24),h=l[e+4|0]|l[e+5|0]<<8|(l[e+6|0]<<16|l[e+7|0]<<24),C=d<<12&-4096|h>>>20,t[n+16>>2]=C,L=f,t[n+20>>2]=f,d=s,t[n+8>>2]=s,I=h&1048575,t[n+12>>2]=I,f=l[e+28|0]|l[e+29|0]<<8|(l[e+30|0]<<16|l[e+31|0]<<24),s=f>>>16|0,y=l[e+24|0]|l[e+25|0]<<8|(l[e+26|0]<<16|l[e+27|0]<<24),h=(f&65535)<<16|y>>>16,t[n+40>>2]=h,f=s,t[n+44>>2]=s,s=l[e+16|0]|l[e+17|0]<<8|(l[e+18|0]<<16|l[e+19|0]<<24),z=s,S=l[e+20|0]|l[e+21|0]<<8|(l[e+22|0]<<16|l[e+23|0]<<24),e=s,R=(S<<24|e>>>8)&1048575,o=e<<24&-16777216|o>>>8,t[n+24>>2]=o,t[n+28>>2]=R,e=S,s=e>>>28|0,e=(e&268435455)<<4|z>>>28,t[n+32>>2]=e,s=s|y<<4&1048560,t[n+36>>2]=s,!(d|C|h|o|e|(L|I|f|R|s))){O0[t[i+168>>2]](690116,t[i+172>>2]),i=0;break t}c&1&&(t[n+80>>2]=-4-b,t[n+84>>2]=262143-((b>>>0>4294967292)+N|0),t[n+72>>2]=-4-g,t[n+76>>2]=4194303-((g>>>0>4294967292)+A|0),t[n+64>>2]=-4-w,t[n+68>>2]=4194303-((w>>>0>4294967292)+x|0),t[n+56>>2]=-4-T,t[n+60>>2]=4194303-((T>>>0>4294967292)+E|0),t[n+48>>2]=-3908-c,t[n+52>>2]=4194299-((c>>>0>4294963388)+k|0),H=1),a&&(t[a>>2]=H),ct(r,n+8|0),i=1}return D=n+96|0,i}function Ii(i,r){var a=0,e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0;a=D-256|0,D=a;t:{if(!r){O0[t[i+168>>2]](689700,t[i+172>>2]);break t}if(o=me(r,96),!t[i>>2]){O0[t[i+168>>2]](690045,t[i+172>>2]);break t}for(e=a+96|0,c=a+128|0,ie(e,690788,c),f=t[a+120>>2],y=t[a+112>>2],n=t[a+104>>2],b=t[a+96>>2],h=t[a+124>>2],g=t[a+116>>2],w=t[a+108>>2],T=t[a+100>>2],d=t[a+128>>2]|!(f|(y|(n|b))|(h|(g|(w|T)))),r=d?0:-1,t[a+120>>2]=r&f,t[a+124>>2]=r&h,t[a+112>>2]=r&y,t[a+116>>2]=r&g,t[a+104>>2]=r&n,t[a+108>>2]=r&w,n=(d|0)!=0,t[a+96>>2]=n|r&b,t[a+100>>2]=r&T,gn(i,c,e),i=a+8|0,Lt(i,c),_t(o,e),ct(o+32|0,i),t[a+128>>2]=n,i=t[a+128>>2]-1|0;r=s+o|0,u[r|0]=l[r|0]&i,e=r+1|0,u[e|0]=l[e|0]&i,e=r+2|0,u[e|0]=l[e|0]&i,e=r+3|0,u[e|0]=l[e|0]&i,e=r+4|0,u[e|0]=l[e|0]&i,r=r+5|0,u[r|0]=l[r|0]&i,s=s+6|0,(s|0)!=96;);s=!d}return D=a+256|0,s}function Si(i,r,a,e,n,s,o,c){i=i|0,r=r|0,a=a|0,e=e|0,n=n|0,s=s|0,o=o|0,c=c|0;var d=0,f=0;if(d=D-176|0,D=d,s){t:{if(!c){u[d|0]=l[e|0]^84,u[d+1|0]=l[e+1|0]^241,u[d+2|0]=l[e+2|0]^105,u[d+3|0]=l[e+3|0]^207,u[d+4|0]=l[e+4|0]^201,u[d+5|0]=l[e+5|0]^226,u[d+6|0]=l[e+6|0]^229,u[d+7|0]=l[e+7|0]^114,u[d+8|0]=l[e+8|0]^116,u[d+9|0]=l[e+9|0]^128,u[d+10|0]=l[e+10|0]^68,u[d+11|0]=l[e+11|0]^31,u[d+12|0]=l[e+12|0]^144,u[d+13|0]=l[e+13|0]^186,u[d+14|0]=l[e+14|0]^37,u[d+15|0]=l[e+15|0]^196,u[d+16|0]=l[e+16|0]^136,u[d+17|0]=l[e+17|0]^244,u[d+18|0]=l[e+18|0]^97,u[d+19|0]=l[e+19|0]^199,u[d+20|0]=l[e+20|0]^11,u[d+21|0]=l[e+21|0]^94,u[d+22|0]=l[e+22|0]^165,u[d+23|0]=l[e+23|0]^220,u[d+24|0]=l[e+24|0]^170,u[d+25|0]=l[e+25|0]^247,u[d+26|0]=l[e+26|0]^175,u[d+27|0]=l[e+27|0]^105,u[d+28|0]=l[e+28|0]^39,u[d+29|0]=l[e+29|0]^10,u[d+30|0]=l[e+30|0]^165,u[d+31|0]=l[e+31|0]^20;break t}t[d+136>>2]=64,t[d+140>>2]=0,t[d+64>>2]=1252796217,t[d+68>>2]=614368522,t[d+56>>2]=989586609,t[d+60>>2]=1279582103,t[d+48>>2]=-904942663,t[d+52>>2]=262346349,t[d+40>>2]=618476057,t[d+44>>2]=1320844912,f=d+40|0,z0(f,c,32),ye(f,d),u[d|0]=l[d|0]^l[e|0],u[d+1|0]=l[d+1|0]^l[e+1|0],u[d+2|0]=l[d+2|0]^l[e+2|0],u[d+3|0]=l[d+3|0]^l[e+3|0],u[d+4|0]=l[d+4|0]^l[e+4|0],u[d+5|0]=l[d+5|0]^l[e+5|0],u[d+6|0]=l[d+6|0]^l[e+6|0],u[d+7|0]=l[d+7|0]^l[e+7|0],u[d+8|0]=l[d+8|0]^l[e+8|0],u[d+9|0]=l[d+9|0]^l[e+9|0],u[d+10|0]=l[d+10|0]^l[e+10|0],u[d+11|0]=l[d+11|0]^l[e+11|0],u[d+12|0]=l[d+12|0]^l[e+12|0],u[d+13|0]=l[d+13|0]^l[e+13|0],u[d+14|0]=l[d+14|0]^l[e+14|0],u[d+15|0]=l[d+15|0]^l[e+15|0],u[d+16|0]=l[d+16|0]^l[e+16|0],u[d+17|0]=l[d+17|0]^l[e+17|0],u[d+18|0]=l[d+18|0]^l[e+18|0],u[d+19|0]=l[d+19|0]^l[e+19|0],u[d+20|0]=l[d+20|0]^l[e+20|0],u[d+21|0]=l[d+21|0]^l[e+21|0],u[d+22|0]=l[d+22|0]^l[e+22|0],u[d+23|0]=l[d+23|0]^l[e+23|0],u[d+24|0]=l[d+24|0]^l[e+24|0],u[d+25|0]=l[d+25|0]^l[e+25|0],u[d+26|0]=l[d+26|0]^l[e+26|0],u[d+27|0]=l[d+27|0]^l[e+27|0],u[d+28|0]=l[d+28|0]^l[e+28|0],u[d+29|0]=l[d+29|0]^l[e+29|0],u[d+30|0]=l[d+30|0]^l[e+30|0],u[d+31|0]=l[d+31|0]^l[e+31|0]}t:{if((o|0)==13){e:{if(l[s|0]!=66||l[s+1|0]!=73||l[s+2|0]!=80||l[s+3|0]!=48||l[s+4|0]!=51||l[s+5|0]!=52||l[s+6|0]!=48||l[s+7|0]!=47||l[s+8|0]!=110||l[s+9|0]!=111||l[s+10|0]!=110||l[s+11|0]!=99||l[s+12|0]!=101)break e;t[d+136>>2]=64,t[d+140>>2]=0,t[d+64>>2]=564305492,t[d+68>>2]=1756396364,t[d+56>>2]=1612804480,t[d+60>>2]=1463125601,t[d+48>>2]=-1618098575,t[d+52>>2]=-2090698061,t[d+40>>2]=1180785461,t[d+44>>2]=-188760073;break t}t[d+136>>2]=0,t[d+140>>2]=0,t[d+64>>2]=528734635,t[d+68>>2]=1541459225,t[d+56>>2]=1359893119,t[d+60>>2]=-1694144372,t[d+48>>2]=1013904242,t[d+52>>2]=-1521486534,t[d+40>>2]=1779033703,t[d+44>>2]=-1150833019,e=d+40|0,z0(e,s,13),s=d+144|0,ye(e,s),t[d+136>>2]=0,t[d+140>>2]=0,t[d+64>>2]=528734635,t[d+68>>2]=1541459225,t[d+56>>2]=1359893119,t[d+60>>2]=-1694144372,t[d+48>>2]=1013904242,t[d+52>>2]=-1521486534,t[d+40>>2]=1779033703,t[d+44>>2]=-1150833019,z0(e,s,32),z0(e,s,32);break t}t[d+136>>2]=0,t[d+140>>2]=0,t[d+64>>2]=528734635,t[d+68>>2]=1541459225,t[d+56>>2]=1359893119,t[d+60>>2]=-1694144372,t[d+48>>2]=1013904242,t[d+52>>2]=-1521486534,t[d+40>>2]=1779033703,t[d+44>>2]=-1150833019,e=d+40|0,z0(e,s,o),s=d+144|0,ye(e,s),t[d+136>>2]=0,t[d+140>>2]=0,t[d+64>>2]=528734635,t[d+68>>2]=1541459225,t[d+56>>2]=1359893119,t[d+60>>2]=-1694144372,t[d+48>>2]=1013904242,t[d+52>>2]=-1521486534,t[d+40>>2]=1779033703,t[d+44>>2]=-1150833019,z0(e,s,32),z0(e,s,32)}e=d+40|0,z0(e,d,32),z0(e,n,32),z0(e,r,a),ye(e,i),i=1}else i=0;return D=d+176|0,i|0}function hr(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0;for(c=D-32|0,D=c,g=me(i,516),i=r+24|0,y=t[i>>2],i=t[i+4>>2],n=c+24|0,t[n>>2]=y,t[n+4>>2]=i,n=r+16|0,e=t[n+4>>2],s=c+16|0,t[s>>2]=t[n>>2],t[s+4>>2]=e,n=r+8|0,e=t[n+4>>2],s=c+8|0,t[s>>2]=t[n>>2],t[s+4>>2]=e,n=t[r+4>>2],t[c>>2]=t[r>>2],t[c+4>>2]=n,d=1,n=i,(i|0)<0&&(e=t[c>>2]^-1,s=e-801750718|0,o=t[c+4>>2]^-1,r=o-((e>>>0<801750718)+1076732275|0)|0,t[c>>2]=s,t[c+4>>2]=r,r=(r|0)==(o|0)&e>>>0>s>>>0|r>>>0<o>>>0,i=c,s=t[i+8>>2]^-1,r=r+s|0,o=t[i+12>>2]^-1,e=o,f=r-1354194885|0,t[i+8>>2]=f,e=r>>>0<s>>>0?e+1|0:e,d=e-((r>>>0<1354194885)+1162945305|0)|0,t[i+12>>2]=d,o=(e|0)==(o|0)&r>>>0<s>>>0|e>>>0<o>>>0,s=(e|0)==(d|0)&r>>>0>f>>>0|e>>>0>d>>>0,r=o+s|0,o=t[i+20>>2]^-1,e=o+(r>>>0<s>>>0)|0,s=t[i+16>>2]^-1,r=s+r|0,f=r-2|0,t[i+16>>2]=f,e=r>>>0<s>>>0?e+1|0:e,d=e-(r>>>0<2)|0,t[i+20>>2]=d,i=(e|0)==(o|0)&r>>>0<s>>>0|e>>>0<o>>>0,e=(e|0)==(d|0)&r>>>0>f>>>0|e>>>0>d>>>0,i=i+e|0,r=i>>>0<e>>>0,e=i-y|0,t[c+24>>2]=e-2,t[c+28>>2]=(r-((i>>>0<y>>>0)+n|0)|0)-(e>>>0<2),d=-1),w=a-1|0,y=-1,r=0;;){e=r>>>6|0,h=e<<3,n=h+c|0,i=t[n>>2],s=t[n+4>>2],o=r&63,n=o&31,o>>>0>=32?n=s>>>n|0:n=((1<<n)-1&s)<<32-n|i>>>n;t:{if((b|0)==(n&1)){i=r+1|0;break t}i=129-r|0,f=(i|0)<(a|0)?i:a,i=f+r|0,(e|0)!=(i-1>>>6|0)&&(e=(c+h|0)+8|0,y=t[e>>2],e=64-o|0,o=e&31,n=((e&63)>>>0<32?y<<o:0)|n),e=f&31,n=b+(n&(((f&63)>>>0<32?-1<<e:0)^-1))|0,b=n>>>w&1,t[g+(r<<2)>>2]=M(n-(b<<a)|0,d),y=r}if(r=i,!((r|0)<129))break}return D=c+32|0,y+1|0}function gr(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0;t:{if((a|0)>0){e=r+((a<<5)-32&-64)|0,r=t[e>>2],a=t[e+4>>2]&1048575,t[i>>2]=r,t[i+4>>2]=a,r=t[e+8>>2],a=t[e+12>>2]<<12|r>>>20,t[i+8>>2]=r<<12&-4096|t[e+4>>2]>>>20,t[i+12>>2]=a&1048575,r=t[e+16>>2],a=t[e+20>>2]<<24|r>>>8,t[i+16>>2]=r<<24&-16777216|t[e+12>>2]>>>8,t[i+20>>2]=a&1048575,n=t[e+24>>2]<<4&1048560,a=t[e+20>>2],r=a>>>28|0,t[i+24>>2]=(a&268435455)<<4|t[e+16>>2]>>>28,t[i+28>>2]=r|n,r=t[e+28>>2],a=r>>>16|0,t[i+32>>2]=(r&65535)<<16|t[e+24>>2]>>>16,t[i+36>>2]=a,r=t[e+36>>2]&1048575,t[i+40>>2]=t[e+32>>2],t[i+44>>2]=r,n=e+40|0,r=t[n>>2],a=t[n+4>>2]<<12|r>>>20,s=i+48|0,t[s>>2]=r<<12&-4096|t[e+36>>2]>>>20,t[s+4>>2]=a&1048575,s=e+48|0,r=t[s>>2],a=t[s+4>>2]<<24|r>>>8,o=i+56|0,t[o>>2]=r<<24&-16777216|t[n+4>>2]>>>8,t[o+4>>2]=a&1048575,e=e+56|0,r=t[e>>2],o=r<<4&1048560,a=t[s+4>>2],r=a>>>28|0,n=i- -64|0,t[n>>2]=(a&268435455)<<4|t[s>>2]>>>28,t[n+4>>2]=r|o,r=i+72|0,n=t[e+4>>2],t[r>>2]=(n&65535)<<16|t[e>>2]>>>16,t[r+4>>2]=n>>>16;break t}e=r+((a^-1)/2<<6)|0,r=t[e>>2],a=t[e+4>>2]&1048575,t[i>>2]=r,t[i+4>>2]=a,r=t[e+8>>2],a=t[e+12>>2]<<12|r>>>20,t[i+8>>2]=r<<12&-4096|t[e+4>>2]>>>20,t[i+12>>2]=a&1048575,r=t[e+16>>2],a=t[e+20>>2]<<24|r>>>8,t[i+16>>2]=r<<24&-16777216|t[e+12>>2]>>>8,t[i+20>>2]=a&1048575,n=t[e+24>>2]<<4&1048560,a=t[e+20>>2],r=a>>>28|0,t[i+24>>2]=(a&268435455)<<4|t[e+16>>2]>>>28,t[i+28>>2]=r|n,r=t[e+28>>2],a=r>>>16|0,t[i+32>>2]=(r&65535)<<16|t[e+24>>2]>>>16,t[i+36>>2]=a,o=t[e+36>>2]&1048575,f=t[e+32>>2],t[i+40>>2]=f,t[i+44>>2]=o,n=e+40|0,r=t[n>>2],a=t[n+4>>2]<<12|r>>>20,y=i+48|0,s=y,b=r<<12&-4096|t[e+36>>2]>>>20,t[s>>2]=b,g=a&1048575,t[s+4>>2]=g,s=e+48|0,r=t[s>>2],a=t[s+4>>2]<<24|r>>>8,c=i+56|0,n=r<<24&-16777216|t[n+4>>2]>>>8,t[c>>2]=n,w=a&1048575,t[c+4>>2]=w,e=e+56|0,r=t[e>>2],h=r<<4&1048560,a=t[s+4>>2],r=a>>>28|0,d=i- -64|0,a=(a&268435455)<<4|t[s>>2]>>>28,t[d>>2]=a,s=r|h,t[d+4>>2]=s,h=t[e>>2],r=t[e+4>>2],t[d>>2]=-4-a,t[d+4>>2]=4194303-((a>>>0>4294967292)+s|0),t[c>>2]=-4-n,t[c+4>>2]=4194303-((n>>>0>4294967292)+w|0),t[y>>2]=-4-b,t[y+4>>2]=4194303-((b>>>0>4294967292)+g|0),t[i+40>>2]=-3908-f,t[i+44>>2]=4194299-((f>>>0>4294963388)+o|0),e=r>>>16|0,a=i+72|0,r=(r&65535)<<16|h>>>16,t[a>>2]=-4-r,t[a+4>>2]=262143-((r>>>0>4294967292)+e|0)}t[i+80>>2]=0}function wr(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0;o=D-1120|0,D=o;t:{if(t[r+120>>2]){t[i+120>>2]=t[a+80>>2],n=o+1080|0,Ve(n,e),r=o+1040|0,U0(r,n,e),U0(i,a,n),U0(i+40|0,a+40|0,r),r=i+88|0,t[r>>2]=0,t[r+4>>2]=0,t[i+80>>2]=1,t[i+84>>2]=0,r=i+96|0,t[r>>2]=0,t[r+4>>2]=0,r=i+104|0,t[r>>2]=0,t[r+4>>2]=0,i=i+112|0,t[i>>2]=0,t[i+4>>2]=0;break t}if(t[a+80>>2]){Ze(i,r,128);break t}g0=o+1080|0,x0=r+80|0,U0(g0,x0,e),e=t[o+1084>>2],T=e,h=t[o+1080>>2],n=h,e=e<<1|n>>>31,g=o+408|0,I=t[o+1104>>2],k=t[o+1108>>2],S=n<<1,H=e,P(g,I,k,0,0,S,e,0,0),e=t[o+1092>>2],l0=e,d0=t[o+1088>>2],s=d0,e=e<<1|s>>>31,f=o+616|0,E=t[o+1096>>2],x=t[o+1100>>2],s=s<<1,d=e,P(f,E,x,0,0,s,e,0,0),w=o+568|0,n=t[o+1112>>2],e=t[o+1116>>2],P(w,n,e,0,0,n,e,0,0),y=o+552|0,P(y,t[o+568>>2],t[o+572>>2],0,0,15632,16,0,0),e=e<<1|n>>>31,t0=o+520|0,V=n<<1,C=e,P(t0,V,e,0,0,h,T,0,0),K=o+424|0,P(K,I,k,0,0,s,d,0,0),Z=o+600|0,P(Z,E,x,0,0,E,x,0,0),b=o+536|0,e=w+8|0,P(b,t[e>>2],t[e+4>>2],0,0,64028672,65536,0,0),s0=o+664|0,P(s0,h,T,0,0,h,T,0,0),r0=o+504|0,P(r0,V,C,0,0,d0,l0,0,0),$=o+440|0,P($,I,k,0,0,E<<1,x<<1|E>>>31,0,0),T=t[o+412>>2],e=T+t[o+620>>2]|0,c=t[o+408>>2],s=t[o+616>>2],n=c+s|0,d=t[o+552>>2],L=n+d|0,s=n>>>0<s>>>0?e+1|0:e,e=s+t[o+556>>2]|0,d=d>>>0>L>>>0?e+1|0:e,h=(s|0)==(d|0)&n>>>0>L>>>0|s>>>0>d>>>0,e=y+8|0,w=t[e>>2],y=t[e+4>>2],c=(s|0)==(T|0)&n>>>0<c>>>0|s>>>0<T>>>0,s=f+8|0,n=t[s>>2],e=g+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=c+f|0,e=(n>>>0<f>>>0?e+1|0:e)+y|0,s=n,n=n+w|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+h|0,e=s>>>0>n>>>0?e+1|0:e,X=d,w=n<<12|d>>>20,s=e,c=e<<12|n>>>20,j=t[o+424>>2],n=t[o+600>>2],h=j+n|0,e0=t[o+428>>2],e=e0+t[o+604>>2]|0,e=n>>>0>h>>>0?e+1|0:e,n=t[o+520>>2],y=n+h|0,g=e,e=e+t[o+524>>2]|0,e=n>>>0>y>>>0?e+1|0:e,n=t[o+536>>2],d=n+y|0,f=e,e=e+t[o+540>>2]|0,n=n>>>0>d>>>0?e+1|0:e,e=n+c|0,_=o+344|0,Y=_,w=d+w|0,c=w>>>0<d>>>0?e+1|0:e,z=(n|0)==(c|0)&d>>>0>w>>>0|n>>>0>c>>>0,R=(n|0)==(f|0)&d>>>0<y>>>0|n>>>0<f>>>0,e=b+8|0,N=t[e>>2],A=t[e+4>>2],T=(f|0)==(g|0)&h>>>0>y>>>0|f>>>0<g>>>0,e=t0+8|0,b=t[e>>2],f=t[e+4>>2],y=(g|0)==(e0|0)&h>>>0<j>>>0|g>>>0<e0>>>0,d=Z+8|0,n=t[d>>2],e=K+8|0,h=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>h>>>0?e+1|0:e,n=h+y|0,e=(n>>>0<h>>>0?e+1|0:e)+f|0,d=n,n=n+b|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+T|0,e=(d>>>0>n>>>0?e+1|0:e)+A|0,d=n,n=n+N|0,e=d>>>0>n>>>0?e+1|0:e,d=n+R|0,e=d>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+d|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+z|0,e=s>>>0>n>>>0?e+1|0:e,s=c,y=n<<12|s>>>20,d=e,c=e<<12|n>>>20,T=t[o+504>>2],n=t[o+440>>2],g=T+n|0,R=t[o+508>>2],e=R+t[o+444>>2]|0,n=n>>>0>g>>>0?e+1|0:e,e=n+c|0,y=y+g|0,e=y>>>0<g>>>0?e+1|0:e,f=y<<4&-16,c=e,h=(e<<4|y>>>28)&16777215,A=s,P(Y,f|s>>>16&15,h,0,0,977,1,0,0),s=r+8|0,e=t[s+4>>2],h=o+1e3|0,Z=h+8|0,t[Z>>2]=t[s>>2],t[Z+4>>2]=e,s=r+16|0,e=t[s+4>>2],j=h+16|0,t[j>>2]=t[s>>2],t[j+4>>2]=e,s=r+24|0,e=t[s+4>>2],Y=h+24|0,t[Y>>2]=t[s>>2],t[Y+4>>2]=e,s=r+32|0,e=t[s+4>>2],z=h+32|0,t[z>>2]=t[s>>2],t[z+4>>2]=e,e=t[r+4>>2],t[o+1e3>>2]=t[r>>2],t[o+1004>>2]=e,b0=t[o+348>>2],e=b0+t[o+668>>2]|0,K=t[o+344>>2],s=t[o+664>>2],f=K+s|0,t[o+1040>>2]=f,s=s>>>0>f>>>0?e+1|0:e,t[o+1044>>2]=s&1048575,C0=o+648|0,P(C0,d0,l0,0,0,S,H,0,0),u0=o+488|0,P(u0,V,C,0,0,E,x,0,0),e0=o+456|0,P(e0,I,k,0,0,I,k,0,0),t0=o+392|0,N=t0,b=(n|0)==(c|0)&y>>>0<g>>>0|n>>>0>c>>>0,g=(n|0)==(R|0)&g>>>0<T>>>0|n>>>0<R>>>0,y=$+8|0,n=t[y>>2],e=r0+8|0,T=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>T>>>0?e+1|0:e,y=g+T|0,e=y>>>0<T>>>0?e+1|0:e,d=d>>>20|0,n=d+y|0,e=d>>>0>n>>>0?e+1|0:e,d=n,n=n+b|0,e=d>>>0>n>>>0?e+1|0:e,g=n<<12|c>>>20,y=e,c=e<<12|n>>>20,h=t[o+492>>2],e=h+t[o+460>>2]|0,r0=t[o+488>>2],d=t[o+456>>2],n=r0+d|0,R=n,T=n+g|0,d=n>>>0<d>>>0?e+1|0:e,e=d+c|0,g=T>>>0<n>>>0?e+1|0:e,P(N,T,g&1048575,0,0,15632,16,0,0),f=(s|0)==(b0|0)&f>>>0<K>>>0|s>>>0<b0>>>0,c=s0+8|0,n=t[c>>2],e=_+8|0,b=n+t[e>>2]|0,e=t[e+4>>2]+t[c+4>>2]|0,e=n>>>0>b>>>0?e+1|0:e,n=f+b|0,e=n>>>0<b>>>0?e+1|0:e,b=n<<12|s>>>20,c=e,f=e<<12|n>>>20,s0=t[o+396>>2],e=s0+t[o+652>>2]|0,$=t[o+392>>2],s=t[o+648>>2],n=$+s|0,N=n,b=n+b|0,s=n>>>0<s>>>0?e+1|0:e,e=s+f|0,t[o+1048>>2]=b,f=b>>>0<n>>>0?e+1|0:e,t[o+1052>>2]=f&1048575,_=o+584|0,P(_,E,x,0,0,S,H,0,0),K=o+632|0,P(K,d0,l0,0,0,d0,l0,0,0),H=o+472|0,P(H,V,C,0,0,I,k,0,0),S=o+376|0,k=S,x=(d|0)==(g|0)&T>>>0<R>>>0|d>>>0>g>>>0,T=(d|0)==(h|0)&R>>>0<r0>>>0|d>>>0<h>>>0,d=e0+8|0,n=t[d>>2],e=u0+8|0,I=n+t[e>>2]|0,e=t[e+4>>2]+t[d+4>>2]|0,e=n>>>0>I>>>0?e+1|0:e,d=T+I|0,e=d>>>0<I>>>0?e+1|0:e,y=y>>>20|0,n=d+y|0,e=y>>>0>n>>>0?e+1|0:e,d=n,n=n+x|0,e=d>>>0>n>>>0?e+1|0:e,C=n<<12|g>>>20,y=t[o+472>>2],g=C+y|0,d=e,R=e<<12|n>>>20,e=R+t[o+476>>2]|0,T=y>>>0>g>>>0?e+1|0:e,P(k,g,T,0,0,15632,16,0,0),b=(s|0)==(f|0)&b>>>0<N>>>0|s>>>0>f>>>0,h=(s|0)==(s0|0)&N>>>0<$>>>0|s>>>0<s0>>>0,s=C0+8|0,n=t[s>>2],e=t0+8|0,x=n+t[e>>2]|0,e=t[e+4>>2]+t[s+4>>2]|0,e=n>>>0>x>>>0?e+1|0:e,s=h+x|0,e=s>>>0<x>>>0?e+1|0:e,c=c>>>20|0,n=s+c|0,e=c>>>0>n>>>0?e+1|0:e,s=n,n=n+b|0,e=s>>>0>n>>>0?e+1|0:e,h=n<<12|f>>>20,s=e,k=e<<12|n>>>20,E=t[o+584>>2],n=t[o+632>>2],f=E+n|0,N=t[o+588>>2],e=N+t[o+636>>2]|0,x=n>>>0>f>>>0?e+1|0:e,e=x+t[o+380>>2]|0,n=t[o+376>>2],c=n+f|0,b=c,h=c+h|0,n=n>>>0>c>>>0?e+1|0:e,e=n+k|0,t[o+1056>>2]=h,c=h>>>0<c>>>0?e+1|0:e,t[o+1060>>2]=c&1048575,I=o+360|0,k=(T|0)==(R|0)&g>>>0<C>>>0|T>>>0<R>>>0,e=H+8|0,T=t[e>>2],e=t[e+4>>2],d=d>>>20|0,y=d,d=d+T|0,e=y>>>0>d>>>0?e+1|0:e,y=d,d=d+k|0,e=y>>>0>d>>>0?e+1|0:e,P(I,d,e,0,0,64028672,65536,0,0),k=(n|0)==(c|0)&h>>>0<b>>>0|n>>>0>c>>>0,T=(n|0)==(x|0)&f>>>0>b>>>0|n>>>0<x>>>0,e=S+8|0,b=t[e>>2],g=t[e+4>>2],h=(x|0)==(N|0)&f>>>0<E>>>0|x>>>0<N>>>0,y=K+8|0,n=t[y>>2],e=_+8|0,f=n+t[e>>2]|0,e=t[e+4>>2]+t[y+4>>2]|0,e=n>>>0>f>>>0?e+1|0:e,n=f+h|0,e=(n>>>0<f>>>0?e+1|0:e)+g|0,d=n,n=n+b|0,e=d>>>0>n>>>0?e+1|0:e,y=n+T|0,e=y>>>0<n>>>0?e+1|0:e,s=s>>>20|0,n=s+y|0,e=s>>>0>n>>>0?e+1|0:e,s=n,n=n+k|0,e=s>>>0>n>>>0?e+1|0:e,y=n<<12|c>>>20,s=e,f=e<<12|n>>>20,b=t[o+360>>2],c=L&-2,n=b+c|0,T=t[o+364>>2],e=T+(X&1048575)|0,h=n>>>0<c>>>0?e+1|0:e,e=h+f|0,d=y,y=n,c=d+n|0,t[o+1064>>2]=c,n=n>>>0>c>>>0?e+1|0:e,t[o+1068>>2]=n&1048575,g=A&65535,f=(n|0)==(h|0)&c>>>0<y>>>0|n>>>0<h>>>0,c=(h|0)==(T|0)&y>>>0<b>>>0|h>>>0<T>>>0,e=I+8|0,y=c+t[e>>2]|0,e=t[e+4>>2],e=c>>>0>y>>>0?e+1|0:e,s=s>>>20|0,d=s,s=s+y|0,e=d>>>0>s>>>0?e+1|0:e,d=s,s=s+f|0,e=d>>>0>s>>>0?e+1|0:e,n=s<<12|n>>>20,c=n+w|0,e=g+(e<<12|s>>>20)|0,t[o+1072>>2]=c,t[o+1076>>2]=n>>>0>c>>>0?e+1|0:e,w=Z,f=t[w>>2],h=t[w+4>>2],y=t[o+1004>>2],c=t[z>>2],n=t[z+4>>2],b=n,e=t[o+1e3>>2],s=I0(n>>>16|0,0,977,1),n=e+s|0,e=y+i0|0,y=n>>>0<s>>>0?e+1|0:e,e=h,s=y>>>20|0,d=s,s=s+f|0,e=d>>>0>s>>>0?e+1|0:e,T=s,t[w>>2]=s,Z=e&1048575,t[w+4>>2]=Z,w=j,f=t[w>>2],s=e,e=t[w+4>>2],s=s>>>20|0,d=s,s=s+f|0,e=d>>>0>s>>>0?e+1|0:e,g=s,t[w>>2]=s,j=e&1048575,t[w+4>>2]=j,w=Y,f=t[w>>2],s=e,e=t[w+4>>2],s=s>>>20|0,d=s,s=s+f|0,e=d>>>0>s>>>0?e+1|0:e,f=s,t[w>>2]=s,Y=e&1048575,t[w+4>>2]=Y,w=z,s=e,e=b&65535,s=s>>>20|0,d=s,s=s+c|0,e=d>>>0>s>>>0?e+1|0:e,I=s,t[w>>2]=s,X=e,t[w+4>>2]=e,w=n,t[o+1e3>>2]=n,z=y&1048575,t[o+1004>>2]=z,V=o+1040|0,U0(o+960|0,a,V),x=o+920|0,L=x+8|0,e=r+48|0,b=t[e>>2],h=t[e+4>>2],y=t[r+44>>2],e=r+72|0,c=t[e>>2],n=t[e+4>>2],A=n,e=t[r+40>>2],s=I0(n>>>16|0,0,977,1),n=e+s|0,e=y+i0|0,y=n>>>0<s>>>0?e+1|0:e,e=h,s=y>>>20|0,d=s,s=s+b|0,e=d>>>0>s>>>0?e+1|0:e,C=s,t[L>>2]=s,R=e&1048575,t[L+4>>2]=R,L=x+16|0,s=r+56|0,b=t[s>>2],h=t[s+4>>2],s=e,e=h,s=s>>>20|0,d=s,s=s+b|0,e=d>>>0>s>>>0?e+1|0:e,E=s,t[L>>2]=s,N=e&1048575,t[L+4>>2]=N,L=x+24|0,s=r- -64|0,b=t[s>>2],h=t[s+4>>2],s=e,e=h,s=s>>>20|0,d=s,s=s+b|0,e=d>>>0>s>>>0?e+1|0:e,k=s,t[L>>2]=s,H=e&1048575,t[L+4>>2]=H,b=x+32|0,s=e,e=A&65535,s=s>>>20|0,c=s+c|0,e=s>>>0>c>>>0?e+1|0:e,x=c,t[b>>2]=c,s=e,t[b+4>>2]=e,L=n,t[o+920>>2]=n,S=y&1048575,t[o+924>>2]=S,e=o+880|0,U0(e,a+40|0,V),U0(e,e,g0),n=o,a=t[n+960>>2],h=(a-w|0)-3908|0,e=(t[n+964>>2]-((a>>>0<w>>>0)+z|0)|0)+4194299|0,t[n+840>>2]=h,y=h>>>0<4294963388?e+1|0:e,t[n+844>>2]=y,a=t[n+968>>2],b=(a-T|0)-4|0,e=(t[n+972>>2]-((a>>>0<T>>>0)+Z|0)|0)+4194303|0,t[n+848>>2]=b,w=b>>>0<4294967292?e+1|0:e,t[n+852>>2]=w,a=t[n+976>>2],A=(a-g|0)-4|0,e=(t[n+980>>2]-((a>>>0<g>>>0)+j|0)|0)+4194303|0,t[n+856>>2]=A,g=A>>>0<4294967292?e+1|0:e,t[n+860>>2]=g,a=t[n+984>>2],T=(a-f|0)-4|0,e=(t[n+988>>2]-((a>>>0<f>>>0)+Y|0)|0)+4194303|0,t[n+864>>2]=T,f=T>>>0<4294967292?e+1|0:e,t[n+868>>2]=f,e=t[n+992>>2],a=(e-I|0)-4|0,e=(t[n+996>>2]-((e>>>0<I>>>0)+X|0)|0)+262143|0,t[n+872>>2]=a,c=a>>>0<4294967292?e+1|0:e,t[n+876>>2]=c,e=t[n+912>>2],X=(x-e|0)-4|0,e=(s-(t[n+916>>2]+(e>>>0>x>>>0)|0)|0)+262143|0,s=X,t[n+832>>2]=s,d=s>>>0<4294967292?e+1|0:e,t[n+836>>2]=d,e=t[n+904>>2],j=(k-e|0)-4|0,e=(H-(t[n+908>>2]+(e>>>0>k>>>0)|0)|0)+4194303|0,t[n+824>>2]=j,I=j>>>0<4294967292?e+1|0:e,t[n+828>>2]=I,e=t[n+896>>2],Y=(E-e|0)-4|0,e=(N-(t[n+900>>2]+(e>>>0>E>>>0)|0)|0)+4194303|0,t[n+816>>2]=Y,k=Y>>>0<4294967292?e+1|0:e,t[n+820>>2]=k,e=t[n+888>>2],z=(C-e|0)-4|0,e=(R-(t[n+892>>2]+(e>>>0>C>>>0)|0)|0)+4194303|0,t[n+808>>2]=z,x=z>>>0<4294967292?e+1|0:e,t[n+812>>2]=x,e=t[n+880>>2],V=(L-e|0)-3908|0,e=(S-(t[n+884>>2]+(e>>>0>L>>>0)|0)|0)+4194299|0,t[n+800>>2]=V,L=V>>>0<4294963388?e+1|0:e,t[n+804>>2]=L,n=I0(c>>>16|0,0,977,1)+h|0,e=i0+y|0,e=n>>>0<h>>>0?e+1|0:e,E=e&1048575,$=E;e:{if(X=n,_=n^976,K=E^1,((_|0)!=-1|(K|0)!=1048575)&(n|E)!=0||(Z=c&65535,n=e,e=w,n=(n>>>20|0)+b|0,e=n>>>0<b>>>0?e+1|0:e,R=n,N=e,e=g,n=(N>>>20|0)+A|0,e=n>>>0<A>>>0?e+1|0:e,H=n,S=e,e=f,n=(S>>>20|0)+T|0,e=n>>>0<T>>>0?e+1|0:e,C=n,E=e,e=Z,n=E>>>20|0,Z=n,n=a+n|0,e=Z>>>0>n>>>0?e+1|0:e,n|(C|(H|(R|X)))|(e|(E&1048575|(S&1048575|(N&1048575|$))))&&((R&_&H&C&n)!=-1?e=1:e=(N&K&S&E&(e^983040))!=1048575,e)))break e;a=I0(d>>>16|0,0,977,1)+V|0,e=i0+L|0,e=a>>>0<V>>>0?e+1|0:e,c=e&1048575,A=c;n:{if(n=a,T=n^976,b=c^1,((T|0)!=-1|(b|0)!=1048575)&(n|c)!=0||(g=d&65535,a=e,e=x,a=(a>>>20|0)+z|0,e=a>>>0<z>>>0?e+1|0:e,f=a,h=e,e=k,a=(h>>>20|0)+Y|0,e=a>>>0<Y>>>0?e+1|0:e,w=a,y=e,e=I,a=(y>>>20|0)+j|0,e=a>>>0<j>>>0?e+1|0:e,c=a,d=e,e=g,a=d>>>20|0,g=a,a=a+s|0,e=g>>>0>a>>>0?e+1|0:e,a|(c|(w|(n|f)))|(e|(d&1048575|(y&1048575|(h&1048575|A))))&&((f&T&w&c&a)!=-1?a=1:a=(h&b&y&d&(e^983040))!=1048575,a)))break n;if(t[r+120>>2]){t[i+120>>2]=1,me(i,120);break t}wn(i,r);break t}t[i+120>>2]=1,me(i,120);break t}t[i+120>>2]=0,e0=o+840|0,U0(i+80|0,x0,e0),H=o+312|0,d=T,s=f,k=h<<1,f=y,I=f<<1|h>>>31,P(H,d,s,0,0,k,I,0,0),C=o+232|0,n=A,r=g,y=b<<1,T=w,x=b,w=w<<1|b>>>31,P(C,n,r,0,0,y,w,0,0),b=o+168|0,P(b,a,c,0,0,a,c,0,0),A=o+152|0,P(A,t[o+168>>2],t[o+172>>2],0,0,15632,16,0,0),e=c<<1|a>>>31,t0=o+120|0,E=a<<1,L=e,P(t0,E,e,0,0,h,f,0,0),r0=o+280|0,P(r0,d,s,0,0,y,w,0,0),$=o+216|0,P($,n,r,0,0,n,r,0,0),S=o+136|0,a=b+8|0,P(S,t[a>>2],t[a+4>>2],0,0,64028672,65536,0,0),_=o+328|0,P(_,h,f,0,0,h,f,0,0),K=o+104|0,P(K,E,e,0,0,x,T,0,0),f=r,X=n,e=r<<1|n>>>31,Z=o+184|0,b=d,g=s,P(Z,d,s,0,0,n<<1,e,0,0),w=t[o+316>>2],e=w+t[o+236>>2]|0,s=t[o+312>>2],a=t[o+232>>2],r=s+a|0,n=t[o+152>>2],h=r+n|0,a=r>>>0<a>>>0?e+1|0:e,e=a+t[o+156>>2]|0,n=n>>>0>h>>>0?e+1|0:e,y=(a|0)==(n|0)&r>>>0>h>>>0|a>>>0>n>>>0,e=A+8|0,c=t[e>>2],d=t[e+4>>2],s=(a|0)==(w|0)&r>>>0<s>>>0|a>>>0<w>>>0,e=C+8|0,a=t[e>>2],r=H+8|0,w=a+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=a>>>0>w>>>0?e+1|0:e,r=s+w|0,e=(r>>>0<w>>>0?e+1|0:e)+d|0,a=r,r=r+c|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+y|0,e=a>>>0>r>>>0?e+1|0:e,y=n,d=r<<12|n>>>20,a=e,s=e<<12|r>>>20,j=t[o+280>>2],r=t[o+216>>2],w=j+r|0,u0=t[o+284>>2],e=u0+t[o+220>>2]|0,e=r>>>0>w>>>0?e+1|0:e,r=t[o+120>>2],c=r+w|0,C=e,e=e+t[o+124>>2]|0,e=r>>>0>c>>>0?e+1|0:e,r=t[o+136>>2],n=r+c|0,A=e,e=e+t[o+140>>2]|0,r=r>>>0>n>>>0?e+1|0:e,e=r+s|0,Y=o+88|0,s=n+d|0,d=s>>>0<n>>>0?e+1|0:e,z=(r|0)==(d|0)&n>>>0>s>>>0|r>>>0>d>>>0,V=(r|0)==(A|0)&n>>>0<c>>>0|r>>>0<A>>>0,r=S+8|0,R=t[r>>2],N=t[r+4>>2],H=(A|0)==(C|0)&c>>>0<w>>>0|A>>>0<C>>>0,r=t0+8|0,S=t[r>>2],A=t[r+4>>2],c=(C|0)==(u0|0)&w>>>0<j>>>0|C>>>0<u0>>>0,e=$+8|0,n=t[e>>2],r=r0+8|0,w=n+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=n>>>0>w>>>0?e+1|0:e,r=c+w|0,e=(r>>>0<w>>>0?e+1|0:e)+A|0,n=r,r=r+S|0,e=n>>>0>r>>>0?e+1|0:e,n=r,r=r+H|0,e=(n>>>0>r>>>0?e+1|0:e)+N|0,n=r,r=r+R|0,e=n>>>0>r>>>0?e+1|0:e,n=r+V|0,e=n>>>0<r>>>0?e+1|0:e,a=a>>>20|0,r=a+n|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+z|0,e=a>>>0>r>>>0?e+1|0:e,a=d,c=r<<12|a>>>20,n=e,d=e<<12|r>>>20,S=t[o+104>>2],r=t[o+184>>2],A=S+r|0,z=t[o+108>>2],e=z+t[o+188>>2]|0,r=r>>>0>A>>>0?e+1|0:e,e=r+d|0,c=c+A|0,e=c>>>0<A>>>0?e+1|0:e,C=c<<4&-16,w=a,d=e,P(Y,C|a>>>16&15,(e<<4|c>>>28)&16777215,0,0,977,1,0,0),V=o+264|0,P(V,x,T,0,0,k,I,0,0),R=o+72|0,P(R,E,L,0,0,X,f,0,0),N=o+296|0,P(N,b,g,0,0,b,g,0,0),H=o+56|0,C=(r|0)==(e|0)&c>>>0<A>>>0|r>>>0>e>>>0,c=(r|0)==(z|0)&A>>>0<S>>>0|r>>>0<z>>>0,e=Z+8|0,a=t[e>>2],r=K+8|0,A=a+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=a>>>0>A>>>0?e+1|0:e,a=c+A|0,e=a>>>0<A>>>0?e+1|0:e,n=n>>>20|0,r=a+n|0,e=n>>>0>r>>>0?e+1|0:e,a=r,r=r+C|0,e=a>>>0>r>>>0?e+1|0:e,d=r<<12|d>>>20,a=e,n=e<<12|r>>>20,S=t[o+72>>2],r=t[o+296>>2],c=S+r|0,z=t[o+76>>2],e=z+t[o+300>>2]|0,r=r>>>0>c>>>0?e+1|0:e,e=r+n|0,d=d+c|0,e=d>>>0<c>>>0?e+1|0:e,n=e,P(H,d,e&1048575,0,0,15632,16,0,0),C=o+200|0,P(C,X,f,0,0,k,I,0,0),I=o+248|0,P(I,x,T,0,0,x,T,0,0),A=o+40|0,P(A,E,L,0,0,b,g,0,0),T=o+24|0,g=T,f=(r|0)==(e|0)&d>>>0<c>>>0|r>>>0>e>>>0,c=(r|0)==(z|0)&c>>>0<S>>>0|r>>>0<z>>>0,e=N+8|0,d=t[e>>2],r=R+8|0,b=d+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=d>>>0>b>>>0?e+1|0:e,d=c+b|0,e=d>>>0<b>>>0?e+1|0:e,a=a>>>20|0,r=a+d|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+f|0,e=a>>>0>r>>>0?e+1|0:e,d=r<<12|n>>>20,n=t[o+40>>2],f=d+n|0,a=e,r=e<<12|r>>>20,e=r+t[o+44>>2]|0,e=n>>>0>f>>>0?e+1|0:e,P(g,f,e,0,0,15632,16,0,0),k=o+8|0,c=k,d=(r|0)==(e|0)&d>>>0>f>>>0|r>>>0>e>>>0,r=A+8|0,n=t[r>>2],e=t[r+4>>2],a=a>>>20|0,r=a+n|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+d|0,e=a>>>0>r>>>0?e+1|0:e,P(c,r,e,0,0,64028672,65536,0,0),f=t[o+92>>2],e=f+t[o+332>>2]|0,c=t[o+88>>2],a=t[o+328>>2],r=c+a|0,t[o+760>>2]=-3908-r,n=r>>>0<a>>>0?e+1|0:e,t[o+764>>2]=4194299-((n&1048575)+(r>>>0>4294963388)|0),c=(n|0)==(f|0)&r>>>0<c>>>0|n>>>0<f>>>0,e=_+8|0,a=t[e>>2],r=Y+8|0,f=a+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=a>>>0>f>>>0?e+1|0:e,r=c+f|0,e=r>>>0<f>>>0?e+1|0:e,c=r<<12|n>>>20,a=e,g=e<<12|r>>>20,A=t[o+60>>2],e=A+t[o+268>>2]|0,b=t[o+56>>2],r=t[o+264>>2],n=b+r|0,f=n,c=n+c|0,r=r>>>0>n>>>0?e+1|0:e,e=r+g|0,n=c>>>0<n>>>0?e+1|0:e,e=c,t[o+768>>2]=-4-e,t[o+772>>2]=4194303-((n&1048575)+(e>>>0>4294967292)|0),g=(r|0)==(n|0)&e>>>0<f>>>0|r>>>0>n>>>0,f=(r|0)==(A|0)&f>>>0<b>>>0|r>>>0<A>>>0,e=V+8|0,c=t[e>>2],r=H+8|0,b=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>b>>>0?e+1|0:e,c=f+b|0,e=c>>>0<b>>>0?e+1|0:e,a=a>>>20|0,r=a+c|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+g|0,e=a>>>0>r>>>0?e+1|0:e,c=r<<12|n>>>20,a=e,n=e<<12|r>>>20,x=t[o+200>>2],r=t[o+248>>2],g=x+r|0,E=t[o+204>>2],e=E+t[o+252>>2]|0,e=r>>>0>g>>>0?e+1|0:e,r=t[o+24>>2],f=r+g|0,b=e,e=e+t[o+28>>2]|0,r=r>>>0>f>>>0?e+1|0:e,e=r+n|0,c=c+f|0,e=c>>>0<f>>>0?e+1|0:e,t[o+776>>2]=-4-c,n=e,t[o+780>>2]=4194303-((e&1048575)+(c>>>0>4294967292)|0),L=(r|0)==(e|0)&c>>>0<f>>>0|r>>>0>e>>>0,X=(r|0)==(b|0)&f>>>0<g>>>0|r>>>0<b>>>0,r=T+8|0,A=t[r>>2],T=t[r+4>>2],f=(b|0)==(E|0)&g>>>0<x>>>0|b>>>0<E>>>0,e=I+8|0,c=t[e>>2],r=C+8|0,g=c+t[r>>2]|0,e=t[r+4>>2]+t[e+4>>2]|0,e=c>>>0>g>>>0?e+1|0:e,r=f+g|0,e=(r>>>0<g>>>0?e+1|0:e)+T|0,d=r,r=r+A|0,e=d>>>0>r>>>0?e+1|0:e,c=r+X|0,e=c>>>0<r>>>0?e+1|0:e,a=a>>>20|0,r=a+c|0,e=a>>>0>r>>>0?e+1|0:e,a=r,r=r+L|0,e=a>>>0>r>>>0?e+1|0:e,c=r<<12|n>>>20,a=e,b=e<<12|r>>>20,T=t[o+12>>2],e=T+(y&1048575)|0,g=t[o+8>>2],n=h&-2,r=g+n|0,h=r,c=r+c|0,f=r>>>0<n>>>0?e+1|0:e,e=f+b|0,t[o+784>>2]=-4-c,r=c>>>0<r>>>0?e+1|0:e,t[o+788>>2]=4194303-((r&1048575)+(c>>>0>4294967292)|0),n=o,y=s,w=w&65535,c=(r|0)==(f|0)&c>>>0<h>>>0|r>>>0<f>>>0,s=(f|0)==(T|0)&h>>>0<g>>>0|f>>>0<T>>>0,e=k+8|0,d=s+t[e>>2]|0,e=t[e+4>>2],e=s>>>0>d>>>0?e+1|0:e,a=a>>>20|0,s=a,a=a+d|0,e=s>>>0>a>>>0?e+1|0:e,s=a,a=a+c|0,e=s>>>0>a>>>0?e+1|0:e,r=a<<12|r>>>20,s=r+y|0,e=w+(e<<12|a>>>20)|0,t[n+792>>2]=-4-s,t[n+796>>2]=262143-((s>>>0>4294967292)+(r>>>0>s>>>0?e+1|0:e)|0),R=n+720|0,r=n+760|0,U0(R,r,e0),H=n+680|0,U0(H,n+1e3|0,r),S=n+800|0,Ve(i,S),r=t[n+752>>2],s=r+t[i+32>>2]|0,e=t[i+36>>2]+t[n+756>>2]|0,a=r>>>0>s>>>0?e+1|0:e,r=t[n+712>>2],C=r,e=t[n+716>>2],E=e,e=(e<<1|r>>>31)+a|0,r=r<<1,a=r,r=r+s|0,e=a>>>0>r>>>0?e+1|0:e,b=r,t[i+32>>2]=r,h=e,t[i+36>>2]=e,r=i,i=t[n+744>>2],s=i+t[r+24>>2]|0,e=t[r+28>>2]+t[n+748>>2]|0,a=i>>>0>s>>>0?e+1|0:e,i=t[n+704>>2],I=i,e=t[n+708>>2],k=e,e=(e<<1|i>>>31)+a|0,i=i<<1,a=i,i=i+s|0,e=a>>>0>i>>>0?e+1|0:e,g=i,t[r+24>>2]=i,w=e,t[r+28>>2]=e,i=t[n+736>>2],s=i+t[r+16>>2]|0,e=t[r+20>>2]+t[n+740>>2]|0,a=i>>>0>s>>>0?e+1|0:e,i=t[n+696>>2],x=i,e=t[n+700>>2],L=e,e=(e<<1|i>>>31)+a|0,i=i<<1,a=i,i=i+s|0,e=a>>>0>i>>>0?e+1|0:e,f=i,t[r+16>>2]=i,y=e,t[r+20>>2]=e,i=t[n+728>>2],a=i+t[r+8>>2]|0,e=t[r+12>>2]+t[n+732>>2]|0,i=i>>>0>a>>>0?e+1|0:e,e=t[n+692>>2],X=e,N=t[n+688>>2],s=N,e=(e<<1|s>>>31)+i|0,s=s<<1,c=a+s|0,e=s>>>0>c>>>0?e+1|0:e,t[r+8>>2]=c,d=e,t[r+12>>2]=e,i=t[n+720>>2],s=i+t[r>>2]|0,e=t[r+4>>2]+t[n+724>>2]|0,a=i>>>0>s>>>0?e+1|0:e,i=t[n+680>>2],A=i,e=t[n+684>>2],T=e,e=(e<<1|i>>>31)+a|0,i=i<<1,a=i,i=i+s|0,e=a>>>0>i>>>0?e+1|0:e,s=i,t[r>>2]=s,a=e,t[r+4>>2]=e,e=h+E|0,n=b+C|0,e=n>>>0<b>>>0?e+1|0:e,t[o+712>>2]=n,t[o+716>>2]=e,e=w+k|0,n=g+I|0,e=n>>>0<g>>>0?e+1|0:e,t[o+704>>2]=n,t[o+708>>2]=e,e=y+L|0,n=f+x|0,e=n>>>0<f>>>0?e+1|0:e,t[o+696>>2]=n,t[o+700>>2]=e,e=d+X|0,n=c+N|0,e=n>>>0<N>>>0?e+1|0:e,t[o+688>>2]=n,t[o+692>>2]=e,e=a+T|0,i=s+A|0,e=i>>>0<s>>>0?e+1|0:e,t[o+680>>2]=i,t[o+684>>2]=e,U0(r+40|0,H,S),U0(R,R,o+920|0),e=t[r+44>>2]+t[o+724>>2]|0,i=t[o+720>>2],a=i+t[r+40>>2]|0,t[r+40>>2]=a,t[r+44>>2]=i>>>0>a>>>0?e+1|0:e,e=r+48|0,n=e,i=t[o+728>>2],a=i+t[e>>2]|0,e=t[e+4>>2]+t[o+732>>2]|0,t[n>>2]=a,t[n+4>>2]=i>>>0>a>>>0?e+1|0:e,e=r+56|0,n=e,i=t[o+736>>2],a=i+t[e>>2]|0,e=t[e+4>>2]+t[o+740>>2]|0,t[n>>2]=a,t[n+4>>2]=i>>>0>a>>>0?e+1|0:e,e=r- -64|0,n=e,i=t[o+744>>2],a=i+t[e>>2]|0,e=t[e+4>>2]+t[o+748>>2]|0,t[n>>2]=a,t[n+4>>2]=i>>>0>a>>>0?e+1|0:e,i=t[o+752>>2],a=r+72|0,r=i+t[a>>2]|0,e=t[a+4>>2]+t[o+756>>2]|0,t[a>>2]=r,t[a+4>>2]=i>>>0>r>>>0?e+1|0:e}D=o+1120|0}function Dt(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0;d=D-736|0,D=d,n=t[a+80>>2];t:{if(t[r+120>>2]){t[i+120>>2]=n,r=t[a+4>>2],t[i>>2]=t[a>>2],t[i+4>>2]=r,r=a+8|0,e=t[r+4>>2],n=i+8|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a+16|0,e=t[r+4>>2],n=i+16|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a+24|0,e=t[r+4>>2],n=i+24|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a+32|0,e=t[r+4>>2],n=i+32|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=t[a+44>>2],t[i+40>>2]=t[a+40>>2],t[i+44>>2]=r,r=a+48|0,e=t[r+4>>2],n=i+48|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a+56|0,e=t[r+4>>2],n=i+56|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a- -64|0,e=t[r+4>>2],n=i- -64|0,t[n>>2]=t[r>>2],t[n+4>>2]=e,r=a+72|0,a=t[r+4>>2],e=i+72|0,t[e>>2]=t[r>>2],t[e+4>>2]=a,r=i+88|0,t[r>>2]=0,t[r+4>>2]=0,t[i+80>>2]=1,t[i+84>>2]=0,r=i+96|0,t[r>>2]=0,t[r+4>>2]=0,r=i+104|0,t[r>>2]=0,t[r+4>>2]=0,i=i+112|0,t[i>>2]=0,t[i+4>>2]=0;break t}if(n){e&&(t[e+8>>2]=0,t[e+12>>2]=0,t[e>>2]=1,t[e+4>>2]=0,a=e+16|0,t[a>>2]=0,t[a+4>>2]=0,a=e+24|0,t[a>>2]=0,t[a+4>>2]=0,a=e+32|0,t[a>>2]=0,t[a+4>>2]=0),Ze(i,r,128);break t}E=d+696|0,Z=r+80|0,Ve(E,Z),w=d+656|0,y=w+8|0,n=r+8|0,c=t[n>>2],h=t[n+4>>2],o=t[r+4>>2],n=r+32|0,b=t[n>>2],f=t[n+4>>2],x=f,n=t[r>>2],f=I0(f>>>16|0,0,977,1),s=n+f|0,n=o+i0|0,f=s>>>0<f>>>0?n+1|0:n,n=h,o=f>>>20|0,h=o,o=o+c|0,n=h>>>0>o>>>0?n+1|0:n,t[y>>2]=o,k=n&1048575,t[y+4>>2]=k,c=w+16|0,y=r+16|0,h=t[y>>2],T=t[y+4>>2],y=n,n=T,y=y>>>20|0,g=y,y=y+h|0,n=g>>>0>y>>>0?n+1|0:n,t[c>>2]=y,V=n&1048575,t[c+4>>2]=V,h=w+24|0,c=r+24|0,T=t[c>>2],g=t[c+4>>2],c=n,n=g,c=c>>>20|0,g=c,c=c+T|0,n=g>>>0>c>>>0?n+1|0:n,t[h>>2]=c,N=n&1048575,t[h+4>>2]=N,h=w+32|0,w=n,n=x&65535,w=w>>>20|0,x=b+w|0,n=w>>>0>x>>>0?n+1|0:n,t[h>>2]=x,I=n,t[h+4>>2]=n,b=s,t[d+656>>2]=s,C=f&1048575,t[d+660>>2]=C,U0(d+616|0,a,E),T=d+576|0,h=T+8|0,n=r+48|0,A=t[n>>2],S=t[n+4>>2],w=t[r+44>>2],n=r+72|0,f=t[n>>2],g=t[n+4>>2],R=g,n=t[r+40>>2],g=I0(g>>>16|0,0,977,1),s=n+g|0,n=w+i0|0,w=s>>>0<g>>>0?n+1|0:n,n=S,g=w>>>20|0,S=g+A|0,n=g>>>0>S>>>0?n+1|0:n,t[h>>2]=S,Y=n&1048575,t[h+4>>2]=Y,g=T+16|0,h=r+56|0,A=t[h>>2],L=t[h+4>>2],h=n,n=L,h=h>>>20|0,L=h+A|0,n=h>>>0>L>>>0?n+1|0:n,t[g>>2]=L,H=n&1048575,t[g+4>>2]=H,g=T+24|0,h=r- -64|0,A=t[h>>2],z=t[h+4>>2],h=n,n=z,h=h>>>20|0,z=h+A|0,n=h>>>0>z>>>0?n+1|0:n,t[g>>2]=z,j=n&1048575,t[g+4>>2]=j,T=T+32|0,h=n,n=R&65535,h=h>>>20|0,g=f+h|0,n=h>>>0>g>>>0?n+1|0:n,t[T>>2]=g,A=n,t[T+4>>2]=n,R=s,t[d+576>>2]=s,K=w&1048575,t[d+580>>2]=K,n=d+536|0,U0(n,a+40|0,E),U0(n,n,Z),a=t[d+616>>2],f=(a-b|0)-3908|0,n=(t[d+620>>2]-((a>>>0<b>>>0)+C|0)|0)+4194299|0,t[d+496>>2]=f,h=f>>>0<4294963388?n+1|0:n,t[d+500>>2]=h,a=d,n=t[a+624>>2],b=(n-o|0)-4|0,n=(t[a+628>>2]-((n>>>0<o>>>0)+k|0)|0)+4194303|0,t[a+504>>2]=b,w=b>>>0<4294967292?n+1|0:n,t[a+508>>2]=w,n=t[a+632>>2],s=(n-y|0)-4|0,n=(t[a+636>>2]-((n>>>0<y>>>0)+V|0)|0)+4194303|0,t[a+512>>2]=s,y=s>>>0<4294967292?n+1|0:n,t[a+516>>2]=y,n=t[a+640>>2],o=(n-c|0)-4|0,n=(t[a+644>>2]-((n>>>0<c>>>0)+N|0)|0)+4194303|0,t[a+520>>2]=o,c=o>>>0<4294967292?n+1|0:n,t[a+524>>2]=c,n=t[a+648>>2],a=(n-x|0)-4|0,n=(t[d+652>>2]-((n>>>0<x>>>0)+I|0)|0)+262143|0,t[d+528>>2]=a,x=a>>>0<4294967292?n+1|0:n,t[d+532>>2]=x,n=t[d+568>>2],I=(g-n|0)-4|0,n=(A-(t[d+572>>2]+(n>>>0>g>>>0)|0)|0)+262143|0,t[d+488>>2]=I,g=I>>>0<4294967292?n+1|0:n,t[d+492>>2]=g,n=t[d+560>>2],A=(z-n|0)-4|0,n=(j-(t[d+564>>2]+(n>>>0>z>>>0)|0)|0)+4194303|0,z=A,t[d+480>>2]=A,j=A>>>0<4294967292?n+1|0:n,t[d+484>>2]=j,n=t[d+552>>2],A=(L-n|0)-4|0,n=(H-(t[d+556>>2]+(n>>>0>L>>>0)|0)|0)+4194303|0,L=A,t[d+472>>2]=A,H=A>>>0<4294967292?n+1|0:n,t[d+476>>2]=H,n=t[d+544>>2],A=(S-n|0)-4|0,n=(Y-(t[d+548>>2]+(n>>>0>S>>>0)|0)|0)+4194303|0,t[d+464>>2]=A,Y=A>>>0<4294967292?n+1|0:n,t[d+468>>2]=Y,n=t[d+536>>2],T=(R-n|0)-3908|0,n=(K-(t[d+540>>2]+(n>>>0>R>>>0)|0)|0)+4194299|0,S=T,t[d+456>>2]=T,K=T>>>0<4294963388?n+1|0:n,t[d+460>>2]=K,T=I0(x>>>16|0,0,977,1)+f|0,n=i0+h|0,n=f>>>0>T>>>0?n+1|0:n,R=n&1048575,X=R;e:{if(_=T,$=T^976,e0=R^1,(($|0)!=-1|(e0|0)!=1048575)&(T|R)!=0||(C=x&65535,T=n,n=w,T=(T>>>20|0)+b|0,R=T>>>0<b>>>0?n+1|0:n,n=y,E=(R>>>20|0)+s|0,k=E>>>0<s>>>0?n+1|0:n,n=c,V=(k>>>20|0)+o|0,N=V>>>0<o>>>0?n+1|0:n,n=C,C=N>>>20|0,t0=C,C=a+C|0,n=t0>>>0>C>>>0?n+1|0:n,C|(V|(E|(T|_)))|(n|(N&1048575|(k&1048575|(R&1048575|X))))&&((T&$&E&V&C)!=-1?n=1:n=(R&e0&k&N&(n^983040))!=1048575,n)))break e;a=I0(g>>>16|0,0,977,1)+S|0,n=i0+K|0,n=a>>>0<S>>>0?n+1|0:n,s=n&1048575,h=s;n:{if(w=a,x=a^976,T=s^1,((x|0)!=-1|(T|0)!=1048575)&(a|s)!=0||(g=g&65535,a=n,n=Y,a=(a>>>20|0)+A|0,s=a>>>0<A>>>0?n+1|0:n,n=H,o=(s>>>20|0)+L|0,b=o>>>0<L>>>0?n+1|0:n,n=j,y=(b>>>20|0)+z|0,c=y>>>0<z>>>0?n+1|0:n,n=g,f=c>>>20|0,g=f,f=f+I|0,n=g>>>0>f>>>0?n+1|0:n,f|(y|(o|(a|w)))|(n|(c&1048575|(b&1048575|(s&1048575|h))))&&((a&x&o&y&f)!=-1?a=1:a=(s&T&b&c&(n^983040))!=1048575,a)))break n;if(t[r+120>>2]){if(t[i+120>>2]=1,me(i,120),!e)break t;t[e+8>>2]=0,t[e+12>>2]=0,t[e>>2]=1,t[e+4>>2]=0,i=e+16|0,t[i>>2]=0,t[i+4>>2]=0,i=e+24|0,t[i>>2]=0,t[i+4>>2]=0,i=e+32|0,t[i>>2]=0,t[i+4>>2]=0;break t}e&&(a=r+40|0,n=t[a>>2],s=t[a+4>>2],t[e>>2]=n,t[e+4>>2]=s,o=a+8|0,b=t[o>>2],w=b,y=t[o+4>>2],h=y,o=e+8|0,t[o>>2]=b,t[o+4>>2]=y,b=a+16|0,y=t[b>>2],x=y,c=t[b+4>>2],T=c,b=e+16|0,t[b>>2]=y,t[b+4>>2]=c,y=a+24|0,c=t[y>>2],g=c,f=t[y+4>>2],I=f,y=e+24|0,t[y>>2]=c,t[y+4>>2]=f,a=a+32|0,c=t[a>>2],a=t[a+4>>2],f=e+32|0,t[f>>2]=c,t[f+4>>2]=a,S=I0(a>>>16|0,0,977,1),A=S+n|0,n=s+i0|0,t[e>>2]=A,n=A>>>0<S>>>0?n+1|0:n,t[e+4>>2]=n&1048575,e=n,n=h,e=e>>>20|0,s=e,e=e+w|0,n=s>>>0>e>>>0?n+1|0:n,t[o>>2]=e,t[o+4>>2]=n&1048575,e=n,n=T,e=e>>>20|0,s=e,e=e+x|0,n=s>>>0>e>>>0?n+1|0:n,t[b>>2]=e,t[b+4>>2]=n&1048575,e=n,n=I,e=e>>>20|0,s=e,e=e+g|0,n=s>>>0>e>>>0?n+1|0:n,t[y>>2]=e,t[y+4>>2]=n&1048575,e=a&65535,a=n,n=e,a=a>>>20|0,e=a,a=a+c|0,n=e>>>0>a>>>0?n+1|0:n,t[f>>2]=a,t[f+4>>2]=n),wn(i,r);break t}e&&(t[e>>2]=0,t[e+4>>2]=0,r=e+32|0,t[r>>2]=0,t[r+4>>2]=0,r=e+24|0,t[r>>2]=0,t[r+4>>2]=0,r=e+16|0,t[r>>2]=0,t[r+4>>2]=0,r=e+8|0,t[r>>2]=0,t[r+4>>2]=0),t[i+120>>2]=1,me(i,120);break t}t[i+120>>2]=0,e&&(r=t[d+500>>2],t[e>>2]=t[d+496>>2],t[e+4>>2]=r,r=d+496|0,n=r+32|0,T=t[n+4>>2],g=e+32|0,t[g>>2]=t[n>>2],t[g+4>>2]=T,n=r+24|0,T=t[n+4>>2],g=e+24|0,t[g>>2]=t[n>>2],t[g+4>>2]=T,n=r+16|0,T=t[n+4>>2],g=e+16|0,t[g>>2]=t[n>>2],t[g+4>>2]=T,r=r+8|0,n=t[r+4>>2],e=e+8|0,t[e>>2]=t[r>>2],t[e+4>>2]=n),V=d+496|0,U0(i+80|0,Z,V),R=d+304|0,T=f<<1,r=h,h=r<<1|f>>>31,P(R,o,c,0,0,T,h,0,0),E=d+224|0,e=b<<1,I=w,w=b,g=I<<1|b>>>31,P(E,s,y,0,0,e,g,0,0),A=d+160|0,P(A,a,x,0,0,a,x,0,0),k=d+144|0,P(k,t[d+160>>2],t[d+164>>2],0,0,15632,16,0,0),N=d+112|0,b=a<<1,x=x<<1|a>>>31,P(N,b,x,0,0,f,r,0,0),C=d+272|0,P(C,o,c,0,0,e,g,0,0),j=d+208|0,P(j,s,y,0,0,s,y,0,0),H=d+128|0,a=A+8|0,P(H,t[a>>2],t[a+4>>2],0,0,64028672,65536,0,0),Y=d+320|0,P(Y,f,r,0,0,f,r,0,0),K=d+96|0,P(K,b,x,0,0,w,I,0,0),_=d+176|0,A=o,S=c,L=y,y=s,P(_,o,c,0,0,s<<1,L<<1|s>>>31,0,0),o=t[d+304>>2],a=t[d+224>>2],r=o+a|0,s=t[d+308>>2],n=s+t[d+228>>2]|0,a=r>>>0<a>>>0?n+1|0:n,n=a+t[d+148>>2]|0,e=r,c=t[d+144>>2],r=r+c|0,z=r,r=r>>>0<c>>>0?n+1|0:n,c=(a|0)==(r|0)&e>>>0>z>>>0|r>>>0<a>>>0,n=k+8|0,f=t[n>>2],g=t[n+4>>2],e=(a|0)==(s|0)&e>>>0<o>>>0|a>>>0<s>>>0,n=E+8|0,s=t[n>>2],o=R+8|0,a=s+t[o>>2]|0,n=t[o+4>>2]+t[n+4>>2]|0,n=a>>>0<s>>>0?n+1|0:n,s=a,a=a+e|0,n=(s>>>0>a>>>0?n+1|0:n)+g|0,e=a,a=a+f|0,n=e>>>0>a>>>0?n+1|0:n,e=a+c|0,a=e>>>0<a>>>0?n+1|0:n,s=a<<12|e>>>20,R=r,E=e<<12|r>>>20,Z=s,X=t[d+272>>2],e=t[d+208>>2],r=X+e|0,k=t[d+276>>2],n=k+t[d+212>>2]|0,n=r>>>0<e>>>0?n+1|0:n,c=r,e=t[d+112>>2],r=r+e|0,s=n,n=n+t[d+116>>2]|0,n=r>>>0<e>>>0?n+1|0:n,f=r,e=t[d+128>>2],r=r+e|0,o=n,n=n+t[d+132>>2]|0,e=r>>>0<e>>>0?n+1|0:n,n=e+Z|0,Z=d+80|0,g=r,E=r+E|0,r=r>>>0>E>>>0?n+1|0:n,n=e,e=E,E=(r|0)==(n|0)&e>>>0<g>>>0|r>>>0<n>>>0,g=(n|0)==(o|0)&f>>>0>g>>>0|n>>>0<o>>>0,n=H+8|0,H=t[n>>2],$=t[n+4>>2],o=(s|0)==(o|0)&f>>>0<c>>>0|s>>>0>o>>>0,n=N+8|0,f=t[n>>2],N=t[n+4>>2],c=(s|0)==(k|0)&c>>>0<X>>>0|s>>>0<k>>>0,n=j+8|0,k=t[n>>2],C=C+8|0,s=k+t[C>>2]|0,n=t[C+4>>2]+t[n+4>>2]|0,n=s>>>0<k>>>0?n+1|0:n,C=s,s=s+c|0,n=(C>>>0>s>>>0?n+1|0:n)+N|0,c=s,s=s+f|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+o|0,n=(c>>>0>s>>>0?n+1|0:n)+$|0,c=s,s=s+H|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+g|0,n=c>>>0>s>>>0?n+1|0:n,a=a>>>20|0,c=a,a=a+s|0,n=c>>>0>a>>>0?n+1|0:n,s=a+E|0,a=s>>>0<a>>>0?n+1|0:n,n=a<<12|s>>>20,c=s<<12,s=r,f=c|r>>>20,g=n,k=t[d+96>>2],o=t[d+176>>2],r=k+o|0,E=t[d+100>>2],n=E+t[d+180>>2]|0,o=r>>>0<o>>>0?n+1|0:n,n=o+g|0,c=r,f=r+f|0,n=r>>>0>f>>>0?n+1|0:n,N=f<<4&-16,g=s,r=n,P(Z,N|s>>>16&15,(n<<4|f>>>28)&16777215,0,0,977,1,0,0),N=d+256|0,P(N,w,I,0,0,T,h,0,0),C=d- -64|0,P(C,b,x,0,0,y,L,0,0),j=d+288|0,P(j,A,S,0,0,A,S,0,0),H=d+48|0,f=(n|0)==(o|0)&f>>>0<c>>>0|n>>>0<o>>>0,o=(o|0)==(E|0)&c>>>0<k>>>0|o>>>0<E>>>0,n=_+8|0,c=t[n>>2],E=K+8|0,s=c+t[E>>2]|0,n=t[E+4>>2]+t[n+4>>2]|0,n=s>>>0<c>>>0?n+1|0:n,c=s,s=s+o|0,n=c>>>0>s>>>0?n+1|0:n,a=a>>>20|0,c=a,a=a+s|0,n=c>>>0>a>>>0?n+1|0:n,s=a+f|0,a=s>>>0<a>>>0?n+1|0:n,o=a<<12|s>>>20,s=s<<12|r>>>20,c=o,E=t[d+64>>2],o=t[d+288>>2],r=E+o|0,f=t[d+68>>2],n=f+t[d+292>>2]|0,n=r>>>0<o>>>0?n+1|0:n,o=r,r=n,n=n+c|0,s=s+o|0,n=s>>>0<o>>>0?n+1|0:n,c=s,s=n,P(H,c,n&1048575,0,0,15632,16,0,0),k=d+192|0,P(k,y,L,0,0,T,h,0,0),h=d+240|0,P(h,w,I,0,0,w,I,0,0),y=d+32|0,P(y,b,x,0,0,A,S,0,0),x=d+16|0,b=x,c=(r|0)==(n|0)&o>>>0>c>>>0|r>>>0>n>>>0,o=(r|0)==(f|0)&o>>>0<E>>>0|r>>>0<f>>>0,n=j+8|0,f=t[n>>2],w=C+8|0,r=f+t[w>>2]|0,n=t[w+4>>2]+t[n+4>>2]|0,n=r>>>0<f>>>0?n+1|0:n,w=r,r=r+o|0,n=w>>>0>r>>>0?n+1|0:n,a=a>>>20|0,r=r+a|0,n=a>>>0>r>>>0?n+1|0:n,a=r+c|0,r=a>>>0<r>>>0?n+1|0:n,o=r<<12|a>>>20,c=a<<12|s>>>20,f=t[d+32>>2],a=c+f|0,s=o,n=s+t[d+36>>2]|0,n=a>>>0<f>>>0?n+1|0:n,P(b,a,n,0,0,15632,16,0,0),a=(n|0)==(s|0)&a>>>0<c>>>0|n>>>0<s>>>0,n=y+8|0,s=t[n>>2],n=t[n+4>>2],r=r>>>20|0,c=r,r=r+s|0,n=c>>>0>r>>>0?n+1|0:n,s=r,r=r+a|0,n=s>>>0>r>>>0?n+1|0:n,P(d,r,n,0,0,64028672,65536,0,0),r=d,b=t[r+80>>2],a=t[r+320>>2],s=b+a|0,o=t[r+84>>2],n=o+t[r+324>>2]|0,t[r+416>>2]=-3908-s,a=a>>>0>s>>>0?n+1|0:n,t[r+420>>2]=4194299-((a&1048575)+(s>>>0>4294963388)|0),o=(a|0)==(o|0)&s>>>0<b>>>0|a>>>0<o>>>0,n=Y+8|0,b=t[n>>2],y=Z+8|0,s=b+t[y>>2]|0,n=t[y+4>>2]+t[n+4>>2]|0,n=s>>>0<b>>>0?n+1|0:n,o=s+o|0,s=o>>>0<s>>>0?n+1|0:n,b=s<<12|o>>>20,o=o<<12|a>>>20,y=b,f=t[r+48>>2],b=t[r+256>>2],a=f+b|0,c=t[r+52>>2],n=c+t[r+260>>2]|0,n=a>>>0<b>>>0?n+1|0:n,b=a,a=n,n=n+y|0,o=o+b|0,n=o>>>0<b>>>0?n+1|0:n,y=o,t[r+424>>2]=-4-o,o=n,t[r+428>>2]=4194303-((n&1048575)+(y>>>0>4294967292)|0),y=(a|0)==(n|0)&y>>>0<b>>>0|a>>>0>n>>>0,b=(a|0)==(c|0)&f>>>0>b>>>0|a>>>0<c>>>0,n=N+8|0,c=t[n>>2],f=H+8|0,a=c+t[f>>2]|0,n=t[f+4>>2]+t[n+4>>2]|0,n=a>>>0<c>>>0?n+1|0:n,c=a,a=a+b|0,n=c>>>0>a>>>0?n+1|0:n,s=s>>>20|0,a=a+s|0,n=s>>>0>a>>>0?n+1|0:n,s=a+y|0,a=s>>>0<a>>>0?n+1|0:n,b=a<<12|s>>>20,f=s<<12|o>>>20,I=t[r+192>>2],s=t[r+240>>2],o=I+s|0,w=t[r+196>>2],n=w+t[r+244>>2]|0,n=s>>>0>o>>>0?n+1|0:n,c=o,o=t[r+16>>2],y=c+o|0,s=n,n=n+t[r+20>>2]|0,o=o>>>0>y>>>0?n+1|0:n,n=o+b|0,b=f+y|0,n=b>>>0<y>>>0?n+1|0:n,f=b,t[r+432>>2]=-4-f,b=n,t[r+436>>2]=4194303-((n&1048575)+(f>>>0>4294967292)|0),f=(n|0)==(o|0)&f>>>0<y>>>0|n>>>0<o>>>0,o=(s|0)==(o|0)&c>>>0>y>>>0|s>>>0>o>>>0,n=x+8|0,y=t[n>>2],x=t[n+4>>2],c=(s|0)==(w|0)&c>>>0<I>>>0|s>>>0<w>>>0,n=h+8|0,w=t[n>>2],h=k+8|0,s=w+t[h>>2]|0,n=t[h+4>>2]+t[n+4>>2]|0,n=s>>>0<w>>>0?n+1|0:n,h=s,s=s+c|0,n=(h>>>0>s>>>0?n+1|0:n)+x|0,c=s,s=s+y|0,n=c>>>0>s>>>0?n+1|0:n,c=s,s=s+o|0,n=c>>>0>s>>>0?n+1|0:n,a=a>>>20|0,c=a,a=a+s|0,n=c>>>0>a>>>0?n+1|0:n,s=a+f|0,a=s>>>0<a>>>0?n+1|0:n,o=a<<12|s>>>20,y=s<<12|b>>>20,w=t[r>>2],s=z&-2,b=w+s|0,f=t[r+4>>2],n=f+(R&1048575)|0,s=s>>>0>b>>>0?n+1|0:n,n=s+o|0,y=y+b|0,n=y>>>0<b>>>0?n+1|0:n,t[r+440>>2]=-4-y,o=n,t[r+444>>2]=4194303-((n&1048575)+(y>>>0>4294967292)|0),c=e,h=g&65535,y=(n|0)==(s|0)&y>>>0<b>>>0|n>>>0<s>>>0,s=(s|0)==(f|0)&b>>>0<w>>>0|s>>>0<f>>>0,n=r+8|0,e=s+t[n>>2]|0,n=t[n+4>>2],n=e>>>0<s>>>0?n+1|0:n,a=a>>>20|0,s=a,a=a+e|0,n=s>>>0>a>>>0?n+1|0:n,e=a,a=a+y|0,n=h+((e>>>0>a>>>0?n+1|0:n)<<12|a>>>20)|0,s=a<<12|o>>>20,a=s+c|0,t[r+448>>2]=-4-a,t[r+452>>2]=262143-((a>>>0>4294967292)+(a>>>0<s>>>0?n+1|0:n)|0),T=r+376|0,a=r+416|0,U0(T,a,V),A=r+336|0,U0(A,r+656|0,a),S=r+456|0,Ve(i,S),e=t[r+408>>2],a=e+t[i+32>>2]|0,n=t[i+36>>2]+t[r+412>>2]|0,e=a>>>0<e>>>0?n+1|0:n,n=t[r+372>>2],L=n,g=t[r+368>>2],s=g,n=(n<<1|s>>>31)+e|0,s=s<<1,a=a+s|0,n=s>>>0>a>>>0?n+1|0:n,o=a,t[i+32>>2]=a,b=n,t[i+36>>2]=n,e=t[r+400>>2],a=e+t[i+24>>2]|0,n=t[i+28>>2]+t[r+404>>2]|0,n=a>>>0<e>>>0?n+1|0:n,e=a,s=n,a=t[r+360>>2],z=a,n=t[r+364>>2],R=n,n=(n<<1|a>>>31)+s|0,a=a<<1,s=a,a=a+e|0,n=s>>>0>a>>>0?n+1|0:n,t[i+24>>2]=a,y=n,t[i+28>>2]=n,s=t[r+392>>2],e=s+t[i+16>>2]|0,n=t[i+20>>2]+t[r+396>>2]|0,n=e>>>0<s>>>0?n+1|0:n,s=e,c=n,e=t[r+352>>2],E=e,n=t[r+356>>2],k=n,n=(n<<1|e>>>31)+c|0,e=e<<1,c=e,e=e+s|0,n=c>>>0>e>>>0?n+1|0:n,t[i+16>>2]=e,c=n,t[i+20>>2]=n,f=t[r+384>>2],s=f+t[i+8>>2]|0,n=t[i+12>>2]+t[r+388>>2]|0,f=s>>>0<f>>>0?n+1|0:n,n=t[r+348>>2],V=n,I=t[r+344>>2],w=I,n=(n<<1|w>>>31)+f|0,w=w<<1,s=s+w|0,n=w>>>0>s>>>0?n+1|0:n,f=s,t[i+8>>2]=s,w=n,t[i+12>>2]=n,h=t[r+376>>2],s=h+t[i>>2]|0,n=t[i+4>>2]+t[r+380>>2]|0,n=s>>>0<h>>>0?n+1|0:n,h=s,x=n,s=t[r+336>>2],N=s,n=t[r+340>>2],C=n,n=(n<<1|s>>>31)+x|0,s=s<<1,x=s,s=s+h|0,n=x>>>0>s>>>0?n+1|0:n,t[i>>2]=s,h=n,t[i+4>>2]=n,n=b+L|0,o=o+g|0,n=o>>>0<g>>>0?n+1|0:n,t[r+368>>2]=o,t[r+372>>2]=n,n=y+R|0,o=a,a=a+z|0,n=o>>>0>a>>>0?n+1|0:n,t[r+360>>2]=a,t[r+364>>2]=n,n=c+k|0,a=e+E|0,n=a>>>0<e>>>0?n+1|0:n,t[r+352>>2]=a,t[r+356>>2]=n,n=w+V|0,a=f+I|0,n=a>>>0<I>>>0?n+1|0:n,t[r+344>>2]=a,t[r+348>>2]=n,n=h+C|0,r=s+N|0,n=r>>>0<s>>>0?n+1|0:n,t[d+336>>2]=r,t[d+340>>2]=n,U0(i+40|0,A,S),U0(T,T,d+576|0),n=t[i+44>>2]+t[d+380>>2]|0,a=t[d+376>>2],r=a+t[i+40>>2]|0,t[i+40>>2]=r,t[i+44>>2]=r>>>0<a>>>0?n+1|0:n,e=t[d+384>>2],r=i+48|0,a=e+t[r>>2]|0,n=t[r+4>>2]+t[d+388>>2]|0,t[r>>2]=a,t[r+4>>2]=a>>>0<e>>>0?n+1|0:n,e=t[d+392>>2],r=i+56|0,a=e+t[r>>2]|0,n=t[r+4>>2]+t[d+396>>2]|0,t[r>>2]=a,t[r+4>>2]=a>>>0<e>>>0?n+1|0:n,e=t[d+400>>2],r=i- -64|0,a=e+t[r>>2]|0,n=t[r+4>>2]+t[d+404>>2]|0,t[r>>2]=a,t[r+4>>2]=a>>>0<e>>>0?n+1|0:n,a=t[d+408>>2],i=i+72|0,r=a+t[i>>2]|0,n=t[i+4>>2]+t[d+412>>2]|0,t[i>>2]=r,t[i+4>>2]=r>>>0<a>>>0?n+1|0:n}D=d+736|0}function ba(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0;o=D-256|0,D=o,d=o+240|0,P(d,t[a>>2],t[a+4>>2],0,0,t[r>>2],t[r+4>>2],0,0),e=t[o+244>>2],t[i>>2]=t[o+240>>2],t[i+4>>2]=e,y=o+208|0,P(y,t[a+8>>2],t[a+12>>2],0,0,t[r>>2],t[r+4>>2],0,0),c=o+224|0,P(c,t[a>>2],t[a+4>>2],0,0,t[r+8>>2],t[r+12>>2],0,0),w=i,n=t[o+208>>2],i=d+8|0,e=t[i>>2],g=n+e|0,b=t[o+212>>2],i=b+t[i+4>>2]|0,f=e>>>0>g>>>0?i+1|0:i,i=f+t[o+228>>2]|0,e=t[o+224>>2],d=e+g|0,t[w+8>>2]=d,s=e>>>0>d>>>0?i+1|0:i,t[w+12>>2]=s,x=o+160|0,P(x,t[a+16>>2],t[a+20>>2],0,0,t[r>>2],t[r+4>>2],0,0),C=o+176|0,P(C,t[a+8>>2],t[a+12>>2],0,0,t[r+8>>2],t[r+12>>2],0,0),E=o+192|0,P(E,t[a>>2],t[a+4>>2],0,0,t[r+16>>2],t[r+20>>2],0,0),n=(f|0)==(b|0)&n>>>0>g>>>0|f>>>0<b>>>0,i=y+8|0,e=n+t[i>>2]|0,i=t[i+4>>2],n=e>>>0<n>>>0?i+1|0:i,d=(s|0)==(f|0)&d>>>0<g>>>0|s>>>0<f>>>0,i=c+8|0,s=d+t[i>>2]|0,i=t[i+4>>2],i=(s>>>0<d>>>0?i+1|0:i)+n|0,d=e+s|0,i=d>>>0<s>>>0?i+1|0:i,b=d,d=t[o+160>>2],s=b+d|0,T=i,i=i+t[o+164>>2]|0,i=s>>>0<d>>>0?i+1|0:i,d=t[o+176>>2],y=d+s|0,A=i,i=i+t[o+180>>2]|0,h=d>>>0>y>>>0?i+1|0:i,i=h+t[o+196>>2]|0,d=t[o+192>>2],f=d+y|0,t[w+16>>2]=f,c=f>>>0<d>>>0?i+1|0:i,t[w+20>>2]=c,L=o+96|0,P(L,t[a+24>>2],t[a+28>>2],0,0,t[r>>2],t[r+4>>2],0,0),R=o+112|0,P(R,t[a+16>>2],t[a+20>>2],0,0,t[r+8>>2],t[r+12>>2],0,0),N=o+128|0,P(N,t[a+8>>2],t[a+12>>2],0,0,t[r+16>>2],t[r+20>>2],0,0),S=o+144|0,P(S,t[a>>2],t[a+4>>2],0,0,t[r+24>>2],t[r+28>>2],0,0),d=(T|0)==(A|0)&s>>>0<b>>>0|T>>>0>A>>>0,i=x+8|0,g=d+t[i>>2]|0,i=t[i+4>>2],e=(n|0)==(T|0)&e>>>0>b>>>0|n>>>0>T>>>0,x=g+e|0,i=d>>>0>g>>>0?i+1|0:i,d=i,n=e>>>0>x>>>0?i+1|0:i,b=x,e=(h|0)==(A|0)&s>>>0>y>>>0|h>>>0<A>>>0,i=C+8|0,s=e+t[i>>2]|0,i=t[i+4>>2],i=(e>>>0>s>>>0?i+1|0:i)+n|0,I=s,s=s+b|0,e=I>>>0>s>>>0?i+1|0:i,C=s,b=s,s=(c|0)==(h|0)&f>>>0<y>>>0|c>>>0<h>>>0,i=E+8|0,f=s+t[i>>2]|0,i=t[i+4>>2],i=(s>>>0>f>>>0?i+1|0:i)+e|0,s=f+b|0,i=s>>>0<f>>>0?i+1|0:i,T=s,s=t[o+96>>2],A=T+s|0,E=i,i=i+t[o+100>>2]|0,i=s>>>0>A>>>0?i+1|0:i,s=t[o+112>>2],h=s+A|0,k=i,i=i+t[o+116>>2]|0,i=s>>>0>h>>>0?i+1|0:i,s=t[o+128>>2],c=s+h|0,I=i,i=i+t[o+132>>2]|0,y=s>>>0>c>>>0?i+1|0:i,i=y+t[o+148>>2]|0,s=t[o+144>>2],f=s+c|0,t[w+24>>2]=f,i=s>>>0>f>>>0?i+1|0:i,t[w+28>>2]=i,z=o+48|0,P(z,t[a+24>>2],t[a+28>>2],0,0,t[r+8>>2],t[r+12>>2],0,0),H=o- -64|0,P(H,t[a+16>>2],t[a+20>>2],0,0,t[r+16>>2],t[r+20>>2],0,0),V=o+80|0,P(V,t[a+8>>2],t[a+12>>2],0,0,t[r+24>>2],t[r+28>>2],0,0),f=(i|0)==(y|0)&c>>>0>f>>>0|i>>>0<y>>>0,i=S+8|0,s=f+t[i>>2]|0,i=t[i+4>>2],f=s>>>0<f>>>0?i+1|0:i,c=(y|0)==(I|0)&c>>>0<h>>>0|y>>>0<I>>>0,i=N+8|0,b=c+t[i>>2]|0,i=t[i+4>>2],y=c>>>0>b>>>0?i+1|0:i,c=(e|0)==(E|0)&T>>>0<C>>>0|e>>>0>E>>>0,i=(e|0)==(n|0)&x>>>0>C>>>0|e>>>0<n>>>0,e=(n|0)==(d|0)&g>>>0>x>>>0|n>>>0<d>>>0,n=i+e|0,i=e>>>0>n>>>0,d=n+c|0,g=d>>>0<n>>>0?i+1|0:i,e=(E|0)==(k|0)&T>>>0>A>>>0|E>>>0>k>>>0,i=L+8|0,n=e+t[i>>2]|0,i=t[i+4>>2],i=(e>>>0>n>>>0?i+1|0:i)+g|0,c=n,n=n+d|0,e=c>>>0>n>>>0?i+1|0:i,E=n,c=n,n=(k|0)==(I|0)&h>>>0<A>>>0|k>>>0>I>>>0,i=R+8|0,h=n+t[i>>2]|0,i=t[i+4>>2],i=(n>>>0>h>>>0?i+1|0:i)+e|0,c=c+h|0,n=c>>>0<h>>>0?i+1|0:i,i=n+y|0,I=c,A=c+b|0,x=c>>>0>A>>>0?i+1|0:i,i=x+f|0,c=s+A|0,i=c>>>0<A>>>0?i+1|0:i,C=c,c=t[o+48>>2],T=C+c|0,S=i,i=i+t[o+52>>2]|0,k=c>>>0>T>>>0?i+1|0:i,i=k+t[o+68>>2]|0,y=t[o+64>>2],c=y+T|0,b=t[o+80>>2],h=c+b|0,y=c>>>0<y>>>0?i+1|0:i,i=y+t[o+84>>2]|0,t[w+32>>2]=h,i=h>>>0<b>>>0?i+1|0:i,t[w+36>>2]=i,R=o+16|0,P(R,t[a+24>>2],t[a+28>>2],0,0,t[r+16>>2],t[r+20>>2],0,0),N=o+32|0,P(N,t[a+16>>2],t[a+20>>2],0,0,t[r+24>>2],t[r+28>>2],0,0),b=(i|0)==(y|0)&c>>>0>h>>>0|i>>>0<y>>>0,i=V+8|0,h=b+t[i>>2]|0,i=t[i+4>>2],b=h>>>0<b>>>0?i+1|0:i,c=(y|0)==(k|0)&c>>>0<T>>>0|y>>>0<k>>>0,i=H+8|0,y=c+t[i>>2]|0,i=t[i+4>>2],c=c>>>0>y>>>0?i+1|0:i,f=(f|0)==(S|0)&s>>>0>C>>>0|f>>>0>S>>>0,s=(n|0)==(x|0)&A>>>0<I>>>0|n>>>0>x>>>0,i=(e|0)==(n|0)&E>>>0>I>>>0|e>>>0>n>>>0,e=(e|0)==(g|0)&d>>>0>E>>>0|e>>>0<g>>>0,n=i+e|0,i=e>>>0>n>>>0,e=n+s|0,i=e>>>0<n>>>0?i+1|0:i,d=e+f|0,s=d>>>0<e>>>0?i+1|0:i,e=(k|0)==(S|0)&T>>>0<C>>>0|k>>>0<S>>>0,i=z+8|0,n=e+t[i>>2]|0,i=t[i+4>>2],i=(e>>>0>n>>>0?i+1|0:i)+s|0,e=n+d|0,n=e>>>0<n>>>0?i+1|0:i,i=n+c|0,c=h,A=e,g=e+y|0,h=g,f=c+h|0,e=e>>>0>h>>>0?i+1|0:i,i=e+b|0,g=t[o+16>>2],y=g+f|0,T=f>>>0<h>>>0?i+1|0:i,i=T+t[o+20>>2]|0,b=y>>>0<g>>>0?i+1|0:i,i=b+t[o+36>>2]|0,c=t[o+32>>2],g=c+y|0,t[w+40>>2]=g,c=c>>>0>g>>>0?i+1|0:i,t[w+44>>2]=c,P(o,t[a+24>>2],t[a+28>>2],0,0,t[r+24>>2],t[r+28>>2],0,0),a=w,r=(b|0)==(T|0)&f>>>0>y>>>0|b>>>0<T>>>0,i=R+8|0,w=r+t[i>>2]|0,i=t[i+4>>2],r=r>>>0>w>>>0?i+1|0:i,f=(e|0)==(T|0)&f>>>0<h>>>0|e>>>0>T>>>0,i=(e|0)==(n|0)&h>>>0<A>>>0|e>>>0<n>>>0,e=(n|0)==(s|0)&d>>>0>A>>>0|n>>>0<s>>>0,n=i+e|0,i=e>>>0>n>>>0,d=n+f|0,f=d>>>0<n>>>0?i+1|0:i,i=f+r|0,r=d+w|0,e=r>>>0<d>>>0?i+1|0:i,s=r,n=r,r=(c|0)==(b|0)&y>>>0>g>>>0|c>>>0<b>>>0,i=N+8|0,w=r+t[i>>2]|0,i=t[i+4>>2],i=(r>>>0>w>>>0?i+1|0:i)+e|0,n=n+w|0,r=n>>>0<w>>>0?i+1|0:i,i=r+t[o+4>>2]|0,w=t[o>>2],g=w+n|0,t[a+48>>2]=g,i=w>>>0>g>>>0?i+1|0:i,t[a+52>>2]=i,w=(i|0)==(r|0)&n>>>0>g>>>0|i>>>0<r>>>0,n=(r|0)==(e|0)&n>>>0<s>>>0|r>>>0<e>>>0,r=(e|0)==(f|0)&s>>>0<d>>>0|e>>>0<f>>>0,i=o+8|0,e=r+t[i>>2]|0,i=t[i+4>>2],i=r>>>0>e>>>0?i+1|0:i,r=e+n|0,i=r>>>0<e>>>0?i+1|0:i,s=r,r=r+w|0,i=s>>>0>r>>>0?i+1|0:i,t[a+56>>2]=r,t[a+60>>2]=i,D=o+256|0}function Mi(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0,y=0,b=0,h=0,g=0,w=0,T=0,A=0,x=0,E=0,k=0,C=0,I=0,S=0,R=0,N=0,L=0,z=0,H=0,V=0,j=0,Z=0,Y=0,K=0,X=0,_=0,$=0,e0=0,t0=0,r0=0,s0=0,u0=0,d0=0,l0=0,b0=0,g0=0,x0=0,C0=0,M0=0,R0=0,E0=0,k0=0;c=D-480|0,D=c,n=t[a+4>>2],Z=n,y=n>>31,n=t[i+4>>2],h=n,n=n>>31,$=c+352|0,V=t[a>>2],o=t[i>>2],s=n,P($,V,Z,y,y,o,h,n,n),n=t[a+12>>2],Y=n,g=n>>31,n=t[r+4>>2],b=n,n=n>>31,r0=c+384|0,A=t[a+8>>2],T=t[r>>2],f=n,P(r0,A,Y,g,g,T,b,n,n),n=t[a+20>>2],x=n,n=n>>31,e0=c+368|0,K=t[a+16>>2],R=n,P(e0,K,x,n,n,o,h,s,s),t0=t[a+24>>2],a=t[a+28>>2],E=a,a=a>>31,X=c+400|0,H=a,P(X,t0,E,a,a,T,b,f,f),b0=t[r+32>>2],a=t[r+36>>2],k0=a,a=a>>31,f=a,s=a&A,g0=t[i+32>>2],a=t[i+36>>2],x0=a,a=a>>31,n=s,h=a,s=a&V,a=n+s|0,n=(h&Z)+(f&Y)|0,s=a>>>0<s>>>0?n+1|0:n,n=t[e+40>>2],d=n,I=t[c+388>>2],n=I+t[c+356>>2]|0,N=t[e+44>>2],S=t[c+384>>2],o=t[c+352>>2],b=S+o|0,o=o>>>0>b>>>0?n+1|0:n,L=I0(d,N,b,o),T=L+a|0,n=s+i0|0,j=a-T|0,a=s-(((T>>>0<L>>>0?n+1|0:n)&1073741823)+(a>>>0<T>>>0)|0)|0,L=a,w=a>>31,a=t[e+4>>2],k=a,a=a>>31,s0=c+320|0,C=t[e>>2],T=a,P(s0,j,L,w,w,C,k,a,a),s=h&K,a=s+(f&t0)|0,n=(f&E)+(h&x)|0,s=a>>>0<s>>>0?n+1|0:n,z=t[c+404>>2],n=z+t[c+372>>2]|0,u0=t[c+400>>2],f=t[c+368>>2],h=u0+f|0,f=f>>>0>h>>>0?n+1|0:n,N=I0(h,f,d,N),d=N+a|0,n=s+i0|0,_=a-d|0,a=s-(((d>>>0<N>>>0?n+1|0:n)&1073741823)+(a>>>0<d>>>0)|0)|0,N=a,a=a>>31,d0=c+336|0,l0=a,P(d0,_,N,a,a,C,k,T,T),a=t[i+12>>2],d=a,a=a>>31,C0=c+416|0,T=t[i+8>>2],s=a,P(C0,V,Z,y,y,T,d,a,a),a=t[r+12>>2],k=a,a=a>>31,n=a,M0=c+448|0,C=t[r+8>>2],P(M0,A,Y,g,g,C,k,n,n),R0=c+432|0,P(R0,K,x,R,R,T,d,s,s),E0=c+464|0,P(E0,t0,E,H,H,C,k,n,n),a=t[c+336>>2],d=a,T=t[c+340>>2],n=T+f|0,a=a+h|0,n=a>>>0<h>>>0?n+1|0:n,s=a,a=n,T=(T|0)==(n|0)&s>>>0<d>>>0|n>>>0<T>>>0,n=d0+8|0,d=t[n>>2],C=t[n+4>>2],f=(f|0)==(z|0)&h>>>0<u0>>>0|f>>>0<z>>>0,n=e0+8|0,h=t[n>>2],k=X+8|0,s=h+t[k>>2]|0,n=t[k+4>>2]+t[n+4>>2]|0,n=s>>>0<h>>>0?n+1|0:n,h=s,s=s+f|0,n=(h>>>0>s>>>0?n+1|0:n)+C|0,f=s,s=s+d|0,n=f>>>0>s>>>0?n+1|0:n,f=s+T|0,s=f>>>0<s>>>0?n+1|0:n,h=s<<2|f>>>30,T=f<<2|a>>>30,k=t[c+464>>2],a=t[c+432>>2],f=k+a|0,d=t[c+468>>2],n=d+t[c+436>>2]|0,a=a>>>0>f>>>0?n+1|0:n,n=a+h|0,h=f+T|0,T=h>>>0<f>>>0?n+1|0:n,C=(a|0)==(T|0)&f>>>0>h>>>0|a>>>0>T>>>0,f=(a|0)==(d|0)&f>>>0<k>>>0|a>>>0<d>>>0,n=R0+8|0,d=t[n>>2],k=E0+8|0,a=d+t[k>>2]|0,n=t[k+4>>2]+t[n+4>>2]|0,n=a>>>0<d>>>0?n+1|0:n,d=a,a=a+f|0,n=(s>>31)+(d>>>0>a>>>0?n+1|0:n)|0,s=s>>30,a=a+s|0,n=s>>>0>a>>>0?n+1|0:n,f=a+C|0,a=f>>>0<a>>>0?n+1|0:n,s=t[c+320>>2],k=s,C=t[c+324>>2],n=C+o|0,s=s+b|0,n=s>>>0<b>>>0?n+1|0:n,d=s,s=n,d=(C|0)==(n|0)&d>>>0<k>>>0|n>>>0<C>>>0,n=s0+8|0,C=t[n>>2],k=t[n+4>>2],b=(o|0)==(I|0)&b>>>0<S>>>0|o>>>0<I>>>0,n=$+8|0,I=t[n>>2],z=r0+8|0,o=I+t[z>>2]|0,n=t[z+4>>2]+t[n+4>>2]|0,n=o>>>0<I>>>0?n+1|0:n,S=o,o=o+b|0,n=(S>>>0>o>>>0?n+1|0:n)+k|0,b=o,o=o+C|0,n=b>>>0>o>>>0?n+1|0:n,b=o+d|0,o=b>>>0<o>>>0?n+1|0:n,d=o<<2|b>>>30,b=b<<2|s>>>30,k=t[c+448>>2],I=t[c+416>>2],s=k+I|0,C=t[c+452>>2],n=C+t[c+420>>2]|0,n=s>>>0<I>>>0?n+1|0:n,I=s,s=n,n=n+d|0,d=b+I|0,b=d>>>0<I>>>0?n+1|0:n,z=(s|0)==(b|0)&d>>>0<I>>>0|s>>>0>b>>>0,I=(s|0)==(C|0)&k>>>0>I>>>0|s>>>0<C>>>0,n=C0+8|0,C=t[n>>2],k=M0+8|0,s=C+t[k>>2]|0,n=t[k+4>>2]+t[n+4>>2]|0,n=s>>>0<C>>>0?n+1|0:n,k=s,s=s+I|0,n=(o>>31)+(k>>>0>s>>>0?n+1|0:n)|0,o=o>>30,s=s+o|0,n=o>>>0>s>>>0?n+1|0:n,o=s+z|0,s=o>>>0<s>>>0?n+1|0:n,I=t[r+24>>2],C=t[r+28>>2],k=t[r+16>>2],z=t[r+20>>2],$=t[i+24>>2],r0=t[i+28>>2],e0=t[i+16>>2],X=t[i+20>>2],n=t[e+8>>2],S=t[e+12>>2],n|S&&(d0=c+304|0,u0=n,n=S>>31,P(d0,j,L,w,w,u0,S,n,n),s0=c+288|0,P(s0,_,N,l0,l0,u0,S,n,n),w=T,S=h,T=t[c+288>>2],h=h+T|0,n=w+t[c+292>>2]|0,T=h>>>0<T>>>0?n+1|0:n,w=(w|0)==(T|0)&h>>>0<S>>>0|w>>>0>T>>>0,n=s0+8|0,S=t[n>>2],f=S+f|0,n=a+t[n+4>>2]|0,n=f>>>0<S>>>0?n+1|0:n,a=f,f=f+w|0,a=a>>>0>f>>>0?n+1|0:n,w=b,S=d,b=t[c+304>>2],d=d+b|0,n=w+t[c+308>>2]|0,b=d>>>0<b>>>0?n+1|0:n,w=(w|0)==(b|0)&d>>>0<S>>>0|b>>>0<w>>>0,n=d0+8|0,S=t[n>>2],o=S+o|0,n=s+t[n+4>>2]|0,n=o>>>0<S>>>0?n+1|0:n,s=o,o=o+w|0,s=s>>>0>o>>>0?n+1|0:n),t[i>>2]=d,t[i+4>>2]=b&1073741823,t[r>>2]=h,t[r+4>>2]=T&1073741823,n=X>>31,d=n,S=c+272|0,w=V,P(S,w,Z,y,y,e0,X,n,n),l0=c+240|0,V=A,y=g,A=z,n=A>>31,P(l0,V,Y,y,y,k,A,n,n),g=c+256|0,P(g,K,x,R,R,e0,X,d,d),A=c+224|0,P(A,t0,E,H,H,k,z,n,n),R=t[c+224>>2],d=t[c+256>>2],h=R+d|0,y=t[c+228>>2],n=y+t[c+260>>2]|0,d=d>>>0>h>>>0?n+1|0:n,R=(y|0)==(d|0)&h>>>0<R>>>0|d>>>0<y>>>0,n=g+8|0,g=t[n>>2],A=A+8|0,y=g+t[A>>2]|0,n=t[A+4>>2]+t[n+4>>2]|0,n=y>>>0<g>>>0?n+1|0:n,g=y,y=y+R|0,n=(a>>31)+(g>>>0>y>>>0?n+1|0:n)|0,A=a>>30,y=y+A|0,n=A>>>0>y>>>0?n+1|0:n,g=y,y=n,n=a<<2|f>>>30,a=f<<2|T>>>30,f=a+h|0,n=n+d|0,a=a>>>0>f>>>0?n+1|0:n,T=(d|0)==(a|0)&f>>>0<h>>>0|a>>>0<d>>>0,h=T+g|0,n=y,T=h>>>0<T>>>0?n+1|0:n,A=t[c+240>>2],y=t[c+272>>2],d=A+y|0,g=t[c+244>>2],n=g+t[c+276>>2]|0,y=d>>>0<y>>>0?n+1|0:n,A=(g|0)==(y|0)&d>>>0<A>>>0|y>>>0<g>>>0,n=S+8|0,R=t[n>>2],H=l0+8|0,g=R+t[H>>2]|0,n=t[H+4>>2]+t[n+4>>2]|0,n=g>>>0<R>>>0?n+1|0:n,k=g,g=g+A|0,n=(s>>31)+(k>>>0>g>>>0?n+1|0:n)|0,R=s>>30,g=g+R|0,n=R>>>0>g>>>0?n+1|0:n,A=g,g=n,n=s<<2|o>>>30,s=o<<2|b>>>30,o=s+d|0,n=n+y|0,s=s>>>0>o>>>0?n+1|0:n,d=(y|0)==(s|0)&o>>>0<d>>>0|s>>>0<y>>>0,b=d+A|0,n=g,d=d>>>0>b>>>0?n+1|0:n,g=t[e+16>>2],A=t[e+20>>2],g|A&&(n=A>>31,R=c+208|0,y=n,n=L>>31,P(R,g,A,y,y,j,L,n,n),H=c+192|0,n=N>>31,P(H,g,A,y,y,_,N,n,n),y=t[c+196>>2],n=y+a|0,a=f,g=t[c+192>>2],f=g+f|0,a=a>>>0>f>>>0?n+1|0:n,g=(y|0)==(a|0)&f>>>0<g>>>0|a>>>0<y>>>0,n=H+8|0,y=t[n>>2]+h|0,n=t[n+4>>2]+T|0,n=h>>>0>y>>>0?n+1|0:n,h=y+g|0,T=h>>>0<y>>>0?n+1|0:n,y=t[c+212>>2],n=y+s|0,s=o,g=t[c+208>>2],o=g+o|0,s=s>>>0>o>>>0?n+1|0:n,g=(y|0)==(s|0)&o>>>0<g>>>0|s>>>0<y>>>0,n=R+8|0,y=t[n>>2]+b|0,n=t[n+4>>2]+d|0,n=b>>>0>y>>>0?n+1|0:n,b=y+g|0,d=b>>>0<y>>>0?n+1|0:n),t[i+8>>2]=o,t[i+12>>2]=s&1073741823,t[r+8>>2]=f,t[r+12>>2]=a&1073741823,n=Z>>31,y=n,n=r0>>31,e0=c+176|0,A=w,f=n,P(e0,w,Z,y,y,$,r0,n,n),n=Y>>31,g=n,n=C>>31,X=c+144|0,o=n,P(X,V,Y,g,g,I,C,n,n),n=x,R=n,n=n>>31,S=c+160|0,H=n,P(S,K,x,n,n,$,r0,f,f),n=E,k=n,n=n>>31,$=c+128|0,z=n,P($,t0,E,n,n,I,C,o,o),E=t[c+128>>2],f=t[c+160>>2],o=E+f|0,x=t[c+132>>2],n=x+t[c+164>>2]|0,f=o>>>0<f>>>0?n+1|0:n,w=T<<2|h>>>30,a=h<<2|a>>>30,h=a+o|0,n=f+w|0,a=a>>>0>h>>>0?n+1|0:n,n=f,f=h,w=(a|0)==(n|0)&o>>>0>f>>>0|a>>>0<n>>>0,h=(n|0)==(x|0)&o>>>0<E>>>0|n>>>0<x>>>0,n=S+8|0,x=t[n>>2],E=$+8|0,o=x+t[E>>2]|0,n=t[E+4>>2]+t[n+4>>2]|0,n=o>>>0<x>>>0?n+1|0:n,E=o,o=o+h|0,n=(T>>31)+(E>>>0>o>>>0?n+1|0:n)|0,T=T>>30,o=o+T|0,n=T>>>0>o>>>0?n+1|0:n,h=o+w|0,T=h>>>0<o>>>0?n+1|0:n,I=t[c+144>>2],o=t[c+176>>2],w=I+o|0,E=t[c+148>>2],n=E+t[c+180>>2]|0,o=o>>>0>w>>>0?n+1|0:n,x=d<<2|b>>>30,s=b<<2|s>>>30,b=s+w|0,n=o+x|0,s=s>>>0>b>>>0?n+1|0:n,n=o,o=b,x=(s|0)==(n|0)&w>>>0>o>>>0|n>>>0>s>>>0,w=(n|0)==(E|0)&w>>>0<I>>>0|n>>>0<E>>>0,n=e0+8|0,E=t[n>>2],I=X+8|0,b=E+t[I>>2]|0,n=t[I+4>>2]+t[n+4>>2]|0,n=b>>>0<E>>>0?n+1|0:n,E=b,b=b+w|0,n=(d>>31)+(E>>>0>b>>>0?n+1|0:n)|0,d=d>>30,b=d+b|0,n=d>>>0>b>>>0?n+1|0:n,d=b,b=b+x|0,d=d>>>0>b>>>0?n+1|0:n,x=t[e+24>>2],E=t[e+28>>2],x|E&&(n=E>>31,I=c+112|0,w=n,n=L>>31,P(I,x,E,w,w,j,L,n,n),C=c+96|0,n=N>>31,P(C,x,E,w,w,_,N,n,n),w=t[c+100>>2],n=w+a|0,a=f,x=t[c+96>>2],f=x+f|0,a=a>>>0>f>>>0?n+1|0:n,x=(w|0)==(a|0)&f>>>0<x>>>0|a>>>0<w>>>0,n=C+8|0,w=t[n>>2]+h|0,n=t[n+4>>2]+T|0,n=h>>>0>w>>>0?n+1|0:n,h=w+x|0,T=h>>>0<w>>>0?n+1|0:n,w=t[c+116>>2],n=w+s|0,s=o,x=t[c+112>>2],o=x+o|0,s=s>>>0>o>>>0?n+1|0:n,x=(w|0)==(s|0)&o>>>0<x>>>0|s>>>0<w>>>0,n=I+8|0,w=t[n>>2]+b|0,n=t[n+4>>2]+d|0,n=b>>>0>w>>>0?n+1|0:n,b=w+x|0,d=b>>>0<w>>>0?n+1|0:n),t[i+16>>2]=o,t[i+20>>2]=s&1073741823,t[r+16>>2]=f,t[r+20>>2]=a&1073741823,n=x0>>31,o=n,x=c+80|0,E=x0,P(x,A,Z,y,y,g0,E,n,n),Z=c+48|0,y=g,A=k0,n=A>>31,P(Z,V,Y,y,y,b0,A,n,n),V=c- -64|0,P(V,K,R,H,H,g0,E,o,o),Y=c+32|0,P(Y,t0,k,z,z,b0,A,n,n),f=t[e+32>>2],e=t[e+36>>2],o=e,e=o>>31,n=L>>31,P(c,f,o,e,e,j,L,n,n),A=c+16|0,n=N>>31,P(A,f,o,e,e,_,N,n,n),f=i,E=t[c+48>>2],i=t[c+80>>2],e=E+i|0,g=t[c+52>>2],n=g+t[c+84>>2]|0,i=i>>>0>e>>>0?n+1|0:n,L=e,s=b<<2|s>>>30,e=e+s|0,n=i+(d<<2|b>>>30)|0,o=e>>>0<s>>>0?n+1|0:n,n=o+t[c+4>>2]|0,j=e,e=t[c>>2],s=j+e|0,y=s,t[f+24>>2]=s,e=e>>>0>s>>>0?n+1|0:n,t[f+28>>2]=e&1073741823,s=r,r=h<<2|a>>>30,h=T<<2|h>>>30,K=t[c+32>>2],a=t[c+64>>2],b=K+a|0,w=t[c+36>>2],n=w+t[c+68>>2]|0,a=a>>>0>b>>>0?n+1|0:n,n=a+h|0,r=r+b|0,h=r>>>0<b>>>0?n+1|0:n,n=h+t[c+20>>2]|0,N=r,r=t[c+16>>2],_=N+r|0,t[s+24>>2]=_,r=r>>>0>_>>>0?n+1|0:n,t[s+28>>2]=r&1073741823,y=(e|0)==(o|0)&y>>>0<j>>>0|e>>>0<o>>>0,n=c+8|0,t0=t[n>>2],R=t[n+4>>2],j=(i|0)==(o|0)&L>>>0>j>>>0|i>>>0>o>>>0,o=(i|0)==(g|0)&E>>>0>L>>>0|i>>>0<g>>>0,n=x+8|0,L=t[n>>2],g=Z+8|0,i=L+t[g>>2]|0,n=t[g+4>>2]+t[n+4>>2]|0,n=i>>>0<L>>>0?n+1|0:n,g=i,i=i+o|0,n=(d>>31)+(g>>>0>i>>>0?n+1|0:n)|0,d=d>>30,i=i+d|0,n=d>>>0>i>>>0?n+1|0:n,o=i,i=i+j|0,n=(o>>>0>i>>>0?n+1|0:n)+R|0,o=i,i=i+t0|0,n=o>>>0>i>>>0?n+1|0:n,o=i,i=i+y|0,o=(o>>>0>i>>>0?n+1|0:n)<<2|i>>>30,t[f+32>>2]=i<<2|e>>>30,t[f+36>>2]=o,f=(r|0)==(h|0)&N>>>0>_>>>0|r>>>0<h>>>0,i=A+8|0,o=t[i>>2],d=t[i+4>>2],h=(a|0)==(h|0)&b>>>0>N>>>0|a>>>0>h>>>0,a=(a|0)==(w|0)&b>>>0<K>>>0|a>>>0<w>>>0,e=V+8|0,b=t[e>>2],n=Y+8|0,i=b+t[n>>2]|0,n=t[n+4>>2]+t[e+4>>2]|0,n=i>>>0<b>>>0?n+1|0:n,e=i,i=i+a|0,n=(T>>31)+(e>>>0>i>>>0?n+1|0:n)|0,e=T>>30,i=i+e|0,n=e>>>0>i>>>0?n+1|0:n,a=i,i=i+h|0,n=(a>>>0>i>>>0?n+1|0:n)+d|0,a=i,i=i+o|0,n=a>>>0>i>>>0?n+1|0:n,a=i,i=i+f|0,a=(a>>>0>i>>>0?n+1|0:n)<<2|i>>>30,t[s+32>>2]=i<<2|r>>>30,t[s+36>>2]=a,D=c+480|0}function me(i,r){var a=0,e=0,n=0;a=r;t:{if(r>>>0<=15){r=i;break t}if(e=0-i&3,n=e+i|0,e)for(r=i;u[r|0]=0,r=r+1|0,n>>>0>r>>>0;);if(a=a-e|0,e=a&-4,r=e+n|0,(e|0)>0)for(;t[n>>2]=0,n=n+4|0,n>>>0<r>>>0;);a=a&3}if(a)for(a=r+a|0;u[r|0]=0,r=r+1|0,a>>>0>r>>>0;);return i}function P(i,r,a,e,n,s,o,c,d){var f=0,y=0,b=0,h=0,g=0,w=0,T=0;f=I0(s,0,r,0),h=i,y=i0,T=r,r=I0(r,0,o,0),b=i0,g=I0(s,0,a,0),w=i0,i=b+w|0,b=r+g|0,r=b>>>0<g>>>0?i+1|0:i,i=y+b|0,i=0>f>>>0?i+1|0:i,t[h>>2]=f,t[h+4>>2]=i,y=(i|0)==(y|0)&f>>>0<f>>>0|i>>>0<y>>>0,i=(r|0)==(w|0)&b>>>0<g>>>0|r>>>0<w>>>0,f=r,r=r+I0(a,0,o,0)|0,i=i0+i|0,i=r>>>0<f>>>0?i+1|0:i,f=r,r=r+y|0,f=f>>>0>r>>>0?i+1|0:i,i=I0(T,a,c,d),c=i0,e=I0(e,n,s,o),a=e+i|0,i=c+i0|0,i=(a>>>0<e>>>0?i+1|0:i)+f|0,r=r+a|0,i=r>>>0<a>>>0?i+1|0:i,t[h+8>>2]=r,t[h+12>>2]=i}function Ze(i,r,a){var e=0,n=0,s=0,o=0,c=0,d=0,f=0,y=0;o=a;t:{if(a>>>0<=15){a=i;break t}if(s=0-i&3,n=s+i|0,s)for(a=i,e=r;u[a|0]=l[e|0],e=e+1|0,a=a+1|0,n>>>0>a>>>0;);o=o-s|0,c=o&-4,a=c+n|0,s=r+s|0,e=s&3;e:{if(e){if((c|0)<=0)break e;for(d=s&-4,r=d+4|0,f=e<<3,y=0-f&24,e=t[d>>2];d=e>>>f|0,e=t[r>>2],t[n>>2]=d|e<<y,r=r+4|0,n=n+4|0,n>>>0<a>>>0;);break e}if((c|0)<=0)break e;for(r=s;t[n>>2]=t[r>>2],r=r+4|0,n=n+4|0,n>>>0<a>>>0;);}o=o&3,r=s+c|0}if(o)for(e=a+o|0;u[a|0]=l[r|0],r=r+1|0,a=a+1|0,e>>>0>a>>>0;);return i}function Ri(i,r){var a=0,e=0;return i|r?(a=r-1|0,e=i-1|0,a=(e|0)!=-1?a+1|0:a,e=i^e,i=U(r^a),(i|0)==32&&(i=U(e)+32|0),i0=0-(i>>>0>63)|0,63-i|0):(i0=0,64)}function I0(i,r,a,e){var n=0,s=0,o=0,c=0,d=0,f=0;return n=a&65535,s=i&65535,o=M(n,s),c=a>>>16|0,f=M(s,c),d=i>>>16|0,s=M(n,d)+(o>>>16|0)|0,n=f+(s&65535)|0,i0=(M(r,a)+M(c,d)|0)+M(i,e)+(s>>>16)+(n>>>16)|0,o&65535|n<<16}function O(i,r){var a=0,e=0;return a=r&31,e=(-1>>>a&i)<<a,a=i,i=0-r&31,e|(a&-1<<i)>>>i}Ye=l,ac();var O0=[null,P0,F0,W0,Uu,Si,mr];function Ou(){return m.byteLength/65536|0}function Lu(i){i=i|0;var r=Ou()|0,a=r+i|0;if(r<a&&a<65536){var e=new ArrayBuffer(M(a,65536)),n=new Int8Array(e);n.set(u),u=new Int8Array(e),v=new Int16Array(e),t=new Int32Array(e),l=new Uint8Array(e),B=new Uint16Array(e),m=e,Ye=l}return r}return{memory:Object.create(Object.prototype,{grow:{value:Lu},buffer:{get:function(){return m}}}),initializeContext:D0,isPoint:j0,PUBLIC_KEY_INPUT:{get value(){return n0},set value(i){n0=i}},pointAdd:B0,PUBLIC_KEY_INPUT2:{get value(){return Q},set value(i){Q=i}},pointAddScalar:X0,TWEAK_INPUT:{get value(){return J},set value(i){J=i}},xOnlyPointAddTweak:se,X_ONLY_PUBLIC_KEY_INPUT:{get value(){return a0},set value(i){a0=i}},xOnlyPointAddTweakCheck:he,X_ONLY_PUBLIC_KEY_INPUT2:{get value(){return o0},set value(i){o0=i}},pointCompress:Re,pointFromScalar:xe,PRIVATE_INPUT:{get value(){return c0},set value(i){c0=i}},xOnlyPointFromScalar:ut,xOnlyPointFromPoint:_e,pointMultiply:mn,privateAdd:Ut,privateSub:Xt,privateNegate:bn,sign:y2,HASH_INPUT:{get value(){return p0},set value(i){p0=i}},EXTRA_DATA_INPUT:{get value(){return v0},set value(i){v0=i}},SIGNATURE_INPUT:{get value(){return h0},set value(i){h0=i}},signRecoverable:Ot,signSchnorr:m2,verify:b2,recover:Qt,verifySchnorr:Nu,rustsecp256k1_v0_8_1_default_error_callback_fn:mr,rustsecp256k1_v0_8_1_default_illegal_callback_fn:mr,__data_end:{get value(){return f0},set value(i){f0=i}},__heap_base:{get value(){return w0},set value(i){w0=i}}}}var te=sc({"./rand.js":rc,"./validate_error.js":Vu}),ic=te.memory,oc=te.initializeContext,uc=te.isPoint,cc=te.PUBLIC_KEY_INPUT,dc=te.pointAdd,lc=te.PUBLIC_KEY_INPUT2,pc=te.pointAddScalar,fc=te.TWEAK_INPUT,yc=te.xOnlyPointAddTweak,mc=te.X_ONLY_PUBLIC_KEY_INPUT,bc=te.xOnlyPointAddTweakCheck,hc=te.X_ONLY_PUBLIC_KEY_INPUT2,gc=te.pointCompress,wc=te.pointFromScalar,Tc=te.PRIVATE_INPUT,vc=te.xOnlyPointFromScalar,Ac=te.xOnlyPointFromPoint,xc=te.pointMultiply,Ec=te.privateAdd,Pc=te.privateSub,kc=te.privateNegate,Cc=te.sign,Bc=te.HASH_INPUT,Ic=te.EXTRA_DATA_INPUT,Sc=te.SIGNATURE_INPUT,Mc=te.signRecoverable,Rc=te.signSchnorr,Nc=te.verify,Uc=te.recover,Oc=te.verifySchnorr,Lc=te.rustsecp256k1_v0_8_1_default_error_callback_fn,Dc=te.rustsecp256k1_v0_8_1_default_illegal_callback_fn,Fc=te.__data_end,zc=te.__heap_base;const ne=Object.freeze(Object.defineProperty({__proto__:null,EXTRA_DATA_INPUT:Ic,HASH_INPUT:Bc,PRIVATE_INPUT:Tc,PUBLIC_KEY_INPUT:cc,PUBLIC_KEY_INPUT2:lc,SIGNATURE_INPUT:Sc,TWEAK_INPUT:fc,X_ONLY_PUBLIC_KEY_INPUT:mc,X_ONLY_PUBLIC_KEY_INPUT2:hc,__data_end:Fc,__heap_base:zc,initializeContext:oc,isPoint:uc,memory:ic,pointAdd:dc,pointAddScalar:pc,pointCompress:gc,pointFromScalar:wc,pointMultiply:xc,privateAdd:Ec,privateNegate:kc,privateSub:Pc,recover:Uc,rustsecp256k1_v0_8_1_default_error_callback_fn:Lc,rustsecp256k1_v0_8_1_default_illegal_callback_fn:Dc,sign:Cc,signRecoverable:Mc,signSchnorr:Rc,verify:Nc,verifySchnorr:Oc,xOnlyPointAddTweak:yc,xOnlyPointAddTweakCheck:bc,xOnlyPointFromPoint:Ac,xOnlyPointFromScalar:vc},Symbol.toStringTag,{value:"Module"})),Yt=new Uint8Array(ne.memory.buffer),Ni=ne.PRIVATE_INPUT.value,Ui=ne.PUBLIC_KEY_INPUT.value,Oi=ne.PUBLIC_KEY_INPUT2.value,Li=ne.X_ONLY_PUBLIC_KEY_INPUT.value,Di=ne.X_ONLY_PUBLIC_KEY_INPUT2.value,Fi=ne.TWEAK_INPUT.value,zi=ne.HASH_INPUT.value,Hi=ne.EXTRA_DATA_INPUT.value,Vi=ne.SIGNATURE_INPUT.value,ve=Yt.subarray(Ni,Ni+Xn),fe=Yt.subarray(Ui,Ui+Qn),ji=Yt.subarray(Oi,Oi+Qn),nt=Yt.subarray(Li,Li+d2),qi=Yt.subarray(Di,Di+d2),rt=Yt.subarray(Fi,Fi+Do),at=Yt.subarray(zi,zi+Fo),X2=Yt.subarray(Hi,Hi+zo),st=Yt.subarray(Vi,Vi+Fr);function on(p,m){return p===void 0?m!==void 0?m.length:In:p?In:Qn}function ks(p){try{return fe.set(p),ne.isPoint(p.length)===1}finally{fe.fill(0)}}function Hc(){ne.initializeContext()}function Vc(p){return Gu(p)&&ks(p)}function jc(p){return Wu(p)&&ks(p)}function qo(p){return jo(p)&&ks(p)}function qc(p){return Vo(p)}function Gc(p,m,u){k2(p),k2(m);const v=on(u,p);try{return fe.set(p),ji.set(m),ne.pointAdd(p.length,m.length,v)===1?fe.slice(0,v):null}finally{fe.fill(0),ji.fill(0)}}function Wc(p,m,u){k2(p),an(m);const v=on(u,p);try{return fe.set(p),rt.set(m),ne.pointAddScalar(p.length,v)===1?fe.slice(0,v):null}finally{fe.fill(0),rt.fill(0)}}function Zc(p,m){k2(p);const u=on(m,p);try{return fe.set(p),ne.pointCompress(p.length,u),fe.slice(0,u)}finally{fe.fill(0)}}function Yc(p,m){l2(p);const u=on(m);try{return ve.set(p),ne.pointFromScalar(u)===1?fe.slice(0,u):null}finally{ve.fill(0),fe.fill(0)}}function Kc(p){l2(p);try{return ve.set(p),ne.xOnlyPointFromScalar(),nt.slice(0,d2)}finally{ve.fill(0),nt.fill(0)}}function Xc(p){k2(p);try{return fe.set(p),ne.xOnlyPointFromPoint(p.length),nt.slice(0,d2)}finally{fe.fill(0),nt.fill(0)}}function Qc(p,m,u){k2(p),an(m);const v=on(u,p);try{return fe.set(p),rt.set(m),ne.pointMultiply(p.length,v)===1?fe.slice(0,v):null}finally{fe.fill(0),rt.fill(0)}}function Jc(p,m){l2(p),an(m);try{return ve.set(p),rt.set(m),ne.privateAdd()===1?ve.slice(0,Xn):null}finally{ve.fill(0),rt.fill(0)}}function _c(p,m){if(l2(p),an(m),Da(m))return new Uint8Array(p);try{return ve.set(p),rt.set(m),ne.privateSub()===1?ve.slice(0,Xn):null}finally{ve.fill(0),rt.fill(0)}}function $c(p){l2(p);try{return ve.set(p),ne.privateNegate(),ve.slice(0,Xn)}finally{ve.fill(0)}}function e8(p,m){Nr(p),an(m);try{nt.set(p),rt.set(m);const u=ne.xOnlyPointAddTweak();return u!==-1?{parity:u,xOnlyPubkey:nt.slice(0,d2)}:null}finally{nt.fill(0),rt.fill(0)}}function t8(p,m,u,v){Nr(p),Nr(u),an(m);const t=v!==void 0;t&&Ju(v);try{if(nt.set(p),qi.set(u),rt.set(m),t)return ne.xOnlyPointAddTweakCheck(v)===1;{ne.xOnlyPointAddTweak();const l=nt.slice(0,d2);return zu(l,u)===0}}finally{nt.fill(0),qi.fill(0),rt.fill(0)}}function n8(p,m,u){sn(p),l2(m),Es(u);try{return at.set(p),ve.set(m),u!==void 0&&X2.set(u),ne.sign(u===void 0?0:1),st.slice(0,Fr)}finally{at.fill(0),ve.fill(0),u!==void 0&&X2.fill(0),st.fill(0)}}function r8(p,m,u){sn(p),l2(m),Es(u);try{at.set(p),ve.set(m),u!==void 0&&X2.set(u);const v=ne.signRecoverable(u===void 0?0:1);return{signature:st.slice(0,Fr),recoveryId:v}}finally{at.fill(0),ve.fill(0),u!==void 0&&X2.fill(0),st.fill(0)}}function a8(p,m,u){sn(p),l2(m),Es(u);try{return at.set(p),ve.set(m),u!==void 0&&X2.set(u),ne.signSchnorr(u===void 0?0:1),st.slice(0,Fr)}finally{at.fill(0),ve.fill(0),u!==void 0&&X2.fill(0),st.fill(0)}}function s8(p,m,u,v=!1){sn(p),k2(m),Ps(u);try{return at.set(p),fe.set(m),st.set(u),ne.verify(m.length,v===!0?1:0)===1}finally{at.fill(0),fe.fill(0),st.fill(0)}}function i8(p,m,u,v=!1){sn(p),Ps(m),$u(m),u&2&&ec(m),_u(()=>qo(m.subarray(0,32)));const t=on(v);try{return at.set(p),st.set(m),ne.recover(t,u)===1?fe.slice(0,t):null}finally{at.fill(0),st.fill(0),fe.fill(0)}}function o8(p,m,u){sn(p),Nr(m),Ps(u);try{return at.set(p),nt.set(m),st.set(u),ne.verifySchnorr()===1}finally{at.fill(0),nt.fill(0),st.fill(0)}}const u8=Object.freeze(Object.defineProperty({__proto__:null,__initializeContext:Hc,isPoint:Vc,isPointCompressed:jc,isPrivate:qc,isXOnlyPoint:qo,pointAdd:Gc,pointAddScalar:Wc,pointCompress:Zc,pointFromScalar:Yc,pointMultiply:Qc,privateAdd:Jc,privateNegate:$c,privateSub:_c,recover:i8,sign:n8,signRecoverable:r8,signSchnorr:a8,verify:s8,verifySchnorr:o8,xOnlyPointAddTweak:e8,xOnlyPointAddTweakCheck:t8,xOnlyPointFromPoint:Xc,xOnlyPointFromScalar:Kc},Symbol.toStringTag,{value:"Module"})),Se={prod:"prod",testnet:"testnet",stage:"stage"},p2=Se.prod;s2.initEccLib(u8);function c8(p,m=Se.prod){var u;const v=d8(p),t=(u=s2.payments[v]({address:p,network:m===Se.prod?s2.networks.bitcoin:s2.networks.testnet}).output)==null?void 0:u.toString("hex");if(!t)throw new Error("Output script is not found.");return`0x${t}`}function d8(p){const m=s2.address.fromBech32(p);if(m.version===1&&m.data.length===32)return"p2tr";if(m.version===0&&m.data.length===20)return"p2wpkh";if(l8(p))return"p2wsh";throw new Error("Address type is not supported.")}function l8(p){return(p.startsWith("bc1")||p.startsWith("tb1"))&&p.length===62}const p8={baseApiUrl:"https://staging.prod.lombard.finance",bffApiUrl:"https://bff.stage.lombard.finance"},f8={baseApiUrl:"https://gastald-testnet.prod.lombard.finance",bffApiUrl:void 0},y8={baseApiUrl:"https://mainnet.prod.lombard.finance",bffApiUrl:"https://bff.prod.lombard.finance"},Be=(p=p2)=>{switch(p){case Se.prod:return y8;case Se.testnet:return f8;default:return p8}};function He(p){return{formatters:void 0,fees:void 0,serializers:void 0,...p}}const Go="2.23.15";let vn={getDocsUrl:({docsBaseUrl:p,docsPath:m="",docsSlug:u})=>m?`${p??"https://viem.sh"}${m}${u?`#${u}`:""}`:void 0,version:`viem@${Go}`},m0=class Fa extends Error{constructor(m,u={}){var M;const v=(()=>{var U;return u.cause instanceof Fa?u.cause.details:(U=u.cause)!=null&&U.message?u.cause.message:u.details})(),t=u.cause instanceof Fa&&u.cause.docsPath||u.docsPath,l=(M=vn.getDocsUrl)==null?void 0:M.call(vn,{...u,docsPath:t}),B=[m||"An error occurred.","",...u.metaMessages?[...u.metaMessages,""]:[],...l?[`Docs: ${l}`]:[],...v?[`Details: ${v}`]:[],...vn.version?[`Version: ${vn.version}`]:[]].join(`
2
+ `);super(B,u.cause?{cause:u.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=v,this.docsPath=t,this.metaMessages=u.metaMessages,this.name=u.name??this.name,this.shortMessage=m,this.version=Go}walk(m){return Wo(this,m)}};function Wo(p,m){return m!=null&&m(p)?p:p&&typeof p=="object"&&"cause"in p&&p.cause!==void 0?Wo(p.cause,m):m?null:p}let Zo=class extends m0{constructor({max:m,min:u,signed:v,size:t,value:l}){super(`Number "${l}" is not in safe ${t?`${t*8}-bit ${v?"signed":"unsigned"} `:""}integer range ${m?`(${u} to ${m})`:`(above ${u})`}`,{name:"IntegerOutOfRangeError"})}};class m8 extends m0{constructor(m){super(`Bytes value "${m}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class b8 extends m0{constructor(m){super(`Hex value "${m}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}let h8=class extends m0{constructor({givenSize:m,maxSize:u}){super(`Size cannot exceed ${u} bytes. Given size: ${m} bytes.`,{name:"SizeOverflowError"})}};function ht(p,{strict:m=!0}={}){return!p||typeof p!="string"?!1:m?/^0x[0-9a-fA-F]*$/.test(p):p.startsWith("0x")}function le(p){return ht(p,{strict:!1})?Math.ceil((p.length-2)/2):p.length}function bt(p,{dir:m="left"}={}){let u=typeof p=="string"?p.replace("0x",""):p,v=0;for(let t=0;t<u.length-1&&u[m==="left"?t:u.length-t-1].toString()==="0";t++)v++;return u=m==="left"?u.slice(v):u.slice(0,u.length-v),typeof p=="string"?(u.length===1&&m==="right"&&(u=`${u}0`),`0x${u.length%2===1?`0${u}`:u}`):u}let Yo=class extends m0{constructor({offset:m,position:u,size:v}){super(`Slice ${u==="start"?"starting":"ending"} at offset "${m}" is out-of-bounds (size: ${v}).`,{name:"SliceOffsetOutOfBoundsError"})}},Ko=class extends m0{constructor({size:m,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} size (${m}) exceeds padding size (${u}).`,{name:"SizeExceedsPaddingSizeError"})}};class Gi extends m0{constructor({size:m,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} is expected to be ${u} ${v} long, but is ${m} ${v} long.`,{name:"InvalidBytesLengthError"})}}function un(p,{dir:m,size:u=32}={}){return typeof p=="string"?i2(p,{dir:m,size:u}):g8(p,{dir:m,size:u})}function i2(p,{dir:m,size:u=32}={}){if(u===null)return p;const v=p.replace("0x","");if(v.length>u*2)throw new Ko({size:Math.ceil(v.length/2),targetSize:u,type:"hex"});return`0x${v[m==="right"?"padEnd":"padStart"](u*2,"0")}`}function g8(p,{dir:m,size:u=32}={}){if(u===null)return p;if(p.length>u)throw new Ko({size:p.length,targetSize:u,type:"bytes"});const v=new Uint8Array(u);for(let t=0;t<u;t++){const l=m==="right";v[l?t:u-t-1]=p[l?t:p.length-t-1]}return v}const w8=Array.from({length:256},(p,m)=>m.toString(16).padStart(2,"0"));function G0(p,m={}){return typeof p=="number"||typeof p=="bigint"?H0(p,m):typeof p=="string"?Q2(p,m):typeof p=="boolean"?Xo(p,m):we(p,m)}function Xo(p,m={}){const u=`0x${Number(p)}`;return typeof m.size=="number"?(Tt(u,{size:m.size}),un(u,{size:m.size})):u}function we(p,m={}){let u="";for(let t=0;t<p.length;t++)u+=w8[p[t]];const v=`0x${u}`;return typeof m.size=="number"?(Tt(v,{size:m.size}),un(v,{dir:"right",size:m.size})):v}function H0(p,m={}){const{signed:u,size:v}=m,t=BigInt(p);let l;v?u?l=(1n<<BigInt(v)*8n-1n)-1n:l=2n**(BigInt(v)*8n)-1n:typeof p=="number"&&(l=BigInt(Number.MAX_SAFE_INTEGER));const B=typeof l=="bigint"&&u?-l-1n:0;if(l&&t>l||t<B){const U=typeof p=="bigint"?"n":"";throw new Zo({max:l?`${l}${U}`:void 0,min:`${B}${U}`,signed:u,size:v,value:`${p}${U}`})}const M=`0x${(u&&t<0?(1n<<BigInt(v*8))+BigInt(t):t).toString(16)}`;return v?un(M,{size:v}):M}const T8=new TextEncoder;function Q2(p,m={}){const u=T8.encode(p);return we(u,m)}const v8=new TextEncoder;function cn(p,m={}){return typeof p=="number"||typeof p=="bigint"?x8(p,m):typeof p=="boolean"?A8(p,m):ht(p)?gt(p,m):A2(p,m)}function A8(p,m={}){const u=new Uint8Array(1);return u[0]=Number(p),typeof m.size=="number"?(Tt(u,{size:m.size}),un(u,{size:m.size})):u}const Ft={zero:48,nine:57,A:65,F:70,a:97,f:102};function Wi(p){if(p>=Ft.zero&&p<=Ft.nine)return p-Ft.zero;if(p>=Ft.A&&p<=Ft.F)return p-(Ft.A-10);if(p>=Ft.a&&p<=Ft.f)return p-(Ft.a-10)}function gt(p,m={}){let u=p;m.size&&(Tt(u,{size:m.size}),u=un(u,{dir:"right",size:m.size}));let v=u.slice(2);v.length%2&&(v=`0${v}`);const t=v.length/2,l=new Uint8Array(t);for(let B=0,M=0;B<t;B++){const U=Wi(v.charCodeAt(M++)),F=Wi(v.charCodeAt(M++));if(U===void 0||F===void 0)throw new m0(`Invalid byte sequence ("${v[M-2]}${v[M-1]}" in "${v}").`);l[B]=U*16+F}return l}function x8(p,m){const u=H0(p,m);return gt(u)}function A2(p,m={}){const u=v8.encode(p);return typeof m.size=="number"?(Tt(u,{size:m.size}),un(u,{dir:"right",size:m.size})):u}function Tt(p,{size:m}){if(le(p)>m)throw new h8({givenSize:le(p),maxSize:m})}function De(p,m={}){const{signed:u}=m;m.size&&Tt(p,{size:m.size});const v=BigInt(p);if(!u)return v;const t=(p.length-2)/2,l=(1n<<BigInt(t)*8n-1n)-1n;return v<=l?v:v-BigInt(`0x${"f".padStart(t*2,"f")}`)-1n}function E8(p,m={}){let u=p;if(m.size&&(Tt(u,{size:m.size}),u=bt(u)),bt(u)==="0x00")return!1;if(bt(u)==="0x01")return!0;throw new b8(u)}function Ct(p,m={}){return Number(De(p,m))}function Cs(p,m){return({exclude:u,format:v})=>({exclude:u,format:t=>{const l=m(t);if(u)for(const B of u)delete l[B];return{...l,...v(t)}},type:p})}const Qo={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function zr(p){const m={...p,blockHash:p.blockHash?p.blockHash:null,blockNumber:p.blockNumber?BigInt(p.blockNumber):null,chainId:p.chainId?Ct(p.chainId):void 0,gas:p.gas?BigInt(p.gas):void 0,gasPrice:p.gasPrice?BigInt(p.gasPrice):void 0,maxFeePerBlobGas:p.maxFeePerBlobGas?BigInt(p.maxFeePerBlobGas):void 0,maxFeePerGas:p.maxFeePerGas?BigInt(p.maxFeePerGas):void 0,maxPriorityFeePerGas:p.maxPriorityFeePerGas?BigInt(p.maxPriorityFeePerGas):void 0,nonce:p.nonce?Ct(p.nonce):void 0,to:p.to?p.to:null,transactionIndex:p.transactionIndex?Number(p.transactionIndex):null,type:p.type?Qo[p.type]:void 0,typeHex:p.type?p.type:void 0,value:p.value?BigInt(p.value):void 0,v:p.v?BigInt(p.v):void 0};return p.authorizationList&&(m.authorizationList=k8(p.authorizationList)),m.yParity=(()=>{if(p.yParity)return Number(p.yParity);if(typeof m.v=="bigint"){if(m.v===0n||m.v===27n)return 0;if(m.v===1n||m.v===28n)return 1;if(m.v>=35n)return m.v%2n===0n?1:0}})(),m.type==="legacy"&&(delete m.accessList,delete m.maxFeePerBlobGas,delete m.maxFeePerGas,delete m.maxPriorityFeePerGas,delete m.yParity),m.type==="eip2930"&&(delete m.maxFeePerBlobGas,delete m.maxFeePerGas,delete m.maxPriorityFeePerGas),m.type==="eip1559"&&delete m.maxFeePerBlobGas,m}const P8=Cs("transaction",zr);function k8(p){return p.map(m=>({contractAddress:m.address,chainId:Number(m.chainId),nonce:Number(m.nonce),r:m.r,s:m.s,yParity:Number(m.yParity)}))}function Bs(p){const m=(p.transactions??[]).map(u=>typeof u=="string"?u:zr(u));return{...p,baseFeePerGas:p.baseFeePerGas?BigInt(p.baseFeePerGas):null,blobGasUsed:p.blobGasUsed?BigInt(p.blobGasUsed):void 0,difficulty:p.difficulty?BigInt(p.difficulty):void 0,excessBlobGas:p.excessBlobGas?BigInt(p.excessBlobGas):void 0,gasLimit:p.gasLimit?BigInt(p.gasLimit):void 0,gasUsed:p.gasUsed?BigInt(p.gasUsed):void 0,hash:p.hash?p.hash:null,logsBloom:p.logsBloom?p.logsBloom:null,nonce:p.nonce?p.nonce:null,number:p.number?BigInt(p.number):null,size:p.size?BigInt(p.size):void 0,timestamp:p.timestamp?BigInt(p.timestamp):void 0,transactions:m,totalDifficulty:p.totalDifficulty?BigInt(p.totalDifficulty):null}}const C8=Cs("block",Bs);function Wt(p,{args:m,eventName:u}={}){return{...p,blockHash:p.blockHash?p.blockHash:null,blockNumber:p.blockNumber?BigInt(p.blockNumber):null,logIndex:p.logIndex?Number(p.logIndex):null,transactionHash:p.transactionHash?p.transactionHash:null,transactionIndex:p.transactionIndex?Number(p.transactionIndex):null,...u?{args:m,eventName:u}:{}}}const B8={"0x0":"reverted","0x1":"success"};function Jo(p){const m={...p,blockNumber:p.blockNumber?BigInt(p.blockNumber):null,contractAddress:p.contractAddress?p.contractAddress:null,cumulativeGasUsed:p.cumulativeGasUsed?BigInt(p.cumulativeGasUsed):null,effectiveGasPrice:p.effectiveGasPrice?BigInt(p.effectiveGasPrice):null,gasUsed:p.gasUsed?BigInt(p.gasUsed):null,logs:p.logs?p.logs.map(u=>Wt(u)):null,to:p.to?p.to:null,transactionIndex:p.transactionIndex?Ct(p.transactionIndex):null,status:p.status?B8[p.status]:null,type:p.type?Qo[p.type]||p.type:null};return p.blobGasPrice&&(m.blobGasPrice=BigInt(p.blobGasPrice)),p.blobGasUsed&&(m.blobGasUsed=BigInt(p.blobGasUsed)),m}const I8=Cs("transactionReceipt",Jo),S8={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function dn(p){const m={};return typeof p.authorizationList<"u"&&(m.authorizationList=M8(p.authorizationList)),typeof p.accessList<"u"&&(m.accessList=p.accessList),typeof p.blobVersionedHashes<"u"&&(m.blobVersionedHashes=p.blobVersionedHashes),typeof p.blobs<"u"&&(typeof p.blobs[0]!="string"?m.blobs=p.blobs.map(u=>we(u)):m.blobs=p.blobs),typeof p.data<"u"&&(m.data=p.data),typeof p.from<"u"&&(m.from=p.from),typeof p.gas<"u"&&(m.gas=H0(p.gas)),typeof p.gasPrice<"u"&&(m.gasPrice=H0(p.gasPrice)),typeof p.maxFeePerBlobGas<"u"&&(m.maxFeePerBlobGas=H0(p.maxFeePerBlobGas)),typeof p.maxFeePerGas<"u"&&(m.maxFeePerGas=H0(p.maxFeePerGas)),typeof p.maxPriorityFeePerGas<"u"&&(m.maxPriorityFeePerGas=H0(p.maxPriorityFeePerGas)),typeof p.nonce<"u"&&(m.nonce=H0(p.nonce)),typeof p.to<"u"&&(m.to=p.to),typeof p.type<"u"&&(m.type=S8[p.type]),typeof p.value<"u"&&(m.value=H0(p.value)),m}function M8(p){return p.map(m=>({address:m.contractAddress,r:m.r?H0(BigInt(m.r)):m.r,s:m.s?H0(BigInt(m.s)):m.s,chainId:H0(m.chainId),nonce:H0(m.nonce),...typeof m.yParity<"u"?{yParity:H0(m.yParity)}:{},...typeof m.v<"u"&&typeof m.yParity>"u"?{v:H0(m.v)}:{}}))}const Hr=2n**256n-1n;function Bt(p){return typeof p[0]=="string"?Rt(p):R8(p)}function R8(p){let m=0;for(const t of p)m+=t.length;const u=new Uint8Array(m);let v=0;for(const t of p)u.set(t,v),v+=t.length;return u}function Rt(p){return`0x${p.reduce((m,u)=>m+u.replace("0x",""),"")}`}class Zi extends m0{constructor({offset:m}){super(`Offset \`${m}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class _o extends m0{constructor({length:m,position:u}){super(`Position \`${u}\` is out of bounds (\`0 < position < ${m}\`).`,{name:"PositionOutOfBoundsError"})}}class N8 extends m0{constructor({count:m,limit:u}){super(`Recursive read limit of \`${u}\` exceeded (recursive read count: \`${m}\`).`,{name:"RecursiveReadLimitExceededError"})}}const U8={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new N8({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(p){if(p<0||p>this.bytes.length-1)throw new _o({length:this.bytes.length,position:p})},decrementPosition(p){if(p<0)throw new Zi({offset:p});const m=this.position-p;this.assertPosition(m),this.position=m},getReadCount(p){return this.positionReadCount.get(p||this.position)||0},incrementPosition(p){if(p<0)throw new Zi({offset:p});const m=this.position+p;this.assertPosition(m),this.position=m},inspectByte(p){const m=p??this.position;return this.assertPosition(m),this.bytes[m]},inspectBytes(p,m){const u=m??this.position;return this.assertPosition(u+p-1),this.bytes.subarray(u,u+p)},inspectUint8(p){const m=p??this.position;return this.assertPosition(m),this.bytes[m]},inspectUint16(p){const m=p??this.position;return this.assertPosition(m+1),this.dataView.getUint16(m)},inspectUint24(p){const m=p??this.position;return this.assertPosition(m+2),(this.dataView.getUint16(m)<<8)+this.dataView.getUint8(m+2)},inspectUint32(p){const m=p??this.position;return this.assertPosition(m+3),this.dataView.getUint32(m)},pushByte(p){this.assertPosition(this.position),this.bytes[this.position]=p,this.position++},pushBytes(p){this.assertPosition(this.position+p.length-1),this.bytes.set(p,this.position),this.position+=p.length},pushUint8(p){this.assertPosition(this.position),this.bytes[this.position]=p,this.position++},pushUint16(p){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,p),this.position+=2},pushUint24(p){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,p>>8),this.dataView.setUint8(this.position+2,p&255),this.position+=3},pushUint32(p){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,p),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const p=this.inspectByte();return this.position++,p},readBytes(p,m){this.assertReadLimit(),this._touch();const u=this.inspectBytes(p);return this.position+=m??p,u},readUint8(){this.assertReadLimit(),this._touch();const p=this.inspectUint8();return this.position+=1,p},readUint16(){this.assertReadLimit(),this._touch();const p=this.inspectUint16();return this.position+=2,p},readUint24(){this.assertReadLimit(),this._touch();const p=this.inspectUint24();return this.position+=3,p},readUint32(){this.assertReadLimit(),this._touch();const p=this.inspectUint32();return this.position+=4,p},get remaining(){return this.bytes.length-this.position},setPosition(p){const m=this.position;return this.assertPosition(p),this.position=p,()=>this.position=m},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const p=this.getReadCount();this.positionReadCount.set(this.position,p+1),p>0&&this.recursiveReadCount++}};function Is(p,{recursiveReadLimit:m=8192}={}){const u=Object.create(U8);return u.bytes=p,u.dataView=new DataView(p.buffer,p.byteOffset,p.byteLength),u.positionReadCount=new Map,u.recursiveReadLimit=m,u}function o2(p,m="hex"){const u=$o(p),v=Is(new Uint8Array(u.length));return u.encode(v),m==="hex"?we(v.bytes):v.bytes}function $o(p){return Array.isArray(p)?O8(p.map(m=>$o(m))):L8(p)}function O8(p){const m=p.reduce((t,l)=>t+l.length,0),u=e4(m);return{length:m<=55?1+m:1+u+m,encode(t){m<=55?t.pushByte(192+m):(t.pushByte(247+u),u===1?t.pushUint8(m):u===2?t.pushUint16(m):u===3?t.pushUint24(m):t.pushUint32(m));for(const{encode:l}of p)l(t)}}}function L8(p){const m=typeof p=="string"?gt(p):p,u=e4(m.length);return{length:m.length===1&&m[0]<128?1:m.length<=55?1+m.length:1+u+m.length,encode(t){m.length===1&&m[0]<128?t.pushBytes(m):m.length<=55?(t.pushByte(128+m.length),t.pushBytes(m)):(t.pushByte(183+u),u===1?t.pushUint8(m.length):u===2?t.pushUint16(m.length):u===3?t.pushUint24(m.length):t.pushUint32(m.length),t.pushBytes(m))}}}function e4(p){if(p<2**8)return 1;if(p<2**16)return 2;if(p<2**24)return 3;if(p<2**32)return 4;throw new m0("Length is too large.")}const D8={gwei:9,wei:18},F8={ether:-9,wei:9};function t4(p,m){let u=p.toString();const v=u.startsWith("-");v&&(u=u.slice(1)),u=u.padStart(m,"0");let[t,l]=[u.slice(0,u.length-m),u.slice(u.length-m)];return l=l.replace(/(0+)$/,""),`${v?"-":""}${t||"0"}${l?`.${l}`:""}`}function Ss(p,m="wei"){return t4(p,D8[m])}function Ge(p,m="wei"){return t4(p,F8[m])}function Jn(p){const m=Object.entries(p).map(([v,t])=>t===void 0||t===!1?null:[v,t]).filter(Boolean),u=m.reduce((v,[t])=>Math.max(v,t.length),0);return m.map(([v,t])=>` ${`${v}:`.padEnd(u+1)} ${t}`).join(`
3
+ `)}class z8 extends m0{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join(`
4
+ `),{name:"FeeConflictError"})}}class H8 extends m0{constructor({v:m}){super(`Invalid \`v\` value "${m}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}}class V8 extends m0{constructor({transaction:m}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Jn(m),"}","","To infer the type, either provide:","- a `type` to the Transaction, or","- an EIP-1559 Transaction with `maxFeePerGas`, or","- an EIP-2930 Transaction with `gasPrice` & `accessList`, or","- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or","- an EIP-7702 Transaction with `authorizationList`, or","- a Legacy Transaction with `gasPrice`"],name:"InvalidSerializableTransactionError"})}}class j8 extends m0{constructor({storageKey:m}){super(`Size for storage key "${m}" is invalid. Expected 32 bytes. Got ${Math.floor((m.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}}class q8 extends m0{constructor(m,{account:u,docsPath:v,chain:t,data:l,gas:B,gasPrice:M,maxFeePerGas:U,maxPriorityFeePerGas:F,nonce:W,to:G,value:q}){var n0;const D=Jn({chain:t&&`${t==null?void 0:t.name} (id: ${t==null?void 0:t.id})`,from:u==null?void 0:u.address,to:G,value:typeof q<"u"&&`${Ss(q)} ${((n0=t==null?void 0:t.nativeCurrency)==null?void 0:n0.symbol)||"ETH"}`,data:l,gas:B,gasPrice:typeof M<"u"&&`${Ge(M)} gwei`,maxFeePerGas:typeof U<"u"&&`${Ge(U)} gwei`,maxPriorityFeePerGas:typeof F<"u"&&`${Ge(F)} gwei`,nonce:W});super(m.shortMessage,{cause:m,docsPath:v,metaMessages:[...m.metaMessages?[...m.metaMessages," "]:[],"Request Arguments:",D].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=m}}class n4 extends m0{constructor({blockHash:m,blockNumber:u,blockTag:v,hash:t,index:l}){let B="Transaction";v&&l!==void 0&&(B=`Transaction at block time "${v}" at index "${l}"`),m&&l!==void 0&&(B=`Transaction at block hash "${m}" at index "${l}"`),u&&l!==void 0&&(B=`Transaction at block number "${u}" at index "${l}"`),t&&(B=`Transaction with hash "${t}"`),super(`${B} could not be found.`,{name:"TransactionNotFoundError"})}}class r4 extends m0{constructor({hash:m}){super(`Transaction receipt with hash "${m}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}}class G8 extends m0{constructor({hash:m}){super(`Timed out while waiting for transaction with hash "${m}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}function Ms(p){const{kzg:m}=p,u=p.to??(typeof p.blobs[0]=="string"?"hex":"bytes"),v=typeof p.blobs[0]=="string"?p.blobs.map(l=>gt(l)):p.blobs,t=[];for(const l of v)t.push(Uint8Array.from(m.blobToKzgCommitment(l)));return u==="bytes"?t:t.map(l=>we(l))}function Rs(p){const{kzg:m}=p,u=p.to??(typeof p.blobs[0]=="string"?"hex":"bytes"),v=typeof p.blobs[0]=="string"?p.blobs.map(B=>gt(B)):p.blobs,t=typeof p.commitments[0]=="string"?p.commitments.map(B=>gt(B)):p.commitments,l=[];for(let B=0;B<v.length;B++){const M=v[B],U=t[B];l.push(Uint8Array.from(m.computeBlobKzgProof(M,U)))}return u==="bytes"?l:l.map(B=>we(B))}function Ur(p){if(!Number.isSafeInteger(p)||p<0)throw new Error("positive integer expected, got "+p)}function W8(p){return p instanceof Uint8Array||ArrayBuffer.isView(p)&&p.constructor.name==="Uint8Array"}function _n(p,...m){if(!W8(p))throw new Error("Uint8Array expected");if(m.length>0&&!m.includes(p.length))throw new Error("Uint8Array expected of length "+m+", got length="+p.length)}function Z8(p){if(typeof p!="function"||typeof p.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ur(p.outputLen),Ur(p.blockLen)}function J2(p,m=!0){if(p.destroyed)throw new Error("Hash instance has been destroyed");if(m&&p.finished)throw new Error("Hash#digest() has already been called")}function a4(p,m){_n(p);const u=m.outputLen;if(p.length<u)throw new Error("digestInto() expects output buffer of length at least "+u)}const H2=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Y8(p){return new Uint32Array(p.buffer,p.byteOffset,Math.floor(p.byteLength/4))}function ga(p){return new DataView(p.buffer,p.byteOffset,p.byteLength)}function Pt(p,m){return p<<32-m|p>>>m}const Yi=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function K8(p){return p<<24&4278190080|p<<8&16711680|p>>>8&65280|p>>>24&255}function Ki(p){for(let m=0;m<p.length;m++)p[m]=K8(p[m])}function X8(p){if(typeof p!="string")throw new Error("utf8ToBytes expected string, got "+typeof p);return new Uint8Array(new TextEncoder().encode(p))}function Vr(p){return typeof p=="string"&&(p=X8(p)),_n(p),p}function Q8(...p){let m=0;for(let v=0;v<p.length;v++){const t=p[v];_n(t),m+=t.length}const u=new Uint8Array(m);for(let v=0,t=0;v<p.length;v++){const l=p[v];u.set(l,t),t+=l.length}return u}class Ns{clone(){return this._cloneInto()}}function s4(p){const m=v=>p().update(Vr(v)).digest(),u=p();return m.outputLen=u.outputLen,m.blockLen=u.blockLen,m.create=()=>p(),m}function J8(p=32){if(H2&&typeof H2.getRandomValues=="function")return H2.getRandomValues(new Uint8Array(p));if(H2&&typeof H2.randomBytes=="function")return H2.randomBytes(p);throw new Error("crypto.getRandomValues must be defined")}function _8(p,m,u,v){if(typeof p.setBigUint64=="function")return p.setBigUint64(m,u,v);const t=BigInt(32),l=BigInt(4294967295),B=Number(u>>t&l),M=Number(u&l),U=v?4:0,F=v?0:4;p.setUint32(m+U,B,v),p.setUint32(m+F,M,v)}function $8(p,m,u){return p&m^~p&u}function ed(p,m,u){return p&m^p&u^m&u}class td extends Ns{constructor(m,u,v,t){super(),this.blockLen=m,this.outputLen=u,this.padOffset=v,this.isLE=t,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(m),this.view=ga(this.buffer)}update(m){J2(this);const{view:u,buffer:v,blockLen:t}=this;m=Vr(m);const l=m.length;for(let B=0;B<l;){const M=Math.min(t-this.pos,l-B);if(M===t){const U=ga(m);for(;t<=l-B;B+=t)this.process(U,B);continue}v.set(m.subarray(B,B+M),this.pos),this.pos+=M,B+=M,this.pos===t&&(this.process(u,0),this.pos=0)}return this.length+=m.length,this.roundClean(),this}digestInto(m){J2(this),a4(m,this),this.finished=!0;const{buffer:u,view:v,blockLen:t,isLE:l}=this;let{pos:B}=this;u[B++]=128,this.buffer.subarray(B).fill(0),this.padOffset>t-B&&(this.process(v,0),B=0);for(let G=B;G<t;G++)u[G]=0;_8(v,t-8,BigInt(this.length*8),l),this.process(v,0);const M=ga(m),U=this.outputLen;if(U%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const F=U/4,W=this.get();if(F>W.length)throw new Error("_sha2: outputLen bigger than state");for(let G=0;G<F;G++)M.setUint32(4*G,W[G],l)}digest(){const{buffer:m,outputLen:u}=this;this.digestInto(m);const v=m.slice(0,u);return this.destroy(),v}_cloneInto(m){m||(m=new this.constructor),m.set(...this.get());const{blockLen:u,buffer:v,length:t,finished:l,destroyed:B,pos:M}=this;return m.length=t,m.pos=M,m.finished=l,m.destroyed=B,t%u&&m.buffer.set(v),m}}const nd=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),t2=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),n2=new Uint32Array(64);class rd extends td{constructor(){super(64,32,8,!1),this.A=t2[0]|0,this.B=t2[1]|0,this.C=t2[2]|0,this.D=t2[3]|0,this.E=t2[4]|0,this.F=t2[5]|0,this.G=t2[6]|0,this.H=t2[7]|0}get(){const{A:m,B:u,C:v,D:t,E:l,F:B,G:M,H:U}=this;return[m,u,v,t,l,B,M,U]}set(m,u,v,t,l,B,M,U){this.A=m|0,this.B=u|0,this.C=v|0,this.D=t|0,this.E=l|0,this.F=B|0,this.G=M|0,this.H=U|0}process(m,u){for(let G=0;G<16;G++,u+=4)n2[G]=m.getUint32(u,!1);for(let G=16;G<64;G++){const q=n2[G-15],D=n2[G-2],n0=Pt(q,7)^Pt(q,18)^q>>>3,Q=Pt(D,17)^Pt(D,19)^D>>>10;n2[G]=Q+n2[G-7]+n0+n2[G-16]|0}let{A:v,B:t,C:l,D:B,E:M,F:U,G:F,H:W}=this;for(let G=0;G<64;G++){const q=Pt(M,6)^Pt(M,11)^Pt(M,25),D=W+q+$8(M,U,F)+nd[G]+n2[G]|0,Q=(Pt(v,2)^Pt(v,13)^Pt(v,22))+ed(v,t,l)|0;W=F,F=U,U=M,M=B+D|0,B=l,l=t,t=v,v=D+Q|0}v=v+this.A|0,t=t+this.B|0,l=l+this.C|0,B=B+this.D|0,M=M+this.E|0,U=U+this.F|0,F=F+this.G|0,W=W+this.H|0,this.set(v,t,l,B,M,U,F,W)}roundClean(){n2.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const i4=s4(()=>new rd);function ad(p,m){return i4(ht(p,{strict:!1})?cn(p):p)}function sd(p){const{commitment:m,version:u=1}=p,v=p.to??(typeof m=="string"?"hex":"bytes"),t=ad(m);return t.set([u],0),v==="bytes"?t:we(t)}function o4(p){const{commitments:m,version:u}=p,v=p.to??(typeof m[0]=="string"?"hex":"bytes"),t=[];for(const l of m)t.push(sd({commitment:l,to:v,version:u}));return t}const Xi=6,u4=32,Us=4096,c4=u4*Us,Qi=c4*Xi-1-1*Us*Xi,d4=1;class id extends m0{constructor({maxSize:m,size:u}){super("Blob size is too large.",{metaMessages:[`Max: ${m} bytes`,`Given: ${u} bytes`],name:"BlobSizeTooLargeError"})}}class l4 extends m0{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class od extends m0{constructor({hash:m,size:u}){super(`Versioned hash "${m}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${u}`],name:"InvalidVersionedHashSizeError"})}}class ud extends m0{constructor({hash:m,version:u}){super(`Versioned hash "${m}" version is invalid.`,{metaMessages:[`Expected: ${d4}`,`Received: ${u}`],name:"InvalidVersionedHashVersionError"})}}function cd(p){const m=p.to??(typeof p.data=="string"?"hex":"bytes"),u=typeof p.data=="string"?gt(p.data):p.data,v=le(u);if(!v)throw new l4;if(v>Qi)throw new id({maxSize:Qi,size:v});const t=[];let l=!0,B=0;for(;l;){const M=Is(new Uint8Array(c4));let U=0;for(;U<Us;){const F=u.slice(B,B+(u4-1));if(M.pushByte(0),M.pushBytes(F),F.length<31){M.pushByte(128),l=!1;break}U++,B+=31}t.push(M)}return m==="bytes"?t.map(M=>M.bytes):t.map(M=>we(M.bytes))}function p4(p){const{data:m,kzg:u,to:v}=p,t=p.blobs??cd({data:m,to:v}),l=p.commitments??Ms({blobs:t,kzg:u,to:v}),B=p.proofs??Rs({blobs:t,commitments:l,kzg:u,to:v}),M=[];for(let U=0;U<t.length;U++)M.push({blob:t[U],commitment:l[U],proof:B[U]});return M}function dd(p){if(!p||p.length===0)return[];const m=[];for(const u of p){const{contractAddress:v,chainId:t,nonce:l,...B}=u;m.push([t?G0(t):"0x",v,l?G0(l):"0x",...tr({},B)])}return m}let Fe=class extends m0{constructor({address:m}){super(`Address "${m}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}};class za extends m0{constructor({blockNumber:m,chain:u,contract:v}){super(`Chain "${u.name}" does not support contract "${v.name}".`,{metaMessages:["This could be due to any of the following:",...m&&v.blockCreated&&v.blockCreated>m?[`- The contract "${v.name}" was not deployed until block ${v.blockCreated} (current block ${m}).`]:[`- The chain does not have the contract "${v.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class ld extends m0{constructor({chain:m,currentChainId:u}){super(`The current chain of the wallet (id: ${u}) does not match the target chain for the transaction (id: ${m.id} – ${m.name}).`,{metaMessages:[`Current Chain ID: ${u}`,`Expected Chain ID: ${m.id} – ${m.name}`],name:"ChainMismatchError"})}}class pd extends m0{constructor(){super(["No chain was provided to the request.","Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient."].join(`
5
+ `),{name:"ChainNotFoundError"})}}class f4 extends m0{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}class jr extends m0{constructor({chainId:m}){super(typeof m=="number"?`Chain ID "${m}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}class j2 extends m0{constructor({cause:m,message:u}={}){var t;const v=(t=u==null?void 0:u.replace("execution reverted: ",""))==null?void 0:t.replace("execution reverted","");super(`Execution reverted ${v?`with reason: ${v}`:"for an unknown reason"}.`,{cause:m,name:"ExecutionRevertedError"})}}Object.defineProperty(j2,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(j2,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class C2 extends m0{constructor({cause:m,maxFeePerGas:u}={}){super(`The fee cap (\`maxFeePerGas\`${u?` = ${Ge(u)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:m,name:"FeeCapTooHighError"})}}Object.defineProperty(C2,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class Ha extends m0{constructor({cause:m,maxFeePerGas:u}={}){super(`The fee cap (\`maxFeePerGas\`${u?` = ${Ge(u)}`:""} gwei) cannot be lower than the block base fee.`,{cause:m,name:"FeeCapTooLowError"})}}Object.defineProperty(Ha,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class Va extends m0{constructor({cause:m,nonce:u}={}){super(`Nonce provided for the transaction ${u?`(${u}) `:""}is higher than the next one expected.`,{cause:m,name:"NonceTooHighError"})}}Object.defineProperty(Va,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class ja extends m0{constructor({cause:m,nonce:u}={}){super([`Nonce provided for the transaction ${u?`(${u}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
6
+ `),{cause:m,name:"NonceTooLowError"})}}Object.defineProperty(ja,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class qa extends m0{constructor({cause:m,nonce:u}={}){super(`Nonce provided for the transaction ${u?`(${u}) `:""}exceeds the maximum allowed nonce.`,{cause:m,name:"NonceMaxValueError"})}}Object.defineProperty(qa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class Ga extends m0{constructor({cause:m}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
7
+ `),{cause:m,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."],name:"InsufficientFundsError"})}}Object.defineProperty(Ga,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class Wa extends m0{constructor({cause:m,gas:u}={}){super(`The amount of gas ${u?`(${u}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:m,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(Wa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class Za extends m0{constructor({cause:m,gas:u}={}){super(`The amount of gas ${u?`(${u}) `:""}provided for the transaction is too low.`,{cause:m,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(Za,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class Ya extends m0{constructor({cause:m}){super("The transaction type is not supported for this chain.",{cause:m,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(Ya,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class Sn extends m0{constructor({cause:m,maxPriorityFeePerGas:u,maxFeePerGas:v}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${u?` = ${Ge(u)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${v?` = ${Ge(v)} gwei`:""}).`].join(`
8
+ `),{cause:m,name:"TipAboveFeeCapError"})}}Object.defineProperty(Sn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class $n extends m0{constructor({cause:m}){super(`An error occurred while executing: ${m==null?void 0:m.shortMessage}`,{cause:m,name:"UnknownNodeError"})}}let qr=class extends Map{constructor(m){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=m}get(m){const u=super.get(m);return super.has(m)&&u!==void 0&&(this.delete(m),super.set(m,u)),u}set(m,u){if(super.set(m,u),this.maxSize&&this.size>this.maxSize){const v=this.keys().next().value;v&&this.delete(v)}return this}};const Ar=BigInt(2**32-1),Ji=BigInt(32);function fd(p,m=!1){return m?{h:Number(p&Ar),l:Number(p>>Ji&Ar)}:{h:Number(p>>Ji&Ar)|0,l:Number(p&Ar)|0}}function yd(p,m=!1){let u=new Uint32Array(p.length),v=new Uint32Array(p.length);for(let t=0;t<p.length;t++){const{h:l,l:B}=fd(p[t],m);[u[t],v[t]]=[l,B]}return[u,v]}const md=(p,m,u)=>p<<u|m>>>32-u,bd=(p,m,u)=>m<<u|p>>>32-u,hd=(p,m,u)=>m<<u-32|p>>>64-u,gd=(p,m,u)=>p<<u-32|m>>>64-u,y4=[],m4=[],b4=[],wd=BigInt(0),An=BigInt(1),Td=BigInt(2),vd=BigInt(7),Ad=BigInt(256),xd=BigInt(113);for(let p=0,m=An,u=1,v=0;p<24;p++){[u,v]=[v,(2*u+3*v)%5],y4.push(2*(5*v+u)),m4.push((p+1)*(p+2)/2%64);let t=wd;for(let l=0;l<7;l++)m=(m<<An^(m>>vd)*xd)%Ad,m&Td&&(t^=An<<(An<<BigInt(l))-An);b4.push(t)}const[Ed,Pd]=yd(b4,!0),_i=(p,m,u)=>u>32?hd(p,m,u):md(p,m,u),$i=(p,m,u)=>u>32?gd(p,m,u):bd(p,m,u);function kd(p,m=24){const u=new Uint32Array(10);for(let v=24-m;v<24;v++){for(let B=0;B<10;B++)u[B]=p[B]^p[B+10]^p[B+20]^p[B+30]^p[B+40];for(let B=0;B<10;B+=2){const M=(B+8)%10,U=(B+2)%10,F=u[U],W=u[U+1],G=_i(F,W,1)^u[M],q=$i(F,W,1)^u[M+1];for(let D=0;D<50;D+=10)p[B+D]^=G,p[B+D+1]^=q}let t=p[2],l=p[3];for(let B=0;B<24;B++){const M=m4[B],U=_i(t,l,M),F=$i(t,l,M),W=y4[B];t=p[W],l=p[W+1],p[W]=U,p[W+1]=F}for(let B=0;B<50;B+=10){for(let M=0;M<10;M++)u[M]=p[B+M];for(let M=0;M<10;M++)p[B+M]^=~u[(M+2)%10]&u[(M+4)%10]}p[0]^=Ed[v],p[1]^=Pd[v]}u.fill(0)}class Os extends Ns{constructor(m,u,v,t=!1,l=24){if(super(),this.blockLen=m,this.suffix=u,this.outputLen=v,this.enableXOF=t,this.rounds=l,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Ur(v),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Y8(this.state)}keccak(){Yi||Ki(this.state32),kd(this.state32,this.rounds),Yi||Ki(this.state32),this.posOut=0,this.pos=0}update(m){J2(this);const{blockLen:u,state:v}=this;m=Vr(m);const t=m.length;for(let l=0;l<t;){const B=Math.min(u-this.pos,t-l);for(let M=0;M<B;M++)v[this.pos++]^=m[l++];this.pos===u&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:m,suffix:u,pos:v,blockLen:t}=this;m[v]^=u,u&128&&v===t-1&&this.keccak(),m[t-1]^=128,this.keccak()}writeInto(m){J2(this,!1),_n(m),this.finish();const u=this.state,{blockLen:v}=this;for(let t=0,l=m.length;t<l;){this.posOut>=v&&this.keccak();const B=Math.min(v-this.posOut,l-t);m.set(u.subarray(this.posOut,this.posOut+B),t),this.posOut+=B,t+=B}return m}xofInto(m){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(m)}xof(m){return Ur(m),this.xofInto(new Uint8Array(m))}digestInto(m){if(a4(m,this),this.finished)throw new Error("digest() was already called");return this.writeInto(m),this.destroy(),m}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(m){const{blockLen:u,suffix:v,outputLen:t,rounds:l,enableXOF:B}=this;return m||(m=new Os(u,v,t,B,l)),m.state32.set(this.state32),m.pos=this.pos,m.posOut=this.posOut,m.finished=this.finished,m.rounds=l,m.suffix=v,m.outputLen=t,m.enableXOF=B,m.destroyed=this.destroyed,m}}const Cd=(p,m,u)=>s4(()=>new Os(m,p,u)),h4=Cd(1,136,256/8);function Pe(p,m){const u=m||"hex",v=h4(ht(p,{strict:!1})?cn(p):p);return u==="bytes"?v:G0(v)}const wa=new qr(8192);function er(p,m){if(wa.has(`${p}.${m}`))return wa.get(`${p}.${m}`);const u=p.substring(2).toLowerCase(),v=Pe(A2(u),"bytes"),t=u.split("");for(let B=0;B<40;B+=2)v[B>>1]>>4>=8&&t[B]&&(t[B]=t[B].toUpperCase()),(v[B>>1]&15)>=8&&t[B+1]&&(t[B+1]=t[B+1].toUpperCase());const l=`0x${t.join("")}`;return wa.set(`${p}.${m}`,l),l}function g4(p,m){if(!Ce(p,{strict:!1}))throw new Fe({address:p});return er(p,m)}const Bd=/^0x[a-fA-F0-9]{40}$/,Ta=new qr(8192);function Ce(p,m){const{strict:u=!0}=m??{},v=`${p}.${u}`;if(Ta.has(v))return Ta.get(v);const t=Bd.test(p)?p.toLowerCase()===p?!0:u?er(p)===p:!0:!1;return Ta.set(v,t),t}function Mn(p,m,u,{strict:v}={}){return ht(p,{strict:!1})?A4(p,m,u,{strict:v}):v4(p,m,u,{strict:v})}function w4(p,m){if(typeof m=="number"&&m>0&&m>le(p)-1)throw new Yo({offset:m,position:"start",size:le(p)})}function T4(p,m,u){if(typeof m=="number"&&typeof u=="number"&&le(p)!==u-m)throw new Yo({offset:u,position:"end",size:le(p)})}function v4(p,m,u,{strict:v}={}){w4(p,m);const t=p.slice(m,u);return v&&T4(t,m,u),t}function A4(p,m,u,{strict:v}={}){w4(p,m);const t=`0x${p.replace("0x","").slice((m??0)*2,(u??p.length)*2)}`;return v&&T4(t,m,u),t}function Id(p){const{authorizationList:m}=p;if(m)for(const u of m){const{contractAddress:v,chainId:t}=u;if(!Ce(v))throw new Fe({address:v});if(t<0)throw new jr({chainId:t})}Ls(p)}function Sd(p){const{blobVersionedHashes:m}=p;if(m){if(m.length===0)throw new l4;for(const u of m){const v=le(u),t=Ct(Mn(u,0,1));if(v!==32)throw new od({hash:u,size:v});if(t!==d4)throw new ud({hash:u,version:t})}}Ls(p)}function Ls(p){const{chainId:m,maxPriorityFeePerGas:u,maxFeePerGas:v,to:t}=p;if(m<=0)throw new jr({chainId:m});if(t&&!Ce(t))throw new Fe({address:t});if(v&&v>Hr)throw new C2({maxFeePerGas:v});if(u&&v&&u>v)throw new Sn({maxFeePerGas:v,maxPriorityFeePerGas:u})}function Md(p){const{chainId:m,maxPriorityFeePerGas:u,gasPrice:v,maxFeePerGas:t,to:l}=p;if(m<=0)throw new jr({chainId:m});if(l&&!Ce(l))throw new Fe({address:l});if(u||t)throw new m0("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(v&&v>Hr)throw new C2({maxFeePerGas:v})}function Rd(p){const{chainId:m,maxPriorityFeePerGas:u,gasPrice:v,maxFeePerGas:t,to:l}=p;if(l&&!Ce(l))throw new Fe({address:l});if(typeof m<"u"&&m<=0)throw new jr({chainId:m});if(u||t)throw new m0("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(v&&v>Hr)throw new C2({maxFeePerGas:v})}function x4(p){if(p.type)return p.type;if(typeof p.authorizationList<"u")return"eip7702";if(typeof p.blobs<"u"||typeof p.blobVersionedHashes<"u"||typeof p.maxFeePerBlobGas<"u"||typeof p.sidecars<"u")return"eip4844";if(typeof p.maxFeePerGas<"u"||typeof p.maxPriorityFeePerGas<"u")return"eip1559";if(typeof p.gasPrice<"u")return typeof p.accessList<"u"?"eip2930":"legacy";throw new V8({transaction:p})}function Gr(p){if(!p||p.length===0)return[];const m=[];for(let u=0;u<p.length;u++){const{address:v,storageKeys:t}=p[u];for(let l=0;l<t.length;l++)if(t[l].length-2!==64)throw new j8({storageKey:t[l]});if(!Ce(v,{strict:!1}))throw new Fe({address:v});m.push([v,t])}return m}function Nd(p,m){const u=x4(p);return u==="eip1559"?Ld(p,m):u==="eip2930"?Dd(p,m):u==="eip4844"?Od(p,m):u==="eip7702"?Ud(p,m):Fd(p,m)}function Ud(p,m){const{authorizationList:u,chainId:v,gas:t,nonce:l,to:B,value:M,maxFeePerGas:U,maxPriorityFeePerGas:F,accessList:W,data:G}=p;Id(p);const q=Gr(W),D=dd(u);return Rt(["0x04",o2([G0(v),l?G0(l):"0x",F?G0(F):"0x",U?G0(U):"0x",t?G0(t):"0x",B??"0x",M?G0(M):"0x",G??"0x",q,D,...tr(p,m)])])}function Od(p,m){const{chainId:u,gas:v,nonce:t,to:l,value:B,maxFeePerBlobGas:M,maxFeePerGas:U,maxPriorityFeePerGas:F,accessList:W,data:G}=p;Sd(p);let q=p.blobVersionedHashes,D=p.sidecars;if(p.blobs&&(typeof q>"u"||typeof D>"u")){const c0=typeof p.blobs[0]=="string"?p.blobs:p.blobs.map(h0=>we(h0)),p0=p.kzg,v0=Ms({blobs:c0,kzg:p0});if(typeof q>"u"&&(q=o4({commitments:v0})),typeof D>"u"){const h0=Rs({blobs:c0,commitments:v0,kzg:p0});D=p4({blobs:c0,commitments:v0,proofs:h0})}}const n0=Gr(W),Q=[G0(u),t?G0(t):"0x",F?G0(F):"0x",U?G0(U):"0x",v?G0(v):"0x",l??"0x",B?G0(B):"0x",G??"0x",n0,M?G0(M):"0x",q??[],...tr(p,m)],J=[],a0=[],o0=[];if(D)for(let c0=0;c0<D.length;c0++){const{blob:p0,commitment:v0,proof:h0}=D[c0];J.push(p0),a0.push(v0),o0.push(h0)}return Rt(["0x03",o2(D?[Q,J,a0,o0]:Q)])}function Ld(p,m){const{chainId:u,gas:v,nonce:t,to:l,value:B,maxFeePerGas:M,maxPriorityFeePerGas:U,accessList:F,data:W}=p;Ls(p);const G=Gr(F),q=[G0(u),t?G0(t):"0x",U?G0(U):"0x",M?G0(M):"0x",v?G0(v):"0x",l??"0x",B?G0(B):"0x",W??"0x",G,...tr(p,m)];return Rt(["0x02",o2(q)])}function Dd(p,m){const{chainId:u,gas:v,data:t,nonce:l,to:B,value:M,accessList:U,gasPrice:F}=p;Md(p);const W=Gr(U),G=[G0(u),l?G0(l):"0x",F?G0(F):"0x",v?G0(v):"0x",B??"0x",M?G0(M):"0x",t??"0x",W,...tr(p,m)];return Rt(["0x01",o2(G)])}function Fd(p,m){const{chainId:u=0,gas:v,data:t,nonce:l,to:B,value:M,gasPrice:U}=p;Rd(p);let F=[l?G0(l):"0x",U?G0(U):"0x",v?G0(v):"0x",B??"0x",M?G0(M):"0x",t??"0x"];if(m){const W=(()=>{if(m.v>=35n)return(m.v-35n)/2n>0?m.v:27n+(m.v===35n?0n:1n);if(u>0)return BigInt(u*2)+BigInt(35n+m.v-27n);const D=27n+(m.v===27n?0n:1n);if(m.v!==D)throw new H8({v:m.v});return D})(),G=bt(m.r),q=bt(m.s);F=[...F,G0(W),G==="0x00"?"0x":G,q==="0x00"?"0x":q]}else u>0&&(F=[...F,G0(u),"0x","0x"]);return o2(F)}function tr(p,m){const u=m??p,{v,yParity:t}=u;if(typeof u.r>"u")return[];if(typeof u.s>"u")return[];if(typeof v>"u"&&typeof t>"u")return[];const l=bt(u.r),B=bt(u.s);return[typeof t=="number"?t?G0(1):"0x":v===0n?"0x":v===1n?G0(1):v===27n?"0x":G0(1),l==="0x00"?"0x":l,B==="0x00"?"0x":B]}const zd={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}},Hd={block:C8({format(p){var u;return{transactions:(u=p.transactions)==null?void 0:u.map(v=>{if(typeof v=="string")return v;const t=zr(v);return t.typeHex==="0x7e"&&(t.isSystemTx=v.isSystemTx,t.mint=v.mint?De(v.mint):void 0,t.sourceHash=v.sourceHash,t.type="deposit"),t}),stateRoot:p.stateRoot}}}),transaction:P8({format(p){const m={};return p.type==="0x7e"&&(m.isSystemTx=p.isSystemTx,m.mint=p.mint?De(p.mint):void 0,m.sourceHash=p.sourceHash,m.type="deposit"),m}}),transactionReceipt:I8({format(p){return{l1GasPrice:p.l1GasPrice?De(p.l1GasPrice):null,l1GasUsed:p.l1GasUsed?De(p.l1GasUsed):null,l1Fee:p.l1Fee?De(p.l1Fee):null,l1FeeScalar:p.l1FeeScalar?Number(p.l1FeeScalar):null}}})};function Vd(p,m){return Gd(p)?qd(p):Nd(p,m)}const jd={transaction:Vd};function qd(p){Wd(p);const{sourceHash:m,data:u,from:v,gas:t,isSystemTx:l,mint:B,to:M,value:U}=p,F=[m,v,M??"0x",B?G0(B):"0x",U?G0(U):"0x",t?G0(t):"0x",l?"0x1":"0x",u??"0x"];return Rt(["0x7e",o2(F)])}function Gd(p){return p.type==="deposit"||typeof p.sourceHash<"u"}function Wd(p){const{from:m,to:u}=p;if(m&&!Ce(m))throw new Fe({address:m});if(u&&!Ce(u))throw new Fe({address:u})}const _2={contracts:zd,formatters:Hd,serializers:jd},xn=1,Zd=He({..._2,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{..._2.contracts,disputeGameFactory:{[xn]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[xn]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[xn]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[xn]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:xn}),En=11155111,Yd=He({..._2,id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://sepolia.basescan.org",apiUrl:"https://api-sepolia.basescan.org/api"}},contracts:{..._2.contracts,disputeGameFactory:{[En]:{address:"0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1"}},l2OutputOracle:{[En]:{address:"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"}},portal:{[En]:{address:"0x49f53e41452c74589e85ca1677426ba426459e85",blockCreated:4446677}},l1StandardBridge:{[En]:{address:"0xfd0Bf71F60660E2f608ed56e1659C450eB113120",blockCreated:4446677}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1059647}},testnet:!0,sourceId:En}),Kd=He({id:80094,name:"Berachain",nativeCurrency:{decimals:18,name:"BERA Token",symbol:"BERA"},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:0},ensRegistry:{address:"0x5b22280886a2f5e09a49bea7e320eab0e5320e28",blockCreated:877007},ensUniversalResolver:{address:"0xddfb18888a9466688235887dec2a10c4f5effee9",blockCreated:877008}},rpcUrls:{default:{http:["https://rpc.berachain.com"]}},blockExplorers:{default:{name:"Berascan",url:"https://berascan.com"}},testnet:!1}),Xd=He({id:80084,name:"Berachain bArtio",nativeCurrency:{decimals:18,name:"BERA Token",symbol:"BERA"},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:109269},ensRegistry:{address:"0xB0eef18971290b333450586D33dcA6cE122651D2",blockCreated:7736794},ensUniversalResolver:{address:"0x41692Ef1EA0C79E6b73077E4A67572D2BDbD7057",blockCreated:7736795}},rpcUrls:{default:{http:["https://bartio.rpc.berachain.com"]}},blockExplorers:{default:{name:"Berachain bArtio Beratrail",url:"https://bartio.beratrail.io"}},testnet:!0}),Qd=He({id:56,name:"BNB Smart Chain",nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://56.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}}),Jd=He({id:97,name:"Binance Smart Chain Testnet",nativeCurrency:{decimals:18,name:"BNB",symbol:"tBNB"},rpcUrls:{default:{http:["https://data-seed-prebsc-1-s1.bnbchain.org:8545"]}},blockExplorers:{default:{name:"BscScan",url:"https://testnet.bscscan.com",apiUrl:"https://api-testnet.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:17422483}},testnet:!0});async function eo(p,{address:m,blockNumber:u,blockTag:v="latest"}){const t=u!==void 0?H0(u):void 0,l=await p.request({method:"eth_getCode",params:[m,t||v]},{dedupe:!!t});if(l!=="0x")return l}const _d=1,$d=He({id:21e6,name:"Corn",nativeCurrency:{decimals:18,name:"Bitcorn",symbol:"BTCN"},rpcUrls:{default:{http:["https://21000000.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"Corn Explorer",url:"https://cornscan.io",apiUrl:"https://api.routescan.io/v2/network/mainnet/evm/21000000/etherscan/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3228}},sourceId:_d});function E4({chain:p,currentChainId:m}){if(!p)throw new pd;if(m!==p.id)throw new ld({chain:p,currentChainId:m})}function ln({blockNumber:p,chain:m,contract:u}){var t;const v=(t=m==null?void 0:m.contracts)==null?void 0:t[u];if(!v)throw new za({chain:m,contract:{name:u}});if(p&&v.blockCreated&&v.blockCreated>p)throw new za({blockNumber:p,chain:m,contract:{name:u,blockCreated:v.blockCreated}});return v.address}const el=He({id:17e3,name:"Holesky",nativeCurrency:{name:"Holesky Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://ethereum-holesky-rpc.publicnode.com"]}},blockExplorers:{default:{name:"Etherscan",url:"https://holesky.etherscan.io",apiUrl:"https://api-holesky.etherscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:77},ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",blockCreated:801613},ensUniversalResolver:{address:"0xa6AC935D4971E3CD133b950aE053bECD16fE7f3b",blockCreated:973484}},testnet:!0});function Me(p){return typeof p=="string"?{address:p,type:"json-rpc"}:p}class nr extends m0{constructor({docsPath:m}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
9
+ `),{docsPath:m,docsSlug:"account",name:"AccountNotFoundError"})}}class va extends m0{constructor({docsPath:m,metaMessages:u,type:v}){super(`Account type "${v}" is not supported.`,{docsPath:m,metaMessages:u,name:"AccountTypeNotSupportedError"})}}const P4={1:"An `assert` condition failed.",17:"Arithmetic operation resulted in underflow or overflow.",18:"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).",33:"Attempted to convert to an invalid type.",34:"Attempted to access a storage byte array that is incorrectly encoded.",49:"Performed `.pop()` on an empty array",50:"Array index is out of bounds.",65:"Allocated too much memory or created an array which is too large.",81:"Attempted to call a zero-initialized variable of internal function type."},tl={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},nl={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function Zt(p,{includeName:m=!1}={}){if(p.type!=="function"&&p.type!=="event"&&p.type!=="error")throw new ml(p.type);return`${p.name}(${Wr(p.inputs,{includeName:m})})`}function Wr(p,{includeName:m=!1}={}){return p?p.map(u=>rl(u,{includeName:m})).join(m?", ":","):""}function rl(p,{includeName:m}){return p.type.startsWith("tuple")?`(${Wr(p.components,{includeName:m})})${p.type.slice(5)}`:p.type+(m&&p.name?` ${p.name}`:"")}class al extends m0{constructor({docsPath:m}){super(["A constructor was not found on the ABI.","Make sure you are using the correct ABI and that the constructor exists on it."].join(`
10
+ `),{docsPath:m,name:"AbiConstructorNotFoundError"})}}class to extends m0{constructor({docsPath:m}){super(["Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.","Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists."].join(`
11
+ `),{docsPath:m,name:"AbiConstructorParamsNotFoundError"})}}class k4 extends m0{constructor({data:m,params:u,size:v}){super([`Data size of ${v} bytes is too small for given parameters.`].join(`
12
+ `),{metaMessages:[`Params: (${Wr(u,{includeName:!0})})`,`Data: ${m} (${v} bytes)`],name:"AbiDecodingDataSizeTooSmallError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=m,this.params=u,this.size=v}}class rr extends m0{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class sl extends m0{constructor({expectedLength:m,givenLength:u,type:v}){super([`ABI encoding array length mismatch for type ${v}.`,`Expected length: ${m}`,`Given length: ${u}`].join(`
13
+ `),{name:"AbiEncodingArrayLengthMismatchError"})}}class il extends m0{constructor({expectedSize:m,value:u}){super(`Size of bytes "${u}" (bytes${le(u)}) does not match expected size (bytes${m}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class ol extends m0{constructor({expectedLength:m,givenLength:u}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${m}`,`Given length (values): ${u}`].join(`
14
+ `),{name:"AbiEncodingLengthMismatchError"})}}class C4 extends m0{constructor(m,{docsPath:u}){super([`Encoded error signature "${m}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${m}.`].join(`
15
+ `),{docsPath:u,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=m}}class ul extends m0{constructor({docsPath:m}){super("Cannot extract event signature from empty topics.",{docsPath:m,name:"AbiEventSignatureEmptyTopicsError"})}}class B4 extends m0{constructor(m,{docsPath:u}){super([`Encoded event signature "${m}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${m}.`].join(`
16
+ `),{docsPath:u,name:"AbiEventSignatureNotFoundError"})}}class no extends m0{constructor(m,{docsPath:u}={}){super([`Event ${m?`"${m}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(`
17
+ `),{docsPath:u,name:"AbiEventNotFoundError"})}}class Or extends m0{constructor(m,{docsPath:u}={}){super([`Function ${m?`"${m}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
18
+ `),{docsPath:u,name:"AbiFunctionNotFoundError"})}}class cl extends m0{constructor(m,{docsPath:u}){super([`Function "${m}" does not contain any \`outputs\` on ABI.`,"Cannot decode function result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the function exists on it."].join(`
19
+ `),{docsPath:u,name:"AbiFunctionOutputsNotFoundError"})}}class dl extends m0{constructor(m,u){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${m.type}\` in \`${Zt(m.abiItem)}\`, and`,`\`${u.type}\` in \`${Zt(u.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}let ll=class extends m0{constructor({expectedSize:m,givenSize:u}){super(`Expected bytes${m}, got bytes${u}.`,{name:"BytesSizeMismatchError"})}};class Rn extends m0{constructor({abiItem:m,data:u,params:v,size:t}){super([`Data size of ${t} bytes is too small for non-indexed event parameters.`].join(`
20
+ `),{metaMessages:[`Params: (${Wr(v,{includeName:!0})})`,`Data: ${u} (${t} bytes)`],name:"DecodeLogDataMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=m,this.data=u,this.params=v,this.size=t}}class Zr extends m0{constructor({abiItem:m,param:u}){super([`Expected a topic for indexed event parameter${u.name?` "${u.name}"`:""} on event "${Zt(m,{includeName:!0})}".`].join(`
21
+ `),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=m}}class pl extends m0{constructor(m,{docsPath:u}){super([`Type "${m}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
22
+ `),{docsPath:u,name:"InvalidAbiEncodingType"})}}class fl extends m0{constructor(m,{docsPath:u}){super([`Type "${m}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
23
+ `),{docsPath:u,name:"InvalidAbiDecodingType"})}}let yl=class extends m0{constructor(m){super([`Value "${m}" is not a valid array.`].join(`
24
+ `),{name:"InvalidArrayError"})}};class ml extends m0{constructor(m){super([`"${m}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
25
+ `),{name:"InvalidDefinitionTypeError"})}}const bl=p=>Pe(cn(p));function hl(p){return bl(p)}const gl="1.0.8";let Qe=class Ka extends Error{constructor(m,u={}){var B;const v=u.cause instanceof Ka?u.cause.details:(B=u.cause)!=null&&B.message?u.cause.message:u.details,t=u.cause instanceof Ka&&u.cause.docsPath||u.docsPath,l=[m||"An error occurred.","",...u.metaMessages?[...u.metaMessages,""]:[],...t?[`Docs: https://abitype.dev${t}`]:[],...v?[`Details: ${v}`]:[],`Version: abitype@${gl}`].join(`
26
+ `);super(l),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiTypeError"}),u.cause&&(this.cause=u.cause),this.details=v,this.docsPath=t,this.metaMessages=u.metaMessages,this.shortMessage=m}};function Kt(p,m){const u=p.exec(m);return u==null?void 0:u.groups}const I4=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,S4=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,M4=/^\(.+?\).*?$/,ro=/^tuple(?<array>(\[(\d*)\])*)$/;function Xa(p){let m=p.type;if(ro.test(p.type)&&"components"in p){m="(";const u=p.components.length;for(let t=0;t<u;t++){const l=p.components[t];m+=Xa(l),t<u-1&&(m+=", ")}const v=Kt(ro,p.type);return m+=`)${(v==null?void 0:v.array)??""}`,Xa({...p,type:m})}return"indexed"in p&&p.indexed&&(m=`${m} indexed`),p.name?`${m} ${p.name}`:m}function Pn(p){let m="";const u=p.length;for(let v=0;v<u;v++){const t=p[v];m+=Xa(t),v!==u-1&&(m+=", ")}return m}function Lr(p){var m;return p.type==="function"?`function ${p.name}(${Pn(p.inputs)})${p.stateMutability&&p.stateMutability!=="nonpayable"?` ${p.stateMutability}`:""}${(m=p.outputs)!=null&&m.length?` returns (${Pn(p.outputs)})`:""}`:p.type==="event"?`event ${p.name}(${Pn(p.inputs)})`:p.type==="error"?`error ${p.name}(${Pn(p.inputs)})`:p.type==="constructor"?`constructor(${Pn(p.inputs)})${p.stateMutability==="payable"?" payable":""}`:p.type==="fallback"?`fallback() external${p.stateMutability==="payable"?" payable":""}`:"receive() external payable"}const R4=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function wl(p){return R4.test(p)}function Tl(p){return Kt(R4,p)}const N4=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function vl(p){return N4.test(p)}function Al(p){return Kt(N4,p)}const U4=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function xl(p){return U4.test(p)}function El(p){return Kt(U4,p)}const O4=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function Ds(p){return O4.test(p)}function Pl(p){return Kt(O4,p)}const L4=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function kl(p){return L4.test(p)}function Cl(p){return Kt(L4,p)}const D4=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function Bl(p){return D4.test(p)}function Il(p){return Kt(D4,p)}const Sl=/^receive\(\) external payable$/;function Ml(p){return Sl.test(p)}const Rl=new Set(["indexed"]),Qa=new Set(["calldata","memory","storage"]);class Nl extends Qe{constructor({signature:m}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(m,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class Ul extends Qe{constructor({type:m}){super("Unknown type.",{metaMessages:[`Type "${m}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class Ol extends Qe{constructor({type:m}){super("Unknown type.",{metaMessages:[`Type "${m}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class Ll extends Qe{constructor({param:m}){super("Invalid ABI parameter.",{details:m}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class Dl extends Qe{constructor({param:m,name:u}){super("Invalid ABI parameter.",{details:m,metaMessages:[`"${u}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SolidityProtectedKeywordError"})}}class Fl extends Qe{constructor({param:m,type:u,modifier:v}){super("Invalid ABI parameter.",{details:m,metaMessages:[`Modifier "${v}" not allowed${u?` in "${u}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class zl extends Qe{constructor({param:m,type:u,modifier:v}){super("Invalid ABI parameter.",{details:m,metaMessages:[`Modifier "${v}" not allowed${u?` in "${u}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${v}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class Hl extends Qe{constructor({abiParameter:m}){super("Invalid ABI parameter.",{details:JSON.stringify(m,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class pn extends Qe{constructor({signature:m,type:u}){super(`Invalid ${u} signature.`,{details:m}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Vl extends Qe{constructor({signature:m}){super("Unknown signature.",{details:m}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class jl extends Qe{constructor({signature:m}){super("Invalid struct signature.",{details:m,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class ql extends Qe{constructor({type:m}){super("Circular reference detected.",{metaMessages:[`Struct "${m}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class Gl extends Qe{constructor({current:m,depth:u}){super("Unbalanced parentheses.",{metaMessages:[`"${m.trim()}" has too many ${u>0?"opening":"closing"} parentheses.`],details:`Depth "${u}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}function Wl(p,m,u){let v="";if(u)for(const t of Object.entries(u)){if(!t)continue;let l="";for(const B of t[1])l+=`[${B.type}${B.name?`:${B.name}`:""}]`;v+=`(${t[0]}{${l}})`}return m?`${m}:${p}${v}`:p}const Aa=new Map([["address",{type:"address"}],["bool",{type:"bool"}],["bytes",{type:"bytes"}],["bytes32",{type:"bytes32"}],["int",{type:"int256"}],["int256",{type:"int256"}],["string",{type:"string"}],["uint",{type:"uint256"}],["uint8",{type:"uint8"}],["uint16",{type:"uint16"}],["uint24",{type:"uint24"}],["uint32",{type:"uint32"}],["uint64",{type:"uint64"}],["uint96",{type:"uint96"}],["uint112",{type:"uint112"}],["uint160",{type:"uint160"}],["uint192",{type:"uint192"}],["uint256",{type:"uint256"}],["address owner",{type:"address",name:"owner"}],["address to",{type:"address",name:"to"}],["bool approved",{type:"bool",name:"approved"}],["bytes _data",{type:"bytes",name:"_data"}],["bytes data",{type:"bytes",name:"data"}],["bytes signature",{type:"bytes",name:"signature"}],["bytes32 hash",{type:"bytes32",name:"hash"}],["bytes32 r",{type:"bytes32",name:"r"}],["bytes32 root",{type:"bytes32",name:"root"}],["bytes32 s",{type:"bytes32",name:"s"}],["string name",{type:"string",name:"name"}],["string symbol",{type:"string",name:"symbol"}],["string tokenURI",{type:"string",name:"tokenURI"}],["uint tokenId",{type:"uint256",name:"tokenId"}],["uint8 v",{type:"uint8",name:"v"}],["uint256 balance",{type:"uint256",name:"balance"}],["uint256 tokenId",{type:"uint256",name:"tokenId"}],["uint256 value",{type:"uint256",name:"value"}],["event:address indexed from",{type:"address",name:"from",indexed:!0}],["event:address indexed to",{type:"address",name:"to",indexed:!0}],["event:uint indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}],["event:uint256 indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}]]);function Ja(p,m={}){if(xl(p))return Zl(p,m);if(vl(p))return Yl(p,m);if(wl(p))return Kl(p,m);if(kl(p))return Xl(p,m);if(Bl(p))return Ql(p);if(Ml(p))return{type:"receive",stateMutability:"payable"};throw new Vl({signature:p})}function Zl(p,m={}){const u=El(p);if(!u)throw new pn({signature:p,type:"function"});const v=mt(u.parameters),t=[],l=v.length;for(let M=0;M<l;M++)t.push(B2(v[M],{modifiers:Qa,structs:m,type:"function"}));const B=[];if(u.returns){const M=mt(u.returns),U=M.length;for(let F=0;F<U;F++)B.push(B2(M[F],{modifiers:Qa,structs:m,type:"function"}))}return{name:u.name,type:"function",stateMutability:u.stateMutability??"nonpayable",inputs:t,outputs:B}}function Yl(p,m={}){const u=Al(p);if(!u)throw new pn({signature:p,type:"event"});const v=mt(u.parameters),t=[],l=v.length;for(let B=0;B<l;B++)t.push(B2(v[B],{modifiers:Rl,structs:m,type:"event"}));return{name:u.name,type:"event",inputs:t}}function Kl(p,m={}){const u=Tl(p);if(!u)throw new pn({signature:p,type:"error"});const v=mt(u.parameters),t=[],l=v.length;for(let B=0;B<l;B++)t.push(B2(v[B],{structs:m,type:"error"}));return{name:u.name,type:"error",inputs:t}}function Xl(p,m={}){const u=Cl(p);if(!u)throw new pn({signature:p,type:"constructor"});const v=mt(u.parameters),t=[],l=v.length;for(let B=0;B<l;B++)t.push(B2(v[B],{structs:m,type:"constructor"}));return{type:"constructor",stateMutability:u.stateMutability??"nonpayable",inputs:t}}function Ql(p){const m=Il(p);if(!m)throw new pn({signature:p,type:"fallback"});return{type:"fallback",stateMutability:m.stateMutability??"nonpayable"}}const Jl=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,_l=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,$l=/^u?int$/;function B2(p,m){var G,q;const u=Wl(p,m==null?void 0:m.type,m==null?void 0:m.structs);if(Aa.has(u))return Aa.get(u);const v=M4.test(p),t=Kt(v?_l:Jl,p);if(!t)throw new Ll({param:p});if(t.name&&t5(t.name))throw new Dl({param:p,name:t.name});const l=t.name?{name:t.name}:{},B=t.modifier==="indexed"?{indexed:!0}:{},M=(m==null?void 0:m.structs)??{};let U,F={};if(v){U="tuple";const D=mt(t.type),n0=[],Q=D.length;for(let J=0;J<Q;J++)n0.push(B2(D[J],{structs:M}));F={components:n0}}else if(t.type in M)U="tuple",F={components:M[t.type]};else if($l.test(t.type))U=`${t.type}256`;else if(U=t.type,(m==null?void 0:m.type)!=="struct"&&!F4(U))throw new Ol({type:U});if(t.modifier){if(!((q=(G=m==null?void 0:m.modifiers)==null?void 0:G.has)!=null&&q.call(G,t.modifier)))throw new Fl({param:p,type:m==null?void 0:m.type,modifier:t.modifier});if(Qa.has(t.modifier)&&!n5(U,!!t.array))throw new zl({param:p,type:m==null?void 0:m.type,modifier:t.modifier})}const W={type:`${U}${t.array??""}`,...l,...B,...F};return Aa.set(u,W),W}function mt(p,m=[],u="",v=0){const t=p.trim().length;for(let l=0;l<t;l++){const B=p[l],M=p.slice(l+1);switch(B){case",":return v===0?mt(M,[...m,u.trim()]):mt(M,m,`${u}${B}`,v);case"(":return mt(M,m,`${u}${B}`,v+1);case")":return mt(M,m,`${u}${B}`,v-1);default:return mt(M,m,`${u}${B}`,v)}}if(u==="")return m;if(v!==0)throw new Gl({current:u,depth:v});return m.push(u.trim()),m}function F4(p){return p==="address"||p==="bool"||p==="function"||p==="string"||I4.test(p)||S4.test(p)}const e5=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function t5(p){return p==="address"||p==="bool"||p==="function"||p==="string"||p==="tuple"||I4.test(p)||S4.test(p)||e5.test(p)}function n5(p,m){return m||p==="bytes"||p==="string"||p==="tuple"}function z4(p){const m={},u=p.length;for(let B=0;B<u;B++){const M=p[B];if(!Ds(M))continue;const U=Pl(M);if(!U)throw new pn({signature:M,type:"struct"});const F=U.properties.split(";"),W=[],G=F.length;for(let q=0;q<G;q++){const n0=F[q].trim();if(!n0)continue;const Q=B2(n0,{type:"struct"});W.push(Q)}if(!W.length)throw new jl({signature:M});m[U.name]=W}const v={},t=Object.entries(m),l=t.length;for(let B=0;B<l;B++){const[M,U]=t[B];v[M]=H4(U,m)}return v}const r5=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function H4(p,m,u=new Set){const v=[],t=p.length;for(let l=0;l<t;l++){const B=p[l];if(M4.test(B.type))v.push(B);else{const U=Kt(r5,B.type);if(!(U!=null&&U.type))throw new Hl({abiParameter:B});const{array:F,type:W}=U;if(W in m){if(u.has(W))throw new ql({type:W});v.push({...B,type:`tuple${F??""}`,components:H4(m[W]??[],m,new Set([...u,W]))})}else if(F4(W))v.push(B);else throw new Ul({type:W})}}return v}function V4(p){const m=z4(p),u=[],v=p.length;for(let t=0;t<v;t++){const l=p[t];Ds(l)||u.push(Ja(l,m))}return u}function ao(p){let m;if(typeof p=="string")m=Ja(p);else{const u=z4(p),v=p.length;for(let t=0;t<v;t++){const l=p[t];if(!Ds(l)){m=Ja(l,u);break}}}if(!m)throw new Nl({signature:p});return m}function a5(p){let m=!0,u="",v=0,t="",l=!1;for(let B=0;B<p.length;B++){const M=p[B];if(["(",")",","].includes(M)&&(m=!0),M==="("&&v++,M===")"&&v--,!!m){if(v===0){if(M===" "&&["event","function",""].includes(t))t="";else if(t+=M,M===")"){l=!0;break}continue}if(M===" "){p[B-1]!==","&&u!==","&&u!==",("&&(u="",m=!1);continue}t+=M,u+=M}}if(!l)throw new m0("Unable to normalize signature.");return t}const s5=p=>{const m=typeof p=="string"?p:Lr(p);return a5(m)};function j4(p){return hl(s5(p))}const Fs=p=>Mn(j4(p),0,4);function i5(p,m={}){typeof m.size<"u"&&Tt(p,{size:m.size});const u=we(p,m);return De(u,m)}function o5(p,m={}){let u=p;if(typeof m.size<"u"&&(Tt(u,{size:m.size}),u=bt(u)),u.length>1||u[0]>1)throw new m8(u);return!!u[0]}function Gt(p,m={}){typeof m.size<"u"&&Tt(p,{size:m.size});const u=we(p,m);return Ct(u,m)}function u5(p,m={}){let u=p;return typeof m.size<"u"&&(Tt(u,{size:m.size}),u=bt(u,{dir:"right"})),new TextDecoder().decode(u)}const c5=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,q4=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function O2(p,m){if(p.length!==m.length)throw new ol({expectedLength:p.length,givenLength:m.length});const u=d5({params:p,values:m}),v=Hs(u);return v.length===0?"0x":v}function d5({params:p,values:m}){const u=[];for(let v=0;v<p.length;v++)u.push(zs({param:p[v],value:m[v]}));return u}function zs({param:p,value:m}){const u=Vs(p.type);if(u){const[v,t]=u;return p5(m,{length:v,param:{...p,type:t}})}if(p.type==="tuple")return h5(m,{param:p});if(p.type==="address")return l5(m);if(p.type==="bool")return y5(m);if(p.type.startsWith("uint")||p.type.startsWith("int")){const v=p.type.startsWith("int"),[,,t="256"]=q4.exec(p.type)??[];return m5(m,{signed:v,size:Number(t)})}if(p.type.startsWith("bytes"))return f5(m,{param:p});if(p.type==="string")return b5(m);throw new pl(p.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Hs(p){let m=0;for(let l=0;l<p.length;l++){const{dynamic:B,encoded:M}=p[l];B?m+=32:m+=le(M)}const u=[],v=[];let t=0;for(let l=0;l<p.length;l++){const{dynamic:B,encoded:M}=p[l];B?(u.push(H0(m+t,{size:32})),v.push(M),t+=le(M)):u.push(M)}return Bt([...u,...v])}function l5(p){if(!Ce(p))throw new Fe({address:p});return{dynamic:!1,encoded:i2(p.toLowerCase())}}function p5(p,{length:m,param:u}){const v=m===null;if(!Array.isArray(p))throw new yl(p);if(!v&&p.length!==m)throw new sl({expectedLength:m,givenLength:p.length,type:`${u.type}[${m}]`});let t=!1;const l=[];for(let B=0;B<p.length;B++){const M=zs({param:u,value:p[B]});M.dynamic&&(t=!0),l.push(M)}if(v||t){const B=Hs(l);if(v){const M=H0(l.length,{size:32});return{dynamic:!0,encoded:l.length>0?Bt([M,B]):M}}if(t)return{dynamic:!0,encoded:B}}return{dynamic:!1,encoded:Bt(l.map(({encoded:B})=>B))}}function f5(p,{param:m}){const[,u]=m.type.split("bytes"),v=le(p);if(!u){let t=p;return v%32!==0&&(t=i2(t,{dir:"right",size:Math.ceil((p.length-2)/2/32)*32})),{dynamic:!0,encoded:Bt([i2(H0(v,{size:32})),t])}}if(v!==Number.parseInt(u))throw new il({expectedSize:Number.parseInt(u),value:p});return{dynamic:!1,encoded:i2(p,{dir:"right"})}}function y5(p){if(typeof p!="boolean")throw new m0(`Invalid boolean value: "${p}" (type: ${typeof p}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:i2(Xo(p))}}function m5(p,{signed:m,size:u=256}){if(typeof u=="number"){const v=2n**(BigInt(u)-(m?1n:0n))-1n,t=m?-v-1n:0n;if(p>v||p<t)throw new Zo({max:v.toString(),min:t.toString(),signed:m,size:u/8,value:p.toString()})}return{dynamic:!1,encoded:H0(p,{size:32,signed:m})}}function b5(p){const m=Q2(p),u=Math.ceil(le(m)/32),v=[];for(let t=0;t<u;t++)v.push(i2(Mn(m,t*32,(t+1)*32),{dir:"right"}));return{dynamic:!0,encoded:Bt([i2(H0(le(m),{size:32})),...v])}}function h5(p,{param:m}){let u=!1;const v=[];for(let t=0;t<m.components.length;t++){const l=m.components[t],B=Array.isArray(p)?t:l.name,M=zs({param:l,value:p[B]});v.push(M),M.dynamic&&(u=!0)}return{dynamic:u,encoded:u?Hs(v):Bt(v.map(({encoded:t})=>t))}}function Vs(p){const m=p.match(/^(.*)\[(\d+)?\]$/);return m?[m[2]?Number(m[2]):null,m[1]]:void 0}function Yr(p,m){const u=typeof m=="string"?gt(m):m,v=Is(u);if(le(u)===0&&p.length>0)throw new rr;if(le(m)&&le(m)<32)throw new k4({data:typeof m=="string"?m:we(m),params:p,size:le(m)});let t=0;const l=[];for(let B=0;B<p.length;++B){const M=p[B];v.setPosition(t);const[U,F]=W2(v,M,{staticPosition:0});t+=F,l.push(U)}return l}function W2(p,m,{staticPosition:u}){const v=Vs(m.type);if(v){const[t,l]=v;return w5(p,{...m,type:l},{length:t,staticPosition:u})}if(m.type==="tuple")return x5(p,m,{staticPosition:u});if(m.type==="address")return g5(p);if(m.type==="bool")return T5(p);if(m.type.startsWith("bytes"))return v5(p,m,{staticPosition:u});if(m.type.startsWith("uint")||m.type.startsWith("int"))return A5(p,m);if(m.type==="string")return E5(p,{staticPosition:u});throw new fl(m.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const so=32,_a=32;function g5(p){const m=p.readBytes(32);return[er(we(v4(m,-20))),32]}function w5(p,m,{length:u,staticPosition:v}){if(!u){const B=Gt(p.readBytes(_a)),M=v+B,U=M+so;p.setPosition(M);const F=Gt(p.readBytes(so)),W=Nn(m);let G=0;const q=[];for(let D=0;D<F;++D){p.setPosition(U+(W?D*32:G));const[n0,Q]=W2(p,m,{staticPosition:U});G+=Q,q.push(n0)}return p.setPosition(v+32),[q,32]}if(Nn(m)){const B=Gt(p.readBytes(_a)),M=v+B,U=[];for(let F=0;F<u;++F){p.setPosition(M+F*32);const[W]=W2(p,m,{staticPosition:M});U.push(W)}return p.setPosition(v+32),[U,32]}let t=0;const l=[];for(let B=0;B<u;++B){const[M,U]=W2(p,m,{staticPosition:v+t});t+=U,l.push(M)}return[l,t]}function T5(p){return[o5(p.readBytes(32),{size:32}),32]}function v5(p,m,{staticPosition:u}){const[v,t]=m.type.split("bytes");if(!t){const B=Gt(p.readBytes(32));p.setPosition(u+B);const M=Gt(p.readBytes(32));if(M===0)return p.setPosition(u+32),["0x",32];const U=p.readBytes(M);return p.setPosition(u+32),[we(U),32]}return[we(p.readBytes(Number.parseInt(t),32)),32]}function A5(p,m){const u=m.type.startsWith("int"),v=Number.parseInt(m.type.split("int")[1]||"256"),t=p.readBytes(32);return[v>48?i5(t,{signed:u}):Gt(t,{signed:u}),32]}function x5(p,m,{staticPosition:u}){const v=m.components.length===0||m.components.some(({name:B})=>!B),t=v?[]:{};let l=0;if(Nn(m)){const B=Gt(p.readBytes(_a)),M=u+B;for(let U=0;U<m.components.length;++U){const F=m.components[U];p.setPosition(M+l);const[W,G]=W2(p,F,{staticPosition:M});l+=G,t[v?U:F==null?void 0:F.name]=W}return p.setPosition(u+32),[t,32]}for(let B=0;B<m.components.length;++B){const M=m.components[B],[U,F]=W2(p,M,{staticPosition:u});t[v?B:M==null?void 0:M.name]=U,l+=F}return[t,l]}function E5(p,{staticPosition:m}){const u=Gt(p.readBytes(32)),v=m+u;p.setPosition(v);const t=Gt(p.readBytes(32));if(t===0)return p.setPosition(m+32),["",32];const l=p.readBytes(t,32),B=u5(bt(l));return p.setPosition(m+32),[B,32]}function Nn(p){var v;const{type:m}=p;if(m==="string"||m==="bytes"||m.endsWith("[]"))return!0;if(m==="tuple")return(v=p.components)==null?void 0:v.some(Nn);const u=Vs(p.type);return!!(u&&Nn({...p,type:u[1]}))}function G4(p){const{abi:m,data:u}=p,v=Mn(u,0,4);if(v==="0x")throw new rr;const l=[...m||[],tl,nl].find(B=>B.type==="error"&&v===Fs(Zt(B)));if(!l)throw new C4(v,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:l,args:"inputs"in l&&l.inputs&&l.inputs.length>0?Yr(l.inputs,Mn(u,4)):void 0,errorName:l.name}}const Ae=(p,m,u)=>JSON.stringify(p,(v,t)=>typeof t=="bigint"?t.toString():t,u);function W4({abiItem:p,args:m,includeFunctionName:u=!0,includeName:v=!1}){if("name"in p&&"inputs"in p&&p.inputs)return`${u?p.name:""}(${p.inputs.map((t,l)=>`${v&&t.name?`${t.name}: `:""}${typeof m[l]=="object"?Ae(m[l]):m[l]}`).join(", ")})`}const Kr=j4;function ar(p){const{abi:m,args:u=[],name:v}=p,t=ht(v,{strict:!1}),l=m.filter(M=>t?M.type==="function"?Fs(M)===v:M.type==="event"?Kr(M)===v:!1:"name"in M&&M.name===v);if(l.length===0)return;if(l.length===1)return l[0];let B;for(const M of l){if(!("inputs"in M))continue;if(!u||u.length===0){if(!M.inputs||M.inputs.length===0)return M;continue}if(!M.inputs||M.inputs.length===0||M.inputs.length!==u.length)continue;if(u.every((F,W)=>{const G="inputs"in M&&M.inputs[W];return G?$a(F,G):!1})){if(B&&"inputs"in B&&B.inputs){const F=Z4(M.inputs,B.inputs,u);if(F)throw new dl({abiItem:M,type:F[0]},{abiItem:B,type:F[1]})}B=M}}return B||l[0]}function $a(p,m){const u=typeof p,v=m.type;switch(v){case"address":return Ce(p,{strict:!1});case"bool":return u==="boolean";case"function":return u==="string";case"string":return u==="string";default:return v==="tuple"&&"components"in m?Object.values(m.components).every((t,l)=>$a(Object.values(p)[l],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(v)?u==="number"||u==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(v)?u==="string"||p instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(v)?Array.isArray(p)&&p.every(t=>$a(t,{...m,type:v.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Z4(p,m,u){for(const v in p){const t=p[v],l=m[v];if(t.type==="tuple"&&l.type==="tuple"&&"components"in t&&"components"in l)return Z4(t.components,l.components,u[v]);const B=[t.type,l.type];if(B.includes("address")&&B.includes("bytes20")?!0:B.includes("address")&&B.includes("string")?Ce(u[v],{strict:!1}):B.includes("address")&&B.includes("bytes")?Ce(u[v],{strict:!1}):!1)return B}}class P5 extends m0{constructor({address:m}){super(`State for account "${m}" is set multiple times.`,{name:"AccountStateConflictError"})}}class k5 extends m0{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function io(p){return p.reduce((m,{slot:u,value:v})=>`${m} ${u}: ${v}
27
+ `,"")}function C5(p){return p.reduce((m,{address:u,...v})=>{let t=`${m} ${u}:
28
+ `;return v.nonce&&(t+=` nonce: ${v.nonce}
29
+ `),v.balance&&(t+=` balance: ${v.balance}
30
+ `),v.code&&(t+=` code: ${v.code}
31
+ `),v.state&&(t+=` state:
32
+ `,t+=io(v.state)),v.stateDiff&&(t+=` stateDiff:
33
+ `,t+=io(v.stateDiff)),t},` State Override:
34
+ `).slice(0,-1)}const B5=p=>p,Xr=p=>p;class Y4 extends m0{constructor(m,{account:u,docsPath:v,chain:t,data:l,gas:B,gasPrice:M,maxFeePerGas:U,maxPriorityFeePerGas:F,nonce:W,to:G,value:q,stateOverride:D}){var J;const n0=u?Me(u):void 0;let Q=Jn({from:n0==null?void 0:n0.address,to:G,value:typeof q<"u"&&`${Ss(q)} ${((J=t==null?void 0:t.nativeCurrency)==null?void 0:J.symbol)||"ETH"}`,data:l,gas:B,gasPrice:typeof M<"u"&&`${Ge(M)} gwei`,maxFeePerGas:typeof U<"u"&&`${Ge(U)} gwei`,maxPriorityFeePerGas:typeof F<"u"&&`${Ge(F)} gwei`,nonce:W});D&&(Q+=`
35
+ ${C5(D)}`),super(m.shortMessage,{cause:m,docsPath:v,metaMessages:[...m.metaMessages?[...m.metaMessages," "]:[],"Raw Call Arguments:",Q].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=m}}class I5 extends m0{constructor(m,{abi:u,args:v,contractAddress:t,docsPath:l,functionName:B,sender:M}){const U=ar({abi:u,args:v,name:B}),F=U?W4({abiItem:U,args:v,includeFunctionName:!1,includeName:!1}):void 0,W=U?Zt(U,{includeName:!0}):void 0,G=Jn({address:t&&B5(t),function:W,args:F&&F!=="()"&&`${[...Array((B==null?void 0:B.length)??0).keys()].map(()=>" ").join("")}${F}`,sender:M});super(m.shortMessage||`An unknown error occurred while executing the contract function "${B}".`,{cause:m,docsPath:l,metaMessages:[...m.metaMessages?[...m.metaMessages," "]:[],G&&"Contract Call:",G].filter(Boolean),name:"ContractFunctionExecutionError"}),Object.defineProperty(this,"abi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contractAddress",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"formattedArgs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"functionName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sender",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=u,this.args=v,this.cause=m,this.contractAddress=t,this.functionName=B,this.sender=M}}class es extends m0{constructor({abi:m,data:u,functionName:v,message:t}){let l,B,M,U;if(u&&u!=="0x")try{B=G4({abi:m,data:u});const{abiItem:W,errorName:G,args:q}=B;if(G==="Error")U=q[0];else if(G==="Panic"){const[D]=q;U=P4[D]}else{const D=W?Zt(W,{includeName:!0}):void 0,n0=W&&q?W4({abiItem:W,args:q,includeFunctionName:!1,includeName:!1}):void 0;M=[D?`Error: ${D}`:"",n0&&n0!=="()"?` ${[...Array((G==null?void 0:G.length)??0).keys()].map(()=>" ").join("")}${n0}`:""]}}catch(W){l=W}else t&&(U=t);let F;l instanceof C4&&(F=l.signature,M=[`Unable to decode signature "${F}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${F}.`]),super(U&&U!=="execution reverted"||F?[`The contract function "${v}" reverted with the following ${F?"signature":"reason"}:`,U||F].join(`
36
+ `):`The contract function "${v}" reverted.`,{cause:l,metaMessages:M,name:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"raw",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"reason",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=B,this.raw=u,this.reason=U,this.signature=F}}class S5 extends m0{constructor({functionName:m}){super(`The contract function "${m}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${m}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class M5 extends m0{constructor({factory:m}){super(`Deployment for counterfactual contract call failed${m?` for factory "${m}".`:""}`,{metaMessages:["Please ensure:","- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).","- The `factoryData` is a valid encoded function call for contract deployment function on the factory."],name:"CounterfactualDeploymentFailedError"})}}class Qr extends m0{constructor({data:m,message:u}){super(u||"",{name:"RawContractError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=m}}class Z2 extends m0{constructor({body:m,cause:u,details:v,headers:t,status:l,url:B}){super("HTTP request failed.",{cause:u,details:v,metaMessages:[l&&`Status: ${l}`,`URL: ${Xr(B)}`,m&&`Request body: ${Ae(m)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=m,this.headers=t,this.status=l,this.url=B}}class js extends m0{constructor({body:m,error:u,url:v}){super("RPC Request failed.",{cause:u,details:u.message,metaMessages:[`URL: ${Xr(v)}`,`Request body: ${Ae(m)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=u.code,this.data=u.data}}class oo extends m0{constructor({body:m,url:u}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${Xr(u)}`,`Request body: ${Ae(m)}`],name:"TimeoutError"})}}const R5=-1;class We extends m0{constructor(m,{code:u,docsPath:v,metaMessages:t,name:l,shortMessage:B}){super(B,{cause:m,docsPath:v,metaMessages:t||(m==null?void 0:m.metaMessages),name:l||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=l||m.name,this.code=m instanceof js?m.code:u??R5}}class fn extends We{constructor(m,u){super(m,u),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=u.data}}class Un extends We{constructor(m){super(m,{code:Un.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(Un,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class On extends We{constructor(m){super(m,{code:On.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(On,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class Ln extends We{constructor(m,{method:u}={}){super(m,{code:Ln.code,name:"MethodNotFoundRpcError",shortMessage:`The method${u?` "${u}"`:""} does not exist / is not available.`})}}Object.defineProperty(Ln,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class Dn extends We{constructor(m){super(m,{code:Dn.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
37
+ `)})}}Object.defineProperty(Dn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class I2 extends We{constructor(m){super(m,{code:I2.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(I2,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class S2 extends We{constructor(m){super(m,{code:S2.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
38
+ `)})}}Object.defineProperty(S2,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class Fn extends We{constructor(m){super(m,{code:Fn.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(Fn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class zn extends We{constructor(m){super(m,{code:zn.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(zn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class Hn extends We{constructor(m){super(m,{code:Hn.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(Hn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class v2 extends We{constructor(m,{method:u}={}){super(m,{code:v2.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${u?` "${u}"`:""} is not supported.`})}}Object.defineProperty(v2,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class $2 extends We{constructor(m){super(m,{code:$2.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty($2,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class Vn extends We{constructor(m){super(m,{code:Vn.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(Vn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class Y2 extends fn{constructor(m){super(m,{code:Y2.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(Y2,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class jn extends fn{constructor(m){super(m,{code:jn.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(jn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class qn extends fn{constructor(m,{method:u}={}){super(m,{code:qn.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${u?` " ${u}"`:""}.`})}}Object.defineProperty(qn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class Gn extends fn{constructor(m){super(m,{code:Gn.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(Gn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Wn extends fn{constructor(m){super(m,{code:Wn.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Wn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class Zn extends fn{constructor(m){super(m,{code:Zn.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(Zn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class N5 extends We{constructor(m){super(m,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}function Jr(p,m){const u=(p.details||"").toLowerCase(),v=p instanceof m0?p.walk(t=>(t==null?void 0:t.code)===j2.code):p;return v instanceof m0?new j2({cause:p,message:v.details}):j2.nodeMessage.test(u)?new j2({cause:p,message:p.details}):C2.nodeMessage.test(u)?new C2({cause:p,maxFeePerGas:m==null?void 0:m.maxFeePerGas}):Ha.nodeMessage.test(u)?new Ha({cause:p,maxFeePerGas:m==null?void 0:m.maxFeePerGas}):Va.nodeMessage.test(u)?new Va({cause:p,nonce:m==null?void 0:m.nonce}):ja.nodeMessage.test(u)?new ja({cause:p,nonce:m==null?void 0:m.nonce}):qa.nodeMessage.test(u)?new qa({cause:p,nonce:m==null?void 0:m.nonce}):Ga.nodeMessage.test(u)?new Ga({cause:p}):Wa.nodeMessage.test(u)?new Wa({cause:p,gas:m==null?void 0:m.gas}):Za.nodeMessage.test(u)?new Za({cause:p,gas:m==null?void 0:m.gas}):Ya.nodeMessage.test(u)?new Ya({cause:p}):Sn.nodeMessage.test(u)?new Sn({cause:p,maxFeePerGas:m==null?void 0:m.maxFeePerGas,maxPriorityFeePerGas:m==null?void 0:m.maxPriorityFeePerGas}):new $n({cause:p})}function K4(p,{docsPath:m,...u}){const v=(()=>{const t=Jr(p,u);return t instanceof $n?p:t})();return new Y4(v,{docsPath:m,...u})}function _r(p,{format:m}){if(!m)return{};const u={};function v(l){const B=Object.keys(l);for(const M of B)M in p&&(u[M]=p[M]),l[M]&&typeof l[M]=="object"&&!Array.isArray(l[M])&&v(l[M])}const t=m(p||{});return v(t),u}function L2(p){const{account:m,gasPrice:u,maxFeePerGas:v,maxPriorityFeePerGas:t,to:l}=p,B=m?Me(m):void 0;if(B&&!Ce(B.address))throw new Fe({address:B.address});if(l&&!Ce(l))throw new Fe({address:l});if(typeof u<"u"&&(typeof v<"u"||typeof t<"u"))throw new z8;if(v&&v>Hr)throw new C2({maxFeePerGas:v});if(t&&v&&t>v)throw new Sn({maxFeePerGas:v,maxPriorityFeePerGas:t})}const U5=He({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://eth.merkle.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xce01f8eee7E479C928F8919abD53E553a36CeF67",blockCreated:19258213},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),O5=He({id:2818,name:"Morph",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.morphl2.io"],webSocket:["wss://rpc.morphl2.io:8443"]}},blockExplorers:{default:{name:"Morph Explorer",url:"https://explorer.morphl2.io"}},testnet:!1}),L5=He({id:2810,name:"Morph Holesky",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc-quicknode-holesky.morphl2.io"],webSocket:["wss://rpc-quicknode-holesky.morphl2.io"]}},blockExplorers:{default:{name:"Morph Holesky Explorer",url:"https://explorer-holesky.morphl2.io",apiUrl:"https://explorer-api-holesky.morphl2.io/api?"}},testnet:!0}),D5=He({id:11155111,name:"Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.drpc.org"]}},blockExplorers:{default:{name:"Etherscan",url:"https://sepolia.etherscan.io",apiUrl:"https://api-sepolia.etherscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:751532},ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xc8Af999e38273D658BE1b921b88A9Ddf005769cC",blockCreated:5317080}},testnet:!0}),F5=He({id:146,name:"Sonic",nativeCurrency:{decimals:18,name:"Sonic",symbol:"S"},rpcUrls:{default:{http:["https://rpc.soniclabs.com"]}},blockExplorers:{default:{name:"Sonic Explorer",url:"https://sonicscan.org"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:60}},testnet:!1}),z5=He({id:57054,name:"Sonic Blaze Testnet",nativeCurrency:{decimals:18,name:"Sonic",symbol:"S"},rpcUrls:{default:{http:["https://rpc.blaze.soniclabs.com"]}},blockExplorers:{default:{name:"Sonic Blaze Testnet Explorer",url:"https://testnet.sonicscan.org"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1100}},testnet:!0}),H5=He({..._2,id:1923,name:"Swellchain",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://swell-mainnet.alt.technology"]}},blockExplorers:{default:{name:"Swell Explorer",url:"https://explorer.swellnetwork.io",apiUrl:"https://explorer.swellnetwork.io/api"}},contracts:{..._2.contracts,multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1}}}),V5="sui:devnet",j5="sui:testnet",q5="sui:localnet",G5="sui:mainnet",y0={ethereum:1,base:8453,berachain:80094,binanceSmartChain:56,corn:21e6,holesky:17e3,morph:2818,sonic:146,swell:1923,baseSepoliaTestnet:84532,berachainBartioTestnet:80084,binanceSmartChainTestnet:97,morphHolesky:2810,sepolia:11155111,sonicBlazeTestnet:57054},wt={[y0.ethereum]:U5,[y0.base]:Zd,[y0.berachain]:Kd,[y0.binanceSmartChain]:Qd,[y0.corn]:$d,[y0.morph]:O5,[y0.sonic]:F5,[y0.swell]:H5,[y0.baseSepoliaTestnet]:Yd,[y0.berachainBartioTestnet]:Xd,[y0.binanceSmartChainTestnet]:Jd,[y0.holesky]:el,[y0.morphHolesky]:L5,[y0.sepolia]:D5,[y0.sonicBlazeTestnet]:z5};function W5(p){return Object.values(y0).includes(p)}const Ie={eth:"DESTINATION_BLOCKCHAIN_ETHEREUM",ethOld:"BLOCKCHAIN_ETHEREUM",base:"DESTINATION_BLOCKCHAIN_BASE",baseOld:"BLOCKCHAIN_BASE",bsc:"DESTINATION_BLOCKCHAIN_BSC",bscOld:"BLOCKCHAIN_BSC",sui:"DESTINATION_BLOCKCHAIN_SUI",suiOld:"BLOCKCHAIN_SUI",sonic:"DESTINATION_BLOCKCHAIN_SONIC",sonicOld:"BLOCKCHAIN_SONIC"};function $r(p){if(p===y0.ethereum||p===y0.holesky||p===y0.sepolia)return Ie.eth;if(p===y0.base||p===y0.baseSepoliaTestnet)return Ie.base;if(p===y0.binanceSmartChain||p===y0.binanceSmartChainTestnet)return Ie.bsc;if(p===y0.sonic||p===y0.sonicBlazeTestnet)return Ie.sonic;if(p==="sui:testnet"||p==="sui:mainnet")return Ie.sui;throw new Error(`Unknown chain ID: ${p}`)}const X4=p=>p===Se.prod?y0.ethereum:y0.holesky,Q4=p=>p===Se.prod?y0.binanceSmartChain:y0.binanceSmartChainTestnet,J4=p=>p===Se.prod?y0.base:y0.baseSepoliaTestnet,_4=p=>p===Se.prod?"sui:mainnet":"sui:testnet",$4=p=>p===Se.prod?y0.sonic:y0.sonicBlazeTestnet;function qs(p,m=p2){switch(p){case Ie.eth:case Ie.ethOld:return X4(m);case Ie.base:case Ie.baseOld:return J4(m);case Ie.bsc:case Ie.bscOld:return Q4(m);case Ie.sui:case Ie.suiOld:return _4(m);case Ie.sonic:case Ie.sonicOld:return $4(m);default:return y0.ethereum}}const e6="sanctioned_address",Z5="api/v1/address/generate",Y5="destination address is under sanctions";async function K5({address:p,chainId:m,signature:u,eip712Data:v,env:t,referrerCode:l,partnerId:B,captchaToken:M,signatureData:U}){const{baseApiUrl:F}=Be(t),W=$r(m),G={to_address:p,to_address_signature:u,to_chain:W,partner_id:B,nonce:0,captcha:M,referrer_code:l,eip_712_data:v,sb_signature_data:U};try{const{data:q}=await pe.post(Z5,G,{baseURL:F});return q.address}catch(q){const D=ze(q);if(X5(D))return e6;throw new Error(D)}}function X5(p){return p.includes(Y5)}async function t6({address:p,chainId:m,env:u,limit:v,offset:t,partnerId:l}){var W;const{baseApiUrl:B}=Be(u),M=$r(m),U={asc:!1,limit:v,offset:t,referralId:l||"lombard"};for(const[G,q]of Object.entries(U))q===void 0&&delete U[G];const F=`api/v1/address/destination/${M}/${p}`;try{const{data:G}=await pe.get(F,{baseURL:B,params:U});return G.addresses||[]}catch(G){if(pe.isAxiosError(G)){const q=(W=G.response)==null?void 0:W.data.message;throw new Error(q)}}}async function Q5({address:p,chainId:m,env:u,partnerId:v}){const t=await t6({address:p,chainId:m,env:u,partnerId:v});let l;if(t&&t.length>0){const B=t.reduce((M,U)=>U.created_at>M.created_at?U:M,t[0]);B.deprecated||(l=B.btc_address)}if(!l)throw new Error(`No deposit address found for ${p} on chain ${m}`);return l}async function J5(p){return await t6(p)}const n6=8,Gs=re(10).pow(n6);function f2(p){return re(p).dividedBy(Gs)}function Yn(p){return re(p).multipliedBy(Gs).decimalPlaces(0,re.ROUND_HALF_UP)}var r6=(p=>(p.NOTARIZATION_STATUS_UNSPECIFIED="NOTARIZATION_STATUS_UNSPECIFIED",p.NOTARIZATION_STATUS_PENDING="NOTARIZATION_STATUS_PENDING",p.NOTARIZATION_STATUS_SUBMITTED="NOTARIZATION_STATUS_SUBMITTED",p.NOTARIZATION_STATUS_SESSION_APPROVED="NOTARIZATION_STATUS_SESSION_APPROVED",p.NOTARIZATION_STATUS_FAILED="NOTARIZATION_STATUS_FAILED",p))(r6||{}),a6=(p=>(p.SESSION_STATE_UNSPECIFIED="SESSION_STATE_UNSPECIFIED",p.SESSION_STATE_PENDING="SESSION_STATE_PENDING",p.SESSION_STATE_COMPLETED="SESSION_STATE_COMPLETED",p.SESSION_STATE_EXPIRED="SESSION_STATE_EXPIRED",p))(a6||{});async function _5({address:p,env:m}){const{baseApiUrl:u}=Be(m),{data:v}=await pe.get(`api/v1/address/outputs-v2/${p}`,{baseURL:u});return((v==null?void 0:v.outputs)??[]).map($5(m))}function $5(p){return m=>({txid:m.txid,index:m.index??0,blockHeight:m.block_height?Number(m.block_height):void 0,blockTime:m.block_time?Number(m.block_time):void 0,value:f2(m.value),address:m.address,chainId:qs(m.to_chain,p),claimedTxId:m.claim_tx,isClaimed:!!m.claim_tx,rawPayload:m.raw_payload,signature:m.proof,isRestricted:!!m.sanctioned,notarizationWaitDur:m.notarization_wait_dur?Number(m.notarization_wait_dur):void 0,payload:m.payload_hash,sessionId:m.session_id,notarizationStatus:m.notarization_status,sessionState:m.session_state})}const ep=2e-4;async function tp({env:p,chainId:m=y0.ethereum,amount:u=Yn(1)}){const{baseApiUrl:v}=Be(p),t=$r(m),{data:l}=await pe.get(`api/v1/exchange/rate/${t}`,{baseURL:v,params:{amount:u}}),B=re(l.amount_out).toNumber(),M=re(u).dividedBy(l.amount_out).toNumber(),U=Yn(ep).toNumber();return{amountOut:B,exchangeRate:M,minAmount:U}}async function np({address:p,chainId:m,env:u}){const{baseApiUrl:v}=Be(u);try{const{data:t}=await pe.get(`${v}/api/v1/claimer/get-user-signature`,{params:{user_destination_address:p,chain_id:m}});return{expirationDate:t==null?void 0:t.expiration_date,hasSignature:t==null?void 0:t.has_signature,isDelayed:t==null?void 0:t.is_delayed}}catch(t){const l=ze(t);throw new Error(l)}}async function rp({address:p,env:m}){var h0,f0,w0,i0,F0,S0,N0,W0;const{baseApiUrl:u,bffApiUrl:v}=Be(m);if(!v||!u)throw new Error(`Could not determine the API endpoint for the provided environment: ${m||p2}`);const t=`${u}/api/v1/referral-system/season-1/points/${p}`,l=`${u}/api/v1/task/okx/user-task-verification?address=${p}&chain=1`,B=`${v}/sentio-api/flash-event-points/${p}`,M=pe.get(t),U=pe.get(l),F=pe.get(B),[{data:W},{data:G},{data:q}]=await Promise.all([M,U,F]),D=r2(G==null?void 0:G.points),n0=r2((i0=(w0=(f0=(h0=q==null?void 0:q.flashEvent1Points)==null?void 0:h0.result)==null?void 0:f0.rows)==null?void 0:w0[0])==null?void 0:i0.points),Q=r2((W0=(N0=(S0=(F0=q==null?void 0:q.flashEvent2Points)==null?void 0:F0.result)==null?void 0:S0.rows)==null?void 0:N0[0])==null?void 0:W0.totalPoints),J=n0+Q,a0=r2(W.holding_points),o0=r2(W.protocol_points),c0=r2(W.referee_points)+r2(W.referrals_points),p0=a0+o0+c0+D+J,v0=Object.entries(W.protocol_points_map||{}).reduce((P0,[A0,T0])=>(P0[A0]=r2(T0),P0),{});return{holdingPoints:a0,protocolPoints:o0,referralPoints:c0,okxPoints:D,flashEventPoints:J,totalPoints:p0,protocolPointsBreakdown:v0}}function r2(p,m=0){return Number(p)||m}async function ap({address:p,env:m="prod"}){const{baseApiUrl:u}=Be(m);if(!p)throw new Error("No address specified.");const{data:{unstakes:v=[]}}=await pe.get(`/api/v1/address/unstakes/${p}`,{baseURL:u});return v.map(t=>sp(t,m))}function sp(p,m){const u=s2.address.fromOutputScript(Buffer.from(p.output_script,"hex"),m==="prod"?s2.networks.bitcoin:s2.networks.testnet);return{txHash:p.tx_hash,chainId:qs(p.blockchain,m),blockHeight:+p.block_height,unstakeDate:new Date(+p.block_time*1e3),fromAddress:p.from_address,toAddress:u,amount:f2(p.amount),payoutTxHash:p.payout_txid,payoutTxIndex:p.payout_index?+p.payout_index:void 0,sanctioned:p.sanctioned}}async function ip({userDestinationAddress:p,chainId:m,env:u}){const{baseApiUrl:v}=Be(u);try{const{data:t}=await pe.get(`${v}/api/v1/claimer/get-user-stake-and-bake-signature`,{params:{userDestinationAddress:p,chainId:m.toString()}});return{userDestinationAddress:t.user_destination_address,signature:t.signature,expirationDate:t.expiration_date,depositAmount:t.deposit_amount,chainId:t.chain_id}}catch(t){const l=ze(t);throw new Error(`Failed to get user stake and bake signature: ${l}`)}}const op="api/v1/referral-system/referrer/";async function up({address:p,signature:m,eip712Data:u,referrerCode:v,env:t}){const{baseApiUrl:l}=Be(t),B={referrer_code:v,signature:m,signature_typed_data:u};try{await pe.post(`${op}${p}`,B,{baseURL:l});return}catch(M){const U=ze(M);throw new Error(U)}}async function cp({signature:p,typedData:m,address:u,env:v}){const{baseApiUrl:t}=Be(v);try{const{data:l}=await pe.post(`${t}/api/v1/claimer/save-user-signature`,null,{params:{typed_data:m,signature:p,user_destination_address:u}});return l.status}catch(l){const B=ze(l);throw new Error(B)}}async function dp({signature:p,typedData:m,env:u}){const{baseApiUrl:v}=Be(u);try{const{data:t}=await pe.post(`${v}/api/v1/claimer/save-stake-and-bake-signature`,null,{params:{typed_data:m,signature:p}});return t.status}catch(t){const l=ze(t);throw new Error(l)}}const a2="https://bff.prod.lombard.finance/multi-rpc/proxy",lp={[y0.ethereum]:`${a2}/eth`,[y0.base]:`${a2}/base`,[y0.binanceSmartChain]:"https://bsc-dataseed.bnbchain.org",[y0.corn]:`${a2}/corn_maizenet`,[y0.sonic]:`${a2}/sonic_mainnet`,[y0.baseSepoliaTestnet]:`${a2}/base_sepolia`,[y0.binanceSmartChainTestnet]:"https://bsc-testnet-dataseed.bnbchain.org",[y0.holesky]:`${a2}/eth_holesky`,[y0.sepolia]:`${a2}/eth_sepolia`,[y0.sonicBlazeTestnet]:`${a2}/sonic_blaze_testnet`};function L0(p,m,u){const v=p[m.name];if(typeof v=="function")return v;const t=p[u];return typeof t=="function"?t:l=>m(p,l)}class pp extends m0{constructor(m){super(`Filter type "${m}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}const uo="/docs/contract/encodeEventTopics";function sr(p){var U;const{abi:m,eventName:u,args:v}=p;let t=m[0];if(u){const F=ar({abi:m,name:u});if(!F)throw new no(u,{docsPath:uo});t=F}if(t.type!=="event")throw new no(void 0,{docsPath:uo});const l=Zt(t),B=Kr(l);let M=[];if(v&&"inputs"in t){const F=(U=t.inputs)==null?void 0:U.filter(G=>"indexed"in G&&G.indexed),W=Array.isArray(v)?v:Object.values(v).length>0?(F==null?void 0:F.map(G=>v[G.name]))??[]:[];W.length>0&&(M=(F==null?void 0:F.map((G,q)=>Array.isArray(W[q])?W[q].map((D,n0)=>co({param:G,value:W[q][n0]})):typeof W[q]<"u"&&W[q]!==null?co({param:G,value:W[q]}):null))??[])}return[B,...M]}function co({param:p,value:m}){if(p.type==="string"||p.type==="bytes")return Pe(cn(m));if(p.type==="tuple"||p.type.match(/^(.*)\[(\d+)?\]$/))throw new pp(p.type);return O2([p],[m])}function ea(p,{method:m}){var v,t;const u={};return p.transport.type==="fallback"&&((t=(v=p.transport).onResponse)==null||t.call(v,({method:l,response:B,status:M,transport:U})=>{M==="success"&&m===l&&(u[B]=U.request)})),l=>u[l]||p.request}async function Ws(p,m){const{address:u,abi:v,args:t,eventName:l,fromBlock:B,strict:M,toBlock:U}=m,F=ea(p,{method:"eth_newFilter"}),W=l?sr({abi:v,args:t,eventName:l}):void 0,G=await p.request({method:"eth_newFilter",params:[{address:u,fromBlock:typeof B=="bigint"?H0(B):B,toBlock:typeof U=="bigint"?H0(U):U,topics:W}]});return{abi:v,args:t,eventName:l,id:G,request:F(G),strict:!!M,type:"event"}}const lo="/docs/contract/encodeFunctionData";function fp(p){const{abi:m,args:u,functionName:v}=p;let t=m[0];if(v){const l=ar({abi:m,args:u,name:v});if(!l)throw new Or(v,{docsPath:lo});t=l}if(t.type!=="function")throw new Or(void 0,{docsPath:lo});return{abi:[t],functionName:Fs(Zt(t))}}function vt(p){const{args:m}=p,{abi:u,functionName:v}=(()=>{var M;return p.abi.length===1&&((M=p.functionName)!=null&&M.startsWith("0x"))?p:fp(p)})(),t=u[0],l=v,B="inputs"in t&&t.inputs?O2(t.inputs,m??[]):void 0;return Rt([l,B??"0x"])}const yp=3;function M2(p,{abi:m,address:u,args:v,docsPath:t,functionName:l,sender:B}){const M=p instanceof Qr?p:p instanceof m0?p.walk(n0=>"data"in n0)||p.walk():{},{code:U,data:F,details:W,message:G,shortMessage:q}=M,D=p instanceof rr?new S5({functionName:l}):[yp,I2.code].includes(U)&&(F||W||G||q)?new es({abi:m,data:typeof F=="object"?F.data:F,functionName:l,message:M instanceof js?W:q??G}):p;return new I5(D,{abi:m,args:v,contractAddress:u,docsPath:t,functionName:l,sender:B})}function mp(p){const m=Pe(`0x${p.substring(4)}`).substring(26);return er(`0x${m}`)}async function bp({hash:p,signature:m}){const u=ht(p)?p:G0(p),{secp256k1:v}=await Promise.resolve().then(()=>k7);return`0x${(()=>{if(typeof m=="object"&&"r"in m&&"s"in m){const{r:F,s:W,v:G,yParity:q}=m,D=Number(q??G),n0=po(D);return new v.Signature(De(F),De(W)).addRecoveryBit(n0)}const B=ht(m)?m:G0(m),M=Ct(`0x${B.slice(130)}`),U=po(M);return v.Signature.fromCompact(B.substring(2,130)).addRecoveryBit(U)})().recoverPublicKey(u.substring(2)).toHex(!1)}`}function po(p){if(p===0||p===1)return p;if(p===27)return 0;if(p===28)return 1;throw new Error("Invalid yParityOrV value")}async function s6({hash:p,signature:m}){return mp(await bp({hash:p,signature:m}))}function hp(p){const{chainId:m,contractAddress:u,nonce:v,to:t}=p,l=Pe(Rt(["0x05",o2([m?H0(m):"0x",u,v?H0(v):"0x"])]));return t==="bytes"?gt(l):l}async function i6(p){const{authorization:m,signature:u}=p;return s6({hash:hp(m),signature:u??m})}class gp extends m0{constructor(m,{account:u,docsPath:v,chain:t,data:l,gas:B,gasPrice:M,maxFeePerGas:U,maxPriorityFeePerGas:F,nonce:W,to:G,value:q}){var n0;const D=Jn({from:u==null?void 0:u.address,to:G,value:typeof q<"u"&&`${Ss(q)} ${((n0=t==null?void 0:t.nativeCurrency)==null?void 0:n0.symbol)||"ETH"}`,data:l,gas:B,gasPrice:typeof M<"u"&&`${Ge(M)} gwei`,maxFeePerGas:typeof U<"u"&&`${Ge(U)} gwei`,maxPriorityFeePerGas:typeof F<"u"&&`${Ge(F)} gwei`,nonce:W});super(m.shortMessage,{cause:m,docsPath:v,metaMessages:[...m.metaMessages?[...m.metaMessages," "]:[],"Estimate Gas Arguments:",D].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=m}}function wp(p,{docsPath:m,...u}){const v=(()=>{const t=Jr(p,u);return t instanceof $n?p:t})();return new gp(v,{docsPath:m,...u})}function fo(p){if(!(!p||p.length===0))return p.reduce((m,{slot:u,value:v})=>{if(u.length!==66)throw new Gi({size:u.length,targetSize:66,type:"hex"});if(v.length!==66)throw new Gi({size:v.length,targetSize:66,type:"hex"});return m[u]=v,m},{})}function Tp(p){const{balance:m,nonce:u,state:v,stateDiff:t,code:l}=p,B={};if(l!==void 0&&(B.code=l),m!==void 0&&(B.balance=H0(m)),u!==void 0&&(B.nonce=H0(u)),v!==void 0&&(B.state=fo(v)),t!==void 0){if(B.state)throw new k5;B.stateDiff=fo(t)}return B}function Zs(p){if(!p)return;const m={};for(const{address:u,...v}of p){if(!Ce(u,{strict:!1}))throw new Fe({address:u});if(m[u])throw new P5({address:u});m[u]=Tp(v)}return m}class vp extends m0{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Ys extends m0{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class Ap extends m0{constructor({maxPriorityFeePerGas:m}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${Ge(m)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class o6 extends m0{constructor({blockHash:m,blockNumber:u}){let v="Block";m&&(v=`Block at hash "${m}"`),u&&(v=`Block at number "${u}"`),super(`${v} could not be found.`,{name:"BlockNotFoundError"})}}async function kt(p,{blockHash:m,blockNumber:u,blockTag:v,includeTransactions:t}={}){var W,G,q;const l=v??"latest",B=t??!1,M=u!==void 0?H0(u):void 0;let U=null;if(m?U=await p.request({method:"eth_getBlockByHash",params:[m,B]},{dedupe:!0}):U=await p.request({method:"eth_getBlockByNumber",params:[M||l,B]},{dedupe:!!M}),!U)throw new o6({blockHash:m,blockNumber:u});return(((q=(G=(W=p.chain)==null?void 0:W.formatters)==null?void 0:G.block)==null?void 0:q.format)||Bs)(U)}async function Ks(p){const m=await p.request({method:"eth_gasPrice"});return BigInt(m)}async function xp(p,m){return u6(p,m)}async function u6(p,m){var l,B;const{block:u,chain:v=p.chain,request:t}=m||{};try{const M=((l=v==null?void 0:v.fees)==null?void 0:l.maxPriorityFeePerGas)??((B=v==null?void 0:v.fees)==null?void 0:B.defaultPriorityFee);if(typeof M=="function"){const F=u||await L0(p,kt,"getBlock")({}),W=await M({block:F,client:p,request:t});if(W===null)throw new Error;return W}if(typeof M<"u")return M;const U=await p.request({method:"eth_maxPriorityFeePerGas"});return De(U)}catch{const[M,U]=await Promise.all([u?Promise.resolve(u):L0(p,kt,"getBlock")({}),L0(p,Ks,"getGasPrice")({})]);if(typeof M.baseFeePerGas!="bigint")throw new Ys;const F=U-M.baseFeePerGas;return F<0n?0n:F}}async function Ep(p,m){return ts(p,m)}async function ts(p,m){var q,D;const{block:u,chain:v=p.chain,request:t,type:l="eip1559"}=m||{},B=await(async()=>{var n0,Q;return typeof((n0=v==null?void 0:v.fees)==null?void 0:n0.baseFeeMultiplier)=="function"?v.fees.baseFeeMultiplier({block:u,client:p,request:t}):((Q=v==null?void 0:v.fees)==null?void 0:Q.baseFeeMultiplier)??1.2})();if(B<1)throw new vp;const U=10**(((q=B.toString().split(".")[1])==null?void 0:q.length)??0),F=n0=>n0*BigInt(Math.ceil(B*U))/BigInt(U),W=u||await L0(p,kt,"getBlock")({});if(typeof((D=v==null?void 0:v.fees)==null?void 0:D.estimateFeesPerGas)=="function"){const n0=await v.fees.estimateFeesPerGas({block:u,client:p,multiply:F,request:t,type:l});if(n0!==null)return n0}if(l==="eip1559"){if(typeof W.baseFeePerGas!="bigint")throw new Ys;const n0=typeof(t==null?void 0:t.maxPriorityFeePerGas)=="bigint"?t.maxPriorityFeePerGas:await u6(p,{block:W,chain:v,request:t}),Q=F(W.baseFeePerGas);return{maxFeePerGas:(t==null?void 0:t.maxFeePerGas)??Q+n0,maxPriorityFeePerGas:n0}}return{gasPrice:(t==null?void 0:t.gasPrice)??F(await L0(p,Ks,"getGasPrice")({}))}}async function c6(p,{address:m,blockTag:u="latest",blockNumber:v}){const t=await p.request({method:"eth_getTransactionCount",params:[m,v?H0(v):u]},{dedupe:!!v});return Ct(t)}async function ir(p){const m=await p.request({method:"eth_chainId"},{dedupe:!0});return Ct(m)}const d6=["blobVersionedHashes","chainId","fees","gas","nonce","type"],yo=new Map;async function ta(p,m){const{account:u=p.account,blobs:v,chain:t,gas:l,kzg:B,nonce:M,nonceManager:U,parameters:F=d6,type:W}=m,G=u&&Me(u),q={...m,...G?{from:G==null?void 0:G.address}:{}};let D;async function n0(){return D||(D=await L0(p,kt,"getBlock")({blockTag:"latest"}),D)}let Q;async function J(){return Q||(t?t.id:typeof m.chainId<"u"?m.chainId:(Q=await L0(p,ir,"getChainId")({}),Q))}if(F.includes("nonce")&&typeof M>"u"&&G)if(U){const a0=await J();q.nonce=await U.consume({address:G.address,chainId:a0,client:p})}else q.nonce=await L0(p,c6,"getTransactionCount")({address:G.address,blockTag:"pending"});if((F.includes("blobVersionedHashes")||F.includes("sidecars"))&&v&&B){const a0=Ms({blobs:v,kzg:B});if(F.includes("blobVersionedHashes")){const o0=o4({commitments:a0,to:"hex"});q.blobVersionedHashes=o0}if(F.includes("sidecars")){const o0=Rs({blobs:v,commitments:a0,kzg:B}),c0=p4({blobs:v,commitments:a0,proofs:o0,to:"hex"});q.sidecars=c0}}if(F.includes("chainId")&&(q.chainId=await J()),(F.includes("fees")||F.includes("type"))&&typeof W>"u")try{q.type=x4(q)}catch{let a0=yo.get(p.uid);if(typeof a0>"u"){const o0=await n0();a0=typeof(o0==null?void 0:o0.baseFeePerGas)=="bigint",yo.set(p.uid,a0)}q.type=a0?"eip1559":"legacy"}if(F.includes("fees"))if(q.type!=="legacy"&&q.type!=="eip2930"){if(typeof q.maxFeePerGas>"u"||typeof q.maxPriorityFeePerGas>"u"){const a0=await n0(),{maxFeePerGas:o0,maxPriorityFeePerGas:c0}=await ts(p,{block:a0,chain:t,request:q});if(typeof m.maxPriorityFeePerGas>"u"&&m.maxFeePerGas&&m.maxFeePerGas<c0)throw new Ap({maxPriorityFeePerGas:c0});q.maxPriorityFeePerGas=c0,q.maxFeePerGas=o0}}else{if(typeof m.maxFeePerGas<"u"||typeof m.maxPriorityFeePerGas<"u")throw new Ys;if(typeof m.gasPrice>"u"){const a0=await n0(),{gasPrice:o0}=await ts(p,{block:a0,chain:t,request:q,type:"legacy"});q.gasPrice=o0}}return F.includes("gas")&&typeof l>"u"&&(q.gas=await L0(p,Xs,"estimateGas")({...q,account:G&&{address:G.address,type:"json-rpc"}})),L2(q),delete q.parameters,q}async function l6(p,{address:m,blockNumber:u,blockTag:v="latest"}){const t=u?H0(u):void 0,l=await p.request({method:"eth_getBalance",params:[m,t||v]});return BigInt(l)}async function Xs(p,m){var t,l,B;const{account:u=p.account}=m,v=u?Me(u):void 0;try{let P0=function(T0){const{block:D0,request:j0,rpcStateOverride:B0}=T0;return p.request({method:"eth_estimateGas",params:B0?[j0,D0??"latest",B0]:D0?[j0,D0]:[j0]})};const{accessList:M,authorizationList:U,blobs:F,blobVersionedHashes:W,blockNumber:G,blockTag:q,data:D,gas:n0,gasPrice:Q,maxFeePerBlobGas:J,maxFeePerGas:a0,maxPriorityFeePerGas:o0,nonce:c0,value:p0,stateOverride:v0,...h0}=await ta(p,{...m,parameters:(v==null?void 0:v.type)==="local"?void 0:["blobVersionedHashes"]}),w0=(G?H0(G):void 0)||q,i0=Zs(v0),F0=await(async()=>{if(h0.to)return h0.to;if(U&&U.length>0)return await i6({authorization:U[0]}).catch(()=>{throw new m0("`to` is required. Could not infer from `authorizationList`")})})();L2(m);const S0=(B=(l=(t=p.chain)==null?void 0:t.formatters)==null?void 0:l.transactionRequest)==null?void 0:B.format,W0=(S0||dn)({..._r(h0,{format:S0}),from:v==null?void 0:v.address,accessList:M,authorizationList:U,blobs:F,blobVersionedHashes:W,data:D,gas:n0,gasPrice:Q,maxFeePerBlobGas:J,maxFeePerGas:a0,maxPriorityFeePerGas:o0,nonce:c0,to:F0,value:p0});let A0=BigInt(await P0({block:w0,request:W0,rpcStateOverride:i0}));if(U){const T0=await l6(p,{address:W0.from}),D0=await Promise.all(U.map(async j0=>{const{contractAddress:B0}=j0,X0=await P0({block:w0,request:{authorizationList:void 0,data:D,from:v==null?void 0:v.address,to:B0,value:H0(T0)},rpcStateOverride:i0}).catch(()=>100000n);return 2n*BigInt(X0)}));A0+=D0.reduce((j0,B0)=>j0+B0,0n)}return A0}catch(M){throw wp(M,{...m,account:v,chain:p.chain})}}async function p6(p,m){const{abi:u,address:v,args:t,functionName:l,dataSuffix:B,...M}=m,U=vt({abi:u,args:t,functionName:l});try{return await L0(p,Xs,"estimateGas")({data:`${U}${B?B.replace("0x",""):""}`,to:v,...M})}catch(F){const W=M.account?Me(M.account):void 0;throw M2(F,{abi:u,address:v,args:t,docsPath:"/docs/contract/estimateContractGas",functionName:l,sender:W==null?void 0:W.address})}}function na(p,m){if(!Ce(p,{strict:!1}))throw new Fe({address:p});if(!Ce(m,{strict:!1}))throw new Fe({address:m});return p.toLowerCase()===m.toLowerCase()}const mo="/docs/contract/decodeEventLog";function Qs(p){const{abi:m,data:u,strict:v,topics:t}=p,l=v??!0,[B,...M]=t;if(!B)throw new ul({docsPath:mo});const U=m.length===1?m[0]:m.find(Q=>Q.type==="event"&&B===Kr(Zt(Q)));if(!(U&&"name"in U)||U.type!=="event")throw new B4(B,{docsPath:mo});const{name:F,inputs:W}=U,G=W==null?void 0:W.some(Q=>!("name"in Q&&Q.name));let q=G?[]:{};const D=W.filter(Q=>"indexed"in Q&&Q.indexed);for(let Q=0;Q<D.length;Q++){const J=D[Q],a0=M[Q];if(!a0)throw new Zr({abiItem:U,param:J});q[G?Q:J.name||Q]=Pp({param:J,value:a0})}const n0=W.filter(Q=>!("indexed"in Q&&Q.indexed));if(n0.length>0){if(u&&u!=="0x")try{const Q=Yr(n0,u);if(Q)if(G)q=[...q,...Q];else for(let J=0;J<n0.length;J++)q[n0[J].name]=Q[J]}catch(Q){if(l)throw Q instanceof k4||Q instanceof _o?new Rn({abiItem:U,data:u,params:n0,size:le(u)}):Q}else if(l)throw new Rn({abiItem:U,data:"0x",params:n0,size:0})}return{eventName:F,args:Object.values(q).length>0?q:void 0}}function Pp({param:p,value:m}){return p.type==="string"||p.type==="bytes"||p.type==="tuple"||p.type.match(/^(.*)\[(\d+)?\]$/)?m:(Yr([p],m)||[])[0]}function Js(p){const{abi:m,args:u,logs:v,strict:t=!0}=p,l=(()=>{if(p.eventName)return Array.isArray(p.eventName)?p.eventName:[p.eventName]})();return v.map(B=>{var M;try{const U=m.find(W=>W.type==="event"&&B.topics[0]===Kr(W));if(!U)return null;const F=Qs({...B,abi:[U],strict:t});return l&&!l.includes(F.eventName)||!kp({args:F.args,inputs:U.inputs,matchArgs:u})?null:{...F,...B}}catch(U){let F,W;if(U instanceof B4)return null;if(U instanceof Rn||U instanceof Zr){if(t)return null;F=U.abiItem.name,W=(M=U.abiItem.inputs)==null?void 0:M.some(G=>!("name"in G&&G.name))}return{...B,args:W?[]:{},eventName:F}}}).filter(Boolean)}function kp(p){const{args:m,inputs:u,matchArgs:v}=p;if(!v)return!0;if(!m)return!1;function t(l,B,M){try{return l.type==="address"?na(B,M):l.type==="string"||l.type==="bytes"?Pe(cn(B))===M:B===M}catch{return!1}}return Array.isArray(m)&&Array.isArray(v)?v.every((l,B)=>{if(l==null)return!0;const M=u[B];return M?(Array.isArray(l)?l:[l]).some(F=>t(M,F,m[B])):!1}):typeof m=="object"&&!Array.isArray(m)&&typeof v=="object"&&!Array.isArray(v)?Object.entries(v).every(([l,B])=>{if(B==null)return!0;const M=u.find(F=>F.name===l);return M?(Array.isArray(B)?B:[B]).some(F=>t(M,F,m[l])):!1}):!1}async function _s(p,{address:m,blockHash:u,fromBlock:v,toBlock:t,event:l,events:B,args:M,strict:U}={}){const F=U??!1,W=B??(l?[l]:void 0);let G=[];W&&(G=[W.flatMap(Q=>sr({abi:[Q],eventName:Q.name,args:B?void 0:M}))],l&&(G=G[0]));let q;u?q=await p.request({method:"eth_getLogs",params:[{address:m,topics:G,blockHash:u}]}):q=await p.request({method:"eth_getLogs",params:[{address:m,topics:G,fromBlock:typeof v=="bigint"?H0(v):v,toBlock:typeof t=="bigint"?H0(t):t}]});const D=q.map(n0=>Wt(n0));return W?Js({abi:W,args:M,logs:D,strict:F}):D}async function $s(p,m){const{abi:u,address:v,args:t,blockHash:l,eventName:B,fromBlock:M,toBlock:U,strict:F}=m,W=B?ar({abi:u,name:B}):void 0,G=W?void 0:u.filter(q=>q.type==="event");return L0(p,_s,"getLogs")({address:v,args:t,blockHash:l,event:W,events:G,fromBlock:M,toBlock:U,strict:F})}const xa="/docs/contract/decodeFunctionResult";function D2(p){const{abi:m,args:u,functionName:v,data:t}=p;let l=m[0];if(v){const M=ar({abi:m,args:u,name:v});if(!M)throw new Or(v,{docsPath:xa});l=M}if(l.type!=="function")throw new Or(void 0,{docsPath:xa});if(!l.outputs)throw new cl(l.name,{docsPath:xa});const B=Yr(l.outputs,t);if(B&&B.length>1)return B;if(B&&B.length===1)return B[0]}const ns=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"}],f6=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],y6=[...f6,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],Cp=[...f6,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],bo=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],ho=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],go=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],Ea=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],Bp="0x82ad56cb",m6="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",Ip="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",Sp="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",Pa="/docs/contract/encodeDeployData";function ra(p){const{abi:m,args:u,bytecode:v}=p;if(!u||u.length===0)return v;const t=m.find(B=>"type"in B&&B.type==="constructor");if(!t)throw new al({docsPath:Pa});if(!("inputs"in t))throw new to({docsPath:Pa});if(!t.inputs||t.inputs.length===0)throw new to({docsPath:Pa});const l=O2(t.inputs,u);return Rt([v,l])}function b6(){let p=()=>{},m=()=>{};return{promise:new Promise((v,t)=>{p=v,m=t}),resolve:p,reject:m}}const ka=new Map;function h6({fn:p,id:m,shouldSplitBatch:u,wait:v=0,sort:t}){const l=async()=>{const W=U();B();const G=W.map(({args:q})=>q);G.length!==0&&p(G).then(q=>{t&&Array.isArray(q)&&q.sort(t);for(let D=0;D<W.length;D++){const{resolve:n0}=W[D];n0==null||n0([q[D],q])}}).catch(q=>{for(let D=0;D<W.length;D++){const{reject:n0}=W[D];n0==null||n0(q)}})},B=()=>ka.delete(m),M=()=>U().map(({args:W})=>W),U=()=>ka.get(m)||[],F=W=>ka.set(m,[...U(),W]);return{flush:B,async schedule(W){const{promise:G,resolve:q,reject:D}=b6();return(u==null?void 0:u([...M(),W]))&&l(),U().length>0?(F({args:W,resolve:q,reject:D}),G):(F({args:W,resolve:q,reject:D}),setTimeout(l,v),G)}}}async function or(p,m){var S0,N0,W0,P0;const{account:u=p.account,batch:v=!!((S0=p.batch)!=null&&S0.multicall),blockNumber:t,blockTag:l="latest",accessList:B,blobs:M,code:U,data:F,factory:W,factoryData:G,gas:q,gasPrice:D,maxFeePerBlobGas:n0,maxFeePerGas:Q,maxPriorityFeePerGas:J,nonce:a0,to:o0,value:c0,stateOverride:p0,...v0}=m,h0=u?Me(u):void 0;if(U&&(W||G))throw new m0("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(U&&o0)throw new m0("Cannot provide both `code` & `to` as parameters.");const f0=U&&F,w0=W&&G&&o0&&F,i0=f0||w0,F0=f0?Np({code:U,data:F}):w0?Up({data:F,factory:W,factoryData:G,to:o0}):F;try{L2(m);const T0=(t?H0(t):void 0)||l,D0=Zs(p0),j0=(P0=(W0=(N0=p.chain)==null?void 0:N0.formatters)==null?void 0:W0.transactionRequest)==null?void 0:P0.format,X0=(j0||dn)({..._r(v0,{format:j0}),from:h0==null?void 0:h0.address,accessList:B,blobs:M,data:F0,gas:q,gasPrice:D,maxFeePerBlobGas:n0,maxFeePerGas:Q,maxPriorityFeePerGas:J,nonce:a0,to:i0?void 0:o0,value:c0});if(v&&Mp({request:X0})&&!D0)try{return await Rp(p,{...X0,blockNumber:t,blockTag:l})}catch(he){if(!(he instanceof f4)&&!(he instanceof za))throw he}const se=await p.request({method:"eth_call",params:D0?[X0,T0,D0]:[X0,T0]});return se==="0x"?{data:void 0}:{data:se}}catch(A0){const T0=Op(A0),{offchainLookup:D0,offchainLookupSignature:j0}=await Promise.resolve().then(()=>require("./ccip.cjs"));if(p.ccipRead!==!1&&(T0==null?void 0:T0.slice(0,10))===j0&&o0)return{data:await D0(p,{data:T0,to:o0})};throw i0&&(T0==null?void 0:T0.slice(0,10))==="0x101bb98d"?new M5({factory:W}):K4(A0,{...m,account:h0,chain:p.chain})}}function Mp({request:p}){const{data:m,to:u,...v}=p;return!(!m||m.startsWith(Bp)||!u||Object.values(v).filter(t=>typeof t<"u").length>0)}async function Rp(p,m){var Q;const{batchSize:u=1024,wait:v=0}=typeof((Q=p.batch)==null?void 0:Q.multicall)=="object"?p.batch.multicall:{},{blockNumber:t,blockTag:l="latest",data:B,multicallAddress:M,to:U}=m;let F=M;if(!F){if(!p.chain)throw new f4;F=ln({blockNumber:t,chain:p.chain,contract:"multicall3"})}const G=(t?H0(t):void 0)||l,{schedule:q}=h6({id:`${p.uid}.${G}`,wait:v,shouldSplitBatch(J){return J.reduce((o0,{data:c0})=>o0+(c0.length-2),0)>u*2},fn:async J=>{const a0=J.map(p0=>({allowFailure:!0,callData:p0.data,target:p0.to})),o0=vt({abi:ns,args:[a0],functionName:"aggregate3"}),c0=await p.request({method:"eth_call",params:[{data:o0,to:F},G]});return D2({abi:ns,args:[a0],functionName:"aggregate3",data:c0||"0x"})}}),[{returnData:D,success:n0}]=await q({data:B,to:U});if(!n0)throw new Qr({data:D});return D==="0x"?{data:void 0}:{data:D}}function Np(p){const{code:m,data:u}=p;return ra({abi:V4(["constructor(bytes, bytes)"]),bytecode:m6,args:[m,u]})}function Up(p){const{data:m,factory:u,factoryData:v,to:t}=p;return ra({abi:V4(["constructor(address, bytes, address, bytes)"]),bytecode:Ip,args:[t,m,u,v]})}function Op(p){var u;if(!(p instanceof m0))return;const m=p.walk();return typeof(m==null?void 0:m.data)=="object"?(u=m.data)==null?void 0:u.data:m.data}async function It(p,m){const{abi:u,address:v,args:t,functionName:l,...B}=m,M=vt({abi:u,args:t,functionName:l});try{const{data:U}=await L0(p,or,"call")({...B,data:M,to:v});return D2({abi:u,args:t,functionName:l,data:U||"0x"})}catch(U){throw M2(U,{abi:u,address:v,args:t,docsPath:"/docs/contract/readContract",functionName:l})}}async function g6(p,m){const{abi:u,address:v,args:t,dataSuffix:l,functionName:B,...M}=m,U=M.account?Me(M.account):p.account,F=vt({abi:u,args:t,functionName:B});try{const{data:W}=await L0(p,or,"call")({batch:!1,data:`${F}${l?l.replace("0x",""):""}`,to:v,...M,account:U}),G=D2({abi:u,args:t,functionName:B,data:W||"0x"}),q=u.filter(D=>"name"in D&&D.name===m.functionName);return{result:G,request:{abi:q,address:v,args:t,dataSuffix:l,functionName:B,...M,account:U}}}catch(W){throw M2(W,{abi:u,address:v,args:t,docsPath:"/docs/contract/simulateContract",functionName:B,sender:U==null?void 0:U.address})}}const Ca=new Map,wo=new Map;let Lp=0;function u2(p,m,u){const v=++Lp,t=()=>Ca.get(p)||[],l=()=>{const W=t();Ca.set(p,W.filter(G=>G.id!==v))},B=()=>{const W=t();if(!W.some(q=>q.id===v))return;const G=wo.get(p);W.length===1&&G&&G(),l()},M=t();if(Ca.set(p,[...M,{id:v,fns:m}]),M&&M.length>0)return B;const U={};for(const W in m)U[W]=(...G)=>{var D,n0;const q=t();if(q.length!==0)for(const Q of q)(n0=(D=Q.fns)[W])==null||n0.call(D,...G)};const F=u(U);return typeof F=="function"&&wo.set(p,F),B}async function rs(p){return new Promise(m=>setTimeout(m,p))}function ur(p,{emitOnBegin:m,initialWaitTime:u,interval:v}){let t=!0;const l=()=>t=!1;return(async()=>{let M;m&&(M=await p({unpoll:l}));const U=await(u==null?void 0:u(M))??v;await rs(U);const F=async()=>{t&&(await p({unpoll:l}),await rs(v),F())};F()})(),l}const Dp=new Map,Fp=new Map;function zp(p){const m=(t,l)=>({clear:()=>l.delete(t),get:()=>l.get(t),set:B=>l.set(t,B)}),u=m(p,Dp),v=m(p,Fp);return{clear:()=>{u.clear(),v.clear()},promise:u,response:v}}async function Hp(p,{cacheKey:m,cacheTime:u=Number.POSITIVE_INFINITY}){const v=zp(m),t=v.response.get();if(t&&u>0&&new Date().getTime()-t.created.getTime()<u)return t.data;let l=v.promise.get();l||(l=p(),v.promise.set(l));try{const B=await l;return v.response.set({created:new Date,data:B}),B}finally{v.promise.clear()}}const Vp=p=>`blockNumber.${p}`;async function cr(p,{cacheTime:m=p.cacheTime}={}){const u=await Hp(()=>p.request({method:"eth_blockNumber"}),{cacheKey:Vp(p.uid),cacheTime:m});return BigInt(u)}async function aa(p,{filter:m}){const u="strict"in m&&m.strict,v=await m.request({method:"eth_getFilterChanges",params:[m.id]});if(typeof v[0]=="string")return v;const t=v.map(l=>Wt(l));return!("abi"in m)||!m.abi?t:Js({abi:m.abi,logs:t,strict:u})}async function sa(p,{filter:m}){return m.request({method:"eth_uninstallFilter",params:[m.id]})}function w6(p,m){const{abi:u,address:v,args:t,batch:l=!0,eventName:B,fromBlock:M,onError:U,onLogs:F,poll:W,pollingInterval:G=p.pollingInterval,strict:q}=m;return(typeof W<"u"?W:typeof M=="bigint"?!0:!(p.transport.type==="webSocket"||p.transport.type==="fallback"&&p.transport.transports[0].config.type==="webSocket"))?(()=>{const J=q??!1,a0=Ae(["watchContractEvent",v,t,l,p.uid,B,G,J,M]);return u2(a0,{onLogs:F,onError:U},o0=>{let c0;M!==void 0&&(c0=M-1n);let p0,v0=!1;const h0=ur(async()=>{var f0;if(!v0){try{p0=await L0(p,Ws,"createContractEventFilter")({abi:u,address:v,args:t,eventName:B,strict:J,fromBlock:M})}catch{}v0=!0;return}try{let w0;if(p0)w0=await L0(p,aa,"getFilterChanges")({filter:p0});else{const i0=await L0(p,cr,"getBlockNumber")({});c0&&c0<i0?w0=await L0(p,$s,"getContractEvents")({abi:u,address:v,args:t,eventName:B,fromBlock:c0+1n,toBlock:i0,strict:J}):w0=[],c0=i0}if(w0.length===0)return;if(l)o0.onLogs(w0);else for(const i0 of w0)o0.onLogs([i0])}catch(w0){p0&&w0 instanceof S2&&(v0=!1),(f0=o0.onError)==null||f0.call(o0,w0)}},{emitOnBegin:!0,interval:G});return async()=>{p0&&await L0(p,sa,"uninstallFilter")({filter:p0}),h0()}})})():(()=>{const J=q??!1,a0=Ae(["watchContractEvent",v,t,l,p.uid,B,G,J]);let o0=!0,c0=()=>o0=!1;return u2(a0,{onLogs:F,onError:U},p0=>((async()=>{try{const v0=(()=>{if(p.transport.type==="fallback"){const w0=p.transport.transports.find(i0=>i0.config.type==="webSocket");return w0?w0.value:p.transport}return p.transport})(),h0=B?sr({abi:u,eventName:B,args:t}):[],{unsubscribe:f0}=await v0.subscribe({params:["logs",{address:v,topics:h0}],onData(w0){var F0;if(!o0)return;const i0=w0.result;try{const{eventName:S0,args:N0}=Qs({abi:u,data:i0.data,topics:i0.topics,strict:q}),W0=Wt(i0,{args:N0,eventName:S0});p0.onLogs([W0])}catch(S0){let N0,W0;if(S0 instanceof Rn||S0 instanceof Zr){if(q)return;N0=S0.abiItem.name,W0=(F0=S0.abiItem.inputs)==null?void 0:F0.some(A0=>!("name"in A0&&A0.name))}const P0=Wt(i0,{args:W0?[]:{},eventName:N0});p0.onLogs([P0])}},onError(w0){var i0;(i0=p0.onError)==null||i0.call(p0,w0)}});c0=f0,o0||c0()}catch(v0){U==null||U(v0)}})(),()=>c0()))})()}function jp(p,{docsPath:m,...u}){const v=(()=>{const t=Jr(p,u);return t instanceof $n?p:t})();return new q8(v,{docsPath:m,...u})}async function ei(p,{serializedTransaction:m}){return p.request({method:"eth_sendRawTransaction",params:[m]},{retryCount:0})}const Ba=new qr(128);async function ti(p,m){var a0,o0,c0,p0;const{account:u=p.account,chain:v=p.chain,accessList:t,authorizationList:l,blobs:B,data:M,gas:U,gasPrice:F,maxFeePerBlobGas:W,maxFeePerGas:G,maxPriorityFeePerGas:q,nonce:D,value:n0,...Q}=m;if(typeof u>"u")throw new nr({docsPath:"/docs/actions/wallet/sendTransaction"});const J=u?Me(u):null;try{L2(m);const v0=await(async()=>{if(m.to)return m.to;if(m.to!==null&&l&&l.length>0)return await i6({authorization:l[0]}).catch(()=>{throw new m0("`to` is required. Could not infer from `authorizationList`.")})})();if((J==null?void 0:J.type)==="json-rpc"||J===null){let h0;v!==null&&(h0=await L0(p,ir,"getChainId")({}),E4({currentChainId:h0,chain:v}));const f0=(c0=(o0=(a0=p.chain)==null?void 0:a0.formatters)==null?void 0:o0.transactionRequest)==null?void 0:c0.format,i0=(f0||dn)({..._r(Q,{format:f0}),accessList:t,authorizationList:l,blobs:B,chainId:h0,data:M,from:J==null?void 0:J.address,gas:U,gasPrice:F,maxFeePerBlobGas:W,maxFeePerGas:G,maxPriorityFeePerGas:q,nonce:D,to:v0,value:n0}),F0=Ba.get(p.uid),S0=F0?"wallet_sendTransaction":"eth_sendTransaction";try{return await p.request({method:S0,params:[i0]},{retryCount:0})}catch(N0){if(F0===!1)throw N0;const W0=N0;if(W0.name==="InvalidInputRpcError"||W0.name==="InvalidParamsRpcError"||W0.name==="MethodNotFoundRpcError"||W0.name==="MethodNotSupportedRpcError")return await p.request({method:"wallet_sendTransaction",params:[i0]},{retryCount:0}).then(P0=>(Ba.set(p.uid,!0),P0)).catch(P0=>{const A0=P0;throw A0.name==="MethodNotFoundRpcError"||A0.name==="MethodNotSupportedRpcError"?(Ba.set(p.uid,!1),W0):A0});throw W0}}if((J==null?void 0:J.type)==="local"){const h0=await L0(p,ta,"prepareTransactionRequest")({account:J,accessList:t,authorizationList:l,blobs:B,chain:v,data:M,gas:U,gasPrice:F,maxFeePerBlobGas:W,maxFeePerGas:G,maxPriorityFeePerGas:q,nonce:D,nonceManager:J.nonceManager,parameters:[...d6,"sidecars"],value:n0,...Q,to:v0}),f0=(p0=v==null?void 0:v.serializers)==null?void 0:p0.transaction,w0=await J.signTransaction(h0,{serializer:f0});return await L0(p,ei,"sendRawTransaction")({serializedTransaction:w0})}throw(J==null?void 0:J.type)==="smart"?new va({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new va({docsPath:"/docs/actions/wallet/sendTransaction",type:J==null?void 0:J.type})}catch(v0){throw v0 instanceof va?v0:jp(v0,{...m,account:J,chain:m.chain||void 0})}}async function T6(p,m){const{abi:u,account:v=p.account,address:t,args:l,dataSuffix:B,functionName:M,...U}=m;if(typeof v>"u")throw new nr({docsPath:"/docs/contract/writeContract"});const F=v?Me(v):null,W=vt({abi:u,args:l,functionName:M});try{return await L0(p,ti,"sendTransaction")({data:`${W}${B?B.replace("0x",""):""}`,to:t,account:F,...U})}catch(G){throw M2(G,{abi:u,address:t,args:l,docsPath:"/docs/contract/writeContract",functionName:M,sender:F==null?void 0:F.address})}}function dr({abi:p,address:m,client:u}){const v=u,[t,l]=v?"public"in v&&"wallet"in v?[v.public,v.wallet]:"public"in v?[v.public,void 0]:"wallet"in v?[void 0,v.wallet]:[v,v]:[void 0,void 0],B=t!=null,M=l!=null,U={};let F=!1,W=!1,G=!1;for(const q of p)if(q.type==="function"?q.stateMutability==="view"||q.stateMutability==="pure"?F=!0:W=!0:q.type==="event"&&(G=!0),F&&W&&G)break;return B&&(F&&(U.read=new Proxy({},{get(q,D){return(...n0)=>{const{args:Q,options:J}=xr(n0);return L0(t,It,"readContract")({abi:p,address:m,functionName:D,args:Q,...J})}}})),W&&(U.simulate=new Proxy({},{get(q,D){return(...n0)=>{const{args:Q,options:J}=xr(n0);return L0(t,g6,"simulateContract")({abi:p,address:m,functionName:D,args:Q,...J})}}})),G&&(U.createEventFilter=new Proxy({},{get(q,D){return(...n0)=>{const Q=p.find(o0=>o0.type==="event"&&o0.name===D),{args:J,options:a0}=Ia(n0,Q);return L0(t,Ws,"createContractEventFilter")({abi:p,address:m,eventName:D,args:J,...a0})}}}),U.getEvents=new Proxy({},{get(q,D){return(...n0)=>{const Q=p.find(o0=>o0.type==="event"&&o0.name===D),{args:J,options:a0}=Ia(n0,Q);return L0(t,$s,"getContractEvents")({abi:p,address:m,eventName:D,args:J,...a0})}}}),U.watchEvent=new Proxy({},{get(q,D){return(...n0)=>{const Q=p.find(o0=>o0.type==="event"&&o0.name===D),{args:J,options:a0}=Ia(n0,Q);return L0(t,w6,"watchContractEvent")({abi:p,address:m,eventName:D,args:J,...a0})}}}))),M&&W&&(U.write=new Proxy({},{get(q,D){return(...n0)=>{const{args:Q,options:J}=xr(n0);return L0(l,T6,"writeContract")({abi:p,address:m,functionName:D,args:Q,...J})}}})),(B||M)&&W&&(U.estimateGas=new Proxy({},{get(q,D){return(...n0)=>{const{args:Q,options:J}=xr(n0);return L0(t??l,p6,"estimateContractGas")({abi:p,address:m,functionName:D,args:Q,...J,account:J.account??l.account})}}})),U.address=m,U.abi=p,U}function xr(p){const m=p.length&&Array.isArray(p[0]),u=m?p[0]:[],v=(m?p[1]:p[0])??{};return{args:u,options:v}}function Ia(p,m){let u=!1;Array.isArray(p[0])?u=!0:p.length===1?u=m.inputs.some(l=>l.indexed):p.length===2&&(u=!0);const v=u?p[0]:void 0,t=(u?p[1]:p[0])??{};return{args:v,options:t}}class qp extends m0{constructor({address:m}){super(`No EIP-712 domain found on contract "${m}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${m}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function Gp(p,m){const{address:u,factory:v,factoryData:t}=m;try{const[l,B,M,U,F,W,G]=await L0(p,It,"readContract")({abi:Wp,address:u,functionName:"eip712Domain",factory:v,factoryData:t});return{domain:{name:B,version:M,chainId:Number(U),verifyingContract:F,salt:W},extensions:G,fields:l}}catch(l){const B=l;throw B.name==="ContractFunctionExecutionError"&&B.cause.name==="ContractFunctionZeroDataError"?new qp({address:u}):B}}const Wp=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];async function Zp(p,{chain:m}){const{id:u,name:v,nativeCurrency:t,rpcUrls:l,blockExplorers:B}=m;await p.request({method:"wallet_addEthereumChain",params:[{chainId:H0(u),chainName:v,nativeCurrency:t,rpcUrls:l.default.http,blockExplorerUrls:B?Object.values(B).map(({url:M})=>M):void 0}]},{dedupe:!0,retryCount:0})}const as=256;let Er=as,Pr;function v6(p=11){if(!Pr||Er+p>as*2){Pr="",Er=0;for(let m=0;m<as;m++)Pr+=(256+Math.random()*256|0).toString(16).substring(1)}return Pr.substring(Er,Er+++p)}function A6(p){const{batch:m,cacheTime:u=p.pollingInterval??4e3,ccipRead:v,key:t="base",name:l="Base Client",pollingInterval:B=4e3,type:M="base"}=p,U=p.chain,F=p.account?Me(p.account):void 0,{config:W,request:G,value:q}=p.transport({chain:U,pollingInterval:B}),D={...W,...q},n0={account:F,batch:m,cacheTime:u,ccipRead:v,chain:U,key:t,name:l,pollingInterval:B,request:G,transport:D,type:M,uid:v6()};function Q(J){return a0=>{const o0=a0(J);for(const p0 in n0)delete o0[p0];const c0={...J,...o0};return Object.assign(c0,{extend:Q(c0)})}}return Object.assign(n0,{extend:Q(n0)})}const kr=new qr(8192);function Yp(p,{enabled:m=!0,id:u}){if(!m||!u)return p();if(kr.get(u))return kr.get(u);const v=p().finally(()=>kr.delete(u));return kr.set(u,v),v}function ss(p,{delay:m=100,retryCount:u=2,shouldRetry:v=()=>!0}={}){return new Promise((t,l)=>{const B=async({count:M=0}={})=>{const U=async({error:F})=>{const W=typeof m=="function"?m({count:M,error:F}):m;W&&await rs(W),B({count:M+1})};try{const F=await p();t(F)}catch(F){if(M<u&&await v({count:M,error:F}))return U({error:F});l(F)}};B()})}function Kp(p,m={}){return async(u,v={})=>{var G;const{dedupe:t=!1,methods:l,retryDelay:B=150,retryCount:M=3,uid:U}={...m,...v},{method:F}=u;if((G=l==null?void 0:l.exclude)!=null&&G.includes(F))throw new v2(new Error("method not supported"),{method:F});if(l!=null&&l.include&&!l.include.includes(F))throw new v2(new Error("method not supported"),{method:F});const W=t?Q2(`${U}.${Ae(u)}`):void 0;return Yp(()=>ss(async()=>{try{return await p(u)}catch(q){const D=q;switch(D.code){case Un.code:throw new Un(D);case On.code:throw new On(D);case Ln.code:throw new Ln(D,{method:u.method});case Dn.code:throw new Dn(D);case I2.code:throw new I2(D);case S2.code:throw new S2(D);case Fn.code:throw new Fn(D);case zn.code:throw new zn(D);case Hn.code:throw new Hn(D);case v2.code:throw new v2(D,{method:u.method});case $2.code:throw new $2(D);case Vn.code:throw new Vn(D);case Y2.code:throw new Y2(D);case jn.code:throw new jn(D);case qn.code:throw new qn(D);case Gn.code:throw new Gn(D);case Wn.code:throw new Wn(D);case Zn.code:throw new Zn(D);case 5e3:throw new Y2(D);default:throw q instanceof m0?q:new N5(D)}}},{delay:({count:q,error:D})=>{var n0;if(D&&D instanceof Z2){const Q=(n0=D==null?void 0:D.headers)==null?void 0:n0.get("Retry-After");if(Q!=null&&Q.match(/\d/))return Number.parseInt(Q)*1e3}return~~(1<<q)*B},retryCount:M,shouldRetry:({error:q})=>Xp(q)}),{enabled:t,id:W})}}function Xp(p){return"code"in p&&typeof p.code=="number"?p.code===-1||p.code===$2.code||p.code===I2.code:p instanceof Z2&&p.status?p.status===403||p.status===408||p.status===413||p.status===429||p.status===500||p.status===502||p.status===503||p.status===504:!0}function x6({key:p,methods:m,name:u,request:v,retryCount:t=3,retryDelay:l=150,timeout:B,type:M},U){const F=v6();return{config:{key:p,methods:m,name:u,request:v,retryCount:t,retryDelay:l,timeout:B,type:M},request:Kp(v,{methods:m,retryCount:t,retryDelay:l,uid:F}),value:U}}function Qp(p,m={}){const{key:u="custom",methods:v,name:t="Custom Provider",retryDelay:l}=m;return({retryCount:B})=>x6({key:u,methods:v,name:t,request:p.request.bind(p),retryCount:m.retryCount??B,retryDelay:l,type:"custom"})}class Jp extends m0{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function _p(p,{errorInstance:m=new Error("timed out"),timeout:u,signal:v}){return new Promise((t,l)=>{(async()=>{let B;try{const M=new AbortController;u>0&&(B=setTimeout(()=>{v&&M.abort()},u)),t(await p({signal:(M==null?void 0:M.signal)||null}))}catch(M){(M==null?void 0:M.name)==="AbortError"&&l(m),l(M)}finally{clearTimeout(B)}})()})}function $p(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const To=$p();function ef(p,m={}){return{async request(u){var G;const{body:v,onRequest:t=m.onRequest,onResponse:l=m.onResponse,timeout:B=m.timeout??1e4}=u,M={...m.fetchOptions??{},...u.fetchOptions??{}},{headers:U,method:F,signal:W}=M;try{const q=await _p(async({signal:n0})=>{const Q={...M,body:Array.isArray(v)?Ae(v.map(c0=>({jsonrpc:"2.0",id:c0.id??To.take(),...c0}))):Ae({jsonrpc:"2.0",id:v.id??To.take(),...v}),headers:{"Content-Type":"application/json",...U},method:F||"POST",signal:W||(B>0?n0:null)},J=new Request(p,Q),a0=await(t==null?void 0:t(J,Q))??{...Q,url:p};return await fetch(a0.url??p,a0)},{errorInstance:new oo({body:v,url:p}),timeout:B,signal:!0});l&&await l(q);let D;if((G=q.headers.get("Content-Type"))!=null&&G.startsWith("application/json"))D=await q.json();else{D=await q.text();try{D=JSON.parse(D||"{}")}catch(n0){if(q.ok)throw n0;D={error:D}}}if(!q.ok)throw new Z2({body:v,details:Ae(D.error)||q.statusText,headers:q.headers,status:q.status,url:p});return D}catch(q){throw q instanceof Z2||q instanceof oo?q:new Z2({body:v,cause:q,url:p})}}}}function tf(p,m={}){const{batch:u,fetchOptions:v,key:t="http",methods:l,name:B="HTTP JSON-RPC",onFetchRequest:M,onFetchResponse:U,retryDelay:F,raw:W}=m;return({chain:G,retryCount:q,timeout:D})=>{const{batchSize:n0=1e3,wait:Q=0}=typeof u=="object"?u:{},J=m.retryCount??q,a0=D??m.timeout??1e4,o0=p||(G==null?void 0:G.rpcUrls.default.http[0]);if(!o0)throw new Jp;const c0=ef(o0,{fetchOptions:v,onRequest:M,onResponse:U,timeout:a0});return x6({key:t,methods:l,name:B,async request({method:p0,params:v0}){const h0={method:p0,params:v0},{schedule:f0}=h6({id:o0,wait:Q,shouldSplitBatch(S0){return S0.length>n0},fn:S0=>c0.request({body:S0}),sort:(S0,N0)=>S0.id-N0.id}),w0=async S0=>u?f0(S0):[await c0.request({body:S0})],[{error:i0,result:F0}]=await w0(h0);if(W)return{error:i0,result:F0};if(i0)throw new js({body:h0,error:i0,url:o0});return F0},retryCount:J,retryDelay:F,timeout:a0,type:"http"},{fetchOptions:v,url:o0})}}function ni(p,m){var v,t,l,B,M,U;if(!(p instanceof m0))return!1;const u=p.walk(F=>F instanceof es);return u instanceof es?!!(((v=u.data)==null?void 0:v.errorName)==="ResolverNotFound"||((t=u.data)==null?void 0:t.errorName)==="ResolverWildcardNotSupported"||((l=u.data)==null?void 0:l.errorName)==="ResolverNotContract"||((B=u.data)==null?void 0:B.errorName)==="ResolverError"||((M=u.data)==null?void 0:M.errorName)==="HttpError"||(U=u.reason)!=null&&U.includes("Wildcard on non-extended resolvers is not supported")||m==="reverse"&&u.reason===P4[50]):!1}function E6(p){if(p.length!==66||p.indexOf("[")!==0||p.indexOf("]")!==65)return null;const m=`0x${p.slice(1,65)}`;return ht(m)?m:null}function Mr(p){let m=new Uint8Array(32).fill(0);if(!p)return we(m);const u=p.split(".");for(let v=u.length-1;v>=0;v-=1){const t=E6(u[v]),l=t?cn(t):Pe(A2(u[v]),"bytes");m=Pe(Bt([m,l]),"bytes")}return we(m)}function nf(p){return`[${p.slice(2)}]`}function rf(p){const m=new Uint8Array(32).fill(0);return p?E6(p)||Pe(A2(p)):we(m)}function ia(p){const m=p.replace(/^\.|\.$/gm,"");if(m.length===0)return new Uint8Array(1);const u=new Uint8Array(A2(m).byteLength+2);let v=0;const t=m.split(".");for(let l=0;l<t.length;l++){let B=A2(t[l]);B.byteLength>255&&(B=A2(nf(rf(t[l])))),u[v]=B.length,u.set(B,v+1),v+=B.length+1}return u.byteLength!==v+1?u.slice(0,v+1):u}async function af(p,{blockNumber:m,blockTag:u,coinType:v,name:t,gatewayUrls:l,strict:B,universalResolverAddress:M}){let U=M;if(!U){if(!p.chain)throw new Error("client chain not configured. universalResolverAddress is required.");U=ln({blockNumber:m,chain:p.chain,contract:"ensUniversalResolver"})}try{const F=vt({abi:ho,functionName:"addr",...v!=null?{args:[Mr(t),BigInt(v)]}:{args:[Mr(t)]}}),W={address:U,abi:y6,functionName:"resolve",args:[G0(ia(t)),F],blockNumber:m,blockTag:u},G=L0(p,It,"readContract"),q=l?await G({...W,args:[...W.args,l]}):await G(W);if(q[0]==="0x")return null;const D=D2({abi:ho,args:v!=null?[Mr(t),BigInt(v)]:void 0,functionName:"addr",data:q[0]});return D==="0x"||bt(D)==="0x00"?null:D}catch(F){if(B)throw F;if(ni(F,"resolve"))return null;throw F}}class sf extends m0{constructor({data:m}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(m)}`],name:"EnsAvatarInvalidMetadataError"})}}class kn extends m0{constructor({reason:m}){super(`ENS NFT avatar URI is invalid. ${m}`,{name:"EnsAvatarInvalidNftUriError"})}}class ri extends m0{constructor({uri:m}){super(`Unable to resolve ENS avatar URI "${m}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class of extends m0{constructor({namespace:m}){super(`ENS NFT avatar namespace "${m}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const uf=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,cf=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,df=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,lf=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function pf(p){try{const m=await fetch(p,{method:"HEAD"});if(m.status===200){const u=m.headers.get("content-type");return u==null?void 0:u.startsWith("image/")}return!1}catch(m){return typeof m=="object"&&typeof m.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(u=>{const v=new Image;v.onload=()=>{u(!0)},v.onerror=()=>{u(!1)},v.src=p})}}function vo(p,m){return p?p.endsWith("/")?p.slice(0,-1):p:m}function P6({uri:p,gatewayUrls:m}){const u=df.test(p);if(u)return{uri:p,isOnChain:!0,isEncoded:u};const v=vo(m==null?void 0:m.ipfs,"https://ipfs.io"),t=vo(m==null?void 0:m.arweave,"https://arweave.net"),l=p.match(uf),{protocol:B,subpath:M,target:U,subtarget:F=""}=(l==null?void 0:l.groups)||{},W=B==="ipns:/"||M==="ipns/",G=B==="ipfs:/"||M==="ipfs/"||cf.test(p);if(p.startsWith("http")&&!W&&!G){let D=p;return m!=null&&m.arweave&&(D=p.replace(/https:\/\/arweave.net/g,m==null?void 0:m.arweave)),{uri:D,isOnChain:!1,isEncoded:!1}}if((W||G)&&U)return{uri:`${v}/${W?"ipns":"ipfs"}/${U}${F}`,isOnChain:!1,isEncoded:!1};if(B==="ar:/"&&U)return{uri:`${t}/${U}${F||""}`,isOnChain:!1,isEncoded:!1};let q=p.replace(lf,"");if(q.startsWith("<svg")&&(q=`data:image/svg+xml;base64,${btoa(q)}`),q.startsWith("data:")||q.startsWith("{"))return{uri:q,isOnChain:!0,isEncoded:!1};throw new ri({uri:p})}function k6(p){if(typeof p!="object"||!("image"in p)&&!("image_url"in p)&&!("image_data"in p))throw new sf({data:p});return p.image||p.image_url||p.image_data}async function ff({gatewayUrls:p,uri:m}){try{const u=await fetch(m).then(t=>t.json());return await ai({gatewayUrls:p,uri:k6(u)})}catch{throw new ri({uri:m})}}async function ai({gatewayUrls:p,uri:m}){const{uri:u,isOnChain:v}=P6({uri:m,gatewayUrls:p});if(v||await pf(u))return u;throw new ri({uri:m})}function yf(p){let m=p;m.startsWith("did:nft:")&&(m=m.replace("did:nft:","").replace(/_/g,"/"));const[u,v,t]=m.split("/"),[l,B]=u.split(":"),[M,U]=v.split(":");if(!l||l.toLowerCase()!=="eip155")throw new kn({reason:"Only EIP-155 supported"});if(!B)throw new kn({reason:"Chain ID not found"});if(!U)throw new kn({reason:"Contract address not found"});if(!t)throw new kn({reason:"Token ID not found"});if(!M)throw new kn({reason:"ERC namespace not found"});return{chainID:Number.parseInt(B),namespace:M.toLowerCase(),contractAddress:U,tokenID:t}}async function mf(p,{nft:m}){if(m.namespace==="erc721")return It(p,{address:m.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(m.tokenID)]});if(m.namespace==="erc1155")return It(p,{address:m.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(m.tokenID)]});throw new of({namespace:m.namespace})}async function bf(p,{gatewayUrls:m,record:u}){return/eip155:/i.test(u)?hf(p,{gatewayUrls:m,record:u}):ai({uri:u,gatewayUrls:m})}async function hf(p,{gatewayUrls:m,record:u}){const v=yf(u),t=await mf(p,{nft:v}),{uri:l,isOnChain:B,isEncoded:M}=P6({uri:t,gatewayUrls:m});if(B&&(l.includes("data:application/json;base64,")||l.startsWith("{"))){const F=M?atob(l.replace("data:application/json;base64,","")):l,W=JSON.parse(F);return ai({uri:k6(W),gatewayUrls:m})}let U=v.tokenID;return v.namespace==="erc1155"&&(U=U.replace("0x","").padStart(64,"0")),ff({gatewayUrls:m,uri:l.replace(/(?:0x)?{id}/,U)})}async function C6(p,{blockNumber:m,blockTag:u,name:v,key:t,gatewayUrls:l,strict:B,universalResolverAddress:M}){let U=M;if(!U){if(!p.chain)throw new Error("client chain not configured. universalResolverAddress is required.");U=ln({blockNumber:m,chain:p.chain,contract:"ensUniversalResolver"})}try{const F={address:U,abi:y6,functionName:"resolve",args:[G0(ia(v)),vt({abi:bo,functionName:"text",args:[Mr(v),t]})],blockNumber:m,blockTag:u},W=L0(p,It,"readContract"),G=l?await W({...F,args:[...F.args,l]}):await W(F);if(G[0]==="0x")return null;const q=D2({abi:bo,functionName:"text",data:G[0]});return q===""?null:q}catch(F){if(B)throw F;if(ni(F,"resolve"))return null;throw F}}async function gf(p,{blockNumber:m,blockTag:u,assetGatewayUrls:v,name:t,gatewayUrls:l,strict:B,universalResolverAddress:M}){const U=await L0(p,C6,"getEnsText")({blockNumber:m,blockTag:u,key:"avatar",name:t,universalResolverAddress:M,gatewayUrls:l,strict:B});if(!U)return null;try{return await bf(p,{record:U,gatewayUrls:v})}catch{return null}}async function wf(p,{address:m,blockNumber:u,blockTag:v,gatewayUrls:t,strict:l,universalResolverAddress:B}){let M=B;if(!M){if(!p.chain)throw new Error("client chain not configured. universalResolverAddress is required.");M=ln({blockNumber:u,chain:p.chain,contract:"ensUniversalResolver"})}const U=`${m.toLowerCase().substring(2)}.addr.reverse`;try{const F={address:M,abi:Cp,functionName:"reverse",args:[G0(ia(U))],blockNumber:u,blockTag:v},W=L0(p,It,"readContract"),[G,q]=t?await W({...F,args:[...F.args,t]}):await W(F);return m.toLowerCase()!==q.toLowerCase()?null:G}catch(F){if(l)throw F;if(ni(F,"reverse"))return null;throw F}}async function Tf(p,{blockNumber:m,blockTag:u,name:v,universalResolverAddress:t}){let l=t;if(!l){if(!p.chain)throw new Error("client chain not configured. universalResolverAddress is required.");l=ln({blockNumber:m,chain:p.chain,contract:"ensUniversalResolver"})}const[B]=await L0(p,It,"readContract")({address:l,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[G0(ia(v))],blockNumber:m,blockTag:u});return B}async function B6(p,m){var J,a0,o0;const{account:u=p.account,blockNumber:v,blockTag:t="latest",blobs:l,data:B,gas:M,gasPrice:U,maxFeePerBlobGas:F,maxFeePerGas:W,maxPriorityFeePerGas:G,to:q,value:D,...n0}=m,Q=u?Me(u):void 0;try{L2(m);const p0=(v?H0(v):void 0)||t,v0=(o0=(a0=(J=p.chain)==null?void 0:J.formatters)==null?void 0:a0.transactionRequest)==null?void 0:o0.format,f0=(v0||dn)({..._r(n0,{format:v0}),from:Q==null?void 0:Q.address,blobs:l,data:B,gas:M,gasPrice:U,maxFeePerBlobGas:F,maxFeePerGas:W,maxPriorityFeePerGas:G,to:q,value:D}),w0=await p.request({method:"eth_createAccessList",params:[f0,p0]});return{accessList:w0.accessList,gasUsed:BigInt(w0.gasUsed)}}catch(c0){throw K4(c0,{...m,account:Q,chain:p.chain})}}async function vf(p){const m=ea(p,{method:"eth_newBlockFilter"}),u=await p.request({method:"eth_newBlockFilter"});return{id:u,request:m(u),type:"block"}}async function I6(p,{address:m,args:u,event:v,events:t,fromBlock:l,strict:B,toBlock:M}={}){const U=t??(v?[v]:void 0),F=ea(p,{method:"eth_newFilter"});let W=[];U&&(W=[U.flatMap(D=>sr({abi:[D],eventName:D.name,args:u}))],v&&(W=W[0]));const G=await p.request({method:"eth_newFilter",params:[{address:m,fromBlock:typeof l=="bigint"?H0(l):l,toBlock:typeof M=="bigint"?H0(M):M,...W.length?{topics:W}:{}}]});return{abi:U,args:u,eventName:v?v.name:void 0,fromBlock:l,id:G,request:F(G),strict:!!B,toBlock:M,type:"event"}}async function S6(p){const m=ea(p,{method:"eth_newPendingTransactionFilter"}),u=await p.request({method:"eth_newPendingTransactionFilter"});return{id:u,request:m(u),type:"transaction"}}async function Af(p){const m=await p.request({method:"eth_blobBaseFee"});return BigInt(m)}async function xf(p,{blockHash:m,blockNumber:u,blockTag:v="latest"}={}){const t=u!==void 0?H0(u):void 0;let l;return m?l=await p.request({method:"eth_getBlockTransactionCountByHash",params:[m]},{dedupe:!0}):l=await p.request({method:"eth_getBlockTransactionCountByNumber",params:[t||v]},{dedupe:!!t}),Ct(l)}function Ef(p){var m;return{baseFeePerGas:p.baseFeePerGas.map(u=>BigInt(u)),gasUsedRatio:p.gasUsedRatio,oldestBlock:BigInt(p.oldestBlock),reward:(m=p.reward)==null?void 0:m.map(u=>u.map(v=>BigInt(v)))}}async function Pf(p,{blockCount:m,blockNumber:u,blockTag:v="latest",rewardPercentiles:t}){const l=u?H0(u):void 0,B=await p.request({method:"eth_feeHistory",params:[H0(m),l||v,t]},{dedupe:!!l});return Ef(B)}async function kf(p,{filter:m}){const u=m.strict??!1,t=(await m.request({method:"eth_getFilterLogs",params:[m.id]})).map(l=>Wt(l));return m.abi?Js({abi:m.abi,logs:t,strict:u}):t}class Cf extends m0{constructor({domain:m}){super(`Invalid domain "${Ae(m)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class Bf extends m0{constructor({primaryType:m,types:u}){super(`Invalid primary type \`${m}\` must be one of \`${JSON.stringify(Object.keys(u))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class If extends m0{constructor({type:m}){super(`Struct type "${m}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function Sf(p){const{domain:m={},message:u,primaryType:v}=p,t={EIP712Domain:L6({domain:m}),...p.types};O6({domain:m,message:u,primaryType:v,types:t});const l=["0x1901"];return m&&l.push(Mf({domain:m,types:t})),v!=="EIP712Domain"&&l.push(M6({data:u,primaryType:v,types:t})),Pe(Bt(l))}function Mf({domain:p,types:m}){return M6({data:p,primaryType:"EIP712Domain",types:m})}function M6({data:p,primaryType:m,types:u}){const v=R6({data:p,primaryType:m,types:u});return Pe(v)}function R6({data:p,primaryType:m,types:u}){const v=[{type:"bytes32"}],t=[Rf({primaryType:m,types:u})];for(const l of u[m]){const[B,M]=U6({types:u,name:l.name,type:l.type,value:p[l.name]});v.push(B),t.push(M)}return O2(v,t)}function Rf({primaryType:p,types:m}){const u=G0(Nf({primaryType:p,types:m}));return Pe(u)}function Nf({primaryType:p,types:m}){let u="";const v=N6({primaryType:p,types:m});v.delete(p);const t=[p,...Array.from(v).sort()];for(const l of t)u+=`${l}(${m[l].map(({name:B,type:M})=>`${M} ${B}`).join(",")})`;return u}function N6({primaryType:p,types:m},u=new Set){const v=p.match(/^\w*/u),t=v==null?void 0:v[0];if(u.has(t)||m[t]===void 0)return u;u.add(t);for(const l of m[t])N6({primaryType:l.type,types:m},u);return u}function U6({types:p,name:m,type:u,value:v}){if(p[u]!==void 0)return[{type:"bytes32"},Pe(R6({data:v,primaryType:u,types:p}))];if(u==="bytes")return v=`0x${(v.length%2?"0":"")+v.slice(2)}`,[{type:"bytes32"},Pe(v)];if(u==="string")return[{type:"bytes32"},Pe(G0(v))];if(u.lastIndexOf("]")===u.length-1){const t=u.slice(0,u.lastIndexOf("[")),l=v.map(B=>U6({name:m,type:t,types:p,value:B}));return[{type:"bytes32"},Pe(O2(l.map(([B])=>B),l.map(([,B])=>B)))]}return[{type:u},v]}function Uf(p){const{domain:m,message:u,primaryType:v,types:t}=p,l=(U,F)=>{const W={...F};for(const G of U){const{name:q,type:D}=G;D==="address"&&(W[q]=W[q].toLowerCase())}return W},B=t.EIP712Domain?m?l(t.EIP712Domain,m):{}:{},M=(()=>{if(v!=="EIP712Domain")return l(t[v],u)})();return Ae({domain:B,message:M,primaryType:v,types:t})}function O6(p){const{domain:m,message:u,primaryType:v,types:t}=p,l=(B,M)=>{for(const U of B){const{name:F,type:W}=U,G=M[F],q=W.match(q4);if(q&&(typeof G=="number"||typeof G=="bigint")){const[Q,J,a0]=q;H0(G,{signed:J==="int",size:Number.parseInt(a0)/8})}if(W==="address"&&typeof G=="string"&&!Ce(G))throw new Fe({address:G});const D=W.match(c5);if(D){const[Q,J]=D;if(J&&le(G)!==Number.parseInt(J))throw new ll({expectedSize:Number.parseInt(J),givenSize:le(G)})}const n0=t[W];n0&&(Of(W),l(n0,G))}};if(t.EIP712Domain&&m){if(typeof m!="object")throw new Cf({domain:m});l(t.EIP712Domain,m)}if(v!=="EIP712Domain")if(t[v])l(t[v],u);else throw new Bf({primaryType:v,types:t})}function L6({domain:p}){return[typeof(p==null?void 0:p.name)=="string"&&{name:"name",type:"string"},(p==null?void 0:p.version)&&{name:"version",type:"string"},(typeof(p==null?void 0:p.chainId)=="number"||typeof(p==null?void 0:p.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(p==null?void 0:p.verifyingContract)&&{name:"verifyingContract",type:"address"},(p==null?void 0:p.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Of(p){if(p==="address"||p==="bool"||p==="string"||p.startsWith("bytes")||p.startsWith("uint")||p.startsWith("int"))throw new If({type:p})}const Lf=`Ethereum Signed Message:
39
+ `;function Df(p){const m=typeof p=="string"?Q2(p):typeof p.raw=="string"?p.raw:we(p.raw),u=Q2(`${Lf}${le(m)}`);return Bt([u,m])}function D6(p,m){return Pe(Df(p),m)}const F6="0x6492649264926492649264926492649264926492649264926492649264926492";function Ff(p){return A4(p,-32)===F6}function zf(p){const{address:m,data:u,signature:v,to:t="hex"}=p,l=Rt([O2([{type:"address"},{type:"bytes"},{type:"bytes"}],[m,u,v]),F6]);return t==="hex"?l:gt(l)}function Hf(p){return p.map(m=>({...m,value:BigInt(m.value)}))}function Vf(p){return{...p,balance:p.balance?BigInt(p.balance):void 0,nonce:p.nonce?Ct(p.nonce):void 0,storageProof:p.storageProof?Hf(p.storageProof):void 0}}async function jf(p,{address:m,blockNumber:u,blockTag:v,storageKeys:t}){const l=v??"latest",B=u!==void 0?H0(u):void 0,M=await p.request({method:"eth_getProof",params:[m,t,B||l]});return Vf(M)}async function qf(p,{address:m,blockNumber:u,blockTag:v="latest",slot:t}){const l=u!==void 0?H0(u):void 0;return await p.request({method:"eth_getStorageAt",params:[m,t,l||v]})}async function si(p,{blockHash:m,blockNumber:u,blockTag:v,hash:t,index:l}){var W,G,q;const B=v||"latest",M=u!==void 0?H0(u):void 0;let U=null;if(t?U=await p.request({method:"eth_getTransactionByHash",params:[t]},{dedupe:!0}):m?U=await p.request({method:"eth_getTransactionByBlockHashAndIndex",params:[m,H0(l)]},{dedupe:!0}):U=await p.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[M||B,H0(l)]},{dedupe:!!M}),!U)throw new n4({blockHash:m,blockNumber:u,blockTag:B,hash:t,index:l});return(((q=(G=(W=p.chain)==null?void 0:W.formatters)==null?void 0:G.transaction)==null?void 0:q.format)||zr)(U)}async function Gf(p,{hash:m,transactionReceipt:u}){const[v,t]=await Promise.all([L0(p,cr,"getBlockNumber")({}),m?L0(p,si,"getTransaction")({hash:m}):void 0]),l=(u==null?void 0:u.blockNumber)||(t==null?void 0:t.blockNumber);return l?v-l+1n:0n}async function is(p,{hash:m}){var t,l,B;const u=await p.request({method:"eth_getTransactionReceipt",params:[m]},{dedupe:!0});if(!u)throw new r4({hash:m});return(((B=(l=(t=p.chain)==null?void 0:t.formatters)==null?void 0:l.transactionReceipt)==null?void 0:B.format)||Jo)(u)}async function Wf(p,m){var J;const{allowFailure:u=!0,batchSize:v,blockNumber:t,blockTag:l,multicallAddress:B,stateOverride:M}=m,U=m.contracts,F=v??(typeof((J=p.batch)==null?void 0:J.multicall)=="object"&&p.batch.multicall.batchSize||1024);let W=B;if(!W){if(!p.chain)throw new Error("client chain not configured. multicallAddress is required.");W=ln({blockNumber:t,chain:p.chain,contract:"multicall3"})}const G=[[]];let q=0,D=0;for(let a0=0;a0<U.length;a0++){const{abi:o0,address:c0,args:p0,functionName:v0}=U[a0];try{const h0=vt({abi:o0,args:p0,functionName:v0});D+=(h0.length-2)/2,F>0&&D>F&&G[q].length>0&&(q++,D=(h0.length-2)/2,G[q]=[]),G[q]=[...G[q],{allowFailure:!0,callData:h0,target:c0}]}catch(h0){const f0=M2(h0,{abi:o0,address:c0,args:p0,docsPath:"/docs/contract/multicall",functionName:v0});if(!u)throw f0;G[q]=[...G[q],{allowFailure:!0,callData:"0x",target:c0}]}}const n0=await Promise.allSettled(G.map(a0=>L0(p,It,"readContract")({abi:ns,address:W,args:[a0],blockNumber:t,blockTag:l,functionName:"aggregate3",stateOverride:M}))),Q=[];for(let a0=0;a0<n0.length;a0++){const o0=n0[a0];if(o0.status==="rejected"){if(!u)throw o0.reason;for(let p0=0;p0<G[a0].length;p0++)Q.push({status:"failure",error:o0.reason,result:void 0});continue}const c0=o0.value;for(let p0=0;p0<c0.length;p0++){const{returnData:v0,success:h0}=c0[p0],{callData:f0}=G[a0][p0],{abi:w0,address:i0,functionName:F0,args:S0}=U[Q.length];try{if(f0==="0x")throw new rr;if(!h0)throw new Qr({data:v0});const N0=D2({abi:w0,args:S0,data:v0,functionName:F0});Q.push(u?{result:N0,status:"success"}:N0)}catch(N0){const W0=M2(N0,{abi:w0,address:i0,args:S0,docsPath:"/docs/contract/multicall",functionName:F0});if(!u)throw W0;Q.push({error:W0,result:void 0,status:"failure"})}}}if(Q.length!==U.length)throw new m0("multicall results mismatch");return Q}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const oa=BigInt(0),ua=BigInt(1),Zf=BigInt(2);function R2(p){return p instanceof Uint8Array||ArrayBuffer.isView(p)&&p.constructor.name==="Uint8Array"}function lr(p){if(!R2(p))throw new Error("Uint8Array expected")}function en(p,m){if(typeof m!="boolean")throw new Error(p+" boolean expected, got "+m)}const Yf=Array.from({length:256},(p,m)=>m.toString(16).padStart(2,"0"));function tn(p){lr(p);let m="";for(let u=0;u<p.length;u++)m+=Yf[p[u]];return m}function q2(p){const m=p.toString(16);return m.length&1?"0"+m:m}function ii(p){if(typeof p!="string")throw new Error("hex string expected, got "+typeof p);return p===""?oa:BigInt("0x"+p)}const zt={_0:48,_9:57,A:65,F:70,a:97,f:102};function Ao(p){if(p>=zt._0&&p<=zt._9)return p-zt._0;if(p>=zt.A&&p<=zt.F)return p-(zt.A-10);if(p>=zt.a&&p<=zt.f)return p-(zt.a-10)}function nn(p){if(typeof p!="string")throw new Error("hex string expected, got "+typeof p);const m=p.length,u=m/2;if(m%2)throw new Error("hex string expected, got unpadded hex of length "+m);const v=new Uint8Array(u);for(let t=0,l=0;t<u;t++,l+=2){const B=Ao(p.charCodeAt(l)),M=Ao(p.charCodeAt(l+1));if(B===void 0||M===void 0){const U=p[l]+p[l+1];throw new Error('hex string expected, got non-hex character "'+U+'" at index '+l)}v[t]=B*16+M}return v}function x2(p){return ii(tn(p))}function oi(p){return lr(p),ii(tn(Uint8Array.from(p).reverse()))}function rn(p,m){return nn(p.toString(16).padStart(m*2,"0"))}function ui(p,m){return rn(p,m).reverse()}function Kf(p){return nn(q2(p))}function yt(p,m,u){let v;if(typeof m=="string")try{v=nn(m)}catch(l){throw new Error(p+" must be hex string or Uint8Array, cause: "+l)}else if(R2(m))v=Uint8Array.from(m);else throw new Error(p+" must be hex string or Uint8Array");const t=v.length;if(typeof u=="number"&&t!==u)throw new Error(p+" of length "+u+" expected, got "+t);return v}function Kn(...p){let m=0;for(let v=0;v<p.length;v++){const t=p[v];lr(t),m+=t.length}const u=new Uint8Array(m);for(let v=0,t=0;v<p.length;v++){const l=p[v];u.set(l,t),t+=l.length}return u}function Xf(p,m){if(p.length!==m.length)return!1;let u=0;for(let v=0;v<p.length;v++)u|=p[v]^m[v];return u===0}function Qf(p){if(typeof p!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(p))}const Sa=p=>typeof p=="bigint"&&oa<=p;function ca(p,m,u){return Sa(p)&&Sa(m)&&Sa(u)&&m<=p&&p<u}function E2(p,m,u,v){if(!ca(m,u,v))throw new Error("expected valid "+p+": "+u+" <= n < "+v+", got "+m)}function z6(p){let m;for(m=0;p>oa;p>>=ua,m+=1);return m}function Jf(p,m){return p>>BigInt(m)&ua}function _f(p,m,u){return p|(u?ua:oa)<<BigInt(m)}const ci=p=>(Zf<<BigInt(p-1))-ua,Ma=p=>new Uint8Array(p),xo=p=>Uint8Array.from(p);function H6(p,m,u){if(typeof p!="number"||p<2)throw new Error("hashLen must be a number");if(typeof m!="number"||m<2)throw new Error("qByteLen must be a number");if(typeof u!="function")throw new Error("hmacFn must be a function");let v=Ma(p),t=Ma(p),l=0;const B=()=>{v.fill(1),t.fill(0),l=0},M=(...G)=>u(t,v,...G),U=(G=Ma())=>{t=M(xo([0]),G),v=M(),G.length!==0&&(t=M(xo([1]),G),v=M())},F=()=>{if(l++>=1e3)throw new Error("drbg: tried 1000 values");let G=0;const q=[];for(;G<m;){v=M();const D=v.slice();q.push(D),G+=v.length}return Kn(...q)};return(G,q)=>{B(),U(G);let D;for(;!(D=q(F()));)U();return B(),D}}const $f={bigint:p=>typeof p=="bigint",function:p=>typeof p=="function",boolean:p=>typeof p=="boolean",string:p=>typeof p=="string",stringOrUint8Array:p=>typeof p=="string"||R2(p),isSafeInteger:p=>Number.isSafeInteger(p),array:p=>Array.isArray(p),field:(p,m)=>m.Fp.isValid(p),hash:p=>typeof p=="function"&&Number.isSafeInteger(p.outputLen)};function pr(p,m,u={}){const v=(t,l,B)=>{const M=$f[l];if(typeof M!="function")throw new Error("invalid validator function");const U=p[t];if(!(B&&U===void 0)&&!M(U,p))throw new Error("param "+String(t)+" is invalid. Expected "+l+", got "+U)};for(const[t,l]of Object.entries(m))v(t,l,!1);for(const[t,l]of Object.entries(u))v(t,l,!0);return p}const ey=()=>{throw new Error("not implemented")};function os(p){const m=new WeakMap;return(u,...v)=>{const t=m.get(u);if(t!==void 0)return t;const l=p(u,...v);return m.set(u,l),l}}const ty=Object.freeze(Object.defineProperty({__proto__:null,aInRange:E2,abool:en,abytes:lr,bitGet:Jf,bitLen:z6,bitMask:ci,bitSet:_f,bytesToHex:tn,bytesToNumberBE:x2,bytesToNumberLE:oi,concatBytes:Kn,createHmacDrbg:H6,ensureBytes:yt,equalBytes:Xf,hexToBytes:nn,hexToNumber:ii,inRange:ca,isBytes:R2,memoized:os,notImplemented:ey,numberToBytesBE:rn,numberToBytesLE:ui,numberToHexUnpadded:q2,numberToVarBytesBE:Kf,utf8ToBytes:Qf,validateObject:pr},Symbol.toStringTag,{value:"Module"})),ny="0.1.1";function ry(){return ny}class ue extends Error{constructor(m,u={}){const v=(()=>{var U;if(u.cause instanceof ue){if(u.cause.details)return u.cause.details;if(u.cause.shortMessage)return u.cause.shortMessage}return(U=u.cause)!=null&&U.message?u.cause.message:u.details})(),t=u.cause instanceof ue&&u.cause.docsPath||u.docsPath,B=`https://oxlib.sh${t??""}`,M=[m||"An error occurred.",...u.metaMessages?["",...u.metaMessages]:[],...v||t?["",v?`Details: ${v}`:void 0,t?`See: ${B}`:void 0]:[]].filter(U=>typeof U=="string").join(`
40
+ `);super(M,u.cause?{cause:u.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${ry()}`}),this.cause=u.cause,this.details=v,this.docs=B,this.docsPath=t,this.shortMessage=m}walk(m){return V6(this,m)}}function V6(p,m){return m!=null&&m(p)?p:p&&typeof p=="object"&&"cause"in p&&p.cause?V6(p.cause,m):m?null:p}const ay="#__bigint";function sy(p,m,u){return JSON.stringify(p,(v,t)=>typeof t=="bigint"?t.toString()+ay:t,u)}function iy(p,m){if(Po(p)>m)throw new by({givenSize:Po(p),maxSize:m})}const Ht={zero:48,nine:57,A:65,F:70,a:97,f:102};function Eo(p){if(p>=Ht.zero&&p<=Ht.nine)return p-Ht.zero;if(p>=Ht.A&&p<=Ht.F)return p-(Ht.A-10);if(p>=Ht.a&&p<=Ht.f)return p-(Ht.a-10)}function oy(p,m={}){const{dir:u,size:v=32}=m;if(v===0)return p;if(p.length>v)throw new hy({size:p.length,targetSize:v,type:"Bytes"});const t=new Uint8Array(v);for(let l=0;l<v;l++){const B=u==="right";t[B?l:v-l-1]=p[B?l:p.length-l-1]}return t}function di(p,m){if(it(p)>m)throw new Ay({givenSize:it(p),maxSize:m})}function uy(p,m){if(typeof m=="number"&&m>0&&m>it(p)-1)throw new Z6({offset:m,position:"start",size:it(p)})}function cy(p,m,u){if(typeof m=="number"&&typeof u=="number"&&it(p)!==u-m)throw new Z6({offset:u,position:"end",size:it(p)})}function j6(p,m={}){const{dir:u,size:v=32}=m;if(v===0)return p;const t=p.replace("0x","");if(t.length>v*2)throw new xy({size:Math.ceil(t.length/2),targetSize:v,type:"Hex"});return`0x${t[u==="right"?"padEnd":"padStart"](v*2,"0")}`}const dy=new TextEncoder;function ly(p){return p instanceof Uint8Array?p:typeof p=="string"?fy(p):py(p)}function py(p){return p instanceof Uint8Array?p:new Uint8Array(p)}function fy(p,m={}){const{size:u}=m;let v=p;u&&(di(p,u),v=U2(p,u));let t=v.slice(2);t.length%2&&(t=`0${t}`);const l=t.length/2,B=new Uint8Array(l);for(let M=0,U=0;M<l;M++){const F=Eo(t.charCodeAt(U++)),W=Eo(t.charCodeAt(U++));if(F===void 0||W===void 0)throw new ue(`Invalid byte sequence ("${t[U-2]}${t[U-1]}" in "${t}").`);B[M]=F*16+W}return B}function yy(p,m={}){const{size:u}=m,v=dy.encode(p);return typeof u=="number"?(iy(v,u),my(v,u)):v}function my(p,m){return oy(p,{dir:"right",size:m})}function Po(p){return p.length}let by=class extends ue{constructor({givenSize:m,maxSize:u}){super(`Size cannot exceed \`${u}\` bytes. Given size: \`${m}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},hy=class extends ue{constructor({size:m,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} size (\`${m}\`) exceeds padding size (\`${u}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const gy=new TextEncoder,wy=Array.from({length:256},(p,m)=>m.toString(16).padStart(2,"0"));function Ty(p,m={}){const{strict:u=!1}=m;if(!p)throw new ko(p);if(typeof p!="string")throw new ko(p);if(u&&!/^0x[0-9a-fA-F]*$/.test(p))throw new Co(p);if(!p.startsWith("0x"))throw new Co(p)}function St(...p){return`0x${p.reduce((m,u)=>m+u.replace("0x",""),"")}`}function q6(p,m={}){const u=`0x${Number(p)}`;return typeof m.size=="number"?(di(u,m.size),N2(u,m.size)):u}function G6(p,m={}){let u="";for(let t=0;t<p.length;t++)u+=wy[p[t]];const v=`0x${u}`;return typeof m.size=="number"?(di(v,m.size),U2(v,m.size)):v}function Le(p,m={}){const{signed:u,size:v}=m,t=BigInt(p);let l;v?u?l=(1n<<BigInt(v)*8n-1n)-1n:l=2n**(BigInt(v)*8n)-1n:typeof p=="number"&&(l=BigInt(Number.MAX_SAFE_INTEGER));const B=typeof l=="bigint"&&u?-l-1n:0;if(l&&t>l||t<B){const F=typeof p=="bigint"?"n":"";throw new W6({max:l?`${l}${F}`:void 0,min:`${B}${F}`,signed:u,size:v,value:`${p}${F}`})}const U=`0x${(u&&t<0?(1n<<BigInt(v*8))+BigInt(t):t).toString(16)}`;return v?N2(U,v):U}function li(p,m={}){return G6(gy.encode(p),m)}function N2(p,m){return j6(p,{dir:"left",size:m})}function U2(p,m){return j6(p,{dir:"right",size:m})}function pi(p,m,u,v={}){const{strict:t}=v;uy(p,m);const l=`0x${p.replace("0x","").slice((m??0)*2,(u??p.length)*2)}`;return t&&cy(l,m,u),l}function it(p){return Math.ceil((p.length-2)/2)}function vy(p,m={}){const{strict:u=!1}=m;try{return Ty(p,{strict:u}),!0}catch{return!1}}class W6 extends ue{constructor({max:m,min:u,signed:v,size:t,value:l}){super(`Number \`${l}\` is not in safe${t?` ${t*8}-bit`:""}${v?" signed":" unsigned"} integer range ${m?`(\`${u}\` to \`${m}\`)`:`(above \`${u}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class ko extends ue{constructor(m){super(`Value \`${typeof m=="object"?sy(m):m}\` of type \`${typeof m}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class Co extends ue{constructor(m){super(`Value \`${m}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class Ay extends ue{constructor({givenSize:m,maxSize:u}){super(`Size cannot exceed \`${u}\` bytes. Given size: \`${m}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Z6 extends ue{constructor({offset:m,position:u,size:v}){super(`Slice ${u==="start"?"starting":"ending"} at offset \`${m}\` is out-of-bounds (size: \`${v}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class xy extends ue{constructor({size:m,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} size (\`${m}\`) exceeds padding size (\`${u}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function Ey(p){return{address:p.address,amount:Le(p.amount),index:Le(p.index),validatorIndex:Le(p.validatorIndex)}}function Py(p){return{...typeof p.baseFeePerGas=="bigint"&&{baseFeePerGas:Le(p.baseFeePerGas)},...typeof p.blobBaseFee=="bigint"&&{blobBaseFee:Le(p.blobBaseFee)},...typeof p.feeRecipient=="string"&&{feeRecipient:p.feeRecipient},...typeof p.gasLimit=="bigint"&&{gasLimit:Le(p.gasLimit)},...typeof p.number=="bigint"&&{number:Le(p.number)},...typeof p.prevRandao=="bigint"&&{prevRandao:Le(p.prevRandao)},...typeof p.time=="bigint"&&{time:Le(p.time)},...p.withdrawals&&{withdrawals:p.withdrawals.map(Ey)}}}async function us(p,m){const{blockNumber:u,blockTag:v="latest",blocks:t,returnFullTransactions:l,traceTransfers:B,validation:M}=m;try{const U=[];for(const q of t){const D=q.blockOverrides?Py(q.blockOverrides):void 0,n0=q.calls.map(J=>{const a0=J,o0=a0.account?Me(a0.account):void 0,c0={...a0,data:a0.abi?vt(a0):a0.data,from:a0.from??(o0==null?void 0:o0.address)};return L2(c0),dn(c0)}),Q=q.stateOverrides?Zs(q.stateOverrides):void 0;U.push({blockOverrides:D,calls:n0,stateOverrides:Q})}const W=(u?H0(u):void 0)||v;return(await p.request({method:"eth_simulateV1",params:[{blockStateCalls:U,returnFullTransactions:l,traceTransfers:B,validation:M},W]})).map((q,D)=>({...Bs(q),calls:q.calls.map((n0,Q)=>{var F0,S0;const{abi:J,args:a0,functionName:o0,to:c0}=t[D].calls[Q],p0=((F0=n0.error)==null?void 0:F0.data)??n0.returnData,v0=BigInt(n0.gasUsed),h0=(S0=n0.logs)==null?void 0:S0.map(N0=>Wt(N0)),f0=n0.status==="0x1"?"success":"failure",w0=J&&f0==="success"&&p0!=="0x"?D2({abi:J,data:p0,functionName:o0}):null,i0=(()=>{var W0;if(f0==="success")return;let N0;if(((W0=n0.error)==null?void 0:W0.data)==="0x"?N0=new rr:n0.error&&(N0=new Qr(n0.error)),!!N0)return M2(N0,{abi:J??[],address:c0,args:a0,functionName:o0??"<unknown>"})})();return{data:p0,gasUsed:v0,logs:h0,status:f0,...f0==="success"?{result:w0}:{error:i0}}})}))}catch(U){const F=U,W=Jr(F,{});throw W instanceof $n?F:W}}function Y6(p,m={}){const{as:u=typeof p=="string"?"Hex":"Bytes"}=m,v=h4(ly(p));return u==="Bytes"?v:G6(v)}class ky extends Map{constructor(m){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=m}get(m){const u=super.get(m);return super.has(m)&&u!==void 0&&(this.delete(m),super.set(m,u)),u}set(m,u){if(super.set(m,u),this.maxSize&&this.size>this.maxSize){const v=this.keys().next().value;v&&this.delete(v)}return this}}const Cy={checksum:new ky(8192)},Ra=Cy.checksum,By=/^0x[a-fA-F0-9]{40}$/;function da(p,m={}){const{strict:u=!0}=m;if(!By.test(p))throw new Bo({address:p,cause:new Sy});if(u){if(p.toLowerCase()===p)return;if(Iy(p)!==p)throw new Bo({address:p,cause:new My})}}function Iy(p){if(Ra.has(p))return Ra.get(p);da(p,{strict:!1});const m=p.substring(2).toLowerCase(),u=Y6(yy(m),{as:"Bytes"}),v=m.split("");for(let l=0;l<40;l+=2)u[l>>1]>>4>=8&&v[l]&&(v[l]=v[l].toUpperCase()),(u[l>>1]&15)>=8&&v[l+1]&&(v[l+1]=v[l+1].toUpperCase());const t=`0x${v.join("")}`;return Ra.set(p,t),t}function cs(p,m={}){const{strict:u=!0}=m??{};try{return da(p,{strict:u}),!0}catch{return!1}}class Bo extends ue{constructor({address:m,cause:u}){super(`Address "${m}" is invalid.`,{cause:u}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Sy extends ue{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class My extends ue{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function ds(p){let m=!0,u="",v=0,t="",l=!1;for(let B=0;B<p.length;B++){const M=p[B];if(["(",")",","].includes(M)&&(m=!0),M==="("&&v++,M===")"&&v--,!!m){if(v===0){if(M===" "&&["event","function","error",""].includes(t))t="";else if(t+=M,M===")"){l=!0;break}continue}if(M===" "){p[B-1]!==","&&u!==","&&u!==",("&&(u="",m=!1);continue}t+=M,u+=M}}if(!l)throw new ue("Unable to normalize signature.");return t}function ls(p,m){const u=typeof p,v=m.type;switch(v){case"address":return cs(p,{strict:!1});case"bool":return u==="boolean";case"function":return u==="string";case"string":return u==="string";default:return v==="tuple"&&"components"in m?Object.values(m.components).every((t,l)=>ls(Object.values(p)[l],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(v)?u==="number"||u==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(v)?u==="string"||p instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(v)?Array.isArray(p)&&p.every(t=>ls(t,{...m,type:v.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function K6(p,m,u){for(const v in p){const t=p[v],l=m[v];if(t.type==="tuple"&&l.type==="tuple"&&"components"in t&&"components"in l)return K6(t.components,l.components,u[v]);const B=[t.type,l.type];if(B.includes("address")&&B.includes("bytes20")?!0:B.includes("address")&&B.includes("string")?cs(u[v],{strict:!1}):B.includes("address")&&B.includes("bytes")?cs(u[v],{strict:!1}):!1)return B}}function X6(p,m={}){const{prepare:u=!0}=m,v=Array.isArray(p)||typeof p=="string"?ao(p):p;return{...v,...u?{hash:G2(v)}:{}}}function Ry(p,m,u){const{args:v=[],prepare:t=!0}=u??{},l=vy(m,{strict:!1}),B=p.filter(F=>l?F.type==="function"||F.type==="error"?Q6(F)===pi(m,0,4):F.type==="event"?G2(F)===m:!1:"name"in F&&F.name===m);if(B.length===0)throw new ps({name:m});if(B.length===1)return{...B[0],...t?{hash:G2(B[0])}:{}};let M;for(const F of B){if(!("inputs"in F))continue;if(!v||v.length===0){if(!F.inputs||F.inputs.length===0)return{...F,...t?{hash:G2(F)}:{}};continue}if(!F.inputs||F.inputs.length===0||F.inputs.length!==v.length)continue;if(v.every((G,q)=>{const D="inputs"in F&&F.inputs[q];return D?ls(G,D):!1})){if(M&&"inputs"in M&&M.inputs){const G=K6(F.inputs,M.inputs,v);if(G)throw new Uy({abiItem:F,type:G[0]},{abiItem:M,type:G[1]})}M=F}}const U=(()=>{if(M)return M;const[F,...W]=B;return{...F,overloads:W}})();if(!U)throw new ps({name:m});return{...U,...t?{hash:G2(U)}:{}}}function Q6(p){return pi(G2(p),0,4)}function Ny(p){const m=typeof p=="string"?p:Lr(p);return ds(m)}function G2(p){return typeof p!="string"&&"hash"in p&&p.hash?p.hash:Y6(li(Ny(p)))}class Uy extends ue{constructor(m,u){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${m.type}\` in \`${ds(Lr(m.abiItem))}\`, and`,`\`${u.type}\` in \`${ds(Lr(u.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class ps extends ue{constructor({name:m,data:u,type:v="item"}){const t=m?` with name "${m}"`:u?` with data "${u}"`:"";super(`ABI ${v}${t} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}const Oy=/^(.*)\[([0-9]*)\]$/,Ly=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,J6=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function Dy({checksumAddress:p,parameters:m,values:u}){const v=[];for(let t=0;t<m.length;t++)v.push(fi({checksumAddress:p,parameter:m[t],value:u[t]}));return v}function fi({checksumAddress:p=!1,parameter:m,value:u}){const v=m,t=Wy(v.type);if(t){const[l,B]=t;return zy(u,{checksumAddress:p,length:l,parameter:{...v,type:B}})}if(v.type==="tuple")return Gy(u,{checksumAddress:p,parameter:v});if(v.type==="address")return Fy(u,{checksum:p});if(v.type==="bool")return Vy(u);if(v.type.startsWith("uint")||v.type.startsWith("int")){const l=v.type.startsWith("int"),[,,B="256"]=J6.exec(v.type)??[];return jy(u,{signed:l,size:Number(B)})}if(v.type.startsWith("bytes"))return Hy(u,{type:v.type});if(v.type==="string")return qy(u);throw new tu(v.type)}function yi(p){let m=0;for(let l=0;l<p.length;l++){const{dynamic:B,encoded:M}=p[l];B?m+=32:m+=it(M)}const u=[],v=[];let t=0;for(let l=0;l<p.length;l++){const{dynamic:B,encoded:M}=p[l];B?(u.push(Le(m+t,{size:32})),v.push(M),t+=it(M)):u.push(M)}return St(...u,...v)}function Fy(p,m){const{checksum:u=!1}=m;return da(p,{strict:u}),{dynamic:!1,encoded:N2(p.toLowerCase())}}function zy(p,m){const{checksumAddress:u,length:v,parameter:t}=m,l=v===null;if(!Array.isArray(p))throw new Yy(p);if(!l&&p.length!==v)throw new Zy({expectedLength:v,givenLength:p.length,type:`${t.type}[${v}]`});let B=!1;const M=[];for(let U=0;U<p.length;U++){const F=fi({checksumAddress:u,parameter:t,value:p[U]});F.dynamic&&(B=!0),M.push(F)}if(l||B){const U=yi(M);if(l){const F=Le(M.length,{size:32});return{dynamic:!0,encoded:M.length>0?St(F,U):F}}if(B)return{dynamic:!0,encoded:U}}return{dynamic:!1,encoded:St(...M.map(({encoded:U})=>U))}}function Hy(p,{type:m}){const[,u]=m.split("bytes"),v=it(p);if(!u){let t=p;return v%32!==0&&(t=U2(t,Math.ceil((p.length-2)/2/32)*32)),{dynamic:!0,encoded:St(N2(Le(v,{size:32})),t)}}if(v!==Number.parseInt(u))throw new $6({expectedSize:Number.parseInt(u),value:p});return{dynamic:!1,encoded:U2(p)}}function Vy(p){if(typeof p!="boolean")throw new ue(`Invalid boolean value: "${p}" (type: ${typeof p}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:N2(q6(p))}}function jy(p,{signed:m,size:u}){if(typeof u=="number"){const v=2n**(BigInt(u)-(m?1n:0n))-1n,t=m?-v-1n:0n;if(p>v||p<t)throw new W6({max:v.toString(),min:t.toString(),signed:m,size:u/8,value:p.toString()})}return{dynamic:!1,encoded:Le(p,{size:32,signed:m})}}function qy(p){const m=li(p),u=Math.ceil(it(m)/32),v=[];for(let t=0;t<u;t++)v.push(U2(pi(m,t*32,(t+1)*32)));return{dynamic:!0,encoded:St(U2(Le(it(m),{size:32})),...v)}}function Gy(p,m){const{checksumAddress:u,parameter:v}=m;let t=!1;const l=[];for(let B=0;B<v.components.length;B++){const M=v.components[B],U=Array.isArray(p)?B:M.name,F=fi({checksumAddress:u,parameter:M,value:p[U]});l.push(F),F.dynamic&&(t=!0)}return{dynamic:t,encoded:t?yi(l):St(...l.map(({encoded:B})=>B))}}function Wy(p){const m=p.match(/^(.*)\[(\d+)?\]$/);return m?[m[2]?Number(m[2]):null,m[1]]:void 0}function _6(p,m,u){const{checksumAddress:v=!1}={};if(p.length!==m.length)throw new eu({expectedLength:p.length,givenLength:m.length});const t=Dy({checksumAddress:v,parameters:p,values:m}),l=yi(t);return l.length===0?"0x":l}function fs(p,m){if(p.length!==m.length)throw new eu({expectedLength:p.length,givenLength:m.length});const u=[];for(let v=0;v<p.length;v++){const t=p[v],l=m[v];u.push(fs.encode(t,l))}return St(...u)}(function(p){function m(u,v,t=!1){if(u==="address"){const U=v;return da(U),N2(U.toLowerCase(),t?32:0)}if(u==="string")return li(v);if(u==="bytes")return v;if(u==="bool")return N2(q6(v),t?32:1);const l=u.match(J6);if(l){const[U,F,W="256"]=l,G=Number.parseInt(W)/8;return Le(v,{size:t?32:G,signed:F==="int"})}const B=u.match(Ly);if(B){const[U,F]=B;if(Number.parseInt(F)!==(v.length-2)/2)throw new $6({expectedSize:Number.parseInt(F),value:v});return U2(v,t?32:0)}const M=u.match(Oy);if(M&&Array.isArray(v)){const[U,F]=M,W=[];for(let G=0;G<v.length;G++)W.push(m(F,v[G],!0));return W.length===0?"0x":St(...W)}throw new tu(u)}p.encode=m})(fs||(fs={}));class Zy extends ue{constructor({expectedLength:m,givenLength:u,type:v}){super(`Array length mismatch for type \`${v}\`. Expected: \`${m}\`. Given: \`${u}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class $6 extends ue{constructor({expectedSize:m,value:u}){super(`Size of bytes "${u}" (bytes${it(u)}) does not match expected size (bytes${m}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class eu extends ue{constructor({expectedLength:m,givenLength:u}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${m}`,`Given length (values): ${u}`].join(`
41
+ `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class Yy extends ue{constructor(m){super(`Value \`${m}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class tu extends ue{constructor(m){super(`Type \`${m}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function Ky(p,m){var t;const{bytecode:u,args:v}=m;return St(u,(t=p.inputs)!=null&&t.length&&(v!=null&&v.length)?_6(p.inputs,v):"0x")}function Xy(p){return X6(p)}function Qy(p,...m){const{overloads:u}=p,v=u?Jy([p,...u],p.name,{args:m[0]}):p,t=_y(v),l=m.length>0?_6(v.inputs,m[0]):void 0;return l?St(t,l):t}function V2(p,m={}){return X6(p,m)}function Jy(p,m,u){const v=Ry(p,m,u);if(v.type!=="function")throw new ps({name:m,type:"function"});return v}function _y(p){return Q6(p)}const $y="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",ft="0x0000000000000000000000000000000000000000",e7="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function t7(p,m){const{blockNumber:u,blockTag:v,calls:t,stateOverrides:l,traceAssetChanges:B,traceTransfers:M,validation:U}=m,F=m.account?Me(m.account):void 0;if(B&&!F)throw new m0("`account` is required when `traceAssetChanges` is true");const W=F?Ky(Xy("constructor(bytes, bytes)"),{bytecode:m6,args:[e7,Qy(V2("function getBalance(address)"),[F.address])]}):void 0,G=B?await Promise.all(m.calls.map(async B0=>{if(!B0.data&&!B0.abi)return;const{accessList:X0}=await B6(p,{account:F.address,...B0,data:B0.abi?vt(B0):B0.data});return X0.map(({address:se,storageKeys:he})=>he.length>0?se:null)})).then(B0=>B0.flat().filter(Boolean)):[],q=l==null?void 0:l.map(B0=>B0.address===(F==null?void 0:F.address)?{...B0,nonce:0}:B0),D=await us(p,{blockNumber:u,blockTag:v,blocks:[...B?[{calls:[{data:W}],stateOverrides:l},{calls:G.map((B0,X0)=>({abi:[V2("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[F.address],to:B0,from:ft,nonce:X0})),stateOverrides:[{address:ft,nonce:0}]}]:[],{calls:[...t,{}].map((B0,X0)=>({...B0,from:F==null?void 0:F.address,nonce:X0})),stateOverrides:q},...B?[{calls:[{data:W}]},{calls:G.map((B0,X0)=>({abi:[V2("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[F.address],to:B0,from:ft,nonce:X0})),stateOverrides:[{address:ft,nonce:0}]},{calls:G.map((B0,X0)=>({to:B0,abi:[V2("function decimals() returns (uint256)")],functionName:"decimals",from:ft,nonce:X0})),stateOverrides:[{address:ft,nonce:0}]},{calls:G.map((B0,X0)=>({to:B0,abi:[V2("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:ft,nonce:X0})),stateOverrides:[{address:ft,nonce:0}]},{calls:G.map((B0,X0)=>({to:B0,abi:[V2("function symbol() returns (string)")],functionName:"symbol",from:ft,nonce:X0})),stateOverrides:[{address:ft,nonce:0}]}]:[]],traceTransfers:M,validation:U}),n0=B?D[2]:D[0],[Q,J,,a0,o0,c0,p0,v0]=B?D:[],{calls:h0,...f0}=n0,w0=h0.slice(0,-1)??[],i0=(Q==null?void 0:Q.calls)??[],F0=(J==null?void 0:J.calls)??[],S0=[...i0,...F0].map(B0=>B0.status==="success"?De(B0.data):null),N0=(a0==null?void 0:a0.calls)??[],W0=(o0==null?void 0:o0.calls)??[],P0=[...N0,...W0].map(B0=>B0.status==="success"?De(B0.data):null),A0=((c0==null?void 0:c0.calls)??[]).map(B0=>B0.status==="success"?B0.result:null),T0=((v0==null?void 0:v0.calls)??[]).map(B0=>B0.status==="success"?B0.result:null),D0=((p0==null?void 0:p0.calls)??[]).map(B0=>B0.status==="success"?B0.result:null),j0=[];for(const[B0,X0]of P0.entries()){const se=S0[B0];if(typeof X0!="bigint"||typeof se!="bigint")continue;const he=A0[B0-1],Re=T0[B0-1],xe=D0[B0-1],ut=B0===0?{address:$y,decimals:18,symbol:"ETH"}:{address:G[B0-1],decimals:xe||he?Number(he??1):void 0,symbol:Re??void 0};j0.some(_e=>_e.token.address===ut.address)||j0.push({token:ut,value:{pre:se,post:X0,diff:X0-se}})}return{assetChanges:j0,block:f0,results:w0}}class nu extends Ns{constructor(m,u){super(),this.finished=!1,this.destroyed=!1,Z8(m);const v=Vr(u);if(this.iHash=m.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const t=this.blockLen,l=new Uint8Array(t);l.set(v.length>t?m.create().update(v).digest():v);for(let B=0;B<l.length;B++)l[B]^=54;this.iHash.update(l),this.oHash=m.create();for(let B=0;B<l.length;B++)l[B]^=106;this.oHash.update(l),l.fill(0)}update(m){return J2(this),this.iHash.update(m),this}digestInto(m){J2(this),_n(m,this.outputLen),this.finished=!0,this.iHash.digestInto(m),this.oHash.update(m),this.oHash.digestInto(m),this.destroy()}digest(){const m=new Uint8Array(this.oHash.outputLen);return this.digestInto(m),m}_cloneInto(m){m||(m=Object.create(Object.getPrototypeOf(this),{}));const{oHash:u,iHash:v,finished:t,destroyed:l,blockLen:B,outputLen:M}=this;return m=m,m.finished=t,m.destroyed=l,m.blockLen=B,m.outputLen=M,m.oHash=u._cloneInto(m.oHash),m.iHash=v._cloneInto(m.iHash),m}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const ru=(p,m,u)=>new nu(p,m).update(u).digest();ru.create=(p,m)=>new nu(p,m);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ke=BigInt(0),be=BigInt(1),T2=BigInt(2),n7=BigInt(3),ys=BigInt(4),Io=BigInt(5),So=BigInt(8);function qe(p,m){const u=p%m;return u>=ke?u:m+u}function r7(p,m,u){if(m<ke)throw new Error("invalid exponent, negatives unsupported");if(u<=ke)throw new Error("invalid modulus");if(u===be)return ke;let v=be;for(;m>ke;)m&be&&(v=v*p%u),p=p*p%u,m>>=be;return v}function tt(p,m,u){let v=p;for(;m-- >ke;)v*=v,v%=u;return v}function ms(p,m){if(p===ke)throw new Error("invert: expected non-zero number");if(m<=ke)throw new Error("invert: expected positive modulus, got "+m);let u=qe(p,m),v=m,t=ke,l=be;for(;u!==ke;){const M=v/u,U=v%u,F=t-l*M;v=u,u=U,t=l,l=F}if(v!==be)throw new Error("invert: does not exist");return qe(t,m)}function a7(p){const m=(p-be)/T2;let u,v,t;for(u=p-be,v=0;u%T2===ke;u/=T2,v++);for(t=T2;t<p&&r7(t,m,p)!==p-be;t++)if(t>1e3)throw new Error("Cannot find square root: likely non-prime P");if(v===1){const B=(p+be)/ys;return function(U,F){const W=U.pow(F,B);if(!U.eql(U.sqr(W),F))throw new Error("Cannot find square root");return W}}const l=(u+be)/T2;return function(M,U){if(M.pow(U,m)===M.neg(M.ONE))throw new Error("Cannot find square root");let F=v,W=M.pow(M.mul(M.ONE,t),u),G=M.pow(U,l),q=M.pow(U,u);for(;!M.eql(q,M.ONE);){if(M.eql(q,M.ZERO))return M.ZERO;let D=1;for(let Q=M.sqr(q);D<F&&!M.eql(Q,M.ONE);D++)Q=M.sqr(Q);const n0=M.pow(W,be<<BigInt(F-D-1));W=M.sqr(n0),G=M.mul(G,n0),q=M.mul(q,W),F=D}return G}}function s7(p){if(p%ys===n7){const m=(p+be)/ys;return function(v,t){const l=v.pow(t,m);if(!v.eql(v.sqr(l),t))throw new Error("Cannot find square root");return l}}if(p%So===Io){const m=(p-Io)/So;return function(v,t){const l=v.mul(t,T2),B=v.pow(l,m),M=v.mul(t,B),U=v.mul(v.mul(M,T2),B),F=v.mul(M,v.sub(U,v.ONE));if(!v.eql(v.sqr(F),t))throw new Error("Cannot find square root");return F}}return a7(p)}const i7=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function o7(p){const m={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},u=i7.reduce((v,t)=>(v[t]="function",v),m);return pr(p,u)}function u7(p,m,u){if(u<ke)throw new Error("invalid exponent, negatives unsupported");if(u===ke)return p.ONE;if(u===be)return m;let v=p.ONE,t=m;for(;u>ke;)u&be&&(v=p.mul(v,t)),t=p.sqr(t),u>>=be;return v}function c7(p,m){const u=new Array(m.length),v=m.reduce((l,B,M)=>p.is0(B)?l:(u[M]=l,p.mul(l,B)),p.ONE),t=p.inv(v);return m.reduceRight((l,B,M)=>p.is0(B)?l:(u[M]=p.mul(l,u[M]),p.mul(l,B)),t),u}function au(p,m){const u=m!==void 0?m:p.toString(2).length,v=Math.ceil(u/8);return{nBitLength:u,nByteLength:v}}function su(p,m,u=!1,v={}){if(p<=ke)throw new Error("invalid field: expected ORDER > 0, got "+p);const{nBitLength:t,nByteLength:l}=au(p,m);if(l>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let B;const M=Object.freeze({ORDER:p,isLE:u,BITS:t,BYTES:l,MASK:ci(t),ZERO:ke,ONE:be,create:U=>qe(U,p),isValid:U=>{if(typeof U!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof U);return ke<=U&&U<p},is0:U=>U===ke,isOdd:U=>(U&be)===be,neg:U=>qe(-U,p),eql:(U,F)=>U===F,sqr:U=>qe(U*U,p),add:(U,F)=>qe(U+F,p),sub:(U,F)=>qe(U-F,p),mul:(U,F)=>qe(U*F,p),pow:(U,F)=>u7(M,U,F),div:(U,F)=>qe(U*ms(F,p),p),sqrN:U=>U*U,addN:(U,F)=>U+F,subN:(U,F)=>U-F,mulN:(U,F)=>U*F,inv:U=>ms(U,p),sqrt:v.sqrt||(U=>(B||(B=s7(p)),B(M,U))),invertBatch:U=>c7(M,U),cmov:(U,F,W)=>W?F:U,toBytes:U=>u?ui(U,l):rn(U,l),fromBytes:U=>{if(U.length!==l)throw new Error("Field.fromBytes: expected "+l+" bytes, got "+U.length);return u?oi(U):x2(U)}});return Object.freeze(M)}function iu(p){if(typeof p!="bigint")throw new Error("field order must be bigint");const m=p.toString(2).length;return Math.ceil(m/8)}function ou(p){const m=iu(p);return m+Math.ceil(m/2)}function d7(p,m,u=!1){const v=p.length,t=iu(m),l=ou(m);if(v<16||v<l||v>1024)throw new Error("expected "+l+"-1024 bytes of input, got "+v);const B=u?oi(p):x2(p),M=qe(B,m-be)+be;return u?ui(M,t):rn(M,t)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Mo=BigInt(0),Cr=BigInt(1);function Na(p,m){const u=m.negate();return p?u:m}function uu(p,m){if(!Number.isSafeInteger(p)||p<=0||p>m)throw new Error("invalid window size, expected [1.."+m+"], got W="+p)}function Ua(p,m){uu(p,m);const u=Math.ceil(m/p)+1,v=2**(p-1);return{windows:u,windowSize:v}}function l7(p,m){if(!Array.isArray(p))throw new Error("array expected");p.forEach((u,v)=>{if(!(u instanceof m))throw new Error("invalid point at index "+v)})}function p7(p,m){if(!Array.isArray(p))throw new Error("array of scalars expected");p.forEach((u,v)=>{if(!m.isValid(u))throw new Error("invalid scalar at index "+v)})}const Oa=new WeakMap,cu=new WeakMap;function La(p){return cu.get(p)||1}function f7(p,m){return{constTimeNegate:Na,hasPrecomputes(u){return La(u)!==1},unsafeLadder(u,v,t=p.ZERO){let l=u;for(;v>Mo;)v&Cr&&(t=t.add(l)),l=l.double(),v>>=Cr;return t},precomputeWindow(u,v){const{windows:t,windowSize:l}=Ua(v,m),B=[];let M=u,U=M;for(let F=0;F<t;F++){U=M,B.push(U);for(let W=1;W<l;W++)U=U.add(M),B.push(U);M=U.double()}return B},wNAF(u,v,t){const{windows:l,windowSize:B}=Ua(u,m);let M=p.ZERO,U=p.BASE;const F=BigInt(2**u-1),W=2**u,G=BigInt(u);for(let q=0;q<l;q++){const D=q*B;let n0=Number(t&F);t>>=G,n0>B&&(n0-=W,t+=Cr);const Q=D,J=D+Math.abs(n0)-1,a0=q%2!==0,o0=n0<0;n0===0?U=U.add(Na(a0,v[Q])):M=M.add(Na(o0,v[J]))}return{p:M,f:U}},wNAFUnsafe(u,v,t,l=p.ZERO){const{windows:B,windowSize:M}=Ua(u,m),U=BigInt(2**u-1),F=2**u,W=BigInt(u);for(let G=0;G<B;G++){const q=G*M;if(t===Mo)break;let D=Number(t&U);if(t>>=W,D>M&&(D-=F,t+=Cr),D===0)continue;let n0=v[q+Math.abs(D)-1];D<0&&(n0=n0.negate()),l=l.add(n0)}return l},getPrecomputes(u,v,t){let l=Oa.get(v);return l||(l=this.precomputeWindow(v,u),u!==1&&Oa.set(v,t(l))),l},wNAFCached(u,v,t){const l=La(u);return this.wNAF(l,this.getPrecomputes(l,u,t),v)},wNAFCachedUnsafe(u,v,t,l){const B=La(u);return B===1?this.unsafeLadder(u,v,l):this.wNAFUnsafe(B,this.getPrecomputes(B,u,t),v,l)},setWindowSize(u,v){uu(v,m),cu.set(u,v),Oa.delete(u)}}}function y7(p,m,u,v){if(l7(u,p),p7(v,m),u.length!==v.length)throw new Error("arrays of points and scalars must have equal length");const t=p.ZERO,l=z6(BigInt(u.length)),B=l>12?l-3:l>4?l-2:l?2:1,M=(1<<B)-1,U=new Array(M+1).fill(t),F=Math.floor((m.BITS-1)/B)*B;let W=t;for(let G=F;G>=0;G-=B){U.fill(t);for(let D=0;D<v.length;D++){const n0=v[D],Q=Number(n0>>BigInt(G)&BigInt(M));U[Q]=U[Q].add(u[D])}let q=t;for(let D=U.length-1,n0=t;D>0;D--)n0=n0.add(U[D]),q=q.add(n0);if(W=W.add(q),G!==0)for(let D=0;D<B;D++)W=W.double()}return W}function du(p){return o7(p.Fp),pr(p,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...au(p.n,p.nBitLength),...p,p:p.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Ro(p){p.lowS!==void 0&&en("lowS",p.lowS),p.prehash!==void 0&&en("prehash",p.prehash)}function m7(p){const m=du(p);pr(m,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:u,Fp:v,a:t}=m;if(u){if(!v.eql(t,v.ZERO))throw new Error("invalid endomorphism, can only be defined for Koblitz curves that have a=0");if(typeof u!="object"||typeof u.beta!="bigint"||typeof u.splitScalar!="function")throw new Error("invalid endomorphism, expected beta: bigint and splitScalar: function")}return Object.freeze({...m})}const{bytesToNumberBE:b7,hexToBytes:h7}=ty;class g7 extends Error{constructor(m=""){super(m)}}const Vt={Err:g7,_tlv:{encode:(p,m)=>{const{Err:u}=Vt;if(p<0||p>256)throw new u("tlv.encode: wrong tag");if(m.length&1)throw new u("tlv.encode: unpadded data");const v=m.length/2,t=q2(v);if(t.length/2&128)throw new u("tlv.encode: long form length too big");const l=v>127?q2(t.length/2|128):"";return q2(p)+l+t+m},decode(p,m){const{Err:u}=Vt;let v=0;if(p<0||p>256)throw new u("tlv.encode: wrong tag");if(m.length<2||m[v++]!==p)throw new u("tlv.decode: wrong tlv");const t=m[v++],l=!!(t&128);let B=0;if(!l)B=t;else{const U=t&127;if(!U)throw new u("tlv.decode(long): indefinite length not supported");if(U>4)throw new u("tlv.decode(long): byte length is too big");const F=m.subarray(v,v+U);if(F.length!==U)throw new u("tlv.decode: length bytes not complete");if(F[0]===0)throw new u("tlv.decode(long): zero leftmost byte");for(const W of F)B=B<<8|W;if(v+=U,B<128)throw new u("tlv.decode(long): not minimal encoding")}const M=m.subarray(v,v+B);if(M.length!==B)throw new u("tlv.decode: wrong value length");return{v:M,l:m.subarray(v+B)}}},_int:{encode(p){const{Err:m}=Vt;if(p<jt)throw new m("integer: negative integers are not allowed");let u=q2(p);if(Number.parseInt(u[0],16)&8&&(u="00"+u),u.length&1)throw new m("unexpected DER parsing assertion: unpadded hex");return u},decode(p){const{Err:m}=Vt;if(p[0]&128)throw new m("invalid signature integer: negative");if(p[0]===0&&!(p[1]&128))throw new m("invalid signature integer: unnecessary leading zero");return b7(p)}},toSig(p){const{Err:m,_int:u,_tlv:v}=Vt,t=typeof p=="string"?h7(p):p;lr(t);const{v:l,l:B}=v.decode(48,t);if(B.length)throw new m("invalid signature: left bytes after parsing");const{v:M,l:U}=v.decode(2,l),{v:F,l:W}=v.decode(2,U);if(W.length)throw new m("invalid signature: left bytes after parsing");return{r:u.decode(M),s:u.decode(F)}},hexFromSig(p){const{_tlv:m,_int:u}=Vt,v=m.encode(2,u.encode(p.r)),t=m.encode(2,u.encode(p.s)),l=v+t;return m.encode(48,l)}},jt=BigInt(0),Ee=BigInt(1);BigInt(2);const No=BigInt(3);BigInt(4);function w7(p){const m=m7(p),{Fp:u}=m,v=su(m.n,m.nBitLength),t=m.toBytes||((Q,J,a0)=>{const o0=J.toAffine();return Kn(Uint8Array.from([4]),u.toBytes(o0.x),u.toBytes(o0.y))}),l=m.fromBytes||(Q=>{const J=Q.subarray(1),a0=u.fromBytes(J.subarray(0,u.BYTES)),o0=u.fromBytes(J.subarray(u.BYTES,2*u.BYTES));return{x:a0,y:o0}});function B(Q){const{a:J,b:a0}=m,o0=u.sqr(Q),c0=u.mul(o0,Q);return u.add(u.add(c0,u.mul(Q,J)),a0)}if(!u.eql(u.sqr(m.Gy),B(m.Gx)))throw new Error("bad generator point: equation left != right");function M(Q){return ca(Q,Ee,m.n)}function U(Q){const{allowedPrivateKeyLengths:J,nByteLength:a0,wrapPrivateKey:o0,n:c0}=m;if(J&&typeof Q!="bigint"){if(R2(Q)&&(Q=tn(Q)),typeof Q!="string"||!J.includes(Q.length))throw new Error("invalid private key");Q=Q.padStart(a0*2,"0")}let p0;try{p0=typeof Q=="bigint"?Q:x2(yt("private key",Q,a0))}catch{throw new Error("invalid private key, expected hex or "+a0+" bytes, got "+typeof Q)}return o0&&(p0=qe(p0,c0)),E2("private key",p0,Ee,c0),p0}function F(Q){if(!(Q instanceof q))throw new Error("ProjectivePoint expected")}const W=os((Q,J)=>{const{px:a0,py:o0,pz:c0}=Q;if(u.eql(c0,u.ONE))return{x:a0,y:o0};const p0=Q.is0();J==null&&(J=p0?u.ONE:u.inv(c0));const v0=u.mul(a0,J),h0=u.mul(o0,J),f0=u.mul(c0,J);if(p0)return{x:u.ZERO,y:u.ZERO};if(!u.eql(f0,u.ONE))throw new Error("invZ was invalid");return{x:v0,y:h0}}),G=os(Q=>{if(Q.is0()){if(m.allowInfinityPoint&&!u.is0(Q.py))return;throw new Error("bad point: ZERO")}const{x:J,y:a0}=Q.toAffine();if(!u.isValid(J)||!u.isValid(a0))throw new Error("bad point: x or y not FE");const o0=u.sqr(a0),c0=B(J);if(!u.eql(o0,c0))throw new Error("bad point: equation left != right");if(!Q.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class q{constructor(J,a0,o0){if(this.px=J,this.py=a0,this.pz=o0,J==null||!u.isValid(J))throw new Error("x required");if(a0==null||!u.isValid(a0))throw new Error("y required");if(o0==null||!u.isValid(o0))throw new Error("z required");Object.freeze(this)}static fromAffine(J){const{x:a0,y:o0}=J||{};if(!J||!u.isValid(a0)||!u.isValid(o0))throw new Error("invalid affine point");if(J instanceof q)throw new Error("projective point not allowed");const c0=p0=>u.eql(p0,u.ZERO);return c0(a0)&&c0(o0)?q.ZERO:new q(a0,o0,u.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(J){const a0=u.invertBatch(J.map(o0=>o0.pz));return J.map((o0,c0)=>o0.toAffine(a0[c0])).map(q.fromAffine)}static fromHex(J){const a0=q.fromAffine(l(yt("pointHex",J)));return a0.assertValidity(),a0}static fromPrivateKey(J){return q.BASE.multiply(U(J))}static msm(J,a0){return y7(q,v,J,a0)}_setWindowSize(J){n0.setWindowSize(this,J)}assertValidity(){G(this)}hasEvenY(){const{y:J}=this.toAffine();if(u.isOdd)return!u.isOdd(J);throw new Error("Field doesn't support isOdd")}equals(J){F(J);const{px:a0,py:o0,pz:c0}=this,{px:p0,py:v0,pz:h0}=J,f0=u.eql(u.mul(a0,h0),u.mul(p0,c0)),w0=u.eql(u.mul(o0,h0),u.mul(v0,c0));return f0&&w0}negate(){return new q(this.px,u.neg(this.py),this.pz)}double(){const{a:J,b:a0}=m,o0=u.mul(a0,No),{px:c0,py:p0,pz:v0}=this;let h0=u.ZERO,f0=u.ZERO,w0=u.ZERO,i0=u.mul(c0,c0),F0=u.mul(p0,p0),S0=u.mul(v0,v0),N0=u.mul(c0,p0);return N0=u.add(N0,N0),w0=u.mul(c0,v0),w0=u.add(w0,w0),h0=u.mul(J,w0),f0=u.mul(o0,S0),f0=u.add(h0,f0),h0=u.sub(F0,f0),f0=u.add(F0,f0),f0=u.mul(h0,f0),h0=u.mul(N0,h0),w0=u.mul(o0,w0),S0=u.mul(J,S0),N0=u.sub(i0,S0),N0=u.mul(J,N0),N0=u.add(N0,w0),w0=u.add(i0,i0),i0=u.add(w0,i0),i0=u.add(i0,S0),i0=u.mul(i0,N0),f0=u.add(f0,i0),S0=u.mul(p0,v0),S0=u.add(S0,S0),i0=u.mul(S0,N0),h0=u.sub(h0,i0),w0=u.mul(S0,F0),w0=u.add(w0,w0),w0=u.add(w0,w0),new q(h0,f0,w0)}add(J){F(J);const{px:a0,py:o0,pz:c0}=this,{px:p0,py:v0,pz:h0}=J;let f0=u.ZERO,w0=u.ZERO,i0=u.ZERO;const F0=m.a,S0=u.mul(m.b,No);let N0=u.mul(a0,p0),W0=u.mul(o0,v0),P0=u.mul(c0,h0),A0=u.add(a0,o0),T0=u.add(p0,v0);A0=u.mul(A0,T0),T0=u.add(N0,W0),A0=u.sub(A0,T0),T0=u.add(a0,c0);let D0=u.add(p0,h0);return T0=u.mul(T0,D0),D0=u.add(N0,P0),T0=u.sub(T0,D0),D0=u.add(o0,c0),f0=u.add(v0,h0),D0=u.mul(D0,f0),f0=u.add(W0,P0),D0=u.sub(D0,f0),i0=u.mul(F0,T0),f0=u.mul(S0,P0),i0=u.add(f0,i0),f0=u.sub(W0,i0),i0=u.add(W0,i0),w0=u.mul(f0,i0),W0=u.add(N0,N0),W0=u.add(W0,N0),P0=u.mul(F0,P0),T0=u.mul(S0,T0),W0=u.add(W0,P0),P0=u.sub(N0,P0),P0=u.mul(F0,P0),T0=u.add(T0,P0),N0=u.mul(W0,T0),w0=u.add(w0,N0),N0=u.mul(D0,T0),f0=u.mul(A0,f0),f0=u.sub(f0,N0),N0=u.mul(A0,W0),i0=u.mul(D0,i0),i0=u.add(i0,N0),new q(f0,w0,i0)}subtract(J){return this.add(J.negate())}is0(){return this.equals(q.ZERO)}wNAF(J){return n0.wNAFCached(this,J,q.normalizeZ)}multiplyUnsafe(J){const{endo:a0,n:o0}=m;E2("scalar",J,jt,o0);const c0=q.ZERO;if(J===jt)return c0;if(this.is0()||J===Ee)return this;if(!a0||n0.hasPrecomputes(this))return n0.wNAFCachedUnsafe(this,J,q.normalizeZ);let{k1neg:p0,k1:v0,k2neg:h0,k2:f0}=a0.splitScalar(J),w0=c0,i0=c0,F0=this;for(;v0>jt||f0>jt;)v0&Ee&&(w0=w0.add(F0)),f0&Ee&&(i0=i0.add(F0)),F0=F0.double(),v0>>=Ee,f0>>=Ee;return p0&&(w0=w0.negate()),h0&&(i0=i0.negate()),i0=new q(u.mul(i0.px,a0.beta),i0.py,i0.pz),w0.add(i0)}multiply(J){const{endo:a0,n:o0}=m;E2("scalar",J,Ee,o0);let c0,p0;if(a0){const{k1neg:v0,k1:h0,k2neg:f0,k2:w0}=a0.splitScalar(J);let{p:i0,f:F0}=this.wNAF(h0),{p:S0,f:N0}=this.wNAF(w0);i0=n0.constTimeNegate(v0,i0),S0=n0.constTimeNegate(f0,S0),S0=new q(u.mul(S0.px,a0.beta),S0.py,S0.pz),c0=i0.add(S0),p0=F0.add(N0)}else{const{p:v0,f:h0}=this.wNAF(J);c0=v0,p0=h0}return q.normalizeZ([c0,p0])[0]}multiplyAndAddUnsafe(J,a0,o0){const c0=q.BASE,p0=(h0,f0)=>f0===jt||f0===Ee||!h0.equals(c0)?h0.multiplyUnsafe(f0):h0.multiply(f0),v0=p0(this,a0).add(p0(J,o0));return v0.is0()?void 0:v0}toAffine(J){return W(this,J)}isTorsionFree(){const{h:J,isTorsionFree:a0}=m;if(J===Ee)return!0;if(a0)return a0(q,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:J,clearCofactor:a0}=m;return J===Ee?this:a0?a0(q,this):this.multiplyUnsafe(m.h)}toRawBytes(J=!0){return en("isCompressed",J),this.assertValidity(),t(q,this,J)}toHex(J=!0){return en("isCompressed",J),tn(this.toRawBytes(J))}}q.BASE=new q(m.Gx,m.Gy,u.ONE),q.ZERO=new q(u.ZERO,u.ONE,u.ZERO);const D=m.nBitLength,n0=f7(q,m.endo?Math.ceil(D/2):D);return{CURVE:m,ProjectivePoint:q,normPrivateKeyToScalar:U,weierstrassEquation:B,isWithinCurveOrder:M}}function T7(p){const m=du(p);return pr(m,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...m})}function v7(p){const m=T7(p),{Fp:u,n:v}=m,t=u.BYTES+1,l=2*u.BYTES+1;function B(P0){return qe(P0,v)}function M(P0){return ms(P0,v)}const{ProjectivePoint:U,normPrivateKeyToScalar:F,weierstrassEquation:W,isWithinCurveOrder:G}=w7({...m,toBytes(P0,A0,T0){const D0=A0.toAffine(),j0=u.toBytes(D0.x),B0=Kn;return en("isCompressed",T0),T0?B0(Uint8Array.from([A0.hasEvenY()?2:3]),j0):B0(Uint8Array.from([4]),j0,u.toBytes(D0.y))},fromBytes(P0){const A0=P0.length,T0=P0[0],D0=P0.subarray(1);if(A0===t&&(T0===2||T0===3)){const j0=x2(D0);if(!ca(j0,Ee,u.ORDER))throw new Error("Point is not on curve");const B0=W(j0);let X0;try{X0=u.sqrt(B0)}catch(Re){const xe=Re instanceof Error?": "+Re.message:"";throw new Error("Point is not on curve"+xe)}const se=(X0&Ee)===Ee;return(T0&1)===1!==se&&(X0=u.neg(X0)),{x:j0,y:X0}}else if(A0===l&&T0===4){const j0=u.fromBytes(D0.subarray(0,u.BYTES)),B0=u.fromBytes(D0.subarray(u.BYTES,2*u.BYTES));return{x:j0,y:B0}}else{const j0=t,B0=l;throw new Error("invalid Point, expected length of "+j0+", or uncompressed "+B0+", got "+A0)}}}),q=P0=>tn(rn(P0,m.nByteLength));function D(P0){const A0=v>>Ee;return P0>A0}function n0(P0){return D(P0)?B(-P0):P0}const Q=(P0,A0,T0)=>x2(P0.slice(A0,T0));class J{constructor(A0,T0,D0){this.r=A0,this.s=T0,this.recovery=D0,this.assertValidity()}static fromCompact(A0){const T0=m.nByteLength;return A0=yt("compactSignature",A0,T0*2),new J(Q(A0,0,T0),Q(A0,T0,2*T0))}static fromDER(A0){const{r:T0,s:D0}=Vt.toSig(yt("DER",A0));return new J(T0,D0)}assertValidity(){E2("r",this.r,Ee,v),E2("s",this.s,Ee,v)}addRecoveryBit(A0){return new J(this.r,this.s,A0)}recoverPublicKey(A0){const{r:T0,s:D0,recovery:j0}=this,B0=h0(yt("msgHash",A0));if(j0==null||![0,1,2,3].includes(j0))throw new Error("recovery id invalid");const X0=j0===2||j0===3?T0+m.n:T0;if(X0>=u.ORDER)throw new Error("recovery id 2 or 3 invalid");const se=j0&1?"03":"02",he=U.fromHex(se+q(X0)),Re=M(X0),xe=B(-B0*Re),ut=B(D0*Re),_e=U.BASE.multiplyAndAddUnsafe(he,xe,ut);if(!_e)throw new Error("point at infinify");return _e.assertValidity(),_e}hasHighS(){return D(this.s)}normalizeS(){return this.hasHighS()?new J(this.r,B(-this.s),this.recovery):this}toDERRawBytes(){return nn(this.toDERHex())}toDERHex(){return Vt.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return nn(this.toCompactHex())}toCompactHex(){return q(this.r)+q(this.s)}}const a0={isValidPrivateKey(P0){try{return F(P0),!0}catch{return!1}},normPrivateKeyToScalar:F,randomPrivateKey:()=>{const P0=ou(m.n);return d7(m.randomBytes(P0),m.n)},precompute(P0=8,A0=U.BASE){return A0._setWindowSize(P0),A0.multiply(BigInt(3)),A0}};function o0(P0,A0=!0){return U.fromPrivateKey(P0).toRawBytes(A0)}function c0(P0){const A0=R2(P0),T0=typeof P0=="string",D0=(A0||T0)&&P0.length;return A0?D0===t||D0===l:T0?D0===2*t||D0===2*l:P0 instanceof U}function p0(P0,A0,T0=!0){if(c0(P0))throw new Error("first arg must be private key");if(!c0(A0))throw new Error("second arg must be public key");return U.fromHex(A0).multiply(F(P0)).toRawBytes(T0)}const v0=m.bits2int||function(P0){if(P0.length>8192)throw new Error("input is too large");const A0=x2(P0),T0=P0.length*8-m.nBitLength;return T0>0?A0>>BigInt(T0):A0},h0=m.bits2int_modN||function(P0){return B(v0(P0))},f0=ci(m.nBitLength);function w0(P0){return E2("num < 2^"+m.nBitLength,P0,jt,f0),rn(P0,m.nByteLength)}function i0(P0,A0,T0=F0){if(["recovered","canonical"].some(Ut=>Ut in T0))throw new Error("sign() legacy options not supported");const{hash:D0,randomBytes:j0}=m;let{lowS:B0,prehash:X0,extraEntropy:se}=T0;B0==null&&(B0=!0),P0=yt("msgHash",P0),Ro(T0),X0&&(P0=yt("prehashed msgHash",D0(P0)));const he=h0(P0),Re=F(A0),xe=[w0(Re),w0(he)];if(se!=null&&se!==!1){const Ut=se===!0?j0(u.BYTES):se;xe.push(yt("extraEntropy",Ut))}const ut=Kn(...xe),_e=he;function mn(Ut){const Xt=v0(Ut);if(!G(Xt))return;const bn=M(Xt),y2=U.BASE.multiply(Xt).toAffine(),Ot=B(y2.x);if(Ot===jt)return;const m2=B(bn*B(_e+Ot*Re));if(m2===jt)return;let b2=(y2.x===Ot?0:2)|Number(y2.y&Ee),Qt=m2;return B0&&D(m2)&&(Qt=n0(m2),b2^=1),new J(Ot,Qt,b2)}return{seed:ut,k2sig:mn}}const F0={lowS:m.lowS,prehash:!1},S0={lowS:m.lowS,prehash:!1};function N0(P0,A0,T0=F0){const{seed:D0,k2sig:j0}=i0(P0,A0,T0),B0=m;return H6(B0.hash.outputLen,B0.nByteLength,B0.hmac)(D0,j0)}U.BASE._setWindowSize(8);function W0(P0,A0,T0,D0=S0){var b2;const j0=P0;A0=yt("msgHash",A0),T0=yt("publicKey",T0);const{lowS:B0,prehash:X0,format:se}=D0;if(Ro(D0),"strict"in D0)throw new Error("options.strict was renamed to lowS");if(se!==void 0&&se!=="compact"&&se!=="der")throw new Error("format must be compact or der");const he=typeof j0=="string"||R2(j0),Re=!he&&!se&&typeof j0=="object"&&j0!==null&&typeof j0.r=="bigint"&&typeof j0.s=="bigint";if(!he&&!Re)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let xe,ut;try{if(Re&&(xe=new J(j0.r,j0.s)),he){try{se!=="compact"&&(xe=J.fromDER(j0))}catch(Qt){if(!(Qt instanceof Vt.Err))throw Qt}!xe&&se!=="der"&&(xe=J.fromCompact(j0))}ut=U.fromHex(T0)}catch{return!1}if(!xe||B0&&xe.hasHighS())return!1;X0&&(A0=m.hash(A0));const{r:_e,s:mn}=xe,Ut=h0(A0),Xt=M(mn),bn=B(Ut*Xt),y2=B(_e*Xt),Ot=(b2=U.BASE.multiplyAndAddUnsafe(ut,bn,y2))==null?void 0:b2.toAffine();return Ot?B(Ot.x)===_e:!1}return{CURVE:m,getPublicKey:o0,getSharedSecret:p0,sign:N0,verify:W0,ProjectivePoint:U,Signature:J,utils:a0}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function A7(p){return{hash:p,hmac:(m,...u)=>ru(p,m,Q8(...u)),randomBytes:J8}}function x7(p,m){const u=v=>v7({...p,...A7(v)});return{...u(m),create:u}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const lu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Uo=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),E7=BigInt(1),bs=BigInt(2),Oo=(p,m)=>(p+m/bs)/m;function P7(p){const m=lu,u=BigInt(3),v=BigInt(6),t=BigInt(11),l=BigInt(22),B=BigInt(23),M=BigInt(44),U=BigInt(88),F=p*p*p%m,W=F*F*p%m,G=tt(W,u,m)*W%m,q=tt(G,u,m)*W%m,D=tt(q,bs,m)*F%m,n0=tt(D,t,m)*D%m,Q=tt(n0,l,m)*n0%m,J=tt(Q,M,m)*Q%m,a0=tt(J,U,m)*J%m,o0=tt(a0,M,m)*Q%m,c0=tt(o0,u,m)*W%m,p0=tt(c0,B,m)*n0%m,v0=tt(p0,v,m)*F%m,h0=tt(v0,bs,m);if(!hs.eql(hs.sqr(h0),p))throw new Error("Cannot find square root");return h0}const hs=su(lu,void 0,void 0,{sqrt:P7}),mi=x7({a:BigInt(0),b:BigInt(7),Fp:hs,n:Uo,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:p=>{const m=Uo,u=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),v=-E7*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),t=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),l=u,B=BigInt("0x100000000000000000000000000000000"),M=Oo(l*p,m),U=Oo(-v*p,m);let F=qe(p-M*u-U*t,m),W=qe(-M*v-U*l,m);const G=F>B,q=W>B;if(G&&(F=m-F),q&&(W=m-W),F>B||W>B)throw new Error("splitScalar: Endomorphism failed, k="+p);return{k1neg:G,k1:F,k2neg:q,k2:W}}}},i4);BigInt(0);mi.ProjectivePoint;const k7=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:mi},Symbol.toStringTag,{value:"Module"}));function C7({r:p,s:m,to:u="hex",v,yParity:t}){const l=(()=>{if(t===0||t===1)return t;if(v&&(v===27n||v===28n||v>=35n))return v%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),B=`0x${new mi.Signature(De(p),De(m)).toCompactHex()}${l===0?"1b":"1c"}`;return u==="hex"?B:gt(B)}async function bi(p,m){var G,q,D;const{address:u,factory:v,factoryData:t,hash:l,signature:B,universalSignatureVerifierAddress:M=(D=(q=(G=p.chain)==null?void 0:G.contracts)==null?void 0:q.universalSignatureVerifier)==null?void 0:D.address,...U}=m,F=ht(B)?B:typeof B=="object"&&"r"in B&&"s"in B?C7(B):we(B),W=await(async()=>!v&&!t||Ff(F)?F:zf({address:v,data:t,signature:F}))();try{const n0=M?{to:M,data:vt({abi:go,functionName:"isValidSig",args:[u,l,W]}),...U}:{data:ra({abi:go,args:[u,l,W],bytecode:Sp}),...U},{data:Q}=await L0(p,or,"call")(n0);return E8(Q??"0x0")}catch(n0){try{if(na(g4(u),await s6({hash:l,signature:B})))return!0}catch{}if(n0 instanceof Y4)return!1;throw n0}}async function B7(p,{address:m,message:u,factory:v,factoryData:t,signature:l,...B}){const M=D6(u);return bi(p,{address:m,factory:v,factoryData:t,hash:M,signature:l,...B})}async function I7(p,m){const{address:u,factory:v,factoryData:t,signature:l,message:B,primaryType:M,types:U,domain:F,...W}=m,G=Sf({message:B,primaryType:M,types:U,domain:F});return bi(p,{address:u,factory:v,factoryData:t,hash:G,signature:l,...W})}function pu(p,{emitOnBegin:m=!1,emitMissed:u=!1,onBlockNumber:v,onError:t,poll:l,pollingInterval:B=p.pollingInterval}){const M=typeof l<"u"?l:!(p.transport.type==="webSocket"||p.transport.type==="fallback"&&p.transport.transports[0].config.type==="webSocket");let U;return M?(()=>{const G=Ae(["watchBlockNumber",p.uid,m,u,B]);return u2(G,{onBlockNumber:v,onError:t},q=>ur(async()=>{var D;try{const n0=await L0(p,cr,"getBlockNumber")({cacheTime:0});if(U){if(n0===U)return;if(n0-U>1&&u)for(let Q=U+1n;Q<n0;Q++)q.onBlockNumber(Q,U),U=Q}(!U||n0>U)&&(q.onBlockNumber(n0,U),U=n0)}catch(n0){(D=q.onError)==null||D.call(q,n0)}},{emitOnBegin:m,interval:B}))})():(()=>{const G=Ae(["watchBlockNumber",p.uid,m,u]);return u2(G,{onBlockNumber:v,onError:t},q=>{let D=!0,n0=()=>D=!1;return(async()=>{try{const Q=(()=>{if(p.transport.type==="fallback"){const a0=p.transport.transports.find(o0=>o0.config.type==="webSocket");return a0?a0.value:p.transport}return p.transport})(),{unsubscribe:J}=await Q.subscribe({params:["newHeads"],onData(a0){var c0;if(!D)return;const o0=De((c0=a0.result)==null?void 0:c0.number);q.onBlockNumber(o0,U),U=o0},onError(a0){var o0;(o0=q.onError)==null||o0.call(q,a0)}});n0=J,D||n0()}catch(Q){t==null||t(Q)}})(),()=>n0()})})()}async function S7(p,{confirmations:m=1,hash:u,onReplaced:v,pollingInterval:t=p.pollingInterval,retryCount:l=6,retryDelay:B=({count:U})=>~~(1<<U)*200,timeout:M=18e4}){const U=Ae(["waitForTransactionReceipt",p.uid,u]);let F,W,G,q=!1;const{promise:D,resolve:n0,reject:Q}=b6(),J=M?setTimeout(()=>Q(new G8({hash:u})),M):void 0,a0=u2(U,{onReplaced:v,resolve:n0,reject:Q},o0=>{const c0=L0(p,pu,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:t,async onBlockNumber(p0){const v0=f0=>{clearTimeout(J),c0(),f0(),a0()};let h0=p0;if(!q)try{if(G){if(m>1&&(!G.blockNumber||h0-G.blockNumber+1n<m))return;v0(()=>o0.resolve(G));return}if(F||(q=!0,await ss(async()=>{F=await L0(p,si,"getTransaction")({hash:u}),F.blockNumber&&(h0=F.blockNumber)},{delay:B,retryCount:l}),q=!1),G=await L0(p,is,"getTransactionReceipt")({hash:u}),m>1&&(!G.blockNumber||h0-G.blockNumber+1n<m))return;v0(()=>o0.resolve(G))}catch(f0){if(f0 instanceof n4||f0 instanceof r4){if(!F){q=!1;return}try{W=F,q=!0;const w0=await ss(()=>L0(p,kt,"getBlock")({blockNumber:h0,includeTransactions:!0}),{delay:B,retryCount:l,shouldRetry:({error:S0})=>S0 instanceof o6});q=!1;const i0=w0.transactions.find(({from:S0,nonce:N0})=>S0===W.from&&N0===W.nonce);if(!i0||(G=await L0(p,is,"getTransactionReceipt")({hash:i0.hash}),m>1&&(!G.blockNumber||h0-G.blockNumber+1n<m)))return;let F0="replaced";i0.to===W.to&&i0.value===W.value&&i0.input===W.input?F0="repriced":i0.from===i0.to&&i0.value===0n&&(F0="cancelled"),v0(()=>{var S0;(S0=o0.onReplaced)==null||S0.call(o0,{reason:F0,replacedTransaction:W,transaction:i0,transactionReceipt:G}),o0.resolve(G)})}catch(w0){v0(()=>o0.reject(w0))}}else v0(()=>o0.reject(f0))}}})});return D}function M7(p,{blockTag:m="latest",emitMissed:u=!1,emitOnBegin:v=!1,onBlock:t,onError:l,includeTransactions:B,poll:M,pollingInterval:U=p.pollingInterval}){const F=typeof M<"u"?M:!(p.transport.type==="webSocket"||p.transport.type==="fallback"&&p.transport.transports[0].config.type==="webSocket"),W=B??!1;let G;return F?(()=>{const n0=Ae(["watchBlocks",p.uid,m,u,v,W,U]);return u2(n0,{onBlock:t,onError:l},Q=>ur(async()=>{var J;try{const a0=await L0(p,kt,"getBlock")({blockTag:m,includeTransactions:W});if(a0.number&&(G!=null&&G.number)){if(a0.number===G.number)return;if(a0.number-G.number>1&&u)for(let o0=(G==null?void 0:G.number)+1n;o0<a0.number;o0++){const c0=await L0(p,kt,"getBlock")({blockNumber:o0,includeTransactions:W});Q.onBlock(c0,G),G=c0}}(!(G!=null&&G.number)||m==="pending"&&!(a0!=null&&a0.number)||a0.number&&a0.number>G.number)&&(Q.onBlock(a0,G),G=a0)}catch(a0){(J=Q.onError)==null||J.call(Q,a0)}},{emitOnBegin:v,interval:U}))})():(()=>{let n0=!0,Q=!0,J=()=>n0=!1;return(async()=>{try{v&&L0(p,kt,"getBlock")({blockTag:m,includeTransactions:W}).then(c0=>{n0&&Q&&(t(c0,void 0),Q=!1)});const a0=(()=>{if(p.transport.type==="fallback"){const c0=p.transport.transports.find(p0=>p0.config.type==="webSocket");return c0?c0.value:p.transport}return p.transport})(),{unsubscribe:o0}=await a0.subscribe({params:["newHeads"],async onData(c0){if(!n0)return;const p0=await L0(p,kt,"getBlock")({blockNumber:c0.blockNumber,includeTransactions:W}).catch(()=>{});n0&&(t(p0,G),Q=!1,G=p0)},onError(c0){l==null||l(c0)}});J=o0,n0||J()}catch(a0){l==null||l(a0)}})(),()=>J()})()}function R7(p,{address:m,args:u,batch:v=!0,event:t,events:l,fromBlock:B,onError:M,onLogs:U,poll:F,pollingInterval:W=p.pollingInterval,strict:G}){const q=typeof F<"u"?F:typeof B=="bigint"?!0:!(p.transport.type==="webSocket"||p.transport.type==="fallback"&&p.transport.transports[0].config.type==="webSocket"),D=G??!1;return q?(()=>{const J=Ae(["watchEvent",m,u,v,p.uid,t,W,B]);return u2(J,{onLogs:U,onError:M},a0=>{let o0;B!==void 0&&(o0=B-1n);let c0,p0=!1;const v0=ur(async()=>{var h0;if(!p0){try{c0=await L0(p,I6,"createEventFilter")({address:m,args:u,event:t,events:l,strict:D,fromBlock:B})}catch{}p0=!0;return}try{let f0;if(c0)f0=await L0(p,aa,"getFilterChanges")({filter:c0});else{const w0=await L0(p,cr,"getBlockNumber")({});o0&&o0!==w0?f0=await L0(p,_s,"getLogs")({address:m,args:u,event:t,events:l,fromBlock:o0+1n,toBlock:w0}):f0=[],o0=w0}if(f0.length===0)return;if(v)a0.onLogs(f0);else for(const w0 of f0)a0.onLogs([w0])}catch(f0){c0&&f0 instanceof S2&&(p0=!1),(h0=a0.onError)==null||h0.call(a0,f0)}},{emitOnBegin:!0,interval:W});return async()=>{c0&&await L0(p,sa,"uninstallFilter")({filter:c0}),v0()}})})():(()=>{let J=!0,a0=()=>J=!1;return(async()=>{try{const o0=(()=>{if(p.transport.type==="fallback"){const h0=p.transport.transports.find(f0=>f0.config.type==="webSocket");return h0?h0.value:p.transport}return p.transport})(),c0=l??(t?[t]:void 0);let p0=[];c0&&(p0=[c0.flatMap(f0=>sr({abi:[f0],eventName:f0.name,args:u}))],t&&(p0=p0[0]));const{unsubscribe:v0}=await o0.subscribe({params:["logs",{address:m,topics:p0}],onData(h0){var w0;if(!J)return;const f0=h0.result;try{const{eventName:i0,args:F0}=Qs({abi:c0??[],data:f0.data,topics:f0.topics,strict:D}),S0=Wt(f0,{args:F0,eventName:i0});U([S0])}catch(i0){let F0,S0;if(i0 instanceof Rn||i0 instanceof Zr){if(G)return;F0=i0.abiItem.name,S0=(w0=i0.abiItem.inputs)==null?void 0:w0.some(W0=>!("name"in W0&&W0.name))}const N0=Wt(f0,{args:S0?[]:{},eventName:F0});U([N0])}},onError(h0){M==null||M(h0)}});a0=v0,J||a0()}catch(o0){M==null||M(o0)}})(),()=>a0()})()}function N7(p,{batch:m=!0,onError:u,onTransactions:v,poll:t,pollingInterval:l=p.pollingInterval}){return(typeof t<"u"?t:p.transport.type!=="webSocket")?(()=>{const F=Ae(["watchPendingTransactions",p.uid,m,l]);return u2(F,{onTransactions:v,onError:u},W=>{let G;const q=ur(async()=>{var D;try{if(!G)try{G=await L0(p,S6,"createPendingTransactionFilter")({});return}catch(Q){throw q(),Q}const n0=await L0(p,aa,"getFilterChanges")({filter:G});if(n0.length===0)return;if(m)W.onTransactions(n0);else for(const Q of n0)W.onTransactions([Q])}catch(n0){(D=W.onError)==null||D.call(W,n0)}},{emitOnBegin:!0,interval:l});return async()=>{G&&await L0(p,sa,"uninstallFilter")({filter:G}),q()}})})():(()=>{let F=!0,W=()=>F=!1;return(async()=>{try{const{unsubscribe:G}=await p.transport.subscribe({params:["newPendingTransactions"],onData(q){if(!F)return;const D=q.result;v([D])},onError(q){u==null||u(q)}});W=G,F||W()}catch(G){u==null||u(G)}})(),()=>W()})()}function U7(p){var G,q,D;const{scheme:m,statement:u,...v}=((G=p.match(O7))==null?void 0:G.groups)??{},{chainId:t,expirationTime:l,issuedAt:B,notBefore:M,requestId:U,...F}=((q=p.match(L7))==null?void 0:q.groups)??{},W=(D=p.split("Resources:")[1])==null?void 0:D.split(`
42
+ - `).slice(1);return{...v,...F,...t?{chainId:Number(t)}:{},...l?{expirationTime:new Date(l)}:{},...B?{issuedAt:new Date(B)}:{},...M?{notBefore:new Date(M)}:{},...U?{requestId:U}:{},...W?{resources:W}:{},...m?{scheme:m}:{},...u?{statement:u}:{}}}const O7=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,L7=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function D7(p){const{address:m,domain:u,message:v,nonce:t,scheme:l,time:B=new Date}=p;if(u&&v.domain!==u||t&&v.nonce!==t||l&&v.scheme!==l||v.expirationTime&&B>=v.expirationTime||v.notBefore&&B<v.notBefore)return!1;try{if(!v.address||m&&!na(v.address,m))return!1}catch{return!1}return!0}async function F7(p,m){const{address:u,domain:v,message:t,nonce:l,scheme:B,signature:M,time:U=new Date,...F}=m,W=U7(t);if(!W.address||!D7({address:u,domain:v,message:W,nonce:l,scheme:B,time:U}))return!1;const q=D6(t);return bi(p,{address:W.address,hash:q,signature:M,...F})}function z7(p){return{call:m=>or(p,m),createAccessList:m=>B6(p,m),createBlockFilter:()=>vf(p),createContractEventFilter:m=>Ws(p,m),createEventFilter:m=>I6(p,m),createPendingTransactionFilter:()=>S6(p),estimateContractGas:m=>p6(p,m),estimateGas:m=>Xs(p,m),getBalance:m=>l6(p,m),getBlobBaseFee:()=>Af(p),getBlock:m=>kt(p,m),getBlockNumber:m=>cr(p,m),getBlockTransactionCount:m=>xf(p,m),getBytecode:m=>eo(p,m),getChainId:()=>ir(p),getCode:m=>eo(p,m),getContractEvents:m=>$s(p,m),getEip712Domain:m=>Gp(p,m),getEnsAddress:m=>af(p,m),getEnsAvatar:m=>gf(p,m),getEnsName:m=>wf(p,m),getEnsResolver:m=>Tf(p,m),getEnsText:m=>C6(p,m),getFeeHistory:m=>Pf(p,m),estimateFeesPerGas:m=>Ep(p,m),getFilterChanges:m=>aa(p,m),getFilterLogs:m=>kf(p,m),getGasPrice:()=>Ks(p),getLogs:m=>_s(p,m),getProof:m=>jf(p,m),estimateMaxPriorityFeePerGas:m=>xp(p,m),getStorageAt:m=>qf(p,m),getTransaction:m=>si(p,m),getTransactionConfirmations:m=>Gf(p,m),getTransactionCount:m=>c6(p,m),getTransactionReceipt:m=>is(p,m),multicall:m=>Wf(p,m),prepareTransactionRequest:m=>ta(p,m),readContract:m=>It(p,m),sendRawTransaction:m=>ei(p,m),simulate:m=>us(p,m),simulateBlocks:m=>us(p,m),simulateCalls:m=>t7(p,m),simulateContract:m=>g6(p,m),verifyMessage:m=>B7(p,m),verifySiweMessage:m=>F7(p,m),verifyTypedData:m=>I7(p,m),uninstallFilter:m=>sa(p,m),waitForTransactionReceipt:m=>S7(p,m),watchBlocks:m=>M7(p,m),watchBlockNumber:m=>pu(p,m),watchContractEvent:m=>w6(p,m),watchEvent:m=>R7(p,m),watchPendingTransactions:m=>N7(p,m)}}function H7(p){const{key:m="public",name:u="Public Client"}=p;return A6({...p,key:m,name:u,type:"publicClient"}).extend(z7)}function V7(p,m){const{abi:u,args:v,bytecode:t,...l}=m,B=ra({abi:u,args:v,bytecode:t});return ti(p,{...l,...l.authorizationList?{to:null}:{},data:B})}async function j7(p){var u;return((u=p.account)==null?void 0:u.type)==="local"?[p.account.address]:(await p.request({method:"eth_accounts"},{dedupe:!0})).map(v=>er(v))}async function q7(p){return await p.request({method:"wallet_getPermissions"},{dedupe:!0})}async function G7(p){return(await p.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(u=>g4(u))}async function W7(p,m){return p.request({method:"wallet_requestPermissions",params:[m]},{retryCount:0})}async function Z7(p,{account:m=p.account,message:u}){if(!m)throw new nr({docsPath:"/docs/actions/wallet/signMessage"});const v=Me(m);if(v.signMessage)return v.signMessage({message:u});const t=typeof u=="string"?Q2(u):u.raw instanceof Uint8Array?G0(u.raw):u.raw;return p.request({method:"personal_sign",params:[t,v.address]},{retryCount:0})}async function Y7(p,m){var F,W,G,q;const{account:u=p.account,chain:v=p.chain,...t}=m;if(!u)throw new nr({docsPath:"/docs/actions/wallet/signTransaction"});const l=Me(u);L2({account:l,...m});const B=await L0(p,ir,"getChainId")({});v!==null&&E4({currentChainId:B,chain:v});const M=(v==null?void 0:v.formatters)||((F=p.chain)==null?void 0:F.formatters),U=((W=M==null?void 0:M.transactionRequest)==null?void 0:W.format)||dn;return l.signTransaction?l.signTransaction({...t,chainId:B},{serializer:(q=(G=p.chain)==null?void 0:G.serializers)==null?void 0:q.transaction}):await p.request({method:"eth_signTransaction",params:[{...U(t),chainId:H0(B),from:l.address}]},{retryCount:0})}async function K7(p,m){const{account:u=p.account,domain:v,message:t,primaryType:l}=m;if(!u)throw new nr({docsPath:"/docs/actions/wallet/signTypedData"});const B=Me(u),M={EIP712Domain:L6({domain:v}),...m.types};if(O6({domain:v,message:t,primaryType:l,types:M}),B.signTypedData)return B.signTypedData({domain:v,message:t,primaryType:l,types:M});const U=Uf({domain:v,message:t,primaryType:l,types:M});return p.request({method:"eth_signTypedData_v4",params:[B.address,U]},{retryCount:0})}async function X7(p,{id:m}){await p.request({method:"wallet_switchEthereumChain",params:[{chainId:H0(m)}]},{retryCount:0})}async function Q7(p,m){return await p.request({method:"wallet_watchAsset",params:m},{retryCount:0})}function J7(p){return{addChain:m=>Zp(p,m),deployContract:m=>V7(p,m),getAddresses:()=>j7(p),getChainId:()=>ir(p),getPermissions:()=>q7(p),prepareTransactionRequest:m=>ta(p,m),requestAddresses:()=>G7(p),requestPermissions:m=>W7(p,m),sendRawTransaction:m=>ei(p,m),sendTransaction:m=>ti(p,m),signMessage:m=>Z7(p,m),signTransaction:m=>Y7(p,m),signTypedData:m=>K7(p,m),switchChain:m=>X7(p,m),watchAsset:m=>Q7(p,m),writeContract:m=>T6(p,m)}}function _7(p){const{key:m="wallet",name:u="Wallet Client",transport:v}=p;return A6({...p,key:m,name:u,transport:v,type:"walletClient"}).extend(J7)}function Je({chainId:p,rpcUrl:m}){const u=m?{[p]:m}:void 0,v={...lp,...u},t=wt[p],l=tf(v[p]);return H7({chain:t,transport:l})}const fu=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowDustLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[],name:"InvalidDustFeeRate",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidInputLength",type:"error"},{inputs:[],name:"InvalidUserSignature",type:"error"},{inputs:[],name:"KnownDestination",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"UnauthorizedAccount",type:"error"},{inputs:[{internalType:"bytes4",name:"action",type:"bytes4"}],name:"UnexpectedAction",type:"error"},{inputs:[],name:"UnknownDestination",type:"error"},{inputs:[{internalType:"uint256",name:"fromChainId",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"}],name:"UnknownOriginContract",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WithdrawalsDisabled",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroChainId",type:"error"},{inputs:[],name:"ZeroContractHash",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BridgeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"claimer",type:"address"},{indexed:!1,internalType:"bool",name:"isClaimer",type:"bool"}],name:"ClaimerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"bool",name:"isMinter",type:"bool"}],name:"MinterUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousPauser",type:"address"},{indexed:!0,internalType:"address",name:"newPauser",type:"address"}],name:"PauserRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"fromAddress",type:"address"},{indexed:!1,internalType:"bytes",name:"scriptPubKey",type:"bytes"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"UnstakeRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"WithdrawalsEnabled",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newClaimer",type:"address"}],name:"addClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newMinter",type:"address"}],name:"addMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newBridge",type:"address"}],name:"changeBridge",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeBurnCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newRate",type:"uint256"}],name:"changeDustFeeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBurnCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"uint64",name:"burnCommission_",type:"uint64"},{internalType:"address",name:"owner_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"claimer",type:"address"}],name:"isClaimer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"payload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"reinitialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldClaimer",type:"address"}],name:"removeClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldMinter",type:"address"}],name:"removeMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMintFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleWithdrawals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newPauser",type:"address"}],name:"transferPauserRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"fromChain",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"},{internalType:"uint256",name:"toChain",type:"uint256"},{internalType:"address",name:"toContract",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint64",name:"amount",type:"uint64"},{internalType:"bytes32",name:"uniqueActionData",type:"bytes32"}],internalType:"struct Actions.DepositBridgeAction",name:"action",type:"tuple"},{internalType:"bytes32",name:"",type:"bytes32"},{internalType:"bytes",name:"",type:"bytes"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}],$7={[y0.baseSepoliaTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[y0.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[y0.binanceSmartChainTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[y0.holesky]:"0xED7bfd5C1790576105Af4649817f6d35A75CD818",[y0.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[y0.sonicBlazeTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6"},e3={[y0.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[y0.binanceSmartChainTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5",[y0.holesky]:"0x38A13AB20D15ffbE5A7312d2336EF1552580a4E2",[y0.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[y0.sonicBlazeTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5"},t3={[y0.ethereum]:"0x8236a87084f8b84306f72007f36f2618a5634494",[y0.base]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.berachain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.binanceSmartChain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.corn]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.morph]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.sonic]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[y0.swell]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1"};function hi(p=p2){switch(p){case Se.testnet:return e3;case Se.stage:return $7;case Se.prod:return t3}}function At({provider:p,chainId:m}){const u=wt[m],v=Qp(p);return _7({chain:u,transport:v})}function la({chainId:p,rpcUrl:m,env:u=p2}){const t=hi(u)[p];if(!t)throw new Error(`Could not determine the LBTC contract address for given chain id: ${p} (env: ${u})`);const l=Je({chainId:p,rpcUrl:m});return dr({abi:fu,address:t,client:l})}function yn(p,m){const v=hi(m)[p];if(!v)throw new Error(`Could not determine the LBTC contract address for given chain id: ${p} (env: ${m})`);return{abi:fu,address:v}}const n3=[{inputs:[{internalType:"address",name:"aDefaultAdmin",type:"address"},{internalType:"address",name:"aPauser",type:"address"},{internalType:"address",name:"aDepositReporter",type:"address"},{internalType:"address",name:"aWithdrawalValidator",type:"address"},{internalType:"uint256",name:"aMaxDeposits",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[{internalType:"bytes32",name:"depositID",type:"bytes32"}],name:"AlreadyReported",type:"error"},{inputs:[{internalType:"bytes32",name:"depositID",type:"bytes32"},{internalType:"uint256",name:"withdrawalAmount",type:"uint256"}],name:"AlreadyWithdrawn",type:"error"},{inputs:[],name:"BadDepositReport",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[],name:"SameValidationThreshold",type:"error"},{inputs:[{internalType:"bytes32",name:"depositID",type:"bytes32"},{internalType:"uint256",name:"withdrawalAmount",type:"uint256"}],name:"WithdrawalFailedValidation",type:"error"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"reportId",type:"bytes32"},{indexed:!1,internalType:"uint256",name:"numDeposits",type:"uint256"}],name:"DepositsReported",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"numDeposits",type:"uint256"}],name:"MaxDepositsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"oldThreshold",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newThreshold",type:"uint256"}],name:"UpdateValidateThreshold",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bytes32",name:"depositID",type:"bytes32"},{indexed:!1,internalType:"uint256",name:"withdrawalAmount",type:"uint256"}],name:"WithdrawalNotValidated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bytes32",name:"depositID",type:"bytes32"},{indexed:!1,internalType:"uint256",name:"withdrawalAmount",type:"uint256"}],name:"WithdrawalValidated",type:"event"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEPOSIT_REPORTER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"VALIDATION_GUARDIAN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"WITHDRAWAL_VALIDATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"depositID",type:"bytes32"}],name:"depositHistory",outputs:[{internalType:"enum Bascule.DepositState",name:"status",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxDeposits",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"reportId",type:"bytes32"},{internalType:"bytes32[]",name:"depositIDs",type:"bytes32[]"}],name:"reportDeposits",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"aMaxDeposits",type:"uint256"}],name:"setMaxDeposits",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newThreshold",type:"uint256"}],name:"updateValidateThreshold",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"validateThreshold",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"depositID",type:"bytes32"},{internalType:"uint256",name:"withdrawalAmount",type:"uint256"}],name:"validateWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"}];var Bn=(p=>(p[p.UNREPORTED=0]="UNREPORTED",p[p.REPORTED=1]="REPORTED",p[p.WITHDRAWN=2]="WITHDRAWN",p))(Bn||{});async function yu({deposit:p,rawPayload:m,provider:u,chainId:v,rpcUrl:t,env:l=p2}){const B=(p==null?void 0:p.rawPayload)||m;if(!B)throw new Error("No 'rawPayload' or 'deposit' data provided. Please provide 'rawPayload' or 'deposit' parameter.");const U=await la({chainId:v,rpcUrl:t,env:l}).read.Bascule();if(U===ft)return 1;let F;if(u?F=At({provider:u,chainId:v}):F=Je({chainId:v,rpcUrl:t}),!F)throw new Error("Could not determine the client for the contract interactions. Please provide the 'provider' and 'chainId' parameters or 'chainId' and optionally the 'rpcUrl' parameter.");try{const W=dr({abi:n3,address:U,client:F}),G=Pe(Buffer.from(B.slice(8),"hex"));return await W.read.depositHistory([G])}catch(W){throw new Error(ze(W))}}const r3=[y0.ethereum,y0.base,y0.binanceSmartChain],mu=p=>r3.includes(p)?Se.prod:Se.stage;async function a3({chainId:p,rpcUrl:m,env:u}){try{const v=u||mu(p),l=await la({chainId:p,rpcUrl:m,env:v}).read.getMintFee();return f2(String(l))}catch(v){throw new Error(ze(v))}}async function s3({chainId:p,rpcUrl:m,env:u=p2}){try{const t=await la({chainId:p,rpcUrl:m,env:u}).read.totalSupply();return f2(String(t))}catch(v){throw new Error(ze(v))}}async function bu({owner:p,chainId:m,rpcUrl:u,env:v=p2}){try{const t=v||mu(m),B=await la({chainId:m,rpcUrl:u,env:t}).read.nonces([p]);return String(B)}catch(t){throw new Error(ze(t))}}const i3=[{inputs:[{internalType:"address",name:"_owner",type:"address"},{internalType:"string",name:"_name",type:"string"},{internalType:"string",name:"_symbol",type:"string"},{internalType:"uint8",name:"_decimals",type:"uint8"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"address",name:"target",type:"address"}],name:"AddressEmptyCode",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"AddressInsufficientBalance",type:"error"},{inputs:[],name:"FailedInnerCall",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"AuthorityUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"shares",type:"uint256"}],name:"Enter",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!1,internalType:"uint256",name:"shares",type:"uint256"}],name:"Exit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"authority",outputs:[{internalType:"contract Authority",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"uint256",name:"assetAmount",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"shareAmount",type:"uint256"}],name:"enter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"uint256",name:"assetAmount",type:"uint256"},{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"shareAmount",type:"uint256"}],name:"exit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"hook",outputs:[{internalType:"contract BeforeTransferHook",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"targets",type:"address[]"},{internalType:"bytes[]",name:"data",type:"bytes[]"},{internalType:"uint256[]",name:"values",type:"uint256[]"}],name:"manage",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"data",type:"bytes"},{internalType:"uint256",name:"value",type:"uint256"}],name:"manage",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155BatchReceived",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC721Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_hook",type:"address"}],name:"setBeforeTransferHook",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],o3=[{inputs:[{internalType:"address",name:"_owner",type:"address"},{internalType:"address",name:"_vault",type:"address"},{internalType:"address",name:"payoutAddress",type:"address"},{internalType:"uint96",name:"startingExchangeRate",type:"uint96"},{internalType:"address",name:"_base",type:"address"},{internalType:"uint16",name:"allowedExchangeRateChangeUpper",type:"uint16"},{internalType:"uint16",name:"allowedExchangeRateChangeLower",type:"uint16"},{internalType:"uint24",name:"minimumUpdateDelayInSeconds",type:"uint24"},{internalType:"uint16",name:"managementFee",type:"uint16"},{internalType:"uint16",name:"performanceFee",type:"uint16"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccountantWithRateProviders__ExchangeRateAboveHighwaterMark",type:"error"},{inputs:[],name:"AccountantWithRateProviders__LowerBoundTooLarge",type:"error"},{inputs:[],name:"AccountantWithRateProviders__ManagementFeeTooLarge",type:"error"},{inputs:[],name:"AccountantWithRateProviders__OnlyCallableByBoringVault",type:"error"},{inputs:[],name:"AccountantWithRateProviders__Paused",type:"error"},{inputs:[],name:"AccountantWithRateProviders__PerformanceFeeTooLarge",type:"error"},{inputs:[],name:"AccountantWithRateProviders__UpdateDelayTooLarge",type:"error"},{inputs:[],name:"AccountantWithRateProviders__UpperBoundTooSmall",type:"error"},{inputs:[],name:"AccountantWithRateProviders__ZeroFeesOwed",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"AuthorityUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint24",name:"oldDelay",type:"uint24"},{indexed:!1,internalType:"uint24",name:"newDelay",type:"uint24"}],name:"DelayInSecondsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint96",name:"oldRate",type:"uint96"},{indexed:!1,internalType:"uint96",name:"newRate",type:"uint96"},{indexed:!1,internalType:"uint64",name:"currentTime",type:"uint64"}],name:"ExchangeRateUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"feeAsset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"FeesClaimed",type:"event"},{anonymous:!1,inputs:[],name:"HighwaterMarkReset",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"oldBound",type:"uint16"},{indexed:!1,internalType:"uint16",name:"newBound",type:"uint16"}],name:"LowerBoundUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"oldFee",type:"uint16"},{indexed:!1,internalType:"uint16",name:"newFee",type:"uint16"}],name:"ManagementFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldPayout",type:"address"},{indexed:!1,internalType:"address",name:"newPayout",type:"address"}],name:"PayoutAddressUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"oldFee",type:"uint16"},{indexed:!1,internalType:"uint16",name:"newFee",type:"uint16"}],name:"PerformanceFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"bool",name:"isPegged",type:"bool"},{indexed:!1,internalType:"address",name:"rateProvider",type:"address"}],name:"RateProviderUpdated",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"oldBound",type:"uint16"},{indexed:!1,internalType:"uint16",name:"newBound",type:"uint16"}],name:"UpperBoundUpdated",type:"event"},{inputs:[],name:"accountantState",outputs:[{internalType:"address",name:"payoutAddress",type:"address"},{internalType:"uint96",name:"highwaterMark",type:"uint96"},{internalType:"uint128",name:"feesOwedInBase",type:"uint128"},{internalType:"uint128",name:"totalSharesLastUpdate",type:"uint128"},{internalType:"uint96",name:"exchangeRate",type:"uint96"},{internalType:"uint16",name:"allowedExchangeRateChangeUpper",type:"uint16"},{internalType:"uint16",name:"allowedExchangeRateChangeLower",type:"uint16"},{internalType:"uint64",name:"lastUpdateTimestamp",type:"uint64"},{internalType:"bool",name:"isPaused",type:"bool"},{internalType:"uint24",name:"minimumUpdateDelayInSeconds",type:"uint24"},{internalType:"uint16",name:"managementFee",type:"uint16"},{internalType:"uint16",name:"performanceFee",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[],name:"authority",outputs:[{internalType:"contract Authority",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"base",outputs:[{internalType:"contract ERC20",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"feeAsset",type:"address"}],name:"claimFees",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRate",outputs:[{internalType:"uint256",name:"rate",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"quote",type:"address"}],name:"getRateInQuote",outputs:[{internalType:"uint256",name:"rateInQuote",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"quote",type:"address"}],name:"getRateInQuoteSafe",outputs:[{internalType:"uint256",name:"rateInQuote",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRateSafe",outputs:[{internalType:"uint256",name:"rate",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"",type:"address"}],name:"rateProviderData",outputs:[{internalType:"bool",name:"isPeggedToBase",type:"bool"},{internalType:"contract IRateProvider",name:"rateProvider",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"resetHighwaterMark",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"bool",name:"isPeggedToBase",type:"bool"},{internalType:"address",name:"rateProvider",type:"address"}],name:"setRateProviderData",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"minimumUpdateDelayInSeconds",type:"uint24"}],name:"updateDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint96",name:"newExchangeRate",type:"uint96"}],name:"updateExchangeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"allowedExchangeRateChangeLower",type:"uint16"}],name:"updateLower",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"managementFee",type:"uint16"}],name:"updateManagementFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"payoutAddress",type:"address"}],name:"updatePayoutAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"performanceFee",type:"uint16"}],name:"updatePerformanceFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"allowedExchangeRateChangeUpper",type:"uint16"}],name:"updateUpper",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"vault",outputs:[{internalType:"contract BoringVault",name:"",type:"address"}],stateMutability:"view",type:"function"}],u3=[{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"balanceOfInAssets",outputs:[{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDeposit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDepositWithPermit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"exchangeRate",outputs:[{internalType:"uint256",name:"rate",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"isTellerPaused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"previewDeposit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"totalAssets",outputs:[{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"userUnlockTime",outputs:[{internalType:"uint256",name:"time",type:"uint256"}],stateMutability:"view",type:"function"}],Br=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[],name:"Actions_ZeroAddress",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanMaximum",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"NoDepositorSet",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"PayloadTooLarge",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroDepositAmount",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"index",type:"uint256"},{components:[{internalType:"bytes",name:"permitPayload",type:"bytes"},{internalType:"bytes",name:"depositPayload",type:"bytes"},{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],indexed:!1,internalType:"struct StakeAndBake.StakeAndBakeData",name:"data",type:"tuple"}],name:"BatchStakeAndBakeReverted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"DepositorSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"FEE_OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAXIMUM_FEE",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"permitPayload",type:"bytes"},{internalType:"bytes",name:"depositPayload",type:"bytes"},{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],internalType:"struct StakeAndBake.StakeAndBakeData[]",name:"data",type:"tuple[]"}],name:"batchStakeAndBake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getStakeAndBakeDepositor",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getStakeAndBakeFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"lbtc_",type:"address"},{internalType:"address",name:"owner_",type:"address"},{internalType:"address",name:"operator_",type:"address"},{internalType:"uint256",name:"fee_",type:"uint256"},{internalType:"address",name:"claimer_",type:"address"},{internalType:"address",name:"pauser_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"callerConfirmation",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"depositor",type:"address"}],name:"setDepositor",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"permitPayload",type:"bytes"},{internalType:"bytes",name:"depositPayload",type:"bytes"},{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],internalType:"struct StakeAndBake.StakeAndBakeData",name:"data",type:"tuple"}],name:"stakeAndBake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],Ir=[{inputs:[{internalType:"address",name:"_owner",type:"address"},{internalType:"address",name:"_vault",type:"address"},{internalType:"address",name:"_accountant",type:"address"},{internalType:"address",name:"_weth",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"TellerWithMultiAssetSupport__AssetNotSupported",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__BadDepositHash",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__DualDeposit",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__MinimumAssetsNotMet",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__MinimumMintNotMet",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__Paused",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__PermitFailedAndAllowanceTooLow",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__ShareLockPeriodTooLong",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__SharePremiumTooLarge",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__SharesAreLocked",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__SharesAreUnLocked",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"TellerWithMultiAssetSupport__TransferDenied",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__ZeroAssets",type:"error"},{inputs:[],name:"TellerWithMultiAssetSupport__ZeroShares",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"AllowFrom",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"AllowOperator",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"AllowTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"bool",name:"allowDeposits",type:"bool"},{indexed:!1,internalType:"bool",name:"allowWithdraws",type:"bool"},{indexed:!1,internalType:"uint16",name:"sharePremium",type:"uint16"}],name:"AssetDataUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"AuthorityUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"depositAmount",type:"uint256"}],name:"BulkDeposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"shareAmount",type:"uint256"}],name:"BulkWithdraw",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"DenyFrom",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"DenyOperator",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"DenyTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!0,internalType:"address",name:"receiver",type:"address"},{indexed:!0,internalType:"address",name:"depositAsset",type:"address"},{indexed:!1,internalType:"uint256",name:"depositAmount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"shareAmount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"depositTimestamp",type:"uint256"},{indexed:!1,internalType:"uint256",name:"shareLockPeriodAtTimeOfDeposit",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!1,internalType:"bytes32",name:"depositHash",type:"bytes32"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"DepositRefunded",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{inputs:[],name:"accountant",outputs:[{internalType:"contract AccountantWithRateProviders",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"allowAll",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"allowFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"allowOperator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"allowTo",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"",type:"address"}],name:"assetData",outputs:[{internalType:"bool",name:"allowDeposits",type:"bool"},{internalType:"bool",name:"allowWithdraws",type:"bool"},{internalType:"uint16",name:"sharePremium",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[],name:"authority",outputs:[{internalType:"contract Authority",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"beforeTransfer",outputs:[],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"uint256",name:"minimumMint",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"bulkDeposit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"withdrawAsset",type:"address"},{internalType:"uint256",name:"shareAmount",type:"uint256"},{internalType:"uint256",name:"minimumAssets",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"bulkWithdraw",outputs:[{internalType:"uint256",name:"assetsOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"denyAll",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"denyFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"denyOperator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"denyTo",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"uint256",name:"minimumMint",type:"uint256"}],name:"deposit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"depositNonce",outputs:[{internalType:"uint96",name:"",type:"uint96"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"uint256",name:"minimumMint",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"depositWithPermit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"fromDenyList",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"isPaused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"nativeWrapper",outputs:[{internalType:"contract WETH",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"operatorDenyList",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"publicDepositHistory",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"address",name:"receiver",type:"address"},{internalType:"address",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"uint256",name:"shareAmount",type:"uint256"},{internalType:"uint256",name:"depositTimestamp",type:"uint256"},{internalType:"uint256",name:"shareLockUpPeriodAtTimeOfDeposit",type:"uint256"}],name:"refundDeposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"_shareLockPeriod",type:"uint64"}],name:"setShareLockPeriod",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"shareLockPeriod",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"shareUnlockTime",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"toDenyList",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"bool",name:"allowDeposits",type:"bool"},{internalType:"bool",name:"allowWithdraws",type:"bool"},{internalType:"uint16",name:"sharePremium",type:"uint16"}],name:"updateAssetData",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"vault",outputs:[{internalType:"contract BoringVault",name:"",type:"address"}],stateMutability:"view",type:"function"}],Sr=[{inputs:[{internalType:"address",name:"_owner",type:"address"},{internalType:"contract Authority",name:"_auth",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AtomicQueue__Paused",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"AtomicQueue__RequestDeadlineExceeded",type:"error"},{inputs:[],name:"AtomicQueue__SafeRequestAccountantOfferMismatch",type:"error"},{inputs:[],name:"AtomicQueue__SafeRequestCannotCastToUint88",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"AtomicQueue__SafeRequestDeadlineExceeded",type:"error"},{inputs:[],name:"AtomicQueue__SafeRequestDiscountTooLarge",type:"error"},{inputs:[{internalType:"uint256",name:"offerAmount",type:"uint256"},{internalType:"uint256",name:"offerAllowance",type:"uint256"}],name:"AtomicQueue__SafeRequestInsufficientOfferAllowance",type:"error"},{inputs:[{internalType:"uint256",name:"offerAmount",type:"uint256"},{internalType:"uint256",name:"offerBalance",type:"uint256"}],name:"AtomicQueue__SafeRequestOfferAmountGreaterThanOfferBalance",type:"error"},{inputs:[],name:"AtomicQueue__SafeRequestOfferAmountZero",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"AtomicQueue__UserNotInSolve",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"AtomicQueue__UserRepeated",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"AtomicQueue__ZeroOfferAmount",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"offerToken",type:"address"},{indexed:!0,internalType:"address",name:"wantToken",type:"address"},{indexed:!1,internalType:"uint256",name:"offerAmountSpent",type:"uint256"},{indexed:!1,internalType:"uint256",name:"wantAmountReceived",type:"uint256"},{indexed:!1,internalType:"uint256",name:"timestamp",type:"uint256"}],name:"AtomicRequestFulfilled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"offerToken",type:"address"},{indexed:!0,internalType:"address",name:"wantToken",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"deadline",type:"uint256"},{indexed:!1,internalType:"uint256",name:"minPrice",type:"uint256"},{indexed:!1,internalType:"uint256",name:"timestamp",type:"uint256"}],name:"AtomicRequestUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"AuthorityUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{inputs:[],name:"MAX_DISCOUNT",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"authority",outputs:[{internalType:"contract Authority",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"}],name:"getUserAtomicRequest",outputs:[{components:[{internalType:"uint64",name:"deadline",type:"uint64"},{internalType:"uint88",name:"atomicPrice",type:"uint88"},{internalType:"uint96",name:"offerAmount",type:"uint96"},{internalType:"bool",name:"inSolve",type:"bool"}],internalType:"struct AtomicQueue.AtomicRequest",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"address",name:"user",type:"address"},{components:[{internalType:"uint64",name:"deadline",type:"uint64"},{internalType:"uint88",name:"atomicPrice",type:"uint88"},{internalType:"uint96",name:"offerAmount",type:"uint96"},{internalType:"bool",name:"inSolve",type:"bool"}],internalType:"struct AtomicQueue.AtomicRequest",name:"userRequest",type:"tuple"}],name:"isAtomicRequestValid",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"isPaused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"},{components:[{internalType:"uint64",name:"deadline",type:"uint64"},{internalType:"uint88",name:"atomicPrice",type:"uint88"},{internalType:"uint96",name:"offerAmount",type:"uint96"},{internalType:"bool",name:"inSolve",type:"bool"}],internalType:"struct AtomicQueue.AtomicRequest",name:"userRequest",type:"tuple"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"},{internalType:"uint256",name:"discount",type:"uint256"}],name:"safeUpdateAtomicRequest",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract Authority",name:"newAuthority",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"},{internalType:"address[]",name:"users",type:"address[]"},{internalType:"bytes",name:"runData",type:"bytes"},{internalType:"address",name:"solver",type:"address"}],name:"solve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"},{components:[{internalType:"uint64",name:"deadline",type:"uint64"},{internalType:"uint88",name:"atomicPrice",type:"uint88"},{internalType:"uint96",name:"offerAmount",type:"uint96"},{internalType:"bool",name:"inSolve",type:"bool"}],internalType:"struct AtomicQueue.AtomicRequest",name:"userRequest",type:"tuple"}],name:"updateAtomicRequest",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"contract ERC20",name:"",type:"address"},{internalType:"contract ERC20",name:"",type:"address"}],name:"userAtomicRequest",outputs:[{internalType:"uint64",name:"deadline",type:"uint64"},{internalType:"uint88",name:"atomicPrice",type:"uint88"},{internalType:"uint96",name:"offerAmount",type:"uint96"},{internalType:"bool",name:"inSolve",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"},{internalType:"address[]",name:"users",type:"address[]"}],name:"viewSolveMetaData",outputs:[{components:[{internalType:"address",name:"user",type:"address"},{internalType:"uint8",name:"flags",type:"uint8"},{internalType:"uint256",name:"assetsToOffer",type:"uint256"},{internalType:"uint256",name:"assetsForWant",type:"uint256"}],internalType:"struct AtomicQueue.SolveMetaData[]",name:"metaData",type:"tuple[]"},{internalType:"uint256",name:"totalAssetsForWant",type:"uint256"},{internalType:"uint256",name:"totalAssetsToOffer",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"offer",type:"address"},{internalType:"contract ERC20",name:"want",type:"address"},{internalType:"address[]",name:"users",type:"address[]"}],name:"viewVerboseSolveMetaData",outputs:[{components:[{internalType:"address",name:"user",type:"address"},{internalType:"bool",name:"deadlineExceeded",type:"bool"},{internalType:"bool",name:"zeroOfferAmount",type:"bool"},{internalType:"bool",name:"insufficientOfferBalance",type:"bool"},{internalType:"bool",name:"insufficientOfferAllowance",type:"bool"},{internalType:"uint256",name:"assetsToOffer",type:"uint256"},{internalType:"uint256",name:"assetsForWant",type:"uint256"}],internalType:"struct AtomicQueue.VerboseSolveMetaData[]",name:"metaData",type:"tuple[]"},{internalType:"uint256",name:"totalAssetsForWant",type:"uint256"},{internalType:"uint256",name:"totalAssetsToOffer",type:"uint256"}],stateMutability:"view",type:"function"}],hu=[y0.ethereum,y0.base,y0.binanceSmartChain,y0.corn],F2=p=>hu.includes(p),gu={[y0.ethereum]:"ethereum",[y0.base]:"base",[y0.corn]:"corn",[y0.binanceSmartChain]:"bnb"},c3={ethereum:y0.ethereum,base:y0.base,corn:y0.corn,bnb:y0.binanceSmartChain},wu=[y0.ethereum,y0.binanceSmartChain,y0.binanceSmartChainTestnet,y0.holesky],Tu=p=>wu.includes(p),d3=y0.ethereum,l3="0x5401b8620E5FB570064CA9114fd1e135fd77D57c",p3="0x28634D0c5edC67CF2450E74deA49B90a4FF93dCE",f3="0x5232bc0F5999f8dA604c42E1748A13a170F94A1B",y3={[y0.ethereum]:{abi:Ir,address:"0x4E8f5128F473C6948127f9Cbca474a6700F99bab",chainId:y0.ethereum},[y0.base]:{abi:Ir,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:y0.base},[y0.binanceSmartChain]:{abi:Ir,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:y0.binanceSmartChain},[y0.corn]:{abi:Ir,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:y0.corn}},m3={[y0.ethereum]:{abi:Br,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:y0.ethereum},[y0.binanceSmartChain]:{abi:Br,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:y0.binanceSmartChain},[y0.holesky]:{abi:Br,address:"0x4A3cD83CEbb91E0Cd31EdA2Ee0F4AebfcCFCbBb6",chainId:y0.holesky},[y0.binanceSmartChainTestnet]:{abi:Br,address:"0x72143309A662bDB4aad5cA65Ab59eD8977D047C5",chainId:y0.binanceSmartChainTestnet}},b3={[y0.ethereum]:{abi:Sr,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:y0.ethereum},[y0.base]:{abi:Sr,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:y0.ethereum},[y0.binanceSmartChain]:{abi:Sr,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:y0.ethereum},[y0.corn]:{abi:Sr,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:y0.ethereum}};var ot=(p=>(p.Veda="veda",p))(ot||{});const Nt={veda:{defaultChainId:d3,chains:hu,stakeAndBakeChains:wu,decimals:8,vaultContract:{abi:i3,address:l3},accountantContract:{abi:o3,address:p3},lensContract:{abi:u3,address:f3},spenderContracts:m3,tellerContracts:y3,withdrawQueueContracts:b3,queueWithdrawDiscountPercent:"0.01",queueWithdrawDaysValid:"3"}};async function h3({vaultKey:p=ot.Veda,chainId:m,rpcUrl:u}){const v=Nt[p];if(!v)throw new Error(`Unknown vault key: ${p}`);if(!Tu(m))throw new Error(`Unsupported chain id: ${m}. Please switch to one of the supported chains: ${v.stakeAndBakeChains.join(", ")}`);const t=v.spenderContracts[m];if(!t)throw new Error("Could not retrieve the stake and bake contract.");try{const l=Je({chainId:m,rpcUrl:u}),M=await dr({abi:t.abi,address:t.address,client:l}).read.getStakeAndBakeFee();return f2(String(M))}catch(l){const B=ze(l);throw new Error(B)}}async function g3({account:p,spender:m,amount:u,chainId:v,provider:t,rpcUrl:l,env:B}){const M=Je({chainId:v,rpcUrl:l}),U=At({chainId:v,provider:t}),F=yn(v,B),W=Yn(u).toNumber(),{request:G}=await M.simulateContract({address:F.address,account:p,chain:wt[v],abi:F.abi,functionName:"approve",args:[m,BigInt(W)]});return await U.writeContract(G)}function w3(p){return p.startsWith("0x")}function Te(p){return w3(p)?p:`0x${p}`}async function T3({data:p,proofSignature:m,account:u,chainId:v,provider:t,rpcUrl:l,env:B}){const M=yn(v,B),U=await yu({chainId:v,rawPayload:p,env:B});if(U!==Bn.REPORTED)switch(U){case Bn.UNREPORTED:throw new Error("The deposit cannot be claimed because it is unreported or potentially still pending, please try again later.");case Bn.WITHDRAWN:throw new Error("The deposit cannot be claimed because it is withdrawn already.");default:throw new Error("The deposit cannot be claimed because it is blocked by bridge security.")}const F=Je({chainId:v,rpcUrl:l}),W=At({chainId:v,provider:t}),{request:G}=await F.simulateContract({address:M.address,account:u,chain:wt[v],abi:M.abi,functionName:"mint",args:[Te(p),Te(m)]});return await W.writeContract(G)}async function v3({account:p,chainId:m,provider:u}){const v=At({chainId:m,provider:u}),t=`destination chain id is ${m}`;return await v.signMessage({account:p,message:t})}const A3=1e3,x3=60*A3,E3=60*x3,gi=24*E3;function vu(){return Date.now()}function Au(p){return Math.round(p/1e3)}async function P3({fee:p,expiry:m=Au(vu()+gi),account:u,chainId:v,provider:t,env:l}){const B=yn(v,l),M=At({chainId:v,provider:t}),U={account:u,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:v,verifyingContract:B.address},message:{chainId:v,fee:BigInt(re(p).toFixed()),expiry:m},primaryType:"feeApproval",types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],feeApproval:[{name:"chainId",type:"uint256"},{name:"fee",type:"uint256"},{name:"expiry",type:"uint256"}]}};return{signature:await M.signTypedData(U),typedData:JSON.stringify(U,(W,G)=>typeof G=="bigint"?G.toString():G)}}async function k3({account:p,expiry:m=Au(vu()+gi),value:u,vaultKey:v=ot.Veda,chainId:t,provider:l,rpcUrl:B,env:M}){const U=Nt[v];if(!U)throw new Error(`Unknown vault key: ${v}`);if(!Tu(t))throw new Error(`Unsupported chain id: ${t}. Please switch to one of the supported chains: ${U.stakeAndBakeChains.join(", ")}`);const F=yn(t,M),W=At({chainId:t,provider:l}),G=U.spenderContracts[t],q=await bu({owner:p,chainId:t,rpcUrl:B}),D={account:p,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:BigInt(t),verifyingContract:F.address},types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},primaryType:"Permit",message:{owner:p,spender:G.address,value:BigInt(re(u).toFixed()),nonce:BigInt(q),deadline:BigInt(m)}};return{signature:await W.signTypedData(D),typedData:JSON.stringify(D,(Q,J)=>typeof J=="bigint"?J.toString():J)}}async function C3({btcAddress:p,amount:m,account:u,chainId:v,provider:t,rpcUrl:l,env:B}){const M=c8(p,B),U=Yn(m).toNumber(),F=yn(v,B),W=Je({chainId:v,rpcUrl:l}),G=At({provider:t,chainId:v}),{request:q}=await W.simulateContract({address:F.address,account:u,chain:wt[v],abi:F.abi,functionName:"redeem",args:[M,BigInt(U)]});return await G.writeContract(q)}async function xu({chainId:p,rpcUrl:m,vaultKey:u=ot.Veda}){const v=Nt[u];if(!v)throw new Error(`Unknown vault key: ${u}`);if(!F2(p))throw new Error(`Unsupported chain id: ${p}. Please switch to one of the supported chains: ${v.chains.join(", ")}`);try{const t=Je({chainId:p,rpcUrl:m}),B=await dr({abi:v.accountantContract.abi,address:v.accountantContract.address,client:t}).read.getRate();return f2(String(B))}catch(t){const l=ze(t);throw new Error(l)}}async function B3({chainId:p,rpcUrl:m,address:u,vaultKey:v=ot.Veda}){const t=Nt[v];if(!t)throw new Error(`Unknown vault key: ${v}`);if(!F2(p))throw new Error(`Unsupported chain id: ${p}. Please switch to one of the supported chains: ${t.chains.join(", ")}`);try{const l=Je({chainId:p,rpcUrl:m}),M=await dr({abi:t.lensContract.abi,address:t.lensContract.address,client:l}).read.balanceOf([u,t.vaultContract.address]),U=f2(String(M)),F=await xu({chainId:p,rpcUrl:m,vaultKey:v});return{balance:U,exchangeRate:F,balanceLbtc:U.multipliedBy(F)}}catch(l){const B=ze(l);throw new Error(B)}}function Eu(p){return BigInt(re(p).toFixed())}function I3(p,m,u){if(p==="LBTC")return yn(m,u)}async function wi(p,m,u,v){const t=I3(p,m,u);if(!t)return;const l=Je({chainId:m,rpcUrl:v}),[B,M]=await l.multicall({contracts:[{...t,functionName:"symbol"},{...t,functionName:"decimals"}]});if(B.status==="success"&&M.status==="success")return{address:t.address,abi:t.abi,symbol:String(B.result),decimals:Number(M.result)}}function Pu(p,m){return re(p).multipliedBy(re(10).pow(m)).decimalPlaces(0,re.ROUND_HALF_UP)}function Ke(p,m){return re(p).dividedBy(re(10).pow(m))}async function ku(p,m,u){const v=Je({chainId:m,rpcUrl:u}),[t,l]=await v.multicall({contracts:[{address:p,abi:Ea,functionName:"symbol"},{address:p,abi:Ea,functionName:"decimals"}]});if(t.status==="success"&&l.status==="success")return{address:p,abi:Ea,symbol:String(t.result),decimals:Number(l.result)}}async function S3({amount:p,approve:m=!0,token:u="LBTC",vaultKey:v=ot.Veda,account:t,chainId:l,provider:B,rpcUrl:M,env:U}){const F=Nt[v];if(!F)throw new Error(`Unknown vault key: ${v}`);if(!F2(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${F.chains.join(", ")}`);const W=Je({chainId:l,rpcUrl:M}),G=At({provider:B,chainId:l}),q=await wi(u,l,U,M);if(!q)throw new Error(`Unknown deposit token: ${u}`);const D=re(p),n0=Eu(Pu(D,q.decimals)),Q=await W.readContract({address:q.address,abi:q.abi,functionName:"allowance",args:[t,F.vaultContract.address]}),J=Ke(String(Q),q.decimals),a0=await W.readContract({address:q.address,abi:q.abi,functionName:"balanceOf",args:[t]}),o0=Ke(String(a0),q.decimals);if(D.isGreaterThan(o0))throw new Error(`The deposit amount exceeds the account's balance.
43
+ Deposit amount: ${D.toFixed()}
44
+ Balance: ${o0.toFixed()}`);if(D.isGreaterThan(J)){const v0=`The deposit amount exceeds allowance.
45
+ Deposit amount: ${D.toFixed()}
46
+ Allowance: ${J.toFixed()}`;if(!m)throw new Error(v0);console.info(v0);try{console.info(`Trying to approve ${n0}`);const{request:h0}=await W.simulateContract({account:t,chain:wt[l],address:q.address,abi:q.abi,functionName:"approve",args:[F.vaultContract.address,n0]}),f0=await G.writeContract(h0);console.info(`Approve tx hash: ${f0}`),console.info(`Approved ${n0} for ${F.vaultContract.address}`)}catch(h0){const f0=ze(h0);throw new Error(`Could not approve ${n0} for ${F.vaultContract.address}.
47
+ Reason: ${f0}`)}}const{request:c0}=await W.simulateContract({account:t,chain:wt[l],address:F.tellerContracts[l].address,abi:F.tellerContracts[l].abi,functionName:"deposit",args:[q.address,n0,0n]});return await G.writeContract(c0)}async function M3({amount:p,approve:m=!0,token:u="LBTC",vaultKey:v=ot.Veda,account:t,chainId:l,provider:B,rpcUrl:M,env:U}){const F=Nt[v];if(!F)throw new Error(`Unknown vault key: ${v}`);if(!F2(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${F.chains.join(", ")}`);const W=Je({chainId:l,rpcUrl:M}),G=At({provider:B,chainId:l}),q=await wi(u,l,U,M);if(!q)throw new Error(`Unknown withdraw token: ${u}`);const D=re(p),n0=Eu(Pu(D,F.decimals)),Q=await W.readContract({address:F.lensContract.address,abi:F.lensContract.abi,functionName:"balanceOf",args:[t,F.vaultContract.address]}),J=Ke(String(Q),F.decimals),a0=await W.readContract({address:F.vaultContract.address,abi:F.vaultContract.abi,functionName:"allowance",args:[t,F.withdrawQueueContracts[l].address]}),o0=Ke(String(a0),F.decimals);if(D.isGreaterThan(J))throw new Error(`The withdraw amount exceeds the account's balance.
48
+ Withdraw amount: ${D.toFixed()}
49
+ Balance: ${J.toFixed()}`);if(D.isGreaterThan(o0)){const f0=`The withdraw amount exceeds allowance.
50
+ Withdraw amount: ${D.toFixed()}
51
+ Allowance: ${o0.toFixed()}`;if(!m)throw new Error(f0);try{console.info(`Trying to approve ${n0}`);const{request:w0}=await W.simulateContract({account:t,chain:wt[l],address:F.vaultContract.address,abi:F.vaultContract.abi,functionName:"approve",args:[F.withdrawQueueContracts[l].address,n0]}),i0=await G.writeContract(w0);console.info(`Approve tx hash: ${i0}`),console.info(`Approved ${n0} for ${F.vaultContract.address}`)}catch(w0){const i0=ze(w0);throw new Error(`Could not approve ${n0} for ${F.vaultContract.address}.
52
+ Reason: ${i0}`)}}const c0=re(Date.now()).dividedBy(1e3).plus(re(F.queueWithdrawDaysValid).multipliedBy(gi/1e3)).decimalPlaces(0,re.ROUND_DOWN),p0=re(F.queueWithdrawDiscountPercent).multipliedBy(1e4),{request:v0}=await W.simulateContract({account:t,chain:wt[l],address:F.withdrawQueueContracts[l].address,abi:F.withdrawQueueContracts[l].abi,functionName:"safeUpdateAtomicRequest",args:[F.vaultContract.address,q.address,[c0.toFixed(0),0n,n0,!1],F.accountantContract.address,p0.toFixed(0)]});return await G.writeContract(v0)}async function R3({token:p="LBTC",vaultKey:m=ot.Veda,account:u,chainId:v,provider:t,rpcUrl:l,env:B}){const M=Nt[m];if(!M)throw new Error(`Unknown vault key: ${m}`);if(!F2(v))throw new Error(`Unsupported chain id: ${v}. Please switch to one of the supported chains: ${M.chains.join(", ")}`);const U=Je({chainId:v,rpcUrl:l}),F=At({provider:t,chainId:v}),W=await wi(p,v,B,l);if(!W)throw new Error(`Unknown withdraw token: ${p}`);const{request:G}=await U.simulateContract({account:u,chain:wt[v],address:M.withdrawQueueContracts[v].address,abi:M.withdrawQueueContracts[v].abi,functionName:"updateAtomicRequest",args:[M.vaultContract.address,W.address,[0,0,0,!1]]});return await F.writeContract(G)}function Cu(p){return p.filter((m,u,v)=>v.indexOf(m)===u)}function Cn(p,m,u="asc"){const v=[...p];return v.sort((t,l)=>{const B=m(t),M=m(l);return typeof B=="number"?B-M:typeof B=="string"?B.localeCompare(M):0}),u==="desc"&&v.reverse(),v}const N3="https://api.sevenseas.capital/deposits/{network}/{vault}/{account}";async function U3({account:p,chainId:m,vaultKey:u=ot.Veda,rpcUrl:v}){const t=Nt[u];if(!t)throw new Error(`Unknown vault key: ${u}`);if(!F2(m))throw new Error(`Unsupported chain id: ${m}. Please switch to one of the supported chains: ${t.chains.join(", ")}`);const l=gu[m],B=N3.replace("{network}",l).replace("{vault}",t.vaultContract.address).replace("{account}",p),{data:M}=await pe.get(B),U=Cu(M.map(G=>Te(G.deposit_asset))),F={};for(const G of U){const q=await ku(G,m,v);q?F[G]={address:q.address,decimals:q.decimals,symbol:q.symbol}:F[G]=void 0}const W=M.map(G=>{const q=F[Te(G.deposit_asset)],D=Ke(G.deposit_amount,(q==null?void 0:q.decimals)||0),n0=Ke(G.share_amount,t.decimals);return{txHash:Te(G.tx_hash),blockNumber:G.block_number,chainId:c3[G.chain],amount:D,shareAmount:n0,token:q}});return Cn(W,G=>G.blockNumber,"desc")}const O3="https://api.sevenseas.capital/withdrawRequests/{network}/{vault}/{account}?historical=true";async function L3({account:p,chainId:m,vaultKey:u=ot.Veda,rpcUrl:v}){const t=Nt[u];if(!t)throw new Error(`Unknown vault key: ${u}`);if(!F2(m))throw new Error(`Unsupported chain id: ${m}. Please switch to one of the supported chains: ${t.chains.join(", ")}`);const l=gu[m],B=O3.replace("{network}",l).replace("{vault}",t.vaultContract.address).replace("{account}",p),{data:M}=await pe.get(B),U=Cu([...M.Response.cancelled_requests.map(Q=>Te(Q.wantToken)),...M.Response.expired_requests.map(Q=>Te(Q.wantToken)),...M.Response.fulfilled_requests.map(Q=>Te(Q.Request.wantToken)),...M.Response.open_requests.map(Q=>Te(Q.wantToken))]),F={};for(const Q of U){const J=await ku(Q,m,v);J?F[Q]={address:J.address,decimals:J.decimals,symbol:J.symbol}:F[Q]=void 0}const W=M.Response.cancelled_requests.map(Q=>{const J=F[Te(Q.wantToken)];return{amount:void 0,blockNumber:Q.blockNumber,deadline:Q.deadline,shareAmount:Ke(Q.amount,t.decimals),timestamp:Q.timestamp,txHash:Te(Q.transactionHash),token:J}}),G=M.Response.expired_requests.map(Q=>{const J=F[Te(Q.wantToken)];return{amount:void 0,blockNumber:Q.blockNumber,deadline:Q.deadline,shareAmount:Ke(Q.amount,t.decimals),timestamp:Q.timestamp,txHash:Te(Q.transactionHash),token:J}}),q=M.Response.fulfilled_requests.map(Q=>{const J=F[Te(Q.Request.wantToken)];return{amount:Ke(Q.Fulfillment.wantAmountReceived,(J==null?void 0:J.decimals)||0),blockNumber:Q.Request.blockNumber,deadline:Q.Request.deadline,shareAmount:Ke(Q.Fulfillment.offerAmountSpent,t.decimals),timestamp:Q.Request.timestamp,txHash:Te(Q.Request.transactionHash),token:J,fulfilledBlockNumber:Q.Fulfillment.blockNumber,fulfilledTimestamp:Q.Fulfillment.timestamp,fulfilledTxHash:Te(Q.Fulfillment.transactionHash),minPrice:Ke(Q.Request.minPrice,(J==null?void 0:J.decimals)||0)}}),D=M.Response.open_requests.map(Q=>{const J=F[Te(Q.wantToken)];return{amount:void 0,blockNumber:Q.blockNumber,deadline:Q.deadline,shareAmount:Ke(Q.amount,t.decimals),timestamp:Q.timestamp,txHash:Te(Q.transactionHash),token:J,minPrice:Ke(Q.minPrice,(J==null?void 0:J.decimals)||0)}});return{cancelled:Cn(W,Q=>Q.timestamp,"desc"),expired:Cn(G,Q=>Q.timestamp,"desc"),fulfilled:Cn(q,Q=>Q.fulfilledTimestamp||Q.timestamp,"desc"),open:Cn(D,Q=>Q.timestamp,"desc")}}const D3="https://api.veda.tech/points/user/{account}";async function F3({account:p,vaultKey:m=ot.Veda}){const u=Nt[m];if(!u)throw new Error(`Unknown vault key: ${m}`);const v=D3.replace("{account}",p),{data:t}=await pe.get(v,{headers:{"Access-Control-Allow-Origin":"*","Content-Type":"application/json"}}),l={},B=Object.entries(t.Response);for(const[U,F]of B){if(U==="userTotalVedaPointsSum")continue;const W=Object.entries(F.vaults).find(([G])=>G===u.vaultContract.address);if(W){const[,G]=W,q=Number.isNaN(G.totalPoints)?0:G.totalPoints;l[U]=q}}let M=0;for(const U of Object.values(l))M+=U;return{totalPoints:M,pointsBreakdown:l}}var c2=(p=>(p.BABY="BABY",p))(c2||{});function fr(p){return p==="BABY"}const z3="/api/v1/distribution/account/{address}/fee";async function Bu({address:p,rewardToken:m,env:u}){if(!fr(m))throw new Error(`Unknown reward token: ${c2}`);const{baseApiUrl:v}=Be(u),{data:t}=await pe.get(z3.replace("{address}",p),{baseURL:v});return re(t.fee)}const H3="/api/v1/distribution/account/{from}/withdrawals/{to}/signing-data";async function Iu({from:p,to:m,amount:u,fee:v,rewardToken:t,env:l}){if(!fr(t))throw new Error(`Unknown reward token: ${c2}`);const{baseApiUrl:B}=Be(l),{data:M}=await pe.get(H3.replace("{from}",p).replace("{to}",m),{baseURL:B,params:{amount:re(u).toFixed(),fee:re(v).toFixed()}});return M.data}const V3="/api/v1/distribution/account/{address}/withdrawals";var Su=(p=>(p.Unspecified="WITHDRAWAL_STATUS_UNSPECIFIED",p.Pending="WITHDRAWAL_STATUS_PENDING",p.Sent="WITHDRAWAL_STATUS_SENT",p.Confirmed="WITHDRAWAL_STATUS_CONFIRMED",p))(Su||{});async function j3({address:p,env:m}){var l;const{baseApiUrl:u}=Be(m),{data:v}=await pe.get(V3.replace("{address}",p),{baseURL:u});return((l=v==null?void 0:v.withdrawals)==null?void 0:l.map(Mu))||[]}function Mu(p){return{amount:re(p.amount),rewardToken:c2.BABY,fee:re(p.fee),to:p.to,signature:Te(p.signature),status:p.status,txHash:p.tx_hash,timestamp:new Date(p.created_at)}}const q3="/api/v1/distribution/account/{from}/withdrawals/{to}";async function G3({account:p,rewardToken:m,amount:u,to:v,chainId:t,provider:l,env:B}){if(!fr(m))throw new Error(`Unknown reward token: ${c2}`);const M=At({chainId:t,provider:l}),U=await Bu({address:p,rewardToken:m,env:B}),F=await Iu({from:p,to:v,amount:u,fee:U,rewardToken:m,env:B}),W=await M.signMessage({account:p,message:F}),G={amount:re(u).toFixed(),fee:re(U).toFixed(),signature:W},{baseApiUrl:q}=Be(B),{data:D}=await pe.post(q3.replace("{from}",p).replace("{to}",v),G,{baseURL:q});return Mu(D.withdrawal)}var Ru=(p=>(p.Undefined="BLOCKCHAIN_TYPE_UNDEFINED",p.Evm="BLOCKCHAIN_TYPE_EVM",p.Sui="BLOCKCHAIN_TYPE_SUI",p.Solana="BLOCKCHAIN_TYPE_SOLANA",p.Cosmos="BLOCKCHAIN_TYPE_COSMOS",p))(Ru||{});const W3="/api/v1/distribution/account/{address}";async function Z3({address:p,rewardToken:m=c2.BABY,env:u}){if(!fr(m))throw new Error(`Unknown reward token: ${c2}`);const{baseApiUrl:v}=Be(u),{data:t}=await pe.get(W3.replace("{address}",p),{baseURL:v});return{address:p,availableBalance:re(t.account.available_balance),lockedBalance:re(t.account.locked_balance),pendingBalance:re(t.account.pending_balance),rewardToken:m,timestamp:new Date(t.account.created_at)}}exports.BTC_DECIMALS=n6;exports.BasculeDepositStatus=Bn;exports.BaseError=m0;exports.BlockchainIdentifier=Ie;exports.CHAIN_ID_TO_VIEM_CHAIN_MAP=wt;exports.ChainId=y0;exports.ENotarizationStatus=r6;exports.ESessionState=a6;exports.HttpRequestError=Z2;exports.RewardBlockchainType=Ru;exports.RewardToken=c2;exports.RewardWithdrawalStatus=Su;exports.SANCTIONED_ADDRESS=e6;exports.SATOSHI_SCALE=Gs;exports.SUI_DEVNET_CHAIN=V5;exports.SUI_LOCALNET_CHAIN=q5;exports.SUI_MAINNET_CHAIN=G5;exports.SUI_TESTNET_CHAIN=j5;exports.Vault=ot;exports.approveLBTC=g3;exports.call=or;exports.cancelWithdraw=R3;exports.claimLBTC=T3;exports.claimReward=G3;exports.concat=Bt;exports.decodeErrorResult=G4;exports.deposit=S3;exports.encodeAbiParameters=O2;exports.fromSatoshi=f2;exports.generateDepositBtcAddress=K5;exports.getApiConfig=Be;exports.getBasculeDepositStatus=yu;exports.getBaseNetworkByEnv=J4;exports.getBscNetworkByEnv=Q4;exports.getChainIdByName=qs;exports.getChainNameById=$r;exports.getDepositBtcAddress=Q5;exports.getDepositBtcAddresses=J5;exports.getDepositsByAddress=_5;exports.getEthNetworkByEnv=X4;exports.getLBTCExchangeRate=tp;exports.getLBTCMintingFee=a3;exports.getLBTCTotalSupply=s3;exports.getLbtcContractAddresses=hi;exports.getNetworkFeeSignature=np;exports.getPermitNonce=bu;exports.getPointsByAddress=rp;exports.getRewardBalances=Z3;exports.getRewardSigningData=Iu;exports.getRewardWithdrawalFee=Bu;exports.getRewardWithdrawals=j3;exports.getShareValue=xu;exports.getSharesByAddress=B3;exports.getSonicNetworkByEnv=$4;exports.getStakeAndBakeFee=h3;exports.getSuiNetworkByEnv=_4;exports.getUnstakesByAddress=ap;exports.getUrl=Xr;exports.getUserStakeAndBakeSignature=ip;exports.getVaultDeposits=U3;exports.getVaultPoints=F3;exports.getVaultWithdrawals=L3;exports.isAddressEqual=na;exports.isHex=ht;exports.isRewardTokenSupported=fr;exports.isValidChain=W5;exports.n=Se;exports.queueWithdraw=M3;exports.setReferral=up;exports.signLbtcDestinationAddr=v3;exports.signNetworkFee=P3;exports.signStakeAndBake=k3;exports.storeNetworkFeeSignature=cp;exports.storeStakeAndBakeSignature=dp;exports.stringify=Ae;exports.toSatoshi=Yn;exports.unstakeLBTC=C3;
53
+ //# sourceMappingURL=index2.cjs.map