@tonconnect/sdk 2.0.3 → 2.0.5
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.
- package/README.md +31 -4
- package/dist/tonconnect-sdk.min.js +1 -1
- package/dist/tonconnect-sdk.min.js.map +1 -1
- package/lib/cjs/provider/injected/injected-provider.js +41 -24
- package/lib/cjs/ton-connect.js +22 -11
- package/lib/cjs/wallets-list-manager.js +7 -4
- package/lib/esm/provider/injected/injected-provider.js +41 -24
- package/lib/esm/ton-connect.js +22 -11
- package/lib/esm/wallets-list-manager.js +7 -4
- package/lib/types/models/ton-connect-options.d.ts +4 -0
- package/lib/types/models/wallet/index.d.ts +1 -1
- package/lib/types/provider/injected/injected-provider.d.ts +6 -2
- package/lib/types/provider/injected/models/injected-wallet-api.d.ts +1 -1
- package/lib/types/ton-connect.d.ts +11 -1
- package/lib/types/wallets-list-manager.d.ts +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -64,16 +64,18 @@ If your manifest placed not in the root of your app, you can specify its path:
|
|
|
64
64
|
|
|
65
65
|
## Subscribe to the connection status changes
|
|
66
66
|
```js
|
|
67
|
-
connector.onStatusChange(
|
|
67
|
+
const unsubscribe = connector.onStatusChange(
|
|
68
68
|
walletInfo => {
|
|
69
69
|
// update state/reactive variables to show updates in the ui
|
|
70
70
|
}
|
|
71
71
|
);
|
|
72
|
+
|
|
73
|
+
// call `unsubscribe()` later to save resources when you don't need to listen for updates anymore.
|
|
72
74
|
```
|
|
73
75
|
|
|
74
76
|
## Fetch wallets list
|
|
75
77
|
|
|
76
|
-
TonConnect is build to support different wallets. You can fetch all supported wallets list and show a custom wallet selection dialog for user
|
|
78
|
+
TonConnect is build to support different wallets. You can fetch all supported wallets list and show a custom wallet selection dialog for user.
|
|
77
79
|
|
|
78
80
|
```ts
|
|
79
81
|
const walletsList = await connector.getWallets();
|
|
@@ -111,7 +113,7 @@ const walletConnectionSource = {
|
|
|
111
113
|
const universalLink = connector.connect(walletConnectionSource);
|
|
112
114
|
```
|
|
113
115
|
|
|
114
|
-
Then you have to show this link to user as QR code, or use it as a deeplink. You will receive an update in `connector.onStatusChange` when user approves connection in the wallet
|
|
116
|
+
Then you have to show this link to user as QR code, or use it as a deeplink. You will receive an update in `connector.onStatusChange` when user approves connection in the wallet.
|
|
115
117
|
|
|
116
118
|
### Initialize injected wallet connection
|
|
117
119
|
```ts
|
|
@@ -122,7 +124,32 @@ const walletConnectionSource = {
|
|
|
122
124
|
connector.connect(walletConnectionSource);
|
|
123
125
|
```
|
|
124
126
|
|
|
125
|
-
You will receive an update in `connector.onStatusChange` when user approves connection in the wallet
|
|
127
|
+
You will receive an update in `connector.onStatusChange` when user approves connection in the wallet.
|
|
128
|
+
|
|
129
|
+
### Detect embedded wallet
|
|
130
|
+
It is recommended not to show a QR code modal if the app is opened inside a wallet's browser.
|
|
131
|
+
You should detect working environment of the app and show appropriate UI.
|
|
132
|
+
Check `embedded` property in elements of the wallets list to detect if the app is opened inside a wallet.
|
|
133
|
+
|
|
134
|
+
```ts
|
|
135
|
+
import { isWalletInfoInjected, WalletInfoInjected } from '@tonconnect/sdk';
|
|
136
|
+
|
|
137
|
+
// "connect button" click handler.
|
|
138
|
+
// Execute this before show wallet selection modal.
|
|
139
|
+
|
|
140
|
+
const walletsList = await connector.getWallets(); // or use `walletsList` fetched before
|
|
141
|
+
|
|
142
|
+
const embeddedWallet = walletsList.find(
|
|
143
|
+
wallet => isWalletInfoInjected(wallet) && wallet.embedded
|
|
144
|
+
) as WalletInfoInjected;
|
|
145
|
+
|
|
146
|
+
if (embeddedWallet) {
|
|
147
|
+
connector.connect({ jsBridgeKey: embeddedWallet.jsBridgeKey });
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
// else show modal and ask user to select a wallet
|
|
152
|
+
```
|
|
126
153
|
|
|
127
154
|
## Send transaction
|
|
128
155
|
```ts
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var TonConnectSDK;(()=>{var __webpack_modules__={9939:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WrongAddressError=void 0;var n=r(8446);Object.defineProperty(t,"WrongAddressError",{enumerable:!0,get:function(){return n.WrongAddressError}})},8446:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WrongAddressError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WrongAddressError=o},5034:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseHexError=void 0;var n=r(6203);Object.defineProperty(t,"ParseHexError",{enumerable:!0,get:function(){return n.ParseHexError}})},6203:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseHexError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.ParseHexError=o},5186:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DappMetadataError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.DappMetadataError=o},7016:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownError=t.TonConnectError=void 0,o(r(5190),t),o(r(6129),t),o(r(7406),t),o(r(2854),t),o(r(9939),t),o(r(5034),t);var i=r(925);Object.defineProperty(t,"TonConnectError",{enumerable:!0,get:function(){return i.TonConnectError}});var s=r(6811);Object.defineProperty(t,"UnknownError",{enumerable:!0,get:function(){return s.UnknownError}})},7524:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UserRejectsError=void 0;var n=r(1092);Object.defineProperty(t,"UserRejectsError",{enumerable:!0,get:function(){return n.UserRejectsError}})},432:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ManifestContentErrorError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(e){super(e||""+o.additionalMessage),Object.setPrototypeOf(this,o.prototype)}}t.ManifestContentErrorError=o,o.additionalMessage="\nPassed `tonconnect-manifest.json` contains errors. Check format of your manifest. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"},5515:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ManifestNotFoundError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(e){super(e||""+o.additionalMessage),Object.setPrototypeOf(this,o.prototype)}}t.ManifestNotFoundError=o,o.additionalMessage="\nManifest not found. Make sure you added `tonconnect-manifest.json` to the root of your app or passed correct manifestUrl. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"},1092:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UserRejectsError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UserRejectsError=o},4851:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(7524),t)},5190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(4851),t),o(r(9450),t)},3701:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BadRequestError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.BadRequestError=o},9450:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownAppError=t.BadRequestError=void 0;var n=r(3701);Object.defineProperty(t,"BadRequestError",{enumerable:!0,get:function(){return n.BadRequestError}});var o=r(529);Object.defineProperty(t,"UnknownAppError",{enumerable:!0,get:function(){return o.UnknownAppError}})},529:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownAppError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UnknownAppError=o},7406:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalstorageNotFoundError=void 0;var n=r(1306);Object.defineProperty(t,"LocalstorageNotFoundError",{enumerable:!0,get:function(){return n.LocalstorageNotFoundError}})},1306:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalstorageNotFoundError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.LocalstorageNotFoundError=o},925:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TonConnectError=void 0;class r extends Error{constructor(e,t){e&&(e=r.prefix+" "+e),super(e,t),Object.setPrototypeOf(this,r.prototype)}}t.TonConnectError=r,r.prefix="[TON_CONNECT_SDK_ERROR]"},6811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UnknownError=o},6129:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotInjectedError=t.WalletNotConnectedError=t.WalletAlreadyConnectedError=void 0;var n=r(2590);Object.defineProperty(t,"WalletAlreadyConnectedError",{enumerable:!0,get:function(){return n.WalletAlreadyConnectedError}});var o=r(1087);Object.defineProperty(t,"WalletNotConnectedError",{enumerable:!0,get:function(){return o.WalletNotConnectedError}});var i=r(6557);Object.defineProperty(t,"WalletNotInjectedError",{enumerable:!0,get:function(){return i.WalletNotInjectedError}})},2590:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletAlreadyConnectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletAlreadyConnectedError=o},1087:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotConnectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotConnectedError=o},6557:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotInjectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotInjectedError=o},5951:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotSupportFeatureError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotSupportFeatureError=o},6897:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchWalletsError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.FetchWalletsError=o},2854:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchWalletsError=void 0;var n=r(6897);Object.defineProperty(t,"FetchWalletsError",{enumerable:!0,get:function(){return n.FetchWalletsError}})},4027:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.toUserFriendlyAddress=t.CHAIN=t.default=void 0,o(r(1567),t),o(r(1623),t),o(r(7016),t);var i=r(1567);Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i.TonConnect}});var s=r(827);Object.defineProperty(t,"CHAIN",{enumerable:!0,get:function(){return s.CHAIN}});var c=r(4914);Object.defineProperty(t,"toUserFriendlyAddress",{enumerable:!0,get:function(){return c.toUserFriendlyAddress}})},1623:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(1326),t),o(r(983),t)},950:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},983:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(950),t),o(r(4255),t)},4255:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},1326:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletInfoInjected=void 0;var n=r(5910);Object.defineProperty(t,"isWalletInfoInjected",{enumerable:!0,get:function(){return n.isWalletInfoInjected}})},656:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletConnectionSourceJS=void 0,t.isWalletConnectionSourceJS=function(e){return"jsBridgeKey"in e}},5910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletInfoInjected=void 0,t.isWalletInfoInjected=function(e){return"jsBridgeKey"in e}},3237:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.connectErrorsParser=void 0;const n=r(7016),o=r(432),i=r(5515),s=r(6811),c=r(827),a={[c.CONNECT_EVENT_ERROR_CODES.UNKNOWN_ERROR]:s.UnknownError,[c.CONNECT_EVENT_ERROR_CODES.USER_REJECTS_ERROR]:n.UserRejectsError,[c.CONNECT_EVENT_ERROR_CODES.BAD_REQUEST_ERROR]:n.BadRequestError,[c.CONNECT_EVENT_ERROR_CODES.UNKNOWN_APP_ERROR]:n.UnknownAppError,[c.CONNECT_EVENT_ERROR_CODES.MANIFEST_NOT_FOUND_ERROR]:i.ManifestNotFoundError,[c.CONNECT_EVENT_ERROR_CODES.MANIFEST_CONTENT_ERROR]:o.ManifestContentErrorError};t.connectErrorsParser=new class{parseError(e){let t=s.UnknownError;return e.code in a&&(t=a[e.code]||s.UnknownError),new t(e.message)}}},9946:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RpcParser=void 0,t.RpcParser=class{isError(e){return"error"in e}}},353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sendTransactionParser=void 0;const n=r(827),o=r(7016),i=r(6811),s=r(9946),c={[n.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_ERROR]:i.UnknownError,[n.SEND_TRANSACTION_ERROR_CODES.USER_REJECTS_ERROR]:o.UserRejectsError,[n.SEND_TRANSACTION_ERROR_CODES.BAD_REQUEST_ERROR]:o.BadRequestError,[n.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_APP_ERROR]:o.UnknownAppError};class a extends s.RpcParser{convertToRpcRequest(e){return{method:"sendTransaction",params:[JSON.stringify(e)]}}parseAndThrowError(e){let t=i.UnknownError;throw e.error.code in c&&(t=c[e.error.code]||i.UnknownError),new t(e.error.message)}convertFromRpcResponse(e){return{boc:e.result}}}t.sendTransactionParser=new a},3824:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __awaiter=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(exports,"__esModule",{value:!0}),exports.BridgeGateway=void 0;const protocol_1=__webpack_require__(827),errors_1=__webpack_require__(7016),http_bridge_gateway_storage_1=__webpack_require__(927),url_1=__webpack_require__(9372);if((0,protocol_1.isNode)())try{eval("global.EventSource = require('eventsource')"),eval("global.fetch = require('node-fetch')")}catch(e){console.error(e)}class BridgeGateway{constructor(e,t,r,n,o){this.bridgeUrl=t,this.sessionId=r,this.listener=n,this.errorsListener=o,this.ssePath="events",this.postPath="message",this.heartbeatMessage="heartbeat",this.defaultTtl=300,this.isClosed=!1,this.bridgeGatewayStorage=new http_bridge_gateway_storage_1.HttpBridgeGatewayStorage(e)}registerSession(){return __awaiter(this,void 0,void 0,(function*(){const e=new URL((0,url_1.addPathToUrl)(this.bridgeUrl,this.ssePath));e.searchParams.append("client_id",this.sessionId);const t=yield this.bridgeGatewayStorage.getLastEventId();return t&&e.searchParams.append("last_event_id",t),this.eventSource=new EventSource(e.toString()),new Promise(((e,t)=>{this.eventSource.onerror=t,this.eventSource.onopen=()=>{this.eventSource.onerror=this.errorsHandler.bind(this),this.eventSource.onmessage=this.messagesHandler.bind(this),e()}}))}))}send(e,t,r){return __awaiter(this,void 0,void 0,(function*(){const n=new URL((0,url_1.addPathToUrl)(this.bridgeUrl,this.postPath));n.searchParams.append("client_id",this.sessionId),n.searchParams.append("to",t),n.searchParams.append("ttl",(r||this.defaultTtl).toString()),yield fetch(n,{method:"post",body:protocol_1.Base64.encode(e)})}))}close(){var e;this.isClosed=!0,null===(e=this.eventSource)||void 0===e||e.close()}errorsHandler(e){var t,r;if(!this.isClosed){if((null===(t=this.eventSource)||void 0===t?void 0:t.readyState)===EventSource.CLOSED)return this.eventSource.close(),void this.registerSession();if((null===(r=this.eventSource)||void 0===r?void 0:r.readyState)===EventSource.CONNECTING)return void console.debug("[TON_CONNET_SDK_ERROR]: Bridge error",JSON.stringify(e));this.errorsListener(e)}}messagesHandler(e){return __awaiter(this,void 0,void 0,(function*(){if(e.data!==this.heartbeatMessage&&(yield this.bridgeGatewayStorage.storeLastEventId(e.lastEventId),!this.isClosed)){let t;try{t=JSON.parse(e.data)}catch(e){throw new errors_1.TonConnectError(`Bridge message parse failed, message ${e.data}`)}this.listener(t)}}))}}exports.BridgeGateway=BridgeGateway},8889:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BridgeProvider=void 0;const o=r(827),i=r(925),s=r(3824),c=r(8133),a=r(6446);class u{constructor(e,t){this.storage=e,this.walletConnectionSource=t,this.type="http",this.pendingRequests=new Map,this.nextRequestId=0,this.session=null,this.bridge=null,this.listeners=[],this.connectionStorage=new c.BridgeConnectionStorage(e)}static fromStorage(e){return n(this,void 0,void 0,(function*(){const t=new c.BridgeConnectionStorage(e),r=yield t.getHttpConnection();return new u(e,r.session.walletConnectionSource)}))}connect(e){var t;null===(t=this.bridge)||void 0===t||t.close();const r=new o.SessionCrypto;return this.session={sessionCrypto:r,walletConnectionSource:this.walletConnectionSource},this.bridge=new s.BridgeGateway(this.storage,this.walletConnectionSource.bridgeUrl,r.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),this.bridge.registerSession(),this.generateUniversalLink(e)}restoreConnection(){var e;return n(this,void 0,void 0,(function*(){null===(e=this.bridge)||void 0===e||e.close();const t=yield this.connectionStorage.getHttpConnection();t&&(this.session=t.session,this.bridge=new s.BridgeGateway(this.storage,this.walletConnectionSource.bridgeUrl,t.session.sessionCrypto.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),yield this.bridge.registerSession(),this.listeners.forEach((e=>e(t.connectEvent))))}))}sendRequest(e){return new Promise(((t,r)=>{const n=this.nextRequestId;if(this.nextRequestId++,!this.bridge||!this.session||!("walletPublicKey"in this.session))throw new i.TonConnectError("Trying to send bridge request without session");const s=this.session.sessionCrypto.encrypt(JSON.stringify(Object.assign(Object.assign({},e),{id:n})),(0,o.hexToByteArray)(this.session.walletPublicKey));this.bridge.send(s,this.session.walletPublicKey).catch(r),this.pendingRequests.set(n.toString(),t)}))}closeConnection(){var e;null===(e=this.bridge)||void 0===e||e.close(),this.listeners=[],this.session=null,this.bridge=null}disconnect(){var e;return null===(e=this.bridge)||void 0===e||e.close(),this.listeners=[],this.removeBridgeAndSession()}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}gatewayListener(e){return n(this,void 0,void 0,(function*(){const t=JSON.parse(this.session.sessionCrypto.decrypt(o.Base64.decode(e.message).toUint8Array(),(0,o.hexToByteArray)(e.from)));if(!("event"in t)){const e=t.id.toString(),r=this.pendingRequests.get(e);if(!r)throw new i.TonConnectError(`Response id ${e} doesn't match any request's id`);return r(t),void this.pendingRequests.delete(e)}"connect"===t.event&&(yield this.updateSession(t,e.from)),"disconnect"===t.event&&(yield this.removeBridgeAndSession()),this.listeners.forEach((e=>e(t)))}))}gatewayErrorsListener(e){return n(this,void 0,void 0,(function*(){throw new i.TonConnectError(`Bridge error ${JSON.stringify(e)}`)}))}updateSession(e,t){return n(this,void 0,void 0,(function*(){this.session=Object.assign(Object.assign({},this.session),{walletPublicKey:t});const r=e.payload.items.find((e=>"ton_addr"===e.name)),n=Object.assign(Object.assign({},e),{payload:Object.assign(Object.assign({},e.payload),{items:[r]})});yield this.connectionStorage.storeConnection({type:"http",session:this.session,connectEvent:n})}))}removeBridgeAndSession(){return n(this,void 0,void 0,(function*(){this.session=null,this.bridge=null,yield this.connectionStorage.removeConnection()}))}generateUniversalLink(e){const t=new URL(this.walletConnectionSource.universalLink);return t.searchParams.append("v",a.PROTOCOL_VERSION.toString()),t.searchParams.append("id",this.session.sessionCrypto.sessionId),t.searchParams.append("r",JSON.stringify(e)),t.toString()}}t.BridgeProvider=u},7544:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.InjectedProvider=void 0;const o=r(6557),i=r(8133),s=r(5684),c=r(6446);class a{constructor(e){this.type="injected",this.unsubscribeCallback=null,this.listenSubscriptions=!1,this.listeners=[];const t=a.window;if(!a.isWindowContainsWallet(t,e))throw new o.WalletNotInjectedError;this.injectedWallet=t[e].tonconnect}static fromStorage(e){return n(this,void 0,void 0,(function*(){const t=new i.BridgeConnectionStorage(e),r=yield t.getInjectedConnection();return new a(r.jsBridgeKey)}))}static isWalletInjected(e){return a.isWindowContainsWallet(this.window,e)}static isInsideWalletBrowser(e){return!!a.isWindowContainsWallet(this.window,e)&&this.window[e].tonconnect.isWalletBrowser}static isWindowContainsWallet(e,t){return!!e&&t in e&&"object"==typeof e[t]&&"tonconnect"in e[t]}connect(e,t=!1){this.injectedWallet.connect(c.PROTOCOL_VERSION,e,t).then((e=>{"connect"===e.event&&(this.makeSubscriptions(),this.listenSubscriptions=!0),this.listeners.forEach((t=>t(e)))})).catch((e=>{const t={event:"connect_error",payload:{code:0,message:null==e?void 0:e.toString()}};this.listeners.forEach((e=>e(t)))}))}restoreConnection(){return n(this,void 0,void 0,(function*(){try{const e=yield this.injectedWallet.restoreConnection();"connect"===e.event&&(this.makeSubscriptions(),this.listenSubscriptions=!0,this.listeners.forEach((t=>t(e))))}catch(e){console.error(e)}}))}closeConnection(){this.listenSubscriptions&&this.injectedWallet.disconnect(),this.closeAllListeners()}disconnect(){return this.closeAllListeners(),this.injectedWallet.disconnect(),Promise.resolve()}closeAllListeners(){var e;this.listenSubscriptions=!1,this.listeners=[],null===(e=this.unsubscribeCallback)||void 0===e||e.call(this)}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}sendRequest(e){return n(this,void 0,void 0,(function*(){return this.injectedWallet.send(Object.assign(Object.assign({},e),{id:"0"}))}))}makeSubscriptions(){this.unsubscribeCallback=this.injectedWallet.listen((e=>{this.listenSubscriptions&&this.listeners.forEach((t=>t(e))),"disconnect"===e.event&&this.disconnect()}))}}t.InjectedProvider=a,a.window=(0,s.getWindow)()},6446:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PROTOCOL_VERSION=void 0,t.PROTOCOL_VERSION=2},8133:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BridgeConnectionStorage=void 0;const o=r(827),i=r(7016);t.BridgeConnectionStorage=class{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_bridge-connection"}storeConnection(e){return n(this,void 0,void 0,(function*(){if("injected"===e.type)return this.storage.setItem(this.storeKey,JSON.stringify(e));const t={sessionKeyPair:e.session.sessionCrypto.stringifyKeypair(),walletPublicKey:e.session.walletPublicKey,walletConnectionSource:e.session.walletConnectionSource},r={type:"http",connectEvent:e.connectEvent,session:t};return this.storage.setItem(this.storeKey,JSON.stringify(r))}))}removeConnection(){return n(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;const t=JSON.parse(e);if("injected"===t.type)return t;const r=new o.SessionCrypto(t.session.sessionKeyPair);return{type:"http",connectEvent:t.connectEvent,session:{sessionCrypto:r,walletConnectionSource:t.session.walletConnectionSource,walletPublicKey:t.session.walletPublicKey}}}))}getHttpConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new i.TonConnectError("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new i.TonConnectError("Trying to read HTTP connection source while injected connection is stored");return e}))}getInjectedConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new i.TonConnectError("Trying to read Injected bridge connection source while nothing is stored");if("http"===(null==e?void 0:e.type))throw new i.TonConnectError("Trying to read Injected bridge connection source while HTTP connection is stored");return e}))}storedConnectionType(){return n(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);return e?JSON.parse(e).type:null}))}}},408:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultStorage=void 0;const o=r(1306),i=r(5684);t.DefaultStorage=class{constructor(){const e=(0,i.getWindow)();if(!(null==e?void 0:e.localStorage))throw new o.LocalstorageNotFoundError;this.window=e}getItem(e){return n(this,void 0,void 0,(function*(){return Promise.resolve(this.window.localStorage.getItem(e))}))}removeItem(e){return n(this,void 0,void 0,(function*(){return this.window.localStorage.removeItem(e),Promise.resolve()}))}setItem(e,t){return this.window.localStorage.setItem(e,t),Promise.resolve()}}},927:function(e,t){"use strict";var r=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.HttpBridgeGatewayStorage=void 0,t.HttpBridgeGatewayStorage=class{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_http-bridge-gateway"}storeLastEventId(e){return r(this,void 0,void 0,(function*(){return this.storage.setItem(this.storeKey,e)}))}removeLastEventId(){return r(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getLastEventId(){return r(this,void 0,void 0,(function*(){return(yield this.storage.getItem(this.storeKey))||null}))}}},1567:function(e,t,r){"use strict";var n,o=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))},i=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};Object.defineProperty(t,"__esModule",{value:!0}),t.TonConnect=void 0;const s=r(5186),c=r(432),a=r(5515),u=r(925),l=r(2590),d=r(1087),h=r(5951),f=r(656),p=r(3237),y=r(353),_=r(8889),v=r(7544),g=r(8133),b=r(408),w=r(5684),E=r(1302);class O{constructor(e){if(this.walletsList=new E.WalletsListManager,this._wallet=null,this.provider=null,this.statusChangeSubscriptions=[],this.statusChangeErrorSubscriptions=[],this.dappSettings={manifestUrl:(null==e?void 0:e.manifestUrl)||(0,w.getWebPageManifest)(),storage:(null==e?void 0:e.storage)||new b.DefaultStorage},!this.dappSettings.manifestUrl)throw new s.DappMetadataError("Dapp tonconnect-manifest.json must be specified if window.location.origin is undefined. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest");this.bridgeConnectionStorage=new g.BridgeConnectionStorage(this.dappSettings.storage)}get connected(){return null!==this._wallet}get account(){var e;return(null===(e=this._wallet)||void 0===e?void 0:e.account)||null}get wallet(){return this._wallet}set wallet(e){this._wallet=e,this.statusChangeSubscriptions.forEach((e=>e(this._wallet)))}getWallets(){return this.walletsList.getWallets()}onStatusChange(e,t){return this.statusChangeSubscriptions.push(e),t&&this.statusChangeErrorSubscriptions.push(t),()=>{this.statusChangeSubscriptions=this.statusChangeSubscriptions.filter((t=>t!==e)),t&&(this.statusChangeErrorSubscriptions=this.statusChangeErrorSubscriptions.filter((e=>e!==t)))}}connect(e,t){var r;if(this.connected)throw new l.WalletAlreadyConnectedError;return null===(r=this.provider)||void 0===r||r.closeConnection(),this.provider=this.createProvider(e),this.provider.connect(this.createConnectRequest(t))}restoreConnection(){return o(this,void 0,void 0,(function*(){const[e,t]=yield Promise.all([this.bridgeConnectionStorage.storedConnectionType(),this.walletsList.getEmbeddedWallet()]);switch(e){case"http":this.provider=yield _.BridgeProvider.fromStorage(this.dappSettings.storage);break;case"injected":this.provider=yield v.InjectedProvider.fromStorage(this.dappSettings.storage);break;default:if(!t)return;this.provider=yield this.createProvider(t)}return this.provider.listen(this.walletEventsListener.bind(this)),this.provider.restoreConnection()}))}sendTransaction(e){return o(this,void 0,void 0,(function*(){this.checkConnection(),this.checkFeatureSupport("SendTransaction");const{validUntil:t}=e,r=i(e,["validUntil"]),n=yield this.provider.sendRequest(y.sendTransactionParser.convertToRpcRequest(Object.assign(Object.assign({},r),{valid_until:t})));return y.sendTransactionParser.isError(n)?y.sendTransactionParser.parseAndThrowError(n):y.sendTransactionParser.convertFromRpcResponse(n)}))}disconnect(){return o(this,void 0,void 0,(function*(){if(!this.connected)throw new d.WalletNotConnectedError;yield this.provider.disconnect(),this.onWalletDisconnected()}))}createProvider(e){let t;return t=(0,f.isWalletConnectionSourceJS)(e)?new v.InjectedProvider(e.jsBridgeKey):new _.BridgeProvider(this.dappSettings.storage,e),t.listen(this.walletEventsListener.bind(this)),t}walletEventsListener(e){switch(e.event){case"connect":this.onWalletConnected(e.payload);break;case"connect_error":this.onWalletConnectError(e.payload);break;case"disconnect":this.onWalletDisconnected()}}onWalletConnected(e){const t=e.items.find((e=>"ton_addr"===e.name)),r=e.items.find((e=>"ton_proof"===e.name));if(!t)throw new u.TonConnectError("ton_addr connection item was not found");const n={device:e.device,provider:this.provider.type,account:{address:t.address,chain:t.network,walletStateInit:t.walletStateInit}};r&&(n.connectItems={tonProof:r}),this.wallet=n}onWalletConnectError(e){const t=p.connectErrorsParser.parseError(e);if(this.statusChangeErrorSubscriptions.forEach((e=>e(t))),console.debug(t),t instanceof a.ManifestNotFoundError||t instanceof c.ManifestContentErrorError)throw console.error(t),t}onWalletDisconnected(){this.wallet=null}checkConnection(){if(!this.connected)throw new d.WalletNotConnectedError}checkFeatureSupport(e){var t;if(!(null===(t=this.wallet)||void 0===t?void 0:t.device.features.includes(e)))throw new h.WalletNotSupportFeatureError}createConnectRequest(e){const t=[{name:"ton_addr"}];return(null==e?void 0:e.tonProof)&&t.push({name:"ton_proof",payload:e.tonProof}),{manifestUrl:this.dappSettings.manifestUrl,items:t}}}t.TonConnect=O,n=O,O.walletsList=new E.WalletsListManager,O.getWallets=n.walletsList.getWallets()},4914:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toUserFriendlyAddress=void 0;const n=r(7016),o=r(827);t.toUserFriendlyAddress=function(e){const{wc:t,hex:r}=function(e){if(!e.includes(":"))throw new n.WrongAddressError(`Wrong address ${e}. Address must include ":".`);const t=e.split(":");if(2!==t.length)throw new n.WrongAddressError(`Wrong address ${e}. Address must include ":" only once.`);const r=parseInt(t[0]);if(0!==r&&-1!==r)throw new n.WrongAddressError(`Wrong address ${e}. WC must be eq 0 or -1, but ${r} received.`);const o=t[1];if(64!==(null==o?void 0:o.length))throw new n.WrongAddressError(`Wrong address ${e}. Hex part must be 64bytes length, but ${null==o?void 0:o.length} received.`);return{wc:r,hex:s(o)}}(e),i=new Int8Array(34);i[0]=17,i[1]=t,i.set(r,2);const c=new Uint8Array(36);return c.set(i),c.set(function(e){let t=0;const r=new Uint8Array(e.length+2);r.set(e);for(let e of r){let r=128;for(;r>0;)t<<=1,e&r&&(t+=1),r>>=1,t>65535&&(t&=65535,t^=4129)}return new Uint8Array([Math.floor(t/256),t%256])}(i),34),o.Base64.encode(c).replace(/\+/g,"-").replace(/\//g,"_")};const i={};for(let e=0;e<=255;e++){let t=e.toString(16);t.length<2&&(t="0"+t),i[t]=e}function s(e){const t=(e=e.toLowerCase()).length;if(t%2!=0)throw new n.ParseHexError("Hex string must have length a multiple of 2: "+e);const r=t/2,o=new Uint8Array(r);for(let t=0;t<r;t++){const r=2*t,s=e.substring(r,r+2);if(!i.hasOwnProperty(s))throw new n.ParseHexError("Invalid hex character: "+s);o[t]=i[s]}return o}},9372:(e,t)=>{"use strict";function r(e){return"/"===e.slice(-1)?e.slice(0,-1):e}Object.defineProperty(t,"__esModule",{value:!0}),t.addPathToUrl=t.removeUrlLastSlash=void 0,t.removeUrlLastSlash=r,t.addPathToUrl=function(e,t){return r(e)+"/"+t}},5684:(e,t)=>{"use strict";function r(){if("undefined"!=typeof window)return window}Object.defineProperty(t,"__esModule",{value:!0}),t.getWebPageManifest=t.getDocument=t.getWindow=void 0,t.getWindow=r,t.getDocument=function(){if("undefined"!=typeof document)return document},t.getWebPageManifest=function(){var e;const t=null===(e=r())||void 0===e?void 0:e.location.origin;return t?t+"/tonconnect-manifest.json":""}},1302:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.WalletsListManager=void 0;const o=r(6897),i=r(5910),s=r(7544);t.WalletsListManager=class{constructor(){this.walletsListCache=null,this.walletsListSource="https://raw.githubusercontent.com/ton-connect/wallets-list/main/wallets.json"}getWallets(){return n(this,void 0,void 0,(function*(){return this.walletsListCache||(this.walletsListCache=this.fetchWalletsList(),this.walletsListCache.catch((()=>this.walletsListCache=null))),this.walletsListCache}))}getEmbeddedWallet(){return n(this,void 0,void 0,(function*(){const e=(yield this.getWallets()).filter(i.isWalletInfoInjected);return 1!==e.length?null:e[0].embedded?e[0]:null}))}fetchWalletsList(){return n(this,void 0,void 0,(function*(){try{const e=yield fetch(this.walletsListSource),t=yield e.json();if(!Array.isArray(t)||!t.every((e=>this.isCorrectWalletConfigDTO(e))))throw new o.FetchWalletsError("Wrong wallets list format");return this.walletConfigDTOListToWalletConfigList(t)}catch(e){throw new o.FetchWalletsError(e)}}))}walletConfigDTOListToWalletConfigList(e){return e.map((e=>{const t={name:e.name,imageUrl:e.image,aboutUrl:e.about_url,tondns:e.tondns};return e.bridge.forEach((r=>{if("sse"===r.type&&(t.bridgeUrl=r.url,t.universalLink=e.universal_url,t.deepLink=e.deepLink),"js"===r.type){const e=r.key;t.jsBridgeKey=e,t.injected=s.InjectedProvider.isWalletInjected(e),t.embedded=s.InjectedProvider.isInsideWalletBrowser(e)}})),t}))}isCorrectWalletConfigDTO(e){if(!e||"object"!=typeof e)return!1;if(!("name"in e)||!("image"in e)||!("about_url"in e))return!1;if(!("bridge"in e)||!Array.isArray(e.bridge)||!e.bridge.length)return!1;const t=e.bridge;if(t.some((e=>!e||"object"!=typeof e||!("type"in e))))return!1;const r=t.find((e=>"sse"===e.type));if(r&&(!("url"in r)||!r.url||!e.universal_url))return!1;const n=t.find((e=>"js"===e.type));return!!(!n||"key"in n&&n.key)}}},251:function(e){!function(t,r){"use strict";e.exports?e.exports=r():(t.nacl||(t.nacl={}),t.nacl.util=r())}(this,(function(){"use strict";var e={};function t(e){if(!/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.test(e))throw new TypeError("invalid encoding")}return e.decodeUTF8=function(e){if("string"!=typeof e)throw new TypeError("expected string");var t,r=unescape(encodeURIComponent(e)),n=new Uint8Array(r.length);for(t=0;t<r.length;t++)n[t]=r.charCodeAt(t);return n},e.encodeUTF8=function(e){var t,r=[];for(t=0;t<e.length;t++)r.push(String.fromCharCode(e[t]));return decodeURIComponent(escape(r.join("")))},"undefined"==typeof atob?void 0!==Buffer.from?(e.encodeBase64=function(e){return Buffer.from(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(Buffer.from(e,"base64"),0))}):(e.encodeBase64=function(e){return new Buffer(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(new Buffer(e,"base64"),0))}):(e.encodeBase64=function(e){var t,r=[],n=e.length;for(t=0;t<n;t++)r.push(String.fromCharCode(e[t]));return btoa(r.join(""))},e.decodeBase64=function(e){t(e);var r,n=atob(e),o=new Uint8Array(n.length);for(r=0;r<n.length;r++)o[r]=n.charCodeAt(r);return o}),e}))},717:(e,t,r)=>{!function(e){"use strict";var t=function(e){var t,r=new Float64Array(16);if(e)for(t=0;t<e.length;t++)r[t]=e[t];return r},n=function(){throw new Error("no PRNG")},o=new Uint8Array(16),i=new Uint8Array(32);i[0]=9;var s=t(),c=t([1]),a=t([56129,1]),u=t([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),l=t([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),d=t([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),h=t([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=t([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function p(e,t,r,n){e[t]=r>>24&255,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r,e[t+4]=n>>24&255,e[t+5]=n>>16&255,e[t+6]=n>>8&255,e[t+7]=255&n}function y(e,t,r,n,o){var i,s=0;for(i=0;i<o;i++)s|=e[t+i]^r[n+i];return(1&s-1>>>8)-1}function _(e,t,r,n){return y(e,t,r,n,16)}function v(e,t,r,n){return y(e,t,r,n,32)}function g(e,t,r,n){!function(e,t,r,n){for(var o,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,c=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,a=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,l=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,_=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,v=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,g=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,w=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,E=i,O=s,S=c,R=a,P=u,C=l,j=d,m=h,T=f,N=p,A=y,U=_,M=v,x=g,W=b,I=w,B=0;B<20;B+=2)E^=(o=(M^=(o=(T^=(o=(P^=(o=E+M|0)<<7|o>>>25)+E|0)<<9|o>>>23)+P|0)<<13|o>>>19)+T|0)<<18|o>>>14,C^=(o=(O^=(o=(x^=(o=(N^=(o=C+O|0)<<7|o>>>25)+C|0)<<9|o>>>23)+N|0)<<13|o>>>19)+x|0)<<18|o>>>14,A^=(o=(j^=(o=(S^=(o=(W^=(o=A+j|0)<<7|o>>>25)+A|0)<<9|o>>>23)+W|0)<<13|o>>>19)+S|0)<<18|o>>>14,I^=(o=(U^=(o=(m^=(o=(R^=(o=I+U|0)<<7|o>>>25)+I|0)<<9|o>>>23)+R|0)<<13|o>>>19)+m|0)<<18|o>>>14,E^=(o=(R^=(o=(S^=(o=(O^=(o=E+R|0)<<7|o>>>25)+E|0)<<9|o>>>23)+O|0)<<13|o>>>19)+S|0)<<18|o>>>14,C^=(o=(P^=(o=(m^=(o=(j^=(o=C+P|0)<<7|o>>>25)+C|0)<<9|o>>>23)+j|0)<<13|o>>>19)+m|0)<<18|o>>>14,A^=(o=(N^=(o=(T^=(o=(U^=(o=A+N|0)<<7|o>>>25)+A|0)<<9|o>>>23)+U|0)<<13|o>>>19)+T|0)<<18|o>>>14,I^=(o=(W^=(o=(x^=(o=(M^=(o=I+W|0)<<7|o>>>25)+I|0)<<9|o>>>23)+M|0)<<13|o>>>19)+x|0)<<18|o>>>14;E=E+i|0,O=O+s|0,S=S+c|0,R=R+a|0,P=P+u|0,C=C+l|0,j=j+d|0,m=m+h|0,T=T+f|0,N=N+p|0,A=A+y|0,U=U+_|0,M=M+v|0,x=x+g|0,W=W+b|0,I=I+w|0,e[0]=E>>>0&255,e[1]=E>>>8&255,e[2]=E>>>16&255,e[3]=E>>>24&255,e[4]=O>>>0&255,e[5]=O>>>8&255,e[6]=O>>>16&255,e[7]=O>>>24&255,e[8]=S>>>0&255,e[9]=S>>>8&255,e[10]=S>>>16&255,e[11]=S>>>24&255,e[12]=R>>>0&255,e[13]=R>>>8&255,e[14]=R>>>16&255,e[15]=R>>>24&255,e[16]=P>>>0&255,e[17]=P>>>8&255,e[18]=P>>>16&255,e[19]=P>>>24&255,e[20]=C>>>0&255,e[21]=C>>>8&255,e[22]=C>>>16&255,e[23]=C>>>24&255,e[24]=j>>>0&255,e[25]=j>>>8&255,e[26]=j>>>16&255,e[27]=j>>>24&255,e[28]=m>>>0&255,e[29]=m>>>8&255,e[30]=m>>>16&255,e[31]=m>>>24&255,e[32]=T>>>0&255,e[33]=T>>>8&255,e[34]=T>>>16&255,e[35]=T>>>24&255,e[36]=N>>>0&255,e[37]=N>>>8&255,e[38]=N>>>16&255,e[39]=N>>>24&255,e[40]=A>>>0&255,e[41]=A>>>8&255,e[42]=A>>>16&255,e[43]=A>>>24&255,e[44]=U>>>0&255,e[45]=U>>>8&255,e[46]=U>>>16&255,e[47]=U>>>24&255,e[48]=M>>>0&255,e[49]=M>>>8&255,e[50]=M>>>16&255,e[51]=M>>>24&255,e[52]=x>>>0&255,e[53]=x>>>8&255,e[54]=x>>>16&255,e[55]=x>>>24&255,e[56]=W>>>0&255,e[57]=W>>>8&255,e[58]=W>>>16&255,e[59]=W>>>24&255,e[60]=I>>>0&255,e[61]=I>>>8&255,e[62]=I>>>16&255,e[63]=I>>>24&255}(e,t,r,n)}function b(e,t,r,n){!function(e,t,r,n){for(var o,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,c=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,a=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,l=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,_=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,v=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,g=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,w=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,E=0;E<20;E+=2)i^=(o=(v^=(o=(f^=(o=(u^=(o=i+v|0)<<7|o>>>25)+i|0)<<9|o>>>23)+u|0)<<13|o>>>19)+f|0)<<18|o>>>14,l^=(o=(s^=(o=(g^=(o=(p^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+p|0)<<13|o>>>19)+g|0)<<18|o>>>14,y^=(o=(d^=(o=(c^=(o=(b^=(o=y+d|0)<<7|o>>>25)+y|0)<<9|o>>>23)+b|0)<<13|o>>>19)+c|0)<<18|o>>>14,w^=(o=(_^=(o=(h^=(o=(a^=(o=w+_|0)<<7|o>>>25)+w|0)<<9|o>>>23)+a|0)<<13|o>>>19)+h|0)<<18|o>>>14,i^=(o=(a^=(o=(c^=(o=(s^=(o=i+a|0)<<7|o>>>25)+i|0)<<9|o>>>23)+s|0)<<13|o>>>19)+c|0)<<18|o>>>14,l^=(o=(u^=(o=(h^=(o=(d^=(o=l+u|0)<<7|o>>>25)+l|0)<<9|o>>>23)+d|0)<<13|o>>>19)+h|0)<<18|o>>>14,y^=(o=(p^=(o=(f^=(o=(_^=(o=y+p|0)<<7|o>>>25)+y|0)<<9|o>>>23)+_|0)<<13|o>>>19)+f|0)<<18|o>>>14,w^=(o=(b^=(o=(g^=(o=(v^=(o=w+b|0)<<7|o>>>25)+w|0)<<9|o>>>23)+v|0)<<13|o>>>19)+g|0)<<18|o>>>14;e[0]=i>>>0&255,e[1]=i>>>8&255,e[2]=i>>>16&255,e[3]=i>>>24&255,e[4]=l>>>0&255,e[5]=l>>>8&255,e[6]=l>>>16&255,e[7]=l>>>24&255,e[8]=y>>>0&255,e[9]=y>>>8&255,e[10]=y>>>16&255,e[11]=y>>>24&255,e[12]=w>>>0&255,e[13]=w>>>8&255,e[14]=w>>>16&255,e[15]=w>>>24&255,e[16]=d>>>0&255,e[17]=d>>>8&255,e[18]=d>>>16&255,e[19]=d>>>24&255,e[20]=h>>>0&255,e[21]=h>>>8&255,e[22]=h>>>16&255,e[23]=h>>>24&255,e[24]=f>>>0&255,e[25]=f>>>8&255,e[26]=f>>>16&255,e[27]=f>>>24&255,e[28]=p>>>0&255,e[29]=p>>>8&255,e[30]=p>>>16&255,e[31]=p>>>24&255}(e,t,r,n)}var w=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function E(e,t,r,n,o,i,s){var c,a,u=new Uint8Array(16),l=new Uint8Array(64);for(a=0;a<16;a++)u[a]=0;for(a=0;a<8;a++)u[a]=i[a];for(;o>=64;){for(g(l,u,s,w),a=0;a<64;a++)e[t+a]=r[n+a]^l[a];for(c=1,a=8;a<16;a++)c=c+(255&u[a])|0,u[a]=255&c,c>>>=8;o-=64,t+=64,n+=64}if(o>0)for(g(l,u,s,w),a=0;a<o;a++)e[t+a]=r[n+a]^l[a];return 0}function O(e,t,r,n,o){var i,s,c=new Uint8Array(16),a=new Uint8Array(64);for(s=0;s<16;s++)c[s]=0;for(s=0;s<8;s++)c[s]=n[s];for(;r>=64;){for(g(a,c,o,w),s=0;s<64;s++)e[t+s]=a[s];for(i=1,s=8;s<16;s++)i=i+(255&c[s])|0,c[s]=255&i,i>>>=8;r-=64,t+=64}if(r>0)for(g(a,c,o,w),s=0;s<r;s++)e[t+s]=a[s];return 0}function S(e,t,r,n,o){var i=new Uint8Array(32);b(i,n,o,w);for(var s=new Uint8Array(8),c=0;c<8;c++)s[c]=n[c+16];return O(e,t,r,s,i)}function R(e,t,r,n,o,i,s){var c=new Uint8Array(32);b(c,i,s,w);for(var a=new Uint8Array(8),u=0;u<8;u++)a[u]=i[u+16];return E(e,t,r,n,o,a,c)}var P=function(e){var t,r,n,o,i,s,c,a;this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.leftover=0,this.fin=0,t=255&e[0]|(255&e[1])<<8,this.r[0]=8191&t,r=255&e[2]|(255&e[3])<<8,this.r[1]=8191&(t>>>13|r<<3),n=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(r>>>10|n<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(n>>>7|o<<9),i=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,s=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(i>>>14|s<<2),c=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(s>>>11|c<<5),a=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(c>>>8|a<<8),this.r[9]=a>>>5&127,this.pad[0]=255&e[16]|(255&e[17])<<8,this.pad[1]=255&e[18]|(255&e[19])<<8,this.pad[2]=255&e[20]|(255&e[21])<<8,this.pad[3]=255&e[22]|(255&e[23])<<8,this.pad[4]=255&e[24]|(255&e[25])<<8,this.pad[5]=255&e[26]|(255&e[27])<<8,this.pad[6]=255&e[28]|(255&e[29])<<8,this.pad[7]=255&e[30]|(255&e[31])<<8};function C(e,t,r,n,o,i){var s=new P(i);return s.update(r,n,o),s.finish(e,t),0}function j(e,t,r,n,o,i){var s=new Uint8Array(16);return C(s,0,r,n,o,i),_(e,t,s,0)}function m(e,t,r,n,o){var i;if(r<32)return-1;for(R(e,0,t,0,r,n,o),C(e,16,e,32,r-32,e),i=0;i<16;i++)e[i]=0;return 0}function T(e,t,r,n,o){var i,s=new Uint8Array(32);if(r<32)return-1;if(S(s,0,32,n,o),0!==j(t,16,t,32,r-32,s))return-1;for(R(e,0,t,0,r,n,o),i=0;i<32;i++)e[i]=0;return 0}function N(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function A(e){var t,r,n=1;for(t=0;t<16;t++)r=e[t]+n+65535,n=Math.floor(r/65536),e[t]=r-65536*n;e[0]+=n-1+37*(n-1)}function U(e,t,r){for(var n,o=~(r-1),i=0;i<16;i++)n=o&(e[i]^t[i]),e[i]^=n,t[i]^=n}function M(e,r){var n,o,i,s=t(),c=t();for(n=0;n<16;n++)c[n]=r[n];for(A(c),A(c),A(c),o=0;o<2;o++){for(s[0]=c[0]-65517,n=1;n<15;n++)s[n]=c[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=c[15]-32767-(s[14]>>16&1),i=s[15]>>16&1,s[14]&=65535,U(c,s,1-i)}for(n=0;n<16;n++)e[2*n]=255&c[n],e[2*n+1]=c[n]>>8}function x(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return M(r,e),M(n,t),v(r,0,n,0)}function W(e){var t=new Uint8Array(32);return M(t,e),1&t[0]}function I(e,t){var r;for(r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}function B(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function k(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function D(e,t,r){var n,o,i=0,s=0,c=0,a=0,u=0,l=0,d=0,h=0,f=0,p=0,y=0,_=0,v=0,g=0,b=0,w=0,E=0,O=0,S=0,R=0,P=0,C=0,j=0,m=0,T=0,N=0,A=0,U=0,M=0,x=0,W=0,I=r[0],B=r[1],k=r[2],D=r[3],L=r[4],K=r[5],F=r[6],H=r[7],q=r[8],J=r[9],Y=r[10],V=r[11],z=r[12],G=r[13],$=r[14],Z=r[15];i+=(n=t[0])*I,s+=n*B,c+=n*k,a+=n*D,u+=n*L,l+=n*K,d+=n*F,h+=n*H,f+=n*q,p+=n*J,y+=n*Y,_+=n*V,v+=n*z,g+=n*G,b+=n*$,w+=n*Z,s+=(n=t[1])*I,c+=n*B,a+=n*k,u+=n*D,l+=n*L,d+=n*K,h+=n*F,f+=n*H,p+=n*q,y+=n*J,_+=n*Y,v+=n*V,g+=n*z,b+=n*G,w+=n*$,E+=n*Z,c+=(n=t[2])*I,a+=n*B,u+=n*k,l+=n*D,d+=n*L,h+=n*K,f+=n*F,p+=n*H,y+=n*q,_+=n*J,v+=n*Y,g+=n*V,b+=n*z,w+=n*G,E+=n*$,O+=n*Z,a+=(n=t[3])*I,u+=n*B,l+=n*k,d+=n*D,h+=n*L,f+=n*K,p+=n*F,y+=n*H,_+=n*q,v+=n*J,g+=n*Y,b+=n*V,w+=n*z,E+=n*G,O+=n*$,S+=n*Z,u+=(n=t[4])*I,l+=n*B,d+=n*k,h+=n*D,f+=n*L,p+=n*K,y+=n*F,_+=n*H,v+=n*q,g+=n*J,b+=n*Y,w+=n*V,E+=n*z,O+=n*G,S+=n*$,R+=n*Z,l+=(n=t[5])*I,d+=n*B,h+=n*k,f+=n*D,p+=n*L,y+=n*K,_+=n*F,v+=n*H,g+=n*q,b+=n*J,w+=n*Y,E+=n*V,O+=n*z,S+=n*G,R+=n*$,P+=n*Z,d+=(n=t[6])*I,h+=n*B,f+=n*k,p+=n*D,y+=n*L,_+=n*K,v+=n*F,g+=n*H,b+=n*q,w+=n*J,E+=n*Y,O+=n*V,S+=n*z,R+=n*G,P+=n*$,C+=n*Z,h+=(n=t[7])*I,f+=n*B,p+=n*k,y+=n*D,_+=n*L,v+=n*K,g+=n*F,b+=n*H,w+=n*q,E+=n*J,O+=n*Y,S+=n*V,R+=n*z,P+=n*G,C+=n*$,j+=n*Z,f+=(n=t[8])*I,p+=n*B,y+=n*k,_+=n*D,v+=n*L,g+=n*K,b+=n*F,w+=n*H,E+=n*q,O+=n*J,S+=n*Y,R+=n*V,P+=n*z,C+=n*G,j+=n*$,m+=n*Z,p+=(n=t[9])*I,y+=n*B,_+=n*k,v+=n*D,g+=n*L,b+=n*K,w+=n*F,E+=n*H,O+=n*q,S+=n*J,R+=n*Y,P+=n*V,C+=n*z,j+=n*G,m+=n*$,T+=n*Z,y+=(n=t[10])*I,_+=n*B,v+=n*k,g+=n*D,b+=n*L,w+=n*K,E+=n*F,O+=n*H,S+=n*q,R+=n*J,P+=n*Y,C+=n*V,j+=n*z,m+=n*G,T+=n*$,N+=n*Z,_+=(n=t[11])*I,v+=n*B,g+=n*k,b+=n*D,w+=n*L,E+=n*K,O+=n*F,S+=n*H,R+=n*q,P+=n*J,C+=n*Y,j+=n*V,m+=n*z,T+=n*G,N+=n*$,A+=n*Z,v+=(n=t[12])*I,g+=n*B,b+=n*k,w+=n*D,E+=n*L,O+=n*K,S+=n*F,R+=n*H,P+=n*q,C+=n*J,j+=n*Y,m+=n*V,T+=n*z,N+=n*G,A+=n*$,U+=n*Z,g+=(n=t[13])*I,b+=n*B,w+=n*k,E+=n*D,O+=n*L,S+=n*K,R+=n*F,P+=n*H,C+=n*q,j+=n*J,m+=n*Y,T+=n*V,N+=n*z,A+=n*G,U+=n*$,M+=n*Z,b+=(n=t[14])*I,w+=n*B,E+=n*k,O+=n*D,S+=n*L,R+=n*K,P+=n*F,C+=n*H,j+=n*q,m+=n*J,T+=n*Y,N+=n*V,A+=n*z,U+=n*G,M+=n*$,x+=n*Z,w+=(n=t[15])*I,s+=38*(O+=n*k),c+=38*(S+=n*D),a+=38*(R+=n*L),u+=38*(P+=n*K),l+=38*(C+=n*F),d+=38*(j+=n*H),h+=38*(m+=n*q),f+=38*(T+=n*J),p+=38*(N+=n*Y),y+=38*(A+=n*V),_+=38*(U+=n*z),v+=38*(M+=n*G),g+=38*(x+=n*$),b+=38*(W+=n*Z),i=(n=(i+=38*(E+=n*B))+(o=1)+65535)-65536*(o=Math.floor(n/65536)),s=(n=s+o+65535)-65536*(o=Math.floor(n/65536)),c=(n=c+o+65535)-65536*(o=Math.floor(n/65536)),a=(n=a+o+65535)-65536*(o=Math.floor(n/65536)),u=(n=u+o+65535)-65536*(o=Math.floor(n/65536)),l=(n=l+o+65535)-65536*(o=Math.floor(n/65536)),d=(n=d+o+65535)-65536*(o=Math.floor(n/65536)),h=(n=h+o+65535)-65536*(o=Math.floor(n/65536)),f=(n=f+o+65535)-65536*(o=Math.floor(n/65536)),p=(n=p+o+65535)-65536*(o=Math.floor(n/65536)),y=(n=y+o+65535)-65536*(o=Math.floor(n/65536)),_=(n=_+o+65535)-65536*(o=Math.floor(n/65536)),v=(n=v+o+65535)-65536*(o=Math.floor(n/65536)),g=(n=g+o+65535)-65536*(o=Math.floor(n/65536)),b=(n=b+o+65535)-65536*(o=Math.floor(n/65536)),w=(n=w+o+65535)-65536*(o=Math.floor(n/65536)),i=(n=(i+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(n/65536)),s=(n=s+o+65535)-65536*(o=Math.floor(n/65536)),c=(n=c+o+65535)-65536*(o=Math.floor(n/65536)),a=(n=a+o+65535)-65536*(o=Math.floor(n/65536)),u=(n=u+o+65535)-65536*(o=Math.floor(n/65536)),l=(n=l+o+65535)-65536*(o=Math.floor(n/65536)),d=(n=d+o+65535)-65536*(o=Math.floor(n/65536)),h=(n=h+o+65535)-65536*(o=Math.floor(n/65536)),f=(n=f+o+65535)-65536*(o=Math.floor(n/65536)),p=(n=p+o+65535)-65536*(o=Math.floor(n/65536)),y=(n=y+o+65535)-65536*(o=Math.floor(n/65536)),_=(n=_+o+65535)-65536*(o=Math.floor(n/65536)),v=(n=v+o+65535)-65536*(o=Math.floor(n/65536)),g=(n=g+o+65535)-65536*(o=Math.floor(n/65536)),b=(n=b+o+65535)-65536*(o=Math.floor(n/65536)),w=(n=w+o+65535)-65536*(o=Math.floor(n/65536)),i+=o-1+37*(o-1),e[0]=i,e[1]=s,e[2]=c,e[3]=a,e[4]=u,e[5]=l,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=y,e[11]=_,e[12]=v,e[13]=g,e[14]=b,e[15]=w}function L(e,t){D(e,t,t)}function K(e,r){var n,o=t();for(n=0;n<16;n++)o[n]=r[n];for(n=253;n>=0;n--)L(o,o),2!==n&&4!==n&&D(o,o,r);for(n=0;n<16;n++)e[n]=o[n]}function F(e,r){var n,o=t();for(n=0;n<16;n++)o[n]=r[n];for(n=250;n>=0;n--)L(o,o),1!==n&&D(o,o,r);for(n=0;n<16;n++)e[n]=o[n]}function H(e,r,n){var o,i,s=new Uint8Array(32),c=new Float64Array(80),u=t(),l=t(),d=t(),h=t(),f=t(),p=t();for(i=0;i<31;i++)s[i]=r[i];for(s[31]=127&r[31]|64,s[0]&=248,I(c,n),i=0;i<16;i++)l[i]=c[i],h[i]=u[i]=d[i]=0;for(u[0]=h[0]=1,i=254;i>=0;--i)U(u,l,o=s[i>>>3]>>>(7&i)&1),U(d,h,o),B(f,u,d),k(u,u,d),B(d,l,h),k(l,l,h),L(h,f),L(p,u),D(u,d,u),D(d,l,f),B(f,u,d),k(u,u,d),L(l,u),k(d,h,p),D(u,d,a),B(u,u,h),D(d,d,u),D(u,h,p),D(h,l,c),L(l,f),U(u,l,o),U(d,h,o);for(i=0;i<16;i++)c[i+16]=u[i],c[i+32]=d[i],c[i+48]=l[i],c[i+64]=h[i];var y=c.subarray(32),_=c.subarray(16);return K(y,y),D(_,_,y),M(e,_),0}function q(e,t){return H(e,t,i)}function J(e,t){return n(t,32),q(e,t)}function Y(e,t,r){var n=new Uint8Array(32);return H(n,r,t),b(e,o,n,w)}P.prototype.blocks=function(e,t,r){for(var n,o,i,s,c,a,u,l,d,h,f,p,y,_,v,g,b,w,E,O=this.fin?0:2048,S=this.h[0],R=this.h[1],P=this.h[2],C=this.h[3],j=this.h[4],m=this.h[5],T=this.h[6],N=this.h[7],A=this.h[8],U=this.h[9],M=this.r[0],x=this.r[1],W=this.r[2],I=this.r[3],B=this.r[4],k=this.r[5],D=this.r[6],L=this.r[7],K=this.r[8],F=this.r[9];r>=16;)h=d=0,h+=(S+=8191&(n=255&e[t+0]|(255&e[t+1])<<8))*M,h+=(R+=8191&(n>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*F),h+=(P+=8191&(o>>>10|(i=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*K),h+=(C+=8191&(i>>>7|(s=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),d=(h+=(j+=8191&(s>>>4|(c=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*D))>>>13,h&=8191,h+=(m+=c>>>1&8191)*(5*k),h+=(T+=8191&(c>>>14|(a=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*B),h+=(N+=8191&(a>>>11|(u=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*I),h+=(A+=8191&(u>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*W),f=d+=(h+=(U+=l>>>5|O)*(5*x))>>>13,f+=S*x,f+=R*M,f+=P*(5*F),f+=C*(5*K),d=(f+=j*(5*L))>>>13,f&=8191,f+=m*(5*D),f+=T*(5*k),f+=N*(5*B),f+=A*(5*I),d+=(f+=U*(5*W))>>>13,f&=8191,p=d,p+=S*W,p+=R*x,p+=P*M,p+=C*(5*F),d=(p+=j*(5*K))>>>13,p&=8191,p+=m*(5*L),p+=T*(5*D),p+=N*(5*k),p+=A*(5*B),y=d+=(p+=U*(5*I))>>>13,y+=S*I,y+=R*W,y+=P*x,y+=C*M,d=(y+=j*(5*F))>>>13,y&=8191,y+=m*(5*K),y+=T*(5*L),y+=N*(5*D),y+=A*(5*k),_=d+=(y+=U*(5*B))>>>13,_+=S*B,_+=R*I,_+=P*W,_+=C*x,d=(_+=j*M)>>>13,_&=8191,_+=m*(5*F),_+=T*(5*K),_+=N*(5*L),_+=A*(5*D),v=d+=(_+=U*(5*k))>>>13,v+=S*k,v+=R*B,v+=P*I,v+=C*W,d=(v+=j*x)>>>13,v&=8191,v+=m*M,v+=T*(5*F),v+=N*(5*K),v+=A*(5*L),g=d+=(v+=U*(5*D))>>>13,g+=S*D,g+=R*k,g+=P*B,g+=C*I,d=(g+=j*W)>>>13,g&=8191,g+=m*x,g+=T*M,g+=N*(5*F),g+=A*(5*K),b=d+=(g+=U*(5*L))>>>13,b+=S*L,b+=R*D,b+=P*k,b+=C*B,d=(b+=j*I)>>>13,b&=8191,b+=m*W,b+=T*x,b+=N*M,b+=A*(5*F),w=d+=(b+=U*(5*K))>>>13,w+=S*K,w+=R*L,w+=P*D,w+=C*k,d=(w+=j*B)>>>13,w&=8191,w+=m*I,w+=T*W,w+=N*x,w+=A*M,E=d+=(w+=U*(5*F))>>>13,E+=S*F,E+=R*K,E+=P*L,E+=C*D,d=(E+=j*k)>>>13,E&=8191,E+=m*B,E+=T*I,E+=N*W,E+=A*x,S=h=8191&(d=(d=((d+=(E+=U*M)>>>13)<<2)+d|0)+(h&=8191)|0),R=f+=d>>>=13,P=p&=8191,C=y&=8191,j=_&=8191,m=v&=8191,T=g&=8191,N=b&=8191,A=w&=8191,U=E&=8191,t+=16,r-=16;this.h[0]=S,this.h[1]=R,this.h[2]=P,this.h[3]=C,this.h[4]=j,this.h[5]=m,this.h[6]=T,this.h[7]=N,this.h[8]=A,this.h[9]=U},P.prototype.finish=function(e,t){var r,n,o,i,s=new Uint16Array(10);if(this.leftover){for(i=this.leftover,this.buffer[i++]=1;i<16;i++)this.buffer[i]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,i=2;i<10;i++)this.h[i]+=r,r=this.h[i]>>>13,this.h[i]&=8191;for(this.h[0]+=5*r,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,s[0]=this.h[0]+5,r=s[0]>>>13,s[0]&=8191,i=1;i<10;i++)s[i]=this.h[i]+r,r=s[i]>>>13,s[i]&=8191;for(s[9]-=8192,n=(1^r)-1,i=0;i<10;i++)s[i]&=n;for(n=~n,i=0;i<10;i++)this.h[i]=this.h[i]&n|s[i];for(this.h[0]=65535&(this.h[0]|this.h[1]<<13),this.h[1]=65535&(this.h[1]>>>3|this.h[2]<<10),this.h[2]=65535&(this.h[2]>>>6|this.h[3]<<7),this.h[3]=65535&(this.h[3]>>>9|this.h[4]<<4),this.h[4]=65535&(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14),this.h[5]=65535&(this.h[6]>>>2|this.h[7]<<11),this.h[6]=65535&(this.h[7]>>>5|this.h[8]<<8),this.h[7]=65535&(this.h[8]>>>8|this.h[9]<<5),o=this.h[0]+this.pad[0],this.h[0]=65535&o,i=1;i<8;i++)o=(this.h[i]+this.pad[i]|0)+(o>>>16)|0,this.h[i]=65535&o;e[t+0]=this.h[0]>>>0&255,e[t+1]=this.h[0]>>>8&255,e[t+2]=this.h[1]>>>0&255,e[t+3]=this.h[1]>>>8&255,e[t+4]=this.h[2]>>>0&255,e[t+5]=this.h[2]>>>8&255,e[t+6]=this.h[3]>>>0&255,e[t+7]=this.h[3]>>>8&255,e[t+8]=this.h[4]>>>0&255,e[t+9]=this.h[4]>>>8&255,e[t+10]=this.h[5]>>>0&255,e[t+11]=this.h[5]>>>8&255,e[t+12]=this.h[6]>>>0&255,e[t+13]=this.h[6]>>>8&255,e[t+14]=this.h[7]>>>0&255,e[t+15]=this.h[7]>>>8&255},P.prototype.update=function(e,t,r){var n,o;if(this.leftover){for((o=16-this.leftover)>r&&(o=r),n=0;n<o;n++)this.buffer[this.leftover+n]=e[t+n];if(r-=o,t+=o,this.leftover+=o,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(r>=16&&(o=r-r%16,this.blocks(e,t,o),t+=o,r-=o),r){for(n=0;n<r;n++)this.buffer[this.leftover+n]=e[t+n];this.leftover+=r}};var V=m,z=T,G=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function $(e,t,r,n){for(var o,i,s,c,a,u,l,d,h,f,p,y,_,v,g,b,w,E,O,S,R,P,C,j,m,T,N=new Int32Array(16),A=new Int32Array(16),U=e[0],M=e[1],x=e[2],W=e[3],I=e[4],B=e[5],k=e[6],D=e[7],L=t[0],K=t[1],F=t[2],H=t[3],q=t[4],J=t[5],Y=t[6],V=t[7],z=0;n>=128;){for(O=0;O<16;O++)S=8*O+z,N[O]=r[S+0]<<24|r[S+1]<<16|r[S+2]<<8|r[S+3],A[O]=r[S+4]<<24|r[S+5]<<16|r[S+6]<<8|r[S+7];for(O=0;O<80;O++)if(o=U,i=M,s=x,c=W,a=I,u=B,l=k,h=L,f=K,p=F,y=H,_=q,v=J,g=Y,C=65535&(P=V),j=P>>>16,m=65535&(R=D),T=R>>>16,C+=65535&(P=(q>>>14|I<<18)^(q>>>18|I<<14)^(I>>>9|q<<23)),j+=P>>>16,m+=65535&(R=(I>>>14|q<<18)^(I>>>18|q<<14)^(q>>>9|I<<23)),T+=R>>>16,C+=65535&(P=q&J^~q&Y),j+=P>>>16,m+=65535&(R=I&B^~I&k),T+=R>>>16,C+=65535&(P=G[2*O+1]),j+=P>>>16,m+=65535&(R=G[2*O]),T+=R>>>16,R=N[O%16],j+=(P=A[O%16])>>>16,m+=65535&R,T+=R>>>16,m+=(j+=(C+=65535&P)>>>16)>>>16,C=65535&(P=E=65535&C|j<<16),j=P>>>16,m=65535&(R=w=65535&m|(T+=m>>>16)<<16),T=R>>>16,C+=65535&(P=(L>>>28|U<<4)^(U>>>2|L<<30)^(U>>>7|L<<25)),j+=P>>>16,m+=65535&(R=(U>>>28|L<<4)^(L>>>2|U<<30)^(L>>>7|U<<25)),T+=R>>>16,j+=(P=L&K^L&F^K&F)>>>16,m+=65535&(R=U&M^U&x^M&x),T+=R>>>16,d=65535&(m+=(j+=(C+=65535&P)>>>16)>>>16)|(T+=m>>>16)<<16,b=65535&C|j<<16,C=65535&(P=y),j=P>>>16,m=65535&(R=c),T=R>>>16,j+=(P=E)>>>16,m+=65535&(R=w),T+=R>>>16,M=o,x=i,W=s,I=c=65535&(m+=(j+=(C+=65535&P)>>>16)>>>16)|(T+=m>>>16)<<16,B=a,k=u,D=l,U=d,K=h,F=f,H=p,q=y=65535&C|j<<16,J=_,Y=v,V=g,L=b,O%16==15)for(S=0;S<16;S++)R=N[S],C=65535&(P=A[S]),j=P>>>16,m=65535&R,T=R>>>16,R=N[(S+9)%16],C+=65535&(P=A[(S+9)%16]),j+=P>>>16,m+=65535&R,T+=R>>>16,w=N[(S+1)%16],C+=65535&(P=((E=A[(S+1)%16])>>>1|w<<31)^(E>>>8|w<<24)^(E>>>7|w<<25)),j+=P>>>16,m+=65535&(R=(w>>>1|E<<31)^(w>>>8|E<<24)^w>>>7),T+=R>>>16,w=N[(S+14)%16],j+=(P=((E=A[(S+14)%16])>>>19|w<<13)^(w>>>29|E<<3)^(E>>>6|w<<26))>>>16,m+=65535&(R=(w>>>19|E<<13)^(E>>>29|w<<3)^w>>>6),T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,N[S]=65535&m|T<<16,A[S]=65535&C|j<<16;C=65535&(P=L),j=P>>>16,m=65535&(R=U),T=R>>>16,R=e[0],j+=(P=t[0])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[0]=U=65535&m|T<<16,t[0]=L=65535&C|j<<16,C=65535&(P=K),j=P>>>16,m=65535&(R=M),T=R>>>16,R=e[1],j+=(P=t[1])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[1]=M=65535&m|T<<16,t[1]=K=65535&C|j<<16,C=65535&(P=F),j=P>>>16,m=65535&(R=x),T=R>>>16,R=e[2],j+=(P=t[2])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[2]=x=65535&m|T<<16,t[2]=F=65535&C|j<<16,C=65535&(P=H),j=P>>>16,m=65535&(R=W),T=R>>>16,R=e[3],j+=(P=t[3])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[3]=W=65535&m|T<<16,t[3]=H=65535&C|j<<16,C=65535&(P=q),j=P>>>16,m=65535&(R=I),T=R>>>16,R=e[4],j+=(P=t[4])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[4]=I=65535&m|T<<16,t[4]=q=65535&C|j<<16,C=65535&(P=J),j=P>>>16,m=65535&(R=B),T=R>>>16,R=e[5],j+=(P=t[5])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[5]=B=65535&m|T<<16,t[5]=J=65535&C|j<<16,C=65535&(P=Y),j=P>>>16,m=65535&(R=k),T=R>>>16,R=e[6],j+=(P=t[6])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[6]=k=65535&m|T<<16,t[6]=Y=65535&C|j<<16,C=65535&(P=V),j=P>>>16,m=65535&(R=D),T=R>>>16,R=e[7],j+=(P=t[7])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(C+=65535&P)>>>16)>>>16)>>>16,e[7]=D=65535&m|T<<16,t[7]=V=65535&C|j<<16,z+=128,n-=128}return n}function Z(e,t,r){var n,o=new Int32Array(8),i=new Int32Array(8),s=new Uint8Array(256),c=r;for(o[0]=1779033703,o[1]=3144134277,o[2]=1013904242,o[3]=2773480762,o[4]=1359893119,o[5]=2600822924,o[6]=528734635,o[7]=1541459225,i[0]=4089235720,i[1]=2227873595,i[2]=4271175723,i[3]=1595750129,i[4]=2917565137,i[5]=725511199,i[6]=4215389547,i[7]=327033209,$(o,i,t,r),r%=128,n=0;n<r;n++)s[n]=t[c-r+n];for(s[r]=128,s[(r=256-128*(r<112?1:0))-9]=0,p(s,r-8,c/536870912|0,c<<3),$(o,i,s,r),n=0;n<8;n++)p(e,8*n,o[n],i[n]);return 0}function Q(e,r){var n=t(),o=t(),i=t(),s=t(),c=t(),a=t(),u=t(),d=t(),h=t();k(n,e[1],e[0]),k(h,r[1],r[0]),D(n,n,h),B(o,e[0],e[1]),B(h,r[0],r[1]),D(o,o,h),D(i,e[3],r[3]),D(i,i,l),D(s,e[2],r[2]),B(s,s,s),k(c,o,n),k(a,s,i),B(u,s,i),B(d,o,n),D(e[0],c,a),D(e[1],d,u),D(e[2],u,a),D(e[3],c,d)}function X(e,t,r){var n;for(n=0;n<4;n++)U(e[n],t[n],r)}function ee(e,r){var n=t(),o=t(),i=t();K(i,r[2]),D(n,r[0],i),D(o,r[1],i),M(e,o),e[31]^=W(n)<<7}function te(e,t,r){var n,o;for(N(e[0],s),N(e[1],c),N(e[2],c),N(e[3],s),o=255;o>=0;--o)X(e,t,n=r[o/8|0]>>(7&o)&1),Q(t,e),Q(e,e),X(e,t,n)}function re(e,r){var n=[t(),t(),t(),t()];N(n[0],d),N(n[1],h),N(n[2],c),D(n[3],d,h),te(e,n,r)}function ne(e,r,o){var i,s=new Uint8Array(64),c=[t(),t(),t(),t()];for(o||n(r,32),Z(s,r,32),s[0]&=248,s[31]&=127,s[31]|=64,re(c,s),ee(e,c),i=0;i<32;i++)r[i+32]=e[i];return 0}var oe=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function ie(e,t){var r,n,o,i;for(n=63;n>=32;--n){for(r=0,o=n-32,i=n-12;o<i;++o)t[o]+=r-16*t[n]*oe[o-(n-32)],r=Math.floor((t[o]+128)/256),t[o]-=256*r;t[o]+=r,t[n]=0}for(r=0,o=0;o<32;o++)t[o]+=r-(t[31]>>4)*oe[o],r=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=r*oe[o];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function se(e){var t,r=new Float64Array(64);for(t=0;t<64;t++)r[t]=e[t];for(t=0;t<64;t++)e[t]=0;ie(e,r)}function ce(e,r,n,o){var i,s,c=new Uint8Array(64),a=new Uint8Array(64),u=new Uint8Array(64),l=new Float64Array(64),d=[t(),t(),t(),t()];Z(c,o,32),c[0]&=248,c[31]&=127,c[31]|=64;var h=n+64;for(i=0;i<n;i++)e[64+i]=r[i];for(i=0;i<32;i++)e[32+i]=c[32+i];for(Z(u,e.subarray(32),n+32),se(u),re(d,u),ee(e,d),i=32;i<64;i++)e[i]=o[i];for(Z(a,e,n+64),se(a),i=0;i<64;i++)l[i]=0;for(i=0;i<32;i++)l[i]=u[i];for(i=0;i<32;i++)for(s=0;s<32;s++)l[i+s]+=a[i]*c[s];return ie(e.subarray(32),l),h}function ae(e,r,n,o){var i,a=new Uint8Array(32),l=new Uint8Array(64),d=[t(),t(),t(),t()],h=[t(),t(),t(),t()];if(n<64)return-1;if(function(e,r){var n=t(),o=t(),i=t(),a=t(),l=t(),d=t(),h=t();return N(e[2],c),I(e[1],r),L(i,e[1]),D(a,i,u),k(i,i,e[2]),B(a,e[2],a),L(l,a),L(d,l),D(h,d,l),D(n,h,i),D(n,n,a),F(n,n),D(n,n,i),D(n,n,a),D(n,n,a),D(e[0],n,a),L(o,e[0]),D(o,o,a),x(o,i)&&D(e[0],e[0],f),L(o,e[0]),D(o,o,a),x(o,i)?-1:(W(e[0])===r[31]>>7&&k(e[0],s,e[0]),D(e[3],e[0],e[1]),0)}(h,o))return-1;for(i=0;i<n;i++)e[i]=r[i];for(i=0;i<32;i++)e[i+32]=o[i];if(Z(l,e,n),se(l),te(d,h,l),re(h,r.subarray(32)),Q(d,h),ee(a,d),n-=64,v(r,0,a,0)){for(i=0;i<n;i++)e[i]=0;return-1}for(i=0;i<n;i++)e[i]=r[i+64];return n}var ue=64,le=32,de=64;function he(e,t){if(32!==e.length)throw new Error("bad key size");if(24!==t.length)throw new Error("bad nonce size")}function fe(){for(var e=0;e<arguments.length;e++)if(!(arguments[e]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function pe(e){for(var t=0;t<e.length;t++)e[t]=0}e.lowlevel={crypto_core_hsalsa20:b,crypto_stream_xor:R,crypto_stream:S,crypto_stream_salsa20_xor:E,crypto_stream_salsa20:O,crypto_onetimeauth:C,crypto_onetimeauth_verify:j,crypto_verify_16:_,crypto_verify_32:v,crypto_secretbox:m,crypto_secretbox_open:T,crypto_scalarmult:H,crypto_scalarmult_base:q,crypto_box_beforenm:Y,crypto_box_afternm:V,crypto_box:function(e,t,r,n,o,i){var s=new Uint8Array(32);return Y(s,o,i),V(e,t,r,n,s)},crypto_box_open:function(e,t,r,n,o,i){var s=new Uint8Array(32);return Y(s,o,i),z(e,t,r,n,s)},crypto_box_keypair:J,crypto_hash:Z,crypto_sign:ce,crypto_sign_keypair:ne,crypto_sign_open:ae,crypto_secretbox_KEYBYTES:32,crypto_secretbox_NONCEBYTES:24,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:16,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:32,crypto_box_SECRETKEYBYTES:32,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:24,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:ue,crypto_sign_PUBLICKEYBYTES:le,crypto_sign_SECRETKEYBYTES:de,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:t,D:u,L:oe,pack25519:M,unpack25519:I,M:D,A:B,S:L,Z:k,pow2523:F,add:Q,set25519:N,modL:ie,scalarmult:te,scalarbase:re},e.randomBytes=function(e){var t=new Uint8Array(e);return n(t,e),t},e.secretbox=function(e,t,r){fe(e,t,r),he(r,t);for(var n=new Uint8Array(32+e.length),o=new Uint8Array(n.length),i=0;i<e.length;i++)n[i+32]=e[i];return m(o,n,n.length,t,r),o.subarray(16)},e.secretbox.open=function(e,t,r){fe(e,t,r),he(r,t);for(var n=new Uint8Array(16+e.length),o=new Uint8Array(n.length),i=0;i<e.length;i++)n[i+16]=e[i];return n.length<32||0!==T(o,n,n.length,t,r)?null:o.subarray(32)},e.secretbox.keyLength=32,e.secretbox.nonceLength=24,e.secretbox.overheadLength=16,e.scalarMult=function(e,t){if(fe(e,t),32!==e.length)throw new Error("bad n size");if(32!==t.length)throw new Error("bad p size");var r=new Uint8Array(32);return H(r,e,t),r},e.scalarMult.base=function(e){if(fe(e),32!==e.length)throw new Error("bad n size");var t=new Uint8Array(32);return q(t,e),t},e.scalarMult.scalarLength=32,e.scalarMult.groupElementLength=32,e.box=function(t,r,n,o){var i=e.box.before(n,o);return e.secretbox(t,r,i)},e.box.before=function(e,t){fe(e,t),function(e,t){if(32!==e.length)throw new Error("bad public key size");if(32!==t.length)throw new Error("bad secret key size")}(e,t);var r=new Uint8Array(32);return Y(r,e,t),r},e.box.after=e.secretbox,e.box.open=function(t,r,n,o){var i=e.box.before(n,o);return e.secretbox.open(t,r,i)},e.box.open.after=e.secretbox.open,e.box.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(32);return J(e,t),{publicKey:e,secretKey:t}},e.box.keyPair.fromSecretKey=function(e){if(fe(e),32!==e.length)throw new Error("bad secret key size");var t=new Uint8Array(32);return q(t,e),{publicKey:t,secretKey:new Uint8Array(e)}},e.box.publicKeyLength=32,e.box.secretKeyLength=32,e.box.sharedKeyLength=32,e.box.nonceLength=24,e.box.overheadLength=e.secretbox.overheadLength,e.sign=function(e,t){if(fe(e,t),t.length!==de)throw new Error("bad secret key size");var r=new Uint8Array(ue+e.length);return ce(r,e,e.length,t),r},e.sign.open=function(e,t){if(fe(e,t),t.length!==le)throw new Error("bad public key size");var r=new Uint8Array(e.length),n=ae(r,e,e.length,t);if(n<0)return null;for(var o=new Uint8Array(n),i=0;i<o.length;i++)o[i]=r[i];return o},e.sign.detached=function(t,r){for(var n=e.sign(t,r),o=new Uint8Array(ue),i=0;i<o.length;i++)o[i]=n[i];return o},e.sign.detached.verify=function(e,t,r){if(fe(e,t,r),t.length!==ue)throw new Error("bad signature size");if(r.length!==le)throw new Error("bad public key size");var n,o=new Uint8Array(ue+e.length),i=new Uint8Array(ue+e.length);for(n=0;n<ue;n++)o[n]=t[n];for(n=0;n<e.length;n++)o[n+ue]=e[n];return ae(i,o,o.length,r)>=0},e.sign.keyPair=function(){var e=new Uint8Array(le),t=new Uint8Array(de);return ne(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(fe(e),e.length!==de)throw new Error("bad secret key size");for(var t=new Uint8Array(le),r=0;r<t.length;r++)t[r]=e[32+r];return{publicKey:t,secretKey:new Uint8Array(e)}},e.sign.keyPair.fromSeed=function(e){if(fe(e),32!==e.length)throw new Error("bad seed size");for(var t=new Uint8Array(le),r=new Uint8Array(de),n=0;n<32;n++)r[n]=e[n];return ne(t,r,!0),{publicKey:t,secretKey:r}},e.sign.publicKeyLength=le,e.sign.secretKeyLength=de,e.sign.seedLength=32,e.sign.signatureLength=ue,e.hash=function(e){fe(e);var t=new Uint8Array(64);return Z(t,e,e.length),t},e.hash.hashLength=64,e.verify=function(e,t){return fe(e,t),0!==e.length&&0!==t.length&&e.length===t.length&&0===y(e,0,t,0,e.length)},e.setPRNG=function(e){n=e},function(){var t="undefined"!=typeof self?self.crypto||self.msCrypto:null;t&&t.getRandomValues?e.setPRNG((function(e,r){var n,o=new Uint8Array(r);for(n=0;n<r;n+=65536)t.getRandomValues(o.subarray(n,n+Math.min(r-n,65536)));for(n=0;n<r;n++)e[n]=o[n];pe(o)})):(t=r(5338))&&t.randomBytes&&e.setPRNG((function(e,r){var n,o=t.randomBytes(r);for(n=0;n<r;n++)e[n]=o[n];pe(o)}))}()}(e.exports?e.exports:self.nacl=self.nacl||{})},8058:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SessionCrypto=void 0;var n=r(6196);Object.defineProperty(t,"SessionCrypto",{enumerable:!0,get:function(){return n.SessionCrypto}})},6196:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SessionCrypto=void 0;const utils_1=__webpack_require__(4586),tweetnacl_1=__importDefault(__webpack_require__(717));if((0,utils_1.isNode)())try{eval("global.crypto = require('crypto').webcrypto")}catch(e){}class SessionCrypto{constructor(e){this.nonceLength=24,this.keyPair=e?this.createKeypairFromString(e):this.createKeypair(),this.sessionId=(0,utils_1.toHexString)(this.keyPair.publicKey)}createKeypair(){return tweetnacl_1.default.box.keyPair()}createKeypairFromString(e){return{publicKey:(0,utils_1.hexToByteArray)(e.publicKey),secretKey:(0,utils_1.hexToByteArray)(e.secretKey)}}createNonce(){const e=new Uint8Array(this.nonceLength);return crypto.getRandomValues(e)}encrypt(e,t){const r=(new TextEncoder).encode(e),n=this.createNonce(),o=tweetnacl_1.default.box(r,n,t,this.keyPair.secretKey);return(0,utils_1.concatUint8Arrays)(n,o)}decrypt(e,t){const[r,n]=(0,utils_1.splitToUint8Arrays)(e,this.nonceLength),o=tweetnacl_1.default.box.open(n,r,t,this.keyPair.secretKey);if(!o)throw new Error(`Decryption error: \n message: ${e.toString()} \n sender pubkey: ${t.toString()} \n keypair pubkey: ${this.keyPair.publicKey.toString()} \n keypair secretkey: ${this.keyPair.secretKey.toString()}`);return(new TextDecoder).decode(o)}stringifyKeypair(){return{publicKey:(0,utils_1.toHexString)(this.keyPair.publicKey),secretKey:(0,utils_1.toHexString)(this.keyPair.secretKey)}}}exports.SessionCrypto=SessionCrypto},827:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(9855),t),o(r(8058),t),o(r(4586),t)},7929:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.CHAIN=void 0,(r=t.CHAIN||(t.CHAIN={})).MAINNET="-239",r.TESTNET="-3"},4469:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},992:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(2859),t),o(r(4469),t)},2859:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},9855:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.CHAIN=void 0,o(r(992),t),o(r(7250),t);var i=r(7929);Object.defineProperty(t,"CHAIN",{enumerable:!0,get:function(){return i.CHAIN}})},7250:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(6910),t),o(r(1712),t)},7395:(e,t)=>{"use strict";var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.CONNECT_ITEM_ERROR_CODES=t.CONNECT_EVENT_ERROR_CODES=void 0,(n=t.CONNECT_EVENT_ERROR_CODES||(t.CONNECT_EVENT_ERROR_CODES={}))[n.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",n[n.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",n[n.MANIFEST_NOT_FOUND_ERROR=2]="MANIFEST_NOT_FOUND_ERROR",n[n.MANIFEST_CONTENT_ERROR=3]="MANIFEST_CONTENT_ERROR",n[n.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",n[n.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",n[n.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(r=t.CONNECT_ITEM_ERROR_CODES||(t.CONNECT_ITEM_ERROR_CODES={}))[r.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",r[r.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED"},6910:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CONNECT_EVENT_ERROR_CODES=void 0;var n=r(7395);Object.defineProperty(t,"CONNECT_EVENT_ERROR_CODES",{enumerable:!0,get:function(){return n.CONNECT_EVENT_ERROR_CODES}})},1712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SEND_TRANSACTION_ERROR_CODES=void 0;var n=r(7487);Object.defineProperty(t,"SEND_TRANSACTION_ERROR_CODES",{enumerable:!0,get:function(){return n.SEND_TRANSACTION_ERROR_CODES}})},7487:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.SEND_TRANSACTION_ERROR_CODES=void 0,(r=t.SEND_TRANSACTION_ERROR_CODES||(t.SEND_TRANSACTION_ERROR_CODES={}))[r.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",r[r.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",r[r.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",r[r.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",r[r.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED"},4444:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Base64=void 0;const o=n(r(251));t.Base64={encode:function(e,t=!1){let r;return e instanceof Uint8Array?r=e:("string"!=typeof e&&(e=JSON.stringify(e)),r=o.default.decodeUTF8(e)),function(e,t){const r=o.default.encodeBase64(e);return t?encodeURIComponent(r):r}(r,t)},decode:function(e,t=!1){const r=function(e,t){return t&&(e=decodeURIComponent(e)),o.default.decodeBase64(e)}(e,t);return{toString:()=>o.default.encodeUTF8(r),toObject(){try{return JSON.parse(o.default.encodeUTF8(r))}catch(e){return null}},toUint8Array:()=>r}}}},6650:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hexToByteArray=t.toHexString=t.splitToUint8Arrays=t.concatUint8Arrays=void 0,t.concatUint8Arrays=function(e,t){const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},t.splitToUint8Arrays=function(e,t){if(t>=e.length)throw new Error("Index is out of buffer");return[e.slice(0,t),e.slice(t)]},t.toHexString=function(e){let t="";return e.forEach((e=>{t+=("0"+(255&e).toString(16)).slice(-2)})),t},t.hexToByteArray=function(e){if(e.length%2!=0)throw new Error(`Cannot convert ${e} to bytesArray`);const t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2)t[r/2]=parseInt(e.slice(r,r+2),16);return t}},4586:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=t.hexToByteArray=t.toHexString=t.splitToUint8Arrays=t.concatUint8Arrays=t.Base64=void 0;var n=r(4444);Object.defineProperty(t,"Base64",{enumerable:!0,get:function(){return n.Base64}});var o=r(6650);Object.defineProperty(t,"concatUint8Arrays",{enumerable:!0,get:function(){return o.concatUint8Arrays}}),Object.defineProperty(t,"splitToUint8Arrays",{enumerable:!0,get:function(){return o.splitToUint8Arrays}}),Object.defineProperty(t,"toHexString",{enumerable:!0,get:function(){return o.toHexString}}),Object.defineProperty(t,"hexToByteArray",{enumerable:!0,get:function(){return o.hexToByteArray}});var i=r(3308);Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return i.isNode}})},3308:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=void 0,t.isNode=function(){return"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node}},5338:()=>{}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}var __webpack_exports__=__webpack_require__(4027);TonConnectSDK=__webpack_exports__})();
|
|
1
|
+
var TonConnectSDK;(()=>{var __webpack_modules__={9939:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WrongAddressError=void 0;var n=r(8446);Object.defineProperty(t,"WrongAddressError",{enumerable:!0,get:function(){return n.WrongAddressError}})},8446:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WrongAddressError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WrongAddressError=o},5034:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseHexError=void 0;var n=r(6203);Object.defineProperty(t,"ParseHexError",{enumerable:!0,get:function(){return n.ParseHexError}})},6203:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseHexError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.ParseHexError=o},5186:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DappMetadataError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.DappMetadataError=o},7016:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownError=t.TonConnectError=void 0,o(r(5190),t),o(r(6129),t),o(r(7406),t),o(r(2854),t),o(r(9939),t),o(r(5034),t);var i=r(925);Object.defineProperty(t,"TonConnectError",{enumerable:!0,get:function(){return i.TonConnectError}});var s=r(6811);Object.defineProperty(t,"UnknownError",{enumerable:!0,get:function(){return s.UnknownError}})},7524:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UserRejectsError=void 0;var n=r(1092);Object.defineProperty(t,"UserRejectsError",{enumerable:!0,get:function(){return n.UserRejectsError}})},432:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ManifestContentErrorError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(e){super(e||""+o.additionalMessage),Object.setPrototypeOf(this,o.prototype)}}t.ManifestContentErrorError=o,o.additionalMessage="\nPassed `tonconnect-manifest.json` contains errors. Check format of your manifest. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"},5515:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ManifestNotFoundError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(e){super(e||""+o.additionalMessage),Object.setPrototypeOf(this,o.prototype)}}t.ManifestNotFoundError=o,o.additionalMessage="\nManifest not found. Make sure you added `tonconnect-manifest.json` to the root of your app or passed correct manifestUrl. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"},1092:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UserRejectsError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UserRejectsError=o},4851:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(7524),t)},5190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(4851),t),o(r(9450),t)},3701:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BadRequestError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.BadRequestError=o},9450:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownAppError=t.BadRequestError=void 0;var n=r(3701);Object.defineProperty(t,"BadRequestError",{enumerable:!0,get:function(){return n.BadRequestError}});var o=r(529);Object.defineProperty(t,"UnknownAppError",{enumerable:!0,get:function(){return o.UnknownAppError}})},529:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownAppError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UnknownAppError=o},7406:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalstorageNotFoundError=void 0;var n=r(1306);Object.defineProperty(t,"LocalstorageNotFoundError",{enumerable:!0,get:function(){return n.LocalstorageNotFoundError}})},1306:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalstorageNotFoundError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.LocalstorageNotFoundError=o},925:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TonConnectError=void 0;class r extends Error{constructor(e,t){e&&(e=r.prefix+" "+e),super(e,t),Object.setPrototypeOf(this,r.prototype)}}t.TonConnectError=r,r.prefix="[TON_CONNECT_SDK_ERROR]"},6811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnknownError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.UnknownError=o},6129:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotInjectedError=t.WalletNotConnectedError=t.WalletAlreadyConnectedError=void 0;var n=r(2590);Object.defineProperty(t,"WalletAlreadyConnectedError",{enumerable:!0,get:function(){return n.WalletAlreadyConnectedError}});var o=r(1087);Object.defineProperty(t,"WalletNotConnectedError",{enumerable:!0,get:function(){return o.WalletNotConnectedError}});var i=r(6557);Object.defineProperty(t,"WalletNotInjectedError",{enumerable:!0,get:function(){return i.WalletNotInjectedError}})},2590:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletAlreadyConnectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletAlreadyConnectedError=o},1087:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotConnectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotConnectedError=o},6557:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotInjectedError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotInjectedError=o},5951:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WalletNotSupportFeatureError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.WalletNotSupportFeatureError=o},6897:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchWalletsError=void 0;const n=r(925);class o extends n.TonConnectError{constructor(...e){super(...e),Object.setPrototypeOf(this,o.prototype)}}t.FetchWalletsError=o},2854:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchWalletsError=void 0;var n=r(6897);Object.defineProperty(t,"FetchWalletsError",{enumerable:!0,get:function(){return n.FetchWalletsError}})},4027:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.toUserFriendlyAddress=t.CHAIN=t.default=void 0,o(r(1567),t),o(r(1623),t),o(r(7016),t);var i=r(1567);Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i.TonConnect}});var s=r(827);Object.defineProperty(t,"CHAIN",{enumerable:!0,get:function(){return s.CHAIN}});var c=r(4914);Object.defineProperty(t,"toUserFriendlyAddress",{enumerable:!0,get:function(){return c.toUserFriendlyAddress}})},1623:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(1326),t),o(r(983),t)},950:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},983:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(950),t),o(r(4255),t)},4255:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},1326:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletInfoInjected=void 0;var n=r(5910);Object.defineProperty(t,"isWalletInfoInjected",{enumerable:!0,get:function(){return n.isWalletInfoInjected}})},656:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletConnectionSourceJS=void 0,t.isWalletConnectionSourceJS=function(e){return"jsBridgeKey"in e}},5910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWalletInfoInjected=void 0,t.isWalletInfoInjected=function(e){return"jsBridgeKey"in e}},3237:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.connectErrorsParser=void 0;const n=r(7016),o=r(432),i=r(5515),s=r(6811),c=r(827),a={[c.CONNECT_EVENT_ERROR_CODES.UNKNOWN_ERROR]:s.UnknownError,[c.CONNECT_EVENT_ERROR_CODES.USER_REJECTS_ERROR]:n.UserRejectsError,[c.CONNECT_EVENT_ERROR_CODES.BAD_REQUEST_ERROR]:n.BadRequestError,[c.CONNECT_EVENT_ERROR_CODES.UNKNOWN_APP_ERROR]:n.UnknownAppError,[c.CONNECT_EVENT_ERROR_CODES.MANIFEST_NOT_FOUND_ERROR]:i.ManifestNotFoundError,[c.CONNECT_EVENT_ERROR_CODES.MANIFEST_CONTENT_ERROR]:o.ManifestContentErrorError};t.connectErrorsParser=new class{parseError(e){let t=s.UnknownError;return e.code in a&&(t=a[e.code]||s.UnknownError),new t(e.message)}}},9946:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RpcParser=void 0,t.RpcParser=class{isError(e){return"error"in e}}},353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sendTransactionParser=void 0;const n=r(827),o=r(7016),i=r(6811),s=r(9946),c={[n.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_ERROR]:i.UnknownError,[n.SEND_TRANSACTION_ERROR_CODES.USER_REJECTS_ERROR]:o.UserRejectsError,[n.SEND_TRANSACTION_ERROR_CODES.BAD_REQUEST_ERROR]:o.BadRequestError,[n.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_APP_ERROR]:o.UnknownAppError};class a extends s.RpcParser{convertToRpcRequest(e){return{method:"sendTransaction",params:[JSON.stringify(e)]}}parseAndThrowError(e){let t=i.UnknownError;throw e.error.code in c&&(t=c[e.error.code]||i.UnknownError),new t(e.error.message)}convertFromRpcResponse(e){return{boc:e.result}}}t.sendTransactionParser=new a},3824:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __awaiter=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(exports,"__esModule",{value:!0}),exports.BridgeGateway=void 0;const protocol_1=__webpack_require__(827),errors_1=__webpack_require__(7016),http_bridge_gateway_storage_1=__webpack_require__(927),url_1=__webpack_require__(9372);if((0,protocol_1.isNode)())try{eval("global.EventSource = require('eventsource')"),eval("global.fetch = require('node-fetch')")}catch(e){console.error(e)}class BridgeGateway{constructor(e,t,r,n,o){this.bridgeUrl=t,this.sessionId=r,this.listener=n,this.errorsListener=o,this.ssePath="events",this.postPath="message",this.heartbeatMessage="heartbeat",this.defaultTtl=300,this.isClosed=!1,this.bridgeGatewayStorage=new http_bridge_gateway_storage_1.HttpBridgeGatewayStorage(e)}registerSession(){return __awaiter(this,void 0,void 0,(function*(){const e=new URL((0,url_1.addPathToUrl)(this.bridgeUrl,this.ssePath));e.searchParams.append("client_id",this.sessionId);const t=yield this.bridgeGatewayStorage.getLastEventId();return t&&e.searchParams.append("last_event_id",t),this.eventSource=new EventSource(e.toString()),new Promise(((e,t)=>{this.eventSource.onerror=t,this.eventSource.onopen=()=>{this.eventSource.onerror=this.errorsHandler.bind(this),this.eventSource.onmessage=this.messagesHandler.bind(this),e()}}))}))}send(e,t,r){return __awaiter(this,void 0,void 0,(function*(){const n=new URL((0,url_1.addPathToUrl)(this.bridgeUrl,this.postPath));n.searchParams.append("client_id",this.sessionId),n.searchParams.append("to",t),n.searchParams.append("ttl",(r||this.defaultTtl).toString()),yield fetch(n,{method:"post",body:protocol_1.Base64.encode(e)})}))}close(){var e;this.isClosed=!0,null===(e=this.eventSource)||void 0===e||e.close()}errorsHandler(e){var t,r;if(!this.isClosed){if((null===(t=this.eventSource)||void 0===t?void 0:t.readyState)===EventSource.CLOSED)return this.eventSource.close(),void this.registerSession();if((null===(r=this.eventSource)||void 0===r?void 0:r.readyState)===EventSource.CONNECTING)return void console.debug("[TON_CONNET_SDK_ERROR]: Bridge error",JSON.stringify(e));this.errorsListener(e)}}messagesHandler(e){return __awaiter(this,void 0,void 0,(function*(){if(e.data!==this.heartbeatMessage&&(yield this.bridgeGatewayStorage.storeLastEventId(e.lastEventId),!this.isClosed)){let t;try{t=JSON.parse(e.data)}catch(e){throw new errors_1.TonConnectError(`Bridge message parse failed, message ${e.data}`)}this.listener(t)}}))}}exports.BridgeGateway=BridgeGateway},8889:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BridgeProvider=void 0;const o=r(827),i=r(925),s=r(3824),c=r(8133),a=r(6446);class u{constructor(e,t){this.storage=e,this.walletConnectionSource=t,this.type="http",this.pendingRequests=new Map,this.nextRequestId=0,this.session=null,this.bridge=null,this.listeners=[],this.connectionStorage=new c.BridgeConnectionStorage(e)}static fromStorage(e){return n(this,void 0,void 0,(function*(){const t=new c.BridgeConnectionStorage(e),r=yield t.getHttpConnection();return new u(e,r.session.walletConnectionSource)}))}connect(e){var t;null===(t=this.bridge)||void 0===t||t.close();const r=new o.SessionCrypto;return this.session={sessionCrypto:r,walletConnectionSource:this.walletConnectionSource},this.bridge=new s.BridgeGateway(this.storage,this.walletConnectionSource.bridgeUrl,r.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),this.bridge.registerSession(),this.generateUniversalLink(e)}restoreConnection(){var e;return n(this,void 0,void 0,(function*(){null===(e=this.bridge)||void 0===e||e.close();const t=yield this.connectionStorage.getHttpConnection();t&&(this.session=t.session,this.bridge=new s.BridgeGateway(this.storage,this.walletConnectionSource.bridgeUrl,t.session.sessionCrypto.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),yield this.bridge.registerSession(),this.listeners.forEach((e=>e(t.connectEvent))))}))}sendRequest(e){return new Promise(((t,r)=>{const n=this.nextRequestId;if(this.nextRequestId++,!this.bridge||!this.session||!("walletPublicKey"in this.session))throw new i.TonConnectError("Trying to send bridge request without session");const s=this.session.sessionCrypto.encrypt(JSON.stringify(Object.assign(Object.assign({},e),{id:n})),(0,o.hexToByteArray)(this.session.walletPublicKey));this.bridge.send(s,this.session.walletPublicKey).catch(r),this.pendingRequests.set(n.toString(),t)}))}closeConnection(){var e;null===(e=this.bridge)||void 0===e||e.close(),this.listeners=[],this.session=null,this.bridge=null}disconnect(){var e;return null===(e=this.bridge)||void 0===e||e.close(),this.listeners=[],this.removeBridgeAndSession()}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}gatewayListener(e){return n(this,void 0,void 0,(function*(){const t=JSON.parse(this.session.sessionCrypto.decrypt(o.Base64.decode(e.message).toUint8Array(),(0,o.hexToByteArray)(e.from)));if(!("event"in t)){const e=t.id.toString(),r=this.pendingRequests.get(e);if(!r)throw new i.TonConnectError(`Response id ${e} doesn't match any request's id`);return r(t),void this.pendingRequests.delete(e)}"connect"===t.event&&(yield this.updateSession(t,e.from)),"disconnect"===t.event&&(yield this.removeBridgeAndSession()),this.listeners.forEach((e=>e(t)))}))}gatewayErrorsListener(e){return n(this,void 0,void 0,(function*(){throw new i.TonConnectError(`Bridge error ${JSON.stringify(e)}`)}))}updateSession(e,t){return n(this,void 0,void 0,(function*(){this.session=Object.assign(Object.assign({},this.session),{walletPublicKey:t});const r=e.payload.items.find((e=>"ton_addr"===e.name)),n=Object.assign(Object.assign({},e),{payload:Object.assign(Object.assign({},e.payload),{items:[r]})});yield this.connectionStorage.storeConnection({type:"http",session:this.session,connectEvent:n})}))}removeBridgeAndSession(){return n(this,void 0,void 0,(function*(){this.session=null,this.bridge=null,yield this.connectionStorage.removeConnection()}))}generateUniversalLink(e){const t=new URL(this.walletConnectionSource.universalLink);return t.searchParams.append("v",a.PROTOCOL_VERSION.toString()),t.searchParams.append("id",this.session.sessionCrypto.sessionId),t.searchParams.append("r",JSON.stringify(e)),t.toString()}}t.BridgeProvider=u},7544:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.InjectedProvider=void 0;const o=r(6557),i=r(8133),s=r(5684),c=r(6446);class a{constructor(e,t){this.injectedWalletKey=t,this.type="injected",this.unsubscribeCallback=null,this.listenSubscriptions=!1,this.listeners=[];const r=a.window;if(!a.isWindowContainsWallet(r,t))throw new o.WalletNotInjectedError;this.connectionStorage=new i.BridgeConnectionStorage(e),this.injectedWallet=r[t].tonconnect}static fromStorage(e){return n(this,void 0,void 0,(function*(){const t=new i.BridgeConnectionStorage(e),r=yield t.getInjectedConnection();return new a(e,r.jsBridgeKey)}))}static isWalletInjected(e){return a.isWindowContainsWallet(this.window,e)}static isInsideWalletBrowser(e){return!!a.isWindowContainsWallet(this.window,e)&&this.window[e].tonconnect.isWalletBrowser}static isWindowContainsWallet(e,t){return!!e&&t in e&&"object"==typeof e[t]&&"tonconnect"in e[t]}connect(e){this._connect(c.PROTOCOL_VERSION,e)}restoreConnection(){return n(this,void 0,void 0,(function*(){try{const e=yield this.injectedWallet.restoreConnection();"connect"===e.event?(this.makeSubscriptions(),this.listeners.forEach((t=>t(e)))):yield this.connectionStorage.removeConnection()}catch(e){yield this.connectionStorage.removeConnection(),console.error(e)}}))}closeConnection(){this.listenSubscriptions&&this.injectedWallet.disconnect(),this.closeAllListeners()}disconnect(){return this.closeAllListeners(),this.injectedWallet.disconnect(),this.connectionStorage.removeConnection()}closeAllListeners(){var e;this.listenSubscriptions=!1,this.listeners=[],null===(e=this.unsubscribeCallback)||void 0===e||e.call(this)}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}sendRequest(e){return n(this,void 0,void 0,(function*(){return this.injectedWallet.send(Object.assign(Object.assign({},e),{id:"0"}))}))}_connect(e,t){return n(this,void 0,void 0,(function*(){try{const r=yield this.injectedWallet.connect(e,t);"connect"===r.event&&(yield this.updateSession(),this.makeSubscriptions()),this.listeners.forEach((e=>e(r)))}catch(e){console.debug(e);const t={event:"connect_error",payload:{code:0,message:null==e?void 0:e.toString()}};this.listeners.forEach((e=>e(t)))}}))}makeSubscriptions(){this.listenSubscriptions=!0,this.unsubscribeCallback=this.injectedWallet.listen((e=>{this.listenSubscriptions&&this.listeners.forEach((t=>t(e))),"disconnect"===e.event&&this.disconnect()}))}updateSession(){return this.connectionStorage.storeConnection({type:"injected",jsBridgeKey:this.injectedWalletKey})}}t.InjectedProvider=a,a.window=(0,s.getWindow)()},6446:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PROTOCOL_VERSION=void 0,t.PROTOCOL_VERSION=2},8133:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BridgeConnectionStorage=void 0;const o=r(827),i=r(7016);t.BridgeConnectionStorage=class{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_bridge-connection"}storeConnection(e){return n(this,void 0,void 0,(function*(){if("injected"===e.type)return this.storage.setItem(this.storeKey,JSON.stringify(e));const t={sessionKeyPair:e.session.sessionCrypto.stringifyKeypair(),walletPublicKey:e.session.walletPublicKey,walletConnectionSource:e.session.walletConnectionSource},r={type:"http",connectEvent:e.connectEvent,session:t};return this.storage.setItem(this.storeKey,JSON.stringify(r))}))}removeConnection(){return n(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;const t=JSON.parse(e);if("injected"===t.type)return t;const r=new o.SessionCrypto(t.session.sessionKeyPair);return{type:"http",connectEvent:t.connectEvent,session:{sessionCrypto:r,walletConnectionSource:t.session.walletConnectionSource,walletPublicKey:t.session.walletPublicKey}}}))}getHttpConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new i.TonConnectError("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new i.TonConnectError("Trying to read HTTP connection source while injected connection is stored");return e}))}getInjectedConnection(){return n(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new i.TonConnectError("Trying to read Injected bridge connection source while nothing is stored");if("http"===(null==e?void 0:e.type))throw new i.TonConnectError("Trying to read Injected bridge connection source while HTTP connection is stored");return e}))}storedConnectionType(){return n(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);return e?JSON.parse(e).type:null}))}}},408:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultStorage=void 0;const o=r(1306),i=r(5684);t.DefaultStorage=class{constructor(){const e=(0,i.getWindow)();if(!(null==e?void 0:e.localStorage))throw new o.LocalstorageNotFoundError;this.window=e}getItem(e){return n(this,void 0,void 0,(function*(){return Promise.resolve(this.window.localStorage.getItem(e))}))}removeItem(e){return n(this,void 0,void 0,(function*(){return this.window.localStorage.removeItem(e),Promise.resolve()}))}setItem(e,t){return this.window.localStorage.setItem(e,t),Promise.resolve()}}},927:function(e,t){"use strict";var r=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.HttpBridgeGatewayStorage=void 0,t.HttpBridgeGatewayStorage=class{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_http-bridge-gateway"}storeLastEventId(e){return r(this,void 0,void 0,(function*(){return this.storage.setItem(this.storeKey,e)}))}removeLastEventId(){return r(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getLastEventId(){return r(this,void 0,void 0,(function*(){return(yield this.storage.getItem(this.storeKey))||null}))}}},1567:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))},o=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};Object.defineProperty(t,"__esModule",{value:!0}),t.TonConnect=void 0;const i=r(5186),s=r(432),c=r(5515),a=r(925),u=r(2590),l=r(1087),d=r(5951),h=r(656),f=r(3237),p=r(353),y=r(8889),_=r(7544),v=r(8133),g=r(408),b=r(5684),w=r(1302);class E{constructor(e){if(this.walletsList=new w.WalletsListManager,this._wallet=null,this.provider=null,this.statusChangeSubscriptions=[],this.statusChangeErrorSubscriptions=[],this.dappSettings={manifestUrl:(null==e?void 0:e.manifestUrl)||(0,b.getWebPageManifest)(),storage:(null==e?void 0:e.storage)||new g.DefaultStorage},this.walletsList=new w.WalletsListManager(null==e?void 0:e.walletsListSource),!this.dappSettings.manifestUrl)throw new i.DappMetadataError("Dapp tonconnect-manifest.json must be specified if window.location.origin is undefined. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest");this.bridgeConnectionStorage=new v.BridgeConnectionStorage(this.dappSettings.storage)}static getWallets(){return this.walletsList.getWallets()}get connected(){return null!==this._wallet}get account(){var e;return(null===(e=this._wallet)||void 0===e?void 0:e.account)||null}get wallet(){return this._wallet}set wallet(e){this._wallet=e,this.statusChangeSubscriptions.forEach((e=>e(this._wallet)))}getWallets(){return this.walletsList.getWallets()}onStatusChange(e,t){return this.statusChangeSubscriptions.push(e),t&&this.statusChangeErrorSubscriptions.push(t),()=>{this.statusChangeSubscriptions=this.statusChangeSubscriptions.filter((t=>t!==e)),t&&(this.statusChangeErrorSubscriptions=this.statusChangeErrorSubscriptions.filter((e=>e!==t)))}}connect(e,t){var r;if(this.connected)throw new u.WalletAlreadyConnectedError;return null===(r=this.provider)||void 0===r||r.closeConnection(),this.provider=this.createProvider(e),this.provider.connect(this.createConnectRequest(t))}restoreConnection(){return n(this,void 0,void 0,(function*(){const[e,t]=yield Promise.all([this.bridgeConnectionStorage.storedConnectionType(),this.walletsList.getEmbeddedWallet()]);switch(e){case"http":this.provider=yield y.BridgeProvider.fromStorage(this.dappSettings.storage);break;case"injected":this.provider=yield _.InjectedProvider.fromStorage(this.dappSettings.storage);break;default:if(!t)return;this.provider=yield this.createProvider(t)}return this.provider.listen(this.walletEventsListener.bind(this)),this.provider.restoreConnection()}))}sendTransaction(e){return n(this,void 0,void 0,(function*(){this.checkConnection(),this.checkFeatureSupport("SendTransaction");const{validUntil:t}=e,r=o(e,["validUntil"]),n=yield this.provider.sendRequest(p.sendTransactionParser.convertToRpcRequest(Object.assign(Object.assign({},r),{valid_until:t})));return p.sendTransactionParser.isError(n)?p.sendTransactionParser.parseAndThrowError(n):p.sendTransactionParser.convertFromRpcResponse(n)}))}disconnect(){return n(this,void 0,void 0,(function*(){if(!this.connected)throw new l.WalletNotConnectedError;yield this.provider.disconnect(),this.onWalletDisconnected()}))}createProvider(e){let t;return t=(0,h.isWalletConnectionSourceJS)(e)?new _.InjectedProvider(this.dappSettings.storage,e.jsBridgeKey):new y.BridgeProvider(this.dappSettings.storage,e),t.listen(this.walletEventsListener.bind(this)),t}walletEventsListener(e){switch(e.event){case"connect":this.onWalletConnected(e.payload);break;case"connect_error":this.onWalletConnectError(e.payload);break;case"disconnect":this.onWalletDisconnected()}}onWalletConnected(e){const t=e.items.find((e=>"ton_addr"===e.name)),r=e.items.find((e=>"ton_proof"===e.name));if(!t)throw new a.TonConnectError("ton_addr connection item was not found");const n={device:e.device,provider:this.provider.type,account:{address:t.address,chain:t.network,walletStateInit:t.walletStateInit}};r&&(n.connectItems={tonProof:r}),this.wallet=n}onWalletConnectError(e){const t=f.connectErrorsParser.parseError(e);if(this.statusChangeErrorSubscriptions.forEach((e=>e(t))),console.debug(t),t instanceof c.ManifestNotFoundError||t instanceof s.ManifestContentErrorError)throw console.error(t),t}onWalletDisconnected(){this.wallet=null}checkConnection(){if(!this.connected)throw new l.WalletNotConnectedError}checkFeatureSupport(e){var t;if(!(null===(t=this.wallet)||void 0===t?void 0:t.device.features.includes(e)))throw new d.WalletNotSupportFeatureError}createConnectRequest(e){const t=[{name:"ton_addr"}];return(null==e?void 0:e.tonProof)&&t.push({name:"ton_proof",payload:e.tonProof}),{manifestUrl:this.dappSettings.manifestUrl,items:t}}}t.TonConnect=E,E.walletsList=new w.WalletsListManager,E.isWalletInjected=e=>_.InjectedProvider.isWalletInjected(e),E.isInsideWalletBrowser=e=>_.InjectedProvider.isInsideWalletBrowser(e)},4914:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toUserFriendlyAddress=void 0;const n=r(7016),o=r(827);t.toUserFriendlyAddress=function(e){const{wc:t,hex:r}=function(e){if(!e.includes(":"))throw new n.WrongAddressError(`Wrong address ${e}. Address must include ":".`);const t=e.split(":");if(2!==t.length)throw new n.WrongAddressError(`Wrong address ${e}. Address must include ":" only once.`);const r=parseInt(t[0]);if(0!==r&&-1!==r)throw new n.WrongAddressError(`Wrong address ${e}. WC must be eq 0 or -1, but ${r} received.`);const o=t[1];if(64!==(null==o?void 0:o.length))throw new n.WrongAddressError(`Wrong address ${e}. Hex part must be 64bytes length, but ${null==o?void 0:o.length} received.`);return{wc:r,hex:s(o)}}(e),i=new Int8Array(34);i[0]=17,i[1]=t,i.set(r,2);const c=new Uint8Array(36);return c.set(i),c.set(function(e){let t=0;const r=new Uint8Array(e.length+2);r.set(e);for(let e of r){let r=128;for(;r>0;)t<<=1,e&r&&(t+=1),r>>=1,t>65535&&(t&=65535,t^=4129)}return new Uint8Array([Math.floor(t/256),t%256])}(i),34),o.Base64.encode(c).replace(/\+/g,"-").replace(/\//g,"_")};const i={};for(let e=0;e<=255;e++){let t=e.toString(16);t.length<2&&(t="0"+t),i[t]=e}function s(e){const t=(e=e.toLowerCase()).length;if(t%2!=0)throw new n.ParseHexError("Hex string must have length a multiple of 2: "+e);const r=t/2,o=new Uint8Array(r);for(let t=0;t<r;t++){const r=2*t,s=e.substring(r,r+2);if(!i.hasOwnProperty(s))throw new n.ParseHexError("Invalid hex character: "+s);o[t]=i[s]}return o}},9372:(e,t)=>{"use strict";function r(e){return"/"===e.slice(-1)?e.slice(0,-1):e}Object.defineProperty(t,"__esModule",{value:!0}),t.addPathToUrl=t.removeUrlLastSlash=void 0,t.removeUrlLastSlash=r,t.addPathToUrl=function(e,t){return r(e)+"/"+t}},5684:(e,t)=>{"use strict";function r(){if("undefined"!=typeof window)return window}Object.defineProperty(t,"__esModule",{value:!0}),t.getWebPageManifest=t.getDocument=t.getWindow=void 0,t.getWindow=r,t.getDocument=function(){if("undefined"!=typeof document)return document},t.getWebPageManifest=function(){var e;const t=null===(e=r())||void 0===e?void 0:e.location.origin;return t?t+"/tonconnect-manifest.json":""}},1302:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function c(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,c)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.WalletsListManager=void 0;const o=r(6897),i=r(5910),s=r(7544);t.WalletsListManager=class{constructor(e){this.walletsListCache=null,this.walletsListSource="https://raw.githubusercontent.com/ton-connect/wallets-list/main/wallets.json",e&&(this.walletsListSource=e)}getWallets(){return n(this,void 0,void 0,(function*(){return this.walletsListCache||(this.walletsListCache=this.fetchWalletsList(),this.walletsListCache.catch((()=>this.walletsListCache=null))),this.walletsListCache}))}getEmbeddedWallet(){return n(this,void 0,void 0,(function*(){const e=(yield this.getWallets()).filter((e=>(0,i.isWalletInfoInjected)(e)&&e.embedded));return 1!==e.length?null:e[0]}))}fetchWalletsList(){return n(this,void 0,void 0,(function*(){try{const e=yield fetch(this.walletsListSource),t=yield e.json();if(!Array.isArray(t)||!t.every((e=>this.isCorrectWalletConfigDTO(e))))throw new o.FetchWalletsError("Wrong wallets list format");return this.walletConfigDTOListToWalletConfigList(t)}catch(e){throw new o.FetchWalletsError(e)}}))}walletConfigDTOListToWalletConfigList(e){return e.map((e=>{const t={name:e.name,imageUrl:e.image,aboutUrl:e.about_url,tondns:e.tondns};return e.bridge.forEach((r=>{if("sse"===r.type&&(t.bridgeUrl=r.url,t.universalLink=e.universal_url,t.deepLink=e.deepLink),"js"===r.type){const e=r.key;t.jsBridgeKey=e,t.injected=s.InjectedProvider.isWalletInjected(e),t.embedded=s.InjectedProvider.isInsideWalletBrowser(e)}})),t}))}isCorrectWalletConfigDTO(e){if(!e||"object"!=typeof e)return!1;if(!("name"in e)||!("image"in e)||!("about_url"in e))return!1;if(!("bridge"in e)||!Array.isArray(e.bridge)||!e.bridge.length)return!1;const t=e.bridge;if(t.some((e=>!e||"object"!=typeof e||!("type"in e))))return!1;const r=t.find((e=>"sse"===e.type));if(r&&(!("url"in r)||!r.url||!e.universal_url))return!1;const n=t.find((e=>"js"===e.type));return!!(!n||"key"in n&&n.key)}}},251:function(e){!function(t,r){"use strict";e.exports?e.exports=r():(t.nacl||(t.nacl={}),t.nacl.util=r())}(this,(function(){"use strict";var e={};function t(e){if(!/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.test(e))throw new TypeError("invalid encoding")}return e.decodeUTF8=function(e){if("string"!=typeof e)throw new TypeError("expected string");var t,r=unescape(encodeURIComponent(e)),n=new Uint8Array(r.length);for(t=0;t<r.length;t++)n[t]=r.charCodeAt(t);return n},e.encodeUTF8=function(e){var t,r=[];for(t=0;t<e.length;t++)r.push(String.fromCharCode(e[t]));return decodeURIComponent(escape(r.join("")))},"undefined"==typeof atob?void 0!==Buffer.from?(e.encodeBase64=function(e){return Buffer.from(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(Buffer.from(e,"base64"),0))}):(e.encodeBase64=function(e){return new Buffer(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(new Buffer(e,"base64"),0))}):(e.encodeBase64=function(e){var t,r=[],n=e.length;for(t=0;t<n;t++)r.push(String.fromCharCode(e[t]));return btoa(r.join(""))},e.decodeBase64=function(e){t(e);var r,n=atob(e),o=new Uint8Array(n.length);for(r=0;r<n.length;r++)o[r]=n.charCodeAt(r);return o}),e}))},717:(e,t,r)=>{!function(e){"use strict";var t=function(e){var t,r=new Float64Array(16);if(e)for(t=0;t<e.length;t++)r[t]=e[t];return r},n=function(){throw new Error("no PRNG")},o=new Uint8Array(16),i=new Uint8Array(32);i[0]=9;var s=t(),c=t([1]),a=t([56129,1]),u=t([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),l=t([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),d=t([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),h=t([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=t([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function p(e,t,r,n){e[t]=r>>24&255,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r,e[t+4]=n>>24&255,e[t+5]=n>>16&255,e[t+6]=n>>8&255,e[t+7]=255&n}function y(e,t,r,n,o){var i,s=0;for(i=0;i<o;i++)s|=e[t+i]^r[n+i];return(1&s-1>>>8)-1}function _(e,t,r,n){return y(e,t,r,n,16)}function v(e,t,r,n){return y(e,t,r,n,32)}function g(e,t,r,n){!function(e,t,r,n){for(var o,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,c=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,a=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,l=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,_=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,v=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,g=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,w=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,E=i,O=s,S=c,R=a,C=u,P=l,j=d,m=h,T=f,N=p,A=y,U=_,M=v,x=g,W=b,I=w,B=0;B<20;B+=2)E^=(o=(M^=(o=(T^=(o=(C^=(o=E+M|0)<<7|o>>>25)+E|0)<<9|o>>>23)+C|0)<<13|o>>>19)+T|0)<<18|o>>>14,P^=(o=(O^=(o=(x^=(o=(N^=(o=P+O|0)<<7|o>>>25)+P|0)<<9|o>>>23)+N|0)<<13|o>>>19)+x|0)<<18|o>>>14,A^=(o=(j^=(o=(S^=(o=(W^=(o=A+j|0)<<7|o>>>25)+A|0)<<9|o>>>23)+W|0)<<13|o>>>19)+S|0)<<18|o>>>14,I^=(o=(U^=(o=(m^=(o=(R^=(o=I+U|0)<<7|o>>>25)+I|0)<<9|o>>>23)+R|0)<<13|o>>>19)+m|0)<<18|o>>>14,E^=(o=(R^=(o=(S^=(o=(O^=(o=E+R|0)<<7|o>>>25)+E|0)<<9|o>>>23)+O|0)<<13|o>>>19)+S|0)<<18|o>>>14,P^=(o=(C^=(o=(m^=(o=(j^=(o=P+C|0)<<7|o>>>25)+P|0)<<9|o>>>23)+j|0)<<13|o>>>19)+m|0)<<18|o>>>14,A^=(o=(N^=(o=(T^=(o=(U^=(o=A+N|0)<<7|o>>>25)+A|0)<<9|o>>>23)+U|0)<<13|o>>>19)+T|0)<<18|o>>>14,I^=(o=(W^=(o=(x^=(o=(M^=(o=I+W|0)<<7|o>>>25)+I|0)<<9|o>>>23)+M|0)<<13|o>>>19)+x|0)<<18|o>>>14;E=E+i|0,O=O+s|0,S=S+c|0,R=R+a|0,C=C+u|0,P=P+l|0,j=j+d|0,m=m+h|0,T=T+f|0,N=N+p|0,A=A+y|0,U=U+_|0,M=M+v|0,x=x+g|0,W=W+b|0,I=I+w|0,e[0]=E>>>0&255,e[1]=E>>>8&255,e[2]=E>>>16&255,e[3]=E>>>24&255,e[4]=O>>>0&255,e[5]=O>>>8&255,e[6]=O>>>16&255,e[7]=O>>>24&255,e[8]=S>>>0&255,e[9]=S>>>8&255,e[10]=S>>>16&255,e[11]=S>>>24&255,e[12]=R>>>0&255,e[13]=R>>>8&255,e[14]=R>>>16&255,e[15]=R>>>24&255,e[16]=C>>>0&255,e[17]=C>>>8&255,e[18]=C>>>16&255,e[19]=C>>>24&255,e[20]=P>>>0&255,e[21]=P>>>8&255,e[22]=P>>>16&255,e[23]=P>>>24&255,e[24]=j>>>0&255,e[25]=j>>>8&255,e[26]=j>>>16&255,e[27]=j>>>24&255,e[28]=m>>>0&255,e[29]=m>>>8&255,e[30]=m>>>16&255,e[31]=m>>>24&255,e[32]=T>>>0&255,e[33]=T>>>8&255,e[34]=T>>>16&255,e[35]=T>>>24&255,e[36]=N>>>0&255,e[37]=N>>>8&255,e[38]=N>>>16&255,e[39]=N>>>24&255,e[40]=A>>>0&255,e[41]=A>>>8&255,e[42]=A>>>16&255,e[43]=A>>>24&255,e[44]=U>>>0&255,e[45]=U>>>8&255,e[46]=U>>>16&255,e[47]=U>>>24&255,e[48]=M>>>0&255,e[49]=M>>>8&255,e[50]=M>>>16&255,e[51]=M>>>24&255,e[52]=x>>>0&255,e[53]=x>>>8&255,e[54]=x>>>16&255,e[55]=x>>>24&255,e[56]=W>>>0&255,e[57]=W>>>8&255,e[58]=W>>>16&255,e[59]=W>>>24&255,e[60]=I>>>0&255,e[61]=I>>>8&255,e[62]=I>>>16&255,e[63]=I>>>24&255}(e,t,r,n)}function b(e,t,r,n){!function(e,t,r,n){for(var o,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,c=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,a=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,l=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,_=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,v=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,g=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,w=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,E=0;E<20;E+=2)i^=(o=(v^=(o=(f^=(o=(u^=(o=i+v|0)<<7|o>>>25)+i|0)<<9|o>>>23)+u|0)<<13|o>>>19)+f|0)<<18|o>>>14,l^=(o=(s^=(o=(g^=(o=(p^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+p|0)<<13|o>>>19)+g|0)<<18|o>>>14,y^=(o=(d^=(o=(c^=(o=(b^=(o=y+d|0)<<7|o>>>25)+y|0)<<9|o>>>23)+b|0)<<13|o>>>19)+c|0)<<18|o>>>14,w^=(o=(_^=(o=(h^=(o=(a^=(o=w+_|0)<<7|o>>>25)+w|0)<<9|o>>>23)+a|0)<<13|o>>>19)+h|0)<<18|o>>>14,i^=(o=(a^=(o=(c^=(o=(s^=(o=i+a|0)<<7|o>>>25)+i|0)<<9|o>>>23)+s|0)<<13|o>>>19)+c|0)<<18|o>>>14,l^=(o=(u^=(o=(h^=(o=(d^=(o=l+u|0)<<7|o>>>25)+l|0)<<9|o>>>23)+d|0)<<13|o>>>19)+h|0)<<18|o>>>14,y^=(o=(p^=(o=(f^=(o=(_^=(o=y+p|0)<<7|o>>>25)+y|0)<<9|o>>>23)+_|0)<<13|o>>>19)+f|0)<<18|o>>>14,w^=(o=(b^=(o=(g^=(o=(v^=(o=w+b|0)<<7|o>>>25)+w|0)<<9|o>>>23)+v|0)<<13|o>>>19)+g|0)<<18|o>>>14;e[0]=i>>>0&255,e[1]=i>>>8&255,e[2]=i>>>16&255,e[3]=i>>>24&255,e[4]=l>>>0&255,e[5]=l>>>8&255,e[6]=l>>>16&255,e[7]=l>>>24&255,e[8]=y>>>0&255,e[9]=y>>>8&255,e[10]=y>>>16&255,e[11]=y>>>24&255,e[12]=w>>>0&255,e[13]=w>>>8&255,e[14]=w>>>16&255,e[15]=w>>>24&255,e[16]=d>>>0&255,e[17]=d>>>8&255,e[18]=d>>>16&255,e[19]=d>>>24&255,e[20]=h>>>0&255,e[21]=h>>>8&255,e[22]=h>>>16&255,e[23]=h>>>24&255,e[24]=f>>>0&255,e[25]=f>>>8&255,e[26]=f>>>16&255,e[27]=f>>>24&255,e[28]=p>>>0&255,e[29]=p>>>8&255,e[30]=p>>>16&255,e[31]=p>>>24&255}(e,t,r,n)}var w=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function E(e,t,r,n,o,i,s){var c,a,u=new Uint8Array(16),l=new Uint8Array(64);for(a=0;a<16;a++)u[a]=0;for(a=0;a<8;a++)u[a]=i[a];for(;o>=64;){for(g(l,u,s,w),a=0;a<64;a++)e[t+a]=r[n+a]^l[a];for(c=1,a=8;a<16;a++)c=c+(255&u[a])|0,u[a]=255&c,c>>>=8;o-=64,t+=64,n+=64}if(o>0)for(g(l,u,s,w),a=0;a<o;a++)e[t+a]=r[n+a]^l[a];return 0}function O(e,t,r,n,o){var i,s,c=new Uint8Array(16),a=new Uint8Array(64);for(s=0;s<16;s++)c[s]=0;for(s=0;s<8;s++)c[s]=n[s];for(;r>=64;){for(g(a,c,o,w),s=0;s<64;s++)e[t+s]=a[s];for(i=1,s=8;s<16;s++)i=i+(255&c[s])|0,c[s]=255&i,i>>>=8;r-=64,t+=64}if(r>0)for(g(a,c,o,w),s=0;s<r;s++)e[t+s]=a[s];return 0}function S(e,t,r,n,o){var i=new Uint8Array(32);b(i,n,o,w);for(var s=new Uint8Array(8),c=0;c<8;c++)s[c]=n[c+16];return O(e,t,r,s,i)}function R(e,t,r,n,o,i,s){var c=new Uint8Array(32);b(c,i,s,w);for(var a=new Uint8Array(8),u=0;u<8;u++)a[u]=i[u+16];return E(e,t,r,n,o,a,c)}var C=function(e){var t,r,n,o,i,s,c,a;this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.leftover=0,this.fin=0,t=255&e[0]|(255&e[1])<<8,this.r[0]=8191&t,r=255&e[2]|(255&e[3])<<8,this.r[1]=8191&(t>>>13|r<<3),n=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(r>>>10|n<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(n>>>7|o<<9),i=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,s=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(i>>>14|s<<2),c=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(s>>>11|c<<5),a=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(c>>>8|a<<8),this.r[9]=a>>>5&127,this.pad[0]=255&e[16]|(255&e[17])<<8,this.pad[1]=255&e[18]|(255&e[19])<<8,this.pad[2]=255&e[20]|(255&e[21])<<8,this.pad[3]=255&e[22]|(255&e[23])<<8,this.pad[4]=255&e[24]|(255&e[25])<<8,this.pad[5]=255&e[26]|(255&e[27])<<8,this.pad[6]=255&e[28]|(255&e[29])<<8,this.pad[7]=255&e[30]|(255&e[31])<<8};function P(e,t,r,n,o,i){var s=new C(i);return s.update(r,n,o),s.finish(e,t),0}function j(e,t,r,n,o,i){var s=new Uint8Array(16);return P(s,0,r,n,o,i),_(e,t,s,0)}function m(e,t,r,n,o){var i;if(r<32)return-1;for(R(e,0,t,0,r,n,o),P(e,16,e,32,r-32,e),i=0;i<16;i++)e[i]=0;return 0}function T(e,t,r,n,o){var i,s=new Uint8Array(32);if(r<32)return-1;if(S(s,0,32,n,o),0!==j(t,16,t,32,r-32,s))return-1;for(R(e,0,t,0,r,n,o),i=0;i<32;i++)e[i]=0;return 0}function N(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function A(e){var t,r,n=1;for(t=0;t<16;t++)r=e[t]+n+65535,n=Math.floor(r/65536),e[t]=r-65536*n;e[0]+=n-1+37*(n-1)}function U(e,t,r){for(var n,o=~(r-1),i=0;i<16;i++)n=o&(e[i]^t[i]),e[i]^=n,t[i]^=n}function M(e,r){var n,o,i,s=t(),c=t();for(n=0;n<16;n++)c[n]=r[n];for(A(c),A(c),A(c),o=0;o<2;o++){for(s[0]=c[0]-65517,n=1;n<15;n++)s[n]=c[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=c[15]-32767-(s[14]>>16&1),i=s[15]>>16&1,s[14]&=65535,U(c,s,1-i)}for(n=0;n<16;n++)e[2*n]=255&c[n],e[2*n+1]=c[n]>>8}function x(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return M(r,e),M(n,t),v(r,0,n,0)}function W(e){var t=new Uint8Array(32);return M(t,e),1&t[0]}function I(e,t){var r;for(r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}function B(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function k(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function D(e,t,r){var n,o,i=0,s=0,c=0,a=0,u=0,l=0,d=0,h=0,f=0,p=0,y=0,_=0,v=0,g=0,b=0,w=0,E=0,O=0,S=0,R=0,C=0,P=0,j=0,m=0,T=0,N=0,A=0,U=0,M=0,x=0,W=0,I=r[0],B=r[1],k=r[2],D=r[3],L=r[4],K=r[5],F=r[6],H=r[7],q=r[8],J=r[9],Y=r[10],V=r[11],z=r[12],G=r[13],$=r[14],Z=r[15];i+=(n=t[0])*I,s+=n*B,c+=n*k,a+=n*D,u+=n*L,l+=n*K,d+=n*F,h+=n*H,f+=n*q,p+=n*J,y+=n*Y,_+=n*V,v+=n*z,g+=n*G,b+=n*$,w+=n*Z,s+=(n=t[1])*I,c+=n*B,a+=n*k,u+=n*D,l+=n*L,d+=n*K,h+=n*F,f+=n*H,p+=n*q,y+=n*J,_+=n*Y,v+=n*V,g+=n*z,b+=n*G,w+=n*$,E+=n*Z,c+=(n=t[2])*I,a+=n*B,u+=n*k,l+=n*D,d+=n*L,h+=n*K,f+=n*F,p+=n*H,y+=n*q,_+=n*J,v+=n*Y,g+=n*V,b+=n*z,w+=n*G,E+=n*$,O+=n*Z,a+=(n=t[3])*I,u+=n*B,l+=n*k,d+=n*D,h+=n*L,f+=n*K,p+=n*F,y+=n*H,_+=n*q,v+=n*J,g+=n*Y,b+=n*V,w+=n*z,E+=n*G,O+=n*$,S+=n*Z,u+=(n=t[4])*I,l+=n*B,d+=n*k,h+=n*D,f+=n*L,p+=n*K,y+=n*F,_+=n*H,v+=n*q,g+=n*J,b+=n*Y,w+=n*V,E+=n*z,O+=n*G,S+=n*$,R+=n*Z,l+=(n=t[5])*I,d+=n*B,h+=n*k,f+=n*D,p+=n*L,y+=n*K,_+=n*F,v+=n*H,g+=n*q,b+=n*J,w+=n*Y,E+=n*V,O+=n*z,S+=n*G,R+=n*$,C+=n*Z,d+=(n=t[6])*I,h+=n*B,f+=n*k,p+=n*D,y+=n*L,_+=n*K,v+=n*F,g+=n*H,b+=n*q,w+=n*J,E+=n*Y,O+=n*V,S+=n*z,R+=n*G,C+=n*$,P+=n*Z,h+=(n=t[7])*I,f+=n*B,p+=n*k,y+=n*D,_+=n*L,v+=n*K,g+=n*F,b+=n*H,w+=n*q,E+=n*J,O+=n*Y,S+=n*V,R+=n*z,C+=n*G,P+=n*$,j+=n*Z,f+=(n=t[8])*I,p+=n*B,y+=n*k,_+=n*D,v+=n*L,g+=n*K,b+=n*F,w+=n*H,E+=n*q,O+=n*J,S+=n*Y,R+=n*V,C+=n*z,P+=n*G,j+=n*$,m+=n*Z,p+=(n=t[9])*I,y+=n*B,_+=n*k,v+=n*D,g+=n*L,b+=n*K,w+=n*F,E+=n*H,O+=n*q,S+=n*J,R+=n*Y,C+=n*V,P+=n*z,j+=n*G,m+=n*$,T+=n*Z,y+=(n=t[10])*I,_+=n*B,v+=n*k,g+=n*D,b+=n*L,w+=n*K,E+=n*F,O+=n*H,S+=n*q,R+=n*J,C+=n*Y,P+=n*V,j+=n*z,m+=n*G,T+=n*$,N+=n*Z,_+=(n=t[11])*I,v+=n*B,g+=n*k,b+=n*D,w+=n*L,E+=n*K,O+=n*F,S+=n*H,R+=n*q,C+=n*J,P+=n*Y,j+=n*V,m+=n*z,T+=n*G,N+=n*$,A+=n*Z,v+=(n=t[12])*I,g+=n*B,b+=n*k,w+=n*D,E+=n*L,O+=n*K,S+=n*F,R+=n*H,C+=n*q,P+=n*J,j+=n*Y,m+=n*V,T+=n*z,N+=n*G,A+=n*$,U+=n*Z,g+=(n=t[13])*I,b+=n*B,w+=n*k,E+=n*D,O+=n*L,S+=n*K,R+=n*F,C+=n*H,P+=n*q,j+=n*J,m+=n*Y,T+=n*V,N+=n*z,A+=n*G,U+=n*$,M+=n*Z,b+=(n=t[14])*I,w+=n*B,E+=n*k,O+=n*D,S+=n*L,R+=n*K,C+=n*F,P+=n*H,j+=n*q,m+=n*J,T+=n*Y,N+=n*V,A+=n*z,U+=n*G,M+=n*$,x+=n*Z,w+=(n=t[15])*I,s+=38*(O+=n*k),c+=38*(S+=n*D),a+=38*(R+=n*L),u+=38*(C+=n*K),l+=38*(P+=n*F),d+=38*(j+=n*H),h+=38*(m+=n*q),f+=38*(T+=n*J),p+=38*(N+=n*Y),y+=38*(A+=n*V),_+=38*(U+=n*z),v+=38*(M+=n*G),g+=38*(x+=n*$),b+=38*(W+=n*Z),i=(n=(i+=38*(E+=n*B))+(o=1)+65535)-65536*(o=Math.floor(n/65536)),s=(n=s+o+65535)-65536*(o=Math.floor(n/65536)),c=(n=c+o+65535)-65536*(o=Math.floor(n/65536)),a=(n=a+o+65535)-65536*(o=Math.floor(n/65536)),u=(n=u+o+65535)-65536*(o=Math.floor(n/65536)),l=(n=l+o+65535)-65536*(o=Math.floor(n/65536)),d=(n=d+o+65535)-65536*(o=Math.floor(n/65536)),h=(n=h+o+65535)-65536*(o=Math.floor(n/65536)),f=(n=f+o+65535)-65536*(o=Math.floor(n/65536)),p=(n=p+o+65535)-65536*(o=Math.floor(n/65536)),y=(n=y+o+65535)-65536*(o=Math.floor(n/65536)),_=(n=_+o+65535)-65536*(o=Math.floor(n/65536)),v=(n=v+o+65535)-65536*(o=Math.floor(n/65536)),g=(n=g+o+65535)-65536*(o=Math.floor(n/65536)),b=(n=b+o+65535)-65536*(o=Math.floor(n/65536)),w=(n=w+o+65535)-65536*(o=Math.floor(n/65536)),i=(n=(i+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(n/65536)),s=(n=s+o+65535)-65536*(o=Math.floor(n/65536)),c=(n=c+o+65535)-65536*(o=Math.floor(n/65536)),a=(n=a+o+65535)-65536*(o=Math.floor(n/65536)),u=(n=u+o+65535)-65536*(o=Math.floor(n/65536)),l=(n=l+o+65535)-65536*(o=Math.floor(n/65536)),d=(n=d+o+65535)-65536*(o=Math.floor(n/65536)),h=(n=h+o+65535)-65536*(o=Math.floor(n/65536)),f=(n=f+o+65535)-65536*(o=Math.floor(n/65536)),p=(n=p+o+65535)-65536*(o=Math.floor(n/65536)),y=(n=y+o+65535)-65536*(o=Math.floor(n/65536)),_=(n=_+o+65535)-65536*(o=Math.floor(n/65536)),v=(n=v+o+65535)-65536*(o=Math.floor(n/65536)),g=(n=g+o+65535)-65536*(o=Math.floor(n/65536)),b=(n=b+o+65535)-65536*(o=Math.floor(n/65536)),w=(n=w+o+65535)-65536*(o=Math.floor(n/65536)),i+=o-1+37*(o-1),e[0]=i,e[1]=s,e[2]=c,e[3]=a,e[4]=u,e[5]=l,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=y,e[11]=_,e[12]=v,e[13]=g,e[14]=b,e[15]=w}function L(e,t){D(e,t,t)}function K(e,r){var n,o=t();for(n=0;n<16;n++)o[n]=r[n];for(n=253;n>=0;n--)L(o,o),2!==n&&4!==n&&D(o,o,r);for(n=0;n<16;n++)e[n]=o[n]}function F(e,r){var n,o=t();for(n=0;n<16;n++)o[n]=r[n];for(n=250;n>=0;n--)L(o,o),1!==n&&D(o,o,r);for(n=0;n<16;n++)e[n]=o[n]}function H(e,r,n){var o,i,s=new Uint8Array(32),c=new Float64Array(80),u=t(),l=t(),d=t(),h=t(),f=t(),p=t();for(i=0;i<31;i++)s[i]=r[i];for(s[31]=127&r[31]|64,s[0]&=248,I(c,n),i=0;i<16;i++)l[i]=c[i],h[i]=u[i]=d[i]=0;for(u[0]=h[0]=1,i=254;i>=0;--i)U(u,l,o=s[i>>>3]>>>(7&i)&1),U(d,h,o),B(f,u,d),k(u,u,d),B(d,l,h),k(l,l,h),L(h,f),L(p,u),D(u,d,u),D(d,l,f),B(f,u,d),k(u,u,d),L(l,u),k(d,h,p),D(u,d,a),B(u,u,h),D(d,d,u),D(u,h,p),D(h,l,c),L(l,f),U(u,l,o),U(d,h,o);for(i=0;i<16;i++)c[i+16]=u[i],c[i+32]=d[i],c[i+48]=l[i],c[i+64]=h[i];var y=c.subarray(32),_=c.subarray(16);return K(y,y),D(_,_,y),M(e,_),0}function q(e,t){return H(e,t,i)}function J(e,t){return n(t,32),q(e,t)}function Y(e,t,r){var n=new Uint8Array(32);return H(n,r,t),b(e,o,n,w)}C.prototype.blocks=function(e,t,r){for(var n,o,i,s,c,a,u,l,d,h,f,p,y,_,v,g,b,w,E,O=this.fin?0:2048,S=this.h[0],R=this.h[1],C=this.h[2],P=this.h[3],j=this.h[4],m=this.h[5],T=this.h[6],N=this.h[7],A=this.h[8],U=this.h[9],M=this.r[0],x=this.r[1],W=this.r[2],I=this.r[3],B=this.r[4],k=this.r[5],D=this.r[6],L=this.r[7],K=this.r[8],F=this.r[9];r>=16;)h=d=0,h+=(S+=8191&(n=255&e[t+0]|(255&e[t+1])<<8))*M,h+=(R+=8191&(n>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*F),h+=(C+=8191&(o>>>10|(i=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*K),h+=(P+=8191&(i>>>7|(s=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),d=(h+=(j+=8191&(s>>>4|(c=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*D))>>>13,h&=8191,h+=(m+=c>>>1&8191)*(5*k),h+=(T+=8191&(c>>>14|(a=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*B),h+=(N+=8191&(a>>>11|(u=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*I),h+=(A+=8191&(u>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*W),f=d+=(h+=(U+=l>>>5|O)*(5*x))>>>13,f+=S*x,f+=R*M,f+=C*(5*F),f+=P*(5*K),d=(f+=j*(5*L))>>>13,f&=8191,f+=m*(5*D),f+=T*(5*k),f+=N*(5*B),f+=A*(5*I),d+=(f+=U*(5*W))>>>13,f&=8191,p=d,p+=S*W,p+=R*x,p+=C*M,p+=P*(5*F),d=(p+=j*(5*K))>>>13,p&=8191,p+=m*(5*L),p+=T*(5*D),p+=N*(5*k),p+=A*(5*B),y=d+=(p+=U*(5*I))>>>13,y+=S*I,y+=R*W,y+=C*x,y+=P*M,d=(y+=j*(5*F))>>>13,y&=8191,y+=m*(5*K),y+=T*(5*L),y+=N*(5*D),y+=A*(5*k),_=d+=(y+=U*(5*B))>>>13,_+=S*B,_+=R*I,_+=C*W,_+=P*x,d=(_+=j*M)>>>13,_&=8191,_+=m*(5*F),_+=T*(5*K),_+=N*(5*L),_+=A*(5*D),v=d+=(_+=U*(5*k))>>>13,v+=S*k,v+=R*B,v+=C*I,v+=P*W,d=(v+=j*x)>>>13,v&=8191,v+=m*M,v+=T*(5*F),v+=N*(5*K),v+=A*(5*L),g=d+=(v+=U*(5*D))>>>13,g+=S*D,g+=R*k,g+=C*B,g+=P*I,d=(g+=j*W)>>>13,g&=8191,g+=m*x,g+=T*M,g+=N*(5*F),g+=A*(5*K),b=d+=(g+=U*(5*L))>>>13,b+=S*L,b+=R*D,b+=C*k,b+=P*B,d=(b+=j*I)>>>13,b&=8191,b+=m*W,b+=T*x,b+=N*M,b+=A*(5*F),w=d+=(b+=U*(5*K))>>>13,w+=S*K,w+=R*L,w+=C*D,w+=P*k,d=(w+=j*B)>>>13,w&=8191,w+=m*I,w+=T*W,w+=N*x,w+=A*M,E=d+=(w+=U*(5*F))>>>13,E+=S*F,E+=R*K,E+=C*L,E+=P*D,d=(E+=j*k)>>>13,E&=8191,E+=m*B,E+=T*I,E+=N*W,E+=A*x,S=h=8191&(d=(d=((d+=(E+=U*M)>>>13)<<2)+d|0)+(h&=8191)|0),R=f+=d>>>=13,C=p&=8191,P=y&=8191,j=_&=8191,m=v&=8191,T=g&=8191,N=b&=8191,A=w&=8191,U=E&=8191,t+=16,r-=16;this.h[0]=S,this.h[1]=R,this.h[2]=C,this.h[3]=P,this.h[4]=j,this.h[5]=m,this.h[6]=T,this.h[7]=N,this.h[8]=A,this.h[9]=U},C.prototype.finish=function(e,t){var r,n,o,i,s=new Uint16Array(10);if(this.leftover){for(i=this.leftover,this.buffer[i++]=1;i<16;i++)this.buffer[i]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,i=2;i<10;i++)this.h[i]+=r,r=this.h[i]>>>13,this.h[i]&=8191;for(this.h[0]+=5*r,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,s[0]=this.h[0]+5,r=s[0]>>>13,s[0]&=8191,i=1;i<10;i++)s[i]=this.h[i]+r,r=s[i]>>>13,s[i]&=8191;for(s[9]-=8192,n=(1^r)-1,i=0;i<10;i++)s[i]&=n;for(n=~n,i=0;i<10;i++)this.h[i]=this.h[i]&n|s[i];for(this.h[0]=65535&(this.h[0]|this.h[1]<<13),this.h[1]=65535&(this.h[1]>>>3|this.h[2]<<10),this.h[2]=65535&(this.h[2]>>>6|this.h[3]<<7),this.h[3]=65535&(this.h[3]>>>9|this.h[4]<<4),this.h[4]=65535&(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14),this.h[5]=65535&(this.h[6]>>>2|this.h[7]<<11),this.h[6]=65535&(this.h[7]>>>5|this.h[8]<<8),this.h[7]=65535&(this.h[8]>>>8|this.h[9]<<5),o=this.h[0]+this.pad[0],this.h[0]=65535&o,i=1;i<8;i++)o=(this.h[i]+this.pad[i]|0)+(o>>>16)|0,this.h[i]=65535&o;e[t+0]=this.h[0]>>>0&255,e[t+1]=this.h[0]>>>8&255,e[t+2]=this.h[1]>>>0&255,e[t+3]=this.h[1]>>>8&255,e[t+4]=this.h[2]>>>0&255,e[t+5]=this.h[2]>>>8&255,e[t+6]=this.h[3]>>>0&255,e[t+7]=this.h[3]>>>8&255,e[t+8]=this.h[4]>>>0&255,e[t+9]=this.h[4]>>>8&255,e[t+10]=this.h[5]>>>0&255,e[t+11]=this.h[5]>>>8&255,e[t+12]=this.h[6]>>>0&255,e[t+13]=this.h[6]>>>8&255,e[t+14]=this.h[7]>>>0&255,e[t+15]=this.h[7]>>>8&255},C.prototype.update=function(e,t,r){var n,o;if(this.leftover){for((o=16-this.leftover)>r&&(o=r),n=0;n<o;n++)this.buffer[this.leftover+n]=e[t+n];if(r-=o,t+=o,this.leftover+=o,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(r>=16&&(o=r-r%16,this.blocks(e,t,o),t+=o,r-=o),r){for(n=0;n<r;n++)this.buffer[this.leftover+n]=e[t+n];this.leftover+=r}};var V=m,z=T,G=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function $(e,t,r,n){for(var o,i,s,c,a,u,l,d,h,f,p,y,_,v,g,b,w,E,O,S,R,C,P,j,m,T,N=new Int32Array(16),A=new Int32Array(16),U=e[0],M=e[1],x=e[2],W=e[3],I=e[4],B=e[5],k=e[6],D=e[7],L=t[0],K=t[1],F=t[2],H=t[3],q=t[4],J=t[5],Y=t[6],V=t[7],z=0;n>=128;){for(O=0;O<16;O++)S=8*O+z,N[O]=r[S+0]<<24|r[S+1]<<16|r[S+2]<<8|r[S+3],A[O]=r[S+4]<<24|r[S+5]<<16|r[S+6]<<8|r[S+7];for(O=0;O<80;O++)if(o=U,i=M,s=x,c=W,a=I,u=B,l=k,h=L,f=K,p=F,y=H,_=q,v=J,g=Y,P=65535&(C=V),j=C>>>16,m=65535&(R=D),T=R>>>16,P+=65535&(C=(q>>>14|I<<18)^(q>>>18|I<<14)^(I>>>9|q<<23)),j+=C>>>16,m+=65535&(R=(I>>>14|q<<18)^(I>>>18|q<<14)^(q>>>9|I<<23)),T+=R>>>16,P+=65535&(C=q&J^~q&Y),j+=C>>>16,m+=65535&(R=I&B^~I&k),T+=R>>>16,P+=65535&(C=G[2*O+1]),j+=C>>>16,m+=65535&(R=G[2*O]),T+=R>>>16,R=N[O%16],j+=(C=A[O%16])>>>16,m+=65535&R,T+=R>>>16,m+=(j+=(P+=65535&C)>>>16)>>>16,P=65535&(C=E=65535&P|j<<16),j=C>>>16,m=65535&(R=w=65535&m|(T+=m>>>16)<<16),T=R>>>16,P+=65535&(C=(L>>>28|U<<4)^(U>>>2|L<<30)^(U>>>7|L<<25)),j+=C>>>16,m+=65535&(R=(U>>>28|L<<4)^(L>>>2|U<<30)^(L>>>7|U<<25)),T+=R>>>16,j+=(C=L&K^L&F^K&F)>>>16,m+=65535&(R=U&M^U&x^M&x),T+=R>>>16,d=65535&(m+=(j+=(P+=65535&C)>>>16)>>>16)|(T+=m>>>16)<<16,b=65535&P|j<<16,P=65535&(C=y),j=C>>>16,m=65535&(R=c),T=R>>>16,j+=(C=E)>>>16,m+=65535&(R=w),T+=R>>>16,M=o,x=i,W=s,I=c=65535&(m+=(j+=(P+=65535&C)>>>16)>>>16)|(T+=m>>>16)<<16,B=a,k=u,D=l,U=d,K=h,F=f,H=p,q=y=65535&P|j<<16,J=_,Y=v,V=g,L=b,O%16==15)for(S=0;S<16;S++)R=N[S],P=65535&(C=A[S]),j=C>>>16,m=65535&R,T=R>>>16,R=N[(S+9)%16],P+=65535&(C=A[(S+9)%16]),j+=C>>>16,m+=65535&R,T+=R>>>16,w=N[(S+1)%16],P+=65535&(C=((E=A[(S+1)%16])>>>1|w<<31)^(E>>>8|w<<24)^(E>>>7|w<<25)),j+=C>>>16,m+=65535&(R=(w>>>1|E<<31)^(w>>>8|E<<24)^w>>>7),T+=R>>>16,w=N[(S+14)%16],j+=(C=((E=A[(S+14)%16])>>>19|w<<13)^(w>>>29|E<<3)^(E>>>6|w<<26))>>>16,m+=65535&(R=(w>>>19|E<<13)^(E>>>29|w<<3)^w>>>6),T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,N[S]=65535&m|T<<16,A[S]=65535&P|j<<16;P=65535&(C=L),j=C>>>16,m=65535&(R=U),T=R>>>16,R=e[0],j+=(C=t[0])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[0]=U=65535&m|T<<16,t[0]=L=65535&P|j<<16,P=65535&(C=K),j=C>>>16,m=65535&(R=M),T=R>>>16,R=e[1],j+=(C=t[1])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[1]=M=65535&m|T<<16,t[1]=K=65535&P|j<<16,P=65535&(C=F),j=C>>>16,m=65535&(R=x),T=R>>>16,R=e[2],j+=(C=t[2])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[2]=x=65535&m|T<<16,t[2]=F=65535&P|j<<16,P=65535&(C=H),j=C>>>16,m=65535&(R=W),T=R>>>16,R=e[3],j+=(C=t[3])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[3]=W=65535&m|T<<16,t[3]=H=65535&P|j<<16,P=65535&(C=q),j=C>>>16,m=65535&(R=I),T=R>>>16,R=e[4],j+=(C=t[4])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[4]=I=65535&m|T<<16,t[4]=q=65535&P|j<<16,P=65535&(C=J),j=C>>>16,m=65535&(R=B),T=R>>>16,R=e[5],j+=(C=t[5])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[5]=B=65535&m|T<<16,t[5]=J=65535&P|j<<16,P=65535&(C=Y),j=C>>>16,m=65535&(R=k),T=R>>>16,R=e[6],j+=(C=t[6])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[6]=k=65535&m|T<<16,t[6]=Y=65535&P|j<<16,P=65535&(C=V),j=C>>>16,m=65535&(R=D),T=R>>>16,R=e[7],j+=(C=t[7])>>>16,m+=65535&R,T+=R>>>16,T+=(m+=(j+=(P+=65535&C)>>>16)>>>16)>>>16,e[7]=D=65535&m|T<<16,t[7]=V=65535&P|j<<16,z+=128,n-=128}return n}function Z(e,t,r){var n,o=new Int32Array(8),i=new Int32Array(8),s=new Uint8Array(256),c=r;for(o[0]=1779033703,o[1]=3144134277,o[2]=1013904242,o[3]=2773480762,o[4]=1359893119,o[5]=2600822924,o[6]=528734635,o[7]=1541459225,i[0]=4089235720,i[1]=2227873595,i[2]=4271175723,i[3]=1595750129,i[4]=2917565137,i[5]=725511199,i[6]=4215389547,i[7]=327033209,$(o,i,t,r),r%=128,n=0;n<r;n++)s[n]=t[c-r+n];for(s[r]=128,s[(r=256-128*(r<112?1:0))-9]=0,p(s,r-8,c/536870912|0,c<<3),$(o,i,s,r),n=0;n<8;n++)p(e,8*n,o[n],i[n]);return 0}function Q(e,r){var n=t(),o=t(),i=t(),s=t(),c=t(),a=t(),u=t(),d=t(),h=t();k(n,e[1],e[0]),k(h,r[1],r[0]),D(n,n,h),B(o,e[0],e[1]),B(h,r[0],r[1]),D(o,o,h),D(i,e[3],r[3]),D(i,i,l),D(s,e[2],r[2]),B(s,s,s),k(c,o,n),k(a,s,i),B(u,s,i),B(d,o,n),D(e[0],c,a),D(e[1],d,u),D(e[2],u,a),D(e[3],c,d)}function X(e,t,r){var n;for(n=0;n<4;n++)U(e[n],t[n],r)}function ee(e,r){var n=t(),o=t(),i=t();K(i,r[2]),D(n,r[0],i),D(o,r[1],i),M(e,o),e[31]^=W(n)<<7}function te(e,t,r){var n,o;for(N(e[0],s),N(e[1],c),N(e[2],c),N(e[3],s),o=255;o>=0;--o)X(e,t,n=r[o/8|0]>>(7&o)&1),Q(t,e),Q(e,e),X(e,t,n)}function re(e,r){var n=[t(),t(),t(),t()];N(n[0],d),N(n[1],h),N(n[2],c),D(n[3],d,h),te(e,n,r)}function ne(e,r,o){var i,s=new Uint8Array(64),c=[t(),t(),t(),t()];for(o||n(r,32),Z(s,r,32),s[0]&=248,s[31]&=127,s[31]|=64,re(c,s),ee(e,c),i=0;i<32;i++)r[i+32]=e[i];return 0}var oe=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function ie(e,t){var r,n,o,i;for(n=63;n>=32;--n){for(r=0,o=n-32,i=n-12;o<i;++o)t[o]+=r-16*t[n]*oe[o-(n-32)],r=Math.floor((t[o]+128)/256),t[o]-=256*r;t[o]+=r,t[n]=0}for(r=0,o=0;o<32;o++)t[o]+=r-(t[31]>>4)*oe[o],r=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=r*oe[o];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function se(e){var t,r=new Float64Array(64);for(t=0;t<64;t++)r[t]=e[t];for(t=0;t<64;t++)e[t]=0;ie(e,r)}function ce(e,r,n,o){var i,s,c=new Uint8Array(64),a=new Uint8Array(64),u=new Uint8Array(64),l=new Float64Array(64),d=[t(),t(),t(),t()];Z(c,o,32),c[0]&=248,c[31]&=127,c[31]|=64;var h=n+64;for(i=0;i<n;i++)e[64+i]=r[i];for(i=0;i<32;i++)e[32+i]=c[32+i];for(Z(u,e.subarray(32),n+32),se(u),re(d,u),ee(e,d),i=32;i<64;i++)e[i]=o[i];for(Z(a,e,n+64),se(a),i=0;i<64;i++)l[i]=0;for(i=0;i<32;i++)l[i]=u[i];for(i=0;i<32;i++)for(s=0;s<32;s++)l[i+s]+=a[i]*c[s];return ie(e.subarray(32),l),h}function ae(e,r,n,o){var i,a=new Uint8Array(32),l=new Uint8Array(64),d=[t(),t(),t(),t()],h=[t(),t(),t(),t()];if(n<64)return-1;if(function(e,r){var n=t(),o=t(),i=t(),a=t(),l=t(),d=t(),h=t();return N(e[2],c),I(e[1],r),L(i,e[1]),D(a,i,u),k(i,i,e[2]),B(a,e[2],a),L(l,a),L(d,l),D(h,d,l),D(n,h,i),D(n,n,a),F(n,n),D(n,n,i),D(n,n,a),D(n,n,a),D(e[0],n,a),L(o,e[0]),D(o,o,a),x(o,i)&&D(e[0],e[0],f),L(o,e[0]),D(o,o,a),x(o,i)?-1:(W(e[0])===r[31]>>7&&k(e[0],s,e[0]),D(e[3],e[0],e[1]),0)}(h,o))return-1;for(i=0;i<n;i++)e[i]=r[i];for(i=0;i<32;i++)e[i+32]=o[i];if(Z(l,e,n),se(l),te(d,h,l),re(h,r.subarray(32)),Q(d,h),ee(a,d),n-=64,v(r,0,a,0)){for(i=0;i<n;i++)e[i]=0;return-1}for(i=0;i<n;i++)e[i]=r[i+64];return n}var ue=64,le=32,de=64;function he(e,t){if(32!==e.length)throw new Error("bad key size");if(24!==t.length)throw new Error("bad nonce size")}function fe(){for(var e=0;e<arguments.length;e++)if(!(arguments[e]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function pe(e){for(var t=0;t<e.length;t++)e[t]=0}e.lowlevel={crypto_core_hsalsa20:b,crypto_stream_xor:R,crypto_stream:S,crypto_stream_salsa20_xor:E,crypto_stream_salsa20:O,crypto_onetimeauth:P,crypto_onetimeauth_verify:j,crypto_verify_16:_,crypto_verify_32:v,crypto_secretbox:m,crypto_secretbox_open:T,crypto_scalarmult:H,crypto_scalarmult_base:q,crypto_box_beforenm:Y,crypto_box_afternm:V,crypto_box:function(e,t,r,n,o,i){var s=new Uint8Array(32);return Y(s,o,i),V(e,t,r,n,s)},crypto_box_open:function(e,t,r,n,o,i){var s=new Uint8Array(32);return Y(s,o,i),z(e,t,r,n,s)},crypto_box_keypair:J,crypto_hash:Z,crypto_sign:ce,crypto_sign_keypair:ne,crypto_sign_open:ae,crypto_secretbox_KEYBYTES:32,crypto_secretbox_NONCEBYTES:24,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:16,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:32,crypto_box_SECRETKEYBYTES:32,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:24,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:ue,crypto_sign_PUBLICKEYBYTES:le,crypto_sign_SECRETKEYBYTES:de,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:t,D:u,L:oe,pack25519:M,unpack25519:I,M:D,A:B,S:L,Z:k,pow2523:F,add:Q,set25519:N,modL:ie,scalarmult:te,scalarbase:re},e.randomBytes=function(e){var t=new Uint8Array(e);return n(t,e),t},e.secretbox=function(e,t,r){fe(e,t,r),he(r,t);for(var n=new Uint8Array(32+e.length),o=new Uint8Array(n.length),i=0;i<e.length;i++)n[i+32]=e[i];return m(o,n,n.length,t,r),o.subarray(16)},e.secretbox.open=function(e,t,r){fe(e,t,r),he(r,t);for(var n=new Uint8Array(16+e.length),o=new Uint8Array(n.length),i=0;i<e.length;i++)n[i+16]=e[i];return n.length<32||0!==T(o,n,n.length,t,r)?null:o.subarray(32)},e.secretbox.keyLength=32,e.secretbox.nonceLength=24,e.secretbox.overheadLength=16,e.scalarMult=function(e,t){if(fe(e,t),32!==e.length)throw new Error("bad n size");if(32!==t.length)throw new Error("bad p size");var r=new Uint8Array(32);return H(r,e,t),r},e.scalarMult.base=function(e){if(fe(e),32!==e.length)throw new Error("bad n size");var t=new Uint8Array(32);return q(t,e),t},e.scalarMult.scalarLength=32,e.scalarMult.groupElementLength=32,e.box=function(t,r,n,o){var i=e.box.before(n,o);return e.secretbox(t,r,i)},e.box.before=function(e,t){fe(e,t),function(e,t){if(32!==e.length)throw new Error("bad public key size");if(32!==t.length)throw new Error("bad secret key size")}(e,t);var r=new Uint8Array(32);return Y(r,e,t),r},e.box.after=e.secretbox,e.box.open=function(t,r,n,o){var i=e.box.before(n,o);return e.secretbox.open(t,r,i)},e.box.open.after=e.secretbox.open,e.box.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(32);return J(e,t),{publicKey:e,secretKey:t}},e.box.keyPair.fromSecretKey=function(e){if(fe(e),32!==e.length)throw new Error("bad secret key size");var t=new Uint8Array(32);return q(t,e),{publicKey:t,secretKey:new Uint8Array(e)}},e.box.publicKeyLength=32,e.box.secretKeyLength=32,e.box.sharedKeyLength=32,e.box.nonceLength=24,e.box.overheadLength=e.secretbox.overheadLength,e.sign=function(e,t){if(fe(e,t),t.length!==de)throw new Error("bad secret key size");var r=new Uint8Array(ue+e.length);return ce(r,e,e.length,t),r},e.sign.open=function(e,t){if(fe(e,t),t.length!==le)throw new Error("bad public key size");var r=new Uint8Array(e.length),n=ae(r,e,e.length,t);if(n<0)return null;for(var o=new Uint8Array(n),i=0;i<o.length;i++)o[i]=r[i];return o},e.sign.detached=function(t,r){for(var n=e.sign(t,r),o=new Uint8Array(ue),i=0;i<o.length;i++)o[i]=n[i];return o},e.sign.detached.verify=function(e,t,r){if(fe(e,t,r),t.length!==ue)throw new Error("bad signature size");if(r.length!==le)throw new Error("bad public key size");var n,o=new Uint8Array(ue+e.length),i=new Uint8Array(ue+e.length);for(n=0;n<ue;n++)o[n]=t[n];for(n=0;n<e.length;n++)o[n+ue]=e[n];return ae(i,o,o.length,r)>=0},e.sign.keyPair=function(){var e=new Uint8Array(le),t=new Uint8Array(de);return ne(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(fe(e),e.length!==de)throw new Error("bad secret key size");for(var t=new Uint8Array(le),r=0;r<t.length;r++)t[r]=e[32+r];return{publicKey:t,secretKey:new Uint8Array(e)}},e.sign.keyPair.fromSeed=function(e){if(fe(e),32!==e.length)throw new Error("bad seed size");for(var t=new Uint8Array(le),r=new Uint8Array(de),n=0;n<32;n++)r[n]=e[n];return ne(t,r,!0),{publicKey:t,secretKey:r}},e.sign.publicKeyLength=le,e.sign.secretKeyLength=de,e.sign.seedLength=32,e.sign.signatureLength=ue,e.hash=function(e){fe(e);var t=new Uint8Array(64);return Z(t,e,e.length),t},e.hash.hashLength=64,e.verify=function(e,t){return fe(e,t),0!==e.length&&0!==t.length&&e.length===t.length&&0===y(e,0,t,0,e.length)},e.setPRNG=function(e){n=e},function(){var t="undefined"!=typeof self?self.crypto||self.msCrypto:null;t&&t.getRandomValues?e.setPRNG((function(e,r){var n,o=new Uint8Array(r);for(n=0;n<r;n+=65536)t.getRandomValues(o.subarray(n,n+Math.min(r-n,65536)));for(n=0;n<r;n++)e[n]=o[n];pe(o)})):(t=r(5338))&&t.randomBytes&&e.setPRNG((function(e,r){var n,o=t.randomBytes(r);for(n=0;n<r;n++)e[n]=o[n];pe(o)}))}()}(e.exports?e.exports:self.nacl=self.nacl||{})},8058:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SessionCrypto=void 0;var n=r(6196);Object.defineProperty(t,"SessionCrypto",{enumerable:!0,get:function(){return n.SessionCrypto}})},6196:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SessionCrypto=void 0;const utils_1=__webpack_require__(4586),tweetnacl_1=__importDefault(__webpack_require__(717));if((0,utils_1.isNode)())try{eval("global.crypto = require('crypto').webcrypto")}catch(e){}class SessionCrypto{constructor(e){this.nonceLength=24,this.keyPair=e?this.createKeypairFromString(e):this.createKeypair(),this.sessionId=(0,utils_1.toHexString)(this.keyPair.publicKey)}createKeypair(){return tweetnacl_1.default.box.keyPair()}createKeypairFromString(e){return{publicKey:(0,utils_1.hexToByteArray)(e.publicKey),secretKey:(0,utils_1.hexToByteArray)(e.secretKey)}}createNonce(){const e=new Uint8Array(this.nonceLength);return crypto.getRandomValues(e)}encrypt(e,t){const r=(new TextEncoder).encode(e),n=this.createNonce(),o=tweetnacl_1.default.box(r,n,t,this.keyPair.secretKey);return(0,utils_1.concatUint8Arrays)(n,o)}decrypt(e,t){const[r,n]=(0,utils_1.splitToUint8Arrays)(e,this.nonceLength),o=tweetnacl_1.default.box.open(n,r,t,this.keyPair.secretKey);if(!o)throw new Error(`Decryption error: \n message: ${e.toString()} \n sender pubkey: ${t.toString()} \n keypair pubkey: ${this.keyPair.publicKey.toString()} \n keypair secretkey: ${this.keyPair.secretKey.toString()}`);return(new TextDecoder).decode(o)}stringifyKeypair(){return{publicKey:(0,utils_1.toHexString)(this.keyPair.publicKey),secretKey:(0,utils_1.toHexString)(this.keyPair.secretKey)}}}exports.SessionCrypto=SessionCrypto},827:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(9855),t),o(r(8058),t),o(r(4586),t)},7929:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.CHAIN=void 0,(r=t.CHAIN||(t.CHAIN={})).MAINNET="-239",r.TESTNET="-3"},4469:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},992:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(2859),t),o(r(4469),t)},2859:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},9855:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.CHAIN=void 0,o(r(992),t),o(r(7250),t);var i=r(7929);Object.defineProperty(t,"CHAIN",{enumerable:!0,get:function(){return i.CHAIN}})},7250:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(6910),t),o(r(1712),t)},7395:(e,t)=>{"use strict";var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.CONNECT_ITEM_ERROR_CODES=t.CONNECT_EVENT_ERROR_CODES=void 0,(n=t.CONNECT_EVENT_ERROR_CODES||(t.CONNECT_EVENT_ERROR_CODES={}))[n.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",n[n.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",n[n.MANIFEST_NOT_FOUND_ERROR=2]="MANIFEST_NOT_FOUND_ERROR",n[n.MANIFEST_CONTENT_ERROR=3]="MANIFEST_CONTENT_ERROR",n[n.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",n[n.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",n[n.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(r=t.CONNECT_ITEM_ERROR_CODES||(t.CONNECT_ITEM_ERROR_CODES={}))[r.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",r[r.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED"},6910:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CONNECT_EVENT_ERROR_CODES=void 0;var n=r(7395);Object.defineProperty(t,"CONNECT_EVENT_ERROR_CODES",{enumerable:!0,get:function(){return n.CONNECT_EVENT_ERROR_CODES}})},1712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SEND_TRANSACTION_ERROR_CODES=void 0;var n=r(7487);Object.defineProperty(t,"SEND_TRANSACTION_ERROR_CODES",{enumerable:!0,get:function(){return n.SEND_TRANSACTION_ERROR_CODES}})},7487:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.SEND_TRANSACTION_ERROR_CODES=void 0,(r=t.SEND_TRANSACTION_ERROR_CODES||(t.SEND_TRANSACTION_ERROR_CODES={}))[r.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",r[r.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",r[r.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",r[r.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",r[r.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED"},4444:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Base64=void 0;const o=n(r(251));t.Base64={encode:function(e,t=!1){let r;return e instanceof Uint8Array?r=e:("string"!=typeof e&&(e=JSON.stringify(e)),r=o.default.decodeUTF8(e)),function(e,t){const r=o.default.encodeBase64(e);return t?encodeURIComponent(r):r}(r,t)},decode:function(e,t=!1){const r=function(e,t){return t&&(e=decodeURIComponent(e)),o.default.decodeBase64(e)}(e,t);return{toString:()=>o.default.encodeUTF8(r),toObject(){try{return JSON.parse(o.default.encodeUTF8(r))}catch(e){return null}},toUint8Array:()=>r}}}},6650:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hexToByteArray=t.toHexString=t.splitToUint8Arrays=t.concatUint8Arrays=void 0,t.concatUint8Arrays=function(e,t){const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},t.splitToUint8Arrays=function(e,t){if(t>=e.length)throw new Error("Index is out of buffer");return[e.slice(0,t),e.slice(t)]},t.toHexString=function(e){let t="";return e.forEach((e=>{t+=("0"+(255&e).toString(16)).slice(-2)})),t},t.hexToByteArray=function(e){if(e.length%2!=0)throw new Error(`Cannot convert ${e} to bytesArray`);const t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2)t[r/2]=parseInt(e.slice(r,r+2),16);return t}},4586:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=t.hexToByteArray=t.toHexString=t.splitToUint8Arrays=t.concatUint8Arrays=t.Base64=void 0;var n=r(4444);Object.defineProperty(t,"Base64",{enumerable:!0,get:function(){return n.Base64}});var o=r(6650);Object.defineProperty(t,"concatUint8Arrays",{enumerable:!0,get:function(){return o.concatUint8Arrays}}),Object.defineProperty(t,"splitToUint8Arrays",{enumerable:!0,get:function(){return o.splitToUint8Arrays}}),Object.defineProperty(t,"toHexString",{enumerable:!0,get:function(){return o.toHexString}}),Object.defineProperty(t,"hexToByteArray",{enumerable:!0,get:function(){return o.hexToByteArray}});var i=r(3308);Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return i.isNode}})},3308:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=void 0,t.isNode=function(){return"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node}},5338:()=>{}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}var __webpack_exports__=__webpack_require__(4027);TonConnectSDK=__webpack_exports__})();
|
|
2
2
|
//# sourceMappingURL=tonconnect-sdk.min.js.map
|